乐于分享
好东西不私藏

学完Claude Code和OpenClaw后,我终于看懂了Hermes在赌什么

学完Claude Code和OpenClaw后,我终于看懂了Hermes在赌什么

第三个 Agent 框架,为什么还值得看

前面研究 Claude Code 和 OpenClaw 时,我逐渐形成了两个很清楚的印象。

Claude Code 像一名顶级程序员。它的世界围绕代码库展开:怎样理解工程、修改文件、运行命令、压缩上下文,以及怎样配合 Claude 的 prompt caching ,把一次编程任务做得更稳。

OpenClaw 则像一套长期在线的个人助理基础设施。它的价值不只在“回答得聪明”,而在于你可以从 Telegram 、 WhatsApp 、 Discord 等不同入口找到它; Gateway 常驻后台,定时任务和消息路由持续运行。

到了 Hermes ,我最初又看见了熟悉的东西: Provider 、 Channel 、 Gateway 、工具调用、 MCP 、多 Agent 。

如果只数功能,它似乎只是又一个通用 Agent 框架。但继续往下看,我发现它真正押注的是第三件事:

Claude Code 想把当前代码任务做得最好, OpenClaw 想让助手无处不在, Hermes 想让同一个 Agent 在长期使用中越来越像“你的 Agent”。

三个框架的中心对象不同

判断一个复杂系统,不能只看它支持什么功能,更要看它把哪种对象放在架构中心。

框架
中心对象
最想解决的问题
Claude Code
代码库与当前任务
怎样可靠地完成软件工程工作
OpenClaw
长期在线的个人助理
怎样从不同渠道持续服务同一用户
Hermes
会积累经验的 Agent
怎样把一次经历变成下一次能力

三者都有会话、工具、上下文和子 Agent ,但资源投入方向明显不同。

Claude Code 会为代码编辑、计划执行和缓存命中精雕细琢; OpenClaw 会为 Channel 、 Gateway 、 heartbeat 和设备连接投入大量工程; Hermes 最有辨识度的代码与产品叙事,则集中在 Memory 、 Skill 、后台复盘和持续整理。

这也是为什么把三者简单排成“谁功能更多”没有太大意义。赛车、越野车和一名会记笔记的学徒,都可以有方向盘,但它们并不是同一种产品。

Hermes 所说的成长,具体是什么

Hermes 并不会训练模型权重。所谓成长,是把交互中形成的东西保存在模型之外。

它把连续性大致拆成四类资产:

身份:我是谁,正在服务谁经历:过去发生过什么事实:哪些信息以后仍然有效程序:这类事情以后应该怎样做

身份由 Profile 、 SOUL 和 USER 等内容表达;过去的经历保存在 Session 中;长期事实进入 Memory ;可重复的方法变成 Skill 。

任务结束后,后台 Reviewer 还可以回看这次会话,判断有没有值得留下的纠正、偏好或操作流程。 Curator 则负责继续整理已经形成的技能资产。

于是一次任务的产物不再只有最终回答:

行动 → 得到结果 → 提取经验→ 写入Memory或Skill → 下次召回→ 再次行动 → 形成新证据

这条链路,就是 Hermes 真正区别于另外两个框架的地方。

Claude Code 也有记忆和 Skill ,区别在哪里

Claude Code 当然也会读取 CLAUDE.md ,也支持 Skill 、子 Agent 和历史恢复。但这些机制最终都服务于一个目标:更好地完成工程任务。

它的长期知识主要由人维护。开发者把项目规范写进 CLAUDE.md ,把稳定流程写成 Skill 。系统可以帮助执行,却不会把“每次任务结束后自动反思并演化程序记忆”放在产品中心。

这是一种很合理的克制。代码修改需要可审查、可复现,人通常不希望工具因为一次特殊任务就悄悄改掉通用开发流程。

Hermes 更激进:它认为 Agent 应该主动寻找值得沉淀的经验。优点是成长感更强,风险是错误经验和偶然做法也会被固化。

OpenClaw 也有 Memory ,区别又在哪里

OpenClaw 的记忆系统更加丰富,默认就可以组合 Markdown 、全文搜索、向量召回,甚至扩展知识层。它还特别擅长通过 Channel 和 Gateway 保持“无论从哪里说话,都是同一个助手”。

但 OpenClaw 的核心产品体验仍然是存在感:长期在线、主动触达、连接外部世界。

Hermes 的重点更偏向能力演化。 Memory 不只是为了下次记得用户说过什么,还要与 Skill 分工:事实进入 Memory ,程序进入 Skill ,任务结束后再决定是否更新。

如果说 OpenClaw 让 Agent “一直在那里”, Hermes 更想让它“下次做得不同”。

Hermes 最容易失败的地方

自学习听上去天然正确,实际上比连接十个 Channel 更危险。

一个 Skill 被创建,不代表它真的有效;一个旧 Skill 被修改,也不代表新版本更好。模型可能把偶然成功总结成通用规律,把客户 A 的特殊流程覆盖到所有客户,还可能为了证明自己在学习而不断制造低价值 Memory 和 Skill 。

因此 Hermes 真正的护城河不能按“生成了多少技能”衡量,而应该看:

相似任务第二次执行时,用户是否少纠正了几次;
Skill 被召回后,成功率是否提高;
错误经验能否被发现、撤销和回滚;
学习收益是否高于后台复盘产生的模型成本。

Hermes 已经把自学习从口号推进成了一套真实机制,但“怎样证明学得更好”仍是尚未完成的部分。

这套系列接下来研究什么

接下来的五篇不会按源码目录走,而会沿着几个真正影响 Agent 产品价值的问题继续拆解。

Memory 篇会讨论它为何默认使用小型 Markdown 和 FTS5 ; Agent 系统篇会看上下文、 Prompt 、 Session 、工具和多 Agent 怎样组成一次完整运行;两篇自进化会分别解释学习如何发生,以及为什么学习资产必须被治理;最后再讨论,如果把三套框架的优点拿来自建,我们应该抄什么、重写什么。

看到这里,我对 Hermes 的评价不是“它比 Claude Code 和 OpenClaw 更强”。更准确的说法是:它选择了一个更冒险,也更接近长期 Agent 终局的问题。