cherry-studio/docs/zh
George·Dong 2a31fa2ad5
refactor: switch yarn to pnpm (#12260)
* refactor: switch workflows from yarn to pnpm

Replace Yarn usage with pnpm in CI workflows to standardize package
management and leverage pnpm's store/cache behavior.

- Use pnpm/action-setup to install pnpm (v) instead of enabling corepack
  and preparing Yarn.
- Retrieve pnpm store path and update cache actions to cache the pnpm
  store and use pnpm-lock.yaml for cache keys and restores.
- Replace yarn commands with pnpm equivalents across workflows:
  install, i18n:sync/translate, format, build:* and tsx invocation.
- Avoid committing lockfile changes by resetting pnpm-lock.yaml instead
  of yarn.lock when checking for changes.
- Update install flags: use pnpm install --frozen-lockfile / --install
  semantics where appropriate.

These changes unify dependency tooling, improve caching correctness,
and ensure CI uses pnpm-specific lockfile and cache paths.

* build: switch pre-commit hook to pnpm lint-staged

Update .husky/pre-commit to run pnpm lint-staged instead of yarn.
This aligns the pre-commit hook with the project's package manager
and ensures lint-staged runs using pnpm's environment and caching.

* chore(ci): remove pinned pnpm version from GH Action steps

Remove the explicit `with: version: 9` lines from multiple GitHub Actions workflows
(auto-i18n.yml, nightly-build.yml, pr-ci.yml, update-app-upgrade-config.yml,
sync-to-gitcode.yml, release.yml). The workflows still call `pnpm/action-setup@v4`
but no longer hardcode a pnpm version.

This simplifies maintenance and allows the action to resolve an appropriate pnpm
version (or use its default) without needing updates whenever the pinned
version becomes outdated. It reduces churn when bumping pnpm across CI configs
and prevents accidental pin drift between workflow files.

* build: Update pnpm to 10.27.0 and add onlyBuiltDependencies config

* Update @cherrystudio/openai to 6.15.0 and consolidate overrides

* Add @langchain/core to overrides

* Add override for openai-compatible 1.0.27

* build: optimize pnpm config and add missing dependencies

- Comment out shamefully-hoist in .npmrc for better pnpm compatibility
- Add React-related packages to optimizeDeps in electron.vite.config.ts
- Add missing peer dependencies and packages that were previously hoisted

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* build: refine pnpm configuration and dependency management

- Simplify .npmrc to only essential electron mirror config
- Move platform-specific dependencies to devDependencies
- Pin sharp version to 0.34.3 for consistency
- Update sharp-libvips versions to 1.2.4

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* reduce app size

* format

* build: remove unnecessary disableOxcRecommendation option from react plugin configuration

* docs: Replace yarn commands with pnpm in documentation and scripts

* Revert "build: optimize pnpm config and add missing dependencies"

This reverts commit acffad31f8.

* build: import dependencies from yarn.lock

* build: Add some phantom dependencies and reorganize dependencies

* build: Keep consistent by removing types of semver

It's not in the previous package.json

* build: Add some phantom dependencies

Keep same version with yarn.lock

* build: Add form-data dependency version 4.0.4

* Add chalk dependency

* build: downgrade some dependencies

Reference: .yarn-state-copy.yml. These phantom dependencies should use top-level package of that version in node_modules

* build: Add phantom dependencies

* build: pin tiptap dependencies to exact versions

Ensure consistent dependency resolution by removing caret ranges and pinning all @tiptap packages to exact version 3.2.0

* chore: pin embedjs dependencies to exact versions

* build: pin @modelcontextprotocol/sdk to exact version 1.23.0

Remove caret from version specifier to prevent automatic upgrades and ensure consistent dependencies

* chore: update @types/node dependency to 22.17.2

Update package.json and pnpm-lock.yaml to use @types/node version 22.17.2 instead of 22.19.3 to maintain consistency across dependencies

* build: move some dependencies to dev deps and pin dependency versions to exact numbers

Remove caret (^) from version ranges to ensure consistent dependency resolution across environments

* chore: move dependencies from prod to dev and update lockfile

Move @ant-design/icons, chalk, form-data, and open from dependencies to devDependencies
Update pnpm-lock.yaml to reflect dependency changes

* build: update package dependencies

- Add new dependencies: md5, @libsql/win32-x64-msvc, @strongtz/win32-arm64-msvc, bonjour-service, emoji-picker-element-data, gray-matter, js-yaml
- Remove redundant dependencies from devDependencies

* build: add cors, katex and pako dependencies

add new dependencies to support cross-origin requests, mathematical notation rendering and data compression

* move some js deps to dev deps

* test: update snapshot tests for Spinner and InputEmbeddingDimension

* chore: exclude .zed directory from biome formatting

* Update @ai-sdk/openai-compatible patch hash

* chore: update @kangfenmao/keyv-storage to version 0.1.3 in package.json and pnpm-lock.yaml

---------

Co-authored-by: icarus <eurfelux@gmail.com>
Co-authored-by: beyondkmp <beyondkmp@gmail.com>
Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
Co-authored-by: kangfenmao <kangfenmao@qq.com>
2026-01-05 22:16:34 +08:00
..
guides refactor: switch yarn to pnpm (#12260) 2026-01-05 22:16:34 +08:00
references refactor: switch yarn to pnpm (#12260) 2026-01-05 22:16:34 +08:00
README.md fix: update links in README and AboutSettings for correct documentation paths 2026-01-04 16:07:56 +08:00

banner

English | 中文 | 官方网站 | 文档 | 开发 | 反馈

Featured|HelloGitHub kangfenmao%2Fcherry-studio | Trendshift Cherry Studio - AI Chatbots, AI Desktop Client | Product Hunt

🍒 Cherry Studio

Cherry Studio 是一款支持多个大语言模型LLM服务商的桌面客户端兼容 Windows、Mac 和 Linux 系统。

👏 欢迎加入 Telegram 群组Discord | QQ群(575014769)

❤️ 喜欢 Cherry Studio? 点亮小星星 🌟赞助开发者! ❤️

📖 使用教程

https://docs.cherry-ai.com

🌠 界面

🌟 主要特性

  1. 多样化 LLM 服务支持
  • ☁️ 支持主流 LLM 云服务OpenAI、Gemini、Anthropic、硅基流动等
  • 🔗 集成流行 AI Web 服务Claude、Perplexity、Poe、腾讯元宝、知乎直答等
  • 💻 支持 Ollama、LM Studio 本地模型部署
  1. 智能助手与对话
  • 📚 内置 300+ 预配置 AI 助手
  • 🤖 支持自定义创建专属助手
  • 💬 多模型同时对话,获得多样化观点
  1. 文档与数据处理
  • 📄 支持文本、图片、Office、PDF 等多种格式
  • ☁️ WebDAV 文件管理与数据备份
  • 📊 Mermaid 图表可视化
  • 💻 代码高亮显示
  1. 实用工具集成
  • 🔍 全局搜索功能
  • 📝 话题管理系统
  • 🔤 AI 驱动的翻译功能
  • 🎯 拖拽排序
  • 🔌 小程序支持
  • ⚙️ MCP(模型上下文协议) 服务
  1. 优质使用体验
  • 🖥️ Windows、Mac、Linux 跨平台支持
  • 📦 开箱即用,无需配置环境
  • 🎨 支持明暗主题与透明窗口
  • 📝 完整的 Markdown 渲染
  • 🤲 便捷的内容分享功能

📝 开发计划

我们正在积极开发以下功能和改进:

  1. 🎯 核心功能
  • 选择助手 - 智能内容选择增强
  • 深度研究 - 高级研究能力
  • 全局记忆 - 全局上下文感知
  • 文档预处理 - 改进文档处理能力
  • MCP 市场 - 模型上下文协议生态系统
  1. 🗂 知识管理
  • 笔记与收藏功能
  • 动态画布可视化
  • OCR 光学字符识别
  • TTS 文本转语音支持
  1. 📱 平台支持
  • 鸿蒙版本 (PC)
  • Android 应用(第一期)
  • iOS 应用(第一期)
  • 多窗口支持
  • 窗口置顶功能
  1. 🔌 高级特性
  • 插件系统
  • ASR 语音识别
  • 助手与话题交互重构

在我们的项目面板上跟踪进展并参与贡献。

想要影响开发计划?欢迎加入我们的 GitHub 讨论区 分享您的想法和反馈!

🌈 主题

欢迎 PR 更多主题

🤝 贡献

我们欢迎对 Cherry Studio 的贡献!您可以通过以下方式贡献:

  1. 贡献代码:开发新功能或优化现有代码
  2. 修复错误:提交您发现的错误修复
  3. 维护问题:帮助管理 GitHub 问题
  4. 产品设计:参与设计讨论
  5. 撰写文档:改进用户手册和指南
  6. 社区参与:加入讨论并帮助用户
  7. 推广使用:宣传 Cherry Studio

参考分支策略了解贡献指南

入门

  1. Fork 仓库Fork 并克隆到您的本地机器
  2. 创建分支:为您的更改创建分支
  3. 提交更改:提交并推送您的更改
  4. 打开 Pull Request:描述您的更改和原因

有关更详细的指南,请参阅我们的 贡献指南

感谢您的支持和贡献!

🔧 开发者共创计划

我们正在启动 Cherry Studio 开发者共创计划,旨在为开源生态系统构建一个健康、正向反馈的循环。我们相信,优秀的软件是通过协作构建的,每一个合并的拉取请求都为项目注入新的生命力。

我们诚挚地邀请您加入我们的贡献者队伍,与我们一起塑造 Cherry Studio 的未来。

贡献者奖励计划

为了回馈我们的核心贡献者并创造良性循环,我们建立了以下长期激励计划。

该计划的首个跟踪周期将是 2025 年第三季度7月、8月、9月。此周期的奖励将在 10月1日 发放。

在任何跟踪周期内(例如,首个周期的 7月1日 至 9月30日任何为 Cherry Studio 在 GitHub 上的开源项目贡献超过 30 个有意义提交 的开发者都有资格获得以下福利:

  • Cursor 订阅赞助:获得 70 美元Cursor 订阅积分或报销,让 AI 成为您最高效的编码伙伴。
  • 无限模型访问:获得 DeepSeekQwen 模型的 无限次 API 调用。
  • 前沿技术访问:享受偶尔的特殊福利,包括 ClaudeGeminiOpenAI 等模型的 API 访问权限,让您始终站在技术前沿。

共同成长与未来规划

活跃的社区是任何可持续开源项目背后的推动力。随着 Cherry Studio 的发展,我们的奖励计划也将随之发展。我们致力于持续将我们的福利与行业内最优秀的工具和资源保持一致。这确保我们的核心贡献者获得有意义的支持,创造一个开发者、社区和项目共同成长的正向循环。

展望未来,该项目还将采取越来越开放的态度来回馈整个开源社区。

如何开始?

我们期待您的第一个拉取请求!

您可以从探索我们的仓库开始,选择一个 good first issue,或者提出您自己的改进建议。每一个提交都是开源精神的体现。

感谢您的关注和贡献。

让我们一起建设。

🏢 企业版

在社区版的基础上,我们自豪地推出 Cherry Studio 企业版——一个为现代团队和企业设计的私有部署 AI 生产力与管理平台。

企业版通过集中管理 AI 资源、知识和数据,解决了团队协作中的核心挑战。它赋能组织提升效率、促进创新并确保合规,同时在安全环境中保持对数据的 100% 控制。

核心优势

  • 统一模型管理:集中整合和管理各种基于云的大语言模型(如 OpenAI、Anthropic、Google Gemini和本地部署的私有模型。员工可以开箱即用无需单独配置。
  • 企业级知识库:构建、管理和分享全团队的知识库。确保知识得到保留且一致,使团队成员能够基于统一准确的信息与 AI 交互。
  • 细粒度访问控制:通过统一的管理后台轻松管理员工账户,并为不同模型、知识库和功能分配基于角色的权限。
  • 完全私有部署:在您的本地服务器或私有云上部署整个后端服务,确保您的数据 100% 私有且在您的控制之下,满足最严格的安全和合规标准。
  • 可靠的后端服务:提供稳定的 API 服务、企业级数据备份和恢复机制,确保业务连续性。

在线演示

🚧 公开测试版通知

企业版目前处于早期公开测试阶段,我们正在积极迭代和优化其功能。我们知道它可能还不够完全稳定。如果您在试用过程中遇到任何问题或有宝贵建议,我们非常感谢您能通过邮件联系我们提供反馈。

🔗 Cherry Studio 企业版

版本对比

功能 社区版 企业版
开源 部分开源,对客户开放
成本 个人使用免费 / 商业授权 买断 / 订阅费用
管理后台 ● 集中化模型访问
员工管理
● 共享知识库
访问控制
数据备份
服务器 专用私有部署

获取企业版

我们相信企业版将成为您团队的 AI 生产力引擎。如果您对 Cherry Studio 企业版感兴趣,希望了解更多信息、请求报价或安排演示,请联系我们。

🔗 相关项目

  • one-apiLLM API 管理及分发系统,支持 OpenAI、Azure、Anthropic 等主流模型,统一 API 接口,可用于密钥管理与二次分发。

  • ublacklist:屏蔽特定网站在 Google 搜索结果中显示

🚀 贡献者



📊 GitHub 统计

Stats

Star 记录

Star History Chart