Web interfaces

พื้นที่ทำงาน

แท็บ พื้นที่ทำงาน ใน UI ควบคุม เป็นพื้นที่ที่คุณและเอเจนต์ของคุณจัดวางร่วมกัน แท็บ วิดเจ็ต ตำแหน่งของวิดเจ็ตบนกริด 12 คอลัมน์ และการผูกข้อมูลทั้งหมดอยู่ในเอกสารเดียว ทุกสิ่งที่แก้ไขเอกสารนั้นได้สามารถจัดองค์ประกอบพื้นที่ทำงานได้ ไม่ว่าจะเป็นคุณ, CLI openclaw workspaces หรือเอเจนต์ที่เรียกใช้เครื่องมือ workspace_*

การเขียนทุกครั้งจะผ่านเส้นทางที่ผ่านการตรวจสอบเดียวกัน ดังนั้นเลย์เอาต์ของมนุษย์และเลย์เอาต์ของเอเจนต์จึงไม่สามารถแตกต่างกันได้ การเขียนแต่ละครั้งที่ได้รับการยอมรับจะเพิ่มหมายเลขเวอร์ชันและกระจายเหตุการณ์ plugin.workspaces.changed ทำให้การแก้ไขของเอเจนต์ปรากฏในเบราว์เซอร์ที่เปิดอยู่แล้วโดยไม่ต้องโหลดหน้าใหม่

เปิดใช้พื้นที่ทำงาน

Plugin พื้นที่ทำงานที่มาพร้อมระบบถูกปิดใช้งานโดยค่าเริ่มต้น ใน UI ควบคุม ให้เปิด Plugins ค้นหา พื้นที่ทำงาน แล้วเลือก เปิดใช้ คุณยังสามารถเปิดใช้จาก CLI ได้ด้วย:

sh
openclaw plugins enable workspaces

การเปิดใช้ Plugin จะเพิ่มแท็บ พื้นที่ทำงาน และทำให้ CLI openclaw workspaces รวมถึงเครื่องมือเอเจนต์ workspace_* พร้อมใช้งาน การปิดใช้งานจะนำส่วนติดต่อเหล่านี้ออกโดยไม่ลบฐานข้อมูลพื้นที่ทำงานหรือแอสเซ็ตของวิดเจ็ต

พื้นที่ทำงานเริ่มต้น

เมื่อโหลดครั้งแรก คุณจะได้รับพื้นที่ทำงาน ภาพรวม ซึ่งประกอบด้วยการ์ดค่าใช้จ่ายและโทเค็น สถานะความพร้อมของอินสแตนซ์ เซสชัน สถานะ Cron และฟีดกิจกรรม เนื้อหาเหล่านี้เป็นเนื้อหาพื้นที่ทำงานทั่วไป คุณสามารถลาก ยุบ ซ่อน หรือลบได้

วิดเจ็ตในตัว

Plugin มาพร้อมวิดเจ็ตที่เชื่อถือได้เก้ารายการ ซึ่งแสดงผลเป็น UI ของระบบโดยตรง:

stat-card, markdown, table, iframe-embed, sessions, usage, cron, instances, activity

วิดเจ็ตประกาศข้อมูลผ่าน การผูกข้อมูล และจะไม่ดึงข้อมูลด้วยตนเอง:

การผูกข้อมูล ค่าที่ได้
static ค่าคงที่ที่จัดเก็บในเอกสาร (สูงสุด 8 KB)
file ไฟล์ JSON, Markdown หรือ CSV ภายใต้ <stateDir>/workspaces/data/ โดยอาจจำกัดขอบเขตเพิ่มเติมด้วยตัวชี้ JSON
rpc หนึ่งในเมธอด Gateway แบบอ่านอย่างเดียวจากรายการอนุญาตที่กำหนดไว้ ซึ่งแก้ค่าโดย UI ควบคุมที่เชื่อถือได้

การผูกข้อมูล file เป็นวิธีที่ง่ายที่สุดในการนำตัวเลขของคุณเองมาไว้ในพื้นที่ทำงาน โดยเขียนไฟล์ JSON ลงในไดเรกทอรีข้อมูล แล้วกำหนดให้ stat-card ชี้ไปยังไฟล์นั้น

ที่มา

แท็บและวิดเจ็ตมีตราประทับ createdBy ได้แก่ user, system หรือ agent:<id> ซึ่งกำหนดตามผู้ที่ทำการเขียน ผู้เรียกไม่สามารถระบุค่านี้เองได้ ดังนั้นเอเจนต์จึงไม่สามารถระบุว่างานของตนเป็นงานของคุณ และป้าย "AI" บนวิดเจ็ตที่สร้างโดยเอเจนต์จะสื่อความหมายตามนั้นเสมอ

