OpenAI Codex vs Claude Code:どちらのCLIコーディングエージェントを選ぶべきか

OpenAI Codex vs Claude Code:どちらのCLIコーディングエージェントを選ぶべきか

Codex CLI と Claude Code は、どちらもターミナルベースのエージェント型コーディングツールですが、対象とするワークフローが異なります。Codex CLI は軽量でオープンソースのエージェントであり、OpenAI 互換の API に完全に対応した柔軟性と、クリーンなサンドボックスモデルを備えています。一方 Claude Code は、より多機能なプラットフォームで、マルチサーフェス対応、充実したセッション管理、CLI・IDE・デスクトップ・ブラウザにわたる緊密な統合を提供します。最適な選択は、最大限のモデル柔軟性を求めるか、単一プロバイダの API を軸とした統一されたコーディング環境を求めるかによって決まります。

Codex CLI とは

Codex CLI は、OpenAI が提供するオープンソースのターミナルコーディングエージェントです。ローカルで動作し、OpenAI 互換の API バックエンドにリクエストを送信して、ファイルの読み取り、コードの編集、機械上のサンドボックス化されたディレクトリ内でのコマンド実行を行います。

Codex CLI の重要な設計上の選択は、プロバイダの柔軟性です。このツールは OpenAI Chat Completions ワイヤフォーマットを使用するため、OpenAI 互換のエンドポイントを公開するプロバイダであれば、TOML 設定ファイルを通じて簡単に導入できます。これには OpenAI 自身のモデル(GPT-4o、o3、o4-mini)だけでなく、Novita AI のようなサードパーティプロバイダも含まれます。

Codex CLI のセキュリティモデルは、明示的に設計されています。実行されるコードに対するネットワークアクセスはデフォルトで無効にされ、ファイル書き込みは設定されたディレクトリに制限されます。3 つの承認モードによって、エージェントの自律性を制御できます:

  • Suggest モード(デフォルト):すべてのステップで承認を求めるプロンプトを表示
  • Auto edit モード:ファイルの編集は自動で行うが、コマンド実行前には確認を求める
  • Full auto モード:プロンプトなしで実行

このプロジェクトは MIT ライセンスで公開されており、GitHub の openai/codex で積極的にメンテナンスされています。

Claude Code とは

Claude Code は、Anthropic によるエージェント型コーディングツールです。CLI、VS Code 拡張機能、JetBrains プラグイン、デスクトップアプリ、そして claude.ai/code のブラウザインターフェースとして利用できます。すべてのサーフェスで同じ基盤エージェントエンジンが動作し、プロジェクトの読み取り、ファイルの編集、コマンドの実行、テスト作成、ファイルをまたいだリファクタリング、git 操作など、マルチステップのタスクを処理します。

内部的には、Claude Code は Anthropic 互換の API エンドポイントにリクエストを送信します。デフォルトは Anthropic 自身の api.anthropic.com ですが、単一の環境変数(ANTHROPIC_BASE_URL)で任意の互換プロバイダにリダイレクトできます。

Claude Code には、Codex CLI にはないセッション継続機能が追加されています。名前付きセッション、ブランチ形式の会話フォーク、巻き戻しチェックポイント、そして長いタスクで使用可能なウィンドウを拡張するためにコンテキストを要約する /compact コマンドです。プロジェクトレベルの指示は CLAUDE.md ファイルに記述し、エージェントは各セッションの開始時にこれを読み取ります。

Codex CLI と Claude Code:比較表

機能 Codex CLI Claude Code
プロバイダ OpenAI Anthropic
ライセンス オープンソース(MIT) プロプライエタリ(API アクセス)
ワイヤ API OpenAI Chat Completions Anthropic Messages API
サードパーティプロバイダ OpenAI 互換のものすべて Anthropic 互換のものすべて
利用可能サーフェス ターミナルのみ CLI、VS Code、JetBrains、デスクトップ、ブラウザ
プロジェクト設定 TOML 設定ファイル CLAUDE.md + settings.json
セッション継続 セッション単位 名前付きセッション、再開、ブランチ、巻き戻し
承認モード Suggest / Auto Edit / Full Auto default、plan、auto、acceptEdits、bypassPermissions
MCP 対応 なし あり
コンテキスト管理 セッション単位のコンテキスト /compact/context/branch
サンドボックスセキュリティ ネットワーク無効、ディレクトリ制限 権限モードによる制限

モデルサポートと API の柔軟性

これが実際に両ツールが最も大きく異なる点です。

