什么? DeepSeek Harness 只能跑在浏览器标签里?
2026 年 8 月 13 日,DeepSeek 开源了首款 Agent 产品 DeepSeek Harness(dsh),MIT 协议。
「打开 dsh web 就能对照操作。」 官方形态就是 Web UI------跑一条命令,浏览器里开个 http://127.0.0.1:3080,之后的配置、对话、工具调用全在这个网页里。
使用起来太麻烦了
dsh 的能力没问题:真实读写文件、执行命令、插件随便装、每一步的审批。但它的形态真是挺难绷的。
1. 图形化交互只有网页,前置还得先装 Node.js。 官方启动方式就一句话:
sh
npx @deepseek-ai/dsh web
命令看着很优雅,前提是你已经装好了 Node.js。查 Node 版本、配 npm 镜像、处理网络问题,哪一步都能劝退一批人。万少 2 万字教程里光是「装环境」就占了一大段。想从源码跑?还得 pnpm install && pnpm run build。
2. 它和浏览器标签页「同居」,体验约等于零。 服务跑在 127.0.0.1:3080,窗口就是一个普通网页标签。它和我的 30 个标签混在一起,一不留神手滑关掉------服务还在跑,界面却找不到了。想切回来得在标签海里翻,或者重新敲一遍 localhost:3080。没有托盘图标、没有自启动、没有全局快捷键,它就像个寄宿在浏览器里的租客。
3. 生命周期全靠手动。 Web 服务挂在终端里,终端一关服务就死;不关就常驻后台,又没有一个可见入口能管它。重启要回终端 Ctrl+C 再敲一遍,换端口要翻文档改环境变量,看日志只能靠 tail。
4. 干的都是本地活,待遇却跟云端服务一个样。 dsh 读写本地文件、跑本地命令、管本地进程,可每次用都得:开终端、敲命令、等启动、手动开浏览器、输地址。开着坦克去超市买瓶酱油,也就这样了。
忍不了,那就自己造一个:DeepSeek Harness Desktop
我照着 n8n-desktop 的「一键安装 + 本地运行 + 内嵌 Web 界面」模式,用 Tauri 2 + React 把 dsh 打包成了桌面应用:
deepseek-harness-desktop 跨平台(Windows / macOS / Linux)的 DeepSeek Harness 桌面客户端,无需手动安装 Node.js、无需 pnpm、无需 Docker。
上面吐槽的每一条,它都有对应的答案:
- 一键安装:首次启动自动下载 Node.js 运行时 + 打包好的 Harness 发行版,装完直接进界面,全程不用碰终端;
- 内嵌 Web 界面:dsh 的 UI 直接嵌在桌面窗口里,关掉 App 就是关掉窗口,打开就是服务就绪;
- 本地运行 :
dsh --profile web跑在127.0.0.1:3080,数据完全留在本机; - 侧边栏管理:版本信息、dsh / Node 版本、服务地址、端口设置、开机自启、服务日志(查看/清空)、重启/停止/启动、一键浏览器打开、复制地址、打开数据目录------进程管理终于有地方可去了;
- 隐私默认 :隔离的
$DSH_HOME,默认关闭遥测(DSH_TELEMETRY_DISABLED=1),数据目录在系统标准的 AppData / Application Support 下,随时可查; - 中英双语:界面支持中文和 English。
架构长这样:
text
Tauri WebView (React)
│ invoke 命令 + 事件
Tauri Rust 后端
├─ 下载安装器:Node.js 运行时 + dsh 发行包
├─ 进程管理:dsh --profile web --host 127.0.0.1 --port 3080
└─ 健康检查:就绪后 iframe 加载 dsh UI
│ DSH_HOME=<app-data>/data/dsh
▼
http://127.0.0.1:3080/ (内嵌,不再占用浏览器标签)
怎么跑起来:
bash
git clone https://github.com/hairyf/deepseek-harness-desktop.git
cd deepseek-harness-desktop
pnpm install
pnpm tauri dev # 开发
pnpm tauri build # 打包安装包
本文参考的掘金文章:
- DeepSeek 昨晚刚开源了 Harness:附万少的2 万字保姆级教程(万少,2026-08-14,掘金 AI 热榜)
- Harness 约束是长出来的,不是写出来的------二阶抽象与驾驭(APTShark,2026-08-08,掘金 AI 热榜)