编程 从OpenClaw到Hermes Agent:两款爆火开源AI Agent的对决与深层技术哲学

2026-04-18 16:15:01 +0800 CST views 17

从OpenClaw到Hermes Agent:两款爆火开源AI Agent的对决与深层技术哲学

前言:当「龙虾」遇见「爱马仕」

2026年4月,AI开源社区最热闹的话题是什么?不是GPT-6发布,不是Claude Opus 4.7登场,而是一场「龙虾」与「马」之间的王者之争。

先火的是OpenClaw——这个被开发者昵称为「龙虾」的AI Agent框架,在2025年末横空出世,半年狂揽35万GitHub星标,一度成为开源Agent领域的绝对霸主。它的架构设计之精妙、工具链之完整,让无数开发者感叹:「终于有一款能让AI真正帮我们干活的工具了。」

然而进入2026年4月,才火了不到两个月的OpenClaw就迎来了它的挑战者——Hermes Agent,被社区戏称为「爱马仕」。它连续数周占据GitHub Trending榜首,上线首月斩获2.2万星,4月新版本发布后单日新增6400+星,六周内狂揽超过6.4万星,截至4月中旬总星标突破7万,周均增速是同期同类项目的三倍有余。

更戏剧性的是,4月10日,Nous Research的创始人Teknium跳出来发推吐槽:Anthropic正在「复制」Hermes的自动判断任务完成、主动提醒用户的功能。社区叙事因此高度统一:Hermes凭借自进化Agent、自动记忆管理和用户建模系统,在技术上全面超越了前任王者OpenClaw。

但如果我们真正把两边拆开对比,会发现一个令人震惊的事实:两者在功能上几乎一模一样

定时调度、子Agent委派、浏览器自动化、TTS语音合成、Vision视觉能力、图像生成、语音交互、多平台Gateway集成——功能清单对着打勾,几乎每一项两边都有。功能表上的「绝对碾压」根本不存在。

那么,Hermes凭什么火成这样?社区里被吹上天的「自进化」「自动记忆」「用户建模」,到底有多少是真正的底层结构差异?本文将深入代码与架构层面,揭开这场对决的真相,并探讨两者背后截然不同的技术哲学。


一、Skill体系:谁来按下启动键?

1.1 什么是Skill?

Skill(技能)是Agent工作流的知识单元,本质上就是一个Markdown文件。它的作用是告诉Agent:遇到某类任务该按什么步骤干、中间调用什么工具、搞砸了怎么救场。

Skill的质量直接决定Agent的执行效率。一个精心编写的Skill,可以让Agent在遇到同类任务时,从「每次都要从头推理」变成「直接调用已有经验」,效率提升可能是10倍甚至100倍。

1.2 OpenClaw的Skill体系:全手动模式

OpenClaw的Skill系统设计非常清晰,但每一步都需要用户主动介入

  1. 手动创建Skill文件:用户需要自己在特定目录下创建.md格式的Skill文件
  2. 手动安装:通过CLI命令将Skill安装到系统
  3. 手动授权:三个条件(文件存在 + 已安装 + 已授权)全部满足后,Skill才会生效
  4. 手动管理生命周期:新增、修改、禁用Skill都需要用户操作

更关键的是,OpenClaw的Skill加载机制极为简单粗暴:只要配了就全量塞进上下文,除非用户手动加禁用标签,否则系统不会做任何任务匹配判断。

# OpenClaw Skill加载示意
def load_skills():
    # 粗暴全量加载
    for skill in all_installed_skills:
        context.add(skill.content)  # 不做匹配,全部塞进去

这种设计的优点是:用户有完全的控制权。你知道自己给Agent喂了什么,知道它在什么场景下会调用什么Skill。但缺点也很明显:每一步都需要人工介入,无法形成自动化的经验积累闭环。

1.3 Hermes的Skill体系:自动进化闭环

Hermes把技能的生命周期硬生生劈成了两截:运行时的静默生成离线的批量进化

第一截:运行时静默生成

平时让Agent干活,只要满足以下任一条件,主仓库里的硬规则就会被触发:

  • 在任务执行过程中调用了5次以上工具
  • 出了错又自己把流程救回来了
  • 用户直接纠正了Agent的输出

