# GitHub CI Fix Debugging

> Debug and fix failing GitHub PR checks by inspecting GitHub Actions logs, summarizing failure context, drafting fix plans, and implementing fixes after approval.

- Skill: `pramoddutta/github-ci-fix-debugging` (Agent Skill)
- Install (CLI): `npx skillmds@latest add pramoddutta/github-ci-fix-debugging`
- Raw SKILL.md: https://api.skillmd.com/api/skills/pramoddutta/github-ci-fix-debugging/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: PramodDutta (https://skillmd.com/u/pramoddutta)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/pramoddutta/github-ci-fix-debugging

---


# GitHub CI Fix Debugging

Use `gh` CLI to locate failing PR checks, fetch GitHub Actions logs for actionable failures, summarize the failure, propose a fix plan, and implement after explicit approval.

## Prerequisites

Authenticate with the GitHub CLI:

```bash
gh auth login  # Ensure repo + workflow scopes
gh auth status  # Verify authentication
```

## Workflow

### 1. Verify Authentication

```bash
gh auth status
```

If unauthenticated, ask the user to run `gh auth login` with repo + workflow scopes.

### 2. Resolve the PR

```bash
# Current branch PR
gh pr view --json number,url

# Or use a specific PR number
gh pr checks <pr-number>
```

### 3. Inspect Failing Checks

```bash
# List all PR checks with status
gh pr checks <pr> --json name,state,bucket,link,startedAt,completedAt,workflow

# For each failing check, get the run details
gh run view <run_id> --json name,workflowName,conclusion,status,url

# Fetch the logs
gh run view <run_id> --log
```

### 4. Scope Non-GitHub Actions Checks

- If `detailsUrl` is not a GitHub Actions run, label it as external
- Only report the URL for external providers (Buildkite, etc.)

### 5. Summarize Failures

For each failing check, provide:
- The failing check name
- The run URL
- A concise log snippet showing the actual failure
- Root cause analysis

### 6. Create a Fix Plan

Draft a concise plan including:
- What failed and why
- Proposed fix with specific file changes
- Impact assessment
- Request explicit approval before implementing

### 7. Implement After Approval

- Apply the approved plan
- Summarize diffs and changes made
- Run relevant tests locally if possible

### 8. Recheck Status

```bash
# After fixes, verify checks pass
gh pr checks <pr>
```

## Common CI Failure Patterns

### Test Failures
- Check test output for assertion errors
- Look for environment-specific issues
- Verify test data and fixtures

### Build Failures
- Check dependency versions and lockfiles
- Verify TypeScript/compilation errors
- Check for missing environment variables

### Lint/Format Failures
- Run linter locally to reproduce
- Apply auto-fix where possible
- Check for new rule violations

### Timeout Issues
- Identify slow tests or builds
- Check for infinite loops or deadlocks
- Consider increasing timeout or optimizing

