Reference for dashboard display settings and backend pluginConfig values available from codex auth login -> Settings.
Default file:
~/.codex/multi-auth/settings.json
Top-level objects:
dashboardDisplaySettingspluginConfig
When CODEX_MULTI_AUTH_DIR is set, this root moves accordingly.
Controls account-row display and sort behavior.
menuShowStatusBadgemenuShowCurrentBadgemenuShowLastUsedmenuShowQuotaSummarymenuShowQuotaCooldownmenuShowFetchStatusmenuShowDetailsForUnselectedRowsmenuHighlightCurrentRowmenuSortEnabledmenuSortModemenuSortPinCurrentmenuSortQuickSwitchVisibleRowmenuLayoutMode
| Key | Default | Effect |
|---|---|---|
menuShowStatusBadge |
true |
Show ready/cooldown/disabled status badges on account rows |
menuShowCurrentBadge |
true |
Mark the current account row |
menuShowLastUsed |
true |
Include last-used text in row details |
menuShowQuotaSummary |
true |
Show compact quota usage summaries |
menuShowQuotaCooldown |
true |
Show quota reset/cooldown details |
menuShowFetchStatus |
true |
Show quota fetch/probe status text |
menuShowDetailsForUnselectedRows |
false |
Expand details for unselected rows |
menuHighlightCurrentRow |
true |
Emphasize the current account row |
menuSortEnabled |
true |
Enable menu sorting |
menuSortMode |
ready-first |
Sort rows by readiness/risk heuristic |
menuSortPinCurrent |
false |
Keep the current account pinned while sorting |
menuSortQuickSwitchVisibleRow |
true |
Keep quick-switch numbering aligned to visible sorted rows |
menuLayoutMode |
compact-details |
Choose compact or expanded row layout |
Controls the fields shown in the per-account summary line.
menuStatuslineFieldslast-usedlimitsstatus
| Key | Default | Effect |
|---|---|---|
menuStatuslineFields |
last-used, limits, status |
Controls which summary fields appear and in what order |
Controls result-screen return behavior and menu quota refresh behavior.
| Key | Default | Effect |
|---|---|---|
actionAutoReturnMs |
2000 |
Delay before returning from action/result screens |
actionPauseOnKey |
true |
Pause on keypress before auto-return completes |
menuAutoFetchLimits |
true |
Refresh quota snapshots automatically in the menu |
menuQuotaTtlMs |
300000 |
Reuse cached quota data before refetching |
Controls display style.
| Key | Default | Effect |
|---|---|---|
uiThemePreset |
green |
Overall theme preset |
uiAccentColor |
green |
Accent color for TUI elements |
menuFocusStyle |
row-invert |
Focus/highlight style in selection menus |
Experimental settings currently cover:
- one-way sync preview/apply into
oc-chatgpt-multi-auth - named local pool backup export with filename prompt
- refresh guard controls (
proactiveRefreshGuardian,proactiveRefreshIntervalMs)
Experimental shortcuts:
1sync preview2named backup export3toggle refresh guard[or-decrease refresh interval]or+increase refresh intervalSsave and returnQback- sync review also supports
Aapply
Sync behavior:
- preview is always shown before apply
- blocked target states do not apply changes
- destination active selection is preserved
- destination-only accounts are preserved by the merge preview/apply path
Named backup behavior:
- prompts for a filename
- appends
.jsonwhen omitted - rejects separators, traversal (
..),.rotate.,.tmp, and.walsuffixes - fails safely on collisions instead of overwriting by default
| Key | Default | Effect |
|---|---|---|
liveAccountSync |
true |
Watch account storage for external changes |
liveAccountSyncDebounceMs |
250 |
Debounce live-sync reloads |
liveAccountSyncPollMs |
2000 |
Poll interval for live-sync fallback |
sessionAffinity |
true |
Keep sessions sticky to a recent account |
sessionAffinityTtlMs |
1200000 |
Session affinity retention window |
sessionAffinityMaxEntries |
512 |
Maximum affinity cache entries |
perProjectAccounts |
true |
Scope account pools per project when CLI sync is off |
| Key | Default | Effect |
|---|---|---|
preemptiveQuotaEnabled |
true |
Defer requests before remaining quota is critically low |
preemptiveQuotaRemainingPercent5h |
5 |
5-hour quota threshold |
preemptiveQuotaRemainingPercent7d |
5 |
7-day quota threshold |
preemptiveQuotaMaxDeferralMs |
7200000 |
Maximum quota-based deferral window |
retryAllAccountsRateLimited |
true |
Retry across the whole pool when all accounts are rate-limited |
retryAllAccountsMaxWaitMs |
0 |
Maximum wait budget for all-accounts-rate-limited retries |
retryAllAccountsMaxRetries |
Infinity |
Maximum retry attempts for all-accounts-rate-limited loops |
| Key | Default | Effect |
|---|---|---|
tokenRefreshSkewMs |
60000 |
Refresh tokens before expiry |
proactiveRefreshGuardian |
true |
Run background proactive refresh checks |
proactiveRefreshIntervalMs |
60000 |
Refresh guardian polling interval |
proactiveRefreshBufferMs |
300000 |
Refresh-before-expiry buffer |
storageBackupEnabled |
true |
Write rotating account-storage backups |
sessionRecovery |
true |
Restore recoverable conversation state |
autoResume |
true |
Automatically resume recoverable sessions |
| Key | Default | Effect |
|---|---|---|
parallelProbing |
false |
Probe multiple accounts concurrently |
parallelProbingMaxConcurrency |
2 |
Concurrency cap for parallel probing |
fastSession |
false |
Enable fast-session request trimming |
fastSessionStrategy |
hybrid |
Choose fast-session trimming strategy |
fastSessionMaxInputItems |
30 |
Cap history items in fast-session mode |
emptyResponseMaxRetries |
2 |
Retries for empty/invalid responses |
emptyResponseRetryDelayMs |
1000 |
Delay between empty-response retries |
fetchTimeoutMs |
60000 |
Request timeout |
streamStallTimeoutMs |
45000 |
Stream stall timeout |
networkErrorCooldownMs |
6000 |
Cooldown after network failures |
serverErrorCooldownMs |
4000 |
Cooldown after server failures |
Common operator overrides:
CODEX_MULTI_AUTH_DIRCODEX_MULTI_AUTH_CONFIG_PATHCODEX_MODECODEX_TUI_V2CODEX_TUI_COLOR_PROFILECODEX_TUI_GLYPHSCODEX_AUTH_FETCH_TIMEOUT_MSCODEX_AUTH_STREAM_STALL_TIMEOUT_MS
Maintainer/debug-focused overrides include:
CODEX_MULTI_AUTH_SYNC_CODEX_CLICODEX_MULTI_AUTH_REAL_CODEX_BINCODEX_MULTI_AUTH_BYPASSCODEX_CLI_ACCOUNTS_PATHCODEX_CLI_AUTH_PATH- refresh lease controls (
CODEX_AUTH_REFRESH_LEASE*)
Full inventory: ../development/CONFIG_FIELDS.md
For most environments:
- smart sort enabled
- auto-fetch limits enabled
- live sync enabled
- session affinity enabled
- preemptive quota deferral enabled
- proactive refresh guardian enabled
After changes:
codex auth status
codex auth check
codex auth forecast --live