--- name: subagent-model-routing description: 创建或复用子智能体前使用:通过官方 fresh 创建工具委派,照实传递用户或 lead 指定的模型与 effort;AUTO 在创建时自行选配,route_subagent 只是可选预览。 --- # 子会话模型选择 AUTO 的子任务路由由插件在**官方 fresh 创建工具**创建的精确子会话首次请求前完成:插件判断能力与投入、校验当前目录与官方允许列表,并把路由绑定到该子会话。主 Agent 负责拆解、派发与验收,不自行估档。工具跟随所属主会话的模式:只有主会话为 AUTO 时才判断,并把脱敏后的任务文本发送给设置中所选的决策服务;MANUAL 时不判断、不外发。 ## 创建 1. **使用官方 fresh 创建工具**(`subagent` 或 fresh `spawn_teammate`),给出清楚的目标与范围。目标或范围不足时,插件会返回 needs-context,请补充描述后重新创建。 2. **显式指定的值照实传递**:用户或 lead 指定了模型或 effort 时,原样传给官方工具。只指定一个维度时,插件只判断另一个;两者都指定时不调用 Jev,只做校验。 3. **`route_subagent` 只是可选预览**:派发不需要先预览,路由只在创建时判断一次。它返回的 `status: recommended` 不等于已应用;不要把推荐结果当成显式参数传给官方工具,让插件在创建时自行选配。 4. **主会话为 MANUAL**:`route_subagent` 返回 `routed: false`。此时按官方默认委派,只传用户或 lead 指定的值,不传其它 provider/model/reasoning_effort,也不猜档位。 5. **标注**:在 `description` 末尾以 `[model·effort]` 标注实际使用的配置,例如 `检查鉴权边界 [·]`;不确定时先查第 7 条的应用证据。 6. **fork 与父会话保持一致**:AUTO 不路由 fork,按 DSH 原生行为继承父会话配置。需要按任务选配时改用 fresh。 7. **应用证据**:通过 `childRouting` 状态接口查看对应子会话的 recommended / applied / unsupported / needs-context / failed。applied 来自实际请求头,而不是工具推荐;未绑定的创建路径不算已路由。 ## 失败 8. 若调用了预览:返回 `status: fallback`(目录或允许列表中没有可用路由、判断服务失败等)时,按官方默认委派并向用户简要说明原因;返回 `needs-context` 时补充目标与范围后再派发;返回错误(含判断被取消)时**暂停委派并询问用户**,把错误原文告诉用户,不得猜测档位、换用其它模型、改由主会话自己完成或自行重试。创建时路由不可用会自动退化为 DSH 默认行为,并在主会话面板中告警。 9. 工具不存在(插件未启用):告知用户“子会话 Jev 选模未启用”,然后按官方默认委派,只传用户或 lead 指定的值。 ## 复用 10. 向已有子会话发送新任务前,先比较它的 `[model·effort]` 标注与新任务的需求。需要更高投入、不同模型家族,或无法确认原配置时,**新建**子会话。已创建的子会话收到后续消息时不会重新选模;创建后不动态修改其模型或 effort。 此 skill 是使用指引,不能强制 Agent 每次委派前都执行某个工具。与环境级指令「子会话派发」一致:直接用官方 fresh 工具派发,预览可选。