with one click
release-notes
// Generate user-facing release notes for a version by reading PR descriptions from GitHub. Use when the user asks to create or draft release notes.
// Generate user-facing release notes for a version by reading PR descriptions from GitHub. Use when the user asks to create or draft release notes.
| name | release-notes |
| description | Generate user-facing release notes for a version by reading PR descriptions from GitHub. Use when the user asks to create or draft release notes. |
| disable-model-invocation | true |
Generate release notes for the given version tag or range. The user will provide the version (e.g. v0.1.0) or a comparison range (e.g. v0.0.41...v0.1.0).
Arguments: $ARGUMENTS
Use gh to get all merged PRs in the release range. If the user provides a single version tag, find the previous tag to build the comparison range.
# Find the previous tag if needed
git tag --sort=-v:refname
# Get the commit range
git log <previous-tag>...<version-tag> --oneline
# Extract PR numbers from merge commits or commit messages
For each PR, fetch the title, body, and author using gh:
gh pr view <number> --json title,body,author
This is critical — do NOT write release notes from PR titles alone. You MUST read the full PR description body to understand what each change actually does.
Write the notes to /Users/tarik/Desktop/irdashies-demos/release-<version>.md.
## Features
### Feature Name (by @author)
Brief description of the feature.
- Bullet points describing what users can do
### ...more features...
### Performance Optimizations (by @author)
- Bullet points — describe the user-visible improvement (e.g. "smoother rendering"), not the implementation
### Bug Fixes
- **Short label** — one-line description of what was broken and what's fixed now (by @author)
### Changelog
- commit-prefix: title by @author in PR-URL
- ...
### New Contributors
- @user made their first contribution in PR-URL
**Full Changelog**: compare-URL
(by @author1 and @author2) or (by @author1, @author2, and @author3)**bold label** with em-dash for each bullet when a section has multiple itemsOrder the changelog entries by commit type, then by PR number within each group:
feat: — new featuresfix: — bug fixesperf: — performance improvementschore: — maintenance, deps, tests, refactors (merge refactor: into chore: prefix)After writing the file, let the user know it's ready and give a brief summary of what's in the release.