Lewati ke konten
kenari.

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).

Base URL singkat:

  • Klien kompatibel OpenAI: https://kenari.id/v1
  • Claude Code (protokol Anthropic): https://kenari.id (Claude Code menambahkan /v1 sendiri)

Ikuti lima langkah ini sebelum memilih integrasi tool.

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.

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.

Lanjut ke bagian tool di bawah ini.

Jalankan CLI atau buka editor.

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.

Salin kn-... dari dashboard. Tidak perlu top up untuk memakai model :free.

Pakai step-3-7-flash:free agar langkah ini selesai tanpa saldo. Untuk model berbayar, isi saldo QRIS dari Rp 1.000.

Terminal window
export ANTHROPIC_BASE_URL=https://kenari.id
export ANTHROPIC_AUTH_TOKEN=kn-...
export ANTHROPIC_MODEL=step-3-7-flash:free

Taruh ketiga baris di ~/.zshrc supaya menetap, lalu buka terminal baru. Verifikasi env diset tanpa mencetak key:

Terminal window
test -n "$ANTHROPIC_AUTH_TOKEN" && echo set

ANTHROPIC_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.

Terminal window
claude

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.

Salin kn-... dari dashboard.

Pakai step-3-7-flash:free. Untuk model berbayar, isi saldo.

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 = false

Mengekspor key di shell:

Terminal window
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.

Terminal window
codex

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 (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.

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.

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 (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 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.

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.

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_handles atau excluded_x_handles: batasi akun X, maksimum 20 handle tanpa @, dan tidak dapat dipakai bersamaan.
  • from_date, to_date: rentang tanggal dalam format YYYY-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.

GejalaPenyebabSolusi
401 invalid api key atau 401 invalid x-api-keykey salah, env tidak terbaca, atau terminal baru belum dibukasalin ulang kn-... dari dashboard. Buka terminal baru setelah edit ~/.zshrc. Jalankan test -n "$ANTHROPIC_AUTH_TOKEN" && echo set
model_not_foundid model salah ketik atau tidak ada di katalogpakai persis step-3-7-flash:free, atau pilih dari Model & harga
402 insufficient_balancemodel berbayar dipakai dengan saldo Rp 0ganti ke model :free atau top up QRIS dari Rp 1.000
405 dari https://kenari.id/v1/v1/... atau tanpa /v1base URL salah bentukOpenAI-style harus https://kenari.id/v1. Claude Code harus https://kenari.id