Models CLI
Siehe /concepts/model-failover fuer Auth-Profil-Rotation, Cooldowns und wie das mit Fallbacks zusammenspielt. Schneller Provider-Ueberblick mit Beispielen: /concepts/model-providers.
Wie die Modellauswahl funktioniert
OpenClaw waehlt Modelle in dieser Reihenfolge:
- Primaeres Modell (
agents.defaults.model.primaryoderagents.defaults.model). - Fallbacks in
agents.defaults.model.fallbacks(der Reihe nach). - Provider-Auth-Failover findet innerhalb eines Providers statt, bevor zum naechsten Modell gewechselt wird.
Verwandt:
agents.defaults.modelsist die Allowlist/der Katalog der Modelle, die OpenClaw nutzen kann (plus Aliase).agents.defaults.imageModelwird nur genutzt, wenn das primaere Modell keine Bilder akzeptieren kann.- Pro-Agent-Defaults koennen
agents.defaults.modelueberagents.list[].modelplus Bindings ueberschreiben (siehe /concepts/multi-agent).
Schnelle Modell-Policy
- Setze dein primaeres Modell auf das staerkste verfuegbare Modell der aktuellen Generation.
- Nutze Fallbacks fuer kosten-/latenz-sensitive Aufgaben und weniger kritische Chats.
- Fuer toolfaehige Agenten oder nicht vertrauenswuerdige Eingaben vermeide aeltere/schwaechere Modell-Stufen.
Setup-Assistent (empfohlen)
Wenn du die Config nicht von Hand bearbeiten willst, starte den Onboarding-Assistenten:
openclaw onboard
Er kann Modell und Auth fuer gaengige Provider einrichten, darunter OpenAI Code (Codex)
Subscription (OAuth) und Anthropic (API-Schluessel oder claude setup-token).
Config-Schluessel (Ueberblick)
agents.defaults.model.primaryundagents.defaults.model.fallbacksagents.defaults.imageModel.primaryundagents.defaults.imageModel.fallbacksagents.defaults.models(Allowlist + Aliase + Provider-Parameter)models.providers(benutzerdefinierte Provider, geschrieben inmodels.json)
Model-Refs werden auf Kleinbuchstaben normalisiert. Provider-Aliase wie z.ai/* werden
zu zai/* normalisiert.
Provider-Konfigurationsbeispiele (einschliesslich OpenCode) findest du in /gateway/configuration.
”Model is not allowed” (und warum Antworten ausbleiben)
Wenn agents.defaults.models gesetzt ist, wird es zur Allowlist fuer /model und fuer
Sitzungs-Overrides. Wenn ein Nutzer ein Modell auswaehlt, das nicht in der Allowlist steht,
gibt OpenClaw zurueck:
Model "provider/model" is not allowed. Use /model to list available models.
Das passiert vor der normalen Antwortgenerierung, sodass die Nachricht sich anfuehlen kann, als haette sie “nicht geantwortet”. Die Loesung ist entweder:
- Das Modell zu
agents.defaults.modelshinzufuegen, oder - Die Allowlist leeren (entferne
agents.defaults.models), oder - Ein Modell aus
/model listwaehlen.
Beispiel-Allowlist-Config:
{
agent: {
model: { primary: "anthropic/claude-sonnet-4-5" },
models: {
"anthropic/claude-sonnet-4-5": { alias: "Sonnet" },
"anthropic/claude-opus-4-6": { alias: "Opus" },
},
},
}
Modelle im Chat wechseln (/model)
Du kannst Modelle fuer die aktuelle Sitzung wechseln, ohne neu zu starten:
/model
/model list
/model 3
/model openai/gpt-5.2
/model status
Hinweise:
/model(und/model list) ist ein kompakter, nummerierter Picker (Modellfamilie + verfuegbare Provider).- Auf Discord oeffnen
/modelund/modelseinen interaktiven Picker mit Provider- und Modell-Dropdowns plus Submit-Schritt. /model <#>waehlt aus diesem Picker./model statusist die ausfuehrliche Ansicht (Auth-Kandidaten und, wenn konfiguriert, Provider-EndpunktbaseUrl+api-Modus).- Model-Refs werden durch Aufteilen am ersten
/geparst. Verwendeprovider/modelbeim Eingeben von/model <ref>. - Wenn die Modell-ID selbst
/enthaelt (OpenRouter-Stil), musst du den Provider-Praefix angeben (Beispiel:/model openrouter/moonshotai/kimi-k2). - Wenn du den Provider weglaeest, behandelt OpenClaw die Eingabe als Alias oder als Modell fuer den Standard-Provider (funktioniert nur, wenn kein
/in der Modell-ID steht).
Vollstaendiges Befehlsverhalten/-config: Slash-Befehle.
CLI-Befehle
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 (ohne Unterbefehl) ist eine Abkuerzung fuer models status.
models list
Zeigt standardmaessig konfigurierte Modelle. Nuetzliche Flags:
--all: vollstaendiger Katalog--local: nur lokale Provider--provider <name>: nach Provider filtern--plain: ein Modell pro Zeile--json: maschinenlesbare Ausgabe
models status
Zeigt das aufgeloeste primaere Modell, Fallbacks, Bildmodell und einen Auth-Ueberblick
der konfigurierten Provider. Zeigt auch den OAuth-Ablauf-Status fuer Profile im
Auth-Store an (warnt standardmaessig innerhalb von 24h). --plain gibt nur das
aufgeloeste primaere Modell aus.
OAuth-Status wird immer angezeigt (und in --json-Ausgabe einbezogen). Wenn ein konfigurierter
Provider keine Zugangsdaten hat, gibt models status einen Missing auth-Abschnitt aus.
JSON enthaelt auth.oauth (Warnfenster + Profile) und auth.providers
(effektive Auth pro Provider).
Verwende --check fuer Automatisierung (Exit 1 bei fehlend/abgelaufen, 2 bei bald ablaufend).
Die Auth-Wahl haengt vom Provider/Account ab. Fuer Always-on-Gateway-Hosts sind API-Schluessel normalerweise am berechenbarsten; Subscription-Token-Flows werden ebenfalls unterstuetzt.
Beispiel (Anthropic Setup-Token):
claude setup-token
openclaw models status
Scanning (OpenRouter kostenlose Modelle)
openclaw models scan inspiziert OpenRouters kostenlosen Modellkatalog und kann
optional Modelle auf Tool- und Bild-Unterstuetzung pruefen.
Wichtige Flags:
--no-probe: Live-Pruefungen ueberspringen (nur Metadaten)--min-params <b>: minimale Parametergroesse (Milliarden)--max-age-days <tage>: aeltere Modelle ueberspringen--provider <name>: Provider-Praefix-Filter--max-candidates <n>: Fallback-Listengroesse--set-default: setztagents.defaults.model.primaryauf die erste Auswahl--set-image: setztagents.defaults.imageModel.primaryauf die erste Bild-Auswahl
Probing erfordert einen OpenRouter-API-Schluessel (aus Auth-Profilen oder
OPENROUTER_API_KEY). Ohne Schluessel verwende --no-probe, um nur Kandidaten aufzulisten.
Scan-Ergebnisse werden gerankt nach:
- Bild-Unterstuetzung
- Tool-Latenz
- Kontextgroesse
- Parameteranzahl
Eingabe
- OpenRouter
/models-Liste (Filter:free) - Erfordert OpenRouter-API-Schluessel aus Auth-Profilen oder
OPENROUTER_API_KEY(siehe /environment) - Optionale Filter:
--max-age-days,--min-params,--provider,--max-candidates - Probe-Steuerung:
--timeout,--concurrency
Im TTY-Modus kannst du Fallbacks interaktiv auswaehlen. Im nicht-interaktiven
Modus verwende --yes, um Standards zu akzeptieren.
Models-Registry (models.json)
Benutzerdefinierte Provider in models.providers werden in models.json unter dem
Agent-Verzeichnis geschrieben (Standard ~/.openclaw/agents/<agentId>/agent/models.json). Diese Datei
wird standardmaessig gemergt, es sei denn, models.mode ist auf replace gesetzt.
Merge-Modus-Vorrang fuer uebereinstimmende Provider-IDs:
- Nicht-leere
baseUrl, die bereits in der Agent-models.jsonvorhanden ist, gewinnt. - Nicht-leere
apiKeyin der Agent-models.jsongewinnt nur, wenn dieser Provider nicht SecretRef-verwaltet im aktuellen Config/Auth-Profil-Kontext ist. - SecretRef-verwaltete Provider-
apiKey-Werte werden aus Quell-Markern aktualisiert (ENV_VAR_NAMEfuer Env-Refs,secretref-managedfuer Datei-/Exec-Refs), statt aufgeloeste Secrets zu persistieren. - SecretRef-verwaltete Provider-Header-Werte werden aus Quell-Markern aktualisiert (
secretref-env:ENV_VAR_NAMEfuer Env-Refs,secretref-managedfuer Datei-/Exec-Refs). - Leere oder fehlende Agent-
apiKey/baseUrlfallen auf Config-models.providerszurueck. - Andere Provider-Felder werden aus Config und normalisierten Katalogdaten aktualisiert.
Marker-Persistenz ist quell-autoritativ: OpenClaw schreibt Marker aus dem aktiven Quell-Config-Snapshot (vor Aufloesung), nicht aus aufgeloesten Runtime-Secret-Werten.
Das gilt immer, wenn OpenClaw models.json regeneriert, einschliesslich befehlsgesteuerter Pfade wie openclaw agent.