上个月开始把个人助理从 OpenClaw 迁到 Hermes Agent,用了一个月后决定重写这篇教程。Hermes 是 Nous Research 开源的"会越用越强"的自进化 AI Agent,和 OpenClaw、Claude Code 属于同一赛道,但核心差异是它内置了一套学习闭环:任务做完会自动把流程沉淀成技能,会话结束会把经验整理进长期记忆。这篇笔记按 2026 年 9 月的最新版本重写,覆盖安装、记忆、技能、工具后端、消息网关、多 Agent 与自动化,命令都经过官方文档核对。
1. Hermes Agent 是什么:与 OpenClaw / Claude Code 的差异
Hermes Agent(GitHub: NousResearch/hermes-agent)是 AI 实验室 Nous Research 于 2026 年 2 月发布的开源 Agent 框架,MIT 协议。它不是一个绑在 IDE 里的编码副驾驶,也不是聊天机器人的壳——官方定位是"runs anywhere and gets more capable the longer it runs":跑在 5 美元的 VPS、GPU 集群或闲置几乎零成本的 Serverless 基础设施上,你可以在地铁上用 Telegram 跟它对话,而它在云端虚拟机里干活。
一句话对比三类工具:
Hermes Agent | OpenClaw | Claude Code / Codex | |
核心 | 自进化学习循环(技能+记忆) | 多渠道消息网关 | 终端编码 Agent |
学习闭环 | 完整(自动建技能+Curator 维护) | 手动为主 | 有限 |
记忆 | 三层:MEMORY/USER + FTS5 会话搜索 + 外部 Provider | Markdown 文件记忆 | 项目级 CLAUDE.md |
消息平台 | 20+(含微信/飞书/钉钉/企微/QQ) | 20+ | 基本无 |
模型 | 模型无关,20+ 供应商 | 模型无关 | 绑定自家 |
官方"唯一内置学习循环"的说法包含四件事:Agent 从经验里创建技能、在使用中改进技能、主动把知识写进记忆、跨会话搜索自己的历史对话。截至 2026 年 8-9 月,项目 GitHub Stars 已超过 24 万,并登上 OpenRouter Token 消耗榜首。
2. 安装与初始化:60 秒跑通
2.1 安装
Linux / macOS / WSL2 / Android (Termux):
Windows 原生(PowerShell):
安装器自动处理 Python(经 uv)、Node.js、ripgrep、ffmpeg,以及 Windows 下的便携 Git Bash,无需预先装任何依赖。想同时要桌面 App 的,可以直接下载 Hermes Desktop 安装器。
2.2 配置模型
两条路二选一。最省事的推荐路径——用 Nous Portal 一个订阅覆盖模型 + 网络搜索 + 图片生成 + TTS + 云浏览器:
一条命令完成 OAuth 登录、把 Nous 设为 provider、开启 Tool Gateway。自带 300+ 模型可选,随时
/model 切换。自带密钥的用户执行
hermes model 或 hermes setup,走完整向导选择供应商。Hermes 支持的供应商非常广:OpenRouter、Anthropic、OpenAI、Google Gemini、DeepSeek、Kimi/Moonshot(含中国区)、MiniMax(含中国区)、z.ai/GLM、阿里 DashScope、Hugging Face、NVIDIA NIM、xAI/Grok、GitHub Copilot(OAuth)、Ollama/LM Studio 本地模型以及任意 OpenAI 兼容自定义端点。注意:Hermes 要求模型至少有 64K 上下文,本地模型请把上下文开到 64K 以上。
2.3 目录结构:先看懂 ~/.hermes
原则很简单:密钥进
.env,设置进 config.yaml。用 hermes config set KEY VAL 会自动把值路由到正确文件,永远不要手改 config.yaml(缩进错误会弄坏运行中的网关)。2.4 第一次对话与验证
如果连一次干净的对话都跑不通,不要急着加网关、cron、技能——先把基础闭环跑稳,再层层往上加。
3. 记忆系统:三层记忆,三种速度
很多人抱怨"Hermes 记不住东西",其实它是三层设计,理解后才知道每层各管什么:
层级 | 载体 | 容量 | 特性 |
第一层 | `MEMORY.md`(工作笔记) | ≤2200 字符 | 每次会话以冻结快照注入上下文 |
第一层 | `USER.md`(用户画像) | ≤1375 字符 | 同上,存偏好与沟通风格 |
第二层 | `state.db` + FTS5 全文搜索 | 几乎无限 | 主动搜索几周前的对话,LLM 再摘要 |
第三层 | 外部 Memory Provider | 无限 | Honcho / Mem0 / Holographic / Supermemory 等,可插拔 |
为什么"刚告诉它的事它转头就忘"?因为写入是 Agent 策展(Agent-curated)+ 周期性 nudge,不是逐句实时写盘——实时写入会频繁改变 system prompt 头部、破坏前缀缓存、拉高成本。只有你明确表达偏好、发现环境事实、纠正它的做法、或它判断某信息重要时,才会在若干轮后整理进记忆。想让某件事被记住,直接说:"请把这件事写入你的长期记忆"。
想调记忆反思频率,改
config.yaml 的 memory.nudge_interval(默认约 10,越大越省 token、越小记得越勤)。关键事实放 MEMORY,流程放技能;记忆满时(头部会显示 ~80%)让 Agent 做一次整理合并。4. 技能系统:让它越用越会的核心
技能(Skill)是 Agent 的"程序性记忆"——不是它知道什么,而是它会怎么做。技能是带 YAML frontmatter 的 Markdown 文档,存在
~/.hermes/skills/,兼容 agentskills.io 开放标准。4.1 渐进式披露
技能采用三级按需加载,装再多也不撑爆上下文:
4.2 使用与安装
每个已装技能自动成为一个斜杠命令,CLI 和消息平台通用:
Skills Hub 集成了多个来源:官方可选技能(official)、skills.sh、well-known 端点、直接 GitHub(openai/anthropics/NVIDIA 仓库)、ClawHub、LobeHub,以及自定义 Tap 仓库。所有第三方技能安装前会跑安全扫描(检查数据外排、提示注入、破坏性命令),危险判定不能靠 --force 绕过。
4.3 自进化循环与 Curator
这是 Hermes 最核心的差异。完成复杂任务(通常 5 次以上工具调用)、走过死胡同找到正确路径、被你纠正、或发现非平凡工作流之后,Agent 会主动提议把方法存成技能(由 skill_manage 工具执行 create / patch / edit / delete 等操作)。技能里的坑、边界条件和验证方法都会被记录下来,下次遇到同类问题直接按已验证流程走,不用重新摸索。
技能越堆越乱怎么办?Curator 后台维护系统负责垃圾回收:闲置 30 天的技能标 stale、90 天归档(归档到
.archive/ 可恢复),用 hermes curator pin <skill> 可钉住重要技能。它只处理 Agent 自建的技能,从不碰内置和 Hub 安装的,且只归档不删除。4.4 SKILL.md 长什么样
5. 工具与执行后端
Hermes 内置 60+ 工具,按工具集(toolset)分组,可针对每个平台单独启用/禁用(
hermes tools)。常用工具集:web(搜索/抓取)、browser(浏览器自动化)、terminal、file、code_execution(沙箱 Python)、vision、image_gen、tts、skills、memory、session_search、delegation(子 Agent)、cronjob、messaging、kanban 等。工具变更在 /reset 新会话后生效。终端命令可在七种后端执行,只改配置不换代码:
后端 | 场景 |
local | 本机开发 |
docker | 隔离容器(只读根文件系统+丢弃全部 capabilities) |
ssh | 远程服务器,Agent 无法改自己的代码 |
singularity | HPC 集群 |
modal / daytona / vercel_sandbox | Serverless,空闲休眠几乎零成本 |
安全细节做得很扎实:容器后端全部只读根文件系统、无特权提升、namespace 隔离;Docker 是"一个长驻容器 + docker exec",
pip install 一次全程生效。后台进程可用 terminal(background=true) 配合 process 工具的 list/poll/log/kill 管理。还有一招省 token 的杀手锏
execute_code:Agent 写 Python 脚本通过 RPC 调用工具(web_search、read_file、terminal 等),中间结果不进上下文,只有最终 print 返回。官方例子:3 次以上带逻辑的工具调用、批量过滤、循环处理结果都该用脚本化——能把多步流水线压成一次推理。6. 消息网关:把 Agent 接到 20+ 平台
6.1 平台支持
一条 Gateway 进程接入 Telegram、Discord、Slack、WhatsApp、Signal、Matrix、Mattermost、Email、SMS,以及国内常用:微信(Weixin)、企业微信(WeCom)、飞书(Feishu)、钉钉(DingTalk)、QQ Bot、元宝;还有 Home Assistant、Microsoft Teams、Google Chat、BlueBubbles(iMessage)。个人微信原生支持扫码连接,图片/视频/文件/语音都收。
6.2 以 Telegram 为例
在 Telegram 找 @BotFather 拿 token,配好 allowed users 白名单。网关里的常用命令:
/new 开新会话、/model 切模型、/approve 批准待执行的危险命令、/deny 拒绝、/sethome 把当前聊天设为默认投递频道、/stop 中断任务、/voice on 开启语音对话。6.3 安全默认
陌生人的 DM 默认需要配对授权(
hermes pairing approve <code>);危险命令默认由审批系统拦截。建议给每个平台配置用户白名单(如 TELEGRAM_ALLOWED_USERS),防止 Bot 被陌生人随意调用烧额度。7. Profiles 与多 Agent:一人成团
7.1 Profiles
Profile 是一套完全隔离的 Hermes 实例——独立的 config/.env/SOUL.md/记忆/技能/会话/网关。创建后自动生成命令别名:
给每个 Profile 一份专属 SOUL.md(性格/行为准则),并各配一个独立 Telegram Bot token(同 token 会触发令牌冲突保护)。
7.2 多 Agent 协作三板斧
- delegate_task(子 Agent):主 Agent 把任务拆给隔离子 Agent 并行执行,批量用
delegate_task(tasks=[...])。注意子 Agent 从全新上下文开始,必须把文件路径、报错信息等背景写全;在线模型建议从 2-3 个并发起步,别贪多。
- Bot Mode / 群聊:桌面端把 Profiles 变成一组带名字、头像、专属模型与技能、可 @ 互发的 Bot,能在群聊里开"多 Agent 圆桌"(上限 10 条/3 轮防失控),
@user可把人类拉进判断。
- Kanban 看板:SQLite 持久化工作队列,任务在 Triage → Todo → Ready → In progress → Blocked → Done 间流转,调度器按 assignee Profile 自动拉起 worker,支持父子依赖、失败熔断、崩溃回收与结构化交接。适合 PM-写-审的多角色流水线。
并发编辑代码避免 git 冲突,用
-w(git worktree 模式)或干脆 tmux 拉起多个独立实例。8. 自动化:Cron、Webhook 与后台任务
8.1 定时任务(最常用)
Hermes cron 支持自然语言描述,不用记 crontab 语法:
关键原则:提示词必须自包含。cron 每次都在全新会话运行,没有你之前的对话上下文,"做我平时的晨报"会失败,要把搜索主题、条数、格式、口吻一次写全。想要纯脚本的看门狗(无 LLM、空输出即静默),用
--no-agent + --script。时区是个大坑:cron 走服务器系统时区,先 timedatectl 确认再配置。8.2 其他自动化
/background <prompt>:后台跑一个任务不阻塞当前对话;
/goal <目标>:让 Agent 跨多轮持续推进直到达成;
- Webhook:
hermes webhook subscribe <name>暴露 HTTP 入口,事件驱动运行;
- 每天自动发的简报/复盘,就是 cron + delegation 并行调研 + 平台投递的经典组合(官方教程叫 Daily Briefing Bot)。
9. 进阶玩法
- OpenClaw 迁移:
hermes claw migrate一键导入 SOUL.md、MEMORY/USER 记忆、技能、命令白名单、消息配置与白名单密钥,还支持 --dry-run 预览;
- 作为 Python 库:
from run_agent import AIAgent,agent.chat()/run_conversation()直接嵌进自己的脚本、FastAPI、Discord bot 或 CI;批量用batch_runner.py,每个 prompt 独立隔离环境;
- IDE 集成:
hermes acp起 ACP server,VS Code / Zed / JetBrains 都能用;
- `hermes proxy`:起一个 OpenAI 兼容本地代理,把 Codex CLI / Cline 等任何工具指向你的 OAuth 订阅,不额外花 API 钱;
- 研究就绪:批量轨迹生成、轨迹压缩、Atropos RL 环境,用于训练下一代工具调用模型。
10. 安全治理
七层纵深防御,重点是前两层:
- 用户授权:平台用户白名单 + DM 配对;
- 危险命令审批
approvals.mode:smart(默认,辅助 LLM 分级:低危自动放行、高危自动拒绝、不确定问人)/ manual(全问)/ off(全放行,等同 --yolo,仅限可信环境);
- 容器隔离:Docker/SSH/Modal 等后端天然隔离;
- 还有 MCP 凭据过滤、上下文文件注入扫描、会话隔离、输入清理。
敏感信息建议:密钥只进
.env;工具输出可选开启密钥脱敏(security.redact_secrets: true)与 PII 脱敏。给 Agent 接消息平台前,务必先配置好白名单和审批,等于把命令执行权交给别人这种事要慎重。11. 故障排查:五步恢复法
遇到不对劲,按这个顺序来:
常见问题速查:
症状 | 原因与解法 |
模型空回复/报错 | provider 或 Key 错,重跑 hermes model |
工具不可用 | 该平台工具集未启用,hermes tools 检查后 /reset |
网关起了但收不到消息 | Bot token 或白名单没配好,重跑 hermes gateway setup |
记忆没更新 | 冻结快照设计使然,跨会话才生效;显式说"请记入长期记忆" |
技能不显示 | hermes skills list 确认已装 + 平台启用状态 |
时区任务乱跑 | cron 走服务器系统时区,timedatectl 核对 |
SSH 退出网关就停,加
sudo loginctl enable-linger $USER;WSL2 需要 /etc/wsl.conf 里 systemd=true。12. 小结:Hermes 适合谁
把 Hermes、OpenClaw、Pi 摆在一起时我的选择逻辑是:想要一个跨平台常驻、能在 Telegram/微信上指挥、且希望它"越用越懂我、越用越会干"的长期数字员工,选 Hermes——它的自进化技能 + 三层记忆目前没有开源替代做得更完整;如果你主要是终端写代码、偏好极简可 DIY 的 harness,Pi 更合适;如果重度依赖多渠道消息生态和更成熟的网关,OpenClaw 仍是强项。三者并不互斥,很多人是 Pi/Claude Code 写代码、Hermes 管记忆与自动化、OpenClaw 对外服务。
值得提醒的是上手节奏:第一周先跑稳基础对话并喂好 USER/MEMORY,第二周再上网关、技能和 cron。技能和记忆是"养"出来的资产,前期投入越多,后期回报越大。
参考来源
*笔记整理日期:2026-09-09。Hermes 迭代很快,具体命令与配置以官方文档为准。*