从 OpenClaw 到 Hermes Agent:为什么我觉得它更懂你
这两天我把日常在用的 Agent,慢慢从 OpenClaw 切到了 Hermes Agent。
一开始我其实没有抱太高预期。因为这类 Agent 产品,最容易出现的情况就是:第一次上手很惊艳,但真正多用几轮之后,你会发现它们更像“会执行命令的聊天工具”。单次对话里看起来很聪明,但一旦上下文断开,很多东西就又回到了起点。你得重新交代偏好,重新说明习惯,重新告诉它哪些事情能做、哪些事情不要做。
但在实际用了 Hermes 一天之后,我对它的印象确实和一开始不太一样。
最直观的一点是,它不像一种“用完就走”的 Agent。相比我之前使用 OpenClaw 的感受,Hermes 更像是会持续积累上下文的助手。它不仅能记住一些长期偏好,还会把一些稳定的工作习惯、发布规则、表达方式、甚至你纠正过它的点,逐步沉淀下来。用得越久,这种差异会越明显。
简单说一句我的体会:目前体验下来,Hermes 确实比 OpenClaw 更“懂你”。
这篇文章我不打算写成功能罗列,而是结合我自己的上手过程,讲清楚三件事:

- Hermes Agent 怎么安装
- 装完之后怎么配置,尤其是怎么把 Telegram 这一条链路跑通
- 为什么从长期使用体验看,Hermes 会比 OpenClaw 更容易形成“更懂你”的感觉
一、Hermes Agent 到底是什么
Hermes Agent 是 Nous Research 开源的一个通用 Agent 框架。它可以跑在终端里,也可以挂在 Telegram、Discord、Slack、WhatsApp、Signal 等消息平台上。你可以把它理解成一个“既能聊天,也能真正调用工具做事”的长期在线助手。
它和普通聊天机器人最大的区别,不只是能不能调用 shell、文件系统或者浏览器,而是它本身带了一套比较完整的长期能力:
一是持久化记忆。它会把你是谁、你偏好的沟通方式、你环境里的固定约束、你反复强调过的规则,拆分成用户画像和系统记忆,跨会话保留下来。
二是技能。不是每次都从零开始,而是可以把做成过的复杂流程沉淀成 skill,下次遇到类似任务时直接复用。
三是会话检索。以前聊过什么、做过什么、怎么修过某个问题,它能搜索历史会话,不需要你每次都从头复述背景。
所以它更像一个“越用越贴合你”的 Agent,而不是一次性工具。
二、怎么安装 Hermes Agent
Hermes 官方给出的安装方式很直接,Linux、macOS、WSL2 都可以直接走安装脚本。
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash安装完成后,一般重新加载一下 shell:
source ~/.bashrc然后直接运行:
hermes如果只是想先快速看看它能不能跑起来,这一步就够了。
官方仓库里给出的常用入口也比较清晰:
hermes
hermes model
hermes tools
hermes setup
hermes gateway
hermes claw migrate
hermes doctor其中我建议第一次安装完,别急着自己手填配置,先跑一遍:
hermes setup这个 setup 会比你手改配置省事很多。尤其是你后面还要接 Telegram,或者准备从 OpenClaw 迁移过来,这一步可以少踩不少坑。
三、Hermes 的配置文件大概长什么样
Hermes 的核心配置主要在两个地方:
~/.hermes/config.yaml~/.hermes/.env
前者更偏“设置”,比如模型、工具、显示、memory、delegation 这些;后者更偏“密钥和环境变量”,比如各平台 token、API key、allowed users 等。
这点和很多项目一样,建议你也延续这个习惯:配置归配置,密钥归密钥。不要把 token、bot secret 之类的内容直接混到 config.yaml 里。
日常最常用的几个命令是:
hermes config edit
hermes config set
hermes model
hermes tools
hermes doctor如果只是先用 CLI,其实配好模型就能开始了。但如果你希望它在消息平台上长期在线,那接下来就该配置 gateway。
四、怎么接入 Telegram
如果你只是想先把 Hermes 挂到一个最稳定、最容易用的平台上,我会推荐先接 Telegram。
原因很简单:配置链路短,生态成熟,BotFather 的体验也相对稳定,而且 Hermes 对 Telegram 的支持已经比较完整。
这一节不追求把所有参数讲全,而是先把 Telegram 消息收发链路跑通。等你确认这条链路稳定后,再回头补更细的策略配置,会更省时间。
1. 前置条件
在开始之前,最好先确认下面几件事:
- 你已经能在本机或服务器上正常运行
hermes - 模型已经配置完成,CLI 模式下可以正常对话
- 你已经通过 BotFather 创建好 Telegram Bot
- 你知道自己的 Telegram 用户 ID,或者至少知道后面要限制哪些用户可以访问
- 你准备让 Hermes 长期在线,而不是只在当前终端里临时跑一下
如果前面这些还没准备好,不建议一上来就折腾 Telegram 端,不然很容易把“模型问题”和“消息平台问题”混在一起排错。
2. 最小可用配置
Hermes 这边 Telegram 的核心环境变量主要有这些:
TELEGRAM_BOT_TOKENTELEGRAM_ALLOWED_USERSTELEGRAM_HOME_CHANNELTELEGRAM_HOME_CHANNEL_NAMETELEGRAM_REPLY_TO_MODE
如果你只想先跑通,先关注下面几个配置项就够了:
TELEGRAM_BOT_TOKEN:这是入口。这个 token 去找 BotFather 创建机器人就能拿到,没有它就不可能接通 Telegram。TELEGRAM_ALLOWED_USERS:非常建议一开始就配上。对于一个能调用终端、文件和各种工具的 Agent 来说,访问边界最好默认收紧,不要等跑通之后再补安全限制。TELEGRAM_HOME_CHANNEL:这是给定时任务和默认投递用的。如果你后面想让 Hermes 发日报、巡检结果或者定时提醒,这个配置会直接决定它往哪里送消息。TELEGRAM_REPLY_TO_MODE:影响的是回复体验。如果你在群聊里使用,或者你很在意消息线程关系,这个参数会明显影响观感。第一次配置时保守一点,用first就够了。
3. 启动与验证
配完环境变量之后,先直接启动 gateway:
hermes gateway run如果你后面准备长期后台运行,也可以继续接:
hermes gateway install
hermes gateway start验证时我更推荐用最简单的“三步法”:
- 看启动日志里有没有明显报错
- 在 Telegram 里给 Bot 发一条简单消息,比如“你好”
- 看 Hermes 是否能返回一条正常回复
只要这三步能闭环,基本就说明消息链路已经打通了。
4. 常见问题
Telegram 这一段虽然相对简单,但也有几个很典型的坑:
- Bot token 配错:最常见,尤其是复制时多空格或漏字符
- allowed users 没配对:表现为 Bot 在线,但你发消息它不理你
- 直接把群聊场景当成私聊场景来测:线程、reply 关系会更复杂
- 先在本地临时跑通,后面换到服务器后忘了同步环境变量
所以更稳妥的做法是:先在私聊里把最小闭环跑通,再逐步扩到群聊、线程和自动投递。
五、从技术架构上看,为什么 Hermes Agent 会更容易形成“更懂你”的体验
如果把“更懂你”理解成一句产品宣传语,这件事很容易说空。但从 Hermes Agent 的系统设计来看,它之所以更容易给人这种感觉,并不是因为某一轮回答突然更像人,而是因为它把“长期协作”这件事拆成了几层明确的技术结构。
换句话说,Hermes 不是只在做一个会聊天的 Agent,而是在做一套能够把“用户是谁、过去做过什么、哪些规则长期有效、哪些流程已经验证过”重新接回当前任务的执行系统。
先看一张结构图:

