Dokumentasi
twinny
twinny tidak meminta URL dasar. twinny meminta protokol, nama host, port dan jalur API, dan untuk obrolan jalur tersebut adalah jalur dasar API — jadi gunakan https, api.kunavo.com dan /v1, dengan port dibiarkan kosong.
twinny tidak memiliki field base-URL — Add provider → OpenAI-compatible server, lalu Protocol https, Hostname api.kunavo.com, Port kosong, dan API path /v1; panel chat-nya menggunakan key Anda.
Label Kunavo
Type Chat
Provider OpenAI-compatible server
Hostname api.kunavo.com
Port (leave blank — "Blank means the protocol's default")
Protocol https
API path /v1
Model name claude-sonnet-5
FIM template (Autocomplete only — not part of a Chat provider)
API key sk-kn-.../v1, bukan /v1/chat/completions. Tabel penyedia twinny menegaskannya dalam satu kalimat — “Untuk obrolan, jalurnya adalah jalur dasar API; twinny menambahkan /chat/completions” — sehingga jalur yang sudah memuat rute menghasilkan /v1/chat/completions/chat/completions dan 404. Tidak ada satu kolom URL dasar yang bisa salah diisi di sini, tetapi tabel yang sama menawarkan cara pintas: tempelkan https://api.kunavo.com/v1 ke Nama host dan URL tersebut akan “dipecah menjadi protokol, host, port dan jalur”.sk-kn-) dan tambahkan kredit mulai dari $10 — panggilan dibayar dari saldo tersebut, dan panggilan yang gagal tidak ditagihkan. Dasbor kemudian terbuka pada penyiapan twinny.Langkah demi langkah
- Buat key di
/app/keysdan salin — key hanya ditampilkan sekali. - Buka tab Penyedia melalui ikon robot di bagian atas bilah samping, atau jalankan Kelola penyedia twinny dari palet perintah.
- Tambahkan penyedia → di bagian Di komputer Anda, pilih
OpenAI-compatible server, preset serbaguna. Secara awal, preset ini mengarah kelocalhost:8080. - Atur Protokol ke
https, Nama host keapi.kunavo.com, kosongkan Port, dan atur Jalur API ke/v1. Biarkan Jenis tetap padaChat. - Tempelkan kunci ke Kunci API — twinny mengirimnya sebagai
Authorization: Bearer. Lalu atur Nama model, baik dengan mengetiknya maupun melalui Pilih dari model server, karena Kunavo melayaniGET /v1/models. - Tekan Uji penyedia, lalu Gunakan penyedia ini untuk menjadikannya penyedia obrolan aktif. Gunakan Salin untuk menggandakan baris bagi model kedua, alih-alih mengetik ulang keempat kolom endpoint.
Diperiksa terhadap halaman Server lokal lainnya milik twinny 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 twinny.
# 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 twinny |
|---|---|---|
claude-sonnet-5 | $1.40 / $7.00 | panel obrolan, pengeditan sebaris dan peninjauan kode — pilihan bawaan untuk pekerjaan |
claude-haiku-4-5 | $0.70 / $3.50 | pesan commit, bantuan terminal dan tindakan kode, yang didominasi oleh volume penggunaan |
gpt-5-6-terra | $0.70 / $4.20 | berkas panjang yang ditempelkan ke obrolan, serta pendapat kedua dari keluarga model lain ketika hasil peninjauan terasa kurang mendalam |
Obrolan cocok. Pelengkapan otomatis dan indeks tidak.
twinny membagi pekerjaan ke tiga jenis penyedia, dan masing-masing dikonfigurasi secara terpisah — jadi pernyataan “twinny berfungsi dengan Kunavo” hanya benar untuk salah satunya. Dua jenis lainnya bukan soal konfigurasi yang belum Anda temukan; rute yang dibutuhkan keduanya tidak dilayani oleh Kunavo.
| Jenis penyedia | Yang dikirim twinny | Dengan api. |
|---|---|---|
| Obrolan | POST berformat OpenAI ke <API path>/ | Cocok — inilah yang dibahas di halaman di atas. |
| Pelengkapan otomatis (FIM) | prompt fill-in-the-middle mentah ke /v1/ | Tidak. Kunavo tidak memiliki rute /v1/ |
| Embedding | permintaan ke /v1/ | Tidak. Kunavo tidak menyediakan model embedding, sehingga indeks ruang kerja tidak dapat dibangun di sini. |
Kedua keterbatasan tersebut tidak menghalangi penyiapan, karena twinny mempertahankan satu penyedia aktif untuk setiap jenis dan semuanya saling independen. Halaman API yang dihosting miliknya sendiri menyebut pembagian ini “konfigurasi yang umum”: model dasar lokal kecil untuk pelengkapan, bersama model yang dihosting untuk obrolan, peninjauan dan pengeditan. Indeks ruang kerja menggunakan pola yang sama — tahap embedding tidak dilayani di sini, dan dokumentasi twinny mengarahkannya ke model lokal seperti nomic-embed-text di Ollama sebagai gantinya. Vektor dari model berbeda tidak dapat dicampur, sehingga mengganti model tersebut berarti membangun ulang indeks, bukan memperbaruinya.
Pertanyaan umum
Bagaimana cara mengarahkan twinny ke endpoint API kustom?
Buka tab Penyedia melalui ikon robot di bilah samping twinny, pilih Tambahkan penyedia, lalu di bagian “Di komputer Anda”, pilih preset serbaguna bernama “Server yang kompatibel dengan OpenAI”. Dokumentasi twinny menyatakan bahwa formulir penyedia menerima nama host, port, protokol dan jalur apa pun, sehingga Anda mengatur Protokol ke https, Nama host ke host endpoint Anda, membiarkan Port kosong agar menggunakan nilai bawaan protokol, dan mengatur Jalur API ke jalur dasar API. Tempelkan kunci Anda ke kolom Kunci API, yang dikirim twinny sebagai header Authorization: Bearer, lalu tekan Uji penyedia — tombol tersebut mengirim permintaan kecil untuk tugas penyedia itu dan melaporkan keberhasilan atau kesalahan yang dikembalikan server, beserta URL yang dipanggil.
Apakah jalur API twinny memerlukan /v1 atau /v1/chat/completions?
Untuk penyedia obrolan, gunakan /v1. Tabel penyedia twinny menyatakan “Untuk obrolan, jalurnya adalah jalur dasar API; twinny menambahkan /chat/completions”, sehingga ekstensi membangun rute lengkapnya sendiri dan jalur yang sudah memuatnya menjadi /v1/chat/completions/chat/completions, yang menghasilkan 404, bukan kesalahan autentikasi. Pelengkapan otomatis dan embedding menggunakan konvensi sebaliknya pada formulir yang sama: untuk keduanya, jalur API adalah rute lengkap, yaitu /v1/completions dan /v1/embeddings dalam nilai bawaan preset umum.
Di mana kunci API twinny diisikan, dan apakah ada kolom URL dasar?
Kunci diisikan ke kolom API key penyedia dan dikirim sebagai Authorization: Bearer; dokumentasi twinny menyatakan bahwa kunci disimpan bersama penyedia di penyimpanan VS Code dan disamarkan dalam log twinny. Tidak ada satu kolom URL dasar — endpoint dibagi ke Protocol, Hostname, Port dan API path. Cara pintasnya adalah menempelkan URL lengkap ke Hostname: dokumentasi menyatakan bahwa URL yang ditempelkan, seperti https://my-box:8080/v1, dipecah menjadi protokol, host, port dan jalur, sehingga menempelkan https://api.kunavo.com/v1 mengisi tiga kolom sekaligus.
Bisakah pelengkapan otomatis twinny berjalan melalui gateway yang dihosting seperti Kunavo?
Tidak, dan alasannya adalah rute yang tidak tersedia, bukan pengaturan. Preset umum twinny yang kompatibel dengan OpenAI mengirim prompt fill-in-the-middle mentah melalui POST ke rute bergaya /v1/completions, dan api.kunavo.com tidak melayani /v1/completions; katalog juga tidak memiliki model dasar atau model kode yang dilatih untuk fill-in-the-middle. Tetap gunakan server lokal untuk pelengkapan otomatis — FAQ twinny menyarankan qwen2.5-coder:1.5b-base di Ollama — dan gunakan penyedia yang dihosting untuk obrolan. twinny menyebut kombinasi itu konfigurasi yang umum, dan karena penyedia aktif dipilih untuk setiap jenis, Anda tidak perlu beralih penyedia.
Bisakah Kunavo menjalankan indeks ruang kerja twinny?
Tidak. Indeks ruang kerja membuat embedding berkas Anda dengan penyedia Embedding, dan Kunavo tidak menyediakan model embedding — tidak ada model dalam katalognya yang mendukung endpoint tersebut, sehingga permintaan ditolak, bukan dilayani. Dokumentasi twinny sendiri merekomendasikan nomic-embed-text di Ollama untuk tugas ini, yang berjalan di komputer Anda dan independen dari penyedia mana pun yang melayani obrolan. Ini adalah konfigurasi terpisah, bukan konfigurasi yang terhalang; perhatikan bahwa pembangunan ulang diperlukan jika Anda kemudian mengganti model embedding, karena vektor dari model berbeda tidak dapat dicampur.
Mengapa tidak menggunakan preset OpenAI atau Anthropic twinny dengan kunci Kunavo?
Karena preset tersebut tidak mengirim permintaan ke tujuan yang Anda kira. Halaman API yang dihosting milik twinny menyatakan bahwa obrolan dengan API yang dihosting menggunakan SDK vendor menuju endpoint tetapnya, sehingga kolom nama host, port dan jalur disembunyikan — kunci yang Anda tempelkan akan dikirim ke endpoint milik vendor tersebut, bukan ke gateway Anda. Preset umum “Server yang kompatibel dengan OpenAI” mempertahankan kolom endpoint agar dapat diedit, dan itulah sebabnya preset tersebut disebutkan di atas. ID model diteruskan ke endpoint apa pun yang Anda konfigurasi, sehingga ID Claude pada penyedia yang kompatibel dengan OpenAI adalah kombinasi yang memang dimaksudkan, bukan ketidakcocokan.
Apakah Kunavo telah menguji twinny?
Tidak. Kunavo belum menjalankan pengujian runtime apa pun terhadap klien ini; konfigurasi di atas disusun dari dokumentasi twinny sendiri, yang diperiksa pada 21 September 2026, dan dari tabel rute Kunavo. Halaman penyiapan yang dipublikasikan bukanlah pengujian. Pemeriksaan yang tidak memerlukan biaya adalah tombol Uji penyedia twinny, yang melaporkan URL yang dipanggil beserta respons apa pun dari server, dan satu pemanggilan curl ke /v1/models memastikan apakah kegagalan berasal dari endpoint, kunci atau formulir.