20706 Commits
Author SHA1 Message Date
Timothy Jaeryang Baek 2fdf4ce6b9 refac 2026-11-14 19:53:09 +09:00
G30andGitHub 32243bdf70 fix: Esc and Ctrl+Enter in a channel message's edit box act on that edit box (#34326) 2026-11-14 14:31:05 +09:00
Timothy Jaeryang Baek a6f9d84a6a refac 2026-11-14 14:30:47 +09:00
G30andGitHub fbbe2f8f3e fix: the tag box keeps the cursor after a tag is added or changed (#34410) 2026-11-14 14:28:53 +09:00
Timothy Jaeryang Baek d7b3d08b4f refac 2026-11-14 14:16:19 +09:00
G30andGitHub c1faae570b fix: Mark all as read in the folder tab's menu marks the folder's chats as read (#34404) 2026-11-14 08:28:29 +09:00
Timothy Jaeryang Baek c0bd0cb34f refac 2026-11-14 07:54:22 +09:00
G30andGitHub 52f44caf87 fix: the open folder page follows a rename, move or Mark all as read done in the sidebar (#34388) 2026-11-14 06:44:57 +09:00
G30andGitHub 0cce86d535 fix: a tag's chosen color shows in a folder's filter menu, group headers and board columns (#34390) 2026-11-14 06:41:02 +09:00
Classic298andGitHub 7a73f1960f fix: terminal files fail to load on a Tether reconnect instead of being retried (#34396)
When the computer connected through Tether reconnected while the terminal's files panel was loading its working folder, a folder listing or a file, the load failed with "Tether connection interrupted". Reads like these are meant to be retried once Tether is back. They never were, because each of them went out with an empty upload attached, and an upload cannot be sent a second time. Requests with nothing to upload now go without one, so these reads are retried on the new connection. Uploads work as before.

Fixes #34394
2026-11-14 06:40:44 +09:00
G30andGitHub d34a0d62ea fix: text typed on a folder page survives a switch to Automations and back (#34401) 2026-11-14 06:40:16 +09:00
Timothy Jaeryang Baek 071e20f98a refac 2026-11-14 04:37:12 +09:00
Timothy Jaeryang Baek 9723b3a6ae refac 2026-11-14 04:37:08 +09:00
Timothy Jaeryang Baek 91f16464bb refac 2026-11-14 01:22:54 +09:00
Timothy Jaeryang Baek 694dc9796c refac 2026-11-14 01:15:47 +09:00
Timothy Jaeryang Baek 485103cdef refac 2026-11-14 00:54:19 +09:00
Timothy Jaeryang Baek 6378f94a65 refac 2026-11-14 00:45:43 +09:00
Timothy Jaeryang Baek 121bc0ec50 refac 2026-11-14 00:14:28 +09:00
Timothy Jaeryang Baek f1d735d807 refac 2026-11-13 23:50:28 +09:00
Timothy Jaeryang Baek 1890952996 refac 2026-11-13 23:42:26 +09:00
G30andGitHub 4acf39ec28 fix: deleting a channel, note or automation closes its open tab (#34291) 2026-11-13 23:25:08 +09:00
G30andGitHub 9180f1e208 fix: deleting a chat closes the tabs that show it (#34229) 2026-11-13 23:21:54 +09:00
Timothy Jaeryang Baek d25cb600fe refac 2026-11-13 23:20:31 +09:00
Timothy Jaeryang Baek 5c01eac764 refac 2026-11-13 23:15:31 +09:00
Timothy Jaeryang Baek 747af24b0d refac 2026-11-13 23:05:49 +09:00
Timothy Jaeryang Baek 95d98ac40b refac 2026-11-13 23:03:46 +09:00
Classic298andGitHub 2eb3be33db fix: a new side chat is named "New Chat" instead of its first message (#34368)
Since a recent dev change, sending the first message of a new side chat saved it as "New Chat". With automatic title generation off it kept that name on the side chat's tab and in the chat list; with it on, the name only changed once the generated title arrived. A new side chat is named after its first message again, and one whose first message is only a file, with no text, keeps "New Chat" as before.

Fixes #34366
2026-11-13 23:01:09 +09:00
Timothy Jaeryang Baek e22210796e refac 2026-11-13 22:59:48 +09:00
Timothy Jaeryang Baek b598efb4e7 refac 2026-11-13 22:55:21 +09:00
Timothy Jaeryang Baek d773f8fadc refac 2026-11-13 22:53:31 +09:00
Timothy Jaeryang Baek 941bf36742 refac 2026-11-13 22:49:36 +09:00
Timothy Jaeryang Baek 24b8bb0e68 refac 2026-11-13 22:47:48 +09:00
Timothy Jaeryang Baek 06491f0132 refac 2026-11-13 22:40:53 +09:00
Timothy Jaeryang Baek e4b969f606 refac 2026-11-13 19:44:00 +09:00
Timothy Jaeryang Baek 3bfc168d6c refac 2026-11-13 19:23:38 +09:00
Classic298andGitHub 8256fc722a fix: picking a model in a side chat leaves its message box without focus (#34195)
After picking a model from a side chat's model selector, the cursor did not go back to the side chat's message box, so anything typed next did not reach it until you clicked into the box again. In the main chat the cursor returns to the message box right away. Now the side chat does the same and the cursor lands in its own message box.

Fixes #34194
2026-11-13 19:05:41 +09:00
G30andGitHub 5e8f48a7e0 fix: the focus shortcut puts the cursor in the channel's message box (#34345) 2026-11-13 19:05:26 +09:00
Classic298andGitHub dd3a6ca1f6 fix: a saved chat opened in a tab beside a temporary chat cannot be rated (#34212)
With a temporary chat in the main view, a saved chat opened in a tab beside it was treated as temporary too, so its answers showed no Good Response and Bad Response buttons. The saved chat in the tab can now be rated, while a temporary chat, in the main view or in a tab, still offers none.

Fixes #34211
2026-11-13 19:05:13 +09:00
Timothy Jaeryang Baek bf0aa05a75 refac 2026-11-13 19:03:48 +09:00
G30andGitHub 44d2dd3d52 feat: deleting an account removes the access grants that name it (#34223) 2026-11-13 19:03:00 +09:00
Timothy Jaeryang Baek c0b90785ea refac 2026-11-13 18:53:46 +09:00
G30andGitHub ddc31ebbbc fix: Esc and Ctrl+Enter in a message edit box act on that edit box (#34321) 2026-11-13 18:39:53 +09:00
Classic298andGitHub 65766f18a5 fix: "Open in new tab" beside a port on the Browser tab's start page opens "404: Not Found" (#34120)
* fix: "Open in new tab" beside a port on the Browser tab's start page opens "404: Not Found"

A chat's Browser tab (New tab > Browser) lists the servers running in the terminal under Ports before any page is open. The "Open in new tab" button beside each port opened a wrong address on the Open WebUI server, so the web browser's new tab showed "404: Not Found". It now opens the server running on that port, the same page you get by clicking the port inside the Browser tab, also for Per chat terminals.

Fixes #34108

* fix: keep "Open in new tab" beside a port working after a page reload

The address for the port now comes from the tab's terminal each time the Browser tab is shown, so a Browser tab restored after a reload no longer opens a 404. Terminals set to Per chat keep their chat in the address.
2026-11-13 18:37:52 +09:00
G30andGitHub 68e5c2edf6 fix: a chat's hover preview no longer opens over an open chat menu (#34231) 2026-11-13 18:37:31 +09:00
Classic298andGitHub 038832492b fix: local speech-to-text fails on new pip installs (#34280)
On a fresh pip install, local Whisper failed on every transcription with "open() got an unexpected keyword argument 'metadata_errors'", because PyAV 19 dropped an option that faster-whisper still passes when it reads audio. The Docker image was never affected, since it already pins PyAV to 14.0.1. The pip package now pins the same version, so new installs transcribe again. Checked on a clean Python 3.12 environment: a faster-whisper transcription fails with PyAV 19 and works with 14.0.1.

Fixes #34278
2026-11-13 18:37:15 +09:00
Classic298andGitHub 4c4ec42966 fix: Playwright web loader drops definition lists and figure captions from a page (#34282)
With the Playwright web loader, the text inside definition lists and figures never reached the model. Reference pages that document each function or option as a term with its description, like the Python standard library docs, loaded without those entries, and figures lost their captions and any table inside them. The loader now keeps this text, as the default web loader already did.

Fixes #34281
2026-11-13 18:36:41 +09:00
Timothy Jaeryang Baek 389af8783c refac 2026-11-13 18:35:38 +09:00
Classic298andGitHub 80478abea1 fix: assistant messages with only tool calls are sent with an empty string instead of null (#34265)
When an assistant message has tool calls but no text, the OpenAI Chat Completions format uses `content: null`, since content is optional next to tool calls and OpenAI's own API returns null there. Open WebUI sent an empty string in two places: when replaying earlier tool calls from the chat history, and when converting requests from clients that use its Anthropic-compatible endpoint. For Claude models, LiteLLM 1.81.14 through 1.108.x replaces that empty string with "[System: Empty message content sanitised to satisfy protocol]", and the model then repeats that line in its replies (LiteLLM 1.109 and later leave the empty text out instead). These messages now go out with null content, which OpenAI and every provider tested on OpenRouter (Gemini, Claude, DeepSeek, Qwen, Mistral, Llama, Kimi and Grok) accept.

Fixes #34264
2026-11-13 18:26:08 +09:00
G30andGitHub bb1305d522 fix: on a phone, opening a folder from the Admin Panel closes the sidebar (#34338) 2026-11-13 18:08:05 +09:00
G30andGitHub cfe0ca0f6b fix: a note or channel link in a chat message opens beside the chat instead of replacing it (#34302) 2026-11-13 18:07:54 +09:00