Windows · 免命令行安装

DeepSeek Harness,双击就能跑起来

面向电脑小白的社区一键安装包。双击 → 下一步 → 约 1 分钟装完,桌面自动生成「DSH 启动器」,后端随时一键启停。

约 36 MB 安装包 内置 Node.js 无需预装环境 约 1 分钟 装完(联网) 无需管理员 权限
DSH 托盘常驻:双击恢复窗口 · 右键快捷菜单

安装指南

从下载到跑通,一共四步。首次安装需要联网,实测约 1 分钟,装上约 600 MB;最新安装包在 GitHub Releases 页面下载。

1

双击 DSHSetup.exe

运行一键安装程序,无需任何命令行操作。

2

选择安装目录

默认 %LOCALAPPDATA%\DeepSeekHarness,也可以装到别的盘。

3

先做环境检查

逐项检查网络连接、磁盘空间、目录权限、端口占用、长路径能力,并把结果列给你看。全部通过才弹窗问「是否开始安装」,你确认了才真正写磁盘。

4

安装、试运行、完成

联网从官方源安装 dsh 本体(实测约 1 分钟);装完自动试运行一次,确认后端真能起来,再勾选「立即启动」完成。

安装程序会自动完成

  • 解压内置的便携版 Node.js 运行时,无需预先安装 Node
  • 用这个 Node 自带的 npm 从官方源安装 DeepSeek Harness 本体到 harness\
  • 在桌面和开始菜单创建「DSH」快捷方式(图标是官方鲸鱼)
  • 在「设置 → 应用」登记卸载入口
  • 全程不需要编译器或开发工具,也不需要 Visual Studio

启动器能做什么

一个窗口、几个按钮,把 DeepSeek Harness 的后端、网页、托盘和更新全都管起来。

▶

一键启动后端

在后台启动 dsh web,监听 127.0.0.1:3080,并用端口探测实时检测运行状态。

dsh web · 127.0.0.1:3080 · 就绪
重复启动自动聚焦已有窗口
▦

最小化到系统托盘

点标题栏的「最小化」即可隐藏窗口,后端继续运行。托盘图标双击恢复窗口,右键可显示或隐藏。

关闭窗口不杀后端
↗

一键打开网页

用你系统的默认浏览器打开界面(Chrome / Edge / Firefox 都行);若后端未运行,会先帮你启动再打开。

■

彻底关闭后端

按 pid.txt + netstat 双重定位进程树,只结束 node.exe,不误杀别的程序。

☰

托盘右键菜单

↻

一个按钮检查更新

↻ 检查更新 同时管两件事:dsh 本体,和面板自己。面板自更新会下载新的 exe → 校验 sha256 → 原子替换 → 失败自动回滚,最坏的结果是「还是原来那个版本」。

更新实测 38 秒(旧版本要 3.6 分钟)
✓

安装前先做环境检查

网络连接、磁盘空间、目录权限、端口占用、长路径能力逐项查一遍,全过才动手写磁盘;装完还会自动试运行一次后端,起不来就不算装完。

install.log 记下机器能力与失败诊断

装好之后,一分钟上手

首次打开网页,配置好模型即可开始和 Agent 对话、运行任务。

1

打开网页

自动用系统默认浏览器打开 127.0.0.1:3080

→
2

填入 API Key

到「设置 → 模型」填写 DeepSeek API Key

→
3

开始对话

没有 Key 可先到 platform.deepseek.com 申请

安装后的目录结构

所有东西都装在用户目录下,不写系统目录,卸载即可全部清除。

DeepSeekHarness\
├── harness\ DeepSeek Harness 本体(从官方 npm 源安装,约 600 MB)
├── runtime\ 便携版 Node.js(node.exe / npm)
├── launcher\ DSH 启动器(DSHLauncher.exe)
│   └── data\ 运行状态(pid.txt、web.log、error.log)
├── uninstall.bat 一键卸载
└── install.log 安装日志(含机器能力探测与失败诊断)

常见问题

