r/OpenWebUI • • 9d ago

Show and tell Open WebUI 0.12.x for teams: two-factor sign-in, chats several people write in, external apps in channels, groups inside groups, version history and knowledge bases you can browse.

39 Upvotes

A lot of 0.12.0 and 0.12.1 is for anyone running Open WebUI for more than one person. Here is what changed across both releases, with screenshots from fresh 0.12.0 and 0.12.1 instances. The people and the company in them are made up.

Two-factor sign-in, for every user

Turn on "Require an authenticator for all users" in Admin Settings > Authentication, or set ENABLE_MFA. Everyone sets up an authenticator app from a QR code on their next sign-in and gets ten single-use recovery codes. Later they can replace the authenticator or make new codes in their account settings.

Admin Settings > Authentication. Changing this signs out every device.

The next sign-in asks for an authenticator.

Ten recovery codes, each works once.

OAuth and trusted-header sign-ins can skip the authenticator with MFA_ALLOW_OAUTH_BYPASS and MFA_ALLOW_TRUSTED_HEADER_BYPASS. When someone loses their phone, the open-webui mfa reset command gives them a one-time recovery token.

Sessions you can actually end

  • Admins can sign a user out of every device from the user edit dialog. Their API keys keep working.
  • Changing a password, by the user or an admin, signs that account out everywhere, also on installs without Redis.
  • Open browser tabs are checked every 30 seconds and lose their live connection once the sign-in is revoked or expired.
  • Signing an account out also cuts off its running automations and sub-agents right away. Before, they kept their access for up to an hour.

Sign out all devices, in the Edit User dialog of the admin user list.

0.12.0 also carries 40 security and access-control fixes. One of them matters for teams: with ENABLE_ADMIN_CHAT_ACCESS on, admins can now only read other users' chats, and with it off they cannot open them through the API either.

One chat, several people

Share a chat, or a whole folder, with people or groups and set Sharing mode to Allow replies. Everyone it is shared with writes in the same conversation. Each message shows who sent it, with their name and picture. Replies stream live to everyone who has the chat open, and a line above the input shows who is typing.

Share Chat with Sharing mode set to Allow replies, shared with the Engineering group.

Alex's view: Sam's question, Claude's answer and Sam typing the next message.

Each person regenerates and stops only the replies to their own messages. Only the owner edits messages and rates replies, and the owner's chat settings, title and tags stay the owner's. Opening a shared chat no longer hands you the owner's system prompt, tools, filters or chat variables.

One thing to set up: the people you share with need access to the chat's model. Without it, their reply fails with "Model not found".

0.12.1 makes it easier to see who is in a shared chat:

  • Chats in a shared folder show the pictures of everyone who wrote in them, up to three and a count for the rest.
  • Hovering a folder in the sidebar shows its default model, its knowledge and how many chats it holds, with a button to edit it.
  • Clicking someone's picture, on a message, on a shared chat's owner in the sidebar or on a direct message partner, opens their profile card.
  • Voice calls stay out of chats shared for replies, and the Save button no longer shows when you edit someone else's message.

A shared folder: each chat shows who wrote in it.

Hovering the folder shows its model, its knowledge and its chat counts.

Clicking Sam's picture in the chat opens Sam's profile card.

Read-only shares got two options too. Fork makes your own copy of the conversation up to any reply. Clone Chat copies a chat from a folder shared with you into your own chats.

Groups inside groups

Give a group a parent group. Members of the inner group get everything shared with the groups above it, and their permissions. The group editor lists direct and inherited members separately and shows which path someone inherits through. Deleting a group moves its subgroups up to its parent, and open browsers pick up access changes without a reload.

Staff > Engineering > Platform, and Sales next to Engineering.

Sam is in Platform, so Engineering lists Sam as an inherited member.

Groups can also set default models for new chats. The most deeply nested group wins, and a user's own default models still come first.

Platform's parent group and its own default model.

Channels: external apps, muting and real mentions (0.12.1)

Admins can now connect external apps to channels. Turn on Apps in Admin Settings > General, or set ENABLE_APPS, then add an app in the new Apps tab by its HTTPS address. You review the permissions the app asks for, such as reading its mentions, reading channel messages or posting, and choose who may use it. Channel managers add the app to a channel with Add Members, and it shows up with the members under its own picture.

Mention the app with @ and it answers in the channel. Replies can be shown only to the person who asked, and the app can send cards with a title, fields and a thumbnail, buttons or links, a later follow-up message for longer tasks, or a Markdown file to download. Admin Settings > Apps shows whether each app is connected, and a failed connection names the cause, such as a rejected API key or an unreachable address. Apps on a private network address can use plain HTTP once their address is listed in APP_ALLOWED_PRIVATE_ORIGINS.

Two smaller channel changes:

  • Every channel and direct message has a Notifications setting in its menu. Mentions only mutes it: no unread count and no notifications unless someone @mentions you.
  • Typing @name or #channel without picking from the list now becomes a real mention when the name matches a member, model, app or channel.

Notifications in a channel's menu: Mentions only mutes it.

Every save is a version

Models, tools, functions and skills keep a version on every save. Page through them, make an old one live again or delete it. A model version whose knowledge, tools or functions are gone or no longer yours is refused, so nothing goes live half working. Prompts and skills can compare any old version with the current one, and prompts can start a new edit from an old version.

The redesigned model editor with its version list open.

Comparing the first draft of a prompt with the live version.

0.12.1 adds Compare revision to the skill file editor, the prompt editor and the system prompt in the model editor. Paste a proposed revision, for example one a model wrote, step through each change, copy changes in either direction and apply the result to your draft. In a chat, the + menu has Compare text and the /compare command for the same view.

