Skip to main content
reopt Handbook
reopt Handbook
Advanced Codex Usage

Foundation

Setup and LoginConfigMemories

Safety and Operations

ApprovalsSecurity

Workflow

Slash CommandsPrompts and SkillsExec and AutomationThread LifecycleCloud TasksMulti-Agent Workflows

Extensions and IDE

Codex App and IDEMCP IntegrationModels and ReasoningGovernance and Rollout

Verification

VerificationUpdates
Handbook›Advanced Codex Usage›Config
한국어KOEnglishEN

Config

Design Codex configuration layers, profiles, and safe defaults for team usage.

Written and reviewed by Eric Han · Co-founder & CTO, reopt

Permission and execution changes in 0.163.0

Daybreak defaults on for eligible accounts, superseding the 0.161.0 opt-in guidance below. API-key authenticated codex exec can select a program when the server grants access. Resume restores saved permissions and network approvals while respecting explicit overrides and current managed policy.

/config searches settings, applies supported items live, and indicates changes needing a restart. Follow-up input now steers an active response immediately by default; interrupting a turn also stops Code Mode cells and nested tools. Independent read-only lookups can run in parallel. Patched zsh is no longer bundled and retired shell flags produce migration guidance.

0.163.0 release.

Key takeaways

  • Configuration's job is to make the safe path the default path, not to expose every option.
  • Layer config by owner: user defaults, repository rules, team policy, and admin policy that cannot be weakened locally.
  • Define purpose-built profiles such as default, review, automation, and restricted for sensitive work.
  • On review, confirm explicit sandbox and approval defaults, gated high-risk tools, and a migration note whenever config changes.
  • Validate named permission profiles with codex sandbox -P <profile>, inspect effective modes via /debug-config, and include plugin marketplace JSON in supply-chain audits.

Configuration turns team preferences into repeatable behavior. The goal is not to expose every option; it is to make the safe path the default path.

Config Layers

LayerPurposeOwner
User configPersonal defaults and editor preferencesDeveloper
Repository configProject rules, commands, and contextRepo owner
Team configShared policy, model, and permission defaultsEngineering lead
Admin policyRequirements that cannot be weakened locallyPlatform or security

Profile Design

ProfileUse
defaultNormal development and documentation
reviewRead-heavy code review and analysis
automationNon-interactive commands with tight scope
restrictedSensitive repositories or production-adjacent work

Review Checklist

  • Are sandbox and approval defaults explicit?
  • Are model and reasoning defaults appropriate for cost and quality?
  • Are extra read directories intentionally allowed?
  • Are high-risk tools disabled or gated?
  • Is there a migration note when config changes?
  • Can the team validate named permission profiles with codex sandbox -P <profile> and inspect effective sandbox modes with /debug-config?
  • Are plugin marketplace JSON outputs included in config and supply-chain audits?

0.145.0 to 0.146.0 Plugin and Proxy Notes

  • Include Agent Plugin manifests and workspace publishing in the supply-chain inventory, and re-check marketplace allowlists for additional Amazon Bedrock and Claude Code sources.
  • Smoke-test HTTP_PROXY, HTTPS_PROXY, and NO_PROXY across auth, plugins, MCP, remote/WebSocket hosts, redirects, and LM Studio rather than assuming one successful path covers all clients.
  • Remote Code Mode hosts and executor-provided skills/resources expand the effective tool surface; capture /plugins, /skills, /mcp, and /debug-config together.

0.147.0 to 0.148.0 Configuration Notes

  • Migrate new model defaults to GPT-5.6 Sol or Terra, use Luna for explicit repeated work, and plan the ChatGPT-sign-in retirement of GPT-5.4 and GPT-5.4 mini on 2026-08-31.
  • Portable Agent Plugins expand the catalog boundary across local, personal, workspace, and remote sources; record source, version, and trust state in supply-chain reviews.
  • Codex 0.148.0 adds the built-in amazon-bedrock provider with AWS profile and region configuration:
model_provider = "amazon-bedrock"

[model_providers.amazon-bedrock.aws]
profile = "engineering"
region = "us-west-2"

0.161.0 to 0.162.0 Configuration Notes

The opt-in example records 0.161.0. Daybreak defaults on for eligible accounts from 0.163.0; the mouse-wheel setting remains applicable.

[features]
# 0.161.0 historical default; eligible accounts default on in 0.163.0. Enables Daybreak controls and automatic Cyber access program selection in the CLI.
cli_daybreak = true

[tui]
# 0.162.0: multiplier for transcript mouse-wheel scrolling. One row per wheel event by default; 3.0 restores the earlier speed.
mouse_scroll_speed = 3.0

# 0.162.0: capabilities for a custom Responses-compatible provider
[model_providers.custom.capabilities]
external_web_access = false
remote_compaction = "v2"
  • features.cli_daybreak: 0.161.0 makes Daybreak in the CLI opt-in. Use codex --enable cli_daybreak to turn it on for one run. daybreak=true alone is not enough. While it is off, Daybreak controls and indicators are hidden, /daybreak is unavailable, and automatic Cyber routing is omitted, even for saved Daybreak threads. Saved preferences stay intact. Once enabled, routing still requires an eligible ChatGPT sign-in, the OpenAI provider, and advertised model and program support.
  • tui.mouse_scroll_speed: added in 0.162.0 as a multiplier for transcript mouse-wheel scrolling. According to the pull-request description it accepts a finite positive number, and the default movement drops from three rows to one row per wheel event. Set 3.0 to keep the earlier speed. A value below 1 such as 0.5 scrolls one row every two events.
  • Custom provider capabilities: from 0.162.0, custom Responses-compatible model providers configure live web access and remote compaction under model_providers.<id>.capabilities. According to the pull-request description, external_web_access = false keeps hosted web search from reaching the live web, and remote_compaction accepts "v2" (compaction through the Responses endpoint) or "unsupported" (local compaction). Omitted capabilities keep the provider's existing defaults.
  • Server defaults win: from 0.162.0, new TUI threads respect the server's model and reasoning-summary defaults while keeping explicit launch overrides. From 0.161.0, implicit client settings no longer overwrite server or saved-thread web-search settings. If the team manages defaults on the server, check whether client configuration still needs to repeat them.

