Intelligence Routing 是一项智能路由技能,目标是在开始任何非平凡任务之前,用数据驱动的决策替代手动选择智能体,为任务挑选最合适的智能体与模型层级。它基于学习到的模式(learned patterns)与三层模型路由器(3-tier router),并可输出 hooks_explain 路由依据,使选择过程可审计。
用途
在启动任何非平凡任务之前使用本技能,以数据驱动的决策代替手动选择智能体。
主要能力与使用方式
根据资料,其流程包含以下步骤:
-
获取智能体推荐:调用 mcp__plugin_ruflo-core_ruflo__hooks_route,并传入任务描述,返回 { recommended, confidence, reasoning }。
-
获取模型层级推荐:调用 mcp__plugin_ruflo-core_ruflo__hooks_model-route,用于 Haiku/Sonnet/Opus 的选择。
-
搜索相似的过往模式:调用 mcp__plugin_ruflo-core_ruflo__hooks_intelligence_pattern-search,查找先前成功的模式。
-
预测结果:调用 mcp__plugin_ruflo-core_ruflo__neural_predict,传入任务描述以获得带置信度评分的预测。
-
以推荐的模型层级启动推荐的智能体。
-
(若传入 --why)调用 mcp__plugin_ruflo-core_ruflo__hooks_explain,将路由依据呈现给用户。
-
任务完成后,调用 mcp__plugin_ruflo-core_ruflo__hooks_model-outcome,并以 success: true|false 上报,用于训练路由器。
三层模型路由
资料给出了三层模型路由的层级、处理器、延迟、成本与适用时机:
-
第 1 层:确定性 codemod(TypeScript 编译器),约 1ms,$0。适用于无需 LLM 的结构化转换,例如 var-to-const、remove-console、add-logging。
-
第 2 层:Haiku,约 500ms,约 $0.0002。适用于低复杂度(<30%)、缺陷修复、快速补丁。
-
第 3 层:Sonnet/Opus,2–5s,$0.003–$0.015。适用于复杂推理、架构、安全、多文件重构。
当 hooks_route 针对确定性意图(var-to-const、remove-console、add-logging)返回 [CODEMOD_AVAILABLE] 时,应调用 mcp__plugin_ruflo-core_ruflo__hooks_codemod,传入 intent + file,它会通过 TypeScript 编译器以 $0 应用转换,无需 LLM。资料同时注明:add-types、add-error-handling、async-await 需要判断力,依据 ADR-143 会路由到模型(第 2/3 层),它们不是 $0 的 codemod。Agent Booster 是用于 LLM 产出的编辑的快速应用合并引擎,而不是第 1 层路径。
记录结果
资料强调闭合路由循环是必须的,并给出示例:
成功: mcp tool call hooks_model-outcome --json -- '{"taskId": "T123", "success": true, "model": "haiku"}'
带原因的失败: mcp tool call hooks_model-outcome --json -- '{"taskId": "T123", "success": false, "model": "haiku", "reason": "complexity-misjudged"}'
路由器会从这些调用中学习。跳过它们等于没有学习。
CLI 替代方式
npx @claude-flow/cli@latest hooks route --task "description" npx @claude-flow/cli@latest hooks pre-task --description "description" npx @claude-flow/cli@latest hooks explain --topic "routing decision"
适用场景
适用于任何非平凡任务开始前的智能体与模型选择,尤其是需要依据历史成功模式、置信度评分与可审计理由来做路由决策的场景,以及低复杂度修复、复杂推理与多文件重构等不同层级任务的分配。
限制
资料未提供该技能支持的具体平台、除上述分层成本外的实际计费方式、安装细节与其它限制。add-types、add-error-handling、async-await 不属于 $0 codemod,会被路由到模型。未调用 hooks_model-outcome 记录结果会导致路由器不学习。