CLI commands
เอเจนต์
openclaw agents
จัดการเอเจนต์แบบแยกอิสระ (พื้นที่ทำงาน + การตรวจสอบสิทธิ์ + การกำหนดเส้นทาง) การเรียกใช้ openclaw agents โดยไม่มีคำสั่งย่อยจะเทียบเท่ากับ openclaw agents list
เนื้อหาที่เกี่ยวข้อง:
- การกำหนดเส้นทางแบบหลายเอเจนต์
- พื้นที่ทำงานของเอเจนต์
- การกำหนดค่า Skills: การกำหนดค่าการมองเห็น Skills
ตัวอย่าง
openclaw agents listopenclaw agents list --bindingsopenclaw agents add work --workspace ~/.openclaw/workspace-workopenclaw agents add work --workspace ~/.openclaw/workspace-work --bind telegram:*openclaw agents add ops --workspace ~/.openclaw/workspace-ops --bind telegram:ops --non-interactiveopenclaw agents bindingsopenclaw agents bind --agent work --bind telegram:opsopenclaw agents unbind --agent work --bind telegram:opsopenclaw agents set-identity --workspace ~/.openclaw/workspace --from-identityopenclaw agents set-identity --agent main --avatar avatars/openclaw.pngopenclaw agents delete workชุดคำสั่งที่รองรับ
agents list
ตัวเลือก: --json, --bindings (รวมกฎการกำหนดเส้นทางทั้งหมด ไม่ใช่เฉพาะจำนวน/ข้อมูลสรุปต่อเอเจนต์)
agents add [name]
ตัวเลือก: --workspace <dir>, --model <id>, --agent-dir <dir>, --bind <channel[:accountId]> (ระบุซ้ำได้), --non-interactive, --json
- การส่งแฟล็กสำหรับเพิ่มใดๆ อย่างชัดเจนจะสลับคำสั่งไปใช้เส้นทางแบบไม่โต้ตอบ
- โหมดไม่โต้ตอบต้องระบุทั้งชื่อเอเจนต์และ
--workspace mainเป็นค่าที่สงวนไว้และไม่สามารถใช้เป็น ID ของเอเจนต์ใหม่ได้- โหมดโต้ตอบจะตั้งต้นข้อมูลการตรวจสอบสิทธิ์โดยคัดลอกเฉพาะข้อมูลประจำตัวแบบคงที่ที่ถ่ายโอนได้ (
api_keyและโปรไฟล์tokenแบบคงที่) เว้นแต่ข้อมูลประจำตัวจะเลือกไม่เข้าร่วมด้วยcopyToAgents: false; โปรไฟล์โทเค็นรีเฟรช OAuth จะไม่ถูกคัดลอก เว้นแต่ผู้ให้บริการจะเลือกเข้าร่วมด้วยcopyToAgents: trueหากไม่มีการคัดลอก OAuth จะยังใช้ได้ผ่านการสืบทอดแบบอ่านผ่านจากที่เก็บของเอเจนต์mainจริงเท่านั้น หากเอเจนต์เริ่มต้นที่กำหนดค่าไว้ไม่ใช่mainให้ลงชื่อเข้าใช้โปรไฟล์ OAuth แยกต่างหากในเอเจนต์ใหม่
agents bindings
ตัวเลือก: --agent <id>, --json
agents bind
ตัวเลือก: --agent <id> (ค่าเริ่มต้นคือเอเจนต์เริ่มต้นปัจจุบัน), --bind <channel[:accountId]> (ระบุซ้ำได้), --json
agents unbind
ตัวเลือก: --agent <id> (ค่าเริ่มต้นคือเอเจนต์เริ่มต้นปัจจุบัน), --bind <channel[:accountId]> (ระบุซ้ำได้), --all, --json รองรับ --all หรือค่า --bind อย่างน้อยหนึ่งค่า แต่ไม่รองรับทั้งสองแบบพร้อมกัน
agents set-identity
ตัวเลือก: --agent <id>, --workspace <dir>, --identity-file <path>, --from-identity, --name <name>, --theme <theme>, --emoji <emoji>, --avatar <value>, --json ดู ตั้งค่าอัตลักษณ์ ด้านล่าง
agents delete <id>
ตัวเลือก: --force, --json
- ไม่สามารถลบ
mainได้ - หากไม่มี
--forceจะต้องยืนยันแบบโต้ตอบ (จะล้มเหลวในเซสชันที่ไม่ใช่ TTY; ให้เรียกใช้อีกครั้งพร้อม--force) - ไดเรกทอรีพื้นที่ทำงาน สถานะเอเจนต์ และบันทึกบทสนทนาของเซสชันจะถูกย้ายไปยังถังขยะ ไม่ใช่ลบถาวร หากถังขยะใช้งานไม่ได้ การลบการกำหนดค่าเอเจนต์จะยังสำเร็จและรายงานพาธที่ต้องล้างด้วยตนเอง
- เมื่อเข้าถึง Gateway ได้ การลบจะกำหนดเส้นทางผ่าน Gateway เพื่อให้การล้างการกำหนดค่าและที่เก็บเซสชันใช้ตัวเขียนเดียวกับทราฟฟิกรันไทม์ หากเข้าถึง Gateway ไม่ได้ CLI จะย้อนกลับไปใช้เส้นทางภายในเครื่องแบบออฟไลน์
- หากพื้นที่ทำงานของเอเจนต์อื่นเป็นพาธเดียวกัน อยู่ภายในพื้นที่ทำงานนี้ หรือครอบคลุมพื้นที่ทำงานนี้ พื้นที่ทำงานจะถูกเก็บไว้ และ
--jsonจะรายงานworkspaceRetained,workspaceRetainedReasonและworkspaceSharedWith
การผูกการกำหนดเส้นทาง
ใช้การผูกการกำหนดเส้นทางเพื่อตรึงทราฟฟิกขาเข้าของช่องทางไว้กับเอเจนต์ที่ระบุ
หากต้องการให้แต่ละเอเจนต์มองเห็น Skills ต่างกันด้วย ให้กำหนดค่า agents.defaults.skills และ agents.list[].skills ใน openclaw.json ดู การกำหนดค่า Skills และ ข้อมูลอ้างอิงการกำหนดค่า
แสดงรายการการผูก:
openclaw agents bindingsopenclaw agents bindings --agent workopenclaw agents bindings --jsonเพิ่มการผูก:
openclaw agents bind --agent work --bind telegram:ops --bind discord:guild-aนอกจากนี้ยังเพิ่มการผูกขณะสร้างเอเจนต์ได้:
openclaw agents add work --workspace ~/.openclaw/workspace-work --bind telegram:* --bind discord:*หากละ accountId (--bind <channel>) OpenClaw จะระบุค่าดังกล่าวจากฮุกการตั้งค่า Plugin การผูกบัญชีแบบบังคับ หรือจำนวนบัญชีที่กำหนดค่าไว้ของช่องทาง
หากละ --agent สำหรับ bind หรือ unbind OpenClaw จะกำหนดเป้าหมายไปยังเอเจนต์เริ่มต้นปัจจุบัน
รูปแบบ --bind
| รูปแบบ | ความหมาย |
|---|---|
--bind <channel>:* |
จับคู่ทุกบัญชีในช่องทาง |
--bind <channel>:<account> |
จับคู่หนึ่งบัญชี |
--bind <channel> |
จับคู่เฉพาะบัญชีเริ่มต้น เว้นแต่ CLI จะสามารถระบุขอบเขตบัญชีเฉพาะ Plugin ได้อย่างปลอดภัย |
ลักษณะการทำงานของขอบเขตการผูก
- การผูกที่จัดเก็บไว้โดยไม่มี
accountIdจะจับคู่เฉพาะบัญชีเริ่มต้นของช่องทาง accountId: "*"เป็นทางเลือกสำรองสำหรับทั้งช่องทาง (ทุกบัญชี) และมีความเฉพาะเจาะจงน้อยกว่าการผูกบัญชีที่ระบุอย่างชัดเจน- หากเอเจนต์เดียวกันมีการผูกช่องทางที่ตรงกันโดยไม่มี
accountIdอยู่แล้ว และภายหลังผูกด้วยaccountIdที่ระบุอย่างชัดเจนหรือระบุค่าได้ OpenClaw จะอัปเกรดการผูกเดิมนั้นโดยตรงแทนการเพิ่มรายการซ้ำ
ตัวอย่าง:
# จับคู่ทุกบัญชีในช่องทางopenclaw agents bind --agent work --bind telegram:* # จับคู่บัญชีที่ระบุopenclaw agents bind --agent work --bind telegram:ops # การผูกเฉพาะช่องทางในตอนเริ่มต้นopenclaw agents bind --agent work --bind telegram # อัปเกรดเป็นการผูกที่มีขอบเขตระดับบัญชีในภายหลังopenclaw agents bind --agent work --bind telegram:alertsหลังการอัปเกรด การกำหนดเส้นทางสำหรับการผูกนั้นจะถูกจำกัดขอบเขตไว้ที่ telegram:alerts หากต้องการการกำหนดเส้นทางสำหรับบัญชีเริ่มต้นด้วย ให้เพิ่มอย่างชัดเจน (เช่น --bind telegram:default)
ลบการผูก:
openclaw agents unbind --agent work --bind telegram:opsopenclaw agents unbind --agent work --allไฟล์อัตลักษณ์
พื้นที่ทำงานของแต่ละเอเจนต์สามารถมี IDENTITY.md ที่รากของพื้นที่ทำงานได้:
- ตัวอย่างพาธ:
~/.openclaw/workspace/IDENTITY.md set-identity --from-identityอ่านจากรากของพื้นที่ทำงาน (หรือ--identity-fileที่ระบุอย่างชัดเจน)
พาธอวาตาร์จะถูกระบุโดยอ้างอิงจากรากของพื้นที่ทำงานและไม่สามารถออกนอกพื้นที่ดังกล่าวได้ แม้จะผ่านลิงก์สัญลักษณ์ก็ตาม
ตั้งค่าอัตลักษณ์
set-identity เขียนฟิลด์ลงใน agents.list[].identity: name, theme, emoji, avatar (พาธที่อ้างอิงจากพื้นที่ทำงาน, URL แบบ http(s) หรือ URI ข้อมูล)
--agentหรือ--workspaceใช้เลือกเอเจนต์เป้าหมาย หาก--workspaceตรงกับเอเจนต์มากกว่าหนึ่งรายการ คำสั่งจะล้มเหลวและขอให้ส่ง--agent- ไฟล์ภาพอวาตาร์ภายในเครื่องที่มีพาธอ้างอิงจากพื้นที่ทำงานมีขนาดจำกัดที่ 2 MB ส่วน URL แบบ HTTP(S) และ URI แบบ
data:จะไม่ถูกตรวจสอบเทียบกับขีดจำกัดขนาดไฟล์ภายในเครื่อง - เมื่อไม่ได้ระบุฟิลด์อัตลักษณ์อย่างชัดเจน คำสั่งจะอ่านข้อมูลอัตลักษณ์จาก
IDENTITY.md
โหลดจาก IDENTITY.md:
openclaw agents set-identity --workspace ~/.openclaw/workspace --from-identityเขียนทับฟิลด์อย่างชัดเจน:
openclaw agents set-identity --agent main --name "OpenClaw" --emoji "🦞" --avatar avatars/openclaw.pngตัวอย่างการกำหนดค่า:
{ agents: { list: [ { id: "main", identity: { name: "OpenClaw", theme: "space lobster", emoji: "🦞", avatar: "avatars/openclaw.png", }, }, ], },}