# Codex account switchers compared (2026)

> Codex Switcher, swapdex, cxs, codex-multi-auth and Shuriken compared: when each Codex account switch lands, what happens to your open chat, which devices.

Source: https://shuriken.sh/compare/codex-account-switchers

Codex Switcher and cxs change the account your next Codex launch uses. swapdex and codex-multi-auth run Codex through a local proxy that can send the next request on another account. Shuriken switches the Codex chats it runs by itself, at the end of the turn, on every device you've linked.

By Shuriken Updated 27 October 2026 9 min read

**Contents**

We make Shuriken. We tried to be fair; corrections welcome at office@shuriken.sh.

## Quick answer #

A Codex account switcher changes which ChatGPT sign-in Codex uses without codex logout. Codex Switcher (a desktop app) and cxs (a CLI) change it for the next time Codex starts. swapdex and codex-multi-auth run Codex through a local proxy, so the next request of an open conversation can go out on another account. Shuriken switches the Codex chats it runs by itself, when the turn ends, on every device you've linked.

The five differ on when the switch lands, what happens to the chat you have open, whether your history follows you, and how many machines are covered.

CC Switch, a desktop app built to swap API providers, can also hold several ChatGPT sign-ins on its OpenAI Official card and move between them in one click, by hand. We cover it in [CC Switch alternatives](https://shuriken.sh/compare/cc-switch-alternative).

## At a glance #

We read each tool's README and docs on 24 October 2026 for its row. Shuriken's row comes from our code.

| | How it switches | When the switch lands | Your open chat | Chat history | Devices | Price |
| --- | --- | --- | --- | --- | --- | --- |
| Codex Switcher | By hand, from its window or the tray | The next time Codex starts | Close Codex first; the app offers to force-close a running session | One ~/.codex , so sessions stay where they were | One machine; a source build can serve its dashboard to a browser on your network | Free; source on GitHub, no licence file |
| swapdex | By hand ( swapdex serve ), or by itself after swapdex auto on (off by default) | The next request through its proxy | Stays open; a request already running finishes on its account | Session stores linked across accounts | One machine; export copies the setup, never a login | Free, MIT |
| cxs | By hand ( cxs run , cxs switch ) | The next cxs run | Keeps the account it started with | Session folders linked, so /resume sees every account's | One machine (WSL, Ubuntu, Linux) | Free, MIT |
| codex-multi-auth | By itself (rotation on by default), or pinned with switch | The next request through its wrapper | Stays open, if started through its wrapper; plain codex is never touched | Codex's own ~/.codex | One machine | Free, MIT |
| Shuriken | By itself at your switch point (99% by default, 50–100%) or when OpenAI reports a limit, or by hand | When the Codex turn ends; at once if OpenAI stops the turn with a limit | Same chat, with a "Switched to …" card | Every account's sessions linked to ~/.codex | Every computer and server you've linked, at once | Free plan (2 sources); Pro €49 a month |

## When the switch lands, and what happens to the chat #

Codex keeps one sign-in at a time: a plaintext auth.json under CODEX_HOME (~/.codex unless you set it) or your system's credential store, per [OpenAI's authentication docs](https://learn.chatgpt.com/docs/auth). A running Codex process holds the credential it started with. So a tool can switch in one of three places.

At launch. Codex Switcher writes another account into ~/.codex/auth.json, and cxs copies the chosen account's auth.json there before it starts plain codex. Nothing reaches a session that's already running. Codex Switcher asks you to close Codex before it switches; its README explains that ChatGPT can replace a refresh token after using it, and the older one may then stop working. You pick the chat up again with codex resume.

Per request. swapdex and codex-multi-auth put a loopback proxy between Codex and OpenAI. Codex keeps running, and the proxy decides which account's token goes on each request. In swapdex, swapdex serve personal --tool codex from a second terminal hands the open conversation's next request to personal. In codex-multi-auth, a switch, unpin or best reaches the next request "even mid-conversation", in its docs' words. Either way, only sessions started through their shim or wrapper are covered.

At the end of the turn. Shuriken runs the Codex chat itself. When the account in use reaches your switch point, the turn that crossed it finishes on that account and the next turn starts on the new one, in the same chat. If OpenAI cuts the turn off with a limit first, the chat moves right then. That's later than a per-request proxy, and we'd rather say so: for Claude Code, Shuriken does move the next request mid-turn, but Codex chats move between turns. [Codex with more than one ChatGPT account](https://shuriken.sh/blog/codex-multiple-chatgpt-accounts) has the timeline and why.

## What each tool does well #

### Codex Switcher #

A Tauri desktop app for macOS, Windows and Linux (.dmg, .exe or .msi, .deb, AppImage, .rpm). Every account's 5-hour and weekly use, reset times, credit balance and subscription expiry sit on its card, and the tray icon can show the session percentage. It can import existing auth.json files and mask account names, and a build from source can serve its dashboard to a browser over your network. It also has warm-ups: one minimal request that starts an account's usage window, by hand, after each reset or at times you set. Its macOS builds aren't notarised yet, and its README carries a clear disclaimer that it's for people who personally own several accounts.

### swapdex #

swapdex is written in Rust and handles Claude Code as well as Codex. Every account keeps a permanent folder of its own, CODEX_HOME for Codex and CLAUDE_CONFIG_DIR for Claude Code. A switch therefore copies no token and can't log the other account out.

- Installs with Homebrew, npm or cargo, on macOS, Linux or WSL.
- swapdex ui opens a terminal dashboard, with live quota from OpenAI's and Anthropic's usage endpoints.
- /swap in Claude Code, and a matching skill in Codex, switch without leaving the chat.
- swapdex whereis finds which account holds a conversation.
- Gemini CLI and Antigravity are covered too, by swapping saved logins rather than through the proxy.

Its README calls the local usage view "a hint, not a quota-dodging auto-rotator". The proxy's automatic handover is a separate setting: swapdex auto on lets it pass a spent session to another account, with a strategy (the account with the most room, or the current one until it's spent) and an optional threshold. Until you set it, it stays off.

### cxs #

cxs is a small TypeScript CLI for WSL, Ubuntu and other Linux shells. Accounts live in ~/.cxs/accounts/<name>. cxs run work syncs the work login into ~/.codex and then starts plain codex, which is why your own config.toml and custom providers keep working.

- Every account's sessions are linked into one shared folder, and codex resume and /resume list them all.
- cxs usage reads the 5-hour and weekly windows.
- It installs from source, with npm pack.
- Its README rules out automatic best-account picking for this first version.

A sister project, CXS Tray, does the same switch from the macOS menu bar for the Codex desktop app. It quits Codex, syncs, and opens it again.

### codex-multi-auth #

codex-multi-auth keeps a pool of ChatGPT sign-ins for the official Codex CLI and has 31 subcommands. You start Codex as codex-multi-auth-codex (or mcodex). A loopback proxy then picks the healthiest account for each request and fails over across the pool on a rate limit. Rotation is on until you run codex-multi-auth rotation disable. Plain codex stays exactly as OpenAI ships it.

On top of that it has per-project pools, health checks, quota forecasts, budget guards, a local web dashboard and an optional bind for the Codex desktop app.

Read its terms note before you rely on it. The README says it is "intended for personal development use", that "you are responsible for your own usage and policy compliance", and that "for production or commercial workloads you should use the OpenAI Platform API".

## Where Shuriken is different #

### It switches without you #

We call it hot swapping: Shuriken moves your chats to another of your accounts or sources when one nears its limit. It watches every account's use and moves your Codex chats at your switch point, 99% by default and adjustable from 50% to 100%, or the moment OpenAI reports a limit. It goes to the account with the most room. A "Switched to …" card in the chat says which account took over and why. Switch now does the same by hand, and Spread the work (our Distribute mode) moves chats to the account with the most left every 15 to 60 minutes. The details are in [source switching](https://shuriken.sh/features/source-switching).

### On every device at once #

The four tools above keep their state on one machine. In Shuriken, your choice of account and every automatic switch reach every computer and server you've linked at the same moment, so a laptop and a home server never disagree about which ChatGPT account is in use. You can follow the chats from the web app on your phone.

### History in one place #

Every ChatGPT account you add gets its own CODEX_HOME. Shuriken links these back to your main ~/.codex:

- the sessions and archived_sessions folders
- config.toml and AGENTS.md
- your prompts and skills

A switch never splits your history, and every account sees the same setup.

### What you give up #

Shuriken switches the Codex chats it runs. A codex you start in your own terminal keeps whatever ~/.codex is signed in to, and Shuriken doesn't touch the Codex desktop app. It's a full desktop app with its own way of running chats (each chat on its own branch if you want), not a one-line install. And as said above, a Codex chat changes account between turns, not between requests. If you live in the Codex CLI and only want your terminal sessions to change accounts, swapdex or codex-multi-auth is lighter. How Shuriken compares with OpenAI's own app is in [Shuriken vs the Codex app](https://shuriken.sh/compare/codex-app).

Shuriken moves a running chat to another of your own accounts when one reaches its limit, on every device.

[Download](https://shuriken.sh/download)

## Pricing #

Codex Switcher, swapdex, cxs and codex-multi-auth are free. swapdex, cxs and codex-multi-auth are MIT licensed; Codex Switcher's repository names no licence.

Shuriken's Free plan holds two sources (a source is an account or key you add) and two linked devices, with no card. Pro is €49 a month or €490 a year and holds as many sources as you add. Shuriken never bills model usage: your chats run on your own plans and keys.

## Using them together #

They can sit side by side. A CLI switcher changes which account your terminal codex uses; Shuriken switches the Codex chats it runs, from its own folders. One warning from both Codex Switcher's and swapdex's READMEs applies to any pair of tools: ChatGPT replaces a refresh token when it's used, so two programs holding a copy of the same login can retire each other's. Sign each account in to each tool on its own, rather than copying auth.json between them.

## A note on the rules #

OpenAI's [Terms of Use](https://openai.com/policies/terms-of-use/) say: "You may not share your account credentials or make your account available to anyone else and are responsible for all activities that occur under your account." They also forbid circumventing "any rate limits or restrictions", and they don't say whether switching between your own paid accounts counts. That open question applies to every tool on this page, ours included. Use only accounts you own and are entitled to use, such as a work seat and a personal plan, and never buy accounts to get around limits. We set out what OpenAI's terms and help center say in [can you use two ChatGPT accounts with Codex?](https://shuriken.sh/guides/chatgpt-multiple-accounts-codex-rules).

## Which Codex account switcher should you use? #

- One machine, a desktop app, switching by hand: Codex Switcher.
- The Codex CLI, with the open conversation changing account on its next request: swapdex, or codex-multi-auth if you want a pool that rotates by default.
- Linux or WSL, a small tool, by hand: cxs.
- Codex chats that move by themselves, several machines, and Claude Code, Gemini and other agents in the same place: Shuriken.

To do it with no tool at all, with a CODEX_HOME per account, see [how to switch accounts in Codex CLI without logging out](https://shuriken.sh/guides/codex-cli-switch-account). To try automatic switching on your own accounts, [download Shuriken](https://shuriken.sh/download).

Try the free tool: [Codex limit reset tracker](https://shuriken.sh/tools/limit-resets/codex)

Share

[X](https://x.com/intent/post?url=https%3A%2F%2Fshuriken.sh%2Fcompare%2Fcodex-account-switchers&text=Codex%20account%20switchers%20compared%20(2026))[LinkedIn](https://www.linkedin.com/sharing/share-offsite/?url=https%3A%2F%2Fshuriken.sh%2Fcompare%2Fcodex-account-switchers)[Hacker News](https://news.ycombinator.com/submitlink?u=https%3A%2F%2Fshuriken.sh%2Fcompare%2Fcodex-account-switchers&t=Codex%20account%20switchers%20compared%20(2026))[Reddit](https://www.reddit.com/submit?url=https%3A%2F%2Fshuriken.sh%2Fcompare%2Fcodex-account-switchers&title=Codex%20account%20switchers%20compared%20(2026))[E-mail](mailto:?subject=Codex%20account%20switchers%20compared%20(2026)&body=https%3A%2F%2Fshuriken.sh%2Fcompare%2Fcodex-account-switchers)

## Sources

- [Codex Switcher (Lampese/codex-switcher) on GitHub, README, release 0.2.20](https://github.com/Lampese/codex-switcher) (accessed 24 October 2026)
- [swapdex (youdie006/swapdex) on GitHub, README, release 0.167.26](https://github.com/youdie006/swapdex) (accessed 24 October 2026)
- [swapdex command reference (docs/COMMANDS.md)](https://github.com/youdie006/swapdex/blob/main/docs/COMMANDS.md) (accessed 24 October 2026)
- [swapdex source: src/settings.rs (automatic handover off unless set)](https://github.com/youdie006/swapdex/blob/main/src/settings.rs) (accessed 24 October 2026)
- [cxs (mincia1110/codex-switcher) on GitHub, README](https://github.com/mincia1110/codex-switcher) (accessed 24 October 2026)
- [CXS Tray (mincia1110/cxs-tray) on GitHub, README](https://github.com/mincia1110/cxs-tray) (accessed 24 October 2026)
- [codex-multi-auth (ndycode/codex-multi-auth) on GitHub, README, release 2.24.0](https://github.com/ndycode/codex-multi-auth) (accessed 24 October 2026)
- [codex-multi-auth command reference (docs/reference/commands.md)](https://github.com/ndycode/codex-multi-auth/blob/main/docs/reference/commands.md) (accessed 24 October 2026)
- [Swapdex for the Codex desktop app (ChloeVPin/Swapdex) on GitHub, README](https://github.com/ChloeVPin/Swapdex) (accessed 24 October 2026)
- [OpenAI: Codex authentication](https://learn.chatgpt.com/docs/auth) (accessed 24 October 2026)
- [OpenAI Terms of Use (effective 1 January 2026)](https://openai.com/policies/terms-of-use/) (accessed 24 October 2026)

## Frequently asked questions

**Can Codex switch accounts without logging out?**

Not by itself. Codex keeps one sign-in, in auth.json under CODEX_HOME (~/.codex by default) or in your system's credential store. A home folder per account, started with CODEX_HOME, or one of the tools on this page switches without codex logout.

**Which Codex account switcher keeps my open chat?**

swapdex and codex-multi-auth send Codex's requests through a local proxy, so a change reaches the open conversation's next request. Shuriken moves a Codex chat when its turn ends, or at once if OpenAI stops the turn with a limit. Codex Switcher and cxs apply to the next time Codex starts.

**Is swapdex the same as the Swapdex add-on for the Codex app?**

No. youdie006/swapdex is a Rust CLI for Claude Code, Codex, Gemini CLI and Antigravity. ChloeVPin/Swapdex is a separate add-on for the Codex desktop app that restarts Codex under the account you pick, and doesn't work with the Codex CLI.

**Do I lose my Codex history when I switch accounts?**

Codex stores sessions under CODEX_HOME, so a folder per account splits them. cxs and swapdex link the session folders together, Codex Switcher keeps everything in ~/.codex, and Shuriken links every account's sessions folder to ~/.codex.

**Is it allowed to use several ChatGPT accounts with Codex?**

OpenAI's Terms of Use say you may not share your account credentials or make your account available to anyone else, and forbid circumventing rate limits. Use only accounts you own and are entitled to use, and never buy accounts to get around limits.

Source switching

One account runs dry. The next one takes over.

Add the Claude, Codex and Gemini accounts you own. At your switch point, your chats move to another of them and keep going.

[Download](https://shuriken.sh/download)

[Other platforms](https://shuriken.sh/download#main)

## Keep reading

- [Claude account switchers compared (2026): Comparison 27 Oct 2026 6 min read claude-swap, ccswitch, clauth, Orca and Shuriken compared: when each switches Claude Code accounts, what happens to your chat, and which devices it covers.](https://shuriken.sh/compare/claude-account-switchers)
- [Hot swapping: chats that move when an account runs out: Story 27 Oct 2026 4 min read Hot swapping AI accounts, the way Shuriken does it: your running chats move to another of your accounts when one nears its limit. What happens at 99%.](https://shuriken.sh/blog/hot-swapping-accounts)
- [How Shuriken picks the next account: Story 27 Oct 2026 5 min read At your switch point (99% by default) or a limit, Shuriken moves your chats to the source with the most room. Expiring capacity goes first, API keys last.](https://shuriken.sh/blog/how-switching-picks-the-next-account)
- [Every plan and key you own, working as one: Story 27 Oct 2026 4 min read Add your Claude, ChatGPT, Gemini and other plans and API keys to Shuriken as sources. When one runs out, your chats move to the next.](https://shuriken.sh/blog/what-is-a-source)
- [Codex usage limits explained (2026): Guide 27 Oct 2026 5 min read How Codex limits work on ChatGPT Plus and Pro: the 5-hour and weekly windows, the 2026 changes, checking yours with /status, and using several accounts.](https://shuriken.sh/guides/codex-usage-limits)
- [We were tired of logging in and out of Claude: Story 27 Oct 2026 3 min read Limit reached, /logout, /login, paste the context back. We did it so often we built Shuriken: chats move to an account with room by themselves.](https://shuriken.sh/blog/why-we-built-shuriken)
- [The 5-hour clock starts when you do. So we start it.: Story 27 Oct 2026 4 min read Claude's 5-hour window only starts when you use an account, so an idle one wastes time. Shuriken starts its clock with one tiny background request.](https://shuriken.sh/blog/the-5-hour-clock-starts-when-you-do)

## Free tools

- [Claude limit reset tracker](https://shuriken.sh/tools/limit-resets/claude)
- [Codex limit reset tracker](https://shuriken.sh/tools/limit-resets/codex)