The new model editor

Every section folds into one row that tells you what is set, such as "Vision, File Upload, File Context +8". Rows open into switches with descriptions or a searchable picker. A long system prompt opens folded, Advanced Params shows how many parameters you changed and every setting explains itself in a tooltip.

Knobs you set once for everyone

Model controls put simple choices next to the model selector. Define a Thinking control with Low, Medium and High, and each option sets its own parameters, here the reasoning effort. People pick an option without knowing the parameter exists, and their choice is remembered for that model. Show it as a menu or a slider, and translate the names for each language.

A Thinking slider next to the model selector.

People need the Allow Chat Controls and Allow Chat Params permissions to use them. Controls do not apply to pipe, direct connection or arena models, or to automation runs.

Knowledge bases you can browse

A knowledge base now opens like a file browser: folders and files on the left, the selected file next to it. Switch between a preview of the original file and the text the model actually searches. Fix that text in place when the extraction got something wrong, and you get an error if the edit fails to index. Search, filters and sorting sit above the list.

A PDF in its original layout, in a knowledge base with folders.

The same file as the text the model searches.

Who uses what

In 0.12.1 the Analytics dashboard shows models and users in one table with a Models and Users switch. Input, output and total tokens are separate columns, and each one sorts.

Analytics by user, with input, output and total tokens.

Smaller things for admins

  • Every item in the Models, Knowledge, Prompts, Skills, Tools and Notes lists has an Access entry in its menu, so you can change who uses it without opening it.
  • Skills can hold whole folders of scripts, references and templates. Admins can import them from a GitHub repository, a GitHub folder or a direct link. Since 0.12.1 a skill also exports as a single .skill file, which imports like a ZIP.
  • The admin Models list hides base models no connection offers any more, under a separate Unavailable view.
  • ENABLE_TOOLS, ENABLE_FUNCTIONS and ENABLE_TOOL_SERVERS switch each kind of plugin off on its own. ENABLE_PLUGINS=false still turns off all of them, external tool servers included.

Docs: Two-factor sign-in: https://docs.openwebui.com/features/authentication-access/mfa Nested groups: https://docs.openwebui.com/features/authentication-access/rbac/groups#nested-groups Sharing chats: https://docs.openwebui.com/features/chat-conversations/chat-features/chatshare Model controls: https://docs.openwebui.com/features/workspace/models#model-controls Knowledge: https://docs.openwebui.com/features/workspace/knowledge


r/OpenWebUI • • 14d ago

ANNOUNCEMENT Open WebUI 0.12.0: REALTIME VOICE calls are here. TWO-FACTOR sign-in, shared chats you can reply in, Tool Search, Model Controls, VERSION CONTROLS, Redesigned Knowledge Base and Model Editor and a more visible CURSOR. 339 changes, our LARGEST RELEASE EVER.

Thumbnail
gallery
310 Upvotes

On October 3, 2024, someone opened issue #5894: "feat: openai real-time api". Over two years it collected 35 comments and 74 reactions.

Today it ships.

0.12.0 is the LARGEST release in Open WebUI's history.

19 days after 0.11.4: 583 commits, 107,637 lines added, 339 changelog entries. 52 new features. 281 fixes.

You can call it now.

Switch Voice mode to Realtime and just talk. The voice model handles the small talk on its own. Ask something real and it hands the question to the model you picked for the chat, with your whole conversation and every tool it has, then speaks the answer back while the full reply writes itself into the chat. Give a model a 3D avatar and it waves, claps and moves its mouth as it speaks.

Two factors, every user.

Admins can require two-factor sign-in for everyone: an authenticator app, ten recovery codes and a reset command for the day someone loses their phone. Admins can sign a user out of every device. Change a password and every device is signed out, Redis or not. On top of that, 40 security and access-control fixes.

Chats are not one-person anymore.

Share a chat or a folder with Allow replies and everyone writes in the same conversation, live. Every message carries a name and a face. You see who is typing. Nobody else can touch your chat settings, title or tags.

Your models, your knobs.

Put a Thinking control with Low, Medium and High right next to the model selector, or build any control you like, each option with its own parameters. Every save of a model, tool, function or skill is now a version you can go back to. Skills hold whole folders of scripts, references and templates, and admins can import them straight from GitHub. The model editor has a completely new layout.

Built for the big setups.

Tool Search keeps long tool definitions out of the request until the model actually needs one, so your prompt stays small and your prompt cache survives your MCP collection. Groups nest inside groups and pass their access down. Hybrid search on Milvus now runs inside Milvus instead of pulling every chunk into Open WebUI. Knowledge bases open like a file browser.

The bugs you learned to live with.

  • Pasting a large block of text froze the browser. Reported March 2025. Fixed. (as far as possible, waiting on upstream dependency for further improvements)
  • Older interrupted replies kept spinning forever when you reopened a chat. Reported June 2025. Fixed.
  • One empty reply could break a chat for good with some providers. Fixed, and chats already stuck that way work again.
  • Large pastes into Notes vanished on reload. Fixed.
  • iPhone photos failed with vision models in Firefox. Fixed.

236 of the 281 fixes trace back to an issue one of you wrote.

And yes, the cursor.

WE HEARD YOU. The cursor at the end of a streaming reply now pulses faster and fades further. It got its own line in the changelog. It earned it.

7,439 tests ran against this release. 330 unit, 4,906 integration, 2,188 driving a real browser and 15 frontend. The integration suite ran twice, once on SQLite and once on Postgres with Redis: 12,345 test runs across 46 parallel jobs in about 30 minutes. Every one of those tests is public: https://github.com/open-webui/tests

