Files

4.1 KiB

name, description, metadata
name description metadata
writing-skills Use when creating, updating, or improving agent skills.
category author triggers references
meta ozy new skill, create skill, update skill, skill documentation, skill template, agent skill, writing skill anti-rationalization, cso, standards, templates, testing, tier-1-simple, tier-2-expanded, tier-3-platform

Writing Skills (Excellence)

Dispatcher for skill creation excellence. Use the decision tree below to find the right template and standards.

Quick Decision Tree

What do you need to do?

  1. Create a NEW skill:

  2. Improve an EXISTING skill:

  3. Verify Compliance:

📚 Component Index

Component Purpose
CSO "SEO for LLMs". How to write descriptions that trigger.
Standards File naming, YAML frontmatter, directory structure.
Anti-Rationalization How to write rules that agents won't ignore.
Testing How to ensure your skill actually works.

🛠️ Templates

When to Use

  • Creating a NEW skill from scratch
  • Improving an EXISTING skill that agents ignore
  • Debugging why a skill isn't being triggered
  • Standardizing skills across a team

How It Works

  1. Identify goal → Use decision tree above
  2. Select template → From references/templates/
  3. Apply CSO → Optimize description for discovery
  4. Add anti-rationalization → For discipline skills
  5. Test → RED-GREEN-REFACTOR cycle

Quick Example

---
name: my-technique
description: Use when [specific symptom occurs].
metadata:
  category: technique
  triggers: error-text, symptom, tool-name
---

# My Technique

## When to Use
- [Symptom A]
- [Error message]

Common Mistakes

Mistake Fix
Description summarizes workflow Use "Use when..." triggers only
No metadata.triggers Add 3+ keywords
Generic name ("helper") Use gerund (creating-skills)
Long monolithic SKILL.md Split into references/

See gotchas.md for more.

Pre-Deploy Checklist

Before deploying any skill:

  • name field matches directory name exactly
  • SKILL.md filename is ALL CAPS
  • Description starts with "Use when..."
  • metadata.triggers has 3+ keywords
  • Total lines < 500 (use references/ for more)
  • No @ force-loading in cross-references
  • Tested with real scenarios
  • opencode-expert: For OpenCode environment configuration
  • Use /write-skill command for guided skill creation

Examples

Create a Tier 1 skill:

mkdir -p ~/.config/opencode/skills/my-technique
touch ~/.config/opencode/skills/my-technique/SKILL.md

Create a Tier 2 skill:

mkdir -p ~/.config/opencode/skills/my-skill/references/core
touch ~/.config/opencode/skills/my-skill/{SKILL.md,gotchas.md}
touch ~/.config/opencode/skills/my-skill/references/core/README.md