Start here
Solução geral de problemas
Se você tem apenas 2 minutos, use esta página como ponto de entrada para triagem.
Primeiros 60 segundos
Execute esta sequência exata em ordem:
openclaw status
openclaw status --all
openclaw gateway probe
openclaw gateway status
openclaw doctor
openclaw channels status --probe
openclaw logs --follow
Boa saída em uma linha:
openclaw status→ mostra os canais configurados e nenhum erro óbvio de autenticação.openclaw status --all→ o relatório completo está presente e pode ser compartilhado.openclaw gateway probe→ o alvo de Gateway esperado está acessível (Reachable: yes).Capability: ...informa qual nível de autenticação a sonda conseguiu comprovar, eRead probe: limited - missing scope: operator.readé diagnóstico degradado, não uma falha de conexão.openclaw gateway status→Runtime: running,Connectivity probe: oke uma linhaCapability: ...plausível. Use--require-rpcse você também precisar de prova RPC com escopo de leitura.openclaw doctor→ nenhum erro bloqueante de configuração/serviço.openclaw channels status --probe→ um Gateway acessível retorna o estado de transporte ao vivo por conta mais resultados de sonda/auditoria, comoworksouaudit ok; se o Gateway estiver inacessível, o comando recorre a resumos baseados apenas na configuração.openclaw logs --follow→ atividade estável, sem erros fatais repetidos.
Anthropic contexto longo 429
Se você vir:
HTTP 429: rate_limit_error: Extra usage is required for long context requests,
acesse /gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context.
Backend local compatível com OpenAI funciona diretamente, mas falha no OpenClaw
Se o seu backend local ou auto-hospedado /v1 responde a pequenas sondas diretas
/v1/chat/completions, mas falha em openclaw infer model run ou em rodadas normais
do agente:
- Se o erro mencionar que
messages[].contentespera uma string, definamodels.providers.<provider>.models[].compat.requiresStringContent: true. - Se o backend ainda falhar apenas em rodadas do agente OpenClaw, defina
models.providers.<provider>.models[].compat.supportsTools: falsee tente novamente. - Se chamadas diretas mínimas ainda funcionarem, mas prompts maiores do OpenClaw travarem o backend, trate o problema restante como uma limitação do modelo/servidor upstream e continue no runbook detalhado: /gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail
Instalação de Plugin falha com extensões openclaw ausentes
Se a instalação falhar com package.json missing openclaw.extensions, o pacote do Plugin
está usando um formato antigo que o OpenClaw não aceita mais.
Corrija no pacote do Plugin:
- Adicione
openclaw.extensionsaopackage.json. - Aponte as entradas para arquivos de runtime compilados (geralmente
./dist/index.js). - Republique o Plugin e execute
openclaw plugins install <package>novamente.
Exemplo:
{
"name": "@openclaw/my-plugin",
"version": "1.2.3",
"openclaw": {
"extensions": ["./dist/index.js"]
}
}
Referência: Arquitetura de Plugin
Plugin presente, mas bloqueado por propriedade suspeita
Se openclaw doctor, a configuração inicial ou avisos de inicialização mostrarem:
blocked plugin candidate: suspicious ownership (... uid=1000, expected uid=0 or root)
plugin present but blocked
os arquivos do Plugin pertencem a um usuário Unix diferente do processo que os carrega. Não remova a configuração do Plugin. Corrija a propriedade dos arquivos ou execute o OpenClaw como o mesmo usuário que possui o diretório de estado.
Instalações Docker normalmente rodam como node (uid 1000). Para a configuração Docker
padrão, repare as montagens bind do host:
sudo chown -R 1000:1000 /path/to/openclaw-config /path/to/openclaw-workspace
openclaw doctor --fix
Se você executa intencionalmente o OpenClaw como root, repare a raiz gerenciada do Plugin para propriedade de root:
sudo chown -R root:root /path/to/openclaw-config/npm
openclaw doctor --fix
Documentação mais detalhada:
Árvore de decisão
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/]
Sem respostas
openclaw status
openclaw gateway status
openclaw channels status --probe
openclaw pairing list --channel <channel> [--account <id>]
openclaw logs --follow
Uma boa saída se parece com:
Runtime: runningConnectivity probe: okCapability: read-only,write-capableouadmin-capable- Seu canal mostra o transporte conectado e, quando houver suporte,
worksouaudit okemchannels status --probe - O remetente aparece como aprovado (ou a política de DM está aberta/lista de permissões)
Assinaturas comuns nos logs:
drop guild message (mention required→ o bloqueio por menção impediu a mensagem no Discord.pairing request→ o remetente não está aprovado e aguarda aprovação de pareamento por DM.blocked/allowlistnos logs do canal → o remetente, sala ou grupo está filtrado.
Páginas detalhadas:
O Painel ou a Interface de Controle não conecta
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
Uma boa saída se parece com:
Dashboard: http://...é mostrado emopenclaw gateway statusConnectivity probe: okCapability: read-only,write-capableouadmin-capable- Nenhum loop de autenticação nos logs
Assinaturas comuns nos logs:
device identity required→ o contexto HTTP/não seguro não consegue concluir a autenticação do dispositivo.origin not allowed→ oOrigindo navegador não é permitido para o alvo de Gateway da Interface de Controle.AUTH_TOKEN_MISMATCHcom dicas de nova tentativa (canRetryWithDeviceToken=true) → uma nova tentativa confiável com token de dispositivo pode ocorrer automaticamente.- Essa nova tentativa com token em cache reutiliza o conjunto de escopos em cache armazenado com o token de dispositivo pareado. Chamadores com
deviceTokenexplícito /scopesexplícitos mantêm o conjunto de escopos solicitado. - No caminho assíncrono da Interface de Controle via Tailscale Serve, tentativas com falha para o mesmo
{scope, ip}são serializadas antes que o limitador registre a falha, então uma segunda nova tentativa ruim concorrente já pode mostrarretry later. too many failed authentication attempts (retry later)de uma origem de navegador localhost → falhas repetidas desse mesmoOriginsão bloqueadas temporariamente; outra origem localhost usa um bucket separado.unauthorizedrepetido após essa nova tentativa → token/senha incorreto, incompatibilidade de modo de autenticação ou token de dispositivo pareado obsoleto.gateway connect failed:→ a UI está apontando para a URL/porta errada ou para um Gateway inacessível.
Páginas detalhadas:
O Gateway não inicia ou o serviço está instalado, mas não está em execução
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
Uma boa saída se parece com:
Service: ... (loaded)Runtime: runningConnectivity probe: okCapability: read-only,write-capableouadmin-capable
Assinaturas comuns nos logs:
Gateway start blocked: set gateway.mode=localouexisting config is missing gateway.mode→ o modo do Gateway é remoto, ou o arquivo de configuração não tem a marcação de modo local e deve ser reparado.refusing to bind gateway ... without auth→ bind fora de local loopback sem um caminho válido de autenticação do Gateway (token/senha, ou proxy confiável quando configurado).another gateway instance is already listeningouEADDRINUSE→ a porta já está em uso.
Páginas detalhadas:
O canal conecta, mas as mensagens não fluem
openclaw status
openclaw gateway status
openclaw logs --follow
openclaw doctor
openclaw channels status --probe
Uma boa saída se parece com:
- O transporte do canal está conectado.
- As verificações de pareamento/lista de permissões passam.
- Menções são detectadas quando exigidas.
Assinaturas comuns nos logs:
mention required→ o bloqueio por menção em grupo impediu o processamento.pairing/pending→ o remetente de DM ainda não está aprovado.not_in_channel,missing_scope,Forbidden,401/403→ problema de token de permissão do canal.
Páginas detalhadas:
Cron ou Heartbeat não disparou ou não entregou
openclaw status
openclaw gateway status
openclaw cron status
openclaw cron list
openclaw cron runs --id <jobId> --limit 20
openclaw logs --follow
Uma boa saída se parece com:
cron.statusmostra habilitado com o próximo despertar.cron runsmostra entradasokrecentes.- Heartbeat está habilitado e não está fora do horário ativo.
Assinaturas comuns nos logs:
cron: scheduler disabled; jobs will not run automatically→ Cron está desabilitado.heartbeat skippedcomreason=quiet-hours→ fora dos horários ativos configurados.heartbeat skippedcomreason=empty-heartbeat-file→HEARTBEAT.mdexiste, mas contém apenas estrutura vazia/somente com cabeçalho.heartbeat skippedcomreason=no-tasks-due→ o modo de tarefas deHEARTBEAT.mdestá ativo, mas nenhum dos intervalos de tarefa venceu ainda.heartbeat skippedcomreason=alerts-disabled→ toda a visibilidade do Heartbeat está desabilitada (showOk,showAlertseuseIndicatorestão todos desligados).requests-in-flight→ a via principal está ocupada; o despertar do Heartbeat foi adiado.unknown accountId→ a conta de destino de entrega do Heartbeat não existe.
Páginas detalhadas:
O Node está pareado, mas a ferramenta falha em camera canvas screen exec
openclaw status
openclaw gateway status
openclaw nodes status
openclaw nodes describe --node <idOrNameOrIp>
openclaw logs --follow
Uma boa saída se parece com:
- O Node aparece como conectado e pareado para a função
node. - Existe capacidade para o comando que você está invocando.
- O estado de permissão está concedido para a ferramenta.
Assinaturas comuns nos logs:
NODE_BACKGROUND_UNAVAILABLE→ traga o app Node para o primeiro plano.*_PERMISSION_REQUIRED→ a permissão do SO foi negada/está ausente.SYSTEM_RUN_DENIED: approval required→ a aprovação de exec está pendente.SYSTEM_RUN_DENIED: allowlist miss→ comando não está na lista de permissões de exec.
Páginas detalhadas:
Exec pede aprovação de repente
openclaw config get tools.exec.host
openclaw config get tools.exec.security
openclaw config get tools.exec.ask
openclaw gateway restart
O que mudou:
- Se
tools.exec.hostnão estiver definido, o padrão éauto. host=autoresolve parasandboxquando um runtime de sandbox está ativo; caso contrário, paragateway.host=autoé apenas roteamento; o comportamento sem prompt "YOLO" vem desecurity=fullmaisask=offno Gateway/Node.- Em
gatewayenode,tools.exec.securitynão definido usafullcomo padrão. tools.exec.asknão definido usaoffcomo padrão.- Resultado: se você está vendo aprovações, alguma política local do host ou por sessão tornou exec mais restrito do que os padrões atuais.
Restaurar o comportamento padrão atual sem aprovação:
openclaw config set tools.exec.host gateway
openclaw config set tools.exec.security full
openclaw config set tools.exec.ask off
openclaw gateway restart
Alternativas mais seguras:
- Defina apenas
tools.exec.host=gatewayse você só quiser roteamento estável do host. - Use
security=allowlistcomask=on-missse você quiser exec no host, mas ainda quiser revisão em falhas da lista de permissões. - Ative o modo sandbox se você quiser que
host=autovolte a resolver parasandbox.
Assinaturas comuns de log:
Approval required.→ comando está aguardando/approve ....SYSTEM_RUN_DENIED: approval required→ a aprovação de exec no host Node está pendente.exec host=sandbox requires a sandbox runtime for this session→ seleção implícita/explícita de sandbox, mas o modo sandbox está desativado.
Páginas detalhadas:
Ferramenta de navegador falha
openclaw status
openclaw gateway status
openclaw browser status
openclaw logs --follow
openclaw doctor
Uma boa saída se parece com:
- O status do navegador mostra
running: truee um navegador/perfil escolhido. openclawinicia, ouuserconsegue ver abas locais do Chrome.
Assinaturas comuns de log:
unknown command "browser"ouunknown command 'browser'→plugins.allowestá definido e não incluibrowser.Failed to start Chrome CDP on port→ a inicialização do navegador local falhou.browser.executablePath not found→ o caminho do binário configurado está errado.browser.cdpUrl must be http(s) or ws(s)→ a URL CDP configurada usa um esquema sem suporte.browser.cdpUrl has invalid port→ a URL CDP configurada tem uma porta inválida ou fora do intervalo.No Chrome tabs found for profile="user"→ o perfil de anexação MCP do Chrome não tem abas locais do Chrome abertas.Remote CDP for profile "<name>" is not reachable→ o endpoint CDP remoto configurado não é acessível a partir deste host.Browser attachOnly is enabled ... not reachableouBrowser attachOnly is enabled and CDP websocket ... is not reachable→ o perfil somente anexação não tem nenhum destino CDP ativo.- viewport obsoleto / substituições de modo escuro / localidade / offline em perfis somente anexação ou CDP remoto → execute
openclaw browser stop --browser-profile <name>para fechar a sessão de controle ativa e liberar o estado de emulação sem reiniciar o Gateway.
Páginas detalhadas:
Relacionados
- Perguntas frequentes — perguntas frequentes
- Solução de problemas do Gateway — problemas específicos do Gateway
- Doctor — verificações e reparos de integridade automatizados
- Solução de problemas de canais — problemas de conectividade de canais
- Solução de problemas de automação — problemas de Cron e Heartbeat