Hermes Agent:会自己长大的AI助手
OpenClaw热潮还没散,Hermes Agent就来了。它不是又一个Agent工具,而是第一个”出厂就带缰绳”的AI Agent。用得越久,它越懂你。
又来一个?
我理解你的疲惫。
OpenClaw在2025年底掀起了龙虾热,2600万用户,国内大厂纷纷跟进。那段时间你的朋友圈大概率被”我养了一只虾”刷过屏。
龙虾热还没完全散去,又有一个新东西冒出来了。
2026年2月,Nous Research发布了Hermes Agent。两个月不到,GitHub stars飙到27000+。
你的第一反应可能是:龙虾我还没搞明白,又来?
我花了一周时间把Hermes从头到尾拆了一遍,发现它和OpenClaw走的是完全不同的路。Hermes不是又一个龙虾,它在做一件我们一直在讨论但没人做成产品的事。
不是又一个Agent,是第一次产品化
2026年初,AI编程圈出现了一个共识:瓶颈不是模型,是环境。
LangChain团队做了一个实验,用同一个模型,只调整周围的”缰绳”配置,成绩从52.8%涨到66.5%,排名从Top 30跳到Top 5。模型一行没改。
Mitchell Hashimoto(Terraform的创造者)第一个给这件事命名:Harness Engineering。他的做法很朴素:每次AI犯错,就加一条规则,让它永远不再犯同一个错。文件是活的,一直在长。
我在上一本橙皮书里把Harness拆成了五个组件:指令层、约束层、反馈层、记忆层、编排层。这五个组件是理解Hermes的钥匙。
但Harness Engineering有一个问题:执行全靠人。你得自己写CLAUDE.md,自己配hooks,自己搭记忆系统。
Hermes做的事情是:把这五个组件全部内建了。
| Harness组件 | 手动实现 | Hermes内建 |
|---|---|---|
| 指令层 | 手写CLAUDE.md | Skill系统(自动创建+自改进) |
| 约束层 | 配置hooks/linter | Tool permissions + sandbox |
| 反馈层 | 人工审查 | 自改进学习循环 |
| 记忆层 | 手动维护知识库 | 三层记忆 + 用户建模 |
| 编排层 | 自己搭pipeline | 子Agent委派 + cron调度 |
看左列和右列的对比。左边全是手动操作,你得是一个有经验的工程师才能搭出来。右边是开箱即用,装完就有。
Hermes是第一个出厂就带缰绳的Agent。而且缰绳会自己长大。
核心机制:学习循环
Hermes最让人意外的不是它能做什么,而是它会变。用得越多,它越好用。
这不是营销话术,是一个可观察、可验证的闭环机制。
五个环节,一个闭环
Hermes的学习循环有五个环节,单看都不复杂,但串起来形成了一个持续改进的飞轮:
1. 策划记忆
每轮对话结束后,Hermes会主动决定哪些信息值得记住。是主动决定,不是被动存储。
传统的对话记忆很粗暴:把整个聊天历史塞进上下文。聊得越多,上下文越长,直到撑不下为止。
Hermes的做法更像人类写日记。每次对话结束,它会回头看一遍:这次聊了什么?有新发现吗?用户表达了什么偏好?然后把值得记住的内容写入SQLite数据库,建好FTS5全文索引。
2. 自主创建Skill
当Hermes完成了一个相对复杂的任务,它会问自己一个问题:这个解决方案以后还会用到吗?
如果答案是yes,它就把解决方案提炼成一个Skill文件,存到 ~/.hermes/skills/ 目录下。
比如你让它帮你把CSV文件清洗并导入数据库。它做完之后,可能会创建一个叫 csv-to-database.md 的Skill,记录了数据清洗的常见步骤、你偏好的数据库连接方式、你通常需要的字段验证规则。
下次你再说”帮我导入这个CSV”,它不是从零开始,而是加载这个Skill。
3. Skill自改进
Skill创建出来不是终点。每次使用的过程中,如果你给了反馈,Hermes会拿这些反馈修改Skill本身。
比如你说”这个导入脚本应该先检查表是否存在”,Hermes不只是这次加上这个检查,它会回去修改那个Skill文件,把这条规则写进去。下次再用这个Skill,检查步骤就是默认包含的。
4. FTS5跨会话召回
记住了这么多东西,关键是能在对的时候找出来。
Hermes用SQLite的FTS5扩展做全文索引。每次新对话开始前,它会根据当前话题搜索历史记忆,把相关内容加载到上下文中。不是加载全部历史,是按需检索。
FTS5还有一个好处:它是纯本地的。你的记忆数据不需要上传到任何服务器,就在本地的SQLite文件里。
5. 用户建模
最后一个环节是Honcho用户建模,这是可选的外部集成。它做的事情比记住你说过什么更进一步:它在推理你是什么样的人。
每次对话结束后,Honcho会分析这次交流,推导出你的偏好、习惯、目标。比如你从来没有明确说过”我喜欢简洁的代码风格”,但Honcho通过分析你多次修改代码的模式,推断出这个结论。下次生成代码时,它会默认走简洁路线。
飞轮效应
五个环节单独看都不算新鲜。记忆、Skill、检索、用户画像,AI领域都见过。
Hermes的创新在于把它们组成了一个闭环。记忆喂养Skill,Skill使用中产生新记忆,新记忆触发Skill改进,改进后的Skill产生更好的结果。
这是一个正反馈循环。用得越多,每个环节都在变强,而且是同时变强。
三层记忆:从金鱼到老友
大多数AI聊天工具的记忆像金鱼,上一轮说的话下一轮就忘了。Hermes的目标是做一个老友:记得你说过什么,知道你是什么样的人,还学会了你做事的方式。
第一层:会话记忆
会话记忆回答的问题是:发生了什么?
每轮对话的内容、工具调用和返回结果,全部写入SQLite数据库,同时建FTS5全文搜索索引。这是情景记忆,类似人类大脑中的海马体。
关键设计:按需检索而不是全量加载。新对话开始时,Hermes不会把过去所有对话历史都塞进来。它根据当前话题,用FTS5搜索相关的历史片段,只加载需要的部分。
第二层:持久记忆
持久记忆回答的问题是:你是谁?
这一层存的不是对话内容,而是从对话中提炼出的持久状态。比如你的编码偏好、项目结构习惯、常用工具链、工作时间规律。这些跨会话保持,不会因为开了新对话就丢失。
第三层:Skill记忆
Skill记忆回答的问题是:怎么做事?
每个Skill是 ~/.hermes/skills/ 下的一个markdown文件,记录的是方法论和操作规范。
这三层对应了认知科学里的三种记忆类型:情景记忆(发生了什么)、语义记忆(世界是什么样的)、程序性记忆(怎么做事)。
人类学骑自行车的过程就是这三层记忆的协作:你记得上次摔了(情景),你知道重心要放低(语义),你的身体会自动保持平衡(程序性)。Hermes处理任务的过程类似。

