DeepSeek Harness 安装

DSH 一站式上手:从安装到修复第一个项目(附练习包)

从 Node 环境、固定版本启动、API 配置与工作区选择,到修复采购合计并亲自验收,全程使用可下载材料。

新手 预计 35 分钟 更新 2026/9/5 核验 2026/9/5
本页目录

完成结果

学完后你会留下什么

修复后的 budget.mjs、独立运行得到的 3 pass / 0 fail 结果,以及一份可解释的修改记录。

验证版本
0.1.2-rc.1
适合谁
希望在独立练习环境中学习 DSH 的开发者和 Agent 用户
开始前确认
  • 了解当前为开发者预览版
  • 准备可丢弃或已备份的练习材料

这篇从准备环境开始,直到你亲眼看到一个计算错误被修复、测试由失败变成通过。**不需要先读完其他五篇,也不需要 Git、Python、pnpm 或额外插件。**你需要能打开终端、解压文件,并准备自己的模型 API 凭据。

我们使用同一份采购合计练习:两本笔记本、一盏台灯、三支笔,正确合计为 83 元,程序却算成 55 元。你会让 DSH 读取代码、定位原因、修改一行,再检查结果。

0. 先知道这篇验证到了哪里

项目本文情况
DSH 包@deepseek-ai/dsh@0.1.2-rc.1,固定版本命令
实际环境macOS、Node v24.13.0
已验证包安装、CLI、Web 页面、中文设置入口、练习失败/成功结果
工具链验证本地脚本模型返回 read/edit 调用,DSH 实际读取和修改练习文件
尚未验证真实 DeepSeek 模型自主完成任务、真实 API 凭据保存、Windows/Linux 全流程

Windows 命令单独列出,但不称为 Windows 实测。官方主仓库当前声明的 Node 要求为 ^22.19.0 || >=24.0.0;为减少分支,本文统一建议 Node 24.x。DSH 是预览版,后续版本可能改变界面或参数。

1. 安装 Node,再确认终端能找到它

已经有 Node 24.x 可以直接跳到第 2 步。

  1. 打开 Node.js 官方下载页,选择 24.x 和你的操作系统。
  2. Windows 选择相应架构的安装包;macOS 选择相应安装器。Linux 按下载页给出的发行版/安装方式操作,不混用其他系统的命令。
  3. 安装完成后,关闭并重新打开终端。Windows 可以打开 PowerShell;macOS 打开“终端”。
  4. 分别执行:
node --version
npm --version

**成功标志:**两条命令都返回版本号,Node 显示 v24...。本站实际结果为 v24.13.0

**不成功:**如果提示 command not found、不是内部或外部命令,先重新打开终端;仍失败时检查安装器是否配置 PATH。此时不要运行 DSH 安装命令。若 PowerShell 只对 npm.ps1 提示脚本执行限制,可以先试 npm.cmd --version;后文的 npx 同理使用 npx.cmd,不必为本教程全局降低执行策略。

2. 下载练习包,进入正确目录

下载采购合计练习 ZIP。下载后解压,打开其中的 dsh-lab-v2 文件夹。你应看到:

dsh-lab-v2/
├── README.md           任务说明
├── budget.mjs          唯一允许修改的文件
├── budget.test.mjs     三项测试,不允许修改
└── task.txt            可以直接粘贴的任务

不要在 ZIP 压缩包预览里操作,要先解压。下面假设你把文件夹放在下载目录;如果位置不同,把路径替换为你实际的路径。

macOS / Linux:

cd "$HOME/Downloads/dsh-lab-v2"
pwd
ls

Windows PowerShell:

Set-Location "$env:USERPROFILE\Downloads\dsh-lab-v2"
Get-Location
Get-ChildItem

**成功标志:**文件列表中有 budget.test.mjs。如果多解压了一层,先进入真正包含这个文件的目录。后续命令都在这里执行。

3. 先看到错误,建立验收基线

在这个终端运行:

node --test budget.test.mjs

这次应该失败。看输出中的汇总:

tests 3
pass 1
fail 2

两个失败分别对应 5500 !== 8300199 !== 597,单位都是“分”。不同 Node 版本的格式可能略有差别,关键是数值与通过/失败数量。

如果你看到找不到测试文件,回到第 2 步检查目录。如果首次就三项全通过,说明材料已经修复过;重新解压一份到新目录,再继续。练习包没有依赖,不用执行 npm install

4. 启动固定版本的 DSH

仍在练习目录执行:

npx @deepseek-ai/dsh@0.1.2-rc.1 web

首次 npx 可能询问是否获取软件包;确认包名和版本正确后继续。等待终端打印本地访问地址,浏览器通常会自动打开。保持这个终端运行,不要关闭。

默认端口是 3080。应使用终端实际打印的完整地址:本站这个版本启动时带有 ?token=...,只手输端口不一定能完成初始访问。带 token 的地址属于本地访问凭据,不要复制进公开求助截图。

如果没有自动打开浏览器,复制终端地址手动打开。如果提示端口被占用,先停止本次启动,再换一个端口:

npx @deepseek-ai/dsh@0.1.2-rc.1 web --port 3088

若你不希望自动打开浏览器,可以加 --no-open。本站实际用 --no-open --port 3087 启动通过。

**成功标志:**浏览器出现 DSH 的初始页面与“选择工作区”入口。不是仅仅完成 npm 下载。

5. 配置自己的模型

