AgentStack
SKILL verified MIT Self-run

Pr Creator

skill-matteocervelli-llms-pr-creator · by matteocervelli

Create comprehensive pull requests with detailed descriptions, test plans,

No reviews yet
0 installs
15 views
0.0% view→install

Install

$ agentstack add skill-matteocervelli-llms-pr-creator

✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets Used
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

Are you the author of Pr Creator? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Pull Request Creator Skill

Purpose

This skill provides systematic guidance for creating high-quality pull requests with comprehensive descriptions, proper commit messages, and complete test plans following conventional commits and project standards.

When to Use

  • After implementation, validation, documentation, and CHANGELOG updates
  • Ready to create pull request for code review
  • Need comprehensive PR description
  • Following git workflow best practices
  • Ensuring PR quality standards

PR Creation Workflow

1. Pre-Flight Checks

Objective: Verify everything is ready for PR creation.

Checklist:

# 1. All changes committed
git status
# Should show: "nothing to commit, working tree clean"

# 2. All tests passing
pytest
# All tests should be green

# 3. Code quality checks passed
black src/ tests/ --check
mypy src/
# Should have no errors

# 4. Documentation updated
# Verify docs/ has implementation docs
ls docs/implementation/

# 5. CHANGELOG updated
# Verify CHANGELOG.md has new entry
head -50 CHANGELOG.md

# 6. Version numbers synced
grep -r "version.*=.*[0-9]" pyproject.toml src/__init__.py
# Should all show same version

# 7. No merge conflicts with main
git fetch origin main
git merge-base --is-ancestor origin/main HEAD
# Exit code 0 means no conflicts

If any check fails:

  • Fix the issue before proceeding
  • Re-run checks until all pass
  • Don't create PR with failing checks

Deliverable: All pre-flight checks passed


2. Review Changes

Objective: Understand full scope of changes for PR description.

Review commit history:

# View all commits in feature branch
git log --oneline main..HEAD

# View detailed commit messages
git log main..HEAD

# View files changed
git diff --stat main..HEAD

# View actual changes
git diff main..HEAD

Analyze changes:

  • What was implemented?
  • What files were modified/added?
  • Are there breaking changes?
  • What tests were added?
  • What documentation was updated?

Review validation results:

  • Test coverage percentage
  • Performance benchmark results
  • Security scan results
  • Code quality metrics

Deliverable: Complete understanding of changes


3. Create Comprehensive Commit

Objective: Create commit with full feature changes and proper message.

Commit Message Format (Conventional Commits):

