Error parsing -c overrides: Invalid override (missing '='): <key>
結論
-c は key=value の形でしか受け取らない。値を書かずにキーだけ渡すと起動前に弾かれる。
確認した版
Codex CLI v0.153.0
確認日
2026年9月3日
最終更新
2026年9月3日
根拠
実機で確認
エラー文字列
Error parsing -c overrides: Invalid override (missing '='): <key>
⚠️ 標準エラーに出て、終了コードは 1 です。 起動前に弾かれるため、通信も課金も発生しません。
何が起きているか
-c は キー=値 の形でしか受け取りません。キーだけを渡すと弾かれます。
codex -c model exec "..." ← 値が無い
⭐ 値は TOML として解釈されます。 TOML として読めなかった場合だけ、そのままの文字列として扱われます。
v0.149.0 で実測した対応表です。
| 渡した形 | 結果 |
|---|---|
-c model |
Invalid override (missing '='): model |
-c model="gpt-5" |
通る |
-c model=gpt-5 |
通る(TOML として読めないので文字列 gpt-5 として扱われる) |
直し方
1. = を入れる
codex -c model="gpt-5" exec "..."
2. 入れ子の設定はドットで書く
codex -c shell_environment_policy.inherit=all exec "..."
3. 配列や真偽値は TOML の書き方に合わせる
codex -c 'sandbox_permissions=["disk-full-read-access"]' exec "..."
codex -c features.some_flag=true exec "..."
⚠️ シェルの引用符に注意してください。 角括弧や二重引用符を含む値は、シェルに解釈されないよう全体を単引用符で囲みます。
Windows(PowerShell)
codex -c 'sandbox_permissions=["disk-full-read-access"]' exec "..."
4. 毎回渡すなら設定ファイルに書く
同じ値を毎回渡しているなら、~/.codex/config.toml に書けば -c は不要になります。
model = "gpt-5"
⚠️ ただしキー名を打ち間違えても、設定ファイル側はエラーになりません(黙って無視されます)。まず -c で動くことを確かめてから移すと確実です。
再発防止
-cは必ずキー=値。値を省略できない- 記号を含む値は単引用符で全体を囲む
- 常用する値は設定ファイルへ移す。ただし移した後に効いているか確認する