Not in the top 1,000 by GitHub stars

agent-clinic/claude-md-doctor

Give your CLAUDE.md / AGENTS.md a checkup — audit size vitals, dead references, drifted claims, and backtest every rule against your own session history to see which rules get followed, ignored, or never used. A doctor-style report that cites its evidence.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

skills/claude-md-doctor/SKILL.md

Week of Nov 2, 2026 · Line counts unavailable

Before Not checked yet → After Local scripts

First observation → 749206557f24

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 749206557f24531865cd9761f013ce7ea42291c9

git clone --filter=blob:none --no-checkout https://github.com/agent-clinic/claude-md-doctor.git .hotskills/agent-clinic-claude-md-doctor && git -C .hotskills/agent-clinic-claude-md-doctor checkout --detach 749206557f24531865cd9761f013ce7ea42291c9 # Copy each selected skill directory from .hotskills/agent-clinic-claude-md-doctor into .claude/skills/<skill-name>/
41GitHub stars
0stars in 7 days
1skill in this repository
0commits in 30 days

Heat

0.3
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Oct 27, 202641

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

claude-md-doctor

When your agent uses it

Give this repo's CLAUDE.md / AGENTS.md a checkup — size vitals vs official guidance, dead references, dead commands, stale claims — then backtest every rule against the repo's own Claude Code session history to see which rules were actually followed, ignored, or never used, and produce a doctor-style HTML report with evidence-cited prescriptions. Use when asked to check, diagnose, audit, review, improve, optimize, lint, grade, fix, clean up, shorten, or "doctor" CLAUDE.md, AGENTS.md, or agent instruction/memory files, or to find out whether CLAUDE.md rules actually work. Also use when a repo has NO memory file and the user wants one — "write/generate/suggest a CLAUDE.md (or hooks) from my sessions" — the skill mines the repo's real session history and drafts a proposed file with receipts.

What it loads into context

Frontmatter

208 tokens

Always available to the agent

SKILL.md

6,176 tokens

When the skill is activated

Reference documents

0 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Stage 0 — preflight
  2. Stage 1 — intake
  3. Stage 2 — vitals
  4. Stage 3 — records check
  5. Stage 4 — history backtest
  6. Stage 5 — diagnosis (your judgment, written to a file)
  7. Stage 6 — report
  8. Mode B — the chart-less patient (no memory file? mine one)
  9. Conduct

Scripts executed separately

  • scripts/_common.py
  • scripts/backtest.py
  • scripts/card.py
  • scripts/compile.py
  • scripts/generate.py
  • scripts/intake.py
  • scripts/mine.py
  • scripts/refcheck.py
  • scripts/report.py
  • scripts/sessions.py
  • scripts/vitals.py

Files

  • ../../.claude-plugin/marketplace.jsonasset655 bytes
  • ../../.claude-plugin/plugin.jsonasset834 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • SKILL.mdcore25,312 bytes
  • scripts/_common.pyruns4,536 bytes
  • scripts/backtest.pyruns18,355 bytes
  • scripts/card.pyruns13,456 bytes
  • scripts/compile.pyruns8,948 bytes
  • scripts/generate.pyruns7,488 bytes
  • scripts/intake.pyruns12,405 bytes
  • scripts/mine.pyruns20,461 bytes
  • scripts/refcheck.pyruns10,634 bytes
  • scripts/report.pyruns38,185 bytes
  • scripts/sessions.pyruns8,821 bytes
  • scripts/vitals.pyruns6,716 bytes
  • templates/report.htmlasset10,203 bytes
Read SKILL.md

# CLAUDE.md Doctor — exam procedure

You are running a checkup on this repository's agent-instruction files. The
deterministic work lives in scripts; your job is the judgment between them.
Do not re-derive what a script already measured, and do not skip a stage — the
report verifies the work-state manifest and will disclose skipped stages.

Definitions used below:
- `SCRIPTS` = `${CLAUDE_SKILL_DIR}/scripts` — Claude Code substitutes
  `${CLAUDE_SKILL_DIR}` with this skill's own directory at run time, so the
  scripts resolve no matter the working directory or how the skill was
  installed. Use it literally; do not try to locate the skill yourself.
- `REPO` = the repository to examine (the argument if one was given, else the
  current working directory).
View the complete source on GitHub

Skills included

  • claude-md-doctor

Repository facts

License
MIT
Created
Aug 25, 2026
Last pushed
Aug 30, 2026
Forks
2
Open issues
0
Project activity
Slowing

Before you install

Local scripts

Automated signals, not a guarantee

Checked Nov 6, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 23 notes
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • skills/claude-md-doctor/SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
Show all 51 signals by file

