ARTICLE · 1197172
AI 给自己做了一次升级:Hermes v0.22 实录与新功能
HERMES · 自动化升级实录
AI 给自己做了一次升级
一次没有人类操作的升级:从备份、换镜像到逐项验收,全部由它自己完成——顺便看看 v0.22 带来了哪些新东西。
今天下午,我给我的 Hermes 发了一条消息:「开始升级到 v0.22.2」。然后就去干别的了。回来时,它已经把自己升级完了。
整个过程里,我没有碰过一次服务器,也没有在它面前盯着。发出指令之后,从配置备份、拉取新版本镜像、重建容器,到升级后的逐项验收,全部由它自己执行。
听起来像个小魔术。但「自己升级自己」这件事,在工程上有一个真实的悖论,值得先说清楚。
一、难在哪:升级它的人,正在被它升级
Hermes 跑在一台 Docker 容器里。升级的方式很直接:拉取新版本镜像,重建容器。问题在于——发起这条重建命令的,正是容器里的这个「它」。
容器被替换的那一刻,执行链会被一起切断:相当于医生要给自己做手术,刀落下去的时候,主刀医生会先晕过去。
解法的核心是一句话:把「动作」和「执行者」分开。
1预检与备份(容器内完成)
记录版本基线、容器与权限现状;备份部署配置;锁定回滚锚点(旧版本镜像的 digest)。
2把「动作」递出去(SSH + 脱离会话)
容器内的 Agent 通过 SSH 连到宿主机,把重建命令交给一个脱离会话的独立进程执行。哪怕发起者随后被杀死,这个动作也会在宿主侧完整跑完。
3自己被替换(计划内)
重建发生,旧容器连同里面的执行者一起退场——这是流程里预期的一步,不是事故。
4新容器里做验收(新执行链)
容器重建完成后,用一条新的会话读日志、跑完 15 项验收清单,确认没有回滚的必要。
前提是把「栏杆」先立好:镜像锁定到具体版本、旧版本可回滚、配置有备份。这些动作全部可预检、可回滚,自动化才有资格上场。
二、过程:一条执行链,15 项验收
实际的执行链长这样——「发起」在容器内,「执行」在宿主机,两边通过一条 SSH 通道交接:
图 1|自动升级执行链:容器内 Agent 负责发起与验收,宿主机独立进程负责重建。
验收清单覆盖:容器与镜像一致性、运行版本、文件权限与用户组、接口健康检查、控制台可访问性、8 个接入平台的连通性、定时任务、工具调用自检……逐项过完,才算收工。
实测记录 · 一个容易被误判的细节
升级后第一次启动时,钉钉、飞书的平台适配器没有起来。这不是配置错误——v0.22 把运行时从 Python 3.13 换到了 3.14,平台依赖需要按新环境重新安装。新的统一包管理器把依赖补齐之后,第二次启动全部自动恢复。结论:升级后遇到某个部件没起来,先看完日志再动手——很多情况只是「还在装东西」。
三、三次重启,零故障
更有意思的是,升级窗口里实际发生了三次重启:一次是升级本身的重建;另外两次,一次为应用新配置,一次来自并行运行的另一个会话——都属于正常运维节奏的一部分。
图 2|三次重启与恢复节点:每次都在分钟级自动恢复,8 个平台全部重连。
三次加起来,服务每次都在分钟级内自动恢复:8 个接入平台全部重连,中断的会话自动续接。这验证的其实不是「升级成功」,而是系统的自愈能力——出问题不致命,致命的是每一步都要人守着。
四、v0.22 带来了什么
这次升级的目标版本 v0.22,代号 Threshold(门槛),是 Hermes 有史以来最大的一个发布窗口:合并了 6,000+ 个 PR、关闭 7,000+ 个 issue。挑对我们真正有用的说:
01 · 门槛降低
第一次启动就是引导对话。新装的环境打开是一段引导聊天,用一个免费试用模型起手,不需要事先准备 API key;配色、布局、要装的插件,边聊边配。
02 · 连接器
直接住进你常用的应用。Linear、Notion 这类工具现在可以接入,在对话里说一声就能用;托管应用与 MCP 服务器统一进了一个 Connectors 页面集中管理。
03 · 本地模型
一键上场。内置 llama.cpp 运行时,本地模型一键装载——数据不出本机。对很多人来说,这一条是决定性的。
04 · 发版与包管理
全部工程化。从这一版开始走稳定的语义化版本渠道;桌面安装包签名(含 Microsoft Store);底层统一成一个包管理器——这次升级中平台依赖的自动重装,就是它在干活。
05 · 插件目录
600 个经过审阅的插件。每个插件都钉在审阅过的提交上,一键安装;目录规则禁止插件篡改 Hermes 内部实现。
06 · 模型浪潮
Claude 5.5 系列、GPT-6 系列均已接入。新模型的接入速度,本身就是基础设施能力的一部分。
07 · 代码库瘦身
整体砍掉 34%。源码从 106 万行降到 69.8 万行,网关主文件从 3.48 万行降到 5,512 行;约 19 个不常用的工具改为按需加载,固定提示词也减了约 2,100 token——对本地模型用户尤其友好。
本次升级相关
为什么一步到位上 0.22.2?因为 0.22.1 是从错误的提交构建的,0.22.2 才是它本该发布的样子。而 0.22.2 还专门修了一个「重启后网关起不来」的老问题,并让本地模型的超长回合在笔记本上更稳——对一套要频繁重启的自动化系统来说,这个修复比任何新功能都重要。
五、把升级做成流程
有人会问:让 AI 自己升级自己,图什么?
我的答案不是「无人值守」这个名头。真正的价值在于:每一步都可预检、可回滚、可验收。人被从枯燥的部分里拿出来,只保留最后的确认权——比如对外的「发布」这个动作,再自动化也不含糊。
这次升级全程没有发生任何惊险场面。对基础设施来说,这恰恰是最好的评价。
Hermes v0.22 自动升级实录 · 2026-10-16 执行与记录:Hermes(全程自动);升级路径:v0.21.0 → v0.22.2 本文所涉的执行链设计、验收清单与回滚方案均已留档















































































