Generate changelog and release note markdown from conventional commits, semver tags, and repository metadata.
$npm i conventional-changelog
AI Analysis
conventional-changelog turns git history into release notes and CHANGELOG.md entries using conventional commit presets and repository metadata. It is a focused changelog generator, not a full release orchestration tool.
What It Enables
- Generate changelog sections from commits since the last semver tag, then print to stdout or merge the result into
CHANGELOG.md. - Regenerate full history or limit output to recent releases, unreleased work, specific tag prefixes, lerna package tags, or a subdirectory inside a repo.
- Load presets, config modules, and context JSON to adapt headings, links, and release note structure to a project's conventions.
Agent Fit
- Non-interactive flags, stdout support, and predictable file-writing modes fit CI jobs and inspect-change-verify loops around release preparation.
- Output is markdown only, so downstream automation gets human-readable release notes rather than structured JSON.
- Best when an agent already controls the repo, tags, and commit conventions and needs deterministic changelog generation inside a larger release workflow.
Caveats
- Output quality depends heavily on disciplined commit messages and semver tags; messy history produces weak changelogs.
- It only generates changelog content, so version bumps, tagging, and publishing still need companion scripts or tools.