本文转载自阿里云团队大佬:兰柯
一、前言
深度体验完Hermes agent 感觉还是有很多值得借鉴的地方,尤其我们之前给客户布道小龙虾(OpenClaw)的时候,感觉龙虾还是有很多坑,但是Hermes 却能让你眼前一亮,大道至简的感觉。
核心在于:它太易上手了,而且不容易被“搞死”
我用Hermes + qwen 3.6 plus 体验了好几天,一次没有崩溃,感觉值得给大家做个实践分享
hermes 官方一句话定位: 内置学习循环的 AI Agent——从经验中生成 skills、在使用中自我改进、主动持久化知识、搜索自己的历史对话,跨会话构建用户模型。可跑在 $5 VPS 上。
如果有客户问OpenClaw 与Hermes有什么区别,Hermes有什么亮点?希望这篇文章可以帮助到大家~
亮点一: 天然支持qwen provider 及 钉钉
哈哈,这个必须先吹一波,OpenClaw 对钉钉机、qwen 的支持都很有限
再看Hermes,还把DingTalk 放在飞书前面![]()
配置两个key ,结束~ 就这么简单![]()
不过钉钉对话没调通
,估计哪里有坑,先记录下,OK了再反馈
关于用户关心的会话隔离问题:
一图胜千眼:
- 可以看到DM(私信)是按聊天隔离的
- 群组:默认按用户隔离,也就是每个人对话都是独立的,当然也指出共享
- 线程(topic):默认共享、可以启用隔离
亮点二:配置解耦
用过OpenClaw 的朋友都知道其配置大部分放在openclaw.json ,里面包含配置和密钥等等,一旦改坏就崩了,官方还特地搞了个doctor 来修复它
但是到了Hermes 配置和密钥是解耦的,而且配置使用的是yaml ,这个对人友好,主要是密钥拆出来了
有两个好处:
1.安全性高了,稳定性也高了,用过的朋友会发现,让Hermes改自己的配置,崩的概率极低
2.容器化也友好,key文件作为secret
亮点三: 辅助模型
Hermes 将不同场景的模型使用权交给了你,比如VL 模型,个人任务qwen 模型系列还是有优势的。然后针对Hermes 特定的compression,session_search ,web_extract ,flush_memory 均可以指定不同的模型
这里也有两个好处:
1.是省钱:上面提到的都是Hermes 运转基础,但也是高频调用,一直用claude 、gpt 不现实,所以这里选qwen 是个卖点
2.模型专用: 比如你的主模型用的是一个没带vl 的模型,那么怎么看图呢,辅助模型vision 就是来支持你的
亮点四:自主优化skill
这个是官方大力鼓吹的能力,确实厉害![]()
机制就是: Hermes 它会复盘skill ,它识别到我们任务,自动将这个流程总结并固化为了一个技能(Skill)。
触发条件:
我们在config.yaml 看到,creation_nudge_interval 默认配置是 15 轮
这个参数意思是每累计 15 次工具循环,触发一次后台 skill review。
review过程:
派生一个后台 agent,拿着当前对话的完整快照,问自己一个问题:
> "刚才的对话里,有没有经过试错、调整方向、或者用户期望不同做法的非平凡经验?"
然后三种结果:
1. **有现成 skill 可更新** → 调用 `skill_manage` 更新已有 skill,把新经验补进去
2. **没有但值得新建** → 调用 `skill_manage` 创建新 skill,把可复用的方法论沉淀下来
3. **没什么值得存的** → 输出 "Nothing to save." 直接结束
整个过程在后台线程运行,不阻塞用户对话,不修改主对话历史。完成后如果有动作,终端打印一行:
亮点五:上下文优化及冻结快照
MEMORY.md (默认上限 2200 字符) 与USER.md (USER.md)做了严格限制
冻结快照:
一切为了缓存,为了不破坏缓存,Hermes 会在会话启动的时候冻结系统提示词快照,不然新的内容干扰,这个OpenClaw 近期版本才支持。Hermes 这种设计支持更加友好
补充说明下Hermes 记忆:
MEMORY.md 与USER.md 作为Hermes第一层记忆,开局被加载进来,冻结
外部记忆系统作为第二层,主要是支持语义召回
全量 session 作为第三层, 由agent 决定如果决定对话需要看历史记录,就会通过session_search 进行FTS5 搜索,必要时还会调用LLM摘要
这里与OpenClaw 有很大的不同,可能设计理念不同吧,OpenClaw 注重记笔记,Hermes 注重保留完整历史记录,信息更多,但是缺少向量检索,需要第二层来支持。阿里云最近除了记忆库,但是还仅支持OpenClaw ,相信应该很快会支持Hermes
亮点六: HOOK极简开发
Hermes 的hook 支持对话试开发,这个在openclaw 比较难。
如下是我用Hermes + qwen-3.6 plus 两句对话开发的一个hook ,这个hook 也是之前客户问到的,有没有可能审计。
先介绍下Hermes 8个可以插hook的点,可以看到支持很全面
实操演示:告诉Hermes, “做一个 终端命令审计插件(Terminal Audit Hook):在每次 terminal 工具执行完毕后,自动把命令内容、执行结果、时间戳、会话ID 追加到日志文件。”
之后Hermes hook 就被开发好了,可以看到仅仅对话就完成了开发、配置、重启等操作
亮点七: sandbox 极简配置
企业针对agent 最关心的是sandbox ,通用Hermes 也指出sandbox,我们同样也是通过对话配置好了一个额外的agent级sandbox环境,全程不用等了宿主机
可以看到一开始Hermes是拒绝的,它觉得rm -rf / 是毁灭性操作
我们登录宿主机上看docker ps、可以看到确实启动了docker ,sandbox 验证OK
亮点八、多 agent
讲OpenClaw 、Hermes 都会要讲多agent ,这里Hermes 没有太多亮点,但基本都支持,所以这里补充一下
要硬说亮点可能就是LLM自主调用,不需要人为干涉,这个OpenClaw其实也是支持
Hermes 的多 Agent 能力分为四种运行时机制,全部在 Agent 对话过程中触发,不涉及外部脚本或离线工具:
| 机制 | 触发方式 | 用途 |
|---|---|---|
| Delegate Task | LLM tool call(模型自主决定) | 并行子任务,最多 3 路 |
| Mixture of Agents | LLM tool call(模型自主决定) | 多模型协同推理 |
| Background Review | 系统计数器自动触发 | 后台提炼经验 → 创建/改进 skill |
| Send Message | LLM tool call(模型自主决定) | 跨平台消息投递 |
Delegate Task、Mixture of Agents 实际都是类 OpenClaw 里的subagent 的概念,Hermes 又多拆了一层。
Delegate Task VS Mixture of Agents
| Delegate Task | Mixture of Agents | |
|---|---|---|
| 目的 | 并行执行不同任务 | 同一问题多角度推理 |
| 隔离 | 完全对话隔离 | 只共享参考回复 |
| 模型 | 同模型或可覆盖 | 4 参考 + 1 聚合(5 个 API 调用) |
| 输出 | 每个任务独立摘要 | 单一综合答案 |
| 场景 | 研究、调试、多工作流 | 复杂数学、算法、高难度推理 |
Mixture of Agents 示意
Background Review : 之前提到过了,主要是做后台经验提炼:回顾对话并创建/改进 skill的
这里有人可能要问,是否有完全独立的agent?
Hermes实际是有的: 叫profile的概念
| 会话内 multi-agent(前文内容) | 多 Profile | |
|---|---|---|
| 粒度 | 一个会话内的子任务 | 完全独立的 agent 实例 |
| 上下文 | 子 agent 继承父 agent 的对话 | 完全隔离,互不可见 |
| terminal backend | 继承父 agent,不能切换 | 每个 Profile 独立配置 |
| 记忆 | 共享(同一个 MemoryManager) | 各自独立的 MEMORY.md / USER.md |
| 模型 | 可以不同 | 可以不同 |
| 协作方式 | 自动派发 + 结果回传 | 人工切换,无自动协作 |
实践示例:
我们依然是在对话框里完成另外一个agent 的配置,全程只说了两句话
第一句:询问多agent 配置方式
第二句: 帮我配置![]()
后记
Hermes agent 整体体验下来,感觉门槛要比OpenClaw 低,容易不被搞死。大概预估维护成本比OpenClaw 低30% 左右
OpenCLaw 早期是很难用,而且需要海外SOTA 模型,否则容易把自己搞死。
但是Hermes 使用qwen-3.6 plus 全程没有崩溃过,我觉得这是一个比较好的切入点,如果你的客户觉得OpenClaw 可以推荐他们试试Hermes ,同时推荐qwen-3.6 plus ~
















