Codex 05 拡張(MCP・Skills・Plugins・Hooks・Subagents)
更新日:
考え方は Claude Code の拡張 とほぼ同じ。置き場所と書式が違う。
MCP(外部ツール接続)
# ~/.codex/config.toml または .codex/config.toml
[mcp_servers.openaiDeveloperDocs]
url = "https://developers.openai.com/mcp" # リモート(HTTP)
[mcp_servers.context7]
command = "npx" # ローカル(stdio)
args = ["-y", "@upstash/context7-mcp"]
env_vars = ["LOCAL_TOKEN"] # 渡す環境変数codex mcp add .../codex mcp listでも管理、TUI では/mcp- MCP サーバーは毎回のメッセージにコンテキストを足す → 使わない時は無効化(利用枠の節約)
- 例: shadcn MCP、Cloudflare docs MCP
Skills(手順・知識のパッケージ)
SKILL.md を含むフォルダ。Agent Skills 共通規格なので Claude Code のスキルと考え方は同じ。
| 範囲 | 場所 |
|---|---|
| リポジトリ | .agents/skills/(現在地からリポジトリのルートまでの各階層) |
| ユーザー | ~/.agents/skills/ |
| 管理者 | /etc/codex/skills |
| システム | Codex 同梱(skill-creator など) |
/skillsで一覧・利用、有効/無効の切替- 配布したい時はプラグインにまとめる
- ⚠️ Claude Code は
.claude/skills/、Codex は.agents/skills/。両方で使うならシンボリックリンクなどで共有
Plugins
- スキル + コネクタ(Google Drive、Gmail、Slack、GitHub など)をまとめたもの。ChatGPT と Codex で共通のディレクトリから入手
/plugins、codex plugin、マーケットプレイス
Hooks(ライフサイクルで自動実行)
| タイミング | イベント |
|---|---|
| ターン中 | PreToolUse PermissionRequest PostToolUse PreCompact PostCompact UserPromptSubmit SubagentStop Stop |
| 中断時 | Interrupt |
| 開始時 | SessionStart SubagentStart |
| 終了時 | SessionEnd |
- 置き場所: 設定レイヤーの隣の
hooks.json、またはconfig.tomlの[hooks] - 同じイベントの複数 Hook は並列実行
- 管理者配布でない Hook は、確認して信頼するまで実行されない
- 用途例(公式): チャットをログ基盤へ送る、API キーの貼り付けをブロック、ターン終了時の検証、ディレクトリ別のプロンプト調整
Subagents(サブエージェント)
- 大きな作業を分割して並列に進め、メインのコンテキストを汚さない
- Ultra モードは自動でサブエージェントを活用
/agent(/subagents)でスレッド切替
カスタムエージェント(TOML ファイル)
場所: .codex/agents/(プロジェクト)または ~/.codex/agents/(ユーザー)
# .codex/agents/docs-researcher.toml
name = "docs_researcher"
description = "docs MCP で API やフレームワークの挙動を確認する専門家"
model = "gpt-6-luna"
model_reasoning_effort = "high"
sandbox_mode = "read-only"
developer_instructions = """
docs MCP サーバーで API・オプション・バージョン固有の挙動を確認する。
簡潔に答え、可能ならリンクや正確な参照を付ける。コードは変更しない。
"""- 必須:
namedescriptiondeveloper_instructions。その他model、sandbox_mode、mcp_serversなども書ける - 同時実行数:
[agents] max_concurrent_threads_per_session = 6 - 依頼例(公式): 「main との差分をレビュー。pr_explorer に影響範囲を調べさせ、reviewer に実際のリスクを探させ、docs_researcher にパッチが依存する API を検証させて」