Hermes Agent Slack earns an 7.9 out of 10 from me: the setup is quick, the access rules are strict by default, and the channel controls go deeper than most teams will ever need.
It loses points on one Slack-side quirk with commands in threads, a one-way switch to Agent view, and gaps in what the docs tell you.
Every rating below is my editorial reading of the official Hermes Slack documentation at v0.23.1, not a lab benchmark.
If you want a team to judge whether it fits your business, book a free SEO strategy session with us.
The Scorecard
| Criteria | Rating | Why, from the docs |
|---|---|---|
| Setup speed | 8/10 | One command writes the full Slack app manifest; you still copy two tokens and Member IDs by hand. |
| Network footprint | 9/10 | Socket Mode needs no public URL, so no endpoint is exposed. |
| Access control | 9/10 | Refuses everyone off the allowlist by default; pairing codes expire after an hour. |
| Channel manners | 9/10 | Mention-only in channels, thread replies, plus six separate gating options. |
| Commands | 7/10 | Native slash commands, but Slack blocks them in threads, so you switch to a ! prefix. |
| Files, voice and rich replies | 7/10 | Voice in is transcribed; voice out arrives as audio file attachments; rich blocks are opt-in. |
| Scale | 8/10 | One gateway can serve several workspaces with one bot token each. |
| Docs clarity | 8/10 | Clear steps and a strong troubleshooting table; nothing on Slack plans or rate limits. |
| Reversibility | 6/10 | Agent view can't be undone back to Assistant view. |
Average: 7.9 out of 10, and the two highest scores sit on the things that matter most in a work chat: who can reach the bot and what it exposes.
Setup: The Manifest Does Most Of The Work
The hermes slack manifest --agent-view --write command produces a JSON file with every slash command, scope and event the bot needs, with Socket Mode already on.
You paste it into Slack's "From an app manifest" flow, install, and copy the xoxb- bot token.
Then you generate an xapp- app-level token with connections:write, add Member IDs to the allowlist and start the gateway.
The manual route exists too, with 13 bot scopes and five event subscriptions to tick. That's where most mistakes creep in.
Two more points in its favour: hermes gateway setup asks for the values interactively if you'd rather not edit .env, and a --long-description-file flag fills Slack's app description from a file you already have.
One point against: whenever Hermes adds commands after an update, you regenerate the manifest and paste it into Slack again by hand.
Score: 8. Fast, but not one click.
Network Footprint: Socket Mode Wins Here
Slack bots often need a public HTTPS endpoint for events.
Hermes doesn't. It dials out over a WebSocket, and the docs list behind-a-firewall, laptop and private-server setups as normal.
The security section calls out the result directly: no public endpoint is exposed.
It also means you can trial the bot on a laptop before you commit a server to it, then move the same config across.
Tokens still need care: the docs want them in ~/.hermes/.env with 600 permissions, rotated from the Slack app settings from time to time.
Score: 9. The only thing keeping it off 10 is that the gateway has to stay running for the bot to answer.
Access Control: Deny-By-Default Is The Right Call
Out of the box the gateway refuses anyone who isn't allowlisted or paired, per the gateway security notes.
The Slack page goes further: without SLACK_ALLOWED_USERS, every message is denied.
Strangers who DM the bot get a pairing code by default, or nothing at all if you set unauthorized_dm_behavior to ignore.
Reaction triggers respect the same user checks, so a random emoji can't start a job.
Clarify buttons follow the same rule: a tap only counts if the person tapping is authorised.
Messages from other Slack bots, including Workflow Builder posts, are ignored by default, which closes off the classic bot-answers-bot loop.
Score: 9. Exactly what a bot with terminal access should do.
Channel Manners: The Mention Controls Are Deep
The defaults are sensible: every DM gets an answer, channels need an @mention, replies go into a thread, and an active thread doesn't need re-tagging.
On top of that sit six gating options, each answering a different question:
require_mentionandfree_response_channelsfor top-level messages,require_mention_channelsto force mentions in chosen channels,thread_require_mentionfor busy threads,strict_mentionto switch off all auto-follow,ignore_other_user_mentionsto stay out of messages aimed at a colleague.
There's also allowed_channels, which drops messages from any unlisted channel before anything else runs.
And thread_followup_silence, an opt-in that first appeared in v0.22.7, lets the bot stay quiet on thread replies that weren't meant for it.
Session handling earns credit here too. In a shared channel each person gets a separate conversation by default, so one teammate's context never leaks into another's thread.
Score: 9. If anything, there are more knobs than a five-person team needs.
๐ฅ Want the configs other members run in their Slack? Inside the AI Profit Boardroom you get step-by-step video trainings, the installable Agent OS, four coaching calls a week and 3,400+ members sharing the Slack settings that work for them. โ Join the AI Profit Boardroom
Commands: Good, With One Slack-Side Snag
Every Hermes command is a real Slack slash command with autocomplete.
Replies are ephemeral, so command output never clutters the channel.
The snag isn't Hermes's fault: Slack refuses slash commands inside thread replies.
The fix is a ! prefix, like !stop, which works anywhere. It's easy once you know, but new users will hit the error first.
Long ephemeral output is also capped by Slack at five posts, after which Hermes shows a truncation notice.
Clarify questions show up as one-tap buttons, which is a nice touch.
Score: 7.
Files, Voice And Rich Replies
Uploads work once the app has files:read, and the docs flag that as one of the most commonly missed scopes.
Incoming voice messages are transcribed before the agent sees them.
Spoken replies come back as audio file attachments rather than native voice clips.
Block Kit formatting, with headers, nested lists and tables, is available through rich_blocks, but it's off by default.
Native streaming and task cards for live tool progress are both there if you switch them on.
The working-state line under the reply can show live tool activity, and a verb setting hides file paths and commands in customer-facing channels. It needs the optional assistant:write scope.
Score: 7. All present, mostly opt-in.
Multi-Workspace And Team Gateway
A single gateway can join several Slack workspaces: list one bot token per workspace, comma-separated, and keep one app-level token.
That suits an agency that sits inside clients' workspaces.
On Hermes Cloud with Team Gateway, Slack runs through a shared Hermes bot instead of your own, unless you opt back in to direct connections.
Since v0.23.0, one gateway owns every session, so Slack, the terminal and the desktop app see one shared history.
Score: 8.
How Slack Compares With Hermes's Other Chat Apps
No official source ranks the platforms, so this is my reading of the capability table in the messaging overview.
| Platform | Threads | Reactions | Voice | Streaming |
|---|---|---|---|---|
| Slack | Yes | Yes | Yes | Yes |
| Discord | Yes | Yes | Yes | Yes |
| Telegram | Yes | No | Yes | Yes |
| WhatsApp Cloud API | No | No | Yes | No |
Slack and Discord are the only two with a tick in every column.
For a business, Slack's edge is less about features and more about where your staff already work, plus its threading, which keeps the bot's replies tidy.
Score context: this is why I rate channel manners so high. Threads are what make an agent bearable in a busy work chat.
The Limits You Should Know Before Installing
- It never joins channels by itself. You
/inviteit to each one. - Agent view only passes the channel you're looking at as a label. It doesn't read that channel's history.
- Agent view is permanent for that app.
- The docs give no Slack plan requirements and no rate-limit numbers.
- Changing scopes or events does nothing until you reinstall the app, a step that's easy to miss.
- The gateway has to keep running. If the host machine sleeps, the bot goes silent.
- Hermes approvals cover risky commands. For outbound messages, you'll want "draft only" written into the job.
And for the record, the newest patch, v0.23.1, carries no Slack-specific notes.
Who Should Use It
- Small teams that already live in Slack. An accountant's office with a private month-end channel gets answers where the work is.
- Agencies with a channel per client. Per-channel prompts and skill bindings give each client its own voice and playbook.
- Owners who want scheduled reports in chat. Cron jobs can deliver into a home channel or a person's DM.
- Anyone running Hermes already. The same agent, memory and history now answer in Slack.
If support is your main job, our verdict on Hermes Agent for customer support goes further into that.
Who Should Skip It
- Teams with no one to own the allowlist and the app settings.
- Businesses that want a bot to message customers on its own. Keep a person sending those.
- Anyone who can't keep a gateway machine on and doesn't want Hermes Cloud.
- Workspaces that need firm answers on Slack plan support before they install. The docs don't give them.
- Teams who want the bot to read and summarise whole channels it was never invited into. It can't.
๐ Want a straight answer on whether this fits you? Book a free SEO strategy session and my team will look at how your business runs and tell you which jobs are worth handing to an agent. โ Get your free strategy session
Final Verdict
7.9 out of 10.
It's a careful, well-documented way to put a real agent in a work chat: no public endpoint, deny-by-default access, and channel rules you can tune per room.
The thread command quirk and the one-way Agent view are the two things to warn your team about on day one.
If you're choosing between chat apps, Slack is the strongest fit for a team that already works there. If you're choosing between agents, Hermes's open-source code and deny-by-default gateway are the reasons to pick it.
Install it, allowlist two people, and test it in one channel before you open it up.
Also On Our Network
- ๐ The six-step Socket Mode setup and five config lines to add first
- ๐ Four small-business Slack setups and the access rules owners must know
- ๐ Five copy-paste prompts that let your agent set up Slack itself
- ๐ Which benchmarked model to run behind each kind of Slack channel
FAQ: Hermes Agent Slack Verdict
What score does Hermes in Slack get here?
7.9 out of 10, an editorial rating from the official docs, led by deny-by-default access and Socket Mode with no public endpoint.
What is its biggest weakness?
Slack blocks slash commands inside threads, so users must switch to the ! prefix there, and Agent view cannot be reverted to Assistant view.
Does the bot read every channel in the workspace?
No. It must be invited to each channel, answers only when @mentioned in channels, and Agent view passes the viewed channel only as a label.
Is it a good fit for agencies?
Yes, if you keep a channel per client: per-channel prompts and skill bindings set the voice, and one gateway can join several workspaces.
๐บ Video notes + links to the tools ๐
๐ฅ Learn how I make these videos ๐
๐ Get a FREE AI Course + Community + 1,000 AI Agents ๐
About Julian
I'm Julian Goldie, an SEO entrepreneur, author and founder of the AI Profit Boardroom, which has 3,400+ members.
I help business owners scale with AI agents, automation and SEO.
- I've built a 7-figure SEO and link building agency, Goldie Agency, with a team of 70+ SEO experts.
- I've grown a YouTube channel to 400,000+ subscribers.
- I wrote "Link Building Mastery".
- My Udemy courses have taught over 29,000 students.
โ Get my best AI training inside the AI Profit Boardroom
Allowlist two people, test one channel and widen from there, and if you want the full Agent OS behind it, join the AI Profit Boardroom or book a free strategy call to see if it is worth adding Hermes Agent Slack to your team.