Agent会自动把刚才那套跑通的工作流打包,存成本地的Skill文件。这一步完全静默,用户根本不知道它又给自己写了个新技能。

第二截:四层渐进加载

下次再遇到类似任务,Agent不会傻傻地加载全部Skill,而是分四层渐进加载:

Tier 0(目录卡片层)  → 只把名称和描述塞进系统提示词(约3000 token)
Tier 1(摘要层)      → 加载核心执行步骤
Tier 2(详细层)      → 加载完整内容,包括边界条件处理
Tier 3(全量层)      → 加载所有细节

就像去图书馆找资料:先看目录卡片确定方向,再逐层深入。这套机制把Skill匹配做到了精准且高效

第三截:离线批量进化(核心武器)

真正让Hermes拉开身位的,是内置的离线批量进化算法,放在独立仓库hermes-agent-self-evolution中。引擎用的是DSPy框架,核心算法叫GEPA

GEPA——Genetic-Pareto Prompt Evolution,出自Lakshya Agrawal等人的ICLR 2026 Oral论文《反思性提示词进化可以跑赢强化学习》。

这是最关键的部分。大多数学术界的技能进化方案都在走RL(强化学习)路线,像SkillRL或SAGE这些框架,指望用梯度更新来强化技能库。但GEPA刻意抛弃了强化学习,走了一条完全对立的路:用大模型的反思能力加上进化算法,不仅能跑赢RL,样本利用效率还更高

GEPA有三个硬核底座:

① 反思性变异(Reflective Mutation)

不是瞎猜式的随机变异。模型会读之前的执行轨迹(trace),自己反思:

  • 这次为什么做对了?
  • 为什么做错了?
  • 提示词到底该改哪几个字?

② 帕累托前沿选择(Pareto Frontier Selection)

生成了一批候选技能后,不是只留全局均分最高的。只要某个候选在哪怕一个评估样本上表现最强,它就会被保留下来。这么做是为了保证技能探索的多样性和鲁棒性

③ 自然语言反馈作为变异信号

传统RL靠数值reward引导参数更新,但数值信号颗粒度太粗——跑了一次得0.6分,你根本不知道哪里对哪里错。GEPA的每次变异用的是具体的自然语言反馈

  • 「这一步没检查边界条件」
  • 「应该先读配置再写缓存」
  • 「文件描述符没有正确关闭」

LLM读得懂这种反馈并据此产生下一轮变体,比解读一个浮点数有效得多。

完整的进化工作流:

1. 系统定期读取现有SKILL文件
2. 从历史会话中抽样(或自己合成)生成评估集
3. GEPA介入:读执行轨迹 → 反思提意见 → 生成候选变体
4. 跑一轮评估
5. 帕累托算法选出最优
6. 生成PR(Pull Request),等待人类审核

关键设计:进化后的Skill不会直接覆盖原文件,而是生成PR,必须等用户审核合并才生效。 系统永远不会进行直接提交。这直接戳破了社区里「用户完全无需介入」的爽文神话。

1.4 两者的本质差异

OpenClaw说:「你自己搞。」
Hermes说:「放着我来。」

真正的区别不在于Skill本身,而在于谁来按下启动键。OpenClaw把决策权交给用户,保证控制力但无法自动积累;Hermes把决策权硬编码进规则系统,让系统在特定条件下自动执行,减少用户的认知负担。


二、记忆系统:谁在替谁记事?

2.1 三大主流Agent的记忆系统对比

现在的三大主流开源Agent(Claude Code、OpenClaw、Hermes)都有自动记忆,但只要稍微深挖就会发现,它们服务的对象、触发机制和记忆保质期完全是两码事。

2.2 Claude Code:严格项目隔离的记录仪

Claude Code的自动记忆是默认开启的,干活时会自动把构建命令、调试经验、架构笔记甚至代码风格都记下来,每24小时跑一次Auto Dream整理,把过期或自相矛盾的内容清掉。

