SOP 002: Skills Setup
Fresh| Field | Value |
|---|---|
| SOP ID | SOP-002 |
| Version | 1.0 |
| Status | Active |
| Source | docs.warp.dev/agent-platform/capabilities/skills |
Overview
Skills are reusable instruction sets that teach agents how to perform specific tasks. Create custom skills to standardize workflows and share expertise across your team.
Key Concepts
- Automatic discovery - Agents see all available skills and invoke them when appropriate
- Slash command invocation - Call any skill directly with
/{skill-name} - Simple markdown format - Skills are just markdown files with YAML frontmatter
- Supporting files - Include scripts, templates, or configs alongside your skill
Procedure
Step 1: Choose a Location
| Scope | Path | Use Case |
|---|---|---|
| Project | .agents/skills/ (recommended) | Project-specific workflows, team-shared procedures |
| Project (alt) | .warp/skills/, .claude/skills/, .cursor/skills/ | Compatible with other AI tools |
| Global | ~/.agents/skills/ | Personal workflows used across all projects |
Step 2: Create the Directory Structure
bash
# Project skill
mkdir -p .agents/skills/my-new-skill
# Global skill
mkdir -p ~/.agents/skills/my-new-skillStep 3: Write the SKILL.md File
Create .agents/skills/my-new-skill/SKILL.md:
markdown
---
name: my-new-skill
description: One-line description of what this skill does and when to use it
---
# My New Skill
## When to use
Explain the scenarios where this skill is helpful.
## Instructions
1. First step the Agent should take
2. Second step with specific details
3. Continue with clear, actionable steps
## Important notes
- Any constraints or requirements
- Common pitfalls to avoidWARNING
Both name and description fields are required in the YAML frontmatter. The description is how agents decide whether to use your skill.
Step 4: Add Supporting Files (Optional)
.agents/skills/
check-broken-links/
SKILL.md
check_links.py # Supporting script
config.yaml # Configuration fileReference supporting files with relative paths in your SKILL.md:
markdown
## Running the check
python3 .agents/skills/check-broken-links/check_links.py --internal-onlyStep 5: Test Your Skill
Natural language:
Use the my-new-skill skill to do the thingSlash command:
/my-new-skillStep 6: View Available Skills
Ask the agent:
What skills do I have?Or use the slash command /open-skill to browse and edit skills.
Example: Feature Flag Skill
markdown
---
name: add-feature-flag
description: Add a new feature flag to the codebase with proper configuration and documentation
---
# Add Feature Flag
## Instructions
1. Ask the user for the feature flag name and default value
2. Add the flag definition to config/feature_flags.yaml
3. Create a helper function in src/utils/flags.ts
4. Update the feature flags documentation in docs/FEATURE_FLAGS.md
## Configuration Format
feature_name:
default: false
description: "What this flag controls"
owner: "team-name"Skill Name Conflicts
| Invocation | Behavior |
|---|---|
| Natural language | Agent sees all in-scope skills with paths, chooses appropriately |
| Slash commands | Warp shows all matching skills in menu for you to select |
| Background resolution | Prioritizes home directory (global) first, then higher directories |
Best Practices
- Write clear, specific descriptions
- Include exact file paths and command syntax
- Show concrete usage examples
- Keep skills focused (one task per skill)
- Use
verb-nounnaming (e.g.,add-feature-flag,run-migrations) - Version control project skills
Pre-built Skills
Browse ready-to-use skills at warpdotdev/oz-skills on GitHub.
Verification Checklist
- [ ] SKILL.md has valid YAML frontmatter with
nameanddescription - [ ] Skill appears when asking "What skills do I have?"
- [ ] Slash command
/{skill-name}shows the skill - [ ] Agent follows skill instructions correctly