给 Hermes Agent 加上 GitHub Release 自动订阅更新:Argus + Webhook 全自动链路

起因:手动检查版本更新的日子我的主服务器(腾讯云,下文叫 tc)上跑着 Hermes Agent(一个开源 AI Agent 框架),它通过飞书和我日常交流。为了让回复以飞书卡片形式展示,我额外安装了一个第三方插件 hermes-feishu-streaming-card(HFC),它通过 monkey-patch 的方式把 Hermes 的纯文本回复改写成交互式卡片。 这套组合有一个很烦的维护成本:每次都要手动检查有没有新版本。 某天我发现 HFC 出了新版本(4.2.4 → 4.2.8),手动执行了升级: /usr/local/lib/hermes-agent/venv/bin/python -m pip install --upgrade \ "git+https://github.com/baileyh8/hermes-feishu-streaming-card.git" \ --index-url https://pypi.org/simple 升级本身不难,但暴露了两个痛点: 不检查就不知道有更新——HFC 三天连发了 4 个小版本(4.2.5 ~ 4.2.8),全靠我隔三差五想起来去 GitHub 看一眼 更隐蔽的坑:hermes update 会重置本地代码。8 月 4 日我执行过一次 Hermes 本体更新,结果把之前手工修复的飞书文件发送 bug(一个本地 git apply 的补丁)整个冲掉了——上游 main 分支至今没修这个 bug。更新完功能悄悄变坏,这才是最可怕的。 于是决定:把"检查更新"和"执行更新"都自动化。 先搞清楚:GitHub Release 有哪几种订阅方式在动手之前,先梳理一下监控一个 GitHub 项目有没有发新 Release 的所有可行方案: 方案 实时性 能触发流程? 适用场景 GitHub Watch → Custom → Releases 实时邮件 ❌ 只通知 最省事,但邮件易被淹没 RSS(/releases.atom) 分钟级 ❌ 只通知 阅读器订阅 gh release list + cron 取决于 cron ✅ 可扩展 自己搭轮询 GitHub Webhook(release 事件) 实时 ✅ 直接触发 只能配在自己拥有的仓库上 第三方 SaaS(newreleases.io 等) 分钟级 ⚠️ 部分支持 不想自托管 Argus 等自托管监控器 分钟级 ✅ 轮询到变化后主动发 Webhook 别人仓库的最佳解 关键限制:GitHub 的 Webhook 只能由仓库所有者在仓库 Settings 里配置。我想监控的 NousResearch/hermes-agent 和 baileyh8/hermes-feishu-streaming-card 都不是我的仓库,GitHub 根本不会把它们的 release 事件推送给我。 ...

2026年08月06日 · 6 min · Cassius0924