Hermes Agent:控制论驱动的多智能体协作框架
🤖 声明:本文由 Vincent_Lai 的 Hermes AI 助理生成,仅供技术交流参考。
一、概述
我用 Nous Research 的开源 Hermes Agent 框架,通过持续配置、扩展和工程化改造,将其打造成了一个控制论驱动的多 Agent 个人助理系统。它不是对现有框架的简单包装,而是在开源基础上构建了一套完整的工程体系——将个人生活的多个维度(健康、财务、职业、学习等)委托给专属的专家 Agent,通过智能路由和 Kanban 任务调度实现高效协同。
系统核心理念可概括为三个关键词:控制论闭环 — 每个操作都有测量点和反馈回路,杜绝"闷头干活不检查";多 Agent 路由 — 消息先过路由表再分发,强制"有专家必走专家";Kanban 调度 — 任务持久化、解耦执行,彻底解决子任务被用户消息打断的痛点。
本文将从架构设计的角度,逐一解析 Hermes Agent 的核心子系统。
二、系统架构全景
Hermes Agent 由五大子系统构成,自上而下形成清晰的层级:
Gateway 通道层 (CLI / 飞书 / 微信)
消息入口与出口,多通道统一收发
│
总管 Agent (Orchestrator)
agent-router → 意图路由 → 分发
汇总回复 + 控制论闭环执行
│ │ │ │
▼ ▼ ▼ ▼
Kanban 任务调度层 (SQLite)
Dispatcher 每 60s 轮询 → spawn
│ │ │ │
▼ ▼ ▼ ▼
14 专家 Agent (独立 Profile)
CTO/CFO/军师/小营/小练/小医/小晴…
各有 persona + Memory + 订阅领域
│
持久化与工具层
Memory | Fact Store | Checkpoints
Terminal | Browser | Cron | Skills
三、多 Agent 协作体系
3.1 角色分工
系统目前部署了 14 个专家 Agent,按照生活维度分为五个集群:
| 集群 | Agent | 职责领域 |
|---|---|---|
| 🏥 健康生命 | 🍽️ 小营 | 饮食、营养、热量管理 |
| 🏋️ 小练 | 运动、健身、训练计划 | |
| 🩺 小医 | 身体症状、医疗咨询 | |
| 🧠 小晴 | 情绪、心理、人际关系 | |
| 📈 成长自律 | 📚 小墨 | 学习、阅读、知识管理 |
| 💼 小职 | 职业发展、晋升策略 | |
| ✍️ 小笔 | 写作、文案、表达 | |
| ⚖️ 小督 | 习惯监督、自律提醒 | |
| 🏠 生活资产 | 💰 CFO | 财务预算、消费记账 |
| ⏰ 小刻 | 时间管理、日程效率 | |
| 🛋️ 小居 | 生活提醒、习惯养成 | |
| 🚗 小途 | 出行规划、旅行攻略 | |
| 💻 技术生产力 | 🤖 CTO | 编程、部署、脚本开发 |
| 📂 小档 | 数据归档、信息汇总 | |
| 🎮 娱乐策略 | 🎯 军师 | 桌游、策略分析 |
3.2 独立 Profile 设计
每个 Agent 拥有独立的 persona.md 人设文件和私有的 Memory 数据库。CFO、CTO、军师三个高频 Agent 还拥有独立 Profile——独立的 config.yaml 配置和 memory_store.db 记忆库,确保不同领域的上下文互不污染。低频 Agent 共享 kanban-worker Profile,降低维护成本。
💡 设计要点: 独立 Profile 的关键价值——CFO 的记忆中只有财务规则,不会被 CTO 的技术术语污染;CTO 的性能调优经验不会混入营养学知识。这种记忆隔离是多 Agent 系统稳定运行的基础。
四、智能路由 + 哨兵系统
4.1 TURN-0 强制路由
路由系统是整个框架的交通中枢。主 Agent(总管)收到用户消息后,不直接处理,而是先执行一段名为 TURN-0 的强制路由流程:
用户消息
→ 总管加载 agent-router skill(路由表)
→ 哨兵告警检查(是否有未处理的合规违规)
→ 三级匹配路由:
P1 精确匹配 — 关键词命中路由表,直接分发
P2 语义匹配 — AI 匹配 Agent 领域描述,分发
P3 未知兜底 — 总管自行回答,记录日志
→ kanban_create(task, assignee=profile)
→ Dispatcher 调度 Worker 执行
→ 总管汇总结果 → 回复用户
4.2 路由合规哨兵
为了防止 Agent"跳过路由表直接回复"(实际发生过五次事故),系统引入了独立的路由合规哨兵——一个每 15 分钟通过 cron 自动运行的独立进程:
- 违规记录:每次路由违规(跳过路由表、总管越权等)被精确记录到
routing-compliance.md,包含日期、类型、次数 - 升级告警:同一类型违规连续 ≥3 次,自动升级为告警状态
- 哨兵纠正:独立哨兵进程发现告警 → 自动加载路由表 → 强制执行路由纠正
- 设计哲学:借鉴 PID 控制器思路——P(比例·触发器,TURN-0 强制加载)、I(积分·合规追踪,累积计数)、D(微分·哨兵纠正,独立进程自动干预)
这套三层防护(强制路由 + 合规追踪 + 哨兵兜底)源于真实踩坑后的系统性改进。
五、Kanban 任务调度
5.1 为什么需要 Kanban?
早期的 Hermes 使用 delegate_task 进行同步子任务委托。但存在根本性缺陷:子 Agent 运行在父 Agent 的 turn 内——用户发一条新消息,父 turn 被中断,子 Agent 随之被杀,工作丢失。
Kanban 调度彻底解决了这个问题:
- 所有任务写入 SQLite 数据库(
kanban.db),持久化不丢失 - 独立的 Dispatcher 每 60 秒轮询一次,发现就绪任务则 spawn 新的独立进程
- Worker 进程与用户对话完全解耦——用户发消息不会杀死 worker
- Worker 执行完成后通过
kanban_complete提交结果,总管收集汇总
5.2 任务生命周期
todo → ready → running → done/blocked
↑ │
└──── 父任务完成 ─────┘
Worker 在 running 态的标准流程:kanban_show 获取上下文 → 执行工作 → kanban_heartbeat 报告进度(长任务)→ kanban_block 请求决策(遇到卡点)→ kanban_complete 提交结构化结果。
每个 Worker 拥有独立的工作空间,支持临时目录(scratch)、持久目录(dir)和 Git worktree 三种模式。
六、三层记忆系统
Hermes Agent 的记忆系统采用 L1/L2/L3 三层架构,灵感来自计算机的缓存层级:
| 层级 | 组件 | 特点 | 类比 |
|---|---|---|---|
| L1 | Memory | 每次 turn 注入系统的核心行为准则,紧凑高效(约 1500 字符) | CPU L1 缓存 — 极快、极小 |
| L2 | Fact Store | 深度结构化记忆,支持代数推理:实体探测(probe)、关系查询(related)、组合推理(reason)、矛盾检测(contradict) | CPU L2/L3 缓存 — 较大、较慢 |
| L3 | Session Search | 历史会话全文检索,支持关键词搜索和语义匹配 | 磁盘 — 大容量、按需加载 |
💡 设计哲学: 不是所有信息都值得常驻上下文。L1 只存核心行为红线(如"有专家必走专家"),L2 存持久的结构化事实,L3 按需回溯历史。这让每次 turn 的上下文预算都用在刀刃上,避免被无关记忆挤满。
七、控制论闭环实践
系统不是纸上谈兵,控制论八大核心律在工程层面有明确落地:
- ① 闭环反馈:每次 turn 结束后自检——“路由表查了吗?发言人前缀加了吗?越权了吗?”
- ② 系统建模:复杂问题先明确输入/输出/状态/扰动再动手,通过
cybernetic-thinkingskill 引导 - ③ 稳定性优先:任何方案先确保不发散(不越改越糟),再追求最优
- ④ 前馈预判:通过
avoidance-checklist.md记录已知的坑,任务启动前扫描并提前部署防御 - ⑤ 鲁棒容错:checkpoint 断点续传 + watchdog 进程守护,单个任务失败不扩散为系统级故障
- ⑥ 系统集成:Agent 间通过订阅注入机制通信,用领域标签解耦——CFO 只订阅财务标签,不关心健康数据
- ⑦ 定量测量:
routing-compliance.md精确记录每次违规的日期、类型、次数,从"感觉"推进到"数据" - ⑧ 动态调优:路由日志积累 → 经验提取 → 路由表迭代。系统不是一次定型,而是持续进化
这八项律不是理论框架,而是工程约束:每个子系统在设计时都必须回答——“你的测量点在哪里?”“你的反馈回路怎么走?”“出问题后怎么自动恢复?”
八、信息管线 + 用户画像闭环
8.1 多源信息管线
为了让 AI 真正了解用户,系统搭建了每日自动化的信息输入管线,从多个平台采集用户行为数据:
- 微信读书:阅读记录、书架、笔记划线、书评
- 豆瓣:电影/书籍评分、评论
- 知乎:浏览、点赞、收藏
- 小红书:浏览内容、收藏
采集通过 cron 定时任务实现,每晚 23:35-23:50 自动运行,各源独立同步脚本 → 标准化数据格式 → 去重、增量检测 → 聚合为统一格式。
8.2 用户画像闭环
信息管线不只是单纯的"数据收集",它驱动了一个持续优化的反馈闭环:
数据采集(多源管线)
│
▼
深度分析(情绪/人格/价值观/思维模式等维度)
│
▼
生成结构化用户画像报告
│
▼
画像注入 Agent 上下文 → AI 更了解用户偏好
│
▼
提供更精准、个性化的服务
│
▼
更多交互数据产生 → 回到数据采集
✦ 闭环 ✦
Cron 配置:每日增量刷新画像(处理当日新增数据),每周全量推送完整画像报告。这套机制让 AI 从"通用助手"逐步进化为"懂你的个人助理"——了解你的阅读品味、消费习惯、运动偏好,从而给出更贴合的决策建议。
九、Skill 插件 + 外部集成
9.1 Skill 插件体系
Skill 是 Hermes 的可复用知识模块,每个 skill 是一个标准化目录:
skill-name/
├── SKILL.md # 主文件 (YAML frontmatter + Markdown)
├── references/ # 参考文档 (API 文档、协议说明)
├── templates/ # 模板文件 (配置、HTML、SPEC)
├── scripts/ # 可执行脚本
└── assets/ # 静态资源
当前 skill 库覆盖以下领域,全部按需动态加载,避免上下文膨胀:
| 领域 | 核心 Skill |
|---|---|
| meta | agent-router(路由表)、engineering-cybernetics(控制论方法论)、delivery-gate(交付自检) |
| devops | kanban-worker(Worker 规范)、kanban-orchestrator(编排规范) |
| github | PR 工作流、Code Review、Issue 管理、仓库克隆 |
| browser | Chrome CDP 自动化、浏览器操作 |
| creative | ASCII 艺术、SVG 架构图、Excalidraw 手绘、像素画 |
| mlops | vLLM 推理服务、llama.cpp 本地推理、HuggingFace Hub |
| research | arXiv 论文搜索、豆包联网搜索、Polymarket 数据 |
| health | 饮食追踪、睡眠记录、生活方式管理 |
9.2 多通道 Gateway
Hermes 通过 Gateway 层统一管理外部消息通道,当前已连通:
- CLI:终端直接交互,主通道
- 飞书:WebSocket 长连接,实时消息收发
- 微信:Webhook 通知,支持图文消息投递
9.3 Cron 定时任务矩阵
| 任务 | 周期 | 说明 |
|---|---|---|
| 信息管线 | 每日 23:35 | 聚合微信读书、豆瓣、知乎、小红书等内容数据 |
| 路由哨兵 | 每 15 分钟 | 扫描合规状态,自动纠正路由违规 |
| 进程看门狗 | 每 5 分钟 | 守护长任务进程,检测异常自动重启 |
| Git 自动快照 | 每 30 分钟 | 检测配置变更,自动 commit |
| 用户画像刷新 | 每日增量 + 每周全量 | 从管线数据生成/更新用户画像,注入 Agent 上下文 |
| Kanban 完成通知 | 每 1 分钟 | 轮询 kanban.db,新完成任务自动推送飞书通知 |
9.4 持久化与版本管理
~/.hermes/ 目录使用 Git 进行版本控制:代码、配置、Skill 定义、设计文档全部纳入追踪。cron 每 30 分钟自动提交变更。结合 hermes rollback 的文件级 checkpoint,形成双重安全网。
代码修改超过 5 行时,遵循 SPEC 规格驱动流程:先写 SPEC 文档 → 总管审查 → 编码 → 对照验收标准自检。
十、总结
Hermes Agent 的设计哲学可以用**「三位一体」**来概括:
控制论闭环确保系统不跑偏(有测量、有反馈、有修正),多 Agent 路由 + 哨兵确保任务交给对的人且合规模板化(路由表 + PID 哨兵双重保障),Kanban 调度确保任务不丢失(持久化、解耦、独立进程)。
这三者不是独立模块的简单堆叠,而是互相支撑的系统工程:路由为 Kanban 提供分发决策,Kanban 为执行提供可靠通道,控制论为整个流程提供质量保证。信息管线 + 用户画像闭环进一步让 AI 从"通用工具"进化为"懂你的个人助理"。
从工程角度看,Hermes 探索了一条从「单体 AI 助手」到「多 Agent 协作系统」的演进路径。它不是要替代现有的 AI Agent 框架,而是展示了一种将控制论、任务调度、分层记忆、信息管线和用户画像有机整合的实践方案。对于那些希望让 AI 深度参与日常管理、同时需要高可靠性和可维护性的开发者,这套架构或许能提供一些启发。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)