Dokümantasyon

Dokümantasyon

CC Switch

CC Switch, Claude Code ile Codex'i masaüstü uygulamasından sağlayıcılar arasında geçirir. Kunavo, Özel Yapılandırma olarak eklenir: hizmet kökü, Bearer kimlik doğrulaması, Anthropic'e özgü Messages desteği ve yerel yönlendirme yok.

Üç alan ve iki açılır menü. Uç nokta olarak https://api.kunavo.com, sk-kn-… anahtarınız ve çoğu kılavuzun atladığı bölüm: API Format alanını Anthropic Messages (Native), Auth Field alanını da ANTHROPIC_AUTH_TOKEN olarak bırakın. Kunavo, Messages API'yi doğrudan destekler; bu nedenle Claude Code tarafında yerel yönlendirme gerekmez.

CC Switch → Claude Code sekmesi → Sağlayıcı ekle
Provider Name   Kunavo
API Key         sk-kn-...
API Endpoint    https://api.kunavo.com      <- service root, no /v1, no trailing slash

Advanced Options
  API Format    Anthropic Messages (Native) <- the default; do NOT switch
  Auth Field    ANTHROPIC_AUTH_TOKEN (Default)
Uç nokta, hizmet köküdür: /v1 yok, sonda eğik çizgi yok. Anthropic tarzı istemciler /v1/messages yolunu kendileri ekler; bu yüzden bu alan, temel URL'de /v1 yolunun bulunması gereken tüm OpenAI örneklerinden farklı görünür. Ayrıntılı açıklama için ANTHROPIC_BASE_URL sayfasına bakın.

Adım adım (Claude Code sekmesi)

  1. /app/keys adresinde bir anahtar oluşturup kopyalayın — anahtar yalnızca bir kez gösterilir.
  2. CC Switch'i üst düzey Claude Code sekmesinde açın ve artı düğmesine tıklayın. Bir ön ayar yerine varsayılan Custom Configuration'ı bırakın.
  3. Provider Name ve API Key alanlarını doldurun; API Endpoint alanına https://api.kunavo.com adresini yazın.
  4. Advanced Options bölümünü genişletin ve şu değerleri doğrulayın: API Format için Anthropic Messages (Native), Auth Field için ANTHROPIC_AUTH_TOKEN (Default). İkisi de varsayılan değerlerdir; amaç değiştirmek değil, kontrol etmektir.
  5. Kaydedin, ardından Activate. Kartta Needs Routing işareti görünmemelidir — bu işaret yalnızca protokolünün çevrilmesi gereken sağlayıcılarda görünür.

“Yönlendirme Gerekli” işareti neden yok

CC Switch'in yerel yönlendirmesi, protokoller arasında köprü kurmak içindir. Claude Code, /v1/messages uç noktasına Anthropic Messages istekleri gönderir; yalnızca OpenAI Chat Completions veya Responses API sunan bir ağ geçidi bu isteklere yanıt veremez. Bu nedenle yönlendirme, isteği gönderirken dönüştürür ve yanıtı geri dönerken yeniden dönüştürür. Bu dönüşüm sırasında akış olayları, araç çağrıları ve düşünme yapılandırması yeniden şekillenir. Çalışır, ancak düzenleyicinizle model arasına bir bileşen daha ekler.

Kunavo, POST /v1/messages uç noktasını doğrudan sunar; bu nedenle Claude Code tarafında dönüştürülecek bir şey yoktur: sağlayıcı Anthropic Messages (Native) olarak kalır ve yönlendirme hiç devreye girmez. Aynı anahtar altında POST /v1/chat/completions ve POST /v1/responses uç noktalarını da sunar; aşağıda Codex yönünü mümkün kılan budur.

CC Switch sekmesiBiçimi şu şekilde ayarlayın:Yerel yönlendirme
Claude CodeAnthropic Messages (Native)Gerekli değil
CodexAnthropic Messages (routing required)Gerekli — yönlendirme /responses yolunu /v1/messages olarak yeniden yazar

Codex içinde Claude modellerini çalıştırma

Diğer sağlayıcı kılavuzlarının ele almadığı yön budur. Codex, OpenAI Responses API ile konuşur; bu nedenle doğrudan /v1/messages uç noktasına yönlendirmek 404 döndürür. CC Switch, Codex'i yerel yönlendirmede tutup çeviri yaparak bunu çözer. Codex sekmesinde Anthropic ön ayarı bulunmadığından bu da bir Custom Configuration'dır:

