Skip to content

Releases: CherryHQ/cherry-studio

v2.0.3

Choose a tag to compare

@github-actions github-actions released this 10 Aug 07:43
91563ed

What's Changed

  • feat(composer): add smooth wheel control for reasoning effort by @ousugo in #17829
  • fix(sidebar): add sidebar management menu entry by @ousugo in #18031
  • fix(agent-channels): strip citation markers from IM replies by @Pleasurecruise in #18064
  • feat(chat-composer): show assistant context usage by @zhangjiadi225 in #18006
  • fix(agent-session): limit automatic naming to initial turn by @zhangjiadi225 in #17987
  • feat(web-search): add Firecrawl as a URL fetch provider by @DeJeune in #18089
  • perf(chat-tabs): eliminate tab-switch IPC and re-render churn under Activity keep-alive by @zhangjiadi225 in #18035
  • feat(knowledge-data-source): write a new note straight into the knowledge base by @eeee0717 in #18022
  • fix(agent): make the configured system prompt authoritative by @AtomsH4 in #18100
  • fix(agent-attachments): preserve managed files for session history by @vaayne in #18027
  • fix(code-cli): respect Linux default terminal by @Pleasurecruise in #18103
  • fix(composer): keep input compact in maximized panels by @zhangjiadi225 in #18125
  • docs(design-system): streamline global UI guidance by @zhangjiadi225 in #18110
  • fix(linux-packaging): ship GLIBC-compatible better-sqlite3 by @kangfenmao in #17778
  • fix(openai-compatible): always echo reasoning_content on assistant turns by @DeJeune in #18121
  • fix(mini-app): dismiss loading overlay on dom-ready by @Pleasurecruise in #18079
  • feat(agent-runtime): support scoped AGENTS.md instructions by @vaayne in #18126
  • fix(backup): skip EBUSY locked files (LevelDB LOCK) during automatic backup by @xxiaoxiong in #18117
  • fix(agent-runtime): recover duplicate tool use ID failures by @AtomsH4 in #18119
  • fix(mcp): resolve stdio MCP servers to full paths on Windows by @LWWZH in #16472
  • fix(notes): align sidebar note icons by @ousugo in #18143
  • fix(mcp): close stale clients so ping failures stop orphaning child processes by @DeJeune in #18146
  • fix(chat-migration): bound message block indexing memory by @kangfenmao in #18127
  • ci: reduce pre-merge test runtime by @Pleasurecruise in #18165
  • fix(lifecycle): bound each service's teardown during shutdown by @0xfullex in #18136
  • feat(code-cli): add Pi coding agent to Code Tools by @vaayne in #16928
  • fix(mcp-tools): prevent non-ASCII tool identity collisions by @AtomsH4 in #18128
  • fix(builtin-tools): stop sending strict so knowledge bases work on Anthropic by @eeee0717 in #18179
  • fix(backup): skip LevelDB locks in streamed backups by @AtomsH4 in #18173
  • fix(resource-list): unify cross-panel list styling by @zhangjiadi225 in #18046
  • fix(mcp-tool-approval): treat IM-channel sessions as background agents for MCP tool access by @lanex2000 in #18153
  • feat(chat-composer): save edited user messages without resending by @DeJeune in #18057
  • fix(composer-draft): preserve unsent drafts across navigation by @zhangjiadi225 in #18019
  • feat(external-apps): add Windows Terminal (wt.exe) support by @MengXiangxi in #17942
  • fix(ai-provider): preserve OpenCode conversation affinity by @Pleasurecruise in #18184
  • fix(ollama): detect native thinking capabilities by @Pleasurecruise in #18133
  • perf(startup-memory): lazy-load five heavy main-process dependencies by @beyondkmp in #18189
  • fix(selection-assistant): start a fresh chat session per selection by @DeJeune in #18200
  • fix(code-cli): write valid OpenCode compaction config by @Pleasurecruise in #18015
  • fix(agent-session): preserve citations for deferred tool outputs by @zhangjiadi225 in #18124
  • fix(code-cli): synchronize Codex authentication mode by @Pleasurecruise in #18188
  • 🤖 Daily Auto I18N Sync: Aug 08, 2026 by @github-actions[bot] in #18208
  • chore: release v2.0.3 by @kangfenmao in #18210
  • fix(data-migration): tolerate malformed agent MCP data by @AtomsH4 in #18176
  • fix(agent-right-pane): move declared outputs under the task plan by @kennyzheng-builds in #18216
  • feat(composer-toolbar): pin permission mode by default for new users by @kennyzheng-builds in #18222
  • feat(model-retry): user-configured model retry & fallback via ai-retry by @DeJeune in #16057
  • fix(knowledge-readers): reject binary Office text fallback by @kennyzheng-builds in #18260
  • fix(chat-attachments): respect endpoint media support by @AtomsH4 in #18182
  • fix(knowledge-migration): stop v1 folder files and duplicate uploads from migrating as uuids by @eeee0717 in #18167
  • fix(agent-session): own session warmth leases in main across windows by @zhangjiadi225 in #18108
  • fix(claude-code-runtime): fix the agent auto-compact budget and trigger by @vaayne in #18137
  • fix(agent-runtime): prefer a model's Anthropic Messages endpoint for agent sessions by @DeJeune in #18221
  • fix(agent-runtime): surface Claude Code API failures by @zhangjiadi225 in #18280
  • 🤖 Daily Auto I18N Sync: Aug 10, 2026 by @github-actions[bot] in #18293
  • fix(paintings): preserve long pasted prompts by @Pleasurecruise in #18291