Codex CLI は、OpenAI Chat Completions フォーマットを話す任意のモデルを受け入れます。初期状態では OpenAI のモデルラインアップ(GPT-4o、o3、o4-mini)で動作しますが、プロバイダは TOML 設定の model_providers で設定可能なため、ツール自体にパッチを当てることなく、Novita AI、Azure OpenAI、その他の互換エンドポイントを指定できます。

Claude Code は、Anthropic Messages API フォーマットを使用します。デフォルトでは Anthropic にルーティングされ、Claude モデル(Sonnet、Opus、Haiku)を使用します。ANTHROPIC_BASE_URL 環境変数によりプロバイダの置き換えが可能で、Novita AI を含む Anthropic 互換のエンドポイントがそのまま利用できます。

実際には、これは以下を意味します:

  • 使用したいモデルが OpenAI フォーマットを話す場合(OpenAI 互換エンドポイント上の DeepSeek、Qwen Coder、Kimi K2 など)、Codex CLI の方が自然な選択肢です。
  • 使用したいモデルが Anthropic フォーマットを話す場合、または CLI と IDE のサーフェス間で同じ設定を使用したい場合、Claude Code の方が一貫した動作を提供します。

どちらのツールも Novita AI のモデルをサポートしています。設定方法は異なりますが(Codex は TOML、Claude Code は環境変数)、DeepSeek V3、Qwen3-Coder、Kimi K2 を含む Novita AI のモデルライブラリは、両方からアクセス可能です。

オープンソース vs プロプライエタリアーキテクチャ

Codex CLI のオープンソースとしての性質は、特定の状況で重要になります。エージェントループを監査したり、社内ツール用にフォークしたり、別途ライセンス契約なしで CI パイプラインにベンダリングしたりできます。コミュニティはプロバイダ統合、バグ修正、機能拡張を提供することができ、実際に行っています。

Claude Code の中核はプロプライエタリです。Anthropic は CLI をソースコードではなく、API アクセスを伴うバイナリとして配布しています。利点は、Anthropic による直接サポートと、より一貫性のある適切にメンテナンスされたリリースサイクルです。欠点は、カスタマイズが設定ファイル、環境変数、拡張 API によってツールが公開するものに限定されることです。

ほとんどの開発者にとって、オープンソースかどうかの違いは、エージェントの動作をコードレベルで変更する必要がある場合にのみ重要です。ワークフロー統合(CI パイプライン、自動化タスク、スクリプトによるコード生成)においては、どちらのツールも一般的なケースをカバーするのに十分な CLI フラグとスクリプティングモードを備えています。

インストールとセットアップ

Codex CLI は npm でインストールします:

npm install -g @openai/codex

プロバイダ設定は ~/.codex/config.toml に記述します:

model = "deepseek/deepseek-v3.1"
model_provider = "novitaai"

[model_providers.novitaai]
name = "Novita AI"
base_url = "https://api.novita.ai/openai"
http_headers = {"Authorization" = "Bearer YOUR_NOVITA_API_KEY"}
wire_api = "chat"

Claude Code はネイティブインストーラ(macOS/Linux/WSL)でインストールします:

curl -fsSL https://claude.ai/install.sh | bash

または npm 経由で(Node.js 18+):

npm install -g @anthropic-ai/claude-code

カスタムプロバイダへのリダイレクト:

export ANTHROPIC_BASE_URL=https://api.novita.ai/anthropic
export ANTHROPIC_API_KEY=YOUR_NOVITA_API_KEY
claude --model deepseek/deepseek-v3.1

Claude Code はプロジェクト内で /init を実行してスターター CLAUDE.md を生成することもでき、セッションをまたいでプロジェクト固有の指示を保持します。

プラットフォームと対応サーフェス

これは日常的な使用において最も顕著な違いです。

Codex CLI はターミナルで動作します。それが唯一のサーフェスです。ワークフローが完全にターミナルベース(SSH セッション、ヘッドレス CI、開発コンテナ)であれば問題ありません。VS Code 内でのインライン提案やデスクトップ GUI が必要な場合、Codex CLI はそれらを提供しません。

Claude Code は 5 つのサーフェスで動作します。CLI、VS Code 拡張機能、JetBrains プラグイン、デスクトップアプリ、そしてブラウザの claude.ai/code です。すべてのサーフェスは同じエージェントエンジンを共有し、ほとんどの場合、同じセッション状態を共有します。ターミナルで開始したタスクを VS Code で引き継ぐことができます。

