Clawdbot Skills
Extend Clawdbot AI assistant with skills. Learn how to create, install, and manage skills for your personal AI assistant.
Clawdbot Skills Overview
Clawdbot uses AgentSkills-compatible skill folders to teach the agent how to use tools. Each skill is a directory containing a SKILL.md with YAML frontmatter and instructions.
Clawdbot loads bundled skills plus optional local overrides, and filters them at load time based on environment, config, and binary presence.
Skill Locations and Precedence
Skills are loaded from three places:
| Location | Description |
|---|---|
| Bundled skills | Shipped with the install (npm package or Clawdbot.app) |
| Managed/local skills | ~/.clawdbot/skills |
| Workspace skills | <workspace>/skills |
Precedence (highest to lowest):
<workspace>/skills~/.clawdbot/skills- Bundled skills
You can configure extra skill folders via skills.load.extraDirs in ~/.clawdbot/clawdbot.json.
Per-Agent vs Shared Skills
In multi-agent setups:
- Per-agent skills: Live in
<workspace>/skillsfor that agent only - Shared skills: Live in
~/.clawdbot/skillsand are visible to all agents
ClawHub (Install + Sync)
ClawHub is the public skills registry for Clawdbot. Browse at https://clawhub.com.
Common flows:
# Install a skill into your workspace
clawhub install <skill-slug>
# Update all installed skills
clawhub update --all
# Sync (scan + publish updates)
clawhub sync --allBy default, clawhub installs into ./skills under your current working directory.
Skill Format
SKILL.md must include at least:
---
name: my-skill
description: What this skill does
---
Instructions for the agent...Optional Frontmatter Keys
| Key | Description |
|---|---|
homepage | URL surfaced as "Website" in the Skills UI |
user-invocable | true|false (default: true) - Expose as user slash command |
disable-model-invocation | true|false (default: false) - Exclude from model prompt |
command-dispatch | tool - Bypass model and dispatch directly to a tool |
command-tool | Tool name to invoke when command-dispatch: tool |
Gating (Load-time Filters)
Filter skills at load time using metadata:
---
name: my-skill
description: My skill description
metadata: {"openclaw": {"requires": {"bins": ["uv"], "env": ["API_KEY"], "config": ["browser.enabled"]}}}
---Gating Fields
| Field | Description |
|---|---|
always: true | Always include the skill |
requires.bins | Required binaries |
requires.env | Required environment variables |
requires.config | Required config keys |
primaryEnv | Primary environment variable for the skill |
Config Overrides
Override skill settings in ~/.clawdbot/clawdbot.json:
{
"skills": {
"entries": {
"my-skill": {
"enabled": true,
"env": {
"API_KEY": "your-key"
}
}
}
}
}Security Notes
- Treat third-party skills as untrusted code
- Read skills before enabling
- Prefer sandboxed runs for untrusted inputs
- Keep secrets out of prompts and logs
Plugins + Skills
Plugins can ship their own skills by listing skills directories in clawdbot.plugin.json. Plugin skills load when the plugin is enabled.
Skills Watcher (Auto-refresh)
Clawdbot watches skill directories for changes and auto-refreshes when skills are added, modified, or removed.
Next Steps
- Clawdbot Slash Commands - Command reference
- Clawdbot Tools - Tool configuration
- Clawdbot Gateway - Gateway configuration