dsh-plugin-ops-bundle
Verifieddsh-plugin-ops-bundle Β· v0.20.5 Β· MIT Β· Web UI
Embedded dsh bundle for dsh-plugin-ops: a settings-page health panel (scan, plugin rows, diagnosis chat) over the shared engine
Install
dsh plugin add dsh-plugin-ops-bundle Confirm the layer applied with dsh --profile default --dump-config β see the install guide.
Source
Tags
Creators
Readme
dsh-plugin-ops-bundle
The dsh-ops health panel, embedded in DeepSeek Harness. This package installs the dsh-plugin-ops engine into a profile and adds a dsh-ops section to Settings: health cards, findings with their fixes, plugin-row management, an upgrade-preview card, a fault timeline, and a diagnosis chat.
The same engine is available as a terminal CLI β
npm i -g dsh-plugin-opsgives youdsh-ops check/preview/gate/serve(andverifyfor plugin authors).
Install
| You are | Install |
|---|---|
| Desktop app | Settings β Plugins β install dsh-plugin-ops-bundle (or just ask DSH to install it) |
| Web / CLI profile | dsh plugin --profile web add dsh-plugin-ops-bundle |
Restart the dsh process (desktop: reopen the app), then open Settings β dsh-ops.
What it shows
- Health β one card per profile: fatal / warn / info counts from the 10 static rules.
- Findings β each one with the fix it recommends; executable fixes write a backup first.
- Upgrade preview β pick a target dsh release and see which installed plugins it would skip, each fix as a copy-ready command.
- Plugin rows β health badges, severity filter, paging, official-row protection, enable/disable.
- Fault timeline β what changed since the last successful boot (the attribution baseline).
- Diagnosis chat β troubleshooting experience is deposited as Markdown and retrieved into the chat (BM25 + optional embedding re-rank), zh/en switch.
How it works
- Host half (
lib/index.js): a cordis plugin that waits for the optionalwebServerservice and serves the panel API under the/dsh-opsprefix, reusing the shared engine (dsh-plugin-ops-core). The diagnosis chat prefers the harnessctx.llmseam with the configured default model and falls back to a direct OpenAI-compatible channel when the tree exposes no llm service. - Browser half (
lib/client.js): registers asettings.sectionthroughdsh.clientand fetches the same-origin/dsh-ops/api/*routes. - Profiles without a Web server are unaffected: the host half activates but registers nothing.
License
MIT