mcpbeat

Changelog

codeaholicguy/changelog

AI DevKit · Update CHANGELOG.md Unreleased items from git commits since the latest release. Use when users ask to update changelog/release notes from recent commits, with one concise line per commit and commit/PR links.

465 tokens
context cost
the whole folder, loaded on every use
2
files
instructions only
0
copies elsewhere
how many repositories repackaged it
1571
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/codeaholicguy/ai-devkit --skill changelog

The instruction itself

3 sections, as written by the author

Changelog

Update the top Unreleased list in CHANGELOG.md from commits after the latest release.

Workflow

  • Find the latest release base:
  • Prefer the latest reachable tag: git describe --tags --abbrev=0.
  • If there are no tags, search recent history for a release commit and use that hash.
  • Get commits: git log <base>..HEAD --reverse --format='%H%x09%s'.
  • Derive the GitHub repo URL from git remote get-url origin.
  • For each commit, add one concise changelog line:
  • Format: - <short-hash> <one-line summary>
  • If the commit clearly relates to a PR, link the hash to the PR URL instead of the commit URL.
  • Detect PRs from subjects like (#123), merge commits, or gh pr list --search <hash> --state all --json number,url.
  • Insert the new lines into the top Unreleased section/list in CHANGELOG.md.
  • If no Unreleased section exists, create one at the top.
  • Do not create a dated release heading unless the user asks for a release.

Rules

  • Keep one line per commit.
  • Preserve the existing changelog style when obvious.
  • Always add entries to the top Unreleased list.
  • Skip noisy commits only when clearly non-user-facing and explain what was skipped.
  • Do not invent PR links; use commit links when PR evidence is missing.

How to use it

Copy the folder

Take codeaholicguy/changelog from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.