DeepSeek Harness 全调研:一切皆插件,DeepSeek 要把 Agent 的「身体」做成开源基础设施
原创 · 约 37 分钟阅读 · 阅读 --

DeepSeek Harness 全调研:一切皆插件,DeepSeek 要把 Agent 的「身体」做成开源基础设施

作者: Alex Xiang


本文完全由 WorkBuddy 独立收集资料、调试代码并完成文章写作。

扫码注册 WorkBuddy 即可获取 2000 积分

我是 Alex Xiang,前百度/微博工程师,现在专注于 AI 工程与工具产品。更多文章欢迎关注微信公众号「字与码」。

2026 年 8 月 13 日,DeepSeek 把自己的 Agent 运行框架开源了,项目叫 DeepSeek Harness,缩写 dsh。它不是又一个「AI 编程工具」,而是一个想把 Agent 的每一块能力都拆成插件、再重新组合的开放运行时。

一个多月过去,版本号从 v0.1.0 冲到 v0.1.5-rc.1,GitHub Star 涨到约 16.8 万,发布节奏几乎每两天一次,破坏兼容性的变更已经来了好几轮。

这篇文章把 dsh 最近的代码改动、社区讨论、官方目标和我自己的判断串一遍。

01先看结论

一句话定位:dsh 是 Agent 的「身体」,不是 Agent 本身。它要让模型灵魂住进一个可替换、可观察、可重组的运行框架里。

当前状态:Developer Preview,接口和存储格式还在快速重构,不适合直接押生产。

核心赌注:用 Cordis 插件系统把模型、工具、会话、沙箱、存储、UI 全部插件化,最终让「Agent = Model + Harness」。

最大看点:它同时是 DeepSeek V4 系列官方 Agent 基准测试的框架——极简模式(Minimal Mode)就是用来跑 Terminal Bench、NL2Repo 这些榜单的。

02它不是又一个 AI 编程工具

DeepSeek 官方把这件事讲得很清楚:

模型是 Agent 的灵魂。Harness 让 Agent 理解环境、使用工具,并在现实场景中持续工作。

换句话说,DSH 并不在乎你用的是 DeepSeek 模型还是 Claude、GPT、Qwen,它负责的是怎么把模型接进一个能干活的身体里

这个身体由 Cordis 插件内核驱动。Cordis 本身有一套「时空可组合」的插件系统论文,dsh 把它当成底座:模型适配器、工具、Skills、会话、沙箱、存储、运行循环、调度、甚至 UI,都是插件。想换模型?换模型插件。想换文件编辑器?换工具插件。想自定义界面?写 UI 插件。

Agent 的「模型灵魂」与「Harness 身体」隐喻

它提供了四种运行模式:

模式定位默认能力
Standard完整编程 Agent文件编辑、Shell、文件/网页搜索、Skills、规划、目标、子代理、工作流
Code模型写代码编排工具在 Standard 基础上把工具暴露成 TypeScript SDK,让模型一次性组合多步操作
Minimal最小化基准环境只保留持久 Bash 和文件编辑器,常用于模型评测
Creator自定义 Preset在 Standard 基础上增加运行时检查、插件实验和 Preset 创作向导

另一个不太一样的地方是 Trajectory。每次运行中模型看到的所有东西——系统提示、推理过程、工具调用结果、子代理调度、上下文注入——都会被写入追加式会话日志。你可以在 Trajectory 视图里按来源检查、搜索、分叉、重放。

这解决了 Agent 调试里最痛苦的问题:不是「它答错了」,而是「它当时到底看到了什么」。

03一个多月的版本演进

从 8 月 13 日开源到 9 月 10 日,dsh 的版本号变化大致如下:

版本时间关键变化
v0.1.0-rc.78 月 17 日持久图片附件、Job Panel 子代理任务管理、可配置思考强度
v0.1.0-rc.88 月 19 日多模态原生图片请求;Claude Code / Codex 子代理作为 Profile Bundle 安装;Windows PTY 持久 PowerShell
v0.1.1-rc.28 月 21 日DeepSeek 适配器改用 Files API 处理图片上传,降低成本
v0.1.2-alpha.28 月 30 日连接失败重试、Agent Preset 切换、Token 用量与耗时显示
v0.1.3-alpha.19 月 4 日Web 任意文件上传、代理环境统一、代理发现增强;Session 格式升级到 v2
v0.1.5-alpha.19 月 8 日动态系统提示不破坏 KV Cache、右侧 Sidebar 多标签/分栏/预览、Agent API 重构
v0.1.5-alpha.2 / rc.19 月 10 日文件交付、Agent Teams 实验包;Session 格式升级到 V3

