Overview
Skills are markdown documents that provide:- Specialized instructions for specific tasks
- Domain-specific knowledge and workflows
- Reusable procedures and best practices
- Custom tool combinations and patterns
How Skills Work
- Skills are stored as markdown files (
SKILL.md) - Agent discovers available skills at runtime
- When needed, agent loads skill content into context
- Skill instructions guide agent behavior
Skill Locations
PicoClaw loads skills from three locations in priority order:1. Workspace Skills (Highest Priority)
Location:~/.picoclaw/workspace/skills/
Purpose: Project-specific skills
Example:
2. Global Skills
Location:~/.picoclaw/skills/
Purpose: User-wide skills available to all projects
Example:
3. Builtin Skills (Lowest Priority)
Location:<picoclaw-repo>/skills/
Purpose: Official skills shipped with PicoClaw
Example:
Override Builtin Location
For advanced setups, override the builtin skills directory:Skill Structure
Directory Layout
Each skill is a directory containing aSKILL.md file:
SKILL.md Format
Skills use markdown with optional YAML frontmatter:Frontmatter Metadata
| Field | Required | Max Length | Description |
|---|---|---|---|
name | Yes | 64 chars | Skill identifier (alphanumeric with hyphens) |
description | Yes | 1024 chars | Brief description of skill purpose |
- Must match pattern:
^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$ - Examples:
github,code-review,api-testing
Creating Custom Skills
Basic Skill
- Create skill directory:
- Create
SKILL.md:
- Add content:
Advanced Skill with Resources
Using Skills
Automatic Discovery
The agent automatically discovers available skills:Loading Skills
The agent loads skills automatically when relevant:- Recognizes this relates to the
githubskill - Loads
github/SKILL.mdcontent - Follows instructions from the skill
- Applies best practices defined in skill
Explicit Skill Loading
You can explicitly request a skill:Skill Priority
When multiple skills have the same name, priority order:- Workspace (highest) -
~/.picoclaw/workspace/skills/ - Global -
~/.picoclaw/skills/ - Builtin (lowest) -
<repo>/skills/
- Builtin has
githubskill with general instructions - You create workspace
githubskill with project-specific workflow - Agent uses your workspace version (higher priority)
Skill Loader API
The skills system is implemented inpkg/skills/loader.go:
SkillsLoader
Methods
ListSkills()
List all available skills.SkillInfo with name, path, source, and description.
LoadSkill(name string)
Load a specific skill by name.name: Skill name (e.g., “github”)
string: Skill content (frontmatter stripped)bool: True if skill found
LoadSkillsForContext(skillNames []string)
Load multiple skills and format for context.BuildSkillsSummary()
Build XML summary of all available skills.Best Practices
Skill Design
✅ Do:- Keep skills focused on one domain/task
- Use clear, concise instructions
- Include examples and templates
- Document when to use the skill
- Use markdown formatting for readability
- Create overly broad skills
- Include sensitive information
- Duplicate information across skills
- Make skills too long (>2000 lines)
Naming Conventions
- Use lowercase with hyphens:
my-skill - Be descriptive:
github-pr-workflownotgh - Group related skills:
aws-deploy,aws-monitor
Organization
Workspace skills for:- Project-specific workflows
- Team conventions
- Temporary procedures
- Personal workflows
- Frequently used patterns
- Cross-project procedures
- General best practices
- Tool-specific instructions
- Common patterns
Example Skills
Git Workflow Skill
Code Review Skill
Deployment Skill
-
Test release build:
- Create GitHub release
- Upload binaries
- Announce in Discord
Post-deployment
- Verify deployment on target systems
- Monitor logs for errors
- Update documentation site
- Verify name in frontmatter matches directory:
- Check for validation errors in logs
Skill Not Loading
- Verify YAML frontmatter format:
- Check name validation:
- Only alphanumeric and hyphens
- No spaces or special characters
- Max 64 characters
- Check description length (max 1024 chars)
Wrong Skill Version Loading
Priority order:- Workspace (highest)
- Global
- Builtin (lowest)
Related Features
- Memory System - Persistent context across sessions
- MCP (Model Context Protocol) - External tool integration
- Heartbeat - Periodic skill-based tasks