本記事では、OceanBase MaaSゲートウェイを通じてCodex CLIとCodex Appを使用する方法について説明します。
設定の説明
Codexは、OpenAIが提供するプログラミング向けインテリジェントエージェントで、以下の2つの利用方法をサポートしています:
- Codex CLI:ローカル端末でコードを読み取り、変更、実行するためのオープンソースのコマンドラインツールです。
- Codex App:そのまま使えるデスクトップのグラフィカルアプリケーションです。
Codex CLIとCodex Appは、~/.codex/config.toml設定ファイルと関連する環境変数を共有します。一度設定すれば、CLIとAppで使用できます。
OceanBase MaaSゲートウェイに接続すると、GPTやCodexなどのシリーズモデルを使用できるようになり、OpenAI公式APIに直接アクセスする必要はありません。
プロジェクト |
値 |
|---|---|
| ゲートウェイアドレス | https://ai-api-g.oceanbase.com/api/v1。 |
| プロトコル | OpenAI Responses API。 |
| 認証方式 | MaaSが発行するAPI Key(sk_で始まる)。詳細な操作については、AI API Keyの管理を参照してください。 |
説明
OpenAIはResponses APIを新世代の統一インターフェースと位置づけており、Codexではwire_api = "responses"を設定してこのインターフェースを使用することを推奨しています。Chat Completions APIは既存のアプリケーションや既存の呼び出し方法との互換性のためにのみ使用され、新しいCodex接続には使用することを推奨しません。MaaSゲートウェイは/api/v1/responsesをサポートしています。
Codexのインストール
npmを使用してCodex CLIをグローバルにインストールします。
npm install -g @openai/codex
インストール完了後、codex --versionを実行してインストール状態を確認します。
OpenAI公式Webサイトから対応するプラットフォームのCodex Appインストーラーをダウンロードし、ページの指示に従ってインストールを完了します。
Codex Appは初回起動時に自動的に~/.codex/config.tomlを読み込みます。以下の手順で設定を完了してから、Codex Appを起動してください。
設定手順
MaaS API Keyの取得
OceanBase MaaSコンソール、または社内の手続きを通じてAPI Keyを申請します。形式は通常sk_xxxxです。API Keyは大切に保管し、コードリポジトリには絶対に提出しないでください。詳細な操作については、AI API Keyの管理を参照してください。
Shell環境変数の設定(推奨)
API KeyをShell設定ファイルに書き込み、Codexが起動するたびに自動的に読み取れるようにします。
現在ご利用のShellを確認します。
echo "$SHELL"- 出力が
/bin/zshの場合:エディタを使用して~/.zshrcを開きます。例えば、nano ~/.zshrcまたはvim ~/.zshrcを実行します。 - 出力が
/bin/bashの場合:エディタを使用して~/.bashrcを開きます。例えば、nano ~/.bashrcまたはvim ~/.bashrcを実行します。
- 出力が
Shell設定ファイル(zshを例とする)を開き、ファイルの末尾に以下の内容を追加します。
説明
sk_xxxx をMaaSコンソールから取得した実際のAPIキーに置き換えてください。APIキーの取得方法については、AI APIキーの管理を参照してください。
# ============ OceanBase MaaS + Codex設定 =============
export MAAS_API_KEY="sk_xxxx" # ご自身のMaaS APIキーに置き換えてください
設定を有効にします。
source ~/.zshrc # zsh # または source ~/.bashrc # bash
Codexの設定
Codexの設定ファイルを編集し、MaaSゲートウェイをモデルプロバイダーとして指定します。
~/.codexディレクトリが存在しない場合、まずそのディレクトリを作成してください。mkdir -p ~/.codexエディタを使用して
~/.codex/config.tomlを作成または開きます。例えば、nano ~/.codex/config.tomlまたはvim ~/.codex/config.tomlを実行し、以下の内容を記述します。model_provider = "maas" model = "gpt-5.3-codex" [model_providers.maas] name = "OceanBase MaaS" base_url = "https://ai-api-g.oceanbase.com/api/v1" env_key = "MAAS_API_KEY" wire_api = "responses"パラメータの説明は以下の表のとおりです。
フィールド説明model_providerMaaSをモデルプロバイダーとして指定します。 model使用するモデルを指定します。詳細については、サポートされているモデルを参照してください。 base_urlMaaSのOpenAI互換エンドポイントで、 /api/v1を含みます。env_keyAPIキーを格納する環境変数名です。 wire_apiResponses APIを使用します。
Codexの起動
環境変数をロードし、プロジェクトディレクトリに移動した後、Codex CLIを起動します。
source ~/.zshrc # zsh
# または
source ~/.bashrc # bash
cd /path/to/your/project
codex
Codex Appを直接起動します。アプリケーションは自動的に~/.codex/config.tomlを読み込みます。Codex Appが既に実行中の場合は、設定を変更した後、アプリケーションを再起動してください。
説明
Codex Appを初めて起動する際、システムからAPI Keyの入力を求められた場合は、まずMaaS API Keyを入力し、その後アプリケーションを閉じてください。上記の手順で~/.codex/config.tomlを編集した後、Codex Appを再起動すると、設定が永続的に有効になります。
サポートされているモデル
config.toml の model フィールドを変更することでモデルを切り替えることができます。その他の設定は変更不要です。
GPTおよびCodexシリーズ(ネイティブ名の使用を推奨)
GPTおよびCodexシリーズのモデルについては、ネイティブモデル名の使用を推奨します。例えば、gpt-5.3-codex のように指定することで、Codexがモデルを正しく認識し、推論機能やその他の専用機能を有効にできます。
# 推奨:ネイティブモデル名を使用する
model = "gpt-5.3-codex"
# 推奨されない:プロバイダープレフィックス付きのモデルIDは正しく認識されない可能性があります
model = "openai/gpt-5.3-codex"
現在のMaaSゲートウェイでサポートされているGPTおよびCodexモデル(/api/v1/models インターフェースの実際の返却結果に準拠)は以下の表のとおりです。
モデル |
説明 |
|---|---|
gpt-5.3-codex |
Codexの主力モデル(推奨)。 |
gpt-5.2-codex |
前世代のCodexモデル。 |
gpt-5.4 |
GPT汎用モデル。 |
gpt-5.4-pro |
GPT高性能モデル。 |
gpt-5.4-mini |
GPT軽量モデル。 |
接続の検証
設定が完了したら、環境変数、ゲートウェイの接続性、モデル呼び出しが正常に機能するかを順次検証します。
環境変数の確認
APIキーがShell設定ファイルに書き込まれ、現在の端末環境に読み込まれていることを確認します。
test -n "$MAAS_API_KEY" && echo "MAAS_API_KEY is set"
ゲートウェイ接続性のテスト
MaaSゲートウェイにリクエストを送信し、ネットワーク接続性とAPIキーが有効であることを検証します。
curl -i -sS https://ai-api-g.oceanbase.com/api/v1/models \
-H "Authorization: Bearer $MAAS_API_KEY" | head -c 500
Responses APIのテスト
最小化されたResponses APIリクエストを送信し、モデル呼び出しのパスが完全に利用可能であることを検証します。
curl -i -sS https://ai-api-g.oceanbase.com/api/v1/responses \
-H "Authorization: Bearer $MAAS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.3-codex",
"input": "say ok",
"max_output_tokens": 16
}'
HTTP 200が返され、応答に出力テキストが含まれていれば、設定は正しいことを意味します。
故障診断
APIキーが無効または未認可
echo $MAAS_API_KEYを実行し、MAAS_API_KEYが設定されていることを確認します。APIキーが
sk_で始まり、余分な空白や改行文字が含まれていないか確認します。APIキーがMaaSコンソールで有効な状態にあることを確認します。
現在のShellに応じて設定を再読み込みします。
source ~/.zshrc # zsh # または source ~/.bashrc # bash
接続失敗
- ネットワークが
ai-api-g.oceanbase.comにアクセス可能か確認します。 config.toml内のbase_urlの値がhttps://ai-api-g.oceanbase.com/api/v1。URLに/api/v1を含む必要があることを確認します。- ファイアウォールやプロキシが外出接続を遮断していないか確認します。
環境変数が反映されない
- ターミナルを再起動するか、
source ~/.zshrcまたはsource ~/.bashrcを実行します。 echo "$SHELL"を実行し、APIキーが現在のShellに対応する設定ファイルに書き込まれていることを確認します。
設定ファイルが反映されない
- 設定ファイルのパスが
~/.codex/config.tomlであることを確認します。 cat ~/.codex/config.tomlを実行して、設定ファイルの内容を確認します。- ディレクトリが存在しない場合は、まず
mkdir -p ~/.codexを実行します。 - 設定を変更した後、Codexアプリを再起動してください。
モデルが利用できない
/api/v1/modelsインターフェースを呼び出し、返された結果に対象モデルが含まれていることを確認します。modelフィールドの値がモデルリスト内のidと完全に一致するかどうかを確認します。- GPTおよびCodexシリーズのモデルは、
gpt-5.3-codexのようなネイティブ名を優先的に使用します。 - Responses APIリクエストの
max_output_tokensは16以上でなければなりません。