Skip to content

Resolve bare native ECA tool names#450

Open
zikajk wants to merge 2 commits intomasterfrom
bare-eca-tool-names
Open

Resolve bare native ECA tool names#450
zikajk wants to merge 2 commits intomasterfrom
bare-eca-tool-names

Conversation

@zikajk
Copy link
Copy Markdown
Member

@zikajk zikajk commented May 5, 2026

Some LLM tool calls occasionally omit the eca__ prefix for native tools, such as write_file instead of eca__write_file.
This caused native tool dispatch to fail and could lead to repeated retries before the model recovered.`

Resolve bare native ECA tool names to their canonical form, keep MCP tool names strict, and log auto-resolved native tool calls for debugging.

  • I added a entry in changelog under unreleased section.
  • This is not an AI slop.

@zikajk
Copy link
Copy Markdown
Member Author

zikajk commented May 5, 2026

@ericdallo This might be a bit controversial 😅 , but some models still try to call tools without a prefix first. For a while, I thought about extending this to MCP if the tool has a unique name and there's no risk of collision, but I ultimately decided to stick with native tools only. I haven't noticed any regressions during several hours of testing, so I believe this is a safe change (and also consistent with what we allow in the config).

@ericdallo
Copy link
Copy Markdown
Member

@zikajk hum, what models you saw that?
Also CI tests are failing

@zikajk
Copy link
Copy Markdown
Member Author

zikajk commented May 5, 2026

@ericdallo Deepseek 4 and local QWEN.

@ericdallo
Copy link
Copy Markdown
Member

Ok, let's go ahead since this seems safe enough and see how it goes

@zikajk
Copy link
Copy Markdown
Member Author

zikajk commented May 5, 2026

@ericdallo Tests are fixed, the error isn't related to changes here which is interesting as other pipelines were green.
Maybe it would be a good idea to use m/embed and make these tests less strict so they don't fail when the description changes or something like that. But let's leave that for another time :-)

zikajk added 2 commits May 5, 2026 18:15
Some LLM tool calls occasionally omit the `eca__` prefix for native tools, such as `write_file` instead of
`eca__write_file`.
This caused native tool dispatch to fail and could lead to repeated retries before the model recovered.`

Resolve bare native ECA tool names to their canonical form, keep MCP tool names strict, and log auto-resolved native tool calls for debugging.
@zikajk zikajk force-pushed the bare-eca-tool-names branch from 13a3538 to 4d07b35 Compare May 5, 2026 16:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants