| name | creating-nemoclaw-skills |
| description | Scaffolds new OpenClaw AgentSkills for use inside NemoClaw sandboxes, with proper SKILL.md frontmatter, directory structure, and conditional gating. Use when building custom skills for NemoClaw agents or when the user mentions creating, authoring, or scaffolding agent skills. |
Creating NemoClaw Skills
OpenClaw skills are markdown-based instruction modules that teach agents how to use tools effectively. Skills consist of a SKILL.md file with YAML frontmatter and optional reference files.
Quick Start
- Create skill directory:
mkdir -p skills/<skill-name>
- Copy the template:
cp templates/SKILL_TEMPLATE.md skills/<skill-name>/SKILL.md
- Edit frontmatter and body
- Verify inside sandbox:
nemoclaw <name> connect then openclaw skills list
Skill Directory Structure
<skill-name>/
├── SKILL.md # Required: frontmatter + instructions
├── reference/ # Optional: detailed docs (loaded on demand)
│ └── api-reference.md
├── scripts/ # Optional: utility scripts (executed, not loaded)
│ └── helper.py
└── templates/ # Optional: file templates
Frontmatter Requirements
---
name: my-skill-name
description: Does X when Y. Use when Z.
---
name: Required. Max 64 characters. Lowercase letters, numbers, and hyphens only. Use gerund form (e.g., processing-pdfs).
description: Required. Max 1024 characters. Write in third person. Include both what the skill does AND when to use it. Be specific — this is how the agent decides whether to load the skill.
Getting Skills into the Sandbox
Skills only work inside the NemoClaw sandbox:
Option 1: Mount via filesystem policy — Add the skill directory to the sandbox's read_only paths in the OpenShell policy YAML. The skill persists across sandbox restarts.
Option 2: Install after connect — nemoclaw <name> connect, then place the skill in ~/.openclaw/skills/ or the workspace ./skills/ directory.
Load Precedence
Skills load from four locations (highest to lowest priority):
- Workspace skills:
<workspace>/skills/ — highest priority
- Local/managed skills:
~/.openclaw/skills/
- Bundled skills: installed with OpenClaw
- Plugin-shipped skills: bundled with plugins — lowest priority
If a skill name conflicts, the higher-priority location wins.
Template
Use the bundled template to get started: SKILL_TEMPLATE.md
Conditional Gating
Control when a skill loads based on available tools and environment. See gating-reference.md for details on requires.bins, requires.env, requires.config, and os gating.
Best Practices
- Keep SKILL.md under 500 lines — push details to reference files
- Use progressive disclosure: SKILL.md is the overview, reference files are loaded on demand
- Keep file references one level deep from SKILL.md
- Write descriptions in third person
- Provide utility scripts for deterministic operations
- Test with the agent models you plan to use