用途:当共享逻辑或多步逻辑需要变成可复用的带类型工作流、现有工作流变得难以理解,或需要把工作流作为工具暴露给智能体时使用本技能。子工作流相当于可复用函数:Execute Workflow Trigger 声明输入,主体执行逻辑,最后一个节点返回输出,调用方通过 Execute Workflow 节点调用。
主要能力:支持带类型输入(Define Below 模式,字段类型如 string、number、boolean、array、object),支持 all 与 each 两种执行模式,支持 waitForSubWorkflow 的阻塞与即发即忘,支持将子工作流作为智能体工具(通过 $fromAI 填充字段),并可用 Data Table 支撑有状态子工作流。
使用方式:构建前先用 n8n_list_workflows() 扫描、n8n_get_workflow({ id: "<candidate>" }) 读取候选的输入输出与主体,避免重复造轮子。默认使用 Define Below 加显式类型字段,仅在需要二进制输入或零输入时使用 passthrough。用最终 Set 节点(命名 Return)明确返回契约。需要逐项迭代时优先 mode: each,而非在子工作流内放 Loop Over Items。
适用场景:通用关注点(认证、重试、解析、格式化、ID 生成)、超过 5 个节点且概念上是一件事的逻辑、需要被智能体调用的工作流。
限制:社区 MCP 无法按标签过滤工作流,发现依赖名称;n8n 不会对未识别的输入字段报错,重命名字段需手动迁移所有调用方;二进制输入无法干净地作为智能体工具;契约一旦有调用方即冻结,增可选字段安全,改名或删除字段危险。涉及发送、写入、删除或调用计费外部服务的子工作流,运行或激活前需先询问。