解决痛点!给Hermes Agent加技能:更新不覆盖本地自定义配置
本文分享了如何解决Hermes Agent更新时自定义修改被覆盖的问题。作者通过与AI协作,开发了一个自动化解决方案:先备份修改文件,执行更新后再恢复自定义内容。整个过程展示了AI时代的高效工作流 - 人类负责定义问题和把关,AI负责编写脚本、管理代码和生成文档。最终成果包括两个开源项目:Windows桌面自动化工具和安全更新保护器。这种"人提需求+AI执行"的模式,相比传统编程方式效率提升显著,
Hermes Agent发布了v0.14.0,想更新,又怕之前开发的外挂被覆盖,怎么办?。下面全程记录一位编程老炮与 AI的 协作实战:从痛点→方案→AI执行
一、痛点:改过的代码,一更新就没了
如果你也跟我一样,喜欢在开源项目上动手动脚——加个自定义工具、改改 CLI 行为、调调配置——你一定遇到过这个场景:
$ hermes update
✓ Updated to latest version
然后发现:
- 自己写的
tools/windows_cu/被删了 - 改过的
toolsets.py恢复出厂设置 - CLI 里加的那个贴心小功能没了
心态炸了。
以前我的做法是:更新前手动 git diff 导出 patch,更新完再 git apply。麻烦不说,还经常漏文件。
这次我决定换个思路——让 AI 帮我解决这个问题。
二、AI 协作工作流:人提需求,AI 落地
先说说这次是怎么干的。这不是一篇纯技术教程,我更想分享的是 AI 时代的工作方式:
人:我有一个痛点 → AI:给你几个方案
人:选方案3,改一下 → AI:执行并交付
人:验收 → AI:还能再优化吗?
人:好,打包发到 GitHub
全程 10分钟,写了 4 个文件、2 个 Git 仓库、1 个 Hermes Skill——0 行代码是我手敲的。
不是我厉害,是工作流对了。
你负责的部分:
- 定义问题:升级 Hermes 会被覆盖
- 选择方案:用脚本备份→更新→恢复
- 把关每步:对,就这样;不对,换个方向
- 验收结果:跑一遍确认没问题
AI 负责的部分:
- 写脚本:
update-hermes.sh - 写 Skill:
hermes-update-protector - 管理 Git 仓库
- 写文档:中英双语 README
三、从手动到自动:三步进化
第 1 步:手动备份(原始人阶段)
每次更新前:
cd ~/AppData/Local/hermes/hermes-agent
git diff toolsets.py > /tmp/toolsets.patch
cp -r tools/windows_cu/ /tmp/
git stash
hermes update
git apply /tmp/toolsets.patch
cp -r /tmp/windows_cu/ tools/
问题:漏文件、忘备份、patch 冲突了不知道怎么搞。太依赖记性。
第 2 步:shell 脚本(自动化阶段)
把上面的流程写成脚本 update-hermes.sh:
检测修改 → 备份 patch + 新文件 → stash
→ hermes update → 恢复 patch + 新文件
→ 清理 → 问你要不要重启 gateway
完美解决了"漏文件"的问题。
第 3 步:Hermes Skill(智能化阶段)
把脚本的逻辑封装成 Hermes Skill。从此只需说一句话:
“更新 Hermes”
AI 自动加载 Skill → 检测修改 → 备份 → 更新 → 恢复 → 汇报结果。
从手动到一句话,这就是 AI 工作流的威力。
四、实战演示:以 windows_cu 工具为例
就拿这次开发的 windows_computer_use 工具来说。
这个工具让你可以用自然语言控制 Windows 桌面——截图、点击、打字、滚轮,全部通过 AI 调度。
4.1 开发阶段
我:把 Hermes 的 windows_cu 工具提取成独立项目
AI:创建仓库结构,调整 import 路径,写 CLI 入口
我:项目的 README 要中英双语
AI:已更新
我:再加个更新保护脚本
AI:写好 update-hermes.sh
我:封装成 Hermes Skill
AI:已创建
整个过程,我负责说我要什么,AI 负责写代码。
4.2 验证阶段
把脚本跑一遍:
=== Hermes Update Protector ===
📦 备份新增文件...
📝 导出修改文件的 patch...
🚀 执行 hermes update...
4695d2716 → 5f91b1a48(135 个新提交)
🔧 恢复自定义修改...
✅ tools/windows_cu/ 已恢复
✅ tools/windows_cu_tool.py 已恢复
✅ toolsets.py patch 已应用
✅ cli.py patch 已应用
✅ kanban_db.py patch 已应用
✅ tools_config.py patch 已应用
✅ 更新完成!
135 个新提交,0 行代码丢失。
4.3 这句最爽
更新完一查:
$ git status --short
M cli.py
M hermes_cli/kanban_db.py
M hermes_cli/tools_config.py
M toolsets.py
?? tools/windows_cu/
?? tools/windows_cu_tool.py
所有修改都在。
五、最终成果
两个开源项目:
| 项目 | 说明 |
|---|---|
| hermes-computer-use-for-win | Windows 桌面自动化工具(pyautogui + UIA) |
| hermes-update-protector | Hermes 安全更新保护器(带中英双语 README) |
后者就是一个 Hermes Skill,装上去后说"更新 Hermes"就能安全升级。
安装方式:
git clone https://github.com/xing006/hermes-update-protector.git
cd hermes-update-protector
bash update-hermes.sh # 一键更新
# 安装为 Hermes Skill
cp SKILL.md ~/AppData/Local/hermes/skills/devops/hermes-update-protector/SKILL.md
# 然后在 Hermes 中说"更新hermes"即可
六、总结:AI 时代的程序员工作流
回看这次经历,最让我感慨的不是写了个多牛逼的脚本,而是工作方式的转变:
| 传统方式 | AI 协作方式 |
|---|---|
| 自己写所有代码 | 提需求,AI 写代码 |
| 改完手动测 | 一句话让 AI 跑 |
| 文档最后补 | AI 实时生成 |
| 更新靠记得 | AI 自动备份恢复 |
| 一个人闷头搞 | 人+AI 双引擎 |
这个 skill 本身,就是这种工作方式的产物——我定义问题,AI 给方案,我选一个,AI 执行落地。
代码写得好的程序员很多,但懂得让 AI 帮你写代码的程序员,效率是数量级的差异。
最后说一句:别怕改核心代码,怕的是改了忘了备份。现在不用怕了。
合规声明: 本文所述内容均为个人技术实践分享,不涉及任何商业机密、敏感信息或违法内容。文中引用的 Hermes Agent 为 MIT 开源项目,所有修改均遵循其开源协议。所分享的代码和工具仅供学习交流使用。
更多推荐



所有评论(0)