SuperAPI AI 工具集

workflow-runner

智能体与模型

查看项目

更新于 10-15 08:33

技能介绍

用途

workflow-runner 用于在 Claude Code / OpenClaw / Cursor 中直接运行 agency-orchestrator 的 YAML 工作流。它不需要配置 API key,由当前会话的 LLM 充当执行引擎,依次扮演工作流中的每个角色完成任务。当用户提供 .yaml 工作流文件(如“运行 workflows/story-creation.yaml”),或要求多个角色协作完成任务(如“用产品经理和架构师一起评审这个 PRD”),或安装了 agency-agents-zh 并希望在 AI 工具内编排多角色时,会触发本能力。

主要能力

  • 解析 agency-orchestrator YAML 工作流,提取 name、agents_dir、inputs、steps 等字段。
  • 自动定位角色目录,依次检查:当前工作目录下的 {agents_dir}/、上级目录 ../{agents_dir}/、相对 YAML 文件所在目录的 {agents_dir}/、node_modules/agency-agents-zh/,使用第一个存在的。
  • 收集输入:对 required: true 的输入,若用户未提供则直接询问,不猜测或用空值;有 default 的可选输入使用默认值;无默认值的可选输入设为空字符串。
  • 根据 depends_on 进行拓扑排序,将步骤分层,并在回复中展示执行计划。
  • 逐层执行:预读角色 .md 文件(提取 frontmatter 中的 name 作为角色名,第二个 --- 之后的 markdown 作为角色 system prompt),渲染 task 模板中的 {{变量名}}(来自用户输入或前序步骤输出)。单步骤层直接在主会话中扮演角色执行;多步骤层使用 Agent 工具为每个步骤启动子代理,子代理 prompt 包含角色文件完整文本、渲染后的 task,以及“以上是你的角色定义,请以该角色身份完成以下任务,直接输出结果”的指令。
  • 保存结果到 .ao-output/{工作流名称}-{YYYY-MM-DD}/ 目录,结构包含 steps/(每步输出)、summary.md(最后一步完整输出即最终成果)、metadata.json(名称、日期、成功状态、各步骤 id、role、status)。
  • 执行完毕后向用户展示最终成果、文件保存位置和执行步骤数。

使用方式

用户提供 .yaml 工作流文件或描述多角色协作任务即可触发。执行严格按五步进行,不跳步:解析工作流、收集输入、构建执行顺序、逐层执行、保存结果并展示。若用户未指定 YAML 文件但描述了多角色协作任务,会自动生成 YAML 工作流定义,展示给用户确认后按流程执行。例如“帮我用叙事学家和心理学家写个故事”会生成类似 story-creation 的工作流,“让产品经理和架构师评审这个 PRD”会生成类似 product-review 的工作流。

适用场景与限制

适用于多角色协作任务编排、评审与创作类流程。执行时忽略工作流中的 llm、concurrency、timeout、retry 配置——这些字段仅用于 CLI 模式,Skill 模式使用当前会话的 LLM。故障处理方面:角色文件不存在时提示用户运行 ao init 或 npm install agency-agents-zh;模板变量未定义时检查上下文,必填输入则询问用户;步骤执行失败时标记该步骤失败,跳过所有依赖它的下游步骤,继续执行其他独立步骤。若找不到角色目录,停止执行并提示安装:git clone --depth 1 https://github.com/jnMetaCode/agency-agents-zh.git 或 npm install agency-agents-zh。