CLI commands
อุปกรณ์
openclaw devices
จัดการคำขอจับคู่อุปกรณ์และโทเค็นที่มีขอบเขตตามอุปกรณ์
คำสั่ง
openclaw devices list
แสดงรายการคำขอจับคู่ที่รอดำเนินการและอุปกรณ์ที่จับคู่แล้ว
openclaw devices listopenclaw devices list --jsonเอาต์พุตคำขอที่รอดำเนินการจะแสดงสิทธิ์เข้าถึงที่ร้องขอไว้ข้างสิทธิ์เข้าถึงปัจจุบันที่อนุมัติแล้วของอุปกรณ์ เมื่ออุปกรณ์นั้นถูกจับคู่แล้ว วิธีนี้ทำให้การอัปเกรดขอบเขต/บทบาทชัดเจน แทนที่จะดูเหมือนว่าการจับคู่สูญหายไป
openclaw devices remove <deviceId>
ลบรายการอุปกรณ์ที่จับคู่แล้วหนึ่งรายการ
เมื่อคุณยืนยันตัวตนด้วยโทเค็นของอุปกรณ์ที่จับคู่แล้ว ผู้เรียกที่ไม่ใช่แอดมินสามารถลบได้เฉพาะรายการอุปกรณ์ของ ตนเอง เท่านั้น การลบอุปกรณ์อื่นต้องใช้ operator.admin
openclaw devices remove <deviceId>openclaw devices remove <deviceId> --jsonopenclaw devices clear --yes [--pending]
ล้างอุปกรณ์ที่จับคู่แล้วแบบเป็นกลุ่ม
openclaw devices clear --yesopenclaw devices clear --yes --pendingopenclaw devices clear --yes --pending --jsonopenclaw devices approve [requestId] [--latest]
อนุมัติคำขอจับคู่อุปกรณ์ที่รอดำเนินการด้วย requestId ที่ตรงกัน หากละ requestId หรือส่ง --latest OpenClaw จะพิมพ์เฉพาะคำขอที่รอดำเนินการซึ่งเลือกไว้แล้วออกจากโปรแกรม ให้รันการอนุมัติอีกครั้งด้วย ID คำขอที่ตรงกันหลังจากตรวจสอบรายละเอียดแล้ว
หากอุปกรณ์ถูกจับคู่แล้วและร้องขอขอบเขตที่กว้างขึ้นหรือบทบาทที่กว้างขึ้น OpenClaw จะคงการอนุมัติเดิมไว้และสร้างคำขออัปเกรดใหม่ที่รอดำเนินการ ตรวจสอบคอลัมน์ Requested เทียบกับ Approved ใน openclaw devices list หรือใช้ openclaw devices approve --latest เพื่อดูตัวอย่างการอัปเกรดที่ตรงกันก่อนอนุมัติ
หาก Gateway ถูกกำหนดค่าอย่างชัดเจนด้วย gateway.nodes.pairing.autoApproveCidrs คำขอ role: node ครั้งแรกจาก IP ไคลเอนต์ที่ตรงกันสามารถได้รับการอนุมัติก่อนที่จะปรากฏในรายการนี้ นโยบายนี้ปิดใช้งานเป็นค่าเริ่มต้น และไม่ใช้กับไคลเอนต์ operator/เบราว์เซอร์หรือคำขออัปเกรด
การอนุมัติบทบาทอุปกรณ์แบบ node หรือบทบาทที่ไม่ใช่ operator อื่น ๆ ต้องใช้ operator.admin ส่วน operator.pairing เพียงพอสำหรับการอนุมัติอุปกรณ์ operator เท่านั้นเมื่อขอบเขต operator ที่ร้องขอยังคงอยู่ภายในขอบเขตของผู้เรียกเอง ดู ขอบเขต Operator สำหรับการตรวจสอบตอนอนุมัติ
openclaw devices approveopenclaw devices approve <requestId>openclaw devices approve --latestการอนุมัติครั้งแรกของ Paperclip / openclaw_gateway
เมื่อเอเจนต์ Paperclip ใหม่เชื่อมต่อผ่านอะแดปเตอร์ openclaw_gateway เป็นครั้งแรก Gateway อาจต้องการการอนุมัติจับคู่อุปกรณ์แบบครั้งเดียวก่อนที่การรันจะสำเร็จได้ หาก Paperclip รายงาน openclaw_gateway_pairing_required ให้อนุมัติอุปกรณ์ที่รอดำเนินการแล้วลองใหม่
สำหรับ Gateway แบบโลคัล ให้ดูตัวอย่างคำขอล่าสุดที่รอดำเนินการ:
openclaw devices approve --latestตัวอย่างจะแสดงคำสั่ง openclaw devices approve <requestId> ที่ตรงกัน ตรวจสอบรายละเอียดคำขอ จากนั้นรันคำสั่งนั้นอีกครั้งพร้อม ID คำขอเพื่ออนุมัติ
สำหรับ Gateway ระยะไกลหรือข้อมูลรับรองที่ระบุชัดเจน ให้ส่งตัวเลือกเดียวกันระหว่างดูตัวอย่างและอนุมัติ:
openclaw devices approve --latest --url <gateway-ws-url> --token <gateway-token>เพื่อหลีกเลี่ยงการอนุมัติซ้ำหลังรีสตาร์ต ให้เก็บกุญแจอุปกรณ์แบบถาวรไว้ในการกำหนดค่าอะแดปเตอร์ Paperclip แทนการสร้างตัวตนชั่วคราวใหม่ทุกครั้งที่รัน:
{ "adapterConfig": { "devicePrivateKeyPem": "<ed25519-private-key-pkcs8-pem>" }}หากการอนุมัติยังล้มเหลว ให้รัน openclaw devices list ก่อนเพื่อยืนยันว่ามีคำขอที่รอดำเนินการอยู่
openclaw devices reject <requestId>
ปฏิเสธคำขอจับคู่อุปกรณ์ที่รอดำเนินการ
openclaw devices reject <requestId>openclaw devices rotate --device <id> --role <role> [--scope <scope...>]
หมุนเวียนโทเค็นอุปกรณ์สำหรับบทบาทที่ระบุ (เลือกอัปเดตขอบเขตได้)
บทบาทเป้าหมายต้องมีอยู่แล้วในสัญญาการจับคู่ที่อนุมัติแล้วของอุปกรณ์นั้น การหมุนเวียนไม่สามารถสร้างบทบาทใหม่ที่ยังไม่อนุมัติได้
หากคุณละ --scope การเชื่อมต่อใหม่ภายหลังด้วยโทเค็นที่หมุนเวียนและจัดเก็บไว้จะใช้ขอบเขตที่อนุมัติแล้วซึ่งแคชไว้ของโทเค็นนั้นซ้ำ หากคุณส่งค่า --scope อย่างชัดเจน ค่าเหล่านั้นจะกลายเป็นชุดขอบเขตที่จัดเก็บไว้สำหรับการเชื่อมต่อใหม่ด้วยโทเค็นที่แคชไว้ในอนาคต
ผู้เรียกที่เป็นอุปกรณ์ที่จับคู่แล้วและไม่ใช่แอดมินสามารถหมุนเวียนได้เฉพาะโทเค็นอุปกรณ์ของ ตนเอง เท่านั้น
ชุดขอบเขตโทเค็นเป้าหมายต้องยังคงอยู่ภายในขอบเขต operator ของเซสชันผู้เรียกเอง การหมุนเวียนไม่สามารถสร้างหรือคงโทเค็น operator ที่กว้างกว่าที่ผู้เรียกมีอยู่แล้วได้
openclaw devices rotate --device <deviceId> --role operator --scope operator.read --scope operator.writeส่งคืนเมตาดาต้าการหมุนเวียนเป็น JSON หากผู้เรียกกำลังหมุนเวียนโทเค็นของตนเองขณะยืนยันตัวตนด้วยโทเค็นอุปกรณ์นั้น การตอบกลับจะรวมโทเค็นทดแทนด้วย เพื่อให้ไคลเอนต์สามารถบันทึกไว้ก่อนเชื่อมต่อใหม่ การหมุนเวียนแบบแชร์/แอดมินจะไม่สะท้อน bearer token กลับมา
openclaw devices revoke --device <id> --role <role>
เพิกถอนโทเค็นอุปกรณ์สำหรับบทบาทที่ระบุ
ผู้เรียกที่เป็นอุปกรณ์ที่จับคู่แล้วและไม่ใช่แอดมินสามารถเพิกถอนได้เฉพาะโทเค็นอุปกรณ์ของ ตนเอง เท่านั้น
การเพิกถอนโทเค็นของอุปกรณ์อื่นต้องใช้ operator.admin
ชุดขอบเขตโทเค็นเป้าหมายต้องพอดีกับขอบเขต operator ของเซสชันผู้เรียกเองด้วย ผู้เรียกที่มีเฉพาะการจับคู่ไม่สามารถเพิกถอนโทเค็น operator ระดับ admin/write ได้
openclaw devices revoke --device <deviceId> --role nodeส่งคืนผลการเพิกถอนเป็น JSON
ตัวเลือกทั่วไป
--url <url>: URL WebSocket ของ Gateway (ค่าเริ่มต้นเป็นgateway.remote.urlเมื่อกำหนดค่าไว้)--token <token>: โทเค็น Gateway (หากจำเป็น)--password <password>: รหัสผ่าน Gateway (การยืนยันตัวตนด้วยรหัสผ่าน)--timeout <ms>: ระยะหมดเวลา RPC--json: เอาต์พุต JSON (แนะนำสำหรับสคริปต์)
หมายเหตุ
- การหมุนเวียนโทเค็นจะส่งคืนโทเค็นใหม่ (ข้อมูลอ่อนไหว) ให้ปฏิบัติกับมันเหมือนความลับ
- คำสั่งเหล่านี้ต้องใช้ขอบเขต
operator.pairing(หรือoperator.admin) การอนุมัติบางรายการยังต้องให้ผู้เรียกมีขอบเขต operator ที่อุปกรณ์เป้าหมายจะสร้างหรือสืบทอดด้วย บทบาทอุปกรณ์ที่ไม่ใช่ operator ต้องใช้operator.admin; ดู ขอบเขต Operator gateway.nodes.pairing.autoApproveCidrsเป็นนโยบาย Gateway แบบเลือกใช้เองสำหรับการจับคู่อุปกรณ์ node ใหม่เท่านั้น และไม่เปลี่ยนอำนาจอนุมัติของ CLI- การหมุนเวียนและเพิกถอนโทเค็นจะยังอยู่ภายในชุดบทบาทการจับคู่ที่อนุมัติแล้วและฐานขอบเขตที่อนุมัติแล้วสำหรับอุปกรณ์นั้น รายการโทเค็นที่แคชไว้แบบหลงเหลือไม่ได้ให้สิทธิ์เป็นเป้าหมายการจัดการโทเค็น
- สำหรับเซสชันโทเค็นอุปกรณ์ที่จับคู่แล้ว การจัดการข้ามอุปกรณ์ทำได้เฉพาะแอดมินเท่านั้น:
remove,rotateและrevokeทำได้เฉพาะของตนเอง เว้นแต่ผู้เรียกจะมีoperator.admin - การเปลี่ยนแปลงโทเค็นยังถูกจำกัดตามขอบเขตของผู้เรียก: เซสชันที่มีเฉพาะการจับคู่ไม่สามารถหมุนเวียนหรือเพิกถอนโทเค็นที่ปัจจุบันมี
operator.adminหรือoperator.write devices clearถูกกันไว้โดยตั้งใจด้วย--yes- หากขอบเขตการจับคู่ไม่พร้อมใช้งานบน local loopback (และไม่ได้ส่ง
--urlอย่างชัดเจน) list/approve สามารถใช้ทางเลือกสำรองการจับคู่แบบโลคัลได้ devices approveต้องใช้ ID คำขอที่ชัดเจนก่อนสร้างโทเค็น การละrequestIdหรือส่ง--latestจะเป็นเพียงการดูตัวอย่างคำขอใหม่ล่าสุดที่รอดำเนินการเท่านั้น
เช็กลิสต์กู้คืนโทเค็นที่คลาดเคลื่อน
ใช้สิ่งนี้เมื่อ Control UI หรือไคลเอนต์อื่นยังล้มเหลวด้วย AUTH_TOKEN_MISMATCH, AUTH_DEVICE_TOKEN_MISMATCH หรือ AUTH_SCOPE_MISMATCH
- ยืนยันแหล่งที่มาของโทเค็น Gateway ปัจจุบัน:
openclaw config get gateway.auth.token- แสดงรายการอุปกรณ์ที่จับคู่แล้วและระบุ ID อุปกรณ์ที่ได้รับผลกระทบ:
openclaw devices list- หมุนเวียนโทเค็น operator สำหรับอุปกรณ์ที่ได้รับผลกระทบ:
openclaw devices rotate --device <deviceId> --role operator- หากการหมุนเวียนยังไม่พอ ให้ลบการจับคู่เก่าและอนุมัติอีกครั้ง:
openclaw devices remove <deviceId>openclaw devices listopenclaw devices approve <requestId>- ลองเชื่อมต่อไคลเอนต์อีกครั้งด้วยโทเค็น/รหัสผ่านแบบแชร์ปัจจุบัน
หมายเหตุ:
- ลำดับความสำคัญของการยืนยันตัวตนเมื่อเชื่อมต่อใหม่ตามปกติคือ โทเค็น/รหัสผ่านแบบแชร์ที่ระบุชัดเจนก่อน จากนั้น
deviceTokenที่ระบุชัดเจน จากนั้นโทเค็นอุปกรณ์ที่จัดเก็บไว้ จากนั้นโทเค็น bootstrap - การกู้คืน
AUTH_TOKEN_MISMATCHที่เชื่อถือได้สามารถส่งทั้งโทเค็นแบบแชร์และโทเค็นอุปกรณ์ที่จัดเก็บไว้ร่วมกันชั่วคราวสำหรับการลองซ้ำที่มีขอบเขตเพียงครั้งเดียว AUTH_SCOPE_MISMATCHหมายความว่าโทเค็นอุปกรณ์ได้รับการรู้จักแล้ว แต่ไม่มีชุดขอบเขตที่ร้องขอ ให้แก้สัญญาการอนุมัติการจับคู่/ขอบเขตก่อนเปลี่ยนการยืนยันตัวตน Gateway แบบแชร์
ที่เกี่ยวข้อง: