CLI commands
QR
openclaw qr
Genereer een QR-code en installatiecode voor mobiele koppeling op basis van je huidige Gateway-configuratie.
openclaw qropenclaw qr --setup-code-onlyopenclaw qr --jsonopenclaw qr --remoteopenclaw qr --url wss://gateway.example/wsOfficiële OpenClaw-apps voor iOS en Android maken automatisch verbinding wanneer de metagegevens van hun installatiecode overeenkomen. Als een aanvraag in behandeling blijft (bijvoorbeeld voor een niet-officiële client of niet-overeenkomende metagegevens), controleer en keur je deze goed:
openclaw devices listopenclaw devices approve <requestId>Opties
--remote: geeft de voorkeur aangateway.remote.url; valt terug opgateway.tailscale.mode=serve|funnelals die URL niet is ingesteld. NegeertpublicUrlvan de Plugindevice-pair.--url <url>: overschrijft de Gateway-URL die in de payload wordt gebruikt--public-url <url>: overschrijft de openbare URL die in de payload wordt gebruikt--token <token>: overschrijft het Gateway-token waarmee de bootstrapprocedure zich verifieert--password <password>: overschrijft het Gateway-wachtwoord waarmee de bootstrapprocedure zich verifieert--setup-code-only: geeft alleen de installatiecode weer--no-ascii: slaat de ASCII-weergave van de QR-code over--json: voert JSON uit (setupCode,gatewayUrl, optioneelgatewayUrls,auth,urlSource)
--token en --password sluiten elkaar uit.
Inhoud van de installatiecode
De installatiecode bevat een ondoorzichtig, kortlevend bootstrapToken, niet het gedeelde Gateway-token/-wachtwoord. De ingebouwde bootstrapprocedure verstrekt:
- een primair
node-token metscopes: [] - een begrensd
operator-overdrachtstoken dat is beperkt totoperator.approvals,operator.read,operator.talk.secretsenoperator.write
Bereiken voor koppelingsmutaties en operator.admin vereisen nog steeds een afzonderlijk goedgekeurde operatorkoppeling of tokenprocedure.
Bepaling van de Gateway-URL
Mobiele koppeling wordt standaard geweigerd voor Tailscale-/openbare ws://-Gateway-URL's: gebruik daarvoor Tailscale Serve/Funnel of een wss://-Gateway-URL. Privé-LAN-adressen en .local-Bonjour-hosts blijven via gewone ws:// ondersteund.
Wanneer de geselecteerde Gateway-URL afkomstig is van gateway.bind=lan, controleert OpenClaw ook permanente routes uit tailscale serve status --json. Elke HTTPS-Serve-hoofdroute die als proxy voor de local loopback-poort van de actieve Gateway fungeert, wordt als terugvaloptie opgenomen. De QR-opdracht voegt deze terugvaloptie alleen toe voor lan; custom en tailnet behouden hun expliciet aangekondigde routes. Huidige iOS-clients testen de aangekondigde routes op volgorde en slaan de eerste bereikbare route op; het verouderde veld url blijft ongewijzigd voor oudere clients.
Met --remote is gateway.remote.url of gateway.tailscale.mode=serve|funnel vereist.
Verificatiebepaling (zonder --remote)
Wanneer geen CLI-overschrijving voor verificatie wordt doorgegeven, worden lokale SecretRefs voor Gateway-verificatie als volgt omgezet:
| Voorwaarde | Wordt omgezet naar |
|---|---|
gateway.auth.mode="token", of afgeleide modus zonder doorslaggevende wachtwoordbron |
gateway.auth.token |
gateway.auth.mode="password", of afgeleide modus zonder doorslaggevend token uit verificatie/omgeving |
gateway.auth.password |
Zowel gateway.auth.token als gateway.auth.password zijn geconfigureerd (inclusief SecretRefs) en gateway.auth.mode is niet ingesteld |
mislukt; stel gateway.auth.mode expliciet in |
Verificatiebepaling (--remote)
Als de daadwerkelijk actieve externe aanmeldgegevens als SecretRefs zijn geconfigureerd en noch --token noch --password wordt doorgegeven, zet de opdracht deze om vanuit de actieve Gateway-momentopname. Als de Gateway niet beschikbaar is, wordt de opdracht onmiddellijk afgebroken.