Open WebUI published v0.12.4 on 25 October, and the release notes are long enough that any article has to choose. These are selected highlights: the changes that can break an install first, then the ones that make daily use better.
What might break
The headline for anyone who extends their instance is the image. “The Docker image now runs Python 3.12 on Debian 13 instead of Python 3.11 on Debian 12, so custom functions, tools and packages installed with pip inside the container need versions that support Python 3.12.” If your deployment carries pip packages baked into a derived image or installed into a running container, that is the first thing to check before you pull. Whether a given function works on 3.12 depends on its dependencies, and this piece has not tested any of them.
The second is a behaviour change that has been quietly waiting: “While Direct Integrations is off, as it is by default, the tool servers and Open Terminal connections that users and admins saved in their Integrations settings are no longer used in chats”. The release says why it feels new: previously “turning it off only hid the settings tab”. So an instance that never enabled Direct Integrations loses those saved connections until an admin turns it on under Admin Settings > Connections, or sets ENABLE_DIRECT_INTEGRATIONS. That is a documented consequence, not a bug to report.
Third, sharing stops being a side effect of saving. “Saving a model, prompt, tool, skill, knowledge base, note, channel or calendar no longer changes who it is shared with, which is now changed only in the item’s Access settings.” The same release closes the obvious hole: “Sharing permissions such as Models Sharing, Knowledge Sharing and Folders Sharing now also apply to sharing through the API”, and a change a user is not allowed to make is “now refused with an error instead of being quietly left out”.
Fourth, a small one that admins will notice. “Manage Files in Settings > Data Controls now lists only your own files, also for administrators, who saw every user’s files there while BYPASS_ADMIN_ACCESS_CONTROL was on, as it is by default.” Admins looking for the global file list will not find it there any more.
Then two more from the same list. MCP timeouts tightened: “MCP_INITIALIZE_TIMEOUT”, ten seconds by default, “now also limits listing tools and reading resources on MCP servers, so slow servers may need a higher value”, and MCP connections “now only follow redirects that stay on the same address”. And the Shift quick actions are gone, because “Shift-click now selects chats, which are then archived or deleted together”.
What is new
The feature with the most practical effect is skills on demand. “Administrators can turn on ‘Load selected skills on demand’ under Admin Settings > General or set ENABLE_SKILL_LAZY_LOADING”, after which “skills selected in the chat or attached to a model are only listed for the model to load when it needs them instead of sending their full instructions with every message”. Two caveats belong with it: skills mentioned in a message still load right away, and the option is off by default and needs the built-in Skills tool.
Compaction becomes visible. “A ‘Context compacted’ line now marks the message where older messages were summarized”, it opens to show the summary, and “compaction progress and errors now show in the chat instead of as pop-up notices”. Compaction reaches further too. It “now also runs in temporary chats and in short chats that are already over the threshold, such as one question with a reply full of tool output”, which is the case where the follow-up used to fail with a context length error.
For admins who want a simpler surface, per-control visibility arrives: hide single controls “under Visible controls in Admin Settings > Interface or with UI_VISIBILITY”, across model capabilities, the + menu entries, chat actions and settings tabs. The trade-off is stated in the same bullet: hidden controls “keep their values and the features behind them stay usable”, and administrators still see everything.
There is a longer tail worth skimming in the notes: profile cards replacing email tooltips, turn counts in chat previews, chat controls saved per setting rather than as a block, questions and tool approvals that survive a reconnect, model edits to notes by finding and replacing text, and a New Chat item in folder menus.
If you are upgrading
Check your pip layer first, then your integrations, then anything that scripts sharing or reads the admin file list. If you are coming from a much older release, the 0.12.3 write-up covers the previous step; this release is about a different set of changes.
Sources: the Open WebUI v0.12.4 release record.

