Hermes Agent: Platform Messaging and Multi-Platform…

Last updated: 2026-08-31

Multi-platform integration is Hermes' communication superpower — one Agent simultaneously serves you on Telegram, Discord, and Slack, like having multiple clones of yourself.

💡 Tip: Hermes' platform integration isn't simple message forwarding. Each platform maintains full memory and skills, with automatic message format adaptation.

📋 Prerequisites: Lesson 3 Configuration File

1. What You Will Learn

# Content
Supported platform list
Platform integration configuration
Message processing flow
Platform feature adaptation
Multi-platform message routing

2. Story

(1) Pain Point: Different AI for Different Platforms

Bob chats with colleagues on Telegram, works on Slack, and hangs out in Discord communities. Each platform has its own Bot — memories don't sync, skills aren't shared.

(2) Solution: One Agent, All Platforms

Alice's Hermes Agent connects to all platforms simultaneously:

BASH
# One Hermes, three entry points
Telegram: @AliceHermesBot
Slack:    Hermes App
Discord:  Hermes#1234

# Memories and skills fully shared
Say "help me review code" on Slack
→ Say "continue that review" on Telegram
→ Agent knows you mean the same one

3. Supported Platforms

Platform Type Message Format File Support Groups
Telegram Bot Markdown ✅ Images/Files
Discord Bot Markdown ✅ Images/Attachments
Slack App mrkdwn ✅ Files ✅ Channels
WhatsApp Business Plain text ✅ Images/Docs
Signal Bot Plain text ✅ Images
Twitter/X Bot Plain text ✅ Images
Email IMAP/SMTP HTML/Text ✅ Attachments
Web Chat Self-hosted Markdown ✅ Drag & drop
CLI Terminal ANSI
VS Code Extension Markdown ✅ Workspace
REST API HTTP JSON ✅ Base64
n8n Workflow JSON
Home Assistant Smart Home Plain text
Custom Custom Configurable Configurable Configurable

4. Platform Integration Configuration

(1) Telegram

YAML
# ~/.hermes/config.yaml
platforms:
  telegram:
    enabled: true
    token: "${TELEGRAM_BOT_TOKEN}"
    
    # Message configuration
    parse_mode: "MarkdownV2"
    max_message_length: 4096
    
    # Access control
    allowed_users:
      - 123456789          # Telegram User ID
    allowed_chats:
      - -1001234567890     # Group Chat ID
    
    # Feature toggles
    features:
      voice_messages: true   # Receive voice messages
      photos: true           # Receive images
      files: true            # Receive files
      inline_queries: true   # Inline queries
BASH
# Create a Telegram Bot
# 1. Find @BotFather, create a Bot, get the Token
# 2. Configure in Hermes
hermes config set platforms.telegram.token "your-token"
hermes platform start telegram

(2) Discord

YAML
platforms:
  discord:
    enabled: true
    token: "${DISCORD_BOT_TOKEN}"
    
    # Server configuration
    guilds:
      - id: "123456789"
        channels: ["general", "dev", "ai-help"]
    
    # Permissions
    allowed_roles:
      - "Developer"
      - "Admin"
    
    # Features
    features:
      slash_commands: true
      thread_support: true
      reactions: true
      embeds: true

(3) Slack

YAML
platforms:
  slack:
    enabled: true
    bot_token: "${SLACK_BOT_TOKEN}"
    app_token: "${SLACK_APP_TOKEN}"
    
    # Workspace
    workspace: "my-team"
    
    # Channels
    channels:
      - "general"
      - "dev-help"
      - "ai-assistant"
    
    # Features
    features:
      app_mentions: true
      direct_messages: true
      thread_replies: true
      file_sharing: true

(4) WhatsApp

YAML
platforms:
  whatsapp:
    enabled: true
    phone_number_id: "${WHATSAPP_PHONE_ID}"
    access_token: "${WHATSAPP_TOKEN}"
    verify_token: "${WHATSAPP_VERIFY_TOKEN}"
    
    # Webhook
    webhook_url: "https://your-domain.com/webhook/whatsapp"

5. Message Processing Flow

(1) Unified Message Pipeline

