Codexを始めよう

OpenAI・サムアルトマン
この記事は約42分で読めます。


本動画は、OpenAIが提供するコーディングエージェント「Codex」の包括的な入門ガイドである。DerekとCharlieの二人の専門家が、Codexの基本的なセットアップから高度な活用方法まで、実践的なデモンストレーションを交えながら解説している。特にCLI(コマンドラインインターフェース)とIDE拡張機能を中心に、agents.mdファイルによるプロジェクト設定、config.tomlでのカスタマイズ、効果的なプロンプティング技術、MCPサーバーとの統合、そして構造化出力を用いたプログラマティックな活用まで、開発者がCodexを最大限に活用するための実用的な知識が網羅されている。GitHubとの連携やCI/CD統合といった高度なユースケースも紹介され、Codexが単なるコード補完ツールではなく、ソフトウェア開発ライフサイクル全体を支援する強力なエージェントであることが示されている。

Getting started with Codex
Get started with Codex, OpenAI’s coding agent, in this step-by-step onboarding walkthrough. You’ll learn how to install ...

Codexの紹介とセットアップ

こんにちは、本日のCodexを始めようセッションへようこそ。私はDerekです。

そして私はCharlieです。

私たちは顧客がCodexにオンボーディングするのを支援する仕事をしています。AIコーディング分野は本当にエキサイティングな時期にあり、開発者の働き方を急速に変えています。Codexは、開発者がさまざまな場面で使用できるOpenAIのコーディングエージェントです。

私たちは、開発者が日常的で時間のかかるタスクをCodexに委任し、設計やアーキテクチャのような複雑で新しい課題により多くの時間を費やしているのを直接目にしてきました。また、開発者コミュニティからCodexに対して多くの興奮が寄せられています。本日のセッションの目標は、Codexの高レベルな紹介を提供することです。

いくつかの異なるトピックをカバーしていきます。まず、Codexの紹介、それが何であるか、製品の範囲について説明します。次に、インストールとセットアップ、Codexの始め方についてお話しします。その後、agents.md、つまりCodex用のreadme形式と、config.tomlでCodexを設定する方法について掘り下げます。

また、Codexでのプロンプティングとそのベストプラクティスについても説明します。CLIとIDEのヒントやトリック、MCP設定についてお話しし、高度なユースケースに踏み込み、フォローアップのための追加リソースを提供します。Codexは現在、複数のクライアントで使用できます。CLIはターミナルでの軽量なインタラクションを可能にします。

また、より高度なプログラマビリティのためのヘッドレスSDKモードも提供しています。CodexのIDE拡張機能は、VS Codeベースのあらゆる環境で動作し、開発者がリッチなグラフィカルユーザーインターフェースでコードを書くことを可能にします。必要に応じて、クラウド環境でリモートタスクを開始することもできます。Codexのクラウド環境を使用すると、ラップトップを閉じた状態でも、バックグラウンドで複数の並列タスクを実行できます。

コードレビューのような非同期タスクを開始したり、モバイルフォンで移動中に作業したりするのに理想的です。本日のセッションでは、CLIとIDE拡張機能に焦点を当てます。

Codexの活用シーンと最新モデル

顧客が現在Codexを使用している方法と、それがチームのワークフローとどのように統合できるかについて、いくつかご紹介します。Derekが述べたように、PRが開かれるたびにCodex cloudでコードレビューを開始でき、Codexはコメントを提供し、本番環境にマージされる前に重大なバグや問題を発見できます。Slackのメンションでも使用できます。Codexをslackに統合し、@メンションすると、チームとチャットしていた会話スレッド全体を拾い上げて実装し、PRを提供してくれます。Codex SDKを使用して独自の統合を構築することもできます。

これにより、独自のコンテナでプログラマティックにCodexを実行でき、Codexから構造化されたコードの出力を得ることができます。これについては、プレゼンテーションの後半でカバーします。OpenAIは本質的に研究会社であり、Codexは最先端のモデルに支えられています。最近では、エージェンティックコーディングのための最高のモデルであるGPT-5.1 Codex Maxが登場しました。

これはCodexハーネス内で特別にトレーニングされており、私たちの継続的な焦点は、各モデル世代がより効率的になり、より速く長く実行でき、さらに優れた本番対応コードを生成できるようにすることです。私たちのモデルは、Linux、macOS、Windows環境でネイティブにトレーニングされています。

そのため、bashやPowerShellで非常に信頼性が高く、サンドボックスルールを遵守します。また、長い会話を正確に自動圧縮できるようにモデルをトレーニングしています。これにより、Codexに長時間実行されるタスクを任せることができます。例えば、大規模なリファクタリングタスクなどです。

Windowsサポートとそれらの長時間実行タスクは、Codexで最も多く寄せられている機能リクエストの2つです。

確かにそうですね。また、最近、AIネイティブなエンジニアリングチームを構築する方法についてのガイドを公開しました。コーディングエージェントを使用して、ソフトウェア開発ライフサイクルのさまざまな部分をどのように加速できるかについて説明しています。計画と設計から文書化とメンテナンスまでをカバーする7つのフェーズに分けました。

本日のセッションを進めていく中で、これらのさまざまな分野でCodexがチームをどのように支援できるか考えていただきたいと思います。ここでは基本から始めていますが、これらすべてはソフトウェアライフサイクル全体に適用可能です。それでは始めましょう。改めて簡単にお伝えしますが、本日のセッションの焦点はCLIとIDEサービスです。

オープンソースのリポジトリを使用します。Codexを初めて使用する方は、同じリポジトリを使用するか、お好みのリポジトリを使用して一緒に進めることを強くお勧めします。それでは早速始めましょう。どうやって始めるのか。まず、ローカルマシンにCodex CLIをインストールすることから始めましょう。インストールにはいくつかの方法があります。

brewまたはnpmを使用してインストールできます。これが最も最新の状態を保てるため、推奨される方法です。私たちのチームは非常に迅速に出荷しています。週に複数回ということもあります。この方法を使えば、常に最新リリースを利用できます。Codexセッションを実行する際にも、新しいバージョンにアップデートするよう上部にバナーが表示されます。

