DeepSeek Harness (dsh):它是什么以及如何运行

DeepSeek Harness 是由 DeepSeek AI 构建的开放代理层,于 2026 年 8 月 13 日以 MIT 许可证发布。它既不是模型,也不是又一个编码代理——它是将任何模型转变为可工作代理的脚手架。官方产品页面用一个简洁的公式直接道出了这一点:Agent = Model + Harness。

架构图:模型模块加上具有分层能力的 Harness 模块,等于一个配有终端和文件树的可工作代理

DSH Field Guide 是一个独立的社区资源,旨在为日常部署和使用 DeepSeek Harness 的用户提供文档。本站与 DeepSeek 无关联、未获其背书,也不由其运营。DeepSeek 和 DeepSeek Harness 均为各自所有者的商标。

DeepSeek Harness 到底是什么

DeepSeek Harness——命令名称 dsh——由 DeepSeek AI 开发,以 TypeScript 编写,采用 MIT 许可证,口号为”一切皆插件”。其 GitHub 仓库 deepseek-ai/deepseek-harness 截至 2026 年 9 月 3 日已收获 210,610 个 Star 和 24,639 个 Fork,增长速度之快堪称开源史上记录最快的项目之一。

模型是代理的灵魂。Harness 让代理理解环境、使用工具,并在真实条件下持续工作。——DeepSeek,官方 DeepSeek Harness 产品页面

这句话概括了整体设计意图。DeepSeek Harness 本身不是语言模型——模型从外部接入,可以是第三方或本地模型。它也不只是另一个编码代理:Claude Code 和 Codex 可以作为子代理挂载在其内部,而非与之竞争。它同样不是基准测试框架——EleutherAI 的 lm-evaluation-harness 是一个独立的 Python 项目,用于对模型评分,并不存在名为 deepseek-ai/DeepSeek-Harness、采用 pip install -r requirements.txt 安装方式的仓库。真正的 dsh 运行在 Node.js 上,通过 npx 安装。

Agent = Model + Harness 公式

除模型训练本身之外的所有内容都由 DeepSeek Harness 承载:任务规划、工具调用、代码执行、上下文管理、会话、权限以及交互界面。DeepSeek 的招聘材料将这一层直白地描述为模型控制层——负责管理上下文、调用工具、读写文件、运行终端并对结果进行自我修正。

dsh 不是什么

对于刚接触该项目的人,有三个常见误解需要澄清:

  • 不是语言模型。DeepSeek Harness 通过适配器连接模型;该模型可以是 DeepSeek 自家的,也可以来自完全不同的提供商。
  • 不只是编码代理。真正的 Claude Code 和 Codex CLI 可以作为子代理在其下运行。
  • 不是基准测试框架。lm-evaluation-harness(EleutherAI)是一个用于对 DeepSeek 模型打分的 Python 项目,并非 DeepSeek 的产品——两者是只有名称中共享一个词的不相关代码库。

一切皆插件

DeepSeek Harness 构建于 Cordis 插件运行时之上,”一切皆插件”的口号绝非营销噱头——模型、工具、技能、会话、沙箱、文件系统、主循环本身、编排层和 UI 全部以插件形式实现。packages/ 目录包含超过 200 个工作区包,插件可在运行时热卸载,无需重启进程。

与普通代理框架的区别

典型的代理框架是一个主循环加上一堆手动接入的能力;添加新能力意味着修改主循环、重建提示词组装逻辑,并重新注册工具。DeepSeek Harness 将主循环本身也做成了插件,因此扩展时只需在现有插件旁边挂载新插件,而不必修改核心代码。

能力接缝

每个可替换的能力都被拆分为三个角色:定义、实现和使用方。替换一个实现会在所有使用该能力的地方改变产品行为,无需 fork 仓库。

Cordis:运行时核心

Cordis 是 DeepSeek Harness 底层的插件运行时,自我描述为实现”时空可组合性”的框架。其设计记录于预印本 arXiv 2608.25512《时空可组合性编程范式》,这篇 88 页的论文由石一帆、张伟和崔天一于 2026 年 8 月 13 日发表。

