Skip to content

binoyPeries/ccswitch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ccswitch

License CI Go Report Card

Run multiple Claude Code accounts on the same machine — work, personal, side project, client work — and switch between them in one command. Each account keeps its own credentials, history, plugins, and settings.

Pick a profile, run ccswitch use, and you're signed in as that account in seconds. Your other accounts stay exactly where you left them.

Why it exists

  • Claude Code keeps everything in one directory (~/.claude): your login, your settings, your plugins, your history.
  • If you use more than one Claude.ai subscription (work + personal, two clients, etc.), the only built-in option is /logout → browser → /login, every single time. Your context resets each switch.
  • Shell aliases get you partway there, but they don't handle the edge cases (the default profile, orphaned credentials, env-var auth precedence).
  • ccswitch encodes the right conventions so you stop thinking about it.

What you get

  • Fast: a single Go binary, no runtime dependencies, no daemon. ccswitch use execs claude directly.
  • 🔒 Isolated: each profile has its own credentials, history, plugins, MCP servers, memory. Switching is total.
  • 🪶 Light touch: ccswitch never reads your credentials. It just sets CLAUDE_CONFIG_DIR and runs claude — same as you would manually.
  • 🧱 Safe: your existing ~/.claude setup is left alone, available as a built-in default profile. No migration required.
  • 🖥️ Cross-platform: macOS, Linux, Windows.

Install

Download the latest release for your platform from the Releases page.

Set the version you want (see Releases):

VERSION=vX.Y.Z  # e.g. v0.1.0

macOS (Apple Silicon):

curl -fL "https://github.com/binoyPeries/ccswitch/releases/download/${VERSION}/ccswitch_darwin_arm64.tar.gz" \
  | tar -xz ccswitch && sudo mv ccswitch /usr/local/bin/

macOS (Intel):

curl -fL "https://github.com/binoyPeries/ccswitch/releases/download/${VERSION}/ccswitch_darwin_amd64.tar.gz" \
  | tar -xz ccswitch && sudo mv ccswitch /usr/local/bin/

Linux (x86_64):

curl -fL "https://github.com/binoyPeries/ccswitch/releases/download/${VERSION}/ccswitch_linux_amd64.tar.gz" \
  | tar -xz ccswitch && sudo mv ccswitch /usr/local/bin/

Linux (arm64):

curl -fL "https://github.com/binoyPeries/ccswitch/releases/download/${VERSION}/ccswitch_linux_arm64.tar.gz" \
  | tar -xz ccswitch && sudo mv ccswitch /usr/local/bin/

Windows (x86_64): grab ccswitch_windows_amd64.zip from the Releases page, extract it, and drop ccswitch.exe somewhere on your PATH.

Verify the install:

ccswitch --version

Quick start

Set up a profile for your work account:

ccswitch add work
ccswitch use work
> /login        # signs into your work Claude.ai account, once
> /exit

From now on, this is all you need:

ccswitch use work

Your existing ~/.claude setup is untouched — it's available as a built-in profile called default:

ccswitch use default    # plain claude, exactly like before ccswitch existed

Add as many profiles as you like and switch with ccswitch use <name>.

Commands

Command What it does
ccswitch list Show all profiles (--json for machine output).
ccswitch add <name> Create a new profile. --launch to drop straight into claude for the first /login.
ccswitch use <name> Launch claude with that profile. -- forwards args to claude.
ccswitch rm <name> Remove a profile (prompts to confirm).
ccswitch --version Show version + commit.
ccswitch --help Standard help, also works per subcommand.

Names must be 1–32 chars: lowercase letters, digits, -, or _. default is reserved.

Contributing

git clone https://github.com/binoyPeries/ccswitch
cd ccswitch
make check    # vet + tests + lint (same as CI)
make build    # produces ./bin/ccswitch

CI runs on macOS, Linux, and Windows. Please make sure make check passes before opening a PR.

License

MIT

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors