MIT-licensed dsh plugin that turns DeepSeek Harness's Web UI into a plugin control center: list, live enable/disable, install/uninstall, update (self-update included), health checks and marketplace, for both bundle and non-bundle plugins. Recommended to install first, so every later plugin install passes through its quality gate.
DSH integration
Native runtime
Author-claimed
Safety audit
Unaudited
Last verified
2026-08-28
License
MIT
01What can it help you accomplish?
Manage installed DSH plugins from the Web UI (view, live enable/disable, install/uninstall, update detection)
A "Plugin Manager" tab under Settings plus "Skills & Presets" and "Marketplace" top-level menus; all installed plugins listed with one-click update, including the manager itself
DeepSeek Harness (dsh) users who want to manage plugins from the Web UI instead of the command line
Run health checks and dependency analysis on installed plugins
Full-chain dependency scan on install, bundle patch line validation and install-time rollback; post-install dependency-graph / conflict / circular / peer-compatibility analysis
DSH users who want to avoid plugins that "install but fail to boot" and profiles that fail to start
02How to install into DeepSeek Harness
Prerequisites
- A DeepSeek Harness (dsh) install with a target profile — every command takes `--profile <name>`, and the Web UI changes appear only after restarting the profile
- For the build-from-source path: Node.js / pnpm, then `cd /path/to/dsh-web-plugin-manager && pnpm install && pnpm run build`
Installation steps
- 01
Recommended — install from npm (make sure to include @latest): `dsh plugin --profile <name> add dsh-web-plugin-manager@latest`
$ dsh plugin --profile <name> add dsh-web-plugin-manager@latest
- 02
Alternative — build from source: `cd /path/to/dsh-web-plugin-manager`, `pnpm install && pnpm run build`, then `dsh plugin --profile <name> add .`
$ dsh plugin --profile <name> add .
- 03
Restart the profile: the Web UI's Settings now has a "Plugin Manager" tab, plus "Skills & Presets" and "Marketplace" top-level menus.
Verify the integration
- Restart the profile — Settings gains a "Plugin Manager" tab and the "Skills & Presets" / "Marketplace" top-level menus appear in the Web UI.
Rollback
- Install-time rollback: the quality gate performs a full-chain dependency scan + bundle patch line validation and rolls back immediately on install failure.
- Update rollback: if an update fails, the manager automatically reinstalls the previous version.
03DSH integration and capability boundaries
Native dsh plugin installed into a profile via the official `dsh plugin` CLI (`--profile <name>`); adds plugin management to the Web UI — view, live enable/disable, install/uninstall, update detection, health checks, environment management and a plugin marketplace
Web UI plugin manager
a DSH profile (after restart)→a "Plugin Manager" tab under Settings plus "Skills & Presets" and "Marketplace" top-level menus in the Web UI
Check updates & one-click update (self-update included)
all installed plugins, including the manager itself→"Check updates" lists every installed plugin; click "Update" on a card when a newer version exists — the manager can update itself in one click
the profile must be restarted after an update for the change to take effectQuality gate & health checks
a new plugin install or the already-installed plugin set→full-chain dependency scan on install, bundle patch line validation and install-time rollback; dependency-graph / conflict / circular / peer-compatibility analysis after install
every later plugin install goes through the checks once the manager is installed firstdshpm update CLI
an installed plugin in a profile→`dshpm update dsh-web-plugin-manager --profile NAME` upgrades to the latest version (rewrites the specifier, quality gate + automatic rollback to the old version on failure)
04Who is it for? When not to use it?
Good for
- DeepSeek Harness (dsh) users who want to manage plugins from the Web UI instead of the command line
- DSH users who want to avoid plugins that "install but fail to boot" and profiles that fail to start
Not for
- add without a version does not upgrade: if the profile already declares an old version (e.g. `^0.1.2`), `dsh plugin add` (i.e. `pnpm add`) keeps the original specifier and `dsh plugin update` (i.e. `pnpm update`) only re-resolves within the declared range — cross-version upgrades must use `add ...@latest` or `dshpm update`.
- Changes take effect only after the profile restarts; if unverified plugins already prevent a profile from starting, troubleshoot with `dsh --profile <name> --patch <empty.yml>` or manually clean the relevant dependency / `cordis.patch.yml` lines before installing the manager.
05Compatibility, maintenance and safety notes
- add without a version does not upgrade: if the profile already declares an old version (e.g. `^0.1.2`), `dsh plugin add` (i.e. `pnpm add`) keeps the original specifier and `dsh plugin update` (i.e. `pnpm update`) only re-resolves within the declared range — cross-version upgrades must use `add ...@latest` or `dshpm update`.
- If @latest resolves to an old version, check `pnpm config get registry` for a mirror source (npmmirror dist-tag lag + pnpm metadata cache), then force the official source with `pnpm add dsh-web-plugin-manager@latest --registry=https://registry.npmjs.org`; an explicit version number (e.g. `@0.3.8`) is always reliable.
- pnpm 11 defaults to `minimumReleaseAge: 1440` (24 hours) — versions published less than 24 hours ago are held back, so "released today but can't update today" or resolving to an old version can happen. Add `minimumReleaseAge: 0` (or a `minimumReleaseAgeExclude` whitelist) to the profile's `pnpm-workspace.yaml`; dsh does not overwrite that file, so the change persists.
- Changes take effect only after the profile restarts; if unverified plugins already prevent a profile from starting, troubleshoot with `dsh --profile <name> --patch <empty.yml>` or manually clean the relevant dependency / `cordis.patch.yml` lines before installing the manager.
MIT · actively maintained (created 2026-08-13, last push 2026-08-20; no tagged release)
06Frequently asked questions
How do I install dsh-web-plugin-manager?
Recommended (make sure to include @latest): `dsh plugin --profile <name> add dsh-web-plugin-manager@latest`. Alternatively build from source: `cd /path/to/dsh-web-plugin-manager && pnpm install && pnpm run build`, then `dsh plugin --profile <name> add .`. After restarting the profile, the Web UI's Settings gains a "Plugin Manager" tab plus "Skills & Presets" and "Marketplace" top-level menus.
Why install the manager before any other plugin?
The manager ships its own quality gate and health checks — full-chain dependency scan on install, bundle patch line validation, and install-time rollback; after install you can run dependency-graph / conflict / circular / peer-compatibility analysis. Installing it first means every later plugin install goes through the checks, significantly reducing "installs but fails to boot" situations.
How do I update plugins (or the manager itself)?
In the UI, open Settings → Plugin Manager and hit "Check updates" — it lists all installed plugins including the manager itself; click "Update" on a card when a newer version exists. The manager can update itself in one click and automatically rolls back to the previous version on failure. After updating, restart the profile. CLI equivalent: `dshpm update dsh-web-plugin-manager --profile NAME` or `dsh plugin --profile NAME add dsh-web-plugin-manager@latest`.
Why doesn't `dsh plugin add` upgrade an already-installed plugin?
If the profile already declares an old version (e.g. `^0.1.2`), `dsh plugin add` (i.e. `pnpm add`) keeps the original specifier, and `dsh plugin update` (i.e. `pnpm update`) only re-resolves within the declared range. Cross-version upgrades must use `add ...@latest` or `dshpm update`. If @latest resolves to an old version, check `pnpm config get registry` for a mirror and force the official source with `--registry=https://registry.npmjs.org`.
Is there anything special for pnpm 11 users?
pnpm 11 defaults to `minimumReleaseAge: 1440` (24 hours) — versions released less than 24 hours ago are held back, causing "released today but can't update today" or resolving to old versions. Add `minimumReleaseAge: 0` (or a `minimumReleaseAgeExclude` whitelist) to the profile's `pnpm-workspace.yaml`; dsh won't overwrite that file, so the change persists.
07Related DSH workflows
distilly
by titanwings
Meta-skill turning source material into a versioned Person Profile skill with incremental merge, correction layer, rollback, per-host install.
dsh-market
by dsh-market
插件市场 (plugin marketplace): 打开 Settings → Plugin Market 浏览/搜索/一键安装社区插件;安装源限制为 curated awesome-dsh-plugin 注册表(其余拒绝),默认禁用构建脚本(pnpm>=10 需显式开启)。
ai_animation
by unclecheng-li
Generate standalone animated HTML diagrams, presentations, notes, protocol visualizations, and UI demos from prompts.
aegis
by ganyuanran
Make AI coding agents architecture-aware: baseline-first, evidence-verified, drift-checked, and safe across long tasks.
08Data and sources
在 Web UI 中一键管理 DeepSeek Harness (DSH) 插件:查看、实时启停、安装/卸载、更新检测、健康检查(依赖/冲突/兼容性分析)、环境管理、插件市场。bundle 与非 bundle 插件全覆盖。
dsh plugin --profile <name> add dsh-web-plugin-manager@latest
This page is generated from the project’s public documentation, repository metadata and a structured parse of DSH Plugins; last verified on 2026-08-28. Found an error? Submit a correction.
Best DeepSeek Harness Plugins
Twelve plugins worth installing first — picked from the whole catalog, across every category.
