Each plugin is versioned independently using semver, adapted to skill content:
| Bump | When |
|---|---|
| Major | Skill removed/renamed, or its behavior/scope changes incompatibly |
| Minor | New skill added, or existing skill's coverage meaningfully expanded |
| Patch | Typos, clarifications, reference fixes — no behavior change |
- Bump
versionin all four places (they must agree): the plugin's.claude-plugin/plugin.jsonand.cursor-plugin/plugin.json, and the matching entries in.claude-plugin/marketplace.jsonand.cursor-plugin/marketplace.json. - Run
python3 scripts/validate.py— checks both manifest pairs agree. - Add an entry to the repo-level CHANGELOG.md.
- Tag:
claude plugin tag plugins/<name>— creates{name}--v{version}(validates the Claude pair only). - Push commits and the tag.
The marketplace itself is not versioned — users always get the current main.