wdx0614/dsh-restart-plugin--packages-dsh-restart-plugin ↗★ 0

dsh-restart-plugin

Adds a Restart entry to DeepSeek Harness that quits the app and launches it again. 适合频繁调整插件、需要快速重启或关闭桌面应用的用户;存在任务时提示中断风险并要求确认。

패키지
dsh-restart-plugin
호환성
미검증
버전
1.0.0
라이선스
MIT
최근 업데이트
2026. 10. 20.

같은 패키지 이름의 다른 저장소

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:wdx0614/dsh-restart-plugin#6725a0d6c8645eb0f5bfe043e608e287b475d6ae&path:packages/dsh-restart-plugin

DSH 电源菜单(dsh-restart-plugin)

给 DeepSeek Harness(DSH)桌面版 加一个电源按钮:点一下,可以重启 DSH 或关闭 DSH。

安装/启用/禁用/卸载插件后,常常要重启 DSH 才生效;而 DSH 桌面版关掉窗口只是收进托盘, 真正退出或重启要去托盘菜单里翻。这个插件把这两个动作搬到侧边栏底部,一步到位。

Windows / macOS 桌面版 · 纯本地 · 无遥测 · MIT

功能

  • 电源按钮在侧边栏最底部一行的右侧(头像右边)。点击向上弹出菜单。
  • 二级菜单两项,图标 + 文字:
    • 重启 DSH(环形箭头)— 关闭应用,几秒后自动重新打开。
    • 关闭 DSH(门 + 箭头)— 完全退出应用,不重新打开;下次需手动启动。
  • 有任务时会拦一次:如果有正在运行或已排期的任务,会明确提示「任务会被中断」, 需要再点一次「仍然重启 / 仍然关闭」才执行。绝不静默中断。
  • 非桌面环境明确拒绝:dsh web 之类环境里会说明无法自动重启,而不是假装成功。
  • 跟随主题:颜色只用 --dsw-* 主题变量,浅色/深色自动适配。
  • 键盘可用:菜单里 ↑/↓ 移动、Enter/空格执行、Esc 关闭、点菜单外也能关。

安装

在 DSH 里安装(二选一):

设置 → 插件 → 添加插件 → 输入仓库地址

或用插件管理器安装本地路径(把 `` 换成本机实际路径):

dsh plugin --profile desktop add /packages/dsh-restart-plugin

装完重启一次 DSH,按钮才会出现(Host 半需要重启才加载)。

详细步骤见 docs/安装与使用.md。

它是怎么实现「重启」的

Host 是 Electron 的子进程,纯插件没法让 Electron 主进程调用 app.relaunch()——那需要改壳。 所以本插件用「看门狗 + 优雅关闭」:

  1. 用户选「重启 DSH」并确认;
  2. 关闭前先拉起一个脱离的看门狗子进程,它等待 Host 真正退出;
  3. Host 走 cordis 正规的关闭通道退出(等于正常退出 DSH);
  4. 看门狗随后用原可执行文件重新启动 DeepSeek Harness.exe。

「关闭 DSH」走同一套退出流程,只是不拉看门狗——没有人去重新打开应用。

详见 docs/实现原理与风险.md,其中有实测与未验证之分的标注。

验证状态

项目状态
单元测试 27 项✅ 全通过(实测)
看门狗端到端 4/4✅ 全通过(实测)
完整重启链路 8/8✅ 全通过(假进程仿真,实测)
真机重启(3 次)✅ 应用确实关闭并自动重开(实测,见 测试记录)
窗口自动置顶✅ 已修复并真机验证(实测)
有任务时二次确认✅ 实测返回 409 要求确认
非桌面环境拒绝✅ 实测返回 409 not-desktop
电源按钮 + 二级菜单✅ 已实现;界面观感待真机确认(未验证)
托盘残留一个幽灵图标⚠️ 已知缺陷,接受(无 CPU/内存开销,悬停即消失;彻底修需改 Electron 壳)

目录结构

packages/dsh-restart-plugin/   插件源码(可安装的 cordis bundle)
  package.json                 包清单(dsh.bundle.patch + dsh.client)
  cordis.patch.yml             Loader 补丁,插入 Host 行
  index.js                     Host 半:重启/关闭控制器 + HTTP 路由 + 看门狗
  client.js                    Client 半:电源按钮 + 二级菜单 + 确认框
  locale/{en,zh}.json          插件列表里的显示元数据
  icon.svg                     插件图标
  tests/                       单元测试
tools/                         验证与诊断脚本
docs/                          使用说明与原理文档

文档

文件内容
docs/安装与使用.md小白向:怎么装、怎么用、出问题怎么办
docs/实现原理与风险.md原理、实测证据、已知缺陷与风险评估
docs/真机重启测试记录.md3 次真机测试的完整过程与证据

许可

MIT,见 LICENSE。