keep-a-changelog
Original:🇺🇸 English
Translated
Maintains CHANGELOG.md following Keep a Changelog format and Semantic Versioning. Use when the user mentions preparing or publishing a new release, or asks to review or refactor CHANGELOG.md.
2installs
Sourceak1ra-komj/agents-skills
Added on
NPX Install
npx skill4agent add ak1ra-komj/agents-skills keep-a-changelogTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →keep-a-changelog
Add a new version entry to , or restructure the entire file, following
the Keep a Changelog format and
Semantic Versioning.
CHANGELOG.mdWorkflow — new version entry
- Read to identify the last released version and its date.
CHANGELOG.md - Run to list all commits since that tag. If no tag exists for the last version, use
git log --oneline <last-tag>..HEADand filter manually.git log --oneline - Run to get today's release date — never hardcode it.
date +%Y-%m-%d - Determine the new version number (ask the user if not specified):
- MAJOR bump: breaking changes or major redesign.
- MINOR bump: new features, backward-compatible.
- PATCH bump: bug fixes only.
- Group commits into Keep a Changelog sections (see Section rules below).
- Prepend the new version block immediately after the file header (before the previous latest version).
- Do NOT remove or alter any existing version entries.
Workflow — restructure entire CHANGELOG.md
- Read the full and note all existing version blocks.
CHANGELOG.md - Rewrite the file preserving all versions and dates but enforcing:
- Correct header and intro paragraph (see File header below).
- Consistent section names and ordering.
- Bullet style: start each item with a capital letter, no trailing period.
- Run and confirm the latest version date is still accurate.
date +%Y-%m-%d
File header
markdown
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).Version block format
markdown
## [X.Y.Z] - YYYY-MM-DD
### Added
- ...
### Changed
- ...
### Fixed
- ...Omit any section that has no entries. Do not add empty sections.
Section rules
Use only these standard Keep a Changelog section names, in this order when
multiple sections are present:
| Section | When to use |
|---|---|
| New features or capabilities |
| Changes to existing behavior |
| Features marked for future removal |
| Features removed in this release |
| Bug fixes |
| Security-related fixes or improvements |
Commit → section mapping heuristics
- /
feat:/add→ Addednew - /
refactor:/change/rename/move/update→ Changedimprove - /
fix:/bug→ Fixedpatch - /
remove:/delete→ Removeddrop - → Deprecated
deprecate: - /
security:/cve→ Securityvuln - /
docs:/chore:/ci:— omit unless user-facing.test:
When a commit message is ambiguous, infer intent from the diff or file name.
Style rules
- Write in English throughout.
- Each bullet: capital letter, present tense, no trailing period.
Example:
Add retry logic for HTTP requests - Keep bullets concise — one line per entry where possible.
- Wrap code identifiers, file paths, and module names in backticks.
- Never guess dates — always use .
date +%Y-%m-%d