attrip. Search
音楽

LATEST BEAT

Codexのconfig.tomlをこう変える:Luna・Terra・Solを仕事ごとに振り分ける

2026.08.02 · 7 MIN READ · 理解の記録

CodexでLuna・Terra・Solを仕事ごとに振り分けるアイキャッチ
RECORD / 2026

Codexのconfig.tomlをこう変える:Luna・Terra・Solを仕事ごとに振り分ける

GPT-5.6 Lunaが安くなったからといって、全部をLunaへ任せる設定にすればいいわけではない。まずLunaで小さく調べ、範囲が決まった実装だけTerraへ渡す。設計の迷い、例外が多い判断、公開前の横断確認だけSolへ上げる。この順番なら、AIを何度も試しながら、重い判断にだけ時間を使える。

この記事は、config.toml を触ったことがある人向けに、既定モデル、役割別エージェント、依頼文を一緒に整える。ここにある設定は安全な最小例だ。いまのファイルを丸ごと上書きせず、同じキーがあれば置き換える。

安くなったことの価値は、雑に任せることではない。小さく試せる回数が増えることだ。

最初に知っておくこと:config.tomlだけでは自動で選ばれない

設定ファイルを見直し、三つのモデル役割を確認する人
まず、既定値を小さく決める。

config.toml は、Codexが新しい作業を始めるときの既定値を置く場所だ。個人の共通設定は ~/.codex/config.toml、プロジェクトだけ変えたいときはリポジトリの .codex/config.toml に置く。プロジェクト側の設定が優先される。

ただし、設定ファイルだけで「この依頼はTerra」「これはSol」と完全自動判定するわけではない。役割を定義し、親のCodexに選ばせるか、依頼文で振り分けの基準を渡す。設定は次の3層に分けると混乱しない。

置き場決めること役割
config.tomlメインと名前なし子エージェントの既定値まずLunaで始める
~/.codex/agents/*.toml役割ごとのモデル・推論量・権限explorer / worker / architect
依頼文・AGENTS.mdいつ役割を選ぶかSolへ上げる条件を伝える

まず入れるconfig.toml:Luna / mediumを基準にする

三つの作業経路へ振り分けられるモデルのイメージ
仕事の種類で担当を分ける。

Lunaの安さを活かすなら、既定の推論量は max ではなく medium から始める。max は必要なときにだけ上げればいい。小さな調査、分類、下書き、既存コードの探索ならLuna / mediumで十分なことが多い。

model = "gpt-5.6-luna"
model_reasoning_effort = "medium"

[agents]
enabled = true
max_concurrent_threads_per_session = 3
default_subagent_model = "gpt-5.6-luna"
default_subagent_reasoning_effort = "medium"

すでに model[agents] があるなら、その行を直す。同じキーを二度書かない。approval_policysandbox_mode はモデル振り分けとは別の権限設定なので、この例を貼るために変えない。

3つの役割を作る:調査、実装、難しい判断

次に、~/.codex/agents/ に3ファイルを作る。調査と設計は読み取り専用にして、変更できる役割をTerraのworkerだけに絞る。

# ~/.codex/agents/explorer.toml
name = "explorer"
description = "コード探索、ログ確認、仕様照合をする読み取り専門の調査役。"
model = "gpt-5.6-luna"
model_reasoning_effort = "medium"
sandbox_mode = "read-only"
developer_instructions = """
変更しない。結論、根拠、対象パスを短く返す。
"""
# ~/.codex/agents/worker.toml
name = "worker"
description = "対象と完了条件が決まった実装・検証を担当する。"
model = "gpt-5.6-terra"
model_reasoning_effort = "high"
developer_instructions = """
最小差分で実装し、変更した範囲を検証する。
公開、削除、外部送信は親へ確認を返す。
"""
# ~/.codex/agents/architect.toml
name = "architect"
description = "設計判断、複雑な不具合、横断レビューを行う。"
model = "gpt-5.6-sol"
model_reasoning_effort = "xhigh"
sandbox_mode = "read-only"
developer_instructions = """
実装はしない。推奨、根拠、リスクを短く返す。
"""

名前は自由だが、namedescriptiondeveloper_instructions は必須。役割を広げすぎないほうが、親のCodexも選びやすい。

Solへ上げるのは、迷いが残る仕事だけ

モデルを上げる基準は「大事だから」だけでは弱い。目的があいまい、例外が多い、変更が戻しにくい、LunaやTerraで二度試しても判断が割れる。この4つのどれかがあるときだけSolへ渡す。

  • Luna:ファイルを探す、既存の仕様を要約する、候補を分類する、下書きを比較する
  • Terra:対象ファイルと完了条件がある実装、テスト、見た目の修正
  • Sol:設計の選択、原因が複数ある不具合、公開前の横断レビュー、不可逆な判断

そのまま使える依頼プロンプト

目的と範囲を記した依頼メモを作る人
依頼文に完了条件まで書く。

設定を変更してもらうときは、次をそのまま貼ればいい。大事なのは「最小差分」と「触ってはいけない設定」を先に書くことだ。

~/.codex/config.toml を確認して、Luna / medium を既定にしたい。

目的: 軽い調査・分類はLuna、明確な実装はTerra、
設計判断と横断レビューだけSolへ振り分ける。

やること:
- 既存設定を読んで、最小差分だけ提案・反映する
- explorer / worker / architect のCustom Agentを作る
- 調査と設計はread-onlyにする
- TOML構文を確認する

変えないこと:
- MCP、plugin、project設定
- approval_policy、sandbox_modeなどの権限
- 公開、削除、外部送信

完了条件:
- 変更したファイルと差分を短く報告
- 次の新規タスクで効くか確認する方法を示す
- 役割の選択基準を一行で残す

仕事を頼むときは、さらにこの一文を足す。

まずLunaで調査する。対象と完了条件が明確ならTerraへ渡す。
不確実・不可逆・設計判断だけSolへ上げる。
選んだ役割と理由を最初に一行で示す。並列化は独立作業だけ、最大3件。

最初から全部へ適用しない。10件だけ試す

完了した作業をチェックリストで確認する人
小さく試し、結果で判断する。

設定を保存したら、Codexを再起動して新しいタスクを開く。最初は10件だけでいい。調査の速さ、やり直しの回数、TerraやSolへ上げた理由を残す。うまくいけば50件へ広げ、そこで初めて全体の既定として定着させる。

モデルの名前より、役割・権限・昇格条件が先に決まっていることが大事だ。Lunaが安いからこそ、まず小さく試す。深く考える必要が見えたときだけ、TerraとSolを呼べばいい。

設定項目の仕様は変わることがある。変更前に、公式の Config basicsSubagents を確認してほしい。

コメントを残す