Agent iş akışları · 2026-08-29

HarnessRouter LLMTR sağlayıcısı: tek anahtarla üç harness

HarnessRouter’ın llmtr satırı Claude Code, Codex ve Hermes’i tek base URL ve tek anahtarla besler. Bağlantı biçimleri, model kesişim tablosu ve eleme kuralları bu rehberde.

HarnessRouter LLMTR sağlayıcı rehberi için tek base URL ve tek anahtardan Claude Code, Codex ve Hermes harness’larına giden üç ayrı tel biçimini gösteren LLMTR şeması.

llmtr satırı harnessrouter’da neyi çözer

harnessrouter üç ayrı kodlama harness’ını tek konsoldan besleyen bir yönlendiricidir: Claude Code, Codex ve Hermes. Bu üçü aynı modeli çağırırken bile aynı teli konuşmaz. Biri Anthropic mesaj zarfı bekler, biri OpenAI Responses gövdesi üretir, biri klasik chat gövdesi gönderir. Yönlendiricinin işi, bir sağlayıcıyı bağladığınızda hangi harness’ın o sağlayıcıyla gerçekten çalışabileceğini bilmek ve yalnızca çalışanları önünüze koymaktır.

knowhycodata/harnessrouter deposundaki feat/llmtr-provider dalı README’deki sağlayıcı tablosuna tek bir satır ekler ve o satır üç harness’ın üçünde de işaretlidir. Pratikte bunun anlamı şu: konsolda tek bir LLMTR bağlantısı tanımlarsınız, üç harness da onu kullanabilir. Her harness için ayrı hesap, ayrı anahtar, ayrı base URL tutmazsınız.

Bu yazı kurulum adımlarını değil, o satırın arkasındaki iki kararı anlatıyor: bağlantının hangi tel biçimlerine kablolandığı ve model listesinin neden bilinçli olarak kısaltıldığı.

Bağlantı kaydı: ek alan istemeyen bir sağlayıcı

Yönlendiricinin entegrasyon tablosundaki LLMTR girdisi dört şey taşır: görünen ad, base URL, saklanacak sırrın türü ve anahtar biçimi ipucu. Alanlar listesi boştur. Bölge, proje kimliği, hesap kimliği ya da dağıtım adı gibi ek bir alan sorulmaz; çünkü uçta bunların karşılığı yok. Bu, bulut sağlayıcılarının satırlarından en görünür farkıdır.

Anahtar ipucu llmtr ön ekini gösterir. Konsol bu ipucunu yalnızca yapıştırdığınız değerin biçimini kontrol etmek için kullanır; doğrulama isteği anahtarı olduğu gibi Authorization başlığında taşır.

harnessrouter entegrasyon tablosundaki LLMTR girdisinin taşıdığı alanlar

label: LLMTR
base_url: https://llmtr.com/v1
fields: []          # bolge, proje, hesap kimligi sorulmaz
secret: api_key
secret_label: API Key
key_hint: "llmtr-..."

Üç harness, üç tel biçimi, tek base URL

Yönlendiricinin içinde her sağlayıcı ve harness çifti bir bağlantı biçimine eşlenir. LLMTR için Claude Code ve Codex çiftleri tokenrouter biçimine, Hermes çifti openai-api biçimine bağlanır. Aynı base URL iki farklı gövde şekline birden yanıt verdiği için satır, aynı davranışı gösteren bir başka çok yüzeyli sağlayıcıyla aynı şekilde kablolanmıştır.

Buradaki asıl not, kaynak dosyanın kendi yorumudur: LLMTR’nin Anthropic yüzeyi yayımlanan katalogda ayrıca ilan edilmiyor, katalogdaki her model OpenAI uçlarını listeliyor. Yine de yüzey gerçek. Dal sahibi 19 Ağustos 2026’da canlı denemiş: anthropic/claude-sonnet-4.6 ile gönderilen bir POST /v1/messages isteği 200 ve düzgün bir Anthropic mesaj zarfı döndürmüş, /v1 altında var olmayan bir yol ise not_found tipinde yapısal bir hata vermiş. Yani yüzeyin varlığı katalogdan değil, çağrıdan okunmuş.

Aşağıdaki tablo, üç harness’ın aynı bağlantıyı kullanırken isteği hangi uca gönderdiğini ve o gün hangi modelle gerçek bir ajan turu tamamlandığını gösterir.

harnessrouter’ın LLMTR bağlantısında harness başına tel biçimi ve 19 Ağustos 2026 tarihli canlı tur kaydı
HarnessBağlantı biçimiİsteğin gittiği uçTuru tamamlayan model
Claude Codetokenrouter/v1/messagesanthropic/claude-sonnet-4.6 ve anthropic/claude-opus-4.8
Codextokenrouter/v1/responsesopenai/gpt-5.3-codex ve openai/gpt-5.5
Hermesopenai-api/v1/chat/completionsanthropic/claude-haiku-4.5

