doctor

doctor is a command for Claude Code from ArieGoldkin/claude-forge. It costs 17 tokens per session (4,757 once invoked), scanned B, original, MIT.

A command that checks the health of installed coding-agent add-ons, their hooks, builds, and configuration.

In plain words
What is it for?
Use it to inventory add-ons and diagnose problems in the add-on system.
Why use it?
It helps find missing files, unavailable add-ons, and setup problems instead of treating an installed entry as proof that everything works.

Command for Claude Code

Written for Claude Code: $CLAUDE_PLUGIN_DATA variable. Also seen: reads .claude/ paths; mentions CLAUDE.md; mentions Claude Code.

Part of the ctk plugin — 12 commands, 1 agent shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add commands/ariegoldkin/claude-forge/doctor
Clone the repo
git clone --depth 1 https://github.com/ArieGoldkin/claude-forge

Made for: Claude Code.

Or install ctk, the plugin that ships this one along with the rest of its 12 commands, 1 agent.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for doctor

README.md
[![agentmods](https://agentmods.dev/badge/commands/ariegoldkin/claude-forge/doctor.svg)](https://agentmods.dev/commands/ariegoldkin/claude-forge/doctor)
Your own site
<a href="https://agentmods.dev/commands/ariegoldkin/claude-forge/doctor"><img src="https://agentmods.dev/badge/commands/ariegoldkin/claude-forge/doctor.svg" alt="Measured on agentmods" height="20"></a>
Per session 17 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 4,757 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00017 $0.04757
Opus 5 $0.00009 $0.02379
Sonnet 5 $0.00003 $0.00951
Haiku 4.5 $0.00002 $0.00476

Measured 5d ago against content hash 0db8b845a427, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade B, and why

doctor scanned grade B with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Reads agent configuration directoriesmediumAgent snooping

.claude/, .codex/, .gemini/ hold keys, settings and other credentials a mod has no legitimate need for.

CACHE_DIR=$(find ~/.claude/plugins/cache -type d -name "$PLUGIN" | head -1)
plugins/continuity-toolkit/commands/doctor.md · 397 lines

How it starts

The opening of the file, as written. The whole thing — 397 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/doctor - Plugin System Diagnostics

Comprehensive health check across all installed claude-forge. Shows what's installed, what's working, and what needs attention.

Complements: /check-maintenance (continuity files) and /continuity-metrics (session state). This command covers the plugin system itself.

Execution Steps

Step 1: Detect Installed Plugins

On CC v2.1.163+ the native listing is the fastest inventory — but treat it as a claim, not a verdict. It renders from installed_plugins.json, so it prints ✔ enabled even when the plugin's files have been deleted. Always pair it with Step 1a.

claude plugin list --enabled || echo "native list unavailable (CC < 2.1.163)"

Fall back to scanning known plugin directories on older CC:

# Check marketplace cache for each plugin
PLUGINS=("ctk" "etk" "dtk" "atk" "ftk")

for PLUGIN in "${PLUGINS[@]}"; do
  # Check marketplace cache
  CACHE_DIR=$(find ~/.claude/plugins/cache -type d -name "$PLUGIN" | head -1)
  if [ -n "$CACHE_DIR" ]; then
    VERSION=$(grep -h '"version"' "$CACHE_DIR"/*/.claude-plugin/plugin.json | head -1)
    echo "INSTALLED: $PLUGIN ($VERSION)"
  else
    echo "NOT INSTALLED: $PLUGIN"
  fi
done

This glob matches every version folder ever installed, including stale ones left behind by earlier upgrades — which is why Step 1a is mandatory before trusting the result.

Also check for local dev plugins via --plugin-dir:

# Check if running from monorepo (local dev) — source dirs use the legacy long names
if [ -f "plugins/continuity-toolkit/.claude-plugin/plugin.json" ]; then
  echo "LOCAL DEV MODE: Running from monorepo"
fi

Step 1a: Verify Recorded Install Paths Resolve

The Step 1 glob matches any version folder, including stale ones; installed_plugins.json records one specific installPath per plugin. A DANGLING row means the two disagree.

Why this check exists, how to interpret a DANGLING row, and how to repair it live in the doctor skill's Step 1a (skills/doctor/SKILL.md) — the single source of truth. Read it before interpreting a DANGLING row; do not restate its reasoning here.

Read the full file on GitHub · 397 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 5d ago First seen · 397 lines · 17 tokens per session scan B 0db8b845a427

Subscribe to this mod's changes

doctor is a command published in the GitHub repository ArieGoldkin/claude-forge (6 stars, last pushed 28d ago), licensed MIT. It adds 17 tokens to every session and 4,757 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it B with 1 finding (reads agent configuration directories). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.