用途:在推送 PR 后自动完成等待 CI、检查合并冲突、处理 CodeRabbit 评论的反馈闭环,减少手动步骤。
主要能力:以固定间隔轮询 PR 状态,获取 CI 检查总数/通过/失败/运行中数量、是否存在合并冲突、CodeRabbit 检查状态与内联评论数,并据此判断是否全部通过。仅当无冲突、无 CI 失败、无运行中检查、CodeRabbit 非 pending 且非 none、无未解决评论且至少存在一个 CI 检查时才算全绿。
按优先级逐类修复:先解决合并冲突(调用 /fix-conflict),再处理 CI 失败(/fix-ci,需等运行中检查结束),最后处理 CodeRabbit 评论(/fix-review,仅在检查状态为 pass 且 CI 通过时)。每轮只修一类,修改推送后回到轮询。
使用方式: /pr-guardian /pr-guardian --interval 3 /pr-guardian --max-iterations 10 默认间隔 5 分钟、最多 20 轮。前置条件为已安装并认证 gh CLI、当前分支有打开的 PR。内部通过 bash <skill-path>/scripts/poll_pr_status.sh 获取状态 JSON。
轮询间隔内若检查运行中、CodeRabbit 处于 pending 或 none、或首轮尚无检查,则等待而不修复。退出条件:全绿、达到最大迭代、或同一失败连续 3 次(提示转为人工)。
限制:依赖 gh CLI 与既有 /fix-conflict、/fix-ci、/fix-review 技能,本身不重新实现其逻辑;每轮只处理一类问题;各修复技能自行负责提交与推送;CodeRabbit 评论必须等审查完成后再处理;具体收费、平台支持范围等暂未提供。