Claude Code and Codex account switchers, compared
Account switchers come in two kinds. Swappers write the account you pick into the login Claude Code or Codex already reads, so one account is live per tool and your history stays in one place. Directory tools give every account its own CLAUDE_CONFIG_DIR or CODEX_HOME, so accounts run side by side, but each keeps its own history. Pick by whether you need two accounts running at once. None of them pools usage limits.
Search for a Claude Code or Codex account switcher and you get a page of GitHub repositories with similar READMEs. They differ in three places: what they overwrite, whether two accounts can run at the same time, and what happens at a usage limit. We read each tool’s own README, docs and source on November 3, 2026. Crowsnest is ours; it’s in the table and marked as such.
Two ways to switch an account
Swap the login in place. The tool keeps a copy of each account’s login and writes the one you pick into the place the client already reads: the Claude Code-credentials Keychain item or ~/.claude/.credentials.json for Claude Code, and ~/.codex/auth.json for Codex. Everything else stays shared, so claude --resume and codex resume still list every past session. The price is one live account per tool, and most of these tools ask you to restart or close the client after a switch.
Codex adds a trap. It refreshes tokens while you work, so a stored copy of auth.json can go stale; our multiple Codex accounts guide explains why. A careful swapper saves the latest tokens before switching away, which is what Codex Switcher’s README describes.
Give each account its own directory. The tool points CLAUDE_CONFIG_DIR or CODEX_HOME at a folder per account. Anthropic documents this method for multiple accounts, OpenAI documents CODEX_HOME as the directory that holds Codex’s login and state, and it’s what lets two terminals run two accounts at once. The price is split history: each directory keeps its own sessions, so claude --resume under one account can’t see the other’s. Our guides walk through it by hand for Claude Code and Codex.
Rotate through a proxy. CCS’s pool mode puts a local proxy in front of the requests and moves to the next account when one is rate limited. It’s the only approach here that changes accounts in the middle of a task. CCS’s own docs say each hop recomputes the context and an error mid-stream doesn’t re-route.
The switchers, compared
None of the nine third-party tools requires a purchase to install, and all publish their source. Not every repository declares a standard open-source licence, so check the licence before you modify or redistribute one. The order is not a ranking.
| Tool | How it switches | Two accounts at once | At a usage limit |
|---|---|---|---|
| claude-swap Claude Code · Python CLI and TUI, optional macOS menu bar | Swaps the active login (the Keychain on macOS); cswap run uses a per-account CLAUDE_CONFIG_DIR | Yes, with cswap run | cswap auto moves to the account with the most left at a threshold, 90% by default |
| CCS (Claude Codex Switch) Claude Code, Codex, Gemini, Copilot and API providers · Node CLI, web dashboard, macOS bar app | Native profiles get their own CLAUDE_CONFIG_DIR or CODEX_HOME; optional local proxy pool | Yes, with native profiles | Pool mode only: the local proxy moves to the next account |
| aisw Claude Code, Codex, Gemini CLI, Antigravity · Rust CLI, desktop app, editor extension | Writes the chosen login into place; isolated mode sets CLAUDE_CONFIG_DIR or CODEX_HOME | No, one live account per tool | No automatic switch |
| caam Claude Code, Codex, Gemini and others · Go CLI | Vault mode swaps login files; isolated mode gives each profile its own HOME or CODEX_HOME | Yes, in isolated mode | caam run fails over on a rate limit |
| Claude/Codex Account Switcher Claude Code, Codex CLI · macOS menu-bar app, unsigned | Restores the saved login into Claude Code’s credential slot and ~/.codex/auth.json | No | Optional per provider at 100%, off by default |
| codex-auth Codex · npm CLI and TUI | Copies the chosen snapshot to ~/.codex/auth.json | No | Not built in |
| Codex Switcher Codex · Desktop and tray app | Saves the current tokens, then writes the chosen account to ~/.codex/auth.json | No | No |
| codex-account-switcher Codex · Python CLI, macOS and Linux | Replaces $CODEX_HOME/auth.json atomically; file credential store only | No | No |
| cc-account-switcher Claude Code · Bash script | Backs up and restores the login; the repository is archived | No | No |
| Crowsnest (ours) Claude Code, Codex · macOS app, paid once (Pro and Premium) | Its own CLAUDE_CONFIG_DIR or CODEX_HOME per account; never writes a credential | Yes | Offers to continue on another account as a new, attributed session; automatic only if you turn it on |
Not in the table: cc-switch switches API providers rather than Claude subscription accounts, and several smaller Codex switchers we didn’t review. Versions move weekly, so check a tool’s README before you install it.
What each README warns you about
- claude-swap. Don’t run /logout before adding an account; the README warns current Claude Code may revoke the refresh token. The first message on a new account may use extra usage while its conversation cache rebuilds.
- CCS. ccs codex runs Claude Code on Codex models through the proxy, not the Codex CLI; native Codex profiles are ccsx. Pool accounts need a fresh OAuth login, and the docs warn that one Claude account active in two clients at once raises account risk.
- aisw. Start a new agent session after switching; it keeps one live state per tool. It can switch all four supported CLIs together.
- caam. The README says it can’t refresh Claude tokens and calls Claude’s usage API undocumented. Its licence is MIT with a rider that grants no rights to OpenAI or Anthropic.
- Claude/Codex Account Switcher. Codex keyring storage is detected but not switched, so Codex has to use file credentials. macOS may block the app because it isn’t signed.
- codex-auth. Restart the client after a switch. The README warns the approach “may be detected by OpenAI and could violate their terms of service”.
- Codex Switcher. Close Codex before switching; macOS builds aren’t notarized. Its README now opens by suggesting you may not need it, citing a post that account switching is coming to Codex desktop.
- codex-account-switcher. Switching is blocked while a Codex client is running, and all accounts share projects and history in one CODEX_HOME.
- cc-account-switcher. Archived since mid-2025. It needs Claude Code closed during a switch.
Which kind fits your workflow
- One task at a time, several accounts. A swapper. You keep one history, and a restart is cheap.
- Personal and work running side by side. A directory tool, or the CLAUDE_CONFIG_DIR and CODEX_HOME method by hand. Expect separate histories.
- Usage visible before you start. claude-swap, caam, Codex Switcher, codex-auth and Claude/Codex Account Switcher show limits; aisw and cc-account-switcher don’t.
- The Codex desktop app. codex-auth covers it. Check whether OpenAI’s own switcher has reached desktop before you add a tool.
Automatic switching and provider terms
Every provider meters each account on its own plan. No switcher merges limits, and none of these tools claims to. What differs is how hard they lean on rotation.
Holding separate accounts you’re entitled to, a personal plan and one from an employer, is ordinary. Rotating accounts to get around one plan’s limit is what providers restrict. OpenAI’s terms prohibit circumventing rate limits, and codex-auth’s README warns about suspension. Read each provider’s current terms before you turn automatic switching on.
Where Crowsnest fits
Crowsnest is ours, so weigh this section accordingly. It isn’t a switcher in the sense above. It’s a Mac workspace for Claude Code and Codex that uses the directory method for both providers and never writes a credential. Adding an account creates its own CLAUDE_CONFIG_DIR or CODEX_HOME and gives you the provider’s login command to run in your own terminal.
Accounts side by side
Each conversation runs as its own process under its account’s directory, so two accounts work at once.
One Claude Code history
Sessions from every registered Claude Code account are searchable in one gallery, each labelled with the account that wrote it.
Limits per account
Five-hour and weekly windows are read for each Claude Code and Codex account and shown separately, never added together.
A new session, not a swap
At a limit, Crowsnest offers to continue on another signed-in account as a new session with a briefing of at most 8,000 characters. The original stays as it was.
Automatic continuation is off until you turn it on, and even then it proceeds only when exactly one other account is signed in. Crowsnest never moves a running conversation on a usage threshold; the optional Best allowance setting only chooses the account when a new conversation starts.
The gaps: Codex history in the gallery comes from the default ~/.codex only, so Codex threads aren’t labelled by account. It runs on macOS 13 or newer on Apple silicon, and multiple accounts are a Pro and Premium feature, paid once. If you want a free command-line tool, one of the switchers above is the better fit.
Questions behind the search
Is there an official Claude Code account switcher?
No. Claude Code has no profile switcher; signing in again with /login changes the account for that configuration directory. The method Anthropic documents for staying signed in to several accounts is one CLAUDE_CONFIG_DIR per account, started with its own command. Third-party switchers either automate that or swap the stored login in place.
Is there an official Codex account switcher?
Not for the Codex CLI. OpenAI lists account switching for ChatGPT web, iOS and Android; its availability list does not include Codex desktop. For the CLI, the documented lever is CODEX_HOME: give each account its own home and sign in once inside each.
Which account switcher lets me run two accounts at the same time?
One that gives each account its own directory: claude-swap with cswap run, CCS native profiles, caam in isolated mode, or Crowsnest. Tools that write the chosen login into the default location keep one account live per tool, so a second terminal sees the same account as the first.
Do I need to restart Claude Code or Codex after switching accounts?
With most in-place switchers, yes. aisw, codex-auth, Codex Switcher, codex-account-switcher and cc-account-switcher all tell you to restart or close the client. claude-swap says usually not, though on macOS the change waits for Claude Code’s Keychain cache of about 30 seconds. Directory-based tools never change a running process; you start the other account’s command instead.
Can an account switcher combine my usage limits?
No. Each account is metered on its own plan, and no switcher merges two allowances. Automatic switching moves new work to another account when one reaches a threshold; it does not create a larger shared limit.
Is automatic account switching against the terms?
Holding separate accounts you are entitled to, such as a personal plan and one your employer provides, is ordinary. Rotating accounts to get around one plan’s limit is what providers restrict: OpenAI’s terms prohibit circumventing rate limits, and codex-auth’s own README warns its approach could violate OpenAI’s terms. Read each provider’s current terms before you turn automatic switching on.
Third-party tools were checked against their own READMEs, documentation and source on November 3, 2026. Crowsnest behaviour was checked against the released 0.3.16 application source on the same date. These projects change quickly; their own repositories are authoritative.