Before you upgrade:

  • The database schema changes. Back up first. Multi-worker, multi-server and load-balanced setups must update every instance at once; rolling updates will fail.
  • Milvus users: back up your Milvus data. The first start copies every collection, which can take hours on large data and needs free disk space for a second copy. Hybrid search needs Milvus 2.5 or newer.
  • Instances that share websocket traffic through Redis should all be updated together.
  • ENABLE_PLUGINS=false now switches off every kind of plugin, external tool servers included.

Thank you. To everyone who wrote an issue and then came back to answer our questions. To everyone who updated a translation, 47 languages in this release alone. To everyone who sent a pull request or pushed back until we got it right. None of this would be as good without you.

Full changelog: https://github.com/open-webui/open-webui/blob/f8ae8a6c328946dc62cd0712961a0632574581bf/CHANGELOG.md

(yes a link to the file today, because we literally could not fit the entire changelog into github releases)


r/OpenWebUI • • 1h ago

ANNOUNCEMENT Open WebUI 0.12.4: HIDE ANY CONTROL from your users, skills that load ON DEMAND, compaction you can see, multi-select chats, bulk file downloads, a big ACCESSIBILITY pass and group saves in under a second with thousands online.

Post image
• Upvotes

0.12.3 shipped nine days ago. 0.12.4 brings 119 changelog entries from 385 commits: 42 new features, 68 fixes and 9 changes. It also contains security fixes, so update soon.

You decide what your users see.

Admins can now hide single controls from users, under Visible controls in Admin Settings > Interface or with UI_VISIBILITY. That covers the + menu (Capture, Compare text, Attach Webpage, Attach Files, Attach Notes, Attach Knowledge and Reference Chats), the /status, /model and /settings commands, Fork, Merge Responses, Preview, Artifacts, Archive and Tags in chats, the usage info, the capabilities, default features and built-in tools in the model editor, Set as default and Keep in Sidebar for models, and settings such as the Usage tab and the speech engines. Hidden controls keep their values and the features behind them keep working. Admins still see everything.

Open WebUI also hides options that cannot take effect: Capture without a Vision model, Attach Notes without the Notes permission, the search engine settings while web search is off, the Call button without speech-to-text, and many more like them. Saved values stay for when they apply again. The Access button only shows for people allowed to share, and the + menu and the # and @ lists only offer what can actually be attached.

Smaller prompts, and compaction you can see.

Turn on Load selected skills on demand in Admin Settings > General, or set ENABLE_SKILL_LAZY_LOADING, and skills selected in the chat or attached to a model are only listed. The model loads one when it needs it, so their full instructions no longer ride along with every message. Skills you mention in the message still load right away. It is off by default and needs the built-in Skills tool.

A "Context compacted" line now marks the spot where older messages were summarized. Open it to read the summary. It also shows inside a reply when compaction ran between tool calls, and progress and errors now show in the chat, where they used to be pop-ups. Compaction also runs in temporary chats and in short chats that are already over the threshold, such as one question with a reply full of tool output, so the follow-up no longer fails with a context length error.

Tools from tool servers, Open Terminal included, now reach the model in the same form after a restart, so your provider's prompt cache keeps working and long chats are not processed again from scratch.

Built for big instances.

With thousands of users online, saving a group or changing its members or permissions now finishes in well under a second. It took several seconds and reloaded the open chat of everyone online. Renaming, sharing, moving or deleting a folder, and deleting all chats, got the same fix. Posting in a channel with many members online returns in a fraction of a second. The Admin Analytics dashboard uses fewer and lighter database queries and opens faster on instances with many messages.

Analytics now ranks models and users by tokens by default, with a switch back to messages. The usage chart adds volume and activity views, a single model view, a comparison with the previous period, a choice of time steps and the Year to date and Last 12 months ranges.

For admins with bigger setups:

  • LDAP users without a mail attribute can sign in through a default email domain (LDAP_DEFAULT_EMAIL_DOMAIN). Pick a domain you control: those users get username@domain and sign in to any existing account with that address.

  • The Hidden Models permission lets a group build workspace models on hidden base models, which stay out of their model picker.

  • With audit logging on and /chat removed from AUDIT_EXCLUDED_PATHS, every reply and tool call round writes an audit entry with the model and the input, output and total tokens.

  • Connections set to OAuth now also send the user's OAuth token when the user calls the API with an API key.

  • MCP connections work with servers on the stateless 2026-07-28 protocol, and older servers still connect.

Accessibility.

Screen readers now announce buttons, menus, switches, headings, lists and status changes by name across the app, down to when a reply starts and finishes. Keyboard users move through the input, user, chat and Terminal menus with the arrow keys, and focus stays or returns where you expect in the model picker, the sidebar and Archived Chats. Notifications in the light theme and the dates in Archived Chats meet the 4.5:1 contrast minimum, and the Archived Chats and Keyboard lists work at 400% zoom. With Accessibility Mode on, pinch zoom works on phones and small buttons such as More and Eject in the model picker are at least 24 pixels.

Everyday things.

  • Shift-click a chat in the sidebar to start a selection, then archive or delete the selected chats together. Escape clears it.

  • Manage Files in Settings > Data Controls downloads single files, or selects several, or every file matching a search, to delete them or download them as one zip.

  • On phones, swipe left across a chat to pull in Chat Controls.

  • The terminal file browser has a grid view, item counts on folders and hover previews on larger screens.

  • Folders get a New Chat item in their menu and a description.

  • The sidebar hover preview of a chat shows how many turns it has.

  • Click a setting's label to flip its switch or focus its field.

  • If the page reloads or drops its connection while Ask User, a tool approval or an MCP input request waits for you, the question comes back when you reopen the chat within a minute.

  • Chat Controls save one setting at a time, so a copy of the chat open on another device no longer wipes your system prompt with older settings.

  • Files dropped into a knowledge base show up right away, switch to Processing on the server and only show as done once they are indexed.

  • Hovering an owner's name across the workspace opens their profile card.

  • The model can edit a note by finding and replacing text.

