DeepSeek Harness 到底是什么?DeepSeek 终于开始做自己的 Agent 了

大家好,我是 JavaPub 的王仕宇。
昨天 DeepSeek 又干了一件很值得关注的事情。
这次不是单纯发布一个新模型,而是直接开源了一个新的项目:
DeepSeek Harness
GitHub:
https://github.com/deepseek-ai/deepseek-harness
DeepSeek 官方对它的定义非常直接:
DeepSeek Harness(
dsh)是 DeepSeek AI 开发的开源 Agent Harness。
而且项目首页还写了一句话:
Everything is a Plugin.
也就是:
一切皆插件。
截至 2026 年 8 月 14 日,DeepSeek Harness 还处于 Developer Preview(开发者预览版),官方明确提醒目前仍在快速迭代,未来可能出现破坏兼容性的修改。
但我觉得这个项目的重要程度,可能比很多人想象中更高。
因为这意味着:
DeepSeek 不满足于只提供“大模型”了,它开始自己做 Agent 的执行层。
一、DeepSeek Harness 到底是什么?
很多人第一次看到 Harness 这个词,可能会有点懵。
其实可以先用一个很简单的公式理解:
Agent = Model + Harness
比如:
DeepSeek V4
↓
负责思考、推理、生成代码
DeepSeek Harness
↓
负责读取文件
负责修改文件
负责执行命令
负责调用工具
负责管理上下文
负责控制权限
负责维护任务状态
负责 Agent Loop
所以如果把大语言模型比作“大脑”:
DeepSeek V4 = 大脑
DeepSeek Harness = 身体 + 神经系统 + 工具系统
以前我们调用 DeepSeek,大多数时候可能是:
用户
↓
Chat UI
↓
DeepSeek API
↓
DeepSeek Model
模型回答问题,然后结束。
但是进入 Agent 模式以后,整个流程就不一样了:
用户
↓
Agent Harness
↓
DeepSeek Model
↓
决定调用工具
↓
读取文件 / 执行命令 / 修改代码
↓
工具返回结果
↓
DeepSeek Model 再次判断
↓
继续执行
↓
直到完成任务
这个不断循环的过程,就是我们经常说的:
Agent Loop。
所以 DeepSeek Harness 并不是一个简单的“DeepSeek 聊天客户端”。
准确来说,它是一套:
围绕 DeepSeek 模型构建 AI Agent 的运行框架。
二、它已经不是一个纯 CLI 工具了
DeepSeek Harness 当前已经提供了 Web UI。
安装 Node.js 后,可以直接运行:
npx @deepseek-ai/dsh web
默认会启动:
http://127.0.0.1:3080
如果想从源码运行,则是:
git clone https://github.com/deepseek-ai/deepseek-harness.git
cd deepseek-harness
pnpm install
pnpm run build
pnpm dsh web
也就是说,它现在已经具备一个比较完整的 Agent 产品形态:
DeepSeek Model
↓
DeepSeek Harness
↓
Agent Runtime
↓
Web UI
而不只是给开发者提供几个 Agent SDK。
三、它已经能做什么?
官方 Web UI 文档里给出的能力非常典型。
Agent 目前可以:
- 阅读项目文件
- 修改项目文件
- 执行命令
- 维护 Plan
- 委派任务
- 操作 Workspace
- 根据权限策略请求用户批准
也就是说,你可以打开一个代码仓库,然后让它执行类似这样的任务:
分析这个项目的整体架构,并告诉我主要模块分别负责什么。
它会自己读取目录、查看代码并整理结果。
甚至进一步:
找到用户登录接口,
给登录增加 Redis 限流,
修改代码,
补充单元测试,
然后运行测试。
这时候 Harness 就可以形成这样的工作流:
理解需求
↓
搜索代码
↓
读取文件
↓
制定方案
↓
修改代码
↓
执行命令
↓
运行测试
↓
分析报错
↓
再次修改
↓
验证结果
这就已经非常接近我们今天使用 Codex、Claude Code 时的 Coding Agent 工作模式了。DeepSeek 官方文档确认,目前 Agent 可以读写 Workspace、执行命令、委派任务以及维护计划。
四、真正值得看的,是它的架构
DeepSeek Harness 最让我感兴趣的,其实不是 UI。
而是它的设计理念:
Everything is a Plugin
官方架构文档甚至明确写道:
模型 Adapter 是插件。
Tool Registry 是插件。
Session Log 是插件。
Agent Loop 自己也是插件。
换句话说:
DeepSeek Harness
│
┌──────────────┼──────────────┐
│ │ │
Model Plugin Tools Plugin Agent Loop
│ │ │
├──────────────┼──────────────┤
│ │ │
Session Plugin Sandbox Storage
│ │ │
└──────────────┼──────────────┘
│
Cordis
这是一种非常激进的模块化设计。
官方甚至说:
系统里没有一个“特权核心”需要你去 Patch。
你要扩展 DeepSeek Harness,通常不是修改核心代码,而是:
挂载一个新的 Plugin。
DeepSeek Harness 底层使用的是 Cordis,插件可以向共享 Context 注册 Service、Event 等能力,因此整个 Harness 可以通过组合插件进行扩展。
这实际上给未来的生态留下了非常大的空间。
五、核心模块有哪些?
官方架构文档已经把几个关键模块列了出来。
比较重要的包括:
core/session
core/system-prompt
core/tools
core/agent
core/agent-loop
core/scope
llm/llm
我们分别看一下。
1. core/session
负责:
Session Event
Session Log
会话状态
而且它采用的是:
append-only SessionEvent log
可以简单理解为:
Agent 发生的重要事件都会不断追加进 Session Log。
例如:
user/message
assistant/message
tool/call
tool/result
step/start
step/end
然后系统可以根据这些事件重新构建模型需要看到的上下文。
这样做有个非常大的好处:
Session Log
↓
恢复会话
Fork 会话
重放
Telemetry
持久化
生成模型上下文
都可以建立在同一套事件流之上。
六、Agent Loop 才是真正的灵魂
DeepSeek 官方甚至直接把:
core/agent-loop
做成了独立模块。
它就是 Agent 不断执行任务的核心 Driver。
官方公布的流程可以简化成:
Turn Start
↓
获取用户输入
↓
组装 Prompt
↓
组装 Tool Schema
↓
请求 LLM
↓
DeepSeek 返回结果
↓
是否调用 Tool?
↓
是
↓
执行 Tool
↓
获得 Tool Result
↓
重新请求模型
↓
...
↓
没有后续任务
↓
Turn End
官方对此还做了更加细致的区分:
Step
一次:
Model Request
+
该请求产生的 Tool Calls
叫一个 Step。
Turn
而一个 Turn 可以包含:
0 ~ N 个 Step
也就是说:
一个用户问题
↓
Turn
Turn
├── Step 1
│ └── read_file
│
├── Step 2
│ └── grep
│
├── Step 3
│ └── edit_file
│
└── Step 4
└── run_test
直到 Agent 判断:
任务完成
Turn 才结束。
这基本就是一个标准的 Coding Agent Runtime。
七、Tools 是怎么工作的?
DeepSeek Harness 有独立的:
core/tools
它负责:
Tool Registry
+
Tool Execution Pipeline
一次工具调用大概会经过:
tool/call
↓
tools/pre-execute
↓
tools/execute
↓
tools/post-execute
↓
tool/result
这个设计非常重要。
因为以后完全可以在:
pre-execute
这里加入:
权限判断
安全检查
参数修改
审计
限流
然后在:
post-execute
加入:
结果过滤
日志
Telemetry
结果转换
所以企业如果基于 Harness 做内部 Agent,会比较方便加入自己的安全控制。
八、它的扩展能力可能才是最大看点
DeepSeek 官方已经列出了大量可替换的能力。
例如:
添加新的模型
注册:
ctx.llm
添加新工具
注册:
ctx.tools
添加 Shell
注册:
ctx.shell
添加 Terminal
注册:
ctx.terminals
添加后台任务
注册:
ctx.jobs
然后 Agent 可以通过类似:
job_*
的工具进行管理。
替换文件系统
可以实现:
ctx.fs
添加 Sandbox
可以实现:
ctx.sandbox
添加 UI / 编辑器
可以使用:
ctx.agents
+
session/event
进行开发。
所以理论上以后完全可以出现:
DeepSeek Harness VS Code Plugin
DeepSeek Harness JetBrains Plugin
DeepSeek Harness Desktop
DeepSeek Harness Web
DeepSeek Harness Server
DeepSeek Harness Cloud
甚至第三方厂商都可以基于它重新包装自己的 Agent 产品。
九、它并没有把自己锁死在 DeepSeek API 上
这一点也很有意思。
虽然名字叫:
DeepSeek Harness
但官方 Web UI 文档已经提到:
除了 DeepSeek Provider,也支持配置:
自定义 OpenAI-Compatible Endpoint。
所以从整个架构来看,它并不一定只能运行 DeepSeek。
理论结构更像:
DeepSeek Harness
│
┌─────────┴─────────┐
│ LLM Adapter │
└─────────┬─────────┘
│
┌──────────────────┼─────────────────┐
│ │ │
DeepSeek OpenAI兼容 其他 Adapter
这点非常关键。
以后如果自己有 API Gateway / AI 中转平台,只要接口满足对应的 OpenAI-Compatible 协议,就有机会把 Harness 指向自己的 Endpoint。官方模型配置文档已经明确提供自定义 OpenAI-Compatible Endpoint 的配置入口。
所以它更像一个:
通用 Agent Runtime。
只不过 DeepSeek 自己掌握开发权。
十、DeepSeek Harness 和 Codex 有什么区别?
很多人看到这里,第一个问题肯定是:
这是不是 DeepSeek 版本的 Codex?
从用户使用场景上看:
很像。
例如:
Codex DeepSeek Harness
读取代码 ✓ ✓
修改代码 ✓ ✓
Shell ✓ ✓
Agent Loop ✓ ✓
任务规划 ✓ ✓
工具调用 ✓ ✓
项目级操作 ✓ ✓
但是从产品定位来看,两者还是有所区别。
可以粗略理解成:
Codex
=
OpenAI 做好的 Coding Agent 产品
而:
DeepSeek Harness
=
可高度扩展的 Agent Runtime
+
官方 Agent 实现
+
Web UI
DeepSeek Harness 现在尤其强调:
Plugin
Service
Provider
Events
Capability Seam
Profile
Bundle
所以它目前给我的感觉更像是:
Agent 开发平台 + Coding Agent。
而不是单纯做一个 Coding CLI。
十一、它和 Claude Code 又有什么区别?
Claude Code 的路线更偏:
Claude
+
Terminal
+
Coding Agent
+
Tool Use
+
Skills
+
MCP
然后围绕 Claude 模型建立开发生态。
DeepSeek Harness 现在走的路线更底层一些:
Harness Runtime
↓
所有能力插件化
↓
Model Adapter
Tool
Agent Loop
Session
Sandbox
Filesystem
Terminal
UI
全部可以替换
所以如果一定要一句话概括:
Claude Code 更像一个产品。
DeepSeek Harness 更像一个 Agent 操作系统框架。
当然,目前 DeepSeek Harness 还处于 Developer Preview,这个定位未来是否会继续保持,还要看 DeepSeek 后续迭代。
十二、一个非常有意思的设计:Capability Seam
这是我觉得 DeepSeek Harness 架构里面比较专业的一部分。
DeepSeek 把很多能力抽象成:
Capability Seam
一个 Seam 一般包括:
Service Definition
↓
Service Provider
↓
Consumer
例如文件系统:
Filesystem Interface
↓
Local Filesystem Provider
↓
Agent Tool
以后完全可以换成:
Filesystem Interface
↓
Remote Sandbox Filesystem
↓
Agent Tool
但是上层 Agent 不需要修改。
同样:
Shell
Terminal
Subprocess
Filesystem
Sandbox
这些能力可以共享一个执行环境。
这意味着以后:
本地执行
切换成:
Docker Sandbox
或者:
Cloud Sandbox
理论上只需要换 Provider,而不是重写整个 Agent。
这是非常典型的企业级 Agent Runtime 思路。
十三、为什么 DeepSeek 现在要自己做 Harness?
这其实是整个事情最值得讨论的地方。
以前 DeepSeek 的生态基本是:
DeepSeek Model
↓
Claude Code
DeepSeek Model
↓
Cline
DeepSeek Model
↓
OpenCode
DeepSeek Model
↓
各种第三方 Agent
DeepSeek 官方甚至维护了:
awesome-deepseek-agent
专门教大家怎么把 DeepSeek 接入各种 Agent 和 Coding Assistant。
但是这里始终存在一个问题:
模型是 DeepSeek 的,Harness 却不是。
例如:
Claude Code
最开始肯定优先针对 Claude 自己的模型特性优化。
类似:
Prompt
Tool Schema
Context Management
Compaction
Agent Loop
Tool Calling
Permission System
每一个地方其实都会影响模型最终表现。
所以:
同一个 DeepSeek V4
放到不同 Harness 里面,最终 Coding Agent 的表现完全可能不同。
这也是为什么现在大家越来越开始接受一个观点:
Agent 能力不只取决于模型。
真正的结果更像:
Agent Capability
=
Model
×
Harness
×
Tools
×
Context Engineering
×
Agent Loop
所以 DeepSeek 自己做 Harness,是非常合理的一步。
十四、Agent 时代,模型可能只占一半
过去大家比较 AI,经常只看:
Benchmark
参数量
上下文
推理能力
Token 价格
但是到了 Agent 时代以后,我们越来越会关注:
模型会不会正确调用工具?
会不会主动搜索代码?
上下文怎么压缩?
任务失败以后会不会重试?
Tool Result 怎么反馈?
怎么维护长期任务?
如何处理权限?
如何执行 Shell?
如何进行 Sandbox?
能不能跑 Sub Agent?
这些很多已经不是:
Model
本身的问题了。
而是:
Harness
的问题。
所以未来我们比较 AI Coding 产品时,可能不能再简单说:
GPT 比 DeepSeek 强
Claude 比 GPT 强
而应该比较:
Model + Harness
比如:
GPT + Codex
Claude + Claude Code
DeepSeek + DeepSeek Harness
这才是一个更加完整的比较单位。
十五、DeepSeek Harness 可能成为 DeepSeek Agent 生态的底座
我觉得 DeepSeek Harness 真正的野心,很可能不只是:
做一个 DeepSeek 版本 Claude Code。
因为如果只是为了做 Coding Agent,其实没有必要设计得这么高度插件化。
现在整个架构已经涉及:
Agent
Agent Loop
Tools
Session
LLM
Filesystem
Shell
Terminal
Sandbox
Jobs
Goals
SubAgent
UI
Editor
Telemetry
Persistence
这已经是一个比较完整的:
Agent Runtime
了。
未来完全可能变成:
DeepSeek Harness
│
┌──────────────────┼──────────────────┐
│ │ │
Coding Agent Research Agent Data Agent
│ │ │
├──────────────────┼──────────────────┤
│
Plugin 生态
所以:
DeepSeek Harness 很可能不是 DeepSeek Agent 的终点,而是起点。
十六、现在值得用吗?
目前我的建议是:
如果你只是普通用户:
暂时不用急着把现有 Codex / Claude Code 换掉。
因为官方已经明确标记:
Developer Preview
而且强调:
THERE WILL BE COMPATIBILITY-BREAKING CHANGES
也就是说接口、配置甚至插件体系都有可能发生较大调整。
但是如果你是:
AI 开发者
Agent 开发者
Coding Agent 用户
DeepSeek API 用户
Claude Code / Codex 重度用户
那这个项目非常值得现在就关注。
尤其建议研究:
packages/core/agent-loop
packages/core/tools
packages/core/session
packages/llm
Sandbox
Agent Preset
Plugin System
因为这些模块基本就是:
现代 Agent Harness 的核心组成部分。
十七、最后
DeepSeek 以前给我的感觉更多是:
我要做一个更强、更便宜的模型。
但是 DeepSeek Harness 出来以后,这条路线明显开始发生变化。
现在逐渐变成:
Model
+
API
+
Agent
+
Harness
+
Tools
+
Plugin Ecosystem
这意味着 DeepSeek 开始从:
模型提供商
往:
Agent 平台
走。
而 DeepSeek Harness 最值得关注的一句话,我觉得依然是官方首页那句:
Everything is a Plugin.
如果 DeepSeek 真把这套 Plugin 生态建立起来,那以后我们看到的可能就不只是一个:
DeepSeek Code
而是一整套:
DeepSeek Agent Ecosystem
现在来看:
GPT 有 Codex。
Claude 有 Claude Code。
而 DeepSeek,也终于开始有自己的 Harness 了。
这场 AI 编程工具的竞争,正在从:
谁的模型更强
逐渐进入:
谁的 Agent 系统更强
的新阶段。
一起成为勇猛精进的人类。
更多推荐



所有评论(0)