新PCでCodex環境を作り直したので、**私の“レシピ”**を置いておきます🍳
完全ハウツーではなく、となりの晩ご飯🍚的に「私はこうしてる」回です。
この記事は “グローバルだけ”(~/.codex/* の範囲)を整える話です。
repo固有(AGENTS.md / テストコマンド固定 / PRテンプレ / プロジェクト固有MCP)はスコープ外✂️
目次 🗂️
- 前提(ここはできてる想定)
- Codex CLIの導入と確認(儀式)
- まずはCLIでMCP(Context7)を追加する
~/.codex/config.tomlを“自分の正”にする- グローバル
~/.codex/AGENTS.mdを置く(ガードレール) - 完了チェック ✅
前提(ここはできてる想定)✅
- VS Code セットアップ済み
- VS Code拡張の Codex が動作している
- Node のグローバル環境ができている(
npm -gが使える) -
ghは普段通り使える(commit→push→PR作成まで)
この記事のスタート地点は 「VS CodeでCodexが動く」 です。
CLIはこのあと追加するけど、ここだけは“儀式”として最低限の手順を置きます🧪
Codex CLIの導入と確認(儀式)🧪
VS Code拡張だけでも戦えるけど、CLIを足すと MCPの追加みたいな作業をコマンドで済ませられるのが魅力です(config.toml直編集より私は楽)🔧
インストール
npm i -g @openai/codex
確認(私はこうなった)
❯ codex --version
codex-cli 0.77.0
❯ codex login status
Logged in using ChatGPT
まずはCLIでMCP(Context7)を追加する 📚
config.toml をいじる前に、私は先にこれを叩きます👇
codex mcp add context7 -- npx -y @upstash/context7-mcp
Context7が効かない時に疑うところ(だいたいここ)👇
-
node/npxが入ってない or 別環境を見てる - PATH(VS Codeをどこから起動したかで変わる)
- ターミナルが想定と違う(ログインシェル/非ログインシェル)
~/.codex/config.toml を“自分の正”にする 🧱
MCPを入れた上で、グローバルの基準値をここで固定します🍳
model = "gpt-5.2-codex"
model_reasoning_effort = "medium"
approval_policy = "on-request"
sandbox_mode = "workspace-write"
[features]
skills = true
[mcp_servers.context7]
command = "npx"
args = ["-y", "@upstash/context7-mcp"]
私の意図(味付け)🧂
-
model/model_reasoning_effort:まず基準値を固定(悩み始めると沼) -
approval_policy = "on-request":危ない操作は一呼吸入れて止める -
sandbox_mode = "workspace-write":書き込みはワークスペース内に閉じる
グローバル ~/.codex/AGENTS.md を置く(ガードレール)🛡️
「運用ガードレール」は config.toml より、私は グローバル AGENTS.md に寄せた方が管理しやすい派です。
(repo固有の AGENTS.md を作る前に、まずグローバルで“流儀”を固定)
## 言語
- 返答は常に日本語(簡潔・丁寧)。
- コマンド/設定例はコピペ可能な形で提示。
## 進め方(基本)
- まず現状把握:`git status` / 差分確認 / 関連ファイル検索。
- 変更後は必ず:lint/test(プロジェクト標準)→差分要約→コミット案。
## Git運用(commit〜PR)
- ブランチ作成 → 変更 → テスト → commit → push → PR作成までを一通り実施できる前提で動く。
- コミットメッセージは「変更理由 + 影響範囲 + 破壊的変更の有無」を含める(Conventional Commits推奨)。
## 安全
- トークン/秘密情報は出力しない。ログに残る操作(push/PR作成/権限付与)は実行前に要点を確認してから。
## ドキュメント参照(Context7)
- 実装に関わる提案(API/設定/CLIオプション/推奨構成)は、学習済み知識だけで断定せず **Context7で一次情報を確認**してから提示する。
- 特に「古いバージョンの手順が混ざりやすい」話題(メジャーアップデート、非推奨、破壊的変更)は **必ずContext7**。
- 参照した内容は「どのバージョン前提か」を短く明示してから提案する(例:vX.Y 前提)。
- 可能なら、プロジェクト側の実バージョン(package.json / lockfile / `--version`)を先に確認する。
## 高速化(最小)
- 検索は `rg` を最優先(`grep -R` / `find` は原則使わない)。
- ファイル探索は `fdfind`(`fd` は無い前提)。
- ファイル閲覧は `batcat`(`bat` は無い前提)。
- 差分確認は `git status -sb` → `git diff`(表示は `delta` 前提でOK)。
- 迷ったら `fzf` を挟む(`rg ... | fzf` / `fdfind ... | fzf`)。
## Web参照(curl連発防止:この環境は lynx/w3m あり)
- まずローカル一次情報(`--help` / `man` / repo内README/Docs)を優先。
- Webを読む必要がある場合は `lynx -dump` を第一選択(次点 `w3m -dump`)。
- `curl` / `wget` は最終手段。取得は原則「1URLにつき1回」まで(同URLの連発禁止、出力を再利用)。
トークン・鍵・社内URLなどの 秘密情報は貼らない/出力させない/コミットしない。
PR作成まで自動化するほど、ログや差分に混ざる事故が起きやすいので注意。
完了チェック ✅
- VS Code拡張でCodexが動く(前提)
-
CLIが入って
codex --version/codex login statusが通る -
codex mcp add ...で Context7 を追加できた -
~/.codex/config.tomlが意図通り(model / effort / approval / sandbox) -
~/.codex/AGENTS.mdで運用ルールが固定できた -
いつもの
ghフロー(commit → push → PR作成)が詰まらない 🎉
以上、私のCodex環境レシピでした🍳