瓶颈从模型挪到了人的注意力

10 月 31 日晚,DeepSeek Harness 团队公开了一份设计长文《Super-agent 设计探索:迈向更自主的 Agent 系统》,并在 GitHub 开源原型 dsh-superagent-prototype。

它的出发点不是模型不够强,恰恰相反:单任务智能体已经越来越少需要人介入底层执行,人的角色上移到决策与验收,于是多任务的天花板变成了人的注意力带宽。现有智能体以单次会话为单位,简单扩展会撞上同步阻塞、上下文混乱、设备离线即停这三堵墙。Super-agent 想做的是跨会话保持上下文、并行推进多任务且互不干扰的连续实体。

四个特征是连续、高效、主动、持久。撑起它们的不是更长的提示词,而是五个模块:双层架构、事件驱动、面向人的交互、计算与状态及环境的分离、外部 Watchdog。

一层管连续与分派,一层管并发与交付用户始终只面对一个智能体,底下多少个会话由系统自己管Router 层 · 常驻只分派不干活,甚至可不配 BashWorker 01隔离上下文 · 挂更强模型Worker 02不直接对人说话Worker 03可再拆子智能体初始事件经 Router 建 Worker 并订阅该 Thread同一 PR、话题或邮件串的后续事件,直接进已订阅的 Worker去掉直通后:Router 决策次数约多三成,读缓存词元 2323 万升到 3177 万来源:DeepSeek Harness 团队公开的设计长文与开源原型
图|直通省的是中心节点的转手开销,论文也写明它并未改变单任务的交付质量。

一层分派,一层干活

双层是骨架。Router 层常驻,承接所有入口的人机交互,充当全局的序点、协调点与记忆;它不亲自执行具体任务,甚至可以连 Bash 都不配。Worker 层由彼此上下文隔离的会话组成,挂上更强的模型与完整工具链,专注完成单项任务,不直接对人说话,只向 Router 汇报。

这个分工与常见的多智能体团队形态看着像,边界却不同:常见团队里主智能体要深入子步骤、高频协调,推理负载很重;这里的 Router 只处理任务之间的高层关联。论文也点明,与其在提示词里叮嘱模型「优先派活」,不如从架构上剥夺中心节点的执行能力——因为提示词约束不稳定,实测五次里就有一次模型自作主张串行执行,把主线程卡死。

吞吐量靠批处理兜住。Router 的工作是长输入、短输出,事件拥堵时多条 Trigger 会被合并进一次调用,在预填充阶段被并行吃掉:Trigger 到达率从每分钟 1 条升到 40 条时,单次请求耗时只从 2.5 秒涨到 3.9 秒,而单次决定分摊的推理时间反而从 6.4 秒降到 1.6 秒。

事件不再逐条等人下令

驱动系统的输入从人敲的提示词,换成环境里的半结构化事件:群聊消息、邮件与日程、评审评论、CI 结果,统称 Trigger。真实环境里这类事件高噪音、低触发率,所以先走程序层的快路径做确定性准入,再交给模型做语义判断,形成两级过滤。

路由也分快慢。同一个 PR、话题或邮件串下的连续事件构成一条 Thread,Worker 建好后直接订阅它,后续事件由程序直通,不再经 Router 转手。订阅是多对多的:多个 Worker 订阅同一条 Thread 时,它们不必点对点通信就能感知彼此的改动,有机会自己发现并化解冲突。消融实验显示,去掉直通后完成时间基本不变,但 Router 决策次数多约三成,读缓存词元从 2323 万涨到 3177 万——省的是协调开销,不是单任务质量。

上下文被当成缓存管:近期很可能用到的直接内联进窗口,长内容与低频细节换出到外面,只留引用与摘要;各对象带着关联 ID,需要时顺着引用逐跳展开,这就是链式召回。论文那句「浪费上下文窗口就是浪费模型的智能」,说的正是这件事。此外还有一条很实操的准则:即时通讯信道里单次回复限制在 100 词以内,把详细的变更分析留给 PR 与邮件。

