Commit graph

7346 commits

Author SHA1 Message Date
G30
a5bc78300e
fix: open the highlighted chat when Enter is pressed in the search dialog (#31004) 2026-09-30 20:16:50 +04:00
G30
b857eb8267
fix: find read-only shared notes when searching the chat's note picker (#30968) 2026-09-30 20:03:01 +04:00
G30
6e3ad226ba
fix: report invalid image Additional Parameters JSON instead of leaving Save spinning (#31382) 2026-09-30 20:01:42 +04:00
G30
e924fa7b50
fix: re-enable the connection dialog's Save after an invalid Headers error (#31378) 2026-09-30 20:01:21 +04:00
G30
afeab2e2a7
fix: clear a pending channel reply when switching to another channel (#31376) 2026-09-30 19:59:32 +04:00
Classic298
c7caa1421d
fix: tool HTML embeds vanish when the HTML contains entities like " (#31390)
Tools that return inline HTML showed no embed at all when the HTML contained an entity such as `"` or `"`, and HTML containing `&` or `<` showed up with those turned into real characters. The chat view unescaped HTML entities in a tool's embeds, arguments and file links, which is only right for chats saved by older versions, so on current chats it changed the tool's own HTML before displaying it. Embeds, tool arguments and file links now show exactly what the tool returned, and older chats render as before.

Fixes #28085
2026-09-30 19:50:11 +04:00
Classic298
d09ab78fce
fix: typing with an input method breaks in the empty chat input while a follow-up suggestion is shown (#31393)
After a reply, the first suggested follow-up question sits as grey ghost text in the empty chat input. Typing into it with an input method (Chinese, Japanese or Korean) broke the word being composed: on iOS the input lost focus after the first character, and in Chromium the first letter was left behind, so typing "ni" and picking "你" gave "n你". Clearing the ghost text rebuilt the input's line of text while the keyboard was still composing the word. The ghost text is now drawn over the empty input without being written into it, so input methods work again, and Tab to accept it and the follow-up buttons under the reply behave as before.

Fixes #31372
2026-09-30 19:49:49 +04:00
G30
e276d33352
fix: keep a note's pasted images when the note is rebuilt from HTML (#31513) 2026-09-30 19:47:05 +04:00
Classic298
32e532b459
fix: copy last code block shortcut copies the Artifacts pane instead of the last code block (#31613)
With the Artifacts pane open, the Copy Last Code Block shortcut put the pane's full HTML document on the clipboard instead of the last code block in the chat. The pane opens on its own whenever a reply contains an HTML block, so the shortcut was wrong in every such chat.

The shortcut clicks the last Copy button of chat code blocks on the page, and the Artifacts Copy button carried the same marker class. The pane renders after the messages, so it always won. The marker class is now removed from the Artifacts button. It had no styling attached, so the button looks and works as before.

Fixes #31476
2026-09-30 19:43:24 +04:00
G30
3d46a59b2d
fix: turn a large channel paste into a file when Paste Large Text as File is on (#31366) 2026-09-30 19:42:46 +04:00
Classic298
2f6addf351
fix: new chat from the search dialog cuts off or changes text containing #, & or + (#31592)
Starting a new chat from the search dialog with "Start a new conversation" sent a different message than the one typed: everything from a # or & onwards was dropped and + turned into a space. The typed text now reaches the new chat unchanged.

Fixes #31469
2026-09-30 19:35:38 +04:00
G30
e5b57540f6
fix: use the moved chat's pinned state when a folder chat is dropped on Chats or Pinned (#31368) 2026-09-30 19:33:19 +04:00
G30
8600ab9fa7
fix: keep a table cell's line breaks inside its row when converting to Markdown (#31539) 2026-09-30 19:25:38 +04:00
G30
5338aeca89
fix: render tilde-fenced code blocks as code blocks (#31543) 2026-09-30 19:25:01 +04:00
Classic298
8b1ae1d331
fix: renaming a folder with Enter saves it twice (#31584)
Renaming a folder in the sidebar and pressing Enter sent the rename to the server twice and showed "Folder updated successfully" twice, because Enter saved the name and closing the text field saved it again. Enter now just closes the text field, which saves the new name once and shows one confirmation.

Fixes #31582
2026-09-30 19:10:48 +04:00
Classic298
e26da43076
fix: automation still shows "Last run Never" after "Run now" (#31583)
* fix: automation still shows "Last run Never" after "Run now"

Running an automation with "Run now" added the run to its history, but the automation page and the Automations list kept showing "Last run Never" (or the time of the last scheduled run). Only scheduled runs recorded a last run time. A manual run now records it too, so the automation page and the Automations list show the time of the run you just started.

Fixes #31580

* fix: show the new last run time right after Run now

The automation page now takes the automation the server returns after Run now, so the last run time updates on the spot and no reload is needed.
2026-09-30 19:01:42 +04:00
G30
176d31d1db
fix: turn Code Interpreter off when opening another chat from the sidebar (#31500)
Some checks are pending
Python CI / Ruff Format (3.11) (push) Waiting to run
Python CI / Ruff Format (3.12) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args: free_disk:false name:main suffix:]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_CUDA=true USE_CUDA_VER=cu126 free_disk:true name:cuda126 suffix:-cuda126]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_CUDA=true free_disk:true name:cuda suffix:-cuda]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_OLLAMA=true free_disk:false name:ollama suffix:-ollama]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_SLIM=true free_disk:false name:slim suffix:-slim]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args: free_disk:false name:main suffix:]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_CUDA=true USE_CUDA_VER=cu126 free_disk:true name:cuda126 suffix:-cuda126]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_CUDA=true free_disk:true name:cuda suffix:-cuda]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_OLLAMA=true free_disk:false name:ollama suffix:-ollama]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_SLIM=true free_disk:false name:slim suffix:-slim]) (push) Waiting to run
Create and publish Docker images with specific build args / merge (map[name:cuda suffix:-cuda]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:cuda126 suffix:-cuda126]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:main suffix:]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:ollama suffix:-ollama]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:slim suffix:-slim]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / notify-helm-charts (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (, main) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-cuda, cuda) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-cuda126, cuda126) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-slim, slim) (push) Blocked by required conditions
Frontend Build / Format & Build (push) Waiting to run
Frontend Build / Unit Tests (push) Waiting to run
Create and publish Docker images with specific build args / copy-to-dockerhub (-ollama, ollama) (push) Blocked by required conditions
2026-09-28 07:59:54 +04:00
Classic298
8667dd7121
fix: actions in a model's menu in the model selector do nothing (#31503)
Picking Edit, Keep in Sidebar, Copy Link or Delete from the menu next to a model in the model selector did nothing: the selector closed and the action never ran. These actions work again. Edit and Delete now also close the selector, so the first click in the settings window or the delete confirmation that opens is not lost.
2026-09-28 06:16:07 +04:00
G30
c8a3e10e13
fix: let Enter through when the message box's suggestion list has nothing to show (#31506) 2026-09-28 06:15:56 +04:00
Timothy Jaeryang Baek
82b5181372 refac 2026-09-28 06:15:24 +04:00
Classic298
ef67cc3fac
fix: first click in a dialog opened from a menu does nothing (#31496)
Some checks are pending
Python CI / Ruff Format (3.11) (push) Waiting to run
Python CI / Ruff Format (3.12) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args: free_disk:false name:main suffix:]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_CUDA=true USE_CUDA_VER=cu126 free_disk:true name:cuda126 suffix:-cuda126]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_CUDA=true free_disk:true name:cuda suffix:-cuda]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_OLLAMA=true free_disk:false name:ollama suffix:-ollama]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_SLIM=true free_disk:false name:slim suffix:-slim]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args: free_disk:false name:main suffix:]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_CUDA=true USE_CUDA_VER=cu126 free_disk:true name:cuda126 suffix:-cuda126]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_CUDA=true free_disk:true name:cuda suffix:-cuda]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_OLLAMA=true free_disk:false name:ollama suffix:-ollama]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_SLIM=true free_disk:false name:slim suffix:-slim]) (push) Waiting to run
Create and publish Docker images with specific build args / merge (map[name:cuda suffix:-cuda]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:cuda126 suffix:-cuda126]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:main suffix:]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:ollama suffix:-ollama]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:slim suffix:-slim]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / notify-helm-charts (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (, main) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-cuda, cuda) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-cuda126, cuda126) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-ollama, ollama) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-slim, slim) (push) Blocked by required conditions
Frontend Build / Unit Tests (push) Waiting to run
Frontend Build / Format & Build (push) Waiting to run
The chat header menu, the folder menu, the note menu, the knowledge Add Content and folder row menus and the Actions menus in Models, Archived Chats and Personalization stayed open behind the dialog they opened, so the first click inside that dialog only closed the menu. These menus now close when an item is picked, like the sidebar chat menu. The note menu's Formatting switch, the chat tags and submenus such as Download still keep the menu open.

