Skip to content

Auto 智能编排:一种 Lead 驱动的多智能体执行协议 ​

摘要

用户给编码智能体的指令通常很短,也很少足够精确;模型在信息不足时倾向于大范围读取代码,使主上下文被与决策无关的内容占据。Auto 是 Piwin 内置的一种编排方案,它不增加新的"智能",而是把软件工程中的分工、隔离、审查与验证固化为 Host 可执行的协议:主代理(Lead)先陈述目标并按最小读取原则取证;高噪声的探索交给只读的 Scout,在独立上下文中完成;已定方案的机械实现交给唯一的写者 Sidekick,在独立工作树中产出候选改动;改动超过规模阈值时必须经过独立 Reviewer;合入后由 Tester 在工作区快照中后台验证。

本文说明这四条约束各自针对什么问题、依据是什么,以及它们的适用边界。

1 引言:从 Ultra 与 Fusion 到 Auto ​

Piwin 的编排模式不是多代理角色扮演,而是一套可选择的工程执行协议。用户在发送每条消息前选定一种编排方案,Host 随即把对应的主代理纪律、角色名册、并发边界、隔离方式、审查规则与交付流程注入本次运行。

Piwin 编排模式的定义:Host 把主代理纪律、角色名册、并发边界、隔离方式、审查规则和交付流程注入本次运行
图 1Piwin 对「编排模式」的定义:一套由 Host 执行的工程协议原帖截图

在 Auto 之前,Piwin 已有两种方案,它们现在是 Auto 的组成部分(见 §2.2、§2.3):

  • Ultra Code:主代理派出只读的 Scout 先行侦察,再基于报告动手,适合排查问题;
  • Fusion:强模型(Lead)负责规划与终审,高性价比模型(Sidekick)负责执行,适合实现新功能。

两者单独使用时存在一个共同的缺陷:方案的选择权被交还给了用户。"排查问题用 Ultra、写新功能用 Fusion"是一条过于粗糙的经验法则,真实任务往往先要定位、再要实现、最后还要验证,中途切换方案既不自然,也没有人会去做。

Auto 的出发点因此有两个:

  1. 合并:把 Ultra 的取证能力与 Fusion 的分工结构放进同一个方案,由 Lead 根据任务当前的状态决定下一步交给谁;
  2. 约束:用一组 harness 规则限定 Lead 的行为。用户往往无法提供足够准确的提示词,却期望一句话解决问题;在这种输入条件下,与其指望模型自行把握分寸,不如让它在明确的工程约束内决策。
Auto 编排本质上是一个 Lead-driven 的多智能体执行系统:scout 找证据,sidekick 写代码,reviewer 独立审查,tester 后台验证
图 2Auto 的一句话定义:Lead 驱动的多智能体执行系统原帖截图

2 设计总览 ​

2.1 角色与流转 ​

Auto 并不是第四套独立的编排器。它引用已有方案的角色——Scout 来自 Ultra Code,Sidekick 来自 Fusion,Reviewer 来自 Reviewed Delivery——只新增了 Tester。修改 Ultra 中 Scout 的模型配置,Auto 会随之生效。

图 3 给出一次任务在各角色之间的完整流转,可点选任一阶段查看细节。

独立上下文 · 只读独立 worktree · 写入隔离需求答复有界问题file:line 报告brief候选修改意见apply快照pass | fail | blocked · 稍后回流你一句话Lead判断 · 路由 · 终审主会话模型Scout × N并行取证Sidekick唯一 writerReview5 文件 / 300 行闸工作区你的代码Tester快照 · 后台 · 不合入
01
先陈述目标

Lead 动手前先输出一行 [Goal] 与最小读取集。意图识别错了,用户在这一步就能打断并补充信息。

图 3Auto 的任务流转。实线为主干,虚线为回流或异步消息;两个虚线框分别是上下文隔离与写入隔离的边界

各角色的职责边界如下:

