Changelog Rules
A shared conventions skill that keeps CHANGELOG.md consistent with Keep a Changelog and SemVer — structure, entry wording, and PR/issue links.
Dev & CodingIntermediate★ 402⑂ 30AI score 8/10Last updated: Sep 4, 2026
What it does
- Defines the canonical
CHANGELOG.mdskeleton: intro text, an always-present[Unreleased]section, and version comparison links at the bottom. - Decides what is changelog-worthy: skip refactors, formatting, CI config, docs and no-op dependency bumps; include features, behavior changes, deprecations/removals, bug fixes and security patches.
- Enforces entry style: imperative present tense with no trailing period, one bullet per change, user-visible verbs ("Add", "Fix", "Show", "Allow") instead of developer-centric ones ("Implement", "Refactor", "Enforce").
- Validates the net delta since the last release using
git show <tag>:<path>andgit log --follow, so entries that only fix never-shipped behavior get folded into the feature or dropped. - Adds PR and issue links in ascending order, discovering linked issues via
gh pr view <number> --json closingIssuesReferences. - Specifies section order (Added → Changed → Deprecated → Removed → Fixed → Security), ISO 8601 dates, and auto-detection of
v-prefixed vs bare tags.
Who it's for
- Open-source maintainers who want a uniform changelog across many contributors.
- Teams already on Keep a Changelog + SemVer whose entry wording drifts per author.
- Anyone building
/create-changelogand/update-changelogslash commands for Claude Code.
Examples
- Release prep: scan the Unreleased section, spot "fixes" for features that never shipped, merge them into the originating entry, then cut
## [1.3.0] - 2025-06-01. - After merging PR #142: look up its closing issue #137 with
ghand append- Fix crash on startup ([#137](...), [#142](...))under Unreleased/Fixed. - Backfilling history from git tags: omit references since there are no PRs, order releases newest-first, and generate compare links from the remote URL.
· · · Install guide · · ·
Try it now, no install
Paste this into Claude to use the skill without installing anything.
Read the instructions in this file and follow them to help me: https://raw.githubusercontent.com/tobihagemann/turbo/HEAD/claude/skills/changelog-rules/SKILL.md What I want: (describe your task here)
If Claude can't open the link, open it yourself and paste the contents instead.
↓ If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the claude/skills/changelog-rules folder from the GitHub repo tobihagemann/turbo into my ~/.claude/skills/changelog-rules/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/tobihagemann/turbo.git /tmp/turbo && mkdir -p ~/.claude/skills && cp -r /tmp/turbo/claude/skills/changelog-rules ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Open a terminal.
- Clone the repository to a temp folder:
git clone https://github.com/tobihagemann/turbo.git /tmp/turbo - Create the skills folder if needed:
mkdir -p ~/.claude/skills - Copy the skill:
cp -r /tmp/turbo/claude/skills/changelog-rules ~/.claude/skills/ - (Recommended) Also copy the
/create-changelogand/update-changelogcommand files from/tmp/turbo/claude/commandsinto~/.claude/commands/, since this skill is meant to back them. - For automatic PR/issue linking, install the GitHub CLI and authenticate:
gh auth login - Restart Claude Code and ask something like "update CHANGELOG.md for this release" to see the rules applied.
View source on GitHub ↗License: MIT