100%
graph LR
    A[Telegram] --> M[Message Pipeline]
    B[Discord] --> M
    C[Slack] --> M
    D[WhatsApp] --> M
    M --> P[Message Parse]
    P --> Q[Permission Check]
    Q --> R[Memory Retrieval]
    R --> S[Skill Match]
    S --> T[LLM Inference]
    T --> U[Tool Call]
    U --> V[Response Generate]
    V --> W[Format Adapt]
    W --> A2[Telegram]
    W --> B2[Discord]
    W --> C2[Slack]
    W --> D2[WhatsApp]

(2) Message Format Adaptation

Platform Code Blocks Images Long Messages
Telegram ```markdown Separate send Split into segments
Discord ```markdown Embed Split + continuation
Slack ```mrkdwn Block Split into threads
WhatsApp No format Separate send Split segments
Email HTML Inline/Attachment Single email

6. Platform Feature Adaptation

(1) Voice Message Processing

BASH
# Telegram: User sends voice → STT → Agent processes → TTS → Voice reply
# Automatic workflow:
User: [Voice message 0:15]
Agent: [voice_stt] → "What's the weather in Beijing today"
       [web_search] → Found weather info
       [voice_tts] → [Voice message 0:08] "Beijing is sunny today, 26°C"

(2) Group Conversations

YAML
# Group configuration
platforms:
  discord:
    group_behavior:
      trigger: "mention"        # @Hermes triggers
      listen: false             # Don't listen to all messages
      prefix: "!"               # !command triggers
      respond_to_replies: true   # Replying to Agent messages triggers

7. Multi-Platform Message Routing

(1) Cross-Platform Memory

BASH
# Start a conversation on Slack
Slack: me: Help me review auth.py
       Agent: Found 3 security issues...

# Continue on Telegram
Telegram: me: About that review result, tell me more
          Agent: [Cross-platform memory retrieval]
                 Regarding the auth.py review, the 3 issues are...

(2) Message Routing Rules

YAML
routing:
  # Route by platform
  platform_rules:
    telegram:
      model: "gpt-4o-mini"        # Lightweight model, cost-effective
      personality: "friendly"      # Casual tone
    slack:
      model: "gpt-4o"             # Work use, high quality
      personality: "professional"  # Professional tone
    discord:
      model: "gpt-4o"             # Community use
      personality: "creative"     # Creative tone

❓ FAQ

Q How many platforms can I connect simultaneously?
A Unlimited. Running all 15+ platforms at once is fine — each platform runs on its own thread.
Q Is there significant cross-platform message latency?
A Memory retrieval takes <100ms, which doesn't impact experience. Response time depends on model inference.
Q Can each platform have a different persona?
A Yes. Use routing rules to set different tones, models, and skills per platform.
Q How to avoid replying to everyone in groups?
A Configure trigger mode: @mention or specific prefix (e.g. !hermes). By default, only directly triggered messages get replies.
Q What are WhatsApp limitations?
A WhatsApp Business API has message frequency limits (max 1000 messages per 24 hours) and requires Meta Business verification.
Q How to monitor platform status?
A hermes platform status shows all platform connection states and message statistics.

📖 Summary


📝 Exercises

  1. Basic (⭐): Connect to Telegram or Discord, complete a conversation, and verify message sending and receiving works correctly.
  2. Intermediate (⭐⭐): Connect to two platforms simultaneously, start a conversation on one and continue on the other, verifying cross-platform memory.
  3. Advanced (⭐⭐⭐): Configure multi-platform routing rules — professional mode on work platforms (Slack), creative mode on social platforms (Discord).
Web-Tutorial.com

Web-Tutorial Tech Team

A team of developers maintaining programming tutorials. Each tutorial is written and reviewed by developers with expertise in that field. We work to keep our content accurate and reliable — if you spot an issue, please let us know.

100%

🙏 帮我们做得更好

我们是刚上线的编程教程站,几个人的小团队,精力有限。页面虽经检查,难免还有疏漏——链接失效、排版错乱、内容有误、语言生硬……

如果您发现了,麻烦告诉我们,我们会在收到反馈后第一时间进行修复,再次感谢您的光临 🙏