功能指南
工作流
创建、修改和验证工作流,说明节点类型、连线规则、启动和执行记录。
工作流用于把多个业务步骤串成可追踪、可重试的自动化流程。它适合审批、线索跟进、报表生成、消息通知、跨系统同步,以及需要把智能体、模块方法和人工确认组合起来的场景。
创建工作流
创建工作流时,先确定流程的输入、输出和触发方式,再设计节点。
- 进入目标工作区,确认当前账号具备工作流管理权限。
- 新建工作流,填写名称、编码、描述和版本。
- 定义启动输入,例如客户信息、表单数据、订单 ID、触发来源。
- 添加
start节点和业务节点。 - 使用连线连接节点,并在需要分支的位置设置连线条件。
- 设置每个节点的输出路径,避免后续节点读取不到结果。
- 保存后启动一次测试实例,查看执行记录。
条件写在连线上
工作流不再使用独立的 condition 节点表达分支。分支判断应写在节点之间的连线条件里,避免流程图出现只负责转发的判断节点。
节点类型
| 节点类型 | 用途 | 关键配置 |
|---|---|---|
start | 流程入口。 | 节点 ID、名称、启动输入约定。 |
end | 流程结束并整理输出。 | 输出字段、输出路径。 |
http | 调用外部 HTTP 接口。 | 请求方法、URL、请求头、请求体、超时、重试。 |
module_method | 调用当前工作区运行时里的模块方法。 | 服务名、方法名、参数、用户身份、输出路径。 |
emit_event | 向应用事件中心发送业务事件。 | 应用 ID、业务 ID、事件名、事件体、幂等键。 |
agent | 调用百积木智能体完成理解、生成、工具调用或子任务。 | 智能体配置 ID、项目 ID、提示词模板、输出格式。 |
ai | 执行轻量 AI 生成或结构化处理。 | 模式、提示词、请求配置、模拟输出。 |
human | 等待人工处理或审批。 | 处理角色、操作说明、表单结构、输出路径。 |
join | 汇合并发分支。 | 汇合策略、输出路径。 |
节点数据引用
节点配置可以引用运行时根对象中的数据:
| 引用 | 含义 |
|---|---|
input | 启动流程实例时传入的数据。 |
context | 前序节点写入的输出和流程运行状态。 |
signal | 人工节点收到的提交数据。 |
instance | 当前流程实例元信息。 |
node | 当前节点元信息,例如节点 ID 和类型。 |
例如模块方法节点可以把 input.customerName 传给创建线索方法,再把结果写入 context.crm.createLead,后续节点再读取该路径。
配置连线
连线决定节点执行顺序。普通顺序流只需要连接前后节点;分支流需要设置条件;并发流需要在多个分支后使用 join 汇合。
设计连线时注意:
- 每个流程必须有且只有一个清晰的起点。
- 除
end节点外,业务节点应有明确后继节点。 - 分支条件要互斥或有默认路径,避免流程停在无匹配路径。
- 并发分支需要明确汇合策略,避免部分分支失败后状态不清。
修改工作流
修改工作流前,先确认变更是否影响已经运行中的实例。
- 只改名称、描述、节点展示文案,通常可以直接保存。
- 改节点 ID、输出路径、方法名、参数结构,会影响后续节点读取数据,应重新跑完整测试。
- 改分支条件、人工节点表单或外部调用,必须覆盖成功、拒绝、超时、失败重试等路径。
- 已经有线上实例运行时,不要直接删除它们正在等待的
human或join节点。
推荐做法是为重要变更新建版本,用新版本承接后续实例,保留旧版本实例继续完成。
启动和推进实例
工作流保存后,可以从页面、后端服务、模块方法、定时任务、Webhook 或外部 API 启动实例。启动时传入的 input 应包含业务主键、工作区上下文和触发来源,方便排查日志。
当流程停在 human 节点时,需要提交 signal 推进节点。signal payload 会进入 signal,并可通过人工节点的输出路径写入 context。
查看执行记录
每次实例运行都会生成节点执行记录。排查问题时按这个顺序看:
- 实例状态:运行中、等待人工、失败、完成或取消。
- 当前节点或失败节点。
- 节点入参和输出。
- HTTP、模块方法、事件或智能体调用日志。
- 重试记录和错误信息。
失败实例应从失败节点重试,而不是重新启动一个无关联的新实例。等待人工的实例必须通过 signal 推进,不能用普通恢复动作绕过人工决策。
发布前检查
- 每个节点 ID 稳定、可读,不与其他节点重复。
- 所有模块方法对应的模块已经安装到目标工作区运行时。
- 所有 HTTP 节点的鉴权、超时和错误返回可追踪。
- 所有人工节点的角色、表单和提交结果清楚。
- 所有分支至少覆盖成功、失败和默认路径。
- 测试实例能完成一遍真实业务路径,并能在执行记录中看到每个节点的结果。