Claude Code 动态工作流速通指南,多 Agent 干活效率起飞!

简介: Claude Code 动态工作流保姆级科普,高频 AI 应用开发面试题,从 Claude 官方五种多 Agent 系统模式讲起,拆解动态工作流的运作机制、上下文隔离设计、交叉验证策略,对比传统多 Agent 框架的本质区别

大家好,我是程序员鱼皮。

Anthropic 在 5 月底发布 Claude Opus 4.8 的时候,同步推出了 Claude Code 的 动态工作流 功能。

有人用它 11 天完成了 75 万行代码的语言迁移,有人拿它做全代码库的安全审计。还有人说这玩意儿一跑起来,烧掉的 Token 比自己一个月用的还多……

最近有小伙伴面试的时候,就被问到「动态工作流」相关的问题了,但和很多同学一样,对这玩意的理解是模糊的。

它到底是模型自己学会的能力,还是工具层面搭出来的?跟之前的多 Agent 编排有什么区别?

如果面试官问你「动态工作流的本质是什么」,你能答清楚吗?

本文我就来把动态工作流讲清楚,带你搞明白动态工作流的运作原理、技术架构,以及它在 AI 应用开发中的定位。

动态工作流是什么?

动态工作流是让 AI 自己编写编排脚本,把一个大任务拆成若干子任务,分发给数十到数百个并行子 Agent 执行,最后汇总验证结果的能力。

注意,这里的关键词是 让 AI 自己编写

以往我们做多 Agent 协作,不管是用 LangGraph 这种框架、还是自己写编排代码,任务怎么拆分、子 Agent 之间怎么协调、结果怎么合并,这些逻辑都是开发者手动定义的。你得提前想好有几个 Agent、每个 Agent 负责什么、上下游怎么串联。

而动态工作流不一样。你只需要告诉 AI 自己想做什么,比如「帮我把这个项目从 Python 2 迁移到 Python 3」,它会自己分析代码库的结构,决定需要几个子 Agent、每个子 Agent 负责迁移哪些文件、怎么并行执行、怎么验证迁移后的代码是否正确。

整个编排方案是 AI 根据你的具体任务实时生成的,不是预定义好的模板。

打个比方,传统的多 Agent 编排就像你当项目经理,需要自己画甘特图、分配任务、开站会跟进度。

动态工作流更像是你把需求丢给一个靠谱的技术总监,他自己去摇人、分活、盯进度、验收,最后给你交付结果。

Agent 系统的分类

要理解动态工作流的技术定位,得先看看 Anthropic 官方是怎么给 Agent 系统分类的。

早在 2024 年 12 月,Anthropic 就发布了一篇非常经典的工程博客,叫 Building Effective Agents。

这篇文章把所有的 Agentic 系统分成了两大类。

第一类是 Workflow 工作流,特点是 LLM 和工具的协作路径是通过预定义的代码来编排的。你写好了流程,AI 按照流程走。

第二类是 Agent 智能体,特点是 LLM 自己动态决定接下来干什么、用什么工具、怎么推进任务。控制权在模型手里。

在 Workflow 这个大类下面,Anthropic 又细分了 5 种具体的模式。

1、Prompt Chaining 提示链

任务被拆成一连串固定步骤,前一步的输出是后一步的输入。比如先生成文案、再翻译成英文,两步是固定顺序。

2、Routing 路由

根据输入的类型把请求分发到不同的处理流程。比如客服系统里,退款问题走退款流程,技术问题走技术支持流程。

3、Parallelization 并行化

同一个任务拆成多个独立子任务并行执行,最后把结果汇总。比如让多个 Agent 分别从不同角度审查一段代码。

4、Orchestrator-Workers 编排者-工人

一个中心 LLM 作为编排者,动态地把任务分解,分配给多个工人 LLM 执行,然后综合它们的结果。这里的重点是「动态」,编排者不是按预定义的规则分配任务,而是根据具体输入来判断需要几个工人、每个工人干什么。

5、Evaluator-Optimizer 评估者-优化器

一个 LLM 生成结果,另一个 LLM 负责评估和提供反馈,循环迭代直到质量达标。

你发现了吗?动态工作流本质上就是第 4 种模式 Orchestrator-Workers 的产品化实现。

注意,这不是一种新模式,而是同一个模式的不同实现方式。区别在于 谁来搭建这个编排系统

传统做法是你自己用代码实现 Orchestrator-Workers。比如你要做一次全代码库的安全审计,你得用 LangGraph 或者自己写 Python 来搭这套编排逻辑:

# 这是开发者自己写的编排器
files = scan_all_files(project_path)
risk_groups = classify_by_risk(files)
agents = []
for group in risk_groups.high:
    agents.append(Agent(task="deep_audit", targets=group))
