コマンドの実行順序
- Node が接続され、ロール
node用にペアリングされている。 nodes describeに、呼び出している機能が含まれている。- 実行承認に、想定されるモード/許可リストが表示されている。
フォアグラウンド要件
canvas.*、camera.*、screen.* は、iOS/Android の Node ではフォアグラウンドでのみ動作します。
簡易チェックと修正:
NODE_BACKGROUND_UNAVAILABLE が表示された場合は、Node アプリをフォアグラウンドに移動して再試行してください。
権限マトリクス
ペアリングと承認の違い
Node コマンドが成功するかどうかは、3 つの独立したゲートによって制御されます。- デバイスのペアリング:この Node は Gateway に接続できるか?
- Gateway の Node コマンドポリシー:RPC コマンド ID は、
gateway.nodes.commands.allow/gateway.nodes.commands.denyとプラットフォームのデフォルト設定で許可されているか? - 実行承認:この 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.commands.deny エントリは常に gateway.nodes.commands.allow より優先されます。