但这套系统有极其严格的项目隔离:边界卡死在git root(项目根目录)上。项目A里学到的血泪教训,绝对带不到项目B里。它不记你的个人偏好,不关心坐在屏幕对面的是谁,脑子里只有「这个项目该怎么跑」。

2.3 OpenClaw:被动触发的长期记忆

OpenClaw的记忆系统更偏长程。每次启动对话,它都会把包括MEMORY.mdUSER.md在内的8个底层文件强制灌进上下文。这两个文件不仅跨项目共享,而且会自动写入。

写入机制极为被动,更像是兜底:每次对话的上下文(token)快要撑爆、系统准备做大压缩(compaction)之前,Agent会悄悄跑一个silent turn(隐藏轮次)。在这个轮次里,把当前聊过的重点随手记到当天的日记文件里,同时把关于你的偏好写进长期挂载的MEMORY.mdUSER.md

所以隔几天一打开发现它「居然还记得你是谁」,靠的是这张被动结成的长期大网。这确实能让人产生「这AI可以养」的实感。但本质上更像是一种求生本能——眼看脑子装不下了赶紧存一下档。

2.4 Hermes:主动出击的认知引擎

Hermes的记忆系统在v0.7之前默认使用Honcho作为长期记忆后端。Honcho不走向量相似度检索的老路,而是一个**「AI原生」的记忆后端**,主打异步的辩证推理和深度实体建模。

Agent和用户聊完天,主会话结束了,但Honcho的活才刚开始:

  • 在后台拉起额外的模型调用
  • 对刚聊完的历史进行分析
  • 提炼出用户话里的概念(Entity)
  • 提取底层偏好
  • 把用户前后矛盾的话进行辩证和对齐
  • 把碎碎念计算成结构化的「洞察(Insight)」

更关键的是,Hermes搞了个微调(nudge)机制:不等脑子撑爆,大概每聊15轮对话就会被硬性触发一次。这是系统强制塞给Agent的一条反思指令——赶紧回顾一下刚才聊的,看看这人有什么习惯值得记一笔。

这种高频的主动反思,让Hermes在同等时间里写进持久文件的信息量大得惊人。

不仅写入更积极,Hermes找回记忆的手法也更硬:默认内置SQLite FTS5全文检索能力。不用配什么词向量服务,Agent想翻旧账,直接就能去庞大的过往聊天记录里扫街。

2.5 三者对比一览

维度Claude CodeOpenClawHermes
记忆隔离项目级严格隔离跨项目全局共享跨项目全局共享
写入触发主动定期整理(每24h)被动(上下文压缩前)主动(每15轮强制)
记忆后端内置auto-memory文件系统+关键词搜索Honcho+多插件支持+SQLite FTS5
检索方式语义向量关键词生搜全文检索
记忆质量项目导向,不关心人被动积累,偏向用户主动反思+辩证推理

三、上下文管理:确定性优先于智能

3.1 Session内部不做动态判断

无论Skill的自动生成,还是记忆的高频主动写入,背后的核心逻辑都是同一个:Hermes只是替你把本该你做的决定都做了

但系统复杂度是守恒的。你不用动手,不代表决策凭空消失了,它只是从你的手动操作转移到了底层的硬编码规则里。

在构建这套harness的过程中,Hermes的设计者领悟了一个道理:模型判断不可信,那就做成死规则

Agent干活的时候并不是一个纯粹的大模型在裸跑思考,大模型外面严严实实地包着一层代码框架。这层框架里写满了条件判断:

工具调用满5次了吗?  → 触发技能生成
对话轮数凑够15轮了吗? → 触发反思指令
刚才是不是刚死里逃生重试了一次? → 记录经验
用户有没有明确指出错误? → 修正并沉淀

这些问题系统根本不打算交给大模型去模糊判断,而是用确定性的代码一条条死盯。条件一满足,立刻执行预设动作。

3.2 上下文管理:宁可笨一点,也要稳一点

当对话撑到85%阈值时,Hermes的ContextCompressor根本不让大模型做智能摘要,而是一套纯粹的字符串替换逻辑,把旧的工具输出直接换成一个占位符。粗暴但绝对安全。

