<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>AI运维自动化 on Kalend's Blog</title><link>https://blog.kalend.top/categories/ai%E8%BF%90%E7%BB%B4%E8%87%AA%E5%8A%A8%E5%8C%96/</link><description>Recent content in AI运维自动化 on Kalend's Blog</description><generator>Hugo -- gohugo.io</generator><language>zh</language><lastBuildDate>Sat, 20 Jun 2026 10:00:00 +0800</lastBuildDate><atom:link href="https://blog.kalend.top/categories/ai%E8%BF%90%E7%BB%B4%E8%87%AA%E5%8A%A8%E5%8C%96/index.xml" rel="self" type="application/rss+xml"/><item><title>Hermes 0.17 版本更新实测：15 天 1383 个 commit，这几个新功能最值得升</title><link>https://blog.kalend.top/2026/06/20/2026-06-20-hermes-0.17-upgrade.html/</link><pubDate>Sat, 20 Jun 2026 10:00:00 +0800</pubDate><guid>https://blog.kalend.top/2026/06/20/2026-06-20-hermes-0.17-upgrade.html/</guid><description>
 &lt;blockquote&gt;
 &lt;p&gt;从 v0.16 到 v0.17，从 2026.6.5 到 2026.6.19，15 天，1383 个非合并提交，207 个新功能，812 个修复。&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;h2 id="1-为什么要升级一个拖延症患者的自白"&gt;1. 为什么要升级：一个&amp;quot;拖延症患者&amp;quot;的自白