角色职责权限与隔离并发
Lead理解需求、路由、处理歧义、终审、对用户交付主会话,持有完整上下文—
Scout定位符号、追踪调用、扫描大文件,返回带 file:line 的证据只读,独立上下文可并行
Sidekick对已定方案做机械实现,报告 done / blocked / escalate可写,独立 worktree,看不到主会话历史1
Reviewer对一份冻结的候选改动做独立审查只读按需
Tester合入后验证真实行为并给出证据工作区快照,改动永不合入每会话至多 1 个

路由决策始终由 Lead 做出,Host 不对任务做题型分类。Host 只强制执行一道客观闸门:改动规模超过阈值时必须经过独立 Reviewer(见 §6.3)。

2.2 子方案一:Ultra Code ​

Ultra Code 是 Auto 中取证部分的来源,面向中大型代码库里"先弄清楚再动手"的任务。

text
[用户需求] ──> [主代理]
                  │ 派发有界问题
                  ▼
        [Scout 只读侦察] ──深入代码库──> [定位符号 · 追踪调用 · 评估风险]
                  │
                  ▼ 带 file:line 的结构化报告
              [主代理] ──抽查引用──> [在干净的上下文中修改]
  • Scout 以只读方式进入代码库,只负责梳理接口定义、调用关系与潜在风险,输出结构化报告;
  • 主代理审阅报告后再动手,避免"边搜边改"把搜索过程中的全部中间产物留在主上下文里。

它解决的问题与依据在约束二中展开。

2.3 子方案二:Fusion ​

Fusion 是 Auto 中分工部分的来源:强模型做规划与终审,高性价比模型做执行。

text
┌──────────────────────────────────┐
│  Lead(主会话)                   │
│  理解需求 → 拆解任务 → 审查结果   │
└──────────────────────────────────┘
        │ brief(自包含任务简报)
        ▼
┌──────────────────────────────────┐
│  Sidekick(独立子会话)           │
│  · 独立 Git worktree 中写代码     │
│  · 在 worktree 内运行测试与构建   │
│  · 提交候选改动 candidate         │
└──────────────────────────────────┘
        │ Lead 审查通过后应用
        ▼
┌──────────────────────────────────┐
│  用户工作区                       │
└──────────────────────────────────┘
  • 简报隔离:Sidekick 只能看到分配给它的 brief,看不到主会话的历史;
  • 写入隔离:所有文件写入发生在独立的 Git worktree 中,主工作区不会出现半成品;
  • 显式合入:候选改动经 Lead 审查批准后才应用到工作区。

它的依据在约束三与约束四中展开。

2.4 Auto 在两者之上增加了什么 ​

来源进入 Auto 的部分Auto 的补充
Ultra CodeScout 及其只读契约必须先说明"答案如何改变计划"才能派出 Scout
FusionLead / Sidekick 分工、worktree、单写者规模闸:超限改动强制独立审查
Reviewed Delivery独立的只读 Reviewer仅在超过规模闸时启用
Auto 自身—常驻的 Goal 行与最小读取纪律;后台 Tester

Ultra Code 与 Fusion 仍可在编排下拉中单独选用,适合只想要其中一种行为的场合;一般情况下直接使用 Auto 即可,由 Lead 决定何时取证、何时交给 Sidekick。

下面依次讨论 Auto 的四条约束。

3 约束一:先陈述目标,再按最小读取原则取证 ​

Lead 在采取任何行动之前,必须先输出一行内容:目标(Goal),以及为达成目标所需的最小读取集或需要启动的 Scout。

Lead 输出的 Goal 行示例:解释 piwin auto 编排的设计与优势;最少读取:先查现有文档与源码位置的只读证据,若不明确再让 scout 定位
图 4Lead 在动手前输出的 Goal 行原帖截图

这条规则包含两个部分,各自针对一个问题。

3.1 Goal 行:把意图识别变成可检查的输出 ​

