mcpField

Fix CI Until Green

精选按需触发
持续集成最多 8 轮

关于 Fix CI Until Green

该循环由手动触发,用于处理当前分支上失败的 CI 运行。每一轮先取出最近一次失败的运行并找出原因,修复后推送,再查询最新运行的结论,最多执行 8 轮。

主要功能

  1. 01手动触发,最多 8 轮
  2. 02以 gh run list 返回的 conclusion 字段作为判定依据
  3. 03每轮都从最近一次失败的运行入手
  4. 04支持 Cursor 与 Claude Code

适用场景

  1. 01依赖升级后分支上的 CI 变红
  2. 02重构后构建或 lint 步骤失败
  3. 03合并主干后流水线出现新的报错
目标
当前分支上最新一次 CI 运行通过。
退出条件
最新一次运行的 conclusion 为 success 时停止;达到 8 轮仍未成功也停止。
每轮之间运行
gh run list --branch $(git branch --show-current) --limit 1 --json conclusion -q '.[0].conclusion'

启动提示词

在 Cursor / Claude Code 中粘贴运行,Agent 会按下面的步骤循环执行,直到满足退出条件。

prompt.md
开始运行“Fix CI Until Green”循环。
目标:当前分支上最新一次 CI 运行通过。
最大轮数:8。
第 1 步:获取失败的运行 — 列出当前分支最近一次失败的 CI 运行,确认失败的是哪个任务和步骤。 `gh run list --branch $(git branch --show-current) --status failure --limit 1`
第 2 步:定位并修复原因 — 阅读失败日志,找出根本原因并在本地修改代码,只处理与该失败相关的问题。
第 3 步:推送修改 — 提交修复并推送到当前分支,等待新的 CI 运行结束。
第 4 步:推送后验证 — 查询最新一次运行的 conclusion。若为 success 则结束;否则进入下一轮。 `gh run list --branch $(git branch --show-current) --limit 1 --json conclusion -q '.[0].conclusion'`
每轮之间运行:`gh run list --branch $(git branch --show-current) --limit 1 --json conclusion -q '.[0].conclusion'`
退出条件:最新一次运行的 conclusion 为 success 时停止;达到 8 轮仍未成功也停止。

步骤

每一轮按顺序执行;未满足退出条件会进入下一轮,最多重复 8 轮。

01
获取失败的运行

列出当前分支最近一次失败的 CI 运行,确认失败的是哪个任务和步骤。

$gh run list --branch $(git branch --show-current) --status failure --limit 1
02
定位并修复原因

阅读失败日志,找出根本原因并在本地修改代码,只处理与该失败相关的问题。

03
推送修改

提交修复并推送到当前分支,等待新的 CI 运行结束。

04
推送后验证

查询最新一次运行的 conclusion。若为 success 则结束;否则进入下一轮。

$gh run list --branch $(git branch --show-current) --limit 1 --json conclusion -q '.[0].conclusion'
未通过 → 下一轮满足条件即退出

支持的 Agent

可以直接运行这个 Loop 的编码 Agent。

Cursor
Claude Code

评论

支持 Markdown