Update ghcr.io/open-webui/open-webui Docker tag to v0.6.41 #193

Merged
aggarwalakshun merged 2 commits from renovate/ghcr.io-open-webui-open-webui-0.x into main 2025-12-09 21:50:54 +05:30

This PR contains the following updates:

Package Update Change
ghcr.io/open-webui/open-webui patch 0.6.33 -> 0.6.41

Release Notes

open-webui/open-webui (ghcr.io/open-webui/open-webui)

v0.6.41

Compare Source

Added
  • 🚦 Sign-in rate limiting was implemented to protect against brute force attacks, limiting login attempts to 15 per 3-minute window per email address using Redis with automatic fallback to in-memory storage when Redis is unavailable. Commit
  • 📂 Administrators can now globally disable the folders feature and control user-level folder permissions through the admin panel, enabling minimalist interface configurations for deployments that don't require workspace organization features. #​19529, #​19210, #​18459, #​18299
  • 👥 Group channels were introduced as a new channel type enabling membership-based collaboration spaces where users explicitly join as members rather than accessing through permissions, with support for public or private visibility, automatic member inclusion from specified user groups, member role tracking with invitation metadata, and post-creation member management allowing channel managers to add or remove members through the channel info modal. Commit, Commit
  • 💬 Direct Message channels were introduced with a dedicated channel type selector and multi-user member selection interface, enabling private conversations between specific users without requiring full channel visibility. Commit
  • 📨 Direct Message channels now support a complete user-to-user messaging system with member-based access control, automatic deduplication for one-on-one conversations, optional channel naming, and distinct visual presentation using participant avatars instead of channel icons. Commit
  • 🙈 Users can now hide Direct Message channels from their sidebar while preserving message history, with automatic reactivation when new messages arrive from other participants, providing a cleaner interface for managing active conversations. Commit
  • ☑️ A comprehensive user selection component was added to the channel creation modal, featuring search functionality, sortable user lists, pagination support, and multi-select checkboxes for building Direct Message participant lists. Commit
  • 🔴 Channel unread message count tracking was implemented with visual badge indicators in the sidebar, automatically updating counts in real-time and marking messages as read when users view channels, with join/leave functionality to manage membership status. Commit
  • 📌 Message pinning functionality was added to channels, allowing users to pin important messages for easy reference with visual highlighting, a dedicated pinned messages modal accessible from the navbar, and complete backend support for tracking pinned status, pin timestamp, and the user who pinned each message. Commit, Commit
  • 🟢 Direct Message channels now display an active status indicator for one-on-one conversations, showing a green dot when the other participant is currently online or a gray dot when offline. Commit, Commit
  • 🆔 Users can now start Direct Message conversations directly from user profile previews by clicking the "Message" button, enabling quick access to private messaging without navigating away from the current channel. Commit
  • Channel messages now appear instantly when sent using optimistic UI rendering, displaying with a pending state while the server confirms delivery, providing a more responsive messaging experience. Commit
  • 👍 Channel message reactions now display the names of users who reacted when hovering over the emoji, showing up to three names with a count for additional reactors. Commit
  • 🛠️ Channel creators can now edit and delete their own group and DM channels without requiring administrator privileges, enabling users to manage the channels they create independently. Commit
  • 🔌 A new API endpoint was added to directly get or create a Direct Message channel with a specific user by their ID, streamlining programmatic DM channel creation for integrations and frontend workflows. Commit
  • 💭 Users can now set a custom status with an emoji and message that displays in profile previews, the sidebar user menu, and Direct Message channel items in the sidebar, with the ability to clear status at any time, providing visibility into availability or current focus similar to team communication platforms. Commit, Commit
  • 📤 A group export API endpoint was added, enabling administrators to export complete group data including member lists for backup and migration purposes. Commit
  • 📡 A new API endpoint was added to retrieve all users belonging to a specific group, enabling programmatic access to group membership information for administrative workflows. Commit
  • 👁️ The admin user list now displays an active status indicator next to each user, showing a visual green dot for users who have been active within the last three minutes. Commit
  • 🔑 The admin user edit modal now displays OAuth identity information with a per-provider breakdown, showing each linked identity provider and its associated subject identifier separately. #​19573
  • 🧩 OAuth role claim parsing now respects the "OAUTH_ROLES_SEPARATOR" configuration, enabling proper parsing of roles returned as comma-separated strings and providing consistent behavior with group claim handling. #​19514
  • 🎛️ Channel feature access can now be controlled through both the "USER_PERMISSIONS_FEATURES_CHANNELS" environment variable and group permission toggles in the admin panel, allowing administrators to restrict channel functionality for specific users or groups while defaulting to enabled for all users. Commit
  • 🎨 The model editor interface was refined with access control settings moved to a dedicated modal, group member counts now displayed when configuring permissions, reorganized layout with improved visual hierarchy, and redesigned prompt suggestions cards with tooltips for field guidance. Commit, Commit
  • 🏗️ Knowledge base file management was rebuilt with a dedicated database table replacing the previous JSON array storage, enabling pagination support for large knowledge bases, significantly faster file listing performance, and more reliable file-knowledge base relationship tracking. Commit
  • ☁️ Azure Document Intelligence model selection was added, allowing administrators to specify which model to use for document processing via the "DOCUMENT_INTELLIGENCE_MODEL" environment variable or admin UI setting, with "prebuilt-layout" as the default. #​19692, Docs:#​872
  • 🚀 Milvus multitenancy vector database performance was improved by removing manual flush calls after upsert operations, eliminating rate limit errors and reducing load on etcd and MinIO/S3 storage by allowing Milvus to manage segment persistence automatically via its WAL and auto-flush policies. #​19680
  • Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌍 Translations for German, French, Portuguese (Brazil), Catalan, Simplified Chinese, and Traditional Chinese were enhanced and expanded.
Fixed
  • 🔄 Tool call response token duplication was fixed by removing redundant message history additions in non-native function calling mode, resolving an issue where tool results were included twice in the context and causing 2x token consumption. #​19656, Commit
  • 🛡️ Web search domain filtering was corrected to properly block results when any resolved hostname or IP address matches a blocked domain, preventing blocked sites from appearing in search results due to permissive hostname resolution logic that previously allowed results through if any single resolved address passed the filter. #​19670, #​19669
  • 🧠 Custom models based on Ollama or OpenAI now properly inherit the connection type from their base model, ensuring they appear correctly in the "Local" or "External" model selection tabs instead of only appearing under "All". #​19183, Commit
  • 🐍 SentenceTransformers embedding initialization was fixed by updating the transformers dependency to version 4.57.3, resolving a regression in v0.6.40 where document ingestion failed with "'NoneType' object has no attribute 'encode'" errors due to a bug in transformers 4.57.2. #​19512, #​19513
  • 📈 Active user count accuracy was significantly improved by replacing the socket-based USER_POOL tracking with a database-backed heartbeat mechanism, resolving long-standing issues where Redis deployments displayed inflated user counts due to stale sessions never being cleaned up on disconnect. #​16074, Commit
  • 👥 Default group assignment now applies consistently across all user registration methods including OAuth/SSO, LDAP, and admin-created users, fixing an issue where the "DEFAULT_GROUP_ID" setting was only being applied to users who signed up via the email/password signup form. #​19685
  • 🔦 Model list filtering in workspaces was corrected to properly include models shared with user groups, ensuring members can view models they have write access to through group permissions. #​19461, Commit
  • 🖼️ User profile image display in preview contexts was fixed by resolving a Pydantic validation error that prevented proper rendering. Commit
  • 🔒 Redis TLS connection failures were resolved by updating the python-socketio dependency to version 5.15.0, restoring support for the "rediss://" URL schema. #​19480, #​19488
  • 📝 MCP tool server configuration was corrected to properly handle the "Function Name Filter List" as both string and list types, preventing AttributeError when the field is empty and ensuring backward compatibility. #​19486, Commit, Commit
  • 📎 Web page attachment failures causing TypeError on metadata checks were resolved by correcting async threadpool parameter passing in vector database operations. #​19493, Commit
  • 💾 Model allowlist persistence in multi-worker deployments was fixed by implementing Redis-based shared state for the internal models dictionary, ensuring configuration changes are consistently visible across all worker processes. #​19395, Commit
  • Chat history infinite loading was prevented by enhancing message data structure to properly track parent message relationships, resolving issues where missing parentId fields caused perpetual loading states. #​19225, Commit
  • 🩹 Database migration robustness was improved by automatically detecting and correcting missing primary key constraints on the user table, ensuring successful schema upgrades for databases with non-standard configurations. #​19487, Commit
  • 🏷️ OAuth group assignment now updates correctly on first login when users transition from admin to user role, ensuring group memberships reflect immediately when group management is enabled. #​19475, #​19476
  • 💡 Knowledge base file tooltips now properly display the parent collection name when referencing files with the hash symbol, preventing confusion between identically-named files in different collections. #​19491, Commit
  • 🔐 Knowledge base file access inconsistencies were resolved where authorized non-admin users received "Not found" or permission errors for certain files due to race conditions during upload causing mismatched collection_name values, with file access validation now properly checking against knowledge base file associations. #​18689, #​19523, Commit
  • 📦 Knowledge API batch file addition endpoint was corrected to properly handle async operations, resolving 500 Internal Server Error responses when adding multiple files simultaneously. #​19538, Commit
  • 🤖 Embedding model auto-update functionality was fixed to properly respect the "RAG_EMBEDDING_MODEL_AUTO_UPDATE" setting by correctly passing the flag to the model path resolver, ensuring models update as expected when the auto-update option is enabled. #​19687
  • 📉 API response payload sizes were dramatically reduced by removing base64-encoded profile images from most endpoints, eliminating multi-megabyte responses caused by high-resolution avatars and enabling better browser caching. #​19519, Commit
  • 📞 Redundant API calls on the admin user overview page were eliminated by consolidating reactive statements, reducing four duplicate requests to a single efficient call and significantly improving page load performance. #​19509, Commit
  • 🧹 Duplicate API calls on the workspace models page were eliminated by removing redundant model list fetching, reducing two identical requests to a single call and improving page responsiveness. #​19517, Commit
  • 🔘 The model valves button was corrected to prevent unintended form submission by adding explicit button type attribute, ensuring it no longer triggers message sending when the input area contains text. #​19534
  • 🗑️ Ollama model deletion was fixed by correcting the request payload format and ensuring the model selector properly displays the placeholder option. Commit
  • 🎨 Image generation in temporary chats was fixed by correctly handling local chat sessions that are not persisted to the database. Commit
  • 🕵️‍♂️ Audit logging was fixed by correctly awaiting the async user authentication call, resolving failures where coroutine objects were passed instead of user data. #​19658, Commit
  • 🌙 Dark mode select dropdown styling was corrected to use proper background colors, fixing an issue where dropdown borders and hover states appeared white instead of matching the dark theme. #​19693, #​19442
  • 🔍 Milvus vector database query filtering was fixed by correcting string quote handling in filter expressions and using the proper parameter name for queries, resolving false "duplicate content detected" errors that prevented uploading multiple files to knowledge bases. #​19602, #​18119, #​16345, #​17088, #​18485
  • 🆙 Milvus multitenancy vector database was updated to use query_iterator() for improved robustness and consistency with the standard Milvus implementation, fixing the same false duplicate detection errors and improving handling of large result sets in multi-tenant deployments. #​19695
Changed
  • ⚠️ IMPORTANT for Multi-Instance Deployments — This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances.
  • 👮 Channel creation is now restricted to administrators only, with the channel add button hidden for regular users to maintain organizational control over communication channels. Commit
  • The active user count indicator was removed from the bottom-left user menu in the sidebar to streamline the interface. Commit
  • 🗂️ The user table was restructured with API keys migrated to a dedicated table supporting future multi-key functionality, OAuth data storage converted to a JSON structure enabling multiple identity providers per user account, and internal column types optimized from TEXT to JSON for the "info" and "settings" fields, with automatic migration preserving all existing data and associations. #​19573
  • 🔄 The knowledge base API was restructured to support the new file relationship model.

v0.6.41

Compare Source

[0.6.41] - 2025-12-02

[!CAUTION]
⚠️ IMPORTANT for Multi-Instance Deployments: This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances.

Added
  • 🚦 Sign-in rate limiting was implemented to protect against brute force attacks, limiting login attempts to 15 per 3-minute window per email address using Redis with automatic fallback to in-memory storage when Redis is unavailable. Commit
  • 📂 Administrators can now globally disable the folders feature and control user-level folder permissions through the admin panel, enabling minimalist interface configurations for deployments that don't require workspace organization features. #​19529, #​19210, #​18459, #​18299
  • 👥 Group channels were introduced as a new channel type enabling membership-based collaboration spaces where users explicitly join as members rather than accessing through permissions, with support for public or private visibility, automatic member inclusion from specified user groups, member role tracking with invitation metadata, and post-creation member management allowing channel managers to add or remove members through the channel info modal. Commit, Commit
  • 💬 Direct Message channels were introduced with a dedicated channel type selector and multi-user member selection interface, enabling private conversations between specific users without requiring full channel visibility. Commit
  • 📨 Direct Message channels now support a complete user-to-user messaging system with member-based access control, automatic deduplication for one-on-one conversations, optional channel naming, and distinct visual presentation using participant avatars instead of channel icons. Commit
  • 🙈 Users can now hide Direct Message channels from their sidebar while preserving message history, with automatic reactivation when new messages arrive from other participants, providing a cleaner interface for managing active conversations. Commit
  • ☑️ A comprehensive user selection component was added to the channel creation modal, featuring search functionality, sortable user lists, pagination support, and multi-select checkboxes for building Direct Message participant lists. Commit
  • 🔴 Channel unread message count tracking was implemented with visual badge indicators in the sidebar, automatically updating counts in real-time and marking messages as read when users view channels, with join/leave functionality to manage membership status. Commit
  • 📌 Message pinning functionality was added to channels, allowing users to pin important messages for easy reference with visual highlighting, a dedicated pinned messages modal accessible from the navbar, and complete backend support for tracking pinned status, pin timestamp, and the user who pinned each message. Commit, Commit
  • 🟢 Direct Message channels now display an active status indicator for one-on-one conversations, showing a green dot when the other participant is currently online or a gray dot when offline. Commit, Commit
  • 🆔 Users can now start Direct Message conversations directly from user profile previews by clicking the "Message" button, enabling quick access to private messaging without navigating away from the current channel. Commit
  • Channel messages now appear instantly when sent using optimistic UI rendering, displaying with a pending state while the server confirms delivery, providing a more responsive messaging experience. Commit
  • 👍 Channel message reactions now display the names of users who reacted when hovering over the emoji, showing up to three names with a count for additional reactors. Commit
  • 🛠️ Channel creators can now edit and delete their own group and DM channels without requiring administrator privileges, enabling users to manage the channels they create independently. Commit
  • 🔌 A new API endpoint was added to directly get or create a Direct Message channel with a specific user by their ID, streamlining programmatic DM channel creation for integrations and frontend workflows. Commit
  • 💭 Users can now set a custom status with an emoji and message that displays in profile previews, the sidebar user menu, and Direct Message channel items in the sidebar, with the ability to clear status at any time, providing visibility into availability or current focus similar to team communication platforms. Commit, Commit
  • 📤 A group export API endpoint was added, enabling administrators to export complete group data including member lists for backup and migration purposes. Commit
  • 📡 A new API endpoint was added to retrieve all users belonging to a specific group, enabling programmatic access to group membership information for administrative workflows. Commit
  • 👁️ The admin user list now displays an active status indicator next to each user, showing a visual green dot for users who have been active within the last three minutes. Commit
  • 🔑 The admin user edit modal now displays OAuth identity information with a per-provider breakdown, showing each linked identity provider and its associated subject identifier separately. #​19573
  • 🧩 OAuth role claim parsing now respects the "OAUTH_ROLES_SEPARATOR" configuration, enabling proper parsing of roles returned as comma-separated strings and providing consistent behavior with group claim handling. #​19514
  • 🎛️ Channel feature access can now be controlled through both the "USER_PERMISSIONS_FEATURES_CHANNELS" environment variable and group permission toggles in the admin panel, allowing administrators to restrict channel functionality for specific users or groups while defaulting to enabled for all users. Commit
  • 🎨 The model editor interface was refined with access control settings moved to a dedicated modal, group member counts now displayed when configuring permissions, reorganized layout with improved visual hierarchy, and redesigned prompt suggestions cards with tooltips for field guidance. Commit, Commit
  • 🏗️ Knowledge base file management was rebuilt with a dedicated database table replacing the previous JSON array storage, enabling pagination support for large knowledge bases, significantly faster file listing performance, and more reliable file-knowledge base relationship tracking. Commit
  • ☁️ Azure Document Intelligence model selection was added, allowing administrators to specify which model to use for document processing via the "DOCUMENT_INTELLIGENCE_MODEL" environment variable or admin UI setting, with "prebuilt-layout" as the default. #​19692, Docs:#​872
  • 🚀 Milvus multitenancy vector database performance was improved by removing manual flush calls after upsert operations, eliminating rate limit errors and reducing load on etcd and MinIO/S3 storage by allowing Milvus to manage segment persistence automatically via its WAL and auto-flush policies. #​19680
  • Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌍 Translations for German, French, Portuguese (Brazil), Catalan, Simplified Chinese, and Traditional Chinese were enhanced and expanded.
Fixed
  • 🔄 Tool call response token duplication was fixed by removing redundant message history additions in non-native function calling mode, resolving an issue where tool results were included twice in the context and causing 2x token consumption. #​19656, Commit
  • 🛡️ Web search domain filtering was corrected to properly block results when any resolved hostname or IP address matches a blocked domain, preventing blocked sites from appearing in search results due to permissive hostname resolution logic that previously allowed results through if any single resolved address passed the filter. #​19670, #​19669
  • 🧠 Custom models based on Ollama or OpenAI now properly inherit the connection type from their base model, ensuring they appear correctly in the "Local" or "External" model selection tabs instead of only appearing under "All". #​19183, Commit
  • 🐍 SentenceTransformers embedding initialization was fixed by updating the transformers dependency to version 4.57.3, resolving a regression in v0.6.40 where document ingestion failed with "'NoneType' object has no attribute 'encode'" errors due to a bug in transformers 4.57.2. #​19512, #​19513
  • 📈 Active user count accuracy was significantly improved by replacing the socket-based USER_POOL tracking with a database-backed heartbeat mechanism, resolving long-standing issues where Redis deployments displayed inflated user counts due to stale sessions never being cleaned up on disconnect. #​16074, Commit
  • 👥 Default group assignment now applies consistently across all user registration methods including OAuth/SSO, LDAP, and admin-created users, fixing an issue where the "DEFAULT_GROUP_ID" setting was only being applied to users who signed up via the email/password signup form. #​19685
  • 🔦 Model list filtering in workspaces was corrected to properly include models shared with user groups, ensuring members can view models they have write access to through group permissions. #​19461, Commit
  • 🖼️ User profile image display in preview contexts was fixed by resolving a Pydantic validation error that prevented proper rendering. Commit
  • 🔒 Redis TLS connection failures were resolved by updating the python-socketio dependency to version 5.15.0, restoring support for the "rediss://" URL schema. #​19480, #​19488
  • 📝 MCP tool server configuration was corrected to properly handle the "Function Name Filter List" as both string and list types, preventing AttributeError when the field is empty and ensuring backward compatibility. #​19486, Commit, Commit
  • 📎 Web page attachment failures causing TypeError on metadata checks were resolved by correcting async threadpool parameter passing in vector database operations. #​19493, Commit
  • 💾 Model allowlist persistence in multi-worker deployments was fixed by implementing Redis-based shared state for the internal models dictionary, ensuring configuration changes are consistently visible across all worker processes. #​19395, Commit
  • Chat history infinite loading was prevented by enhancing message data structure to properly track parent message relationships, resolving issues where missing parentId fields caused perpetual loading states. #​19225, Commit
  • 🩹 Database migration robustness was improved by automatically detecting and correcting missing primary key constraints on the user table, ensuring successful schema upgrades for databases with non-standard configurations. #​19487, Commit
  • 🏷️ OAuth group assignment now updates correctly on first login when users transition from admin to user role, ensuring group memberships reflect immediately when group management is enabled. #​19475, #​19476
  • 💡 Knowledge base file tooltips now properly display the parent collection name when referencing files with the hash symbol, preventing confusion between identically-named files in different collections. #​19491, Commit
  • 🔐 Knowledge base file access inconsistencies were resolved where authorized non-admin users received "Not found" or permission errors for certain files due to race conditions during upload causing mismatched collection_name values, with file access validation now properly checking against knowledge base file associations. #​18689, #​19523, Commit
  • 📦 Knowledge API batch file addition endpoint was corrected to properly handle async operations, resolving 500 Internal Server Error responses when adding multiple files simultaneously. #​19538, Commit
  • 🤖 Embedding model auto-update functionality was fixed to properly respect the "RAG_EMBEDDING_MODEL_AUTO_UPDATE" setting by correctly passing the flag to the model path resolver, ensuring models update as expected when the auto-update option is enabled. #​19687
  • 📉 API response payload sizes were dramatically reduced by removing base64-encoded profile images from most endpoints, eliminating multi-megabyte responses caused by high-resolution avatars and enabling better browser caching. #​19519, Commit
  • 📞 Redundant API calls on the admin user overview page were eliminated by consolidating reactive statements, reducing four duplicate requests to a single efficient call and significantly improving page load performance. #​19509, Commit
  • 🧹 Duplicate API calls on the workspace models page were eliminated by removing redundant model list fetching, reducing two identical requests to a single call and improving page responsiveness. #​19517, Commit
  • 🔘 The model valves button was corrected to prevent unintended form submission by adding explicit button type attribute, ensuring it no longer triggers message sending when the input area contains text. #​19534
  • 🗑️ Ollama model deletion was fixed by correcting the request payload format and ensuring the model selector properly displays the placeholder option. Commit
  • 🎨 Image generation in temporary chats was fixed by correctly handling local chat sessions that are not persisted to the database. Commit
  • 🕵️‍♂️ Audit logging was fixed by correctly awaiting the async user authentication call, resolving failures where coroutine objects were passed instead of user data. #​19658, Commit
  • 🌙 Dark mode select dropdown styling was corrected to use proper background colors, fixing an issue where dropdown borders and hover states appeared white instead of matching the dark theme. #​19693, #​19442
  • 🔍 Milvus vector database query filtering was fixed by correcting string quote handling in filter expressions and using the proper parameter name for queries, resolving false "duplicate content detected" errors that prevented uploading multiple files to knowledge bases. #​19602, #​18119, #​16345, #​17088, #​18485
  • 🆙 Milvus multitenancy vector database was updated to use query_iterator() for improved robustness and consistency with the standard Milvus implementation, fixing the same false duplicate detection errors and improving handling of large result sets in multi-tenant deployments. #​19695
Changed
  • ⚠️ IMPORTANT for Multi-Instance Deployments — This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances.
  • 👮 Channel creation is now restricted to administrators only, with the channel add button hidden for regular users to maintain organizational control over communication channels. Commit
  • The active user count indicator was removed from the bottom-left user menu in the sidebar to streamline the interface. Commit
  • 🗂️ The user table was restructured with API keys migrated to a dedicated table supporting future multi-key functionality, OAuth data storage converted to a JSON structure enabling multiple identity providers per user account, and internal column types optimized from TEXT to JSON for the "info" and "settings" fields, with automatic migration preserving all existing data and associations. #​19573
  • 🔄 The knowledge base API was restructured to support the new file relationship model.

[!TIP]
Looking for an Enterprise Plan?Speak with Our Sales Team Today!

Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, and more!

👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible:
@​Classic298, @​ShirasawaSama, @​tobiasge, @​RomualdYT, @​joaoback, @​kjpoccia, @​gerhardj-b, @​aleixdorca, @​acwoo97, @​matthew-kusz, @​stevessr, @​HennieLP

Sponsors 🙌

🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)

@​amd, @​roosi-gmbh, @​rndmcnlly, @​feddersen-group, @​SRKConsulting, @​mushmax, @​icanbwell, @​loitragg, @​haka4githu6, @​silenceroom, @​GenieDev101, @​CubicleGangster, @​TOWaB, @​Classic298, @​comet-ml, @​FominVO, @​catalyst-net-nz, @​JrdnHans, @​hkosm, @​VeroFess, @​joaoback, @​walsermedia, @​LuxTronic

v0.6.40

Compare Source

Fixed
  • 🗄️ A critical PostgreSQL user listing performance issue was resolved by removing a redundant count operation that caused severe database slowdowns and potential timeouts when viewing user lists in admin panels.

v0.6.40

Compare Source

[0.6.40] - 2025-11-25

Fixed
  • 🗄️ A critical PostgreSQL user listing performance issue was resolved by removing a redundant count operation that caused severe database slowdowns and potential timeouts when viewing user lists in admin panels.

v0.6.39

Compare Source

Added
  • 💬 A user list modal was added to channels, displaying all users with access and featuring search, sorting, and pagination capabilities. Commit
  • 💬 Channel navigation now displays the total number of users with access to the channel. Commit
  • 🔌 Tool servers and MCP connections now support function name filtering, allowing administrators to selectively enable or block specific functions using allow/block lists. Commit
  • A toggle to disable parallel embedding processing was added via "ENABLE_ASYNC_EMBEDDING", allowing sequential processing for rate-limited or resource-constrained local embedding setups. #​19444
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Localization improvements were made for German (de-DE) and Portuguese (Brazil) translations.
Fixed
  • 📝 Inline citations now render correctly within markdown lists and nested elements instead of displaying as "undefined" values. #​19452
  • 👥 Group member selection now works correctly without randomly selecting other users or causing the user list to jump around. #​19426
  • 👥 Admin panel user list now displays the correct total user count and properly paginates 30 items per page after fixing database query issues with group member joins. #​19429
  • 🔍 Knowledge base reindexing now works correctly after resolving async execution chain issues by implementing threadpool workers for embedding operations. #​19434
  • 🖼️ OpenAI image generation now works correctly after fixing a connection adapter error caused by incorrect URL formatting. #​19435
Changed
  • 🔧 BREAKING: Docling configuration has been consolidated from individual environment variables into a single "DOCLING_PARAMS" JSON configuration and now supports API key authentication via "DOCLING_API_KEY", requiring users to migrate existing Docling settings to the new format. #​16841, #​19427
  • 🔧 The environment variable "REPLACE_IMAGE_URLS_IN_CHAT_RESPONSE" has been renamed to "ENABLE_CHAT_RESPONSE_BASE64_IMAGE_URL_CONVERSION" for naming consistency.

v0.6.39

Compare Source

[0.6.39] - 2025-11-25

Added
  • 💬 A user list modal was added to channels, displaying all users with access and featuring search, sorting, and pagination capabilities. Commit
  • 💬 Channel navigation now displays the total number of users with access to the channel. Commit
  • 🔌 Tool servers and MCP connections now support function name filtering, allowing administrators to selectively enable or block specific functions using allow/block lists. Commit
  • A toggle to disable parallel embedding processing was added via "ENABLE_ASYNC_EMBEDDING", allowing sequential processing for rate-limited or resource-constrained local embedding setups. #​19444
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Localization improvements were made for German (de-DE) and Portuguese (Brazil) translations.
Fixed
  • 📝 Inline citations now render correctly within markdown lists and nested elements instead of displaying as "undefined" values. #​19452
  • 👥 Group member selection now works correctly without randomly selecting other users or causing the user list to jump around. #​19426
  • 👥 Admin panel user list now displays the correct total user count and properly paginates 30 items per page after fixing database query issues with group member joins. #​19429
  • 🔍 Knowledge base reindexing now works correctly after resolving async execution chain issues by implementing threadpool workers for embedding operations. #​19434
  • 🖼️ OpenAI image generation now works correctly after fixing a connection adapter error caused by incorrect URL formatting. #​19435
Changed
  • 🔧 BREAKING: Docling configuration has been consolidated from individual environment variables into a single "DOCLING_PARAMS" JSON configuration and now supports API key authentication via "DOCLING_API_KEY", requiring users to migrate existing Docling settings to the new format. #​16841, #​19427
  • 🔧 The environment variable "REPLACE_IMAGE_URLS_IN_CHAT_RESPONSE" has been renamed to "ENABLE_CHAT_RESPONSE_BASE64_IMAGE_URL_CONVERSION" for naming consistency.

v0.6.38

Compare Source

Fixed
  • 🔍 Hybrid search now works reliably after recent changes.
  • 🛠️ Tool server saving now handles errors gracefully, preventing failed saves from impacting the UI.
  • 🔐 SSO/OIDC code fixed to improve login reliability and better handle edge cases.

v0.6.38

Compare Source

[0.6.38] - 2025-11-24

Fixed
  • 🔍 Hybrid search now works reliably after recent changes.
  • 🛠️ Tool server saving now handles errors gracefully, preventing failed saves from impacting the UI.
  • 🔐 SSO/OIDC code fixed to improve login reliability and better handle edge cases.

v0.6.37

Compare Source

[0.6.37] - 2025-11-24

