ci:status

SkillDev tools

Check PR CI status - all checks, failures, test results, and artifacts

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the ci:status skill

What this skill tells your AI

The instructions your AI receives, as published by rossoctl/rossoctl in .claude/skills/ci:status/SKILL.md and read by ahel’s review.

Check the current CI status for a PR and create task items for any failures.

Context-Safe Execution (MANDATORY)

CI log output MUST go to files. gh pr checks is small and OK inline. gh run view --log-failed and artifact downloads MUST redirect:

export LOG_DIR="${LOG_DIR:-${WORKSPACE_DIR:-/tmp}/rossoctl-ci}"
mkdir -p "$LOG_DIR"

# Small output OK inline:
gh pr checks <PR-number>

# Large output MUST redirect:
gh run view <run-id> --log-failed > $LOG_DIR/ci-run-<run-id>.log 2>&1; echo "EXIT:$?"
# Analyze in subagent: Task(subagent_type='Explore') with Grep on the log file

When to Use

  • After pushing changes to a PR
  • When asked "what's the CI status?"
  • Before deciding whether to push more changes
  • After CI completes to summarize results

Workflow

1. Get PR Status

gh pr checks <PR-number>

2. Summarize Results

Present as a table:

CheckStatusDetails
CodeQLpass/failN alerts
Deploy & Test (Kind)pass/failN passed, N failed
E2E HyperShiftpass/fail/pendingN passed, N failed
Buildpass-
Lintingpass-

3. For Failures - Get Details

# Kind CI test results
gh run download <run-id> -n e2e-test-results -D /tmp/ci-results
grep -oE 'errors="[0-9]+" failures="[0-9]+" skipped="[0-9]+" tests="[0-9]+"' /tmp/ci-results/e2e-results.xml

# Failed test names
grep '<failure' /tmp/ci-results/e2e-results.xml

# HyperShift logs
gh run view <run-id> --log-failed | tail -30

# CodeQL alerts
gh api repos/<owner>/<repo>/check-runs/<check-id>/annotations --jq '.[] | {path, line: .start_line, message: .message[:100]}'

4. Create Tasks for Failures

For each distinct failure, create a task:

TaskCreate: "<worktree> | <PR> | <topic> | RCA | <failure description>"

Task Tracking

On invocation:

  1. TaskList - check for existing CI-related tasks
  2. TaskCreate for each new failure found
  3. Link to plan doc if failures relate to planned work
  4. Metadata: plan: "ad-hoc", runner: "main-session"

Troubleshooting

CI check not appearing

  • Push may not have triggered the workflow
  • Check workflow trigger conditions in .github/workflows/
  • HyperShift E2E requires manual /test comment

Stale results

  • CI runs on the commit at push time, not current HEAD
  • Check headSha matches expected commit

Related Skills

  • ci:monitoring - Wait for and monitor running CI jobs
  • rca:ci - Root cause analysis of CI failures
  • tdd:ci - TDD iteration using CI as test environment

Signals

GitHub stars
300
Forks
107
Last commit
Sep 2026

ahel recommends instead

Advanced
Catalog kind
skill
Gateway key
ci-status-rossoctl
Source
github.com/rossoctl/rossoctl