我如何把 DeepSeek Harness 做成可双击启动的 Windows Launcher

发布时间:2026/8/30 23:32:30
我如何把 DeepSeek Harness 做成可双击启动的 Windows Launcher 我如何把 DeepSeek Harness 做成可双击启动的 Windows LauncherDeepSeek Harness 已经提供了 Web 使用方式但“能够运行”和“普通 Windows 用户愿意每天使用”之间仍然隔着一段体验距离需要安装运行时、记住启动命令、等待服务准备还要处理后台进程和网页入口。我想验证一件事能不能不重新实现 Harness只把外围的安装、启动和维护体验补完整这就是 DeepSeek Launcher 的出发点。最终使用体验Windows 用户安装后只需要双击桌面的DeepSeek Launcher图标显示原生启动状态窗口在后台启动 DeepSeek Harness确保系统托盘正在运行Harness 准备完成后自动打开 Web 界面如果启动失败提供重试、查看日志、复制错误和打开 GitHub 等操作。命令行没有被移除。交互式 Windows 终端直接运行deepseek会复用同一个启动窗口需要纯终端输出、调试或脚本调用时可以使用deepseek start。1. 为什么不能只使用 windowsHide最初最明显的问题是双击快捷方式时会闪出 PowerShell 或 Node.js 终端。仅给 Node.js 子进程设置windowsHide: true并不能保证整个派生进程树都没有可见控制台。当前桌面启动链是桌面/开始菜单 → wscript.exe launch.vbs → 隐藏、非交互的 Windows PowerShell → startup-ui.ps1 → node deepseek.js startwscript.exe属于 GUI 子系统不会先创建控制台窗口。它再以隐藏模式启动系统自带的 Windows PowerShell从入口处避免终端闪窗。项目没有为了一个启动窗口引入 Electron 或 WebView2。启动界面使用 Windows PowerShell、WinForms 和 GDI 本地绘制安装后无需联网加载动画资源。2. 启动等待必须让用户看得见开机重启后的第一次启动通常比重复打开更慢。如果双击以后没有任何反馈用户很容易认为自己没有点到于是连续双击甚至直接结束进程。因此启动窗口只保留两条正常状态正在启动 DeepSeek Harness启动完成正在打开浏览器。窗口保持可拖动和响应重复双击只会把现有窗口带到前台不会重复启动 Harness。服务已经运行时则直接打开网页。失败状态也不能只是一个突兀的错误框。当前界面会在相同视觉容器中提供重新启动、查看日志、复制错误信息、打开 GitHub 和退出让错误成为可以继续处理的流程。3. 完整版和轻量版为什么要同时存在普通用户希望“下载以后就能安装”高级用户则不希望重复携带运行时。因此 Windows Release 同时提供两种安装包完整版内置经过固定 SHA-256 校验的官方 Node.js 24 LTS 压缩包推荐普通用户轻量版不包含 Node.js适合已经安装 Node.js 22 或更高版本的用户。完整版在安装阶段只复制预压缩的 Node.js 文件不在 Inno Setup 主界面线程中展开大型node.exe。真正需要私有运行时时再由独立进度窗口完成校验和准备从而减少安装器长时间卡住、无法拖动的问题。轻量版会在图形界面检查 Node.js 版本缺失时给出官网、winget 命令和重新检测入口不会静默安装系统依赖或突然弹出终端。4. Harness 更新与 Launcher 更新必须分开deepseek update原本用于更新上游deepseek-ai/dshHarness这个含义必须保留。Launcher 自身使用另一组明确命令deepseek launcher versiondeepseek launcher update --checkdeepseek launcher updatedeepseek launcher rollbackLauncher 更新只接受本项目 GitHub Release 中的正式安装包和对应.sha256校验失败立即停止。更新不会静默强制执行交互模式必须由用户确认非交互调用也必须明确传入--yes。自动检查在托盘启动后后台进行最多每 24 小时一次不延迟 Harness 启动或网页打开。GitHub 超时、限流或不可达时静默跳过Launcher 本身仍然正常使用。5. 回退不能只显示一个“成功”更新前Launcher 会记录当前版本并尽量保留对应安装包。用户选择回退时再次校验旧版安装包并要求确认。只有下一次启动实际检测到版本变化状态才会被认为成功。这样可以避免用户取消安装或安装失败后界面却错误地显示“已经更新”或“已经回退”。更新与回退只替换 Launcher 程序文件不会删除、覆盖或重置%USERPROFILE%\.dsh中的模型配置、密钥、聊天数据和日志。6. 当前限制这个项目目前仍有明确边界Windows 10 / 11 是完整桌面体验的主要平台Harness 首次启动仍可能需要联网获取上游包安装包尚未进行商业代码签名Windows 可能显示 SmartScreen 提示它是非官方社区 Launcher不是 DeepSeek 官方客户端。我更愿意把这些限制直接写清楚。对于安装类开源项目可信度来自可检查的源码、Release、校验文件和诚实的边界而不是一句“放心使用”。项目地址GitHubhttps://github.com/wyf-777/deepseek-launcher官网https://wyf-777.github.io/deepseek-launcher/LicenseMIT如果你正在 Windows 上使用 DeepSeek Harness欢迎实际体验后提交 Issue尤其是首次安装、启动速度、网络环境和系统托盘方面的反馈。如果项目确实帮到了你也欢迎在 GitHub 点一个 Star让更多需要它的人看到。