记忆层面用的是冻结快照策略:开机时把记忆一次性倒进系统提示词,中途不刷新,等下次重启才生效。这牺牲了实时性,但换来了前缀缓存稳定的命中率,直接砍掉大约75%的token输入成本。

两个选择的底层精神高度一致:session内部不让LLM做关于上下文和记忆的动态判断,用最笨的规则保住确定性

3.3 安全审查:规则化而非模型化

内置的Smart审批模式同样不让大模型当裁判去判断一条命令危不危险,而是直接拿硬编码的黑名单去正则匹配终端操作。匹配中就必须人类点头确认。

3.4 插件系统:把开发者当潜在敌人

Event Hooks系统里有6种钩子,其中5种全都是**触发即忘(fire-and-forget)**的看客,系统根本不管它们的返回值。想修改Agent的运行上下文只有一个唯一的注入点。官方死死卡住一条底线:就算插件代码跑崩了也绝不拖垮Agent的主循环

这几个看似保守的选择,底层逻辑高度一致。

今年初Chroma团队做过压测:单轮变多轮后,模型平均性能直接掉39%,最惨能掉85%。同一时期的记忆综述论文也指出,在超长上下文施压下,死板的规则化跑分愣是碾压了让大模型全权统管的方案。

当大模型驾驭超长上下文的底子还虚的时候,那些听起来越智能的统管方案越容易原地爆炸。反倒是越笨的死规则越靠得住。


四、干预递减光谱:谁站在哪一端?

4.1 开源Agent的一段光谱

把Claude Code、OpenClaw和Hermes串起来看,市面上的开源Agent其实铺成了一段清晰的**「干预递减」光谱**:

Claude Code / Codex          OpenClaw              Hermes
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
「所有决定由人来做」                      「全都交给Agent包办」
   ↓                                          ↓
生产工具定位                          自动化工具定位
精确控制第一顺位                      用户体验第一顺位
开发者必须盯每一步                    Agent在阴影中自主进化

4.2 各端的特点

Claude Code / Codex端(最左)

  • 每一步都要人类确认
  • Skill需要手动编写和安装
  • 记忆完全按项目隔离
  • 适合专业开发场景,精确控制永远是第一顺位

OpenClaw端(中间偏左)

  • 定时调度、Skill系统都已内置
  • 但Skill需要手动安装
  • 记忆靠被动触发
  • 适合有一定技术背景的用户

Hermes端(最右)

  • Skill自动生成、自动进化
  • 记忆主动写入且高频触发
  • 上下文管理全部规则化
  • 押注:大部分用户既不想弄懂、也不屑于弄懂Agent怎么跑
  • 目标:让你不知不觉中自己越变越好

4.3 Hermes的野心

Hermes的野心不是让你觉得它好用,而是让它在不知不觉中自己越变越好。它的核心假设是:大多数用户要的不是控制权,而是结果。你只管张嘴提需求,剩下的Skill匹配、记忆分类、上下文压缩,全都在阴影里完成。

这不是一个技术判断,而是一个产品判断


五、扛不住硬活,但方向对了

5.1 激进设计的问题

尽管Hermes已经很克制,用各种技术保守的规则系统剥夺了模型的自由判定权,以使这个更自动化的系统能够稳定。但就放了这么点非规则的权限,模型就开始拉垮。

重灾区是那套引以为傲的技能系统。

不止一个高阶玩家抱怨:自己花好几个小时手动精调出来的Skill,被全自动的进化流程直接覆盖掉,这完全是没法接受的灾难。

自动记忆微调的机制同样经不起细看。nudge的本质是让Agent自己判断这轮有没有值得记的,但社区发现Hermes判断自己「是否完成了任务」时几乎总觉得自己成功了。所以反思出来的记忆,非常薄弱。

如果是拟一份核心合同、过一遍底层代码、或者搭复杂的财务模型,全自动模式本身就是一个巨大的隐患。这也是那些老牌专业工具不敢直接上全自动的原因——专业人士会为Agent的脑抽付出真金白银代价的。

5.2 它真正擅长的场景