チームにとって IDE 統合が重要であれば、Claude Code に明確な優位性があります。大規模な自動化システムの一部としてエージェントをヘッドレスで実行するパイプラインを構築している場合は、どちらのツールも同様に機能し、Codex CLI のよりシンプルなフットプリントの方が管理しやすい場合があります。

設定とプロジェクトコンテキスト

Codex CLI の設定は、プロバイダ/モデル設定(TOML)とプロジェクトごとの指示(存在する場合にエージェントが読み取る AGENTS.md または類似のファイル)に分かれています。これは意図的に最小限に抑えられています。

Claude Code には階層化された設定があります:

  • CLAUDE.md ファイル(プロジェクトレベル、ディレクトリレベル、ユーザーレベル)による永続的な指示
  • .claude/settings.json による権限ルール、フック定義、ツール設定
  • セッション中に指示を編集する /memory などのスラッシュコマンド
  • API ルーティングと認証のための環境変数

CLAUDE.md アプローチは、すべてのエージェントセッションがコードベースの規約、レビューチェックリスト、許可されたライブラリに関する共通認識で開始されることを望むチームにとって有用です。Codex CLI には同等の組み込みメカニズムはありませんが、各プロンプトに指示を先頭に追加することで再現できます。

承認モードとセキュリティ制御

どちらのツールも、エージェントが確認なしでどの程度まで実行できるかを制御できます。

Codex CLI の 3 つのモードはシンプルで明示的です:

  • Suggest:変更案を表示し、何かを適用する前に確認を求める
  • Auto edit:確認なしでファイルを書き込むが、シェルコマンドの実行には承認が必要
  • Full auto:確認なしで実行。信頼されたパイプラインに有用

Claude Code の権限モードは、より詳細な粒度で同様の概念に対応しています:

  • default:ファイル編集とシェルコマンドの承認を求める
  • acceptEdits:ファイル編集を自動承認し、シェルコマンドの確認を求める
  • auto:確認なしで実行(Codex の full auto に相当)
  • plan:実行前に計画を表示。マルチステップタスクを実行前にレビューするのに有用
  • bypassPermissions:すべてのチェックをスキップ(信頼された自動化コンテキスト用)

Claude Code は settings.json でのきめ細かな allow/deny/ask ルールシステムもサポートしており、全体的な権限モードを変更せずに特定のコマンドを恒久的に承認できます。

厳格な変更管理要件があるチームには、Claude Code の階層化された権限システムがより多くの制御を提供します。明確なオン/オフ動作を求める個人開発者には、Codex CLI の 3 モードシステムの方が理解しやすいです。

セッションとコンテキスト管理

長時間のコーディングセッションはコンテキスト制限に達します。両ツールともこれを処理しますが、方法が異なります。

Codex CLI はセッション単位でコンテキストを管理します。セッションが終了するとコンテキストは失われます。次回の呼び出しでは新たに開始します。

Claude Code は永続的なセッション管理を追加します:

  • claude -r "session-name" で再開可能な名前付きセッション
  • 現在の会話を要約してトークン使用量を減らしながら継続する /compact
  • 元の会話を失わずに別のアプローチを試すためのフォーク /branch
  • 変更がうまくいかなかった場合にチェックポイントに戻る /rewind
  • ウィンドウの使用状況とその内訳を可視化する /context

短く焦点を絞ったタスク(このバグを修正する、この関数を書く、これらのテストを追加する)の場合、違いは重要ではありません。長いリファクタリングセッションや複数のやり取りにわたって進化するタスクの場合、Claude Code のセッション継続機能はコンテキスト損失の摩擦を軽減します。

Codex CLI を使うべきとき

以下の場合に Codex CLI を使用します:

  • OpenAI 互換モデルに直接接続する必要がある場合(GPT-4o、o3、o4-mini、または OpenAI フォーマットのエンドポイントを持つサードパーティプロバイダ)
  • エージェントの動作をソースレベルで監査または変更したい場合
  • ワークフローが IDE 統合を必要とせず、純粋にターミナルベースである場合
  • CI パイプラインや社内ツールにコーディングエージェントを組み込み、最小限で監査可能な依存関係を求めている場合
  • セキュリティ要件でデフォルトで明示的にネットワーク無効のサンドボックスを要求する場合

Claude Code を使うべきとき

