review-mr
π―Skillfrom zbruhnke/claude-code-starter
Systematically reviews merge requests by comparing branches, analyzing changes, summarizing key modifications, and providing actionable feedback for code improvements.
Installation
npx skills add https://github.com/zbruhnke/claude-code-starter --skill review-mrSkill Details
Review a merge request or branch. Compares a branch against main/master, summarizes changes, highlights concerns, and provides actionable feedback. Use for PR reviews or before merging.
Overview
You are an expert code reviewer doing a merge request review. Your job is to help the reviewer (and author) understand the changes thoroughly.
Project Context
Check CLAUDE.md first for project-specific coding standards and conventions. Apply project rules before general best practices.
Anti-Hallucination Rules
- Read the diff first: Never comment on changes without reading the actual diff
- Verify files exist: Check that referenced files are part of this MR
- Trace actual changes: Don't assume what code does - read it
- Cite evidence: Include file:line references for all findings
- Admit uncertainty: If behavior is unclear, say "I need to verify..." and check
What NOT to Do
- Don't nitpick style in urgent bug fixes
- Don't suggest complete rewrites when small fixes suffice
- Don't make assumptions about code without reading it
- Don't block on minor issues when critical issues exist
When Activated
- Identify the branch to review
- If given a branch name, use it
- If given a PR/MR number, use gh pr view to get branch info
- If no argument, review current branch against main/master
- Gather context
```bash
# Detect the base branch (main, master, develop, etc.)
BASE=$(git symbolic-ref refs/remotes/origin/HEAD 2>/dev/null | sed 's@^refs/remotes/origin/@@')
# Fallback if remote HEAD not set
if [ -z "$BASE" ]; then
for branch in main master develop; do
git rev-parse --verify $branch &>/dev/null && BASE=$branch && break
done
fi
# Get commit log for the branch
git log $BASE..HEAD --oneline
# Get overall diff stats
git diff $BASE...HEAD --stat
# Get the actual diff
git diff $BASE...HEAD
```
- Analyze systematically
Your Review Must Include
1. Executive Summary (2-3 sentences)
What does this MR do? What problem does it solve?
2. Changes Overview
- Files changed: X
- Lines added/removed: +X / -X
- Key areas affected: [list main modules/components]
3. Need to Know (Critical for reviewers)
Things that MUST be understood before approving:
- Breaking changes
- New dependencies
- Database migrations
- Environment variables required
- API changes
- Security implications
4. The Good
What's done well:
- Clean code patterns
- Good test coverage
- Proper error handling
- Performance considerations
- Documentation
5. Concerns
Issues that should be addressed:
Critical (must fix before merge):
- Security vulnerabilities
- Data loss risks
- Breaking changes without migration
Important (should fix):
- Missing tests for critical paths
- Error handling gaps
- Performance issues
Minor (nice to have):
- Code style inconsistencies
- Missing documentation
- Refactoring opportunities
6. Questions for the Author
Things that aren't clear from the code:
- Design decisions that need explanation
- Alternative approaches considered
- Testing strategy for edge cases
7. Suggestions
Specific, actionable improvements with code examples where helpful.
Review Principles
- Be specific: Reference files and line numbers
- Be constructive: Suggest solutions, not just problems
- Be proportional: Don't nitpick on style in a bug fix
- Be curious: Ask questions instead of assuming intent
- Be thorough: Check edge cases, error paths, tests
Output Format
```markdown
# MR Review: [Branch Name]
Summary
[2-3 sentence summary of what this MR does]
Changes
- Files changed: X
- Additions/Deletions: +X / -X
- Key areas: [list]
Need to Know
- [ ] [Critical item 1]
- [ ] [Critical item 2]
The Good
- [Positive point 1]
- [Positive point 2]
Concerns
Critical
- [file:line] Description of issue
Important
- [file:line] Description of issue
Minor
- [file:line] Description of issue
Questions
- [Question about design/intent]
Suggestions
- [Area]: [Specific suggestion]
```diff
- old code
+ suggested code
```
Verdict
[ ] Ready to merge - No critical issues
[ ] Needs changes - Address critical/important issues first
[ ] Needs discussion - Architectural concerns to resolve
```
More from this repository7
Installs a pre-commit review hook that forces code review by showing changes, detecting potential issues, and requiring user confirmation before committing.
explain-code skill from zbruhnke/claude-code-starter
Refreshes CLAUDE.md by analyzing recent code changes, identifying new patterns, and updating project context for future Claude Code sessions.
Refactors code to enhance readability, reduce complexity, and eliminate duplication while preserving original functionality.
Systematically documents and assesses risks for sensitive changes, providing a structured approach to identifying, mitigating, and monitoring potential issues during software modifications.
Autonomously implements a project from spec, enforcing quality gates, incrementally committing code, and maintaining comprehensive documentation.
Systematically verifies code quality by checking for TODOs, debug code, documentation, test coverage, and dependency health before releasing.