Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add MuhammadUsmanGM/claude-code-best-practices --skill test-triagegit clone --depth 1 https://github.com/MuhammadUsmanGM/claude-code-best-practicesWrote 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.
[](https://agentmods.dev/skills/muhammadusmangm/claude-code-best-practices/test-triage)<a href="https://agentmods.dev/skills/muhammadusmangm/claude-code-best-practices/test-triage"><img src="https://agentmods.dev/badge/skills/muhammadusmangm/claude-code-best-practices/test-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.
<a href="https://agentmods.dev/skills/muhammadusmangm/claude-code-best-practices/test-triage"><img src="https://agentmods.dev/badge/skills/muhammadusmangm/claude-code-best-practices/test-triage.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00049 | $0.00493 |
| Opus 5.5 | $0.00020 | $0.00197 |
| Sonnet 5.5 | $0.00010 | $0.00099 |
| Haiku 4.5 | $0.00005 | $0.00049 |
Grade A, and why
test-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 1mo 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.
What it actually says
Test Triage
Given a batch of failing tests, classify each and propose one concrete action per test.
Input sources
Prefer in this order:
- Test output the user pasted.
- A CI log file the user points at (Read it).
- Running the test suite locally — only if the user asks.
For each failing test
- Read the test file and the code under test.
git log -5 --follow <test-file>and the same for the implementation. Look for changes in the last ~24h or the last PR.- Classify:
- Real regression — behavior under test changed in a recent commit, or the assertion is logically correct and the implementation is wrong.
- Flaky — test depends on wall-clock time, ordering, network, randomness, shared global state, or external services without a stub.
- Environmental — passes locally, fails in CI (or vice versa) due to missing env, OS differences, or toolchain versions.
- Stale test — intended behavior changed; the test wasn't updated.
- Propose one action: fix the code, update the test, stub the dependency, add a retry with rationale, delete the test, reproduce locally with .
Output format
A table, one row per failing test:
| Test | Classification | Likely cause | Proposed action |
|---|
Then, below the table, list the tests ranked by fix-first priority (real regressions > stale tests > environmental > flaky-with-high-frequency > low-frequency flakes).
Rules
- Do not modify code or tests during triage. This skill only diagnoses.
- If you can't classify a test in under ~90 seconds of investigation, mark it
unknownand say what you'd need. - Flag any test that looks security-sensitive (auth, crypto, input validation) so the user doesn't wave it through as "flaky."
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.
- 1mo ago First seen · 43 lines · 49 tokens per session scan A 3e5674cf6a08
test-triage is a skill published in the GitHub repository MuhammadUsmanGM/claude-code-best-practices (102 stars, last pushed 2d ago), licensed MIT. It adds 49 tokens to every session and 493 once invoked, about $0.0002 per session on Opus 5.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-30.
Other skills, from other repositories
maintain-formal-verification-skill
Bring a project's formal verification back in line with the code after the code changes: find the commits that touched verified code, update the model, harness, or properties to describe the code as it is now, rerun, and say whether each failure is drift in the verification or a bug in the code. Use for…
prevent-recurrence
Use when correcting an issue or failure reveals a reusable prevention lesson, including code, setup, measurement, validation, workflow, agent mistakes, or accepted code-review findings; when someone says "this keeps happening" or asks how to stop it; or in post-incident follow-up. Fixes the instance (failing-first…
qa
Systematic QA testing of a web application: diff-aware, tiered, with fix-and-verify loop.
staged-transformation-pipeline
Monolithic transformations are hard to test and debug.
backpropagation
Trace runtime bugs back to spec gaps — identify missing acceptance criteria, update specs, generate regression tests, and detect patterns.
systematic-debugging
Apply structured debugging techniques to find and fix bugs efficiently. Use when the user reports a bug, encounters unexpected behavior, says something is "not working", or asks for help debugging. Apply hypothesis-driven debugging instead of random changes.