New Contributors

Full Changelog: v2.0.2...v2.0.3

v2.0.2

Choose a tag to compare

@github-actions github-actions released this 07 Aug 07:59
5830f75

What's Changed

  • feat(chat-branch): persist empty branch nodes by @zhangjiadi225 in #17667
  • perf(chat-tabs): skip redundant re-show work in message tools, artifact pane, and trace page by @zhangjiadi225 in #18038
  • fix(claude-code): reap sdk cli subprocesses on shutdown by @kovsu in #17969
  • fix(tool-loop): raise the default tool-call round cap by @DeJeune in #18072
  • fix(directory-tree): close the snapshot-to-stream delivery gap by @DeJeune in #18009
  • feat(providers): built-in web search for DeepSeek/OpenRouter/Dashscope + distinguishable resolved model names by @DeJeune in #17983
  • fix(v2-migration): allow direct upgrades to v2.0.x by @kangfenmao in #18093
  • feat(cache-cleanup): add selective cache and legacy data cleanup by @kangfenmao in #17377
  • fix(composer): open image tokens in shared preview by @zhangjiadi225 in #18082
  • fix(agent-channels): start WeChat QR login by @Pleasurecruise in #18071
  • refactor(proxy): make ProxyService own worker routing policy by @eeee0717 in #18095
  • feat: add Claude (Anthropic) conversation import support by @Pleasurecruise in #16164
  • feat(cli-config): support detailed models through unified gateway by @eeee0717 in #18014
  • feat(data-migration): allow rerunning v1 migration by @kangfenmao in #18002
  • fix(mcp-settings): preserve form edits and improve tool details by @Pleasurecruise in #17647
  • fix(new-api): serve every endpoint from one host with per-route versions by @DeJeune in #18033
  • fix(agent-migration): skip symlinks during migration by @kangfenmao in #18101
  • fix(local-model): survive mirror failures and keep embedding inference offline by @eeee0717 in #18016
  • chore: release v2.0.2 by @kangfenmao in #18107
  • fix(selection-assistant): respect Traditional Chinese locale by @AtomsH4 in #18098

Full Changelog: v2.0.1...v2.0.2

v2.0.1

Choose a tag to compare

@github-actions github-actions released this 07 Aug 02:45
eff747f

