8月13日晚上,DeepSeek 把 Harness 的开发者预览版丢了出来,v0.1,MIT 开源。消息传开后 24 小时内社区就冒出了近 300 个 dsh-plugin 仓库,有人连夜把自己的工具链搬了上去。我上一篇已经聊过它「一切皆插件」的理念,这篇直接讲怎么装,从最简单的 npx 一行命令,到源码编译,再到第一次启动该点什么,一次说清楚。
安装前先确认一件事
DeepSeek Harness 对 Node.js 版本有硬性要求,官方写的是 ^22.19.0 或 >=24.0.0。低于这个版本,npx 可能能跑,但装到一半会报 engine 不满足的错,白折腾。先敲一行命令看看自己机器上的版本。
node -v
版本没问题就直接往下走。没装 Node 的话先去 nodejs.org 装一个 LTS 版,这一步省不掉。
方法一,npx 一行命令(推荐)
这是官方 quick start,也是绝大多数人该走的路。装好 Node.js 之后,终端里敲下面这条
npx @deepseek-ai/dsh web
第一次运行 npx 会问要不要安装这个包,输入 y 确认。包不大,实测装下来是 531 个 npm 依赖,没有报漏洞。装完它会自动启动本地 Web UI,默认地址是 http://127.0.0.1:3080,浏览器一般会自动弹开。
没弹开也没关系,自己打开浏览器输这个地址就行。到这一步,安装就算完成了,剩下的都是配置。
方法二,源码安装(适合想折腾插件的人)
如果你打算自己写插件、改内置行为,或者就是想看看这个基于 Cordis 的架构长什么样,那就 clone 源码自己编译,四行命令
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
最后启动用这条
pnpm dsh web
注意这一步需要 pnpm,没装的话先 npm install -g pnpm。编译时间看机器,一般几分钟内能完。源码方式的好处是你能直接看 docs 目录下的架构文档,改配置也方便。
首次启动,五个必点的地方
浏览器打开 3080 端口后,会先看到一个开发者预览版提示,然后进入引导流程。按顺序处理这五件事,一件一件来
**第一,填 DeepSeek API Key。** 引导界面会直接让你填,也可以在设置里的 Models 页面后补。没有 Key 就去 platform.deepseek.com 申请,充值之后创建。注意一点,本地 UI 跑在你机器上,但推理走的是 DeepSeek 的 API,要联网、要付费,按 token 计费,跟你用网页版聊天是两码事。
**第二,选工作目录。** 不选 workspace 的话,底下输入框是灰的,发不了任务。默认工作目录是你启动 dsh 的那个文件夹,想换个项目目录就在界面里改。
**第三,选模型。** 从已配置的 provider 里挑一个,选完会成为新会话的默认模型。配了 DeepSeek 官方 Key 的话,V4 Pro 和 V4 Flash 都在列表里。
**第四,选 Agent 预设。** 界面上有四种模式,Standard、PTC、Minimal、Creator。新手直接 Standard 就行,文件、Shell、搜索、规划这些能力都齐,权限也相对温和。PTC 适合把多步工具调用打包成一个 TypeScript 程序跑,Minimal 是精简模式,只有 Bash 和文件编辑,适合对比模型表现。Creator 是给开发者实验用的,能让模型往运行时里写 JavaScript,别当普通聊天模式用。
**第五,确认权限模式。** 默认是 workspace-write,也就是只在你选的工作目录里写文件,敏感操作会弹审批。设置里有个叫 danger-full-access 的选项,名字已经说得很直白,开了就直接绕过沙箱限制,日常使用别碰它。
第一件事建议怎么测
配置完先别急着丢大任务。找个具体的小活试水,比如让它整理一下当前目录的文件、给一个文档写摘要、或者把某个小仓库的包结构讲清楚。看它每步怎么调工具、怎么请求审批、怎么把结果写回文件,这一圈跑通了,再上真实项目。
跑完之后有个小技巧,用这条命令就能查看当前生效的完整插件树
dsh --profile web --dump-config
它会把加载了哪些插件、按什么顺序组合打印出来。想深入理解「一切皆插件」到底是怎么拼装的,看这个输出比看十篇介绍都直观。
几个容易踩的坑
版本迭代快是最大的坑。README 里白纸黑字写着会有破坏性更新,配置格式、API 都可能变。所以生产环境用的话,把包版本锁死,别跟着最新版跑。装的时候记录一下自己用的版本号,出问题好回溯。
另一个容易误会的地方是沙箱。内置沙箱主要管文件系统,网络访问和进程可见性并没有被完全隔离,它跟 Docker 那种完整隔离是两回事。别把敏感项目直接丢进去裸跑。
还有那句重复八百遍的话,本地 UI 不等于本地推理。模型跑在 DeepSeek 的服务器上,费用照常产生,只是操作界面在你机器上而已。
装好之后能干什么
装完你就有了一个可以自由拼装的 agent 运行时。想换模型就换模型插件,想加工具就加工具插件,想改 agent 循环的逻辑也有对应的插件位。官方给了 dsh-plugin 这个 GitHub topic,社区插件都打这个标签,去翻翻能找到不少现成货。
动手装一个吧,十分钟的事。装完跑通第一个任务,你就知道 DeepSeek 这套「一切皆插件」的路子,跟 Claude Code 那些封闭式工具比,差别到底在哪了。
