godmode-changelog
Skill6 starsChanged 3 months agoApache-2.0View on GitHub
Draft and verify release-notes from local commits and changelog fragments. Use when checking that every user-visible update carries a fragment, merging fragments for a version, or building and checking the release-notes for that version. Not for a one-line note authored by hand and not for a code-review summary of a single file.
In this repository22 other files it gives its agents.
- llms.txtllms.txt
- godmode-budgetSkill
- godmode-ciSkill
- godmode-codegraphSkill
- godmode-code-of-lawSkill
- godmode-continuitySkill
- godmode-evidenceSkill
- godmode-governanceSkill
- godmode-host-syncSkill
- godmode-impact-gateSkill
- godmode-investigationSkill
- godmode-loop-wardenSkill
- godmode-memory-gardenerSkill
- godmode-repairSkill
- godmode-replicateSkill
- godmode-researchSkill
- godmode-second-lookSkill
- godmode-skill-evalSkill
- godmode-skill-forgeSkill
- godmodeSkill
- godmode-spec-lifecycleSkill
- godmode-triageSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 2 are distinctive, and 7 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 36
Read the result's verdict.
- Very specific: line 38
Fallback for a
missing-fragmentverdict: add one fragment per uncovered user-visible change: - Distinctive: line 44
Confirm the release has no other missing paired artifact: before cutting:
- Very specific: line 75
Must not run changelog merge or release-notes build while changelog check still reports missing-fragment.
- Distinctive: line 76
Must not write release-note prose that names no changelog entry or commit behind it.
- Very specific: line 77
Must not edit release-notes check's required-shape rule to accommodate a specific note instead of fixing the note.
- Very specific: line 78
Must not treat merge as safe to re-run out of caution.
- Very specific: line 79
Must not bypass a failing changelog or notes check with --no-verify on the commit that cuts the release.
- Very specific: line 80
Must not hand-edit a generated release-notes file as the default fix for a failed shape check.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Godmode Changelog
Outcome
A release note written by hand at cut time is written from memory, and a commit that ships user-visible behavior with no fragment is a note nobody will ever write. This skill runs the fragment check, spends the fragments into the changelog for the version being cut, then builds and checks the notes so the release carries the note that behavior actually earned - never a narration of the work that produced it.
Use
- Confirm every user-visible commit since the base ref carries a
changelog.d/*.mdfragment before a release is cut. - Merge the accumulated fragments into
CHANGELOG.mdunder the version being released. - Build that version's release notes from the merged changelog section, and check the built notes hold the required shape.
- A release is being prepared and the changelog gate, the merge, or the notes have not been run yet.
Do not use
- For a one-off commit message on a single change - that is normal commit authoring, not a release note.
- To summarize what one file does for a code-review comment.
- To invent release-note prose that no changelog fragment or commit backs; the notes are built from what was merged, not composed from scratch.
Deterministic Execution Flow
- Check the fragment gate before anything else.
Read the result'sgodmode changelog check --base <last-release-ref>verdict.satisfiedmeans every user-visible change already carries a fragment, or the changelog gained an entry directly;missing-fragmentnames the exact paths underchanges_needing_notestill uncovered. - Fallback for a
missing-fragmentverdict: add one fragment per uncovered user-visible change:
containing one sentence describing the user-visible effect (not the implementation). Re-run step 1 untilchangelog.d/<slug>.<added|changed|fixed|removed|deprecated|security>.mdsatisfiedis true. Never merge or build notes over an unsatisfied gate. - Confirm the release has no other missing paired artifact before cutting:
godmode precheck --about "cut release <version>" - Spend the fragments into the changelog for the version being released:
This folds every fragment undergodmode changelog merge --set-version <version> [--date <YYYY-MM-DD>]changelog.d/into a## [<version>]section inCHANGELOG.mdand removes the spent fragments. A fragment that arrives after a first merge folds into that same section on the next run rather than opening a second heading for the version; running it again with nothing left underchangelog.d/has nothing to spend and refuses. - Build the release notes from that merged section:
Fallback: if a note forgodmode release-notes build <version><version>already exists and needs regenerating, pass--force. - Check the built notes hold the required shape:
The shape is: present, every changelog entry for the version covered, no empty section, no process narration, and agodmode release-notes check <version>Verifyingsection a reader can actually run. - Fallback for a failed shape check: fix the source, not the built file - add the missing piece to the relevant
changelog.d/*.mdfragment or the mergedCHANGELOG.mdsection the check named, then rebuild with--force:
and re-run step 6. A direct hand edit of the generated release-notes file is a last resort only, and only when it is recorded as one - the deterministic path is fix the source, rebuild, re-check.godmode release-notes build <version> --force
Must not
- Must not run
changelog mergeorrelease-notes buildwhilechangelog checkstill reportsmissing-fragment; the notes would omit exactly the change that triggered the check. - Must not write release-note prose that names no changelog entry or commit behind it.
- Must not edit
release-notes check's required-shape rule to accommodate a specific note instead of fixing the note. - Must not treat
mergeas safe to re-run out of caution; with nothing left underchangelog.d/it has nothing to spend and refuses. Only run it again when a genuinely new fragment has arrived for the same still-open version. - Must not bypass a failing changelog or notes check with
--no-verifyon the commit that cuts the release; a blocked gate is fixed at its source, not skipped past. - Must not hand-edit a generated release-notes file as the default fix for a failed shape check; fix the fragment or changelog section and rebuild with
--forceinstead, and treat a hand edit as an explicitly-recorded exception, never the routine path.
Completion
Report the fragment-check verdict, the version merged, and the release-notes check's final verdict. A release cut without all three run in order is not proof the changelog is honest - it is a note that was never checked.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

