单 agent 开始不合适的信号通常不是“它做不出来”,而是“它为了做出来付出的上下文和协调成本越来越离谱”。
几个典型信号:
- 同一会话里同时背负太多子目标
- 频繁在不同目录、不同技术栈、不同验证链之间切换
- 需要并行探索多个假设或多个修复路径
- review、实现、验证互相污染上下文
subagent 或 controller-worker 最大的价值,是把“总控决策”和“局部执行”拆开,让不同 agent 只背负自己那一段的上下文。
但代价也很真实:handoff 成本、状态同步、重复工作、验证责任分散都会上升。
所以不是任务一大就上多 agent,而是当上下文切换成本已经大过 handoff 成本时,再引入 subagent 才划算。