chengyongru and Xubin Ren
b8abe5542c
Avoid blocking settings on CLI Apps catalog refresh
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
chengyongru and Xubin Ren
9b52202f4a
fix: make quick start rollback on websocket failure
...
maintainer edit: stage Quick Start edits on a draft config so declining WebSocket/password setup cannot leave saveable provider defaults behind. Align beginner WebUI docs with the password-protected setup.
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
9713fe2a3b
fix: avoid initial webui password error
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
9c7d1c9507
Use channel login in onboarding wizard
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
db68fc1c09
Use provider registry in quick start
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
f9f5a19910
Route WebUI quick start through channel config
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
0097488eed
Keep quick start channels opt-in
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
fc7971b3b6
Improve onboard wizard setup flow
2026-06-22 13:04:05 +08:00
chengyongru and Xubin Ren
dd4d410ce2
refactor(feishu): simplify table extraction
...
Maintainer edit: remove speculative recursive cell handling and keep table extraction to the documented columns and row values.
2026-06-19 17:16:04 +08:00
chengyongru and Xubin Ren
215379ac63
fix(feishu): extract table card rows
...
Maintainer edit: parse Feishu card table columns and rows so forwarded table cards do not fall back to [interactive], and add parser regression coverage.
2026-06-19 17:16:04 +08:00
chengyongru and Xubin Ren
2d86094fc7
ci: skip docs-only changes
2026-06-18 22:47:43 +08:00
chengyongru and Xubin Ren
8ca3f42a3b
docs: note feishu login URL fallback
...
maintainer edit: document that Feishu login prints a URL when optional terminal QR rendering is unavailable.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
71d0593b06
fix: render feishu login with rich
...
maintainer edit: replace plain progress prints with Rich output for the interactive Feishu QR login flow.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
04777bf6f1
fix: polish feishu login prompts
...
maintainer edit: make the Feishu QR login output read like a user flow instead of development logs.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
08a5f4cbbb
fix: keep feishu login URL unmodified
...
maintainer edit: remove nonessential tracking parameters from the Feishu QR login URL after the author confirmed the flow works without them.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
5dfdd4f892
fix: handle feishu login network errors
...
maintainer edit: keep QR login network failures on the expected failure path instead of crashing the channels login command.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
a56cd9710b
fix: simplify feishu QR login
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
99846da6f3
fix: trim feishu login path output
...
maintainer edit: remove leftover config-path printing from Feishu channel login while keeping the generic success message.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
cd51654bf1
fix: keep channel login generic
...
maintainer edit: remove the Feishu-specific config-file guard from the shared CLI login command. Feishu now follows the Weixin pattern where channel.login owns its setup and persistence.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
3d386f7b7e
fix: stabilize feishu login setup
...
maintainer edit: fix the lint failure, report the active config path, fail fast when the registration response lacks a login URL, and cover the new Feishu login writeback path.
2026-06-18 22:38:06 +08:00
chengyongru and Xubin Ren
42ce294665
fix: preserve internal tool write scopes
...
Maintainer edit: keep capability-specific allowed_dir boundaries active even when the outer workspace scope is full access, and cover Dream plus ordinary full-access filesystem behavior.
2026-06-18 00:03:26 +08:00
chengyongru and Xubin Ren
51f2dae855
refactor: trim unused filesystem allowlist state
...
maintainer edit: simplify the exact-file allowlist follow-up by removing unused read-side state and keeping the exact path helper private to workspace_policy.
2026-06-18 00:03:26 +08:00
chengyongru and Xubin Ren
15f218e918
fix: enforce exact Dream memory file writes
...
maintainer edit: Dream write tools used file paths as directory roots, so a missing canonical memory file could be treated as a parent directory. Add exact-file allowlist support and keep skills/ as the only Dream write directory.
2026-06-18 00:03:26 +08:00
chengyongru and Xubin Ren
732992df4f
Clarify filesystem workspace write policy
2026-06-18 00:03:26 +08:00
chengyongru and Xubin Ren
b46aac0554
refactor: trim model preset tool handling
...
maintainer edit: remove duplicate documentation and inline one-use formatting so the PR keeps the same behavior with less code.
2026-06-18 00:03:13 +08:00
chengyongru and Xubin Ren
ef6da0a94e
Fix my tool model preset switching
2026-06-18 00:03:13 +08:00
chengyongru and Xubin Ren
4219911423
fix: recover failed Feishu streaming updates
...
Feishu CardKit content updates can fail without raising, leaving a blank Generating card while the final streamed response skips normal send. Reopen streaming mode and retry once, close blank cards when the first update fails, and fall back to a regular card when final updates still fail.
2026-06-18 00:02:54 +08:00
chengyongru and Xubin Ren
8ecc2d69c4
fix: log primary model error before fallback
2026-06-18 00:02:49 +08:00
chengyongru and Xubin Ren
0d4af68e63
fix: silence unroutable cli progress noise
2026-06-18 00:02:45 +08:00
chengyongru and Xubin Ren
dcb33cf919
refactor: simplify token truncation loop
...
Maintainer edit: keep the strict token-budget behavior while removing the duplicate pre-loop result construction in the shared truncation helper.
2026-06-17 00:47:52 +08:00
chengyongru and Xubin Ren
072921893f
fix: reuse token truncation helper
...
Maintainer edit: make token truncation include the suffix within the budget and route the consolidator through the shared helper so recent-history and archive truncation keep the same semantics.
2026-06-17 00:47:52 +08:00
chengyongru
2b741ad4e5
fix(webui): align automation settings layout
...
Maintainer edit: reuse the same standalone SettingsView shell as Apps and Skills for Automations while keeping the automation queue height constrained.
2026-06-16 16:31:24 +08:00
chengyongru
e9f982785e
fix(webui): remove automation background layer
...
Maintainer edit: keep the automation workspace on the page background and remove the extra card-like backdrop that made the layout show square edges around the panels.
2026-06-16 16:24:35 +08:00
chengyongru
0263dbd1c3
chore: trim automation ui cleanup
2026-06-16 15:10:51 +08:00
chengyongru
3357dcc05f
docs: drop README change from automation PR
2026-06-16 14:37:30 +08:00
chengyongru
b24b5f19fc
fix(cron): always require bound automation sessions
2026-06-16 14:16:12 +08:00
chengyongru
6239114c46
fix(cron): prevent unbound automation execution
2026-06-16 14:07:08 +08:00
chengyongru
04545b95d9
fix(webui): refine automation styling and delete confirmation
2026-06-16 11:41:05 +08:00
chengyongru and Xubin Ren
27d869d3cc
fix(agent): refresh goal continuation context
2026-06-16 11:19:24 +08:00
chengyongru
201d442a85
fix(webui): soften automation manager styling
2026-06-16 11:07:48 +08:00
chengyongru
04387bf9e3
fix(webui): keep automation workspace within viewport
2026-06-16 10:08:50 +08:00
chengyongru
23e12b84ff
fix(webui): clarify automation search placeholder
2026-06-16 09:48:53 +08:00
chengyongru and Xubin Ren
3ce0cd972e
fix(session): keep auto compact suffix on user turn
2026-06-15 19:03:37 +08:00
chengyongru
03c79817ac
test(websocket): expect session refresh after turn end
2026-06-15 18:25:00 +08:00
chengyongru
153f2d9529
fix(webui): move automations after skills
2026-06-15 18:12:54 +08:00
chengyongru
848378d0db
Merge remote-tracking branch 'origin/main' into HEAD
...
# Conflicts:
# webui/src/components/settings/SettingsView.tsx
2026-06-15 18:11:22 +08:00
chengyongru
828759d1b6
fix(webui): hide settings kicker on automations
2026-06-15 18:08:44 +08:00
chengyongru
167a53dc45
fix(webui): sort sessions by transcript activity
2026-06-15 17:44:26 +08:00
chengyongru
cbb4c0bad2
fix(webui): polish automation layout and session updates
2026-06-15 17:30:06 +08:00
chengyongru
d7e73609d3
fix(webui): redesign automation management layout
2026-06-15 16:35:15 +08:00
chengyongru
0439ecb802
fix(webui): refine automation row layout
2026-06-15 15:41:35 +08:00
chengyongru
04496e9e28
fix(webui): improve automation edit message field
2026-06-15 15:22:01 +08:00
chengyongru
140c4fb49f
fix(webui): clarify automation anomaly labels
2026-06-15 15:17:38 +08:00
chengyongru
f8bf6aea51
fix(webui): encode automation update values
2026-06-15 15:14:24 +08:00
chengyongru and Xubin Ren
d72d0102d9
style: trim orphan toolcall comments
...
maintainer edit: keep the invariant comments in production code but remove repeated issue background from tests.
2026-06-13 00:05:03 +08:00
chengyongru and Xubin Ren
33e6da14d8
fix: drop tool results missing call ids
...
maintainer edit: treat tool messages without tool_call_id as orphaned during session persistence so malformed results cannot survive into history.
2026-06-13 00:05:03 +08:00
chengyongru and Xubin Ren
30640e9e00
docs: clarify model prefix provider resolution
2026-06-13 00:04:13 +08:00
chengyongru and Xubin Ren
c282012607
fix: resolve auto custom provider settings state
...
maintainer edit: use the resolved provider row when WebUI settings evaluates auto-selected providers, so named custom providers follow their apiBase-based configured state instead of the legacy has_api_key fallback.
2026-06-13 00:04: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
a9308eb8e2
docs: clarify custom provider protocol support
...
maintainer edit: spell out that arbitrary named custom providers use the OpenAI-compatible request format only, and point Anthropic-compatible proxies to the built-in anthropic provider with apiBase.
2026-06-13 00:04:13 +08:00
chengyongru and Xubin Ren
69d66e0d6a
docs: document named custom providers
...
maintainer edit: explain how to configure arbitrary OpenAI-compatible provider names, including multiple endpoints, model presets, and troubleshooting guidance.
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
chengyongru and Xubin Ren
68c6844c0b
fix: preserve dynamic custom provider semantics
...
maintainer edit: treat arbitrary custom provider names as direct OpenAI-compatible providers, validate their api_type consistently, and avoid Pydantic instance-field warnings in fallback routing.
2026-06-13 00:04:13 +08:00
chengyongru
e1ff0f37d9
fix: preserve WhatsApp forwarded metadata
...
maintainer edit: carry the bridge isForwarded flag into channel metadata so forwarded voice messages remain distinguishable after transcription.
2026-06-12 18:21:47 +08:00
chengyongru
32d8a1dd7b
fix: hide internal cron prompts from webui
2026-06-12 18:17:28 +08:00
chengyongru
0505a4fb2a
Merge origin/main into whatsapp bridge improvements
2026-06-12 18:16:24 +08:00
chengyongru
a50b3ac0f2
fix: harden cron session automation flows
2026-06-12 18:13:25 +08:00
chengyongru
b5f9d51b5b
chore: drop unrelated chat apps docs change
2026-06-12 17:07:40 +08:00
chengyongru
2248527971
fix: show cron bindings before deleting sessions
2026-06-12 17:02:29 +08:00
chengyongru
8335554894
refactor: migrate legacy cron payloads to bound sessions
2026-06-12 16:51:20 +08:00
chengyongru
af8192dc38
refactor: move bound cron execution out of gateway
2026-06-12 15:50:36 +08:00
chengyongru
5ae907bc2f
refactor: store cron origin delivery context
2026-06-12 15:07:25 +08:00
chengyongru
b232a52794
fix: tighten cron session deletion UX
2026-06-12 14:51:02 +08:00
chengyongru
c4b64a4caf
refactor: preserve origin session routing for cron
2026-06-12 14:21:09 +08:00
chengyongru
bc18142650
chore: drop cron design note from pr
2026-06-12 14:07:55 +08:00
chengyongru
80524e9e88
refactor: bind cron jobs to origin sessions
2026-06-12 14:00:53 +08:00
chengyongru
271b3651d7
refactor: use cron turn naming internally
2026-06-12 11:57:35 +08:00
chengyongru
d9d481bc15
refactor: centralize cron session metadata keys
2026-06-12 11:43:23 +08:00
chengyongru
0e3a57b371
docs: clarify cron session ownership
2026-06-12 11:12:26 +08:00
chengyongru
0ff8cd0cb3
fix: honor unified session for webui automations
2026-06-12 10:19:12 +08:00
chengyongru
a326ba40f4
feat(cron): bind scheduled automations to sessions
2026-06-11 19:48:07 +08:00
chengyongru and Xubin Ren
ffae1dca6d
fix: keep Telegram streamed code blocks balanced
...
Maintainer edit: split final streamed Telegram markdown before rendering to HTML so long fenced code blocks do not produce unbalanced <pre><code> chunks while still respecting Telegram's rendered HTML limit.
2026-06-11 13:52:19 +08:00
chengyongru and Xubin Ren
c00371c761
docs: clarify streamed timeout fallback behavior
...
maintainer edit: update fallback docs and provider docstring to describe the new stream-stall timeout recovery exception.
2026-06-10 18:10:44 +08:00
chengyongru and Xubin Ren
bc4bb508a1
fix: continue recovered streams in a new segment
...
maintainer edit: streamed timeout recovery was returning the retried response internally while the channel still treated the final outbound as already streamed. End the current stream segment before retry/fallback recovery so subsequent deltas are delivered in a new segment.
2026-06-10 18:10:44 +08:00
chengyongru and Xubin Ren
dadb35af49
feat(exec): add path prepend config
2026-06-10 18:09:57 +08:00
chengyongru and Xubin Ren
8c30dc5a57
Preserve session key when archiving new sessions
2026-06-10 18:09:45 +08:00
chengyongru and Xubin Ren
bfc6febddc
Scope prompt recent history by session
...
Fixes #4259
2026-06-10 18:09:45 +08:00
chengyongru and Xubin Ren
aee656eb9f
Fail fast on invalid config files
2026-06-10 18:09:36 +08:00
chengyongru and Xubin Ren
5d7f2e60c2
fix(feishu): lazy-load lark sdk during gateway startup
2026-06-10 18:09:27 +08:00
chengyongru and Xubin Ren
5d91d59cf7
fix(agent): finalize max-iteration turns without tools
2026-06-10 14:47:20 +08:00
chengyongru and Xubin Ren
99f7f371fa
fix: cover o1 max-completion token fallback
...
Maintainer edit: keep the GPT-5/o-series fallback on slug-boundary matching so unrelated model names are not caught by substring checks, and include o1 alongside o3/o4 because it is also an o-series chat model.
2026-06-10 14:47:10 +08:00
chengyongru and Xubin Ren
56ce18167e
docs: clarify email post-action expunge fallback
...
maintainer edit: clarify that postActionExpunge only allows the broad EXPUNGE fallback when UID-scoped expunge is unavailable or fails.
2026-06-09 14:50:59 +08:00
chengyongru and Xubin Ren
5bd4a83e85
fix(webui): render TeX math delimiters
2026-06-09 14:50:49 +08:00
chengyongru and Xubin Ren
6e6470daa0
docs: remove nightly branch guidance
2026-06-08 16:03:24 +08:00
chengyongru and Xubin Ren
8fe0149c65
refactor(webui): simplify token usage heatmap
2026-06-08 16:02:12 +08:00
chengyongru and Xubin Ren
7510918610
fix(webui): align token usage heatmap
2026-06-08 16:02:12 +08:00
chengyongru and Xubin Ren
710d00a179
fix(webui): persist user messages for refresh
2026-06-05 16:13:51 +08:00
chengyongru and Xubin Ren
3da68ac7fe
Fix pairing for Weixin and Telegram DMs
2026-06-05 16:13:31 +08:00