当理论照进现实:DeepSeek Harness 与一场关于“底盘”的争论

当理论照进现实:DeepSeek Harness 与一场关于“底盘”的争论

2026年8月13日,DeepSeek 以 MIT 协议开源了 DeepSeek Harness(DSH)开发者预览版。一夜之间,GitHub 仓库突破 5 万星。与此同时,社交媒体上出现了两种截然不同的声音:一方欢呼“Agent 界的 Android 来了”,另一方则抱怨“半成品、Bug 多、Token 消耗高”。

同一件事,为何评价如此撕裂?

答案藏在 DSH 的定位里——它不是一个面向终端用户的“产品”,而是一个面向开发者的“底盘”。理解了这个底盘的设计思想,就读懂了这场争论的本质。

一、Cordis:乐高底板上的数学

DSH 的底层是 Cordis——一个由北大与 DeepSeek 联合设计的“元框架”。Cordis 不提供任何具体的 Agent 能力,它只做一件事:管理插件的加载、卸载和依赖关系。

在 Cordis 的世界里,“一切皆插件”不是口号,而是字面意思:模型适配器、工具注册表、会话日志、Agent Loop、文件系统、沙箱、甚至 UI 都是插件。没有特权核心——想换模型就换模型插件,想换沙箱就换沙箱插件,想重写 Agent Loop 就重写 Agent Loop 插件。

这套架构背后有一套完整的数学理论——发表于同日的论文《A Programming Paradigm for Spatiotemporal Composability》。论文将动态组合拆解为两个正交维度:

时间可组合性:组件卸载后,它做过的所有事情能否被完全撤销?

传统的插件系统,卸载一个插件往往需要重启整个宿主进程。VSCode 的扩展宿主便是典型案例:排名前 100 的扩展中,87 个包含可执行代码,一旦激活就无法在运行时单独卸载。Cordis 的解法是“可逆效应”(revertible effects)——每个对上下文的修改都必须配一个显式的逆函数,运行时将这些逆函数按顺序叠加成一条“撤销链”,卸载时反向执行。开发者只需为每个原子操作提供逆函数,复合操作的逆函数由系统自动推导。

空间可组合性:组件依赖谁?依赖变化后,谁先启动、谁先退出?

传统插件系统中,组件之间的依赖关系大多是静态的,在编译或初始化阶段就已固定。而 Agent 运行时,组件可能随时出现、消失或更换身份。Cordis 通过“反应式余效应”(reactive coeffects)解决:组件声明自己需要哪些依赖,系统在依赖满足时自动激活,依赖缺失时自动停用。

论文还证明了四个关键性质:保持性(系统状态始终合法)、全局时空可组合性(单个组件的可组合性可推广到整个系统)、进展性(系统不会死锁)、合流性(无论调度顺序如何,系统最终收敛到同一个状态——等同于从零开始按依赖顺序一次性加载所有组件所达到的状态)。

这不是实验室里的玩具。Cordis 已经在 Koishi 聊天机器人框架上跑了四年,支撑了超过 4000 个社区插件。

二、底盘思维:为什么说它“超前”

理解了 Cordis 的设计哲学,就能理解 DSH 真正的价值所在。

多数人把 DSH 当作“DeepSeek 版 Claude Code”来比较——比界面、比响应速度、比 Token 消耗。但如果用产品的标准去衡量一个开发者预览版的“底盘”,自然会得出“半成品”的结论。

DSH 的定位是 Agent Runtime 的基础设施——它不是要取代 Claude Code,而是要为下一代 Agent 提供可编程、可观测、可自进化的运行时。

有几个设计细节值得关注:

159 个插件:一个默认部署的 DSH 包含 159 个插件,LLM、Session、热模块重载全部以插件形式存在,均可独立开关。这意味着你可以像搭乐高一样组合 Agent——不需要改一行源码。

仅追加事件日志:模型看到的一切都写入仅追加的会话日志,历史消息是从日志中“投影”出来的。这意味着你可以回溯、分叉、重放任意一次运行——这是调试和自进化的基础。

能力 Seam:每个可替换能力 = 接口 + 实现 + 消费者。换一个 Provider 就能整体换掉产品的一块能力——例如把文件系统从本地换成远程沙箱,Bash、PTY、LSP 全部跟着迁移,无需逐个修改。

这些设计的共同指向是:让 Agent 运行时本身可以被程序化地修改和优化。这正是“自进化 Agent”的前提——如果连 Harness 本身都是不可拆卸的黑盒,Agent 又如何能自我改进?

三、社区的两极:方向与完成度

DSH 发布后的社区反应,恰好印证了“底盘”与“产品”的错位。

正面评价集中在架构层面。开发者普遍认可“一切皆插件”的理念,认为它提供了极高的扩展性和可组合性。社区在发布后迅速涌现出插件集合、桌面封装和学习教程。有人从 RSI(Recursive Self-Improvement)角度评价:Cordis 让组件热插拔与状态无伤撤销成为可能,这为大规模结构实验打开了空间。

负面评价集中在体验层面。门槛高(需要 Node.js/npx 环境)、Bug 多、UI 粗糙、Token 消耗偏高。有用户反映“改配置多次崩溃”“工具调用参数传错”。官方也明确声明这是开发者预览版,会有破坏性变更。

最中肯的概括来自社区的一条评论:“普遍认可它的方向,但远没有认可它现在的完成度”。

这场争论的本质是:用产品的预期去衡量一个尚在早期的底层架构,必然产生落差。DSH 在发布时的定位就是“底盘”,而非“整车”。

四、未来:当 Harness 学会自我修改

DSH 的真正想象力不在于今天它能做什么,而在于它为明天准备了什么。

当 Agent 能够自己生成工具、自己装进运行时、发现问题后自己替换掉自己——每一次这样的自我修改都是一次动态组合。如果没有时间可组合性,每次修改都要重启整个进程,积累的上下文和缓存全部丢失;如果没有空间可组合性,每个模块都要自己检测和适应依赖的变化,稍有不慎就会引入循环依赖。

Cordis 提供的正是这样一种能力:让 Harness 的每一层都可以被程序化地拆卸和重组,让 Agent 的自我改进成为可能。

从这个角度看,DSH 的“不完美”恰恰是其设计哲学的必然结果——一个真正开放的底盘,注定比一个锁死的产品需要更多时间打磨。给它一些时间。

毕竟,罗马不是一天建成的,但乐高底板可以。