by farion1231
Manages and switches provider configurations and MCP servers for Claude Code and Codex on Windows, macOS, and Linux, supporting custom endpoints, cloud‑synced directories, and rapid configuration import/export.
Manages multiple AI coding providers and their MCP servers, allowing one‑click switching of Claude Code or Codex configurations across platforms. It centralises all provider data, offers backup & restore, and provides speed‑testing and internationalisation out of the box.
brew tap farion1231/ccswitch && brew install --cask cc-switch).settings.json for Claude, auth.json/config.toml for Codex) are updated instantly.Q: Where are the live configuration files stored?
~/.claude/settings.json (fallback claude.json).~/.codex/auth.json and ~/.codex/config.toml.Q: Do I need to migrate old configurations?
~/.cc-switch/config.json.Q: How does the app handle WSL?
Q: Can I run the app without admin rights?
Q: How are backups managed?
~/.cc-switch/backups/ with timestamps; the latest 10 are retained automatically.Q: What if a provider’s API key changes?
Q: Is the app open‑source?
English | 中文 | 日本語 | Changelog
From Provider Switcher to All-in-One AI CLI Management Platform
Unified management for Claude Code, Codex & Gemini CLI provider configurations, MCP servers, Skills extensions, and system prompts.

This project is sponsored by Z.ai, supporting us with their GLM CODING PLAN.
GLM CODING PLAN is a subscription service designed for AI coding, starting at just $3/month. It provides access to their flagship GLM-4.6 model across 10+ popular AI coding tools (Claude Code, Cline, Roo Code, etc.), offering developers top-tier, fast, and stable coding experiences.
Get 10% OFF the GLM CODING PLAN with this link!
| Main Interface | Add Provider |
|---|---|
![]() |
![]() |
v3.8.0 Major Update (2025-11-28)
Persistence Architecture Upgrade & Brand New UI
SQLite + JSON Dual-layer Architecture
Brand New User Interface
Japanese Language Support
Auto Launch on Startup
Skills Recursive Scanning
Critical Bug Fixes
v3.7.0 Highlights
Six Core Features, 18,000+ Lines of New Code
Gemini CLI Integration
.env + settings.json)Claude Skills Management System
~/.claude/skills/Prompts Management System
CLAUDE.md / Codex: AGENTS.md / Gemini: GEMINI.md)MCP v3.7.0 Unified Architecture
Deep Link Protocol
ccswitch:// protocol registration (all platforms)Environment Variable Conflict Detection
Core Capabilities
v3.6 Highlights
System Features
Download the latest CC-Switch-v{version}-Windows.msi installer or CC-Switch-v{version}-Windows-Portable.zip portable version from the Releases page.
Method 1: Install via Homebrew (Recommended)
brew tap farion1231/ccswitch
brew install --cask cc-switch
Update:
brew upgrade --cask cc-switch
Method 2: Manual Download
Download CC-Switch-v{version}-macOS.zip from the Releases page and extract to use.
Note: Since the author doesn't have an Apple Developer account, you may see an "unidentified developer" warning on first launch. Please close it first, then go to "System Settings" → "Privacy & Security" → click "Open Anyway", and you'll be able to open it normally afterwards.
Install via paru (Recommended)
paru -S cc-switch-bin
Download the latest CC-Switch-v{version}-Linux.deb package or CC-Switch-v{version}-Linux.AppImage from the Releases page.
~/.claude/skills/~/.claude/CLAUDE.md~/.codex/AGENTS.md~/.gemini/GEMINI.mdClaude Code
~/.claude/settings.json (or claude.json)env.ANTHROPIC_AUTH_TOKEN or env.ANTHROPIC_API_KEY~/.claude.json → mcpServersCodex
~/.codex/auth.json (required) + config.toml (optional)OPENAI_API_KEY in auth.json~/.codex/config.toml → [mcp_servers] tablesGemini
~/.gemini/.env (API key) + ~/.gemini/settings.json (auth mode)GEMINI_API_KEY or GOOGLE_GEMINI_API_KEY in .envGOOGLE_GEMINI_BASE_URL, GEMINI_MODEL, etc.~/.gemini/settings.json → mcpServers~/.gemini/.env, no need to restart Gemini CLICC Switch Storage (v3.8.0 New Architecture)
~/.cc-switch/cc-switch.db (SQLite, stores providers, MCP, Prompts, Skills)~/.cc-switch/settings.json (device-level settings)~/.cc-switch/backups/ (auto-rotate, keep 10)Note: First launch auto-imports existing Claude/Codex configs as default provider.
┌─────────────────────────────────────────────────────────────┐
│ Frontend (React + TS) │
│ ┌─────────────┐ ┌──────────────┐ ┌──────────────────┐ │
│ │ Components │ │ Hooks │ │ TanStack Query │ │
│ │ (UI) │──│ (Bus. Logic) │──│ (Cache/Sync) │ │
│ └─────────────┘ └──────────────┘ └──────────────────┘ │
└────────────────────────┬────────────────────────────────────┘
│ Tauri IPC
┌────────────────────────▼────────────────────────────────────┐
│ Backend (Tauri + Rust) │
│ ┌─────────────┐ ┌──────────────┐ ┌──────────────────┐ │
│ │ Commands │ │ Services │ │ Models/Config │ │
│ │ (API Layer) │──│ (Bus. Layer) │──│ (Data) │ │
│ └─────────────┘ └──────────────┘ └──────────────────┘ │
└─────────────────────────────────────────────────────────────┘
Core Design Patterns
~/.cc-switch/cc-switch.db (SQLite)Key Components
v3.6 Refactoring
# Install dependencies
pnpm install
# Dev mode (hot reload)
pnpm dev
# Type check
pnpm typecheck
# Format code
pnpm format
# Check code format
pnpm format:check
# Run frontend unit tests
pnpm test:unit
# Run tests in watch mode (recommended for development)
pnpm test:unit:watch
# Build application
pnpm build
# Build debug version
pnpm tauri build --debug
cd src-tauri
# Format Rust code
cargo fmt
# Run clippy checks
cargo clippy
# Run backend tests
cargo test
# Run specific tests
cargo test test_name
# Run tests with test-hooks feature
cargo test --features test-hooks
Frontend Testing:
Test Coverage:
useProviderActions - Provider operationsuseMcpActions - MCP managementuseSettings series - Settings managementuseImportExport - Import/exportRunning Tests:
# Run all tests
pnpm test:unit
# Watch mode (auto re-run)
pnpm test:unit:watch
# With coverage report
pnpm test:unit --coverage
Frontend: React 18 · TypeScript · Vite · TailwindCSS 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
├── src/ # Frontend (React + TypeScript)
│ ├── components/ # UI components (providers/settings/mcp/ui)
│ ├── 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)
│ └── 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
See CHANGELOG.md for version update details.
Releases retains v2.0.3 legacy Electron version
If you need legacy Electron code, you can pull the electron-legacy branch
Issues and suggestions are welcome!
Before submitting PRs, please ensure:
pnpm typecheckpnpm format:checkpnpm test:unitMIT © Jason Young
Please log in to share your review and rating for this MCP.
Explore related MCPs that share similar capabilities and solve comparable challenges
by headroomlabs-ai
Compress tool outputs, logs, files, RAG chunks, and conversation history before they reach the LLM, keeping answers identical while saving up to 95% of tokens for JSON payloads.
by modelcontextprotocol
A Model Context Protocol server for Git repository interaction and automation.
by zed-industries
A high‑performance, multiplayer code editor designed for speed and collaboration.
by modelcontextprotocol
Model Context Protocol Servers
by modelcontextprotocol
A Model Context Protocol server that provides time and timezone conversion capabilities.
by cline
An autonomous coding assistant that can create and edit files, execute terminal commands, and interact with a browser directly from your IDE, operating step‑by‑step with explicit user permission.
by upstash
Provides up-to-date, version‑specific library documentation and code examples directly inside LLM prompts, eliminating outdated information and hallucinated APIs.
by daytonaio
Provides a secure, elastic infrastructure that creates isolated sandboxes for running AI‑generated code with sub‑90 ms startup, unlimited persistence, and OCI/Docker compatibility.
by continuedev
Enables faster shipping of code by integrating continuous AI agents across IDEs, terminals, and CI pipelines, offering chat, edit, autocomplete, and customizable agent workflows.