Op deze pagina

Op deze pagina

CLI commands

QR

openclaw qr

Genereer een QR-code voor mobiele koppeling en een installatiecode op basis van je huidige Gateway-configuratie.

bash
openclaw qropenclaw qr --setup-code-onlyopenclaw qr --jsonopenclaw qr --remoteopenclaw qr --limitedopenclaw qr --url wss://gateway.example/ws

Officiële OpenClaw-apps voor iOS en Android maken automatisch verbinding wanneer de metadata van hun installatiecode overeenkomt. Als een verzoek in behandeling blijft (bijvoorbeeld voor een niet-officiële client of niet-overeenkomende metadata), controleer en keur je het goed:

bash
openclaw devices listopenclaw devices approve <requestId>

Opties

  • --remote: geeft de voorkeur aan gateway.remote.url; valt terug op gateway.tailscale.mode=serve|funnel als die URL niet is ingesteld. Negeert device-pair-Plugin publicUrl.
  • --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 bootstrapflow zich verifieert
  • --password <password>: overschrijft het Gateway-wachtwoord waarmee de bootstrapflow zich verifieert
  • --limited: laat administratieve Gateway-toegang weg uit het overgedragen operatortoken
  • --setup-code-only: drukt alleen de installatiecode af
  • --no-ascii: slaat de ASCII-weergave van de QR-code over
  • --json: voert JSON uit (setupCode, gatewayUrl, optioneel gatewayUrls, auth, access, optioneel accessDowngraded, urlSource)

--token en --password sluiten elkaar wederzijds uit.

Inhoud van de installatiecode

De installatiecode bevat een ondoorzichtige, kortlevende bootstrapToken, niet het gedeelde Gateway-token of -wachtwoord. Voor een wss://-eindpunt (of een loopback op dezelfde host) verstrekt de standaardbootstrapflow:

  • een primair node-token met scopes: []
  • een volledig native mobiel operator-overdrachtstoken met operator.admin, operator.approvals, operator.read, operator.talk.secrets en operator.write

Gebruik --limited om hetzelfde Node-token te behouden en tegelijkertijd operator.admin weg te laten uit de operatoroverdracht. Het bereik voor koppelingsmutaties wordt nooit via een installatiecode overgedragen.

Installatie via ws:// in platte tekst op het LAN blijft beschikbaar, maar OpenClaw gebruikt automatisch het beperkte profiel omdat een netwerkwaarnemer het bearer-bootstrap-token kan onderscheppen en sneller kan gebruiken. Configureer wss:// of Tailscale Serve en genereer vervolgens een nieuwe code om volledige toegang te krijgen.

Gateway-URL-resolutie

Mobiele koppeling weigert standaard Tailscale-/openbare ws://-Gateway-URL's: gebruik daarvoor Tailscale Serve/Funnel of een wss://-Gateway-URL. Privé-LAN-adressen en .local-Bonjour-hosts blijven ondersteund via gewone ws://, met beperkte operatortoegang zoals hierboven beschreven.

Wanneer de geselecteerde Gateway-URL afkomstig is van gateway.bind=lan, controleert OpenClaw ook permanente tailscale serve status --json-routes. Elke HTTPS-Serve-root die de loopbackpoort van de actieve Gateway proxyt, wordt als fallback opgenomen. De QR-opdracht voegt deze fallback alleen toe voor lan; custom en tailnet behouden hun expliciet geadverteerde routes. Huidige iOS-clients testen de geadverteerde routes in volgorde en slaan de eerste bereikbare route op; het verouderde veld url blijft ongewijzigd voor oudere clients.

Met --remote is een van gateway.remote.url of gateway.tailscale.mode=serve|funnel vereist.

Authenticatieresolutie (geen --remote)

Wanneer geen CLI-overschrijving voor authenticatie wordt doorgegeven, worden lokale SecretRefs voor Gateway-authenticatie als volgt opgelost:

Voorwaarde Wordt opgelost als
gateway.auth.mode="token", of afgeleide modus zonder doorslaggevende wachtwoordbron gateway.auth.token
gateway.auth.mode="password", of afgeleide modus zonder doorslaggevend token uit authenticatie/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

Authenticatieresolutie (--remote)

Als daadwerkelijk actieve externe referenties als SecretRefs zijn geconfigureerd en noch --token noch --password wordt doorgegeven, haalt de opdracht ze op uit de momentopname van de actieve Gateway. Als de Gateway niet beschikbaar is, mislukt de opdracht onmiddellijk.

Gerelateerd

Was this useful?