Primeiros 60 segundos
Execute esta sequência exata em ordem: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 destino esperado do gateway está acessível (Reachable: yes).Capability: ...informa qual nível de autenticação a sondagem conseguiu provar, eRead probe: limited - missing scope: operator.readindica 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 também precisar de prova de RPC com escopo de leitura.openclaw doctor→ nenhum erro bloqueante de configuração/serviço.openclaw channels status --probe→ um Gateway acessível retorna estado de transporte ativo por conta, além de resultados de sondagem/auditoria comoworksouaudit ok; se o Gateway estiver inacessível, o comando volta para resumos baseados apenas na configuração.openclaw logs --follow→ atividade estável, sem erros fatais repetidos.
Assistente parece limitado ou sem ferramentas
Se o assistente não consegue inspecionar arquivos, executar comandos, usar automação de navegador ou ver as ferramentas esperadas, verifique primeiro o perfil efetivo de ferramentas:tools.profile: "messaging"é intencionalmente restrito para agentes somente de chat.tools.profile: "coding"é o perfil usual para fluxos de trabalho com repositório, arquivos, shell e runtime.tools.profile: "full"expõe o conjunto mais amplo de ferramentas e deve ser limitado a agentes confiáveis controlados pelo operador.- Sobrescritas por agente em
agents.list[].toolspodem restringir ou expandir o perfil raiz para um agente.
openclaw status --all novamente. Consulte Ferramentas para o modelo
de perfis e sobrescritas de permissão/bloqueio.
Contexto longo da Anthropic com 429
Se você vir:HTTP 429: rate_limit_error: Extra usage is required for long context requests,
vá para /gateway/troubleshooting#anthropic-429-extra-usage-required-for-long-context.
Backend local compatível com OpenAI funciona diretamente, mas falha no OpenClaw
Se seu backend/v1 local ou auto-hospedado responde a pequenas sondagens diretas de
/v1/chat/completions, mas falha em openclaw infer model run ou em turnos normais
do agente:
- Se o erro mencionar que
messages[].contentesperava uma string, definamodels.providers.<provider>.models[].compat.requiresStringContent: true. - Se o backend ainda falhar apenas em turnos de agente do OpenClaw, defina
models.providers.<provider>.models[].compat.supportsTools: falsee tente novamente. - Se chamadas diretas pequenas ainda funcionam, mas prompts maiores do OpenClaw derrubam 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 por falta de extensões openclaw
Se a instalação falhar compackage.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.
Política de instalação bloqueia instalações ou atualizações de plugins
Se uma atualização termina, mas os plugins estão desatualizados, desabilitados ou mostram mensagens comoblocked by install policy, install policy failed closed ou
Disabled "<plugin>" after plugin update failure, verifique
security.installPolicy.
A política de instalação roda em instalações e atualizações de plugins. Versões de plugins
mantidos pelo OpenClaw normalmente acompanham a versão do OpenClaw, então uma atualização do OpenClaw
também pode precisar de atualizações correspondentes de plugins @openclaw/* durante a sincronização pós-atualização.
Evite estes formatos amplos de política, a menos que você também mantenha a regra de upgrade
correspondente:
- Congelar plugins mantidos pelo OpenClaw em uma única versão antiga exata, como permitir
apenas
@openclaw/*@2026.5.3. - Bloquear somente por tipo de origem, como toda solicitação de plugin npm, rede ou
request.mode: "update". - Tratar o comando de política como opcional. Quando
security.installPolicyestá habilitado, um executável de política ausente, lento, ilegível ou bloqueado por permissão falha de modo fechado. - Aprovar versões de plugins sem considerar o
openclawVersionda solicitação de política e os metadados do candidato a plugin.
@openclaw/* confiáveis ou ids de plugins que você usa. Se você
diferencia solicitações de instalação e atualização, aplique a mesma regra de confiança a
request.mode: "update".
Recuperação:
openclaw plugins update --all e então restaure a regra mais rígida.
Se um plugin foi desabilitado após falha de atualização, inspecione-o e reabilite-o somente
depois que a atualização tiver sucesso:
Plugin presente, mas bloqueado por propriedade suspeita
Seopenclaw doctor, a configuração ou os avisos de inicialização mostrarem:
node (uid 1000). Para a configuração Docker
padrão, repare os bind mounts do host:
Árvore de decisão
Sem respostas
Sem respostas
Runtime: runningConnectivity probe: okCapability: read-only,write-capableouadmin-capable- Seu canal mostra transporte conectado e, quando houver suporte,
worksouaudit okemchannels status --probe - O remetente aparece como aprovado (ou a política de DM está aberta/em lista de permissões)
drop guild message (mention required→ o bloqueio por menção impediu a mensagem no Discord.pairing request→ o remetente não está aprovado e está aguardando aprovação de pareamento por DM.blocked/allowlistnos logs do canal → remetente, sala ou grupo está filtrado.
Painel ou UI de Controle não conecta
Painel ou UI de Controle não conecta
Dashboard: http://...é mostrado emopenclaw gateway statusConnectivity probe: okCapability: read-only,write-capableouadmin-capable- Nenhum loop de autenticação nos logs
device identity required→ contexto HTTP/não seguro não consegue concluir a autenticação do dispositivo.origin not allowed→ oOrigindo navegador não é permitido para o destino do gateway da UI 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 do dispositivo
pareado. Chamadores com
deviceTokenexplícito /scopesexplícitos mantêm o conjunto de escopos solicitado. - No caminho assíncrono da UI de Controle via Tailscale Serve, tentativas com falha para o mesmo
{scope, ip}são serializadas antes de o limitador registrar a falha, então uma segunda nova tentativa ruim simultânea já pode mostrarretry later. too many failed authentication attempts (retry later)de uma origem de navegador localhost → falhas repetidas dessa mesmaOriginsão temporariamente bloqueadas; outra origem localhost usa um bucket separado.unauthorizedrepetido depois dessa 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.
Gateway não inicia ou serviço instalado não está em execução
Gateway não inicia ou serviço instalado não está em execução
Service: ... (loaded)Runtime: runningConnectivity probe: okCapability: read-only,write-capableouadmin-capable
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 o carimbo 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→ porta já em uso.
Canal conecta, mas as mensagens não fluem
Canal conecta, mas as mensagens não fluem
- O transporte do canal está conectado.
- As verificações de pareamento/lista de permissões passam.
- As menções são detectadas onde necessário.
mention required→ o bloqueio por menção em grupo impediu o processamento.pairing/pending→ o remetente da DM ainda não foi aprovado.not_in_channel,missing_scope,Forbidden,401/403→ problema no token de permissão do canal.
Cron ou Heartbeat não disparou ou não entregou
Cron ou Heartbeat não disparou ou não entregou
cron.statusmostra habilitado com um próximo despertar.cron runsmostra entradasokrecentes.- Heartbeat está habilitado e não está fora do horário ativo.
cron: scheduler disabled; jobs will not run automatically→ Cron está desabilitado.heartbeat skippedcomreason=quiet-hours→ fora do horário ativo configurado.heartbeat skippedcomreason=empty-heartbeat-file→HEARTBEAT.mdexiste, mas contém apenas estrutura vazia, como linhas em branco, comentários, cabeçalho, cerca de código ou checklist vazio.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→ via principal ocupada; o despertar do Heartbeat foi adiado.unknown accountId→ a conta de destino da entrega do Heartbeat não existe.
Node está pareado, mas a ferramenta falha: câmera, canvas, tela ou exec
Node está pareado, mas a ferramenta falha: câmera, canvas, tela ou exec
- Node está listado como conectado e pareado para a função
node. - A capacidade existe para o comando que você está invocando.
- O estado de permissão está concedido para a ferramenta.
NODE_BACKGROUND_UNAVAILABLE→ traga o aplicativo do Node para 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.
Exec de repente pede aprovação
Exec de repente pede aprovação
- 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 “YOLO” sem prompt vem desecurity=fullmaisask=offem 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 restringiu o exec em relação aos padrões atuais.
- Defina apenas
tools.exec.host=gatewayse você só quiser roteamento estável do host. - Use
security=allowlistcomask=on-missse quiser exec no host, mas ainda quiser revisão em falhas da lista de permissões. - Habilite o modo sandbox se quiser que
host=autovolte a resolver parasandbox.
Approval required.→ comando está aguardando/approve ....SYSTEM_RUN_DENIED: approval required→ a aprovação de exec no host do 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á desligado.
Relacionados
- FAQ — perguntas frequentes
- Solução de problemas do Gateway — problemas específicos do gateway
- Doctor — verificações de integridade e reparos automatizados
- Solução de problemas de canais — problemas de conectividade de canais
- Solução de problemas de automação — problemas de Cron e Heartbeat