前言¶
DeepSeek Harness(DSH)默认在终端前台运行 dsh web,必须保留一个 cmd/PowerShell 窗口,误关窗口服务即停。本工具将其转换为标准的 Windows 托盘应用:双击快捷方式无窗口启动,系统托盘常驻图标,Harness 就绪后自动打开浏览器;托盘菜单管理界面与日志,「退出」即完整停止(先停 Harness、再关托盘)。
是什么¶
dsh-tray-launcher 是 DeepSeek Harness 的 Windows 桌面托盘启动器。由 fancr-code 维护,采用 MIT 许可证。
它不依赖 Electron 等桌面壳运行时,而是基于纯 PowerShell 核心脚本(约 30KB)配合一行 VBS 实现。相比打包的桌面客户端,优势在于体积小、干净,无后台残留进程。内存占用经过优化,实测常驻约 55MB 工作集 / 84MB 私有提交。
核心功能¶
- 低占用:纯 PowerShell + VBS,不加载 Electron 运行时,定期清理工作集。
- 系统托盘常驻:无窗口运行,托盘图标 + 气泡提示(启动、运行中、已停止),Harness 意外退出自动收起。
- 无窗口启动:不弹 cmd/控制台,stdout/stderr 落盘日志。
- 自动打开浏览器:后台轮询端口,Harness 一监听就自动打开 Web GUI。
- 单实例保护:互斥锁 + 端口检测,重复双击快捷方式不会重复启动,只会唤起界面。
- 多图标切换:预设梁祖、鲸鱼娘、DeepSeek 三款图标,托盘右键「切换图标」一键更换,托盘与桌面快捷方式图标同步更新。
- 开机自启:安装时通过
-Autostart参数注册,或通过托盘右键菜单一键开关。 - 内置用量仪表:随包携带
dsh-plugin-usage-meter,安装时自动注册,托盘菜单显示当前版本并可一键更新。 - 自更新:托盘「更新启动器」菜单一键
npm i -g更新自身。 - 可作为 dsh 插件安装:通过
dsh plugin add安装后,托盘随 Harness 自动启动/退出。
安装与启用¶
前置条件¶
- Windows 10 / 11
- Windows PowerShell 5.1
- 已安装 DeepSeek Harness CLI(
dsh web可正常启动) - 已安装 Node.js(版本 >= 18)
全局安装¶
npm install -g dsh-tray-launcher
安装后执行以下命令启动:
# 托盘模式(无窗口)
dsh-tray
# 控制台模式(日志直出终端)
dsh-tray --console
作为 DSH 插件安装¶
dsh plugin --profile web add dsh-tray-launcher
此方式下,托盘随 Harness 自动启动/退出,配置与日志保存在 %DSH_HOME%\dsh-tray。
典型用法¶
| 操作 | 效果 |
|---|---|
dsh-tray |
无窗口启动;托盘出图标 + 气泡;端口就绪自动开浏览器 |
dsh-tray --console |
控制台模式,前台运行、日志直出终端 |
| 双击托盘图标 | 打开界面 |
| 托盘「退出」 | 停止 harness + 关闭托盘(全部退出) |
| 托盘「切换图标」 | 弹出子菜单切换梁祖 / 鲸鱼娘 / DeepSeek / 自定义图标 |
配置¶
安装器在安装目录(%LOCALAPPDATA%\Programs\DSHTray\)生成 dsh-tray.config.json,字段均为可选:
{
"dshBin": "C:\\...\\node_modules\\@deepseek-ai\\dsh\\lib\\bin.js",
"node": "C:\\Program Files\\nodejs\\node.exe",
"url": "http://127.0.0.1:3080",
"icon": "liangzu",
"shortcut": "C:\\Users\\<you>\\Desktop\\DeepSeek Harness.lnk",
"cwd": "C:\\Users\\<you>"
}
dshBin/node:缺省时按「npm 全局 → npx 缓存 → PATH → 常见路径」顺序自动探测。icon:支持liangzu(默认)、whale-girl、deepseek或自定义.ico路径。shortcut:桌面快捷方式路径,用于同步图标。
注意事项¶
- 退出行为:点击托盘「退出」会停止 Harness 并退出托盘(全退)。
- 图标素材归属:梁祖画像源自相关开源项目,鲸鱼娘帧源自相关开源项目,DeepSeek 鲸鱼 logo 为 DeepSeek。
- 已知限制:退出时通过端口占用者与「命令行含
dsh的 node.exe 进程」定位并结束 Harness;若同时跑着其他命令行带dsh字样的 node 进程,可能被一并结束。
结语¶
dsh-tray-launcher 解决了 DSH 在 Windows 上需要常驻终端窗口的痛点,提供了一个轻量级、零运行时的托盘解决方案。适合需要在后台常驻 Harness 并通过浏览器访问 Web UI 的用户。