Connect Hermes Agent to Slack, WhatsApp & Signal
Beyond Telegram and Discord
While Telegram and Discord are the most popular platforms for Hermes, many teams and individuals rely on other messaging apps. Hermes Agent supports connecting to Slack, WhatsApp, and Signal through its extensible messaging framework.
Each platform has unique strengths:
| Platform | Best For | Bot Support | Key Feature |
|----------|---------|:-----------:|-------------|
| Slack | Workplace teams | β Native | Workflows, channels, integrations |
| WhatsApp | Personal/business | β οΈ Via API | End-to-end encryption, global reach |
| Signal | Privacy-focused | β οΈ Via bridge | Military-grade encryption |
Slack Integration
Why Slack + Hermes?
Slack is the communication backbone of many engineering teams. Adding Hermes brings AI superpowers to your daily workflow:
- Answer technical questions in
#dev-help - Code review in
#pull-requests - Summarize long threads
- Generate reports on demand
Step 1: Create a Slack App
- chat:write β Send messages
- channels:history β Read channel messages
- channels:read β View channel info
- app_mentions:read β Detect @mentions
- files:read β Read shared files
- users:read β View user info
Step 2: Enable Event Subscriptions
https://your-server.com/api/slack/events - app_mention β When someone @mentions Hermes
- message.channels β Messages in channels
- message.im β Direct messages
Step 3: Configure Hermes
hermes config set slack.bot_token "xoxb-your-bot-token"
hermes config set slack.signing_secret "your-signing-secret"
hermes config set slack.enabled true
Full configuration:
# ~/.hermes/config.yaml
slack:
enabled: true
bot_token: "xoxb-your-bot-token"
signing_secret: "your-signing-secret"
app_token: "xapp-your-app-token" # For Socket Mode
# Behavior
respond_to_mentions: true
respond_to_dms: true
use_threads: true # Reply in threads
reaction_acknowledgment: true # React with π€ while processing
# Access control
allowed_channels: ["C01234ABCDE"]
blocked_users: []
# Socket Mode (simpler than webhooks, no public URL needed)
socket_mode: true
Step 4: Start the Slack Bot
hermes slack start
π€ Slack bot connected!
Workspace: My Company
Channels: 3 (watching)
Mode: Socket Mode
Listening for messages...
Using Hermes in Slack
@Mention in a channel:@Hermes AI How do I handle CORS in a Go API?
Slash command:
/hermes generate a bash script to backup PostgreSQL daily
Thread reply:
Hermes automatically responds in threads to keep channels clean. Continue the conversation naturally in the thread.
WhatsApp Integration
How It Works
WhatsApp doesn't have a traditional bot API like Telegram or Discord. Instead, Hermes connects through the WhatsApp Business API or community bridges.
Option A: WhatsApp Business API (Official)
Best for businesses with a Meta Business account.
# ~/.hermes/config.yaml
whatsapp:
enabled: true
provider: "business-api"
phone_number_id: "123456789"
access_token: "EAAG..."
verify_token: "your-verify-token"
webhook_url: "https://your-server.com/api/whatsapp"
allowed_numbers: ["+1234567890"]
max_message_length: 4096
Option B: WhatsApp Web Bridge (Personal Use)
For personal use, use the whatsapp-web.js bridge:
# Install the WhatsApp bridge skill
hermes skill install whatsapp-bridge
whatsapp:
enabled: true
provider: "web-bridge"
allowed_numbers: ["+1234567890"]
session_dir: "~/.hermes/whatsapp-session"
On first start, scan the QR code with your phone to link the session.
Important: WhatsApp Web bridge is for personal use only. For business use, always use the official Business API.
Using Hermes on WhatsApp
Send messages naturally β Hermes responds just like on Telegram:
You: Explain Docker volumes in simple terms
Hermes: Think of Docker volumes like external hard drives
for your containers πΎ
Without volumes:
- Container data lives inside the container
- Data disappears when the container is removed π¨
With volumes:
- Data is stored outside the container
- It persists even after container deletion β
- Multiple containers can share the same volume
Quick example:
docker run -v mydata:/app/data my-image
This mounts a volume called "mydata" to /app/data
inside the container.
Signal Integration
Privacy-First AI
Signal is the most secure messaging option. Hermes connects through the Signal CLI or the signal-cli-rest-api bridge.
Setup Signal Bridge
# Install signal-cli
wget https://github.com/AsamK/signal-cli/releases/latest/download/signal-cli.tar.gz
tar xf signal-cli.tar.gz
sudo mv signal-cli /opt/signal-cli
# Register a phone number (requires SMS verification)
/opt/signal-cli/bin/signal-cli -a +1234567890 register
/opt/signal-cli/bin/signal-cli -a +1234567890 verify 123456
# Install the Hermes Signal skill
hermes skill install signal-bridge
Configure Hermes
# ~/.hermes/config.yaml
signal:
enabled: true
phone_number: "+1234567890"
signal_cli_path: "/opt/signal-cli/bin/signal-cli"
allowed_numbers: ["+0987654321"]
config_dir: "~/.local/share/signal-cli"
Start the Signal Bot
hermes signal start
Signal messages are end-to-end encrypted. Hermes only sees the decrypted content locally on your server.
Running Multiple Platforms Simultaneously
You can run all messaging integrations at once:
# Start all enabled platforms
hermes messaging start --all
Or use PM2 to manage each separately:
pm2 start "hermes telegram start" --name hermes-telegram
pm2 start "hermes discord start" --name hermes-discord
pm2 start "hermes slack start" --name hermes-slack
pm2 save
Unified Session Management
All platforms share the same session and memory system:
Telegram message β Session: "mobile-chat" β Hermes AI β Response
Discord message β Session: "discord-dev" β Hermes AI β Response
Slack message β Session: "work-slack" β Hermes AI β Response
Each platform gets its own session by default, but you can configure shared sessions:
messaging:
shared_session: true # All platforms use one session
session_name: "unified" # Or pick per-platform names
Platform Comparison
| Feature | Telegram | Discord | Slack | WhatsApp | Signal |
|---------|:--------:|:-------:|:-----:|:--------:|:------:|
| Setup difficulty | Easy | Medium | Medium | Hard | Hard |
| File sharing | β | β | β | β | β |
| Voice messages | β | β | β | β | β |
| Group support | β | β | β | β | β |
| Threads | β | β | β | β | β |
| Encryption | Optional | β | β | β E2E | β E2E |
| Cost | Free | Free | Free* | Paid API | Free |
| Best for | Personal | Community | Work | Business | Privacy |
Next Steps
- Multi-platform gateway β Advanced unified architecture
- Telegram setup β Detailed Telegram guide
- Cron scheduling β Automated messages across platforms
Last updated: April 16, 2026 Β· Hermes Agent v0.8