Primi 60 secondi
Esegui questa sequenza esatta nell’ordine:openclaw status→ mostra i canali configurati e nessun errore di autenticazione evidente.openclaw status --all→ il report completo è presente e condivisibile.openclaw gateway probe→ il target Gateway previsto è raggiungibile (Reachable: yes).Capability: ...indica quale livello di autenticazione il probe ha potuto dimostrare, eRead probe: limited - missing scope: operator.readindica diagnostica degradata, non un errore di connessione.openclaw gateway status→Runtime: running,Connectivity probe: oke una rigaCapability: ...plausibile. Usa--require-rpcse ti serve anche la prova RPC con ambito di lettura.openclaw doctor→ nessun errore bloccante di configurazione/servizio.openclaw channels status --probe→ un Gateway raggiungibile restituisce lo stato di trasporto live per account più risultati di probe/audit comeworksoaudit ok; se il Gateway non è raggiungibile, il comando ripiega su riepiloghi solo di configurazione.openclaw logs --follow→ attività stabile, nessun errore fatale ripetuto.
L’assistente sembra limitato o senza strumenti
Se l’assistente non può ispezionare file, eseguire comandi, usare l’automazione del browser o vedere gli strumenti previsti, controlla prima il profilo strumenti effettivo:tools.profile: "messaging"è intenzionalmente ristretto per agenti solo chat.tools.profile: "coding"è il profilo abituale per repository, file, shell e workflow runtime.tools.profile: "full"espone il set di strumenti più ampio e dovrebbe essere limitato ad agenti affidabili controllati dall’operatore.- Gli override per agente
agents.list[].toolspossono restringere o ampliare il profilo root per un agente.
openclaw status --all. Vedi Strumenti per il modello
di profilo e gli override allow/deny.
Contesto lungo Anthropic 429
Se vedi:HTTP 429: rate_limit_error: Extra usage is required for long context requests,
vai a /gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context.
Backend locale compatibile con OpenAI funziona direttamente ma fallisce in OpenClaw
Se il tuo backend locale o self-hosted/v1 risponde a piccoli probe diretti
/v1/chat/completions ma fallisce con openclaw infer model run o nei normali
turni dell’agente:
- Se l’errore cita
messages[].contente si aspetta una stringa, impostamodels.providers.<provider>.models[].compat.requiresStringContent: true. - Se il backend continua a fallire solo nei turni agente OpenClaw, imposta
models.providers.<provider>.models[].compat.supportsTools: falsee riprova. - Se le chiamate dirette minime continuano a funzionare ma prompt OpenClaw più grandi mandano in crash il backend, tratta il problema rimanente come una limitazione del modello/server upstream e continua nel runbook approfondito: /gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail
Installazione del Plugin fallisce con estensioni openclaw mancanti
Se l’installazione fallisce conpackage.json missing openclaw.extensions, il pacchetto plugin
usa una struttura vecchia che OpenClaw non accetta più.
Correzione nel pacchetto plugin:
- Aggiungi
openclaw.extensionsapackage.json. - Punta le voci ai file runtime compilati (di solito
./dist/index.js). - Ripubblica il plugin ed esegui di nuovo
openclaw plugins install <package>.
La policy di installazione blocca installazioni o aggiornamenti dei plugin
Se un aggiornamento termina ma i plugin sono obsoleti, disabilitati o mostrano messaggi comeblocked by install policy, install policy failed closed o
Disabled "<plugin>" after plugin update failure, controlla
security.installPolicy.
La policy di installazione viene eseguita durante installazioni e aggiornamenti dei plugin. Le versioni dei plugin
di proprietà di OpenClaw normalmente avanzano con la release di OpenClaw, quindi un aggiornamento di OpenClaw può
richiedere anche aggiornamenti corrispondenti dei plugin @openclaw/* durante la sincronizzazione post-aggiornamento.
Evita queste forme di policy ampie, a meno che tu non mantenga anche la regola di aggiornamento
corrispondente:
- Bloccare i plugin di proprietà di OpenClaw su una singola vecchia versione esatta, ad esempio consentendo
solo
@openclaw/*@2026.5.3. - Bloccare solo in base al tipo di origine, ad esempio ogni richiesta di plugin npm, network o
request.mode: "update". - Trattare il comando di policy come opzionale. Quando
security.installPolicyè abilitato, un eseguibile di policy mancante, lento, non leggibile o bloccato dai permessi fallisce in modalità chiusa. - Approvare versioni di plugin senza considerare
openclawVersiondella richiesta di policy e i metadati del candidato plugin.
@openclaw/* affidabili o per gli id plugin che usi. Se
distingui richieste di installazione e aggiornamento, applica la stessa regola di fiducia a
request.mode: "update".
Ripristino:
openclaw plugins update --all, poi ripristina la regola più restrittiva.
Se un plugin è stato disabilitato dopo un errore di aggiornamento, ispezionalo e riabilitalo solo
dopo che l’aggiornamento riesce:
Plugin presente ma bloccato da proprietà sospetta
Seopenclaw doctor, setup o avvisi di avvio mostrano:
node (uid 1000). Per il setup Docker
predefinito, ripara i bind mount dell’host:
Albero decisionale
No replies
No replies
Runtime: runningConnectivity probe: okCapability: read-only,write-capableoadmin-capable- Il tuo canale mostra il trasporto connesso e, dove supportato,
worksoaudit okinchannels status --probe - Il mittente risulta approvato (oppure la policy DM è aperta/allowlist)
drop guild message (mention required→ il gating delle menzioni ha bloccato il messaggio in Discord.pairing request→ il mittente non è approvato ed è in attesa di approvazione dell’abbinamento via DM.blocked/allowlistnei log del canale → mittente, stanza o gruppo è filtrato.
Dashboard or Control UI will not connect
Dashboard or Control UI will not connect
Dashboard: http://...è mostrato inopenclaw gateway statusConnectivity probe: okCapability: read-only,write-capableoadmin-capable- Nessun loop di autenticazione nei log
device identity required→ il contesto HTTP/non sicuro non può completare l’autenticazione del dispositivo.origin not allowed→ il browserOriginnon è consentito per il target Gateway della Control UI.AUTH_TOKEN_MISMATCHcon suggerimenti di retry (canRetryWithDeviceToken=true) → può avvenire automaticamente un retry singolo con device-token affidabile.- Quel retry con token in cache riusa il set di ambiti in cache salvato con il token del dispositivo abbinato.
I chiamanti con
deviceTokenesplicito /scopesespliciti mantengono invece il set di ambiti richiesto. - Nel percorso asincrono della Control UI Tailscale Serve, i tentativi falliti per lo stesso
{scope, ip}sono serializzati prima che il limiter registri l’errore, quindi un secondo retry errato concorrente può già mostrareretry later. too many failed authentication attempts (retry later)da un’origine browser localhost → errori ripetuti dalla stessaOriginsono temporaneamente bloccati; un’altra origine localhost usa un bucket separato.unauthorizedripetuto dopo quel retry → token/password errato, mismatch della modalità auth o token del dispositivo abbinato obsoleto.gateway connect failed:→ la UI sta puntando a URL/porta errati o a un Gateway irraggiungibile.
Gateway will not start or service installed but not running
Gateway will not start or service installed but not running
Service: ... (loaded)Runtime: runningConnectivity probe: okCapability: read-only,write-capableoadmin-capable
Gateway start blocked: set gateway.mode=localoexisting config is missing gateway.mode→ la modalità Gateway è remota, oppure al file di configurazione manca il timbro local-mode e deve essere riparato.refusing to bind gateway ... without auth→ bind non local loopback senza un percorso di autenticazione Gateway valido (token/password, o trusted-proxy dove configurato).another gateway instance is already listeningoEADDRINUSE→ porta già occupata.
Il canale si connette ma i messaggi non circolano
Il canale si connette ma i messaggi non circolano
- Il trasporto del canale è connesso.
- I controlli di abbinamento/allowlist passano.
- Le menzioni vengono rilevate dove richieste.
mention required→ il gating delle menzioni di gruppo ha bloccato l’elaborazione.pairing/pending→ il mittente del DM non è ancora approvato.not_in_channel,missing_scope,Forbidden,401/403→ problema con il token di autorizzazione del canale.
Cron o Heartbeat non si è attivato o non ha consegnato
Cron o Heartbeat non si è attivato o non ha consegnato
cron.statusmostra che è abilitato con un prossimo risveglio.cron runsmostra vociokrecenti.- Heartbeat è abilitato e non è fuori dall’orario attivo.
cron: scheduler disabled; jobs will not run automatically→ Cron è disabilitato.heartbeat skippedconreason=quiet-hours→ fuori dall’orario attivo configurato.heartbeat skippedconreason=empty-heartbeat-file→HEARTBEAT.mdesiste ma contiene solo scaffolding vuoto, commenti, intestazioni, fence o checklist vuota.heartbeat skippedconreason=no-tasks-due→ la modalità attività diHEARTBEAT.mdè attiva, ma nessuno degli intervalli delle attività è ancora scaduto.heartbeat skippedconreason=alerts-disabled→ tutta la visibilità di Heartbeat è disabilitata (showOk,showAlertseuseIndicatorsono tutti disattivati).requests-in-flight→ lane principale occupata; il risveglio di Heartbeat è stato rinviato.unknown accountId→ l’account di destinazione della consegna Heartbeat non esiste.
Node è abbinato ma lo strumento non riesce con camera canvas screen exec
Node è abbinato ma lo strumento non riesce con camera canvas screen exec
- Node è elencato come connesso e abbinato per il ruolo
node. - La capability esiste per il comando che stai invocando.
- Lo stato dell’autorizzazione è concesso per lo strumento.
NODE_BACKGROUND_UNAVAILABLE→ porta l’app del Node in primo piano.*_PERMISSION_REQUIRED→ l’autorizzazione del sistema operativo è stata negata o manca.SYSTEM_RUN_DENIED: approval required→ l’approvazione exec è in sospeso.SYSTEM_RUN_DENIED: allowlist miss→ il comando non è nell’allowlist exec.
Exec chiede improvvisamente l'approvazione
Exec chiede improvvisamente l'approvazione
- Se
tools.exec.hostnon è impostato, il valore predefinito èauto. host=autosi risolve insandboxquando è attivo un runtime sandbox, altrimenti ingateway.host=autoriguarda solo il routing; il comportamento “YOLO” senza prompt deriva dasecurity=fullpiùask=offsu gateway/node.- Su
gatewayenode,tools.exec.securitynon impostato usa come predefinitofull. tools.exec.asknon impostato usa come predefinitooff.- Risultato: se vedi approvazioni, qualche policy locale all’host o per sessione ha reso exec più restrittivo rispetto ai valori predefiniti attuali.
- Imposta solo
tools.exec.host=gatewayse vuoi soltanto un routing dell’host stabile. - Usa
security=allowlistconask=on-missse vuoi host exec ma vuoi comunque una revisione quando ci sono mancate corrispondenze nell’allowlist. - Abilita la modalità sandbox se vuoi che
host=autotorni a risolversi insandbox.
Approval required.→ il comando è in attesa di/approve ....SYSTEM_RUN_DENIED: approval required→ l’approvazione exec su host Node è in sospeso.exec host=sandbox requires a sandbox runtime for this session→ selezione sandbox implicita/esplicita, ma la modalità sandbox è disattivata.
Lo strumento browser non riesce
Lo strumento browser non riesce
- Lo stato del browser mostra
running: truee un browser/profilo scelto. openclawsi avvia, oppureuserpuò vedere le schede Chrome locali.
unknown command "browser"ounknown command 'browser'→plugins.allowè impostato e non includebrowser.Failed to start Chrome CDP on port→ l’avvio del browser locale non è riuscito.browser.executablePath not found→ il percorso del binario configurato è errato.browser.cdpUrl must be http(s) or ws(s)→ l’URL CDP configurato usa uno schema non supportato.browser.cdpUrl has invalid port→ l’URL CDP configurato ha una porta non valida o fuori intervallo.No Chrome tabs found for profile="user"→ il profilo di collegamento Chrome MCP non ha schede Chrome locali aperte.Remote CDP for profile "<name>" is not reachable→ l’endpoint CDP remoto configurato non è raggiungibile da questo host.Browser attachOnly is enabled ... not reachableoBrowser attachOnly is enabled and CDP websocket ... is not reachable→ il profilo solo collegamento non ha un target CDP live.- override obsoleti di viewport / modalità scura / locale / offline su profili solo collegamento o CDP remoto → esegui
openclaw browser stop --browser-profile <name>per chiudere la sessione di controllo attiva e rilasciare lo stato di emulazione senza riavviare il Gateway.
Correlati
- FAQ — domande frequenti
- Risoluzione dei problemi del Gateway — problemi specifici del Gateway
- Doctor — controlli di integrità e riparazioni automatizzati
- Risoluzione dei problemi dei canali — problemi di connettività dei canali
- Risoluzione dei problemi di automazione — problemi di Cron e Heartbeat