Build Custom Skills

Create, test, and publish your own OpenClaw skills.

15 min read Updated Feb 2026

What is a Skill?

Skills are directories containing a SKILL.md file with YAML frontmatter and instructions. They follow the AgentSkills convention — an open standard for AI coding assistants.

Skill Structure

my-skill/
└── SKILL.md

The SKILL.md file:

SKILL.md
---
name: my-awesome-skill
description: Does something awesome for your agent
---

# My Awesome Skill

## Instructions

When the user asks to do something awesome, follow these steps:

1. First, check the current context
2. Then, perform the awesome action
3. Report the results

## Notes

- This skill requires internet access
- Use {baseDir} to reference files in the skill folder

Optional Frontmatter Keys

homepage

URL surfaced as "Website" in the macOS Skills UI

user-invocable: true|false

When true (default), the skill is exposed as a user slash command

disable-model-invocation: true|false

When true, excluded from model prompt (still available via user invocation)

command-dispatch: tool

Bypasses the model and dispatches directly to a tool

Install Locations

Per-agent (highest priority):
<workspace>/skills/my-skill/SKILL.md

Shared across agents:
~/.openclaw/skills/my-skill/SKILL.md

Extra dirs (lowest priority, via config):
skills.load.extraDirs in openclaw.json

Publishing to ClawHub

Share your skill with the community:

npx clawhub@latest sync --all

npx clawhub@latest publish my-awesome-skill

Published skills appear on ClawHub and can be installed by anyone.

Security Notes

Treat third-party skills as untrusted code. Read them before enabling.

Skills with env and apiKey inject secrets into the host process. Keep secrets out of prompts and logs.

What's Next?