Keep Loops RunningLoops is going viral and we need your help to keep the project free and alive.

loops!
BrowseSign in
Back to loops
CI
manual
CursorClaude Code

Fix CI Until Green

Fetch the latest failed CI run, reproduce the failure locally, fix it, and repeat until checks pass.

2.1k views1.4k installs

by loops!

Use loop copies the kickoff. Share copies the loop link. Open in Cursor / Claude Code only pre-fill that prompt — they do not install hook files. Download loop saves a README and kickoff into .cursor/loops/fix-ci-until-green/ — no hooks required. How it works

Guardrails
Hardened
Anti-gaming rules
Rules the agent must follow so it cannot cheat the exit condition.
  • Do not modify the check command or exit criteria to force success
  • Do not skip, disable, or bypass checks to pass the exit condition
  • If stuck after several iterations, stop and report blockers instead of gaming metrics
How to run this loop
Prompt only
Run “Fix CI Until Green” in your agent
Deeplinks and “Open in Cursor” only paste the kickoff prompt. They do not install hook files — your agent cannot tell whether files are on disk until you add them yourself.

Two separate pieces

  • Kickoff prompt — tells the agent the goal, check command, exit condition, and how to self-pace between passes.
  1. 1

    Copy or open the kickoff prompt

    Click Use loop to copy the kickoff into your clipboard. Open in Cursor and Open in Claude Code only open the agent with that prompt — they do not configure automation for you.

  2. 2

    Paste into your coding agent

    Start a chat in Cursor, Claude Code, Codex, or any agent. Paste the kickoff. The prompt includes the goal, iteration limit, shell check, and first step.

  3. 3

    Agent self-paces until done

    The agent runs the loop: act → run check command → read output → repeat until the exit condition is met or max iterations is reached. No install step is required for prompt-only loops.

Full guide with Cursor /loop notes: How to install loops

manual trigger
CI
Manual start
Fetch failed run
Reproduce locally
Apply fix
Push and verify
Latest CI run conclusion is success
Rendering diagram…
Steps
What the agent does on each pass.

1. Fetch failed run

Use gh to find the latest failed CI run on this branch. Pull logs for the failing job.

gh run list --branch $(git branch --show-current) --status failure --limit 1

2. Reproduce locally

Run the failing CI step locally (test, lint, build). Confirm you can reproduce the error.

3. Apply fix

Fix the root cause with a minimal diff. Avoid unrelated refactors.

4. Push and verify

Push the fix and wait for CI. Re-check status before the next iteration.

gh run list --branch $(git branch --show-current) --limit 1 --json conclusion -q '.[0].conclusion'
Kickoff prompt
Copy this into your coding agent to start the loop.
Start the "Fix CI Until Green" loop.

Goal: latest CI run on this branch passes
Max iterations: 8
Between iterations run: gh run list --branch $(git branch --show-current) --limit 1 --json conclusion -q '.[0].conclusion'
Exit when: latest run conclusion is success

Step 1: Find the latest failed CI run, read logs, reproduce locally, fix root cause, push, and verify.

Self-pace this loop. After each iteration, run the check command, read the output, and only continue if the exit condition is not met. Stop when the exit condition passes or max iterations is reached. Give a short status update each pass.

Related loops

CI
manual
3.4k2k
Implement on a branch, run tests, push, open a PR, wait for CI, and loop until checks pass and the PR is ready to merge.

Start the "Ship PR Until Green" loop. Goal: PR is open with all CI checks passing Max iterations: 10 Between iterations run: gh pr checks Exit when: all PR checks are success Step 1: Implement the change, test locally, push, open PR, and fix CI until green. Self-pace this loop. After each iteration, run the check command, read the output, and only continue if the exit condition is not met. Stop when the exit condition passes or max iterations is reached. Give a short status update each pass.

Claude CodeCursorCodex
pr
ci
ship
continuous-claude
by loops!
View
CI
interval
2k1.2k
Poll CI on an interval, investigate failures when checks go red, and push fixes until green.

/loop 5m Start the "CI Failure Watcher" loop. Goal: latest CI run on this branch is green. Max iterations: 12. Between iterations run: gh run list --branch $(git branch --show-current) --limit 1 Exit when: latest run conclusion is success. Step 1: Check CI status. If failed, read logs, fix root cause, verify locally, and push if needed.

CursorClaude Code
ci
github
devops
by loops!
View
Testing
manual
Hardened
1.8k1.3k
Run your test suite, fix the smallest root cause on failure, and repeat until every test passes.

Start the "Test Until Green" loop. Goal: all tests pass Max iterations: 10 Between iterations run: npm test Exit when: tests exit 0 Step 1: Run tests. If there are failures, fix the smallest root cause, then repeat. Self-pace this loop. After each iteration, run the check command, read the output, and only continue if the exit condition is not met. Stop when the exit condition passes or max iterations is reached. Give a short status update each pass.

CursorClaude Code
testing
tdd
ci
by loops!
View