Generate changelogs and release notes from Git history using conventional commits or custom parsers.
$brew install git-cliff
Agent Compatibility
JSON Output
Agent Skill
MCP Support
AI Analysis
git-cliff generates changelogs and release notes from Git history using conventional commits or custom parsers and templates. It is built for release workflows where you want reproducible notes, optional remote metadata, and semver bumps from the shell.
What It Enables
- Generate changelogs for full history, unreleased work, specific tag ranges, or merged history across multiple repositories.
- Shape release notes with config and templates, filter commits by path, tag, or range, and write or prepend
CHANGELOG.mdin CI. - Export changelog context as JSON, reuse JSON context as input, and enrich releases with contributor or pull request metadata from GitHub, GitLab, Gitea, Bitbucket, or Azure DevOps.
Agent Fit
--contextgives real JSON output, and the main workflow is flag-driven and non-interactive, so it fits scripted release pipelines well.- Best used as a release-notes primitive: an agent can inspect commit ranges, render notes, and calculate the next version, then hand off tagging or publishing to other tools.
- Fit depends on commit hygiene and config quality; without conventional commits or tuned parsers, generated output can be noisy.
Caveats
- It generates changelog content but does not create Git tags or publish releases for you.
- Remote enrichment needs tokens or API access, and offline runs skip that extra metadata.