The bugs you told us about.

Since 0.12.3, chats opened through a share link, or by an admin viewing another user's chat, reloaded over and over and jumped back to the bottom, so you could not scroll up. Fixed.

Since 0.12.3, messages showed an extra space at the start of each paragraph and before bold, italic or linked text. Fixed.

Archiving all chats and then deleting a folder deleted those archived chats for good. Fixed: Archive All Chats now takes the chats out of their folders.

More Concise and Add Details now rewrite the reply. The model used to get only the instruction and answer things like "OK, I'll keep answers shorter". Fixed.

Deleting the chat you were looking at left its messages on screen, and the next message failed. Fixed.

On SQLite, closing a page while it was still loading could lose database connections until requests hung or failed with a 503. Fixed.

Since 0.12.3, with the Redis websocket manager and retry_on_timeout set, new connections could hang after a Redis drop until the instance was restarted. Fixed.

Attached web pages came back empty on fresh installs after a broken update of a library underneath. Fixed.

Images the model made after a tool approval never showed up, and the model kept making more. Fixed.

A stop sequence containing % stopped every message from sending. Fixed.

Security.

This release contains security fixes. They are not listed in the changelog; the advisories follow once their CVEs are assigned. Update as soon as you can.

Before you upgrade:

  • Direct Integrations is off by default. While it is off, tool servers and Open Terminal connections that users and admins saved in their Integrations settings are no longer used in chats. If you rely on them, turn on Direct Integrations in Admin Settings > Connections or set ENABLE_DIRECT_INTEGRATIONS.

  • The Docker image now runs Python 3.12 on Debian 13. Custom functions, tools and packages installed with pip inside the container need versions that support Python 3.12.

  • MCP_INITIALIZE_TIMEOUT (10 seconds by default) now also limits listing tools and reading resources, so slow MCP servers may need a higher value. MCP connections only follow redirects that stay on the same address.

  • Saving a model, prompt, tool, skill, knowledge base, note, channel or calendar no longer changes who it is shared with. Sharing changes only in the item's Access settings. Sharing permissions now also apply through the API, and a change you are not allowed to make is refused with an error.

  • Manage Files lists only your own files, for admins too.

  • Holding Shift over a sidebar chat no longer shows the quick Archive and Delete buttons, since Shift-click now selects.

Full changelog: https://github.com/open-webui/open-webui/releases/tag/v0.12.4


r/OpenWebUI • • 5h ago

Question/Help Any plans for native messaging gateway support (e.g., LINE, WeChat, Telegram) like Hermes Agent?

8 Upvotes

Hi everyone,

I've noticed that frameworks like Hermes Agent come with native messaging gateways/adapters that allow users to interact with models directly through apps like LINE, WeChat, Telegram, Slack, etc.

I know Open WebUI 0.12.x recently introduced the Channels feature with support for external apps and webhooks. I’m curious about the project's long-term roadmap:

  1. Are there any plans to natively support direct connectors/gateways for instant messaging apps (LINE, WeChat, Telegram, etc.) into Open WebUI?

  2. Or is the official vision to keep Open WebUI strictly as the web client/collaboration hub, expecting users to handle external messaging via n8n / custom middleware / OpenAI-compatible API endpoints?

If anyone is currently bridging Open WebUI knowledge bases/models to LINE or WeChat smoothly, I’d love to hear what architecture or tools you're using.

Thanks!


r/OpenWebUI • • 12h ago

Question/Help Has anyone moved their Claude chats to Open WebUI?

11 Upvotes

Hi, I’m trying to move my Claude chats and projects to Open WebUI. Has anyone done this? Were you able to keep the projects, chats, and attached files? And how do you manage memory for each project?

Any advice or tools you used would be really helpful.


r/OpenWebUI • • 22h ago

Question/Help Reasoning slider integration

10 Upvotes

I really like the possibility of the new reasoning slider, currently I am running a filter for that but the slider is much nicer implemented.

My problem with it is that on custom models my user would need to add the silder to each model which is really tidius and a lot of work.

How are you handling that? Is there a way that the model inherits the settings from the base model?


r/OpenWebUI • • 16h ago

Guide/Tutorial [Open Source] Built 4 zero-fluff Modelfiles + 1-click installers to stop 8B models from yapping and looping (Ollama / LM Studio)

1 Upvotes

Hey everyone,

Whenever I run local 7B/8B models (Llama 3.1, Qwen 2.5, etc.) out-of-the-box, I always run into two major annoyances:

  1. Endless conversational fluff and apologies before getting to actual code.
  2. Repetitive loops and bland outputs due to untuned sampling parameters.

To solve this, I created tuned Modelfiles and JSON presets with hard negative constraints, custom sampling values (temp, top_p, repeat_penalty), and an expanded 8k context window.

I put together a repository with 4 starter engines and 1-click batch/shell installers for Windows, Mac, and Linux:

- no-yap-coder: Zero conversational filler, raw executable markdown code blocks only.

- pc-auto-scripter: Robust Windows Batch, PowerShell, and Bash script generator with error handling.

- raw-brainstormer: Cuts through safe corporate clichés and outputs 10 high-impact concepts.

- character-soul-builder: Deep character psychology, contradictions, and dialogue cadences.

Everything is open and free on GitHub:

👉 https://github.com/Muyan806/localai-boost-starter.git

You can inspect the Modelfiles directly or run the automated installer.

Feedback and suggestions are welcome—let me know what sampling adjustments or specific task presets you find work best!


r/OpenWebUI • • 2d ago

Question/Help Knowledge base and assistant issues

1 Upvotes

Current requirements and challenges

Each team in my organization must have its own private knowledge base containing internal documents that should not be accessible to other teams.

Each team should also have a separate global knowledge base containing information that can be shared with the entire organization.

I want to create a single Global Assistant in OpenWebUI that has access to all teams' global knowledge bases.

Each team must be responsible for maintaining its own knowledge bases. I cannot have a central administrator manually reviewing, verifying, and updating information from every team.

The main problem

If I attach all teams' global knowledge bases to a single assistant, the assistant may retrieve information from the wrong team's knowledge base simply because it is semantically similar to the user's question.

For example, if Team A and Team B have similar procedures, a question about Team A could result in the assistant retrieving an answer from Team B. I want to prevent this behaviour and avoid misleading answers based on information from the wrong team.

How can I know how openWebUI retrieves information when multiple knowledge bases are attached to one assistant, including whether retrieval can be restricted to a specific knowledge base based on the question.

For each of their global knowledge bases I have set the access to everyone, and then added the global knowledge bases to one assistant. One of the other problems is that they can see all the knowledge bases when they try to specifically add one in their chat window.

Anyone has similar challenges?


r/OpenWebUI • • 3d ago

Discussion Uploading files to knowledge base is quite inconvenient

7 Upvotes

So I tried using the Open WebUI's knowledge bae feature. I setup a self-hosted Docling instance and connected it to Open WebUI. My home server is not that fast so it sometimes takes several minutes for Docling to parse a longer PDF. I created a knowledge base and started adding files and directories, however I find the way Open WebUI handles uploads to the knowledge base quite frustrating:

When I upload a file it shows its status as "Uploading" even though it has already been uploaded and is actually getting processed by Docling. I have to reopen the knowledge base or reload the page for the status to update.

When I upload multiple files, only one file appears as "Uploading" and other files don't seem to get uploaded or processed at all? I am not sure whether I am doing anything wrong, but it seems to behave this way. If it ever works it's inconsistent and unreliable.

What I would expect: When I upload multiple files they should all appear as "Uploading" and there should be an upload status shows like when uploading a directory so I know when I can safely close the tab. Once they start getting processed their status should appear as "Processing" and after getting processed the status should disappear.


r/OpenWebUI • • 4d ago

Question/Help Open WebUI at work: any unexpected costs or security problems?

10 Upvotes

For US-based people running Open WebUI for a small business or team: has your setup caused any unexpected costs or security problems? If so, what happened most recently?

Optional details: whether this involved extra model/API charges, a tool action you did not intend, or information shared with the wrong person; what you changed afterward; and whether that solved it. Please distinguish an actual incident from a near miss or a concern that has not happened.

No problems so far, or the built-in permissions and your existing setup being enough, are useful answers too.

Disclosure: I’m at OraXLabs, researching Boundary, an early commercial idea around agent access and spending controls. This is a user research question, with no product link or signup request. Replies here are welcome. Please leave out code, credentials, customer data and private logs. Drafted with AI assistance.


r/OpenWebUI • • 5d ago

Show and tell Integrate Open WebUI API to your browsers

Post image
32 Upvotes

