Originally published on Remote OpenClaw.
OpenClaw Skills are modular Markdown-based plugins that teach your AI agent new capabilities — from web browsing and email management to smart home control and algorithmic trading. There are 2,800+ skills on ClawHub, installable with a single CLI command. This guide covers everything: how skills work, how to install them, how to build your own, and how to stay safe.
Marketplace
Free skills and AI personas for OpenClaw — browse the marketplace.
Join the Community
Join 1k+ OpenClaw operators sharing deployment guides, security configs, and workflow automations.
What Are OpenClaw Skills?
OpenClaw Skills are reusable instruction modules that extend what your AI agent can do. Each skill is a Markdown file (SKILL.md) containing structured instructions, metadata, and references that teach your agent how to perform a specific task or use a specific tool.
Think of them as plugins — but instead of compiled code, they are natural language instructions that the agent reads and follows.
Skills enable capabilities like:
- Browsing the web and extracting data
- Sending and managing emails
- Querying databases with natural language
- Deploying code to Vercel
- Controlling smart home devices
- Automating workflows through n8n
- Transcribing audio locally
- And thousands more
How Do OpenClaw Skills Work Under the Hood?
Every skill lives in its own directory and contains a SKILL.md file with YAML frontmatter that defines the skill's identity and requirements.
The SKILL.md File Format
---
name: skill-identifier
description: "Human-readable description of what this skill does"
metadata: {"openclaw": {"requires": {"bins": ["git"], "os": ["darwin", "linux"]}}}
---
## Instructions
Your agent instructions go here. You can reference the skill's
directory using {baseDir} for accessing bundled scripts or configs.
Key Frontmatter Properties
Property
Default
Purpose
name
Required
Unique identifier for the skill
description
Required
What the skill does (shown in listings)
homepage
Optional
Link to documentation or source
user-invocable
true
Whether users can trigger via slash command
disable-model-invocation
false
Exclude from model prompts
command-dispatch
Optional
Route slash commands directly to tools
command-tool
Optional
Which tool to invoke
command-arg-mode
Optional
Set to raw to forward unprocessed arguments
Loading Hierarchy
Skills load from three locations, with later sources overriding earlier ones:
- Bundled skills — Ship with OpenClaw installation
- Managed skills —
~/.openclaw/skills(shared across all agents) - Workspace skills —
<workspace>/skills(per-agent in multi-agent setups)
If two skills share the same name, the workspace version takes priority over managed, which takes priority over bundled.
Load-Time Gating
Skills can require specific conditions to activate:
metadata: {"openclaw": {"requires": {
"bins": ["docker", "git"],
"os": ["linux"],
"env": ["OPENAI_API_KEY"],
"config": ["channels.discord"]
}}}
-
bins— All listed binaries must exist on PATH -
anyBins— At least one binary must exist -
env— Environment variables must be set -
config— Specific openclaw.json config paths must be truthy -
os— Platform restrictions (darwin, linux, win32) -
always: true— Override all gates, always load
How Do You Install OpenClaw Skills?
From ClawHub (The Official Registry)
ClawHub (clawhub.com) is the public skill registry with 2,800+ community skills.
# Search for skills
openclaw skills search "calendar"
# Install a skill
openclaw skills install calendar-sync
# Install a specific version
openclaw skills install calendar-sync --version 2.1.0
# Update a single skill
openclaw skills update calendar-sync
# Update all installed skills
openclaw skills update --all
Skills install into your active workspace's skills/ directory.
From Skills.sh (Vetted Registry)
Skills.sh is a curated, security-vetted alternative:
npx skills add owner/repo-name
This is the recommended method if you prioritize security — skills here go through a review process.
From GitHub (Direct Clone)
You can also clone skill repositories directly into your workspace's skills/ directory.
Managing Installed Skills
# List all installed skills
openclaw skills list
# Show only eligible skills (matching current environment)
openclaw skills list --eligible
# Get details about a specific skill
openclaw skills info calendar-sync
# Validate local skills for errors
openclaw skills check
How Do You Configure Skills in openclaw.json?
Skills can be customized per-entry in your config:
{
"skills": {
"entries": {
"email-management": {
"enabled": true,
"apiKey": "your-api-key-here",
"env": {
"SMTP_HOST": "smtp.gmail.com",
"SMTP_PORT": "587"
},
"config": {
"maxEmails": 50,
"defaultFolder": "inbox"
}
}
},
"load": {
"watch": true,
"watchDebounceMs": 500,
"extraDirs": ["/path/to/custom/skills"]
}
}
}
Key config options:
Field
Purpose
enabled
Toggle skill on/off without uninstalling
apiKey
API key (string or credential reference)
env
Environment variables injected at runtime
config
Custom configuration fields for the skill
load.watch
Enable hot-reloading when SKILL.md changes
load.extraDirs
Additional directories to scan for skills
Environment variables are scoped to individual agent runs, not your global shell — so skills cannot pollute your system environment.
How Do You Build Your Own OpenClaw Skill?
Step 1: Create the Directory Structure
my-custom-skill/
├── SKILL.md # Required: instructions and metadata
├── scripts/ # Optional: helper scripts
│ └── fetch.sh
└── references/ # Optional: reference docs
└── api-spec.json
Step 2: Write the SKILL.md
---
name: my-custom-skill
description: Fetches and summarizes daily news from RSS feeds
metadata: {"openclaw": {"requires": {"bins": ["curl"], "os": ["darwin", "linux"]}}}
---
## Instructions
You are a news summarization assistant. When the user asks for news:
1. Use the script at {baseDir}/scripts/fetch.sh to pull RSS feeds
2. Parse the XML response and extract article titles and summaries
3. Present a concise briefing with the top 5 stories
4. Include source links for each story
## Configuration
The user can set their preferred RSS feeds in the skill config
under `config.feeds` as an array of URLs.
Step 3: Install to Your Workspace
Copy the directory into your workspace's skills/ folder:
cp -r my-custom-skill ~/.openclaw/workspace/skills/
Step 4: Verify
openclaw skills check
openclaw skills info my-custom-skill
Publishing to ClawHub
clawhub sync --all
This publishes your skill to the public registry. Use clawhub sync to push updates.
Marketplace
Free skills and AI personas for OpenClaw — browse the marketplace.
What Is the Token Cost of Skills?
Skills inject into system prompts, which consumes tokens. Here is the approximate cost:
- Base overhead: ~195 characters when at least 1 skill exists
- Per-skill cost: ~97 characters plus field lengths
- Rough estimate: ~24 tokens per skill (OpenAI-style tokenization)
With 10 skills loaded, expect roughly 240 extra tokens per turn. This is minimal but worth tracking if you run many skills simultaneously.
What Are the Security Considerations for Skills?
The Security Problem
Since anyone can publish skills to ClawHub, there is a real security risk. The community has noted that roughly 80% of published skills are low quality, and some are outright malicious. A known CVE (CVE-2026-25253) has already affected the AI gateway through a skill vulnerability.
Security Best Practices
- Review every skill before enabling — treat third-party skills as untrusted code
- Verify the creator — check GitHub profiles, project reputation, and community trust
- Review permissions — understand what the skill can access (filesystem, network, APIs)
- Use Skills.sh over ClawHub when possible — vetted registry with security reviews
- Sandbox untrusted skills — run in Docker containers with restricted tool permissions
- Keep secrets out of prompts — use
envinjection, never hardcode API keys in SKILL.md - Test in isolation — validate skill behavior before deploying to production agents
Sandboxed Skill Execution
When running agents in containers:
- Binary requirements are checked on the host at load time
- Binaries must also exist inside the container for execution
- Package installs inside containers require network access and root permissions
How Do Skills Work in Multi-Agent Setups?
In multi-agent configurations:
- Workspace skills are per-agent (each agent sees only its own workspace skills)
- Managed skills (
~/.openclaw/skills) are shared across all agents - Name conflicts resolve by precedence: workspace > managed > bundled
This means you can give your coding agent specialized development skills while keeping your personal agent lightweight.
How Does Hot Reloading Work?
Skills support mid-session hot reloading. When load.watch is enabled (default), OpenClaw detects changes to SKILL.md files and reloads them without restarting the gateway. This is invaluable during skill development — edit your SKILL.md, save, and the agent immediately uses the updated instructions.
See also: Openclaw Dreaming Guide
FAQ
How many skills can I run at once?
No hard limit, but each skill adds ~24 tokens to your system prompt. Running 50+ skills simultaneously may impact context window availability and increase costs.
Can I use skills without ClawHub?
Yes. You can create skills locally, clone them from GitHub, or use the Skills.sh registry. ClawHub is the largest registry but not required.
Do skills work with all LLM providers?
Skills are LLM-agnostic instructions. They work with any model OpenClaw supports (Claude, GPT, Llama, Mistral, etc.), though some skills may perform better with more capable models.
Can a skill access my filesystem?
Only if the agent has filesystem tool permissions enabled. Skills inherit the agent's tool permissions — if the agent is restricted to read-only, the skill cannot write files.
How do I disable a skill without uninstalling it?
Set "enabled": false in the skill's entry in openclaw.json:
{
"skills": {
"entries": {
"skill-name": {
"enabled": false
}
}
}
}
What is the difference between skills and tools?
Tools are built-in capabilities (read files, execute commands, web search). Skills are modular instruction packages that teach the agent how to use tools in specific ways for specific tasks. A skill might combine multiple tools into a workflow.
*Last updated: March 2026. Published by the Remote OpenClaw team at remoteopenclaw.com.*
Top comments (0)