Added
  • 🔐 Granular sharing permissions are now available with two-tiered control separating group sharing from public sharing, allowing administrators to independently configure whether users can share workspace items with groups or make them publicly accessible, with separate permission toggles for models, knowledge bases, prompts, tools, and notes, configurable via "USER_PERMISSIONS_WORKSPACE_MODELS_ALLOW_SHARING", "USER_PERMISSIONS_WORKSPACE_MODELS_ALLOW_PUBLIC_SHARING", and corresponding environment variables for other workspace item types, while groups can now be configured to opt-out of sharing via the "Allow Group Sharing" setting. Commit, Commit
  • 🔐 Password policy enforcement is now available with configurable validation rules, allowing administrators to require specific password complexity requirements via "ENABLE_PASSWORD_VALIDATION" and "PASSWORD_VALIDATION_REGEX_PATTERN" environment variables, with default pattern requiring minimum 8 characters including uppercase, lowercase, digit, and special character. #​17794
  • 🔐 Granular import and export permissions are now available for workspace items, introducing six separate permission toggles for models, prompts, and tools that are disabled by default for enhanced security. #​19242
  • 👥 Default group assignment is now available for new users, allowing administrators to automatically assign newly registered users to a specified group for streamlined access control to models, prompts, and tools, particularly useful for organizations with group-based model access policies. #​19325, #​17842
  • 🔒 Password-based authentication can now be fully disabled via "ENABLE_PASSWORD_AUTH" environment variable, enforcing SSO-only authentication and preventing password login fallback when SSO is configured. #​19113
  • 🖼️ Large stream chunk handling was implemented to support models that generate images directly in their output responses, with configurable buffer size via "CHAT_STREAM_RESPONSE_CHUNK_MAX_BUFFER_SIZE" environment variable, resolving compatibility issues with models like Gemini 2.5 Flash Image. #​18884, #​17626
  • 🖼️ Streaming response middleware now handles images in delta updates with automatic base64 conversion, enabling proper display of images from models using the "choices[0].delta.images.image_url" format such as Gemini 2.5 Flash Image Preview on OpenRouter. #​19073, #​19019
  • 📈 Model list API performance was optimized by pre-fetching user group memberships and removing profile image URLs from response payloads, significantly reducing both database queries and payload size for instances with large model lists, with profile images now served dynamically via dedicated endpoints. #​19097, #​18950
  • Batch file processing performance was improved by reducing database queries by 67% while ensuring data consistency between vector and relational databases. #​18953
  • 🚀 Chat import performance was dramatically improved by replacing individual per-chat API requests with a bulk import endpoint, reducing import time by up to 95% for large chat collections and providing user feedback via toast notifications displaying the number of successfully imported chats. #​17861
  • Socket event broadcasting performance was optimized by implementing user-specific rooms, significantly reducing server overhead particularly for users with multiple concurrent sessions. #​18996
  • 🗄️ Weaviate is now supported as a vector database option, providing an additional choice for RAG document storage alongside existing ChromaDB, Milvus, Qdrant, and OpenSearch integrations. #​14747
  • 🗄️ PostgreSQL pgvector now supports HNSW index types and large dimensional embeddings exceeding 2000 dimensions through automatic halfvec type selection, with configurable index methods via "PGVECTOR_INDEX_METHOD", "PGVECTOR_HNSW_M", "PGVECTOR_HNSW_EF_CONSTRUCTION", and "PGVECTOR_IVFFLAT_LISTS" environment variables. #​19158, #​16890
  • 🔍 Azure AI Search is now supported as a web search provider, enabling integration with Azure's cognitive search services via "AZURE_AI_SEARCH_API_KEY", "AZURE_AI_SEARCH_ENDPOINT", and "AZURE_AI_SEARCH_INDEX_NAME" configuration. #​19104
  • External embedding generation now processes API requests in parallel instead of sequential batches, reducing document processing time by 10-50x when using OpenAI, Azure OpenAI, or Ollama embedding providers, with large PDFs now processing in seconds instead of minutes. #​19296
  • 💨 Base64 image conversion is now available for markdown content in chat responses, automatically uploading embedded images exceeding 1KB and replacing them with file URLs to reduce payload size and resource consumption, configurable via "REPLACE_IMAGE_URLS_IN_CHAT_RESPONSE" environment variable. #​19076
  • 🎨 OpenAI image generation now supports additional API parameters including quality settings for GPT Image 1, configurable via "IMAGES_OPENAI_API_PARAMS" environment variable or through the admin interface, enabling cost-effective image generation with low, medium, or high quality options. #​19228
  • 🖼️ Image editing can now be independently enabled or disabled via admin settings, allowing administrators to control whether sequential image prompts trigger image editing or new image generation, configurable via "ENABLE_IMAGE_EDIT" environment variable. #​19284
  • 🔐 SSRF protection was implemented with a configurable URL blocklist that prevents access to cloud metadata endpoints and private networks, with default protections for AWS, Google Cloud, Azure, and Alibaba Cloud metadata services, customizable via "WEB_FETCH_FILTER_LIST" environment variable. #​19201
  • Workspace models page now supports server-side pagination dramatically improving load times and usability for instances with large numbers of workspace models.
  • 🔍 Hybrid search now indexes file metadata including filenames, titles, headings, sources, and snippets alongside document content, enabling keyword queries to surface documents where search terms appear only in metadata, configurable via "ENABLE_RAG_HYBRID_SEARCH_ENRICHED_TEXTS" environment variable. #​19095
  • 📂 Knowledge base upload page now supports folder drag-and-drop with recursive directory handling, enabling batch uploads of entire directory structures instead of requiring individual file selection. #​19320
  • 🤖 Model cloning is now available in admin settings, allowing administrators to quickly create workspace models based on existing base models through a "Clone" option in the model dropdown menu. #​17937
  • 🎨 UI scale adjustment is now available in interface settings, allowing users to increase the size of the entire interface from 1.0x to 1.5x for improved accessibility and readability, particularly beneficial for users with visual impairments. #​19186
  • 📌 Default pinned models can now be configured by administrators for all new users, mirroring the behavior of default models where admin-configured defaults apply only to users who haven't customized their pinned models, configurable via "DEFAULT_PINNED_MODELS" environment variable. #​19273
  • 🎙️ Text-to-Speech and Speech-to-Text services now receive user information headers when "ENABLE_FORWARD_USER_INFO_HEADERS" is enabled, allowing external TTS and STT providers to implement user-specific personalization, rate limiting, and usage tracking. #​19323, #​19312
  • 🎙️ Voice mode now supports custom system prompts via "VOICE_MODE_PROMPT_TEMPLATE" configuration, allowing administrators to control response style and behavior for voice interactions. #​18607
  • 🔧 WebSocket and Redis configuration options are now available including debug logging controls, custom ping timeout and interval settings, and arbitrary Redis connection options via "WEBSOCKET_SERVER_LOGGING", "WEBSOCKET_SERVER_ENGINEIO_LOGGING", "WEBSOCKET_SERVER_PING_TIMEOUT", "WEBSOCKET_SERVER_PING_INTERVAL", and "WEBSOCKET_REDIS_OPTIONS" environment variables. #​19091
  • 🔧 MCP OAuth dynamic client registration now automatically detects and uses the appropriate token endpoint authentication method from server-supported options, enabling compatibility with OAuth servers that only support "client_secret_basic" instead of "client_secret_post". #​19193
  • 🔧 Custom headers can now be configured for remote MCP and OpenAPI tool server connections, enabling integration with services that require additional authentication headers. #​18918
  • 🔍 Perplexity Search now supports custom API endpoints via "PERPLEXITY_SEARCH_API_URL" configuration and automatically forwards user information headers to enable personalized search experiences. #​19147
  • 🔍 User information headers can now be optionally forwarded to external web search engines when "ENABLE_FORWARD_USER_INFO_HEADERS" is enabled. #​19043
  • 📊 Daily active user metric is now available for monitoring, tracking unique users active since midnight UTC via the "webui.users.active.today" Prometheus gauge. #​19236, #​19234
  • 📊 Audit log file path is now configurable via "AUDIT_LOGS_FILE_PATH" environment variable, enabling storage in separate volumes or custom locations. #​19173
  • 🎨 Sidebar collapse states for model lists and group information are now persistent across page refreshes, remembering user preferences through browser-based storage. #​19159
  • 🎨 Background image display was enhanced with semi-transparent overlays for navbar and sidebar, creating a seamless and visually cohesive design across the entire interface. #​19157
  • 📋 Tables in chat messages now include a copy button that appears on hover, enabling quick copying of table content alongside the existing CSV export functionality. #​19162
  • 📝 Notes can now be created directly via the "/notes/new" URL endpoint with optional title and content query parameters, enabling faster note creation through bookmarks and shortcuts. #​19195
  • 🏷️ Tag suggestions are now context-aware, displaying only relevant tags when creating or editing models versus chat conversations, preventing confusion between model and chat tags. #​19135
  • ✍️ Prompt autocompletion is now available independently of the rich text input setting, improving accessibility to the feature. #​19150
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Translations for Simplified Chinese, Traditional Chinese, Portuguese (Brazil), Catalan, Spanish (Spain), Finnish, Irish, Farsi, Swedish, Danish, German, Korean, and Thai were improved and expanded.
Fixed
  • 🤖 Model update functionality now works correctly, resolving a database parameter binding error that prevented saving changes to model configurations via the Save & Update button. #​19335
  • 🖼️ Multiple input images for image editing and generation are now correctly passed as an array using the "image[]" parameter syntax, enabling proper multi-image reference functionality with models like GPT Image 1. #​19339
  • 📱 PWA installations on iOS now properly refresh after server container restarts, resolving freezing issues by automatically unregistering service workers when version or deployment changes are detected. #​19316
  • 🗄️ S3 Vectors collection detection now correctly handles buckets with more than 2000 indexes by using direct index lookup instead of paginated list scanning, improving performance by approximately 8x and enabling RAG queries to work reliably at scale. #​19238, #​19233
  • 📈 Feedback retrieval performance was optimized by eliminating N+1 query patterns through database joins, adding server-side pagination and sorting, significantly reducing database load for instances with large feedback datasets. #​17976
  • 🔍 Chat search now works correctly with PostgreSQL when chat data contains null bytes, with comprehensive sanitization preventing null bytes during data writes, cleaning existing data on read, and stripping null bytes during search queries to ensure reliable search functionality. #​15616
  • 🔍 Hybrid search with reranking now correctly handles attribute validation, preventing errors when collection results lack expected structure. #​19025, #​17046
  • 🔎 Reranking functionality now works correctly after recent refactoring, resolving crashes caused by incorrect function argument handling. #​19270
  • 🤖 Azure OpenAI models now support the "reasoning_effort" parameter, enabling proper configuration of reasoning capabilities for models like GPT-5.1 which default to no reasoning without this setting. #​19290
  • 🤖 Models with very long IDs can now be deleted correctly, resolving URL length limitations that previously prevented management operations on such models. #​18230
  • 🤖 Model-level streaming settings now correctly apply to API requests, ensuring "Stream Chat Response" toggle properly controls the streaming parameter. #​19154
  • 🖼️ Image editing configuration now correctly preserves independent OpenAI API endpoints and keys, preventing them from being overwritten by image generation settings. #​19003
  • 🎨 Gemini image edit settings now display correctly in the admin panel, fixing an incorrect configuration key reference that prevented proper rendering of edit options. #​19200
  • 🖌️ Image generation settings menu now loads correctly, resolving validation errors with AUTOMATIC1111 API authentication parameters. #​19187, #​19246
  • 📅 Date formatting in chat search and admin user chat search now correctly respects the "DEFAULT_LOCALE" environment variable, displaying dates according to the configured locale instead of always using MM/DD/YYYY format. #​19305, #​19020
  • 📝 RAG template query placeholder escaping logic was corrected to prevent unintended replacements of context values when query placeholders appear in retrieved content. #​19102, #​19101
  • 📄 RAG template prompt duplication was eliminated by removing redundant user query section from the default template. #​19099, #​19098
  • 📋 MinerU local mode configuration no longer incorrectly requires an API key, allowing proper use of local content extraction without external API credentials. #​19258
  • 📊 Excel file uploads now work correctly with the addition of the missing msoffcrypto-tool dependency, resolving import errors introduced by the unstructured package upgrade. #​19153
  • 📑 Docling parameters now properly handle JSON serialization, preventing exceptions and ensuring configuration changes are saved correctly. #​19072
  • 🛠️ UserValves configuration now correctly isolates settings per tool, preventing configuration contamination when multiple tools with UserValves are used simultaneously. #​19185, #​15569
  • 🔧 Tool selection prompt now correctly handles user messages without duplication, removing redundant query prefixes and improving prompt clarity. #​19122, #​19121
  • 📝 Notes chat feature now correctly submits messages to the completions endpoint, resolving errors that prevented AI model interactions. #​19079
  • 📝 Note PDF downloads now sanitize HTML content using DOMPurify before rendering, preventing potential DOM-based XSS attacks from malicious content in notes. Commit
  • 📁 Archived chats now have their folder associations automatically removed to prevent unintended deletion when their previous folder is deleted. #​14578
  • 🔐 ElevenLabs API key is now properly obfuscated in the admin settings page, preventing plain text exposure of sensitive credentials. #​19262, #​19260
  • 🔧 MCP OAuth server metadata discovery now follows the correct specification order, ensuring proper authentication flow compliance. #​19244
  • 🔒 API key endpoint restrictions now properly enforce access controls for all endpoints including SCIM, preventing unintended access when "API_KEY_ALLOWED_ENDPOINTS" is configured. #​19168
  • 🔓 OAuth role claim parsing now supports both flat and nested claim structures, enabling compatibility with OAuth providers that deliver claims as direct properties on the user object rather than nested structures. #​19286
  • 🔑 OAuth MCP server verification now correctly extracts the access token value for authorization headers instead of sending the entire token dictionary. #​19149, #​19148
  • ⚙️ OAuth dynamic client registration now correctly converts empty strings to None for optional fields, preventing validation failures in MCP package integration. #​19144, #​19129
  • 🔐 OIDC authentication now correctly passes client credentials in access token requests, ensuring compatibility with providers that require these parameters per RFC 6749. #​19132, #​19131
  • 🔗 OAuth client creation now respects configured token endpoint authentication methods instead of defaulting to basic authentication, preventing failures with servers that don't support basic auth. #​19165
  • 📋 Text copied from chat responses in Chrome now pastes without background formatting, improving readability when pasting into word processors. #​19083
Changed
  • 🗄️ Group membership data storage was refactored from JSON arrays to a dedicated relational database table, significantly improving query performance and scalability for instances with large numbers of users and groups, while API responses now return member counts instead of full user ID arrays. #​19239
  • 📄 MinerU parameter handling was refactored to pass parameters directly to the API, improving flexibility and fixing VLM backend configuration. #​19105, #​18446
  • 🔐 API key creation is now controlled by granular user and group permissions, with the "ENABLE_API_KEY" environment variable renamed to "ENABLE_API_KEYS" and disabled by default, requiring explicit configuration at both the global and user permission levels, while related environment variables "ENABLE_API_KEY_ENDPOINT_RESTRICTIONS" and "API_KEY_ALLOWED_ENDPOINTS" were renamed to "ENABLE_API_KEYS_ENDPOINT_RESTRICTIONS" and "API_KEYS_ALLOWED_ENDPOINTS" respectively. #​18336

[!TIP]
Looking for an Enterprise Plan?Speak with Our Sales Team Today!

Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, and more!

👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible:
@​Davixk, @​podden, @​ShirasawaSama, @​jekuaitk, @​sanglt, @​shargyle, @​aindriu80, @​krishna-medapati, @​lazariv, @​FlorentMair80, @​mikkeschiren, @​joaoback, @​Cyp9715, @​aleixdorca, @​silentoplayz, @​gerhardj-b, @​siwadon-jay, @​jmleksan, @​dannyl1u, @​rgaricano, @​Kylapaallikko, @​Classic298, @​expruc, @​tomhaynes, @​diwakar-s-maurya, @​xqqp, @​logan-hcg, @​BlakeTnr, @​siavashvj, @​Oleg52, @​sihyeonn, @​davecrab, @​matiboux, @​adam-skalicky

Sponsors 🙌

🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)

@​amd, @​roosi-gmbh, @​rndmcnlly, @​feddersen-group, @​SRKConsulting, @​mushmax, @​icanbwell, @​agency-agency, @​Classic298, @​loitragg, @​haka4githu6, @​silenceroom, @​GenieDev101, @​CubicleGangster, @​TOWaB, @​comet-ml, @​FominVO, @​catalyst-net-nz, @​JrdnHans, @​hkosm, @​VeroFess, @​joaoback, @​walsermedia, @​LuxTronic

v0.6.37

Compare Source

Added
  • 🔐 Granular sharing permissions are now available with two-tiered control separating group sharing from public sharing, allowing administrators to independently configure whether users can share workspace items with groups or make them publicly accessible, with separate permission toggles for models, knowledge bases, prompts, tools, and notes, configurable via "USER_PERMISSIONS_WORKSPACE_MODELS_ALLOW_SHARING", "USER_PERMISSIONS_WORKSPACE_MODELS_ALLOW_PUBLIC_SHARING", and corresponding environment variables for other workspace item types, while groups can now be configured to opt-out of sharing via the "Allow Group Sharing" setting. Commit, Commit
  • 🔐 Password policy enforcement is now available with configurable validation rules, allowing administrators to require specific password complexity requirements via "ENABLE_PASSWORD_VALIDATION" and "PASSWORD_VALIDATION_REGEX_PATTERN" environment variables, with default pattern requiring minimum 8 characters including uppercase, lowercase, digit, and special character. #​17794
  • 🔐 Granular import and export permissions are now available for workspace items, introducing six separate permission toggles for models, prompts, and tools that are disabled by default for enhanced security. #​19242
  • 👥 Default group assignment is now available for new users, allowing administrators to automatically assign newly registered users to a specified group for streamlined access control to models, prompts, and tools, particularly useful for organizations with group-based model access policies. #​19325, #​17842
  • 🔒 Password-based authentication can now be fully disabled via "ENABLE_PASSWORD_AUTH" environment variable, enforcing SSO-only authentication and preventing password login fallback when SSO is configured. #​19113
  • 🖼️ Large stream chunk handling was implemented to support models that generate images directly in their output responses, with configurable buffer size via "CHAT_STREAM_RESPONSE_CHUNK_MAX_BUFFER_SIZE" environment variable, resolving compatibility issues with models like Gemini 2.5 Flash Image. #​18884, #​17626
  • 🖼️ Streaming response middleware now handles images in delta updates with automatic base64 conversion, enabling proper display of images from models using the "choices[0].delta.images.image_url" format such as Gemini 2.5 Flash Image Preview on OpenRouter. #​19073, #​19019
  • 📈 Model list API performance was optimized by pre-fetching user group memberships and removing profile image URLs from response payloads, significantly reducing both database queries and payload size for instances with large model lists, with profile images now served dynamically via dedicated endpoints. #​19097, #​18950
  • Batch file processing performance was improved by reducing database queries by 67% while ensuring data consistency between vector and relational databases. #​18953
  • 🚀 Chat import performance was dramatically improved by replacing individual per-chat API requests with a bulk import endpoint, reducing import time by up to 95% for large chat collections and providing user feedback via toast notifications displaying the number of successfully imported chats. #​17861
  • Socket event broadcasting performance was optimized by implementing user-specific rooms, significantly reducing server overhead particularly for users with multiple concurrent sessions. #​18996
  • 🗄️ Weaviate is now supported as a vector database option, providing an additional choice for RAG document storage alongside existing ChromaDB, Milvus, Qdrant, and OpenSearch integrations. #​14747
  • 🗄️ PostgreSQL pgvector now supports HNSW index types and large dimensional embeddings exceeding 2000 dimensions through automatic halfvec type selection, with configurable index methods via "PGVECTOR_INDEX_METHOD", "PGVECTOR_HNSW_M", "PGVECTOR_HNSW_EF_CONSTRUCTION", and "PGVECTOR_IVFFLAT_LISTS" environment variables. #​19158, #​16890
  • 🔍 Azure AI Search is now supported as a web search provider, enabling integration with Azure's cognitive search services via "AZURE_AI_SEARCH_API_KEY", "AZURE_AI_SEARCH_ENDPOINT", and "AZURE_AI_SEARCH_INDEX_NAME" configuration. #​19104
  • External embedding generation now processes API requests in parallel instead of sequential batches, reducing document processing time by 10-50x when using OpenAI, Azure OpenAI, or Ollama embedding providers, with large PDFs now processing in seconds instead of minutes. #​19296
  • 💨 Base64 image conversion is now available for markdown content in chat responses, automatically uploading embedded images exceeding 1KB and replacing them with file URLs to reduce payload size and resource consumption, configurable via "REPLACE_IMAGE_URLS_IN_CHAT_RESPONSE" environment variable. #​19076
  • 🎨 OpenAI image generation now supports additional API parameters including quality settings for GPT Image 1, configurable via "IMAGES_OPENAI_API_PARAMS" environment variable or through the admin interface, enabling cost-effective image generation with low, medium, or high quality options. #​19228
  • 🖼️ Image editing can now be independently enabled or disabled via admin settings, allowing administrators to control whether sequential image prompts trigger image editing or new image generation, configurable via "ENABLE_IMAGE_EDIT" environment variable. #​19284
  • 🔐 SSRF protection was implemented with a configurable URL blocklist that prevents access to cloud metadata endpoints and private networks, with default protections for AWS, Google Cloud, Azure, and Alibaba Cloud metadata services, customizable via "WEB_FETCH_FILTER_LIST" environment variable. #​19201
  • Workspace models page now supports server-side pagination dramatically improving load times and usability for instances with large numbers of workspace models.
  • 🔍 Hybrid search now indexes file metadata including filenames, titles, headings, sources, and snippets alongside document content, enabling keyword queries to surface documents where search terms appear only in metadata, configurable via "ENABLE_RAG_HYBRID_SEARCH_ENRICHED_TEXTS" environment variable. #​19095
  • 📂 Knowledge base upload page now supports folder drag-and-drop with recursive directory handling, enabling batch uploads of entire directory structures instead of requiring individual file selection. #​19320
  • 🤖 Model cloning is now available in admin settings, allowing administrators to quickly create workspace models based on existing base models through a "Clone" option in the model dropdown menu. #​17937
  • 🎨 UI scale adjustment is now available in interface settings, allowing users to increase the size of the entire interface from 1.0x to 1.5x for improved accessibility and readability, particularly beneficial for users with visual impairments. #​19186
  • 📌 Default pinned models can now be configured by administrators for all new users, mirroring the behavior of default models where admin-configured defaults apply only to users who haven't customized their pinned models, configurable via "DEFAULT_PINNED_MODELS" environment variable. #​19273
  • 🎙️ Text-to-Speech and Speech-to-Text services now receive user information headers when "ENABLE_FORWARD_USER_INFO_HEADERS" is enabled, allowing external TTS and STT providers to implement user-specific personalization, rate limiting, and usage tracking. #​19323, #​19312
  • 🎙️ Voice mode now supports custom system prompts via "VOICE_MODE_PROMPT_TEMPLATE" configuration, allowing administrators to control response style and behavior for voice interactions. #​18607
  • 🔧 WebSocket and Redis configuration options are now available including debug logging controls, custom ping timeout and interval settings, and arbitrary Redis connection options via "WEBSOCKET_SERVER_LOGGING", "WEBSOCKET_SERVER_ENGINEIO_LOGGING", "WEBSOCKET_SERVER_PING_TIMEOUT", "WEBSOCKET_SERVER_PING_INTERVAL", and "WEBSOCKET_REDIS_OPTIONS" environment variables. #​19091
  • 🔧 MCP OAuth dynamic client registration now automatically detects and uses the appropriate token endpoint authentication method from server-supported options, enabling compatibility with OAuth servers that only support "client_secret_basic" instead of "client_secret_post". #​19193
  • 🔧 Custom headers can now be configured for remote MCP and OpenAPI tool server connections, enabling integration with services that require additional authentication headers. #​18918
  • 🔍 Perplexity Search now supports custom API endpoints via "PERPLEXITY_SEARCH_API_URL" configuration and automatically forwards user information headers to enable personalized search experiences. #​19147
  • 🔍 User information headers can now be optionally forwarded to external web search engines when "ENABLE_FORWARD_USER_INFO_HEADERS" is enabled. #​19043
  • 📊 Daily active user metric is now available for monitoring, tracking unique users active since midnight UTC via the "webui.users.active.today" Prometheus gauge. #​19236, #​19234
  • 📊 Audit log file path is now configurable via "AUDIT_LOGS_FILE_PATH" environment variable, enabling storage in separate volumes or custom locations. #​19173
  • 🎨 Sidebar collapse states for model lists and group information are now persistent across page refreshes, remembering user preferences through browser-based storage. #​19159
  • 🎨 Background image display was enhanced with semi-transparent overlays for navbar and sidebar, creating a seamless and visually cohesive design across the entire interface. #​19157
  • 📋 Tables in chat messages now include a copy button that appears on hover, enabling quick copying of table content alongside the existing CSV export functionality. #​19162
  • 📝 Notes can now be created directly via the "/notes/new" URL endpoint with optional title and content query parameters, enabling faster note creation through bookmarks and shortcuts. #​19195
  • 🏷️ Tag suggestions are now context-aware, displaying only relevant tags when creating or editing models versus chat conversations, preventing confusion between model and chat tags. #​19135
  • ✍️ Prompt autocompletion is now available independently of the rich text input setting, improving accessibility to the feature. #​19150
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Translations for Simplified Chinese, Traditional Chinese, Portuguese (Brazil), Catalan, Spanish (Spain), Finnish, Irish, Farsi, Swedish, Danish, German, Korean, and Thai were improved and expanded.
Fixed
  • 🤖 Model update functionality now works correctly, resolving a database parameter binding error that prevented saving changes to model configurations via the Save & Update button. #​19335
  • 🖼️ Multiple input images for image editing and generation are now correctly passed as an array using the "image[]" parameter syntax, enabling proper multi-image reference functionality with models like GPT Image 1. #​19339
  • 📱 PWA installations on iOS now properly refresh after server container restarts, resolving freezing issues by automatically unregistering service workers when version or deployment changes are detected. #​19316
  • 🗄️ S3 Vectors collection detection now correctly handles buckets with more than 2000 indexes by using direct index lookup instead of paginated list scanning, improving performance by approximately 8x and enabling RAG queries to work reliably at scale. #​19238, #​19233
  • 📈 Feedback retrieval performance was optimized by eliminating N+1 query patterns through database joins, adding server-side pagination and sorting, significantly reducing database load for instances with large feedback datasets. #​17976
  • 🔍 Chat search now works correctly with PostgreSQL when chat data contains null bytes, with comprehensive sanitization preventing null bytes during data writes, cleaning existing data on read, and stripping null bytes during search queries to ensure reliable search functionality. #​15616
  • 🔍 Hybrid search with reranking now correctly handles attribute validation, preventing errors when collection results lack expected structure. #​19025, #​17046
  • 🔎 Reranking functionality now works correctly after recent refactoring, resolving crashes caused by incorrect function argument handling. #​19270
  • 🤖 Azure OpenAI models now support the "reasoning_effort" parameter, enabling proper configuration of reasoning capabilities for models like GPT-5.1 which default to no reasoning without this setting. #​19290
  • 🤖 Models with very long IDs can now be deleted correctly, resolving URL length limitations that previously prevented management operations on such models. #​18230
  • 🤖 Model-level streaming settings now correctly apply to API requests, ensuring "Stream Chat Response" toggle properly controls the streaming parameter. #​19154
  • 🖼️ Image editing configuration now correctly preserves independent OpenAI API endpoints and keys, preventing them from being overwritten by image generation settings. #​19003
  • 🎨 Gemini image edit settings now display correctly in the admin panel, fixing an incorrect configuration key reference that prevented proper rendering of edit options. #​19200
  • 🖌️ Image generation settings menu now loads correctly, resolving validation errors with AUTOMATIC1111 API authentication parameters. #​19187, #​19246
  • 📅 Date formatting in chat search and admin user chat search now correctly respects the "DEFAULT_LOCALE" environment variable, displaying dates according to the configured locale instead of always using MM/DD/YYYY format. #​19305, #​19020
  • 📝 RAG template query placeholder escaping logic was corrected to prevent unintended replacements of context values when query placeholders appear in retrieved content. #​19102, #​19101
  • 📄 RAG template prompt duplication was eliminated by removing redundant user query section from the default template. #​19099, #​19098
  • 📋 MinerU local mode configuration no longer incorrectly requires an API key, allowing proper use of local content extraction without external API credentials. #​19258
  • 📊 Excel file uploads now work correctly with the addition of the missing msoffcrypto-tool dependency, resolving import errors introduced by the unstructured package upgrade. #​19153
  • 📑 Docling parameters now properly handle JSON serialization, preventing exceptions and ensuring configuration changes are saved correctly. #​19072
  • 🛠️ UserValves configuration now correctly isolates settings per tool, preventing configuration contamination when multiple tools with UserValves are used simultaneously. #​19185, #​15569
  • 🔧 Tool selection prompt now correctly handles user messages without duplication, removing redundant query prefixes and improving prompt clarity. #​19122, #​19121
  • 📝 Notes chat feature now correctly submits messages to the completions endpoint, resolving errors that prevented AI model interactions. #​19079
  • 📝 Note PDF downloads now sanitize HTML content using DOMPurify before rendering, preventing potential DOM-based XSS attacks from malicious content in notes. Commit
  • 📁 Archived chats now have their folder associations automatically removed to prevent unintended deletion when their previous folder is deleted. #​14578
  • 🔐 ElevenLabs API key is now properly obfuscated in the admin settings page, preventing plain text exposure of sensitive credentials. #​19262, #​19260
  • 🔧 MCP OAuth server metadata discovery now follows the correct specification order, ensuring proper authentication flow compliance. #​19244
  • 🔒 API key endpoint restrictions now properly enforce access controls for all endpoints including SCIM, preventing unintended access when "API_KEY_ALLOWED_ENDPOINTS" is configured. #​19168
  • 🔓 OAuth role claim parsing now supports both flat and nested claim structures, enabling compatibility with OAuth providers that deliver claims as direct properties on the user object rather than nested structures. #​19286
  • 🔑 OAuth MCP server verification now correctly extracts the access token value for authorization headers instead of sending the entire token dictionary. #​19149, #​19148
  • ⚙️ OAuth dynamic client registration now correctly converts empty strings to None for optional fields, preventing validation failures in MCP package integration. #​19144, #​19129
  • 🔐 OIDC authentication now correctly passes client credentials in access token requests, ensuring compatibility with providers that require these parameters per RFC 6749. #​19132, #​19131
  • 🔗 OAuth client creation now respects configured token endpoint authentication methods instead of defaulting to basic authentication, preventing failures with servers that don't support basic auth. #​19165
  • 📋 Text copied from chat responses in Chrome now pastes without background formatting, improving readability when pasting into word processors. #​19083
