diff --git a/README.md b/README.md
index e89785a4..a2edeeeb 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
-# All-in-One Assistant for Claude Code, Codex & Gemini CLI
+# CC Switch
+
+### The All-in-One Manager for Claude Code, Codex, Gemini CLI, OpenCode & OpenClaw
[](https://github.com/farion1231/cc-switch/releases)
[](https://github.com/farion1231/cc-switch/releases)
@@ -15,6 +17,9 @@ English | [中文](README_ZH.md) | [日本語](README_JA.md) | [Changelog](CHANG
## ❤️Sponsor
+
+Click to collapse
+
[](https://platform.minimax.io/subscribe/coding-plan?code=ClLhgxr2je&source=link)
MiniMax-M2.5 is a SOTA large language model designed for real-world productivity. Trained in a diverse range of complex real-world digital working environments, M2.5 builds upon the coding expertise of M2.1 to extend into general office work, reaching fluency in generating and operating Word, Excel, and Powerpoint files, context switching between diverse software environments, and working across different agent and human teams. Scoring 80.2% on SWE-Bench Verified, 51.3% on Multi-SWE-Bench, and 76.3% on BrowseComp, M2.5 is also more token efficient than previous generations, having been trained to optimize its actions and output through planning.
@@ -72,6 +77,22 @@ Claude Code / Codex / Gemini official channels at 38% / 2% / 9% of original pric
+
+
+## Why CC Switch?
+
+Modern AI-powered coding relies on CLI tools like Claude Code, Codex, Gemini CLI, OpenCode, and OpenClaw — but each has its own configuration format. Switching API providers means manually editing JSON, TOML, or `.env` files, and there is no unified way to manage MCP and Skills across multiple tools.
+
+**CC Switch** gives you a single desktop app to manage all five CLI tools. Instead of editing config files by hand, you get a visual interface to import providers with one click, switch between them instantly, with 50+ built-in provider presets, unified MCP and Skills management, and system tray quick switching — all backed by a reliable SQLite database with atomic writes that protect your configs from corruption.
+
+- **One App, Five CLI Tools** — Manage Claude Code, Codex, Gemini CLI, OpenCode, and OpenClaw from a single interface
+- **No More Manual Editing** — 50+ provider presets including AWS Bedrock, NVIDIA NIM, and community relays; just pick and switch
+- **Unified MCP & Skills Management** — One panel to manage MCP servers and Skills across four apps with bidirectional sync
+- **System Tray Quick Switch** — Switch providers instantly from the tray menu, no need to open the full app
+- **Cloud Sync** — Sync provider data across devices via Dropbox, OneDrive, iCloud, or WebDAV servers
+- **Cross-Platform** — Native desktop app for Windows, macOS, and Linux, built with Tauri 2
+- **Built-in Utilities** — Includes various utilities for first-launch login confirmation, signature bypass, plugin extension sync, and more
+
## Screenshots
| Main Interface | Add Provider |
@@ -80,102 +101,113 @@ Claude Code / Codex / Gemini official channels at 38% / 2% / 9% of original pric
## Features
-### Current Version: v3.11.1 | [Full Changelog](CHANGELOG.md) | [Release Notes](docs/release-note-v3.11.1-en.md)
+[Full Changelog](CHANGELOG.md) | [Release Notes](docs/release-note-v3.11.1-en.md)
-**v3.8.0 Major Update (2025-11-28)**
+### Provider Management
-**Persistence Architecture Upgrade & Brand New UI**
+- **5 CLI tools, 50+ presets** — Claude Code, Codex, Gemini CLI, OpenCode, OpenClaw; copy your key and import with one click
+- **Universal providers** — One config syncs to multiple apps (OpenCode, OpenClaw)
+- One-click switching, system tray quick access, drag-and-drop sorting, import/export
-- **SQLite + JSON Dual-layer Architecture**
- - Migrated from JSON file storage to SQLite + JSON dual-layer structure
- - Syncable data (providers, MCP, Prompts, Skills) stored in SQLite
- - Device-level data (window state, local paths) stored in JSON
- - Lays the foundation for future cloud sync functionality
- - Schema version management for database migrations
+### Proxy & Failover
-- **Brand New User Interface**
- - Completely redesigned interface layout
- - Unified component styles and smoother animations
- - Optimized visual hierarchy
- - Tailwind CSS downgraded from v4 to v3.4 for better browser compatibility
+- **Local proxy with hot-switching** — Format conversion, auto-failover, circuit breaker, provider health monitoring, and request rectifier
+- **App-level takeover** — Independently proxy Claude, Codex, or Gemini, down to individual providers
-- **Japanese Language Support**
- - Added Japanese interface support (now supports Chinese/English/Japanese)
+### MCP, Prompts & Skills
-- **Auto Launch on Startup**
- - One-click enable/disable in settings
- - Platform-native APIs (Registry/LaunchAgent/XDG autostart)
+- **Unified MCP panel** — Manage MCP servers across 4 apps with bidirectional sync and Deep Link import
+- **Prompts** — Markdown editor with cross-app sync (CLAUDE.md / AGENTS.md / GEMINI.md) and backfill protection
+- **Skills** — One-click install from GitHub repos or ZIP files, custom repository management, with symlink and file copy support
-- **Skills Recursive Scanning**
- - Support for multi-level directory structures
- - Allow same-named skills from different repositories
+### Usage & Cost Tracking
-- **Critical Bug Fixes**
- - Fixed custom endpoints lost when updating providers
- - Fixed Gemini configuration write issues
- - Fixed Linux WebKitGTK rendering issues
+- **Usage dashboard** — Track spending, requests, and tokens with trend charts, detailed request logs, and custom per-model pricing
-**v3.7.0 Highlights**
+### Session Manager & Workspace
-**Six Core Features, 18,000+ Lines of New Code**
+- Browse, search, and restore conversation history across all apps
+- **Workspace editor** (OpenClaw) — Edit agent files (AGENTS.md, SOUL.md, etc.) with Markdown preview
-- **Gemini CLI Integration**
- - Third supported AI CLI (Claude Code / Codex / Gemini)
- - Dual-file configuration support (`.env` + `settings.json`)
- - Complete MCP server management
- - Presets: Google Official (OAuth) / PackyCode / Custom
+### System & Platform
-- **Claude Skills Management System**
- - Auto-scan skills from GitHub repositories (3 pre-configured curated repos)
- - One-click install/uninstall to `~/.claude/skills/`
- - Custom repository support + subdirectory scanning
- - Complete lifecycle management (discover/install/update)
+- **Cloud sync** — Custom config directory (Dropbox, OneDrive, iCloud, NAS) and WebDAV server sync
+- **Deep Link** (`ccswitch://`) — Import providers, MCP servers, prompts, and skills via URL
+- Dark / Light / System theme, auto-launch, auto-updater, atomic writes, auto-backups, i18n (zh/en/ja)
-- **Prompts Management System**
- - Multi-preset system prompt management (unlimited presets, quick switching)
- - Cross-app support (Claude: `CLAUDE.md` / Codex: `AGENTS.md` / Gemini: `GEMINI.md`)
- - Markdown editor (CodeMirror 6 + real-time preview)
- - Smart backfill protection, preserves manual modifications
+## FAQ
-- **MCP v3.7.0 Unified Architecture**
- - Single panel manages MCP servers across three applications
- - New SSE (Server-Sent Events) transport type
- - Smart JSON parser + Codex TOML format auto-correction
- - Unified import/export + bidirectional sync
+
+Which AI CLI tools does CC Switch support?
-- **Deep Link Protocol**
- - `ccswitch://` protocol registration (all platforms)
- - One-click import provider configs via shared links
- - Security validation + lifecycle integration
+CC Switch supports five tools: **Claude Code**, **Codex**, **Gemini CLI**, **OpenCode**, and **OpenClaw**. Each tool has dedicated provider presets and configuration management.
-- **Environment Variable Conflict Detection**
- - Auto-detect cross-app configuration conflicts (Claude/Codex/Gemini/MCP)
- - Visual conflict indicators + resolution suggestions
- - Override warnings + backup before changes
+
-**Core Capabilities**
+
+Do I need to restart the terminal after switching providers?
-- **Provider Management**: One-click switching between Claude Code, Codex, and Gemini API configurations
-- **AWS Bedrock Support**: Built-in AWS Bedrock provider presets with AKSK and API Key authentication, cross-region inference support (global/us/eu/apac), covering Claude Code and OpenCode
-- **Speed Testing**: Measure API endpoint latency with visual quality indicators
-- **Import/Export**: Backup and restore configs with auto-rotation (keep 10 most recent)
-- **i18n Support**: Complete Chinese/English localization (UI, errors, tray)
-- **Claude Plugin Sync**: One-click apply/restore Claude plugin configurations
+For most tools, yes — restart your terminal or the CLI tool for changes to take effect. The exception is **Claude Code**, which currently supports hot-switching of provider data without a restart.
-**v3.6 Highlights**
+
-- Provider duplication & drag-and-drop sorting
-- Multi-endpoint management & custom config directory (cloud sync ready)
-- Granular model configuration (4-tier: Haiku/Sonnet/Opus/Custom)
-- WSL environment support with auto-sync on directory change
-- 100% hooks test coverage & complete architecture refactoring
+
+My plugin configuration disappeared after switching providers — what happened?
-**System Features**
+CC Switch provides a "Shared Config Snippet" feature to pass common data (beyond API keys and endpoints) between providers. Go to "Edit Provider" → "Shared Config Panel" → click "Extract from Current Provider" to save all common data. When creating a new provider, check "Write Shared Config" (enabled by default) to include plugin data in the new provider. All your configuration items are preserved in the default provider imported when you first launched the app.
-- System tray with quick switching
-- Single instance daemon
-- Built-in auto-updater
-- Atomic writes with rollback protection
+
+
+
+macOS shows "unidentified developer" warning — how do I fix it?
+
+The author doesn't have an Apple Developer account yet (registration in progress). Close the warning, then go to **System Settings → Privacy & Security → Open Anyway**. After that, the app will open normally.
+
+
+
+
+Why can't I delete the currently active provider?
+
+CC Switch follows a "minimal intrusion" design principle — even if you uninstall the app, your CLI tools will continue to work normally. The system always keeps one active configuration, because deleting all configurations would make the corresponding CLI tool unusable. If you rarely use a specific CLI tool, you can hide it in Settings. To switch back to official login, see the next question.
+
+
+
+
+How do I switch back to official login?
+
+Add an official provider from the preset list. After switching to it, run the Log out / Log in flow, and then you can freely switch between the official provider and third-party providers. Codex supports switching between different official providers, making it easy to switch between multiple Plus or Team accounts.
+
+
+
+
+Where is my data stored?
+
+- **Database**: `~/.cc-switch/cc-switch.db` (SQLite — providers, MCP, prompts, skills)
+- **Local settings**: `~/.cc-switch/settings.json` (device-level UI preferences)
+- **Backups**: `~/.cc-switch/backups/` (auto-rotated, keeps 10 most recent)
+- **Skills**: `~/.cc-switch/skills/` (symlinked to corresponding apps by default)
+
+
+
+## Quick Start
+
+### Basic Usage
+
+1. **Add Provider**: Click "Add Provider" → Choose a preset or create custom configuration
+2. **Switch Provider**:
+ - Main UI: Select provider → Click "Enable"
+ - System Tray: Click provider name directly (instant effect)
+3. **Takes Effect**: Restart your terminal or the corresponding CLI tool to apply changes (Claude Code does not require a restart)
+4. **Back to Official**: Add an "Official Login" preset, restart the CLI tool, then follow its login/OAuth flow
+
+### MCP, Prompts, Skills & Sessions
+
+- **MCP**: Click the "MCP" button → Add servers via templates or custom config → Toggle per-app sync
+- **Prompts**: Click "Prompts" → Create presets with Markdown editor → Activate to sync to live files
+- **Skills**: Click "Skills" → Browse GitHub repos → One-click install to all apps
+- **Sessions**: Click "Sessions" → Browse, search, and restore conversation history across all apps
+
+> **Note**: On first launch, you can manually import existing CLI tool configs as the default provider.
## Download & Installation
@@ -234,89 +266,8 @@ flatpak install --user ./CC-Switch-v{version}-Linux.flatpak
flatpak run com.ccswitch.desktop
```
-## Quick Start
-
-### Basic Usage
-
-1. **Add Provider**: Click "Add Provider" → Choose preset or create custom configuration
-2. **Switch Provider**:
- - Main UI: Select provider → Click "Enable"
- - System Tray: Click provider name directly (instant effect)
-3. **Takes Effect**: Restart your terminal or Claude Code / Codex / Gemini clients to apply changes
-4. **Back to Official**: Select the "Official Login" preset (Claude/Codex) or "Google Official" preset (Gemini), restart the corresponding client, then follow its login/OAuth flow
-
-### MCP Management
-
-- **Location**: Click "MCP" button in top-right corner
-- **Add Server**:
- - Use built-in templates (mcp-fetch, mcp-filesystem, etc.)
- - Support stdio / http / sse transport types
- - Configure independent MCP servers for different apps
-- **Enable/Disable**: Toggle switches to control which servers sync to live config
-- **Sync**: Enabled servers auto-sync to each app's live files
-- **Import/Export**: Import existing MCP servers from Claude/Codex/Gemini config files
-
-### Skills Management (v3.7.0 New)
-
-- **Location**: Click "Skills" button in top-right corner
-- **Discover Skills**:
- - Auto-scan pre-configured GitHub repositories (Anthropic official, ComposioHQ, community, etc.)
- - Add custom repositories (supports subdirectory scanning)
-- **Install Skills**: Click "Install" to one-click install to `~/.claude/skills/`
-- **Uninstall Skills**: Click "Uninstall" to safely remove and clean up state
-- **Manage Repositories**: Add/remove custom GitHub repositories
-
-### Prompts Management (v3.7.0 New)
-
-- **Location**: Click "Prompts" button in top-right corner
-- **Create Presets**:
- - Create unlimited system prompt presets
- - Use Markdown editor to write prompts (syntax highlighting + real-time preview)
-- **Switch Presets**: Select preset → Click "Activate" to apply immediately
-- **Sync Mechanism**:
- - Claude: `~/.claude/CLAUDE.md`
- - Codex: `~/.codex/AGENTS.md`
- - Gemini: `~/.gemini/GEMINI.md`
-- **Protection Mechanism**: Auto-save current prompt content before switching, preserves manual modifications
-
-### Configuration Files
-
-**Claude Code**
-
-- Live config: `~/.claude/settings.json` (or `claude.json`)
-- API key field: `env.ANTHROPIC_AUTH_TOKEN` or `env.ANTHROPIC_API_KEY`
-- MCP servers: `~/.claude.json` → `mcpServers`
-
-**Codex**
-
-- Live config: `~/.codex/auth.json` (required) + `config.toml` (optional)
-- API key field: `OPENAI_API_KEY` in `auth.json`
-- MCP servers: `~/.codex/config.toml` → `[mcp_servers]` tables
-
-**Gemini**
-
-- Live config: `~/.gemini/.env` (API key) + `~/.gemini/settings.json` (auth mode)
-- API key field: `GEMINI_API_KEY` or `GOOGLE_GEMINI_API_KEY` in `.env`
-- Environment variables: Support `GOOGLE_GEMINI_BASE_URL`, `GEMINI_MODEL`, etc.
-- MCP servers: `~/.gemini/settings.json` → `mcpServers`
-- Tray quick switch: Each provider switch rewrites `~/.gemini/.env`, no need to restart Gemini CLI
-
-**CC Switch Storage (v3.8.0 New Architecture)**
-
-- Database (SSOT): `~/.cc-switch/cc-switch.db` (SQLite, stores providers, MCP, Prompts, Skills)
-- Local settings: `~/.cc-switch/settings.json` (device-level settings)
-- Backups: `~/.cc-switch/backups/` (auto-rotate, keep 10)
-
-### Cloud Sync Setup
-
-1. Go to Settings → "Custom Configuration Directory"
-2. Choose your cloud sync folder (Dropbox, OneDrive, iCloud, etc.)
-3. Restart app to apply
-4. Repeat on other devices to enable cross-device sync
-
-> **Note**: First launch auto-imports existing Claude/Codex configs as default provider.
-
-## Architecture Overview
+
+Architecture Overview
### Design Principles
@@ -351,16 +302,15 @@ flatpak run com.ccswitch.desktop
- **ProviderService**: Provider CRUD, switching, backfill, sorting
- **McpService**: MCP server management, import/export, live file sync
+- **ProxyService**: Local proxy mode with hot-switching and format conversion
+- **SessionManager**: Claude Code conversation history browsing
- **ConfigService**: Config import/export, backup rotation
- **SpeedtestService**: API endpoint latency measurement
-**v3.6 Refactoring**
+
-- Backend: 5-phase refactoring (error handling → command split → tests → services → concurrency)
-- Frontend: 4-stage refactoring (test infra → hooks → components → cleanup)
-- Testing: 100% hooks coverage + integration tests (vitest + MSW)
-
-## Development
+
+Development Guide
### Environment Requirements
@@ -421,7 +371,7 @@ cargo test test_name
cargo test --features test-hooks
```
-### Testing Guide (v3.6 New)
+### Testing Guide
**Frontend Testing**:
@@ -429,18 +379,6 @@ cargo test --features test-hooks
- Uses **MSW (Mock Service Worker)** to mock Tauri API calls
- Uses **@testing-library/react** for component testing
-**Test Coverage**:
-
-- Hooks unit tests (100% coverage)
- - `useProviderActions` - Provider operations
- - `useMcpActions` - MCP management
- - `useSettings` series - Settings management
- - `useImportExport` - Import/export
-- Integration tests
- - App main application flow
- - SettingsDialog complete interaction
- - MCP panel functionality
-
**Running Tests**:
```bash
@@ -454,49 +392,56 @@ pnpm test:unit:watch
pnpm test:unit --coverage
```
-## Tech Stack
+### Tech Stack
-**Frontend**: React 18 · TypeScript · Vite · TailwindCSS 4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit
+**Frontend**: React 18 · TypeScript · Vite · TailwindCSS 3.4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit
**Backend**: Tauri 2.8 · Rust · serde · tokio · thiserror · tauri-plugin-updater/process/dialog/store/log
**Testing**: vitest · MSW · @testing-library/react
-## Project Structure
+
+
+
+Project Structure
```
-├── src/ # Frontend (React + TypeScript)
-│ ├── components/ # UI components (providers/settings/mcp/ui)
-│ ├── hooks/ # Custom hooks (business logic)
+├── src/ # Frontend (React + TypeScript)
+│ ├── components/
+│ │ ├── providers/ # Provider management
+│ │ ├── mcp/ # MCP panel
+│ │ ├── prompts/ # Prompts management
+│ │ ├── skills/ # Skills management
+│ │ ├── sessions/ # Session Manager
+│ │ ├── proxy/ # Proxy mode panel
+│ │ ├── openclaw/ # OpenClaw config panels
+│ │ ├── settings/ # Settings (Terminal/Backup/About)
+│ │ ├── deeplink/ # Deep Link import
+│ │ ├── env/ # Environment variable management
+│ │ ├── universal/ # Cross-app configuration
+│ │ ├── usage/ # Usage statistics
+│ │ └── ui/ # shadcn/ui component library
+│ ├── hooks/ # Custom hooks (business logic)
│ ├── lib/
-│ │ ├── api/ # Tauri API wrapper (type-safe)
-│ │ └── query/ # TanStack Query config
-│ ├── i18n/locales/ # Translations (zh/en)
-│ ├── config/ # Presets (providers/mcp)
-│ └── types/ # TypeScript definitions
-├── src-tauri/ # Backend (Rust)
+│ │ ├── api/ # Tauri API wrapper (type-safe)
+│ │ └── query/ # TanStack Query config
+│ ├── locales/ # Translations (zh/en/ja)
+│ ├── config/ # Presets (providers/mcp)
+│ └── types/ # TypeScript definitions
+├── src-tauri/ # Backend (Rust)
│ └── src/
-│ ├── commands/ # Tauri command layer (by domain)
-│ ├── services/ # Business logic layer
-│ ├── app_config.rs # Config data models
-│ ├── provider.rs # Provider domain models
-│ ├── mcp.rs # MCP sync & validation
-│ └── lib.rs # App entry & tray menu
-├── tests/ # Frontend tests
-│ ├── hooks/ # Unit tests
-│ └── components/ # Integration tests
-└── assets/ # Screenshots & partner resources
+│ ├── commands/ # Tauri command layer (by domain)
+│ ├── services/ # Business logic layer
+│ ├── database/ # SQLite DAO layer
+│ ├── proxy/ # Proxy module
+│ ├── session_manager/ # Session management
+│ ├── deeplink/ # Deep Link handling
+│ └── mcp/ # MCP sync module
+├── tests/ # Frontend tests
+└── assets/ # Screenshots & partner resources
```
-## Changelog
-
-See [CHANGELOG.md](CHANGELOG.md) for version update details.
-
-## Legacy Electron Version
-
-[Releases](../../releases) retains v2.0.3 legacy Electron version
-
-If you need legacy Electron code, you can pull the electron-legacy branch
+
## Contributing
@@ -507,7 +452,8 @@ Before submitting PRs, please ensure:
- Pass type check: `pnpm typecheck`
- Pass format check: `pnpm format:check`
- Pass unit tests: `pnpm test:unit`
-- 💡 For new features, please open an issue for discussion before submitting a PR
+
+For new features, please open an issue for discussion before submitting a PR. PRs for features that are not a good fit for the project may be closed.
## Star History
diff --git a/README_JA.md b/README_JA.md
index 2b69c1ce..b683ac22 100644
--- a/README_JA.md
+++ b/README_JA.md
@@ -1,20 +1,25 @@
-# Claude Code / Codex / Gemini CLI オールインワン・アシスタント
+# CC Switch
-[](https://github.com/farion1231/cc-switch/releases)
+### Claude Code、Codex、Gemini CLI、OpenCode、OpenClaw のオールインワン管理ツール
+
+[](https://github.com/farion1231/cc-switch/releases)
[](https://github.com/farion1231/cc-switch/releases)
[](https://tauri.app/)
[](https://github.com/farion1231/cc-switch/releases/latest)

-[English](README.md) | [中文](README_ZH.md) | 日本語 | [Changelog](CHANGELOG.md) | [v3.9.0 リリースノート](docs/release-note-v3.9.0-ja.md)
+[English](README.md) | [中文](README_ZH.md) | 日本語 | [Changelog](CHANGELOG.md)
## ❤️スポンサー
+
+クリックで折りたたむ
+
[](https://platform.minimax.io/subscribe/coding-plan?code=ClLhgxr2je&source=link)
MiniMax-M2.5 は、実際の生産性向上のために設計された最先端の大規模言語モデルです。多様で複雑な実環境のデジタルワークスペースでトレーニングされた M2.5 は、M2.1 のコーディング能力をベースに一般的なオフィス業務へと拡張し、Word・Excel・PowerPoint ファイルの生成と操作、多様なソフトウェア環境間のコンテキスト切り替え、異なるエージェントや人間チーム間での協働を流暢にこなします。SWE-Bench Verified で 80.2%、Multi-SWE-Bench で 51.3%、BrowseComp で 76.3% を達成し、計画的な行動と出力の最適化トレーニングにより、前世代よりもトークン効率に優れています。
@@ -72,6 +77,22 @@ Claude Code / Codex / Gemini 公式チャンネルが最安で元価格の 38% /
+
+
+## CC Switch を選ぶ理由
+
+最新の AI コーディングは Claude Code、Codex、Gemini CLI、OpenCode、OpenClaw などの CLI ツールに依存していますが、各ツールの設定形式はバラバラです。API プロバイダを切り替えるたびに JSON、TOML、`.env` ファイルを手動で編集する必要があり、複数ツール間で MCP や Skills を統一的に管理する手段もありません。
+
+**CC Switch** は、5 つの CLI ツールを 1 つのデスクトップアプリで一元管理できます。設定ファイルを手作業で編集する代わりに、ワンクリックでプロバイダをインポートし、瞬時に切り替えられるビジュアルインターフェースを提供します。50 以上の組み込みプリセット、統一 MCP・Skills 管理、システムトレイからの即時切り替え機能を搭載。すべてはアトミック書き込みによる信頼性の高い SQLite データベースに支えられており、設定の破損を防ぎます。
+
+- **1 つのアプリで 5 つの CLI ツール** -- Claude Code、Codex、Gemini CLI、OpenCode、OpenClaw を単一インターフェースで管理
+- **手動編集は不要** -- AWS Bedrock、NVIDIA NIM、コミュニティリレーなど 50 以上のプロバイダプリセットを内蔵。選んで切り替えるだけ
+- **統一 MCP・Skills 管理** -- 1 つのパネルで 4 つのアプリの MCP サーバーと Skills を双方向同期で管理
+- **システムトレイでクイック切り替え** -- トレイメニューから即座にプロバイダを切り替え。アプリを開く必要なし
+- **クラウド同期** -- Dropbox、OneDrive、iCloud、または WebDAV サーバー経由でデバイス間のプロバイダデータを同期
+- **クロスプラットフォーム** -- Tauri 2 で構築された Windows、macOS、Linux 対応のネイティブデスクトップアプリ
+- **便利ツール内蔵** -- 初回起動時のログイン確認、署名バイパス、プラグイン拡張の同期など、さまざまなユーティリティを搭載
+
## スクリーンショット
| メイン画面 | プロバイダ追加 |
@@ -80,102 +101,113 @@ Claude Code / Codex / Gemini 公式チャンネルが最安で元価格の 38% /
## 特長
-### 現在のバージョン:v3.10.2 | [完全な更新履歴](CHANGELOG.md) | [リリースノート](docs/release-note-v3.9.0-ja.md)
+[完全な更新履歴](CHANGELOG.md) | [リリースノート](docs/release-note-v3.11.1-ja.md)
-**v3.8.0 メジャーアップデート (2025-11-28)**
+### プロバイダ管理
-**永続化アーキテクチャ刷新 & 新 UI**
+- **5 つの CLI ツール、50 以上のプリセット** -- Claude Code、Codex、Gemini CLI、OpenCode、OpenClaw。キーをコピーしてワンクリックでインポート
+- **ユニバーサルプロバイダ** -- 1 つの設定を複数アプリに同期(OpenCode、OpenClaw)
+- ワンクリック切り替え、システムトレイクイックアクセス、ドラッグ&ドロップ並び替え、インポート/エクスポート
-- **SQLite + JSON 二層構造**
- - JSON 単独保存から SQLite + JSON の二層構造へ移行
- - 同期対象データ(プロバイダ、MCP、Prompts、Skills)は SQLite に保存
- - デバイス固有データ(ウィンドウ状態、ローカルパス)は JSON に保存
- - 将来のクラウド同期の土台を用意
- - DB マイグレーション用にスキーマバージョンを管理
+### プロキシ & フェイルオーバー
-- **新しいユーザーインターフェース**
- - レイアウトを全面再設計
- - コンポーネントスタイルとアニメーションを統一
- - 視覚的な階層を最適化
- - ブラウザ互換性向上のため Tailwind CSS を v4 から v3.4 にダウングレード
+- **ローカルプロキシのホットスイッチ** -- フォーマット変換、自動フェイルオーバー、サーキットブレーカー、プロバイダヘルスモニタリング、リクエストレクティファイア
+- **アプリレベルのテイクオーバー** -- Claude、Codex、Gemini を個別にプロキシ経由でルーティング、プロバイダ単位で設定可能
-- **日本語対応**
- - UI が中国語/英語/日本語の 3 言語対応に
+### MCP、Prompts & Skills
-- **自動起動**
- - 設定画面でワンクリック ON/OFF
- - プラットフォームネイティブ API(Registry/LaunchAgent/XDG autostart)を使用
+- **統一 MCP パネル** -- 4 つのアプリの MCP サーバーを管理、双方向同期、Deep Link インポート対応
+- **Prompts** -- Markdown エディタ、クロスアプリ同期(CLAUDE.md / AGENTS.md / GEMINI.md)、バックフィル保護
+- **Skills** -- GitHub リポジトリまたは ZIP ファイルからワンクリックインストール、カスタムリポジトリ管理、シンボリックリンクとファイルコピーに対応
-- **Skills 再帰スキャン**
- - 多階層ディレクトリをサポート
- - リポジトリが異なる同名スキルを許可
+### 使用量 & コストトラッキング
-- **重要なバグ修正**
- - プロバイダ更新時にカスタムエンドポイントが失われる問題を修正
- - Gemini 設定の書き込み問題を修正
- - Linux WebKitGTK の描画問題を修正
+- **使用量ダッシュボード** -- プロバイダ横断で支出・リクエスト数・トークン使用量を追跡、トレンドチャート、詳細リクエストログ、カスタムモデル価格設定
-**v3.7.0 ハイライト**
+### Session Manager & ワークスペース
-**6 つのコア機能、18,000 行超の新コード**
+- すべてのアプリの会話履歴を閲覧・検索・復元
+- **ワークスペースエディタ**(OpenClaw)-- エージェントファイル(AGENTS.md、SOUL.md など)を Markdown プレビュー付きで編集
-- **Gemini CLI 統合**
- - Claude Code / Codex / Gemini の 3 番目のサポート AI CLI
- - 2 つの設定ファイル(`.env` + `settings.json`)に対応
- - MCP サーバー管理を完備
- - プリセット:Google 公式(OAuth)/ PackyCode / カスタム
+### システム & プラットフォーム
-- **Claude Skills 管理システム**
- - GitHub リポジトリを自動スキャン(3 つのキュレーション済みリポジトリを同梱)
- - `~/.claude/skills/` へワンクリックでインストール/アンインストール
- - カスタムリポジトリ + サブディレクトリスキャンをサポート
- - ライフサイクル管理(検出/インストール/更新)を完備
+- **クラウド同期** -- カスタム設定ディレクトリ(Dropbox、OneDrive、iCloud、NAS)および WebDAV サーバー同期
+- **Deep Link** (`ccswitch://`) -- URL 経由でプロバイダ、MCP サーバー、Prompts、Skills をワンクリックインポート
+- ダーク / ライト / システムテーマ、自動起動、自動アップデーター、アトミック書き込み、自動バックアップ、多言語対応(中/英/日)
-- **Prompts 管理システム**
- - 無制限のシステムプロンプトプリセットを作成
- - Markdown エディタ(CodeMirror 6 + リアルタイムプレビュー)付き
- - スマートなバックフィル保護で手動変更を保持
- - 複数アプリに同時対応(Claude: `CLAUDE.md` / Codex: `AGENTS.md` / Gemini: `GEMINI.md`)
+## よくある質問
-- **MCP v3.7.0 統合アーキテクチャ**
- - 1 つのパネルで 3 アプリの MCP を管理
- - 新たに SSE(Server-Sent Events)トランスポートを追加
- - スマート JSON パーサー + Codex TOML 自動修正
- - 双方向のインポート/エクスポート + 双方向同期
+
+CC Switch はどの AI CLI ツールに対応していますか?
-- **ディープリンクプロトコル**
- - `ccswitch://` を全プラットフォームで登録
- - 共有リンクからプロバイダ設定をワンクリックでインポート
- - セキュリティ検証 + ライフサイクル統合
+CC Switch は **Claude Code**、**Codex**、**Gemini CLI**、**OpenCode**、**OpenClaw** の 5 つのツールに対応しています。各ツールに専用のプロバイダプリセットと設定管理が用意されています。
-- **環境変数の競合検知**
- - Claude/Codex/Gemini/MCP 間の設定競合を自動検出
- - 競合表示 + 解決ガイド
- - 上書き前の警告 + バックアップ
+
-**コア機能**
+
+プロバイダを切り替えた後、ターミナルの再起動は必要ですか?
-- **プロバイダ管理**:Claude Code、Codex、Gemini の API 設定をワンクリックで切り替え
-- **AWS Bedrock 対応**:AWS Bedrock プロバイダプリセットを内蔵、AKSK および API Key 認証に対応、クロスリージョン推論(global/us/eu/apac)をサポート、Claude Code と OpenCode に対応
-- **速度テスト**:エンドポイント遅延を計測し、品質を可視化
-- **インポート/エクスポート**:設定をバックアップ・復元(最新 10 件を自動ローテーション)
-- **多言語対応**:UI/エラー/トレイを含む中国語・英語・日本語ローカライズ
-- **Claude プラグイン同期**:Claude プラグイン設定をワンクリックで適用/復元
+ほとんどのツールでは、はい。変更を反映するにはターミナルまたは CLI ツールを再起動してください。ただし **Claude Code** は例外で、現在プロバイダデータのホットスイッチに対応しており、再起動は不要です。
-**v3.6 ハイライト**
+
-- プロバイダの複製とドラッグ&ドロップ並び替え
-- 複数エンドポイント管理とカスタム設定ディレクトリ(クラウド同期準備済み)
-- 4 階層のモデル設定(Haiku/Sonnet/Opus/Custom)
-- WSL 環境をサポートし、ディレクトリ変更時に自動同期
-- Hooks テスト 100% カバレッジ + アーキテクチャ全面リファクタ
+
+プロバイダを切り替えた後、プラグイン設定が消えてしまいました。どうすればよいですか?
-**システム機能**
+CC Switch には「共有設定スニペット」機能があり、APIキーやエンドポイント以外の共通データをプロバイダ間で引き継ぐことができます。「プロバイダ編集」→「共有設定パネル」→「現在のプロバイダから抽出」をクリックして、すべての共通データを保存してください。新しいプロバイダを作成する際に「共有設定を書き込む」にチェック(デフォルトで有効)を入れれば、プラグインなどのデータが新しいプロバイダ設定に含まれます。すべての設定項目は、アプリ初回起動時にインポートされたデフォルトプロバイダに保存されており、失われることはありません。
-- クイックスイッチ付きシステムトレイ
-- シングルインスタンス常駐
-- ビルトイン自動アップデータ
-- ロールバック保護付きのアトミック書き込み
+
+
+
+macOS で「開発元を確認できません」と表示されます。どうすればよいですか?
+
+開発者が Apple Developer アカウントをまだ取得していないためです(登録手続き中)。警告を閉じてから、**システム設定 → プライバシーとセキュリティ → このまま開く**をクリックしてください。以降は通常通り起動できます。
+
+
+
+
+現在アクティブなプロバイダを削除できないのはなぜですか?
+
+CC Switch は「最小限の介入」という設計原則に従っています。アプリをアンインストールしても、CLI ツールは正常に動作し続けます。すべての設定を削除すると対応する CLI ツールが使用できなくなるため、システムは常にアクティブな設定を 1 つ保持します。特定の CLI ツールをあまり使用しない場合は、設定で非表示にできます。公式ログインに戻す方法は、次の質問をご覧ください。
+
+
+
+
+公式ログインに戻すにはどうすればよいですか?
+
+プリセットリストから公式プロバイダを追加してください。切り替え後、ログアウト/ログインのフローを実行すれば、以降は公式プロバイダとサードパーティプロバイダを自由に切り替えられます。Codex では異なる公式プロバイダ間の切り替えに対応しており、複数の Plus アカウントや Team アカウントの切り替えに便利です。
+
+
+
+
+データはどこに保存されますか?
+
+- **データベース**: `~/.cc-switch/cc-switch.db`(SQLite -- プロバイダ、MCP、Prompts、Skills)
+- **ローカル設定**: `~/.cc-switch/settings.json`(デバイスレベルの UI 設定)
+- **バックアップ**: `~/.cc-switch/backups/`(自動ローテーション、最新 10 件を保持)
+- **Skills**: `~/.cc-switch/skills/`(デフォルトでシンボリックリンクにより対応アプリに接続)
+
+
+
+## クイックスタート
+
+### 基本的な使い方
+
+1. **プロバイダ追加**: 「Add Provider」をクリック → プリセットを選ぶかカスタム設定を作成
+2. **プロバイダ切り替え**:
+ - メイン UI: プロバイダを選択 → 「Enable」をクリック
+ - システムトレイ: プロバイダ名をクリック(即時反映)
+3. **反映**: ターミナルまたは対応する CLI ツールを再起動して適用(Claude Code は再起動不要)
+4. **公式設定に戻す**: 「Official Login」プリセットを追加し、CLI ツールを再起動してログイン/OAuth フローを実行
+
+### MCP、Prompts、Skills & Sessions
+
+- **MCP**: 「MCP」ボタンをクリック → テンプレートまたはカスタム設定でサーバーを追加 → アプリごとの同期をトグルで切り替え
+- **Prompts**: 「Prompts」をクリック → Markdown エディタでプリセットを作成 → 有効化してライブファイルに同期
+- **Skills**: 「Skills」をクリック → GitHub リポジトリを閲覧 → ワンクリックですべてのアプリにインストール
+- **Sessions**: 「Sessions」をクリック → すべてのアプリの会話履歴を閲覧・検索・復元
+
+> **補足**: 初回起動時に、既存の CLI ツール設定を手動でインポートしてデフォルトプロバイダとして使用できます。
## ダウンロード & インストール
@@ -210,7 +242,7 @@ brew upgrade --cask cc-switch
> **注意**: 開発者アカウント未登録のため、初回起動時に「開発元を確認できません」と表示される場合があります。一度閉じてから「システム設定」→「プライバシーとセキュリティ」→「このまま開く」をクリックしてください。以降は通常通り起動できます。
-### ArchLinux ユーザー
+### Arch Linux ユーザー
**paru でインストール(推奨)**
@@ -234,89 +266,8 @@ flatpak install --user ./CC-Switch-v{version}-Linux.flatpak
flatpak run com.ccswitch.desktop
```
-## クイックスタート
-
-### 基本的な使い方
-
-1. **プロバイダ追加**:「Add Provider」をクリック → プリセットを選ぶかカスタム設定を作成
-2. **プロバイダ切り替え**:
- - メイン UI: プロバイダを選択 → 「Enable」をクリック
- - システムトレイ: プロバイダ名をクリック(即時反映)
-3. **反映**: ターミナルや Claude Code / Codex / Gemini クライアントを再起動して適用
-4. **公式設定に戻す**: 「Official Login」プリセット(Claude/Codex)または「Google Official」プリセット(Gemini)を選び、対応クライアントを再起動してログイン/OAuth を実行
-
-### MCP 管理
-
-- **入口**: 右上の「MCP」ボタンをクリック
-- **サーバー追加**:
- - 組み込みテンプレート(mcp-fetch、mcp-filesystem など)を使用
- - stdio / http / sse の各トランスポートをサポート
- - アプリごとに独立した MCP を設定可能
-- **有効/無効**: トグルでライブ設定への同期を切り替え
-- **同期**: 有効なサーバーは各アプリのライブファイルへ自動同期
-- **インポート/エクスポート**: Claude/Codex/Gemini の設定ファイルから既存 MCP を取り込み
-
-### Skills 管理 (v3.7.0 新機能)
-
-- **入口**: 右上の「Skills」ボタンをクリック
-- **スキル探索**:
- - 事前設定済みの GitHub リポジトリを自動スキャン(Anthropic 公式、ComposioHQ、コミュニティなど)
- - カスタムリポジトリを追加(サブディレクトリスキャン対応)
-- **インストール**: 「Install」を押すだけで `~/.claude/skills/` に配置
-- **アンインストール**: 「Uninstall」で安全に削除と状態クリーンアップ
-- **リポジトリ管理**: カスタム GitHub リポジトリを追加/削除
-
-### Prompts 管理 (v3.7.0 新機能)
-
-- **入口**: 右上の「Prompts」ボタンをクリック
-- **プリセット作成**:
- - 無制限のシステムプロンプトプリセットを作成
- - Markdown エディタで記述(シンタックスハイライト + リアルタイムプレビュー)
-- **プリセット切り替え**: プリセットを選択 → 「Activate」で即適用
-- **同期先**:
- - Claude: `~/.claude/CLAUDE.md`
- - Codex: `~/.codex/AGENTS.md`
- - Gemini: `~/.gemini/GEMINI.md`
-- **保護機構**: 切り替え前に現在の内容を自動保存し、手動変更を保持
-
-### 設定ファイルパス
-
-**Claude Code**
-
-- ライブ設定: `~/.claude/settings.json`(または `claude.json`)
-- API キーフィールド: `env.ANTHROPIC_AUTH_TOKEN` または `env.ANTHROPIC_API_KEY`
-- MCP サーバー: `~/.claude.json` → `mcpServers`
-
-**Codex**
-
-- ライブ設定: `~/.codex/auth.json`(必須)+ `config.toml`(任意)
-- API キーフィールド: `auth.json` 内の `OPENAI_API_KEY`
-- MCP サーバー: `~/.codex/config.toml` → `[mcp_servers]` テーブル
-
-**Gemini**
-
-- ライブ設定: `~/.gemini/.env`(API キー)+ `~/.gemini/settings.json`(認証モード)
-- API キーフィールド: `.env` 内の `GEMINI_API_KEY` または `GOOGLE_GEMINI_API_KEY`
-- 環境変数: `GOOGLE_GEMINI_BASE_URL`、`GEMINI_MODEL` などをサポート
-- MCP サーバー: `~/.gemini/settings.json` → `mcpServers`
-- トレイでのクイックスイッチ: プロバイダ切り替えごとに `~/.gemini/.env` を書き換えるため Gemini CLI の再起動は不要
-
-**CC Switch 保存先 (v3.8.0 新アーキテクチャ)**
-
-- データベース (SSOT): `~/.cc-switch/cc-switch.db`(SQLite。プロバイダ、MCP、Prompts、Skills を保存)
-- ローカル設定: `~/.cc-switch/settings.json`(デバイスレベル設定)
-- バックアップ: `~/.cc-switch/backups/`(自動ローテーション、最新 10 件を保持)
-
-### クラウド同期の設定
-
-1. 設定 → 「Custom Configuration Directory」へ進む
-2. クラウド同期フォルダ(Dropbox、OneDrive、iCloud など)を選択
-3. アプリを再起動して反映
-4. 他のデバイスでも同じフォルダを指定すればクロスデバイス同期が有効に
-
-> **補足**: 初回起動時に既存の Claude/Codex 設定をデフォルトプロバイダとして自動インポートします。
-
-## アーキテクチャ概要
+
+アーキテクチャ概要
### 設計原則
@@ -344,23 +295,22 @@ flatpak run com.ccswitch.desktop
- **二層ストレージ**: 同期データは SQLite、デバイスデータは JSON
- **双方向同期**: 切り替え時はライブファイルへ書き込み、編集時はアクティブプロバイダから逆同期
- **アトミック書き込み**: 一時ファイル + rename パターンで設定破損を防止
-- **並行安全**: Mutex で保護された DB 接続でレースを防ぐ
+- **並行安全**: Mutex で保護された DB 接続でレースコンディションを防止
- **レイヤードアーキテクチャ**: Commands → Services → DAO → Database を明確に分離
**主要コンポーネント**
- **ProviderService**: プロバイダの CRUD、切り替え、バックフィル、ソート
- **McpService**: MCP サーバー管理、インポート/エクスポート、ライブファイル同期
+- **ProxyService**: ローカル Proxy モードのホットスイッチとフォーマット変換
+- **SessionManager**: Claude Code の会話履歴閲覧
- **ConfigService**: 設定のインポート/エクスポート、バックアップローテーション
- **SpeedtestService**: API エンドポイントの遅延計測
-**v3.6 リファクタリング**
+
-- バックエンド: エラーハンドリング → コマンド分割 → テスト → サービス層 → 並行性の 5 フェーズ
-- フロントエンド: テスト基盤 → hooks → コンポーネント → クリーンアップの 4 ステージ
-- テスト: hooks 100% カバレッジ + 統合テスト(vitest + MSW)
-
-## 開発
+
+開発ガイド
### 開発環境
@@ -421,7 +371,7 @@ cargo test test_name
cargo test --features test-hooks
```
-### テストガイド (v3.6)
+### テストガイド
**フロントエンドテスト**:
@@ -429,18 +379,6 @@ cargo test --features test-hooks
- **MSW (Mock Service Worker)** で Tauri API 呼び出しをモック
- コンポーネントテストに **@testing-library/react** を採用
-**テストカバレッジ**:
-
-- Hooks の単体テスト(100% カバレッジ)
- - `useProviderActions` - プロバイダ操作
- - `useMcpActions` - MCP 管理
- - `useSettings` 系 - 設定管理
- - `useImportExport` - インポート/エクスポート
-- 統合テスト
- - アプリのメインフロー
- - SettingsDialog の一連操作
- - MCP パネルの機能
-
**テスト実行**:
```bash
@@ -454,60 +392,68 @@ pnpm test:unit:watch
pnpm test:unit --coverage
```
-## 技術スタック
+### 技術スタック
-**フロントエンド**: React 18 · TypeScript · Vite · TailwindCSS 4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit
+**フロントエンド**: React 18 · TypeScript · Vite · TailwindCSS 3.4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit
**バックエンド**: Tauri 2.8 · Rust · serde · tokio · thiserror · tauri-plugin-updater/process/dialog/store/log
**テスト**: vitest · MSW · @testing-library/react
-## プロジェクト構成
+
+
+
+プロジェクト構成
```
-├── src/ # フロントエンド (React + TypeScript)
-│ ├── components/ # UI コンポーネント (providers/settings/mcp/ui)
-│ ├── hooks/ # ビジネスロジック用カスタムフック
+├── src/ # フロントエンド (React + TypeScript)
+│ ├── components/
+│ │ ├── providers/ # プロバイダ管理
+│ │ ├── mcp/ # MCP パネル
+│ │ ├── prompts/ # Prompts 管理
+│ │ ├── skills/ # Skills 管理
+│ │ ├── sessions/ # Session Manager
+│ │ ├── proxy/ # Proxy モードパネル
+│ │ ├── openclaw/ # OpenClaw 設定パネル
+│ │ ├── settings/ # 設定 (Terminal/Backup/About)
+│ │ ├── deeplink/ # Deep Link インポート
+│ │ ├── env/ # 環境変数管理
+│ │ ├── universal/ # クロスアプリ設定
+│ │ ├── usage/ # 使用量統計
+│ │ └── ui/ # shadcn/ui コンポーネントライブラリ
+│ ├── hooks/ # カスタムフック(ビジネスロジック)
│ ├── lib/
-│ │ ├── api/ # Tauri API ラッパー (型安全)
-│ │ └── query/ # TanStack Query 設定
-│ ├── i18n/locales/ # 翻訳 (zh/en)
-│ ├── config/ # プリセット (providers/mcp)
-│ └── types/ # TypeScript 型定義
-├── src-tauri/ # バックエンド (Rust)
+│ │ ├── api/ # Tauri API ラッパー(型安全)
+│ │ └── query/ # TanStack Query 設定
+│ ├── locales/ # 翻訳 (zh/en/ja)
+│ ├── config/ # プリセット (providers/mcp)
+│ └── types/ # TypeScript 型定義
+├── src-tauri/ # バックエンド (Rust)
│ └── src/
-│ ├── commands/ # Tauri コマンド層 (ドメイン別)
-│ ├── services/ # ビジネスロジック層
-│ ├── app_config.rs # 設定モデル
-│ ├── provider.rs # プロバイダドメインモデル
-│ ├── mcp.rs # MCP 同期 & 検証
-│ └── lib.rs # アプリエントリ & トレイメニュー
-├── tests/ # フロントエンドテスト
-│ ├── hooks/ # 単体テスト
-│ └── components/ # 統合テスト
-└── assets/ # スクリーンショット & スポンサーリソース
+│ ├── commands/ # Tauri コマンド層(ドメイン別)
+│ ├── services/ # ビジネスロジック層
+│ ├── database/ # SQLite DAO 層
+│ ├── proxy/ # Proxy モジュール
+│ ├── session_manager/ # セッション管理
+│ ├── deeplink/ # Deep Link 処理
+│ └── mcp/ # MCP 同期モジュール
+├── tests/ # フロントエンドテスト
+└── assets/ # スクリーンショット & パートナーリソース
```
-## 更新履歴
-
-詳細は [CHANGELOG.md](CHANGELOG.md) をご覧ください。
-
-## 旧 Electron 版
-
-[Releases](../../releases) に v2.0.3 の Electron 旧版を残しています。
-
-旧版コードが必要な場合は `electron-legacy` ブランチを取得してください。
+
## 貢献
Issue や提案を歓迎します!
-PR を送る前に以下をご確認ください:
+PR を送る前に以下をご確認ください:
- 型チェック: `pnpm typecheck`
- フォーマットチェック: `pnpm format:check`
- 単体テスト: `pnpm test:unit`
-- 💡 新機能の場合は、事前に Issue でディスカッションしていただけると助かります
+
+新機能の場合は、PR を送る前に Issue でディスカッションしてください。プロジェクトに合わない機能の PR はクローズされる場合があります。
## Star History
diff --git a/README_ZH.md b/README_ZH.md
index f7beadb3..aab319ca 100644
--- a/README_ZH.md
+++ b/README_ZH.md
@@ -1,20 +1,25 @@
-# Claude Code / Codex / Gemini CLI 全方位辅助工具
+# CC Switch
-[](https://github.com/farion1231/cc-switch/releases)
+### Claude Code、Codex、Gemini CLI、OpenCode 和 OpenClaw 的全方位管理工具
+
+[](https://github.com/farion1231/cc-switch/releases)
[](https://github.com/farion1231/cc-switch/releases)
[](https://tauri.app/)
[](https://github.com/farion1231/cc-switch/releases/latest)

-[English](README.md) | 中文 | [日本語](README_JA.md) | [更新日志](CHANGELOG.md) | [v3.9.0 发布说明](docs/release-note-v3.9.0-zh.md)
+[English](README.md) | 中文 | [日本語](README_JA.md) | [更新日志](CHANGELOG.md)
## ❤️赞助商
+
+点击折叠
+
[](https://platform.minimaxi.com/subscribe/coding-plan?code=7kYF2VoaCn&source=link)
MiniMax M2.5 在编程、工具调用与搜索、办公等核心生产力场景均达到或刷新行业 SOTA,拥有架构师级代码能力与高效任务拆解能力,推理速度较上一代提升 37%、token 消耗更优;100 token/s 连续工作一小时仅需 1 美金,让复杂 Agent 规模化部署经济可行,已在企业多职能场景深度落地,加速全民 Agent 时代到来。
@@ -73,6 +78,22 @@ Claude Code / Codex / Gemini 官方渠道低至 3.8 / 0.2 / 0.9 折,充值更
+
+
+## 为什么选择 CC Switch?
+
+现代 AI 编程依赖于 Claude Code、Codex、Gemini CLI、OpenCode 和 OpenClaw 等 CLI 工具——但每个工具都有自己的配置格式。切换 API 供应商意味着手动编辑 JSON、TOML 或 `.env` 文件,而在多个工具之间缺乏一个统一管理 MCP, SKILLS 的方式。
+
+**CC Switch** 为你提供一个桌面应用来管理所有五个 CLI 工具。无需手动编辑配置文件,你将获得一个可视化界面,一键将供应商导入应用,一键在不同的供应商之间进行切换,内置 50+ 供应商预设、统一的 MCP, SKILLS 管理以及系统托盘即时切换功能——所有操作都基于可靠的 SQLite 数据库和原子写入机制,保护你的配置不被损坏。
+
+- **一个应用,五个 CLI 工具** — 在单一界面中管理 Claude Code、Codex、Gemini CLI、OpenCode 和 OpenClaw
+- **告别手动编辑** — 50+ 供应商预设,包括 AWS Bedrock、NVIDIA NIM 和社区中转服务;一键即可切换
+- **统一 MCP, SKILLS 管理** — 一个面板管理四个应用的 MCP, SKILLS, 支持双向同步
+- **系统托盘快速切换** — 从托盘菜单即时切换供应商,无需打开完整应用
+- **云同步** — 通过 Dropbox、OneDrive、iCloud 或 WebDAV 服务器在不同设备之间同步供应商数据
+- **跨平台** — 基于 Tauri 2 构建的原生桌面应用,支持 Windows、macOS 和 Linux
+- **小工具** - 内置了多种小工具来解决首次安装登录确认、禁止签名、插件拓展同步等多种功能
+
## 界面预览
| 主界面 | 添加供应商 |
@@ -81,114 +102,127 @@ Claude Code / Codex / Gemini 官方渠道低至 3.8 / 0.2 / 0.9 折,充值更
## 功能特性
-### 当前版本:v3.10.2 | [完整更新日志](CHANGELOG.md) | [发布说明](docs/release-note-v3.9.0-zh.md)
+[完整更新日志](CHANGELOG.md) | [发布说明](docs/release-note-v3.11.1-zh.md)
-**v3.8.0 重大更新(2025-11-28)**
+### 供应商管理
-**持久化架构升级 & 全新用户界面**
+- **5 个 CLI 工具,50+ 预设** — Claude Code、Codex、Gemini CLI、OpenCode、OpenClaw;复制 key 即可一键导入
+- **通用供应商** — 一份配置同步到多个应用(OpenCode、OpenClaw)
+- 一键切换、系统托盘快速访问、拖拽排序、导入导出
-- **SQLite + JSON 双层架构**
- - 从 JSON 文件存储迁移到 SQLite + JSON 双层结构
- - 可同步数据(供应商、MCP、Prompts、Skills)存入 SQLite
- - 设备级数据(窗口状态、本地路径)保留在 JSON
- - 为未来云同步功能奠定基础
- - Schema 版本管理支持数据库迁移
+### 代理与故障转移
-- **全新用户界面**
- - 完全重新设计的界面布局
- - 统一的组件样式和更流畅的动画
- - 优化的视觉层次
- - Tailwind CSS 从 v4 降级到 v3.4 以提升浏览器兼容性
+- **本地代理热切换** — 格式转换、自动故障转移、熔断器、供应商健康监控和整流器
+- **应用级代理接管** — 独立为 Claude、Codex 或 Gemini 配置代理,具体到单个供应商
-- **日语支持**
- - 新增日语界面支持(现支持中文/英文/日语)
+### MCP、Prompts 与 Skills
-- **开机自启**
- - 在设置中一键开启/关闭
- - 使用平台原生 API(注册表/LaunchAgent/XDG autostart)
+- **统一 MCP 面板** — 管理 4 个应用的 MCP 服务器,双向同步,支持 Deep Link 导入
+- **Prompts** — Markdown 编辑器,跨应用同步(CLAUDE.md / AGENTS.md / GEMINI.md),回填保护
+- **Skills** — 从 GitHub 仓库或 ZIP 文件一键安装,自定义仓库管理,支持软连接和文件复制
-- **Skills 递归扫描**
- - 支持多层目录结构
- - 允许不同仓库的同名技能
+### 用量与成本追踪
-- **关键 Bug 修复**
- - 修复更新供应商时自定义端点丢失问题
- - 修复 Gemini 配置写入问题
- - 修复 Linux WebKitGTK 渲染问题
+- **用量仪表盘** — 跨供应商追踪支出、请求数和 Token 用量,趋势图表、详细请求日志和自定义模型定价
-**v3.7.0 亮点**
+### 会话管理器与工作区
-**六大核心功能,18,000+ 行新增代码**
+- 浏览、搜索和恢复全部应用对话历史
+- **工作区编辑器**(OpenClaw)— 编辑 Agent 文件(AGENTS.md、SOUL.md 等),支持 Markdown 预览
-- **Gemini CLI 集成**
- - 第三个支持的 AI CLI(Claude Code / Codex / Gemini)
- - 双文件配置支持(`.env` + `settings.json`)
- - 完整 MCP 服务器管理
- - 预设:Google Official (OAuth) / PackyCode / 自定义
+### 系统与平台
-- **Claude Skills 管理系统**
- - 从 GitHub 仓库自动扫描技能(预配置 3 个精选仓库)
- - 一键安装/卸载到 `~/.claude/skills/`
- - 自定义仓库支持 + 子目录扫描
- - 完整生命周期管理(发现/安装/更新)
+- **云同步** — 自定义配置目录(Dropbox、OneDrive、iCloud、坚果云、NAS)及 WebDAV 服务器同步
+- **Deep Link** (`ccswitch://`) — 通过 URL 一键导入供应商、MCP 服务器、提示词和技能
+- 深色 / 浅色 / 跟随系统主题、开机自启、自动更新、原子写入、自动备份、国际化(中/英/日)
-- **Prompts 管理系统**
- - 多预设系统提示词管理(无限数量,快速切换)
- - 跨应用支持(Claude: `CLAUDE.md` / Codex: `AGENTS.md` / Gemini: `GEMINI.md`)
- - Markdown 编辑器(CodeMirror 6 + 实时预览)
- - 智能回填保护,保留手动修改
+## 常见问题
-- **MCP v3.7.0 统一架构**
- - 单一面板管理三个应用的 MCP 服务器
- - 新增 SSE (Server-Sent Events) 传输类型
- - 智能 JSON 解析器 + Codex TOML 格式自动修正
- - 统一导入/导出 + 双向同步
+
+CC Switch 支持哪些 AI CLI 工具?
-- **深度链接协议**
- - `ccswitch://` 协议注册(全平台)
- - 通过共享链接一键导入供应商配置
- - 安全验证 + 生命周期集成
+CC Switch 支持五个工具:**Claude Code**、**Codex**、**Gemini CLI**、**OpenCode** 和 **OpenClaw**。每个工具都有专属的供应商预设和配置管理。
-- **环境变量冲突检测**
- - 自动检测跨应用配置冲突(Claude/Codex/Gemini/MCP)
- - 可视化冲突指示器 + 解决建议
- - 覆盖警告 + 更改前备份
+
-**核心功能**
+
+切换供应商后需要重启终端吗?
-- **供应商管理**:一键切换 Claude Code、Codex 与 Gemini 的 API 配置
-- **AWS Bedrock 支持**:内置 AWS Bedrock 供应商预设,支持 AKSK 和 API Key 两种认证方式,支持跨区域推理(global/us/eu/apac),覆盖 Claude Code 和 OpenCode
-- **速度测试**:测量 API 端点延迟,可视化连接质量指示器
-- **导入导出**:备份和恢复配置,自动轮换(保留最近 10 个)
-- **国际化支持**:完整的中英文本地化(UI、错误、托盘)
-- **Claude 插件同步**:一键应用或恢复 Claude 插件配置
+大多数工具需要重启终端或 CLI 工具才能使更改生效。例外的是 **Claude Code**,它目前支持供应商数据的热切换,无需重启。
-**v3.6 亮点**
+
-- 供应商复制 & 拖拽排序
-- 多端点管理 & 自定义配置目录(支持云同步)
-- 细粒度模型配置(四层:Haiku/Sonnet/Opus/自定义)
-- WSL 环境支持,配置目录切换自动同步
-- 100% hooks 测试覆盖 & 完整架构重构
+
+切换供应商之后我的插件配置怎么不见了?
-**系统功能**
+CC Switch 使用“通用配置片段”功能,在不同的供应商之间传递 Key 和请求地址之外的通用数据,您可以在“编辑供应商”菜单的“通用配置面板”里,点击“从当前供应商提取”,把所有的通用数据提取到通用配置中,之后在新建“供应商”的时候,只要勾选“写入通用配置”(默认勾选),就会把插件等数据写入到新的供应商配置中。您的所有配置项都会保存在运行本软件的时候,第一次导入的默认供应商里面,不会丢失。
-- 系统托盘快速切换
-- 单实例守护
-- 内置自动更新器
-- 原子写入与回滚保护
+
+
+
+macOS 提示"未知开发者"警告 — 如何解决?
+
+这是由于作者没有苹果开发者账号(正在注册中)。关闭警告后,前往**系统设置 → 隐私与安全性 → 仍要打开**。之后应用即可正常打开。
+
+
+
+
+为什么总有一个正在激活中的供应商无法删除?
+
+本软件的设计原则是“最小侵入性”,即使卸载本软件,也不会影响应用的正常使用。
+
+所以系统总会保留一个正在激活中的配置,因为如果将所有配置全部删除,该应用将无法正常使用。如果你不经常使用某个对应的应用,可以在设置中关掉该应用的显示。如果你想切换回官方登录,可以参考下条。
+
+
+
+
+如何切换回官方登录?
+
+可以在预设供应商里面添加一个官方供应商。切换过去之后,执行一遍 Log out / Log in 流程,之后便可以在官方供应商和第三方供应商之间随意切换。CodeX 可以在不同官方供应商之间进行切换,方便多个 Plus 或者 Team 账号之间切换。
+
+
+
+
+我的数据存储在哪里?
+
+- **数据库**:`~/.cc-switch/cc-switch.db`(SQLite — 供应商、MCP、提示词、技能)
+- **本地设置**:`~/.cc-switch/settings.json`(设备级 UI 偏好设置)
+- **备份**:`~/.cc-switch/backups/`(自动轮换,保留最近 10 个)
+- **SKILLS**:`~/.cc-switch/skills/`(默认通过软链接连接到对应应用)
+
+
+
+## 快速开始
+
+### 基本使用
+
+1. **添加供应商**:点击"添加供应商" → 选择预设或创建自定义配置
+2. **切换供应商**:
+ - 主界面:选择供应商 → 点击"启用"
+ - 系统托盘:直接点击供应商名称(立即生效)
+3. **生效方式**:重启终端或对应的 CLI 工具以应用更改(CLaude Code 无需重启)
+4. **恢复官方登录**:添加"官方登录"预设,重启 CLI 工具后按照其登录/OAuth 流程操作
+
+### MCP、Prompts、Skills 与会话
+
+- **MCP**:点击"MCP"按钮 → 通过模板或自定义配置添加服务器 → 切换各应用同步开关
+- **Prompts**:点击"Prompts" → 使用 Markdown 编辑器创建预设 → 激活后同步到 live 文件
+- **Skills**:点击"Skills" → 浏览 GitHub 仓库 → 一键安装到全部应用
+- **会话**:点击"Sessions" → 浏览和搜索和恢复全部应用对话历史
+
+> **注意**:首次启动可以手动导入现有 CLI 工具配置作为默认供应商。
## 下载安装
### 系统要求
-- **Windows**: Windows 10 及以上
-- **macOS**: macOS 10.15 (Catalina) 及以上
-- **Linux**: Ubuntu 22.04+ / Debian 11+ / Fedora 34+ 等主流发行版
+- **Windows**:Windows 10 及以上
+- **macOS**:macOS 10.15 (Catalina) 及以上
+- **Linux**:Ubuntu 22.04+ / Debian 11+ / Fedora 34+ 等主流发行版
### Windows 用户
-从 [Releases](../../releases) 页面下载最新版本的 `CC-Switch-v{版本号}-Windows.msi` 安装包或者 `CC-Switch-v{版本号}-Windows-Portable.zip` 绿色版。
+从 [Releases](../../releases) 页面下载最新版本的 `CC-Switch-v{版本号}-Windows.msi` 安装包或 `CC-Switch-v{版本号}-Windows-Portable.zip` 绿色版。
### macOS 用户
@@ -209,9 +243,9 @@ brew upgrade --cask cc-switch
从 [Releases](../../releases) 页面下载 `CC-Switch-v{版本号}-macOS.zip` 解压使用。
-> **注意**:由于作者没有苹果开发者账号,首次打开可能出现"未知开发者"警告,请先关闭,然后前往"系统设置" → "隐私与安全性" → 点击"仍要打开",之后便可以正常打开
+> **注意**:由于作者没有苹果开发者账号,首次打开可能出现"未知开发者"警告,请先关闭,然后前往"系统设置" → "隐私与安全性" → 点击"仍要打开",之后便可以正常打开。
-### ArchLinux 用户
+### Arch Linux 用户
**通过 paru 安装(推荐)**
@@ -235,89 +269,8 @@ flatpak install --user ./CC-Switch-v{版本号}-Linux.flatpak
flatpak run com.ccswitch.desktop
```
-## 快速开始
-
-### 基本使用
-
-1. **添加供应商**:点击"添加供应商" → 选择预设或创建自定义配置
-2. **切换供应商**:
- - 主界面:选择供应商 → 点击"启用"
- - 系统托盘:直接点击供应商名称(立即生效)
-3. **生效方式**:重启终端或 Claude Code / Codex / Gemini 客户端以应用更改
-4. **恢复官方登录**:选择"官方登录"预设(Claude/Codex)或"Google 官方"预设(Gemini),重启对应客户端后按照其登录/OAuth 流程操作
-
-### MCP 管理
-
-- **位置**:点击右上角"MCP"按钮
-- **添加服务器**:
- - 使用内置模板(mcp-fetch、mcp-filesystem 等)
- - 支持 stdio / http / sse 三种传输类型
- - 为不同应用配置独立的 MCP 服务器
-- **启用/禁用**:切换开关以控制哪些服务器同步到 live 配置
-- **同步**:启用的服务器自动同步到各应用的 live 文件
-- **导入/导出**:支持从 Claude/Codex/Gemini 配置文件导入现有 MCP 服务器
-
-### Skills 管理(v3.7.0 新增)
-
-- **位置**:点击右上角"Skills"按钮
-- **发现技能**:
- - 自动扫描预配置的 GitHub 仓库(Anthropic 官方、ComposioHQ、社区等)
- - 添加自定义仓库(支持子目录扫描)
-- **安装技能**:点击"安装"一键安装到 `~/.claude/skills/`
-- **卸载技能**:点击"卸载"安全移除并清理状态
-- **管理仓库**:添加/删除自定义 GitHub 仓库
-
-### Prompts 管理(v3.7.0 新增)
-
-- **位置**:点击右上角"Prompts"按钮
-- **创建预设**:
- - 创建无限数量的系统提示词预设
- - 使用 Markdown 编辑器编写提示词(语法高亮 + 实时预览)
-- **切换预设**:选择预设 → 点击"激活"立即应用
-- **同步机制**:
- - Claude: `~/.claude/CLAUDE.md`
- - Codex: `~/.codex/AGENTS.md`
- - Gemini: `~/.gemini/GEMINI.md`
-- **保护机制**:切换前自动保存当前提示词内容,保留手动修改
-
-### 配置文件
-
-**Claude Code**
-
-- Live 配置:`~/.claude/settings.json`(或 `claude.json`)
-- API key 字段:`env.ANTHROPIC_AUTH_TOKEN` 或 `env.ANTHROPIC_API_KEY`
-- MCP 服务器:`~/.claude.json` → `mcpServers`
-
-**Codex**
-
-- Live 配置:`~/.codex/auth.json`(必需)+ `config.toml`(可选)
-- API key 字段:`auth.json` 中的 `OPENAI_API_KEY`
-- MCP 服务器:`~/.codex/config.toml` → `[mcp_servers]` 表
-
-**Gemini**
-
-- Live 配置:`~/.gemini/.env`(API Key)+ `~/.gemini/settings.json`(保存认证模式)
-- API key 字段:`.env` 文件中的 `GEMINI_API_KEY` 或 `GOOGLE_GEMINI_API_KEY`
-- 环境变量:支持 `GOOGLE_GEMINI_BASE_URL`、`GEMINI_MODEL` 等自定义变量
-- MCP 服务器:`~/.gemini/settings.json` → `mcpServers`
-- 托盘快速切换:每次切换供应商都会重写 `~/.gemini/.env`,无需重启 Gemini CLI 即可生效
-
-**CC Switch 存储(v3.8.0 新架构)**
-
-- 数据库(SSOT):`~/.cc-switch/cc-switch.db`(SQLite,存储供应商、MCP、Prompts、Skills)
-- 本地设置:`~/.cc-switch/settings.json`(设备级设置)
-- 备份:`~/.cc-switch/backups/`(自动轮换,保留 10 个)
-
-### 云同步设置
-
-1. 前往设置 → "自定义配置目录"
-2. 选择您的云同步文件夹(Dropbox、OneDrive、iCloud、坚果云等)
-3. 重启应用以应用
-4. 在其他设备上重复操作以启用跨设备同步
-
-> **注意**:首次启动会自动导入现有 Claude/Codex 配置作为默认供应商。
-
-## 架构总览
+
+架构总览
### 设计原则
@@ -352,16 +305,15 @@ flatpak run com.ccswitch.desktop
- **ProviderService**:供应商增删改查、切换、回填、排序
- **McpService**:MCP 服务器管理、导入导出、live 文件同步
+- **ProxyService**:本地 Proxy 模式,支持热切换和格式转换
+- **SessionManager**:Claude Code 对话历史浏览
- **ConfigService**:配置导入导出、备份轮换
- **SpeedtestService**:API 端点延迟测量
-**v3.6 重构**
+
-- 后端:5 阶段重构(错误处理 → 命令拆分 → 测试 → 服务 → 并发)
-- 前端:4 阶段重构(测试基础 → hooks → 组件 → 清理)
-- 测试:100% hooks 覆盖 + 集成测试(vitest + MSW)
-
-## 开发
+
+开发指南
### 环境要求
@@ -422,7 +374,7 @@ cargo test test_name
cargo test --features test-hooks
```
-### 测试说明(v3.6 新增)
+### 测试说明
**前端测试**:
@@ -430,18 +382,6 @@ cargo test --features test-hooks
- 使用 **MSW (Mock Service Worker)** 模拟 Tauri API 调用
- 使用 **@testing-library/react** 进行组件测试
-**测试覆盖**:
-
-- Hooks 单元测试(100% 覆盖)
- - `useProviderActions` - 供应商操作
- - `useMcpActions` - MCP 管理
- - `useSettings` 系列 - 设置管理
- - `useImportExport` - 导入导出
-- 集成测试
- - App 主应用流程
- - SettingsDialog 完整交互
- - MCP 面板功能
-
**运行测试**:
```bash
@@ -455,49 +395,56 @@ pnpm test:unit:watch
pnpm test:unit --coverage
```
-## 技术栈
+### 技术栈
-**前端**:React 18 · TypeScript · Vite · TailwindCSS 4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit
+**前端**:React 18 · TypeScript · Vite · TailwindCSS 3.4 · TanStack Query v5 · react-i18next · react-hook-form · zod · shadcn/ui · @dnd-kit
**后端**:Tauri 2.8 · Rust · serde · tokio · thiserror · tauri-plugin-updater/process/dialog/store/log
**测试**:vitest · MSW · @testing-library/react
-## 项目结构
+
+
+
+项目结构
```
-├── src/ # 前端 (React + TypeScript)
-│ ├── components/ # UI 组件 (providers/settings/mcp/ui)
-│ ├── hooks/ # 自定义 hooks (业务逻辑)
+├── src/ # 前端 (React + TypeScript)
+│ ├── components/
+│ │ ├── providers/ # 供应商管理
+│ │ ├── mcp/ # MCP 面板
+│ │ ├── prompts/ # Prompts 管理
+│ │ ├── skills/ # Skills 管理
+│ │ ├── sessions/ # 会话管理器
+│ │ ├── proxy/ # Proxy 模式面板
+│ │ ├── openclaw/ # OpenClaw 配置面板
+│ │ ├── settings/ # 设置(终端/备份/关于)
+│ │ ├── deeplink/ # Deep Link 导入
+│ │ ├── env/ # 环境变量管理
+│ │ ├── universal/ # 跨应用配置
+│ │ ├── usage/ # 用量统计
+│ │ └── ui/ # shadcn/ui 组件库
+│ ├── hooks/ # 自定义 hooks(业务逻辑)
│ ├── lib/
-│ │ ├── api/ # Tauri API 封装(类型安全)
-│ │ └── query/ # TanStack Query 配置
-│ ├── i18n/locales/ # 翻译 (zh/en)
-│ ├── config/ # 预设 (providers/mcp)
-│ └── types/ # TypeScript 类型定义
-├── src-tauri/ # 后端 (Rust)
+│ │ ├── api/ # Tauri API 封装(类型安全)
+│ │ └── query/ # TanStack Query 配置
+│ ├── locales/ # 翻译 (zh/en/ja)
+│ ├── config/ # 预设 (providers/mcp)
+│ └── types/ # TypeScript 类型定义
+├── src-tauri/ # 后端 (Rust)
│ └── src/
-│ ├── commands/ # Tauri 命令层(按领域)
-│ ├── services/ # 业务逻辑层
-│ ├── app_config.rs # 配置数据模型
-│ ├── provider.rs # 供应商领域模型
-│ ├── mcp.rs # MCP 同步与校验
-│ └── lib.rs # 应用入口 & 托盘菜单
-├── tests/ # 前端测试
-│ ├── hooks/ # 单元测试
-│ └── components/ # 集成测试
-└── assets/ # 截图 & 合作商资源
+│ ├── commands/ # Tauri 命令层(按领域)
+│ ├── services/ # 业务逻辑层
+│ ├── database/ # SQLite DAO 层
+│ ├── proxy/ # Proxy 模块
+│ ├── session_manager/ # 会话管理
+│ ├── deeplink/ # Deep Link 处理
+│ └── mcp/ # MCP 同步模块
+├── tests/ # 前端测试
+└── assets/ # 截图 & 合作商资源
```
-## 更新日志
-
-查看 [CHANGELOG.md](CHANGELOG.md) 了解版本更新详情。
-
-## Electron 旧版
-
-[Releases](../../releases) 里保留 v2.0.3 Electron 旧版
-
-如果需要旧版 Electron 代码,可以拉取 electron-legacy 分支
+
## 贡献
@@ -508,7 +455,8 @@ pnpm test:unit --coverage
- 通过类型检查:`pnpm typecheck`
- 通过格式检查:`pnpm format:check`
- 通过单元测试:`pnpm test:unit`
-- 💡 新功能开发前,欢迎先开 issue 讨论实现方案
+
+新功能开发前,欢迎先开 Issue 讨论实现方案,不适合项目的功能性 PR 有可能会被关闭。
## Star History