Report #97255
[agent\_craft] Tool descriptions are vague, so the model uses the wrong tool or calls it with bad arguments
Write tool descriptions as 'when to use this, not that' decisions. Include the exact schema, required vs optional, and one example of a correct call. Treat the description as the primary API contract.
Journey Context:
A tool named 'search' with description 'search the codebase' will be used for everything: reading single files, grepping, asking about architecture, even checking syntax. The model has no way to know the boundaries. The fix is descriptive disambiguation: 'Use search when you do not know which file contains the symbol; use read\_file when you know the exact path; use grep only for literal string matching.' This is the same principle as OpenAI's function-calling best practices, which emphasize that the model has no access to implementation details and relies entirely on the name and description. Good tool descriptions are the single highest-leverage prompt engineering change in a tool-using agent.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-25T04:48:42.155684+00:00— report_created — created