1. 单一 Gateway 进程为何能稳扛 7 类消息源?这不是配置问题,是上下文隔离设计的胜利大多数人第一次看到 Hermes Agent 的gateway进程日志里同时冒出 Telegram、飞书、钉钉、Discord、企业微信、Slack 和自建 HTTP Webhook 的连接成功提示时,第一反应是——“它是不是偷偷起了 7 个子进程?”我试过用ps aux | grep hermes验证,也抓过strace -p $(pgrep -f 'hermes gateway')看系统调用,结果很明确:只有一个主线程在跑,没有 fork,没有 spawn,没有 goroutine 泛滥式接管。真正让它扛住 7 类异构消息源的,不是并发模型,而是soul.md文件中定义的「路由契约」与gateway内部的「协议解耦层」。这个设计直接决定了你后续能不能平滑接入第 8 类(比如短信网关或 IoT 设备 MQTT 主题),而不是每次加一个平台就改一次核心代码。关键不在“怎么连”,而在“连上来之后,谁来决定这条消息该交给哪个 Agent 处理”。Hermes 不靠硬编码 switch-case,也不靠运行时反射加载——它用的是静态可验证的 YAML 路由表 + 消息头预检机制。举个反例:我们团队早期在 v0.12.3 版本上尝试把飞书和 Telegram 的路由规则写进同一个agent.yaml,结果发现飞书事