v0.23.0

Hermes Agent v0.23.0


概览

v0.23.0 —— 炉火版(The Hearth Release)。 发布于 2026 年 11 月 5 日。自 v0.22.0 以来累计 约 10,080 次提交 · 约 1,950 个已合并 PR · 约 8,720 个文件变更(+725,200 / −201,400)· 约 850 个 issue 关闭 · 666 位贡献者。

官方说明里的比喻值得记住:v0.22.0 把新人领进了门,v0.23.0 点火让大家围着坐下。落到功能上就是——这些东西不再各是各的产品了。你的整个桌面工作区现在可以由自己的 gateway 托管,直接在浏览器标签页里打开。所有入口(经典 CLI、TUI、桌面端、编辑器集成、消息机器人、定时任务)都接到同一个 gateway 上,由它独占每个会话,而不是各自跑一份 agent。

这次发版也把 v0.22.1–v0.22.7 七个补丁版本完整补上了文档,这也是数字看起来这么大的原因:之前两周一个的补丁窗口只发版不写稿,现在一并写清楚了。

亮点

1. 桌面工作区进浏览器标签页

把 webapp.enabled: true 打上,gateway 就会在自己的监听端口上托管完整的桌面工作区——同样的对话、同样的群聊、同样的插件和设置。hermes webapp 直接打开它;桌面端的「设置 → Web 访问」还能把它发布到局域网,或者挂在带登录的公网地址后面。

webapp:
  enabled: true          # 默认 false
  host: 127.0.0.1        # 默认
  port: 9120             # 默认
  public_url: ''         # 挂反向代理或公网域名时填

它默认是关的,而且是单用户:登录后的标签页就是你本人,看到的会话和原生桌面端是同一批。同一台机器上,显示设置会跟着你跨设备生效。Docker 镜像和 Nix 包里已经带上了它。

2. 一个 gateway 独占所有会话

这个版本之前,经典 CLI、TUI、桌面端、ACP 编辑器、消息机器人和定时任务可以各自在同一段对话上跑自己的 agent——消息被写两遍、或者在两个入口之间凭空消失,就是这么来的。现在一台机器只有一个 gateway 拥有全部会话,其他入口都作为客户端接上去:你在哪儿打开的都是同一段对话,一条队列、一份历史。

在这个模型下,你可以在桌面端改写或引导一条排队中的提示词,而它不会被执行两次。这个周期也修好了迁移初期砸坏的东西:斜杠命令、/retry、/refine、/review、追问卡片、推理过程显示、用量统计和 ACP 会话都恢复了。

3. 终端里直接看图片

你粘贴一张图片、或者某个工具截了图,CLI 和 TUI 现在直接在对话里画出来,而不是打印一个文件路径。kitty 和 Ghostty(CLI 与 TUI)是真像素,iTerm2、WezTerm、Konsole(CLI)也是;其他终端退化成彩色块;VS Code 终端打开图像支持后是全分辨率。

4. 对话可以倒带

在空闲、空的输入框上连按两次 Esc——或者直接敲 /rewind——CLI 或 TUI 会从新到旧列出你之前发过的提示词。选中一条,你可以改完重发,也可以从那一点分叉出一个新会话。改完重发在你真正提交之前什么都不删:提交时会先拿选中的那一轮重新校验,中途取消则会话原样不动。分叉走的是 /branch,只回退子会话,原会话的记录继续有效。

TUI 还支持在一轮回答还没跑完时直接 /new,旧的那轮会在后台继续跑。

5. 所有机器都在一个桌面窗口里

桌面端现在同时连着所有已注册的 gateway,在这台机器、SSH 主机和 URL gateway 之间切换是瞬时的——没有确认弹窗,会话列表也不会白屏。终端标签页跑在它被打开的那台主机上,标签上会写明是哪台。一个群聊里可以坐不同机器上的机器人。

6. 会自己跑起来的群聊

房间可以让一个主机器、或者一个自动路由,来决定“没点名”的消息由谁回答。定时任务可以用 deliver: room:<room_id>@<profile> 往房间里发消息,而且只唤醒被 @ 到的机器人。房间有用途说明和共享笔记,每个机器人在做什么会实时显示,机器人之间也不会再无限对轰:最后一条人类消息之后,一轮交流最多 max_hops 跳(默认 4)。

7. 插件自己保持更新

hermes plugins update 一次更新所有已装插件;还有一个可选的自动更新开关(CLI、聊天、桌面端、仪表盘都有),让目录插件和 git 插件一直保持最新。会弄坏你环境的更新会被拦下来,不会硬装。插件目录从约 600 条长到 1,050 条以上,还新增了 Verified 等级,标记厂商自己做的插件。

8. 付费工具有了价签和预算

