> Discover all available pages from the documentation index: https://mastra.zisheng.pro/llms.txt # Mastra.addDynamicWorkflows() > **Beta:** 动态 Workflow 目前处于 beta 阶段。在 API 稳定之前,可能会出现不伴随主版本号升级的破坏性变更。 `.addDynamicWorkflows()` 方法添加一组可相互引用的动态 Workflow 定义。典型场景是添加一个根 Workflow 及其嵌套的辅助 Workflow,并且这些定义均尚不存在。 系统会预先验证整组定义,随后按依赖顺序注册各成员,确保辅助 Workflow 始终先于嵌套它的 Workflow 就绪。 [`addDynamicWorkflow()`](https://mastra.zisheng.pro/reference/core/addDynamicWorkflow) 适用于单个成员的情况。 ## 使用示例 ```typescript await mastra.addDynamicWorkflows([ helperDefinition, // nested by the root — order in the array doesn't matter rootDefinition, // graph contains { type: 'workflow', workflowId: helperDefinition.id } ]) ``` ## 参数 **defs** (`readonly DynamicWorkflowGraph[]`): 要添加的 Workflow 定义。嵌套 Workflow 引用可从实时注册表或同组的其他成员中解析。 ## 返回值 所有成员完成验证、注册和持久化后兑现的 Promise。 ## 行为 - 引用会从实例注册表与该组自身 ID 的并集中解析,因此根 Workflow 可以嵌套同一次调用中引入的辅助 Workflow。注册顺序由依赖 graph 决定,而不是数组顺序。 - 被拒绝的定义组不会注册任何内容。重复 ID、无效成员和依赖循环都会在更改任何内容前被检测出来;如果注册或持久化途中失败,内存注册表会恢复到之前的状态。 - Storage 写入最后执行。处理中途发生 Storage 层故障时,可能已有部分行写入,但注册表仍会回滚,这些孤立行在下次启动前不会生效。 ## 相关内容 - [Mastra.addDynamicWorkflow()](https://mastra.zisheng.pro/reference/core/addDynamicWorkflow): 添加单个定义 - [动态 Workflow](https://mastra.zisheng.pro/docs/workflows/dynamic-workflows): 设置和使用动态 Workflow - [动态 Workflow 定义](https://mastra.zisheng.pro/reference/workflows/dynamic-workflow-definition): 定义字段和 graph 条目