# GitHub Actions Debugger

Analyzes GitHub Actions failures and finds their root causes.

- Repository: https://github.com/ykdojo/claude-code-tips (10298 stars)
- Category: DevOps
- License: see repository
- Last updated: 2026-09-25
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add ykdojo/claude-code-tips --skill gha -g -a claude-code -y`
Codex: `npx skills add ykdojo/claude-code-tips --skill gha -g -a codex -y`
Cursor: `npx skills add ykdojo/claude-code-tips --skill gha -g -a cursor -y`
Gemini CLI: `npx skills add ykdojo/claude-code-tips --skill gha -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add ykdojo/claude-code-tips`

## Description

Analyze GitHub Actions failures and identify root causes

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

Investigate this GitHub Actions URL: $ARGUMENTS

Use the gh CLI to analyze this workflow run. Your investigation should:

1. **Get basic info & identify actual failure**:
   - What workflow/job failed, when, and on which commit?
   - CRITICAL: Read the full logs carefully to find what SPECIFICALLY caused the exit code 1
   - Distinguish between warnings/non-fatal errors vs actual failures
   - Look for patterns like "failing:", "fatal:", or script logic that determines when to exit 1
   - If you see both "non-fatal" and "fatal" errors, focus on what actually caused the failure

2. **Check flakiness**: Check the past 10-20 runs of THE EXACT SAME failing job:
   - IMPORTANT: If a workflow has multiple jobs, you must check history for the SPECIFIC JOB that failed, not just the workflow
   - Use `gh run list --workflow=<workflow-name>` to get run IDs, then `gh run view <run-id> --json jobs` to check the specific job's status
   - Is this a one-time failure or recurring pattern for THIS SPECIFIC JOB?
   - What's the success rate for THIS JOB recently?
   - When did THIS JOB last pass?

3. **Identify breaking commit** (if there's a pattern of failures for the specific job):
   - Find the first run where THIS SPECIFIC JOB failed and the last run where it passed
   - Identify the commit that introduced the failure
   - Verify by checking: does THIS JOB fail in ALL runs after that commit? Does it pass in ALL runs before?
   - If verified, report the breaking commit with high confidence

4. **Root cause**: Based on logs, history, and any breaking commit, what's the likely cause?
   - Focus on what ACTUALLY caused the failure (not just any errors you see)
   - Verify your hypothesis against the logs and failure logic

The rest: https://github.com/ykdojo/claude-code-tips/blob/HEAD/skills/gha/SKILL.md
