Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Pr Refine

ASecurity

Review a pull request and suggest refinement options, then document them

8 stars
0 votes
0 copies
0 views
Added 9/20/2026
code-qualityjavascriptgojavabashtestingrefactoringgitapidatabasefrontend

Works with

cliapi

Security Analysis

A100/100

Scanned 9/20/2026

Install to Claude Code

$npx -y skills add tstapler/dotfiles --skill pr-refine --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Pr Refine?

Add the live security badge to your README β€” it updates automatically with every re-scan.

Security grade badge for Pr Refine
[![Security: A β€” Skills Directory](https://www.skillsdirectory.com/api/skills/tstapler-pr-refine/badge)](https://www.skillsdirectory.com/skills/tstapler-pr-refine)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
description: Review a pull request and suggest refinement options, then document them
  as a structured feature plan
---

# Pull Request Refinement & Planning

Review an existing pull request, suggest comprehensive refinement options, and create a structured feature plan for improvements using industry best practices.

## Prerequisites Check

First, I'll verify prerequisites and gather PR information:

```bash
# Check GitHub CLI availability
gh --version

# Verify authentication
gh auth status

# Get repository context
git remote -v
git branch --show-current
```

## Step 1: PR Analysis

I'll analyze the pull request to understand current state:

```bash
# Extract PR number from URL or use directly
PR_NUMBER="${1:-}"

# If URL provided, extract PR number
if [[ "$PR_NUMBER" == *"github.com"* ]]; then
  PR_NUMBER=$(echo "$PR_NUMBER" | grep -oE '[0-9]+$')
fi

# Get PR details
gh pr view $PR_NUMBER --json title,body,state,author,createdAt,updatedAt,labels,milestone,reviewRequests,reviews,statusCheckRollup,comments,commits,files,additions,deletions,changedFiles

# Get PR diff
gh pr diff $PR_NUMBER

# Get PR files changed
gh pr view $PR_NUMBER --json files --jq '.files[].path'

# Get commit history
gh pr view $PR_NUMBER --json commits --jq '.commits[].commit.message'

# Get review comments
gh api repos/{owner}/{repo}/pulls/$PR_NUMBER/comments

# Get PR checks status
gh pr checks $PR_NUMBER
```

## Step 2: Multi-Dimensional Review

I'll perform a comprehensive review across multiple dimensions:

### Size & Scope Analysis
**Research-backed guidelines:**
- **Ideal PR size**: 50-200 lines of code
- **Maximum recommended**: 250 lines
- **Review effectiveness**: 200-400 LOC yields 70-90% defect discovery
- **Review time**: PRs over 400 lines take 50% longer to review per line

I'll analyze:
- Total lines changed
- Number of files modified
- Scope of changes (feature, bug fix, refactor)
- Opportunities to split into smaller PRs

### Code Quality Assessment
- **Design patterns**: Appropriate usage and opportunities
- **SOLID principles**: Adherence and violations
- **Clean Code**: Naming, readability, maintainability
- **DRY violations**: Code duplication
- **Complexity**: Cyclomatic complexity, cognitive load
- **Error handling**: Comprehensive and appropriate
- **Security**: OWASP top 10 considerations

### Testing Coverage
- **Test presence**: Are all changes tested?
- **Test quality**: Unit vs integration appropriateness
- **Test patterns**: Following testing best practices
- **Coverage metrics**: Line, branch, and path coverage
- **Edge cases**: Boundary conditions handled
- **Test maintainability**: Avoiding fragile tests

### Documentation Quality
- **PR description**: Following template best practices
- **Code comments**: Necessary and helpful
- **API documentation**: Updated for public interfaces
- **README updates**: Reflecting new features/changes
- **Migration guides**: For breaking changes
- **Architecture decisions**: ADRs for significant choices

### Commit Structure
- **Conventional Commits**: Format compliance
- **Logical commits**: One concern per commit
- **Commit size**: Atomic, reviewable units
- **Commit messages**: Clear and descriptive
- **History cleanliness**: No merge commits, clean rebase

### Performance Considerations
- **Algorithm efficiency**: O(n) analysis
- **Database queries**: N+1 problems, index usage
- **Memory usage**: Leaks, unnecessary allocations
- **Caching opportunities**: Reducing redundant work
- **Async operations**: Proper concurrency handling

### Architecture Alignment
- **Pattern consistency**: Following project patterns
- **Layer separation**: Clean boundaries
- **Dependency direction**: Following architecture rules
- **Module cohesion**: Single responsibility
- **Technical debt**: New vs addressed

## Step 3: Generate Refinement Suggestions

Based on the analysis, I'll create categorized refinement suggestions:

### Critical Refinements (Must Fix)
Issues that block merge or create significant problems:
- Security vulnerabilities
- Breaking changes without migration path
- Failing tests or broken CI
- Performance regressions
- Data loss risks

### High Priority Improvements
Significant quality improvements:
- Missing test coverage for critical paths
- SOLID principle violations
- Complex code needing simplification
- Inadequate error handling
- Documentation gaps for public APIs

### Medium Priority Enhancements
Good improvements for maintainability:
- Code duplication removal
- Better naming conventions
- Additional edge case tests
- Performance optimizations
- Comment improvements

### Low Priority Polish
Nice-to-have refinements:
- Style consistency
- Additional documentation
- Refactoring opportunities
- Test improvements
- Code organization

## Step 4: PR Splitting Strategy

If the PR is too large, I'll suggest how to split it:

### Vertical Slicing (Preferred)
Split by complete features/fixes:
1. **Infrastructure changes** - Database, config, dependencies
2. **Core implementation** - Business logic, main feature
3. **UI/API changes** - Frontend, endpoints
4. **Tests** - Comprehensive test suite
5. **Documentation** - Guides, API docs

### Horizontal Slicing (When Necessary)
Split by technical layers:
1. **Data layer** - Models, migrations, repositories
2. **Business layer** - Services, domain logic
3. **Presentation layer** - Controllers, views
4. **Cross-cutting** - Logging, security, caching

### Commit-Based Splitting
If commits are well-structured:
1. Cherry-pick logical commit groups
2. Create focused PRs from commit sets
3. Maintain commit message quality
4. Preserve logical progression

## Step 5: Create Feature Plan

I'll use the `/plan:feature` command to document the refinement plan:

```
/plan:feature PR-$PR_NUMBER Refinement Plan:

## Current State
- PR #$PR_NUMBER: [Title]
- Author: [Author]
- Size: [Lines changed] lines across [Files] files
- Purpose: [Extracted from PR description]

## Refinement Objectives
1. [Objective 1 - e.g., Improve test coverage]
2. [Objective 2 - e.g., Split into smaller PRs]
3. [Objective 3 - e.g., Address code quality issues]

## Critical Issues to Address
[List of must-fix issues identified]

## Improvement Opportunities
[List of enhancement suggestions]

## Proposed PR Structure (if splitting)
1. PR 1: [Description] - [Estimated LOC]
2. PR 2: [Description] - [Estimated LOC]
3. PR 3: [Description] - [Estimated LOC]

## Implementation Plan
[Detailed steps to implement refinements]

## Success Criteria
- All critical issues resolved
- Test coverage meets project standards
- PR size within recommended limits
- Clear documentation and commit structure
- Passing CI/CD checks
```

## Step 6: Generate Actionable Report

I'll create a comprehensive refinement report:

```markdown
# Pull Request Refinement Report

**PR**: #$PR_NUMBER - [Title]
**Author**: [Author]
**Review Date**: [Current date]
**Current Status**: [Status and checks]

---

## Executive Summary

**Overall Assessment**: [Good/Needs Work/Requires Major Changes]
**Estimated Refinement Effort**: [Hours/Days]
**Recommendation**: [Approve/Request Changes/Split PR]

### Key Metrics
- **Size**: [LOC] lines ([Above/Within/Below] recommended)
- **Test Coverage**: [%] ([Adequate/Insufficient])
- **Code Quality**: [Score/10]
- **Documentation**: [Complete/Partial/Missing]

---

## Detailed Findings

### πŸ”΄ Critical Issues (Block Merge)
1. **[Issue Title]**
   - Location: `file:line`
   - Description: [What's wrong]
   - Impact: [Why it matters]
   - Fix: [How to resolve]
   - Effort: [Small/Medium/Large]

### 🟑 High Priority Improvements
1. **[Improvement Title]**
   - Location: `file:line`
   - Current: [Current state]
   - Suggested: [Better approach]
   - Benefit: [Why improve]
   - Effort: [Small/Medium/Large]

### 🟒 Medium Priority Enhancements
[List of good-to-have improvements]

### πŸ”΅ Low Priority Polish
[List of nice-to-have refinements]

---

## PR Restructuring Recommendation

### Current Structure Problems
- [Problem 1 - e.g., Too many concerns in single PR]
- [Problem 2 - e.g., Mixing features with refactoring]
- [Problem 3 - e.g., Difficult to review effectively]

### Proposed Split Strategy
**PR 1: [Infrastructure/Foundation]**
- Files: [List of files]
- Purpose: [What it accomplishes]
- Size: ~[LOC] lines
- Dependencies: None

**PR 2: [Core Implementation]**
- Files: [List of files]
- Purpose: [What it accomplishes]
- Size: ~[LOC] lines
- Dependencies: PR 1

**PR 3: [Tests & Documentation]**
- Files: [List of files]
- Purpose: [What it accomplishes]
- Size: ~[LOC] lines
- Dependencies: PR 1, PR 2

---

## Implementation Checklist

### Before Refining
- [ ] Discuss plan with PR author
- [ ] Agree on split strategy
- [ ] Backup current branch
- [ ] Create feature branches

### During Refinement
- [ ] Address critical issues
- [ ] Implement high priority improvements
- [ ] Split PR if needed
- [ ] Update tests
- [ ] Update documentation
- [ ] Verify CI passes

### After Refinement
- [ ] Self-review changes
- [ ] Update PR descriptions
- [ ] Request re-review
- [ ] Verify all checks pass
- [ ] Update related issues

---

## Commit Message Templates

### For Fixes
```
fix: [description of fix]

- Addresses review comment about [issue]
- Fixes [specific problem]
- Improves [aspect]

Refs: #$PR_NUMBER
```

### For Improvements
```
refactor: [description of improvement]

- Simplifies [complex code]
- Improves [readability/performance]
- Follows [pattern/principle]

Refs: #$PR_NUMBER
```

### For Splits
```
feat: [feature part 1/3] - [description]

Extracted from #$PR_NUMBER as part of PR split strategy.
This PR contains [what's included].

Part of: #[epic/issue]
Next: #[next PR number]
```

---

## Success Metrics

### Review Efficiency
- **Target review time**: < 60 minutes
- **Review cycles**: 1-2 maximum
- **Time to merge**: < 24 hours after approval

### Code Quality
- **Test coverage**: > 80%
- **Complexity**: < 10 cyclomatic
- **Duplication**: < 3%
- **Security**: No critical vulnerabilities

### PR Health
- **Size**: 50-200 lines ideal
- **Files changed**: < 10 files
- **Clear purpose**: Single responsibility
- **Clean history**: Logical commits

---

## Next Steps

1. **Immediate Actions**
   - [Action 1 with owner]
   - [Action 2 with timeline]

2. **Follow-up Tasks**
   - [Task 1 for tracking]
   - [Task 2 for future]

3. **Long-term Improvements**
   - [Process improvement 1]
   - [Team learning opportunity]

---

## References

- [GitHub PR Best Practices](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/getting-started/best-practices-for-pull-requests)
- [Conventional Commits](https://www.conventionalcommits.org)
- [Clean Code Principles](https://github.com/ryanmcdermott/clean-code-javascript)
- Project ADRs: [List relevant ADRs]
```

## Step 7: Track with Project Coordinator

After generating the refinement plan, I'll delegate tracking to the project coordinator:

```
@task project-coordinator

Track the following PR refinement tasks for PR #$PR_NUMBER:

[Insert refinement plan and checklist]

Please:
1. Create ATOMIC tasks for each refinement item
2. Organize by priority (Critical β†’ Low)
3. Group related improvements for efficiency
4. Estimate effort for each task
5. Create a tracking structure in TODO.md
6. Define success criteria for PR approval
```

## Error Handling

### If PR Not Found
- Verify PR number/URL is correct
- Check repository context
- Ensure proper GitHub authentication

### If Analysis Fails
- Check GitHub API limits
- Verify repository permissions
- Ensure PR is accessible

### If Too Complex
- Focus on highest-impact improvements
- Suggest incremental refinement approach
- Prioritize critical issues first

## Integration with Other Commands

This command works well with:
- `/git:create-pr` - Creating refined PRs after split
- `/code:review` - Detailed code quality analysis
- `/plan:feature` - Comprehensive planning documentation
- `/quality:architecture-review` - Deep design analysis
- `/code:refactor` - Implementing suggested improvements

## Success Criteria

This command succeeds when:
βœ… PR is thoroughly analyzed across all dimensions
βœ… Clear, prioritized refinement suggestions provided
βœ… Actionable implementation plan created
βœ… Feature plan documented for tracking
βœ… Author has clear next steps
βœ… Review efficiency is improved

## Best Practices Applied

βœ… **GitHub Best Practices** - Optimal PR size and structure
βœ… **Conventional Commits** - Clean commit history
βœ… **Code Review Research** - Evidence-based size recommendations
βœ… **Testing Pyramid** - Appropriate test coverage
βœ… **Clean Code** - Maintainability focus
βœ… **SOLID Principles** - Design quality
βœ… **Security First** - OWASP considerations
βœ… **Documentation** - Comprehensive and clear

---

Let me analyze PR #$1 and provide comprehensive refinement suggestions!

Attribution

tstaplertstapler
View sourceMore from tstapler β†’
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots Β· $299/mo Β· GSC-verified traffic Β· sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots Β· $299/mo Β· GSC-verified traffic Β· sponsors can never buy grades.

See placements

Related Skills

Caveman Commit

Ultra-compressed commit message generator. Cuts noise from commit messages while preserving intent and reasoning. Conventional Commits format. Subject ≀50 chars, body only when "why" isn't obvious. Use when user says "write a commit", "commit message", "generate commit", "/commit", or invokes /caveman-commit. Auto-triggers when staging changes.

1023331 votes

Caveman Review

Ultra-compressed code review comments. Cuts noise from PR feedback while preserving the actionable signal. Each comment is one line: location, problem, fix. Use when user says "review this PR", "code review", "review the diff", "/review", or invokes /caveman-review. Auto-triggers when reviewing pull requests.

1023331 votes

Springboot Verification

Verification loop for Spring Boot projects: build, static analysis, tests with coverage, security scans, and diff review before release or PR.

2456590 votes

Verification Loop

δΈ€δΈͺε…¨ι’ηš„ Claude Code 会话ιͺŒθ―η³»η»Ÿγ€‚

2456590 votes

Django Verification

Verification loop for Django projects: migrations, linting, tests with coverage, security scans, and deployment readiness checks before release or PR.

2456590 votes
View all in code-quality β†’