CLI commands
Appareils
openclaw devices
Gérer les demandes d’association d’appareils et les tokens à portée d’appareil.
Commandes
openclaw devices list
Lister les demandes d’association en attente et les appareils associés.
openclaw devices listopenclaw devices list --jsonLa sortie des demandes en attente affiche l’accès demandé à côté de l’accès actuellement approuvé de l’appareil lorsque celui-ci est déjà associé. Cela rend les montées de portée/rôle explicites au lieu de donner l’impression que l’association a été perdue.
openclaw devices remove <deviceId>
Supprimer une entrée d’appareil associé.
Lorsque vous êtes authentifié avec un token d’appareil associé, les appelants
non administrateurs ne peuvent supprimer que l’entrée de leur propre
appareil. La suppression d’un autre appareil nécessite operator.admin.
openclaw devices remove <deviceId>openclaw devices remove <deviceId> --jsonopenclaw devices clear --yes [--pending]
Effacer en masse les appareils associés.
openclaw devices clear --yesopenclaw devices clear --yes --pendingopenclaw devices clear --yes --pending --jsonopenclaw devices approve [requestId] [--latest]
Approuver une demande d’association d’appareil en attente par requestId exact.
Si requestId est omis ou si --latest est passé, OpenClaw affiche seulement
la demande en attente sélectionnée puis quitte ; relancez l’approbation avec
l’ID de demande exact après avoir vérifié les détails.
Si l’appareil est déjà associé et demande des portées plus larges ou un rôle
plus large, OpenClaw conserve l’approbation existante et crée une nouvelle
demande de mise à niveau en attente. Examinez les colonnes Requested et
Approved dans openclaw devices list ou utilisez openclaw devices approve --latest
pour prévisualiser la mise à niveau exacte avant de l’approuver.
Si le Gateway est explicitement configuré avec
gateway.nodes.pairing.autoApproveCidrs, les premières demandes role: node
provenant d’IP clientes correspondantes peuvent être approuvées avant
d’apparaître dans cette liste. Cette stratégie est désactivée par défaut et ne
s’applique jamais aux clients opérateur/navigateur ni aux demandes de mise à
niveau.
openclaw devices approveopenclaw devices approve <requestId>openclaw devices approve --latestopenclaw devices reject <requestId>
Rejeter une demande d’association d’appareil en attente.
openclaw devices reject <requestId>openclaw devices rotate --device <id> --role <role> [--scope <scope...>]
Faire tourner un token d’appareil pour un rôle spécifique (avec mise à jour
optionnelle des portées). Le rôle cible doit déjà exister dans le contrat
d’association approuvé de cet appareil ; la rotation ne peut pas créer un
nouveau rôle non approuvé. Si vous omettez --scope, les reconnexions
ultérieures avec le token tourné stocké réutilisent les portées approuvées
mises en cache pour ce token. Si vous passez des valeurs --scope explicites,
elles deviennent l’ensemble de portées stocké pour les futures reconnexions
avec token mis en cache. Les appelants non administrateurs utilisant un appareil
associé ne peuvent faire tourner que le token de leur propre appareil.
L’ensemble de portées du token cible doit rester dans les propres portées
opérateur de la session appelante ; la rotation ne peut pas créer ni préserver
un token opérateur plus large que celui dont l’appelant dispose déjà.
openclaw devices rotate --device <deviceId> --role operator --scope operator.read --scope operator.writeRetourne les métadonnées de rotation en JSON. Si l’appelant fait tourner son propre token alors qu’il est authentifié avec ce token d’appareil, la réponse inclut aussi le token de remplacement afin que le client puisse le persister avant de se reconnecter. Les rotations partagées/admin ne renvoient pas le token porteur.
openclaw devices revoke --device <id> --role <role>
Révoquer un token d’appareil pour un rôle spécifique.
Les appelants non administrateurs utilisant un appareil associé ne peuvent
révoquer que le token de leur propre appareil. La révocation du token d’un
autre appareil nécessite operator.admin. L’ensemble de portées du token cible
doit aussi tenir dans les propres portées opérateur de la session appelante ;
les appelants limités à l’association ne peuvent pas révoquer des tokens
opérateur admin/écriture.
openclaw devices revoke --device <deviceId> --role nodeRetourne le résultat de révocation en JSON.
Options courantes
--url <url>: URL WebSocket du Gateway (par défautgateway.remote.urllorsque configuré).--token <token>: token du Gateway (si requis).--password <password>: mot de passe du Gateway (authentification par mot de passe).--timeout <ms>: délai d’expiration RPC.--json: sortie JSON (recommandée pour les scripts).
Notes
- La rotation de token retourne un nouveau token (sensible). Traitez-le comme un secret.
- Ces commandes nécessitent la portée
operator.pairing(ouoperator.admin). Certaines approbations exigent aussi que l’appelant détienne les portées opérateur que l’appareil cible créerait ou hériterait ; consultez Portées opérateur. gateway.nodes.pairing.autoApproveCidrsest une stratégie Gateway à activer explicitement pour la seule association de nouveaux appareils node ; elle ne modifie pas l’autorité d’approbation de la CLI.- La rotation et la révocation de tokens restent dans l’ensemble de rôles d’association approuvé et dans la base de portées approuvée pour cet appareil. Une entrée de token mise en cache isolée n’accorde pas de cible de gestion de tokens.
- Pour les sessions avec token d’appareil associé, la gestion entre appareils
est réservée aux administrateurs :
remove,rotateetrevokesont limités à soi-même sauf si l’appelant dispose deoperator.admin. - La mutation de token est également contenue par les portées de l’appelant :
une session limitée à l’association ne peut pas faire tourner ni révoquer un
token qui porte actuellement
operator.adminouoperator.write. devices clearest volontairement protégé par--yes.- Si la portée d’association est indisponible sur local loopback (et qu’aucun
--urlexplicite n’est passé), list/approve peut utiliser un repli d’association local. devices approvenécessite un ID de demande explicite avant de créer des tokens ; omettrerequestIdou passer--latestne fait que prévisualiser la demande en attente la plus récente.
Liste de contrôle de récupération après dérive de token
Utilisez ceci lorsque l’interface de contrôle ou d’autres clients échouent
sans cesse avec AUTH_TOKEN_MISMATCH, AUTH_DEVICE_TOKEN_MISMATCH ou
AUTH_SCOPE_MISMATCH.
- Confirmer la source actuelle du token Gateway :
openclaw config get gateway.auth.token- Lister les appareils associés et identifier l’ID de l’appareil affecté :
openclaw devices list- Faire tourner le token opérateur pour l’appareil affecté :
openclaw devices rotate --device <deviceId> --role operator- Si la rotation ne suffit pas, supprimer l’association obsolète et approuver à nouveau :
openclaw devices remove <deviceId>openclaw devices listopenclaw devices approve <requestId>- Réessayer la connexion client avec le token/mot de passe partagé actuel.
Notes :
- La précédence d’authentification de reconnexion normale est d’abord le
token/mot de passe partagé explicite, puis
deviceTokenexplicite, puis le token d’appareil stocké, puis le token d’amorçage. - La récupération
AUTH_TOKEN_MISMATCHde confiance peut temporairement envoyer ensemble le token partagé et le token d’appareil stocké pour l’unique nouvelle tentative bornée. AUTH_SCOPE_MISMATCHsignifie que le token d’appareil a été reconnu, mais qu’il ne porte pas l’ensemble de portées demandé ; corrigez le contrat d’association/d’approbation de portée avant de modifier l’authentification Gateway partagée.
Connexe :