Try our Chrome extension

Chrome store icon Chrome Webstore

Easily add the current web-page from your browser directly into your changedetection.io tool, more great features coming soon!

Changedetection.io needs your support!

You can help us by supporting changedetection.io on these platforms;

The more popular changedetection.io is, the more time we can dedicate to adding amazing features!

Many thanks :)

changedetection.io team

Not yet seconds ago.
            False
        
Not yet seconds ago
Current error-ing screenshot from most recent request
✨ AI Change Summary

Generating change summaryโ€ฆ

You are a concise web change detector. Summarize ONLY what actually changed on the page in clear, plain English. Structure your reply using this exact format (omit sections with nothing to report): Added: - ... Changed: - ... Removed: - ... Focus only on meaningful changes. Ignore layout shifts, whitespace, timestamps, ads, cookies, or minor styling. Be direct and brief. Use bullet points.

tag:github.com,2008:https://github.com/open-webui/open-webui/releases

Release notes from open-webui

2026-08-31T14:55:42Z tag:github.com,2008:Repository/701547123/v0.11.3 2026-08-31T14:55:53Z
2026-09-21T19:25:06Z tag:github.com,2008:Repository/701547123/v0.11.4 2026-09-21T19:25:21Z

v0.11.4

<h3>Added</h3> <ul> <li>๐Ÿ“‰ <strong>Far smaller slim image.</strong> A slim build now comes down at around 175 MB, near enough 89% smaller than the last release, the local models, the packages around them and the tools that installed them all gone from it; what that changes about the way an instance behaves is set out under Changed below and in the documentation. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4">Commit</a></li> <li>๐Ÿ“ฆ <strong>Smaller standard image.</strong> The image no longer carries a second copy of Python, two sets of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 170 MB off a standard build. <a href="https://github.com/open-webui/open-webui/pull/29731" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29731/hovercard">#29731</a>, <a href="https://github.com/open-webui/open-webui/pull/29723" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29723/hovercard">#29723</a>, <a href="https://github.com/open-webui/open-webui/pull/29725" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29725/hovercard">#29725</a>, <a href="https://github.com/open-webui/open-webui/pull/29726" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29726/hovercard">#29726</a>, <a href="https://github.com/open-webui/open-webui/pull/29728" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29728/hovercard">#29728</a>, <a href="https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51">Commit</a></li> <li>๐Ÿง‘โ€๐Ÿ’ป <strong>Skills from a terminal.</strong> Skills a connected terminal server offers now sit beside workspace skills everywhere skills are picked โ€” the "$" and "/" menus, the integrations menu and the skills panel, each marked Terminal โ€” and are used the same way: picking one puts its instructions, its folder and the files it ships with in front of the model, and a model that was only told a skill exists can open it itself. They follow whichever terminal is selected and clear when that changes. <a href="https://github.com/open-webui/open-webui/commit/e69236bccb1e12d14045b09b76ebac0490014851">Commit</a></li> <li>๐Ÿ“” <strong>Terminal instructions file.</strong> A model working with a terminal is now handed the AGENTS.md sitting in that terminal's home directory, read afresh at the start of every turn, so the instructions you keep beside your work reach the model without being pasted in. <a href="https://github.com/open-webui/open-webui/commit/946be432375057dc18dbcc7c3513feb322a83a4b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f6922a4c4293449805938c80fbe54174994a1fc6">Commit</a></li> <li>๐Ÿ“‡ <strong>Automatic skill discovery.</strong> Every skill you can reach is now listed to the model by name and description, and the full text of one is loaded only when it decides to use it; before, a skill you had not selected in the message box was invisible to it, and this applies to models with built-in tools on. <a href="https://github.com/open-webui/open-webui/commit/e69236bccb1e12d14045b09b76ebac0490014851">Commit</a></li> <li>๐ŸŒ„ <strong>Model background images.</strong> A workspace model can now carry a background image, uploaded in its editor and drawn behind the chat whenever that model is selected, sitting below a folder's own background and above your personal one, and it travels with the model through export and import. <a href="https://github.com/open-webui/open-webui/commit/66addbd6b47bfb25cf9aa37ec70d24db5b28b6b6">Commit</a></li> <li>๐Ÿ““ <strong>Skill creation from a chat.</strong> Typing "/skills:create" in a chat that already has content, with a terminal selected, turns the workflow you just went through into a reusable skill written to ".agents/skills" under that terminal's root working directory rather than whatever folder the shell happens to sit in, and authored to Open WebUI's skill standards. <a href="https://github.com/open-webui/open-webui/commit/113c56fc8c1986359556107a20e206159ca32f59">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/924a4a10fbd0be508a69faf66bf08ac9761bc24d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/58078ab3045cc7aee409d9215f68adf0e02c9165">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d25f6c7135e0aee93dc2c840ce320d97617a6e47">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a096961a31499be23890b98a040ecf2917405568">Commit</a></li> <li>๐Ÿ–ฅ๏ธ <strong>Terminal tabs per command.</strong> The terminal pane now carries a tab for each command a model is running alongside your own shell, so you can watch them as they go, move between them and take the shell yourself, each tab opening with the command that produced it. Opening the pane puts you in a tab, starting your shell where nothing else is running, and closing the last tab folds the pane away again. <a href="https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/675b9839f17df94f866c871cbdb9881323a18a8a">Commit</a></li> <li>๐Ÿ“‚ <strong>Folder uploads to terminals.</strong> The file browser beside a terminal takes a folder now, dropped onto it or picked from the Upload Folder entry in its menus, and rebuilds what is inside it as it goes, subfolders and all, where before a drop uploaded only the files sitting loose at the top. <a href="https://github.com/open-webui/open-webui/commit/f80ef8bd001d7ef650fb278d6fbd05bea4afad0f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4cc0d48b4d83503199bcc5f2322881722971a499">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/674760bfc1122e0a19fe299e05a86d1cbb528e6f">Commit</a></li> <li>โš–๏ธ <strong>Side-by-side file comparison.</strong> Picking two files in the file browser lights up a Compare button that lays them side by side or one above the other, numbering the lines, marking what was added and removed down to the part of the line that changed, counting both, and letting you swap which is which or leave whitespace out of it, a choice it remembers; a terminal too old to offer the comparison says so rather than failing quietly. <a href="https://github.com/open-webui/open-webui/commit/8556033c6b64fa53e44152ebab1f889a578529af">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb">Commit</a></li> <li>๐ŸŒ <strong>Suggested prompts in your language.</strong> A fresh install now offers its suggested starter prompts in the language the interface is set to, rather than the same four in English for everyone, and the model defaults panel carries a way back to those defaults once its own suggestions have been edited. <a href="https://github.com/open-webui/open-webui/commit/30881dbcc966206cc15fb0b2276b41d88f7c0f09">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9fba2843b16a111b035949f5865e29ec6cf5ac9c">Commit</a></li> <li>๐Ÿ“ <strong>Exa result length cap.</strong> Web search through Exa can be held to a number of characters per result, set beside its key in the admin web search settings or as "EXA_MAX_CONTENT_LENGTH". <a href="https://github.com/open-webui/open-webui/commit/12b14124b9376eccf2ba7cf3dba92bc145493703">Commit</a></li> <li>๐Ÿ‡ช๐Ÿ‡บ <strong>European web search option.</strong> Staan can now be picked as the web search provider, giving deployments that need search inside the EU an option they do not have to host themselves, configured from the admin web search settings or through "STAAN_API_KEY", "STAAN_MARKET" and "STAAN_MAX_SNIPPETS". <a href="https://github.com/open-webui/open-webui/pull/30138" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30138/hovercard">#30138</a>, <a href="https://github.com/open-webui/open-webui/discussions/26006">#26006</a>, <a href="https://github.com/open-webui/open-webui/pull/30303" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30303/hovercard">#30303</a>, <a href="https://github.com/open-webui/open-webui/issues/30301" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30301/hovercard">#30301</a></li> <li>๐Ÿ—ฃ๏ธ <strong>Per-language names and descriptions.</strong> A model, tool, skill, function, banner or arena entry can now hold its name, description, starter prompts and valve labels once per language, written in a searchable table in its own editor or brought in as a JSON file, which is refused where a translation drops one of the placeholders the original fills in. The interface shows the wording for the language it is set to, and falls back to the plain text where that language has none. <a href="https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2">Commit</a></li> <li>โœ๏ธ <strong>Interface text you can reword.</strong> An administrator can now replace the interface's own wording language by language from a panel in the admin settings, with a replacement refused where it drops one of the placeholders the original fills in. <a href="https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4">Commit</a></li> <li>๐Ÿ”“ <strong>Turning off the sign-in form.</strong> The box asking for an email address and a password can now be taken off the sign-in page from the authentication settings, where until now it could only be set before the server started, leaving single sign-on or a directory to sign people in. <a href="https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f">Commit</a></li> <li>๐Ÿท๏ธ <strong>Custom file metadata.</strong> Metadata attached to an uploaded file now travels with the pieces that file is split into and arrives with the retrieved sources, the oversized and internal fields left out, and an operator can name in "RAG_SOURCE_METADATA_KEYS" which of those fields the model itself gets to see alongside the text. <a href="https://github.com/open-webui/open-webui/pull/29499" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29499/hovercard">#29499</a>, <a href="https://github.com/open-webui/open-webui/issues/29486">#29486</a>, <a href="https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/29502" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29502/hovercard">#29502</a>, <a href="https://github.com/open-webui/open-webui/pull/29696" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29696/hovercard">#29696</a></li> <li>๐Ÿ—‘๏ธ <strong>Quick delete shortcut.</strong> Holding Shift over a note in the list or grid, or over a row on the automations page, turns its trailing controls into a delete button, removing the entry in one click rather than the three the menu and its confirmation ask for. <a href="https://github.com/open-webui/open-webui/pull/29635" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29635/hovercard">#29635</a>, <a href="https://github.com/open-webui/open-webui/issues/29633" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29633/hovercard">#29633</a>, <a href="https://github.com/open-webui/open-webui/pull/29640" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29640/hovercard">#29640</a>, <a href="https://github.com/open-webui/open-webui/issues/29637" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29637/hovercard">#29637</a></li> <li>๐Ÿ”€ <strong>Diffs are drawn as diffs.</strong> A diff or patch block in a reply is now laid out as one, with the file and hunk headings, the old and new line numbers, and the added and removed lines picked out down to the part of the line that changed, and a button to switch to the plain text and back. <a href="https://github.com/open-webui/open-webui/commit/254e29b9af634145dde0450451a36f0dfbd8f421">Commit</a></li> <li>โœ’๏ธ <strong>A formatting switch for notes.</strong> A note you can edit carries a Formatting switch in its menu: turned off, Markdown you type or paste stays as the characters you wrote, a paste keeps its plain text, and a web address is left as text, while formatting already in the note is untouched. <a href="https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Admin model list filters.</strong> The models page in the admin settings can now be narrowed to the base models a connection offers or to the ones built in the workspace, alongside the filters for enabled, disabled, visible and hidden. <a href="https://github.com/open-webui/open-webui/commit/9e634c0c56e0a060717f1e24a11b082daf664036">Commit</a></li> <li>๐Ÿ” <strong>Settings search by name.</strong> The search box in settings now matches each setting's own name and description rather than a keyword list kept per page, in whichever language you are using and regardless of accents, it leaves out anything your permissions do not let you change, and opening a result no longer clears what you typed. <a href="https://github.com/open-webui/open-webui/commit/7cbaabe02fc3c7c040008e82cf85f590bd0c346a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9d98ffcddf792be8d567ea39370d39fcac649acd">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c82634b9d01adadbf9780ff84a0a8168fdc4fdea">Commit</a></li> <li>๐Ÿ†˜ <strong>A model for every chat.</strong> Opening a conversation whose model has since been retired no longer leaves it stranded with nothing selected; it falls back to your default model, then the configured default, then the first one available, and a chat that still has a live model keeps it. <a href="https://github.com/open-webui/open-webui/pull/29757" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29757/hovercard">#29757</a></li> <li>โšก <strong>Non-blocking search.</strong> Searching the text of chats and knowledge, and the grep a model runs over a knowledge base, now run beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. <a href="https://github.com/open-webui/open-webui/pull/29621" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29621/hovercard">#29621</a>, <a href="https://github.com/open-webui/open-webui/commit/d9c8de9c39fca7c4756e0f9bd599b09ebe435208">Commit</a></li> <li>โœด๏ธ <strong>Lighter shared note editing.</strong> Notes written by several people at once no longer echo every keystroke back to the server once per watcher; the traffic between editors falls by half with two of them and keeps falling as more join, so shared notes stay smooth as the room grows. <a href="https://github.com/open-webui/open-webui/pull/28185" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28185/hovercard">#28185</a></li> <li>๐Ÿ”ข <strong>Sorted knowledge listings.</strong> The "ls", "tree" and "find" commands a model runs over a knowledge base now sort by name and take "-t", "-S" and "-r" for newest first, largest first and reversed. <a href="https://github.com/open-webui/open-webui/pull/29840" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29840/hovercard">#29840</a></li> <li>๐Ÿชช <strong>Authentication type header.</strong> A request to an OpenAI or Ollama connection now carries "X-OpenWebUI-Auth-Type", saying whether the person behind it signed in through the browser or called with an API key; its name is set with "FORWARD_USER_INFO_HEADER_AUTH_TYPE" and "{{AUTH_TYPE}}" works in custom headers. <a href="https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b">Commit</a></li> <li>๐Ÿ’ก <strong>Follow-up ghost text.</strong> Once a reply has finished, the first of the follow-up questions it suggests now sits greyed inside the empty message box as well as under the reply: Tab writes it out, and typing anything of your own clears it away. <a href="https://github.com/open-webui/open-webui/commit/7aaa4a692e949724913834efc47c57572042703b">Commit</a></li> <li>๐Ÿชต <strong>Model refusal logging.</strong> A request turned away with "Model not found" now writes a warning naming the account, the model and why it was refused, while the message the caller sees stays as vague as before. <a href="https://github.com/open-webui/open-webui/commit/f5fcf4c89fb27ed39825875d573446fa84aa2a5b">Commit</a></li> <li>๐Ÿคฒ <strong>Cheaper chat requests behind Redis.</strong> Where several servers share their websocket traffic through Redis, a chat request no longer pulls the whole shared model list from Redis to ask about a couple of models; each worker keeps its own copy and refetches only when the list actually changed, so the cost stops growing with the number of models configured. <a href="https://github.com/open-webui/open-webui/pull/28176" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28176/hovercard">#28176</a>, <a href="https://github.com/open-webui/open-webui/issues/28167" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28167/hovercard">#28167</a></li> <li>๐Ÿ’ฝ <strong>Long conversations stream cheaper.</strong> Writing or reading a single message no longer loads, checks and rewrites the entire conversation to change a few hundred bytes, so streaming into a long chat stops getting more expensive as it grows, and the whole round trip a message event costs falls to a fraction on conversations of thousands of messages. <a href="https://github.com/open-webui/open-webui/pull/28184" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28184/hovercard">#28184</a>, <a href="https://github.com/open-webui/open-webui/issues/28169" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28169/hovercard">#28169</a></li> <li>๐Ÿงฑ <strong>In-place streaming appends.</strong> Streamed replies can be assembled with CPython's in-place string append, turned on with "ENABLE_CHAT_RESPONSE_STREAM_INPLACE_APPEND" and left off by default while it is rolled out gradually. <a href="https://github.com/open-webui/open-webui/commit/113c56fc8c1986359556107a20e206159ca32f59">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/924a4a10fbd0be508a69faf66bf08ac9761bc24d">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/30066" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30066/hovercard">#30066</a></li> <li>๐Ÿ“˜ <strong>Direct connection guidance.</strong> The connections and integrations pages in the personal settings now say plainly that a direct connection leans on your browser session to keep requests running, which suits testing and temporary use rather than everyday work. <a href="https://github.com/open-webui/open-webui/commit/5d66dd6ad291db17894953714c01fd4303093e7e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/15e2259a2ae1b7dec1f93a52078304dd3a79a14c">Commit</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Translation updates.</strong> Translations for Japanese, Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, Portuguese (Brazil), Arabic, Arabic (Bahrain), Azerbaijani, Bulgarian, Bengali, Tibetan, Bosnian, Catalan, Cebuano, Czech, Danish, Basque, Croatian, Dutch, Italian, Turkish, Simplified Chinese, Bosnian, Catalan, Danish, Estonian, Finnish, Galician, Croatian, Kabyle, Norwegian Bokmรฅl, Portuguese (Portugal), Romanian and Turkmen were enhanced and expanded.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section. Some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ”‘ <strong>Tokens stay out of logs.</strong> A failure part way through signing in with an identity provider no longer writes the credentials it was handed into the application log, recording the provider and the error it reported instead. <a href="https://github.com/open-webui/open-webui/pull/29709" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29709/hovercard">#29709</a></li> <li>๐Ÿ” <strong>Sign-in role mapping.</strong> Roles sent by an identity provider were in some setups not applied, leaving an account at the default role, and a sign-in whose roles cannot be read is now refused rather than let through. <a href="https://github.com/open-webui/open-webui/commit/10d1cfe6375f207acaa531e857edb575ded2cfc3">Commit</a></li> <li>๐Ÿšซ <strong>Blocked sign-in groups saved.</strong> Comma-separated group names typed into the blocked groups field now take effect once saved, where the save stored the text as written and the sign-in check then read it as nothing; a group name carrying a comma of its own survives a save too. <a href="https://github.com/open-webui/open-webui/commit/3fc1146c13d7b4b7a67c7fd058014436f80e0dfd">Commit</a></li> <li>๐Ÿšช <strong>Signing out ends the session.</strong> Signing out or having every token revoked left any live connection that account already had in place, and those are now cut at the same moment; a token already revoked can no longer be replayed to cut someone else's newer session. <a href="https://github.com/open-webui/open-webui/commit/3a6d0fd203050401481bdb8621b827089d393817">Commit</a></li> <li>๐Ÿ›ก <strong>Diagrams and SVG stay on this origin.</strong> Mermaid diagrams and SVG previews, attached or uploaded, no longer follow references pointing at another origin, a picture, style or configuration line among them, and a diagram that reaches outside is refused with an error; a file whose drawing leans on an external sprite now shows that part blank. <a href="https://github.com/open-webui/open-webui/pull/30271" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30271/hovercard">#30271</a></li> <li>๐Ÿ“ฒ <strong>Terminal sessions follow access changes.</strong> A terminal connection now re-checks your access to it every ten seconds for as long as it stays open, so removing someone's permission or deactivating their account ends their live terminal on the next check, on every worker and not only the one they signed in through. <a href="https://github.com/open-webui/open-webui/commit/a1189a2d757407530a0c1c85a41b46cd6a4f7da5">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e8bd0661d3774248c318286849041b94bb861909">Commit</a></li> <li>๐Ÿ”’ <strong>Connection model listing access.</strong> The endpoints that list the models on a single Ollama or OpenAI connection could be reached by a signed-in account of any role, and now check the caller's role. <a href="https://github.com/open-webui/open-webui/pull/29619" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29619/hovercard">#29619</a></li> <li>๐Ÿ” <strong>Knowledge file access.</strong> A file's access through a knowledge base now follows its actual attachment alone, rather than also a collection name left behind on the file record. <a href="https://github.com/open-webui/open-webui/pull/29937" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29937/hovercard">#29937</a></li> <li>๐ŸŒณ <strong>Knowledge directories stay inside their base.</strong> A directory id supplied to the knowledge file routes is now refused where it belongs to a different knowledge base, where a caller-supplied id could reach into a directory tree outside the one being addressed. <a href="https://github.com/open-webui/open-webui/commit/a9541c18ca2a056f4ccfe56b9c733cba74b86b49">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/29887" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29887/hovercard">#29887</a></li> <li>๐Ÿช <strong>Cookie forwarding scope.</strong> A connection authenticating as the signed-in person is handed this instance's browser cookies only where its new Forward cookies switch is on, which an instance relying on it has to turn on after upgrading. <a href="https://github.com/open-webui/open-webui/commit/b71744b17823f7a3a9a64cb363e79a7164ed5b23">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3cda47cdb449aac970426f0929c9e5f8bb8bd807">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f9f815c86220f809fad5ee1300c44f55dea74c79">Commit</a></li> <li>๐Ÿ—๏ธ <strong>Revocation list fallback.</strong> Where the revocation list is kept in Redis and Redis cannot be reached, a token is now accepted rather than the request failing, so signing out may not take effect until Redis is back. <a href="https://github.com/open-webui/open-webui/commit/c1615bec2f5f143084b5fcc04f42ebfa0dade9df">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6a85abb3f5e002f3069007213e16e4ef60776890">Commit</a></li> <li>๐Ÿ—’ <strong>Home page chat drafts.</strong> A message typed into a chat started from the home page now comes back after a reload, text, uploads and all, where the draft was stored under a key the page never read again. <a href="https://github.com/open-webui/open-webui/pull/29762" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29762/hovercard">#29762</a>, <a href="https://github.com/open-webui/open-webui/issues/29760" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29760/hovercard">#29760</a></li> <li>๐Ÿž๏ธ <strong>S3-hosted chat images.</strong> A chat image whose host echoes a Content-Encoding nothing asked for, an S3 or MinIO object uploaded with that metadata among them, no longer breaks the reply it sits in; it is sent as its link the way an unreachable image already was. <a href="https://github.com/open-webui/open-webui/pull/29623" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29623/hovercard">#29623</a></li> <li>๐Ÿช† <strong>Branch descent guard.</strong> Stepping between reply branches walked a chat's children without tracking where it had already been, so a history that pointed back at itself spun forever and locked the tab, and a child id with no message behind it threw; every one of the eleven places that walk now shares a single guarded helper. <a href="https://github.com/open-webui/open-webui/pull/30070" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30070/hovercard">#30070</a></li> <li>๐Ÿ—’๏ธ <strong>Note save on exit.</strong> A note's title and its attachments save a moment after they change, and leaving the note inside that moment dropped the save, so the notes list kept showing the old title until the page was reloaded; the pending save now finishes before the next page opens. <a href="https://github.com/open-webui/open-webui/pull/29745" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29745/hovercard">#29745</a>, <a href="https://github.com/open-webui/open-webui/issues/29744" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29744/hovercard">#29744</a></li> <li>๐Ÿ“ท <strong>Attachments sent without text.</strong> Sending an image or a file with nothing typed to a model that has skills attached replaced the empty message with the list of skill names, so the model answered with its own catalogue instead of looking at what you sent. <a href="https://github.com/open-webui/open-webui/pull/30045" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30045/hovercard">#30045</a>, <a href="https://github.com/open-webui/open-webui/issues/30040" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30040/hovercard">#30040</a></li> <li>๐Ÿ–๏ธ <strong>SVG attachments read as text.</strong> An SVG attached to a chat went up as a picture and came back rejected by every model that tried to decode it, and is now read as its source text instead, which needs a model that accepts file uploads. <a href="https://github.com/open-webui/open-webui/pull/30102" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30102/hovercard">#30102</a>, <a href="https://github.com/open-webui/open-webui/issues/30100" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30100/hovercard">#30100</a></li> <li>๐Ÿฉน <strong>Notes survive a small edit.</strong> Asked to add a section or change a few lines, a model would send the whole note back and lose the rest of it with nothing to undo, because the editing tool never said when to edit a range instead; it now spells out the range rules the handler already enforced. <a href="https://github.com/open-webui/open-webui/pull/30048" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30048/hovercard">#30048</a></li> <li>๐Ÿ“‹ <strong>Note paste placement.</strong> A plain paste replaced more of the note than was selected, and a paste into a code block broke out of the block instead of going inside it; both now land exactly where they were dropped. <a href="https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5">Commit</a></li> <li>๐Ÿงฟ <strong>Insert into note on read-only notes.</strong> The Insert into note action no longer appears on a note you may only read, which offered it where it could not land. <a href="https://github.com/open-webui/open-webui/pull/30223" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30223/hovercard">#30223</a>, <a href="https://github.com/open-webui/open-webui/issues/30174" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30174/hovercard">#30174</a></li> <li>๐Ÿค <strong>Note sharing survives a save.</strong> Saving a note you had been given access to took that sharing away, so the note went private and everyone else lost it. <a href="https://github.com/open-webui/open-webui/pull/30175" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30175/hovercard">#30175</a></li> <li>๐ŸŒ <strong>Collaborative link handling.</strong> In a note two people are writing at once, a plain web address arriving from the other editor was turned into a link on your screen but not on theirs; it is now left as written. <a href="https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5">Commit</a></li> <li>๐Ÿ“‘ <strong>Tika 4 document formatting.</strong> Where document extraction runs against a Tika server on version 4, the text now comes back as Markdown rather than a flat run of characters, so headings, lists and tables survive into what the model reads. <a href="https://github.com/open-webui/open-webui/commit/ba34bee2d17e1c00238c85a8aab1a11a60db164e">Commit</a></li> <li>โณ <strong>Session expiry accuracy.</strong> A session with an identity provider now expires with the token it actually calls with, rather than whichever of its two tokens ran out first, which renewed it early and dropped it whenever that failed. <a href="https://github.com/open-webui/open-webui/commit/aaaf26fb8ede28854dd660b11b85ba6bafe64007">Commit</a></li> <li>๐Ÿงฉ <strong>Tool steps in finished replies.</strong> A reply that called tools showed each step as it ran, then lost them the moment the reply completed, because the provider's closing message replaced everything on screen rather than joining it; the closing message is now merged into what is already there, and a tool call is no longer mistaken for its own result. <a href="https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/31b272d3c93b87636c920f2aa68d6caaa07ae79a">Commit</a></li> <li>๐Ÿงญ <strong>Streamed replies follow along.</strong> A reply arriving over the response events now keeps the view at the bottom as it is written, as replies on the older path already did, unless you have scrolled up yourself. <a href="https://github.com/open-webui/open-webui/commit/dfde08aa7391d924359b27f5768411d7a533a6ec">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/88e78b7819b28ffe91f3dff24d8c5d992004197e">Commit</a></li> <li>๐Ÿšฟ <strong>Tool results arrive when the tools are done.</strong> The results of a model's tool calls now reach the reply as soon as the round that produced them finishes, instead of being held back with the rest of the streaming until the throttle let them through, and a channel reply or a continuation no longer carries the picture data a tool handed the model. <a href="https://github.com/open-webui/open-webui/commit/478d1785fd27f400c614a5700f5b38ec9de412f9">Commit</a></li> <li>๐Ÿง— <strong>Tagged blocks while streaming.</strong> A reply using reasoning, solution or code interpreter tags briefly showed the raw tag text in the message as it arrived, because the chunk carrying it reached the browser before the cleaned output did; the cleaned output is now sent the moment a tag is taken out, and the code an interpreter block writes fills that block rather than the message body. <a href="https://github.com/open-webui/open-webui/commit/58b36765a7c20f5943a3180bd289de48876d0878">Commit</a></li> <li>๐Ÿ“— <strong>Excel in the code interpreter.</strong> Reading or writing a spreadsheet in code the browser runs failed outright because the library that handles them never reached the browser, and it is now shipped alongside the rest. <a href="https://github.com/open-webui/open-webui/pull/30140" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30140/hovercard">#30140</a>, <a href="https://github.com/open-webui/open-webui/issues/30130" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30130/hovercard">#30130</a></li> <li>๐Ÿ“€ <strong>Bundled charts and formatting.</strong> Drawing a chart with seaborn in code the browser runs fetched the library over the internet at that moment rather than taking it from what ships, and the code editor's Format button failed outright for anyone who is not an administrator; both now work from what comes with the application, offline included. <a href="https://github.com/open-webui/open-webui/pull/30148" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30148/hovercard">#30148</a>, <a href="https://github.com/open-webui/open-webui/issues/30145" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30145/hovercard">#30145</a></li> <li>๐Ÿ™‹ <strong>Typed answer submission.</strong> In the card a model puts up to ask you a question, choosing one of its options on the last question sends your answers straight away, but typing your own into the Other box left Submit answers greyed out with no way to send it, and it now turns on as soon as that box has text. <a href="https://github.com/open-webui/open-webui/pull/29494" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29494/hovercard">#29494</a>, <a href="https://github.com/open-webui/open-webui/issues/29311" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29311/hovercard">#29311</a></li> <li>๐Ÿฅ‡ <strong>A truthful Recommended badge.</strong> The card a model puts up to ask you a question marks its first option Recommended, but nothing told the model that, so the badge fell on whichever option happened to be listed first; models are now asked to put the option they recommend there. <a href="https://github.com/open-webui/open-webui/pull/30196" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30196/hovercard">#30196</a>, <a href="https://github.com/open-webui/open-webui/issues/30195" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30195/hovercard">#30195</a></li> <li>๐ŸŽš๏ธ <strong>Partial settings permissions.</strong> An account barred from changing the interface settings can now save its system prompt, notifications, audio, keyboard shortcuts and pinned models, which were refused along with them. <a href="https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d">Commit</a></li> <li>๐ŸŽง <strong>Speech file types kept.</strong> Saving the audio settings emptied the list of file types accepted for speech recognition, so transcription then turned away the recordings it had taken before. <a href="https://github.com/open-webui/open-webui/pull/30208" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30208/hovercard">#30208</a></li> <li>๐Ÿšป <strong>Group picker without permission.</strong> The picker for sharing a chat, a note or a knowledge base with a group was offered to accounts not allowed to share with groups, and is now hidden from them. <a href="https://github.com/open-webui/open-webui/pull/30189" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30189/hovercard">#30189</a></li> <li>๐Ÿ—œ๏ธ <strong>Per-field settings saves.</strong> Only the settings actually changed are now stored, rather than the whole object, so another tab's older copy no longer overwrites them and a default an administrator changes still reaches everyone, and pinning a model, reordering the list or picking a default from outside the settings window now saves the same way. <a href="https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/30183" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30183/hovercard">#30183</a></li> <li><g-emoji class="g-emoji" alias="warning">โš ๏ธ</g-emoji> <strong>Failed settings feedback.</strong> Settings that could not be saved were shown as saved anyway until the page was reloaded, because the interface stored them locally without waiting on the server; a failure now raises an error and leaves the panel as it was. <a href="https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d">Commit</a></li> <li>๐Ÿ”  <strong>Menu text scaling.</strong> The entries in the menus that drop down across the interface now scale with the rest of it, rather than staying at a fixed size while the menu around them grew. <a href="https://github.com/open-webui/open-webui/pull/29493" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29493/hovercard">#29493</a>, <a href="https://github.com/open-webui/open-webui/issues/29488" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29488/hovercard">#29488</a></li> <li>๐Ÿชž <strong>Account menu highlighting.</strong> An account menu entry carrying a pin button beside it now lights up across the whole row in the shared colour, and a long label no longer pushes the pin out of the menu. <a href="https://github.com/open-webui/open-webui/commit/e723dcda58f638a5da2398743d22d3e5854042bf">Commit</a></li> <li>๐Ÿ”ฒ <strong>Shift-click file selection.</strong> Shift-clicking a file in the terminal's file browser now adds that range to what is already selected, and clicking through a selected file removes its range. <a href="https://github.com/open-webui/open-webui/commit/f80ef8bd001d7ef650fb278d6fbd05bea4afad0f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4cc0d48b4d83503199bcc5f2322881722971a499">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/674760bfc1122e0a19fe299e05a86d1cbb528e6f">Commit</a></li> <li>๐Ÿ›Ÿ <strong>Attachment name collisions.</strong> Attaching a file to a message on an instance that puts attachments in a terminal's working directory replaced whatever file of that name was sitting there; the upload now takes the next free name, "report (1).pdf" beside "report.pdf", and the attachment shows the name it was saved under, though two uploads arriving at the same moment from different browsers can still land on the same name. <a href="https://github.com/open-webui/open-webui/commit/d70053e44993f271d534fb87d2b40724b028fca2">Commit</a></li> <li>๐Ÿ“› <strong>Failed upload feedback.</strong> A file that could not be written to the terminal now says so, rather than passing in silence while the browser refreshed as though it had arrived. <a href="https://github.com/open-webui/open-webui/commit/f80ef8bd001d7ef650fb278d6fbd05bea4afad0f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4cc0d48b4d83503199bcc5f2322881722971a499">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/674760bfc1122e0a19fe299e05a86d1cbb528e6f">Commit</a></li> <li>โ˜‘๏ธ <strong>Unchecked checkbox defaults.</strong> A prompt variable written as a checkbox with a default of false opened the form already ticked, as did False, "false", 0 and "0", because any non-empty default counted as ticked; it is now ticked only where the value really is true. <a href="https://github.com/open-webui/open-webui/pull/30037" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30037/hovercard">#30037</a>, <a href="https://github.com/open-webui/open-webui/issues/30036" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30036/hovercard">#30036</a></li> <li>๐ŸŽฏ <strong>Prefilled question timing.</strong> Opening a chat from a link holding a question sent it before the box had it, so a question naming a variable went off with the variable unfilled; the send now waits for the text to be in place and filled in. <a href="https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a23b579233276e40159eb615917b9aeb7d5ed5c9">Commit</a></li> <li>๐Ÿ“œ <strong>Task list height.</strong> The list of steps a model works through ran as long as it needed and pushed the rest of the reply down the page; it now stops at a quarter of the window's height and scrolls within itself. <a href="https://github.com/open-webui/open-webui/commit/307b9b9133f0c7ad899f4b76226059da6f3177eb">Commit</a></li> <li>โŽ‹ <strong>Escape key targeting.</strong> The shortcut for closing a dialog always shut the settings window, whichever dialog was actually in front, so a dialog opened from within settings took both away at once; each dialog now answers the shortcut for itself, as it already did for the escape key. <a href="https://github.com/open-webui/open-webui/pull/29830" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29830/hovercard">#29830</a>, <a href="https://github.com/open-webui/open-webui/issues/29817" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29817/hovercard">#29817</a></li> <li>๐ŸŽน <strong>Message pair shortcut.</strong> The shortcut that adds an empty question and answer to a chat also sent whatever was typed in the message box, so the pair arrived alongside a message you had not meant to send yet. <a href="https://github.com/open-webui/open-webui/pull/30167" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30167/hovercard">#30167</a></li> <li>๐Ÿฅ <strong>Collapsing the task list.</strong> Folding away the list of tasks under a reply also sent whatever you had typed in the message box. <a href="https://github.com/open-webui/open-webui/pull/30202" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30202/hovercard">#30202</a></li> <li>๐Ÿ•ฐ๏ธ <strong>Temporary chat links.</strong> A link carrying the temporary chat marker opened an ordinary chat, because the marker was written into the address but never read back when the page loaded, and such a link now opens the temporary chat it promises. <a href="https://github.com/open-webui/open-webui/commit/67adde31936d1d2e656140f9edd898b1fbb18a1c">Commit</a></li> <li>โŒจ๏ธ <strong>Recording a new shortcut.</strong> Pressing a key combination to record it as a shortcut also ran whatever that combination was already bound to, so setting one up did the thing you were trying to rebind. <a href="https://github.com/open-webui/open-webui/pull/30160" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30160/hovercard">#30160</a></li> <li>๐Ÿ”ƒ <strong>Stale tab reload.</strong> A tab still running the previous build met an error page after the server was updated instead of loading the new one, because every image built from Docker carried the same version stamp; the stamp now follows the build, and a stale tab reloads as it was meant to. <a href="https://github.com/open-webui/open-webui/pull/29832" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29832/hovercard">#29832</a>, <a href="https://github.com/open-webui/open-webui/issues/29831" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29831/hovercard">#29831</a></li> <li>๐Ÿ“Œ <strong>Channel code headers.</strong> The bar naming a piece of code in a channel thread or its pinned messages now sits flush at the top of the panel, clipped to the block, rather than floating over the code as it scrolls. <a href="https://github.com/open-webui/open-webui/pull/29836" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29836/hovercard">#29836</a>, <a href="https://github.com/open-webui/open-webui/issues/29835" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29835/hovercard">#29835</a></li> <li>๐Ÿ“จ <strong>Duplicated proxy headers.</strong> A reply proxied from a terminal server or an OpenAI or Ollama connection no longer carries that server's own "Server" and "Date" headers, which had a reverse proxy in front logging a duplicate line for every one. <a href="https://github.com/open-webui/open-webui/pull/29841" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29841/hovercard">#29841</a>, <a href="https://github.com/open-webui/open-webui/issues/29824" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29824/hovercard">#29824</a>, <a href="https://github.com/open-webui/open-webui/pull/29843" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29843/hovercard">#29843</a></li> <li>๐ŸŽฃ <strong>Testing an image connection.</strong> The Verify button beside an image generation connection saved the whole image configuration first and then tested whichever engine was active rather than the connection beside it, and it now tests exactly that connection and changes nothing. <a href="https://github.com/open-webui/open-webui/commit/64bbdf7a73724986fac8bcf6e880fe32ef9ac495">Commit</a></li> <li>๐Ÿช <strong>Responses API tool strictness.</strong> A workspace tool, MCP server or OpenAPI server reaching a model on the Responses API was turned into a strict schema where it had never asked to be, so the model filled every optional field with empty strings, zeros and empty arrays, and search and filter tools were handed values where leaving them out was meant. <a href="https://github.com/open-webui/open-webui/pull/30046" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30046/hovercard">#30046</a>, <a href="https://github.com/open-webui/open-webui/issues/27750" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27750/hovercard">#27750</a></li> <li>๐Ÿชƒ <strong>Responses API tool calling.</strong> A forced tool choice sent to a connection on the Responses API went out in the wrong shape and was refused by providers that check it, and a tool call in a reply that was not streamed came back as empty text, so nothing reading the API ever saw it. <a href="https://github.com/open-webui/open-webui/pull/30095" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30095/hovercard">#30095</a>, <a href="https://github.com/open-webui/open-webui/issues/30085" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30085/hovercard">#30085</a></li> <li>โ›“๏ธ <strong>Missing tools in links.</strong> Opening a chat from a link whose "tools" or "tool-ids" parameter names a tool that no longer exists, or that the account cannot see, kept that id in the selection and sent it with the message; ids matching no tool the account has are now dropped and the rest of the link works as before. <a href="https://github.com/open-webui/open-webui/pull/29803" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29803/hovercard">#29803</a></li> <li>๐Ÿšซ <strong>Model editor error messages.</strong> A workspace model that cannot be loaded for editing now says so, instead of sending you back with "You do not have permission to edit this model" whatever the real reason. <a href="https://github.com/open-webui/open-webui/pull/29694" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29694/hovercard">#29694</a>, <a href="https://github.com/open-webui/open-webui/issues/29629" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29629/hovercard">#29629</a></li> <li>๐Ÿ‘ฅ <strong>Directory updates that were dropped.</strong> A change your identity provider sent as an add or a remove, or without naming the attribute it was changing, was accepted and then quietly discarded, so a rename or a deactivation never reached the account; those now take effect. <a href="https://github.com/open-webui/open-webui/commit/ad9da981680c0fd9151c803a366a01545ea907c1">Commit</a></li> <li>๐Ÿ—ƒ๏ธ <strong>Directory request validation.</strong> A provisioning request carrying the wrong kind of value, or an attribute Open WebUI does not support, now comes back as an error instead of passing in silence, and a sync that changes nothing no longer marks the account as touched. <a href="https://github.com/open-webui/open-webui/commit/ad9da981680c0fd9151c803a366a01545ea907c1">Commit</a></li> <li>๐Ÿ”˜ <strong>Model editor save button.</strong> Saving a workspace model whose model list could not be refreshed afterwards now reports the error and frees the Save button, rather than leaving it disabled and spinning though the model had been saved. <a href="https://github.com/open-webui/open-webui/commit/dc98e3023fc6e0113dbad76545cdb15e014db6ad">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/cc5479d16d5caf28ec19a16ffa1ee4f3dbc0f63f">Commit</a></li> <li>๐Ÿซฑ <strong>Rating a reply again.</strong> Switching a reply's rating from one thumb to the other kept the score and the reason given the first time, and rating a reply whose feedback had since been deleted failed outright; both now record the rating you just gave. <a href="https://github.com/open-webui/open-webui/pull/30075" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30075/hovercard">#30075</a>, <a href="https://github.com/open-webui/open-webui/pull/30077" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30077/hovercard">#30077</a></li> <li>๐Ÿ“ถ <strong>Sorting feedback by user.</strong> The User column in the admin feedback history did nothing when clicked, and now sorts by who left the feedback. <a href="https://github.com/open-webui/open-webui/pull/30191" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30191/hovercard">#30191</a></li> <li>๐Ÿช‚ <strong>Closing the Edit User dialog.</strong> Changes typed into the admin Edit User dialog and then abandoned showed on the row in the user list until the page was reloaded, and closing the dialog now drops them. <a href="https://github.com/open-webui/open-webui/pull/30193" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30193/hovercard">#30193</a></li> <li>๐Ÿช™ <strong>Model defaults save.</strong> Saving the model defaults in the admin settings put the selected, pinned and ordered models back as they stood when the page was opened, undoing anything changed in between. <a href="https://github.com/open-webui/open-webui/pull/30206" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30206/hovercard">#30206</a></li> <li>๐Ÿ‘ค <strong>A custom gender shown back.</strong> An account whose gender is a wording of its own came back to an empty dropdown in the account form, and the form now shows Custom with that wording beside it. <a href="https://github.com/open-webui/open-webui/pull/30215" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30215/hovercard">#30215</a></li> <li>๐Ÿ—“๏ธ <strong>Clearing a calendar event.</strong> Emptying the repeat, the description or the location of a calendar event did not take and the old wording came back, and those fields can be cleared again. <a href="https://github.com/open-webui/open-webui/pull/30204" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30204/hovercard">#30204</a></li> <li>๐Ÿ“• <strong>Required prompt dropdowns.</strong> A prompt's form could be sent with a required dropdown left unchosen, and now asks you to pick something first. <a href="https://github.com/open-webui/open-webui/pull/30078" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30078/hovercard">#30078</a></li> <li>๐ŸŽซ <strong>Account form required fields.</strong> The account form now refuses to save with a required field left empty, the way the admin user dialog does, and a date of birth is no longer demanded of accounts that never set one. <a href="https://github.com/open-webui/open-webui/pull/30296" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30296/hovercard">#30296</a>, <a href="https://github.com/open-webui/open-webui/issues/30295" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30295/hovercard">#30295</a></li> <li>๐Ÿ‘ <strong>Model clones keep their base.</strong> Cloning a model from the admin Models settings now carries the model it was built on, where the clone came out detached from it, and an arena model no longer offers Clone at all. <a href="https://github.com/open-webui/open-webui/pull/30080" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30080/hovercard">#30080</a>, <a href="https://github.com/open-webui/open-webui/issues/30079" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30079/hovercard">#30079</a></li> <li>๐Ÿงค <strong>Model sharing survives a save.</strong> Saving a model you cannot fully share no longer strips the access entries you cannot re-create, where an editor resending every stored entry had each one re-checked against what its author may grant, and a save from someone with narrow rights quietly took the model private for everyone else. <a href="https://github.com/open-webui/open-webui/commit/754c4b5762ed0d79954ff28c4e06631004dc31b3">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/30093" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30093/hovercard">#30093</a>, <a href="https://github.com/open-webui/open-webui/issues/30087" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30087/hovercard">#30087</a></li> <li>๐Ÿ“  <strong>Prompt version saves.</strong> Saving a new version of a prompt without Set as Production leaves the live prompt exactly as it was, where the draft quietly took its place, and the editor now shows the production text the moment a version is set. <a href="https://github.com/open-webui/open-webui/pull/30231" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30231/hovercard">#30231</a>, <a href="https://github.com/open-webui/open-webui/issues/30230" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30230/hovercard">#30230</a>, <a href="https://github.com/open-webui/open-webui/pull/30233" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30233/hovercard">#30233</a>, <a href="https://github.com/open-webui/open-webui/issues/30232" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30232/hovercard">#30232</a></li> <li>๐Ÿ’ฌ <strong>Model description round trips.</strong> A workspace model whose description is switched from the default back to custom saves again, where the switch read the field as empty and the description was dropped on save. <a href="https://github.com/open-webui/open-webui/pull/30249" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30249/hovercard">#30249</a>, <a href="https://github.com/open-webui/open-webui/issues/30247" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30247/hovercard">#30247</a></li> <li>๐ŸŽš <strong>Compaction threshold saves.</strong> The context compaction threshold set in general settings now reaches the model parameters, where the value never left the page. <a href="https://github.com/open-webui/open-webui/pull/30270" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30270/hovercard">#30270</a>, <a href="https://github.com/open-webui/open-webui/issues/30269" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30269/hovercard">#30269</a></li> <li>๐Ÿ“ข <strong>Speech engine defaults.</strong> Switching the text to speech engine now applies that engine's own default voice and model, where the change kept the previous engine's settings in place. <a href="https://github.com/open-webui/open-webui/pull/30289" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30289/hovercard">#30289</a>, <a href="https://github.com/open-webui/open-webui/issues/30288" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30288/hovercard">#30288</a></li> <li>๐Ÿ—ž <strong>MinerU key in local mode.</strong> The document settings save again in local mode with the MinerU key left empty, where the form demanded a key it did not need. <a href="https://github.com/open-webui/open-webui/pull/30299" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30299/hovercard">#30299</a>, <a href="https://github.com/open-webui/open-webui/issues/30298" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30298/hovercard">#30298</a></li> <li>๐Ÿซ‚ <strong>Group dialog reset.</strong> The new-group dialog opens empty after a group is created, where the next one came up holding the group just made. <a href="https://github.com/open-webui/open-webui/pull/30280" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30280/hovercard">#30280</a>, <a href="https://github.com/open-webui/open-webui/issues/30279" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30279/hovercard">#30279</a></li> <li>๐Ÿงต <strong>Thread reply notifications.</strong> Clicking the notification for a reply written inside a thread dropped you at the bottom of the channel with the thread still shut and the reply nowhere in sight; it now opens the thread the reply belongs to. <a href="https://github.com/open-webui/open-webui/pull/29856" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29856/hovercard">#29856</a>, <a href="https://github.com/open-webui/open-webui/issues/29855" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29855/hovercard">#29855</a></li> <li>๐Ÿ”ฝ <strong>Dropdown arrow spacing.</strong> The arrow in the dropdowns drawn no wider than their contents, among them the provider on a new connection, no longer overlaps the last characters of the longest choice. <a href="https://github.com/open-webui/open-webui/pull/29866" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29866/hovercard">#29866</a>, <a href="https://github.com/open-webui/open-webui/issues/29865" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29865/hovercard">#29865</a></li> <li>๐ŸงŠ <strong>Lowercase header handling.</strong> Headers from an upstream that writes them in lower case, as anything served by uvicorn does, are now matched without regard to case, so "Content-Encoding" is stripped and clients stop failing to decompress a body the server had already decoded. <a href="https://github.com/open-webui/open-webui/pull/29843" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29843/hovercard">#29843</a></li> <li>๐Ÿ›‘ <strong>Complete chat stop.</strong> Where a chat had more than one task in flight, stopping it, deleting it, or closing a note being worked on could stop the first and leave the rest running to the end, both because a task that had already finished ended the round early and because the list being worked through was rewritten underneath it as each one was cleared away; every task is now stopped in turn, so a reply that was calling tools stops calling them rather than running on to its own limit, though instances sharing their state through Redis were not affected. <a href="https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/29844" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29844/hovercard">#29844</a>, <a href="https://github.com/open-webui/open-webui/issues/29816" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29816/hovercard">#29816</a></li> <li>๐Ÿ–Š๏ธ <strong>Channel code blocks.</strong> Where a model answers in a channel with structured output, the code inside it was drawn as plain highlighted text rather than in the editor every other message uses, so it could not be edited in place and a diff in it could not be opened for editing; it now renders the same way as everywhere else. <a href="https://github.com/open-webui/open-webui/pull/29861" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29861/hovercard">#29861</a></li> <li>๐Ÿ“ <strong>Code block edits on collapse.</strong> An unsaved edit inside a code block stays on screen when the block is folded away and opened again, where collapsing it showed the saved text though the edit was still pending. <a href="https://github.com/open-webui/open-webui/pull/30284" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30284/hovercard">#30284</a>, <a href="https://github.com/open-webui/open-webui/issues/30283" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30283/hovercard">#30283</a></li> <li>๐Ÿšจ <strong>Code run errors with output.</strong> A code run that ends with an error now shows the error alongside what it printed, where a run that printed anything at all showed its error nowhere. <a href="https://github.com/open-webui/open-webui/pull/30286" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30286/hovercard">#30286</a>, <a href="https://github.com/open-webui/open-webui/issues/30285" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30285/hovercard">#30285</a></li> <li>๐Ÿ”• <strong>Reactions on read-only channels.</strong> The reaction picker no longer appears on a channel open to you as a viewer alone, matching the reply and menu options already hidden there. <a href="https://github.com/open-webui/open-webui/pull/30241" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30241/hovercard">#30241</a>, <a href="https://github.com/open-webui/open-webui/issues/30240" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30240/hovercard">#30240</a></li> <li>๐ŸŽฏ <strong>Knowledge search accuracy on PostgreSQL.</strong> A fresh install using PostgreSQL built its search index before a single piece of text existed to organise it around, so the index was never fit for the content that arrived afterwards and every search quietly returned the wrong passages; the index now waits until there is enough text to build on, and until then searches read everything exactly. An install already carrying such an index can restore it by rebuilding that one index. <a href="https://github.com/open-webui/open-webui/pull/30143" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30143/hovercard">#30143</a>, <a href="https://github.com/open-webui/open-webui/issues/30134" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30134/hovercard">#30134</a></li> <li>๐Ÿ—‚ <strong>Knowledge file filter on first click.</strong> The File content filter in a knowledge base now narrows the listing the first time it is clicked, where the first click only armed the checkbox and everything stayed listed until it was clicked again. <a href="https://github.com/open-webui/open-webui/pull/30211" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30211/hovercard">#30211</a>, <a href="https://github.com/open-webui/open-webui/issues/30210" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30210/hovercard">#30210</a></li> <li>๐Ÿ”ญ <strong>Knowledge base search recall.</strong> Where many knowledge bases are stored together, a search of one holding a small share of what is stored found only a small share of its matches, and the shortfall grew as the store did; the search now keeps looking until it has enough from the knowledge base you asked for, and "PGVECTOR_ITERATIVE_SCAN" switches that off or makes it strict. <a href="https://github.com/open-webui/open-webui/pull/30142" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30142/hovercard">#30142</a>, <a href="https://github.com/open-webui/open-webui/issues/30135" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30135/hovercard">#30135</a></li> <li>๐Ÿชฃ <strong>Searches that found nothing.</strong> A knowledge search that came back empty never handed its database connection back, so enough of them left knowledge search failing outright until the server was restarted; connections are returned now on PostgreSQL and on openGauss alike. <a href="https://github.com/open-webui/open-webui/pull/30142" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30142/hovercard">#30142</a>, <a href="https://github.com/open-webui/open-webui/issues/30133" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30133/hovercard">#30133</a>, <a href="https://github.com/open-webui/open-webui/pull/30144" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30144/hovercard">#30144</a></li> <li>๐Ÿงฝ <strong>Knowledge folder deletion.</strong> Deleting a folder without moving what was in it up a level dropped the files from the listing but left their text in the search index and the files themselves in storage, so a model went on retrieving and citing pages from a folder that was no longer there; the text is now removed with the folder, and a file no other knowledge base holds is deleted with it unless file retention is switched on. <a href="https://github.com/open-webui/open-webui/commit/17dbc6f001aeea25ae1df528cb79bb272eca4a77">Commit</a></li> <li>๐Ÿฆ€ <strong>Regex searches over chat and knowledge files.</strong> A pattern search now runs in time proportional to the text whatever the pattern, where a nasty expression could stall the search for good, and the patterns it accepts follow RE2's rules, with no lookarounds or backreferences and character classes matching ASCII only. <a href="https://github.com/open-webui/open-webui/commit/97e013a66169c4fcd7f26ab9e41a4ff260ffd4da">Commit</a></li> <li>โฐ <strong>Automation schedule parsing.</strong> An automation whose rule puts the time in "DTSTART" is now read at that hour, rather than listed at midnight and opened at nine, which moved when it ran as soon as it was saved again. <a href="https://github.com/open-webui/open-webui/commit/540467b90a430e47e536c20710878b342de659fb">Commit</a></li> <li>โฒ๏ธ <strong>Recurrence counts and start dates.</strong> A rule repeating a set number of times, ten or a hundred, is read as the limited repeat it is, where any count beginning with a one was treated as one-shot, and a rule carrying its start date on the same line as its repeat text now follows the start you picked, on schedules and calendar events alike. <a href="https://github.com/open-webui/open-webui/pull/29262" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29262/hovercard">#29262</a></li> <li>โŒ› <strong>Stalled schedules and stuck tasks.</strong> A schedule whose rule takes too long to work out no longer holds up the round that evaluates it and is skipped with a warning, and background tasks shared through Redis now expire once their worker falls silent, after "REDIS_TASK_TTL" seconds. <a href="https://github.com/open-webui/open-webui/commit/5fb869db221d9599a576e8e2eea9c3314947d25e">Commit</a></li> <li>๐Ÿ“ฃ <strong>Model mention chips.</strong> A mention whose ID carried anything beyond letters, digits and a little punctuation, such as the brackets in some workspace model IDs, stayed on screen as the raw "<@โ€ฆ>" text both in the box you type in and in the message once sent; any ID without a space in it is now drawn as a chip. <a href="https://github.com/open-webui/open-webui/pull/29864" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29864/hovercard">#29864</a></li> <li>๐Ÿ˜€ <strong>Multi-codepoint emoji.</strong> An emoji whose shortcode is several codepoints, the flags among them, is inserted whole, where only its first part reached the message. <a href="https://github.com/open-webui/open-webui/pull/30213" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30213/hovercard">#30213</a>, <a href="https://github.com/open-webui/open-webui/issues/30212" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30212/hovercard">#30212</a></li> <li>๐Ÿ”” <strong>Custom webhook names.</strong> A webhook target named with a space or a slash is now tidied the way an automatic name always was, so it can still be edited, deleted, made the default or tested afterwards. <a href="https://github.com/open-webui/open-webui/pull/29947" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29947/hovercard">#29947</a></li> <li>๐Ÿช› <strong>Paginated MCP tool lists.</strong> A server that hands its tools back a page at a time had only the first page read, so the rest were never offered to a model; the whole list is now collected before the tools are built. <a href="https://github.com/open-webui/open-webui/commit/ffae4116a8d58a820f1770c41c69dafe4d51c881">Commit</a></li> <li>๐Ÿ’ญ <strong>Anthropic thinking blocks.</strong> Open WebUI's own thinking blocks are no longer forwarded to an OpenAI-compatible backend, which since 0.11.0 made a strict server such as NVIDIA Dynamo refuse an Anthropic client's second turn; signed blocks still pass through. <a href="https://github.com/open-webui/open-webui/pull/29849" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29849/hovercard">#29849</a>, <a href="https://github.com/open-webui/open-webui/issues/29799" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29799/hovercard">#29799</a></li> <li>๐Ÿ—จ๏ธ <strong>Channel model terminals.</strong> A model with a terminal chosen in the workspace had that choice honoured in a chat but dropped where it answered in a channel or ran as a channel automation, so it worked without one; it now carries the same terminal everywhere, alongside the tools, filters and features it already carried. <a href="https://github.com/open-webui/open-webui/commit/c78ad89934095c4e42e3f059d400a24fe5681de2">Commit</a></li> <li>๐Ÿงบ <strong>Deleted channel messages leave no quotes.</strong> Deleting a channel message now clears the quote of it sitting on every reply and drops it from the reply box, where a reply kept showing the deleted message and could still be sent addressed to it. <a href="https://github.com/open-webui/open-webui/pull/30314" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30314/hovercard">#30314</a>, <a href="https://github.com/open-webui/open-webui/issues/30313" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30313/hovercard">#30313</a></li> <li>๐Ÿ”Œ <strong>Terminal tools need a terminal.</strong> A model was offered the tools that read your terminal and type into it whether or not the chat had a terminal switched on and connected in your browser, so it could reach for one that was not there; those tools are now handed over only for the terminal the chat has open. <a href="https://github.com/open-webui/open-webui/commit/ca1eefe2937081b010ffef3985997d17d3332fa3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1ddba7e2c6f625fbc2c131eb24d3b9775ad898ad">Commit</a></li> <li>๐Ÿ”ค <strong>Custom header encoding.</strong> The custom headers a connection sends are encoded once the values are filled in, so a person's name or group carrying anything beyond plain ASCII, a line break included, no longer breaks the request or reaches the other end as something else. <a href="https://github.com/open-webui/open-webui/commit/7a4a4b93dca34f8ce0c481b180d3eea23797e984">Commit</a></li> <li>๐Ÿ†Ž <strong>Chromium spellcheck corrections.</strong> Picking a suggestion from the browser's own spelling menu in the message box did nothing, or put the misspelling straight back, because a highlight meant for the notes editor was being drawn over the selection and rebuilding the text underneath it, taking the browser's spelling marks with it; that highlight is now kept out of the message box and only drawn where the editor is not in use. <a href="https://github.com/open-webui/open-webui/pull/29952" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29952/hovercard">#29952</a>, <a href="https://github.com/open-webui/open-webui/issues/29944" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29944/hovercard">#29944</a></li> <li>๐Ÿˆ <strong>IME composition while renaming.</strong> Confirming a chat rename with Enter or Escape part way through typing with an input method editor now finishes the composition without saving or cancelling the rename, where the key press acted at once. <a href="https://github.com/open-webui/open-webui/commit/85146206f60a22385ed27dae30d4f00e7e2675eb">Commit</a></li> <li>๐Ÿณ <strong>Dotless host addresses.</strong> With local web fetching turned on, an address pointing at a container name on the same network, "<a href="http://apprise:8000" rel="nofollow">http://apprise:8000</a>" and the like, is now accepted rather than refused as invalid. <a href="https://github.com/open-webui/open-webui/pull/29945" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29945/hovercard">#29945</a>, <a href="https://github.com/open-webui/open-webui/issues/28161" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28161/hovercard">#28161</a></li> <li>๐Ÿชง <strong>False skill mentions.</strong> Something written as "<$fh>" in a message, as Perl and other languages do, was taken for a mention of a skill and quietly removed before the model saw it, and drawn on screen as a chip; only mentions naming a skill that exists and is turned on are treated as mentions now. <a href="https://github.com/open-webui/open-webui/commit/0edd731c7422870aa109fd0b758c6d68c06655da">Commit</a></li> <li>๐ŸŽ’ <strong>Skill settings survive saving.</strong> Saving a skill from its editor cleared the tags and translations it carried and switched it back on where it had been disabled, and all of that now survives the save. <a href="https://github.com/open-webui/open-webui/pull/30185" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30185/hovercard">#30185</a></li> <li>๐Ÿซฅ <strong>Webhook avatar forwarding.</strong> Turning "ENABLE_PROFILE_IMAGE_URL_FORWARDING" off stops browsers being sent on to outside picture addresses, and a channel webhook's picture was sent on regardless; it now serves the built-in picture like the rest, in the webhooks dialog as well as the message list, where the dialog had been sending every viewer's browser straight to the outside address. <a href="https://github.com/open-webui/open-webui/pull/29889" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29889/hovercard">#29889</a>, <a href="https://github.com/open-webui/open-webui/pull/29892" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29892/hovercard">#29892</a></li> <li>๐ŸชŸ <strong>Statistics window origin.</strong> The window that shares chat statistics with the community accepted requests from any page that opened it and answered to anywhere; it now reads and replies only where the community site is at the other end. <a href="https://github.com/open-webui/open-webui/pull/29918" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29918/hovercard">#29918</a></li> <li>๐Ÿ–ผ๏ธ <strong>Tool image rendering.</strong> Where a tool answered with an image tucked inside an object or a list rather than on its own, the image was written into the conversation as its raw text, a single screenshot costing hundreds of thousands of tokens and crowding out everything else; such an image is now taken out wherever it sits and attached to the reply, so the model is handed the picture and you see it. An older fault that let every second image through untouched goes with it, and in a saved chat such an image is now kept as a file and referred to rather than written into the conversation itself, so the chat stays small. <a href="https://github.com/open-webui/open-webui/pull/29665" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29665/hovercard">#29665</a>, <a href="https://github.com/open-webui/open-webui/issues/29208" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29208/hovercard">#29208</a>, <a href="https://github.com/open-webui/open-webui/commit/d372bec70427fe2d568e052ce5e1529e2ad41da9">Commit</a></li> <li>โฑ๏ธ <strong>Stopped reply state.</strong> Pressing stop saved the reply as finished while the parts inside it were still marked as running, so a block went on reading "Thinking..." or "Executing..." and came back that way after every reload; those parts are now closed off as the reply is stopped, and an open tab settles at once rather than only after a reload, while a tool call still waiting for your approval keeps its prompt. <a href="https://github.com/open-webui/open-webui/pull/29495" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29495/hovercard">#29495</a>, <a href="https://github.com/open-webui/open-webui/issues/29281" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29281/hovercard">#29281</a></li> <li>๐Ÿฉบ <strong>Knowledge sync errors.</strong> A knowledge base sync that fails now names the file it happened on and what the browser said, rather than reporting nothing beyond "Error accessing directory". <a href="https://github.com/open-webui/open-webui/pull/29507" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29507/hovercard">#29507</a></li> <li>๐Ÿšง <strong>Terminal proxy restrictions.</strong> Requests passed through to a terminal server are now refused where they aim at that server's administrative endpoints, are not followed on to somewhere else, and are turned away where the path carries characters a parser would rewrite. <a href="https://github.com/open-webui/open-webui/commit/51bb8cb142f72503e861eeee25ae4dc73c26c36b">Commit</a></li> <li>โ›” <strong>Malformed tool calls.</strong> Where a model asked for a tool with arguments that were not an object at all, a bare list or string, the reply stopped there; the model is now told what was wrong with the call and can try again. <a href="https://github.com/open-webui/open-webui/commit/fed94c9f5af8a59660425d52df09e15fbedb25bc">Commit</a></li> <li>๐Ÿ“ก <strong>Broken stream reporting.</strong> Where something failed part way through streaming an answer out of "/api/chat/completions", the stream simply stopped, leaving a client waiting on an answer that would never finish; it now closes with an error and a proper end of stream. <a href="https://github.com/open-webui/open-webui/commit/c0fb36c9b833a85a3a7364e195cf54f3d6c7a787">Commit</a></li> <li>๐Ÿงท <strong>Chat unblocked after an error.</strong> A reply that failed, on a content filter or an exhausted quota, left the chat turning away everything you typed after it and stopped the message queue. Only the failed reply now ends, so the chat carries on and the other replies in a multi-model answer keep writing. <a href="https://github.com/open-webui/open-webui/commit/dbb17a5725f9d7f844a6eee63ffca0bd077c7d94">Commit</a></li> <li>๐Ÿซ™ <strong>Empty failed replies in history.</strong> An assistant turn that ended in an error with nothing written is no longer handed back to the model as part of the conversation when you send your next message. <a href="https://github.com/open-webui/open-webui/commit/dbb17a5725f9d7f844a6eee63ffca0bd077c7d94">Commit</a></li> <li>๐Ÿ“ญ <strong>Empty page uploads.</strong> Adding a web address to a knowledge base that came back without any text failed with a bare "Error uploading file" and, where the upload itself was refused, left the row sitting in the list; the reason now reaches you as it was given, and the row is taken away. <a href="https://github.com/open-webui/open-webui/commit/6786ae1797eadaad7464a147213790e2d272822b">Commit</a></li> <li>๐ŸŽž๏ธ <strong>Tool embed scope.</strong> The frames a tool call can ask to have shown, which run scripts of their own, were drawn wherever a message was rendered, a channel among them; they are now drawn only in the replies of the chat you are in, and never in a channel. <a href="https://github.com/open-webui/open-webui/pull/29985" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29985/hovercard">#29985</a></li> <li>๐Ÿšฐ <strong>Rejected picture addresses.</strong> A model entry carrying a picture address the server refuses no longer leaves that address in memory, where anyone signed in could pile them up. <a href="https://github.com/open-webui/open-webui/pull/29971" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29971/hovercard">#29971</a></li> <li>๐Ÿ–Œ <strong>Editing a stored image.</strong> Asking a model to edit an image this instance already holds now works whatever host its address names, where a container name, a default port or a self-composed host made the edit fail with a generic loading error. <a href="https://github.com/open-webui/open-webui/pull/29691" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29691/hovercard">#29691</a>, <a href="https://github.com/open-webui/open-webui/issues/29220" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29220/hovercard">#29220</a></li> <li>๐Ÿงช <strong>Memory replies carry less.</strong> The memory tool no longer hands the model each memory's stored metadata, and a memory now records the model's id rather than the whole model entry. <a href="https://github.com/open-webui/open-webui/commit/e9a0164690a8b1e190bdc8f4613e9d918b26d327">Commit</a></li> <li>๐Ÿ”‡ <strong>Memory fully off.</strong> With memory switched off, stored memories are no longer folded into a reply's context and the memory tools are no longer offered to the model, where both went on reaching it behind the switch. <a href="https://github.com/open-webui/open-webui/pull/30228" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30228/hovercard">#30228</a>, <a href="https://github.com/open-webui/open-webui/issues/30227" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30227/hovercard">#30227</a></li> <li>๐Ÿง  <strong>Memory review behind the switch.</strong> The background review that drafts new memories from a conversation no longer runs when memories are switched off or the account is barred from them, where it went on spending a task-model call every interval turn and failing at the write. <a href="https://github.com/open-webui/open-webui/pull/30309" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30309/hovercard">#30309</a></li> <li>๐Ÿ—๏ธ <strong>Terminal server save button.</strong> Saving a terminal server now waits for the save to finish before the dialog closes and cannot be set off twice by a second click. <a href="https://github.com/open-webui/open-webui/commit/1cdd7aa459d6e96905324b452600ff56369d8a4e">Commit</a></li> <li>๐Ÿ—บ๏ธ <strong>Terminal file panel paths.</strong> The file panel beside a terminal now opens the file a model just wrote even when it is named with a relative path, where the panel could not match the name, jumped to the root and dragged the session's working directory with it. <a href="https://github.com/open-webui/open-webui/pull/30282" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30282/hovercard">#30282</a>, <a href="https://github.com/open-webui/open-webui/issues/30051" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30051/hovercard">#30051</a></li> <li>๐Ÿด <strong>Forked chat folder.</strong> Forking a chat put the copy in the original's folder even where you cannot write to that folder; it is now created outside any folder unless you can. <a href="https://github.com/open-webui/open-webui/pull/30069" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30069/hovercard">#30069</a></li> <li>๐Ÿชข <strong>Dropping a folder in place.</strong> Dragging a folder onto the folder it already sits in failed with "Folder already exists", and is now taken for the no-op it is. <a href="https://github.com/open-webui/open-webui/pull/30169" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30169/hovercard">#30169</a></li> <li>๐Ÿ—๏ธ <strong>Read-only folders read-only everywhere.</strong> A folder shared with you as a viewer no longer shows its edit controls on the empty-chat page, where they appeared and a save went through or failed depending on rights the page never checked. <a href="https://github.com/open-webui/open-webui/commit/ee3ece1e2b8c9a38c94faf354ca020d66aba801d">Commit</a></li> <li>๐Ÿšฟ <strong>Deleting a folder, keeping chats.</strong> Removing a folder while keeping the chats inside it was refused for an account not allowed to delete chats, even though nothing was being deleted, and it now goes through. <a href="https://github.com/open-webui/open-webui/pull/30163" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30163/hovercard">#30163</a></li> <li>๐Ÿท๏ธ <strong>Tag cleanup after deletion.</strong> An administrator deleting someone else's chat tidied unused tags out of their own account rather than the owner's, leaving the owner with tags nothing points at. <a href="https://github.com/open-webui/open-webui/pull/30171" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30171/hovercard">#30171</a></li> <li>๐ŸŒฑ <strong>Forking past an unfinished reply.</strong> A chat that held an interrupted reply anywhere in it refused every fork from then on and never recovered; forking now waits only on a reply actually being generated, and a turn paused for tool approval still forks with its prompt showing. <a href="https://github.com/open-webui/open-webui/pull/30131" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30131/hovercard">#30131</a>, <a href="https://github.com/open-webui/open-webui/issues/30128" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30128/hovercard">#30128</a></li> <li>๐Ÿ’พ <strong>Deleted tool memory.</strong> Deleting a tool or a function left the whole of its code in memory for as long as the server ran; it is now let go of along with the rest. <a href="https://github.com/open-webui/open-webui/pull/29983" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29983/hovercard">#29983</a></li> <li>๐ŸŒ <strong>Sign-in rate limiting.</strong> Counting sign-in attempts through Redis no longer stops the whole worker until Redis answers, so a slow Redis stops freezing every other request with it. <a href="https://github.com/open-webui/open-webui/pull/29977" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29977/hovercard">#29977</a></li> <li>โ™ป๏ธ <strong>Session pool cleanup.</strong> The task that clears out abandoned websocket sessions now carries on through an error from Redis instead of ending for good, and stops properly at shutdown. <a href="https://github.com/open-webui/open-webui/pull/29976" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29976/hovercard">#29976</a>, <a href="https://github.com/open-webui/open-webui/pull/29979" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29979/hovercard">#29979</a></li> <li>๐Ÿ›ฐ๏ธ <strong>Direct connections across workers.</strong> A reply streamed over a direct connection no longer goes quiet part way through where several servers share their websocket traffic through Redis; the events it lives on now travel between workers the way the rest already did. <a href="https://github.com/open-webui/open-webui/commit/0180efecf362d487e0c30f040f5948c325fbe337">Commit</a></li> <li>๐Ÿซง <strong>Empty document ids.</strong> A save arriving for a document with no id at all was filed against that empty id and never cleared, so anyone signed in could pile them up; nothing is filed for it now. <a href="https://github.com/open-webui/open-webui/pull/29980" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29980/hovercard">#29980</a></li> <li>๐Ÿ”ฌ <strong>Page fetch CPU spin.</strong> Fetching a page through the browser-driven loader never returned where that page opened a WebSocket, holding a worker thread at full CPU for the life of the process and costing another core on every further fetch, which left the whole instance slow. <a href="https://github.com/open-webui/open-webui/pull/30050" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30050/hovercard">#30050</a>, <a href="https://github.com/open-webui/open-webui/issues/30024" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30024/hovercard">#30024</a></li> <li>๐Ÿ” <strong>Duplicate search tracebacks.</strong> A vector database outage wrote a full traceback twice for every collection and query pair, turning one outage into hundreds of identical stack traces per message on every replica; a single record now names every collection that failed. <a href="https://github.com/open-webui/open-webui/pull/29981" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29981/hovercard">#29981</a></li> <li>๐Ÿงฏ <strong>Page fetch logging.</strong> Fetching a page through the browser-driven loader filled the log with tracebacks where the page closed while it was still pulling pieces of itself, as sites behind Cloudflare and similar do; those requests are now let go of before the page closes. <a href="https://github.com/open-webui/open-webui/pull/29325" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29325/hovercard">#29325</a>, <a href="https://github.com/open-webui/open-webui/issues/28869" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28869/hovercard">#28869</a></li> <li>๐Ÿ“ค <strong>Tool export scope.</strong> Exporting all tools at once returned every tool the account could see, the source of a tool shared for reading included; it now returns only the tools it may edit, matching the single-tool export and the way models already export. <a href="https://github.com/open-webui/open-webui/pull/29310" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29310/hovercard">#29310</a></li> <li>๐Ÿ—ณ๏ธ <strong>Partial workspace exports.</strong> Exporting the prompts or the models from the workspace wrote out only the page you happened to be looking at, so most of them were quietly left out of the file; both now export everything you are allowed to. <a href="https://github.com/open-webui/open-webui/pull/30187" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30187/hovercard">#30187</a></li> <li>๐Ÿงณ <strong>Imported chats keep more.</strong> A chat brought back from an export arrived unpinned and unarchived and without the variables it was saved with, and all three now survive the round trip. <a href="https://github.com/open-webui/open-webui/pull/30155" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30155/hovercard">#30155</a>, <a href="https://github.com/open-webui/open-webui/pull/30151" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30151/hovercard">#30151</a></li> <li>๐Ÿ—‚๏ธ <strong>Unarchiving from search.</strong> The menu on a search result offered to archive a chat that was already archived and said it had been archived when it had been brought back, and it now names and reports whichever of the two it did. <a href="https://github.com/open-webui/open-webui/pull/30177" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30177/hovercard">#30177</a></li> <li>๐Ÿ™ˆ <strong>Folder filters with no match.</strong> A chat search narrowed by a folder name that matches no folder now finds nothing, where the folder filter was quietly dropped and every chat came back. <a href="https://github.com/open-webui/open-webui/pull/30273" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30273/hovercard">#30273</a>, <a href="https://github.com/open-webui/open-webui/discussions/29959">#29959</a></li> <li>๐Ÿงน <strong>Sidebar after bulk actions.</strong> Archiving, deleting or unarchiving every chat at once, or importing a batch of them, left the folders and the pinned chats in the sidebar showing what was no longer there until the page was reloaded, and a bulk action that failed no longer reports success. <a href="https://github.com/open-webui/open-webui/commit/8b3ee2827241ccc952a3073b2a6bbfad5df01827">Commit</a></li> <li>๐Ÿ” <strong>Model pictures follow model access.</strong> The picture belonging to a model is now shown only to people who can see that model, where anyone signed in could fetch it and tell an existing model from an unknown one by which picture came back. <a href="https://github.com/open-webui/open-webui/pull/29700" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29700/hovercard">#29700</a></li> <li>๐Ÿšช <strong>Webhook pictures follow channel access.</strong> The picture belonging to a channel webhook is now shown only to people with access to that channel, where anyone signed in could fetch it or be sent on to wherever it pointed, and it is refused outright where channels are turned off. <a href="https://github.com/open-webui/open-webui/pull/29703" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29703/hovercard">#29703</a></li> <li>๐Ÿ“Ž <strong>Safer Word document previews.</strong> Previewing a Word document no longer renders an HTML sub-document embedded inside it, and a link in one opens only where it points at a web address, a mail address or a telephone number. <a href="https://github.com/open-webui/open-webui/pull/29699" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29699/hovercard">#29699</a></li> <li>๐Ÿšฆ <strong>Citation link schemes.</strong> A source attached to a reply now opens only where it points at a web address, falling back to the panel that shows the source rather than following anything else. <a href="https://github.com/open-webui/open-webui/pull/29701" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29701/hovercard">#29701</a></li> <li>๐Ÿˆš <strong>Citation chips inside formatted text.</strong> A citation inside bold, italic or linked text now renders its chip, where the formatting took it and the citation vanished from the sentence. <a href="https://github.com/open-webui/open-webui/pull/30278" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30278/hovercard">#30278</a>, <a href="https://github.com/open-webui/open-webui/issues/30277" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30277/hovercard">#30277</a></li> <li>๐Ÿ <strong>Saving a tool or function.</strong> Saving a tool or function in the admin pages no longer fails with a missing module error from the built-in code formatter, which was not installing everything it needed. <a href="https://github.com/open-webui/open-webui/pull/29503" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29503/hovercard">#29503</a></li> <li>๐Ÿ› ๏ธ <strong>Tool request duplication.</strong> A tool that writes through an address carrying part of its input no longer has that part repeated in the body of the request as well, which servers checking their input strictly turned away, so those calls now go through. <a href="https://github.com/open-webui/open-webui/pull/29717" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29717/hovercard">#29717</a>, <a href="https://github.com/open-webui/open-webui/issues/29716" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29716/hovercard">#29716</a></li> <li>๐ŸŽ <strong>Answers survive on Apple Silicon.</strong> Asking a question that searches a knowledge base with a locally run reranking model no longer takes the whole server down on a Mac, losing the answer and the connection with it. <a href="https://github.com/open-webui/open-webui/pull/29735" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29735/hovercard">#29735</a>, <a href="https://github.com/open-webui/open-webui/issues/29722" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29722/hovercard">#29722</a></li> <li>๐Ÿ“š <strong>Web results stop being cited.</strong> Pages a web search only listed are no longer offered to the model as things to cite, which had it attaching a result id to text from a different result and the citations panel resolving that to a title that looked right. <a href="https://github.com/open-webui/open-webui/pull/29631" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29631/hovercard">#29631</a>, <a href="https://github.com/open-webui/open-webui/issues/29627" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29627/hovercard">#29627</a></li> <li>๐Ÿ”Ž <strong>SearchApi errors, news and links.</strong> Web search through searchapi.io now reports a bad key instead of coming back empty, reads the news results it returns alongside its ordinary ones, and hands the web loader the resolved destination link, so citations stop pointing at a redirect page. <a href="https://github.com/open-webui/open-webui/pull/30308" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30308/hovercard">#30308</a>, <a href="https://github.com/open-webui/open-webui/issues/30305" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30305/hovercard">#30305</a></li> <li>๐Ÿ”ผ <strong>Honest version checks.</strong> An instance that cannot reach the release listing now says the check failed, instead of reporting whatever it is running as the newest version and recording nothing about it. <a href="https://github.com/open-webui/open-webui/pull/29626" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29626/hovercard">#29626</a>, <a href="https://github.com/open-webui/open-webui/issues/29580" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29580/hovercard">#29580</a></li> <li>๐ŸŸ๏ธ <strong>Arena models report their errors.</strong> A message to an arena model whose provider answers with an error now shows that error in the chat, where it used to fail on something unrelated and leave the real reason unsaid, and titles and tags no longer break the same way. <a href="https://github.com/open-webui/open-webui/pull/29662" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29662/hovercard">#29662</a>, <a href="https://github.com/open-webui/open-webui/issues/29658" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29658/hovercard">#29658</a></li> <li>๐Ÿณ๏ธ <strong>Nameless tool calls fail once.</strong> A model endpoint that sends a tool call with no name at all now has that call fail on the spot, rather than the missing name being kept, stored with the message and sent back on the next turn for the endpoint to reject. <a href="https://github.com/open-webui/open-webui/pull/29690" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29690/hovercard">#29690</a>, <a href="https://github.com/open-webui/open-webui/issues/29686" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29686/hovercard">#29686</a></li> <li>๐Ÿงน <strong>Direct connections stop leaking listeners.</strong> A server talking to a direct connection no longer leaves a listener behind for every request that ends any way but a clean finish, which grew without limit while a connection kept failing. <a href="https://github.com/open-webui/open-webui/pull/29509" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29509/hovercard">#29509</a></li> <li>๐Ÿš€ <strong>Cheaper model refreshes.</strong> The model registry shared through Redis is now written only when the models themselves change, rather than on every refresh because of the countdown Ollama attaches to a model it holds in memory. <a href="https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311">Commit</a></li> <li>โœ๏ธ <strong>Continued reply text.</strong> Asking for the rest of a cut-off reply in a temporary chat replaced what was on screen with only the new text, because the message being continued was read back from the saved chat it did not have. It is now taken from the request before the model is called, the continuation joins the same message instead of arriving as a second one, on a connection whose provider is set to llama.cpp the model is told to carry on from the text it is handed rather than repeat it back, opening the result in the message editor no longer shows a line break where the two halves meet, and, where haptic feedback is switched on, a continuation buzzes as it streams like any other reply. <a href="https://github.com/open-webui/open-webui/commit/77d2000eb79e1cb6ae2004d40e8cca8c9e754cd0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6c7aa3543d21442241f6c53add5ff623ec816c44">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/57fc344873edc0db9e9f7ff3e9fb167cd80e3ef2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7eefeef4f17118f81c87acb464ad562803a6f26c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d418840aa9c4b77f613308cdaa4f2c6a062a8715">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3795d5b29253d4b8d7a0adbab457c7317c40f3c6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/57acc2b68f2f9e40b53aa7e609fdd52a4b0d15c4">Commit</a></li> <li>๐Ÿ”— <strong>Cancelled edits keep attachments.</strong> Cancelling the edit of a message no longer strips the files attached to it, where dropping the edit took the attachments down with it. <a href="https://github.com/open-webui/open-webui/pull/30281" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30281/hovercard">#30281</a>, <a href="https://github.com/open-webui/open-webui/issues/30192" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30192/hovercard">#30192</a></li> <li>๐ŸŽ๏ธ <strong>Faster media page reads.</strong> The browser-driven loader pulled every image, video and font a page referenced down through the server before any text was extracted, so a page carrying a few dozen audio players took ten seconds or timed out. Those requests are now dropped before they are made, and the same page comes back in under three seconds, having pulled 4 MB where it used to pull 55. <a href="https://github.com/open-webui/open-webui/pull/29742" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29742/hovercard">#29742</a>, <a href="https://github.com/open-webui/open-webui/issues/29741" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29741/hovercard">#29741</a></li> <li>๐Ÿ“ <strong>Starting a note from search.</strong> Starting a note from the search box now works when you are already on the notes page, keeps the whole of what you typed including characters such as ampersands and hashes, and no longer makes a further note each time the browser back button is pressed. <a href="https://github.com/open-webui/open-webui/pull/29645" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29645/hovercard">#29645</a>, <a href="https://github.com/open-webui/open-webui/issues/29642" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29642/hovercard">#29642</a></li> <li>๐Ÿ“ฑ <strong>Apple device replies.</strong> An assistant reply no longer comes up blank in a home screen app, an in-app browser or a desktop-class window on Apple devices, where the check that avoided the drawing fault only recognised Safari itself. <a href="https://github.com/open-webui/open-webui/pull/29734" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29734/hovercard">#29734</a>, <a href="https://github.com/open-webui/open-webui/issues/29688" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29688/hovercard">#29688</a>, <a href="https://github.com/open-webui/open-webui/issues/26712" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26712/hovercard">#26712</a></li> <li>๐Ÿ“Š <strong>Single source relevance.</strong> A reply drawing on a single source now shows how relevant that source is, where the figure appeared only once a second source joined it and so looked as though it came and went. <a href="https://github.com/open-webui/open-webui/pull/29647" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29647/hovercard">#29647</a>, <a href="https://github.com/open-webui/open-webui/issues/29646" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29646/hovercard">#29646</a></li> <li>๐Ÿ”ง <strong>Arduino sketches upload to knowledge.</strong> A sketch file now reaches the plain text reader like the C++ and header files beside it, rather than being handed to a document extraction server that could make nothing of it and failing the upload. <a href="https://github.com/open-webui/open-webui/pull/29673" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29673/hovercard">#29673</a>, <a href="https://github.com/open-webui/open-webui/issues/29670" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29670/hovercard">#29670</a></li> <li>๐Ÿ“ฐ <strong>Docling conversion failures.</strong> A file that Docling refuses or fails to convert now fails the upload with the reason Docling gave, rather than breaking with a raw error or quietly filing a placeholder that was then indexed and handed to the model in place of the file. <a href="https://github.com/open-webui/open-webui/pull/30107" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30107/hovercard">#30107</a>, <a href="https://github.com/open-webui/open-webui/issues/29808" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29808/hovercard">#29808</a></li> <li>๐Ÿ“„ <strong>Uploaded text kept as written.</strong> A file whose text contains escape sequences such as the one standing for a non-breaking space is now stored and read by the model exactly as it was written, rather than having some of them rewritten depending on where in the file they sat. <a href="https://github.com/open-webui/open-webui/pull/29736" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29736/hovercard">#29736</a>, <a href="https://github.com/open-webui/open-webui/issues/29732" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29732/hovercard">#29732</a></li> <li>๐Ÿ”ฆ <strong>Readable slash command labels.</strong> The entries in the slash command menu no longer show as white text on a white background in the light theme. <a href="https://github.com/open-webui/open-webui/pull/29512" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29512/hovercard">#29512</a>, <a href="https://github.com/open-webui/open-webui/issues/29510" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29510/hovercard">#29510</a></li> <li>โŒจ๏ธ <strong>Literal arrow sequences.</strong> A sequence such as three hyphens after a less-than sign is now shown as the characters it is made of rather than drawn as an arrow, which had text look changed when it never was. <a href="https://github.com/open-webui/open-webui/pull/29595" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29595/hovercard">#29595</a>, <a href="https://github.com/open-webui/open-webui/issues/29594" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29594/hovercard">#29594</a></li> <li>๐Ÿ–Œ๏ธ <strong>Editing an image you uploaded.</strong> An image already held by Open WebUI can now be used with image editing, where fetching its own link back over the network could fail on a private network or without a sign-in. <a href="https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38">Commit</a></li> <li>๐Ÿ–ผ <strong>Playground image edits.</strong> Editing an image in the Images playground now works, where every attempt came back rejected since the request carried its fields under a heading the endpoint never read. <a href="https://github.com/open-webui/open-webui/commit/c07fa08b995e8d1a1fc2d94a88d8cea691bdc5ee">Commit</a></li> <li>๐ŸŽจ <strong>A tidier attach webpage dialog.</strong> The row holding the Add button no longer carries a grey band of its own between the address box and the button, matching every other dialog. <a href="https://github.com/open-webui/open-webui/pull/29664" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29664/hovercard">#29664</a>, <a href="https://github.com/open-webui/open-webui/issues/29663" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29663/hovercard">#29663</a></li> <li>๐Ÿ–ฑ๏ธ <strong>A plain note date.</strong> The date under a note title no longer shows a pointing hand or announces itself as something to press, having never done anything when clicked. <a href="https://github.com/open-webui/open-webui/pull/29708" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29708/hovercard">#29708</a></li> <li>๐ŸŒ‡ <strong>Folder backgrounds on creation.</strong> The background image picked in the Create Folder dialog now arrives on the folder when it is created from the sidebar, where the image was discarded unless the dialog was opened from an existing folder. <a href="https://github.com/open-webui/open-webui/pull/30218" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30218/hovercard">#30218</a>, <a href="https://github.com/open-webui/open-webui/issues/30217" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30217/hovercard">#30217</a></li> <li>๐Ÿ–‡ <strong>Delete Chat shortcut everywhere.</strong> The keyboard shortcut that deletes the open chat now works wherever the chat was opened from, where it did nothing unless the chat's row happened to be on screen in the sidebar at that moment. <a href="https://github.com/open-webui/open-webui/pull/30165" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30165/hovercard">#30165</a>, <a href="https://github.com/open-webui/open-webui/issues/30164" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30164/hovercard">#30164</a></li> <li>๐Ÿšฎ <strong>Retired chat variables.</strong> A model whose system prompt no longer declares a variable a previous prompt did stops asking for it, where every new chat kept opening the dialog and refusing to send until a value was entered. <a href="https://github.com/open-webui/open-webui/pull/30173" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30173/hovercard">#30173</a>, <a href="https://github.com/open-webui/open-webui/issues/30172" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/30172/hovercard">#30172</a></li> <li>๐Ÿ‘๏ธ <strong>Compact hover previews in Safari.</strong> Holding over a chat in the sidebar shows the small preview every other browser shows, rather than one laid out at the width and spacing of a full conversation. <a href="https://github.com/open-webui/open-webui/pull/29734" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29734/hovercard">#29734</a></li> <li>๐Ÿ”– <strong>Visible title generation faults.</strong> When a new chat's automatic title cannot be generated, the reason now reaches the log at the default level, rather than only under debug logging where a broken feature looked the same as a switched-off one. <a href="https://github.com/open-webui/open-webui/pull/30106" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/30106/hovercard">#30106</a>, <a href="https://github.com/open-webui/open-webui/issues/29533" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29533/hovercard">#29533</a></li> </ul> <h3>Changed</h3> <ul> <li>๐Ÿชถ <strong>Slim starts with nothing configured.</strong> The slim image leaves out the local models and the libraries around them, and still starts and holds a conversation on its defaults; the features that leaned on those models each need an external service of their own. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a></li> <li>๐Ÿ—„๏ธ <strong>Slim database support.</strong> The slim image runs on SQLite, its default, or on PostgreSQL; pointed at MySQL, MariaDB or another engine, or started with AWS RDS IAM logins switched on, it stops with an error instead of starting, and those deployments need the standard image. <a href="https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4">Commit</a></li> <li>๐Ÿ“ <strong>Slim file storage.</strong> The slim image keeps files on local storage, its default; configured for an S3, Google Cloud or Azure bucket, it stops with an error instead of starting, and those deployments need the standard image. <a href="https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4">Commit</a></li> <li>๐Ÿงฎ <strong>Slim searches only through pgvector.</strong> Knowledge search on the slim image needs PostgreSQL with pgvector, and configured for another vector store the instance still starts, and the failure arrives the first time something is searched rather than at startup. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4">Commit</a></li> <li>๐Ÿง  <strong>Slim embedding requirements.</strong> The slim image carries no embedding or reranking model, so knowledge needs OpenAI, Ollama or Azure OpenAI embeddings and an external reranker, falling back to plain cosine scoring where none is set. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a></li> <li>โœ‚๏ธ <strong>Slim document splitting.</strong> Splitting a document along a downloaded tokenizer is unavailable on the slim image, which leaves splitting by character or by token count. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a></li> <li>๐Ÿ“ƒ <strong>Slim document readers.</strong> The slim image reads text, Markdown, CSV, HTML and XML files as they are; uploading a PDF, a Word file or a presentation fails unless one of the external document extractors is configured. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a></li> <li>๐ŸŽ™๏ธ <strong>Slim speech requirements.</strong> The slim image carries neither local Whisper nor local voices, so speech to text and text to speech need an external engine before they will work. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a></li> <li>๐Ÿ•ธ๏ธ <strong>Slim web page fetching.</strong> The slim image carries no headless browser, so a web page is fetched over plain HTTP or through an external loader, and a page that draws itself with JavaScript comes back with less of its content than on the standard image. <a href="https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4">Commit</a></li> <li>๐Ÿ”Ž <strong>Slim leaves out DDGS.</strong> DDGS, the metasearch provider that needs no key of its own, is not carried in the slim image, so web search there needs a provider with a key. <a href="https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0">Commit</a></li> <li>๐Ÿ“ฅ <strong>Slim code interpreter packages.</strong> The slim image leaves out the code interpreter's packages, so the browser fetches numpy, pandas, matplotlib, scikit-learn and the rest from "cdn.jsdelivr.net" and the interpreter stops working where that is blocked. <a href="https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52">Commit</a></li> <li>๐Ÿงฐ <strong>Slim git requirements.</strong> The slim image no longer carries git, so a tool or function whose requirements point at a "git+https://" address fails to install and needs the standard image or a published package. <a href="https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc">Commit</a></li> <li>๐Ÿงบ <strong>LangChain community removal.</strong> The readers for text, HTML, Word, CSV, PDF and Azure Document Intelligence are now written here rather than taken from "langchain-community", which is no longer installed; a tool or function importing it has to name it in its own requirements from now on. <a href="https://github.com/open-webui/open-webui/commit/05484aa055a868a49842e1ddff169c19c98b755b">Commit</a></li> <li>๐Ÿงพ <strong>Undeclared package imports.</strong> Packages that sat in the image only by accident, among them nltk, pymongo, the Google Drive client and the Gemini SDK, are no longer installed, so a tool or function importing one must name it in its own requirements. <a href="https://github.com/open-webui/open-webui/pull/29725" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29725/hovercard">#29725</a>, <a href="https://github.com/open-webui/open-webui/pull/29726" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29726/hovercard">#29726</a>, <a href="https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51">Commit</a></li> <li>๐Ÿ†” <strong>Model ID whitespace.</strong> A workspace model whose ID contains a space or a tab is now refused in the editor, through the API and on import; one already stored goes on answering but cannot be saved again until it is recreated. <a href="https://github.com/open-webui/open-webui/commit/8a19e2f867063256bb2836649e2fe80af41ef748">Commit</a></li> <li>๐Ÿ–‡๏ธ <strong>Link scheme rendering.</strong> A link in a reply, a citation or a web search result is now rendered only where it points at a web address, a mail address, a telephone number or somewhere inside this instance; anything else, an "ftp://" address or an application link such as "obsidian://" or "vscode://" among them, is shown as the text it is. Two old oddities go with it: a source written as "HTTP://" now becomes a link, and a filename merely containing the letters http no longer becomes one that leads nowhere. <a href="https://github.com/open-webui/open-webui/pull/29890" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29890/hovercard">#29890</a></li> <li>๐Ÿงฒ <strong>Integrations tab is opt-in.</strong> The Integrations tab in personal settings, where tool and terminal connections of your own are managed, is now hidden until an administrator turns on Direct Integrations under Integrations or sets "ENABLE_DIRECT_INTEGRATIONS", and hiding it leaves existing connections working. <a href="https://github.com/open-webui/open-webui/commit/6d8e63e3666e1b1aa5540ffda0816be5f40c5271">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c82634b9d01adadbf9780ff84a0a8168fdc4fdea">Commit</a></li> <li>๐Ÿ“ก <strong>Image connection check endpoint.</strong> The endpoint that checks an image generation connection has moved and now takes the connection to test in the request itself, so anything calling the old address needs updating. <a href="https://github.com/open-webui/open-webui/commit/64bbdf7a73724986fac8bcf6e880fe32ef9ac495">Commit</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.11.3 2026-08-31T14:55:53Z

v0.11.3

<h3>Added</h3> <ul> <li>โ™ฟ <strong>Accessibility mode reaches the menus.</strong> Accessibility mode now marks the menu entry you are pointing at and the model already chosen with a stronger background, across the dropdown menus, their submenus, and the model picker together with its filter and compare controls, so those cues carry the contrast the accessibility guidelines ask for in both themes. <a href="https://github.com/open-webui/open-webui/commit/a6f9751401589ee73208295b6f6a7f6eae9c1b44">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/471b5cbbb16c3996c32e68808dde6f8898f64ecd">Commit</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Translation updates.</strong> Translations for Indonesian were enhanced and expanded.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ’ฅ <strong>Chat branches stay connected after reloads.</strong> A reply saved under an earlier message now stays listed under that message, so branch arrows, exports, reloads, and later edits keep the whole conversation in view, and chats already saved with that link missing are repaired when opened. <a href="https://github.com/open-webui/open-webui/issues/29299" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29299/hovercard">#29299</a></li> <li>๐Ÿงฑ <strong>Upgrades fail clearly instead of starting half updated.</strong> A failed database upgrade now stops at the migration error that caused it, instead of starting anyway and reporting a missing table or column such as 'chat.timer_at' later, which is the upgrade failure seen after moving from 0.11.0, 0.11.1, or 0.11.2. <a href="https://github.com/open-webui/open-webui/issues/29280" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29280/hovercard">#29280</a></li> <li>๐Ÿ”ค <strong>Custom interface fonts reach more of the app.</strong> The font chosen in interface settings now applies to dropdowns and other interface text that previously fell back to the standard font. <a href="https://github.com/open-webui/open-webui/commit/1457000ba66547b24bd98012aa35ac16fd4bc696">Commit</a></li> <li>๐Ÿ”Œ <strong>Disconnect OAuth only where there is OAuth.</strong> The disconnect control on a tool server reached over MCP now appears only where that server signs in through OAuth and an account is connected, rather than on servers that use no sign-in at all. <a href="https://github.com/open-webui/open-webui/issues/29296" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29296/hovercard">#29296</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.11.2 2026-08-31T05:48:23Z

v0.11.2

<h3>Added</h3> <ul> <li>๐Ÿ–ผ๏ธ <strong>Richer previews for terminal files.</strong> Word documents and slide decks produced in the terminal are now previewed as the finished document rather than an approximation, and every document preview gains a page strip down the side with numbered thumbnails you can click to jump straight to a page, and the notice warning that a preview might differ from the download is gone now that it does not. <a href="https://github.com/open-webui/open-webui/commit/061fb434328ea8365cc4961519e8adbe5ac7b0c1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9d95a0148b3180ba48186bc6928713f969a69047">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ae549d3e4af672a63a809e8fe2a6c91e0bfc1067">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/78d8c9166f1b6626b9aa559a812183ce216eef4f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/492ccf3ac0d9aec1f3f2bc6825a3e6d3b32aa0d1">Commit</a></li> <li>โšก <strong>Less overhead on every message.</strong> Deployments without pipelines configured, which is the default, no longer pay setup work for them on each chat message and background task. <a href="https://github.com/open-webui/open-webui/pull/29146" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29146/hovercard">#29146</a></li> <li>๐ŸŽ๏ธ <strong>Lighter model list refreshes.</strong> On deployments running several workers, a refresh that finds the model list unchanged no longer has every worker rewrite the whole list to the shared cache, cutting the work and the traffic each refresh costs. <a href="https://github.com/open-webui/open-webui/pull/29264" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29264/hovercard">#29264</a></li> <li>๐Ÿงต <strong>Smoother busy websocket servers.</strong> Large Redis-backed websocket deployments now spend far less time sweeping old sessions, reading their own session data back from Redis, and checking every outgoing websocket message for file attachments Open WebUI does not send, so channel posts, collaboration updates, heartbeats, and live chat updates put less load on busy servers. <a href="https://github.com/open-webui/open-webui/pull/28835" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28835/hovercard">#28835</a>, <a href="https://github.com/open-webui/open-webui/pull/28180" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28180/hovercard">#28180</a></li> <li>๐Ÿงฐ <strong>A new request filter step.</strong> Filter authors can now use <code>request</code> to adjust the payload right before each model call, including follow-up calls after tool use, while existing <code>inlet</code>, <code>stream</code>, and <code>outlet</code> filters keep working as before. <a href="https://github.com/open-webui/open-webui/commit/2daa610cba514dfe2eae008b1fc440d4ddb0e470">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2a4ef46ac86ada3447eb6d6c50fd4c1241eebd4d">Commit</a></li> <li>๐Ÿค <strong>More room in file previews on touch screens.</strong> File previews on phones and tablets no longer show zoom buttons that sit over an already small preview, leaving pinch to zoom to do the job. <a href="https://github.com/open-webui/open-webui/pull/29176" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29176/hovercard">#29176</a>, <a href="https://github.com/open-webui/open-webui/issues/29152" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29152/hovercard">#29152</a></li> <li>๐Ÿ‘† <strong>Resizing panels by touch.</strong> The divider beside the main sidebar or a side panel can now be dragged on a touchscreen or with a stylus, and a drag made with the mouse keeps following the pointer when it leaves the window. <a href="https://github.com/open-webui/open-webui/commit/cfa2d25317b426c80dca43829afbf113eeccc365">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f0ffa7508e75946434794941378675e0c7151eae">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e250be48ee16d71202651e4109a175910a6519bb">Commit</a></li> <li>๐Ÿ”ค <strong>Choice of interface font.</strong> Interface settings now offer a font family field where you can name a font installed on your computer and watch it apply across the interface as you type, with an empty field returning to the standard font. <a href="https://github.com/open-webui/open-webui/commit/b9765fe97943831e17a68490cd01c70a6ccf1c43">Commit</a></li> <li>โ™ฟ <strong>Wider accessibility mode coverage.</strong> Accessibility mode now lifts the contrast of more of the interface, including muted text, table text, icons, the colours elements change to on hover, and the highlight behind sidebar and menu items you point at, so low-contrast areas meet the level the accessibility guidelines ask for in both light and dark themes, and the close button on the folder dialog now announces itself to screen readers, as do document and slide previews, which can now be reached with the keyboard. <a href="https://github.com/open-webui/open-webui/commit/e6031ea6daec897eddbcf0c8b03c2d6fad2b506e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/797b4c51d1e31f614c8e6eba14ee347c61ad0c7a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/29160" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29160/hovercard">#29160</a>, <a href="https://github.com/open-webui/open-webui/commit/e4694f82ebd2e916c099e5e921c0ca8445ba88a7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/120409ef016c1e866247e2aa1eba7606f797a20c">Commit</a></li> <li>๐ŸŒ <strong>Translation updates.</strong> Polish, Simplified Chinese, German, Irish, Catalan, and Portuguese (Brazil) translations were expanded, corrected, and brought up to date with newer interface text. <a href="https://github.com/open-webui/open-webui/pull/29029" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29029/hovercard">#29029</a>, <a href="https://github.com/open-webui/open-webui/pull/29043" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29043/hovercard">#29043</a>, <a href="https://github.com/open-webui/open-webui/pull/29108" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29108/hovercard">#29108</a>, <a href="https://github.com/open-webui/open-webui/pull/29151" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29151/hovercard">#29151</a>, <a href="https://github.com/open-webui/open-webui/pull/29184" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29184/hovercard">#29184</a>, <a href="https://github.com/open-webui/open-webui/pull/29179" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29179/hovercard">#29179</a>, <a href="https://github.com/open-webui/open-webui/pull/29247" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29247/hovercard">#29247</a>, <a href="https://github.com/open-webui/open-webui/pull/29217" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29217/hovercard">#29217</a></li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section. Some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ’ฅ <strong>Replies stop breaking mid-chat.</strong> A conversation no longer fails in the browser and stops showing the assistant reply until you reload, and chats already saved in that state display and can be edited again. <a href="https://github.com/open-webui/open-webui/pull/29250" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29250/hovercard">#29250</a>, <a href="https://github.com/open-webui/open-webui/issues/29244" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29244/hovercard">#29244</a></li> <li>โŒจ๏ธ <strong>Preview shortcuts stay in the preview.</strong> Arrow keys now page a document or slide preview only while that preview has focus, instead of paging it from anywhere on the page and taking the arrow keys away from whatever you were typing in. <a href="https://github.com/open-webui/open-webui/commit/b356b80f8c86d110951301b83607de245b4ef6cc">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e4694f82ebd2e916c099e5e921c0ca8445ba88a7">Commit</a></li> <li>๐ŸงŠ <strong>Streaming no longer stalls on reasoning models.</strong> A reply from a reasoning model now streams through to the end instead of showing its first few words and then freezing until generation finishes. <a href="https://github.com/open-webui/open-webui/pull/29053" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29053/hovercard">#29053</a>, <a href="https://github.com/open-webui/open-webui/issues/29035" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29035/hovercard">#29035</a></li> <li>๐Ÿ’ญ <strong>Thinking stays in Thoughts.</strong> After a model uses a tool, its reasoning for the next step now appears in the collapsed Thoughts section instead of being written into the reply as ordinary text. <a href="https://github.com/open-webui/open-webui/pull/29052" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29052/hovercard">#29052</a>, <a href="https://github.com/open-webui/open-webui/issues/29040" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29040/hovercard">#29040</a></li> <li>๐Ÿง  <strong>Large tool calls stream faster through Anthropic-compatible clients.</strong> When a streamed tool call sends a large block of arguments, Open WebUI now waits until that block can actually be complete before checking it, instead of doing the same expensive check again on every tiny piece. <a href="https://github.com/open-webui/open-webui/pull/28858" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28858/hovercard">#28858</a></li> <li>๐Ÿ›‘ <strong>Stop works across instances.</strong> Stopping a response now takes effect on deployments that spread people across several instances backed by a Redis cluster, instead of the reply continuing to the end regardless. <a href="https://github.com/open-webui/open-webui/pull/29165" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29165/hovercard">#29165</a>, <a href="https://github.com/open-webui/open-webui/issues/19840" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/19840/hovercard">#19840</a></li> <li>๐ŸŽฏ <strong>Fewer needless chat reloads.</strong> A conversation holding an older unfinished reply no longer reloads itself each time some other response in it finishes, reloading only for the reply the update actually concerns. <a href="https://github.com/open-webui/open-webui/commit/22379ded1aebf0537e1ee3f00a20809d47646bf6">Commit</a></li> <li>๐Ÿ“– <strong>Banners with underlined text.</strong> A banner containing underlined text now displays instead of failing to render. <a href="https://github.com/open-webui/open-webui/pull/29118" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29118/hovercard">#29118</a>, <a href="https://github.com/open-webui/open-webui/issues/29115" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29115/hovercard">#29115</a></li> <li>๐Ÿงฐ <strong>Pinned models start with their own tools.</strong> Starting a chat from a pinned model in the sidebar now applies that model's tools and skills instead of carrying over the ones from the model you used last. <a href="https://github.com/open-webui/open-webui/pull/29058" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29058/hovercard">#29058</a>, <a href="https://github.com/open-webui/open-webui/issues/29050" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29050/hovercard">#29050</a></li> <li>โ“ <strong>Rejected ask_user calls no longer kill the reply.</strong> If a model asks the user a question in a way Open WebUI refuses, the model now receives that error and can continue or retry, instead of leaving the chat stopped with no answer. <a href="https://github.com/open-webui/open-webui/pull/29252" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29252/hovercard">#29252</a>, <a href="https://github.com/open-webui/open-webui/issues/29077" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29077/hovercard">#29077</a></li> <li>๐Ÿšซ <strong>Disabled models no longer vanish.</strong> Turning a model off in the admin Models list now keeps it in view so you can turn it back on, instead of it disappearing with no way to recover it. <a href="https://github.com/open-webui/open-webui/pull/29037" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29037/hovercard">#29037</a>, <a href="https://github.com/open-webui/open-webui/issues/29036" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29036/hovercard">#29036</a></li> <li>โœ‚๏ธ <strong>Message text kept intact.</strong> Text containing angle brackets and a dollar sign is no longer mistaken for a skill mention and silently removed before your message reaches the model. <a href="https://github.com/open-webui/open-webui/pull/29051" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29051/hovercard">#29051</a>, <a href="https://github.com/open-webui/open-webui/issues/29041" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29041/hovercard">#29041</a></li> <li>๐Ÿ“† <strong>Moved calendar events stay visible.</strong> Changing an event's date no longer makes it disappear from the calendar, and events already stuck in that state show up again. <a href="https://github.com/open-webui/open-webui/pull/29085" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29085/hovercard">#29085</a>, <a href="https://github.com/open-webui/open-webui/issues/29067" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29067/hovercard">#29067</a></li> <li>๐Ÿ” <strong>Repeats follow the event.</strong> A repeating event now works out its occurrences from its own date and time, where a repeat rule carrying a start date of its own could place them on the wrong weekday or at the wrong hour. <a href="https://github.com/open-webui/open-webui/commit/a93c5080380447e3ab9113cacb73b61c57cbc308">Commit</a></li> <li>๐Ÿ”Ÿ <strong>Repeating automations keep their count.</strong> An automation set to run a fixed number of times is no longer shown as running once and quietly rewritten to a single run the next time you open and save it. <a href="https://github.com/open-webui/open-webui/pull/29261" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29261/hovercard">#29261</a>, <a href="https://github.com/open-webui/open-webui/pull/29263" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29263/hovercard">#29263</a></li> <li>๐Ÿ—“๏ธ <strong>Schedules survive a save.</strong> An automation carrying a start date now shows its real schedule in the list and keeps its weekly or monthly setting when saved, instead of showing raw rule text and falling back to daily. <a href="https://github.com/open-webui/open-webui/pull/29263" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29263/hovercard">#29263</a></li> <li>๐Ÿงฉ <strong>Custom automation schedules stay custom.</strong> Reopening an automation with a custom repeat rule no longer loses the custom rule from the editor. <a href="https://github.com/open-webui/open-webui/pull/29260" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29260/hovercard">#29260</a></li> <li>๐Ÿ”ข <strong>Accurate admin user counts.</strong> The counts on the admin Users tabs now follow your search and reset when you switch tabs, instead of showing stale or unfiltered numbers. <a href="https://github.com/open-webui/open-webui/pull/29080" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29080/hovercard">#29080</a>, <a href="https://github.com/open-webui/open-webui/issues/29079" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29079/hovercard">#29079</a></li> <li>๐Ÿงท <strong>Sidebar folders stop acting stale.</strong> A folder that has been removed from the sidebar is now removed from the internal sidebar registry too, so later sidebar actions do not target a folder that is no longer on screen. <a href="https://github.com/open-webui/open-webui/pull/29121" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29121/hovercard">#29121</a></li> <li>๐Ÿ“ฑ <strong>Readable model list on small screens.</strong> The model identifier and timestamp in the workspace model list no longer overlap the model name on narrow displays. <a href="https://github.com/open-webui/open-webui/pull/29084" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29084/hovercard">#29084</a>, <a href="https://github.com/open-webui/open-webui/issues/29083" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29083/hovercard">#29083</a></li> <li>๐Ÿงฑ <strong>Long setting values stop crushing labels.</strong> Settings rows now let long controls shrink inside the available space instead of squeezing the label beside them. <a href="https://github.com/open-webui/open-webui/pull/29229" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29229/hovercard">#29229</a></li> <li>๐Ÿงญ <strong>Model defaults panels stay usable.</strong> The model capabilities and prompt suggestion sections in admin settings now scroll inside their panels instead of growing past the available space. <a href="https://github.com/open-webui/open-webui/pull/29235" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29235/hovercard">#29235</a></li> <li>๐Ÿ“ฒ <strong>Dropdowns stay on screen.</strong> A dropdown near the edge of a narrow screen now shifts inward to stay fully visible instead of opening past the edge with its option labels cut off. <a href="https://github.com/open-webui/open-webui/pull/29226" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29226/hovercard">#29226</a>, <a href="https://github.com/open-webui/open-webui/issues/29225" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29225/hovercard">#29225</a></li> <li>๐ŸŒ— <strong>Dropdown lists follow the theme.</strong> The list a dropdown opens now takes its light or dark colouring from the rest of the interface instead of the system default. <a href="https://github.com/open-webui/open-webui/commit/58a3fadbf336029733d6e5fdde05fd5a24e656fa">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Valves dialog stays in bounds.</strong> A valve whose selected options form a long line no longer stretches its input past the edge of the dialog and over the page behind it. <a href="https://github.com/open-webui/open-webui/pull/29203" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29203/hovercard">#29203</a>, <a href="https://github.com/open-webui/open-webui/issues/29202" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29202/hovercard">#29202</a></li> <li>๐Ÿงน <strong>Shared chats search resets.</strong> Reopening the shared chats dialog now starts with an empty search box and the full list, rather than a leftover search term above unfiltered results. <a href="https://github.com/open-webui/open-webui/pull/29082" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29082/hovercard">#29082</a>, <a href="https://github.com/open-webui/open-webui/issues/29081" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29081/hovercard">#29081</a></li> <li>๐Ÿ”Ž <strong>Case-insensitive search beyond English.</strong> Searching and filtering by tag now ignore letter case for accented and non-Latin text on installations backed by SQLite, where only unaccented English letters were matched whatever their case. <a href="https://github.com/open-webui/open-webui/commit/26f37426b7ef6c0c3b1363f413ac9a83ccaaeb71">Commit</a></li> <li>๐Ÿท๏ธ <strong>Labels with colons and example URLs translate correctly.</strong> Interface text such as <code>Warning:</code>, <code>http://localhost:8000</code>, and <code>https://mineru.net/api/v4</code> now appears correctly instead of being misread by the translation system. <a href="https://github.com/open-webui/open-webui/pull/29161" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29161/hovercard">#29161</a>, <a href="https://github.com/open-webui/open-webui/issues/29154" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29154/hovercard">#29154</a></li> <li>๐Ÿ”‘ <strong>Precise account matching on SQLite.</strong> Signing in through an identity provider now matches your account on its exact identifier, so accounts whose identifier is an unusually long or zero-padded number are no longer at risk of being confused with another. <a href="https://github.com/open-webui/open-webui/commit/17cc566707cd2ee78b460e39c7fad23b9c258c70">Commit</a></li> <li>๐Ÿ—ƒ๏ธ <strong>Knowledge list loads reliably.</strong> The Knowledge page in the workspace now fills in its list on opening instead of occasionally staying empty. <a href="https://github.com/open-webui/open-webui/commit/e6031ea6daec897eddbcf0c8b03c2d6fad2b506e">Commit</a></li> <li>๐ŸŽŸ๏ธ <strong>Tool servers without a key.</strong> A tool server connection saved without a key is no longer sent an empty authorization header, which some servers refused outright. <a href="https://github.com/open-webui/open-webui/commit/26f37426b7ef6c0c3b1363f413ac9a83ccaaeb71">Commit</a></li> <li>๐Ÿ <strong>Code interpreter starts on Windows.</strong> The built-in code interpreter now serves its script and WebAssembly files with the browser-safe file types Windows hosts sometimes overwrite, so Pyodide can load instead of failing before code runs. <a href="https://github.com/open-webui/open-webui/pull/29139" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29139/hovercard">#29139</a>, <a href="https://github.com/open-webui/open-webui/issues/29133" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29133/hovercard">#29133</a></li> </ul> <h3>Changed</h3> <ul> <li>โฑ๏ธ <strong>Daily limit on repeats.</strong> A calendar event can no longer be set to repeat more often than once a day, and saving one that repeats more often is now refused with a message explaining the limit. <a href="https://github.com/open-webui/open-webui/commit/a93c5080380447e3ab9113cacb73b61c57cbc308">Commit</a></li> <li>๐Ÿท๏ธ <strong>High Contrast Mode is now Accessibility Mode.</strong> The interface setting previously called 'High Contrast Mode' is now called 'Accessibility Mode', with the same switch in the same place. <a href="https://github.com/open-webui/open-webui/commit/e6031ea6daec897eddbcf0c8b03c2d6fad2b506e">Commit</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.11.1 2026-08-25T21:17:57Z

v0.11.1

<h3>Added</h3> <ul> <li>๐Ÿšฆ <strong>Human in the loop tool approval.</strong> Where an administrator has turned it on, you can switch a conversation from letting tools run freely to being asked first, so a model that wants to use a tool stops and waits for you to allow or deny it, one call at a time in a saved conversation, by button or by keyboard shortcut, with your choice remembered for this conversation and for future ones, switching back to running freely releasing anything already waiting, and automations, channel replies, and temporary chats unaffected. <a href="https://github.com/open-webui/open-webui/commit/7d99b2716a0472b2100b3a71825d8eb3fcbbe877">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ec36972c2b5a8d48713f1a240b0ed305e535b4cc">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/653562d660398c32a9a193450bbbee300d7195c3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/fa94a5ab2431edba064150651a14dd4992ef29e8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/55c202e841e76cd69679206cd0ecb4a65b039ea4">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/30f82788bc75e6965da3766e3bf43840dd971eed">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bbfdbd59f29e246db1d8b5c2401bc7b11aa32c99">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7fc5fa1ff3f6cd6f0efcbf847064ca8d21620ba6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3eb65f47151af4fb4ccfaf33d6e77154546e7259">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/62fc436999ad32e82d1405ac14d1f03e0f0341ec">Commit</a></li> <li>๐Ÿ™‹โ€โ™‚๏ธ <strong>Models that can ask you a question.</strong> A new built-in tool lets a model pause and put up to three multiple-choice questions to you before continuing, with room to type your own answer instead, and the question survives a reload in a saved conversation, so you can come back and answer it later rather than losing the conversation. <a href="https://github.com/open-webui/open-webui/commit/4465f52a3eb521854cf190f91b0ea7cf3fa21830">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/133549a87ee371577453d897c2db2d8071223f27">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b018feb7419e68314378b3cdd8b7b1b389400a98">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/083e35144152d6a301bed01aa6d898db3871ddcf">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/256cce505be8ddd4930e8cb2536faea718d3f789">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/14e4d72d9a21a10196e8e6efb04180cd9104b8e6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/57bd08304e45f707768a898de9f50894929008dd">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d9014b3483d4c6e8d99e50395afcdc538bcf05cd">Commit</a></li> <li>๐Ÿ–‡ <strong>Agents can now display terminal files directly.</strong> A model can now show a file it made in a terminal directly in its reply, with a preview and a download button, instead of describing a path that led nowhere when clicked, and a new interface setting chooses whether these open in the reply or in the files pane. <a href="https://github.com/open-webui/open-webui/commit/78f48a21eef330c0b78c33f2b5fc2169b084997c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e623c02acc70c4ee5d7f2eb2f32d9b7f39287663">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f64c0c87e8d1bfdbe060ea5e5a3dee24c0323657">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27650" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27650/hovercard">#27650</a></li> <li>๐Ÿ“ถ <strong>Streaming rebuilt from the ground up.</strong> A reply now streams as small pieces of new text instead of resending the whole message so far with every update, so the data sent over a reply grows with its length rather than with its length squared, which on a server with many people chatting at once means far less processor time spent encoding, passing, and decoding those updates, far less load and memory on the shared cache that carries them between instances, and far less work in your browser, which no longer takes in the whole reply again and redraws the parts of it that have not changed on every update, cutting the data sent and the server work spent appending to a message by up to 1000x on a very long reply, and a reply still in progress is now kept aside on the server, so reopening the conversation after a refresh picks it up where it is rather than showing a blank message, on deployments backed by Redis. <a href="https://github.com/open-webui/open-webui/commit/a1579a01ff43cacb357269707d36267ad35e01d6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c755ef60c6bd47ea25306bd898d9a6d1bd8e871d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d02b6a21fc02fb073782e25356968cfee3c45c36">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3e186abdd91edee9e97e43c9b345714643a84cf5">Commit</a></li> <li>๐Ÿชต <strong>Much faster throughout.</strong> Hundreds of places across the application no longer assemble detailed log text that is switched off and thrown away unread, so sending messages, uploading and indexing files, running searches, signing in, and loading admin pages all get that time back, with the largest gains on busy servers, in long conversations, and on chats that draw from a large knowledge base. <a href="https://github.com/open-webui/open-webui/pull/27834" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27834/hovercard">#27834</a>, <a href="https://github.com/open-webui/open-webui/pull/27837" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27837/hovercard">#27837</a></li> <li>๐Ÿš€ <strong>Faster model list lookups.</strong> Title generation, tag suggestions, autocomplete, and other background steps of a chat turn now fetch the model list in one go, which keeps other people's responses flowing on busy Redis-backed instances with many models. <a href="https://github.com/open-webui/open-webui/pull/27821" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27821/hovercard">#27821</a></li> <li>๐Ÿ›ฐ๏ธ <strong>Cheaper log export.</strong> Deployments that export their logs to a telemetry collector, with "ENABLE_OTEL" and "ENABLE_OTEL_LOGS" both set, now prepare each exported line once instead of twice, which matters more than it used to now that log text is only assembled when something will actually read it. <a href="https://github.com/open-webui/open-webui/pull/27840" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27840/hovercard">#27840</a></li> <li>๐Ÿ“‡ <strong>Faster permission checks on large instances.</strong> Working out which groups you belong to is now a direct lookup rather than a scan of every membership on the server, so chats and the admin user list stay quick as an organization grows. <a href="https://github.com/open-webui/open-webui/pull/27822" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27822/hovercard">#27822</a></li> <li>โš™๏ธ <strong>Much faster JSON handling.</strong> Saving and opening chats, reading settings, returning results from built-in tools, streaming replies, signing in and signing up, working out your permissions, and reading stored chunk details during knowledge base searches on Valkey and Oracle vector storage are all handled much faster across the application when the "ENABLE_ORJSON" option is turned on. <a href="https://github.com/open-webui/open-webui/commit/bb0f898b431d5aa45efa7805956657ed9c3dd78d">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28396" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28396/hovercard">#28396</a>, <a href="https://github.com/open-webui/open-webui/pull/27841" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27841/hovercard">#27841</a>, <a href="https://github.com/open-webui/open-webui/pull/27807" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27807/hovercard">#27807</a>, <a href="https://github.com/open-webui/open-webui/pull/27805" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27805/hovercard">#27805</a>, <a href="https://github.com/open-webui/open-webui/pull/27813" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27813/hovercard">#27813</a></li> <li>๐Ÿ“ค <strong>Much faster outbound requests.</strong> Conversations and embedding batches sent to Ollama and Anthropic models are packaged for delivery much faster, which is most noticeable in long chats when the "ENABLE_ORJSON" option is turned on. <a href="https://github.com/open-webui/open-webui/pull/27811" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27811/hovercard">#27811</a>, <a href="https://github.com/open-webui/open-webui/pull/27810" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27810/hovercard">#27810</a></li> <li>๐Ÿ <strong>Much faster code interpreter output.</strong> Printed output and generated images from code run in chat appear much faster when the "ENABLE_ORJSON" option is turned on. <a href="https://github.com/open-webui/open-webui/pull/27812" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27812/hovercard">#27812</a></li> <li>๐Ÿชถ <strong>Lighter page loads.</strong> Several small requests the interface makes on every page load, along with a few administrative ones, no longer set up database access they never used, which took several times longer than the rest of the request put together. <a href="https://github.com/open-webui/open-webui/pull/28178" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28178/hovercard">#28178</a></li> <li>โ™ป๏ธ <strong>One less read per message.</strong> Sending a message no longer loads the whole conversation from the database twice over, which mattered most in long chats where that record is largest. <a href="https://github.com/open-webui/open-webui/pull/28809" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28809/hovercard">#28809</a></li> <li>๐Ÿ <strong>Faster skills on large instances.</strong> Opening the skills list, or sending a message that uses one, no longer checks every skill on the instance one at a time, so both are far quicker where many skills exist and most of them are not yours. <a href="https://github.com/open-webui/open-webui/pull/28798" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28798/hovercard">#28798</a></li> <li>๐Ÿฉป <strong>Faster tools on large instances.</strong> Listing or exporting tools no longer checks every tool on the instance one at a time, so the integrations menu and the tools workspace open faster where many exist. <a href="https://github.com/open-webui/open-webui/commit/4807866a1cf47340f1b5ea76fded95f8114305f9">Commit</a></li> <li>๐ŸงŠ <strong>Faster file access checks.</strong> Checking whether you may reach a file no longer walks every workspace model you can see looking for it, so opening a folder of files, downloading one, or retrieving from one is much quicker on instances with many models. <a href="https://github.com/open-webui/open-webui/pull/28802" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28802/hovercard">#28802</a></li> <li>๐Ÿงฑ <strong>Faster folder listings.</strong> Listing your folders now works out your group memberships once for the whole listing rather than again for every item in every folder. <a href="https://github.com/open-webui/open-webui/pull/28810" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28810/hovercard">#28810</a></li> <li>๐Ÿงผ <strong>Less work per update in a long chat.</strong> Each update saved while a reply streams no longer re-examines the entire conversation, only the part being added, so the cost of an update stops growing with the length of the chat. <a href="https://github.com/open-webui/open-webui/pull/28820" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28820/hovercard">#28820</a></li> <li>๐Ÿ—ƒ <strong>Cheaper attaching of sources and files to a reply.</strong> Adding a source, file, or embedded item to a reply now reads just that one field rather than rebuilding the whole conversation to find it, which on a two hundred message chat is around 3.1 ms per item down to 0.65 ms, and no longer grows with the length of the conversation. <a href="https://github.com/open-webui/open-webui/commit/536b9edec00547d5b84ef2e6ea0f929c054c1333">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9dff5e93277aa1a2236d702e7e2f55dbb35ea7fa">Commit</a></li> <li>๐Ÿš <strong>Faster workspace model lookups.</strong> Working out which workspace models you may edit no longer loads every model on the instance and discards most of them, which also speeds up exporting models and the file access checks that relied on it. <a href="https://github.com/open-webui/open-webui/pull/28795" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28795/hovercard">#28795</a></li> <li>๐Ÿ“ฎ <strong>Faster handing off a streaming reply.</strong> Passing a reply in progress between instances now writes it once rather than converting it back and forth and scanning it for characters that only matter elsewhere, which on a large non-English conversation took most of the time spent on each write. <a href="https://github.com/open-webui/open-webui/pull/28833" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28833/hovercard">#28833</a></li> <li>๐Ÿฅต <strong>Constant load on an idle instance.</strong> An instance sitting idle no longer works through every chat you have once a second looking for timers that are due, which on a large history kept about a quarter of a processor core busy doing nothing and could exhaust memory until the application was killed. <a href="https://github.com/open-webui/open-webui/pull/27663" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27663/hovercard">#27663</a>, <a href="https://github.com/open-webui/open-webui/issues/27622" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27622/hovercard">#27622</a>, <a href="https://github.com/open-webui/open-webui/issues/27745" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27745/hovercard">#27745</a></li> <li>๐Ÿ“ <strong>Sidebar folders fetched once.</strong> Refreshing the sidebar now asks for your folders once rather than three times, on page load and on every action that refreshes it. <a href="https://github.com/open-webui/open-webui/pull/28662" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28662/hovercard">#28662</a>, <a href="https://github.com/open-webui/open-webui/issues/28661" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28661/hovercard">#28661</a></li> <li>๐Ÿ’ค <strong>Far fewer writes just from being signed in.</strong> Recording that someone is online now writes at most once a minute for each person rather than on every single request, where an open tab alone caused two write transactions a minute before anyone touched anything. <a href="https://github.com/open-webui/open-webui/pull/28177" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28177/hovercard">#28177</a>, <a href="https://github.com/open-webui/open-webui/issues/28165" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28165/hovercard">#28165</a></li> <li>๐Ÿ›ฐ <strong>Less overhead on every request.</strong> The layers each request passes through before it is handled are now one instead of five, which also removes a quarter of that cost from every piece of a streamed reply on instances that set security headers. <a href="https://github.com/open-webui/open-webui/commit/b96d2b12dae5e953e520bec03f74e9b85b955dc7">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28171" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28171/hovercard">#28171</a></li> <li>๐ŸŽ <strong>Turning off compression of live updates.</strong> A new "UVICORN_WS_PER_MESSAGE_DEFLATE" setting stops the server compressing every live update it sends, which costs processor time on each one for almost no saving now that a reply streams as small pieces; compression stays on unless it is turned off. <a href="https://github.com/open-webui/open-webui/pull/28613" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28613/hovercard">#28613</a></li> <li>๐ŸŒก <strong>Faster chat list and unread counts.</strong> Opening the sidebar, and the unread markers on folders, no longer read through your whole chat history to produce a short list, which on an instance with 15000 chats took 2 to 4 seconds. <a href="https://github.com/open-webui/open-webui/pull/27663" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27663/hovercard">#27663</a>, <a href="https://github.com/open-webui/open-webui/issues/27622" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27622/hovercard">#27622</a>, <a href="https://github.com/open-webui/open-webui/issues/27745" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27745/hovercard">#27745</a></li> <li>๐Ÿฅ <strong>Long replies no longer slow as they grow.</strong> A long reply is no longer re-examined from the beginning for reasoning and code blocks on every piece that arrives, so the work stops growing with the length of the reply, which on a long reply is around 190x less time spent on it. <a href="https://github.com/open-webui/open-webui/pull/28861" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28861/hovercard">#28861</a></li> <li>๐Ÿ’ฝ <strong>Faster saving of long chats.</strong> A chat is now written to the database in one go rather than one message at a time, so saving a long conversation is much quicker and puts far less strain on the database, and saving one where nothing has changed writes nothing at all. <a href="https://github.com/open-webui/open-webui/pull/28806" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28806/hovercard">#28806</a></li> <li>๐Ÿ“ฆ <strong>Faster loading of shared folders.</strong> Folders shared with you now load in a couple of queries rather than one for each folder and each owner, so the list appears sooner for anyone with many of them. <a href="https://github.com/open-webui/open-webui/pull/28804" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28804/hovercard">#28804</a></li> <li>โšก <strong>Uninterrupted chat during knowledge search.</strong> Responses now keep streaming for everyone on the server while knowledge base searches run, instead of pausing until each search finishes. <a href="https://github.com/open-webui/open-webui/pull/27824" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27824/hovercard">#27824</a></li> <li>๐Ÿ” <strong>Smarter chat search.</strong> Searching your chats now finds conversations containing all of your words in any order rather than only the exact phrase you typed, with exact matches still listed first, and the preview snippet points at whichever word it found. <a href="https://github.com/open-webui/open-webui/commit/0800c21c64c64810f24c2ec88cca5e36daebb10e">Commit</a></li> <li>โŒจ๏ธ <strong>Model switching from the message box.</strong> Typing "/model" now tells you which model you are on, switching to another by name with "/model" followed by its id, or opening the model picker straight from the slash menu without reaching for the mouse. <a href="https://github.com/open-webui/open-webui/commit/29eeda9f9abeaedf77176908cb036ace7f175e76">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9c7ce154e79a3baea3a8223ab1e5b1371ce80dbb">Commit</a></li> <li>๐Ÿ“Ž <strong>Sending while attachments upload.</strong> Sending a message before its files have finished uploading now queues it and sends it automatically once they are ready, instead of refusing with an error, and each queued message shows the progress of its attachments. <a href="https://github.com/open-webui/open-webui/commit/6c4d0ace163a89aba6e8cd2aa9fef185167ebe0f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c1c07cbe0f847e4dd04e21f2a6c5f12cdc0fc7ee">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28381" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28381/hovercard">#28381</a>, <a href="https://github.com/open-webui/open-webui/issues/28380" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28380/hovercard">#28380</a></li> <li>๐Ÿ“– <strong>Opening a document at the right page.</strong> A model showing you a PDF, Word document, or slide deck from a terminal can now open it at a particular page or slide, so a reply that cites something on page 76 can put that page in front of you. <a href="https://github.com/open-webui/open-webui/commit/fd8cc2ba4a226ccbf51e114c71f156676eabb2d9">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/cf4ac9c8db67031627f196fae894764367fba5b4">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6cb2449ab70ed6aa5124fcd2b1291b48527af4cd">Commit</a></li> <li>๐Ÿ’ผ <strong>Attachments that go straight to a terminal.</strong> A terminal connection can now be set to receive files attached in chat into its own working directory rather than into the conversation, which also means files can be attached while using a model that cannot read them itself. <a href="https://github.com/open-webui/open-webui/commit/8a42aa53e826d5f25d6443ca95e0173e3cf034cf">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d7d935275a77fb185586a5130cd37acf1175ca0a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1b3b9375bb4de0f360782dd2f9d8c7c2903b8baa">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d17f06a23501e5c39cf98d9c9642178da25343fb">Commit</a></li> <li>๐Ÿ”ฆ <strong>Searching files in the terminal browser.</strong> The file browser now has a search box that finds files by name and by what is inside them, and opening a result takes you to the matching line. <a href="https://github.com/open-webui/open-webui/commit/7abe11346a1cc309da2c3fcec2f61faaeb47b96a">Commit</a></li> <li>๐ŸŒฒ <strong>Browsing files as a tree.</strong> The terminal file browser now expands folders in place rather than only navigating into them, remembers what you had open, offers a right-click menu, can show hidden files, sorts by size, expands a folder you hover over while dragging something onto it, and moves a whole selection in one go when you drop it. <a href="https://github.com/open-webui/open-webui/commit/7dfbdd221ac0f7a839dd049e3e82b6a84c316860">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/516cf1a9a6154336182475b9df2d333b1579516d">Commit</a></li> <li>๐Ÿงฐ <strong>Managing models on more servers.</strong> Administrators can now download, load, and unload models on llama.cpp and LM Studio connections from the manage models dialog, remove them on llama.cpp, and start a download straight from the model picker's search box, alongside the Ollama support that was already there. <a href="https://github.com/open-webui/open-webui/commit/85c3d0ae2fad58ffc2b92b1733a6c8bc7ab471db">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8260d527ee97372a207ce9bd9c6dab4909061281">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/25802c048e6123fa602182949ad2a9f349e1e863">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/31c1ffd55a018a74c7e53a35fb9f9bbe33774b6f">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28766" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28766/hovercard">#28766</a></li> <li>๐Ÿ“ข <strong>Automations that post to a channel.</strong> An automation can now be pointed at a channel instead of a chat, so its scheduled run appears as a message there for everyone to see, chosen from a new destination picker that also covers folders. <a href="https://github.com/open-webui/open-webui/commit/2649e3305c49cb37101c112ae10ffd8beacb5885">Commit</a></li> <li>๐Ÿ™‹ <strong>Mentioning people in a channel.</strong> Typing an at sign in a channel now lists that channel's own members first, before everyone else on the server, so the people you are likely to mean are at the top. <a href="https://github.com/open-webui/open-webui/commit/ba885d0026ad3cce70c7cc36d1d6f59775264a12">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/dcff244f9e87e615ee0a3f345f7f801c5ebe370d">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28883" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28883/hovercard">#28883</a></li> <li>๐Ÿ”— <strong>Attaching any link.</strong> Pasting a link into a chat or a knowledge base now works out what is behind it, downloading a document or image as a real attachment rather than treating everything as a web page to be read as text. <a href="https://github.com/open-webui/open-webui/commit/8fbfd14a8b3fe7236883594fd18760076e4de0d5">Commit</a></li> <li>๐Ÿ”Ž <strong>Searching tools and skills in chat.</strong> The integrations menu now has a search box for tools and for skills, so a long list can be narrowed by name instead of scrolled through. <a href="https://github.com/open-webui/open-webui/issues/26709" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26709/hovercard">#26709</a>, <a href="https://github.com/open-webui/open-webui/commit/954613944b317a78d5929456ae1388543aa052c8">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28807" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28807/hovercard">#28807</a>, <a href="https://github.com/open-webui/open-webui/pull/28812" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28812/hovercard">#28812</a></li> <li>๐Ÿงญ <strong>More from the message box.</strong> The slash menu now offers settings and, in a new chat, a toggle for temporary chat, alongside the commands that were already there. <a href="https://github.com/open-webui/open-webui/commit/a5ea732c1e3d0d1f70a7e4b6a20c30c336114784">Commit</a></li> <li>๐Ÿšจ <strong>Being told when a file fails to process.</strong> A file that cannot be processed for a knowledge base now raises a notification naming the file and what went wrong, and keeps that reason on the file, instead of quietly being marked as failed. <a href="https://github.com/open-webui/open-webui/pull/27666" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27666/hovercard">#27666</a>, <a href="https://github.com/open-webui/open-webui/issues/6311" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/6311/hovercard">#6311</a>, <a href="https://github.com/open-webui/open-webui/commit/1a376ac17fa0c3f957656a997b6f8ffacb1f6f30">Commit</a></li> <li>๐Ÿ”ฌ <strong>Zoom controls on previewed images.</strong> An image opened in the file browser now has zoom in, zoom out, and a reset button showing the current zoom, and pinching, scrolling, and holding a modifier key while scrolling now zoom and pan as they do elsewhere. <a href="https://github.com/open-webui/open-webui/commit/2befa8f796266e92fa55861bb8eaa81639ff4053">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bfb68feea766e8d5408fb6e278be56cbca0c4afe">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ec9bf5a64f9f718e472123350ec83bce1b064884">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/467be93e6d7e4a31358f9c75ee67bfac1200c0a1">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Recognisable file icons.</strong> The terminal file browser now marks each file with an icon for its type, so code, images, archives, documents, and configuration files can be told apart at a glance instead of sharing one generic page icon. <a href="https://github.com/open-webui/open-webui/commit/60feca71a6a77b7d1eef1c172a61624d5fe48150">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8d25ad00e2fc5f0a328a2098c2e73fb00f2ca934">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c1f914a6268580f7722825390ac8a204743a4520">Commit</a></li> <li>๐Ÿ“ฝ๏ธ <strong>Truer PowerPoint previews.</strong> Slide previews now render tables, charts, connectors, gradients, theme colours, bullets, fonts, and text alignment far closer to the original, and the viewer lets you move between slides with the arrow keys or the scroll wheel while the thumbnail strip follows along. <a href="https://github.com/open-webui/open-webui/commit/8dd23f74c9a59fdfbdaefb4a403ef79bdd3dfed9">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/048c06399363baac4046717129f072172ee90805">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c93c6d6fc48ee8870eec349cb4c5af88c9435cfb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/76583749edb966c0239ce203a84c1ee8d8c7faee">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b3a5fd3875dc3c29a11eb5435438e55685cad639">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/794671a9883d5e067c407067f324ffa25ed38e3f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f96b717566b2084bd5fe70fb622ab66b5a643c0d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b7292890ccea794750651abbcde01cda62551e1b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/31d08d592c4ee46a7ce827d6ffdf8e3cf16bf2ac">Commit</a></li> <li>๐Ÿ“„ <strong>Faithful Word document previews.</strong> Word documents now open as proper pages with headers, footers, footnotes, and embedded images intact, and can be zoomed, rather than being flattened into plain formatted text. <a href="https://github.com/open-webui/open-webui/commit/ff7467b4c593f1e775311c088c63340d0cc1e4a2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/060648f939447e2a9de390d05221ca896c50eeed">Commit</a></li> <li>๐Ÿ— <strong>Deleting your API key.</strong> An API key can now be revoked outright from your account settings, where the only way to retire one was to replace it with a new one. <a href="https://github.com/open-webui/open-webui/issues/28874" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28874/hovercard">#28874</a>, <a href="https://github.com/open-webui/open-webui/commit/b30b11d4c975b8ff9a6c6eb9e39fbb310aed1072">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Settings for the task model.</strong> Administrators can now set the generation parameters used for background work such as titles, tags, follow-ups, search queries, and conversation summaries, either from the admin panel or through "TASK_MODEL_PARAMS", instead of those requests always using a fixed token limit that could cut a summary short. <a href="https://github.com/open-webui/open-webui/issues/27604" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27604/hovercard">#27604</a>, <a href="https://github.com/open-webui/open-webui/commit/f0bfcd40976dfb1e1876f86b39d6a659d894d15e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/865c80c1600ecc2e606bef4e90540ce305b4b9de">Commit</a></li> <li>๐ŸŽš๏ธ <strong>Default interface settings for everyone.</strong> Administrators can now set system-wide defaults for the interface options in Settings, either from the admin panel or through "DEFAULT_INTERFACE_SETTINGS", with each person's own choices still taking precedence and anything left untouched shown as inherited and kept in step with later changes to the defaults. <a href="https://github.com/open-webui/open-webui/commit/37f2548155efdd5cd8114ceb9b57c7864de4bef2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/13346c5f1621b014e2fcaabd41375d6f7035dd0a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/90a0e61cef119154e89d900d6921123b599a0389">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/eeaf1a1df01525e4b6d4eb73060b32a9a75ebfc6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d4461bd6f39936460a989e8bd50097de604b4b00">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b4d3b27caf1587b783a46268c769132eb9211c80">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/407c40f72cdadcd9f57538d9ce38070662ce42c7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/724d2ebbf1bd2fc90f27a2e5bc571d40afc3db4c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1674e5a9ef835696f0963cdbcf477c8b92ce0b8a">Commit</a></li> <li>๐Ÿ”  <strong>Interface scaling throughout.</strong> The UI Scale setting and your browser's own text size now resize the whole interface consistently, including the sidebar, menus, dialogs, and file browser, rather than leaving parts of it fixed. <a href="https://github.com/open-webui/open-webui/commit/30d08a42f8b0c32cc64dccd81203cc760651584a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b5f86e6a433b519e30a5a6f1b0a5bf985939c9a8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ec03e8814403422a6ab3dc62f4239fd7af439361">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/72a909fd2f3ac8d67554f6c85bc1723934454e2d">Commit</a></li> <li>๐Ÿท๏ธ <strong>Named writing blocks.</strong> When a model wraps a draft such as an email in a writing block, the block is now titled with its subject and shows the recipient beside it, rather than every block reading simply as Writing. <a href="https://github.com/open-webui/open-webui/pull/28280" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28280/hovercard">#28280</a>, <a href="https://github.com/open-webui/open-webui/issues/28198" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28198/hovercard">#28198</a></li> <li>๐Ÿค <strong>Files for delegated tasks.</strong> A task handed to a sub-agent can now carry the attachments it needs, so an image or document from your conversation reaches the sub-agent instead of arriving as a file reference it cannot open and may answer about anyway. <a href="https://github.com/open-webui/open-webui/commit/5ec16e76e6402980b39c26923b8ee26278f0b243">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28213" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28213/hovercard">#28213</a></li> <li>๐Ÿ“Ÿ <strong>Terminal availability and scope.</strong> Administrators can now decide for each managed terminal whether it appears in chats and in automations at all, and whether everyone shares a single workspace or each chat or automation gets its own, with per chat terminals waiting until the conversation has been saved. <a href="https://github.com/open-webui/open-webui/commit/009999f3636b1a3451f8fe55232e6ab132a64e66">Commit</a></li> <li>๐Ÿ”’ <strong>Read-only files in the terminal browser.</strong> Files and folders you are not allowed to change are now labelled read-only, with uploading, editing, renaming, moving, and deleting turned off for them rather than failing at the moment you try. <a href="https://github.com/open-webui/open-webui/commit/2dadc5435af77b0638af69200e3af1b9654417b6">Commit</a></li> <li>๐Ÿ” <strong>Terminals that use your own login.</strong> Managed terminals configured for session authentication now authenticate the terminal connection with your own token, where it previously sent no credentials at all. <a href="https://github.com/open-webui/open-webui/commit/2dadc5435af77b0638af69200e3af1b9654417b6">Commit</a></li> <li>๐ŸŽŸ <strong>Setting up a tool server that uses OAuth.</strong> Adding one is now easier to get right: the connection dialog can authorize the account from the dialog itself, the check button tests the sign-in details rather than reporting a connection failure that was never going to succeed without them, and it is now labelled for what it does rather than suggesting it verifies the whole connection. <a href="https://github.com/open-webui/open-webui/commit/f822605b3563c57030aa200492f68572cadcc4da">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28552" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28552/hovercard">#28552</a></li> <li>๐Ÿชค <strong>Control over what embedded pages may do.</strong> Two new interface settings decide whether pages shown inside a chat, such as an artifact or an HTML preview, may run scripts and start downloads. <a href="https://github.com/open-webui/open-webui/commit/3c66d639e31ba8a7477d337b37d8d671ea2430cf">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28924" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28924/hovercard">#28924</a>, <a href="https://github.com/open-webui/open-webui/commit/842c1f9d677c0d9940cccdd18e34add13f746a68">Commit</a></li> <li>๐Ÿ—„ <strong>Keeping files removed from a knowledge base.</strong> A new "ENABLE_KNOWLEDGE_FILE_RETENTION" setting keeps the stored file and its search data when a file is taken out of a knowledge base, rather than deleting them. <a href="https://github.com/open-webui/open-webui/commit/363ad352fec9553469852d111bc0506b896504a6">Commit</a></li> <li>๐Ÿงพ <strong>CSV shape in retrieval.</strong> Turning on "ENABLE_RAG_CSV_SUMMARY" adds a short line naming the row count, data row count, column count, and column names of a CSV file to what the model sees, giving it the shape of the table alongside its contents. <a href="https://github.com/open-webui/open-webui/commit/1b72899f246ba46ab8f7cd6aee2d56ef69217d82">Commit</a></li> <li>๐Ÿ”ญ <strong>OpenSERP in the search settings.</strong> OpenSERP can now be picked as the web search engine in the admin panel, with a field for its address, rather than only being configurable through the environment. <a href="https://github.com/open-webui/open-webui/pull/27594" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27594/hovercard">#27594</a>, <a href="https://github.com/open-webui/open-webui/issues/27592" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27592/hovercard">#27592</a></li> <li>๐Ÿชง <strong>Profile changes from single sign-on.</strong> A name, email address, or picture updated from an identity provider at sign-in now raises an event naming what changed, and the rest of the session uses the updated record rather than a stale copy. <a href="https://github.com/open-webui/open-webui/commit/927ce0eae67af1b4a856d3e82fba0601c3b40d02">Commit</a></li> <li>๐Ÿ“ฏ <strong>Group changes from single sign-on.</strong> Group memberships added or removed when someone signs in through an identity provider, and groups created automatically along the way, now raise the same events as the equivalent change made by an administrator or over directory sync. <a href="https://github.com/open-webui/open-webui/pull/27657" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27657/hovercard">#27657</a></li> <li>๐Ÿ”” <strong>Sign-in and sign-out events for single sign-on.</strong> Signing in through an identity provider now raises the same login event that signing in with a password does, and signing out says which provider the session came from, so a function can set up or tidy up an account in another system when someone arrives or leaves. <a href="https://github.com/open-webui/open-webui/pull/27619" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27619/hovercard">#27619</a>, <a href="https://github.com/open-webui/open-webui/issues/27613" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27613/hovercard">#27613</a></li> <li>๐Ÿช› <strong>Naming background worker threads.</strong> A new "THREAD_POOL_THREAD_NAME_PREFIX" setting labels the threads that background work runs in, so they can be told apart when reading a profile or a thread dump. <a href="https://github.com/open-webui/open-webui/commit/4ec6ee14418edd04eaba9e34bd5868453f61df40">Commit</a></li> <li>๐Ÿ“™ <strong>OpenDocument files in a temporary chat.</strong> A text document, spreadsheet, or presentation from an office suite that uses the OpenDocument format now has its text read out in the browser when attached to a temporary chat, where the model was handed the raw archive and answered that it could not read the file. <a href="https://github.com/open-webui/open-webui/commit/9e7c9360b744c878ae0c38aa1caf3886f27b07ab">Commit</a>, <a href="https://github.com/open-webui/open-webui/discussions/28906">#28906</a></li> <li>๐ŸŒ <strong>Pointing Tavily somewhere else.</strong> A new "TAVILY_API_BASE_URL" setting sends Tavily searches and page fetches to a different address, for instances that reach the internet only through a gateway of their own or that use a compatible service. <a href="https://github.com/open-webui/open-webui/commit/98ee2bdfd3e90faec6bfe8e7ebf5803159f379e3">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28701" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28701/hovercard">#28701</a></li> <li>๐ŸชŸ <strong>Honest OAuth settings.</strong> When single sign-on settings come from the environment rather than being saved in the application, the admin panel now shows them as read-only with a note naming the setting that controls this, instead of accepting edits that were silently discarded on the next restart. <a href="https://github.com/open-webui/open-webui/pull/28276" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28276/hovercard">#28276</a></li> <li>๐Ÿ“ <strong>Widening the chat controls pane.</strong> The controls pane can now be dragged as wide as you like, where it stopped at a fixed limit regardless of screen size. <a href="https://github.com/open-webui/open-webui/commit/0fb542b3764cefecf2366607a4685288051d1b46">Commit</a></li> <li>๐Ÿ“ฑ <strong>Smoother sidebar on mobile.</strong> The sidebar now follows your finger as you swipe it open or closed, responds to a quick flick, dims the page behind it as it moves, and gives every chat row a menu button you can reach without a hover you cannot perform on a touchscreen. <a href="https://github.com/open-webui/open-webui/commit/b20bcdbba72707e3b0cf2b9a6a5f3168b464ba3c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/178ccb30e1253ea727fe5ccbb5cc3ca3832dc70b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/943294df9a03d45e2708b330e876967af3463282">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d6679082e5c6b0b54ca00a99a88e66a53a30c7d9">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d8ae7ed40551362922925d9d6e47ba65d3658cfd">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/be4afd75452361ead376d9977cf2ca8cb93e55eb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ab41dcc487d1517f7c8c5d0b02a02cdaadedb03d">Commit</a></li> <li>๐Ÿšช <strong>Sidebar that stays put.</strong> Opening and closing the sidebar is now a smooth transition that keeps your chat list loaded, instead of rebuilding the list each time. <a href="https://github.com/open-webui/open-webui/commit/3c010951db2cc349466658d3b52234cc22dad327">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8edab5020eaa5d47b12a572eb632a891aa29440a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3e9b075954b7fc9d492a7ec832550b10b0bf80ed">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3793b0c886f57630dc31320d3c0257c933c6eca1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0b4b7ae5ff3c0a17b58e8e85a5fddf190e3bda14">Commit</a></li> <li>๐Ÿ‘๏ธ <strong>Turning off chat previews.</strong> A new setting under Settings and Interface lets you switch off the preview card that appears when you hover a chat in the sidebar, useful for a quieter sidebar, for sharing your screen, or on a slow connection. <a href="https://github.com/open-webui/open-webui/pull/27632" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27632/hovercard">#27632</a>, <a href="https://github.com/open-webui/open-webui/issues/27639" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27639/hovercard">#27639</a></li> <li>โ˜‘๏ธ <strong>Checkboxes beside their labels.</strong> In the model editor and the admin model defaults, each capability, feature, and tool checkbox now sits directly in front of its own label instead of at the far edge of its column, where it could look like it belonged to the next one, and the label itself can be clicked to toggle it. <a href="https://github.com/open-webui/open-webui/pull/27788" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27788/hovercard">#27788</a>, <a href="https://github.com/open-webui/open-webui/issues/27771" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27771/hovercard">#27771</a>, <a href="https://github.com/open-webui/open-webui/commit/1b39ff352a2fa3b57bd7815f44c50daf96937a14">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0f821398ca9c9ddd8da521b5f9dcf103030202e8">Commit</a></li> <li>โœ๏ธ <strong>Typing cursor while responding.</strong> A blinking cursor now marks where the reply is being written, from the moment you send your message until generation finishes, in place of the previous loading placeholder. <a href="https://github.com/open-webui/open-webui/commit/cbb3aade2b4e901c22aa9a30530634721c80b078">Commit</a></li> <li>โœ’๏ธ <strong>Underlined text.</strong> Underlined text now appears underlined in a reply instead of showing the markup around it, and underlining is kept when you edit in a rich text box rather than being dropped. <a href="https://github.com/open-webui/open-webui/commit/11db926a7b471e9477595786ef451a916174cc18">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26904" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26904/hovercard">#26904</a></li> <li>๐Ÿ“ฅ <strong>Adding group members from a file.</strong> Administrators can now add many people to a group at once by uploading a CSV of names and email addresses, with a template to download and a message naming any row whose address does not match an account. <a href="https://github.com/open-webui/open-webui/commit/f3f7659da754b51c216b17b2d6def4d59071d78f">Commit</a></li> <li>๐Ÿ“‘ <strong>Apache Tika 4 support.</strong> Administrators extracting document text with Tika can now choose which server version they run, from Admin Settings under Documents or through "TIKA_SERVER_VERSION", where only Tika 3 was understood before. <a href="https://github.com/open-webui/open-webui/commit/170ad0595d9440113721eb06375a2fc99aefaad1">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28939" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28939/hovercard">#28939</a></li> <li>๐Ÿ’“ <strong>Tunable heartbeat for live updates.</strong> A new "WEBSOCKET_HEARTBEAT_INTERVAL" setting controls how often each open tab checks in with the server, where it was fixed at 30 seconds, so a large deployment can cut background traffic that no one asked for. <a href="https://github.com/open-webui/open-webui/commit/3c1017f6c3ffc7194f074f2cfd2ea5f49943c575">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28166" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28166/hovercard">#28166</a></li> <li>โŒ› <strong>Expiring abandoned reply state.</strong> A new "REDIS_RESPONSE_STREAM_TTL" setting expires the saved state of a reply that never finished, so a server killed mid-answer no longer leaves that data behind for good. <a href="https://github.com/open-webui/open-webui/commit/176fa462128d5298492db29c67080a4e1afc2642">Commit</a></li> <li>๐Ÿ–จ๏ธ <strong>File and image detail parts on API requests.</strong> A request sent to the OpenAI-compatible endpoint carrying an image detail level or a file part in its message content now forwards both to providers that use the Responses API, where they were dropped, while documents attached inside Open WebUI are unaffected because those still go through knowledge retrieval. <a href="https://github.com/open-webui/open-webui/commit/ca4e07a40b4ff11989a25d84b517d3d0049f93ae">Commit</a></li> <li>๐Ÿงบ <strong>Leaner stored document metadata.</strong> Bulky extraction details such as page layouts, tables and detected languages are no longer kept alongside a document in the vector store, and a new "RAG_METADATA_MAX_VALUE_CHARS" setting drops any remaining oversized value, falling back to the configured upload size limit so a document that expands enormously while being read cannot exhaust a server's memory. <a href="https://github.com/open-webui/open-webui/commit/278e97589e71d119b887d5bca9d6ae32912d1dff">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e3a7a64d82ab2dd06c681ce85027367ccc8234d4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/29025" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29025/hovercard">#29025</a></li> <li>๐Ÿ’จ <strong>No filter work on installs without filters.</strong> A completed message on an install with no filter functions and no pipeline filters, which is the default, no longer rebuilds the whole conversation and ships it to the browser as an event nothing acts on. <a href="https://github.com/open-webui/open-webui/commit/28f2965934f5b6fba0e0c38a15b2af6ee790819f">Commit</a></li> <li>๐Ÿ“‚ <strong>Opening a file in a knowledge base.</strong> A file listed in a knowledge base can now be opened and read straight from that list, where the name was shown but nothing happened when it was clicked. <a href="https://github.com/open-webui/open-webui/commit/20f35d157bc7d535091ce6a90b517c23d26486c0">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28086" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28086/hovercard">#28086</a></li> <li>๐Ÿงต <strong>Cheaper saving of a reply as it streams.</strong> The resume snapshot taken on every piece of a streamed reply no longer rebuilds the whole answer each time, so the cost of a save stops growing with the length of the reply. <a href="https://github.com/open-webui/open-webui/pull/28821" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28821/hovercard">#28821</a></li> <li>๐Ÿ“€ <strong>Less repeated work setting up built-in tools.</strong> Every chat request no longer rebuilds a fresh copy of each built-in tool's definition from scratch, which was paid once per tool on every message. <a href="https://github.com/open-webui/open-webui/pull/28860" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28860/hovercard">#28860</a></li> <li>๐Ÿ•น๏ธ <strong>Control over what a terminal port preview may reach.</strong> A new interface setting decides whether a previewed port runs with access to same-origin browser APIs, so you can lock a preview out of them on installs where previews serve content you do not fully trust. <a href="https://github.com/open-webui/open-webui/commit/54d7a223707f03172efbb9e754db6e69709956d0">Commit</a></li> <li>โ™ฟ <strong>Improved UI accessibility.</strong> A closed sidebar is no longer reachable by keyboard or announced by screen readers, the tool call blocks in a response can now be expanded with the keyboard, the buttons that normally appear on hover, such as message actions, file removal, and chat menus, now appear when you reach them with the keyboard as well, whatever you have tabbed to is marked with a clear outline throughout the application, and the rows in the integrations menu now tell a screen reader whether each tool or feature is switched on. <a href="https://github.com/open-webui/open-webui/commit/48a5696042b414f6511911afa72b3289ad2797b9">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bd250a0e2431f8c2c7e2f4a34c5327f21fc77d4b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c8f8fa451a60974dfa4ebaf7cd6163ef30c45fd6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/29541cbb52659a8a6ee22d255f14e6d2f168a09b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ac0368b4abe4c880f715b236ee0024826b2e3e7a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c086b80313fe0f5ce60831a0d150f695646c66e4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27667" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27667/hovercard">#27667</a>, <a href="https://github.com/open-webui/open-webui/issues/17150" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/17150/hovercard">#17150</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Translation updates.</strong> Faroese was added, and translations for Slovenian, Hungarian, Finnish, Korean, Portuguese (Brazil), Catalan, and French were enhanced and expanded.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section. Some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ›‚ <strong>Knowledge search reaching past what you may read.</strong> Searching knowledge bases now applies the list of collections you are allowed to open, where that restriction was handed to the vector store and silently discarded, so results could include material from knowledge bases you have no access to. <a href="https://github.com/open-webui/open-webui/commit/1d6d4e6e6647e1d403438ede7bd9ba20bc4cc8f6">Commit</a></li> <li>๐Ÿ’ฃ <strong>Documents that unpack far beyond their size.</strong> A Word, Excel, PowerPoint, OpenDocument or EPUB file that expands to far more than it stores is now rejected before it is read, where one could previously be used to exhaust a server's memory. <a href="https://github.com/open-webui/open-webui/commit/2a0274a0a039dbe0a1ad4d24003b085aae7b896b">Commit</a></li> <li>โœ‚๏ธ <strong>Long replies cut off partway.</strong> A single oversized piece of a streamed reply, such as a long reasoning trace or a turn carrying many tool calls, no longer ends the answer early with a misleading error about byte counts, which affected every default installation. <a href="https://github.com/open-webui/open-webui/pull/28114" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28114/hovercard">#28114</a>, <a href="https://github.com/open-webui/open-webui/issues/25664" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25664/hovercard">#25664</a></li> <li>๐Ÿšง <strong>Web address checks that could be skipped.</strong> The fetchable-address test and the operator's web fetch filter list now run on every outgoing request, where a proxied or already-open connection could bypass them and a filter entry written as an address range silently matched nothing at all. <a href="https://github.com/open-webui/open-webui/pull/27823" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27823/hovercard">#27823</a></li> <li>๐Ÿง‘โ€๐Ÿ’ป <strong>Code execution reachable through a tag in a reply.</strong> On installs using native function calling, the older path that runs code found inside a tag in the model's reply is no longer active alongside the built-in tool, so code execution happens only through an explicit tool call. <a href="https://github.com/open-webui/open-webui/pull/29024" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29024/hovercard">#29024</a></li> <li>โŒš <strong>Recurrence rules that could tie up the server.</strong> How often an automation repeats is now taken from the rule the scheduler actually parsed rather than from the text of the rule, so a crafted rule can no longer disagree with what gets scheduled and walk the server through an unbounded run of occurrences, and a rule carrying a time zone on its start date now schedules instead of erroring. <a href="https://github.com/open-webui/open-webui/commit/067114c28038b77045a3a1983e2e2719b1a32ad8">Commit</a></li> <li>๐Ÿ—๏ธ <strong>Changing a password now ends other sessions.</strong> Changing your password, or an administrator resetting it for you, now stops every device that was already signed in, where they had stayed signed in on the old password until their session expired on its own, up to four weeks by default; the device making the change is signed out too and asked to sign in again, and this requires Redis, without which nothing can be revoked and a warning is now logged saying so. <a href="https://github.com/open-webui/open-webui/pull/28725" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28725/hovercard">#28725</a>, <a href="https://github.com/open-webui/open-webui/discussions/28647">#28647</a></li> <li>๐Ÿงฌ <strong>Workspace models shadowing a real one.</strong> Someone without administrator rights can no longer create, import, or edit a workspace model so that it takes over the identity of a model served by a connected provider, where doing so would have changed what everyone else got when they picked that model. <a href="https://github.com/open-webui/open-webui/commit/ea55d38793014a4e3cd5a4046816fe22e69e9739">Commit</a></li> <li>๐ŸŒณ <strong>Folders disappearing when moved into themselves.</strong> Moving a folder inside one of its own subfolders is now refused, where it was accepted and made that folder and everything in it vanish from the sidebar with no way to bring it back, while leaving the server walking the loop endlessly and querying the database as it went, which could exhaust a worker and its memory; any folder already in that state is returned to the top level. <a href="https://github.com/open-webui/open-webui/pull/28748" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28748/hovercard">#28748</a></li> <li>๐Ÿงจ <strong>Searching a knowledge base with a costly pattern.</strong> A search pattern written so that it expands enormously before it even runs is now refused, where it could tie up the server; ordinary patterns are unaffected. <a href="https://github.com/open-webui/open-webui/commit/d5b66533e7829654f6fb343abbaaeab988dbfde8">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28284" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28284/hovercard">#28284</a></li> <li>๐Ÿ’ง <strong>Attaching a very large file from a link.</strong> A file fetched from a link is now written to disk as it arrives and stops at the configured size limit, where the whole thing was held in memory first with no limit applied, so a large enough file could exhaust the server; a download that fails partway no longer leaves the partial file behind. <a href="https://github.com/open-webui/open-webui/pull/28945" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28945/hovercard">#28945</a></li> <li>โ›“ <strong>Deleting one knowledge base removing a shared connection.</strong> Deleting an external knowledge base now leaves its connection in place while other knowledge bases still use it, and only an administrator removing the last one clears it, where any user deleting theirs took the connection away from everyone. <a href="https://github.com/open-webui/open-webui/pull/28113" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28113/hovercard">#28113</a></li> <li>๐Ÿ“ก <strong>Intermittent connection failures.</strong> Requests to model providers and to services on the same network no longer fail intermittently with name lookup errors, often surfacing as a misleading model not found message, because addresses are resolved through the system again by default, with the faster resolver still available through "AIOHTTP_CLIENT_ASYNC_DNS_RESOLVER". <a href="https://github.com/open-webui/open-webui/pull/28242" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28242/hovercard">#28242</a>, <a href="https://github.com/open-webui/open-webui/issues/28013" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28013/hovercard">#28013</a>, <a href="https://github.com/open-webui/open-webui/issues/28215" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28215/hovercard">#28215</a></li> <li>๐Ÿ—ฏ๏ธ <strong>Losing the conversation with memory on.</strong> With the memory tool enabled, the model can see the earlier messages in your conversation again, instead of answering the second message as though the first had never been sent. <a href="https://github.com/open-webui/open-webui/issues/28400" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28400/hovercard">#28400</a></li> <li>๐Ÿ‘ป <strong>Vanishing responses.</strong> Replies from Responses-API providers that report an empty output at the end of a stream no longer disappear the moment generation finishes, leaving an empty message in their place. <a href="https://github.com/open-webui/open-webui/pull/27800" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27800/hovercard">#27800</a>, <a href="https://github.com/open-webui/open-webui/discussions/27789">#27789</a></li> <li>๐Ÿ“ฅ <strong>Queued messages disappearing.</strong> Messages waiting to be sent are put back in the queue if sending them fails, rather than vanishing without being sent. <a href="https://github.com/open-webui/open-webui/commit/f79b443c226098564386d0a31708e71ec0146158">Commit</a></li> <li>๐Ÿงต <strong>Replies cut short mid-stream.</strong> A reply no longer breaks off part way through when a provider sends the pieces of its response in an unexpected order, which had left the answer truncated and skipped the filters that run once a message finishes. <a href="https://github.com/open-webui/open-webui/pull/28312" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28312/hovercard">#28312</a></li> <li>๐Ÿงท <strong>Replies not carried into the next turn.</strong> With providers that skip parts of the streaming sequence, the finished reply is now taken from the completed message, so it stays available as context for your next question and the citations that arrived with it are no longer dropped. <a href="https://github.com/open-webui/open-webui/pull/28310" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28310/hovercard">#28310</a></li> <li>๐ŸŒŠ <strong>Replies arriving in oversized pieces.</strong> Very large streamed pieces no longer break the response on default settings, where the reader that splits them safely only ran when a chunk size limit was configured. <a href="https://github.com/open-webui/open-webui/commit/a33fa05adc6def8f3d098539a4786dc9c7bf61d2">Commit</a></li> <li>๐Ÿฉน <strong>Signing in after a long-delayed upgrade.</strong> Accounts on instances that were upgraded from a version older than 0.6.41 to 0.9.6 or newer can sign in again, where an upgrade step had written their single sign-on identity in a form the application could not read afterwards, and a repair step corrects the affected accounts on startup. <a href="https://github.com/open-webui/open-webui/pull/28107" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28107/hovercard">#28107</a>, <a href="https://github.com/open-webui/open-webui/issues/28101" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28101/hovercard">#28101</a>, <a href="https://github.com/open-webui/open-webui/commit/bd8378f643dd8a56366ad9d1843b7d40f67cf1f9">Commit</a></li> <li>๐Ÿ”‘ <strong>Signing in with some identity providers.</strong> Logging in through a provider that adds its own vendor-specific information to the header of the sign-in token now completes, rather than failing at the final step with a message claiming the email or password was wrong. <a href="https://github.com/open-webui/open-webui/pull/28065" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28065/hovercard">#28065</a>, <a href="https://github.com/open-webui/open-webui/issues/28062" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28062/hovercard">#28062</a></li> <li>๐Ÿ”Œ <strong>Role changes taking effect at once.</strong> Changing someone's role now ends their live sessions no matter how the change was made, whether by a directory sync, an identity provider, a trusted header, or deleting the account, so permissions from their old role cannot linger, and their browser reconnects on its own. <a href="https://github.com/open-webui/open-webui/commit/ce3c175e260709f359d7e6cbb3132f0572098b95">Commit</a></li> <li>๐Ÿ›‘ <strong>Memory permission being respected.</strong> Taking away someone's memory permission now also stops their stored memories being added to the context of their conversations, which one path had continued doing regardless. <a href="https://github.com/open-webui/open-webui/pull/27668" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27668/hovercard">#27668</a></li> <li>๐Ÿ” <strong>Listing a single connection's models.</strong> Asking for the models or version of one particular connection is now restricted to administrators, and a request naming a specific backend is checked against the models that backend actually serves even where the access control bypass is turned on. <a href="https://github.com/open-webui/open-webui/commit/16f118d77ad9d68c64116f94551ffb14bf8b2abd">Commit</a></li> <li>โš–๏ธ <strong>Sharing defaults matching what was configured.</strong> On instances upgraded from older versions, public sharing of tools and notes no longer shows as switched on in the admin panel, and saving any unrelated permission no longer grants everyone a capability that was never enabled. <a href="https://github.com/open-webui/open-webui/pull/27716" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27716/hovercard">#27716</a>, <a href="https://github.com/open-webui/open-webui/issues/27715" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27715/hovercard">#27715</a></li> <li>๐Ÿ—‚๏ธ <strong>Folder permissions when starting a chat.</strong> Starting a conversation filed into a folder now checks that you are allowed to write to that folder, a check the message sending path had been skipping, and every place a chat can be filed now treats ownership, shared access, and unknown folders the same way. <a href="https://github.com/open-webui/open-webui/pull/28366" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28366/hovercard">#28366</a></li> <li>๐Ÿชง <strong>Clearer attachment failures.</strong> A link that cannot be read now says so and names the link, and a YouTube video whose transcript is refused explains why and points at the proxy setting that exists for it, instead of both being reported as a knowledge base error. <a href="https://github.com/open-webui/open-webui/pull/28362" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28362/hovercard">#28362</a>, <a href="https://github.com/open-webui/open-webui/issues/28361" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28361/hovercard">#28361</a></li> <li>๐Ÿ”Ž <strong>Chat search finding recent messages.</strong> Searching your chats now looks inside the messages of current conversations on default installations, where it had only been reading an older storage format and missing their content entirely. <a href="https://github.com/open-webui/open-webui/commit/0800c21c64c64810f24c2ec88cca5e36daebb10e">Commit</a></li> <li>๐Ÿงญ <strong>Your place in a compacted chat.</strong> Opening a conversation whose history has been compacted now takes you to its most recent message instead of leaving you parked on the summary, and updates to an existing message no longer move your place in the conversation. <a href="https://github.com/open-webui/open-webui/commit/5caa91a49304148696641d1cd39e43184ba8d748">Commit</a></li> <li>๐Ÿ–ฅ๏ธ <strong>Chats with a personal terminal.</strong> Sending a message with a terminal you added yourself under Settings selected no longer fails with a terminal unavailable error, which had blocked those chats since 0.11.0. <a href="https://github.com/open-webui/open-webui/issues/27621" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27621/hovercard">#27621</a>, <a href="https://github.com/open-webui/open-webui/commit/5b333d75c6adea4d8bde96439974d6e9c83d8198">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3becec6ccfc7dc457270d4e9f0d8c957e8160ddc">Commit</a></li> <li>๐Ÿ“† <strong>Default date for new events.</strong> Creating a calendar event now starts on today's date rather than tomorrow's when you open the form in the evening, or yesterday's when you open it early in the morning. <a href="https://github.com/open-webui/open-webui/pull/27779" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27779/hovercard">#27779</a>, <a href="https://github.com/open-webui/open-webui/issues/27778" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27778/hovercard">#27778</a></li> <li>๐Ÿ—“๏ธ <strong>Recurring event times.</strong> Repeating calendar events now show at the time you set them for instead of being worked out in the server's time zone and shifted by the gap between the two. <a href="https://github.com/open-webui/open-webui/issues/27774" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27774/hovercard">#27774</a>, <a href="https://github.com/open-webui/open-webui/commit/d721b0d19621d01e35505105a778ce5681b2ffba">Commit</a></li> <li>๐Ÿงฉ <strong>Chats during model list refreshes.</strong> On direct connections, background work such as title and tag generation no longer fails or runs against a mix of old and new model entries while the model list is being refreshed. <a href="https://github.com/open-webui/open-webui/pull/27821" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27821/hovercard">#27821</a></li> <li>๐ŸŽ›๏ธ <strong>Chat Controls staying put.</strong> Hovering a chat in the sidebar whose preview contains an artifact no longer forces the Chat Controls pane open and fills it with that artifact, over the chat you currently have open. <a href="https://github.com/open-webui/open-webui/pull/27773" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27773/hovercard">#27773</a>, <a href="https://github.com/open-webui/open-webui/issues/27772" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27772/hovercard">#27772</a></li> <li>๐Ÿ“จ <strong>Reliable streaming with unusual characters.</strong> Responses containing any of three rare invisible line break characters no longer arrive split or broken when the "ENABLE_ORJSON" option is turned on. <a href="https://github.com/open-webui/open-webui/pull/27819" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27819/hovercard">#27819</a></li> <li>๐Ÿงฎ <strong>JSON options honoured again.</strong> Options passed to the shared JSON helper are no longer silently ignored when the "ENABLE_ORJSON" option is turned on, falling back to the standard encoder that supports them. <a href="https://github.com/open-webui/open-webui/commit/78ed5a0235c4de67828ba4b0d6147035067cec2c">Commit</a></li> <li>๐Ÿšซ <strong>Duplicate models in lists.</strong> Adding a model that is already on a connection's allowed list is now rejected instead of quietly adding it a second time, the arena picker no longer offers models you have already chosen, and existing duplicates are cleaned up the next time the list is saved. <a href="https://github.com/open-webui/open-webui/pull/28251" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28251/hovercard">#28251</a>, <a href="https://github.com/open-webui/open-webui/issues/28249" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28249/hovercard">#28249</a></li> <li>๐Ÿ“ <strong>Dragging chats into shared folders.</strong> A shared folder you can write to now highlights and accepts a dropped chat, while one you only have read access to no longer offers itself as a drop target for an action that could only fail. <a href="https://github.com/open-webui/open-webui/commit/e4dd6c4bf14c7ea54c1effa6c40ad9e95185c413">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28261" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28261/hovercard">#28261</a></li> <li>โฐ <strong>Listing automations through chat.</strong> Asking a model to list your automations without naming a folder now returns every automation you have, instead of only the ones that sit outside a folder. <a href="https://github.com/open-webui/open-webui/commit/f8ac75d188b7e07906aa1d5e648e3fc25a78ef2b">Commit</a></li> <li>๐Ÿง  <strong>Faster follow-ups with memory enabled.</strong> The memories handed to the model now appear in a stable order from one message to the next, so servers that reuse their work between turns no longer reprocess the whole conversation each time you reply. <a href="https://github.com/open-webui/open-webui/issues/28292" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28292/hovercard">#28292</a>, <a href="https://github.com/open-webui/open-webui/commit/ff74bfa6a117c6f03097034c74c2f9bdfb824203">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d22bb6703f244e6769ac9b0f2e41d784ad6cf535">Commit</a></li> <li>๐ŸŽฏ <strong>Custom model parameters combining.</strong> Setting a custom parameter on a model no longer silently discards every custom parameter defined in the global defaults, and a value sent directly in an API request is no longer overwritten by the model's saved settings. <a href="https://github.com/open-webui/open-webui/commit/11739a2de8eddf7ef26378356aff8a1bcab4a349">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28241" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28241/hovercard">#28241</a></li> <li>๐Ÿ‘ฅ <strong>Sharing with people already added.</strong> The access picker no longer offers people and groups that already have access, and the Users heading no longer appears above an empty list. <a href="https://github.com/open-webui/open-webui/commit/385d08bea5899bcb160391db466662b0a0a6f801">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28253" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28253/hovercard">#28253</a></li> <li>๐Ÿ”ง <strong>Full tool parameter descriptions.</strong> A tool whose parameter description runs over several lines now passes the whole description to the model instead of only its first line. <a href="https://github.com/open-webui/open-webui/commit/b606e13da3753027ead0e92e35e1399b60c96c8e">Commit</a></li> <li>๐Ÿ“ <strong>Notes saved in an unexpected shape.</strong> A note whose content was stored as structured data rather than text no longer breaks the notes page for everything else, and opens with that content shown as a formatted code block. <a href="https://github.com/open-webui/open-webui/commit/8d1c205d8e7335ef7c292afb125a7270976f327b">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28222" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28222/hovercard">#28222</a></li> <li>๐Ÿ’ฌ <strong>Direct messages after an account is deleted.</strong> A direct message conversation no longer counts a deleted account among its members, and opening a direct message with someone finds the existing conversation instead of starting a second one alongside it. <a href="https://github.com/open-webui/open-webui/commit/a41faa3c226b20e7db7508c49c7d1d015ac9e973">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28257" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28257/hovercard">#28257</a></li> <li>๐Ÿซฅ <strong>Deactivating a model.</strong> Turning a model off no longer removes the wrong entry from the model list, or fails the list outright and leaves the model picker empty for everyone until the model is turned back on. <a href="https://github.com/open-webui/open-webui/commit/5cecb7dbfad3994228ee53d19232650400462332">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28202" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28202/hovercard">#28202</a></li> <li>๐Ÿ’ญ <strong>Readable errors on chat actions.</strong> When moving, renaming, or otherwise changing a chat fails, the message explaining why now appears in place of an unhelpful object placeholder. <a href="https://github.com/open-webui/open-webui/pull/28260" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28260/hovercard">#28260</a>, <a href="https://github.com/open-webui/open-webui/issues/28259" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28259/hovercard">#28259</a></li> <li>๐Ÿชช <strong>Authorship in shared chats.</strong> A chat shared with you now shows the name and picture of whoever wrote it, in the message list and in the overview panel, rather than crediting the messages to you. <a href="https://github.com/open-webui/open-webui/pull/28274" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28274/hovercard">#28274</a>, <a href="https://github.com/open-webui/open-webui/issues/28273" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28273/hovercard">#28273</a></li> <li>๐Ÿ–‡๏ธ <strong>Adding terminals over plain connections.</strong> Saving a terminal connection now works when the interface is served without HTTPS, where the dialog would sit there doing nothing because the browser withholds the tool used to generate its identifier. <a href="https://github.com/open-webui/open-webui/commit/2a45fa04cb1d07b258e0b880ab0c02577f0dc035">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28148" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28148/hovercard">#28148</a></li> <li>๐Ÿ—ƒ๏ธ <strong>openGauss vector storage.</strong> Deployments using openGauss for vector storage no longer fail the moment they touch it. <a href="https://github.com/open-webui/open-webui/pull/27838" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27838/hovercard">#27838</a></li> <li>๐ŸŽš๏ธ <strong>ColBERT reranker startup.</strong> Loading a ColBERT reranker now names the model in the log rather than printing a logging error and a traceback in its place. <a href="https://github.com/open-webui/open-webui/pull/27838" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27838/hovercard">#27838</a></li> <li>๐Ÿ–ผ๏ธ <strong>Images that no longer exist.</strong> A message whose image file has been deleted now shows a small unavailable placeholder that cannot be opened, rather than a broken image that spilled the whole reply text into the picture frame and still opened full screen. <a href="https://github.com/open-webui/open-webui/pull/27730" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27730/hovercard">#27730</a>, <a href="https://github.com/open-webui/open-webui/issues/27728" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27728/hovercard">#27728</a>, <a href="https://github.com/open-webui/open-webui/commit/f8c5fda283e6206d92e81ae3b83ffe5d7a144b03">Commit</a></li> <li>๐Ÿ›‚ <strong>Connecting external accounts.</strong> Authorizing a tool's external account now completes only for the person who started it, rather than for whoever happens to return with the authorization, and signing out clears the session it relies on. <a href="https://github.com/open-webui/open-webui/commit/c2107e5bb3689a69c170ca526925f4ed84bd00f5">Commit</a></li> <li>๐ŸชŸ <strong>Starting up on Windows.</strong> The Windows start script now creates the secret key it needs on a fresh installation, instead of printing a run of file not found messages and then refusing to start, and it copes with an installation path that contains spaces. <a href="https://github.com/open-webui/open-webui/pull/28061" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28061/hovercard">#28061</a>, <a href="https://github.com/open-webui/open-webui/issues/28060" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28060/hovercard">#28060</a></li> <li>๐Ÿ•ธ๏ธ <strong>Overlapping branches in the overview.</strong> Branch nodes in a chat's overview keep a clear gap between them when the interface is scaled up, rather than sitting on top of one another. <a href="https://github.com/open-webui/open-webui/pull/27995" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27995/hovercard">#27995</a>, <a href="https://github.com/open-webui/open-webui/issues/27994" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27994/hovercard">#27994</a></li> <li>๐Ÿ—‘๏ธ <strong>Delete offered only when allowed.</strong> The chat deletion controls in the sidebar, the chat menu, search, archived chats, and data controls no longer appear for people whose permissions do not allow deleting, where using them produced an access denied error. <a href="https://github.com/open-webui/open-webui/pull/27714" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27714/hovercard">#27714</a>, <a href="https://github.com/open-webui/open-webui/issues/27713" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27713/hovercard">#27713</a></li> <li>๐Ÿด <strong>Fork offered only when allowed.</strong> The fork action and the fork command no longer appear for people whose chat import permission is turned off, where using them produced an access denied error. <a href="https://github.com/open-webui/open-webui/pull/27711" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27711/hovercard">#27711</a>, <a href="https://github.com/open-webui/open-webui/issues/27692" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27692/hovercard">#27692</a></li> <li><g-emoji class="g-emoji" alias="arrow_up_down">โ†•๏ธ</g-emoji> <strong>Expand button in the message box.</strong> The button that enlarges the message box no longer sits on top of a tagged model's dismiss button or the first attached file, and stays reachable in long prompts. <a href="https://github.com/open-webui/open-webui/pull/27676" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27676/hovercard">#27676</a>, <a href="https://github.com/open-webui/open-webui/issues/26736" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26736/hovercard">#26736</a></li> <li>๐Ÿ”† <strong>Regenerate in high contrast mode.</strong> With high contrast mode on, the regenerate button now stays visible on earlier replies instead of appearing only when you hover over them. <a href="https://github.com/open-webui/open-webui/pull/27644" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27644/hovercard">#27644</a>, <a href="https://github.com/open-webui/open-webui/issues/27638" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27638/hovercard">#27638</a></li> <li>โœ‚๏ธ <strong>Clipped icons and avatars.</strong> The terminal icon beside the message box and the profile picture in account settings are no longer shaved flat along their left edge. <a href="https://github.com/open-webui/open-webui/pull/27691" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27691/hovercard">#27691</a>, <a href="https://github.com/open-webui/open-webui/issues/27690" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27690/hovercard">#27690</a></li> <li>๐Ÿช„ <strong>Merged responses after a reload.</strong> Merging the answers from several models now works on a conversation you have reopened, instead of the merging model reporting that the other responses were empty. <a href="https://github.com/open-webui/open-webui/pull/27673" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27673/hovercard">#27673</a>, <a href="https://github.com/open-webui/open-webui/issues/26962" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26962/hovercard">#26962</a></li> <li>๐Ÿ”ข <strong>Token counts for background chats.</strong> Conversations started by automations, timers, sub-agents, and channels now report their token usage like any other chat, rather than arriving without it even when the model is set up to provide it. <a href="https://github.com/open-webui/open-webui/pull/27661" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27661/hovercard">#27661</a>, <a href="https://github.com/open-webui/open-webui/issues/27653" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27653/hovercard">#27653</a></li> <li>๐Ÿ“ <strong>Settings on tall screens.</strong> The settings window now grows with the height of your display instead of stopping short and making you scroll inside it while space sits unused above and below. <a href="https://github.com/open-webui/open-webui/pull/27615" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27615/hovercard">#27615</a>, <a href="https://github.com/open-webui/open-webui/issues/27614" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27614/hovercard">#27614</a></li> <li>๐Ÿ–ฑ๏ธ <strong>Sections opening by accident.</strong> Folders, collapsible sections, and tool call blocks now open and close only when you click them, rather than also reacting when you release the mouse over them after dragging or selecting text. <a href="https://github.com/open-webui/open-webui/commit/bd250a0e2431f8c2c7e2f4a34c5327f21fc77d4b">Commit</a></li> <li>๐Ÿ” <strong>Rebuilding knowledge base vectors.</strong> Rebuilding the vectors for a knowledge base now also rebuilds them for each file it contains, so attaching a single file afterwards finds its content instead of quietly returning nothing and letting the model answer from thin air. <a href="https://github.com/open-webui/open-webui/issues/28106" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28106/hovercard">#28106</a>, <a href="https://github.com/open-webui/open-webui/commit/2a6e671f548970c8223692024e630b9936e9fa7c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/89922cc9d585e10b026693681b44afdc4b874588">Commit</a></li> <li>๐Ÿ“Œ <strong>Attaching a chat shared with you.</strong> Attaching a conversation that was shared with you, directly or through a shared folder, now brings its content along instead of quietly attaching nothing. <a href="https://github.com/open-webui/open-webui/commit/5cd9a395344e882b4384bec0899f503ad540aecc">Commit</a></li> <li>๐Ÿงฒ <strong>The page staying still when typing.</strong> Returning focus to the message box no longer scrolls the conversation, so switching chats, running a command, or picking something from a menu leaves your place on screen alone. <a href="https://github.com/open-webui/open-webui/commit/9122c24ea2d506aad50384ca8aba1616d1bed626">Commit</a></li> <li>๐Ÿ“ท <strong>Round profile pictures on narrow screens.</strong> Profile pictures in the admin user list and other lists no longer squash into ovals of differing widths when the window is narrow. <a href="https://github.com/open-webui/open-webui/pull/28000" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28000/hovercard">#28000</a>, <a href="https://github.com/open-webui/open-webui/issues/27999" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27999/hovercard">#27999</a></li> <li>๐ŸŽ™๏ธ <strong>Voice mode in the notes editor.</strong> The voice mode button is no longer offered in the chat embedded in a note, where it does not apply. <a href="https://github.com/open-webui/open-webui/commit/9122c24ea2d506aad50384ca8aba1616d1bed626">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e963d36e393aead56b941e99d4167fb0dc9d2d7a">Commit</a></li> <li>โณ <strong>Analytics stuck loading.</strong> Choosing a custom date range in analytics without picking dates yet no longer leaves the tab spinning forever, including after leaving and coming back to it. <a href="https://github.com/open-webui/open-webui/issues/28125" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28125/hovercard">#28125</a>, <a href="https://github.com/open-webui/open-webui/commit/629cdcb5303958c5b99ee437030ab80cc418bc2e">Commit</a></li> <li>๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ <strong>Owner avatars on shared chats.</strong> The picture beside a chat someone shared with you now loads, and falls back to the default image if it cannot, rather than leaving a blank gap when the interface and the server are on different addresses. <a href="https://github.com/open-webui/open-webui/pull/28272" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28272/hovercard">#28272</a>, <a href="https://github.com/open-webui/open-webui/issues/28271" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28271/hovercard">#28271</a></li> <li>๐ŸŽจ <strong>Image generation and web search staying switched off.</strong> Turning either off now takes effect at once on every path: sessions opened beforehand can no longer produce images or run searches, an image request no longer reaches the provider on a model using the older tool-calling method, the entry disappears from the integrations menu right away, and an active marker beside the message box no longer lingers after its feature is withdrawn. <a href="https://github.com/open-webui/open-webui/pull/27759" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27759/hovercard">#27759</a>, <a href="https://github.com/open-webui/open-webui/issues/27758" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27758/hovercard">#27758</a>, <a href="https://github.com/open-webui/open-webui/issues/26842" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26842/hovercard">#26842</a>, <a href="https://github.com/open-webui/open-webui/pull/27669" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27669/hovercard">#27669</a></li> <li>๐Ÿ“ฐ <strong>Attached pages reaching the model.</strong> The text pulled from an attached web page or YouTube video now actually reaches the model, rather than arriving empty so the reply had nothing to work from, and opening the source to check no longer fails. <a href="https://github.com/open-webui/open-webui/issues/28378" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28378/hovercard">#28378</a>, <a href="https://github.com/open-webui/open-webui/commit/9c21d4ed3ba9ba8e53def7e1a1366b74834cb42d">Commit</a></li> <li>๐ŸŒ <strong>Tavily page fetching.</strong> Reading a web page with Tavily selected as the loader works again, having failed on every attempt since 0.10.0. <a href="https://github.com/open-webui/open-webui/pull/27636" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27636/hovercard">#27636</a>, <a href="https://github.com/open-webui/open-webui/issues/27602" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27602/hovercard">#27602</a></li> <li>๐Ÿ—’๏ธ <strong>Reply box in threads.</strong> The reply box in a channel thread now stays at the bottom of the panel while you scroll back through the replies, instead of scrolling out of sight with them. <a href="https://github.com/open-webui/open-webui/pull/27768" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27768/hovercard">#27768</a>, <a href="https://github.com/open-webui/open-webui/issues/27767" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27767/hovercard">#27767</a></li> <li>๐ŸŽน <strong>Model picker shortcut.</strong> The keyboard shortcut for opening the model picker works again, and a link to a chat naming a model you do not have still opens the picker with that name filled in. <a href="https://github.com/open-webui/open-webui/commit/e1acd7e7ca5085e03babbea16b4770e51c38886e">Commit</a></li> <li>โŒจ๏ธ <strong>Reaching the download options by keyboard.</strong> In the model picker, arrowing past the last result now moves through the options to fetch that model from each server that can supply it, so they can be chosen with the keyboard instead of only by clicking. <a href="https://github.com/open-webui/open-webui/commit/4e03d89414a7be1203579f45225ca64f1221205f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/25802c048e6123fa602182949ad2a9f349e1e863">Commit</a></li> <li>๐Ÿ“‚ <strong>Opening a folder in the sidebar.</strong> Selecting a folder now refreshes just that folder's chats rather than rebuilding the whole folder tree, and a folder that is empty or still loading says so instead of showing nothing. <a href="https://github.com/open-webui/open-webui/commit/2e939874904e1ae54d02b8bc6d745931a8e1f673">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/86b7bf1f7e11109816b0d16ada708c637b50c520">Commit</a></li> <li>โฒ๏ธ <strong>Changing an automation through chat.</strong> Asking a model to change one thing about an automation no longer moves it out of its folder or drops its model when the model fills those fields in blank instead of omitting them. <a href="https://github.com/open-webui/open-webui/commit/90bb94abf9a8c6fbb87c72952295ae39d2ad98e5">Commit</a></li> <li>๐Ÿ”‚ <strong>Automations that run a set number of times.</strong> An automation asked to run a limited number of times is now rejected unless it says when to start counting from, rather than being accepted and then running indefinitely. <a href="https://github.com/open-webui/open-webui/pull/27781" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27781/hovercard">#27781</a>, <a href="https://github.com/open-webui/open-webui/issues/27780" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27780/hovercard">#27780</a></li> <li>๐Ÿ“… <strong>Editing a calendar event through chat.</strong> Asking a model to change one thing about an event, such as its title, no longer fails or wipes the details you did not mention. <a href="https://github.com/open-webui/open-webui/pull/27777" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27777/hovercard">#27777</a>, <a href="https://github.com/open-webui/open-webui/issues/27776" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27776/hovercard">#27776</a></li> <li>๐Ÿงน <strong>Session cleanup on multi-instance setups.</strong> The instance doing the periodic session cleanup now keeps its claim on that job alive between passes, so an idle deployment stops logging a renewal warning every two minutes and the claim no longer lapses for half of every cycle. <a href="https://github.com/open-webui/open-webui/commit/939bcdb79e3dcad2278f1e7f4f517a3f2f36f3ec">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27762" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27762/hovercard">#27762</a></li> <li>๐Ÿ  <strong>Starting folder in the file browser.</strong> Reopening the file browser now keeps the folder you were in, instead of the breadcrumb losing its starting point and jumping you elsewhere. <a href="https://github.com/open-webui/open-webui/commit/52c5e3b20d3cd8c3a15db50e2cc75bbd6e82068e">Commit</a></li> <li>๐Ÿฉบ <strong>Repairing default model settings.</strong> Instances whose stored default and pinned model settings had been written in the wrong shape are corrected on startup, so those defaults take effect again. <a href="https://github.com/open-webui/open-webui/commit/5c05608e3ac0aefce8c1eed18c3e205c61f6b6fe">Commit</a></li> <li>๐Ÿงฝ <strong>Cleaner conversation history for the model.</strong> Internal bookkeeping attached to your messages, such as attachment records and token counts, is no longer sent to the model along with the conversation. <a href="https://github.com/open-webui/open-webui/commit/a32a17965ca36f730ebf5ff53a2a8e17082b61a6">Commit</a></li> <li>๐Ÿ™ˆ <strong>Needless request from the model picker.</strong> Opening the model picker as a non-administrator no longer fires a request to an administrator-only settings endpoint that was always refused. <a href="https://github.com/open-webui/open-webui/commit/b4738d1a2e6af1ce20adb322fc6d2aa2c9407901">Commit</a></li> <li>โน๏ธ <strong>Stopping a reply that is waiting.</strong> The stop button now ends a reply that is sitting waiting for you, such as one paused on a tool approval, rather than leaving the conversation stuck part way through. <a href="https://github.com/open-webui/open-webui/commit/f7767d6be774720e16265c6d016bf6a24a1a8759">Commit</a></li> <li>๐Ÿท๏ธ <strong>Folder names with unusual characters.</strong> Naming a folder is no longer refused because another folder's name happens to be similar, and a name ending in a backslash no longer fails outright on PostgreSQL, because names are now compared exactly rather than treated as a search pattern. <a href="https://github.com/open-webui/open-webui/pull/28695" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28695/hovercard">#28695</a>, <a href="https://github.com/open-webui/open-webui/issues/28694" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28694/hovercard">#28694</a></li> <li>๐Ÿค” <strong>Reasoning carried back to Ollama.</strong> A model's earlier thinking is now passed back to Ollama in its own native field rather than pasted into the message as tagged text, so reasoning models keep their train of thought across turns. <a href="https://github.com/open-webui/open-webui/commit/3258330729942b533dc5fe141e876cee7e5eb40d">Commit</a></li> <li>๐Ÿ“Ž <strong>Default pinned models taking effect.</strong> Changing the default pinned models now reaches people who have never chosen their own, where simply having opened the interface once was enough to freeze the list they first saw, and reordering a pin no longer moves the wrong one or reopens the sidebar section afterwards. <a href="https://github.com/open-webui/open-webui/pull/28069" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28069/hovercard">#28069</a>, <a href="https://github.com/open-webui/open-webui/discussions/28067">#28067</a></li> <li>โœ๏ธ <strong>Editing other people's channel messages.</strong> Asking a model to work on a message in a channel now only applies to your own messages, where write access to the channel had been enough to reach anyone's. <a href="https://github.com/open-webui/open-webui/pull/28631" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28631/hovercard">#28631</a></li> <li>๐Ÿช <strong>Signed-in tool servers.</strong> A tool server that relies on your session now receives the credentials belonging to its own connection, rather than whichever were most recently prepared. <a href="https://github.com/open-webui/open-webui/pull/28630" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28630/hovercard">#28630</a></li> <li>๐Ÿ—๏ธ <strong>Editing a folder from its page.</strong> Renaming a folder, changing its icon, creating a subfolder, or deleting it from the folder's own page now updates the sidebar straight away, instead of leaving the old name and icon there, and the new subfolder missing, until a reload. <a href="https://github.com/open-webui/open-webui/commit/a40f6f2860b49b4c7f11e369f11bd46e9451eabf">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/736e38338ede1fca5af0829e35585a72f8517d32">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28692" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28692/hovercard">#28692</a>, <a href="https://github.com/open-webui/open-webui/issues/28690" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28690/hovercard">#28690</a></li> <li>๐Ÿ“ฃ <strong>Long channel names in the sidebar.</strong> A channel with a long name no longer squeezes its own menu button out of the row. <a href="https://github.com/open-webui/open-webui/commit/b5da50f3df51786972010c75c7736d5f95362e58">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28671" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28671/hovercard">#28671</a>, <a href="https://github.com/open-webui/open-webui/issues/28670" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28670/hovercard">#28670</a></li> <li>๐Ÿ“ฌ <strong>Mark as unread in chat search.</strong> Marking a chat unread from the search dialog now works and updates the sidebar, where the menu entry looked normal but did nothing at all. <a href="https://github.com/open-webui/open-webui/pull/28136" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28136/hovercard">#28136</a>, <a href="https://github.com/open-webui/open-webui/issues/28135" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28135/hovercard">#28135</a></li> <li>โฌ†๏ธ <strong>Scroll to top on the first click.</strong> In a long chat where older messages had not been loaded yet, one click of scroll to top now reaches the first message instead of stopping short and needing a second. <a href="https://github.com/open-webui/open-webui/pull/28659" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28659/hovercard">#28659</a>, <a href="https://github.com/open-webui/open-webui/issues/28658" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28658/hovercard">#28658</a></li> <li>๐Ÿ”˜ <strong>Double bullets in the release notes.</strong> Each entry in the what's new dialog shows a single bullet again, rather than two sitting at different heights. <a href="https://github.com/open-webui/open-webui/pull/28676" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28676/hovercard">#28676</a>, <a href="https://github.com/open-webui/open-webui/issues/28675" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28675/hovercard">#28675</a></li> <li>๐Ÿ“š <strong>Knowledge search and shared files in chat.</strong> A model searching your knowledge bases or reading a file shared with you through a group now works, where it had failed since 0.11.0 and quietly answered as though the knowledge were empty, affecting instances that forward user details to their embedding service and, for shared files, every instance regardless of settings. <a href="https://github.com/open-webui/open-webui/pull/27642" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27642/hovercard">#27642</a>, <a href="https://github.com/open-webui/open-webui/issues/27641" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27641/hovercard">#27641</a></li> <li>๐Ÿ”– <strong>Skill identifiers that cannot be reached.</strong> Creating a skill whose identifier contains a character that is not allowed in a web address is now refused outright, rather than accepted and then permanently impossible to open, edit, turn off, delete, or recreate. <a href="https://github.com/open-webui/open-webui/pull/27660" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27660/hovercard">#27660</a>, <a href="https://github.com/open-webui/open-webui/issues/27655" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27655/hovercard">#27655</a></li> <li>๐Ÿ”ค <strong>Model names on connections with a prefix.</strong> A connection that adds a prefix to its model names now strips it before sending a request through the responses endpoint, where the prefixed name was passed on and rejected as unknown. <a href="https://github.com/open-webui/open-webui/pull/28575" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28575/hovercard">#28575</a>, <a href="https://github.com/open-webui/open-webui/issues/28574" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28574/hovercard">#28574</a></li> <li>๐Ÿ”“ <strong>Turning on open sharing.</strong> The open sharing permission can now be switched on in the default user permissions, where saving appeared to work but the setting was discarded and came back off. <a href="https://github.com/open-webui/open-webui/pull/27609" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27609/hovercard">#27609</a>, <a href="https://github.com/open-webui/open-webui/issues/27607" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27607/hovercard">#27607</a></li> <li>๐Ÿ–Œ๏ธ <strong>White boxes behind model icons.</strong> Model icons with a transparent background no longer sit on a white square in the admin models list, matching how they already appeared everywhere else. <a href="https://github.com/open-webui/open-webui/pull/27612" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27612/hovercard">#27612</a>, <a href="https://github.com/open-webui/open-webui/issues/27611" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27611/hovercard">#27611</a></li> <li>๐Ÿชž <strong>Matching the right account at sign-in.</strong> Looking up an account by its identity provider details now matches the exact value, where the stored details were searched as loose text and a value contained within another's could be matched instead. <a href="https://github.com/open-webui/open-webui/pull/28624" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28624/hovercard">#28624</a></li> <li>๐Ÿ”„ <strong>Syncing a model catalogue more than once.</strong> Syncing models now updates the ones that already exist, where any repeat of a previous sync silently did nothing at all while still reporting success. <a href="https://github.com/open-webui/open-webui/pull/28036" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28036/hovercard">#28036</a>, <a href="https://github.com/open-webui/open-webui/issues/28033" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28033/hovercard">#28033</a></li> <li>๐Ÿ•ฐ๏ธ <strong>Saving a calendar event without a date.</strong> Creating or editing an event with the date cleared now asks for one, where it was sent anyway, refused by the server, and reported as an unreadable error. <a href="https://github.com/open-webui/open-webui/commit/f100edb70874808c93fab84eae1810595f9e9dc3">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28133" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28133/hovercard">#28133</a></li> <li>๐Ÿ”— <strong>Deleting a message in a looping chat.</strong> Deleting a message no longer hangs when the conversation contains a cycle in its reply structure. <a href="https://github.com/open-webui/open-webui/pull/28035" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28035/hovercard">#28035</a></li> <li>๐Ÿซ€ <strong>Scheduled work stopping without warning.</strong> The routine that runs automations and calendar alerts can no longer be discarded while the application is running, which had silently stopped them firing with nothing reported, and it now stops cleanly on shutdown. <a href="https://github.com/open-webui/open-webui/pull/28053" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28053/hovercard">#28053</a>, <a href="https://github.com/open-webui/open-webui/issues/28052" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28052/hovercard">#28052</a></li> <li>๐Ÿ”‹ <strong>Session and usage records left uncleared.</strong> The routines that clear out stale sessions and finished model usage can no longer be discarded while the application is running, so those records stop accumulating unnoticed, and both now stop cleanly on shutdown. <a href="https://github.com/open-webui/open-webui/pull/28053" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28053/hovercard">#28053</a>, <a href="https://github.com/open-webui/open-webui/issues/28052" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28052/hovercard">#28052</a></li> <li>โš—๏ธ <strong>Reasoning carried between turns.</strong> A model's earlier thinking is now recognised from providers that report it in their own nested field, and reasoning that cannot be sent back without a signature is left out rather than being passed on and rejected. <a href="https://github.com/open-webui/open-webui/commit/b6dc70c93b0d36e2659438e7a55aa8b21fee27f8">Commit</a></li> <li>๐Ÿ›Ž๏ธ <strong>Losing all your settings.</strong> Your interface settings are no longer wiped by a session that failed to load them, which could happen with no action on your part and cleared everything from your theme to your model parameters; saving now changes only the settings you actually changed, and a session that cannot load them tells you instead of carrying on as though you had none. <a href="https://github.com/open-webui/open-webui/issues/27766" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27766/hovercard">#27766</a>, <a href="https://github.com/open-webui/open-webui/commit/ad8c79f68657bd3bcf5db6be650e498bb904b36b">Commit</a></li> <li>๐Ÿ–ฒ๏ธ <strong>Losing the collapsed sidebar.</strong> With the sidebar collapsed, opening a chat no longer pushes the narrow sidebar strip off the edge of the screen, which left no way to reopen the sidebar short of shrinking the window to phone size. <a href="https://github.com/open-webui/open-webui/pull/28501" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28501/hovercard">#28501</a>, <a href="https://github.com/open-webui/open-webui/issues/28500" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28500/hovercard">#28500</a></li> <li>๐Ÿงฏ <strong>Timers that fail without saying so.</strong> A timer whose reply cannot be generated, such as one set against a model that has since been removed, is now recorded as failed with the reason, instead of being marked as completed while the reply never arrives. <a href="https://github.com/open-webui/open-webui/pull/27785" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27785/hovercard">#27785</a>, <a href="https://github.com/open-webui/open-webui/issues/27783" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27783/hovercard">#27783</a></li> <li>๐Ÿ–Š๏ธ <strong>Message buttons in channels.</strong> The buttons that appear when you hover a channel message now sit above the message rather than over its content, so they can be clicked on a message that starts with a code block or a table, and so the code and table controls stay clickable too. <a href="https://github.com/open-webui/open-webui/pull/27737" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27737/hovercard">#27737</a>, <a href="https://github.com/open-webui/open-webui/issues/27736" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27736/hovercard">#27736</a></li> <li>๐Ÿ”ก <strong>Searching for non-English tags and text.</strong> Searching workspace models by tag, or prompts and automations by their contents, now finds entries containing characters outside the English alphabet, where roughly half were missed depending on which settings were in force when each one was saved. <a href="https://github.com/open-webui/open-webui/pull/28399" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28399/hovercard">#28399</a></li> <li>๐Ÿ”ญ <strong>Searching the calendar without an end date.</strong> Asking a model to search your calendar without naming an end date now works on PostgreSQL, where the open-ended range was too large for the database to accept and the search failed outright. <a href="https://github.com/open-webui/open-webui/commit/9550731cc17759f6862595b8cd849ae48695b5c1">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27717" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27717/hovercard">#27717</a></li> <li>๐Ÿซง <strong>Attachments replaced by a loading dot.</strong> Pinning a channel message, or otherwise updating one, no longer replaces its attachment with a loading indicator that never resolves until you reload or leave the channel. <a href="https://github.com/open-webui/open-webui/commit/76d01602950a9e40823b53278557708d5bcd1036">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27734" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27734/hovercard">#27734</a>, <a href="https://github.com/open-webui/open-webui/issues/27731" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27731/hovercard">#27731</a></li> <li>๐Ÿ› ๏ธ <strong>Rebuilding empty server lists on every request.</strong> An instance with no tool servers or no terminal servers configured no longer rebuilds that empty list on every request that needs it. <a href="https://github.com/open-webui/open-webui/commit/f1a64ccfc2eb2a58086c55fe413a455bb488c35a">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28568" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28568/hovercard">#28568</a></li> <li>๐Ÿชซ <strong>Errors logged for a cache that was simply empty.</strong> A shared cache that has not been filled yet no longer logs an error suggesting its stored value is broken. <a href="https://github.com/open-webui/open-webui/commit/f1a64ccfc2eb2a58086c55fe413a455bb488c35a">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28568" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28568/hovercard">#28568</a></li> <li>โš“ <strong>Starting up as a non-root user.</strong> Deployments that run the container as a non-root user, such as Kubernetes setups using runAsNonRoot, start again, where a bundled speech model file that only root could read had stopped them since 0.11.0, and a bundled text corpus is now stored somewhere a non-root user can reach. <a href="https://github.com/open-webui/open-webui/issues/27651" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27651/hovercard">#27651</a>, <a href="https://github.com/open-webui/open-webui/commit/0480ca9653f0d566eaedadf0af0d785a9938480b">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28866" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28866/hovercard">#28866</a></li> <li>๐Ÿ“‹ <strong>Finding notes shared read only.</strong> A note shared publicly for reading now appears in the read only view of your notes, where it was readable by anyone with the link but listed nowhere at all. <a href="https://github.com/open-webui/open-webui/pull/27637" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27637/hovercard">#27637</a>, <a href="https://github.com/open-webui/open-webui/issues/27487" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27487/hovercard">#27487</a></li> <li>๐Ÿซ‚ <strong>Signing in from another application.</strong> Signing in through an application that exchanges a token from your identity provider now applies your role and group memberships the same way signing in through the browser does, and an account whose provider sends no role keeps the one it has rather than being reset to the default. <a href="https://github.com/open-webui/open-webui/commit/d799e81edbdc971c6deb096b6474cd95b93504bf">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e9684458125c3202ebc3378aef32f0b6015171d8">Commit</a></li> <li>๐Ÿ—„๏ธ <strong>Empty models section in the sidebar.</strong> The models section no longer appears with nothing in it when every pinned model has since been removed, renamed, or hidden. <a href="https://github.com/open-webui/open-webui/pull/27634" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27634/hovercard">#27634</a>, <a href="https://github.com/open-webui/open-webui/issues/27633" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27633/hovercard">#27633</a></li> <li>๐Ÿšง <strong>The files pane reopening by itself.</strong> With a terminal selected, closing the files pane now keeps it closed, where saving any setting reopened it, including something as incidental as picking an emoji for a folder. <a href="https://github.com/open-webui/open-webui/pull/28693" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28693/hovercard">#28693</a>, <a href="https://github.com/open-webui/open-webui/issues/28691" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28691/hovercard">#28691</a>, <a href="https://github.com/open-webui/open-webui/commit/c1c81f8127466a4cd59a16d8658155b1b8faa2d0">Commit</a></li> <li>๐Ÿšฐ <strong>Watching file processing tying up the database.</strong> Waiting for a file or a knowledge base to finish processing no longer holds a database connection open for as long as the page is watching, which on busy instances could use up every available connection and leave the rest of the application unable to reach the database. <a href="https://github.com/open-webui/open-webui/pull/28183" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28183/hovercard">#28183</a></li> <li>๐Ÿ—œ๏ธ <strong>Embedding settings for other providers.</strong> Saving your embedding settings now writes only the provider you have selected, where it also overwrote the address and key stored for the other two, losing them if their fields were not filled in. <a href="https://github.com/open-webui/open-webui/commit/87d9b7e84e71b097eadf1df4f9852359104f17ed">Commit</a></li> <li><g-emoji class="g-emoji" alias="left_right_arrow">โ†”๏ธ</g-emoji> <strong>Connectors in the side-by-side overview.</strong> With the conversation overview laid out left to right, the lines between messages now join at the sides rather than the top and bottom, so they no longer cut across the boxes. <a href="https://github.com/open-webui/open-webui/commit/6e468c5b9539d3b6057bab63d81e8d2974acff7b">Commit</a></li> <li>๐Ÿ’ซ <strong>Thinking indicator with the fade turned off.</strong> Turning off the fade effect for streaming text no longer hides the thinking indicator and its spinner, which had made a reasoning model look as though it had already finished from the first moment it started. <a href="https://github.com/open-webui/open-webui/issues/28559" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28559/hovercard">#28559</a>, <a href="https://github.com/open-webui/open-webui/commit/b1dc945bd6cf97a7067e603fc1b797301e626fb6">Commit</a></li> <li>๐Ÿˆณ <strong>Conversations compacted too early on llama.cpp.</strong> A conversation served by llama.cpp is no longer shortened at roughly half the size you configured, where its cached input was counted twice, so a chat showing 39,000 tokens was treated as 77,000 against a 70,000 limit. <a href="https://github.com/open-webui/open-webui/issues/28590" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28590/hovercard">#28590</a>, <a href="https://github.com/open-webui/open-webui/commit/0b27fa5e873c9f3cff7b14e4eeab8321bdd8970c">Commit</a></li> <li>โ—ป๏ธ <strong>Settings tabs spilling past the corner.</strong> Scrolling the list of tabs in settings no longer paints a tab or part of an icon across the dialog's rounded bottom corner, where it appeared to sit outside the dialog. <a href="https://github.com/open-webui/open-webui/pull/27617" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27617/hovercard">#27617</a>, <a href="https://github.com/open-webui/open-webui/issues/27616" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27616/hovercard">#27616</a></li> <li>๐ŸŽฐ <strong>Settings for a switched-off function.</strong> A function that has been turned off no longer offers its per-user settings, and saving them is refused, where doing so loaded the function's code and stored settings that had no effect. <a href="https://github.com/open-webui/open-webui/commit/a3a81fee03ba7ec0ceb4d1f456e80a8f4fc2320f">Commit</a></li> <li>๐Ÿ—ƒ <strong>Shared folders reordering themselves.</strong> The list of folders shared with you now keeps a consistent order, where on PostgreSQL renaming a folder could shuffle the ones beside it. <a href="https://github.com/open-webui/open-webui/pull/28804" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28804/hovercard">#28804</a></li> <li>๐Ÿ“œ <strong>System prompt repeated after a tool call.</strong> On models served by a pipe or manifold, the system prompt is no longer added again each time a tool runs, where it built up one extra copy per round and was sent to the provider that way. <a href="https://github.com/open-webui/open-webui/pull/28739" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28739/hovercard">#28739</a>, <a href="https://github.com/open-webui/open-webui/issues/28736" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28736/hovercard">#28736</a></li> <li>๐Ÿ”• <strong>Calendar reminders stopping for everyone.</strong> A single event whose reminder time was stored as something other than a number no longer stops reminders being sent, for that event or for anyone else's, and falls back to the usual reminder window instead. <a href="https://github.com/open-webui/open-webui/pull/28790" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28790/hovercard">#28790</a></li> <li>๐Ÿ—จ <strong>Attached conversations reaching the model.</strong> A conversation attached to your message is now listed among its attachments, where it was left out entirely and the model was never told it was there. <a href="https://github.com/open-webui/open-webui/pull/28788" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28788/hovercard">#28788</a></li> <li>โ†” <strong>Dragging a side panel closed.</strong> Dragging the chat controls, the note chat, or a channel thread panel closed by its edge no longer floods the browser console with errors and leaves stray handlers behind, and the divider can now be moved with the arrow keys once focused. <a href="https://github.com/open-webui/open-webui/issues/28759" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28759/hovercard">#28759</a>, <a href="https://github.com/open-webui/open-webui/commit/33dff414e829d10dc6691b1cac7457077fa6799c">Commit</a></li> <li>๐ŸŽซ <strong>Saving a message with unusual characters on PostgreSQL.</strong> A message carrying characters PostgreSQL will not store outside its text no longer fails to save, where those characters were cleaned from the conversation but passed through raw to the separate message record. <a href="https://github.com/open-webui/open-webui/pull/28820" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28820/hovercard">#28820</a></li> <li>๐Ÿ”ฒ <strong>Removing an item in the model editor.</strong> Unticking a tool, skill, action, or filter no longer leaves the next one in the list looking unticked while it is still selected, needing two clicks to remove and passing the same confusion down the list each time. <a href="https://github.com/open-webui/open-webui/pull/28837" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28837/hovercard">#28837</a>, <a href="https://github.com/open-webui/open-webui/issues/28832" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28832/hovercard">#28832</a></li> <li>๐Ÿ“‰ <strong>Usage figures drifting upward on clustered setups.</strong> The routine that clears out finished model usage no longer stops for good across the whole cluster after a brief interruption, which had left the usage figures counting models nobody was using and grew the work every disconnection had to do. <a href="https://github.com/open-webui/open-webui/pull/28834" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28834/hovercard">#28834</a></li> <li>๐Ÿ”‡ <strong>Voice mode staying silent with reasoning models.</strong> Voice mode now speaks when the emoji option is on and the model behind it reports its answer as thinking rather than text, where the whole reply went unspoken and nothing reached the speech service at all. <a href="https://github.com/open-webui/open-webui/pull/28724" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28724/hovercard">#28724</a></li> <li>๐Ÿท <strong>Tags on a chat shared with you.</strong> Opening a chat shared with you, or one in a shared folder, no longer fails to load its tags, and an administrator opening someone else's chat now sees the tags that chat actually carries. <a href="https://github.com/open-webui/open-webui/commit/7d4747dfd73d7629227b10ae63c6854cc7543bee">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28767" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28767/hovercard">#28767</a></li> <li>๐Ÿ”ป <strong>Message box controls in a narrow panel.</strong> Narrowing the note chat panel, or squeezing the chat with a wide controls pane, no longer hides the attach and integrations buttons behind the model name or pushes the send button outside the box; the model name is shortened to make room instead. <a href="https://github.com/open-webui/open-webui/pull/28912" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28912/hovercard">#28912</a>, <a href="https://github.com/open-webui/open-webui/issues/28911" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28911/hovercard">#28911</a></li> <li>โŒ› <strong>Replies that are all thinking and no answer.</strong> A reply from a provider using the responses format that ends while the model is still in its reasoning, with no answer text after it, now finishes normally instead of failing the whole turn and leaving an unreadable error in place of the reply. <a href="https://github.com/open-webui/open-webui/pull/28872" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28872/hovercard">#28872</a>, <a href="https://github.com/open-webui/open-webui/issues/28871" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28871/hovercard">#28871</a></li> <li>๐Ÿ“ƒ <strong>Word and PowerPoint previews overflowing.</strong> Previewing one of these files now keeps the document inside its frame, with the zoom and slide controls staying put rather than scrolling away, and a presentation opens on its current slide instead of below the visible area. <a href="https://github.com/open-webui/open-webui/pull/28878" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28878/hovercard">#28878</a>, <a href="https://github.com/open-webui/open-webui/issues/28877" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28877/hovercard">#28877</a></li> <li>๐ŸŽž <strong>Workspace models in the admin models list.</strong> Workspace models appear in the admin models list again, so they can be ordered, set as the default, and pinned for everyone; choosing one opens its own editor, where it opened the base model editor and could strip the model's base model, turning it into something else. <a href="https://github.com/open-webui/open-webui/commit/ccbb3303f2ec5db0b16573bbb665a12f6764da66">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27702" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27702/hovercard">#27702</a></li> <li>โŒจ <strong>Errors after sending a long message.</strong> With prompt autocompletion on, sending or clearing a message of several paragraphs within a second of typing no longer throws an error in the browser console. <a href="https://github.com/open-webui/open-webui/pull/28824" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28824/hovercard">#28824</a>, <a href="https://github.com/open-webui/open-webui/issues/28823" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28823/hovercard">#28823</a></li> <li>โŒ <strong>Tool calls that failed looking successful.</strong> A tool call that returned an error is now marked as failed with a red cross rather than a green tick, so a reply built on a failed call is easier to spot. <a href="https://github.com/open-webui/open-webui/commit/f3f76095d18e07a3a944f22a4b25993bbffe90a3">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28016" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28016/hovercard">#28016</a></li> <li>๐Ÿ—œ <strong>Download links in a cited source doing nothing.</strong> A link in a citation shown as formatted content now downloads the file when clicked, where it silently did nothing at all. <a href="https://github.com/open-webui/open-webui/commit/3c66d639e31ba8a7477d337b37d8d671ea2430cf">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28924" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28924/hovercard">#28924</a></li> <li>๐Ÿ—ณ <strong>Web searches failing without saying why.</strong> A web search that fails now explains itself instead of returning nothing at all, which most often happens when a search engine has been selected without its key being configured. <a href="https://github.com/open-webui/open-webui/pull/28942" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28942/hovercard">#28942</a></li> <li>โœ… <strong>Checklists in notes.</strong> A checklist in a note now previews and downloads as a proper checklist, where each item carried a stray second pair of brackets and its text began two lines below the box. <a href="https://github.com/open-webui/open-webui/pull/27671" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27671/hovercard">#27671</a>, <a href="https://github.com/open-webui/open-webui/issues/26067" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26067/hovercard">#26067</a></li> <li>๐Ÿงฟ <strong>Shortening a conversation with the wrong model.</strong> Choosing to shorten long conversations with the model you are chatting with now does that, where it used the configured task model instead on any instance that has one. <a href="https://github.com/open-webui/open-webui/commit/5093a9938937153e287db27a671f5ba1fb5d7592">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27603" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27603/hovercard">#27603</a></li> <li>๐Ÿ–ฅ <strong>Stopping a reply after the shared cache restarts.</strong> Stopping a reply now keeps working across a cluster after the shared cache restarts or its connection drops, where the part that carries a stop between instances gave up for good and silently, and only restarting the application brought it back. <a href="https://github.com/open-webui/open-webui/commit/bf3a58dbcd18ddc2c7f130d8f9529477fe7cb042">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28909" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28909/hovercard">#28909</a></li> <li>๐Ÿ“ผ <strong>Attached links to media and archives.</strong> Attaching a link that leads to something other than a web page, such as a video or an archive, now reads it as the file it is rather than trying to treat it as text. <a href="https://github.com/open-webui/open-webui/commit/886248de36e3a60c3687d1bee6af110e14110eca">Commit</a></li> <li>๐Ÿ—’ <strong>Editing a workflow from settings.</strong> Opening the code editor for a ComfyUI workflow from the images settings now brings it to the front, where it opened behind the settings dialog and could not be reached at all. <a href="https://github.com/open-webui/open-webui/pull/27648" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27648/hovercard">#27648</a>, <a href="https://github.com/open-webui/open-webui/issues/27647" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27647/hovercard">#27647</a></li> <li>๐Ÿ–ผ <strong>Downloading a generated image.</strong> Downloading an image from its preview now saves the image, where it could silently save a small file containing an authentication error instead, and a download that does fail now says so. <a href="https://github.com/open-webui/open-webui/commit/2578174637e48cafa4bcb09adbb1b7f4b545a8d5">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27723" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27723/hovercard">#27723</a>, <a href="https://github.com/open-webui/open-webui/issues/27722" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27722/hovercard">#27722</a></li> <li>๐Ÿ—‚ <strong>Directory sync listing local accounts.</strong> A directory service syncing accounts over SCIM now sees only the accounts that came from a directory, where it also listed and could modify accounts created with a password in Open WebUI itself. <a href="https://github.com/open-webui/open-webui/commit/fb4f476316a2f83e4d2914d535c19b3440cbc490">Commit</a></li> <li>โ†• <strong>Sorting a list of people.</strong> Sorting the admin user list, or a channel's member list, now works when no search term has been entered, where the chosen order was ignored unless something was being searched for. <a href="https://github.com/open-webui/open-webui/commit/fb4f476316a2f83e4d2914d535c19b3440cbc490">Commit</a></li> <li>๐Ÿงถ <strong>Text dropped from a reply by a filter.</strong> A filter that rewrites a reply as it streams, or a provider that sends something other than plain text in a chunk, no longer causes that part of the reply to vanish without explanation. <a href="https://github.com/open-webui/open-webui/pull/28840" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28840/hovercard">#28840</a></li> <li>๐Ÿ— <strong>Timers firing twice after a fork.</strong> Branching a conversation that has a timer set no longer leaves the copy able to fire that timer as well. <a href="https://github.com/open-webui/open-webui/pull/27663" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27663/hovercard">#27663</a>, <a href="https://github.com/open-webui/open-webui/issues/27622" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27622/hovercard">#27622</a>, <a href="https://github.com/open-webui/open-webui/issues/27745" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27745/hovercard">#27745</a></li> <li>๐Ÿ—ฃ <strong>Sentences skipped in voice mode.</strong> Voice mode now speaks every sentence of a reply, where any sentence that completed in the same piece of the reply as another was silently never read out, which happened routinely with providers that send whole paragraphs at a time. <a href="https://github.com/open-webui/open-webui/commit/495296346edfcd96a506a22fed4bb5b8faf3cd4d">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28730" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28730/hovercard">#28730</a>, <a href="https://github.com/open-webui/open-webui/issues/19861" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/19861/hovercard">#19861</a></li> <li>๐Ÿ–Š <strong>Dragging a side panel wider than the window.</strong> A side panel can no longer be dragged so wide that the chat beside it is squeezed away, and dragging one below its minimum width now closes it rather than sticking. <a href="https://github.com/open-webui/open-webui/commit/ef455fcef9d6cb1136275c26e49bc3c5d6661795">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28965" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28965/hovercard">#28965</a></li> <li>๐ŸŽ™ <strong>The wrong model selected when reopening a chat.</strong> Reopening a conversation where a reply was regenerated with a different model now selects the model behind the reply you are looking at, where it picked the one used for the first attempt, which might be a model no longer available. <a href="https://github.com/open-webui/open-webui/pull/27674" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27674/hovercard">#27674</a>, <a href="https://github.com/open-webui/open-webui/issues/25052" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25052/hovercard">#25052</a>, <a href="https://github.com/open-webui/open-webui/commit/8a170897bad569d93e069226a996942583ebde80">Commit</a></li> <li>๐Ÿ›œ <strong>Coding tools that speak Anthropic's format.</strong> A tool such as Cline pointed at Open WebUI using Anthropic's own message format can reach models again, where every request failed before it was even sent, and once that was corrected the request was rejected by Anthropic for being signed the wrong way. <a href="https://github.com/open-webui/open-webui/pull/27675" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27675/hovercard">#27675</a>, <a href="https://github.com/open-webui/open-webui/issues/27595" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27595/hovercard">#27595</a>, <a href="https://github.com/open-webui/open-webui/issues/27695" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27695/hovercard">#27695</a></li> <li>๐Ÿ‘ฏ <strong>Code in pinned messages.</strong> Opening the pinned messages of a channel now shows the code in those messages, where each block appeared empty and its contents were drawn into the channel behind the dialog instead, doubling them there. <a href="https://github.com/open-webui/open-webui/pull/27740" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27740/hovercard">#27740</a>, <a href="https://github.com/open-webui/open-webui/issues/27739" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27739/hovercard">#27739</a></li> <li>๐Ÿงป <strong>Logs flooded by an unreachable server.</strong> A terminal or tool server that cannot be reached now records one line per attempt rather than a full stack trace, where a few minutes of downtime could fill the log with hundreds of megabytes and drown out everything else. <a href="https://github.com/open-webui/open-webui/pull/27755" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27755/hovercard">#27755</a>, <a href="https://github.com/open-webui/open-webui/issues/27751" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27751/hovercard">#27751</a>, <a href="https://github.com/open-webui/open-webui/pull/27757" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27757/hovercard">#27757</a>, <a href="https://github.com/open-webui/open-webui/issues/27756" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27756/hovercard">#27756</a></li> <li>๐Ÿ–ฑ <strong>Clicking inside a chat preview.</strong> Clicking an image or a source in the preview that appears when you hover a chat in the sidebar no longer flashes a viewer open and shut, since the preview is meant only to be read. <a href="https://github.com/open-webui/open-webui/pull/27770" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27770/hovercard">#27770</a>, <a href="https://github.com/open-webui/open-webui/issues/27769" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27769/hovercard">#27769</a></li> <li>๐Ÿ›ข <strong>Using pgvector with database access by role.</strong> An instance on Amazon RDS that signs in to its database with a temporary credential rather than a stored password now starts when pgvector is the vector store, where the two could not be used together and the container exited on startup. <a href="https://github.com/open-webui/open-webui/pull/27754" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27754/hovercard">#27754</a>, <a href="https://github.com/open-webui/open-webui/issues/27752" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27752/hovercard">#27752</a></li> <li>๐Ÿ“— <strong>Opening knowledge attached to a model or folder.</strong> Clicking a knowledge item attached to a model or a folder opens it again, so it can be read and its retrieval mode changed between focused retrieval and the whole document, where since 0.11.0 neither was possible outside a chat. <a href="https://github.com/open-webui/open-webui/pull/27686" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27686/hovercard">#27686</a>, <a href="https://github.com/open-webui/open-webui/issues/27684" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27684/hovercard">#27684</a>, <a href="https://github.com/open-webui/open-webui/issues/27801" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27801/hovercard">#27801</a>, <a href="https://github.com/open-webui/open-webui/issues/28825" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28825/hovercard">#28825</a></li> <li>๐ŸŽš <strong>Retrieval mode shown from another item.</strong> The retrieval mode shown when opening a knowledge item is now that item's own, where it could show the setting of whichever item was opened before it. <a href="https://github.com/open-webui/open-webui/pull/27686" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27686/hovercard">#27686</a>, <a href="https://github.com/open-webui/open-webui/issues/27684" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27684/hovercard">#27684</a>, <a href="https://github.com/open-webui/open-webui/issues/27801" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27801/hovercard">#27801</a>, <a href="https://github.com/open-webui/open-webui/issues/28825" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28825/hovercard">#28825</a></li> <li>๐Ÿ”ฉ <strong>A new chat shown as nearly full.</strong> The indicator of how full a conversation is now counts tokens the same way the shortening does, where the two read different figures from providers that report both and a fresh chat could appear close to its limit. <a href="https://github.com/open-webui/open-webui/pull/27620" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27620/hovercard">#27620</a>, <a href="https://github.com/open-webui/open-webui/issues/27608" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27608/hovercard">#27608</a>, <a href="https://github.com/open-webui/open-webui/commit/978d2572140e4fe31ebbc33274f699c71b8cdc29">Commit</a></li> <li>๐Ÿซฑ <strong>Abandoned changes to a group's sharing setting.</strong> Closing the edit dialog for a user group without saving now discards a change to who can share to that group, where the change stayed on screen and was written to the database the next time anything else about the group was saved. <a href="https://github.com/open-webui/open-webui/pull/28076" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28076/hovercard">#28076</a>, <a href="https://github.com/open-webui/open-webui/issues/28075" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28075/hovercard">#28075</a></li> <li>๐Ÿ“› <strong>Editing the wrong group.</strong> The dialog for editing a user group now stays with the group it was opened for, where a reordering of the list beneath it could leave it saving to a different group. <a href="https://github.com/open-webui/open-webui/pull/28076" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28076/hovercard">#28076</a>, <a href="https://github.com/open-webui/open-webui/issues/28075" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28075/hovercard">#28075</a></li> <li>๐Ÿชข <strong>Signing people out from the identity provider.</strong> A sign-out sent by an identity provider to end someone's session now works, where the check that the message was genuine could fail against providers whose signing keys need the same authentication as everything else, leaving the person signed in. <a href="https://github.com/open-webui/open-webui/commit/aeda6ff13a25d3b3ba1b303609f35382db22142c">Commit</a></li> <li>๐Ÿชฃ <strong>Files left behind when a knowledge base is emptied.</strong> Emptying a knowledge base now removes the files it held, along with their stored copies and their search data, where all three were left behind with nothing in the interface to clear them. <a href="https://github.com/open-webui/open-webui/commit/363ad352fec9553469852d111bc0506b896504a6">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27988" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27988/hovercard">#27988</a></li> <li>โ™ป <strong>Blank errors when a tool server's saved sign-in cannot be read.</strong> A tool server whose stored sign-in details cannot be decrypted, which happens when "WEBUI_SECRET_KEY" changes since the key protecting them follows it, now names the server and says to reconnect it, where every startup logged two errors with no message at all. <a href="https://github.com/open-webui/open-webui/commit/91917b23952af8ca4457f8bb3db70c75ab838fbf">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28666" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28666/hovercard">#28666</a>, <a href="https://github.com/open-webui/open-webui/issues/28665" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28665/hovercard">#28665</a></li> <li>๐Ÿ– <strong>Clearing the supported media types.</strong> Emptying the supported media types in the documents settings now stays empty, where the previous value came back on the next visit, so images kept being sent to the extraction engine instead of straight to a model that can read them. <a href="https://github.com/open-webui/open-webui/pull/28750" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28750/hovercard">#28750</a>, <a href="https://github.com/open-webui/open-webui/issues/28747" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28747/hovercard">#28747</a>, <a href="https://github.com/open-webui/open-webui/commit/ecad20b77f9bd700bd818a2f447176f5994320c3">Commit</a></li> <li>๐Ÿซณ <strong>Dropping a chat where it already was.</strong> Dragging a chat in the sidebar and releasing it where it started no longer reloads the whole sidebar, which took around a dozen requests for a move that changed nothing. <a href="https://github.com/open-webui/open-webui/pull/28664" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28664/hovercard">#28664</a>, <a href="https://github.com/open-webui/open-webui/issues/28663" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28663/hovercard">#28663</a></li> <li>๐Ÿ–ฒ <strong>Filtering while on a later page.</strong> Changing a filter in the workspace, such as showing only what you created, now returns to the first page, where the list could come back empty with the page controls gone and no way back. <a href="https://github.com/open-webui/open-webui/issues/28734" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28734/hovercard">#28734</a>, <a href="https://github.com/open-webui/open-webui/commit/a914868e3c83b08be1399dbae1e4da25a0c00c87">Commit</a></li> <li>๐Ÿชบ <strong>Workspace counts left behind.</strong> The number beside each workspace tab now follows its list, where creating, copying, importing, or deleting something left the old number in place until you moved to another tab or reloaded, and the tools count ignored its search entirely. <a href="https://github.com/open-webui/open-webui/pull/28983" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28983/hovercard">#28983</a>, <a href="https://github.com/open-webui/open-webui/issues/28981" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28981/hovercard">#28981</a></li> <li>๐Ÿ“ž <strong>Links that start a voice call.</strong> Opening a link that starts a call now starts one, where it opened the controls pane and stopped there, leaving the only way to begin a call from outside the application broken. <a href="https://github.com/open-webui/open-webui/pull/28721" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28721/hovercard">#28721</a>, <a href="https://github.com/open-webui/open-webui/issues/28677" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28677/hovercard">#28677</a>, <a href="https://github.com/open-webui/open-webui/commit/8c1f3d382470edb81fa1efdf6cf4fb6bb188c460">Commit</a></li> <li>๐Ÿ†” <strong>Signing in where the provider uses a numeric account id.</strong> Signing in through GitHub, or any other provider that identifies people by a number, works again on PostgreSQL, where every attempt failed outright since 0.10.2, and on SQLite the existing account was not matched; accounts stored the old way are corrected on the next sign-in. <a href="https://github.com/open-webui/open-webui/commit/a6834f089bc2980fced99a617670e785c988cc9f">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/28954" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28954/hovercard">#28954</a>, <a href="https://github.com/open-webui/open-webui/issues/27760" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27760/hovercard">#27760</a></li> <li>โ˜Ž <strong>Chats opening halfway up.</strong> A conversation whose recent messages are short now opens at the latest message rather than somewhere in the middle, and older messages loaded while scrolling up no longer shift what you were reading. <a href="https://github.com/open-webui/open-webui/pull/28657" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28657/hovercard">#28657</a>, <a href="https://github.com/open-webui/open-webui/issues/28656" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28656/hovercard">#28656</a></li> <li>๐Ÿ›ค <strong>The terminal picker vanishing mid-reply.</strong> The terminal picker now stays in place while a reply is being written, greyed out until it finishes, where it disappeared from the message box entirely and took the name of the selected terminal with it. <a href="https://github.com/open-webui/open-webui/commit/7a533d0d5b85981f8c5668636f931f8b4a97d604">Commit</a></li> <li>๐ŸŽง <strong>Who a channel says its members are.</strong> The member list of a channel now includes its owner and everyone in a group that was granted access, where the owner never appeared and granting both a person and a group they were not in listed nobody at all while the count beside it said two. <a href="https://github.com/open-webui/open-webui/pull/28289" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28289/hovercard">#28289</a>, <a href="https://github.com/open-webui/open-webui/issues/28288" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28288/hovercard">#28288</a>, <a href="https://github.com/open-webui/open-webui/commit/e3e82b14714661ba5bd24e2c47e42cef5594b132">Commit</a></li> <li>โ›ณ <strong>Embedding servers behind a password.</strong> An embedding server protected by a username and password rather than a key now works, where an empty key still sent an authorisation header, which such a server rejected and which made document uploads fail. <a href="https://github.com/open-webui/open-webui/pull/28684" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28684/hovercard">#28684</a>, <a href="https://github.com/open-webui/open-webui/issues/28683" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28683/hovercard">#28683</a>, <a href="https://github.com/open-webui/open-webui/commit/97466deea105d6fdde60bf4d9401703fd32e03e9">Commit</a></li> <li>โœ’ <strong>Note edits lost without warning.</strong> Typing in a note now reaches the database, where a save already waiting could be cancelled without a replacement, leaving the editor showing text that was never stored and nothing to say so; this affected notes written by a model or through the API, and any instance without Redis after a restart. <a href="https://github.com/open-webui/open-webui/pull/28669" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28669/hovercard">#28669</a>, <a href="https://github.com/open-webui/open-webui/issues/28667" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28667/hovercard">#28667</a></li> <li>๐Ÿ—„ <strong>Browsing outside the home directory in a terminal.</strong> A terminal server set to allow browsing the whole filesystem can be browsed above the home directory again, where the file panel pinned itself there and opening a file elsewhere quietly did nothing. <a href="https://github.com/open-webui/open-webui/pull/29006" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29006/hovercard">#29006</a>, <a href="https://github.com/open-webui/open-webui/issues/29000" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29000/hovercard">#29000</a></li> <li>๐Ÿž <strong>Clearing a model's picture.</strong> A model's picture can be reset to the default logo again, where since 0.11.0 a custom one could only ever be replaced. <a href="https://github.com/open-webui/open-webui/pull/29007" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/29007/hovercard">#29007</a>, <a href="https://github.com/open-webui/open-webui/issues/27685" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27685/hovercard">#27685</a>, <a href="https://github.com/open-webui/open-webui/commit/06e7aac219b3027a9d578624c473b041ad26a692">Commit</a></li> <li>๐Ÿ‘ค <strong>Fallback profile pictures.</strong> A profile picture that fails to load, such as one belonging to a deleted account, now falls back to the default avatar instead of showing clipped placeholder text beside the message. <a href="https://github.com/open-webui/open-webui/pull/28270" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28270/hovercard">#28270</a>, <a href="https://github.com/open-webui/open-webui/issues/28269" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28269/hovercard">#28269</a></li> <li>โฑ๏ธ <strong>Unanswered prompts in tools.</strong> On deployments that set "WEBSOCKET_EVENT_CALLER_TIMEOUT", a question a tool asks you that goes unanswered now reports a timeout rather than an empty reply, and waiting too long no longer risks disconnecting a tab that is still open. <a href="https://github.com/open-webui/open-webui/pull/28311" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28311/hovercard">#28311</a></li> <li>๐Ÿ‘ช <strong>Group member counts updating.</strong> Adding or removing someone from a group in the admin panel now updates that group's member count straight away, where it stayed at the old number until the page was reloaded. <a href="https://github.com/open-webui/open-webui/commit/18bf0ade7b35fb25ff7920ad3713624d93f04401">Commit</a></li> <li>๐Ÿ•ณ๏ธ <strong>Blank messages left in a conversation.</strong> Streamed events that never fill in an item no longer leave an empty assistant message saved in the conversation and sent back to the model on every later turn. <a href="https://github.com/open-webui/open-webui/commit/2a0274a0a039dbe0a1ad4d24003b085aae7b896b">Commit</a></li> <li>๐Ÿ““ <strong>Notes opening blank.</strong> A note whose shared editing session has not been started yet now opens with its stored content even when several people open it at once, where previously anyone but a lone first viewer got an empty document. <a href="https://github.com/open-webui/open-webui/commit/5078d987f83943671f1d23ebe66bcc8d2af902c3">Commit</a></li> <li>๐Ÿคซ <strong>Replies stopping silently after a tool ran.</strong> When a provider rejects the follow-up request made after a tool finishes, the reason is now shown in the chat instead of the reply simply ending with nothing said. <a href="https://github.com/open-webui/open-webui/commit/a610d77137fabf60a2e0daa961a8ef8f7320293a">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28633" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28633/hovercard">#28633</a></li> <li>๐ŸŽŸ๏ธ <strong>Connections whose tags were saved as plain text.</strong> A connection with tags stored as plain text no longer breaks its editor panel or silently blanks the tags on every model coming from it. <a href="https://github.com/open-webui/open-webui/commit/8be4c5fa6a849a9ff4a74f6a2870a115a836e68a">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28749" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28749/hovercard">#28749</a></li> <li>๐Ÿ”Œ <strong>Stream filters on direct API calls.</strong> A filter reading a streamed event as an object now works on requests made straight to the chat completions endpoint, matching every other path, where it used to raise and end the reply partway. <a href="https://github.com/open-webui/open-webui/commit/684111715f742f56a3c7efac9eb7a1e68e54a3ec">Commit</a></li> <li>๐Ÿ”‡ <strong>Filter failures that said nothing.</strong> When a filter's outlet or stream hook raises, the failure is now reported with the filter's name and a traceback at the default log level, where it was swallowed and left plugin authors with nothing to go on. <a href="https://github.com/open-webui/open-webui/commit/35fbde0a3fb303b7076b03465b1a2b0ba832df53">Commit</a></li> <li>๐Ÿชœ <strong>Falling back when a base model is gone.</strong> Chatting with a workspace model whose base model has been removed now falls back to the default model for everyone, where the fallback previously applied only for administrators and anyone else was refused whenever that base model had no workspace entry of its own, such as one supplied by a pipe. <a href="https://github.com/open-webui/open-webui/commit/20fe43d9da621957c48fc92104bc8f1cc0d691b7">Commit</a></li> <li>๐Ÿง  <strong>Conversations breaking after a model switch.</strong> Switching to a different model once a reasoning model has answered no longer leaves the conversation unusable, where the earlier model's stored reasoning was replayed to a provider that then rejected every later request. <a href="https://github.com/open-webui/open-webui/commit/c4b3e6840f34a5d267bc12c0ec1a82156a324d45">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28240" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28240/hovercard">#28240</a></li> <li>๐Ÿ‘ป <strong>Messages disappearing from a conversation.</strong> Two things saving the same conversation at once no longer discard each other's changes, where a message could vanish from the screen while still counting toward the model's context and a file attached during a reply was lost on the next save. <a href="https://github.com/open-webui/open-webui/commit/1c13fedb16e74c5888c52ccd928a5eb5bbb1068d">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28742" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28742/hovercard">#28742</a></li> <li>๐Ÿงฌ <strong>Workspace models pointing at themselves.</strong> A workspace model whose base model was set to its own identifier is now saved without that reference, where the entry was thrown away while models were being combined so none of its settings ever took effect. <a href="https://github.com/open-webui/open-webui/commit/eadce55e343df69520e6bc86dbbdfdcdfdcafb30">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28952" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28952/hovercard">#28952</a>, <a href="https://github.com/open-webui/open-webui/issues/28923" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28923/hovercard">#28923</a></li> <li>๐Ÿ“ญ <strong>A short model list sticking on every worker.</strong> When one worker briefly reports fewer models than it should, that shorter list is no longer left in place for the whole deployment, where chatting with one of the missing models failed on every server until something restarted. <a href="https://github.com/open-webui/open-webui/commit/6330350a406d8c1fd603f725e59a88324c8e2256">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28777" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28777/hovercard">#28777</a></li> <li>๐Ÿ“‹ <strong>Copying from the terminal file browser.</strong> Copying a file path or a file's contents now works again, where it silently did nothing on deployments the browser does not treat as a secure origin. <a href="https://github.com/open-webui/open-webui/commit/aa3d56961049618b28717d87acff1d9360cad47a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2f97c9fce36b3794d14c925086eca78ff92adf4a">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/29015" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/29015/hovercard">#29015</a></li> <li>๐Ÿ—บ๏ธ <strong>Browsing the web through Microsoft Web IQ.</strong> Fetching a page with the web loader set to Microsoft Web IQ now works, where every attempt failed before a single request was made and had done so ever since that loader was added. <a href="https://github.com/open-webui/open-webui/commit/6dcc2d52692c3fa1993ff1b3ae84c07d35fd9f6b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/140d2cf4b59e71d2e9f4986d4d8649fccb47c83d">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28688" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28688/hovercard">#28688</a></li> <li>๐Ÿ”› <strong>Enable or disable all automations only reaching the ones on screen.</strong> Turning every automation on or off now covers every automation matching your current search and filter, where it only ever touched the ones loaded on the page you were looking at and left the rest running as they were. <a href="https://github.com/open-webui/open-webui/commit/f4a0d3c9734d1662a3f78891f21934f2b82aed1e">Commit</a></li> </ul> <h3>Changed</h3> <ul> <li><g-emoji class="g-emoji" alias="warning">โš ๏ธ</g-emoji> <strong>Database Migrations</strong>: This release includes database schema changes; we strongly recommend backing up your database and all associated data before upgrading in production environments. If you are running a multi-worker, multi-server, or load-balanced deployment, all instances must be updated simultaneously, rolling updates are not supported and will cause application failures due to schema incompatibility.</li> <li>๐Ÿ‹๏ธ <strong>What "THREAD_POOL_SIZE" now sizes.</strong> The setting now governs both of the pools that background work runs in, where it previously governed only one and the other, carrying most of the blocking work including knowledge searches, sign-ins and file storage, was fixed at a small ceiling no setting could raise, so an instance that set it high will now use more threads than before, up to twice the configured value across the two pools, and one that relied on the old ceiling to hold thread use down should review it. <a href="https://github.com/open-webui/open-webui/commit/4ec6ee14418edd04eaba9e34bd5868453f61df40">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/28168" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28168/hovercard">#28168</a></li> <li>๐Ÿ’พ <strong>Saving replies as they stream.</strong> The "ENABLE_REALTIME_CHAT_SAVE" setting no longer has any effect, because a reply in progress is now held outside the database and written once when it finishes. <a href="https://github.com/open-webui/open-webui/commit/a1579a01ff43cacb357269707d36267ad35e01d6">Commit</a></li> <li>๐ŸŽญ <strong>Playwright web loader egress.</strong> When a page is fetched with the Playwright loader, the page's own requests for its images, scripts, and stylesheets are now made by the Open WebUI backend instead of by the browser, so administrators using a remote browser through "PLAYWRIGHT_WS_URL" should expect that traffic to leave from the backend's address rather than the browser host, those using a private certificate authority should expect it to be trusted through "AIOHTTP_CLIENT_SSL_CERT_FILE" rather than the browser's own store, and those who set a proxy on the loader should know it no longer applies to these requests, which follow the environment's proxy settings instead. <a href="https://github.com/open-webui/open-webui/pull/28634" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28634/hovercard">#28634</a></li> <li>๐ŸŒ <strong>Slower Playwright page loads without async.</strong> A page fetched with the Playwright loader on the synchronous path now fetches its images, scripts, and stylesheets one at a time rather than together, which in the change's own measurements took a page with thirty assets from 2.0 to 3.0 seconds, and one with eight slow assets from 1.1 to 4.5 seconds; the asynchronous path is unaffected. <a href="https://github.com/open-webui/open-webui/pull/28634" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28634/hovercard">#28634</a></li> <li>๐Ÿณ <strong>Test-only packages removed from the image.</strong> The container no longer ships pytest, pytest-docker, the Docker SDK, or netcat, none of which anything in Open WebUI used, so the image is smaller; anyone whose own tools or functions relied on those being present will need to install them themselves. <a href="https://github.com/open-webui/open-webui/pull/28726" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28726/hovercard">#28726</a></li> <li>๐Ÿ›ก <strong>Forms in embedded pages now work by default.</strong> A page shown inside a chat, such as an artifact or an HTML preview, may now submit forms unless you turn that off, where it was blocked unless you turned it on. <a href="https://github.com/open-webui/open-webui/commit/3c66d639e31ba8a7477d337b37d8d671ea2430cf">Commit</a></li> <li>๐Ÿ…ฐ <strong>Connection prefixes now show in model names.</strong> A connection's prefix appears in the name shown in the model picker, not only in its identifier, where whether it did depended on the shape of the provider's reply and so worked on some connections and not others; models on prefixed connections will now read differently than before. <a href="https://github.com/open-webui/open-webui/pull/28950" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/28950/hovercard">#28950</a>, <a href="https://github.com/open-webui/open-webui/issues/28929" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/28929/hovercard">#28929</a></li> <li>๐Ÿ“Š <strong>Default usage statistics range.</strong> Usage statistics now cover the past two years by default for everyone, instead of starting from the date the account was created. <a href="https://github.com/open-webui/open-webui/commit/8dbbc206c5a0706789722c42827479e5db10bb2b">Commit</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.11.0 2026-07-27T09:30:15Z

v0.11.0

<h3>Added</h3> <ul> <li>๐ŸŽจ <strong>Redesigned interface.</strong> Open WebUI has been visually rebuilt from the ground up. All aspects of the User Interface, from the chat view to the admin panel. Now with a narrower conversation column, lighter typography, tidier spacing, consistent menus and dropdowns, clearly outlined text boxes, and settings rearranged. <a href="https://github.com/open-webui/open-webui/commit/aedb6bef4e2eb12234c02085a545ff395d96db18">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b3255a36569f295766271b8a2b0bd969b4083b9f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ba067258dea2229a9956077b3b0d7b1c68b56f66">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8dd862d3383978f21111e63fb2d6029711abed9a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/263bbc77d803e83b9af4b04c0cae29705af5f072">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f8ea15b84a274712dca33daa970f63ed7368043e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9f17c5960a0e47a09773da4bba12997a31222fc8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6772b1cb4f4e0d3dc166956014e6e7b9bddc721a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d3fd860c131846a9458888f9c256a9a29f3767f2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f1584b5a3764f72de2de6caad507e7c39ad19c23">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2e8d92c7b1a9bb8d35f4a27ba3c73368d735c480">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e58a4633b15ae53d33fc3b46cb97c76d86be325f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/04b146f2cec7e6a01e9d3590eb83655c128fa3c7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e5e2cd78769639b2df83776f1b991966f922f8b4">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3316ba76aabe5429596ffd130fd36be4d5c3aa6c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6fcb38fe2e0aded9b85f655cd8f3279e9f4e765e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/421da674468f638f72cc5266c5a3874aa3bca3b7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d0bea60581eaa07d41f92ad8f86007e83247e061">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/21e180182a5096481d4cbb1a8f94212c0a515a40">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d027a32ed134ae104f2f142ba45ff38e56215c5f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/437c06c4795a72700295d7690d5fd65d1153372c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1bf05ebc7d135d74969438824778c9f73243ba8d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/fd07e3a8e3e619f3712067765b416f0925fa80d3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d3ea51fd466a8741afc4dfd4f0d0f2f77fb6467f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4da2ff2655d9abb851805da127cf60b4d9ad1aa7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2fcb36267f034f2b83f936bfacedc20b680a2710">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1428a4ddce4998cb3664a5ce37e176442dd426fa">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bc8d24c951e9a2c973fc2dd1f2832a2b0855bc0e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/704d07e9a20a830aad7bfc5131b0d92621cf0691">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e88d2e053c2a63cce3823c9b6006f4a184c4fef2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6940297486d4a5de127efd1a5148b0adcebe87e3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9ca8cf528af1c49da3f0a2bc3c6ca95c1dedbcf5">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c4efa81d08c425678c810c51b4d62716e1e57117">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bb12b1a18b77d80829cedb2d5bf965808222415b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/49abfbdd155dc22882fdcb09989e4f4964db16ee">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27178" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27178/hovercard">#27178</a>, <a href="https://github.com/open-webui/open-webui/commit/dcc7fb1e8ef144205531829f8a56e52171c4d63d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/5c505c1119fec6170c1bc092ed162f86262a887e">Commit</a></li> <li>๐Ÿค– <strong>Sub-agents.</strong> Administrators can now enable sub-agents, which let a model hand parts of a task to background helper agents that run their own tool-driven conversations and report results back into the chat, tuned through new "ENABLE_SUBAGENTS", concurrency, iteration, and system-prompt settings. <a href="https://github.com/open-webui/open-webui/commit/7088d245bb45fc69c0b22748563b9f3c6f0daa73">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2f37e853d1259a901f736a823bad29dcc2c3b130">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/959558fd82eb2a3c980231acd500b73ba4b698b3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3005b7bc71fcbd5abc6e73c3e4caa4ea781cdb76">Commit</a></li> <li>๐Ÿ“‚ <strong>Folder pages.</strong> Opening a folder now takes you to its own page, where its chats load a page at a time, can be sorted by title or last updated, and you can start a new chat straight from the folder. <a href="https://github.com/open-webui/open-webui/commit/409fb39717be9ab7becd9e8c01801a08c5bae318">Commit</a></li> <li>โฒ๏ธ <strong>Chat timers.</strong> The assistant can now set a timer that brings a prompt back into the conversation later, after a delay or at a set time, and can drop it automatically if you read the chat or reply before it fires. <a href="https://github.com/open-webui/open-webui/commit/b23ddeb2800098c6352203ec8fbe9fca40ba415c">Commit</a></li> <li>๐Ÿ”” <strong>Notification targets.</strong> Notifications now have their own settings tab where you can send them to several webhook destinations, each picking which events it wants, from chats finishing or failing to channel messages and calendar alerts, with a test button and a choice between always notifying or only when you are away, and any webhook you already had is carried over for you. <a href="https://github.com/open-webui/open-webui/commit/c55e373b994d3a14c99a97f44261422012f63266">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/cf235738f5a44db415012b3b0ebc1f6e752f5439">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/200d447f6289faca42f2a666bbabae2c7f3ebadf">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/24750" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24750/hovercard">#24750</a></li> <li>๐Ÿ—ฏ๏ธ <strong>Full replies in channels.</strong> A reply from the assistant in a channel is now saved and shown in full, with its reasoning, tool calls and other structured parts, where it previously came through blank. <a href="https://github.com/open-webui/open-webui/commit/498cdab9a548d7d2fd19c389204ee26236fc7efe">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26720" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26720/hovercard">#26720</a>, <a href="https://github.com/open-webui/open-webui/pull/27409" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27409/hovercard">#27409</a>, <a href="https://github.com/open-webui/open-webui/issues/26707" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26707/hovercard">#26707</a>, <a href="https://github.com/open-webui/open-webui/issues/26656" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26656/hovercard">#26656</a></li> <li>๐Ÿ“ฃ <strong>Notifications from the assistant.</strong> The assistant can now send you a notification itself when something is worth your attention, so a long task can reach you after you have moved on to something else. <a href="https://github.com/open-webui/open-webui/commit/c55e373b994d3a14c99a97f44261422012f63266">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/200d447f6289faca42f2a666bbabae2c7f3ebadf">Commit</a></li> <li>๐ŸŒŽ <strong>Share a chat with anyone holding the link.</strong> A shared chat can now be set to Open so it opens without signing in, with visitors no longer bounced to the sign-in page on their way to it, which administrators must first allow through a new "Chats Open Sharing" permission that stays off by default, and such pages ask search engines not to index them. <a href="https://github.com/open-webui/open-webui/commit/1f0dc90abe879a55f654f2333e29fb0f630831c7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0e0d08382ac0d05b1ad98c47e8a2e37df2a185bb">Commit</a></li> <li>๐Ÿ”– <strong>Chat variables.</strong> A model's system prompt can now declare fields such as text boxes and dropdown lists that you fill in for a conversation, with the values saved alongside the chat and carried over when it is forked or cloned. <a href="https://github.com/open-webui/open-webui/commit/bef8ae4b2f05ca49ed88a02ab7a3cdc11b62c4f1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4e869011cd5040b5d6a197fc83d5f50d2425dbc2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1e88367cc837b39c0e9958fefbe053803336dce2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8cbb7f765cfc9c9b3237a6c5593cd93f849033f0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b35e2d265a4e4a2f2a075b31917d48be1dd9ef19">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/239cb740077a14e452ad002a1e671a09ab558e40">Commit</a>, <a href="https://github.com/open-webui/open-webui/discussions/26915">#26915</a></li> <li>๐Ÿ—„๏ธ <strong>LDAP group synchronization.</strong> Administrators can now map LDAP groups to Open WebUI groups from the authentication settings, with optional automatic creation of missing groups, so a user's group memberships are kept in step with the directory each time they sign in. <a href="https://github.com/open-webui/open-webui/pull/27263" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27263/hovercard">#27263</a>, <a href="https://github.com/open-webui/open-webui/issues/18015" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/18015/hovercard">#18015</a></li> <li>๐Ÿ‘ฅ <strong>Restrict sharing with groups.</strong> Admins can now stop resources from being shared with entire groups through a new "USER_PERMISSIONS_ACCESS_GRANTS_ALLOW_GROUPS" permission, which stays enabled by default so existing group sharing keeps working untouched. <a href="https://github.com/open-webui/open-webui/commit/4ed19d504bd30c0fc801e9228d9816669ec1c09c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f84dabe3d97ff701c097055023f28f3f2f7ebd07">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/77da3d8c81b9a6fda4354619de94f5d433328d8e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/84e4d6ef8277f4b4f3ac4d355b3219e9b5a37268">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27124" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27124/hovercard">#27124</a></li> <li>๐Ÿค <strong>Shared folder collaboration.</strong> People with access to a shared folder can now use its files and system prompt as knowledge in chat and, with write access, rename and manage the folder, all according to their read or write permission. <a href="https://github.com/open-webui/open-webui/commit/797293c74957bd79e42262d1dc0fd637a45d0357">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/caa2457c17e592587b804f21054cc000944af75c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/009715cd63d1c8b5320aba68e9a70afcde519016">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/53ccd718a53de25bb6d61476a6617bfb3f130a44">Commit</a></li> <li>๐Ÿ‘๏ธ <strong>Chat previews in the sidebar.</strong> Hovering a chat in the sidebar now shows a compact preview of its recent messages, so you can find the conversation you want without opening it. <a href="https://github.com/open-webui/open-webui/commit/d0f7da4f45b8831b09b2ab3ec8f91aa354d90ba3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/aaf2834db758bfec69408ab4cabcf324965c221c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1513ddaf58fe18029086880461d7cad0649a699c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/93bd05271c07c249978d69abf3297fd2841900f9">Commit</a></li> <li>๐Ÿ•— <strong>Local message timestamps.</strong> Message timestamps now appear on hover in your device's local date and time format, with the full weekday and date shown in a tooltip. <a href="https://github.com/open-webui/open-webui/commit/797293c74957bd79e42262d1dc0fd637a45d0357">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f84dabe3d97ff701c097055023f28f3f2f7ebd07">Commit</a></li> <li>๐Ÿ“‡ <strong>User variables.</strong> You can now store your own values in account settings, such as your role or how you like answers written, and a model's system prompt can insert them wherever they are needed. <a href="https://github.com/open-webui/open-webui/commit/bd5d7b2e879511882429075d804d9222956f4a1a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/212eec408ca320edfa2271e604d10e14b6a9bc1a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/793a43d9c48225925929eb312fe2b70d5914d1da">Commit</a></li> <li>๐Ÿงบ <strong>Automations that file their chats away.</strong> An automation can now be pointed at one of your folders, from the dialog, the editor or by asking the assistant, so each run lands there instead of loose in your chat list, and the folder is cleared automatically if it is later deleted. <a href="https://github.com/open-webui/open-webui/commit/f798d05586a140f1a6b51f1e51b2b2a63d079d45">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bab71ed08b5af6f4a8ff2daa02792baae9edab03">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/db5c092299471444c356216d5ef39b382ba1aa1e">Commit</a></li> <li>๐Ÿ”ต <strong>See what you have not read yet.</strong> Folders in the sidebar now carry a count of chats with something new in them, a folder's own page marks unread chats with a dot, shows a spinner on any still generating, clears the dot as you open one, and keeps itself up to date as replies finish elsewhere, unread chats sort to the top of a folder, and you can mark a single chat unread again mark everything in a folder read, or mark every chat read at once from the sidebar. <a href="https://github.com/open-webui/open-webui/commit/f798d05586a140f1a6b51f1e51b2b2a63d079d45">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f867825bf3b7699bc2bd967ef46b2bb63e48b098">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1de36d600f7191c28a98bf4b347b44cf8f1bef43">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/85c47fb467177ed811ba77dfe62461dfbe8e2548">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b7489bbc6c4e376c017edffd8da3c2eb4e6c1c8e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3cd72ee6a8e93dc39a4d4c173117056e25326c8a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6f93ecd4fd77b0d51a5fbbd2fc3fd6d151036a55">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e5a08d52208e8b1ed07ff94906e27d174146b1ca">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8ddf119570b3c0b04b673d41cb2363370c23939b">Commit</a></li> <li>๐Ÿ—œ๏ธ <strong>Compact a chat on demand.</strong> Typing a compact command in a long conversation now summarizes the earlier turns straight away, instead of waiting for it to happen automatically once the conversation grows past the threshold. <a href="https://github.com/open-webui/open-webui/commit/7a9928ef172b7c280c377c86cb52957e39340158">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/75894161e46aafe30a7db4ecc946af60f04495e4">Commit</a></li> <li>๐ŸŒฟ <strong>Fork a chat.</strong> Every response now has a fork button that copies the conversation up to that point into a new chat which remembers where it branched, so you can carry on down a different path without touching the original. <a href="https://github.com/open-webui/open-webui/commit/63ada247066dfc51e0e9559366f0cfd9a98db40b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/cf887b68ea58bcd1d8b035842c4ea35a5113ed8b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/73421c5b42ac5c2ebc5faa520b7ed3fa0e39f10d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e769f9ff4f9fa7b0faebdd4f34ff98fe0dcc300d">Commit</a></li> <li>๐Ÿ“Œ <strong>Pin the conversation map.</strong> The chat overview now has a pin control that stops it recentring on the newest message, so you can keep looking at the branch you were reading while a reply comes in. <a href="https://github.com/open-webui/open-webui/pull/25736" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25736/hovercard">#25736</a></li> <li>๐Ÿ“Š <strong>Chat status at a glance.</strong> The slash menu now shows how full the context window is, and a new status command opens a panel with context usage, queued messages, running tasks, and the chat ID. <a href="https://github.com/open-webui/open-webui/commit/7a9928ef172b7c280c377c86cb52957e39340158">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/263bbc77d803e83b9af4b04c0cae29705af5f072">Commit</a></li> <li>๐ŸŽน <strong>Customizable keyboard shortcuts.</strong> Most keyboard shortcuts can now be rebound to key combinations of your choosing in settings, which saves them to your account, warns you when two actions share a combination, and offers a reset to the defaults, with moving to the previous or next chat and opening the controls panel available to bind as well. <a href="https://github.com/open-webui/open-webui/commit/343eb1d659262cc9d762a2ce49bef25434a03bfa">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/de681aa543b356d456b83c13ad88c7f9941319e7">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26624" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26624/hovercard">#26624</a></li> <li>โŒจ๏ธ <strong>Turn keyboard shortcuts off.</strong> A new switch in the keyboard settings disables every configurable shortcut and hides its hint, so combinations that clash with your browser or operating system pass straight through. <a href="https://github.com/open-webui/open-webui/pull/27300" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27300/hovercard">#27300</a>, <a href="https://github.com/open-webui/open-webui/issues/1008" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/1008/hovercard">#1008</a></li> <li>โŒจ๏ธ <strong>Skills in slash commands.</strong> Typing a slash in the message input now lists your skills alongside your prompts, grouped under headings and with descriptions on hover, so you can attach a skill without leaving the keyboard. <a href="https://github.com/open-webui/open-webui/commit/9588c97e64e10d161a9a0ab1ab9ba3fee6cbb94d">Commit</a></li> <li>๐Ÿ“Ž <strong>Attach anything with the at menu.</strong> Typing an at sign in the message input now searches your folders, knowledge collections, and individual files as well as your models, and pasting a link offers it as a web page or YouTube attachment. <a href="https://github.com/open-webui/open-webui/commit/e8b4c7f9e212253267b8c79dc5360894f0d91bec">Commit</a></li> <li>๐Ÿ“ <strong>Chat with a note.</strong> Chatting with a note now gives you the full chat experience, including model choice, tools and file attachments, alongside suggested prompts, a button to insert a response straight into the note, edits that appear in the note as the assistant makes them, and as many separate conversations per note as you want to keep. <a href="https://github.com/open-webui/open-webui/commit/423cafd4e75e34b487f3b5d10ec1c506f073b3da">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/185bca8552ee3f87ea95fdcad32a433924881b9a">Commit</a></li> <li><g-emoji class="g-emoji" alias="arrow_up_down">โ†•๏ธ</g-emoji> <strong>Sort your lists.</strong> The notes, prompts, models, knowledge, skills, tools and functions lists can now be sorted by title or by when they were last updated, in either direction, by clicking the column headings. <a href="https://github.com/open-webui/open-webui/commit/30c91e46e5d237bee3c8805bd54749408cc2727a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/56f2cb530259df5393ea1ae844bad5cc6b2c810c">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27457" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27457/hovercard">#27457</a>, <a href="https://github.com/open-webui/open-webui/discussions/27456">#27456</a></li> <li>๐Ÿ—’๏ธ <strong>Notes without stored contents.</strong> A note whose contents were never filled in now opens and saves normally instead of failing. <a href="https://github.com/open-webui/open-webui/commit/6c59ef313fdaac7fa8e9089be758c4651f8b9412">Commit</a></li> <li>๐Ÿ“„ <strong>Note attachments.</strong> Notes now have an upload option in their menu and show attached files above the note itself, where you can open or remove them, instead of only accepting files dropped onto the page. <a href="https://github.com/open-webui/open-webui/commit/c4c4ab57e33bb4359b51a4c255f4569fa38a5058">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0dc93b8ae798ad834e7f3327571452bfdf4c218f">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>The assistant can search your attachments.</strong> A new Files capability lets the model list the files attached to the chat and search them by meaning or by exact text, and read the parts it needs, rather than having their whole contents pushed into the conversation up front, and knowledge collections or notes attached to a chat are now announced to the model so it can query those the same way. <a href="https://github.com/open-webui/open-webui/commit/57e60423b9963c4a69fdfda7ae5799efc5583010">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/55e0801dab8fe5f8bceff7d7c49772676724b8b1">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26711" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26711/hovercard">#26711</a>, <a href="https://github.com/open-webui/open-webui/issues/27232" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27232/hovercard">#27232</a>, <a href="https://github.com/open-webui/open-webui/issues/26708" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26708/hovercard">#26708</a></li> <li>๐Ÿ”Ž <strong>Search in the attachment menu.</strong> The attachment menu now lets you search your knowledge bases, notes, files, and chats instead of scrolling to find them, with matching text shown for chats. <a href="https://github.com/open-webui/open-webui/commit/668f9fe3905fea5fdfccb2b9b308c8f4d7d2f061">Commit</a></li> <li>โš—๏ธ <strong>Default file upload mode.</strong> You can now choose in settings how attached files are handled by default, rather than picking that on each upload. <a href="https://github.com/open-webui/open-webui/pull/20900" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/20900/hovercard">#20900</a>, <a href="https://github.com/open-webui/open-webui/issues/18431" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/18431/hovercard">#18431</a></li> <li>โฌ‡๏ธ <strong>Response auto-scroll toggle.</strong> A new interface setting lets you stop the view following a reply as it is written, so you can read earlier text while generation continues. <a href="https://github.com/open-webui/open-webui/commit/cea991260f279f004489dab5d930bc25b0abf612">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26826" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26826/hovercard">#26826</a></li> <li>๐Ÿ“œ <strong>Client certificates for SearXNG.</strong> Web search can now present a client certificate to a SearXNG instance that requires one, through new "SEARXNG_CLIENT_CERT_FILE" and "SEARXNG_CLIENT_KEY_FILE" settings. <a href="https://github.com/open-webui/open-webui/commit/def26ce266c2e1d80e31b3ad12099db61a674832">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26992" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26992/hovercard">#26992</a></li> <li>๐Ÿ”ญ <strong>OpenSERP web search.</strong> Web search can now run against a self-hosted OpenSERP instance, which returns results from several major search engines without any API key, configured through a new "OPENSERP_BASE_URL" setting. <a href="https://github.com/open-webui/open-webui/pull/27437" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27437/hovercard">#27437</a>, <a href="https://github.com/open-webui/open-webui/issues/27438" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27438/hovercard">#27438</a></li> <li>๐Ÿฅ‡ <strong>Model order as a setting.</strong> Administrators can now set the order models appear in through a new "MODEL_ORDER_LIST" variable, so the arrangement survives a restart on instances that do not persist configuration. <a href="https://github.com/open-webui/open-webui/pull/27420" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27420/hovercard">#27420</a>, <a href="https://github.com/open-webui/open-webui/issues/27206" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27206/hovercard">#27206</a></li> <li>โฑ๏ธ <strong>Idle cap for streamed replies.</strong> Administrators can now set an "AIOHTTP_CLIENT_STREAM_IDLE_TIMEOUT" that ends a streamed reply when the provider stops sending anything for that long, instead of holding the connection open until the overall timeout expires. <a href="https://github.com/open-webui/open-webui/commit/4a7d4ebadac27d652ec200fa3939f10e9a5c17ed">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c727643e05f3597395ee1a60b17117d04f693a18">Commit</a></li> <li>๐Ÿ–ผ๏ธ <strong>Media types an extraction engine may handle.</strong> Administrators can now list which image and video types the configured content extraction engine is allowed to process, instead of media being passed to it only when the engine is the external one, so an engine with its own text recognition can take images. <a href="https://github.com/open-webui/open-webui/commit/db2d24896b0682191a54f41c6b9f0b9d2971637f">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26940" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26940/hovercard">#26940</a>, <a href="https://github.com/open-webui/open-webui/issues/14768" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/14768/hovercard">#14768</a></li> <li>๐Ÿงต <strong>Where a channel reply lands.</strong> Administrators can now choose whether a reply to a mention posts in a thread under that message or straight into the channel. <a href="https://github.com/open-webui/open-webui/commit/db2d24896b0682191a54f41c6b9f0b9d2971637f">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27410" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27410/hovercard">#27410</a></li> <li>๐Ÿ“š <strong>Limits for knowledge tools.</strong> Administrators can now set how much a knowledge search or file view may return, how many files one search may scan, and how many matches are reported, and a knowledge command's whole output is now capped so a single call cannot flood the conversation. <a href="https://github.com/open-webui/open-webui/commit/11e61b69ebd922602edc37ded7b42fdd43bb8456">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27524" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27524/hovercard">#27524</a>, <a href="https://github.com/open-webui/open-webui/issues/27327" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27327/hovercard">#27327</a>, <a href="https://github.com/open-webui/open-webui/issues/26139" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26139/hovercard">#26139</a></li> <li>๐ŸŽ›๏ธ <strong>File streaming chunk size.</strong> Administrators can now tune how large each chunk of a streamed file transfer is through a new "AIOHTTP_FILE_STREAM_CHUNK_SIZE" setting. <a href="https://github.com/open-webui/open-webui/commit/429f2df50cd2f0ec8d0a1bb4136a46e2f94a4bf5">Commit</a></li> <li>๐Ÿช› <strong>Model for summarizing long chats.</strong> Administrators can now pick a dedicated model to write context compaction summaries, separate from the task model, with the conversation's own model used when none is chosen. <a href="https://github.com/open-webui/open-webui/pull/26806" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26806/hovercard">#26806</a>, <a href="https://github.com/open-webui/open-webui/issues/27051" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27051/hovercard">#27051</a></li> <li>๐Ÿ“ <strong>Context compaction token cap.</strong> Administrators can now set a "Token Cap" that limits how high per-model context compaction thresholds are allowed to reach, giving finer control over long-conversation summarization. <a href="https://github.com/open-webui/open-webui/commit/5c389ad93f0668d4bab717d14bd189b679338ef2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/31996a5acfe1458720fa19f1b9fb4da95749b5e6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/44c2a27ce0695d8e9c7e72f9a84dc325cb15096a">Commit</a></li> <li>โš–๏ธ <strong>Retained messages after compaction.</strong> Administrators can now set what share of recent messages survives when a long conversation is summarized, between a tenth and half of it. <a href="https://github.com/open-webui/open-webui/commit/33cf3fbb7f017ab1b79dce5c5ca4d4e1c3092844">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27050" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27050/hovercard">#27050</a></li> <li>๐Ÿง  <strong>Memory as a per-model capability.</strong> Whether a model receives your stored memories is now a switch on the model itself, so it can be left on for everyday assistants and off for ones that should start from nothing. <a href="https://github.com/open-webui/open-webui/commit/6732852ce6c1a2a445bc001b122c60cf12e0278b">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26861" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26861/hovercard">#26861</a>, <a href="https://github.com/open-webui/open-webui/discussions/18610">#18610</a></li> <li>โ˜‘๏ธ <strong>Searchable model pickers.</strong> When editing a model, the Tools, Skills, Knowledge, Voice, Filters and Actions pickers now let you search and toggle items in place, select or clear them all at once, and see what is active at a glance. <a href="https://github.com/open-webui/open-webui/commit/e355959e9156fd61a1105953d731d007fbb4bae3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e1f96aa20ef80c8b01e3a81039d2cca3001d0ef5">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/fa889837e9e90c7284def56fac2daed20a3ce699">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/5424ac58917d2a21f21256b62d1c42f1a8c51c51">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ea2e3d0afc76fa99f2af665fd50425dd28d000d5">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/cda5bdb9d42886dfe74d05907179e3f96097030c">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26758" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26758/hovercard">#26758</a></li> <li>๐ŸŽš๏ธ <strong>Switch for single sign-on.</strong> OAuth and OIDC now have their own on and off switch in the authentication settings, matching the LDAP one above it, so sign-in through a provider can be turned off without clearing the configuration. <a href="https://github.com/open-webui/open-webui/pull/26988" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26988/hovercard">#26988</a></li> <li>๐Ÿ–ฒ๏ธ <strong>One sign-in attempt at a time.</strong> The sign-in, sign-up and LDAP form now disables its buttons while a request is in flight, so a slow response no longer turns repeated clicks or Enter presses into several concurrent attempts. <a href="https://github.com/open-webui/open-webui/pull/27416" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27416/hovercard">#27416</a>, <a href="https://github.com/open-webui/open-webui/issues/27264" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27264/hovercard">#27264</a></li> <li>๐Ÿ›‚ <strong>Trusted clients for token exchange.</strong> Administrators can now list which OAuth clients may have their tokens exchanged for a session, through a new "OAUTH_TOKEN_EXCHANGE_TRUSTED_CLIENT_IDS" setting, so a token a person obtained by signing in to an unrelated application of the same provider can no longer be turned into a session as that person. <a href="https://github.com/open-webui/open-webui/pull/27546" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27546/hovercard">#27546</a>, <a href="https://github.com/open-webui/open-webui/commit/b190dcf3caa00dc8b7b9c7312828298d9143f60d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c4332be71e6e9c314e8a13b9d2819a6932561630">Commit</a></li> <li>๐Ÿšช <strong>Throttle for token exchange.</strong> Administrators can now cap how often the OAuth token exchange endpoint may be called from one address through new "OAUTH_TOKEN_EXCHANGE_RATE_LIMIT" and "OAUTH_TOKEN_EXCHANGE_RATE_LIMIT_WINDOW" settings, which bound automated attempts with leaked or guessed tokens and stay off until set. <a href="https://github.com/open-webui/open-webui/commit/453b9fb0291c0de8957a2713988c7c53dbcc5465">Commit</a></li> <li>๐Ÿ” <strong>PKCE for every sign-in provider.</strong> The code challenge setting now applies to Google, Microsoft and GitHub sign-in as well as OpenID Connect, so the same protection covers every provider. <a href="https://github.com/open-webui/open-webui/commit/40320c113637f80e0466e30cae63ab9ac1ba596e">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27302" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27302/hovercard">#27302</a></li> <li>๐Ÿ”ค <strong>Embeddings through the OpenAI-compatible API.</strong> Integrations built on OpenAI client libraries can now create embeddings through the Ollama proxy, so embedding requests go through the same sign-in and model access rules as chat instead of needing direct access to Ollama. <a href="https://github.com/open-webui/open-webui/pull/27332" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27332/hovercard">#27332</a>, <a href="https://github.com/open-webui/open-webui/commit/9f00b62b3a005b030ffaf638fd1da4c27e3c0586">Commit</a>, <a href="https://github.com/open-webui/open-webui/discussions/27328">#27328</a>, <a href="https://github.com/open-webui/docs/pull/1331" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/docs/pull/1331/hovercard">Docs:#1331</a></li> <li>๐ŸŽš๏ธ <strong>Passthrough parameters per connection.</strong> Administrators can now list request parameters that a connection should receive untranslated, under a new Advanced section in connection settings, so provider-specific options reach the upstream API intact. <a href="https://github.com/open-webui/open-webui/commit/bb12b1a18b77d80829cedb2d5bf965808222415b">Commit</a></li> <li><g-emoji class="g-emoji" alias="a">๐Ÿ…ฐ๏ธ</g-emoji> <strong>Anthropic requests passed straight through.</strong> Requests to the Anthropic-compatible API aimed at an Anthropic or LiteLLM connection now reach the provider untouched rather than being translated on the way, and LiteLLM is selectable as a connection type. <a href="https://github.com/open-webui/open-webui/commit/b81627b2c95aad184a6abf59145ca3b18a32bb2c">Commit</a></li> <li>๐Ÿ’ญ <strong>Reasoning in Anthropic responses.</strong> Responses from the Anthropic-compatible API now carry the model's reasoning as thinking blocks, in both streamed and complete responses. <a href="https://github.com/open-webui/open-webui/commit/bb12b1a18b77d80829cedb2d5bf965808222415b">Commit</a></li> <li>๐Ÿงฉ <strong>Structured output through the Anthropic-compatible API.</strong> Requests can now ask for a JSON schema or JSON object response and set a reasoning effort, which are carried through to the upstream model. <a href="https://github.com/open-webui/open-webui/commit/bb12b1a18b77d80829cedb2d5bf965808222415b">Commit</a></li> <li>๐Ÿชง <strong>Group names in forwarded headers.</strong> Custom headers on a connection can now carry the groups a person belongs to, by name or by id, so an upstream service or gateway can apply its own rules per group. <a href="https://github.com/open-webui/open-webui/pull/27236" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27236/hovercard">#27236</a>, <a href="https://github.com/open-webui/open-webui/issues/26834" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26834/hovercard">#26834</a></li> <li>๐Ÿชช <strong>User identity forwarded to Mistral OCR.</strong> Document extraction through Mistral OCR now carries the requesting user's identity when user info forwarding is enabled, so a gateway in front of it can attribute requests per user like other outbound integrations already do. <a href="https://github.com/open-webui/open-webui/pull/27253" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27253/hovercard">#27253</a>, <a href="https://github.com/open-webui/open-webui/issues/27250" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27250/hovercard">#27250</a></li> <li>๐Ÿ”ข <strong>Anthropic token-counting endpoint.</strong> The Anthropic-compatible API now offers a token-counting endpoint, so integrations can check how many input tokens a request will use before sending it. <a href="https://github.com/open-webui/open-webui/commit/08dacd19da1b0eefd9d274d24ed59ec1e5d5a2de">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/23062e9fcaace42cf06db33f9533127bbbcd33d9">Commit</a></li> <li>๐Ÿ–ฒ๏ธ <strong>Terminal instructions read fresh.</strong> The instructions a terminal server provides are now fetched for each request, so changing them on the server takes effect immediately instead of after re-saving the connection or restarting. <a href="https://github.com/open-webui/open-webui/pull/27242" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27242/hovercard">#27242</a></li> <li>๐Ÿ–ฅ๏ธ <strong>Live terminal server policies.</strong> Administrators can now read an orchestrator terminal server's current policy and lifecycle settings directly in connection settings rather than relying on a locally cached copy. <a href="https://github.com/open-webui/open-webui/commit/2f37e853d1259a901f736a823bad29dcc2c3b130">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3005b7bc71fcbd5abc6e73c3e4caa4ea781cdb76">Commit</a></li> <li>๐ŸŒ <strong>Model privacy at a glance.</strong> Admins can now make a model public or private straight from its menu in the model list, where each model is marked as public, shared, or private. <a href="https://github.com/open-webui/open-webui/commit/fb2ea272952ed96b0db5ac59a861637204100cb6">Commit</a></li> <li>๐Ÿ“ˆ <strong>Personal usage dashboard.</strong> A new Usage tab in settings shows your own activity over time, including a token-activity heatmap, current and longest streaks, lifetime and peak token counts, your longest active chat, and your most used models and tools. <a href="https://github.com/open-webui/open-webui/commit/af9a315ac30b83241f3df5556d7a2abfcd5d25b0">Commit</a></li> <li>๐Ÿง  <strong>Memories in settings.</strong> Your memories are now listed directly in personalization settings where you can search, add, edit, and remove them, instead of being tucked behind a separate manage dialog. <a href="https://github.com/open-webui/open-webui/commit/db934a3b4ff16532b48670d7cc75e7048a6db993">Commit</a></li> <li>๐Ÿ’พ <strong>Import notes and automations.</strong> Notes can now be brought in from text and markdown files, and automations can be exported and imported as files, so you can move them between instances. <a href="https://github.com/open-webui/open-webui/commit/f8350360dfd60ff890b73fe2f39aaf20a52ad28b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2018546a7baeb853bb4d98e2fb2a092ef20aa431">Commit</a></li> <li>๐Ÿงฎ <strong>Counts in the tabs.</strong> The workspace tabs now show how many models, knowledge bases, prompts, skills, and tools you have, and the admin tabs do the same for users, groups, leaderboard entries, and feedback, so you can see the size of each section without opening it. <a href="https://github.com/open-webui/open-webui/commit/05e3f713175c1eea43a99f29521eb01700c21d3c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/727041da78bcfcb44c0e4c83c4e6a641b7061b90">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f8ea15b84a274712dca33daa970f63ed7368043e">Commit</a></li> <li>๐Ÿงพ <strong>Group permissions at a glance.</strong> The groups list now shows whether each group uses custom or default permissions, without opening it. <a href="https://github.com/open-webui/open-webui/commit/ccb1ab7739fbeb77c810036dcac240570034a56a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1d1f60ab440b167b9c6ab8f4011b884caa99f27d">Commit</a></li> <li>๐Ÿ“ค <strong>Streamed file transfers.</strong> Uploading a model, pipeline or audio file now sends it in chunks instead of holding the whole thing in memory, and reading and writing files no longer blocks other requests, so large transfers no longer spike memory or stall the server. <a href="https://github.com/open-webui/open-webui/commit/429f2df50cd2f0ec8d0a1bb4136a46e2f94a4bf5">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27351" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27351/hovercard">#27351</a>, <a href="https://github.com/open-webui/open-webui/issues/27349" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27349/hovercard">#27349</a></li> <li>๐Ÿงฐ <strong>Built-in tool descriptions built once.</strong> The descriptions handed to the model for the built-in tools are now worked out once at startup rather than rebuilt on every message. <a href="https://github.com/open-webui/open-webui/commit/d727ee4d1febb2b72d5f6c26668c562eadca54f1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/12974c9e4ed97b2d68c4ad129c057ff0e774254e">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27374" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27374/hovercard">#27374</a>, <a href="https://github.com/open-webui/open-webui/pull/27396" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27396/hovercard">#27396</a></li> <li>๐Ÿชบ <strong>Records read without a double pass.</strong> Loading a model, tool, prompt, skill, note, knowledge base, channel or calendar no longer converts the record twice on the way out. <a href="https://github.com/open-webui/open-webui/commit/f1409266feb224e74fe023d7459f1e2b5aad0b29">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27377" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27377/hovercard">#27377</a></li> <li>๐Ÿ”ง <strong>Faster tool and knowledge base listings.</strong> Listing tools no longer loads each one's full source, and working out which tools and knowledge bases you can see takes a single check rather than one per item. <a href="https://github.com/open-webui/open-webui/pull/27387" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27387/hovercard">#27387</a></li> <li>๐ŸงŠ <strong>Quicker collection checks on Chroma.</strong> Checking whether a collection exists now asks for that one collection instead of listing them all, which grew slower with every knowledge base and file. <a href="https://github.com/open-webui/open-webui/commit/48ee357156fd7f567ea13eb5ddba0a25701c0351">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27394" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27394/hovercard">#27394</a></li> <li>๐Ÿ”  <strong>Tokenizer loaded once.</strong> The tokenizer used to split documents is now kept after first use rather than being loaded again for every file. <a href="https://github.com/open-webui/open-webui/commit/7e31f64bc81b2264136a85efc7bb86c00f346784">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27394" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27394/hovercard">#27394</a></li> <li>๐Ÿ“— <strong>Faster knowledge base file lists.</strong> Opening a knowledge base now loads just the file names and details instead of the entire extracted text of every document, so large collections appear almost instantly. <a href="https://github.com/open-webui/open-webui/pull/27386" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27386/hovercard">#27386</a>, <a href="https://github.com/open-webui/open-webui/issues/26144" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26144/hovercard">#26144</a></li> <li>๐Ÿ—๏ธ <strong>Faster file access checks.</strong> Working out whether you can open a file no longer scales with how many workspace models and knowledge bases exist, so opening files and listing folder contents stays quick on large instances. <a href="https://github.com/open-webui/open-webui/pull/27383" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27383/hovercard">#27383</a></li> <li>๐Ÿ•ฐ๏ธ <strong>Faster automation scheduling.</strong> Working out when an automation that repeats every few minutes or hours runs next is now near instant, instead of taking twenty seconds or more and slowing further each year. <a href="https://github.com/open-webui/open-webui/commit/b3aead23da6cf8ebeedbd9fa3b97c7ac1a3f54ec">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26954" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26954/hovercard">#26954</a></li> <li>๐Ÿ“ <strong>Faster folder loading.</strong> Your folder list no longer runs a separate lookup for every folder to check where it sits, so it loads in a single pass. <a href="https://github.com/open-webui/open-webui/commit/9a49b271aaf5d6eeaec24ab974be38a8c68ddd76">Commit</a></li> <li>๐ŸŽฏ <strong>One round of requests per folder click.</strong> Selecting a folder in the sidebar now fetches the folder, the folder tree, and each expanded folder's chats once instead of two to four times. <a href="https://github.com/open-webui/open-webui/pull/27540" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27540/hovercard">#27540</a>, <a href="https://github.com/open-webui/open-webui/issues/27539" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27539/hovercard">#27539</a></li> <li>๐ŸŽง <strong>No wasted work when nobody is listening.</strong> Updates for a chat whose tab has been closed, or for requests made through the API, are no longer packaged up only to be discarded, which matters most on long streamed replies. <a href="https://github.com/open-webui/open-webui/pull/27366" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27366/hovercard">#27366</a>, <a href="https://github.com/open-webui/open-webui/commit/858e9236df1c3d84782e373c22b56cfc312b6db8">Commit</a></li> <li>๐Ÿ“‘ <strong>Cheaper audit logging.</strong> With audit logging on, each request is no longer authenticated a second time just to record the log entry, so audited instances carry noticeably less overhead. <a href="https://github.com/open-webui/open-webui/pull/27373" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27373/hovercard">#27373</a></li> <li>๐Ÿชง <strong>Cheaper tagging after each reply.</strong> Saving the tags generated for a conversation now updates just that field instead of loading, rewriting and re-reading the whole conversation, which cost more the longer the chat. <a href="https://github.com/open-webui/open-webui/pull/27382" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27382/hovercard">#27382</a></li> <li>โœ๏ธ <strong>Faster saves across the app.</strong> Saving a chat, note, prompt, tool or user setting no longer re-reads the record it just wrote, so writes finish sooner, most noticeably on long conversations. <a href="https://github.com/open-webui/open-webui/pull/27381" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27381/hovercard">#27381</a>, <a href="https://github.com/open-webui/open-webui/pull/27379" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27379/hovercard">#27379</a>, <a href="https://github.com/open-webui/open-webui/commit/c182a95ffdb87bae3d47d93387ec1a26c97740a2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/977c7930623b860949410a73922579daf81705a7">Commit</a></li> <li>๐Ÿ›ข๏ธ <strong>Less database overhead per request.</strong> SQLite installations no longer run a connection check before every database call, and requests that never touch the database skip the bookkeeping that used to run regardless. <a href="https://github.com/open-webui/open-webui/pull/27385" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27385/hovercard">#27385</a></li> <li>โšก <strong>Faster memory lookups.</strong> Stored memories are now indexed so retrieving them stays quick as the number you have grows. <a href="https://github.com/open-webui/open-webui/commit/28bdcb063b8d5d6a0b10943b1b2f87b16ff63621">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26957" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26957/hovercard">#26957</a></li> <li>๐Ÿชช <strong>Fewer checks before a reply starts.</strong> Working out whether you may use a model now looks up the model and your group memberships once instead of repeating both, including for every model a workspace model is built on. <a href="https://github.com/open-webui/open-webui/pull/27378" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27378/hovercard">#27378</a></li> <li>๐Ÿ‘ค <strong>Lighter user activity checks.</strong> Checking whether someone is currently active now reads only that timestamp rather than their whole profile, including their profile image. <a href="https://github.com/open-webui/open-webui/commit/c8f2e09fdcafc800c1e3af6da1cd6f2581cd9191">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27224" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27224/hovercard">#27224</a></li> <li>๐Ÿ“จ <strong>Fewer settings lookups when sending a message.</strong> Sending a chat message now reads the settings behind tools, file retrieval, voice, skills and the code interpreter in fewer trips to the database, so replies start sooner. <a href="https://github.com/open-webui/open-webui/pull/27223" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27223/hovercard">#27223</a></li> <li>๐Ÿช„ <strong>Lighter conversion for Ollama requests.</strong> Preparing a request for an Ollama model no longer copies the entire conversation before sending it, which cost more with every message and repeated on each tool-call round. <a href="https://github.com/open-webui/open-webui/pull/27371" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27371/hovercard">#27371</a></li> <li>๐Ÿฆ™ <strong>Fewer settings lookups on Ollama requests.</strong> Ollama chat, generation and embedding requests now read their connection settings once instead of up to four times, so each request reaches the server sooner. <a href="https://github.com/open-webui/open-webui/pull/27226" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27226/hovercard">#27226</a></li> <li>๐Ÿงน <strong>Less repeated work on every response.</strong> Security headers are now worked out once at startup rather than rebuilt for each response, and ordinary page requests skip the redirect handling they never needed, so responses carry less overhead. <a href="https://github.com/open-webui/open-webui/pull/27229" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27229/hovercard">#27229</a></li> <li>๐Ÿš€ <strong>Lower per-request overhead.</strong> Requests no longer each perform a settings lookup before they are handled, trimming a little latency from everything the app does. <a href="https://github.com/open-webui/open-webui/commit/4493b56e424db29fa9e72310b1ca6b025c3e5f8b">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27395" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27395/hovercard">#27395</a>, <a href="https://github.com/open-webui/open-webui/commit/6ff1df326c76824f0706671b0974df4035cb453f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/85664f650cc111a6b170b97ed0c391d962717bec">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27227" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27227/hovercard">#27227</a></li> <li>๐Ÿ’จ <strong>Leaner filter handling while streaming.</strong> Filters applied to a streaming reply no longer re-read their settings and each plugin's full source from the database for every chunk, so responses with filters enabled cost the server far less work. <a href="https://github.com/open-webui/open-webui/pull/27228" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27228/hovercard">#27228</a>, <a href="https://github.com/open-webui/open-webui/pull/27372" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27372/hovercard">#27372</a>, <a href="https://github.com/open-webui/open-webui/commit/f9107edeebc7ee545d7e3c1f1b7d449c123ab398">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f578d8d67ec2c109b0d8c38d90eaeb4448f83610">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9acbe3aa0f258a3bda593bb98ec81c6acc458d20">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27392" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27392/hovercard">#27392</a></li> <li>๐Ÿšฆ <strong>No filter bookkeeping without filters.</strong> Streamed API responses only build up the full reply for outlet filters when the model actually has one configured, instead of doing it for every request. <a href="https://github.com/open-webui/open-webui/commit/315a6b5995663eabe1c96776d66b6593860d47d6">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27391" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27391/hovercard">#27391</a></li> <li>โœ‚๏ธ <strong>Cheaper tag detection while streaming.</strong> Watching a reply for reasoning and code blocks now examines only the newly arrived text rather than rescanning the whole answer on every chunk, so a long answer no longer costs progressively more as it grows. <a href="https://github.com/open-webui/open-webui/pull/27360" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27360/hovercard">#27360</a></li> <li>๐ŸŒŠ <strong>Steadier long responses.</strong> Building up a streamed reply no longer costs more work as it grows, so long answers keep pace instead of slowing down toward the end. <a href="https://github.com/open-webui/open-webui/pull/27231" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27231/hovercard">#27231</a>, <a href="https://github.com/open-webui/open-webui/pull/27359" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27359/hovercard">#27359</a>, <a href="https://github.com/open-webui/open-webui/commit/ba556bd8f0517881cb250bb512631ddf8a0c82c3">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27390" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27390/hovercard">#27390</a></li> <li>๐Ÿ“ฆ <strong>Faster JSON handling as an option.</strong> Administrators can now switch the whole application to a faster encoder through a new "ENABLE_ORJSON" setting, covering request bodies, responses, upstream provider payloads and live updates, where the encoding of live updates was the largest single cost on the workers handling them in clustered deployments; it stays off by default because the faster encoder is stricter about what it accepts. <a href="https://github.com/open-webui/open-webui/pull/27583" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27583/hovercard">#27583</a></li> <li>โš™๏ธ <strong>Faster Redis handling.</strong> The compiled "hiredis" parser now ships as a dependency and is used automatically, so deployments backed by Redis spend noticeably less processor time reading responses. <a href="https://github.com/open-webui/open-webui/pull/27282" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27282/hovercard">#27282</a></li> <li>๐Ÿ”— <strong>Fewer Redis round trips per chat.</strong> Deployments backed by Redis now look up the model and connected sessions once per request instead of twice, and fetch the model list in a single call. <a href="https://github.com/open-webui/open-webui/pull/27225" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27225/hovercard">#27225</a></li> <li>๐Ÿ›ฐ๏ธ <strong>Fewer Sentinel lookups.</strong> Redis Sentinel deployments no longer ask which server is the primary and open a fresh connection before every single command, which had caused heavy connection churn and stalls under load. <a href="https://github.com/open-webui/open-webui/commit/75a8a0046b5b2ebd9942b25035b346aa953f81cc">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27213" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27213/hovercard">#27213</a>, <a href="https://github.com/open-webui/open-webui/issues/27210" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27210/hovercard">#27210</a></li> <li>๐Ÿ“ก <strong>Lighter live connection handling.</strong> Typing indicators, shared document edits and reconnections no longer re-read your account or copy the full participant list each time, and idle sessions are no longer rewritten every few seconds. <a href="https://github.com/open-webui/open-webui/commit/021c4c7a2e8b5b213f49800ecd331b1b18c2ef99">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27393" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27393/hovercard">#27393</a></li> <li>๐ŸŽ๏ธ <strong>Faster chat search on PostgreSQL.</strong> Searching chats on PostgreSQL now reads from the message table instead of unpacking each conversation's stored data row by row, so results stay quick as your history grows. <a href="https://github.com/open-webui/open-webui/commit/cc9a44569ef08b64ff44d15607c43966f362ce75">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27221" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27221/hovercard">#27221</a></li> <li>โšก <strong>Lighter model lists.</strong> Model lists no longer carry embedded profile images in their data, so they load faster. <a href="https://github.com/open-webui/open-webui/commit/9281adc5647b7046e3ddcc53ac4b84be7f650221">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f3a35507845e4a911c3d278d680a9989bb8d99ad">Commit</a></li> <li>๐Ÿ—๏ธ <strong>Fewer queries when building the model list.</strong> Assembling the model list now makes fewer database round trips and no longer fetches every plugin's source code along the way, so it comes together faster. <a href="https://github.com/open-webui/open-webui/commit/6b655689ccbdf2111620d005a8e6dedb8fb673f8">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27389" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27389/hovercard">#27389</a></li> <li>๐Ÿชถ <strong>Model lists without knowledge text.</strong> Model lists no longer include the extracted text of files attached to a model as knowledge, so they stay small regardless of how large those knowledge bases are. <a href="https://github.com/open-webui/open-webui/commit/48625e657ff11161c3588af2747598f102c1a4d1">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27287" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27287/hovercard">#27287</a></li> <li>๐Ÿ”› <strong>Functions can react to being switched on or off.</strong> Two new events fire just before a function is enabled or disabled, and the function being enabled receives its own event even though it is not active yet, so it can run whatever setup or teardown it needs. <a href="https://github.com/open-webui/open-webui/commit/94a60b04573acf6423e9c0519997b779f82e0560">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26754" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26754/hovercard">#26754</a>, <a href="https://github.com/open-webui/open-webui/discussions/26748">#26748</a></li> <li>๐Ÿ”› <strong>Multiple choice settings in plugins.</strong> A tool or function can now offer a setting where you tick several options from a list, fixed or worked out at the time it is shown, instead of asking you to type a comma-separated list of allowed values. <a href="https://github.com/open-webui/open-webui/pull/26884" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26884/hovercard">#26884</a>, <a href="https://github.com/open-webui/open-webui/issues/26848" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26848/hovercard">#26848</a></li> <li>๐Ÿ”Œ <strong>Disable plugins entirely.</strong> Administrators can now completely turn off the built-in Tools and Functions plugin surfaces through a new "ENABLE_PLUGINS" setting, which hides them across the workspace and admin areas and removes their execution paths. <a href="https://github.com/open-webui/open-webui/commit/bd6e0b61c2ae073aba9556ae46c345f4749acb84">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8e46450acd7ae11a4dee166d19a7c9833d991e79">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/951f96021a970fbd4837a4ee441565c0cf3d2824">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/252e6fd855099e1c880f4def18aa09aedbe1733a">Commit</a></li> <li>๐Ÿงต <strong>Lighter chat listings and search.</strong> Building a page of chat search results or a folder listing no longer copies each full conversation to read its title and dates, so those pages come together faster and use far less memory while they are built. <a href="https://github.com/open-webui/open-webui/pull/27388" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27388/hovercard">#27388</a></li> <li>๐Ÿ“ฎ <strong>Name lookups off the thread pool.</strong> Looking up a hostname no longer occupies one of the limited threads shared by every other piece of blocking work, so model calls, searches, page fetches and tool calls stop queueing behind each other once a few lookups are slow. <a href="https://github.com/open-webui/open-webui/pull/27440" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27440/hovercard">#27440</a></li> <li>๐Ÿฅฌ <strong>Faster web page parsing.</strong> Pages pulled in by web search and web retrieval are now read with a faster parser, cutting roughly a tenth off the time spent on a ten result search. <a href="https://github.com/open-webui/open-webui/pull/27439" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27439/hovercard">#27439</a></li> <li>๐Ÿงญ <strong>No pointless lookups when filtering search results.</strong> Filtering web search results against a domain list no longer resolves every result to an address first, which had turned a three second search into half a minute wherever the resolver was slow or a name did not resolve. <a href="https://github.com/open-webui/open-webui/commit/42ea8a5a2f04b6a57ccb47a61611a62479b60b78">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26920" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26920/hovercard">#26920</a></li> <li>๐Ÿš„ <strong>Leaner passthrough streaming.</strong> Responses the server only relays now go straight through in whole network reads instead of being split line by line, roughly halving the work spent shuttling a streamed reply on those routes. <a href="https://github.com/open-webui/open-webui/pull/27384" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27384/hovercard">#27384</a></li> <li>๐Ÿงถ <strong>Web page parsing off the critical path.</strong> Reading those pages no longer holds up everything else on the server, so other people's replies, live updates and health checks keep flowing during a search instead of stalling for a second or more. <a href="https://github.com/open-webui/open-webui/pull/27446" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27446/hovercard">#27446</a></li> <li>๐Ÿˆถ <strong>Faster uploads of non-English text files.</strong> Working out the encoding of an uploaded text file now samples the part that needs it rather than scanning the whole file, taking a four megabyte Japanese or Chinese document from several seconds down to well under one. <a href="https://github.com/open-webui/open-webui/pull/27445" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27445/hovercard">#27445</a></li> <li>โ™ฟ <strong>Improved UI accessibility.</strong> Keyboard and screen reader users can now tell which chat in the sidebar is the one being viewed, open reasoning and detail blocks in a response, expand sidebar sections and open a folder without a mouse, sort the admin user list from the keyboard and hear which column it is sorted by, open a dropdown and its submenus with the keyboard, close them again with Escape and land back where they started, hear which value a dropdown is set to rather than only its label, hear what each admin settings switch, group permission toggle, checkbox, API key field and advanced model parameter slider controls, have the message box announced by its placeholder instead of as an unnamed field, press Enter on Cancel in a confirmation dialog without triggering the delete, reach the regenerate control, jump straight past the sidebar to the conversation with a skip link, hear what an icon-only button does across chat, calls, file previews, modals and the admin pages rather than an unlabelled button, placeholder text, section headings, field descriptions, inactive tab labels, timestamps, counters and icons are now readable against their background when High Contrast Mode is on, and sidebar buttons across notes, automations, the playground, and admin pages announce whether they open or close the sidebar. <a href="https://github.com/open-webui/open-webui/pull/27510" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27510/hovercard">#27510</a>, <a href="https://github.com/open-webui/open-webui/pull/27513" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27513/hovercard">#27513</a>, <a href="https://github.com/open-webui/open-webui/pull/27503" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27503/hovercard">#27503</a>, <a href="https://github.com/open-webui/open-webui/pull/27494" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27494/hovercard">#27494</a>, <a href="https://github.com/open-webui/open-webui/pull/27491" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27491/hovercard">#27491</a>, <a href="https://github.com/open-webui/open-webui/pull/27490" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27490/hovercard">#27490</a>, <a href="https://github.com/open-webui/open-webui/pull/27489" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27489/hovercard">#27489</a>, <a href="https://github.com/open-webui/open-webui/pull/27488" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27488/hovercard">#27488</a>, <a href="https://github.com/open-webui/open-webui/pull/27555" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27555/hovercard">#27555</a>, <a href="https://github.com/open-webui/open-webui/pull/27556" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27556/hovercard">#27556</a>, <a href="https://github.com/open-webui/open-webui/pull/27554" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27554/hovercard">#27554</a>, <a href="https://github.com/open-webui/open-webui/pull/27558" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27558/hovercard">#27558</a>, <a href="https://github.com/open-webui/open-webui/pull/27501" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27501/hovercard">#27501</a>, <a href="https://github.com/open-webui/open-webui/pull/27492" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27492/hovercard">#27492</a>, <a href="https://github.com/open-webui/open-webui/pull/27509" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27509/hovercard">#27509</a>, <a href="https://github.com/open-webui/open-webui/pull/27502" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27502/hovercard">#27502</a>, <a href="https://github.com/open-webui/open-webui/pull/26769" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26769/hovercard">#26769</a>, <a href="https://github.com/open-webui/open-webui/commit/89caa7c849c471561dfd76140d0c3c3ce7a68df8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7801909d27b18331a9a2bc399e1d618ab99ba5bf">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26768" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26768/hovercard">#26768</a>, <a href="https://github.com/open-webui/open-webui/pull/26770" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26770/hovercard">#26770</a>, <a href="https://github.com/open-webui/open-webui/commit/421834b2de287b8d5291d4b695ba6ed4528a5e7f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7bfc4bb2c25249d3922acd54d5bc516db52c8519">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e8fda1c7a07d1a0f91201ff977b77fd5a43e014a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27508" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27508/hovercard">#27508</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Translation updates.</strong> Slovenian is now available, and translations for English (UK), Finnish, German, Japanese, Portuguese (Brazil) and Portuguese (Portugal) were enhanced and expanded.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section. Some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ”’ <strong>Terminal file preview isolation.</strong> Previewing an HTML file in the system terminal now runs it in an isolated context by default, closing a cross-site scripting hole that could expose your login session or, for privileged accounts, run code on the server. <a href="https://github.com/open-webui/open-webui/pull/26907" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26907/hovercard">#26907</a></li> <li>โž— <strong>Malformed maths in a message.</strong> Maths that fails to render is now shown as plain text rather than being placed into the page as markup, closing a way for a crafted formula in a chat, channel or shared conversation to run code in the browser of anyone reading it. <a href="https://github.com/open-webui/open-webui/pull/26718" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26718/hovercard">#26718</a></li> <li>๐Ÿ”ฉ <strong>Updated file upload parsing library.</strong> The library that parses file uploads and form submissions has been updated to a release that addresses a security advisory affecting that parsing path. <a href="https://github.com/open-webui/open-webui/pull/26991" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26991/hovercard">#26991</a></li> <li>๐Ÿ›‘ <strong>Deactivated accounts lose live access.</strong> Real-time connections now apply the same role check as the rest of the application, so an account moved out of the user or admin role can no longer keep its channels and shared notes open on an existing token. <a href="https://github.com/open-webui/open-webui/pull/27537" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27537/hovercard">#27537</a></li> <li>๐Ÿ›… <strong>Writing into someone else's chat.</strong> Completion and action requests now confirm you own the chat they name before anything is written to it, so a filter or action can no longer be pointed at another person's conversation. <a href="https://github.com/open-webui/open-webui/pull/27486" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27486/hovercard">#27486</a></li> <li>๐ŸŽŸ๏ธ <strong>Ollama version no longer readable anonymously.</strong> Reading the configured Ollama backend's version now requires signing in, closing a route that let anyone learn the version in use and count how many backends are configured. <a href="https://github.com/open-webui/open-webui/pull/27199" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27199/hovercard">#27199</a></li> <li>๐Ÿ” <strong>Folder sharing permission.</strong> The folder sharing setting in default and group permissions now saves instead of being silently discarded, so allowing or restricting folder sharing actually takes effect. <a href="https://github.com/open-webui/open-webui/pull/27296" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27296/hovercard">#27296</a>, <a href="https://github.com/open-webui/open-webui/issues/27120" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27120/hovercard">#27120</a></li> <li>๐Ÿ”• <strong>Webhook permission enforcement.</strong> People without permission to use webhooks can no longer save webhook notification destinations to their settings, so the permission is enforced when settings are saved rather than only reflected in the interface. <a href="https://github.com/open-webui/open-webui/pull/27297" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27297/hovercard">#27297</a>, <a href="https://github.com/open-webui/open-webui/commit/af629177f46fa4595175f914c971c47701d1a676">Commit</a></li> <li>๐Ÿ›Ž๏ธ <strong>Stopping someone else's generation.</strong> Deleting a chat now checks who you are before anything is cancelled, so knowing another person's chat id no longer lets you cut off their reply or title generation on a request that is refused anyway. <a href="https://github.com/open-webui/open-webui/pull/27006" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27006/hovercard">#27006</a></li> <li>๐Ÿšฅ <strong>Automation limits in chat.</strong> Automations that the assistant creates or reschedules on your behalf now respect the same maximum count and minimum interval as the ones you set up yourself, instead of being able to exceed both. <a href="https://github.com/open-webui/open-webui/pull/27523" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27523/hovercard">#27523</a>, <a href="https://github.com/open-webui/open-webui/issues/27121" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27121/hovercard">#27121</a></li> <li>โฒ๏ธ <strong>Cancelling someone else's timers.</strong> Marking a chat as read now only clears your own pending timers on it, instead of clearing everyone's, which had let another person's scheduled prompt be silently cancelled without them being told. <a href="https://github.com/open-webui/open-webui/pull/27472" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27472/hovercard">#27472</a></li> <li>๐Ÿ—‘๏ธ <strong>Deleting a shared folder's subfolders.</strong> Deleting a folder is now limited to its owner or an administrator at every level, so someone with write access to a shared folder can no longer delete a subfolder and take the owner's chats with it. <a href="https://github.com/open-webui/open-webui/pull/27003" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27003/hovercard">#27003</a></li> <li>๐Ÿ“• <strong>Tool source shown to people who can only use it.</strong> Opening a tool you were given read access to no longer returns its source code, which read access was never meant to include. <a href="https://github.com/open-webui/open-webui/pull/27005" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27005/hovercard">#27005</a></li> <li>๐ŸŽฏ <strong>Model settings in the list endpoint.</strong> Listing models no longer includes each one's parameters and system prompt for people with read access only, matching what opening a single model already returned. <a href="https://github.com/open-webui/open-webui/pull/27004" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27004/hovercard">#27004</a></li> <li>๐Ÿ–Œ๏ธ <strong>Image generation and web search without permission.</strong> Turning on image generation or web search through the older request format now checks your permission first, so someone denied those features can no longer trigger them, and the billing that comes with them, by asking for that format. <a href="https://github.com/open-webui/open-webui/pull/26703" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26703/hovercard">#26703</a></li> <li>๐ŸŽ—๏ธ <strong>Terminal single sign-on tokens.</strong> The token forwarded to a terminal server for single sign-on is now taken from your own session on the server rather than from a header the browser supplied, so a caller can no longer send someone else's token in its place. <a href="https://github.com/open-webui/open-webui/pull/26719" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26719/hovercard">#26719</a></li> <li>๐Ÿซ— <strong>Web search results scoped to you.</strong> The temporary collections holding a web search's pages are now tied to the person who ran the search, closing the one place where that scoping was not applied. <a href="https://github.com/open-webui/open-webui/pull/26706" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26706/hovercard">#26706</a></li> <li>๐Ÿงบ <strong>Knowledge base cleanup reaching other collections.</strong> Tidying up a knowledge base now acts only on files and folders that belong to it, so someone with write access to one knowledge base can no longer delete folders or search data belonging to another. <a href="https://github.com/open-webui/open-webui/pull/26722" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26722/hovercard">#26722</a></li> <li>โŒ› <strong>Searches that could stall the server.</strong> A search pattern inside knowledge base commands now runs under a time budget, so a pattern that would take minutes to evaluate can no longer hold up everyone else on the instance. <a href="https://github.com/open-webui/open-webui/pull/27471" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27471/hovercard">#27471</a></li> <li>๐Ÿšซ <strong>Disabled terminal servers are refused.</strong> A terminal connection an administrator has turned off can no longer be reached by browsing its files, opening a session, or calling its tools, rather than only disappearing from the interface. <a href="https://github.com/open-webui/open-webui/commit/7537989235675ac84a40bf70c91ec3e16fc0d8db">Commit</a></li> <li>๐Ÿงซ <strong>Files attached to a shared folder.</strong> Adding files to a folder is now refused unless the folder's owner can read them, and a folder's files are checked against what its owner can still read before they are used as knowledge in chat, so a collaborator can no longer place files into someone else's folder or keep serving files the owner has since lost access to. <a href="https://github.com/open-webui/open-webui/pull/27464" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27464/hovercard">#27464</a>, <a href="https://github.com/open-webui/open-webui/commit/56183fcb17142088e2a34d1e35228f013749030c">Commit</a></li> <li>๐Ÿงท <strong>Knowledge claimed by a direct connection.</strong> Files listed as knowledge on a model supplied by the browser for a direct connection are now filtered against your own access before anything is retrieved, so a crafted request can no longer pull in documents you cannot otherwise open. <a href="https://github.com/open-webui/open-webui/commit/305880f2e2aeb2dda2f4b2a18a20bdcd558f7134">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26723" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26723/hovercard">#26723</a></li> <li>๐Ÿชœ <strong>Reaching a restricted model through a shared one.</strong> A shared workspace model can no longer be used to reach an underlying model the person could not otherwise use, which previously slipped through when that model had no entry of its own. <a href="https://github.com/open-webui/open-webui/pull/26905" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26905/hovercard">#26905</a>, <a href="https://github.com/open-webui/open-webui/issues/26900" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26900/hovercard">#26900</a></li> <li>๐Ÿ–Œ๏ธ <strong>Shared image checkpoint changes.</strong> Only administrators can now change the instance-wide Automatic1111 checkpoint, so an ordinary image generation request no longer switches the image model for everyone. <a href="https://github.com/open-webui/open-webui/pull/27244" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27244/hovercard">#27244</a></li> <li>๐Ÿ’ฌ <strong>Channel message ownership.</strong> Only the author of a channel message, or an administrator, can now edit or delete it, instead of anyone able to post in that channel. <a href="https://github.com/open-webui/open-webui/pull/27197" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27197/hovercard">#27197</a></li> <li>๐Ÿ—„๏ธ <strong>Chats shared with an administrator.</strong> An administrator can now open a chat that was deliberately shared with them even when broad admin access to other people's chats is turned off, instead of being refused a chat any other recipient could read. <a href="https://github.com/open-webui/open-webui/pull/27127" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27127/hovercard">#27127</a></li> <li>๐Ÿ““ <strong>Notes in folder knowledge are access checked.</strong> Notes attached to a folder are now filtered against your own access before the list reaches the assistant, rather than relying on later checks further along. <a href="https://github.com/open-webui/open-webui/pull/26739" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26739/hovercard">#26739</a></li> <li>๐Ÿงฑ <strong>Code interpreter module blocking.</strong> Modules an administrator has blocked for the code interpreter are now actually blocked, and other imports inside interpreter code work again. <a href="https://github.com/open-webui/open-webui/pull/27245" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27245/hovercard">#27245</a></li> <li>๐Ÿ“‰ <strong>Charts in the code interpreter.</strong> Code that draws a chart now runs in the default code interpreter setup, instead of failing with a syntax error unless file persistence was turned on. <a href="https://github.com/open-webui/open-webui/pull/26800" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26800/hovercard">#26800</a>, <a href="https://github.com/open-webui/open-webui/issues/26660" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26660/hovercard">#26660</a></li> <li>๐ŸŽฌ <strong>Chat action availability.</strong> Chat actions can no longer be triggered when they are disabled, not assigned to the model in use, or on a model the caller cannot access, matching the actions the interface actually offers. <a href="https://github.com/open-webui/open-webui/pull/27243" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27243/hovercard">#27243</a></li> <li>๐Ÿ—จ๏ธ <strong>Response text where it was missing.</strong> Assistant replies are no longer stored without their text, so copying, exporting, searching and reusing a conversation return the reply instead of nothing. <a href="https://github.com/open-webui/open-webui/commit/33cf3fbb7f017ab1b79dce5c5ca4d4e1c3092844">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26799" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26799/hovercard">#26799</a>, <a href="https://github.com/open-webui/open-webui/issues/26436" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26436/hovercard">#26436</a></li> <li>๐Ÿงช <strong>Filter edits that survive a reload.</strong> A change a filter makes to a finished response is now saved with the conversation, instead of showing on screen and reverting the next time the chat is opened. <a href="https://github.com/open-webui/open-webui/pull/27414" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27414/hovercard">#27414</a>, <a href="https://github.com/open-webui/open-webui/issues/27017" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27017/hovercard">#27017</a></li> <li>๐Ÿ“ƒ <strong>Action functions receive the response text.</strong> Running an action on a response now passes the assistant's text to the function, instead of handing it an empty message. <a href="https://github.com/open-webui/open-webui/pull/26798" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26798/hovercard">#26798</a>, <a href="https://github.com/open-webui/open-webui/issues/26672" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26672/hovercard">#26672</a></li> <li>๐ŸŽ <strong>Blank messages on Safari.</strong> Assistant responses no longer render as empty in Safari and on iPhone and iPad, where a browser painting bug left on-screen messages unpainted. <a href="https://github.com/open-webui/open-webui/pull/26805" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26805/hovercard">#26805</a>, <a href="https://github.com/open-webui/open-webui/issues/26712" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26712/hovercard">#26712</a>, <a href="https://github.com/open-webui/open-webui/issues/26844" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26844/hovercard">#26844</a></li> <li>โžก๏ธ <strong>Prompts opened from a link.</strong> A prompt passed in through a link that sends automatically now waits for tool servers to finish loading, so external tools are available on that first message instead of the model reporting it has none. <a href="https://github.com/open-webui/open-webui/commit/d7513e4ce81ada1936c0c34115f947e115d6f2cf">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/24176" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24176/hovercard">#24176</a></li> <li>๐ŸชŸ <strong>Tool result prompt submission.</strong> Interactive tool result embeds that send a prompt back to the chat work again, showing the confirmation dialog before submitting instead of silently doing nothing. <a href="https://github.com/open-webui/open-webui/pull/26914" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26914/hovercard">#26914</a>, <a href="https://github.com/open-webui/open-webui/issues/26912" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26912/hovercard">#26912</a></li> <li>๐Ÿ“ป <strong>Live updates in a second tab.</strong> Opening Open WebUI again while already connected now joins the new tab to your event stream, so notifications and chat updates reach every open tab instead of only the first one. <a href="https://github.com/open-webui/open-webui/commit/d14fddf25405cd58184fdef3d2af012503e4edd8">Commit</a></li> <li>๐Ÿ” <strong>Connection recovery on new chats.</strong> Chats started from the home page now recover automatically after a dropped connection, such as from mobile backgrounding, a VPN or IP change, or waking from sleep, instead of getting stuck loading until a manual refresh. <a href="https://github.com/open-webui/open-webui/pull/26913" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26913/hovercard">#26913</a>, <a href="https://github.com/open-webui/open-webui/issues/26844" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26844/hovercard">#26844</a></li> <li>๐Ÿชซ <strong>Terminal choice cleared on load.</strong> Your selected terminal is no longer dropped while the list of terminals is still loading, so it survives a page refresh. <a href="https://github.com/open-webui/open-webui/commit/9707d3a5c21d2fedada602f2cfd8a104cdc5e5d1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f59d86a10cb31e48d2dae0033081a09dbbaafc8c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2f2bf38e3481077597b5ad60f57685813e8d71b8">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26775" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26775/hovercard">#26775</a>, <a href="https://github.com/open-webui/open-webui/issues/26677" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26677/hovercard">#26677</a></li> <li>๐Ÿ”Œ <strong>Dropped sessions during keepalive.</strong> Live connections no longer break on a routine keepalive check, which had cut the session so that anything the server needed to run in your browser failed afterwards, most visibly the code execution tool reporting the client as disconnected on every run. <a href="https://github.com/open-webui/open-webui/pull/27553" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27553/hovercard">#27553</a>, <a href="https://github.com/open-webui/open-webui/issues/27550" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27550/hovercard">#27550</a></li> <li>โœ‚๏ธ <strong>Context compaction turn boundaries.</strong> Long-conversation compaction now summarizes only completed earlier turns instead of sometimes cutting through the middle of a single turn, keeping the current turn's tool calls and results intact. <a href="https://github.com/open-webui/open-webui/issues/27035" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27035/hovercard">#27035</a>, <a href="https://github.com/open-webui/open-webui/commit/959558fd82eb2a3c980231acd500b73ba4b698b3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/17e6496538e5f3147203b7520012a985cab044b7">Commit</a></li> <li>๐Ÿช† <strong>Summaries on a direct connection.</strong> Summarizing a long conversation on a direct connection can now use the configured summary model rather than being limited to the connection's own model. <a href="https://github.com/open-webui/open-webui/pull/26806" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26806/hovercard">#26806</a></li> <li>๐ŸชŸ <strong>System prompt through compaction.</strong> The system message now stays at the front of the conversation when a long chat is summarized, instead of being folded into the summary and lost from that point on. <a href="https://github.com/open-webui/open-webui/commit/70549c5c8a50315aa3bf909ebedea8cc3e602077">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/15688686af9dd73ec974e35f96a7ea24294dbe4f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/44f4f9dce48f1ad2af0c5f3210fa5aa701bad624">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26713" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26713/hovercard">#26713</a>, <a href="https://github.com/open-webui/open-webui/issues/26710" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26710/hovercard">#26710</a></li> <li>๐Ÿงท <strong>Context compaction continuity.</strong> After a compaction, the retained recent messages now stay in the prompt on every following turn instead of disappearing after the first, preserving conversational continuity and prompt caching. <a href="https://github.com/open-webui/open-webui/issues/27037" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27037/hovercard">#27037</a>, <a href="https://github.com/open-webui/open-webui/commit/0c23466a3e9a1fb7d32875a0614f1ca8e583bc73">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f730733bc44eff5812eff0e51ebca0bbcfa1bc6e">Commit</a></li> <li>๐Ÿ”Ÿ <strong>Context size after tool calls.</strong> The context meter and long-conversation compaction now read the size of the latest request rather than adding up every call in a tool loop, and understand the counts reported by Ollama and llama.cpp as well as the OpenAI-style ones, so compaction no longer fires far below its threshold, or never at all, and the usage shown is no longer inflated. <a href="https://github.com/open-webui/open-webui/commit/df94268e892cbb66675170a6c78846aef23f6e89">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e8f2c123e63c9073c9ae4ee00573144ce6d4b2e9">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27031" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27031/hovercard">#27031</a>, <a href="https://github.com/open-webui/open-webui/pull/26752" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26752/hovercard">#26752</a>, <a href="https://github.com/open-webui/open-webui/discussions/24410">#24410</a></li> <li>๐Ÿ’ญ <strong>Reasoning that arrives late or empty.</strong> Reasoning sent by a provider after the answer has started is now shown in its proper place above the answer rather than appended after it, and reasoning notes carrying nothing no longer open an empty thinking block. <a href="https://github.com/open-webui/open-webui/commit/051a1f6c41d1d37e5a12ce2068fc6f8488940591">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26687" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26687/hovercard">#26687</a>, <a href="https://github.com/open-webui/open-webui/issues/26645" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26645/hovercard">#26645</a></li> <li>๐Ÿ“ <strong>System prompt lost during tool calls.</strong> A model's system prompt now stays in place through every round of tool calls, instead of being dropped after the first one and, with memories enabled, replaced by the memory block alone. <a href="https://github.com/open-webui/open-webui/pull/26857" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26857/hovercard">#26857</a>, <a href="https://github.com/open-webui/open-webui/issues/26836" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26836/hovercard">#26836</a></li> <li>๐Ÿชถ <strong>Memories from structured replies.</strong> A reply delivered as structured output is now read when memories are reviewed after a turn, so nothing worth remembering is skipped just because of how the answer arrived. <a href="https://github.com/open-webui/open-webui/commit/3fe03583a3b240da3cc42364088f22bc3a059487">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26705" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26705/hovercard">#26705</a>, <a href="https://github.com/open-webui/open-webui/issues/26651" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26651/hovercard">#26651</a></li> <li>๐ŸŽฒ <strong>Stable skill ordering.</strong> Skills available to a model are now listed in the same order on every request, instead of shuffling between requests and quietly defeating prompt caching. <a href="https://github.com/open-webui/open-webui/commit/b9d72741bb2f649cb67942ce7c635ea173f32b70">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26986" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26986/hovercard">#26986</a></li> <li>๐Ÿ›‘ <strong>Stopping an answer the moment it starts.</strong> Each answer in a chat now carries its own task identifier from the first event onward, so stopping one immediately after sending no longer misses. <a href="https://github.com/open-webui/open-webui/commit/aadab2f480a8c17a9265a244d262947da23ddc79">Commit</a></li> <li>โธ๏ธ <strong>Deleting while a reply is being written.</strong> The delete control is now hidden on messages while a response is generating or a task is running, so a conversation can no longer be left with the finished reply detached from the messages before it. <a href="https://github.com/open-webui/open-webui/commit/b4d13793a3af2d75aaf33fe9793cbbf278958940">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26668" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26668/hovercard">#26668</a></li> <li>๐ŸŽ <strong>Feedback while a download is prepared.</strong> Downloading a file or folder from the terminal now tells you it is being prepared, will not start the same archive twice if you click again, and reports a failure instead of quietly giving up or leaving a preview spinning. <a href="https://github.com/open-webui/open-webui/pull/27421" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27421/hovercard">#27421</a>, <a href="https://github.com/open-webui/open-webui/issues/27055" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27055/hovercard">#27055</a></li> <li>๐Ÿ“ฅ <strong>Moving an archived chat into a folder.</strong> Moving an archived chat into a folder now takes it out of the archive so it appears there, and the folder's contents refresh straight away after a move from the menu. <a href="https://github.com/open-webui/open-webui/pull/27485" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27485/hovercard">#27485</a>, <a href="https://github.com/open-webui/open-webui/issues/27484" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27484/hovercard">#27484</a></li> <li>๐Ÿ“œ <strong>Chats past the first sixty in a folder.</strong> Folder listings now page through every chat instead of stopping at a fixed limit, so older chats no longer appear to vanish from a folder once it grows past sixty. <a href="https://github.com/open-webui/open-webui/issues/26786" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26786/hovercard">#26786</a>, <a href="https://github.com/open-webui/open-webui/commit/409fb39717be9ab7becd9e8c01801a08c5bae318">Commit</a></li> <li>๐Ÿ“Œ <strong>Sidebar highlight follows the open chat.</strong> The sidebar no longer keeps a chat highlighted after you move to another page, so deleting or archiving it there no longer throws you back to a new chat, and cloning no longer leaves two chats looking selected. <a href="https://github.com/open-webui/open-webui/pull/26977" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26977/hovercard">#26977</a></li> <li>๐Ÿ”€ <strong>Sidebar ordering during replies.</strong> Background updates such as follow-up suggestions, sources, and status no longer bump a chat to the top of the sidebar or change its last-updated time, and neither does saving a chat's variables or settings, nor the automatic title generation on a new chat. <a href="https://github.com/open-webui/open-webui/commit/f1ded9409a5523ec27d99635d8b7e7e1a297a4eb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a9617ca2187920734e2be5f90c5f119c09850ff5">Commit</a></li> <li>๐Ÿ–ฑ๏ธ <strong>One hover preview at a time.</strong> Moving between chats in the sidebar, or between avatars in the admin user list, channel messages and member lists, no longer leaves an earlier preview open behind the new one. <a href="https://github.com/open-webui/open-webui/pull/27549" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27549/hovercard">#27549</a>, <a href="https://github.com/open-webui/open-webui/issues/27548" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27548/hovercard">#27548</a>, <a href="https://github.com/open-webui/open-webui/pull/27578" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27578/hovercard">#27578</a>, <a href="https://github.com/open-webui/open-webui/issues/27577" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27577/hovercard">#27577</a></li> <li>โœจ <strong>Folder lists no longer flash.</strong> Clicking a folder title in the sidebar no longer empties the chat lists of your expanded folders for a moment before they reappear. <a href="https://github.com/open-webui/open-webui/pull/27535" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27535/hovercard">#27535</a>, <a href="https://github.com/open-webui/open-webui/issues/27533" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27533/hovercard">#27533</a></li> <li>๐Ÿซง <strong>Flickering sidebar rows.</strong> Moving the pointer across a chat in the sidebar no longer makes its title and timestamp flicker in and out, or draw the timestamp underneath the action buttons. <a href="https://github.com/open-webui/open-webui/pull/27474" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27474/hovercard">#27474</a>, <a href="https://github.com/open-webui/open-webui/issues/27473" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27473/hovercard">#27473</a></li> <li>โญ <strong>Rating scale in multi-model replies.</strong> The rating scale in the feedback panel is no longer cut off when several models answer side by side, so every score can be picked. <a href="https://github.com/open-webui/open-webui/issues/26846" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26846/hovercard">#26846</a></li> <li>๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘ <strong>Duplicate models side by side.</strong> Adding the same model twice in a side-by-side chat now keeps each column's own answer after a reload, instead of every column collapsing onto the first one. <a href="https://github.com/open-webui/open-webui/pull/26980" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26980/hovercard">#26980</a></li> <li>โฌ…๏ธ <strong>Back button after opening admin or workspace.</strong> Going back in the browser now returns you to the page you came from, instead of being pushed forward again to where you just were. <a href="https://github.com/open-webui/open-webui/pull/27478" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27478/hovercard">#27478</a>, <a href="https://github.com/open-webui/open-webui/issues/27477" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27477/hovercard">#27477</a></li> <li>๐ŸŽ›๏ธ <strong>Typing a top_k value.</strong> The top_k box in advanced parameters now accepts whole numbers up to its limit and rejects anything else, instead of letting the slider and the box disagree over what is allowed. <a href="https://github.com/open-webui/open-webui/commit/34920213619eb66467470105cbe3a275c812ccbc">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26669" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26669/hovercard">#26669</a></li> <li>๐ŸŒ™ <strong>Date pickers in dark mode.</strong> The calendar and clock icons on date and time fields are now visible in dark mode, across the calendar, automation schedules, account settings and analytics. <a href="https://github.com/open-webui/open-webui/pull/27275" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27275/hovercard">#27275</a>, <a href="https://github.com/open-webui/open-webui/issues/27274" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27274/hovercard">#27274</a></li> <li>๐Ÿชž <strong>Settings content stays inside the window.</strong> Long chat titles in Archived Chats now shorten with the full title on hover, and the admin analytics tables and chart no longer stretch past the edge of the settings window. <a href="https://github.com/open-webui/open-webui/pull/27306" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27306/hovercard">#27306</a>, <a href="https://github.com/open-webui/open-webui/issues/27305" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27305/hovercard">#27305</a>, <a href="https://github.com/open-webui/open-webui/issues/27329" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27329/hovercard">#27329</a></li> <li>๐Ÿ”— <strong>Settings links that open in place.</strong> A link to a settings tab now opens it without a page refresh, and the Add Terminal button in the terminal menu goes straight to the Integrations tab instead of flashing the admin panel and doing nothing. <a href="https://github.com/open-webui/open-webui/pull/27552" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27552/hovercard">#27552</a>, <a href="https://github.com/open-webui/open-webui/issues/27551" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27551/hovercard">#27551</a></li> <li>๐ŸŽฐ <strong>Model choice on a fresh chat.</strong> Starting a new chat now falls back to your default model when the previous selection is no longer available, instead of leaving the picker empty, while a model named in the link still wins. <a href="https://github.com/open-webui/open-webui/commit/f91ac068d09eed381e14d35472d80ae4670fe52b">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26697" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26697/hovercard">#26697</a></li> <li>๐Ÿ“ฑ <strong>Model selector on small screens.</strong> The model list now stays fully on screen and sizes itself to the space available, instead of running past the edge or hiding behind the on-screen keyboard on phones. <a href="https://github.com/open-webui/open-webui/commit/79d3e34eea6dc2828d1945cc2b9fca5d662d825b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e39ff71532651438c32b2aa7ffe2b6068c94e6b2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ea31a3bd61fdf1a72206f9ed5f7252486d554c9b">Commit</a></li> <li>๐Ÿ“ฒ <strong>Sidebar stays open over the calendar.</strong> Opening the calendar from the account menu on a phone now closes the sidebar, as every other entry in that menu already did. <a href="https://github.com/open-webui/open-webui/pull/26979" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26979/hovercard">#26979</a></li> <li>๐Ÿ—“๏ธ <strong>Automation dialog on narrow screens.</strong> The buttons along the bottom of the automation dialog now sit on their own row on a phone, instead of the schedule and model pickers wrapping and pushing Cancel into the middle. <a href="https://github.com/open-webui/open-webui/pull/27027" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27027/hovercard">#27027</a></li> <li>๐Ÿ“ <strong>Input menu with keyboard open.</strong> The message input's attachment menu now stays on screen and resizes to fit when the on-screen keyboard is open on mobile, instead of running off the edge. <a href="https://github.com/open-webui/open-webui/commit/6e5efc1f757c614814ba88bbae6caa3aaddda528">Commit</a></li> <li>๐ŸŽˆ <strong>Dropdowns that follow their content.</strong> A menu now stays in place as its contents grow or shrink, instead of running past the edge of the screen when a submenu swaps in taller content, and no longer bounces as it opens. <a href="https://github.com/open-webui/open-webui/pull/27460" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27460/hovercard">#27460</a>, <a href="https://github.com/open-webui/open-webui/issues/27458" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27458/hovercard">#27458</a></li> <li>๐Ÿงพ <strong>Attachment menus load once.</strong> Opening a submenu of the attachment menu now requests its list a single time instead of twice. <a href="https://github.com/open-webui/open-webui/pull/27461" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27461/hovercard">#27461</a>, <a href="https://github.com/open-webui/open-webui/issues/27459" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27459/hovercard">#27459</a></li> <li>๐Ÿ”ฆ <strong>Chat search on PostgreSQL.</strong> Searching your chats now finds matches in current conversations on PostgreSQL setups, instead of only matching chats still stored in the older format. <a href="https://github.com/open-webui/open-webui/commit/cc9a44569ef08b64ff44d15607c43966f362ce75">Commit</a></li> <li>๐Ÿงฒ <strong>Search quality with prefix-based embedding models.</strong> Memories, knowledge base descriptions and searches against an external vector database now carry the query and content markers your embedding model expects, so results are no longer quietly worse than they should be on models that rely on them. <a href="https://github.com/open-webui/open-webui/commit/c4f5ac65ee3cd20dd1d507eda04fca21a866910a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26958" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26958/hovercard">#26958</a>, <a href="https://github.com/open-webui/open-webui/issues/26353">#26353</a></li> <li>๐Ÿฅ„ <strong>Counting matches in knowledge base commands.</strong> Piping text into a search inside knowledge base commands now honours the count and filenames-only flags, instead of returning the matching lines regardless. <a href="https://github.com/open-webui/open-webui/pull/26721" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26721/hovercard">#26721</a>, <a href="https://github.com/open-webui/open-webui/issues/26715" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26715/hovercard">#26715</a></li> <li>๐Ÿ” <strong>Knowledge base file search.</strong> Searching inside knowledge base files now returns matching lines with correct line numbers, and patterns that list alternatives separated by a pipe find matches instead of silently returning none. <a href="https://github.com/open-webui/open-webui/pull/27249" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27249/hovercard">#27249</a>, <a href="https://github.com/open-webui/open-webui/commit/e18e249d5da3d8fe701a885edc64341cc5dbf813">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8d2fee5d4559d030b53575d377a0013e2c67b9fe">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26795" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26795/hovercard">#26795</a>, <a href="https://github.com/open-webui/open-webui/issues/26781" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26781/hovercard">#26781</a>, <a href="https://github.com/open-webui/open-webui/issues/26744" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26744/hovercard">#26744</a></li> <li>๐Ÿ–จ๏ธ <strong>PDF text recognition.</strong> The text recognition package is now included again, so the application starts and PDFs with image text extraction enabled upload correctly instead of failing. <a href="https://github.com/open-webui/open-webui/pull/26851" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26851/hovercard">#26851</a>, <a href="https://github.com/open-webui/open-webui/issues/26646" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26646/hovercard">#26646</a>, <a href="https://github.com/open-webui/open-webui/issues/26994" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26994/hovercard">#26994</a></li> <li>๐Ÿงฟ <strong>Mistral OCR on a stock install.</strong> Extracting documents with Mistral OCR now works out of the box, instead of failing on a missing name resolution library that the code assumed was present. <a href="https://github.com/open-webui/open-webui/pull/27440" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27440/hovercard">#27440</a></li> <li>๐Ÿ“ง <strong>Outlook message uploads.</strong> Uploading a .msg email now works, where it previously failed because the package it relied on could not be installed alongside the rest of the application at all. <a href="https://github.com/open-webui/open-webui/pull/26704" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26704/hovercard">#26704</a>, <a href="https://github.com/open-webui/open-webui/issues/26690" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26690/hovercard">#26690</a></li> <li>๐Ÿ–‡๏ธ <strong>Uploads with PaddleOCR-VL selected.</strong> With PaddleOCR-VL chosen as the document loader, only PDFs and images now go to it and everything else falls back to the usual handling, so text, markdown, spreadsheet and Word files index instead of being rejected. <a href="https://github.com/open-webui/open-webui/pull/27529" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27529/hovercard">#27529</a>, <a href="https://github.com/open-webui/open-webui/issues/24988" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24988/hovercard">#24988</a>, <a href="https://github.com/open-webui/open-webui/issues/26759" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26759/hovercard">#26759</a></li> <li>๐Ÿช™ <strong>Documents containing special tokens.</strong> Splitting text by tokens no longer fails when the content contains reserved marker sequences, so those pages and files can be fetched and added to a knowledge base. <a href="https://github.com/open-webui/open-webui/commit/33cf3fbb7f017ab1b79dce5c5ca4d4e1c3092844">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27094" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27094/hovercard">#27094</a></li> <li>๐Ÿ“š <strong>Knowledge base upload reliability.</strong> Adding a file directly to a knowledge base now finishes processing and linking the file before reporting success, so uploaded files are reliably searchable. <a href="https://github.com/open-webui/open-webui/commit/f5b196c060805fd22e1aa1c9f738b60221ef0fd8">Commit</a></li> <li>๐Ÿ› ๏ธ <strong>Web loader settings from the admin panel.</strong> The web loader picked in admin settings is now actually used, along with its certificate checking, request pacing and proxy settings, so instances that fetch pages through an external loader work again instead of trying to reach the internet directly with whatever was configured at startup. <a href="https://github.com/open-webui/open-webui/pull/26749" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26749/hovercard">#26749</a>, <a href="https://github.com/open-webui/open-webui/issues/26747" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26747/hovercard">#26747</a>, <a href="https://github.com/open-webui/open-webui/commit/304cbe4569cddbc9e4641186e51bc9e8d5154533">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27083" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27083/hovercard">#27083</a>, <a href="https://github.com/open-webui/open-webui/pull/27025" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27025/hovercard">#27025</a>, <a href="https://github.com/open-webui/open-webui/issues/27061" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27061/hovercard">#27061</a></li> <li>๐Ÿšง <strong>Quoted entries in the web fetch filter list.</strong> Stray quote marks around a filter entry, which Docker Compose passes through literally, no longer turn the list into one that blocks every web address. <a href="https://github.com/open-webui/open-webui/pull/26910" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26910/hovercard">#26910</a>, <a href="https://github.com/open-webui/open-webui/issues/26908" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26908/hovercard">#26908</a></li> <li>๐ŸŒ <strong>Web fetching with certain plugins installed.</strong> Fetching a web page and loading web search results work again on instances where a tool or function pulls in a replacement networking library, which previously made every fetch fail and return nothing. <a href="https://github.com/open-webui/open-webui/pull/26796" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26796/hovercard">#26796</a>, <a href="https://github.com/open-webui/open-webui/issues/26791" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26791/hovercard">#26791</a></li> <li>๐Ÿ“ข <strong>Web search failures explained.</strong> When a search finds pages but cannot store them, the chat now says what went wrong and points at the document settings, instead of reporting sites searched and then no sources found. <a href="https://github.com/open-webui/open-webui/pull/26883" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26883/hovercard">#26883</a></li> <li>๐Ÿ•ธ๏ธ <strong>Mixed web page extraction.</strong> Fetching several web pages at once now reads each one according to its own format, instead of applying the first page's format to the whole batch and garbling the rest. <a href="https://github.com/open-webui/open-webui/pull/27367" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27367/hovercard">#27367</a></li> <li>๐Ÿงฏ <strong>Leftover browser sessions on web fetches.</strong> Fetching pages through a remote Playwright server now closes each page and the browser even when a page times out or the search is abandoned partway, instead of leaving sessions open and slowing every later search until that server was restarted. <a href="https://github.com/open-webui/open-webui/pull/27526" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27526/hovercard">#27526</a>, <a href="https://github.com/open-webui/open-webui/issues/25880" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25880/hovercard">#25880</a></li> <li>๐Ÿ–‡๏ธ <strong>Sign-in profile pictures fetched safely.</strong> The profile picture pulled in when someone signs in through a provider is now fetched through the same protected path as other outbound requests, so a host that changes its address between the check and the fetch can no longer point it at an internal service, taking the forwarded sign-in token with it. <a href="https://github.com/open-webui/open-webui/pull/26699" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26699/hovercard">#26699</a></li> <li>๐Ÿชƒ <strong>Backslashes in terminal proxy paths.</strong> A request to the terminal proxy containing a backslash is now refused, closing a way to smuggle directory traversal past the path check to an upstream that treats it as a separator. <a href="https://github.com/open-webui/open-webui/pull/27198" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27198/hovercard">#27198</a></li> <li>๐Ÿงฑ <strong>Internal addresses disguised as public ones.</strong> A web address that hides an internal target inside an IPv6 address, through the mapped, 6to4, Teredo or NAT64 forms, is now recognised and refused like any other internal address. <a href="https://github.com/open-webui/open-webui/commit/1717b493d83c86afa82aa8bc50139250852dd2f3">Commit</a></li> <li>๐Ÿชค <strong>Tighter checks when a page is fetched.</strong> Every request a fetched page makes is now checked against the address rules rather than only the page itself, each hop of a redirect is checked in turn, and background workers and socket connections the page tries to open are refused. <a href="https://github.com/open-webui/open-webui/commit/bef63a2ae915571d50d2722a635e8bfa753d7877">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27042" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27042/hovercard">#27042</a>, <a href="https://github.com/open-webui/open-webui/pull/27008" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27008/hovercard">#27008</a></li> <li>๐Ÿข <strong>Dropped pages when fetches are paced.</strong> Pages fetched through Firecrawl, Tavily, Microsoft Web IQ or Playwright are no longer discarded whenever the loader has to pause between requests, which quietly lost any page following close behind another and sometimes blamed it on a failed security check. <a href="https://github.com/open-webui/open-webui/pull/27528" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27528/hovercard">#27528</a>, <a href="https://github.com/open-webui/open-webui/issues/26079" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26079/hovercard">#26079</a></li> <li>๐ŸŽ™๏ธ <strong>Dictation repeating earlier speech.</strong> Dictating into the message box no longer re-inserts everything you said in previous recordings, and cancelling a recording no longer inserts the text anyway. <a href="https://github.com/open-webui/open-webui/pull/26793" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26793/hovercard">#26793</a>, <a href="https://github.com/open-webui/open-webui/issues/26784" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26784/hovercard">#26784</a></li> <li>๐Ÿงฉ <strong>Order of long transcriptions.</strong> A long recording split into pieces for transcription is now reassembled in the order it was spoken, instead of sections sometimes appearing out of sequence in the transcript and everything read from it. <a href="https://github.com/open-webui/open-webui/pull/27417" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27417/hovercard">#27417</a>, <a href="https://github.com/open-webui/open-webui/issues/27143" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27143/hovercard">#27143</a></li> <li>๐Ÿ”Š <strong>Text-to-speech reliability.</strong> Text-to-speech playback and other streamed responses no longer intermittently cut out partway through when several requests run at once. <a href="https://github.com/open-webui/open-webui/pull/26924" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26924/hovercard">#26924</a>, <a href="https://github.com/open-webui/open-webui/issues/26922" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26922/hovercard">#26922</a></li> <li>๐Ÿงฎ <strong>Anthropic usage reporting.</strong> Responses from the Anthropic-compatible API now report accurate input and output token counts, pass through cache and server tool figures where the provider gives them, and leave the input count out entirely rather than reporting zero when it is unknown. <a href="https://github.com/open-webui/open-webui/commit/e8b59b2ef35ecb727fa760cd565d6da20c9e7e79">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/51ff386fd6461c07225d10a0de530019eebdd157">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0576e8eeb5797a36b43eba5790a4e2a5dd8e5a4d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8e74cac8decc0a54137d7214e70c33b0dd52a99a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/93a34bb25b32ae0b3a876fd3161c7778227b76bf">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4c2d864b3f4c1ae6c4c9bd93aea078d4bf520463">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26790" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26790/hovercard">#26790</a>, <a href="https://github.com/open-webui/open-webui/pull/27293" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27293/hovercard">#27293</a>, <a href="https://github.com/open-webui/docs/issues/1328" data-hovercard-type="issue" data-hovercard-url="/open-webui/docs/issues/1328/hovercard">Docs:#1328</a></li> <li>๐Ÿ“จ <strong>Non-streaming requests to strict providers.</strong> A request that is not streaming no longer carries the streaming-only usage option, which some providers reject outright.</li> <li>๐Ÿช <strong>Tool calls with structured arguments.</strong> A provider that sends a tool call's arguments as an object, or as nothing at all, no longer breaks the reply partway through. <a href="https://github.com/open-webui/open-webui/issues/27195" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27195/hovercard">#27195</a></li> <li>๐Ÿงฌ <strong>Shared pipe model tool calls.</strong> Non-admin users of a shared model built on a pipe or manifold model no longer see the response silently stop right after a tool call. <a href="https://github.com/open-webui/open-webui/pull/26906" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26906/hovercard">#26906</a>, <a href="https://github.com/open-webui/open-webui/issues/26900" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26900/hovercard">#26900</a></li> <li>๐Ÿง‘โ€๐Ÿ”ง <strong>Startup as an arbitrary user.</strong> Running the image as a non-root account, as OpenShift and similar setups do, no longer fills the boot log with permission errors while it writes its own icons and manifest. <a href="https://github.com/open-webui/open-webui/pull/26664" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26664/hovercard">#26664</a>, <a href="https://github.com/open-webui/open-webui/issues/26662" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26662/hovercard">#26662</a></li> <li>๐Ÿฉน <strong>Startup with an ownerless tool or function.</strong> A tool or function left without an owner no longer prevents the application from starting, which had blocked all chat responses until it was removed. <a href="https://github.com/open-webui/open-webui/pull/26850" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26850/hovercard">#26850</a>, <a href="https://github.com/open-webui/open-webui/issues/26843" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26843/hovercard">#26843</a></li> <li>๐Ÿท๏ธ <strong>Model names containing a connection prefix.</strong> A prefix set on a connection is now removed only from the front of the model name, so a model whose own name contains that text is no longer mangled before the request is sent. <a href="https://github.com/open-webui/open-webui/commit/ed663f16ecaaf99de194922d1634ecc5d906c703">Commit</a></li> <li>๐Ÿฆ™ <strong>Newly pulled Ollama models.</strong> Sending a message to a model that was pulled after the list was last built now refreshes the list and proceeds, instead of reporting the model as not found. <a href="https://github.com/open-webui/open-webui/commit/ed663f16ecaaf99de194922d1634ecc5d906c703">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27353" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27353/hovercard">#27353</a></li> <li>๐Ÿ—‘๏ธ <strong>Deleting a model from the selector.</strong> Removing a workspace model from the model selector menu now deletes just that model and leaves the underlying one in place, instead of failing with a not found error. <a href="https://github.com/open-webui/open-webui/pull/26819" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26819/hovercard">#26819</a></li> <li>๐Ÿ”‘ <strong>Connecting a remote MCP server over OAuth.</strong> Setting up a remote MCP server now reports plainly when its sign-in details cannot be discovered, rather than saving an unusable connection that failed with a server error the moment you tried to authorise it. <a href="https://github.com/open-webui/open-webui/pull/26654" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26654/hovercard">#26654</a>, <a href="https://github.com/open-webui/open-webui/issues/26647" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26647/hovercard">#26647</a></li> <li>๐Ÿชข <strong>Tool servers with cross-referencing types.</strong> A tool server whose description defines types that refer to each other now loads its tools instead of failing outright, so the integration appears in model and tool selection again. <a href="https://github.com/open-webui/open-webui/pull/27413" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27413/hovercard">#27413</a>, <a href="https://github.com/open-webui/open-webui/issues/27239" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27239/hovercard">#27239</a></li> <li>๐Ÿ‘ฅ <strong>Previewing what someone can use.</strong> The preview of a person's access now includes the models, knowledge bases and tools they own, not just the ones shared with them. <a href="https://github.com/open-webui/open-webui/commit/a9a3e5b95c8e641881fedc1ce7431eedab9a371b">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27423" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27423/hovercard">#27423</a>, <a href="https://github.com/open-webui/open-webui/discussions/27407">#27407</a></li> <li>๐Ÿงฐ <strong>Model editor loading.</strong> The model editor no longer fails to open when its tool list can't be loaded, falling back gracefully instead. <a href="https://github.com/open-webui/open-webui/commit/10724d057af13a826c52e92b1c01a031656768d5">Commit</a></li> <li>๐Ÿ—ƒ๏ธ <strong>Milvus Lite collection creation.</strong> Setting up collections now succeeds on embedded Milvus Lite, which previously could fail while creating the resource index. <a href="https://github.com/open-webui/open-webui/pull/26911" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26911/hovercard">#26911</a></li> <li>๐Ÿงฝ <strong>Milvus log noise.</strong> Instances backed by Milvus no longer fill their logs with deprecation warnings while indexing and retrieving, and keep working with future PyMilvus releases that drop the old interface entirely. <a href="https://github.com/open-webui/open-webui/pull/27521" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27521/hovercard">#27521</a>, <a href="https://github.com/open-webui/open-webui/issues/26978" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26978/hovercard">#26978</a></li> <li>๐Ÿš <strong>Stray terminal containers.</strong> Terminal orchestrator connections that use a policy now send every request through that policy, so each person no longer ends up with a second unintended container alongside the intended one. <a href="https://github.com/open-webui/open-webui/issues/26945" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26945/hovercard">#26945</a>, <a href="https://github.com/open-webui/open-webui/commit/7088d245bb45fc69c0b22748563b9f3c6f0daa73">Commit</a></li> <li>๐Ÿ”ฆ <strong>Connections on hardened instances.</strong> With the admin access bypass turned off, a connection that has no access grants yet is now reachable by administrators again, instead of being hidden from everyone including the admin who created it. <a href="https://github.com/open-webui/open-webui/pull/27581" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27581/hovercard">#27581</a>, <a href="https://github.com/open-webui/open-webui/issues/27580" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27580/hovercard">#27580</a>, <a href="https://github.com/open-webui/open-webui/issues/27064" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27064/hovercard">#27064</a></li> <li>โ™ป๏ธ <strong>Connection changes take effect immediately.</strong> Saving connection settings now refreshes the model list straight away, instead of leaving the previous models in place until the server was restarted.</li> <li>๐Ÿšซ <strong>Disabled OpenAI connections are enforced.</strong> Turning off the OpenAI API now blocks chat requests to it and clears its models, rather than only hiding it from the interface.</li> <li>๐Ÿช› <strong>Deleting an Ollama connection.</strong> Removing an Ollama connection now saves straight away, instead of reappearing until the Ollama API switch was toggled afterwards. <a href="https://github.com/open-webui/open-webui/pull/27483" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27483/hovercard">#27483</a>, <a href="https://github.com/open-webui/open-webui/issues/27482" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27482/hovercard">#27482</a></li> <li>๐Ÿงน <strong>Orphaned sessions get cleaned up.</strong> The instance that reaps sessions left behind by a crashed worker now keeps trying if another instance holds the job, rather than one instance giving up for good and leaving stale sessions to accumulate, and the lock it uses can no longer be released or renewed by an instance that does not hold it. <a href="https://github.com/open-webui/open-webui/commit/bf35f64a7f14161933dfa608577a977d107b1569">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/846ba80a9d5e75837d3db37185e9a23b1e6bfe78">Commit</a></li> <li>๐ŸงŠ <strong>Redis cluster connections.</strong> A deployment using Redis in cluster mode is no longer handed a connection built for a single server, or the reverse, when both point at the same address. <a href="https://github.com/open-webui/open-webui/commit/fc4906c9e9df3fa42bb9073ac197383347caa853">Commit</a></li> <li>๐Ÿš <strong>Stopping a reply when Redis is configured.</strong> The stop button now actually halts generation on Redis-backed deployments, where the listener that carries stop requests between instances quietly died after a few idle seconds and left tokens streaming on, and a new "REDIS_SOCKET_TIMEOUT" setting controls that timeout. <a href="https://github.com/open-webui/open-webui/pull/27104" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27104/hovercard">#27104</a>, <a href="https://github.com/open-webui/open-webui/issues/26779" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26779/hovercard">#26779</a></li> <li>๐Ÿ›Ÿ <strong>Redis failover on timeouts.</strong> A Redis connection that times out now retries against a freshly resolved primary instead of failing, so Sentinel setups recover from a failover rather than erroring out. <a href="https://github.com/open-webui/open-webui/commit/75a8a0046b5b2ebd9942b25035b346aa953f81cc">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27210" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27210/hovercard">#27210</a></li> <li>๐Ÿ‘ฃ <strong>First sign-in through a trusted header.</strong> Two requests arriving together for someone signing in for the first time through a trusted header no longer create two accounts for the same person, and the database now refuses a second account for an address that already exists, whatever its capitalisation. <a href="https://github.com/open-webui/open-webui/commit/b190dcf3caa00dc8b7b9c7312828298d9143f60d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/50e050e1957de40caa9df479b4c0d9b814f1f623">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27571" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27571/hovercard">#27571</a>, <a href="https://github.com/open-webui/open-webui/issues/27117" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27117/hovercard">#27117</a></li> <li>๐Ÿ”ง <strong>Sign-on settings from environment variables.</strong> Single sign-on settings supplied through environment variables are no longer overridden by stale values saved at first startup, so changing them takes effect. <a href="https://github.com/open-webui/open-webui/pull/26928" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26928/hovercard">#26928</a>, <a href="https://github.com/open-webui/open-webui/issues/26917" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26917/hovercard">#26917</a></li> <li>๐ŸŽซ <strong>Expired identity tokens sent to tools.</strong> A sign-in session is now refreshed before the earliest of its tokens expires, so tools and pipes that forward your identity no longer hand a downstream service a token it rejects. <a href="https://github.com/open-webui/open-webui/pull/27520" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27520/hovercard">#27520</a>, <a href="https://github.com/open-webui/open-webui/issues/27066" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27066/hovercard">#27066</a></li> <li>๐ŸŽซ <strong>Sign-in tokens that never expire.</strong> A provider that returns no expiry and no way to refresh is now taken at its word, instead of being given an invented one-hour lifetime that left the session unusable afterwards. <a href="https://github.com/open-webui/open-webui/commit/98656b7c5e29383b61d2113164466b8d4ab1d424">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26802" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26802/hovercard">#26802</a>, <a href="https://github.com/open-webui/open-webui/issues/26141" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26141/hovercard">#26141</a></li> <li>๐Ÿ”“ <strong>Single sign-on after a key rotation.</strong> Signing in with OIDC now recovers when the provider rotates its signing key, refreshing the cached keys and retrying instead of failing with an invalid credentials error. <a href="https://github.com/open-webui/open-webui/pull/27310" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27310/hovercard">#27310</a>, <a href="https://github.com/open-webui/open-webui/issues/26407" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26407/hovercard">#26407</a></li> <li>๐Ÿ”‘ <strong>Signing in after a session expires.</strong> An expired session now cleanly returns you to the sign-in page and back to where you were afterwards, instead of bouncing you away from the sign-in page or leaving a stale session behind. <a href="https://github.com/open-webui/open-webui/commit/609cc6ad9b597c6a3f4df6f9dba93d6ff6ec1f18">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/29782aba01b8f34625949170dc9ee9e1c5872893">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26751" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26751/hovercard">#26751</a>, <a href="https://github.com/open-webui/open-webui/issues/26731" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26731/hovercard">#26731</a></li> <li>๐Ÿซฅ <strong>Temporary chats and channels write nothing.</strong> Generating or editing an image and status updates in a temporary chat or a channel message no longer try to save themselves against a conversation that was never stored, and the task list tools are no longer offered there at all rather than being offered and then failing. <a href="https://github.com/open-webui/open-webui/commit/d484a2a99e3a0c21fdcad007a50ebc412fffbb2e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d2936c880cfc8cb71bb5c235926048ae189bba25">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b45c020f68a9499b66e598e854b17a3f232b6cf2">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/71c4da8c065491a96e41da3c9f0c663e5f759468">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27432" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27432/hovercard">#27432</a></li> <li>๐ŸŽž๏ธ <strong>Artifacts panel reopening itself.</strong> The artifacts panel now opens once when a finished block is detected, so closing it partway through a reply no longer sees it forced back open on every word that follows. <a href="https://github.com/open-webui/open-webui/commit/4856afcef8251969f751ade5760cefea9577c051">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27399" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27399/hovercard">#27399</a></li> <li>๐Ÿž๏ธ <strong>Images returned by a tool.</strong> Images a tool produces are now passed to the model in a form the OpenAI-compatible providers accept, so it can actually look at them instead of receiving a result it cannot read. <a href="https://github.com/open-webui/open-webui/commit/dd86b984bd508cf2841f08dae90411dfb5fe407f">Commit</a></li> <li>๐Ÿ–ผ๏ธ <strong>External message images.</strong> Images hosted on other sites and referenced in a message now display inline instead of being replaced with a placeholder. <a href="https://github.com/open-webui/open-webui/commit/890bfd0d9771d1919ce24f04e11b6c96589fca5b">Commit</a></li> <li>๐Ÿ”ฃ <strong>Names containing a vertical bar.</strong> What you insert with the at sign or a slash is now recorded by the key you typed rather than guessed from its name, so a prompt or model whose name contains a vertical bar is no longer mistaken for a skill. <a href="https://github.com/open-webui/open-webui/commit/e28b391e514384ec329ca871d02189aa81fb1a00">Commit</a></li> <li>ใ€ฐ๏ธ <strong>Text above a collapsible block.</strong> A line written directly above a collapsible section is no longer turned into a large heading, and the section itself still renders as a collapsible widget rather than leaking its markup. <a href="https://github.com/open-webui/open-webui/commit/7d77efe0f1cfa4782893ffde78419a96a95240f4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27148" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27148/hovercard">#27148</a>, <a href="https://github.com/open-webui/open-webui/issues/27001" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27001/hovercard">#27001</a></li> <li>โœณ๏ธ <strong>Asterisks in the message input.</strong> Wrapping a word in asterisks no longer silently turns it italic and swallows the asterisks, so your prompt reaches the model exactly as you typed it. <a href="https://github.com/open-webui/open-webui/commit/001775d8e868ce44f125e0d683dd50363f0e8318">Commit</a></li> <li>๐Ÿ“ถ <strong>Reconnect warnings on mobile.</strong> Switching back to Open WebUI after using another app no longer flashes a connection lost warning while the tab wakes up and reconnects on its own. <a href="https://github.com/open-webui/open-webui/commit/63ada247066dfc51e0e9559366f0cfd9a98db40b">Commit</a></li> <li>๐Ÿงญ <strong>Sidebar access from the automation editor.</strong> Opening an automation on a phone no longer hides the sidebar button, so you can move around without leaving the editor first.</li> <li>๐Ÿ”ฃ <strong>Chats containing unusual characters.</strong> Broken character sequences are now cleaned out of text before it is stored, so a conversation that picked one up still saves and still opens instead of failing to load. <a href="https://github.com/open-webui/open-webui/commit/43e7eefa959918baf9fbf867a12b5d721fd782af">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27201" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27201/hovercard">#27201</a>, <a href="https://github.com/open-webui/open-webui/issues/27081" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27081/hovercard">#27081</a></li> <li>๐Ÿ“› <strong>Failures after a tool call.</strong> A reply that fails while continuing after a tool call or a code interpreter run now says so, instead of stopping mid-answer with nothing to explain why. <a href="https://github.com/open-webui/open-webui/commit/8ab44ed3b153dd8d8d57a444c98d100f281f7f7e">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27426" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27426/hovercard">#27426</a>, <a href="https://github.com/open-webui/open-webui/issues/27411" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27411/hovercard">#27411</a></li> <li>๐Ÿ’พ <strong>Errors kept after reloading.</strong> An error that ends a streamed reply is now saved to the conversation, so it is still there when you reload instead of disappearing. <a href="https://github.com/open-webui/open-webui/pull/27365" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27365/hovercard">#27365</a>, <a href="https://github.com/open-webui/open-webui/issues/27074" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27074/hovercard">#27074</a></li> <li>๐Ÿ’ฌ <strong>Readable error messages.</strong> Errors in a conversation now always show readable text that wraps instead of running off the edge, including errors that arrive wrapped inside another error.</li> <li>๐Ÿช <strong>Blocked webhook targets look like failures.</strong> A webhook pointing at an address that is not publicly reachable is now skipped with a short warning, instead of an error and a full traceback that read like the server crashing on startup. <a href="https://github.com/open-webui/open-webui/commit/0671b7aa2b59f5c6235bfa85d6aba54e2ba91353">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26975" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26975/hovercard">#26975</a></li> <li>๐Ÿ•ต๏ธ <strong>Values printed in error logs.</strong> A failure no longer prints the contents of nearby variables alongside its traceback, which could put keys and message content into the logs, and a new "LOGURU_DIAGNOSE" setting turns that detail back on for debugging. <a href="https://github.com/open-webui/open-webui/commit/6aebfd88e938d1cd139068b5737a83a82ff393ed">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26814" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26814/hovercard">#26814</a></li> <li>๐Ÿชต <strong>Empty audit exclusion list.</strong> Clearing the list of paths excluded from audit logging no longer switches off auditing altogether, so requests are recorded as intended. <a href="https://github.com/open-webui/open-webui/pull/27370" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27370/hovercard">#27370</a>, <a href="https://github.com/open-webui/open-webui/commit/2ef6c76f5126ccdef5d1c814004920941275f45d">Commit</a></li> <li>๐Ÿ—’๏ธ <strong>Readable audit log bodies.</strong> Audit logs that record response bodies now store them as readable text instead of compressed data, so entries are legible whenever a browser requested compression. <a href="https://github.com/open-webui/open-webui/pull/27369" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27369/hovercard">#27369</a></li> <li>๐Ÿ‘ <strong>Rating in feedback events.</strong> Events sent when someone rates a response now carry the rating that was given, instead of reporting it as empty. <a href="https://github.com/open-webui/open-webui/commit/300302d43259e119cd88247b3f246bea82b4dd8e">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26840" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26840/hovercard">#26840</a></li> <li>โฑ๏ธ <strong>Accurate request timing header.</strong> The processing time reported on each response now includes fractions of a second instead of rounding everything under a second down to zero. <a href="https://github.com/open-webui/open-webui/pull/27368" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27368/hovercard">#27368</a></li> <li>๐Ÿ“‹ <strong>Provider rejection logging.</strong> When a model provider rejects a request, the reason it gave is now recorded in the server logs, so administrators can diagnose failures without querying the provider directly. <a href="https://github.com/open-webui/open-webui/pull/27238" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27238/hovercard">#27238</a>, <a href="https://github.com/open-webui/open-webui/issues/27237" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27237/hovercard">#27237</a>, <a href="https://github.com/open-webui/open-webui/issues/26253" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26253/hovercard">#26253</a></li> <li>โณ <strong>Faster licensed startup.</strong> Instances with a license key no longer wait on the license server during startup, so the app becomes ready to serve traffic without that delay. <a href="https://github.com/open-webui/open-webui/commit/8f7753331752e72b17ef8f055318ab548a73f4b8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0c7ddbdb4f7dbd46f1dadc3242dbb13b81b47758">Commit</a></li> <li>๐Ÿ“… <strong>Calendar invitation responses.</strong> Whether you have accepted an invitation is now decided by your own response rather than by whoever created the event, and invitations you decline disappear from your calendar. <a href="https://github.com/open-webui/open-webui/pull/27007" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27007/hovercard">#27007</a></li> <li>๐Ÿ—“๏ธ <strong>Schedules written by hand.</strong> A recurrence rule is now read the same way whether it is written in upper or lower case, a start date in the rule is respected, second-by-second rules are understood, and a rule that cannot be supported is refused with a clear message instead of behaving unpredictably. <a href="https://github.com/open-webui/open-webui/commit/c4ae8c86786fed521960466f6d8eef8af22c2946">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2d928df30443516a9a3d6b71b0f31426a2362499">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/27470" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27470/hovercard">#27470</a></li> <li>๐Ÿ“… <strong>One calendar event stalling the server.</strong> Working out when a repeating event happens next now walks its rule once rather than re-counting from the beginning for every occurrence, so an event repeating every minute from an old start date can no longer occupy the server for everyone. <a href="https://github.com/open-webui/open-webui/pull/27468" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27468/hovercard">#27468</a></li> <li>โฐ <strong>Recurring automation scheduling.</strong> Automations that repeat every few minutes or hours now align to the clock and are no longer wrongly rejected as having no upcoming runs when the server clock is ahead of your timezone. <a href="https://github.com/open-webui/open-webui/commit/b3aead23da6cf8ebeedbd9fa3b97c7ac1a3f54ec">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26954" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26954/hovercard">#26954</a></li> </ul> <h3>Changed</h3> <ul> <li><g-emoji class="g-emoji" alias="warning">โš ๏ธ</g-emoji> <strong>Database Migrations</strong>: This release includes database schema changes; we strongly recommend backing up your database and all associated data before upgrading in production environments. If you are running a multi-worker, multi-server, or load-balanced deployment, all instances must be updated simultaneously, rolling updates are not supported and will cause application failures due to schema incompatibility.</li> <li>๐Ÿ› ๏ธ <strong>Admin settings moved into settings.</strong> Admin settings and the analytics dashboard are no longer separate pages and now open alongside your personal settings in the settings window, under their own Admin section, with the old links redirecting there. <a href="https://github.com/open-webui/open-webui/commit/c1460570b7e2897a3e648441a0206ad25e603b8c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3ce3c529365a3cd9e5631b14bfffead6baa2b1ed">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/667cba1a9561166941f59faf3bfa24038288b449">Commit</a></li> <li>๐Ÿ“ <strong>Workspace actions in one menu.</strong> Creating, importing, and exporting workspace items no longer have their own buttons on each page and are now reached from a single Create menu in the workspace header, with creating a prompt or knowledge base opening a dialog rather than a separate page. <a href="https://github.com/open-webui/open-webui/commit/05e3f713175c1eea43a99f29521eb01700c21d3c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f8350360dfd60ff890b73fe2f39aaf20a52ad28b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/91277726cd666276ce4b41a722a142eb539089b8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1760b073c7595d4075a91b986520ff8eeeaebc35">Commit</a></li> <li>๐Ÿ” <strong>Administrators no longer reach other people's automations.</strong> Viewing, editing, running and deleting an automation is now limited to the person who created it, so an administrator with a link to someone else's automation is refused rather than allowed through. <a href="https://github.com/open-webui/open-webui/commit/f798d05586a140f1a6b51f1e51b2b2a63d079d45">Commit</a></li> <li>๐Ÿท๏ธ <strong>Shorter titles without emojis.</strong> Automatically generated titles for chats and notes are now two to four words and no longer include an emoji, and anyone who prefers the old style can restore it by editing the title generation prompt in admin settings. <a href="https://github.com/open-webui/open-webui/commit/50d3c927bfed3b8dd94fd9f79bff258a84ecbd92">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7a9928ef172b7c280c377c86cb52957e39340158">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Archived chats moved to settings.</strong> The Archived Chats shortcut is no longer in the user menu, and your archived conversations are now reached through Settings, where they can also be searched and sorted. <a href="https://github.com/open-webui/open-webui/commit/9f17c5960a0e47a09773da4bba12997a31222fc8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8dd862d3383978f21111e63fb2d6029711abed9a">Commit</a></li> <li>๐Ÿ”ข <strong>Usage now reports the latest call separately.</strong> In a response's usage block, "prompt_tokens" and "completion_tokens" now carry the counts from the most recent model call rather than the running total, while "input_tokens", "output_tokens" and "total_tokens" stay cumulative, so anything reading the first pair for billing should read the second set instead. <a href="https://github.com/open-webui/open-webui/commit/df94268e892cbb66675170a6c78846aef23f6e89">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/27031" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/27031/hovercard">#27031</a></li> <li>๐Ÿงณ <strong>The "python-jose" library is no longer installed.</strong> Nothing in Open WebUI imports it anymore, so it and the two packages it pulled in have been dropped from the image, and any tool or function that imports it directly now needs to install it itself. <a href="https://github.com/open-webui/open-webui/pull/27444" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/27444/hovercard">#27444</a></li> <li>๐Ÿ“ฆ <strong>Storage emulator no longer bundled.</strong> The optional Google Cloud Storage emulator is no longer installed as part of the full package, so anyone who relied on it for local storage testing now needs to install "gcp-storage-emulator" themselves. <a href="https://github.com/open-webui/open-webui/commit/30415c925a18b1ea1c3f2739bd944dd939f020cf">Commit</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.10.2 2026-07-01T08:41:29Z

v0.10.2

<h3>Added</h3> <ul> <li>๐Ÿ’ญ <strong>Streamed reasoning display.</strong> Models that emit thinking or reasoning now show that content as it streams, and it renders correctly in the chat overview and in exported conversations. <a href="https://github.com/open-webui/open-webui/commit/0b75445ff9a42e37640c034812d0de9b84039e60">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/af1c0eee89810fa4c36e3eb7e4eba6de685bd7ca">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4b08d65597e5b634b7191b0bd6d28feeafcc2a48">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/fa2abe4cb6a085a4c9045bf8d8ff4b6beffdef6a">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Folder uploads to knowledge bases.</strong> Dragging a folder into a knowledge base, or syncing one, now recreates its subfolder structure instead of flattening everything into loose files. <a href="https://github.com/open-webui/open-webui/issues/26130" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26130/hovercard">#26130</a>, <a href="https://github.com/open-webui/open-webui/commit/2ed8934f5b2bc8a11c74ef2f34cdb62ef024809e">Commit</a></li> <li>๐Ÿง  <strong>Memory system context toggle.</strong> Administrators can now keep memory tools available while choosing not to add stored memories to the system context, using the new 'Memory System Context' toggle in admin settings. <a href="https://github.com/open-webui/open-webui/commit/4067e357b2ff9e2fb59866d24656e832908fb6fe">Commit</a></li> <li>๐Ÿงน <strong>Tidier automatic memories.</strong> Automatically saved memories now focus on enduring details like preferences and goals and skip one-off things like meals, routine events, or passing mood unless you ask to remember them. <a href="https://github.com/open-webui/open-webui/commit/80af65c24adac5140a39a2b5687a3b669b86719f">Commit</a></li> <li>๐ŸŽ™๏ธ <strong>Speech-to-text request format.</strong> OpenAI-compatible speech-to-text can now send audio as either a multipart upload or base64 JSON, selectable in admin audio settings. <a href="https://github.com/open-webui/open-webui/commit/989c6c13f5d4c5cc255aec77aea14725104d9cb3">Commit</a></li> <li>๐Ÿงฐ <strong>API configs via environment.</strong> Administrators can now set per-connection Ollama and OpenAI API configurations through the "OLLAMA_API_CONFIGS" and "OPENAI_API_CONFIGS" environment variables. <a href="https://github.com/open-webui/open-webui/commit/19d8f03bd2c64013b510f2a0eeb3513d452814a3">Commit</a></li> <li>๐Ÿ“ก <strong>Provider failure events.</strong> Failed Ollama and OpenAI-compatible provider requests now emit a structured event describing the error type, provider, and status, giving administrators clearer visibility into upstream failures. <a href="https://github.com/open-webui/open-webui/commit/4351c78b1e45bb0c5824f9d9eb911b395e343646">Commit</a></li> <li>๐ŸŸ๏ธ <strong>Arena models via environment.</strong> Administrators can now define evaluation arena models through the "EVALUATION_ARENA_MODELS" environment variable. <a href="https://github.com/open-webui/open-webui/issues/26174" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26174/hovercard">#26174</a></li> <li>โ™ฟ <strong>Clearer high-contrast sidebar selection.</strong> With high-contrast mode enabled, the currently selected chat in the sidebar now stands out with stronger colors, making it easier to tell which chat is active. <a href="https://github.com/open-webui/open-webui/issues/26469" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26469/hovercard">#26469</a>, <a href="https://github.com/open-webui/open-webui/commit/52ee5cb1b3aa8a8ad40b23d72d82db7c3522dbf8">Commit</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Translation updates.</strong> Translations for Thai, Portuguese (Brazil), Catalan, and Spanish were enhanced and expanded.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section โ€” some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ” <strong>Fewer unexpected logouts.</strong> A single request returning an authorization error no longer signs you out while your session is still valid, since the app now confirms the session status before redirecting to login. <a href="https://github.com/open-webui/open-webui/commit/56ee875e21cb3b137a5aa1eca6eb3c0731b14045">Commit</a></li> <li>๐Ÿ”’ <strong>Web search domain filtering.</strong> Domain allow and block rules for web search results are now matched against the host, closing a gap where some URLs could slip past the filter. <a href="https://github.com/open-webui/open-webui/commit/688bda09fbe26619613aa487beda8059a5fd55ef">Commit</a></li> <li>๐Ÿ•ต๏ธ <strong>Image prompt log privacy.</strong> Image generation workflows are no longer written to server logs at the default log level, keeping user-authored prompt content out of operator-visible logs. <a href="https://github.com/open-webui/open-webui/issues/26400" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26400/hovercard">#26400</a>, <a href="https://github.com/open-webui/open-webui/commit/64b92ff08a09b1bf338d5d95b7bf6f9db0d7e857">Commit</a></li> <li>๐Ÿ—„๏ธ <strong>Safer database upgrades.</strong> Upgrading an existing SQLite database no longer crashes during the user-table migration or corrupts saved user settings, resolving failures that could block startup or break login after an upgrade. <a href="https://github.com/open-webui/open-webui/issues/26403" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26403/hovercard">#26403</a>, <a href="https://github.com/open-webui/open-webui/commit/c416c6cad69cc4ce44faacdad87cc65862625fb4">Commit</a></li> <li>โš™๏ธ <strong>Saving settings as a non-admin.</strong> Non-admin users can once again save their interface settings, such as the default model and theme, which previously failed with a server error while the interface incorrectly reported success. <a href="https://github.com/open-webui/open-webui/issues/26627" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26627/hovercard">#26627</a>, <a href="https://github.com/open-webui/open-webui/commit/9866a02863c12c466100aed832f0006225759493">Commit</a></li> <li>๐Ÿ•’ <strong>Sidebar chat timestamps.</strong> Chats in the sidebar now show when they were last active instead of when they were created, so the time label matches their position in the list and refreshes after each new message. <a href="https://github.com/open-webui/open-webui/pull/26454" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26454/hovercard">#26454</a>, <a href="https://github.com/open-webui/open-webui/issues/26451" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26451/hovercard">#26451</a></li> <li>๐ŸŽฏ <strong>Default model after refresh.</strong> Your selected model is no longer cleared when you reload the page, as model selection now waits for the model list to finish loading. <a href="https://github.com/open-webui/open-webui/commit/b6d4baeb7ea9bc83e5486ca98b3cae07d3869aa7">Commit</a></li> <li>โณ <strong>Tool dialogs no longer hang.</strong> Dismissing a tool or function input dialog by clicking outside it now cancels the pending request instead of leaving the chat spinning indefinitely. <a href="https://github.com/open-webui/open-webui/issues/26417" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26417/hovercard">#26417</a>, <a href="https://github.com/open-webui/open-webui/commit/0016266c0652757e32aa44f2e1fb7311ac08db51">Commit</a></li> <li>๐Ÿ <strong>Reliable code execution loading.</strong> Running Python code in chat now loads its runtime reliably, fixing sandbox startup failures that broke code execution and the Pyodide file viewer in recent releases. <a href="https://github.com/open-webui/open-webui/pull/26625" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26625/hovercard">#26625</a>, <a href="https://github.com/open-webui/open-webui/issues/26390" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26390/hovercard">#26390</a></li> <li>๐Ÿค– <strong>Models with null capabilities.</strong> Chatting with a model whose capabilities are unset no longer fails with an error when the memory feature or automations are involved. <a href="https://github.com/open-webui/open-webui/issues/26412" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26412/hovercard">#26412</a>, <a href="https://github.com/open-webui/open-webui/commit/650b81792582268345073ce3757ac14356189d75">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0016266c0652757e32aa44f2e1fb7311ac08db51">Commit</a></li> <li>๐Ÿ”Ž <strong>Searchable responses.</strong> Chat search again finds assistant messages whose text is stored as structured output, which were previously skipped. <a href="https://github.com/open-webui/open-webui/pull/26405" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26405/hovercard">#26405</a></li> <li>๐Ÿ”” <strong>Chat notification previews.</strong> Background chat completion notifications and toasts now show a clean response preview instead of appearing blank for messages stored as structured output. <a href="https://github.com/open-webui/open-webui/commit/c98d8ecaccc7284573b050e88b3857c4aeba3860">Commit</a></li> <li>๐Ÿ’พ <strong>Banner and config startup.</strong> Setting configuration such as "WEBUI_BANNERS" no longer causes a startup failure, since admin configuration values are now stored correctly regardless of their data type. <a href="https://github.com/open-webui/open-webui/issues/26431" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26431/hovercard">#26431</a>, <a href="https://github.com/open-webui/open-webui/commit/ab22fe64bdd10ba86845dcd46dfd7f619b22366f">Commit</a></li> <li>๐Ÿ“‘ <strong>RAG Template visibility.</strong> The RAG Template editor now stays visible in admin document settings even when Bypass Embedding and Retrieval is enabled, since the template still applies to document content in that mode. <a href="https://github.com/open-webui/open-webui/issues/26126" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26126/hovercard">#26126</a>, <a href="https://github.com/open-webui/open-webui/commit/8fe480250f649824441a7b4d725a502683134713">Commit</a></li> <li>๐Ÿงฌ <strong>Editing derived models.</strong> Editing a workspace model no longer clears its base model, including when that base is a preset or the model itself. <a href="https://github.com/open-webui/open-webui/commit/092b5857bbda01be53619e26f42b1fa9b64a2b44">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/54f31c630afa75e9c81acaa048e1bd901254ba92">Commit</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.10.1 2026-06-29T19:38:44Z

v0.10.1

<h3>Fixed</h3> <ul> <li>๐Ÿค <strong>Shared folder read-only chats no longer sign users out.</strong> Opening or reading chats from shared folders now keeps the current session active when a resource-level access error is returned, instead of incorrectly showing "Session expired. Please sign in again."</li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.10.0 2026-06-29T19:17:48Z

v0.10.0

<h3>Added</h3> <ul> <li>๐Ÿค <strong>Share folders with your team.</strong> You can now share a folder and the chats inside it with specific users, groups, or everyone, with read or write access; people you share with see shared folders in their sidebar and open the chats in a read-only view when they are not the owner, and administrators control who is allowed to share folders with a new "Folders Sharing" permission that is off by default. <a href="https://github.com/open-webui/open-webui/commit/5019af79a0c45743ede8c9ff37d68f768e7f6174">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/38920c0ed1f6ad5fe3bb9d12898fa968ead3634a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d65ac445a43348c5f0323d54c37397ae7f483cb8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c783fd30f20d6be5028cf337bc5e5c2f9afbd3f8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/45fcf272ef51c84cb01c1454589da3f98e4adc2c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/76854d14246660af8222a5302513020e1f36c4f3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/084d040e220ee39f62757d928d839646e813fb25">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/10558173fb155c63403aa8d80f16f8a3ccfa72a6">Commit</a></li> <li>๐Ÿ—œ๏ธ <strong>Automatic context compaction for long chats.</strong> Conversations that grow past a configurable token threshold can now be summarized automatically so they stay within a model's context window, with a notification shown while it happens; administrators can enable it, set the threshold, customize the summarization prompt, and lower the threshold per model. It is off by default. <a href="https://github.com/open-webui/open-webui/commit/3f0c0e0a0ddff841b015f96f9649c6999a435c73">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7f08376f0c06e1a7fba983a2fa93deb8dfbe7cb0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8934bfb04bf366aece872028944e280c25e36d3e">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/19594" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/19594/hovercard">#19594</a></li> <li>๐Ÿ–ฅ๏ธ <strong>Open WebUI Computer agent support.</strong> Open WebUI can now connect to Open WebUI Computer through its OpenAI-compatible gateway, letting chats run full agent sessions on your own machine with file, terminal, git, and web access. <a href="https://github.com/open-webui/computer">GitHub</a></li> <li>๐Ÿš€ <strong>Much faster hybrid search on large knowledge bases.</strong> Hybrid search now runs natively in the database on pgvector setups instead of loading an entire collection into memory, so querying large knowledge bases is dramatically faster. <a href="https://github.com/open-webui/open-webui/commit/223f484ded01d092979693341dc03351a9fa17fa">Commit</a>, <a href="https://github.com/open-webui/open-webui/discussions/20737">#20737</a></li> <li>๐Ÿ—‚๏ธ <strong>External knowledge bases.</strong> Knowledge bases can now be backed by an external retrieval source through configurable external knowledge connections, so you can search an existing external system from chat instead of only Open WebUI's built-in store. <a href="https://github.com/open-webui/open-webui/commit/15c7e374384488effc3d6059d09b3a8aa79c618d">Commit</a></li> <li>๐Ÿง  <strong>Reworked memory system.</strong> Memory has been overhauled with distinct memory types โ€” long-lived personal memories and per-conversation context โ€” managed through a structured add, update, and delete flow, giving models a more reliable way to remember and apply what they've learned about you. <a href="https://github.com/open-webui/open-webui/commit/dbdcfd8c6080c284024052a482e589de226dbf05">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7e13fd7ad19c28ba34502bde6c709665f7a6808c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2560533c1a8a2b2a0f7b47becf3703031053ad30">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8977a10a2b1e150393635dc5c24e59660d0f2da9">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/260f3c3a22c55f15ca8f06c5314b23f2a9eb1739">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/b0487dd6dd942a757828a25aba92e9feef685275">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a285a390c12e27e614d1ba9ffb92d1a0e49e7dfa">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/70e4ffcc6526c1bc90dbfdc0287283574b12c18b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2c4e1fce8f40b0cb5028f1afcb184b6e58c33041">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c7e634776d7e77556d149b6cc884ed64363648a9">Commit</a></li> <li>๐Ÿงฉ <strong>New plugin primitive: the Event function.</strong> Where pipe, filter, and action functions all run inside a conversation, the new Event function is the first primitive that hooks into the system itself: it runs your own Python in response to events emitted across the whole application โ€” sign-ups, configuration changes, file uploads, role changes, deletions, startup and shutdown, and more. That makes a new class of behavior possible directly inside Open WebUI, from onboarding and access control to auditing, lifecycle automation, and external integrations. Comes with starter boilerplate in the function editor. <a href="https://github.com/open-webui/open-webui/commit/e124c2656a4c2092b070e570e35b2f0fb7f584de">Commit</a>, <a href="https://docs.openwebui.com/features/extensibility/plugin/functions/event" rel="nofollow">Docs</a></li> <li>๐Ÿ”” <strong>New event system with webhooks.</strong> Open WebUI now emits events for a wide range of system activity โ€” sign-ins, configuration changes, startup, and actions across chats, knowledge, files, and more. Administrators can send these as outbound webhooks, route them to specific users or groups, and manage which events go where from a new event settings admin page. <a href="https://github.com/open-webui/open-webui/commit/b5c43968db0ea1556b228d143ae5946dc4e944ba">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/745396867888718289a2dfcf0809b3e162e00629">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/5576e6ed8a80a4032b7c6cb3ee0cda0254019355">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7b55a63fc7ee323e9114713ce1d2f3f688aa37e6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1a8e1a993928a28b9d814c77b2aef0361b630f27">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ede39d82de05eeb7591329679c8cab97753e5ff0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8f890f0b43aed3d42b9e3d954e25e54e37d526d0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/741b64edb6c2ff04c4b787528cfca1c5b66a1a27">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/303c426c3fffafc2369205021a82659ee8715a85">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/1240" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/1240/hovercard">#1240</a>, <a href="https://github.com/open-webui/open-webui/pull/16426" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/16426/hovercard">#16426</a></li> <li>๐Ÿ” <strong>Configure authentication from the admin panel.</strong> LDAP and OAuth/OIDC settings now have a dedicated Authentication settings page, so providers can be configured from the admin interface. <a href="https://github.com/open-webui/open-webui/commit/5cdcdbaeec9fc8156721c38c33ec37956962871c">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/12945" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/12945/hovercard">#12945</a></li> <li>๐Ÿท๏ธ <strong>More custom header variables.</strong> Custom request headers now support "{{USER_MESSAGE_ID}}", "{{USER_MESSAGE_PARENT_ID}}", and "{{TASK}}", letting connected services tell apart real user messages from automated background requests like title, tag, and follow-up generation. <a href="https://github.com/open-webui/open-webui/commit/f85cb27ef835aa76aff7de6176bf2159ba392061">Commit</a></li> <li>๐Ÿ“„ <strong>File details forwarded to external document extractors.</strong> External custom document-extraction servers now receive the file's ID, name, and content type, and these are also available as custom header variables, so extraction can be tailored per file. <a href="https://github.com/open-webui/open-webui/commit/b1c2536ed2f8639efade04618018e6de9b332df2">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26259" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26259/hovercard">#26259</a></li> <li>๐ŸŽฐ <strong>Last model pre-selected for new slots.</strong> When you add another model to a multi-model chat, the slot now defaults to the model you last picked instead of starting empty. <a href="https://github.com/open-webui/open-webui/pull/25974" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25974/hovercard">#25974</a></li> <li>โšก <strong>Faster model overview.</strong> The admin model overview now loads its feedback history and tags through batched queries, so it opens noticeably faster on instances with many chats. <a href="https://github.com/open-webui/open-webui/commit/40c09167cd6de1c853a5dd03c88b4fdcb279dfe1">Commit</a></li> <li>๐ŸŽ๏ธ <strong>Lighter channel profile previews.</strong> Profile previews in channels now load a person's details only when you hover to open one, rather than fetching them for every message up front. <a href="https://github.com/open-webui/open-webui/commit/4f69c33de0e9a8fde4f16d0b2f1ed8aac8741772">Commit</a></li> <li>โ†ฉ๏ธ <strong>Reset permissions to defaults.</strong> The group and default permission dialogs now include a button to restore all permissions back to their built-in defaults in one step. <a href="https://github.com/open-webui/open-webui/pull/25931" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25931/hovercard">#25931</a></li> <li>๐Ÿ“ฅ <strong>Chat import permission.</strong> Administrators can now control whether users are allowed to import or clone chats, with a new "Allow Chat Import" permission. <a href="https://github.com/open-webui/open-webui/commit/edf3ae920989b01383be543e7379d3eade03c0b6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9ccda6715c3b2dc2cbc1302d2396b2f0233bdea8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ed4cb358a06fc6962b378f20ef846fd2b0af90bc">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25927" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25927/hovercard">#25927</a></li> <li>๐Ÿ”” <strong>Per-group user webhook permission.</strong> Administrators can now control which users may set a personal notification webhook, with a new "User Webhooks" permission. <a href="https://github.com/open-webui/open-webui/pull/25923" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25923/hovercard">#25923</a></li> <li>โœ๏ธ <strong>Customizable autocomplete prompt.</strong> Administrators can now set a custom prompt template for autocomplete generation from the admin interface settings. <a href="https://github.com/open-webui/open-webui/commit/4dbb2f94a66d6e0035e2da857ddb6a841a68f862">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25879" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25879/hovercard">#25879</a></li> <li>๐Ÿ”‘ <strong>Configurable secret key length.</strong> The auto-generated secret key length can now be set with a new environment variable, instead of always using a fixed length. <a href="https://github.com/open-webui/open-webui/commit/e473ab1231abedcb188c259b42ae7f2390739223">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25906" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25906/hovercard">#25906</a></li> <li>๐ŸŸ๏ธ <strong>Arena evaluation models configurable via environment.</strong> Arena evaluation models can now be defined through an environment variable, which previously could not be set that way. <a href="https://github.com/open-webui/open-webui/commit/fd56086e793a0eceb07a55ff972a5492d8f8a285">Commit</a></li> <li>โœ๏ธ <strong>Edit prompts from the menu.</strong> The prompts list now has an Edit option in each prompt's menu, taking you straight to its editor. <a href="https://github.com/open-webui/open-webui/pull/25789" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25789/hovercard">#25789</a></li> <li>๐Ÿ“‹ <strong>Clone automations.</strong> Automations now have a Clone option in their menu, so you can duplicate one as a starting point. <a href="https://github.com/open-webui/open-webui/pull/25790" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25790/hovercard">#25790</a></li> <li>๐Ÿ” <strong>Recurring calendar events.</strong> The calendar event editor now includes a repeat option, so events can recur on a schedule. <a href="https://github.com/open-webui/open-webui/pull/25865" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25865/hovercard">#25865</a></li> <li>๐Ÿงท <strong>Separate skills import and export permissions.</strong> Administrators can now control importing and exporting skills independently, with new skills import and export permissions. <a href="https://github.com/open-webui/open-webui/pull/25921" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25921/hovercard">#25921</a></li> <li>๐Ÿท๏ธ <strong>Filter admin models by tag.</strong> The admin Models settings page now has a tag filter for narrowing the model list by base-model tags. <a href="https://github.com/open-webui/open-webui/commit/2bdd2ab94eefd3d75dd6511c445e302f82221b5d">Commit</a></li> <li>๐Ÿ“Š <strong>Sortable analytics chat list.</strong> The model chat list in analytics now has sortable column headers, so you can order it by title, last updated, or user. <a href="https://github.com/open-webui/open-webui/commit/3730a9eaac68dff60b3ae5b4ed160b91480d66eb">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26168" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26168/hovercard">#26168</a></li> <li>๐Ÿ” <strong>Argon2 password hashing option.</strong> Password hashing can now use Argon2 through a configurable algorithm setting, removing the 72-byte password length limit that came with the previous default. <a href="https://github.com/open-webui/open-webui/commit/33cd199e6dffddd4ee8974af41ebb894871d74c1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a70a6589afad0b429cdd77afa62163391f406a87">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25656" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25656/hovercard">#25656</a></li> <li>๐Ÿ” <strong>Optional encryption of valve values at rest.</strong> Tool and function valve values can now be encrypted at rest through a new opt-in setting, with existing stored values migrated automatically, so sensitive settings like API keys aren't kept in plaintext. <a href="https://github.com/open-webui/open-webui/commit/b4073f6378392b23a3954e33031bf5e1d98e090a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/23721" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/23721/hovercard">#23721</a></li> <li>๐Ÿ—„๏ธ <strong>AWS RDS IAM database authentication.</strong> The database connection can now authenticate using AWS RDS IAM tokens through a new opt-in setting, instead of only a static password. <a href="https://github.com/open-webui/open-webui/commit/c0c6c2181a8dc57b62e8a5eabd550bf89db7ffed">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/23580" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/23580/hovercard">#23580</a></li> <li>๐Ÿ”“ <strong>Automatic auth for models with OAuth 2.1 tools.</strong> When a model uses tools that require OAuth 2.1, Open WebUI now initiates the authorization flow automatically instead of failing the request. <a href="https://github.com/open-webui/open-webui/commit/ae5d23f2267845922c2acb507a4a432908d03b41">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/23325" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/23325/hovercard">#23325</a>, <a href="https://github.com/open-webui/open-webui/issues/23272" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/23272/hovercard">#23272</a></li> <li>๐Ÿ”ค <strong>Custom tokenizer for token-based text splitting.</strong> Token-based document splitting can now use a configurable Hugging Face tokenizer model, so chunking can match the tokenizer of the model you use. <a href="https://github.com/open-webui/open-webui/commit/bb6b2db88b1e82395531f67db4f6accd49d8b9eb">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/24139" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24139/hovercard">#24139</a></li> <li>๐Ÿ”’ <strong>Restrict OAuth scopes requested from MCP servers.</strong> A new setting lets administrators limit which OAuth scopes Open WebUI requests when connecting to MCP servers. <a href="https://github.com/open-webui/open-webui/commit/7be009649a0a94008484335c492ab0af18fde41f">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25981" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25981/hovercard">#25981</a>, <a href="https://github.com/open-webui/open-webui/issues/25978" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25978/hovercard">#25978</a></li> <li>๐Ÿงฉ <strong>Filter Outlet Hook can now run on API requests and responses.</strong> A filter function's outlet hook now runs for direct API callers, including streaming responses, so response post-processing isn't limited to the web interface; this is controlled by a new setting and on by default. <a href="https://github.com/open-webui/open-webui/commit/390e200f76877b185002c88b4dda27b123d29e83">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25650" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25650/hovercard">#25650</a></li> <li>๐Ÿ–ฅ๏ธ <strong>Setting for terminal sidebar auto-open.</strong> A new interface setting controls whether the files sidebar opens automatically when you select a terminal. <a href="https://github.com/open-webui/open-webui/commit/958237473f8cbde97eb0df8c21f2a4de088c4459">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25628" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25628/hovercard">#25628</a></li> <li>๐Ÿ“Œ <strong>Reorder pinned notes by dragging.</strong> Pinned notes in the sidebar can now be dragged to reorder them. <a href="https://github.com/open-webui/open-webui/pull/25677" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25677/hovercard">#25677</a></li> <li>๐Ÿ”Ž <strong>Chat actions in search.</strong> The search dialog now offers a context menu on each result, so you can act on a chat directly from search. <a href="https://github.com/open-webui/open-webui/pull/25490" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25490/hovercard">#25490</a></li> <li>๐Ÿ”Ž <strong>Snippets in chat search results.</strong> Searching your chats now shows a snippet of the matching content in each result, so you can tell results apart at a glance. <a href="https://github.com/open-webui/open-webui/commit/0eba3df1199f56e8ac77213772a41313a3237296">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/67a7b23b85d2e3ce6b094b682ba9f07dc453d355">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8927c9bb3d4b04f4fc8e443f42089f2a551276bc">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25178" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25178/hovercard">#25178</a></li> <li>๐Ÿ“ <strong>Formatted valve descriptions.</strong> Valve descriptions for tools and functions now render Markdown, so they can include formatting and links. <a href="https://github.com/open-webui/open-webui/commit/7c0b0e42f5afb0e9c39bd2d42e4822d64d0c7b3e">Commit</a></li> <li>๐Ÿ”ฝ <strong>Dropdown inputs for valve options.</strong> Valve and confirmation inputs can now present a set of options as a dropdown instead of free text, making fixed-choice settings easier to configure. <a href="https://github.com/open-webui/open-webui/commit/422a4768ea7428b5dd6d401ccfba00e1e86eb98a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26278" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26278/hovercard">#26278</a></li> <li>๐Ÿ”Œ <strong>Control the OAuth resource parameter for MCP connectors.</strong> MCP connectors can now be set to always send, never send, or automatically decide whether to include the OAuth resource parameter, so they work with providers that reject it. <a href="https://github.com/open-webui/open-webui/commit/5576e6ed8a80a4032b7c6cb3ee0cda0254019355">Commit</a></li> <li>๐Ÿ”Ž <strong>SERPHouse web search.</strong> SERPHouse can now be used as a web search provider. <a href="https://github.com/open-webui/open-webui/commit/3a232f5e9a4d31a6b74cb34d007b581feeb2f005">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/dd4f43bfdb793c4276e6468b65fc32d9b881578a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26254" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26254/hovercard">#26254</a></li> <li>๐Ÿ”Ž <strong>Microsoft Web IQ web search.</strong> Microsoft Web IQ can now be used as a web search provider, with a matching page-browse loader. <a href="https://github.com/open-webui/open-webui/pull/26178" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26178/hovercard">#26178</a></li> <li><g-emoji class="g-emoji" alias="warning">โš ๏ธ</g-emoji> <strong>Optional web search confirmation.</strong> Administrators can now require users to confirm before a web search runs, with a banner and message making it clear when search is about to be used. <a href="https://github.com/open-webui/open-webui/commit/fa76764c3b7f99c5adacd34dabd51ead09542c13">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/24942" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24942/hovercard">#24942</a></li> <li>๐Ÿชช <strong>Client User-Agent forwarded to model backends.</strong> The browser's User-Agent is now passed through to all model backends, so upstream services can see the originating client. <a href="https://github.com/open-webui/open-webui/pull/26333" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26333/hovercard">#26333</a></li> <li>๐Ÿ–๏ธ <strong>Drag items from the sidebar into chat.</strong> Folders, notes, and models โ€” including pinned notes โ€” can now be dragged from the sidebar into the chat input. <a href="https://github.com/open-webui/open-webui/pull/25771" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25771/hovercard">#25771</a>, <a href="https://github.com/open-webui/open-webui/commit/dc1bc41d2e">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26384" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26384/hovercard">#26384</a></li> <li>๐Ÿท๏ธ <strong>Tag suggestions in the model editor.</strong> The model editor now suggests existing tags as you type, making it easier to reuse a consistent set. <a href="https://github.com/open-webui/open-webui/commit/b58b0ea7ca849b89d217e1077498a8a3fc92471f">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25703" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25703/hovercard">#25703</a></li> <li>๐Ÿ—ฃ๏ธ <strong>Voice suggestions in the model editor.</strong> The model editor now offers a dropdown of available text-to-speech voices, making it easier to pick one. <a href="https://github.com/open-webui/open-webui/commit/a5c945940134b957dbad47790b5baafeecdac6c4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25706" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25706/hovercard">#25706</a></li> <li>๐ŸŽ›๏ธ <strong>Unified model picker for workspace base model.</strong> Choosing a base model in the model editor now uses the searchable model selector instead of a plain field, making it easier to find and pick the right model. <a href="https://github.com/open-webui/open-webui/commit/c89fd237b822877bffbb33a37402622983c7189d">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/24576" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24576/hovercard">#24576</a></li> <li>๐Ÿ” <strong>Searchable pickers in the model editor.</strong> Attaching actions, filters, tools, knowledge, and skills to a model now uses type-to-search pickers instead of long checkbox lists, making large libraries easier to manage. <a href="https://github.com/open-webui/open-webui/commit/61cee42ded4e84e31d7cc9b168994ef165efa8ca">Commit</a></li> <li>๐Ÿ–ผ๏ธ <strong>iPhone images work with OpenAI image editing.</strong> Uploaded images are now normalized before being sent to OpenAI image editing, fixing edits that failed for certain iPhone photo formats, with a new admin toggle to control the behavior. <a href="https://github.com/open-webui/open-webui/commit/39837e0a3afd17b7ff617d97dddf4c5d6446e42d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2d3035a1122123df471ac9d0a591a9465a8212e2">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26252" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26252/hovercard">#26252</a>, <a href="https://github.com/open-webui/open-webui/issues/26249" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26249/hovercard">#26249</a></li> <li>๐ŸŸข <strong>Loaded-model indicator for llama.cpp.</strong> Models served through llama.cpp now report whether they're currently loaded in memory, including the sleeping state, so the loaded indicator works for them too. <a href="https://github.com/open-webui/open-webui/commit/b696c5deff15d4c85c84c5bac244f062b1bc879a">Commit</a></li> <li>๐Ÿงฑ <strong>Structured model output rendered on the client.</strong> Reasoning, tool calls, and server-side tool steps such as web and file search are now rendered in the browser from the model's structured output instead of being flattened into the message text on the server, giving more accurate and editable rendering of these items. <a href="https://github.com/open-webui/open-webui/commit/0443ab3a61492799f1aaa449f89cbd8aa5912f57">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c33fadc26671190c94d86485e6e2ef2f6fd486a3">Commit</a></li> <li>๐Ÿ“œ <strong>Custom CA bundle for outbound connections.</strong> A new environment variable lets you point Open WebUI at a custom CA certificate bundle, and the per-connection SSL settings now accept a bundle path, so deployments behind a corporate or internal CA can keep certificate verification on instead of disabling it. <a href="https://github.com/open-webui/open-webui/commit/a54878b14f044d4aa1d8cf5be6f8ce9fc4285438">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8b9e28b50354307a314111262f6737b6d8aa4685">Commit</a></li> <li>๐Ÿ–ฅ๏ธ <strong>More terminal server orchestrator controls.</strong> Admins connecting an orchestrator terminal server can now configure session lifecycle policies and refresh or reset running terminal sessions, including targeting only idle ones, from the connection settings. <a href="https://github.com/open-webui/open-webui/commit/7e8153e889a59afe4cf77261ea5e1ef5a66665f1">Commit</a></li> <li>๐Ÿ“ <strong>Terminal file browser can stay within a root folder.</strong> The terminal file navigator now anchors to a defined root and home directory, so users can be kept within their workspace instead of browsing into system folders by accident. <a href="https://github.com/open-webui/open-webui/commit/a0c2ec3d2cf8d696ede479211330eec2da360d39">Commit</a></li> <li>๐Ÿง  <strong>Memory toggle follows the server default.</strong> When a user hasn't set their own memory preference, it now follows the admin's global memory setting instead of defaulting to off. <a href="https://github.com/open-webui/open-webui/pull/25909" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25909/hovercard">#25909</a></li> <li>๐Ÿงน <strong>Unshare all shared chats at once.</strong> The Shared Chats dialog now has a button to stop sharing every shared chat in one action. <a href="https://github.com/open-webui/open-webui/pull/25848" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25848/hovercard">#25848</a></li> <li>๐Ÿ“ˆ <strong>Richer analytics with a date picker.</strong> The analytics dashboard now lets you choose a date range and shows additional columns. <a href="https://github.com/open-webui/open-webui/pull/25922" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25922/hovercard">#25922</a>, <a href="https://github.com/open-webui/open-webui/issues/25919" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25919/hovercard">#25919</a></li> <li>๐Ÿ”ข <strong>Chat and file counts in their dialogs.</strong> The Chats and Files dialogs now show the total number of chats and files in their titles. <a href="https://github.com/open-webui/open-webui/pull/25872" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25872/hovercard">#25872</a>, <a href="https://github.com/open-webui/open-webui/pull/25873" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25873/hovercard">#25873</a></li> <li>โšก <strong>Faster math rendering.</strong> Rendered math is now cached and reused, so messages with repeated or unchanged math expressions render more efficiently. <a href="https://github.com/open-webui/open-webui/pull/25847" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25847/hovercard">#25847</a></li> <li>โšก <strong>Lighter Markdown setup.</strong> Markdown extension setup now runs once instead of on every render, avoiding repeated work and extension stacking. <a href="https://github.com/open-webui/open-webui/pull/25837" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25837/hovercard">#25837</a></li> <li>โšก <strong>Snappier read-only code blocks.</strong> Read-only code blocks now skip language auto-detection, so they render faster. <a href="https://github.com/open-webui/open-webui/pull/25824" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25824/hovercard">#25824</a></li> <li>โšก <strong>Non-blocking audio model loading.</strong> Loading speech models no longer blocks the server, keeping it responsive while they initialize. <a href="https://github.com/open-webui/open-webui/pull/25806" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25806/hovercard">#25806</a></li> <li>โšก <strong>Faster URL safety checks.</strong> The safety check on fetched URLs now resolves addresses off the main loop, so it no longer blocks other work. <a href="https://github.com/open-webui/open-webui/pull/25825" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25825/hovercard">#25825</a></li> <li>โšก <strong>Fewer queries for channel reactions and replies.</strong> Channel reactions and thread replies now load through batched queries, reducing database load on busy channels. <a href="https://github.com/open-webui/open-webui/pull/25831" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25831/hovercard">#25831</a></li> <li>โšก <strong>Lighter streaming.</strong> Streaming responses now skip re-processing message content that hasn't changed, reducing work on every update. <a href="https://github.com/open-webui/open-webui/pull/26325" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26325/hovercard">#26325</a>, <a href="https://github.com/open-webui/open-webui/pull/26326" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26326/hovercard">#26326</a></li> <li>โšก <strong>Smoother tool-call rendering.</strong> Displaying tool calls now parses their content iteratively, avoiding slowdowns on deeply nested data. <a href="https://github.com/open-webui/open-webui/pull/26146" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26146/hovercard">#26146</a></li> <li>โšก <strong>Hidden tool-call details cost nothing.</strong> When tool-call arguments are collapsed, they are no longer rendered behind the scenes, noticeably speeding up chats with heavy tool use. <a href="https://github.com/open-webui/open-webui/commit/b7934e918223ec0a9e972accd647a8654e503156">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26147" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26147/hovercard">#26147</a></li> <li>โšก <strong>Leaner knowledge-file reading for agents.</strong> The built-in tools that let a model read knowledge files now return output in bounded, paginated chunks with a default and a hard cap, instead of potentially returning an entire large file at once, sharply reducing token usage. <a href="https://github.com/open-webui/open-webui/commit/a285a390c12e27e614d1ba9ffb92d1a0e49e7dfa">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26139" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26139/hovercard">#26139</a></li> <li>โšก <strong>Lighter, faster file search on large knowledge bases.</strong> Listing and searching files no longer returns each file's full extracted text by default, and content matching is now length-bounded, so these requests are far lighter and searching across very large knowledge bases is dramatically faster. <a href="https://github.com/open-webui/open-webui/commit/36d08fa2a7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/46c1d6591badb6ab567ba1b8fae23475d5da105a">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ab84bbf08c5935f1a19044ef581986f83311da8b">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25774" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25774/hovercard">#25774</a>, <a href="https://github.com/open-webui/open-webui/issues/25741" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25741/hovercard">#25741</a>, <a href="https://github.com/open-webui/open-webui/pull/26145" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26145/hovercard">#26145</a>, <a href="https://github.com/open-webui/open-webui/issues/25867" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25867/hovercard">#25867</a></li> <li>โšก <strong>Faster password hashing and bulk user import.</strong> Password hashing and verification no longer block the server, and importing users from a CSV is now processed in a single batch, keeping large imports and sign-ins responsive. <a href="https://github.com/open-webui/open-webui/commit/6fdf9b4340">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25804" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25804/hovercard">#25804</a>, <a href="https://github.com/open-webui/open-webui/pull/25805" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25805/hovercard">#25805</a></li> <li>โšก <strong>Non-blocking model downloads.</strong> Downloading large Ollama models no longer blocks the server on file reads and checksums, keeping it responsive during big downloads. <a href="https://github.com/open-webui/open-webui/pull/25829" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25829/hovercard">#25829</a></li> <li>โšก <strong>Non-blocking uploads and link fetches.</strong> Hashing uploaded files and fetching URLs now run off the main loop, so large uploads and link previews don't hold up other requests. <a href="https://github.com/open-webui/open-webui/pull/25822" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25822/hovercard">#25822</a></li> <li>โšก <strong>More blocking work moved off the main loop.</strong> Additional blocking operations in audio, pipelines, and plugin handling now run in worker threads, keeping the server responsive under load. <a href="https://github.com/open-webui/open-webui/pull/26381" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26381/hovercard">#26381</a></li> <li>โšก <strong>Unreachable backends don't stall model loading.</strong> Loading models and tool servers no longer blocks on backends that are down or slow to respond, so the model list stays responsive when one connection is unreachable. <a href="https://github.com/open-webui/open-webui/pull/26289" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26289/hovercard">#26289</a></li> <li>โšก <strong>Batched streaming updates.</strong> Streaming responses now group small updates of the same type before sending them, reducing overhead during fast token streams and tool-call output. <a href="https://github.com/open-webui/open-webui/commit/7240517807a8b0097065f7cbbb384d34084f90fd">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26202" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26202/hovercard">#26202</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Updated translations.</strong> Catalan, Brazilian Portuguese (pt-BR), Irish, German (de-DE), and Spanish (es-ES) translations were updated.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section โ€” some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ” <strong>Knowledge base write access enforced on upload.</strong> Attaching an uploaded file to a knowledge base now requires the same write access as the rest of the knowledge API, so users without write access can no longer add files to a collection by referencing its ID. <a href="https://github.com/open-webui/open-webui/pull/26001" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26001/hovercard">#26001</a></li> <li>๐Ÿ—๏ธ <strong>API key permission enforced on all key endpoints.</strong> Viewing and deleting API keys now respects the API keys permission, matching the protection already applied to key creation. <a href="https://github.com/open-webui/open-webui/pull/25992" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25992/hovercard">#25992</a></li> <li>๐Ÿ”Š <strong>Text-to-speech permission enforced on the speech endpoint.</strong> The OpenAI speech proxy now honors the text-to-speech permission, so it can no longer be used by people who are not allowed to use that feature. <a href="https://github.com/open-webui/open-webui/pull/25993" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25993/hovercard">#25993</a></li> <li>๐ŸŽฒ <strong>Model access enforced on arena fallback.</strong> Reaching a model indirectly through an arena model on background and task requests now enforces that model's access rules, closing a path that could otherwise bypass them. <a href="https://github.com/open-webui/open-webui/pull/26046" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26046/hovercard">#26046</a></li> <li>โฐ <strong>Scheduled automations stop for deactivated accounts.</strong> Scheduled automations now re-check the owner's account status and permissions before each run, so they stop when an account is deactivated or has automations access revoked. <a href="https://github.com/open-webui/open-webui/pull/26047" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26047/hovercard">#26047</a></li> <li>๐Ÿšง <strong>Heavily encoded paths rejected behind the proxy.</strong> Request paths that remain encoded after repeated decoding are now rejected instead of forwarded, preventing a path traversal that could otherwise slip through. <a href="https://github.com/open-webui/open-webui/pull/26050" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26050/hovercard">#26050</a></li> <li>๐ŸŒ <strong>Image URL fetches hardened against DNS rebinding.</strong> Fetching user-supplied image URLs now re-checks the destination address at connection time, closing a path that could be used to reach internal addresses behind a public hostname. <a href="https://github.com/open-webui/open-webui/pull/25960" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25960/hovercard">#25960</a></li> <li>๐Ÿ›‚ <strong>Web fetch blocklist matches on hostname.</strong> The web fetch filter now matches entries against the request's hostname on domain boundaries, so blocked hosts can no longer slip through with an added path and lookalike domains are no longer mistaken for allowed ones. <a href="https://github.com/open-webui/open-webui/pull/25949" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25949/hovercard">#25949</a></li> <li>๐Ÿชช <strong>MCP connectors request least-privilege scopes.</strong> MCP connectors that register dynamically over OAuth now request only the scopes for the specific resource rather than the authorization server's full catalog. <a href="https://github.com/open-webui/open-webui/pull/25958" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25958/hovercard">#25958</a></li> <li>๐Ÿ™ˆ <strong>Channel member lists no longer expose private data.</strong> Viewing a channel's members now returns only basic profile details, instead of also exposing other members' settings, linked-account data, and personal information. <a href="https://github.com/open-webui/open-webui/commit/fbcdcf146b99b5002705060a8243eee769108f9e">Commit</a></li> <li>๐Ÿ›Ÿ <strong>SCIM sync can't demote an admin.</strong> A SCIM provisioning sync that marks a user inactive can no longer strip an existing administrator's role, preventing an instance from being locked out of its own administration. <a href="https://github.com/open-webui/open-webui/pull/25948" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25948/hovercard">#25948</a></li> <li>๐Ÿ‘ป <strong>Collaborative notes reject unauthenticated presence events.</strong> The remaining real-time note-collaboration events now require an authenticated session, so presence and cursors can no longer be spoofed by someone who only knows a note's ID. <a href="https://github.com/open-webui/open-webui/pull/25946" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25946/hovercard">#25946</a></li> <li>โฑ๏ธ <strong>Login timing no longer reveals which accounts exist.</strong> Sign-in now takes the same amount of time whether or not an account exists, removing a timing difference that could be used to discover valid accounts. <a href="https://github.com/open-webui/open-webui/commit/993e74912199c66c522f08ec81abe31d76985e39">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/7b29834d4216e5db70b68f3598fa1ad654d3512b">Commit</a></li> <li>๐Ÿ”Œ <strong>Terminal connections can't be redirected to another user.</strong> Terminal session identifiers are now safely encoded before being passed upstream, closing a way to tamper with the connection's user identity. <a href="https://github.com/open-webui/open-webui/pull/26042" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26042/hovercard">#26042</a></li> <li>๐Ÿ“ก <strong>Real-time events only reach your own session.</strong> The server now verifies that a real-time event is delivered only to the requesting user's own active session, instead of trusting a client-supplied session identifier. <a href="https://github.com/open-webui/open-webui/pull/25763" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25763/hovercard">#25763</a></li> <li>๐Ÿ”“ <strong>Revoked sessions are rejected on real-time connections.</strong> Real-time and terminal WebSocket connections now honor token revocation and expiry, so a signed-out or expired session can no longer keep a live connection open. <a href="https://github.com/open-webui/open-webui/commit/33b91bd8ae8a100a5a306c91441a7d0b422c4cde">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25764" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25764/hovercard">#25764</a>, <a href="https://github.com/open-webui/open-webui/pull/25686" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25686/hovercard">#25686</a></li> <li>๐Ÿ•ณ๏ธ <strong>Another DNS-rebinding gap closed in URL fetching.</strong> Fetching a URL's content now re-checks the destination address at connection time, closing another path that could reach internal addresses behind a public hostname. <a href="https://github.com/open-webui/open-webui/pull/25775" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25775/hovercard">#25775</a></li> <li>๐Ÿ—ฃ๏ธ <strong>Azure speech input is escaped.</strong> Voice and language values are now escaped when building Azure text-to-speech requests, preventing malformed or injected markup. <a href="https://github.com/open-webui/open-webui/pull/25776" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25776/hovercard">#25776</a></li> <li>โš™๏ธ <strong>Interface settings update respects its permission.</strong> Saving interface settings now enforces the interface permission, so users without it can no longer change those settings through the API. <a href="https://github.com/open-webui/open-webui/pull/25996" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25996/hovercard">#25996</a></li> <li>๐Ÿ—„๏ธ <strong>Unknown knowledge collections are denied by default.</strong> Retrieval now rejects unknown or unscoped collection names by default, closing a legacy path that could be used to reach collections outside the normal access checks. <a href="https://github.com/open-webui/open-webui/commit/d99ac7d3f83b25161ca775229150c8f7c74cceee">Commit</a></li> <li>๐Ÿ™ˆ <strong>Error responses no longer leak internals.</strong> Server error responses now return sanitized messages instead of raw exception text, so internal details aren't exposed to signed-in users. <a href="https://github.com/open-webui/open-webui/commit/ee5de69e374aabf5631da18a5bbc1c285ee6f7a1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0cc331d1c60341bb06b78ceeecfb2db86179c93e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/396d9ac18193d43e40fb9d068075d4b780e971d7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/0883638027a9b3cb7c9851f031c4f5fc1af1f25d">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26375" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26375/hovercard">#26375</a>, <a href="https://github.com/open-webui/open-webui/issues/26374" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26374/hovercard">#26374</a></li> <li>๐Ÿ“ <strong>Upload size limit enforced on the server.</strong> The maximum upload size is now enforced server-side, so it can't be bypassed by a client that ignores the limit. <a href="https://github.com/open-webui/open-webui/commit/f8ec63203c4408c46bb06698ae624d17b01b9301">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d3676b4f71bfdbaf4e4d76943c51117e18932ccf">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25869" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25869/hovercard">#25869</a></li> <li>๐Ÿ–ผ๏ธ <strong>OAuth profile pictures are validated.</strong> Profile picture URLs from OAuth providers are now validated and their type checked when stored, preventing unsafe image sources. <a href="https://github.com/open-webui/open-webui/commit/eb53281c9acb3660e09554a8dbde0a0b42646b70">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/24548" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24548/hovercard">#24548</a></li> <li>๐Ÿ“ฆ <strong>Security updates to frontend dependencies.</strong> Several frontend dependencies were updated to patch known security vulnerabilities. <a href="https://github.com/open-webui/open-webui/pull/26281" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26281/hovercard">#26281</a></li> <li>๐Ÿค <strong>Chat sharing respects the user-sharing permission.</strong> The share-chat dialog now hides the option to share with specific users from people who lack that permission, matching the access rules enforced elsewhere. <a href="https://github.com/open-webui/open-webui/pull/25915" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25915/hovercard">#25915</a></li> <li>๐Ÿ“ค <strong>Chat export respects its permission everywhere.</strong> Every chat export menu now checks the export permission, so users without it can no longer export chats through one of the dropdown menus. <a href="https://github.com/open-webui/open-webui/pull/25914" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25914/hovercard">#25914</a></li> <li>๐Ÿ“‚ <strong>File write access requires real ownership.</strong> Editing or deleting a file through a knowledge base or workspace model now requires that the object's owner actually owns the file, so a read-only file can no longer gain write access by being referenced from an object you control. <a href="https://github.com/open-webui/open-webui/pull/26032" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26032/hovercard">#26032</a></li> <li>๐Ÿ–Œ๏ธ <strong>Image edit endpoint enforces permission.</strong> The image-edit endpoint now checks the image-edit switch and the image-generation permission, matching image generation, so it can't be called by users who lack access. <a href="https://github.com/open-webui/open-webui/pull/26009" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26009/hovercard">#26009</a></li> <li>๐Ÿ“ <strong>Folder permission enforced on all folder actions.</strong> Every folder operation now checks the folders permission, so the setting is respected consistently instead of only when listing folders. <a href="https://github.com/open-webui/open-webui/commit/19a176fd36bea15c49d7f2d1539b4832e57a8bc2">Commit</a></li> <li>๐Ÿงฉ <strong>Code Execution settings collapse when off.</strong> The Code Execution settings section now collapses when the toggle is disabled, keeping the settings page tidy. <a href="https://github.com/open-webui/open-webui/pull/25970" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25970/hovercard">#25970</a></li> <li>๐Ÿ“… <strong>German date format in Notes.</strong> Dates in the Notes view now display correctly for German, where they previously failed to render. <a href="https://github.com/open-webui/open-webui/pull/25985" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25985/hovercard">#25985</a></li> <li>๐ŸŽ™๏ธ <strong>ElevenLabs speech keeps working when voices can't load.</strong> Text-to-speech through ElevenLabs no longer fails when the available-voice list can't be fetched, instead of rejecting every voice. <a href="https://github.com/open-webui/open-webui/commit/bb1419328b11b801b4c939dfc112700ba6f6fdab">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26075" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26075/hovercard">#26075</a></li> <li>๐ŸชŸ <strong>Default Permissions modal resets on close.</strong> Closing the Default Permissions dialog without saving now discards unsaved edits instead of keeping them around the next time you open it. <a href="https://github.com/open-webui/open-webui/commit/78a5015846a9e55ff2bc9d6cc98f880437abe8ed">Commit</a></li> <li>๐Ÿ‘ฏ <strong>Side-by-side chat with the same model.</strong> Running two panes with the same model no longer leaves one pane stuck waiting or showing the other pane's reply after a reload, since each pane's messages are now tracked separately. <a href="https://github.com/open-webui/open-webui/commit/56ae99e96a845289b5787d2dd26a3d828f2295e7">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25982" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25982/hovercard">#25982</a></li> <li>๐Ÿ’พ <strong>Model edits no longer lost when changing access.</strong> Adjusting a model's access no longer auto-saves on its own and discards your other unsaved changes to that model. <a href="https://github.com/open-webui/open-webui/pull/26004" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26004/hovercard">#26004</a></li> <li>๐Ÿ”ง <strong>Parallel tool calls over the Anthropic-compatible API.</strong> External Anthropic-compatible clients calling Open WebUI's messages endpoint now receive tool calls reliably when a model issues several at once or returns them in its final message. <a href="https://github.com/open-webui/open-webui/commit/4210cae68e30173d7902582d32128dd699d5628a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25963" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25963/hovercard">#25963</a>, <a href="https://github.com/open-webui/open-webui/discussions/25964">#25964</a></li> <li>๐Ÿ—ƒ๏ธ <strong>Prompt caching preserved over the Anthropic-compatible API.</strong> Requests through the Anthropic-compatible API now keep their prompt-caching markers instead of having them stripped, so clients that rely on caching work as intended. <a href="https://github.com/open-webui/open-webui/commit/caedcbae4988ef59ea7052b2a3198e2da4b5291a">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25998" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25998/hovercard">#25998</a>, <a href="https://github.com/open-webui/open-webui/discussions/25964">#25964</a></li> <li>๐Ÿ” <strong>Fewer redundant data loads.</strong> Several views no longer fire duplicate background fetches at once, avoiding occasional glitches from overlapping requests. <a href="https://github.com/open-webui/open-webui/pull/25943" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25943/hovercard">#25943</a>, <a href="https://github.com/open-webui/open-webui/pull/25942" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25942/hovercard">#25942</a>, <a href="https://github.com/open-webui/open-webui/pull/25934" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25934/hovercard">#25934</a>, <a href="https://github.com/open-webui/open-webui/pull/25935" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25935/hovercard">#25935</a>, <a href="https://github.com/open-webui/open-webui/pull/25838" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25838/hovercard">#25838</a>, <a href="https://github.com/open-webui/open-webui/commit/e8d55c0a8beac9de0b2a0fe90f0bc0f9b64c1c1f">Commit</a></li> <li>๐Ÿ”Ž <strong>Steadier search boxes across admin and workspace.</strong> Search fields for users, knowledge, prompts, tools, and similar lists now run only as you type and reset to the first page correctly, instead of occasionally re-searching on their own. <a href="https://github.com/open-webui/open-webui/commit/fc9c2ea1915accd1f6edca467e965283dff71cd7">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25938" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25938/hovercard">#25938</a></li> <li>๐Ÿ“Š <strong>Admin feedback list loads again on PostgreSQL.</strong> The admin feedback list no longer fails to load on PostgreSQL setups, where it previously returned a server error. <a href="https://github.com/open-webui/open-webui/commit/7ee75a0c04a31528954903e88c9213d5fbb31aa7">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25953" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25953/hovercard">#25953</a></li> <li>๐Ÿ—‚๏ธ <strong>Deleting nested folders checks chats correctly.</strong> Deleting a folder that contains subfolders now accounts for the chats inside those subfolders when applying the delete-permission check, instead of only the top-level folder's chats. <a href="https://github.com/open-webui/open-webui/commit/232421f40b84590e6d6fdecab4e43274aac37add">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25920" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25920/hovercard">#25920</a></li> <li>๐Ÿ–ฑ๏ธ <strong>Dragging chats into folders is more reliable.</strong> Dragging a chat into a folder no longer throws an error in cases where the chat couldn't be resolved. <a href="https://github.com/open-webui/open-webui/pull/25928" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25928/hovercard">#25928</a></li> <li>๐Ÿ› ๏ธ <strong>Workspace menu shows for the skills permission.</strong> Users who only have the skills permission now see the Workspace entry in their menu, which previously appeared only for other workspace permissions. <a href="https://github.com/open-webui/open-webui/pull/25925" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25925/hovercard">#25925</a></li> <li>๐Ÿง  <strong>Admins can always reach memories.</strong> Administrators can now use the memories endpoints regardless of the memories permission toggle, matching how admin access works for other features. <a href="https://github.com/open-webui/open-webui/pull/25924" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25924/hovercard">#25924</a></li> <li>๐Ÿ–ผ๏ธ <strong>Image settings page survives a config load failure.</strong> The admin image settings page no longer crashes when its configuration fails to load, showing the page instead. <a href="https://github.com/open-webui/open-webui/pull/25933" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25933/hovercard">#25933</a></li> <li>๐Ÿงต <strong>Code blocks render in channel threads.</strong> Code blocks now display correctly in a channel's thread view, where duplicated message identifiers previously broke their rendering. <a href="https://github.com/open-webui/open-webui/commit/7d1f9415807a47e0da4f862327e9802a3b839753">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25917" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25917/hovercard">#25917</a></li> <li>๐Ÿ”ต <strong>No more false unread badges on chats.</strong> Chats no longer show an unread indicator after automatic changes like title generation or pinning, archiving, and moving them between folders, and newly created chats are marked read correctly so they don't appear unread after a refresh. <a href="https://github.com/open-webui/open-webui/pull/25912" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25912/hovercard">#25912</a>, <a href="https://github.com/open-webui/open-webui/pull/25782" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25782/hovercard">#25782</a>, <a href="https://github.com/open-webui/open-webui/issues/25108" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25108/hovercard">#25108</a></li> <li>๐Ÿ“Œ <strong>Pinned notes stay in sync.</strong> Pinning, unpinning, or deleting a note now updates the sidebar's pinned list consistently, instead of showing a stale pin state. <a href="https://github.com/open-webui/open-webui/pull/25918" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25918/hovercard">#25918</a>, <a href="https://github.com/open-webui/open-webui/pull/25640" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25640/hovercard">#25640</a></li> <li>๐Ÿ“… <strong>All-day calendar events keep their date.</strong> Saving an all-day calendar event no longer shifts it by a day for users in certain time zones. <a href="https://github.com/open-webui/open-webui/pull/25864" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25864/hovercard">#25864</a></li> <li>๐Ÿงท <strong>Damaged chat history recovers more reliably.</strong> When a chat's current position is missing or points at a malformed message, Open WebUI now repairs it from the latest valid message โ€” on both the client and the server โ€” instead of risking a broken history view. <a href="https://github.com/open-webui/open-webui/commit/2308b59f135e4c2da11eabdf2306e55a5dd4e9fb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/a146e17bdcaf94fee3a98aa36b4f401e1f06c1d4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26298" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26298/hovercard">#26298</a>, <a href="https://github.com/open-webui/open-webui/pull/26258" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26258/hovercard">#26258</a>, <a href="https://github.com/open-webui/open-webui/issues/26257" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26257/hovercard">#26257</a></li> <li>๐Ÿ’พ <strong>Saving a chat no longer drops messages.</strong> Chat updates are now merged with the existing history on the server, with explicit tracking of deleted messages, instead of overwriting it, preventing message loss from concurrent or partial saves. <a href="https://github.com/open-webui/open-webui/commit/22a44e67a8ba781feb8f2a267fed0c40213d8432">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3319b6410e1b600b7a885a5fb78573e9a2061c22">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/24b8619f64731788ac38813768abbb64405effa4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25657" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25657/hovercard">#25657</a></li> <li>๐Ÿ“บ <strong>Channel message updates stay in their channel.</strong> Streaming updates to a channel message are now skipped if the message no longer exists or belongs to a different channel, preventing stray updates. <a href="https://github.com/open-webui/open-webui/commit/ac3449cac91e62b08a7c28e54fcd044d14dea791">Commit</a></li> <li>๐Ÿ“Œ <strong>Pinned channel messages update for everyone.</strong> Pinning or unpinning a channel message now updates live for all members and works from thread views, instead of only changing for the person who pinned it. <a href="https://github.com/open-webui/open-webui/commit/7ea7680f563da30b121258e5a7d7123185c4da2a">Commit</a></li> <li>๐Ÿ“„ <strong>Mistral OCR uploads work again.</strong> Document OCR through Mistral has been repaired after an upstream library change broke its file uploads. <a href="https://github.com/open-webui/open-webui/pull/25779" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25779/hovercard">#25779</a></li> <li>๐Ÿ—‚๏ธ <strong>Chroma collection detection fixed.</strong> Open WebUI now correctly detects existing Chroma collections, fixing a case where it always reported them as missing. <a href="https://github.com/open-webui/open-webui/pull/25780" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25780/hovercard">#25780</a></li> <li>๐Ÿ“Š <strong>Vega-Lite charts render reliably.</strong> Vega-Lite charts in chat are now detected by their code block language tag, so they render correctly. <a href="https://github.com/open-webui/open-webui/pull/25843" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25843/hovercard">#25843</a></li> <li>๐Ÿท๏ธ <strong>Long chat tag lists scroll.</strong> The tags section in the chat menu now scrolls instead of overflowing when a chat has many tags. <a href="https://github.com/open-webui/open-webui/pull/26031" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26031/hovercard">#26031</a></li> <li>โŒจ๏ธ <strong>Enter key shows correctly on iOS.</strong> The Enter key symbol in the keyboard shortcuts list no longer renders as an emoji on iOS. <a href="https://github.com/open-webui/open-webui/pull/26173" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26173/hovercard">#26173</a></li> <li>๐Ÿ”— <strong>Whitespace in names no longer breaks MCP connections.</strong> User name and info headers are now trimmed before being forwarded, fixing MCP connection failures when a display name contained leading or trailing whitespace. <a href="https://github.com/open-webui/open-webui/pull/26182" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26182/hovercard">#26182</a>, <a href="https://github.com/open-webui/open-webui/issues/26181" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26181/hovercard">#26181</a></li> <li>๐Ÿˆณ <strong>Search no longer fires mid-composition.</strong> Typing in search with an input method editor (such as Japanese, Chinese, or Korean) no longer triggers a search when you press Enter to confirm a composition. <a href="https://github.com/open-webui/open-webui/pull/26238" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26238/hovercard">#26238</a>, <a href="https://github.com/open-webui/open-webui/pull/26285" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26285/hovercard">#26285</a>, <a href="https://github.com/open-webui/open-webui/issues/26172" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26172/hovercard">#26172</a></li> <li>๐Ÿงฐ <strong>Valves icon stays visible.</strong> The icon for configuring valves no longer disappears, so user-configurable tool and function settings remain reachable. <a href="https://github.com/open-webui/open-webui/pull/26256" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26256/hovercard">#26256</a></li> <li>๐ŸŽ›๏ธ <strong>Chat controls persist across navigation.</strong> Edits to chat controls are now kept when navigating between chats, and reverting a control to the chat's saved value persists correctly, instead of being lost. <a href="https://github.com/open-webui/open-webui/pull/26336" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26336/hovercard">#26336</a>, <a href="https://github.com/open-webui/open-webui/pull/25793" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25793/hovercard">#25793</a></li> <li>๐Ÿ” <strong>Chat search tool handles empty queries.</strong> The built-in chat search tool no longer crashes when called with an empty query. <a href="https://github.com/open-webui/open-webui/commit/b854eb09b13216f914ce5fd07ab717b8f752882b">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26310" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26310/hovercard">#26310</a></li> <li>๐Ÿ“‘ <strong>More robust MinerU document processing.</strong> Document processing through MinerU now handles its ZIP results more safely, including very large outputs. <a href="https://github.com/open-webui/open-webui/commit/23d03d6aaebcced6c1e39e98dfff76ab73df8804">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26263" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26263/hovercard">#26263</a></li> <li>โฐ <strong>Scheduled automations with session-auth tools work.</strong> Automations that use session-authenticated tools or terminals now authenticate correctly when running on a schedule, instead of failing. <a href="https://github.com/open-webui/open-webui/commit/5b1c42e81a3ef3ad5ce5852dbf84020cb5e2498c">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26247" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26247/hovercard">#26247</a>, <a href="https://github.com/open-webui/open-webui/issues/26137" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26137/hovercard">#26137</a></li> <li>๐Ÿ“ <strong>Model system prompt preserved with knowledge.</strong> A model's system prompt is no longer dropped when knowledge retrieval runs with native tool calling. <a href="https://github.com/open-webui/open-webui/commit/cfb49c4c181a96d5df07fbfacd819639baef0bab">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26217" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26217/hovercard">#26217</a></li> <li>๐Ÿ”‘ <strong>Expired sessions return you to sign-in.</strong> When a request fails because your session has expired, Open WebUI now redirects you to the sign-in page instead of leaving you on a broken view. <a href="https://github.com/open-webui/open-webui/commit/5922727402593900758d84004f950071c701f6de">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26237" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26237/hovercard">#26237</a></li> <li>๐ŸŽฏ <strong>Ejecting a workspace model unloads the right model.</strong> Unloading a workspace model now resolves to its underlying base model, so the correct model is freed from memory. <a href="https://github.com/open-webui/open-webui/commit/464e703e4716812d015966582152ddd8a2c71572">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26269" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26269/hovercard">#26269</a></li> <li>๐Ÿ”„ <strong>Edited models refresh in the admin list.</strong> After editing a model in the admin settings, the models list now updates right away instead of needing a manual reload. <a href="https://github.com/open-webui/open-webui/commit/b34d6c836ee43d0e9721fa4fd6457d934e3e2a17">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Workspace model bulk actions and search work across pages.</strong> Bulk actions on workspace models now apply across all of them, and search results paginate correctly. <a href="https://github.com/open-webui/open-webui/pull/26274" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26274/hovercard">#26274</a></li> <li>๐Ÿงฉ <strong>MCP resource results come through.</strong> Tool results that return resource content โ€” including binary blobs and URI references โ€” are no longer silently dropped, and image results are attached as files. <a href="https://github.com/open-webui/open-webui/pull/25260" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25260/hovercard">#25260</a>, <a href="https://github.com/open-webui/open-webui/issues/24038" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24038/hovercard">#24038</a>, <a href="https://github.com/open-webui/open-webui/commit/783205a965c556815fae84b64d74f26a2e5e5729">Commit</a></li> <li>๐Ÿ”— <strong>Broader MCP server compatibility for OAuth.</strong> Open WebUI now discovers an MCP server's protected resource metadata even when the server doesn't advertise it, and recognizes more OAuth preflight variations, so more MCP servers connect. <a href="https://github.com/open-webui/open-webui/pull/25980" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25980/hovercard">#25980</a>, <a href="https://github.com/open-webui/open-webui/issues/25954" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25954/hovercard">#25954</a>, <a href="https://github.com/open-webui/open-webui/commit/45fea34bd0c8ce54b0822499c40e3e6964220354">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26068" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26068/hovercard">#26068</a></li> <li>๐Ÿ“ค <strong>Clearer upload error messages.</strong> Failed uploads now show a readable explanation instead of an opaque error stub. <a href="https://github.com/open-webui/open-webui/pull/25961" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25961/hovercard">#25961</a></li> <li>๐Ÿ“‹ <strong>Cloned prompts get a proper title.</strong> Cloning a prompt now adds the clone suffix to the correct field, so the duplicate is named as expected. <a href="https://github.com/open-webui/open-webui/pull/25800" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25800/hovercard">#25800</a></li> <li>๐Ÿ“ <strong>Long default group names don't overflow.</strong> A long default group name no longer overflows its row in the admin authentication settings. <a href="https://github.com/open-webui/open-webui/pull/25685" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25685/hovercard">#25685</a></li> <li>๐Ÿ–๏ธ <strong>Sidebar drags don't trigger uploads.</strong> Dragging a chat item in the sidebar no longer shows the file-upload overlay. <a href="https://github.com/open-webui/open-webui/pull/25675" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25675/hovercard">#25675</a></li> <li>๐Ÿ” <strong>Recovers from a stuck streaming response.</strong> If the signal that a response finished is missed โ€” for example after a mobile app is backgrounded mid-stream โ€” Open WebUI now recovers the chat instead of leaving it stuck in a streaming state. <a href="https://github.com/open-webui/open-webui/commit/aa851d93c63e7da6e94292d0b7586674339d47e5">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/edf2c6c8f76e7f6a5917e991f371a604adc34c5f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2856def6c05b2fb8c55b4e7170f05db0c4f956f1">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26320" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26320/hovercard">#26320</a>, <a href="https://github.com/open-webui/open-webui/issues/26315" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26315/hovercard">#26315</a></li> <li>๐Ÿง  <strong>Model skills load on demand instead of filling the prompt.</strong> A model's attached skills are now presented to the model as a manifest it can load when needed, rather than having their full content inserted into the system prompt; skills you mention inline still get their content included directly. <a href="https://github.com/open-webui/open-webui/commit/e6d35fc4cca4f4b1e5cad97d7b7e3089ef832018">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/44b9463498085741669e6f5d92e21b5ecc5fd795">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25592" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25592/hovercard">#25592</a>, <a href="https://github.com/open-webui/open-webui/pull/25599" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25599/hovercard">#25599</a></li> <li>๐Ÿ—‚๏ธ <strong>Empty metadata no longer breaks Chroma indexing.</strong> Document metadata with empty values is now filtered out before indexing, fixing a case that could fail on Chroma. <a href="https://github.com/open-webui/open-webui/commit/118549caf3">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26342" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26342/hovercard">#26342</a>, <a href="https://github.com/open-webui/open-webui/issues/26339" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26339/hovercard">#26339</a></li> <li>๐Ÿ” <strong>Updating a knowledge file won't break the knowledge base.</strong> When a file's content is updated, its new embeddings are now added before the old ones are removed, so a failed reindex leaves the knowledge base intact and usable instead of empty. <a href="https://github.com/open-webui/open-webui/commit/248315de14d4537e0f2ec3f94dee8a7334cad248">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/23789" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/23789/hovercard">#23789</a>, <a href="https://github.com/open-webui/open-webui/issues/23787" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/23787/hovercard">#23787</a></li> <li>๐Ÿ”ค <strong>Documents with special tokens index correctly.</strong> Measuring chunk sizes no longer fails when a document contains text that looks like a special token. <a href="https://github.com/open-webui/open-webui/pull/26210" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26210/hovercard">#26210</a></li> <li>๐Ÿ“ <strong>Note file attachments stay in sync.</strong> Updating the files attached to a note now keeps the editor and saved note in sync. <a href="https://github.com/open-webui/open-webui/commit/5055fb85aa8c8d5ef785daea7438498e36ddf33f">Commit</a></li> <li>๐Ÿ“ฑ <strong>Better banner layout on mobile.</strong> Notification banners now lay out correctly on small screens. <a href="https://github.com/open-webui/open-webui/commit/4ed45ce84394c435405f93d03f07dabd797cdec3">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/24912" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24912/hovercard">#24912</a></li> <li>๐Ÿ“‚ <strong>Knowledge file listing includes attached files.</strong> Listing files through the knowledge tools now also shows files attached directly to a model, not only those inside a knowledge base, fixing cases where listing returned no results for a model with a single attached file. <a href="https://github.com/open-webui/open-webui/commit/40b655e99e2c6dd802654ec0cdac38a4bcda08b3">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26301" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26301/hovercard">#26301</a></li> <li>๐Ÿท๏ธ <strong>Chat titles generate after long first responses.</strong> A new chat now gets its title even when the first response takes a long time, such as one with extensive reasoning or many tool calls, instead of staying "New Chat". <a href="https://github.com/open-webui/open-webui/commit/754787f43dffad3dce2c90e4fd0417b1f9dbb3c0">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26240" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26240/hovercard">#26240</a></li> <li>๐Ÿ”Œ <strong>Cancelling an MCP request no longer errors.</strong> Stopping a response that was using MCP tools now shuts the connection down cleanly instead of surfacing a server error. <a href="https://github.com/open-webui/open-webui/commit/ff5cec43bd360829cfdcc6a5253d1ba63f236b7f">Commit</a></li> <li>๐Ÿง  <strong>Reasoning details preserved across turns.</strong> Models that return structured or encrypted reasoning data, such as Gemini, no longer have their assistant message split mid-stream, keeping reasoning continuity across turns. <a href="https://github.com/open-webui/open-webui/commit/75db531c1238af113bb2b211882713e5e2f459cf">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/23852" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/23852/hovercard">#23852</a></li> <li>๐Ÿ“ก <strong>Error messages show for non-standard streaming responses.</strong> Providers that send errors over non-standard server-sent events now surface a readable error instead of nothing. <a href="https://github.com/open-webui/open-webui/pull/23228" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/23228/hovercard">#23228</a></li> <li>๐Ÿ”‘ <strong>Whitespace in terminal server keys no longer breaks auth.</strong> Terminal server API keys are now trimmed before use, so a key with stray leading or trailing whitespace still authenticates. <a href="https://github.com/open-webui/open-webui/commit/fe3300bd6581aa469c2cdf757700ecc65a200df4">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d6cda4a04b2e3a48855fc91abb2376cfd3a0378d">Commit</a></li> <li>๐Ÿ”ฅ <strong>One bad URL no longer fails Firecrawl scraping.</strong> When fetching multiple pages through Firecrawl, a single failing URL is now skipped instead of aborting the whole batch, and rate limits are respected between requests. <a href="https://github.com/open-webui/open-webui/commit/6f8221df58b17334233ac6bfe069b8f837f677d6">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/24183" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24183/hovercard">#24183</a></li> <li>๐Ÿ“ฑ <strong>Usable chat input on mobile with many tools.</strong> When skills, tools, terminal, web search, and image generation buttons fill the chat input, the row of buttons now scrolls horizontally while the menu, voice, and send controls stay reachable, instead of pushing them off-screen. <a href="https://github.com/open-webui/open-webui/commit/6f8221df58b17334233ac6bfe069b8f837f677d6">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/26142" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26142/hovercard">#26142</a></li> <li>๐Ÿ‘ค <strong>Owner avatars only show on shared folders.</strong> Chat owner avatars in a folder's chat list now appear only when the folder is actually shared, instead of showing whenever owner information happened to be present. <a href="https://github.com/open-webui/open-webui/commit/9802b0d13563b3535b86a350bab000d84686b1e9">Commit</a></li> <li>๐Ÿ“œ <strong>No stray scrollbar on the About page.</strong> Extra spacing that caused an unnecessary scrollbar on the About settings page has been removed. <a href="https://github.com/open-webui/open-webui/pull/25802" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25802/hovercard">#25802</a></li> <li>๐Ÿšช <strong>Sign out works from the Account Pending page.</strong> Signing out while your account is pending now goes through the proper sign-out flow, so single sign-on sessions are ended and you are no longer left stuck on the pending screen. <a href="https://github.com/open-webui/open-webui/pull/25681" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25681/hovercard">#25681</a>, <a href="https://github.com/open-webui/open-webui/issues/25644" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25644/hovercard">#25644</a></li> <li>๐Ÿ”ข <strong>Built-in tools accept numeric arguments.</strong> Built-in tools no longer crash when a model passes a number or a string where a specific scalar type is expected; values are now coerced to the declared type. <a href="https://github.com/open-webui/open-webui/commit/c4688b958d7f7929f5f4303493ca311c2c121683">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25638" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25638/hovercard">#25638</a>, <a href="https://github.com/open-webui/open-webui/pull/25731" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25731/hovercard">#25731</a>, <a href="https://github.com/open-webui/open-webui/issues/25641" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25641/hovercard">#25641</a></li> <li>โฑ๏ธ <strong>MinerU timeout saves.</strong> The MinerU API timeout can now be saved from the admin settings, accepting a numeric value. <a href="https://github.com/open-webui/open-webui/commit/3fd0384ffcd0eddd6f4c688475f8ad5d3b4de510">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25604" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25604/hovercard">#25604</a>, <a href="https://github.com/open-webui/open-webui/issues/25603" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25603/hovercard">#25603</a></li> <li>๐Ÿ”ง <strong>Background completion no longer clears active tasks.</strong> Finishing a chat in the background no longer wipes the set of active tasks, fixing a case where ongoing task indicators could be lost. <a href="https://github.com/open-webui/open-webui/commit/388f62f8a002b789887d016892a1bf152c9d90af">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25217" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25217/hovercard">#25217</a></li> <li>๐Ÿ‘๏ธ <strong>Workspace base model selector respects visibility.</strong> The base model selector in the workspace now hides models you don't have access to, matching their visibility settings. <a href="https://github.com/open-webui/open-webui/pull/25668" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25668/hovercard">#25668</a></li> <li>๐Ÿงต <strong>Channel threads bind to the right channel.</strong> A channel thread's parent and replies are now tied to the channel in the URL, preventing mismatches when switching channels. <a href="https://github.com/open-webui/open-webui/pull/25766" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25766/hovercard">#25766</a></li> <li>๐Ÿ—‘๏ธ <strong>Unsharing cleans up orphaned rows.</strong> Unsharing a chat now handles leftover shared-chat records, avoiding stale entries. <a href="https://github.com/open-webui/open-webui/pull/25632" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25632/hovercard">#25632</a></li> <li>๐Ÿ”Ž <strong>Web search results reach the model with retrieval on.</strong> Web search results are now passed to the model even when embedding and retrieval are enabled, instead of being left out. <a href="https://github.com/open-webui/open-webui/pull/25600" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25600/hovercard">#25600</a></li> <li>๐Ÿ”ข <strong>Group count follows search.</strong> The groups count now reflects the filtered search results instead of the full list. <a href="https://github.com/open-webui/open-webui/pull/25689" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25689/hovercard">#25689</a></li> <li>โฃ <strong>Space key works when renaming.</strong> Pressing space while renaming a file or folder no longer opens it, so spaces can be typed in names. <a href="https://github.com/open-webui/open-webui/pull/25627" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25627/hovercard">#25627</a></li> <li>๐Ÿฉน <strong>Missing local embedding model no longer blocks startup.</strong> A missing local embedding model now surfaces as a deferred error instead of preventing the server from starting. <a href="https://github.com/open-webui/open-webui/pull/25683" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25683/hovercard">#25683</a></li> <li>๐Ÿ”ค <strong>Consistent settings label capitalization.</strong> Toggle labels in settings now use consistent title casing. <a href="https://github.com/open-webui/open-webui/pull/25765" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25765/hovercard">#25765</a></li> <li>โ™ฟ <strong>Better screen-reader labels on toggles.</strong> Integration and switch toggles now expose proper accessibility labels and pressed state for screen readers. <a href="https://github.com/open-webui/open-webui/pull/25258" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25258/hovercard">#25258</a>, <a href="https://github.com/open-webui/open-webui/pull/25230" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25230/hovercard">#25230</a></li> <li>๐Ÿ“œ <strong>Long dropdowns scroll.</strong> Dropdown selects now scroll when their list is long, so all options stay reachable. <a href="https://github.com/open-webui/open-webui/commit/4bc463072185d0d7c1c9218cd4487501090eccfe">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25608" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25608/hovercard">#25608</a></li> <li>๐Ÿ”ฝ <strong>Collapsible sections don't misfire on load.</strong> Collapsible sections no longer trigger their change action when first rendered, avoiding unintended toggles on page load. <a href="https://github.com/open-webui/open-webui/commit/c93d4f04aad1b0d4f8a8bda7ac403b2c8ee35f38">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/25229" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25229/hovercard">#25229</a></li> <li>โž— <strong>Large math expressions no longer crash rendering.</strong> Parsing math delimiters no longer overflows on very large or deeply nested input, so messages with heavy math render instead of failing. <a href="https://github.com/open-webui/open-webui/pull/25845" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25845/hovercard">#25845</a></li> <li>๐Ÿ—„๏ธ <strong>Oversized chunks no longer break Milvus indexing.</strong> Overly long text chunks are now trimmed before being sent to Milvus, so a single large chunk can no longer fail the whole batch and leave a file with no embeddings. <a href="https://github.com/open-webui/open-webui/pull/25857" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25857/hovercard">#25857</a>, <a href="https://github.com/open-webui/open-webui/pull/25858" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25858/hovercard">#25858</a></li> <li>๐Ÿ“ <strong>Code editor stays open when empty.</strong> The code editor drawer no longer collapses when its content is empty. <a href="https://github.com/open-webui/open-webui/pull/25855" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25855/hovercard">#25855</a></li> <li>๐Ÿ’ฝ <strong>Settings no longer lost after a restart.</strong> Admin configuration is now stored more reliably, fixing cases where external connections and model parameters could be lost after restarting the server. <a href="https://github.com/open-webui/open-webui/commit/5cdcdbaeec9fc8156721c38c33ec37956962871c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/21f9e5295bf484169d72f4538f7c926b5519723c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8958b64b5a7e96cd8c2260571b54324ca3bfe127">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/24743" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24743/hovercard">#24743</a>, <a href="https://github.com/open-webui/open-webui/pull/25911" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25911/hovercard">#25911</a>, <a href="https://github.com/open-webui/open-webui/pull/25959" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25959/hovercard">#25959</a></li> <li>๐Ÿ“œ <strong>Visible chat scrollbar.</strong> The chat area now shows a scrollbar, making it easier to scroll through long responses. <a href="https://github.com/open-webui/open-webui/commit/d56e1cb0b9">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25833" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25833/hovercard">#25833</a></li> <li>๐ŸŽš๏ธ <strong>Default model parameters apply to requests.</strong> Default model parameters are now applied to outbound requests, so settings like temperature and the context window take effect as configured. <a href="https://github.com/open-webui/open-webui/commit/cd6cc39c6d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/19db873603215773f9a64e03785a1a076dc6c8a8">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/24930" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24930/hovercard">#24930</a>, <a href="https://github.com/open-webui/open-webui/issues/26209" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/26209/hovercard">#26209</a></li> <li>๐ŸŸข <strong>Ollama loaded-model indicator restored.</strong> The indicator showing which Ollama model is loaded in VRAM works again after recent changes. <a href="https://github.com/open-webui/open-webui/issues/25586" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25586/hovercard">#25586</a>, <a href="https://github.com/open-webui/open-webui/issues/25732" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25732/hovercard">#25732</a></li> <li>๐Ÿชช <strong>Static MCP connectors recover missing OAuth details.</strong> MCP connectors configured with static OAuth credentials now fill in a missing scope or resource from the server's published metadata, so they connect correctly instead of failing when those values were left out. <a href="https://github.com/open-webui/open-webui/commit/88901bfa041ddcceab1cd4a97f08f0b43835eb05">Commit</a>, <a href="https://github.com/open-webui/open-webui/issues/25898" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25898/hovercard">#25898</a></li> <li>๐Ÿ“Š <strong>Token usage and cost stats no longer wiped by background tasks.</strong> A response's token usage and cost are now preserved when background tasks like title, tag, and follow-up generation run on the same chat, instead of being overwritten. <a href="https://github.com/open-webui/open-webui/commit/95391221dfabbfcd9090ab472b1c02a4c75c0387">Commit</a></li> <li>๐Ÿ”— <strong>Model share link updated.</strong> Sharing a model now opens the current community post page, fixing the link that pointed at the old endpoint. <a href="https://github.com/open-webui/open-webui/pull/25801" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25801/hovercard">#25801</a></li> </ul> <h3>Changed</h3> <ul> <li><g-emoji class="g-emoji" alias="warning">โš ๏ธ</g-emoji> <strong>Database Migrations</strong>: This update contains database migrations. Please be sure to back up your database before updating, as downgrading after the migration is not supported.</li> <li>๐Ÿ”” <strong>System events now fire automatically.</strong> With the new event system, Open WebUI emits events for activity like startup, sign-ins, and configuration changes, so any webhook you already have configured may begin receiving calls for these newly emitted events after upgrading. Review your event and webhook settings after updating so you only receive the events you want. <a href="https://github.com/open-webui/open-webui/commit/b5c43968db0ea1556b228d143ae5946dc4e944ba">Commit</a></li> <li>๐Ÿ”€ <strong>Native tool calling is now the default.</strong> Every chat and model that had not explicitly chosen a tool-calling mode now runs Native, which relies on a model's built-in tool support, while the old behavior has been renamed "Legacy" and made the explicit opt-out; if your models depend on the previous approach you must switch them back to "Legacy" per chat, per model, or globally in your default model parameters to preserve their behavior. <a href="https://github.com/open-webui/open-webui/commit/b1d40f340921c27eb9a965b9feeb2563856e25e2">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Authentication settings moved to their own page.</strong> LDAP, OAuth, and related authentication settings have moved out of the General settings page into a dedicated Authentication page in the admin panel. <a href="https://github.com/open-webui/open-webui/commit/5cdcdbaeec9fc8156721c38c33ec37956962871c">Commit</a></li> <li>๐ŸŽ“ <strong>Several features are no longer beta.</strong> Memories, Notes, Channels, and High Contrast Mode have graduated out of beta and no longer carry a beta label. <a href="https://github.com/open-webui/open-webui/commit/7b55a63fc7ee323e9114713ce1d2f3f688aa37e6">Commit</a></li> <li>๐Ÿ”ง <strong>Local web fetch setting renamed.</strong> The "ENABLE_RAG_LOCAL_WEB_FETCH" environment variable is now "ENABLE_LOCAL_WEB_FETCH", reflecting that it applies beyond retrieval; the old name still works as a deprecated alias. <a href="https://github.com/open-webui/open-webui/commit/e3ba6984534898695b47ee4fc3d6b746e2865abc">Commit</a></li> <li>๐Ÿ”ง <strong>You.com search key renamed.</strong> You.com web search now prefers the "YDC_API_KEY" environment variable, with the previous "YOUCOM_API_KEY" still accepted as a fallback. <a href="https://github.com/open-webui/open-webui/commit/df634bb64f5043b0292e43c69bd1d31676c89328">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/26316" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/26316/hovercard">#26316</a></li> <li>๐Ÿงช <strong>Client-side Python now runs sandboxed.</strong> Client-side Python (Pyodide) now runs in a sandboxed, opaque-origin iframe by default, isolating executed code from your session, cookies, local storage, and the app's own endpoints, while full Python, JavaScript, and external network access keep working. Code that relied on reaching same-origin Open WebUI endpoints from Pyodide will no longer be able to, and Pyodide is now marked legacy in the admin Code Execution settings. <a href="https://github.com/open-webui/open-webui/commit/516051304e1b1f250c34438746ade673a79bd40c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/c7be66626fd10c75ec35f662a709129ba1b020ec">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/62ae2069183109d878d72b9444a0e7c4f6c66caa">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/518702caae5a6484e71aa79e8ab908ec398290a7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/03a8363583b7e0e04760d49f1e8d28dbbfefee4d">Commit</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.9.6 2026-06-02T02:22:06Z

v0.9.6

<h3>Added</h3> <ul> <li>๐Ÿ“ฆ <strong>Official knowledge base sync tool.</strong> A new companion tool from Open WebUI, oikb, keeps a knowledge base in sync with a local directory, GitHub repo, S3 bucket, Confluence space, or any of more than 40 other sources, uploading only new and changed files using the incremental sync support added in this release. <a href="https://github.com/open-webui/oikb">oikb</a></li> <li>๐Ÿ“‚ <strong>Smart directory sync for knowledge bases.</strong> Local directories can now be synced into a knowledge base in one action: file checksums are compared against what's already stored, and only added or modified files are uploaded while removed files and orphaned subdirectories are cleaned up, with the directory structure mirrored automatically and per-file progress shown throughout. <a href="https://github.com/open-webui/open-webui/issues/19190" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/19190/hovercard">#19190</a>, <a href="https://github.com/open-webui/open-webui/issues/19394" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/19394/hovercard">#19394</a>, <a href="https://github.com/open-webui/open-webui/commit/60c9db1cb81d021589cb49bee8744a799b51211f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/73bdf86766d3f44467cdec436786fe089481baf3">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9835b3f1dd7aa9c92ff08a634a0f97cc2a046e42">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/97252fa609440573251d8e75090f347ed1e51e1d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8f2d346e10c47b57bf6b5a6aa02d453488a88b89">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1527eb6e01d441225c979d12d78b7625edf1086f">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Knowledge base folders.</strong> Files inside a knowledge base can now be organized into nested folders, with breadcrumb navigation that makes it much easier to manage and find content in large collections. <a href="https://github.com/open-webui/open-webui/commit/c2cbc47ca76ebfa21e1d36279dbd859283cbbfb1">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ab0ee858b73738c5b77d1d455e66e66bc61df1c4">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2ad327a4dce64a8eedf5eb41c73b8520344fdd82">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/171150c1e12b5713f77a5ea0dd19c6581c7bef2e">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/e7d2ddbb1d14c03a52797751d24a98132aac0cd8">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/32a417bbf66ed28a5ca8a759ad3a87b2a2aa358a">Commit</a></li> <li>๐Ÿงฐ <strong>Filesystem tool for knowledge bases.</strong> A new built-in tool, enabled via the "ENABLE_KB_EXEC" environment variable, lets AI models browse and search knowledge base contents using familiar filesystem commands such as 'ls', 'cat', 'grep', 'find', 'head', 'tail', and 'sed', including pipes between them. <a href="https://github.com/open-webui/open-webui/commit/5b125c24d4eae925d3287efa626595bab29d5c33">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ecec86dd32aa396dd5a383e9be5b0f16c4346c48">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9ef579ce4be5b82f9281b085a621fed5b04e0d26">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2f642754ac6b8c430228a7fc289357a6c6652235">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3b00e5721a60518ea317c4fd61a6d0d182961a2f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4e78b355efe0611f27fddef591c69f7c1259a9f6">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/74f95a9b0d6b89b241701422170d54e21e701baa">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/cc16e06c32de48bdf464db5814483a49f3527b63">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1ea54c3217f487990b6a4c0f0d8ea675a479b6e1">Commit</a></li> <li>โœ๏ธ <strong>File renaming in knowledge bases.</strong> Files inside a knowledge base can now be renamed directly from the workspace, with the new name reflected wherever the file is referenced. <a href="https://github.com/open-webui/open-webui/commit/3127f1b46255626ea92eb0b598e45078287303f1">Commit</a></li> <li>๐Ÿ˜€ <strong>Emoji picker in message input.</strong> A new emoji button in the rich text formatting toolbar lets you browse and insert emojis directly into your messages. <a href="https://github.com/open-webui/open-webui/pull/24704" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24704/hovercard">#24704</a></li> <li>๐Ÿช„ <strong>Per-chat skills toggle.</strong> Skills can now be turned on or off for a conversation directly from the chat Integrations menu, the same way tools and capabilities already work, instead of only through the model preset. <a href="https://github.com/open-webui/open-webui/issues/25036" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25036/hovercard">#25036</a>, <a href="https://github.com/open-webui/open-webui/pull/25037" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25037/hovercard">#25037</a></li> <li>๐Ÿ”Ž <strong>Access preview for users and groups.</strong> Administrators can now preview exactly which models, knowledge bases, and tools a given user or group can access, making it easier to audit and verify permission setups. <a href="https://github.com/open-webui/open-webui/commit/9c14740ffb009d550dcbd5d6c599dac57053f112">Commit</a></li> <li>๐Ÿ“„ <strong>Configurable knowledge base file page size.</strong> Administrators can now request a larger page size when listing a knowledge base's files through the API, reducing the number of requests needed to retrieve large collections instead of paging through fixed increments of 30. <a href="https://github.com/open-webui/open-webui/issues/25148" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25148/hovercard">#25148</a>, <a href="https://github.com/open-webui/open-webui/commit/a4d1b3e9378a61a11dd9822a8dbb525f39753081">Commit</a></li> <li>๐Ÿ”ƒ <strong>Persistent processing indicator for knowledge files.</strong> Files still being processed in a knowledge base now keep showing a processing indicator across page reloads, so you can tell what's still ingesting after navigating away and back. <a href="https://github.com/open-webui/open-webui/issues/25031" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25031/hovercard">#25031</a>, <a href="https://github.com/open-webui/open-webui/commit/ad9f2eeb15a448147d5e47e6a391cabb9aefd0ea">Commit</a></li> <li>๐Ÿ“‘ <strong>MinerU file type configuration.</strong> Administrators can now configure which file types are processed by the MinerU document loader, via the new "MINERU_FILE_EXTENSIONS" setting, extending it beyond PDF to formats like DOCX, PPTX, and XLSX. <a href="https://github.com/open-webui/open-webui/commit/d4030a8aa5d48c2a1cb06c461566844aca2530ab">Commit</a></li> <li>๐Ÿ“ƒ <strong>Legacy Word document support.</strong> Older ".doc" Word files can now have their text extracted by the default document extraction engine, in addition to the modern ".docx" format. <a href="https://github.com/open-webui/open-webui/commit/9e3e24e304f8ff210494380b46f614a2984cafb3">Commit</a></li> <li>๐Ÿ“ <strong>Create subfolders from the folder header.</strong> Chat folders can now have subfolders created directly from the folder header in the chat view, not just from the sidebar. <a href="https://github.com/open-webui/open-webui/commit/1f0948bcbef2af73b155535ea27762c522260afc">Commit</a></li> <li>โšก <strong>Faster initial page loads.</strong> The configuration endpoint that loads on every page visit no longer runs an unnecessary user-count query, making the initial application load lighter on the database, especially on instances with many users. <a href="https://github.com/open-webui/open-webui/commit/0adc090dcbe636c9c9645d8ec7f6b89ea514870b">Commit</a></li> <li>๐Ÿš€ <strong>Faster tool-enabled chat completions.</strong> Chat completions that use multiple tools now start faster because the tools they reference are fetched from the database in a single batch query instead of one query per tool. <a href="https://github.com/open-webui/open-webui/pull/24808" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24808/hovercard">#24808</a>, <a href="https://github.com/open-webui/open-webui/commit/cc94a90b4d4d690bc7cb9f7124f2d6e552973970">Commit</a></li> <li>๐ŸŽ๏ธ <strong>More responsive web search under load.</strong> Web search through SearXNG, Google PSE, Brave, Serper, and Serpstack now uses non-blocking network calls, so the server stays responsive to other users while a search is in flight, and concurrent multi-query searches complete faster. <a href="https://github.com/open-webui/open-webui/commit/b94245d2ee191e8ef118bf9de1ff7539503bfec9">Commit</a></li> <li>๐ŸŽ <strong>Lighter Ollama backend connections.</strong> Requests to Ollama backends now reuse a shared connection pool instead of opening a fresh session each time, reducing TCP and TLS handshake overhead for installs that poll Ollama frequently or have multiple backends configured. <a href="https://github.com/open-webui/open-webui/commit/5d9a09a88a9094ebfcd249340be3aaee544b34d0">Commit</a></li> <li>๐Ÿ’ฝ <strong>Fewer redundant model-list writes.</strong> On multi-instance deployments backed by Redis, the model list is no longer rewritten when it hasn't changed, cutting a major source of redundant writes. <a href="https://github.com/open-webui/open-webui/issues/25469" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25469/hovercard">#25469</a>, <a href="https://github.com/open-webui/open-webui/pull/25474" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25474/hovercard">#25474</a>, <a href="https://github.com/open-webui/open-webui/commit/fd76b51ab2ad4c4192f2c98153e47888712c2009">Commit</a></li> <li>๐Ÿ“‰ <strong>Faster websocket disconnect cleanup.</strong> Disconnecting from a collaborative session no longer triggers a scan across the entire Redis keyspace, using a per-session index instead, which keeps disconnects cheap on large deployments. <a href="https://github.com/open-webui/open-webui/issues/25466" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25466/hovercard">#25466</a>, <a href="https://github.com/open-webui/open-webui/commit/c7de057a4a54cc80f366ad949417e78fae756d4c">Commit</a></li> <li>๐Ÿ“ <strong>Frontmatter auto-fill for tools, functions, and skills.</strong> Opening a tool, function, or skill editor now auto-fills the name, id, and description fields from the file's frontmatter, saving you from re-entering metadata already declared in the source. <a href="https://github.com/open-webui/open-webui/pull/24649" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24649/hovercard">#24649</a>, <a href="https://github.com/open-webui/open-webui/commit/ef975649b26d3e7cd589c49be2fc77cee80fad8f">Commit</a></li> <li>๐Ÿชช <strong>More user placeholders in custom headers.</strong> Custom-header templates for direct connections and tool servers now support "{{USER_EMAIL}}" and "{{USER_ROLE}}" alongside the existing user and session placeholders. <a href="https://github.com/open-webui/open-webui/commit/ed73ef3d8df988b0e9646b82df5b1a453202ef8d">Commit</a></li> <li>โฑ๏ธ <strong>Configurable MCP connection timeout.</strong> The timeout for the initial handshake with an MCP tool server is now configurable via the new "MCP_INITIALIZE_TIMEOUT" setting, so servers that are slow to start or expose many tools can finish connecting instead of timing out. <a href="https://github.com/open-webui/open-webui/pull/25011" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25011/hovercard">#25011</a>, <a href="https://github.com/open-webui/open-webui/commit/4297c02b121180e239a61c483ac8477cc557d4ef">Commit</a></li> <li>๐Ÿ“ <strong>Profile image size limit.</strong> Administrators can now cap the size of inline profile images via the new "PROFILE_IMAGE_MAX_DATA_URI_SIZE" setting, bounding how much database and cache space inline avatars and model icons can consume. <a href="https://github.com/open-webui/open-webui/issues/25468" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25468/hovercard">#25468</a>, <a href="https://github.com/open-webui/open-webui/pull/25476" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25476/hovercard">#25476</a></li> <li>๐ŸŽซ <strong>Wildcard OAuth role mapping.</strong> Administrators can now set "*" in the allowed OAuth roles to grant the user role to any authenticated OAuth user, instead of having to enumerate every accepted role. <a href="https://github.com/open-webui/open-webui/pull/25062" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25062/hovercard">#25062</a>, <a href="https://github.com/open-webui/open-webui/commit/07cbc91a8eba3a9a3b39588b2ae5de916930af70">Commit</a></li> <li>๐Ÿ“Š <strong>Paginated feedback history.</strong> The feedback and evaluation history list is now paginated, keeping it responsive for instances that have accumulated large numbers of feedback entries. <a href="https://github.com/open-webui/open-webui/commit/160a6694e4bd66fc42e6361947516e8e15414ef3">Commit</a></li> <li>๐Ÿ”˜ <strong>Bulk enable or disable automations.</strong> Automations can now be enabled or disabled in bulk from an actions menu on the automations page, instead of toggling each one individually. <a href="https://github.com/open-webui/open-webui/commit/675e9bee5af8b9fb390fcb235a6c2c4766e78c75">Commit</a></li> <li>โžก๏ธ <strong>Optional auto-redirect to single sign-on.</strong> Administrators can now enable "OAUTH_AUTO_REDIRECT" so that, on deployments with a single sign-on provider and no other login methods, users are sent straight to the provider instead of seeing a login page first. <a href="https://github.com/open-webui/open-webui/pull/25067" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25067/hovercard">#25067</a>, <a href="https://github.com/open-webui/open-webui/commit/d64ef1803d2f5cedb7b3a308151d08ff2cd2b8e1">Commit</a></li> <li>โ˜๏ธ <strong>Azure AI Foundry v1 with Entra ID.</strong> Open WebUI now supports Azure AI Foundry's OpenAI v1 endpoint together with Microsoft Entra ID authentication, so these connections work without manual workarounds. <a href="https://github.com/open-webui/open-webui/issues/24761" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24761/hovercard">#24761</a>, <a href="https://github.com/open-webui/open-webui/pull/24985" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24985/hovercard">#24985</a>, <a href="https://github.com/open-webui/open-webui/commit/eb4eebc3ce1042cb0d393bf890c1895db6e08b19">Commit</a></li> <li>๐ŸŒŽ <strong>Linkup web search provider.</strong> Administrators can now select Linkup as the web search provider from the admin settings, with options to configure the API key and search depth. <a href="https://github.com/open-webui/open-webui/pull/24752" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24752/hovercard">#24752</a>, <a href="https://github.com/open-webui/open-webui/commit/56c0d00e13c74d665124ec9f1cae78e83ca60b6a">Commit</a></li> <li>๐ŸงŠ <strong>Valkey vector database support.</strong> Valkey can now be used as the vector database backend, configurable through new "VALKEY_URL" and related settings including index type, distance metric, and HNSW tuning. <a href="https://github.com/open-webui/open-webui/pull/24769" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24769/hovercard">#24769</a>, <a href="https://github.com/open-webui/open-webui/commit/c0f1aa291938bbef62db8d4013dbc498b0abea15">Commit</a></li> <li>๐Ÿ”„ <strong>General improvements.</strong> Various improvements were implemented across the application to enhance performance, stability, and security.</li> <li>๐ŸŒ <strong>Translation updates.</strong> Translations for Spanish (Spain), Swedish, German, Korean, Catalan, Russian, Irish, Simplified Chinese, Traditional Chinese, Finnish, Polish, Turkish, and Malay were enhanced and expanded.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Security Advisory</strong>: This release includes security and access-control fixes. We recommend updating production deployments at your earliest convenience. Not all security fixes in this version may be enumerated in the fixed section โ€” some may be withheld for a short time to give administrators time to upgrade. <a href="https://github.com/open-webui/open-webui/security">Advisories</a></li> <li>๐Ÿ›ก๏ธ <strong>Tool server permission enforcement.</strong> The per-user permission for inline tool servers is now enforced on chat-completion requests, so users without that permission can no longer bypass the admin setting by supplying tool servers directly in their requests. <a href="https://github.com/open-webui/open-webui/commit/5cc1eb517094e3507915664817285f1e6e37a16d">Commit</a></li> <li>๐Ÿ”’ <strong>Knowledge base access check in search tool.</strong> The built-in knowledge search tool now verifies that the caller can access a knowledge base before searching it by id, preventing users from reading the contents of knowledge bases they have not been granted access to. <a href="https://github.com/open-webui/open-webui/pull/25113" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25113/hovercard">#25113</a></li> <li>๐Ÿ—„๏ธ <strong>Cross-user access to retrieval collections.</strong> Resolving the documents used for retrieval now verifies the caller's access to each referenced file and rejects client-supplied collection names, preventing a crafted request from pulling another user's files or vector collections into its context. <a href="https://github.com/open-webui/open-webui/commit/ee47c9c833f8889f3abe99d2266c56e8f8d40230">Commit</a></li> <li>๐Ÿ”ฃ <strong>Collection name validation.</strong> Vector collection names are now rejected unless they contain only safe characters, preventing malformed names from reaching the vector store or breaking out of a database query expression. <a href="https://github.com/open-webui/open-webui/pull/24982" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24982/hovercard">#24982</a></li> <li>๐Ÿšซ <strong>Unscoped retrieval collections denied by default.</strong> Retrieval requests for collection names that don't correspond to a known file, memory, web-search, or knowledge base are now denied for non-admins by default, with a new "ENABLE_RETRIEVAL_UNSCOPED_COLLECTIONS" setting to restore the previous behavior if needed. <a href="https://github.com/open-webui/open-webui/commit/c93f071700520a60833b7f9616c292b11f210880">Commit</a></li> <li>๐Ÿ“œ <strong>Prompt history authorization.</strong> Comparing, deleting, and restoring prompt versions now verify the history entry belongs to the prompt you're authorized for, preventing access to or modification of another prompt's version history. <a href="https://github.com/open-webui/open-webui/pull/25056" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25056/hovercard">#25056</a></li> <li>๐Ÿšฆ <strong>Code interpreter permission on the legacy path.</strong> The legacy code-execution path now enforces the same permission and capability checks as the current one, so users without the code interpreter permission can no longer trigger code execution through it. <a href="https://github.com/open-webui/open-webui/pull/24724" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24724/hovercard">#24724</a></li> <li>๐Ÿงฑ <strong>API key endpoint restriction bypass.</strong> The endpoint allow-list that limits which paths an API key may reach is now matched against the routed request path directly, preventing a crafted request from slipping past the restriction. <a href="https://github.com/open-webui/open-webui/pull/25123" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25123/hovercard">#25123</a></li> <li>๐Ÿšง <strong>System prompt bypass via request parameter.</strong> The flag that skips a model's configured system prompt can no longer be set by external clients through a request parameter, so admin-configured system prompts can't be bypassed from the API. <a href="https://github.com/open-webui/open-webui/pull/25156" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25156/hovercard">#25156</a></li> <li>๐Ÿšช <strong>Terminal proxy path traversal.</strong> The terminal proxy now fully decodes request paths before validating them, blocking multi-encoded payloads that could otherwise escape the intended path. <a href="https://github.com/open-webui/open-webui/pull/25157" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25157/hovercard">#25157</a></li> <li>๐Ÿชค <strong>Cache file path traversal.</strong> The cache file server now requires an exact directory boundary match, closing a gap where a sibling directory whose name began with the cache directory's name could be used to serve files from outside it. <a href="https://github.com/open-webui/open-webui/pull/25086" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25086/hovercard">#25086</a></li> <li>๐Ÿ”€ <strong>Ollama backend selection access check.</strong> Requests can no longer target an arbitrary Ollama backend by index; a caller-supplied backend selector is now verified against the backends that actually serve the requested model. <a href="https://github.com/open-webui/open-webui/commit/7139797be04030b9d1016782f1dbb251c5fe68bb">Commit</a></li> <li>๐Ÿ”“ <strong>Cross-user file exfiltration via image URLs.</strong> When a chat message references a file by id in an "image_url" field, the server now resolves that file only for its owner, an administrator, or a user with an explicit read grant, preventing other authenticated users from extracting a file's contents by routing it through the model. <a href="https://github.com/open-webui/open-webui/pull/24625" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24625/hovercard">#24625</a>, <a href="https://github.com/open-webui/open-webui/commit/c75fe8e74b72617c51282cc3ea0a2e8d9cdd9140">Commit</a></li> <li>๐Ÿ“Œ <strong>Chat file attachment access checks.</strong> Attaching files to a chat now links only files the caller can read, preventing a user from associating another user's file with their chat to access its contents. <a href="https://github.com/open-webui/open-webui/pull/25054" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25054/hovercard">#25054</a></li> <li>๐Ÿงพ <strong>Model knowledge file ownership checks.</strong> Creating or updating a model now verifies that any knowledge files attached to it are files the editor can access, preventing another user's files from being attached to a model. <a href="https://github.com/open-webui/open-webui/pull/25055" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25055/hovercard">#25055</a>, <a href="https://github.com/open-webui/open-webui/commit/27fb20c13a4bf8501f7a485abe0654eb5880980d">Commit</a></li> <li>๐Ÿ“… <strong>Calendar event move authorization.</strong> Updating a calendar event to move it into a different calendar now requires write access on the destination calendar, preventing users from injecting events into calendars they cannot write to. <a href="https://github.com/open-webui/open-webui/pull/24764" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24764/hovercard">#24764</a></li> <li>๐Ÿ“ฃ <strong>Channel chat access control.</strong> Generating a response in a channel context now verifies the caller's access to that channel and scopes the included messages, preventing access to channels or messages the user isn't permitted to see. <a href="https://github.com/open-webui/open-webui/pull/24725" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24725/hovercard">#24725</a></li> <li>๐Ÿ•ธ๏ธ <strong>Web loader SSRF gating with Playwright.</strong> When the Playwright-based web loader is in use, page navigations and redirects are now validated the same way as the default loader, closing a gap where the Playwright path could reach internal or otherwise blocked URLs. <a href="https://github.com/open-webui/open-webui/pull/24756" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24756/hovercard">#24756</a></li> <li>๐Ÿ›‚ <strong>DNS rebinding protection for URL fetches.</strong> The IP address validated for an outbound URL fetch is now the same one used for the actual connection, closing a DNS rebinding window where an attacker-controlled hostname could resolve to a public IP during the safety check and then to a private IP when the connection was opened. <a href="https://github.com/open-webui/open-webui/pull/24759" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24759/hovercard">#24759</a></li> <li>๐Ÿชž <strong>OAuth profile picture redirect handling.</strong> The OAuth profile picture fetch now follows redirects only when administrators have explicitly allowed it, closing a window where a redirect from an externally validated URL could be used to reach internal addresses. <a href="https://github.com/open-webui/open-webui/pull/24809" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24809/hovercard">#24809</a></li> <li>๐Ÿงผ <strong>Model profile image script injection.</strong> Model profile images are now validated on save and only served inline when they are a known-safe image type, preventing a crafted SVG profile image from running scripts in other users' browsers, while existing legacy images that fail validation are cleared gracefully instead of breaking the model list. <a href="https://github.com/open-webui/open-webui/pull/25060" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25060/hovercard">#25060</a>, <a href="https://github.com/open-webui/open-webui/pull/25173" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25173/hovercard">#25173</a></li> <li>๐Ÿงฏ <strong>Diagram rendering script injection.</strong> Mermaid diagrams rendered in chat are now sanitized before display, preventing a crafted diagram from running scripts in the viewer's browser. <a href="https://github.com/open-webui/open-webui/pull/25219" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25219/hovercard">#25219</a></li> <li>๐Ÿ” <strong>Shared-chat file write protection.</strong> Access to a file through a shared chat now only grants read access, so users who can read a shared chat can no longer modify or delete files attached to it. <a href="https://github.com/open-webui/open-webui/pull/24755" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24755/hovercard">#24755</a></li> <li>๐Ÿ” <strong>Cross-origin embed prompt control.</strong> When Open WebUI is embedded in an iframe on a different origin, the embedding page can now only drive the chat input or submit prompts if the user has explicitly opted in via the "iframe Sandbox Allow Same Origin" setting, preventing untrusted host pages from triggering confirmation dialogs or controlling the chat. <a href="https://github.com/open-webui/open-webui/pull/24767" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24767/hovercard">#24767</a>, <a href="https://github.com/open-webui/open-webui/commit/eb3076c1b02d90c2ce6e6d3beb08a37987c740ec">Commit</a></li> <li>๐Ÿ—‚๏ธ <strong>Chat folder ownership checks.</strong> Creating a chat or updating a chat's folder now verifies the referenced folder belongs to the current user, preventing chats from being associated with folders owned by other people. <a href="https://github.com/open-webui/open-webui/pull/24588" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24588/hovercard">#24588</a></li> <li>๐Ÿงฉ <strong>Chat recovery from corrupted history.</strong> Chats whose internal message graph was left in a malformed state by a failed regeneration now open and load correctly, with missing roles, parent references, and current-message pointers reconstructed automatically instead of breaking the chat. <a href="https://github.com/open-webui/open-webui/issues/24424" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24424/hovercard">#24424</a>, <a href="https://github.com/open-webui/open-webui/issues/24157" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24157/hovercard">#24157</a>, <a href="https://github.com/open-webui/open-webui/issues/20474" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/20474/hovercard">#20474</a>, <a href="https://github.com/open-webui/open-webui/pull/24799" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24799/hovercard">#24799</a>, <a href="https://github.com/open-webui/open-webui/commit/d310a0777c4c48ec772bdc9a510005d5e91b09c7">Commit</a></li> <li>๐Ÿ“จ <strong>Imported chats with folders appear correctly.</strong> Importing grouped chats no longer leaves them invisible when a referenced folder is missing; such chats now appear in the chat list instead of being silently orphaned. <a href="https://github.com/open-webui/open-webui/issues/24910" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24910/hovercard">#24910</a>, <a href="https://github.com/open-webui/open-webui/commit/7f7cd210186cb6a67e028c17974eb210fc7ba9fd">Commit</a></li> <li>๐ŸŽŸ๏ธ <strong>MCP tool server sessions stay connected.</strong> OAuth-authenticated MCP tool server sessions are no longer mistakenly refreshed and deleted by the single sign-on session handler, so those connections stay active. <a href="https://github.com/open-webui/open-webui/issues/24618" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24618/hovercard">#24618</a>, <a href="https://github.com/open-webui/open-webui/commit/c8eb8edca4174ec68fabd071d6b08c0bc07f8117">Commit</a></li> <li>๐Ÿค <strong>MCP OAuth scope discovery.</strong> The OAuth flow for MCP tool servers now reads the scopes a server advertises through its Protected Resource Metadata, so connecting to servers that declare their own scopes succeeds. <a href="https://github.com/open-webui/open-webui/issues/24730" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24730/hovercard">#24730</a>, <a href="https://github.com/open-webui/open-webui/pull/24690" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24690/hovercard">#24690</a></li> <li>๐Ÿ” <strong>Web search reliability.</strong> Web search again fetches page content reliably with the default web loader engine, a new "USER_AGENT" environment variable lets administrators set a real browser user-agent so fetches aren't blocked by Cloudflare, Wikipedia, and other bot-detection systems, and the startup script no longer fails to launch when these new environment variables are unset. <a href="https://github.com/open-webui/open-webui/issues/24560" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24560/hovercard">#24560</a>, <a href="https://github.com/open-webui/open-webui/issues/24793" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24793/hovercard">#24793</a>, <a href="https://github.com/open-webui/open-webui/pull/24683" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24683/hovercard">#24683</a>, <a href="https://github.com/open-webui/open-webui/commit/f60733758272c4532cd032e518c9cd73f648043a">Commit</a></li> <li>๐Ÿ”ฅ <strong>Firecrawl web search results.</strong> Web search using Firecrawl now returns results correctly regardless of which response format the Firecrawl version uses. <a href="https://github.com/open-webui/open-webui/pull/24712" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24712/hovercard">#24712</a></li> <li>๐Ÿฆ… <strong>Kagi web search.</strong> Web search using Kagi works again after its API endpoint and request method were updated to match Kagi's current API. <a href="https://github.com/open-webui/open-webui/pull/25015" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25015/hovercard">#25015</a></li> <li>๐Ÿ”ข <strong>Bracketed numbers in code blocks.</strong> Numbers in square brackets such as "[0]" inside code blocks are no longer stripped out as if they were source citations, so code displays and copies correctly. <a href="https://github.com/open-webui/open-webui/issues/24948" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24948/hovercard">#24948</a>, <a href="https://github.com/open-webui/open-webui/commit/e90a618f4555cea2c024bb60c1332ca04eed96da">Commit</a></li> <li>๐Ÿ”Œ <strong>API chat completions reliability.</strong> Direct calls to the chat completions API no longer fail with an internal error when no chat session identifier is supplied. <a href="https://github.com/open-webui/open-webui/issues/24553" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24553/hovercard">#24553</a>, <a href="https://github.com/open-webui/open-webui/issues/25235" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25235/hovercard">#25235</a>, <a href="https://github.com/open-webui/open-webui/commit/bc244fdc90504824b76654880898bf3f6649c299">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f16b5c446027eae1bd767617bac2fdf54b24d6fc">Commit</a></li> <li>๐Ÿ–ผ๏ธ <strong>ComfyUI image generation and editing.</strong> Generating and editing images via a ComfyUI backend now works again, including when ComfyUI is hosted on a private or internal network where URL validation was previously blocking the admin-configured endpoint. <a href="https://github.com/open-webui/open-webui/issues/24565" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24565/hovercard">#24565</a>, <a href="https://github.com/open-webui/open-webui/commit/7dcd932ad7cb5feab007737c6e0281def5cd47fc">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/8aa2a42dc7887512e697ff85d044220945ced40f">Commit</a></li> <li>๐Ÿ–Œ๏ธ <strong>Image generation with non-standard response headers.</strong> Image generation now works with backends that return valid JSON without a standard content-type header, instead of rejecting the response. <a href="https://github.com/open-webui/open-webui/pull/24838" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24838/hovercard">#24838</a></li> <li>๐Ÿ˜ <strong>Knowledge search on large documents.</strong> Searching knowledge bases on PostgreSQL no longer fails when scanning across documents with very large extracted text content. <a href="https://github.com/open-webui/open-webui/issues/24670" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24670/hovercard">#24670</a>, <a href="https://github.com/open-webui/open-webui/commit/d74ee34d9128295faa116c919bd1dcca77744975">Commit</a></li> <li>๐Ÿ’ฌ <strong>Chat title generation.</strong> Automatically generated chat titles now use the model currently selected in the dropdown for the active chat and fall back to the model from the active message branch otherwise, and a clear message is shown if no model is available instead of an unhelpful error. <a href="https://github.com/open-webui/open-webui/issues/24604" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24604/hovercard">#24604</a>, <a href="https://github.com/open-webui/open-webui/issues/24745" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24745/hovercard">#24745</a>, <a href="https://github.com/open-webui/open-webui/commit/e5c8f8110a88739e011d8ab23e5cb11b4768469f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/3c5e7968f0b5130890e17f1f2a2a52297cb145a6">Commit</a></li> <li>๐Ÿงฎ <strong>Message search and analytics consistency.</strong> Edits, deletions, and branch changes made in a chat are now reflected in message search results and analytics counts instead of leaving stale entries behind. <a href="https://github.com/open-webui/open-webui/pull/25205" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25205/hovercard">#25205</a>, <a href="https://github.com/open-webui/open-webui/commit/aa06200f789a4c3fc54ea9a141cd347d76cda4c5">Commit</a></li> <li>๐Ÿฉน <strong>Graceful handling of in-chat task failures.</strong> When web search query generation, image prompt generation, or a tool call fails or references a missing tool, the chat now falls back or surfaces a clear error instead of breaking partway through the response. <a href="https://github.com/open-webui/open-webui/issues/25038" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25038/hovercard">#25038</a>, <a href="https://github.com/open-webui/open-webui/issues/25144" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25144/hovercard">#25144</a>, <a href="https://github.com/open-webui/open-webui/commit/b64fd988f02b8a4295193892b24b00bdf635a4dc">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Filter changes to message output.</strong> Filter functions that modify a message's structured output after generation now have those changes saved and displayed, instead of being discarded when only the output, not the text content, was changed. <a href="https://github.com/open-webui/open-webui/pull/24884" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24884/hovercard">#24884</a></li> <li>โฉ <strong>Titles and tags reflect filtered output.</strong> Outlet filters now run before automatic title, tag, and follow-up generation, so those are based on the final filtered message instead of the unfiltered version. <a href="https://github.com/open-webui/open-webui/pull/24717" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24717/hovercard">#24717</a></li> <li>๐Ÿ’พ <strong>Action-replaced message content persists.</strong> Message content replaced by an action function through its event emitter is now kept when the chat is saved, instead of reverting to the original after a page reload. <a href="https://github.com/open-webui/open-webui/issues/24585" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24585/hovercard">#24585</a>, <a href="https://github.com/open-webui/open-webui/pull/25485" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25485/hovercard">#25485</a></li> <li>๐Ÿท๏ธ <strong>Skill mentions in messages.</strong> Mentioning a skill in a message now keeps the skill's name as readable text instead of removing it, and selecting a skill without typing anything no longer causes an error on providers that reject empty messages. <a href="https://github.com/open-webui/open-webui/issues/24929" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24929/hovercard">#24929</a>, <a href="https://github.com/open-webui/open-webui/commit/01810e32ad51305ca3247e8f83da95f6e6260f0c">Commit</a></li> <li>๐Ÿงน <strong>Usage timer cleanup on send failure.</strong> The background usage-stats timer started during message generation is now always cleared, even when sending a message fails, preventing leaked timers from accumulating over a session. <a href="https://github.com/open-webui/open-webui/pull/25478" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25478/hovercard">#25478</a></li> <li>๐Ÿ—‘๏ธ <strong>Background tasks stop when a chat is removed.</strong> Deleting or archiving a chat now cancels any in-flight generation or title and tag tasks for it, instead of leaving orphaned background work running. <a href="https://github.com/open-webui/open-webui/pull/25050" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25050/hovercard">#25050</a>, <a href="https://github.com/open-webui/open-webui/commit/778dba1d6b8dc3962163fa7bf9d802d9a07fba26">Commit</a></li> <li>โŒจ๏ธ <strong>Responsive knowledge file search.</strong> Searching for knowledge files in the chat picker and model knowledge selector now matches on file names by default instead of scanning the full extracted text of every document on each keystroke, keeping the search responsive on large deployments, with content search available as an explicit opt-in. <a href="https://github.com/open-webui/open-webui/issues/25082" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25082/hovercard">#25082</a>, <a href="https://github.com/open-webui/open-webui/pull/25119" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25119/hovercard">#25119</a>, <a href="https://github.com/open-webui/open-webui/commit/591e0aafa1d5e21dcd9fa1279dada2076968b9cb">Commit</a></li> <li>๐Ÿ“ฅ <strong>Document processing with empty embeddings.</strong> Saving documents to the vector database no longer crashes when an embedding step returns no vectors, allowing the process to continue instead of failing the whole upload. <a href="https://github.com/open-webui/open-webui/issues/25166" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25166/hovercard">#25166</a></li> <li>๐Ÿ”ค <strong>Non-UTF-8 text and CSV uploads.</strong> Text and CSV files saved in legacy encodings, including Latin-1, Windows-1252, and Chinese encodings such as GB18030, are now detected and loaded correctly instead of being rejected as binary or failing with an empty-content error. <a href="https://github.com/open-webui/open-webui/issues/25172" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25172/hovercard">#25172</a>, <a href="https://github.com/open-webui/open-webui/issues/24973" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24973/hovercard">#24973</a>, <a href="https://github.com/open-webui/open-webui/commit/6f0277db52d005420480abb0702d421525d6ea8b">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1bbb2b933d4cee70a5102eca4109e77b8625f8fc">Commit</a></li> <li>๐Ÿงฝ <strong>Null bytes in nested data no longer break saves.</strong> Data containing null bytes nested inside structured fields is now sanitized correctly before being written, preventing database errors that the previous check failed to catch. <a href="https://github.com/open-webui/open-webui/pull/25018" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25018/hovercard">#25018</a>, <a href="https://github.com/open-webui/open-webui/commit/e3ab4bd212e44c39f439ec4ff5df7c3dbd046895">Commit</a></li> <li>๐Ÿง  <strong>Clear error when no embedding model is configured.</strong> Using knowledge or retrieval features without a loaded embedding model now returns a clear setup error explaining what to configure, instead of failing with a cryptic crash. <a href="https://github.com/open-webui/open-webui/commit/55ca719bbf76306ed647424c728f730d0bef21f9">Commit</a></li> <li>๐Ÿงฒ <strong>Memory search quality.</strong> Memory searches now apply the configured embedding query prefix, so retrieval works correctly with embedding models that require one for queries. <a href="https://github.com/open-webui/open-webui/pull/24921" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24921/hovercard">#24921</a>, <a href="https://github.com/open-webui/open-webui/commit/ce4dca47cb19a6582fd8a550806c89ab297c038d">Commit</a></li> <li>๐Ÿ“š <strong>Knowledge tool context overflow.</strong> The built-in tool that lists a model's knowledge no longer dumps every file in every knowledge base into the model's context; it now returns summaries by default and paginates file listings only for a requested knowledge base. <a href="https://github.com/open-webui/open-webui/pull/25105" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25105/hovercard">#25105</a>, <a href="https://github.com/open-webui/open-webui/commit/0e73f7af099e1f9437c55a5c2d16741c97dbd57f">Commit</a></li> <li>โณ <strong>Terminal session stability.</strong> The terminal proxy no longer hangs when one direction of the connection closes before the other, so terminal sessions shut down cleanly instead of stalling. <a href="https://github.com/open-webui/open-webui/issues/25464" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25464/hovercard">#25464</a>, <a href="https://github.com/open-webui/open-webui/pull/25479" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25479/hovercard">#25479</a></li> <li>๐Ÿงท <strong>Tool call continuity with strict providers.</strong> Chats that contain incomplete tool calls or orphaned tool results no longer fail to continue when sent to providers that strictly validate tool pairings, such as Anthropic and AWS Bedrock Converse. <a href="https://github.com/open-webui/open-webui/issues/24758" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24758/hovercard">#24758</a>, <a href="https://github.com/open-webui/open-webui/issues/24940" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24940/hovercard">#24940</a>, <a href="https://github.com/open-webui/open-webui/pull/24798" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24798/hovercard">#24798</a>, <a href="https://github.com/open-webui/open-webui/commit/cfa6908d579e1f7f202a321289029996130b8411">Commit</a></li> <li>๐Ÿ›‘ <strong>Stream termination for pipe functions.</strong> Streamed responses from pipe functions now always send the standard end-of-stream marker, so chat clients and external integrations reliably detect when a response is complete instead of waiting on streams that already finished. <a href="https://github.com/open-webui/open-webui/pull/24763" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24763/hovercard">#24763</a></li> <li>๐Ÿ”Š <strong>Non-blocking text-to-speech transcoding.</strong> Converting text-to-speech audio to MP3 no longer blocks the server's event loop, so other requests stay responsive even while a TTS response is being transcoded. <a href="https://github.com/open-webui/open-webui/pull/24876" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24876/hovercard">#24876</a></li> <li>๐ŸŽš๏ธ <strong>Default text-to-speech voice.</strong> Text-to-speech requests now honor the voice specified in the request and fall back to the configured default only when none is given, instead of always using the admin default or failing. <a href="https://github.com/open-webui/open-webui/issues/15143" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/15143/hovercard">#15143</a>, <a href="https://github.com/open-webui/open-webui/issues/25035" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25035/hovercard">#25035</a>, <a href="https://github.com/open-webui/open-webui/commit/f16b5c446027eae1bd767617bac2fdf54b24d6fc">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/750604a11d4adcb5ae568b9fc93010031ad394f9">Commit</a></li> <li>๐Ÿช <strong>Reliable knowledge base file linking.</strong> Files uploaded to a knowledge collection are now linked on the server as part of the upload itself, so they remain attached to the collection even if you navigate away or close the page before processing finishes. <a href="https://github.com/open-webui/open-webui/issues/24807" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24807/hovercard">#24807</a>, <a href="https://github.com/open-webui/open-webui/commit/d0b17f056911ec73df2b686a0d92bb789391db27">Commit</a></li> <li>โ˜๏ธ <strong>Azure connections on custom hostnames.</strong> Connections marked as the Azure provider now use the Azure code path even when the endpoint does not contain "azure" in its hostname, fixing custom Azure deployments served from non-standard domains. <a href="https://github.com/open-webui/open-webui/pull/24882" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24882/hovercard">#24882</a>, <a href="https://github.com/open-webui/open-webui/commit/c8f851bd2de3d127f1e818fc116c27174f96d3f1">Commit</a></li> <li>๐Ÿ—“๏ธ <strong>Clearing calendar event fields.</strong> Removing the description or location from a calendar event now saves correctly instead of silently keeping the previous value. <a href="https://github.com/open-webui/open-webui/issues/25026" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25026/hovercard">#25026</a>, <a href="https://github.com/open-webui/open-webui/commit/91810f1c4e93d4f559bdf61cd085cadc288a732d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/78b1637a035d71099262412e5dee3e4d65c7fb2f">Commit</a></li> <li>๐Ÿ’ญ <strong>Advanced parameter settings.</strong> Custom reasoning tags and custom model parameters are now saved correctly instead of being dropped, and the presence penalty and repeat penalty no longer save the frequency penalty's value instead of their own. <a href="https://github.com/open-webui/open-webui/pull/25183" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25183/hovercard">#25183</a>, <a href="https://github.com/open-webui/open-webui/pull/25200" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25200/hovercard">#25200</a>, <a href="https://github.com/open-webui/open-webui/pull/25204" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25204/hovercard">#25204</a></li> <li>๐Ÿ“ <strong>Long username display.</strong> Long usernames no longer overflow their containers in the admin user list, user modals, and sidebar. <a href="https://github.com/open-webui/open-webui/pull/25185" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25185/hovercard">#25185</a></li> <li>๐ŸŽฏ <strong>All skills selectable in the model editor.</strong> The model editor's skills selector now lists every skill you have access to, with a search box for large lists, instead of showing only the first 30 with no way to reach the rest. <a href="https://github.com/open-webui/open-webui/issues/24873" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24873/hovercard">#24873</a>, <a href="https://github.com/open-webui/open-webui/commit/936d5f2676dfbd2ba763b30af33a8557dcda9b05">Commit</a></li> <li>๐Ÿ”” <strong>Accurate knowledge upload feedback.</strong> Dragging files into a knowledge base no longer shows an upload notification before the upload has actually been processed. <a href="https://github.com/open-webui/open-webui/pull/25484" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25484/hovercard">#25484</a></li> <li>โ™ฟ <strong>High-contrast timestamp readability.</strong> The user message timestamp now uses the correct colors in high-contrast mode instead of inverted ones, keeping it readable. <a href="https://github.com/open-webui/open-webui/pull/25461" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25461/hovercard">#25461</a></li> <li>โ™ฟ <strong>Keyboard and screen reader access to menus.</strong> The integrations, more-options, and user menus are now real buttons with labels and keyboard support, so they can be opened with the keyboard and announced by screen readers. <a href="https://github.com/open-webui/open-webui/commit/346dab3d8f909fc321a49ea2be633ea5c4c4a349">Commit</a></li> <li>๐Ÿ–ฑ๏ธ <strong>Focus-loss handling in editors.</strong> Workspace and admin editors for models, tools, functions, and skills again respond correctly when the browser window loses focus, after the wrong event name was being listened for. <a href="https://github.com/open-webui/open-webui/pull/25459" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25459/hovercard">#25459</a></li> <li>๐Ÿ›Ÿ <strong>Resilience to corrupted local storage.</strong> Corrupted data in the browser's local storage no longer crashes the interface; affected settings and dismissed-banner state now fall back to safe defaults. <a href="https://github.com/open-webui/open-webui/pull/25481" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25481/hovercard">#25481</a></li> <li>๐Ÿ“ถ <strong>Quieter reconnection notifications.</strong> Brief connection interruptions, such as backgrounding a mobile tab, no longer flash a "connection lost" warning, and the "reconnected" message only appears if a disconnect was actually shown. <a href="https://github.com/open-webui/open-webui/commit/77c8c54b1ea07189e21313f9cd401f3b956bb93a">Commit</a></li> <li>๐ŸŽ <strong>Safari PDF handling.</strong> PDF processing now works in Safari, which doesn't support the stream iteration the previous code relied on. <a href="https://github.com/open-webui/open-webui/issues/25151" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25151/hovercard">#25151</a>, <a href="https://github.com/open-webui/open-webui/pull/25473" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25473/hovercard">#25473</a></li> <li>๐ŸŽ™๏ธ <strong>Voice mode mute shortcut listing.</strong> The keyboard shortcut for muting voice mode now appears in the keyboard shortcuts help modal. <a href="https://github.com/open-webui/open-webui/pull/25193" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25193/hovercard">#25193</a></li> <li>๐Ÿ“Ž <strong>Document attachments in channel model replies.</strong> Tagging a model in a channel thread now forwards uploaded non-image documents such as PDFs and DOCX files into the model's context, so document summarization and comparison workflows that already worked in direct chat now work in channels too. <a href="https://github.com/open-webui/open-webui/issues/24896" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24896/hovercard">#24896</a>, <a href="https://github.com/open-webui/open-webui/pull/24898" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24898/hovercard">#24898</a>, <a href="https://github.com/open-webui/open-webui/commit/7e9d41d664d7065a92ac93606d18e88c45eb36b6">Commit</a></li> <li>๐Ÿ™ˆ <strong>Hidden models in channel mentions.</strong> Models marked as hidden no longer appear in the channel message-input model mention selector, matching how hidden models are excluded elsewhere in the interface. <a href="https://github.com/open-webui/open-webui/pull/24892" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24892/hovercard">#24892</a></li> <li>๐Ÿงต <strong>Channel thread and pinned message stability.</strong> Opening a channel thread or the pinned messages view no longer fails to render when a message or its data is missing. <a href="https://github.com/open-webui/open-webui/pull/25209" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25209/hovercard">#25209</a></li> <li>๐Ÿ“บ <strong>YouTube short link transcripts.</strong> Pasting a "youtu.be" short link into a chat now loads the video transcript correctly instead of failing with an empty-content error. <a href="https://github.com/open-webui/open-webui/issues/24856" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24856/hovercard">#24856</a>, <a href="https://github.com/open-webui/open-webui/commit/1e36a206008c3abce5ccdc98d5750e30a7345b98">Commit</a></li> <li>๐Ÿ™‰ <strong>Hidden models in default-model and automation pickers.</strong> The admin pickers for default models and default pinned models, and the automation model dropdown, now filter out hidden models, consistent with how hidden models are treated elsewhere. <a href="https://github.com/open-webui/open-webui/issues/24869" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24869/hovercard">#24869</a>, <a href="https://github.com/open-webui/open-webui/commit/1fa3050f069a72de1daaaa29233b545c4deaea51">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/4705c2d98812c1189c2ae4960399bc8888d4861c">Commit</a></li> <li>๐Ÿ”Š <strong>Speech-to-text SSL setting honored.</strong> Speech-to-text requests now respect the "AIOHTTP_CLIENT_SESSION_SSL" setting, so administrators using self-signed certificates or custom SSL configurations can use STT engines that were previously failing TLS verification. <a href="https://github.com/open-webui/open-webui/issues/24568" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24568/hovercard">#24568</a>, <a href="https://github.com/open-webui/open-webui/pull/24857" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24857/hovercard">#24857</a>, <a href="https://github.com/open-webui/open-webui/commit/2ca91ceeeca6a6a21e5a6ad68ea3ab8c9d9f6deb">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/94b66b17972e0ad77954df4b81a6bb86a7a6a04b">Commit</a></li> <li>๐Ÿ”— <strong>Placeholders in MCP connection headers.</strong> Custom header templates configured on MCP server connections now have their "{{USER_ID}}", "{{USER_NAME}}", "{{USER_EMAIL}}", "{{USER_ROLE}}", "{{CHAT_ID}}", and "{{MESSAGE_ID}}" placeholders interpolated at request time, matching how custom headers already work for direct connections and tool servers. <a href="https://github.com/open-webui/open-webui/pull/24822" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24822/hovercard">#24822</a></li> <li>๐ŸชŸ <strong>Bing search CLI smoke test.</strong> Running the Bing web-search module from the command line for a quick connectivity check no longer raises an error about missing arguments. <a href="https://github.com/open-webui/open-webui/issues/24765" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24765/hovercard">#24765</a>, <a href="https://github.com/open-webui/open-webui/pull/24768" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24768/hovercard">#24768</a></li> <li>๐Ÿฉบ <strong>Database health check recovery.</strong> After a transient database connection error, the health check endpoint now recovers automatically instead of staying permanently broken on the affected worker. <a href="https://github.com/open-webui/open-webui/commit/0b81520e072bb4ed15532b8e153b43dd3243feaf">Commit</a></li> <li>๐Ÿฅพ <strong>Startup on non-Unicode consoles.</strong> Open WebUI no longer crashes at startup when the console can't encode the banner's box-drawing characters, such as on Windows or with redirected or headless output, falling back to a plain-text banner instead. <a href="https://github.com/open-webui/open-webui/issues/24965" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24965/hovercard">#24965</a>, <a href="https://github.com/open-webui/open-webui/pull/25482" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25482/hovercard">#25482</a></li> <li>๐Ÿ†• <strong>First admin signup after a reset.</strong> Creating the first administrator account is no longer blocked by a previously stored signup setting, so a fresh or reset instance can always be bootstrapped. <a href="https://github.com/open-webui/open-webui/pull/24821" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24821/hovercard">#24821</a></li> <li>๐Ÿชต <strong>JSON exception logging.</strong> With JSON log formatting enabled, exceptions are now recorded correctly with a structured type, message, and stacktrace instead of being dropped, and a logging failure can no longer crash the application. <a href="https://github.com/open-webui/open-webui/issues/25135" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/25135/hovercard">#25135</a>, <a href="https://github.com/open-webui/open-webui/commit/79bf3d28d88e78b0136ef3c3c9f8e7bb85d3cea9">Commit</a></li> <li>๐Ÿงญ <strong>Workspace skills permission.</strong> Users granted only the "workspace.skills" permission can now see the workspace entry in the sidebar and are correctly routed to the skills page from the workspace index. <a href="https://github.com/open-webui/open-webui/pull/24729" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24729/hovercard">#24729</a></li> <li>๐Ÿ” <strong>Resilient database migrations.</strong> Database migrations now skip tables, indexes, and columns that already exist and add missing primary keys to legacy tables, so upgrades succeed even when parts of the schema were manually or partially created beforehand. <a href="https://github.com/open-webui/open-webui/commit/81f611fb73c726cfcfc20ee57a926a543f07e95f">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/f0e88dadc8502ea05b1a00f3155bee7d1cf32249">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/bd9f82d5a681ee94bde44325033447500a0c76bf">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/459b1c3fda2ec3579fbd2ab408d0fdeb07c96b99">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6df09a4039d181f4e2d41324e93cd36c6fb27dfd">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/95840e307a66429168775de389b329487a4311c4">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/6b1df94bf933af92f5c7d093a2d92e2e50d6fdd0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/98d3b2308564e2112290773ea240b90419ebb48d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1b9d22e324181b96511a15cbacc40fdbb439ad79">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/dc0f8ae6f2372b6e5dd42f3520813b09c54146c0">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ee3b14233a642ff1bc38aef03a2418afcf5d6c1d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/1004dad2749bcc369d511315a808d4bb5277854c">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/db2b3d7fd86cc7d76424671ead3c62a3f6302fe7">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/2e1b671e8db49f47d69fd59ece2b58e109ec8b84">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9a8969ca93f8c9109d956518a085be3e2afacc07">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9717ada92fdb3761a217d309f322ee9fbe418d0d">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/d7cfc1e46a8f3e5c8f6758c12ef641f41fb51a39">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/9263b7568eaa83f43e4a118c98490c4f7aaba570">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/73d2065227e651cf90a2cfade721516815743ab4">Commit</a>, <a href="https://github.com/open-webui/open-webui/pull/24722" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24722/hovercard">#24722</a></li> </ul> <h3>Changed</h3> <ul> <li><g-emoji class="g-emoji" alias="warning">โš ๏ธ</g-emoji> <strong>Database Migrations</strong>: This release includes database schema changes; we strongly recommend backing up your database and all associated data before upgrading in production environments. If you are running a multi-worker, multi-server, or load-balanced deployment, all instances must be updated simultaneously, rolling updates are not supported and will cause application failures due to schema incompatibility.</li> <li>โš™๏ธ <strong>Tool-call iteration cap renamed and raised.</strong> The environment variable that limits how many tool calls a single chat response may make is now "CHAT_RESPONSE_MAX_TOOL_CALL_ITERATIONS", with its default raised from 30 to 256 and a new "-1" value for unlimited; the previous "CHAT_RESPONSE_MAX_TOOL_CALL_RETRIES" name continues to work as a fallback, and chats that hit the cap now show a clear error in-chat instead of stopping silently. <a href="https://github.com/open-webui/open-webui/pull/24918" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24918/hovercard">#24918</a>, <a href="https://github.com/open-webui/open-webui/commit/2b99945d2726bdf5aed7b1712f9e3b7b622671df">Commit</a></li> <li>๐Ÿ” <strong>Reduced public "/api/config" exposure.</strong> The "/api/config" response no longer includes several feature flags ("enable_api_keys", "enable_password_change_form", "enable_version_update_check", "enable_public_active_users_count", "enable_easter_eggs") for unauthenticated callers, reducing information disclosure to anonymous visitors. <a href="https://github.com/open-webui/open-webui/commit/245e0ee029e9e10617f62953a9e6f67dd00ecf81">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/ae06e199d5d3f65296a978cc35079bdacba596d2">Commit</a></li> <li>๐Ÿ”‘ <strong>"WEBUI_SECRET_KEY" is now a hard requirement even for unsupported deployments.</strong> Deployments that start the backend in an explicitly unsupported way (such as invoking uvicorn directly) without setting "WEBUI_SECRET_KEY" will now refuse to start instead of falling back to an empty key; the supported start methods (start.sh, start_windows.bat, and "open-webui serve") still set or auto-generate it automatically, so standard deployments are unaffected. Direct Uvicorn startup is not supported. <a href="https://github.com/open-webui/open-webui/pull/25218" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/25218/hovercard">#25218</a></li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.9.5 2026-05-10T18:14:07Z

v0.9.5

<h3>Added</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Redirect-based SSRF protection.</strong> All outbound HTTP requests now block 3xx redirects by default via a new <code>AIOHTTP_CLIENT_ALLOW_REDIRECTS</code> environment variable, preventing redirect-based SSRF where a public URL silently redirects to internal addresses (RFC 1918, loopback, cloud-metadata endpoints). Affected call sites include web fetch, image loading, OAuth discovery, tool server execution, and code interpreter login. <a href="https://github.com/open-webui/open-webui/pull/24491" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24491/hovercard">#24491</a></li> <li>๐Ÿ›ก๏ธ <strong>Iframe content security policy.</strong> Administrators can now configure a Content-Security-Policy for all srcdoc iframes (Artifacts, tool embeds, file previews, citation modals) via the <code>IFRAME_CSP</code> environment variable, restricting what LLM-generated or user-uploaded HTML can load and execute inside previews. <a href="https://github.com/open-webui/open-webui/commit/3bba1c227059a44c7eeefa97b8c69a63bf4f3454">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Granular markdown rendering controls.</strong> Users can now independently disable Markdown rendering for user messages and assistant responses from Interface settings, preventing unintended formatting when pasting text that contains Markdown-sensitive characters. <a href="https://github.com/open-webui/open-webui/commit/4a1064cefd6f48a8b3b02cd31f77838c8802b635">Commit</a></li> <li>๐Ÿ”ง <strong>Terminal proxy response headers.</strong> Administrators can now inject custom response headers into terminal proxy responses via the <code>TERMINAL_PROXY_HEADERS</code> environment variable (JSON object), enabling deployment-specific security headers like sandbox policies for proxied content. <a href="https://github.com/open-webui/open-webui/commit/8d3133fe2835122bffaa4f2ce584730bc9c78981">Commit</a></li> <li>๐Ÿ”Œ <strong>Channel streaming and tool support.</strong> Mentioning a model in a Channel now streams responses in real time and supports the full chat completion pipeline, including native and default function calling, built-in tools (web search, image generation), user tools, MCP tools, filters, and RAG knowledge injection โ€” the same capabilities available in standard chats.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ“ <strong>Notes create and open reliability.</strong> Creating new notes and opening existing notes no longer fails with a TypeError caused by <code>is_pinned</code> being passed to the SQLAlchemy model on create, and passed twice to <code>NoteResponse</code> on read. <a href="https://github.com/open-webui/open-webui/issues/24484" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24484/hovercard">#24484</a>, <a href="https://github.com/open-webui/open-webui/pull/24486" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24486/hovercard">#24486</a></li> <li>๐Ÿ” <strong>Skill public sharing permission enforcement.</strong> Creating or updating skills now filters access grants through the <code>sharing.public_skills</code> permission, preventing non-admin users from making skills publicly accessible without the required permission. <a href="https://github.com/open-webui/open-webui/pull/24494" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24494/hovercard">#24494</a></li> <li>๐Ÿ” <strong>Calendar public sharing permission enforcement.</strong> Creating or updating calendars now filters access grants through a new <code>sharing.public_calendars</code> permission, preventing users from making calendars publicly readable or writable without explicit admin-granted sharing permission. <a href="https://github.com/open-webui/open-webui/pull/24493" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24493/hovercard">#24493</a></li> <li>๐Ÿ” <strong>Feedback user attribution spoofing.</strong> Submitting evaluation feedback can no longer forge the <code>user_id</code> field through mass-assignment, preventing authenticated users from attributing ratings to other users and corrupting Elo leaderboard rankings and admin feedback exports. <a href="https://github.com/open-webui/open-webui/pull/24508" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24508/hovercard">#24508</a></li> <li>๐Ÿ›ก๏ธ <strong>Image URL redirect-based SSRF.</strong> Chat messages containing image URLs no longer follow 3xx redirects to internal addresses during base64 conversion, closing the most reachable redirect-based SSRF variant that required no special permissions or feature flags. <a href="https://github.com/open-webui/open-webui/pull/24524" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24524/hovercard">#24524</a></li> <li>๐Ÿ›ก๏ธ <strong>Collection write access on file processing.</strong> The <code>process_file</code> and <code>process_files_batch</code> retrieval endpoints now enforce collection write-access checks before embedding content, preventing authenticated users from injecting file content into another user's knowledge-base collection. <a href="https://github.com/open-webui/open-webui/pull/24524" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24524/hovercard">#24524</a></li> <li>๐Ÿ” <strong>Tool source code update authorization.</strong> Updating a tool's Python source code now requires <code>workspace.tools</code> or <code>workspace.tools_import</code> permission, preventing users with only a write-access grant from overwriting executable tool code while still allowing metadata edits. <a href="https://github.com/open-webui/open-webui/pull/24513" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24513/hovercard">#24513</a></li> <li>๐Ÿ” <strong>Channel message ownership enforcement.</strong> Updating or deleting messages in group and DM channels now requires message ownership, preventing channel members from tampering with or silently removing other members' messages. <a href="https://github.com/open-webui/open-webui/pull/24506" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24506/hovercard">#24506</a></li> <li>๐Ÿ” <strong>Channel pin write permission.</strong> Pinning and unpinning messages on standard channels now requires write permission instead of read permission, preventing read-only users from modifying pinned content. <a href="https://github.com/open-webui/open-webui/pull/24521" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24521/hovercard">#24521</a></li> <li>๐Ÿ›ก๏ธ <strong>Image generation URL validation.</strong> Generated image URLs are now validated through <code>validate_url()</code> before fetching, aligning the defense-in-depth posture with sibling image-loading paths. <a href="https://github.com/open-webui/open-webui/pull/24518" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24518/hovercard">#24518</a></li> <li>๐Ÿ” <strong>Model params exposure for read-only users.</strong> The per-model API endpoint now strips the <code>params</code> dict (including system prompts) from responses to callers without write access, preventing read-only users from viewing admin-curated model configuration. <a href="https://github.com/open-webui/open-webui/pull/24525" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24525/hovercard">#24525</a></li> <li>๐Ÿ›ก๏ธ <strong>URL parser SSRF bypass.</strong> URL validation now rejects backslash, tab, CR, and LF characters that cause urllib and requests/aiohttp to disagree on the target host, closing a parser-confusion SSRF bypass. <a href="https://github.com/open-webui/open-webui/pull/24534" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24534/hovercard">#24534</a></li> <li>๐Ÿ›ก๏ธ <strong>Profile image MIME-type allowlist.</strong> Serving profile images from data URIs now enforces a strict MIME-type allowlist (PNG, JPEG, GIF, WEBP by default, configurable via <code>PROFILE_IMAGE_ALLOWED_MIME_TYPES</code>) and sets <code>X-Content-Type-Options: nosniff</code>, preventing stored-XSS through SVG or other executable content types. <a href="https://github.com/open-webui/open-webui/commit/15e696691cad98692c329de62ed8a5bdb3a26d4e">Commit</a></li> <li>๐Ÿ” <strong>File ownership in folder and knowledge attachments.</strong> Attaching files to folders or knowledge bases now verifies per-file read access, and folder file lists in chat middleware are filtered to entries the caller can read, preventing unauthorized file content from being injected into RAG context. <a href="https://github.com/open-webui/open-webui/commit/2dbf7b6764a7922458d3b0139687ad6dcd7596d9">Commit</a></li> <li>๐Ÿ” <strong>Shared chat access for owners and admins.</strong> Chat owners can now view and clone their own shared chats without requiring an explicit access grant, and administrators can manage shared chat access controls on any chat. <a href="https://github.com/open-webui/open-webui/commit/3a21b334cce30226750c5c537345dc51bb8bef17">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/315566064aedeff071854b023d09e5f1ea0eb950">Commit</a></li> <li>๐Ÿงต <strong>Legacy chat history self-healing.</strong> Loading legacy conversations now automatically detects broken parent-link graphs in migrated message records, merges missing messages from the embedded JSON history, and backfills them to the normalized table so future loads use the fast path without data loss. <a href="https://github.com/open-webui/open-webui/commit/1388f4568b8f508c26542673dd01f1fa049e798a">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Filter selector reactivity.</strong> Model filter checkboxes now derive state reactively from the current filter list and selected IDs instead of capturing a one-time snapshot at mount, so checkboxes update correctly when model contexts or filter configurations change at runtime. <a href="https://github.com/open-webui/open-webui/commit/d1ef5382377f590f97a6dbaee88f369e6d7c5f6f">Commit</a></li> <li>๐ŸŒ <strong>Portuguese (Brazil) translation updates.</strong> Translations for newly added UI items were added along with a consistency pass across existing entries. <a href="https://github.com/open-webui/open-webui/pull/24503" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24503/hovercard">#24503</a></li> </ul> <h3>Changed</h3> <ul> <li>๐Ÿงน <strong>Removed unauthenticated retrieval status endpoint.</strong> The unauthenticated <code>GET /api/v1/retrieval/</code> status endpoint has been removed as dead code โ€” retrieval configuration is already available through authenticated admin endpoints. <a href="https://github.com/open-webui/open-webui/pull/24497" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24497/hovercard">#24497</a></li> <li>๐Ÿ“‹ <strong>PR template issue requirement.</strong> Pull requests now require a linked Issue or Discussion reference, ensuring better traceability for all contributions. PRs without a linked issue or discussion may be closed without review.</li> </ul> github-actions[bot] tag:github.com,2008:Repository/701547123/v0.9.4 2026-05-09T07:50:17Z

v0.9.4

<h3>Fixed</h3> <ul> <li>๐Ÿ“œ <strong>Chat scroll position on load.</strong> Opening a chat conversation now reliably scrolls to the bottom of the message history, fixing a regression caused by <code>content-visibility: auto</code> where estimated element sizes prevented the initial scroll from reaching the true bottom.</li> </ul> github-actions[bot]
<h3>Added</h3> <ul> <li>๐Ÿ›ก๏ธ <strong>Redirect-based SSRF protection.</strong> All outbound HTTP requests now block 3xx redirects by default via a new <code>AIOHTTP_CLIENT_ALLOW_REDIRECTS</code> environment variable, preventing redirect-based SSRF where a public URL silently redirects to internal addresses (RFC 1918, loopback, cloud-metadata endpoints). Affected call sites include web fetch, image loading, OAuth discovery, tool server execution, and code interpreter login. <a href="https://github.com/open-webui/open-webui/pull/24491" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24491/hovercard">#24491</a></li> <li>๐Ÿ›ก๏ธ <strong>Iframe content security policy.</strong> Administrators can now configure a Content-Security-Policy for all srcdoc iframes (Artifacts, tool embeds, file previews, citation modals) via the <code>IFRAME_CSP</code> environment variable, restricting what LLM-generated or user-uploaded HTML can load and execute inside previews. <a href="https://github.com/open-webui/open-webui/commit/3bba1c227059a44c7eeefa97b8c69a63bf4f3454">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Granular markdown rendering controls.</strong> Users can now independently disable Markdown rendering for user messages and assistant responses from Interface settings, preventing unintended formatting when pasting text that contains Markdown-sensitive characters. <a href="https://github.com/open-webui/open-webui/commit/4a1064cefd6f48a8b3b02cd31f77838c8802b635">Commit</a></li> <li>๐Ÿ”ง <strong>Terminal proxy response headers.</strong> Administrators can now inject custom response headers into terminal proxy responses via the <code>TERMINAL_PROXY_HEADERS</code> environment variable (JSON object), enabling deployment-specific security headers like sandbox policies for proxied content. <a href="https://github.com/open-webui/open-webui/commit/8d3133fe2835122bffaa4f2ce584730bc9c78981">Commit</a></li> <li>๐Ÿ”Œ <strong>Channel streaming and tool support.</strong> Mentioning a model in a Channel now streams responses in real time and supports the full chat completion pipeline, including native and default function calling, built-in tools (web search, image generation), user tools, MCP tools, filters, and RAG knowledge injection โ€” the same capabilities available in standard chats.</li> </ul> <h3>Fixed</h3> <ul> <li>๐Ÿ“ <strong>Notes create and open reliability.</strong> Creating new notes and opening existing notes no longer fails with a TypeError caused by <code>is_pinned</code> being passed to the SQLAlchemy model on create, and passed twice to <code>NoteResponse</code> on read. <a href="https://github.com/open-webui/open-webui/issues/24484" data-hovercard-type="issue" data-hovercard-url="/open-webui/open-webui/issues/24484/hovercard">#24484</a>, <a href="https://github.com/open-webui/open-webui/pull/24486" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24486/hovercard">#24486</a></li> <li>๐Ÿ” <strong>Skill public sharing permission enforcement.</strong> Creating or updating skills now filters access grants through the <code>sharing.public_skills</code> permission, preventing non-admin users from making skills publicly accessible without the required permission. <a href="https://github.com/open-webui/open-webui/pull/24494" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24494/hovercard">#24494</a></li> <li>๐Ÿ” <strong>Calendar public sharing permission enforcement.</strong> Creating or updating calendars now filters access grants through a new <code>sharing.public_calendars</code> permission, preventing users from making calendars publicly readable or writable without explicit admin-granted sharing permission. <a href="https://github.com/open-webui/open-webui/pull/24493" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24493/hovercard">#24493</a></li> <li>๐Ÿ” <strong>Feedback user attribution spoofing.</strong> Submitting evaluation feedback can no longer forge the <code>user_id</code> field through mass-assignment, preventing authenticated users from attributing ratings to other users and corrupting Elo leaderboard rankings and admin feedback exports. <a href="https://github.com/open-webui/open-webui/pull/24508" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24508/hovercard">#24508</a></li> <li>๐Ÿ›ก๏ธ <strong>Image URL redirect-based SSRF.</strong> Chat messages containing image URLs no longer follow 3xx redirects to internal addresses during base64 conversion, closing the most reachable redirect-based SSRF variant that required no special permissions or feature flags. <a href="https://github.com/open-webui/open-webui/pull/24524" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24524/hovercard">#24524</a></li> <li>๐Ÿ›ก๏ธ <strong>Collection write access on file processing.</strong> The <code>process_file</code> and <code>process_files_batch</code> retrieval endpoints now enforce collection write-access checks before embedding content, preventing authenticated users from injecting file content into another user's knowledge-base collection. <a href="https://github.com/open-webui/open-webui/pull/24524" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24524/hovercard">#24524</a></li> <li>๐Ÿ” <strong>Tool source code update authorization.</strong> Updating a tool's Python source code now requires <code>workspace.tools</code> or <code>workspace.tools_import</code> permission, preventing users with only a write-access grant from overwriting executable tool code while still allowing metadata edits. <a href="https://github.com/open-webui/open-webui/pull/24513" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24513/hovercard">#24513</a></li> <li>๐Ÿ” <strong>Channel message ownership enforcement.</strong> Updating or deleting messages in group and DM channels now requires message ownership, preventing channel members from tampering with or silently removing other members' messages. <a href="https://github.com/open-webui/open-webui/pull/24506" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24506/hovercard">#24506</a></li> <li>๐Ÿ” <strong>Channel pin write permission.</strong> Pinning and unpinning messages on standard channels now requires write permission instead of read permission, preventing read-only users from modifying pinned content. <a href="https://github.com/open-webui/open-webui/pull/24521" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24521/hovercard">#24521</a></li> <li>๐Ÿ›ก๏ธ <strong>Image generation URL validation.</strong> Generated image URLs are now validated through <code>validate_url()</code> before fetching, aligning the defense-in-depth posture with sibling image-loading paths. <a href="https://github.com/open-webui/open-webui/pull/24518" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24518/hovercard">#24518</a></li> <li>๐Ÿ” <strong>Model params exposure for read-only users.</strong> The per-model API endpoint now strips the <code>params</code> dict (including system prompts) from responses to callers without write access, preventing read-only users from viewing admin-curated model configuration. <a href="https://github.com/open-webui/open-webui/pull/24525" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24525/hovercard">#24525</a></li> <li>๐Ÿ›ก๏ธ <strong>URL parser SSRF bypass.</strong> URL validation now rejects backslash, tab, CR, and LF characters that cause urllib and requests/aiohttp to disagree on the target host, closing a parser-confusion SSRF bypass. <a href="https://github.com/open-webui/open-webui/pull/24534" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24534/hovercard">#24534</a></li> <li>๐Ÿ›ก๏ธ <strong>Profile image MIME-type allowlist.</strong> Serving profile images from data URIs now enforces a strict MIME-type allowlist (PNG, JPEG, GIF, WEBP by default, configurable via <code>PROFILE_IMAGE_ALLOWED_MIME_TYPES</code>) and sets <code>X-Content-Type-Options: nosniff</code>, preventing stored-XSS through SVG or other executable content types. <a href="https://github.com/open-webui/open-webui/commit/15e696691cad98692c329de62ed8a5bdb3a26d4e">Commit</a></li> <li>๐Ÿ” <strong>File ownership in folder and knowledge attachments.</strong> Attaching files to folders or knowledge bases now verifies per-file read access, and folder file lists in chat middleware are filtered to entries the caller can read, preventing unauthorized file content from being injected into RAG context. <a href="https://github.com/open-webui/open-webui/commit/2dbf7b6764a7922458d3b0139687ad6dcd7596d9">Commit</a></li> <li>๐Ÿ” <strong>Shared chat access for owners and admins.</strong> Chat owners can now view and clone their own shared chats without requiring an explicit access grant, and administrators can manage shared chat access controls on any chat. <a href="https://github.com/open-webui/open-webui/commit/3a21b334cce30226750c5c537345dc51bb8bef17">Commit</a>, <a href="https://github.com/open-webui/open-webui/commit/315566064aedeff071854b023d09e5f1ea0eb950">Commit</a></li> <li>๐Ÿงต <strong>Legacy chat history self-healing.</strong> Loading legacy conversations now automatically detects broken parent-link graphs in migrated message records, merges missing messages from the embedded JSON history, and backfills them to the normalized table so future loads use the fast path without data loss. <a href="https://github.com/open-webui/open-webui/commit/1388f4568b8f508c26542673dd01f1fa049e798a">Commit</a></li> <li>๐ŸŽ›๏ธ <strong>Filter selector reactivity.</strong> Model filter checkboxes now derive state reactively from the current filter list and selected IDs instead of capturing a one-time snapshot at mount, so checkboxes update correctly when model contexts or filter configurations change at runtime. <a href="https://github.com/open-webui/open-webui/commit/d1ef5382377f590f97a6dbaee88f369e6d7c5f6f">Commit</a></li> <li>๐ŸŒ <strong>Portuguese (Brazil) translation updates.</strong> Translations for newly added UI items were added along with a consistency pass across existing entries. <a href="https://github.com/open-webui/open-webui/pull/24503" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24503/hovercard">#24503</a></li> </ul> <h3>Changed</h3> <ul> <li>๐Ÿงน <strong>Removed unauthenticated retrieval status endpoint.</strong> The unauthenticated <code>GET /api/v1/retrieval/</code> status endpoint has been removed as dead code โ€” retrieval configuration is already available through authenticated admin endpoints. <a href="https://github.com/open-webui/open-webui/pull/24497" data-hovercard-type="pull_request" data-hovercard-url="/open-webui/open-webui/pull/24497/hovercard">#24497</a></li> <li>๐Ÿ“‹ <strong>PR template issue requirement.</strong> Pull requests now require a linked Issue or Discussion reference, ensuring better traceability for all contributions. PRs without a linked issue or discussion may be closed without review.</li> </ul> github-actions[bot]
Tip: Highlight text to share or add to ignore lists.  — Download difference patch
For now, Differences are performed on text, not graphically, only the latest screenshot is available.
Screenshot requires Playwright/WebDriver enabled