模型对一句话需求的理解是否正确,在传统流程中要等到它产出结果才能判断,此时已经消耗了大量时间与 token。Goal 行把意图识别提前为第一个可见输出:理解有偏差,用户可以立即暂停并补充信息,纠错成本降到最低。

3.2 最小读取:每一次读取都必须能改变答案 ​

当前相当一部分模型存在过度思考与无目的重复读取的倾向,在提示词不够精确时尤其明显。Auto 对信息收集阶段施加了严格限制:

  • 每一次新的读取或搜索,都必须有可能改变当前的结论,否则跳过;
  • 答案一旦确定即停止收集,不做"保险起见再看一眼"式的读取;
  • 主线程内不做全仓库 grep 或扫描,不读无关的相邻目录、旧快照、备份副本;
  • 确实需要大范围搜索时,只能通过 Scout 进行,并且必须先说明"这个问题的答案会如何改变计划"。

需要强调的是,严格限制只作用于信息收集。对改动的验证不受此约束,那是 Reviewer 与 Tester 的职责。

规则来源

这条规则改编自 LINUX DO 社区讨论 《如何在 DSH 里提高 DS4.1F 的效率,根治多动症和发散行为》中分享的 agent.md,并与 Karpathy 的编码准则做了合并。

4 约束二:隔离高噪声探索,抑制上下文污染 ​

Piwin 中的 code_search 工具与 Scout 子代理服务于同一个目标:减少进入主上下文的无关内容。

4.1 术语说明 ​

本文把"与当前决策无关、却持续占据主上下文的内容"称为上下文污染。这是原帖为了便于讨论而使用的非正式说法。业界对同类现象已有若干相近的表述,例如 context rot(上下文腐化)[4],以及对失效模式的进一步细分:context poisoning、distraction、confusion、clash[5]。本文不严格区分这些概念,统一使用"上下文污染"。

观察任意一次智能体运行的调用链路,出现最频繁的工具几乎总是 Grep 与 Read。一个典型的长思考模型的工作轨迹是:

读取目录树 → 读取大量文件 → 其中相当一部分是无关实现 → 运行测试

所有这些产物——有用的与无用的——都落在同一个上下文里。上下文是模型做出每一步决策的全部依据,因此污染的代价不是"占了点空间",而是直接作用于决策质量。

更关键的一点是:上下文膨胀的大头通常不是模型的推理文字,而是旧的工具输出。JetBrains Research 在 SWE-agent 上的统计显示,观察结果(文件内容、命令输出等)平均约占每轮 token 的 84%[9]。换言之,主会话每多读一次无关文件、多跑一次冗长命令,后续每一轮都会带着这笔噪声继续计费、继续抢注意力——污染会自我放大,而不是只发生在"读完那一下"。

4.2 四种退化机制 ​

(1)注意力稀释。 假设探索阶段读取了 30 个文件,而真正需要修改的只有 4 个。这 4 个文件的内容必须与其余 26 个文件竞争模型的注意力。关于长上下文的研究表明,相关信息在上下文中的位置与周围干扰内容的数量,都会显著影响模型对它的利用效果[4][6]。

(2)错误线索残留。 探索过程中的自我否定("等等,我发现……")、重复查询、以及读到的旧实现,都会留在上下文中。即使模型随后推翻了这些线索,它们仍是后续每一步推理的输入。影响的权重也许不大,但不为零。

(3)推理状态混乱。 排查问题时,模型会产生一连串中间假设:"可能是 A → 不对 → 可能是 B → 又排除"。这些假设构成了冗长而低价值的上下文。此时主动压缩(compact)一次通常会改善效果,但实践中很少有人这样做,因为会话仍在工作。

(4)成本累积。 上述内容会随每一次后续请求被重复携带。即使命中缓存,多数计费方式下缓存读取仍然收费;上下文越堆越大,每一轮的固定开销随之上升。

这四种机制叠加的结果是:上下文即使远未触及窗口上限,有效信息密度也已显著下降——模型很难在大量内容中定位到关键的决策依据。图 5 用一个简单的计数模型说明这一点。