必要であれば、Codexはオープンソースなので、GitHubで最新のバイナリリリースを確認できます。各バージョンのより具体的な変更については、開発者ウェブサイトの変更ログも確認できます。VS CodeにもCodex拡張機能をインストールできます。そのためには、VS Codeを開き、拡張機能タブをクリックして、OpenAI Codexを検索します。

ここで見られるように、OpenAIが作成した公式のものを探してください。ダウンロードすると、持っているバージョンが表示されます。プレリリースバージョンとリリース候補を切り替えることができます。また、自動更新のオンオフも切り替えられます。

IDE拡張機能の最新の更新を確実に確認できるように、自動更新をオンにすることを強くお勧めします。それでは、ChatGPTエンタープライズアカウントで実際にサインインしてCodexを使用する方法についてお話ししましょう。2つの異なる方法があります。どちらの方法を使用しても、両側でサインインされます。IDE拡張機能では、最初に開くと、サインインと表示されるスプラッシュ画面が表示されます。

それをクリックすると、Codex CLIで表示されるのと同様のサインインページに移動します。これから実演します。Codex CLIでは、Codex loginと入力するだけで、仕事用のメールアドレスでサインインできるページに移動します。おそらく内部SSOを経由してログインすることになるでしょう。

それが完了すると、CLIとIDE拡張機能の両方で、コンピューター上でローカルにCodexを使い始めることができます。それでは戻りましょう。Codex CLIに入ると、すぐに実行方法をお見せしますが、このセッション全体で注目すべきいくつかのスラッシュコマンドがあることがわかります。

最初のコマンドは/statusです。これは、使用しているモデル、ディレクトリ、サンドボックスモード、承認ポリシー、残りのコンテキストウィンドウの量など、高レベルな概要を提供します。例えば、CLIに戻ると、私はこの特定のバージョンを使用しており、このモデルを使用し、現在agents.mdディレクトリにいます。/statusに移動すると、アカウントとセッションIDを含む特定の設定セットを使用していることがわかります。

それでは、本日使用するリポジトリをクローンすることから始めましょう。ここで見られるagents.mdウェブサイトを使用します。Charlieがagents.mdとそれがなぜ重要かについて詳しく話しますが、本日はオープンソースのこのリポジトリをクローンします。下のリンクからそのリポジトリをクローンしたら、そのファイルにcdして、npmをインストールし、npm run devを実行します。

ローカルで実行できるようになります。私もここで同じことをします。npm run dev。

メタ的ですね。agents.mdのマイクロサイトを使いながら、agents.mdについて話しているんです。

まさにその通りです。

でも、本日はagents.mdを徹底的に伝えたいんです。

そうですね。素晴らしい。それでは、agents.mdをセットアップし、現在ローカルで実行しています。agents.mdについてもう少し深く掘り下げるために、Charlieに引き継ぎます。

agents.mdの活用方法

素晴らしい。それでは、プロジェクトを設定し、それに取り組みたいと思います。agents.mdを使用して、このプロジェクトがどのように機能するかをCodexに理解させることができます。なぜagents.mdが必要なのでしょうか。考えてみると、コーディングエージェントはセッション間でコンテキストを保持しません。

起動するたびに、新鮮なコンテキストウィンドウで入ってきます。agents.mdは、プロジェクトの背景、概要をエージェントに与えたい指示が常に自動的に読み込まれることを保証します。Codexを起動するディレクトリにこのファイルがあれば、Codexは常にこのファイルを読み込みます。

基本的には、エージェントがプロジェクトを迅速に理解し、実際に作業を行うために必要なコンテキストを取得できるようにする軽量なreadmeとして使用できます。agents.mdを使用する方法はいくつかあります。Codex CLIで/initコマンドを使用して作成でき、これにより作業しているディレクトリにagents.mdファイルが自動生成されます。Codexホームフォルダにagents.mdファイルを作成することもできます。これはグローバルなagents.mdです。

これは、Codexに常に従ってもらいたいグローバルな設定に適しています。使用する特定のツールや、エージェントに動作してもらいたいさまざまな方法などです。プロジェクト内やサブディレクトリ内に異なるagents.mdファイルを作成することもでき、これらはリポジトリ固有のコンテキストを提供するのに非常に適しています。

通常、プロジェクトのgitルートに1つ配置します。これがCodexの出発点となります。そこでCodexを起動することが多いからです。また、サブディレクトリにも含めることがあり、Codexがそのディレクトリに入ると、ここで実際に作業している内容、注意を払う必要があるコンテキストを伝えます。

素晴らしい。agents.mdには何が含まれているのでしょうか。一般的なセクションとしては、プロジェクトの概要と構造があります。さまざまなファイルの場所についてCodexにポインタを提供します。また、プロジェクトのビルド方法とテストコマンドの実行方法も含まれます。

GitHub CLIなど、自分自身で使用する可能性のある便利なCLIツールや、統合したいさまざまなMCPサーバーについても記載します。また、Codexにワークフローを提供し、最初から最後までフィーチャーを実装する方法について説明します。最後に、エージェントが他のタスク固有のガイダンスを含む異なるファイルへのポインタを含めることができるため、エージェントはプロジェクトでの作業方法について詳しく知りたい場合に段階的に発見できます。

ここで推奨するベストプラクティスをいくつか紹介します。1つ目は、簡潔で焦点を絞った内容にすることです。あまりにも多くの指示を含めると、コーディングエージェントを混乱させる可能性があり、何に注意を払うべきかわからなくなったり、矛盾している場合は、それらを解決する方法を理解するのに多くの時間を費やしたりします。

OpenAIのagents.mdファイルのほとんどは、モノレポを調べた結果、100行未満でした。実際にそれほど長くする必要はありません。2つ目の推奨事項は、エージェンティックループのロック解除に焦点を当てることです。エージェントにフィードバックを与えたり、リンターやテストなどのツールからフィードバックを得る方法を与えたりして、作業を検証できるようにすると、エージェントができることが大幅に加速されます。

ここで構築すべき良い直感は、Codexを実行した後、コードがコンパイルされたかどうかを確認したり、スクリーンショットを取得したりするためにコマンドを実行している場合、それらを異なるコマンドとしてCodexの指示に追加し、Codex自身にそれを実行させて、それらのループをロック解除できるかどうかを確認することです。

