DeepSeek Harness 是什么:它不是模型,是 Agent 的运行框架
原文链接:DeepSeek Harness 是什么:它不是模型,是 Agent 的运行框架
被各种 Agent 框架刷了一年屏,发布会都惊艳,真塞进自己的流程里,又总觉得差点意思。这种疲惫,我猜你也有。
DeepSeek 8 月 13 日晚上把 Harness 开源了。我想弄清楚的就一件事:它是不是又一个看起来很美的 demo。翻完仓库、官方文档和配套论文,我的判断是:不是,起码方向上不是。
这篇先讲清楚它是什么、能干什么、骨架长什么样,以及我为什么敢下这个判断。
一、它发的不是模型,是一套 Agent 运行框架
很多人看到"DeepSeek 又发东西",第一反应是"又发模型了"。这次真不是。
DeepSeek Harness(命令行叫 dsh)是一套开源的 Agent 运行框架,官方自己给过一个很直白的公式:
模型 + Harness = Agent
模型负责想,Harness 负责做:工具调度、任务推进、执行到底、轨迹记录这些脏活累活,都归它。直接对标的,是 OpenAI 的 Codex 和 Anthropic 的 Claude Code。

几个事实我对着仓库和文档核过,后面都绕着它们聊:
- 8 月 13 日晚发布,版本 v0.1.0,官方定位是开发者预览;
- MIT 协议,能改、能再分发、能商用,不用给 DeepSeek 交钱;
- 本地优先。一条
npx @deepseek-ai/dsh web就能在本机起 Web UI,默认地址 127.0.0.1:3080,数据都在本地; - 不绑模型。官方文档里的目录提供方有 Anthropic、OpenAI,AWS Bedrock、Google Vertex、Azure、Codex;公司网关、自建服务器还能走自定义的 OpenAI 兼容端点。
有一点得说在前面:官方明讲,现在还在快速迭代,后面会有破坏兼容的改动。所以它今天更适合拿来评估、改装、参与生态,而不是直接当生产依赖。这个定位我后面会反复提。
再说说发布当天的背景。8 月 13 日晚上 DeepSeek 其实连发了三张牌:V4 Pro 正式版转正(1M 上下文、384K 输出,Agent 基准明显上调),API 涨价预告,然后才是 Harness 开源。把三张牌放一起看,路线很清楚:模型继续卷,但"入口"也要自己握。过去两年 DeepSeek 赢在"同样的活花最少的钱",可开发者每天打开的是 IDE 和 Agent,这些入口长期握在 Claude Code、Cursor、Copilot 手里。Harness 这一手,本质是把自己的模型接到自己定义的执行层上。这个动机,比任何一个功能清单都更能解释它为什么存在。
二、它到底能干什么
把 Harness 跑起来,一个 Agent 能做的事,基本覆盖了现在编程类和办公类 Agent 的那套工作流:
- 读写改文件,跨多个文件做改动;
- 在受控 Shell 里跑命令,不用你一步步敲;
- 多步规划,把复杂目标拆成能执行的步骤;
- 用技能(Skills)把子任务派给子 Agent;
- 敏感动作前走审批和权限检查;
- 存会话、留记忆,跨步骤跨会话接着聊;
- 一个会话里拉多个 Agent 协作,拆任务、派活、汇总;
- 管理长上下文,连本地文件和联网检索;
- 每一步"模型看到了什么、调了什么工具、拿到什么结果"都被记下来。
一句话:它把"让 AI 可靠地把复杂活干完"这件事,从一堆零散脚本,收成了一个有运行环境、有约束规则、有反馈机制的工程基础。
发布后社区反应很快。我盯了下 GitHub 星标:14 号下午 4.5 万,到 17 号已经十四万出头。三天这个量级,在开源项目里算现象级了。
还有个细节我单独拎出来说。7 月 31 日 DeepSeek 发 V4 Flash 正式版时,更新日志里写得很明白:公开的 Code Agent benchmark,用的测试框架正是"即将发布"的 Harness 极简模式。也就是说,正式开源之前,Harness 已经在自己家里跑了好一阵了。这种"先内部用熟了再端出来"的节奏,我自己是加分的。
三、技术骨架:官方叫它插件树,我归纳成八层
Harness 真正有意思的地方不在功能清单,而在这些功能怎么被组织。官方架构文档把运行中的 dsh 描述成一棵"启动时按有序层级拼出来的插件树"。我按文档归纳,从底往上能分成八层,每一层都是可独立替换的插件:

| 层 | 主要职责 |
|---|---|
| 体验层 | Web UI、会话、设置 |
| 编排层 | 配置、捆绑、补丁 |
| 执行层 | 文件、Shell、沙箱 |
| 控制层 | Agent 循环、步骤 |
| 状态层 | 会话日志、重放 |
| 工具层 | 工具注册、策略 |
| 推理层 | 模型适配器 |
| 框架层 | Cordis 内核 |
底层是 Cordis,一个只干"插件系统"一件事的元框架,负责插件的加载、卸载和依赖关系。它上面的所有具体能力,模型、工具、会话、沙箱,都是挂上去的 Cordis 插件,插件之间靠服务和事件协作,怎么组合由配置决定。
有两个设计,对开发者特别实用,我单独拎出来。
配置即组合。 一个 profile 是一份具名的插件组合清单,官方自带 web 和 headless 两套模板;一个 bundle 是把"配置加它挂的代码"打包在一起的发布单元;层与层之间能叠补丁,上层能盖下层的配置。想看清当前环境到底装了什么,官方给了命令:
| dsh --profile web --dump-config |
它打出来的是这台机器真正会启动的插件树,不是某一段孤立配置。我改配置前都会先跑一下,免得改完才发现盖掉了什么。
四种预设模式。 同一套运行时,靠加载不同插件组合,直接变出四种开箱即用的形态:
| 模式 | 用途 |
|---|---|
| 标准模式 | 通用开发全流程 |
| 代码模式(也叫 PTC) | 把工具包装成代码 API,模型写一段 TypeScript 把十几步操作串起来,中间数据不进上下文,省 token |
| 极简模式 | 只留持久 Shell 和文本编辑器,跑模型基准 |
| 创造模式 | 运行时自检、临时挂插件,做自定义 preset |
极简模式只留持久化 Shell 加文件编辑器,目的很单纯:把基础设施剥干净,在最小环境里测模型自己的裸能力。DeepSeek 自测 V4 Flash 用的就是这一档,这也是我判断"这不是赶出来的东西"的一个佐证。
四、现在适合谁折腾
按我自己的判断,四类人可以分四档:
- 想先睹为快的开发者:装个 Node.js,
npx @deepseek-ai/dsh web一条命令就能起,十分钟能摸个大概。这类人建议现在就玩,反正不吃亏。 - 正在做 Agent 框架选型的团队:把它当评估对象放进隔离环境跑两周,重点看事件流重放、工具流水线这两块,别急着谈替换。选型期多一个参照物,永远不是坏事。
- 想参与生态的插件作者:接口已经全开,dsh-plugin 话题下现在最缺的是成型的插件,早期入场的曝光红利是实打实的。
- 想直接上生产的:再等等。等官方把破坏兼容的改动收完、生态里长出几个被验证过的核心插件,再谈接入不迟。我自己维护生产链路的习惯是,新东西先放隔离环境跑两周,跑明白了再谈接入。按这个标准,Harness 现在正好处在"跑两周"的阶段。
五、我的判断
翻完这一圈,我最想说的其实是两句话。
第一,它不是一个又一个美丽的 demo,方向上是把 Agent 从"做好的产品"往"可组装的运行时"挪了一大步。这套东西的价值不在今天能用得多顺手,而在它把 Agent 的每一个零件都标好了接口,等着社区往上挂东西。我自己的体会是,这类框架最难的不是第一个插件,是第一个敢于相信插件边界的人。
第二,今天别急着上生产。预览版、接口会变、生态刚起,这个阶段把它当评估对象和改装底板,比当生产依赖划算得多。
下一篇,我会拆"一切皆插件"这句话到底解决了什么,很多人的理解其实停在表面。觉得有用的话,顺手点个关注,下一篇发布时不会错过。
【欢迎访问我的个人博客主页,这里有我的精选文章和AI大模型日报专栏。👇)
本文用到
[1]: DeepSeek Harness 官方仓库与文档. github.com/deepseek-ai/deepseek-harness
[2]: DeepSeek Harness 官方产品页. deepseek.com/harness/en
[3]: 论文《A Programming Paradigm for Spatiotemporal Composability》. github.com/cordiverse/paper
更多推荐
所有评论(0)