What's Changed

  • fix(agent-files): localize workspace tree errors by @AtomsH4 in #17869
  • fix(claude-code): use preset append mode for agent prompts by @DeJeune in #17879
  • chore(deps): address high and critical advisories by @Pleasurecruise in #17875
  • fix(provider-registry): serve DeepSeek V4 models over the Anthropic endpoint by @eeee0717 in #17901
  • fix(openclaw): recover stale dashboards across windows by @vaayne in #17864
  • fix(chat-messages): prevent reference context leaks in collapsed previews by @zhangjiadi225 in #17889
  • fix(api-gateway): normalize no-prefill agent requests by @kovsu in #17899
  • fix(provider-settings): persist provider filter by @ousugo in #17866
  • fix(agent-dialog): hide prompt variable hint by @zhangjiadi225 in #17903
  • fix(ai-diagnosis): use free Qwen instead of the default assistant model by @AtomsH4 in #17902
  • fix(profile): allow WebP avatar uploads by @zhangjiadi225 in #17862
  • fix(message-scroll): isolate nested scroll regions from chat viewport by @zhangjiadi225 in #17876
  • fix(claude-code): hide disabled MCP tools from agents by @DeJeune in #17914
  • fix(selection-menu): preserve TeX when copying formulas by @zhangjiadi225 in #17905
  • fix(horizontal-scroll-container): add bidirectional controls by @AtomsH4 in #17921
  • perf(agent-session): reduce renderer loading work by @zhangjiadi225 in #17878
  • fix(chat): show model identity on single replies by @DeJeune in #17928
  • feat(assistant-groups): enable drag reorder by @zhangjiadi225 in #17911
  • fix(resource-pagination): avoid redundant first-page requests by @DeJeune in #17931
  • fix(api-gateway): normalize internal Agent continuations by @DeJeune in #17929
  • chore(deps): upgrade selection-hook to 2.0.3 by @0xfullex in #17934
  • feat: Add 'embedding' endpoint type for NEWAPI model configuration by @LWWZH in #14988
  • feat(conversation-picker): keep the create row visible while searching by @kennyzheng-builds in #17930
  • feat(deepseek): support built-in web search by @DeJeune in #17913
  • fix(agent-runtime): bypass proxy for loopback gateways by @AtomsH4 in #17906
  • fix(export-menu): align export and save actions by @Pleasurecruise in #17920
  • feat(tab-bar): show settings as a focused tab by @kangfenmao in #17916
  • fix(gemini-tools): strip schema dialect metadata by @AtomsH4 in #17945
  • fix(provider-settings): add model type scroll controls by @AtomsH4 in #17941
  • 🤖 Daily Auto I18N Sync: Aug 06, 2026 by @github-actions[bot] in #17960
  • fix(provider-migration): tolerate unusable legacy API keys by @kangfenmao in #17933
  • fix(composer): restore default reasoning effort by @DeJeune in #17937
  • fix(cherry-assistant): restore normal agent capabilities by @vaayne in #17870
  • fix(tab-navigation): preserve conversation tab identity by @zhangjiadi225 in #17819
  • feat(tab-bar): draw a Chrome-style divider between adjacent tabs by @kennyzheng-builds in #17909
  • fix(chat): restore assistant identity for migrated messages by @kangfenmao in #17976
  • fix(model-selector): preserve lazy-loaded data between openings by @zhangjiadi225 in #17963
  • fix(api-gateway): support Claude tools in Responses API by @DeJeune in #17943
  • fix(web-search): guard query type in WebSearchTool and normalizeWebSearchKeywords; fix translation button contrast by @xxiaoxiong in #17972
  • feat(knowledge-readers): read binary office documents through anydoc by @eeee0717 in #17968
  • fix(migration): prevent crash by adding error handling to V2 migration pipeline by @404-Page-Found in #17964
  • fix(resource-catalog): stop repeated saves after failures by @zhangjiadi225 in #17977
  • fix(model-selector): prevent filtered model selection crash by @DeJeune in #17951
  • fix(painting-migrator): migrate tokenflux painting history by @DeJeune in #17982
  • fix(provider-registry): route OpenCode Go models by their served protocol by @DeJeune in #17990
  • fix(agent): restore context usage for gateway models by @ousugo in #17988
  • fix(rich-editor): detect CR-only line endings on markdown paste by @DeJeune in #17986
  • fix(agent-session): preserve runtime turn ordering by @kovsu in #17975
  • fix(ai-stream): pause ring eviction while tool approvals are pending by @zhangjiadi225 in #17922
  • fix(agent-migration): tolerate cloud storage metadata churn by @DeJeune in #17947
  • fix(paintings): apply default model to new drafts by @ousugo in #17839
  • fix(composer): show permission mode submenu indicator by @ousugo in #17993
  • fix(notes): sync empty note content in rich editor by @ousugo in #18004
  • fix(agent-migration): preserve overlapping legacy workspace by @DeJeune in #17887
  • fix(migration): prevent OOM during v2 data export by @kangfenmao in #17917
  • fix(code-editor): honor custom code font in conversation code blocks by @zhangjiadi225 in #18008
  • fix(knowledge-migration): stream vector migration per item to avoid OOM by @eeee0717 in #17886
  • feat(composer): edit the navbar assistant in assistant grouping mode by @DeJeune in #18013
  • refactor(agent-skills): route bundled runtimes through tool guide by @vaayne in #17848
  • feat(diagnostics): add local diagnostic bundle export by @kangfenmao in #17658
  • fix(open-mineru): send standards-compliant multipart uploads by @eeee0717 in #18021
  • refactor(agent-skills): finish routing bundled runtimes through tool guide by @vaayne in #18020
  • fix(command-resolver): support Windows cmd shims by @Pleasurecruise in #18025
  • feat(claude-code): enable CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT by @DeJeune in #18028
  • fix(code-cli): allow enabling providers before installation by @eeee0717 in #18032
  • fix(model-icons): recognize Kimi K3 model ids by @Pleasurecruise in #18036
  • fix(model-selector): clarify multi-select control by @kangfenmao in #18039
  • fix(resource-list): give the sidebar list one type voice and one selection rule by @kennyzheng-builds in #17985
  • fix(web-search): pass Exa API key to Exa MCP search by @404-Page-Found in #18017
  • fix(sidebar): normalize mini-app icon presentation by @kangfenmao in #18047
  • fix(scheduled-tasks): avoid deleted task detail refetch by @ousugo in #18012
  • fix(ai-runtime): strip JSON Schema keywords providers reject in tool schemas by @DeJeune in #18041
  • fix(skills): raise ZIP entry limit by @Pleasurecruise in #18040
  • fix(message-delete): preserve branches during deletion by @zhangjiadi225 in #17996
  • feat(agent-tools): add built-in document conversion by @vaayne in #18026
  • chore: release v2.0.1 by @kangfenmao in #18060
  • ...