注意中间没有 v0.1.4 线——官方从 0.1.2 直接跳到了 0.1.5,说明功能合流很快,版本号本身还没稳定到「语义化」的节奏。

几个值得细看的代码层改动:

1. 文件上传从「图片专用」变成「任意类型」

0.1.3-alpha.1 之前,dsh 的附件能力明显偏科:图片链路很完整,但 PDF、CSV、JSON、Markdown 这类工作文件进不来。新版本里,文件和图片可以混排在同一个预览区,后台上传带进度和取消,切换会话后上传状态还能续显。模型可以通过已有文件工具按保存路径按需读取。

这个改动会直接改变以后给 Agent 喂资料的方式。

2. 子代理从「发出去就完事」变成可继续对话

0.1.5-rc.1 里,可继续对话的子代理支持消息排队、编辑、删除、单条或全部 Steer 与停止。父任务能更细地控制子代理的推进节奏,这对多 Agent 协作很重要。

3. Session 格式从 v1 到 v2 再到 V3

0.1.3-alpha.1 改了 Session persistence API,改成 SessionHandle 持有、agentLoop.create() 异步、新增 Session 锁。0.1.5-rc.1 又把数据格式升到 V3,旧日志会迁移保留原文件,但升级后不支持降级读取。

这意味着什么?dsh 还在架构快速迭代期,你今天写的插件或外部工具,下个月可能就对接不上

4. 默认模型切换到 DeepSeek-V41-Flash

0.1.5-rc.1 起,新会话默认使用 deepseek-flash。配置文件显式指定模型时仍以配置为准。这是 DeepSeek 把自家模型和 Harness 深度绑定的又一信号。

04为什么 DeepSeek 要自己做 Harness?

最现实的答案是:模型评测需要统一、可复现、可对比的 Agent 框架

在 DeepSeek API 更新日志里,你会反复看到这样一句话:

对于公开基准测试集中的 Code Agent 文本任务,DeepSeek 系列模型使用 DeepSeek Harness 极简模式作为框架进行测试。

也就是说,dsh 的 Minimal Mode 同时承担了「公平跑分器」的角色。DeepSeek-V4-Flash、V4-Pro、V4-Flash-Vision-Exp 的 Agent 榜单成绩,都是拿 dsh 的极简模式跑出来的。

但这件事的战略意义不止于评测。如果 dsh 能成为业界默认的开放 Harness,那么 DeepSeek 模型就会获得一种「原生优势」——新模型发布时,配套 Harness 已经调好、插件已经适配、评测已经对齐。别人想接入其他模型当然可以,但 DeepSeek 自己的组合一定最先跑顺。

这其实是把「模型战争」往上打了一层:从「谁的模型更强」变成「谁的模型 + 运行时 + 生态更顺」。

05社区真实反馈

开源首日就冲上 5 万 Star,一周后约 11 万,现在约 16.8 万。关注度高,但真实体验比较分化。

肯定的声音集中在三点:

  • 「一切皆插件」是真的可换:模型适配器、工具、会话日志、主循环都能插件化,换模型不用重建系统。
  • Trajectory 是复盘神器:Agent 失败的排查从「猜」变成「看录像」。
  • 一条命令就能跑npx @deepseek-ai/dsh web 启动 Web UI,开箱可用。

谨慎的声音也很一致:

  • Developer Preview 不是口号:0.1.3-alpha.1 明确出现性能回退,Release Note 直接写「本次发布存在已知的性能回退」。同步 API 变异步、Session 格式升级,都说明接口还没定型。
  • 生态早期:插件数量增长很快(有作者称已看到 1000+),但质量和筛选机制还不成熟,很多能力要自己配。
  • 上手有门槛:「一切皆插件」对开发者是优点,对普通用户是复杂度。理解 Cordis 插件体系需要时间。

