用途:在创建 PR 后持续等待 CI 结果和 Copilot 代码评审,适合“land this PR”“watch this PR”“monitor CI”“wait for checks”等场景,避免智能体反复轮询。
主要能力:通过两个异步终端分别运行脚本,一个等待 Copilot 代码评审,一个等待 CI,任一终端退出后宿主异步终端运行时会在后续轮次通知智能体。等待 CI 的脚本在首次发现失败或取消的检查时立即退出;等待评审的脚本在启动时对刚请求的 Copilot 评审者重试一次。脚本每 30 秒轮询一次,因此事件发生到上报最多约 30 秒延迟,每次轮询会打印进度行。
必要用法:需 gh CLI 已安装并认证,且已有活动 PR(来自对话或用户提供的编号/URL)。先确定仓库:gh repo view --json nameWithOwner -q .nameWithOwner。然后在两个异步终端中运行:node <skill-dir>/scripts/wait-for-copilot-review.mts <pr-number> <owner/repo> 和 node <skill-dir>/scripts/wait-for-ci.mts <pr-number> <owner/repo>,均须用绝对路径。宿主需支持长时后台终端并在退出时通知智能体;否则需改为前台阻塞运行。
结果与后续:评审脚本可能返回 UNRESOLVED_COPILOT_REVIEW_COMMENTS、NEW_COPILOT_REVIEW、NO_PENDING_COPILOT_REVIEW 或 COPILOT_REVIEW_ERROR;CI 脚本可能返回 CI_PASSED、CI_FAILED 或 CI_ERROR。处理评审意见时可使用 gh api graphql 查询未解决线程并 resolveReviewThread 解决,只解决已处理的 Copilot 线程。CI 失败时先用 gh pr checks 和 gh run view --job <job-id> --log-failed 定位,判断是否属于 flake,仅在同时满足与改动无关、表现为基础设施问题、仓库已知 flaky 时才用 gh run rerun <run-id> --failed 重试一次。未经用户明确同意不得推送。
限制:本技能只等待 Copilot 评审,不会主动请求评审;未提供其他评审者、收费或平台信息。