gencc-link: Skill for Claude Code

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

ci-failure-triage is a skill for Claude Code from berntpopp/gencc-link. It costs 39 tokens per session (542 once invoked), scanned A, original, MIT.

Instructions for diagnosing failed continuous integration checks in the gencc-link project. Continuous integration, or CI, automatically runs formatting checks, linting, type checks, tests, and release checks.

In plain words
What is it for?
Use them to investigate formatting, lint, file-size, type-checking, test, coverage, Docker, and release failures.
Why use it?
They provide a way to reproduce the same failure locally and find its cause without skipping required checks.

Skill for Claude Code

Written for Claude Code: installed under .claude/. Also seen: mentions AGENTS.md.

This is berntpopp/gencc-link's own configuration. It tells Claude Code how to work on gencc-link 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 gencc-link configures →

Reuse

Borrowing it

Nothing to install: this file belongs to berntpopp/gencc-link. 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/berntpopp/gencc-link/main/.claude/skills/ci-failure-triage/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/berntpopp/gencc-link

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-failure-triage

README.md
[![agentmods](https://agentmods.dev/badge/skills/berntpopp/gencc-link/ci-failure-triage/github.svg)](https://agentmods.dev/skills/berntpopp/gencc-link/ci-failure-triage)
Your own site
<a href="https://agentmods.dev/skills/berntpopp/gencc-link/ci-failure-triage"><img src="https://agentmods.dev/badge/skills/berntpopp/gencc-link/ci-failure-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-failure-triage

Your own site · 80×15
<a href="https://agentmods.dev/skills/berntpopp/gencc-link/ci-failure-triage"><img src="https://agentmods.dev/badge/skills/berntpopp/gencc-link/ci-failure-triage.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 39 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 542 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
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.00039 $0.00542
Opus 5 $0.00019 $0.00271
Sonnet 5 $0.00008 $0.00108
Haiku 4.5 $0.00004 $0.00054

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

Security

Grade A, and why

ci-failure-triage scanned grade A with 0 findings 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 9d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/ci-failure-triage/SKILL.md · 58 lines

What it actually says

CI failure triage

Classify the failure

Look at the GitHub Actions log and decide which stage failed. make ci-local runs format-check, lint-ci, lint-loc, typecheck-fast, and test-fast; the CI job then runs test-cov.

  • Format check (make format-check) — Ruff disagrees with the committed formatting.
  • Lint (make lint-ci) — a Ruff lint rule.
  • File-size budget (make lint-loc) — scripts/check_file_size.py flags a file over the per-file line budget (see AGENTS.md "File Size Discipline").
  • Typecheck (make typecheck-fast) — mypy strict.
  • Tests (make test-fast) — a failing or erroring test.
  • Coverage (make test-cov) — coverage fell below the 85% gate.
  • Release (release.yml) — make ci-local, the Compose config validation, or the Docker image build failed.

Reproduce locally

Run the same Make target that failed:

make format-check
make lint-ci
make lint-loc
make typecheck-fast
make test-fast
make test-cov
# release-only:
docker compose -f docker/docker-compose.yml -f docker/docker-compose.prod.yml config
docker build -f docker/Dockerfile -t gencc-link:ci .

Tests that need the live GenCC download are marked integration and are excluded from test-fast / test-cov. Most unit tests build SQLite from the tests/fixtures/ sample TSV and do not hit the network.

Fix at root cause

  • Do not add # type: ignore or # noqa to silence a check unless the behavior is genuinely correct and the tool is wrong.
  • Do not use git commit --no-verify to bypass pre-commit.
  • If lint-loc fails, split the oversized file rather than raising the budget.
  • For a flaky test, rerun once to confirm flakiness, then mark it slow (or integration if it needs the network) and open a follow-up issue rather than disabling it.

Confirm fix

Run make ci-local locally. Push. Watch the workflow re-run.

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. 9d ago First seen · 58 lines · 39 tokens per session scan A 3fe94de27383

Subscribe to this mod's changes

ci-failure-triage is a skill published in the GitHub repository berntpopp/gencc-link (0 stars, last pushed 6d ago), licensed MIT. It adds 39 tokens to every session and 542 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

gh-fix-ci

Use when a user asks to debug or fix failing GitHub PR checks that run in GitHub Actions; use gh to inspect checks and logs, summarize failure context, draft a fix plan, and implement only after explicit approval. Treat external providers (for example Buildkite) as out of scope and report only the details URL.

Kevin-Liu-01/Agent-Machines · 72 tokens

api-linter

MCP definition linter rules reference. Use when bun run lint:mcp or bun run devcheck reports a lint error or warning (format-parity, schema-is-object, name-format, server-json-, etc.) and you need to understand the rule, its severity, and how to fix it. Every rule ID the linter emits has an entry in this doc.

cyanheads/uniprot-mcp-server · 86 tokens

api-errors

McpError constructor, JsonRpcErrorCode reference, and error handling patterns for @cyanheads/mcp-ts-core. Use when looking up error codes, understanding where errors should be thrown vs. caught, or using ErrorHandler.tryCatch in services.

cyanheads/uniprot-mcp-server · 54 tokens

report-issue-framework

File a bug or feature request against @cyanheads/mcp-ts-core when you hit a framework issue. Use when a builder, utility, context method, or config behaves contrary to the documented API — not for server-specific application bugs.

cyanheads/uniprot-mcp-server · 52 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

temps-plugin

Build external plugins for the Temps deployment platform. Use when the user wants to create, modify, or debug a Temps plugin binary — a standalone Rust process that communicates with Temps over a Unix domain socket. Also use when the user mentions "temps plugin", "external plugin", "plugin binary", "plugin for temps"…

gotempsh/temps · 120 tokens