乐于分享
好东西不私藏

一切皆插件,DeepSeek Harness 到底想改变什么?

一切皆插件,DeepSeek Harness 到底想改变什么?
DeepSeek Harness 终于来了。
网上已经有不少介绍,但看别人“尬吹”,不如自己跑一遍。
安装并不复杂,打开终端,执行这条安装命令:
npx @deepseek-ai/dsh web
安装完成后,终端会给出一个本地端口,直接复制到浏览器打开即可。
过程中会让你输入 API Key,大家按需填写即可。
进入后,左边是工作区,右边是会话区。第一眼看上去,很像 Claude Code、Codex、WorkBuddy 这类 Harness。
DeepSeek Harness 最重要的设计原则:一切皆插件

我很好奇:DeepSeek Harness 这种设计原则,和 Skill、MCP 等概念之间到底是什么关系?

于是,我直接向 DeepSeek Harness 提问:
它先给了我一大段专业解释。坦白说,我也没有完全看懂。继续往下拆,才慢慢抓住重点:
在 DeepSeek Harness 里,插件是“组装整个 Agent 运行时”的底层机制;Skill 和 MCP 是两种不同的功能,但在实现上都被包装成了普通插件。
模型连接、工具、Skill、MCP 接入、Agent 循环、界面模块,都使用同一套插件机制装配。
所以,DeepSeek Harness 想表达的是:Harness 的主体 = 很多插件组装起来的系统。
而这个系统里,最核心的机制是Cordis。它主要负责三件事:
  1. 加载插件;
2.管理插件之间的依赖;
3.插件关闭时把相关资源清理干净;
可以把 Cordis 理解成一块插线板。模型、工具、Skill、MCP 和 UI,都是插在上面的不同模块。
Cordis 插线板├── 模型适配器├── Agent 主循环├── Skill 系统├── MCP 客户端├── 文件工具├── 搜索工具└── UI 模块
读到这里可能还会有些懵,我再举个例子
我们在用 Claude Code、Codex、Workbuddy 这类产品时,能管理的其实就是 Skill、MCP 之类的,其他的所有东西,全部都是产品提前封装好的,你改不了,没事也不会去改。
而在 DeepSeek Harness 中,所有所有所有的这些东西,全部都被包装成了插件——也就是说,你全部都可以自定义了。
但是,对普通用户来说
你不需要因为“一切皆插件”,就再去学一种复杂的插件开发方式。
我们大致还是可以按这个顺序来使用这类Harness产品
  • 只是想让 Agent 按某种流程工作:写 Skill。
  • 想接入 GitHub、浏览器、数据库等外部服务:接 MCP。
  • 想改变 Harness 的主循环、工具系统、界面或底层行为:才研究 。

DeepSeek Harness 目前提供四种模式,分别解决什么问题?

标准模式

这是默认模式,也是“99% 的人 99% 的时间”应该使用的模式。
它拥有完整的能力:文件读写与编辑、命令行、搜索、Skill、计划、目标、子代理、工作流等。
它解决的是:像 Claude Code、Codex 一样,直接完成完整的编码和文件任务。
适合:日常开发、修改文件、搜索代码、写脚本、多轮协作、普通办公等;
PTC 模式
它的机制是:模型不再逐个直接调用 25 个工具,而是只调用一个run_code——写一段 TypeScript,在程序里批量调用文件、命令等工具,最后只把筛选后的结果返回给模型。
例如,搜索上百个文件,统计所有 TODO,去重、排序,最后只告诉我结果。
如果你的任务是“步骤很多、中间产物很大、最后只需要一个结论”,可以试 PTC;否则留在标准模式。
极简模式
极简模式只有两个工具:一个持久化的bash,一个简单的文件编辑器str_replace_editor。
它不是“更快的标准模式”,而是尽量把 Harness 拔掉,用来测模型本身到底有多强。
因为模型排行榜测到的经常不是“模型能力”,而是:模型能力 + 工具 + 提示词 + 上下文管理 + Agent 框架;
所以,极简模式就是把后面这些统统去掉,只测模型能力。
这种模式,普通用户基本用不上。
创造模式
它适合想研究 Harness 内部机制、想打造自己的第五种模式、想让 Agent 自己扩展工具、想做框架开发和实验的人;
不适合用来做日常工作、处理重要文件。
我目前只体验了标准模式。一个小细节是:模式只能在新建的空白会话中切换,不能聊到一半再换。

DeepSeek Harness 让我印象深刻的功能,是“轨迹”

从图中可以看到,上方时间轴把整个任务拆成了 Input、Model、Tools 三类阶段;
下方则逐条展示 Assistant 输出、bash 工具调用、用户确认以及系统注入的 Context。
底部还记录了模型耗时、工具耗时、首 Token 延迟、生成速度、缓存命中率和 Token 消耗。
因此,它回答的不只是“Agent 最后说了什么”,而是:
  • 模型在每一步看到了什么;
  • 为什么决定调用这个工具;
  • 工具实际执行了什么;
  • 哪段上下文是用户提供的,哪段是系统或插件注入的;
  • Agent 从哪一步开始偏离目标;
  • 时间和 Token 主要消耗在哪个环节;
  • 出现错误后,能否把当时的现场重新还原出来。

最后,我让 DeepSeek Harness 帮我开发了一个小游戏。

我的需求描述得很简单,大概 3 分钟,这款小游戏就开发出来了。开发过程中,它还会自己检查、验证程序是否正常。
而且,让我惊讶到的是,整个过程的缓存命中率达到了 94%
开发小游戏往往需要多轮操作:读代码、改文件、运行测试、再修改,上下文越来越长。
94% 的缓存命中意味着,模型不用每一轮都重新为 94% 的旧上下文支付全价。

写到最后

我觉得从产品角度来说,DeepSeek Harness 目前对普通用户还是非常不友好的。
开发者术语太多,使用门槛太高,功能还少,体验也不够成熟。很多普通用户可能还没有感受到它的价值,就已经在安装和配置环节被劝退了。
但官网也说明了,目前的 DeepSeek Harness V1.0 属于开发者预览版本。
但从产品角度,我依然觉得“一切皆插件”很有意思
DeepSeek Harness 想做的,可能不只是另一个 Claude Code 或 Codex,而是把 Agent 从一个封装好的产品,变成一套可以被用户重新组装的系统。
这条路最后能不能走通,还需要继续体验。
但至少,它已经提出了一个值得认真讨论的新方向。
官网地址:https://www.deepseek.com/harness/
开源地址:https://github.com/deepseek-ai/deepseek-harness