davila7/claude-code-templates/iterate-pr

Trust tier 3
  • community
Source check pending

Checking that the SKILL.md file is still in the repository.

Iterate on a PR until CI passes. Use when you need to fix CI failures, address review feedback, or continuously push fixes until all checks are green. Automates the feedback-fix-push-wait cycle.

Install

npx vskill@latest install davila7/claude-code-templates/iterate-pr

SKILL.md

Iterate on PR Until CI Passes

Continuously iterate on the current branch until all CI checks pass and review feedback is addressed.

Requires: GitHub CLI (gh) authenticated and available.

Process

Step 1: Identify the PR
bash
gh pr view --json number,url,headRefName,baseRefName

If no PR exists for the current branch, stop and inform the user.

Step 2: Check CI Status First

Always check CI/GitHub Actions status before looking at review feedback:

bash
gh pr checks --json name,state,bucket,link,workflow

The bucket field categorizes state into: pass, fail, pending, skipping, or cancel.

Important: If any of these checks are still pending, wait before proceeding:

  • sentry / sentry-io
  • codecov
  • cursor / bugbot / seer
  • Any linter or code analysis checks

These bots may post additional feedback comments once their checks complete. Waiting avoids duplicate work.

Step 3: Gather Review Feedback

Once CI checks have completed (or at least the bot-related checks), gather human and bot feedback:

Review Comments and Status:

bash
gh pr view --json reviews,comments,reviewDecision

Inline Code Review Comments:

bash
gh api repos/{owner}/{repo}/pulls/{pr_number}/comments

PR Conversation Comments (includes bot comments):

bash
gh api repos/{owner}/{repo}/issues/{pr_number}/comments

Look for bot comments from: Sentry, Codecov, Cursor, Bugbot, Seer, and other automated tools.

Step 4: Investigate Failures

For each CI failure, get the actual logs:

bash
# List recent runs for this branch
gh run list --branch $(git branch --show-current) --limit 5 --json databaseId,name,status,conclusion
# View failed logs for a specific run
gh run view <run-id> --log-failed

Do NOT assume what failed based on the check name alone. Always read the actual logs.

Step 5: Validate Feedback

For each piece of feedback (CI failure or review comment):

  1. Read the relevant code - Understand the context before making changes
  2. Verify the issue is real - Not all feedback is correct; reviewers and bots can be wrong
  3. Check if already addressed - The issue may have been fixed in a subsequent commit
  4. Skip invalid feedback - If the concern is not legitimate, move on
Step 6: Address Valid Issues

Make minimal, targeted code changes. Only fix what is actually broken.

Step 7: Commit and Push
bash
git add -A
git commit -m "fix: <descriptive message of what was fixed>"
git push
Step 8: Wait for CI

Use the built-in watch functionality:

bash
gh pr checks --watch --interval 30

This waits until all checks complete. Exit code 0 means all passed, exit code 1 means failures.

Alternatively, poll manually if you need more control:

bash
gh pr checks --json name,state,bucket | jq '.[] | select(.bucket != "pass")'
Step 9: Repeat

Return to Step 2 if:

  • Any CI checks failed
  • New review feedback appeared

Continue until all checks pass and no unaddressed feedback remains.

Exit Conditions

Success:

  • All CI checks are green (bucket: pass)
  • No unaddressed human review feedback

Ask for Help:

  • Same failure persists after 3 attempts (likely a flaky test or deeper issue)
  • Review feedback requires clarification or decision from the user
  • CI failure is unrelated to branch changes (infrastructure issue)

Stop Immediately:

  • No PR exists for the current branch
  • Branch is out of sync and needs rebase (inform user)

Tips

  • Use gh pr checks --required to focus only on required checks
  • Use gh run view <run-id> --verbose to see all job steps, not just failures
  • If a check is from an external service, the link field in checks JSON provides the URL to investigate

Security

  • Security scanPassed, 90 of 100Pattern checks on the skill's files.
  • Model reviewPassed

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

Repository stars
23,642
Repository forks
2,279
Repository npm downloads, 7 days
6,236
7-day trend score
71

Stars and forks are for the whole GitHub repository, not this skill alone. Downloads are for the repository's npm package. Refreshed 27 Mar 2026, 7 months ago.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/davila7/claude-code-templates/iterate-pr/badge)](https://verified-skill.com/skills/davila7/claude-code-templates/iterate-pr)

Something wrong with this skill or its page? Tell us.