和OpenClaw的本质区别
OpenClaw热潮之后,大家最关心的问题是:Hermes和OpenClaw到底有什么不一样?
| 维度 | Hermes Agent | OpenClaw |
|---|---|---|
| 核心理念 | 自改进学习循环 | 配置即行为(SOUL.md) |
| Skill维护 | Agent自动创建+自改进 | 人工编写和维护 |
| 记忆系统 | 三层自改进(会话/持久/Skill) | 多层但需人工维护 |
| 用户建模 | Honcho辩证建模 | 基于SOUL.md配置 |
| 生态规模 | 40+内置工具 + MCP 6000+ | ClawHub 44000+ Skill |
| 部署成本 | $5/月 VPS | 官方托管/自托管 |
差距最大的两个维度是学习能力和用户建模。
OpenClaw的Skill主要靠人工编写和调整,它的进化依赖社区和用户的主动维护。Hermes用的越久,Skill越精准,记忆越深,做事越顺手。
但OpenClaw也有Hermes比不了的地方:生态成熟度。ClawHub上44000+社区Skill,各种场景都有现成方案。Hermes的社区还在早期阶段。
一句话区分:OpenClaw是你养出来的龙虾,Hermes是自己会长大的龙虾。一个靠你用心喂养,一个靠自己从经验中学习。
全平台部署教程
Hermes的部署成本惊人地低:$5/月 VPS就能跑一个24/7在线的AI助手。
方式一:本地安装(5分钟上手)
打开终端,粘贴这一行:
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
安装器会自动处理Python、Node.js和所有依赖。macOS、Linux、WSL2都能跑。
安装完成后,编辑配置文件:
# ~/.hermes/config.yaml
model:
provider: openrouter
api_key: sk-or-xxxxx
model: anthropic/claude-sonnet-4
填入你的模型API Key,然后启动:
hermes
看到欢迎消息就说明安装成功了。
Windows用户:推荐用WSL2,或者在PowerShell里:
# 安装Python(如果没有)
winget install Python.Python.3.12
# 安装Hermes
pip install hermes-agent
# 启动
hermes
macOS用户:可以直接用Homebrew:
brew install hermes-agent
或者用uv管理Python:
uv pip install hermes-agent
方式二:Docker(隔离干净)
不想在本机装一堆依赖?Docker是最干净的选择:
docker pull nousresearch/hermes-agent:latest
docker run -v ~/.hermes:/opt/data nousresearch/hermes-agent:latest
关键参数:-v ~/.hermes:/opt/data 把容器内的数据卷映射到宿主机。Hermes的所有状态(记忆、Skill、配置)都存在 /opt/data 这一个目录里。容器删了重建,数据不丢。
方式三:$5 VPS 24/7运行
如果你想让Hermes随时在线,一台$5/月的VPS就够了。
推荐配置:
| VPS提供商 | 月费 | 说明 |
|---|---|---|
| Hetzner CX22 | ~$4/月 | 性价比最高,欧洲节点 |
| DigitalOcean Droplet | $5/月 | 新加坡/美西节点 |
| Vultr | $5/月 | 东京节点延迟低 |
选Ubuntu 22.04 LTS,SSH登录后跑安装脚本,和本地安装一模一样。不跑本地模型的话,内存占用不到500MB,$5的机器绑绑有余。
配合Telegram Gateway,手机上随时给Hermes发消息,它就在VPS上响应。一杯咖啡的钱,换一个24小时在线的AI助手。
Serverless方案:Hermes还支持Daytona和Modal两种serverless后端。空闲时环境休眠,收到消息时自动唤醒,会话间成本趋近于零。在config.yaml里设置 terminal: daytona 或 terminal: modal 即可。
config.yaml 完整配置详解
不管哪种安装方式,核心配置都在一个文件里:~/.hermes/config.yaml。
一个完整配置示例:
# ~/.hermes/config.yaml
# ===== 模型配置 =====
model:
provider: openrouter # 模型提供商
api_key: sk-or-xxxxx # 你的API Key
model: anthropic/claude-sonnet-4 # 使用的模型
# ===== 终端后端 =====
terminal: local # local/docker/ssh/daytona/modal
# ===== 工具集配置 =====
toolsets:
- web # 网页搜索
- terminal # 终端命令
- file # 文件操作
- skills # Skill管理
- delegation # 子Agent委派
# - homeassistant # 不需要就注释掉
# ===== MCP服务器配置 =====
mcp_servers:
# GitHub集成
github:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxxxx"
# PostgreSQL数据库
# postgres:
# command: "npx"
# args: ["-y", "@modelcontextprotocol/server-postgres"]
# env:
# POSTGRES_CONNECTION_STRING: "postgresql://user:pass@localhost:5432/mydb"
# ===== 消息网关 =====
gateway:
telegram:
token: YOUR_BOT_TOKEN
# discord:
# token: YOUR_DISCORD_BOT_TOKEN
# slack:
# token: xoxb-YOUR-SLACK-BOT-TOKEN
模型提供商选择
Hermes支持的模型来源相当广:
| Provider | 推荐模型 | 适用场景 |
|---|---|---|
| OpenRouter | Claude Sonnet 4 / GPT-4o | 200+模型可选,灵活切换 |
| Nous Portal | Hermes 3系列 | 官方推荐,和Agent深度适配 |
| OpenAI | GPT-4o / o3 | 直连OpenAI API |
| z.ai / 智谱 | GLM-5 | 国内用户友好 |
| Ollama | Hermes 3 8B/70B | 完全离线,隐私优先 |
建议:起步阶段用OpenRouter,可以随时切模型试手感。等确定了常用模型,再直连对应API省中间费用。
终端后端选择
六种后端,决定Hermes在哪里执行代码:
| 后端 | 说明 | 适用场景 |
|---|---|---|
| local | 直接在本机运行 | 最简单,大多数情况够用 |
| docker | 容器内运行 | 隔离安全,担心安全时用 |
| ssh | 连接远程服务器 | 远程执行 |
| daytona / modal | serverless | 按需唤醒,省钱 |
| singularity | HPC集群 | 学术场景 |
MCP插件配置
MCP(Model Context Protocol)让Hermes接入GitHub、数据库、Slack等6000+外部服务。
接入GitHub MCP:
-
去GitHub Settings → Developer settings → Personal access tokens,生成一个token -
权限至少勾选 repo和read:org -
配置config.yaml:
mcp_servers:
github:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxxxx"
-
重启Hermes后说「列出我GitHub上的仓库」验证
接入数据库:
mcp_servers:
postgres:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-postgres"]
env:
POSTGRES_CONNECTION_STRING: "postgresql://user:pass@localhost:5432/mydb"
配置完成后,你可以说「查一下这个月注册用户有多少」,它会自动生成SQL查询并执行。
per-server工具过滤:
如果只想暴露特定工具,可以用 allowed_tools 限制:
mcp_servers:
github:
command: "npx"
args: ["-y", "@modelcontextprotocol/server-github"]
env:
GITHUB_PERSONAL_ACCESS_TOKEN: "ghp_xxxxx"
allowed_tools:
- "list_issues"
- "create_issue"
- "get_pull_request"
Telegram Bot配置
最推荐的移动端入口,配置简单,体验好。
步骤:
-
在Telegram里找 @BotFather -
发送 /newbot,按提示取名字 -
BotFather会给你一个Token,长得像: 123456789:ABCdefGhIJKlmNoPQRsTUVwxyz -
写入config.yaml:
gateway:
telegram:
token: 123456789:ABCdefGhIJKlmNoPQRsTUVwxyz
-
启动Hermes,在Telegram里给你的Bot发消息
Telegram还支持语音消息,通勤路上直接说就行,不用打字。
常见问题排查
安装脚本卡住?
检查网络连接。脚本需要从GitHub和PyPI下载依赖。国内用户可能需要设置代理或使用镜像源。
hermes命令找不到?
安装脚本会把命令添加到PATH,但如果shell配置特殊(比如用了fish),可能需要手动 source ~/.bashrc 或重新打开终端。
Docker容器启动后没反应?
确认 ~/.hermes/config.yaml 已经存在且配置了model信息。容器会读取宿主机映射进来的配置。
VPS安全建议:
建议设置 terminal: docker 让代码在容器内执行,避免Agent直接操作宿主机文件系统。$5的VPS性能足够跑容器。

