bmmmm/gh-comparereleaseii

GitHub: bmmmm/gh-comparereleaseii

一个 GitHub CLI 扩展,通过比照实际代码 diff 来自动核实 release notes 中描述的变更是否属实。

Stars: 0 | Forks: 0

# gh-comparereleaseii [comparereleaseii](https://github.com/bmmmm/comparereleaseii) 作为一个 GitHub CLI 扩展 —— 根据实际的代码 diff 来核实发布说明,并且依托于 你已经在 GitHub 授权方面信任的工具。 ## 安装 ``` $ gh extension install bmmmm/gh-comparereleaseii $ gh comparereleaseii restic/restic --tag v0.19.1 --html report.html ``` 环境要求:Node.js ≥ 24(该工具直接运行其 TypeScript 代码 —— 无需 构建,无需安装包),以及一个用于判定 LLM 结论的评判器 —— 可以是 [`claude`](https://code.claude.com) CLI、一个 `ANTHROPIC_API_KEY`,或者是任何 兼容 OpenAI 的本地服务器。如果没有这些,确定性阶段仍然会 运行。首次调用需要网络访问权限,并会向 扩展目录中拉取大约 1 MB 的数据。 ## 更新是如何工作的 —— 以及在你的机器上运行的内容 该扩展只是一个轻量级的封装。在首次使用时,它会将 [bmmmm/comparereleaseii](https://github.com/bmmmm/comparereleaseii) 克隆到 扩展自身的目录中,并检出记录在 [`tool.pin`](tool.pin) 中的**确切 commit** —— 永远不是分支,也永远不是可移动的 tag;这个封装 会拒绝任何非 40 位十六进制 commit hash 的内容。 这个 pin 会自动跟踪上游的发布版本:一个 [每日运行的 workflow](.github/workflows/bump-pin.yml) 会将最新的 comparereleaseii 发布版本解析为其 commit SHA,并提交新的 pin。你 可以通过常规的以下命令来获取更新: ``` $ gh extension upgrade comparereleaseii ``` 安全性特征 —— 以及坦诚的局限性: - **SHA-pin 锁定**:所运行的代码由 commit hash 标识,可以 在本仓库的历史记录中进行审计(`git log -- tool.pin`)。上游被移动或重定向的 tag 无法更改在你机器上运行的内容,并且在运行过程中绝对不会在后台进行任何更新 —— 只有 `gh extension upgrade` 才会移动 pin。 - **无第三方 actions**:版本更新 workflow 仅使用限定于仓库作用域的 `GITHUB_TOKEN` 来调用 GitHub API —— 没有外部 action,也没有涉及任何 secret。 - **无安装钩子,无依赖包**:在安装时不会执行任何内容; 该工具本身在 runtime 没有任何依赖。 - **坦诚说明局限性**:该 pin 会在无人值守的情况下跟踪上游的最新发布版本 —— 它是一个防篡改记录,而不是一个人工审查的关卡。如果 上游账户本身被攻破,恶意的发布版本会在一天加上你下次执行 `gh extension upgrade` 的时间内传播开来。这两个仓库 拥有相同的所有者,因此信任锚点就是那一个账户。 如果该工具的检出内容损坏,只需将其删除并重新运行 —— 这个 封装会重新拉取被 pin 住的 commit: ``` $ rm -rf ~/.local/share/gh/extensions/gh-comparereleaseii/tool ``` ## 支持 如果这个工具对你有帮助,你可以在 [ko-fi.com/bmabma](https://ko-fi.com/bmabma) 支持我们的开发。 ## 许可证 GPL-3.0-or-later —— 详见 [LICENSE](LICENSE)。
标签:AI辅助, C2, GitHub CLI 扩展, MITM代理, SOC Prime, 代码审查, 开发工具, 网络调试, 自动化