Dokumentasi
Open Interpreter
Open Interpreter membaca penyedia dari tabel TOML, seperti pendahulunya Codex — tetapi tetap mempertahankan transport Chat Completions yang dihapus oleh Codex upstream. Satu blok [model_providers.kunavo] sudah cukup agar agen dapat berjalan dengan model apa pun yang dapat dijangkau oleh kunci tersebut.
Satu tabel [model_providers.kunavo] di ~/.openinterpreter/config.toml — base_url, env_key, wire_api = "chat" — dan agen terminal Rust berjalan pada model apa pun yang dapat dijangkau key tersebut.
model_provider = "kunavo"
model = "claude-sonnet-5"
[model_providers.kunavo]
name = "Kunavo"
base_url = "https://api.kunavo.com/v1"
env_key = "KUNAVO_API_KEY" # the NAME of the variable, not the key
wire_api = "chat"/v1 pada protokol chat. Dokumentasi Open Interpreter menunjukkan hal ini melalui contoh, bukan aturan yang dinyatakan secara eksplisit: blok penyedia kustom pada halaman penyedia menggunakan base_url = "https://api.example.com/v1", halaman konfigurasi menggunakan "https://api.acme.example/v1", dan gateway terkelola yang mereka sebutkan namanya menggunakan "https://app.nz/v1". Jika akhiran itu dihilangkan, kegagalannya berupa 404, bukan kesalahan autentikasi.0.4.3 dikonfigurasi melalui --api_base, --api_key dan --model openai/<id>, atau melalui interpreter.llm di Python. Semua itu tidak tersedia di agen terminal saat ini, yang hanya membaca tabel TOML di atas. Jalankan interpreter --version sebelum mengedit apa pun — pip install open-interpreter dari tutorial lama akan membuat biner kedua bersaing menggunakan nama yang sama.claude-code secara otomatis — default yang didokumentasikan memilihnya untuk "Anthropic, ID model Claude, URL dasar Anthropic, atau penyedia messages mana pun". Kombinasi ini valid: tabel perutean mencantumkan claude-code sebagai kompatibel dengan wire_api = "chat". Tetapkan harness secara eksplisit jika Anda menginginkan yang lain; nilai eksplisit selalu diutamakan, dan nilai yang tidak dikenali akan beralih ke chat tanpa pembuat permintaan bawaan alih-alih gagal tanpa penjelasan.sk-kn-) dan tambahkan kredit mulai dari $10 — panggilan dibayar dari saldo tersebut, dan panggilan yang gagal tidak ditagihkan. Dasbor kemudian terbuka pada penyiapan Open Interpreter.Langkah demi langkah
- Buat key di
/app/keysdan salin — key hanya ditampilkan sekali. - Ekspor dengan nama yang akan Anda cantumkan di
env_key:export KUNAVO_API_KEY=sk-kn-.... Field itu menyimpan nama variabel, bukan nilainya — dokumentasi mencantumkanenv_keysebagai sumber yang "membaca token bearer dari variabel lingkungan". - Letakkan blok di atas di
~/.openinterpreter/config.toml, atau di.openinterpreter/config.tomldalam proyek tepercaya jika Anda ingin pengaturan tersebut berlaku hanya untuk satu repositori. Konfigurasi proyek lebih diutamakan daripada konfigurasi pengguna; flag-c key=valuelebih diutamakan daripada keduanya untuk proses tersebut. - Jalankan
interpreterdan/model. Pemilih akan lebih dulu meminta rute models dari penyedia aktif, dan Kunavo merespons denganGET /v1/models, sehingga daftar terisi otomatis. - Jalankan
/debug-configjika nilai yang digunakan keliru — perintah ini menampilkan konfigurasi efektif dan sumber setiap nilai, sehingga masalah profil usang atau file proyek bisa diketahui lebih cepat daripada membaca ulang TOML.
Diperiksa terhadap Halaman Penyedia Model Open Interpreter pada 21 September 2026. Pengaturan pihak ketiga dapat berubah; jika nama bidang di sini tidak lagi sama dengan yang Anda lihat, halaman tersebut adalah acuan, bukan halaman ini.
Verifikasi sebelum men-debug klien
Satu permintaan menentukan apakah masalahnya ada pada endpoint, kunci, atau berkas konfigurasi. Jika ini mengembalikan JSON, base URL dan kunci yang sama berfungsi di Open Interpreter.
# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
-H "Authorization: Bearer sk-kn-..."ID model yang harus dimasukkan ke bidang
Setiap model teks dapat diakses melalui ID model — daftar terkininya ada di GET /v1/models, dan katalog beserta harga ada di halaman model. Tarif dalam USD per 1 juta token, input / output.
| ID model | Kunavo masuk / keluar | Kegunaannya di Open Interpreter |
|---|---|---|
claude-sonnet-5 | $1.40 / $7.00 | model kerja default untuk siklus edit dan jalankan |
claude-opus-5 | $3.50 / $17.50 | merencanakan refaktor besar, saat rencana yang keliru berdampak mahal |
claude-haiku-4-5 | $0.70 / $3.50 | sesi yang banyak menggunakan shell, saat jumlah giliran menjadi faktor utama |
gpt-5-6-sol | $2.00 / $12.00 | pendapat kedua dari keluarga model berbeda dengan kunci yang sama |
Pertanyaan umum
Bagaimana cara mengarahkan Open Interpreter ke penyedia API kustom?
Tambahkan tabel [model_providers.<id>] ke ~/.openinterpreter/config.toml dengan name, base_url, env_key, dan wire_api, lalu pilih penyedia itu dengan kunci model_provider tingkat teratas dan tentukan model dengan model. Untuk endpoint yang kompatibel dengan OpenAI, gunakan wire_api = "chat" dan URL dasar yang diakhiri /v1 — itulah bentuk yang ditunjukkan pada halaman penyedia Open Interpreter sendiri untuk penyedia kustom dan gateway terkelola yang mereka sebutkan namanya. env_key menyimpan nama variabel lingkungan, jadi ekspor kuncinya alih-alih menempelkannya ke file.
Apakah base_url Open Interpreter harus diakhiri dengan /v1?
Untuk protokol chat, ya. Dokumentasi tidak menyatakan aturan pembentukan jalur secara tertulis, tetapi setiap contoh penyedia kustom yang dicantumkan menyertakan akhiran tersebut: https://api.example.com/v1 pada halaman penyedia, https://api.acme.example/v1 pada halaman konfigurasi, dan https://app.nz/v1 untuk gateway yang mereka sebutkan. Protokol messages berperilaku berbeda — penyedia bergaya Anthropic yang disertakan bersama klien menggunakan root API tanpa /v1 — jadi jawaban /v1 ini khusus untuk wire_api = "chat" dan wire_api = "responses".
Apakah flag lama --api_base dan --model openai/... masih berfungsi?
Tidak. Flag itu milik paket Python yang dibekukan pada 0.4.3, yang melakukan perutean melalui LiteLLM sehingga memerlukan awalan openai/. Agen terminal saat ini adalah fork Rust dari Codex yang tidak memiliki flag maupun konvensi awalan itu: agen membaca tabel penyedia TOML dari ~/.openinterpreter/config.toml atau .openinterpreter/config.toml tingkat proyek, lalu memilihnya dengan model_provider dan model. Konfigurasinya ditulis dari awal, dan docs.openinterpreter.com mengalihkan ke dokumentasi Rust, jadi tautan dalam tutorial lama masih dapat dibuka meski menjelaskan program yang tidak Anda instal.
Mengapa pemilih /model tidak menampilkan jendela konteks untuk penyedia kustom?
Karena metadata tersebut berasal dari katalog yang disertakan bersama klien. Katalog itu dibuat dari models.dev ditambah beberapa endpoint penyedia yang aktif, dan datanya hanya diisi jika penyedia cocok dengan entri berdasarkan identitas Anthropic, URL dasar, nama penyedia, atau variabel lingkungan autentikasi. Kunavo tidak ada dalam katalog yang dihasilkan tersebut — diperiksa berdasarkan file di repositori pada 21 September 2026 — jadi penyedia yang ditulis secara manual memperoleh daftar model dari rute models milik endpoint itu sendiri, tanpa informasi tambahan. Modelnya tetap dapat dijalankan; pemilih hanya memiliki lebih sedikit informasi untuk ditampilkan di sampingnya.
Bisakah Open Interpreter mengakses model Claude tanpa akun Anthropic?
Ya, karena wire_api menyebut protokol, bukan vendor. Dengan wire_api = "chat", ID model diteruskan ke base_url yang Anda konfigurasi dan diselesaikan di sana, sehingga kredensial yang Anda gunakan adalah milik endpoint tersebut. Open Interpreter tetap akan memilih harness claude-code secara otomatis berdasarkan ID model Claude, dan harness itu tercantum sebagai kompatibel dengan protokol chat. Jadi, kombinasi tersebut mengikuti dokumentasi, bukan solusi alternatif.