主上下文(Lead 做决策的地方)30 项
Scout 上下文(任务结束即丢弃)未使用

所有搜索、试读与中间假设都直接落在左侧。

主上下文有效信息密度13%

4 个相关文件要与 26 个无关文件竞争注意力,并且这些无关内容会随每一次后续请求被重复携带。

与修改相关的文件探索中读到的无关内容Scout 压缩报告
图 5有效信息密度示意:拖动滑块改变探索读取量,切换模式比较探索产物留在主上下文与被 Scout 隔离两种情况示意模型,以文件为计数单位,非实测数据

4.3 为什么不能简单地缩小上下文窗口 ​

既然内容越多越容易稀释,一个直觉上的对策是使用较小的窗口并频繁压缩。部分工具默认采用 256K 左右的窗口,信息密度的考虑可能是原因之一。但缩小窗口并不能解决问题,长上下文有其不可替代的价值:

检索的完整性。 当前主流模型的工作方式就是长时间思考与检索,一二十分钟的代码库探索并不罕见。窗口过小时,探索尚未结束、模型还不清楚哪些代码是关键的,压缩就已经被触发。

压缩是有损的。 压缩是上下文管理中最关键的环节。以 Pi 的实现为例:每次保留一定数量的近期 token,对更早的内容做渐进式摘要。摘要必然丢弃一部分信息,而"哪些可以丢弃"本身就是一个困难的判断。窗口越小,被迫摘要的内容越多,丢失的原始证据也越多;窗口足够大,才能保留更多原始证据。此外,部分模型能够感知自身剩余的上下文预算,据社区观察,它们在窗口接近用尽时的决策会趋于保守。

长任务的需要。 用户经常把一份很长的文档交给模型,期望它处理好每一个细节。完整读入长文档的能力是这类任务的前提。

多工具的需要。 智能体接入的工具越来越多,工具返回是决策信息的重要来源。在难以事先判断哪些返回重要的情况下,尽量保留是更稳妥的策略。

于是出现了一对矛盾:

长上下文是必要的,上下文污染又是有害的。
问题不在于窗口多大,而在于让什么内容进入主上下文。

4.4 Scout:检索子代理与信息压缩器 ​

子代理最初被引入的目的就是上下文隔离。代码搜索与分析、大量的 shell 输出、浏览器的 DOM 快照与截图——这些操作都会产生大量中间噪声。把它们放进子代理,子代理在自己的上下文中消化这些噪声,只向主代理返回一份摘要。

结合 4.1 的定量事实就更清楚了:若每轮上下文约有 84% 是观察结果,那么"主模型自己去搜、自己去读"等于把膨胀主力直接堆进 Lead 的决策窗口。Scout 要解决的,正是把这部分高噪声、低决策密度的 token 挪出主会话。

Scout 可以被理解为**"检索子代理 + 信息压缩器"**的组合,其好处可以概括为四条:

  1. 噪声不出主会话。 它消耗的是自己的上下文,任务结束即丢弃;读了多少文件、跑了多少命令,都不进入 Lead 的历史。
  2. 回传的是证据,不是原文。 返回带 file:line 引用的结构化报告,而不是整文件、整段日志;Lead 抽查几处引用即可,不必重复 Scout 已做过的搜索。
  3. 保护决策带宽。 Lead 的注意力留给目标、路由、取舍与终审;84% 量级的观察 token 不再与真正要改的那几处代码抢位,有效信息密度得以维持(对照图 5)。
  4. 成本结构更合理。 探索本身可以交给更快、更便宜的模型;总 token 未必变少,但昂贵的主模型少背旧工具输出,后续每一轮的固定开销不再被探索噪声拖着涨。

与图 5 对照:Scout 读取多少文件,都不改变主上下文中的条目数。4.3 节的矛盾由此得到缓解——主上下文保持足够大的窗口以保留原始证据,同时只接收经过筛选的内容。

