Plugin Structure

Explain Claude Code plugin architecture, directory layout, and manifest configuration.

Updated Jan 21, 2026
One-click install
npx skills add https://github.com/mbarnes-code/multi-agent-vllm --skill plugin-structure-mbarnes-code
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Plugin Structure
Source: https://github.com/mbarnes-code/multi-agent-vllm/tree/main/features/claude-plugins-official/plugins/plugin-dev/skills/plugin-structure
Command: npx skills add https://github.com/mbarnes-code/multi-agent-vllm --skill plugin-structure-mbarnes-code

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and examples (resource) components.

What problem does it solve?

This Skill provides comprehensive guidance on building well-organized, maintainable Claude Code plugins, eliminating confusion around directory layouts, manifest configurations, and component organization.

Core Features & Use Cases

  • Directory Structure: Understand the conventional layout for automatic discovery.
  • Manifest Configuration: Learn how to configure plugin.json for metadata and component paths.
  • Component Organization: Master patterns for commands, agents, skills, and hooks.
  • Portable Paths: Utilize ${CLAUDE_PLUGIN_ROOT} for robust path references.
  • Use Case: When starting a new Claude Code plugin, use this Skill to ensure you follow best practices for structure and configuration from the outset, preventing future refactoring needs.

Quick Start

Use the plugin structure skill to understand how to organize files for a new Claude Code plugin.

Frequently Asked Questions about Plugin Structure

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I structure a Claude Code plugin for automatic component discovery?

Configuring the plugin manifest involves defining metadata and component paths within plugin.json. This file directs the system to your commands, agents, skills, and hooks, ensuring proper integration and auto-discovery.

What is the best way to reference file paths in a Claude Code plugin?

The best way to reference file paths in a Claude Code plugin is using the `${CLAUDE_PLUGIN_ROOT}` variable. This portable path reference prevents broken links when the plugin directory moves or is installed elsewhere.

How do I organize commands, agents, skills, and hooks in plugin development?

Organize commands, agents, skills, and hooks by following established patterns for directory layout and file naming conventions. This component organization prevents future refactoring needs and maintains plugin maintainability.

What is included in Claude Code plugin architecture?

Claude Code plugin architecture includes the conventional directory layout, plugin.json manifest configuration, auto-discovery mechanisms, portable path references using `${CLAUDE_PLUGIN_ROOT}`, and file naming conventions for components.

Do I need a manifest file to organize Claude Code plugin components?

Yes, configuring a manifest file is necessary to define metadata and component paths for your Claude Code plugin. The plugin.json manifest works with the directory structure to enable proper component auto-discovery.