| name | pr-description-generator |
| description | Generate comprehensive PR titles and descriptions with summary, test plan, risks, and linked issues. Use when the user asks to write or improve a pull request description. |
Skill: PR Description Generator
Analyze branch changes and produce a complete pull request title and description following team conventions.
Trigger
When the user asks to generate, write, or improve a PR description — or when opening a new pull request.
Prerequisites
Steps
Step 1: Gather Branch Context
Step 2: Analyze Change Scope
Step 3: Generate PR Title
Step 4: Generate PR Body
Summary Section
Type of Change
Changes Made
Testing
Risk & Rollback
Screenshots / Recordings
Checklist
Related Issues
Step 5: Security Review
Step 6: Output
Rules
- NEVER include secrets, API keys, or real infrastructure names in PR text
- NEVER include PII (customer names, emails, etc.)
- ALWAYS mention what testing was done and what was skipped
- ALWAYS flag breaking changes prominently
- Keep the summary concise — reviewers skim first, read details second
Template Output
## Summary
Brief description of changes and motivation.
## Type of Change
- [ ] Feature
- [ ] Bug fix
- [ ] Refactor
- [ ] Documentation
- [ ] Breaking change
## Changes
- Added X to handle Y
- Updated Z for better performance
- Removed deprecated W
## Testing
- [x] Unit tests added for new service
- [x] Type-check passes
- [ ] Integration tests (not applicable — no API changes)
## Risk & Rollback
- Low risk — additive change behind feature flag
- Rollback: disable `FEATURE_X` flag
## Screenshots
N/A (backend only)
## Checklist
- [x] Tests added
- [x] Docs updated
- [x] No secrets in code
- [x] Type-check passes
## Related Issues
Closes #123
Refs #100
Completion
Copy-paste ready PR title and description. If the branch has many commits spanning multiple concerns, suggest splitting into stacked PRs.
If a Step Fails
- No commits on branch: Ask the user to describe planned changes
- Can't determine base branch: Default to
main, ask for confirmation
- Large diff (>50 files): Group changes by module, provide high-level summary
- No test info: Add a note: "Testing plan TBD" and flag for the user