From 7ec838507a7e2e1d7002c04180d9f4b302a6a4b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Steffen=20R=C3=B6cker?= Date: Tue, 7 Apr 2026 21:23:49 +0200 Subject: [PATCH] fix(api_server): update tool_progress_callback signature for Open WebUI streaming Commit cc2b56b2 changed the tool_progress_callback signature from (name, preview, args) to (event_type, name, preview, args, **kwargs) but the API server's chat completion streaming callback was not updated. This caused tool calls to not display in Open WebUI because the callback received arguments in wrong positions. - Update _on_tool_progress to use new 4-arg signature - Add event_type filter to only show tool.started events - Add **kwargs for optional duration/is_error parameters --- gateway/platforms/api_server.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gateway/platforms/api_server.py b/gateway/platforms/api_server.py index d9b3287398..82412e5dfc 100644 --- a/gateway/platforms/api_server.py +++ b/gateway/platforms/api_server.py @@ -564,8 +564,10 @@ class APIServerAdapter(BasePlatformAdapter): if delta is not None: _stream_q.put(delta) - def _on_tool_progress(name, preview, args): + def _on_tool_progress(event_type, name, preview, args, **kwargs): """Inject tool progress into the SSE stream for Open WebUI.""" + if event_type != "tool.started": + return # Only show tool start events in chat stream if name.startswith("_"): return # Skip internal events (_thinking) from agent.display import get_tool_emoji