付费 MCP 工具可以声明每次调用花多少钱,审批提示里会显示价格和这段对话的累计花费。设了 spend_limit 之后,即使服务器被标成可信、即使开着 YOLO,超预算的调用也会先问;没人能回答的场合(定时任务、hermes chat -q 这类无人值守运行)直接拒绝,而不是悄悄花钱。

mcp_servers:
  renders:
    command: "render-mcp"
    tool_costs:
      create_image: 20
      animate: {credits: [5, 20], note: "per animation"}
    spend_limit: 100
    cost_unit: credits

9. 新官方插件,核心更瘦

Meshy(文生 3D / 图生 3D)、ElevenLabs 音乐与音效、X Chat、REA 和一个 bubblewrap 沙箱都能一条命令装好。Camofox、mcp-serve、各类 agent 导入器和 Singularity 从核心挪进了插件,用过的用户会自动装上。

10. 子代理怎么跑,你自己选

委派现在可插拔:用默认的,或者装官方 advanced-delegation 插件,把每个子代理任务发到指定模型或单独的 profile。/delegation 用来切换路线。

11. 更轻更快,尤其是一整天开着的时候

重复触发的定时任务现在共用一个提示词缓存键。后台的一次性调用不再为缓存写入付费,一次性运行每次少发约 1,570 个提示词 token。开着 LSP 时 patch 和 write_file 回到毫秒级——一个干净的 TypeScript 编辑从 10.1 秒降到约 0.06 秒。长期运行的 gateway 会释放已关闭会话占的内存;某个存了约 35,000 条定时任务记录的桌面侧边栏,刷新时间从 121 秒变成瞬时。

12. 技能更精简,而且能锁

全新安装内置 44 个技能,而不是 58 个。Word、PowerPoint、Excel 合并成一个 microsoft-office;12 个偏门技能改成按需安装;仓库方、目录 MCP 或内置网页搜索已经覆盖的技能被移除。执行 hermes curator lock <技能名> 之后,agent 通过任何工具都改不动这个技能——YOLO 模式也不行——curator 也不会把它归档。

升级须知

  • 旧的浏览器工具没了。 浏览器自动化只走 browser_exec;agent-browser 和十个 browser_* 工具(browser_navigate、browser_click 等)已移除。用过 Camofox 的环境会自动安装 camofox 插件。如果你的提示词、技能或工具集列表里还写着旧工具名,改成 browser_exec。
  • 桌面端要求 macOS 13+ 和 64 位 Windows。 应用升级到 Electron 44,macOS 11、macOS 12 和 32 位 Windows 不再支持。
  • hermes mcp serve 改名为 hermes mcp-serve。 该命令挪进了插件;把 Hermes 当 MCP 服务器启动的客户端需要自己改配置,没有东西会替你改。
  • Office 技能合并。 Word、PowerPoint、Excel 现在是同一个 microsoft-office,旧副本会留在磁盘上,需要你手动删除。
  • Webapp 默认关闭。 不打开 webapp.enabled 或 Web 访问,就不会有任何东西对外提供。

这个窗口里的其它变化

  • 模型 — 你没有主动选模型时,默认模型从 GLM-5.2 换成 GLM-5.3,价格基本持平,在 Nous Portal 和 OpenRouter 上仍是 1M 上下文。新增 GPT-6.1 Terra、DeepSeek V4.1 Flash 1017、Solstice 上的 Gemini 4 Argon、Nemotron 3.5 Super VL;Claude Mythos 被当作“总是思考”处理。/model reset 把用 /model 钉住的会话放回你配置的默认模型,对话不丢。
  • 上下文压缩 — 可选的 compression.prepare_ahead 会在会话接近触发点时后台写好下一份摘要,压缩不再卡住当前这一轮。摘要会把不确定的说法列在 UNVERIFIED: 行,避免猜测被当成事实。hermes sessions refresh-prompts 让继续中的会话在下一轮就用上你改过的 SOUL.md、技能或 context 文件。
  • 安全 — 更多密钥形态会被打码(带引号的密钥、连接串、Azure key、非 PEM 私钥、SMB 口令);审批门禁现在会拦 curl … | sudo bash 这类管道、变形的 PowerShell 删除命令,以及藏在“已批准规则”后面的凭据上传;过期的审批卡片不能再批准下一次请求。
  • 定时任务 — 正在跑的任务可以从 CLI、桌面端、API 或 agent 自己那里取消;每个任务可以声明 Hermes 关机期间错过的运行该怎么处理。
  • 稳定性 — 内存回收时每分钟一次的 gateway 卡顿没了,关闭的会话会释放内存,hermes gateway stop / restart 在有活跃会话时会拒绝执行。

升级

hermes update
hermes doctor
hermes version

hermes doctor 在还有未解决的问题时以非零状态退出,所以升级之后可以直接拿它当健康检查。

← Hermes Agent Changelog