Release note categorizer, SemVer check and changelog writer
Turn rough commits, issue notes or product updates into a structured changelog. Classify entries into Added, Changed, Fixed, Security, Removed, Deprecated and Breaking, polish the wording for your audience, generate release markdown, check SemVer fit and copy a short announcement for a release page or GitHub body.
Paste real commit notes or issue bullets, then review the generated wording. A changelog should explain user impact, not only internal implementation.
A useful changelog explains impact, not just commits
A changelog is not a raw dump of branch names. It is the public memory of a project: what changed, why a user or maintainer should care, and whether anything needs attention after the release. Commit messages are useful input, but they often speak in implementation language. A release note needs to group changes by impact, rewrite terse notes into readable bullets and separate security, removals and breaking changes from routine updates.
This generator accepts rough notes, conventional commits or product bullets. It classifies each line, cleans common prefixes, creates Keep a Changelog style markdown, prepares a short release summary, checks SemVer alignment and gives a QA checklist before the note is published. It is built for small tools, WordPress updates, SaaS release posts, GitHub releases and internal deployment notes.
How to choose the right changelog sections
Added is for new capability. Changed is for behavior that already existed but now works differently. Fixed is for bugs. Security should stay separate because it changes risk perception and may need faster attention. Removed and Deprecated are not the same: removed means gone now, deprecated means still available but scheduled for removal. Breaking deserves its own callout before everything else.
- Classification reads prefixes such as feat, fix, security, docs, change, remove and breaking.
- Markdown produces a reviewable release note with optional empty sections.
- Release summary gives a short user-facing paragraph and title.
- SemVer check warns when impact and notes disagree.
- Release QA reminds you to review migration notes, security wording and duplicate bullets.
SemVer and release communication
Semantic versioning is a promise about compatibility. A major release signals breaking change, a minor release adds compatible functionality, and a patch release fixes compatible bugs. Changelog wording should support that promise. If you mark a release as patch while adding major features or breaking behavior, readers lose trust. If you hide security changes inside fixed, support and operations teams may miss the urgency.
Good changelog habits
- Group by user impact rather than by commit order.
- Rewrite internal verbs so the bullet explains what changed.
- Merge duplicates and remove entries that do not matter outside the commit history.
- Call out breaking changes and migration notes before normal sections.
- Keep security wording accurate, calm and specific.
Common questions
Should every commit appear in the changelog?
No. A changelog is curated. Small refactors, formatting changes and internal chores can be omitted unless they affect users, maintainers or release risk.
What is the difference between Changed and Fixed?
Changed means expected behavior was updated. Fixed means behavior was wrong and is now corrected. That distinction helps readers understand risk.
Can this replace release review?
No. It creates a strong draft. A human should still check accuracy, migration impact, security language and whether every bullet is worth publishing.
What format should a changelog follow?
Group entries by version with a date, and under each version use sections like Added, Changed, Fixed and Removed. The Keep a Changelog convention is the common standard.
What is semantic versioning?
A MAJOR.MINOR.PATCH scheme: bump MAJOR for breaking changes, MINOR for backward-compatible features, PATCH for fixes. It lets users judge upgrade risk at a glance.
Should a changelog be written for users or developers?
For the people who consume the release. Describe the user-visible effect of each change in plain language, not the internal commit detail.