.claude-plugin/plugin.json

  • Network accessline 6
    "name": "Tristan Chen"   },   "homepage": "https://github.com/agent-clinic/claude-md-doctor",
  • Network accessline 7
    },   "homepage": "https://github.com/agent-clinic/claude-md-doctor",   "license": "MIT",
  • Network accessline 8
    "homepage": "https://github.com/agent-clinic/claude-md-doctor",

skills/claude-md-doctor/scripts/_common.py

  • Executable scriptline 1
    Executable file

skills/claude-md-doctor/scripts/backtest.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/scripts/card.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 133
    return """<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 418">
  • Network accessline 160
    label, value = "CLAUDE.md checkup", "grade %s" % grade     lw, vw = 10 + len(label) * 7, 10 + len(value) * 7     return """<svg xmlns="http://www.w3.org/2000/svg" width="%d" height="20" role="img" aria-label="%s: %s">
  • Network accessline 161
    lw, vw = 10 + len(label) * 7, 10 + len(value) * 7     return """<svg xmlns="http://www.w3.org/2000/svg" width="%d" height="20" role="img" aria-label="%s: %s"> <clipPath id="r"><rect width="%d" height="20" rx="3"/></clipPath>
  • Network accessline 162
    return """<svg xmlns="http://www.w3.org/2000/svg" width="%d" height="20" role="img" aria-label="%s: %s">
  • Network accessline 275
    print("badge: %s" % badge_path)     print("badge snippet: [![CLAUDE.md health](%s)]"           "(https://github.com/agent-clinic/claude-md-doctor)"
  • Network accessline 276
    print("badge snippet: [![CLAUDE.md health](%s)]"           "(https://github.com/agent-clinic/claude-md-doctor)"           % os.path.basename(badge_path))
  • Network accessline 277
    "(https://github.com/agent-clinic/claude-md-doctor)"

skills/claude-md-doctor/scripts/compile.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/scripts/generate.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/scripts/intake.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/scripts/mine.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/scripts/refcheck.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 27
    [Credential-related source omitted]

skills/claude-md-doctor/scripts/report.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 47
    CITATIONS = {     "official-200": ("Claude Code memory doc — “Size: target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence.”", "https://code.claude.com/docs/en/memory"),
  • Network accessline 48
    "official-200": ("Claude Code memory doc — “Size: target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence.”", "https://code.claude.com/docs/en/memory"),
  • Network accessline 49
    "official-best-practices": ("Claude Code best practices — deletion test; “Bloated CLAUDE.md files cause Claude to ignore your actual instructions!”; sparse emphasis.", "https://code.claude.com/docs/en/best-practices"),
  • Network accessline 50
    "official-hooks": ("Claude Code memory doc — CLAUDE.md is “context, not enforced configuration”; use a PreToolUse hook to block an action regardless.", "https://code.claude.com/docs/en/memory"),
  • Network accessline 51
    "official-4mib": ("Claude Code memory doc — a CLAUDE.md over 4 MiB is skipped entirely.", "https://code.claude.com/docs/en/memory"),
  • Network accessline 52
    "official-40k": ("Claude Code troubleshooting — startup warning at 40,000 characters of memory content.", "https://code.claude.com/docs/en/troubleshooting"),
  • Network accessline 53
    "eth": ("Gloaguen et al. (ETH Zurich), “Evaluating AGENTS.md” (v2): context files cost +20–23% inference with no significant success change; agents measurably comply with explicit directives; “describe only minimal requirements.”", "https:/
  • Network accessline 54
    "mcmillan": ("McMillan, factorial study of 1,650 Claude Code sessions: no detectable structural effect of file size/position/contradictions in tested range; within-session adherence decay ≈ 5.6%/function.", "https://arxiv.org/abs/2605.10039
  • Network accessline 55
    "ifscale": ("IFScale: adherence 98.4% at 100 instructions → 84.8% at 250 → 68.9% at 500; errors shift to silent omission.", "https://arxiv.org/abs/2507.11538"),
  • Network accessline 56
    "agentif": ("AGENTIF (NeurIPS 2025): best model satisfies all constraints of an agentic instruction 27.2% of the time; ≈0 past 6,000 words.", "https://arxiv.org/abs/2505.16944"),
  • Network accessline 57
    "sysbench": ("SysBench: system-message constraint adherence decays ≈12.8pp/turn over 5 turns (GPT-4o).", "https://arxiv.org/abs/2408.10943"),
  • Network accessline 58
    "levy": ("Levy, Jacoby & Goldberg (ACL 2024): accuracy 0.92 → 0.68 with 3,000 tokens of padding; degradation starts ≈500 tokens.", "https://arxiv.org/abs/2402.14848"),
  • Network accessline 59
    "chroma": ("Chroma “Context Rot”: 18 models degrade with input length even on trivial tasks; focused ~300-token prompts beat 113k-token contexts.", "https://www.trychroma.com/research/context-rot"),
  • Network accessline 60
    "longllmlingua": ("LongLLMLingua (ACL 2024): +21.4% at ~4× prompt compression — cutting filler can raise performance.", "https://arxiv.org/abs/2310.06839"),
  • Network accessline 61
    "caps": ("Dillitzer et al., “Attention is Case-Sensitive”: uppercase shifts +1.85pp accuracy; near-zero on reasoning models; saturation spends the effect.", "https://arxiv.org/abs/2608.03711"),
  • Network accessline 62
    "sigil": ("SIGIL: prose agents perform 56% of the steps their own skill mandates while outputs still pass checks; script-compiled harnesses reach 86%.", "https://arxiv.org/abs/2607.27309"),
  • Network accessline 63
    "trace": ("TRACE: with memory alone, 57.5% of applicable user-preference checks are still violated; compiling corrections into runtime checks cuts violations from 100% to 2–38%.", "https://arxiv.org/abs/2606.13174"),
  • Network accessline 64
    "harness-if": ("Harness-IF: models comply 3.6–7.4pp worse on rules that oppose their unprompted defaults — high compliance on a with-prior rule may be coincidence, not obedience; skill/tool descriptions rank below project files in precedenc
  • Network accessline 65
    "iheval": ("IHEval (NAACL 2025): when instructions conflict, all models drop sharply — the best open-source model resolves conflicts at only 48%. Contradictory rules measurably degrade compliance, and the winner is not reliably the rule you
  • Network accessline 66
    "hierarchy": ("OpenAI Instruction Hierarchy: models are trained to prioritize privileged instructions — a project-file rule that fights trained-in behavior starts at a disadvantage; some rules need hooks because the prior will win.", "https
  • Network accessline 67
    "specbench": ("SpecBench: agents saturate visible checks while holdout gaps grow ~28pp per 10× code size — a check the agent can see may be satisfied without honoring the rule.", "https://arxiv.org/abs/2605.21384"),
  • Network accessline 68
    "agent-readmes": ("“Agent READMEs” (2,303 context files): tests 75.9% / implementation 70.8% / architecture 68.1%; security & performance nearly absent; files accrete without pruning.", "https://arxiv.org/abs/2511.12884"),
  • Network accessline 69
    "cursor-rules": ("Jiang & Nam (MSR 2026), 401 repos: five-theme content taxonomy; ~28.7% duplicated lines across a repo's rules files.", "https://arxiv.org/abs/2512.18925"),
  • Network accessline 70
    "awm": ("Agent Workflow Memory: induced, selectively-loaded workflows +51.1% relative on WebArena — recurring procedures belong in on-demand skills.", "https://arxiv.org/abs/2409.07429"),
  • Network accessline 71
    "unblocked": ("Unblocked, “Audit a bloated CLAUDE.md in 7 steps” — the manual audit this tool automates.", "https://getunblocked.com/blog/audit-fix-bloated-claude-md/"),
  • Network accessline 72
    "surface-bloat": ("“Too Many CLAUDE.md and Skill Files?” — aggregate memory surfaces fail silently (60 files ≈ 64k standing tokens); fixes: consolidate → thin router/index → one-screen invariants + on-demand procedures.", "https://xtrace.ai

skills/claude-md-doctor/scripts/sessions.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/scripts/vitals.py

  • Executable scriptline 1
    #!/usr/bin/env python3

skills/claude-md-doctor/templates/report.html

  • Network accessline 5
    <meta name="viewport" content="width=device-width, initial-scale=1"> <title>CLAUDE.md checkup — {{REPO_NAME}}</title> <link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Crect x='4' y=
  • Network accessline 6
    <title>CLAUDE.md checkup — {{REPO_NAME}}</title> <link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Crect x='4' y='1' width='4' height='10' fill='%23c0492f'/%3E%3Crect x='1' y='4' wid
  • Network accessline 7
    <link rel="icon" href="data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Crect x='4' y='1' width='4' height='10' fill='%23c0492f'/%3E%3Crect x='1' y='4' width='10' height='4' fill='%23c0492f'/%3E%3C/svg%3E

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 5 facts
Signal confidence: 45 facts

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeManifest .claude-plugin/marketplace.json.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md skills/claude-md-doctor/SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md skills/claude-md-doctor/SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md skills/claude-md-doctor/SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md skills/claude-md-doctor/SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md skills/claude-md-doctor/SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.