Plugins
Package and distribute skills, agents, hooks, and MCP servers as reusable plugin bundles
What are Plugins?
Plugins are self-contained packages that bundle skills, agents, hooks, MCP configurations, and settings into a distributable unit. Share across your team or publish to the community marketplace.
Namespaced Skills
Skills are namespaced as /plugin-name:skill-name to avoid conflicts
Team Distribution
Share plugins via Git repos, registries, or the official marketplace
Event Hooks
Bundle hooks that respond to Claude Code lifecycle events
MCP & LSP Servers
Include MCP server configurations and LSP server support
Plugin Structure
my-plugin/ βββ .claude-plugin/ β βββ plugin.json # Required: Plugin manifest βββ commands/ # Optional: Slash commands β βββ review.md β βββ deploy.md βββ agents/ # Optional: Custom subagents β βββ code-reviewer/ β βββ agent.md βββ skills/ # Optional: Agent Skills (NEW) β βββ my-skill/ β βββ SKILL.md βββ hooks/ # Optional: Event handlers β βββ hooks.json βββ .mcp.json # Optional: MCP servers βββ .lsp.json # Optional: LSP servers (NEW)
1.claude-plugin/plugin.json β Plugin Manifest
Define name, version, description, author, homepage, repository, and license
2skills/ β Skill Files
SKILL.md files that are namespaced under the plugin name
3agents/ β Subagent Definitions
Markdown files defining specialized subagents
4hooks/ β Event Handlers
Hook scripts that respond to Claude Code events
Creating a Plugin
Plugin Manifest
Create .claude-plugin/plugin.json with name, description, version, author, homepage, repository, license
# commands/deploy.md Run tests, build, and deploy to production. Ensure all checks pass before deployment.
Testing Locally
Use --plugin-dir to load your plugin during development. Use /reload-plugins for hot reload.
{
"name": "team-workflows",
"version": "1.0.0",
"description": "Team deployment workflows",
"author": "Your Team"
}Plugin Distribution
Project-Level
Check into version control with your project
Team Registry
Share across your organization via Git or internal registry
Official Marketplace
Submit to the official marketplace at claude.ai/settings/plugins/submit
Plugin Marketplace CLI
claude plugins search <query>Search plugins
claude plugins install <name>Install plugin
claude plugins listList installed
claude plugins updateUpdate all
LSP Server Support
Plugins can bundle Language Server Protocol (LSP) servers via .lsp.json. Provides advanced language features, diagnostics, and IDE integration capabilities.
{
"servers": {
"typescript": {
"command": "typescript-language-server",
"args": ["--stdio"]
},
"python": {
"command": "pylsp"
}
}
}Auto-completion
Enhanced code suggestions
Diagnostics
Real-time error detection
Go to Definition
Navigate codebase easily
Plugin Use Cases
Team Workflows
- β’Standardized deployment procedures
- β’Code review templates and agents
- β’Documentation generation pipelines
Domain Experts
- β’Security audit specialists
- β’Database optimization agents
- β’API documentation generators
Best Practices
Document Thoroughly
Provide clear README files explaining what your plugin does and how to use it
Use Semantic Versioning
Follow semantic versioning (major.minor.patch) for compatibility management
Test with --plugin-dir
Use --plugin-dir flag to load and test plugins locally before distribution
Security First
Never include secrets in plugins. Use environment variables for sensitive data
Ready to Create Your First Plugin?
Package your skills, agents, hooks, and MCP configs into a distributable plugin.