您的浏览器禁用了JavaScript(一种计算机语言,用以实现您与网页的交互),请解除该禁用,或者联系我们。 [未知机构]:2026HermesAgent橙皮书2.0 - 发现报告

2026HermesAgent橙皮书2.0

信息技术 2026-08-20 花叔 未知机构 LIHUYUN
报告封面

Hermes Agent 2.0 从入门到精通Nous Research开源框架实战指南 TheAgentThatGrowsWithYou 关键词:自改进闭环·多Agent编排·三层记忆· Skill系统·安全边界适合读者:想搭建个人AI Agent的开发者和AI爱好者版本:v260607 花叔 花叔 本手册基于Hermes Agent v0.16.0(2026.6「The Surface Release」)编写。AI工具迭代迅速,部分内容可能随版本更新而变化,请以官方文档为准。 目录 CONTENTS Part 1:这是什么 Part 5:多Agent与编排 §01先认识Hermes:一个会自己长本事的Agent MeetHermes:TheAgentThatGrowsItsOwnSkills 先把这本书的主角介绍清楚。Hermes Agent是一个开源的、会自我改进的AI Agent——它记得你,会从用过的经验里自己写技能,你睡觉的时候还在后台替你干活。与其说它是个工具,不如说是个越用越懂你的数字同事。 它到底能干什么 举个最普通的场景。你第一次用它,可能就是在Telegram上发句话,或者在命令行里敲个命令,让它帮你写个爬虫脚本。它给你的东西能用,但风格未必合你意——变量怎么命名、错误怎么处理、日志打到哪儿,它还不认识你,只能按通用习惯来。 但你用到第十次,情况完全不一样了。它知道你偏爱httpx不爱requests,知道你习惯把日志写进文件而不是打到终端,知道你讨厌太长的函数。没有人教它这些,是它自己从你们之前的交互里学会,并且写进了自己的技能库。 这就是Hermes最特别的地方,一句话说清:市面上的Agent要你亲手给它套「缰绳」——写规则、配权限、整理记忆;而Hermes出厂就带好了缰绳,更关键的是,这套缰绳会自己生长。 把它能做的事摊开,大概是这么几样: 所以与其叫它「AI助手」,我更愿意叫它数字同事——一个你不在的时候还替你干活、而且越合作越默契的同事。这本书要拆的,就是这个同事的脑子是怎么长出来、又怎么自己变聪明的。 它跟你已经知道的那些,是什么关系 你大概率听过几个名字:Harness、Claude Code、OpenClaw。它们听着像一类东西,先把坐标系摆清楚,免得越读越乱。 Harness是方法论,不是产品。如果你读过《Harness Engineering》那本橙皮书,会记得它讲的是怎么给AIAgent「造缰绳」:指令层、约束层、反馈层、记忆层、编排层,五个组件,是一套理念。Harness本身不是一个你能下载的软件。 Hermes是把这套理念产品化的那个东西。它出厂就带好了这五组缰绳,你不用自己一条条配。更进一步,它把缰绳做成了能自己生长的基础设施——这是它和大多数Agent最根本的区别,也是本书第二部分要重点讲的。 Claude Code、OpenClaw是它的同类,但定位不同。粗略分一下:Claude Code是交互式编码,你坐在那儿盯着它写代码;OpenClaw偏「配置即行为」,你写好人格和规则它照着跑;Hermes则把重心压在「自主后台运行+自我改进」上。三者正在互相靠近,但出发点不一样。 顺便说,它现在火得有点夸张 介绍完它是什么,说个题外但绕不开的事:这个项目现在的热度,是真的高。 它的GitHub stars量级已经越过了十八万。被Dealroom列进了2026年增长最快的开源Agent框架。你每次打开仓库,数字都还在往上走。 一个数字感受一下迭代速度:最新的v0.16.0这一个版本,背后是八百多个commit、五百多个merge的PR、一百七十多位贡献者。这还只是一个minor版本。开源社区的飞轮一旦转起来,加速度是吓人的。 迭代到底有多快,我自己是有体会的。两个月前我写过这本书的第一版,那会儿的Hermes还是个跑在终端里、靠Telegram远程操控的极客玩具。两个月、九个版本之后,它已经长出了原生桌面App、浏览器全套管理面板、简体中文,官方把这一版直接叫「The Surface Release」,触达面发布。一句话:内核没变,但它从一个只有命令行老手摸得到的东西,变成了你发个安装包朋友就能双击用的产品。 不过我得说清楚:更新快只是表象,不是这本书的重点。AI圈每个月都有产品在狂奔,光快没意思。Hermes值得专门写一本的,是它快的背后那个稳定的内核——会自己造缰绳、缰绳还会自己长。这个我们后面慢慢讲。 顺带交代下我的位置,免得你以为这是临时查资料攒的。这两年我几乎全扑在AI Agent和skill上:开源的女娲.skill到现在两万多star,给设计用的huashu-design一万六,会自己进化skill的达尔文.skill三千多,这本书的第一版本身在GitHub也攒了四千多star。自改进的Agent、会自进化的skill,是我天天在做、在玩的东西。所以Hermes这两个月的每一步,我基本都在现场盯着。 该不该从OpenClaw搬家 如果你正在用OpenClaw,这一段得单独看,因为它可能直接关系到你要不要动一动。 OpenClaw这两个月发生了一件大事。它的创始人Peter Steinberger宣布加入OpenAI,项目本身转给了一个非营利基金会托管。论体量,OpenClaw现在还是比Hermes大,stars差不多是它的两倍。但灵魂人物走了、项目进了基金会,社区的增长动力肉眼可见地在减弱。 而Hermes这边做了个挺有意思的动作。它没停留在「我比OpenClaw好」的口头较劲,而是在产品里直接铺好了搬家的地毯。源码里有一条命令叫hermes claw migrate,README里专门有一整节教你怎么从OpenClaw迁过来:人格设定、记忆、用户画像、自定义skill、命令白名单、各平台配置、API key,它会自动检测你本地的OpenClaw目录,一键搬走。 核心建议 要不要搬,我的建议是别急着下结论。这本书后面会把Hermes的记忆、技能、安全这些机制讲透,你看完再判断它值不值得搬,比现在拍脑袋强。但有一点可以先记住:搬家的技术成本,Hermes已经帮你压到很低了,这本身就是一个信号。 这本书要带你看的,是脸下面那个内核 所以这本书不打算花太多篇幅夸它这张新脸有多好看。一个产品从极客玩具变成大众工具,这种故事不稀奇。 真正值得你花时间的,是脸下面那个内核——一个会自己给自己造缰绳、缰绳还会自己生长的自改进Agent。它会记住你是什么样的人,会从经验里自己写出新技能,会在你睡觉的时候跑定时任务,像个数字同事。 Nous Research官方有句话,说Hermes是「唯一一个内建学习循环的Agent」。这是他们自己的说法,我引用时得标清楚是官方自称,不是中立结论。但学习循环这件事本身,已经从一个「理念」变成了能在源码里指着看的「机制」,这是真的。 接下来一节,我先用六十秒给你画一张全景图:这一个大脑、这么多张脸,到底是怎么拼在一起的。看完那张图,你再往下读每一个子系统,就有地方挂了。 §0260秒全景:一个大脑,很多张脸 OneBrain,ManyFaces: 60-SecondTour 你以为自己面对的是好几个产品:一个命令行、一个桌面App、一个网页面板、二十多个聊天机器人。其实它们背后是同一个东西。整套架构可以用一句话概括:一个大脑,很多张脸。 先看这张图 Hermes的架构图画出来,中间是一个孤零零的圆,叫AIAgent。外面围着一圈方块:CLI、Ink做的TUI、Electron桌面App、浏览器管理面板、还有二十多个IM平台适配器。所有方块都用线连回那个圆。 这张图的全部信息量就一句话:外面那一圈,没有一个是「另一个Hermes」,全是同一个核心的不同外壳。 你在Telegram上跟它聊,和你在桌面App里跟它聊,和你在命令行里敲命令,调用的是同一个AIAgent实例的同一套逻辑。换张脸,脑子不换。 那个大脑长什么样 AIAgent这个类,是整个系统的中枢。它有个很扎眼的特征:构造函数吃大约60个参数。 凭证、路由、各种回调、会话上下文、预算、凭证池……全塞在一个构造函数里。任何一个写过代码的人看到都会皱眉——这在教科书里叫「上帝对象」,是典型的反面教材。维护者自己也不避讳,在源码的AGENTS.md里白纸黑字写着这是个god object。 但它是故意这么设计的。后面会讲为什么宁可背这个骂名也不拆。 这个大脑对外只开两个口子。一个叫chat(message),扔进去一句话,吐出来一句回复,简单粗暴。另一个叫run_conversation(),是完整接口,返回最终回复加上整轮对话的消息列表。日常你用到的所有功能,最终都收口到这两个方法上。 它内部跑的是一个同步循环,不是时髦的async。带着中断检查、预算追踪,还有一次叫grace call的宽限调用。模型说要调工具,它就去调,把结果塞回消息列表,再问模型一次;模型说话说完了,循环结束。默认最多转90圈,而且这90圈的预算是主Agent和它派生的子Agent共用的。 五个内建系统,对应Harness五组件 如果你读过Harness Engineering那本橙皮书,会记得一套缰绳框架:指令、约束、反馈、记忆、编排。当时讲的是「你应该怎么给Agent套缰绳」。 Hermes有意思的地方在于,它把这五组件全做成了出厂自带的内建系统。不是你去配,是它本来就长在身上。一一对上号: 这本书后面的章节,基本就是顺着这五行往下挖。每一行都有自己的源码、自己的设计取舍、自己的坑。这一节先把地图铺开,让你知道每块拼图大概在哪。 记住这条对应关系。它是整本书的骨架。读到后面任何一个系统觉得绕,回来看这张表,问自己「这是缰绳的哪一组件」,多半就理顺了。 为什么宁可背一个上帝对象,也不拆微服务 到这里你应该有个疑问。一个吞60参数的god object,明显「不优雅」。这帮人技术不差,为什么不把它拆成几个干净的微服务? 我一开始也这么想。芒格有句话,遇到反常的决策,先别急着说人家蠢,先问问这么干换来了什么。 换来的是一件特别值钱的事:任何平台上,行为完全一致。 因为所有的脸共享同一个大脑,你在桌面App里调好的偏好、教会它的习惯、它记住的事,到了命令行、到了Telegram,全都在。不是「同步」过去的,是本来就是同一个东西,根本不存在两份状态要对齐。一旦拆成微服务,你立刻要面对分布式系统那一整套老问题:状态怎么同步、消息怎么一致、哪个服务是真相来源。 而真正把这个取舍钉死的,是两处不能动的硬约束。 推荐 不推荐 prompt cache不可破。对话中途绝不能改过去的上下文、不能换工具集、不能重建system prompt——一改,缓存全废,每次请求都得重新烧token。这条约束甚至决定了Skill为什么注入成user message而不是system prompt。 几万个测试不能动。整个项目压着将近一万七千个测试。拆架构等于动地基,这么多测试跟着遭殃,工程成本高到不现实。 这两条约束摆在一起,答案就清楚了。这其实不是技术品味问题,而是工程现实主义。当一个上帝对象能换来「所有平台行为一致」,而拆掉它要付出「缓存崩了+几万测试重写」的代价,背着这口锅反而是聪明的选择。 这一版v0.16.0做过一次教科书级的重构,恰好印证了这种克制。他们把那个驱动单轮对话、将近3900行的巨型方法整体搬进独立模块,原地只留一个薄薄的转发器,还专门用间接解析的写法保证那几万个测试一个都不破。先让大象能被搬动,再谈拆解。不重新设计,不改状态形状,只挪位置。这就是Hermes的架构性格——保守、务实、对真实成本有敬畏。 一个大脑,很多张脸。这句话不只是个比喻,它是一个被两条硬约束逼出来的、想清楚了的工程决策。下一节我们换个角度,看看Nous到底图什么,要把这么一个东西做出来。 §03Nous