home / github / conventional-changelog

conventional-changelog CLI

8.4k

Generate changelog and release note markdown from conventional commits, semver tags, and repository metadata.

$npm i conventional-changelog
Language
TypeScript
Stars
8,398
Category
GitHub & Git
Agent
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.