Plugin Clinic

Paste a Claude Code plugin — will it load, what is off-convention, and the corrected fragments to paste back.

Back to SkillSafe
Or pick the whole plugin folder — the folder keeps each file’s path, which is how the prescan tells a command from an agent. Read locally; nothing uploads until you run.
Or pick individual files (a plain file picker cannot pass their folders on, so check the // file: paths afterwards).
Context — Claude Code version, what misbehaves, what is deliberate
How it works

Nothing to hand? Load the — a personal .claude/ folder on its way to becoming a plugin, with the manifest at the root, a snake_case name, a hooks.json still in the settings format, a prompt hook on an event that does not support one, a hardcoded home path and an agent whose description has no examples — or the , where the correct verdict is install-ready and the useful output is what to add next. Both replay for free.

1

Paste the plugin — the prescan is free

No upload, no AI: the prescan reads your files in the browser and lists what it mechanically found. First the inventory — manifest, commands, agents, skills, hooks, MCP servers and scripts — then the flags: a plugin.json outside .claude-plugin/ or component directories nested inside it, a name that is not kebab-case, custom paths that do not start with ./, a hooks.json using top-level event keys instead of the wrapper format, misspelled or invalid hook events, type: "prompt" on an event that does not support it, hardcoded /Users, /home, ~/ and C:\ paths where ${CLAUDE_PLUGIN_ROOT} belongs, agent frontmatter with no <example> blocks, commands that address the user instead of Claude, inline bash with no matching allowed-tools scope, skill descriptions in the wrong person, literal keys in .mcp.json, and hook scripts missing set -euo pipefail. Each group explains why it matters, and you can copy the whole prescan as a tickable Markdown list without running anything. This part costs nothing and happens while you type. Drop the plugin folder itself, or pick it with the folder button, so each file keeps its path — Claude Code decides what a file is from its directory, so a commands/ship.md pasted as plain ship.md skips the whole command checklist, and a manifest pasted as plain plugin.json looks misplaced when it is not. Anything that arrives without its folder is named for you rather than guessed at.

2

The AI reviews it — this is the metered part

A senior plugin engineer's pass: a load-readiness posture with the single most important change named, the component inventory with each piece's role, and prioritized findings across manifest, layout, commands, agents, skills, hooks, MCP, portability, security and hygiene — each with the problem, what Claude Code actually does because of it (fails to load, never triggers, breaks on the next machine), the fix, and a corrected JSON, YAML-frontmatter or bash fragment. In convert-config mode it also maps every personal-setup pattern to its plugin-portable equivalent. Every prescan flag is confirmed or explicitly set aside, and findings may only cite files and components that actually appear in your paste. Pricing is honest: a worst-case amount is reserved before the run and only what the run actually uses is charged — the meter next to the button shows both.

3

Fix, export, re-run

You are already in Claude Code with the plugin on disk, so the first export is the review as a prompt: paste it into that session and the agent works the findings against the real files, highest priority first, reconciling the items that touch the same file instead of applying them in sequence. Then the corrected fragments grouped by file under // file: markers — which paste back into the box above for a free re-prescan — the findings as GitHub PR review comments with ```suggestion fences, a tickable action checklist for the ticket, the findings table as CSV, and Markdown or JSON export of the whole review. Then start fixing: the prescan re-runs as you edit and the strip above the run button counts the flags you have cleared, the ones still open and any you have just introduced — against your first paste even before you have run a review, and against the review on screen afterwards. In the browser, for free, before you pay for a second review. Remember hooks load at session start, so restart Claude Code before you judge a hooks change. Reviews are saved to your SkillSafe account when you are signed in, so they follow you to another machine; restore puts the paste back in the form too when it was stored with the review.

Derived from the @anthropics/claude-code skill and its first-party plugin-dev guidance.