dshbase

Plugin directory / Developer / dsh-plugin-clinic

dsh-plugin-clinic

Unverified ayahunter

✓ Actively maintained 2 contributors Builds on 6 official DSH packages

View on GitHub ↗ ← Back to plugin directory

1Stars
1Forks
0Open issues
Language
2026-08-16Last push
Cross-platformPlatform

What it does

Read-only health clinic for installed DeepSeek Harness plugins: loader health, dependency integrity, version compatibility, install-script risk, duplicates, and patch integrity — model tool + Web dashboard + JSON reports.

Our take
Unverified — not yet verified

Read-only health clinic for installed DeepSeek Harness plugins: loader health, dependency integrity, version compatibility, install-script risk, duplicates, and patch integrity — model tool + Web dashboard + JSON reports. Not yet verified — install and test it yourself.

“Unverified” means our automated CI has not yet installed this plugin. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

Plugin author? Get the “Verified” label — submit your own evidence (screenshots, logs, or a short demo) and we'll review and flip the badge.

Submit verification evidence ↗

README

dsh-plugin-clinic

Plugin Clinic — read-only health checks for the installed DeepSeek Harness plugin set.

中文 · Usage · Checks

DeepSeek Harness is "everything is a plugin", which spreads stability risk across a
freely-composable configuration layer — yet nothing tells you whether your installed set
is healthy. dsh-plugin-clinic closes that gap: it inspects every profile under the
Harness home and reports loader health, dependency integrity, version compatibility,
install-script risk, duplicates, and patch integrity, with no writes and no external
state.

Features

  • Model tool plugin_health — the agent can diagnose its own environment in-session
    and turn findings into concrete fix advice.
  • Web dashboard — a "体检" (Clinic) tab in Settings → Plugins, one entry per profile
    with severity-colored plugin cards.
  • JSON reports — a stable schemaVersion: 1 contract for CI and scripts.
  • 8 read-only checks — see docs/checks.md: load-health,
    bundle-manifest, peer-deps, runtime-compat, install-scripts, duplicate,
    patch-health, provenance.
  • One row install — a single npm bundle patch mounts both the Host engine and the
    browser dashboard.

Screenshots

The Clinic dashboard inside the official Web GUI — Settings → Plugins → 体检. Per-profile
plugin cards carry severity-colored status lines, expandable findings, and the summary bar
counts critical/warning/info findings across every profile:

Clinic dashboard in Settings → Plugins

Health summary bar

Install

# from npm (prebuilt lib/)
dsh plugin --profile web add dsh-plugin-clinic

# or straight from GitHub (sources; the prepare script builds them, pnpm asks you to
# allow the build once — see the official publish guide for the allowBuilds semantics)
dsh plugin --profile web add github:ayahunter/dsh-plugin-clinic

Restart the profile. The Settings → Plugins section gains a Clinic tab; the session gains
the plugin_health tool.

Update

# upgrades within the saved semver range (^0.1.0 → latest 0.1.x)
dsh plugin --profile web update dsh-plugin-clinic

Upgrades are never applied automatically; restart the profile afterwards.

Quick start

In any session on a profile where the plugin is installed:

体检一下我的插件

or call the tool directly with {"details": true} for per-finding evidence. In the Web
GUI, open Settings → Plugins → 体检 to see every profile's health at a glance.

Configuration

Edit the bundle row in the profile's cordis.patch.yml:

- id: clinic
  name: 'dsh-plugin-clinic'
  config:
    profiles: []            # profile directory names to diagnose; empty = all
    enableTool: true        # register the plugin_health tool
    enableWebRoute: true    # register /clinic HTTP routes when a webServer exists
    webRoutePrefix: '/clinic'
    includeHomePatches: true

HTTP endpoints

Endpoint Returns
GET /clinic/health full ClinicReport
GET /clinic/health/summary summary projection for the dashboard

Routes require a loopback Host header (DNS-rebinding defense, same spirit as the
official /api fence); they are not authentication.

Architecture

One npm package, two halves. The Host half owns a pure diagnostic engine
(src/engine/, no I/O, no ctx), the plugin_health tool, and the /clinic routes.
The browser half registers the Clinic tab into the official settings.plugins.tab
extension point and fetches the same report the tool returns. Design rationale is
documented in the repository's internal working docs (not shipped with the package).

Model Experience

Request context and condition

What the model sees

One tool schema: plugin_health with profiles, severity, and details parameters.
The tool is registered on ctx.tools like any model-facing tool, so its schema flows
into the system-prompt assembly of every agent in a profile that loads this plugin.

Token effect

Fixed at registration: one tool schema entry per agent. The execution result is a
ClinicReport JSON document whose size scales with the number of diagnosed plugins;
details: false (the default) returns counts only, keeping the model-visible payload
bounded regardless of how many plugins are installed.

KV Cache effect

The tool schema is part of the fixed prompt prefix and does not invalidate reuse.
The execution result is a per-turn tool result, not part of any later request prefix.

Known Limitations and Deferred Work

  • Diagnosis only, no fixes — v1 reports; repair is agent/user action. A dry-run fix
    proposal surface is planned for a later milestone.
  • No npm online checksdeprecated flags and update availability are v2 (configurable
    • cached); v1 is fully offline.
  • Current profile is not detectable — DSH exposes no API for the running profile name,
    so v1 diagnoses every profile (config can narrow the list). --profile extraction from
    argv is best-effort UI highlighting only, never authoritative.
  • Browser-first dashboard — the Clinic tab is verified against the official Web GUI;
    Electron desktop shells carry fetch over an IPC bridge and are not yet validated.
  • Loader-only plugins — entries not in a profile manifest have no package.json, so
    peer/runtime/script checks do not apply to them; only load-health and provenance do.
  • No source-level security scan — that is dsh-plugin-doctor's job; optional
    integration of its CLI is deferred to v2.
  • Report is a point-in-time snapshot — no cache, history, or subscription
    (intentionally; the same trade-off the official plugin inventory makes).

Documentation

License

MIT — see LICENSE.

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-plugin-clinic for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

Web profile:

dsh plugin --profile web add github:ayahunter/dsh-plugin-clinic

Headless (CLI) profile:

dsh plugin --profile headless add github:ayahunter/dsh-plugin-clinic

Test report

Not yet L3-verified — see failure note below if we already ran it.

Status: pending · last test 2026-08-26
Note: 验证: runtime-fail Browse all pending failures →
Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Developer

Browse all 7795 plugins →