skillup¶
Version the segments of a Claude Code plugin marketplace from git history — without depending on tags.
In a marketplace the version field is the distribution mechanism, not a label:
both harnesses cache by <marketplace>/<plugin>/<version> and neither resolves
a git ref. A version that does not move withholds the change from every
consumer, silently and indefinitely.
skillup works out what each segment's version should be from the conventional commits that touched it, and tells you — or writes it.
$ skillup check --path .
my-segment is 0.3.0 but its commits warrant 0.4.0 (minor)
a1b2c3d4 feat(my-segment): add a thing (minor)
To fix, on your branch:
skillup apply --path .
Where to start¶
| Your first run | Install it, point it at a marketplace you create, watch it catch a change that would have reached nobody. |
| Install skillup | Module proxy, release binaries, or a clone. |
| Set up the gate in GitLab · in GitHub | Make a merge request fail when a version is behind. |
| Command reference | Every flag, exit code and guarantee. |
| Why not tags? | The one design decision that distinguishes it from cocogitto, release-please and the rest. |
Status¶
Released, pre-1.0. v0.1.0 is cut, published to the Go module proxy, and gating merge requests on phpboyscout/claude-code-plugins.
Below 1.0 the CLI surface may still change between minor versions, so
pin the version your pipeline installs rather than
tracking @latest.
The investigation that produced the tool, and the verdict it reached, are in the spike report on the wiki.