SuperAPI AI 工具集

forge-guard

部署与运维

查看项目

更新于 10-18 05:02

技能介绍

forge-guard 是一个面向拉取请求(PR)的无人值守守卫流程,用于将处于“已推送”状态的开放 PR 推进到“人类可以查看”的 review-ready 状态,过程中不向用户提问。

用途

  • 自动推进 PR 到可供人工审阅的阶段,减少人工盯守。
  • 在等待 CI 和同行评审期间,自动执行质量检查并处理反馈。
  • 将无法自动决策的问题保留给人类。

主要能力

  • 定位 PR:接受 PR 编号或 URL($ARGUMENTS),省略时从当前分支自动检测;支持附加上下文(如 -- skip the security pass)和 --max-rounds <n> 覆盖项目设置。
  • 读取配置:读取项目 ## Unattended Shipping 部分中的同行评审人、安全敏感路径、最大轮数。
  • 简化检查:若运行时提供简化技能(如 Claude Code 的 /simplify),则对分支差异调用;否则按 review-delegation 使用限定清单。
  • 安全检查:当 PR 带安全标签或差异涉及安全敏感路径时触发;若运行时提供安全审查技能(如 /security-review)则调用,否则执行 Security & Correctness 深度检查。
  • 质量门禁与推送:按无人值守规则分类处理检查发现,运行一次项目质量门禁,提交并推送,使 CI 与同行评审看到同一版本。
  • 等待信号:先请求同行评审以与 CI 等待重叠;用 gh pr checks --watch 阻塞等待 CI,总等待上限 60 分钟;用有界 shell 循环等待推送后的同行评审(约 15 分钟)。
  • 决策与反应:每轮先检查终止条件(review-ready 或 needs-human),否则处理 CI 失败(读取失败日志、修复、跑门禁、提交推送)或未处理评论(调用 forge-address-pr-feedback --unattended)。

使用方式

  • 调用形式包括:/forge-guard、/forge-guard 123、/forge-guard 123 --max-rounds 2 -- treat performance comments as deferrable。
  • 依赖 gh CLI 与 git;每一步 git 命令均假定处于 PR 分支(必要时 gh pr checkout)。
  • 通过状态上报机制报告当前状态(reviewing、waiting、addressing 等)。

适用场景

  • 希望 PR 在无人值守下完成质量检查、CI 修复和评审反馈回应的开发流程。
  • 已配置同行评审人和无人值守发布规则的项目。

限制与边界

  • 不会合并、强推或关闭 PR。
  • 轮数、等待时间、轮询间隔均有上限;卡住时以 needs-human 结束而非无限循环。
  • 需要人类决策的评论线程不再阻塞等待,但会使结果为 needs-human。
  • 同行评审信号在未配置评审人、等待超时但已有推送前他人评审等情况下可视为满足,并在总结中注明回退。
  • 具体运行环境支持哪些内置技能(如 /simplify、/security-review)取决于运行时,未提供时使用替代流程。