# OpenClaw Skills
A skill in [[OpenClaw]] is a directory containing a `SKILL.md` with YAML frontmatter and instructions that teach an agent how to use a tool or follow a procedure. The format is **AgentSkills-compatible**, the same shape used by [[Claude Code]] and other harnesses, which means most skills written for one runtime can be loaded by another with minimal changes.
Skills are how OpenClaw stays composable: instead of cramming every behaviour into the core, the runtime stays small and capabilities arrive as discoverable, gateable, swappable directories.
## Discovery Order
Loaded from three locations, **highest precedence first**:
1. Workspace ; `<workspace>/skills/`
2. Managed (per-user) ; `~/.openclaw/skills/`
3. Bundled (ships with the runtime)
Workspace overrides managed overrides bundled. This is the same pattern OpenClaw uses elsewhere (hooks, agents) ; the override chain is consistent and predictable.
## Gating via Requirements
A `SKILL.md` can declare requirements that must be satisfied before the skill loads:
- **Required binaries** ; `git`, `ffmpeg`, `pandoc`, …
- **Env vars** ; an API key must be present
- **Config paths** ; specific config files must exist
- **OS restrictions** ; macOS-only, Linux-only, Windows-only
Skills that fail their requirements are silently skipped, not errored ; this is intentional so a workspace can ship aspirational skills without breaking on machines that don't have the prerequisites.
## ClawHub
**ClawHub** ([clawhub.com](https://clawhub.com)) is the public skill registry. It plays the same role for OpenClaw that npm plays for Node, Homebrew for CLIs, or the Marketplace for [[GitHub Actions]].
```bash
clawhub install <skill-slug>
clawhub update --all
clawhub list --installed
```
The community-maintained list at [VoltAgent/awesome-openclaw-skills](https://github.com/VoltAgent/awesome-openclaw-skills) is a good index of what's worth installing.
## Self-Improving Loop
OpenClaw's spec includes a *self-improving* property: an agent can author and modify its own skills. The loop is governed by [[OpenClaw Standing Orders|standing orders]] and the [[OpenClaw Hooks|hook system]] ; standing orders define the boundaries within which self-modification is allowed; hooks fire on key lifecycle events; new skills written into the workspace `skills/` directory take precedence on the next load.
## Plugin vs Skill
- **Skills** teach an agent *how to do* something with existing tools
- **Plugins** add *new* tools, channels, context engines, or hooks to the gateway itself
A plugin is heavier (npm package + manifest + runtime entry point); a skill is lighter (a directory + YAML + Markdown). Pick the lightest abstraction that fits.
## References
- Skills: https://docs.openclaw.ai/tools/skills
- ClawHub: https://clawhub.com
- AgentSkills spec: https://agentskills.io/specification.md
## Related
- [[OpenClaw]]
- [[OpenClaw Gateway]]
- [[OpenClaw Hooks]]
- [[OpenClaw Standing Orders]]
- [[AI Agent Skills]]
- [[Claude Code Skills]]