FAQ
FAQ: modelli e autenticazione
Domande e risposte su modelli e profili di autenticazione. Per configurazione, sessioni, gateway, canali e risoluzione dei problemi, consulta la FAQ principale.
Modelli: impostazioni predefinite, selezione, alias, cambio
Che cos’è il "modello predefinito"?
Il modello predefinito di OpenClaw è quello che imposti come:
agents.defaults.model.primary
I modelli sono indicati come provider/model (esempio: openai/gpt-5.5 o anthropic/claude-sonnet-4-6). Se ometti il provider, OpenClaw prova prima un alias, poi una corrispondenza univoca del provider configurato per quell’esatto ID modello, e solo dopo ripiega sul provider predefinito configurato come percorso di compatibilità deprecato. Se quel provider non espone più il modello predefinito configurato, OpenClaw ripiega sul primo provider/modello configurato invece di mostrare un valore predefinito obsoleto di un provider rimosso. Dovresti comunque impostare esplicitamente provider/model.
Quale modello consigli?
Impostazione predefinita consigliata: usa il modello di ultima generazione più potente disponibile nel tuo stack di provider. Per agenti con strumenti abilitati o input non attendibile: dai priorità alla potenza del modello rispetto al costo. Per chat di routine/a basso rischio: usa modelli di fallback più economici e instrada in base al ruolo dell’agente.
MiniMax ha la propria documentazione: MiniMax e Modelli locali.
Regola pratica: usa il miglior modello che puoi permetterti per lavori ad alto rischio e un modello più economico per chat o riepiloghi di routine. Puoi instradare i modelli per agente e usare sotto-agenti per parallelizzare attività lunghe (ogni sotto-agente consuma token). Vedi Modelli e Sotto-agenti.
Avviso importante: i modelli più deboli o eccessivamente quantizzati sono più vulnerabili alla prompt injection e a comportamenti non sicuri. Vedi Sicurezza.
Maggiore contesto: Modelli.
Come cambio modello senza cancellare la configurazione?
Usa i comandi modello o modifica solo i campi modello. Evita sostituzioni complete della configurazione.
Opzioni sicure:
/modelin chat (rapido, per sessione)openclaw models set ...(aggiorna solo la configurazione del modello)openclaw configure --section model(interattivo)- modifica
agents.defaults.modelin~/.openclaw/openclaw.json
Evita config.apply con un oggetto parziale, a meno che tu non intenda sostituire l’intera configurazione.
Per modifiche RPC, ispeziona prima con config.schema.lookup e preferisci config.patch. Il payload di lookup ti fornisce il percorso normalizzato, documentazione/vincoli dello schema superficiale e riepiloghi immediati dei figli.
per aggiornamenti parziali.
Se hai sovrascritto la configurazione, ripristina da backup o riesegui openclaw doctor per riparare.
Documentazione: Modelli, Configurare, Configurazione, Doctor.
Posso usare modelli self-hosted (llama.cpp, vLLM, Ollama)?
Sì. Ollama è il percorso più semplice per i modelli locali.
Configurazione più rapida:
- Installa Ollama da
https://ollama.com/download - Scarica un modello locale come
ollama pull gemma4 - Se vuoi anche modelli cloud, esegui
ollama signin - Esegui
openclaw onboarde scegliOllama - Scegli
LocaloCloud + Local
Note:
Cloud + Localti dà modelli cloud più i tuoi modelli Ollama locali- i modelli cloud come
kimi-k2.5:cloudnon richiedono un pull locale - per il cambio manuale, usa
openclaw models listeopenclaw models set ollama/<model>
Nota di sicurezza: i modelli più piccoli o pesantemente quantizzati sono più vulnerabili alla prompt injection. Consigliamo vivamente modelli grandi per qualsiasi bot che possa usare strumenti. Se vuoi comunque modelli piccoli, abilita sandboxing e allowlist rigorose per gli strumenti.
Documentazione: Ollama, Modelli locali, Provider di modelli, Sicurezza, Sandboxing.
Quali modelli usano OpenClaw, Flawd e Krill?
- Questi deployment possono differire e cambiare nel tempo; non esiste una raccomandazione fissa sul provider.
- Controlla l’impostazione runtime attuale su ciascun gateway con
openclaw models status. - Per agenti sensibili alla sicurezza o con strumenti abilitati, usa il modello di ultima generazione più potente disponibile.
Come cambio modello al volo (senza riavviare)?
Usa il comando /model come messaggio autonomo:
/model sonnet
/model opus
/model gpt
/model gpt-mini
/model gemini
/model gemini-flash
/model gemini-flash-lite
Questi sono gli alias integrati. Alias personalizzati possono essere aggiunti tramite agents.defaults.models.
Puoi elencare i modelli disponibili con /model, /model list o /model status.
/model (e /model list) mostra un selettore compatto e numerato. Seleziona per numero:
/model 3
Puoi anche forzare un profilo di autenticazione specifico per il provider (per sessione):
/model opus@anthropic:default
/model opus@anthropic:work
Suggerimento: /model status mostra quale agente è attivo, quale file auth-profiles.json è in uso e quale profilo di autenticazione verrà provato dopo.
Mostra anche l’endpoint del provider configurato (baseUrl) e la modalità API (api) quando disponibili.
Come rimuovo il pin da un profilo impostato con @profile?
Riesegui /model senza il suffisso @profile:
/model anthropic/claude-opus-4-6
Se vuoi tornare al valore predefinito, selezionalo da /model (oppure invia /model <default provider/model>).
Usa /model status per confermare quale profilo di autenticazione è attivo.
Posso usare GPT 5.5 per le attività quotidiane e Codex 5.5 per programmare?
Sì. Tratta la scelta del modello e la scelta del runtime separatamente:
- Agente di programmazione Codex nativo: imposta
agents.defaults.model.primarysuopenai/gpt-5.5. Accedi conopenclaw models auth login --provider openai-codexquando vuoi usare l’autenticazione dell’abbonamento ChatGPT/Codex. - Attività OpenAI API dirette fuori dal ciclo dell’agente: configura
OPENAI_API_KEYper immagini, embedding, voce, realtime e altre superfici OpenAI API non legate agli agenti. - Autenticazione dell’agente OpenAI con chiave API: usa
/model openai/gpt-5.5con un profilo chiave APIopenai-codexordinato. - Sotto-agenti: instrada le attività di programmazione a un agente solo Codex con il proprio modello e il proprio valore predefinito
agentRuntime.
Vedi Modelli e Comandi slash.
Come configuro la modalità veloce per GPT 5.5?
Usa un interruttore di sessione o un valore predefinito di configurazione:
- Per sessione: invia
/fast onmentre la sessione usaopenai/gpt-5.5. - Predefinito per modello: imposta
agents.defaults.models["openai/gpt-5.5"].params.fastModesutrue.
Esempio:
{
agents: {
defaults: {
models: {
"openai/gpt-5.5": {
params: {
fastMode: true,
},
},
},
},
},
}
Per OpenAI, la modalità veloce si mappa a service_tier = "priority" nelle richieste Responses native supportate. Le sovrascritture di sessione /fast prevalgono sui valori predefiniti di configurazione.
Perché vedo "Model ... is not allowed" e poi nessuna risposta?
Se agents.defaults.models è impostato, diventa la allowlist per /model e qualsiasi
override di sessione. Scegliere un modello che non è in quell’elenco restituisce:
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
Quell’errore viene restituito al posto di una risposta normale. Correzione: aggiungi il modello a
agents.defaults.models, rimuovi la allowlist oppure scegli un modello da /model list.
Se il comando includeva anche --runtime codex, aggiungi prima il modello e poi riprova
lo stesso comando /model provider/model --runtime codex.
Perché vedo "Unknown model: minimax/MiniMax-M2.7"?
Questo significa che il provider non è configurato (non è stata trovata alcuna configurazione provider MiniMax né alcun profilo di autenticazione), quindi il modello non può essere risolto.
Checklist di correzione:
-
Aggiorna a una release OpenClaw corrente (o esegui dal sorgente
main), poi riavvia il gateway. -
Assicurati che MiniMax sia configurato (procedura guidata o JSON), oppure che l’autenticazione MiniMax esista in env/profili di autenticazione così che il provider corrispondente possa essere iniettato (
MINIMAX_API_KEYperminimax,MINIMAX_OAUTH_TOKENo OAuth MiniMax memorizzato perminimax-portal). -
Usa l’ID modello esatto (sensibile alle maiuscole/minuscole) per il tuo percorso di autenticazione:
minimax/MiniMax-M2.7ominimax/MiniMax-M2.7-highspeedper la configurazione con chiave API, oppureminimax-portal/MiniMax-M2.7/minimax-portal/MiniMax-M2.7-highspeedper la configurazione OAuth. -
Esegui:
openclaw models liste scegli dall’elenco (oppure
/model listin chat).
Posso usare MiniMax come predefinito e OpenAI per attività complesse?
Sì. Usa MiniMax come predefinito e cambia modello per sessione quando necessario.
I fallback servono per errori, non per "attività difficili", quindi usa /model o un agente separato.
Opzione A: cambia per sessione
{
env: { MINIMAX_API_KEY: "sk-...", OPENAI_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "minimax/MiniMax-M2.7" },
models: {
"minimax/MiniMax-M2.7": { alias: "minimax" },
"openai/gpt-5.5": { alias: "gpt" },
},
},
},
}
Poi:
/model gpt
Opzione B: agenti separati
- Agente A predefinito: MiniMax
- Agente B predefinito: OpenAI
- Instrada per agente oppure usa
/agentper cambiare
Documentazione: Modelli, Instradamento multi-agente, MiniMax, OpenAI.
opus / sonnet / gpt sono scorciatoie integrate?
Sì. OpenClaw include alcune abbreviazioni predefinite (applicate solo quando il modello esiste in agents.defaults.models):
opus→anthropic/claude-opus-4-6sonnet→anthropic/claude-sonnet-4-6gpt→openai/gpt-5.5gpt-mini→openai/gpt-5.4-minigpt-nano→openai/gpt-5.4-nanogemini→google/gemini-3.1-pro-previewgemini-flash→google/gemini-3-flash-previewgemini-flash-lite→google/gemini-3.1-flash-lite-preview
Se imposti un tuo alias con lo stesso nome, il tuo valore ha la precedenza.
Come definisco/sovrascrivo le scorciatoie dei modelli (alias)?
Gli alias provengono da agents.defaults.models.<modelId>.alias. Esempio:
{
agents: {
defaults: {
model: { primary: "anthropic/claude-opus-4-6" },
models: {
"anthropic/claude-opus-4-6": { alias: "opus" },
"anthropic/claude-sonnet-4-6": { alias: "sonnet" },
"anthropic/claude-haiku-4-5": { alias: "haiku" },
},
},
},
}
Poi /model sonnet (o /<alias> quando supportato) si risolve in quell’ID modello.
Come aggiungo modelli da altri provider come OpenRouter o Z.AI?
OpenRouter (pagamento per token; molti modelli):
{
agents: {
defaults: {
model: { primary: "openrouter/anthropic/claude-sonnet-4-6" },
models: { "openrouter/anthropic/claude-sonnet-4-6": {} },
},
},
env: { OPENROUTER_API_KEY: "sk-or-..." },
}
Z.AI (modelli GLM):
{
agents: {
defaults: {
model: { primary: "zai/glm-5" },
models: { "zai/glm-5": {} },
},
},
env: { ZAI_API_KEY: "..." },
}
Se fai riferimento a un provider/modello ma manca la chiave richiesta per il provider, riceverai un errore di autenticazione a runtime (ad esempio No API key found for provider "zai").
Nessuna chiave API trovata per il provider dopo l'aggiunta di un nuovo agente
Questo di solito significa che il nuovo agente ha un archivio di autenticazione vuoto. L'autenticazione è per agente e viene salvata in:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json
Opzioni di correzione:
- Esegui
openclaw agents add <id>e configura l'autenticazione durante la procedura guidata. - Oppure copia solo i profili statici portabili
api_key/tokendall'archivio di autenticazione dell'agente principale nell'archivio di autenticazione del nuovo agente. - Per i profili OAuth, accedi dal nuovo agente quando deve usare il proprio account; altrimenti OpenClaw può leggere dall'agente predefinito/principale senza clonare i refresh token.
Non riutilizzare agentDir tra agenti; causa collisioni di autenticazione/sessione.
Failover dei modelli e "Tutti i modelli non sono riusciti"
Come funziona il failover?
Il failover avviene in due fasi:
- Rotazione dei profili di autenticazione all'interno dello stesso provider.
- Fallback del modello al modello successivo in
agents.defaults.model.fallbacks.
I cooldown si applicano ai profili in errore (backoff esponenziale), quindi OpenClaw può continuare a rispondere anche quando un provider è soggetto a rate limit o presenta errori temporanei.
Il bucket dei rate limit include più delle semplici risposte 429. OpenClaw
tratta anche messaggi come Too many concurrent requests,
ThrottlingException, concurrency limit reached,
workers_ai ... quota limit exceeded, resource exhausted e i limiti periodici
della finestra di utilizzo (weekly/monthly limit reached) come rate limit
idonei al failover.
Alcune risposte che sembrano legate alla fatturazione non sono 402, e alcune risposte HTTP 402
rimangono comunque in quel bucket transitorio. Se un provider restituisce
testo esplicito di fatturazione su 401 o 403, OpenClaw può comunque tenerlo
nella corsia di fatturazione, ma i matcher testuali specifici del provider restano limitati al
provider che li possiede (per esempio OpenRouter Key limit exceeded). Se un messaggio 402
sembra invece un limite di finestra di utilizzo riprovabile o un
limite di spesa di organizzazione/workspace (daily limit reached, resets tomorrow,
organization spending limit exceeded), OpenClaw lo tratta come
rate_limit, non come una disattivazione prolungata per fatturazione.
Gli errori di overflow del contesto sono diversi: firme come
request_too_large, input exceeds the maximum number of tokens,
input token count exceeds the maximum number of input tokens,
input is too long for the model o ollama error: context length exceeded restano nel percorso di Compaction/riprova invece di avanzare al
fallback del modello.
Il testo generico degli errori del server è intenzionalmente più ristretto di "qualsiasi cosa con
unknown/error al suo interno". OpenClaw tratta come
segnali di timeout/sovraccarico idonei al failover forme transitorie con ambito provider
come l'errore nudo di Anthropic An unknown error occurred, l'errore nudo di OpenRouter
Provider returned error, errori di motivo di arresto come Unhandled stop reason: error, payload JSON api_error con testo transitorio del server
(internal server error, unknown error, 520, upstream error, backend error) ed errori di provider occupato come ModelNotReadyException,
quando il contesto del provider corrisponde.
Il testo generico di fallback interno come LLM request failed with an unknown error. resta conservativo e non attiva da solo il fallback del modello.
Che cosa significa "No credentials found for profile anthropic:default"?
Significa che il sistema ha tentato di usare l'ID profilo di autenticazione anthropic:default, ma non è riuscito a trovare le credenziali nell'archivio di autenticazione previsto.
Checklist di correzione:
- Conferma dove risiedono i profili di autenticazione (percorsi nuovi e legacy)
- Attuale:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - Legacy:
~/.openclaw/agent/*(migrato daopenclaw doctor)
- Attuale:
- Conferma che la tua variabile env sia caricata dal Gateway
- Se imposti
ANTHROPIC_API_KEYnella shell ma esegui il Gateway tramite systemd/launchd, potrebbe non ereditarla. Inseriscila in~/.openclaw/.envoppure abilitaenv.shellEnv.
- Se imposti
- Assicurati di modificare l'agente corretto
- Le configurazioni multi-agente possono avere più file
auth-profiles.json.
- Le configurazioni multi-agente possono avere più file
- Esegui un controllo rapido dello stato di modello/autenticazione
- Usa
openclaw models statusper vedere i modelli configurati e se i provider sono autenticati.
- Usa
Checklist di correzione per "No credentials found for profile anthropic"
Questo significa che l'esecuzione è vincolata a un profilo di autenticazione Anthropic, ma il Gateway non riesce a trovarlo nel suo archivio di autenticazione.
-
Usa Claude CLI
- Esegui
openclaw models auth login --provider anthropic --method cli --set-defaultsull'host del Gateway.
- Esegui
-
Se invece vuoi usare una chiave API
-
Inserisci
ANTHROPIC_API_KEYin~/.openclaw/.envsull'host del Gateway. -
Cancella qualsiasi ordine vincolato che forza un profilo mancante:
openclaw models auth order clear --provider anthropic
-
-
Conferma di eseguire i comandi sull'host del Gateway
- In modalità remota, i profili di autenticazione risiedono sulla macchina Gateway, non sul tuo laptop.
Perché ha provato anche Google Gemini e non è riuscito?
Se la configurazione del modello include Google Gemini come fallback (oppure sei passato a una forma abbreviata di Gemini), OpenClaw lo proverà durante il fallback del modello. Se non hai configurato le credenziali Google, vedrai No API key found for provider "google".
Correzione: fornisci l'autenticazione Google oppure rimuovi/evita i modelli Google in agents.defaults.model.fallbacks / alias, così il fallback non instrada lì.
Richiesta LLM rifiutata: firma di pensiero richiesta (Google Antigravity)
Causa: la cronologia della sessione contiene blocchi di pensiero senza firme (spesso da uno stream interrotto/parziale). Google Antigravity richiede firme per i blocchi di pensiero.
Correzione: OpenClaw ora rimuove i blocchi di pensiero non firmati per Google Antigravity Claude. Se il problema persiste, avvia una nuova sessione oppure imposta /thinking off per quell'agente.
Profili di autenticazione: cosa sono e come gestirli
Correlato: /concepts/oauth (flussi OAuth, archiviazione dei token, pattern multi-account)
Che cos'è un profilo di autenticazione?
Un profilo di autenticazione è un record di credenziali con nome (OAuth o chiave API) associato a un provider. I profili risiedono in:
~/.openclaw/agents/<agentId>/agent/auth-profiles.json
Per esaminare i profili salvati senza esporre segreti, esegui openclaw models auth list (facoltativamente --provider <id> o --json). Consulta CLI Modelli per i dettagli.
Quali sono gli ID profilo tipici?
OpenClaw usa ID con prefisso del provider come:
anthropic:default(comune quando non esiste un'identità email)anthropic:<email>per le identità OAuth- ID personalizzati scelti da te (ad esempio
anthropic:work)
Posso controllare quale profilo di autenticazione viene provato per primo?
Sì. La configurazione supporta metadati facoltativi per i profili e un ordinamento per provider (auth.order.<provider>). Questo non salva segreti; mappa gli ID a provider/modalità e imposta l'ordine di rotazione.
OpenClaw può saltare temporaneamente un profilo se è in un breve cooldown (rate limit/timeout/errori di autenticazione) o in uno stato disattivato più lungo (fatturazione/crediti insufficienti). Per esaminarlo, esegui openclaw models status --json e controlla auth.unusableProfiles. Configurazione: auth.cooldowns.billingBackoffHours*.
I cooldown da rate limit possono essere circoscritti al modello. Un profilo in cooldown per un modello può essere ancora utilizzabile per un modello affine sullo stesso provider, mentre le finestre di fatturazione/disattivazione continuano a bloccare l'intero profilo.
Puoi anche impostare una sostituzione dell'ordine per agente (salvata in auth-state.json di quell'agente) tramite CLI:
# Defaults to the configured default agent (omit --agent)
openclaw models auth order get --provider anthropic
# Lock rotation to a single profile (only try this one)
openclaw models auth order set --provider anthropic anthropic:default
# Or set an explicit order (fallback within provider)
openclaw models auth order set --provider anthropic anthropic:work anthropic:default
# Clear override (fall back to config auth.order / round-robin)
openclaw models auth order clear --provider anthropic
Per scegliere come target un agente specifico:
openclaw models auth order set --provider anthropic --agent main anthropic:default
Per verificare cosa verrà effettivamente provato, usa:
openclaw models status --probe
Se un profilo salvato viene omesso dall'ordine esplicito, il probe segnala
excluded_by_auth_order per quel profilo invece di provarlo in modo silenzioso.
OAuth vs chiave API - qual è la differenza?
OpenClaw supporta entrambi:
- OAuth spesso sfrutta l'accesso in abbonamento (dove applicabile).
- Le chiavi API usano la fatturazione a token.
La procedura guidata supporta esplicitamente Anthropic Claude CLI, OpenAI Codex OAuth e le chiavi API.