Auto 对 Scout 的使用也设了边界:每个 Scout 只回答一个有界的问题,Lead 必须说明该问题的答案为何会改变计划;Scout 不修改代码、不做架构决策、不再派生子代理。

4.5 业界的一致做法 ​

上述判断并非 Piwin 独有,近一年的公开资料已基本形成共识:

  • OpenAI 的多智能体指南把子代理架构描述为绕开上下文限制的一种方式:子代理可以自行探索数万乃至数十万 token,最终只向主代理返回约 1–2k token 的精炼摘要[1]。
  • Cursor 的 Subagents 文档指出,代码库探索会产生大量中间输出并使主上下文膨胀,因此将其放入独立上下文。Cursor 内置的三个子代理——Explore(代码搜索与分析)、Bash(大量 shell 输出)、Browser(DOM 快照与截图)——恰好都是高噪声工具的代理[2]。
  • Anthropic 在关于上下文工程的文章中同样建议:子代理在独立上下文中完成深入探索,只返回压缩后的摘要[3]。
  • JetBrains Research 进一步给出了软件工程场景下的 token 构成:SWE-agent 轨迹中,观察结果平均约占每轮的 84%,说明上下文管理应优先针对工具输出,而不是只压缩模型自己的推理文字[9]。Scout 把整段探索放到独立上下文,相当于在编排层先做了一次更彻底的"观察隔离"——噪声甚至不会进入主会话,而不是事后再掩码或摘要。

5 约束三:判断与执行分离 ​

Auto 的角色分工继承自 Fusion,其思路来自 Devin 的同名设计:由强模型主导规划,配以高性价比的执行模型。

Auto 的五个角色卡片:Lead、Scout、Sidekick、Reviewer、Tester
图 6Auto 的五个角色及其职责原帖截图

与"主模型主导一切"的传统做法相比,这种分工的收益在于成本而非 token 数量:总 token 消耗未必减少,但其中相当一部分转移到了单价更低的模型上。

各角色对模型能力的要求不同,可以分别配置:

角色对模型的要求原帖给出的配置示例
Lead最强的判断与规划能力Fable 5.1
Scout速度优先SWE-1.6、Gemini 3.6 Flash
Sidekick性价比与执行稳定性Flash 级模型、Grok
Reviewer独立而细致的审查能力Luna
Tester较强的 agentic 能力(可能需要驱动 E2E)按需选择

分工的关键在于划清什么可以下放。Auto 的路由规则是:

  • 位置未知、证据不足 → Scout;
  • 方案已定、实现机械 → Sidekick;
  • 架构取舍、需求歧义、体验判断 → Lead 自己完成,判断永不下放。

Lead 与 Sidekick 之间不共享完整的会话记录,只交换 brief(自包含的任务简报:目标、范围、约束、成功标准)与 result。这既避免了 Sidekick 被主会话历史污染,也避免了反复重发上下文导致的缓存失效。

6 约束四:单写者、隔离工作树与后台验证 ​

6.1 为什么判断不能下放 ​

"判断永不下放"并非出于保守,而有实验依据。Devin 团队在一个跨团队的 React/Redux 搜索栏任务中,尝试把判断型工作交给便宜模型,结果如图 7 所示。

任务成本−28%
Lead 保留判断
100
判断下放给便宜模型
72
单位:相对值
任务得分−50%
Lead 保留判断
54
判断下放给便宜模型
27
单位:分
图 7把判断型工作下放给便宜模型:成本下降 28%,得分减半数据转引自原帖引用的 Devin 实验(跨团队 React/Redux 搜索栏任务)

成本只下降了 28%,得分却从 54 跌至 27。这说明真正有效的降本方式不是让便宜模型代替 Lead 思考,而是让 Lead 保留判断、计划、歧义处理与终审,只把明确而机械的实现交出去。

6.2 为什么写操作必须单线程 ​

同一实验得出的另一条结论是:写操作应尽量保持单线程。额外的代理应当优先贡献"智力"(搜索、审查、验证),而不是同时修改同一份代码。