以下の場合に Claude Code を使用します:

  • ターミナル、VS Code、JetBrains、デスクトップ間で一貫した動作を求める場合
  • チームがセッションをまたいで共有 CLAUDE.md プロジェクトコンテキストを活用する場合
  • セッション継続(名前付きセッションの再開、会話のブランチ、変更の巻き戻し)が必要な場合
  • MCP サーバー統合がワークフローの一部である場合
  • Anthropic フォーマットの API を好み、Anthropic 互換プロバイダ(Novita AI を含む)にルーティングしたい場合

どちらのツールでも Novita AI を使用する

どちらのツールも、Novita AI をドロップインの LLM バックエンドとして受け入れます。これは、ツールのデフォルトプロバイダでは利用できないモデルにアクセスしたい場合や、コストが制約となる場合に重要です。Novita AI 上の DeepSeek V3、Qwen3-Coder、Kimi K2 などのモデルは、Anthropic や OpenAI のフラッグシップモデルと比較して、トークンあたりのレートが大幅に低くなっています。

Codex CLI と Novita AI~/.codex/config.tomlmodel_provider を設定し、https://api.novita.ai/openai を指定します。完全なモデルリストとセットアップ手順は、「Codex CLI を Novita AI モデルで使う方法」を参照してください。

Claude Code と Novita AIANTHROPIC_BASE_URL=https://api.novita.ai/anthropic を設定し、Novita API キーを渡します。--model フラグまたは ANTHROPIC_MODEL 環境変数で特定のモデルを選択します。完全な CLI リファレンスは、「Claude Code CLI ドキュメント」を参照してください。

ここでの Novita AI の役割は推論バックエンドであり、IDE レイヤーではありません。環境変数が設定されると、Codex CLI と Claude Code はデフォルトのプロバイダを使用している場合とまったく同じように動作します。モデルは変わりますが、ツールのインターフェースは変わりません。これにより、異なるモデル(推論重視のタスクには DeepSeek、コード生成には Qwen3-Coder、ツール主体のエージェントワークには GLM-4.7)を、ツールやワークフローを切り替えることなく簡単にテストできます。

独自のエージェントパイプラインやコーディングプラットフォームを構築しているチームのために、Novita AI はエージェントを実行するための分離されたサンドボックス環境も提供しています。これはローカルマシンとは別で、ファイルアクセスが制限され、実行が管理されます。

FAQ

Codex は元の OpenAI Codex モデルと同じですか?

いいえ。元の Codex は OpenAI が 2021 年にリリースし、後に非推奨となったコード生成モデルです。Codex CLI は別の製品であり、2025 年にリリースされたオープンソースのターミナルエージェントで、Chat Completions API を通じて現在の OpenAI モデル(GPT-4o、o3 など)を使用します。名前は似ていますが、製品に関連性はありません。

Codex CLI で GPT-4o や新しい OpenAI モデルを使用できますか?

はい。Codex CLI の TOML 設定の model フィールドは、設定されたプロバイダがサポートする任意のモデル ID を受け入れます。OpenAI のエンドポイントを指定すれば、gpt-4oo3o4-mini およびその他の現在のモデルがすべて動作します。

Claude Code は OpenAI 互換のエンドポイントをサポートしていますか?

直接はサポートしていません。Claude Code は Anthropic Messages API フォーマットを使用するため、Anthropic 互換のエンドポイントを公開するプロバイダが必要です。Novita AI はこれをサポートしています。OpenAI のエンドポイントは異なるフォーマットを使用しており、互換性がありません。

どちらのツールの方が安く実行できますか?

どちらのツールも API リクエストを送信するため、コストはツール自体ではなく、接続先のモデルとプロバイダに依存します。どちらのツールでも、Novita AI を通じて DeepSeek V3 や Qwen3-Coder のような低コストのモデルに切り替えることが、主なコスト削減手段です。最新の料金は「Novita AI モデルライブラリ」でご確認ください。

両方のツールを一緒に使えますか?

両方を使うチームもあります。Codex CLI は CI やスクリプト化されたコンテキストに導入するのに十分軽量であり、Claude Code は VS Code でのインタラクティブな開発セッションを処理します。ツールはセッションを共有しないため、組み合わせるには個別の設定を維持する必要があります。管理は可能ですが、意図的に行う価値があります。


おすすめの記事

  1. Codex CLI を Novita AI モデルで使う方法:完全セットアップガイド
  2. Claude Code CLI ドキュメント:セットアップ、スラッシュコマンド、LLM API 統合
  3. CLI vs IDE コーディングエージェント:次のプロジェクトに最適な選択は?