Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Runs a three-tier codebase audit (git history, targeted scans, full review) with gating. Use when auditing a codebase before release or after incidents.
.claude/skills/athola-tiered-audit/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-08 | ✗→✓ | ▲ Improved | 21% | 0% |
| case-09 | ✗→✓ | ▲ Improved | 70% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 14% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 33% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 21% | 0% |
Always runs first. Analyzes git log, diff stats, and blame to identify areas of concern without reading any source files.
Run these git commands for the target commit range (default: current branch vs main):
bash# 1. Churn hotspots: files changed most often git log --format="" --name-only {base}..HEAD \ | sort | uniq -c | sort -rn | head -20 # 2. Diff stats: size of changes per file git diff --stat {base}..HEAD # 3. Fix-on-fix patterns: commits fixing previous commits git log --oneline {base}..HEAD \ | grep -iE "(fix|revert|patch|hotfix)" # 4. New file clusters: modules with many new files git diff --name-status {base}..HEAD \ | grep "^A" | cut -f2 \ | sed 's|/[^/]*$||' | sort | uniq -c | sort -rn # 5. Large commits: single commits with big diffs git log --format="%h %s" --shortstat {base}..HEAD
Verification: Confirm each command produces output. If a command returns empty, the commit range may be wrong; verify {base} resolves correctly with git merge-base.
Write findings to .coordination/agents/tier1-audit.findings.md:
markdown--- agent: tier1-audit tier: 1 evidence_count: {N} --- ## Summary {1-2 sentence overview of what the git history reveals} ## Churn Hotspots {top 10 most-changed files with change counts} For each flagged file, include: - Location: path/to/file.py:line (most-changed function or block) - Anchor: `verbatim source text at that line` [E1] Command: git log --format="" --name-only ... Output: {relevant output} ## Fix-on-Fix Patterns {commits that fix previous commits in the same area} [E2] Command: git log --oneline ... | grep -iE ... Output: {relevant output} ## New File Clusters {modules with 5+ new files} ## Large Diffs {commits with 200+ line changes} ## Escalation Recommendation {list of areas flagged for Tier 2, or "no escalation needed"}
After Tier 1 completes, check findings against the escalation criteria in modules/escalation-criteria.md.
If NO criteria are met: audit is complete. Report findings.
If criteria ARE met: list flagged areas and proceed to Tier 2 for each area sequentially.
Runs only for areas flagged by Tier 1. Each flagged area is audited one at a time, not in parallel.
For each flagged area:
One findings file per area: .coordination/agents/tier2-{area-name}.findings.md
Each file follows the output contract for audits (see imbue:proof-of-work/modules/output-contracts).
Requires explicit user approval. See modules/escalation-criteria.md for the gate protocol.
Tier 3 should use dedicated sessions (one per area) with file-based coordination, NOT parallel subagents.
All tiers use this contract:
yamloutput_contract: required_sections: - summary - evidence min_evidence_count: 3 # Tier 1 # min_evidence_count: 8 # Tier 2 expected_artifacts: [] retry_budget: 1 strictness: normal
Tier 2 raises the minimum evidence count to 8 because it reads source files and should produce deeper analysis.
Verification: After each tier completes, verify the findings file exists and contains at least the minimum evidence count ([E1], [E2], etc.) before proceeding to the next tier or reporting results.
tiered-audit:findings-verified)Every finding must cite a real location and a verbatim anchor. Write findings to .review/findings.json and confirm each citation resolves:
bashpython plugins/imbue/scripts/citation_verifier.py \ --findings .review/findings.json --repo-root .
Drop or label UNVERIFIED any finding the verifier fails (exit 1); only verified findings enter the report. See Skill(imbue:review-core) Step 5 and Skill(imbue:structured-output) for the schema.
.coordination/agents/tier1-audit.findings.md and contains at least 3 evidence entries ([E1]–[E3]).
escalation criteria.
Location + verbatim Anchorconfirmed by citation_verifier.py (exit 0), or unverified findings were dropped or labeled UNVERIFIED.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→fail | 18,960 | 7,569 | -60% | 1 | 1 | 0% | 835 | 1,874 | +124% | 0 | 0 | — |
case-02 | fail→fail | 4,644 | 6,289 | +35% | 1 | 1 | 0% | 185 | 1,814 | +881% | 0 | 0 | — |
case-03 | fail→fail | 22,564 | 5,915 | -74% | 1 | 1 | 0% | 3,874 | 1,706 | -56% | 0 | 0 | — |
case-04 | fail→fail | 2,638 | 11,163 | +323% | 1 | 1 | 0% | 343 | 3,407 | +893% | 0 | 0 | — |
case-05 | fail→fail | 8,314 | 6,947 | -16% | 1 | 1 | 0% | 1,253 | 1,726 | +38% | 0 | 0 | — |
case-06 | fail→fail | 3,913 | 5,890 | +51% | 1 | 1 | 0% | 625 | 1,710 | +174% | 0 | 0 | — |
case-07 | pass→pass | 5,102 | 3,948 | -23% | 1 | 1 | 0% | 946 | 2,168 | +129% | 0 | 0 | — |
case-08 | fail→pass | 10,735 | 6,687 | -38% | 1 | 1 | 0% | 1,751 | 2,122 | +21% | 0 | 0 | — |
case-09 | fail→pass | 8,117 | 4,610 | -43% | 1 | 1 | 0% | 1,354 | 2,300 | +70% | 0 | 0 | — |
case-10 | pass→pass | 4,199 | 2,955 | -30% | 1 | 1 | 0% | 650 | 1,894 | +191% | 0 | 0 | — |
case-11 | fail→pass | 11,058 | 2,872 | -74% | 1 | 1 | 0% | 1,681 | 1,920 | +14% | 0 | 0 | — |
case-12 | pass→pass | 7,670 | 3,028 | -61% | 1 | 1 | 0% | 1,259 | 1,851 | +47% | 0 | 0 | — |
case-13 | fail→pass | 8,120 | 2,470 | -70% | 1 | 1 | 0% | 1,368 | 1,819 | +33% | 0 | 0 | — |
case-14 | fail→pass | 9,092 | 2,457 | -73% | 1 | 1 | 0% | 1,453 | 1,756 | +21% | 0 | 0 | — |
case-15 | pass→fail | 6,463 | 3,431 | -47% | 1 | 1 | 0% | 969 | 1,990 | +105% | 0 | 0 | — |
case-16 | pass→pass | 8,857 | 5,344 | -40% | 1 | 1 | 0% | 1,274 | 2,304 | +81% | 0 | 0 | — |
case-17 | fail→pass | 19,990 | 10,189 | -49% | 1 | 1 | 0% | 3,182 | 3,073 | -3% | 0 | 0 | — |
case-18 | fail→fail | 10,551 | 5,655 | -46% | 1 | 1 | 0% | 1,879 | 1,897 | +1% | 0 | 0 | — |
case-19 | pass→pass | 5,178 | 3,768 | -27% | 1 | 1 | 0% | 695 | 2,164 | +211% | 0 | 0 | — |
case-20 | fail→pass | 5,059 | 2,749 | -46% | 1 | 1 | 0% | 717 | 1,870 | +161% | 0 | 0 | — |
case-21 | fail→pass | 16,724 | 1,696 | -90% | 1 | 1 | 0% | 1,722 | 1,705 | -1% | 0 | 0 | — |
case-22 | fail→pass | 12,731 | 4,663 | -63% | 1 | 1 | 0% | 2,142 | 2,326 | +9% | 0 | 0 | — |
case-23 | pass→pass | 15,604 | 3,529 | -77% | 1 | 1 | 0% | 2,427 | 2,051 | -15% | 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. 23 cases were attempted, and 18 counted toward the lift figure. The other 5 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 +35 percentage points is the difference between those two pass rates over the 18 comparable cases. 3 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.