For complete technical specifications and schemas, see Plugins reference. For marketplace management, see Plugin marketplaces.
Quickstart
Let’s create a simple greeting plugin to get you familiar with the plugin system. We’ll build a working plugin that adds a custom command, test it locally, and understand the core concepts.Prerequisites
- Claude Code installed on your machine
- Basic familiarity with command-line tools
Create your first plugin
1
Create the marketplace structure
2
Create the plugin directory
3
Create the plugin manifest
Create .claude-plugin/plugin.json
4
Add a custom command
Create commands/hello.md
5
Create the marketplace manifest
Create marketplace.json
6
Install and test your plugin
Start Claude Code from parent directory
Add the test marketplace
Install your plugin
Try your new command
/help
to see your new command listed.- Plugin manifest (
.claude-plugin/plugin.json
) - Describes your plugin’s metadata - Commands directory (
commands/
) - Contains your custom slash commands - Test marketplace - Allows you to test your plugin locally
Plugin structure overview
Your plugin follows this basic structure:- Commands: Create markdown files in
commands/
directory - Agents: Create agent definitions in
agents/
directory - Hooks: Create
hooks/hooks.json
for event handling - MCP servers: Create
.mcp.json
for external tool integration
Next steps: Ready to add more features? Jump to Develop more complex plugins to add agents, hooks, and MCP servers. For complete technical specifications of all plugin components, see Plugins reference.
Install and manage plugins
Learn how to discover, install, and manage plugins to extend your Claude Code capabilities.Prerequisites
- Claude Code installed and running
- Basic familiarity with command-line interfaces
Add marketplaces
Marketplaces are catalogs of available plugins. Add them to discover and install plugins:Add a marketplace
Browse available plugins
Install plugins
Via interactive menu (recommended for discovery)
Open the plugin management interface
Via direct commands (for quick installation)
Install a specific plugin
Enable a disabled plugin
Disable without uninstalling
Completely remove a plugin
Verify installation
After installing a plugin:- Check available commands: Run
/help
to see new commands - Test plugin features: Try the plugin’s commands and features
- Review plugin details: Use
/plugin
→ “Manage Plugins” to see what the plugin provides
Set up team plugin workflows
Configure plugins at the repository level to ensure consistent tooling across your team. When team members trust your repository folder, Claude Code automatically installs specified marketplaces and plugins. To set up team plugins:- Add marketplace and plugin configuration to your repository’s
.claude/settings.json
- Team members trust the repository folder
- Plugins install automatically for all team members
Develop more complex plugins
Once you’re comfortable with basic plugins, you can create more sophisticated extensions.Organize complex plugins
For plugins with many components, organize your directory structure by functionality. For complete directory layouts and organization patterns, see Plugin directory structure.Test your plugins locally
When developing plugins, use a local marketplace to test changes iteratively. This workflow builds on the quickstart pattern and works for plugins of any complexity.1
Set up your development structure
Organize your plugin and marketplace for testing:This creates:
Create directory structure
2
Create the marketplace manifest
Create marketplace.json
3
Install and test
Start Claude Code from parent directory
Add your development marketplace
Install your plugin
- Try your commands with
/command-name
- Check that agents appear in
/agents
- Verify hooks work as expected
4
Iterate on your plugin
After making changes to your plugin code:Repeat this cycle as you develop and refine your plugin.
Uninstall the current version
Reinstall to test changes
For multiple plugins: Organize plugins in subdirectories like
./plugins/plugin-name
and update your marketplace.json accordingly. See Plugin sources for organization patterns.Debug plugin issues
If your plugin isn’t working as expected:- Check the structure: Ensure your directories are at the plugin root, not inside
.claude-plugin/
- Test components individually: Check each command, agent, and hook separately
- Use validation and debugging tools: See Debugging and development tools for CLI commands and troubleshooting techniques
Share your plugins
When your plugin is ready to share:- Add documentation: Include a README.md with installation and usage instructions
- Version your plugin: Use semantic versioning in your
plugin.json
- Create or use a marketplace: Distribute through plugin marketplaces for easy installation
- Test with others: Have team members test the plugin before wider distribution
For complete technical specifications, debugging techniques, and distribution strategies, see Plugins reference.
Next steps
Now that you understand Claude Code’s plugin system, here are suggested paths for different goals:For plugin users
- Discover plugins: Browse community marketplaces for useful tools
- Team adoption: Set up repository-level plugins for your projects
- Marketplace management: Learn to manage multiple plugin sources
- Advanced usage: Explore plugin combinations and workflows
For plugin developers
- Create your first marketplace: Plugin marketplaces guide
- Advanced components: Dive deeper into specific plugin components:
- Slash commands - Command development details
- Subagents - Agent configuration and capabilities
- Hooks - Event handling and automation
- MCP - External tool integration
- Distribution strategies: Package and share your plugins effectively
- Community contribution: Consider contributing to community plugin collections
For team leads and administrators
- Repository configuration: Set up automatic plugin installation for team projects
- Plugin governance: Establish guidelines for plugin approval and security review
- Marketplace maintenance: Create and maintain organization-specific plugin catalogs
- Training and documentation: Help team members adopt plugin workflows effectively
See also
- Plugin marketplaces - Creating and managing plugin catalogs
- Slash commands - Understanding custom commands
- Subagents - Creating and using specialized agents
- Hooks - Automating workflows with event handlers
- MCP - Connecting to external tools and services
- Settings - Configuration options for plugins