# DeepSeek Harness 桌面客户端 一个把 DeepSeek Harness(dsh)Web UI 包装成**独立桌面应用**的本地客户端。 使用系统 **WebView2** 渲染,不依赖 Vivaldi / Edge 等完整浏览器,双击即用。 ## 功能 - **独立窗口**:WebView2 渲染 `http://127.0.0.1:3080`,无浏览器地址栏/标签栏 - **自动拉起后端**:打开应用时若 dsh 服务未运行,自动静默启动(node 进程,无 CMD 窗口) - **启动进度提示**:等待后端就绪时显示进度条 + 百分比 + 后端最新输出(首次冷启动较慢) - **系统托盘**: - 点窗口 `X` → 直接最小化到托盘(后端保持运行) - 托盘双击 / 右键「打开」→ 恢复窗口 - 右键「**开机自启服务**」→ 勾选后开机自动后台启动后端(打开应用秒开) - 右键「退出」→ 完全退出(**同时关闭后端服务**) - **应用内升级引导**:启动时后台检查 DSH 最新版本,有新版本弹窗引导升级 (npm 后台完成,无需打开浏览器/终端;升级后自动重启服务) - **DPI 感知**:PerMonitorV2,高分屏(250% 缩放)下界面清晰不模糊 - **DeepSeek 官方图标**:窗口、任务栏、快捷方式均为官方鲸鱼 logo ## 目录结构 ``` DeepSeekHarness\ ├── README.md 本文件 ├── dsh.ico DeepSeek 图标(多尺寸,快捷方式/窗口使用) ├── logo-512.png 图标 512px 源图(由官方 favicon.svg 生成) ├── .gitignore 排除运行时数据 └── app\ ├── dsh-app.exe 主程序(C# / WinForms / WebView2) ├── start-dsh-service.vbs 开机自启用的隐藏启动器(wscript 调用) ├── Microsoft.Web.WebView2.Core.dll WebView2 托管组件 1.0.3719.77 ├── Microsoft.Web.WebView2.WinForms.dll 同上 ├── WebView2Loader.dll 原生加载器(x64) ├── src\ │ ├── dsh-app.cs 全部源码 │ └── app.manifest DPI manifest(PerMonitorV2) ├── web.log dsh 服务日志(运行时生成) ├── upgrade.log 升级日志(运行时生成) └── dsh-app.exe.WebView2\ WebView2 用户数据(运行时生成) ``` ## 环境依赖 | 依赖 | 说明 | |---|---| | Node.js ≥ 22.19 | dsh 运行环境(当前机器:v24.19.0,winget 安装) | | `@deepseek-ai/dsh` | 全局安装:`npm i -g @deepseek-ai/dsh`(镜像源:registry.npmmirror.com) | | WebView2 Runtime | Windows 11 自带;旧系统需安装 | | .NET Framework 4.8 | Windows 10/11 自带(构建时才需要) | ## 使用 1. 双击桌面(或 `C:\Users\VanuSystems-Mu\DeskBox\AI\`)的 **DeepSeek Harness** 快捷方式 2. 首次打开需等待后端冷启动(**2~3 分钟**,窗口有进度提示);之后秒开 3. 用完点 `X` 即最小化到托盘;彻底退出用托盘右键 → **退出** > **关于启动速度**:慢的根源是 dsh 自身(启动需加载 194 个插件包)。 > 推荐在托盘菜单勾选「**开机自启服务**」——开机后台预热,之后任何时间打开应用都是秒开。 ## 从源码构建 ```sh cd app\src csc /target:winexe /nologo \ /win32manifest:app.manifest \ /win32icon:..\..\dsh.ico \ /out:..\dsh-app.exe \ /r:..\Microsoft.Web.WebView2.Core.dll \ /r:..\Microsoft.Web.WebView2.WinForms.dll \ /r:System.Windows.Forms.dll /r:System.Drawing.dll \ dsh-app.cs ``` csc 位于 `C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe`。 ## 排障 | 现象 | 处理 | |---|---| | 界面模糊 | 确认 exe 已带 manifest(PerMonitorV2);重新构建 | | 弹 CMD 窗口 | 旧版本用 `cmd /c` 启动后端所致;当前版本直接启动 `node.exe`,无窗口 | | 打开后一直"正在启动服务" | dsh 冷启动需 2~3 分钟,进度条会显示;若超 4 分钟查看 `web.log` | | 升级失败 | 查看 `app\upgrade.log`;确认 npm 镜像源可用 | | 托盘图标消失 | 进程异常退出;重新双击快捷方式即可(会自动拉起后端) | ## 许可 - 本包装代码:MIT(可自行修改 `app\src\dsh-app.cs` 后重新构建) - DeepSeek Harness:由 [deepseek-ai/deepseek-harness](https://github.com/deepseek-ai/deepseek-harness) 提供,MIT - WebView2 组件:Microsoft 分发,MIT