读代码与写代码的并发性质不同。只读的 Scout 与 Reviewer 可以任意并行;多个写者同时修改同一仓库,则会带来文件冲突、基线提交漂移,以及"审查时看到的快照"与"实际合入的内容"不一致的问题。

Piwin 的 Fusion 是 Lead 加一条可复用的 Sidekick lane;写代码的 sidekick 保持 maxConcurrency 为 1
图 8Piwin 采用「worktree + 单写者」的理由原帖截图

Piwin 在实现过程中也实际观测到了并行工作树的资源问题:

  • 4 份遗留的 worktree 占用了 567 MB 磁盘;
  • 8 次依赖安装全部失败;
  • 4 份 worktree 中有 3 份把 node_modules 软链接回了主仓库,验证边界因此被破坏——在隔离环境中跑的测试,实际用的是主仓库的依赖。

最终的设计是:

  • 只读的 Scout 与 Reviewer 可以并行贡献信息;
  • 写代码的 Sidekick 保持 maxConcurrency: 1,在隔离的 worktree 中产出候选改动(candidate);
  • 同一条 Sidekick lane 在会话内持续复用,修改意见以新的 brief 发回同一个 Sidekick;
  • 候选改动由 Lead 显式审查并应用,一份候选只做一次决定。

这样既继承了 Fusion 的降本逻辑,也保证了交付的可审查、可复现、可回滚。

6.3 规模闸:谁来审查 ​

Lead 自审适用于小改动。当候选改动超过以下任一上限时,Host 会拒绝 Lead 的自审,强制要求启动独立的只读 Reviewer:

上限默认值
涉及文件数5
改动行数300

这是整个方案中唯一由 Host 强制执行的路由规则,阈值可在设置中调整。Reviewer 给出 approved、changes-requested 或 blocked 三种结论之一;同一改动的"修改—再审"循环不超过两轮,超出则停止并向用户说明。

6.4 Tester:不阻塞反馈的后台验证 ​

改动合入后,Lead 不等待测试结果,而是立即告诉用户改了什么、可以手动尝试什么;与此同时启动 Tester。

Tester 的设计有三个要点:

  • 基线是工作区快照。 Tester 运行在独立 worktree 中,基线为当前工作区的快照(包含未提交的改动),它自己的任何编辑都不会被合入。
  • 目标是行为证据,不是覆盖率。 优先执行真实行为——运行命令,或在非默认端口启动预览并驱动界面,留下输出或截图;其次才是与改动范围相关的既有测试与类型检查。只有在复现了失败时才补充回归测试。
  • 报告异步回流。 报告第一行为 pass、fail 或 blocked,正文逐条给出验收标准对应的证据。如果用户的新消息将改变被测代码,Lead 会取消正在运行的 Tester,在改动后重新启动。

长时间的测试因此不再占用用户等待的时间。

7 实现要点:纪律的渐进式披露 ​

把上述全部规则一次性写进系统提示,本身就会制造上下文污染。Auto 因此把纪律分三层披露:

层级内容注入时机
L0 常驻纪律Goal 行、信息收集限制、编码准则、路由规则始终在场,保持简短
L1 角色手册每个角色的完整操作循环会话中首次使用该角色前,由 Lead 调用 piwin_scheme_playbook 获取
L2 下一步提示当前候选改动应执行的具体调用附在工具返回结果上

Lead 只在需要时才读到某个角色的详细流程;审查、应用、启动 Tester 这类步骤性的指引,随工具结果在恰当的时刻出现,而不必常驻上下文。这与约束二是同一原则在提示词层面的应用。

8 使用与配置 ​

在 Composer 输入框上方的编排方案下拉中选择 Auto。方案按消息生效,可以随时切换。

Composer 输入框上方的编排方案下拉菜单
图 9在 Composer 的编排下拉中切换方案

Auto 的成员模型引用自各自的来源方案,不在 Auto 里单独配置:

