扩展 AI 工程:分析 Claude Code 中的动态工作流

AI 辅助软件工程的格局正在从简单的聊天界面转向复杂的、多智能体编排。Anthropic 推出的 Dynamic Workflows in Claude Code 代表了这一方向上的重大飞跃,超越了单次提示词交互,转向结构化的、并行化的执行路径,从而能够处理大规模的代码库迁移和复杂的重构。

其核心在于,动态工作流允许 Claude 将一个宏大目标分解为一系列阶段性任务,生成多个子智能体并行工作,并实施验证循环以确保正确性。这种转变旨在解决长期运行的 AI 会话中常见的“上下文窗口疲劳”问题,确保每个子智能体都在干净、专注的上下文中运行。

Bun 案例研究:规模化的证明

为了展示动态工作流的力量,Anthropic 强调了一项惊人的成就:将 Bun 运行时从 Zig 移植到 Rust。这不仅仅是一次小规模重构,而是对大约 750,000 行代码的全面重写。

根据项目详情,该过程被分解为一个高度结构化的流水线:

  1. Mapping: 一个工作流识别并为原始 Zig 代码库中的每个 struct 字段映射了正确的 Rust lifetimes。
  2. Porting: 数百个智能体并行工作,编写与 .zig 对应的行为一致的 .rs 文件,每个文件分配了两个审查者。
  3. Iteration: 一个修复循环驱动构建和测试套件,直到代码运行无误,在现有测试套件上实现了 99.8% 的通过率。
  4. Optimization: 一个隔夜工作流识别了不必要的数据复制,并为最终的人工审查开启了 PRs。

从首次提交到合并,整个过程仅用了 11 天,这展示了人类团队单独无法实现的吞吐量水平。

“Token 消耗”争议

尽管取得了技术成就,Hacker News 上的开发者社区对这种架构的效率和意图提出了重大质疑。讨论中一个反复出现的主题是,担心动态工作流的设计初衷主要是为了增加 token 消耗。

批评者认为,生成数十个甚至数百个智能体来执行任务——其中一些仅仅是在审查他人的工作——会产生巨大的开销。一名用户报告称,在仅为了对一个相对较小的 package 进行代码审查后,就触发了其 Claude Max 限制,因为当时生成了 90 个智能体。

"I feel like there are more efficient ways to tackle the issues given... Large amounts of parallel agents that all have all their work double-checked by multiple other agents, and that keeps running for a longer period of time?"

瓶颈:正确性 vs. 速度

除了成本之外,在关于究竟是什么减慢了软件工程的速度方面,还存在着更深层次的哲学分歧。虽然 Anthropic 专注于 吞吐量(做得更多、更快),但许多资深工程师认为真正的瓶颈在于 正确性意图

几位开发者指出,Bun 的例子是一个特例,因为它依赖于一个庞大且预先存在的测试套件。在大多数现实世界的场景中,AI 并没有一个完美的“先知”来告诉它何时出错。这会导致“vibe coding”,即 AI 可能会通过测试但破坏了微妙的 invariant,或者悄悄引入了只有在通过繁琐的人工审查才能发现的非预期变更。

"My time is spent suspiciously reviewing output for changes the agent snuck in, or invariants it broke... There's something at the intersection of context engineering, managing that sloppy pile of markdown plans, and good old fashioning system understanding that's the real bottleneck."

实际收益与技术权衡

对于那些在 Early Access 阶段使用过该功能的开发者来说,收益通常与 context management(上下文管理)挂钩。通过将任务分解为子智能体,系统避免了当单个对话超过 200k tokens 时发生的性能退化。这种上下文的“黄金分割点”允许在处理更大规模的工作块时获得更高质量的输出。

然而,工具集的复杂性正成为一个摩擦点。用户现在需要应对一系列令人困惑的选项:agents, sub-agents, tasks, team mates, /goal, /loop, 以及现在的 workflows。这些“旋钮”的激增可能导致决策瘫痪,或者导致用户为了避免遗漏任何东西而倾向于“把所有参数都调到最大”,从而进一步加速 token 消耗。

结论:迈向虚拟员工?

动态工作流标志着向“agentic pipes”的转变——即软件工程被建模为一系列自动化的转换过程。虽然这为语言迁移或大规模审计等特定任务提供了惊人的力量,但它也带来了使开发过程变得不透明的风险。

随着行业向前发展,挑战在于 Anthropic 及其竞争对手如何平衡这种原始力量与对“人机协作”控制的需求,确保 AI 仍然是开发者的工具,而不是一个产生百万行“vibe-coded” Rust 代码的黑盒。

Sources