Solução de problemas de nós
Use esta página quando um nó estiver visível no status, mas as ferramentas do nó falharem.Sequência de comandos
- O nó está conectado e emparelhado para o papel
node. nodes describeinclui a capacidade que você está chamando.- As aprovações de exec mostram o modo/lista de permissões esperados.
Requisitos de primeiro plano
canvas.*, camera.* e screen.* funcionam apenas em primeiro plano em nós iOS/Android.
Verificação e correção rápidas:
NODE_BACKGROUND_UNAVAILABLE, traga o app do nó para primeiro plano e tente novamente.
Matriz de permissões
| Capacidade | iOS | Android | app de nó no macOS | Código de falha típico |
|---|---|---|---|---|
camera.snap, camera.clip | Câmera (+ microfone para áudio do clipe) | Câmera (+ microfone para áudio do clipe) | Câmera (+ microfone para áudio do clipe) | *_PERMISSION_REQUIRED |
screen.record | Gravação de tela (+ microfone opcional) | Prompt de captura de tela (+ microfone opcional) | Gravação de tela | *_PERMISSION_REQUIRED |
location.get | Enquanto em uso ou sempre (depende do modo) | Localização em primeiro/segundo plano, conforme o modo | Permissão de localização | LOCATION_PERMISSION_REQUIRED |
system.run | n/a (caminho de host do nó) | n/a (caminho de host do nó) | Aprovações de exec exigidas | SYSTEM_RUN_DENIED |
Emparelhamento versus aprovações
Essas são barreiras diferentes:- Emparelhamento do dispositivo: este nó pode se conectar ao gateway?
- Política de comando de nó do gateway: o ID do comando RPC é permitido por
gateway.nodes.allowCommands/denyCommandse pelos padrões da plataforma? - Aprovações de exec: este nó pode executar localmente um comando shell específico?
nodes describe não mostrar um comando, verifique a política de comando de nó do gateway e se o nó realmente declarou esse comando ao se conectar.
Se o emparelhamento estiver correto, mas system.run falhar, corrija as aprovações/lista de permissões de exec nesse nó.
O emparelhamento de nó é uma barreira de identidade/confiança, não uma superfície de aprovação por comando. Para system.run, a política por nó fica no arquivo de aprovações de exec desse nó (openclaw approvals get --node ...), não no registro de emparelhamento do gateway.
Para execuções com host=node baseadas em aprovação, o gateway também vincula a execução ao systemRunPlan canônico preparado. Se um chamador posterior modificar command/cwd ou metadados de sessão antes que a execução aprovada seja encaminhada, o gateway rejeita a execução como incompatibilidade de aprovação, em vez de confiar no payload editado.
Códigos comuns de erro de nó
NODE_BACKGROUND_UNAVAILABLE→ o app está em segundo plano; traga-o para primeiro plano.CAMERA_DISABLED→ o toggle de câmera está desabilitado nas configurações do nó.*_PERMISSION_REQUIRED→ permissão do sistema operacional ausente/negada.LOCATION_DISABLED→ o modo de localização está desativado.LOCATION_PERMISSION_REQUIRED→ o modo de localização solicitado não foi concedido.LOCATION_BACKGROUND_UNAVAILABLE→ o app está em segundo plano, mas existe apenas permissão Enquanto em uso.SYSTEM_RUN_DENIED: approval required→ a solicitação de exec precisa de aprovação explícita.SYSTEM_RUN_DENIED: allowlist miss→ o comando foi bloqueado pelo modo de lista de permissões. Em hosts de nó Windows, formas com wrapper de shell comocmd.exe /c ...são tratadas como falhas de lista de permissões no modo allowlist, a menos que sejam aprovadas pelo fluxo ask.
Loop rápido de recuperação
- Aprove novamente o emparelhamento do dispositivo.
- Reabra o app do nó (primeiro plano).
- Conceda novamente as permissões do sistema operacional.
- Recrie/ajuste a política de aprovação de exec.