大约十轮攒一次复盘。
overview
Hermes:一个真的在生产里自我提升的 agent
它不训练模型。它把每轮后的教训写成记忆和技能,再让后面的会话用上。
后台 fork 最多走十六步。
只放行 memory 和 skill。
curator 默认七天一轮。
architecture
全局架构
- review 在用户回复之后启动,不抢正事的模型注意力。
- fork 用同一个 agent 骨架,但关掉会话库写入。
- 它只拿到 memory 和 skill 两类工具,别的工具运行时拒绝。
review timing
一轮复盘的时序
isolation
隔离是一次事故换来的
早期 fork 和主会话共用会话 ID。fork 的工作指令被写进真实会话。
用户下一轮再来,agent 把它当常驻指令,直接变成了管理员。
| 防线 | 做法 | 挡住什么 |
|---|---|---|
| 禁写会话库 | _persist_disabled |
fork 指令写进真实会话 |
| 关上下文压缩 | review 过程不切父会话 | 后台任务改动主会话历史 |
| 步数上限 | fork 最多走 16 步 |
后台任务失控拖太久 |
| 工具白名单 | 只放行 memory / skill |
review fork 碰外部副作用 |
省钱细节:fork 保持工具定义和父会话字节一致,更容易命中同一段 prompt 缓存。
write targets
记什么、怎么防写坏
memory
记忆文件=事实
- 用户偏好、环境情况,放进
MEMORY.md或USER.md。 - 写入前扫 prompt 注入和外带风险。
- 有字数预算、文件锁、并发改动检查。
skills
技能库=方法
- 可复用步骤,写成
SKILL.md或支持文件。 - 只有 agent 自建的才标来源,才交给 curator 维护。
- 用户手写和 pinned 的碰不得,改前必须先读当前版本。
skill lifecycle
技能的一生
- curator 只碰 agent-created skills。
- pinned、用户手写、外部来源,默认跳过。
- 归档是移目录,不是物理删除。
misreads
两个容易误会的地方
routines
routines 是真的,但不是学习
- cron、webhook、HMAC、限流都有代码。
- 它负责触发 agent run 和投递结果。
- 它不负责复盘、改记忆、改技能。
trajectories
轨迹管线是数据生产线
- 批量跑任务,攒 JSONL 给离线训练用。
- 跑样本时刻意关掉记忆,避免污染数据。
- 仓库里没有 reward 或训练回写代码。
current state
现在到哪了
- Hermes 证明了 agent 自动攒经验能在生产里跑。
- 它没做的是:攒下来的经验到底有没有用。
- 那一环是 yume 接的。