Hermes Agent 装完别急着跑:这些配置先改,少花钱少翻车

本文按 Hermes Agent 官方文档、GitHub 仓库和本机 v0.17.0 实测口径整理。配置项变化很快,照抄旧教程之前,先确认当前版本是否真的读取这个配置。

很多人装完 Hermes Agent,第一反应是终于能让 AI 读文件、跑命令、写代码、发 Telegram 了。

但真正开始用之后,问题往往出在配置上:

  • Agent 在同一个错误上反复尝试,token 和时间一起烧掉。
  • 长对话越聊越贵,缓存没有用起来。
  • 你中途补一句需求,它直接打断前面的任务。
  • 日志里出现 token、路径、聊天记录,看着不放心。

Hermes Agent 不是装完就结束。真正影响体验的是安装后的 10 分钟配置。

这篇不做“复制 8 个配置就完事”的清单。我按实际使用风险分成三类:普通用户建议改、进阶用户看情况改、现在别照抄。

配置文件位置:

~/.hermes/config.yaml

也可以用 hermes config edit 进入编辑。

1. 忙时输入模式:建议改成 steer

Hermes 默认的忙时输入模式通常是:

display:
  busy_input_mode: interrupt

意思是 Agent 正在干活时,你又发了一句话,它会倾向于打断当前任务,优先处理你刚补充的内容。

聊天时这很自然。但让 Agent 做事时,interrupt 容易把任务节奏打乱。比如你让它检查测试失败原因并修复,它已经开始读文件、跑测试、定位错误。你中途补一句“顺便看看 README 要不要改”,前面的执行节奏就可能被打断。

更稳的做法是改成:

display:
  busy_input_mode: steer

steer 更像“补充方向”。它允许你在执行过程中加要求,但不是粗暴叫停当前任务。

如果你发现 Agent 已经完全跑偏,直接用 /stop 更干净。

2. 工具循环保护:建议打开硬停止

这是最值得先改的一项。

Hermes 有工具循环保护。按当前文档口径,软警告默认可用,但硬停止不一定默认开启。软警告会提醒模型不要继续重复失败动作,但如果模型继续尝试,成本还是会被消耗。

建议增加硬停止:

tool_loop_guardrails:
  warnings_enabled: true
  hard_stop_enabled: true
  warn_after:
    same_tool_failure: 3
  hard_stop_after:
    same_tool_failure: 8

这类配置平时存在感不强,真遇到问题时很有用。

常见场景包括网页被反爬、某个 CLI 没装、文件路径写错、API 429 限流后继续请求。不开硬停止,Agent 可能在一个坑里原地打转。打开之后,至少能把损失锁住。

这里要纠正一个常见说法:不是“工具断路器默认完全没开”。更准确的说法是,软警告已经能起到提醒作用,普通用户更应该补上 hard_stop_enabled: true

3. Prompt caching:用 Claude 时更值得改

有些教程会直接建议:

prompt_caching:
  cache_ttl: 1h

这个配置确实值得看,但不能理解成“所有模型都能省钱”。

它更适合 Claude 相关链路,比如你直接用 Anthropic,或者通过 OpenRouter 使用 Claude。长对话里反复出现的系统提示、工具说明、上下文文件,如果供应商支持缓存,就有机会降低重复输入成本。

普通建议:

prompt_caching:
  cache_ttl: 1h

但如果你使用的是其他 OpenAI-compatible 中转、MiniMax、Codex 路由或不明确支持缓存的供应商,就不要把它当成万能省钱开关。是否真的省钱,要看供应商账单和 Hermes 当前适配路径。

如果你只是想测试不同模型的 Agent 任务成本,可以把便宜模型放在轻任务上用。比如 Code Relay 这类模型中转平台会给新人测试额度,适合做低风险试跑,但不要把生产任务和敏感项目直接丢进去。

4. 隐私和密钥脱敏:两个配置别混

Hermes 有隐私脱敏:

privacy:
  redact_pii: true

它不是“把你所有隐私从系统里彻底抹掉”。按文档语义,它更偏 gateway 场景,比如 Telegram、WhatsApp、Signal 这类消息入口,把用户 ID、手机号、chat ID 这类信息在送进 LLM 上下文前做处理。

如果你用 Telegram 和 Hermes 交互,建议开启。

同时保留密钥脱敏:

security:
  redact_secrets: true

这项更偏 API key、token、密码等凭据格式,避免它们出现在工具输出或日志里。

这两个配置不要混:privacy.redact_pii 偏平台身份信息,security.redact_secrets 偏 API key、token、密码。一个管人,一个管密钥。都建议开,但不要以为开了它们就可以随便把私钥、生产环境 token、用户数据交给 Agent。

5. Skill 写入安全扫描:保守用户建议开

Hermes 的 Skill 能把复杂流程沉淀成可复用技能。这个能力很强,但也会带来长期风险。

