Publishing Your Skill to the Community Skill Registry
Clawpedia · For Humans
Share your OpenClaw skill with the world by publishing it to the community skill registry on ClawHub.
Overview
You've built a great skill — now share it with the world. The Community Skill Registry on ClawHub lets you publish your skill so anyone can discover, install, and benefit from your work. This guide covers the entire publication process from preparation to listing.
Prerequisites
Before publishing, ensure your skill meets these requirements:
| Requirement | How to Check |
|---|
| Valid manifest | openclaw skills validate my-skill |
|---|
| All tests pass | openclaw skills test my-skill --unit |
|---|
| README exists | Check for README.md in skill root |
|---|
| License declared | license field in manifest.yaml |
|---|
| Version set | version field in manifest.yaml |
|---|
| No hardcoded secrets | Manual review of source files |
|---|
| ClawHub account | Register at https://clawhub.dev |
|---|
Make sure all fields are complete and accurate:
name: weather-forecast # Must be unique on ClawHub
version: 1.0.0
description: "Get accurate weather forecasts for any city worldwide"
author: "Your Name <you@email.com>"
license: MIT
homepage: https://github.com/you/openclaw-weather
repository: https://github.com/you/openclaw-weather
tags:
- weather
- forecast
- climate
triggers:
- pattern: "weather *"
examples:
- "What's the weather in Berlin?"
- "Will it rain tomorrow?"
- "Weather forecast for next week"
permissions:
network: true
filesystem: none
memory: read
execute: none
config:
api_key:
type: string
required: true
secret: true
description: "OpenWeatherMap API key (get one at openweathermap.org)"
units:
type: string
default: "metric"
options: [metric, imperial]
description: "Temperature units"
runtime:
timeout: 10000
retries: 2
engine: ">=1.5.0"
Step 2: Write a Great README
Your README is the first thing users see on ClawHub:
# Weather Forecast Skill
Get accurate weather forecasts for any city worldwide, directly through your OpenClaw agent.
## Features
- Current weather conditions
- Multi-day forecasts (up to 7 days)
- Severe weather alerts
- Support for metric and imperial units
- 200,000+ cities worldwide
## Installation
openclaw skills install weather-forecast
## Configuration
You need a free API key from [OpenWeatherMap](https://openweathermap.org/api):
openclaw skills config weather-forecast --set api_key YOUR_KEY
| Option | Required | Default | Description |
|--------|----------|---------|-------------|
| `api_key` | Yes | — | OpenWeatherMap API key |
| `units` | No | `metric` | `metric` or `imperial` |
## Usage Examples
- "What's the weather in Berlin?"
- "Will it rain in London tomorrow?"
- "7-day forecast for Tokyo"
- "Weather alerts for New York"
## Screenshots

## License
MIT
Step 3: Add an Icon (Optional)
Skills with icons get more attention on ClawHub:
assets/
└── icon.png # 256x256 pixels, PNG format
Reference it in the manifest:
icon: assets/icon.png
Step 4: Pre-Publication Check
# Run the full publication check
openclaw skills publish my-skill --dry-run
# Output:
# ✅ Manifest valid
# ✅ Name available on ClawHub
# ✅ Tests pass (14/14)
# ✅ README.md found (2.3 KB)
# ✅ LICENSE found (MIT)
# ✅ Icon found (256x256)
# ✅ No secrets in source code
# ✅ Dependencies resolved
# ✅ Package size: 24 KB (limit: 10 MB)
#
# Ready to publish! Run without --dry-run to proceed.
Publishing
# Publish to ClawHub
openclaw skills publish my-skill
# Output:
# Publishing weather-forecast@1.0.0...
# Packaging... done (24 KB)
# Uploading... done
# Processing... done
#
# ✅ Published successfully!
# https://clawhub.dev/skills/weather-forecast
Publishing Updates
When you improve your skill:
- Update the version in
manifest.yaml(follow SemVer). - Update
CHANGELOG.md. - Run tests.
- Publish.
# Bump version
openclaw skills version my-skill patch # 1.0.0 → 1.0.1
openclaw skills version my-skill minor # 1.0.1 → 1.1.0
openclaw skills version my-skill major # 1.1.0 → 2.0.0
# Publish the update
openclaw skills publish my-skill
Verification Process
ClawHub offers a Verified badge for skills that pass a security and quality review:
How to Get Verified
- Submit a verification request:
openclaw skills verify my-skill. - The ClawHub team reviews your skill (typically 3-5 business days).
- They check for: security issues, code quality, documentation, and test coverage.
- If approved, your skill gets the ✅ Verified badge.
Verification Criteria
| Criterion | Requirement |
|---|
| Security | No vulnerabilities, minimal permissions |
|---|
| Tests | >80% coverage, all tests passing |
|---|
| Documentation | Complete README with examples |
|---|
| Code Quality | Clean, readable, well-structured |
|---|
| Error Handling | Graceful failures, no unhandled exceptions |
|---|
| Licensing | Clear, open-source license |
|---|
- Use descriptive names.
weather-forecastis better thanmy-skill-v2. - Write clear documentation. Include installation, configuration, and usage examples.
- Respond to issues. Users will report bugs — fix them promptly.
- Follow SemVer. Don't break backward compatibility in minor versions.
- Keep permissions minimal. Don't request
filesystem: writeif you only neednetwork.
Troubleshooting
"Name Already Taken"
Choose a more specific name or add a namespace:
openclaw skills publish my-skill --name @username/weather-forecast
"Package Too Large"
The size limit is 10 MB. Common causes:
node_modulesincluded (add to.npmignoreor.clawignore)- Large test fixtures
- Binary files that should be downloaded at runtime
Create a .clawignore file:
node_modules/
test/
.git/
*.log
Publication Fails with "Validation Error"
Run the dry-run check to see specific issues:
openclaw skills publish my-skill --dry-run --verbose
Next Steps
- Build robust skills: Deploying a Custom OpenClaw Skill: Best Practices.
- Manage dependencies: Skill Dependencies: Managing Libraries and APIs.
- Learn advanced patterns: Multi-Step Skills: Orchestrating Complex Actions.
Related Articles
- Finding and Installing OpenClaw Skills from ClawHub — Browse, evaluate, and install community-built skills from the ClawHub skill registry.