Releases: CherryHQ/cherry-studio
Releases · CherryHQ/cherry-studio
v1.8.4
What's Changed
- fix(aiCore): add missing @openrouter/ai-sdk-provider dependency by @EurFelux in #13787
- ci: restrict package release workflow to cherry-studio's main branch by @kovsu in #13797
- feat(SelectionAssistant): Linux support by @0xfullex in #13720
- feat(api): add knowledge base REST API endpoints by @victoryangn in #13762
- fix(aiCore): remove openai-compatible providers from PDF native support list by @DeJeune in #13809
- chore: release v1.8.4 by @kangfenmao in #13824
- fix(extension-table-plus): remove reference to non-existent tsconfig.build.json by @EurFelux in #13817
- fix(aiCore): normalize model ID before looking up thinking token limits by @EurFelux in #13843
- fix: update broken Awesome MCP Servers link by @cyphercodes in #13847
- fix(ci): add Linux system deps for selection-hook native rebuild by @DeJeune in #13855
New Contributors
- @victoryangn made their first contribution in #13762
- @cyphercodes made their first contribution in #13847
Full Changelog: v1.8.3...v1.8.4
v1.8.3
What's Changed
- fix(mcp): create fresh MCP Server per transport session by @DeJeune in #13631
- fix: route copilot gpt-5.4 models to responses by @kovsu in #13632
- fix(aiCore): improve PDF processing robustness for aggregator providers by @EurFelux in #13641
- fix: add @napi-rs/canvas to avoid dependency missing on dev startup by @alephpiece in #13685
- 🤖 Daily Auto I18N Sync: Mar 21, 2026 by @github-actions[bot] in #13673
- fix: skip thinking budget subtraction for Claude 4.6 adaptive thinking models by @majiayu000 in #13676
- fix(agents): show reasoning effort button for agent session reasoning models by @DeJeune in #13569
- fix(linkConverter): enhance link parsing to handle invalid parenthesized links by @alephpiece in #13688
- fix(migrate): safer openclaw state access in migrate 197 by @alephpiece in #13686
- fix: align agent chat bubble layout with shared chat styles by @kovsu in #13633
- chore: bump mermaid to 11.13.0 to support venn and ishikawa by @alephpiece in #13695
- fix: agent session auto renaming feedback by @alephpiece in #13707
- feat(agents): upgrade Agent SDK, enable ToolSearch, and add UI renderer by @DeJeune in #13690
- chore: enable type-aware linting with oxlint upgrade by @EurFelux in #13689
- fix: resolve all await-thenable lint violations by @EurFelux in #13712
- feat(agent): add OpenRouter support for Agent mode by @GeorgeDong32 in #13716
- test: add vitest benchmarks by @alephpiece in #13713
- fix(citation): use position-based insertion for Gemini grounding supports by @DeJeune in #13646
- refactor(SelectModelPopup): use the same base popup for chat and agent pages by @alephpiece in #13700
- fix: override @napi-rs/canvas to 0.1.97 for Windows ARM64 support by @EurFelux in #13723
- 🤖 Daily Auto I18N Sync: Mar 23, 2026 by @github-actions[bot] in #13728
- fix(memory): fix agentId filtering and search fallback in vector memory by @Pleasurecruise in #13725
- fix(groq): add dedicated @ai-sdk/groq provider to avoid reasoning_content errors by @DeJeune in #13735
- fix: topic message bulk deletion by @alephpiece in #13718
- refactor: resolve all no-floating-promises lint violations by @EurFelux in #13743
- fix(aiCore): fix temperature/topP incorrectly disabled when reasoning_effort is default by @EurFelux in #13505
- fix(deps): add @napi-rs/canvas platform binaries to fix startup crash by @kangfenmao in #13759
- fix(agent): use containerRef from useScrollPosition to memorize scroll position by @EurFelux in #13744
- feat: show model ids for duplicate names in model pickers by @kovsu in #13654
- fix: prevent CherryAI provider from using native PDF input in middleware by @kangfenmao in #13777
- fix(paintings): fix base64 image handling across providers by @Pleasurecruise in #13747
- feat: introduce changeset for monorepo version management by @EurFelux in #12783
- feat(code-tools): add LMStudio and Ollama support for Claude Code by @GeorgeDong32 in #13518
- feat: add onboarding page with guided setup flow by @kangfenmao in #13774
- fix: use per-model context window and preserve user config in OpenClaw sync by @SiinXu in #13666
- fix(CodeToolsService): prevent command injection on Windows by @GeorgeDong32 in #13677
- refactor: add no-unnecessary-type-assertion rule and remove redundant assertions by @EurFelux in #13741
- fix: add API key placeholders for LM Studio and Ollama in OpenClaw and Claude Code by @DeJeune in #13552
- fix(agent): stop thinking timer on abort by emitting abort stream part by @DeJeune in #13568
- chore: release v1.8.3 by @kangfenmao in #13788
New Contributors
- @majiayu000 made their first contribution in #13676
Full Changelog: v1.8.2...v1.8.3
v1.8.2
What's Changed
- feat: upgrade MiniMax default model to M2.7 by @octo-patch in #13593
- fix: Format provider API hosts in API server & refactor shared utilities by @EurFelux in #13198
- feat(model): add support for MiMo-V2-Pro and MiMo-V2-Omni models by @ousugo in #13613
- chore: Add CI check scripts to package.json by @EurFelux in #13564
- fix(tests): resolve Windows test failures and upgrade prek by @GeorgeDong32 in #13619
- fix(MessageHeader): crash when clicking topic in message search by @kangfenmao in #13627
- fix: correct parameter order in knowledgeSearchTool call by @SiinXu in #13635
- chore: release v1.8.2 by @kangfenmao in #13639
Full Changelog: v1.8.1...v1.8.2
v1.8.1
What's Changed
- fix(agents): fix Zed URL scheme and redesign OpenExternalAppButton by @beyondkmp in #13501
- fix(azure): keep dated api versions on chat transport by @cherry-ai-bot[bot] in #13506
- fix: prevent horizontal scroll in agent chat messages container by @EurFelux in #13508
- fix(mcp): resolve hub tool auto-approve to underlying server by @DeJeune in #13493
- fix(ci): only trigger release build on PR merge, not on every push by @DeJeune in #13512
- feat: add clickable file paths to agent tool outputs and inline code by @DeJeune in #13465
- 🤖 Daily Auto I18N Sync: Mar 17, 2026 by @github-actions[bot] in #13521
- fix(code-tools): launch errors on Windows & Qwen Code auth issue by @GeorgeDong32 in #13400
- fix: propagate actual stream errors instead of generic NoTextGeneratedError by @EurFelux in #13542
- fix: Windows Terminal launch fails on non-English systems by @SiinXu in #13551
- fix: disable thinking mode for LLM language detection by @EurFelux in #13565
- fix: add budgetTokens fallback for Agent thinking compatibility by @EurFelux in #13575
- feat: enhance gh-pr-review skill with multi-agent teams review and auto-fix by @DeJeune in #13530
- feat(mcp): add whitelist auto-trust for protocol install servers by @kangfenmao in #13586
- refactor(backup): enhance backup system with legacy backup and path security by @kangfenmao in #13587
- fix: add manual download option for macOS users with old code signing by @kangfenmao in #13378
- chore: release v1.8.1 by @kangfenmao in #13605
New Contributors
- @cherry-ai-bot[bot] made their first contribution in #13506
Full Changelog: v1.8.0...v1.8.1
v1.8.0
What's Changed
- fix: correctly pass poe web_search via extra_body when built-in search is enabled by @kovsu in #13434
- feat(openclaw): binary download install, auto update check, and gateway refactor by @kangfenmao in #13440
- feat(assistant): add configurable max tool calls setting by @GeorgeDong32 in #13398
- feat: separate Agent into independent module with dedicated page and route by @EurFelux in #13420
- fix: increase default request timeout from 10 to 30 minutes by @EurFelux in #13453
- chore: add Zed editor settings example, clean up configs, and improve dev guides by @EurFelux in #13457
- fix(aiCore): bypass AI SDK model ID allowlist for reasoning detection by @EurFelux in #13463
- fix(openclaw): fix gateway status detection and improve error reporting by @DeJeune in #13433
- feat: add MiniMax-M2.5-highspeed model by @octo-patch in #13470
- docs: update agents.db path in CLAUDE.md after #13392 by @EurFelux in #13471
- feat(agents): add manual drag-and-drop sorting for agent and session lists by @EurFelux in #13460
- fix(ui): show web search providers for all models by @EurFelux in #13472
- fix(agents): use correct SWRInfinite cache key and add optimistic update for session editing by @EurFelux in #13475
- feat(ui): enable windows mica effect by @lacser in #13476
- chore: migrate .claude/skills to directory symlinks by @EurFelux in #13486
- fix(agents): prevent deleting the last accessible directory by @EurFelux in #13483
- feat(skills): add vercel-react-best-practices skill by @DeJeune in #13424
- fix(scripts): add fallback to GitCode mirror when GitHub download fails by @kangfenmao in #13492
- fix(openclaw): improve gateway startup diagnostics and fix UI polling loop by @DeJeune in #13495
- fix(agents): improve navbar layout for agent status screens by @kangfenmao in #13494
- feat(streaming): replace fixed timeout with resettable idle timeout by @EurFelux in #13497
- chore: release v1.8.0 by @kangfenmao in #13500
New Contributors
- @octo-patch made their first contribution in #13470
- @lacser made their first contribution in #13476
Full Changelog: v1.7.25...v1.8.0
v1.7.25
What's Changed
- fix: improve Qwen 3.5 reasoning model detection and thinking param handling by @EurFelux in #13235
- docs: Expand CLAUDE.md with comprehensive architecture and development guide by @MontyDon7 in #13241
- feat: reset selected index when returning to home from feature routes by @kovsu in #13234
- feat(gemini): add thought signature persistence for conversation replay by @EurFelux in #13100
- fix: update thinking_millsec during streaming to prevent timer reset on remount by @EurFelux in #13278
- fix(api-server): relax chat completion validation for tool calling messages by @EurFelux in #13279
- fix: save swapped source and target languages to db by @FyLost in #13276
- fix: ensure temp directory exists before document parsing by @EurFelux in #13283
- 🤖 Daily Auto I18N Sync: Mar 07, 2026 by @github-actions[bot] in #13273
- chore(deps): upgrade electron from 40.6.1 to 40.8.0 by @0xfullex in #13288
- fix: aggregate knowledge base notifications to prevent toast storm by @kovsu in #13284
- 🤖 Daily Auto I18N Sync: Mar 08, 2026 by @github-actions[bot] in #13297
- feat: add GPT-5.4 support and auto-fallback for future GPT-5.x sub-versions by @EurFelux in #13293
- fix(i18n): clarify tool permission title as 'Pre-approved Tools' by @EurFelux in #13327
- fix(backup): defer auto backup during streaming response by @GeorgeDong32 in #13307
- fix: modify aiionly websites by @jo1yne06 in #13322
- fix: Replace actioningPlugin with useLoading hook by @EurFelux in #13095
- fix: remove approval countdown timers and add system notifications by @DeJeune in #13281
- fix: check underlying tool permissions for hub invoke/exec by @DeJeune in #13282
- fix: agent tool status not stopping on abort by @DeJeune in #13111
- fix: respect pasteLongTextAsFile setting in MessageEditor by @kovsu in #13313
- fix: remove scrollbar width override in responsive.css by @EurFelux in #13318
- chore: upgrade @anthropic-ai/claude-agent-sdk from 0.2.56 to 0.2.71 by @vaayne in #13339
- feat(analytics): track app launch event on startup by @kangfenmao in #13334
- 🤖 Daily Auto I18N Sync: Mar 10, 2026 by @github-actions[bot] in #13347
- refactor(OGCard): adjust layout and migrate to TailwindCSS by @EurFelux in #13355
- fix: add warning for temporarily unavailable Anthropic OAuth authentication by @EurFelux in #13331
- fix: replace
pwithspanto resolve invalid nesting warning by @kovsu in #13351 - fix: use consistent OpenClaw icon in sidebar settings by @younggglcy in #13354
- fix: auto-convert reasoning_effort to reasoningEffort for openai-compatible providers by @DeJeune in #12831
- feat(agent): add custom environment variables to agent configuration by @beyondkmp in #13357
- fix: prepend node directory to PATH for sudo OpenClaw install/uninstall by @SiinXu in #13356
- fix: unify agents.db path between dev and prod environments by @kangfenmao in #13392
- fix: install or uninstall button state issues in plugin browser by @kovsu in #13114
- fix(ui): fix Move To submenu overflow and hide scrollbar by @GeorgeDong32 in #13399
- 🤖 Daily Auto I18N Sync: Mar 12, 2026 by @github-actions[bot] in #13404
- docs: update issue templates to use type instead of label by @EurFelux in #13407
- feat(provider): add agent support filter for provider list by @kangfenmao in #11932
- fix: resolve spawn ENOENT on Windows for Code Tools by @lzl0304 in #13405
- fix: Use default assistant for topic auto-renaming by @EurFelux in #13387
- fix: upgrade xAI web search from deprecated Live Search to Responses API by @PhoenixCPH in #12812
- fix: correct Gemini reasoning params for none effort and Gemini 3 thinkingLevel by @EurFelux in #13388
- docs: add DeJeune as code owner for core data paths by @DeJeune in #13414
- feat(minapp,provider): add MiniMax Agent, IMA mini apps and MiniMax Global, Z.ai providers by @GeorgeDong32 in #13099
- feat(websearch): add Querit search provider by @MurphyZzzzz in #13050
- fix: support local providers (ollama, new-api, aihubmix) for extended thinking and API server by @DeJeune in #12796
- fix: remove 32-char truncation for user-defined filter paths by @Jah-yee in #13423
- fix: preserve emoji when saving assistant to library by @kovsu in #13371
- feat(openclaw): binary download install, auto update check, and gateway refactor by @DeJeune in #13165
- fix: secure built-in filesystem MCP root handling by @DeJeune in #13294
- fix: resolve single-conversation memory leaks in renderer process by @DeJeune in #13113
- fix: use i18nKey for error display and add timeout enforcement by @EurFelux in #12164
- fix: render xml fenced svg blocks as svg previews by @kovsu in #13431
- refactor(openclaw): unify package to openclaw, remove openclaw-zh by @kangfenmao in #13436
- chore: release v1.7.25 by @kangfenmao in #13438
New Contributors
- @MontyDon7 made their first contribution in #13241
- @younggglcy made their first contribution in #13354
- @SiinXu made their first contribution in #13356
- @PhoenixCPH made their first contribution in #12812
- @MurphyZzzzz made their first contribution in #13050
- @Jah-yee made their first contribution in #13423
Full Changelog: v1.7.24...v1.7.25
v1.7.24
What's Changed
- feat: mention Feishu user in issue notification card by @DeJeune in #13199
- fix: respect agent allowed_tools in MCP auto-approval check by @lucamorettibuilds in #12965
- fix: correct MCP tool parameter parsing and nested schema display by @vaayne in #13186
- fix: move OpenAPI spec generation to build time by @EurFelux in #13207
- revert: remove Feishu at-mention from issue notification card by @DeJeune in #13201
- fix(ci): prevent edited events from creating skipped CI runs by @EurFelux in #13170
- feat: route Gemini 3.1 Flash Lite to gemini3_flash thinking type by @EurFelux in #13211
- fix: codemirror highlight crash by @kovsu in #13196
- 🤖 Daily Auto I18N Sync: Mar 04, 2026 by @github-actions[bot] in #13191
- fix: PinnedTodoPanel ignores narrow mode width setting by @DeJeune in #13127
- feat: add thinking/reasoning effort control to agent sessions by @DeJeune in #13137
- perf: send incremental delta instead of full inputBuffer for tool streaming by @DeJeune in #13213
- fix: duplicate error blocks in aborting by @kovsu in #13224
- fix: implement infinite scroll for sessions list by @Pleasurecruise in #11957
- ci(deps): bump actions/github-script from 7 to 8 by @dependabot[bot] in #13120
- ci(deps): bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #13119
- refactor: Improve plugin detail modal UI and fix size display by @EurFelux in #13090
- feat: make accessible_paths optional during agent creation by @DeJeune in #13126
- fix: prompt caching crash for OpenRouter and non-Anthropic providers by @DeJeune in #13227
- fix: use camelCase reasoningEffort for Gemini 3 models in openai-compatible provider by @DeJeune in #13228
- ci: pin claude-code-action to v1.0.66 in prepare-release by @DeJeune in #13229
- chore: release v1.7.24 by @kangfenmao in #13231
New Contributors
- @lucamorettibuilds made their first contribution in #12965
Full Changelog: v1.7.23...v1.7.24
v1.7.23
What's Changed
- docs: add review workflow to CLAUDE.md by @EurFelux in #13145
- feat: add dev-only message data inspection button by @EurFelux in #13142
- refactor: replace static pnpm patch with postinstall script for claude-agent-sdk by @DeJeune in #13139
- fix: render directory Select options with optionRender by @Pleasurecruise in #13152
- fix: open external editor in new window instead of reusing existing one by @kovsu in #13160
- fix: support esc to close modal by @kovsu in #13159
- fix: show approval card for builtin and provider tools by @al-prk in #13154
- chore(deps): upgrade @uiw/codemirror packages to 4.25.7 by @EurFelux in #13149
- fix: improve plugin browser UX with three small fixes by @Pleasurecruise in #13153
- fix(ci): skip CI on PR body/title edits, only re-run on base branch changes by @EurFelux in #13150
- fix(renderer): synchronize miniapp settings state and respect region filter by @nanimore in #13166
- fix(Selection): prevent Windows crash when closing transparent action window by @0xfullex in #13177
- chore: Improve Claude translator workflow logic and clarity by @EurFelux in #13175
- fix: persist translation block cleanup to database on error by @kovsu in #13134
- feat: add MarqueeText component with hover bounce-scroll for overflowing text by @EurFelux in #13168
New Contributors
Full Changelog: v1.7.22...v1.7.23
v1.7.22
What's Changed
- ci: add PR description check workflow by @DeJeune in #13035
- fix: remove extra divider in settings by @kovsu in #13047
- docs: add user-facing change guidance for release notes and docs checkbox by @DeJeune in #13041
- chore: upgrade electron to 40.6.1 by @beyondkmp in #13039
- fix: disable translate button when sending message is disabled by @kovsu in #13045
- feat(skills): Add gh-pr-review skill for structured GitHub PR reviews by @DeJeune in #13051
- fix: Resolve MCP SDK security vulnerability by @EurFelux in #13056
- chore(deps): bump @anthropic-ai/claude-agent-sdk from 0.1.76 to 0.2.56 by @DeJeune in #13044
- refactor: replace antd message with window toast by @kovsu in #13062
- fix: filter hidden elements when exporting messages as images by @kovsu in #13066
- chore: align @types/node with Electron 40's Node.js 24 by @EurFelux in #13055
- docs: add self-review checklist item to PR template by @DeJeune in #13067
- chore(deps): fix security vulnerabilities in edge dependencies by @Pleasurecruise in #13054
- fix: remove obsolete types and add pnpm overrides by @Pleasurecruise in #13078
- chore: use node-version-file for CI workflows by @EurFelux in #13076
- fix: clear attached files after sending message in agent session inputbar by @DeJeune in #13081
- 🤖 Daily Auto I18N Sync: Feb 27, 2026 by @github-actions[bot] in #13086
- fix: call abort when closing message translation by @kovsu in #13053
- chore: Add post-merge hook for automatic pnpm install by @EurFelux in #13089
- fix(resource-panel): show files and plugins when opening via button click by @DeJeune in #13079
- refactor: migrate to aisdk v6 Phase 1 by @DeJeune in #12078
- fix(NotesService): 修复当未打开笔记页面,直接将聊天导出为笔记时因路径问题导致的导出失败 by @Little-LittleProgrammer in #13048
- fix: upgrade ollama provider to 3.3.1 by @Pleasurecruise in #13085
- ci: skip on forks by @kovsu in #13110
- 🤖 Daily Auto I18N Sync: Feb 28, 2026 by @github-actions[bot] in #13104
- fix: correct qwen3.5 flash typo and merge plus/flash patterns by @GeorgeDong32 in #13116
- fix: improve log message layout by @kovsu in #13123
- ci(deps): bump actions/download-artifact from 5 to 8 by @dependabot[bot] in #13121
- fix(aiCore): extract provider/model from config and fix middleware ordering by @DeJeune in #13109
- fix: enable thinking for non-Anthropic models using Claude endpoints by @DeJeune in #13138
- fix: optimize
HtmlArtifactsPopupre-rendering by @kovsu in #13133
New Contributors
- @Little-LittleProgrammer made their first contribution in #13048
Full Changelog: v1.7.21...v1.7.22
v1.7.19
Immutable
release. Only release title and notes can be modified.
What's Changed
- refactor: migrate Serializable type to Zod schema and fix circular reference handling by @EurFelux in #12865
- 🤖 Weekly Auto I18N Sync: Feb 12, 2026 by @github-actions[bot] in #12898
- refactor: Convert WebSearchSource enum to const object with Zod schema by @EurFelux in #12866
- feat: change auto-i18n workflow to run daily instead of weekly by @EurFelux in #12899
- fix(test): codetool test timeout by @GeorgeDong32 in #12862
- fix: prevent MCP multimodal tool results from exceeding API message size limits by @Moeblack in #12735
- fix(reset): close all DBs before restore/reset; clear entire Data/ on factory reset by @EurFelux in #12892
- refactor(minimax): update MiniMax model configurations by @kangfenmao in #12910
- fix: defer provider name trimming to submission time by @kangfenmao in #12903
- refactor: improve Agent Settings popup UI components by @kangfenmao in #12901
- fix(openclaw): fix Node.js detection for nvm/mise/fnm-managed installations by @DeJeune in #12902
- fix(ui): simplify OpenClawIcon for better visual consistency by @kangfenmao in #12908
New Contributors
Full Changelog: v1.7.18...v1.7.19