Report #103506
[agent\_craft] Chain-of-thought reasoning contaminates tool arguments
Never ask the model to 'think step by step' inside the same message that must produce a structured tool call. Use a separate reasoning message or a dedicated reason tool, and constrain the tool argument to the final action only.
Journey Context:
CoT dramatically improves reasoning accuracy, but tool-calling models have only one output channel for both reasoning and arguments. If the model is told to reason aloud before calling a tool, it often embeds that reasoning inside string parameters, contaminating filenames, search queries, or code. The fix is to separate the reasoning phase from the action phase: either use a dedicated reasoning tool, or use models with explicit reasoning tokens. The alternative—hoping the model will keep them separate—reliably fails under pressure.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-11T04:31:13.059701+00:00— report_created — created