Codex
Codex CLI terhubung ke kenari lewat provider kustom di ~/.codex/config.toml. Codex versi terbaru hanya memakai format API Responses, jadi provider harus menunjuk ke endpoint /v1/responses milik kenari. Lihat Responses untuk endpoint-nya.
Atur provider
Section titled “Atur provider”Buat atau ubah ~/.codex/config.toml:
model = "step-3-7-flash:free"model_provider = "kenari"
[model_providers.kenari]name = "kenari"base_url = "https://kenari.id/v1"wire_api = "responses"env_key = "KENARI_API_KEY"requires_openai_auth = false| Pengaturan | Nilai |
|---|---|
model | Id model dari Model & harga. step-3-7-flash:free bisa dipakai dengan saldo nol. |
base_url | https://kenari.id/v1. Berbeda dengan Claude Code, Codex membutuhkan /v1. |
wire_api | responses. Codex tidak lagi menerima chat. |
env_key | Nama variabel environment yang menyimpan key kamu. |
Lalu ekspor key di shell yang menjalankan Codex:
export KENARI_API_KEY=kn-...Buat key di API Keys pada dashboard. Lihat Autentikasi & API key.
Simpan key di auth.json
Section titled “Simpan key di auth.json”Kalau kamu lebih suka menyimpan key di ~/.codex/auth.json, atur requires_openai_auth = true dan hapus baris env_key. Lalu simpan key kenari di file itu dengan menjalankan perintah ini, yang membaca key dari variabel environment dan menuliskannya ke auth.json:
printenv KENARI_API_KEY | codex login --with-api-keyIsi file itu seharusnya hanya key kenari:
{ "OPENAI_API_KEY": "kn-..." }Field-nya bernama OPENAI_API_KEY karena Codex memakai nama itu untuk API key apa pun. Nilainya adalah key kenari kamu.
Cek koneksi
Section titled “Cek koneksi”Jalankan Codex dan kirim prompt singkat:
codexKalau ada balasan, koneksi sudah berjalan.
Troubleshooting
Section titled “Troubleshooting”| Gejala | Penyebab | Solusi |
|---|---|---|
401 dengan invalid key atau missing authorization | KENARI_API_KEY belum diatur di shell ini, atau key tidak diawali kn-. | Ekspor ulang key, lalu restart Codex. |
400 dengan model_not_found | Id model salah ketik atau tidak ada di katalog. | Salin id dari Model & harga. |
402 dengan insufficient_balance | Model berbayar dan saldomu kosong. | Pakai model :free, atau top up. Lihat Cara penagihan. |
405 | base_url punya /v1 ganda atau tidak punya /v1. | Atur base_url persis https://kenari.id/v1. |