Codex アナリティクスの利用状況画面に表示される CLI と Exec は、どちらも Codex をローカル環境やターミナル経由で使った利用状況を示す区分です。ただし、それぞれの意味は異なります。
ふと疑問に思った人用の解説記事ですので、どうぞゆっくり見ていってください。
結論:CLI と Exec の違い
CLI は、通常の codex コマンドで起動する、対話型の Codex CLI 利用を指します。ターミナル上で Codex と会話しながら、コードの調査、修正、テスト、リファクタリングなどを進める使い方です。
Exec は、codex exec による非対話型の Codex 利用を指します。CI、スクリプト、定型作業、自動レビュー、JSON 出力など、「会話する」のではなく「タスクを実行して結果を返す」バッチ処理に近い使い方です。
| 表示 | 意味 | 典型的な使い方 |
|---|---|---|
| CLI | Codex CLI の対話型利用 | ターミナルで Codex と会話しながら実装・修正・調査する |
| Exec | codex exec による非対話型実行 |
スクリプト、CI、GitHub Actions、自動レビュー、JSON 出力など |
画像のグラフで何を表しているのか
Codex アナリティクスの「個人の使用状況」グラフでは、日ごとの Codex 利用が、どの実行形態から発生したかを分類して表示していると考えられます。
ピンク色の CLI は、通常の Codex CLI 利用を示します。茶色の Exec は、codex exec のような非対話型実行を示します。
つまり、グラフ上で CLI が多い日は、ターミナルで対話的に Codex を使った割合が高い日です。一方、Exec が表示されている日は、スクリプトや CI、GitHub Actions、または codex exec 系の実行が発生した可能性があります。
CLI とは何か
CLI は “Command Line Interface” の略です。Codex アナリティクス上の CLI は、主に Codex CLI の対話型利用を指していると考えられます。
OpenAI の公式ドキュメントでは、Codex CLI はローカルのターミナルで実行できるコーディングエージェントとして説明されています。選択したディレクトリ内のコードを読み取り、変更し、必要に応じてコマンドを実行できます。
代表的な起動方法は次のとおりです。
codex
このコマンドを実行すると、Codex の対話型ターミナル UI が起動します。ユーザーは「このバグを直して」「この関数をリファクタして」「テストを追加して」などと指示しながら作業を進められます。
CLI としてカウントされそうな操作例
codex
codex "このリポジトリの構成を説明して"
codex --model gpt-5.4
このような通常の Codex CLI 利用は、アナリティクス上では CLI に分類される可能性が高いです。
Exec とは何か
Exec は、codex exec というサブコマンドによる利用を指している可能性が高いです。
codex exec は、対話型の画面を開いて会話するのではなく、1つのタスクを非対話で実行するためのモードです。OpenAI の公式ドキュメントでは、非対話モードとして codex exec の使い方が説明されています。
たとえば、次のように実行します。
codex exec --json "summarize the repo structure" | jq
この場合、Codex はタスクを実行し、その結果を JSON 形式で出力します。人間が逐次会話しながら進めるというより、スクリプトや自動化ワークフローに組み込みやすい使い方です。
Exec としてカウントされそうな操作例
codex exec "このリポジトリの README を改善して"
codex exec --json "変更内容を要約して"
codex exec --sandbox workspace-write "テストを追加して実行して"
codex exec "Extract project metadata" \
--output-schema ./schema.json \
-o ./project-metadata.json
このように Exec は、定型タスク、自動レビュー、CI、機械可読な出力などに向いています。
CLI と Exec の実務上の違い
CLI と Exec の一番大きな違いは、人間が対話しながら進めるか、自動処理として実行するかです。
CLI は、作業中に Codex とやり取りしながら進める用途に向いています。たとえば、「このエラーの原因を調べて」「次はこの方針で修正して」「その変更はやめて別案にして」といったように、途中で判断を挟みながら進める作業に適しています。
Exec は、あらかじめ決まったタスクを一発で実行させる用途に向いています。たとえば、CI で PR の差分をレビューする、定期実行で issue を要約する、スクリプトでプロジェクト情報を JSON 出力する、といった用途です。
グラフは料金ではなく利用状況の内訳
画像のグラフは、縦軸が 0%〜100% の割合表示になっているように見えます。そのため、各日の利用が CLI と Exec のどちらから発生したかという比率を示している可能性があります。
ただし、このグラフの棒が高い日が、必ずしも料金が高い日やクレジットを大量消費した日とは限りません。Codex の使用量は、タスクのサイズ、複雑さ、実行場所、コードベースの大きさ、長いコンテキストの必要性などによって変わります。
正確な使用量を確認するには、画面上部の期間、集計単位、利用量指標もあわせて確認する必要があります。
公式ソース
根拠として参考になる OpenAI 公式ソースは以下です。
-
Codex CLI 公式ドキュメント
Codex CLI がローカルのターミナルで動作し、コードを読み取り、変更し、実行できること、またcodexやexecによる利用が説明されています。 -
Codex CLI コマンドリファレンス
codexがターミナル UI を起動すること、exec 系コマンドが存在することが説明されています。 -
Codex 非対話モード
codex execの使い方、JSON Lines 出力、権限設定、スキーマ出力などが説明されています。 -
Using Codex with your ChatGPT plan
Codex の使用量が ChatGPT プランの agentic usage limit にカウントされること、タスクのサイズや複雑さによって使用量が変わることが説明されています。 -
Codex GitHub Action
GitHub Actions 内で Codex CLI をインストールし、codex execを実行する用途が説明されています。
まとめ
Codex アナリティクスに表示される CLI は、ターミナルで対話的に Codex を使った分を示します。一方、Exec は、codex exec などを使って非対話・自動実行した分を示します。
日常的にターミナルで Codex と会話しながらコードを修正している場合は CLI が多くなります。CI、スクリプト、GitHub Actions、自動レビューなどに Codex を組み込んでいる場合は Exec が表示される可能性があります。
したがって、画像のグラフは「Codex をどの実行形態で使ったか」を把握するための内訳として見るのが自然です。