From claude-plugins-validation
Validates Claude Code plugins for structural correctness, quality, and marketplace readiness. Use when validating, fixing, migrating, upgrading, or scaffolding a plugin. Loaded by plugin-validator, plugin-creator, plugin-fixer, plugin-diagnoser. Embeds canonical plugins-reference.md.
npx claudepluginhub emasoft/emasoft-plugins --plugin claude-plugins-validationThis skill is limited to using the following tools:
Before validating, fixing, migrating, upgrading, or scaffolding ANY directory, the agent MUST run [shape-detection](references/shape-detection.md) to verify the directory IS a plugin. If `.claude-plugin/plugin.json` is missing, the agent MUST refuse to scaffold a plugin around a SKILL.md / single agent / loose commands / unknown folder, and instead ABORT and ask the user whether to "wrap into a...
README.mdreferences/hook-validation.mdreferences/launcher-invocation.mdreferences/marketplace-validation.mdreferences/mcp-validation.mdreferences/official-docs-urls.mdreferences/pipeline-validation.mdreferences/plugin-structure.mdreferences/plugins-reference.mdreferences/pre-push-hook.pyreferences/security-validator-contract.mdreferences/shape-detection.mdreferences/skill-validation.mdreferences/skills-reference.mdreferences/troubleshooting-python-scripts.mdreferences/validation-checklist.mdreferences/validation-procedures.mdSuggests manual /compact at logical task boundaries in long Claude Code sessions and multi-phase tasks to avoid arbitrary auto-compaction losses.
Share bugs, ideas, or general feedback.
Before validating, fixing, migrating, upgrading, or scaffolding ANY directory, the agent MUST run shape-detection to verify the directory IS a plugin. If .claude-plugin/plugin.json is missing, the agent MUST refuse to scaffold a plugin around a SKILL.md / single agent / loose commands / unknown folder, and instead ABORT and ask the user whether to "wrap into a NEW plugin" or "ADD to an existing plugin". Hard refusal protocol + detection table in the reference.
The canonical plugin layout, manifest schema, env vars, caching rules, and CLI commands are EMBEDDED verbatim from the official doc at plugins-reference. Always read it BEFORE deciding any plugin shape question.
Validates Claude Code plugins against 190+ structural and quality rules covering manifests, hooks, skills, MCP servers, marketplace configs, and agents. Produces a severity-graded report with actionable fix guidance.
pyyaml, uv package manager.claude-plugin/plugin.json — see Phase 0)validate_plugin.py directly).
Why the launcher is mandatory · The one-liner (use this verbatim) · Full alias table · Direct invocation (development only)
--report to save details./cpv-fix-validation <report_path>).$MAIN_ROOT/reports/validate_plugin/<TS>-<slug>.md./cpv-semantic-validation.uv pip install ruff mypy or brew install shellcheck.... plugin ~/Code/my-plugin/ --report ... → PASS. CRITICAL=0 MAJOR=0... skill ./skills/my-skill/ --strict --report ... → PASS. Score 85/100Plugin components reference · Plugin installation scopes · Plugin manifest schema · Plugin caching and file resolution · Plugin directory structure · CLI commands reference · Debugging and development tools · Distribution and versioning reference · See also
Why this rule exists · Detection table — root-folder signals to verdict · Hard refusal protocol · Standard plugin layout · Path-variable rules — ${CLAUDE_PLUGIN_ROOT} vs ${CLAUDE_PLUGIN_DATA} · Custom-folder declarations in plugin.json · Common mis-classification patterns · Verifier: ten checks before marking as plugin
- Plugin Manifest Checklist · 2. Plugin Structure Checklist · 3. Hook Configuration Checklist · 4. Skill Validation Checklist · 5. MCP Server Checklist · 6. Marketplace Checklist · 7. Agent Checklist · 8. LSP Server Checklist · 9. Script and Code Quality Checklist · 10. Pre-Release Final Checklist · 11. Validation Commands
- Directory Structure · 2. Plugin Manifest (plugin.json) · 3. Component Placement Rules · 4. Path Variables · 5. Common Structure Errors · 6. Validation Checklist
- Hook Configuration File · 2. Valid Hook Events · 3. Matcher Syntax · 4. Hook Types · 5. Hook Input/Output Format · 6. Script Requirements · 7. Common Hook Errors · 8. Validation Checklist
Copy this checklist and track your progress:
.claude-plugin/plugin.json exists (else ABORT)--verbose --report