次に、Codexが遭遇した間違いや落とし穴に応じて、agents.mdファイルを継続的に更新することをお勧めします。Codexがロールアウトを実行しているのを見ていて、テストスイートを実行するために必要な特定のコマンドを導き出すのに非常に長い時間がかかった場合は、次回そのコマンドをagents.mdに追加して、Codexがそれをコンテキストに引き込み、はるかに速く実行するのを見てください。タスク固有のファイルを指すこともでき、次のセクションでこれについて説明しますが、基本的にメインのagents.mdファイルから他のMDファイルを参照します。

Codexをタスク固有のドキュメントに向ける例を見てみましょう。agents.mdを使用して、Codexに他の場所を探すように指示できます。agents.mdは常にコンテキストに読み込まれます。そのため、一般的である必要があります。ここでできることは、タスク固有のドキュメントというセクションを追加し、リポジトリに配置されているさまざまなタスク固有のドキュメントを呼び出すことです。

例えば、大規模なタスクを計画するためのexec_plans.mdファイルや、フロントエンドタスクを実行するための特定のfront-end.mdファイル、大規模なアーキテクチャ変更を必要とするフィーチャーを実行する際に行う必要がある特定のアーキテクチャの判断を概説するarchitecture.mdファイルがあるかもしれません。

Codexはこれをagents.mdで読み取り、コンテキストでこれらのものを呼び出せることを理解し、必要に応じてファイルに移動してコンテキストに読み込みます。これにより、これらについて段階的に発見し、与えられているさまざまな課題に対応できるようになります。

計画テンプレートと設定ファイル

plans.mdで計画テンプレートを提供する例を見てみましょう。agents.mdを使用してCodexをplans.mdファイルに向けることができます。これは基本的に、取り組みたい大規模な複数ステップのプロジェクトの計画を構築する方法をエージェントに伝えるテンプレートです。Codexはこの実行計画をテンプレートとして使用してマークダウンファイルを生成し、この個別の計画を生きたドキュメントとして更新できます。

チェックリストの項目を実際にチェックし、進捗状況を更新します。これにより、Codexは大規模なリファクタリング、コードベース全体にわたる大規模なスイープ、または複数時間のプロジェクトタスクの作業を、実行方法を追跡し、進捗に応じて更新できる場所を持つことで、より効果的に実行できます。

MCPサーバーもこれに使用できますが、モデルが読み取れるマークダウンファイルを持ち、チケットをチェックインすることに勝るものはありません。コンテキストを最新の状態に保つことが簡単になります。

plans.mdの使用例は、ここにリンクしたOpenAIクックブックでも確認できます。

agents.mdは結局のところチートシートです。Charlieが先ほどplans.mdで挙げた例ですが、私たちのエンジニアの一人は、Codexで10時間以上のリファクタリングを実行でき、最終的に成功しました。

これは、現在Codexを何に使用できるかの素晴らしい例です。

それでは、agents.mdに加えて、作業方法に合わせてCodexをさらにカスタマイズする方法について、設定tomlファイルについて話しましょう。Codex CLIはRustで書かれているため、tomlファイルになっています。右側で見られるように、Codexセッションを開始する際にデフォルトで実行されるようにカスタマイズできるいくつかの異なる領域があります。

例えば、デフォルトモデル、デフォルトモデルの推論努力、サンドボックスモード、承認ポリシーを指定できます。これについては次のスライドで説明します。また、特定の機能をデフォルトでオンにすることもできます。例えば、ウェブ検索です。異なるプロファイルを指定することもできます。例えば、最速のモデルで最も低い推論努力にデフォルト設定されたCodexセッションを開始したい場合があります。

そのため、fastというプロファイルを作成しました。codex -p fastと実行するだけで、セッションのその特定の設定が作成されます。Charlieが述べたように、MCPはCodexと連携するように設定できる領域でもあります。この例では、セッションの後半でカバーする予定のMCPの1つが右側にあります。

これは氷山の一角に過ぎません。このスライドで見られるように、Codexで実行できる設定は数多くあります。このウェブサイトにアクセスすると、さまざまな設定を確認できます。

私のお気に入りの設定の1つは、ターミナル通知です。Codexがタスクを完了したときにポップアップを取得できるようになります。これが好きではない人もいますが、実際には気に入っています。Codexがバックグラウンドで実行され、完了したときにベルを鳴らしてくれるからです。いいですね。

たくさんのベルが鳴りますね。

最後のスライドに戻りますが、承認ポリシーとサンドボックスモードについて、もう少し掘り下げたい2つの領域があります。Codexのデフォルトは、承認モードをリクエストに設定することです。これは、Codexがエスカレートされた権限を求める必要があると判断するまで実行されることを意味します。もう1つのデフォルトは、サンドボックスモードとしてworkspace writeです。これは、Codexが現在のディレクトリ内のファイルに書き込み、それ以外には書き込まないことを意味します。

ただし、ここで見られるように、Codexセッションを開始する際にデフォルトで変更できる設定がいくつかあります。素晴らしい。Codexでのプロンプティングについて話すために、Charlieに引き継ぎましょう。

プロンプティングのベストプラクティス

それでは、agents.mdファイルの作成と同様に、プロンプトは基本的にCodexに与えたい究極のコンテキストです。優れたプロンプトを書くことが、Codexから何を得るかを本当に決定します。

普遍的に役立ついくつかのヒントがあります。1つ目は、@メンションを使用して、焦点を当てたいコードベース内のファイルをCodexに示すことです。私はこれをよく使用しますが、必ずしも最終的に分析したりプルしたりしたいファイルである必要はありません。

しかし、Codexがコードパスを横断し始めることができる出発点、アンカーポイントは本当に役立ちます。エージェントが軌道を外れるのを見るとき、多くの場合、実行しようとしていることに実際には関連のないコードベースの一部を探し始めているためです。これでアンカーできれば、非常に役立ちます。

次の推奨事項は、大規模なタスクに移る前に小さなタスクから始めることです。Codexのようなツールでのプロンプティングが初めての場合、小さなタスクの方がテストやレビューが簡単です。慣れてくると、Codexにますます多くのタスクとより大きな作業単位を依頼するようにランプアップできます。

