From 0b1c76e12ee222bbd94e4154f20b07efed95cc1c Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 3 Sep 2026 19:04:47 +0000 Subject: [PATCH 01/88] chore: open the 0.11.4 changelog Starts the section for the commits landed on dev after the 0.11.3 entry was merged. Fixed records the direct connection listener left behind on every request that ended badly, the metadata attached to an uploaded file that never reached the retrieved sources, the slash command menu showing white text on white in the light theme, and image editing refusing an image the instance already held. Added carries the general improvements placeholder and the Traditional Chinese, Korean and Finnish catalogues. The tailwind reflow and the raw string escapes are omitted, the first being whitespace and the second changing nothing that is visible today, though it keeps the knowledge filesystem tools importable on a later Python. --- CHANGELOG.md | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3df9f2e702..3bf39e091e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,20 @@ 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.11.4] - 2026-09-03 + +### Added + +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. +- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, and Finnish were enhanced and expanded. + +### Fixed + +- ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) +- ๐Ÿท๏ธ **Custom file metadata reaches the model.** Metadata attached to an uploaded file now travels with the pieces that file is split into, so it arrives with the retrieved sources instead of staying behind on the file record. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486) +- ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) +- ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) + ## [0.11.3] - 2026-08-31 ### Added From d4a5aba6e890e25cfa6987396535c53807ff6944 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 3 Sep 2026 20:23:08 +0000 Subject: [PATCH 02/88] chore: extend the metadata and translation entries in 0.11.4 The metadata entry gains the follow-up that trims what travels with each piece of a file, keeping the oversized and internal fields out of every chunk and picking up metadata nested a level down, and is recorded there rather than as a second entry because it continues the same story. The translation entry gains the Russian and Ukrainian catalogues. The settings group headings and the keys added for them are omitted: the new keys carry no translation in any catalogue yet, so every heading still reads as it did, and the change only makes them translatable later. --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3bf39e091e..00861e2d0d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,12 +10,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. -- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, and Finnish were enhanced and expanded. +- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, and Ukrainian were enhanced and expanded. ### Fixed - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) -- ๐Ÿท๏ธ **Custom file metadata reaches the model.** Metadata attached to an uploaded file now travels with the pieces that file is split into, so it arrives with the retrieved sources instead of staying behind on the file record. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486) +- ๐Ÿท๏ธ **Custom file metadata reaches the model.** Metadata attached to an uploaded file now travels with the pieces that file is split into, so it arrives with the retrieved sources instead of staying behind on the file record, with the oversized and internal fields left out. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) From 26dcc057bd1bf2fd3cc7b0bfc91940c211f450fd Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 3 Sep 2026 20:24:58 +0000 Subject: [PATCH 03/88] chore: add the security advisory notice to 0.11.4 Adds the standard notice as the first item in the Fixed section. The release touches the guard that keeps image editing from reaching private addresses, and carries a listener leak a caller could drive without limit, so it meets the trigger the format sets for the notice. The notice is the fixed wording and takes no reference links of its own; the individual entries keep theirs. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 00861e2d0d..2ae76f1b78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed +- ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿท๏ธ **Custom file metadata reaches the model.** Metadata attached to an uploaded file now travels with the pieces that file is split into, so it arrives with the retrieved sources instead of staying behind on the file record, with the oversized and internal fields left out. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) From 377e83a51c0b18f0d30a51b90a547edc9274f607 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 3 Sep 2026 20:25:42 +0000 Subject: [PATCH 04/88] chore: record the file metadata entry as an addition in 0.11.4 Metadata attached to an upload reaching the retrieved sources is a capability that was not there before rather than a correction, so the entry moves to Added and leads that section, ahead of the general improvements placeholder and the translation entry in their reserved places. The wording drops the framing that described it as something no longer going missing; its pull request, issue and follow-up commit travel with it unchanged. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ae76f1b78..b96f35427c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- ๐Ÿท๏ธ **Custom file metadata reaches the model.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, and Ukrainian were enhanced and expanded. @@ -16,7 +17,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) -- ๐Ÿท๏ธ **Custom file metadata reaches the model.** Metadata attached to an uploaded file now travels with the pieces that file is split into, so it arrives with the retrieved sources instead of staying behind on the file record, with the oversized and internal fields left out. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) From 9cf3504faf4a6c0f897d7368e945cc12f8e5ce56 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 3 Sep 2026 20:26:08 +0000 Subject: [PATCH 05/88] chore: give the file metadata entry a noun phrase label The label read as an outcome, which suits a correction rather than an addition and left the entry sounding like something that had stopped going wrong. It is now the plain noun phrase the format asks of a label, with the sentence beneath carrying what the metadata now does. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b96f35427c..4c10b58273 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿท๏ธ **Custom file metadata reaches the model.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) +- ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, and Ukrainian were enhanced and expanded. From 4a3059bc51f980607df5291b32e548a3a47a0e5e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 3 Sep 2026 21:12:43 +0000 Subject: [PATCH 06/88] chore: add the settings group heading entry to 0.11.4 The groundwork that made these headings translatable was held back last time, the keys having landed empty in every catalogue so nothing read differently. Russian and Ukrainian now carry the wording, so the change shows and the entry joins Fixed at the foot of the section, below the corrections that reach further. The two commits that made the headings translatable are referenced; the catalogues that filled them sit in the translation entry, which names both languages and carries no links. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4c10b58273..ca22962364 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) +- ๐Ÿ—‚๏ธ **Translatable settings group headings.** The headings that group the settings pages, such as Basics and Services, now take their wording from the interface language instead of always reading in English. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676) ## [0.11.3] - 2026-08-31 From 2faf98e33901edc52beb2b033571f4d87d818089 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 07:47:10 +0000 Subject: [PATCH 07/88] chore: add the code formatter entry and widen the translation coverage entry in 0.11.4 Fixed leads with the built-in code formatter, which pulled in the formatter but none of the packages it depends on, so saving any tool or function ended in a missing module error however plain the code was. It sits directly below the advisory, being the correction that stops the most people getting their work saved. The settings heading entry widens into one covering every string that was fixed in English, the headings among them, now that labels and messages across the admin pages, the workspace and notifications have been opened up the same way and Spanish, Russian and Ukrainian have filled them in. Its five commits travel together. German and Spanish join the translation entry. --- CHANGELOG.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ca22962364..434c30084b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,15 +11,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. -- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, and Ukrainian were enhanced and expanded. +- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. ### Fixed - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) +- ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) -- ๐Ÿ—‚๏ธ **Translatable settings group headings.** The headings that group the settings pages, such as Basics and Services, now take their wording from the interface language instead of always reading in English. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676) +- ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ## [0.11.3] - 2026-08-31 From 1af996ab6d0035339672eeda9611f9348886c79a Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 15:31:00 +0000 Subject: [PATCH 08/88] chore: add the notes shortcut and web citation entries to 0.11.4 Added records the shortcut that turns a note's menu button into a delete button while Shift is held, ahead of the placeholder and translation entries in their reserved places. Fixed records the pages a web search only listed no longer being offered as things to cite, which had produced citations pointing at the wrong result under a title that read as correct. It sits directly below the code formatter, a citation that is wrong being worse to a reader than one that is missing. --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 434c30084b..7eb05c8a8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) +- ๐Ÿ—‘๏ธ **Quick delete for notes.** Holding Shift over a note in the list or grid turns its menu button into a delete button, removing the note in one click rather than the three the menu and its confirmation ask for. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. @@ -17,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) +- ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) From 6a713c1bc0f4f19ab55c55993551428272ff03eb Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 15:46:45 +0000 Subject: [PATCH 09/88] chore: add the version check, ligature and search entries to 0.11.4 Fixed gains the version check that reported whatever it was running as the newest release whenever it could not reach the listing, and logged nothing about it, which is placed high because an administrator reads it as an answer rather than a failure. It also gains the arrow sequences drawn as glyphs, which had text look altered although every character was stored and sent as typed; that one sits with the other reading corrections. Added gains the text search moved off the path the server answers on, so a long search no longer keeps other requests waiting. The metadata entry gains the four vector stores that never applied the shared size cap, coercion and sanitising, bringing them in line with the other eleven rather than standing as an entry of its own. --- CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7eb05c8a8d..dfa3cefed7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,8 +9,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2) +- ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes.** Holding Shift over a note in the list or grid turns its menu button into a delete button, removing the note in one click rather than the three the menu and its confirmation ask for. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633) +- โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. @@ -19,8 +20,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) +- ๐Ÿ”ผ **Honest version checks.** 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. [#29626](https://github.com/open-webui/open-webui/pull/29626), [#29580](https://github.com/open-webui/open-webui/issues/29580) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) +- โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) - ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) From e14132c5de833890db410b5980ed46e671a9e6f5 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 16:00:13 +0000 Subject: [PATCH 10/88] chore: extend the quick delete entry to automations in 0.11.4 The shortcut that turns a note's trailing controls into a delete button now does the same for a row on the automations page, so the entry names both places and carries both pull requests with the issues they close, rather than repeating itself for the second surface. The pass blanking redundant English values in the en-US catalogue is omitted: the key stands in for the value there, so nothing reads differently. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dfa3cefed7..4f8f437d5d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) -- ๐Ÿ—‘๏ธ **Quick delete for notes.** Holding Shift over a note in the list or grid turns its menu button into a delete button, removing the note in one click rather than the three the menu and its confirmation ask for. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633) +- ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. From 66b8c36a8ff173934af960cbfea9c1aa8ee7869a Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 19:57:07 +0000 Subject: [PATCH 11/88] chore: add the note from search entry to 0.11.4 Fixed records the three ways starting a note from the search box went wrong, as one entry because they are one action: the browser back button making a further note on every press, the action doing nothing at all when the notes page was already open, and the typed text losing everything from the first ampersand or hash onwards. It sits below the listener leak, unwanted notes being a nuisance rather than something that grows on the server. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f8f437d5d..cfe085e6e5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -22,6 +22,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) - ๐Ÿ”ผ **Honest version checks.** 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. [#29626](https://github.com/open-webui/open-webui/pull/29626), [#29580](https://github.com/open-webui/open-webui/issues/29580) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) +- ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) From 556ee730cf17ec0d9f0b58256b74613ade4aeba1 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 21:21:01 +0000 Subject: [PATCH 12/88] chore: add the arena, relevance and dialog entries to 0.11.4 Fixed gains the arena model that failed on something unrelated whenever its provider answered with an error, so the reason never reached the chat and titles and tags broke alongside it; it is placed high, a message that fails outright costing more than one that reads oddly. It also gains the relevance figure that a reply drawing on a single source never showed, appearing only once a second source joined it, and the grey band the attach webpage dialog carried between its address box and its button. --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cfe085e6e5..fe1f25b98f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,11 +21,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) - ๐Ÿ”ผ **Honest version checks.** 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. [#29626](https://github.com/open-webui/open-webui/pull/29626), [#29580](https://github.com/open-webui/open-webui/issues/29580) +- ๐ŸŸ๏ธ **Arena models report their errors.** 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. [#29662](https://github.com/open-webui/open-webui/pull/29662), [#29658](https://github.com/open-webui/open-webui/issues/29658) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) +- ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) +- ๐ŸŽจ **A tidier attach webpage dialog.** 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. [#29664](https://github.com/open-webui/open-webui/pull/29664), [#29663](https://github.com/open-webui/open-webui/issues/29663) - ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ## [0.11.3] - 2026-08-31 From 72261b153d031667304c6e9f643df0308f5abe44 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 21:44:04 +0000 Subject: [PATCH 13/88] chore: add the per-language model wording entries to 0.11.4 Added leads with a model carrying its name, description and starter prompts in each language, written in the workspace editor or the admin defaults and chosen by the language the interface is set to, falling back to the plain wording where that language has none. Every part of it arrived together, so it is one entry. Changed opens the section for the saving call that now answers with the suggestions and their per-language wording together where it returned the bare list, which anything reading that response directly has to account for. No schema change travels with it, so the section carries no migration warning. --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fe1f25b98f..d533daf2ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- ๐Ÿ—ฃ๏ธ **Models that speak your language.** A model can now carry a name, a description and prompt suggestions per language, and the workspace editor and the admin defaults let you write them, so the greeting and the starter prompts follow the language the interface is set to, falling back to the plain wording where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) @@ -31,6 +32,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸŽจ **A tidier attach webpage dialog.** 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. [#29664](https://github.com/open-webui/open-webui/pull/29664), [#29663](https://github.com/open-webui/open-webui/issues/29663) - ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) +### Changed + +- ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) + ## [0.11.3] - 2026-08-31 ### Added From 19be91e7291402fcb07ae80f15e8403ad18ac044 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 22:33:42 +0000 Subject: [PATCH 14/88] chore: widen the per-language wording entry in 0.11.4 The mechanism that gave a model its name, description and starter prompts in each language now covers tools, skills, functions, banners and arena entries too, each written in the editor that owns it, so the entry names them rather than standing as a second one beside it. Both commits travel with it. The response shape entry is unchanged: it is the saving call for the admin defaults, which this second commit does not touch. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d533daf2ec..6782cd62c9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ—ฃ๏ธ **Models that speak your language.** A model can now carry a name, a description and prompt suggestions per language, and the workspace editor and the admin defaults let you write them, so the greeting and the starter prompts follow the language the interface is set to, falling back to the plain wording where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) +- ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry its name, description and starter prompts once per language, written in the editor that owns it or in the admin defaults, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) From 5e73aef3fce28612e8967af6a80bc862810a0f58 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 22:39:49 +0000 Subject: [PATCH 15/88] chore: carry the valve labels and translation table into the wording entry The entry named only what a resource is called and says about itself, leaving out the labels on its valves, which are translatable down to the options in a dropdown, and the table each editor now offers in place of the code when a language is picked, with the JSON file it reads and writes. An import that drops a placeholder the original fills in is refused, which is worth the words it takes to say. It stays one entry: every part of this arrived together and none of it existed in another form before. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6782cd62c9..2d22ea9239 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry its name, description and starter prompts once per language, written in the editor that owns it or in the admin defaults, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9) +- ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) From b1d1b7821a2689c9fb82428ce721581c75692fab Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Fri, 4 Sep 2026 23:16:44 +0000 Subject: [PATCH 16/88] chore: add the interface wording and sketch upload entries to 0.11.4 Added records an administrator being able to replace the interface's own wording language by language, which is a separate thing from a model or a tool carrying wording of its own and so stands beside that entry rather than joining it. A replacement that drops a placeholder the original fills in is refused, as it is for the resources. Fixed records the Arduino sketch that failed to upload to a knowledge base because its extension was missing from the list of files read as plain text, so it went to a document extraction server that answered with something the loader could not read. --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2d22ea9239..7d90ff70ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9) +- โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) @@ -26,6 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) +- ๐Ÿ”ง **Arduino sketches upload to knowledge.** 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. [#29673](https://github.com/open-webui/open-webui/pull/29673), [#29670](https://github.com/open-webui/open-webui/issues/29670) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) From 20527ee662ea6204e263444c01fc16ec1d371fa6 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sat, 5 Sep 2026 03:54:06 +0000 Subject: [PATCH 17/88] chore: carry the wording editor follow-ups into the 0.11.4 entry Two follow-ups tidy the editor the per-language wording is written in, dropping the line that said whether a field was translated or using the default and holding back the controls beside a skill or tool name. Neither changes what the entry describes, so they join its links rather than standing on their own. The terminal work is left out: the dock it adds is not rendered anywhere yet, and the rest of that commit rewrites the existing terminal in place and sends two identifying headers upstream, none of which shows to anyone using it. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7d90ff70ba..7826ebda99 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9) +- ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) From 8349df139f414c382698c05e3d34beb3b1342a08 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 19:20:54 +0000 Subject: [PATCH 18/88] chore: add the document escape sequence entry to 0.11.4 Fixed records the escape sequences in an uploaded file being rewritten before the text was stored, so what was indexed and what the model read differed from the file as written, and inconsistently at that, since the rewriting stopped at the first line holding an angle bracket. It sits beside the sketch upload, both being corrections to what a file turns into on its way into knowledge. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7826ebda99..8f2494dd4e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) - ๐Ÿ”ง **Arduino sketches upload to knowledge.** 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. [#29673](https://github.com/open-webui/open-webui/pull/29673), [#29670](https://github.com/open-webui/open-webui/issues/29670) +- ๐Ÿ“„ **Uploaded text kept as written.** 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. [#29736](https://github.com/open-webui/open-webui/pull/29736), [#29732](https://github.com/open-webui/open-webui/issues/29732) - ๐Ÿ”ฆ **Readable slash command labels.** The entries in the slash command menu no longer show as white text on a white background in the light theme. [#29512](https://github.com/open-webui/open-webui/pull/29512), [#29510](https://github.com/open-webui/open-webui/issues/29510) - โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) From 06c70698e5af80550c34b863b0a36c708e1921d3 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 19:23:04 +0000 Subject: [PATCH 19/88] chore: add the Apple Silicon and WebKit entries to 0.11.4 Fixed gains the question against a knowledge base that killed the server outright on a Mac when a reranking model ran locally, placed high, an answer lost with the connection costing more than one that reads oddly. It also gains the two separate things the WebKit pull request corrects, kept apart because a reader meets them as different problems: an assistant reply coming up blank on Apple devices whose browser never says Safari, and the sidebar hover preview laid out at the width of a full conversation there since 0.11.0. --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8f2494dd4e..ee559f9f45 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -21,11 +21,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) +- ๐ŸŽ **Answers survive on Apple Silicon.** 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. [#29735](https://github.com/open-webui/open-webui/pull/29735), [#29722](https://github.com/open-webui/open-webui/issues/29722) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) - ๐Ÿ”ผ **Honest version checks.** 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. [#29626](https://github.com/open-webui/open-webui/pull/29626), [#29580](https://github.com/open-webui/open-webui/issues/29580) - ๐ŸŸ๏ธ **Arena models report their errors.** 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. [#29662](https://github.com/open-webui/open-webui/pull/29662), [#29658](https://github.com/open-webui/open-webui/issues/29658) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) +- ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) - ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) - ๐Ÿ”ง **Arduino sketches upload to knowledge.** 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. [#29673](https://github.com/open-webui/open-webui/pull/29673), [#29670](https://github.com/open-webui/open-webui/issues/29670) - ๐Ÿ“„ **Uploaded text kept as written.** 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. [#29736](https://github.com/open-webui/open-webui/pull/29736), [#29732](https://github.com/open-webui/open-webui/issues/29732) @@ -33,6 +35,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) - ๐ŸŽจ **A tidier attach webpage dialog.** 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. [#29664](https://github.com/open-webui/open-webui/pull/29664), [#29663](https://github.com/open-webui/open-webui/issues/29663) +- ๐Ÿ‘๏ธ **Compact hover previews in Safari.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734) - ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ### Changed From 4280236ba0c7a3d01d238336420804e7a94172be Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 19:33:08 +0000 Subject: [PATCH 20/88] chore: add the terminal dock entry to 0.11.4 Added leads with the terminal pane carrying a tab for every command a model is running beside the shell, which is the most visible thing in the release for anyone who watches an agent work. It was held back earlier on the reading that the dock was built but never rendered. That reading came from searching a checkout that predated the commit; the commit swaps the single terminal for the dock in the files pane, so it has been in front of people since it landed. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ee559f9f45..04f7fa7529 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) From 79cb5ae61996a7b7388c7bf3610cb9e99d58b013 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 19:41:54 +0000 Subject: [PATCH 21/88] chore: add the note date entry to 0.11.4 Fixed records the date beneath a note title, which was wrapped in a button left over from an earlier styling pass, so it took a pointing hand and announced itself as something to press while doing nothing at all. It sits at the foot of the section beside the dialog banding, both being small corrections to how something looks rather than what it does. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 04f7fa7529..80525c93f1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โŒจ๏ธ **Arrows stay as you typed them.** 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. [#29595](https://github.com/open-webui/open-webui/pull/29595), [#29594](https://github.com/open-webui/open-webui/issues/29594) - ๐Ÿ–Œ๏ธ **Editing an image you uploaded.** 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. [Commit](https://github.com/open-webui/open-webui/commit/50413f34824ea49d5b94d3a97f3fe4bb2e881e38) - ๐ŸŽจ **A tidier attach webpage dialog.** 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. [#29664](https://github.com/open-webui/open-webui/pull/29664), [#29663](https://github.com/open-webui/open-webui/issues/29663) +- ๐Ÿ–ฑ๏ธ **A plain note date.** 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. [#29708](https://github.com/open-webui/open-webui/pull/29708) - ๐Ÿ‘๏ธ **Compact hover previews in Safari.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734) - ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) From c5699a0f25282b51b7884e4c41a715393589b490 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 20:27:53 +0000 Subject: [PATCH 22/88] chore: add the token logging, model picture and image size entries to 0.11.4 Fixed leads, below the advisory, with the credentials an identity provider handed over being written into the application log when a sign-in failed part way through, and with the model picture that any signed-in person could fetch whatever their access, which also told them whether a model id existed at all. Both sit above the rest of the section, a credential in a log file and a way to enumerate what a server holds costing more than anything below them. Changed records the consequence a viewer will notice: a model picture falling back to the standard logo wherever no grant is held, which is a change to what people see rather than a correction, so it is kept apart from the entry above. Added records the container image losing the second Python it never used. --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 80525c93f1..4691a15e14 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,12 +15,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python and its headers that nothing in it used, taking about sixty megabytes off what has to be pulled. [#29731](https://github.com/open-webui/open-webui/pull/29731) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. ### Fixed - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) +- ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) +- ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) - ๐ŸŽ **Answers survive on Apple Silicon.** 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. [#29735](https://github.com/open-webui/open-webui/pull/29735), [#29722](https://github.com/open-webui/open-webui/issues/29722) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) @@ -43,6 +46,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) +- ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) ## [0.11.3] - 2026-08-31 From 176cccc4a507abd9a4ad6f8c360c3e7d6d9b4e3b Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 20:41:23 +0000 Subject: [PATCH 23/88] chore: gather the image size work and add the docx preview entries to 0.11.4 The image size entry now carries the fonts nothing loaded and the packages nothing imports alongside the second Python it already named, with all four pull requests, and states the running total rather than the one measurement it started from. They are one entry because a reader meets them as one thing: less to pull. Changed records what that costs anyone whose tool or function imported a package it never declared, which worked only while the package happened to be in the image. Fixed records the Word document preview no longer rendering an HTML sub-document embedded in the file, and refusing a link that points anywhere but a web address, a mail address or a telephone number. --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4691a15e14..6cc002237b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python and its headers that nothing in it used, taking about sixty megabytes off what has to be pulled. [#29731](https://github.com/open-webui/open-webui/pull/29731) +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, or packages nothing imports, taking around two hundred and fifty megabytes off what has to be pulled. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) +- ๐Ÿ“Ž **Safer Word document previews.** 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. [#29699](https://github.com/open-webui/open-webui/pull/29699) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) - ๐ŸŽ **Answers survive on Apple Silicon.** 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. [#29735](https://github.com/open-webui/open-webui/pull/29735), [#29722](https://github.com/open-webui/open-webui/issues/29722) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) @@ -47,6 +48,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) +- ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) ## [0.11.3] - 2026-08-31 From 2d387fd6659a1ffba8e4ffc3646fe37df08dc123 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 20:42:44 +0000 Subject: [PATCH 24/88] chore: write the image size figure in digits The file gives every measurement in digits and spells out only counts of things, so the size the image loses is written the same way as the ones recorded before it. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6cc002237b..9893d785b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, or packages nothing imports, taking around two hundred and fifty megabytes off what has to be pulled. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, or packages nothing imports, taking around 250 MB off what has to be pulled. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. From d9baf075c1670123caed9313559299f17c36756a Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 20:52:15 +0000 Subject: [PATCH 25/88] chore: add the slim image entry to 0.11.4 Changed records the slim image giving up the local models and converters it carried, so an instance built that way now needs a service configured for embeddings, vector storage, document extraction past plain text, and speech, and refuses to build alongside the graphics card or Ollama options. The admin pages mark what is unavailable and the server answers with what to configure, both part of the same change. It is kept out of the image size entry above, which gathers what was carried and never used; this one removes things that were used and asks for them from somewhere else. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9893d785b1..a734169353 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -48,6 +48,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) +- ๐Ÿชถ **Slim relies on outside services.** The slim image no longer carries the local models and converters it used to, so embeddings, vector storage, document extraction beyond plain text and speech each need a service configured for them, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) ## [0.11.3] - 2026-08-31 From e2b1298d13b20dceae5bc26946229b76ecb0febd Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 20:56:35 +0000 Subject: [PATCH 26/88] chore: correct the slim entry and add the citation link entry to 0.11.4 The slim entry read as though a service had to be configured before the image would run. It does not: the vector client is built on first use behind a lock, the speech engine raises only when one is asked for, and extraction raises per file, so an instance starts and holds a conversation with none of it in place and each feature asks for what it needs when it is reached. The entry now says that. The image size entry gains the slim build leaving behind the tool that installed its packages and the source maps built beside the interface. Fixed gains the source attached to a reply opening only where it points at a web address, which sits with the document preview correction, both being about where a link in something the model handed back is allowed to go. Portuguese (Brazil) joins the translation entry. --- CHANGELOG.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a734169353..033bafeb6b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,9 +15,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, or packages nothing imports, taking around 250 MB off what has to be pulled. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, or packages nothing imports, taking around 250 MB off what has to be pulled, and the slim image also leaves behind the tool that installed its packages and the source maps built beside the interface. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. -- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, and Spanish were enhanced and expanded. +- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded. ### Fixed @@ -25,6 +25,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿ“Ž **Safer Word document previews.** 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. [#29699](https://github.com/open-webui/open-webui/pull/29699) +- ๐Ÿšฆ **Citation links go to the web only.** 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. [#29701](https://github.com/open-webui/open-webui/pull/29701) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) - ๐ŸŽ **Answers survive on Apple Silicon.** 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. [#29735](https://github.com/open-webui/open-webui/pull/29735), [#29722](https://github.com/open-webui/open-webui/issues/29722) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) @@ -48,7 +49,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) -- ๐Ÿชถ **Slim relies on outside services.** The slim image no longer carries the local models and converters it used to, so embeddings, vector storage, document extraction beyond plain text and speech each need a service configured for them, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) ## [0.11.3] - 2026-08-31 From 9a35025e2106f9a436d8396b203d18d67d349c18 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:00:45 +0000 Subject: [PATCH 27/88] chore: add the BuildKit entry and fold the install tool into the size entry The install tool now leaves every image rather than only the slim one, since it is mounted for the install step instead of being installed and removed, so the size entry names it among what the image no longer carries and the slim clause keeps only the source maps. Changed records what building the image yourself now takes: the BuildKit builder, which the syntax line alone did not require before, and reach to the registry that tool is fetched from. --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 033bafeb6b..8b906324b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, or packages nothing imports, taking around 250 MB off what has to be pulled, and the slim image also leaves behind the tool that installed its packages and the source maps built beside the interface. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6) +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded. @@ -50,6 +50,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) ## [0.11.3] - 2026-08-31 From c4b4957376f7122f4de755e77c27e0f402a3d607 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:01:36 +0000 Subject: [PATCH 28/88] chore: add the webhook picture and nameless tool call entries to 0.11.4 Fixed gains the channel webhook picture that anyone signed in could fetch, or be sent onward to, without belonging to the channel, which sits directly below the model picture entry, the two being the same gap on two routes. It also gains the tool call arriving with no name at all, which was kept as it came, written into the stored message and handed back on the next turn for the endpoint to refuse, and now fails once where it starts. The line uninstalling the install tool is not recorded: it went in the same breath as the mount that made it unnecessary, and the size entry already says the tool no longer ships. --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b906324b1..a26983091b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) +- ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) - ๐Ÿ“Ž **Safer Word document previews.** 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. [#29699](https://github.com/open-webui/open-webui/pull/29699) - ๐Ÿšฆ **Citation links go to the web only.** 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. [#29701](https://github.com/open-webui/open-webui/pull/29701) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) @@ -31,6 +32,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) - ๐Ÿ”ผ **Honest version checks.** 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. [#29626](https://github.com/open-webui/open-webui/pull/29626), [#29580](https://github.com/open-webui/open-webui/issues/29580) - ๐ŸŸ๏ธ **Arena models report their errors.** 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. [#29662](https://github.com/open-webui/open-webui/pull/29662), [#29658](https://github.com/open-webui/open-webui/issues/29658) +- ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) From 238110fbc41151e8c1dc63f118298c0f7ff598f7 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:02:39 +0000 Subject: [PATCH 29/88] chore: add the tool server request entry to 0.11.4 Fixed records a tool call to an OpenAPI tool server repeating in the body the arguments already placed in the address, which a server checking its input strictly refused, so reading worked and writing through any such address did not. It is placed high, a whole class of tool call failing outright costing more than the corrections below it. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a26983091b..115fddc1ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -28,6 +28,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“Ž **Safer Word document previews.** 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. [#29699](https://github.com/open-webui/open-webui/pull/29699) - ๐Ÿšฆ **Citation links go to the web only.** 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. [#29701](https://github.com/open-webui/open-webui/pull/29701) - ๐Ÿ **Saving a tool or function.** 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. [#29503](https://github.com/open-webui/open-webui/pull/29503) +- ๐Ÿ› ๏ธ **Tool servers accept what they are sent.** 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. [#29717](https://github.com/open-webui/open-webui/pull/29717), [#29716](https://github.com/open-webui/open-webui/issues/29716) - ๐ŸŽ **Answers survive on Apple Silicon.** 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. [#29735](https://github.com/open-webui/open-webui/pull/29735), [#29722](https://github.com/open-webui/open-webui/issues/29722) - ๐Ÿ“š **Web results stop being cited.** 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. [#29631](https://github.com/open-webui/open-webui/pull/29631), [#29627](https://github.com/open-webui/open-webui/issues/29627) - ๐Ÿ”ผ **Honest version checks.** 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. [#29626](https://github.com/open-webui/open-webui/pull/29626), [#29580](https://github.com/open-webui/open-webui/issues/29580) From 4e2e62e34ae81c79cac2fac442cedd4c4f045c6e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:06:37 +0000 Subject: [PATCH 30/88] chore: bring the 0.11.4 date up to the newest change it records The date was set when the section was opened and left there while entries kept arriving, so it sat three days behind the last commit it covers. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 115fddc1ff..0eddf41cb3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ 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.11.4] - 2026-09-03 +## [0.11.4] - 2026-09-06 ### Added From 6687cdbfba1b1dd18ed86e6e715d9e4788a8b1e1 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:12:11 +0000 Subject: [PATCH 31/88] chore: add the sign-in form setting entry to 0.11.4 Added records the sign-in form becoming something an administrator can switch off from the authentication settings. The setting itself is not new, having been available since before this release as a value read at startup; what is new is reaching it without restarting the server, so it is recorded as an addition rather than a change to how signing in works. The date on the section already stands at the day of this change. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0eddf41cb3..246fdd891f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) +- ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) From 40b73a2743e017eef20f80054ec645df69ca7ea1 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:15:21 +0000 Subject: [PATCH 32/88] chore: add the slim backend narrowing entry to 0.11.4 Changed gains the set of things slim will work with at all, which is a separate matter from the entry above it: that one says the local models are gone and a service is asked for when a feature reaches for one, this one says which databases, vector stores and file stores remain, and that being pointed at anything else stops the server before it starts rather than at first use. The browser-driven page reader goes with them. It sits directly below the entry it qualifies. --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 246fdd891f..a74949a7f7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,6 +54,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim now holds its own data in PostgreSQL or SQLite, searches what it stores through PostgreSQL, and keeps files on its own disk, refusing to start where it is pointed at anything else, and it can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) From 851cc276850cb3322deeaf3115bc4f487803474e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:16:10 +0000 Subject: [PATCH 33/88] chore: say which slim limits stop the server and which do not The entry put refusing to start against all three limits. Only two behave that way: the database check raises while the module is read, and the storage provider is chosen by a call made as the module is read. The vector store is built on first use, so pointing slim at anything but PostgreSQL for it fails when something searches, not at startup. The sentence now separates them. --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a74949a7f7..168aca886a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,7 +54,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim now holds its own data in PostgreSQL or SQLite, searches what it stores through PostgreSQL, and keeps files on its own disk, refusing to start where it is pointed at anything else, and it can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim holds its own data in PostgreSQL or SQLite and keeps files on its own disk, refusing to start where it is pointed at anything else, searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) From 31fad36d69579b5bd8c37f5981202f63e7227d2d Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:22:16 +0000 Subject: [PATCH 34/88] chore: soften the slim backend entry and cover the browser speech runtime --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 168aca886a..03484d9f46 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,9 +54,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim holds its own data in PostgreSQL or SQLite and keeps files on its own disk, refusing to start where it is pointed at anything else, searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim keeps its data in SQLite or PostgreSQL and its files on its own disk, which is what it does out of the box; a cloud storage bucket, another database engine or AWS IAM database logins now ask for the standard image. It searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) +- ๐Ÿ”Š **Browser speech loads its engine from the instance.** The WebAssembly runtime behind on-device text-to-speech is now loaded from the files served alongside the interface rather than from a copy carried inside its JavaScript. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) ## [0.11.3] - 2026-08-31 From 7384020d7409841299db5f922433b29a0bd589e4 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:23:45 +0000 Subject: [PATCH 35/88] chore: lead the 0.11.4 sections with the slimming entries --- CHANGELOG.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 03484d9f46..8ffedb6a24 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) @@ -16,7 +17,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded. @@ -51,12 +51,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) -- ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim keeps its data in SQLite or PostgreSQL and its files on its own disk, which is what it does out of the box; a cloud storage bucket, another database engine or AWS IAM database logins now ask for the standard image. It searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) +- ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) +- ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿ”Š **Browser speech loads its engine from the instance.** The WebAssembly runtime behind on-device text-to-speech is now loaded from the files served alongside the interface rather than from a copy carried inside its JavaScript. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) ## [0.11.3] - 2026-08-31 From c06e066be6a8c963f1414526da25dffa4b937c2f Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:26:36 +0000 Subject: [PATCH 36/88] chore: cover the slim web search and code interpreter changes --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8ffedb6a24..a47161b2d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6) +- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) @@ -53,6 +53,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim keeps its data in SQLite or PostgreSQL and its files on its own disk, which is what it does out of the box; a cloud storage bucket, another database engine or AWS IAM database logins now ask for the standard image. It searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ”Ž **Slim leaves out DDGS.** The one web search engine that needs no key of its own is not carried in a slim build: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable, so a slim instance searching the web takes one of the other providers. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) +- ๐Ÿ“ฅ **Slim fetches the code interpreter's packages as they are used.** A slim build carries the Python runtime that runs code in the browser but no longer the packages it draws on, from numpy and pandas to matplotlib and scikit-learn, which the browser now downloads from a public delivery network the first time code imports them rather than reading them from the instance. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) - ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) From a023f643718edaac09d849ad3e5f1693dd0df526 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:29:55 +0000 Subject: [PATCH 37/88] chore: split the slim limits into their own entries and cover the PDF removal --- CHANGELOG.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a47161b2d5..1175010f35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ“ฆ **A smaller container image.** The image no longer carries a second copy of Python, a set of fonts nothing ever loaded, packages nothing imports, or the tool that installed them, taking about 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) +- ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) @@ -51,8 +51,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- ๐Ÿชถ **Slim leaves the heavy work outside.** An instance built slim starts and holds a conversation with nothing extra configured, but the features that leaned on the local models it no longer carries, knowledge search, document extraction past plain text and speech, each ask for a service of their own the first time they are used, and it can no longer be built together with the graphics card or Ollama options. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿงฎ **Slim keeps to one set of backends.** An instance built slim keeps its data in SQLite or PostgreSQL and its files on its own disk, which is what it does out of the box; a cloud storage bucket, another database engine or AWS IAM database logins now ask for the standard image. It searches what it stores through PostgreSQL alone, and can no longer drive a browser to read a page. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿชถ **Slim runs with nothing configured.** An instance built slim starts and holds a conversation out of the box, the local models and the heavier machinery around them left out of the image, and each of the features that leaned on them now asks for a service of its own. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿ—„๏ธ **Slim keeps its data in SQLite or PostgreSQL.** A slim instance refuses to start against another database engine, or with AWS RDS IAM logins switched on, both of which take the standard image; SQLite, what it uses out of the box, needs nothing changed. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ“ **Slim keeps files on its own disk.** A slim instance refuses to start where file storage is pointed at an S3, Google Cloud or Azure bucket; local storage, what it uses out of the box, needs nothing changed. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿงฎ **Slim searches through pgvector.** Knowledge search in a slim instance runs on PostgreSQL with pgvector; pointed at another vector store, it reports itself unavailable the first time something searches rather than at startup. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿง  **Slim asks for an embedding service.** A slim instance carries no embedding or reranking model of its own: knowledge needs one of the external embedding engines, reranking needs an external reranker or falls back to plain cosine scoring, and documents can no longer be split along a downloaded tokenizer. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿ“ƒ **Slim reads plain text by itself.** A slim instance reads text, Markdown, CSV, HTML and XML files as they are; a PDF, a Word file or a deck now takes one of the external extraction services. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐ŸŽ™๏ธ **Slim asks for a speech service.** A slim instance carries neither local Whisper nor local voices, so speech to text and text to speech each take an external engine, and the settings refuse a switch back to the local ones. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿ•ธ๏ธ **Slim reads pages without a browser.** A slim instance fetching a web page does it over plain HTTP or through an external loader; the built-in browser it used to drive is not carried. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐ŸงŠ **Slim cannot be built with the graphics card or Ollama options.** Building the slim image together with either is refused outright rather than producing an image carrying what slim leaves out. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐Ÿ”Ž **Slim leaves out DDGS.** The one web search engine that needs no key of its own is not carried in a slim build: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable, so a slim instance searching the web takes one of the other providers. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) - ๐Ÿ“ฅ **Slim fetches the code interpreter's packages as they are used.** A slim build carries the Python runtime that runs code in the browser but no longer the packages it draws on, from numpy and pandas to matplotlib and scikit-learn, which the browser now downloads from a public delivery network the first time code imports them rather than reading them from the instance. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) @@ -60,6 +67,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿ”Š **Browser speech loads its engine from the instance.** The WebAssembly runtime behind on-device text-to-speech is now loaded from the files served alongside the interface rather than from a copy carried inside its JavaScript. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) +- ๐Ÿ–จ๏ธ **Chats are turned into PDFs by the browser alone.** Downloading a chat as a PDF is drawn in the browser, as it already was, and the server no longer offers to do it: the endpoint behind `POST /api/v1/utils/pdf` and the fonts it carried for the purpose are gone, which anything calling that endpoint directly will need to stop doing. [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) ## [0.11.3] - 2026-08-31 From 0df5c7e0260989784bf7d50db712f4b47e0b138a Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:37:10 +0000 Subject: [PATCH 38/88] chore: fold the dropped Gemini SDK into the tool imports entry --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1175010f35..c7c996a645 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) +- ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) @@ -63,7 +63,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”Ž **Slim leaves out DDGS.** The one web search engine that needs no key of its own is not carried in a slim build: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable, so a slim instance searching the web takes one of the other providers. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) - ๐Ÿ“ฅ **Slim fetches the code interpreter's packages as they are used.** A slim build carries the Python runtime that runs code in the browser but no longer the packages it draws on, from numpy and pandas to matplotlib and scikit-learn, which the browser now downloads from a public delivery network the first time code imports them rather than reading them from the instance. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) -- ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo and the Google Drive client, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726) +- ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo, the Google Drive client and the Gemini SDK, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿ”Š **Browser speech loads its engine from the instance.** The WebAssembly runtime behind on-device text-to-speech is now loaded from the files served alongside the interface rather than from a copy carried inside its JavaScript. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) From 5d756db54a374585927ce0c042c25c1be369e45b Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:40:11 +0000 Subject: [PATCH 39/88] chore: rewrite the changed entries and cover git leaving the slim image --- CHANGELOG.md | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c7c996a645..57a77a171c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,7 +17,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded. ### Fixed @@ -51,23 +51,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed -- ๐Ÿชถ **Slim runs with nothing configured.** An instance built slim starts and holds a conversation out of the box, the local models and the heavier machinery around them left out of the image, and each of the features that leaned on them now asks for a service of its own. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿ—„๏ธ **Slim keeps its data in SQLite or PostgreSQL.** A slim instance refuses to start against another database engine, or with AWS RDS IAM logins switched on, both of which take the standard image; SQLite, what it uses out of the box, needs nothing changed. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) -- ๐Ÿ“ **Slim keeps files on its own disk.** A slim instance refuses to start where file storage is pointed at an S3, Google Cloud or Azure bucket; local storage, what it uses out of the box, needs nothing changed. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) -- ๐Ÿงฎ **Slim searches through pgvector.** Knowledge search in a slim instance runs on PostgreSQL with pgvector; pointed at another vector store, it reports itself unavailable the first time something searches rather than at startup. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) -- ๐Ÿง  **Slim asks for an embedding service.** A slim instance carries no embedding or reranking model of its own: knowledge needs one of the external embedding engines, reranking needs an external reranker or falls back to plain cosine scoring, and documents can no longer be split along a downloaded tokenizer. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿ“ƒ **Slim reads plain text by itself.** A slim instance reads text, Markdown, CSV, HTML and XML files as they are; a PDF, a Word file or a deck now takes one of the external extraction services. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐ŸŽ™๏ธ **Slim asks for a speech service.** A slim instance carries neither local Whisper nor local voices, so speech to text and text to speech each take an external engine, and the settings refuse a switch back to the local ones. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿ•ธ๏ธ **Slim reads pages without a browser.** A slim instance fetching a web page does it over plain HTTP or through an external loader; the built-in browser it used to drive is not carried. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) -- ๐ŸงŠ **Slim cannot be built with the graphics card or Ollama options.** Building the slim image together with either is refused outright rather than producing an image carrying what slim leaves out. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿ”Ž **Slim leaves out DDGS.** The one web search engine that needs no key of its own is not carried in a slim build: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable, so a slim instance searching the web takes one of the other providers. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) -- ๐Ÿ“ฅ **Slim fetches the code interpreter's packages as they are used.** A slim build carries the Python runtime that runs code in the browser but no longer the packages it draws on, from numpy and pandas to matplotlib and scikit-learn, which the browser now downloads from a public delivery network the first time code imports them rather than reading them from the instance. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) -- ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now takes the BuildKit builder and reach to the registry the install tool is fetched from, next to the package index it already needed. [#29728](https://github.com/open-webui/open-webui/pull/29728) -- ๐Ÿงพ **Tools declare what they import.** A tool or function importing a package that was only ever present by accident, among them nltk, pymongo, the Google Drive client and the Gemini SDK, now has to name it in its requirements, or have it installed into the image where the instance cannot reach the package index. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) -- ๐Ÿ”— **Default suggestions answer with an object.** Saving the default prompt suggestions now answers with the suggestions and their per-language wording together rather than the bare list it returned before, which anything calling it directly will need to read. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) -- ๐Ÿ–ผ๏ธ **Default picture without access.** A model picture now falls back to the standard logo wherever the viewer holds no grant on that model, such as a model reply shown to the other members of a channel, or the admin analytics and evaluation pages with the access bypass switched off. [#29700](https://github.com/open-webui/open-webui/pull/29700) -- ๐Ÿ”Š **Browser speech loads its engine from the instance.** The WebAssembly runtime behind on-device text-to-speech is now loaded from the files served alongside the interface rather than from a copy carried inside its JavaScript. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) -- ๐Ÿ–จ๏ธ **Chats are turned into PDFs by the browser alone.** Downloading a chat as a PDF is drawn in the browser, as it already was, and the server no longer offers to do it: the endpoint behind `POST /api/v1/utils/pdf` and the fonts it carried for the purpose are gone, which anything calling that endpoint directly will need to stop doing. [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) +- ๐Ÿชถ **Slim starts with nothing configured.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿ—„๏ธ **Slim refuses to start on another database.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ“ **Slim refuses to start on cloud file storage.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿงฎ **Slim searches only through pgvector.** Knowledge search on the slim image needs PostgreSQL with pgvector. Configured for another vector store the instance still starts, and the failure arrives the first time something is searched rather than at startup. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿง  **Slim needs an external embedding service.** The slim image carries no embedding or reranking model of its own, so knowledge needs one of the external embedding engines, OpenAI, Ollama or Azure OpenAI, and reranking needs an external reranker; where none is configured, results fall back to plain cosine scoring, which ranks them less well. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- โœ‚๏ธ **Slim splits documents without a tokenizer.** Splitting a document along a downloaded tokenizer is unavailable on the slim image, which leaves splitting by character or by token count. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿ“ƒ **Slim reads only plain text on its own.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐ŸŽ™๏ธ **Slim needs an external speech service.** The slim image carries neither local Whisper nor local voices: an instance configured for them still starts, but speech to text and text to speech fail when they are used until an external engine is set, and the audio settings refuse a switch back to the local ones. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿ•ธ๏ธ **Slim fetches pages without a browser.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ”Ž **Slim leaves out DuckDuckGo search.** DDGS, the one web search provider that needs no key of its own, is not carried in the slim image: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable where it is already selected, so web search on slim needs a provider with a key. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) +- ๐Ÿ“ฅ **Slim pulls the code interpreter's packages from a CDN.** The slim image carries the Python runtime that runs code in the browser but not the packages it draws on, so the browser downloads numpy, pandas, matplotlib, scikit-learn and the rest from `cdn.jsdelivr.net` the first time code imports them, which means the code interpreter needs outbound access from the browser and stops working where that is blocked. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) +- ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) +- ๐ŸงŠ **Slim cannot be built with the CUDA or Ollama options.** A build combining `USE_SLIM` with `USE_CUDA` or `USE_OLLAMA` now stops with an error instead of producing an image carrying what slim exists to leave out. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) +- ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now needs BuildKit, and the build pulls `uv` from `ghcr.io` alongside the packages it already fetched from the Python package index, so a build behind a restricted network needs both reachable. [#29728](https://github.com/open-webui/open-webui/pull/29728) +- ๐Ÿงพ **Tools declare what they import.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) +- ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) +- ๐Ÿ–ผ๏ธ **Model pictures fall back to the default logo.** A model picture is replaced by the standard logo wherever the viewer cannot access that model, in a model's reply shown to the other members of a channel and on the admin analytics and evaluation pages with the access bypass switched off, so a familiar picture shows as the default logo in those places. [#29700](https://github.com/open-webui/open-webui/pull/29700) +- ๐Ÿ–จ๏ธ **The server-side PDF endpoint is gone.** `POST /api/v1/utils/pdf` and the fonts it needed have been removed. Downloading a chat as a PDF is unaffected, the browser having drawn it for some time already, but anything calling that endpoint fails. [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) ## [0.11.3] - 2026-08-31 From d7633ea088f5ad698cae095d920abb4b738ce885 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:42:09 +0000 Subject: [PATCH 40/88] chore: drop the entry for the unused PDF endpoint --- CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 57a77a171c..3aa18a6594 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -68,7 +68,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงพ **Tools declare what they import.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿ–ผ๏ธ **Model pictures fall back to the default logo.** A model picture is replaced by the standard logo wherever the viewer cannot access that model, in a model's reply shown to the other members of a channel and on the admin analytics and evaluation pages with the access bypass switched off, so a familiar picture shows as the default logo in those places. [#29700](https://github.com/open-webui/open-webui/pull/29700) -- ๐Ÿ–จ๏ธ **The server-side PDF endpoint is gone.** `POST /api/v1/utils/pdf` and the fonts it needed have been removed. Downloading a chat as a PDF is unaffected, the browser having drawn it for some time already, but anything calling that endpoint fails. [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb) ## [0.11.3] - 2026-08-31 From ecd32c0b027dc64fb0665b738570ccdb798adb8e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:45:33 +0000 Subject: [PATCH 41/88] chore: cover the tool export scoping and the terminal command echo --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3aa18a6594..b3122b5f2a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,7 +10,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) -- ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c) +- ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) +- ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) - ๐Ÿ“Ž **Safer Word document previews.** 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. [#29699](https://github.com/open-webui/open-webui/pull/29699) From a3b88c44959727e7472d8a2ed7432702c7d436ee Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:48:26 +0000 Subject: [PATCH 42/88] chore: lead with the slim image download size --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index b3122b5f2a..897675dcc2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- ๐Ÿ“‰ **The slim image is about a ninth of its size.** A slim build now comes down at around 180 MB, where the last release pulled roughly 1.5 GB, 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) From bcd34bbd7e156029290dbaa95b275c49627d13d2 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:53:54 +0000 Subject: [PATCH 43/88] chore: cover the model registry rewrite fix --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 897675dcc2..47d916c687 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“‰ **The slim image is about a ninth of its size.** A slim build now comes down at around 180 MB, where the last release pulled roughly 1.5 GB, 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) -- ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8) +- ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) @@ -38,6 +38,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸŸ๏ธ **Arena models report their errors.** 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. [#29662](https://github.com/open-webui/open-webui/pull/29662), [#29658](https://github.com/open-webui/open-webui/issues/29658) - ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) +- ๐Ÿ” **The shared model list stops rewriting itself.** Where several servers share their state through Redis, the countdown Ollama attaches to a model it holds in memory moved with every refresh, so the whole model registry was written out again each time; that value is now kept out of the stored copy, and still reported by the API, leaving the registry alone where nothing else changed. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) - ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) From 1c596eb8152cf3a2d6abf8b206c21ba5e1bddb8c Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:02:11 +0000 Subject: [PATCH 44/88] chore: cover the playwright media skip and lead the registry entry with the cost --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 47d916c687..1aa9082b39 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -38,7 +38,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸŸ๏ธ **Arena models report their errors.** 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. [#29662](https://github.com/open-webui/open-webui/pull/29662), [#29658](https://github.com/open-webui/open-webui/issues/29658) - ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) -- ๐Ÿ” **The shared model list stops rewriting itself.** Where several servers share their state through Redis, the countdown Ollama attaches to a model it holds in memory moved with every refresh, so the whole model registry was written out again each time; that value is now kept out of the stored copy, and still reported by the API, leaving the registry alone where nothing else changed. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) +- ๐Ÿš€ **Refreshing the model list costs less.** Where several servers share their state through Redis, the whole model registry was written out again on every refresh, because the countdown Ollama attaches to a model it holds in memory moved each time. That value is now kept out of the stored copy, and still reported by the API, so the registry is written only when the models themselves change. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) +- ๐ŸŽ๏ธ **Pages full of media read quickly again.** Reading a page through the browser-driven loader pulled every image, video and font it 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. [#29742](https://github.com/open-webui/open-webui/pull/29742), [#29741](https://github.com/open-webui/open-webui/issues/29741) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) - ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) From b946a00b1d01d198bed2c9be6755d087fe4c73c3 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:06:13 +0000 Subject: [PATCH 45/88] chore: lead the playwright entry with the speed gain --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1aa9082b39..a36770a98b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -39,7 +39,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿš€ **Refreshing the model list costs less.** Where several servers share their state through Redis, the whole model registry was written out again on every refresh, because the countdown Ollama attaches to a model it holds in memory moved each time. That value is now kept out of the stored copy, and still reported by the API, so the registry is written only when the models themselves change. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) -- ๐ŸŽ๏ธ **Pages full of media read quickly again.** Reading a page through the browser-driven loader pulled every image, video and font it 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. [#29742](https://github.com/open-webui/open-webui/pull/29742), [#29741](https://github.com/open-webui/open-webui/issues/29741) +- ๐ŸŽ๏ธ **Reading a page full of media is about four times faster.** 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. [#29742](https://github.com/open-webui/open-webui/pull/29742), [#29741](https://github.com/open-webui/open-webui/issues/29741) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) - ๐Ÿ“Š **Relevance shown for a lone source.** 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. [#29647](https://github.com/open-webui/open-webui/pull/29647), [#29646](https://github.com/open-webui/open-webui/issues/29646) From 64a7be019acf2efcd711614b15e841f416c292b0 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:08:21 +0000 Subject: [PATCH 46/88] chore: drop the build and picture entries and retitle the tool imports one --- CHANGELOG.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a36770a98b..bcbd058626 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -67,11 +67,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”Ž **Slim leaves out DuckDuckGo search.** DDGS, the one web search provider that needs no key of its own, is not carried in the slim image: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable where it is already selected, so web search on slim needs a provider with a key. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) - ๐Ÿ“ฅ **Slim pulls the code interpreter's packages from a CDN.** The slim image carries the Python runtime that runs code in the browser but not the packages it draws on, so the browser downloads numpy, pandas, matplotlib, scikit-learn and the rest from `cdn.jsdelivr.net` the first time code imports them, which means the code interpreter needs outbound access from the browser and stops working where that is blocked. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) -- ๐ŸงŠ **Slim cannot be built with the CUDA or Ollama options.** A build combining `USE_SLIM` with `USE_CUDA` or `USE_OLLAMA` now stops with an error instead of producing an image carrying what slim exists to leave out. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿงฑ **Building the image needs BuildKit.** Building Open WebUI yourself now needs BuildKit, and the build pulls `uv` from `ghcr.io` alongside the packages it already fetched from the Python package index, so a build behind a restricted network needs both reachable. [#29728](https://github.com/open-webui/open-webui/pull/29728) -- ๐Ÿงพ **Tools declare what they import.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) +- ๐Ÿงพ **Tools importing packages they never declared stop working.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) -- ๐Ÿ–ผ๏ธ **Model pictures fall back to the default logo.** A model picture is replaced by the standard logo wherever the viewer cannot access that model, in a model's reply shown to the other members of a channel and on the admin analytics and evaluation pages with the access bypass switched off, so a familiar picture shows as the default logo in those places. [#29700](https://github.com/open-webui/open-webui/pull/29700) ## [0.11.3] - 2026-08-31 From c47e3c92db8013fe828dd5fd5ac3c74a8f75388d Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:09:14 +0000 Subject: [PATCH 47/88] chore: write the measured image sizes and retitle the page loader entry --- CHANGELOG.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bcbd058626..9ea7b6d2c1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,8 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ“‰ **The slim image is about a ninth of its size.** A slim build now comes down at around 180 MB, where the last release pulled roughly 1.5 GB, 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) -- ๐Ÿ“ฆ **A smaller container image.** 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 300 MB off the image, and the slim build also leaves behind the source maps built beside the interface and the packages for the code interpreter that runs in the browser. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) +- ๐Ÿ“‰ **The slim image is about a ninth of its size.** A slim build now comes down at around 175 MB, where the last release pulled about 1.5 GB, near enough 89% smaller, 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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, bringing a standard build down from about 1.8 GB to about 1.65 GB. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) @@ -63,7 +63,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โœ‚๏ธ **Slim splits documents without a tokenizer.** Splitting a document along a downloaded tokenizer is unavailable on the slim image, which leaves splitting by character or by token count. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐Ÿ“ƒ **Slim reads only plain text on its own.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) - ๐ŸŽ™๏ธ **Slim needs an external speech service.** The slim image carries neither local Whisper nor local voices: an instance configured for them still starts, but speech to text and text to speech fail when they are used until an external engine is set, and the audio settings refuse a switch back to the local ones. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1) -- ๐Ÿ•ธ๏ธ **Slim fetches pages without a browser.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ•ธ๏ธ **Slim reads less from pages that need JavaScript.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ”Ž **Slim leaves out DuckDuckGo search.** DDGS, the one web search provider that needs no key of its own, is not carried in the slim image: it is greyed out in the admin web search settings, refused where an instance is switched over to it, and reports itself unavailable where it is already selected, so web search on slim needs a provider with a key. [Commit](https://github.com/open-webui/open-webui/commit/0fa4dea5ff64ea663f162d07c9a1175c39e4aad0) - ๐Ÿ“ฅ **Slim pulls the code interpreter's packages from a CDN.** The slim image carries the Python runtime that runs code in the browser but not the packages it draws on, so the browser downloads numpy, pandas, matplotlib, scikit-learn and the rest from `cdn.jsdelivr.net` the first time code imports them, which means the code interpreter needs outbound access from the browser and stops working where that is blocked. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) From a2e21b740cfa40b4684ae00d5a95893b3cd906d7 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:13:55 +0000 Subject: [PATCH 48/88] chore: state only how much smaller the images are --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9ea7b6d2c1..02ff053695 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,8 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- ๐Ÿ“‰ **The slim image is about a ninth of its size.** A slim build now comes down at around 175 MB, where the last release pulled about 1.5 GB, near enough 89% smaller, 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) -- ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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, bringing a standard build down from about 1.8 GB to about 1.65 GB. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) +- ๐Ÿ“‰ **The slim image is about a ninth of its size.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) +- ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) - ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) From f08fe204f6d6561088eb66f190d8d8ba78faeaa7 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:17:06 +0000 Subject: [PATCH 49/88] chore: retitle the per-language wording entry --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 02ff053695..c71b6ee280 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“‰ **The slim image is about a ninth of its size.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) -- ๐Ÿ—ฃ๏ธ **Wording that speaks your language.** A model, tool, skill, function, banner or arena entry can now carry 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, and the interface shows the wording for the language it is set to, falling back to the plain text where that language has none. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) +- ๐Ÿ—ฃ๏ธ **Models and tools can carry their own translations.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) From 68597301d07a5629a11d051bc5cf4211ed90491e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:17:16 +0000 Subject: [PATCH 50/88] chore: retitle the terminal tabs entry --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c71b6ee280..aa8789698a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“‰ **The slim image is about a ninth of its size.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) -- ๐Ÿ–ฅ๏ธ **Every command in one terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) +- ๐Ÿ–ฅ๏ธ **A tab for every command a model runs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) - ๐Ÿ—ฃ๏ธ **Models and tools can carry their own translations.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) From b5fefa26f7a34c37bc30975a92314a70dcdde654 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:18:33 +0000 Subject: [PATCH 51/88] chore: fold the translation coverage entry into translation updates --- CHANGELOG.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index aa8789698a..5f1bcc1239 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,7 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) -- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded. +- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ### Fixed @@ -51,7 +51,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸŽจ **A tidier attach webpage dialog.** 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. [#29664](https://github.com/open-webui/open-webui/pull/29664), [#29663](https://github.com/open-webui/open-webui/issues/29663) - ๐Ÿ–ฑ๏ธ **A plain note date.** 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. [#29708](https://github.com/open-webui/open-webui/pull/29708) - ๐Ÿ‘๏ธ **Compact hover previews in Safari.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734) -- ๐Ÿ—‚๏ธ **Wider translation coverage.** Text that was fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace, and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ### Changed From 4726afb226af4f4ab98a99d1d8f1160ea342a63e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:19:15 +0000 Subject: [PATCH 52/88] chore: date the 0.11.4 section 2026-09-07 --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5f1bcc1239..3fcfe9647d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ 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.11.4] - 2026-09-06 +## [0.11.4] - 2026-09-07 ### Added From 6878601274d7b444cb5ef22b5afbe3b24856d722 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:33:18 +0000 Subject: [PATCH 53/88] chore: cover continuing a reply in a temporary chat --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3fcfe9647d..4cf2fe0a5f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,7 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [#29619](https://github.com/open-webui/open-webui/pull/29619) - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ### Fixed @@ -39,6 +39,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿš€ **Refreshing the model list costs less.** Where several servers share their state through Redis, the whole model registry was written out again on every refresh, because the countdown Ollama attaches to a model it holds in memory moved each time. That value is now kept out of the stored copy, and still reported by the API, so the registry is written only when the models themselves change. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) +- โœ๏ธ **Continuing a reply keeps the text it already wrote.** 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, and, where haptic feedback is switched on, a continuation buzzes as it streams like any other reply. [Commit](https://github.com/open-webui/open-webui/commit/77d2000eb79e1cb6ae2004d40e8cca8c9e754cd0), [Commit](https://github.com/open-webui/open-webui/commit/57fc344873edc0db9e9f7ff3e9fb167cd80e3ef2) - ๐ŸŽ๏ธ **Reading a page full of media is about four times faster.** 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. [#29742](https://github.com/open-webui/open-webui/pull/29742), [#29741](https://github.com/open-webui/open-webui/issues/29741) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) From 8366a2e2401e5d480101848db186c9fdd609e013 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:57:40 +0000 Subject: [PATCH 54/88] chore: write the connection listing role check as a security fix --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4cf2fe0a5f..b274a51b21 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,13 +18,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [#29619](https://github.com/open-webui/open-webui/pull/29619) +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) ### Fixed - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) +- ๐Ÿ”’ **Listing one connection's models is for administrators again.** The endpoints that list the models on a single Ollama or OpenAI connection took the connection's number in the path, which was held to administrators, but also as a query parameter on the same handler, which was not: a signed-in account of any role could ask `/openai/models?url_idx=2` and read back every model that connection offers, none of it passed through the access filtering the ordinary model list applies, and reach the Ollama tag and version listings the same way. Each handler now checks the caller's role itself, whichever way the number arrives. [#29619](https://github.com/open-webui/open-webui/pull/29619) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) From 93b277cf1e3ca9ab9d78ab0878298678081bb5cc Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sun, 6 Sep 2026 22:59:38 +0000 Subject: [PATCH 55/88] chore: keep the connection listing fix brief --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b274a51b21..178fc87a4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,7 +25,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) -- ๐Ÿ”’ **Listing one connection's models is for administrators again.** The endpoints that list the models on a single Ollama or OpenAI connection took the connection's number in the path, which was held to administrators, but also as a query parameter on the same handler, which was not: a signed-in account of any role could ask `/openai/models?url_idx=2` and read back every model that connection offers, none of it passed through the access filtering the ordinary model list applies, and reach the Ollama tag and version listings the same way. Each handler now checks the caller's role itself, whichever way the number arrives. [#29619](https://github.com/open-webui/open-webui/pull/29619) +- ๐Ÿ”’ **Listing one connection's models is for administrators again.** 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. [#29619](https://github.com/open-webui/open-webui/pull/29619) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) From 9491aeab2e6eb2bc6dc1910f266e4390c9b8f448 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 00:06:47 +0000 Subject: [PATCH 56/88] chore: fold the continue reply refinements into its entry --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 178fc87a4f..f560d2220e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,7 +40,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿš€ **Refreshing the model list costs less.** Where several servers share their state through Redis, the whole model registry was written out again on every refresh, because the countdown Ollama attaches to a model it holds in memory moved each time. That value is now kept out of the stored copy, and still reported by the API, so the registry is written only when the models themselves change. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) -- โœ๏ธ **Continuing a reply keeps the text it already wrote.** 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, and, where haptic feedback is switched on, a continuation buzzes as it streams like any other reply. [Commit](https://github.com/open-webui/open-webui/commit/77d2000eb79e1cb6ae2004d40e8cca8c9e754cd0), [Commit](https://github.com/open-webui/open-webui/commit/57fc344873edc0db9e9f7ff3e9fb167cd80e3ef2) +- โœ๏ธ **Continuing a reply keeps the text it already wrote.** 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, 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. [Commit](https://github.com/open-webui/open-webui/commit/77d2000eb79e1cb6ae2004d40e8cca8c9e754cd0), [Commit](https://github.com/open-webui/open-webui/commit/57fc344873edc0db9e9f7ff3e9fb167cd80e3ef2), [Commit](https://github.com/open-webui/open-webui/commit/7eefeef4f17118f81c87acb464ad562803a6f26c), [Commit](https://github.com/open-webui/open-webui/commit/d418840aa9c4b77f613308cdaa4f2c6a062a8715), [Commit](https://github.com/open-webui/open-webui/commit/3795d5b29253d4b8d7a0adbab457c7317c40f3c6) - ๐ŸŽ๏ธ **Reading a page full of media is about four times faster.** 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. [#29742](https://github.com/open-webui/open-webui/pull/29742), [#29741](https://github.com/open-webui/open-webui/issues/29741) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) From 64c67e96908631debeaa81c72bce4ca399a7f4df Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 03:36:22 +0000 Subject: [PATCH 57/88] chore: note the llama.cpp continuation flags --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f560d2220e..29a6c705b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -40,7 +40,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿณ๏ธ **Nameless tool calls fail once.** 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. [#29690](https://github.com/open-webui/open-webui/pull/29690), [#29686](https://github.com/open-webui/open-webui/issues/29686) - ๐Ÿงน **Direct connections stop leaking listeners.** 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. [#29509](https://github.com/open-webui/open-webui/pull/29509) - ๐Ÿš€ **Refreshing the model list costs less.** Where several servers share their state through Redis, the whole model registry was written out again on every refresh, because the countdown Ollama attaches to a model it holds in memory moved each time. That value is now kept out of the stored copy, and still reported by the API, so the registry is written only when the models themselves change. [Commit](https://github.com/open-webui/open-webui/commit/649c012ecf308a994ea180127f7f8f94d0aec311) -- โœ๏ธ **Continuing a reply keeps the text it already wrote.** 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, 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. [Commit](https://github.com/open-webui/open-webui/commit/77d2000eb79e1cb6ae2004d40e8cca8c9e754cd0), [Commit](https://github.com/open-webui/open-webui/commit/57fc344873edc0db9e9f7ff3e9fb167cd80e3ef2), [Commit](https://github.com/open-webui/open-webui/commit/7eefeef4f17118f81c87acb464ad562803a6f26c), [Commit](https://github.com/open-webui/open-webui/commit/d418840aa9c4b77f613308cdaa4f2c6a062a8715), [Commit](https://github.com/open-webui/open-webui/commit/3795d5b29253d4b8d7a0adbab457c7317c40f3c6) +- โœ๏ธ **Continuing a reply keeps the text it already wrote.** 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. [Commit](https://github.com/open-webui/open-webui/commit/77d2000eb79e1cb6ae2004d40e8cca8c9e754cd0), [Commit](https://github.com/open-webui/open-webui/commit/57fc344873edc0db9e9f7ff3e9fb167cd80e3ef2), [Commit](https://github.com/open-webui/open-webui/commit/7eefeef4f17118f81c87acb464ad562803a6f26c), [Commit](https://github.com/open-webui/open-webui/commit/d418840aa9c4b77f613308cdaa4f2c6a062a8715), [Commit](https://github.com/open-webui/open-webui/commit/3795d5b29253d4b8d7a0adbab457c7317c40f3c6), [Commit](https://github.com/open-webui/open-webui/commit/57acc2b68f2f9e40b53aa7e609fdd52a4b0d15c4) - ๐ŸŽ๏ธ **Reading a page full of media is about four times faster.** 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. [#29742](https://github.com/open-webui/open-webui/pull/29742), [#29741](https://github.com/open-webui/open-webui/issues/29741) - ๐Ÿ“ **Starting a note from search.** 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. [#29645](https://github.com/open-webui/open-webui/pull/29645), [#29642](https://github.com/open-webui/open-webui/issues/29642) - ๐Ÿ“ฑ **Replies show on iPhone and iPad.** 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. [#29734](https://github.com/open-webui/open-webui/pull/29734), [#29688](https://github.com/open-webui/open-webui/issues/29688), [#26712](https://github.com/open-webui/open-webui/issues/26712) From 6731d6e7b4c26bdaf161474fb1a7e02bb619f4b7 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 16:29:11 +0000 Subject: [PATCH 58/88] chore: cover cookie forwarding and the note save on navigation --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 29a6c705b1..f5e4ccbac7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›ก๏ธ **Security Advisory**: 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. [Advisories](https://github.com/open-webui/open-webui/security) - ๐Ÿ”‘ **Tokens stay out of logs.** 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. [#29709](https://github.com/open-webui/open-webui/pull/29709) - ๐Ÿ”’ **Listing one connection's models is for administrators again.** 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. [#29619](https://github.com/open-webui/open-webui/pull/29619) +- ๐Ÿช **Cookies reach only the connections told to receive them.** A model connection, tool server or terminal server authenticating as the signed-in person was handed this instance's browser cookies along with the request; that now happens only where the connection's new Forward cookies switch is turned on, which an instance relying on it has to do after upgrading. [Commit](https://github.com/open-webui/open-webui/commit/b71744b17823f7a3a9a64cb363e79a7164ed5b23), [Commit](https://github.com/open-webui/open-webui/commit/3cda47cdb449aac970426f0929c9e5f8bb8bd807), [Commit](https://github.com/open-webui/open-webui/commit/f9f815c86220f809fad5ee1300c44f55dea74c79) +- ๐Ÿ—’๏ธ **A note edit survives leaving the page.** 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. [#29745](https://github.com/open-webui/open-webui/pull/29745), [#29744](https://github.com/open-webui/open-webui/issues/29744) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) From d50d6943a4f7ddd49a9a3c62b3bcf3ca9e69add7 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 16:46:02 +0000 Subject: [PATCH 59/88] chore: cover the model access denial logging --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f5e4ccbac7..4f299c994f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -72,6 +72,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) - ๐Ÿงพ **Tools importing packages they never declared stop working.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) +- ๐Ÿชต **A refused model says why in the log.** A request turned away with "Model not found" now writes a warning naming the account, the model and the reason it was refused, whether the model is not registered, the account holds no grant on it, or a base model behind it is out of reach, while the message the caller sees stays as vague as before. [Commit](https://github.com/open-webui/open-webui/commit/f5fcf4c89fb27ed39825875d573446fa84aa2a5b) ## [0.11.3] - 2026-08-31 From c8413dd6048e433846293113f36e2f1c426e7821 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 17:20:14 +0000 Subject: [PATCH 60/88] chore: cover the tool step merge and the model list filters --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f299c994f..c8480d7136 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,6 +17,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) +- ๐ŸŽ›๏ธ **Filtering the admin model list by where a model comes from.** 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. [Commit](https://github.com/open-webui/open-webui/commit/9e634c0c56e0a060717f1e24a11b082daf664036) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) - ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) @@ -28,6 +29,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”’ **Listing one connection's models is for administrators again.** 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. [#29619](https://github.com/open-webui/open-webui/pull/29619) - ๐Ÿช **Cookies reach only the connections told to receive them.** A model connection, tool server or terminal server authenticating as the signed-in person was handed this instance's browser cookies along with the request; that now happens only where the connection's new Forward cookies switch is turned on, which an instance relying on it has to do after upgrading. [Commit](https://github.com/open-webui/open-webui/commit/b71744b17823f7a3a9a64cb363e79a7164ed5b23), [Commit](https://github.com/open-webui/open-webui/commit/3cda47cdb449aac970426f0929c9e5f8bb8bd807), [Commit](https://github.com/open-webui/open-webui/commit/f9f815c86220f809fad5ee1300c44f55dea74c79) - ๐Ÿ—’๏ธ **A note edit survives leaving the page.** 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. [#29745](https://github.com/open-webui/open-webui/pull/29745), [#29744](https://github.com/open-webui/open-webui/issues/29744) +- ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) From 4e453cbfc8c2bfea57ae73911364fc2d9b867e10 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 17:24:04 +0000 Subject: [PATCH 61/88] chore: cover three fixes from 29494, 29493 and 29325 --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index c8480d7136..e88a0c600d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -30,6 +30,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿช **Cookies reach only the connections told to receive them.** A model connection, tool server or terminal server authenticating as the signed-in person was handed this instance's browser cookies along with the request; that now happens only where the connection's new Forward cookies switch is turned on, which an instance relying on it has to do after upgrading. [Commit](https://github.com/open-webui/open-webui/commit/b71744b17823f7a3a9a64cb363e79a7164ed5b23), [Commit](https://github.com/open-webui/open-webui/commit/3cda47cdb449aac970426f0929c9e5f8bb8bd807), [Commit](https://github.com/open-webui/open-webui/commit/f9f815c86220f809fad5ee1300c44f55dea74c79) - ๐Ÿ—’๏ธ **A note edit survives leaving the page.** 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. [#29745](https://github.com/open-webui/open-webui/pull/29745), [#29744](https://github.com/open-webui/open-webui/issues/29744) - ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) +- ๐Ÿ™‹ **Answering in your own words lets you send.** Where the last question a model asks is answered by typing into the other field rather than picking an option, the button that sends the answers stayed greyed out however much was filled in; it now follows what has been entered. [#29494](https://github.com/open-webui/open-webui/pull/29494), [#29311](https://github.com/open-webui/open-webui/issues/29311) +- ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) +- ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) - ๐Ÿšช **Webhook pictures follow channel access.** 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. [#29703](https://github.com/open-webui/open-webui/pull/29703) From a1d5a221b67851daf486e0ae0a7bf35e6a9f9d9f Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 17:27:48 +0000 Subject: [PATCH 62/88] chore: note the terminal pane open and collapse behaviour --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e88a0c600d..675b8a5fb3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“‰ **The slim image is about a ninth of its size.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) -- ๐Ÿ–ฅ๏ธ **A tab for every command a model runs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a) +- ๐Ÿ–ฅ๏ธ **A tab for every command a model runs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a), [Commit](https://github.com/open-webui/open-webui/commit/675b9839f17df94f866c871cbdb9881323a18a8a) - ๐Ÿ—ฃ๏ธ **Models and tools can carry their own translations.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) From 4c52c4dfd64b1f3da85602cd07a1b305e3095e8c Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 19:05:43 +0000 Subject: [PATCH 63/88] chore: cover the settings save rework --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 675b8a5fb3..73dc6b3d9e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,6 +31,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ—’๏ธ **A note edit survives leaving the page.** 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. [#29745](https://github.com/open-webui/open-webui/pull/29745), [#29744](https://github.com/open-webui/open-webui/issues/29744) - ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) - ๐Ÿ™‹ **Answering in your own words lets you send.** Where the last question a model asks is answered by typing into the other field rather than picking an option, the button that sends the answers stayed greyed out however much was filled in; it now follows what has been entered. [#29494](https://github.com/open-webui/open-webui/pull/29494), [#29311](https://github.com/open-webui/open-webui/issues/29311) +- ๐ŸŽš๏ธ **Settings you may change save even where others are barred.** An account without permission to change the interface settings had every settings save refused outright, its notification and tool server settings among them; the settings it may not touch are now left as they are and the rest saves. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) +- โš ๏ธ **A settings save that fails says so.** 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. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) @@ -77,6 +79,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) - ๐Ÿงพ **Tools importing packages they never declared stop working.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) +- ๐Ÿงท **Personal settings save one field at a time.** `POST /api/v1/users/user/settings/update` now takes only the settings that changed rather than the whole interface object: a field left out keeps its value and a field sent as null goes back to whatever the administrator's default says, which anything writing settings directly will need to follow. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿชต **A refused model says why in the log.** A request turned away with "Model not found" now writes a warning naming the account, the model and the reason it was refused, whether the model is not registered, the account holds no grant on it, or a base model behind it is out of reach, while the message the caller sees stays as vague as before. [Commit](https://github.com/open-webui/open-webui/commit/f5fcf4c89fb27ed39825875d573446fa84aa2a5b) ## [0.11.3] - 2026-08-31 From 379fe7d5731ff67577945346192f7ac3b96d4ce4 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 19:25:00 +0000 Subject: [PATCH 64/88] chore: write the settings clobbering fix and trim the api note --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 73dc6b3d9e..cbedfcb4b6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) - ๐Ÿ™‹ **Answering in your own words lets you send.** Where the last question a model asks is answered by typing into the other field rather than picking an option, the button that sends the answers stayed greyed out however much was filled in; it now follows what has been entered. [#29494](https://github.com/open-webui/open-webui/pull/29494), [#29311](https://github.com/open-webui/open-webui/issues/29311) - ๐ŸŽš๏ธ **Settings you may change save even where others are barred.** An account without permission to change the interface settings had every settings save refused outright, its notification and tool server settings among them; the settings it may not touch are now left as they are and the rest saves. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) +- ๐Ÿ—œ๏ธ **Saving one setting no longer rewrites the rest.** Every save sent the whole settings object back, so whatever the page happened to be holding was written into the account, another tab's older copy included, and a default an administrator changed afterwards never reached anyone who had saved anything; only the settings actually changed are stored now, and clearing the default system prompt clears it rather than leaving the old one behind. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - โš ๏ธ **A settings save that fails says so.** 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. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) @@ -79,7 +80,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) - ๐Ÿงพ **Tools importing packages they never declared stop working.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) -- ๐Ÿงท **Personal settings save one field at a time.** `POST /api/v1/users/user/settings/update` now takes only the settings that changed rather than the whole interface object: a field left out keeps its value and a field sent as null goes back to whatever the administrator's default says, which anything writing settings directly will need to follow. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) +- ๐Ÿงท **Personal settings are written a field at a time.** `POST /api/v1/users/user/settings/update` now patches the settings named in it rather than replacing the whole interface object: a field left out keeps its value, a field sent as null goes back to the administrator's default, and anything writing settings directly has to follow suit. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿชต **A refused model says why in the log.** A request turned away with "Model not found" now writes a warning naming the account, the model and the reason it was refused, whether the model is not registered, the account holds no grant on it, or a base model behind it is out of reach, while the message the caller sees stays as vague as before. [Commit](https://github.com/open-webui/open-webui/commit/f5fcf4c89fb27ed39825875d573446fa84aa2a5b) ## [0.11.3] - 2026-08-31 From e1e9216b8fc76f69156e4a0b98ea5eff771e3059 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Mon, 7 Sep 2026 19:28:46 +0000 Subject: [PATCH 65/88] chore: name what the interface permission was blocking --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cbedfcb4b6..cd7b9f3eeb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -31,7 +31,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ—’๏ธ **A note edit survives leaving the page.** 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. [#29745](https://github.com/open-webui/open-webui/pull/29745), [#29744](https://github.com/open-webui/open-webui/issues/29744) - ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) - ๐Ÿ™‹ **Answering in your own words lets you send.** Where the last question a model asks is answered by typing into the other field rather than picking an option, the button that sends the answers stayed greyed out however much was filled in; it now follows what has been entered. [#29494](https://github.com/open-webui/open-webui/pull/29494), [#29311](https://github.com/open-webui/open-webui/issues/29311) -- ๐ŸŽš๏ธ **Settings you may change save even where others are barred.** An account without permission to change the interface settings had every settings save refused outright, its notification and tool server settings among them; the settings it may not touch are now left as they are and the rest saves. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) +- ๐ŸŽš๏ธ **Settings you may change save even where others are barred.** An account without permission to change the interface settings had every save through the personal settings refused outright, so its system prompt, notifications, audio, keyboard shortcuts and pinned models could not be kept either, however explicitly they were allowed; the interface settings it may not touch are now left as they are and everything else saves. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ—œ๏ธ **Saving one setting no longer rewrites the rest.** Every save sent the whole settings object back, so whatever the page happened to be holding was written into the account, another tab's older copy included, and a default an administrator changed afterwards never reached anyone who had saved anything; only the settings actually changed are stored now, and clearing the default system prompt clears it rather than leaving the old one behind. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - โš ๏ธ **A settings save that fails says so.** 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. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) From d920db3edf104030c443bec175578dc66a449fc4 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Tue, 8 Sep 2026 06:07:22 +0000 Subject: [PATCH 66/88] chore: cover the account menu row highlight --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cd7b9f3eeb..f92487f16f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -35,6 +35,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ—œ๏ธ **Saving one setting no longer rewrites the rest.** Every save sent the whole settings object back, so whatever the page happened to be holding was written into the account, another tab's older copy included, and a default an administrator changed afterwards never reached anyone who had saved anything; only the settings actually changed are stored now, and clearing the default system prompt clears it rather than leaving the old one behind. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - โš ๏ธ **A settings save that fails says so.** 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. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) +- ๐Ÿชž **Account menu rows light up as one.** An entry in the account menu that carries a pin button beside it, among them Workspace, Notes, Calendar and Automations, highlighted only under the link and left the rest of the row plain, in a shade that did not match the other menus either; the whole row now lights up in the shared colour, in high contrast as well, and a long label no longer pushes the pin out of the menu. [Commit](https://github.com/open-webui/open-webui/commit/e723dcda58f638a5da2398743d22d3e5854042bf) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From 889dd79f35b7efc2ca07e9b010f2f7004edc75a3 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Tue, 8 Sep 2026 20:10:30 +0000 Subject: [PATCH 67/88] chore: cover diff blocks, note formatting, tika 4 and the oauth session expiry --- CHANGELOG.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f92487f16f..f89fec24e8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ 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.11.4] - 2026-09-07 +## [0.11.4] - 2026-09-08 ### Added @@ -17,10 +17,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) - ๐Ÿท๏ธ **Custom file metadata.** 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. [#29499](https://github.com/open-webui/open-webui/pull/29499), [#29486](https://github.com/open-webui/open-webui/issues/29486), [Commit](https://github.com/open-webui/open-webui/commit/894655f66b9563890e63c76090ddecc90a311eb2), [#29502](https://github.com/open-webui/open-webui/pull/29502) - ๐Ÿ—‘๏ธ **Quick delete for notes and automations.** 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. [#29635](https://github.com/open-webui/open-webui/pull/29635), [#29633](https://github.com/open-webui/open-webui/issues/29633), [#29640](https://github.com/open-webui/open-webui/pull/29640), [#29637](https://github.com/open-webui/open-webui/issues/29637) +- ๐Ÿ”€ **Diffs are drawn as diffs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/254e29b9af634145dde0450451a36f0dfbd8f421) +- โœ’๏ธ **A formatting switch for notes.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5) - ๐ŸŽ›๏ธ **Filtering the admin model list by where a model comes from.** 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. [Commit](https://github.com/open-webui/open-webui/commit/9e634c0c56e0a060717f1e24a11b082daf664036) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) -- ๐ŸŒ **Translation updates.** Translations for Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3) +- ๐ŸŒ **Translation updates.** Translations for Japanese, Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798) ### Fixed @@ -29,6 +31,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”’ **Listing one connection's models is for administrators again.** 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. [#29619](https://github.com/open-webui/open-webui/pull/29619) - ๐Ÿช **Cookies reach only the connections told to receive them.** A model connection, tool server or terminal server authenticating as the signed-in person was handed this instance's browser cookies along with the request; that now happens only where the connection's new Forward cookies switch is turned on, which an instance relying on it has to do after upgrading. [Commit](https://github.com/open-webui/open-webui/commit/b71744b17823f7a3a9a64cb363e79a7164ed5b23), [Commit](https://github.com/open-webui/open-webui/commit/3cda47cdb449aac970426f0929c9e5f8bb8bd807), [Commit](https://github.com/open-webui/open-webui/commit/f9f815c86220f809fad5ee1300c44f55dea74c79) - ๐Ÿ—’๏ธ **A note edit survives leaving the page.** 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. [#29745](https://github.com/open-webui/open-webui/pull/29745), [#29744](https://github.com/open-webui/open-webui/issues/29744) +- ๐Ÿ“‹ **Pasting into a note lands where you put it.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5) +- ๐ŸŒ **A web address someone else types stays as they typed it.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5) +- ๐Ÿ“‘ **Documents pulled through Tika 4 keep their shape.** 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. [Commit](https://github.com/open-webui/open-webui/commit/ba34bee2d17e1c00238c85a8aab1a11a60db164e) +- โณ **Sign-in sessions last as long as the token behind them.** A session with an identity provider was measured by whichever of its two tokens expired first, so where the identity token was the shorter it was renewed early and dropped whenever that renewal failed; it now follows the token it actually calls with, and the shorter one is still respected where an integration is handed it. [Commit](https://github.com/open-webui/open-webui/commit/aaaf26fb8ede28854dd660b11b85ba6bafe64007) - ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) - ๐Ÿ™‹ **Answering in your own words lets you send.** Where the last question a model asks is answered by typing into the other field rather than picking an option, the button that sends the answers stayed greyed out however much was filled in; it now follows what has been entered. [#29494](https://github.com/open-webui/open-webui/pull/29494), [#29311](https://github.com/open-webui/open-webui/issues/29311) - ๐ŸŽš๏ธ **Settings you may change save even where others are barred.** An account without permission to change the interface settings had every save through the personal settings refused outright, so its system prompt, notifications, audio, keyboard shortcuts and pinned models could not be kept either, however explicitly they were allowed; the interface settings it may not touch are now left as they are and everything else saves. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) From f5794c05ccf4f6eb3083b431add8fc1c6155392f Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Tue, 8 Sep 2026 21:10:25 +0000 Subject: [PATCH 68/88] chore: cover folder upload and the file browser selection fixes --- CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f89fec24e8..bd9a6f5ea2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“‰ **The slim image is about a ninth of its size.** 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. [Commit](https://github.com/open-webui/open-webui/commit/cb942bb94c8dc7941336088fb3392e2398ff56c1), [Commit](https://github.com/open-webui/open-webui/commit/d27aa72ab4a7b5632b4ad49e8467081ad3d7ebb4) - ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **A tab for every command a model runs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a), [Commit](https://github.com/open-webui/open-webui/commit/675b9839f17df94f866c871cbdb9881323a18a8a) +- ๐Ÿ“‚ **Uploading a whole folder to a terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐Ÿ—ฃ๏ธ **Models and tools can carry their own translations.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) @@ -21,7 +22,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โœ’๏ธ **A formatting switch for notes.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5) - ๐ŸŽ›๏ธ **Filtering the admin model list by where a model comes from.** 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. [Commit](https://github.com/open-webui/open-webui/commit/9e634c0c56e0a060717f1e24a11b082daf664036) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) -- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5) +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) - ๐ŸŒ **Translation updates.** Translations for Japanese, Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798) ### Fixed @@ -42,6 +43,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โš ๏ธ **A settings save that fails says so.** 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. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) - ๐Ÿชž **Account menu rows light up as one.** An entry in the account menu that carries a pin button beside it, among them Workspace, Notes, Calendar and Automations, highlighted only under the link and left the rest of the row plain, in a shade that did not match the other menus either; the whole row now lights up in the shared colour, in high contrast as well, and a long label no longer pushes the pin out of the menu. [Commit](https://github.com/open-webui/open-webui/commit/e723dcda58f638a5da2398743d22d3e5854042bf) +- ๐Ÿ”ฒ **Shift-clicking files adds to what is already picked.** Holding Shift over a file in the terminal's file browser threw away the rest of the selection and kept only the new stretch, and clicking a file already picked could not take it back out; a range now joins what is selected, and clicking through a selected file removes its range. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) +- ๐Ÿ“› **An upload that fails says so.** A file that could not be written to the terminal passed in silence and the browser refreshed as though it had arrived, in a directory that may no longer have been the one on screen; a failure now names itself, and the listing is only reread where it is still the one you are looking at. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From 9ddbc43f5258c15427516ce874c171be2fa8dcb6 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 01:10:42 +0000 Subject: [PATCH 69/88] chore: cover file comparison and the query link submit --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bd9a6f5ea2..f2707441fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ 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.11.4] - 2026-09-08 +## [0.11.4] - 2026-09-09 ### Added @@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“ฆ **The standard image is about 170 MB smaller.** 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. [#29731](https://github.com/open-webui/open-webui/pull/29731), [#29723](https://github.com/open-webui/open-webui/pull/29723), [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [#29728](https://github.com/open-webui/open-webui/pull/29728), [Commit](https://github.com/open-webui/open-webui/commit/91f8775b28b52c9ae7f2ab990cf2490bda8055d6), [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52), [Commit](https://github.com/open-webui/open-webui/commit/508de20779168003e538bb936b49a31d4a8fb8bb), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ–ฅ๏ธ **A tab for every command a model runs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a), [Commit](https://github.com/open-webui/open-webui/commit/675b9839f17df94f866c871cbdb9881323a18a8a) - ๐Ÿ“‚ **Uploading a whole folder to a terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) +- โš–๏ธ **Comparing two files in a terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/8556033c6b64fa53e44152ebab1f889a578529af), [Commit](https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb) - ๐Ÿ—ฃ๏ธ **Models and tools can carry their own translations.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) @@ -45,6 +46,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿชž **Account menu rows light up as one.** An entry in the account menu that carries a pin button beside it, among them Workspace, Notes, Calendar and Automations, highlighted only under the link and left the rest of the row plain, in a shade that did not match the other menus either; the whole row now lights up in the shared colour, in high contrast as well, and a long label no longer pushes the pin out of the menu. [Commit](https://github.com/open-webui/open-webui/commit/e723dcda58f638a5da2398743d22d3e5854042bf) - ๐Ÿ”ฒ **Shift-clicking files adds to what is already picked.** Holding Shift over a file in the terminal's file browser threw away the rest of the selection and kept only the new stretch, and clicking a file already picked could not take it back out; a range now joins what is selected, and clicking through a selected file removes its range. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐Ÿ“› **An upload that fails says so.** A file that could not be written to the terminal passed in silence and the browser refreshed as though it had arrived, in a directory that may no longer have been the one on screen; a failure now names itself, and the listing is only reread where it is still the one you are looking at. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) +- ๐ŸŽฏ **A question carried in a link is sent once it is written.** 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. [Commit](https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb), [Commit](https://github.com/open-webui/open-webui/commit/a23b579233276e40159eb615917b9aeb7d5ed5c9) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From b5be8b4cafaad6126b4a5e24c1b600f0073013b2 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 02:08:35 +0000 Subject: [PATCH 70/88] chore: cover the task list height cap --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f2707441fe..93299ddee8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -47,6 +47,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”ฒ **Shift-clicking files adds to what is already picked.** Holding Shift over a file in the terminal's file browser threw away the rest of the selection and kept only the new stretch, and clicking a file already picked could not take it back out; a range now joins what is selected, and clicking through a selected file removes its range. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐Ÿ“› **An upload that fails says so.** A file that could not be written to the terminal passed in silence and the browser refreshed as though it had arrived, in a directory that may no longer have been the one on screen; a failure now names itself, and the listing is only reread where it is still the one you are looking at. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐ŸŽฏ **A question carried in a link is sent once it is written.** 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. [Commit](https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb), [Commit](https://github.com/open-webui/open-webui/commit/a23b579233276e40159eb615917b9aeb7d5ed5c9) +- ๐Ÿ“œ **A long list of tasks keeps to its own corner.** 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. [Commit](https://github.com/open-webui/open-webui/commit/307b9b9133f0c7ad899f4b76226059da6f3177eb) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From f00dff429cd04fcf867736d93f1764a32a33b7be Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 03:09:19 +0000 Subject: [PATCH 71/88] chore: add the server side of the tool call match fix --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 93299ddee8..52ae80f1d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -37,7 +37,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸŒ **A web address someone else types stays as they typed it.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5) - ๐Ÿ“‘ **Documents pulled through Tika 4 keep their shape.** 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. [Commit](https://github.com/open-webui/open-webui/commit/ba34bee2d17e1c00238c85a8aab1a11a60db164e) - โณ **Sign-in sessions last as long as the token behind them.** A session with an identity provider was measured by whichever of its two tokens expired first, so where the identity token was the shorter it was renewed early and dropped whenever that renewal failed; it now follows the token it actually calls with, and the shorter one is still respected where an integration is handed it. [Commit](https://github.com/open-webui/open-webui/commit/aaaf26fb8ede28854dd660b11b85ba6bafe64007) -- ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932) +- ๐Ÿงฉ **Tool steps stay in a finished reply.** 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. [Commit](https://github.com/open-webui/open-webui/commit/e1bfefdf9f8f2012cecfc7d81079bd6fff147932), [Commit](https://github.com/open-webui/open-webui/commit/31b272d3c93b87636c920f2aa68d6caaa07ae79a) - ๐Ÿ™‹ **Answering in your own words lets you send.** Where the last question a model asks is answered by typing into the other field rather than picking an option, the button that sends the answers stayed greyed out however much was filled in; it now follows what has been entered. [#29494](https://github.com/open-webui/open-webui/pull/29494), [#29311](https://github.com/open-webui/open-webui/issues/29311) - ๐ŸŽš๏ธ **Settings you may change save even where others are barred.** An account without permission to change the interface settings had every save through the personal settings refused outright, so its system prompt, notifications, audio, keyboard shortcuts and pinned models could not be kept either, however explicitly they were allowed; the interface settings it may not touch are now left as they are and everything else saves. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿ—œ๏ธ **Saving one setting no longer rewrites the rest.** Every save sent the whole settings object back, so whatever the page happened to be holding was written into the account, another tab's older copy included, and a default an administrator changed afterwards never reached anyone who had saved anything; only the settings actually changed are stored now, and clearing the default system prompt clears it rather than leaving the old one behind. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) From fc60f0aea31b768fa19b86a4a00c00157803d89c Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 04:09:42 +0000 Subject: [PATCH 72/88] chore: cover the exa result length cap --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 52ae80f1d2..e9ff05d2d8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ–ฅ๏ธ **A tab for every command a model runs.** 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. [Commit](https://github.com/open-webui/open-webui/commit/54a7a7a7ce22725074c29c7e827446f5dce1421c), [Commit](https://github.com/open-webui/open-webui/commit/f3eade42aead0a3b96ada3a300d6c294c89f74a8), [Commit](https://github.com/open-webui/open-webui/commit/de1203f9b5d3d8b2a84bf5c89d1c61542469367a), [Commit](https://github.com/open-webui/open-webui/commit/675b9839f17df94f866c871cbdb9881323a18a8a) - ๐Ÿ“‚ **Uploading a whole folder to a terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - โš–๏ธ **Comparing two files in a terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/8556033c6b64fa53e44152ebab1f889a578529af), [Commit](https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb) +- ๐Ÿ“ **A cap on how much each Exa result carries.** 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`, so a few long pages no longer crowd out the rest of the conversation; left empty, results arrive whole as before, and a value that is not a positive whole number stops the server at startup rather than being quietly ignored. [Commit](https://github.com/open-webui/open-webui/commit/12b14124b9376eccf2ba7cf3dba92bc145493703) - ๐Ÿ—ฃ๏ธ **Models and tools can carry their own translations.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734), [Commit](https://github.com/open-webui/open-webui/commit/858ab727d2d80bb3c9ef40f01a32de7a12ca75c9), [Commit](https://github.com/open-webui/open-webui/commit/3facfa61d413945d7144d26b827fcce1f3aef7c5), [Commit](https://github.com/open-webui/open-webui/commit/85b11a4f3504434bd9cd0748629b8a84817fb4f2) - โœ๏ธ **Interface text you can reword.** 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. [Commit](https://github.com/open-webui/open-webui/commit/67ac1a4e937271a02bfb02a330aa99dc8192cbf4) - ๐Ÿ”“ **Turning off the sign-in form.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c4a349651e34bf5d0920bb5e26707ae9961ac39f) From cf1d6df4f9de81ae8699ed072e70c19078349a58 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 16:16:28 +0000 Subject: [PATCH 73/88] chore: cover the modal shortcut, build stamp and sticky code headings --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e9ff05d2d8..283261f1be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -49,6 +49,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“› **An upload that fails says so.** A file that could not be written to the terminal passed in silence and the browser refreshed as though it had arrived, in a directory that may no longer have been the one on screen; a failure now names itself, and the listing is only reread where it is still the one you are looking at. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐ŸŽฏ **A question carried in a link is sent once it is written.** 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. [Commit](https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb), [Commit](https://github.com/open-webui/open-webui/commit/a23b579233276e40159eb615917b9aeb7d5ed5c9) - ๐Ÿ“œ **A long list of tasks keeps to its own corner.** 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. [Commit](https://github.com/open-webui/open-webui/commit/307b9b9133f0c7ad899f4b76226059da6f3177eb) +- โŽ‹ **Closing a dialog closes the one on top.** 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. [#29830](https://github.com/open-webui/open-webui/pull/29830), [#29817](https://github.com/open-webui/open-webui/issues/29817) +- ๐Ÿ”ƒ **A tab left open through an update reloads itself.** 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. [#29832](https://github.com/open-webui/open-webui/pull/29832), [#29831](https://github.com/open-webui/open-webui/issues/29831) +- ๐Ÿ“Œ **Code headings stay at the top in channels.** In a thread or the pinned messages of a channel, the bar naming a piece of code hung below the top of the panel and floated over the code as it scrolled, and its corners spilled past the rounded block; it now sits flush at the top, clipped to the block, in Firefox as much as anywhere else. [#29836](https://github.com/open-webui/open-webui/pull/29836), [#29835](https://github.com/open-webui/open-webui/issues/29835) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From f2381b8189363e0196e0fa7643d3a3d99181a158 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 16:35:53 +0000 Subject: [PATCH 74/88] chore: cover knowledge listing order, terminal proxy headers and stale tool links --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 283261f1be..cc4b0da557 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -24,6 +24,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โœ’๏ธ **A formatting switch for notes.** 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. [Commit](https://github.com/open-webui/open-webui/commit/d8f27e745bd31c89efa25cbe0f41bb0f70576fc5) - ๐ŸŽ›๏ธ **Filtering the admin model list by where a model comes from.** 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. [Commit](https://github.com/open-webui/open-webui/commit/9e634c0c56e0a060717f1e24a11b082daf664036) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) +- ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) - ๐ŸŒ **Translation updates.** Translations for Japanese, Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798) @@ -52,6 +53,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โŽ‹ **Closing a dialog closes the one on top.** 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. [#29830](https://github.com/open-webui/open-webui/pull/29830), [#29817](https://github.com/open-webui/open-webui/issues/29817) - ๐Ÿ”ƒ **A tab left open through an update reloads itself.** 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. [#29832](https://github.com/open-webui/open-webui/pull/29832), [#29831](https://github.com/open-webui/open-webui/issues/29831) - ๐Ÿ“Œ **Code headings stay at the top in channels.** In a thread or the pinned messages of a channel, the bar naming a piece of code hung below the top of the panel and floated over the code as it scrolled, and its corners spilled past the rounded block; it now sits flush at the top, clipped to the block, in Firefox as much as anywhere else. [#29836](https://github.com/open-webui/open-webui/pull/29836), [#29835](https://github.com/open-webui/open-webui/issues/29835) +- ๐Ÿ“จ **Terminal replies stop arriving with doubled headers.** A response proxied back from a terminal server carried that server's own `Server` and `Date` headers alongside the ones this instance sets, so a reverse proxy in front of Open WebUI logged a duplicate header line for every request, filling gigabytes of error log a day where the ports endpoint is polled; those headers are now stripped along with the other hop-by-hop ones. [#29841](https://github.com/open-webui/open-webui/pull/29841), [#29824](https://github.com/open-webui/open-webui/issues/29824) +- โ›“๏ธ **A link naming a tool that is not there opens without it.** 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. [#29803](https://github.com/open-webui/open-webui/pull/29803) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From de3b003141b51803d3c379722c97f6d8264ace87 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 16:54:41 +0000 Subject: [PATCH 75/88] chore: cover the forwarded auth type header and terminal attachment name clashes --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc4b0da557..fc208e4444 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,6 +25,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸŽ›๏ธ **Filtering the admin model list by where a model comes from.** 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. [Commit](https://github.com/open-webui/open-webui/commit/9e634c0c56e0a060717f1e24a11b082daf664036) - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) +- ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) - ๐ŸŒ **Translation updates.** Translations for Japanese, Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798) @@ -47,6 +48,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”  **Menu text follows the interface scale.** The entries in the menus that drop down across the interface, among them the account menu and the menus on a chat, were pinned to a fixed size and stayed put while the menu around them grew; they now scale with the rest of the interface. [#29493](https://github.com/open-webui/open-webui/pull/29493), [#29488](https://github.com/open-webui/open-webui/issues/29488) - ๐Ÿชž **Account menu rows light up as one.** An entry in the account menu that carries a pin button beside it, among them Workspace, Notes, Calendar and Automations, highlighted only under the link and left the rest of the row plain, in a shade that did not match the other menus either; the whole row now lights up in the shared colour, in high contrast as well, and a long label no longer pushes the pin out of the menu. [Commit](https://github.com/open-webui/open-webui/commit/e723dcda58f638a5da2398743d22d3e5854042bf) - ๐Ÿ”ฒ **Shift-clicking files adds to what is already picked.** Holding Shift over a file in the terminal's file browser threw away the rest of the selection and kept only the new stretch, and clicking a file already picked could not take it back out; a range now joins what is selected, and clicking through a selected file removes its range. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) +- ๐Ÿ›Ÿ **Attaching a file no longer writes over one already there.** 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. Two uploads arriving at the same moment from different browsers can still land on the same name. [Commit](https://github.com/open-webui/open-webui/commit/d70053e44993f271d534fb87d2b40724b028fca2) - ๐Ÿ“› **An upload that fails says so.** A file that could not be written to the terminal passed in silence and the browser refreshed as though it had arrived, in a directory that may no longer have been the one on screen; a failure now names itself, and the listing is only reread where it is still the one you are looking at. [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [Commit](https://github.com/open-webui/open-webui/commit/4cc0d48b), [Commit](https://github.com/open-webui/open-webui/commit/674760bf) - ๐ŸŽฏ **A question carried in a link is sent once it is written.** 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. [Commit](https://github.com/open-webui/open-webui/commit/3808eace6c2beb1904f0f04fdd443ec544f94acb), [Commit](https://github.com/open-webui/open-webui/commit/a23b579233276e40159eb615917b9aeb7d5ed5c9) - ๐Ÿ“œ **A long list of tasks keeps to its own corner.** 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. [Commit](https://github.com/open-webui/open-webui/commit/307b9b9133f0c7ad899f4b76226059da6f3177eb) From 8dbf9e18b82bf0fe80473c8f603eeeae5607e6a5 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 17:03:30 +0000 Subject: [PATCH 76/88] chore: cover the misleading model editor permission error --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index fc208e4444..89f08820d6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -57,6 +57,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“Œ **Code headings stay at the top in channels.** In a thread or the pinned messages of a channel, the bar naming a piece of code hung below the top of the panel and floated over the code as it scrolled, and its corners spilled past the rounded block; it now sits flush at the top, clipped to the block, in Firefox as much as anywhere else. [#29836](https://github.com/open-webui/open-webui/pull/29836), [#29835](https://github.com/open-webui/open-webui/issues/29835) - ๐Ÿ“จ **Terminal replies stop arriving with doubled headers.** A response proxied back from a terminal server carried that server's own `Server` and `Date` headers alongside the ones this instance sets, so a reverse proxy in front of Open WebUI logged a duplicate header line for every request, filling gigabytes of error log a day where the ports endpoint is polled; those headers are now stripped along with the other hop-by-hop ones. [#29841](https://github.com/open-webui/open-webui/pull/29841), [#29824](https://github.com/open-webui/open-webui/issues/29824) - โ›“๏ธ **A link naming a tool that is not there opens without it.** 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. [#29803](https://github.com/open-webui/open-webui/pull/29803) +- ๐Ÿšซ **A model that will not open stops blaming your permissions.** Opening a workspace model for editing by an id that cannot be loaded, whether the model is gone, the id is wrong or the request failed, sent you back to the model list with "You do not have permission to edit this model", pointing at permissions for something that was never a permission problem; that message now appears only where the model loaded and you really may not edit it. [#29694](https://github.com/open-webui/open-webui/pull/29694), [#29629](https://github.com/open-webui/open-webui/issues/29629) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From dde76a9c1ade1e292b233a9762b5a64fdb3be730 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 20:28:13 +0000 Subject: [PATCH 77/88] chore: cover the thread notification and overlapping select chevrons --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 89f08820d6..c9bdfa2bc2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -58,6 +58,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“จ **Terminal replies stop arriving with doubled headers.** A response proxied back from a terminal server carried that server's own `Server` and `Date` headers alongside the ones this instance sets, so a reverse proxy in front of Open WebUI logged a duplicate header line for every request, filling gigabytes of error log a day where the ports endpoint is polled; those headers are now stripped along with the other hop-by-hop ones. [#29841](https://github.com/open-webui/open-webui/pull/29841), [#29824](https://github.com/open-webui/open-webui/issues/29824) - โ›“๏ธ **A link naming a tool that is not there opens without it.** 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. [#29803](https://github.com/open-webui/open-webui/pull/29803) - ๐Ÿšซ **A model that will not open stops blaming your permissions.** Opening a workspace model for editing by an id that cannot be loaded, whether the model is gone, the id is wrong or the request failed, sent you back to the model list with "You do not have permission to edit this model", pointing at permissions for something that was never a permission problem; that message now appears only where the model loaded and you really may not edit it. [#29694](https://github.com/open-webui/open-webui/pull/29694), [#29629](https://github.com/open-webui/open-webui/issues/29629) +- ๐Ÿงต **A notification about a thread reply opens the thread.** 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. [#29856](https://github.com/open-webui/open-webui/pull/29856), [#29855](https://github.com/open-webui/open-webui/issues/29855) +- ๐Ÿ”ฝ **Dropdown arrows stop sitting on the text.** In the dropdowns drawn no wider than what is in them, among them the provider on a new connection, how a group shares, and the read or write level beside a group or a person, the arrow overlapped the last characters of the longest choice; there is now room for it. [#29866](https://github.com/open-webui/open-webui/pull/29866), [#29865](https://github.com/open-webui/open-webui/issues/29865) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From 40c0c89b0d686fdbee5f42c143ace8ce612b5568 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 20:39:51 +0000 Subject: [PATCH 78/88] chore: cover the OpenAI and Ollama proxy header stripping --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c9bdfa2bc2..f6489df186 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -55,11 +55,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โŽ‹ **Closing a dialog closes the one on top.** 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. [#29830](https://github.com/open-webui/open-webui/pull/29830), [#29817](https://github.com/open-webui/open-webui/issues/29817) - ๐Ÿ”ƒ **A tab left open through an update reloads itself.** 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. [#29832](https://github.com/open-webui/open-webui/pull/29832), [#29831](https://github.com/open-webui/open-webui/issues/29831) - ๐Ÿ“Œ **Code headings stay at the top in channels.** In a thread or the pinned messages of a channel, the bar naming a piece of code hung below the top of the panel and floated over the code as it scrolled, and its corners spilled past the rounded block; it now sits flush at the top, clipped to the block, in Firefox as much as anywhere else. [#29836](https://github.com/open-webui/open-webui/pull/29836), [#29835](https://github.com/open-webui/open-webui/issues/29835) -- ๐Ÿ“จ **Terminal replies stop arriving with doubled headers.** A response proxied back from a terminal server carried that server's own `Server` and `Date` headers alongside the ones this instance sets, so a reverse proxy in front of Open WebUI logged a duplicate header line for every request, filling gigabytes of error log a day where the ports endpoint is polled; those headers are now stripped along with the other hop-by-hop ones. [#29841](https://github.com/open-webui/open-webui/pull/29841), [#29824](https://github.com/open-webui/open-webui/issues/29824) +- ๐Ÿ“จ **Proxied replies stop arriving with doubled headers.** A response passed back from a terminal server, or from an OpenAI or Ollama connection, carried that server's own `Server` and `Date` headers alongside the ones this instance sets, so a reverse proxy in front of Open WebUI logged a duplicate header line for every one, filling gigabytes of error log a day where a terminal's ports are polled or replies are streamed; those headers are now dropped along with the encoding headers already being dropped. [#29841](https://github.com/open-webui/open-webui/pull/29841), [#29824](https://github.com/open-webui/open-webui/issues/29824), [#29843](https://github.com/open-webui/open-webui/pull/29843) - โ›“๏ธ **A link naming a tool that is not there opens without it.** 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. [#29803](https://github.com/open-webui/open-webui/pull/29803) - ๐Ÿšซ **A model that will not open stops blaming your permissions.** Opening a workspace model for editing by an id that cannot be loaded, whether the model is gone, the id is wrong or the request failed, sent you back to the model list with "You do not have permission to edit this model", pointing at permissions for something that was never a permission problem; that message now appears only where the model loaded and you really may not edit it. [#29694](https://github.com/open-webui/open-webui/pull/29694), [#29629](https://github.com/open-webui/open-webui/issues/29629) - ๐Ÿงต **A notification about a thread reply opens the thread.** 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. [#29856](https://github.com/open-webui/open-webui/pull/29856), [#29855](https://github.com/open-webui/open-webui/issues/29855) - ๐Ÿ”ฝ **Dropdown arrows stop sitting on the text.** In the dropdowns drawn no wider than what is in them, among them the provider on a new connection, how a group shares, and the read or write level beside a group or a person, the arrow overlapped the last characters of the longest choice; there is now room for it. [#29866](https://github.com/open-webui/open-webui/pull/29866), [#29865](https://github.com/open-webui/open-webui/issues/29865) +- ๐ŸงŠ **Replies from vLLM and LiteLLM stop arriving mangled.** The header filter on the OpenAI and Ollama connections compared names in title case only, so an upstream that writes them in lower case, as anything served by uvicorn does, had nothing stripped at all, `Content-Encoding` included, and a desktop or programmatic client then failed trying to decompress a body the server had already decoded. Names are now compared without regard to case. [#29843](https://github.com/open-webui/open-webui/pull/29843) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From a8b3e161ef0505bd3954ec525d1058db260283c1 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 20:48:26 +0000 Subject: [PATCH 79/88] chore: cover stopping every task attached to a chat --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index f6489df186..14e4701b72 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -61,6 +61,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงต **A notification about a thread reply opens the thread.** 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. [#29856](https://github.com/open-webui/open-webui/pull/29856), [#29855](https://github.com/open-webui/open-webui/issues/29855) - ๐Ÿ”ฝ **Dropdown arrows stop sitting on the text.** In the dropdowns drawn no wider than what is in them, among them the provider on a new connection, how a group shares, and the read or write level beside a group or a person, the arrow overlapped the last characters of the longest choice; there is now room for it. [#29866](https://github.com/open-webui/open-webui/pull/29866), [#29865](https://github.com/open-webui/open-webui/issues/29865) - ๐ŸงŠ **Replies from vLLM and LiteLLM stop arriving mangled.** The header filter on the OpenAI and Ollama connections compared names in title case only, so an upstream that writes them in lower case, as anything served by uvicorn does, had nothing stripped at all, `Content-Encoding` included, and a desktop or programmatic client then failed trying to decompress a body the server had already decoded. Names are now compared without regard to case. [#29843](https://github.com/open-webui/open-webui/pull/29843) +- ๐Ÿ›‘ **Stopping a chat stops everything running in it.** 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. Instances sharing their state through Redis were not affected. [Commit](https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From 01011d655d8ab51f19fa30feff99eb0ebec5ddb5 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 21:01:48 +0000 Subject: [PATCH 80/88] chore: cover code blocks in channel structured output replies --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 14e4701b72..838b335c6a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -62,6 +62,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”ฝ **Dropdown arrows stop sitting on the text.** In the dropdowns drawn no wider than what is in them, among them the provider on a new connection, how a group shares, and the read or write level beside a group or a person, the arrow overlapped the last characters of the longest choice; there is now room for it. [#29866](https://github.com/open-webui/open-webui/pull/29866), [#29865](https://github.com/open-webui/open-webui/issues/29865) - ๐ŸงŠ **Replies from vLLM and LiteLLM stop arriving mangled.** The header filter on the OpenAI and Ollama connections compared names in title case only, so an upstream that writes them in lower case, as anything served by uvicorn does, had nothing stripped at all, `Content-Encoding` included, and a desktop or programmatic client then failed trying to decompress a body the server had already decoded. Names are now compared without regard to case. [#29843](https://github.com/open-webui/open-webui/pull/29843) - ๐Ÿ›‘ **Stopping a chat stops everything running in it.** 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. Instances sharing their state through Redis were not affected. [Commit](https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0) +- ๐Ÿ–Š๏ธ **Code in a channel model reply behaves like code anywhere else.** 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. [#29861](https://github.com/open-webui/open-webui/pull/29861) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From b9c130c327cf77ff4832e3dce6062116077d9d69 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 9 Sep 2026 21:13:47 +0000 Subject: [PATCH 81/88] chore: cover whitespace in model ids and knowledge folder deletion --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 838b335c6a..8e44a9b925 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -63,6 +63,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐ŸงŠ **Replies from vLLM and LiteLLM stop arriving mangled.** The header filter on the OpenAI and Ollama connections compared names in title case only, so an upstream that writes them in lower case, as anything served by uvicorn does, had nothing stripped at all, `Content-Encoding` included, and a desktop or programmatic client then failed trying to decompress a body the server had already decoded. Names are now compared without regard to case. [#29843](https://github.com/open-webui/open-webui/pull/29843) - ๐Ÿ›‘ **Stopping a chat stops everything running in it.** 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. Instances sharing their state through Redis were not affected. [Commit](https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0) - ๐Ÿ–Š๏ธ **Code in a channel model reply behaves like code anywhere else.** 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. [#29861](https://github.com/open-webui/open-webui/pull/29861) +- ๐Ÿงฝ **Deleting a folder in a knowledge base takes its contents with it.** 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. [Commit](https://github.com/open-webui/open-webui/commit/17dbc6f001aeea25ae1df528cb79bb272eca4a77) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) @@ -107,6 +108,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“ฅ **Slim pulls the code interpreter's packages from a CDN.** The slim image carries the Python runtime that runs code in the browser but not the packages it draws on, so the browser downloads numpy, pandas, matplotlib, scikit-learn and the rest from `cdn.jsdelivr.net` the first time code imports them, which means the code interpreter needs outbound access from the browser and stops working where that is blocked. [Commit](https://github.com/open-webui/open-webui/commit/98fcb844e1b19f7dd6289af26273cdec5447dc52) - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) - ๐Ÿงพ **Tools importing packages they never declared stop working.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) +- ๐Ÿ†” **A model's ID may no longer hold a space.** Creating or saving a workspace model whose ID contains a space or a tab is now refused in the editor and through the API, and such a model is skipped when models are imported. A model already stored with whitespace in its ID goes on answering, but it can no longer be saved or have its access changed until it is recreated under an ID without one. [Commit](https://github.com/open-webui/open-webui/commit/8a19e2f867063256bb2836649e2fe80af41ef748) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿงท **Personal settings are written a field at a time.** `POST /api/v1/users/user/settings/update` now patches the settings named in it rather than replacing the whole interface object: a field left out keeps its value, a field sent as null goes back to the administrator's default, and anything writing settings directly has to follow suit. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿชต **A refused model says why in the log.** A request turned away with "Model not found" now writes a warning naming the account, the model and the reason it was refused, whether the model is not registered, the account holds no grant on it, or a base model behind it is out of reach, while the message the caller sees stays as vague as before. [Commit](https://github.com/open-webui/open-webui/commit/f5fcf4c89fb27ed39825875d573446fa84aa2a5b) From 6ece518ccd8fec1a52fcbf267d3906493e669bfb Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 10 Sep 2026 00:07:57 +0000 Subject: [PATCH 82/88] chore: cover automation schedule times and mention IDs --- CHANGELOG.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8e44a9b925..77e3232008 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ 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.11.4] - 2026-09-09 +## [0.11.4] - 2026-09-10 ### Added @@ -64,6 +64,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ›‘ **Stopping a chat stops everything running in it.** 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. Instances sharing their state through Redis were not affected. [Commit](https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0) - ๐Ÿ–Š๏ธ **Code in a channel model reply behaves like code anywhere else.** 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. [#29861](https://github.com/open-webui/open-webui/pull/29861) - ๐Ÿงฝ **Deleting a folder in a knowledge base takes its contents with it.** 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. [Commit](https://github.com/open-webui/open-webui/commit/17dbc6f001aeea25ae1df528cb79bb272eca4a77) +- โฐ **An automation's schedule is read as it was written.** A schedule that puts the time in `DTSTART`, as a hand-written rule normally does, or that attaches a time zone to it, was listed as running at midnight and opened in the editor set to nine in the morning, so the automations page told you the wrong hour and saving the automation again moved when it actually ran; the hour and minute in `DTSTART` are now used wherever the rule names none of its own. [Commit](https://github.com/open-webui/open-webui/commit/540467b90a430e47e536c20710878b342de659fb) +- ๐Ÿ“ฃ **A mention of a model with an awkward ID shows as a chip.** 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. [#29864](https://github.com/open-webui/open-webui/pull/29864) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From 717bb4d909444214417085efd7185968b92f103e Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 10 Sep 2026 04:06:46 +0000 Subject: [PATCH 83/88] chore: cover the latest translation fills --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 77e3232008..85f4ab4820 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,7 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) - ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) -- ๐ŸŒ **Translation updates.** Translations for Japanese, Traditional Chinese, Korean, Finnish, Russian, Ukrainian, German, Spanish, and Portuguese (Brazil) were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798) +- ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3) ### Fixed From 98a9195e9dec22656375e0beb52c184f700e9b53 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 10 Sep 2026 18:13:10 +0000 Subject: [PATCH 84/88] chore: note the further pt-BR translation pass --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 85f4ab4820..23f0e94b53 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,7 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) - ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) -- ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3) +- ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3), [#29870](https://github.com/open-webui/open-webui/pull/29870) ### Fixed From c0377d324bad1bad66028d8542c013314ee70495 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Thu, 10 Sep 2026 23:08:32 +0000 Subject: [PATCH 85/88] chore: cover the follow-up suggestion in the message box --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 23f0e94b53..528374e27e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -26,6 +26,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - โšก **Searching without holding up the server.** Searching the text of chats and knowledge now runs beside the rest of the server rather than in front of it, so a long search no longer keeps other requests waiting. [#29621](https://github.com/open-webui/open-webui/pull/29621) - ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) - ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) +- ๐Ÿ’ก **The first follow-up waits in the message box.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7aaa4a692e949724913834efc47c57572042703b) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) - ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3), [#29870](https://github.com/open-webui/open-webui/pull/29870) From 722a3b7aef3db404d9e2d6850f905061c4a508ba Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sat, 12 Sep 2026 19:13:37 +0000 Subject: [PATCH 86/88] chore: cover notification target names, MCP tool paging and the stop follow-up --- CHANGELOG.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 528374e27e..3b8c0a5411 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ 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.11.4] - 2026-09-10 +## [0.11.4] - 2026-09-12 ### Added @@ -28,7 +28,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) - ๐Ÿ’ก **The first follow-up waits in the message box.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7aaa4a692e949724913834efc47c57572042703b) - ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) -- ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3), [#29870](https://github.com/open-webui/open-webui/pull/29870) +- ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3), [#29870](https://github.com/open-webui/open-webui/pull/29870), [#29885](https://github.com/open-webui/open-webui/pull/29885) ### Fixed @@ -62,11 +62,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงต **A notification about a thread reply opens the thread.** 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. [#29856](https://github.com/open-webui/open-webui/pull/29856), [#29855](https://github.com/open-webui/open-webui/issues/29855) - ๐Ÿ”ฝ **Dropdown arrows stop sitting on the text.** In the dropdowns drawn no wider than what is in them, among them the provider on a new connection, how a group shares, and the read or write level beside a group or a person, the arrow overlapped the last characters of the longest choice; there is now room for it. [#29866](https://github.com/open-webui/open-webui/pull/29866), [#29865](https://github.com/open-webui/open-webui/issues/29865) - ๐ŸงŠ **Replies from vLLM and LiteLLM stop arriving mangled.** The header filter on the OpenAI and Ollama connections compared names in title case only, so an upstream that writes them in lower case, as anything served by uvicorn does, had nothing stripped at all, `Content-Encoding` included, and a desktop or programmatic client then failed trying to decompress a body the server had already decoded. Names are now compared without regard to case. [#29843](https://github.com/open-webui/open-webui/pull/29843) -- ๐Ÿ›‘ **Stopping a chat stops everything running in it.** 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. Instances sharing their state through Redis were not affected. [Commit](https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0) +- ๐Ÿ›‘ **Stopping a chat stops everything running in it.** 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. Instances sharing their state through Redis were not affected. [Commit](https://github.com/open-webui/open-webui/commit/e35b907f737e625b900b3a03d61890f67ab0c4b0), [#29844](https://github.com/open-webui/open-webui/pull/29844), [#29816](https://github.com/open-webui/open-webui/issues/29816) - ๐Ÿ–Š๏ธ **Code in a channel model reply behaves like code anywhere else.** 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. [#29861](https://github.com/open-webui/open-webui/pull/29861) - ๐Ÿงฝ **Deleting a folder in a knowledge base takes its contents with it.** 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. [Commit](https://github.com/open-webui/open-webui/commit/17dbc6f001aeea25ae1df528cb79bb272eca4a77) - โฐ **An automation's schedule is read as it was written.** A schedule that puts the time in `DTSTART`, as a hand-written rule normally does, or that attaches a time zone to it, was listed as running at midnight and opened in the editor set to nine in the morning, so the automations page told you the wrong hour and saving the automation again moved when it actually ran; the hour and minute in `DTSTART` are now used wherever the rule names none of its own. [Commit](https://github.com/open-webui/open-webui/commit/540467b90a430e47e536c20710878b342de659fb) - ๐Ÿ“ฃ **A mention of a model with an awkward ID shows as a chip.** 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. [#29864](https://github.com/open-webui/open-webui/pull/29864) +- ๐Ÿ”” **A notification target you name yourself stays reachable.** A webhook target given a name of your own containing a space, a slash or anything else outside letters, digits, dashes and underscores was stored exactly as typed, and could afterwards not be edited, deleted, made the default or tested, because the name no longer matched the address the interface calls; a name you type is now tidied the same way an automatic one always was. [#29947](https://github.com/open-webui/open-webui/pull/29947) +- ๐Ÿช› **Every tool on an MCP server is offered.** 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. [Commit](https://github.com/open-webui/open-webui/commit/ffae4116a8d58a820f1770c41c69dafe4d51c881) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From 270313edb6331ec1f8d15d7f299ec683a663c5a7 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sat, 12 Sep 2026 21:07:20 +0000 Subject: [PATCH 87/88] chore: cover thinking blocks, channel terminals and custom header encoding --- CHANGELOG.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3b8c0a5411..f08e62e6cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,7 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) - ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) - ๐Ÿ’ก **The first follow-up waits in the message box.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7aaa4a692e949724913834efc47c57572042703b) -- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd) +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security, among them a quieter log: saving the retrieval settings no longer reports the reranking model as changed when it was not, and a picture service that cannot be reached is noted in a line rather than a stack trace. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [#29922](https://github.com/open-webui/open-webui/pull/29922), [Commit](https://github.com/open-webui/open-webui/commit/a910b0d8f6e552790e76b93b65b8c6fb2582082d) - ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3), [#29870](https://github.com/open-webui/open-webui/pull/29870), [#29885](https://github.com/open-webui/open-webui/pull/29885) ### Fixed @@ -69,6 +69,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ“ฃ **A mention of a model with an awkward ID shows as a chip.** 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. [#29864](https://github.com/open-webui/open-webui/pull/29864) - ๐Ÿ”” **A notification target you name yourself stays reachable.** A webhook target given a name of your own containing a space, a slash or anything else outside letters, digits, dashes and underscores was stored exactly as typed, and could afterwards not be edited, deleted, made the default or tested, because the name no longer matched the address the interface calls; a name you type is now tidied the same way an automatic one always was. [#29947](https://github.com/open-webui/open-webui/pull/29947) - ๐Ÿช› **Every tool on an MCP server is offered.** 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. [Commit](https://github.com/open-webui/open-webui/commit/ffae4116a8d58a820f1770c41c69dafe4d51c881) +- ๐Ÿ’ญ **Claude Code keeps working past the first turn.** An Anthropic client talking to `/api/v1/messages` sends the assistant's earlier thinking back with every follow-up, and since 0.11.0 those blocks were passed on to an OpenAI-compatible backend as a content part it has no name for, so a strict server such as NVIDIA Dynamo turned the whole conversation down on its second turn. The blocks Open WebUI writes itself are now left out again, while signed ones are kept so a gateway forwarding to Anthropic still has what it needs. [#29849](https://github.com/open-webui/open-webui/pull/29849), [#29799](https://github.com/open-webui/open-webui/issues/29799) +- ๐Ÿ—จ๏ธ **A model answering in a channel is given its terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c78ad89934095c4e42e3f059d400a24fe5681de2) +- ๐Ÿ”ค **Custom headers survive a name with an accent.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7a4a4b93dca34f8ce0c481b180d3eea23797e984) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) From aefbac8ff8501765865f9d71dcf989d864ffa63b Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Sat, 12 Sep 2026 22:08:17 +0000 Subject: [PATCH 88/88] chore: cover link schemes, spellcheck, dotless hosts and webhook pictures --- CHANGELOG.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f08e62e6cc..2f238a21ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -27,7 +27,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ”ข **Knowledge listings come back in an order you asked for.** 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, combinable as in a shell; `ls -t` was accepted and quietly dropped before, so the model was handed whatever order the database gave and read it as newest first. [#29840](https://github.com/open-webui/open-webui/pull/29840) - ๐Ÿชช **Backends can tell an API key from a browser session.** Where user info headers are forwarded, 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, and `{{AUTH_TYPE}}` can be put in a connection's custom headers; the header's name is set with `FORWARD_USER_INFO_HEADER_AUTH_TYPE`. [Commit](https://github.com/open-webui/open-webui/commit/ee46e2664ab23bacc536fed21c06ab19067d695b) - ๐Ÿ’ก **The first follow-up waits in the message box.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7aaa4a692e949724913834efc47c57572042703b) -- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security, among them a quieter log: saving the retrieval settings no longer reports the reranking model as changed when it was not, and a picture service that cannot be reached is noted in a line rather than a stack trace. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [#29922](https://github.com/open-webui/open-webui/pull/29922), [Commit](https://github.com/open-webui/open-webui/commit/a910b0d8f6e552790e76b93b65b8c6fb2582082d) +- ๐Ÿ”„ **General improvements.** Various improvements were implemented across the application to enhance performance, stability, and security, among them a quieter log: saving the retrieval settings no longer reports the reranking model as changed when it was not, and a picture service that cannot be reached is noted in a line rather than a stack trace, and the model list places itself against the window through the same machinery as the rest of the interface. [Commit](https://github.com/open-webui/open-webui/commit/f1c803d36bae9d429eb630ad26853c9d939262b5), [Commit](https://github.com/open-webui/open-webui/commit/f80ef8bd), [#29922](https://github.com/open-webui/open-webui/pull/29922), [Commit](https://github.com/open-webui/open-webui/commit/a910b0d8f6e552790e76b93b65b8c6fb2582082d), [Commit](https://github.com/open-webui/open-webui/commit/5bb321de06d290735de5ddef9fa9211d61abb4f9) - ๐ŸŒ **Translation updates.** 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 and Dutch were enhanced and expanded, and text that had been fixed in English, from the headings grouping the settings pages to labels and messages across the admin pages, the workspace and notifications, now takes its wording from the interface language. [Commit](https://github.com/open-webui/open-webui/commit/cffd734a1847593bb04c5b5a54d08daf3de0f614), [Commit](https://github.com/open-webui/open-webui/commit/006f95ee595a4d1d63b705c517f1c64cf9ebc676), [Commit](https://github.com/open-webui/open-webui/commit/f677fdbf5074e07216d9bb18d6934f3cfabb5839), [Commit](https://github.com/open-webui/open-webui/commit/237b11c6d944e083445e4ef53f5947b40bb80c6c), [Commit](https://github.com/open-webui/open-webui/commit/8aa25dd3585fe38062d2205231a440db31e330f3), [Commit](https://github.com/open-webui/open-webui/commit/9a4b6431), [#29794](https://github.com/open-webui/open-webui/pull/29794), [#29795](https://github.com/open-webui/open-webui/pull/29795), [#29798](https://github.com/open-webui/open-webui/pull/29798), [Commit](https://github.com/open-webui/open-webui/commit/4948842bea27914e8e8fc9f6e027f1e9c689eaa3), [#29870](https://github.com/open-webui/open-webui/pull/29870), [#29885](https://github.com/open-webui/open-webui/pull/29885) ### Fixed @@ -72,6 +72,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿ’ญ **Claude Code keeps working past the first turn.** An Anthropic client talking to `/api/v1/messages` sends the assistant's earlier thinking back with every follow-up, and since 0.11.0 those blocks were passed on to an OpenAI-compatible backend as a content part it has no name for, so a strict server such as NVIDIA Dynamo turned the whole conversation down on its second turn. The blocks Open WebUI writes itself are now left out again, while signed ones are kept so a gateway forwarding to Anthropic still has what it needs. [#29849](https://github.com/open-webui/open-webui/pull/29849), [#29799](https://github.com/open-webui/open-webui/issues/29799) - ๐Ÿ—จ๏ธ **A model answering in a channel is given its terminal.** 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. [Commit](https://github.com/open-webui/open-webui/commit/c78ad89934095c4e42e3f059d400a24fe5681de2) - ๐Ÿ”ค **Custom headers survive a name with an accent.** 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. [Commit](https://github.com/open-webui/open-webui/commit/7a4a4b93dca34f8ce0c481b180d3eea23797e984) +- ๐Ÿ†Ž **Right-click spelling corrections work again in Chrome.** 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. [#29952](https://github.com/open-webui/open-webui/pull/29952), [#29944](https://github.com/open-webui/open-webui/issues/29944) +- ๐Ÿณ **A service name without a dot is accepted again.** With local web fetching turned on, an address pointing at a name on the same network, `http://apprise:8000` and the like, was still refused as invalid, which left the setting useless for the container names most instances actually use; such a name is now accepted where the setting allows it. [#29945](https://github.com/open-webui/open-webui/pull/29945), [#28161](https://github.com/open-webui/open-webui/issues/28161) +- ๐Ÿชง **Text that only looks like a skill is left alone.** 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. [Commit](https://github.com/open-webui/open-webui/commit/0edd731c7422870aa109fd0b758c6d68c06655da) +- ๐Ÿซฅ **Webhook pictures obey the setting that stops picture forwarding.** 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. [#29889](https://github.com/open-webui/open-webui/pull/29889) +- ๐ŸชŸ **The statistics window listens only to the community site.** 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. [#29918](https://github.com/open-webui/open-webui/pull/29918) - ๐Ÿงฏ **Reading a web page leaves the log alone.** 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. [#29325](https://github.com/open-webui/open-webui/pull/29325), [#28869](https://github.com/open-webui/open-webui/issues/28869) - ๐Ÿ“ค **Exporting tools stops at what you may edit.** 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. [#29310](https://github.com/open-webui/open-webui/pull/29310) - ๐Ÿ” **Model pictures follow model access.** 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. [#29700](https://github.com/open-webui/open-webui/pull/29700) @@ -117,6 +122,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - ๐Ÿงฐ **Slim installs no requirement from a git address.** 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. [Commit](https://github.com/open-webui/open-webui/commit/30eed1251301f74e0dfeaad09c41e81320f790fc) - ๐Ÿงพ **Tools importing packages they never declared stop working.** 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 stops working on upgrade until it names the package in its own requirements; an instance that cannot reach the package index needs the package built into the image instead. [#29725](https://github.com/open-webui/open-webui/pull/29725), [#29726](https://github.com/open-webui/open-webui/pull/29726), [Commit](https://github.com/open-webui/open-webui/commit/a1c02098aa2687c72482a59117efe643b785df51) - ๐Ÿ†” **A model's ID may no longer hold a space.** Creating or saving a workspace model whose ID contains a space or a tab is now refused in the editor and through the API, and such a model is skipped when models are imported. A model already stored with whitespace in its ID goes on answering, but it can no longer be saved or have its access changed until it is recreated under an ID without one. [Commit](https://github.com/open-webui/open-webui/commit/8a19e2f867063256bb2836649e2fe80af41ef748) +- ๐Ÿ–‡๏ธ **A link is drawn only where it points at the web.** 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. [#29890](https://github.com/open-webui/open-webui/pull/29890) - ๐Ÿ”— **Default suggestions answer with an object.** `POST /api/v1/configs/suggestions` now answers with an object holding the suggestions and their per-language wording, in place of the bare list it returned before, so anything calling it directly has to read the new shape. [Commit](https://github.com/open-webui/open-webui/commit/7b6562e3358956ec71eed05352538a646d047734) - ๐Ÿงท **Personal settings are written a field at a time.** `POST /api/v1/users/user/settings/update` now patches the settings named in it rather than replacing the whole interface object: a field left out keeps its value, a field sent as null goes back to the administrator's default, and anything writing settings directly has to follow suit. [Commit](https://github.com/open-webui/open-webui/commit/98a920168e2eea435ac15e1ad3d679946631e41d) - ๐Ÿชต **A refused model says why in the log.** A request turned away with "Model not found" now writes a warning naming the account, the model and the reason it was refused, whether the model is not registered, the account holds no grant on it, or a base model behind it is out of reach, while the message the caller sees stays as vague as before. [Commit](https://github.com/open-webui/open-webui/commit/f5fcf4c89fb27ed39825875d573446fa84aa2a5b)