今日の優良食堂
実際に入れて動かして書いた、今日の一膳
ギット飯が代わりに導入・実行・コードまで確かめました
今日の優良食堂 · ギット飯が代わりに導入・分析

CherryHQ/cherry-studio

複数のLLMプロバイダに対応したマルチプラットフォームデスクトップAIクライアント

OpenAI、Anthropic、Gemini、Ollamaなど複数のLLMを1つのデスクトップ画面で切り替えながら、同じ質問への回答を並べて比較できます。300以上のプリセットAIアシスタントから選ぶだけでなく、文書・画像処理やMermaid可視化、WebDAVバックアップまで日々の作業に組み込める点も試す価値があります。チーム利用ではエンタープライズエディションでAIリソースを中央管理し、オンプレミス配置でデータを手元に置いたまま運用できるので、個人の検証環境からチーム導入まで同じツールで確かめられます。

01 / 概要
何をするものか一文で言うと
ひとことで複数のLLMプロバイダに対応したマルチプラットフォームデスクトップAIクライアント

Cherry Studioは、Electron製のデスクトップAIアシスタントアプリです。OpenAI・Anthropic・Googleなど複数のLLMプロバイダーを、Vercel AI SDKベースの独自パッケージ「aiCore」で統一的に扱える構成になっています。チャットや自律エージェント、300以上のアシスタントプリセットを1つのアプリから利用できる設計です。

02 / 構造
どう動くのか中核のしくみ
読み方動きの流れを図と一緒にほどきました。

中心にあるのはmonorepo内のpackages/aiCoreです。createAgentがプロバイダー設定からLanguageModelを解決し、ToolLoopAgentとして返す仕組みがテストコードから確認できます。プロバイダーごとの差異はプラグイン機構で吸収します。definePluginでconfigureContextやtransformParamsを登録し、wrapLanguageModelでミドルウェアを合成します。packages/ai-sdk-providerのCherryInProviderは、CherryINという独自ゲートウェイ経由でopenai・anthropic・geminiなど複数のエンドポイント種別を1つのAPIキーでルーティングします。OpenAI互換リランキングモデルやreasoningモデル向けmax_tokens変換など、プロバイダー固有の癖を吸収する小さな変換関数が個別にvitestで検証されています。アプリ本体はelectron-viteでmain・preload・rendererをビルドし、better-sqlite3などネイティブモジュールはelectron-rebuildで再構築する流れです。

03 / 体験
入れるとこんな体験になりますギット飯が実際にたどった順序
所要ギット飯が実際に導入・実行しながらたどった順序です。
  1. STEP 01

    pnpm installを実行すると、Electron本体や各AI SDKプロバイダー、better-sqlite3など多数のネイティブ依存が解決されます。

  2. STEP 02

    pnpm devを実行すると、rebuild:electron・download:binaries・electron-vite devが順に走り、Electronウィンドウが起動してチャット画面が表示されます。

  3. STEP 03

    実際にLLMへ問い合わせるには、.envにOPENAI_API_KEYやCHERRYIN_API_KEYなど使いたいプロバイダーのキーを設定する必要があります。

  4. STEP 04

    pnpm testを実行すると、main・renderer・aiCoreなど7つのプロジェクトに分かれたvitestスイートが順番に走ります。

  5. STEP 05

    pnpm typecheckはnode・web・aiCoreの3系統をtsgoとtscで並行にチェックし、型エラーがあればそこで止まります。

  6. STEP 06

    エージェント向けにはpnpm skills:checkが用意されており、.agents/skills配下のSKILL.md群の整合性を検証できます。

04 / 成果物
何が手に入るのか導入後に手元に残るもの

起動すると、複数のLLMプロバイダーを切り替えられるチャットアプリ本体と、再利用可能なプロバイダー抽象化層aiCoreパッケージが手に入ります。PRレビューやリリース準備向けのSKILL.md群、i18nチェックスクリプトなども同梱されており、アプリ本体だけでなく開発ワークフロー一式が付いてくる点が特徴です。

05 / 注意
ここは先に知っておいてください先に知っておくとよいこと
正直なところ誰にでも合うとは言いにくいところです。
01

Node バージョンが24.11.1以上24.16.0未満に固定されており、範囲外のバージョンでは動作確認がされていない可能性があります。

02

better-sqlite3などネイティブモジュールのビルドが必須で、OSやアーキテクチャによってはrebuild:electronが失敗するリスクがあります。

03

実際にLLM機能を試すには、各プロバイダーの有料APIキーが別途必要です。CherryINゲートウェイも例外ではありません。

04

.agents/skillsと.claude/skillsは自動生成のgitignore管理下にあり、pnpm skills:syncを実行しないと最新のSKILL.mdが反映されません。

06 / 結論
ギット飯の結論食べてみる価値のある一膳か
ギット飯の最終判断優良食堂

複数のLLMプロバイダーを1つのデスクトップアプリで切り替えたい人、あるいはVercel AI SDKベースの独自抽象化層aiCoreを設計の参考にしたい開発者に向いています。createAgentのテストやreasoningモデル変換関数のテストなど、プロバイダー差異を吸収する部分に実テストが伴っている点は、READMEの記述だけでなくソースコードからも裏付けが取れました。ただしAPIキー投入後の実際のチャット体験や、300以上あるとされるアシスタントプリセットの中身までは、与えられた材料からは確認できません。

今日の残りの一膳
SUBSCRIBER LIBRARY
これまでに検証した優良食堂を一堂に

4 つの関門を通った優良食堂がすべてバックナンバーに集まっています。いちばん新しい一膳はどなたでも無料で読め、それより前の優良食堂の検証の根拠・詳しい解説は ギット飯 プレミアムのご購読ですでに開いています。

優良食堂バックナンバー →
リポジトリ詳細🧪 ひと言で味見する