ただし、ヒントとして、実際にCodexを使用してタスクを分解するのを手伝ってもらうこともできます。コードベースを見て行うことができます。フィーチャーを実装する方法を理解し、小さなタスクに分解するための純粋な調査作業を依頼すると、実際には非常に小さな作業単位を考え出してくれます。その後、それらのプロンプトを実行し、フォローアップして一緒に進めることができます。

検証ステップを含めることを常にお勧めします。Codexに作業をチェックするステップを提供します。例えば、テストの実行、リンターなどです。これがagents.mdにない場合は、プロンプトに含めることをお勧めします。これを行う別の方法は、このフィーチャーが完了したと見なされるために実装する必要がある要件をCodexに伝えることです。作業を進める際に、それを進捗を測定する基準として使用できます。

次はデバッグについてです。これはCodexのトップユースケースの1つですが、完全なスタックトレースをCodexに貼り付け、Codexに完全な詳細を提供するだけです。Codexはそれを使用してコードベースをナビゲートし、エラーを生成しているものを見つけることができます。非常に役立ちます。前述のように、agents.mdを使用してCodexの作業方法をカスタマイズできます。

また、オープンエンドのプロンプトを試すことをお勧めします。これは、フィーチャーの改善やパフォーマンスを向上させる方法についてアイデアをブレインストーミングするのに最適です。フィーチャーを実装した後、次に何を構築することを検討するかCodexに尋ねることができます。Codexは実際にコードベースを見て、追加したいものを総合的に考えるのが本当に得意です。

開発者ウェブサイトには詳細情報があり、Codexのプロンプティングガイドも確認することをお勧めします。

Codexが行う素晴らしいこともあります。Codex CLIは実際に、プロンプトを尋ねたときに次のステップ、提案される次のステップを提供してくれます。これは、あなたが言ったように、ブレインストーミングの会話を続けるための素晴らしい方法です。

それでは、優れたスタータータスクをいくつか紹介します。本日Codexを試す場合、コードベースを説明してください。興味のあるものや会社の別のチームのコードベースに基づいて、簡単なreadmeを書いてください。バグ修正に使用してください。スタックトレースを貼り付けて、バグを修正してもらいます。

テストカバレッジを拡大してもらいます。フィーチャーを見て、考慮する必要があるエッジケースはどこにあるか尋ねます。テストカバレッジを完成させるために追加する必要がある他のものはありますか。そして、それらのテストを構築してくれます。また、複数のファイルにわたるリファクタリングも行います。複数の異なる実装に広がっている汎用コンポーネントを作成したい場合があります。

Codexはパターンを調べて識別し、そのコンポーネントを抽出して、すべての異なるインターフェース全体で汎用的にすることができます。そのような種類のリファクタリングタスクは本当に得意です。

ドキュメント作成という過小評価されている領域があります。エンジニアは通常それを好みません。ですから、Codex CLIを使用して必要なドキュメントを書くのを手伝ってもらうのが大好きです。

物事を構築する際に最新の状態に保ちます。それでは、CLIでこれを見てみましょう。読み取り専用プロンプトを送信し、Codexで推論努力を変更する方法です。CLIにいる場合、Codexを起動し、/modelsを使用して低、中、高の間で切り替えることができます。

これがVS Codeでどのように見えるか、お見せしましょう。VS Codeにいて、ここのサイドパネルでCodexを開きます。下部にいくつかのオプションがあります。本日焦点を当てるローカルで作業するかどうかを選択できます。

ただし、クラウドでタスクを実行することもできます。Codex cloudに接続している場合、エージェントにクラウドコンテナをスピンアップさせ、それらのコンテナで複数の異なるイテレーションを並行して実行させることができます。異なるバージョンを進めるための素晴らしい方法です。また、Codexがアクセスできるさまざまなモードに切り替えることもできます。

これについては、コードベースについて尋ねるだけです。チャットモードにしますが、エージェントモードやエージェントフルアクセスモードやカスタム設定モードにすることもできます。最後に、ここで使用したい異なる推論モデルや異なるモデルと、Codexに使用させたい推論レベルを選択できます。

これはかなり簡単な質問です。このプロジェクトについて教えてくれますか、と尋ねます。これをよりカスタムにすることができます。実際にプロジェクトで何が起こっているかを調査します。ここで思考の連鎖を開始しているのがわかります。作業を開始すると、従っているステップを確認できます。

試していることの要約が表示されます。実際には、ここで読み取ったファイルを確認できます。完了すると、実際に確認できる完全な要約が生成されます。私が大好きなより高度な使い方の1つは、実際にgit履歴を調べるように依頼することです。コマンドラインでgitを使用するのと同じように、誰がこのファイルにコミットしたか、またはプロジェクトで最近行われた変更は何かを把握できます。

オンボーディングには非常に役立つ方法です。

Codexは何でも知っている歴史家です。

そうですね。読み取り専用のプロンプトを送信する例ですが、明らかに変更を加えることもできます。ここにすでに作成した例があります。このagents.mdプロジェクトのファイルがどのように関連しているかを示す、assets.htmlという単純なHTMLページを作成したいと思いました。

マークダウンファイルを生成するか、完全なドキュメントウェブサイトを生成できます。それでは、ドキュメントウェブサイトを生成しましょう。どのようにしたかをお見せします。ここに戻って、実際に持っているさまざまなプロンプトを表示すると、ここで進行中の異なる会話を確認できます。これに入ると、ここで単純なHTMLサイトを作成した場所がわかります。

このassets.htmlファイルを作成してくれました。サイドパネルで開くためにクリックできます。また、思考の連鎖の要約を確認することもできます。Codexは実際にこれをここのファイルとして実装しました。ここで引き上げて取得すると、assets.htmlにあります。

Chromeに移動してそれを表示します。ここでChromeで開くと、タブを移動できます。Chromeにタブを移動します。もう一度ここで立ち上げましょう。

ここにあります。

ああ、ありました。Chromeでタブを移動すると、これを開くことができます。ここにすでに生成された本当に素晴らしいドキュメントページがあります。プロジェクト内のさまざまなフローや、すべての異なるファイルが何をするかを呼び出しています。

