Questa pagina è il riferimento per l’autenticazione dei provider di modelli (chiavi API, OAuth, riuso della Claude CLI e setup-token Anthropic). Per l’autenticazione della connessione Gateway (token, password, trusted-proxy), consulta Configurazione e Autenticazione Trusted Proxy.
env/file/exec), consulta Gestione dei segreti.
Per le regole di idoneità delle credenziali/codici motivo usate da models status --probe, consulta
Semantica delle credenziali di autenticazione.
Configurazione consigliata (chiave API, qualsiasi provider)
Se esegui un Gateway a lunga durata, inizia con una chiave API per il provider scelto. Per Anthropic in particolare, l’autenticazione con chiave API resta la configurazione server più prevedibile, ma OpenClaw supporta anche il riuso di un login locale della Claude CLI.- Crea una chiave API nella console del tuo provider.
- Inseriscila sull’host Gateway (la macchina che esegue
openclaw gateway).
- Se il Gateway viene eseguito sotto systemd/launchd, preferisci inserire la chiave in
~/.openclaw/.envcosì il daemon può leggerla:
openclaw onboard.
Consulta Guida per dettagli sull’ereditarietà dell’ambiente (env.shellEnv,
~/.openclaw/.env, systemd/launchd).
Anthropic: Claude CLI e compatibilità dei token
L’autenticazione setup-token di Anthropic è ancora disponibile in OpenClaw come percorso token supportato. Da allora lo staff Anthropic ci ha comunicato che l’uso della Claude CLI in stile OpenClaw è nuovamente consentito, quindi OpenClaw considera il riuso della Claude CLI e l’uso diclaude -p approvati per questa
integrazione, salvo pubblicazione di una nuova policy da parte di Anthropic.
Quando il riuso della Claude CLI è disponibile sull’host, ora è il percorso
preferito.
Per host Gateway a lunga durata, una chiave API Anthropic resta comunque la
configurazione più prevedibile. Se vuoi riutilizzare un login Claude esistente
sullo stesso host, usa il percorso Anthropic Claude CLI in onboarding/configure.
Configurazione host consigliata per il riuso della Claude CLI:
- Accedi con Claude Code stesso ad Anthropic sull’host Gateway.
- Indica a OpenClaw di passare la selezione del modello Anthropic al backend locale
claude-clie di salvare il profilo di autenticazione OpenClaw corrispondente.
claude non è in PATH, installa prima Claude Code oppure imposta
agents.defaults.cliBackends.claude-cli.command sul percorso reale del binario.
Inserimento manuale del token (qualsiasi provider; scrive lo store di autenticazione SQLite per agente + aggiorna la configurazione):
auth-profiles.json usavano questa forma canonica:
openclaw-agent.sqlite di ciascun agente. Se un’installazione più vecchia ha ancora auth-profiles.json, auth-state.json o un file di profilo di autenticazione piatto come { "openrouter": { "apiKey": "..." } }, esegui openclaw doctor --fix per importarlo in SQLite; doctor conserva backup con timestamp accanto ai file JSON originali. I dettagli degli endpoint come baseUrl, api, ID dei modelli, header e timeout appartengono a models.providers.<id> in openclaw.json o models.json, non nei profili di autenticazione.
Anche le route di autenticazione esterne come Bedrock auth: "aws-sdk" non sono credenziali. Se vuoi una route Bedrock con nome, inserisci auth.profiles.<id>.mode: "aws-sdk" in openclaw.json; non scrivere type: "aws-sdk" nello store dei profili di autenticazione. openclaw doctor --fix sposta i marker legacy AWS SDK dallo store delle credenziali ai metadati di configurazione.
I riferimenti ai profili di autenticazione sono supportati anche per credenziali statiche:
- le credenziali
api_keypossono usarekeyRef: { source, provider, id } - le credenziali
tokenpossono usaretokenRef: { source, provider, id } - i profili in modalità OAuth non supportano credenziali SecretRef; se
auth.profiles.<id>.modeè impostato su"oauth", l’inputkeyRef/tokenRefbasato su SecretRef per quel profilo viene rifiutato.
1 quando scaduto/mancante, 2 quando in scadenza):
- Le righe dei probe possono provenire da profili di autenticazione, credenziali env o
models.json. - Se
auth.order.<provider>esplicito omette un profilo salvato, il probe segnalaexcluded_by_auth_orderper quel profilo invece di provarlo. - Se l’autenticazione esiste ma OpenClaw non riesce a risolvere un candidato modello
verificabile per quel provider, il probe segnala
status: no_model. - I cooldown dei limiti di frequenza possono essere a livello di modello. Un profilo in cooldown per un modello può essere ancora utilizzabile per un modello sibling sullo stesso provider.
Nota su Anthropic
Il backend Anthropicclaude-cli è di nuovo supportato.
- Lo staff Anthropic ci ha comunicato che questo percorso di integrazione OpenClaw è nuovamente consentito.
- OpenClaw quindi considera il riuso della Claude CLI e l’uso di
claude -papprovati per le esecuzioni basate su Anthropic, salvo pubblicazione di una nuova policy da parte di Anthropic. - Le chiavi API Anthropic restano la scelta più prevedibile per host Gateway a lunga durata e per il controllo esplicito della fatturazione lato server.
Controllo dello stato dell’autenticazione dei modelli
Comportamento di rotazione delle chiavi API (Gateway)
Alcuni provider supportano il nuovo tentativo di una richiesta con chiavi alternative quando una chiamata API raggiunge un limite di frequenza del provider.- Ordine di priorità:
OPENCLAW_LIVE_<PROVIDER>_KEY(override singolo)<PROVIDER>_API_KEYS<PROVIDER>_API_KEY<PROVIDER>_API_KEY_*
- I provider Google includono anche
GOOGLE_API_KEYcome fallback aggiuntivo. - Lo stesso elenco di chiavi viene deduplicato prima dell’uso.
- OpenClaw riprova con la chiave successiva solo per errori di limite di frequenza (per esempio
429,rate_limit,quota,resource exhausted,Too many concurrent requests,ThrottlingException,concurrency limit reachedoworkers_ai ... quota limit exceeded). - Gli errori non dovuti a limiti di frequenza non vengono riprovati con chiavi alternative.
- Se tutte le chiavi falliscono, viene restituito l’errore finale dell’ultimo tentativo.
Rimozione dell’autenticazione del provider mentre il Gateway è in esecuzione
Quando l’autenticazione del provider viene rimossa tramite il piano di controllo del Gateway, OpenClaw elimina i profili di autenticazione salvati per quel provider e interrompe le chat o le esecuzioni agente attive il cui provider del modello selezionato corrisponde al provider rimosso. Le esecuzioni interrotte emettono i normali eventi di annullamento chat e ciclo di vita constopReason: "auth-revoked", così i client connessi possono mostrare che l’esecuzione è stata
arrestata perché le credenziali sono state rimosse.
La rimozione dell’autenticazione salvata non revoca le chiavi presso il provider. Ruota o revoca la
chiave nella dashboard del provider quando hai bisogno di invalidazione lato provider.
Controllare quale credenziale viene usata
OpenAI e ID legacy openai-codex
I profili con chiave API OpenAI e i profili OAuth ChatGPT/Codex usano entrambi l’ID provider canonico
openai. La nuova configurazione dovrebbe usare ID profilo openai:* e
auth.order.openai.
Se vedi openai-codex in una configurazione più vecchia, negli ID dei profili di autenticazione o in
auth.order.openai-codex, trattalo come input di migrazione legacy. Non creare nuovi
profili openai-codex. Esegui:
openai-codex:* e le voci
auth.order.openai-codex nella route di autenticazione canonica openai. Per
il routing di modelli/runtime specifico di OpenAI, consulta OpenAI.
Durante il login (CLI)
Usaopenclaw models auth login --provider <id> --profile-id <profileId> per
i provider che supportano profili di autenticazione con nome durante il login.
--force quando un profilo provider salvato è bloccato, scaduto o collegato
all’account sbagliato e il normale comando di login continua a riutilizzarlo. --force elimina
i profili di autenticazione salvati per quel provider nella directory agente selezionata, poi
esegue di nuovo lo stesso flusso di autenticazione del provider. Non revoca le credenziali presso il
provider; ruotale o revocale nella dashboard del provider quando hai bisogno di
invalidazione lato provider.
Per sessione (comando chat)
Usa/model <alias-or-id>@<profileId> per fissare una credenziale provider specifica per la sessione corrente (ID profilo di esempio: anthropic:default, anthropic:work).
Usa /model (o /model list) per un selettore compatto; usa /model status per la vista completa (candidati + prossimo profilo di autenticazione, più dettagli dell’endpoint del provider quando configurati).
Per agente (override CLI)
Imposta un override esplicito dell’ordine dei profili di autenticazione per un agente (salvato nello stato di autenticazione SQLite di quell’agente):--agent <id> per scegliere un agente specifico; omettilo per usare l’agente predefinito configurato.
Quando esegui il debug di problemi di ordine, openclaw models status --probe mostra i profili
salvati omessi come excluded_by_auth_order invece di saltarli silenziosamente.
Quando esegui il debug di problemi di cooldown, ricorda che i cooldown dei limiti di frequenza possono essere legati
a un ID modello invece che all’intero profilo provider.
Se cambi l’ordine di autenticazione o il pinning del profilo per una chat già in esecuzione,
invia /new o /reset in quella chat per avviare una nuova sessione. Le sessioni
esistenti possono mantenere la selezione attuale di modello/profilo fino al reset.
Risoluzione dei problemi
”No credentials found”
Se il profilo Anthropic manca, configura una chiave API Anthropic sull’ host Gateway oppure configura il percorso setup-token Anthropic, poi ricontrolla:Token in scadenza/scaduto
Eseguiopenclaw models status per confermare quale profilo è in scadenza. Se un
profilo token Anthropic manca o è scaduto, aggiorna quella configurazione tramite
setup-token oppure migra a una chiave API Anthropic.