Create new skills for FastClaw agents. Use when the user asks to create a skill, turn a workflow into a skill, or build reusable automation. Also use when discussing skill format, structure, or best practices.
66
78%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Fix and improve this skill with Tessl
tessl review fix ./skills/fastclaw-skill-guide/SKILL.mdGuide for creating new skills that FastClaw agents can discover and use.
skill-name/
├── SKILL.md # Required — skill instructions
├── scripts/ # Optional — executable scripts for deterministic tasks
├── references/ # Optional — docs loaded into context as needed
└── assets/ # Optional — templates, icons, fontsUse YAML frontmatter followed by markdown instructions:
---
name: My Skill Name
description: One-line description of what this skill does and when to use it
homepage: https://example.com
metadata:
fastclaw:
emoji: "🔧"
always: false
os: ["darwin", "linux"]
requires:
bins: ["git"]
anyBins: ["python3", "python"]
env: ["API_KEY"]
primaryEnv: "API_KEY"
---
# Skill Title
Step-by-step instructions in markdown...| Field | Required | Description |
|---|---|---|
name | Yes | Human-readable skill name |
description | Yes | Brief description — this is the primary trigger mechanism |
homepage | No | URL for more info |
metadata.fastclaw.emoji | No | Display icon |
metadata.fastclaw.always | No | If true, full content is always in system prompt |
metadata.fastclaw.os | No | OS requirements (darwin, linux, windows) |
metadata.fastclaw.requires.bins | No | All listed binaries must exist on PATH |
metadata.fastclaw.requires.anyBins | No | At least one must exist |
metadata.fastclaw.requires.env | No | Required environment variables |
metadata.fastclaw.primaryEnv | No | Maps config apiKey to this env var |
Note: metadata.openclaw is also supported for backward compatibility with OpenClaw skills.
The description determines whether the agent loads this skill. Make it specific and slightly "pushy" — include both what the skill does AND contexts where it should trigger.
Bad: "Format data"
Good: "Format CSV and Excel data into clean tables. Use whenever the user mentions spreadsheets, data formatting, column alignment, CSV cleanup, or tabular output."
Skills are discovered from multiple directories in precedence order (higher overrides lower):
{agentDir}/skills/ — skills specific to this agent{teamDir}/skills/ — shared within a team~/.fastclaw/skills/ — user-level skills~/.openclaw/skills/ — installed via OpenClawfastclaw.jsonSkills use progressive disclosure:
load_skill (<500 lines ideal)Keep SKILL.md under 500 lines. If approaching the limit, move detailed content to references/ with clear pointers.
{baseDir} token to reference files within the skill directory — it gets replaced with the absolute path at load timescripts/, docs in references/, templates in assets/{agentDir}/skills/{skill-name}/SKILL.md for agent-level, or ~/.fastclaw/skills/{skill-name}/SKILL.md for user-levelload_skill tool to confirm it loads correctly---
name: git-pr-review
description: Review pull requests with structured feedback. Use when the user asks to review a PR, check code changes, or provide feedback on a merge request.
---
# PR Review
Review a pull request and provide structured feedback.
## Steps
1. Get the PR diff:
```bash
git diff main...HEADFor each changed file, check:
Output feedback in this format:
One-paragraph overview.
533a138
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.