🚀

🚀【Codex】リファクタリングからテスト生成まで完全自動化する方法

に公開

はじめに

最近、OpenAIからCodex Appという新しいデスクトップアプリが登場しました。
これまでAIコーディングツールといえばCursorClaude Code等が主流でしたが、このCodex Appはそれらとはまた違った立ち位置の「エンジニアリングエージェント」として設計されています。

本記事では、Codex Appを使って実際にアプリを作りながら、その特徴的な機能であるScheduled Automationsが開発フローをどう変えるのか検証してみます。

Codex Appのメイン画面
Codex Appのメイン画面。プロジェクトの全体像を把握しやすいインターフェースになっています

概要

Codex Appとは?

OpenAIが提供するプロフェッショナル向けのデスクトップアプリケーションです。
単なるコード生成ツールではなく、プロジェクト全体を深く理解し、アーキテクチャレベルの提案や複雑なタスクの自律実行を得意としています。

なぜCodex Appなのか?

OpenAIは既に ChatGPT (Codex)Codex CLI を提供していますが、なぜ新たにデスクトップアプリが必要だったのでしょうか?
それは、「会話」と「コマンドライン」の間にあるギャップを埋め、AIを真の「エンジニアリングパートナー」にするためです。

  • ChatGPT App (Web/Mobile) との違い:
    Webやアプリ版は「対話」が主体です。手軽に質問できる反面、ローカルのプロジェクト構造を維持したまま複雑な編集を行ったり、ファイルシステム全体を俯瞰して整合性を保つことには限界がありました。

  • Codex CLI との違い:
    CLIは単発のタスク実行には強力ですが、複数の並行タスクを管理したり、変更内容を視覚的に確認しながら進めるのには向きません。

Codex Appは、これら2つのいいとこ取りをした上で、さらにGUIという武器を持たせることで、「チャットで相談し、裏で自律的に手を動かしてもらい、結果を視覚的に確認する」という新しいワークフローを実現しました。

具体的には、GUI上で以下のようなことができます。

  • 計画の可視化: 複雑な変更を行う前に、どのファイルがどう変わるかのプランを視覚的に提示してくれます。
  • 自律的なコマンド実行: 裏でターミナルを立ち上げ、テストの実行やLintエラーの修正を自律的に行います。
  • Worktreeによる並行作業: 現在の作業ディレクトリを汚さずに、裏で別のブランチを切ってタスクを進行させることができます。
  • Scheduled Automations: 指定した日時に特定のプロンプト(「依存関係の更新チェック」「不要コードの削除」など)を自動実行させることができます。

他ツールとの比較

Codex Appは「エディタ」ではなく「エージェント」としての側面が強いため、他のツールとは役割が明確に異なります。
主要なAIコーディングツールとの機能比較をまとめました。

カテゴリ 機能 Codex App Cursor Claude Code Antigravity
基本体験 エディタ統合 (IDE) △ (連携可) ◎ (完全統合) - ◎ (Extension)
チャット / Q&A ○ (CLI)
インライン補完 (Tab) - -
エージェント 複数ファイルの同時編集 ○ (Composer)
ターミナル操作 (コマンド実行) ◎ (自律) △ (承認制) ◎ (自律) ○ (Run)
計画の可視化 (変更プラン提示) ◎ (専用GUI) - - ◎ (Task)
自動化・運用 定期実行 (Scheduled Automations) ◎ (独自) - - -
バックグラウンド実行 (Worktree) ◎ (独自) - - -
テスト自動修正 (Loop) ◎ (自律) △ (手動) ◎ (自律) ◎ (Loop)
コンテキスト プロジェクト全体の詳細理解 ◎ (Deep) ◎ (Deep)
外部ドキュメント検索 - ◎ (MCP)

表からわかるように、「設計」「リファクタリング」「運用」を任せたいならCodex Appがおすすめです。

準備

それでは実際にCodex Appを使うために準備をしていきましょう。

Codex Appの詳細は以下から確認できます。
https://openai.com/ja-JP/codex/

Codex Appを使用するには、以下の準備が必要です。

  1. OpenAIアカウント:
    アカウントがない場合は新規作成してください。
  2. デスクトップアプリのインストール:
    macOS向けのアプリをダウンロードしてインストールします。
    Windows版は現在未リリースですが、VS Code拡張機能として「Codex – OpenAI’s coding agent」が提供されており、同様の機能を利用可能です。
  3. GitHubリポジトリの追加(推奨):
    PR作成の自動化等を行うためには対象のプロジェクトをGitHub等のリモートリポジトリに追加(連携)しておくことを推奨します。

インストール後、アプリを立ち上げ、対象のプロジェクトフォルダを開くだけで準備完了です。
Codexが自動的にプロジェクトのスキャンを開始し、数分でコンテキストを構築します。