Fixes #31493
2026-09-28 01:52:26 +04:00
Classic298
b6f9679985
refac: only open web, mail, phone and relative file links (#31491)
File attachment links and the file links in code execution results now go through the same link check as links in chat messages, so only web, mail, phone and relative links are opened.
2026-09-28 01:52:15 +04:00
Timothy Jaeryang Baek
fdae17f8a6 refac 2026-09-28 00:14:36 +04:00
Classic298
0082c153f5
fix: first click in a chat's Share or Delete dialog does nothing (#31488)
Choosing Share or Delete from a chat's menu in the sidebar left the menu open behind the dialog, so the first click inside the dialog only closed the menu behind it. Copy Link and Confirm had to be clicked twice. Share and Delete now close the menu before opening their dialog, like Rename, Pin and Clone already do.

Fixes #31486
2026-09-28 00:04:16 +04:00
Timothy Jaeryang Baek
bc2416c5db refac 2026-09-27 23:29:38 +04:00
Timothy Jaeryang Baek
19957bc19b refac 2026-09-27 23:23:24 +04:00
Timothy Jaeryang Baek
332237662f refac 2026-09-27 23:18:46 +04:00
G30
efe63bd34a
fix: clamp the artifacts pane's version when an artifact is removed (#30435) 2026-09-27 23:15:24 +04:00
Timothy Jaeryang Baek
8fc416ee78 refac 2026-09-27 23:15:13 +04:00
Classic298
6e5e5fe6e9
feat: add a Tavily search depth setting (#31308)
Tavily web search always ran at Tavily's default depth (basic), because the search request never sent `search_depth`. The only Tavily depth control in Admin > Settings > Web Search, "Tavily Extract Depth", applies to the Extract API used by the web loader, never to search.

This adds `TAVILY_SEARCH_DEPTH` (env var and persisted setting, default `basic`) and a "Tavily Search Depth" select (ultra-fast, fast, basic, advanced) under the Tavily search engine settings. The value is sent as `search_depth` on every Tavily search request, so admins can set search and extract depth independently, for example fast search with advanced extraction.

The default matches Tavily's own default, so existing setups keep the same behaviour until the setting is changed.

Fixes #29891
2026-09-27 23:15:09 +04:00
Classic298
e26b2edaa4
fix: Share dialog says anyone with the URL can view a new link, but it starts private (#31420)
Before a share link exists, the Share dialog tells users that anyone with the URL will be able to view the chat. A new link is actually private: only its owner and admins can open it until the access is changed to Public or Open, or specific users or groups are added. The text now says the link stays private until you choose who can view it, which matches how sharing works and what the docs describe.

Fixes #31417
2026-09-27 23:10:05 +04:00
Timothy Jaeryang Baek
b39abad5c2 refac 2026-09-27 23:07:52 +04:00
G30
b233d0d94b
fix: paste the clipboard as is for {{CLIPBOARD}}, keeping dollar signs (#31364) 2026-09-26 07:28:02 +04:00
G30
6fdbe3ab67
fix: move a calendar event's end with its date instead of keeping the old end date (#31303) 2026-09-26 07:27:40 +04:00
G30
f8e15f92d1
fix: check the external loader headers whenever they are set, so Save reports the error (#30434) 2026-09-26 07:26:43 +04:00
G30
301aa8c5bd
fix: clear the Add Connection form's advanced fields after a connection is added (#30958) 2026-09-26 07:26:34 +04:00
G30
693f666c69
fix: start a reply saved as a copy without the original's rating (#30962) 2026-09-26 07:26:27 +04:00
G30
ffa6bb17cd
fix: refresh the skill list used in chat after turning a skill on or off (#30966) 2026-09-26 07:26:19 +04:00
Classic298
c402acb404
fix: skills picked from the / menu are not applied to the reply (#31429)
Picking a skill from the / menu in the chat input inserted it as an @ mention, so the skill was never loaded and its raw tag ended up in the message the model received. Picking the same skill from the $ menu worked. A skill chosen through / is now sent the same way as through $ and gets applied.

Fixes #29978
2026-09-26 07:19:56 +04:00
G30
0663009694
fix: include pasted images when exporting a note as PDF (#30975) 2026-09-25 00:15:12 -04:00
G30
9630717680
fix: show the stored authentication settings after a value is refused (#30433) 2026-09-25 00:13:49 -04:00
G30
2c922bb537
fix: let a chat's Stream Chat Response setting override the account-wide one (#31362) 2026-09-25 00:08:56 -04:00
G30
db697c7e61
fix: skip the blank last line of a user CSV import (#31374) 2026-09-25 00:08:49 -04:00
G30
06bc8cb91e
fix: honor Ctrl+Enter to Send in the channel message input (#31319) 2026-09-25 00:06:21 -04:00
G30
da36d149b0
fix: reject a folder name made only of spaces instead of saving it blank (#31380) 2026-09-24 23:59:27 -04:00
G30
0864f8b2d6
fix: save the removal of a direct connection (#31384) 2026-09-24 23:58:20 -04:00
G30
893251ed11
fix: show the new share link's own access after the old link is deleted (#31037) 2026-09-24 12:11:24 -04:00
G30
bbfa876afd
fix: stop the token and API key copy buttons from saving the account form (#30956) 2026-09-24 00:15:30 -04:00
Timothy Jaeryang Baek
ff89756b6d refac 2026-09-24 00:14:58 -04:00
Classic298
e6e9fc9721
fix: keep the composer's + and Integrations buttons visible at larger UI Scale on mobile (#30374)
On a phone with UI Scale at 1.2x or higher, the model selector in the chat composer covers the Integrations button, so it cannot be seen or tapped. From 1.3x it covers the + button too, which leaves no way to attach files or open integrations.

The model selector's width cap is rem based, so it grows with UI Scale, and the left button group could shrink to nothing, so the selector took the space first. The + and Integrations buttons now sit in a group that keeps its width, and only the toggled chips stay in the scrolling strip. When space runs out the model name truncates, and chips scroll as before.

Measured in the real app at a 360px mobile viewport: before, Integrations is covered at 1.2x and both buttons at 1.3x and 1.5x; after, both are tappable at every scale, with the model name truncated (114px at 1.3x). Button positions at 1x and on desktop are unchanged to the pixel, with and without chips.

Fixes #29989
2026-09-23 23:08:48 -05:00