Command reference¶
| Command | Does | Writes? |
|---|---|---|
| plan | Reports what each version should be | No |
| apply | Writes the warranted versions; optionally commits and pushes | Yes |
| check | Fails when a version is behind — the CI gate | No |
| tag | Creates <segment>--v<version> tags |
Tags only |
| version | Prints the version, commit and build date | No |
completion and help come from Cobra and behave as they do everywhere.
What is not here¶
GTB ships thirteen commands by default; skillup enables seven. update, init,
mcp, docs, doctor and changelog are disabled, because skillup reads
git history, compares it to manifests and writes a version — it serves no MCP
surface, ships no docs site from the binary, has nothing to initialise, and
self-updates through whatever installed it.
version stays: "which build produced this answer" is a fair question to ask
of a tool that decides what ships.
Common to all¶
| Flag | Default | Meaning |
|---|---|---|
-p, --path |
. |
Repository root — the directory holding .claude-plugin/marketplace.json |
Plus the framework's global flags, which every command inherits:
| Flag | Meaning |
|---|---|
--output |
text or json. Honoured by plan; the others print text. |
--debug |
Verbose logging, including stack traces on failure |
--ci |
Signals a CI environment |
--config |
Unused — skillup reads no configuration file |
Credentials for the commands that push arrive through the SKILLUP_TOKEN
environment variable, never a flag.
What it reads¶
| Path | Role |
|---|---|
<path>/.claude-plugin/marketplace.json |
The catalogue. Its plugins[].source entries define which segments exist. |
<source>/.claude-plugin/plugin.json |
Each segment's manifest — the version field is what skillup computes and writes. |
<path>/plugins/* |
Scanned by check only, to find segments on disk that the catalogue never lists. |
Everything else comes from git history. skillup needs the full history: with
a shallow clone it computes a wrong answer rather than failing, so set
GIT_DEPTH: "0" (GitLab) or fetch-depth: 0 (GitHub).
Bump rules¶
| Commit | Bump |
|---|---|
feat: |
minor |
fix: |
patch |
! or BREAKING CHANGE: |
major — but minor below 1.0 |
| anything else | none |
Scoping is by changed path, not by the commit's scope label: a commit
messaged feat(alpha): that touches no alpha file bumps nothing.