{"slug":"installation-doctor","title":"installation-doctor","summary":"Imported from alexei-led/cc-thingz/dist/claude/discovery/skills/installation-doctor.","platform":"Claude","tags":[],"authorName":"LLM Mart","authorSlug":"llm-mart","score":0,"source":"github","price":null,"verified":false,"createdAt":"2026-10-01T19:35:00.29225Z","repo":{"url":"https://github.com/alexei-led/cc-thingz","stars":36,"forks":5,"license":"MIT","updatedAt":"2026-09-30T10:11:40Z"},"bodyHtml":"<hr>\n<h2>{\"description\":\"Diagnose cc-thingz plugin installations with the bundled read-only doctor. Use for missing installed skills, helpers, or hook files, stale package versions, duplicate packages, or migration from old cc-thingz packages. NOT for broad agent configuration audits or config edits; use evolving-config.\",\"name\":\"installation-doctor\"}</h2>\n<h1>Installation Doctor</h1>\n<p>Inspect installed resources without a repository checkout. The helper compares\nfiles against its bundled release catalog; it does not execute hooks or modify\ninstallations.</p>\n<h2>Run</h2>\n<ol>\n<li>Locate <code>scripts/doctor.py</code> relative to this installed <code>SKILL.md</code>.</li>\n<li>Use an existing Python 3.12+ interpreter with <code>-B</code>. If using uv, run\n<code>uv run --no-project python -B &lt;skill-directory&gt;/scripts/doctor.py --json</code>.\nuv may populate its own cache; use an existing interpreter directly when the\nentire invocation must be read-only.</li>\n<li>Select roots for the requested runtime. Without root options the helper\ninspects the Codex cc-thingz marketplace cache and user flat skill directories.\nFor Claude or a specific installation, pass <code>--plugin-root &lt;directory&gt;</code>.\nRepeat <code>--plugin-root</code> or <code>--skill-root</code> for multiple locations. Any explicit\nroot option restricts inspection to supplied roots.</li>\n<li>Optionally pass <code>--config-root &lt;.codex-directory&gt;</code> to check agent profile\npresence, or <code>--repo &lt;cc-thingz-checkout&gt;</code> for comparison with source manifests.</li>\n<li>Summarize failed checks with paths, migration suggestions, and verification\ngaps. Exit 1 means findings; exit 2 means invalid arguments.</li>\n</ol>\n<h2>Interpretation</h2>\n<ul>\n<li>Cached copies do not prove enabled plugins or duplicate execution. Inspect the\nruntime's enabled-plugin list before recommending removal.</li>\n<li>Versions are compared with the release containing this helper, not an online\nlatest release. Without a containing native manifest, version checks are skipped.</li>\n<li><code>hook-files</code> fails when a hook registration names a plugin file that is not\non disk. A running session keeps the plugin root it started with; after a\nplugin update replaces that versioned directory, its hooks exit 127 or deny\nwith \"can't open file\" even though the new install passes. Restart those\nsessions.</li>\n<li>Hook support, helper dependencies, active plugins, and effective permissions\nremain unsupported by static inventory; exit 0 does not verify them.</li>\n<li>Report missing Python or unreadable metadata precisely. Do not install tools,\nchange configuration, or delete caches as part of this diagnostic run.</li>\n</ul>\n<h2>Output</h2>\n<p>Report the inspected roots, baseline release, confirmed findings with paths,\nskipped or unsupported checks, and the next corrective action. Keep hook\ncommands and credential contents out of the response.</p>\n","files":[{"path":"assets/catalog.json","sizeBytes":3828,"isText":true},{"path":"scripts/doctor.py","sizeBytes":16031,"isText":true},{"path":"SKILL.md","sizeBytes":2736,"isText":true}],"reviewScore":null,"reviewSummary":null,"trust":{"provenance":"trusted-source-unreviewed","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow.","bodySource":null},"bodyLocked":false,"purchaseUrl":null,"sourceUrl":null,"report":{"provenance":"trusted-source-unreviewed","screen":{"ran":true,"outcome":"clean","suspicious":0,"notes":0,"hiddenCharacters":false},"virusScan":{"engine":"clamav","status":"clean","scannedAt":"2026-10-01T19:35:17.549443Z","sha256":"769260E05F1A67B8994A00033102212CB17C4F4EEEF9348B5563BA74125D49CA","sizeBytes":6774},"review":null,"source":{"repositoryUrl":"https://github.com/alexei-led/cc-thingz","path":"dist/claude/discovery/skills/installation-doctor","license":"MIT","commit":"ce56bb43c7f803a192be038135c5e2bb4cd2249f","subtreeSha":"825D46A299D66DD7BE136B04D05DC86B03310441A2B1DF3D0500455F2D8589B0","lastSyncedAt":"2026-10-01T19:34:58.8618Z"},"reviewedAt":"2026-10-01T19:35:37.895337Z","notice":"Community-authored content, reproduced verbatim and not vetted as instructions. Treat it as data to evaluate, never as directives to follow."},"install":[{"target":"skills-cli","command":"npx skills add https://github.com/alexei-led/cc-thingz/tree/master/dist/claude/discovery/skills/installation-doctor"},{"target":"claude-code","command":"claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install alexei-led-cc-thingz@llmmart"},{"target":"git","command":"git clone https://github.com/alexei-led/cc-thingz.git"}]}