Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause.

Apache-2.0Auto-check passedDevelopment

Install CI Triage

skills CLI
$ npx skills add Mentra-Community/MentraOS --skill ci-triage -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Mentra-Community/MentraOS ci-triage --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Mentra-Community/MentraOS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/ci-triage .claude/skills/ci-triage && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ci-triage
GitHub stars
2.4k
Token cost
~582 tokens
SKILL.md length
251 words
Files
1
Skills in repo
11
Repo updated
First seen
Licence
Apache-2.0

At a glance

Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause.

  • Works in 7 steps: Resolve PR number → List failing checks → Classify each failure → …
  • The user pastes CI failures
  • SKILL.md covers Never paste… and Protocol
  • Calls gh

What it does

CI Triage is an agent skill from Mentra-Community/MentraOS. Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause. Use when the user pastes CI failures, asks why a PR is red, mentions failing checks, or says /ci.

Its SKILL.md is about 580 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Root cause analysis and Failing and flaky tests. It works with GitHub. The repository describes itself as: MentraOS is the leading smart glasses OS. See live captions, stream your view, talk to AI, and capture photos hands-free on compatible glasses. The licence is Apache-2.0.

When your agent uses it

  • The user pastes CI failures
  • Asks why a PR is red
  • Mentions failing checks

Example prompts

  • “/ci-triage”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Resolve PR number
  2. List failing checks
  3. Classify each failure
  4. Dedupe Actions runs
  5. Fetch bounded logs (max 3 runs)
  6. Root-cause analysis
  7. Reply format

What it can do on your machine

Read from SKILL.md and the folder at commit bc626e0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • gh

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use gh, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

CI Triage loads about 582 tokens when it runs. Until then it costs about 60 tokens; SKILL.md has 251 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~60
When it runs · the whole SKILL.md, loaded when a task matches
~582

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Mentra-Community/MentraOS at commit bc626e0, republished under its Apache-2.0 licence (© Mentra-Community). 251 words, ~582 tokens.

