/pr-review
Ensure code quality and architectural soundness through systematic Pull Request reviews.
> /plugin marketplace add wasabeef/claude-code-cookbookHow it fires
How this command gets triggered: by you, by Claude, or both.
- Fires itselfClaude auto-loads it when your prompt matches the work.
- You can call itInvoke it directly when you want it.
- Slash command
/pr-review
Context preview
What this command does when you run it.
Ensure code quality and architectural soundness through systematic Pull Request reviews.
Command definition
pr-review.mdSystematic PR review for code quality assurance
Ensure code quality and architectural soundness through systematic Pull Request reviews.
Usage
# Comprehensive PR review
gh pr view 123 --comments
"Systematically review this PR and provide feedback from code quality, security, and architecture perspectives"
# Security-focused review
gh pr diff 123
"Focus on reviewing security risks and vulnerabilities"
# Architecture perspective review
gh pr checkout 123 && find . -name "*.js" | head -10
"Evaluate the architecture from the perspectives of layer separation, dependencies, and SOLID principles"
Basic Examples
# Quantitative code quality assessment
find . -name "*.js" -exec wc -l {} + | sort -rn | head -5
"Evaluate code complexity, function size, and duplication, and point out improvements"
# Security vulnerability check
grep -r "password\|secret\|token" . --include="*.js" | head -10
"Check for risks of sensitive information leakage, hardcoding, and authentication bypass"
# Architecture violation detection
grep -r "import.*from.*\.\./\.\." . --include="*.js"
"Evaluate layer violations, circular dependencies, and coupling issues"Comment Classification System
π΄ critical.must: Critical issues
ββ Security vulnerabilities
ββ Data integrity problems
ββ System failure risks
π‘ high.imo: High-priority improvements
ββ Risk of malfunction
ββ Performance issues
ββ Significant decrease in maintainability
π’ medium.imo: Medium-priority improvements
ββ Readability enhancement
ββ Code structure improvement
ββ Test quality improvement
π’ low.nits: Minor points
ββ Style unification
ββ Typo fixes
ββ Comment additions
π΅ info.q: Questions/information
ββ Implementation intent confirmation
ββ Design decision background
ββ Best practices sharing
Review Perspectives
1. Code Correctness
- **Logic errors**: Boundary values, null checks, exception handling
- **Data integrity**: Type safety, validation
- **Error handling**: Completeness, appropriate processing
2. Security
- **Authentication/authorization**: Appropriate checks, permission management
- **Input validation**: SQL injection, XSS countermeasures
- **Sensitive information**: Logging restrictions, encryption
3. Performance
- **Algorithms**: Time complexity, memory efficiency
- **Database**: N+1 queries, index optimization
- **Resources**: Memory leaks, cache utilization
4. Architecture
- **Layer separation**: Dependency direction, appropriate separation
- **Coupling**: Tight coupling, interface utilization
- **SOLID principles**: Single responsibility, open-closed, dependency inversion
Review Flow
1. **Pre-check**: PR information, change diff, related issues 2. **Systematic checks**: Security β Correctness β Performance β Architecture 3. **Constructive feedback**: Specific improvement suggestions and code examples 4. **Follow-up**: Fix confirmation, CI status, final approval
Comment Templates
Security Issues Template
**Format:**
- Priority: `critical.must.`
- Issue: Clear description of the problem
- Code example: Proposed fix
- Rationale: Why this is necessary
**Example:**
critical.must. Password is stored in plaintext
Proposed fix:
const bcrypt = require('bcrypt');
const hashedPassword = await bcrypt.hash(password, 12);
Hashing is required to prevent security risks.Performance Improvement Template
**Format:**
- Priority: `high.imo.`
- Issue: Explain performance impact
- Code example: Proposed improvement
- Effect: Describe expected improvement
**Example:**
high.imo. N+1 query problem occurs
Improvement: Eager Loading
const users = await User.findAll({ include: [Post] });
This can significantly reduce the number of queries.Architecture Violation Template
**Format:**
- Priority: `high.must.`
- Issue: Point out architectural principle violation
- Recommendation: Specific improvement method
**Example:**
high.must. Layer violation occurred
The domain layer directly depends on the infrastructure layer.
Please introduce an interface following the dependency inversion principle.
Notes
- **Constructive tone**: Collaborative rather than aggressive communication
- **Specific suggestions**: Provide solutions along with pointing out problems
- **Prioritization**: Address in order of Critical β High β Medium β Low
- **Continuous improvement**: Document review results in a knowledge base
Read more
Systematic PR review for code quality assurance
Ensure code quality and architectural soundness through systematic Pull Request reviews.
Usage
# Comprehensive PR review gh pr view 123 --comments "Systematically review this PR and provide feedback from code quality, security, and architecture perspectives" # Security-focused review gh pr diff 123 "Focus on reviewing security risks and vulnerabilities" # Architecture perspective review gh pr checkout 123 && find . -name "*.js" | head -10 "Evaluate the architecture from the perspectives of layer separation, dependencies, and SOLID principles"
Basic Examples
# Quantitative code quality assessment
find . -name "*.js" -exec wc -l {} + | sort -rn | head -5
"Evaluate code complexity, function size, and duplication, and point out improvements"
# Security vulnerability check
grep -r "password\|secret\|token" . --include="*.js" | head -10
"Check for risks of sensitive information leakage, hardcoding, and authentication bypass"
# Architecture violation detection
grep -r "import.*from.*\.\./\.\." . --include="*.js"
"Evaluate layer violations, circular dependencies, and coupling issues"Comment Classification System
π΄ critical.must: Critical issues ββ Security vulnerabilities ββ Data integrity problems ββ System failure risks π‘ high.imo: High-priority improvements ββ Risk of malfunction ββ Performance issues ββ Significant decrease in maintainability π’ medium.imo: Medium-priority improvements ββ Readability enhancement ββ Code structure improvement ββ Test quality improvement π’ low.nits: Minor points ββ Style unification ββ Typo fixes ββ Comment additions π΅ info.q: Questions/information ββ Implementation intent confirmation ββ Design decision background ββ Best practices sharing
Review Perspectives
1. Code Correctness
- **Logic errors**: Boundary values, null checks, exception handling
- **Data integrity**: Type safety, validation
- **Error handling**: Completeness, appropriate processing
2. Security
- **Authentication/authorization**: Appropriate checks, permission management
- **Input validation**: SQL injection, XSS countermeasures
- **Sensitive information**: Logging restrictions, encryption
3. Performance
- **Algorithms**: Time complexity, memory efficiency
- **Database**: N+1 queries, index optimization
- **Resources**: Memory leaks, cache utilization
4. Architecture
- **Layer separation**: Dependency direction, appropriate separation
- **Coupling**: Tight coupling, interface utilization
- **SOLID principles**: Single responsibility, open-closed, dependency inversion
Review Flow
1. **Pre-check**: PR information, change diff, related issues 2. **Systematic checks**: Security β Correctness β Performance β Architecture 3. **Constructive feedback**: Specific improvement suggestions and code examples 4. **Follow-up**: Fix confirmation, CI status, final approval
Comment Templates
Security Issues Template
**Format:**
- Priority: `critical.must.`
- Issue: Clear description of the problem
- Code example: Proposed fix
- Rationale: Why this is necessary
**Example:**
critical.must. Password is stored in plaintext
Proposed fix:
const bcrypt = require('bcrypt');
const hashedPassword = await bcrypt.hash(password, 12);
Hashing is required to prevent security risks.Performance Improvement Template
**Format:**
- Priority: `high.imo.`
- Issue: Explain performance impact
- Code example: Proposed improvement
- Effect: Describe expected improvement
**Example:**
high.imo. N+1 query problem occurs
Improvement: Eager Loading
const users = await User.findAll({ include: [Post] });
This can significantly reduce the number of queries.Architecture Violation Template
**Format:**
- Priority: `high.must.`
- Issue: Point out architectural principle violation
- Recommendation: Specific improvement method
**Example:**
high.must. Layer violation occurred The domain layer directly depends on the infrastructure layer. Please introduce an interface following the dependency inversion principle.
Notes
- **Constructive tone**: Collaborative rather than aggressive communication
- **Specific suggestions**: Provide solutions along with pointing out problems
- **Prioritization**: Address in order of Critical β High β Medium β Low
- **Continuous improvement**: Document review results in a knowledge base
A collection of commands, roles, and automation scripts for Claude Code. Automate your workflow without unnecessary confirmations, allowing you to focus on what matters.
Repo: wasabeef/claude-code-cookbook
Other commands on claude-code-cookbook.
- /analyze-dependencies
Analyzes your project's dependencies and checks architecture health.
Open command - /analyze-performance
Analyzes application performance from a user experience perspective and quantifies experience improvements from optimizations. Calculates UX scores based on Core Web Vitals and proposes prioritized optimization strategies.
Open command - /check-fact
Verifies if a statement is true by checking your project's code and documentation.
Open command - /check-prompt
A comprehensive collection of best practices for evaluating and improving the quality of prompts for AI Agents. It systematizes knowledge gained from actual prompt improvement processes, covering all important aspects such as ambiguity elimination, information integration,
Open command - /commit-message
Generates commit messages from staged changes (git diff --staged). This command only creates messages and copies them to your clipboardβit doesn't run any git commands.
Open command - /context7
Searches technical documentation using MCP's Context7.
Open command

