Custom skills let you teach OpenClaw new capabilities tailored to your specific workflows. Here's how to build, register, and test your own OpenClaw skills.
Install OmniScriber — FreeSave your AI-assisted coding conversations before you lose them
OpenClaw ships with a solid set of built-in capabilities: shell access, file management, web browsing, code execution. For general tasks, these are sufficient. But for specialized workflows — your company's deployment process, your team's code review conventions, your personal productivity system — built-in skills often fall short.
Custom skills solve this problem. They let you encode domain-specific knowledge, workflows, and conventions directly into the agent's context. Instead of explaining your deployment process every time you ask OpenClaw to deploy something, you write a skill that captures that knowledge once — and the agent uses it automatically whenever it's relevant.
The good news is that creating custom skills is much simpler than it sounds. The core of any skill is a SKILL.md file — a Markdown document that tells the agent what the skill does, when to use it, and how to use it. No complex programming required for basic skills.
When OpenClaw starts, it scans the skills directory (typically ~/.openclaw/skills/) and reads all SKILL.md files. The content of these files is incorporated into the agent's system context — meaning the agent knows about your skills before you give it any task.
A well-written SKILL.md tells the agent: what this skill is for, when to use it (trigger conditions), what steps to follow, what tools to use, and any important constraints or considerations. The agent uses this information to decide when and how to apply the skill.
Skills can also include additional files: scripts that the agent can execute, templates for common outputs, configuration files, and documentation. The SKILL.md file references these resources and tells the agent how to use them.
Advanced skills can define new tools — JavaScript/TypeScript functions that the agent can call. This requires more technical knowledge but allows skills to integrate with external APIs, databases, and services that OpenClaw doesn't support natively.
Create a new directory in ~/.openclaw/skills/ with a descriptive name (e.g., my-deployment-workflow). The directory name becomes the skill's identifier.
Create SKILL.md inside the directory. Start with a clear description of what the skill does, then list the trigger conditions (when should the agent use this skill?), followed by step-by-step instructions.
If your skill uses scripts, templates, or configuration files, add them to the skill directory and reference them in SKILL.md. Keep file paths relative to the skill directory.
Restart OpenClaw and give it a task that should trigger your skill. Observe whether it uses the skill correctly. Check the agent's reasoning output to understand how it's interpreting your instructions.
Skills rarely work perfectly on the first try. Refine the SKILL.md instructions based on how the agent interprets them. Clear, specific instructions work better than vague or ambiguous ones.
When you use ChatGPT or Claude to help design a custom skill, those conversations contain valuable reasoning about your workflow. OmniScriber saves them permanently.
The conversations where you iterated on your SKILL.md instructions are worth keeping. Export them with OmniScriber to preserve the evolution of your skill design.
As you build a collection of custom skills, OmniScriber helps you document the conversations that shaped each one — creating a knowledge base for your agent customization work.
Export your skill development conversations and share them with teammates who want to use the same skills — giving them the context they need to understand and customize them.
Save your AI-assisted coding conversations before you lose them