该模型由两个特性定义。时间可组合性意味着卸载一个组件会完全撤销它所产生的每一个副作用。空间可组合性意味着组件声明其依赖关系并以响应式方式组合在一起。DeepSeek 将 Cordis 直接内嵌到 DeepSeek Harness 中,而不是作为外部依赖包引入。

对比图:左侧是能力硬编码在固定主循环中的典型框架,右侧是 dsh 中可拆卸的插件卡挂在主干上的架构

Cordis 本身早于 DeepSeek Harness 存在——它是开发者石一帆(网名 Shigma)的独立开源项目,自 2019 年起便作为 Koishi 聊天机器人框架的插件核心使用。”卸载插件必须撤销其所有操作”这一规则正是从那个早期项目中提炼而来的。

只追加的会话日志

每次运行都会写入一个只追加的日志:系统提示词、推理轨迹、工具调用及其结果、子代理规划,以及每一次上下文注入。恢复、分叉、搜索和回放都通过读取该日志来实现,而不依赖单独的状态存储。

只追加会话日志的界面示意图:一条不断增长的条目轨迹,其中一条分叉出一个分支,侧边栏中展示实时统计数据面板

Web UI 展示了大多数代理运行时完全隐藏的统计数据:每秒 Token 数、缓存命中率、轮次计数和已用运行时间。该项目在 Hacker News 上的讨论获得了 747 个赞和 314 条评论,会话日志的透明度是讨论中最受赞誉的细节之一。

四种模式:标准、代码、最小、创作者

模式功能说明适用场景
Standard(标准)完整工具集,通用代理日常任务
Code(代码)通过 Code Mode SDK 暴露工具;模型编写 TypeScript 程序复杂多步骤自动化
Minimal(最小)仅提供 bash 和 str_replace 风格编辑器公平的模型基准测试对比
Creator(创作者)自行组装预设构建自定义配置文件或套件

一条命令快速启动

最快的启动方式只需一行命令:

npx @deepseek-ai/dsh web

该命令会在 http://127.0.0.1:3080 启动 Web 界面并在浏览器中打开;在无头服务器上可加 --no-open 跳过浏览器启动。需要 Node.js ^22.19.0 或 ≥ 24.0.0,从源码构建则需要 pnpm 11.7.0:

  1. git clone https://github.com/deepseek-ai/deepseek-harness.git
  2. cd deepseek-harness
  3. pnpm install
  4. pnpm run build
  5. pnpm dsh web
  6. 在将代理指向真实项目之前,请先阅读 SAFETY.md——README 中有明确要求。
  7. 在提示时填入 API 密钥;密钥存储于 $DSH_HOME/.credentials.yaml,并在界面中以脱敏形式显示。

三步完成首次运行

打开 Settings,进入 Models,粘贴 API 密钥——路由立即激活,无需重启服务器。添加并选择工作目录;在选择目录之前,任务输入框将保持禁用状态。然后发送任务。超出已授权权限范围的任何操作都会在执行前弹出确认提示。

其他入口

除 Web UI 外,DeepSeek Harness 还提供 TUI(dsh --profile tui)、用于脚本和 CI 的无头模式(dsh --profile headless "task description")、Python SDK(pip install deepseek-harness-sdk,内置运行时,无需系统安装 Node.js——Windows x64 构建已在 0.1.2-rc.1 中加入),以及用于直接嵌入其他应用的 TypeScript SDK。

模型、提供商与费用

DeepSeek Harness 本身免费,采用 MIT 许可证——唯一的持续成本是模型的 Token 用量。DeepSeek API 提供 deepseek-v4-flashdeepseek-v4-pro 和实验性 deepseek-v4-flash-vision-exp,均支持 1M Token 上下文窗口,输出最多 384K Token。新定价于 2026 年 8 月 16 日 16:00 UTC 生效,将费率分为高峰期和非高峰期(高峰期:UTC 周一至周五 01:00–04:00 和 06:00–10:00)。

