DSH Plugins Marketplace

DSH Plugins

Plugins

/

Terminal & Clients

/

dsh-web-watchdog

c

dsh-web-watchdog

Manifest valid

Watchdog for the dsh web GUI: crash logging + exponential-backoff auto-restart supervisor + status panel

UI (client)hasBundlePatch

🛡 dsh-web-watchdog

DeepSeek Harness Web GUI 的看护插件: 崩溃记录 + 指数退避自动重启 + 状态面板。

dsh web(dsh web,默认 http://127.0.0.1:3080)在 Windows 上偶发崩溃 (Node 24 libuv 退出断言、原生 TS 类型剥离等)。本插件在宿主进程内托管一个 脱离进程的 PowerShell 监督进程:

  • 📜 崩溃记录:宿主异常退出(退出码 != 0)时,把退出码、宿主 stderr/stdout 末尾、Windows 事件日志追加到 crash.log;
  • 🔁 自动重启:按指数退避(默认 10s 起、上限 600s、连续最多 10 次)自动拉起 node --no-warnings <bin> web;宿主正常退出(exit 0)不重启;
  • ⚡ 计划重启:面板按钮或 POST /api/watchdog/restart 写请求标记,监督进程 在 2 秒内完成「停旧进程 → 拉新进程」;
  • 🤝 监督进程交接:重启后新宿主会拉起自己的监督进程,旧监督进程检测到 pid 文件被接管后自动退出,避免双重监督。

安装

npm install
npm run build
dsh plugin --profile web add link:<本目录绝对路径>
# 重启 dsh web 后生效;右下角出现 🛡 按钮

面板 / API

端点说明
GET /api/watchdog/status宿主 PID、监督进程状态、配置、崩溃记录尾部
GET /api/watchdog/log?lines=60崩溃日志尾部
POST /api/watchdog/restart计划重启(浏览器会短暂断线,监督进程自动拉起)
GET /api/health插件健康检查
curl http://127.0.0.1:4795/api/watchdog/status
curl -X POST http://127.0.0.1:4795/api/watchdog/restart

配置

首次运行在数据目录(默认 %USERPROFILE%\.dsh\web-watchdog,可用环境变量 DSH_WATCHDOG_DATA / DSH_WATCHDOG_PORT 覆盖)生成 config.json:

  • supervisor.nodePath / binPath / restartArgs:重启命令(自动探测,可覆盖);
  • supervisor.maxRestarts / backoffStartSec / backoffMaxSec:重启策略;
  • 崩溃记录:<数据目录>/crash.log,宿主日志:<数据目录>/web-logs/。

开发 / 自测

  • npm run build —— tsdown 产出 host half(lib/index.js)与 browser half(lib/client.js);
  • node test-isolated.mjs —— 隔离端到端测试:监督进程拉起、崩溃记录、自动重启、 计划重启、监督交接(不接触真实 dsh web 进程)。
  • node test-deployment.mjs —— 真实部署形态端到端测试:假宿主通过插件的 WMI 机制拉起监督进程, 再用 Stop-Process -Force 硬杀宿主,验证监督进程独立存活、恢复宿主环境、写崩溃记录并自动拉起新宿主。

License

MIT

Comments

Loading…

Similar plugins

dsh-admin

by xiaokang6

DeepSeek Harness Web GUI admin plugin: manual restart + auto version check (header button + settings page)

Manifest valid

★ 0

MIT

JavaScript

Aug 18, 2026

dsh plugin --profile web add dsh-admin

by yewenyell-lang

Durable workspace-owned Workloads and Runtime Center for DeepSeek Harness

Development & InfrastructureManifest valid

★ 0

MIT

JavaScript

Aug 21, 2026

dsh plugin --profile web add dsh-workloads-local-ui1

by d86e

dsh-doctor: self-healing watchdog for the DeepSeek Harness web profile. Recovers from plugin-induced boot failures within 60s, runs an unbounded CLI doctor, captures every tool error, and watches all

Tools & CapabilitiesDevelopment & InfrastructureManifest valid

★ 4

MIT

TypeScript

Sep 8, 2026

dsh plugin --profile web add @d86e/dsh-doctor

by xingzhen199186

DSH runtime observability and plugin diagnostics panel

Development & InfrastructureManifest valid

★ 0

MIT

TypeScript

Sep 10, 2026

dsh plugin --profile web add dsh-insight-tree

by adrianleb

A persistent, responsive tmux control-mode cockpit for DeepSeek Harness Web.

UI & ExperienceDevelopment & InfrastructureManifest valid

★ 0

MIT

TypeScript

Sep 29, 2026

dsh plugin --profile web add dsh-tmux-cc

by SaiSenBox

A loader-independent rescue console for DeepSeek Harness when a broken plugin prevents the Web UI from starting.

Development & InfrastructureManifest valid

★ 3

↓ 161/wk

MIT

JavaScript

Aug 15, 2026

dsh plugin --profile web add dsh-boot-guard