图里最关键的是这几层关系:用户画像、持久记忆、技能、历史会话召回,并不是孤立存在的,而是会在 Prompt Builder 和 Agent Loop 中被重新接回当前任务。工具执行后的结果也会继续回流,新的经验再写回记忆、技能和会话体系里。
这张图里最关键的一点是:Hermes 并不把所有信息都粗暴塞进一次对话上下文里,而是把“更懂你”拆成了几个不同的技术来源,再由 Prompt Builder 和 Agent Loop 在执行时重新组合。
所以它带来的体验不是“这一轮刚好猜对了”,而更像是“这次是在以前的基础上继续往下做”。
1. 它把长期信息拆成了不同层次,而不是全塞进一次对话上下文
很多 Agent 在实际使用里最大的问题,并不是模型不够强,而是所有信息都挤在当前会话里。
当前对话一长,上下文就会膨胀; 开了新会话,很多信息又得重新说一遍; 如果没有明确的持久层,所谓“记住你”其实只是“这轮还没忘”。
Hermes 在设计上把这件事拆开了:
- 用户画像
- 持久记忆
- 技能
- 历史会话检索
这几个层不是一回事。
用户画像更偏“你是谁、你习惯怎样工作”; 持久记忆更偏“有哪些长期有效的稳定约束”; 技能更偏“某类任务该怎么做”; 历史会话检索则解决“以前到底聊过什么、做过什么”。
这种分层很关键,因为它避免了一个常见问题:把所有长期信息都粗暴塞进 prompt,结果越堆越乱,最后谁也不好用。
2. 它不是只会存信息,还会在合适的结构里使用这些信息
很多系统也能“记忆”,但记忆只是存起来,未必真的在后续任务里稳定起作用。
Hermes 的一个优势,是它把记忆和执行链路接得比较近。
比如:
- 用户偏好会在后续对话里直接影响表达方式
- 环境约束会影响工具选择
- 已经验证过的流程会沉淀成 skill,而不是每次重新推理
- 过去会话可以通过检索重新找回,而不是靠模型模糊回忆
也就是说,它不是把“记住”做成一个装饰层,而是把这些信息真正接进了后续决策里。
从技术角度看,这会直接影响使用体验: 同样一个模型,如果每次都重新理解你,和它能够基于稳定信息继续往下做事,主观感受会差很多。
3. 技能机制让它能把“会做”变成“下次还会这么做”
Hermes 里我觉得非常重要的一点,是 skill 这一层。
因为很多 Agent 的问题并不是这次做不出来,而是下次遇到类似任务时,又要重新走一遍。之前踩过的坑、试过的方法、确认过的流程,并不会自然沉淀下来。
Hermes 的 skill 机制,本质上是在补这个缺口。
当一个复杂流程被验证可用之后,它可以被写成结构化技能。下次再遇到类似任务,系统不是“从头想一遍”,而是优先沿用已经跑通过的方法。
这种设计带来的结果,不只是效率更高,更重要的是风格和行为会更稳定。
用户会逐渐感受到:它不是这次碰巧做对,而是开始形成一种持续一致的工作方式。
4. 会话检索让“过去做过什么”不再只能靠模糊记忆
另一个很容易被忽略的点,是历史会话检索。
很多 Agent 系统一旦离开当前上下文,过去发生过的事基本就断掉了。哪怕它曾经帮你解决过类似问题,下一次也不一定能用上。
Hermes 在这里做得更实用一些。它不是假设模型天然会记住一切,而是提供会话搜索能力,把历史记录当成可召回的信息源。
这件事非常重要,因为“懂你”很多时候并不是人格化的感觉,而是它能不能重新找到以前与你相关的真实上下文。
如果它能找回:
- 你之前怎么定义一个问题
- 当时为什么选了某种方案
- 哪个约束是你反复强调过的
- 某个流程之前已经验证过
那它在下一次继续工作时,就更像是在延续关系,而不是重新开始。
5. 它的结构更强调长期协作,而不是单轮最优
如果只追求单轮回答漂亮,很多系统都能做得不错。
但长期使用时,真正重要的往往不是“这一轮说得有多好”,而是:
- 下一轮还能不能接上
- 过几天还能不能延续
- 新会话里还能不能保持一致
- 遇到相似任务时能不能少让用户重复自己
Hermes 的架构里,memory、skills、session search、cron、gateway 这些能力是互相连着的。
这意味着它不是单纯围绕一次回答来设计,而是更接近“长期在线、持续协作”的思路。
而一旦系统的目标从“回答一次”变成“陪你持续工作”,它在体验上就会更容易给人一种“越来越懂你”的感觉。
6. 所以这里的“更懂你”,本质上不是拟人化,而是系统工程结果
我现在更愿意把这件事理解成一个技术结果,而不是一句感受型判断。
Hermes 给人的“更懂你”,并不是因为它突然更会聊天,也不是因为它某一轮特别像人,而是因为它在系统层面做了几件更利于长期协作的事:
- 把长期信息分层保存
- 把记忆接入后续执行
- 用技能沉淀流程
- 用会话检索补足跨会话连续性
- 让 Agent 真正适合长期在线工作
这些能力叠在一起,最后才会表现成用户侧的那种主观感受:它好像越来越知道你要什么,也越来越少需要你反复解释同一件事。
六、最后
如果你只是想找一个“能调工具、能跑命令、能接平台”的 Agent,其实现在已经有不少选择。
但如果你在意的是另外一件事:这个 Agent 能不能越来越理解你的偏好、越来越贴合你的习惯、越来越不像一次性工具,那 Hermes 确实值得认真试一下。
至少就我目前这一天的体验来说,它已经给了我一个很明确的结论:
Hermes 不只是另一个 Agent。 它更像是一个会持续积累、会慢慢记住你、也更可能在长期使用里形成默契的 Agent。
而这件事,恰恰是我现在最看重的。
