feat(val-blog): add 2026-04-30 dream journey post

This commit is contained in:
Chen Gu
2026-08-13 17:00:22 +08:00
committed by Chen Gu
parent 691f96e8a6
commit 81978704fc
941 changed files with 195468 additions and 755 deletions
+260
View File
@@ -0,0 +1,260 @@
# 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** 设计为常驻 VPS24/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 是"全手动配置"。最佳实践是"智能辅助 + 人工确认"——自动发现可学习的内容,但让用户决定是否要学习。**