遇到问题先看这里,多数情况都能自己解决。

Q. 安装卡在联网下载 / 提示网络失败?▾

多半是 npm 官方源不通。检查网络或代理后点「重试」;也可以先手动打开一次 https://registry.npmjs.org 确认能访问。完整日志在安装目录下的 install.log。

Q. 用非 Chrome 的浏览器可以吗?▾

可以。启动器的「打开」按钮调用的是系统默认浏览器(Chrome / Edge / Firefox 都行);万一没打开,后端跑起来后在任意浏览器访问 http://127.0.0.1:3080 即可。

Q. 点「启动」后一直显示「已停止」?▾

查看 launcher\data\web.log 和 launcher\data\error.log。常见原因:端口 3080 被占用(先点「关闭」再试)、磁盘空间不足、杀毒软件误报拦截(见下一条)。

Q. 杀毒软件报毒 / 显示未知发布者?▾

安装包是 PyInstaller onefile 打包、没有代码签名,运行时要把自己解压到临时目录,形状和 dropper 很像,所以容易被杀毒软件的机器学习启发式误报 —— 名字里带 !ml 后缀的(形如 Trojan:Win32/Sabsik.TE.A!ml)表示这是机器学习判定,不是特征码命中,也不是真中了病毒。

确认是误报的话,可以把安装包加进信任 / 白名单,或提交给微软复核(免费,通常几天内有结果):microsoft.com/en-us/wdsi/filesubmission,选「I believe this file is incorrectly detected as malware」。

如果弹的是 SmartScreen 的「未知发布者」,那是代码签名 / 下载信誉问题,不是病毒:点「更多信息 → 仍要运行」就能继续安装。

Q. 最小化到托盘后找不到窗口了?▾

双击托盘里的 DSH 图标即可恢复。图标藏在任务栏右侧小箭头(^)里时,先展开再找。

Q. 想换端口怎么办?▾

设置环境变量 DSH_LAUNCHER_PORT=3080 后再启动,改数字即可换端口。

Q. 这是官方安装包吗?▾

不是。这是为 DeepSeek Harness 框架做的社区分发安装器,框架本体来自 deepseek-ai/deepseek-harness(MIT 协议)。卸载方式:设置 → 应用 → DeepSeek Harness → 卸载,或运行安装目录里的 uninstall.bat。

For developers

技术亮点

启动器与安装器全部用 Python 标准库实现,零第三方运行时依赖,构建脚本一键出包。

零依赖托盘ctypes

tkinter 无边框窗口 + 纯 ctypes 调用 Shell_NotifyIcon,自带消息循环线程,与主循环通过队列通信,不引入任何第三方库。

稳健的进程管理netstat

从 harness\ 里 npm 装好的 dsh 启动后端;关闭时按 pid.txt + netstat 双重定位进程树,只结束 node.exe,不误杀别的进程,也不留孤儿进程。

单文件安装器PyInstaller

onefile 打包,负载(便携版 Node + 启动器 exe,约 36 MB)全部内嵌;安装时用内置 Node 自带的 npm 从官方源拉取 dsh 本体,全程不需要编译器。

面板自更新sha256

下载新的启动器 exe → 校验 sha256(对不上就丢弃,原文件一个字节不动)→ 原子替换(运行中的 exe 先改名,不覆盖)→ 失败自动回滚。最坏的结果是「还是原来那个版本」。

细节工程WScript.Shell

快捷方式用 WScript.Shell 生成;卸载脚本 uninstall.bat 以 UTF-16LE 编码保存,中文无乱码。

从源码构建: 运行 powershell -ExecutionPolicy Bypass -File scripts\build.ps1 即可一键产出 DSHLauncher.exe 与 DSHSetup.exe,另附 --selftest 自检模式。 安装过程不收集任何数据、不写系统级目录、不需要管理员权限。
本仓库 · MIT 框架本体 · DeepSeek Harness · MIT 社区项目 · 与 DeepSeek 官方无关

源码与发布:github.com/q2815798751/dsh-installer-fornoob