명령 단계
- Node가 연결되어 있고
node역할로 페어링되어 있습니다. nodes describe에 호출하려는 기능이 포함되어 있습니다.- 실행 승인이 예상 모드/허용 목록을 표시합니다.
포그라운드 요구 사항
iOS/Android Node에서canvas.*, camera.*, screen.*는 포그라운드에서만 사용할 수 있습니다.
빠른 확인 및 해결:
NODE_BACKGROUND_UNAVAILABLE이 표시되면 Node 앱을 포그라운드로 전환한 후 다시 시도하세요.
권한 매트릭스
페어링과 승인 비교
Node 명령의 성공 여부는 서로 분리된 세 가지 게이트에 의해 제어됩니다.- 기기 페어링: 이 Node가 Gateway에 연결할 수 있습니까?
- Gateway Node 명령 정책:
gateway.nodes.allowCommands/denyCommands와 플랫폼 기본값에서 해당 RPC 명령 ID를 허용합니까? - 실행 승인: 이 Node가 특정 셸 명령을 로컬에서 실행할 수 있습니까?
system.run의 경우 Node별 정책은 Gateway 페어링 레코드가 아니라 해당 Node의 실행 승인 파일(openclaw approvals get --node ...)에 있습니다.
빠른 확인:
- 페어링 누락: 먼저 Node 기기를 승인하세요.
nodes describe에 명령이 누락됨: Gateway Node 명령 정책과 Node가 연결할 때 실제로 해당 명령을 선언했는지 확인하세요.- 페어링은 정상이지만
system.run실패: 해당 Node의 실행 승인/허용 목록을 수정하세요.
host=node 실행의 경우 Gateway는 실행을 준비된 정규 systemRunPlan에도 바인딩합니다. 승인된 실행이 전달되기 전에 후속 호출자가 명령, cwd 또는 세션 메타데이터를 변경하면 Gateway는 편집된 페이로드를 신뢰하지 않고 승인 불일치로 실행을 거부합니다.
일반적인 Node 오류 코드
빠른 복구 절차
- 기기 페어링을 다시 승인하세요.
- Node 앱을 다시 여세요(포그라운드).
- OS 권한을 다시 부여하세요.
- 실행 승인 정책을 다시 만들거나 조정하세요.
computer 도구를 노출하는지, 화면 기록 권한으로 screen.snapshot이 성공하는지, /phone status에 의도한 임시 또는 영구 Gateway 권한 부여가 표시되는지도 확인하세요. gateway.nodes.denyCommands 항목은 항상 allowCommands보다 우선합니다.