mirror of
https://github.com/anthropics/claude-plugins-official.git
synced 2026-03-17 22:43:09 +00:00
P0 follow-up for EA-471. Updates plugin-dev teaching materials to stop recommending the commands/ directory layout for new plugins: - command-development/SKILL.md: add legacy banner at top pointing to skills/ format - create-plugin.md: update scaffolding to create skills/<name>/SKILL.md instead of commands/; mark commands/ as acceptable legacy alternative; update all examples, tables, and testing instructions - example-plugin: migrate example-command to skills/example-command/SKILL.md; keep commands/example-command.md with a legacy-format note; update README to reflect new preferred structure Both formats remain loaded identically — this is a documentation change only. Refs: anthropics/apps#26827
Example Plugin
A comprehensive example plugin demonstrating Claude Code extension options.
Structure
example-plugin/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata
├── .mcp.json # MCP server configuration
├── skills/
│ ├── example-skill/
│ │ └── SKILL.md # Model-invoked skill (contextual guidance)
│ └── example-command/
│ └── SKILL.md # User-invoked skill (slash command)
└── commands/
└── example-command.md # Legacy slash command format (see note below)
Extension Options
Skills (skills/)
Skills are the preferred format for both model-invoked capabilities and user-invoked slash commands. Create a SKILL.md in a subdirectory:
Model-invoked skill (activated by task context):
---
name: skill-name
description: Trigger conditions for this skill
version: 1.0.0
---
User-invoked skill (slash command — /skill-name):
---
name: skill-name
description: Short description for /help
argument-hint: <arg1> [optional-arg]
allowed-tools: [Read, Glob, Grep]
---
Commands (commands/) — legacy
Note: The
commands/*.mdlayout is a legacy format. It is loaded identically toskills/<name>/SKILL.md— the only difference is file layout. For new plugins, prefer theskills/directory format. This plugin keepscommands/example-command.mdas a reference for the legacy layout.
MCP Servers (.mcp.json)
Configure external tool integration via Model Context Protocol:
{
"server-name": {
"type": "http",
"url": "https://mcp.example.com/api"
}
}
Usage
/example-command [args]- Run the example slash command- The example skill activates based on task context
- The example MCP activates based on task context