想调整的角色到哪里配置
LeadComposer 中当前选择的主模型
ScoutUltra Code 方案的 scout 成员
SidekickFusion 方案的 sidekick 成员
ReviewerReviewed Delivery 方案的 reviewer 成员

选中对应方案后点击旁边的「编辑 / 模型配置」即可修改,各角色的选型建议见 §5 的表格。

记得为执行角色单独选模型

成员未单独配置模型时会继承主模型。此时 Scout 与 Sidekick 用的仍是最贵的那个模型,"强模型判断、便宜模型执行"的成本结构就不成立了。

9 讨论与局限 ​

术语与度量。 "上下文污染"与"有效信息密度"在本文中是定性概念。图 5 是以文件计数的示意模型,并非对注意力分配的测量;本文没有给出污染程度与任务成功率之间的定量关系。

压缩质量依赖模型判断。 无论是 Scout 的报告还是上下文压缩,都假定模型能够判断哪些信息重要。这一假定在多大程度上成立,目前缺乏系统的验证。Auto 的对策是要求 Scout 返回可核对的 file:line 引用,并由 Lead 抽查,但抽查不能完全排除遗漏。

实验证据的外推。 6.1 节引用的实验来自单一任务,结论的方向清晰,具体数值不宜直接推广到其他任务类型与模型组合。

单写者的代价。 maxConcurrency: 1 以吞吐量换取了可审查性。对于可以清晰拆分、互不依赖的大型任务,这一限制会延长总耗时。

路由仍依赖 Lead。 除规模闸外,所有路由决策都由 Lead 做出。Lead 判断失误——该派 Scout 时自己大范围读取,或把需要判断的工作交给 Sidekick——方案的收益就会打折扣。

10 结语 ​

Auto 的各个组成部分都有明确的出处:最小读取规则来自社区实践,上下文隔离是业界共识,角色分工与单写者原则来自 Devin 的 Fusion。它所做的工作是把这些做法组合成一套由 Host 强制执行的协议,而不是寄望于模型自觉遵守。

整个设计可以归结为一句话:

把高噪声探索从主上下文剥离,把工程判断集中在 Lead,把写操作收敛为单 writer,把验证和审查变成独立证据流
图 10Auto 的设计归纳原帖截图
把高噪声探索从主上下文剥离,把工程判断集中在 Lead,
把写操作收敛为单一写者,把验证与审查变成独立的证据流。

欢迎在原帖中批评与讨论。

参考资料 ​

  1. OpenAI. Multi-agent(Responses API 指南). https://developers.openai.com/api/docs/guides/responses-multi-agent
  2. Cursor. Subagents 官方文档. https://cursor.com/docs/subagents
  3. Anthropic. Effective context engineering for AI agents. 2025. https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents
  4. Hong, K., Troynikov, A., Huber, J. Context Rot: How Increasing Input Tokens Impacts LLM Performance. Chroma Research, 2025. https://research.trychroma.com/context-rot
  5. Breunig, D. How Long Contexts Fail. 2025. https://www.dbreunig.com/2025/06/22/how-contexts-fail-and-how-to-fix-them.html
  6. Liu, N. F., et al. Lost in the Middle: How Language Models Use Long Contexts. TACL, 2024. https://arxiv.org/abs/2307.03172
  7. LINUX DO 社区. 如何在 DSH 里提高 DS4.1F 的效率,根治多动症和发散行为(#21 楼 agent.md). https://linux.do/t/topic/2967866/21
  8. Cognition. Devin Fusion 相关实验,转引自原帖截图。
  9. Lindenbauer, T., et al. (JetBrains Research). The Complexity Trap: Simple Observation Masking Is as Efficient as LLM Summarization for Agent Context Management. arXiv:2508.21433, 2025. 文中报告:SWE-agent 上观察结果(文件内容、命令输出等)平均约占每轮 token 的约 84%。 https://arxiv.org/abs/2508.21433 · https://blog.jetbrains.com/research/2025/12/efficient-context-management/

关联文档 ​

Released under the MIT License.