Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Comprehensive four-wave review of all repo source files, producing a prioritized issue backlog.
.claude/skills/notque-full-repo-review/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-16 | ✗→✓ | ▲ Improved | 97% | 0% |
| case-04 | ✗→✓ | ▲ Improved | 85% | 0% |
| case-05 | ✗→✓ | ▲ Improved | 63% | 0% |
| case-06 | ✗→✓ | ▲ Improved | 196% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 73% | 0% |
Orchestrates a comprehensive four-wave review against ALL source files in the repository, not just changed files. Delegates the actual review to the comprehensive-review skill. Produces a prioritized issue backlog instead of auto-fixes.
When to use: Quarterly health checks, after major refactors, onboarding to a new codebase, or any time you want a systemic view of codebase quality. This is expensive (all files through all waves) -- use comprehensive-review for PR-scoped work.
How it differs from comprehensive-review: This skill changes the SCOPE phase to scan all source files instead of git diff, and changes the output from auto-fix to a prioritized backlog report. The review waves themselves are identical.
| Signal | Load These Files | Why | |---|---|---| | writing full-repo-review-report.md | report-template.md | Report structure and field definitions | | dispatching Wave 1, Wave 2, or Wave 3 review agents | audit-playbook.md | Per-category checklists, evidence requirements, severity mapping, reviewer role assignments |
scripts/) instead of the full repo. Useful for splitting a large repo into manageable chunks.score-component.py deterministic pre-check. Only use if the script is unavailable or you need faster iteration.Goal: Identify all source files and run deterministic health checks.
Step 1: Discover source files
Build the complete file list by scanning these directories. Always scan ALL source files -- never fall back to git diff. The entire point of this skill is codebase-wide coverage. If a specific --directory was provided, scope the scan to that directory only.
bash# Python scripts (exclude test files and __pycache__) find scripts/ -name "*.py" -not -path "*/tests/*" -not -path "*/__pycache__/*" 2>/dev/null # Hooks (exclude test files and lib/) find hooks/ -name "*.py" -not -path "*/tests/*" -not -path "*/lib/*" 2>/dev/null # Skills (SKILL.md files only) find skills/ -name "SKILL.md" 2>/dev/null # Agents find agents/ -name "*.md" 2>/dev/null # Docs find docs/ -name "*.md" 2>/dev/null
Log the total file count. If zero files found, STOP and report: "No source files discovered. Verify you are in the correct repository root."
If the file count is too large for a single session, split by directory (scripts/, hooks/, agents/, skills/ separately) rather than cherry-picking "important" files -- selective review defeats the purpose.
Step 2: Run deterministic pre-check
Run scoring before the LLM review. Deterministic checks are cheap and catch structural issues (missing frontmatter, no error handling section) that LLM reviewers should not waste tokens rediscovering.
bashpython3 ~/.claude/scripts/score-component.py --all-agents --all-skills --json
Parse the JSON output and save each structural score and grade. A score is a triage lead, not a finding: score alone never determines severity. A reviewer must confirm a concrete issue with file-and-line evidence and use the category severity guide before adding it to the backlog.
Save the raw scores -- they go into the report's "Deterministic Health Scores" section.
GATE: At least one source file discovered AND score-component.py ran successfully. If the scoring script fails, proceed with a warning but do not skip the review phase.
Goal: Run the comprehensive-review pipeline against all discovered files.
This skill orchestrates scope and output only. The actual four-wave review is performed by comprehensive-review with --review-only mode.
Step 1: Invoke comprehensive-review
Invoke the comprehensive-review skill with these overrides:
--focus [files] mode)--review-only to skip auto-fix. Output is a prioritized backlog for human triage, not patches -- full-repo auto-fix touches too many files at once and risks cascading breakage.references/audit-playbook.md and pass it as prompt context for the wave agents. For each Wave 1/2 agent, include the category checklists matching that agent's lens plus each component's Phase 1 score and grade as triage context only. For Wave 3, include prior findings and the playbook's evidence rules so adversarial reviewers can reject weak findings or surface missed risks.The comprehensive-review skill handles Wave 0 (per-package), Wave 1 (foundation), Wave 2 (deep dive), and Wave 3 (adversarial) internally. The Checklists override is how the playbook reaches agents dispatched in fresh context.
Audit playbook: The playbook maps categories to wave lenses and specifies evidence requirements per pattern. Agents use the checklists in their prompt to ensure systematic coverage rather than ad-hoc judgment about what to check.
Step 2: Collect findings
After comprehensive-review completes, gather all findings from its output. Each finding should have:
GATE: comprehensive-review completed and produced findings output. If it failed, include what partial findings exist and note the failure in the report.
Goal: Aggregate all findings into a prioritized backlog report.
Step 1: Merge deterministic and LLM findings
Combine:
Treat the score as corroborating metadata. Keep a structural issue only when a reviewer independently confirms it with a file, line, and applicable category rule; then use the category's severity guide. A score alone never determines severity. Deduplicate confirmed findings by their evidence, not by score band.
Step 2: Identify systemic patterns
Look for patterns that appear in 3+ files:
These go into a dedicated "Systemic Patterns" section -- they represent the highest-leverage fixes because one pattern change improves many files.
Step 3: Write the report
Write full-repo-review-report.md to the repo root with this structure:
markdown# Full-Repo Review Report **Date**: {date} **Files reviewed**: {count} **Total findings**: {count} (Critical: N, High: N, Medium: N, Low: N) ## Deterministic Health Scores | Component | Score | Grade | Key Issues | |-----------|-------|-------|------------| | {name} | {total}/{max_total} | {A-F} | {summary} | ## Critical (fix immediately) - **{file}:{line}** : [{category}] {description} - Fix: {suggested fix} ## High (fix this sprint) - ... ## Medium (fix when touching these files) - ... ## Low (nice to have) - ... ## Systemic Patterns - **{pattern name}**: Seen in {N} files. {description}. Fix: {approach}. ## Review Metadata - Waves executed: 0, 1, 2, 3 - Duration: {time} - Score pre-check: {pass/warn/fail}
The report is the final output. Do not auto-apply any fixes -- the user triages findings and batches corrections into manageable PRs.
GATE: Report file exists at full-repo-review-report.md and contains at least the severity sections and deterministic scores.
| Error | Cause | Solution | |-------|-------|----------| | No source files found | Wrong working directory or empty repo | Verify cwd is repo root with ls agents/ skills/ scripts/ | | score-component.py fails | Missing script or dependency | Proceed with warning; the LLM review still runs. Note gap in report. | | comprehensive-review times out | Too many files for single session | Split into directory-scoped runs: scripts/, hooks/, agents/, skills/ separately | | Report write fails | Permission or path issue | Try writing to /tmp/full-repo-review-report.md as fallback |
full-repo-review-report.md output| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-16 | fail→pass | 8,239 | 2,353 | -71% | 1 | 1 | 0% | 1,311 | 2,588 | +97% | 0 | 0 | — |
case-01 | fail→fail | 5,490 | 5,182 | -6% | 1 | 1 | 0% | 290 | 2,444 | +743% | 0 | 0 | — |
case-02 | fail→fail | 5,061 | 6,104 | +21% | 1 | 1 | 0% | 237 | 2,548 | +975% | 0 | 0 | — |
case-03 | fail→fail | 30,254 | 6,360 | -79% | 1 | 1 | 0% | 4,990 | 2,571 | -48% | 0 | 0 | — |
case-04 | fail→pass | 8,720 | 2,521 | -71% | 1 | 1 | 0% | 1,421 | 2,631 | +85% | 0 | 0 | — |
case-05 | fail→pass | 11,804 | 4,656 | -61% | 1 | 1 | 0% | 1,806 | 2,941 | +63% | 0 | 0 | — |
case-06 | fail→pass | 6,967 | 6,307 | -9% | 1 | 1 | 0% | 1,079 | 3,193 | +196% | 0 | 0 | — |
case-07 | fail→pass | 10,519 | 3,854 | -63% | 1 | 1 | 0% | 1,629 | 2,816 | +73% | 0 | 0 | — |
case-08 | fail→pass | 11,044 | 4,260 | -61% | 1 | 1 | 0% | 1,532 | 2,898 | +89% | 0 | 0 | — |
case-09 | pass→pass | 6,863 | 1,473 | -79% | 1 | 1 | 0% | 1,279 | 2,480 | +94% | 0 | 0 | — |
case-10 | pass→pass | 7,926 | 1,509 | -81% | 1 | 1 | 0% | 1,099 | 2,418 | +120% | 0 | 0 | — |
case-11 | pass→pass | 12,302 | 4,875 | -60% | 1 | 1 | 0% | 1,925 | 3,048 | +58% | 0 | 0 | — |
case-12 | pass→pass | 13,417 | 1,605 | -88% | 1 | 1 | 0% | 2,165 | 2,482 | +15% | 0 | 0 | — |
case-13 | fail→pass | 10,898 | 1,433 | -87% | 1 | 1 | 0% | 1,736 | 2,394 | +38% | 0 | 0 | — |
case-14 | pass→pass | 7,687 | 1,881 | -76% | 1 | 1 | 0% | 1,412 | 2,498 | +77% | 0 | 0 | — |
case-15 | pass→pass | 7,915 | 1,822 | -77% | 1 | 1 | 0% | 1,349 | 2,527 | +87% | 0 | 0 | — |
case-17 | fail→fail | 3,379 | 3,732 | +10% | 1 | 1 | 0% | 572 | 2,821 | +393% | 0 | 0 | — |
case-18 | pass→pass | 13,530 | 5,164 | -62% | 1 | 1 | 0% | 2,154 | 3,053 | +42% | 0 | 0 | — |
case-19 | fail→fail | 13,875 | 3,896 | -72% | 1 | 1 | 0% | 2,034 | 2,798 | +38% | 0 | 0 | — |
case-20 | fail→pass | 11,008 | 4,294 | -61% | 1 | 1 | 0% | 1,771 | 2,896 | +64% | 0 | 0 | — |
case-21 | pass→pass | 9,878 | 7,145 | -28% | 1 | 1 | 0% | 1,581 | 3,434 | +117% | 0 | 0 | — |
case-22 | pass→pass | 12,664 | 7,123 | -44% | 1 | 1 | 0% | 2,210 | 3,511 | +59% | 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. 22 cases were attempted, and 19 counted toward the lift figure. The other 3 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 +36 percentage points is the difference between those two pass rates over the 19 comparable cases.
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.