This commit is contained in:
Classic298 2026-11-07 07:51:49 +00:00 • committed by GitHub
commit d03d5e18da
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -5,6 +5,99 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [0.13.1] - 2026-11-03
### Added
- 💸 **Much cheaper tool chats.** Citation instructions, memory recall, the skills list and attached knowledge are no longer rewritten into the system prompt or your message on every tool round, so earlier parts of the conversation stay identical between requests and providers can serve them from their prompt cache, which makes chats with tools much cheaper.
- 🦾 **Coding agents as models.** On an Open Terminal that offers agents, coding agents such as Claude Code, Codex and Pi now appear in the model picker (one agent per conversation) and can be chatted with or called by voice, with their reasoning effort and service tier as options and their tool requests approved in the chat, while agent chats cannot be regenerated, continued or edited and resent.
- 🚦 **Auto tool permissions.** Administrators can now turn on an Auto tool permission mode (off by default) next to Full access and Ask for approval, where a review model decides which tool calls run automatically and which ask for approval first.
- 🔗 **Personal terminals from native apps.** Native apps on your own computer can now sign in with renewable sessions (90 days without use by default, set with "SESSION_EXPIRES_IN"), appear as a personal terminal in chats and receive notifications even with no page open, with terminal output that resumes after a dropped connection.
- 🖱️ **Drag chats into side panel.** Dragging a chat from the sidebar onto the chat area opens it as a side chat tab, and a side chat can now also be started from an empty new chat.
- 🪟 **Split tab panes.** On large screens, dragging a tab or a chat to the edge of the workspace, or pressing the new Split screen button, splits it into resizable panes, so several tabs, including the chat, stay visible side by side.
- 🎹 **Tab keyboard shortcuts.** New shortcuts, which can be changed in Settings > Keyboard, open the Files, Desktop, Comments, new chat, new file, new terminal and new browser tabs, close and switch between tabs and toggle the split screen.
- 🪄 **Quick open files.** A new shortcut, Cmd+P (Ctrl+P elsewhere), opens a search box that finds files in the selected terminal by name or path and opens the one you pick in a tab.
- 🛠️ **Default tools for models.** The Model Defaults section in the admin Models settings now has a Tools picker, models without their own tool list start new chats with those tools enabled, and the new model form preselects them. [#33749](https://github.com/open-webui/open-webui/pull/33749), [#33787](https://github.com/open-webui/open-webui/pull/33787)
- ✉️ **Non-ASCII email addresses.** The sign-up page and the add and edit user dialogs now accept email addresses with non-ASCII characters. [#33693](https://github.com/open-webui/open-webui/pull/33693), [#33681](https://github.com/open-webui/open-webui/issues/33681)
- 📚 **Full text for small files.** Files whose extracted text fits within a new character threshold (50000 by default, set with "RAG_FULL_TEXT_CHAR_THRESHOLD" or in the admin Documents settings) are now included in full instead of through retrieval, both when Preload files adds the content to the conversation and when the model reads an attached file with its file search tool, and the file viewer shows when this happens automatically.
- 📂 **Folder default terminal.** A folder can now have a default terminal and working directory in its Advanced settings, used for new chats in that folder.
- 🧭 **Tool Search engines.** Tool Search in the admin Interface settings can now match tools with embeddings from the Documents embedding model (kept in memory, not stored) or by sending the query and tool definitions to a relevance-scoring API, besides the default keyword search.
- 🔧 **More forgiving tool calls.** Tool calls with arguments wrapped in code fences, encoded twice or sent as text instead of numbers and booleans now run, and tool calls a model writes out as plain text markup are recognised and executed.
- 🛑 **Tool loop stops.** A tool call that fails twice in a row with the same arguments now ends the tool loop so the model writes a final answer, and a reply cut off by the token limit no longer runs its unfinished tool calls.
- ⌨️ **Faster typing after large pastes.** Typing in the chat input after pasting 16,000 lines of text is now about 117 times faster, down from 8.6 seconds to 74 milliseconds per keystroke. [#33729](https://github.com/open-webui/open-webui/pull/33729), [#12087](https://github.com/open-webui/open-webui/issues/12087)
- ⚡ **Faster terminal rendering.** The terminal tab now renders with WebGL where the browser supports it and takes in bursts of output in larger batches, so heavy output is handled faster.
- ⏱️ **Faster large chats.** Large chats now open about twice as fast, and marking a chat as read or unread or removing a tag from it is 4 to 6 times faster. [#33665](https://github.com/open-webui/open-webui/pull/33665), [#33666](https://github.com/open-webui/open-webui/pull/33666)
- 🪶 **Lighter reasoning streams.** Long reasoning replies from providers such as OpenRouter now send far less data to the browser and to Redis while they stream. [#33698](https://github.com/open-webui/open-webui/pull/33698)
- 🏎️ **Faster chat access checks.** Sending messages, typing indicators, shared links, comments and file access no longer load the whole conversation just to check who may access it, which helps most on large chats. [#33667](https://github.com/open-webui/open-webui/pull/33667), [#33669](https://github.com/open-webui/open-webui/pull/33669)
- 🚀 **Faster channels.** The channel list, the channel messages and the replied-to messages in a channel now load much faster, especially with many channels or many replies. [#33690](https://github.com/open-webui/open-webui/pull/33690), [#33691](https://github.com/open-webui/open-webui/pull/33691), [#33688](https://github.com/open-webui/open-webui/pull/33688)
- 🗂️ **Faster sidebar chat list.** The chat list in the sidebar now appears as soon as its own data is ready instead of waiting for the channel list. [#33686](https://github.com/open-webui/open-webui/pull/33686)
- 🧮 **Faster Redis filter lookups.** With Redis enabled, chat requests now look up the filters of a model faster. [#33668](https://github.com/open-webui/open-webui/pull/33668)
- 🌿 **Git panel feedback and resizing.** The Git panel now shows what it is doing, such as staging, pushing or fetching, and its file list can be resized.
- 🌍 **Client IP header placeholders.** Custom headers of connections can now use "{{USER_IP}}" and "{{X_FORWARDED_FOR}}" to pass the client address on to the upstream provider, and both are empty for automations and background jobs. [#33833](https://github.com/open-webui/open-webui/pull/33833), [#33819](https://github.com/open-webui/open-webui/issues/33819)
- 🗒️ **Descriptions in model pickers.** The tool, skill, filter, action and sub-agent pickers in the model editor now show each item's description under its name. [#33723](https://github.com/open-webui/open-webui/pull/33723)
- 🧹 **Discard any Git change.** The Git panel can now discard staged and new files too, and its confirmation warns that files not in the last commit are deleted and that this cannot be undone.
- 🔔 **Notifications open their chat.** Clicking a desktop notification now brings Open WebUI to the front and opens the related chat, channel or calendar.
- 📄 **MinerU 4.1 support.** The MinerU document loader in local mode now works with MinerU 4.1 servers, which previously failed on every document. [#33719](https://github.com/open-webui/open-webui/pull/33719), [#33718](https://github.com/open-webui/open-webui/issues/33718)
- ♿ **Keyboard and screen reader fixes.** Buttons keep keyboard focus while they save, cancelling a message edit or switching message versions keeps focus in place, the show password button is wide enough to hit, the sign-in skip link moves focus to the form, the page buttons keep keyboard focus at the first and last page, sorting or paging a workspace or notes list keeps focus in place, closing a channel thread, a note panel or a chat menu returns focus to where it was, generating a note title keeps focus in the title field, and holding Shift no longer swaps row buttons for Delete while a keyboard user has focus.
- 🔄 **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security.
- 🌐 **Translation updates.** Translations for Portuguese (Brazil), Azerbaijani, Basque, Bengali, Bosnian, Bulgarian, Cebuano, Croatian, Czech, Danish, Dutch, Estonian, Faroese, Filipino, Galician, Georgian, German, Greek, Hebrew, Hindi, Hungarian, Indonesian, Irish, Japanese, Kabyle, Korean, Lithuanian, Malay, Norwegian Bokmål, Persian, Polish, Punjabi, Romanian, Russian, Serbian, Slovak, Slovenian, Spanish (Spain), Swedish, Tamil, Thai, Tibetan, Turkish, Turkmen, Ukrainian, Urdu, Uyghur and Vietnamese were enhanced and expanded.
### Fixed
- 🛡️ **Security Advisory**: This release contains **security fixes**. We **strongly recommend updating** all deployments **as soon as possible** to have the latest security fixes in place. These fixes are **not listed in this changelog**; we will publish the security advisories for them immediately following CVE assignment. [Advisories](https://github.com/open-webui/open-webui/security)
- 🔐 **Terminal Session authentication.** Terminal connections set to Session authentication now accept an API key, so Verify Connection, the policy settings and the terminal tools work again. [#33699](https://github.com/open-webui/open-webui/pull/33699), [#30001](https://github.com/open-webui/open-webui/issues/30001), [#33579](https://github.com/open-webui/open-webui/issues/33579)
- 🗓️ **Automation schedule examples.** Models creating automations through the built-in tool no longer hit "Invalid RRULE" errors caused by a wrong example schedule format. [#33732](https://github.com/open-webui/open-webui/pull/33732), [#33730](https://github.com/open-webui/open-webui/issues/33730)
- 📖 **File read size limit.** Reading a file by line range now stops at the same size limit as other reads, so one read can no longer overflow the context window of the model. [#33696](https://github.com/open-webui/open-webui/pull/33696), [#33607](https://github.com/open-webui/open-webui/issues/33607)
- 🎨 **OpenAI image default model.** Image generation with the OpenAI engine now defaults to GPT-IMAGE 2 instead of the shut-down DALL·E 2, and the shut-down DALL·E models are no longer offered. [#33694](https://github.com/open-webui/open-webui/pull/33694), [#33578](https://github.com/open-webui/open-webui/issues/33578)
- 🦙 **Ollama broken tool calls.** Chats with Ollama models no longer get stuck after a tool call with cut-off, rejected or empty arguments. [#33697](https://github.com/open-webui/open-webui/pull/33697), [#33671](https://github.com/open-webui/open-webui/issues/33671)
- 🧠 **Complete compaction summaries.** Context compaction summaries are no longer cut off at 1000 tokens, which could leave reasoning models with an empty or truncated summary. [#33726](https://github.com/open-webui/open-webui/pull/33726)
- 💾 **Prompt cache on tool results.** Tool results sent through OpenAI-compatible gateways now keep their prompt cache marker, so Anthropic models behind OpenRouter or LiteLLM can cache the prefix in tool loops. [#33757](https://github.com/open-webui/open-webui/pull/33757), [#33755](https://github.com/open-webui/open-webui/issues/33755)
- 💬 **Temporary chat button with tabs.** The Temporary Chat button is back on new chats when the tabbed layout is on. [#33680](https://github.com/open-webui/open-webui/pull/33680)
- 🖼️ **Stable MCP app views.** MCP apps in chat no longer reload and lose their state while the message around them updates.
- 🔎 **External knowledge base queries.** External knowledge bases now search with every generated query at the same time instead of using only the results of the first one. [#33704](https://github.com/open-webui/open-webui/pull/33704), [#33184](https://github.com/open-webui/open-webui/issues/33184)
- 📊 **Large spreadsheet uploads.** Uploading a large, sparsely filled spreadsheet no longer takes minutes and stalls the server. [#33770](https://github.com/open-webui/open-webui/pull/33770), [#33768](https://github.com/open-webui/open-webui/issues/33768)
- 🚪 **Automatic SSO sign-in.** With automatic SSO redirect on, an expired session now signs you back in without a state mismatch error. [#33791](https://github.com/open-webui/open-webui/pull/33791), [#33783](https://github.com/open-webui/open-webui/issues/33783)
- 🧰 **Side chat default tools.** New side chats now start with the same default tools, skills, filters and web search as a normal chat with that model. [#33788](https://github.com/open-webui/open-webui/pull/33788)
- 📣 **Banners in tabbed view.** Admin banners and license notices now show on the new chat page when the terminal tabs split the screen. [#33789](https://github.com/open-webui/open-webui/pull/33789)
- 🌫️ **Top bar blur.** The top bars of Workspace, Admin Panel, Playground and Calendar no longer blur a page background image. [#33799](https://github.com/open-webui/open-webui/pull/33799), [#33798](https://github.com/open-webui/open-webui/issues/33798)
- 🗑️ **Feedback model filter.** Deleting the last feedback of a model in the Evaluations feedback list now clears the model filter. [#33794](https://github.com/open-webui/open-webui/pull/33794), [#33793](https://github.com/open-webui/open-webui/issues/33793)
- 📝 **File rename in terminal.** Renaming a file or folder in the Open Terminal file browser no longer shows a false error after the rename succeeded. [#33786](https://github.com/open-webui/open-webui/pull/33786)
- 🧩 **Split tool calls.** When a model sends several tool calls glued into one, the chat no longer shows an extra tool call that never gets a result. [#33779](https://github.com/open-webui/open-webui/pull/33779), [#33778](https://github.com/open-webui/open-webui/issues/33778)
- 🪝 **Webhooks window stability.** The channel Webhooks window no longer jumps back to the webhook list when a new message arrives, so edits in progress are kept. [#33776](https://github.com/open-webui/open-webui/pull/33776), [#33775](https://github.com/open-webui/open-webui/issues/33775)
- 📍 **Location lookup delays.** With location access turned on, sending a message no longer waits for a slow or unanswered browser location request.
- 🔑 **MCP OAuth stays signed in.** The login to an MCP tool server that uses OAuth is no longer lost when the provider has a temporary outage while the token is refreshed. [#33805](https://github.com/open-webui/open-webui/pull/33805), [#33803](https://github.com/open-webui/open-webui/issues/33803)
- 🎧 **Background audio on iOS.** With Auto-Playback Response off, tapping in Open WebUI or opening a chat no longer stops audio playing in other apps on iOS. [#33780](https://github.com/open-webui/open-webui/issues/33780)
- 📌 **File preview from Controls.** A file preview opened from the Controls menu no longer closes when you click inside it. [#33831](https://github.com/open-webui/open-webui/pull/33831), [#33828](https://github.com/open-webui/open-webui/issues/33828)
- 🔭 **Tab bar and UI scale.** Tab content no longer slides under the tab bar when the UI scale is above 1. [#33830](https://github.com/open-webui/open-webui/pull/33830), [#33829](https://github.com/open-webui/open-webui/issues/33829)
- 🔕 **Channel notifications clear on read.** Opening a channel now marks its notifications as read.
- 📓 **Notes search results.** The notes list no longer shows the results of an older search after you type a newer one.
- ⏩ **Continued replies on Responses connections.** Continuing a reply on a Responses API connection now adds the new text to the existing reply.
- 🔘 **Desktop app top clicks.** In the desktop app, banners and menus near the top of the window now take clicks instead of dragging the window.
- 📡 **Tabs over plain HTTP.** The New File, New Terminal and Browser tabs in the side panel now open when Open WebUI is reached over plain HTTP on a LAN or Docker address. [#33847](https://github.com/open-webui/open-webui/pull/33847), [#33845](https://github.com/open-webui/open-webui/issues/33845)
- 🔬 **Preview zoom stability.** Zooming in PDF, Word and PowerPoint previews no longer resets or drifts when you switch tabs, change slides or resize the pane. [#33836](https://github.com/open-webui/open-webui/pull/33836)
- 🧱 **Milvus knowledge base uploads.** Adding a file to a knowledge base on Milvus no longer processes the file a second time or stores its chunks twice. [#33745](https://github.com/open-webui/open-webui/pull/33745), [#33744](https://github.com/open-webui/open-webui/issues/33744)
- 📁 **Working folder in new chats.** The terminal working folder of a new chat is no longer reset to the root when the chat is created before the file browser has finished loading.
- 🖥️ **Terminal kept on model switch.** Switching to a model without its own default terminal no longer turns off the terminal selected in the chat.
- 📜 **Quieter MCP connection logs.** Logs no longer fill with a warning for every MCP server a user has not connected yet each time they load Open WebUI. [#33663](https://github.com/open-webui/open-webui/pull/33663)
- 🔇 **Queries kept out of logs.** The default server log no longer contains your search queries or the provider address of a failing external reranker. [#33701](https://github.com/open-webui/open-webui/pull/33701)
- 🪪 **OAuth token refresh warnings.** Refreshing OAuth tokens with a client secret no longer logs deprecation warnings on every call. [#33700](https://github.com/open-webui/open-webui/pull/33700), [#33297](https://github.com/open-webui/open-webui/issues/33297)
- 🕵️ **Audit log secret masking.** With request auditing on, the audit log now masks API keys, tokens and secrets saved in the admin settings, not only passwords. [#33746](https://github.com/open-webui/open-webui/pull/33746)
- 🏷️ **Visible controls labels.** Six toggles under Visible controls in the Admin Interface settings now show their names instead of raw translation keys. [#33734](https://github.com/open-webui/open-webui/pull/33734)
### Changed
- ⚠️ **Database Migrations**: 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.
- 💥 **Preload files off by default.** With native function calling, the default, attached files are no longer added to the conversation automatically and models read them through their file tools instead, so models without the Files built-in tool or without tool support lose access to attached file contents unless Preload files is turned on for them, while legacy function calling and API requests that do not come from a chat in the web UI keep it on. [#33815](https://github.com/open-webui/open-webui/pull/33815)
- ↔️ **Always full-width tabs.** On large screens the tabbed workspace is now always full width with the chat as one of its tabs, and the toggle between side tabs and full-width tabs is gone.
- 🗨️ **Side chats are saved.** Side chats are now saved as regular chats that appear in the chat list, and stay temporary only when you turn on Temporary Chat in the side chat or your admin enforces temporary chats.
- 🔓 **Side chat permission.** The Allow Side Chat permission no longer requires the Temporary Chat permission.
- 🧷 **Context as hidden tool results.** With native function calling, memory recall, the skills list and the attached knowledge list now arrive as hidden tool results after your message instead of in the system prompt, so custom pipes can see a tool message as the last message.
- ⛔ **Terminal select setting removed.** The Show Files on Terminal Select setting has been removed from the Interface settings.
- 🚧 **Tool call limit.** Reaching the tool call limit now makes the model write a final answer without tools instead of ending the reply with a limit error.
- 🔦 **Tool Search prompt.** With Tool Search on, the model no longer sees a list of the hidden tools and finds them only by searching.
- 🎯 **Retrieval defaults.** The defaults for "RAG_TOP_K" and "RAG_TOP_K_RERANKER" are now 10 instead of 3 and "CHUNK_SIZE" is now 1024 instead of 1000, unless you saved your own values.
- ✏️ **Always Use Full Text.** The Full Context Mode setting in the admin Documents settings is now called Always Use Full Text and includes complete documents regardless of the full text threshold.
## [0.13.0] - 2026-11-02
### Added