$npx -y skills add Bennyoooo/skillmaxxing --skill workspace-skillShare skills with your team and collaboratively improve them through a git-based workspace registry — publish a skill, sync the team's skills, pool eval results, and walk a reviewer through promoting a skill to a stable channel. Use when the user wants to share, publish, sync, or
| 1 | # workspace-skill |
| 2 | |
| 3 | Operate the team workspace registry. The registry is **just a git repo** the team pushes/pulls — no server. The CLI handles publish/sync/pool/promote; you handle the conversation and the review. |
| 4 | |
| 5 | ## Publish |
| 6 | |
| 7 | ```bash |
| 8 | scripts/workspace.sh publish --registry <dir> --skill-dir <dir> --channel dev --by "<name>" |
| 9 | ``` |
| 10 | |
| 11 | New work goes to `dev` first. After publishing, remind the user to **commit and push** the registry repo so teammates can sync. |
| 12 | |
| 13 | ## Sync |
| 14 | |
| 15 | ```bash |
| 16 | scripts/workspace.sh sync --registry <dir> [--channel dev] |
| 17 | ``` |
| 18 | |
| 19 | Synced skills land under `~/.skillmax/workspace/<registry>/` as `trusted:false`. A synced skill whose name collides with a local skill is **namespaced by origin** — the local skill and its history are never overwritten. Tell the user which synced skills collided. From there they can install or optimize a synced skill explicitly. |
| 20 | |
| 21 | ## Pool eval results (collaborative optimization) |
| 22 | |
| 23 | Contributors share scores so anyone can optimize against the team's pooled signal: |
| 24 | |
| 25 | ```bash |
| 26 | scripts/workspace.sh pool --registry <dir> --skill <name> --score <0..1> --by "<name>" |
| 27 | ``` |
| 28 | |
| 29 | Pooled results are append-only (merge-friendly). Use them as the eval signal when running `optimize-skill` against a shared skill. |
| 30 | |
| 31 | ## Promote (review-gated) |
| 32 | |
| 33 | Promotion up the channel ladder (`dev → beta → stable`) **requires explicit review and approval**: |
| 34 | |
| 35 | ```bash |
| 36 | scripts/workspace.sh promote --registry <dir> --skill <name> --channel stable --approve --approver "<name>" |
| 37 | ``` |
| 38 | |
| 39 | - Without `--approve` and an `--approver`, promotion is refused. |
| 40 | - If a **different version** already occupies the target channel, the CLI reports a **conflict** and stops — never silently merging. Resolve manually (decide which version wins) and re-run. |
| 41 | - Each approval is recorded as an append-only receipt in the registry. |
| 42 | |
| 43 | Walk the reviewer through the diff and the pooled scores before they approve. Do not pass `--approve` on the user's behalf without their explicit go-ahead. |
| 44 | |
| 45 | ## Trust note |
| 46 | |
| 47 | Synced/published skills are untrusted by default. Treat registry content as you would any shared input; never auto-grant trust or execute a synced skill's code without the user's confirmation. |