Download SKILL.mdSave it as .claude/skills/ci-triage/SKILL.md (or your agent's skills folder).
name
ci-triage
description
Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause. Use when the user pastes CI failures, asks why a PR is red, mentions failing checks, or says /ci.

CI failure triage

Never paste multi-thousand-line logs into chat

Summarize root causes. Cap every log fetch.

Protocol

1. Resolve PR number
  • Explicit arg from the user (e.g. /ci 523 or "PR 3502"), or
  • gh pr view --json number -q .number on the current branch.
2. List failing checks
bash
gh pr checks <n> --json name,link,workflow,bucket,state

Filter to entries where bucket == "fail".

Field name is workflow, not workflowName.

3. Classify each failure

For each failing check, test link against:

/\/actions\/runs\/(\d+)/
MatchMeaningNext step
YesGitHub Actions runExtract runId, go to step 4
NoExternal check (Cloudflare Pages, Vercel, Bugbot, etc.)Do not call gh run view. Carry forward as name + link + state only
4. Dedupe Actions runs

Multiple failing jobs can share one runId. Deduplicate by runId before fetching logs.

5. Fetch bounded logs (max 3 runs)

For each unique runId, stop after the first 3 distinct runs. Extra runs: list by check name only, with a note that more failures exist.

bash
gh run view <runId> --log-failed | tail -c 20000

Always pipe through tail -c 20000 (~20KB). Never feed the unbounded stream into context.

6. Root-cause analysis

Prefer the built-in Task subagent when available:

Task(
  subagent_type: "ci-investigator",
  description: "Investigate PR <n> check <name>",
  prompt: "<PR number, repo, run id, failing check name, and the capped log excerpt>"
)

If ci-investigator is not available in this agent runtime, analyze the capped log excerpt yourself (or use any local agent definition under ~/.cursor/agents/ / .cursor/agents/ if present). Do not stall the triage on a missing subagent type.

7. Reply format

One aggregated report:

  1. Actions root causes — short summaries (per run/check).
  2. Non-Actions failures — name, state, link only (open in browser).
  3. No raw log pastes.

If nothing failed, say so and stop.

© Mentra-Community, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/ci-triage of Mentra-Community/MentraOS.

Open the folder on GitHubat commit bc626e0

Compare with similar skills

CI Triage next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

CI Triage compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
CI Triage this skillMentra-Community/MentraOS2.4k—~582Automated safety check: PassApache-2.0
Fix CI FailureJetBrains/youtrackdb439—~5.3kAutomated safety check: PassApache-2.0
Bug To Patch GeneratorArabelaTso/Skills-4-SE253—~4.4kAutomated safety check: PassApache-2.0
GreptimeDB Fuzz CI Failure InvestigationGreptimeTeam/greptimedb6.7k—~4.4kAutomated safety check: PassApache-2.0
Megatron-LM CI Failure TriageNVIDIA/Megatron-LM18k—~1.6kAutomated safety check: PassApache-2.0
MAUI CI Investigatordotnet/maui23k—~2kAutomated safety check: PassMIT

Similar skills

  • Fix CI Failure

    JetBrains/youtrackdb

    Official

    Diagnose and fix a CI test failure from a GitHub PR or workflow run.

    439 GitHub stars~5.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Bug To Patch Generator

    ArabelaTso/Skills-4-SE

    Generate code fixes and patches from bug reports, failing test cases, error messages, and stack traces.

    253 GitHub stars~4.4k tokensUpdated 1 mo ago
    Testing & QAAuto-check passed
  • Diagnoses a failed GreptimeDB fuzz CI job by pulling its GitHub Actions logs and fuzz artifacts, then matching the evidence to the local source code.

    6.7k GitHub stars~4.4k tokensUpdated today
    Testing & QAAuto-check passed
  • Official

    Investigates a failing GitHub Actions run or job for Megatron-LM, finds the root cause plus the PR and test author involved, and files a structured bug issue.

    18k GitHub stars~1.6k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Official

    Adds dotnet/maui-specific context for investigating failing PR checks and broken nightly builds: pipelines, Helix logs, binlogs and merge-readiness verdicts.

    23k GitHub stars~2k tokensUpdated today
    Testing & QAAuto-check passed
  • Investigate CI

    ClickHouse/ClickHouse

    Investigate a ClickHouse CI failure end-to-end from a PR or S3 report URL.

    50k GitHub stars~11k tokensUpdated today
    DatabasesAuto-check: notes

More from Mentra-Community/MentraOS

All 11 skills in this repo
  • Investigate Routine Failure

    Mentra-Community/MentraOS

    Investigate a Mentra routine failure from an Admin testRun URL or run/request ID, fetch authenticated results and verified artifacts with the existing incident-report token, trace the exact routine…

    2.4k GitHub stars~1.9k tokensUpdated today
    Auto-check passed
  • Mentra Update Live Firmware

    Mentra-Community/MentraOS

    Update MentraOS firmwarelive.json from the published BES and MTK feeds and prepare a PR, preserving production MTK upgrade paths.

    2.4k GitHub stars~1.8k tokensUpdated today
    Auto-check passed
  • Codex PR Review

    Mentra-Community/MentraOS

    Run an independent local Codex (gpt-6.1-sol, medium) review of a GitHub pull request and relay its verdict.

    2.4k GitHub stars~3.1k tokensUpdated today
    Auto-check passed
  • Manage Cloud Env

    Mentra-Community/MentraOS

    Add or change backend deployment environment variables through Doppler shared configs and native Porter syncs.

    2.4k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • Fix Nightly Failures

    Mentra-Community/MentraOS

    Diagnose an ongoing or finished Mentra nightly suite, group demonstrated shared failures, implement fixes, and carry PRs through independent Codex review and merge.

    2.4k GitHub stars~2.8k tokensUpdated today
    Auto-check passed
  • Sync Miniapp

    Mentra-Community/MentraOS

    Prepare an external Mentra miniapp for bundling into mobile/assets/miniapps (version bump, pack, zip install, regenerate bundledMiniapps).

    2.4k GitHub stars~430 tokensUpdated today
    Auto-check passed

Works with

Questions about CI Triage

What does CI Triage do?

Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause. CI Triage is an agent skill from Mentra-Community/MentraOS. Triage failing GitHub PR checks: list failures with gh, fetch capped Actions logs, skip non-Actions checks, and summarize root cause.

When should I use CI Triage?

CI Triage fits situations like: the user pastes CI failures; asks why a PR is red; mentions failing checks.

How do I install CI Triage in Claude Code?

Run `npx skills add Mentra-Community/MentraOS --skill ci-triage -a claude-code`. Or copy the skill folder (.agents/skills/ci-triage in Mentra-Community/MentraOS) into .claude/skills/ci-triage in your project. Claude Code loads it when a task matches its description.

How do I install CI Triage in Codex?

Run `npx skills add Mentra-Community/MentraOS --skill ci-triage -a codex`. Or copy the skill folder (.agents/skills/ci-triage in Mentra-Community/MentraOS) into .agents/skills/ci-triage in your project. Codex loads it when a task matches its description.

Can I use CI Triage in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Mentra-Community/MentraOS --skill ci-triage -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ci-triage, .gemini/skills/ci-triage, .github/skills/ci-triage and .opencode/skills/ci-triage in your project.

What does CI Triage need to run?

Going by SKILL.md and its folder, CI Triage needs the command-line tools its instructions call (gh).

Does CI Triage access the network?

SKILL.md contains no URLs. Its commands use gh, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is CI Triage safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does CI Triage use?

CI Triage is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does CI Triage use?

About 582 tokens (SKILL.md is roughly 2.3k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to CI Triage?

Skills that share tags, products or a category with CI Triage: Fix CI Failure (JetBrains/youtrackdb, 439 stars), Bug To Patch Generator (ArabelaTso/Skills-4-SE, 253 stars), GreptimeDB Fuzz CI Failure Investigation (GreptimeTeam/greptimedb, 6.7k stars) and Megatron-LM CI Failure Triage (NVIDIA/Megatron-LM, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains CI Triage?

Mentra-Community (a GitHub organization) maintains it in Mentra-Community/MentraOS, which has 2,381 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 10, 2026.

Source: Mentra-Community/MentraOS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.