Read more

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 05 Aug 05:36
e31b31b

Cherry Studio 2.0.0 - A New AI Workspace, from Chat to Getting Work Done

✨ New Interface, New Experience

  • Upgraded interactions and visual design make chats, roles, projects, and tasks clearer and easier to organize
  • Built for multitasking, with multi-window and split-view layouts for switching between work and reviewing progress and deliverables

🤖 More Powerful Agents

  • Supports both OpenAI and Anthropic endpoints, reuses Claude and Codex subscriptions, and works with more models
  • The core Agent runtime is built in, greatly reducing dependency installation and environment setup
  • Complete research, documents, presentations, data analysis, and coding faster, with one-click previews of results

🛠️ More Tool Upgrades

  • Agents can read and maintain knowledge bases, helping your knowledge grow continuously like a Wiki
  • Code tools are upgraded to Code Mate, with one-click model service configuration for Claude Code, Codex, and more
  • Image generation dynamically shows the parameters available for each model, making results easier to control

⚡ Performance

  • A fully upgraded data foundation stays responsive even with extensive history
  • Smoother scrolling in very long conversations, while large-folder imports no longer block the interface

v2.0.0-rc.5

v2.0.0-rc.5 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 04 Aug 12:38
464734a

What's Changed

  • fix(provider-registry): enable Gemma 4 thinking in Ollama by @DeJeune in #17738
  • 🤖 Daily Auto I18N Sync: Aug 03, 2026 by @github-actions[bot] in #17750
  • fix(code-block-view): preserve streamed code block identity by @zhangjiadi225 in #17736
  • feat(message-anchor): refine anchor navigation into a minimal tick rail by @kennyzheng-builds in #17012
  • feat(image-preview): add save-as actions by @zhangjiadi225 in #17758
  • test(file-processing): wait for processor panel update by @eeee0717 in #17762
  • test(frontend-tests): remove low-value coverage by @zhangjiadi225 in #17757
  • test(file-processing): wait for async model overrides by @zhangjiadi225 in #17763
  • fix(agent-pinning): avoid false failure toast after successful pin by @zhangjiadi225 in #17760
  • fix(ai-provider): preserve snake_case custom parameters by @DeJeune in #17612
  • feat(knowledge): download local embedding model in background by @eeee0717 in #17697
  • fix(message-rendering): settle interrupted block animations by @AtomsH4 in #17765
  • fix(markdown): restore GitHub alert styling by @kangfenmao in #17764
  • fix(anthropic): preserve output limits for compatible models by @DeJeune in #17525
  • fix(chat-messages): stop streaming re-render storm and send-time history flash by @zhangjiadi225 in #17756
  • fix(openclaw): use canonical gateway health endpoint by @AtomsH4 in #17767
  • test(file-processing): stabilize async processor interactions by @kangfenmao in #17772
  • fix(model-drawer): preserve selected chat endpoint by @eeee0717 in #17773
  • fix(model-selector): align assistant and agent filters by @zhangjiadi225 in #17759
  • fix(claude-code): tolerate tool_use blocks that open without a name by @vaayne in #17755
  • fix(mcp): show online package server details by @kangfenmao in #17771
  • fix(mcp): restore deeplink installation by @kangfenmao in #17699
  • fix(model-drawer): restore New API endpoint multi-select by @eeee0717 in #17776
  • fix(composer): restore Windows clipboard image recognition by @404-Page-Found in #17739
  • fix(ipc-security): trust renderer behind directory links by @kangfenmao in #17766
  • refactor(chat-messages): unify assistant and agent rendering by @zhangjiadi225 in #17774
  • fix(knowledge-selector): improve knowledge selection menus by @eeee0717 in #17770
  • perf(conversation-load): parallelize active model loading by @zhangjiadi225 in #17780
  • perf(data-api): defer inactive renderer queries by @zhangjiadi225 in #17775
  • refactor(knowledge): restructure into domain services and adopt core/job primitives by @eeee0717 in #16749
  • fix(mini-app): reload current page without resetting navigation by @ousugo in #17469
  • fix(main-window): remove dead CSP/XFO stripping that clobbered crash telemetry by @kovsu in #17791
  • fix(mcp): use TextDecoder stream mode for stderr to eliminate U+FFFD in logs by @LWWZH in #17785
  • fix(binary-manager): prune obsolete versions after updates by @Pleasurecruise in #17799
  • fix(mcp-oauth): re-register OAuth client when auth server changes (main) by @404-Page-Found in #17795
  • feat(agent-skills): add built-in Cherry tool guide by @vaayne in #17802
  • feat(server-tools): add provider-native search capabilities by @DeJeune in #17322
  • fix(mcp-browser): dispose nativeTheme listener when server connection closes by @kovsu in #17792
  • fix(chat-scroll): unify streaming follow state by @zhangjiadi225 in #17783
  • fix(skill-import): improve local import error feedback by @AtomsH4 in #17797
  • perf(message-anchor): keep the rail out of the streaming render path by @kovsu in #17601
  • feat(ai-params): context-build — truncate tool results + history compression via context-chef by @MyPrototypeWhat in #15988
  • fix: revalidate all loaded pages on loadAll topic and agent-session sources by @tommyzhang100504 in #17704
  • feat(web-search): add automatic web fetch fallback by @vaayne in #17806
  • fix(agent-runtime): defer permission mode changes until next turn by @DeJeune in #17809
  • fix(mcp): persist cleared marketplace token by @ousugo in #17472
  • refactor(mcp-browser): create browser windows via WindowManager by @kovsu in #17794
  • fix(ai-reasoning): select reasoning wire dialect from model generation by @DeJeune in #17422
  • feat(cherry-assistant): add built-in assistant and feedback flow by @SiinXu in #17398
  • feat(ui-contract): add stable page and region selectors by @zhangjiadi225 in #17810
  • fix(claude-code): enable session state events for background work release by @kovsu in #17815
  • fix(ai-sdk): parse Responses reasoning text deltas by @404-Page-Found in #17789
  • feat(attachment-routing): fall back to native image when OCR finds no text by @zhangjiadi225 in #17637
  • perf(agent-session): publish background flow parts per message by @kovsu in #17814
  • fix(image-preview): prevent scrolling during wheel zoom by @AtomsH4 in #17816
  • chore: release v2.0.0-rc.5 by @kangfenmao in #17826