実践

それでは、実際にReactで「Todoアプリ」を作りながら、Codex Appの真価を試してみます。
特に今回は、単純な実装だけでなく、Codexの機能である自動化に焦点を当てて実践していきます。

要件定義と計画(Deep Context)

まずはチャットで「モダンなReactのTodoアプリを作りたい」と伝えます。
Codexはプロジェクト構造を理解しているため、既存のUIコンポーネントがあればそれを再利用する提案をしてくれます。

提案を作成してもらうためには、プラスアイコンをクリックして、Plan modeに切り替える必要があります。

Codexによる計画画面
Plan modeでアーキテクチャ設計を提案してもらった様子。既存コンポーネントの再利用まで考慮されています

Codexで作成したTodoアプリ
Codexによって実装されたTodoアプリ。要件通りのモダンなUIが自動生成されました

このように、アーキテクチャレベルでの整合性を保った提案が得られます。

Scheduled Automations (定期実行)

アプリが完成した後、運用フェーズで役立つのが Scheduled Automations です。
「毎日やるほどじゃないけど、たまにやりたいメンテナンス」を自動化できます。
OpenAIの内部開発でも、リファクタリングは全てこの機能を使って自動化されているそうなので、今回はリファクタリングの定期実行を設定してみます。

  1. Automation設定画面を開く。
  2. トリガー: 「毎日 13:00」
  3. 指示: 「リファクタリング: プロジェクト全体をスキャンし、クリーンアーキテクチャにしたがい適切なファイル構成にしてください。また、不要な console.log の削除、未使用変数の削除、型定義の整理を行なってください。」
  4. テストを実行押下して動作を確認する

Scheduled Automationの設定
毎日の定時実行タスクを設定する画面。ここでスクリプトやプロンプトを指定します

これで、指定した時間にCodexがコードを綺麗にします。

自動作成されたPull Request
実行されたAutomationによって実行されたリファクタリング

リファクタリング前後の構成
Automationによって整理されたフォルダ構成

テストの定期実行と自律修正

リファクタリングだけでなく、「テストの実行」も強力です。
毎朝テストを実行し、もし失敗している箇所があれば Codexが自律的に修正してPRを出しておく という設定も可能です。

  1. Automation設定画面を開く
  2. トリガー: 「毎日 09:00」
  3. 指示: プロジェクトをスキャンし、不足しているテストを新規作成した上で、実行・修正を行うよう指示します。具体的なプロンプト例は以下の通りです。
  4. テストを実行押下して動作を確認する
プロンプト

Role:
あなたは熟練したQAエンジニア兼フロントエンドエンジニアです。

Task:

  1. プロジェクト内のディレクトリをスキャンし、テスト不足の箇所を特定する。
  2. 不足しているテストケース (*.test.tsx) を作成する。
  3. 作成後、必ず npm test <test_file_path> を実行して動作検証を行うこと。
  4. もしテストが失敗した場合は、エラーログを分析し、テストコードまたはコンポーネントを修正して再実行すること(最大3回まで試行)。

Requirements:

  1. 優先順位: 複雑なロジックを持つコンポーネントや、ユーザーインタラクション(クリック、入力など)が含まれるものを優先してください。
  2. 網羅性: 正常系だけでなく、異常系や境界値のテストケースも含めてください。
  3. スタイル: 既存のテストコードがある場合は、そのスタイルや規約に従ってください。なければ一般的なベストプラクティスに従ってください。
  4. 実行: テスト作成後、実際にテストを実行し、パスすることを確認してください。失敗した場合は修正を行ってください。

これで、テストを自動で作成し、実行し、修正するまでを自動化できます。

テスト修正のPR
Automationによって自動作成されたテスト。エラーログを分析し、自律的にコードを修正してテストをパスさせました

アイデア

Codex Appにはまだ他にも様々な可能性があります。

  • Issueの自動トリアージ:
    毎日新しいIssueをチェックし、関連するコード箇所を特定して「実装のヒント」や「影響範囲」をコメントとして自動投稿させることも可能です。
  • ドキュメントの自動生成:
    Automationで「毎週金曜日にコードとドキュメントの乖離をチェックし、修正案を出す」なども可能です。
  • 新人エンジニアの教育係:
    Codexの提案するコードは「なぜそうするのか」という理由付けがしっかりしているため、コードレビューを通じて学ぶことができます。

最後に

このアカウントでは、ただの「ツール紹介」ではなく、明日から開発フローを変えるための実践方法を共有していきます!
更新を見逃さないよう、ぜひ今のうちにZennのアカウントをフォローしてお待ちください!!!

GitHubで編集を提案
EMP Tech Blog

Discussion