Anthropic 发布 Claude Opus 4.8之际, 同步在 Claude Code 推出 Dynamic Workflows(动态工作流) 研究预览功能,用于处理最复杂的工程任务:
- 自主规划与编排:接到高难度任务后,Claude 自主制定计划,编写编排脚本,并行启动数十到数百个子 agent
- 自动验证:各子 agent 独立运行并验证结果后汇总,在向用户报告前完成检查
- 长时间运行:支持小时到天级别的任务,进度自动保存,中断后可从断点继续
- 研究预览阶段:已向所有 Claude Code 付费用户(Max/Team/Enterprise)开放


与现有 Subagent 和 Agent Teams 的区别#

加入Dynamic Workflows之后,Claude Code 提供三种并行工作模式,各有适用场景:
| 维度 | Subagents | Agent Teams | Dynamic Workflows |
|---|---|---|---|
| 定义 | 用户手动调用的工作者 | 多个独立 Claude Code 实例协作 | Claude 编写的编排脚本 |
| 上下文 | 独立上下文窗口,结果返回调用者 | 独立上下文窗口,完全独立 | 中间结果存储在脚本变量中 |
| 通信方式 | 只能向主 agent 报告 | 队友之间直接发消息 | 通过脚本协调,无直接通信 |
| 协调机制 | 主 agent 逐轮决定下一步 | 共享任务列表,自我协调 | 脚本持有循环、分支和编排逻辑 |
| 规模 | 单个或少量 subagent | 3-5 个队友(推荐) | 数十到数百个并行 agent |
| 可重复性 | 工作者定义可复用 | 队友角色可复用 | 编排脚本本身可复用 |
| 中断恢复 | 重启当前轮次 | 重启当前轮次 | 同一会话内可断点续传 |
| Token 成本 | 较低:结果摘要返回主上下文 | 中等:每个队友是独立实例 | 最高:数十到数百个并行 agent |
| 启用方式 | 默认可用 | 需设置 CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 | 默认可用(研究预览) |
| 最佳场景 | 专注任务,只关心结果 | 需要讨论、挑战、协作的复杂工作 | 大规模并行执行 + 自动验证 |
Dynamic Workflows 典型使用场景#
-
代码库范围的审计
- Bug 搜索、性能优化审计、安全审计
- 并行搜索整个服务或仓库,独立验证每个发现
-
大型迁移与现代化
- 框架替换、API 废弃、语言移植(跨越数千文件)
- 案例:Bun 从 Zig 重写为 Rust(750,000 行代码,11 天完成,99.8% 测试通过)
-
关键工作双重检查
- 对于错误成本高的任务,workflow 提供独立尝试和对抗性验证
技术实现细节#
工作流程:
- Claude 根据 prompt 动态规划
- 分解为子任务并开启并行 subagent
- 结果在合并前被检查
- 从独立角度解决问题,其他 agent 尝试反驳发现
- 持续迭代直到答案收敛
技术限制
| 限制项 | 说明 |
|---|---|
| 并发 agent 数 | 最多 16 个(CPU 核心有限的机器上更少) |
| 单次运行总 agent 数 | 最多 1000 个(防止失控循环) |
| 运行中用户输入 | 不支持(仅 agent 权限提示可暂停运行) |
| 文件系统/Shell 访问 | Workflow 脚本本身不能直接访问,需通过 agent 执行 |
权限模式
- Workflow 中的 subagent 始终以
acceptEdits模式运行 - 继承用户的工具白名单设置
- 文件编辑自动批准
- Shell 命令、Web 抓取、MCP 工具若不在白名单中会触发提示
核心机制详解:
- 对抗性验证(Adversarial Verification):独立 agent 被明确任务去反驳彼此的发现,只有经过交叉审查存活下来的声明才会浮出水面
- 收敛驱动迭代(Convergence-driven Iteration):workflow 持续生成 agent 并迭代直到答案稳定,迭代次数由工作本身决定而非用户预设
- 范式转变:
- 标准模式:Claude 是编排者,逐轮决策,中间结果堆积在上下文窗口中
- Dynamic Workflows:JavaScript 脚本是编排者,Claude 的上下文只保留最终验证答案,不包含中间步骤的排气
关键特性:
- 协调发生在对话外,避免上下文窗口污染
- 进度保存,中断后从断点继续而非重新开始
- 消耗 token 显著高于普通 Claude Code 会话
使用教程#
- 直接要求:“Create a workflow”
- 开启
ultracode设置(effort 菜单),让 Claude 自动决定何时使用 workflow
三种启动方式#
1. 运行内置 workflow
/deep-research <问题>
- 内置的深度研究 workflow,跨多个角度进行网页搜索
- 获取并交叉验证来源,对每个声明投票
- 返回带引用的报告,过滤掉未通过验证的声明
- 需要 WebSearch 工具可用
/deep-research 的特殊性:
- 明确设计为反驳自己的发现,而不是接受第一个看似合理的答案
- 跨多个角度扇出搜索,交叉检查来源
- 对每个声明进行内部投票
- 只包含经过对抗性审查存活下来的声明
- 可靠性标准高于单次 AI 搜索
2. 在 prompt 中包含 “workflow” 关键词
Run a workflow to audit every API endpoint under src/routes/ for missing auth checks
- Claude Code 会高亮 “workflow” 关键词
- Claude 自动为任务编写 workflow 脚本
- 如果误触发,按
Alt+W忽略
3. 开启 ultracode 模式(自动决策)
/effort ultracode
- 结合
xhigh推理努力 + 自动 workflow 编排 - Claude 自动判断任务是否需要 workflow
- 单个请求可能触发多个连续 workflow(理解代码 → 修改 → 验证)
- 消耗更多 token,完成后用
/effort high切回常规模式 - 仅在支持
xhigheffort 的模型上可用
ultracode 的自动工作流程:
- 理解-修改-验证循环(Understand-Change-Verify Loop):
- 第一个 subagent 集群:映射架构,理解代码结构
- 第二个集群:执行变更
- 第三个集群:验证结果
- 这个循环自动运行,无需用户干预
- Token 成本和时间高于标准 prompt,但多阶段工程任务的成功率显著更高
管理运行中的 Workflow#
查看所有 workflow
/workflows
列出运行中和已完成的 workflow,选择一个打开进度视图。
进度视图快捷键
| 快捷键 | 功能 |
|---|---|
↑ / ↓ | 选择阶段或 agent |
Enter / → | 深入查看阶段 → agent 详情(prompt、工具调用、结果) |
Esc | 返回上一级 |
j / k | 在 agent 详情中滚动(内容溢出时) |
p | 暂停/恢复运行 |
x | 停止选中的 agent,或停止整个 workflow(焦点在运行级别时) |
r | 重启选中的运行中 agent |
s | 保存当前 workflow 脚本为命令 |
断点续传
- 停止的 workflow 可以在同一会话中恢复
- 已完成的 agent 返回缓存结果,未完成的继续运行
- 退出 Claude Code 后重启会话,workflow 需要重新运行
保存和复用 Workflow#
保存为自定义命令
- 运行
/workflows选择要保存的运行 - 按
s键打开保存对话框 - 用
Tab切换保存位置:- 项目级别:
.claude/workflows/— 团队共享,随仓库分发 - 用户级别:
~/.claude/workflows/— 个人使用,所有项目可用
- 项目级别:
- 按
Enter保存
使用已保存的 workflow
/<workflow-name> [参数]
- 保存后的 workflow 出现在
/自动补全中 - 项目级别 workflow 优先于用户级别同名 workflow
何时使用 Dynamic Workflows#
三个条件同时满足时使用:
- 任务太大:单个上下文窗口无法容纳
- 拆分策略未知:事先不知道如何分区工作
- 质量优先于成本:结果质量比 token 经济性更重要
何时不使用 Dynamic Workflows#
避免在以下场景使用:
- 可重复、定义明确的任务:已知确切 workflow 且需要一致、成本可预测的执行
- 小型、有界任务:单个 agent 通过就足够
- Token 预算严格:Dynamic Workflows 的 token 消耗远高于 Subagents
替代方案:对于可重复任务,自定义 Subagent 更高效。
最后#
这是 Anthropic 在 agent 架构上的重要实验——从线性链式调用转向 规划 + 并行执行的动态编排:AI 辅助编程开始变成一个能够自主规划、并行执行、对抗性验证的编排系统。
- 效率跃升:季度级工作压缩到天级完成
- 新架构范式:不同于 ReAct 或 plan-then-execute,提供了动态编排的新思路
- 复杂工程任务可行性:使大型重构、批量测试等任务具备显著效率优势
- 自主性提升:从”用户规划 + AI 执行”转向”AI 规划 + AI 执行 + AI 验证”
核心价值在于范式转变:从”用户规划 + AI 执行”转向”AI 规划 + AI 执行 + AI 验证”。这种转变在特定场景下(大规模迁移、代码库审计、安全扫描)确实能将季度级工作压缩到天级完成。
不过该功能的token消耗也是实打实的。有位老哥分享说,就一个小型代码审查,Claude 给他启动了 90 个 agent,然后——人生第一次触及 Claude Max 的使用上限。
有人把这个称为”Dynamic Bills”:Dynamic Workflows 带来的不是动态工作流,而是动态增长的账单。还有人把 ultracode 模式戏称为”Ultra-token-consumption mode”(超级 token 消耗模式)。
还有实用主者建议:先用 Deepseek 这种便宜模型跑 workflow 测试,确认没问题再切 Claude 执行关键步骤。
有个评论我很认同:“这个功能的目标用户是企业,用来处理那些有成千上万行遗留代码、需要做大规模重构的场景。对于普通开发者,这就是个奢侈品。”
以我个人使用为例,subagetns + agent teams已经能覆盖绝大部分大型场景的任务了。如果你有明确的测试套件、充足的预算、合适的使用场景(大规模机械性任务),Dynamic Workflows值得一试