release-changelog
Skill1 starsChanged 4 months agoMITView on GitHub
Generate the stable Workcell release changelog at releases/vYYYY.MDD.P.md by reading commits, changesets, and merged PR context since the last stable tag.
20 other projects use a version of this, 5 of them edited.
Adopted by
Most recently taken up by
- AndersonAndrad/skillstheir own version, first seen Nov 8, 2026
- withpiper/pipekittheir own version, first seen Nov 8, 2026
- tanpenggood/skillstheir own version, first seen Nov 1, 2026
- pipeshub-ai/pipeshub-aitheir own version, first seen Oct 27, 2026
- etejedaw/workflow-skillstheir own version, first seen Oct 25, 2026
- Hans010101/bitworldedited, first seen Oct 20, 2026
Other versions20 projects use a version of this.
Word for word · 0
None found.
Edited · 5
- paperclipai/paperclip★ 112k44% same
- ancilis/bedlam★ 1597% same
- Hans010101/bitworld★ 185% same
- jpoindexter/theft-kit★ 197% same
- microsoft/amplifier-app-paperclip★ 197% same
Wrote their own version · 15
- umijs/qiankun★ 17ksame name
- newton-physics/newton★ 5.9ksame name
- pipeshub-ai/pipeshub-ai★ 4ksame name
- VoidenHQ/voiden★ 1.8ksame name
- hail-is/hail★ 1.1ksame name
- Harry-kp/vortix★ 757same name
- mikeyobrien/rho★ 372same name
- Kong/developer.konghq.com★ 28same name
- yjhmelody/nanobot-rs★ 15same name
- withpiper/pipekit★ 6same name
5 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository12 other files it gives its agents.
- AGENTS.mdAGENTS.md
- company-creatorSkill
- create-agent-adapterSkill
- deal-with-security-advisorySkill
- doc-maintenanceSkill
- prcheckloopSkill
- pr-reportSkill
- release-changelog-discord-messageSkill
- releaseSkill
- design-guideSkill
- frontend-designSkill
- web-design-guidelinesSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
19 rules. 0 are common, 13 are distinctive, and 6 are very specific to this project.
0
Common
Most of the 19 edited versions we read keep these.
13
Distinctive
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 30
do not derive versions from semver bump types
- Distinctive: line 31
do not create canary changelog files
- Distinctive: line 35
Before generating anything, check whether the file already exists:
- Distinctive: line 45
ask whether to keep it, regenerate it, or update specific sections
- Distinctive: line 46
never overwrite it silently
- Very specific: line 63
Do not derive the changelog version from a canary tag or prerelease suffix.
- Very specific: line 64
Do not derive major/minor/patch bumps from API intent — calver uses the date and same-day stable slot.
- Distinctive: line 101
If breaking changes are detected, flag them prominently — they must appear in the Breaking Changes section with an upgrade path.
- Distinctive: line 106
Use these stable changelog sections:
- Distinctive: line 119
write from the user perspective
- Distinctive: line 120
keep highlights short and concrete
- Distinctive: line 125
When a bullet item clearly maps to a merged pull request, add inline attribution at the end of the entry in this format:
- Very specific: line 134
Only add a PR link when you can confidently trace the bullet to a specific merged PR.
- Very specific: line 135
Use merge commit messages (Merge pull request #N from user/branch) to map PRs.
- Very specific: line 137
If multiple PRs contributed to a single bullet, list them all: (#10, #12, @user1, @user2).
- Distinctive: line 138
If you cannot determine the PR number or contributor with confidence, omit the attribution parenthetical — do not guess.
- Very specific: line 178
Never expose contributor email addresses: Use @username only.
- Distinctive: line 185
If there are no contributors left after exclusions, then just skip this section and don't mention it.
- Distinctive: line 189
Before handing it off:
“Common” is measured: kept by at least 6 in 10 of the 19 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Release Changelog Skill
Generate the user-facing changelog for the stable Workcell release.
Versioning Model
Workcell uses calendar versioning (calver):
- Stable releases:
YYYY.MDD.P(e.g.2026.318.0) - Canary releases:
YYYY.MDD.P-canary.N(e.g.2026.318.1-canary.0) - Git tags:
vYYYY.MDD.Pfor stable,canary/vYYYY.MDD.P-canary.Nfor canary
There are no major/minor/patch bumps. The stable version is derived from the intended release date (UTC) plus the next same-day stable patch slot.
Output:
releases/vYYYY.MDD.P.md
Important rules:
- even if there are canary releases such as
2026.318.1-canary.0, the changelog file staysreleases/v2026.318.1.md - do not derive versions from semver bump types
- do not create canary changelog files
Step 0 — Idempotency Check
Before generating anything, check whether the file already exists:
ls releases/vYYYY.MDD.P.md 2>/dev/nullIf it exists:
- read it first
- present it to the reviewer
- ask whether to keep it, regenerate it, or update specific sections
- never overwrite it silently
Step 1 — Determine the Stable Range
Find the last stable tag:
git tag --list 'v*' --sort=-version:refname | head -1
git log v{last}..HEAD --oneline --no-mergesThe stable version comes from one of:
- an explicit maintainer request
./scripts/release.sh stable --date YYYY-MM-DD --print-version- the release plan already agreed in
doc/RELEASING.md
Do not derive the changelog version from a canary tag or prerelease suffix. Do not derive major/minor/patch bumps from API intent — calver uses the date and same-day stable slot.
Step 2 — Gather the Raw Inputs
Collect release data from:
- git commits since the last stable tag
.changeset/*.mdfiles- merged PRs via
ghwhen available
Useful commands:
git log v{last}..HEAD --oneline --no-merges
git log v{last}..HEAD --format="%H %s" --no-merges
ls .changeset/*.md | grep -v README.md
gh pr list --state merged --search "merged:>={last-tag-date}" --json number,title,body,labelsStep 3 — Detect Breaking Changes
Look for:
- destructive migrations
- removed or changed API fields/endpoints
- renamed or removed config keys
BREAKING:orBREAKING CHANGE:commit signals
Key commands:
git diff --name-only v{last}..HEAD -- packages/db/src/migrations/
git diff v{last}..HEAD -- packages/db/src/schema/
git diff v{last}..HEAD -- server/src/routes/ server/src/api/
git log v{last}..HEAD --format="%s" | rg -n 'BREAKING CHANGE|BREAKING:|^[a-z]+!:' || trueIf breaking changes are detected, flag them prominently — they must appear in the Breaking Changes section with an upgrade path.
Step 4 — Categorize for Users
Use these stable changelog sections:
Breaking ChangesHighlightsImprovementsFixesUpgrade Guidewhen needed
Exclude purely internal refactors, CI changes, and docs-only work unless they materially affect users.
Guidelines:
- group related commits into one user-facing entry
- write from the user perspective
- keep highlights short and concrete
- spell out upgrade actions for breaking changes
Inline PR and contributor attribution
When a bullet item clearly maps to a merged pull request, add inline attribution at the end of the entry in this format:
- **Feature name** — Description. ([#123](https://github.com/jugol/workcell/pull/123), @contributor1, @contributor2)Rules:
- Only add a PR link when you can confidently trace the bullet to a specific merged PR.
Use merge commit messages (
Merge pull request #N from user/branch) to map PRs. - List the contributor(s) who authored the PR. Use GitHub usernames, not real names or emails.
- If multiple PRs contributed to a single bullet, list them all:
([#10](url), [#12](url), @user1, @user2). - If you cannot determine the PR number or contributor with confidence, omit the attribution parenthetical — do not guess.
- Core maintainer commits that don't have an external PR can omit the parenthetical.
Step 5 — Write the File
Template:
# vYYYY.MDD.P
> Released: YYYY-MM-DD
## Breaking Changes
## Highlights
## Improvements
## Fixes
## Upgrade Guide
## Contributors
Thank you to everyone who contributed to this release!
@username1, @username2, @username3Omit empty sections except Highlights, Improvements, and Fixes, which should usually exist.
The Contributors section should always be included. List every person who authored
commits in the release range, @-mentioning them by their GitHub username (not their
real name or email). To find GitHub usernames:
- Extract usernames from merge commit messages:
git log v{last}..HEAD --oneline --merges— the branch prefix (e.g.from username/branch) gives the GitHub username. - For noreply emails like
user@users.noreply.github.com, the username is the part before@. - For contributors whose username is ambiguous, check
gh api users/{guess}or the PR page.
Never expose contributor email addresses. Use @username only.
Exclude bot accounts (e.g. lockfile-bot, dependabot) from the list.
Exclude Workcell founders from the list (e.g. cryppadotta, forgottendev, devinfoley, sockmonster, scotttong)
List contributors in alphabetical order by GitHub username (case-insensitive).
If there are no contributors left after exclusions, then just skip this section and don't mention it.
Step 6 — Review Before Release
Before handing it off:
- confirm the heading is the stable version only
- confirm there is no
-canarylanguage in the title or filename - confirm any breaking changes have an upgrade path
- present the draft for human sign-off
This skill never publishes anything. It only prepares the stable changelog artifact.
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.

