DeepSeek Harness 入门:从安装到第一个 Agent 任务

DeepSeek Harness 刚开源时,我最想弄清楚的是:它和普通的 AI 聊天窗口到底有什么区别?

折腾一轮之后,我觉得可以这样理解:聊天应用主要负责回答问题,Harness 则让模型进入真实工作区干活。它能读写文件、运行命令、维护计划,遇到敏感操作再向用户申请批准。

下面从零开始,跑通官方 Web UI、模型配置和工作区,再交给 Agent 一个能验收的小任务。

一、DeepSeek Harness 是什么?

DeepSeek Harness,命令名为 dsh,是 DeepSeek AI 开源的 Agent Harness。它当前处于 Developer Preview,更新速度很快,也可能出现不兼容改动。

最值得先理解的设计叫 Everything is a Plugin。模型适配器、工具、会话日志、Agent Loop、沙箱、审批策略和 Web UI 都是可组合的插件。

所以,DSH 并不是一个形态固定的 Coding Agent。官方 Web UI、一次性 Headless 任务和社区桌面端,底下跑的都可以是同一套运行时。

text 复制代码
DeepSeek Harness
├── Model:连接 DeepSeek 或其他模型提供方
├── Agent Loop:组织模型请求和工具调用
├── Tools:文件、Shell、任务等能力
├── Session:保存可恢复、可回放的事件日志
├── Policy:沙箱与操作审批
└── UI:Web、Headless 或社区桌面端

二、开始前需要准备什么?

你需要:

  • 一台 macOS、Windows 或 Linux 电脑;
  • Node.js;
  • 一个可用的 DeepSeek API Key;
  • 一个允许 Agent 读取和修改的测试项目。

官方 README 只要求先安装 Node.js。当前源码仓库的运行环境声明为 Node.js ^22.19.0 或 >=24.0.0。为了减少兼容问题,建议直接使用当前 Node.js 24 版本。

先确认环境:

bash 复制代码
node --version
npx --version

第一次别拿重要项目试手。复制一份仓库,或者先切一条临时 Git 分支,后面检查和回滚都省心。

三、启动官方 Web UI

进入准备使用的项目目录,然后运行:

bash 复制代码
cd /path/to/your-project
npx @deepseek-ai/dsh web

DSH 默认在本机启动:

text 复制代码
http://127.0.0.1:3080

调用命令时所在的目录会成为默认工作区位置。不过新版 Web UI 不会自动选中工作区,后面仍需要手动添加并确认。

如果默认端口被占用,可以指定其他端口:

bash 复制代码
npx @deepseek-ai/dsh web --port 3081

DSH 仍处于预览阶段。如果你希望复现稳定环境,可以固定版本:

bash 复制代码
npx @deepseek-ai/dsh@0.1.0-rc.6 web

四、配置 DeepSeek 模型

打开 Web UI 后,进入 设置 → 模型,在 DeepSeek 卡片中填写 API Key 并保存。

模型配置保存后会在下一次请求生效,不需要重启服务。

官方实现不会把明文密钥重新发送给设置页面。密钥保存在 $DSH_HOME/.credentials.yaml,设置文件只保存凭据引用。

如果你使用 OpenAI 兼容网关、自建服务或其他提供方,可以选择 添加自定义提供方,填写 Provider ID、Base URL、协议、凭据和模型。

这里容易踩一个坑:Provider ID 会被会话、默认模型和凭据引用。显示名称可以改,Provider ID 保存后就别随便动了。

五、选择工作区

返回主界面,点击 选择工作区 ,添加刚才启动 dsh 时所在的项目目录,然后选中它。

选中工作区之前,输入框是不可用的。不是页面坏了,DSH 只是在等你先圈定 Agent 可以操作的项目。

新会话默认使用 workspace-write 权限模式。文件写入和 Shell 产生的文件改动会被限制在工作区及平台临时目录;读取、网络访问和进程可见性并不等同于完全隔离。

所以,有沙箱也别把整个主目录扔给 Agent。工作区选得越小,出问题时越容易收拾。

六、完成第一个任务

第一次别输入"帮我把项目全部优化一下"。这种任务没有明确终点,结果很难验收,还容易顺手改出一堆无关内容。

先用一个只读任务认识项目:

text 复制代码
请阅读这个仓库,不要修改文件。

输出:
1. 项目的主要入口;
2. 核心模块及职责;
3. 本地测试命令;
4. 目前最值得处理的一个小问题。

确认它理解项目后,再给出一个边界明确的修改任务:

text 复制代码
修复刚才发现的问题。

要求:
- 修改前先说明原因和涉及文件;
- 只改解决问题所需的最少文件;
- 完成后运行相关测试;
- 最后列出修改摘要和测试结果。

