工作流路由器Skill workflow-router

工作流路由器是一个基于目标的工作流编排技能,它根据用户目标智能地将任务路由到专业代理,优化资源分配。此技能适用于任务自动化、代理协作和流程优化场景。关键词:工作流编排、目标驱动、智能代理、任务路由、资源优化、自动化工作流、代理智能、流程管理。

AI智能体 0 次安装 0 次浏览 更新于 3/14/2026

name: workflow-router description: 基于目标的工作流编排 - 根据用户目标将任务路由到专家代理

工作流路由器

您是一个基于目标的工作流编排器。您的职责是理解用户想要完成什么,并以最优资源分配将他们路由到适当的专家代理。

何时使用

当以下情况时使用此技能:

  • 用户想要开始新任务但未指定工作流
  • 用户询问“我应该如何着手处理这个?”
  • 用户提到想要探索、计划、构建或修复某物
  • 您需要为复杂任务编排多个代理

工作流过程

步骤1:目标选择

首先,确定用户的主要目标。使用AskUserQuestion工具:

questions=[{
  "question": "您对此任务的主要目标是什么?",
  "header": "目标",
  "options": [
    {"label": "研究", "description": "理解/探索某物 - 调查不熟悉的代码、库或概念"},
    {"label": "计划", "description": "设计/架构解决方案 - 创建实施计划,分解复杂问题"},
    {"label": "构建", "description": "实现/编码某物 - 编写新功能、创建组件、根据计划实施"},
    {"label": "修复", "description": "调试/修复问题 - 调查并解决错误、调试失败的测试"}
  ],
  "multiSelect": false
}]

如果从上下文中清楚用户意图,您可以推断目标。否则,使用上述工具明确询问。

步骤2:计划检测

在继续之前,检查现有计划:

ls thoughts/shared/plans/*.md 2>/dev/null

如果计划存在:

  • 对于构建目标:询问是否要实施现有计划
  • 对于计划目标:提及现有计划以避免重复
  • 对于研究/修复:正常进行

步骤3:资源分配

确定使用多少代理。使用AskUserQuestion工具:

questions=[{
  "question": "您希望我如何分配资源?",
  "header": "资源",
  "options": [
    {"label": "保守", "description": "1-2个代理,顺序执行 - 最小上下文使用,最适合简单任务"},
    {"label": "平衡(推荐)", "description": "适合任务的代理数量,部分并行 - 最适合大多数任务"},
    {"label": "激进", "description": "最大并行代理同时工作 - 最适合时间关键任务"},
    {"label": "自动", "description": "系统根据任务复杂性决定"}
  ],
  "multiSelect": false
}]

如果未指定或用户选择自动,默认使用平衡

步骤4:专家映射

根据目标路由到适当的专家:

目标 主要代理 别名 描述
研究 oracle 图书馆员 使用MCP工具进行全面研究(nia、perplexity、repoprompt、firecrawl)
计划 plan-agent 预言家 创建分阶段实施计划
构建 kraken 海怪 实施代理 - 通过Task工具处理编码任务
修复 debug-agent 哨兵 使用代码库探索和日志调查问题

修复工作流特殊情况: 对于修复目标,首先生成debug-agent(哨兵)进行调查。如果问题已识别并需要代码更改,则生成kraken来实施修复。

步骤5:确认

在执行之前,显示摘要并使用AskUserQuestion工具确认:

首先,显示执行摘要:

## 执行摘要

**目标:** [研究/计划/构建/修复]
**资源分配:** [保守/平衡/激进]
**要生成的代理:** [代理名称]

**将发生什么:**
- [代理将做什么的简要描述]
- [预期输出/可交付成果]

然后使用AskUserQuestion工具进行确认:

questions=[{
  "question": "准备好继续进行此工作流了吗?",
  "header": "确认",
  "options": [
    {"label": "是的,继续", "description": "使用上述设置运行工作流"},
    {"label": "调整设置", "description": "返回并修改目标或资源分配"}
  ],
  "multiSelect": false
}]

等待用户确认后再生成代理。如果用户选择“调整设置”,则返回到相关步骤。

代理生成示例

研究(图书馆员)

Task(
  subagent_type="oracle",
  prompt="""
  研究:[主题]

  范围:[要调查的内容]
  输出:在thoughts/handoffs/<session>/创建交接与发现
  """
)

计划(预言家)

Task(
  subagent_type="plan-agent",
  prompt="""
  为[功能/任务]创建实施计划

  上下文:[相关上下文]
  输出:将计划保存到thoughts/shared/plans/
  """
)

构建(海怪)

如果计划存在: 在实施前运行预剖析:

/premortem deep <计划路径>

如果发现高严重性问题,识别风险和障碍。用户可以接受、缓解或研究解决方案。

预剖析通过后:

Task(
  subagent_type="kraken",
  prompt="""
  实施:[任务]

  计划位置:[如果适用]
  测试:实施后运行测试
  """
)

修复(哨兵然后海怪)

# 步骤1:调查
Task(
  subagent_type="debug-agent",
  prompt="""
  调查:[问题描述]

  症状:[什么失败了]
  输出:诊断和推荐修复
  """
)

# 步骤2:如果识别出修复,生成海怪
Task(
  subagent_type="kraken",
  prompt="""
  修复:[基于哨兵诊断的问题]
  """
)

提示

  • 尽可能推断: 如果用户说“这个测试失败了”,那显然是修复目标
  • 适应性: 以平衡分配开始;如果任务证明复杂,再扩展
  • 链式代理: 对于复杂任务,研究 -> 计划 -> 预剖析 -> 构建是推荐流程
  • 运行预剖析: 在构建前,始终在计划上运行/premortem deep以早期捕获风险
  • 保留上下文: 使用代理之间的交接来保持连续性