Skip to content

⬇️ Download ​

English | 简体中文

Installers for macOS / Windows / Linux are published on GitHub Releases:

👉 Latest release — github.com/leochan007/cc-mode-switcher/releases/latest ​

A release goes public only after all three OS builds have uploaded successfully, so every published release always contains the complete artifact set.

Pick your file ​

OSFileNotes
macOS (Apple Silicon).dmgarm64 build — M1/M2/M3/M4 Macs. macOS 12+
Windows 10/11.exeNSIS installer (64-bit)
Linux.AppImagex86-64, runs in place — no install

Older versions: browse all releases.

Install notes ​

macOS ​

  1. Open the .dmg and drag CC Mode Switcher into Applications.

  2. The app is not code-signed (no Apple Developer certificate), so Gatekeeper blocks the first launch: right-click the app → Open → Open (once — macOS remembers the choice afterwards).

  3. "is damaged and can't be opened" error? Some macOS versions flag the unsigned .dmg itself as damaged. Clear the quarantine attribute first, then re-open:

    Run this BEFORE double-clicking the .dmg

    bash
    xattr -cr /Users/xxx/Downloads/CC-Mode-Switcher-x.x.x-arm64.dmg

    Replace xxx with your username and x.x.x with the version you downloaded. After this, double-click the .dmg again and proceed with step 1.

Windows ​

  1. Run the .exe and follow the NSIS wizard.
  2. Unsigned apps trip SmartScreen on first run: More info → Run anyway.

Linux ​

bash
chmod +x 'CC Mode Switcher-*.AppImage'
./'CC Mode Switcher-*.AppImage'

If it fails to start, install libfuse2 (required by AppImage): sudo apt install libfuse2.

Usage tips ​

A handful of post-install pitfalls we keep seeing in tickets — read these once, you'll save yourself an afternoon:

  • First-launch slowness on macOS / Windows. The OS verifies the app bundle on every cold start. Allow 5–15 s for the splash, then the Switcher tab appears. Subsequent launches are instant.
  • "Open in Terminal" opens nothing on Windows / Linux. That button is macOS-only — it drives Terminal.app / iTerm via AppleScript. On other OSes the app still works fully, you just trigger sessions through the toolbar ▶.
  • Models tab → 📡 test reports "unreachable" but the API is up. Make sure your proxy / corporate VPN allows HTTPS to the provider's base URL. Status 401/404 from the GET is treated as reachable (DNS + TLS are fine).
  • Role alias (cc-plan / cc-worker) not found in the terminal tab. Run ▶ once from the toolbar to regenerate ~/.cc-mode-switcher/.launch-cache/launch.sh, then open a fresh tab. Old tabs keep the binding they were created with.
  • Edited a role but the change doesn't show up in an existing session. Parameters are snapshotted at session creation. Open a new tab (▶ or Cmd+N / Cmd+T) to pick up the new binding.
  • Want a clean slate. ⚙️ Settings → Reset Roles wipes roles.yaml to the shipped defaults (your prompt files and models.yaml are preserved).
  • Lost your launch.sh? Delete ~/.cc-mode-switcher/.launch-cache/ and click ▶ once — the app regenerates it on the fly.

What works where ​

The full UI — model management, mode binding, settings — works on every OS. "Open in Terminal" is macOS-only for now (it drives Terminal.app / iTerm via AppleScript and .command files).


New here? Start with 00 · Introduction — what the app does and the ideas behind it — then 01 · Quick Start for first-time setup in five steps.