When to Use This Skill
| Use this skill when... | Use the alternative when... |
|---|---|
| Fixing failing CI checks on an existing PR (lint, type, test) | Use git-pr-feedback to address reviewer comments rather than CI failures |
| Reproducing red GitHub Actions runs locally before pushing corrections | Use gh-workflow-monitoring to passively watch a run rather than fix it |
| Auto-applying lint/format/type fixes and pushing them to the PR branch | Use git-conflicts when the failure is a merge conflict, not a check |
| Diagnosing why a pull request is red after a push | Use git-triage to sweep many PRs at once instead of fixing one |
Context
- Repo: !
git remote -v - Current branch: !
git branch --show-current - Git status: !
git status --porcelain=v2 --branch - Staged changes: !
git diff --cached --numstat - Unstaged changes: !
git diff --numstat - Recent commits: !
git log --format='%h %s' --max-count=5
Parameters
Parse these parameters from the command (all optional):
$1: PR number (if not provided, detect from current branch)--auto-fix: Automatically apply fixes for common issues--push: Push fixes to the branch after committing
Your task
Analyze and fix failing PR checks.
Step 1: Determine PR
- Get PR number from argument or detect from current branch
- Fetch PR status using
gh pr checks <pr-number>or mcp__github__pull_request_read
Step 2: Analyze Failures
- Identify failing checks from PR status
- Research error messages in workflow logs
- Categorize failures:
- Linting errors
- Type errors
- Test failures
- Build errors
Step 3: Reproduce Locally
- Run tests locally to reproduce issues
- Run linters to check for style issues
- Run type checker if applicable
Step 4: Apply Fixes (if --auto-fix)
Based on failure type:
-
Linting errors: Run appropriate linters/formatters
# Python uv run ruff check --fix . uv run ruff format . # JavaScript/TypeScript npm run lint -- --fix -
Type errors: Fix type annotations or implementations
-
Test failures: Fix failing tests or implementation bugs
Step 5: Commit and Push (if --push)
- Stage fixes:
git add -u - Commit:
git commit -m "fix: resolve CI failures" - Push:
git push
Step 6: Verify
- Re-run checks locally to verify fixes
- Monitor PR checks after push
Common Fix Patterns
| Check Type | Common Fixes | |------------|--------------| | Linting | Run formatter, fix import order | | Types | Add type annotations, fix mismatches | | Tests | Fix assertions, update snapshots | | Build | Fix imports, resolve dependencies |
See Also
- github-actions-inspection skill for workflow analysis
- git-branch-pr-workflow skill for PR patterns