繰り返しますが、非常にシンプルな例ですが、Codexが迅速に生成できるもののクイックランスルーです。それでは、ここでプレゼンテーションに戻りましょう。それができました。サイトにさらなる変更を加えるプロンプトを送信することもできます。ドキュメント化するだけでなく、既存の機能を変更するようなものです。

これについては、例えば、「explore examples」の横に「view on GitHub」ボタンと、おそらくダウンロードボタン、そしてページのマークダウンをコピーする別のボタンを実装できますか、と言えます。これを行うために必要なのは、ここで新しい会話を開くことだけです。新しいチャットを開始して、リポジトリをダウンロード、GitHubにリンク、サイトのマークダウンをコピーするためのヒーローボタンを実装できますか、と言います。

それを始めましょう。実際に、これを一時停止します。実装できるようにエージェントモードに切り替えます。そして、もう一度これを実行します。これによりCodexが開始され、実際にこれらの新しいボタンを実装するために作業します。

ファイルを探索しているようです。どこに配置したいかを把握するために、ヒーローファイルを読んでいます。IDの良い点の1つは、Codexが参照しているファイルをクリックして開くことができるピルが提供されることです。一緒に追うことができます。

実行したいさまざまなステップをどのように考えるかを示す計画タスクリストを考え出しました。完了すると、実際にこれらのボタンがサイトに追加されます。そこで少し作業して、追加したいものを正確に理解します。

そうですね。タスクが終了しました。エージェントをブラウザで確認すると、リポジトリをダウンロードしたり、GitHubで表示したり、マークダウンをコピーしたりできるいくつかの異なるボタンが追加されていることがわかります。Codexは、そこでの簡単なプロンプトに基づいてそれを実装してくれました。

それでは、いかに迅速に物事を実装できるか、かなりクールですね。

CLIとIDEのヒントとトリック

それでは、CLIとIDEの2つのサーフェス全体でのさまざまなヒントとトリックについてお話ししましょう。ありがとう、Charlie。Charlieがこれについて先ほど簡単に言及しましたが、コードベース内の特定のファイルをCodexに指すことができます。

例えば、CLIでは、任意のファイルを素早く@メンションできます。ファイルを指定して質問をすることができるので、Codexは正確にどこを見るべきかを知っています。また、IDE拡張機能内でも同じことができます。特定のファイルを選択できます。ここで注意すべきことの1つは、特定の機能に特定のキーボードショートカットを実際にバインドできることです。

テキストファイル内の特定の部分をハイライトしてコンテキストを追加できるものがあります。私は個人的にコマンド+シフト+Cにバインドしています。ここで見られるように、そのホットキーをバインドするだけで、hero.tsxファイルのこれらの特定の10行のコンテキストを追加しました。Codex CLIとIDE拡張機能でできることのもう1つのヒントです。

Codec IDEでTODOを使用することもでき、これは個人的に使用するのが大好きな機能です。例えば、このIDE拡張機能に戻ると、実際にファイルの特定の部分に移動できます。この場合、ここにすでにTODOがあると思います。これはCodexに、Charlieが行ったことと同様のことを行うように求めます。つまり、GitHubで表示するためにマークダウンをダウンロードするボタンを実装することです。

TODOを作成したら、実際に「Codexで実装」をクリックするだけで、ここの右側でタスクが実行されます。このタスクはすでに完了しているので、完全に実行させることはしませんが、ここで見られるように、技術的にはコード内に多くの異なるTODOを持つことができ、実際にCodexにそれらすべてを実装してもらうことができます。これは素晴らしいことです。

それでは、スライドに戻りましょう。多くの人がCodexを使用しているもう1つの領域は、実際に画像例でCodexにプロンプトを送信することです。この場合、agents.mdファイルに行くと、これら3つのセットアップコマンドに背景色がないことがわかります。実際にスクリーンショットを撮って、インラインの背景コードチップをオレンジにするようにCodexに依頼できます。

この場合、すでにIDEをいくつかの例で使用しているので、多分IDE CLIを使用します。この場合、ここにスクリーンショットを貼り付けます。インラインチップをオレンジにできますか。素晴らしい。Codexはそれを読み取ることができます。ご覧のとおり、コードベースを探索し、更新する必要がある場所を正確に見つけます。

数秒後、それら3つのセットアップコマンドの背景色を実際にオレンジに変更できます。

非常に役立ちます。どのボタンが左から3番目かを説明しようとするときのように、Codexが修正することになっているものや、画像を与えるだけで、画像を理解してそれに基づいて正確にコード変更を行うことができます。

ここで見られるように、いくつかの行を追加し、ここで1行を削除しました。実際に戻ると、素晴らしい。依頼したことに従って実装できました。これは素晴らしいことです。IDEでもこれを行うことができます。どのように機能するかを素早く示すために、プラスをクリックして画像を追加するだけです。

ここで見られるように、デスクトップにあるscreenshot.pngを指定でき、IDE拡張機能でまったく同じことができます。それでは、もう1つの素晴らしいヒントは、Codexセッションを再開する方法を知ることです。CLI内で、セッションを終了すると、通常、会話を続けるためにセッションに戻りたいことがあります。特にまだ膨大な量のコンテキストが残っている場合です。

できることの1つは、Codex CLIインターフェースでcodex resumeを実行することです。これにより、Codexと行っていたすべての以前の会話が表示され、実際に特定の会話に戻ることができます。この場合、この特定の会話に戻り、継続できます。

これは、例えばオレンジに変更した後、チップコードを緑に変更するようにCodexに依頼できる例です。繰り返しますが、これは会話を再開する方法の非常に簡単な例です。Codex CLI内にセッションIDがあることがわかります。非常に特定のセッションに戻りたい場合、Codex resume UIをスクロールする必要はなく、特定のコマンドを実行するだけで、そのセッションに戻ります。

Charlieが先ほど見せてくれましたが、IDE内で常に戻って特定のタスクを検索し、それを表示して会話を続けることができます。

おわかりのように、コンテキスト管理はそこから正しい結果を得るために非常に重要です。そのセッションには、モデルに与えたすべてのコンテキストが含まれています。

私は、作業しているプロジェクトの特定の側面のためのミニプロジェクトコンテナのようなものとして、それを頻繁に使用しています。作業しているテストセッションや、フロントエンド機能を実装するための特定のセッションなどがあるかもしれません。

