Validate a workbench plugin's structure, rules, hooks, and skills
Validate that a workbench plugin is structurally correct and ready to ship.
$ARGUMENTS — plugin name (e.g., rust, python, core). If omitted, test all plugins.Resolve target plugins. If a plugin name is given, validate only that one. Otherwise, read marketplace.json and validate every listed plugin.
For each plugin, run these checks:
plugins/<name>/.claude-plugin/plugin.json exists and is valid JSONplugin.json has required fields: name, description, version.claude-plugin/marketplace.jsonrules/<name>.mdhooks/ directory exists)hooks.json exists and is valid JSONhooks.json exists on disk+x or appropriate shebang)skills/ directory exists)SKILL.mdSKILL.md has valid YAML frontmatter with name and descriptionhookify.*.md files exist)name, enabled, event, pattern, actionpattern field compiles without errorPlugin: <name>
[PASS] plugin.json valid
[PASS] rules/<name>.md present (or [SKIP] no rules file)
[FAIL] hooks/guard.sh missing execute permission
...
Result: X/Y checks passed
All plugins valid. If any fail, list failures and exit with a clear summary.