for group in risk_groups.low:
    agents.append(Agent(task="quick_scan", targets=group))
results = run_parallel(agents)
report = merge_results(results)

这段代码运行起来确实是「动态」的,能根据实际文件情况做分配。但问题是,这个编排器本身是你写的。怎么扫描文件、怎么分级风险、起几个 Agent、每个 Agent 用什么策略,所有这些决策规则都得你自己设计。

而 Dynamic Workflows 的特点是 Claude Code 把这件事全包了。你只需要说一句「帮我审计这个项目的安全漏洞」,Claude 自己就会生成类似上面那段编排逻辑并执行。扫描文件、评估风险、分配任务、汇总结果,全部由模型在运行时自主完成。

一句话总结,传统方式你是 Orchestrator-Workers 模式的开发者,Dynamic Workflows 里你是这个模式的使用者。

动态工作流的运作机制

动态工作流的执行过程大致分为几个阶段。

1)首先是接收任务、制定计划。

Claude 会分析你的输入,理解任务的规模和复杂度,然后动态生成一份编排方案,决定需要启动多少个子 Agent、每个子 Agent 的职责是什么。这一步就像接到一个大项目后,技术负责人先评估工作量,再写一份招人计划和分工表。

2)计划确定后就进入分发执行阶段。

子 Agent 并行启动,各自处理分配到的子任务。目前系统最多支持同时运行 16 个并发子 Agent,总计上限 1000 个!

3)然后是交叉验证,这是动态工作流的一个亮点。

它不只是把子任务的结果简单拼起来,还会安排独立的验证 Agent 去检查其他 Agent 的输出。对于高风险任务,甚至会启动「对抗性 Agent」,专门尝试找茬、攻破前面 Agent 产出的结果。

如果验证不通过,相关的子 Agent 会被要求修正。这个循环会持续进行,直到所有结果达到一致性标准。

是不是很眼熟?

没错,又是 Loop Engineering 的思想。

之前我分享过 Claude Code 官方的循环工程设计理念,核心就是让 AI 反复跑、反复改、直到完成目标为止。动态工作流把这个思路用到了极致,不仅仅是让一个 Agent 自己循环,而是一群 Agent 互相验证、互相纠错地循环。

4)最终把验证通过的结果汇总成一份完整的交付物,返回给用户。

整个过程中的进度是持续保存的,如果任务中途被打断,恢复后可以从断点继续,不需要从头开始。

此外还有一个关键设计,这个 编排的执行发生在对话上下文之外

你可以这么理解,主对话窗口是你和技术总监沟通的会议室,而那些子 Agent 各自在独立的工位上干活。不管外面有多少人在并行工作,都不会挤占你会议室的空间。所以不管任务多大、涉及多少个子 Agent,都不会撑爆 Claude 的上下文窗口。这是它能处理跨越数百个文件的大规模任务的关键。

动态工作流实战案例

动态工作流最震撼的案例来自 JavaScript 运行时 Bun 的开发者 Jarred Sumner。

他用动态工作流把 Bun 从 Zig 语言移植到了 Rust,整个过程 11 天完成,产出了大约 75 万行 Rust 代码,原有测试套件的通过率达到 99.8%。

这个迁移是怎么用动态工作流完成的呢?

Anthropic 官方博客透露了大致的过程。

首先,一个工作流负责遍历整个 Zig 代码库,为每一个结构体的每个字段映射出对应的 Rust 生命周期标注。这一步需要分析大量的类型关系和所有权语义。

然后,另一个工作流把数百个 .zig 文件分配给并行的 Agent,每个 Agent 把分配到的 .zig 文件翻译成行为等价的 .rs 文件。而且每个文件会安排两个审查 Agent 来检查翻译结果。

接下来是修复循环。一个工作流反复运行构建和测试,把编译错误和测试失败分发给对应的 Agent 去修复,直到整个项目能够正常编译并通过测试套件。

最后,一个通宵运行的工作流负责消除不必要的数据拷贝,并为每处优化单独创建一个 Pull Request 供人工审查。

整个过程中,人类开发者做的事情就是定义目标、确认方案、最后审查 PR。中间的具体实施全部由动态工作流自主完成。

动态工作流是模型能力还是工具能力?

这是一道很尖锐的面试题:动态工作流是模型自身具备的能力,还是平台工具提供的?

答案是 两者缺一不可,但职责不同

模型层面提供的是「智能」。

比如:

  • 任务规划能力,能把一个模糊的大目标拆解成具体的、可执行的子任务
  • 上下文理解能力,能分析代码库结构、理解各文件之间的依赖关系
  • 工具调用能力,能正确生成和执行编排脚本
  • 还有自我纠错能力,能判断子任务的输出是否正确,以及如何修复

这就是为什么动态工作流是跟 Opus 4.8 一起发布的。Opus 4.8 在任务规划和判断力上有明显提升,它对自己代码中的缺陷的检出率是前代模型的 4 倍。这种自我检验的能力是动态工作流能做到「交叉验证」和「对抗性检查」的基础。

平台层面提供的是「基础设施」。

比如:

  • 子 Agent 的生命周期管理,负责创建、调度、销毁
  • 并发控制,限制最多 16 个同时运行
  • 进度持久化,中断后可以恢复
  • 上下文隔离,让编排逻辑不占用主对话的上下文窗口
  • 以及最终的结果聚合和交付

用一个类比来理解,模型能力就像一个优秀的技术总监的大脑,他知道怎么拆任务、怎么分配人、怎么验收。

平台能力就像公司的项目管理系统和基础设施,提供了会议室、协作工具、版本控制、持续集成等等。

光有聪明的大脑但没有执行体系不行,光有系统但没人会规划也不行。

所以如果面试官问你这个问题,最准确的回答是,动态工作流是一种 建立在强模型能力基础上的平台产品特性。模型提供规划和决策的智能,平台提供并行执行和生命周期管理的基础设施,两者结合才构成完整的动态工作流。

和多 Agent 框架的区别

理解了上面的架构分层之后,再来看看动态工作流跟 LangGraph、CrewAI 这些多 Agent 框架的区别就很清晰了。

传统多 Agent 框架的思路是,开发者自己定义 Agent 的角色和能力,自己编写编排逻辑决定谁先执行、谁后执行、结果怎么传递,异常情况也要自己处理。框架给你提供了一堆现成的模块和连接方式,但具体怎么组装是你的事。

动态工作流的思路完全相反,开发者只需要描述最终目标,模型自动完成角色定义、任务拆解、编排逻辑生成、异常处理和结果验证。你连编排代码都不用写,因为 Claude 自己会写。

这两种方式没有绝对的好坏之分,适用场景不同。

如果你的任务是高度标准化的、流程固定的,比如每天定时跑一轮数据分析报告,用传统框架把流程写死会更稳定、更可控、成本更低。

如果你的任务是一次性的、规模大的、子任务不可预测的,比如代码库迁移、安全审计、大规模重构,动态工作流的优势就很明显了,因为你根本没法提前定义好所有的子任务和执行路径。

怎么用起来?

动态工作流目前在 Claude Code 的 CLI、桌面端和 VS Code 扩展中都可以使用,也可以通过 API 调用。

其他 AI 编程工具也在探索类似的多 Agent 并行模式,比如 Cursor 推出了 Cloud Agents 和后台 Agent 并行能力。不过目前「由模型自己编写编排脚本」这种玩法,Claude Code 的动态工作流是做得最完整、产品化程度最高的。

启动动态工作流的方法非常简单,有 2 种方法。

第一种是直接告诉 Claude 创建一个工作流,比如:

创建一个工作流,帮我审计整个代码库的安全漏洞

第二种是在 Claude Code 的 effort 菜单里开启 ultracode 设置。这个设置会把推理力度调到最高,同时让 Claude 自动判断当前任务是否适合用工作流来处理。如果适合,它会自动切换到工作流模式。

第一次触发工作流时,Claude Code 会显示即将执行的计划并要求你确认,不会直接就跑起来。

有一点需要注意,动态工作流的 Token 消耗量远超普通的 Claude Code 会话。道理很简单,你同时雇了几十上百号人帮你干活,工资当然比只请一个人贵得多。

所以建议按需使用,先从一个小范围的任务开始试,感受一下消耗量级,再逐步扩大规模,别上来就对着整个代码库一把梭。

最后哔哔

看完这篇文章,你会发现 AI 应用开发正在从「开发者编排 Agent」向「Agent 编排 Agent」演进。开发者的角色在往上移,从写编排代码的执行者,变成定义目标和审查结果的管理者。

这个趋势意味着,以后面试 AI 应用开发岗位,光会用框架写 Agent 可能不够了,面试官更想知道你对整个 Agent 架构体系的理解有多深。Anthropic 那篇 Building Effective Agents 提出的 5 种模式,基本就是这个领域的面试必考知识点,建议反复读。我的 面试刷题神器《面试鸭》 上也整理了不少 AI 应用开发面试题,覆盖了 LangChain、RAG、多智能体协作这些方向,尤其建议找工作的朋友刷一刷。

我是鱼皮,持续分享 AI 编程和 AI 应用开发的干货。觉得有用的话记得点赞收藏和关注~

也欢迎在评论区聊聊,你有没有用过动态工作流?跑一次花多少钱的 Token?

相关文章
|
1月前
|
人工智能 缓存 API
别再为 AI 调用超支头疼:Credits 配额,让每一笔消耗都透明可控
Credits 统一度量上线,消费者用量可度量、可约束。
|
30天前
|
Web App开发 人工智能 JavaScript
199 元找人定制 Codex 主题?未曾设想的赚钱道路。。我免费教你怎么做
Codex 定制主题皮肤保姆级教程,借助 GitHub 开源项目,根本不需要花钱!
264 0
|
1月前
|
人工智能 数据可视化 数据挖掘
连续7年!阿里云凭借Quick BI成为中国唯一上榜Gartner® ABI魔力象限的BI厂商
阿里云Quick BI第七次入选Gartner分析与BI魔力象限挑战者象限,是中国唯一连续七年上榜的BI厂商。作为AI-native智能分析平台,它集多源接入、归因分析、生态协同、按需计费于一体,已服务万家客户,覆盖全球8大区域。(239字)
219 1
|
1月前
|
人工智能 JSON 监控
Claude Code 官方教你 Loop 工程,附 6 大省 token 技巧!
Claude Code 官方循环工程 Loop Engineering 深度解读!手把手带你理解 4 种循环类型,覆盖多 Agent 协作、/goal、/loop、/schedule 命令用法、代码质量保障和 token 省钱技巧,从入门到实战全流程
209 0
|
1月前
|
缓存 Rust 安全
Nolang 硬核技术白皮书:全方位内核级超越 Rust(纯语言机制对比)
Nolang 是新一代无GC内存安全语言,首创“延迟所有权”模型:赋值直觉、零生命周期负担、函数末尾批量内存回收,性能与安全全面超越Rust。当前生态尚小,但内核、架构与开发体验已实现碾压式领先。(239字)
237 3
|
2月前
|
SQL 存储 运维
日志能不能改?SLS LogStore 原生支持更新和删除了
随着日志承载的业务语义越来越多,数据订正、回填、清理等需求变得越来越常见。SLS 现已为 LogStore 提供原生 update/delete 能力——支持按 RowID 精确修改,按查询条件批量操作,类似计费调账、标签刷新、反馈回填等场景都可以直接在 LogStore 内完成闭环。
412 135
|
30天前
|
人工智能 监控 安全
生成式 AI 驱动新型网络钓鱼攻击识别困境与自适应防御体系研究
本文基于印度CERT-In官方报告,揭示生成式AI如何重构网络钓鱼攻击链路,导致传统检测机制全面失效。研究提出“文本语义-域名特征-行为风控”三维联合检测框架,配套轻量化Python代码实证,并构建覆盖技术防护、用户教育、监管协同与应急处置的闭环自适应防御体系。(239字)
105 0
|
30天前
|
人工智能 搜索推荐 SEO
GEO优化万能公式,被引用不等于被采纳的真相
本文揭示生成式引擎时代新悖论:“源被引用”不等于“主张被采纳”。Geo专家于磊指出,GEO(生成式引擎优化)核心是让内容可被AI直接摘录——需主张单行化、结构可提取、证据具象化(数字/引述/出处)。九条实证公式与检测清单助内容从“入场券”迈向“答案正文”。
203 0
|
1月前
|
人工智能 运维 文字识别
阿里云百炼CLI最新版全功能详解与实操命令指南
在AI开发与自动化运维快速普及的当下,传统可视化控制台操作存在操作繁琐、无法批量调度、难以嵌入自动化脚本等痛点,严重制约开发者的工作效率。为解决多模态AI任务运维碎片化、工具切换频繁、Agent接入难度高的行业问题,阿里云百炼平台推出专属命令行工具百炼CLI,简称bl工具。作为面向AI Agent调度、多模态任务处理、自动化编排的轻量化命令行工具,2026最新版百炼CLI完成功能全面升级,整合文本、图像、视频、语音、视觉理解、知识库检索、联网搜索、记忆管理等十余类AI核心能力,支持一键接入主流AI Agent框架,凭借轻量化部署、全模态覆盖、高兼容适配、可脚本化运维的优势,成为开发者、运维人员
274 0
|
1月前
|
Linux iOS开发 MacOS
实用小工具:端口卫士
一款跨平台端口监控工具,界面美观(无边框+磨砂玻璃),支持Win/macOS/Linux。实时扫描监听端口,显示应用名、PID、端口及资源占用,并支持一键终止进程。内置搜索、自动刷新、权限适配与多支付赞助入口。
198 0