mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-06 10:58:17 -05:00
[GH-ISSUE #22851] issue: Generation stops after integrated tool call for non-admin users #35356
Reference in New Issue
Block a user
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 @moritzderallerechte on GitHub (Mar 19, 2026).
Original GitHub issue: https://github.com/open-webui/open-webui/issues/22851
Check Existing Issues
Installation Method
Docker
Open WebUI Version
v0.8.10
Ollama Version (if applicable)
No response
Operating System
Ubuntu 24.04.4 LTS
Browser (if applicable)
Chrome 146.0.7680.72
Confirmation
README.md.Expected Behavior
When having models call integrated tools, OpenWebUI should do a follow up call to the model, including the results of the tool call.
Actual Behavior
When using an admin account, this works as expected (generation continues).
However with normal user accounts, the generation just stops.
The results of the tool call is correctly shown in the UI, but there is no subsequent request.
Steps to Reproduce
Logs & Screenshots
user log:
admin log:
Additional Information
I am using a manifold pipe to connect to OpenRouter, however the issue most definitely does not lay there.
The pipe does not do any permission checking or discriminate in any way between users. In fact, no information about the users is ever used for requests.
The request generated by the pipe looks exactly the same for every user. I tested with the following example:
At the very top of the pipe() function, I log the request body generated by OpenWebUI and the task variable.
The logs make it clear as day, that after the first call with task=None there is no effort to keep the generation running, as the next call is with task=title_generation when using a user account.
With an admin account, there is a follow-up call with task=None.
Since the request is completely the same, the request by OpenRouter obviously doesn't differ in any significant way either.
In both cases the response ends like so:
I stripped the usage field generated by OpenRouter since it is irrelevant.
I am certain that there is no issue with my pipe implementation and that there is some permission check in a place where it shouldn't be.
I have looked at every permission setting existing, but nothing corresponds to the problem.
The tool calling itself is obviously not prohibited, since the UI shows the correct responses, as to be seen here:
@moritzderallerechte commented on GitHub (Mar 19, 2026):
I had already mentioned this here but the original post points out a slightly different issue and doesn't mention the permission problem
@moritzderallerechte commented on GitHub (Mar 19, 2026):
Another note:
I have tried setting the environment variable BYPASS_ADMIN_ACCESS_CONTROL=false, as to emulate user access with an admin account.
This however still results in the same behaviour, being that admin accounts have properly working tool calls and user accounts do not.
@fkeloks commented on GitHub (Mar 19, 2026):
Hello,
I'm experiencing the same issue. Granting the user permissions directly within the tool works, but this results in the "Tools" tab appearing on the interface for all models (instead of being seamlessly integrated into the current model).
@tjbck commented on GitHub (Mar 25, 2026):
Unable to reproduce, likely a misconfiguration.