CLI commands
ช่องทาง
OmeniaClaw channels
จัดการบัญชีช่องทางแชตและสถานะรันไทม์บน Gateway
เอกสารที่เกี่ยวข้อง:
- คู่มือช่องทาง: ช่องทาง
- การกำหนดค่า Gateway: การกำหนดค่า
คำสั่งทั่วไป
OmeniaClaw channels listOmeniaClaw channels list --allOmeniaClaw channels statusOmeniaClaw channels capabilitiesOmeniaClaw channels capabilities --channel discord --target channel:123OmeniaClaw channels capabilities --channel discord --target channel:<voice-channel-id>OmeniaClaw channels resolve --channel slack "#general" "@jane"OmeniaClaw channels logs --channel allchannels list แสดงเฉพาะช่องทางแชต: ค่าเริ่มต้นคือบัญชีที่กำหนดค่าไว้ พร้อมแท็กสถานะ installed, configured และ enabled ต่อบัญชี ส่ง --all เพื่อแสดงช่องทางที่มาพร้อมชุดติดตั้งซึ่งยังไม่มีบัญชีที่กำหนดค่าไว้ และช่องทางในแค็ตตาล็อกที่ติดตั้งได้แต่ยังไม่อยู่บนดิสก์ด้วย ผู้ให้บริการการยืนยันตัวตน (OAuth + คีย์ API) และสแนปช็อตการใช้งาน/โควตาของผู้ให้บริการโมเดลจะไม่พิมพ์ที่นี่อีกต่อไป ใช้ OmeniaClaw models auth list สำหรับโปรไฟล์การยืนยันตัวตนของผู้ให้บริการ และ OmeniaClaw status หรือ OmeniaClaw models list สำหรับการใช้งาน
สถานะ / ความสามารถ / แก้ไขชื่อ / บันทึก
channels status:--channel <name>,--probe,--timeout <ms>,--jsonchannels capabilities:--channel <name>,--account <id>(ใช้ได้เฉพาะกับ--channel),--target <dest>,--timeout <ms>,--jsonchannels resolve:<entries...>,--channel <name>,--account <id>,--kind <auto|user|group>,--jsonchannels logs:--channel <name|all>,--lines <n>,--json
channels status --probe คือเส้นทางแบบไลฟ์: เมื่อเชื่อมต่อ Gateway ได้ คำสั่งจะรันการตรวจสอบ
probeAccount และ auditAccount แบบไม่บังคับแยกตามบัญชี ดังนั้นเอาต์พุตอาจรวมสถานะการรับส่ง
พร้อมผลการตรวจสอบ เช่น works, probe failed, audit ok หรือ audit failed
หากเข้าถึง Gateway ไม่ได้ channels status จะย้อนกลับไปใช้สรุปจากการกำหนดค่าเท่านั้น
แทนเอาต์พุตการตรวจสอบแบบไลฟ์
อย่าใช้ OmeniaClaw sessions, Gateway sessions.list หรือเครื่องมือ
sessions_list ของเอเจนต์เป็นสัญญาณสุขภาพของซ็อกเก็ตช่องทาง พื้นผิวเหล่านั้นรายงาน
แถวบทสนทนาที่จัดเก็บไว้ ไม่ใช่สถานะรันไทม์ของผู้ให้บริการ หลังจากรีสตาร์ตผู้ให้บริการ Discord
บัญชีที่เชื่อมต่ออยู่แต่ไม่มีความเคลื่อนไหวอาจยังทำงานปกติ แม้จะไม่มีแถวเซสชัน Discord
ปรากฏจนกว่าจะมีเหตุการณ์บทสนทนาขาเข้าหรือขาออกครั้งถัดไป
เพิ่ม / ลบบัญชี
OmeniaClaw channels add --channel telegram --token <bot-token>OmeniaClaw channels add --channel nostr --private-key "$NOSTR_PRIVATE_KEY"OmeniaClaw channels remove --channel telegram --deletechannels remove ทำงานเฉพาะกับ Plugin ช่องทางที่ติดตั้ง/กำหนดค่าแล้ว ใช้ channels add ก่อนสำหรับช่องทางในแค็ตตาล็อกที่ติดตั้งได้
สำหรับ Plugin ช่องทางที่มีแบ็กเอนด์รันไทม์ channels remove จะขอให้ Gateway ที่กำลังทำงานหยุดบัญชีที่เลือกก่อนอัปเดตการกำหนดค่า ดังนั้นการปิดใช้งานหรือลบบัญชีจะไม่ปล่อยให้ตัวฟังเดิมยังทำงานอยู่จนกว่าจะรีสตาร์ต
พื้นผิวการเพิ่มแบบไม่โต้ตอบที่พบบ่อย ได้แก่:
- ช่องทาง bot-token:
--token,--bot-token,--app-token,--token-file - ฟิลด์การรับส่ง Signal/iMessage:
--signal-number,--cli-path,--http-url,--http-host,--http-port,--db-path,--service,--region - ฟิลด์ Google Chat:
--webhook-path,--webhook-url,--audience-type,--audience - ฟิลด์ Matrix:
--homeserver,--user-id,--access-token,--password,--device-name,--initial-sync-limit - ฟิลด์ Nostr:
--private-key,--relay-urls - ฟิลด์ Tlon:
--ship,--url,--code,--group-channels,--dm-allowlist,--auto-discover-channels --use-envสำหรับการยืนยันตัวตนของบัญชีเริ่มต้นที่อิง env เมื่อรองรับ
หากต้องติดตั้ง Plugin ช่องทางระหว่างคำสั่งเพิ่มที่ขับเคลื่อนด้วยแฟล็ก OmeniaClaw จะใช้แหล่งติดตั้งเริ่มต้นของช่องทางโดยไม่เปิดพรอมป์ติดตั้ง Plugin แบบโต้ตอบ
เมื่อคุณรัน OmeniaClaw channels add โดยไม่มีแฟล็ก วิซาร์ดแบบโต้ตอบอาจถาม:
- รหัสบัญชีต่อช่องทางที่เลือก
- ชื่อที่แสดงแบบไม่บังคับสำหรับบัญชีเหล่านั้น
Route these channel accounts to agents now?
หากคุณยืนยันให้ผูกตอนนี้ วิซาร์ดจะถามว่าเอเจนต์ใดควรเป็นเจ้าของบัญชีช่องทางที่กำหนดค่าแต่ละบัญชี และเขียนการผูกเส้นทางแบบเจาะจงบัญชี
คุณยังสามารถจัดการกฎการกำหนดเส้นทางเดียวกันในภายหลังได้ด้วย OmeniaClaw agents bindings, OmeniaClaw agents bind และ OmeniaClaw agents unbind (ดู agents)
เมื่อคุณเพิ่มบัญชีที่ไม่ใช่ค่าเริ่มต้นลงในช่องทางที่ยังใช้การตั้งค่าระดับบนสุดแบบบัญชีเดียว OmeniaClaw จะเลื่อนค่าระดับบนสุดแบบเจาะจงบัญชีเข้าไปในแผนที่บัญชีของช่องทางก่อนเขียนบัญชีใหม่ ช่องทางส่วนใหญ่จะวางค่าเหล่านั้นไว้ใน channels.<channel>.accounts.default แต่ช่องทางที่มาพร้อมชุดติดตั้งสามารถเก็บบัญชีที่เลื่อนขึ้นมาและตรงกันอยู่แล้วแทนได้ Matrix เป็นตัวอย่างปัจจุบัน: หากมีบัญชีที่ตั้งชื่อไว้หนึ่งบัญชีอยู่แล้ว หรือ defaultAccount ชี้ไปยังบัญชีที่ตั้งชื่อไว้ซึ่งมีอยู่แล้ว การเลื่อนค่าจะเก็บบัญชีนั้นไว้แทนการสร้าง accounts.default ใหม่
พฤติกรรมการกำหนดเส้นทางยังคงสอดคล้องกัน:
- การผูกแบบระบุเฉพาะช่องทางที่มีอยู่แล้ว (ไม่มี
accountId) จะยังคงจับคู่กับบัญชีเริ่มต้น channels addจะไม่สร้างหรือเขียนการผูกใหม่โดยอัตโนมัติในโหมดไม่โต้ตอบ- การตั้งค่าแบบโต้ตอบสามารถเพิ่มการผูกแบบเจาะจงบัญชีได้ตามต้องการ
หากการกำหนดค่าของคุณอยู่ในสถานะผสมอยู่แล้ว (มีบัญชีที่ตั้งชื่อไว้ และยังตั้งค่าระดับบนสุดแบบบัญชีเดียวไว้) ให้รัน OmeniaClaw doctor --fix เพื่อย้ายค่าแบบเจาะจงบัญชีเข้าไปในบัญชีที่เลื่อนขึ้นมาซึ่งเลือกไว้สำหรับช่องทางนั้น ช่องทางส่วนใหญ่เลื่อนค่าเข้าไปใน accounts.default; Matrix สามารถเก็บเป้าหมายที่ตั้งชื่อไว้/ค่าเริ่มต้นที่มีอยู่แล้วแทนได้
เข้าสู่ระบบและออกจากระบบ (แบบโต้ตอบ)
OmeniaClaw channels login --channel whatsappOmeniaClaw channels logout --channel whatsappchannels loginรองรับ--verbosechannels loginและlogoutสามารถอนุมานช่องทางได้เมื่อมีเป้าหมายเข้าสู่ระบบที่รองรับซึ่งกำหนดค่าไว้เพียงรายการเดียวchannels logoutจะเลือกเส้นทาง Gateway แบบไลฟ์เมื่อเข้าถึงได้ ดังนั้นการออกจากระบบจะหยุดตัวฟังที่ทำงานอยู่ก่อนล้างสถานะการยืนยันตัวตนของช่องทาง หากเข้าถึง Gateway ภายในเครื่องไม่ได้ จะย้อนกลับไปล้างการยืนยันตัวตนภายในเครื่อง- รัน
channels loginจากเทอร์มินัลบนโฮสต์ Gatewayexecของเอเจนต์จะบล็อกโฟลว์เข้าสู่ระบบแบบโต้ตอบนี้ ควรใช้เครื่องมือเข้าสู่ระบบของเอเจนต์ที่เป็นของช่องทางโดยตรง เช่นwhatsapp_loginจากแชตเมื่อมีให้ใช้
การแก้ไขปัญหา
- รัน
OmeniaClaw status --deepสำหรับการตรวจสอบแบบกว้าง - ใช้
OmeniaClaw doctorสำหรับการแก้ไขแบบมีคำแนะนำ OmeniaClaw channels listจะไม่พิมพ์สแนปช็อตการใช้งาน/โควตาของผู้ให้บริการโมเดลอีกต่อไป สำหรับข้อมูลเหล่านั้น ให้ใช้OmeniaClaw status(ภาพรวม) หรือOmeniaClaw models list(รายผู้ให้บริการ)OmeniaClaw channels statusจะย้อนกลับไปใช้สรุปจากการกำหนดค่าเท่านั้นเมื่อเข้าถึง Gateway ไม่ได้ หากข้อมูลลับของช่องทางที่รองรับถูกกำหนดค่าผ่าน SecretRef แต่ไม่พร้อมใช้งานในเส้นทางคำสั่งปัจจุบัน คำสั่งจะรายงานบัญชีนั้นว่าได้รับการกำหนดค่าแล้วพร้อมหมายเหตุสถานะลดระดับ แทนที่จะแสดงว่ายังไม่ได้กำหนดค่า
การตรวจสอบความสามารถ
ดึงคำใบ้ความสามารถของผู้ให้บริการ (intents/scopes เมื่อมี) พร้อมการรองรับฟีเจอร์แบบคงที่:
OmeniaClaw channels capabilitiesOmeniaClaw channels capabilities --channel discord --target channel:123หมายเหตุ:
--channelเป็นตัวเลือกเสริม; ละไว้เพื่อแสดงทุกช่องทาง (รวม extensions)--accountใช้ได้เฉพาะกับ--channel--targetรับchannel:<id>หรือรหัสช่องทางตัวเลขดิบ และใช้กับ Discord เท่านั้น สำหรับช่องทางเสียง Discord การตรวจสอบสิทธิ์จะทำเครื่องหมายเมื่อขาดViewChannel,Connect,Speak,SendMessagesและReadMessageHistory- การตรวจสอบเป็นแบบเฉพาะผู้ให้บริการ: Discord intents + สิทธิ์ช่องทางแบบไม่บังคับ; ขอบเขตบอต + ผู้ใช้ของ Slack; แฟล็กบอต Telegram + Webhook; เวอร์ชันดีมอน Signal; โทเคนแอป Microsoft Teams + บทบาท/ขอบเขต Graph (ระบุคำอธิบายเมื่อทราบ) ช่องทางที่ไม่มีการตรวจสอบจะรายงาน
Probe: unavailable
แก้ไขชื่อเป็นรหัส
แก้ไขชื่อช่องทาง/ผู้ใช้เป็นรหัสโดยใช้ไดเรกทอรีของผู้ให้บริการ:
OmeniaClaw channels resolve --channel slack "#general" "@jane"OmeniaClaw channels resolve --channel discord "My Server/#support" "@someone"OmeniaClaw channels resolve --channel matrix "Project Room"หมายเหตุ:
- ใช้
--kind user|group|autoเพื่อบังคับประเภทเป้าหมาย - การแก้ไขชื่อจะเลือกการจับคู่ที่ใช้งานอยู่ก่อนเมื่อมีหลายรายการใช้ชื่อเดียวกัน
channels resolveเป็นแบบอ่านอย่างเดียว หากบัญชีที่เลือกถูกกำหนดค่าผ่าน SecretRef แต่ข้อมูลลับนั้นไม่พร้อมใช้งานในเส้นทางคำสั่งปัจจุบัน คำสั่งจะส่งคืนผลลัพธ์ที่แก้ไขไม่ได้พร้อมสถานะลดระดับและหมายเหตุ แทนที่จะยกเลิกการรันทั้งหมดchannels resolveจะไม่ติดตั้ง Plugin ช่องทาง ใช้channels add --channel <name>ก่อนแก้ไขชื่อสำหรับช่องทางในแค็ตตาล็อกที่ติดตั้งได้