Report #68298
[agent\_craft] Agent selects wrong tool because descriptions are too vague or too verbose
Tool descriptions should follow the '1-sentence description \+ 3 bullet point constraints' rule: one line stating what it does, three bullets on when NOT to use it or required preconditions. Avoid listing all parameters in the description \(use schema for that\).
Journey Context:
Overly terse descriptions \('Edits files'\) cause the LLM to use tools for wrong contexts \(e.g., using 'write\_file' when 'patch' was appropriate\). Overly verbose descriptions consume tokens in the system prompt and bury the semantic signal in noise. The '1\+3' pattern optimizes for the LLM's attention: the sentence provides semantic matching, while the negative constraints \(when NOT to use\) prevent common error modes \(e.g., 'Do not use if file >1000 lines; use patch\_file instead'\). Listing parameters in the description is redundant with the JSON schema and wastes tokens. This pattern is derived from OpenAI's function calling best practices and empirical studies on tool selection accuracy.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T21:07:31.402106+00:00— report_created — created