kun2-5code/dsh-plugin-installer
DeepSeek Harness (dsh) plugin: install/remove profile plugins straight from the web GUI (Settings → Plugins →
Puts an install/remove UI inside the DSH web GUI. The host half registers POST /dsh-plugin-installer/api on the web server — the same operation as dsh plugin --profile <name> add/remove, forwarding to pnpm inside the profile directory and reconciling the dsh.profile.bundles layer stack — while the client half contributes an Install tab (Settings → Plugins → 安装). The README documents no-restart "hot activation" (the installer rewrites the running tree's root-include patch list so new bundle rows apply transactionally), a disable/enable toggle for every non-built-in bundle via a marker-delimited managed block in the profile's cordis.patch.yml, and the deliberate rule that built-in @deepseek-ai/* bundles (the harness core and the GUI itself) cannot be disabled or removed. It also documents publishing paths (npm, tarball, git) and the fork/rename checklist.
Install
dsh plugin --profile web add /path/to/dsh-plugin-installerREADME quick start, local-directory form quoted verbatim: build the checkout first (a local-directory install does not run the prepare script), then dsh plugin --profile web add /path/to/dsh-plugin-installer. The README also documents a GitHub form with an owner placeholder — dsh plugin --profile web add github:you/dsh-plugin-installer — substitute your own fork. Note the README's caveat that a --patch overlay only loads the plugin's host half (module resolution cannot reach package-level declarations), so the browser-half Install tab needs the full profile install. The npm name dsh-plugin-installer resolves to 2.0.1 with no repository field (registry-verified 2026-09-12) — it is not evidenced as this project, so it is not claimed here.
Compatibility
DeepSeek Harness web profile with Node.js and pnpm on PATH. The README states the install route is loopback-only (the web server binds 127.0.0.1) and that running it executes pnpm on your machine — the same trust boundary as running dsh plugin add yourself.
Details
- Repo: kun2-5code/dsh-plugin-installer
- Category: Web UI Enhancements
- Stars: 0
- Version: Project package 0.1.0 (README publishing section, tarball example ./dsh-plugin-installer-0.1.0.tgz); no npm release is claimed by this repository
- Last push: 2026-08-15
- First seen: 2026-08-15
Recent updates
The README documents behaviour and invariants rather than a release history: hot-applied bundle rows are appended to the end of the running patch list (hand edits before a restart do not apply to them), the managed block in cordis.patch.yml writes { id, disabled: true/false } overrides, and the route is loopback-only. It also notes that after a restart the bundle-layer order takes over and id-targeted overrides work normally.
FAQ
- How do I install dsh-plugin-installer?
- From a local build: dsh plugin --profile web add /path/to/dsh-plugin-installer (build first — a local-directory install does not run prepare). The README also gives a GitHub form with an owner placeholder to substitute your fork.
- Do installs require a restart?
- No by default — the README documents hot activation that rewrites the running tree's root-include patch list. If you hand-edit cordis.patch.yml before a restart, those edits do not apply to hot-installed rows.
- Can I remove built-in plugins with it?
- No. The README states built-in @deepseek-ai/* bundles carry a built-in badge and are not open to disable or removal because they are not profile dependencies and removing them breaks the profile.
Alternatives
liustack/modlens · omdsh-dev/DSH-better-sidebar · ccch1mneyyy/dsh-TUI