openclaw node
Esegue un host nodo headless che si connette al Gateway WebSocket ed espone
system.run / system.which su questa macchina.
Perché usare un host nodo?
Usa un host nodo quando vuoi che gli agenti eseguano comandi su altre macchine nella tua rete senza installare lì un’app companion macOS completa. Casi d’uso comuni:- Eseguire comandi su macchine Linux/Windows remote (server di build, macchine di laboratorio, NAS).
- Mantenere exec sandboxed sul gateway, ma delegare le esecuzioni approvate ad altri host.
- Fornire un target di esecuzione leggero e headless per nodi di automazione o CI.
Browser proxy (zero-config)
Gli host nodo pubblicizzano automaticamente un browser proxy sebrowser.enabled non è
disabilitato sul nodo. Questo permette all’agente di usare l’automazione del browser su quel nodo
senza configurazione aggiuntiva.
Per impostazione predefinita, il proxy espone la normale superficie del profilo browser del nodo. Se
imposti nodeHost.browserProxy.allowProfiles, il proxy diventa restrittivo:
il targeting di profili non presenti nella allowlist viene rifiutato, e le route di
creazione/eliminazione dei profili persistenti vengono bloccate attraverso il proxy.
Disabilitalo sul nodo, se necessario:
Esecuzione (foreground)
--host <host>: host del Gateway WebSocket (predefinito:127.0.0.1)--port <port>: porta del Gateway WebSocket (predefinito:18789)--tls: usa TLS per la connessione al gateway--tls-fingerprint <sha256>: fingerprint previsto del certificato TLS (sha256)--node-id <id>: sovrascrive l’ID del nodo (cancella il token di abbinamento)--display-name <name>: sovrascrive il nome visualizzato del nodo
Auth Gateway per host nodo
openclaw node run e openclaw node install risolvono l’auth del gateway da config/env (nessun flag --token/--password sui comandi node):
OPENCLAW_GATEWAY_TOKEN/OPENCLAW_GATEWAY_PASSWORDvengono controllati per primi.- Poi fallback della config locale:
gateway.auth.token/gateway.auth.password. - In modalità locale, l’host nodo intenzionalmente non eredita
gateway.remote.token/gateway.remote.password. - Se
gateway.auth.token/gateway.auth.passwordè configurato esplicitamente tramite SecretRef e non risolto, la risoluzione dell’auth del nodo fallisce in modo fail-closed (nessun masking del fallback remoto). - In
gateway.mode=remote, i campi del client remoto (gateway.remote.token/gateway.remote.password) sono anch’essi idonei secondo le regole di precedenza remota. - La risoluzione dell’auth dell’host nodo rispetta solo le variabili env
OPENCLAW_GATEWAY_*.
Servizio (background)
Installa un host nodo headless come servizio utente.--host <host>: host del Gateway WebSocket (predefinito:127.0.0.1)--port <port>: porta del Gateway WebSocket (predefinito:18789)--tls: usa TLS per la connessione al gateway--tls-fingerprint <sha256>: fingerprint previsto del certificato TLS (sha256)--node-id <id>: sovrascrive l’ID del nodo (cancella il token di abbinamento)--display-name <name>: sovrascrive il nome visualizzato del nodo--runtime <runtime>: runtime del servizio (nodeobun)--force: reinstalla/sovrascrive se già installato
openclaw node run per un host nodo in foreground (senza servizio).
I comandi del servizio accettano --json per output leggibile da macchina.
Abbinamento
La prima connessione crea una richiesta di abbinamento dispositivo in attesa (role: node) sul Gateway.
Approvala tramite:
requestId.
Esegui di nuovo openclaw devices list prima dell’approvazione.
L’host nodo memorizza l’ID del nodo, il token, il nome visualizzato e le informazioni di connessione al gateway in
~/.openclaw/node.json.
Approvazioni exec
system.run è regolato da approvazioni exec locali:
~/.openclaw/exec-approvals.json- Approvazioni exec
openclaw approvals --node <id|name|ip>(modifica dal Gateway)
systemRunPlan
canonico prima del prompt. Il successivo inoltro system.run approvato riutilizza quel
piano memorizzato, quindi le modifiche ai campi command/cwd/session dopo la creazione
della richiesta di approvazione vengono rifiutate invece di cambiare ciò che il nodo esegue.