AI

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

After the official release of DeepSeek V4 Pro, DeepSeek's own Agent product finally debuted-D […]

article directories

After the official release of DeepSeek V4 Pro, DeepSeek's own Agent product finally made its debut--DeepSeek Harness。

The most noteworthy thing about it is not "another code Agent", but the design concept behind it:Everything is a Plugin。

The core formula given by DeepSeek is:

Agent = Model + Harness

This formula is actually easy to understand. The products we usually use, such as Claude Code and Codex, essentially belong to Harness: the model is responsible for reasoning, and Harness is responsible for a complete set of operating mechanisms such as tools, Skills, contexts, sandboxes, storage, Agent loops, sub-agents, and workflows.

In the past, most of these capabilities were encapsulated in a complete software product. Users can use it, but they rarely need to understand it, let alone freely modify it.

DeepSeek Harness chose another path:Plug-in all these capabilities that were originally hidden within the product.

What exactly is Harness?

What's really special about DeepSeek Harness is the reason behind it. Cordis kernel。

Cordis is not responsible for directly completing a specific task, and what it does is very restrained:Manage plug-ins loading, unloading, and dependencies.

More importantly, the plug-in can even change dynamically during the execution of the Agent, and will not cause the entire Agent's running state to collapse directly.

There are two key concepts here:

Temporal composability: After a plug-in is uninstalled, whether the side effects it previously produced can be completely reversed.

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,也许不再是一个固定的软件,而是一套可以不断改变自身能力的运行环境。