为调试工作流设置支出上限的 Claude Code 子代理链
使用 Claude Code 做事故分诊或代码质量扫描的团队,应把嵌套子代理当作一个已配置的工作流来管理,并配上预算、允许列表和深度规则。Claude Code v2.1.172 允许子代理再生成子代理,最多五层,每一层都有自己的提示词、模型选择和 20 万 token 上下文。这适合日志检索这类噪声很大的任务,因为父会话只需要一个简短结论。
一个可行的配置,是在项目级 .claude/agents/<name>.md 链里放一条调试路径:一个 Opus 分诊代理、若干 Sonnet 复现代理,以及用于 grep、生成测试或汇总日志的 Haiku 叶子代理。每个代理定义都应使用 Agent() 指明它可以生成的唯一子代理。在把这条链用于生产事故前,要先加上按会话计算的支出上限。文中报告的失败规模足以说明为什么要这么做:每个分支每层大约有 7 倍 token 开销,有用户跑到每分钟 887,000 token,还有一个案例在 23 个子代理运行三天后出现了 47,000 美元账单。
最低成本的测试是一条真实事故回放。记录 token、耗时、生成的代理数量,以及父会话是否拿到了足够证据来做决定,而不需要原始日志倾倒。