Cherry Studio: a desktop client for cloud and local AI models
Cherry Studio is a multi-provider LLM desktop client for Windows, macOS and Linux combining smart chat, autonomous agents and 300+ built-in assistants.
At a glance
- What is it?
- Cherry Studio is an AGPL-3.0 desktop AI workstation for Windows, macOS and Linux, with chat, agents, knowledge bases and image tools. It connects configured providers and local models; its privacy policy also describes built-in model services.
- Who is it for?
- Cherry Studio brings several model providers, agents, MCP servers and knowledge bases into one desktop client. Its privacy policy describes both user-configured providers and built-in model services; availability depends on the service and configuration.
- Can I use it commercially?
- Yes, with strict conditions. AGPL-3.0 is a network copyleft licence: if people use a modified version over a network, for example as a hosted service, you must offer them its source code under the same licence.
- Is it still maintained?
- Yes. The repository received new commits within the last day.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.
Star history
- CherryHQ/cherry-studio53,488 ★ · +4,401
| Repository | 2026-07-28 | 2026-11-13 |
|---|---|---|
| CherryHQ/cherry-studio | 49.1k | 53.5k |
4,401 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
Connecting models and built-in services
Cherry Studio is an Electron application whose entry point is ./out/main/main.js, built with electron-vite and packaged with electron-builder for Windows, macOS and Linux. You can connect cloud providers such as OpenAI, Anthropic and Gemini, add any custom service that speaks a compatible API, or point it at local models through Ollama and LM Studio. One conversation can hold answers from several models side by side, which is the main reason to keep multiple providers configured at once.
The consequence is that cost and capability sit with whoever you connect. The project states it plainly: model and tool availability depends on your provider, operating system and configuration, and some features need API credentials, downloaded models, extra dependencies or system permissions. The privacy policy also describes built-in model services that do not require a user-supplied API key; their availability and providers can change. Check the available services and their terms in your version.
Agents carry their own workspace, model and tool permissions
The v2 line centres on agents. Each agent gets its own instructions, its own workspace, its own model and its own set of tool permissions. Inside those limits an agent can work with files, run commands, and drive browser and computer automation tools. Capabilities extend through Skills and through MCP (Model Context Protocol) servers, and agents can run scheduled tasks or be wired to messaging platforms through a feature called Channels.
Because an agent can run commands and operate a browser, the permission settings per agent are the part to get right before anything else. Giving a general purpose agent a broad workspace and command access means a model you do not control is acting on your files. Scheduled tasks make this sharper: a misconfigured agent keeps running on its timer whether or not you are watching the window.
Local storage and model requests
Local knowledge bases are built from files, folders and web pages, then attached to conversations or agents. Document handling covers PDF, Office files, images and plain text, with OCR and document processing options. Markdown notes and a file library hold attachments and generated files. Conversation history is stored locally by default, and backups can use local storage or WebDAV. Requests sent to a cloud model are processed by that provider; the privacy policy says built-in services relay request content through Cherry Studio.
That design has a cost. There is no built-in sync service named for the desktop app, so moving to a second machine means setting up WebDAV or copying backups yourself. Shared knowledge bases and centralized model management appear only in the separate Enterprise Edition, which also adds employee access controls and private deployment. A team that wants everyone pointed at one curated knowledge base will not get that from the open source build.
Error reporting and privacy settings
Error reporting goes through Sentry. The repository's .env.example describes Sentry configuration, including a built-in public DSN and consent for production uploads. The privacy policy separately describes operational information and error reports as collected by default and points to privacy toggles; check the behavior and settings in the version you use. Source map upload is opt-in and is switched on by release workflows that hold SENTRY_AUTH_TOKEN, SENTRY_ORG and SENTRY_PROJECT credentials. A PRIVACY.md file sits at the repository root alongside SECURITY.md.
The same file shows a development detail worth knowing if you build from source: MAIN_VITE_CHERRY_CLOUD_API_ORIGIN points at http://127.0.0.1:8084 for a local Cherry Cloud backend, and without that override the edition's production origin is used. So a source build talks to a production Cherry Cloud origin unless you change it, and you should read PRIVACY.md for what that origin receives.
Global and CN editions come from one codebase
The build scripts in package.json split the app into two editions. The default build sets CHERRY_EDITION=global, while build:cn sets CHERRY_EDITION=cn and packages with a separate electron-builder.cn.config.cjs file. Linux targets exist for x64 and arm64, both together and separately, for each edition. Every build runs a typecheck first and then builds a utility process as a separate step.
For most users this only matters when picking a download, but it matters to anyone packaging the app themselves: the two editions are separate builds with separate builder configs, not a runtime toggle. Running several development copies side by side is handled with profile variables in .env.example:
#CS_DEV_PROFILE_ROOT=
#CS_DEV_USER_DATA_SUFFIX=The first isolates Cherry home, userData and logs under an absolute root. The second appends a unique suffix and is ignored when the first is set.
Themes written for v1 break on the v2 interface
Appearance is open to change: light and dark themes, layouts and custom CSS. A community has grown around this, with a Theme Gallery at cherrycss.com and themes such as Aero, PaperMaterial, a Claude dynamic style and Maple Neon hosted in separate repositories.
The catch is the version jump. Themes written for v1 need adaptation for the v2 interface, and the project asks you to check each theme's supported Cherry Studio version before installing. Custom CSS targets the app's markup, so a theme that has not been updated can leave parts of the window unstyled or unreadable. If you depend on a heavily themed setup, pin to a release you have checked rather than taking every update.
Releases land days apart
The project is not idle. The last push to the main branch was on 2 November 2026, and three releases shipped within a week: v2.1.8 on 26 October, v2.1.9 on 30 October and v2.1.10 on 31 October 2026. package.json carries version 2.1.10. A nightly channel exists alongside stable releases.
This pace is good for fixes and bad for anyone who needs a stable surface, such as theme authors or people scripting against the API Gateway, which lets other applications use the models you have configured in Cherry Studio. Contributors branch from main, must sign and sign off their commits, and open pull requests against main using the repository template. A Branching Strategy document under docs/dev/contrib sets the release conventions.
AGPL-3.0 with a separate commercial track
The desktop source is licensed under AGPL-3.0, and the README carries a separate commercial license badge next to the license badge. The Enterprise Edition is sold through enterprise.cherryai.com, with purchasing, pricing and demos handled at [email protected]. No price for the desktop app itself appears in the README.
The mobile app for iOS and Android lives in its own repository, CherryHQ/cherry-studio-app, so mobile issues and builds are not tracked here. Searching this repository for an APK will not help; the mobile download sits at cherryai.com/mobile. The same split applies to the website and user documentation, which live in CherryHQ/cherry-studio-website.
Editorial conclusion
Cherry Studio brings several model providers, agents, MCP servers and knowledge bases into one desktop client. Its privacy policy describes both user-configured providers and built-in model services; availability depends on the service and configuration. Review the provider's data policies and agent permissions, and check privacy settings and theme compatibility before relying on the app.
Frequently asked questions
What is Cherry Studio?
Cherry Studio is an AI workstation for Windows, macOS and Linux. It lets you chat with multiple models, work with agents, build knowledge bases, create images and automate tasks in one desktop app.
Is Cherry Studio open source?
Yes. The Cherry Studio desktop source is on GitHub under the AGPL-3.0 license, with a separate Enterprise Edition for teams.
How to install Cherry Studio?
Download the desktop build for Windows, macOS or Linux from cherryai.com/download. The mobile app for iOS and Android is a separate download at cherryai.com/mobile.
How to use MCP in Cherry Studio?
Cherry Studio agents extend their capabilities through Skills and MCP (Model Context Protocol) servers, alongside per-agent tool permissions. Setup steps are in the user documentation at cherryai.com/docs/en/.
Is Cherry Studio safe?
The privacy policy says conversation history is stored locally by default, but requests to configured cloud models go to those providers. Built-in model services relay request content through Cherry Studio according to the policy. Review the app's privacy settings and provider terms, and restrict agent tools that can access files or run commands.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/cherryhq-cherry-studio)Star history chart for your README
[](https://hysenlabs.com/projects/cherryhq-cherry-studio)Was this useful?