v1.5.4
Summary
- New service provider: AWS Bedrock
- Rich text editor support: Improved prompt editing experience with enhanced formatting options
- Drag-and-drop input optimization: Supports dragging text directly from other software into the input box, simplifying content input
- Parameter adjustment enhancements: Added Top-P and Temperature toggle settings for more flexible model control
- Background translation tasks: Translation tasks now support background execution, improving multitasking efficiency
- New model support: Added Qwen-MT, Qwen3235BA22Bthinking, and sonar-deep-research models to expand reasoning capabilities
- Improved inference stability: Fixed issues where some models failed to output reasoning content, ensuring complete results
- Mistral model fix: Resolved issues preventing the Mistral model from functioning, restoring its inference capability
- Backup directory optimization: Supports relative path input, improving backup configuration flexibility
- Data export adjustments: Added a toggle for exporting referenced content, providing finer export control
- Text stream integrity: Fixed text loss at the end of streams to ensure complete output
- Memory leak fixes: Optimized code logic to resolve memory leaks and improve runtime stability
- Simplified embedding models: Reduced configuration complexity for embedding models, improving usability
- MCP Tool long-running tasks: Enhanced stability for the MCP tool, supporting prolonged task execution
- Settings page optimization: Improved layout for a better user experience
What's Changed
- fix(AiProvider): remove unnecessary middleware removal logic for… by @DeJeune in #8437
- Feat/vertex-claude-support by @DeJeune in #7564
- fix(mcp-tools): enhance tool lookup logic to support partial matches by @DeJeune in #8473
- chore(deps): update vite to rolldown-vite by @beyondkmp in #8460
- refactor(ThinkChunkMiddleware): remove reasoning check for improved logic clarity by @DeJeune in #8505
- chore: ignore qwen-code settings by @alephpiece in #8509
- chore: Update channel improve by @beyondkmp in #8501
- fix: aihubmix provider generate image logic by @DDU1222 in #8478
- refactor(MessageEditor): lower minrows to 1, add padding by @alephpiece in #8434
- feat: use code editor in prompt settings by @alephpiece in #8456
- fix/mcp-bug by @DeJeune in #8518
- feat: support Relative Path Input for Backup Directory by @beyondkmp in #8471
- feat(MCPSettings): enhance JSON loading to inherit all MCPServer fields by @vaayne in #8498
- chore(i18n): forced nested structure to support i18n ally by @EurFelux in #8457
- refactor(useSmoothStream): optimize chunk handling and state management by @MyPrototypeWhat in #8514
- fix: call tool bug by @DeJeune in #8526
- fix(i18n): standardize i18n usage by @EurFelux in #8525
- fix: set consolelog eslint to error when in prci lint check by @0xfullex in #8532
- refactor(Knowledge): simplify dimension settings, support base migration by @alephpiece in #8315
- Feat/long run mcp by @DeJeune in #8499
- fix: #8531 by @Pleasurecruise in #8535
- feat(translate): add Ukrainian by @EurFelux in #8528
- feat(models): add support for new Qwen model and update effort ratio by @DeJeune in #8537
- fix(i18n): add i18n for data restore by @EurFelux in #8533
- feat(export): citation export control by @GeorgeDong32 in #8519
- Fix/qwen-mt by @DeJeune in #8527
- feat(mcp): add shouldConfig flag and i18n support for builtin MCPServer description by @EurFelux in #8440
- refactor(OpenAIApiClient, models, ThinkingButton): streamline reasoning model checks and enhance support for Perplexity models by @DeJeune in #8487
- feat(models): add Grok 4 model and update reasoning regex by @GeorgeDong32 in #8545
- feat(assistants): place copied assistant after the original one by @EurFelux in #8557
- perf(i18n): improve performance when getting i18n text by @EurFelux in #8548
- fix: pangu-pro-moe not reasoning by @Pleasurecruise in #8572
- fix(ModelEditContent): preserve model price settings by @EurFelux in #8560
- feat(contentsearch): optimize searchbar UI by @GeorgeDong32 in #8556
- feat(inputbar): drop text into inputbar by @EurFelux in #8579
- fix: add isPathInside functionality to check path relationships by @beyondkmp in #8590
- feat: add Top-P parameter toggle with default enabled state and improved UI styling by @lihqi in #8137
- feat(installer): add architecture compatibility check to NSIS installer by @beyondkmp in #8587
- fix(LocalBackup): streamline local backup relative directory handling by @beyondkmp in #8595
- feat(models): add support for Zhipu model and enhance reasoning checks by @DeJeune in #8609
- fix(WebSearchSettings): responsive table layout by @EurFelux in #8606
- fix(think-tool): update prompt handling logic and improve comments by @DeJeune in #8538
- fix: show something reasonable when missing embedding model by @EurFelux in #8600
- feat: improve builtin mcp sever display style by @kovsu in #8470
- feat(translate): support background execution of translation tasks by @EurFelux in #7892
- fix: no
/no_thinkfor qwen3 anymore if provider is dashscope by @EurFelux in #8616 - refactor(ModelEditContent): enhance model capabilities management and… by @DeJeune in #8562
- fix: reset pyodide globals between runs by @alephpiece in #8620
- fix/export-roletext-level by @GeorgeDong32 in #8634
- fix: change jschardet to chardet by @Pleasurecruise in #8577
- perf: part of memory leak by @EurFelux in #8619
- integrate AWS Bedrock API by @silenceboychen in #8383
- fix: resolve issue of top navigation bar being obscured by miniapp by @YinsenHo in #8517
- fix: remove compareVersions utility and update version check logic in AboutSettings by @beyondkmp in #8640
- refactor(aiCore): extract MixedBaseAPIClient as abstract class by @EurFelux in #8618
- feat: add support for Qwen 3-235B-A22B thinking model detection by @DeJeune in #8641
- fix(vite-rolldown): cannot parse pdf file by @beyondkmp in #8652
- fix(AppUpdater): simplify error logging and update version check logic by @beyondkmp in #8656
- feat: Support Cherry Studio as a Service (CSaaS) by @vaayne in #8098
- fix: apiserver display by @Pleasurecruise in #8669
- test: add tests for aiCore/middleware/utils by @farion1231 in #8645
- fix: update express dependency in package.json by @beyondkmp in #8677
- perf(ModelList): provider settings and model list responsiveness by @alephpiece in #8667
- fix(ModelList): stop propagation by @alephpiece in #8685
- refactor(ApiService): optimize memory search handling and improve error logging by @DeJeune in #8671
- feat: make API server default to closed/disabled by @vaayne in #8691
- fix: do not exit on emoji picker by @alephpiece in #8702
- refactor: update new zhipu ai dev docs website link by @tomsun28 in #8713
- feat(models): refine Qwen model support and token limits by @GeorgeDong32 in #8716
- fix(prompt): resolve variable replacement in function mode and add UI features by @KumaKorin in #6581
- feat: add multi-select mode wrapper for message component by @kovsu in #8653
- refactor: add feedback on saving assistant prompt by @alephpiece in #8726
- docs: update CLAUDE.md with current project requirements by @farion1231 in #8729
- feat(database): enable strict transaction durability for CherryStudio database by @beyondkmp in #8737
- fix(prompt): remove think tool by @EurFelux in #8733
- refactor: add a custom dynamic virtual list component by @alephpiece in #8711
- refactor(ApiService): comment out built-in tools import and usage by @DeJeune in #8744
- feat: add smooth transition animation to narrow mode toggle by @kovsu in #8740
- fix: flush redux persist data when app quit and update by @beyondkmp in #8741
- perf: improve model list loading by @alephpiece in #8751
- fix: conditional auto-focus based on last focused component by @kovsu in #8739
- perf: shiki code block by @alephpiece in #8763
- fix(WindowService): comment out dock icon hiding for macOS when closing to tray due to cmd+h behavior issue by @beyondkmp in #8658
- feature/dmxapi_painting_custom_size by @jin-wang-c in #8689
- fix/release-sync-git_tag by @brucewang5638 in #8755
- chore(tsconfig): adjust the path order by @EurFelux in #8769
- feat(llm): add provider Poe by @EurFelux in #8758
- fix(MCP): add missing /mcp suffix to TokenFlux sync URLs by @vaayne in #8777
- perf: model select popup by @alephpiece in #8766
- fix(Inputbar): input bar auto focus by @EurFelux in #8756
- refactor(ModelList): improve group style by @EurFelux in #8761
- Chore/issue template by @EurFelux in #8789
- refactor(ManageModelsPopup): better animation and feedback by @alephpiece in #8797
- feat(ProviderSettings): add more api options for non-system providers by @EurFelux in #7794
- fix(models): add 'qwen-plus-latest' entry and update regex patterns for model token limits by @DeJeune in #8804
- refactor: align model list buttons, use lucide icons by @alephpiece in #8803
- fix(OpenAIApiClient): fix multiple reasoning content handling by @EurFelux in #8767
- feat(miniapp): add banner attribute to google login tip by @kovsu in #8813
- refactor: update theme handling in TabContainer and Sidebar components by @beyondkmp in #8816
- fix(s3): add volces.com to virtual host suffix whitelist by @GeorgeDong32 in #8824
- feat: enable additional GPU channel features and improve crash reportdetails in renderer by @beyondkmp in #8819
- refactor: align lucide icons in antd button, use more lucide icons by @alephpiece in #8805
- feat: support bypass proxy by @beyondkmp in #8791
- fix the query for agents with the same name is not fully displayed by @wfy-belief in #8826
- fix: better mcp tool match and feedback by @EurFelux in #8825
- feat: add OpenAI o3 model support with enhanced tool calling by @lukegalea in #8253
- refactor: animate auto get dimension by @alephpiece in #8831
- perf(ApiService): speed up api check by @EurFelux in #8830
- feat: disable mask closing for various popups across the application by @DeJeune in #8832
- refactor: health check timeout by @alephpiece in #8837
- feat(Markdown): enable github markdown alert by @alephpiece in #8842
- feat: mini window state management by @kovsu in #8834
- refactor: improve style for antd select virtual list scrollbar by @alephpiece in #8841
- fix(models): some qwen3 models cannot disable thinking by @EurFelux in #8854
- refactor(providers): support more provider to remove /no_think command for qwen3 by @EurFelux in #8855
- feat(model): support step models by @EurFelux in #8853
- fix(ProxyManager): handle optional currentProxy in system proxy check and log changes by @beyondkmp in #8865
New Contributors
- @lihqi made their first contribution in #8137
- @tomsun28 made their first contribution in #8713
- @brucewang5638 made their first contribution in #8755
- @lukegalea made their first contribution in #8253
Full Changelog: v1.5.3...v1.5.4