AI Agent 约 14 分钟

从 Agent Loop 到自进化:Hermes 有哪些是我们可以抄的

承接《Agent Loop 的文章好写》结尾对 OpenClaw/pi 的推荐,回答"真要给 OPc 自研执行 core 时为什么参照物换成 Hermes":一是 agent + skill 形态太黑盒,要把可控执行程序化;二是要前后端分离,不被前端 TS 体系主导。正文拆 Hermes 自研 loop 和两层自进化(运行时闭环 + DSPy/GEPA 离线进化),落点是"哪些直接抄、哪些反着做"

AI Agent

最近 Nous Research 的 Hermes Agent 挺火,官网把它称为“会随你成长”的 Agent。我不太关心这句宣传语,真正让我停下来翻源码的是两个问题:它的 loop 到底怎么跑?它说的“自进化”,最后改动的究竟是什么? 这件事还有一点前情。在 《Agent Loop 的文章好写》 结尾,我建议想学 Agent Loop 的人先看 OpenClaw 和它的内核 pi,不要急着从零手搓。这个建议没变。但轮到我给 OPc 做执行 core 时,主要参照物却换成了 Hermes。 先说最现实的问题。OpenClaw 和 Hermes 都大量依赖 agent + skill:Skill 是自然语言,缺少稳定契约,也很难做回归;Hermes 还允许后台 LLM 自己判断何时创建或修改技能。出了问题,排查链路会很长。我在 《当 AI 学会了你的 Skill,你还剩下什么》 里已经踩过这类坑,所以这次更想把能确定的执行过程写成程序,把模型留在真正需要判断的位置。 另一个原因是系统形态。pi 是 TS monorepo 里的嵌入式库,和前端运行时靠得很近。我的设想则是把 core 做成 headless 服务,CLI、IM 和 Web 只是不同入口。以后 OPc 真要从自用工具变成多人系统,也不用再拆一次前后端。Hermes 的 Python AIAgent 正好提供了一个更接近这个方向的样本。 下面不是一份完整的 Hermes 源码导读。我只拆跟这次架构选择有关的部分,也会明确写出哪些地方准备借鉴,哪些地方我不会照搬。

一、Loop:它没有”pi”

OpenClaw 的核心 loop 来自独立的 pi(pi-agent-core + pi-ai):Read、Write、Edit、Bash 四个基础工具,再加一套扩展系统。Hermes 没有抽出一个对应的“pi”,loop 就写在主仓库里。顺着调用链看,核心集中在两处:

文档信息

京ICP备2021015985号-1