Codex の推論(reasoning)の表示を消す・詳しくする設定:hide_agent_reasoning と要約の粒度

Codex 公開:

Codex CLI の推論の要約を非表示にする hide_agent_reasoning、生の推論を表示する show_raw_agent_reasoning、要約の粒度を決める model_reasoning_summary の違いと、非対話モードでの扱いを解説します。

検証日 2026年9月10日 仕様変更が早い分野です。最新の公式ドキュメントも併せてご確認ください。
目次
  1. 3 つのキー
  2. 「表示」と「深さ」は別
  3. 非対話モードでの使い方
  4. まとめ

Codex は応答の途中で「何を考えているか」の要約を表示します。作業の追跡には便利ですが、ログを流し読みしたいときや、codex exec の出力をスクリプトで扱いたいときには邪魔になります。逆に、なぜその判断をしたのかをもっと詳しく見たい場面もあります。

結論として、表示は hide_agent_reasoning(消す)と show_raw_agent_reasoning(生の推論を出す)、要約の粒度は model_reasoning_summary で制御します。推論の 深さ を決める model_reasoning_effort とは別の設定です。

KEY POINT

この記事で分かること

  • 表示に関する 3 つのキーの役割と既定
  • 「表示」の設定と「深さ」の設定(model_reasoning_effort)の違い
  • モデルやプロバイダによって効かないケース

3 つのキー

hide_agent_reasoning = true          # 推論イベントを出力しない
show_raw_agent_reasoning = false     # 生の推論を出す(モデルが返す場合)
model_reasoning_summary = "concise"  # auto | concise | detailed | none
キー既定意味
hide_agent_reasoning真偽値falsetrue で推論イベントを出力から抑える
show_raw_agent_reasoning真偽値未設定モデルが生の推論を返すとき、それを表示する
model_reasoning_summary文字列未設定要約の粒度。auto / concise / detailed / none

hide_agent_reasoning = true にすると、モデルの推論に関するイベントが出力から消え、ツールの実行と最終的な応答だけが残ります。model_reasoning_summary = "none" は要約の生成自体を止める設定で、表示だけを抑える hide_agent_reasoning とは層が違います。

用語解説

推論の要約(reasoning summary): モデルが内部で行った推論を、表示用に短くまとめたものです。生の推論(raw reasoning)そのものを返すかどうかはモデルとプロバイダに依存し、返さない場合は show_raw_agent_reasoningtrue にしても何も表示されません。

「表示」と「深さ」は別

推論を どれだけ深く行うかmodel_reasoning_effort で決めます。値は minimal / low / medium / high / xhigh です。表示を消しても推論は行われ、トークンも消費されます。

目的設定
推論の表示だけ消したいhide_agent_reasoning = true
推論を浅くして速くしたいmodel_reasoning_effort = "low"
判断の根拠を詳しく見たいmodel_reasoning_summary = "detailed"
生の推論を見たい(対応モデルのみ)show_raw_agent_reasoning = true

model_reasoning_effort の使い分けは親記事の config.toml でモデル・推論の深さ・プロファイルを切り替える で扱っています。

非対話モードでの使い方

codex exec でスクリプトから使う場合、推論の要約が標準出力に混ざると後処理がしにくくなります。CI 用のプロファイルで hide_agent_reasoning = true にしておくと出力が安定します。プロファイルは $CODEX_HOME/ci.config.toml のような別ファイルに書き、codex --profile ci で選びます。

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

モデルとプロバイダで挙動が変わる

公式ドキュメントは、生の推論を出力しないモデルやプロバイダでは show_raw_agent_reasoning が効かないと明記しています。model_supports_reasoning_summaries で推論メタデータの送信を強制することもできますが、モデルが対応していなければ表示は変わりません。設定を変えても何も起きないときは、まずモデル側の対応を疑ってください。

出力を読みやすくする他の設定として、ファイル参照をエディタで開く file_opener があります。ターン完了の通知は notify の設定 を参照してください。

まとめ

  • 表示を消すのは hide_agent_reasoning = true、生の推論を出すのは show_raw_agent_reasoning = true
  • 要約の粒度は model_reasoning_summary(auto / concise / detailed / none)
  • 推論の深さは別のキー model_reasoning_effort。表示を消しても推論とトークン消費は続く
  • codex exec 用のプロファイルで非表示にすると出力が安定する
  • 生の推論はモデル・プロバイダが対応していないと表示されない

よくある質問

推論の表示を消すと、推論そのものが行われなくなりますか?
いいえ。hide_agent_reasoning は表示を抑えるだけです。推論の深さは model_reasoning_effort で別に決まります。
show_raw_agent_reasoning を true にしても何も変わりません。
生の推論を出力しないモデルやプロバイダでは効果がありません。公式ドキュメントもその旨を明記しています。
要約だけ短くしたいです。
model_reasoning_summary = "concise" にします。none にすると要約自体を無効にします。

参考にした一次情報

この記事は公式ドキュメントを基に AI が下書きを作成し、運営者が内容を確認して公開しています。誤りを見つけた場合は お問い合わせからお知らせください。