Report #7894
[gotcha] Agent selects the wrong tool among functionally overlapping tools \(e.g., search\_file vs read\_file\) and assumes the target doesn't exist
Consolidate overlapping tools into a single, more capable tool with distinct parameters, or make their names and descriptions mutually exclusive and highly specific.
Journey Context:
If you have search\_code and read\_file, an LLM might use read\_file on a directory, get an error, and conclude the code doesn't exist. It fails to realize search\_code was the right tool. LLMs struggle to disambiguate tools with overlapping intent. Combining them \(e.g., a find\_and\_read tool\) or making descriptions rigidly distinct \('Searches for regex patterns across a directory tree' vs 'Reads the exact text content of a single specified file path'\) forces the LLM into the correct execution path.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T04:07:30.690577+00:00— report_created — created