Dokümantasyon
OpenHands
OpenHands, tüm model çağrılarını LiteLLM üzerinden yönlendirir; bu nedenle birbiriyle uyuşması gereken iki alan vardır: openai/ ön eki taşıyan bir model kimliği ve /v1 son ekini koruyan bir temel URL. Bu ikisini doğru ayarladığınızda Advanced sekmesi, Claude ve GPT'ye tek bir anahtarla erişir.
Settings → LLM → Advanced üç alan alır — Custom Model, Base URL, API Key — model kimliğinde openai/ öneki bulunur ve temel URL /v1'i korur.
# Settings → LLM → Advanced (toggle "Advanced" on first)
Custom Model openai/claude-sonnet-5
Base URL https://api.kunavo.com/v1
API Key sk-kn-...
# The "openai/" prefix is the provider, not a vendor: it tells OpenHands to
# speak the OpenAI Chat Completions protocol to the Base URL above. The model
# id after the slash is Kunavo's, and resolves at Kunavo.
#
# Keep the /v1. It belongs to the openai/ prefix — a litellm_proxy/ model
# takes the bare origin instead, which is the opposite convention./v1'i koruyun ve openai/ ön ekini de koruyun — bunlar iki ayrı değil, tek bir karardır. OpenHands'ın ayarlar sayfası yalnızca “Sağlayıcınızın belirli bir temel URL'si varsa buraya yazın” der; bu nedenle alanın kendisi doğru biçimi açıklamaz. Bunu ön ek açıklar. Model Yapılandırma sayfası, OpenAI uyumlu bir sunucu için openai/<served-model-id> kullanılmasını öngörür; kimlik “genellikle sunucunun GET /v1/models uç noktasından” alınır. Bu rota için gösterilen tek örnek Base URL değeri ise /v1 ile biter — LM Studio kılavuzundaki http://host.docker.internal:1234/v1. Aradaki fark kanıtı ortaya koyar: litellm_proxy/ modelinin temel URL'si https://your-litellm-proxy.com olarak belgelenmiştir; /v1 içermez. Bu ikisini karıştırmak — kök adresle birlikte openai/ kullanmak ya da litellm_proxy/ altında bir /v1 kullanmak — genellikle 401 yerine 404 hatasına yol açar.openai/ örneği de yerel sunuculardır — LM Studio, Ollama, vLLM, SGLang. Belgelerinde uzak bir OpenAI uyumlu ağ geçidine ilişkin örnek yoktur; dolayısıyla yukarıda aktarılanlar bu özel durum için yazılmış bir sayfadan değil, ön ek kuralından ve değer biçiminden alınmıştır. OpenHands ileride böyle bir örnek yayımlarsa başvurulacak kaynak o sayfadır.curl, on saniyede doğrulayabileceğiniz bölümdür; istemcinin davranışını ise siz ve OpenHands belirlersiniz.LLM_EMBEDDING_MODEL ve LLM_EMBEDDING_DEPLOYMENT_NAME alanlarını boş bırakın; kurulumunuzda herhangi bir vektör dizinini veya ses adımını zaten destekleyen sağlayıcıyı kullanmaya devam edin.sk-kn- ile başlar) ve $10'dan kredi ekleyin — çağrılar bu bakiyeden ödenir ve başarısız çağrılar ücretlendirilmez. Ardından kontrol paneli OpenHands kurulumunda açılır.Adım adım
/app/keysadresinde bir anahtar oluşturup kopyalayın — anahtar yalnızca bir kez gösterilir.- Ayarlar → LLM bölümünü açın ve Advanced anahtarını etkinleştirin. Üç alan şu sırayla görünür: Custom Model, Base URL, API Key.
- Model kimliğini ön ekiyle yazın —
openai/claude-sonnet-5,claude-sonnet-5değil. Kunavo'nun sunduğu kimlikler,GET /v1/modelsisteğinin döndürdüğü kimliklerdir; OpenHands'ın kendi belgeleri de özel bir kimliği bu listeden almanızı söyler. https://api.kunavo.com/v1adresini Base URL alanına, anahtarınızı da API Key alanına yapıştırın; ardından Save Changes seçeneğine tıklayın. OpenHands, yerel bir profil kaydedilirken yapılandırmanın önce arka uca göre doğrulandığını ve doğrulama başarısızsa kaydın engellendiğini belirtir. Bu nedenle buradaki bir hata, yalnızca görünüşte değil, gerçekten bir ret anlamına gelir.- Tarayıcınızın erişebildiğini değil, arka ucun erişebildiğini kontrol edin. Temel URL'nin Agent Server'ı çalıştıran makineden çözümlenmesi gerekir — belgeler, Agent Canvas Docker'da çalışıyorsa
127.0.0.1adresinin kapsayıcıyı ifade ettiğini açıkça belirtir. Kunavo gibi herkese açık bir uç nokta kolay durumdur; önünde kurumsal bir proxy varsa durum farklıdır. - Yeni bir yazışma başlatın ve ona bir dosyayı okuyup düzenleyecek görev verin. OpenHands, kaydedilmiş bir LLM'in yeni yazışmalara uygulandığını ve eski yazışmaların önce yeniden başlatılması gerektiğini belirtir. Araçları kullanan bir çalıştırma, bu eşleşme hakkında bir selamlaşmadan daha fazla bilgi verir.
OpenHands'ın Language Model (LLM) Settings sayfası ile 21 Eylül 2026 tarihinde kontrol edilmiştir. Üçüncü taraf ayarları değişebilir; buradaki alan adı gördüğünüzle artık eşleşmiyorsa yetkili kaynak bu sayfa değil, ilgili sayfadır.
İstemcide hata ayıklamadan önce doğrulayın
Tek bir istek, hatanın uç noktadan mı, anahtardan mı yoksa yapılandırma dosyasından mı kaynaklandığını kesinleştirir. Bu JSON döndürürse aynı temel URL ve anahtar OpenHands içinde çalışır.
# 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-..."Alana hangi model kimliği yazılmalı
Her metin modeline model kimliğiyle erişilebilir — güncel liste GET /v1/models, fiyatları içeren katalog ise modeller sayfasında. Ücretler 1 milyon token başına USD cinsindendir; giriş / çıkış.
| Model kimliği | Kunavo giriş / çıkış | OpenHands içinde kullanım alanı |
|---|---|---|
claude-sonnet-5 | $1.40 / $7.00 | günlük çalışma modeli — openai/ |
claude-opus-4-8 | $3.50 / $17.50 | OpenHands'ın kendi dizin tablosunda Claude ailesinin en üstüne koyduğu model |
claude-haiku-4-5 | $0.70 / $3.50 | rutin düzenlemeler için ucuz profil; yazışma ortasında geri dönülebilir |
gpt-5-6-sol | $2.00 / $12.00 | aynı anahtarla ve aynı Base URL üzerinden erişilen ikinci model ailesi |
gpt-6-astra | $4.00 / $20.00 | plan sürekli ters gittiğinde başvurulabilecek üçüncü bir görüş |
Hata ayıklamadan önce bilmeniz gereken üç sınır
OpenHands, tek süreçli bir CLI'dan daha fazla bileşene sahiptir ve bunlardan ikisi LLM uç noktasına benzese de o değildir. Bu bilgiler, yukarıdaki tarihte incelenen kendi belgelerinden alınmıştır:
- Korumalı alan model değildir. OpenHands, çalışmalarınızı bir aracı sunucu korumalı alanında yürütür ve ağ üzerinden modele çağrı yapar; bunlar farklı kimlik bilgilerine sahip ayrı arayüzlerdir. Burada yapılandırılan anahtar model çağrılarını sağlar. Korumalı alanın nereye erişebileceği konusunda hiçbir şeyi belirlemez; korumalı alanın ağ sorunu da kimlik doğrulama hatası gibi görünmez.
- ACP aracıları tamamen ayrı tutulur. Agent Canvas, bir ACP aracısı olarak Claude Code, Codex veya Gemini CLI'ye görev devredebilir; Model Yapılandırma sayfası bunların “kendi model erişimlerini yönettiğini” belirtir. Dolayısıyla bir LLM profili bu alt sürecin yönlendirmesini değiştirmez. Anahtarınız üzerinden trafik bekliyor ama hiç görmüyorsanız hangi aracının çalıştığını kontrol edin. OpenHands ile Claude Code karşılaştırması, bunu belirleyen kimlik bilgisi önceliği kuralı da dahil olmak üzere bu ayrımı ele alır.
- Profiller ve 10 profil sınırı. Kaydedilmiş bir yapılandırma LLM profiline dönüşür; en son kaydedilen profil yeni yazışmalarda etkin olur ve profiller, bağlamı kaybetmeden yazışma ortasında değiştirilebilir. Ucuz ve pahalı bir model kimliğini aynı anahtarla kullanmayı mümkün kılan mekanizma budur. Belgeler, hesap başına en fazla 10 profil olduğunu belirtir. Bir Sağlayıcı Bağlantısı, sağlayıcıyı, API anahtarını ve isteğe bağlı temel URL'yi birden fazla profil için bir kez saklar. Aynı sayfada, bu panelin yerel aracı sunucusu arka uçlarında kullanılabildiği, OpenHands Cloud arka ucunda ise gizlendiği belirtilir.
Sık sorulan sorular
OpenHands'ı özel bir API uç noktasına nasıl yönlendirebilirim?
Ayarlar → LLM bölümünü açın ve OpenHands'ın “özel modelleri ve bazı ek LLM ayarlarını belirlemek” için kullanılabileceğini belirttiği Advanced anahtarını etkinleştirin. Üç alan şu sırayla görünür: Custom Model, Base URL, API Key. Model kimliğini sağlayıcı ön ekiyle girin — OpenAI uyumlu bir uç nokta için openai/<model-id> — uç noktayı Base URL alanına yazın, anahtarınızı yapıştırın ve Save Changes'e tıklayın. Kaydedilen yapılandırma bir LLM profiline dönüşür ve yeni yazışmalara uygulanır; eski yazışmaların bu yapılandırmayı kullanması için yeniden başlatılması gerekir.
OpenHands Base URL’sinin sonunda /v1 bulunması gerekir mi?
openai/ önekli bir model için evet. Ayarlar sayfası yalnızca sağlayıcınızın belirli bir Base URL’si varsa bunu belirtmenizi söylüyor; dolayısıyla tek başına biçimi belirlemiyor — bunu önek belirliyor. OpenHands’in Configure a Model sayfası, OpenAI uyumlu bir sunucu için openai/<served-model-id> biçimini öngörüyor ve kimliği sunucunun GET /v1/models uç noktasından alıyor. Bu yol için gösterdiği tek somut Base URL örneği, LM Studio anlatımında yer alan http://host.docker.internal:1234/v1 adresi. litellm_proxy/ modeli ise bunun tam tersi: belgelenen Base URL’si, /v1 içermeyen yalın proxy kök adresi. Dolayısıyla Kunavo için değer https://api.kunavo.com/v1.
OpenHands LLM profilimi neden kaydetmeyi reddediyor?
OpenHands, yerel bir profili kaydetmeden önce arka uca karşı doğrular. Belgelerine göre doğrulama başarısız olduğunda — örnek olarak geçersiz bir API anahtarı veya kullanılamayan bir model veriliyor — kaydetme engellenir ve hata gösterilir. Dolayısıyla kaydetmenin engellenmesi gerçek bir ret anlamına gelir. Hangi tarafın hatalı olduğunu önce istemcinin dışında belirleyin: aynı anahtarla uç noktanın /v1/models adresine gönderilen tek bir curl isteği, ikili doğruysa JSON, anahtar yanlışsa 401, URL yanlışsa 404 döndürür. Doğrulamayı desteklemeyen eski arka uçlar bu kontrolü atlar ve normal şekilde kaydeder.
OpenHands, Claude modellerini OpenAI uyumlu bir uç nokta üzerinden kullanabilir mi?
Evet. openai/ öneki bir satıcıyı değil, kablolu iletişim protokolünü belirtir: OpenHands, yapılandırdığınız Base URL’ye OpenAI biçiminde bir sohbet tamamlama isteği gönderir ve eğik çizgiden sonraki kimliği doğrudan iletir. Böylece Claude kimliği OpenHands içinde değil, ilgili uç noktada çözülür. OpenHands’in araç çağrılarını yoğun biçimde kullandığını ve düzgün çalışması için güçlü bir model gerektiğinin kendi belgelerinde belirtildiğini unutmayın; bu nedenle bulabileceğiniz en ucuz kimliği kullanacağınız yer burası değil.
Kunavo bu kurulumu OpenHands’te test etti mi?
Hayır. 21 Eylül 2026 tarihinde kontrol edilenler, OpenHands’in kendi belgeleriydi — alan adları, sıraları, önek kuralı ve Base URL biçimi bu belgelerden alıntılanmıştır. Kunavo, kendi uç noktasına karşı OpenHands üzerinden bir sohbet yürütmedi; kimlik doğrulama, akış, araç gidiş dönüşleri veya sabitlenmiş bir istemci sürümündeki model yönlendirmesi hakkında burada herhangi bir iddiada bulunmuyor. Tek başınıza doğrulayabileceğiniz şey, uç noktanın ve anahtarın çalışıp çalışmadığıdır; bu sayfadaki curl bunu gösterir.