silencieuxzero/Better_Deepseek_Harness

Better Deepseek Harness, with some functional extensions to webui and Deepseek Harness·Better deepseek harness, for us

better-deepseek-harness adds a Settings -> Better DeepSeek Harness panel that installs, uninstalls and enables/disables Skills and plugins from inside the GUI. Skills can be added by pasting Markdown with frontmatter, downloading a Markdown file from a URL, or pointing at a local file/directory (installed to ~/.dsh/skills and discovered live); plugins can come from an npm package name, a .tgz URL (with built-in tar extraction), a local directory or a Git repository, and are written into the profile's cordis.patch.yml and hot-applied without restart. It also manages MCP servers as one @deepseek-ai/dsh-mcp-client row each (id ext-center.mcp.<name>), can disable every third-party plugin except itself for a minimal configuration, and exposes a loopback-only host HTTP API under /ext/api (state, file tree, terminal, Git reads, MCP list) with schema-validated config and documented fail-loudly safety limits.

Web UI Enhancements ★ 4 updated 2026-08-16 ✅ runtime-tested
View on GitHub ↗

Install

dsh plugin --profile web add git+https://github.com/silencieuxzero/Better_Deepseek_Harness.git

The README lists three methods; Methods 1 and 2 copy the package to ~/.dsh/profiles/node_modules/better-deepseek-harness, run npm ci and append the ext-center row to the profile's cordis.patch.yml by hand. Method 3 above uses the official plugin flow; because lib/ is no longer committed, the package's prepare hook builds it during installation. The install writes one row with id ext-center, deduplicated by id against the other methods.

Compatibility

DeepSeek Harness Web UI. The plugin's preferences live in the ext-center section of settings.yaml; changes to cordis.patch.yml are hot-applied by the harness HMR config listener (no restart; client UI appears after a page refresh). The README warns that a rapid sequence of patch changes can trip a listener race, which a single dsh web restart clears.

Details

Recent updates

The README documents hot-applied (no-restart) skill/plugin/MCP changes, a schema-validated config: block that fails loudly on illegal values, fixed non-configurable safety invariants (request bodies, download sizes, editor and terminal limits), loopback-only mutation and path-exposing endpoints with an opt-in allowLan switch, and the listener-race restart note.

FAQ

How do I install better-deepseek-harness?
The README's official method is dsh plugin --profile web add git+https://github.com/silencieuxzero/Better_Deepseek_Harness.git (requires pnpm); two manual methods that copy the package and run npm ci are also documented.
Do changes need a restart?
No. Per the README the profile's cordis.patch.yml is hot-applied by the HMR config listener; client-UI plugins appear after a page refresh. Only a rapid burst of patch edits may need one dsh web restart to clear a listener race.
Is the host API secure by default?
The README states the mutation endpoints and the read endpoints that expose local paths/output are loopback-only by default, with an opt-in allowLan setting for LAN management, plus schema-validated config and fixed safety limits on request and download sizes.

Alternatives

2768651338/dsh-plugin-manager · Hanihahaha/dsh-skill-mcp-manager · hyqhyq3/dsh-mcp-manager

More plugins in Web UI Enhancements

Browse more in Web UI Enhancements

Guides for Web UI Enhancements plugins