mcpField
L
loop-on-ci

loop-on-ci

github.com/cursor测试与质量14.5k2.2k 次安装今天更新
代码仓库

关于 loop-on-ci

用于监控拉取请求检查、诊断失败并持续迭代,直到所需 CI 检查通过的编码技能。它使用 `gh pr checks` 查看拉取请求关联的完整检查集。

主要功能

  1. 01检查全部拉取请求状态
  2. 02监控待处理检查
  3. 03修复前诊断失败原因
  4. 04每次推送后重新检查
  5. 05避免绕过钩子

适用场景

  1. 01跟踪拉取请求的 CI 状态
  2. 02排查失败或不稳定的检查
  3. 03确认推送后检查通过

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/cursor/plugins --skill loop-on-ci

安装后在 Claude Code 中输入/loop-on-ci确认已加载。

详细介绍

CI 循环

触发条件

需要监控一个分支或拉取请求,并持续处理 CI 失败,直到所有必需检查都通过。

使用 gh pr checks 作为唯一可信来源。它包含所有关联到 PR 的检查,而 gh run list 只涵盖 GitHub Actions。

工作流

  1. 查找当前分支对应的 PR。
  2. 等待之前先检查当前 PR 的检查状态。
  3. 如果已有检查失败,先诊断这些失败。
  4. 如果检查仍在等待中,使用 gh pr checks --watch --fail-fast 进行监控。
  5. 每次推送后,重新检查 PR 的完整检查集,并重复此流程,直到所有检查通过。

命令

# Resolve the active PR
gh pr view --json number,url,headRefName

# Inspect all attached checks
gh pr checks --json name,bucket,state,workflow,link

# Watch pending checks and fail fast
gh pr checks --watch --fail-fast

# GitHub Actions logs, when the failing check links to a GHA run
gh run view <run-id> --log-failed

防护措施

  • 尽可能针对单个失败原因进行修复。
  • 不要绕过钩子(--no-verify)来强行推进。
  • 如果失败明显与 PR 无关,且在 main 上似乎已修复,请合并最新的 main,而不是给 PR 添加无关修复。
  • 如果失败具有不稳定性,只重试一次,并报告不稳定证据。
  • 每次推送后都重新运行 gh pr checks --json name,bucket,state,workflow,link;检查集可能会发生变化。

输出

  • 当前 CI 状态
  • 失败摘要和已应用的修复
  • 检查全部通过后的 PR URL

评论

支持 Markdown