·tips

OpenCode ZenをCodex CLIのバックエンドとして使う

Codex CLIのmodel_providers + profilesでOpenCode Zenをバックエンドにする

2 min read
Writing style

まとめ

  • Codex CLIはmodel_providersでカスタムプロバイダーを定義でき、OpenCode Zenも利用可能
  • 単純なOPENAI_BASE_URLの上書きでは動かず、model_providers + profilesの組み合わせが正解
  • codex exec -p <profile>で起動する(codex -p <profile> exec-pがTUI側に吸われexecに伝播されないバグがあり動かない)
  • 起動時に/modelsのデコードエラーログ(missing field 'models')が出るが、ビルトインのモデル定義にフォールバックするため無視してよい

設定

~/.codex/config.tomlに追加:

[model_providers.opencode]
name = "OpenCode Zen"
base_url = "https://opencode.ai/zen/v1"
env_key = "OPENCODE_ZEN_KEY"
wire_api = "responses"

[profiles.zen]
model = "gpt-5.2-codex"
model_provider = "opencode"
model_reasoning_effort = "xhigh"

APIキーは https://opencode.ai/auth で取得する。

export OPENCODE_ZEN_KEY="your-api-key-here"

使い方

codex exec -p zen "hi"
codex exec -p zen        # 対話モード

シェル関数にしておくと便利:

zcodex() {
  : "${OPENCODE_ZEN_KEY:?export OPENCODE_ZEN_KEY=...}"
  codex exec -p zen "$@"
}

利用可能なモデル

curl -s -H "Authorization: Bearer $OPENCODE_ZEN_KEY" \
  https://opencode.ai/zen/v1/models | jq '.data[].id'

Codex CLIで使う場合はwire_api = "responses"に対応したモデル(GPT系)を選ぶ。

ref