You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The existing experimental_repairToolCall handler normalizes case and separators (e.g. todo_write → todowrite), but many models consistently call tools by common synonyms that don't match any tool name even after normalization — search instead of grep, find instead of glob, cat instead of read, etc.
When this happens, the tool call falls through to the "invalid" fallback, and the model retries the same synonym in an infinite loop:
Expected behavior
Common tool synonyms should be resolved automatically by the repair handler, similar to how case/separator normalization already works. Users should also be able to define custom alias mappings via config for their specific setups.
I have the same issue.
I was thinking to create something like an alias for this cases but in opencode it isn't possible to implement something like that.
I see that PR implement something like that with a normalization.
Activity
sirus20x6 commentedon Feb 20, 2026
bump
Mte90 commentedon Feb 24, 2026
I have the same issue.
I was thinking to create something like an alias for this cases but in opencode it isn't possible to implement something like that.
I see that PR implement something like that with a normalization.
phanthaitrung commentedon Mar 15, 2026
When entering this prompt, the LLM does an infinitive calls to the tool, causing loop call to AI api
github-actions commentedon Jul 4, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.