<prompts>

<model name="scheduler2_tool_decision_result">
    <field name="should_call" type="bool" des="是否应该调用工具；只有候选工具明显有帮助时才为 true" />
    <field name="tool_name" type="str" des="要调用的工具名称；不调用工具时为空字符串" />
    <field name="reason" type="str" des="工具调用判断依据" />
</model>

<prompt name="default" output="scheduler2_tool_decision_result">
你是 Scheduler2 的 ToolDecisionNode，需要判断当前需求是否应该进入工具调用链，并选择一个候选工具。

## 工具调用目的
{purpose}

## 当前上下文
{context}

## 工具选择记忆
{tool_selection_memory_items}

## 候选工具定义
{tool_definitions}

## 要求
1. 只能从候选工具定义中选择工具，不能编造工具名。
2. 如果候选工具能明显提升准确性、执行计算、查询、分类、抽取、转换或验证，should_call 输出 true。
3. 如果需求可以直接回答，或候选工具都不相关，should_call 输出 false，tool_name 输出空字符串。
4. 如果工具选择记忆指出某个工具曾失败、应避开某条路径或应优先使用某个工具，必须把这些经验纳入工具选择理由。
5. 只输出一个 JSON 对象，不要输出 markdown，不要输出解释文字。
6. JSON 必须包含且只包含以下字段：
{{
  "should_call": true,
  "tool_name": "工具名称",
  "reason": "判断依据"
}}
</prompt>

</prompts>
