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:
code
Create a changelog from commits since last release
code
Generate changelog for all commits from the past week
code
Create release notes for version 2.5.0
With Specific Date Range
code
Create a changelog for all commits between March 1 and March 15
With Custom Guidelines
code
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
bash
# 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):
code
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):
code
✨ 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
markdown
# 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:
markdown
# 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:
code
"Generate changelog from last week's commits using review_file for analysis"
WITHOUT MCP Tools
Use standard git commands:
bash
# 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"