Install
openclaw skills install clawhub-deployerPublish a skill to ClawHub registry. Use when user asks to publish, release, or deploy a skill to ClawHub.
openclaw skills install clawhub-deployerValidate, prepare, and publish a skill to the ClawHub registry.
clawhub publish or publish skillCheck that the target folder contains a valid SKILL.md:
ls TARGET_DIR/SKILL.md
head -20 TARGET_DIR/SKILL.md
Required frontmatter fields:
name — lowercase + hyphens, must match ^[a-z0-9][a-z0-9-]*$descriptionversion — semver formatRecommended fields for cross-platform compatibility:
allowed-tools — for Claude Codemetadata.openclaw.requires.env — required environment variablesmetadata.openclaw.requires.bins — required binariesClawHub only accepts text files: .md, .py, .txt, .json, .yaml, .toml, .js, .ts, .svg.
Must exclude:
*.png, *.jpg, *.jpeg, *.gif, *.ico.git/, .gitignoreLICENSE (ClawHub enforces MIT-0 for all skills).env, .DS_StoreCreate a folder with only text files:
mkdir -p TARGET_DIR/clawhub-publish
cp TARGET_DIR/SKILL.md TARGET_DIR/*.py TARGET_DIR/*.md TARGET_DIR/*.txt clawhub-publish/
cp -r TARGET_DIR/docs clawhub-publish/docs 2>/dev/null || true
Add clawhub-publish/ to .gitignore to keep the GitHub repo clean.
npx clawhub@latest whoami 2>&1 || npx clawhub@latest login
npx clawhub@latest publish TARGET_DIR/clawhub-publish/ \
--slug SLUG \
--name "DISPLAY_NAME" \
--version VERSION \
--changelog "CHANGELOG" \
--tags latest
SLUG: globally unique, lowercase + hyphensDISPLAY_NAME: human-readable name, can include spacesVERSION: semver (e.g. 1.0.0)CHANGELOG: use Initial release. for first publishnpx clawhub@latest inspect SLUG
| Error | Fix |
|---|---|
Slug is required | Add --slug parameter |
Taken | Choose a different slug |
GitHub API rate limit | Wait for reset (usually 10–60 seconds), then retry |
Remove non-text files | Go back to Step 3, ensure only text files are included |
SKILL.md is required | Confirm SKILL.md exists inside the publish folder |
---
name: my-skill
description: One-line description of what this skill does.
version: 1.0.0
allowed-tools: Bash, Write, Read
metadata:
openclaw:
requires:
env: [MY_API_KEY]
bins: [python3]
primaryEnv: MY_API_KEY
emoji: "🔧"
homepage: https://github.com/USER/REPO
os: [macos, linux, windows]
---
# Skill Title
What this skill does.
## When to Trigger
- Trigger condition 1
- Trigger condition 2
## Usage
(Instructions for the AI on how to invoke the skill)
## Environment
(How to obtain and configure required API keys)
## Errors
(Common errors and fixes)