A commit range or a pasted git log.
Get a user-facing changelog with the commit behind every line, and the vague commits flagged.
Before and after
Real public data, anonymised. Taken from the skill's README.
The Express repository, last 15 commits: dependency bumps with CVE notes in the commit bodies, CI updates, a docs fix and one bug fix.
After (skill output, excerpt):
Security
- Raised the minimum
qsversion to 6.16.0, which patches CVE-2026-82417 (GHSA-4mjr-xmp4-gh2g) and CVE-2026-82562 (GHSA-x5fp-wj9c-mxmx). (3b7e39f)Fixed
res.sendnow still generates an ETag when aTransfer-Encodingheader is set. (9a34acf)[CHECK: 98bd4cd "deps: proxy-addr@^2.0.8 (#7474)"] The message gives no reason for the bump.
Skipped commits: 11
See it run

What it does
Give it a commit range in a repo, or paste git log output. You get a changelog section in Keep a Changelog style, written for the people who use the project, with the commit hash behind every line. Vague commits and possible breaking changes are flagged instead of guessed.
How it was tested
1 real-data run on the public Express repository (Claude Sonnet, 15 commits). Every entry matched a commit message; the one vague commit was flagged.
1 real-data run on the public Express repository (Claude Sonnet, 15 commits). We checked each entry against the commit bodies: the CVE ids and the body-parser behaviour change are in the messages, nothing was invented, and the one vague commit was flagged.
Tested on a real example before release. The example is shown in the Before and after section above.
How we test, what we do not do, and which assistants we ran it on.
Limits
- It sees commit messages, and diffs only when it can.
- Breaking changes only from evidence.
- It writes text; it does not tag or publish.
Works with
Works with any assistant that reads SKILL.md skills (Claude, Codex, Gemini CLI, Cursor and others), plus a paste-in prompt version for ChatGPT or any chatbot. A repo with git, or pasted git log output.
Install
- Run
npx skills add proskillpacks/skillsin your project and pick this skill. Or copy thechangelog-from-commitsfolder from GitHub (https://github.com/proskillpacks/skills/tree/main/skills/developers/changelog-from-commits). - Put the
changelog-from-commitsfolder where your assistant looks for skills. The generic path is.agents/skills/(ornpx skills addfrom a folder). Tool-specific paths:- Claude Code:
~/.claude/skills/(or.claude/skills/inside one project) - OpenAI Codex, Gemini CLI, Cursor and others:
.agents/skills/or the skills folder their docs name - claude.ai: zip the skill folder yourself, then Customize, Skills, the plus button, Create skill, Upload a skill (code execution must be on in Settings, Capabilities)
- ChatGPT or any chatbot: open the skill's
prompt.md, paste it into the chat, then paste your own text or link - Steps for each tool, with links to its official docs: how to install Agent Skills
- Claude Code:
- Ask for the job in plain words, for example: "Write the changelog for everything since the last tag.". The skill loads by itself.
Get it
MIT licence. Use it, change it, share it.
Related
- Free guide to do it by hand: How do I write a changelog from my git commits?
- Free paste-in prompt for any chatbot: Changelog from commits prompt for ChatGPT or Claude
- PR Description and Review Prep (Free): Run it on your branch. Get a PR title, summary, risk notes and test plan from the diff, plus the questions a reviewer will ask. Free, MIT-licensed.
- README First-Run Check (Free): Point it at a repo. It follows the README like a new user and checks every step against the repo: OK, BROKEN, MISSING or UNVERIFIED, with evidence and the README edits that fix it.
- Skill Portability Check (Free): A free checker for SKILL.md folders: strict-YAML trap, portable keys, vendor tool names, missing fallbacks, broken links. One Python file, exit code for CI.
- More for developers: Developers
Report a problem with this skill (GitHub, or write to kaiventura.founder@gmail.com).