第一次打开会出现内测声明,以及“添加一个 API Key 开始使用”的引导。你也可以先点“稍后配置”,再通过左下角 设置 → 模型 打开模型页。

  1. 使用 DeepSeek 时,从 DeepSeek 官方平台 准备自己的 API 凭据,确认该 API 账户可以调用模型。
  2. 在 DeepSeek 卡片的“API 密钥”框粘贴凭据,点击“保存”。不必为了第一次对话展开自定义设置。
  3. 关闭设置,后面创建会话时选择已配置的模型。

DSH 0.1.2-rc.1 中文模型设置页,DeepSeek 卡片显示 API 密钥输入框与保存按钮

这是本站独立实验环境截图。下方 local-lab 是验证工具链使用的本地模拟提供方,正常使用 DeepSeek 不需要添加它,也不要照抄它。

保存后是否能调用,要用真实请求检验;显示“已保存”不是完整验收。页面里的模型名称以你的版本和提供商目录为准,不要硬填其他教程里的旧模型 ID。具体账户开通和费用以平台当前说明为准,网页聊天登录状态不能代替 API 凭据。

6. 选择工作区与会话模式

回到主界面,点击“选择工作区”或侧边栏“添加工作区”,选择第 2 步解压出的目录。选择包含 budget.mjs 的文件夹,而不是下载目录或单个文件。不同运行环境可能调用系统目录选择器,也可能提供目录浏览界面。

使用“标准模式”开始这个练习。先保留“工作区内修改”权限;如果你只想阅读,先用“仅可查看”,真正修改前再通过当前会话的 /permission 切换。

**成功标志:**会话中有选中的工作区、可用模型和可输入的消息区域。输入框仍提示“选择工作区”时,模型设置再正确也不能代替这一步。

7. 先确认能读到练习文件

发送下面的提示,不要一次就让它全面重写:

这是一个独立练习项目。
请只阅读 README.md、budget.mjs 和 budget.test.mjs。
告诉我:项目要算什么,正确合计是什么,当前代码为什么可能算错。
本轮不修改文件,不安装依赖,也不执行命令。
请给出你实际读取的文件名作为依据。

**应该看到:**它解释 unitPriceCents 是单价、quantity 是数量,并指出合计缺少乘数量。过程区应有实际读取文件的工具记录,而不只是口头说“我读过了”。

如果它找不到文件,先核对工作区。如果提示 MISSING_CREDENTIALUNKNOWN_MODEL,进入 模型配置排错,不要重装整个 DSH。

8. 让它修复,但不允许修改测试

理解无误后发送:

现在只修改 budget.mjs:计算每项单价乘以数量后的合计。
不要修改 budget.test.mjs、README.md、task.txt,不要新增依赖。
修改后运行 node --test budget.test.mjs。
最后报告改动内容,以及真正执行过的测试结果。
如果工具执行被拒绝或无法运行测试,请明确说明,不要声称通过。

是否出现审批取决于当前策略和操作。**不是每次 edit 都会弹窗。**如果出现请求,检查它指向练习目录、修改目标是 budget.mjs、测试命令符合要求,再决定是否允许;范围不符就拒绝并让它重新提出方案。

9. 你亲自验收,不依赖聊天结论

新开一个终端,再进入相同练习目录,运行:

node --test budget.test.mjs

现在应为:

tests 3
pass 3
fail 0

然后用文本编辑器打开 budget.mjs,计算核心应该等价于:

sum + item.unitPriceCents * item.quantity

比对原练习包,确保测试文件没改、断言没删,其他文件也未被修改。三项测试验证的是本练习规定的整数价格和数量场景,不等于覆盖所有财务规则。

至此你完成了“启动 → 模型配置 → 工作区 → 读取 → 修改 → 独立检查”的闭环。想理解为何文件内容需要回到模型,接着看 一次请求如何继续成多轮工具调用

10. 停止、下次继续与重新练习

回到运行 DSH 的终端按 Ctrl+C,等待进程退出。关闭网页标签不等于停止服务。下次进入同一目录,用相同命令启动;是否还能看到旧会话取决于是否使用同一个 DSH home,不要为解决普通故障随意删除它。

想从头练习,解压到新的文件夹即可,不必删除配置或撤销 API Key。想严格避免影响自己现有 DSH 环境,可按 独立配置目录做法 再开一套实验 home。

完成后应该留下这三样东西

  • 一份修复后的 budget.mjs,修改范围明确。
  • 一次你亲自运行得到的 3 pass / 0 fail 结果。
  • 一段能解释“错误在哪里、为什么这样改”的文字。

你可以下载 本站工具链验证摘要 对照。摘要中的模型是本地脚本模拟器,不能作为真实 DeepSeek 模型成功率或能力的证明。

官方资料

版本和参数,以这些来源为准

本文按实际任务重写,快速变化的信息仍应在操作前回到官方页面核对。

常见问题

继续操作前,先确认这些边界

需要先安装 pnpm 或 Git 吗?

本文使用 npm 发布包和无依赖练习,不需要 pnpm 或 Git;源码开发和插件管理是另外的路径。

第一次测试失败,是环境没装好吗?

本练习故意保留计算错误。初始预期是一项通过、两项失败,修复后才是三项通过。

为什么不能只打开 127.0.0.1:3080?

以终端实际完整地址为准;本站版本启动地址带访问 token,初次访问不应省略,也不能公开分享。

继续学习

按当前任务继续推进