# Hermes Agent 优秀做法分析与融入方案 > 基于《Hermes Agent The Complete Guide》的学习总结 > 分析时间: 2026-04-16 --- ## 一、Hermes 核心创新点 ### 1. Learning Loop(学习闭环)- 最核心的差异 **Hermes 做法:** ``` Curate Memory → Create Skill → Skill Self-Improvement → FTS5 Recall → User Modeling ``` - **每次任务后自动回顾**:不是被动存储,而是主动决定"什么值得记住" - **自动提炼 Skill**:完成复杂任务后,自动判断是否值得保存为 Skill - **Skill 自我改进**:每次使用 Skill 后,根据反馈自动修改 Skill 文件 - **FTS5 全文检索**:精准召回,只加载相关内容到上下文 - **用户建模(Honcho)**:12 层身份推断,从行为模式推导用户偏好 **关键区别:** - 传统 AI:记忆是对话日志的累积(录像带,越来越长直到溢出) - Hermes:记忆是经验的提炼(笔记本,可以无限使用) ### 2. 三层记忆系统 | 层级 | 用途 | 存储 | |------|------|------| | Session Memory | 记住"刚才发生了什么" | SQLite + FTS5 | | Persistent Memory | 记住"你是谁、你喜欢什么" | SQLite + FTS5 | | Skill Memory | 记住"如何做事" | Markdown 文件 | **关键设计:** - 按需检索,而不是全部加载 - 纯本地存储(SQLite),不上传服务器 - 迁移时只需复制 `~/.hermes/` 目录 ### 3. Skill 自进化系统 **Skill 文件结构:** - 纯 Markdown 格式 - 存储在 `~/.hermes/skills/` - 三个来源:自带、Agent 自动创建、社区 Hub **自进化机制:** 1. 首次创建:完成任务后自动提炼 2. 使用反馈:用户说"这里应该检查表是否存在" 3. 自动更新:Skill 文件被修改,下次默认包含该检查 ### 4. Harness Engineering 自动化 **Mitchell Hashimoto 的手动方式:** - 发现 AI 犯错 → 手动写入 CLAUDE.md → 下次遵循 - 需要人有耐心持续维护 **Hermes 的自动化方式:** - 发现错误 → 自动提取规则 → 写入 Skill → 下次自动应用 - 门槛降到零,不需要用户手动维护 --- ## 二、可融入 OpenClaw/Val 的优秀做法 ### ✅ 立即可融入的做法 #### 1. **自动 Skill 提炼与改进机制** **现状:** OpenClaw 的 Skills 主要是手动编写和维护(ClawHub 5700+ 社区 Skills) **融入方案:** ``` 任务完成后 → Val 分析过程 → 判断是否值得提炼 Skill → 自动生成/更新 Skill 文件 ``` **具体实现:** - 在 `workspace/skills/` 下增加 `auto/` 目录存放自动生成的 Skills - 每次复杂任务后,spawn Catalyst 分析是否可以提炼 Skill - 用户反馈"下次记得..."时,自动更新对应 Skill **与现有系统的结合:** - 复用现有的 Skill 格式(SKILL.md) - 自动 Skills 与手动 Skills 共存 - 用户可以随时编辑、删除自动生成的 Skills #### 2. **FTS5 全文索引的记忆召回** **现状:** OpenClaw 使用语义搜索(gemini-embedding)+ 记忆文件 **融入方案:** - 在 SQLite 中增加 FTS5 索引 - 会话前基于当前主题搜索相关记忆 - 精准召回 vs 语义召回结合使用 **优势:** - 更精准的召回(避免语义漂移) - 纯本地,保护隐私 - 可解释性强(能看到为什么召回这段记忆) #### 3. **主动记忆策展(Active Memory Curation)** **现状:** OpenClaw 被动依赖用户写 memory 文件 **融入方案:** ```python # 每次会话结束后 if 任务复杂度 > 阈值: spawn subagent "分析本次会话,提取值得长期记住的内容" 生成 memory 条目 写入 memory/YYYY-MM-DD.md 或 MEMORY.md ``` **触发条件:** - 复杂任务完成 - 用户明确说"记住这个" - 周期性回顾(heartbeat) #### 4. **用户建模(轻量级)** **现状:** 基于 SOUL.md / USER.md 的显式配置 **融入方案:** ``` 轻量级用户建模(不依赖 Honcho): - 从 MEMORY.md 中提取用户偏好模式 - 从代码修改习惯推断风格 - 周期性更新 USER.md ``` **输出形式:** - 更新 USER.md 的 "Notes" 部分 - 生成 `inferred_preferences.json` #### 5. **Skill 使用反馈闭环** **现状:** Skills 是静态的,除非手动更新 **融入方案:** ``` 使用 Skill → 任务完成 → 询问/分析效果 → 更新 Skill ``` **具体做法:** - 任务完成后:"这个 Skill 的效果如何?" - 用户反馈:"应该把 X 也加进去" - 自动编辑 Skill 文件 --- ### 🔄 需要权衡的做法 #### 6. **三层记忆架构** **现状对比:** | OpenClaw 当前 | Hermes 三层 | |--------------|------------| | Daily Logs (session) | Session Memory | | MEMORY.md (curated) | Persistent Memory | | Skills (manual) | Skill Memory (auto) | **融入建议:** - 不完全照搬,保持 OpenClaw 的文件化哲学 - 增加 `memory/session/` 目录存放原始会话记录 - 保留 MEMORY.md 作为 curated 精华 - 增加 Skills 的自动生成能力 #### 7. **Learning Loop 自动化程度** **Hermes:** 全自动,用户完全不用管 **OpenClaw:** 全手动,用户自己维护 **建议中间路线:** ``` 检测到可提炼内容 → 询问用户 "是否要保存为 Skill?" → 用户确认 → 生成 ``` **原因:** - 谷老板偏好可控性(USER.md 中强调) - 全自动可能产生垃圾 Skills - 确认机制保持用户掌控 --- ### ⚠️ 不建议照搬的做法 #### 8. **24/7 常驻后台模式** **Hermes:** 设计为常驻 VPS,24/7 在线 **OpenClaw:** 按需响应,heartbeat/cron 机制 **原因:** - OpenClaw 的架构更轻量 - 现有 heartbeat + cron 机制足够 - 谷老板的使用场景不需要 Agent 主动运行任务 #### 9. **Honcho 式深度用户建模** **Hermes:** 12 层身份推断,深度分析 **建议:** 轻量级推断即可 **原因:** - 隐私考虑 - 复杂度与收益不成正比 - OpenClaw 的显式配置(SOUL.md/USER.md)已足够表达 --- ## 三、具体实施建议(优先级排序) ### P0 - 高价值、易实施 1. **Skill 自动提炼机制** - 复杂任务后 spawn Catalyst 分析 - 询问用户是否保存为 Skill - 保存到 `skills/auto/` 2. **记忆主动策展** - 任务完成后自动分析值得记住的内容 - 更新 memory/YYYY-MM-DD.md - 定期(heartbeat)整理到 MEMORY.md ### P1 - 中等价值、中等复杂度 3. **FTS5 全文索引** - 为 memory 建立 FTS5 索引 - 会话前基于主题召回相关记忆 - 与现有语义搜索结合 4. **Skill 反馈改进** - 使用 Skill 后询问效果 - 根据反馈自动更新 Skill ### P2 - 长期价值、高复杂度 5. **轻量级用户建模** - 从 MEMORY.md 提取偏好模式 - 周期性更新 USER.md - 生成推断报告 --- ## 四、与现有 OpenClaw 能力的对比 | 能力 | OpenClaw 现状 | Hermes 做法 | 融入建议 | |------|--------------|------------|---------| | Skill 创建 | 手动编写 | 自动提炼 | 增加自动提炼+人工确认 | | Skill 改进 | 手动更新 | 自动改进 | 使用后询问反馈 | | 记忆系统 | 文件化 (Daily Logs + MEMORY.md) | SQLite + FTS5 | 保留文件化,增加 FTS5 索引 | | 记忆召回 | 语义搜索 | FTS5 全文检索 | 两者结合 | | 用户建模 | 显式配置 (USER.md) | 隐式推断 (Honcho) | 轻量级推断 | | 学习闭环 | 无 | 完整的五步骤闭环 | 实现核心闭环 | | 多平台 | 50+ 平台 | 14 平台 | 保持现有优势 | | 社区生态 | ClawHub 5700+ Skills | 早期阶段 | 保持现有优势 | --- ## 五、一句话总结 > **Hermes 是"全自动学习",OpenClaw 是"全手动配置"。最佳实践是"智能辅助 + 人工确认"——自动发现可学习的内容,但让用户决定是否要学习。**