Editor & agen AI
Tool apa pun yang kompatibel dengan OpenAI atau Anthropic bisa diarahkan ke kenari hanya dengan mengganti base URL dan key. Daftar id model yang valid ada di Model & harga. Untuk mencoba tanpa saldo, tambahkan akhiran :free pada id model. step-3-7-flash:free sudah diverifikasi mengembalikan 200 di semua wire di bawah ini dan tidak memotong saldo, sehingga prosedur berikut selesai walau akun baru dan saldo Rp 0.
Dapatkan key kn-... dari dashboard (API keys -> Buat key). Key ditampilkan sekali dan berlaku untuk semua model, semua provider, dan kedua API (OpenAI dan Anthropic).
Sebelum mulai
Section titled “Sebelum mulai”Base URL singkat:
- Klien kompatibel OpenAI:
https://kenari.id/v1 - Claude Code (protokol Anthropic):
https://kenari.id(Claude Code menambahkan/v1sendiri)
Ringkasan setup
Section titled “Ringkasan setup”Ikuti lima langkah ini sebelum memilih integrasi tool.
1. Buat API key
Section titled “1. Buat API key”Di dashboard, buka API keys, klik Buat key, salin nilai kn-... saat ditampilkan (tidak ditampilkan lagi). Pilih saldo Rp 0 cukup untuk mencoba model gratis, atau top up QRIS dari Rp 1.000 untuk model berbayar.
2. Pilih model
Section titled “2. Pilih model”Pakai id dari Model & harga. Untuk prosedur tanpa saldo, pakai step-3-7-flash:free. Key selalu sama, yang berubah hanya base URL dan nama model.
3. Konfigurasi klien
Section titled “3. Konfigurasi klien”Lanjut ke bagian tool di bawah ini.
4. Mulai
Section titled “4. Mulai”Jalankan CLI atau buka editor.
5. Cek koneksi
Section titled “5. Cek koneksi”Pilih satu cek cepat di Troubleshooting. Cek ini yang paling sering gagal adalah 401 (key salah) dan 402 insufficient_balance (saldo kosong untuk model berbayar). Keduanya dibahas di bawah.
Claude Code
Section titled “Claude Code”1. Buat atau buka API key
Section titled “1. Buat atau buka API key”Salin kn-... dari dashboard. Tidak perlu top up untuk memakai model :free.
2. Pilih model dan saldo
Section titled “2. Pilih model dan saldo”Pakai step-3-7-flash:free agar langkah ini selesai tanpa saldo. Untuk model berbayar, isi saldo QRIS dari Rp 1.000.
3. Konfigurasi
Section titled “3. Konfigurasi”export ANTHROPIC_BASE_URL=https://kenari.idexport ANTHROPIC_AUTH_TOKEN=kn-...export ANTHROPIC_MODEL=step-3-7-flash:freeTaruh ketiga baris di ~/.zshrc supaya menetap, lalu buka terminal baru. Verifikasi env diset tanpa mencetak key:
test -n "$ANTHROPIC_AUTH_TOKEN" && echo setANTHROPIC_BASE_URL adalah root https://kenari.id (tanpa /v1). Claude Code menambahkannya sendiri karena memakai protokol Anthropic. ANTHROPIC_API_KEY (dikirim lewat header x-api-key) juga diterima, dan endpoint count_tokens tersedia sehingga pelacakan konteks Claude Code berfungsi.
Cara ini dan kenari CLI adalah dua jalan untuk hal yang sama, jadi pilih salah satu. Cara manual di atas mengarahkan semua sesi Claude Code ke satu model. CLI mengarahkan satu sesi saja dan bisa mengisi tiap slot dengan model berbeda. kenari claude mengambil alih ketiga variabel di atas untuk sesi yang dijalankannya dan memberi tahu saat melakukannya, jadi ketiganya boleh dibiarkan terpasang kalau mau mencoba CLI.
4. Mulai
Section titled “4. Mulai”claude5. Cek koneksi
Section titled “5. Cek koneksi”Kirim pesan apa pun. Jika Claude Code menampilkan 401 invalid x-api-key, berarti env-nya tidak terbaca (terminal baru belum dibuka atau ~/.zshrc belum di-source). Jika muncul model_not_found, id model salah ketik. Pakai persis step-3-7-flash:free dari Model & harga. Jika muncul 402 insufficient_balance, model bukan :free. Ganti ke model gratis atau isi saldo.
1. Buat atau buka API key
Section titled “1. Buat atau buka API key”Salin kn-... dari dashboard.
2. Pilih model dan saldo
Section titled “2. Pilih model dan saldo”Pakai step-3-7-flash:free. Untuk model berbayar, isi saldo.
3. Konfigurasi
Section titled “3. Konfigurasi”Buat atau edit ~/.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 = falseMengekspor key di shell:
export KENARI_API_KEY=kn-...wire_api = "responses" memakai /v1/responses, satu-satunya wire yang didukung Codex CLI terbaru. wire_api = "chat" sudah dihapus. requires_openai_auth = false berpasangan dengan env_key. Kalau key disimpan di ~/.codex/auth.json pakai requires_openai_auth = true tanpa env_key. Lihat detail di Responses.
4. Mulai
Section titled “4. Mulai”codex5. Cek koneksi
Section titled “5. Cek koneksi”Kirim perintah singkat ke Codex. 401 invalid api key berarti KENARI_API_KEY tidak terbaca. Cek echo $KENARI_API_KEY (akan menampilkan kn-..., yang memang cara verifikasi env). model_not_found berarti id salah. Pakai persis step-3-7-flash:free. Base URL yang keliru (https://kenari.id/v1/v1/chat/completions atau tanpa /v1) mengembalikan 405, bukan 404. Pastikan path persis https://kenari.id/v1.
Claude Code Router
Section titled “Claude Code Router”Claude Code Router (CCR, musistudio/claude-code-router) menerima tautan ccr://provider?... untuk menambahkan provider lewat dialog konfirmasi. Dari mesin yang sudah memasang CCR, buka tautan tambah Kenari ke CCR, lalu CCR menampilkan preview sebelum menyimpan. Key kn-... tidak ikut di URL: CCR memintanya saat konfirmasi.
Kalau tautan tidak melakukan apa-apa, CCR belum terpasang atau skema ccr:// belum terdaftar. Pakai panduan Claude Code lewat env var.
OpenCode
Section titled “OpenCode”Buka OpenCode, ketik /connect, cari Kenari di daftar provider, tempel kn-..., lalu pilih model dari daftar (termasuk step-3-7-flash:free). Kalau lebih suka lewat environment, export KENARI_API_KEY=kn-... juga dikenali tanpa /connect. Format konfigurasi opencode.json milik OpenCode, lihat dokumentasi OpenCode untuk detail.
OmniRoute
Section titled “OmniRoute”Jalankan omniroute setup (atau buka dashboard OmniRoute), cari Kenari di daftar provider, tempel kn-.... Semua model katalog langsung tersedia lewat endpoint OmniRoute, termasuk aturan fallback antar-provider OmniRoute sendiri. Format setup OmniRoute lihat dokumentasi OmniRoute.
Hermes
Section titled “Hermes”Hermes (Nous Research) memakai endpoint kompatibel OpenAI. Base URL diakhiri /v1 dan key dibaca dari OPENAI_API_KEY. Format CLI Hermes lihat dokumentasi Hermes. Konfigurasi pasti berbeda per versi.
OpenClaw
Section titled “OpenClaw”OpenClaw menerima provider custom lewat flag --custom-base-url, --custom-provider-id, --custom-model-id, dan --custom-compatibility. Base URL diakhiri /v1, key dimasukkan lewat konfigurasi OpenClaw dengan apiKey: "kn-...". Format CLI dan file konfigurasi OpenClaw lihat dokumentasi OpenClaw.
Zoo Code
Section titled “Zoo Code”Buka Settings Zoo Code (ikon gerigi), pilih Kenari di dropdown “API Provider”, tempel kn-..., lalu pilih model. Daftar model ditarik otomatis dari /v1/models, jadi katalog selalu terbaru tanpa update ekstensi. Panduan resmi: docs.zoocode.dev/providers/kenari.
MCP server (web dan X search)
Section titled “MCP server (web dan X search)”kenari punya MCP server di https://kenari.id/mcp (Streamable HTTP). Selain tool docs dan daftar model, server ini menyediakan tiga tool web yang langsung ditagih ke saldo kamu:
kenari_web_search: cari web secara langsung, mengembalikan judul, URL, dan snippet, dibatasi 10 hasil.kenari_web_fetch: ambil satu URL, lalu kembalikan teks bersih dari halaman itu.kenari_x_search: cari posting terbaru di X, lalu kembalikan jawaban ringkas, tautan sumber x.com yang aman, dan biaya yang ditagih.
Ketiga tool ini butuh API key. Pasang key di header Authorization pada server MCP kamu, lalu tool bisa dipanggil langsung dari agen mana pun:
{ "mcpServers": { "kenari": { "url": "https://kenari.id/mcp", "headers": { "Authorization": "Bearer kn-..." } } }}kenari_x_search membutuhkan query yang tidak kosong. Parameter opsional x_search_filter sama dengan POST /v1/x/search:
allowed_x_handlesatauexcluded_x_handles: batasi akun X, maksimum 20 handle tanpa@, dan tidak dapat dipakai bersamaan.from_date,to_date: rentang tanggal dalam formatYYYY-MM-DD.enable_image_understanding,enable_video_understanding: baca media dalam posting.
Pencarian dan fetch yang berhasil ditagih per panggilan sesuai tarif yang diatur operator. kenari_x_search memakai saldo PAYG, tanpa kuota paket. Panggilan yang gagal tidak ditagih. Hasil kenari_x_search mencantumkan biaya yang benar-benar didebit.
Troubleshooting
Section titled “Troubleshooting”| Gejala | Penyebab | Solusi |
|---|---|---|
401 invalid api key atau 401 invalid x-api-key | key salah, env tidak terbaca, atau terminal baru belum dibuka | salin ulang kn-... dari dashboard. Buka terminal baru setelah edit ~/.zshrc. Jalankan test -n "$ANTHROPIC_AUTH_TOKEN" && echo set |
model_not_found | id model salah ketik atau tidak ada di katalog | pakai persis step-3-7-flash:free, atau pilih dari Model & harga |
402 insufficient_balance | model berbayar dipakai dengan saldo Rp 0 | ganti ke model :free atau top up QRIS dari Rp 1.000 |
405 dari https://kenari.id/v1/v1/... atau tanpa /v1 | base URL salah bentuk | OpenAI-style harus https://kenari.id/v1. Claude Code harus https://kenari.id |