# DeepSeek Harness 背后论文：万物皆插件，万物可重组

AI智识录 · 2026-08-14

<https://ai.podhood.com/6cac1c6e-40c3-40a4-9a82-e91e6f75845f>

本集解读 DeepSeek 与北京大学合作的 80 多页论文《一套处理时空可组合性的编程范式》，指出它正是 8 月 13 日发布的 DeepSeek Harness（DSH）平台的设计蓝图，主张“万物皆插件，万物可重组”。论文先以 VSCode 揭示现有插件系统的缺陷：安装量前 100 的插件中 87 个带可执行代码，激活后想单独卸载必须重启整个宿主进程，而官方依赖声明只有 7 个插件在用。论文把难题拆成两半——“时间可组合性”要求组件卸载时其所有修改能完整撤销，由“可逆效应”通过逐层倒序执行的撤销链解决；“空间可组合性”要求组件正式声明依赖、由系统自动协调激活与停用，由“反应式余效应”解决。两套机制已落地为实现框架 Cordis，其验证载体是开源聊天机器人框架 Koishi——4 年间积累 4000 多个出自不同作者的社区插件，在生产环境持续运行；第一作者史一凡正是 Koishi 的作者，现已加入 DeepSeek。论文承认验证仅在 Koishi 生态与 TypeScript 一种语言上进行、未做严格对比实验，更像一个存在性证明；其最终野心是为自进化 AI 智能体打地基——让 AI 一边服务一边替换自己的组件，DSH 即是跑在聊天机器人上 4 年的 Cordis 底座向智能体场景的升级。

## Questions this episode answers

### DeepSeek 8月13日发布的 DSH 背后论文讲的是什么？

主播介绍，这篇由 DeepSeek 和北大合作、共80多页的论文叫《一套处理时空可组合性的编程范式》，是给 DSH 打底子的设计蓝图，核心叫 Cordis，主张万物皆插件、万物可重组，让组件在运行时随时插拔。

