GPT WORLD / INDEPENDENT CODEX FIELD MANUAL Source review · 2026-07-31

Field guide / 22 min

Plan Codex work by model, effort, and scope

Preserve session continuity, then choose Sol, Terra, or Luna without changing the permission boundary.

Track
Codex CLI core
Level
Repository setup
Maturity
Stable

Model-aware planning is more than selecting the largest model. Keep the CLI that already holds the repository and conversation context, map each task to a role, select only an effort advertised by that model, and keep subagent orchestration separate from single-task depth. Codex configuration still resolves by scope, while model access can drift by release, account, authentication method, quota, and rollout.

CLI

Verified terminal sequence

TERMINAL / COPY WITH INTENT
  1. /model
  2. /status
  3. $codex -p deep-review
  4. $codex -m gpt-5.6-terra -c 'model_reasoning_effort="medium"' -s workspace-write "<GOAL>"
  5. $codex exec -m gpt-5.6-sol -c 'model_reasoning_effort="high"' -s read-only --ephemeral "<GOAL>"
  6. $codex exec -m gpt-5.6-luna -c 'model_reasoning_effort="low"' -s read-only --ephemeral "<GOAL>"
A

Working principles

01

Continuity first

Keep the active Codex session for normal repository work. Switch CLI only for a concrete native workflow or independent review benefit that exceeds the cost of rebuilding context.

02

Roles before rankings

In the Codex CLI 0.147.0 snapshot, GPT-5.6 Sol is the deep frontier role, GPT-5.6 Terra is the balanced everyday role, and GPT-5.6 Luna is the fast repeatable role. These are routing roles, not a timeless benchmark ranking.

03

Reasoning is not authority

Changing model, native effort, max, or ultra never upgrades sandbox, approval policy, writable roots, network access, or external-action authority. Preserve or narrow the active permission boundary.

04

Catalogs are account-scoped snapshots

Use /model and /status before launch. Availability, aliases, defaults, quotas, and supported effort can drift by release and account, so a dated catalog is evidence—not entitlement.

B

Field procedure

  1. 01

    Inspect live state before choosing

    Run /model and /status in the active account. The 2026-08-10 Codex CLI 0.147.0 snapshot exposes gpt-5.6-sol, gpt-5.6-terra, and gpt-5.6-luna, but your live catalog is authoritative.

  2. 02

    Match the task to a model role

    Use Sol for ambiguous architecture, hard debugging, security reasoning, or final synthesis; Terra for normal edit-test-review work; Luna for clear extraction, formatting, inventory, and other fast repeatable work. Keep the current model when the expected gain is smaller than the context-switch cost.

  3. 03

    Choose only supported native effort

    The captured Sol and Terra records support low, medium, high, xhigh, max, and ultra. Luna supports low through max but not ultra. Use max for deeper single-task reasoning; ultra is provider-native subagent orchestration, not a stronger synonym for max. Verify the selected model before using either.

  4. 04

    Launch with explicit safe boundaries

    For normal edits use gpt-5.6-terra with model_reasoning_effort="medium" and workspace-write. For read-only deep analysis use Sol/high; for read-only mechanical work use Luna/low. Keep the TOML value quoted. In Codex, -p/--profile selects a profile—it never means print, prompt, or non-interactive execution; use codex exec for headless work.

  5. 05

    Ask the Knowledge MCP for the dated catalog

    In an MCP client, call worlds_list_cli_models with {"products":["codex"]}. Read the returned availability, supported_efforts, constraints, capture date, and source, then compare it with /model before executing a selector.

  6. 06

    Generate an advisory work plan

    Call worlds_plan_cli_work with {"task":"<GOAL>","current_cli":"codex","available_clis":["codex"],"workstreams":[{"id":"implementation","goal":"<GOAL>","execution_intent":"may-edit"}],"strategy":"continuity-first","risk_tolerance":"low","execution_environment":"local-workspace","orchestration_mode":"none","require_independent_review":false} only when edits are already authorized. Omit that intent for read-only work, which is the default. Treat assignments and commands as reviewable advice: the tool does not launch a CLI or grant permissions.

  7. 07

    Fallback without inventing access

    If a named model or effort is unavailable, re-open /model, use a supported live choice or omit the explicit model override, and keep the existing sandbox and approval policy. Record the fallback and rerun the task-specific verification.

  8. 08

    Persist only durable configuration

    Personal defaults belong in user config, shared trusted-repository behavior in project config, specialized behavior in a separate profile file, and one-time model experiments on the command line.

PASS / FAIL

Acceptance checklist

  • The active session was retained unless a concrete switch benefit was documented.
  • The selected model exists in /model for this account.
  • The selected native effort is supported by that exact model.
  • max and ultra have not been treated as interchangeable.
  • Model selection did not widen permissions.
  • MCP output was checked against the live catalog before launch.
  • The command uses quoted TOML and the intended sandbox.
  • Fallback and verification are explicit.

WATCH / REJECT

Failure patterns

  • Treating Sol, Terra, or Luna as permanent account entitlements.
  • Using ultra on Luna or using orchestration when the task is not independently decomposable.
  • Assuming higher effort grants tools, network, or write access.
  • Using codex -p as if it were a print or prompt flag.
  • Copying an MCP command without checking the local CLI and effective policy.
  • Using the removed legacy profiles table.