Full Changelog: v2.0.0-rc.4...v2.0.0-rc.5

v1.9.13

Choose a tag to compare

@github-actions github-actions released this 03 Aug 05:59
da22fb7

What's Changed

Full Changelog: v1.9.12...v1.9.13

v2.0.0-rc.3

v2.0.0-rc.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 31 Jul 03:08
6469c7b

What's Changed

Full Changelog: v2.0.0-rc.2...v2.0.0-rc.3

v2.0.0-rc.2

v2.0.0-rc.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Jul 13:00
d0e1b43

What's Changed

  • fix(data-migration): preserve model endpoint routing by @kangfenmao in #17564
  • fix(agent-migration): preserve workspace and Claude session continuity by @DeJeune in #17566
  • feat(chat-context): restore clear-context boundaries by @kangfenmao in #17524
  • fix(translate): name per-item history star buttons after the favourite action by @kennyzheng-builds in #17503
  • fix(notes): only autofocus the editor for empty notes by @kovsu in #17537
  • fix(settings): clear empty MCP environment fields by @ousugo in #17477
  • fix(db-migrations): stop table-recreate migrations from silently deleting child rows by @EurFelux in #17569
  • fix(resource-list): explain orphan assistant and agent groups by @zhangjiadi225 in #17531
  • fix(agent-runtime): route mixed-provider models by endpoint by @Pleasurecruise in #17573
  • fix(chat): update drag selection when selection box shrinks by @ousugo in #17444
  • feat(provider-registry): serve Claude Opus 5, Sonnet 5, and 1M-context variants on Claude Code by @vaayne in #17580
  • fix(agent-runtime): rebuild sessions after language changes by @Pleasurecruise in #17581
  • 🤖 Daily Auto I18N Sync: Jul 29, 2026 by @github-actions[bot] in #17570
  • fix(mcp-settings): support multi-server JSON imports by @kangfenmao in #17583
  • fix(message-list): prevent ghosting when reversing scrollbar drag by @zhangjiadi225 in #17578
  • fix(resource-catalog): keep edit dialogs open after auto-save by @zhangjiadi225 in #17595
  • feat(knowledge): add select all to note import by @Pleasurecruise in #17597
  • fix(model-list): group flat model IDs by family by @kangfenmao in #17603
  • fix(message-menu-bar): add aria-labels to default toolbar icon buttons by @kennyzheng-builds in #17607
  • chore: release v2.0.0-rc.2 by @kangfenmao in #17614

