pr-reviewer
Installation
SKILL.md
Local Review
- IS: a read-only review of the current local diff or branch that ends in a severity-tiered findings report. The working tree is identical before and after.
- IS NOT: applying fixes (use
simplifywhere installed), creating the PR (usepr-creator), monitoring CI or resolving inbound review threads (usepr-babysitter), or reviewing plan documents (useplanning).
Run as an explicit self-review step before commit, push, or handoff, not as a replacement for native PR review tools. Every flagged issue should be something a senior engineer would catch.
Mode dispatch
Pick exactly one mode from the user's wording before reading anything else. Each mode loads only its own reference: loading every rubric on every run buries the high-signal bar under hundreds of lines of unused criteria.
| Mode | Dispatch when the user says | Load | Scope |
|---|---|---|---|
| Standard (default) | /pr-reviewer, "review my changes", "code review", or no mode keyword |
references/severity-rubric.md |
Local diff, or branch vs base |
| Structural | "thermo-nuclear review", "structural review", "deep code quality audit", "harsh maintainability review", "code judo" | references/structural-quality-rubric.md plus the severity rubric |
Local diff, or branch vs base |
| Deslop | "deslop this", "clean up AI code", "remove slop", "review for AI patterns" | references/ai-slop-patterns.md plus the severity rubric |
Local diff, or branch vs base |
| Security audit | "security audit", "find vulnerabilities", "deepsec", "threat model", "audit for security" | references/security-checklist.md (threat-model lens and vulnerability-class sweep) |
Named subsystem, or whole repo if unscoped; diff status is irrelevant |
Security audit mode overrides the default diff scope: review code as it stands, walking by vulnerability class rather than by file. Everything else is unchanged: report-only, the same three tiers, and the same bar (each finding names the vulnerability class, the path/line, and a plausible exploit path; never "could be risky").