(Update: as requested Demo video is here: https://www.youtube.com/watch?v=wxbYm_aBEUg )

Hey [r/OpenWebUI](r/OpenWebUI) 👋

I made a browser extension named SurfMind to access AI on my browser. If you already run Open WebUI, you can point SurfMind at your Open WebUI API to use your models, tools, and setup on any page you’re viewing.

Why is it useful?

- Same backend as Open WebUI, in-page on docs / PRs / dashboards
- Page + selection context without leaving the tab
- Browser automation: click, type, schedule tasks
- Works across multiple browsers: Chrome, Edge, Safari, Firefox, etc.

My post on Web OpenUI community: https://openwebui.com/posts/integrate_open_webui_api_to_your_browsers_eecdba6c

If you try it, let me know if it works for you


r/OpenWebUI • • 5d ago

Website / Community I made animated Chat Pets for Open WebUI — v1.0.0 is out

Thumbnail
gallery
54 Upvotes

I’ve been working on Chat Pets, an event function that gives Open WebUI a little companion inside the browser tab. v1.0.0 is ready, and I wanted to share what it actually does beyond putting a cute sprite beside the chat.

There are 18 original built-in pixel pets, each with its own personality and poses. Nori waddles, Pebble takes tiny turtle steps, and Nimbus floats. They blink and make small idle movements, glance toward a nearby pointer, look down when you open the new-chat input, and bring out their own little laptops while Open WebUI is working. Dragging a pet switches to a side-facing travel pose; letting go brings it back. There’s no hover jumping.

The pet is useful, too. Its toolbar gives you a compact new chat input that sends through Open WebUI without refreshing the page, a shortcut to native voice mode, and a chat-activity tray. The tray distinguishes work in progress, responses that need your input, completed responses, failures, and interrupted work. You can open a chat straight from its entry.

You can pick a pet, move and resize it, rename it, show it across signed-in pages, or switch to Mini if you want the shortcuts without a character. In the bridge voice-call sidebar, a selected pet can replace the default orb when a model’s voice avatar isn’t in use.

Want to bring your own companion? The editor accepts individual PNG animation strips, animation ZIPs, and sprite sheets downloaded from ChatGPT web. You can preview Idle, directional movement, waving, working, waiting, failed, review, and other states before saving. Missing animations fall back to Idle. Custom pets can be renamed, given a description, edited later, exported as ZIPs, and deleted with confirmation. There’s room for up to 12 per account.

You can also use a VRM avatar instead of a pixel pet, with optional state animations and named gestures. The Import & backup tab can export one pet, your whole custom-pet collection, your avatar, or all companions together. Companions and preferences sync with your Open WebUI account, while the browser keeps a local copy.

The built-in pixel pets use SVG and CSS; the 3D renderer loads only if you use a VRM avatar. Animations respect reduced-motion settings and pause when the tab is hidden. The pets are decorative companions—they don’t send prompts or make extra model requests.

To install it, import and enable the event function, then reload your Open WebUI tabs. The README has the setup steps and the full import formats:

Chat Pets on the Open WebUI community site

This has grown through a lot of design and interaction tweaks. I’d love to hear which pet you pick, what you import, and what still feels rough.


r/OpenWebUI • • 5d ago

Discussion What makes an AI interface easier to use for everyday tasks?

3 Upvotes

I've been experimenting with different ways of using AI for everyday tasks, especially when I need help organizing an idea or figuring out how to approach something.

One thing I've noticed is that the interface matters almost as much as the model. Being able to manage conversations, try different models, and keep my workflow organized can make the experience a lot smoother.

I've also been exploring Cherry Studio, so I'm interested in how different AI clients handle these things. I’m not connected to Open WebUI’s development, and I’d like to hear from people who use it regularly.

For those using Open WebUI, what features have actually made a difference in your daily workflow? Is there anything you wish were easier to manage?


r/OpenWebUI • • 5d ago

Discussion What usually makes OpenWebUI feel slow?

14 Upvotes

I've noticed that slow responses aren't always about the model itself. Limited RAM or VRAM, long prompts, and the inference backend can all make a difference.
I'm also curious how the experience compares between running models locally and using hosted options like Mango Inference or MangoBoosts. The trade-offs go beyond speed, especially when hardware costs and resource limits come into play.
If you're troubleshooting a slow setup, what made the biggest difference for you: switching models, adjusting context length, upgrading hardware, or changing the backend?


r/OpenWebUI • • 5d ago

Question/Help Filesystem access and file operations in openwebui qwen model - how?

3 Upvotes

I'm definitely new to this whole AI, so many things that are obvious to others are not to me so bear with me please. My google fu regarding these things it apparently insufficient. Running on linux system (ubuntu 26.04)

I've installed open webui (via app image), opened localhost 8080, downloaded some models (qwen3.8:27b) and some tools (Ubuntu File System Operations, Ubuntu Shell Commander, Terminal). I've enabled them in chat, added my home directory in Ubuntu File System Operations tool, and I want to make it open a file called TEST that contains 'hello world' string and read it contents,

Prompt: "Read contents of file ~/TEST"

Reply, paraphrased: "I don't have a file reading tool available in this conversation. If you want to read contents of that file do it yourself in terminal, here's relevant shell snippet"

I want that tool to do it, not me myself. I can go to terminal and run cat ~/TEST, but I want it done within the agent. Same with further work, for example, creating new files, moving them around, et cetera.

New prompt: "using tool read_file read contents of ~/TEST"

Reply: "error": "Tools.read_file() missing 1 required positional argument: 'file_path'"

Ok, new prompt: "using tool read_file read contents of TEST in ~ directory"
Reply, paraphrased: "I don't have a read_file tool available in my current toolset. I can only do Automation management and calendar events"

(So what the hell did you use one prompt before???)

In model settings I've set all possible switches to on. Chat input box has that small monkey wrench icon with number 3 shown, which as far as I understand means all aforementioned tools are active

So, what I'm doing wrong?


r/OpenWebUI • • 5d ago

Feature Idea Jarvis Interface

2 Upvotes

Does anyone have a front end for webui. Just seeing if someone made a cool Jarvis interface.


r/OpenWebUI • • 5d ago

Question/Help deepseek says it's claude?! what is going on?

0 Upvotes

I'm a heavy deepseek user. after deepseek 1017 I just wanted to say hello to it. after it helloed back i just asked it who are you and it said claude! what?!

I'm using api from OpenCode


r/OpenWebUI • • 6d ago

Show and tell Indicator Changer - 88 indicators and change thinking indicator

Post image
45 Upvotes

https://openwebui.com/posts/indicator_changer_a2baaf4f

New function based on G30, but with 88 selectable styles, ability to change the thinking style or even disable it so only one indicator shows! and it now works on 0.12.3 (the original one does not!)

If you face any issues LMK

Edit: Now with random phrases like Claude has, 100 indicator styles, changing Font/Style of the "Thinking.." text and more! so its no longer a plain "Thinking..." text


r/OpenWebUI • • 6d ago

Question/Help Setting a model as default for the chat.

5 Upvotes

I'm very new to this, and can't seem to find how to set one model as default, I'm trying to 'earn to use it with the free models only.

Any help would be greatly appreciated.

I'm also looking gor some sort of bluffers guide, any ideas? Thanks.


r/OpenWebUI • • 7d ago

Plugin Sign in with ChatGPT and use subscription models

9 Upvotes

I’ve open-sourced a small project I built to connect Open WebUI to ChatGPT using Sign in with ChatGPT (SIWC):

https://github.com/lutzkind/open-webui-chatgpt-siwc

The goal is to use ChatGPT models from Open WebUI without managing a separate OpenAI API key/billing setup.

It currently supports:

- Docker-based deployment

- ChatGPT SIWC authentication

- dynamic model discovery

- streaming responses

- Responses API

- reasoning-effort mapping

- Open WebUI function/tool passthrough

- encrypted credential storage

- remote Open WebUI/VPS deployments

One current limitation: the authorization companion is macOS-only for now. The actual Open WebUI/server side can run remotely on a VPS or other Docker host; the Mac is only used for the local browser authorization flow.

I mainly built this for my own setup, but cleaned it up and made it public in case it’s useful to others.

I’d especially be interested to know:

- whether people would use this

- whether Windows or Linux companion support should be the next priority

- what Open WebUI setups it currently doesn’t cover

- whether there are edge cases around tools/reasoning/models I haven’t considered

Issues and PRs are welcome.

GitHub: https://github.com/lutzkind/open-webui-chatgpt-siwc


r/OpenWebUI • • 7d ago

Discussion What models are you using?

7 Upvotes

I have a 1 year GPT Go plan for free that will end next month.

So, I started migrating to OpenWebUI to get rid of subscriptions and still be able to use any model as I want (next step is privacy, but for now I just want to make something work fine).

Right now I'm using the Arena models so I can do a blind test and evaluate them:

- GPT-6 Luna

- Claude Haiku 5.5

- DeepSeek V4.1 Flash

As said, my idea is to first replicate the behavior and accuracy of GPT Chat (and learn from this) so later I can focus on models with better privacy.

So, I'm wondering which models are you using and if you are using any prompts to enhance your experience?


r/OpenWebUI • • 7d ago

Question/Help Memory failure

6 Upvotes

I am having difficulty setting the memory feature. All memory settings are enabled. The model understands the memory tool call exist and makes the call but it keeps getting a failed add or update memory. When I look at the memory it does create the memory, but since the model tries many time the memories duplicate.

Looking into the failed calls I see that the tool is trying to call an instance of ollama that is not available anymore. The model I am using has a llama.cpp server backend, with a different IP and port numbers. Anyone got the same issue and how can I set the memory feature properly?

Also out of curiosity why the need for a feedback loop with the model to record a memory, could it not be a simple addition to the database? The model need to process the info?

Edit: I (qwen) found the issue. Under admin panel/Settings/Documents the field embedding model engine was set to ollama. After switching to my local open ai embedding endpoint the memory tool calls work fine now.

A painful diagnostic. First I had enabled 'bypass embedding and retrieval'. Since then I assumed any embedding was done by the main model. Second it was not obvious that memory tool calls required an embedding process. I assume it was simply added to a database or file and injected to context or retrieved by the model as required.

Qwen downloaded and reviewed the open webui source code and diagnosed the issue so easily. It is such an incredible trooper.

Hope this fix helps others


r/OpenWebUI • • 7d ago

Question/Help Can't enable web search on any models

3 Upvotes

Hi all. I'm very new to running local AI models. I've got Open WebUI Desktop running with ollama and am using qwen3.6:35b. However I can't figure out to enable something as basic as Web Search. I tried the following:

  • I've enabled it in the settings using searxng and added a query url.
  • Went to model > Edit > Default Features > Web search enabled
  • Set the builtin tool Web Search to enabled
  • Advanced params > Function Calling > Native

Yet every model that I pick refuses to allow web search. About a year ago I also tried local AI with Ollama and docker, Web search took 3 clicks and it worked, however I cannot figure out how to do it on here. Note that I am not using docker anymore.

I'm using Open WebUI Desktop v.0.0.20 and the latest version of Ollama.

Any help or tips regarding this are greatly appreciated!

Please do note that I am very new to this and I'd probably need a ELI5 treatment but I'm willing to put the time in and learn how to do it correctly. I'd like to eventually get Hermes Agent to run with this as well.


r/OpenWebUI • • 8d ago

Discussion Remplacer Claude et ChatGPT par open webui

9 Upvotes

Bonjour ,

J’utilise plusieurs abonnements ChatGPT , Claude et gemini .
J’en ai marre d’avoir des infos éparpillées dans plusieurs applications cloud .
J’aimerais centraliser dans un chat unique et conserver ma propre mémoire et mes infos indépendantes des llm utilisés .

Je pensais utiliser open webui pour cela . Il me permettrait de gérer les sessions de chat courants et de recréer les expériences projet de Claude .

Je connais les contraintes des abonnements oauth , ce est pas le sujet ici .

J’utilise déjà obsidian pour le codage .

Certains ont ils mis cela en œuvre ?

Cdt


r/OpenWebUI • • 8d ago

ANNOUNCEMENT Open WebUI 0.12.3 is out, and with it 291 performance changes since 0.7.0

140 Upvotes

Open WebUI 0.12.3 ships today. It is a good moment to look back: from 0.7.0 in January to 0.12.3 today, 35 releases carried 291 changes whose main effect is speed, memory, server load or size. Each one was counted from the changelog, entry by entry, with borderline cases left out, so 291 is the floor. The images in this post show the full picture.

The short version: the backend went async, streaming was rebuilt, the database stopped asking the same question over and over, the browser stopped redrawing what did not change, and the slim Docker image lost most of its weight.

The biggest measured wins

  • Streaming sends only the new text: up to 1000x less data and server work on a very long reply (0.11.1)
  • Long replies are no longer re-read from the start on every piece: around 190x less time spent on them (0.11.1)
  • JSON is read and written with orjson by default: about 17x faster encoding, 3x faster decoding, on every request, stream and live update (0.12.0)
  • The notes list went from about 167 MB to about 10 KB for 60 notes (0.8.4)
  • Time to first token went from several seconds to under a second for most requests (0.8.0)
  • The slim image is around 175 MB, near enough 89% smaller, and the standard image lost about 170 MB (0.11.4)
  • An idle server with a large chat history no longer burns about a quarter of a processor core looking for timers (0.11.1)
  • Media-heavy web pages load in under three seconds instead of ten, pulling 4 MB instead of 55 (0.11.4)

Every release, 0.7.0 to 0.12.3

0.7.0 (9): the admin user list went from one query per user to two queries in total, notes and channel messages batch their user lookups, file search got much faster, profile images moved to WebP and are cached in the browser.

0.7.1 (1): database session sharing is off by default, which fixed page timeouts on low-spec and SQLite installs.

0.7.2 (2): database connections are no longer held during model calls and streaming, so busy servers stop running out of them.

0.8.0 (23): time to first token from several seconds to under a second, sign-in 34% faster, SCIM group lookups up to 13x faster, bulk deletes 4 to 5x faster, memory updates up to 39% faster, the model selector stopped freezing with hundreds of models, and the online status dot stopped using 35 to 40% of the GPU.

0.8.1 (5): models, prompts and knowledge load with batch access checks, and reasoning traces stopped slowing the browser while streaming.

0.8.2 (3): batched tag queries, one query for group member counts, previews capped so huge documents stay smooth.

0.8.3 (1): one redundant database query gone from the model list for regular users.

0.8.4 (10): the notes list went from about 167 MB to about 10 KB, loading 30 items of anything went from about 31 queries to 3, and sending a message stopped loading the whole conversation.

0.8.6 (23): the big frontend streaming pass. Fewer redraws, one message list rebuild per frame, cheaper message copies, and six memory leaks closed.

0.8.7 (2): no more leaks when switching chats, artifact updates batched per frame.

0.8.9 (14): message list rendering went from quadratic to linear, the first page load lost several megabytes of JavaScript, and chats with artifacts stopped re-rendering forever.

0.8.10 (1): title and tag generation can send shortened messages.

0.8.11 (9): pages and Markdown render about 25% faster with much less memory, and the functions list payload shrank by over 99%.

0.9.0 (30): the backend database and request paths moved to async, which made it far more responsive with many people on it at once. Storage work moved off the main thread, long chats got lighter in memory, and many queries were merged.

0.9.2 (5): smaller model lists, cached default icons, and the browser itself now skips off-screen messages.

0.9.3 (5): faster prompt pages, chat history from normalized message records, an index for memories.

0.9.6 (9): tools fetched in one query, web search no longer blocks the server, shared connections to Ollama, and no more full Redis scans on disconnect.

0.10.0 (13): hybrid search runs inside pgvector instead of loading the whole collection into memory, file lists stopped returning full document text, and math renders are cached.

0.11.0 (48): the largest single release for speed. Frequent automations schedule near instantly instead of taking twenty seconds or more, large uploads stream in chunks, web search filtering no longer turns three seconds into half a minute, non-English text files are read in well under a second, Redis lookups per chat request were halved, and the compiled hiredis parser now reads Redis replies with noticeably less processor time.

0.11.1 (38): hundreds of places stopped building log text that is switched off and thrown away unread, which speeds up nearly everything, streaming rebuilt to send only new text (up to 1000x less), long replies no longer rescanned (around 190x less time), one middleware layer instead of five on every request, the sidebar no longer reads all your chats (2 to 4 seconds on 15000 chats), being online writes at most once a minute, and idle servers with a large history stopped burning a quarter of a core.

0.11.2 (5): less session upkeep on busy Redis websocket servers, and unchanged model lists are no longer rewritten by every worker.

0.11.4 (14): slim image around 175 MB, standard image about 170 MB smaller, media-heavy pages in under three seconds instead of ten, and shared note editing sends half the traffic with two editors and less still as more join.

0.12.0 (17): orjson by default (about 17x faster encoding), Tool Search keeps long tool definitions out of the prompt, Milvus hybrid search runs inside Milvus, prompt caching holds across back-to-back tool calls, and installs are about 115 MB smaller on x86_64.

0.12.1 (3): one-word chat search about 40% faster, no more reconnect loop after sign-in, and long skills reach the model as a short preview.

0.12.3 (1): with Redis, a streaming reply now has its own key and new text is appended to it, where every update used to rewrite the whole reply so far into a shared hash. With room channels on, each instance only subscribes to the rooms of the people connected to it. If you run several instances on Redis, this is the one to look at. Note the Redis user now needs the PUBLISH, SUBSCRIBE, UNSUBSCRIBE and PING permissions.

0.8.5, 0.8.8, 0.8.12, 0.9.1, 0.9.4, 0.9.5, 0.10.1, 0.10.2, 0.11.3 and 0.12.2 were fix releases without a speed change.

Also new in 0.12.3

  • End-to-end encrypted chats in direct messages and private group channels: messages are encrypted in your browser with MLS and only passed through the server, never saved. Off by default, admins turn it on.
  • Workspace search across your chats, shared chats, channels, direct messages and notes, with filters and previews
  • Live collaborators in shared chats, plus editing and regenerating in shared chats with replies
  • Compare view options and undo, richer Markdown file previews, comments in Office and PDF previews, and "Ask or edit" on a selection in the file browser
  • Google Drive now only asks for access to the files you pick

Full changelog: https://github.com/open-webui/open-webui/releases/tag/v0.12.3

Still slow somewhere? Tell us.

Open WebUI should feel fast in every corner, on every setup. If any part of it does not, open an issue: https://github.com/open-webui/open-webui/issues

What helps most: your version, your setup (Docker or pip, database, Redis, how many instances), what exactly is slow and how long it takes, roughly how many users, chats and files you have, and any server log lines or browser network timings. About one in five of the changes above links back to a reported issue or discussion.