確かに非常に役立ちます。

もう1つの素晴らしいヒントは、IDE拡張機能でCodexを使用して、マーメイドシーケンス図を生成できることです。これにより、リポジトリ内でプロセスが互いにどのように動作し、どのような順序で動作するかが示されます。これをIDE拡張機能で示すために、戻ります。申し訳ありません、ウィンドウが多すぎます。実際に、これを以前に実行したことをお見せします。

このコードベースの明確なマーメイドシーケンス図を提供してください、と尋ねただけで、コピーやダウンロードができる非常に簡潔なシーケンス図が返ってきました。これは複雑なリポジトリにとって本当に素晴らしいものです。素晴らしい。先ほど簡単に触れたもう1つの領域は、ウェブ検索がデフォルトでCodexではオフになっていることです。config tomlファイルでできることは、ウェブ検索リクエストのデフォルトをtrueにすることです。

config tomlにそれがない場合は、設定フラグを渡すこともできます。この場合、ウェブ検索リクエストを有効にして、Next.js 15の現在の記事を提供する最新ニュースフッターボックスのようなものを追加するようにCodexに依頼できます。これは、Codexセッションを開始する際に特定の設定を渡す方法のクイック例です。

多くのユーザーがCodexを使用している素晴らしい領域は、特定のカスタムコマンドを追加することです。この場合、Codexホームフォルダに移動し、プロンプトファイルフォルダを作成し、例として@test.mdファイルを追加できます。このファイルが行うことは、変更されたファイルのいずれかに対して単体テストを生成し、既存のテストランナーを使用して、差分を最小限に抑えるようにCodexに依頼することです。

できることと、非常に迅速に実演させてください、Codexホームフォルダに移動できます。この場合、VS Codeで開きました。そして、先ほど述べたように、promptsフォルダを作成できます。ここに、@test.mdファイルを追加しました。それが行うことは、Codex CLIに戻ると。追加したばかりの場合は、終了して再起動する必要があります。

promptsと入力すると、実際にここにadd test.mdファイルが表示されます。エンターをクリックすると、実際にこのマークダウンファイルに与えた正確な指示を引き込み、変更されたファイルのいずれかに対して単体テストを生成します。非常に便利です。そして、もちろん、これはCodexに追加できるカスタムコマンドの1つの例にすぎません。

MCPサーバーの統合

MCPに移りましょう。ほとんどの人がここで知っているように、MCPはモデルを追加のツールやコンテキストに接続するためのプロトコルです。Codexでは、標準IOとHTTPトランスポートをサポートしています。ここに、多くの顧客が使用する一般的なMCPサーバーのいくつかの例があります。

例えば、Figma MCPサーバーに接続して、そこでのモックアップに基づいてフロントエンドデザインを生成できます。JiraとLinearのMCPは両方とも非常に人気があります。例えば、割り当てられているチケットを確認できます。Codexに実際にコード変更を作成させ、例えばチケットを完了に更新させることができます。

Context 7を使用して、サードパーティAPIのコールアウトを実装することもできます。また、Datadog MCPサーバーは、本番環境の問題を診断するために非常に人気があります。ただし、ご存知のように、多くの異なるMCPサーバーがあります。Codexは、追加のコンテキストのためにこれらのサーバーに接続できます。

ここに1つの例があります。カップケーキMCPと呼んでいます。これは、このセッションのために作成した非常にシンプルな例です。これが行うことは、誰かが注文したカップケーキの数の例を返すだけです。非常にシンプルな例です。そのコマンドを実行し、CodexにMCPを追加するために、ここで行います。ご覧のとおり、これは以前に行った単体テストの生成です。

この場合、終了して再度開始します。このカップケーキMCPサーバーを追加するこのコマンドをコピーしました。Codexでは、codex mcp addと入力してパラメータを追加するだけで非常にシンプルにしました。エンターをクリックすると、cupcake MCPというグローバルMCPサーバーが追加されました。

実際に追加されたことを示すために、config tomlファイルに戻ると、ここで見られるように、このサイズを小さくすると、ここにMCPサーバーが追加されました。config tomlに直接追加することもできますが、多くのユーザーがシンプルなCodex MCP addを例として使用しているのを見てきました。カップケーキMCPを使用する1つの例を示します。

agents.mdページの下部にRachelのカップケーキ注文を取得するセクションを追加するようにCodexに依頼します。非常にシンプルです。これを使用して、Codex内でMCP接続がどのように機能するかを説明します。ここで別のCodexセッションを開始し、このリクエストを貼り付けます。すぐにわかるように、Codex cupcake MCPサーバーを呼び出し、agents.mdページの下部にこのコードを実際に追加できます。

クール。表示されるのを待っています。呼び出すつもりです。わかります。

そうですね。数秒後に来ます。Rachelの注文の統合オプションを分析しています。これは真剣なビジネスです。カップケーキを検索しています。そして、できました。Cupcake MCP検索を呼び出しました。彼女の注文を取得できました。

ここで見られるように、Rachelは7つのマーブルカップケーキをピックアップ用に注文しました。見ているだけでお腹が空いてきます。Codexは、これをagents.mdファイルの下部に追加します。

非常にシンプルですが、これをどのように拡張できるかがわかります。例えば、本番環境のログ、パフォーマンスの問題を診断するためにプルダウンしたい場合、またはJiraチケットを取得して、Codexが作業するためにそのチケットからコンテキストをプルする場合などです。

繰り返しますが、開始するには非常に基本的な例ですが、MCPで実際にどれだけのことができるかを示していると思います。

まさにその通りです。タスクを完了するにつれて、次の例に移ります。もう1つ言及したい非常に人気のあるMCPは、Context 7です。これにより、あらゆるフレームワークの最新のドキュメントをプルできます。同様のcodex mcp addコマンドを使用して、config内のMCPサーバーとしてContext 7を追加することもできます。この場合、すでにContext 7を追加しています。ここでconfig tomlファイルに既にContext 7があることがわかります。次の例ではこれを使用しますが、カップケーキの例が完了したことがわかります。

