昨晚刷到 Hermes 0.15 发了。
打开 release note 第一眼看到的是:1302 个 commit,747 个 merged PR,560+ 个 issue 关掉,321 个贡献者。数字看着很吓人,但真正让我放下手机仔细读的,是这一句——
「The Big Refactor — run_agent.py 从 16000 行缩到 3800 行,减了 76%。」
16000 行的单文件,减到 3800 行。这已经不是重构了,这是拆了一座楼,在原地盖了 14 栋新房。
而且这只是开胃菜。往下翻发现,这次更新的主题叫「Velocity」——速度,各个方面都快了。不是嘴上说快的那种快,是数字摆在面前的那种快。
先说代码重构这件事
用过 Hermes 的人应该都有体会,虽然它功能很强,但更新频繁、bug 也不少。很多问题根子就在那个 16000 行的 run_agent.py 上——一个文件管整个对话循环,改一个地方可能牵动全局。
0.15 把它拆成了 14 个模块,每个模块职责清晰。所有外部接口保持不变,所有 test 路径兼容,插件作者终于能看懂代码结构了。
对普通人来说,这个重构带来三个直接好处:
启动快了一秒。 不是夸张,实打实的冷启动优化。加上热路径函数调用砍了 47%(399k → 213k),自适应子进程轮询每个工具调用省 195ms,一行命令敲下去到能干活,体感明显。
更新会更快。 以前 16000 行的单体文件,加任何功能都像是在雷区里插旗。现在 14 个独立模块,引擎、安全、记忆、工具调用各管各的,迭代速度自然会上去。
更少的 bug。 代码越少,出事的概率越低。这句话听起来像废话,但它就是真理。
再加上一个让我彻底服气的对比:hermes --version 冷启动从 701ms 降到 258ms(降 63%),跟 Codex CLI 的 head-to-head 基准测试从 5/11 胜翻到了 6/11 胜。
一个头部项目,把启动速度跟竞品做 benchmark 对比、一项一项优化,这种态度本身就值得尊敬。
session_search 不烧钱了
这是我最想说的一个变化。
以前的 session_search 是走辅助 LLM 的,每次搜索会话历史要花 30 秒、$0.30,而且有时候还会产生幻觉——明明会话不在搜索结果里,它还硬编。用了这么久,我基本上只敢在必要的时候才搜一下,日常根本不敢随便用。
0.15 把这个彻底推倒重做了。
现在 session_search 完全不走 LLM,只用 FTS5 SQLite 全文检索。三种模式(发现、滚动、浏览)通过参数自动推断,不用配置任何东西。
结果:发现模式从 ~90 秒降到 ~20 毫秒,快了 4500 倍。滚动模式 ~1ms。零成本,零幻觉。
说白了就是:以后搜索你的对话历史跟搜本地文件一样快,不用再担心烧 token、等半天、还被忽悠了。
这个改动,说实话,是属于那种「用了就回不去」的——你现在觉得 session search 可有可无,等你发现它从此免费且秒出结果之后,你会开始搜所有东西。
Kanban 从玩具变成了真正的多 Agent 平台
0.13.0 的时候 Kanban 刚出来,我当时说是「最让我眼前一亮的点」。这次它变成了一个完整的多 Agent 协作平台——104 个 PR 的改动量。
几个关键变化:
蜂群模式。 hermes kanban swarm 一条命令创建一个完整的 Swarm v1 图——根节点、并行 worker、守卫验证器、守卫合成器、共享黑板。以前你得手动编排队列、手动设计协作拓扑,现在一条命令搞定。
自动分解。 Triage 阶段会自动把一个大任务拆成子树结构。比如你说「分析竞争对手」,它会自动拆成市场定位、产品功能、定价策略、用户口碑四个子任务,每个再往下分。
任务级模型覆盖。 简单任务用便宜模型(比如 boilerplate、文档校对),复杂任务用贵的模型。一个看板里同时跑多个模型,省钱还不耽误事。
调度、超时、重试、断点续传。 任务可以设启动时间、认领 TTL、重试指纹、僵尸检测,不会像以前那样「agent 挂了任务就丢了」。
Kanban 这条线,Hermes 走得很坚决。从 0.13 的「能跑起来」到 0.15 的「能正经干活」,半年不到,进步速度惊人。
Promptware 防御:终于不怕被下毒了
这个得单独拿出来说。
前阵子有个叫 Brainworm 的安全研究闹得挺大——攻击者可以通过工具输出、召回的记忆、加载的技能,往 Agent 的上下文窗口注入恶意指令,劫持它的行为。不是攻破你的系统,是攻破 Agent 的「脑子」。
0.15 做了三层防御:
第一层,威胁模式共享库。所有识别出来的注入模式集中管理,15 种 Brainworm/C2 攻击特征入库。
第二层,记忆加载时扫描。你的 MEMORY.md、USER.md、所有从持久存储里召回的记忆,在被注入上下文之前都会过一遍安全扫描。
第三层,工具输出打分隔符。文件读取、终端输出、外部 API 返回的所有内容,在拼进上下文之前会被标记边界。恶意内容没办法伪装成 Hermes 自己的系统提示。
简单说就是:Hermes 现在不会被「骗」了。
这个功能对大部分人来说可能是「感觉不到的存在」,但它很重要。尤其是你把 Hermes 接进飞书、钉钉、企业微信这种工作场景之后,一次注入可能就是一次生产事故。
还有几个值得提的
TUI 多会话管理器。 现在你可以在一个 TUI 窗口里同时管理多个活跃会话——列表、切换、刷新、关闭,不用退出再开新窗口。加上 Termux 滚屏保持、分支会话历史保留、CJK/IME 输入改进,移动端的体验也跟上了。
Skill bundles。 一个 / 命令加载一整组技能。比如把你的写作工作流(humanizer + ideation + obsidian + youtube-content)绑成 /writing-day,一条命令激活四个技能。这个对重度用户的效率提升很明显。
Bitwarden Secrets Manager。 一个引导 token 替代所有 API key。你不再需要在 ~/.hermes/.env 里存一堆明文 key,所有凭据从 Bitwarden 拉,你在 Web 控制台改一次,Hermes 重启就生效。
ntfy 推送。 第 23 个消息平台,不需要账号,不需要 API key,就一个 topic URL。适合 cron 任务跑完推一条结果到手机、手表。
Krea 图片生成。 两个新模型(Medium $0.03,Large $0.06),加上 FAL 也被拆成了独立插件。图片生成不再是一坨硬编码。
谁最该升
说实话,这次更新虽然大,但不是「每个人都必须立刻升」的那种。
如果你停在 0.13.x 或 0.14.x,日常用的挺稳,也没什么特别痛点——可以缓一缓。这次改动量确实大,1302 个 commit,难免有些边角 case 没覆盖到。
但如果你属于下面几种情况,我建议尽快升:
每天都在重度用 Hermes 的。 session_search 免费+秒出,加上启动速度提升,日常效率的感受会很直观。这两个变化就是纯省钱+省时间,而且是每时每刻都在替你省。
在跑多 Agent 工作流的。 Kanban 的 swarm、自动分解、任务级模型覆盖,这些不是锦上添花,是从「能跑」到「能正经干活」的质变。
把 Hermes 接进工作场景的。 Promptware 防御、Bitwarden 密钥管理、更严的权限控制,这些都是生产环境需要的安全基础设施。
升级就一条命令:
hermes update
升级前记得备份 config 和 .env,踩坑概率虽然不高,但这么大跨度的更新,谨慎点总没错。
这次更新给我的整体感觉是:Hermes 在从一个「个人 Agent 玩具」变成一个「能正经部署的基础设施」。
代码重构让它跑得更快、迭代更容易,Kanban swarm 让它能管好一群 Agent 一起干活,Promptware 防御让它不会被骗,Bitwarden 让密钥管理不再是一团麻。
不是某个功能突然变得特别强,而是整体成熟度上了一个台阶。
0.15,值。