| name | changelog-generator |
| description | Automatically creates user-facing changelogs from git commits by analyzing commit history, categorizing changes, and transforming technical commits into clear, customer-friendly release notes. |
Changelog Generator
This skill transforms technical git commits into polished, user-friendly changelogs that your customers and users will actually understand and appreciate.
When to Use This Skill
- Preparing release notes for a new version
- Creating weekly or monthly product update summaries
- Documenting changes for customers
- Writing changelog entries for app store submissions
- Generating update notifications
- Creating internal release documentation
- Maintaining a public changelog/product updates page
What This Skill Does
- Scans Git History: Analyzes commits from a specific time period or between versions
- Categorizes Changes: Groups commits into logical categories (features, improvements, bug fixes, breaking changes, security)
- Translates Technical to User-Friendly: Converts developer commits into customer language
- Formats Professionally: Creates clean, structured changelog entries
- Filters Noise: Excludes internal commits (refactoring, tests, etc.)
- Follows Best Practices: Applies changelog guidelines and your brand voice
How to Use
Basic Usage
From your project repository:
Create a changelog from commits since last release
Generate changelog for all commits from the past week
Create release notes for version 2.5.0
With Specific Date Range
Create a changelog for all commits between March 1 and March 15
With Custom Guidelines
Create a changelog for commits since v2.4.0, using my changelog
guidelines from CHANGELOG_STYLE.md
Instructions
When a user requests a changelog:
Step 1: Gather Commit History
# Get commits since last tag
git log $(git describe --tags --abbrev=0)..HEAD --oneline
# Get commits from specific date range
git log --since="2024-01-01" --until="2024-01-31" --oneline
# Get commits between two tags
git log v2.4.0..v2.5.0 --oneline
Step 2: Categorize Commits
Group commits into these categories:
| Category | Prefix Indicators | Icon |
|---|---|---|
| New Features | feat:, feature:, add: | ✨ |
| Improvements | improve:, enhance:, update:, perf: | 🔧 |
| Bug Fixes | fix:, bugfix:, hotfix: | 🐛 |
| Breaking Changes | BREAKING:, breaking: | ⚠️ |
| Security | security:, sec: | 🔒 |
| Documentation | docs:, doc: | 📚 |
Step 3: Filter Out Internal Changes
Exclude these commit types from user-facing changelogs:
- refactor:, refactoring
- test:, tests:
- chore:
- ci:, build:
- style: (formatting only)
- wip:, WIP
Step 4: Transform to User-Friendly Language
Before (Technical):
feat(auth): implement JWT refresh token rotation with sliding window
fix(api): resolve race condition in concurrent request handler
perf(db): add composite index on users table for search queries
After (User-Friendly):
✨ New Features
- Stay logged in longer! Your session now automatically refreshes
🐛 Fixes
- Fixed an issue where simultaneous actions could cause errors
🔧 Improvements
- User search is now significantly faster
Step 5: Format the Changelog
# Updates - [Version/Date]
## ✨ New Features
- **[Feature Name]**: [One sentence description of what users can now do]
## 🔧 Improvements
- **[Area]**: [How the user experience is better]
## 🐛 Fixes
- Fixed [user-facing issue description]
## ⚠️ Breaking Changes (if any)
- [What changed and what users need to do]
Example
Input: "Create a changelog for commits from the past 7 days"
Output:
# Updates - Week of March 10, 2024
## ✨ New Features
- **Team Workspaces**: Create separate workspaces for different
projects. Invite team members and keep everything organized.
- **Keyboard Shortcuts**: Press ? to see all available shortcuts.
Navigate faster without touching your mouse.
## 🔧 Improvements
- **Faster Sync**: Files now sync 2x faster across devices
- **Better Search**: Search now includes file contents, not just titles
## 🐛 Fixes
- Fixed issue where large images wouldn't upload
- Resolved timezone confusion in scheduled posts
- Corrected notification badge count
Tips
- Run from your git repository root
- Specify date ranges for focused changelogs
- Use a CHANGELOG_STYLE.md for consistent formatting
- Review and adjust the generated changelog before publishing
- Save output directly to CHANGELOG.md
Related Use Cases
- Creating GitHub release notes
- Writing app store update descriptions
- Generating email updates for users
- Creating social media announcement posts
WITH MCP Tools
If you have MCP tools available, the process is faster:
"Generate changelog from last week's commits using review_file for analysis"
WITHOUT MCP Tools
Use standard git commands:
# View recent commits
git log --oneline -50
# View commits since tag
git log v1.0.0..HEAD --pretty=format:"%s"
# View commits by author
git log --author="name" --since="1 week ago"