因为 Agent 写下来的 Skill 以后可能被再次加载。如果里面混入危险命令、恶意提示词、凭据收集逻辑,风险就不只是当次对话,而是留在你的工作流里。

可以打开:

skills:
  guard_agent_created: true

这项扫描有时会误伤。比如一个合法技能里提到 $OPENAI_API_KEY~/.ssh/,也可能触发提醒。

更保守一点,可以加写入审批:

skills:
  write_approval: true

缺点是麻烦,优点是稳。

6. 子代理嵌套深度:复杂任务再改

Hermes 支持 subagent,把一个大任务拆给子代理处理。

默认常见配置是:

delegation:
  max_spawn_depth: 1

这代表扁平结构:主 Agent 可以派子 Agent,但子 Agent 不再继续派下一级。

复杂代码任务可以考虑:

delegation:
  max_spawn_depth: 2

但不建议新手一上来就改。原因很简单:成本会乘起来。

如果你允许 3 个子代理,每个子代理又能派 3 个,任务树很快膨胀。复杂研究、代码审查、多文件重构时有用;普通问答、单文件修改、写文章,默认值就够。

7. 别照抄 delegation.default_toolsets

有些旧文章会写:

delegation:
  default_toolsets:
    - terminal
    - file
    - web
    - browser

这段现在不建议照抄。

按本文检查口径,delegation.default_toolsets 属于旧配置痕迹,当前版本里不是一个值得依赖的正式生效项。你把它复制进 config.yaml,大概率只是看起来更完整。

如果你想控制子代理能用什么工具,更靠谱的方式是按 Hermes 当前 delegation/toolset 机制显式限制,不要指望旧配置自动生效。

配置项不是咒语。当前版本真的读取它,才算数。

8. smart_model_routing 也别当成成熟省钱开关

网上还会看到类似配置:

smart_model_routing:
  enabled: true
  cheap_model:
    provider: xxx
    model: xxx

这个想法没问题:简单任务用便宜模型,复杂任务用贵模型。

但按当前本机 v0.17.0 检查,它更像一个尚未完整落地的方向,不像复制 YAML 就能直接生效的成熟功能。

如果你想省钱,现阶段更确定的做法是:

  1. 简单任务手动切便宜模型
  2. 子代理单独配置便宜模型
  3. Claude 链路合理使用 prompt caching
  4. 长任务打开工具硬停止,避免死循环
  5. /compress 或自动 compression 管好超长上下文

不要把“智能路由”当成已经可用的一键省钱按钮。

我会怎么配

普通用户可以先从这份开始:

display:
  busy_input_mode: steer

prompt_caching:
  cache_ttl: 1h

tool_loop_guardrails:
  warnings_enabled: true
  hard_stop_enabled: true
  warn_after:
    same_tool_failure: 3
  hard_stop_after:
    same_tool_failure: 8

privacy:
  redact_pii: true

security:
  redact_secrets: true

skills:
  guard_agent_created: true

经常跑复杂代码任务,再考虑:

delegation:
  max_spawn_depth: 2

如果你很在意审批和安全,再考虑:

skills:
  write_approval: true

approvals:
  mode: smart

不建议普通人直接:

approvals:
  mode: off

这等于一路绿灯。除非你在隔离沙箱里测试,否则没必要。

常见问题

Hermes Agent 配置文件在哪里?

一般在 ~/.hermes/config.yaml。也可以用 hermes config edit

这些配置所有版本都适用吗?

不保证。Hermes Agent 更新很快,本文适合按 v0.17.0 和当前文档口径参考。发布后如果版本变化,建议先查官方文档和 GitHub 仓库。

为什么不建议照抄旧教程?

因为有些配置看起来存在,但当前版本并不读取,或者并不是普通用户最该优先调整的项目。复制 YAML 不等于配置生效。

想省钱,最该先改什么?

优先打开 tool_loop_guardrails.hard_stop_enabled,避免工具失败后反复尝试。Claude 用户再看 prompt_caching.cache_ttl

想更安全,最该先改什么?

先保留 security.redact_secrets: true,再按 gateway 使用情况开启 privacy.redact_pii: true。如果让 Agent 写 skill,再考虑 skills.guard_agent_created: trueskills.write_approval: true

总结

Hermes Agent 更像一台能自己干活的机器。机器能不能稳定运行,取决于你有没有给它装刹车、限速、保险丝和日志保护。

我最建议先改的不是多 Agent 嵌套、智能模型路由这类看起来很酷的功能,而是三个朴素配置:

  • 忙时输入别乱打断
  • 工具失败要硬停止
  • 隐私和密钥要脱敏

这几个改完,体验会稳很多。

旧文章里的配置别急着复制。看到一个配置项,先问一句:当前版本真的读它吗?

参考链接:

文中提到的 Code Relay 属于 AI 模型测试渠道,注册链接为 Code Relay。推广链接不影响本文配置判断,生产项目和敏感数据请优先使用你信任的模型供应商。

上一篇 AI账号风控环境一致性指南:固定IP与浏览器设置