openai / openai/codex

codex doctor does not report the effective model_reasoning_effort

Open Beginner friendly
#44,120 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

CLI config enhancement
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

What variant of Codex are you using?

CLI (codex-cli 0.153.4)

What feature would you like to see?

codex doctor --json reports model and model provider under config.load, but
not model_reasoning_effort. Please add it.

There's currently no CLI surface that exposes the effective effort: doctor doesn't
have it, and codex debug prompt-input renders byte-identical output for
-c model_reasoning_effort=low and =high. So tooling has to parse
~/.codex/config.toml and redo profile/env resolution itself.

Looks like a one-liner in config_check() (codex-rs/cli/src/doctor.rs), next to
the existing model push. No "effort" string anywhere in that file on 0.153.4,
rust-v0.154.0-alpha.11, or main, so I don't think it's already in flight.

Additional information

Why I want it: resuming a thread under a different effort throws away its prompt
cache, so a wrapper doing exec + exec resume needs to check before resuming.

Two identical threads on 0.153.4, one-word prompts, only turn 2's effort differs
(turn.completed.usage):

turn 2 input cached
A: low -> low 16,698 16,512 (98.9%)
B: low -> high 16,699 12,160 (72.8%)
B: high -> high 16,732 16,512 (98.7%)

72.8% is exactly what a fresh run gets, i.e. the thread's own history stops being
cached. Row 3 is that same thread one turn later with effort unchanged, so it's the
change that costs, not high effort itself. It scales with thread size: on a
600k-token thread that's ~590k tokens re-billed as uncached.

Repro: codex exec --json -c model_reasoning_effort=low --sandbox read-only -, then
resume that thread id twice, once with =low and once with =high, and compare
usage.cached_input_tokens.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Open codex-rs/cli/src/doctor.rs and inspect config_check(), starting next to the existing model push under config.load. Expose the effective model_reasoning_effort there, then verify that codex doctor --json reports it after configuration and profile/env resolution.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
cli
Issue type
Feature
Difficulty
1/5
Estimated time
Under an hour
Activity status
Active
Clarity
Clearly specified
Newbie friendliness
90/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.