Blog / channel guide
Hermes Agent Slack Setup: Socket Mode in Minutes
To connect Hermes Agent to Slack, create a Slack app, enable Socket Mode, grant the bot scopes, install the app to your workspace, and paste the bot token into the Hermes Agent deployment screen. Socket Mode uses an outbound WebSocket connection, so you do not need a public request URL, ngrok, or an inbound firewall rule.
- 01
Create a dedicated Slack app
Open the Slack API dashboard, choose Create New App, and select From scratch. Name it after the assistant and pick the target workspace.
- 02
Enable Socket Mode
Turn on Socket Mode in the app settings and generate an app-level token with the connections:write scope. Socket Mode keeps the connection outbound.
- 03
Grant the bot scopes
Add the scopes the assistant needs, such as app_mentions:read, chat:write, channels:history, and groups:history. Only request what the workflow uses.
- 04
Install the app and copy the bot token
Install the app to the workspace, then copy the Bot User OAuth token that starts with xoxb-. Store it as a secret, never in a public channel.
- 05
Deploy Hermes Agent with Slack selected
In the Hermes Agent deployment screen, choose a model, select Slack as the channel, paste the bot token, and start the deployment.
- 06
Test in a private channel first
Invite the bot to one private channel, mention it, and confirm a reply. A single successful reply proves tokens, scopes, and runtime are all correct.
Four-step path
How do you connect Hermes Agent to Slack?
There are five checkpoints: create the app, enable Socket Mode, grant scopes, install it to the workspace, and prove one reply in a private channel.
- Step 01
Create a dedicated Slack app
Open the Slack API dashboard, choose Create New App, and select From scratch. Name it after the assistant and pick the target workspace.
- Step 02
Enable Socket Mode
Turn on Socket Mode in the app settings and generate an app-level token with the connections:write scope. Socket Mode keeps the connection outbound.
- Step 03
Grant the bot scopes
Add the scopes the assistant needs, such as app_mentions:read, chat:write, channels:history, and groups:history. Only request what the workflow uses.
- Step 04
Install the app and copy the bot token
Install the app to the workspace, then copy the Bot User OAuth token that starts with xoxb-. Store it as a secret, never in a public channel.
- Step 05
Deploy Hermes Agent with Slack selected
In the Hermes Agent deployment screen, choose a model, select Slack as the channel, paste the bot token, and start the deployment.
- Step 06
Test in a private channel first
Invite the bot to one private channel, mention it, and confirm a reply. A single successful reply proves tokens, scopes, and runtime are all correct.
What do you need before connecting Slack?
You need a Slack workspace where you can install apps, permission to create a Slack app, and an active Hermes Agent plan. With Socket Mode you do not need a public URL, a reverse proxy, or a VPS.
Choose whether the assistant should serve one workspace or several. A single dedicated Slack app per workspace keeps token rotation, scope review, and audit trails much simpler.
Why use Socket Mode instead of a request URL?
Socket Mode opens an outbound WebSocket from the agent to Slack, so Slack never has to reach your infrastructure. That removes the need for a public HTTPS endpoint and inbound firewall rules.
- No public request URL, tunnel, or ngrok process to maintain.
- Works behind NAT and on hosts without inbound ports.
- Reconnects automatically when the network drops.
- Requires an app-level token with connections:write in addition to the bot token.
Which Slack scopes does the assistant need?
Start with the smallest set that covers reading mentions and posting replies, then add history scopes only for channels the assistant must summarize. Extra scopes widen the blast radius if a token leaks.
- app_mentions:read to receive mentions in channels.
- chat:write to post replies as the app.
- channels:history and groups:history only when the assistant reads context.
- im:history only when the assistant must answer direct messages.
Why does the Slack bot stay silent?
The usual causes are a bot that was never invited to the channel, a missing scope added after install, an app-level token that is missing or expired, or a deployment that has not finished becoming ready.
- Invite the bot with /invite before expecting a reply in a channel.
- Reinstall the app after changing scopes, then redeploy with the current token.
- Confirm the deployment status is running rather than provisioning or failed.
- Test in a private channel before debugging threads, topics, or shared channels.
How should you roll Slack out to a whole workspace?
Prove one private channel first, then expand to a small pilot group, and only then invite the bot into high-traffic channels. Keep an approval rule for anything the assistant can post publicly.
Slack conversations are visible to colleagues immediately, which makes a bad reply more expensive than in a private chat. Start read-only in busy channels and enable posting after the replies look consistently useful.
Which primary sources support this page?
Product behavior is checked against the current deployment flow. These external links provide the upstream project or channel documentation used for setup details.
Direct answers
Frequently asked questions
Do I need a public URL or ngrok for Slack?
No. Socket Mode keeps the connection outbound from Hermes Agent to Slack, so no inbound endpoint is required.
Which token does Hermes Agent use, the bot token or the app token?
The bot token (xoxb-) authenticates the assistant. The app-level token (xapp-) is only needed for the Socket Mode connection.
Can the assistant reply in threads?
Yes, provided the bot has chat:write and is allowed in the channel. Thread replies are usually the least disruptive option in busy channels.
What happens if I rotate the Slack token?
The existing deployment stops working once the old token is invalidated. Update the stored token in Hermes Agent and redeploy to reconnect.
Key takeaways
- To connect Hermes Agent to Slack, create a Slack app, enable Socket Mode, grant the bot scopes, install the app to your workspace, and paste the bot token into the Hermes Agent deployment screen. Socket Mode uses an outbound WebSocket connection, so you do not need a public request URL, ngrok, or an inbound firewall rule.
- Start with one model, one channel, and one controlled test conversation.
- Use managed hosting when deployment speed matters more than operating the server yourself.
Continue the setup
Related Hermes Agent guides
Blog guide
Hermes Agent Microsoft Teams Setup for Work Accounts
Add Hermes Agent to Microsoft Teams with a bot registration, tenant admin consent, and a private chat test. Covers scopes, policies, and silent-bot fixes.
Read nextBlog guide
Hermes Agent Google Chat Setup with a Service Account
Connect Hermes Agent to Google Chat with a service account, Chat API app config, and a Workspace test space. Includes verification and silent-bot fixes.
Read nextBlog guide
How to Choose a Hermes Agent Channel
Compare Telegram, Discord, and WhatsApp for Hermes Agent deployment. Choose the best channel for support, daily briefings, and team operations.
Read nextBlog guide
Why Hermes Agent Is Not Sending or Receiving Messages
Troubleshoot Hermes Agent message failures across Telegram, Discord, and WhatsApp by checking channel access, runtime state, model keys, and logs.
Read next