설치
npx -y @deepseek-ai/dsh plugin --profile web add github:Nico0713520/dsh-plugin-guardian이 설치 명령은 GitHub 저장소 주소에서 생성된 확인되지 않은 시작점입니다.
README
유지 관리자가 작성한 문서 스냅샷입니다.
dsh-plugin-guardian
Your DeepSeek Harness plugin's whole life — diagnose before you install, promote after you build.
5,905 plugins and counting. Some of them fight each other. Install a skin and another plugin silently breaks. Two plugins register the same tool name and the harness crashes at startup. Your agent writes a plugin in Creator mode and it vanishes on restart.
This plugin makes all of that visible — and fixable — before it bites you.
Why you need it
DeepSeek Harness is "everything is a plugin", and the ecosystem exploded to thousands of plugins within a week. But nobody is keeping watch:
| Pain | What actually happens | What guardian does |
|---|---|---|
| "I installed a skin and now X is broken" | Plugins silently collide | plugin_profile_scan finds tool-name collisions |
| Two plugins register the same tool | Harness crashes at startup (see Pi #7696) | Conflict detected before you ship |
| "Is this random npm plugin safe?" | No trust system exists | plugin_doctor checks it, with honest confidence tiers |
| "The plugin my agent just wrote is gone" | Creator-mode plugins live only in memory | plugin_promote promotes it to durable disk |
Four tools, one lifecycle
陌生/临时插件 → plugin_doctor 体检 → 通过门禁 → plugin_promote 转正 → 可信磁盘插件
│
plugin_profile_scan 扫已装集冲突
│
plugin_install 引导安装(先审计→再执行)
| Tool | What it does | Analogy |
|---|---|---|
plugin_doctor | Health-check a single plugin directory | 门诊 checkup |
plugin_profile_scan | Scan the installed set for cross-plugin conflicts | 体检 center |
plugin_promote | Turn an ephemeral plugin into a durable, versioned asset | 落户 registration |
plugin_install | Guided install: audit first, then execute | 一键安装 one-click install |
What makes it honest: three-tier confidence
Every finding is tagged with a confidence tier — borrowed from Pi's pi-extension-doctor:
| Tier | Meaning |
|---|---|
confirmed | Provable from the files we read (e.g. a missing field) |
inferred | A static pattern was seen — not proof of runtime behavior |
unknown | A boundary (remote spec, unreadable file) blocked a conclusion |
No fake precision. A static scan result is labeled "inferred", never "definitely a bug".
30-second start
dsh plugin --profile web add github:Nico0713520/dsh-plugin-guardian
# restart dsh web, then ask in a session:
plugin_doctor target="/path/to/my-plugin"
plugin_profile_scan
plugin_promote source="/path/to/my-plugin"
plugin_install spec="npm:some-plugin" # audit-only by default
plugin_install spec="npm:some-plugin" approve=true
Demo
plugin_doctor against a real DSH plugin:
DSH plugin doctor
target : /path/to/dsh-gh-cli
verdict: WARN (0 blocker · 1 warn · 3 info)
[info] confirmed — cordis patch file present
[warn] confirmed — Pre-release peer dependencies (9) → 建议锁版本
[info] inferred — Spawns subprocesses
[info] inferred — Detected 2 possible tool name(s): gh_cli_run, gh_auth_status
plugin_promote:
DSH plugin promote
status : PROMOTED
name : dsh-gh-cli@0.1.0
sha256 : 6cf15989…
install: dsh plugin --profile web add link:…/.guardian-plugins/dsh-gh-cli-6cf15989
Safety boundary
plugin_doctorandplugin_profile_scanare read-only. They never install packages, execute source, spawn subprocesses, hit the network, or write a file.plugin_promotewrites only to a managed staging directory ($DSH_HOME/.guardian-plugins) with a provenance marker (sha256 / promotedAt / source). It never touches your live profile unless you passregister=true.
Tools
| Tool | Parameters | Notes |
|---|---|---|
plugin_doctor | target (path or npm:/github: spec), format (text/json) | Three-tier confidence report |
plugin_profile_scan | profileDir (defaults to $DSH_HOME/profiles/web) | Finds tool-name collisions, dupes, version skew |
plugin_promote | source, register (default false), profile, outputDir | Doctor-gated, atomic, provenance-marked |
plugin_install | spec, approve (default false), profile | Audit-first guided install; approve=true runs dsh plugin add |
FAQ
Is this the same as dsh-plugin-check? — Overlapping but different. plugin-check does 33 read-only checks on a single plugin. guardian adds three things it doesn't: confidence tiers, cross-plugin conflict scanning, and promote (转正) — the last of which is entirely absent from the ecosystem.
Will plugin_promote modify my profile by surprise? — No. It defaults to register=false; it only stages the plugin and prints the exact dsh plugin add command. You opt in to registration explicitly.
What's the Pi reference? — Pi's pi-extension-doctor established the confirmed/inferred/unknown confidence model and a strict read-only boundary. guardian applies the same discipline to DSH's much larger, messier ecosystem.
Development
git clone https://github.com/Nico0713520/dsh-plugin-guardian.git
cd dsh-plugin-guardian
npm install --legacy-peer-deps
npm run typecheck
npm run test
npm run build
Requirements
- Node.js ≥ 20
- DeepSeek Harness (
@deepseek-ai/dsh, verified on0.1.0-rc.x)
Related
- Contributing
- Changelog
- DeepSeek Harness — the official repo
- dsh-plugin topic — discover more plugins
- pi-extension-doctor — the confidence model we borrow
License
MIT — see LICENSE.
프로젝트 파일 및 신호
표시된 항목은 디렉터리 스냅샷에서 감지된 공개 저장소 신호입니다.
저장소 정보
- 언어
- TypeScript
- 라이선스
- MIT
- 최신 릴리스
- v0.1.0
- 마지막 업데이트
- 2026. 8. 17. PM 5:12
신중하게 설치하기
소스 코드, 권한, 수명 주기 스크립트, 의존성 및 네트워크 접근을 검토하고 신뢰하지 않는 플러그인은 격리 환경에서 테스트하세요.