pr-checks
Run comprehensive PR checks including reviewing CodeRabbit comments, ensuring PR description quality, running pre-commit hooks, tests, and validation. Use on an existing PR to address review feedback.
Install
mkdir -p .claude/skills/pr-checks && curl -L -o skill.zip "https://mcp.directory/api/skills/download/8993" && unzip -o skill.zip -d .claude/skills/pr-checks && rm skill.zipInstalls to .claude/skills/pr-checks
About this skill
PR Checks Skill
This skill runs comprehensive PR checks to ensure code quality and address review feedback on an existing pull request.
When to Use
Run this skill when:
- A PR has been created and CodeRabbit has posted review comments
- You want to address existing review feedback systematically
- Before requesting final review/merge on a PR
Usage
/pr-checks
Workflow
1. Analyze Current State
First, understand what's being reviewed:
# Check current branch and status
git branch --show-current
git status --short
# Show diff summary vs main
git diff --stat main...HEAD
# Get the PR number for this branch
gh pr view --json number,title,state
2. Review and Fix PR Description
Ensure the PR has a proper description before addressing code comments:
# View current PR description
gh pr view --json body,title
A good PR description should include:
- Summary: 1-3 bullet points explaining what the PR does
- Test plan: How to verify the changes work
- Related issues: Links to Linear/GitHub issues (e.g.,
Closes MAS-XXX)
If the description is missing or inadequate:
# Update the PR description
gh pr edit --body "$(cat <<'EOF'
## Summary
<1-2 sentence overview of what this PR accomplishes>
### Changes
- <change 1: what was added/modified/removed>
- <change 2>
- <change 3>
- ...
### Technical details (if applicable)
<Brief explanation of implementation approach, architectural decisions, or non-obvious changes>
## Test plan
- [ ] <verification step 1>
- [ ] <verification step 2>
- [ ] <edge case or error scenario tested>
## Related issues
Closes MAS-XXX
## Screenshots/recordings (if applicable)
<Add screenshots for UI changes, terminal output for CLI changes>
🤖 Generated with [Claude Code](https://claude.com/claude-code)
EOF
)"
Fix the title if needed (should follow conventional commits format):
# Update PR title
gh pr edit --title "feat: descriptive title here"
3. Review Existing CodeRabbit Comments
This is the primary workflow. CodeRabbit automatically reviews PRs and posts comments. Use /pr-comments to fetch and process them:
/pr-comments
This fetches all review comments from the PR. For each CodeRabbit comment:
- Read the comment - Understand what CodeRabbit is suggesting
- Evaluate relevance - Is this a valid concern for this codebase?
- Decide action - One of:
- ✅ Implement - The suggestion is valid and worth fixing
- ❌ Skip - The suggestion doesn't apply or is too minor
- ❓ Clarify - Need more context from user before deciding
Walk through comments one by one with the user:
## CodeRabbit Comment #1 of 5
**File:** `massgen/backend/foo.py:45`
**Original code:**
```python
response = client.api_call(params)
return response.data
CodeRabbit suggestion:
Consider adding error handling for the API call. The request could fail due to network issues or API errors, which would cause an unhandled exception. This is especially important since this is called from the main orchestration loop where failures could crash the entire run. [truncated - 8 more lines]
Suggested change:
try:
response = client.api_call(params)
return response.data
except APIError as e:
logger.error(f"API call failed: {e}")
raise
My assessment: Valid concern - the API call could fail and there's no error handling.
Recommendation: ✅ Implement
Do you want me to:
- Implement this fix
- Skip this comment
- Need more information
**After user decides, resolve the comment on GitHub:**
```bash
# If implemented or intentionally skipped, resolve the comment thread
gh api graphql -f query='
mutation {
resolveReviewThread(input: {threadId: "THREAD_ID"}) {
thread { isResolved }
}
}
'
Alternatively, reply to the comment explaining the action taken:
# Reply to the comment
gh pr comment <PR_NUMBER> --body "Addressed in <commit-sha>: <brief description of fix>"
When showing comments:
- Show the original code being discussed
- Show the full suggestion text (truncate if >15 lines with "[truncated - N more lines]")
- Show the suggested change if CodeRabbit provided one
- Include line numbers for context
Wait for user approval before implementing each fix. This ensures:
- User maintains control over what changes are made
- No unnecessary changes are introduced
- Context-specific decisions can be made
4. Run Pre-commit Hooks
After making fixes, run pre-commit to ensure code style:
uv run pre-commit run --all-files
If issues are found, fix them and commit.
5. Run Tests
# Run tests (skip expensive API tests)
uv run pytest massgen/tests/ -v -m "not expensive and not docker" -x --tb=short
6. Validate Configs (if modified)
uv run python scripts/validate_all_configs.py
7. Commit and Push Fixes
# Stage fixes
git add -u .
# Commit with descriptive message
git commit -m "fix: address CodeRabbit review comments
- Fix error handling in foo.py
- Add missing type hints in bar.py
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <[email protected]>"
# Push to trigger CodeRabbit re-review
git push
8. Run PR Review Toolkit (Optional)
For additional analysis beyond CodeRabbit:
/pr-review-toolkit:review-pr
This runs specialized agents for:
- Code review against project guidelines
- Silent failure detection
- Type design analysis
- Test coverage analysis
9. (Optional) Run Local CodeRabbit Review
If you want to run a fresh local review (separate from GitHub PR comments):
coderabbit --prompt-only --type committed
Note: This runs CodeRabbit's own analysis locally, which may differ from the automated PR review. The GitHub PR comments from step 3 are typically more thorough since they have full PR context.
10. Generate Summary
After all checks, output a summary:
## PR Checks Summary
### Branch: feature/my-feature
- PR #123: "feat: add new feature"
- Commits ahead of main: 3
- Files changed: 5
### PR Description
✅ Has summary, test plan, and issue links
### CodeRabbit Comments Addressed
| Comment | File | Action |
|---------|------|--------|
| Add error handling | foo.py:45 | ✅ Implemented |
| Consider caching | bar.py:12 | ❌ Skipped (not applicable) |
| Missing type hint | baz.py:78 | ✅ Implemented |
### Check Results
| Check | Status |
|-------|--------|
| Pre-commit | ✅ Passed |
| Tests | ✅ 47 passed |
| Config Validation | ✅ Valid |
### Ready for Merge?
✅ All critical issues addressed, ready for final review
Reference
PR Description Template
## Summary
<1-2 sentence overview of what this PR accomplishes>
### Changes
- <change 1: what was added/modified/removed>
- <change 2>
- <change 3>
### Technical details (if applicable)
<Implementation approach, architectural decisions, or non-obvious changes>
## Test plan
- [ ] Step to verify functionality
- [ ] Edge cases tested
- [ ] Error scenarios handled
## Related issues
Closes MAS-XXX
## Screenshots/recordings (if applicable)
<For UI/CLI changes>
## Breaking changes (if applicable)
<What breaks and migration steps>
PR Title Format
Use conventional commits format:
feat:- New featurefix:- Bug fixdocs:- Documentation onlyrefactor:- Code change that neither fixes a bug nor adds a featureperf:- Performance improvementtest:- Adding or updating testschore:- Maintenance tasks
Pre-commit Hooks
- black - Python formatter (200 char line)
- isort - Import sorter
- flake8 - Style checker
- autoflake - Remove unused imports
Test Markers
@pytest.mark.expensive- Skip in quick checks@pytest.mark.docker- Docker-dependent
CodeRabbit Config
See .coderabbit.yaml for path-specific review instructions and exclusions.
More by massgen
View all skills by massgen →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
pdf-to-markdown
aliceisjustplaying
Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.
Related MCP Servers
Browse all serversDesktop Commander MCP unifies code management with advanced source control, git, and svn support—streamlining developmen
Boost Postgres performance with Postgres MCP Pro—AI-driven index tuning, health checks, and safe, intelligent SQL optimi
AkTools MCP Server — comprehensive stock market data and crypto market data with price history, technical indicators, fi
GistPad (GitHub Gists) turns gists into a powerful knowledge management system for daily notes and versioned content.
Connect with Square API for seamless e-commerce, orders, inventory, and payment processing via conversational interfaces
Access comprehensive Korean stock market data, including KOSPI stock index info, company data, and financials via DART &
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.