&lt;/h2&gt;&lt;p&gt;我承认，我是一个不擅长升级的人。&lt;/p&gt;
&lt;p&gt;Hermes（我用的开源 AI Agent）每隔几天就会推一个新版本，我的处理方式永远是&amp;quot;能用就先不动&amp;quot;。直到前两天，我让 Agent 帮我检查版本，它甩回来一行字：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;落后提交数：1480 commits
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;最新版本：v0.17.0 &lt;span class="o"&gt;(&lt;/span&gt;2026.6.19&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;本地版本：v0.16.0 &lt;span class="o"&gt;(&lt;/span&gt;2026.6.5&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;整整落后了 15 天、近 1500 个提交。我打开 git log 想看看这半个月上游到底做了什么，结果滚了半小时都没滚完。&lt;/p&gt;
&lt;p&gt;这下不能&amp;quot;再等等&amp;quot;了。我决定把这 1383 个非合并提交（去掉 merge commit 后的数字）啃下来，看看一个开源 AI Agent 这 15 天到底在忙什么——以及，它有没有偷偷长出我不知道的新能力。&lt;/p&gt;
&lt;h2 id="2-先看全景1383-个提交都在改什么"&gt;2. 先看全景：1383 个提交都在改什么
&lt;/h2&gt;&lt;p&gt;我写了个脚本把提交按类型分类，结果挺出乎意料：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;类型&lt;/th&gt;
					&lt;th&gt;数量&lt;/th&gt;
					&lt;th&gt;占比&lt;/th&gt;
					&lt;th&gt;说明&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;fix&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;807&lt;/td&gt;
					&lt;td&gt;58.4%&lt;/td&gt;
					&lt;td&gt;修复，最大头&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;feat&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;207&lt;/td&gt;
					&lt;td&gt;15.0%&lt;/td&gt;
					&lt;td&gt;新功能&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;test&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;93&lt;/td&gt;
					&lt;td&gt;6.7%&lt;/td&gt;
					&lt;td&gt;测试补全&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;chore&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;83&lt;/td&gt;
					&lt;td&gt;6.0%&lt;/td&gt;
					&lt;td&gt;杂务&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;refactor&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;60&lt;/td&gt;
					&lt;td&gt;4.3%&lt;/td&gt;
					&lt;td&gt;重构&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;docs&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;42&lt;/td&gt;
					&lt;td&gt;3.0%&lt;/td&gt;
					&lt;td&gt;文档&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;&lt;strong&gt;perf/style/ci&lt;/strong&gt;&lt;/td&gt;
					&lt;td&gt;21&lt;/td&gt;
					&lt;td&gt;1.5%&lt;/td&gt;
					&lt;td&gt;性能/风格/CI&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;第一个判断&lt;/strong&gt;：fix 是 feat 的 4 倍。这不是一个在&amp;quot;加功能&amp;quot;的项目，而是一个在&amp;quot;还技术债&amp;quot;的项目。说明 Hermes 经历过快速功能扩张期（0.13-0.16），现在进入打磨稳定期。对老用户是好事——意味着你升级后翻车的概率比之前低。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;第二个判断&lt;/strong&gt;：新功能分布非常有指向性。207 个 feat 里，桌面端（desktop）独占 57 个，加上 dashboard 13 个，光&amp;quot;客户端体验&amp;quot;就吃掉了三分之一。剩下的核心新能力集中在三个方向：多 profile 路由、Photon（iMessage 通道）、Cron 进化。&lt;/p&gt;
&lt;p&gt;我把这三个方向和桌面端，单独拆开讲。&lt;/p&gt;
&lt;h2 id="3-桌面端大改版57-个新功能的体感"&gt;3. 桌面端大改版：57 个新功能的体感
&lt;/h2&gt;&lt;p&gt;desktop 这一块的 feat 数量是第二名 gateway 的 4 倍，是这半个月改动最猛的地方。我挑几个升级后体感最强的：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;模型选择器搬到输入框了&lt;/strong&gt;。以前选模型要去状态栏点，现在直接在输入框（composer）里切换，配合 &lt;code&gt;effort/fast&lt;/code&gt; 预设，一键在&amp;quot;快速回答&amp;quot;和&amp;quot;深度思考&amp;quot;之间切。这个改动小但顺滑——聊到一半想换个更强的模型，不用跳出去。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cmd+K 可以直接重启 Gateway&lt;/strong&gt;。状态栏还会转圈反馈。听起来是个小功能，但对重度用户是救命的——以前重启 Gateway 要开终端敲命令，现在一个快捷键搞定。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;子代理活动实时流到 watch 窗口&lt;/strong&gt;。这个是我最喜欢的。Agent 在跑 delegate_task（派子代理干活）时，子代理的实时活动会流到独立的窗口里，你能一边看主代理，一边盯子代理在干嘛。调试多 Agent 工作流时，这等于把&amp;quot;黑盒&amp;quot;变成了&amp;quot;玻璃盒子&amp;quot;。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;原生 OS 通知 + 完成提示音&lt;/strong&gt;。每个类型的通知可以单独开关，Agent 跑完一段会响一声。长时间任务（比如让它写篇文章、跑个测试）终于不用一直盯着屏幕了。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;窗口透明度滑块&lt;/strong&gt;。Appearance 设置里新增，纯美观但很戳人——半透明悬浮窗配上深色壁纸，颜值党狂喜。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;GPU 加速自动检测&lt;/strong&gt;。远程显示时（比如 SSH 转发）自动关掉 GPU 加速，避免花屏。&lt;/p&gt;
&lt;h2 id="4-gateway-multiplex一台机器跑多-profile最重磅"&gt;4. Gateway Multiplex：一台机器跑多 Profile（最重磅）
&lt;/h2&gt;&lt;p&gt;这是这半个月&lt;strong&gt;最重磅&lt;/strong&gt;的新能力，但藏得深，光看 commit message 你可能意识不到它有多重要。&lt;/p&gt;
&lt;p&gt;5 个 phase 连环提交，名字都带&amp;quot;multiplex&amp;quot;：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;multiplex phase &lt;span class="m"&gt;0&lt;/span&gt; — config flag, profile enumeration
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;multiplex phase &lt;span class="m"&gt;1&lt;/span&gt; — HTTP-inbound /p/&amp;lt;profile&amp;gt;/ routing &lt;span class="o"&gt;(&lt;/span&gt;webhook&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;multiplex phase &lt;span class="m"&gt;2&lt;/span&gt; — fail-closed profile credential isolation
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;multiplex phase &lt;span class="m"&gt;3&lt;/span&gt; — secondary-profile adapter registry + conflict detection
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;multiplex phase &lt;span class="m"&gt;4&lt;/span&gt; — lifecycle guard + per-profile observability
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;翻译成人话：&lt;strong&gt;以前一台机器只能跑一个 profile（一套配置/身份），现在可以一台机器跑多个 profile，通过 &lt;code&gt;/p/&amp;lt;profile&amp;gt;/&lt;/code&gt; 路由分别接收 webhook&lt;/strong&gt;。&lt;/p&gt;
&lt;p&gt;这意味着什么？比如你同时有&amp;quot;工作号&amp;quot;和&amp;quot;私人号&amp;quot;两个微信、两个 Telegram、两套 API Key，以前要么开两台机器，要么开两个 Docker 容器。现在一个 Hermes 实例就能搞定，profile 之间凭证严格隔离（fail-closed），互不串台。&lt;/p&gt;
&lt;p&gt;对个人用户可能用不上，但对&lt;strong&gt;多身份运营者&lt;/strong&gt;（比如做私域的、做客服的、跨账号管理的）这是个质变。配合下面的 Dashboard 多 profile 管理，整个多账号体系终于不用搭积木了。&lt;/p&gt;
&lt;h2 id="5-photonimessage-通道终于完整了"&gt;5. Photon：iMessage 通道终于完整了
&lt;/h2&gt;&lt;p&gt;Photon 是 Hermes 连接 iMessage 的适配器，这半个月拿了 11 个 feat，等于把这条通道从&amp;quot;能用&amp;quot;打磨到&amp;quot;完整对齐其他平台&amp;quot;：&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;新能力&lt;/th&gt;
					&lt;th&gt;意义&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;gRPC 原生 iMessage 通道（无 webhook）&lt;/td&gt;
					&lt;td&gt;告别 webhook 中转，延迟更低、更稳&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;语音消息支持&lt;/td&gt;
					&lt;td&gt;终于能收发语音&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;emoji 反应支持&lt;/td&gt;
					&lt;td&gt;Agent 能识别和回应你的 emoji&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;入站附件下载并内联&lt;/td&gt;
					&lt;td&gt;收到的图片/文件直接处理&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;用户手机号持久化展示&lt;/td&gt;
					&lt;td&gt;状态栏能看到是谁&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;群聊 @mention 门控&lt;/td&gt;
					&lt;td&gt;群里只有 @ 到才回应，不打扰&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;自动配置 allowlist 和 cron 通道&lt;/td&gt;
					&lt;td&gt;开箱即用&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;一句话：如果你是苹果生态用户，iMessage 现在是一个和 Telegram/Discord 同等公民的接入通道了。&lt;/p&gt;
&lt;h2 id="6-cron-进化从定时任务到自动化平台"&gt;6. Cron 进化：从&amp;quot;定时任务&amp;quot;到&amp;quot;自动化平台&amp;quot;
&lt;/h2&gt;&lt;p&gt;Cron（定时任务）这半个月拿了 9 个 feat，方向非常清晰——&lt;strong&gt;从&amp;quot;跑脚本&amp;quot;升级成&amp;quot;自动化平台&amp;quot;&lt;/strong&gt;。三个亮点：&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Chronos：NAS 中介的 scale-to-zero cron&lt;/strong&gt;。这是企业级玩法——通过 NAS（网络存储）做中介，多个 cron 实例之间用 CAS（Compare-And-Swap）保证&amp;quot;最多触发一次&amp;quot;，闲置时可以缩到零实例。对个人用户意义不大，但说明 Hermes 在认真做&amp;quot;多机部署&amp;quot;。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Cron Recipes：参数化自动化模板&lt;/strong&gt;。官方预设了一批 cron 模板（比如&amp;quot;每天检查仓库更新&amp;quot;&amp;ldquo;每周总结对话&amp;rdquo;），你填几个参数就能用，不用从零写。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Suggested Cron Jobs：一个入口推荐自动化&lt;/strong&gt;。系统会主动建议你&amp;quot;这件事可以做成定时任务&amp;quot;——这对新手友好，很多人根本不知道 Agent 能自动跑什么。&lt;/p&gt;
&lt;p&gt;配合 dashboard 里新加的 SKILL.md 编辑器 + cron 任务选择技能的 UI，整个 cron 的配置体验从&amp;quot;改配置文件&amp;quot;变成了&amp;quot;图形界面点点点&amp;quot;。&lt;/p&gt;
&lt;h2 id="7-dashboard-13-个新功能多-profile-统一管理"&gt;7. Dashboard 13 个新功能：多 Profile 统一管理
&lt;/h2&gt;&lt;p&gt;Dashboard（Web UI）这半年的方向就一个词：&lt;strong&gt;统一&lt;/strong&gt;。&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;span class="lnt"&gt;7
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;unify multi-profile management — one machine dashboard, global profile switcher
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;profile-scoped skills &lt;span class="p"&gt;&amp;amp;&lt;/span&gt; toolsets management
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;full-featured profile builder &lt;span class="o"&gt;(&lt;/span&gt;model + skills + MCPs&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;clone profiles from any &lt;span class="nb"&gt;source&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;SKILL.md editor on Skills page + attach-skill selector in cron modals
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;reasoning-effort picker to the chat sidebar
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;session switcher panel on the Chat tab
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;翻译：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;一个浏览器窗口管所有 profile，全局切换器一键跳&lt;/li&gt;
&lt;li&gt;每个 profile 单独配技能、工具集、MCP 服务器&lt;/li&gt;
&lt;li&gt;图形化 profile 构建器（选模型 → 选技能 → 选 MCP → 完成）&lt;/li&gt;
&lt;li&gt;profile 可以从任意来源克隆（比如从另一台机器迁过来）&lt;/li&gt;
&lt;li&gt;Skills 页面直接编辑 SKILL.md，不用开终端&lt;/li&gt;
&lt;li&gt;cron 任务创建时可以直接选挂载哪个技能&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;对单 profile 用户：聊天侧栏多了 reasoning-effort 选择器（调节 Agent 思考深度）和 session 切换面板，操作更顺手。&lt;/p&gt;
&lt;p&gt;对多 profile 用户：这是体验质变。以前管三个 profile 要开三个终端、记三套配置，现在一个 dashboard 搞定。&lt;/p&gt;
&lt;h2 id="8-skills-和-memory新技能--记忆批处理"&gt;8. Skills 和 Memory：新技能 + 记忆批处理
&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;新增技能&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;simplify-code&lt;/code&gt;：3 个子代理并行做代码审查和清理&lt;/li&gt;
&lt;li&gt;&lt;code&gt;payments&lt;/code&gt; 系列（Stripe Link / MPP / Projects）：支付相关&lt;/li&gt;
&lt;li&gt;CLI 版 shop 技能（替代旧的 shop-app）&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;还能 diff 出你改过的官方技能&lt;/strong&gt;——这个对老用户很实用：你魔改了某个技能后，官方更新了，系统能帮你找出你改了哪些地方，方便合并。&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Memory 新增&lt;/strong&gt;：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;batch operations for single-turn memory updates&lt;/code&gt;：单轮对话里可以批量更新记忆，不用一条条加&lt;/li&gt;
&lt;li&gt;可配置的&amp;quot;后台记忆更新通知&amp;quot;：Agent 后台整理记忆时会通知你&lt;/li&gt;
&lt;li&gt;OpenViking（一种记忆后端）的 setup UX 改进 + 手动配置路径&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="9-升级实录踩坑与判断"&gt;9. 升级实录：踩坑与判断
&lt;/h2&gt;&lt;p&gt;我按官方推荐用 &lt;code&gt;hermes update -y&lt;/code&gt; 一键升级。整个过程：&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;div class="chroma"&gt;
&lt;table class="lntable"&gt;&lt;tr&gt;&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code&gt;&lt;span class="lnt"&gt;1
&lt;/span&gt;&lt;span class="lnt"&gt;2
&lt;/span&gt;&lt;span class="lnt"&gt;3
&lt;/span&gt;&lt;span class="lnt"&gt;4
&lt;/span&gt;&lt;span class="lnt"&gt;5
&lt;/span&gt;&lt;span class="lnt"&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class="lntd"&gt;
&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;1. git stash --include-untracked &lt;span class="c1"&gt;# 保存本地改动（含 mempalace 插件）&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;2. git reset --hard origin/main &lt;span class="c1"&gt;# 强制同步上游&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;3. git stash apply &lt;span class="c1"&gt;# 恢复本地改动&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;4. pip install -e &lt;span class="s2"&gt;&amp;#34;.[all]&amp;#34;&lt;/span&gt; &lt;span class="c1"&gt;# 更新依赖&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;5. skill sync &lt;span class="c1"&gt;# 同步技能&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;6. gateway restart &lt;span class="c1"&gt;# 重启网关&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;strong&gt;踩的坑&lt;/strong&gt;：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;退出码 130 不是失败&lt;/strong&gt;。Gateway 重启时会 SIGHUP 父进程，导致 &lt;code&gt;hermes update&lt;/code&gt; 退出码是 130（&amp;ldquo;被中断&amp;rdquo;）。第一次看到我吓一跳，以为升级失败，其实正常——用 &lt;code&gt;hermes version&lt;/code&gt; 和 &lt;code&gt;git rev-list HEAD..origin/main --count&lt;/code&gt; 验证就行，count 应该是 0。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;所有 profile gateway 都要重启&lt;/strong&gt;。主 gateway 重启不够，每个 profile 的 gateway（比如我的 yuan profile）都要单独重启，否则会报 &lt;code&gt;AttributeError: 'ToolRegistry' object has no attribute '_generation'&lt;/code&gt; 这种&amp;quot;代码已经更新但进程还跑老代码&amp;quot;的错。&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;本地魔改要重新应用&lt;/strong&gt;。我在 &lt;code&gt;run_agent.py&lt;/code&gt; 里改过 model_override（context length 配置），&lt;code&gt;shell_hooks.py&lt;/code&gt; 也改过。如果 stash apply 冲突，这些改动要手动重新打。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;我的判断&lt;/strong&gt;：&lt;/p&gt;
&lt;p&gt;这 15 天的更新，本质上是 Hermes 从&amp;quot;功能扩张期&amp;quot;转入&amp;quot;打磨期&amp;quot;的标志。fix 是 feat 的 4 倍，说明团队在认真还债；新功能集中在三个清晰的方向——&lt;strong&gt;多 profile 统一管理、桌面端体验、cron 平台化&lt;/strong&gt;——而不是东一榔头西一棒子。&lt;/p&gt;
&lt;p&gt;如果你是个人单机用户，桌面端的体感提升最大（模型选择器、子代理窗口、原生通知）。&lt;/p&gt;
&lt;p&gt;如果你是多账号运营者或小团队，&lt;strong&gt;Gateway Multiplex + Dashboard 多 profile 管理&lt;/strong&gt;这一套组合拳值得专门升一次级——它能把你从&amp;quot;多容器/多机器&amp;quot;的运维泥潭里捞出来。&lt;/p&gt;
&lt;p&gt;如果你正在评估&amp;quot;AI Agent 该不该上 cron 自动化&amp;quot;，新加的 Cron Recipes 和 Suggested Cron Jobs 把入门门槛压到了历史最低。&lt;/p&gt;
&lt;p&gt;升级有风险，但这次的风险比我预期的小。1480 个 commit 听起来吓人，但八成是 fix，真正的 breaking 改动很少。备份好本地魔改，跑一遍 &lt;code&gt;hermes update -y&lt;/code&gt;，重启所有 gateway，基本就稳了。&lt;/p&gt;
&lt;p&gt;技术债不会自己消失，但有人替你还了 807 条——这感觉还挺不错的。&lt;/p&gt;</description></item></channel></rss>