使用测评:实际体验如何
我用了两周Hermes,说说真实感受。
优点
1. 真正的跨会话记忆
用了两周后,Hermes开始自动用短句回复我,因为它发现我倾向于直接要结论而不是长篇分析。这种适应是渐进的,不需要我显式配置任何东西。
2. Skill自动积累
我让它做了几次代码审查,它自己创建了一个审查Skill,记录了我的审查标准(命名规范、错误处理、测试覆盖率)。之后每次审查都按这个标准来,而且会根据我的反馈自动改进。
3. 部署成本低
10。比订阅制的商业Agent方案划算太多。
4. 数据完全自主
所有记忆数据在本地SQLite里,我可以直接查看和删除。不存在”Agent偷偷学了什么我不知道”的情况。
缺点
1. 生态还在早期
ClawHub有44000+社区Skill,Hermes的Skill Hub还在成长。很多场景需要自己从零搭建。
2. 自改进不等于完美
自动总结的规则可能需要调整,可能会误判。我定期会去 ~/.hermes/skills/ 看看有哪些Skill,删掉不合适的。
3. 需要持续使用才能看到效果
学习循环的效果和使用频率直接相关。如果一周只用一两次,改进会很慢。但如果每天都用,飞轮转得会非常快。
适用场景
| 场景 | 推荐工具 |
|---|---|
| 写新功能、重构代码 | Claude Code |
| 给团队搭标准化Agent | OpenClaw |
| 7×24小时代码审查 | Hermes |
| 个人知识助手 | Hermes |
| 长期内容创作项目 | Hermes + Claude Code |
不是选择题,是组合题
写了三本橙皮书(Claude Code、Harness Engineering、OpenClaw),我现在对这个领域最大的判断是:最终胜出的不是某个工具,而是会组合工具的人。
我现在的工作方式就是组合。Claude Code处理所有需要我在场的事:写文章、写代码、做产品决策。它是我的”白天团队”。
Hermes处理不需要我在场的事:监控代码仓库、定时跑调研、维护知识库。它是我的”夜班团队”。
OpenClaw的SOUL.md和Skill系统给了我一套标准化的配置语言。不管底下跑的是Claude Code还是Hermes,行为约束的写法是一致的。
不要在这三个工具之间做”选择”。问自己三个问题:什么任务需要我盯着?什么任务可以放后台跑?什么场景需要透明可审计?答案自然把它们分到不同的位置上。
关键数据
-
GitHub stars:27,000+(发布两个月) -
内置工具:40+ -
支持平台:12+(Telegram、Discord、Slack、WhatsApp、Signal、CLI等) -
MCP可接入:6,000+ 应用 -
子Agent并发:最多3个 -
最低部署成本:$5/月 VPS -
内存占用:<500MB(不跑本地LLM) -
许可证:MIT(完全开源)
花叔的判断:Hermes是自改进Agent这个方向上最成熟的开源实现。它的天花板由人的参与程度决定。让Agent在”怎么做”上自改进,你只管”做什么”和”别做什么”。这不是偷懒,是另一种on the loop。
本文基于 Hermes Agent v0.7.0 编写。AI工具迭代迅速,请以官方文档为准。
官方文档:github.com/NousResearch/hermes-agent
夜雨聆风