agent-glovebox: Skill for Claude Code

.claude/skills/ci-triage/SKILL.md

ci-triage is a skill for Claude Code from AlexanderMattTurner/agent-glovebox. It costs 201 tokens per session (9,792 once invoked), scanned A, original, Apache-2.0.

A guide for investigating failed continuous-integration checks, the automated builds and tests that run for a project.

In plain words
What is it for?
Use it to diagnose failing pull-request checks, test jobs, webhooks, and other CI status reports.
Why use it?
It prevents red, cancelled, flaky, or timed-out checks from being dismissed without reading the actual failure and finding its cause.

Skill for Claude Code

Written for Claude Code: PostToolUse hook event. Also seen: mentions CLAUDE.md; mentions subagents; mentions Claude Code.

This is AlexanderMattTurner/agent-glovebox's own configuration. It tells Claude Code how to work on agent-glovebox itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything agent-glovebox configures →

Needs its repository: it runs a file that does not travel with it, so clone the repository first. The line is uv run .github/scripts/pr-status.py <pr#> # check status (works on both surfaces).

Reuse

Borrowing it

Nothing to install: this file belongs to AlexanderMattTurner/agent-glovebox. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/AlexanderMattTurner/agent-glovebox/main/.claude/skills/ci-triage/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/AlexanderMattTurner/agent-glovebox

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ci-triage

README.md
[![agentmods](https://agentmods.dev/badge/skills/alexandermattturner/agent-glovebox/ci-triage/github.svg)](https://agentmods.dev/skills/alexandermattturner/agent-glovebox/ci-triage)
Your own site
<a href="https://agentmods.dev/skills/alexandermattturner/agent-glovebox/ci-triage"><img src="https://agentmods.dev/badge/skills/alexandermattturner/agent-glovebox/ci-triage/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ci-triage

Your own site · 80×15
<a href="https://agentmods.dev/skills/alexandermattturner/agent-glovebox/ci-triage"><img src="https://agentmods.dev/badge/skills/alexandermattturner/agent-glovebox/ci-triage.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 201 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 9,792 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Data Exfiltration · line 112
    Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
    Fix: Verify the destination URL is trusted and necessary. Remove or replace with documented APIs. Ensure no secrets, tokens, or PII are transmitted.
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00201 $0.09792
Opus 5 $0.00101 $0.04896
Sonnet 5 $0.00040 $0.01958
Haiku 4.5 $0.00020 $0.00979

Measured 3d ago against content hash ad2ea2380f5f, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

ci-triage scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

**The helper cannot run where `gh` is 403, and there is NO script route there** — `api.github.com` refuses a direct `curl` through the agent proxy with the same 403, token or no token, so nothing a script can call reache
.claude/skills/ci-triage/SKILL.md · 137 lines

How it starts

The opening of the file, as written. The whole thing — 137 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Responding to a red check

The doctrine

A red check is a bug you have not diagnosed yet. Treat every failure as real and caused by the change in front of you until a read of the actual log proves otherwise. These dismissals are forbidden as opening assumptions: "infrastructure flake," "timeout," "unrelated," "pre-existing," "already broken on the base branch," "passes on my machine," "only fails on another OS/platform," "load," "transient," "not what I was asked." Each is a conclusion you must earn. "Flaky"/"external" is provable only by reading the log AND demonstrating the root cause is non-deterministic and outside the repo. A timeout/download/racy failure is a real defect (a test too slow or racy under parallelism, a missing retry/backoff), yours to fix at the root.

"Flake" is NEVER a license to ignore, skip, mute, xfail, or merely re-run a failure. Proving something is a flake does not close it, it OBLIGATES a root-cause fix (make the test deterministic, add the missing retry/backoff/timeout budget, pin the unstable input). Even when it is pre-existing and unrelated to your change, fix it in its own fix(test):/fix(ci): commit — "it was already flaky" is not an exemption.

A red that reaches a SECOND round is itself a defect in the red-fixing process. One round closes a red: the round that diagnoses it also pushes its fix, or pushes a branch update (a commit, or one PR-body lead sentence) saying exactly why one round cannot — a fix only CI hardware can validate, an external service down. When a red reaches round two without that recorded reason, first name why round one's response failed — a fix built on an unverified belief about a dependency, a log read that stopped at the symptom, a "flake" left without its root-cause fix — then fix THAT in the same session: sharpen this skill, the babysit-prs skill, or the babysitting code under .github/scripts/, so the class lands first-round.

Deduplicate before you fix, on whatever names the defect — the failing test's exact name, the red check's name, or the file the fix lands in — and search the ISSUE list as well as the PR list, because a multi-PR flake sweep is tracked by an issue and no PR search finds it. mcp__github__search_issues and mcp__github__search_pull_requests, both with owner/repo set and fields: ["number","state","title"] to drop the body and labels. gh pr list --search is GraphQL and 403s in a web session, and the REST search/issues path is blocked there as well, so the MCP tools are the only route that works on both surfaces. An OPEN tracking issue owns the item: add your row to it by EDITING it, and do not file a second issue. Then read the PR state: an OPEN match is the one case you hand back, as one line naming that PR and no fresh investigation; a MERGED one means you re-run the test against current origin/main before touching anything; a CLOSED one covers nothing, so the fix is yours.

Read the full file on GitHub · 137 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago Changed · +2 lines ad2ea2380f5f
  2. 4d ago Changed · +2 lines 523657a30e90
  3. 5d ago Changed · +6 lines b938a6fa3852
  4. 6d ago Changed · +2 lines 888cd8668809
  5. 7d ago Changed · +9 lines 9d3f952eb569
  6. 11d ago First seen · 116 lines · 201 tokens per session scan A 07f22e9ef66f

Subscribe to this mod's changes

ci-triage is a skill published in the GitHub repository AlexanderMattTurner/agent-glovebox (62 stars, last pushed yesterday), licensed Apache-2.0. It adds 201 tokens to every session and 9,792 once invoked, about $0.0010 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

Verification & Quality Assurance

Comprehensive truth scoring, code quality verification, and automatic rollback system with 0.95 accuracy threshold for ensuring high-quality agent outputs and codebase reliability.

ruvnet/RuView · 36 tokens

smoke-test

Health smoke tests + auto-fix for gbrain installs (and OpenClaw services when present). Run after machine/container restarts or whenever something seems broken. Tests critical services, auto-fixes bounded local issues, and reports worker topology without starting daemons. Extensible via user-defined test scripts in…

garrytan/gbrain · 79 tokens

mcore-create-issue

Investigate a failing GitHub Actions run or job and create a GitHub issue for the failure.

NVIDIA/skills · 26 tokens

debug-task

Diagnose and fix moon tasks that are broken, misconfigured, or behaving unexpectedly. Use this skill when a moon task is failing, not running, skipped, hanging, producing stale or wrong output, cached when it shouldn't be, re-running every time when it should be cached, or when outputs are empty or missing after a…

moonrepo/moon · 231 tokens

operating-github-ci-fixer

Use when the user asks OpenSRE to fix failing GitHub CI, GitHub Actions checks, failing pull request checks, a broken PR branch, or CI on a named branch such as main.

Tracer-Cloud/opensre · 48 tokens

ci-triage

Classify CI failures — distinguish clear regressions from infra flakes and security-test failures. Produces structured failure reports.

cobusgreyling/loop-engineering · 28 tokens