Skip to main content

Doctor

Plugin Doctor

Check whether your installed Claude Code plugins are working and what they cost in context.

Run in your project folder
$
npx claudepluginhub doctor
Detailed HTML reportRequires 0.12+
$
npx claudepluginhub doctor --open

Doctor scans your local Claude Code plugins offline. Nothing is uploaded. Use --json for machine-readable output or --verbose for full inventory details.

Example output

Example verdict

No broken plugins found.

Always-on context: ~570 tokens across 2 plugins

formatter ~420 tok

db-tools ~150 tok

What Doctor checks

Install integrity

Missing, unreadable, or ambiguous plugin installations and duplicate records.

Manifests

Invalid JSON, invalid names, wrong field types, and declared-but-missing component paths.

Prerequisites

MCP/LSP executables not found on PATH and bin files without an executable bit.

Hooks

Broad, unconditional command hooks that would run on every matching tool event.

Dependencies

Declared plugin dependencies that are missing, disabled, or unverifiable.

Context size

Estimated always-on token cost per project context, with an incomplete-scan lower-bound signal.

What Doctor does not claim

  • Does not execute plugin code, hooks, MCP/LSP servers, or binaries.
  • Does not prove a plugin is safe — structural checks only.
  • Context estimates are heuristic (~4 characters per token); claude plugin details is authoritative.
  • When multiple enabled records exist for one plugin, Doctor can collapse scan-equivalent records but cannot choose between copies that materially differ or have incomplete scans.
  • MCP/LSP prerequisite checks use PATH at Doctor’s runtime, not the plugin’s.

Local, read-only, no account

Doctor is completely offline: it reads claude plugin list --jsonplus files inside each plugin’s install directory. Nothing is executed, nothing is modified, and nothing is sent anywhere. Reports contain no absolute paths, file contents, or secrets.