#openai-codex #profile #codex-cli #openai

bin+lib codex-profiles

Seamlessly switch between multiple Codex accounts

3 releases (breaking)

Uses new Rust 2024

0.3.0 Mar 23, 2026
0.2.0 Feb 21, 2026
0.1.0 Jan 28, 2026

#410 in Authentication

MIT license

355KB
9K SLoC

Codex Profiles

Seamlessly switch between multiple Codex accounts

Tests Release Stars License

OverviewInstallUsageMore DocsFAQ


Overview

Codex Profiles lets you save and switch easily between multiple Codex accounts without repeated codex login

Install

Method Command
npm npm install -g codex-profiles
Bun bun install -g codex-profiles

Manual install

curl -fsSL https://raw.githubusercontent.com/midhunmonachan/codex-profiles/main/install.sh | bash
Advanced install option (build from source)
cargo install --locked codex-profiles

Requires Rust 1.94+

Quick Start

codex-profiles save --label work
codex-profiles list
codex-profiles load --label work --force

Usage

Note

Codex Profiles data is stored under ~/.codex/profiles/ on your machine

Command Reference

Command Description
codex-profiles save
[--label <name>]
Save current auth.json
Optional label
codex-profiles load
(--label <name> | --id <profile-id>)
[--force]
Load a saved profile
Choose a target profile and force when needed
codex-profiles list
[--show-id] [--json]
List profiles
Supports id and JSON views
codex-profiles export
[--label <name>]
[--id <profile-id> (repeatable)]
Export to a JSON bundle
Default: all profiles, or a selected subset
codex-profiles import
--input <file>
Import from a JSON bundle
codex-profiles doctor
[--fix] [--json]
Run diagnostics and optionally apply safe repairs
codex-profiles label set
(--label <name> | --id <profile-id>)
--to <label>
Set or replace a label
Target one profile
codex-profiles label clear
(--label <name> | --id <profile-id>)
Clear a label
Target one profile
codex-profiles label rename
--label <label> --to <label>
Rename an existing label
codex-profiles status
[--label <name> | --id <profile-id>]
[--all] [--json]
Show usage for active, selected, or all targets
Human-readable or JSON output
codex-profiles delete
[--label <name> | --id <profile-id> (repeatable)]
[--yes]
Delete by label or id
Supports bulk delete and non-interactive mode

Notes

  • load and delete are interactive unless you pass --label or --id
  • Export bundles contain secrets

More Docs

FAQ

How do I uninstall?
  • npm: npm uninstall -g codex-profiles
  • Bun: bun uninstall -g codex-profiles
  • Cargo: cargo uninstall codex-profiles
  • Manual: rm ~/.local/bin/codex-profiles
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 account

What happens if I run load without saving?

You will be prompted to save the active 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?
codex-profiles --version
codex-profiles list
Where are release verification steps documented?

In docs/verification.md

Dependencies

~21–36MB
~618K SLoC