ARTICLE · 1342968
Hermes v0.23.1发布:插件多了,旧版却看不见
Hermes Agent v0.23.1 · 版本解读
我看 Hermes Agent v0.23.1 的更新说明,最想提醒老用户的,是一个只有 12,154 字节的差额。
插件目录长大了,超过客户端允许读取的大小。旧版随即退回安装时自带的目录,新的插件找不到,已有插件也可能装到旧版本。
表面上,安装命令还在工作。背后,用来决定“能装什么、装哪个版本”的名单,已经跟线上分开了。
如果你最近照着别人分享的插件名字安装,却被提示“目录里没有”,这次补丁值得看一眼。
多了约12KB,目录就退回去了
Hermes 是 Nous Research 的开源 AI 智能体,可以调用工具执行任务,也支持安装插件扩展能力。这里出问题的,是插件安装前查询的目录。
根据 Issue #151856,11 月 9 日的一次站点部署后,线上目录有 1,268 个条目,文件大小达到 2,109,306 字节。客户端的读取上限是 2 MiB,也就是 2,097,152 字节。
两者相减,只差 12,154 字节。
对人来说,这个差额很小。对程序来说,超过就得拒收。为了避免一次网络故障让整个插件入口失效,客户端会接着查询随软件附带的本地目录。
这条退路有用:联网失败时,老插件仍有机会安装。
麻烦也在这里。目录每天在增加,本地副本却停在你上次更新软件的时候。线上越热闹,老用户手里的名单越容易跟不上。
目录大小与读取上限对照;数据为故障发生时记录。
能装成功,也可能装的是旧版
这次故障有三个不同的表现。
新加入目录的插件,可能按名字找不到。已经存在的插件,可能仍按本地目录记录的版本安装。线上后来增加的移除记录,也可能传不到旧客户端。
第三点尤其值得留意。目录除了介绍“有什么”,还负责传达“哪些已经撤下”。回退到旧副本后,这些变化也一起停住了。这里并没有证据说明某个恶意插件因此被安装,不能把目录故障直接写成安全事故。
修复 PR #151860 给了一个具体对照:hermes-teammates 在线上目录里的版本是 1.2.2,本地附带目录记录的是 1.1.0。更新读取逻辑后,才能拿到线上那条记录。
这个例子比“插件安装失败”更能说明问题。
报错会让人停下来排查;装成功了,人往往就继续往下用。如果教程里有某个功能,自己装出来却没有,排查很容易从模型、配置、依赖绕一大圈,才想到目录本身已经过期。
我更在意的是,正常使用时能不能看见这种回退。Issue 里记录,当时只有调试日志会说明线上目录读取失败。普通用户得到的,是后续那句“没有这个插件”。
两句话指向的排查方向,完全不同。
这次修复做得很小
v0.23.1 把目录读取上限从 2 MiB 提到了 16 MiB,扩大八倍。
PR 写得很明确:获取方式、缓存机制和回退逻辑保持原样。大小限制依然存在,用来约束异常或恶意响应。
配套测试也守了两边:超过旧的 2 MiB 上限、但处于新上限以内的目录要能读取;超过允许上限的响应仍要被拒绝。
这是我喜欢的一类补丁:问题有明确边界,改动对着边界走,没有顺手重做整个插件系统。
不过,16 MiB 解决的是眼前的容量问题。我自己的判断是,后续更有价值的改进,是让“当前正在使用旧目录”成为用户看得见的状态。尤其是涉及安装版本、移除记录时,知道数据有多旧,往往和能否继续安装一样重要。
v0.23.1公开列出的更新
这版是补丁发布,打包了 v0.23.0 之后的一批合并改动。官方把完整整理版日志留给 v0.24.0,目前没有逐条展开全部 PR。
下面列全本次发布说明提到的项目,方便对照;它们不等于整个版本窗口的完整提交清单。
FIX插件目录:读取上限由 2 MiB 提高到 16 MiB,恢复获取线上目录。
NEW会话回退:TUI 和经典 CLI 支持 Esc 回退,替代原来的回退列表选择器。
NEW群聊:可由网关承载,无需 Desktop;可以接入其他电脑上的机器人。
NEW网关连接:Desktop 与 Webapp 共享已保存的连接。
NEW内置浏览器:支持通过真实浏览器配置登录,并从地址栏填入已保存的登录信息。
NEW本地接入:新增 hermes gateway attach。
NEW剪贴板图片:新增 hermes clipboard image --json。
NEW插件接口:会话级环境值、JSON-RPC 方法与事件、llm.oneshot 辅助任务、压缩后保持稳定的 conversation_id。
NEW插件钩子:网关 on_session_open,以及 post_curator_run。
**优化|读取性能**:加快会话记录和交接信息读取。
NEW插件目录:增加一批条目,发布页未逐项列名。
这份清单适合用来找自己关心的方向。涉及登录、群聊、插件接口的具体用法,还需要看对应文档,不能仅凭发布页这一句话推断所有细节。
用插件的老用户,先更新客户端
CLI 的官方更新命令是:
| hermes update |
完成更新后,再重试原来的插件安装命令。仍停在 v0.23.0 或更早版本,读取上限就仍然是旧值;单纯重试安装,解决不了这个限制。
其他渠道需要分开看:Microsoft Store 应用通过商店更新;Docker 和 Hermes Cloud 对应 stable 或 latest 镜像标签。通过 .exe、.dmg 安装器安装的 Desktop 应用,这次没有同步的捆绑更新,官方说明要等下一次捆绑发布。
本文核对了发布说明、Issue 和修复 PR,没有把它们写成本机安装实测。
如果你最近遇到过“别人有这个插件,我这里却没有”,可以先查客户端版本。排查 AI 工具时,模型之外的这些小环节,也值得占一个位置。
参考资料:
发布说明:https://github.com/NousResearch/hermes-agent/releases/tag/v0.23.1
问题记录:https://github.com/NousResearch/hermes-agent/issues/151856
修复 PR:https://github.com/NousResearch/hermes-agent/pull/151860
项目介绍:https://github.com/NousResearch/hermes-agent/blob/v0.23.1/README.md















































































