Pipeline Orchestrator: - Add 07-pipeline-orchestrator skill with code/CLAUDE.md and desktop/SKILL.md - Add /reference-curator-pipeline slash command for full workflow automation - Add pipeline_runs and pipeline_iteration_tracker tables to schema.sql - Add v_pipeline_status and v_pipeline_iterations views - Add pipeline_config.yaml configuration template - Update AGENTS.md with Reference Curator Skills section - Update claude-project files with pipeline documentation Skill Format Refactoring: - Extract YAML frontmatter from SKILL.md files to separate skill.yaml - Add tools/ directories with MCP tool documentation - Update SKILL-FORMAT-REQUIREMENTS.md with new structure - Add migrate-skill-structure.py script for format conversion Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
4.0 KiB
4.0 KiB
Claude Skills - Format Requirements
Overview
This document describes the format requirements for Claude Skills in this repository. Skills support dual-platform development (Claude Code and Claude Desktop) with separated concerns.
Desktop Skill Structure (Recommended)
For Claude Desktop skills, metadata is stored in a separate skill.yaml file:
skill-name/
└── desktop/
├── skill.yaml # Metadata (name, description, allowed-tools, license)
├── SKILL.md # Content only (no frontmatter)
├── tools/ # MCP tool documentation
│ ├── firecrawl.md # Tool-specific docs
│ └── notion.md
├── references/ # Guidance docs
└── examples/ # Usage examples
skill.yaml Format
# Required fields
name: skill-name-here
description: Brief description of what the skill does and trigger keywords
# Optional fields
allowed-tools:
- mcp__firecrawl__*
- mcp__notion__*
- Read
- Write
- Edit
- Bash
- Glob
- Grep
- WebFetch
license: MIT # or Internal-use Only
triggers:
- keyword1
- keyword2
SKILL.md Content
With metadata separated into skill.yaml, SKILL.md contains only the skill directive:
# Skill Name
Purpose and overview...
## Workflow
Step-by-step instructions...
## MCP Tool Usage
Tool-specific guidance...
tools/ Directory
Document MCP tools used by the skill:
| File | Purpose |
|---|---|
firecrawl.md |
Firecrawl MCP tool usage |
notion.md |
Notion MCP tool usage |
perplexity.md |
Perplexity MCP tool usage |
chrome-devtools.md |
Chrome DevTools MCP tool usage |
claude-core.md |
Claude core tools (Read, Write, Edit, Bash, Glob, Grep) |
webfetch.md |
WebFetch tool usage |
Code Skill Structure
For Claude Code skills:
skill-name/
└── code/
├── CLAUDE.md # Action-oriented directive
├── scripts/ # Executable Python/Bash scripts
└── references/ # Documentation
Key Requirements
1. Metadata (skill.yaml)
- name: Required, lowercase with hyphens
- description: Required, include trigger keywords
- allowed-tools: Optional, list of permitted tools
- license: Optional, MIT or Internal-use Only
2. File Structure
- All files must be inside the skill folder
- Desktop version in
desktop/subdirectory - Code version in
code/subdirectory - Subfolders (tools/, references/, examples/) are allowed
3. Naming Conventions
- Use lowercase with hyphens for skill name
- No spaces or special characters in folder/file names
- Skill numbers are two-digit prefixes (00-99)
Full Directory Structure
XX-skill-name/
├── code/ # Claude Code version
│ ├── CLAUDE.md # Action-oriented directive
│ ├── scripts/ # Executable Python/Bash
│ └── references/ # Documentation
│
├── desktop/ # Claude Desktop version
│ ├── skill.yaml # Metadata
│ ├── SKILL.md # Content only
│ ├── tools/ # MCP tool documentation
│ ├── references/ # Guidance docs
│ └── examples/ # Usage examples
│
└── README.md # Overview (optional)
Migration Script
To migrate existing SKILL.md files with frontmatter to the new structure:
python scripts/migrate-skill-structure.py --dry-run # Preview
python scripts/migrate-skill-structure.py # Execute
The script:
- Extracts YAML frontmatter to
skill.yaml - Strips frontmatter from
SKILL.md - Creates
tools/directory - Generates tool stub files based on
allowed-tools
Legacy Format (Deprecated)
The old format with frontmatter embedded in SKILL.md is deprecated:
---
name: skill-name
description: Description
allowed-tools: mcp__firecrawl__*, Read, Write
---
# Skill content...
Use the migration script to convert to the new format.