設定の基本
ドキュメントの完全な索引については、llms.txtを参照してください。ドキュメントページの Markdown 版は、ページ URL の末尾に .md を追加すると利用できます。
Codex は複数の場所から設定情報を読み取ります。個人用のデフォルト設定は ~/.codex/config.toml に保存され、.codex/config.toml ファイルを使用してプロジェクト固有の設定を追加できます。セキュリティ上の理由から、Codex はプロジェクトを信頼している場合にのみ、プロジェクトの .codex/ レイヤーを読み込みます。
Codex 設定ファイル
Codex はユーザーレベルの設定を ~/.codex/config.toml に保存します。設定を特定のプロジェクトまたはサブフォルダーに限定するには、リポジトリに .codex/config.toml ファイルを追加します。
Codex IDE 拡張機能から設定ファイルを開くには、右上隅の歯車アイコンを選択し、Codex Settings > Open config.toml を選択します。
CLI と IDE 拡張機能は同じ設定レイヤーを共有します。これらを使用して、次のことができます。
- デフォルトのモデルとプロバイダーを設定する。
- 承認ポリシーとサンドボックス設定を構成する。
- MCP サーバーを構成する。
設定の優先順位
Codex は次の順序で値を解決します(上にあるものほど優先されます)。
- CLI フラグと
--configオーバーライド - プロジェクト設定ファイル:
.codex/config.toml。プロジェクトルートから現在の作業ディレクトリまでの順に適用されます(最も近いものが優先されます。信頼されたプロジェクトのみ) --profile profile-nameで選択したプロファイルファイル(~/.codex/profile-name.config.toml)- ユーザー設定:
~/.codex/config.toml - システム設定(存在する場合):Unix では
/etc/codex/config.toml - 組み込みのデフォルト設定
この優先順位を利用して、共有のデフォルト設定を config.toml に指定し、プロファイルファイルには異なる値だけを指定します。
プロジェクトを信頼されていないものとして指定すると、Codex はプロジェクトローカルの設定、フック、ルールなど、プロジェクトスコープの .codex/ レイヤーをスキップします。ユーザーおよびシステム設定は、ユーザー/グローバルのフックやルールを含めて引き続き読み込まれます。
-c/--config を使用する一時的なオーバーライド(TOML の引用符の規則を含む)については、高度な設定を参照してください。
一般的な設定オプション
よく変更されるオプションをいくつか紹介します。
デフォルトモデル
Codex が CLI と IDE でデフォルトとして使用するモデルを選択します。
model = "gpt-5.6"承認プロンプト
生成されたコマンドを実行する前に、Codex がいつ一時停止して確認を求めるかを制御します。
approval_policy = "on-request"untrusted、on-request、never の動作の違いについては、承認プロンプトなしで実行すると一般的なサンドボックスと承認の組み合わせを参照してください。
サンドボックスレベル
Codex がコマンドの実行中にアクセスできるファイルシステムとネットワークの範囲を調整します。
sandbox_mode = "workspace-write"モードごとの動作(保護対象の .git/.codex パスとネットワークのデフォルトを含む)については、サンドボックスと承認、書き込み可能なルート内の保護対象パス、ネットワークアクセスを参照してください。
権限プロファイル
Codex は、再利用可能なファイルシステムおよびネットワークポリシー用の、名前付き権限プロファイルにも
対応しています。組み込みプロファイルは :read-only、:workspace、
:danger-full-access です。カスタムプロファイルでは、[permissions.<name>] テーブルと、
対応する default_permissions 値を使用します。権限を参照してください。
Windows サンドボックスモード
Windows 上で Codex をネイティブに実行する場合は、windows テーブルでネイティブサンドボックスモードを elevated に設定します。管理者権限がない場合、または昇格したセットアップが失敗した場合にのみ unelevated を使用してください。
[windows]
sandbox = "elevated" # Recommended
# sandbox = "unelevated" # Fallback if admin permissions/setup are unavailableウェブ検索モード
Codex は、ローカルチャットでウェブ検索をデフォルトで有効にし、ウェブ検索キャッシュから結果を提供します。このキャッシュは OpenAI が管理するウェブ検索結果のインデックスであるため、キャッシュモードでは、公開中のページを取得する代わりに事前にインデックス化された結果が返されます。これにより、任意の公開中コンテンツからプロンプトインジェクションを受けるリスクが軽減されますが、それでもウェブ検索結果は信頼できないものとして扱う必要があります。--yolo または別のフルアクセスのサンドボックス設定を使用している場合、ウェブ検索はデフォルトで最新の結果を取得します。web_search でモードを選択します。
"cached"(デフォルト)は、ウェブ検索キャッシュから結果を提供します。"indexed"は、検索インデックスがリクエストを許可した場合にのみ外部ウェブアクセスを許可します。"live"は、ウェブから最新のデータを取得します(--searchと同じです)。"disabled"は、ウェブ検索ツールを無効にします。
web_search = "cached" # default; serves results from the web search cache
# web_search = "indexed" # gate external web access through the search index
# web_search = "live" # fetch the most recent data from the web (same as --search)
# web_search = "disabled"推論の労力
対応している場合に、モデルが適用する推論の労力を調整します。
model_reasoning_effort = "high"コミュニケーションスタイル
対応するモデルのデフォルトのコミュニケーションスタイルを設定します。
personality = "friendly" # or "pragmatic" or "none"この設定は後から、アクティブなセッションでは /personality を使用して、または app-server APIs の使用時にはスレッド/ターンごとにオーバーライドできます。
TUI キーマップ
tui.keymap でターミナルのショートカットをカスタマイズします。選択されたコンポーザーアクションは、一致する tui.keymap.global バインドにフォールバックします。対応している場合、コンテキスト固有のバインドが優先されます。空のリストを指定すると、アクションのバインドが解除されます。
[tui.keymap.global]
open_transcript = "ctrl-t"
[tui.keymap.composer]
submit = ["enter", "ctrl-m"]
[tui.keymap.chat]
interrupt_turn = "f12"コマンド環境
Codex が生成したコマンドに転送する環境変数を制御します。必要な変数だけを 保持するには、キー指定のフィルターを使用します。
[shell_environment_policy]
ignore_default_excludes = false
[shell_environment_policy.filters]
"PATH" = "include"
"HOME" = "include"ignore_default_excludes のデフォルトは true で、変数名に
KEY、SECRET、TOKEN が含まれる場合の自動フィルタリングをスキップします。この自動フィルタリングを
使用する場合は、false に設定します。除外ルール、優先順位、
従来の設定については、シェル環境
ポリシーを参照してください。
ログディレクトリ
Codex がローカルログファイルを書き込む場所を変更します。log_dir を明示的に設定すると、
そのディレクトリでオプトイン式のプレーンテキスト TUI ログ codex-tui.log も有効になります。
log_dir = "/absolute/path/to/codex-logs"一時的な実行では、CLI から設定することもできます。
codex -c log_dir=./.codex-log機能フラグ
config.toml の [features] テーブルを使用して、オプション機能や実験的機能を切り替えます。
一般的な機能フラグ
| キー | デフォルト | 成熟度 | 説明 |
|---|---|---|---|
apps |
true | 安定版 | アプリ(コネクター)連携を有効にする |
goals |
true | 安定版 | 永続化された目標と自動継続を有効にする |
hooks |
true | 安定版 | hooks.json またはインラインの [hooks] からライフサイクルフックを有効にする。フックを参照してください。 |
fast_mode |
true | 安定版 | Fast mode の選択と service_tier = "fast" パスを有効にする |
memories |
false | 実験的 | メモリを有効にする |
multi_agent |
true | 安定版 | サブエージェントのコラボレーションツールを有効にする |
personality |
true | 安定版 | パーソナリティ選択コントロールを有効にする |
remote_plugin |
true | 安定版 | リモートプラグインカタログを有効にする |
shell_snapshot |
true | 安定版 | シェル環境のスナップショットを作成し、コマンドの反復実行を高速化する |
shell_tool |
true | 安定版 | デフォルトの shell ツールを有効にする |
unified_exec |
Windows を除き true |
安定版 | 統合された PTY ベースの exec ツールを使用する |
web_search |
true | 非推奨 | 従来の切り替え。トップレベルの web_search 設定を推奨 |
web_search_cached |
false | 非推奨 | 未設定の場合に web_search = "cached" に対応付けられる従来の切り替え |
web_search_request |
false | 非推奨 | 未設定の場合に web_search = "live" に対応付けられる従来の切り替え |
ライフサイクルフックの設定については、フックを参照してください。
機能を有効にする
config.tomlで、[features]の下にfeature_name = trueを追加します。- CLI から
codex --enable feature_nameを実行します。 - 複数の機能を有効にするには、
codex --enable feature_a --enable feature_bを実行します。 - 機能を無効にするには、
config.tomlでキーをfalseに設定します。