前言¶
DeepSeek Harness(DSH)采用插件化架构,一切皆插件。在桌面客户端的使用过程中,有时需要重启应用以应用更改或清理状态。手动退出并重新启动较为繁琐,且不利于自动化流程。dsh-plugin-restart-desktop 插件旨在解决这一痛点,通过侧边栏提供一个快速重启入口。
是什么¶
这是一个由 StabCut 维护的客户端插件。其核心功能是在 DSH Desktop 侧边栏的底部设置行(齿轮右侧)添加一个“重启 Desktop”按钮。点击后通过调用底层 API 实现有序重启,并显示相应的等待层。
核心功能¶
- 界面集成:按钮注入在侧边栏底部设置行内,位于齿轮右侧,确保按钮始终处于可视区,不会被操作堆叠裁剪。
- 二次确认与执行:点击按钮会弹出二次确认框,确认后调用桌面主进程的
desktopActions.requestRestart()方法(基于 Electron relaunch),并显示“正在重启…”等待层。 - 语言系统接入:按钮文案接入 DSH 语言系统。用户在设置 → 通用设置 → 语言中切换语言时,按钮文本会自动切换(中文 / English)且立即生效。
- 作用域限制:该功能仅对
desktopprofile 生效。在headless webprofile 下,相关调用会返回{ ok: false }并弹出友好错误提示。
安装与启用¶
本插件仅适用于 desktop profile。
- 修改 profile 的
package.json,将插件添加到dependencies和dsh.profile.bundles:
// ~/.dsh/profiles/desktop/package.json
"dependencies": { "dsh-plugin-restart-desktop": "file:F:/path/to/dsh-plugin-restart-desktop" },
"dsh": { "profile": { "bundles": [ "@deepseek-ai/dsh-base", "@deepseek-ai/dsh-web-app", "dsh-plugin-restart-desktop" ] } }
- 进入 profile 目录,执行安装命令:
pnpm install
- 重启 DSH Desktop,左下角设置行即可看到“重启Desktop”按钮。
典型用法¶
- 验证插件安装流程:通过 profile 注册 →
pnpm install→ 重启生效的步骤,快速验证环境配置是否正确。 - 作为自研插件的最小示例:参考其五件套包结构、
cordis.patch.yml的insert补丁、host/client 双侧与 Typert Remote 的写法。
适用场景与注意¶
- 依赖项:插件依赖 peerDependencies,包括
@deepseek-ai/cordis、@deepseek-ai/dsh-typert-protocol、react等。 - 注意:仅桌面专用,headless web profile 下会返回失败状态。