CLI dei modelli
Vedi /concepts/model-failover per la rotazione dei profili di autenticazione, i cooldown e come questi interagiscono con i fallback. Panoramica rapida dei provider + esempi: /concepts/model-providers.Come funziona la selezione del modello
OpenClaw seleziona i modelli in questo ordine:- Modello primario (
agents.defaults.model.primaryoagents.defaults.model). - Fallback in
agents.defaults.model.fallbacks(in ordine). - Il failover dell’autenticazione del provider avviene all’interno di un provider prima di passare al modello successivo.
agents.defaults.modelsè l’allowlist/catalogo dei modelli che OpenClaw può usare (più gli alias).agents.defaults.imageModelviene usato solo quando il modello primario non può accettare immagini.agents.defaults.pdfModelviene usato dallo strumentopdf. Se omesso, lo strumento ripiega suagents.defaults.imageModel, poi sul modello risolto della sessione/predefinito.agents.defaults.imageGenerationModelviene usato dalla capacità condivisa di generazione immagini. Se omesso,image_generatepuò comunque dedurre un provider predefinito supportato dall’autenticazione. Prova prima il provider predefinito corrente, poi i restanti provider di generazione immagini registrati in ordine di id provider. Se imposti un provider/modello specifico, configura anche l’autenticazione/la chiave API di quel provider.agents.defaults.videoGenerationModelviene usato dalla capacità condivisa di generazione video. A differenza della generazione immagini, oggi questo non deduce un provider predefinito. Imposta unprovider/modelesplicito comeqwen/wan2.6-t2ve configura anche l’autenticazione/la chiave API di quel provider.- I valori predefiniti per agente possono sovrascrivere
agents.defaults.modeltramiteagents.list[].modelpiù i binding (vedi /concepts/multi-agent).
Policy rapida sui modelli
- Imposta come primario il modello latest-generation più potente a tua disposizione.
- Usa i fallback per attività sensibili a costo/latenza e per chat meno critiche.
- Per agenti con tools abilitati o input non attendibili, evita livelli di modello più vecchi/più deboli.
Onboarding (consigliato)
Se non vuoi modificare manualmente la configurazione, esegui l’onboarding:Chiavi di configurazione (panoramica)
agents.defaults.model.primaryeagents.defaults.model.fallbacksagents.defaults.imageModel.primaryeagents.defaults.imageModel.fallbacksagents.defaults.pdfModel.primaryeagents.defaults.pdfModel.fallbacksagents.defaults.imageGenerationModel.primaryeagents.defaults.imageGenerationModel.fallbacksagents.defaults.videoGenerationModel.primaryeagents.defaults.videoGenerationModel.fallbacksagents.defaults.models(allowlist + alias + parametri provider)models.providers(provider personalizzati scritti inmodels.json)
z.ai/* vengono normalizzati
in zai/*.
Gli esempi di configurazione dei provider (incluso OpenCode) si trovano in
/providers/opencode.
”Model is not allowed” (e perché le risposte si interrompono)
Seagents.defaults.models è impostato, diventa l’allowlist per /model e per
le sostituzioni della sessione. Quando un utente seleziona un modello che non è in quella allowlist,
OpenClaw restituisce:
- Aggiungere il modello a
agents.defaults.models, oppure - Cancellare l’allowlist (rimuovere
agents.defaults.models), oppure - Scegliere un modello da
/model list.
Passare da un modello all’altro nella chat (/model)
Puoi cambiare modello per la sessione corrente senza riavviare:
/model(e/model list) è un selettore compatto numerato (famiglia di modelli + provider disponibili).- Su Discord,
/modele/modelsaprono un selettore interattivo con menu a discesa per provider e modello più un passaggio Submit. /model <#>seleziona dal selettore./modelrende persistente immediatamente la nuova selezione di sessione.- Se l’agente è inattivo, l’esecuzione successiva usa subito il nuovo modello.
- Se è già attiva un’esecuzione, OpenClaw contrassegna un cambio live come in attesa e riavvia nel nuovo modello solo in un punto di retry pulito.
- Se l’attività dei tools o l’output della risposta sono già iniziati, il cambio in attesa può restare in coda fino a una successiva opportunità di retry o al turno utente seguente.
/model statusè la vista dettagliata (candidati di autenticazione e, quando configurati,baseUrldell’endpoint provider + modalitàapi).- I riferimenti ai modelli vengono analizzati dividendo sulla prima
/. Usaprovider/modelquando digiti/model <ref>. - Se l’ID del modello stesso contiene
/(stile OpenRouter), devi includere il prefisso del provider (esempio:/model openrouter/moonshotai/kimi-k2). - Se ometti il provider, OpenClaw risolve l’input in questo ordine:
- corrispondenza alias
- corrispondenza univoca di provider configurato per quell’esatto id modello senza prefisso
- fallback deprecato al provider predefinito configurato Se quel provider non espone più il modello predefinito configurato, OpenClaw ripiega invece sul primo provider/modello configurato per evitare di mostrare un valore predefinito obsoleto da un provider rimosso.
Comandi CLI
openclaw models (senza sottocomando) è una scorciatoia per models status.
models list
Mostra per impostazione predefinita i modelli configurati. Flag utili:
--all: catalogo completo--local: solo provider locali--provider <name>: filtra per provider--plain: un modello per riga--json: output leggibile dalle macchine
models status
Mostra il modello primario risolto, i fallback, il modello immagine e una panoramica dell’autenticazione
dei provider configurati. Mostra anche lo stato di scadenza OAuth per i profili trovati
nell’archivio di autenticazione (avvisa entro 24h per impostazione predefinita). --plain stampa solo il
modello primario risolto.
Lo stato OAuth viene sempre mostrato (ed è incluso nell’output --json). Se un provider configurato
non ha credenziali, models status stampa una sezione Missing auth.
Il JSON include auth.oauth (finestra di avviso + profili) e auth.providers
(autenticazione effettiva per provider).
Usa --check per l’automazione (exit 1 quando mancante/scaduta, 2 quando in scadenza).
Usa --probe per controlli live dell’autenticazione; le righe probe possono provenire da profili di autenticazione, credenziali env
o models.json.
Se auth.order.<provider> esplicito omette un profilo memorizzato, la probe segnala
excluded_by_auth_order invece di provarlo. Se l’autenticazione esiste ma non è possibile risolvere alcun
modello probeable per quel provider, la probe segnala status: no_model.
La scelta dell’autenticazione dipende da provider/account. Per host gateway sempre attivi, le chiavi API
sono di solito la soluzione più prevedibile; sono supportati anche il riutilizzo di Claude CLI e i profili OAuth/token Anthropic esistenti.
Esempio (Claude CLI):
Scansione (modelli OpenRouter gratuiti)
openclaw models scan ispeziona il catalogo dei modelli gratuiti di OpenRouter e può
facoltativamente eseguire probe sui modelli per il supporto di tools e immagini.
Flag principali:
--no-probe: salta le probe live (solo metadati)--min-params <b>: dimensione minima dei parametri (miliardi)--max-age-days <days>: salta i modelli più vecchi--provider <name>: filtro sul prefisso del provider--max-candidates <n>: dimensione dell’elenco di fallback--set-default: impostaagents.defaults.model.primarysulla prima selezione--set-image: impostaagents.defaults.imageModel.primarysulla prima selezione immagine
OPENROUTER_API_KEY). Senza una chiave, usa --no-probe per elencare solo i candidati.
I risultati della scansione vengono classificati in base a:
- Supporto immagini
- Latenza dei tools
- Dimensione del contesto
- Numero di parametri
- Elenco OpenRouter
/models(filtro:free) - Richiede una chiave API OpenRouter da profili di autenticazione o
OPENROUTER_API_KEY(vedi /environment) - Filtri opzionali:
--max-age-days,--min-params,--provider,--max-candidates - Controlli delle probe:
--timeout,--concurrency
--yes per accettare i valori predefiniti.
Registro modelli (models.json)
I provider personalizzati in models.providers vengono scritti in models.json nella
directory dell’agente (predefinita ~/.openclaw/agents/<agentId>/agent/models.json). Questo file
viene unito per impostazione predefinita a meno che models.mode non sia impostato su replace.
Precedenza della modalità merge per ID provider corrispondenti:
- Un
baseUrlnon vuoto già presente nelmodels.jsondell’agente ha la precedenza. - Una
apiKeynon vuota nelmodels.jsondell’agente ha la precedenza solo quando quel provider non è gestito come SecretRef nel contesto corrente di configurazione/profilo di autenticazione. - I valori
apiKeydei provider gestiti come SecretRef vengono aggiornati dai marker di origine (ENV_VAR_NAMEper riferimenti env,secretref-managedper riferimenti file/exec) invece di rendere persistenti i secret risolti. - I valori header dei provider gestiti come SecretRef vengono aggiornati dai marker di origine (
secretref-env:ENV_VAR_NAMEper riferimenti env,secretref-managedper riferimenti file/exec). apiKey/baseUrldell’agente vuoti o mancanti ripiegano su configmodels.providers.- Gli altri campi provider vengono aggiornati dalla configurazione e dai dati di catalogo normalizzati.
models.json, inclusi i percorsi guidati da comandi come openclaw agent.
Correlati
- Provider di modelli — instradamento provider e autenticazione
- Failover dei modelli — catene di fallback
- Generazione di immagini — configurazione del modello immagine
- Riferimento della configurazione — chiavi di configurazione del modello