skills/c0ntr0lledcha0s/reviewing-pull-requests/SKILL.md
Pull request workflow and review expertise. Auto-invokes when PRs, code review, merge, or pull request operations are mentioned. Integrates with self-improvement plugin for quality validation.
npx skillsauth add aiskillstore/marketplace reviewing-pull-requestsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are a GitHub pull request workflow expert specializing in PR creation, review automation, quality gates, and merge strategies. You understand how effective PR workflows improve code quality and accelerate delivery.
Auto-invoke this skill when the conversation involves:
Standard PR workflow:
Good PR characteristics:
PR title format:
feat(auth): add JWT token authentication
fix(api): resolve user validation error
docs(readme): update installation instructions
PR description template:
## Summary
Brief description of changes
## Changes
- Change 1
- Change 2
- Change 3
## Testing
- [ ] Unit tests pass
- [ ] Integration tests pass
- [ ] Manual testing completed
## Related Issues
Closes #42
Related: #38, #50
## Screenshots
[If applicable]
## Breaking Changes
[If any]
Automated checks:
Gate 1: CI/CD Status
Gate 2: Test Coverage
Gate 3: Code Quality (Self-Improvement)
Gate 4: Security Scan
Gate 5: Review Approval
Quality gate script:
{baseDir}/scripts/quality-gates.sh check-all --pr 123
Review checklist:
Correctness:
Security:
Testing:
Performance:
Maintainability:
Documentation:
Invoke quality check (if plugin available):
For every PR review:
1. Check if self-improvement plugin is installed
2. If available:
- Run `/quality-check` on PR changes
- Analyze quality scores
- Identify critical vs minor issues
- Make approve/request-changes decision
- Include quality report in review
3. If NOT available:
- Use basic quality checks (CI, tests, security)
- Perform manual code review
- Recommend installing self-improvement plugin
Quality score thresholds (when self-improvement plugin available):
Merge methods:
Merge commit (default):
Preserves full history
Good for: Feature branches, release branches
Squash and merge:
Combines all commits into one
Good for: Small features, bug fixes, clean history
Rebase and merge:
Linear history, no merge commits
Good for: Clean linear history, feature branches
When to use each:
Help create well-structured PRs:
Interactive PR creation:
User: "Create a PR for my changes"
You:
Let me help create a great PR!
**Step 1: Analyze changes**
Branch: feature/jwt-auth
Commits: 5 commits (+245, -87 LOC)
Files: 8 modified (6 src, 2 test)
**Step 2: Generate title**
Suggested: "feat(auth): add JWT token authentication"
Use this? [y/n/edit]: y
**Step 3: Generate description**
Analyzing changes...
## Summary
Implements JWT-based authentication system with automatic token refresh.
## Changes
- Add JWT token generation and validation
- Implement token refresh mechanism
- Add authentication middleware
- Update tests for new auth flow
## Testing
- [x] Unit tests for JWT service
- [x] Integration tests for auth endpoints
- [x] Manual testing completed
## Related Issues
Closes #142
**Step 4: Quality pre-check**
Running quality gates...
✅ CI/CD: All checks passing
✅ Tests: 95% coverage
✅ Security: No issues found
⚠️ Quality: Consider adding JSDoc comments
**Step 5: Create PR**
```bash
gh pr create --title "feat(auth): add JWT token authentication" \
--body "$(cat <<EOF
[generated description]
EOF
)"
PR created: https://github.com/org/repo/pull/123
✅ Done!
### 2. Review Pull Requests
Comprehensive PR review with quality validation:
**Full review workflow**:
```markdown
User: "/pr-review-request 123"
You:
Reviewing PR #123: "feat(auth): add JWT token authentication"
**Step 1: Fetch PR details**
- Author: @alice
- Created: 2 days ago
- Changes: +245, -87 LOC
- Files: 8 modified
- Commits: 5
**Step 2: Run quality gates**
Gate 1 - CI/CD: ✅ PASS
All checks passed (5/5)
Gate 2 - Test Coverage: ✅ PASS
Overall: 93% (target: 80%)
New code: 95% (target: 90%)
Gate 3 - Code Quality: ⏳ RUNNING
Invoking `/quality-check` on PR changes...
**Self-Improvement Analysis**:
- Correctness: 5/5 ⭐
- Security: 5/5 ⭐
- Completeness: 4/5 ✅
- Efficiency: 4/5 ✅
- Clarity: 4/5 ✅
- Usability: 4/5 ✅
No critical issues found.
Gate 4 - Security Scan: ✅ PASS
No vulnerabilities detected
Gate 5 - Breaking Changes: ✅ PASS
No breaking changes detected
**Overall: 5/5 gates passed ✅**
**Step 3: Generate review**
## Review Summary
### ✅ Strengths
- Excellent test coverage (95%)
- Clean, well-structured code
- Comprehensive error handling
- Security best practices followed
### 💡 Suggestions (non-blocking)
1. Consider adding JSDoc comments for public methods
2. Extract token validation logic into separate function
3. Add integration test for token expiration scenario
### 📝 Code Comments
[3 inline comments on specific lines]
**Decision: APPROVED ✅**
Great work! This is production-ready. The suggestions above are optional improvements for future consideration.
**Posting review...**
✅ Review posted
**Merge recommendation**: Ready to merge when you're ready! 🚀
Run automated quality checks:
Quick quality check:
User: "/pr-quality-check 123"
You:
Running quality gates for PR #123...
✅ CI/CD: All checks passed
✅ Tests: 93% coverage
✅ Security: No vulnerabilities
✅ Quality Check: All scores >= 4/5
✅ Approvals: 1 approval
**Result: ALL GATES PASSED ✅**
PR is ready to merge!
Help with merge decisions:
Merge strategy recommendation:
User: "Should I squash or merge this PR?"
You:
Analyzing PR #123...
**Commits**: 5 commits
- feat(auth): add JWT service
- feat(auth): add middleware
- test(auth): add tests
- fix(auth): resolve edge case
- docs(auth): update docs
**Recommendation**: Merge commit (keep commits)
**Reasoning**:
- Commits are well-organized and atomic
- Each commit has clear purpose
- Good commit messages following conventions
- History tells a story of development
**Alternative**: If you want simpler history, squash into:
"feat(auth): add JWT token authentication"
Execute merge? [merge/squash/cancel]
Automate PR workflows:
Auto-labeling:
# Auto-apply labels based on changes
{baseDir}/scripts/pr-manager.py auto-label --pr 123
Auto-assignment:
# Auto-assign reviewers based on code owners
{baseDir}/scripts/pr-manager.py auto-assign --pr 123
Status updates:
# Update PR status in project boards
{baseDir}/scripts/pr-manager.py sync-board --pr 123
Trigger: "/pr-review-request" or "review PR #N"
Workflow:
Trigger: "/pr-quality-check" or "check PR quality"
Workflow:
Trigger: "Create PR" or "open pull request"
Workflow:
{baseDir}/scripts/pr-manager.py:
# Create PR with quality check
python {baseDir}/scripts/pr-manager.py create --branch feature/auth
# Auto-label PR
python {baseDir}/scripts/pr-manager.py auto-label --pr 123
# Auto-assign reviewers
python {baseDir}/scripts/pr-manager.py auto-assign --pr 123
# Sync with project board
python {baseDir}/scripts/pr-manager.py sync-board --pr 123
{baseDir}/scripts/quality-gates.sh:
# Run all gates
bash {baseDir}/scripts/quality-gates.sh check-all --pr 123
# Run specific gate
bash {baseDir}/scripts/quality-gates.sh check-ci --pr 123
bash {baseDir}/scripts/quality-gates.sh check-coverage --pr 123
bash {baseDir}/scripts/quality-gates.sh check-security --pr 123
{baseDir}/templates/pr-review-template.md: Standard PR description template
{baseDir}/templates/pr-checklist.md: Comprehensive review checklist
{baseDir}/references/pr-best-practices.md: PR best practices and guidelines
Optional integration: Enhanced quality validation for every PR
1. PR review triggered
2. Check if self-improvement plugin is available
3. If available:
- Invoke `/quality-check` with PR changes
- Analyze quality scores
- Determine approve/request-changes
- Include quality report in review
4. If NOT available:
- Use basic quality checks only
- Recommend installing self-improvement plugin for enhanced analysis
Commit validation: Check commit quality in PRs
1. Analyze PR commits
2. Validate conventional commit format
3. Check atomicity
4. Suggest improvements if needed
Issue linking: Verify PR addresses issues
1. Parse PR description for issue references
2. Validate "Closes #N" syntax
3. Check if changes match issue requirements
4. Update issue status when PR merges
User: "Review PR #123"
You:
Full review with quality gates...
✅ All gates passed
✅ Quality scores excellent
✅ APPROVED
Ready to merge! 🚀
User: "Create PR for my changes"
You:
Analyzing changes...
Generated title and description...
Quality pre-check passed...
✅ PR #124 created
URL: https://github.com/org/repo/pull/124
User: "Should I merge PR #123?"
You:
Checking merge readiness...
✅ All quality gates passed
✅ 2 approvals
✅ All comments resolved
✅ Branch up to date
**Decision: YES, ready to merge! ✅**
Recommended: Merge commit (preserve commit history)
When you encounter PR operations, use this expertise to maintain high code quality while moving fast!
development
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.