CLI commands
Cihazlar
openclaw devices
Cihaz eşleştirme isteklerini ve cihaz kapsamlı token'ları yönetin.
Genel seçenekler
--url <url>: Gateway WebSocket URL'si (yapılandırılmışsa varsayılan olarakgateway.remote.urlkullanılır)--token <token>: Gateway token'ı (gerekiyorsa)--password <password>: Gateway parolası (parola ile kimlik doğrulama)--timeout <ms>: RPC zaman aşımı--json: JSON çıktısı (betiklerde kullanılması önerilir)
Komutlar
openclaw devices list
Bekleyen eşleştirme isteklerini ve eşleştirilmiş cihazları listeleyin.
openclaw devices listopenclaw devices list --jsonZaten eşleştirilmiş bir cihazdaki bekleyen istek için çıktı, istenen erişimi cihazın mevcut onaylanmış erişiminin yanında gösterir; böylece kapsam/rol yükseltmeleri kaybolmuş bir eşleştirme gibi görünmek yerine açıkça görülebilir.
Eşleştirilmiş cihazların görünen adları şu öncelik sırasını kullanır: operatör etiketi (devices rename komutundaki operatorLabel), ardından istemci displayName değeri, ardından clientId, ardından deviceId.
openclaw devices approve [requestId] [--latest]
Bekleyen bir eşleştirme isteğini tam requestId değeriyle onaylayın. requestId belirtilmemesi veya --latest iletilmesi yalnızca en yeni bekleyen isteğin önizlemesini gösterir ve çıkar (kod 1); onaylamak için komutu tam istek kimliğiyle yeniden çalıştırın.
openclaw devices approveopenclaw devices approve <requestId>openclaw devices approve --latestOnay davranışı:
- Cihaz zaten eşleştirilmişse ve daha geniş kapsamlar veya rol istiyorsa OpenClaw mevcut onayı korur ve yeni bir bekleyen yükseltme isteği oluşturur. Onaylamadan önce
openclaw devices listçıktısındaRequestedileApproveddeğerlerini karşılaştırın veya--latestile önizleyin. - Bir
noderolünü veya operatör dışındaki başka bir rolü onaylamakoperator.admingerektirir. Operatör cihazı onayları içinoperator.pairingyeterlidir, ancak yalnızca istenen operatör kapsamları çağıranın kendi kapsamları içinde kalıyorsa. Bkz. Operatör kapsamları. gateway.nodes.pairing.autoApproveCidrsyapılandırılmışsa eşleşen istemci IP'lerinden gelen ilkrole: nodeistekleri bu listede görünmeden önce otomatik olarak onaylanabilir. Varsayılan olarak devre dışıdır; operatör/tarayıcı istemcilerine veya yükseltme isteklerine hiçbir zaman uygulanmaz.gateway.nodes.pairing.sshVerify(varsayılan olarak açık), Gateway cihaz anahtarını SSH üzerinden Node ana makinesinde doğruladığında ilkrole: nodeisteklerini otomatik olarak onaylar. Bu nedenle istekler göründükten kısa süre sonra onaylanmış duruma geçebilir. SSH doğrulamasını devre dışı bırakmak içinsshVerify: falseayarlayın; bu seçenekautoApproveCidrsayarından bağımsızdır, dolayısıyla yalnızca elle eşleştirme için onu da kaldırın.
openclaw devices reject <requestId>
Bekleyen bir cihaz eşleştirme isteğini reddedin.
openclaw devices reject <requestId>openclaw devices remove <deviceId>
Eşleştirilmiş bir cihaz girdisini kaldırın.
openclaw devices remove <deviceId>openclaw devices remove <deviceId> --jsonEşleştirilmiş bir cihaz token'ıyla kimliği doğrulanan çağıran yalnızca kendi cihaz girdisini kaldırabilir. Başka bir cihazı kaldırmak operator.admin gerektirir.
openclaw devices rename --device <id> --name <label>
Eşleştirilmiş bir cihaza operatör etiketi atayın. Etiketler sahip tarafındaki durumdur: eşleştirme onarımlarında ve rolün yeniden onaylanmasında korunur ve kararlı deviceId değerini değiştirmez.
openclaw devices rename --device <deviceId> --name "Mutfak Mac'i"openclaw devices rename --device <deviceId> --name "Mutfak Mac'i" --json--namezorunludur; başındaki ve sonundaki boşluklar kaldırılır, boş olamaz ve en fazla 64 karakter olabilir.- Görüntüleme yüzeyleri (CLI listesi, Control UI envanteri), istemcinin bildirdiği görünen ad yerine operatör etiketini tercih eder.
- Yönetici olmayan eşleştirilmiş cihaz çağıranı yalnızca kendi cihazını yeniden adlandırabilir. Başka bir cihazı yeniden adlandırmak
operator.admingerektirir.
openclaw devices clear --yes [--pending]
Eşleştirilmiş cihazları topluca temizleyin. --yes ile korunur.
openclaw devices clear --yesopenclaw devices clear --yes --pendingopenclaw devices clear --yes --pending --json--pending ayrıca bekleyen tüm eşleştirme isteklerini reddeder.
openclaw devices rotate --device <id> --role <role> [--scope <scope...>]
Bir role ait cihaz token'ını yenileyin ve isteğe bağlı olarak kapsamlarını güncelleyin.
openclaw devices rotate --device <deviceId> --role operator --scope operator.read --scope operator.write- Hedef rol, o cihazın onaylanmış eşleştirme sözleşmesinde zaten bulunmalıdır; yenileme, onaylanmamış yeni bir rol oluşturamaz.
--scopebelirtilmezse sonraki yeniden bağlantılarda depolanan token'ın önbelleğe alınmış onaylı kapsamları yeniden kullanılır. Açık--scopedeğerlerinin iletilmesi, gelecekteki önbelleğe alınmış token yeniden bağlantıları için depolanan kapsam kümesinin yerini alır.- Yönetici olmayan eşleştirilmiş cihaz çağıranı yalnızca kendi cihaz token'ını yenileyebilir ve hedef kapsam kümesi çağıranın kendi operatör kapsamları içinde kalmalıdır; yenileme, çağıranın halihazırda sahip olduğundan daha geniş bir token oluşturamaz veya koruyamaz.
Yenileme meta verilerini JSON olarak döndürür. Çağıran, söz konusu cihaz token'ıyla kimliği doğrulanmış durumdayken kendi token'ını yenilerse yanıt, istemcinin yeniden bağlanmadan önce kalıcı olarak saklayabilmesi için yedek token'ı içerir. Paylaşılan/yönetici yenilemeleri taşıyıcı token'ı hiçbir zaman yanıtta göstermez.
openclaw devices revoke --device <id> --role <role>
Bir role ait cihaz token'ını iptal edin.
openclaw devices revoke --device <deviceId> --role nodeYönetici olmayan eşleştirilmiş cihaz çağıranı yalnızca kendi cihaz token'ını iptal edebilir. Başka bir cihazın token'ını iptal etmek operator.admin gerektirir. Hedef kapsam kümesi de çağıranın kendi operatör kapsamları içinde olmalıdır; yalnızca eşleştirme yetkisine sahip çağıranlar yönetici/yazma operatörü token'larını iptal edemez.
Notlar
- Bu komutlar
operator.pairing(veyaoperator.admin) kapsamını gerektirir. Operatör olmayan cihaz rolleri her zamanoperator.admingerektirir; bkz. Operatör kapsamları. - Token yenileme ve iptal işlemleri, cihazın onaylanmış eşleştirme rol kümesi ve kapsam temeli içinde kalır. Başıboş bir önbelleğe alınmış token girdisi, token yönetimi için hedef yetkisi vermez.
- Eşleştirilmiş cihaz token oturumlarında cihazlar arası yönetim (
remove,rename,rotate,revoke), çağıranoperator.adminyetkisine sahip olmadığı sürece yalnızca kendi cihazıyla sınırlıdır. - Token yenileme yeni bir token (hassas) döndürür; bunu gizli bilgi olarak değerlendirin.
- local loopback üzerinde eşleştirme kapsamı kullanılamıyorsa ve açık bir
--urliletilmemişselist/approve, yerel eşleştirme durumuna geri dönebilir.
Token sapmasını giderme denetim listesi
Control UI veya diğer istemciler sürekli AUTH_TOKEN_MISMATCH, AUTH_DEVICE_TOKEN_MISMATCH ya da AUTH_SCOPE_MISMATCH hatası veriyorsa bunu kullanın.
-
Geçerli Gateway token kaynağını doğrulayın:
bash openclaw config get gateway.auth.token -
Eşleştirilmiş cihazları listeleyin ve etkilenen cihaz kimliğini belirleyin:
bash openclaw devices list -
Etkilenen cihazın operatör token'ını yenileyin:
bash openclaw devices rotate --device <deviceId> --role operator -
Yenileme yeterli olmazsa eski eşleştirmeyi kaldırıp yeniden onaylayın:
bash openclaw devices remove <deviceId>openclaw devices listopenclaw devices approve <requestId> -
İstemci bağlantısını geçerli paylaşılan token/parola ile yeniden deneyin.
Notlar:
- Normal yeniden bağlantıda kimlik doğrulama önceliği: önce açıkça belirtilen paylaşılan token/parola, ardından açıkça belirtilen
deviceToken, ardından depolanan cihaz token'ı, ardından önyükleme token'ı. - Güvenilir
AUTH_TOKEN_MISMATCHkurtarma işlemi, sınırlandırılmış tek bir yeniden deneme için paylaşılan token ile depolanan cihaz token'ını geçici olarak birlikte gönderebilir. AUTH_SCOPE_MISMATCH, cihaz token'ının tanındığı ancak istenen kapsam kümesini taşımadığı anlamına gelir; paylaşılan Gateway kimlik doğrulamasını değiştirmeden önce eşleştirme/kapsam onayı sözleşmesini düzeltin.
İlgili:
Paperclip / openclaw_gateway ilk çalıştırma onayı
openclaw_gateway bağdaştırıcısı üzerinden bağlanan Paperclip ajanları, diğer tüm yeni istemcilerle aynı ilk çalıştırma cihaz eşleştirme onayından geçer. Paperclip openclaw_gateway_pairing_required bildirirse bekleyen cihazı onaylayıp yeniden deneyin.
openclaw devices approve --latestÖnizleme, tam openclaw devices approve <requestId> komutunu yazdırır; ayrıntıları doğrulayın, ardından onaylamak için bu komutu istek kimliğiyle yeniden çalıştırın. Uzak bir Gateway veya açıkça belirtilen kimlik bilgileri için önizleme ve onaylama sırasında aynı seçenekleri iletin:
openclaw devices approve --latest --url <gateway-ws-url> --token <gateway-token>Her yeniden başlatmadan sonra tekrar onaylamaktan kaçınmak için Paperclip'i her çalıştırmada yeni bir geçici cihaz kimliği oluşturacak şekilde bırakmak yerine kalıcı bir adapterConfig.devicePrivateKeyPem yapılandırın:
{ "adapterConfig": { "devicePrivateKeyPem": "<ed25519-private-key-pkcs8-pem>" }}Onay sürekli başarısız oluyorsa bekleyen bir isteğin bulunduğunu doğrulamak için önce openclaw devices list komutunu çalıştırın.