跑的是同一条消息流,差的是调度纪律从哪来条形为 p95 完成时间(分钟),右侧为全部会话的读缓存词元Super-agent 完整版15.72323 万去掉订阅直通15.53177 万单会话加子智能体工具 · 提示优先委派29.01082 万单会话加子智能体工具 · 中性提示29.5605 万约 300 条消息,其中约 20 条是真实工作请求,每种方案重复 5 次编码工作被只消耗时间的工具替代,测的是调度与协作,不是代码质量
图|时间换词元:最快的方案读缓存开销约为最省方案的 3.8 倍,这笔账要自己算。

四组数字,与它们的前提

实验用约 300 条消息驱动不同架构,其中约 20 条是真实工作请求,混着闲聊、追问、打断与 CI 消息;每种方案重复 5 次,消息间隔与工作时长按四分之一缩放,模型调用耗时用真实值,编码工作被只消耗时间的工具替代。

Super-agent 完整版的任务完成时间中位数与 95 分位是 12.4 与 15.7 分钟,读缓存 2323 万词元;去掉直通后是 12.6 与 15.5 分钟,词元升到 3177 万;单会话加子智能体工具、提示优先委派的是 13.8 与 29.0 分钟、1082 万;中性提示下是 20.4 与 29.5 分钟、605 万。

读法有两层。时间上的优势来自架构硬隔离,而不是模型更聪明;代价是多花读缓存词元,最快的方案约为最省方案的 3.8 倍。这笔账要不要付,取决于团队里词元成本与等待成本哪个更贵。

能长期在线,也得有人盯着它打转

持久这一项靠三层分离:Agent 循环跑在云端无状态容器里,会话与任务状态存进云端数据库,计算可以重启或替换;真正的执行环境留在本地,只跑一个轻量无状态的 daemon,私有凭证与未提交代码不出本地,合盖休眠后重连即续跑,即 BYOM 模式。

自愈交给主回路之外的 Watchdog:由定时信号驱动,定期读取各 Worker 的状态机指标,判断有没有实质进展,一旦发现在同类错误里反复打转就熔断重置;维护者还能用自然语言向它问故障原因,并在不重启主系统的前提下热更新过滤规则。

主动性也有一套克制的写法。群里有人在讨论一个缺陷时,Worker 可以在后台静默拉取代码、复现并尝试修复:修得出来就提交 PR,修不出来就销毁沙盒、全程不出声。原型对推断出来的任务默认采用观察模式,先记录「本来会接什么」,再决定要不要开放自动执行。

让智能体合上盖子也不断线,还得有人盯着它打转云端:计算与状态分开Agent 循环跑在无状态容器会话与任务状态存进数据库重启或替换都不丢上下文本地:BYOM 模式只跑一个轻量无状态 daemon私有凭证与未提交代码留本地合盖休眠后重连即续跑外部 Watchdog:主回路之外,由定时信号驱动定期读 Worker 状态机,判断有无实质进展,反复打转就熔断重置可用自然语言问询故障原因,并在线热更新过滤规则开放问题:跨周期记忆衰减、A2A 跨域权限边界、安全隔离尚未闭合仓库明确写着任务目录与命令包装不是安全隔离边界
图|看门狗与主系统分开,是为了让它能在主回路自己救不回来的时候伸手。

边界还没合上

团队自己在文末列了几道暗礁,公开仓库也写得直白,这些比成绩更值得看。实验基于合成负载与简化环境,编码被只消耗时间的工具替代,测的是调度与协作,不能据此判断代码质量。安全边界尚未闭合:云端持续接收不可信事件,同时又连着存有私有代码与凭据的设备,错误授权与提示注入的影响范围随之变大,而仓库明确写着任务目录与命令包装不是安全隔离边界。跨周期的长程记忆衰减也没有解法——链式召回在周度任务里顺畅,跑上几个月后引用图会变稠密,缺少自动剪枝与类似虚拟内存的分级换出淘汰。智能体到智能体的跨域权限边界,在互不共享私有上下文的前提下如何做信任握手,仍属行业空白。

开放出来的原型是 TypeScript 写的,用宽松的 MIT 许可,基于此前开源的 DeepSeek Harness,目录分 router、worker、daemon 与 watchdog,另附九篇设计文档。仓库根还放了一份 SETUP.md,让人直接把它喂给一个编码智能体,由后者当安装向导逐条确认环境配置与信道打通——这个分发方式本身,就是这套架构想法的其中一层注脚。