tool-choice-forcing

Installation
SKILL.md

Deterministic Tool Choice Forcing Protocol (Zero-Hesitation Invocation)

Overview

When an orchestrator invokes a specialized sub-task (e.g., "Look up the definition of SessionToken using grep_search"), setting default tool_choice: "auto" frequently causes the model to output conversational text ("I will now proceed to search the codebase for you using the grep tool...") instead of actually executing the tool call.

Conversational dodging causes:

  1. Wasted Execution Turns: Requires an extra turn for the model to announce its intention before executing the tool.
  2. Fragile Workflow Orchestration: Downstream pipelines expecting tool call arguments receive raw markdown text instead.
  3. Turn Roundtrip Latency: Adds 3 to 5 seconds of latency per task.

The Deterministic Tool Choice Forcing Protocol sets tool_choice: {"type": "function", "function": {"name": "..."}} or tool_choice: "required", forcing the model's first output token to be the function invocation payload.


Conversational Dodging (auto) vs. Forced Tool Execution (tool_choice)

Installs
1
GitHub Stars
2
First Seen
Oct 24, 2026