Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

14.5 Skills & Plugin Ecosystem: ClawHub and Community Contributions

🦞 "SKILL.md is not a document — it's a public contract."


SKILL.md: OpenClaw's Extension Contract

Each Skill is a directory with SKILL.md (plus optional scripts):

~/.openclaw/skills/
├── send-email/
│   ├── SKILL.md
│   └── send.ts
└── flight-search/
    ├── SKILL.md
    └── search.py

Structure

---
name: send-email
description: Send an email via Gmail. Use when the user asks to "send/reply email".
tools: [gmail.send]
permissions: [gmail.send]
version: 0.1.0
author: yourname
---

# Trigger
User asks to send / reply / broadcast email.

# Flow
1. Collect recipient, subject, body
2. Call gmail.send
3. Return result (message id / success)

# Constraints
- Plain text by default unless HTML requested
- Confirm recipient & subject before sending

The 4 key fields

FieldPurposeWho reads it
nameunique idregistry
descriptionwhen to use itthe LLM
toolsrequired toolspermission system
permissionsrequired permissionspermission system

📌 description is a retrieval index for the LLM — write it well so the Agent triggers the Skill at the right moment.


ClawHub: The Skill Marketplace

openclaw skills search "email"       # browse
openclaw skills install send-email   # install
openclaw skills publish ./my-skill   # publish (community)

Three ecosystem layers

LayerContentContributor
Core Skillsbuilt-in (email/calendar/flight/notes)OpenClaw team
Community Skillslisted on ClawHubcommunity devs
Private Skills~/.openclaw/skills/yourself

Community Forks: Proof of Sound Abstraction

ProjectLanguageNote
OpenClaw (main)TypeScriptofficial
nanobotPython (~4000 lines)minimal, teaching
ZeroClawRustsystem-level perf
NanoClawGo + Apple containersmacOS isolation
IronClawRust + WASMWASM sandbox
NullClawZig678KB static binary

⚠️ Sizes per each repo's main branch README.

The core abstraction is small and stable enough that re-implementing it in another language is "translation," not "redesign."


Section Summary

TopicKey point
SKILL.mdfrontmatter + trigger + flow + constraints
4 fieldsname / description / tools / permissions
ClawHubsearch / install / publish
3 layerscore / community / private
Forks6 languages = sound abstraction

Next section: 14.6 Practice: Build a Personal Assistant