但是在写周报、翻天气、整理本地文件这种容错率极高的日常重复任务里,Hermes现在确实能站得住。只要给它二十几次迭代的机会,那些慢慢攒起来的Skill和记忆,确实能让它跑得又稳又快。

更关键的是,它踩在了一个基本确定的方向上

5.3 一个有意思的演进信号

梳理这两个月的发展,会看到一条非常有意思的演进弧线:

  • 2026年2月25日:Hermes首发,打出的旗号是「与你共同成长的Agent」。靠着主动记忆、自动进化和激进路线,一口气冲到57,200颗星。
  • 2026年4月3日:v0.7韧性更新发布,悄悄往回撤了半步。引入了抽象接口,把原本写死在系统里的唯一高级记忆后端Honcho,降级成了和MEM0、ByteRover等6个第三方服务平起平坐的插件。反而把最原始的纯文件+全文检索顶成了默认兜底方案

一个自己靠「AI原生记忆」出圈的项目,在新版本里悄悄把最土的文件系统检索推上了默认位。这背后的信息量极大:团队意识到Honcho那种重剑无锋的风格太费token了,设成插件让用户自己选是更务实的选择。


六、技术哲学:自动化并没有消灭决策

6.1 被隐藏的复杂度

把视角拉高,我们会发现OpenClaw和Hermes之争,本质上是两种技术哲学的碰撞:

OpenClaw哲学:

  • 用户是主人,Agent是工具
  • 控制权神圣不可侵犯
  • 每一个自动化步骤都需要用户显式授权
  • 优点:稳定、可预测、出了问题容易排查
  • 代价:每一步都需要人工介入,无法自动积累

Hermes哲学:

  • Agent是伙伴,用户是被服务的对象
  • 能自动化的就自动化,把决策藏到看不见的地方
  • 用户不需要懂技术,只需要提需求
  • 优点:上手极简,长期使用越来越聪明
  • 代价:黑箱化,出了问题排查困难,全自动模式在专业场景有风险

6.2 没有免费的午餐

这两种哲学各有其合理性和局限性。

OpenClaw的设计哲学对专业用户极度友好。你知道自己给Agent喂了什么,知道它在什么场景下会调用什么Skill,出了问题可以快速定位。但对普通用户来说,每一步都要手动配置的学习曲线太高了。

Hermes的设计哲学对普通用户极度友好。你不需要任何配置,装好就能用,用着用着就越来越聪明。但对专业用户来说,那些在阴影里自动发生的变化是不可接受的——你精心调优的东西,可能被自动进化流程覆盖掉。

自动化并没有消灭决策,它只是把决策藏到了看不见的地方。

6.3 行业趋势的信号

从更宏观的视角来看,AI Agent领域正在经历一个从「工具」到「伙伴」的范式转变:

第一代(工具)     →     第二代(伙伴)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
我下达命令               我提出需求
Agent执行                 Agent理解意图
我检查结果               Agent主动汇报
我更新规则               Agent自动进化

这个转变的方向是确定的,但路径是曲折的。Hermes踩对了方向,但它的实现方式——把大量决策硬编码进规则系统——也暴露了当前大模型能力的局限性。

当大模型真正能够可靠地判断上下文、管理记忆、优化技能的时候,这些「死规则」才会真正被解放。但在那之前,Hermes式的保守主义工程实践,是目前能找到的最诚实的解法。


七、实战部署:如何在你的服务器上跑起来

7.1 环境要求

最低配置:可在 $5 VPS 上运行
推荐配置:2GB+ 内存(做浏览器自动化需要更多)
系统要求:Linux / macOS / WSL2 / Android (Termux)
语言要求:Python >= 3.11(硬性要求)

7.2 快速安装

# 克隆仓库
git clone https://github.com/NousResearch/hermes-agent.git
cd hermes-agent

# 安装依赖
pip install hermes-agent

# 配置API Key(支持多种后端)
export OPENAI_API_KEY="your-key"
# 或者
export OPENROUTER_API_KEY="your-key"
# 或者配置其他支持的模型后端

# 启动CLI
hermes

7.3 Skill系统实战

<!-- my-coding-skill.md -->
# 我的代码审查技能