コンピューター上でローカルに実行されているagents.mdファイルに実際に戻り、リロードすると、下部にカップケーキの例が表示されるはずです。ここの下部までスクロールしましょう。できました。確かにそうです。Rachelには、ピックアップ準備ができている7つのマーブルカップケーキがあります。このセッションの後、何をするかわかっています。

Context 7の活用とコードレビュー

それでは、Context 7を使用したこの例に移りましょう。この例では、Codexに、agents.mdページにローカルで実行されている入力を実装するように依頼します。人々は、OpenAIのResponses APIを実際に呼び出す小さなプロンプトを使用して、独自のagents.mdファイルを生成できます。

最新のAPI仕様を取得するために、Context 7から最新のドキュメントを取得します。それでは、このプロンプトをコピーしましょう。この例ではIDE拡張機能を使用します。エージェントのままにします。この場合、別のモデルを使用します。GPT-5.1 Codex miniを使用します。mediumを使用します。

この入力を実装するように依頼します。すぐにわかるように、Context 7 MCPを呼び出し、agents.mdページにこの変更を実際に追加できます。ここで見られるように、Context 7のライブラリドキュメントを取得できます。さまざまなファイルを探索できるようになりました。リポジトリに存在するagents.mdを読んでいます。

agents.mdジェネレータを追加する準備をしているようです。非常に迅速に、私のリクエストを理解し、ドキュメントを見て、このリポジトリ内のさまざまなファイルを実際に読み取ることができます。

これは非常に役立ちますよね。モデルには非常に多くの事前トレーニングコンテキストがありますが、知識カットオフ日のようなものがあります。そして、プログラミングフレームワークが進化し、ドキュメントが更新されると、Context 7のようなものや、実際に統合したいMCP、多くの顧客が独自の内部ドキュメントMCPを構築することで、Codexが実際の実装と同期し続けるのに役立ちます。リアルタイムで更新されます。

確かに、確かに素晴らしい。作業を続けているのがわかります。この場合、スライドに戻って、次に話したいヒントについて話します。これは、Charlieが先ほど言及したCodexホームフォルダにあるグローバルagents.mdに、より多くのカスタム指示を実際に追加することです。この場合、毎回Context 7を見るようにCodexに依頼する必要がない場合は、Codexホームフォルダ内に特定の入力を実際に追加できます。ここでお見せしますが、外部ライブラリやAPIの新しい機能を実装する際には、Context 7に関連するドキュメントがあるかどうかを常に検索してください、と実際に言うことです。

ご覧のとおり、私の個人的なCodexホームagents.mdファイルにいくつかの他の行があります。これが行うことは、実際にユーザーがContext 7を指定しなくても、Codexがグローバルagents.mdを読み取り、ユーザーが指定せずにまったく同じMCPサーバーを実際に呼び出すことを可能にします。これは素晴らしいことです。完璧なタイミングだと思います。3つすべてで完了しそうです。3つのファイルを変更できたようです。ほぼ300行のコードを追加しました。Charlieが述べたように、特定の差分を見ることもできます。

いくつかのファイルを調べながら、真剣なビジネスを行っているようです。それでは、このプロンプトが完了する前に、この最後のヒントに戻りましょう。これは、実際にCodexを使用してコードをレビューしてもらうことです。CLI内とIDE内で、それを行うにはいくつかの方法があります。CLI内には4つのオプションがあります。

特定のベースブランチに対してCodexにレビューさせることができます。ローカルでコミットされていないすべてのコードをCodexにレビューさせることができます。また、Codexに特定のコミットをレビューさせることもできます。その上にカスタムレビュー指示を提供することもできます。agents.mdについて話していたときにCharlieが先ほど述べたように、実際にagents.md内に直接ない特定の別個のMDファイルを持つことができます。

例えば、多くのユーザーが行っているのを見たのは、agents.mdファイルにあまりにも多くの行でオーバーフローさせないために、agents.mdファイル内で参照されるcode_review_guidelines.mdを作成することです。これは、Codexに特定のチームのコードをどのようにレビューするかを理解させるための1つの素晴らしい方法です。IDE内でも、すぐにお見せするように、コードをレビューする機能があります。

ここにスラッシュコマンドがあります。コードレビューをクリックすると、特定のベースブランチに対してレビューしたり、コミットされていない変更をレビューしたりできます。ただし、その前に、Codexがこの入力を追加することで何ができたかを見てみましょう。このファイルに戻って、このResponses APIセクションを追加できたかどうかを確認しましょう。素晴らしい。

OpenAIのResponses APIを使用して、プロンプトでagents.mdファイルを生成するセクションを追加できたようです。素晴らしい方法です。コードレビューを開始する方法を素早くお見せします。繰り返しますが、reviewコマンドでCodex CLIを使用できます。コミットされていない変更をレビューしたり、特定のコミットをレビューしたり、カスタムレビュー指示を追加したりできます。

この場合、IDE拡張機能内でどのように機能するかを素早くお見せします。ここでコードレビューをクリックして、コミットされていない変更をレビューをクリックすると、実際に実行され、いくつかの応答が返ってきます。通常、P0またはP1の問題があるかどうかを確認し、それを確実に表面化します。

時にはP2またはP3の問題を表面化することもあります。修正する必要があるものを知り、実際にCodexに修正を依頼するのに素晴らしい方法です。IDE拡張機能内にボタンが返ってくるので、クリックするだけで問題を修正してくれます。これはかなり素晴らしいことです。

まさに。Codec CLIとIDE拡張機能ですべてを1つで行う素晴らしい方法です。

コードレビューで見つけた最も重要なことの1つは、本当にノイズが多すぎてはいけないということです。あまりにも多くのことにコメントしていると、人々はそれを無視してしまいます。そのため、モデルは実際にそれらのP0またはP1の問題に本当に焦点を当てるようにトレーニングされています。

時にはP2やP3を見つけることもありますが、通常、コメントするとき、これを修正しないと本番環境で壊れる、というようなものです。

まさに。内部でいくつかのコードの問題を見つけて修正するのに役立ったことは確かです。これは、高価なリンターを持たない素晴らしい方法ですよね。常に実際の問題を返してくれるので、実際にCodexに修正してもらうことができます。

高度なユースケースとプログラマティック実行

それでは、いくつかのジューシーな高度なユースケースについて話すために、Charlieに引き継ぎましょう。

