Providers
OpenRouter
OpenRouter, istekleri tek bir API ve tek bir anahtar üzerinden birçok modele yönlendirir.
OpenAI uyumlu olduğundan OpenClaw, diğer proxy sağlayıcılarında kullanılan
aynı openai-completions tarzı aktarım üzerinden onunla iletişim kurar.
Başlarken
OAuth
OAuth ilk kurulumunu çalıştırın
openclaw onboard --auth-choice openrouter-oauthOpenClaw, OpenRouter'ın tarayıcıda oturum açma akışını (PKCE) açar, kodu bir OpenRouter API anahtarıyla değiştirir ve varsayılan OpenRouter kimlik doğrulama profiline kaydeder. Uzak/ekransız ana makinelerde OpenClaw, oturum açma URL'sini yazdırır ve oturum açtıktan sonra yönlendirme URL'sini yapıştırmanızı ister.
(İsteğe bağlı) Belirli bir modele geçin
İlk kurulum varsayılan olarak openrouter/auto kullanır. Daha sonra belirli bir model seçin:
openclaw models set openrouter/<provider>/<model>API anahtarı
API anahtarınızı alın
openrouter.ai/keys adresinde bir API anahtarı oluşturun.
API anahtarıyla ilk kurulumu çalıştırın
openclaw onboard --auth-choice openrouter-api-key(İsteğe bağlı) Belirli bir modele geçin
İlk kurulum varsayılan olarak openrouter/auto kullanır. Daha sonra belirli bir model seçin:
openclaw models set openrouter/<provider>/<model>Yapılandırma örneği
{ env: { OPENROUTER_API_KEY: "sk-or-..." }, agents: { defaults: { model: { primary: "openrouter/auto" }, }, },}Model referansları
Canlı katalog keşfi kullanılamadığında kullanılan paketlenmiş yedek modeller:
| Model referansı | Notlar |
|---|---|
openrouter/auto |
OpenRouter otomatik yönlendirmesi |
openrouter/moonshotai/kimi-k2.6 |
MoonshotAI üzerinden Kimi K2.6 |
openrouter/moonshotai/kimi-k2.5 |
MoonshotAI üzerinden Kimi K2.5 |
openrouter/openrouter/fusion (Fusion yönlendiricisi bölümüne
bakın) dahil olmak üzere diğer tüm openrouter/<provider>/<model> referansları,
OpenRouter'ın canlı model kataloğuna göre dinamik olarak çözümlenir.
Görüntü oluşturma
OpenRouter, image_generate aracını destekleyebilir. agents.defaults.imageGenerationModel
altında bir OpenRouter görüntü modeli ayarlayın:
{ env: { OPENROUTER_API_KEY: "sk-or-..." }, agents: { defaults: { imageGenerationModel: { primary: "openrouter/google/gemini-3.1-flash-image-preview", timeoutMs: 180_000, }, }, },}OpenClaw, görüntü isteklerini modalities: ["image", "text"] ile OpenRouter'ın
sohbet tamamlama görüntü API'sine gönderir. Gemini görüntü modelleri ayrıca
OpenRouter'ın image_config alanı üzerinden aspectRatio ve resolution
ipuçlarını alır; diğer görüntü modelleri almaz. Daha yavaş modeller için
agents.defaults.imageGenerationModel.timeoutMs kullanın; image_generate
aracının çağrı başına timeoutMs değeri yine önceliklidir.
Video oluşturma
OpenRouter, eşzamansız /videos API'si üzerinden video_generate aracını
destekleyebilir. agents.defaults.videoGenerationModel altında bir OpenRouter
video modeli ayarlayın:
{ env: { OPENROUTER_API_KEY: "sk-or-..." }, agents: { defaults: { videoGenerationModel: { primary: "openrouter/google/veo-3.1-fast", }, }, },}OpenClaw, metinden videoya ve görüntüden videoya işleri gönderir, döndürülen
polling_url adresini yoklar ve tamamlanan videoyu OpenRouter'ın
unsigned_urls alanından veya iş içeriği uç noktasından indirir. Referans
görüntüler varsayılan olarak ilk/son kare görüntüleri şeklinde kullanılır;
reference_image etiketi taşıyan görüntüler ise bunun yerine giriş
referansları olarak gönderilir. Paketlenmiş varsayılan google/veo-3.1-fast,
4/6/8 saniyelik süreleri, 720P/1080P çözünürlükleri ve 16:9/9:16 en-boy
oranlarını destekler. Videodan videoya dönüştürme desteklenmez: üst API yalnızca
metin ve görüntü referanslarını kabul eder.
Müzik oluşturma
OpenRouter, sohbet tamamlama ses çıktısı üzerinden music_generate aracını
destekleyebilir. agents.defaults.musicGenerationModel altında bir OpenRouter
ses modeli ayarlayın:
{ env: { OPENROUTER_API_KEY: "sk-or-..." }, agents: { defaults: { musicGenerationModel: { primary: "openrouter/google/lyria-3-pro-preview", timeoutMs: 180_000, }, }, },}Paketlenmiş OpenRouter müzik sağlayıcısı varsayılan olarak
google/lyria-3-pro-preview kullanır ve ayrıca google/lyria-3-clip-preview
modelini sunar. OpenClaw, modalities: ["text", "audio"] gönderir, yanıtı akış
halinde alır, ses parçalarını toplar ve sonucu kanal üzerinden teslim edilmek
üzere oluşturulmuş medya olarak kaydeder. Lyria modelleri, ortak
music_generate image=... parametresi üzerinden bir referans görüntüyü kabul
eder. Akış halindeki ses, transkript saklama ve türetilmiş SSE olay zarfı
agents.defaults.mediaMaxMb ile sınırlandırılır (varsayılan ses sınırı 16 MB'dir).
Metinden konuşmaya
OpenRouter, OpenAI uyumlu /audio/speech uç noktası üzerinden bir TTS
sağlayıcısı olarak çalışabilir.
{ messages: { tts: { auto: "always", provider: "openrouter", providers: { openrouter: { model: "hexgrad/kokoro-82m", speakerVoice: "af_alloy", responseFormat: "mp3", }, }, }, },}messages.tts.providers.openrouter.apiKey belirtilmezse TTS, önce
models.providers.openrouter.apiKey değerine, ardından OPENROUTER_API_KEY
değerine geri döner.
Konuşmadan metne (gelen ses)
OpenRouter, ortak tools.media.audio yolu üzerinden, STT uç noktasını
(/audio/transcriptions) kullanarak gelen sesli mesaj/ses eklerini yazıya
dökebilir. Bu, gelen sesli mesajları/sesleri medya anlama ön kontrolüne ileten
tüm kanal Plugin'leri için geçerlidir.
{ tools: { media: { audio: { enabled: true, models: [{ provider: "openrouter", model: "openai/whisper-large-v3-turbo" }], }, }, },}OpenClaw, OpenRouter STT isteklerini çok parçalı OpenAI form yüklemeleri olarak
değil, input_audio altında base64 ses içeren JSON biçiminde (OpenRouter'ın STT
sözleşmesi) gönderir.
Fusion yönlendiricisi
OpenRouter Fusion, tek bir OpenClaw model referansını paralel olarak birden
fazla OpenRouter modeline gönderir, yanıtları OpenRouter'a değerlendirtir ve
normal OpenRouter uç noktası üzerinden tek bir nihai yanıt döndürür. Üst model
kısa adı openrouter/fusion olduğundan OpenClaw model referansı hem OpenClaw
sağlayıcı önekini hem de üst OpenRouter ad alanını içerir:
openclaw models set openrouter/openrouter/fusionFusion'ın panelini ve değerlendiricisini modelin params.extraBody alanı
üzerinden yapılandırın; bu alanlar doğrudan OpenRouter sohbet tamamlama isteği
gövdesine iletilir. Fusion, hem OAuth hem de API anahtarıyla ilk kurulumla
çalışır; OAuth kullanıyorsanız aşağıdaki env.OPENROUTER_API_KEY satırını
atlayın.
{ env: { OPENROUTER_API_KEY: "sk-or-..." }, agents: { defaults: { model: { primary: "openrouter/openrouter/fusion" }, models: { "openrouter/openrouter/fusion": { params: { extraBody: { plugins: [ { id: "fusion", analysis_models: [ "google/gemini-3.5-flash", "moonshotai/kimi-k2.6", "deepseek/deepseek-v4-pro", ], model: "google/gemini-3.5-flash", }, ], }, }, }, }, }, },}analysis_models paralel paneldir; Fusion Plugin yapılandırmasındaki model
ise değerlendirici modeldir. Normal ajan/sohbet işlemlerinde Fusion'ı zorlamak
amacıyla üst düzey tool_choice değerini "required" olarak ayarlamayın:
OpenClaw işlemleri kendi araç tanımlarını içerebilir ve üst düzey zorunlu araç
seçimi, Fusion yönlendiricisi yerine bunlardan birini seçebilir. Bu Fusion
Plugin yapılandırması mevcut olduğunda OpenClaw, yapılandırılmış analiz
modellerini ve değerlendirici modeli listeleyen arındırılmış bir sistem istemi
notu ekler; böylece ajan kendi Fusion paneli hakkındaki soruları yanıtlayabilir.
Diğer extraBody alanları isteme kopyalanmaz.
Fusion tasarım gereği daha yavaştır: OpenRouter, istemi birden fazla analiz modeline dağıtır ve ardından bir değerlendirme/sentez adımı çalıştırır; bu nedenle gecikme, doğrudan tek model isteğine göre daha yüksektir. Gecikmeye duyarlı bir varsayılan olarak değil, bilinçli ve yüksek kaliteli yanıtlar veya yükseltme yolları için kullanın. Paneli küçük tutun ve daha hızlı yanıtlar için daha hızlı analiz/değerlendirici modelleri seçin.
Yapılandırılmış bir referansı tek seferlik yerel çağrıyla test edin:
openclaw infer model run --local \ --model openrouter/openrouter/fusion \ --prompt "Reply with exactly: FUSION_OK" \ --jsonKimlik doğrulama ve üstbilgiler
OpenRouter, API anahtarınızdan alınan bir Bearer belirteci kullanır. OpenRouter
OAuth, bir OpenRouter API anahtarı veren PKCE oturum açma akışıdır; bu nedenle
OpenClaw sonucu, manuel API anahtarı kurulumunda kullanılan aynı
openrouter:default API anahtarı kimlik doğrulama profiline kaydeder.
Tam ilk kurulumu yeniden çalıştırmadan mevcut bir kurulumda oturum açmak veya kayıtlı anahtarı yenilemek için:
openclaw models auth login --provider openrouter --method oauthopenclaw models auth login --provider openrouter --method api-keyDoğrulanmış OpenRouter isteklerinde (https://openrouter.ai/api/v1) OpenClaw,
OpenRouter'ın belgelenmiş uygulama ilişkilendirme üstbilgilerini ekler:
| Üstbilgi | Değer |
|---|---|
HTTP-Referer |
https://openclaw.ai |
X-OpenRouter-Title |
OpenClaw |
X-OpenRouter-Categories |
cli-agent,cloud-agent,programming-app,creative-writing,writing-assistant,general-chat,personal-agent |
Gelişmiş yapılandırma
Yanıt önbelleğe alma
OpenRouter yanıt önbelleğe alma özelliği isteğe bağlıdır. Model başına etkinleştirin:
{ agents: { defaults: { models: { "openrouter/auto": { params: { responseCache: true, responseCacheTtlSeconds: 300, }, }, }, }, },}OpenClaw, X-OpenRouter-Cache: true ve yapılandırılmışsa
X-OpenRouter-Cache-TTL gönderir. responseCacheClear: true, geçerli istek
için yenilemeyi zorlar ve yerine geçen yanıtı kaydeder. Snake_case
diğer adları (response_cache, response_cache_ttl_seconds,
response_cache_clear) ve Seconds son eki olmadan responseCacheTtl /
response_cache_ttl kabul edilir.
Bu, sağlayıcı istem önbelleğe almasından ve OpenRouter'ın Anthropic
cache_control işaretçilerinden ayrıdır. Özel proxy temel URL'lerinde değil,
yalnızca doğrulanmış openrouter.ai rotalarında geçerlidir.
Anthropic önbellek işaretçileri
Doğrulanmış OpenRouter rotalarında Anthropic model referansları,
sistem/geliştirici istem bloklarında istem önbelleğinin daha iyi yeniden
kullanılması için OpenRouter'ın Anthropic cache_control işaretçilerini
korur.
Anthropic akıl yürütme ön dolgusu
Doğrulanmış OpenRouter rotalarında, akıl yürütmenin etkin olduğu Anthropic model referanslarında, istek OpenRouter'a ulaşmadan önce sondaki asistan ön dolgu turları kaldırılır; böylece Anthropic'in akıl yürütme konuşmalarının bir kullanıcı turuyla sona ermesi gerekliliği karşılanır.
Düşünme / akıl yürütme ekleme
Desteklenen ve auto olmayan rotalarda OpenClaw, seçilen düşünme düzeyini
OpenRouter proxy akıl yürütme yüklerine eşler. openrouter/auto ve desteklenmeyen
model ipuçlarında bu ekleme atlanır. Eski openrouter/hunter-alpha referanslarında da
bu işlem atlanır; çünkü OpenRouter, kullanımdan kaldırılan bu rotada akıl yürütme
alanlarında nihai yanıt metni döndürebiliyordu.
DeepSeek V4 akıl yürütme yeniden oynatımı
Doğrulanmış OpenRouter rotalarında openrouter/deepseek/deepseek-v4-flash ve
openrouter/deepseek/deepseek-v4-pro, yeniden oynatılan asistan turlarındaki eksik
reasoning_content alanını doldurarak düşünme/araç konuşmalarını DeepSeek
V4'ün gerektirdiği takip biçiminde tutar. OpenClaw, bu rotalar için OpenRouter'ın
desteklediği reasoning.effort değerlerini gönderir: xhigh/max, xhigh
değerine; kapalı dışındaki diğer tüm düzeyler ise high değerine eşlenir.
Yalnızca OpenAI'a özgü istek biçimlendirme
OpenRouter, proxy tarzı OpenAI uyumlu yol üzerinden çalıştığından serviceTier,
Responses store, OpenAI akıl yürütme uyumluluğu yükleri ve istem önbelleği
ipuçları gibi yalnızca yerel OpenAI'a özgü istek biçimlendirmeleri iletilmez.
Gemini destekli rotalar
Gemini destekli OpenRouter referansları proxy-Gemini yolunda kalır: OpenClaw, Gemini düşünce imzası temizliğini burada sürdürür ancak yerel Gemini yeniden oynatma doğrulamasını veya önyükleme yeniden yazımlarını etkinleştirmez.
Sağlayıcı yönlendirme meta verileri
OpenRouter, temel sağlayıcı yönlendirmesi için bir provider istek nesnesini
destekler. Tüm OpenRouter metin modeli istekleri için varsayılan bir politikayı
models.providers.openrouter.params.provider ile yapılandırın:
{ models: { providers: { openrouter: { params: { provider: { sort: "latency", require_parameters: true, data_collection: "deny", }, }, }, }, },}OpenClaw, bu nesneyi istek provider yükü olarak OpenRouter'a iletir.
sort, only, ignore, order, allow_fallbacks, require_parameters,
data_collection, quantizations, max_price, preferred_max_latency,
preferred_min_throughput, zdr ve enforce_distillable_text dâhil olmak üzere
OpenRouter tarafından belgelenen snake_case alanlarını kullanın.
Model başına parametreler, sağlayıcı genelindeki yönlendirme nesnesini geçersiz kılar:
{ agents: { defaults: { models: { "openrouter/anthropic/claude-sonnet-4-6": { params: { provider: { order: ["anthropic"], allow_fallbacks: false, }, }, }, }, }, },}Bu yalnızca OpenRouter sohbet tamamlama rotalarında geçerlidir. Doğrudan Anthropic, Google, OpenAI veya özel sağlayıcı rotaları, OpenRouter yönlendirme parametrelerini yok sayar.