describe-pr
Automates the creation of pull request descriptions by pulling diffs, commits, and repository templates.
Install
mkdir -p .claude/skills/describe-pr && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/6838" && unzip -o skill.zip -d .claude/skills/describe-pr && rm skill.zipInstalls to .claude/skills/describe-pr
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Generate comprehensive PR descriptions following repository templatesKey capabilities
- →Read repository PR templates
- →Gather PR metadata and diffs
- →Aggregate reasoning history
- →Update PR descriptions via CLI
How it works
The skill reads a local template, gathers diffs and commit history, aggregates reasoning files, and updates the PR description using the GitHub CLI.
Inputs & outputs
When to use describe-pr
- →Generate standardized PR descriptions
- →Summarize pull request changes
- →Maintain consistent documentation across PRs
About this skill
Generate PR Description
You are tasked with generating a comprehensive pull request description following the repository's standard template.
Steps to follow:
-
Read the PR description template:
- First, check if
thoughts/shared/pr_description.mdexists - If it doesn't exist, inform the user they need to create a PR description template at
thoughts/shared/pr_description.md - Read the template carefully to understand all sections and requirements
- First, check if
-
Identify the PR to describe:
- Check if the current branch has an associated PR:
gh pr view --json url,number,title,state 2>/dev/null - If no PR exists for the current branch, or if on main/master, list open PRs:
gh pr list --limit 10 --json number,title,headRefName,author - Ask the user which PR they want to describe
- Check if the current branch has an associated PR:
-
Check for existing description:
- Check if
thoughts/shared/prs/{number}_description.mdalready exists - If it exists, read it and inform the user you'll be updating it
- Consider what has changed since the last description was written
- Check if
-
Gather comprehensive PR information:
- Get the full PR diff:
gh pr diff {number} - If you get an error about no default remote repository, instruct the user to run
gh repo set-defaultand select the appropriate repository - Get commit history:
gh pr view {number} --json commits - Review the base branch:
gh pr view {number} --json baseRefName - Get PR metadata:
gh pr view {number} --json url,title,number,state
- Get the full PR diff:
4b. Gather reasoning history (if available):
- Check if reasoning files exist:
ls .git/claude/commits/*/reasoning.md 2>/dev/null - If they exist, aggregate them:
bash "$CLAUDE_PROJECT_DIR/.claude/scripts/aggregate-reasoning.sh" main - This shows what approaches were tried before the final solution
- Save the output for inclusion in the PR description
-
Analyze the changes thoroughly: (ultrathink about the code changes, their architectural implications, and potential impacts)
- Read through the entire diff carefully
- For context, read any files that are referenced but not shown in the diff
- Understand the purpose and impact of each change
- Identify user-facing changes vs internal implementation details
- Look for breaking changes or migration requirements
-
Handle verification requirements:
- Look for any checklist items in the "How to verify it" section of the template
- For each verification step:
- If it's a command you can run (like
make check test,npm test, etc.), run it - If it passes, mark the checkbox as checked:
- [x] - If it fails, keep it unchecked and note what failed:
- [ ]with explanation - If it requires manual testing (UI interactions, external services), leave unchecked and note for user
- If it's a command you can run (like
- Document any verification steps you couldn't complete
-
Generate the description:
- Fill out each section from the template thoroughly:
- Answer each question/section based on your analysis
- Be specific about problems solved and changes made
- Focus on user impact where relevant
- Include technical details in appropriate sections
- Write a concise changelog entry
- If reasoning files were found (from step 4b):
- Add an "## Approaches Tried" section before "## How to verify it"
- Include the aggregated reasoning showing failed attempts and what was learned
- This helps reviewers understand the journey, not just the destination
- Ensure all checklist items are addressed (checked or explained)
- Fill out each section from the template thoroughly:
-
Save the description:
- Write the completed description to
thoughts/shared/prs/{number}_description.md - Show the user the generated description
- Write the completed description to
-
Update the PR:
- Update the PR description directly:
gh pr edit {number} --body-file thoughts/shared/prs/{number}_description.md - Confirm the update was successful
- If any verification steps remain unchecked, remind the user to complete them before merging
- Update the PR description directly:
Important notes:
- This command works across different repositories - always read the local template
- Be thorough but concise - descriptions should be scannable
- Focus on the "why" as much as the "what"
- Include any breaking changes or migration notes prominently
- If the PR touches multiple components, organize the description accordingly
- Always attempt to run verification commands when possible
- Clearly communicate which verification steps need manual testing
When not to use it
- →When no PR template is defined in the repository
Prerequisites
Limitations
- →Requires a template file at thoughts/shared/pr_description.md
- →Requires manual completion of verification steps that cannot be automated
How it compares
It automates the population of PR templates with actual code changes and reasoning, rather than requiring manual drafting.
Compared to similar skills
describe-pr side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| describe-pr (this skill) | 1 | 6mo | No flags | Intermediate |
| docs-review | 10 | 7mo | No flags | Beginner |
| claude-md-improver | 21 | 6mo | Review | Beginner |
| backend-to-frontend-handoff-docs | 3 | 6mo | No flags | Beginner |
Try saying
Example prompts that trigger this skill in your AI assistant.
More by parcadei
View all by parcadei →You might also like
docs-review
metabase
Review documentation changes for compliance with the Metabase writing style guide. Use when reviewing pull requests, files, or diffs containing documentation markdown files.
claude-md-improver
anthropics
Audit and improve CLAUDE.md files in repositories. Use when user asks to check, audit, update, improve, or fix CLAUDE.md files. Scans for all CLAUDE.md files, evaluates quality against templates, outputs quality report, then makes targeted updates. Also use when the user mentions "CLAUDE.md maintenance" or "project memory optimization".
backend-to-frontend-handoff-docs
davila7
Create API handoff documentation for frontend developers. Use when backend work is complete and needs to be documented for frontend integration, or user says 'create handoff', 'document API', 'frontend handoff', or 'API documentation'.
readme
sickn33
When the user wants to create or update a README.md file for a project. Also use when the user says 'write readme,' 'create readme,' 'document this project,' 'project documentation,' or asks for help with README.md. This skill creates absurdly thorough documentation covering local setup, architecture, and deployment.
doc-gen
phodal
Generate comprehensive documentation from code
generate-verified-docs
quran
Generates audit-grade, hallucination-free documentation from codebase features with full traceability. Use when documenting features, creating technical specs, or generating verified documentation with code references.