[0:00](https://ai.podhood.com/6cac1c6e-40c3-40a4-9a82-e91e6f75845f?t=0)

### 为什么 VSCode 插件难以单独卸载？

主播说 VSCode 所有插件跑在一个共享进程里，论文统计安装量排前100的插件中有87个带可执行代码，只要激活过，想单独卸掉就必须重启整个宿主进程；且前100个插件里只有7个在用官方依赖声明。

[0:58](https://ai.podhood.com/6cac1c6e-40c3-40a4-9a82-e91e6f75845f?t=58000)

### 论文提出的可逆效应和反应式余效应分别解决什么问题？

主播解释，可逆效应对付时间问题：程序每次修改必须交出对应逆操作，运行时串成撤销链，卸载时倒着执行即可还原；反应式余效应对付空间问题：组件先声明需要什么，系统自动推导依赖并协调激活与停用。

[3:12](https://ai.podhood.com/6cac1c6e-40c3-40a4-9a82-e91e6f75845f?t=192000)

### Cordis 这套机制在什么真实项目上验证过？

主播说验证用的是开源聊天机器人框架 Koishi，4年前基于 Cordis 老版本搭建，现有4000多个社区插件跑在生产环境，插件出自不同作者，只靠声明依赖的规矩协作。第一作者史一凡写了 Koishi，现已加入 DeepSeek。

[5:12](https://ai.podhood.com/6cac1c6e-40c3-40a4-9a82-e91e6f75845f?t=312000)

## Key moments

- **[0:00] 开场引入**
- **[0:26] 万物皆插件**
- **[0:58] VSCode困境**
  - [0:58] 占位
  - [0:58] VSCode 前 100 插件里 87 个激活后无法单独卸载，必须重启整个宿主进程
- **[1:34] 自进化难题**
  - [1:34] 自进化 AI 若每次改代码都要重启进程，上下文缓存全报废，还可能把自己改到无法启动
- **[2:36] 效应与余效应**
  - [2:45] DeepSeek 论文的可逆效应：每次修改必须附带逆操作，卸载时倒着执行撤销链即可精确还原
- **[3:11] 可逆效应**
  - [3:22] 反应式余效应解决空间可组合性：组件声明依赖，系统自动推导激活与卸载顺序，开发者零代码
- **[3:41] 反应式余效应**
- **[4:23] Cordis实现**
- **[5:12] Koishi验证**
  - [5:12] Koishi 框架 4 年积累 4000 多个社区插件，不同作者仅靠 Cordis 依赖声明规矩就能协同
  - [6:05] 论文自认局限：验证只在 Koishi 生态和 TypeScript 上做过，更像一个存在性证明
- **[6:34] 自进化愿景**
  - [6:57] DeepSeek Harness 就是跑了 4 年的 Cordis 升级版，被搬进 AI 智能体迈向自进化第一步
- **[7:10] 结尾广告**

## Topics

AI开源与Agent生态

## Mentioned

DeepSeek (company), Cordis (product), DSH (product), Koishi (product), VSCode (product)

## Transcript

### 开场引入

**Host** [0:00]
你可能已经注意到 DeepSeek 8 月 13 日发布了自己的 Harness 平台 DSH。 今天想跟你聊一篇伴随发布出来的论文 ， 由 DeepSeek 和北大合作 ， 一共 80 多页 ， 叫 《 一套处理时空可组合性的编程范式 》。

这篇论文 ， 可以说就是给 DSH 打底子的设计蓝图 ， 这已经是 DeepSeek 今年发的第 7 篇论文 ，也是跟北大的第 n 次合作了 。

### 万物皆插件

**Host** [0:26]
论文的核心叫 Cordis， 你可以把它想象成一块乐高底板 ，在这套体系里 ， 所有功能都是一块块积木 ， 随时插上去 ， 随时拔下来 ， 再换一块新的 。

用论文自己的话说 ， 万物皆插件 ， 万物可重组 。 软件开发里有一个特别基本的原则 ： 把复杂系统拆成简单部件 ， 再组装起来 。

过去这种组装是静态的 ， 代码一编译就固定死了 ； 可现在越来越多的软件要求动态组装 ， 组件要在运行的时候装进来 、 卸下去 、 重新配置 。

### VSCode困境

**Host** [0:58]
插件系统是典型 ， 自进化 AI 更是绕不开这件事 。 论文先拿我们最熟悉的例子开刀 ， 就是 VSCode。 VSCode 的所有插件都跑在一个共享进程里 ， 装插件很容易 ， 卸载就麻烦了 。

论文做了个统计 ， 安装量排前 100 的插件里 ，有 87 个带着可执行代码 ， 只要激活过 ， 你想单独卸掉它 ， 就必须把整个宿主进程重启 。

你只想删一个插件 ， 结果所有插件都得陪着它重启一遍 ， 插件之间想互相依赖也几乎做不到 。 官方那个依赖声明 ， 前 100 个插件里只有 7 个在用 。

### 自进化难题

**Host** [1:34]
如果只是重启 ， 人认也就算了 ，但论文惦记的是另一件事 ： 自进化 AI。 未来的 AI 智能体 ， 肚子里塞满了工具集 ： 执行环境 、 权限控制 、 沙箱 、 会话状态 、 记忆系统 。

它可能会自己写个新工具 ， 自己装进系统 ， 发现不好用 ， 再自己换掉 。 如果每次改一行代码都要重启整个进程 ， 之前攒下的上下文和缓存全部报废 。

更可怕的是 ， 万一它把自己改坏了 ， 连那个负责修复自己的进程都起不来了 。 这是时间上的坎 。 再看空间上的坎儿 ： 如果模块之间的依赖全靠每个模块自己瞎猜 ， 今天查一下有没有 A， 明天猜一下有没有 B， 一不小心搞出循环依赖 ， 重新加载的时候直接爆雷 。

那为什么以前没人认真解决呢 ？ 因为操作系统和容器编排给了一个粗糙的替代方案 ： 进程级别的重启 。

可这个方案代价很大 ， 每次重启都会丢掉所有缓存和连接 ， 重新热起来要花几秒甚至几分钟 ， 想保持在线还得准备一堆冗余的副本 。

### 效应与余效应

**Host** [2:36]
论文管这两道坎叫 " 时间可组合性 " 和 " 空间可组合性 "。 解法的底子 ， 来自数学里两个经典概念 ： 效应和余效应 。

效应刻画的是程序对世界的影响 ， 余效应刻画的是世界对程序的约束 ， 一个往外， 一个往里 ， 正好是一对反过来的关系 。

问题是 ， 原来的理论是给静态程序用的 ， 编译时就把一切都定死了 。 自进化的 AI 组件是运行中才加载的 。

所以论文把这两个概念改造了一遍 ， 变成运行时机制 ： 一个叫可逆效应 ， 一个叫反应式余效应 。

### 可逆效应

**Host** [3:11]
可逆效应对付时间问题 。 规则就一句话 ： 程序每做一次修改 ， 必须同时交出一个对应的逆操作 。

运行时会把这些逆操作按顺序记下来 ， 串成一条撤销链 。 卸载的时候 ， 只要把这条链倒着执行一遍 ， 系统就精确回到装之前的样子 。

打个比方 ， 像一摞盘子 ， 最后放上去的那只先拿走 ， 时间顺序就不会乱 。 反应式余效应对付空间问题 。

每个组件装进来之前先声明 ： 我需要什么 。 比如一个聊天插件说 ： 我需要一个消息适配器和一个数据库 ， 两个都在我才启动 ， 缺一个我就先待着 ，不会因为找不到东西直接报错 。

### 反应式余效应

**Host** [3:54]
提供者一出现 ， 依赖它的人自动醒过来 ； 提供者撤走 ， 依赖者先把活停下来 ， 把自己留下的痕迹清理干净 ， 对方才完成卸载 。

谁依赖谁 ， 系统从声明里自动推导 ， 开发者一行代码都不用写 。 这两套机制合起来 ， 就是论文标题里 " 时空可组合性 " 的意思 。

论文还把效应和余效应统一进了同一个上下文 ： 加载组件就是插上， 卸载组件就是拔下来 ，而且可以一层套一层 ， 任意嵌套 。

光有理论不行 ， 论文真的把它做出来了 。 实现叫 Cordis， 一个不绑定任何具体场景的原框架 。 它的核心规矩是 ： 任何对上下文的修改都走同一个入口 ， 系统自动记账 ， 自动撤销 。

### Cordis实现

**Host** [4:37]
每个组件装进来之后， 是一个独立的生命周期状态机 ， 处理各种现实情况 。 比如卸载之前要等依赖它的人先退出 ， 中途出错的话 ， 先把已经做的改动全部收回 。

错误只记在出错的组件自己身上 ，不连累旁边的兄弟 。 管理者还可以用一份声明式的配置描述整个系统 ： 改一处配置 ， 加载器只做最小的调整 ，不会推倒重建 。

改代码保存之后， 被影响的模块就地热替换 ， 万一换的过程中出错了 ， 自动回滚到旧版本 ， 系统永远不会停在 " 改了一半 " 的状态 。

论文花了大篇幅讲时间验证 ， 用的框架叫 Koishi， 一个开源聊天机器人框架 ，4 年前就基于 Cordis 的老版本搭起来 。

### Koishi验证

**Host** [5:21]
现在攒了 4000 多个社区插件 ， 什么消息适配器 、 数据库驱动 、 管理后台都有 ， 一直跑在生产环境里 。

你可能会问 ： 这么多插件 ，是不是作者们提前商量好的 ？ 完全不是 。 它们大多出自不同的作者 ， 彼此之间唯一的默契 ， 就是都遵守 Cordis 那套声明依赖的规矩 。

管理员在控制台里禁用一个插件 ， 它的影响就地撤回 ，其他插件照常工作 。 开发时改完代码保存 ， 热更新只重在被改的那一个 ， 缓存和连接都不动 。

切换数据库后端 ， 只有依赖 " 真变了 " 的那几个插件重新激活 ， 没受影响的纹丝不动 。 顺便说一句 ， 论文的三位作者横跨北大和 DeepSeek。

第一作者史一凡 ，Koishi 这个项目就是他写的 ，他现在也加入了 DeepSeek。 所以这份验证 ，其实是作者自己的作品替自己的理论做了证 。

论文也很诚实 ， 承认目前的验证只在 Koishi 这一个生态 、TypeScript 这一种语言上做过 ，也没跟别的方案做严格的对比实验 。

它更像一个存在性证明 ， 证明这套动态组合的规矩 ，在来自天南海北作者的开放生态里 ， 真能立得住 。

### 自进化愿景

**Host** [6:34]
最后说回这篇论文的野心 。 它所有设计 、 服务的都是同一件事 ： 自进化 。 未来的 AI 会不停地生成并替换自己的组件 ，而且很少有人类在旁边盯着 。

到那个时候 ， 每次自我修改都要求系统能完整恢复现场 ， 依赖能自动协调 。 Cordis 就是给这种自进化打的地基 。

今天发布的 DeepSeek Harness，其实就是 Koishi 这套 Cordis 的升级版 ， 一个在聊天机器人上跑了 4 年的底座 ， 被 DeepSeek 搬进了 AI 智能体里 ， 向着自进化迈出了第一步 。

### 结尾广告

**Host** [7:10]
这就是今天跟大家分享的全部内容 。 欢迎订阅 《AI 知识录 》， 获取最新鲜的 AI 领域最新知识 。 最后插播一个广告 ， 主播自己的 AI 创业产品 UNAVI， 一个能一键整合你的飞书 、 钉钉 、 腾讯会议 、Claude 和其他录音卡 / 录音豆 ， 随时随地帮你解读日常会议与沟通背后的深意 。

锁定关键信息的 Agent 应用已经正式上线 ， 最新的版本也支持了直接给它播客链接 ， 它就能轻松完成转写 、 总结 、 分析 ， 甚至多个播客的关联解读和分析 。

如果你有兴趣 ， 欢迎在本播客的公告栏查看体验方式 。 我们下期见 。

---

本节目库由 PodHood（https://podhood.com）提供支持——播客网站平台。