Kesişim mantığı: bağlantı seçiciye yeni isim eklemez

Yönlendiricinin LLMTR tablosu, uçta yayımlanan her modeli değil, yönlendiricinin kendi model kataloğuyla kesişen kısmı içerir. Bu bilinçli bir daraltmadır ve tek cümleyle şöyle özetlenebilir: sağlayıcıyı bağlamak hiçbir seçiciye yeni bir isim eklemez, yalnızca zaten orada olan modelleri Türkiye üzerinden erişilebilir kılar. Kullanıcı açısından değişen şey, listedeki isimler değil, o isimlerin arkasındaki yol.

Ölçüm de kayıtlı. 19 Ağustos 2026’da anahtarsız okunabilen genel katalog okunmuş: yayımlanan 245 kimlikten 131’i yönlendiricinin ajan döngüsü ölçütünü geçiyor. Bunların yalnızca LLMTR’de bulunan 107 tanesi, aralarında Türkiye’de barındırılan modeller de olmak üzere, ayrı bir öneri olarak bırakılmış; yönlendiricinin yetenek testi bu kataloğu da tarayabildiğinde ele alınacak.

Eleme dört kuralla yapılmış. Kuralların yazılı olması, sonraki kişinin bir sayıya güvenmek yerine ölçümü tekrar edebilmesi için.

harnessrouter’ın LLMTR kimliklerini elerken uyguladığı dört kural
Eleme kuralıNeyi tabloya almazÖrnek
Ajan döngüsü ölçütüMetin üretmeyen ya da araç parametresi bildirmeyen kimliklerGömme, görüntü, video ve konuşma modelleri
Tarihli anlık görüntüListede zaten bulunan bir modelin tarih ekli ikinci adıSabitlenmiş tarihli bir qwen-plus kopyası, qwen-plus zaten listedeyken
Taşıma uyuşmasıHarness’ın o kimlik için gerçekte kullandığından farklı uca yayımlanmış kimliklerHermes gpt-5 ailesini /v1/responses üzerinden sürerken kimliğin yalnızca sohbet ucuna yayımlanmış olması
Canlı yanıtÖlçüm gününde iki kez çağrıldığı halde yanıtlamayan kimliklerKatalog kaydı reklamdır, ürün olan yanıttır; ölçüm o güne aittir

Kısa ad ile kanonik kimlik arasındaki eşleme

Harness’lar model adını kısa biçimde tutar, LLMTR ise sağlayıcı ön ekli kanonik kimlik bekler. Yönlendirici bu ikisi arasında bir eşleme tablosu taşır. Kural basit: kanonik kimlik, kısa adın önüne sağlayıcı ön eki getirilerek elde edilir.

İki satır bu kuralın dışında kalır ve dosyada gerekçesiyle yazılıdır. Kısa ad için yönlendiricide zaten başka bir kanonik kimlik tanımlıysa, yeni bir isim üretmek yerine var olan kimlik korunur. Aynı modelin seçicide iki farklı adla iki satır olarak görünmesi, biraz tuhaf okunan bir isimden daha kötü kabul edilmiş.

Harness tarafındaki kısa ad ile LLMTR kanonik kimliği arasındaki eşlemeden bir kesit

claude-sonnet-5     ->  anthropic/claude-sonnet-5
claude-opus-4.8     ->  anthropic/claude-opus-4.8
claude-haiku-4.5    ->  anthropic/claude-haiku-4.5
gpt-5.3-codex       ->  openai/gpt-5.3-codex
gpt-5.5             ->  openai/gpt-5.5
gemini-3.6-flash    ->  google/gemini-3.6-flash
deepseek-v4-pro     ->  deepseek/deepseek-v4-pro
kimi-k3             ->  moonshot/kimi-k3
qwen3.8-max         ->  qwen/qwen3.8-max
minimax-m3          ->  minimax/minimax-m3

# kuralin disinda kalan iki satir
hunyuan-3           ->  tencent/hy3
nemotron-3-ultra    ->  nvidia/nemotron-3-ultra-550b-a55b

Kendi kesişiminizi çıkarmak

Tablodaki liste ölçüm gününe ait bir fotoğraftır. Katalog değiştiğinde tabloyu güncellemek yerine kesişimi kendiniz çıkarabilirsiniz: genel katalog anahtarsız okunur, bu yüzden kontrol için anahtar harcamanız gerekmez.

Aşağıdaki kısa döküm, uçtaki kimlikleri alır ve harness tarafındaki listenizle karşılaştırmanız için dosyaya yazar. Kimliğin listede olması yeterli değildir; kuralda geçen taşıma uyuşmasını da kontrol edin, çünkü bir kimliği yanlış uçtan çağırmak seçicide görünen ama gönderimde düşen bir satır üretir.

Genel kataloğu anahtarsız okuyup harness listenizle karşılaştırma

# Genel katalog anahtar istemez
curl -s https://llmtr.com/v1/models \
  | jq -r '.data[].id' | sort > llmtr-ids.txt

# Harness tarafindaki kisa adlari kanonige cevirip karsilastirin
sort harness-canonical-ids.txt > harness-ids.txt
comm -12 llmtr-ids.txt harness-ids.txt   # kesisim: bugun surulebilir olanlar
comm -13 llmtr-ids.txt harness-ids.txt   # harness'ta var, ucta yok

Codex 0.148.0 ile gpt-5.6 ailesi: sağlayıcı kaynaklı olmayan bir sınır

Canlı turlar bir şey daha ortaya çıkardı ve kaynak dosya bunu, sonraki kişinin yeniden keşfetmesin diye ayrıca not etmiş. Codex tarafından sürüldüğünde gpt-5.6-sol, gpt-5.6-terra ve gpt-5.6-luna bir turu bitiriyor ama hiç araç teklif edilmiyor; model kabuğu olmadığını söyleyip duruyor.

Nedeni sağlayıcı değil, istemci. Ne gönderdiğini kaydeden yerel bir uca yöneltildiğinde codex 0.148.0, bu üç kimlik için isteği hiç araç ve hiç talimat alanı olmadan üretiyor; aynı ikili aynı uca gpt-5.5 için on bir araç ve uzun bir talimat bloğu gönderiyor. Yani sağlayıcıya düşürebileceği bir şey hiç ulaşmıyor. Aile önce bir WebSocket oturumu deniyor ve isteği pencere kimliği başlığıyla taşıyor; düz HTTPS’e düştüğünde ikisini de göndermiyor.

Aynı üç kimlik Hermes tarafından aynı uç ve aynı base URL üzerinden sürüldüğünde araçlar yerinde kalıyor. Bu yüzden sınır tek bir sağlayıcıya özgü değil, OpenAI dışındaki her sağlayıcı için geçerli. Yönlendiricide tek bir satıra özel geçici çözüm yazılmamış, durum olduğu gibi kayda geçirilmiş.

  • Codex ile araç kullanan bir tur istiyorsanız gpt-5.3-codex veya gpt-5.5 kimlikleri o gün turu tamamladı
  • gpt-5.6 ailesini araçlı sürmek istiyorsanız Hermes tarafını kullanın
  • Sorunun istemciden geldiğini doğrulamak için isteği kaydeden yerel bir uca yöneltip gövdede araç alanı olup olmadığına bakın
  • Bu gözlem codex 0.148.0 sürümüne aittir; başka sürümlerde doğrulanmadı

Sık sorulan sorular

LLMTR bağlantısını açmak harness model seçicime yeni isimler ekler mi?

Hayır. Yönlendiricinin LLMTR tablosu bilinçli olarak kendi model kataloğuyla kesişimdir. Bağlantı, seçicide zaten bulunan modellerin Türkiye üzerinden erişilebilmesini sağlar; yeni satır açmaz. Yalnızca LLMTR’de bulunan kimlikler ayrı bir öneri olarak bekliyor.

Claude Code, Codex ve Hermes için ayrı anahtar tanımlamam gerekir mi?

Gerekmez. Üç harness aynı bağlantı kaydını kullanır: aynı base URL ve aynı anahtar. Değişen tek şey isteğin gönderildiği uçtur; Claude Code mesaj ucunu, Codex responses ucunu, Hermes sohbet ucunu kullanır.

Eşleme tablosunda hunyuan-3 neden tencent/hy3 kimliğine gidiyor?

Çünkü o model için yönlendiricide zaten bir kanonik kimlik tanımlıydı. Kısa adın önüne ön ek getirip ikinci bir isim üretmek, aynı modeli seçicide iki satır haline getirirdi. Tuhaf okunan tek bir ad, çift kayıttan daha az sorun çıkarır.

Tablodaki model listesi ne kadar günceldir?

Liste 19 Ağustos 2026 ölçümüne dayanır ve o güne ait bir fotoğraftır. Katalog değiştikçe kesişim de değişir. Güncel durumu görmek için genel kataloğu anahtarsız okuyup kendi harness listenizle karşılaştırın; yazıdaki dökümde bunun komutu var.

İlgili yazılar