

Codex IDE拡張機能でコードを編集し共有前に差分を確認する
エディタで開いているファイルの横でCodexを使えば、小さな画面の不具合を直し、変更行を確認し、共有前に自分で試せます。最初は約30分を見込んでください。VS Codeまたは対応エディタ、Codex拡張機能、検証用リポジトリ、利用可能なアカウントが必要です。目指すのは範囲が明確な変更、読んだdiff、実行したテストです。
OpenAIのCodex IDE extensionガイドでは、開いているファイルや選択したコードを依頼に含め、要約と編集をその場で確認し、同じチャットで追加の質問をする流れが説明されています。ターミナルから始めたい場合は、Codex CLIで初めて変更する方法を参照してください。この記事では、エディタ内で文脈と変更を一緒に扱います。
準備
ツール: VS Code、Cursor、WindsurfにCodex拡張機能をインストールします。リポジトリを開き、Codexのアイコンを選びます。見えなければCommand PaletteでCodex: Open Codex Sidebarを実行します。画面の案内に従ってサインインしてください。XcodeとJetBrainsには別の連携があります。以下はVS Code系の拡張機能を使う手順です。
入力: 目で確認できる小さな不具合を選びます。たとえば、メール欄が空でも「送信」ボタンが有効なままになる問題です。画面のファイル、関連するテストファイル、リポジトリのテストコマンドを確認します。コマンドが不明ならREADMEを見ます。OpenAIが勧めるように、作業を任せる前にGitのチェックポイントを作り、比較や取り消しができるようにします。
境界: 別の作業ブランチを使い、実際の顧客データや秘密情報を例にしないでください。Codexにコマンドを実行させる前に権限を確認します。方法はCodexの範囲と承認を確かめるガイドを参照してください。コードの選択は質問の文脈を示すもので、agentに追加のアクセス権を与えるものではありません。
手順
1. 正しいコードを開き、必要な文脈だけを渡す
フォームのファイルを開き、「送信」ボタンを制御するコードを選びます。Codexの入力欄では、開いているファイル、選択範囲、最近のチャットを参照できます。拡張機能のコマンドには、選択範囲を追加するchatgpt.addToThreadと、ファイル全体を追加するchatgpt.addFileToThreadがあります。Command Paletteから探せます。/ide-contextはIDEの文脈を自動で含める設定を制御します。
不具合の場所が分からないというだけで、リポジトリ全体を一度に渡さないでください。まずCodexにファイルのパスを示してもらい、自分で開いて確認します。場所が分かっているなら、ファイルと現在の動作を明示します。最初は読み取りだけの依頼にします。
[フォームのファイルパス]と選択したコードを見て、メール欄が空でも「送信」ボタンが有効な理由を示してください。先に処理の流れと関連するテストファイルを説明してください。まだコードは編集しないでください。
役立つ回答には、具体的な関数や行、現在の条件、確かめる方法があります。根拠となるコードを示さず推測する場合は、証拠を求めてください。ファイルを読んだり編集したりするagentに慣れていなければ、AIエージェントの基礎が参考になります。
2. 範囲を限定した変更を一つ依頼する
ファイルを確認したら、小さな変更を依頼します。利用者に見える結果、ファイルの範囲、検証方法を伝えます。角括弧の部分はリポジトリの実際のパスに置き換えてください。
[フォームのファイルパス]を変更し、メール欄が空か空白文字だけの場合に「送信」ボタンを無効にしてください。有効なメールアドレスの場合の動作は保ってください。既存のフォームテストがあれば、その関連テストを更新してください。他の画面は変更しないでください。変更後に、変更したファイルと実行したテストコマンドを列挙してください。
提案された変更が認証、決済、データファイルに及ぶなら、いったん止めて範囲を考え直します。小さな依頼でも、Codexが一つのファイルしか変更しないとは限りません。変更ファイルの一覧を読み、追加の変更を残す前に理由を確認してください。
Developer settingsによると、Codexの作業中に送るメッセージは既定で待ち行列(queue)に入り、設定により現在の実行を誘導(steer)できます。CmdまたはCtrl + Shift + Enterで、一つのメッセージについて動作を反転できます。急な制約を追加するときはモードを確認してください。待ち行列のメッセージは進行中の編集にまだ反映されていません。
3. 要約を読み、エディタでdiffを確認する
Codexが完了を告げたら、要約で変更場所を把握し、各ファイルのdiffを開きます。IDEガイドは、ソースの横で変更を見て、同じチャットで質問を続ける方法を説明しています。要約は道案内であり、実際に変わった行を示すのはdiffです。次を確認します。
- 指定した条件でだけボタンが無効になり、有効な入力では使えますか。
- 空白文字だけの入力も処理されていますか。
- テストは空欄と有効な入力の両方を扱っていますか。
- 関係ないファイルの変更、削除、大規模な整形はありませんか。
- tokenの読み取り、ネットワーク送信、権限設定の変更は加わっていませんか。
すべての実装を理解していなくても、diffの確認には意味があります。分かりにくい行はCodexに説明を求められますが、リポジトリの担当者かreviewerも読む必要があります。誤りがあれば、どの部分を消すか直すか指定します。追加のやり取りの後はdiffを再確認してください。最終版は最初の版と異なる場合があります。
4. テストを実行し、未コミットの変更をreviewする
リポジトリのテストコマンドを実行し、出力を読みます。依存関係が足りないなどの理由で実行できなければ、その理由を記録し、適切な環境を持つ人に引き継ぎます。画面の変更なら、検証ページを開き、空のメール欄と有効なメールアドレスの両方を試します。自動テストと手動確認は異なる点を確かめます。
diffができたら、入力欄で/reviewを使い、Codexに未コミットの変更を確認させたり、基準ブランチと比較させたりできます。OpenAIのIDEコマンド一覧にある機能です。依頼は具体的にします。
「送信」ボタンの作業に関する未コミットの変更をreviewしてください。ロジックの誤り、境界条件、不足しているテストを探してください。各指摘にはファイルパス、関連する行、理由を書いてください。このreviewではコードを編集しないでください。
/reviewは確認を一巡追加するものです。diffを読むこと、テストを実行すること、人が承認することの代わりにはなりません。エディタ設定のchatgpt.reviewDeliveryは、可能な場合は既定でinlineです。別のreviewチャットが必要ならdetachedを選びます。これはエディタでの表示設定で、コマンド権限のポリシーではありません。
5. 検証記録を残してから共有する
commitやpull requestの前に、目標、変更ファイル、テスト結果を記録します。画面に見える変更なら前後の画像も残します。review後に最終diffを読みます。変更の一部だけを残すなら、エディタのGit機能で選択し、テストを再実行します。Codexの「修正済み」という返事は、共有リポジトリにコードが送られたことを意味しません。
作業が大きくなる、または別の実行環境が必要になる場合、アカウントに権限があればCodex IDE extensionからCodex webへ委任できます。結果はエディタに戻って確認します。Codex Cloudで不具合からpull requestに進むガイドがその流れを説明します。この記事では、エディタで完結する小さな変更を扱います。
結果の例
検証用リポジトリで、Codexはdisabledの条件が空白を除去していないと指摘します。あなたはフォームの修正と二つのテストを依頼します。Diffにはコンポーネントとテストファイルだけが現れます。テストコマンドは成功し、手動確認ではメール欄が空ならボタンが無効、有効なアドレスなら使えるようになります。/reviewで新たな問題がなくても、reviewerはpull requestの前にdiffを読みます。テストが失敗した場合は、失敗と理由をそのまま記録します。
結果を良くするコツ
- 最初は選択範囲か関連する一つのファイルだけを渡し、必要な理由があるときに追加します。
- 一度に依頼するのは、観察できる一つの動作と、それに対応する一つの確認です。
- Gitのチェックポイントを作り、毎回diffを見ます。
chatgpt.*はエディタ設定に置きます。Developer settingsは、CLIと共有するモデル、権限、sandbox、MCPの設定を持つconfig.tomlと区別しています。- Windowsでは、リポジトリとツールがWSL2にある場合に
chatgpt.runCodexInWindowsSubsystemForLinuxが役立ちます。変更するとVS Codeが再読み込みされます。
知っておきたい制約
IDEの文脈があるだけで、Codexがリポジトリ全体を理解したとは限りません。開いているファイルが古い、選択範囲に関連する関数がない、手元でテストが動かないといったことがあります。証拠が不足するなら、関連ファイルを開いて質問を続けます。セキュリティ、決済、顧客データに関わる変更は、その分野のreviewerが必要です。
chatgpt.*はエディタでの拡張機能の表示やメッセージ処理に影響しますが、agentに権限を与えません。一方、config.tomlや組織のポリシーはCLIとIDEの両方に影響する可能性があります。権限エラーを直すために画面の設定を無作為に切り替えないでください。OpenAIがボタン名や導線を更新することもあるので、作業時の画面を確認します。
よくある質問
CursorやWindsurfでもこの手順を使えますか? OpenAIはCodex拡張機能に対応するエディタとして挙げています。ボタンの位置は異なる場合がありますが、Codexアイコンとサイドバーを開くコマンドが出発点です。
コードを選択すれば、Codexが編集できるのはその部分だけですか? いいえ。選択範囲は依頼の文脈です。編集範囲を明示し、実行後にdiff全体を確認してください。
/reviewはテストも実行して、コードの正しさを保証しますか? いいえ。変更のreviewを開始します。テストの実行と結果の確認、目的の動作の検証は別に必要です。
追加メッセージが進行中の編集に反映されないのはなぜですか? chatgpt.followUpQueueMode = queueで待ち行列に入った可能性があります。現在のモードを確認し、すぐ適用したい場合は実行を誘導します。
モデルを変えるにはVS Codeのchatgpt.*を編集しますか? いいえ。モデルやCLIと共有するagent設定はconfig.tomlにあります。chatgpt.*はエディタ内の拡張機能の動作を制御します。
公式資料:Codex IDE extension、Developer settings、Developer commands。OpenAI Learn、2026年10月5日確認。





