pr-loop 是用于与自动化 AI 代码审查机器人(如 gemini-code-assist、gemini-code-review 等)进行结对编程的自主循环模式技能。用途是让智能体反复推送代码、等待并轮询机器人审查意见与 CI 状态、按反馈修复、提交推送,再触发下一轮审查,直到 PR 干净。
主要能力与用法:依赖技能 github-pr-triage,必须与它一同安装,因为 pr-loop 直接使用其二进制、脚本与规则(包括 triage.dart、github_cli.dart)。触发场景为用户要求"loop with gemini"、"run the PR loop"、"iterate on review comments until clean"或执行 /goal pr-loop。核心辅助脚本为 dart run bin/pr_status.dart --dir .,据此判断是否可终止(can_terminate: true 要求所有检查成功、reviewThreads 零未解决、无进行中审查、本地与远程 HEAD 同步)。
使用前须通过 ask_question 工具确认目标分支与远程,并取得自主提交与推送的一揽子授权;禁止猜测目标分支或 PR。授权后可在该功能分支自主执行 git commit 与 git push。严格禁止直接提交或推送到 main、master 或受保护主干分支,禁止 git commit --amend,禁止任何形式的强推(git push -f 或 --force-with-lease)。每次审查处理后须用 triage.dart resolve 命令解决对应线程,并在设置定时器前验证 isResolved: true。有代码变更时须用 gh pr comment <pr_number> --body "/gemini review" 显式再次触发机器人;若某轮零代码变更(全部经 dart analyze 验证后判为不同意),不得再评论 /gemini review,应回复并解决所有线程后立即结束循环。
流程中包含渐进式判据:第 1 轮处理紧急 bug 与可靠的功能改进;第 2–5 轮拒绝可选小改动与微优化;第 6 轮起只处理紧急阻塞项;最多执行 10 轮。提前终止或切换任务时必须清理后台定时器(如 manage_task(Action="list") 与 kill),或以 kill <PID> 结束后台进程,避免孤立唤醒。此技能仅适用于 GitHub PR 与上述脚本环境,其他平台、收费标准及具体版本兼容性暂未提供。