一句话总结社区态度:值得研究,不适合无脑押生产。

06趋势判断

从最近的代码改动和社区讨论里,我看出几条比较明确的趋势。

第一,从「基础设施演示」快速转向「产品化细节」。

最早的开源版本更像一个 Agent Runtime 的技术 demo。但 0.1.2 之后,Web UI 的优化明显变多:连接失败重试、Token 统计、侧栏搜索焦点、反馈界面、文件卡片排版、自动打开浏览器。0.1.5 的右侧 Sidebar 支持 Markdown / 代码 / HTML / PDF / 图片预览,几乎是往 IDE 方向靠。这说明 dsh 不只想当底层框架,也在试图直接成为日常开发界面。

第二,多 Agent 协作是下一个主战场。

Agent Teams 已经作为实验性 npm 包发布;子代理支持双向消息、Steer、继续对话;0.1.5-rc.1 把 Agent API 改成显式传递 Agent,避免子代理被误当成根会话参与调度。这些改动都在为多 Agent 场景铺路。

第三,「模型无关」和「DeepSeek 原生」会长期并行。

dsh 的插件架构理论上支持任意模型,但默认会话已经切换到 deepseek-flash,模型探测支持自定义 OpenAI 兼容网关和 Anthropic 列表,却也越来越像围绕 DeepSeek 模型做深度优化。这个张力会持续:太封闭会失掉生态,太开放又会弱化自家模型的优势。

第四,极简模式会成为一个事实上的 Agent 评测标准。

只要 DeepSeek 继续用 dsh Minimal Mode 发布模型成绩,其他模型厂商和研究者就会被迫对齐这个环境,否则无法横向比较。久而久之,dsh 可能成为 Agent 评测的默认 harness。

07风险与冷思考

热度归热度,有几个风险必须单独拎出来。

1. 接口稳定性还没有承诺

从 v1 到 v2 到 V3 的 Session 格式变化、Agent API 重构、Inbox API 调整,都在短短几周内发生。官方也明说会有破坏性变更。

2. 插件多不等于生态成熟

1000+ 插件里有多少能稳定运行、有没有安全审核、权限边界怎么管,都是空白。给 Agent 装插件本质上是在给本机放权限。

3. 产品定位还在摇摆

它到底是「大家的开放 Harness」,还是「DeepSeek 模型的最佳搭档」?两个方向对产品决策的影响完全不同。

4. 与现有工具的竞争关系还不清晰

Claude Code、Codex、Cline、OpenCode 已经占了终端和编辑器场景。dsh 的差异化必须建立在「插件化基础设施」上,而不是又多一个聊天窗口。

08现在可以怎么用

如果你现在就想动手,建议这样:

# 快速体验 Web UI(默认打开 127.0.0.1:3080)
npx @deepseek-ai/dsh web

# 想锁定版本就用 @版本号
npx @deepseek-ai/dsh@0.1.5-rc.1 web

# 源码安装
git clone https://github.com/deepseek-ai/deepseek-harness

适合的场景:

  • 研究 Agent 架构:看 Cordis 怎么把运行时拆成插件,学习 Trajectory 的设计。
  • 写插件:给 dsh 写模型适配器、工具或 UI 插件,提前占生态位。
  • 跑模型评测:用 Minimal Mode 跑自己的 Agent 任务,和 DeepSeek 官方成绩对齐。

不建议的场景:

  • 直接替代现有生产工具:接口和格式还会变,迁移成本不可控。
  • 让非技术团队日常依赖:插件权限、报错诊断、稳定性都还没准备好。

09写在最后

DeepSeek Harness 最有意思的地方,不是它现在有多好用,而是它试图定义一种 Agent 的组装方式:模型是灵魂,Harness 是身体,插件是器官。谁能把这个「身体」做成标准,谁就能在模型层之外再建一层生态壁垒。

但这一步还早。开发者预览的标签、频繁的破坏性变更、早期插件生态的混乱,都说明它还在找形态。

我会继续跟踪 dsh 的 releases 和社区讨论。如果你已经拿它跑过真实项目,欢迎在留言区聊聊稳定性、插件和踩坑。

本文同步发布于 zicode.com(字与码)。

打开原图 ↗