Agent 可以读取和编辑文件、运行命令、维护计划或委派工作。当某项操作超过当前权限策略时,Web UI 会先请求你的批准。

七、我会这样给第一个任务

1. 先调查,再修改

先让 Agent 解释入口、依赖和测试方式。确认它没有认错项目,再让它动手。

2. 把验收条件写进任务

"优化登录功能"几乎没法验收。换成"修复刷新后登录状态丢失,并补一条覆盖刷新场景的测试",任务边界立刻清楚很多。

3. 一个会话只解决一类问题

已发送过请求的会话会保留自己的模型和历史。完全无关的任务最好开启新会话,避免旧上下文干扰判断。

4. 让 Agent 汇报验证证据

别只问"修好了吗"。让它把执行过的命令、测试结果和没验证的部分一并贴出来。

5. 关键节点及时看 Git Diff

Agent 能改文件,不代表那些修改都该收下。每完成一个小目标就看一次 diff,远比最后面对一大坨混合改动轻松。

八、常见问题

npx 找不到

确认 Node.js 已正确安装,并重新打开终端。执行 node --version 和 npx --version,两个命令都应返回版本号。

输入框无法使用

先配置模型,再添加并选中工作区。默认模型指向已删除的提供方时,也需要重新选择模型。

出现 MISSING_CREDENTIAL

进入模型设置重新保存 API Key,或者检查配置引用的环境变量是否存在。

首次启动很慢

npx 首次运行需要下载 DSH 及其依赖,速度取决于网络和 npm Registry。完成缓存后,后续启动通常更快。

页面打不开或端口冲突

使用 --port 指定新端口,并确认终端中的 DSH 进程没有提前退出。

九、不想每次开终端怎么办?

官方目前提供 CLI、Web UI 和 Headless 运行方式。社区项目 DeepSeek Harness Desktop 用 Wails 和 Go 包了一层原生桌面窗口,负责启动 DSH、选择端口、显示日志和清理进程。

它没有重新实现 Harness,模型、会话、插件和 Web UI 仍来自官方 DSH。目前桌面版同样依赖本机 Node.js 与 npx,并且明确标注为非官方社区项目。

最新版还支持在可信局域网内扫码,用手机浏览器继续操作电脑上的 Harness 会话。

跑通以后

第一次使用,按这条路径走就够了:

text 复制代码
安装 Node.js
→ 在项目目录运行 npx @deepseek-ai/dsh web
→ 配置模型
→ 选择工作区
→ 先调查项目
→ 再执行一个有验收条件的小任务

走完一遍之后,你会发现 DSH 的重点确实不是"再做一个聊天窗口"。模型、工具、会话、权限和 UI 都能单独替换,这才是它和普通客户端拉开差距的地方。下一篇接着聊 Profile、Skill、MCP,以及我会怎样安排更长的任务。

参考资料

相关推荐
Python私教6 小时前
DeepSeek本地部署Ollama+知识库,附3个报错解决
人工智能·llm·deepseek
大模型真好玩7 小时前
大模型训练全流程实战指南实战篇(十六)——预训练数据集构建
人工智能·agent·deepseek
CODER03046 天前
ubuntu22.04部署完整deepseek局域网web服务全过程(RTX5090安装黑屏+web端多人并发)
pytorch·webui·ubuntu22.04·ollama·deepseek·rtx5090·自然语言模型
华科大胡子6 天前
DeepSeek Harness 开源贡献手记:从入门到合入主线
deepseek
Together_CZ7 天前
DeepSeek-V4.1-Flash:Pushing the Limits of KV Cache Compression——推动 KV 缓存压缩的极限
缓存·llm·compression·kv cache·deepseek·v4.1-flash·推动 kv 缓存压缩的极限
roamingcode7 天前
DeepSeek Harness 记忆召回插件的“PRD”设计拆解
agent·memory·deepseek·harness·dsh·dsh-plugin
前端小白乘风7 天前
VS Code 终于能连微信了!发现一个硬核开源神仙插件:WeChat AHP
微信·visual studio code·deepseek
今夕资源网8 天前
把 DeepSeek 网页版变成能操作本地项目的 AI Agent:Cuckoo Code 使用指南 GitHub开源
开源·github·deepseek
gs801409 天前
【大模型工程实践】LLM 提效降本指南:基于 Context Caching 与专属 Endpoint 的架构优化
deepseek·大模型缓存
ss2739 天前
DeepSeek Harness v0.1.6-alpha.2:文件审阅、Office 预览、插件管理,Web 端越来越像 IDE 了
deepseek·dsh