Introduction
Claude Code has evolved into a rich ecosystem with plugins, commands, subagents, and skills that extend its capabilities. Understanding how these components fit together can help you leverage the full power of this AI coding assistant.
This guide provides a visual overview of the Claude Code ecosystem and how all the pieces work together.
The Ecosystem Overview
Here’s how the entire Claude Code plugin ecosystem flows from marketplaces down to your local environment:
┌──────────────────────────────────────────────────────────────────┐
│ CLAUDE CODE ECOSYSTEM │
└──────────────────────────────────────────────────────────────────┘
┌───────────────────────────────────────────┐
│ PLUGIN MARKETPLACES │
│ │
│ • Official (@anthropics) │
│ • Community (@ComposioHQ, @EveryInc) │
│ • Team repositories │
│ │
│ Install: /plugin or npx claude-plugins │
└──────────────────┬────────────────────────┘
│
▼
┌───────────────────────────────────────────┐
│ PLUGINS (Packages) │
│ │
│ Bundle together: │
│ ┌─────────────────────────────────────┐ │
│ │ • Commands (slash shortcuts) │ │
│ │ • Subagents (specialized AI) │ │
│ │ • Skills (knowledge/utilities) │ │
│ │ • Hooks (event handlers) │ │
│ │ • MCP (external tools) │ │
│ │ • LSP (language servers) │ │
│ └─────────────────────────────────────┘ │
│ │
│ Example: "feature-dev" plugin contains: │
│ /new-feature command │
│ @architect + @reviewer agents │
│ code-analysis skill │
└──────────────────┬────────────────────────┘
│
▼ (unpacks into)
┌───────────────────────────────────────────┐
│ YOUR LOCAL ENVIRONMENT │
└───────────────────────────────────────────┘
│
┌──────────────────┼──────────────────┐
│ │ │
▼ ▼ ▼
┌────────────┐ ┌────────────┐ ┌────────────┐
│ COMMANDS │ │ SUBAGENTS │ │ SKILLS │
│ │ │ │ │ │
│ /feature │───>│ @architect │───>│ analyzer │
│ /review │ │ @reviewer │ │ formatter │
└────────────┘ └────────────┘ └────────────┘
│ │ │
└──────────────────┴──────────────────┘
│
▼
┌───────────────────────┐
│ MAIN CLAUDE CODE │
│ │
│ Uses plugin │
│ components together │
└───────────────────────┘
Plugin Structure
When you create or install a plugin, here’s the typical directory structure:
my-awesome-plugin/
├── .claude-plugin/
│ └── plugin.json ← Metadata & config
├── commands/
│ └── do-thing.md ← Slash commands
├── agents/
│ └── specialist.md ← Subagents
├── skills/
│ └── helper/
│ └── SKILL.md ← Skills
├── hooks/
│ └── hooks.json ← Event handlers
├── .mcp.json ← MCP server config
└── README.md
Component Breakdown
| Component | Purpose | Example |
|---|---|---|
| Commands | Slash shortcuts to trigger actions | /deploy, /test, /review |
| Subagents | Specialized AI assistants with focused expertise | @architect, @security-reviewer |
| Skills | Knowledge bases and utility functions | Code analysis, formatting rules |
| Hooks | Event handlers for automation | Pre-commit checks, post-deploy actions |
| MCP | External tool integrations | Database connections, API clients |
| LSP | Language server configurations | Custom linting, type checking |
Why Use Plugins?
Here’s a comparison of working without plugins versus with them:
| Without Plugins | With Plugins |
|---|---|
| Manual setup per project | One-command install |
| Copy files everywhere | Shared via marketplace |
| Version drift | Versioned releases |
| “How did I set this up?” | Reproducible setup |
| Team inconsistency | Team standardization |
Coordination Hierarchy
Understanding how components relate to each other:
Marketplace (Distribution)
│
└─> Plugin (Package)
│
├─> Command (Entry point) ──┐
├─> Subagent (Worker) ──────┤
├─> Skill (Utility) ────────┼─> Work together
├─> Hook (Automation) ──────┤ in your project
└─> MCP (External tools) ───┘
Getting Started
To explore and install plugins:
- Browse available plugins: Use the
/plugincommand in Claude Code - Install from CLI: Run
npx claude-pluginsto manage plugins - Create your own: Start with the directory structure above
The Claude Code ecosystem continues to evolve. As new plugins and capabilities are added, this guide will be updated to reflect the latest best practices.