| plugins.md | Creating or testing a plugin: --plugin-dir, /reload-plugins semantics, directory layout, converting standalone .claude/ config, marketplace submission |
| plugins-reference.md | Manifest schema questions, component locations and path rules, ${CLAUDE_PLUGIN_ROOT}/${CLAUDE_PLUGIN_DATA} contracts, plugin caching, version management, claude plugin CLI |
| plugin-marketplaces.md | Authoring or editing a marketplace.json, choosing plugin source forms, hosting or team-configuring marketplaces |
| skills.md | Authoring a SKILL.md: frontmatter fields, invocation control, command naming, substitutions, dynamic context injection, skill lifecycle, listing budget |
| skill-best-practices.md | Judging or improving skill quality: conciseness, descriptions, progressive disclosure, workflows, eval-first iteration, the pre-share checklist |
| subagents.md | Authoring an agent file: frontmatter fields, plugin-scope restrictions, model resolution, tool restriction, skill preloading, memory, forks |
| hooks.md | Hook system questions: events, matchers, handler types, exec vs shell form, exit codes, JSON output fields, async hooks |
| hook-events.md | A specific event's input/output schema or decision-control fields — per-event contracts for every hook event |
| mcp.md | Bundling or configuring MCP servers: .mcp.json shapes, plugin-scoped tool naming, tool search, OAuth, timeouts, _meta annotations |
| tools.md | Referencing a tool by name: the built-in tools table, permission-rule formats, per-tool behavior gotchas |
| env-vars.md | Environment-variable questions: plugin-relevant vars, precedence rules; the full catalog lives at the stamped URL |
| channels.md | Building a channel MCP server: capability declaration, notification format, reply tools, sender gating, permission relay |