CC Switch → Codex sekmesi → Sağlayıcı ekle
Provider Name      Kunavo
API Key            sk-kn-...
API Request URL    https://api.kunavo.com
Default Model      claude-sonnet-5

Advanced Options
  Upstream Format  Anthropic Messages (routing required)
CC Switch'in kendi kılavuzunda tekrarlanmaya değer bir uyarı var: bazı sağlayıcılar Claude API'lerini yalnızca Claude Code istemcisiyle kullanıma açar; bu nedenle böyle bir anahtar Codex üzerinden kullanıldığında hata verebilir. Kunavo'da durum böyle değildir: aynı sk-kn-… anahtarı hem Messages hem de Responses arayüzünü sunar ve ikisinde de istemci izin listesi yoktur. Çeviriyi tamamen atlamak isterseniz Codex CLI'ı doğrudan Kunavo'nun kendi /v1/responses arayüzüne de yönlendirebilirsiniz; bu yol Codex CLI sayfasında açıklanmıştır.

Model eşlemesi

CC Switch, Claude Code'un üç katmanını gerçek model kimliklerine eşler. Üçünü de ve Default fallback model alanını doldurun — eşleşmeyen istekler aksi hâlde özgün Claude adıyla iletilir ve üst akışta hata verir. Ücretler, katalogdan canlı olarak alınan 1M token başına USD cinsindendir; giriş / çıkış.

KademeModel kimliğiKunavo giriş / çıkışNeden
Haikuclaude-haiku-4-5$0.70 / $3.50Claude Code arka plan alt görevlerini buraya yönlendirir — en ucuz katman doğru seçimdir
Sonnetclaude-sonnet-5$1.40 / $7.00Düzenleme için işe yarayan varsayılan
Opusclaude-opus-5-5$2.80 / $14.00Mimari düzeyde değişiklikler
Katman gerçekten bir milyon tokenlık pencere sunmuyorsa 1M onay kutusunu boş bırakın. Üst akışta olmayan bir bağlam uzunluğu belirtmek hiçbir şeyi genişletmez; yalnızca hatayı uzun bir konuşmanın ortasına taşır.

Uygulamada hata ayıklamadan önce doğrulayın

Bir çift istek, hatanın anahtardan mı, uç noktadan mı yoksa CC Switch'ten mi kaynaklandığını belirler. İkisi de 200 döndürürse, geriye kalan sorun formdaki bir alandadır — neredeyse her zaman Auth Field ya da uç nokta adresinde bulunmaması gereken bir /v1.

# Settles whether a failure is the key, the endpoint, or CC Switch.
# 200 + a JSON list of model ids means the same key works in the app.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

# The Anthropic face, which is the one the Claude Code tab actually calls.
curl -sS https://api.kunavo.com/v1/messages \
  -H "Authorization: Bearer sk-kn-..." \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-haiku-4-5","max_tokens":16,
       "messages":[{"role":"user","content":"ping"}]}'

Kaynak

CC Switch açık kaynaklıdır: github.com/farion1231/cc-switch. Yukarıdaki alan adları ve davranışlar, uygulamanın kendi kılavuzlarından alınmıştır: Claude Code yönlendirme kılavuzu ve Codex yönlendirme kılavuzu. Her ikisi de 3.17.0 ve sonraki sürümler için geçerli olduğunu belirtir. Eski sürümlerde form farklıdır; burada adı geçen bir alan yoksa uygulamanın Hakkında panelini kontrol edin. Kunavo tarafı Messages API, chat completions ve entegrasyonlar merkezinde belgelenmiştir.

Sık sorulan sorular

CC Switch'te özel sağlayıcı nasıl eklenir?

Claude Code sekmesinde artı düğmesine tıklayın, varsayılan Custom Configuration ayarını koruyun ve Provider Name, API Key ile API Endpoint alanlarını doldurun. API Endpoint, sonunda eğik çizgi bulunmayan ağ geçidinin hizmet köküdür; Kunavo için bu https://api.kunavo.com olur, /v1 içermez. Ardından Advanced Options bölümünü açıp iki alanı kontrol edin: API Format ve Auth Field. Sağlayıcının çalışıp çalışmayacağını bu iki alan belirler; çoğu kurulum kılavuzunda da bu alanlar atlanır.

Kunavo için CC Switch'in yerel yönlendirmesini açmam gerekir mi?