## 触发条件
当用户要求"审查代码"、"看看这段代码有什么问题"时激活

## 执行步骤
1. 读取目标文件的完整内容
2. 静态分析:检查常见漏洞模式
   - SQL注入风险
   - XSS风险
   - 硬编码密钥
   - 未处理的异常
3. 代码质量评估
   - 命名规范
   - 函数复杂度
   - 重复代码
4. 输出结构化报告

## 边界条件
- 文件超过5000行:分段处理,每段单独分析后合并
- 二进制文件:跳过,输出"不支持二进制文件"
- 网络错误:重试3次,失败后输出具体错误

## 急救措施
- Agent崩溃:重启Agent,报告已分析到的位置
- 上下文超限:只分析核心逻辑,跳过辅助函数

7.4 记忆系统配置

# config/memory.json
{
    "backend": "honcho",  // 或 "mem0", "byterover", "file_system"
    "nudge_interval": 15,  // 每15轮触发一次反思
    "context_threshold": 0.85,  // 上下文用到85%时压缩
    "freeze_memory": true  // Session内不刷新记忆快照
}

八、总结:没有完美的Agent,只有适合的选择

8.1 选OpenClaw,如果:

  • 你是专业开发者,需要精确控制每一步
  • 你想自己管理Skill体系,不想被系统「擅自」做决定
  • 你在使用多项目场景,需要严格的项目隔离
  • 你更看重透明度和可预测性,而不是开箱即用的便利
  • 你需要深度定制的Agent行为,愿意投入时间配置

8.2 选Hermes,如果:

  • 你是普通用户,想要一个「装好就能用」的智能助手
  • 你追求长期使用体验,愿意给Agent 20+ 次迭代的机会
  • 你不需要理解技术细节,只想要结果
  • 你在个人助理场景(整理文件、写周报、管理日程)
  • 你愿意接受全自动进化带来的不确定性,换取更好的长期体验

8.3 两者都在进化

有趣的是,两边团队都在互相学习。OpenClaw在增强自动化能力,Hermes在往回撤变得更可控。这个互相「抄作业」的过程,最终受益的是用户。

2026年的AI Agent战争,不是零和游戏。 OpenClaw和Hermes代表了两种同样有效但服务不同人群的产品哲学。一个是给「想自己掌控」的用户的,一个是给「只想要结果」的用户。

最终胜出的不会是某一个,而会是多个定位不同的Agent生态共存,就像IDE领域VSCode和JetBrains各有一席之地一样。


附录:关键时间线

时间事件
2025年末OpenClaw横空出世,半年狂揽35万星
2026年2月25日Hermes Agent首发,首月斩获2.2万星
2026年4月3日Hermes v0.7韧性更新,记忆后端抽象化
2026年4月10日Teknium炮轰Anthropic「复制」Hermes功能
2026年4月14日GitHub星标突破7万,连续多日霸榜Trending
2026年4月15日EvoMap指控Hermes抄袭其Evolver引擎
2026年4月中旬总星标突破8.5万

本文参考资料

推荐文章

Graphene:一个无敌的 Python 库!
2024-11-19 04:32:49 +0800 CST
四舍五入五成双
2024-11-17 05:01:29 +0800 CST
Nginx 状态监控与日志分析
2024-11-19 09:36:18 +0800 CST
免费常用API接口分享
2024-11-19 09:25:07 +0800 CST
前端如何给页面添加水印
2024-11-19 07:12:56 +0800 CST
程序员出海搞钱工具库
2024-11-18 22:16:19 +0800 CST
Roop是一款免费开源的AI换脸工具
2024-11-19 08:31:01 +0800 CST
Vue3中的自定义指令有哪些变化?
2024-11-18 07:48:06 +0800 CST
使用Python提取图片中的GPS信息
2024-11-18 13:46:22 +0800 CST
Go 1.23 中的新包:unique
2024-11-18 12:32:57 +0800 CST
Elasticsearch 的索引操作
2024-11-19 03:41:41 +0800 CST
js常用通用函数
2024-11-17 05:57:52 +0800 CST
程序员茄子在线接单