DeepSeek Harness 第一次使用(Web UI)
本章从启动 Web UI 开始,完成配置模型、选择工作区和首次文件分析。桌面版用户可直接阅读桌面版实战,无需执行本章的启动命令。
1. 启动 Web UI
先确认 Node.js 24.9 或更高版本,然后任选一种方式启动:
node -v npx @deepseek-ai/dsh@latest web
也可以全局安装后启动:
npm install -g @deepseek-ai/dsh dsh web
保留终端进程,打开它打印的访问地址。默认通常是 http://127.0.0.1:3080。如果端口冲突:
dsh web --port 8080 # 或让系统选择空闲端口 dsh web --port 0
首次访问如出现预览版声明,阅读后继续。页面能打开只说明本地服务启动成功,还需要完成下面两步才能执行任务。
2. 配置模型
打开设置 → 模型,在 DeepSeek 卡片中填写并保存自己的 API 密钥。申请入口:DeepSeek API 平台。第三方服务和自定义 API 参见模型配置。

截图来自本机桌面版,共享的模型设置操作可供 Web UI 参考;账号登录入口可能不同。保存密钥后无需重启服务。
3. 添加并选中工作区
在终端创建一个演示目录,放入 README.md:
mkdir -p ~/runoob-harness-demo printf '# RUNOOB Demo\n这是一个 Harness 测试项目。\n' > ~/runoob-harness-demo/README.md
点击选择工作区,添加并选中这个目录。全新的 Web UI 不会自动选中工作区,启动 dsh 时所在的目录只是默认文件系统位置。
如果浏览器与服务端不在同一台电脑,工作区路径指向运行 dsh 的服务端文件系统。
4. 选择预设、模型和访问模式
| 选择项 | 首次使用建议 | 作用 |
|---|---|---|
| Agent 预设 | 标准模式 | 决定会话组合哪些工具和能力 |
| 模型 | 选择已配置提供方下的可用模型 | 决定实际处理请求的模型 |
| 访问模式 | 检查当前权限,先做只读任务 | 决定沙箱和审批策略;与 Agent 预设相互独立 |
PTC 模式用于 TypeScript 工具编排;极简模式用于精简工具或基准测试;创造模式用于运行时探索和插件创作。新手先跑通标准模式即可,切换预设不等于改变文件权限。
read-only 是限制文件写入的沙箱策略,仍可运行允许的读取命令;workspace-write 允许写入工作区、明确额外目录和后端临时区域,不等于禁止读取工作区外所有文件。网络与进程可见性也不由这两个名称保证。详见沙箱与审批。
5. 发送第一个任务
请读取当前工作区的 README.md,概括项目用途。 这次只读取,不创建、修改或删除文件。 请说明实际读取了哪个文件。
检查工具记录中是否出现 README.md,以及最终回答是否与文件内容一致。提示词中的只读要求是任务约束,技术上的写入边界仍由当前权限策略决定。
排错与完成检查
| 现象 | 先检查 |
|---|---|
| 页面无法打开 | 终端进程是否仍在运行;访问端口是否与输出一致 |
| 无法发送消息 | 是否已选中工作区和有效模型 |
| 401 或缺少凭据 | 密钥是否属于当前提供方,API 地址和协议是否正确 |
| 等待审批 | 展开请求,检查命令、目标路径和申请原因,再决定是否放行 |
| 文件内容对不上 | 会话实际工作区是否选错;查看工具读取的路径 |
完成标志:Web UI 能打开、工作区已选中、模型能回复、工具确实读取了 README.md。
