From plugin-dev
Use when the user asks to "create a plugin", "scaffold a plugin", "understand plugin structure", "organize plugin components", "set up plugin.json", "configure plugin settings", "add LSP server", "configure language server", or needs guidance on plugin architecture, directory layout, manifest configuration, auto-discovery, or portable path references.
npx claudepluginhub karimstekelenburg/k3m-marketplace --plugin plugin-devThis skill uses the workspace's default tool permissions.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Guides implementation of event-driven hooks in Claude Code plugins using prompt-based validation and bash commands for PreToolUse, Stop, and session events.
Create, scaffold, and configure Claude Code plugins — directory layout, manifest, settings, LSP integration, and auto-discovery.
Before answering ANY question about Claude Code plugin capabilities, syntax, or configuration:
firecrawl map https://code.claude.com/docs/en/ to see all available pages (optionally add --search "<topic>" to narrow)firecrawl scrape <url> -f markdown -o .firecrawl/<topic>.md to get the full pageKey doc pages to search for: plugins, plugins-reference, claude-directory, settings, output-styles
A plugin is a directory with .claude-plugin/plugin.json at minimum:
plugin-name/
├── .claude-plugin/
│ └── plugin.json # Required: at minimum {"name": "plugin-name"}
├── commands/ # Slash commands (.md files) — auto-discovered
├── agents/ # Subagent definitions (.md files) — auto-discovered
├── skills/ # Skills (subdirectories with SKILL.md) — auto-discovered
├── hooks/
│ └── hooks.json # Event handler configuration
├── .mcp.json # MCP server definitions
├── .lsp.json # LSP server definitions
└── output-styles/ # Output style definitions (.md files)
Components are auto-discovered. Only declare paths in plugin.json to override defaults.
${CLAUDE_PLUGIN_ROOT} — resolves to the plugin's install directory at runtime. Use in hooks, MCP configs, and scripts.${CLAUDE_PLUGIN_DATA} — persistent plugin state directory that survives updates.${CLAUDE_CODE_PLUGIN_SEED_DIR} — original plugin source directory (for development).Plugins can store per-project configuration via .claude/<plugin-name>.local.md:
awk frontmatter extractionAdd .lsp.json at plugin root or lspServers in plugin.json. Key points:
restartOnCrash: true for reliabilityAlways fetch current docs before advising on LSP configuration.
.claude-plugin/plugin.json--plugin-dir /path/to/plugin (development override)/reload-plugins for hot reload during developmentclaude plugin validate .k3m- prefix../../.claude-plugin/marketplace.json./docs/file-roles-and-dependencies.md