Check reference / Correctness & Structure
PLUGIN-01 Plugin manifest is valid
Deterministic — runs on every scan, no LLM or network needed.
Why it matters
An unparseable manifest (or one whose known fields have the wrong type — a string `keywords`, for example) is a load error: the plugin installs nothing, and the failure surfaces on the user's machine, not yours.
How to fix it
Make .claude-plugin/plugin.json valid JSON with a kebab-case `name`. Keep known fields to their documented types: `keywords` an array, `author` an object, `version` a semver string.
Example
✗ flagged
{ "name": "Deploy Tools!", "keywords": "deploy" }✓ passes
{ "name": "deploy-tools", "version": "1.2.0", "description": "...", "keywords": ["deploy"] }