Skills
Skills extend the agent’s capabilities through markdown instruction files. They teach the agent how to use specific tools or perform certain tasks.
How skills work
Each skill is a folder containing a SKILL.md file with YAML frontmatter and markdown instructions:
weather/
└── SKILL.mdExample SKILL.md:
---
name: weather
description: Get current weather and forecasts (no API key required).
---
# Weather
Use wttr.in for quick weather lookups:
\`\`\`bash
curl -s "wttr.in/London?format=3"
\`\`\`The agent sees the skill name and description in its system prompt. When it needs the skill, it reads the full SKILL.md for instructions.
Skill locations
Skills are loaded from three places (highest priority first):
- Workspace skills:
~/.kyber/workspace/skills/ - Managed skills:
~/.kyber/skills/ - Built-in skills: shipped with Kyber
If the same skill name exists in multiple locations, the higher-priority one wins.
Built-in skills
| Skill | Description |
|---|---|
github | Interact with GitHub using the gh CLI |
weather | Get weather info using wttr.in and Open-Meteo |
summarize | Summarize URLs, files, and YouTube videos |
tmux | Remote-control tmux sessions |
skill-creator | Create new skills |
Creating a skill
- Create a folder in your workspace skills directory:
mkdir -p ~/.kyber/workspace/skills/my-skill- Create
SKILL.mdwith frontmatter:
---
name: my-skill
description: What this skill does and when to use it.
---
# My Skill
Instructions for the agent go here.The description is critical — it’s what the agent uses to decide when to load the skill.
Skill metadata
Skills can include metadata for gating and display:
metadata: {"kyber":{"emoji":"🔧","requires":{"bins":["jq"]}}}| Field | Description |
|---|---|
emoji | Display emoji for the skill |
requires.bins | CLI tools that must be on PATH |
requires.env | Environment variables that must be set |
os | Restrict to specific OS (darwin, linux) |
always | If true, always include in the system prompt |
Skills with unmet requirements show as unavailable but are still listed so the agent knows they exist.
OpenClaw compatibility
Kyber is compatible with OpenClaw skills. Both "kyber" and "openclaw" metadata namespaces are understood. Drop any OpenClaw skill folder into ~/.kyber/skills/ and it works.
Progressive loading
Skills use a three-level loading system to manage context efficiently:
- Metadata (name + description) — always in the system prompt
- SKILL.md body — loaded when the agent reads the file
- Bundled resources (scripts, references, assets) — loaded as needed
This keeps the base prompt small while giving the agent access to detailed instructions when it needs them.