1 unstable release
Uses new Rust 2024
| 0.1.0 | Jan 28, 2026 |
|---|
#472 in Authentication
215KB
6K
SLoC
Codex Profiles
Manage multiple Codex CLI profiles and switch between them instantly.
Overview • Install • Uninstall • Usage • FAQ
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-profiles
Bun
bun install -g codex-profiles
Manual Install
Automatically detects your OS/architecture, downloads the correct binary, verifies checksums:
curl -fsSL https://raw.githubusercontent.com/midhunmonachan/codex-profiles/main/install.sh | bash
Uninstall
[!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-profiles
Bun
bun uninstall -g codex-profiles
Manual Uninstall
rm ~/.local/bin/codex-profiles
Usage
[!TIP] Commands are 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 profiles ordered by last used. |
codex-profiles status [--all] [--label <name>] |
Show usage for the current profile, all profiles, or a specific label. |
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 mail@company.com (Team)
$ codex-profiles load --label team
Loaded profile mail@company.com (Team)
[!NOTE] Files are stored under
~/.codex/profiles/:
File Purpose {email-plan}.jsonSaved profiles. profiles.jsonProfile metadata (labels, last-used, active). profiles.lockLock file for safe updates.
FAQ
Is my auth file uploaded anywhere?
No. Everything stays on your machine. This tool only copies files locally.
What is a “profile” in this tool?
A profile is a saved copy of your
~/.codex/auth.json. Each profile represents one Codex login.
How do I save and switch between accounts?
Log in with Codex CLI, then run
codex-profiles save --label <name>. To switch later, runcodex-profiles load --label <name>.
What happens if I run load without saving?
You will be prompted to save the current profile, continue without saving, or cancel.
Can I keep personal and work accounts separate?
Yes. Save each account with a label (for example,
personalandwork) and switch with the label.
How can I verify my installation?
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.
Can I contribute to this project?
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.
Dependencies
~22–38MB
~645K SLoC