246 Commits

Author SHA1 Message Date
Xubin Ren
ba0ba4749d feat(webui): add skills marketplace 2026-07-30 01:13:37 +08:00
chengyongru
129b74b4cf
feat(webui): track optimistic message delivery status (#5162) 2026-07-29 23:15:45 +08:00
chengyongru
019d7816a7
fix(webui): animate reasoning drawer transitions (#5143) 2026-07-28 19:13:16 +08:00
chengyongru
24a392b671
fix(webui): open threads at latest message (#5142) 2026-07-28 18:52:34 +08:00
chengyongru
76ab04ac48
fix(webui): keep streaming tail visible (#5140) 2026-07-28 18:18:44 +08:00
chengyongru
1faf0826f6 fix(webui): keep composer stable while scrolling 2026-07-28 17:13:47 +08:00
chengyongru
ae089aa3ae fix(webui): reconcile threads after browser resume 2026-07-28 16:25:08 +08:00
chengyongru
fa5d27696a fix(webui): rank skill autocomplete results 2026-07-28 11:36:10 +08:00
chengyongru
6bc454dab4
fix(webui): prevent composer resize scroll jitter (#5121) 2026-07-28 01:01:49 +08:00
chengyongru
b99e0f937e fix(webui): soften model selector emphasis 2026-07-27 23:13:14 +08:00
chengyongru
e819b7eea4 fix(webui): stabilize repeated model preset rows 2026-07-27 18:11:10 +08:00
chengyongru
281b4b7f0b
chore: remove expired v0.3.1 compatibility shims (#5106) 2026-07-27 13:53:04 +08:00
chengyongru
27a00c7a4f fix(webui): merge length recovery stream segments 2026-07-27 01:39:46 +08:00
chengyongru
be43a54570 fix(webui): prevent mobile thread overflow 2026-07-26 23:59:28 +08:00
chengyongru
ee93725e83
fix(webui): restore file edit diff display (#5096) 2026-07-26 19:05:53 +08:00
chengyongru
b0ef759e2c
Smooth WebUI streaming with state-driven viewport motion (#4696) 2026-07-26 00:18:24 +08:00
Xubin Ren
ac7b8cf4b4 fix(webui): preserve preset widths while switching 2026-07-25 15:46:46 +08:00
Xubin Ren
88cb22dd79 fix(webui): show full model preset labels 2026-07-25 15:46:46 +08:00
chengyongru
d3e4b35f2b
fix(webui): honor custom gateway port with Vite (#5076) 2026-07-24 18:40:09 +08:00
chengyongru
5be176a6a0
feat(webui): switch model presets from the composer (#5077) 2026-07-24 17:34:26 +08:00
chengyongru
9957de5226
fix(webui): show quoted context after follow-up send (#5071) 2026-07-24 14:19:33 +08:00
chengyongru
6a9157f477 feat(webui): present chats as topics 2026-07-24 10:29:13 +08:00
chengyongru
aae259c790
feat(webui): simplify model preset settings (#5061) 2026-07-24 00:55:06 +08:00
Xubin Ren
754f457a94 fix(webui): keep composer model badge in sync 2026-07-23 23:11:40 +08:00
chengyongru
6c0f151f6e fix(webui): polish responsive layout 2026-07-23 18:22:02 +08:00
chengyongru
96eb965aae
feat(webui): show the actual fallback model (#5017) 2026-07-23 15:57:13 +08:00
chengyongru
9cf2fb19c2
feat(xai): surface hosted X Search activity (#5050) 2026-07-23 13:42:09 +08:00
Xubin Ren
8bd951a06f test(image): update model picker assertion 2026-07-23 12:42:24 +08:00
Xubin Ren
e875f29185 fix(image): allow custom model ids 2026-07-23 12:42:24 +08:00
Xubin Ren
1616fa9f14 feat(image): apply generation settings live 2026-07-23 12:42:24 +08:00
chengyongru
c7393c785e
feat(providers): add xAI Grok OAuth with capability-gated X Search (#5035) 2026-07-23 11:55:16 +08:00
chengyongru
c22efb5f7a
feat(agent): make model presets session-scoped (#4866) 2026-07-23 00:38:49 +08:00
Xubin Ren
aa8387fb4d feat(webui): polish agent output and app discovery 2026-07-22 22:42:31 +08:00
chengyongru
4cd6eb6c38 fix(webui): avoid mobile welcome composer overlap 2026-07-22 15:55:09 +08:00
chengyongru
96abb4d2c4
style(webui): clarify surface hierarchy (#5029) 2026-07-22 14:33:58 +08:00
chengyongru
63bc6e98a7
fix(webui): detect Chrome voice recording support (#5027) 2026-07-22 14:10:09 +08:00
chengyongru
7bf7469d90
feat(webui): show pin indicators for pinned chats (#5025) 2026-07-22 11:47:45 +08:00
chengyongru
b32d673ead fix(webui): decouple skill reference rendering 2026-07-21 22:56:04 +08:00
chengyongru
79b89f4f4c feat(webui): highlight skill references in sent messages 2026-07-21 22:56:04 +08:00
chengyongru
93571149db fix(webui): prioritize skill names in autocomplete 2026-07-21 15:19:38 +08:00
chengyongru
052f671b3c fix(webui): keep Markdown table diffs inline 2026-07-21 15:16:12 +08:00
chengyongru
76f3eead42
style(webui): simplify Markdown code blocks (#5002) 2026-07-20 14:41:23 +08:00
chengyongru
949cfad548 fix(webui): show copy action on every assistant message 2026-07-20 13:51:53 +08:00
chengyongru
462a0dfb0f
refactor(channels): make built-in channels self-contained (#4908)
* refactor(channels): own setup and instance contracts

* refactor(channels): isolate management contracts

* refactor(channels): normalize activation contracts

* fix(channels): enforce management contracts

* refactor(channels): finish setup ownership migration

* fix(channels): harden management contracts

* fix(channels): enforce lazy loading and runtime ownership

* fix(feishu): make multi-instance startup idempotent

* fix(webui): render channel setup contracts cleanly

* fix(feishu): stop websocket clients cleanly

* fix(channels): enforce persistence and activation gates

* fix(channels): preserve global feature action scope

* fix(channels): apply defaults for single plugins

* fix(channels): enforce management contract boundaries

* refactor(feishu): remove identity helper indirection

* fix(channels): preserve management setup contracts

* refactor(channels): generalize instance settings UI

* refactor(channels): package channel plugins with web UI metadata

* refactor(channels): make built-ins self-contained packages

* test(channels): colocate tests with channel packages

* fix(dingtalk): use official brand icon

* feat(channels): colocate webui translations

* docs(channels): clarify plugin ownership

* test(exec): remove output wait race

* refactor(channels): unify plugin descriptors

* fix(channels): enforce descriptor-owned contracts

* refactor(channels): finish package-owned plugin setup

* refactor(channels): use repository-owned packages only

* fix(channels): self-describe dependencies and runtime state

* fix(channels): warn about legacy entry points
2026-07-19 23:30:49 +08:00
bingqilinweimaotai
8c68c6fe1e feat: support Kimi K3 2026-07-18 17:38:32 +08:00
Xubin Ren
b4adb29c2b feat(webui): support native folder picker bridges 2026-07-17 12:26:03 +08:00
chengyongru
ba86dccc8d
fix(webui): correct activity timer duration (#4649) 2026-07-15 16:46:05 +08:00
chengyongru
5ed28a6744
fix(webui): validate inferred file paths before preview (#4935) 2026-07-15 10:45:40 +08:00
chengyongru
37165b0db0
feat(webui): highlight slash commands and app mentions (#4933) 2026-07-15 00:34:22 +08:00
chengyongru
2116e32013 test: speed up CI and harden the suite 2026-07-15 00:18:37 +08:00