Tutorial: Publish to your team's private registry
This walks through the full loop for Skillsmith's Enterprise-tier private registry: publish a skill under your team's namespace, have a teammate approve it, then install it. Reference documentation for the underlying concepts and access-control model lives on the Private Registry page; this tutorial is the hands-on version.
These tutorials show Skillsmith in Claude Code. For installation in your preferred runtime (Cursor, Continue, Copilot, Windsurf), see Getting Started.
What you will do
- Sign in personally and look up your team's registry namespace
- Publish a skill version as a pending submission
- See how a teammate reviews and approves it on the dashboard
- Install the approved skill with the CLI
Prerequisites
- An Enterprise-tier team subscription with the private registry feature enabled.
-
A personal, signed-in identity: run
skillsmith login. Publishing and reviewing both require this, so every submission and every approval is tied to a real person, not just "the team." - At least one other team admin available to review your submission (see step 3 below).
Step 1: Find your namespace
Every team gets one fixed registry namespace. Ask the private_registry_manage MCP
tool for it with action: "namespace", or open the private registry dashboard, which
lives on your account's Registry page (left sidebar, under Tools), and shows the namespace at the
top of the page as a short prefix, something like your-team/. Every skill ID you
publish has to start with that exact prefix, checked
at the database level on every publish, so there's no accidentally landing in someone else's
namespace.
Step 2: Publish a version
Call the private_registry_publish MCP tool with your skill ID in
your-team/skill-name format, a semver version, and the packaged files as a
{ path: text } map (must include SKILL.md). A real publish looks
like this:
{
"success": true,
"dataSource": "live",
"skill": {
"skillId": "your-team/skill-name",
"version": "0.1.0",
"description": "Formats commit messages to match our team's changelog conventions.",
"deprecated": false,
"publishedAt": "2026-08-23T14:32:07.000Z",
"publishedBy": "4e2f6a8c-9d31-4b7a-8e5f-1c6a9d2f7b30",
"registryUrl": null,
"approvalStatus": "pending",
"approvalMode": "review"
},
"skillNamespace": "your-team",
"message": "Submitted your-team/[email protected] for review — an admin must approve it before teammates can install it. Review confirms who published this and what version/description was submitted; it does not include a full content read by the approver."
}
The version is now a pending submission. It's invisible to search,
get, and install, even to you, the person who just published it, until a teammate
reviews it.
Step 3: A teammate reviews it
The submission shows up in the "Pending Submissions" section of that same dashboard, with the skill ID, version, description, and two buttons: Approve and Reject. Only team admins and owners can act on either button, and critically, the person who published a submission cannot approve or reject it themselves, even if they hold an admin role. This is enforced at the database level, so it can't be worked around by calling the underlying tool directly either. Even the interface's own Approve and Reject buttons don't stop you from clicking them on your own submission; they simply fail with an error if you try. A different admin has to make the call.
Once a teammate approves it, the version becomes immediately visible and installable to the whole team, and it shows up under "Skills" on the dashboard with an "Approved" badge. Both approve and reject are terminal decisions: a rejected version can't be re-reviewed, only superseded by publishing a new version under a new version number.
Step 4: Install it
Install approved private-registry skills either with the CLI or the MCP tool's own install action — both authenticate with your own signed-in session and need nothing beyond that. This tutorial uses the CLI. In your terminal:
skillsmith registry install your-team/skill-name A successful install looks like this:
- Fetching skill from private registry...
✔ Skill installed
Skill installed successfully!
Path: /Users/you/.claude/skills/skill-name
Trust tier: community
The CLI authenticates with your own signed-in session (the same one from skillsmith
login), reaches a dedicated private-registry endpoint, and writes the skill straight to
your skills directory. No admin credentials are ever needed on your machine for this: your own
login is enough.
Where to next
For the full access-control model, how versioning and deprecation work, and every tool this tutorial touched, see the Private Registry reference page. If you want the lighter, single-device alternative with no team sharing at all, see Private Skills.