FOR MAINTAINERS — HOW THE KIT SHIPS
Release & update cycle
The kit installs from this repo's GitHub marketplace (private, @develop). The plugin updater
dedups by version: if plugin.json still says the version you already have, claude plugin update is a silent no-op. That made manual version bumps the #1 way updates got lost.
The automated cycle (#208)
- A PR touching
packages/claude-kit-plugin/**merges todevelop. - The
plugin-autobumpworkflow fires: it increments the beta prerelease (0.7.0-beta.N→beta.N+1) across all version fields —plugin.json, bothmarketplace.jsonfiles,package.json— and inserts a dated CHANGELOG entry from the merged PR's title. - It opens a bot PR (
chore/plugin-bump-<version> [plugin-bump]), dispatches CI on it (bot PRs don't firepull_requestevents), and enables auto-merge. - CI green → the bump lands. The
[plugin-bump]marker stops the workflow from re-firing on its own merge.
Picking the update up in a project
claude plugin update claude-kit@claude-kit-marketplace
Then skim CHANGELOG.md and run /kit-update in each scaffolded project to merge-upgrade its
.claude/ without clobbering customizations.
Edge cases
- Two plugin merges back-to-back → two bump PRs that conflict on the version fields. Merge the first, close the second (the next merge re-bumps), or rebase it.
- Stable releases (dropping
-beta) stay manual: edit the version fields by hand in a normal PR titled with[plugin-bump]so the bot skips it.