Overview
Install the publisher helper skill or open its listing:skilldock install skilldock/skilldock-publisher- https://skilldock.io/skill/skilldock/skilldock-publisher
How to publish
Required Inputs
Collect these values before running commands:BASE_URL(defaulthttps://api.skilldock.io)OPENAPI_URL(defaulthttps://api.skilldock.io/openapi.json)NAMESPACE(publisher namespace, for examplemyorg)SLUG(skill id, for examplemy-skill)VERSION(release version, for example1.2.3)SKILL_PATH(local folder containingSKILL.md)
Auth once, then use a token
Browser auth:Tags and links
Tags:skilldockcliauthoauthpublishingreleasestokensverificationtroubleshootingrate-limits
1) Install CLI via pip
Use Python3.10+.
2) Configure API endpoint (if non-default)
3) Authenticate with Google OAuth
Run browser login:- The CLI creates an auth session.
- The CLI prints an
auth_urland opens the browser (or prints a.../auth/google/start?session_id=...link when--no-openis used). - After Google approval, the CLI polls until a token is issued.
- The CLI stores the token in local SkillDock config.
429 (rate limit is approximately 5 attempts/minute), wait a full minute before retrying.
4) Create and manage API tokens
Create a long-lived token and save it as default:5) Create a new local skill (manual scaffold)
SkillDock currently packages existing folders. It does not provide a dedicated scaffold command. Create the folder:SKILL.md file at the skill root:
requirements.txt- Scripts used by the skill
references/or assets
6) Format a good skill
Follow these rules:- Keep frontmatter minimal:
nameanddescription - Use a specific description that includes trigger conditions
- Keep instructions procedural and command-first
- Include required inputs and expected outputs
- Keep runnable commands copy-paste safe
- Keep the folder clean; avoid virtualenvs, build folders, and git metadata in the published artifact
SKILL.mdmust exist at skill root- Symbolic links are skipped
- Common junk folders are excluded (
.git,.venv,venv,node_modules,dist,build, caches) - Zip files larger than
10 MiBemit a warning
7) Verify before publish
Run package verification:8) Publish new skill or release version
Create the namespace if needed:- Optional; sent as a query param
- Backend precedence: query > multipart >
SKILL.md> existing DB - Validation:
http/httpsonly; length<= 2048 - Leave blank to keep the existing value unchanged
- Declare in
SKILL.mdfrontmatter underdependencies:using semver ranges (for example>=0.1.0 <0.2.0) - Or pass repeatable
--dependency "namespace/skill@<range>"flags on upload - API precedence merges frontmatter + CLI flags; invalid or missing dependency skills fail upload
- Self-dependency is rejected
9) Search existing skills
Free-text search:10) Download and install skills locally
Install the latest version:- The install command downloads the release archive and resolves dependencies recursively
- The CLI writes local manifest and lock files (
.skilldock.json,.skilldock.lock.json)
11) Delete workflows
Use the right delete path for the target object. Delete a local installed skill:skilldock skill delete command.
Use one of these patterns.
Discover the delete operation from OpenAPI and call it by operationId:
404 or 405.
12) Quick troubleshooting
401 Unauthorized: Runskilldock auth loginor set a valid token403 Forbidden: Token is valid but missing permission404 Not Found: Wrong namespace/slug/version, or object is not visible- Token expired: Run
skilldock auth loginagain
Revenue model
For sold skills, SkillDock commission is 50% of the sale price.- Provider share: 50%
- SkillDock commission: 50%
API
The publish workflow can be automated with the SkillDock API. OpenAPI specification: See the dedicated API guide for examples and integration patterns: API.Verification process
Verification is an automatic background process that runs security and quality checks. These checks may run for:- Public skills
- Private skills
- Free skills
- Paid/selling skills
- Illegal or policy-breaking content/behavior
- Malicious behavior
- Vulnerable or unsafe behavior
- Quality issues that can harm users or integrations
- Frozen and made unavailable for installation
- Removed from listings
- Permanently deleted
