Lesson 5. Skills#
Why you need this#
Tools (from the previous lesson) are the assistant’s capabilities. Skills are instructions on how to properly use those capabilities for specific tasks. A skill is a folder with an instruction file that teaches the assistant to do something specific: generate images, work with a calendar, write code in a particular language.
Think of skills as “professional development courses” for your assistant.
How a skill works#
Each skill is a folder containing a SKILL.md file. This file contains:
- Header (metadata) — name, description, requirements
- Instructions — how exactly to perform the task
Example SKILL.md#
---
name: nano-banana-pro
description: Image generation and editing via Gemini
---
# Image Generation
When the user asks to create or edit an image:
1. Use the Gemini API for generation
2. Save the result to the workspace folder
3. Show the image to the userWhere skills come from#
Skills are loaded from three places (in order of priority):
| Location | Path | Description |
|---|---|---|
| Workspace (highest priority) | <workspace>/skills/ |
Your personal skills for a specific agent |
| Shared skills | ~/.openclaw/skills/ |
Skills available to all agents on the computer |
| Built-in (lowest priority) | Installed with OpenClaw | Basic set of skills |
If a skill with the same name exists in multiple places, the one from the higher-priority location is used.
ClawHub — skill store#
ClawHub (clawhub.ai) is a public catalog of skills for OpenClaw. You can search, download, and install ready-made skills there.
Installing the CLI tool#
npm install -g clawhubMain commands#
# Search for a skill
clawhub search "calendar"
clawhub search "image generation"
# Install a skill
clawhub install <skill-name>
# Update all installed skills
clawhub update --allExample: installing a skill#
# 1. Search for an image-related skill
clawhub search "image"
# 2. Install the found skill
clawhub install nano-banana-pro
# 3. Start a new session so the skill gets loaded
# (in the chat with the assistant)
/newImportant: after installing a skill, you need to start a new session (
/new) so the assistant “sees” the new skill.
Configuring skills#
Enabling and disabling#
In the openclaw.json file:
{
skills: {
entries: {
"nano-banana-pro": {
enabled: true, // enable the skill
apiKey: "your-key", // API key (if needed)
env: {
GEMINI_API_KEY: "your-key" // environment variable
}
},
"unneeded-skill": {
enabled: false // disable the skill
}
}
}
}Skill requirements (gating)#
Some skills only work when certain conditions are met:
- bins — a specific program is needed (e.g.,
python,node) - env — an environment variable is needed (usually an API key)
- config — a specific setting in OpenClaw is needed
- os — only works on certain systems (Mac, Linux, Windows)
OpenClaw automatically checks these conditions and only loads matching skills.
How to create your own skill#
Step 1: Create a folder#
mkdir -p ~/.openclaw/workspace/skills/my-skillStep 2: Create a SKILL.md file#
---
name: my-skill
description: My skill for creating reports
---
# Creating Reports
When the user asks to create a report:
1. Ask what time period the report should cover
2. Gather data from files in the `reports/` folder
3. Create a report file in Markdown format
4. Let the user know the report is ready
## Report format
- Title with date
- Key metrics in a table
- Brief conclusionsStep 3: Start a new session#
/newThe assistant will see your skill and follow the instructions when the task is appropriate.
Adding metadata (optional)#
For more “advanced” skills, add metadata:
---
name: my-report-skill
description: Creating beautiful reports from data
metadata: {
"openclaw": {
"emoji": "📊",
"requires": {
"bins": ["python3"]
}
}
}
---Publishing a skill to ClawHub#
If you’ve created a useful skill, share it with others:
clawhub sync --allThis command publishes your skills to ClawHub, and other users can install them.
Security#
⚠️ Important: skills from unknown authors are like programs from unknown people. Before installing:
- Read the skill description
- Look at the SKILL.md file (what exactly the skill does)
- Use a sandbox for running untrusted skills
Lesson summary#
- Skills are instructions that teach the assistant to perform specific tasks
- Each skill is a folder with a SKILL.md file
- ClawHub (clawhub.ai) is a catalog of ready-made skills
- Skills are loaded from the workspace, shared folder, and built-in sources
- Creating your own skill is simple: a folder + a SKILL.md file with instructions
- After installing/creating a skill, you need a new session (
/new) - Check skills from unknown authors before using them
Next lesson: Automation