折腾了一周 Hermes Agent,把踩过的坑和配置心得整理出来
前阵子一直在玩 OpenClaw,搭了个 7×24 在线的 AI 助手接飞书和微信,用着挺顺手。同时,一直以来使用的 Claude Code,写代码确实猛。但总觉得缺了点什么——OpenClaw 是管消息和调度的,Claude Code 是管写代码的,那有没有一个东西是专门当个人助理的?最好还能自己学、自己成长的那种。
然后就看到了 Hermes Agent。Nous Research 出的,开源,MIT 协议,跑在自己机器上。最戳我的一点是它带自学习——干完活自动把经验存成 Skill 文件,下次直接复用。这玩意儿用久了不就越变越聪明吗?
装完之后折腾了大概一周,把配置翻了个底朝天,顺便把网上那些教程也看了一遍。发现不少教程写的内容跟官方文档对不上,有些配置项根本不存在。所以干脆自己整理一篇,把我验证过的内容写出来,省得后来人踩坑。
一、Hermes Agent 到底是啥
一句话:Nous Research 出的开源个人 AI Agent 框架,跑在你自己的服务器或者笔记本上,Telegram / Discord / Slack / 终端都能接,7×24 小时在线。
如果你接触过 OpenClaw 或者 Claude Code,那它们仨的关系大概是这样的:
- Claude Code —— 编程搭档,帮你写代码的
- OpenClaw —— Agent 网关 + 调度中心,管消息渠道、管团队运维
- Hermes Agent —— 个人管家,自带记忆,会自己学
三件事,三个工具,互相不冲突。我自己的用法是白天用 Claude Code 写代码,OpenClaw 挂着飞书回消息,Hermes 在后台跑定时调研任务——各司其职。
几个让我觉得有意思的点:
- 干完复杂的活会自动把流程存成 Skill,下次直接调用
- 记忆分层:短期会话 + 长期 MEMORY.md + SQLite 全文搜索
- 7 种终端后端:本地、Docker、SSH、Singularity、Modal、Daytona、Vercel Sandbox
- 18+ 消息平台接入
- 内置 Cron 定时任务
- 开源免费,MIT 协议,你只出模型 API 的钱
二、5 步跑起来
安装其实比想象中简单:
# 1. 安装
curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
# 2. 跑向导
hermes setup
# 3. 选模型
hermes model
# 4. 检查一遍
hermes doctor
# 5. 开聊
hermes
想接 Telegram 的话,再跑个 hermes gateway setup,手机就能随时收到消息了。
三、配置重点(这块是干货)
模型选择 —— 最值得花心思的地方
Hermes 支持所有 OpenAI 兼容的 API,选择面很广。我给三个方案,基本覆盖所有情况。
方案 A:OpenRouter,新用户首选
一个 Key 调几百个模型,折腾成本最低。
model:
default: "qwen/qwen-3.5"
provider: "openrouter"
base_url: "https://openrouter.ai/api/v1"
日常用什么模型,我的建议:
- 日常主力:
qwen/qwen-3.5—— 免费可用,中文能力不错 - 认真推理:
anthropic/claude-sonnet-4-20250514—— 工具调用和复杂推理更强 - 不差钱:
anthropic/claude-opus-4.6—— 最复杂的任务上 - 本地党:
qwen3.5-27b+provider: "custom"—— 数据不出本机,但得有 ≥24GB 显存
方案 B:直连 Anthropic
model:
default: "anthropic/claude-sonnet-4-20250514"
provider: "anthropic"
有个提醒:Anthropic 对 API 用量有一定限制,用量较大时建议关注费用。
方案 C:国内云厂商(推荐国内用户)
国内三家主流平台都支持 OpenAI 兼容接口,用 provider: "custom" 就行。除了智谱 AI 有专门支持。
阿里云百炼(DashScope):
model:
default: "qwen3.6-plus"
provider: "custom"
base_url: "https://coding.dashscope.aliyuncs.com/v1"
环境变量设 OPENAI_API_KEY 为你的百炼 Coding Plan API Key。
方案 D:本地 Ollama
model:
default: "qwen2.5-coder:32b"
provider: "custom"
base_url: "http://localhost:11434/v1"
context_length: 65536
这里有个大坑——Ollama 默认给的 context window 经常不够用,跑着跑着就截断报错。光在配置文件里写 context_length: 65536 还不够,服务端也得设环境变量 OLLAMA_CONTEXT_LENGTH=65536。两边都设了才稳。
OpenRouter 省钱小技巧
用 OpenRouter 的话,这两个配置加上能省不少:
openrouter:
response_cache: true
response_cache_ttl: 300
prompt_caching:
cache_ttl: "5m"
道理很简单:同样的请求走缓存秒回,系统提示保持稳定后续请求能命中 prompt cache。成本能降一截。
记忆系统 —— 开箱即用,别被网上教程忽悠了
这块我必须单独说一下。网上不少教程(包括一些热度挺高的博客)写着要手动配 persistent_memory: true 和 skill_generation: true。
这两行代码写了也白写,官方配置文件里根本没有这两个字段。
实际情况:
- 记忆系统默认开启,靠
MEMORY.md和USER.md管理,字符上限分别是 2200 和 1375 - 技能自动生成是默认行为,完成复杂任务后(默认每 15 次工具循环),agent 会被提示将流程保存为 Skill 文件
- 没有任何开关需要开,装好就能用
官方配置段长这样(看一眼就行,默认值不用改):
memory:
memory_enabled: true
user_profile_enabled: true
memory_char_limit: 2200 # MEMORY.md 字符上限,约 800 tokens
user_char_limit: 1375 # USER.md 字符上限,约 500 tokens
nudge_interval: 10 # 每 10 次用户发言后提示 agent 整理记忆
flush_min_turns: 6 # 至少 6 轮对话后才写入记忆
安全加固
公网跑的 VPS,这两项建议配上:
Docker 隔离:
terminal:
backend: "docker"
docker_image: "nikolaik/python-nodejs:python3.11-nodejs20"
docker_mount_cwd_to_workspace: true
官方文档明确说了,跑不信任的代码时用 Docker 做安全边界。local 后端啥隔离都没有。
危险命令审批:
这个配置块不在官方示例文件中,但代码完全支持。除了
mode和timeout,还有cron_mode、destructive_slash_confirm等额外字段。
approvals:
mode: manual
timeout: 60
manual 是默认模式,每次危险命令都得你手动确认。smart 会用辅助模型自动评估风险。off 就是全放开——只在完全可信的环境里用。
会话里还能敲 /yolo 临时关闭审批,懂的都懂。
检查点/回滚 —— 建议开
这个配置块不在官方示例文件中,但代码完全支持。
checkpoints:
enabled: true # 默认 false,opt-in
max_snapshots: 20 # 每个项目最大检查点数
max_total_size_mb: 500 # 存储总上限
max_file_size_mb: 10 # 单文件上限
auto_prune: true # 自动清理
retention_days: 7
delete_orphans: true # 自动清理孤立快照
min_interval_hours: 24 # 快照最小间隔
默认关闭的,建议手动打开。开了之后 agent 动文件前会自动快照,搞砸了用 /rollback 恢复。有总比没有强。
上下文压缩 —— 默认开着,不用管
compression:
enabled: true
threshold: 0.50 # 用到 50% 上下文时触发压缩
target_ratio: 0.20 # 保留最近 20% 的对话
protect_last_n: 20 # 始终保留最近 20 条消息
protect_first_n: 3 # 始终保留系统提示 + 前 3 条非系统消息
上下文用到一半自动压缩,默认行为,了解就行。
四、踩坑速查
这几个坑社区里反复有人踩,提前说:
- 写
persistent_memory: true—— 字段不存在,记忆默认开的 - 写
skill_generation: true—— 同上,没有这个开关。技能相关配置在skills:段落下 - 写
effort: high—— 不存在。正确写法是agent.reasoning_effort: "medium"(或 “low”/“high”) - Ollama context 不够 —— 配置文件 + 环境变量两边都要设 65536
- VPS 裸跑不加固 —— 上 Docker 隔离,同时配
command_allowlist放行可信命令 - 不开检查点 —— agent 误操作了没法回滚
- 频繁换模型 —— prompt cache 全失效,成本翻倍
五、大概花多少钱
| 方案 | 月花费 |
|---|---|
| 最低配(OpenRouter 免费模型 + $5 VPS) | ~$5 |
| 日常用(Qwen 3.5 + $5-10 VPS) | ~$5-15 |
| 认真用(Claude Sonnet + $10 VPS) | ~$15-30 |
| 拉满(Claude Opus + 高配 VPS) | ~$30-60 |
| 本地跑 Ollama | 电费 |
六、几个典型用法
当研究助理
跟它说"帮我调研一下 2026 年最新的 AI Agent 框架",它自己搜索、读网页、出报告,最后还把整个流程存成 Skill。下次再说类似的事,直接复用。
定时任务 / 日报
用 hermes cron 设个定时任务,每天早上一睁眼 Telegram 收到整理好的日报,挺爽的。
从 OpenClaw 迁移
hermes claw migrate
如果你之前玩过 OpenClaw,一条命令把记忆、技能、配置全导过去,基本零成本。
七、说两句
玩了一圈下来,Hermes Agent 给我印象最深的三点:
- 真能自己学——不是噱头,干完活确实会存 Skill,越用越顺手
- 不折腾——记忆和技能都是开箱即用,不像有些工具装完还要配半天
- 灵活——从本地 Ollama 到云 VPS 到 serverless,看自己需求来
它不是来替代谁的。Claude Code 写代码还是猛,OpenClaw 管团队渠道还是稳。Hermes 补的是个人助理这块——7×24 在线、能学习、能定时干活的那个角色。
如果你也折腾过这些 Agent 工具,欢迎交流。
本文基于 Hermes Agent v0.13.0,所有配置项已与官方 cli-config.yaml.example 源码逐项核对。
参考:
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐




所有评论(0)