:  (#)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude 

Commit Types:

  • feat: New feature
  • fix: Bug fix
  • docs: Documentation only
  • style: Code style/formatting
  • refactor: Code refactoring
  • perf: Performance improvement
  • test: Adding tests
  • chore: Build, dependencies, configs

Example Commit Message:

feat: implement user authentication system (#123)

Implement comprehensive user authentication with JWT tokens,
OAuth providers, and session management. Includes password
reset flow, email verification, and role-based access control.

Implementation:
- JWT-based authentication with refresh tokens
- Support for email/password and OAuth (Google, GitHub)
- Session management with configurable timeout
- Password reset flow with email verification
- Role-based access control (RBAC) system

Security:
- Bcrypt password hashing (cost factor: 12)
- Rate limiting for login attempts (5 per minute)
- CSRF protection for all authenticated endpoints
- Input validation at all entry points
- Secure session storage with HttpOnly cookies

Performance:
- Redis caching for session data
- Database query optimization with proper indexing
- Response time 

Create commit:

# Stage all changes
git add .

# Commit with comprehensive message
git commit -m "$(cat 
EOF
)"

Deliverable: Comprehensive commit created


4. Push to Remote

Objective: Push feature branch to remote repository.

Push with upstream tracking:

# Push to remote with -u flag to set upstream
git push -u origin feature/issue-123-user-auth

# Verify push succeeded
git status
# Should show: "Your branch is up to date with 'origin/feature/...'"

Handle push errors:

Error: Remote branch exists

# Fetch and check
git fetch origin
git status

# If behind, pull first
git pull origin feature/issue-123-user-auth

# Then push again
git push -u origin feature/issue-123-user-auth

Error: Branch name doesn't start with 'claude/'

# May need to follow project branch naming convention
# Check if project requires specific prefix
# Rename branch if needed:
git branch -m new-branch-name
git push -u origin new-branch-name

Retry logic for network errors:

# Retry up to 4 times with exponential backoff
# Try 1: git push (wait 2s if failed)
# Try 2: git push (wait 4s if failed)
# Try 3: git push (wait 8s if failed)
# Try 4: git push (wait 16s if failed)

Deliverable: Code pushed to remote branch


5. Generate PR Description

Objective: Create comprehensive PR description.

PR Title Format:

:  (#)

Examples:

  • feat: implement user authentication system (#123)
  • fix: resolve memory leak in cache manager (#124)
  • docs: update API documentation for v2.0 (#125)

PR Description Template:

## Feature Summary

[2-3 sentence overview of what was implemented and why it matters]

## Implementation Details

**Architecture**: [Pattern used - e.g., service layer, repository pattern]

**Key Components**:
- **ComponentName**: [Purpose and responsibility]
- **AnotherComponent**: [Purpose and responsibility]

**Dependencies Added**:
- `package-name==version`: [Why it was added]

**Files Modified/Added**:
- `src/module/file.py`: [What changed]
- `tests/test_module.py`: [Tests added]
- `docs/guides/guide.md`: [Documentation]

## Security & Performance

### Security
- ✅ Input validation at all entry points
- ✅ Authentication/authorization implemented
- ✅ Output sanitization (XSS prevention)
- ✅ Parameterized queries (SQL injection prevention)
- ✅ Rate limiting configured
- ✅ Secrets managed securely (no hardcoded credentials)
- ✅ Security tests passing

**Security Measures**:
- [Specific measure 1]: [Details]
- [Specific measure 2]: [Details]

### Performance
- ✅ Performance targets met
- ✅ Caching strategy implemented
- ✅ Database queries optimized
- ✅ Async operations where appropriate
- ✅ Resource usage acceptable
- ✅ Performance tests passing

**Performance Metrics**:
- Response time: [actual vs target]
- Throughput: [requests per second]
- Resource usage: [CPU/memory]
- Database queries: [optimizations applied]

## Testing

### Coverage
- **Unit Tests**: [X]% coverage
- **Integration Tests**: [X endpoints/flows covered]
- **Security Tests**: [what's tested]
- **Performance Tests**: [benchmarks met]

### Test Types
- ✅ Unit tests for all business logic
- ✅ Integration tests for API endpoints
- ✅ Security tests for auth and validation
- ✅ Edge case and error handling tests
- ✅ Performance benchmarks

### Test Results
```bash
# All tests passing
pytest --cov=src --cov-report=term
Coverage: 92%
Tests: 156 passed, 0 failed

Documentation

  • ✅ Implementation docs: docs/implementation/issue-123-user-auth.md
  • ✅ User guide: docs/guides/authentication-guide.md
  • ✅ API documentation: docs/api/auth-api.md
  • ✅ Architecture docs: docs/architecture/auth-architecture.md
  • ✅ CHANGELOG updated with v[X.Y.Z] entry
  • ✅ README updated (if applicable)

Documentation Links:

  • [Implementation Details](docs/implementation/issue-123-user-auth.md)
  • [User Guide](docs/guides/authentication-guide.md)
  • [API Documentation](docs/api/auth-api.md)

Breaking Changes

[If yes, list them with migration instructions] [If no, state: "None"]

Migration Required: [If yes, provide step-by-step migration guide] [If no, state: "None required"]

Configuration Changes

New Environment Variables:

AUTH_JWT_SECRET=your_secret_here
AUTH_SESSION_TIMEOUT=3600
AUTH_RATE_LIMIT=100

Updated Configuration Files:

  • .env.example: Added AUTH_* variables
  • config.yaml: Added auth section

Validation Results

Code Quality

  • ✅ Black formatting: Passed
  • ✅ mypy type checking: Passed
  • ✅ flake8 linting: Passed (or score)
  • ✅ No code smells

Security Scan

  • ✅ Dependency vulnerabilities: None found
  • ✅ Secrets detection: No secrets in code
  • ✅ Security best practices: All followed

Performance Benchmarks

  • ✅ Response times within SLA
  • ✅ Resource usage acceptable
  • ✅ No memory leaks
  • ✅ Database queries optimized

Test Plan for Reviewers

Please verify the following:

Code Review

  • [ ] Review code changes for quality and maintainability
  • [ ] Check adherence to project coding standards
  • [ ] Verify error handling is comprehensive
  • [ ] Ensure no security vulnerabilities
  • [ ] Check for code duplication or complexity

Testing

  • [ ] Run test suite: pytest
  • [ ] Verify all tests pass
  • [ ] Check test coverage meets 80%+ threshold
  • [ ] Review test quality and completeness

Documentation

  • [ ] Read implementation docs for accuracy
  • [ ] Verify user guide is clear and helpful
  • [ ] Check API docs match implementation
  • [ ] Ensure CHANGELOG entry is accurate

Integration

  • [ ] Test integration with existing features
  • [ ] Verify no regressions introduced
  • [ ] Check backward compatibility
  • [ ] Test in staging environment (if applicable)

Manual Testing

  • [ ] Test happy path scenarios
  • [ ] Test error scenarios
  • [ ] Test edge cases
  • [ ] Verify security measures work

Acceptance Criteria

From issue #123:

  • [x] User can register with email and password
  • [x] User can login with email and password
  • [x] User can reset password via email
  • [x] User can login with OAuth (Google, GitHub)
  • [x] Session management with configurable timeout
  • [x] Role-based access control system
  • [x] 80%+ test coverage
  • [x] Comprehensive documentation

All acceptance criteria met ✅

Related Issues/PRs

  • Closes #123
  • Related to #100 (authentication epic)
  • Depends on #110 (email service)
  • Blocks #130 (user profiles)

Screenshots/Demos

[If UI changes, add screenshots or GIFs] [If CLI tool, add terminal output examples]

Deployment Notes

Deploy Requirements:

  • Run database migrations: alembic upgrade head
  • Update environment variables in production
  • Restart application servers
  • Clear Redis cache (if applicable)

Rollback Plan:

  • Revert database migrations: alembic downgrade -1
  • Restore previous environment variables
  • Rollback to previous deployment

Additional Notes

[Any other context, decisions, or information reviewers should know]


🤖 Generated with Claude Code


**Deliverable**: Comprehensive PR description

---

### 6. Create Pull Request

**Objective**: Create PR on GitHub with gh CLI.

**Using gh CLI**:
```bash
# Create PR with title and body
gh pr create \
  --title "feat: implement user authentication system (#123)" \
  --body "$(cat  pr-body.md /-`

**Examples**:
- `feature/123-user-authentication`
- `fix/124-memory-leak`
- `docs/125-api-documentation`
- `refactor/126-database-layer`

**Create feature branch**:
```bash
# From main branch
git checkout main
git pull origin main
git checkout -b feature/123-user-auth

Commit Messages

Follow Conventional Commits:

(): 

Examples:

feat(auth): add JWT authentication

Implement JWT-based authentication with refresh tokens.

Closes #123

fix(cache): resolve memory leak in cache manager

The cache manager was not properly releasing memory
when items expired, causing gradual RAM increase.

Fixes #124

docs(api): update authentication API documentation

Add examples and clarify error responses.

Keeping Branch Updated

Rebase on main (if no conflicts):

# Update main
git checkout main
git pull origin main

# Rebase feature branch
git checkout feature/123-user-auth
git rebase main

# Force push (if already pushed)
git push --force-with-lease origin feature/123-user-auth

Merge main (if conflicts or team prefers merge):

# Update main
git checkout main
git pull origin main

# Merge into feature
git checkout feature/123-user-auth
git merge main

# Resolve conflicts if any
# Then push
git push origin feature/123-user-auth

PR Templates

Minimal PR Template

## Summary
[What was done]

## Changes
- [Change 1]
- [Change 2]

## Testing
[How it was tested]

## Checklist
- [ ] Tests passing
- [ ] Documentation updated
- [ ] Ready for review

Closes #[issue]

Standard PR Template

## Summary
[Brief overview]

## Implementation
[Key technical details]

## Testing
- Coverage: [X]%
- Test types: [unit, integration, etc.]

## Documentation
- [ ] Updated
- Links: [doc links]

## Breaking Changes
[Yes/No - with details if yes]

## Checklist
- [ ] Tests passing
- [ ] Code quality checks passed
- [ ] Documentation updated
- [ ] CHANGELOG updated

Closes #[issue]

Comprehensive PR Template

[Use the full template from section 5]


Common Issues and Solutions

Issue: PR too large

Problem: PR has too many changes, hard to review

Solution:

  1. Break into smaller PRs
  2. Create epic issue for tracking
  3. Submit incremental PRs
# Create separate branches for each part
git checkout -b feature/123-auth-part1-models
# Implement models only, create PR

git checkout main
git checkout -b feature/123-auth-part2-service
# Implement service, create PR

# etc.

Issue: Merge conflicts

Problem: Branch conflicts with main

Solution:

  1. Update main
  2. Rebase or merge main into feature
  3. Resolve conflicts
  4. Test everything still works
  5. Push updated branch
git checkout main
git pull origin main
git checkout feature/123-auth
git rebase main
# Resolve conflicts
git add .
git rebase --continue
# Test
pytest
git push --force-with-lease origin feature/123-auth

Issue: CI checks failing

Problem: PR created but CI checks fail

Solution:

  1. View check details
  2. Fix issues locally
  3. Commit and push fixes
  4. Verify checks pass
# View checks
gh pr checks

# Fix issues
# Commit fixes
git add .
git commit -m "fix: resolve CI check failures"
git push origin feature/123-auth

# Verify
gh pr checks

Issue: Missing information in PR

Problem: Reviewer asks for more details

Solution: Update PR description

# Edit PR description
gh pr edit 456 --body "$(cat <<'EOF'
[Updated comprehensive description]
EOF
)"

# Or edit in browser
gh pr edit 456
# Opens editor

Supporting Resources

Git Commands Reference

# Branch operations
git branch                          # List branches
git checkout -b feature/123        # Create and switch
git branch -d feature/123          # Delete branch
git push -u origin feature/123     # Push with upstream

# Status and diff
git status                         # Working tree status
git diff                           # Unstaged changes
git diff --staged                  # Staged changes
git diff main..HEAD                # Changes vs main

# Commit operations
git add .                          # Stage all changes
git commit -m "message"            # Commit with message
git commit --amend                 # Amend last commit

# Remote operations
git fetch origin                   # Fetch from remote
git pull origin main               # Pull main branch
git push origin feature/123        # Push branch
git push --force-with-lease        # Safe force push

# Log and history
git log --oneline                  # Compact log
git log --graph --all              # Graph view
git log main..HEAD                 # Commits not in main

GitHub CLI Reference

# PR creation
gh pr create                       # Interactive
gh pr create --title "..." --body "..."  # Direct

# PR management
gh pr list                         # List PRs
gh pr view 123                     # View PR
gh pr view --web

…

## Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [matteocervelli](https://github.com/matteocervelli)
- **Source:** [matteocervelli/llms](https://github.com/matteocervelli/llms)
- **License:** MIT

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet — be the first.

Versions

  • v0.1.0 Imported from the upstream source.