diff --git a/proxy-patches/routes.js b/proxy-patches/routes.js index 626b2f8..da9ed7c 100644 --- a/proxy-patches/routes.js +++ b/proxy-patches/routes.js @@ -122,9 +122,15 @@ function _attachToolHook(subprocess, requestId) { } } catch (_) { /* fail-open */ } }); - // user-Events enthalten tool_result-Blocks - subprocess.on("user", (message) => { + // tool_result Blocks kommen in user-Messages — die werden vom + // subprocess-Manager NICHT als 'user'-Event emittiert (gibt's nicht), + // sondern nur ueber das generische 'message'-Event mit type:'user'. + // 'message' feuert auch fuer assistant/result — wir filtern auf user + // damit wir nicht doppelt rendern (assistant geht ueber den eigenen + // assistant-Handler oben). + subprocess.on("message", (message) => { try { + if (message?.type !== "user") return; const blocks = message?.message?.content || []; for (const b of blocks) { if (b && b.type === "tool_result") {