Start here
Risoluzione generale dei problemi
Porta d’ingresso per il triage. 2 minuti per una diagnosi, quindi passa alla pagina di approfondimento.
Primi 60 secondi
Esegui questa sequenza nell’ordine indicato:
openclaw statusopenclaw status --allopenclaw gateway probeopenclaw gateway statusopenclaw doctoropenclaw channels status --probeopenclaw logs --followOutput corretto, una riga per ciascun comando:
openclaw statusmostra i canali configurati, senza errori di autenticazione.openclaw status --allproduce un rapporto completo e condivisibile.openclaw gateway probemostraReachable: yes.Capability: ...è il livello di autenticazione verificato dalla sonda;Read probe: limited - missing scope: operator.readindica una diagnostica limitata, non un errore di connessione.openclaw gateway statusmostraRuntime: running,Connectivity probe: oke un valore plausibile perCapability: .... Aggiungi--require-rpcper richiedere anche la verifica RPC dell’ambito di lettura.openclaw doctornon segnala errori bloccanti di configurazione o del servizio.openclaw channels status --proberestituisce lo stato attuale del trasporto per ciascun account (works/audit ok) quando il Gateway è raggiungibile; in caso contrario, usa riepiloghi basati soltanto sulla configurazione.openclaw logs --followmostra attività regolare, senza errori irreversibili ricorrenti.
L’assistente sembra limitato o privo di strumenti
Controlla il profilo degli strumenti effettivo:
openclaw statusopenclaw status --allopenclaw doctorCause comuni:
tools.profile: "minimal"consente soltantosession_status.tools.profile: "messaging"è ristretto ed è destinato agli agenti che gestiscono soltanto chat.tools.profile: "coding"è il valore predefinito per le nuove configurazioni locali (attività su repository, file, shell e runtime).tools.profile: "full"rimuove le restrizioni del profilo; riservalo agli agenti attendibili controllati dall’operatore.- Il valore
agents.list[].toolsper singolo agente restringe o amplia il profilo radice per uno specifico agente.
Modifica il profilo, riavvia o ricarica il Gateway, quindi ricontrolla con
openclaw status --all. Tabella completa dei profili e dei gruppi: Profili degli strumenti.
Errore 429 di Anthropic con contesto lungo
HTTP 429: rate_limit_error: Extra usage is required for long context requests
→ Errore 429 di Anthropic: utilizzo aggiuntivo richiesto per il contesto lungo.
Il backend locale compatibile con OpenAI funziona direttamente ma non in OpenClaw
Il backend /v1 locale o self-hosted risponde alle sonde dirette
/v1/chat/completions, ma non funziona con openclaw infer model run o durante i normali turni dell’agente:
- Se l’errore indica che
messages[].contentdeve essere una stringa, impostamodels.providers.<provider>.models[].compat.requiresStringContent: true. - Se continua a non funzionare soltanto durante i turni dell’agente OpenClaw, imposta
models.providers.<provider>.models[].compat.supportsTools: falsee riprova. - Se le piccole chiamate dirette funzionano, ma prompt OpenClaw più grandi causano l’arresto anomalo del backend, si tratta di un limite del modello o del server a monte, non di un errore di OpenClaw. Prosegui in Il backend locale compatibile con OpenAI supera le sonde dirette, ma le esecuzioni dell’agente non riescono.
L’installazione del Plugin non riesce perché mancano le estensioni OpenClaw
package.json missing openclaw.extensions significa che il pacchetto del Plugin usa una
struttura non più accettata da OpenClaw.
Correzione nel pacchetto del Plugin:
- Aggiungi
openclaw.extensionsapackage.json, facendolo puntare ai file di runtime compilati, in genere./dist/index.js. - Pubblica nuovamente il pacchetto, quindi esegui di nuovo
openclaw plugins install <package>.
{ "name": "@openclaw/my-plugin", "version": "1.2.3", "openclaw": { "extensions": ["./dist/index.js"] }}Riferimento: Architettura dei Plugin
Il criterio di installazione blocca installazioni o aggiornamenti dei Plugin
L’aggiornamento termina, ma i Plugin non sono aggiornati, sono disabilitati oppure mostrano blocked by install policy, install policy failed closed o Disabled "<plugin>" after plugin update failure: controlla security.installPolicy.
Il criterio di installazione viene applicato durante l’installazione e l’aggiornamento dei Plugin. Le versioni dei Plugin
@openclaw/* normalmente avanzano con la versione di OpenClaw, quindi un aggiornamento di OpenClaw può
richiedere un aggiornamento corrispondente dei Plugin durante la sincronizzazione successiva.
Evita queste forme di criterio, a meno che tu non gestisca anche la regola di aggiornamento corrispondente:
- Bloccare i Plugin di proprietà di OpenClaw a una singola versione precedente esatta, ad esempio soltanto
@openclaw/*@2026.5.3. - Bloccare esclusivamente in base al tipo di origine, ossia ogni richiesta npm, di rete o
request.mode: "update". - Considerare facoltativo il comando del criterio: quando
security.installPolicyè abilitato, un eseguibile del criterio mancante, lento, illeggibile o bloccato dai permessi causa un errore in modalità chiusa. - Approvare le versioni senza confrontare il valore
openclawVersiondella richiesta con i metadati del Plugin candidato.
Preferisci regole che consentano gli aggiornamenti attendibili di @openclaw/* compatibili con
l’host attuale, invece di bloccare per sempre una singola versione. Se blocchi npm per
impostazione predefinita, aggiungi un’eccezione circoscritta per gli ID dei Plugin che utilizzi e applica la stessa
regola di attendibilità a request.mode: "update" e alle installazioni.
Ripristino:
openclaw doctor --deepopenclaw plugins update --allopenclaw status --allSe il criterio è intenzionalmente rigido, rendilo meno restrittivo durante la finestra di aggiornamento
attendibile, esegui nuovamente openclaw plugins update --all, quindi ripristina la regola più rigida.
Se un aggiornamento non riuscito ha disabilitato un Plugin, esaminalo prima di riabilitarlo:
openclaw plugins inspect <plugin-id> --runtime --jsonopenclaw plugins enable <plugin-id>Riferimento: Criterio di installazione dell’operatore
Plugin presente ma bloccato per proprietà sospetta
openclaw doctor, la configurazione iniziale o gli avvisi di avvio mostrano:
blocked plugin candidate: suspicious ownership (... uid=1000, expected uid=0 or root)plugin present but blockedI file del Plugin appartengono a un utente Unix diverso da quello del processo che li carica. Non rimuovere la configurazione del Plugin; correggi la proprietà dei file oppure esegui OpenClaw come l’utente proprietario della directory di stato.
Le installazioni Docker vengono eseguite come node (uid 1000). Correggi i bind mount dell’host:
sudo chown -R 1000:1000 /path/to/openclaw-config /path/to/openclaw-workspaceopenclaw doctor --fixSe esegui intenzionalmente OpenClaw come root, correggi invece la directory radice gestita dei Plugin:
sudo chown -R root:root /path/to/openclaw-config/npmopenclaw doctor --fixDocumentazione di approfondimento: Proprietà del percorso del Plugin bloccata, Docker: permessi ed EACCES
Albero decisionale
flowchart TD
A[OpenClaw is not working] --> B{What breaks first}
B --> C[No replies]
B --> D[Dashboard or Control UI will not connect]
B --> E[Gateway will not start or service not running]
B --> F[Channel connects but messages do not flow]
B --> G[Cron or heartbeat did not fire or did not deliver]
B --> H[Node is paired but camera canvas screen exec fails]
B --> I[Browser tool fails]
C --> C1[/No replies section/]
D --> D1[/Control UI section/]
E --> E1[/Gateway section/]
F --> F1[/Channel flow section/]
G --> G1[/Automation section/]
H --> H1[/Node tools section/]
I --> I1[/Browser section/]No replies
openclaw statusopenclaw gateway statusopenclaw channels status --probeopenclaw pairing list --channel <channel> [--account <id>]openclaw logs --followOutput corretto:
Runtime: runningConnectivity probe: okCapability: read-only,write-capableoadmin-capable- Il canale mostra il trasporto connesso e, dove supportato,
worksoaudit okinchannels status --probe - Il mittente è approvato oppure il criterio dei messaggi diretti è aperto o basato su un elenco di elementi consentiti
Firme nei registri:
drop guild message (mention required→ il controllo delle menzioni di Discord ha bloccato il messaggio.pairing request→ il mittente non è approvato ed è in attesa dell’approvazione dell’associazione tramite messaggio diretto.blocked/allowlistnei registri del canale → il mittente, la stanza o il gruppo è stato filtrato.
Pagine di approfondimento: Nessuna risposta, Risoluzione dei problemi dei canali, Associazione
Dashboard or Control UI will not connect
openclaw statusopenclaw gateway statusopenclaw logs --followopenclaw doctoropenclaw channels status --probeOutput corretto:
Dashboard: http://...mostrato inopenclaw gateway statusConnectivity probe: okCapability: read-only,write-capableoadmin-capable- Nessun ciclo di autenticazione nei registri
Firme nei registri:
device identity required→ il contesto HTTP/non sicuro non può completare l’autenticazione del dispositivo.origin not allowed→ l’Origindel browser non è consentita per la destinazione del Gateway della Control UI.AUTH_TOKEN_MISMATCHconcanRetryWithDeviceToken=true→ può essere eseguito automaticamente un singolo nuovo tentativo con un token del dispositivo attendibile, riutilizzando gli ambiti memorizzati nella cache del token associato.unauthorizedripetuto dopo tale tentativo → token o password errati, modalità di autenticazione non corrispondente oppure token obsoleto del dispositivo associato.too many failed authentication attempts (retry later)→ i tentativi ripetuti non riusciti provenienti da quell’Origindel browser vengono temporaneamente bloccati; le altre origini localhost usano contenitori separati. Consulta Connettività della Dashboard/Control UI per i dettagli sui tentativi simultanei con Tailscale Serve.gateway connect failed:→ l’interfaccia utente punta all’URL o alla porta errati oppure il Gateway non è raggiungibile.
Pagine di approfondimento: Connettività della Dashboard/Control UI, Control UI, Autenticazione
Gateway will not start or service installed but not running
openclaw statusopenclaw gateway statusopenclaw logs --followopenclaw doctoropenclaw channels status --probeOutput corretto:
Service: ... (loaded)Runtime: runningConnectivity probe: okCapability: read-only,write-capableoadmin-capable
Firme nei registri:
Gateway start blocked: set gateway.mode=localoexisting config is missing gateway.mode→ la modalità del Gateway è remota oppure nella configurazione manca l’indicazione della modalità locale ed è necessaria una correzione.refusing to bind gateway ... without auth→ associazione a un indirizzo diverso da local loopback senza un percorso di autenticazione valido, tramite token/password o proxy attendibile se configurato.another gateway instance is already listeningoEADDRINUSE→ la porta è già occupata.
Pagine di approfondimento: Servizio Gateway non in esecuzione, Processo in background, Configurazione
Channel connects but messages do not flow
openclaw statusopenclaw gateway statusopenclaw logs --followopenclaw doctoropenclaw channels status --probeOutput corretto:
- Trasporto del canale connesso.
- Controlli di associazione e dell’elenco di elementi consentiti superati.
- Menzioni rilevate dove richieste.
Firme nei registri:
mention required→ il controllo delle menzioni di gruppo ha bloccato l’elaborazione.pairing/pending→ il mittente del messaggio diretto non è ancora approvato.not_in_channel,missing_scope,Forbidden,401/403→ problema con il token dei permessi del canale.
Pagine di approfondimento: Canale connesso, ma i messaggi non vengono trasmessi, Risoluzione dei problemi dei canali
Cron or heartbeat did not fire or did not deliver
openclaw statusopenclaw gateway statusopenclaw cron statusopenclaw cron listopenclaw cron runs --id <jobId> --limit 20openclaw logs --followOutput corretto:
cron statusmostra il pianificatore abilitato e la prossima riattivazione.cron runsmostra vociokrecenti.- Heartbeat è abilitato e rientra nell’orario di attività.
Firme nei registri:
cron: scheduler disabled; jobs will not run automatically→ Cron è disabilitato.heartbeat skippedmotivoquiet-hours→ al di fuori degli orari di attività configurati.heartbeat skippedmotivoempty-heartbeat-file→HEARTBEAT.mdesiste, ma contiene solo righe vuote, commenti, intestazioni, delimitatori di blocchi di codice o una struttura vuota di elenco di controllo.heartbeat skippedmotivono-tasks-due→ la modalità attività è attiva, ma non è ancora scaduto alcun intervallo delle attività.heartbeat skippedmotivoalerts-disabled→showOk,showAlertseuseIndicatorsono tutti disattivati.requests-in-flight→ corsia principale occupata; riattivazione di Heartbeat rinviata.unknown accountId→ l'account di destinazione per la consegna di Heartbeat non esiste.
Pagine di approfondimento: Consegna di Cron e Heartbeat, Attività pianificate: risoluzione dei problemi, Heartbeat
Node is paired but tool fails camera canvas screen exec
openclaw statusopenclaw gateway statusopenclaw nodes statusopenclaw nodes describe --node <idOrNameOrIp>openclaw logs --followOutput corretto:
- Node indicato come connesso e associato per il ruolo
node. - La funzionalità necessaria per il comando invocato è disponibile.
- L'autorizzazione per lo strumento è concessa.
Indicazioni nei log:
NODE_BACKGROUND_UNAVAILABLE→ porta l'app del Node in primo piano.*_PERMISSION_REQUIRED→ autorizzazione del sistema operativo negata o mancante.SYSTEM_RUN_DENIED: approval required→ l'approvazione dell'esecuzione è in sospeso.SYSTEM_RUN_DENIED: allowlist miss→ il comando non è incluso nell'elenco consentito per l'esecuzione.
Pagine di approfondimento: Node associato, strumento non funzionante, Risoluzione dei problemi del Node, Approvazioni dell'esecuzione
Exec suddenly asks for approval
openclaw config get tools.exec.hostopenclaw config get tools.exec.securityopenclaw config get tools.exec.askopenclaw gateway restartModifiche intervenute:
- Se
tools.exec.hostnon è impostato, il valore predefinito èauto, che viene risolto insandboxquando è attivo un runtime sandbox e ingatewaynegli altri casi. host=autodetermina solo l'instradamento; il comportamento senza richiesta di conferma deriva dasecurity=fullinsieme aask=offsul Gateway/Node.- Se
tools.exec.securitynon è impostato, il valore predefinito èfullsugateway/node. - Se
tools.exec.asknon è impostato, il valore predefinito èoff. - Se vengono richieste approvazioni, una policy locale dell'host o specifica della sessione ha reso l'esecuzione più restrittiva rispetto a questi valori predefiniti.
Ripristina i valori predefiniti correnti senza approvazione:
openclaw config set tools.exec.host gatewayopenclaw config set tools.exec.security fullopenclaw config set tools.exec.ask offopenclaw gateway restartAlternative più sicure:
- Imposta solo
tools.exec.host=gatewayper un instradamento stabile verso l'host. - Usa
security=allowlistconask=on-missper l'esecuzione sull'host con revisione quando il comando non è incluso nell'elenco consentito. - Abilita la modalità sandbox affinché
host=autovenga nuovamente risolto insandbox.
Indicazioni nei log:
Approval required.→ il comando è in attesa di/approve ....SYSTEM_RUN_DENIED: approval required→ l'approvazione dell'esecuzione sull'host Node è in sospeso.exec host=sandbox requires a sandbox runtime for this session→ selezione implicita o esplicita della sandbox, ma la modalità sandbox è disattivata.
Pagine di approfondimento: Esecuzione, Approvazioni dell'esecuzione, Sicurezza: controlli eseguiti dall'audit
Browser tool fails
openclaw statusopenclaw gateway statusopenclaw browser statusopenclaw logs --followopenclaw doctorOutput corretto:
- Lo stato del browser mostra
running: truee un browser/profilo selezionato. - Il profilo
openclawsi avvia oppure il profilouserrileva le schede locali di Chrome.
Indicazioni nei log:
unknown command "browser"→plugins.allowè impostato ed escludebrowser.Failed to start Chrome CDP on port→ avvio del browser locale non riuscito.browser.executablePath not found→ il percorso configurato del file binario è 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 contiene una porta non valida o fuori intervallo.No Chrome tabs found for profile="user"→ il profilo di collegamento MCP di Chrome non ha schede locali di Chrome aperte.Remote CDP for profile "<name>" is not reachable→ l'endpoint CDP remoto configurato non è raggiungibile da questo host.Browser attachOnly is enabled ... not reachable→ il profilo di solo collegamento non dispone di una destinazione CDP attiva.- Sostituzioni obsolete di viewport/modalità scura/locale/modalità offline nei profili di solo collegamento o CDP remoto → esegui
openclaw browser stop --browser-profile <name>per chiudere la sessione di controllo e rilasciare lo stato di emulazione senza riavviare il Gateway.
Pagine di approfondimento: Lo strumento browser non funziona, Comando o strumento browser mancante, Browser: risoluzione dei problemi su Linux, Browser: risoluzione dei problemi del CDP remoto su WSL2/Windows
Argomenti correlati
- Domande frequenti — domande frequenti
- Risoluzione dei problemi del Gateway — problemi specifici del Gateway
- Doctor — controlli e riparazioni automatici dello stato del sistema
- Risoluzione dei problemi dei canali — problemi di connettività dei canali
- Attività pianificate: risoluzione dei problemi — problemi relativi a Cron e Heartbeat