Full Changelog: v2.0.0-rc.1...v2.0.0-rc.2

v2.0.0-rc.1

v2.0.0-rc.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Jul 22:13
9785c65

What's Changed

  • fix(notes): allow selecting Markdown files from import hint by @kangfenmao in #17527
  • fix(onboarding): filter non-chat model choices by @kangfenmao in #17526
  • fix(windows-packaging): include sqlite-vec in portable builds by @eeee0717 in #17521
  • fix(message-capture): stabilize topic and session image export by @zhangjiadi225 in #17523
  • fix(build): install both cpu arches so x64 macOS builds ship sharp by @DeJeune in #17419
  • fix(mini-app): preserve migrated custom apps and icon sizing by @kangfenmao in #17522
  • fix(provider-models): preserve provider display names by @DeJeune in #17462
  • fix(window-registry): skip macOS process transform for workspace-visible windows by @beyondkmp in #17528
  • fix(knowledge-search): improve trigram BM25 queries by @kovsu in #17511
  • fix(provider-settings): keep Bedrock auth modes switchable by @DeJeune in #17534
  • fix(message-rendering): show interrupted empty replies by @kangfenmao in #17533
  • fix(ai-transport): preserve streams across tab switches by @zhangjiadi225 in #17514
  • refactor(path-registry): remove media directory keys by @kangfenmao in #17541
  • fix(paintings): deduplicate custom size option by @ousugo in #17540
  • fix(quick-assistant): correct user message presentation by @kangfenmao in #17532
  • fix(paintings): keep prompt fixed during image transforms by @Pleasurecruise in #17518
  • feat(agent-composer): select knowledge bases from the input by @eeee0717 in #17493
  • fix(message-list): stabilize regeneration and image export by @zhangjiadi225 in #17544
  • feat(agent-skills): sync skill catalog from disk so authored skills appear by @DeJeune in #17134
  • feat(agent-chat): warn before contextual model switches by @zhangjiadi225 in #17529
  • fix(file-preview): avoid false binary detection for Unicode text by @kangfenmao in #17551
  • fix(new-conversation-icon): use thinner scalable strokes by @zhangjiadi225 in #17552
  • fix(agent-migration): handle Windows workspace links by @DeJeune in #17542
  • feat(ai-usage): add cost analytics and durable usage records by @DeJeune in #15992
  • fix(composer): preserve follow-up queue pause across conversations by @ousugo in #17487
  • fix(global-search): keep input focused after clearing by @ousugo in #17468
  • fix(agent-seeding): leave default agent model unconfigured by @zhangjiadi225 in #17554
  • refactor(data-migration): consolidate v2 storage layout by @kangfenmao in #17553
  • feat(paintings): reveal generated images through sampled grid by @SiinXu in #17548
  • fix(data-migration): skip existing Claude config directory by @kangfenmao in #17556
  • feat(ai): add backup-restore write quiesce to AI stream/agent/channel writers by @DeJeune in #17014
  • feat(paintings): add localized prompt template gallery by @SiinXu in #17547
  • fix(backup-restore): restore complete v7 backups by @kangfenmao in #17555
  • chore: release v2.0.0-rc.1 by @kangfenmao in #17561

