Files
english/.opencode/skills/skill-creator/references/yaml-frontmatter-reference.md
2026-04-12 01:06:31 +07:00

2.9 KiB

YAML Frontmatter Reference

Required Fields

---
name: skill-name-in-kebab-case
description: What it does and when to use it. Include specific trigger phrases.
---

All Optional Fields

---
name: skill-name
description: [required - under 200 chars]
license: MIT                                         # Open-source license
compatibility: Requires Python 3.10+, network access # 1-500 chars, environment needs
allowed-tools: "Bash(python:*) Bash(npm:*) WebFetch" # Restrict tool access
metadata:                                            # Custom key-value pairs
  author: Company Name
  version: 1.0.0
  mcp-server: server-name
  category: productivity
  tags: [project-management, automation]
  documentation: https://example.com/docs
  support: support@example.com
---

Field Details

name (required)

  • Supports either skill-name or namespace:skill-name (for example ck:plan)
  • If namespaced, namespace and skill id both use kebab-case only (no spaces, no capitals)
  • Folder name must match the skill id segment (after :)
  • Cannot contain "claude" or "anthropic" (reserved)

description (required)

  • Under 200 characters (1024 max per spec, but 200 for this project)
  • Structure: [What it does] + [When to use it] + [Key capabilities]
  • Include trigger phrases users would actually say
  • Mention relevant file types if applicable
  • Use third-person: "This skill should be used when..."

license (optional)

  • Common: MIT, Apache-2.0
  • Reference full terms in LICENSE.txt if needed

compatibility (optional)

  • 1-500 characters
  • Environment requirements: intended product, system packages, network access

allowed-tools (optional)

  • Restricts which tools the skill can use
  • Space-separated tool patterns

metadata (optional)

  • Any custom key-value pairs
  • Suggested: author, version, mcp-server, category, tags

Security Restrictions

Forbidden in frontmatter:

  • XML angle brackets (< >) — frontmatter appears in system prompt, could inject instructions
  • Skills named with "claude" or "anthropic" prefix (reserved)

Allowed:

  • Standard YAML types (strings, numbers, booleans, lists, objects)
  • Custom metadata fields
  • Long descriptions up to 1024 characters (project standard: 200)

Description Examples

Good — specific with triggers:

description: Analyzes Figma design files and generates developer handoff docs.
  Use when user uploads .fig files or asks for "design specs" or "design-to-code".
description: Manages Linear project workflows including sprint planning and
  task creation. Use when user mentions "sprint", "Linear tasks", or "create tickets".

Bad — vague or missing triggers:

description: Helps with projects.                              # Too vague
description: Creates sophisticated documentation systems.      # No triggers
description: Implements the Project entity model.              # Too technical