docs/user-manual/en/2-providers/2.2-switch.md
In the provider list, click the "Enable" button on the target provider card.
| Status | Display | Description |
|---|---|---|
| Currently Active | Blue border + label | Current provider in the configuration file |
| Proxy Active | Green border | Provider actually in use during proxy mode |
| Normal | Default style | Inactive provider |
Quickly switch providers via the system tray without opening the main interface.
Starting from v3.13.0, the tray menu is refactored from a flat list into per-app submenus, with a dedicated submenu for each app:
| Submenu | Description |
|---|---|
| Claude | All Claude providers (including Codex OAuth reverse proxy) |
| Codex | All Codex providers |
| Gemini | All Gemini providers |
| OpenCode | All OpenCode providers |
| OpenClaw | All OpenClaw providers |
Benefits of the refactor:
Tip: The combination of background residency + Lightweight Mode + per-app submenus is especially suited for heavy users who frequently switch among multiple apps. See 1.5 Personalization → Lightweight Mode.
Takes effect immediately after switching, no restart needed.
Claude Code supports hot reload and automatically detects configuration file changes and reloads.
Requires restart after switching:
Takes effect immediately after switching, no restart needed.
Gemini CLI re-reads the .env file on each request.
When switching providers, CC Switch modifies the following files:
~/.claude/settings.json
Modified content:
{
"env": {
"ANTHROPIC_API_KEY": "new API Key",
"ANTHROPIC_BASE_URL": "new endpoint"
}
}
~/.codex/auth.json
~/.codex/config.toml (if additional configuration exists)
~/.gemini/.env
~/.gemini/settings.json
If switching fails, possible reasons:
Another program is using the configuration file.
Solution: Close the running CLI tool and try switching again.
No write permission to the configuration file.
Solution: Check the permission settings of the configuration directory.
The provider's JSON configuration has format errors.
Solution: Edit the provider, check and fix the JSON format.