mirror of
https://github.com/pewdiepie-archdaemon/odysseus.git
synced 2026-08-07 03:45:28 +00:00
Both checks match a bare "tool" or "auto" anywhere in the error text, which catches a lot that has nothing to do with tool support: a tool timing out, an MCP server dropping, any message containing "automatic". At the first site the consequences are not cosmetic. The real error is replaced with "This model doesn't support agent tools", so the actual cause is lost. The UI leaves agent mode. And the choice is written to localStorage, so every later message in that conversation also runs without tools, with nothing on screen explaining why. It presents as "agent mode works in a new chat but not in this one", which sends you looking at the model, the session, or the endpoint rather than at a substring match in the error path. Diagnosing it took a while precisely because the message you are shown is the one thing that is not true. The second site is milder -- it appends a hint rather than switching -- but appending "this model may not support tools" to an unrelated failure still points the user at the wrong fix. Match the provider's actual wording instead. Ollama returns "<model> does not support tools"; the pattern also covers "doesn't support tools" and "tools are not supported". The original error text is kept in both cases so a genuine failure stays diagnosable. Checked against the strings that used to misfire -- "tool execution timed out", "MCP server not connected", "automatic retry failed", "tool_choice auto is invalid", "peer closed connection" -- none of which now demote, while the three real phrasings still do. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| fonts | ||
| icons | ||
| js | ||
| lib | ||
| app.js | ||
| icon.ico | ||
| index.html | ||
| login.html | ||
| manifest.json | ||
| modal-control-variants.html | ||
| style.css | ||
| sw.js | ||
| wave-variants.html | ||
| whirlpool-variants.html | ||