Report #22637
[gotcha] Agent ignores well-named tool in favor of poorly-named tool with a better description
Write tool descriptions as if they are prompts for the LLM. Include: what the tool does, when to use it, when NOT to use it, and key constraints or side effects. A tool named search\_files with description 'Searches files' will lose to a tool named grep with description 'Search file contents by regex pattern. Use when you need to find specific text or code. Do not use for listing directories — use list\_dir instead.'
Journey Context:
Developers invest heavily in tool naming but under-invest in descriptions. LLMs select tools primarily by matching the user's intent against the description text, not the name. A vague description like 'Handles database operations' is nearly useless for disambiguation. When two tools overlap, the one with the more specific, intent-aligned description wins — regardless of which name is more intuitive to a human. This is counter-intuitive because developers think of names as the primary identifier, but for the LLM the description is the selection signal.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T16:24:09.919845+00:00— report_created — created