chengyongru and GitHub
aae259c790
feat(webui): simplify model preset settings ( #5061 )
2026-07-24 00:55:06 +08:00
Xubin Ren
2f4f00bb9f
refactor(image): reuse the model picker
2026-07-23 12:42:24 +08:00
chengyongru and GitHub
c7393c785e
feat(providers): add xAI Grok OAuth with capability-gated X Search ( #5035 )
2026-07-23 11:55:16 +08:00
chengyongru and GitHub
c22efb5f7a
feat(agent): make model presets session-scoped ( #4866 )
2026-07-23 00:38:49 +08:00
chengyongru and chengyongru
dfc3919b52
fix: stop masking runtime failures
2026-07-21 11:44:52 +08:00
bingqilinweimaotai and Xubin Ren
8c68c6fe1e
feat: support Kimi K3
2026-07-18 17:38:32 +08:00
chengyongru and GitHub
234e895e5a
fix(codex): align OAuth defaults and setup docs ( #4910 )
...
* fix(codex): align OAuth defaults and setup docs
* docs(codex): clarify provider settings key
* docs(codex): simplify OAuth setup guidance
2026-07-13 17:04:33 +08:00
Xubin Ren and GitHub
fe0717b385
feat(webui): add guided setup flows
...
* feat(channels): add guided setup flows
* test(channels): preserve setup config values
* fix(channels): reflect saved setup state
* refactor(channels): simplify setup state metadata
* fix(channels): harden setup lifecycle
* refactor(channels): centralize setup contracts
* fix(channels): route setup actions through webui shim
* fix(channels): adapt settings for compact screens
* fix(models): preserve default preset display
* feat(models): add curated Codex catalog
* fix(webui): stop attached gateway on interrupt
* fix(webui): simplify apps catalog
* docs(webui): clarify apps and runtime features
* feat(settings): add guided capability setup
* fix(webui): harden setup and managed services
* test: keep managed runtime checks portable
* test: scope POSIX runtime coverage
* fix(webui): simplify file settings
* feat(files): bundle document reading
* fix(webui): harden setup request boundaries
* fix(webui): prevent channel setup status squeeze
* fix(settings): group provider compatibility aliases
* refactor(settings): remove redundant setup surfaces
* fix(webui): harden guided setup lifecycle
* fix(webui): preserve channel setup compatibility
2026-07-13 13:11:46 +08:00
Xubin Ren
e725649146
test(webui): cover OAuth kit missing errors
2026-07-06 12:11:03 +08:00
chengyongru and Xubin Ren
8d2c31eb6a
refactor(webui): derive provider model catalog kind
2026-07-01 12:59:06 +08:00
chengyongru and Xubin Ren
44a5ed1bc0
feat(providers): support provider-scoped proxy config
2026-06-30 17:33:36 +08:00
chengyongru and Xubin Ren
0db9fbe250
chore: default context window to 200k
2026-06-22 18:33:49 +08:00
chengyongru and Xubin Ren
1cd5a0e029
fix: keep refreshable Codex OAuth configured
...
maintainer edit: Settings reads local Codex token storage to avoid refresh work, so expired access tokens with refresh credentials still need to count as configured until real provider use refreshes them.
2026-06-22 17:14:13 +08:00
chengyongru and Xubin Ren
7b153c5aa9
Avoid refreshing Codex token in settings
2026-06-22 17:14:13 +08:00
Xubin Ren
d30f3d466d
fix(webui): allow optional Keenable search key
2026-06-21 15:22:13 +08:00
chengyongru and Xubin Ren
09d24e6c25
fix: validate named custom provider endpoints
2026-06-13 00:04:13 +08:00
chengyongru and Xubin Ren
57ced7930d
refactor: simplify dynamic provider settings tests
...
maintainer edit: keep the WebUI dynamic-provider behavior unchanged while reducing repeated test setup and tightening the small dynamic-provider helper.
2026-06-13 00:04:13 +08:00
chengyongru and Xubin Ren
37ae655fa6
fix: expose dynamic custom providers in WebUI settings
...
maintainer edit: WebUI settings still treated non-registry custom providers as unknown, so users could not select them in model configurations or fetch their model list. Reuse dynamic provider specs for settings payloads, model-list requests, and provider updates.
2026-06-13 00:04:13 +08:00
Xubin Ren
b8a4ceb30c
test(webui): cover siliconflow transcription settings
2026-06-10 23:05:12 +08:00
chengyongru and Xubin Ren
dadb35af49
feat(exec): add path prepend config
2026-06-10 18:09:57 +08:00
comadreja and Xubin Ren
f3eb2aa08b
feat(transcription): add AssemblyAI as transcription provider
...
Add AssemblyAI as a third transcription provider option alongside
OpenAI and Groq. AssemblyAI offers better accuracy for certain
audio types (distant voices, noisy environments) and serves as a
reliable fallback when other providers struggle.
Changes:
- Add AssemblyAITranscriptionProvider class in providers/transcription.py
- Add 'assemblyai' option in base channel's transcribe_audio()
- Per-channel configuration via transcriptionProvider in config
Usage:
Set transcriptionProvider: 'assemblyai' and provide an AssemblyAI
API key via transcriptionApiKey in the channel config.
2026-06-09 05:33:18 +08:00
c20ecc52d7
feat(transcription): add Xiaomi MiMo ASR provider (mimo-v2.5-asr)
...
Add support for Xiaomi MiMo ASR as a third transcription backend alongside
Groq and OpenAI Whisper. Xiaomi ASR uses the /v1/chat/completions endpoint
with base64-encoded audio input, rather than the standard Whisper multipart
upload format.
Co-Authored-By:连 <lian@tangping.homes >
2026-06-09 04:29:09 +08:00
0eb3010e40
feat(transcription): configurable STT model + OpenRouter provider
...
Add a `transcriptionModel` channel setting and an OpenRouter transcription
backend so voice messages can be transcribed through OpenRouter's
speech-to-text endpoint (e.g. nvidia/parakeet-tdt-0.6b-v3, openai/whisper-1),
alongside the existing Groq/OpenAI Whisper providers.
- schema: add channels.transcriptionModel (None = provider default)
- providers/transcription: extract a shared POST/retry skeleton; add a
JSON+base64 OpenRouterTranscriptionProvider; make the STT model a
constructor param on all providers instead of hardcoding it
- channels: route transcriptionProvider="openrouter" and thread the model
through the manager to each channel
- docs + tests
Only dedicated STT models work on OpenRouter's transcription endpoint;
chat LLMs (e.g. google/gemini-3.5-flash) are rejected there.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 04:01:37 +08:00
Xubin Ren and GitHub
9c81280300
feat(transcription): add shared voice input support ( #4232 )
...
* feat(webui): add voice transcription input
* feat(webui): render ANSI output in code blocks
* refactor(webui): isolate voice recorder logic
* refactor(transcription): keep websocket ingress thin
* refactor(transcription): resolve channel audio settings on demand
* style(webui): neutralize voice waveform color
* feat(webui): add voice input tooltip
* feat(webui): add voice input keyboard shortcut
* fix(webui): distinguish voice shortcut platforms
* fix(webui): place voice button after model selector
* refactor(webui): share voice hold recording helpers
* fix(desktop): allow microphone voice input
* fix(webui): stabilize token usage month labels
* feat(webui): show voice input on settings overview
* fix(webui): label voice capability as recognition
* fix(webui): align capability overview status
* refactor(webui): isolate transcription socket handling
* fix(webui): soften silent voice waveform
* refactor(audio): clarify transcription service location
* docs(transcription): clarify audio and provider boundaries
* fix(exec): reduce session output polling flake
2026-06-09 01:08:49 +08:00
ab9f49970d
feat(desktop): polish desktop shell and shared WebUI surfaces ( #4195 )
...
* feat(desktop): add native host scaffold
* feat(webui): track turns and usage in gateway
* feat(webui): polish desktop chat experience
* feat(apps): add ArcGIS and Joplin logos
* feat(desktop): polish shell and shared surfaces
* fix(webui): avoid preview chips for glob references
* test: align CI expectations for token fallback
* feat(webui): preview prompt rail entries
* feat(webui): add prompt navigator drawer
* style(webui): refine prompt navigator placement
* style(webui): align prompt navigator with header actions
* style(webui): simplify prompt navigator header
* refactor(webui): clean thread resource refresh
* feat(desktop): add native reply notifications
* fix(webui): preserve desktop restart and replay state
* fix(desktop): harden gateway proxy startup
* fix(web): fall back when readability is unavailable
* fix(desktop): hide window instead of closing on macos
* fix(webui): unify desktop header actions
* fix(webui): simplify prompt history rows
* fix(desktop): log notification delivery failures
* chore(desktop): clean source package artifacts
* fix(cron): support one-time relative reminders
* fix(webui): reveal scroll button in place
* Revert "fix(cron): support one-time relative reminders"
This reverts commit 4c4661da120a3c7283e0768412bae48604e7390b.
* refactor(webui): extract token usage heatmap
* docs(desktop): clarify contributor guides
---------
Co-authored-by: chengyongru <2755839590@qq.com >
2026-06-06 19:49:33 +08:00
Kunal Karmakar and Xubin Ren
c849ff6eec
Address PR review comments
2026-06-05 01:17:34 +08:00
Xubin Ren and GitHub
3dcf511c84
feat(webui): refine output timeline and model controls ( #4108 )
...
* feat(webui): refine output timeline and composer queue
* feat(webui): add provider model picker
* fix(webui): polish model settings and heartbeat checks
* chore: keep heartbeat changes out of webui pr
* refactor(webui): isolate settings routes
* fix(providers): align minimax anthropic test
* fix(providers): keep minimax anthropic base sdk-compatible
* fix(providers): normalize anthropic base urls
2026-05-30 23:45:26 +08:00
Xubin Ren
404b68cdd4
feat(webui): add context window setting
2026-05-29 13:09:08 +08:00
Xubin Ren and GitHub
3a420136bb
feat(webui): add project workspaces and access controls ( #4007 )
...
* feat(webui): add project workspaces and access controls
* feat(webui): add project workspaces and access controls
* refactor(tools): centralize workspace access resolution
* refactor(webui): remove unused workspace host state
* fix(webui): hide estimated file edit label
* fix(webui): clarify file edit deletion feedback
* fix(webui): label deleted file activity
* fix(webui): flatten file edit activity rows
* fix(core): remove path-only patch deletion
* fix(core): keep apply patch non-destructive
* refactor(webui): trim workspace host plumbing
* fix(tools): register exec with tools config
2026-05-29 03:42:53 +08:00
Xubin Ren
704ac558f6
feat(mcp): add preset setup and capability mentions
2026-05-24 19:43:20 +08:00