Changed
  • 🗄️ Group membership data storage was refactored from JSON arrays to a dedicated relational database table, significantly improving query performance and scalability for instances with large numbers of users and groups, while API responses now return member counts instead of full user ID arrays. #​19239
  • 📄 MinerU parameter handling was refactored to pass parameters directly to the API, improving flexibility and fixing VLM backend configuration. #​19105, #​18446
  • 🔐 API key creation is now controlled by granular user and group permissions, with the "ENABLE_API_KEY" environment variable renamed to "ENABLE_API_KEYS" and disabled by default, requiring explicit configuration at both the global and user permission levels, while related environment variables "ENABLE_API_KEY_ENDPOINT_RESTRICTIONS" and "API_KEY_ALLOWED_ENDPOINTS" were renamed to "ENABLE_API_KEYS_ENDPOINT_RESTRICTIONS" and "API_KEYS_ALLOWED_ENDPOINTS" respectively. #​18336

v0.6.36

Compare Source

[0.6.36] - 2025-11-07

Added
  • 🔐 OAuth group parsing now supports configurable separators via the "OAUTH_GROUPS_SEPARATOR" environment variable, enabling proper handling of semicolon-separated group claims from providers like CILogon. #​18987, #​18979
Fixed
  • 🛠️ Tool calling functionality is restored by correcting asynchronous function handling in tool parameter updates. #​18981
  • 🖼️ The ComfyUI image edit workflow editor modal now opens correctly when clicking the Edit button. #​18978
  • 🔥 Firecrawl import errors are resolved by implementing lazy loading and using the correct class name. #​18973
  • 🔌 Socket.IO CORS warning is resolved by properly configuring CORS origins for Socket.IO connections. Commit

v0.6.36

Compare Source

Added
  • 🔐 OAuth group parsing now supports configurable separators via the "OAUTH_GROUPS_SEPARATOR" environment variable, enabling proper handling of semicolon-separated group claims from providers like CILogon. #​18987, #​18979
Fixed
  • 🛠️ Tool calling functionality is restored by correcting asynchronous function handling in tool parameter updates. #​18981
  • 🖼️ The ComfyUI image edit workflow editor modal now opens correctly when clicking the Edit button. #​18978
  • 🔥 Firecrawl import errors are resolved by implementing lazy loading and using the correct class name. #​18973
  • 🔌 Socket.IO CORS warning is resolved by properly configuring CORS origins for Socket.IO connections. Commit

v0.6.35

Compare Source

Added
  • 🖼️ Image generation system received a comprehensive overhaul with major new capabilities including full image editing support allowing users to modify existing images using text prompts with OpenAI, Gemini, or ComfyUI engines, adding Gemini 2.5 Flash Image (Nano Banana) support, Qwen Image Edit integration, resolution of base64-encoded image display issues, streamlined AUTOMATIC1111 configuration by consolidating parameters into a flexible JSON parameters field, and enhanced UI with a code editor modal for ComfyUI workflow management. #​17434, #​16976, Commit, Commit, Commit, Commit
  • 🔒 CORS origin validation was added to WebSocket connections as a defense-in-depth security measure against cross-site WebSocket hijacking attacks. #​18411, #​18410
  • 🔄 Automatic page refresh now occurs when a version update is detected via WebSocket connection, ensuring users always run the latest version without cache issues. Commit
  • 🐍 Experimental initial preparations for Python 3.13 compatibility by updating dependencies with security enhancements and cryptographic improvements. #​18430, #​18424
  • Image compression now preserves the original image format instead of converting to PNG, significantly reducing file sizes and improving chat loading performance. #​18506
  • 🎤 Mistral Voxtral model support was added for text-to-speech, including voxtral-small and voxtral-mini models with both transcription and chat completion API support. #​18934
  • 🔊 Text-to-speech now uses a global audio queue system to prevent overlapping playback, ensuring only one TTS instance plays at a time with proper stop/start controls and automatic cleanup when switching between messages. #​16152, #​18744, #​16150
  • 🔊 ELEVENLABS_API_BASE_URL environment variable now allows configuration of custom ElevenLabs API endpoints, enabling support for EU residency API requirements. #​18402
  • 🔐 OAUTH_ROLES_SEPARATOR environment variable now allows custom role separators for OAuth roles that contain commas, useful for roles specified in LDAP syntax. #​18572
  • 📄 External document loaders can now optionally forward user information headers when ENABLE_FORWARD_USER_INFO_HEADERS is enabled, enabling cost tracking, audit logs, and usage analytics for external services. #​18731
  • 📄 MISTRAL_OCR_API_BASE_URL environment variable now allows configuration of custom Mistral OCR API endpoints for flexible deployment options. Commit
  • ⌨️ Keyboard shortcut hints are now displayed on sidebar buttons with a refactored shortcuts modal that accurately reflects all available hotkeys across different keyboard layouts. #​18473
  • 🛠️ Tooltips now display tool descriptions when hovering over tool names on the model edit page, improving usability and providing immediate context. #​18707
  • 📝 "Create a new note" from the search modal now immediately creates a new private note and opens it in the editor instead of navigating to the generic notes page. #​18255
  • 🖨️ Code block output now preserves whitespace formatting with monospace font to accurately reflect terminal behavior. #​18352
  • ✏️ Edit button is now available in the three-dot menu of models in the workspace section for quick access to model editing, with the menu reorganized for better user experience and Edit, Clone, Copy Link, and Share options logically grouped. #​18574
  • 📌 Sidebar models section is now collapsible, allowing users to expand and collapse the pinned models list for better sidebar organization. Commit
  • 🌙 Dark mode styles for select elements were added using Tailwind CSS classes, improving consistency across the interface. #​18636
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Translations for Portuguese (Brazil), Greek, German, Traditional Chinese, Simplified Chinese, Spanish, Georgian, Danish, and Estonian were enhanced and expanded.
Fixed
  • 🔒 Server-Sent Event (SSE) code injection vulnerability in Direct Connections is resolved by blocking event emission from untrusted external model servers; event emitters from direct connected model servers are no longer supported, preventing arbitrary JavaScript execution in user browsers. Commit
  • 🛡️ DOM XSS vulnerability in "Insert Prompt as Rich Text" is resolved by sanitizing HTML content with DOMPurify before rendering. Commit
  • ⚙️ MCP server cancellation scope corruption is prevented by reversing disconnection order to follow LIFO and properly handling exceptions, resolving 100% CPU usage when resuming chats with expired tokens or using multiple streamable MCP servers. #​18537
  • 🔧 UI freeze when querying models with knowledge bases containing inconsistent distance metrics is resolved by properly initializing the distances array in citations. #​18585
  • 🤖 Duplicate model IDs from multiple OpenAI endpoints are now automatically deduplicated server-side, preventing frontend crashes for users with unified gateway proxies that aggregate multiple providers. Commit
  • 🔐 Login failures with passwords longer than 72 bytes are resolved by safely truncating oversized passwords for bcrypt compatibility. #​18157
  • 🔐 OAuth 2.1 MCP tool connections now automatically re-register clients when stored client IDs become stale, preventing unauthorized_client errors after editing tool endpoints and providing detailed error messages for callback failures. #​18415, #​18309
  • 🔓 OAuth 2.1 discovery, metadata fetching, and dynamic client registration now correctly use HTTP proxy environment variables when trust_env is enabled. Commit
  • 🔌 MCP server connection failures now display clear error messages in the chat interface instead of silently failing. #​18892, #​18889
  • 💬 Chat titles are now properly generated even when title auto-generation is disabled in interface settings, fixing an issue where chats would remain labeled as "New chat". #​18761, #​18717, #​6478
  • 🔍 Chat query errors are prevented by properly validating and handling the "order_by" parameter to ensure requested columns exist. #​18400, #​18452
  • 🔧 Root-level max_tokens parameter is no longer dropped when proxying to Ollama, properly converting to num_predict to limit output token length as intended. #​18618
  • 🔑 Self-hosted Marker instances can now be used without requiring an API key, while keeping it optional for datalab Marker service users. #​18617
  • 🔧 OpenAPI specification endpoint conflict between "/api/v1/models" and "/api/v1/models/" is resolved by changing the models router endpoint to "/list", preventing duplicate operationId errors when generating TypeScript API clients. #​18758
  • 🏷️ Model tags are now de-duplicated case-insensitively in both the model selector and workspace models page, preventing duplicate entries with different capitalization from appearing in filter dropdowns. #​18716, #​18711
  • 📄 Docling RAG parameter configuration is now correctly saved in the admin UI by fixing the typo in the "DOCLING_PARAMS" parameter name. #​18390
  • 📃 Tika document processing now automatically detects content types instead of relying on potentially incorrect browser-provided mime-types, improving file handling accuracy for formats like RTF. #​18765, #​18683
  • 🖼️ Image and video uploads to knowledge bases now display proper error messages instead of showing an infinite spinner when the content extraction engine does not support these file types. #​18514
  • 📝 Notes PDF export now properly detects and applies dark mode styling consistently across both the notes list and individual note pages, with a shared utility function to eliminate code duplication. #​18526
  • 💭 Details tags for reasoning content are now correctly identified and rendered even when the same tag is present in user messages. #​18840, #​18294
  • 📊 Mermaid and Vega rendering errors now display inline with the code instead of showing repetitive toast notifications, improving user experience when models generate invalid diagram syntax. Commit
  • 📈 Mermaid diagram rendering errors no longer cause UI unavailability or display error messages below the input box. #​18493, #​18340
  • 🔗 Web search SSL verification is now asynchronous, preventing the website from hanging during web search operations. #​18714, #​18699
  • 🌍 Web search results now correctly use HTTP proxy environment variables when WEB_SEARCH_TRUST_ENV is enabled. #​18667, #​7008
  • 🔍 Google Programmable Search Engine now properly includes referer headers, enabling API keys with HTTP referrer restrictions configured in Google Cloud Console. #​18871, #​18870
  • YouTube video transcript fetching now works correctly when using a proxy connection. #​18419
  • 🎙️ Speech-to-text transcription no longer deletes or replaces existing text in the prompt input field, properly preserving any previously entered content. #​18540
  • 🎙️ The "Instant Auto-Send After Voice Transcription" setting now functions correctly and automatically sends transcribed text when enabled. #​18466
  • ⚙️ Chat settings now load properly when reopening a tab or starting a new session by initializing defaults when sessionStorage is empty. #​18438
  • 🔎 Folder tag search in the sidebar now correctly handles folder names with multiple spaces by replacing all spaces with underscores. Commit
  • 🛠️ Functions page now updates immediately after deleting a function, removing the need for a manual page reload. #​18912, #​18908
  • 🛠️ Native tool calling now properly supports sequential tool calls with shared context, allowing tools to access images and data from previous tool executions in the same conversation. #​18664
  • 🎯 Globally enabled actions in the model editor now correctly apply as global instead of being treated as disabled. #​18577
  • 📋 Clipboard images pasted via the "{{CLIPBOARD}}" prompt variable are now correctly converted to base64 format before being sent to the backend, resolving base64 encoding errors. #​18432, #​18425
  • 📋 File list is now cleared when switching to models that do not support file uploads, preventing files from being sent to incompatible models. #​18496
  • 📂 Move menu no longer displays when folders are empty. #​18484
  • 📁 Folder and channel creation now validates that names are not empty, preventing creation of folders or channels with no name and showing an error toast if attempted. #​18564
  • 🖊️ Rich text input no longer removes text between equals signs when pasting code with comparison operators. #​18551
  • ⌨️ Keyboard shortcuts now display the correct keys for international and non-QWERTY keyboard layouts by detecting the user's layout using the Keyboard API. #​18533
  • 🌐 "Attach Webpage" button now displays with correct disabled styling when a model does not support file uploads. #​18483
  • 🎚️ Divider no longer displays in the integrations menu when no integrations are enabled. #​18487
  • 📱 Chat controls button is now properly hidden on mobile for users without admin or explicit chat control permissions. #​18641
  • 📍 User menu, download submenu, and move submenu are now repositioned to prevent overlap with the Chat Controls sidebar when it is open. Commit
  • 🎯 Artifacts button no longer appears in the chat menu when there are no artifacts to display. Commit
  • 🎨 Artifacts view now automatically displays when opening an existing conversation containing artifacts, improving user experience. #​18215
  • 🖌️ Formatting toolbar is no longer hidden under images or code blocks in chat and now displays correctly above all message content.
  • 🎨 Layout shift near system instructions is prevented by properly rendering the chat component when system prompts are empty. #​18594
  • 📐 Modal layout shift caused by scrollbar appearance is prevented by adding a stable scrollbar gutter. #​18591
  • Spacing between icon and label in the user menu dropdown items is now consistent. #​18595
  • 💬 Duplicate prompt suggestions no longer cause the webpage to freeze or throw JavaScript errors by implementing proper key management with composite keys. #​18841, #​18566
  • 🔍 Chat preview loading in the search modal now works correctly for all search results by fixing an index boundary check that previously caused out-of-bounds errors. #​18911
  • Screen reader support was enhanced by wrapping messages in semantic elements with descriptive aria-labels, adding "Assistant is typing" and "Response complete" announcements for improved accessibility. #​18735
  • 🔒 Incorrect await call in the OAuth 2.1 flow is removed, eliminating a logged exception during authentication. #​18236
  • 🛡️ Duplicate crossorigin attribute in the manifest file was removed. #​18413
Changed
  • 🔄 Firecrawl integration was refactored to use the official Firecrawl SDK instead of direct HTTP requests and langchain_community FireCrawlLoader, improving reliability and performance with batch scraping support and enhanced error handling. #​18635
  • 📄 MinerU content extraction engine now only supports PDF files following the upstream removal of LibreOffice document conversion in version 2.0.0; users needing to process office documents should convert them to PDF format first. #​18448

v0.6.35

Compare Source

[0.6.35] - 2025-11-06

Added
  • 🖼️ Image generation system received a comprehensive overhaul with major new capabilities including full image editing support allowing users to modify existing images using text prompts with OpenAI, Gemini, or ComfyUI engines, adding Gemini 2.5 Flash Image (Nano Banana) support, Qwen Image Edit integration, resolution of base64-encoded image display issues, streamlined AUTOMATIC1111 configuration by consolidating parameters into a flexible JSON parameters field, and enhanced UI with a code editor modal for ComfyUI workflow management. #​17434, #​16976, Commit, Commit, Commit, Commit
  • 🔒 CORS origin validation was added to WebSocket connections as a defense-in-depth security measure against cross-site WebSocket hijacking attacks. #​18411, #​18410
  • 🔄 Automatic page refresh now occurs when a version update is detected via WebSocket connection, ensuring users always run the latest version without cache issues. Commit
  • 🐍 Experimental initial preparations for Python 3.13 compatibility by updating dependencies with security enhancements and cryptographic improvements. #​18430, #​18424
  • Image compression now preserves the original image format instead of converting to PNG, significantly reducing file sizes and improving chat loading performance. #​18506
  • 🎤 Mistral Voxtral model support was added for text-to-speech, including voxtral-small and voxtral-mini models with both transcription and chat completion API support. #​18934
  • 🔊 Text-to-speech now uses a global audio queue system to prevent overlapping playback, ensuring only one TTS instance plays at a time with proper stop/start controls and automatic cleanup when switching between messages. #​16152, #​18744, #​16150
  • 🔊 ELEVENLABS_API_BASE_URL environment variable now allows configuration of custom ElevenLabs API endpoints, enabling support for EU residency API requirements. #​18402
  • 🔐 OAUTH_ROLES_SEPARATOR environment variable now allows custom role separators for OAuth roles that contain commas, useful for roles specified in LDAP syntax. #​18572
  • 📄 External document loaders can now optionally forward user information headers when ENABLE_FORWARD_USER_INFO_HEADERS is enabled, enabling cost tracking, audit logs, and usage analytics for external services. #​18731
  • 📄 MISTRAL_OCR_API_BASE_URL environment variable now allows configuration of custom Mistral OCR API endpoints for flexible deployment options. Commit
  • ⌨️ Keyboard shortcut hints are now displayed on sidebar buttons with a refactored shortcuts modal that accurately reflects all available hotkeys across different keyboard layouts. #​18473
  • 🛠️ Tooltips now display tool descriptions when hovering over tool names on the model edit page, improving usability and providing immediate context. #​18707
  • 📝 "Create a new note" from the search modal now immediately creates a new private note and opens it in the editor instead of navigating to the generic notes page. #​18255
  • 🖨️ Code block output now preserves whitespace formatting with monospace font to accurately reflect terminal behavior. #​18352
  • ✏️ Edit button is now available in the three-dot menu of models in the workspace section for quick access to model editing, with the menu reorganized for better user experience and Edit, Clone, Copy Link, and Share options logically grouped. #​18574
  • 📌 Sidebar models section is now collapsible, allowing users to expand and collapse the pinned models list for better sidebar organization. Commit
  • 🌙 Dark mode styles for select elements were added using Tailwind CSS classes, improving consistency across the interface. #​18636
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Translations for Portuguese (Brazil), Greek, German, Traditional Chinese, Simplified Chinese, Spanish, Georgian, Danish, and Estonian were enhanced and expanded.
Fixed
  • 🔒 Server-Sent Event (SSE) code injection vulnerability in Direct Connections is resolved by blocking event emission from untrusted external model servers; event emitters from direct connected model servers are no longer supported, preventing arbitrary JavaScript execution in user browsers. Commit
  • 🛡️ DOM XSS vulnerability in "Insert Prompt as Rich Text" is resolved by sanitizing HTML content with DOMPurify before rendering. Commit
  • ⚙️ MCP server cancellation scope corruption is prevented by reversing disconnection order to follow LIFO and properly handling exceptions, resolving 100% CPU usage when resuming chats with expired tokens or using multiple streamable MCP servers. #​18537
  • 🔧 UI freeze when querying models with knowledge bases containing inconsistent distance metrics is resolved by properly initializing the distances array in citations. #​18585
  • 🤖 Duplicate model IDs from multiple OpenAI endpoints are now automatically deduplicated server-side, preventing frontend crashes for users with unified gateway proxies that aggregate multiple providers. Commit
  • 🔐 Login failures with passwords longer than 72 bytes are resolved by safely truncating oversized passwords for bcrypt compatibility. #​18157
  • 🔐 OAuth 2.1 MCP tool connections now automatically re-register clients when stored client IDs become stale, preventing unauthorized_client errors after editing tool endpoints and providing detailed error messages for callback failures. #​18415, #​18309
  • 🔓 OAuth 2.1 discovery, metadata fetching, and dynamic client registration now correctly use HTTP proxy environment variables when trust_env is enabled. Commit
  • 🔌 MCP server connection failures now display clear error messages in the chat interface instead of silently failing. #​18892, #​18889
  • 💬 Chat titles are now properly generated even when title auto-generation is disabled in interface settings, fixing an issue where chats would remain labeled as "New chat". #​18761, #​18717, #​6478
  • 🔍 Chat query errors are prevented by properly validating and handling the "order_by" parameter to ensure requested columns exist. #​18400, #​18452
  • 🔧 Root-level max_tokens parameter is no longer dropped when proxying to Ollama, properly converting to num_predict to limit output token length as intended. #​18618
  • 🔑 Self-hosted Marker instances can now be used without requiring an API key, while keeping it optional for datalab Marker service users. #​18617
  • 🔧 OpenAPI specification endpoint conflict between "/api/v1/models" and "/api/v1/models/" is resolved by changing the models router endpoint to "/list", preventing duplicate operationId errors when generating TypeScript API clients. #​18758
  • 🏷️ Model tags are now de-duplicated case-insensitively in both the model selector and workspace models page, preventing duplicate entries with different capitalization from appearing in filter dropdowns. #​18716, #​18711
  • 📄 Docling RAG parameter configuration is now correctly saved in the admin UI by fixing the typo in the "DOCLING_PARAMS" parameter name. #​18390
  • 📃 Tika document processing now automatically detects content types instead of relying on potentially incorrect browser-provided mime-types, improving file handling accuracy for formats like RTF. #​18765, #​18683
  • 🖼️ Image and video uploads to knowledge bases now display proper error messages instead of showing an infinite spinner when the content extraction engine does not support these file types. #​18514
  • 📝 Notes PDF export now properly detects and applies dark mode styling consistently across both the notes list and individual note pages, with a shared utility function to eliminate code duplication. #​18526
  • 💭 Details tags for reasoning content are now correctly identified and rendered even when the same tag is present in user messages. #​18840, #​18294
  • 📊 Mermaid and Vega rendering errors now display inline with the code instead of showing repetitive toast notifications, improving user experience when models generate invalid diagram syntax. Commit
  • 📈 Mermaid diagram rendering errors no longer cause UI unavailability or display error messages below the input box. #​18493, #​18340
  • 🔗 Web search SSL verification is now asynchronous, preventing the website from hanging during web search operations. #​18714, #​18699
  • 🌍 Web search results now correctly use HTTP proxy environment variables when WEB_SEARCH_TRUST_ENV is enabled. #​18667, #​7008
  • 🔍 Google Programmable Search Engine now properly includes referer headers, enabling API keys with HTTP referrer restrictions configured in Google Cloud Console. #​18871, #​18870
  • YouTube video transcript fetching now works correctly when using a proxy connection. #​18419
  • 🎙️ Speech-to-text transcription no longer deletes or replaces existing text in the prompt input field, properly preserving any previously entered content. #​18540
  • 🎙️ The "Instant Auto-Send After Voice Transcription" setting now functions correctly and automatically sends transcribed text when enabled. #​18466
  • ⚙️ Chat settings now load properly when reopening a tab or starting a new session by initializing defaults when sessionStorage is empty. #​18438
  • 🔎 Folder tag search in the sidebar now correctly handles folder names with multiple spaces by replacing all spaces with underscores. Commit
  • 🛠️ Functions page now updates immediately after deleting a function, removing the need for a manual page reload. #​18912, #​18908
  • 🛠️ Native tool calling now properly supports sequential tool calls with shared context, allowing tools to access images and data from previous tool executions in the same conversation. #​18664
  • 🎯 Globally enabled actions in the model editor now correctly apply as global instead of being treated as disabled. #​18577
  • 📋 Clipboard images pasted via the "{{CLIPBOARD}}" prompt variable are now correctly converted to base64 format before being sent to the backend, resolving base64 encoding errors. #​18432, #​18425
  • 📋 File list is now cleared when switching to models that do not support file uploads, preventing files from being sent to incompatible models. #​18496
  • 📂 Move menu no longer displays when folders are empty. #​18484
  • 📁 Folder and channel creation now validates that names are not empty, preventing creation of folders or channels with no name and showing an error toast if attempted. #​18564
  • 🖊️ Rich text input no longer removes text between equals signs when pasting code with comparison operators. #​18551
  • ⌨️ Keyboard shortcuts now display the correct keys for international and non-QWERTY keyboard layouts by detecting the user's layout using the Keyboard API. #​18533
  • 🌐 "Attach Webpage" button now displays with correct disabled styling when a model does not support file uploads. #​18483
  • 🎚️ Divider no longer displays in the integrations menu when no integrations are enabled. #​18487
  • 📱 Chat controls button is now properly hidden on mobile for users without admin or explicit chat control permissions. #​18641
  • 📍 User menu, download submenu, and move submenu are now repositioned to prevent overlap with the Chat Controls sidebar when it is open. Commit
  • 🎯 Artifacts button no longer appears in the chat menu when there are no artifacts to display. Commit
  • 🎨 Artifacts view now automatically displays when opening an existing conversation containing artifacts, improving user experience. #​18215
  • 🖌️ Formatting toolbar is no longer hidden under images or code blocks in chat and now displays correctly above all message content.
  • 🎨 Layout shift near system instructions is prevented by properly rendering the chat component when system prompts are empty. #​18594
  • 📐 Modal layout shift caused by scrollbar appearance is prevented by adding a stable scrollbar gutter. #​18591
  • Spacing between icon and label in the user menu dropdown items is now consistent. #​18595
  • 💬 Duplicate prompt suggestions no longer cause the webpage to freeze or throw JavaScript errors by implementing proper key management with composite keys. #​18841, #​18566
  • 🔍 Chat preview loading in the search modal now works correctly for all search results by fixing an index boundary check that previously caused out-of-bounds errors. #​18911
  • Screen reader support was enhanced by wrapping messages in semantic elements with descriptive aria-labels, adding "Assistant is typing" and "Response complete" announcements for improved accessibility. #​18735
  • 🔒 Incorrect await call in the OAuth 2.1 flow is removed, eliminating a logged exception during authentication. #​18236
  • 🛡️ Duplicate crossorigin attribute in the manifest file was removed. #​18413
Changed
  • 🔄 Firecrawl integration was refactored to use the official Firecrawl SDK instead of direct HTTP requests and langchain_community FireCrawlLoader, improving reliability and performance with batch scraping support and enhanced error handling. #​18635
  • 📄 MinerU content extraction engine now only supports PDF files following the upstream removal of LibreOffice document conversion in version 2.0.0; users needing to process office documents should convert them to PDF format first. #​18448

[!TIP]
Looking for an Enterprise Plan?Speak with Our Sales Team Today!

Get enhanced capabilities, including custom theming and branding, Service Level Agreement (SLA) support, and more!

👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible:
@​joaoback, @​kaiwinut, @​taylorwilsdon, @​Classic298, @​duncansmart, @​silentoplayz, @​sinejespersen, @​acomarcho, @​Davixk, @​Ithanil, @​zhsh-12, @​athoik, @​acomarcho, @​wangweixuan, @​ShirasawaSama, @​acwoo97, @​IllimarR, @​rgaricano, @​OAburub, @​iPagar, @​mkhludnev, @​jmleksan, @​attilaolah, @​htulipe, @​ricdikulous, @​andrewbbaek, @​Tsafaras, @​Classic298, @​ivanostanin, @​wei840222

Sponsors 🙌

🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!)

@​amd, @​roosi-gmbh, @​rndmcnlly, @​feddersen-group, @​SRKConsulting, @​mushmax, @​icanbwell, @​agency-agency, @​Classic298, @​loitragg, @​haka4githu6, @​GenieDev101, @​CubicleGangster, @​TOWaB, @​comet-ml, @​FominVO, @​catalyst-net-nz, @​JrdnHans, @​hkosm, @​VeroFess, @​joaoback

v0.6.34

Compare Source

Added
  • 📄 MinerU is now supported as a document parser backend, with support for both local and managed API deployments. #​18306
  • 🔒 JWT token expiration default is now set to 4 weeks instead of never expiring, with security warnings displayed in backend logs and admin UI when set to unlimited. #​18261, #​18262
  • Page loading performance is improved by preventing unnecessary API requests when sidebar folders are not expanded. #​18179, #​17476
  • 📁 File hash values are now included in the knowledge endpoint response, enabling efficient file synchronization through hash comparison. #​18284, #​18283
  • 🎨 Chat dialog scrollbar visibility is improved by increasing its width, making it easier to use for navigation. #​18369, #​11782
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Translations for Catalan, Chinese, Czech, Finnish, German, Kabyle, Korean, Portuguese (Brazil), Spanish, Thai, and Turkish were enhanced and expanded.
Fixed
  • 📚 Focused retrieval mode now works correctly, preventing the system from forcing full context mode and loading all documents in a knowledge base regardless of settings. #​18133
  • 🔧 Filter inlet functions now correctly execute on tool call continuations, ensuring parameter persistence throughout tool interactions. #​18222
  • 🛠️ External tool servers now properly support DELETE requests with body data. #​18289, #​18287
  • 🗄️ Oracle23ai vector database client now correctly handles variable initialization, resolving UnboundLocalError when retrieving items from collections. #​18356
  • 🔧 Model auto-pull functionality now works correctly even when user settings remain unmodified. #​18324
  • 🎨 Duplicate HTML content in artifacts is now prevented by improving code block detection logic. #​18195, #​6154
  • 💬 Pinned chats now appear in the Reference Chats list and can be referenced in conversations. #​18288
  • 📝 Misleading knowledge base warning text in documents settings is clarified to correctly instruct users about reindexing vectors. #​18263
  • 🔔 Toast notifications can now be dismissed even when a modal is open. #​18260
  • 🔘 The "Chats" button in the sidebar now correctly toggles chat list visibility without navigating away from the current page. #​18232
  • 🎯 The Integrations menu no longer closes prematurely when clicking outside the Valves modal. #​18310
  • 🛠️ Tool ID display issues where "undefined" was incorrectly shown in the interface are now resolved. #​18178
  • 🛠️ Model management issues caused by excessively long model IDs are now prevented through validation that limits model IDs to 256 characters. #​18125

v0.6.34

Compare Source

[0.6.34] - 2025-10-16

Added
  • 📄 MinerU is now supported as a document parser backend, with support for both local and managed API deployments. #​18306
  • 🔒 JWT token expiration default is now set to 4 weeks instead of never expiring, with security warnings displayed in backend logs and admin UI when set to unlimited. #​18261, #​18262
  • Page loading performance is improved by preventing unnecessary API requests when sidebar folders are not expanded. #​18179, #​17476
  • 📁 File hash values are now included in the knowledge endpoint response, enabling efficient file synchronization through hash comparison. #​18284, #​18283
  • 🎨 Chat dialog scrollbar visibility is improved by increasing its width, making it easier to use for navigation. #​18369, #​11782
  • 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security.
  • 🌐 Translations for Catalan, Chinese, Czech, Finnish, German, Kabyle, Korean, Portuguese (Brazil), Spanish, Thai, and Turkish were enhanced and expanded.
Fixed
  • 📚 Focused retrieval mode now works correctly, preventing the system from forcing full context mode and loading all documents in a knowledge base regardless of settings. #​18133
  • 🔧 Filter inlet functions now correctly execute on tool call continuations, ensuring parameter persistence throughout tool interactions. #​18222
  • 🛠️ External tool servers now properly support DELETE requests with body data. #​18289, #​18287
  • 🗄️ Oracle23ai vector database client now correctly handles variable initialization, resolving UnboundLocalError when retrieving items from collections. #​18356
  • 🔧 Model auto-pull functionality now works correctly even when user settings remain unmodified. #​18324
  • 🎨 Duplicate HTML content in artifacts is now prevented by improving code block detection logic. #​18195, #​6154
  • 💬 Pinned chats now appear in the Reference Chats list and can be referenced in conversations. #​18288
  • 📝 Misleading knowledge base warning text in documents settings is clarified to correctly instruct users about reindexing vectors. #​18263
  • 🔔 Toast notifications can now be dismissed even when a modal is open. #​18260
  • 🔘 The "Chats" button in the sidebar now correctly toggles chat list visibility without navigating away from the current page. #​18232
  • 🎯 The Integrations menu no longer closes prematurely when clicking outside the Valves modal. #​18310
  • 🛠️ Tool ID display issues where "undefined" was incorrectly shown in the interface are now resolved. #​18178
  • 🛠️ Model management issues caused by excessively long model IDs are now prevented through validation that limits model IDs to 256 characters. #​18125

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/open-webui/open-webui](https://github.com/open-webui/open-webui) | patch | `0.6.33` -> `0.6.41` | --- ### Release Notes <details> <summary>open-webui/open-webui (ghcr.io/open-webui/open-webui)</summary> ### [`v0.6.41`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0641---2025-12-02) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.41...v0.6.41) ##### Added - 🚦 Sign-in rate limiting was implemented to protect against brute force attacks, limiting login attempts to 15 per 3-minute window per email address using Redis with automatic fallback to in-memory storage when Redis is unavailable. [Commit](https://github.com/open-webui/open-webui/commit/7b166370432414ce8f186747fb098e0c70fb2d6b) - 📂 Administrators can now globally disable the folders feature and control user-level folder permissions through the admin panel, enabling minimalist interface configurations for deployments that don't require workspace organization features. [#&#8203;19529](https://github.com/open-webui/open-webui/pull/19529), [#&#8203;19210](https://github.com/open-webui/open-webui/discussions/19210), [#&#8203;18459](https://github.com/open-webui/open-webui/discussions/18459), [#&#8203;18299](https://github.com/open-webui/open-webui/discussions/18299) - 👥 Group channels were introduced as a new channel type enabling membership-based collaboration spaces where users explicitly join as members rather than accessing through permissions, with support for public or private visibility, automatic member inclusion from specified user groups, member role tracking with invitation metadata, and post-creation member management allowing channel managers to add or remove members through the channel info modal. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4), [Commit](https://github.com/open-webui/open-webui/commit/3f1d9ccbf8443a2fa5278f36202bad930a216680) - 💬 Direct Message channels were introduced with a dedicated channel type selector and multi-user member selection interface, enabling private conversations between specific users without requiring full channel visibility. [Commit](https://github.com/open-webui/open-webui/commit/64b4d5d9c280b926746584aaf92b447d09deb386) - 📨 Direct Message channels now support a complete user-to-user messaging system with member-based access control, automatic deduplication for one-on-one conversations, optional channel naming, and distinct visual presentation using participant avatars instead of channel icons. [Commit](https://github.com/open-webui/open-webui/commit/acccb9afdd557274d6296c70258bb897bbb6652f) - 🙈 Users can now hide Direct Message channels from their sidebar while preserving message history, with automatic reactivation when new messages arrive from other participants, providing a cleaner interface for managing active conversations. [Commit](https://github.com/open-webui/open-webui/commit/acccb9afdd557274d6296c70258bb897bbb6652f) - ☑️ A comprehensive user selection component was added to the channel creation modal, featuring search functionality, sortable user lists, pagination support, and multi-select checkboxes for building Direct Message participant lists. [Commit](https://github.com/open-webui/open-webui/commit/acccb9afdd557274d6296c70258bb897bbb6652f) - 🔴 Channel unread message count tracking was implemented with visual badge indicators in the sidebar, automatically updating counts in real-time and marking messages as read when users view channels, with join/leave functionality to manage membership status. [Commit](https://github.com/open-webui/open-webui/commit/64b4d5d9c280b926746584aaf92b447d09deb386) - 📌 Message pinning functionality was added to channels, allowing users to pin important messages for easy reference with visual highlighting, a dedicated pinned messages modal accessible from the navbar, and complete backend support for tracking pinned status, pin timestamp, and the user who pinned each message. [Commit](https://github.com/open-webui/open-webui/commit/64b4d5d9c280b926746584aaf92b447d09deb386), [Commit](https://github.com/open-webui/open-webui/commit/aae2fce17355419d9c29f8100409108037895201) - 🟢 Direct Message channels now display an active status indicator for one-on-one conversations, showing a green dot when the other participant is currently online or a gray dot when offline. [Commit](https://github.com/open-webui/open-webui/commit/4b6773885cd7527c5a56b963781dac5e95105eec), [Commit](https://github.com/open-webui/open-webui/commit/39645102d14f34e71b34e5ddce0625790be33f6f) - 🆔 Users can now start Direct Message conversations directly from user profile previews by clicking the "Message" button, enabling quick access to private messaging without navigating away from the current channel. [Commit](https://github.com/open-webui/open-webui/commit/a0826ec9fedb56320532616d568fa59dda831d4e) - ⚡ Channel messages now appear instantly when sent using optimistic UI rendering, displaying with a pending state while the server confirms delivery, providing a more responsive messaging experience. [Commit](https://github.com/open-webui/open-webui/commit/25994dd3da90600401f53596d4e4fb067c1b8eaa) - 👍 Channel message reactions now display the names of users who reacted when hovering over the emoji, showing up to three names with a count for additional reactors. [Commit](https://github.com/open-webui/open-webui/commit/05e79bdd0c7af70b631e958924e3656db1013b80) - 🛠️ Channel creators can now edit and delete their own group and DM channels without requiring administrator privileges, enabling users to manage the channels they create independently. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4) - 🔌 A new API endpoint was added to directly get or create a Direct Message channel with a specific user by their ID, streamlining programmatic DM channel creation for integrations and frontend workflows. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4) - 💭 Users can now set a custom status with an emoji and message that displays in profile previews, the sidebar user menu, and Direct Message channel items in the sidebar, with the ability to clear status at any time, providing visibility into availability or current focus similar to team communication platforms. [Commit](https://github.com/open-webui/open-webui/commit/51621ba91a982e52da168ce823abffd11ad3e4fa), [Commit](https://github.com/open-webui/open-webui/commit/f5e8d4d5a004115489c35725408b057e24dfe318) - 📤 A group export API endpoint was added, enabling administrators to export complete group data including member lists for backup and migration purposes. [Commit](https://github.com/open-webui/open-webui/commit/09b6ea38c579659f8ca43ae5ea3746df3ac561ad) - 📡 A new API endpoint was added to retrieve all users belonging to a specific group, enabling programmatic access to group membership information for administrative workflows. [Commit](https://github.com/open-webui/open-webui/commit/01868e856a10f474f74fbd1b4425dafdf949222f) - 👁️ The admin user list now displays an active status indicator next to each user, showing a visual green dot for users who have been active within the last three minutes. [Commit](https://github.com/open-webui/open-webui/commit/1b095d12ff2465b83afa94af89ded9593f8a8655) - 🔑 The admin user edit modal now displays OAuth identity information with a per-provider breakdown, showing each linked identity provider and its associated subject identifier separately. [#&#8203;19573](https://github.com/open-webui/open-webui/pull/19573) - 🧩 OAuth role claim parsing now respects the "OAUTH\_ROLES\_SEPARATOR" configuration, enabling proper parsing of roles returned as comma-separated strings and providing consistent behavior with group claim handling. [#&#8203;19514](https://github.com/open-webui/open-webui/pull/19514) - 🎛️ Channel feature access can now be controlled through both the "USER\_PERMISSIONS\_FEATURES\_CHANNELS" environment variable and group permission toggles in the admin panel, allowing administrators to restrict channel functionality for specific users or groups while defaulting to enabled for all users. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4) - 🎨 The model editor interface was refined with access control settings moved to a dedicated modal, group member counts now displayed when configuring permissions, reorganized layout with improved visual hierarchy, and redesigned prompt suggestions cards with tooltips for field guidance. [Commit](https://github.com/open-webui/open-webui/commit/e65d92fc6f49da5ca059e1c65a729e7973354b99), [Commit](https://github.com/open-webui/open-webui/commit/9d39b9b42c653ee2acf2674b2df343ecbceb4954) - 🏗️ Knowledge base file management was rebuilt with a dedicated database table replacing the previous JSON array storage, enabling pagination support for large knowledge bases, significantly faster file listing performance, and more reliable file-knowledge base relationship tracking. [Commit](https://github.com/open-webui/open-webui/commit/d19023288e2ca40f86e2dc3fd9f230540f3e70d7) - ☁️ Azure Document Intelligence model selection was added, allowing administrators to specify which model to use for document processing via the "DOCUMENT\_INTELLIGENCE\_MODEL" environment variable or admin UI setting, with "prebuilt-layout" as the default. [#&#8203;19692](https://github.com/open-webui/open-webui/pull/19692), [Docs:#&#8203;872](https://github.com/open-webui/docs/pull/872) - 🚀 Milvus multitenancy vector database performance was improved by removing manual flush calls after upsert operations, eliminating rate limit errors and reducing load on etcd and MinIO/S3 storage by allowing Milvus to manage segment persistence automatically via its WAL and auto-flush policies. [#&#8203;19680](https://github.com/open-webui/open-webui/pull/19680) - ✨ Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌍 Translations for German, French, Portuguese (Brazil), Catalan, Simplified Chinese, and Traditional Chinese were enhanced and expanded. ##### Fixed - 🔄 Tool call response token duplication was fixed by removing redundant message history additions in non-native function calling mode, resolving an issue where tool results were included twice in the context and causing 2x token consumption. [#&#8203;19656](https://github.com/open-webui/open-webui/issues/19656), [Commit](https://github.com/open-webui/open-webui/commit/52ccab8) - 🛡️ Web search domain filtering was corrected to properly block results when any resolved hostname or IP address matches a blocked domain, preventing blocked sites from appearing in search results due to permissive hostname resolution logic that previously allowed results through if any single resolved address passed the filter. [#&#8203;19670](https://github.com/open-webui/open-webui/pull/19670), [#&#8203;19669](https://github.com/open-webui/open-webui/issues/19669) - 🧠 Custom models based on Ollama or OpenAI now properly inherit the connection type from their base model, ensuring they appear correctly in the "Local" or "External" model selection tabs instead of only appearing under "All". [#&#8203;19183](https://github.com/open-webui/open-webui/issues/19183), [Commit](https://github.com/open-webui/open-webui/commit/39f7575) - 🐍 SentenceTransformers embedding initialization was fixed by updating the transformers dependency to version 4.57.3, resolving a regression in v0.6.40 where document ingestion failed with "'NoneType' object has no attribute 'encode'" errors due to a bug in transformers 4.57.2. [#&#8203;19512](https://github.com/open-webui/open-webui/issues/19512), [#&#8203;19513](https://github.com/open-webui/open-webui/pull/19513) - 📈 Active user count accuracy was significantly improved by replacing the socket-based USER\_POOL tracking with a database-backed heartbeat mechanism, resolving long-standing issues where Redis deployments displayed inflated user counts due to stale sessions never being cleaned up on disconnect. [#&#8203;16074](https://github.com/open-webui/open-webui/discussions/16074), [Commit](https://github.com/open-webui/open-webui/commit/70948f8803e417459d5203839f8077fdbfbbb213) - 👥 Default group assignment now applies consistently across all user registration methods including OAuth/SSO, LDAP, and admin-created users, fixing an issue where the "DEFAULT\_GROUP\_ID" setting was only being applied to users who signed up via the email/password signup form. [#&#8203;19685](https://github.com/open-webui/open-webui/pull/19685) - 🔦 Model list filtering in workspaces was corrected to properly include models shared with user groups, ensuring members can view models they have write access to through group permissions. [#&#8203;19461](https://github.com/open-webui/open-webui/issues/19461), [Commit](https://github.com/open-webui/open-webui/commit/69722ba973768a5f689f2e2351bf583a8db9bba8) - 🖼️ User profile image display in preview contexts was fixed by resolving a Pydantic validation error that prevented proper rendering. [Commit](https://github.com/open-webui/open-webui/commit/c7eb7136893b0ddfdc5d55ffc7a05bd84a00f5d6) - 🔒 Redis TLS connection failures were resolved by updating the python-socketio dependency to version 5.15.0, restoring support for the "rediss\://" URL schema. [#&#8203;19480](https://github.com/open-webui/open-webui/issues/19480), [#&#8203;19488](https://github.com/open-webui/open-webui/pull/19488) - 📝 MCP tool server configuration was corrected to properly handle the "Function Name Filter List" as both string and list types, preventing AttributeError when the field is empty and ensuring backward compatibility. [#&#8203;19486](https://github.com/open-webui/open-webui/issues/19486), [Commit](https://github.com/open-webui/open-webui/commit/c5b73d71843edc024325d4a6e625ec939a747279), [Commit](https://github.com/open-webui/open-webui/commit/477097c2e42985c14892301d0127314629d07df1) - 📎 Web page attachment failures causing TypeError on metadata checks were resolved by correcting async threadpool parameter passing in vector database operations. [#&#8203;19493](https://github.com/open-webui/open-webui/issues/19493), [Commit](https://github.com/open-webui/open-webui/commit/4370dee79e19d77062c03fba81780cb3b779fca3) - 💾 Model allowlist persistence in multi-worker deployments was fixed by implementing Redis-based shared state for the internal models dictionary, ensuring configuration changes are consistently visible across all worker processes. [#&#8203;19395](https://github.com/open-webui/open-webui/issues/19395), [Commit](https://github.com/open-webui/open-webui/commit/b5e5617d7f7ad3e4eec9f15f4cc7f07cb5afc2fa) - ⏳ Chat history infinite loading was prevented by enhancing message data structure to properly track parent message relationships, resolving issues where missing parentId fields caused perpetual loading states. [#&#8203;19225](https://github.com/open-webui/open-webui/issues/19225), [Commit](https://github.com/open-webui/open-webui/commit/ff4b1b9862d15adfa15eac17d2ce066c3d8ae38f) - 🩹 Database migration robustness was improved by automatically detecting and correcting missing primary key constraints on the user table, ensuring successful schema upgrades for databases with non-standard configurations. [#&#8203;19487](https://github.com/open-webui/open-webui/discussions/19487), [Commit](https://github.com/open-webui/open-webui/commit/453ea9b9a167c0b03d86c46e6efd086bf10056ce) - 🏷️ OAuth group assignment now updates correctly on first login when users transition from admin to user role, ensuring group memberships reflect immediately when group management is enabled. [#&#8203;19475](https://github.com/open-webui/open-webui/issues/19475), [#&#8203;19476](https://github.com/open-webui/open-webui/pull/19476) - 💡 Knowledge base file tooltips now properly display the parent collection name when referencing files with the hash symbol, preventing confusion between identically-named files in different collections. [#&#8203;19491](https://github.com/open-webui/open-webui/issues/19491), [Commit](https://github.com/open-webui/open-webui/commit/3fe5a47b0ff84ac97f8e4ff56a19fa2ec065bf66) - 🔐 Knowledge base file access inconsistencies were resolved where authorized non-admin users received "Not found" or permission errors for certain files due to race conditions during upload causing mismatched collection\_name values, with file access validation now properly checking against knowledge base file associations. [#&#8203;18689](https://github.com/open-webui/open-webui/issues/18689), [#&#8203;19523](https://github.com/open-webui/open-webui/pull/19523), [Commit](https://github.com/open-webui/open-webui/commit/e301d1962e45900ababd3eabb7e9a2ad275a5761) - 📦 Knowledge API batch file addition endpoint was corrected to properly handle async operations, resolving 500 Internal Server Error responses when adding multiple files simultaneously. [#&#8203;19538](https://github.com/open-webui/open-webui/issues/19538), [Commit](https://github.com/open-webui/open-webui/commit/28659f60d94feb4f6a99bb1a5b54d7f45e5ea10f) - 🤖 Embedding model auto-update functionality was fixed to properly respect the "RAG\_EMBEDDING\_MODEL\_AUTO\_UPDATE" setting by correctly passing the flag to the model path resolver, ensuring models update as expected when the auto-update option is enabled. [#&#8203;19687](https://github.com/open-webui/open-webui/pull/19687) - 📉 API response payload sizes were dramatically reduced by removing base64-encoded profile images from most endpoints, eliminating multi-megabyte responses caused by high-resolution avatars and enabling better browser caching. [#&#8203;19519](https://github.com/open-webui/open-webui/issues/19519), [Commit](https://github.com/open-webui/open-webui/commit/384753c4c17f62a68d38af4bbcf55a21ee08e0f2) - 📞 Redundant API calls on the admin user overview page were eliminated by consolidating reactive statements, reducing four duplicate requests to a single efficient call and significantly improving page load performance. [#&#8203;19509](https://github.com/open-webui/open-webui/issues/19509), [Commit](https://github.com/open-webui/open-webui/commit/9f89cc5e9f7e1c6c9e2bc91177e08df7c79f66f9) - 🧹 Duplicate API calls on the workspace models page were eliminated by removing redundant model list fetching, reducing two identical requests to a single call and improving page responsiveness. [#&#8203;19517](https://github.com/open-webui/open-webui/issues/19517), [Commit](https://github.com/open-webui/open-webui/commit/d1bbf6be7a4d1d53fa8ad46ca4f62fc4b2e6a8cb) - 🔘 The model valves button was corrected to prevent unintended form submission by adding explicit button type attribute, ensuring it no longer triggers message sending when the input area contains text. [#&#8203;19534](https://github.com/open-webui/open-webui/pull/19534) - 🗑️ Ollama model deletion was fixed by correcting the request payload format and ensuring the model selector properly displays the placeholder option. [Commit](https://github.com/open-webui/open-webui/commit/0f3156651c64bc5af188a65fc2908bdcecf30c74) - 🎨 Image generation in temporary chats was fixed by correctly handling local chat sessions that are not persisted to the database. [Commit](https://github.com/open-webui/open-webui/commit/a7c7993bbf3a21cb7ba416525b89233cf2ad877f) - 🕵️‍♂️ Audit logging was fixed by correctly awaiting the async user authentication call, resolving failures where coroutine objects were passed instead of user data. [#&#8203;19658](https://github.com/open-webui/open-webui/pull/19658), [Commit](https://github.com/open-webui/open-webui/commit/dba86bc) - 🌙 Dark mode select dropdown styling was corrected to use proper background colors, fixing an issue where dropdown borders and hover states appeared white instead of matching the dark theme. [#&#8203;19693](https://github.com/open-webui/open-webui/pull/19693), [#&#8203;19442](https://github.com/open-webui/open-webui/issues/19442) - 🔍 Milvus vector database query filtering was fixed by correcting string quote handling in filter expressions and using the proper parameter name for queries, resolving false "duplicate content detected" errors that prevented uploading multiple files to knowledge bases. [#&#8203;19602](https://github.com/open-webui/open-webui/pull/19602), [#&#8203;18119](https://github.com/open-webui/open-webui/issues/18119), [#&#8203;16345](https://github.com/open-webui/open-webui/issues/16345), [#&#8203;17088](https://github.com/open-webui/open-webui/issues/17088), [#&#8203;18485](https://github.com/open-webui/open-webui/issues/18485) - 🆙 Milvus multitenancy vector database was updated to use query\_iterator() for improved robustness and consistency with the standard Milvus implementation, fixing the same false duplicate detection errors and improving handling of large result sets in multi-tenant deployments. [#&#8203;19695](https://github.com/open-webui/open-webui/pull/19695) ##### Changed - ⚠️ **IMPORTANT for Multi-Instance Deployments** — This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances. - 👮 Channel creation is now restricted to administrators only, with the channel add button hidden for regular users to maintain organizational control over communication channels. [Commit](https://github.com/open-webui/open-webui/commit/421aba7cd7cd708168b1f2565026c74525a67905) - ➖ The active user count indicator was removed from the bottom-left user menu in the sidebar to streamline the interface. [Commit](https://github.com/open-webui/open-webui/commit/848f3fd4d86ca66656e0ff0335773945af8d7d8d) - 🗂️ The user table was restructured with API keys migrated to a dedicated table supporting future multi-key functionality, OAuth data storage converted to a JSON structure enabling multiple identity providers per user account, and internal column types optimized from TEXT to JSON for the "info" and "settings" fields, with automatic migration preserving all existing data and associations. [#&#8203;19573](https://github.com/open-webui/open-webui/pull/19573) - 🔄 The knowledge base API was restructured to support the new file relationship model. ### [`v0.6.41`](https://github.com/open-webui/open-webui/releases/tag/v0.6.41) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.40...v0.6.41) #### \[0.6.41] - 2025-12-02 > \[!CAUTION] > ⚠️ **IMPORTANT for Multi-Instance Deployments**: This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances. ##### Added - 🚦 Sign-in rate limiting was implemented to protect against brute force attacks, limiting login attempts to 15 per 3-minute window per email address using Redis with automatic fallback to in-memory storage when Redis is unavailable. [Commit](https://github.com/open-webui/open-webui/commit/7b166370432414ce8f186747fb098e0c70fb2d6b) - 📂 Administrators can now globally disable the folders feature and control user-level folder permissions through the admin panel, enabling minimalist interface configurations for deployments that don't require workspace organization features. [#&#8203;19529](https://github.com/open-webui/open-webui/pull/19529), [#&#8203;19210](https://github.com/open-webui/open-webui/discussions/19210), [#&#8203;18459](https://github.com/open-webui/open-webui/discussions/18459), [#&#8203;18299](https://github.com/open-webui/open-webui/discussions/18299) - 👥 Group channels were introduced as a new channel type enabling membership-based collaboration spaces where users explicitly join as members rather than accessing through permissions, with support for public or private visibility, automatic member inclusion from specified user groups, member role tracking with invitation metadata, and post-creation member management allowing channel managers to add or remove members through the channel info modal. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4), [Commit](https://github.com/open-webui/open-webui/commit/3f1d9ccbf8443a2fa5278f36202bad930a216680) - 💬 Direct Message channels were introduced with a dedicated channel type selector and multi-user member selection interface, enabling private conversations between specific users without requiring full channel visibility. [Commit](https://github.com/open-webui/open-webui/commit/64b4d5d9c280b926746584aaf92b447d09deb386) - 📨 Direct Message channels now support a complete user-to-user messaging system with member-based access control, automatic deduplication for one-on-one conversations, optional channel naming, and distinct visual presentation using participant avatars instead of channel icons. [Commit](https://github.com/open-webui/open-webui/commit/acccb9afdd557274d6296c70258bb897bbb6652f) - 🙈 Users can now hide Direct Message channels from their sidebar while preserving message history, with automatic reactivation when new messages arrive from other participants, providing a cleaner interface for managing active conversations. [Commit](https://github.com/open-webui/open-webui/commit/acccb9afdd557274d6296c70258bb897bbb6652f) - ☑️ A comprehensive user selection component was added to the channel creation modal, featuring search functionality, sortable user lists, pagination support, and multi-select checkboxes for building Direct Message participant lists. [Commit](https://github.com/open-webui/open-webui/commit/acccb9afdd557274d6296c70258bb897bbb6652f) - 🔴 Channel unread message count tracking was implemented with visual badge indicators in the sidebar, automatically updating counts in real-time and marking messages as read when users view channels, with join/leave functionality to manage membership status. [Commit](https://github.com/open-webui/open-webui/commit/64b4d5d9c280b926746584aaf92b447d09deb386) - 📌 Message pinning functionality was added to channels, allowing users to pin important messages for easy reference with visual highlighting, a dedicated pinned messages modal accessible from the navbar, and complete backend support for tracking pinned status, pin timestamp, and the user who pinned each message. [Commit](https://github.com/open-webui/open-webui/commit/64b4d5d9c280b926746584aaf92b447d09deb386), [Commit](https://github.com/open-webui/open-webui/commit/aae2fce17355419d9c29f8100409108037895201) - 🟢 Direct Message channels now display an active status indicator for one-on-one conversations, showing a green dot when the other participant is currently online or a gray dot when offline. [Commit](https://github.com/open-webui/open-webui/commit/4b6773885cd7527c5a56b963781dac5e95105eec), [Commit](https://github.com/open-webui/open-webui/commit/39645102d14f34e71b34e5ddce0625790be33f6f) - 🆔 Users can now start Direct Message conversations directly from user profile previews by clicking the "Message" button, enabling quick access to private messaging without navigating away from the current channel. [Commit](https://github.com/open-webui/open-webui/commit/a0826ec9fedb56320532616d568fa59dda831d4e) - ⚡ Channel messages now appear instantly when sent using optimistic UI rendering, displaying with a pending state while the server confirms delivery, providing a more responsive messaging experience. [Commit](https://github.com/open-webui/open-webui/commit/25994dd3da90600401f53596d4e4fb067c1b8eaa) - 👍 Channel message reactions now display the names of users who reacted when hovering over the emoji, showing up to three names with a count for additional reactors. [Commit](https://github.com/open-webui/open-webui/commit/05e79bdd0c7af70b631e958924e3656db1013b80) - 🛠️ Channel creators can now edit and delete their own group and DM channels without requiring administrator privileges, enabling users to manage the channels they create independently. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4) - 🔌 A new API endpoint was added to directly get or create a Direct Message channel with a specific user by their ID, streamlining programmatic DM channel creation for integrations and frontend workflows. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4) - 💭 Users can now set a custom status with an emoji and message that displays in profile previews, the sidebar user menu, and Direct Message channel items in the sidebar, with the ability to clear status at any time, providing visibility into availability or current focus similar to team communication platforms. [Commit](https://github.com/open-webui/open-webui/commit/51621ba91a982e52da168ce823abffd11ad3e4fa), [Commit](https://github.com/open-webui/open-webui/commit/f5e8d4d5a004115489c35725408b057e24dfe318) - 📤 A group export API endpoint was added, enabling administrators to export complete group data including member lists for backup and migration purposes. [Commit](https://github.com/open-webui/open-webui/commit/09b6ea38c579659f8ca43ae5ea3746df3ac561ad) - 📡 A new API endpoint was added to retrieve all users belonging to a specific group, enabling programmatic access to group membership information for administrative workflows. [Commit](https://github.com/open-webui/open-webui/commit/01868e856a10f474f74fbd1b4425dafdf949222f) - 👁️ The admin user list now displays an active status indicator next to each user, showing a visual green dot for users who have been active within the last three minutes. [Commit](https://github.com/open-webui/open-webui/commit/1b095d12ff2465b83afa94af89ded9593f8a8655) - 🔑 The admin user edit modal now displays OAuth identity information with a per-provider breakdown, showing each linked identity provider and its associated subject identifier separately. [#&#8203;19573](https://github.com/open-webui/open-webui/pull/19573) - 🧩 OAuth role claim parsing now respects the "OAUTH\_ROLES\_SEPARATOR" configuration, enabling proper parsing of roles returned as comma-separated strings and providing consistent behavior with group claim handling. [#&#8203;19514](https://github.com/open-webui/open-webui/pull/19514) - 🎛️ Channel feature access can now be controlled through both the "USER\_PERMISSIONS\_FEATURES\_CHANNELS" environment variable and group permission toggles in the admin panel, allowing administrators to restrict channel functionality for specific users or groups while defaulting to enabled for all users. [Commit](https://github.com/open-webui/open-webui/commit/f589b7c1895a6a77166c047891acfa21bc0936c4) - 🎨 The model editor interface was refined with access control settings moved to a dedicated modal, group member counts now displayed when configuring permissions, reorganized layout with improved visual hierarchy, and redesigned prompt suggestions cards with tooltips for field guidance. [Commit](https://github.com/open-webui/open-webui/commit/e65d92fc6f49da5ca059e1c65a729e7973354b99), [Commit](https://github.com/open-webui/open-webui/commit/9d39b9b42c653ee2acf2674b2df343ecbceb4954) - 🏗️ Knowledge base file management was rebuilt with a dedicated database table replacing the previous JSON array storage, enabling pagination support for large knowledge bases, significantly faster file listing performance, and more reliable file-knowledge base relationship tracking. [Commit](https://github.com/open-webui/open-webui/commit/d19023288e2ca40f86e2dc3fd9f230540f3e70d7) - ☁️ Azure Document Intelligence model selection was added, allowing administrators to specify which model to use for document processing via the "DOCUMENT\_INTELLIGENCE\_MODEL" environment variable or admin UI setting, with "prebuilt-layout" as the default. [#&#8203;19692](https://github.com/open-webui/open-webui/pull/19692), [Docs:#&#8203;872](https://github.com/open-webui/docs/pull/872) - 🚀 Milvus multitenancy vector database performance was improved by removing manual flush calls after upsert operations, eliminating rate limit errors and reducing load on etcd and MinIO/S3 storage by allowing Milvus to manage segment persistence automatically via its WAL and auto-flush policies. [#&#8203;19680](https://github.com/open-webui/open-webui/pull/19680) - ✨ Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌍 Translations for German, French, Portuguese (Brazil), Catalan, Simplified Chinese, and Traditional Chinese were enhanced and expanded. ##### Fixed - 🔄 Tool call response token duplication was fixed by removing redundant message history additions in non-native function calling mode, resolving an issue where tool results were included twice in the context and causing 2x token consumption. [#&#8203;19656](https://github.com/open-webui/open-webui/issues/19656), [Commit](https://github.com/open-webui/open-webui/commit/52ccab8) - 🛡️ Web search domain filtering was corrected to properly block results when any resolved hostname or IP address matches a blocked domain, preventing blocked sites from appearing in search results due to permissive hostname resolution logic that previously allowed results through if any single resolved address passed the filter. [#&#8203;19670](https://github.com/open-webui/open-webui/pull/19670), [#&#8203;19669](https://github.com/open-webui/open-webui/issues/19669) - 🧠 Custom models based on Ollama or OpenAI now properly inherit the connection type from their base model, ensuring they appear correctly in the "Local" or "External" model selection tabs instead of only appearing under "All". [#&#8203;19183](https://github.com/open-webui/open-webui/issues/19183), [Commit](https://github.com/open-webui/open-webui/commit/39f7575) - 🐍 SentenceTransformers embedding initialization was fixed by updating the transformers dependency to version 4.57.3, resolving a regression in v0.6.40 where document ingestion failed with "'NoneType' object has no attribute 'encode'" errors due to a bug in transformers 4.57.2. [#&#8203;19512](https://github.com/open-webui/open-webui/issues/19512), [#&#8203;19513](https://github.com/open-webui/open-webui/pull/19513) - 📈 Active user count accuracy was significantly improved by replacing the socket-based USER\_POOL tracking with a database-backed heartbeat mechanism, resolving long-standing issues where Redis deployments displayed inflated user counts due to stale sessions never being cleaned up on disconnect. [#&#8203;16074](https://github.com/open-webui/open-webui/discussions/16074), [Commit](https://github.com/open-webui/open-webui/commit/70948f8803e417459d5203839f8077fdbfbbb213) - 👥 Default group assignment now applies consistently across all user registration methods including OAuth/SSO, LDAP, and admin-created users, fixing an issue where the "DEFAULT\_GROUP\_ID" setting was only being applied to users who signed up via the email/password signup form. [#&#8203;19685](https://github.com/open-webui/open-webui/pull/19685) - 🔦 Model list filtering in workspaces was corrected to properly include models shared with user groups, ensuring members can view models they have write access to through group permissions. [#&#8203;19461](https://github.com/open-webui/open-webui/issues/19461), [Commit](https://github.com/open-webui/open-webui/commit/69722ba973768a5f689f2e2351bf583a8db9bba8) - 🖼️ User profile image display in preview contexts was fixed by resolving a Pydantic validation error that prevented proper rendering. [Commit](https://github.com/open-webui/open-webui/commit/c7eb7136893b0ddfdc5d55ffc7a05bd84a00f5d6) - 🔒 Redis TLS connection failures were resolved by updating the python-socketio dependency to version 5.15.0, restoring support for the "rediss\://" URL schema. [#&#8203;19480](https://github.com/open-webui/open-webui/issues/19480), [#&#8203;19488](https://github.com/open-webui/open-webui/pull/19488) - 📝 MCP tool server configuration was corrected to properly handle the "Function Name Filter List" as both string and list types, preventing AttributeError when the field is empty and ensuring backward compatibility. [#&#8203;19486](https://github.com/open-webui/open-webui/issues/19486), [Commit](https://github.com/open-webui/open-webui/commit/c5b73d71843edc024325d4a6e625ec939a747279), [Commit](https://github.com/open-webui/open-webui/commit/477097c2e42985c14892301d0127314629d07df1) - 📎 Web page attachment failures causing TypeError on metadata checks were resolved by correcting async threadpool parameter passing in vector database operations. [#&#8203;19493](https://github.com/open-webui/open-webui/issues/19493), [Commit](https://github.com/open-webui/open-webui/commit/4370dee79e19d77062c03fba81780cb3b779fca3) - 💾 Model allowlist persistence in multi-worker deployments was fixed by implementing Redis-based shared state for the internal models dictionary, ensuring configuration changes are consistently visible across all worker processes. [#&#8203;19395](https://github.com/open-webui/open-webui/issues/19395), [Commit](https://github.com/open-webui/open-webui/commit/b5e5617d7f7ad3e4eec9f15f4cc7f07cb5afc2fa) - ⏳ Chat history infinite loading was prevented by enhancing message data structure to properly track parent message relationships, resolving issues where missing parentId fields caused perpetual loading states. [#&#8203;19225](https://github.com/open-webui/open-webui/issues/19225), [Commit](https://github.com/open-webui/open-webui/commit/ff4b1b9862d15adfa15eac17d2ce066c3d8ae38f) - 🩹 Database migration robustness was improved by automatically detecting and correcting missing primary key constraints on the user table, ensuring successful schema upgrades for databases with non-standard configurations. [#&#8203;19487](https://github.com/open-webui/open-webui/discussions/19487), [Commit](https://github.com/open-webui/open-webui/commit/453ea9b9a167c0b03d86c46e6efd086bf10056ce) - 🏷️ OAuth group assignment now updates correctly on first login when users transition from admin to user role, ensuring group memberships reflect immediately when group management is enabled. [#&#8203;19475](https://github.com/open-webui/open-webui/issues/19475), [#&#8203;19476](https://github.com/open-webui/open-webui/pull/19476) - 💡 Knowledge base file tooltips now properly display the parent collection name when referencing files with the hash symbol, preventing confusion between identically-named files in different collections. [#&#8203;19491](https://github.com/open-webui/open-webui/issues/19491), [Commit](https://github.com/open-webui/open-webui/commit/3fe5a47b0ff84ac97f8e4ff56a19fa2ec065bf66) - 🔐 Knowledge base file access inconsistencies were resolved where authorized non-admin users received "Not found" or permission errors for certain files due to race conditions during upload causing mismatched collection\_name values, with file access validation now properly checking against knowledge base file associations. [#&#8203;18689](https://github.com/open-webui/open-webui/issues/18689), [#&#8203;19523](https://github.com/open-webui/open-webui/pull/19523), [Commit](https://github.com/open-webui/open-webui/commit/e301d1962e45900ababd3eabb7e9a2ad275a5761) - 📦 Knowledge API batch file addition endpoint was corrected to properly handle async operations, resolving 500 Internal Server Error responses when adding multiple files simultaneously. [#&#8203;19538](https://github.com/open-webui/open-webui/issues/19538), [Commit](https://github.com/open-webui/open-webui/commit/28659f60d94feb4f6a99bb1a5b54d7f45e5ea10f) - 🤖 Embedding model auto-update functionality was fixed to properly respect the "RAG\_EMBEDDING\_MODEL\_AUTO\_UPDATE" setting by correctly passing the flag to the model path resolver, ensuring models update as expected when the auto-update option is enabled. [#&#8203;19687](https://github.com/open-webui/open-webui/pull/19687) - 📉 API response payload sizes were dramatically reduced by removing base64-encoded profile images from most endpoints, eliminating multi-megabyte responses caused by high-resolution avatars and enabling better browser caching. [#&#8203;19519](https://github.com/open-webui/open-webui/issues/19519), [Commit](https://github.com/open-webui/open-webui/commit/384753c4c17f62a68d38af4bbcf55a21ee08e0f2) - 📞 Redundant API calls on the admin user overview page were eliminated by consolidating reactive statements, reducing four duplicate requests to a single efficient call and significantly improving page load performance. [#&#8203;19509](https://github.com/open-webui/open-webui/issues/19509), [Commit](https://github.com/open-webui/open-webui/commit/9f89cc5e9f7e1c6c9e2bc91177e08df7c79f66f9) - 🧹 Duplicate API calls on the workspace models page were eliminated by removing redundant model list fetching, reducing two identical requests to a single call and improving page responsiveness. [#&#8203;19517](https://github.com/open-webui/open-webui/issues/19517), [Commit](https://github.com/open-webui/open-webui/commit/d1bbf6be7a4d1d53fa8ad46ca4f62fc4b2e6a8cb) - 🔘 The model valves button was corrected to prevent unintended form submission by adding explicit button type attribute, ensuring it no longer triggers message sending when the input area contains text. [#&#8203;19534](https://github.com/open-webui/open-webui/pull/19534) - 🗑️ Ollama model deletion was fixed by correcting the request payload format and ensuring the model selector properly displays the placeholder option. [Commit](https://github.com/open-webui/open-webui/commit/0f3156651c64bc5af188a65fc2908bdcecf30c74) - 🎨 Image generation in temporary chats was fixed by correctly handling local chat sessions that are not persisted to the database. [Commit](https://github.com/open-webui/open-webui/commit/a7c7993bbf3a21cb7ba416525b89233cf2ad877f) - 🕵️‍♂️ Audit logging was fixed by correctly awaiting the async user authentication call, resolving failures where coroutine objects were passed instead of user data. [#&#8203;19658](https://github.com/open-webui/open-webui/pull/19658), [Commit](https://github.com/open-webui/open-webui/commit/dba86bc) - 🌙 Dark mode select dropdown styling was corrected to use proper background colors, fixing an issue where dropdown borders and hover states appeared white instead of matching the dark theme. [#&#8203;19693](https://github.com/open-webui/open-webui/pull/19693), [#&#8203;19442](https://github.com/open-webui/open-webui/issues/19442) - 🔍 Milvus vector database query filtering was fixed by correcting string quote handling in filter expressions and using the proper parameter name for queries, resolving false "duplicate content detected" errors that prevented uploading multiple files to knowledge bases. [#&#8203;19602](https://github.com/open-webui/open-webui/pull/19602), [#&#8203;18119](https://github.com/open-webui/open-webui/issues/18119), [#&#8203;16345](https://github.com/open-webui/open-webui/issues/16345), [#&#8203;17088](https://github.com/open-webui/open-webui/issues/17088), [#&#8203;18485](https://github.com/open-webui/open-webui/issues/18485) - 🆙 Milvus multitenancy vector database was updated to use query\_iterator() for improved robustness and consistency with the standard Milvus implementation, fixing the same false duplicate detection errors and improving handling of large result sets in multi-tenant deployments. [#&#8203;19695](https://github.com/open-webui/open-webui/pull/19695) ##### Changed - ⚠️ **IMPORTANT for Multi-Instance Deployments** — This release includes database schema changes; multi-worker, multi-server, or load-balanced deployments must update all instances simultaneously rather than performing rolling updates, as running mixed versions will cause application failures due to schema incompatibility between old and new instances. - 👮 Channel creation is now restricted to administrators only, with the channel add button hidden for regular users to maintain organizational control over communication channels. [Commit](https://github.com/open-webui/open-webui/commit/421aba7cd7cd708168b1f2565026c74525a67905) - ➖ The active user count indicator was removed from the bottom-left user menu in the sidebar to streamline the interface. [Commit](https://github.com/open-webui/open-webui/commit/848f3fd4d86ca66656e0ff0335773945af8d7d8d) - 🗂️ The user table was restructured with API keys migrated to a dedicated table supporting future multi-key functionality, OAuth data storage converted to a JSON structure enabling multiple identity providers per user account, and internal column types optimized from TEXT to JSON for the "info" and "settings" fields, with automatic migration preserving all existing data and associations. [#&#8203;19573](https://github.com/open-webui/open-webui/pull/19573) - 🔄 The knowledge base API was restructured to support the new file relationship model. > \[!TIP]\ > **Looking for an [Enterprise Plan](https://docs.openwebui.com/enterprise)?** – **[Speak with Our Sales Team Today!](mailto:sales@openwebui.com)** > > Get **enhanced capabilities**, including **custom theming and branding**, **Service Level Agreement (SLA) support**, and **more!** 👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;ShirasawaSama](https://github.com/ShirasawaSama), [@&#8203;tobiasge](https://github.com/tobiasge), [@&#8203;RomualdYT](https://github.com/RomualdYT), [@&#8203;joaoback](https://github.com/joaoback), [@&#8203;kjpoccia](https://github.com/kjpoccia), [@&#8203;gerhardj-b](https://github.com/gerhardj-b), [@&#8203;aleixdorca](https://github.com/aleixdorca), [@&#8203;acwoo97](https://github.com/acwoo97), [@&#8203;matthew-kusz](https://github.com/matthew-kusz), [@&#8203;stevessr](https://github.com/stevessr), [@&#8203;HennieLP](https://github.com/HennieLP) #### Sponsors 🙌 🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!) [@&#8203;amd](https://github.com/amd), [@&#8203;roosi-gmbh](https://github.com/roosi-gmbh), [@&#8203;rndmcnlly](https://github.com/rndmcnlly), [@&#8203;feddersen-group](https://github.com/feddersen-group), [@&#8203;SRKConsulting](https://github.com/SRKConsulting), [@&#8203;mushmax](https://github.com/mushmax), [@&#8203;icanbwell](https://github.com/icanbwell), [@&#8203;loitragg](https://github.com/loitragg), [@&#8203;haka4githu6](https://github.com/haka4githu6), [@&#8203;silenceroom](https://github.com/silenceroom), [@&#8203;GenieDev101](https://github.com/GenieDev101), [@&#8203;CubicleGangster](https://github.com/CubicleGangster), [@&#8203;TOWaB](https://github.com/TOWaB), [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;comet-ml](https://github.com/comet-ml), [@&#8203;FominVO](https://github.com/FominVO), [@&#8203;catalyst-net-nz](https://github.com/catalyst-net-nz), [@&#8203;JrdnHans](https://github.com/JrdnHans), [@&#8203;hkosm](https://github.com/hkosm), [@&#8203;VeroFess](https://github.com/VeroFess), [@&#8203;joaoback](https://github.com/joaoback), [@&#8203;walsermedia](https://github.com/walsermedia), [@&#8203;LuxTronic](https://github.com/LuxTronic) ### [`v0.6.40`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0640---2025-11-25) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.40...v0.6.40) ##### Fixed - 🗄️ A critical PostgreSQL user listing performance issue was resolved by removing a redundant count operation that caused severe database slowdowns and potential timeouts when viewing user lists in admin panels. ### [`v0.6.40`](https://github.com/open-webui/open-webui/releases/tag/v0.6.40) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.39...v0.6.40) #### \[0.6.40] - 2025-11-25 ##### Fixed - 🗄️ A critical PostgreSQL user listing performance issue was resolved by removing a redundant count operation that caused severe database slowdowns and potential timeouts when viewing user lists in admin panels. ### [`v0.6.39`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0639---2025-11-25) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.39...v0.6.39) ##### Added - 💬 A user list modal was added to channels, displaying all users with access and featuring search, sorting, and pagination capabilities. [Commit](https://github.com/open-webui/open-webui/commit/c0e120353824be00a2ef63cbde8be5d625bd6fd0) - 💬 Channel navigation now displays the total number of users with access to the channel. [Commit](https://github.com/open-webui/open-webui/commit/3b5710d0cd445cf86423187f5ee7c40472a0df0b) - 🔌 Tool servers and MCP connections now support function name filtering, allowing administrators to selectively enable or block specific functions using allow/block lists. [Commit](https://github.com/open-webui/open-webui/commit/743199f2d097ae1458381bce450d9025a0ab3f3d) - ⚡ A toggle to disable parallel embedding processing was added via "ENABLE\_ASYNC\_EMBEDDING", allowing sequential processing for rate-limited or resource-constrained local embedding setups. [#&#8203;19444](https://github.com/open-webui/open-webui/pull/19444) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Localization improvements were made for German (de-DE) and Portuguese (Brazil) translations. ##### Fixed - 📝 Inline citations now render correctly within markdown lists and nested elements instead of displaying as "undefined" values. [#&#8203;19452](https://github.com/open-webui/open-webui/issues/19452) - 👥 Group member selection now works correctly without randomly selecting other users or causing the user list to jump around. [#&#8203;19426](https://github.com/open-webui/open-webui/issues/19426) - 👥 Admin panel user list now displays the correct total user count and properly paginates 30 items per page after fixing database query issues with group member joins. [#&#8203;19429](https://github.com/open-webui/open-webui/issues/19429) - 🔍 Knowledge base reindexing now works correctly after resolving async execution chain issues by implementing threadpool workers for embedding operations. [#&#8203;19434](https://github.com/open-webui/open-webui/pull/19434) - 🖼️ OpenAI image generation now works correctly after fixing a connection adapter error caused by incorrect URL formatting. [#&#8203;19435](https://github.com/open-webui/open-webui/pull/19435) ##### Changed - 🔧 BREAKING: Docling configuration has been consolidated from individual environment variables into a single "DOCLING\_PARAMS" JSON configuration and now supports API key authentication via "DOCLING\_API\_KEY", requiring users to migrate existing Docling settings to the new format. [#&#8203;16841](https://github.com/open-webui/open-webui/issues/16841), [#&#8203;19427](https://github.com/open-webui/open-webui/pull/19427) - 🔧 The environment variable "REPLACE\_IMAGE\_URLS\_IN\_CHAT\_RESPONSE" has been renamed to "ENABLE\_CHAT\_RESPONSE\_BASE64\_IMAGE\_URL\_CONVERSION" for naming consistency. ### [`v0.6.39`](https://github.com/open-webui/open-webui/releases/tag/v0.6.39) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.38...v0.6.39) #### \[0.6.39] - 2025-11-25 ##### Added - 💬 A user list modal was added to channels, displaying all users with access and featuring search, sorting, and pagination capabilities. [Commit](https://github.com/open-webui/open-webui/commit/c0e120353824be00a2ef63cbde8be5d625bd6fd0) - 💬 Channel navigation now displays the total number of users with access to the channel. [Commit](https://github.com/open-webui/open-webui/commit/3b5710d0cd445cf86423187f5ee7c40472a0df0b) - 🔌 Tool servers and MCP connections now support function name filtering, allowing administrators to selectively enable or block specific functions using allow/block lists. [Commit](https://github.com/open-webui/open-webui/commit/743199f2d097ae1458381bce450d9025a0ab3f3d) - ⚡ A toggle to disable parallel embedding processing was added via "ENABLE\_ASYNC\_EMBEDDING", allowing sequential processing for rate-limited or resource-constrained local embedding setups. [#&#8203;19444](https://github.com/open-webui/open-webui/pull/19444) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Localization improvements were made for German (de-DE) and Portuguese (Brazil) translations. ##### Fixed - 📝 Inline citations now render correctly within markdown lists and nested elements instead of displaying as "undefined" values. [#&#8203;19452](https://github.com/open-webui/open-webui/issues/19452) - 👥 Group member selection now works correctly without randomly selecting other users or causing the user list to jump around. [#&#8203;19426](https://github.com/open-webui/open-webui/issues/19426) - 👥 Admin panel user list now displays the correct total user count and properly paginates 30 items per page after fixing database query issues with group member joins. [#&#8203;19429](https://github.com/open-webui/open-webui/issues/19429) - 🔍 Knowledge base reindexing now works correctly after resolving async execution chain issues by implementing threadpool workers for embedding operations. [#&#8203;19434](https://github.com/open-webui/open-webui/pull/19434) - 🖼️ OpenAI image generation now works correctly after fixing a connection adapter error caused by incorrect URL formatting. [#&#8203;19435](https://github.com/open-webui/open-webui/pull/19435) ##### Changed - 🔧 BREAKING: Docling configuration has been consolidated from individual environment variables into a single "DOCLING\_PARAMS" JSON configuration and now supports API key authentication via "DOCLING\_API\_KEY", requiring users to migrate existing Docling settings to the new format. [#&#8203;16841](https://github.com/open-webui/open-webui/issues/16841), [#&#8203;19427](https://github.com/open-webui/open-webui/pull/19427) - 🔧 The environment variable "REPLACE\_IMAGE\_URLS\_IN\_CHAT\_RESPONSE" has been renamed to "ENABLE\_CHAT\_RESPONSE\_BASE64\_IMAGE\_URL\_CONVERSION" for naming consistency. ### [`v0.6.38`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0638---2025-11-24) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.38...v0.6.38) ##### Fixed - 🔍 Hybrid search now works reliably after recent changes. - 🛠️ Tool server saving now handles errors gracefully, preventing failed saves from impacting the UI. - 🔐 SSO/OIDC code fixed to improve login reliability and better handle edge cases. ### [`v0.6.38`](https://github.com/open-webui/open-webui/releases/tag/v0.6.38) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.37...v0.6.38) #### \[0.6.38] - 2025-11-24 ##### Fixed - 🔍 Hybrid search now works reliably after recent changes. - 🛠️ Tool server saving now handles errors gracefully, preventing failed saves from impacting the UI. - 🔐 SSO/OIDC code fixed to improve login reliability and better handle edge cases. ### [`v0.6.37`](https://github.com/open-webui/open-webui/releases/tag/v0.6.37) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.37...v0.6.37) #### \[0.6.37] - 2025-11-24 ##### Added - 🔐 Granular sharing permissions are now available with two-tiered control separating group sharing from public sharing, allowing administrators to independently configure whether users can share workspace items with groups or make them publicly accessible, with separate permission toggles for models, knowledge bases, prompts, tools, and notes, configurable via "USER\_PERMISSIONS\_WORKSPACE\_MODELS\_ALLOW\_SHARING", "USER\_PERMISSIONS\_WORKSPACE\_MODELS\_ALLOW\_PUBLIC\_SHARING", and corresponding environment variables for other workspace item types, while groups can now be configured to opt-out of sharing via the "Allow Group Sharing" setting. [Commit](https://github.com/open-webui/open-webui/commit/7be750bcbb40da91912a0a66b7ab791effdcc3b6), [Commit](https://github.com/open-webui/open-webui/commit/f69e37a8507d6d57382d6670641b367f3127f90a) - 🔐 Password policy enforcement is now available with configurable validation rules, allowing administrators to require specific password complexity requirements via "ENABLE\_PASSWORD\_VALIDATION" and "PASSWORD\_VALIDATION\_REGEX\_PATTERN" environment variables, with default pattern requiring minimum 8 characters including uppercase, lowercase, digit, and special character. [#&#8203;17794](https://github.com/open-webui/open-webui/pull/17794) - 🔐 Granular import and export permissions are now available for workspace items, introducing six separate permission toggles for models, prompts, and tools that are disabled by default for enhanced security. [#&#8203;19242](https://github.com/open-webui/open-webui/pull/19242) - 👥 Default group assignment is now available for new users, allowing administrators to automatically assign newly registered users to a specified group for streamlined access control to models, prompts, and tools, particularly useful for organizations with group-based model access policies. [#&#8203;19325](https://github.com/open-webui/open-webui/pull/19325), [#&#8203;17842](https://github.com/open-webui/open-webui/issues/17842) - 🔒 Password-based authentication can now be fully disabled via "ENABLE\_PASSWORD\_AUTH" environment variable, enforcing SSO-only authentication and preventing password login fallback when SSO is configured. [#&#8203;19113](https://github.com/open-webui/open-webui/pull/19113) - 🖼️ Large stream chunk handling was implemented to support models that generate images directly in their output responses, with configurable buffer size via "CHAT\_STREAM\_RESPONSE\_CHUNK\_MAX\_BUFFER\_SIZE" environment variable, resolving compatibility issues with models like Gemini 2.5 Flash Image. [#&#8203;18884](https://github.com/open-webui/open-webui/pull/18884), [#&#8203;17626](https://github.com/open-webui/open-webui/issues/17626) - 🖼️ Streaming response middleware now handles images in delta updates with automatic base64 conversion, enabling proper display of images from models using the "choices\[0].delta.images.image\_url" format such as Gemini 2.5 Flash Image Preview on OpenRouter. [#&#8203;19073](https://github.com/open-webui/open-webui/pull/19073), [#&#8203;19019](https://github.com/open-webui/open-webui/issues/19019) - 📈 Model list API performance was optimized by pre-fetching user group memberships and removing profile image URLs from response payloads, significantly reducing both database queries and payload size for instances with large model lists, with profile images now served dynamically via dedicated endpoints. [#&#8203;19097](https://github.com/open-webui/open-webui/pull/19097), [#&#8203;18950](https://github.com/open-webui/open-webui/issues/18950) - ⏩ Batch file processing performance was improved by reducing database queries by 67% while ensuring data consistency between vector and relational databases. [#&#8203;18953](https://github.com/open-webui/open-webui/pull/18953) - 🚀 Chat import performance was dramatically improved by replacing individual per-chat API requests with a bulk import endpoint, reducing import time by up to 95% for large chat collections and providing user feedback via toast notifications displaying the number of successfully imported chats. [#&#8203;17861](https://github.com/open-webui/open-webui/pull/17861) - ⚡ Socket event broadcasting performance was optimized by implementing user-specific rooms, significantly reducing server overhead particularly for users with multiple concurrent sessions. [#&#8203;18996](https://github.com/open-webui/open-webui/pull/18996) - 🗄️ Weaviate is now supported as a vector database option, providing an additional choice for RAG document storage alongside existing ChromaDB, Milvus, Qdrant, and OpenSearch integrations. [#&#8203;14747](https://github.com/open-webui/open-webui/pull/14747) - 🗄️ PostgreSQL pgvector now supports HNSW index types and large dimensional embeddings exceeding 2000 dimensions through automatic halfvec type selection, with configurable index methods via "PGVECTOR\_INDEX\_METHOD", "PGVECTOR\_HNSW\_M", "PGVECTOR\_HNSW\_EF\_CONSTRUCTION", and "PGVECTOR\_IVFFLAT\_LISTS" environment variables. [#&#8203;19158](https://github.com/open-webui/open-webui/pull/19158), [#&#8203;16890](https://github.com/open-webui/open-webui/issues/16890) - 🔍 Azure AI Search is now supported as a web search provider, enabling integration with Azure's cognitive search services via "AZURE\_AI\_SEARCH\_API\_KEY", "AZURE\_AI\_SEARCH\_ENDPOINT", and "AZURE\_AI\_SEARCH\_INDEX\_NAME" configuration. [#&#8203;19104](https://github.com/open-webui/open-webui/pull/19104) - ⚡ External embedding generation now processes API requests in parallel instead of sequential batches, reducing document processing time by 10-50x when using OpenAI, Azure OpenAI, or Ollama embedding providers, with large PDFs now processing in seconds instead of minutes. [#&#8203;19296](https://github.com/open-webui/open-webui/pull/19296) - 💨 Base64 image conversion is now available for markdown content in chat responses, automatically uploading embedded images exceeding 1KB and replacing them with file URLs to reduce payload size and resource consumption, configurable via "REPLACE\_IMAGE\_URLS\_IN\_CHAT\_RESPONSE" environment variable. [#&#8203;19076](https://github.com/open-webui/open-webui/pull/19076) - 🎨 OpenAI image generation now supports additional API parameters including quality settings for GPT Image 1, configurable via "IMAGES\_OPENAI\_API\_PARAMS" environment variable or through the admin interface, enabling cost-effective image generation with low, medium, or high quality options. [#&#8203;19228](https://github.com/open-webui/open-webui/issues/19228) - 🖼️ Image editing can now be independently enabled or disabled via admin settings, allowing administrators to control whether sequential image prompts trigger image editing or new image generation, configurable via "ENABLE\_IMAGE\_EDIT" environment variable. [#&#8203;19284](https://github.com/open-webui/open-webui/issues/19284) - 🔐 SSRF protection was implemented with a configurable URL blocklist that prevents access to cloud metadata endpoints and private networks, with default protections for AWS, Google Cloud, Azure, and Alibaba Cloud metadata services, customizable via "WEB\_FETCH\_FILTER\_LIST" environment variable. [#&#8203;19201](https://github.com/open-webui/open-webui/pull/19201) - ⚡ Workspace models page now supports server-side pagination dramatically improving load times and usability for instances with large numbers of workspace models. - 🔍 Hybrid search now indexes file metadata including filenames, titles, headings, sources, and snippets alongside document content, enabling keyword queries to surface documents where search terms appear only in metadata, configurable via "ENABLE\_RAG\_HYBRID\_SEARCH\_ENRICHED\_TEXTS" environment variable. [#&#8203;19095](https://github.com/open-webui/open-webui/pull/19095) - 📂 Knowledge base upload page now supports folder drag-and-drop with recursive directory handling, enabling batch uploads of entire directory structures instead of requiring individual file selection. [#&#8203;19320](https://github.com/open-webui/open-webui/pull/19320) - 🤖 Model cloning is now available in admin settings, allowing administrators to quickly create workspace models based on existing base models through a "Clone" option in the model dropdown menu. [#&#8203;17937](https://github.com/open-webui/open-webui/pull/17937) - 🎨 UI scale adjustment is now available in interface settings, allowing users to increase the size of the entire interface from 1.0x to 1.5x for improved accessibility and readability, particularly beneficial for users with visual impairments. [#&#8203;19186](https://github.com/open-webui/open-webui/pull/19186) - 📌 Default pinned models can now be configured by administrators for all new users, mirroring the behavior of default models where admin-configured defaults apply only to users who haven't customized their pinned models, configurable via "DEFAULT\_PINNED\_MODELS" environment variable. [#&#8203;19273](https://github.com/open-webui/open-webui/pull/19273) - 🎙️ Text-to-Speech and Speech-to-Text services now receive user information headers when "ENABLE\_FORWARD\_USER\_INFO\_HEADERS" is enabled, allowing external TTS and STT providers to implement user-specific personalization, rate limiting, and usage tracking. [#&#8203;19323](https://github.com/open-webui/open-webui/pull/19323), [#&#8203;19312](https://github.com/open-webui/open-webui/issues/19312) - 🎙️ Voice mode now supports custom system prompts via "VOICE\_MODE\_PROMPT\_TEMPLATE" configuration, allowing administrators to control response style and behavior for voice interactions. [#&#8203;18607](https://github.com/open-webui/open-webui/pull/18607) - 🔧 WebSocket and Redis configuration options are now available including debug logging controls, custom ping timeout and interval settings, and arbitrary Redis connection options via "WEBSOCKET\_SERVER\_LOGGING", "WEBSOCKET\_SERVER\_ENGINEIO\_LOGGING", "WEBSOCKET\_SERVER\_PING\_TIMEOUT", "WEBSOCKET\_SERVER\_PING\_INTERVAL", and "WEBSOCKET\_REDIS\_OPTIONS" environment variables. [#&#8203;19091](https://github.com/open-webui/open-webui/pull/19091) - 🔧 MCP OAuth dynamic client registration now automatically detects and uses the appropriate token endpoint authentication method from server-supported options, enabling compatibility with OAuth servers that only support "client\_secret\_basic" instead of "client\_secret\_post". [#&#8203;19193](https://github.com/open-webui/open-webui/issues/19193) - 🔧 Custom headers can now be configured for remote MCP and OpenAPI tool server connections, enabling integration with services that require additional authentication headers. [#&#8203;18918](https://github.com/open-webui/open-webui/issues/18918) - 🔍 Perplexity Search now supports custom API endpoints via "PERPLEXITY\_SEARCH\_API\_URL" configuration and automatically forwards user information headers to enable personalized search experiences. [#&#8203;19147](https://github.com/open-webui/open-webui/pull/19147) - 🔍 User information headers can now be optionally forwarded to external web search engines when "ENABLE\_FORWARD\_USER\_INFO\_HEADERS" is enabled. [#&#8203;19043](https://github.com/open-webui/open-webui/pull/19043) - 📊 Daily active user metric is now available for monitoring, tracking unique users active since midnight UTC via the "webui.users.active.today" Prometheus gauge. [#&#8203;19236](https://github.com/open-webui/open-webui/pull/19236), [#&#8203;19234](https://github.com/open-webui/open-webui/issues/19234) - 📊 Audit log file path is now configurable via "AUDIT\_LOGS\_FILE\_PATH" environment variable, enabling storage in separate volumes or custom locations. [#&#8203;19173](https://github.com/open-webui/open-webui/pull/19173) - 🎨 Sidebar collapse states for model lists and group information are now persistent across page refreshes, remembering user preferences through browser-based storage. [#&#8203;19159](https://github.com/open-webui/open-webui/issues/19159) - 🎨 Background image display was enhanced with semi-transparent overlays for navbar and sidebar, creating a seamless and visually cohesive design across the entire interface. [#&#8203;19157](https://github.com/open-webui/open-webui/issues/19157) - 📋 Tables in chat messages now include a copy button that appears on hover, enabling quick copying of table content alongside the existing CSV export functionality. [#&#8203;19162](https://github.com/open-webui/open-webui/issues/19162) - 📝 Notes can now be created directly via the "/notes/new" URL endpoint with optional title and content query parameters, enabling faster note creation through bookmarks and shortcuts. [#&#8203;19195](https://github.com/open-webui/open-webui/issues/19195) - 🏷️ Tag suggestions are now context-aware, displaying only relevant tags when creating or editing models versus chat conversations, preventing confusion between model and chat tags. [#&#8203;19135](https://github.com/open-webui/open-webui/issues/19135) - ✍️ Prompt autocompletion is now available independently of the rich text input setting, improving accessibility to the feature. [#&#8203;19150](https://github.com/open-webui/open-webui/issues/19150) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Translations for Simplified Chinese, Traditional Chinese, Portuguese (Brazil), Catalan, Spanish (Spain), Finnish, Irish, Farsi, Swedish, Danish, German, Korean, and Thai were improved and expanded. ##### Fixed - 🤖 Model update functionality now works correctly, resolving a database parameter binding error that prevented saving changes to model configurations via the Save & Update button. [#&#8203;19335](https://github.com/open-webui/open-webui/issues/19335) - 🖼️ Multiple input images for image editing and generation are now correctly passed as an array using the "image\[]" parameter syntax, enabling proper multi-image reference functionality with models like GPT Image 1. [#&#8203;19339](https://github.com/open-webui/open-webui/issues/19339) - 📱 PWA installations on iOS now properly refresh after server container restarts, resolving freezing issues by automatically unregistering service workers when version or deployment changes are detected. [#&#8203;19316](https://github.com/open-webui/open-webui/pull/19316) - 🗄️ S3 Vectors collection detection now correctly handles buckets with more than 2000 indexes by using direct index lookup instead of paginated list scanning, improving performance by approximately 8x and enabling RAG queries to work reliably at scale. [#&#8203;19238](https://github.com/open-webui/open-webui/pull/19238), [#&#8203;19233](https://github.com/open-webui/open-webui/issues/19233) - 📈 Feedback retrieval performance was optimized by eliminating N+1 query patterns through database joins, adding server-side pagination and sorting, significantly reducing database load for instances with large feedback datasets. [#&#8203;17976](https://github.com/open-webui/open-webui/pull/17976) - 🔍 Chat search now works correctly with PostgreSQL when chat data contains null bytes, with comprehensive sanitization preventing null bytes during data writes, cleaning existing data on read, and stripping null bytes during search queries to ensure reliable search functionality. [#&#8203;15616](https://github.com/open-webui/open-webui/issues/15616) - 🔍 Hybrid search with reranking now correctly handles attribute validation, preventing errors when collection results lack expected structure. [#&#8203;19025](https://github.com/open-webui/open-webui/pull/19025), [#&#8203;17046](https://github.com/open-webui/open-webui/issues/17046) - 🔎 Reranking functionality now works correctly after recent refactoring, resolving crashes caused by incorrect function argument handling. [#&#8203;19270](https://github.com/open-webui/open-webui/pull/19270) - 🤖 Azure OpenAI models now support the "reasoning\_effort" parameter, enabling proper configuration of reasoning capabilities for models like GPT-5.1 which default to no reasoning without this setting. [#&#8203;19290](https://github.com/open-webui/open-webui/issues/19290) - 🤖 Models with very long IDs can now be deleted correctly, resolving URL length limitations that previously prevented management operations on such models. [#&#8203;18230](https://github.com/open-webui/open-webui/pull/18230) - 🤖 Model-level streaming settings now correctly apply to API requests, ensuring "Stream Chat Response" toggle properly controls the streaming parameter. [#&#8203;19154](https://github.com/open-webui/open-webui/issues/19154) - 🖼️ Image editing configuration now correctly preserves independent OpenAI API endpoints and keys, preventing them from being overwritten by image generation settings. [#&#8203;19003](https://github.com/open-webui/open-webui/issues/19003) - 🎨 Gemini image edit settings now display correctly in the admin panel, fixing an incorrect configuration key reference that prevented proper rendering of edit options. [#&#8203;19200](https://github.com/open-webui/open-webui/pull/19200) - 🖌️ Image generation settings menu now loads correctly, resolving validation errors with AUTOMATIC1111 API authentication parameters. [#&#8203;19187](https://github.com/open-webui/open-webui/issues/19187), [#&#8203;19246](https://github.com/open-webui/open-webui/issues/19246) - 📅 Date formatting in chat search and admin user chat search now correctly respects the "DEFAULT\_LOCALE" environment variable, displaying dates according to the configured locale instead of always using MM/DD/YYYY format. [#&#8203;19305](https://github.com/open-webui/open-webui/pull/19305), [#&#8203;19020](https://github.com/open-webui/open-webui/issues/19020) - 📝 RAG template query placeholder escaping logic was corrected to prevent unintended replacements of context values when query placeholders appear in retrieved content. [#&#8203;19102](https://github.com/open-webui/open-webui/pull/19102), [#&#8203;19101](https://github.com/open-webui/open-webui/issues/19101) - 📄 RAG template prompt duplication was eliminated by removing redundant user query section from the default template. [#&#8203;19099](https://github.com/open-webui/open-webui/pull/19099), [#&#8203;19098](https://github.com/open-webui/open-webui/issues/19098) - 📋 MinerU local mode configuration no longer incorrectly requires an API key, allowing proper use of local content extraction without external API credentials. [#&#8203;19258](https://github.com/open-webui/open-webui/issues/19258) - 📊 Excel file uploads now work correctly with the addition of the missing msoffcrypto-tool dependency, resolving import errors introduced by the unstructured package upgrade. [#&#8203;19153](https://github.com/open-webui/open-webui/issues/19153) - 📑 Docling parameters now properly handle JSON serialization, preventing exceptions and ensuring configuration changes are saved correctly. [#&#8203;19072](https://github.com/open-webui/open-webui/pull/19072) - 🛠️ UserValves configuration now correctly isolates settings per tool, preventing configuration contamination when multiple tools with UserValves are used simultaneously. [#&#8203;19185](https://github.com/open-webui/open-webui/pull/19185), [#&#8203;15569](https://github.com/open-webui/open-webui/issues/15569) - 🔧 Tool selection prompt now correctly handles user messages without duplication, removing redundant query prefixes and improving prompt clarity. [#&#8203;19122](https://github.com/open-webui/open-webui/pull/19122), [#&#8203;19121](https://github.com/open-webui/open-webui/issues/19121) - 📝 Notes chat feature now correctly submits messages to the completions endpoint, resolving errors that prevented AI model interactions. [#&#8203;19079](https://github.com/open-webui/open-webui/pull/19079) - 📝 Note PDF downloads now sanitize HTML content using DOMPurify before rendering, preventing potential DOM-based XSS attacks from malicious content in notes. [Commit](https://github.com/open-webui/open-webui/commit/03cc6ce8eb5c055115406e2304fbf7e3338b8dce) - 📁 Archived chats now have their folder associations automatically removed to prevent unintended deletion when their previous folder is deleted. [#&#8203;14578](https://github.com/open-webui/open-webui/issues/14578) - 🔐 ElevenLabs API key is now properly obfuscated in the admin settings page, preventing plain text exposure of sensitive credentials. [#&#8203;19262](https://github.com/open-webui/open-webui/pull/19262), [#&#8203;19260](https://github.com/open-webui/open-webui/issues/19260) - 🔧 MCP OAuth server metadata discovery now follows the correct specification order, ensuring proper authentication flow compliance. [#&#8203;19244](https://github.com/open-webui/open-webui/pull/19244) - 🔒 API key endpoint restrictions now properly enforce access controls for all endpoints including SCIM, preventing unintended access when "API\_KEY\_ALLOWED\_ENDPOINTS" is configured. [#&#8203;19168](https://github.com/open-webui/open-webui/issues/19168) - 🔓 OAuth role claim parsing now supports both flat and nested claim structures, enabling compatibility with OAuth providers that deliver claims as direct properties on the user object rather than nested structures. [#&#8203;19286](https://github.com/open-webui/open-webui/pull/19286) - 🔑 OAuth MCP server verification now correctly extracts the access token value for authorization headers instead of sending the entire token dictionary. [#&#8203;19149](https://github.com/open-webui/open-webui/pull/19149), [#&#8203;19148](https://github.com/open-webui/open-webui/issues/19148) - ⚙️ OAuth dynamic client registration now correctly converts empty strings to None for optional fields, preventing validation failures in MCP package integration. [#&#8203;19144](https://github.com/open-webui/open-webui/pull/19144), [#&#8203;19129](https://github.com/open-webui/open-webui/issues/19129) - 🔐 OIDC authentication now correctly passes client credentials in access token requests, ensuring compatibility with providers that require these parameters per RFC 6749. [#&#8203;19132](https://github.com/open-webui/open-webui/pull/19132), [#&#8203;19131](https://github.com/open-webui/open-webui/issues/19131) - 🔗 OAuth client creation now respects configured token endpoint authentication methods instead of defaulting to basic authentication, preventing failures with servers that don't support basic auth. [#&#8203;19165](https://github.com/open-webui/open-webui/pull/19165) - 📋 Text copied from chat responses in Chrome now pastes without background formatting, improving readability when pasting into word processors. [#&#8203;19083](https://github.com/open-webui/open-webui/issues/19083) ##### Changed - 🗄️ Group membership data storage was refactored from JSON arrays to a dedicated relational database table, significantly improving query performance and scalability for instances with large numbers of users and groups, while API responses now return member counts instead of full user ID arrays. [#&#8203;19239](https://github.com/open-webui/open-webui/pull/19239) - 📄 MinerU parameter handling was refactored to pass parameters directly to the API, improving flexibility and fixing VLM backend configuration. [#&#8203;19105](https://github.com/open-webui/open-webui/pull/19105), [#&#8203;18446](https://github.com/open-webui/open-webui/discussions/18446) - 🔐 API key creation is now controlled by granular user and group permissions, with the "ENABLE\_API\_KEY" environment variable renamed to "ENABLE\_API\_KEYS" and disabled by default, requiring explicit configuration at both the global and user permission levels, while related environment variables "ENABLE\_API\_KEY\_ENDPOINT\_RESTRICTIONS" and "API\_KEY\_ALLOWED\_ENDPOINTS" were renamed to "ENABLE\_API\_KEYS\_ENDPOINT\_RESTRICTIONS" and "API\_KEYS\_ALLOWED\_ENDPOINTS" respectively. [#&#8203;18336](https://github.com/open-webui/open-webui/pull/18336) > \[!TIP]\ > **Looking for an [Enterprise Plan](https://docs.openwebui.com/enterprise)?** – **[Speak with Our Sales Team Today!](mailto:sales@openwebui.com)** > > Get **enhanced capabilities**, including **custom theming and branding**, **Service Level Agreement (SLA) support**, and **more!** 👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: [@&#8203;Davixk](https://github.com/Davixk), [@&#8203;podden](https://github.com/podden), [@&#8203;ShirasawaSama](https://github.com/ShirasawaSama), [@&#8203;jekuaitk](https://github.com/jekuaitk), [@&#8203;sanglt](https://github.com/sanglt), [@&#8203;shargyle](https://github.com/shargyle), [@&#8203;aindriu80](https://github.com/aindriu80), [@&#8203;krishna-medapati](https://github.com/krishna-medapati), [@&#8203;lazariv](https://github.com/lazariv), [@&#8203;FlorentMair80](https://github.com/FlorentMair80), [@&#8203;mikkeschiren](https://github.com/mikkeschiren), [@&#8203;joaoback](https://github.com/joaoback), [@&#8203;Cyp9715](https://github.com/Cyp9715), [@&#8203;aleixdorca](https://github.com/aleixdorca), [@&#8203;silentoplayz](https://github.com/silentoplayz), [@&#8203;gerhardj-b](https://github.com/gerhardj-b), [@&#8203;siwadon-jay](https://github.com/siwadon-jay), [@&#8203;jmleksan](https://github.com/jmleksan), [@&#8203;dannyl1u](https://github.com/dannyl1u), [@&#8203;rgaricano](https://github.com/rgaricano), [@&#8203;Kylapaallikko](https://github.com/Kylapaallikko), [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;expruc](https://github.com/expruc), [@&#8203;tomhaynes](https://github.com/tomhaynes), [@&#8203;diwakar-s-maurya](https://github.com/diwakar-s-maurya), [@&#8203;xqqp](https://github.com/xqqp), [@&#8203;logan-hcg](https://github.com/logan-hcg), [@&#8203;BlakeTnr](https://github.com/BlakeTnr), [@&#8203;siavashvj](https://github.com/siavashvj), [@&#8203;Oleg52](https://github.com/Oleg52), [@&#8203;sihyeonn](https://github.com/sihyeonn), [@&#8203;davecrab](https://github.com/davecrab), [@&#8203;matiboux](https://github.com/matiboux), [@&#8203;adam-skalicky](https://github.com/adam-skalicky) #### Sponsors 🙌 🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!) [@&#8203;amd](https://github.com/amd), [@&#8203;roosi-gmbh](https://github.com/roosi-gmbh), [@&#8203;rndmcnlly](https://github.com/rndmcnlly), [@&#8203;feddersen-group](https://github.com/feddersen-group), [@&#8203;SRKConsulting](https://github.com/SRKConsulting), [@&#8203;mushmax](https://github.com/mushmax), [@&#8203;icanbwell](https://github.com/icanbwell), [@&#8203;agency-agency](https://github.com/agency-agency), [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;loitragg](https://github.com/loitragg), [@&#8203;haka4githu6](https://github.com/haka4githu6), [@&#8203;silenceroom](https://github.com/silenceroom), [@&#8203;GenieDev101](https://github.com/GenieDev101), [@&#8203;CubicleGangster](https://github.com/CubicleGangster), [@&#8203;TOWaB](https://github.com/TOWaB), [@&#8203;comet-ml](https://github.com/comet-ml), [@&#8203;FominVO](https://github.com/FominVO), [@&#8203;catalyst-net-nz](https://github.com/catalyst-net-nz), [@&#8203;JrdnHans](https://github.com/JrdnHans), [@&#8203;hkosm](https://github.com/hkosm), [@&#8203;VeroFess](https://github.com/VeroFess), [@&#8203;joaoback](https://github.com/joaoback), [@&#8203;walsermedia](https://github.com/walsermedia), [@&#8203;LuxTronic](https://github.com/LuxTronic) ### [`v0.6.37`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0637---2025-11-24) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.36...v0.6.37) ##### Added - 🔐 Granular sharing permissions are now available with two-tiered control separating group sharing from public sharing, allowing administrators to independently configure whether users can share workspace items with groups or make them publicly accessible, with separate permission toggles for models, knowledge bases, prompts, tools, and notes, configurable via "USER\_PERMISSIONS\_WORKSPACE\_MODELS\_ALLOW\_SHARING", "USER\_PERMISSIONS\_WORKSPACE\_MODELS\_ALLOW\_PUBLIC\_SHARING", and corresponding environment variables for other workspace item types, while groups can now be configured to opt-out of sharing via the "Allow Group Sharing" setting. [Commit](https://github.com/open-webui/open-webui/commit/7be750bcbb40da91912a0a66b7ab791effdcc3b6), [Commit](https://github.com/open-webui/open-webui/commit/f69e37a8507d6d57382d6670641b367f3127f90a) - 🔐 Password policy enforcement is now available with configurable validation rules, allowing administrators to require specific password complexity requirements via "ENABLE\_PASSWORD\_VALIDATION" and "PASSWORD\_VALIDATION\_REGEX\_PATTERN" environment variables, with default pattern requiring minimum 8 characters including uppercase, lowercase, digit, and special character. [#&#8203;17794](https://github.com/open-webui/open-webui/pull/17794) - 🔐 Granular import and export permissions are now available for workspace items, introducing six separate permission toggles for models, prompts, and tools that are disabled by default for enhanced security. [#&#8203;19242](https://github.com/open-webui/open-webui/pull/19242) - 👥 Default group assignment is now available for new users, allowing administrators to automatically assign newly registered users to a specified group for streamlined access control to models, prompts, and tools, particularly useful for organizations with group-based model access policies. [#&#8203;19325](https://github.com/open-webui/open-webui/pull/19325), [#&#8203;17842](https://github.com/open-webui/open-webui/issues/17842) - 🔒 Password-based authentication can now be fully disabled via "ENABLE\_PASSWORD\_AUTH" environment variable, enforcing SSO-only authentication and preventing password login fallback when SSO is configured. [#&#8203;19113](https://github.com/open-webui/open-webui/pull/19113) - 🖼️ Large stream chunk handling was implemented to support models that generate images directly in their output responses, with configurable buffer size via "CHAT\_STREAM\_RESPONSE\_CHUNK\_MAX\_BUFFER\_SIZE" environment variable, resolving compatibility issues with models like Gemini 2.5 Flash Image. [#&#8203;18884](https://github.com/open-webui/open-webui/pull/18884), [#&#8203;17626](https://github.com/open-webui/open-webui/issues/17626) - 🖼️ Streaming response middleware now handles images in delta updates with automatic base64 conversion, enabling proper display of images from models using the "choices\[0].delta.images.image\_url" format such as Gemini 2.5 Flash Image Preview on OpenRouter. [#&#8203;19073](https://github.com/open-webui/open-webui/pull/19073), [#&#8203;19019](https://github.com/open-webui/open-webui/issues/19019) - 📈 Model list API performance was optimized by pre-fetching user group memberships and removing profile image URLs from response payloads, significantly reducing both database queries and payload size for instances with large model lists, with profile images now served dynamically via dedicated endpoints. [#&#8203;19097](https://github.com/open-webui/open-webui/pull/19097), [#&#8203;18950](https://github.com/open-webui/open-webui/issues/18950) - ⏩ Batch file processing performance was improved by reducing database queries by 67% while ensuring data consistency between vector and relational databases. [#&#8203;18953](https://github.com/open-webui/open-webui/pull/18953) - 🚀 Chat import performance was dramatically improved by replacing individual per-chat API requests with a bulk import endpoint, reducing import time by up to 95% for large chat collections and providing user feedback via toast notifications displaying the number of successfully imported chats. [#&#8203;17861](https://github.com/open-webui/open-webui/pull/17861) - ⚡ Socket event broadcasting performance was optimized by implementing user-specific rooms, significantly reducing server overhead particularly for users with multiple concurrent sessions. [#&#8203;18996](https://github.com/open-webui/open-webui/pull/18996) - 🗄️ Weaviate is now supported as a vector database option, providing an additional choice for RAG document storage alongside existing ChromaDB, Milvus, Qdrant, and OpenSearch integrations. [#&#8203;14747](https://github.com/open-webui/open-webui/pull/14747) - 🗄️ PostgreSQL pgvector now supports HNSW index types and large dimensional embeddings exceeding 2000 dimensions through automatic halfvec type selection, with configurable index methods via "PGVECTOR\_INDEX\_METHOD", "PGVECTOR\_HNSW\_M", "PGVECTOR\_HNSW\_EF\_CONSTRUCTION", and "PGVECTOR\_IVFFLAT\_LISTS" environment variables. [#&#8203;19158](https://github.com/open-webui/open-webui/pull/19158), [#&#8203;16890](https://github.com/open-webui/open-webui/issues/16890) - 🔍 Azure AI Search is now supported as a web search provider, enabling integration with Azure's cognitive search services via "AZURE\_AI\_SEARCH\_API\_KEY", "AZURE\_AI\_SEARCH\_ENDPOINT", and "AZURE\_AI\_SEARCH\_INDEX\_NAME" configuration. [#&#8203;19104](https://github.com/open-webui/open-webui/pull/19104) - ⚡ External embedding generation now processes API requests in parallel instead of sequential batches, reducing document processing time by 10-50x when using OpenAI, Azure OpenAI, or Ollama embedding providers, with large PDFs now processing in seconds instead of minutes. [#&#8203;19296](https://github.com/open-webui/open-webui/pull/19296) - 💨 Base64 image conversion is now available for markdown content in chat responses, automatically uploading embedded images exceeding 1KB and replacing them with file URLs to reduce payload size and resource consumption, configurable via "REPLACE\_IMAGE\_URLS\_IN\_CHAT\_RESPONSE" environment variable. [#&#8203;19076](https://github.com/open-webui/open-webui/pull/19076) - 🎨 OpenAI image generation now supports additional API parameters including quality settings for GPT Image 1, configurable via "IMAGES\_OPENAI\_API\_PARAMS" environment variable or through the admin interface, enabling cost-effective image generation with low, medium, or high quality options. [#&#8203;19228](https://github.com/open-webui/open-webui/issues/19228) - 🖼️ Image editing can now be independently enabled or disabled via admin settings, allowing administrators to control whether sequential image prompts trigger image editing or new image generation, configurable via "ENABLE\_IMAGE\_EDIT" environment variable. [#&#8203;19284](https://github.com/open-webui/open-webui/issues/19284) - 🔐 SSRF protection was implemented with a configurable URL blocklist that prevents access to cloud metadata endpoints and private networks, with default protections for AWS, Google Cloud, Azure, and Alibaba Cloud metadata services, customizable via "WEB\_FETCH\_FILTER\_LIST" environment variable. [#&#8203;19201](https://github.com/open-webui/open-webui/pull/19201) - ⚡ Workspace models page now supports server-side pagination dramatically improving load times and usability for instances with large numbers of workspace models. - 🔍 Hybrid search now indexes file metadata including filenames, titles, headings, sources, and snippets alongside document content, enabling keyword queries to surface documents where search terms appear only in metadata, configurable via "ENABLE\_RAG\_HYBRID\_SEARCH\_ENRICHED\_TEXTS" environment variable. [#&#8203;19095](https://github.com/open-webui/open-webui/pull/19095) - 📂 Knowledge base upload page now supports folder drag-and-drop with recursive directory handling, enabling batch uploads of entire directory structures instead of requiring individual file selection. [#&#8203;19320](https://github.com/open-webui/open-webui/pull/19320) - 🤖 Model cloning is now available in admin settings, allowing administrators to quickly create workspace models based on existing base models through a "Clone" option in the model dropdown menu. [#&#8203;17937](https://github.com/open-webui/open-webui/pull/17937) - 🎨 UI scale adjustment is now available in interface settings, allowing users to increase the size of the entire interface from 1.0x to 1.5x for improved accessibility and readability, particularly beneficial for users with visual impairments. [#&#8203;19186](https://github.com/open-webui/open-webui/pull/19186) - 📌 Default pinned models can now be configured by administrators for all new users, mirroring the behavior of default models where admin-configured defaults apply only to users who haven't customized their pinned models, configurable via "DEFAULT\_PINNED\_MODELS" environment variable. [#&#8203;19273](https://github.com/open-webui/open-webui/pull/19273) - 🎙️ Text-to-Speech and Speech-to-Text services now receive user information headers when "ENABLE\_FORWARD\_USER\_INFO\_HEADERS" is enabled, allowing external TTS and STT providers to implement user-specific personalization, rate limiting, and usage tracking. [#&#8203;19323](https://github.com/open-webui/open-webui/pull/19323), [#&#8203;19312](https://github.com/open-webui/open-webui/issues/19312) - 🎙️ Voice mode now supports custom system prompts via "VOICE\_MODE\_PROMPT\_TEMPLATE" configuration, allowing administrators to control response style and behavior for voice interactions. [#&#8203;18607](https://github.com/open-webui/open-webui/pull/18607) - 🔧 WebSocket and Redis configuration options are now available including debug logging controls, custom ping timeout and interval settings, and arbitrary Redis connection options via "WEBSOCKET\_SERVER\_LOGGING", "WEBSOCKET\_SERVER\_ENGINEIO\_LOGGING", "WEBSOCKET\_SERVER\_PING\_TIMEOUT", "WEBSOCKET\_SERVER\_PING\_INTERVAL", and "WEBSOCKET\_REDIS\_OPTIONS" environment variables. [#&#8203;19091](https://github.com/open-webui/open-webui/pull/19091) - 🔧 MCP OAuth dynamic client registration now automatically detects and uses the appropriate token endpoint authentication method from server-supported options, enabling compatibility with OAuth servers that only support "client\_secret\_basic" instead of "client\_secret\_post". [#&#8203;19193](https://github.com/open-webui/open-webui/issues/19193) - 🔧 Custom headers can now be configured for remote MCP and OpenAPI tool server connections, enabling integration with services that require additional authentication headers. [#&#8203;18918](https://github.com/open-webui/open-webui/issues/18918) - 🔍 Perplexity Search now supports custom API endpoints via "PERPLEXITY\_SEARCH\_API\_URL" configuration and automatically forwards user information headers to enable personalized search experiences. [#&#8203;19147](https://github.com/open-webui/open-webui/pull/19147) - 🔍 User information headers can now be optionally forwarded to external web search engines when "ENABLE\_FORWARD\_USER\_INFO\_HEADERS" is enabled. [#&#8203;19043](https://github.com/open-webui/open-webui/pull/19043) - 📊 Daily active user metric is now available for monitoring, tracking unique users active since midnight UTC via the "webui.users.active.today" Prometheus gauge. [#&#8203;19236](https://github.com/open-webui/open-webui/pull/19236), [#&#8203;19234](https://github.com/open-webui/open-webui/issues/19234) - 📊 Audit log file path is now configurable via "AUDIT\_LOGS\_FILE\_PATH" environment variable, enabling storage in separate volumes or custom locations. [#&#8203;19173](https://github.com/open-webui/open-webui/pull/19173) - 🎨 Sidebar collapse states for model lists and group information are now persistent across page refreshes, remembering user preferences through browser-based storage. [#&#8203;19159](https://github.com/open-webui/open-webui/issues/19159) - 🎨 Background image display was enhanced with semi-transparent overlays for navbar and sidebar, creating a seamless and visually cohesive design across the entire interface. [#&#8203;19157](https://github.com/open-webui/open-webui/issues/19157) - 📋 Tables in chat messages now include a copy button that appears on hover, enabling quick copying of table content alongside the existing CSV export functionality. [#&#8203;19162](https://github.com/open-webui/open-webui/issues/19162) - 📝 Notes can now be created directly via the "/notes/new" URL endpoint with optional title and content query parameters, enabling faster note creation through bookmarks and shortcuts. [#&#8203;19195](https://github.com/open-webui/open-webui/issues/19195) - 🏷️ Tag suggestions are now context-aware, displaying only relevant tags when creating or editing models versus chat conversations, preventing confusion between model and chat tags. [#&#8203;19135](https://github.com/open-webui/open-webui/issues/19135) - ✍️ Prompt autocompletion is now available independently of the rich text input setting, improving accessibility to the feature. [#&#8203;19150](https://github.com/open-webui/open-webui/issues/19150) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Translations for Simplified Chinese, Traditional Chinese, Portuguese (Brazil), Catalan, Spanish (Spain), Finnish, Irish, Farsi, Swedish, Danish, German, Korean, and Thai were improved and expanded. ##### Fixed - 🤖 Model update functionality now works correctly, resolving a database parameter binding error that prevented saving changes to model configurations via the Save & Update button. [#&#8203;19335](https://github.com/open-webui/open-webui/issues/19335) - 🖼️ Multiple input images for image editing and generation are now correctly passed as an array using the "image\[]" parameter syntax, enabling proper multi-image reference functionality with models like GPT Image 1. [#&#8203;19339](https://github.com/open-webui/open-webui/issues/19339) - 📱 PWA installations on iOS now properly refresh after server container restarts, resolving freezing issues by automatically unregistering service workers when version or deployment changes are detected. [#&#8203;19316](https://github.com/open-webui/open-webui/pull/19316) - 🗄️ S3 Vectors collection detection now correctly handles buckets with more than 2000 indexes by using direct index lookup instead of paginated list scanning, improving performance by approximately 8x and enabling RAG queries to work reliably at scale. [#&#8203;19238](https://github.com/open-webui/open-webui/pull/19238), [#&#8203;19233](https://github.com/open-webui/open-webui/issues/19233) - 📈 Feedback retrieval performance was optimized by eliminating N+1 query patterns through database joins, adding server-side pagination and sorting, significantly reducing database load for instances with large feedback datasets. [#&#8203;17976](https://github.com/open-webui/open-webui/pull/17976) - 🔍 Chat search now works correctly with PostgreSQL when chat data contains null bytes, with comprehensive sanitization preventing null bytes during data writes, cleaning existing data on read, and stripping null bytes during search queries to ensure reliable search functionality. [#&#8203;15616](https://github.com/open-webui/open-webui/issues/15616) - 🔍 Hybrid search with reranking now correctly handles attribute validation, preventing errors when collection results lack expected structure. [#&#8203;19025](https://github.com/open-webui/open-webui/pull/19025), [#&#8203;17046](https://github.com/open-webui/open-webui/issues/17046) - 🔎 Reranking functionality now works correctly after recent refactoring, resolving crashes caused by incorrect function argument handling. [#&#8203;19270](https://github.com/open-webui/open-webui/pull/19270) - 🤖 Azure OpenAI models now support the "reasoning\_effort" parameter, enabling proper configuration of reasoning capabilities for models like GPT-5.1 which default to no reasoning without this setting. [#&#8203;19290](https://github.com/open-webui/open-webui/issues/19290) - 🤖 Models with very long IDs can now be deleted correctly, resolving URL length limitations that previously prevented management operations on such models. [#&#8203;18230](https://github.com/open-webui/open-webui/pull/18230) - 🤖 Model-level streaming settings now correctly apply to API requests, ensuring "Stream Chat Response" toggle properly controls the streaming parameter. [#&#8203;19154](https://github.com/open-webui/open-webui/issues/19154) - 🖼️ Image editing configuration now correctly preserves independent OpenAI API endpoints and keys, preventing them from being overwritten by image generation settings. [#&#8203;19003](https://github.com/open-webui/open-webui/issues/19003) - 🎨 Gemini image edit settings now display correctly in the admin panel, fixing an incorrect configuration key reference that prevented proper rendering of edit options. [#&#8203;19200](https://github.com/open-webui/open-webui/pull/19200) - 🖌️ Image generation settings menu now loads correctly, resolving validation errors with AUTOMATIC1111 API authentication parameters. [#&#8203;19187](https://github.com/open-webui/open-webui/issues/19187), [#&#8203;19246](https://github.com/open-webui/open-webui/issues/19246) - 📅 Date formatting in chat search and admin user chat search now correctly respects the "DEFAULT\_LOCALE" environment variable, displaying dates according to the configured locale instead of always using MM/DD/YYYY format. [#&#8203;19305](https://github.com/open-webui/open-webui/pull/19305), [#&#8203;19020](https://github.com/open-webui/open-webui/issues/19020) - 📝 RAG template query placeholder escaping logic was corrected to prevent unintended replacements of context values when query placeholders appear in retrieved content. [#&#8203;19102](https://github.com/open-webui/open-webui/pull/19102), [#&#8203;19101](https://github.com/open-webui/open-webui/issues/19101) - 📄 RAG template prompt duplication was eliminated by removing redundant user query section from the default template. [#&#8203;19099](https://github.com/open-webui/open-webui/pull/19099), [#&#8203;19098](https://github.com/open-webui/open-webui/issues/19098) - 📋 MinerU local mode configuration no longer incorrectly requires an API key, allowing proper use of local content extraction without external API credentials. [#&#8203;19258](https://github.com/open-webui/open-webui/issues/19258) - 📊 Excel file uploads now work correctly with the addition of the missing msoffcrypto-tool dependency, resolving import errors introduced by the unstructured package upgrade. [#&#8203;19153](https://github.com/open-webui/open-webui/issues/19153) - 📑 Docling parameters now properly handle JSON serialization, preventing exceptions and ensuring configuration changes are saved correctly. [#&#8203;19072](https://github.com/open-webui/open-webui/pull/19072) - 🛠️ UserValves configuration now correctly isolates settings per tool, preventing configuration contamination when multiple tools with UserValves are used simultaneously. [#&#8203;19185](https://github.com/open-webui/open-webui/pull/19185), [#&#8203;15569](https://github.com/open-webui/open-webui/issues/15569) - 🔧 Tool selection prompt now correctly handles user messages without duplication, removing redundant query prefixes and improving prompt clarity. [#&#8203;19122](https://github.com/open-webui/open-webui/pull/19122), [#&#8203;19121](https://github.com/open-webui/open-webui/issues/19121) - 📝 Notes chat feature now correctly submits messages to the completions endpoint, resolving errors that prevented AI model interactions. [#&#8203;19079](https://github.com/open-webui/open-webui/pull/19079) - 📝 Note PDF downloads now sanitize HTML content using DOMPurify before rendering, preventing potential DOM-based XSS attacks from malicious content in notes. [Commit](https://github.com/open-webui/open-webui/commit/03cc6ce8eb5c055115406e2304fbf7e3338b8dce) - 📁 Archived chats now have their folder associations automatically removed to prevent unintended deletion when their previous folder is deleted. [#&#8203;14578](https://github.com/open-webui/open-webui/issues/14578) - 🔐 ElevenLabs API key is now properly obfuscated in the admin settings page, preventing plain text exposure of sensitive credentials. [#&#8203;19262](https://github.com/open-webui/open-webui/pull/19262), [#&#8203;19260](https://github.com/open-webui/open-webui/issues/19260) - 🔧 MCP OAuth server metadata discovery now follows the correct specification order, ensuring proper authentication flow compliance. [#&#8203;19244](https://github.com/open-webui/open-webui/pull/19244) - 🔒 API key endpoint restrictions now properly enforce access controls for all endpoints including SCIM, preventing unintended access when "API\_KEY\_ALLOWED\_ENDPOINTS" is configured. [#&#8203;19168](https://github.com/open-webui/open-webui/issues/19168) - 🔓 OAuth role claim parsing now supports both flat and nested claim structures, enabling compatibility with OAuth providers that deliver claims as direct properties on the user object rather than nested structures. [#&#8203;19286](https://github.com/open-webui/open-webui/pull/19286) - 🔑 OAuth MCP server verification now correctly extracts the access token value for authorization headers instead of sending the entire token dictionary. [#&#8203;19149](https://github.com/open-webui/open-webui/pull/19149), [#&#8203;19148](https://github.com/open-webui/open-webui/issues/19148) - ⚙️ OAuth dynamic client registration now correctly converts empty strings to None for optional fields, preventing validation failures in MCP package integration. [#&#8203;19144](https://github.com/open-webui/open-webui/pull/19144), [#&#8203;19129](https://github.com/open-webui/open-webui/issues/19129) - 🔐 OIDC authentication now correctly passes client credentials in access token requests, ensuring compatibility with providers that require these parameters per RFC 6749. [#&#8203;19132](https://github.com/open-webui/open-webui/pull/19132), [#&#8203;19131](https://github.com/open-webui/open-webui/issues/19131) - 🔗 OAuth client creation now respects configured token endpoint authentication methods instead of defaulting to basic authentication, preventing failures with servers that don't support basic auth. [#&#8203;19165](https://github.com/open-webui/open-webui/pull/19165) - 📋 Text copied from chat responses in Chrome now pastes without background formatting, improving readability when pasting into word processors. [#&#8203;19083](https://github.com/open-webui/open-webui/issues/19083) ##### Changed - 🗄️ Group membership data storage was refactored from JSON arrays to a dedicated relational database table, significantly improving query performance and scalability for instances with large numbers of users and groups, while API responses now return member counts instead of full user ID arrays. [#&#8203;19239](https://github.com/open-webui/open-webui/pull/19239) - 📄 MinerU parameter handling was refactored to pass parameters directly to the API, improving flexibility and fixing VLM backend configuration. [#&#8203;19105](https://github.com/open-webui/open-webui/pull/19105), [#&#8203;18446](https://github.com/open-webui/open-webui/discussions/18446) - 🔐 API key creation is now controlled by granular user and group permissions, with the "ENABLE\_API\_KEY" environment variable renamed to "ENABLE\_API\_KEYS" and disabled by default, requiring explicit configuration at both the global and user permission levels, while related environment variables "ENABLE\_API\_KEY\_ENDPOINT\_RESTRICTIONS" and "API\_KEY\_ALLOWED\_ENDPOINTS" were renamed to "ENABLE\_API\_KEYS\_ENDPOINT\_RESTRICTIONS" and "API\_KEYS\_ALLOWED\_ENDPOINTS" respectively. [#&#8203;18336](https://github.com/open-webui/open-webui/pull/18336) ### [`v0.6.36`](https://github.com/open-webui/open-webui/releases/tag/v0.6.36) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.36...v0.6.36) #### \[0.6.36] - 2025-11-07 ##### Added - 🔐 OAuth group parsing now supports configurable separators via the "OAUTH\_GROUPS\_SEPARATOR" environment variable, enabling proper handling of semicolon-separated group claims from providers like CILogon. [#&#8203;18987](https://github.com/open-webui/open-webui/pull/18987), [#&#8203;18979](https://github.com/open-webui/open-webui/issues/18979) ##### Fixed - 🛠️ Tool calling functionality is restored by correcting asynchronous function handling in tool parameter updates. [#&#8203;18981](https://github.com/open-webui/open-webui/issues/18981) - 🖼️ The ComfyUI image edit workflow editor modal now opens correctly when clicking the Edit button. [#&#8203;18978](https://github.com/open-webui/open-webui/issues/18978) - 🔥 Firecrawl import errors are resolved by implementing lazy loading and using the correct class name. [#&#8203;18973](https://github.com/open-webui/open-webui/issues/18973) - 🔌 Socket.IO CORS warning is resolved by properly configuring CORS origins for Socket.IO connections. [Commit](https://github.com/open-webui/open-webui/commit/639d26252e528c9c37a5f553b11eb94376d8792d) ### [`v0.6.36`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0636---2025-11-07) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.35...v0.6.36) ##### Added - 🔐 OAuth group parsing now supports configurable separators via the "OAUTH\_GROUPS\_SEPARATOR" environment variable, enabling proper handling of semicolon-separated group claims from providers like CILogon. [#&#8203;18987](https://github.com/open-webui/open-webui/pull/18987), [#&#8203;18979](https://github.com/open-webui/open-webui/issues/18979) ##### Fixed - 🛠️ Tool calling functionality is restored by correcting asynchronous function handling in tool parameter updates. [#&#8203;18981](https://github.com/open-webui/open-webui/issues/18981) - 🖼️ The ComfyUI image edit workflow editor modal now opens correctly when clicking the Edit button. [#&#8203;18978](https://github.com/open-webui/open-webui/issues/18978) - 🔥 Firecrawl import errors are resolved by implementing lazy loading and using the correct class name. [#&#8203;18973](https://github.com/open-webui/open-webui/issues/18973) - 🔌 Socket.IO CORS warning is resolved by properly configuring CORS origins for Socket.IO connections. [Commit](https://github.com/open-webui/open-webui/commit/639d26252e528c9c37a5f553b11eb94376d8792d) ### [`v0.6.35`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0635---2025-11-06) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.35...v0.6.35) ##### Added - 🖼️ Image generation system received a comprehensive overhaul with major new capabilities including full image editing support allowing users to modify existing images using text prompts with OpenAI, Gemini, or ComfyUI engines, adding Gemini 2.5 Flash Image (Nano Banana) support, Qwen Image Edit integration, resolution of base64-encoded image display issues, streamlined AUTOMATIC1111 configuration by consolidating parameters into a flexible JSON parameters field, and enhanced UI with a code editor modal for ComfyUI workflow management. [#&#8203;17434](https://github.com/open-webui/open-webui/pull/17434), [#&#8203;16976](https://github.com/open-webui/open-webui/issues/16976), [Commit](https://github.com/open-webui/open-webui/commit/8e5690aab4f632a57027e2acf880b8f89a8717c0), [Commit](https://github.com/open-webui/open-webui/commit/72f8539fd2e679fec0762945f22f4b8a6920afa0), [Commit](https://github.com/open-webui/open-webui/commit/8d34fcb586eeee1fac6da2f991518b8a68b00b72), [Commit](https://github.com/open-webui/open-webui/commit/72900cd686de1fa6be84b5a8a2fc857cff7b91b8) - 🔒 CORS origin validation was added to WebSocket connections as a defense-in-depth security measure against cross-site WebSocket hijacking attacks. [#&#8203;18411](https://github.com/open-webui/open-webui/pull/18411), [#&#8203;18410](https://github.com/open-webui/open-webui/issues/18410) - 🔄 Automatic page refresh now occurs when a version update is detected via WebSocket connection, ensuring users always run the latest version without cache issues. [Commit](https://github.com/open-webui/open-webui/commit/989f192c92d2fe55daa31336e7971e21798b96ae) - 🐍 Experimental initial preparations for Python 3.13 compatibility by updating dependencies with security enhancements and cryptographic improvements. [#&#8203;18430](https://github.com/open-webui/open-webui/pull/18430), [#&#8203;18424](https://github.com/open-webui/open-webui/pull/18424) - ⚡ Image compression now preserves the original image format instead of converting to PNG, significantly reducing file sizes and improving chat loading performance. [#&#8203;18506](https://github.com/open-webui/open-webui/pull/18506) - 🎤 Mistral Voxtral model support was added for text-to-speech, including voxtral-small and voxtral-mini models with both transcription and chat completion API support. [#&#8203;18934](https://github.com/open-webui/open-webui/pull/18934) - 🔊 Text-to-speech now uses a global audio queue system to prevent overlapping playback, ensuring only one TTS instance plays at a time with proper stop/start controls and automatic cleanup when switching between messages. [#&#8203;16152](https://github.com/open-webui/open-webui/pull/16152), [#&#8203;18744](https://github.com/open-webui/open-webui/pull/18744), [#&#8203;16150](https://github.com/open-webui/open-webui/issues/16150) - 🔊 ELEVENLABS\_API\_BASE\_URL environment variable now allows configuration of custom ElevenLabs API endpoints, enabling support for EU residency API requirements. [#&#8203;18402](https://github.com/open-webui/open-webui/issues/18402) - 🔐 OAUTH\_ROLES\_SEPARATOR environment variable now allows custom role separators for OAuth roles that contain commas, useful for roles specified in LDAP syntax. [#&#8203;18572](https://github.com/open-webui/open-webui/pull/18572) - 📄 External document loaders can now optionally forward user information headers when ENABLE\_FORWARD\_USER\_INFO\_HEADERS is enabled, enabling cost tracking, audit logs, and usage analytics for external services. [#&#8203;18731](https://github.com/open-webui/open-webui/pull/18731) - 📄 MISTRAL\_OCR\_API\_BASE\_URL environment variable now allows configuration of custom Mistral OCR API endpoints for flexible deployment options. [Commit](https://github.com/open-webui/open-webui/commit/415b93c7c35c2e2db4425e6da1b88b3750f496b0) - ⌨️ Keyboard shortcut hints are now displayed on sidebar buttons with a refactored shortcuts modal that accurately reflects all available hotkeys across different keyboard layouts. [#&#8203;18473](https://github.com/open-webui/open-webui/pull/18473) - 🛠️ Tooltips now display tool descriptions when hovering over tool names on the model edit page, improving usability and providing immediate context. [#&#8203;18707](https://github.com/open-webui/open-webui/pull/18707) - 📝 "Create a new note" from the search modal now immediately creates a new private note and opens it in the editor instead of navigating to the generic notes page. [#&#8203;18255](https://github.com/open-webui/open-webui/pull/18255) - 🖨️ Code block output now preserves whitespace formatting with monospace font to accurately reflect terminal behavior. [#&#8203;18352](https://github.com/open-webui/open-webui/pull/18352) - ✏️ Edit button is now available in the three-dot menu of models in the workspace section for quick access to model editing, with the menu reorganized for better user experience and Edit, Clone, Copy Link, and Share options logically grouped. [#&#8203;18574](https://github.com/open-webui/open-webui/pull/18574) - 📌 Sidebar models section is now collapsible, allowing users to expand and collapse the pinned models list for better sidebar organization. [Commit](https://github.com/open-webui/open-webui/commit/82c08a3b5d189f81c96b6548cc872198771015b0) - 🌙 Dark mode styles for select elements were added using Tailwind CSS classes, improving consistency across the interface. [#&#8203;18636](https://github.com/open-webui/open-webui/pull/18636) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Translations for Portuguese (Brazil), Greek, German, Traditional Chinese, Simplified Chinese, Spanish, Georgian, Danish, and Estonian were enhanced and expanded. ##### Fixed - 🔒 Server-Sent Event (SSE) code injection vulnerability in Direct Connections is resolved by blocking event emission from untrusted external model servers; event emitters from direct connected model servers are no longer supported, preventing arbitrary JavaScript execution in user browsers. [Commit](https://github.com/open-webui/open-webui/commit/8af6a4cf21b756a66cd58378a01c60f74c39b7ca) - 🛡️ DOM XSS vulnerability in "Insert Prompt as Rich Text" is resolved by sanitizing HTML content with DOMPurify before rendering. [Commit](https://github.com/open-webui/open-webui/commit/eb9c4c0e358c274aea35f21c2856c0a20051e5f1) - ⚙️ MCP server cancellation scope corruption is prevented by reversing disconnection order to follow LIFO and properly handling exceptions, resolving 100% CPU usage when resuming chats with expired tokens or using multiple streamable MCP servers. [#&#8203;18537](https://github.com/open-webui/open-webui/pull/18537) - 🔧 UI freeze when querying models with knowledge bases containing inconsistent distance metrics is resolved by properly initializing the distances array in citations. [#&#8203;18585](https://github.com/open-webui/open-webui/pull/18585) - 🤖 Duplicate model IDs from multiple OpenAI endpoints are now automatically deduplicated server-side, preventing frontend crashes for users with unified gateway proxies that aggregate multiple providers. [Commit](https://github.com/open-webui/open-webui/commit/fdf7ca11d4f3cc8fe63e81c98dc0d1e48e52ba36) - 🔐 Login failures with passwords longer than 72 bytes are resolved by safely truncating oversized passwords for bcrypt compatibility. [#&#8203;18157](https://github.com/open-webui/open-webui/issues/18157) - 🔐 OAuth 2.1 MCP tool connections now automatically re-register clients when stored client IDs become stale, preventing unauthorized\_client errors after editing tool endpoints and providing detailed error messages for callback failures. [#&#8203;18415](https://github.com/open-webui/open-webui/pull/18415), [#&#8203;18309](https://github.com/open-webui/open-webui/issues/18309) - 🔓 OAuth 2.1 discovery, metadata fetching, and dynamic client registration now correctly use HTTP proxy environment variables when trust\_env is enabled. [Commit](https://github.com/open-webui/open-webui/commit/bafeb76c411483bd6b135f0edbcdce048120f264) - 🔌 MCP server connection failures now display clear error messages in the chat interface instead of silently failing. [#&#8203;18892](https://github.com/open-webui/open-webui/pull/18892), [#&#8203;18889](https://github.com/open-webui/open-webui/issues/18889) - 💬 Chat titles are now properly generated even when title auto-generation is disabled in interface settings, fixing an issue where chats would remain labeled as "New chat". [#&#8203;18761](https://github.com/open-webui/open-webui/pull/18761), [#&#8203;18717](https://github.com/open-webui/open-webui/issues/18717), [#&#8203;6478](https://github.com/open-webui/open-webui/issues/6478) - 🔍 Chat query errors are prevented by properly validating and handling the "order\_by" parameter to ensure requested columns exist. [#&#8203;18400](https://github.com/open-webui/open-webui/pull/18400), [#&#8203;18452](https://github.com/open-webui/open-webui/pull/18452) - 🔧 Root-level max\_tokens parameter is no longer dropped when proxying to Ollama, properly converting to num\_predict to limit output token length as intended. [#&#8203;18618](https://github.com/open-webui/open-webui/issues/18618) - 🔑 Self-hosted Marker instances can now be used without requiring an API key, while keeping it optional for datalab Marker service users. [#&#8203;18617](https://github.com/open-webui/open-webui/issues/18617) - 🔧 OpenAPI specification endpoint conflict between "/api/v1/models" and "/api/v1/models/" is resolved by changing the models router endpoint to "/list", preventing duplicate operationId errors when generating TypeScript API clients. [#&#8203;18758](https://github.com/open-webui/open-webui/issues/18758) - 🏷️ Model tags are now de-duplicated case-insensitively in both the model selector and workspace models page, preventing duplicate entries with different capitalization from appearing in filter dropdowns. [#&#8203;18716](https://github.com/open-webui/open-webui/pull/18716), [#&#8203;18711](https://github.com/open-webui/open-webui/issues/18711) - 📄 Docling RAG parameter configuration is now correctly saved in the admin UI by fixing the typo in the "DOCLING\_PARAMS" parameter name. [#&#8203;18390](https://github.com/open-webui/open-webui/pull/18390) - 📃 Tika document processing now automatically detects content types instead of relying on potentially incorrect browser-provided mime-types, improving file handling accuracy for formats like RTF. [#&#8203;18765](https://github.com/open-webui/open-webui/pull/18765), [#&#8203;18683](https://github.com/open-webui/open-webui/issues/18683) - 🖼️ Image and video uploads to knowledge bases now display proper error messages instead of showing an infinite spinner when the content extraction engine does not support these file types. [#&#8203;18514](https://github.com/open-webui/open-webui/issues/18514) - 📝 Notes PDF export now properly detects and applies dark mode styling consistently across both the notes list and individual note pages, with a shared utility function to eliminate code duplication. [#&#8203;18526](https://github.com/open-webui/open-webui/issues/18526) - 💭 Details tags for reasoning content are now correctly identified and rendered even when the same tag is present in user messages. [#&#8203;18840](https://github.com/open-webui/open-webui/pull/18840), [#&#8203;18294](https://github.com/open-webui/open-webui/issues/18294) - 📊 Mermaid and Vega rendering errors now display inline with the code instead of showing repetitive toast notifications, improving user experience when models generate invalid diagram syntax. [Commit](https://github.com/open-webui/open-webui/commit/fdc0f04a8b7dd0bc9f9dc0e7e30854f7a0eea3e9) - 📈 Mermaid diagram rendering errors no longer cause UI unavailability or display error messages below the input box. [#&#8203;18493](https://github.com/open-webui/open-webui/pull/18493), [#&#8203;18340](https://github.com/open-webui/open-webui/issues/18340) - 🔗 Web search SSL verification is now asynchronous, preventing the website from hanging during web search operations. [#&#8203;18714](https://github.com/open-webui/open-webui/pull/18714), [#&#8203;18699](https://github.com/open-webui/open-webui/issues/18699) - 🌍 Web search results now correctly use HTTP proxy environment variables when WEB\_SEARCH\_TRUST\_ENV is enabled. [#&#8203;18667](https://github.com/open-webui/open-webui/pull/18667), [#&#8203;7008](https://github.com/open-webui/open-webui/discussions/7008) - 🔍 Google Programmable Search Engine now properly includes referer headers, enabling API keys with HTTP referrer restrictions configured in Google Cloud Console. [#&#8203;18871](https://github.com/open-webui/open-webui/pull/18871), [#&#8203;18870](https://github.com/open-webui/open-webui/issues/18870) - ⚡ YouTube video transcript fetching now works correctly when using a proxy connection. [#&#8203;18419](https://github.com/open-webui/open-webui/pull/18419) - 🎙️ Speech-to-text transcription no longer deletes or replaces existing text in the prompt input field, properly preserving any previously entered content. [#&#8203;18540](https://github.com/open-webui/open-webui/issues/18540) - 🎙️ The "Instant Auto-Send After Voice Transcription" setting now functions correctly and automatically sends transcribed text when enabled. [#&#8203;18466](https://github.com/open-webui/open-webui/issues/18466) - ⚙️ Chat settings now load properly when reopening a tab or starting a new session by initializing defaults when sessionStorage is empty. [#&#8203;18438](https://github.com/open-webui/open-webui/pull/18438) - 🔎 Folder tag search in the sidebar now correctly handles folder names with multiple spaces by replacing all spaces with underscores. [Commit](https://github.com/open-webui/open-webui/commit/a8fe979af68e47e4e4bb3eb76e48d93d60cd2a45) - 🛠️ Functions page now updates immediately after deleting a function, removing the need for a manual page reload. [#&#8203;18912](https://github.com/open-webui/open-webui/pull/18912), [#&#8203;18908](https://github.com/open-webui/open-webui/issues/18908) - 🛠️ Native tool calling now properly supports sequential tool calls with shared context, allowing tools to access images and data from previous tool executions in the same conversation. [#&#8203;18664](https://github.com/open-webui/open-webui/pull/18664) - 🎯 Globally enabled actions in the model editor now correctly apply as global instead of being treated as disabled. [#&#8203;18577](https://github.com/open-webui/open-webui/pull/18577) - 📋 Clipboard images pasted via the "{{CLIPBOARD}}" prompt variable are now correctly converted to base64 format before being sent to the backend, resolving base64 encoding errors. [#&#8203;18432](https://github.com/open-webui/open-webui/pull/18432), [#&#8203;18425](https://github.com/open-webui/open-webui/issues/18425) - 📋 File list is now cleared when switching to models that do not support file uploads, preventing files from being sent to incompatible models. [#&#8203;18496](https://github.com/open-webui/open-webui/pull/18496) - 📂 Move menu no longer displays when folders are empty. [#&#8203;18484](https://github.com/open-webui/open-webui/pull/18484) - 📁 Folder and channel creation now validates that names are not empty, preventing creation of folders or channels with no name and showing an error toast if attempted. [#&#8203;18564](https://github.com/open-webui/open-webui/pull/18564) - 🖊️ Rich text input no longer removes text between equals signs when pasting code with comparison operators. [#&#8203;18551](https://github.com/open-webui/open-webui/issues/18551) - ⌨️ Keyboard shortcuts now display the correct keys for international and non-QWERTY keyboard layouts by detecting the user's layout using the Keyboard API. [#&#8203;18533](https://github.com/open-webui/open-webui/pull/18533) - 🌐 "Attach Webpage" button now displays with correct disabled styling when a model does not support file uploads. [#&#8203;18483](https://github.com/open-webui/open-webui/pull/18483) - 🎚️ Divider no longer displays in the integrations menu when no integrations are enabled. [#&#8203;18487](https://github.com/open-webui/open-webui/pull/18487) - 📱 Chat controls button is now properly hidden on mobile for users without admin or explicit chat control permissions. [#&#8203;18641](https://github.com/open-webui/open-webui/pull/18641) - 📍 User menu, download submenu, and move submenu are now repositioned to prevent overlap with the Chat Controls sidebar when it is open. [Commit](https://github.com/open-webui/open-webui/commit/414ab51cb6df1ab0d6c85ac6c1f2c5c9a5f8e2aa) - 🎯 Artifacts button no longer appears in the chat menu when there are no artifacts to display. [Commit](https://github.com/open-webui/open-webui/commit/ed6449d35f84f68dc75ee5c6b3f4748a3fda0096) - 🎨 Artifacts view now automatically displays when opening an existing conversation containing artifacts, improving user experience. [#&#8203;18215](https://github.com/open-webui/open-webui/pull/18215) - 🖌️ Formatting toolbar is no longer hidden under images or code blocks in chat and now displays correctly above all message content. - 🎨 Layout shift near system instructions is prevented by properly rendering the chat component when system prompts are empty. [#&#8203;18594](https://github.com/open-webui/open-webui/pull/18594) - 📐 Modal layout shift caused by scrollbar appearance is prevented by adding a stable scrollbar gutter. [#&#8203;18591](https://github.com/open-webui/open-webui/pull/18591) - ✨ Spacing between icon and label in the user menu dropdown items is now consistent. [#&#8203;18595](https://github.com/open-webui/open-webui/pull/18595) - 💬 Duplicate prompt suggestions no longer cause the webpage to freeze or throw JavaScript errors by implementing proper key management with composite keys. [#&#8203;18841](https://github.com/open-webui/open-webui/pull/18841), [#&#8203;18566](https://github.com/open-webui/open-webui/issues/18566) - 🔍 Chat preview loading in the search modal now works correctly for all search results by fixing an index boundary check that previously caused out-of-bounds errors. [#&#8203;18911](https://github.com/open-webui/open-webui/pull/18911) - ♿ Screen reader support was enhanced by wrapping messages in semantic elements with descriptive aria-labels, adding "Assistant is typing" and "Response complete" announcements for improved accessibility. [#&#8203;18735](https://github.com/open-webui/open-webui/pull/18735) - 🔒 Incorrect await call in the OAuth 2.1 flow is removed, eliminating a logged exception during authentication. [#&#8203;18236](https://github.com/open-webui/open-webui/pull/18236) - 🛡️ Duplicate crossorigin attribute in the manifest file was removed. [#&#8203;18413](https://github.com/open-webui/open-webui/pull/18413) ##### Changed - 🔄 Firecrawl integration was refactored to use the official Firecrawl SDK instead of direct HTTP requests and langchain\_community FireCrawlLoader, improving reliability and performance with batch scraping support and enhanced error handling. [#&#8203;18635](https://github.com/open-webui/open-webui/pull/18635) - 📄 MinerU content extraction engine now only supports PDF files following the upstream removal of LibreOffice document conversion in version 2.0.0; users needing to process office documents should convert them to PDF format first. [#&#8203;18448](https://github.com/open-webui/open-webui/issues/18448) ### [`v0.6.35`](https://github.com/open-webui/open-webui/releases/tag/v0.6.35) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.34...v0.6.35) #### \[0.6.35] - 2025-11-06 ##### Added - 🖼️ Image generation system received a comprehensive overhaul with major new capabilities including full image editing support allowing users to modify existing images using text prompts with OpenAI, Gemini, or ComfyUI engines, adding Gemini 2.5 Flash Image (Nano Banana) support, Qwen Image Edit integration, resolution of base64-encoded image display issues, streamlined AUTOMATIC1111 configuration by consolidating parameters into a flexible JSON parameters field, and enhanced UI with a code editor modal for ComfyUI workflow management. [#&#8203;17434](https://github.com/open-webui/open-webui/pull/17434), [#&#8203;16976](https://github.com/open-webui/open-webui/issues/16976), [Commit](https://github.com/open-webui/open-webui/commit/8e5690aab4f632a57027e2acf880b8f89a8717c0), [Commit](https://github.com/open-webui/open-webui/commit/72f8539fd2e679fec0762945f22f4b8a6920afa0), [Commit](https://github.com/open-webui/open-webui/commit/8d34fcb586eeee1fac6da2f991518b8a68b00b72), [Commit](https://github.com/open-webui/open-webui/commit/72900cd686de1fa6be84b5a8a2fc857cff7b91b8) - 🔒 CORS origin validation was added to WebSocket connections as a defense-in-depth security measure against cross-site WebSocket hijacking attacks. [#&#8203;18411](https://github.com/open-webui/open-webui/pull/18411), [#&#8203;18410](https://github.com/open-webui/open-webui/issues/18410) - 🔄 Automatic page refresh now occurs when a version update is detected via WebSocket connection, ensuring users always run the latest version without cache issues. [Commit](https://github.com/open-webui/open-webui/commit/989f192c92d2fe55daa31336e7971e21798b96ae) - 🐍 Experimental initial preparations for Python 3.13 compatibility by updating dependencies with security enhancements and cryptographic improvements. [#&#8203;18430](https://github.com/open-webui/open-webui/pull/18430), [#&#8203;18424](https://github.com/open-webui/open-webui/pull/18424) - ⚡ Image compression now preserves the original image format instead of converting to PNG, significantly reducing file sizes and improving chat loading performance. [#&#8203;18506](https://github.com/open-webui/open-webui/pull/18506) - 🎤 Mistral Voxtral model support was added for text-to-speech, including voxtral-small and voxtral-mini models with both transcription and chat completion API support. [#&#8203;18934](https://github.com/open-webui/open-webui/pull/18934) - 🔊 Text-to-speech now uses a global audio queue system to prevent overlapping playback, ensuring only one TTS instance plays at a time with proper stop/start controls and automatic cleanup when switching between messages. [#&#8203;16152](https://github.com/open-webui/open-webui/pull/16152), [#&#8203;18744](https://github.com/open-webui/open-webui/pull/18744), [#&#8203;16150](https://github.com/open-webui/open-webui/issues/16150) - 🔊 ELEVENLABS\_API\_BASE\_URL environment variable now allows configuration of custom ElevenLabs API endpoints, enabling support for EU residency API requirements. [#&#8203;18402](https://github.com/open-webui/open-webui/issues/18402) - 🔐 OAUTH\_ROLES\_SEPARATOR environment variable now allows custom role separators for OAuth roles that contain commas, useful for roles specified in LDAP syntax. [#&#8203;18572](https://github.com/open-webui/open-webui/pull/18572) - 📄 External document loaders can now optionally forward user information headers when ENABLE\_FORWARD\_USER\_INFO\_HEADERS is enabled, enabling cost tracking, audit logs, and usage analytics for external services. [#&#8203;18731](https://github.com/open-webui/open-webui/pull/18731) - 📄 MISTRAL\_OCR\_API\_BASE\_URL environment variable now allows configuration of custom Mistral OCR API endpoints for flexible deployment options. [Commit](https://github.com/open-webui/open-webui/commit/415b93c7c35c2e2db4425e6da1b88b3750f496b0) - ⌨️ Keyboard shortcut hints are now displayed on sidebar buttons with a refactored shortcuts modal that accurately reflects all available hotkeys across different keyboard layouts. [#&#8203;18473](https://github.com/open-webui/open-webui/pull/18473) - 🛠️ Tooltips now display tool descriptions when hovering over tool names on the model edit page, improving usability and providing immediate context. [#&#8203;18707](https://github.com/open-webui/open-webui/pull/18707) - 📝 "Create a new note" from the search modal now immediately creates a new private note and opens it in the editor instead of navigating to the generic notes page. [#&#8203;18255](https://github.com/open-webui/open-webui/pull/18255) - 🖨️ Code block output now preserves whitespace formatting with monospace font to accurately reflect terminal behavior. [#&#8203;18352](https://github.com/open-webui/open-webui/pull/18352) - ✏️ Edit button is now available in the three-dot menu of models in the workspace section for quick access to model editing, with the menu reorganized for better user experience and Edit, Clone, Copy Link, and Share options logically grouped. [#&#8203;18574](https://github.com/open-webui/open-webui/pull/18574) - 📌 Sidebar models section is now collapsible, allowing users to expand and collapse the pinned models list for better sidebar organization. [Commit](https://github.com/open-webui/open-webui/commit/82c08a3b5d189f81c96b6548cc872198771015b0) - 🌙 Dark mode styles for select elements were added using Tailwind CSS classes, improving consistency across the interface. [#&#8203;18636](https://github.com/open-webui/open-webui/pull/18636) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Translations for Portuguese (Brazil), Greek, German, Traditional Chinese, Simplified Chinese, Spanish, Georgian, Danish, and Estonian were enhanced and expanded. ##### Fixed - 🔒 Server-Sent Event (SSE) code injection vulnerability in Direct Connections is resolved by blocking event emission from untrusted external model servers; event emitters from direct connected model servers are no longer supported, preventing arbitrary JavaScript execution in user browsers. [Commit](https://github.com/open-webui/open-webui/commit/8af6a4cf21b756a66cd58378a01c60f74c39b7ca) - 🛡️ DOM XSS vulnerability in "Insert Prompt as Rich Text" is resolved by sanitizing HTML content with DOMPurify before rendering. [Commit](https://github.com/open-webui/open-webui/commit/eb9c4c0e358c274aea35f21c2856c0a20051e5f1) - ⚙️ MCP server cancellation scope corruption is prevented by reversing disconnection order to follow LIFO and properly handling exceptions, resolving 100% CPU usage when resuming chats with expired tokens or using multiple streamable MCP servers. [#&#8203;18537](https://github.com/open-webui/open-webui/pull/18537) - 🔧 UI freeze when querying models with knowledge bases containing inconsistent distance metrics is resolved by properly initializing the distances array in citations. [#&#8203;18585](https://github.com/open-webui/open-webui/pull/18585) - 🤖 Duplicate model IDs from multiple OpenAI endpoints are now automatically deduplicated server-side, preventing frontend crashes for users with unified gateway proxies that aggregate multiple providers. [Commit](https://github.com/open-webui/open-webui/commit/fdf7ca11d4f3cc8fe63e81c98dc0d1e48e52ba36) - 🔐 Login failures with passwords longer than 72 bytes are resolved by safely truncating oversized passwords for bcrypt compatibility. [#&#8203;18157](https://github.com/open-webui/open-webui/issues/18157) - 🔐 OAuth 2.1 MCP tool connections now automatically re-register clients when stored client IDs become stale, preventing unauthorized\_client errors after editing tool endpoints and providing detailed error messages for callback failures. [#&#8203;18415](https://github.com/open-webui/open-webui/pull/18415), [#&#8203;18309](https://github.com/open-webui/open-webui/issues/18309) - 🔓 OAuth 2.1 discovery, metadata fetching, and dynamic client registration now correctly use HTTP proxy environment variables when trust\_env is enabled. [Commit](https://github.com/open-webui/open-webui/commit/bafeb76c411483bd6b135f0edbcdce048120f264) - 🔌 MCP server connection failures now display clear error messages in the chat interface instead of silently failing. [#&#8203;18892](https://github.com/open-webui/open-webui/pull/18892), [#&#8203;18889](https://github.com/open-webui/open-webui/issues/18889) - 💬 Chat titles are now properly generated even when title auto-generation is disabled in interface settings, fixing an issue where chats would remain labeled as "New chat". [#&#8203;18761](https://github.com/open-webui/open-webui/pull/18761), [#&#8203;18717](https://github.com/open-webui/open-webui/issues/18717), [#&#8203;6478](https://github.com/open-webui/open-webui/issues/6478) - 🔍 Chat query errors are prevented by properly validating and handling the "order\_by" parameter to ensure requested columns exist. [#&#8203;18400](https://github.com/open-webui/open-webui/pull/18400), [#&#8203;18452](https://github.com/open-webui/open-webui/pull/18452) - 🔧 Root-level max\_tokens parameter is no longer dropped when proxying to Ollama, properly converting to num\_predict to limit output token length as intended. [#&#8203;18618](https://github.com/open-webui/open-webui/issues/18618) - 🔑 Self-hosted Marker instances can now be used without requiring an API key, while keeping it optional for datalab Marker service users. [#&#8203;18617](https://github.com/open-webui/open-webui/issues/18617) - 🔧 OpenAPI specification endpoint conflict between "/api/v1/models" and "/api/v1/models/" is resolved by changing the models router endpoint to "/list", preventing duplicate operationId errors when generating TypeScript API clients. [#&#8203;18758](https://github.com/open-webui/open-webui/issues/18758) - 🏷️ Model tags are now de-duplicated case-insensitively in both the model selector and workspace models page, preventing duplicate entries with different capitalization from appearing in filter dropdowns. [#&#8203;18716](https://github.com/open-webui/open-webui/pull/18716), [#&#8203;18711](https://github.com/open-webui/open-webui/issues/18711) - 📄 Docling RAG parameter configuration is now correctly saved in the admin UI by fixing the typo in the "DOCLING\_PARAMS" parameter name. [#&#8203;18390](https://github.com/open-webui/open-webui/pull/18390) - 📃 Tika document processing now automatically detects content types instead of relying on potentially incorrect browser-provided mime-types, improving file handling accuracy for formats like RTF. [#&#8203;18765](https://github.com/open-webui/open-webui/pull/18765), [#&#8203;18683](https://github.com/open-webui/open-webui/issues/18683) - 🖼️ Image and video uploads to knowledge bases now display proper error messages instead of showing an infinite spinner when the content extraction engine does not support these file types. [#&#8203;18514](https://github.com/open-webui/open-webui/issues/18514) - 📝 Notes PDF export now properly detects and applies dark mode styling consistently across both the notes list and individual note pages, with a shared utility function to eliminate code duplication. [#&#8203;18526](https://github.com/open-webui/open-webui/issues/18526) - 💭 Details tags for reasoning content are now correctly identified and rendered even when the same tag is present in user messages. [#&#8203;18840](https://github.com/open-webui/open-webui/pull/18840), [#&#8203;18294](https://github.com/open-webui/open-webui/issues/18294) - 📊 Mermaid and Vega rendering errors now display inline with the code instead of showing repetitive toast notifications, improving user experience when models generate invalid diagram syntax. [Commit](https://github.com/open-webui/open-webui/commit/fdc0f04a8b7dd0bc9f9dc0e7e30854f7a0eea3e9) - 📈 Mermaid diagram rendering errors no longer cause UI unavailability or display error messages below the input box. [#&#8203;18493](https://github.com/open-webui/open-webui/pull/18493), [#&#8203;18340](https://github.com/open-webui/open-webui/issues/18340) - 🔗 Web search SSL verification is now asynchronous, preventing the website from hanging during web search operations. [#&#8203;18714](https://github.com/open-webui/open-webui/pull/18714), [#&#8203;18699](https://github.com/open-webui/open-webui/issues/18699) - 🌍 Web search results now correctly use HTTP proxy environment variables when WEB\_SEARCH\_TRUST\_ENV is enabled. [#&#8203;18667](https://github.com/open-webui/open-webui/pull/18667), [#&#8203;7008](https://github.com/open-webui/open-webui/discussions/7008) - 🔍 Google Programmable Search Engine now properly includes referer headers, enabling API keys with HTTP referrer restrictions configured in Google Cloud Console. [#&#8203;18871](https://github.com/open-webui/open-webui/pull/18871), [#&#8203;18870](https://github.com/open-webui/open-webui/issues/18870) - ⚡ YouTube video transcript fetching now works correctly when using a proxy connection. [#&#8203;18419](https://github.com/open-webui/open-webui/pull/18419) - 🎙️ Speech-to-text transcription no longer deletes or replaces existing text in the prompt input field, properly preserving any previously entered content. [#&#8203;18540](https://github.com/open-webui/open-webui/issues/18540) - 🎙️ The "Instant Auto-Send After Voice Transcription" setting now functions correctly and automatically sends transcribed text when enabled. [#&#8203;18466](https://github.com/open-webui/open-webui/issues/18466) - ⚙️ Chat settings now load properly when reopening a tab or starting a new session by initializing defaults when sessionStorage is empty. [#&#8203;18438](https://github.com/open-webui/open-webui/pull/18438) - 🔎 Folder tag search in the sidebar now correctly handles folder names with multiple spaces by replacing all spaces with underscores. [Commit](https://github.com/open-webui/open-webui/commit/a8fe979af68e47e4e4bb3eb76e48d93d60cd2a45) - 🛠️ Functions page now updates immediately after deleting a function, removing the need for a manual page reload. [#&#8203;18912](https://github.com/open-webui/open-webui/pull/18912), [#&#8203;18908](https://github.com/open-webui/open-webui/issues/18908) - 🛠️ Native tool calling now properly supports sequential tool calls with shared context, allowing tools to access images and data from previous tool executions in the same conversation. [#&#8203;18664](https://github.com/open-webui/open-webui/pull/18664) - 🎯 Globally enabled actions in the model editor now correctly apply as global instead of being treated as disabled. [#&#8203;18577](https://github.com/open-webui/open-webui/pull/18577) - 📋 Clipboard images pasted via the "{{CLIPBOARD}}" prompt variable are now correctly converted to base64 format before being sent to the backend, resolving base64 encoding errors. [#&#8203;18432](https://github.com/open-webui/open-webui/pull/18432), [#&#8203;18425](https://github.com/open-webui/open-webui/issues/18425) - 📋 File list is now cleared when switching to models that do not support file uploads, preventing files from being sent to incompatible models. [#&#8203;18496](https://github.com/open-webui/open-webui/pull/18496) - 📂 Move menu no longer displays when folders are empty. [#&#8203;18484](https://github.com/open-webui/open-webui/pull/18484) - 📁 Folder and channel creation now validates that names are not empty, preventing creation of folders or channels with no name and showing an error toast if attempted. [#&#8203;18564](https://github.com/open-webui/open-webui/pull/18564) - 🖊️ Rich text input no longer removes text between equals signs when pasting code with comparison operators. [#&#8203;18551](https://github.com/open-webui/open-webui/issues/18551) - ⌨️ Keyboard shortcuts now display the correct keys for international and non-QWERTY keyboard layouts by detecting the user's layout using the Keyboard API. [#&#8203;18533](https://github.com/open-webui/open-webui/pull/18533) - 🌐 "Attach Webpage" button now displays with correct disabled styling when a model does not support file uploads. [#&#8203;18483](https://github.com/open-webui/open-webui/pull/18483) - 🎚️ Divider no longer displays in the integrations menu when no integrations are enabled. [#&#8203;18487](https://github.com/open-webui/open-webui/pull/18487) - 📱 Chat controls button is now properly hidden on mobile for users without admin or explicit chat control permissions. [#&#8203;18641](https://github.com/open-webui/open-webui/pull/18641) - 📍 User menu, download submenu, and move submenu are now repositioned to prevent overlap with the Chat Controls sidebar when it is open. [Commit](https://github.com/open-webui/open-webui/commit/414ab51cb6df1ab0d6c85ac6c1f2c5c9a5f8e2aa) - 🎯 Artifacts button no longer appears in the chat menu when there are no artifacts to display. [Commit](https://github.com/open-webui/open-webui/commit/ed6449d35f84f68dc75ee5c6b3f4748a3fda0096) - 🎨 Artifacts view now automatically displays when opening an existing conversation containing artifacts, improving user experience. [#&#8203;18215](https://github.com/open-webui/open-webui/pull/18215) - 🖌️ Formatting toolbar is no longer hidden under images or code blocks in chat and now displays correctly above all message content. - 🎨 Layout shift near system instructions is prevented by properly rendering the chat component when system prompts are empty. [#&#8203;18594](https://github.com/open-webui/open-webui/pull/18594) - 📐 Modal layout shift caused by scrollbar appearance is prevented by adding a stable scrollbar gutter. [#&#8203;18591](https://github.com/open-webui/open-webui/pull/18591) - ✨ Spacing between icon and label in the user menu dropdown items is now consistent. [#&#8203;18595](https://github.com/open-webui/open-webui/pull/18595) - 💬 Duplicate prompt suggestions no longer cause the webpage to freeze or throw JavaScript errors by implementing proper key management with composite keys. [#&#8203;18841](https://github.com/open-webui/open-webui/pull/18841), [#&#8203;18566](https://github.com/open-webui/open-webui/issues/18566) - 🔍 Chat preview loading in the search modal now works correctly for all search results by fixing an index boundary check that previously caused out-of-bounds errors. [#&#8203;18911](https://github.com/open-webui/open-webui/pull/18911) - ♿ Screen reader support was enhanced by wrapping messages in semantic elements with descriptive aria-labels, adding "Assistant is typing" and "Response complete" announcements for improved accessibility. [#&#8203;18735](https://github.com/open-webui/open-webui/pull/18735) - 🔒 Incorrect await call in the OAuth 2.1 flow is removed, eliminating a logged exception during authentication. [#&#8203;18236](https://github.com/open-webui/open-webui/pull/18236) - 🛡️ Duplicate crossorigin attribute in the manifest file was removed. [#&#8203;18413](https://github.com/open-webui/open-webui/pull/18413) ##### Changed - 🔄 Firecrawl integration was refactored to use the official Firecrawl SDK instead of direct HTTP requests and langchain\_community FireCrawlLoader, improving reliability and performance with batch scraping support and enhanced error handling. [#&#8203;18635](https://github.com/open-webui/open-webui/pull/18635) - 📄 MinerU content extraction engine now only supports PDF files following the upstream removal of LibreOffice document conversion in version 2.0.0; users needing to process office documents should convert them to PDF format first. [#&#8203;18448](https://github.com/open-webui/open-webui/issues/18448) > \[!TIP]\ > **Looking for an [Enterprise Plan](https://docs.openwebui.com/enterprise)?** – **[Speak with Our Sales Team Today!](mailto:sales@openwebui.com)** > > Get **enhanced capabilities**, including **custom theming and branding**, **Service Level Agreement (SLA) support**, and **more!** 👏 Massive thanks to our incredible contributors for their hard work and dedication to making this release possible: [@&#8203;joaoback](https://github.com/joaoback), [@&#8203;kaiwinut](https://github.com/kaiwinut), [@&#8203;taylorwilsdon](https://github.com/taylorwilsdon), [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;duncansmart](https://github.com/duncansmart), [@&#8203;silentoplayz](https://github.com/silentoplayz), [@&#8203;sinejespersen](https://github.com/sinejespersen), [@&#8203;acomarcho](https://github.com/acomarcho), [@&#8203;Davixk](https://github.com/Davixk), [@&#8203;Ithanil](https://github.com/Ithanil), [@&#8203;zhsh-12](https://github.com/zhsh-12), [@&#8203;athoik](https://github.com/athoik), [@&#8203;acomarcho](https://github.com/acomarcho), [@&#8203;wangweixuan](https://github.com/wangweixuan), [@&#8203;ShirasawaSama](https://github.com/ShirasawaSama), [@&#8203;acwoo97](https://github.com/acwoo97), [@&#8203;IllimarR](https://github.com/IllimarR), [@&#8203;rgaricano](https://github.com/rgaricano), [@&#8203;OAburub](https://github.com/OAburub), [@&#8203;iPagar](https://github.com/iPagar), [@&#8203;mkhludnev](https://github.com/mkhludnev), [@&#8203;jmleksan](https://github.com/jmleksan), [@&#8203;attilaolah](https://github.com/attilaolah), [@&#8203;htulipe](https://github.com/htulipe), [@&#8203;ricdikulous](https://github.com/ricdikulous), [@&#8203;andrewbbaek](https://github.com/andrewbbaek), [@&#8203;Tsafaras](https://github.com/Tsafaras), [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;ivanostanin](https://github.com/ivanostanin), [@&#8203;wei840222](https://github.com/wei840222) #### Sponsors 🙌 🚀 We'd like to extend a heartfelt thank you to our amazing sponsors for their generous support (Note: We've excluded private sponsors from this list. If you'd like to get featured here, feel free to reach out to us!) [@&#8203;amd](https://github.com/amd), [@&#8203;roosi-gmbh](https://github.com/roosi-gmbh), [@&#8203;rndmcnlly](https://github.com/rndmcnlly), [@&#8203;feddersen-group](https://github.com/feddersen-group), [@&#8203;SRKConsulting](https://github.com/SRKConsulting), [@&#8203;mushmax](https://github.com/mushmax), [@&#8203;icanbwell](https://github.com/icanbwell), [@&#8203;agency-agency](https://github.com/agency-agency), [@&#8203;Classic298](https://github.com/Classic298), [@&#8203;loitragg](https://github.com/loitragg), [@&#8203;haka4githu6](https://github.com/haka4githu6), [@&#8203;GenieDev101](https://github.com/GenieDev101), [@&#8203;CubicleGangster](https://github.com/CubicleGangster), [@&#8203;TOWaB](https://github.com/TOWaB), [@&#8203;comet-ml](https://github.com/comet-ml), [@&#8203;FominVO](https://github.com/FominVO), [@&#8203;catalyst-net-nz](https://github.com/catalyst-net-nz), [@&#8203;JrdnHans](https://github.com/JrdnHans), [@&#8203;hkosm](https://github.com/hkosm), [@&#8203;VeroFess](https://github.com/VeroFess), [@&#8203;joaoback](https://github.com/joaoback) ### [`v0.6.34`](https://github.com/open-webui/open-webui/blob/HEAD/CHANGELOG.md#0634---2025-10-16) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.34...v0.6.34) ##### Added - 📄 MinerU is now supported as a document parser backend, with support for both local and managed API deployments. [#&#8203;18306](https://github.com/open-webui/open-webui/pull/18306) - 🔒 JWT token expiration default is now set to 4 weeks instead of never expiring, with security warnings displayed in backend logs and admin UI when set to unlimited. [#&#8203;18261](https://github.com/open-webui/open-webui/pull/18261), [#&#8203;18262](https://github.com/open-webui/open-webui/pull/18262) - ⚡ Page loading performance is improved by preventing unnecessary API requests when sidebar folders are not expanded. [#&#8203;18179](https://github.com/open-webui/open-webui/pull/18179), [#&#8203;17476](https://github.com/open-webui/open-webui/issues/17476) - 📁 File hash values are now included in the knowledge endpoint response, enabling efficient file synchronization through hash comparison. [#&#8203;18284](https://github.com/open-webui/open-webui/pull/18284), [#&#8203;18283](https://github.com/open-webui/open-webui/issues/18283) - 🎨 Chat dialog scrollbar visibility is improved by increasing its width, making it easier to use for navigation. [#&#8203;18369](https://github.com/open-webui/open-webui/pull/18369), [#&#8203;11782](https://github.com/open-webui/open-webui/issues/11782) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Translations for Catalan, Chinese, Czech, Finnish, German, Kabyle, Korean, Portuguese (Brazil), Spanish, Thai, and Turkish were enhanced and expanded. ##### Fixed - 📚 Focused retrieval mode now works correctly, preventing the system from forcing full context mode and loading all documents in a knowledge base regardless of settings. [#&#8203;18133](https://github.com/open-webui/open-webui/issues/18133) - 🔧 Filter inlet functions now correctly execute on tool call continuations, ensuring parameter persistence throughout tool interactions. [#&#8203;18222](https://github.com/open-webui/open-webui/issues/18222) - 🛠️ External tool servers now properly support DELETE requests with body data. [#&#8203;18289](https://github.com/open-webui/open-webui/pull/18289), [#&#8203;18287](https://github.com/open-webui/open-webui/issues/18287) - 🗄️ Oracle23ai vector database client now correctly handles variable initialization, resolving UnboundLocalError when retrieving items from collections. [#&#8203;18356](https://github.com/open-webui/open-webui/issues/18356) - 🔧 Model auto-pull functionality now works correctly even when user settings remain unmodified. [#&#8203;18324](https://github.com/open-webui/open-webui/pull/18324) - 🎨 Duplicate HTML content in artifacts is now prevented by improving code block detection logic. [#&#8203;18195](https://github.com/open-webui/open-webui/pull/18195), [#&#8203;6154](https://github.com/open-webui/open-webui/issues/6154) - 💬 Pinned chats now appear in the Reference Chats list and can be referenced in conversations. [#&#8203;18288](https://github.com/open-webui/open-webui/issues/18288) - 📝 Misleading knowledge base warning text in documents settings is clarified to correctly instruct users about reindexing vectors. [#&#8203;18263](https://github.com/open-webui/open-webui/pull/18263) - 🔔 Toast notifications can now be dismissed even when a modal is open. [#&#8203;18260](https://github.com/open-webui/open-webui/pull/18260) - 🔘 The "Chats" button in the sidebar now correctly toggles chat list visibility without navigating away from the current page. [#&#8203;18232](https://github.com/open-webui/open-webui/pull/18232) - 🎯 The Integrations menu no longer closes prematurely when clicking outside the Valves modal. [#&#8203;18310](https://github.com/open-webui/open-webui/pull/18310) - 🛠️ Tool ID display issues where "undefined" was incorrectly shown in the interface are now resolved. [#&#8203;18178](https://github.com/open-webui/open-webui/pull/18178) - 🛠️ Model management issues caused by excessively long model IDs are now prevented through validation that limits model IDs to 256 characters. [#&#8203;18125](https://github.com/open-webui/open-webui/issues/18125) ### [`v0.6.34`](https://github.com/open-webui/open-webui/releases/tag/v0.6.34) [Compare Source](https://github.com/open-webui/open-webui/compare/v0.6.33...v0.6.34) #### \[0.6.34] - 2025-10-16 ##### Added - 📄 MinerU is now supported as a document parser backend, with support for both local and managed API deployments. [#&#8203;18306](https://github.com/open-webui/open-webui/pull/18306) - 🔒 JWT token expiration default is now set to 4 weeks instead of never expiring, with security warnings displayed in backend logs and admin UI when set to unlimited. [#&#8203;18261](https://github.com/open-webui/open-webui/pull/18261), [#&#8203;18262](https://github.com/open-webui/open-webui/pull/18262) - ⚡ Page loading performance is improved by preventing unnecessary API requests when sidebar folders are not expanded. [#&#8203;18179](https://github.com/open-webui/open-webui/pull/18179), [#&#8203;17476](https://github.com/open-webui/open-webui/issues/17476) - 📁 File hash values are now included in the knowledge endpoint response, enabling efficient file synchronization through hash comparison. [#&#8203;18284](https://github.com/open-webui/open-webui/pull/18284), [#&#8203;18283](https://github.com/open-webui/open-webui/issues/18283) - 🎨 Chat dialog scrollbar visibility is improved by increasing its width, making it easier to use for navigation. [#&#8203;18369](https://github.com/open-webui/open-webui/pull/18369), [#&#8203;11782](https://github.com/open-webui/open-webui/issues/11782) - 🔄 Various improvements were implemented across the frontend and backend to enhance performance, stability, and security. - 🌐 Translations for Catalan, Chinese, Czech, Finnish, German, Kabyle, Korean, Portuguese (Brazil), Spanish, Thai, and Turkish were enhanced and expanded. ##### Fixed - 📚 Focused retrieval mode now works correctly, preventing the system from forcing full context mode and loading all documents in a knowledge base regardless of settings. [#&#8203;18133](https://github.com/open-webui/open-webui/issues/18133) - 🔧 Filter inlet functions now correctly execute on tool call continuations, ensuring parameter persistence throughout tool interactions. [#&#8203;18222](https://github.com/open-webui/open-webui/issues/18222) - 🛠️ External tool servers now properly support DELETE requests with body data. [#&#8203;18289](https://github.com/open-webui/open-webui/pull/18289), [#&#8203;18287](https://github.com/open-webui/open-webui/issues/18287) - 🗄️ Oracle23ai vector database client now correctly handles variable initialization, resolving UnboundLocalError when retrieving items from collections. [#&#8203;18356](https://github.com/open-webui/open-webui/issues/18356) - 🔧 Model auto-pull functionality now works correctly even when user settings remain unmodified. [#&#8203;18324](https://github.com/open-webui/open-webui/pull/18324) - 🎨 Duplicate HTML content in artifacts is now prevented by improving code block detection logic. [#&#8203;18195](https://github.com/open-webui/open-webui/pull/18195), [#&#8203;6154](https://github.com/open-webui/open-webui/issues/6154) - 💬 Pinned chats now appear in the Reference Chats list and can be referenced in conversations. [#&#8203;18288](https://github.com/open-webui/open-webui/issues/18288) - 📝 Misleading knowledge base warning text in documents settings is clarified to correctly instruct users about reindexing vectors. [#&#8203;18263](https://github.com/open-webui/open-webui/pull/18263) - 🔔 Toast notifications can now be dismissed even when a modal is open. [#&#8203;18260](https://github.com/open-webui/open-webui/pull/18260) - 🔘 The "Chats" button in the sidebar now correctly toggles chat list visibility without navigating away from the current page. [#&#8203;18232](https://github.com/open-webui/open-webui/pull/18232) - 🎯 The Integrations menu no longer closes prematurely when clicking outside the Valves modal. [#&#8203;18310](https://github.com/open-webui/open-webui/pull/18310) - 🛠️ Tool ID display issues where "undefined" was incorrectly shown in the interface are now resolved. [#&#8203;18178](https://github.com/open-webui/open-webui/pull/18178) - 🛠️ Model management issues caused by excessively long model IDs are now prevented through validation that limits model IDs to 256 characters. [#&#8203;18125](https://github.com/open-webui/open-webui/issues/18125) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi40MS4wIiwidXBkYXRlZEluVmVyIjoiNDIuNDEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
aggarwalakshun added 1 commit 2025-12-09 21:36:10 +05:30
Update ghcr.io/open-webui/open-webui Docker tag to v0.6.41
Some checks failed
Validate Kubernetes Manifests / kubeconform (pull_request) Failing after 34s
4b4d970205
aggarwalakshun added 1 commit 2025-12-09 21:50:08 +05:30
Merge branch 'main' into renovate/ghcr.io-open-webui-open-webui-0.x
All checks were successful
Validate Kubernetes Manifests / kubeconform (pull_request) Successful in 35s
e6ac1569d1
aggarwalakshun merged commit e5e65f2060 into main 2025-12-09 21:50:54 +05:30
aggarwalakshun deleted branch renovate/ghcr.io-open-webui-open-webui-0.x 2025-12-09 21:50:54 +05:30
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: aggarwalakshun/k3s-at-home#193