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 开源项目,所有修改均遵循其开源协议。所分享的代码和工具仅供学习交流使用。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