Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Use to lint a repo's agent onboarding files (AGENTS.md, CLAUDE.md, .claude/rules/*.md) for bloat, contradictions, duplication, stale or vague commands, missing sections, leakage, and secrets - or with --stats to view compression receipts. Read-only; reports findings and hands fixes to update-agent-onboarding.
.claude/skills/hashgraph-online-audit-agent-onboarding/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 1733% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 8% | 0% |
| case-07 | ✗→✓ | ▲ Improved | -25% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -10% | 0% |
| case-11 | ✗→✓ | ▲ Improved | -9% | 0% |
Static + cross-reference linter for instruction-file smells. Read-only: this skill never writes files. It produces a findings report; applying fixes is update-agent-onboarding's job (content) or the user's (structure).
Announce at start: "Using audit-agent-onboarding to lint the onboarding files."
Usage: audit-agent-onboarding [--stats]
--stats: compression receiptsRead .aiboarding/state.json:receipts and render a table: file, level, bytes and lines before/after, percent saved, measured-at. Label token figures approximate when the receipt does (they are byte/4 estimates unless a real tokenizer produced them). Since instruction files load every session, per-session savings compound - present "per-session saved × sessions" only as a clearly labeled estimate. Then stop.
Run every check against AGENTS.md, CLAUDE.md, and any .claude/rules/*.md; tag each finding FAIL (breaks agents or leaks something) / WARN (costs quality or tokens) / INFO (improvement candidate).
.aiboarding/tools/check-size-budget AGENTS.md (plugintemplates/tools/ fallback if not installed). Its WARN/FAIL map directly.
AGENTS.md on a leaf-to-root chain; a chain projected over 32768 bytes is a FAIL (Codex truncates silently at project_doc_max_bytes).
AGENTS.md content (importsexpand at launch; duplication doubles token cost). Sections restating the README near-verbatim: WARN, suggest the doc link instead.
different test commands, contradictory guardrails). FAIL.
against package scripts, Makefile/justfile targets, CI workflows, or a binary on PATH. Unresolvable: FAIL with the source line.
("run the tests" with no command). WARN.
Agent Guardrails or no Verification BeforeCompletion content: WARN (these are the sections that prevent repeated agent mistakes).
numbered steps for one task) that belong in a skill, not always-loaded context. INFO, name the candidate skill.
config, not prose. INFO.
(testing minutiae, one subsystem's details) that fit .claude/rules/<topic>.md with a paths: scope, or a nested AGENTS.md for cross-agent visibility. INFO. Note the asymmetry honestly: .claude/rules/ is Claude-only.
-----BEGIN,bearer tokens, connection strings with passwords): FAIL, name the line, do not quote the secret itself. Destructive commands (rm -rf, DROP TABLE, force pushes) presented without confirmation framing: WARN.
CLAUDE.md missing the @AGENTS.md line, oraiboarding marker fences unbalanced: FAIL.
Output findings ordered FAIL → WARN → INFO, each with file, location, one-line rationale, and a concrete suggested fix. End with the one-line verdict and the handoff: content fixes → offer to run update-agent-onboarding (its approval gate still applies); compression fixes → compress-onboarding. Suggestions are never auto-applied.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 6,842 | 10,287 | +50% | 1 | 1 | 0% | 1,056 | 1,607 | +52% | 0 | 0 | — |
case-02 | fail→pass | 5,630 | 17,851 | +217% | 1 | 1 | 0% | 244 | 4,473 | +1733% | 0 | 0 | — |
case-03 | fail→fail | 17,752 | 16,739 | -6% | 1 | 1 | 0% | 2,141 | 1,231 | -43% | 0 | 0 | — |
case-04 | fail→fail | 29,838 | 7,025 | -76% | 1 | 1 | 0% | 4,120 | 1,267 | -69% | 0 | 0 | — |
case-05 | fail→fail | 22,996 | 7,890 | -66% | 1 | 1 | 0% | 3,901 | 1,338 | -66% | 0 | 0 | — |
case-06 | fail→pass | 8,716 | 9,497 | +9% | 1 | 1 | 0% | 1,406 | 1,515 | +8% | 0 | 0 | — |
case-07 | fail→pass | 20,393 | 9,618 | -53% | 1 | 1 | 0% | 2,405 | 1,809 | -25% | 0 | 0 | — |
case-08 | fail→fail | 15,406 | 5,579 | -64% | 1 | 1 | 0% | 1,783 | 1,782 | -0% | 0 | 0 | — |
case-09 | fail→fail | 14,967 | 4,438 | -70% | 1 | 1 | 0% | 1,678 | 1,723 | +3% | 0 | 0 | — |
case-10 | fail→pass | 14,367 | 2,064 | -86% | 1 | 1 | 0% | 1,529 | 1,370 | -10% | 0 | 0 | — |
case-11 | fail→pass | 10,048 | 8,212 | -18% | 1 | 1 | 0% | 1,685 | 1,529 | -9% | 0 | 0 | — |
case-21 | fail→pass | 9,850 | 2,908 | -70% | 1 | 1 | 0% | 1,527 | 1,472 | -4% | 0 | 0 | — |
case-12 | fail→pass | 16,209 | 5,880 | -64% | 1 | 1 | 0% | 1,889 | 1,531 | -19% | 0 | 0 | — |
case-13 | pass→pass | 18,295 | 8,597 | -53% | 1 | 1 | 0% | 2,358 | 1,597 | -32% | 0 | 0 | — |
case-14 | fail→pass | 12,545 | 5,227 | -58% | 1 | 1 | 0% | 2,159 | 1,848 | -14% | 0 | 0 | — |
case-15 | pass→fail | 15,299 | 5,019 | -67% | 1 | 1 | 0% | 1,642 | 1,889 | +15% | 0 | 0 | — |
case-22 | fail→pass | 15,811 | 8,894 | -44% | 1 | 1 | 0% | 1,844 | 1,654 | -10% | 0 | 0 | — |
case-16 | fail→pass | 10,335 | 4,454 | -57% | 1 | 1 | 0% | 1,829 | 1,467 | -20% | 0 | 0 | — |
case-17 | fail→pass | 6,072 | 2,437 | -60% | 1 | 1 | 0% | 999 | 1,400 | +40% | 0 | 0 | — |
case-18 | fail→pass | 13,141 | 5,468 | -58% | 1 | 1 | 0% | 1,496 | 1,877 | +25% | 0 | 0 | — |
case-19 | pass→pass | 4,879 | 2,644 | -46% | 1 | 1 | 0% | 794 | 1,437 | +81% | 0 | 0 | — |
case-20 | fail→pass | 7,695 | 12,251 | +59% | 1 | 1 | 0% | 1,297 | 2,345 | +81% | 0 | 0 | — |
case-23 | fail→pass | 12,747 | 2,045 | -84% | 1 | 1 | 0% | 1,309 | 1,273 | -3% | 0 | 0 | — |
case-24 | pass→pass | 10,945 | 4,763 | -56% | 1 | 1 | 0% | 1,812 | 1,798 | -1% | 0 | 0 | — |
case-25 | pass→pass | 20,550 | 9,854 | -52% | 1 | 1 | 0% | 2,648 | 1,793 | -32% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 25 cases were attempted, and 23 counted toward the lift figure. The other 2 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +52 percentage points is the difference between those two pass rates over the 23 comparable cases. 2 cases got worse with the skill loaded, and they are included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.