Concepts and configuration
Modell-CLI
Rotation von Auth-Profilen, Abklingzeiten und deren Zusammenspiel mit Fallbacks.
Kurzübersicht über Provider und Beispiele.
Vollständige Referenz zum Befehl openclaw models und seinen Flags.
Modellkonfigurationsschlüssel, Standardwerte und Beispiele.
Eine Modellreferenz (provider/model) wählt einen Provider und ein Modell aus, nicht die
Low-Level-Agent-Runtime. Wenn keine Runtime-Richtlinie festgelegt ist oder auto
verwendet wird, kann die Provider-eigene Routing-Richtlinie von OpenAI Codex nur für eine
exakte offizielle HTTPS-Platform-Responses- oder ChatGPT-Responses-Route auswählen, bei der
die Anfrage keine explizite Überschreibung enthält; das Präfix openai/* allein
wählt niemals Codex aus. Completions-Adapter, benutzerdefinierte Endpunkte und explizit
festgelegtes Anfrageverhalten verbleiben bei OpenClaw. Offizielle Klartext-HTTP-Endpunkte
werden abgelehnt. Siehe Implizite Agent-Runtime von OpenAI.
Copilot-Abonnementreferenzen (github-copilot/*) können für das externe
GitHub-Copilot-Agent-Runtime-Plugin aktiviert werden, dieser Pfad ist jedoch immer explizit
(und wird niemals durch auto ausgewählt). Runtime-Überschreibungen gehören in
die Provider-/Modellrichtlinie, nicht auf den gesamten Agenten oder die gesamte Sitzung.
Die Runtime-Auswahl bestimmt nicht die Abrechnung: Anmeldedaten für OpenAI-API-Schlüssel
und ChatGPT-/Codex-Abonnements bleiben getrennt. Siehe
Agent-Runtimes und
GitHub-Copilot-Agent-Runtime.
Auswahlreihenfolge
Primäres Modell
agents.defaults.model.primary (oder agents.defaults.model als einfache Zeichenfolge).
Fallbacks
agents.defaults.model.fallbacks, die der Reihe nach versucht werden.
Auth-Failover
Die Rotation von Auth-Profilen erfolgt innerhalb eines Providers, bevor OpenClaw zum nächsten Fallback-Modell wechselt.
Zugehörige Oberflächen zur Modellkonfiguration:
agents.defaults.modelsspeichert Aliasse und modellspezifische Einstellungen. Das Hinzufügen eines Eintrags schränkt Modellüberschreibungen nicht ein.agents.defaults.modelPolicy.allowist die optionale Positivliste für Überschreibungen. Verwenden Sie exakte Referenzen oder abschließende Präfix-Platzhalter wieprovider/*undprovider/namespace/*; lassen Sie sie weg oder setzen Sie[], um jedes Modell zuzulassen. Das agentenspezifischeagents.entries.*.modelPolicy.allowersetzt die Standardrichtlinie für diesen Agenten.agents.defaults.utilityModelist ein optionales kostengünstigeres Modell für kurze interne Aufgaben wie generierte Sitzungstitel im Dashboard, unterstützte Kanal-Thread-/Thementitel und Fortschrittsbeschreibungen. Das agentenspezifischeagents.entries.*.utilityModelüberschreibt es. Wenn es nicht festgelegt ist, verwendet OpenClaw den deklarierten Standard des primären Providers für kleine Modelle, sofern vorhanden (OpenAI →gpt-5.6-luna, Anthropic →claude-haiku-4-5), andernfalls das primäre Modell des Agenten; setzen Sie es auf eine leere Zeichenfolge, um das Utility-Routing zu deaktivieren. Generierte Titel werden einmal mit dem primären Modell erneut versucht, wenn ein separates Utility-Modell fehlschlägt. Bei Dashboard-Titeln folgen die automatische Utility-Ableitung und der reguläre Fallback dem effektiven Sitzungs-Provider und Auth-Profil; ein explizites Utility-Modell behält seinen konfigurierten Provider und seine konfigurierte Authentifizierung bei. Ein leeres Utility-Modell überspringt nur die alternative Route über das kleine Modell, nicht die Generierung von Dashboard-Titeln. Utility-Aufgaben sind separate Modellaufrufe und können begrenzte Aufgabeninhalte an den ausgewählten Modell-Provider senden.agents.defaults.imageModelwird nur verwendet, wenn das primäre Modell keine Bilder akzeptieren kann.agents.defaults.pdfModelwird vom Werkzeugpdfverwendet. Wenn es nicht festgelegt ist, greift das Werkzeug aufimageModelund anschließend auf das aufgelöste Sitzungs-/Standardmodell zurück.agents.defaults.mediaModels.{image,music,video}dient als Grundlage für die gemeinsam genutzten Werkzeuge zur Mediengenerierung. Wenn es nicht festgelegt ist, leitet jedes Werkzeug einen durch Authentifizierung gestützten Provider-Standard ab: zuerst den aktuellen Standard-Provider, dann die übrigen registrierten Provider für diese Fähigkeit in der Reihenfolge ihrer Provider-IDs. Provider-übergreifender Fallback ist das fest vorgegebene Standardverhalten.- Das agentenspezifische
agents.entries.*.model(zusammen mit Bindungen) überschreibtagents.defaults.model– siehe Multi-Agent-Routing.
Vollständige Schlüsselreferenz, Standardwerte und JSON5-Beispiele: Konfigurationsreferenz.
Auswahlquelle und Fallback-Strenge
Dasselbe provider/model verhält sich je nach Herkunft unterschiedlich:
| Quelle | Verhalten |
|---|---|
Konfigurierter Standard (agents.defaults.model.primary, agentenspezifisches primäres Modell) |
Normaler Ausgangspunkt; verwendet agents.defaults.model.fallbacks. |
| Automatischer Fallback | Temporärer Wiederherstellungszustand, gespeichert als modelOverrideSource: "auto". OpenClaw prüft das ursprüngliche primäre Modell regelmäßig erneut, löscht die automatische Auswahl bei der Wiederherstellung und kündigt Fallback-/Wiederherstellungsübergänge einmal pro Zustandsänderung an. |
| Benutzerauswahl für die Sitzung | Exakt und strikt. /model, die Modellauswahl, session_status(model=...) und sessions.patch speichern modelOverrideSource: "user". Wenn dieser Provider bzw. dieses Modell nicht mehr erreichbar ist, schlägt der Lauf sichtbar fehl, statt auf ein anderes konfiguriertes Modell zurückzugreifen. |
Cron --model / Nutzlast model |
Primäres Modell pro Auftrag. Verwendet weiterhin konfigurierte Fallbacks, sofern der Auftrag nicht sein eigenes Nutzlast-fallbacks bereitstellt (fallbacks: [] erzwingt einen strikten Lauf). |
Weitere Auswahlregeln:
- Eine Änderung von
agents.defaults.model.primaryschreibt vorhandene Sitzungsfixierungen nicht um. Wenn der StatusThis session is pinned to X; config primary Y will apply to new/unpinned sessions.meldet, führen Sie/model defaultaus, um die Fixierung zu löschen. - CLI-Auswahlmenüs für das Standardmodell und die Positivliste berücksichtigen
models.mode: "replace", indem sie nurmodels.providers.*.modelsstatt des vollständigen integrierten Katalogs auflisten. - Die Modellauswahl der Control UI fragt beim Gateway dessen konfigurierte Modellansicht ab. Ein explizites
modelPolicy.allowfiltert sie einschließlich Einträgen mit abschließendem Präfix-Platzhalter; andernfalls zeigt sie konfigurierte Modelle sowie Provider mit verwendbarer Authentifizierung an. Der vollständige integrierte Katalog ist expliziten Suchansichten vorbehalten (models.listmitview: "all"oderopenclaw models list --all). - Benutzeroberflächen für das Provider-Inventar verwenden
models.listmitview: "provider-config", um von der Quelle definiertemodels.providers.*.models-Zeilen anzuzeigen, ohne Positivlisten der Auswahl anzuwenden.
Vollständige Funktionsweise: Modell-Failover.
Kurze Modellrichtlinie
- Legen Sie als primäres Modell das leistungsfähigste verfügbare Modell der neuesten Generation fest.
- Verwenden Sie Fallbacks für kosten-/latenzsensitive Aufgaben und Chats mit geringeren Anforderungen.
- Vermeiden Sie für Agenten mit aktivierten Werkzeugen oder bei nicht vertrauenswürdigen Eingaben ältere bzw. schwächere Modellstufen.
Onboarding
openclaw onboardRichtet Modell und Authentifizierung für gängige Provider ein, ohne die Konfiguration manuell zu bearbeiten, einschließlich OAuth für OpenAI-Codex-Abonnements und Anthropic (API-Schlüssel oder Wiederverwendung der Claude CLI).
Wenn kein primäres Modell konfiguriert ist, wählt eine neue Einrichtung mit OpenAI-API-Schlüssel
openai/gpt-5.6; die reine Direct-API-ID wird in die Sol-Stufe aufgelöst. Eine neue
Einrichtung mit ChatGPT-/Codex-OAuth wählt die exakte Katalogreferenz openai/gpt-5.6-sol.
Eine erneute Authentifizierung behält ein vorhandenes explizites primäres Modell bei,
einschließlich openai/gpt-5.5. Wenn GPT-5.6 für das Konto nicht verfügbar ist, wählen
Sie openai/gpt-5.5 explizit aus; OpenClaw stuft es nicht stillschweigend herab.
„Modell ist nicht zulässig“ (und warum Antworten ausbleiben)
Wenn agents.defaults.modelPolicy.allow nicht leer ist, wird es zur Positivliste für /model, Sitzungsüberschreibungen und --model. Die Auswahl eines Modells außerhalb dieser Positivliste führt zur Rückkehr, bevor eine normale Antwort generiert wird. Ein agentenspezifisches agents.entries.*.modelPolicy.allow ersetzt die Standardrichtlinie für diesen Agenten.
Die Modellüberschreibung "provider/model" ist durch agents.defaults.modelPolicy.allow nicht zulässig.Fügen Sie "provider/model", "provider/*" oder ein enger gefasstes Präfix "provider/namespace/*" zu agents.defaults.modelPolicy.allow hinzu oder entfernen/leeren Sie die Liste, um jedes Modell zuzulassen.Beheben Sie dies, indem Sie das Modell oder einen Provider-Platzhalter zum genannten Schlüssel modelPolicy.allow hinzufügen, diese Liste entfernen/leeren oder ein Modell aus /model list auswählen. Wenn der abgelehnte Befehl eine Runtime-Überschreibung wie /model openai/gpt-5.5 --runtime codex enthielt, korrigieren Sie zuerst die Positivliste und versuchen Sie anschließend denselben Befehl erneut.
Für lokale/GGUF-Modelle muss die Positivliste die vollständige Referenz mit Provider-Präfix enthalten, beispielsweise ollama/gemma4:26b oder lmstudio/Gemma4-26b-a4-it-gguf – prüfen Sie openclaw models list --provider <provider> auf die exakte Zeichenfolge. Reine Dateinamen oder Anzeigenamen reichen nicht aus, sobald die Positivliste aktiv ist.
Um Provider einzuschränken, ohne jedes Modell aufzulisten, verwenden Sie Einträge mit abschließendem Präfix-Platzhalter. Ein Provider-weiter Eintrag provider/* entspricht jedem Modell dieses Providers; ein enger gefasstes Präfix wie clawrouter/anthropic/* entspricht nur diesem Namespace:
{ agents: { defaults: { modelPolicy: { allow: ["openai/*", "vllm/*"], }, }, },}/model, /models und Modellauswahlmenüs zeigen dann nur den ermittelten Katalog dieser Provider an, und neue Modelle können erscheinen, ohne die Positivliste zu bearbeiten. Kombinieren Sie exakte provider/model-Einträge mit provider/*-Einträgen, um ein bestimmtes Modell eines anderen Providers einzubeziehen.
Beispiel einer Positivliste mit Aliassen und modellspezifischen Einstellungen:
{ agents: { defaults: { model: { primary: "anthropic/claude-sonnet-4-6" }, modelPolicy: { allow: ["anthropic/claude-sonnet-4-6", "anthropic/claude-opus-4-6"], }, models: { "anthropic/claude-sonnet-4-6": { alias: "Sonnet" }, "anthropic/claude-opus-4-6": { alias: "Opus" }, }, }, },}Positivliste explizit bearbeiten
Legen Sie die vollständige Liste direkt fest:
openclaw config set agents.defaults.modelPolicy.allow '["openai/gpt-5.4","anthropic/*"]' --strict-jsonopenclaw models set, die Provider-Einrichtung und openclaw models aliases add können Einträge unter agents.defaults.models hinzufügen, ändern jedoch niemals modelPolicy.allow. Dadurch bleiben Modellmetadaten und Aliasse von der Überschreibungsrichtlinie unabhängig.
/model im Chat
/model/model list/model 3/model openai/gpt-5.4/model default/model status/modelund/model listzeigen eine kompakte nummerierte Auswahl (Modellfamilie + verfügbare Provider);/model <#>wählt daraus aus. Auf Discord öffnet dies Dropdown-Menüs für Provider und Modell mit einem Submit-Schritt; auf Telegram gelten Auswahlen in der Auswahl nur für die Sitzung und überschreiben niemals den dauerhaften Standard des Agenten inopenclaw.json./models addist veraltet und gibt eine Nachricht zurück, statt Modelle über den Chat zu registrieren./modelspeichert die neue Sitzungsauswahl sofort. Wenn der Agent inaktiv ist, verwendet der nächste Lauf sie unmittelbar; wenn bereits ein Lauf aktiv ist, wird der Wechsel für den nächsten einwandfreien Wiederholungszeitpunkt vorgemerkt (oder einen späteren, falls bereits Tool-Aktivität oder Antwortausgabe begonnen hat)./model defaultlöscht die Sitzungsauswahl, sodass sie wieder den konfigurierten Primärwert übernimmt.- Eine vom Benutzer ausgewählte
/model-Referenz gilt strikt für diese Sitzung: Wenn sie nicht mehr erreichbar ist, schlägt die Antwort sichtbar fehl, statt stillschweigend überagents.defaults.model.fallbacksauszuweichen. Konfigurierte Standardwerte und Primärmodelle von Cron-Aufträgen verwenden weiterhin Fallback-Ketten. /model statusist die Detailansicht: Authentifizierungskandidaten pro Provider sowie (falls konfiguriert) der Provider-EndpunktbaseUrlund der Modusapi.- Modellreferenzen werden durch Aufteilen am ersten
/geparst; geben Sieprovider/modelein. Wenn die Modell-ID selbst/enthält (im OpenRouter-Stil), fügen Sie das Provider-Präfix hinzu, z. B./model openrouter/moonshotai/kimi-k2. Wenn Sie den Provider weglassen, versucht OpenClaw Folgendes: (1) Übereinstimmung mit einem Alias, (2) eindeutige Übereinstimmung mit einem konfigurierten Provider für genau diese Modell-ID ohne Präfix, (3) den konfigurierten Standard-Provider (veralteter Fallback) — und wenn dieser Provider das konfigurierte Standardmodell nicht mehr bereitstellt, stattdessen das erste konfigurierte Provider-/Modellpaar, damit kein veralteter Standardwert eines entfernten Providers angezeigt wird. - Modellreferenzen werden in Kleinbuchstaben normalisiert; Provider-IDs müssen ansonsten exakt übereinstimmen. Verwenden Sie daher die vom Plugin angegebene ID.
Vollständiges Befehlsverhalten und Konfiguration: Slash-Befehle.
CLI
openclaw models statusopenclaw models listopenclaw models set <provider/model>openclaw models set-image <provider/model>openclaw models scanopenclaw models aliases list|add|removeopenclaw models fallbacks list|add|remove|clearopenclaw models image-fallbacks list|add|remove|clearopenclaw models auth list|add|login|paste-api-key|paste-token|setup-token|orderopenclaw models ohne Unterbefehl ist eine Kurzform für models status, das auch den Ablaufzeitpunkt von OAuth für Profile im Authentifizierungsspeicher anzeigt (standardmäßig erfolgt innerhalb von 24h eine Warnung). Vollständige Flags, JSON-Strukturen und Unterbefehle für Authentifizierungsprofile: CLI-Referenz für Modelle.
Suche (kostenlose OpenRouter-Modelle)
openclaw models scan untersucht den öffentlichen Katalog kostenloser Modelle von OpenRouter und kann Kandidaten live auf Tool- und Bildunterstützung prüfen. Der Katalog selbst ist öffentlich, daher benötigen reine Metadatensuchen (--no-probe) keinen Schlüssel; Live-Prüfungen sowie --set-default/--set-image erfordern einen OpenRouter-API-Schlüssel (Authentifizierungsprofil oder OPENROUTER_API_KEY) und beschränken die Ausgabe ohne einen solchen sicher auf Metadaten.
Die Ergebnisse werden nach folgenden Kriterien gewichtet: Bildunterstützung, dann Tool-Latenz, dann Kontextgröße und schließlich Parameteranzahl. In einem TTY fordern geprüfte Ergebnisse zur interaktiven Auswahl eines Fallbacks auf; im nicht interaktiven Modus ist --yes erforderlich, um die Standardwerte zu übernehmen.
Modellregistrierung (models.json)
Unter models.providers konfigurierte benutzerdefinierte Provider werden unter dem Agentenverzeichnis (standardmäßig ~/.openclaw/agents/<agentId>/agent/models.json) in models.json geschrieben. Kataloge von Provider-Plugins werden separat als generierte, Plugin-eigene Katalogfragmente gespeichert und automatisch geladen. Diese Datei wird standardmäßig mit der Konfiguration zusammengeführt; setzen Sie models.mode: "replace", um ausschließlich Ihre konfigurierten Provider zu verwenden.
Priorität im Zusammenführungsmodus
Bei übereinstimmenden Provider-IDs:
- Ein nicht leeres
baseUrl, das bereits immodels.jsondes Agenten vorhanden ist, hat Vorrang. - Ein nicht leeres
apiKeyinmodels.jsonhat nur dann Vorrang, wenn dieser Provider im aktuellen Kontext der Konfiguration bzw. des Authentifizierungsprofils nicht durch SecretRef verwaltet wird. - Durch SecretRef verwaltete
apiKey-Werte werden anhand von Quellmarkierungen aktualisiert, statt aufgelöste Secrets dauerhaft zu speichern: der Name der Umgebungsvariablen bei Umgebungsreferenzen,secretref-managedbei Datei-/Ausführungsreferenzen. - Durch SecretRef verwaltete Header-Werte werden auf dieselbe Weise aktualisiert, wobei für Umgebungsreferenzen
secretref-env:ENV_VAR_NAMEverwendet wird. - Leere oder fehlende
apiKey/baseUrlinmodels.jsongreifen aufmodels.providersaus der Konfiguration zurück. - Andere Provider-Felder werden anhand der Konfiguration und der normalisierten Katalogdaten aktualisiert.
Bei der dauerhaften Speicherung von Markierungen ist die Quelle maßgeblich: OpenClaw schreibt bei jeder Neugenerierung von models.json Markierungen aus dem aktiven Snapshot der Quellkonfiguration (vor der Auflösung), nicht aus aufgelösten Laufzeitwerten von Secrets — einschließlich befehlsgesteuerter Pfade wie openclaw agent.
Verwandte Themen
- Agentenlaufzeiten — OpenClaw, Codex und andere Laufzeiten für Agentenschleifen
- Konfigurationsreferenz — Konfigurationsschlüssel für Modelle
- Bilderzeugung — Konfiguration von Bildmodellen
- Modell-Failover — Fallback-Ketten
- Modell-Provider — Provider-Routing und Authentifizierung
- CLI-Referenz für Modelle — vollständige Referenz für Befehle und Flags
- Musikerzeugung — Konfiguration von Musikmodellen
- Videoerzeugung — Konfiguration von Videomodellen