Xubin Ren
|
1cfa48ad4a
|
fix(web-search): return structured Serper errors
|
2026-07-06 12:11:31 +08:00 |
|
Xubin Ren
|
e725649146
|
test(webui): cover OAuth kit missing errors
|
2026-07-06 12:11:03 +08:00 |
|
Xubin Ren
|
83e4bae7db
|
fix(gateway): skip ctrl-break wait when signal is rejected
|
2026-07-04 21:25:46 +08:00 |
|
Xubin Ren
|
8b9f93d7d1
|
test(config): lock model presets alias serialization
|
2026-07-04 11:44:28 +08:00 |
|
 Xubin RenandGitHub
|
067e0c4a40
|
feat(cli): add safe WebUI first-run launcher (#4688)
|
2026-07-03 18:58:04 +08:00 |
|
Xubin Ren
|
c9c69e4316
|
fix(memory): cap workspace Dream prompt overrides
|
2026-07-03 00:41:51 +08:00 |
|
Xubin Ren
|
ffdf05a603
|
fix(trigger): cap local trigger audit records
|
2026-07-02 13:46:27 +08:00 |
|
Xubin Ren
|
fd9e57703c
|
fix(trigger): tolerate unsupported directory fsync
|
2026-07-02 13:32:46 +08:00 |
|
Xubin Ren
|
c78421cf16
|
fix(bus): preserve legacy outbound metadata events
|
2026-07-01 20:17:00 +08:00 |
|
Xubin Ren
|
03be51ade5
|
fix(channels): preserve legacy stream hook signatures
|
2026-07-01 20:17:00 +08:00 |
|
Xubin Ren
|
a6d5e4f3b5
|
docs(api): document wildcard bind authentication
|
2026-07-01 13:09:49 +08:00 |
|
Xubin Ren
|
f9b02496c8
|
fix(mcp): redact URL paths in logs
|
2026-06-30 22:43:12 +08:00 |
|
Xubin Ren
|
bfc2a74e4f
|
fix(mcp): preserve IPv6 brackets when redacting URLs
|
2026-06-30 22:43:12 +08:00 |
|
Xubin Ren
|
1873e948c3
|
test(weixin): cover streamed reply retry buffer
|
2026-06-30 22:43:03 +08:00 |
|
 Xubin RenandGitHub
|
8df100203c
|
feat(webui): refine prompt rail minimap
|
2026-06-30 10:01:53 +08:00 |
|
Xubin Ren
|
7dc45ff94e
|
chore: tighten malformed tool-call guard wording
|
2026-06-28 19:46:59 +08:00 |
|
Xubin Ren
|
d7152cdbdd
|
style: format legacy session repair test
|
2026-06-28 19:46:55 +08:00 |
|
Xubin Ren
|
c90e433057
|
fix(session): guard lossy migration by stored key
|
2026-06-27 16:52:54 +08:00 |
|
Xubin Ren
|
00a7de0171
|
fix: stringify Anthropic typeless blocks as JSON
|
2026-06-27 16:47:59 +08:00 |
|
Xubin Ren
|
d8601478db
|
test: cover stream-id delta coalescing
|
2026-06-27 16:47:53 +08:00 |
|
Xubin Ren
|
6a27c26257
|
test: cover non-stream duplicate tool call ids
|
2026-06-27 16:47:48 +08:00 |
|
Xubin Ren
|
06d5495b60
|
docs: document subagent tool error behavior
|
2026-06-25 22:53:36 +08:00 |
|
Xubin Ren
|
3596ccf828
|
docs: explain custom provider thinking style
|
2026-06-25 22:53:15 +08:00 |
|
Xubin Ren
|
34f776b48b
|
test(cli): lock disabled dream cursor advancement
|
2026-06-25 22:53:10 +08:00 |
|
Xubin Ren
|
4636c78100
|
test(webui): cover xiaomi mimo wav recording path
|
2026-06-25 22:52:55 +08:00 |
|
Xubin Ren
|
c915e98c15
|
test: cover archived heartbeat target selection
|
2026-06-24 15:45:49 +08:00 |
|
Xubin Ren
|
f9afc9389b
|
fix(providers): apply Kimi Coding default headers
|
2026-06-24 10:43:16 +08:00 |
|
Xubin Ren
|
d2da6df14e
|
docs: align release news dates
|
2026-06-23 09:50:44 +08:00 |
|
Xubin Ren
|
701ae5563d
|
docs: add v0.2.2 release news
|
2026-06-23 09:47:23 +08:00 |
|
Xubin Ren
|
e2e75c913f
|
docs: add June 20 news entry
|
2026-06-22 23:55:10 +08:00 |
|
Xubin Ren
|
87f3e08ff7
|
docs: remove unreleased 0.2.2 news entry
|
2026-06-22 23:43:15 +08:00 |
|
Xubin Ren
|
951fd73c8e
|
fix(webui): keep new chat heading on one line
|
2026-06-22 23:30:29 +08:00 |
|
Xubin Ren
|
90703002c9
|
fix(gateway): restore tty signal mode for ctrl-c
|
2026-06-22 23:20:45 +08:00 |
|
Xubin Ren
|
e624943bac
|
fix(gateway): tolerate cancelled channel tasks during shutdown
|
2026-06-22 23:20:45 +08:00 |
|
Xubin Ren
|
f80a78d5a8
|
fix(webui): preserve fork replies during history refresh
|
2026-06-22 22:00:07 +08:00 |
|
Xubin Ren
|
747104c9cc
|
fix(gateway): make foreground shutdown responsive
|
2026-06-22 22:00:07 +08:00 |
|
Xubin Ren
|
a9d1fdcee8
|
fix(webui): follow active turn output after send
|
2026-06-22 21:12:34 +08:00 |
|
Xubin Ren
|
83c29292d3
|
chore(release): prepare v0.2.2
|
2026-06-22 20:53:28 +08:00 |
|
Xubin Ren
|
7170761e47
|
fix(webui): anchor sent prompts during active turns
|
2026-06-22 20:43:27 +08:00 |
|
Xubin Ren
|
fbaa85117b
|
fix: close MCP stdio transports from agent task
|
2026-06-22 18:59:50 +08:00 |
|
Xubin Ren
|
6efef2700a
|
docs: align my tool context window examples
|
2026-06-22 18:33:49 +08:00 |
|
Xubin Ren
|
e3c9aff41e
|
feat(gateway): add background and service controls
|
2026-06-22 14:48:49 +08:00 |
|
Xubin Ren
|
351aabd512
|
fix: polish onboard wizard keyboard navigation
|
2026-06-22 13:04:05 +08:00 |
|
Xubin Ren
|
9db3dc5e32
|
docs(readme): update news through 2026-06-20
|
2026-06-21 17:14:53 +08:00 |
|
Xubin Ren
|
dbf3c4b245
|
feat(sdk): expand Python runtime controls
|
2026-06-21 16:55:23 +08:00 |
|
Xubin Ren
|
f4cc001410
|
refactor(sdk): pass run hooks explicitly
|
2026-06-21 15:59:28 +08:00 |
|
Xubin Ren
|
b6a9a9728a
|
test(sdk): cover concurrent run hook isolation
|
2026-06-21 15:59:28 +08:00 |
|
Xubin Ren
|
fede2ecfc2
|
test(websocket): expect optional Keenable search key
|
2026-06-21 15:22:13 +08:00 |
|
Xubin Ren
|
d30f3d466d
|
fix(webui): allow optional Keenable search key
|
2026-06-21 15:22:13 +08:00 |
|
Xubin Ren
|
85036bacb6
|
test(telegram): cover rich message fallback latch
|
2026-06-21 15:22:05 +08:00 |
|
Xubin Ren
|
98916a31e3
|
perf(tokens): document tool schema cache assumption
|
2026-06-21 13:06:34 +08:00 |
|
Xubin Ren
|
a81c5e704a
|
fix(memory): reject negative history cursors
|
2026-06-21 13:05:57 +08:00 |
|
Xubin Ren
|
e81968a32b
|
test: isolate MCP timeout regression from DNS
|
2026-06-20 19:12:36 +08:00 |
|
Xubin Ren
|
0eae7ceb1a
|
test: use safe URL for MCP timeout regression
|
2026-06-19 21:07:51 +08:00 |
|
Xubin Ren
|
bc8f42c639
|
test(mcp): cover streamable HTTP timeout
|
2026-06-19 21:07:51 +08:00 |
|
Xubin Ren
|
58a14d18dd
|
test: tighten image placeholder assertions
|
2026-06-19 14:59:52 +08:00 |
|
Xubin Ren
|
de5e216583
|
test: fix image strip test formatting
|
2026-06-19 14:59:52 +08:00 |
|
Xubin Ren
|
bbd7bbd7f5
|
fix(mcp): avoid relying on progress notification root shape
|
2026-06-19 14:59:48 +08:00 |
|
Xubin Ren
|
d36117de7a
|
feat(webui): support Firecrawl keyless MCP preset
|
2026-06-19 01:19:20 +08:00 |
|
Xubin Ren
|
a1a627839c
|
docs: include keenable in search provider list
|
2026-06-18 00:08:52 +08:00 |
|
Xubin Ren
|
09962895fb
|
fix(session): preserve user turns in replay history
|
2026-06-18 00:03:22 +08:00 |
|
Xubin Ren
|
bdf21c932b
|
fix(anthropic): avoid sanitized tool id collisions
|
2026-06-18 00:03:08 +08:00 |
|
 Xubin RenandGitHub
|
c29601d303
|
Merge PR #4330: feat(webui): add automation management view
feat(webui): add automation management view
|
2026-06-17 01:55:39 +08:00 |
|
Xubin Ren
|
9ce40969ce
|
style(webui): add subtle automation filter tones
|
2026-06-17 01:49:24 +08:00 |
|
Xubin Ren
|
7bec0f6e01
|
fix(api): honor skip-user persist through save boundary
|
2026-06-16 21:31:26 +08:00 |
|
Xubin Ren
|
25a55fe1c7
|
fix(providers): enable thinking for Kimi K2.7 models
|
2026-06-16 17:44:22 +08:00 |
|
Xubin Ren
|
f30ef9f28e
|
docs(readme): add themed cover image
|
2026-06-14 19:22:47 +08:00 |
|
Xubin Ren
|
1b17aa1632
|
docs(readme): link Kimi partner banner
|
2026-06-14 14:52:18 +08:00 |
|
Xubin Ren
|
7ff8e02eaf
|
chore(repo): remove desktop app from core repo
|
2026-06-13 00:14:21 +08:00 |
|
 Xubin RenandGitHub
|
dac4e39bcf
|
Merge PR #4299: feat(cron): bind scheduled automations to sessions
feat(cron): bind scheduled automations to sessions
|
2026-06-13 00:07:55 +08:00 |
|
 Xubin RenandGitHub
|
1b3b322674
|
Merge PR #4226: feat(bridge): WhatsApp forwarded message detection, startup guard, and contact handling
feat(bridge): WhatsApp forwarded message detection, startup guard, and contact handling
|
2026-06-13 00:05:58 +08:00 |
|
Xubin Ren
|
b8a4ceb30c
|
test(webui): cover siliconflow transcription settings
|
2026-06-10 23:05:12 +08:00 |
|
 Xubin RenandGitHub
|
ddbd7ca39e
|
Merge PR #4278: feat(webui): segment transcript storage
feat(webui): segment transcript storage
|
2026-06-10 21:02:10 +08:00 |
|
Xubin Ren
|
e1e643de2a
|
refactor(webui): keep sidebar index out of session manager
|
2026-06-10 20:45:29 +08:00 |
|
Xubin Ren
|
1f5ecf36ca
|
fix(webui): align chat action menu hover inset
|
2026-06-10 20:30:32 +08:00 |
|
Xubin Ren
|
999552b998
|
perf(webui): index session list metadata
|
2026-06-10 20:02:22 +08:00 |
|
Xubin Ren
|
603feef3aa
|
Merge remote-tracking branch 'origin/main' into codex/webui-segmented-transcript-store
|
2026-06-10 19:11:37 +08:00 |
|
Xubin Ren
|
e168bb2754
|
feat(webui): segment transcript storage
|
2026-06-10 18:28:55 +08:00 |
|
Xubin Ren
|
7186039be1
|
fix(websocket): limit final stream text to inline endings
|
2026-06-10 15:52:39 +08:00 |
|
Xubin Ren
|
62a35c21b8
|
fix(asr): normalize StepFun transcription endpoint
|
2026-06-10 15:50:38 +08:00 |
|
Xubin Ren
|
1b5f5b94d5
|
fix(webui): use tabler fork icon
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
ea791f605c
|
fix(webui): restore fork action icon
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
fd947a1fd8
|
fix(webui): normalize action tooltips
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
1432094bb5
|
refactor(webui): isolate fork websocket handler
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
916525f94a
|
refactor(webui): shrink fork implementation
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
1f926e3769
|
refactor(webui): isolate chat fork creation
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
26a58282d4
|
feat(webui): show forked history boundary
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
73d4b1cb2f
|
feat(webui): persist fork boundary metadata
|
2026-06-10 04:26:06 +08:00 |
|
Xubin Ren
|
f183b37542
|
test(webui): cover Xiaomi MIMO provider alias
|
2026-06-09 04:29:09 +08:00 |
|
Xubin Ren
|
552ec18a3c
|
test(webui): cover OpenRouter provider brand
|
2026-06-09 04:01:37 +08:00 |
|
 Xubin RenandGitHub
|
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 |
|
Xubin Ren
|
a1b9577224
|
test(image): cover dropping null OpenAI image params
|
2026-06-06 19:35:46 +08:00 |
|
Xubin Ren
|
73353785a0
|
docs(sdk): document Nanobot teardown
|
2026-06-06 15:35:28 +08:00 |
|
Xubin Ren
|
6a0368b32f
|
fix(telegram): route /skill command
|
2026-06-05 18:48:51 +08:00 |
|
Xubin Ren
|
935a37182d
|
docs(command): document /skill command
|
2026-06-05 18:48:51 +08:00 |
|
Xubin Ren
|
894811db8b
|
fix(feishu): strip leading bot mention before commands
|
2026-06-05 15:55:53 +08:00 |
|
Xubin Ren
|
87bd56468c
|
fix(webui): show platform-specific new chat shortcut
|
2026-06-04 14:01:21 +08:00 |
|
Xubin Ren
|
f382133bb4
|
refactor(webui): move media replay helpers out of websocket channel
|
2026-06-02 16:18:57 +08:00 |
|
Xubin Ren
|
7aa5e620be
|
chore(webui): remove useless timezone assignment
|
2026-06-02 16:18:57 +08:00 |
|