Claude-skill-registry gh-workflow

Trigger and monitor GitHub Actions workflows, CI/CD pipelines, and automated builds. Use when running workflows, triggering CI, deploying via GitHub Actions, downloading artifacts, or checking workflow status on github.com

install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/gh-workflow" ~/.claude/skills/majiayu000-claude-skill-registry-gh-workflow && rm -rf "$T"
manifest: skills/data/gh-workflow/SKILL.md
source content

gh-workflow

Run GitHub workflows on github.com

Workflow

When the user asks to run a workflow:

  1. Verify git remotes and confirm commits are pushed (MANDATORY):
    • Check remotes:
      git remote -v | grep github.com
    • Get current commit:
      git rev-parse HEAD
    • Verify commit exists on remote:
      git fetch github && git branch -r --contains $(git rev-parse HEAD) | grep -q github/
    • If not found, push first:
      git push github HEAD:main
      (or appropriate branch name)
    • Quick check:
      git fetch github && git branch -r --contains HEAD | grep -q github/ || echo "WARNING: HEAD not pushed to github"
  2. Check the workflow file in
    .github/workflows/
    to understand its trigger type and inputs
  3. For
    workflow_dispatch
    workflows: trigger directly with
    gh workflow run
  4. For
    push
    workflows: push to the remote first, then the workflow runs automatically
  5. Use appropriate parameters based on the workflow's input definitions
  6. For testing/iteration with matrix builds: prefer x64 over arm64 (faster provisioning)
  7. Download workflow artifacts to verify outputs

Usage

# List workflows
GH_HOST=github.com gh workflow list

# Run a workflow
GH_HOST=github.com gh workflow run <workflow-name>

# Run with inputs
GH_HOST=github.com gh workflow run <workflow-name> -f key=value

# View recent runs
GH_HOST=github.com gh run list --workflow=<workflow-name>

# Watch a run
GH_HOST=github.com gh run watch <run-id>

# Download artifacts from a run
GH_HOST=github.com gh run download <run-id>

Testing matrix builds

For workflows with matrix builds, test with the fastest variant first:

  • Prefer x64 over arm64 (x64 runners provision faster)
  • Prefer ubuntu over macos (faster startup)
  • Use workflow inputs to target specific matrix cells if supported

Examples

# Run workflow_dispatch workflow with inputs
GH_HOST=github.com gh workflow run luajit.yml -f release_tag=2025.11.23 -f create_release=true

# Run workflow at specific commit (preferred - explicit and reproducible)
GH_HOST=github.com gh workflow run luajit.yml --ref $(git rev-parse HEAD)

# Or with explicit SHA
GH_HOST=github.com gh workflow run luajit.yml --ref abc1234

# Run without creating release (testing)
GH_HOST=github.com gh workflow run nvim.yml -f create_release=false

# Download artifacts from latest run
GH_HOST=github.com gh run list --workflow=luajit.yml --limit 1 --json databaseId --jq '.[0].databaseId' | xargs -I {} GH_HOST=github.com gh run download {}