review-codebase
Review given file/dir/repo for current-state code organization: module boundaries, design patterns, cross-module dependencies, tech debt, and interface stability. Scope-only atomic skill; output is a findings list.
How do I install this agent skill?
npx skills add https://github.com/nesnilnehc/ai-cortex --skill review-codebaseIs this agent skill safe to install?
- Gen Agent Trust Hubpass
This skill is a code analysis tool designed to review the structural organization of a codebase, including module boundaries, design patterns, and technical debt. It operates as a passive analysis tool, generating a report of findings without executing code, accessing sensitive credentials, or performing network operations. It appropriately delegates security and performance concerns to other specialized tools.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
- Runlayerpass
3/3 files flagged
- ZeroLeakspass
Score: 93/100 · 2 sections analyzed
What does this agent skill do?
Skill: Review Codebase
Purpose
Run a scope-only atomic review of the current state of a given path (a single file / a directory / a repository). Paired with review-diff (which reviews git changes only), it is one of the two scope-step candidates for orchestrate-code-review — this skill looks at the snapshot, review-diff looks at the change.
Not done here: cognitive dimensions such as security / performance / architecture (the cognitive-step atomic skills review-security / review-performance / review-architecture take those), and language- or framework-specific analysis (the language / framework steps take that).
Core Objective
Primary goal: produce a scope-only findings list that identifies the structural problems in a given path (boundaries, patterns, dependencies, tech debt, interfaces).
Success criteria (all of them must hold):
- ✅ Scope resolved: use the user's path or directory, or the repository root when no narrower scope is named
- ✅ 5 dimensions covered: findings are emitted for module boundaries, pattern consistency, cross-module dependencies, tech debt and interface stability
- ✅ Precise locations: every finding carries a
file:linereference - ✅ Format conformant: findings carry location / category=
scope/ severity / title / description / suggestion, per specs/findings-list.md - ✅ Large scopes handled: for a repository-level scope, emit by layer (module / directory), or settle a priority subset with the user
- ✅ No overreach: no security / performance / architecture / language / framework cognitive findings are emitted (they are flagged, pointing at the matching atomic skill)
Scope Boundaries
This skill owns:
- Structural review of the current state of the given path
- Findings across 5 dimensions: module boundaries, pattern consistency, cross-module dependency and coupling, tech debt and maintainability, interface stability
This skill does not own:
- Reviewing git changes alone (use
review-diff) - The full orchestrated review (use
orchestrate-code-review) - Language- / framework-specific conventions (use
review-<lang>/review-<framework>) - The security / performance / architecture cognitive dimensions (use
review-security/review-performance/review-architecture)
Handoff point: once the findings are out, they feed the scope step of orchestrate-code-review for aggregation, or go to the user to decide what follows (refactoring / a deeper review).
Use Cases
- New module review: given
src/auth/, look at the current structure and dependencies - Legacy path audit: given a path, look at tech debt and boundary problems
- Sampled review: a file or directory a colleague names, with no diff needed
- As the scope step of orchestrate-code-review: this one or
review-diff, never both
Behavior
Scope resolution
- The input defines the scope: a single file / a directory / the repository root / several paths, named by the user
- No dependence on a diff: analyze the current file content; a diff the user supplies is context only, not a requirement
Scope defaults
| Item | Default | How the user departs from it |
|---|---|---|
| Path | Repository root | Choose: [repository root] / [the current file's directory] / [list the top-level directories and pick] |
| Large-scope handling | Emit by layer (module / directory) | Choose a priority subset (from the top-level directory list) |
Use the named path without a confirmation prompt. For a repository-wide review, work by layer unless the user names a subset; ask only if the requested scope cannot be identified.
The 5 dimensions
For the code in scope (at the layer / subset the user chose), emit findings on these dimensions:
- Module boundaries: whether module / service boundaries are clear, whether responsibilities are single, whether the dependency direction is sound
- Pattern consistency: whether patterns are used aptly and match the repository's existing style
- Cross-module dependency and coupling: dependency relations, cyclic dependencies, degree of coupling
- Tech debt and maintainability: duplication, complexity, testability, the current state of docs and comments, code with no apparent caller, and deprecation markers still in place
- Interface stability: how clear and how stable a module's outward interface is
Every finding must carry a file:line reference.
Flagging out-of-scope findings
When the analysis turns up a concrete security / performance / architecture / language / framework problem: flag it and point at the matching atomic skill, without opening the analysis. For example:
Potential SQL injection risk detected (user input concatenated without escaping); suggest running
review-security
Two tech-debt observations are worth calling out because this Skill is usually the first to meet them and neither is settled by reading the code. A symbol with no apparent caller may be reached by reflection or named in configuration, so deciding it needs a runtime signal over a full business cycle; a deprecation marker is decided by the owner, removal point and replacement recorded beside it. Report the observation with its location and route the decision:
jobs/settlement.py:18defines a class no call site in scope reaches, andconfig/jobs.yamlnames handlers as strings; suggest runningreview-architecture, which decides it under ARC-010 with the evidence that item requires
api/v1/search.py:7carries a deprecation marker recording neither an owner nor a removal point; suggest runningreview-architecture, which decides it under ARC-011
Input and Output
Input
- Path: one or more file / dir paths
- Optional: a focus hint ("concentrate on module boundaries", for example)
Output
- Findings list: the standard format (location / category=scope / severity / title / description / suggestion), grouped by file or by module
- Large-scope summary: when organized by layer, emit the findings count and severity distribution for each layer
Restrictions
Hard boundaries
- Do not assume "the diff only" — by default this skill reviews the complete current state of the given scope
- Emit no cognitive-dimension findings (security / performance / architecture)
- Emit no language- / framework-specific findings
- Emit no finding that lacks a
file:linereference - Use no vague language ("might be a problem", carrying neither a type nor a direction → delete it)
Skill boundaries
Not done here (other atomic skills own it):
- Reviewing git changes →
review-diff - Full-dimension orchestration →
orchestrate-code-review - Language conventions →
review-<lang> - Framework conventions →
review-<framework> - Security / performance / architecture →
review-security/review-performance/review-architecture
Self-Check
- The review scope was resolved from the request or the documented default
- A large scope was emitted by layer, or a priority subset was settled
- All 5 dimensions are covered (module boundaries / patterns / dependencies / tech debt / interfaces)
- Every finding carries a file:line reference
- No cognitive / language / framework dimension finding was emitted (they are flagged only, pointing at the matching atomic skill)
- The output format conforms (location / category / severity / title / description / suggestion)
Examples
Example 1: a single directory
- Input:
src/auth/ - Output: findings across the 5 dimensions, grouped by file, each carrying a reference of the
auth.go:42kind; a weak crypto algorithm is flagged only, pointing atreview-security
Example 2: a single file
- Input:
pkg/validator/validator.go - Output: findings on module responsibility / interface clarity / test coverage / dependencies on upstream modules, and so on
Example 3: the whole repository (large scope)
- Input: the repository root
- Behavior: first emit a findings summary table by layer (top-level directory), then have the user pick a priority subset to go deeper on
- Output: the layer summary plus detailed findings for the priority subset
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/nesnilnehc/ai-cortex/review-codebase">View review-codebase on skillZs</a>