そうですね。Coke CLIで本当に興奮することの1つは、対話的に使用できることは明らかですが、プログラマティックに使用することもできることです。さまざまなパイプラインに組み込んだり、独自のコンテナで実行される異なるユースケースを構築したりでき、本当に構築したいものは何でもできます。

これを示すために、ターミナルに入りたいと思います。Codexを開いて、どのように見えるかを示します。agents.mdサイト、agents.mdサイトには、作成した特別なファイルがあります。実際にここで見せます。Codexをサイドで閉じると、それが何であるかがわかります。OpenAI構造化出力スキーマ形式に準拠したJSONファイルです。これは、応答を受け取る必要がある正確な形式をCodexに伝えます。

この例では、コードスタイル分析チェッカーのようなものを作業していました。分析したファイルの数、見つけた問題の総数、0から100の全体的なスコアなど、いくつかの異なるプロパティを含める必要があります。配列も定義できるため、見つけたすべての問題に対して個別の項目を持つことができ、それぞれが独自の必須フィールドを持つことができます。非常に拡張可能な形式です。

実際にできることは、これでCodexを実行し、codex execを実行することです。これはCodexのヘッドレスモードです。コード品質の問題についてこのアプリを分析し、この出力スキーマパラメータを与え、JSONを生成させます。

ここで起動します。対話型ターミナルモードに入るのではなく、Codexは消費できる生のログをストリーミングしているだけです。しかし、どのように見えるかの例を示すために、すでにここで実行されたことがわかります。完了すると、この有効なJSONが出力され、jqで解析しました。

すべてのファイルの合計、問題の合計、ファイルの引用、行番号、問題の重大度、説明がすべて構造化された形式で提供されます。これで多くのことができます。例えば、見つけたすべての問題に対してAPIリクエストを行ったり、それぞれをデータベースに保存したりしたい場合。これをアプリに組み込むことができます。

CI/CDパイプラインで実行できます。多くのプログラマティック作業を行うための非常にシンプルだが強力なプリミティブです。これで実際に何を構築するために使用できるのでしょうか。セキュリティトリアージのようなことができます。テストカバレッジボットを作成できます。

リファクタリングとクリーンアップの自動化を行うことができます。新しいリリースを作成するたびに変更ログとreadmeを作成するリリース衛生自動化を行うことができます。これらすべてのことは、ここでソフトウェア開発ライフサイクルに組み込むことができるようなものです。その上、実際にもう少し高度になることができます。単一ステップのワークフローを実行するだけでなく、OpenAI Agents SDKとCodexで高度な複数ステップのワークフローを構築できます。

OpenAIのAgents SDKは、エージェントのハンドオフを構築し、個々のエージェントにエージェントのコンテキストとツールのスコープを設定するのに役立ちます。CodexはAgents SDK内でMCPサーバーとして実際に機能できます。基本的に、エージェントが呼び出せるツールになります。これは非常に強力です。Agents SDKを使用して、フロントエンドの構築にのみ焦点を当てたフロントエンドエージェントや、プロジェクト管理のみに焦点を当てたPMエージェント、またはバックエンドのみに焦点を当てたバックエンドエンジニアを作成できます。

それぞれに独自のMCPツール、独自のコンテキストを与え、互いにハンドオフするように指示します。Agents SDKを使用しているため、自動的にトレースが取得されます。サイドで見られるように、Codexがどのように呼び出されるか、またはCodexを呼び出す前に異なるエージェントが互いにどのようにハンドオフしているかを示します。Codexにコードを書くように依頼する前に彼らが与えたコンテキスト。

OpenAI actクックブックに完全な例がありますが、これらのより長い制御されたロールアウトを構築するための本当に洗練された方法だと思います。大規模なリファクタリングや大規模なフィーチャー作業に行いたいものです。

次に呼び出したいのは、オンプレミスのコードレビューです。JSONの解析で見た例と同様に、Codex cloudで構築されているのとまったく同じように、独自のコンテナで実行される独自のコードレビューを構築できます。オンプレミスの場合や、GitHubではない別のSCMがある場合に非常に役立ちます。そこで構築するだけです。Codexの独自のコードレビュー機能を使用します。CLIとCodex cloudに含まれているのとまったく同じプロンプトを使用できます。構造化出力を使用して、見つけたさまざまな問題にフラグを立て、独自のパイプラインで実行できます。

それと同様に、コードレビューを超えて、実際にCIを自動修正できます。プルリクエストにプッシュするときにテストが失敗した場合、それに基づいてCodexをトリガーし、ブランチをチェックアウトし、その上にプルリクエストを作成して、テストを合格させる修正を行い、そこからPRをマージして多くの時間を節約できます。

そして、私たちがCodexオープンソースリポジトリで実際に使用しているものの1つは、問題が作成されるたびにCodexをトリガーして、問題に自動ラベルを付けることです。これはかなり基本的ですが、非常に役立ちます。基本的に、Codexを使用して、事前定義された一連のラベルに基づいて問題を分類できます。これは、特定のテキストマッチングのようなものに一致する必要はありません。

Codexは問題の意図を理解し、それを使用してラベルを適用できます。その後、チームは問題自体にどのように取り組むかを把握するために使用します。まとめる前に、いくつかの追加リソースを共有したいと思います。すべてのユーザー向けです。Codexドキュメントについては、developers.openai.com/codexにアクセスしてください。

そこには多くの素晴らしいヒントがあり、完全なドキュメントが利用可能です。また、一連のCodexクックブックもあります。これらは、顧客のオンボーディングの経験や、OpenAI内部のエンジニアからの経験に基づいてまとめたガイドです。そして、Codexの変更ログもあります。Codexに追加されるすべての異なる機能をキャプチャしています。

述べたように、私たちはかなり迅速に出荷しているので、頻繁に更新されます。管理者の場合は、エンタープライズ管理者ガイド、セキュリティガイド、そしてCodexが使用するクレジットをキャプチャするレートカードがあり、使用状況を理解できます。それで以上です。私たちのプレゼンテーションをご覧いただきありがとうございました。

Codexを使用して起動できることを願っています。

どうもありがとうございました。

コメント

タイトルとURLをコピーしました