#codex #profile #openai #cli

bin+lib codex-profiles

Manage multiple Codex CLI auth profiles

1 unstable release

Uses new Rust 2024

0.1.0 Jan 28, 2026

#472 in Authentication

MIT license

215KB
6K SLoC

Codex Profiles

Manage multiple Codex CLI profiles and switch between them instantly.

Stars Release Issues License

OverviewInstallUninstallUsageFAQ


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 cx and use this version instead.

rm ~/.local/bin/cx

If 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}.json Saved profiles.
profiles.json Profile metadata (labels, last-used, active).
profiles.lock Lock 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, run codex-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, personal and work) 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