AI

DeepSeek Harness: Everything is a plug-in, re-understanding of agents

在 DeepSeek V4 Pro 正式发布之后,DeepSeek 自家的 Agent 产品也终于亮相了——D […]

article directories

在 DeepSeek V4 Pro 正式发布之后,DeepSeek 自家的 Agent 产品也终于亮相了——DeepSeek Harness。

它最值得关注的地方,并不是“又一个代码 Agent”,而是它背后的设计理念:一切皆插件(Everything is a Plugin)。

DeepSeek 给出的核心公式是:

Agent = Model + Harness

这个公式其实很好理解。我们平时使用的 Claude Code、Codex 等产品,本质上都属于 Harness:模型负责推理,而 Harness 负责工具、Skills、上下文、沙箱、存储、Agent 循环、子 Agent、工作流等一整套运行机制。

过去,这些能力大多被封装在一个完整的软件产品里。用户可以使用,但很少需要理解,更谈不上自由修改。

而 DeepSeek Harness 选择了另一条路:把这些原本隐藏在产品内部的能力全部插件化。

Harness 到底是什么?

DeepSeek Harness 真正特别的地方,在于它背后的 Cordis 内核。

Cordis 并不负责直接完成某个具体任务,它做的事情非常克制:管理插件的加载、卸载以及依赖关系。

更重要的是,插件甚至可以在 Agent 运行过程中动态变化,而且不会让整个 Agent 的运行状态直接崩掉。

这里面有两个关键概念:

Temporal composability(时间可组合性):一个插件被卸载之后,它此前产生的副作用能否被完整撤销。

Spatial composability(空间可组合性): When a plug-in relies on other plug-ins, whether it can dynamically reprocess these dependencies when dependencies are added, deleted or changed.

The combination of these two abilities produces a very interesting thing:

Agents no longer just use tools, but can change their tools and capabilities during execution.

For example, when an Agent discovers that it lacks a certain ability, it can create a plug-in, load the plug-in into the current environment, and then continue to complete the task.

That's why DeepSeek didn't simply name it Code or Build, but called it Harness。

Because what it really wants to do may not be a fully functional Agent product for ordinary users, but a set of agents that can be continuously expanded, combined and experimented. Agent infrastructure。

From this perspective, DeepSeek Harness is more like a testing ground: the official provides a batch of basic plug-ins, and developers continue to create new plug-ins, ultimately making the entire Agent capability system more and more abundant.

The four modes are actually just four sets of presets

The first time I opened the Harness, it was easy to be confused by its four modes.

But after understanding Cordis, you will find that these four models are not the essence of Harness, but just a few sets provided by the official.Plug-in combination template。

1. standard mode

This is the most suitable model for ordinary users.

It has complete code Agent capabilities preset, including file reading and editing, Shell, file search, web search, Skills, plans, goals, background tasks, sub-agents, and workflows.

If you just want to use DeepSeek Harness normally,Simply choose the standard model directly.

2. PTC mode

The PTC pattern has most of the capabilities of the standard pattern, but changes the way the model calls tools.

In traditional models, the model is often:

Call the tool → get the result → think again → call the tool again.

PTC will give the model a Code Mode SDK, allowing the model to directly write TypeScript programs, combine multiple tool operations and execute them at one time.

For example, tasks that originally require multiple reads, searches, filters, and parallel calls can be compressed into one program execution.

its advantage isReduce round-trip between models and tools while reducing some Token consumption, but the cost is higher requirements for the model's program planning and debugging capabilities.

So ordinary users don't need to use PTC as soon as they come up.

3. Minimalist model

The minimalist model, in turn, compresses the environment to a very small extent.

It mainly provides a persistent Bash and file editor, while removing a lot of extra capabilities.

It is more suitable for model capability testing: this model can be valuable if you want to compare the performance of different models in a minimum Agent environment.

However, as a daily Agent, the experience will be significantly limited.

4. creation model

Creating patterns is the most interesting part of the whole Harness.

Not only can it use existing capabilities, it can also check the currently running Cordis environment and experiment with plug-ins and create new Agents and plug-ins in memory.

In other words, the Agent can trytransform themselves。

For example, you can ask for it:

"Help me create a security audit Agent that only allows you to read code and not allow you to modify files."

Or:

"Create a research Agent with in-house search capabilities and exclusive Skills."

You can even let it check what capabilities it has first, and then create a plug-in on site and load it when it finds that a tool is missing.

To use a simple metaphor:

The Agent realized that he didn't have a wrench, so he made one, put it in his hand, and continued working.

This is the core experimental significance of DeepSeek Harness.

Another important design: Everything is an event log

Harness's conversation design is also very special.

It does not simply save a chat history, but designs the entire Agent running process into aAppend only event logs。

System prompt words, user messages, model reasoning, tool calls, tool results, permission changes, context injection, context compression, sub-agent scheduling, etc. can all become events in the log.

The history seen in the next round of models is also re-deduced based on this event log.

This is very important for developers.

When something goes wrong with traditional Agents, we often only see that "the task fails" or "the model is in a loop", but we don't know where it starts to deviate.

Event logs and trajectory views provide a more complete way to make the Agent's running processObservable, auditable, reproducible。

This is one of the reasons why Harness prefers the developer and research environment to ordinary consumer-grade products.

真正值得关注的,不是插件数量

DeepSeek Harness 目前最大的特点,也是它最大的争议。

喜欢它的人会觉得:

这就是未来 Agent 应该有的样子。

不喜欢的人则会觉得:

为什么一个 Agent 要搞得这么复杂?

我觉得两种看法其实都没错。

从普通用户的角度来看,Harness 确实存在明显的门槛:开发者术语多、概念复杂、功能之间关系不直观,很多能力需要自己理解插件、模式和运行机制之后才能真正发挥出来。

但如果站在 Agent 基础设施的角度看,它又确实很有意思。

过去我们使用 Agent,本质上是在使用一个已经被厂商设计好的“盒子”;而 Harness 试图把这个盒子拆开,把里面的工具、能力、运行机制全部暴露出来,让开发者自己重新组合。

所以我更愿意把 DeepSeek Harness 理解成:

它现在还不是一个成熟的 Agent 产品,而是一套正在形成中的 Agent 基础设施。

它真正想探索的问题不是“怎么做一个更好用的代码助手”,而是:

如果 Agent 的能力本身也可以被动态创建、安装、卸载和组合,那么 Agent 最终会变成什么?

这也是“一切皆插件”真正有意思的地方。

当然,现阶段它距离普通用户真正意义上的“好用”,还有很长的路要走。

但作为一次对 Agent 架构的大胆尝试,DeepSeek Harness 值得关注。

它可能不是最终答案,但至少提供了一个非常有意思的方向:

未来的 Agent,也许不再是一个固定的软件,而是一套可以不断改变自身能力的运行环境。