Codex CLI dengan UberLLM: jalankan agen pengkodean OpenAI pada model apa pun
Ekspor UBERLLM_API_KEY, lalu tambahkan tabel [model_providers.uberllm] ke ~/.codex/config.toml dengan base_url https://api.uberllm.dev/v1, env_key UBERLLM_API_KEY dan wire_api "responses", dan atur model_provider = "uberllm" ditambah model id. UberLLM melayani panggilan Responses API Codex, sehingga perintah shell, pengeditan file, dan tugas multi-langkah berfungsi pada setiap model chat.
Langkah-langkah
- Buat kunci di halaman kunci Anda dan tambahkan kredit.
- Instal Codex jika Anda belum memilikinya:
npm install -g @openai/codex. - Masukkan kunci ke profil shell Anda (
~/.zshrcatau~/.bashrc) dan buka terminal baru:
export UBERLLM_API_KEY="ull_..."
- Buka
~/.codex/config.toml(buat jika belum ada) dan tambahkan:
model = "moonshotai/kimi-k3"
model_provider = "uberllm"
web_search = "disabled"
[model_providers.uberllm]
name = "UberLLM"
base_url = "https://api.uberllm.dev/v1"
env_key = "UBERLLM_API_KEY"
wire_api = "responses"
- Jalankan
codexdi folder proyek dan berikan tugas.
Pertahankan base_url yang diakhiri dengan /v1: Codex menambahkan /responses ke dalamnya. env_key adalah nama variabelnya, bukan kuncinya sendiri.
Ganti model
Teruskan -m untuk satu sesi, misalnya codex -m deepseek/deepseek-v4.1-flash untuk perbaikan kecil, atau ubah model di dalam file. ID model chat apa pun dari uberllm.dev/models berfungsi.
Untuk skrip dan CI, codex exec menjalankan satu tugas tanpa layar interaktif:
codex exec --skip-git-repo-check "add a docstring to every function in utils.py"
Pengaturan yang Patut Ditambahkan
model_context_window: Codex tidak tahu ukuran konteks model di luar daftar OpenAI dan mengasumsikan 272,000 token. Untuk model yang lebih kecil, atur angkanya dari halamannya di uberllm.dev/models (misalnyamodel_context_window = 131072), agar Codex memadatkan percakapan sebelum kehabisan ruang.model_reasoning_effort:"low","medium"atau"high"diteruskan ke model yang berpikir (DeepSeek, Kimi Thinking, GLM, GPT-5). Biarkan kosong untuk pengaturan default model.web_search = "disabled": Pencarian web Codex berjalan di server milik OpenAI sendiri, jadi tidak bisa berjalan melalui penyedia lain. Dengan mematikannya, model tidak ditawari alat yang tidak bisa digunakannya.
Apa yang berfungsi
Setiap alat Codex adalah panggilan fungsi normal dari sisi API, jadi eksekusi perintah, pengeditan file, rencana, dan server MCP yang Anda tambahkan ke Codex semuanya berfungsi pada model apa pun yang menerima panggilan alat. Codex mengirimkan seluruh percakapan pada setiap giliran (store = false), jadi tidak ada yang disimpan di UberLLM di antara panggilan. Setiap panggilan muncul di Dashboard → Activity di bawah nama aplikasi codex, dengan biayanya.
Pemecahan Masalah
wire_api = "chat"tidak lagi didukung: Codex 0.95 dan yang lebih baru hanya mendukung Responses API. Aturwire_api = "responses".- 401 atau "Missing environment variable: UBERLLM_API_KEY": variabel tersebut tidak diekspor di terminal tempat Codex berjalan. Buka terminal baru setelah mengedit profil Anda, atau jalankan
export UBERLLM_API_KEY=...terlebih dahulu. - 404 di setiap giliran:
base_urltidak memiliki/v1. Itu harus persishttps://api.uberllm.dev/v1. - "Model metadata for … not found. Defaulting to fallback metadata": Codex mencetak ini untuk setiap model di luar daftar OpenAI sendiri. Ini tidak berbahaya; atur
model_context_windowseperti di atas. - Model menjawab tetapi tidak pernah menjalankan perintah: pilih model dari tabel pertama. Model kecil cenderung keluar dari format alat Codex.
- 402 kredit tidak mencukupi: tambahkan kredit di halaman kredit. Untuk batas keras, atur batas pengeluaran pada kunci tersebut.