python-codebase-review
Deep, whole-codebase review of a Python project that writes a new REVIEW.md, a verified and prioritized list of fixes and improvements.
Skill by jmfontaine
Chalk Labs
Need help deploying python-codebase-review?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/jmfontaine-python-codebase-review
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: testing, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Shell scripts
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/python-codebase-review
What's inside
- Skill name
python-codebase-review- Description
- Deep, whole-codebase review of a Python project that writes a new REVIEW.md, a verified and prioritized list of fixes and improvements. Splits the code into slices and fans out parallel reviewer subagents, plus cross-cutting and security passes, on top of a ruff/type-checker/pytest baseline. Use this whenever the user wants to review, audit, assess, or find bugs and improvements across a Python repository, package, or service as a whole, even if they just say "review this codebase", "what should we fix in this project", or "audit the code quality". Do not use it for reviewing a diff, branch, commit, or PR (use /review), for a single file, or for checking the findings of an existing REVIEW.md (use review-verification).
- License
- Apache-2.0
- Compatibility
- Written for omp, whose task tool fans out the reviewers with its reviewer and security-reviewer agents and an outputSchema. The baseline script needs bash, and uses uv and uvx when available.
- Instructions
- 168 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (4)
- SKILL.md
- finding-schema.json · references/
- python-checklist.md · references/
- baseline.sh · scripts/
SKILL.md (first lines)
# Python Codebase Review Review an entire Python codebase and write `REVIEW.md`: bugs to fix and improvements to make, each with location, impact, and a concrete fix. `REVIEW.md` is a scratch file: put it in the scratch directory the agent instruction files name (such as `.scratch/`), otherwise in `.scratch/` at the repository root, and add that directory to `.git/info/exclude` when git does not already ignore it. Never put it at the repository root, and never commit it. The value of this review is that every reported item is real and actionable, so verification matters more than volume. The review is read-only. Do not edit, format, or commit source files; the only file you write in the repository is `REVIEW.md`. Running tools is fine, and so are throwaway probes in a `probes/` subdirectory of that scratch directory, which you remove at the end. If the user passed arguments (a path to limit scope, or a focus such as "performance"), apply them to every phase. ## 1. Baseline Run the bundled script from the repository root: ```sh bash <skill-dir>/scripts/baseline.sh ``` It prints a summary and, on the last line, the output directory containing `inventory.txt` (Python lines per directory), `ruff.txt`, `types.txt`, and `tests.txt` (results plus coverage). It uses the project's uv environment or `.venv` when present and the project's configured type checker, falling back to basedpyright. Read the summary, the inventory, the test result tail, and enough of the ruff and type output to know its shape. A failing or uncollectable test suite is itself a finding. Reviewers get these paths so they do not re-report mechanical diagnostics; they should cite one only when it points at a real behavioral bug. If `git status` shows uncommitted changes, mention it in the final report, since findings may refer to code that is not committed yet. ## 2. Map the project Read `README`, `pyproject.toml` (or `setup.cfg`/`setup.py`), `AGENTS.md`/`CLAUDE.md` if present, the entry points (console scripts, `__main__`, app factories, CLI modules), and the test layout. Write a project brief of about 15 lines: purpose, runtime (CLI, web service, library, data pipeline), Python version, key dependencies, packages and their roles, entry points, conventions, and what the baseline showed. Every reviewer receives this brief, so it is worth getting right. ## 3. Plan slices Split the code into review slices of roughly 3-8k lines each, along package or module boundaries so each reviewer sees code that belongs together. Size the plan to the codebase: a 2k-line project needs one or two reviewers, not ten. Keep generated code, vendored code, and migrations out of slices unless the user asks for them. Under about 15k lines, keep the total to six reviewers or fewer: merge Architecture with Dead code, and Errors with Concurrency. Overlapping lenses mostly re-find the same defect. That overlap is a useful confidence signal, but each extra reviewer costs as much as a slice. Add cross-cutting reviewers, each covering the whole codebase through its own lens: - **Architecture**: module boundaries, dependency direction, import cycles, global state, layering leaks, abstractions that do not pay for themselves. - **Errors and resources**: exception handling and propagation, swallowed errors, retries, cleanup of files, connections, subprocesses, and temporary state. - **Concurrency**: async correctness, blocking calls in async code, threads, shared mutable state, locks, task cancellation. Skip it if the project has none. - **Tests**: what is untested (use the coverage report), weak assertions, tests coupled to implementation details, flaky patterns, missing edge cases on critical paths. - **Dead code and simplification**: unused modules, functions, parameters, settings, and dependencies; duplicated logic; needless indirection. Add one `security-reviewer` for the whole repository when the code handles untrusted input, network, files, auth, secrets, subprocesses, deserialization, or SQL. ## 4. Fan out Launch every reviewer in a single `task` call so they run in parallel. Use the `reviewer` agent for slice and cross-cutting reviews. Give every task the contents of `references/finding-schema.json` as its `outputSchema`, so the findings can be merged mechanically. Put in the shared `context`: the project brief, the baseline output paths, the read-only rule, the output contract (below), and the checklist from `references/python-checklist.md`. Each task names its slice (exact paths) or its lens, and anything specific you noticed during mapping. Output contract for reviewers: - Report a finding only after tracing the code path that makes it real. Name the triggering input or state and the consequence. A plausible-sounding guess costs the user time to disprove. - `kind: fix` means behavior is wrong today; `kind: improvement` means it works but should change. - Do not report formatting or naming nits, issues already present in the baseline output, or "consider adding" suggestions with no concrete defect or payoff. - When the same problem repeats across files, report it once and list the other locations in `problem`. - Prefer a short snippet in `fix` over a description of a snippet. ## 5. Verify and merge When all reviewers return: 1. Merge findings and remove duplicates: same root cause in overlapping lines is one finding; keep the clearest write-up and the highest justified priority. 2. Verify every P0 and P1 yourself by reading the code. Where it is cheap, prove it with a throwaway script or test in the scratch `probes/` directory. Drop findings you cannot confirm, and downgrade ones whose impact was overstated. 3. Drop findings with confidence below 0.5 unless they are P0. Spot-check a sample of P2/P3 findings; if a reviewer's samples are often wrong, re-check the rest of that reviewer's findings. 4. Group systemic issues (the same pattern in many places) into one finding with a list of locations. ## 6. Write REVIEW.md Use this structure: ```markdown
From jmfontaine/agent-skills, Apache-2.0.
More from jmfontaine/agent-skills
- 0.570score
product-development-system
jmfontaine
Guide product development from manifesto and product map through releases, optional briefs, and release review.
SkillAFreshness: AClaude Code +9 - 0.570score
github-workflow
jmfontaine
Track work in GitHub issues and deliver it through pull requests and reviews.
SkillAFreshness: AClaude Code +9 - 0.566score
parallel-issues
jmfontaine
Work several GitHub issues in parallel with unattended coding agents, one Herdr workspace and git worktree per group of issues, each group delivered as a…
SkillAFreshness: AClaude Code +9 - 0.565score
project-review
jmfontaine
Review project files for consistency, completeness, correctness, and simplicity.
SkillAFreshness: AClaude Code +9 - 0.565score
git-commit
jmfontaine
Git commit guidelines, including which branch a commit goes on, the first commit, and GitHub stacked pull requests.
SkillAFreshness: AClaude Code +9 - 0.565score
review-verification
jmfontaine
Check every finding in an existing review or plan file (REVIEW.md or similar) against the current code or a named dependency version, mark each confirmed…
SkillAFreshness: AClaude Code +9 - 0.565score
git-branch
jmfontaine
Git branch naming guidelines, including the label to branch-type table.
SkillAFreshness: AClaude Code +9 - 0.558score
uv
jmfontaine
Python package management with uv.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 24, 2026 (6 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/jmfontaine/agent-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from jmfontaine
- 0.570score
product-development-system
jmfontaine
Guide product development from manifesto and product map through releases, optional briefs, and release review.
SkillAFreshness: AClaude Code +9 - 0.570score
github-workflow
jmfontaine
Track work in GitHub issues and deliver it through pull requests and reviews.
SkillAFreshness: AClaude Code +9 - 0.566score
parallel-issues
jmfontaine
Work several GitHub issues in parallel with unattended coding agents, one Herdr workspace and git worktree per group of issues, each group delivered as a…
SkillAFreshness: AClaude Code +9 - 0.565score
project-review
jmfontaine
Review project files for consistency, completeness, correctness, and simplicity.
SkillAFreshness: AClaude Code +9 - 0.565score
git-commit
jmfontaine
Git commit guidelines, including which branch a commit goes on, the first commit, and GitHub stacked pull requests.
SkillAFreshness: AClaude Code +9 - 0.565score
review-verification
jmfontaine
Check every finding in an existing review or plan file (REVIEW.md or similar) against the current code or a named dependency version, mark each confirmed…
SkillAFreshness: AClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get python-codebase-review running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
python-codebase-review skill. Agent Mart. https://agentmart.dev/skills/jmfontaine-python-codebase-review (last updated 2026-10-24)