These keys are confirmed from release notes and pull-request descriptions and are not yet in the official config reference as of 2026-10-10.

0.158.0 to 0.160.0 Configuration Notes

Check one removed setting and one approval that is now on by default before upgrading a team standard.

[tui]
# 0.158.0: copy a fullscreen mouse selection on release. auto (default), always, never
copy_on_select = "auto"
# 0.158.0: right-click paste. auto (default, Windows and Linux), on, off
right_click_paste = "auto"
# Removed in 0.159.0. Delete it if it is still present.
# prompt_suggestions = true

[features]
# 0.159.0: off by default. Delivers new input during a model response or a long code-mode call.
instant_interrupt = true
  • tui.prompt_suggestions removed: 0.159.0 removed automatic follow-up prompt suggestions together with the setting. --strict-config treats unrecognized keys as errors, so delete it from team configuration first.
  • Terminal input approval on by default: 0.158.0 promotes write_stdin_approval to stable and enables it by default. Sending terminal input to a command running with elevated permissions goes through approval; runtime-only permission grants do not require a review.
  • instant_interrupt: opt-in in 0.159.0 and enabled by default from 0.163.0. Use codex --enable instant_interrupt to turn it on for one run.
  • MCP OAuth client secret: from 0.158.0, mcp_servers.<id>.oauth.client_secret (or codex mcp add --oauth-client-secret) sets the secret for a pre-registered client. It requires a client ID, and the secret is stored in the server configuration, so check the config file's permissions and sharing scope.
  • MCP schema budgets: mcp_servers.<id>.tool_input_schema_max_bytes (5,000 bytes by default) and features.code_mode.tool_input_schema_max_bytes (16,000 bytes by default) adjust when a large MCP tool's input schema is compacted (0.158.0).
  • Opt-in Guardian capabilities: the 0.160.0 feature flags guardian_conversation_history_tools and guardian_root_handoff_context are off by default. The first lets the Guardian reviewer retrieve earlier user instructions (capped by auto_review.conversation_history_max_output_tokens, about 4,000 tokens by default); the second selects root messages around agent handoffs as review context.
  • .aws protection: from 0.159.0, .aws under writable roots is a default protected path alongside .git, .agents, and .codex. Explicit user rules take precedence over this default.
  • Model default: with model unset, CLI 0.159.1 and later use the bundled default GPT-6.1 Sol (GPT-6 Astra in 0.153.4–0.159.0). gpt-6-sol and gpt-5.6-* settings keep working.

These keys are confirmed from release notes and pull-request descriptions and are not yet in the official config reference as of 2026-10-07.

0.151.0 to 0.153.0 Configuration Notes

One default changed in this window, so check it before upgrading a team standard.

# 0.152.0: the planning tool is disabled by default. Enable it explicitly if you rely on it.
[tools.update_plan]
enabled = true

[tui]
# 0.153.0: turn off automatic recaps while keeping manual /recap
auto_recap = false
# 0.153.0: replaces the top-level disable_paste_burst, which still works as a fallback
disable_paste_burst = true

# 0.153.0: disabled-by-default experiment. For eligible ChatGPT Plus, Pro, and Pro Lite
# sessions on the Codex backend it enables token-budget context, history notes, and the
# new_context tool. API-key sessions, custom providers, and temporary structured threads
# are excluded.
[features.context_management]
experimental_mode = true
  • tools.update_plan.enabled: from 0.152.0 the planning tool is off by default. Turn it on explicitly if a runbook depends on its output. This is separate from the /plan slash command.
  • Per-tool MCP output limits: from 0.152.0 an individual MCP tool can set output_token_limit, with consistent truncation across session resumes.
  • MCP server naming: from 0.152.0 names may contain :, @, /, and ., so package-style names work across CLI commands and authentication.
  • Optional MCP discovery grace: 0.151.0 makes the tool-discovery grace period for optional MCP servers configurable; separate required and optional server startup policy.
  • App-server timeouts: from 0.152.0 clients can configure thread/shellCommand timeouts, including deadlines longer than one hour.

Related docs

Governance and Rollout

Roll out Codex across teams with ownership, policy, training, and upgrade discipline.

Cmd. /mcp

Codex Command Master · List configured MCP tools and inspect server diagnostics.

Handbook updates

Codex Command Master · Codex CLI: Recent handbook structure improvements with links to dated release coverage and audit records.

Exec and Automation

Use Codex exec for non-interactive scripts, CI checks, and structured automation.

MCP Integration

Claude Code Complete Guide · Connect Claude Code to tools and resources through Model Context Protocol servers.

Setup and Login

Standardize Codex installation, updates, identity, and local developer setup.

Memories

Operate Codex memories and persistent facts without accumulating stale context.

On this page

Permission and execution changes in 0.163.0Config LayersProfile DesignReview Checklist0.145.0 to 0.146.0 Plugin and Proxy Notes0.147.0 to 0.148.0 Configuration Notes0.161.0 to 0.162.0 Configuration Notes0.158.0 to 0.160.0 Configuration Notes0.151.0 to 0.153.0 Configuration Notes