简介:当代码生成速度不再是瓶颈,真正制约研发效率的是人的注意力。本文从单会话串行模式的局限出发,剖析“请示式交互”与协作断层带来的隐性成本,并探讨以任务隔离、后台调度、状态收敛为核心的分布式智能体架构,为团队构建可持续的AI编程工作流提供可落地的设计思路。
很多把 AI 引入日常研发的工程师,都有过一种类似的抓狂体验:刚敲完一段提示词,起身去接杯水,回来发现终端里的进程早就卡在半路,光标孤零零地停在屏幕上,等着你手动敲一个回车确认。表面上看是“等了一会儿”,实际消耗的却是注意力的反复切换——你得重新捡起上下文,回忆刚才交代了什么,再判断这一步该不该放行。
过去一段时间,市面上各类编程助手的宣传都在强调生成有多快:敲下一行自然语言,大模型瞬间吐出几百行代码,终端里的测试用例全绿。但在真实的软件团队里,这种看似惊艳的即时反馈,正在变成一场高频的精力拉锯战。智能体每读一个文件、改一行配置、跑一条命令,都要弹出来请示一次;你在群聊里刚把业务背景交代清楚,转头去代码评审工具里提修改,又得把前因后果重新搬运一遍。一旦任务涉及跨模块排障或依赖重构,会话窗口很快被几十轮上下文撑爆,稍有不慎就答非所问。
把这个尴尬挑明的,是来自国内顶尖技术团队的一份架构方案。2026 年 10 月 31 日晚,DeepSeekHarness 团队在官方公众号发表了题为《Super-agent 设计探索:迈向更自主的 Agent 系统》的技术长文,系统阐述了一套面向软件工程的研究原型设计。文章开篇没有过多渲染大模型写代码能跑多快,而是开宗明义点出了一项核心准则:尽可能少占用人的注意力,尽可能多交付价值。
这篇技术长文直接指出了 AI 编程目前最尴尬的瓶颈:当底层模型的单点生成能力越来越强,限制产出规模的瓶颈早就变了,真正卡住团队的是人类开发者的注意力极限。逼着智能体在聊天框里对人类秒回加请示,往往只会把人累死。把它扔去后台,做成一套能自己调度、彼此隔离的分布式系统,才是 AI 真正融入软件工程该走的路。
在现有的编程智能体架构中,单会话串行模式从来都不便宜,它吃掉的是人的精力。
目前主流的代码助手,无论是命令行工具还是桌面插件,底层逻辑基本都绑在单一的“思考—行动”循环里。这个小小的对话框塞了太多杂活:一边得听懂人话,一边得伸手去跑命令行读写文件,还得硬生生顶住几十轮工具调用的超长上下文。它像一个被塞满待办事项的实习生,每做一步都要回头问一句“这样可以吗”。
据该团队在长文中的观察,一个人类工程师在实际工作中,同时能保持深度记忆并有效跟进的活跃会话,通常只有三到五个。一旦超出这个数量,人类大脑就无法维持多条上下文的连续性,只能被迫在不同的聊天窗口之间反复横跳。这意味着,智能体每多开一个请示窗口,就多占用一份本已稀缺的认知带宽。
可以用一个简单的模型来理解这种成本。假设一次任务需要 N 步工具调用,每步都以同步确认的方式交回人类,那么人类需要被打断 N 次。每次打断的恢复成本约为数十秒到数分钟不等,且随任务复杂度上升。当 N 从 10 涨到 50,人类的有效工作时间被切碎成几十段碎片,原本“快”的生成能力反而被“慢”的确认流程抵消掉。
# 伪代码:同步请示模式下的注意力开销def run_agent_sync(task):context = init_context(task)while not task.done:action = model.plan(context)approved = human.confirm(action) # 每次都打断人类if not approved:context = human.revise(action)continueresult = execute(action)context = context.append(result)return task.result# 人类被打断次数 ≈ 工具调用步数
这段伪代码说明了问题的本质:确认动作与人类注意力强耦合,而注意力恰恰是不可并行扩展的资源。
比模型能力更现实的麻烦,出在协作断层上。在真实研发场景中,沟通从来不是单点的。产品经理可能在即时通讯群里提出方案调整,架构师在代码评审里给出两行批注,CI 流水线又在后台报出编译失败。这些信息分散在不同的工具与时间线上,而单会话智能体只能看到被手动搬运进来的那一小段。
于是就出现了典型的“上下文搬运工”现象:工程师在群聊里读完需求,复制到对话框;再把评审意见粘贴进去;编译日志还得再截一段。每一次搬运都是一次信息损耗,也是一次注意力的额外支出。更糟的是,当任务需要跨模块排障或依赖重构时,单个会话的上下文窗口很快被撑爆,模型开始遗忘早期约束,答非所问随之而来。
从系统设计角度看,这是状态管理缺位的问题。智能体的工作状态没有独立于对话窗口的载体,无法被持久化、被多个执行单元共享、被异步恢复。人类被迫充当了“消息总线”和“状态存储器”的双重角色,而这恰恰是最不该由人来承担的部分。
该技术长文给出的方向并不复杂,但很根本:把智能体从“聊天框里的对话者”重新定义为“后台可调度的执行单元”。核心设计原则可以归纳为三条。
第一,任务隔离。 每个任务拥有独立的执行环境、上下文与生命周期,彼此不共享易失的对话状态。一个任务在跑长耗时测试,另一个任务在等代码评审反馈,两者互不阻塞。隔离带来的直接收益是:单个任务的上下文不再被无关信息污染,模型的决策质量更稳定。
第二,异步调度与状态收敛。 智能体的中间状态写入可持久化的存储层,由调度器按优先级和依赖关系推进,而不是由人类的回车键驱动。人类只在关键决策点介入,例如方案取舍、风险确认、最终合并。其余步骤交由系统自行推进,并把结果收敛成一份可读的摘要回传。
第三,注意力预算显式化。 把“人类需要关注什么”当作一等设计对象。系统应主动聚合跨工具的信息,把群聊、评审、流水线日志中的关键信号提炼成结构化事件,而不是把原始噪音一股脑推给人。
# 示意性配置:任务隔离与异步推进task:id: refactor-auth-moduleisolation: sandboxed # 独立执行环境state_store: persistent # 状态可恢复schedule:mode: asyncdepends_on: [unit-tests, review-approval]human_in_loop:- decision: architecture-tradeoff # 仅关键点介入- decision: final-mergenotify:aggregate: true # 聚合后摘要回传
这种架构并不要求模型本身更强,它改变的是人机协作的拓扑结构:从“人盯着每一步”变为“人设定边界、系统推进、人做验收”。这也是“尽可能少占用人的注意力,尽可能多交付价值”这条准则在工程上的直接落地。
对于准备在团队内实践这一思路的开发者,以下几点值得提前想清楚。
上下文治理先于模型选型。 分布式架构下,上下文不再是单一窗口,而是分散在多个任务状态中。需要明确哪些信息是任务级私有、哪些是团队级共享、哪些必须脱敏。缺乏治理的多任务并行,只会把上下文污染从一处扩散到多处。
确认点的粒度设计。 全自动不等于无人值守。合理的做法是把确认点放在不可逆操作之前(如合并、部署、删除资源),而把可逆操作(如读文件、跑测试、生成草稿)交给系统自行推进。粒度太细退化为请示模式,太粗则带来风险。
可观测性不可或缺。 后台运行的智能体如果不可观测,就变成了黑盒。需要为任务执行链路提供日志、指标与追踪能力,让工程师能随时回答“它现在在做什么、卡在哪、为什么”。这也是把智能体纳入常规研发运维体系的前提。
渐进式迁移。 不必一次性推翻现有工作流。可以先从长耗时、低风险的任务类型切入,例如批量依赖升级、跨模块静态检查修复,积累调度与状态管理的经验,再逐步扩展到更复杂的排障与重构场景。
AI 写代码越快,人类反而越忙,这个悖论的根源不在模型,而在协作结构。当生成能力不再是瓶颈,注意力的分配方式就成了新的效率杠杆。把智能体从聊天框里解放出来,做成一套能自己调度、彼此隔离、状态可恢复的分布式系统,并不是让人类退出研发,而是让人回到真正需要判断力的位置上。对开发者而言,这意味着更少的中断与更多的连续思考;对团队而言,这意味着 AI 的产出规模终于能与人的注意力容量解耦。这或许才是“智能”二字在软件工程里应有的落点。