Concepts and configuration

Modeller CLI

Model ref'leri bir sağlayıcı ve model seçer. Genellikle düşük seviyeli ajan çalışma zamanını seçmezler. Örneğin openai/gpt-5.5, agents.defaults.agentRuntime.id değerine bağlı olarak normal OpenAI sağlayıcı yolu üzerinden veya Codex uygulama sunucusu çalışma zamanı üzerinden çalışabilir. Codex çalışma zamanı modunda openai/gpt-* ref'i API anahtarı faturalandırması anlamına gelmez; auth bir Codex hesabından veya openai-codex auth profilinden gelebilir. Bkz. Ajan çalışma zamanları.

Model seçimi nasıl çalışır?

OpenClaw modelleri şu sırayla seçer:

  • Birincil model

    agents.defaults.model.primary (veya agents.defaults.model).

  • Fallback'ler

    agents.defaults.model.fallbacks (sırayla).

  • Sağlayıcı auth yük devretmesi

    Auth yük devretmesi, sonraki modele geçmeden önce sağlayıcının içinde gerçekleşir.

  • İlgili model yüzeyleri
    • agents.defaults.models, OpenClaw'ın kullanabileceği modellerin izin listesidir/kataloğudur (alias'lar dahil).
    • agents.defaults.imageModel, yalnızca birincil model görüntü kabul edemediğinde kullanılır.
    • agents.defaults.pdfModel, pdf aracı tarafından kullanılır. Atlanırsa araç önce agents.defaults.imageModel değerine, ardından çözümlenen oturum/varsayılan modele fallback yapar.
    • agents.defaults.imageGenerationModel, paylaşılan görüntü oluşturma yeteneği tarafından kullanılır. Atlanırsa image_generate, auth destekli bir sağlayıcı varsayılanını yine de çıkarabilir. Önce mevcut varsayılan sağlayıcıyı, ardından kalan kayıtlı görüntü oluşturma sağlayıcılarını sağlayıcı kimliği sırasına göre dener. Belirli bir sağlayıcı/model ayarlarsanız o sağlayıcının auth/API anahtarını da yapılandırın.
    • agents.defaults.musicGenerationModel, paylaşılan müzik oluşturma yeteneği tarafından kullanılır. Atlanırsa music_generate, auth destekli bir sağlayıcı varsayılanını yine de çıkarabilir. Önce mevcut varsayılan sağlayıcıyı, ardından kalan kayıtlı müzik oluşturma sağlayıcılarını sağlayıcı kimliği sırasına göre dener. Belirli bir sağlayıcı/model ayarlarsanız o sağlayıcının auth/API anahtarını da yapılandırın.
    • agents.defaults.videoGenerationModel, paylaşılan video oluşturma yeteneği tarafından kullanılır. Atlanırsa video_generate, auth destekli bir sağlayıcı varsayılanını yine de çıkarabilir. Önce mevcut varsayılan sağlayıcıyı, ardından kalan kayıtlı video oluşturma sağlayıcılarını sağlayıcı kimliği sırasına göre dener. Belirli bir sağlayıcı/model ayarlarsanız o sağlayıcının auth/API anahtarını da yapılandırın.
    • Ajan başına varsayılanlar, bağlamalarla birlikte agents.list[].model üzerinden agents.defaults.model değerini geçersiz kılabilir (bkz. Çoklu ajan yönlendirme).

    Seçim kaynağı ve fallback davranışı

    Aynı provider/model, nereden geldiğine bağlı olarak farklı şeyler ifade edebilir:

    • Yapılandırılmış varsayılanlar (agents.defaults.model.primary ve ajana özgü birinciller) normal başlangıç noktasıdır ve agents.defaults.model.fallbacks kullanır.
    • Otomatik fallback seçimleri geçici kurtarma durumudur. Sonraki turların önce kötü olduğu bilinen bir birincili yoklamadan fallback zincirini kullanmaya devam edebilmesi için modelOverrideSource: "auto" ile saklanırlar.
    • Kullanıcı oturumu seçimleri kesindir. /model, model seçici, session_status(model=...) ve sessions.patch, modelOverrideSource: "user" saklar; seçilen sağlayıcı/model erişilemez durumdaysa OpenClaw başka bir yapılandırılmış modele düşmek yerine görünür şekilde başarısız olur.
    • Cron --model / payload model, iş başına bir birincildir. İş açık payload fallbacks sağlamadıkça yapılandırılmış fallback'leri kullanmaya devam eder (katı bir cron çalıştırması için fallbacks: [] kullanın).
    • CLI varsayılan model ve izin listesi seçicileri, tam yerleşik kataloğu yüklemek yerine açık models.providers.*.models listelenerek models.mode: "replace" değerine uyar.
    • Control UI model seçici, Gateway'den yapılandırılmış model görünümünü ister: varsa agents.defaults.models, aksi halde açık models.providers.*.models ve kullanılabilir auth'a sahip sağlayıcılar. Tam yerleşik katalog, view: "all" ile models.list veya openclaw models list --all gibi açık gezinti görünümleri için ayrılmıştır.

    Hızlı model politikası

    • Birincil modelinizi erişiminiz olan en güçlü son nesil modele ayarlayın.
    • Maliyet/gecikmeye duyarlı görevler ve daha düşük riskli sohbet için fallback'ler kullanın.
    • Araç etkin ajanlar veya güvenilmeyen girdiler için eski/zayıf model katmanlarından kaçının.

    Onboarding (önerilir)

    Config dosyasını elle düzenlemek istemiyorsanız onboarding'i çalıştırın:

    openclaw onboard
    

    OpenAI Code (Codex) aboneliği (OAuth) ve Anthropic (API anahtarı veya Claude CLI) dahil yaygın sağlayıcılar için model + auth kurabilir.

    Config anahtarları (genel bakış)

    • agents.defaults.model.primary ve agents.defaults.model.fallbacks
    • agents.defaults.imageModel.primary ve agents.defaults.imageModel.fallbacks
    • agents.defaults.pdfModel.primary ve agents.defaults.pdfModel.fallbacks
    • agents.defaults.imageGenerationModel.primary ve agents.defaults.imageGenerationModel.fallbacks
    • agents.defaults.videoGenerationModel.primary ve agents.defaults.videoGenerationModel.fallbacks
    • agents.defaults.models (izin listesi + alias'lar + sağlayıcı parametreleri)
    • models.providers (models.json içine yazılan özel sağlayıcılar)

    Güvenli izin listesi düzenlemeleri

    agents.defaults.models değerini elle güncellerken eklemeli yazımlar kullanın:

    openclaw config set agents.defaults.models '{"openai/gpt-5.4":{}}' --strict-json --merge
    
    Üzerine yazma koruması kuralları

    openclaw config set, model/sağlayıcı haritalarını yanlışlıkla üzerine yazmalardan korur. agents.defaults.models, models.providers veya models.providers.<id>.models için düz bir nesne ataması mevcut girdileri kaldıracaksa reddedilir. Eklemeli değişiklikler için --merge kullanın; --replace yalnızca sağlanan değer tam hedef değer olmalıysa kullanın.

    Etkileşimli sağlayıcı kurulumu ve openclaw configure --section model de sağlayıcı kapsamlı seçimleri mevcut izin listesine birleştirir; böylece Codex, Ollama veya başka bir sağlayıcı eklemek ilgisiz model girdilerini düşürmez. Configure, sağlayıcı auth'u yeniden uygulandığında mevcut agents.defaults.model.primary değerini korur. openclaw models auth login --provider <id> --set-default ve openclaw models set <model> gibi açık varsayılan ayarlama komutları yine de agents.defaults.model.primary değerini değiştirir.

    "Modele izin verilmiyor" (ve yanıtların neden durduğu)

    agents.defaults.models ayarlanırsa /model ve oturum geçersiz kılmaları için izin listesi haline gelir. Kullanıcı bu izin listesinde olmayan bir model seçtiğinde OpenClaw şunu döndürür:

    Model "provider/model" is not allowed. Use /models to list providers, or /models <provider> to list models.
    Add it with: openclaw config set agents.defaults.models '{"provider/model":{}}' --strict-json --merge
    

    Reddedilen komut /model openai/gpt-5.5 --runtime codex gibi bir çalışma zamanı geçersiz kılması içeriyorsa önce izin listesini düzeltin, ardından aynı /model ... --runtime ... komutunu yeniden deneyin. Yerel Codex yürütmesi için seçilen model hâlâ openai/gpt-5.5 olur; codex çalışma zamanı harness'i seçer ve Codex auth'unu ayrı olarak kullanır.

    Yerel/GGUF modeller için izin listesinde sağlayıcı önekli tam ref'i saklayın; örneğin ollama/gemma4:26b, lmstudio/Gemma4-26b-a4-it-gguf veya openclaw models list --provider <provider> tarafından gösterilen tam sağlayıcı/model. İzin listesi etkinken yalın yerel dosya adları veya görünen adlar yeterli değildir.

    Örnek izin listesi config'i:

    {
      agent: {
        model: { primary: "anthropic/claude-sonnet-4-6" },
        models: {
          "anthropic/claude-sonnet-4-6": { alias: "Sonnet" },
          "anthropic/claude-opus-4-6": { alias: "Opus" },
        },
      },
    }
    

    Sohbette model değiştirme (/model)

    Yeniden başlatmadan mevcut oturum için model değiştirebilirsiniz:

    /model
    /model list
    /model 3
    /model openai/gpt-5.4
    /model status
    
    Seçici davranışı
    • /model (ve /model list) kompakt, numaralı bir seçicidir (model ailesi + kullanılabilir sağlayıcılar).
    • Discord'da /model ve /models, sağlayıcı ve model açılır menüleri ile bir Submit adımı içeren etkileşimli bir seçici açar.
    • Telegram'da /models seçici seçimleri oturum kapsamındadır; ajanın openclaw.json içindeki kalıcı varsayılanını değiştirmez.
    • /models add kullanımdan kaldırılmıştır ve artık sohbetten model kaydetmek yerine bir kullanımdan kaldırma mesajı döndürür.
    • /model <#> bu seçiciden seçim yapar.
    Kalıcılık ve canlı değiştirme
    • /model, yeni oturum seçimini hemen kalıcı hale getirir.
    • Ajan boştaysa sonraki çalıştırma yeni modeli hemen kullanır.
    • Bir çalıştırma zaten etkinse OpenClaw canlı değişimi beklemede olarak işaretler ve yalnızca temiz bir yeniden deneme noktasında yeni modele yeniden başlar.
    • Araç etkinliği veya yanıt çıktısı zaten başladıysa bekleyen değişim daha sonraki bir yeniden deneme fırsatına veya sonraki kullanıcı turuna kadar kuyrukta kalabilir.
    • Kullanıcı tarafından seçilen /model ref'i o oturum için katıdır: seçilen sağlayıcı/model erişilemez durumdaysa yanıt, sessizce agents.defaults.model.fallbacks üzerinden cevap vermek yerine görünür şekilde başarısız olur. Bu, fallback zincirlerini hâlâ kullanabilen yapılandırılmış varsayılanlardan ve cron iş birincillerinden farklıdır.
    • /model status ayrıntılı görünümdür (auth adayları ve yapılandırıldığında sağlayıcı uç noktası baseUrl + api modu).
    Ref ayrıştırma
    • Model ref'leri ilk / üzerinden bölünerek ayrıştırılır. /model <ref> yazarken provider/model kullanın.
    • Model kimliğinin kendisi / içeriyorsa (OpenRouter tarzı), sağlayıcı önekini eklemeniz gerekir (örnek: /model openrouter/moonshotai/kimi-k2).
    • Sağlayıcıyı atlarsanız OpenClaw girdiyi şu sırayla çözer:
      1. alias eşleşmesi
      2. tam öneksiz model kimliği için benzersiz yapılandırılmış sağlayıcı eşleşmesi
      3. yapılandırılmış varsayılan sağlayıcıya kullanımdan kaldırılmış fallback — bu sağlayıcı artık yapılandırılmış varsayılan modeli sunmuyorsa OpenClaw, eski ve kaldırılmış sağlayıcı varsayılanını yüzeye çıkarmamak için bunun yerine ilk yapılandırılmış sağlayıcı/modele fallback yapar.

    Tam komut davranışı/config: Slash komutları.

    CLI komutları

    openclaw models list
    openclaw models status
    openclaw models set <provider/model>
    openclaw models set-image <provider/model>
    
    openclaw models aliases list
    openclaw models aliases add <alias> <provider/model>
    openclaw models aliases remove <alias>
    
    openclaw models fallbacks list
    openclaw models fallbacks add <provider/model>
    openclaw models fallbacks remove <provider/model>
    openclaw models fallbacks clear
    
    openclaw models image-fallbacks list
    openclaw models image-fallbacks add <provider/model>
    openclaw models image-fallbacks remove <provider/model>
    openclaw models image-fallbacks clear
    

    openclaw models (alt komut yok) models status için bir kısayoldur.

    models list

    Varsayılan olarak yapılandırılmış/kimlik doğrulaması kullanılabilir modelleri gösterir. Faydalı bayraklar:

    --allboolean

    Tam katalog. Kimlik doğrulaması yapılandırılmadan önce paketlenmiş, sağlayıcıya ait statik katalog satırlarını içerir; böylece yalnızca keşif amaçlı görünümler, eşleşen sağlayıcı kimlik bilgilerini ekleyene kadar kullanılamayan modelleri gösterebilir.

    --localboolean

    Yalnızca yerel sağlayıcılar.

    OPENCLAW_DOCS_MARKER:paramOpen:IHBhdGg9Ii0tcHJvdmlkZXIgPGlk " type="string"> Sağlayıcı kimliğine göre filtrele, örneğin moonshot. Etkileşimli seçicilerdeki görüntü etiketleri kabul edilmez.

    --plainboolean

    Her satırda bir model.

    --jsonboolean

    Makine tarafından okunabilir çıktı.

    models status

    Çözümlenen birincil modeli, yedekleri, görüntü modelini ve yapılandırılmış sağlayıcıların kimlik doğrulaması özetini gösterir. Ayrıca kimlik doğrulaması deposunda bulunan profiller için OAuth süre sonu durumunu da gösterir (varsayılan olarak 24 saat içinde uyarır). --plain yalnızca çözümlenen birincil modeli yazdırır.

    Auth and probe behavior
    • OAuth durumu her zaman gösterilir (ve --json çıktısına dahil edilir). Yapılandırılmış bir sağlayıcının kimlik bilgileri yoksa, models status bir Eksik kimlik doğrulaması bölümü yazdırır.
    • JSON, auth.oauth (uyarı penceresi + profiller) ve auth.providers (env destekli kimlik bilgileri dahil, sağlayıcı başına etkin kimlik doğrulaması) içerir. auth.oauth yalnızca kimlik doğrulaması deposu profil sağlığıdır; yalnızca env kullanan sağlayıcılar burada görünmez.
    • Otomasyon için --check kullanın (eksik/süresi dolmuşsa çıkış 1, süresi dolmak üzereyse 2).
    • Canlı kimlik doğrulaması denetimleri için --probe kullanın; prob satırları kimlik doğrulaması profillerinden, env kimlik bilgilerinden veya models.json dosyasından gelebilir.
    • Açık auth.order.<provider> saklanan bir profili dışarıda bırakırsa, prob bunu denemek yerine excluded_by_auth_order bildirir. Kimlik doğrulaması varsa ancak bu sağlayıcı için problanabilir bir model çözümlenemiyorsa, prob status: no_model bildirir.

    Örnek (Claude CLI):

    claude auth login
    openclaw models status
    

    Tarama (OpenRouter ücretsiz modelleri)

    openclaw models scan, OpenRouter'ın ücretsiz model kataloğunu inceler ve isteğe bağlı olarak modelleri araç ve görüntü desteği için problayabilir.

    --no-probeboolean

    Canlı probları atla (yalnızca meta veriler).

    "--min-params
    "--max-age-days
    "--provider
    "--max-candidates
    --set-defaultboolean

    agents.defaults.model.primary değerini ilk seçime ayarla.

    --set-imageboolean

    agents.defaults.imageModel.primary değerini ilk görüntü seçimine ayarla.

    Tarama sonuçları şuna göre sıralanır:

    1. Görüntü desteği
    2. Araç gecikmesi
    3. Bağlam boyutu
    4. Parametre sayısı

    Girdi:

    • OpenRouter /models listesi (:free filtresi)
    • Canlı problar, kimlik doğrulaması profillerinden veya OPENROUTER_API_KEY üzerinden OpenRouter API anahtarı gerektirir (bkz. Ortam değişkenleri)
    • İsteğe bağlı filtreler: --max-age-days, --min-params, --provider, --max-candidates
    • İstek/prob denetimleri: --timeout, --concurrency

    Canlı problar bir TTY içinde çalıştığında, yedekleri etkileşimli olarak seçebilirsiniz. Etkileşimsiz modda varsayılanları kabul etmek için --yes iletin. Yalnızca meta veri sonuçları bilgilendirme amaçlıdır; OpenClaw'ın kullanılamaz, anahtarsız bir OpenRouter modeli yapılandırmaması için --set-default ve --set-image canlı problar gerektirir.

    Model kayıt defteri (models.json)

    models.providers içindeki özel sağlayıcılar, aracı dizini altında models.json dosyasına yazılır (varsayılan ~/.openclaw/agents/<agentId>/agent/models.json). models.mode replace olarak ayarlanmadıkça bu dosya varsayılan olarak birleştirilir.

    Merge mode precedence

    Eşleşen sağlayıcı kimlikleri için birleştirme modu önceliği:

    • Aracı models.json dosyasında zaten bulunan boş olmayan baseUrl kazanır.
    • Aracı models.json dosyasındaki boş olmayan apiKey, yalnızca bu sağlayıcı geçerli yapılandırma/kimlik doğrulaması profili bağlamında SecretRef tarafından yönetilmiyorsa kazanır.
    • SecretRef tarafından yönetilen sağlayıcı apiKey değerleri, çözümlenmiş sırları kalıcı hale getirmek yerine kaynak işaretleyicilerinden (env ref'leri için ENV_VAR_NAME, dosya/exec ref'leri için secretref-managed) yenilenir.
    • SecretRef tarafından yönetilen sağlayıcı başlık değerleri, kaynak işaretleyicilerinden (env ref'leri için secretref-env:ENV_VAR_NAME, dosya/exec ref'leri için secretref-managed) yenilenir.
    • Boş veya eksik aracı apiKey/baseUrl, yapılandırma models.providers değerlerine geri döner.
    • Diğer sağlayıcı alanları yapılandırmadan ve normalleştirilmiş katalog verilerinden yenilenir.

    İlgili