| name | code-review |
| description | Use this skill when the user wants a production-grade review of Python code, a Python pull request, or a Python-focused diff. Check architecture, security, code quality, tests, documentation, deployment risk, and code-documentation consistency. Trigger on requests like "review this Python PR", "audit this diff", "check code quality", or "give me a fix plan". Do NOT use it for non-Python code review, writing new features, dependency-only changes, pytest-suite-specific audits where `pytest-suite-review` is a better fit, or iterative review-fix-rerun loops where `code-review-loop` is a better fit.
|
Python Code Review
Systematic code review with actionable feedback organized by severity.
Process
-
Gather context
git diff --name-only main
git diff main
git log main..HEAD --oneline
-
Run automated checks
ruff check --output-format=json <files>
vulture --min-confidence=80 <files>
mypy <files>
-
Apply review checklists - see references below
-
Generate report with issues and fix plan
Severity Levels
| Level | Definition | Action |
|---|
| Critical | Security flaws, data loss, breaking changes | Blocks merge |
| High | Resource leaks, wrong layer, N+1 queries | Fix before merge |
| Moderate | Missing tests, complexity >10, swallowed exceptions | Should address |
| Low | Style beyond linter, minor refactoring | Optional |
Review Categories
Apply these checklists to changed files:
-
Architecture - Layer violations, dependency direction, god classes
-
Security - Injection, secrets, path traversal, deserialization
-
Quality - Complexity, error handling, performance
-
Testing - Coverage, assertions, isolation, fixtures
-
Documentation - Docstrings, README accuracy
-
Deployment - Dockerfile, Helm, migrations
-
Consistency - Code-docs sync, signature matches
Output Format
# Code Review Report
**Status**: PASS | NEEDS_WORK | BLOCKED
## Issues
| Severity | Count |
|----------|-------|
| Critical | N |
### [Category]
- [severity] file:line - description
- Fix: specific suggestion
## Fix Plan
1. [Issue] - [Action]
Principles
- Be specific: "Add try/except at line 42" not "improve error handling"
- Verify first: Check functions exist before suggesting them
- Focus on changes: Don't refactor untouched code
- Provide working examples