hide_agent_reasoning = true hides Codex reasoning output; show_raw_agent_reasoning = true shows it

Codex Published: Updated:

hide_agent_reasoning = true suppresses reasoning, show_raw_agent_reasoning = true shows raw reasoning, model_reasoning_summary (auto to none) sets length. Depth is a separate key.

Verified on Sep 27, 2026 These tools change quickly. Please also check the latest official documentation. How articles are researched and verified
Contents
  1. The three keys
  2. Display is not depth
  3. Non-interactive use
    1. Showing more reasoning, not less
  4. Summary

Codex shows summaries of what it is thinking while it works. That is useful for following along, but noise when you are skimming a log or piping codex exec output through a script. Other times you want more detail about why it made a decision.

In short: display is controlled by hide_agent_reasoning (suppress) and show_raw_agent_reasoning (show raw reasoning), and summary granularity by model_reasoning_summary. All three are separate from model_reasoning_effort, which sets how deeply the model reasons.

KEY POINT

What you will learn

  • The role and default of the three display keys
  • Display settings versus depth (model_reasoning_effort)
  • Cases where the settings have no effect because of the model or provider

The three keys

hide_agent_reasoning = true          # suppress reasoning events
show_raw_agent_reasoning = false     # surface raw reasoning when the model emits it
model_reasoning_summary = "concise"  # auto | concise | detailed | none
KeyTypeDefaultMeaning
hide_agent_reasoningBooleanfalsetrue suppresses reasoning events in the output
show_raw_agent_reasoningBooleanunsetshow raw reasoning content when the model returns it
model_reasoning_summarystringunsetsummary granularity: auto / concise / detailed / none

The reference describes hide_agent_reasoning as suppressing "reasoning events in both the TUI and codex exec output". With it set to true, the thinking Codex shows while it works disappears and only tool activity and the final response remain. model_reasoning_summary = "none" stops summaries being generated at all, which is a different layer from merely hiding them.

用語解説

Reasoning summary: a short, display-oriented digest of the model's internal reasoning. Whether the raw reasoning itself is returned depends on the model and provider; if it is not, show_raw_agent_reasoning = true shows nothing.

Display is not depth

How deeply the model reasons is set by model_reasoning_effort. The reference names low, medium, high, xhigh, max and ultra as examples, and says the available levels depend on the model and client. Hiding the display does not reduce reasoning or the tokens it consumes.

GoalSetting
hide reasoning from the outputhide_agent_reasoning = true
reason less and respond fastermodel_reasoning_effort = "low"
see more of the rationalemodel_reasoning_summary = "detailed"
see raw reasoning (supported models only)show_raw_agent_reasoning = true

Choosing a reasoning effort is covered in the hub article Configuring Codex with config.toml.

Non-interactive use

When you drive Codex from scripts with codex exec, reasoning summaries mixed into stdout make post-processing awkward. A CI profile with hide_agent_reasoning = true keeps the output stable. Profiles live in separate files such as $CODEX_HOME/ci.config.toml and are selected with codex --profile ci.

# ~/.codex/ci.config.toml
hide_agent_reasoning = true
model_reasoning_summary = "none"
approval_policy = "never"

Behavior depends on the model and provider

The docs state that show_raw_agent_reasoning has no effect with models or providers that do not emit raw reasoning. model_supports_reasoning_summaries can force reasoning metadata to be sent, but the display does not change if the model does not support it. When a setting appears to do nothing, check the model first.

Showing more reasoning, not less

The same three keys work in the other direction when you want to see more:

You wantSetting
Summaries visible at allLeave hide_agent_reasoning at its default false
Fuller summariesmodel_reasoning_summary = "detailed"
Raw reasoning where the model exposes itshow_raw_agent_reasoning = true
hide_agent_reasoning = false
model_reasoning_summary = "detailed"
show_raw_agent_reasoning = true

Remember that these change the display only, not how much the model reasons. To change the depth itself, see How to change reasoning effort in Codex CLI.

Another output-readability setting, opening file references in your editor, is covered in file_opener, and turn-completion notifications in notify and tui.notifications.

Summary

  • hide_agent_reasoning = true hides reasoning; show_raw_agent_reasoning = true shows raw reasoning when available
  • model_reasoning_summary sets granularity: auto, concise, detailed, none
  • Depth is a different key, model_reasoning_effort; hiding does not reduce reasoning or tokens
  • A codex exec profile with reasoning hidden gives stable output
  • Raw reasoning appears only when the model and provider support it

FAQ

Does hiding reasoning stop the model from reasoning?
No. hide_agent_reasoning only suppresses the display. Reasoning depth is set separately with model_reasoning_effort.
show_raw_agent_reasoning = true changes nothing.
Some models and providers do not emit raw reasoning, and the docs note the setting has no effect in those cases.
How do I show reasoning in Codex instead of hiding it?
Leave hide_agent_reasoning at its default of false, and set model_reasoning_summary to detailed for fuller summaries. show_raw_agent_reasoning = true additionally shows raw reasoning where the model exposes it.
How do I hide thinking in Codex?
Set hide_agent_reasoning = true in config.toml, which suppresses reasoning events in both the TUI and codex exec output. For shorter summaries instead, use model_reasoning_summary = "concise"; "none" stops them being generated.

Primary sources

This article was drafted by AI from official documentation and reviewed by the site operator before publishing. Found a mistake? Let us know via the contact page.