Hayır. Yerel yönlendirme, protokoller arasında çeviri yapmak için vardır. Üst akış yalnızca OpenAI Responses veya Chat Completions konuşuyorsa Claude Code'un /v1/messages isteğini bu biçimlere dönüştürür. Kunavo, Anthropic Messages API'sini https://api.kunavo.com/v1/messages adresinde doğrudan sunar. Bu nedenle API Format varsayılan Anthropic Messages (Native) olarak kalır, sağlayıcı kartında Needs Routing işareti görünmez ve istekler doğrudan üst akışa gider. Yalnızca Chat Completions sunan bir ağ geçidi için her istekte yerel yönlendirme gerekir.

OpenAI örneklerinde /v1 varken API Endpoint'te neden yok?

Çünkü iki kural bilerek farklıdır. Anthropic biçimini kullanan istemciler /v1/messages yolunu kendileri eklediğinden yalnızca kök adresi ister: https://api.kunavo.com. OpenAI SDK'ları /v1'in base_url içinde zaten bulunmasını bekler; bu nedenle https://api.kunavo.com/v1 adresini ister. CC Switch'in Claude Code sekmesi Anthropic tarafını kullandığından /v1 eklenmez. Bu iki biçimi karıştırmak tüm istemcilerde en sık görülen kurulum hatasıdır; ANTHROPIC_BASE_URL sayfasında her iki biçim de açıklanır.

Auth Field değerini ANTHROPIC_API_KEY olarak ayarlamalı mıyım?

Hayır, varsayılan olan ANTHROPIC_AUTH_TOKEN değerini koruyun. Bu varsayılan, CC Switch'in Authorization: Bearer <key> göndermesini sağlar. ANTHROPIC_API_KEY seçildiğinde bunun yerine x-api-key başlığı gönderilir; Kunavo bu başlığı da kabul eder. Sorun başlık değil, onaydır. Claude Code, etkileşimli oturumda ANTHROPIC_API_KEY'i kullanmadan önce bir kerelik onay ister. Bu seçeneği reddederseniz anahtar doğru olsa bile sonrasında yok sayılır; bu da hatalı anahtar izlenimi veren bir kimlik doğrulama hatasına yol açar.

CC Switch üzerinden Codex'te Claude modellerini çalıştırabilir miyim?

Evet; sağlayıcı kılavuzlarının çoğunda atlanan kısım da budur. Codex sekmesinde API Request URL https://api.kunavo.com ve claude-sonnet-5 gibi bir Default Model ile Custom Configuration ekleyin. Ardından Advanced Options bölümünde Upstream Format değerini Anthropic Messages (routing required) olarak ayarlayın. Bu yönde yerel yönlendirme açık olmalıdır; çünkü Codex Responses API kullanır ve yönlendirme /responses yolunu /v1/messages olarak yeniden yazar. CC Switch'in kendi kılavuzu, bazı sağlayıcıların Claude API'lerini yalnızca Claude Code istemcisiyle sınırlandırdığını ve bu anahtarların Codex üzerinden çalışmadığını belirtir. Kunavo böyle bir sınırlama uygulamaz: aynı sk-kn- anahtarı her iki tarafta da kullanılır.

CC Switch'in model eşlemesinde hangi model kimliklerini kullanmalıyım?

Kunavo katalog kimliklerini kullanın. İyi bir varsayılan dağılım; Claude Code arka plan alt görevlerini Haiku katmanına gönderdiği için Haiku katmanında claude-haiku-4-5 ($0.70 / $3.50 milyon token başına), Sonnet'te claude-sonnet-5 ($1.40 / $7.00) ve Opus'ta claude-opus-5-5 ($2.80 / $14.00) kullanmaktır. Varsayılan yedek modelini de mutlaka doldurun — boş bırakırsanız CC Switch eşleşmeyen istekleri özgün Claude adıyla iletir ve bunlar upstream'de hata verir. Güncel liste GET /v1/models adresindedir.

CC Switch API anahtarımı nereye koyar?

İstemcinin yapılandırmasına değil, kendi deposuna. CC Switch sağlayıcıları ~/.cc-switch/cc-switch.db içinde tutar. Yerel yönlendirme bir istemcinin kontrolünü devraldığında ~/.claude/settings.json dosyasına yalnızca yerel yönlendirme adresini yazar ve kimlik doğrulama girdisinde yer tutucu kullanır; gerçek anahtar, istek iletilirken yönlendirme tarafından eklenir. Bu, Kunavo'nun değil CC Switch'in özelliğidir. Yapıştırdığınız anahtarın, commit etmek üzere olduğunuz dosyada yer alan anahtar olmadığını bilmek önemlidir.