博客

DeepSeek Harness 安装教程:一条命令跑起 Agent 框架

快速回答

DeepSeek Harness(dsh 是 DeepSeek AI 开源的 agent harness——智能体框架,采用「一切皆插件」的架构,由 Cordis 驱动,MIT 许可证。目前处于开发者预览阶段,迭代很快,未来会有破坏兼容性的变更。

安装只需要 Node.js。最省事的启动方式是:

bash
npx @deepseek-ai/dsh web

这条命令会拉取并启动 Web UI,默认地址 http://127.0.0.1:3080。想跑在 DeepSeek V4 Pro / Flash 上(包括每天 200 次的免费档),把 API Key 和 Base URL 指向 TeamoRouter 即可,下面逐步说明。

什么是 DeepSeek Harness

先说清楚它是什么、不是什么。行业里已经形成一个共识公式:

text
Agent = 模型 + Harness

模型是大脑——预测 token 的权重;Harness 是剩下的一切:agent 能调用的工具、能碰的文件系统与 shell、子代理之间怎么传递信息、上下文怎么存取,以及最关键的一点——什么时候停下来。裸模型本身不擅长记忆、执行代码和工具调用,Harness 负责把聊天模型变成能真正改代码、跑命令的「工人」。

DeepSeek Harness 的独特之处在于它的架构:一切皆插件。文件系统、shell、模型适配器、Web UI、子代理,都是可插拔的 Cordis 插件。这带来两个好处:一是你可以按需裁剪 agent 的能力面(比如只给终端 + 文件操作,不给网络),二是换一个 provider(例如把模型从官方 API 切到 TeamoRouter)不需要动其他任何东西。

前置条件

  • Node.js:任何近期版本即可(npx 需要)。从源码构建则需要 pnpmgit
  • 一个可用的模型后端:DeepSeek 官方 API Key,或者 TeamoRouter 的 Key(sk-teamo-...,可直接用 deepseek-v4-pro-free / deepseek-v4-flash-free 免费档)。

方式一:npm 一条命令启动(推荐)

bash
npx @deepseek-ai/dsh web

首次运行会下载包,之后启动 Web UI。浏览器打开 http://127.0.0.1:3080 就是控制台。这是最省事、也最贴近「日常使用」的姿势——不克隆仓库、不编译。

想让 agent 真正跑起来,需要配置模型后端。DeepSeek Harness 通过环境变量读取模型配置,核心两个:

bash
export DEEPSEEK_API_KEY="sk-teamo-你的Key"
export DEEPSEEK_BASE_URL="https://api.teamorouter.com/v1"

把这两行写进 shell 配置(~/.zshrc~/.bashrc),或启动命令前临时 export,dsh 就会把模型请求发到 TeamoRouter 的 OpenAI 兼容端点,而不是 DeepSeek 官方 API。完整的接入说明见《DeepSeek Harness 接入 TeamoRouter》。

方式二:从源码构建

想自己改、跟进最新代码,或给插件生态做贡献时用:

bash
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web

pnpm dsh webnpx @deepseek-ai/dsh web 是同一个命令,只是前者用本地源码、后者用 npm 发布版。源码方式适合开发者预览阶段——因为上游迭代快,main 分支常常领先发布版几个小版本。

启动后:Web UI 里能看到什么

http://127.0.0.1:3080 是一个本地 Web 控制台,主要能力:

  • 会话管理:新建 / 切换 / 重命名会话,多会话并行。
  • 模型选择:在已配置的模型之间切换(例如 deepseek-v4-prodeepseek-v4-flash)。
  • 工具面板:agent 实际能调用的工具清单——bash、文件读写、子代理、Web 搜索等。
  • 目标(Goals):把长任务拆成带状态的目标,暂停 / 恢复 / 标记完成。

一个常见的误解是把 dsh 当成「又一个聊天窗口」。它其实是agent 运行时的前端:你给一个目标,agent 在工具里循环直到完成,UI 只是观察和干预的入口。

一个最小可运行示例

配置好 DEEPSEEK_API_KEY / DEEPSEEK_BASE_URL 后,在 Web UI 里给 agent 这样一个任务:

text
查看当前目录,找到 README,用一句话总结它的第一段,写到 /tmp/summary.txt

dsh 会依次调用 bash(列目录、读文件)、读写文件工具,最后汇报结果。这就是「Harness 把模型变成工人」的最直观体验。

常见疑问

Q:dsh 和 DeepSeek 官方 API 是绑定的吗? 不是。dsh 是模型无关的框架,通过 DEEPSEEK_BASE_URL 可以指向任何 OpenAI 兼容端点。用 TeamoRouter 时,它既能跑 DeepSeek V4 系列,也能在一个 key 下路由 Claude、GPT、Gemini。

Q:开发者预览意味着什么? 意味着接口和配置还会变,不建议在生产里依赖某个具体 API 细节。但对个人开发者、学习 agent 架构、以及尝鲜「便宜跑 agent」来说,现在已经完全可用了。

Q:装好了但 agent 不动 / 报鉴权错误? 九成是环境变量没生效。先 echo $DEEPSEEK_API_KEY 确认 Key 在;确认 DEEPSEEK_BASE_URL/v1(OpenAI SDK 需要);再确认 Key 是 sk-teamo- 开头、无多余空格。

Q:免费额度怎么算? TeamoRouter 的 deepseek-v4-pro-freedeepseek-v4-flash-free 各 200 次/账号/天,按请求数(一次完整 turn)计,不是按 token。agent 循环里每次工具往返算一次请求,具体见《deepseek-v4-pro-free 每天 200 次怎么算》。

想低成本跑通 agent,直接注册 TeamoRouter 拿到 Key,把 DEEPSEEK_BASE_URL 指过去,就能在 dsh 里免费跑 DeepSeek V4 Pro。

准备好接入了吗?登录控制台 · 购买额度 · 创建 API Key,三步即可开始。
DeepSeek Harness 安装教程:一条命令跑起 Agent 框架 · TeamoRouter