plugins/versioning/skills/changelog/SKILL.md
Generate or update CHANGELOG.md using git-cliff from conventional commit history - see https://git-cliff.org/docs/category/usage
npx skillsauth add jason-hchsieh/marketplace changelogInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are generating or updating a CHANGELOG.md file using git-cliff. For complete usage documentation, visit the git-cliff usage guide.
Check that git-cliff is installed:
git-cliff --version
If not installed, offer to install:
brew install git-cliffcargo install git-cliffCheck if cliff.toml exists in the project root. If not, suggest running /version-init to bootstrap configuration.
Check if CHANGELOG.md already exists:
Full generation (new or full regeneration):
git-cliff --output CHANGELOG.md
Incremental update (append unreleased changes):
git-cliff --unreleased --bump --prepend CHANGELOG.md
View latest release section only (for review):
git-cliff --latest
After generation, read the CHANGELOG.md file and show the user the changes (or the latest section for incremental updates).
If the user wants a full regeneration instead of an incremental update:
git-cliff --output CHANGELOG.md
For comprehensive git-cliff documentation and advanced usage, see git-cliff Usage Documentation.
| Flag | Purpose |
|------|---------|
| --output FILE | Write full changelog to file |
| --prepend FILE | Prepend new content to existing file |
| --unreleased | Only include unreleased commits |
| --bump | Auto-detect next version from commits |
| --latest | Show only the latest release section |
| --tag TAG | Use a specific tag for the release |
| --config FILE | Use a specific config file |
| --init STYLE | Initialize cliff.toml (styles: keepachangelog, default, minimal) |
| --changelog FILE | Specify custom changelog filename |
| --strip SECTION | Strip specified section from changelog |
| --exclude-path PATTERN | Exclude paths from changelog |
Keep a Changelog (recommended for most projects):
git-cliff --init keepachangelog
Produces well-structured changelogs with sections: Added, Changed, Deprecated, Removed, Fixed, Security
Default git-cliff style:
git-cliff --init
Uses git-cliff's default configuration format
Minimal style:
git-cliff --init minimal
Compact, minimal configuration for simple projects
First-time changelog for an existing project:
git-cliff --output CHANGELOG.md
Update before a release:
git-cliff --unreleased --bump --prepend CHANGELOG.md
Preview what would be in the next release:
git-cliff --unreleased --bump
Regenerate everything from scratch:
git-cliff --output CHANGELOG.md
After generating, report:
## Changelog Updated
- **Mode**: Full generation | Incremental update
- **File**: CHANGELOG.md
- **Versions covered**: vX.Y.Z - vA.B.C (or "all history")
### Preview (latest section)
[Show the most recent section of the changelog]
tools
Bootstrap versioning for a project - detect project type, initialize git-cliff config, and generate initial CHANGELOG.md using semantic versioning
development
Validate version consistency across all project files, check semver format, git tag alignment, and changelog synchronization per https://semver.org/
tools
Bump the project version following semver, update all version files per https://semver.org/
tools
Enable or disable a registered runbook by name - disabled runbooks skip automatic trigger execution