文章摘要
很多团队用ClaudeCode协同开发时,Token消耗因无效沟通显著增加。伦敦大学学院研究团队经1902次实验,找到降本方法,将重复沟通替换为共享文件后,特定场景下输出Token用量减少约42%。研究还指出多Agent协作Token浪费源头,提出将公共信息存于共享文件,同时说明其适用与不适用的情况,以让Token花在实处。

现在很多团队在用Claude Code协同开发,但很快就会发现一个问题:Token消耗蹭蹭往上涨。改个接口要在群里通知一遍,前后端、测试分别确认,协调Agent还要汇总一次转给所有人,活还没干多少,进度同步就做了三轮,大量Token都花在了无效沟通上。

据行业观察,伦敦大学学院的研究团队针对这个问题开展了1902次实验,专门核算了多Agent协作的Token成本,最终找到了一个简单有效的降本方法。在包含8个Agent、消息密集的协作任务中,将重复沟通替换为共享文件后,输出Token用量减少了约42%。

多Agent协作的Token浪费源头

最直接的浪费来自同一条信息被反复发送。比如一个Agent修改接口时,需要分别通知前端、后端和测试团队,三方收到消息后还要各自回复确认,随着Agent数量增加,点对点的消息会快速铺开,形成大量重复的信息传递。

很多任务其实不需要全员参与。在“搜集资料—分析—执行—验收”的标准流程中,搜集Agent只需要把结果交给分析Agent即可,不需要跟进后续的执行和验收环节,也没必要反复接收后续的进度更新。

协调Agent也容易变成单纯的传话筒。这类Agent负责接收进度、转发消息,看起来一直在忙碌,但实际上只是给协作流程多加了一层汇报环节。实验数据显示,专门设置一个协调Agent,并没有稳定提升任务的成功率。

总结来看,多Agent协作的核心浪费在于:需要反复使用的公共信息被反复发送,而只需要一次性交接的结果却被分发给了太多不需要的参与者。

共享状态文件:把Token花在干活上

研究团队验证的解决方案非常直接:将多个Agent都会用到的公共信息集中存放到共享文件中。

在实际项目中,可以在根目录创建一份AGENT_STATUS.md文件,将任务目标、验收标准、Agent分工、当前进度、已经确认的结论和阻塞问题都记录在这里。每个Agent在开始工作前,先读取这份文件的最新状态,完成自己的工作后再更新文件内容。

这样一来,协作消息不再需要搬运完整的背景信息,只需要告知其他参与者“哪里发生了变化”即可。比如接口更新时,先修改共享状态文件,再通知受影响的前端和测试Agent,其他不需要该信息的Agent则不用接收相关消息。

这份共享文件就像团队的办公室白板,所有需要全员知晓的公共信息都写在上面,只有真正紧急的事项才需要单独一对一沟通。

需要注意的是,42%的Token降幅来自特定的实验场景,不能直接套用到所有项目中。如果只有两个Agent进行一次交接,专门创建、读取和更新共享文件的成本可能反而更高,真正影响收益的是公共信息原本被重复传递的次数。

不是所有消息都适合放进共享文件

共享状态文件虽然好用,但也不能不分场景地使用。

如果消息只影响单个Agent,采用点对点发送的方式效率更高;如果信息会影响全员协作,再通过广播或者更新共享文件的方式传递。

对于协调Agent来说,也没有必要接收和转发所有消息。它们真正的职责应该是拆分任务、明确输入输出边界、限制修改范围、检查最终结果,只有当协作中出现冲突、任务偏离目标或者验收失败时,再介入处理即可。

上下游Agent之间可以直接完成的交接,不需要再通过协调Agent绕一次流程。

哪些情况不适合使用共享状态文件

如果任务本身已经通过现有文件完成交付,就不需要再额外创建一份状态文件。

如果只有两个Agent进行协作,发一条消息就能说清楚所有事项,也没必要搭建专门的共享状态流程。

还有一种情况需要特别注意:如果项目变化很快,但没有人及时更新共享文件的状态,其他Agent读到的会是过期信息,干活越快返工越多,所谓的“唯一事实来源”反而会变成唯一的过期信息来源。

判断是否需要使用共享状态文件,只需要问一个简单的问题:这条信息接下来会不会被多个Agent反复使用?如果答案是肯定的,就集中保存;如果只是单次交接,直接交给需要它的Agent即可。

Claude Code的跨会话通信功能解决了多Agent“能不能聊”的问题,而接下来更现实的课题是如何让它们少说重复的话。Token成本应该花在实际的开发工作上,而不是无效的同步沟通中。

以上内容不代表本平台立场,仅供读者参考