codex-profiles
v0.2.0
Published
<h1 align="center">Codex Profiles</h1>
Readme
Overview
Codex Profiles helps you manage multiple Codex CLI logins on a single machine. It saves the current login and lets you switch in seconds, making it ideal for personal and team accounts across multiple organizations.
Install
[!IMPORTANT] Requires Codex CLI (with ChatGPT subscription or OpenAI API key).
[!TIP] Looking for a Teams promo? See details
NPM
npm install -g codex-profilesBun
bun install -g codex-profilesCargo
cargo install codex-profilesManual Install
Automatically detects your OS/architecture, downloads the correct binary, verifies checksums:
curl -fsSL https://raw.githubusercontent.com/midhunmonachan/codex-profiles/main/install.sh | bashUninstall
[!WARNING] Legacy script support is ending. Remove
cxand use this version instead.rm ~/.local/bin/cxIf you installed with a custom command name (
mycmd), remove that name instead:rm ~/.local/bin/mycmd
NPM
npm uninstall -g codex-profilesBun
bun uninstall -g codex-profilesCargo
cargo uninstall codex-profilesManual Uninstall
rm ~/.local/bin/codex-profilesUsage
[!TIP]
loadanddeleteare interactive unless you pass--label.
| Command | Description |
| --- | --- |
| codex-profiles save [--label <name>] | Save the current auth.json as a profile, optionally labeled. |
| codex-profiles load [--label <name>] | Load a profile from the picker without re-login (or by label). |
| codex-profiles list | List saved profiles. |
| codex-profiles status [--all] [--show-errors] | Show usage for the current profile, or all saved profiles (--all). |
| codex-profiles delete [--yes] [--label <name>] | Delete profiles from the picker (or by label). |
[!WARNING] Deleting a profile does not log you out. It only removes the saved profile file.
Quick example:
$ codex-profiles save --label team
Saved profile [email protected] (Team)
$ codex-profiles load --label team
Loaded profile [email protected] (Team)[!NOTE] Files are stored under
~/.codex/profiles/:| File | Purpose | | --- | --- | |
{email-plan}.json| Saved profiles. | |profiles.json| Profile metadata (labels and identity fields for saved profiles). | |update.json| Cached updater state (latest checked version metadata). | |profiles.lock| Lock file for safe updates. |
FAQ
No. Everything stays on your machine. This tool only copies files locally.
A profile is a saved copy of your
~/.codex/auth.json. Each profile represents one Codex login.
Log in with Codex CLI, then run
codex-profiles save --label <name>. To switch later, runcodex-profiles load --label <name>.
You will be prompted to save the current profile, continue without saving, or cancel.
Yes. Save each account with a label (for example,
personalandwork) and switch with the label.
After installing, verify it works:
# Check version codex-profiles --help # Verify Codex CLI is detected codex-profiles list # Should show: "No profiles saved yet" (not an error about missing Codex CLI)If you see "Codex CLI not found", install it from here.
Yes! Contributions are welcome. For non-trivial changes (new features, significant refactors), please open an issue or discussion first to discuss your idea and avoid wasted effort.
For minor changes (bug fixes, typos, docs), feel free to submit a PR directly.
See CONTRIBUTING.md for full guidelines.
