Full Codebase Review
Run a comprehensive, multi-dimensional code review across the entire codebase by
dispatching specialized review agents in parallel. Each agent focuses on a different
quality dimension, and their findings are synthesized into a unified report.
Why parallel agents?
A single-pass review misses things. Silent failures hide in catch blocks. Type designs
erode over time. Comments drift from the code they describe. Tests cover happy paths
but miss edges. By running six focused reviewers simultaneously, each with a specific
lens, you get deeper coverage faster than a sequential review ever could.
Review Dimensions
Each agent targets a specific quality concern:
| Agent |
Focus |
What it catches |
| silent-failure-hunter |
Error handling integrity |
Swallowed exceptions, empty catch blocks, fallbacks that mask real errors, inadequate error propagation |
| code-reviewer |
Standards & conventions |
Style violations, anti-patterns, deviations from AGENTS.md conventions, potential bugs |
| type-design-analyzer |
Type system quality |
Weak encapsulation, missing invariants, overly permissive types, stringly-typed interfaces |
| comment-analyzer |
Documentation accuracy |
Stale comments, misleading docstrings, comment rot, missing docs on complex logic |
| code-simplifier |
Code clarity |
Unnecessary complexity, dead code, over-abstraction, opportunities to simplify |
| pr-test-analyzer |
Test coverage gaps |
Missing edge case tests, untested error paths, inadequate assertion quality |
Execution Steps
1. Identify scope
Before dispatching agents, understand what you're reviewing:
- Read the project's AGENTS.md for conventions and standards the agents should check against
- Run
git diff --stat to understand recent changes (agents can weight recent code higher)
- Get a file listing of the source directories to determine the review surface
For the ouroboros project specifically, the key source directories are:
src/ — all production TypeScript code
tests/ — test suite
2. Dispatch all six agents in parallel
Spawn each agent using the Agent tool with the appropriate subagent_type from
pr-review-toolkit. Launch ALL SIX in a single message to maximize parallelism.
Each agent needs a clear prompt that includes:
- The project root path
- Which files/directories to focus on (typically
src/ for production code)
- The project conventions (from AGENTS.md) — especially the Result<T, Error> pattern,
Zod validation, tool interface contract, and "never throw" rule
- What to report: file path, line number, severity (critical/warning/info), description
Prompt template for each agent:
Review the codebase at [project-root] for [agent's focus area].
Project conventions (from AGENTS.md):
- TypeScript on Bun runtime
- All tools export: name, description, schema (JSON Schema), execute (async fn)
- Error handling: all tools return Result<T, Error> — never throw
- Use Zod for runtime type validation
- Prefer composition over inheritance
- Skills conform to agentskills.io spec
Focus on the src/ directory. For each finding, report:
- File path and line number
- Severity: critical / warning / info
- Clear description of the issue
- Suggested fix (brief)
Be selective — report only genuine issues, not style nitpicks. Prioritize
findings that could cause bugs, data loss, or maintenance headaches.
Adapt the focus instruction per agent:
- silent-failure-hunter: "identify silent failures, swallowed errors, empty catch blocks, try/catch that logs but doesn't propagate, and fallback behavior that could mask real problems"
- code-reviewer: "check adherence to the project conventions listed above, identify potential bugs, logic errors, and security concerns"
- type-design-analyzer: "analyze type definitions for encapsulation quality, invariant expression, and whether types enforce their contracts or allow invalid states"
- comment-analyzer: "check that comments accurately describe the code, identify stale or misleading comments, and flag complex logic that lacks explanation"
- code-simplifier: "identify unnecessary complexity, dead code, over-engineering, and opportunities to simplify while preserving functionality"
- pr-test-analyzer: "review the tests/ directory for coverage gaps, missing edge cases, untested error paths, and assertion quality"
3. Collect and synthesize results
As agents complete, gather their findings. Then produce a unified review report
organized by severity and file, not by agent. The user cares about "what's wrong
with my code" — not "what did agent X find."
Report structure:
# Full Codebase Review — [Project Name]
## Summary
- X critical issues, Y warnings, Z informational notes
- Key themes: [2-3 sentence overview of the main patterns found]
## Critical Issues
[Issues that could cause bugs, data loss, or security problems]
### [file:line] — [short title]
**Found by:** [agent name]
[Description and suggested fix]
## Warnings
[Issues that hurt maintainability or deviate from conventions]
### [file:line] — [short title]
**Found by:** [agent name]
[Description and suggested fix]
## Informational
[Opportunities for improvement, not urgent]
### [file:line] — [short title]
**Found by:** [agent name]
[Description and suggested fix]
## Test Coverage Gaps
[Dedicated section for test findings since they're actionable separately]
## Positive Observations
[2-3 things the codebase does well — reviews shouldn't be purely negative]
4. Deduplicate and cross-reference
Multiple agents may flag the same issue from different angles. For example, a
silent-failure-hunter finding about a swallowed error and a code-reviewer finding
about a missing Result return are likely the same issue. Merge these, noting
which agents flagged it (higher confidence when multiple agents agree).
5. Present the report
Share the synthesized report. After presenting it, offer to:
- Fix critical issues immediately
- Create tickets/TODOs for warnings
- Dive deeper into any specific finding
Adapting to other projects
This skill is written with ouroboros conventions in mind, but the pattern works for
any TypeScript/JavaScript project. When reviewing a different project:
- Read its AGENTS.md or equivalent config for project-specific conventions
- Adjust the conventions section in each agent's prompt
- Adjust source directories as needed
1---2name: ou-full-code-review3description: Perform a comprehensive full-codebase code review using specialized parallel agents. Use this skill whenever the user asks for a "full code review", "codebase review", "review everything", "audit the code", "code health check", or any request to review the entire project (not just a PR or single file). Also trigger when the user says things like "what's wrong with this codebase", "find all the issues", "review all my code", or "comprehensive review". This is specifically for whole-codebase analysis, not single-file or PR-scoped reviews.4---56# Full Codebase Review78Run a comprehensive, multi-dimensional code review across the entire codebase by9dispatching specialized review agents in parallel. Each agent focuses on a different10quality dimension, and their findings are synthesized into a unified report.1112## Why parallel agents?1314A single-pass review misses things. Silent failures hide in catch blocks. Type designs15erode over time. Comments drift from the code they describe. Tests cover happy paths16but miss edges. By running six focused reviewers simultaneously, each with a specific17lens, you get deeper coverage faster than a sequential review ever could.1819## Review Dimensions2021Each agent targets a specific quality concern:2223| Agent | Focus | What it catches |24|-------|-------|----------------|25| **silent-failure-hunter** | Error handling integrity | Swallowed exceptions, empty catch blocks, fallbacks that mask real errors, inadequate error propagation |26| **code-reviewer** | Standards & conventions | Style violations, anti-patterns, deviations from AGENTS.md conventions, potential bugs |27| **type-design-analyzer** | Type system quality | Weak encapsulation, missing invariants, overly permissive types, stringly-typed interfaces |28| **comment-analyzer** | Documentation accuracy | Stale comments, misleading docstrings, comment rot, missing docs on complex logic |29| **code-simplifier** | Code clarity | Unnecessary complexity, dead code, over-abstraction, opportunities to simplify |30| **pr-test-analyzer** | Test coverage gaps | Missing edge case tests, untested error paths, inadequate assertion quality |3132## Execution Steps3334### 1. Identify scope3536Before dispatching agents, understand what you're reviewing:3738- Read the project's AGENTS.md for conventions and standards the agents should check against39- Run `git diff --stat` to understand recent changes (agents can weight recent code higher)40- Get a file listing of the source directories to determine the review surface4142For the ouroboros project specifically, the key source directories are:43- `src/` — all production TypeScript code44- `tests/` — test suite4546### 2. Dispatch all six agents in parallel4748Spawn each agent using the Agent tool with the appropriate `subagent_type` from49`pr-review-toolkit`. Launch ALL SIX in a single message to maximize parallelism.5051Each agent needs a clear prompt that includes:52- The project root path53- Which files/directories to focus on (typically `src/` for production code)54- The project conventions (from AGENTS.md) — especially the Result<T, Error> pattern,55 Zod validation, tool interface contract, and "never throw" rule56- What to report: file path, line number, severity (critical/warning/info), description5758**Prompt template for each agent:**5960```61Review the codebase at [project-root] for [agent's focus area].6263Project conventions (from AGENTS.md):64- TypeScript on Bun runtime65- All tools export: name, description, schema (JSON Schema), execute (async fn)66- Error handling: all tools return Result<T, Error> — never throw67- Use Zod for runtime type validation68- Prefer composition over inheritance69- Skills conform to agentskills.io spec7071Focus on the src/ directory. For each finding, report:72- File path and line number73- Severity: critical / warning / info74- Clear description of the issue75- Suggested fix (brief)7677Be selective — report only genuine issues, not style nitpicks. Prioritize78findings that could cause bugs, data loss, or maintenance headaches.79```8081Adapt the focus instruction per agent:82- **silent-failure-hunter**: "identify silent failures, swallowed errors, empty catch blocks, try/catch that logs but doesn't propagate, and fallback behavior that could mask real problems"83- **code-reviewer**: "check adherence to the project conventions listed above, identify potential bugs, logic errors, and security concerns"84- **type-design-analyzer**: "analyze type definitions for encapsulation quality, invariant expression, and whether types enforce their contracts or allow invalid states"85- **comment-analyzer**: "check that comments accurately describe the code, identify stale or misleading comments, and flag complex logic that lacks explanation"86- **code-simplifier**: "identify unnecessary complexity, dead code, over-engineering, and opportunities to simplify while preserving functionality"87- **pr-test-analyzer**: "review the tests/ directory for coverage gaps, missing edge cases, untested error paths, and assertion quality"8889### 3. Collect and synthesize results9091As agents complete, gather their findings. Then produce a unified review report92organized by severity and file, not by agent. The user cares about "what's wrong93with my code" — not "what did agent X find."9495**Report structure:**9697```markdown98# Full Codebase Review — [Project Name]99100## Summary101- X critical issues, Y warnings, Z informational notes102- Key themes: [2-3 sentence overview of the main patterns found]103104## Critical Issues105[Issues that could cause bugs, data loss, or security problems]106107### [file:line] — [short title]108**Found by:** [agent name]109[Description and suggested fix]110111## Warnings112[Issues that hurt maintainability or deviate from conventions]113114### [file:line] — [short title]115**Found by:** [agent name]116[Description and suggested fix]117118## Informational119[Opportunities for improvement, not urgent]120121### [file:line] — [short title]122**Found by:** [agent name]123[Description and suggested fix]124125## Test Coverage Gaps126[Dedicated section for test findings since they're actionable separately]127128## Positive Observations129[2-3 things the codebase does well — reviews shouldn't be purely negative]130```131132### 4. Deduplicate and cross-reference133134Multiple agents may flag the same issue from different angles. For example, a135silent-failure-hunter finding about a swallowed error and a code-reviewer finding136about a missing Result return are likely the same issue. Merge these, noting137which agents flagged it (higher confidence when multiple agents agree).138139### 5. Present the report140141Share the synthesized report. After presenting it, offer to:142- Fix critical issues immediately143- Create tickets/TODOs for warnings144- Dive deeper into any specific finding145146## Adapting to other projects147148This skill is written with ouroboros conventions in mind, but the pattern works for149any TypeScript/JavaScript project. When reviewing a different project:150- Read its AGENTS.md or equivalent config for project-specific conventions151- Adjust the conventions section in each agent's prompt152- Adjust source directories as needed