v4-flashv4-pro
输入,缓存命中,非高峰期$0.007 / 1M$0.022 / 1M
输入,缓存未命中,非高峰期$0.22 / 1M$0.66 / 1M
输入,缓存未命中,高峰期$0.44 / 1M$1.32 / 1M
输出,非高峰期$0.66 / 1M$1.98 / 1M

完整价格详见 DeepSeek API 定价页面。对于希望零 API 费用的用户,@deepseek-ai/dsh-llm-pi-ai 适配器可将 DeepSeek Harness 连接到第三方和本地模型后端,包括 Ollama、vLLM、LM Studio、llama.cpp 以及任何兼容 OpenAI 的网关——完全本地运行的免费模型同样适用于相同的 dsh 配置。

Claude Code 和 Codex 作为子代理

一个不太显眼的设计选择:DeepSeek Harness 可以委托真正的第三方编码代理,而不是取而代之。@deepseek-ai/dsh-subagent-claude-code 包通过官方 Agent SDK 将真实的 Claude Code CLI 作为子进程启动,@deepseek-ai/dsh-subagent-codex 则通过 app-server --stdio 协议对 Codex 做同样的事。每个子代理保留其原生配置和授权——DeepSeek Harness 不会拦截或覆盖这些工具的登录方式。自 0.1.2-rc.1 起,每个子代理使用的模型可以独立于父会话单独配置。

发布时间线与当前状态

DeepSeek Harness 的能力最初于 2026 年 7 月 31 日随官方 DeepSeek V4 版本悄然推出,彼时既无独立产品,也无公开源代码。正式发布于 2026 年 8 月 13 日:UTC 11:56 公开仓库上线,@deepseek_ai 发文宣布”DeepSeek Harness v0.1 现已进入开发者预览阶段”,DeepSeek-V4-Pro-0813 正式全面开放,Cordis 预印本同日发布于 arXiv。2026 年 8 月 14 日是另一个值得记住的日期:这是公开仓库历史中可见的最早提交日期,因此部分报道将其描述为代码开放之日——但仓库本身创建于 13 日。

五个里程碑的发布时间线:7 月 31 日 V4、8 月 13 日 v0.1、8 月 14 日首次公开提交、8 月 21 日 v0.1.1、9 月 3 日 v0.1.2

此后项目几乎每天都在发布新版本:0.1.1 于 8 月 21 日随 DeepSeek-V4-Flash-Vision-Exp 一同发布,0.1.2-rc.1 于 9 月 3 日跟进。README 以大写字母警告将会有不兼容的破坏性变更,仓库中的 Issues 和 Pull Requests 均已关闭——反馈请通过 GitHub Discussions 或 Discord 提交。

下一步去哪里

本指南中 DeepSeek Harness 的每个部分都有独立页面,可按任意顺序阅读。

如果只想快速跑起来,从安装 DeepSeek Harness 开始;如果使用的是 Windows,请先阅读 DeepSeek Harness on Windows——几乎所有已知的安装失败都发生在 Windows 上。遇到问题时,错误指南按照人们实际搜索的确切措辞整理了各类故障。

想了解运行原理,GitHub 仓库解读详细说明了 monorepo 的实际内容,Cordis 覆盖了底层插件内核。在此基础上,插件指南展示了能力是如何添加、替换和发布的,子代理则涵盖了几乎无人写到的部分——dsh 将 Claude Code 和 Codex 作为子进程运行。

关于决策而非机制的内容:定价与 Token 经济学深入分析了 2026 年 8 月 API 价格调整对”比 Claude Code 更便宜”这一论点的影响,DeepSeek Harness 与 Claude Code 对比从两个方向进行了诚实的比较,本地模型运行为不想将代码发送到任何地方的用户介绍了 Ollama、vLLM、LM Studio 和 llama.cpp 的使用方式。如果你好奇谁在开发这个项目,团队页面汇集了关于 DeepSeek 内部负责该项目团队的公开信息。

常见问题