Full Changelog: v2.0.0-beta.3...v2.0.0-rc.1

v1.9.12

Choose a tag to compare

@github-actions github-actions released this 05 Jul 09:35
da0a11f

What's Changed

  • fix: forward DeepSeek V4+ reasoning_effort for openai-compatible providers by @EurFelux in #15834
  • fix(model): support Claude Fable series and Opus 5 in capability detection by @EurFelux in #15872
  • fix(models): add Anthropic native /v1/models fetcher(target V1 branch) by @Raymond8196 in #15779
  • fix(tools): prevent AccordionTrigger toggle when clicking approval buttons in collapsed group header by @LWWZH in #15839
  • fix: use anthropicApiHost for NewAPI provider's anthropic endpoint by @Raymond8196 in #15934
  • fix(agents): inject Cherry Studio identity headers into agent mode requests by @Raymond8196 in #15978
  • fix: support downloading SVG data URL images blocked by CSP by @Raymond8196 in #15301
  • fix(file): restore leading dot in ext for saveBase64Image and savePastedImage by @Raymond8196 in #14668
  • fix(reasoning): correct MiniMax-M3 thinking control by @kangfenmao in #15991
  • feat(models): add Kimi K2.7 Code support by @ousugo in #16017
  • fix(ai-core): surface abnormal stream finish reasons as error chunks by @EurFelux in #16079
  • fix(websearch): preserve full URLs and parse Highlights in ExaMCP results by @Raymond8196 in #15329
  • fix: recover claude-code install when native binary is missing by @kovsu in #15369
  • fix(aihubmix): derive Gemini baseURL from configured baseURL by @DDU1222 in #16371
  • fix: use first configured key for claude code agents by @zhibisora in #16437
  • fix: use fs.statfs for disk info to stop powershell process leak by @Raymond8196 in #16556
  • feat(aihubmix): redirect provider links to inferera and follow configured base URL by @DDU1222 in #16606
  • fix: hide CherryIN manual model add button by @zhibisora in #16703

Full Changelog: v1.9.11...v1.9.12