plugin-structure
Explains the standard plugin directory layout, plugin.json, and automatic discovery of commands, agents, skills and hooks.
- Kind
- Skill
- Works with
- Claude Code
- Source
- anthropics/claude-plugins-official @ 58267944f921
- Path
- plugins/plugin-dev/skills/plugin-structure/SKILL.md
- Jobs
- Documentation
Credit
- Made by
- anthropics
- Original
- github.com/anthropics/claude-plugins-official/blob/58267944f9…
- License
- Apache-2.0
Listed by Skill Manifest; not made by us.
InstallInstall it from a plugin marketplace.
/plugin install plugin-dev@claude-plugins-official
Install factsScanned 2 Nov 2026
- Adds
- .claude/skills/plugin-structure/ (the skill folder)
- Runs scripts
- Yes
- shell block in the text
- Uses the network
- None found
- Needs secrets
- Yes
- API_KEY
- Reads environment variables
- API_KEY
- Source revision
- 58267944f921
- Licence
- Apache-2.0
- Last activity
- 1 Nov 2026
- Review
- Reviewed
Found by a static scan of the stored text; nothing is run. “None found” is not a guarantee, so read what you install before you run it.
- Only the main file is read; other files in the folder are not scanned
# Plugin Structure for Claude Code
## Overview
Claude Code plugins follow a standardized directory structure with automatic component discovery. Understanding this structure enables creating well-organized, maintainable plugins that integrate seamlessly with Claude Code.
**Key concepts:**
- Conventional directory layout for automatic discovery
- Manifest-driven configuration in `.claude-plugin/plugin.json`
- Component-based organization (commands, agents, skills, hooks)
- Portable path references using `${CLAUDE_PLUGIN_ROOT}`
- Explicit vs. auto-discovered component loading
## Directory Structure
Every Claude Code plugin follows this organizational pattern:
```
plugin-name/
├── .claude-plugin/
│ └── plugin.json # Required: Plugin manifest
├── commands/ # Slash commands (.md files)
├── agents/ # Subagent definitions (.md files)
├── skills/ # Agent skills (subdirectories)
│ └── skill-name/
│ └── SKILL.md # Required for each skill
├── hooks/
│ └── hooks.json # Event handler configuration
├── .mcp.json # MCP server definitions
…