mirror of
https://github.com/open-webui/computer.git
synced 2026-11-05 01:17:24 +00:00
[GH-ISSUE #244] bug: gateway renders only the tool name to OpenAI-compatible clients — arguments are available but discarded, and nothing renders on completion #157
Labels
No labels
enhancement
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
open-webui/computer#157
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ThalynLabs on GitHub (Aug 29, 2026).
Original GitHub issue: https://github.com/open-webui/computer/issues/244
Summary
_format_tool_callincptr/routers/gateway.pyrenders a tool call to OpenAI-compatible clients as the tool's name and nothing else — no command, no arguments, no output. The arguments are available on the item by the time this function runs; it reads them only to extracttitle, then discards the rest.This is the remaining half of #196. That issue fixed capture (
input_json_deltafragments are now accumulated) and #197 fixed the name. Both landed. But the gateway still drops everything except the name on the way out, so for an OpenAI-compatible client the original symptom of #196 is unchanged: "You can see thatBashran; you can never see what command it ran."Verified in v0.9.21, running live against Open WebUI 0.11.1.
Current behaviour
cptr/routers/gateway.py:argumentsis in scope and populated —claude_code.pyreassembles it from the accumulatedinput_jsonand attaches it alongsidetitle— but onlytitleis read.Two consequences
1. Arguments are discarded. A turn that runs five commands renders as five identical
`Bash`markers with no way to tell them apart, in the response or in the persisted chat.2. Nothing renders on completion. The guard is
status != "in_progress", so the only event that produces output is the tool starting. There is no terminal output, no result, and no success/failure signal — a tool that errored looks exactly like one that succeeded.Why this matters more than it looks
I'm reporting this on behalf of a totally blind daily user (VoiceOver, macOS) who drives cptr agents through Open WebUI as the frontend — which is the arrangement
gateway.py's own docstring describes.For a sighted user a bare
Bashmarker is uninformative. For a screen-reader user it is worse than uninformative: the reply reads as a sequence of identical one-word announcements with no content between them, and there is no way to tell whether the agent did what was asked, did something else, or failed. The visual UI at least conveys shape; read aloud, there is nothing there at all.Suggested direction
Not prescriptive about the form, but two things would resolve it:
Bash, the path forRead/Write/Edit. A fenced block keyed on the tool would fit the existing compact-markdown style.outputevent already carries the item; thestatus != "in_progress"guard is what excludes it.A verbosity setting would be reasonable if full output is considered too noisy for the default — though for the accessibility case the failure signal in particular should probably not be behind a flag.
Happy to open a PR if that would help; I've read the surrounding code and the change looks contained to this function and its two call sites. Given the project's first-time-contributor policy I'd rather be asked than assume.
@owui-terminator[bot] commented on GitHub (Aug 29, 2026):
🔍 Related Issues Found
I found some existing issues that might be related. Please check if any of these are duplicates or contain helpful solutions:
🟣 #197 bug: every tool call renders as
agent_toolto OpenAI-compatible clientsThis is the immediate precursor: it fixed the tool name mapping in the gateway renderer for OpenAI-compatible clients. The new issue is the remaining bug in the same
_format_tool_callpath, where arguments and completion output are still dropped.by penradioGables
🟣 #196 Issue #196
This issue is the directly related earlier half of the same bug report. It covered the missing
input_json_deltacapture that populatedarguments; the new issue explicitly says that even after #196, the gateway still discards those captured arguments on render.by unknown
🟣 #183 issue: many tool call turns look ugly
Related at the UX level: it concerns too many tool-call turns being hard to read in chat, which overlaps with the new report's concern that the gateway renders tool calls poorly for users, especially when multiple tool calls appear.
by Classic298
💡 If your issue is a duplicate, please close it and add any additional details to the existing issue instead.
This comment was generated automatically. React with 👍 if helpful, 👎 if not.