把 Hermes 接进消息应用
终端很适合开发者;其他人只想在自己已经在用的 App 里用到 Hermes。Hermes 提供了一套消息网关,在同一个进程里同时驱动 15+ 平台 —— Telegram、Discord、Slack、WhatsApp、Signal、飞书、钉钉、企业微信、QQ 机器人、通过 BlueBubbles 的 iMessage 等等。本课讲网关架构、统一的安全模型,以及逐平台的能力矩阵,帮你选对渠道。
主要来源:消息平台索引 https://hermes-agent.nousresearch.com/docs/user-guide/messaging/。每个平台有各自页面 —— 本课提供的是横向定位。
一个网关,多个平台
Hermes 不为每个平台起一个单独的进程,而是用一个网关服务同时管理所有已配置的渠道 —— 消息路由、会话持久化、定时任务执行、语音投递全部走同一套基础设施。实际效果是:接入第二、第三个平台并不会让运维成本翻倍。
相关命令都在 hermes gateway 下:
hermes gateway setup # 新平台的交互式配置
hermes gateway run # 前台运行(调试用)
hermes gateway start # 以守护进程方式启动
hermes gateway status # 查看当前哪些平台在线
hermes gateway stop # 优雅停止守护进程安全模型:默认允许名单
在开启任何机器人之前,请把这条规则内化:默认情况下,网关会拒绝所有不在允许名单里、也没有通过 DM 配对的用户。在公共群聊里跑一个带终端能力的机器人就是事故现场的预演 —— 所以 Hermes 把「锁死」设为默认态。
三种机制:
- 按平台的环境变量 —— 例如 Telegram 的
TELEGRAM_ALLOWED_USERS=123456789,987654321。 - 跨平台统一名单 ——
GATEWAY_ALLOWED_USERS,在每个平台生效同一张名单。 - DM 配对码 —— 智能体下发一次性码,你从 CLI 用
hermes pairing approve批准。对不愿先报出用户 ID 的同事很友好。
当机器人启用了终端工具时,永远不要设 GATEWAY_ALLOW_ALL_USERS=true。文档把这条加粗是有原因的。
平台能力矩阵
不是每个平台都支持每项功能。粗略定位如下:
| 层级 | 平台 | 语音 | 表情回应 | 文件/图片 |
|---|---|---|---|---|
| 丰富 | Discord | 是 | 是 | 是 |
| 丰富 | Slack | 是 | 是 | 是 |
| 丰富 | Telegram | 是 | 否 | 是 |
| 丰富 | Matrix | 是 | 是 | 是 |
| 企业 | 飞书 / Lark | 是 | 否 | 是 |
| 企业 | 企业微信 (WeCom) | 是 | 否 | 是 |
| 企业 | 钉钉 | 否 | 是 | 是 |
| 企业 | Mattermost | 否 | 否 | 是 |
| 隐私 | 否 | 否 | 是 | |
| 隐私 | Signal | 否 | 否 | 是 |
| 地区 | QQ 机器人 | 是 | 否 | 是 |
| 地区 | 微信 | 否 | 否 | 是 |
| 地区 | BlueBubbles (iMessage) | 否 | 是 | 是 |
| 其他 | SMS (Twilio) | 否 | 否 | 否 |
| 其他 | 否 | 否 | 是 | |
| 其他 | Home Assistant | 否 | 否 | 否 |
| 其他 | Open WebUI / Webhook | — | — | — |
这张表是参考而不是承诺 —— 配置某个平台前请回到上游对应页核对,能力覆盖会演进。
每个平台的工具集
每个平台都有对应的工具集 —— hermes-telegram、hermes-discord、hermes-slack 等 —— 决定当消息从该平台进来时智能体能使用哪些工具。这是你无需写自定义代码就能实现「Slack 机器人能读文件但不能 rm」的方式。
Home Assistant 是个值得单独提的异类:它根本不是消息平台,而是智能家居集成,以工具形式暴露设备状态查询和服务控制。想让 Hermes 控制灯或读传感器很方便,但当作对话渠道不太合适。
通用聊天命令
不管什么平台,几条统一的聊天命令到处可用 —— 相当于 CLI 斜杠命令的跨平台对应:
/new—— 开启全新对话,丢弃之前上下文。/model—— 切换模型(受允许名单限制)。/voice—— 在支持的平台切换语音模式。/background—— 启动异步任务,在手机上长操作尤其管用,不用一直盯着前台。
会话跨消息持久化,重置策略可配置 —— 每天定点重置、空闲超时、或仅手动重置。
建议的第一个平台
如果没有强偏好,先上 Telegram。机器人模型对新手友好,语音转写开箱即用,允许名单的 UX 最直白。Telegram 稳定跑一周后再加第二个平台,不要再提前。
下一步
第 5 课集成讲另一半「对接外部系统」 —— 大模型提供商、MCP 工具服务器、网页搜索和语音后端。如果你是英国中小团队,想上线一个消息机器人但不想在允许名单配置上烧掉一个周末,SetupClaw 的托管服务会端到端把网关加固做完。