วิดเจ็ตกำหนดเอง

เอเจนต์สามารถสร้างวิดเจ็ต HTML จริงได้ด้วย workspace_widget_scaffold (หรือคุณสามารถสร้างเองได้ด้วย openclaw workspaces widget-scaffold <name>) โค้ดที่สร้างโดยเอเจนต์จะถูกถือว่าไม่น่าเชื่อถือ:

  • วิดเจ็ตที่สร้างโครงเริ่มต้นจะเข้าสู่ทะเบียนด้วยสถานะ รอดำเนินการ โดยจะไม่มีการสร้าง iframe และเส้นทางแอสเซ็ตจะตอบกลับ 404 สำหรับไฟล์ของวิดเจ็ต จนกว่าผู้ดำเนินการจะอนุมัติ
  • การอนุมัติเป็นการตัดสินใจที่แยกจากการแก้ไขเลย์เอาต์ โดย workspaces.widget.approve ต้องมีขอบเขต operator.approvals ซึ่งเป็นขอบเขตเดียวกับที่ใช้ควบคุมการอนุมัติการดำเนินการ
  • วิดเจ็ตที่ได้รับอนุมัติจะแสดงผลใน <iframe sandbox="allow-scripts"> และจะไม่ใช้ allow-same-origin เด็ดขาด ทำให้ต้นทางของวิดเจ็ตไม่เปิดเผยและไม่สามารถเข้าถึง DOM พื้นที่จัดเก็บ หรือคุกกี้ของหน้าหลักได้
  • แอสเซ็ตของวิดเจ็ตจะถูกให้บริการด้วย connect-src 'none' ซึ่งปิดกั้นการเชื่อมต่อเครือข่ายจากสคริปต์ เช่น fetch, XHR และ WebSockets วิดเจ็ตไม่มีข้อมูลรับรองและไม่สื่อสารกับ Gateway
  • ข้อมูลจะส่งถึงวิดเจ็ตผ่านบริดจ์ postMessage ที่มีการกำหนดเวอร์ชันเท่านั้น โค้ดกำหนดเองสามารถรับการผูกข้อมูล static ที่ประกาศไว้ ซึ่งเป็นค่าพื้นที่ทำงานที่เอเจนต์หรือผู้ดำเนินการสร้างไว้แล้ว การผูกข้อมูล RPC และไฟล์จะคงอยู่ในวิดเจ็ตในตัวที่เชื่อถือได้ เนื่องจากเบราว์เซอร์อนุญาตให้เฟรมลูกในแซนด์บ็อกซ์นำทางภายในเฟรมของตนเองได้ จึงไม่มีการส่งข้อมูลที่มีสิทธิ์พิเศษไปยัง HTML ที่สร้างโดยเอเจนต์

การส่งพรอมต์เข้าแชตจากวิดเจ็ตยังต้องมีความสามารถที่ระบุในไฟล์รายการ การยืนยันแยกสำหรับการเรียกใช้แต่ละครั้งซึ่งแสดงข้อความที่ตรงกันทุกประการ และต้องผ่านการจำกัดอัตรา

CLI

sh
openclaw workspaces tabs listopenclaw workspaces tabs create --title Financialsopenclaw workspaces widget-scaffold revenue-chart --title "Revenue Chart"openclaw workspaces widget-approve revenue-chart

widget-approve ต้องใช้อุปกรณ์ที่จับคู่กับขอบเขต operator.approvals แต่การอนุมัติจาก UI ควบคุมไม่จำเป็นต้องใช้อุปกรณ์ดังกล่าว เนื่องจากเบราว์เซอร์มีขอบเขตนี้อยู่แล้ว

การจัดเก็บข้อมูล

เอกสารพื้นที่ทำงาน ทะเบียนวิดเจ็ตกำหนดเอง และวงแหวนเลิกทำขนาด 20 รายการ จะอยู่ใน <stateDir>/workspaces/workspaces.sqlite แอสเซ็ตวิดเจ็ตที่สร้างโดยเอเจนต์จะเก็บอยู่บนดิสก์ภายใต้ <stateDir>/workspaces/widgets/<name>/ และข้อมูลสำหรับการผูกไฟล์จะอยู่ภายใต้ <stateDir>/workspaces/data/ เนื่องจากเอเจนต์สร้างสิ่งเหล่านี้ด้วยเครื่องมือไฟล์ทั่วไป และเส้นทางวิดเจ็ตจะให้บริการไบต์ของไฟล์เหล่านั้น

Was this useful?
On this page

On this page