Cherry Studio 是一款支持多个大语言模型(LLM)服务商的开源桌面客户端,兼容 Windows、Mac 和 Linux 系统。
该项目近日发布新版本 v1.3.0,包含了大量变更。
一、新增功能亮点
v1.3.0 在模型支持、核心体验及界面交互等方面均有显著增强:
-
模型与服务商拓展:
-
新增 Grok / X (#5706)。
-
新增 n8n (含 Logo 及 URL) (#5776)。
-
支持用户自定义 Mini App(#5731)。
-
支持图像编辑功能(#5469)。
-
支持 OpenAI 最新的 Responses API (#5621)。
-
增强了 OpenRouter 中 Token 预算的计算逻辑 (#5625)。
-
新增 Qwen3 系列模型支持 (#5533): 紧跟模型发展趋势,集成最新的 Qwen3 系列大语言模型,为您提供更多先进模型选择。
-
新增 AI Hub Mix 绘画服务商 (#4503): 绘画功能再添新翼,集成 ideogram.ai 的商用级别模型,并有绘图,放大,混合等不同生图模式。
-
新增 Bocha 网页搜索服务商 (#5608): 引入 Bocha 作为新的网页搜索选项,没错,就是 DeepSeek 官网背后的搜索提供商。
-
支持 DashScope Reranker (#5725): 集成 DashScope Reranker,提升搜索结果与知识匹配的相关性。后已进一步整合为通用 Reranker (#5818)。
-
OpenAI 服务商增强:
-
Claude 模型支持网页搜索 (#5771): 为 Claude 打通了网络搜索能力,确实又快又准。
-
Gemini 安全设置调整: Gemini 安全设置默认调整为关闭 (OFF),并升级了 @google/genai 依赖包 (#5763)。
-
MiniApps 生态扩展:
-
-
核心交互与功能增强:
-
Cherry Studio 将有可能成为第一个同时支持函数调用 (Function Calling) 和系统提示词 (System Prompt) (#5499)的 MCP 工具!
-
MCP 实现登录 Shell 环境检索 (#5739),增强了与本地环境的交互能力。
-
更新 MCP 自动安装服务名称及服务注册逻辑 (#5751)。
-
标准存储协议:FTP,HTTP,SFTP,WebDAV 等
-
对象存储服务:azblob,gcs,obs,oss,s3 等
-
文件存储服务:fs, azdfs,hdfs,webhdfs, ipfs 等
-
消费级存储服务(网盘):Google Drive,OneDrive,Dropbox 等
-
Key Value 存储服务:Memory,Redis,Rocksdb 等
-
缓存服务:Ghac,Memcached 等
-
优化知识库内容提取逻辑 (#5470) 和识别 (#5707)。
-
增强搜索功能,支持配置可选的 HTTP 选项 (#5765)。
-
网页搜索按钮新增“禁用网页搜索”选项 (#5717)。
-
新增“**导出助手 (Agent)”**功能 (#5789),方便用户分享和迁移个性化配置的助手。
-
助手 (Agent) 支持配置“常用语” (Regular Phrases) (#5775),并且这些常用语可以随助手一同导出 (#5836)。
-
对话主题自动重命名 (#5504): MessageThunk 集成此功能,可根据助手的回答智能更新当前对话的主题名称,方便后续查找与管理。
-
助手 (Agent) 能力提升:
-
知识库与搜索优化:
-
远程存储方案:新增基于 OpenDAL 的远程存储类 (#2700),为数据备份与同步提供了更强大和灵活的基础设施。以下方式都将成为可能:
-
MCP (Model Control Program) 工具增强:
-
Prompt 显示控制 (#5439): 新增选项,允许用户控制是否在界面中显示完整的 Prompt 内容。
-
消息翻译功能增强 (#5684): 翻译后的消息旁新增了“复制”和“关闭”按钮,操作更便捷。
-
模型健康检查支持流式响应 (#5546): 提升了检查效率和用户感知。
-
多窗口数据同步 (#5592): 实现跨窗口状态同步,例如自定义 CSS (#5596),确保多窗口体验一致性。(划重点!!!多窗口!!!!!可以发挥想象了)
-
-
界面与视觉体验改进:
- 新增界面缩放比例设置 (#5665): 用户可根据屏幕和偏好调整整体界面显示大小,同时提供本地化支持。
- 引入 Motion 动画库 (#5869): 为加载指示器 (Spinner)、消息块等元素加入平滑动画效果,提升视觉反馈的细腻度。
- 右键菜单新增“检查元素”选项 (#5807): 并支持本地化,方便开发者和高级用户调试。
- 引用列表样式调整 (#5516): 对引用信息的展示样式进行了优化。
- 工具调用结果展示样式优化 (#5758): 的结果显示更加清晰易读。
-
开发者与高级用户选项:
- 支持自定义助手地址 (#5540): 允许用户指定私有或第三方助手服务的 API 地址。
- 新增开发文档 (#5476): 添加了 messageBlock、messageThunk 和 useMessageOperations 的使用指南,方便二次开发或插件贡献者。
- 主窗口监视器 (#5532): WindowService 新增了对渲染进程事件的主窗口监视器功能。
- 消息完成事件 (#5696): 现在会在消息处理完成时发出事件,供其他模块或插件监听。
二、重要优化与重构
为了提升应用的整体性能和可维护性,我们进行了多项底层重构和专项优化:
-
网络搜索模块重构 (#5291): 全面重构了网络搜索模块,显著提升了其易用性和稳定性,并支持通过快捷菜单快速切换搜索引擎。
-
消息块 (Message Block) 结构与渲染优化🎉
大活儿敲黑板!!!Message Block 重构将为 MCP 调用,workflow/agent 运行,带来更强的扩展性,大家可以猜 Cherry Studio 接下来的方向了!
- 对消息块结构进行了重构 (#4660, #5536),使其更加清晰和易于扩展。
- 优化了消息块的渲染性能,例如通过 useMemo 缓存图像块组,减少不必要的重复渲染 (#5722)。
- 增强了图片块的渲染逻辑和样式 (#5567)。
- 优化主文本块 (MainTextBlock) 内容处理,如忽略 tool_use 标记以改善特定场景的显示 (#5483)。
-
性能提升专项:
- 优化 标签的显示性能 (#5489)。
- 改进输入框长文本粘贴性能 (#5580) 及按钮状态记忆 (#5577)。
- 为快捷面板 (Quick Panel) 和模型选择弹窗 (SelectModelPopup) 引入虚拟列表 (Virtual List) (#5594),大幅提升了在项目或模型数量较多时的加载和滚动性能。
-
架构与代码质量:
- 窗口管理优化: 分离 MiniWindow 与 MainWindow 的加载逻辑 (#5581);优化 WindowService 中右键菜单的设置 (#5589) 和标题栏样式及主题切换逻辑 (#5633)。
- 文本处理中间件: 新增 extractReasoningMiddleware (#5637) 以增强对文本中推理过程的提取与处理。
- 代码清理: 移除了未使用的选择窗口 (#5586)、冗余的局部变量 (#5654)、调试日志 (#5722) 及无用文档 (#5740),精简了代码库。
- 自定义 CSS 功能简化: 通过新引入的跨窗口状态同步机制,简化了自定义 CSS 的实现 (#5596)。
- 模型列表样式优化: 改进了模型列表的视觉样式和分组逻辑 (#5674)。
- API/模型检查逻辑优化: 在检查 API 或模型可用性时,优先尝试启用流式传输的检查方式 (#5857)。
三、关键问题修复
我们细致排查并修复了大量用户反馈及内部测试发现的问题,以下列举部分代表性修复:
- 消息与知识库:
- 修复了消息在特定情况下未使用到知识库内容的问题 (#5485)。
- 修复了知识库 URL 错误 (#5735) 和引用列表加载相关问题 (#5742)。
- MCP 与工具调用:
- 修复了 MCP 调用失败时,错误类型无法正确显示的问题 (#5492)。
- 改进了 MCP 工具错误消息的格式化和响应处理 (#5565)。
- 修复了连接 OAuth MCP 服务器失败的问题 (#5709)。
- 修正了 MessageTools 中输入 schema 引用的问题,确保工具定义准确性 (#5804)。
- 模型与服务商相关:
- 修复了 Gemini 画图功能,并调整了默认图片高度 (#5585, #5658)。
- 修复了 Qwen3 模型检查逻辑 (#5811) 和思考模式切换的相关问题 (#5781 的补充修复)。
- 修复了 OpenAI Provider 超时参数非整数的问题 (#5681)。
- 处理了 Anthropic 服务商中 Base64 文件通过 IPC 和文件管理的问题 (#5595)。
- 修复 Jina Embedding 错误 (#5839)。
- 界面与交互:
- 修复了 TopicsTab 中使用 onMouseEnter 可能导致的问题,改为 onContextMenu (#5459)。
- 修复了中止操作时意外覆盖 Block 状态的问题 (#5547)。
- 修复了流式响应中 thinking 状态刷新不及时的问题 (#5557),以及 resetHasReasoningContent 的逻辑 (#5563)。
- 确保 messageThunk 中只有在响应中不存在用量信息时才估算用量 (#5553)。
- 修复了暗黑主题下引用列表显示问题及 URL 重复请求的问题 (#5752)。
- 修复了文件页面滚动条异常 (#5619, 对应 #5618)。
- 修复了代码块不必要的边框和圆角 (#5773)。
- 修复了输入框在特定情况下 isComposing 状态判断不准 (#5848) 及焦点获取 (#5860)、选区重置的问题 (#5866)。
- 修复了 SelectModelPopup 中列表吸顶 (#5795) 和滚动行为 (#5812)。
- 修复了条件性显示“加载更多”微调器 (spinner) 的逻辑 (#5670) 和无限滚动布局 (#5671)。
- 功能性修复:
- 修复了 messageThunk 中重置消息逻辑,确保包含模型信息 (#5632)。
- 修复了 WebDAV 本地备份文件存储路径错误的问题 (#5643)。
- 规范化模型 ID 为小写,确保一致性 (#5642)。
- 修复了“网页搜索”和“清除上下文”在某些情况下不工作的问题 (#5677)。
- 修复了 StoreSyncService 在注册 IPC 处理器时设置标志的 bug (#5715)。
- 修复了聊天消息翻译的问题 (#5682)。
- 确保在创建消息块时包含 thinking_millsec (#5685)。
- 修复了记忆助手时未同时记忆所选模型的问题 (#5701)。
- 修复了 MCP 服务器类型判断逻辑 (#5769)。
- 修复了从 MCP 响应中显示图片的问题 (#5780)。
- 修复了用户消息用量统计错误 (#5657)。
- 修复了一系列下一版本(指 1.3.0)发布前的各类小问题 (#5801)。
四、其他更新
- 国际化 (i18n):
- 补充了俄语缺失的翻译 (#5631)。
- 更新了多语言机器翻译文本,采用 Qwen3 236B 模型进行翻译 (#5840)。
- 依赖更新:
- 升级 electron-updater 至 v6.6.4 并移除了相关补丁 (#5650)。
- 升级 electron-builder 至 v26.0.15 (#5651)。
- 这些更新有助于提升应用的底层稳定性和打包效率。
- 文档:
- 新增了项目**架构概览文档** (#5824)。
Cherry Studio v1.3.0 是一次包含了大量改进的综合性版本更新,不仅致力于新的功能,更持续投入前瞻的技术路线,并积极修复各类已知问题。都旨在提供一个更加先进,稳定,高效且易于使用的 AI 交互与管理平台。
下载地址:https://github.com/CherryHQ/cherry-studio/releases/tag/v1.3.3