Canvas (ứng dụng macOS)
Ứng dụng macOS nhúng một Canvas panel do agent điều khiển bằngWKWebView. It
is a lightweight visual workspace for HTML/CSS/JS, A2UI, and small interactive
UI surfaces.
Canvas nằm ở đâu
Trạng thái Canvas được lưu dưới Application Support:~/Library/Application Support/OpenClaw/canvas/<session>/...
openclaw-canvas://<session>/<path>
openclaw-canvas://main/→<canvasRoot>/main/index.htmlopenclaw-canvas://main/assets/app.css→<canvasRoot>/main/assets/app.cssopenclaw-canvas://main/widgets/todo/→<canvasRoot>/main/widgets/todo/index.html
index.html ở thư mục gốc, ứng dụng sẽ hiển thị trang khung dựng sẵn.
Hành vi của bảng
- Bảng không viền, có thể thay đổi kích thước, được neo gần thanh menu (hoặc con trỏ chuột).
- Ghi nhớ kích thước/vị trí theo từng phiên.
- Tự động tải lại khi các tệp Canvas cục bộ thay đổi.
- Chỉ một bảng Canvas hiển thị tại một thời điểm (phiên sẽ được chuyển khi cần).
CANVAS_DISABLED.
Bề mặt API cho tác tử
Canvas được mở ra qua Gateway WebSocket, vì vậy tác tử có thể:- hiển thị/ẩn bảng
- điều hướng tới một đường dẫn hoặc URL
- thực thi JavaScript
- chụp ảnh snapshot
canvas.navigatechấp nhận đường dẫn Canvas cục bộ, URLhttp(s)và URLfile://.- Nếu bạn truyền
"/", Canvas sẽ hiển thị khung dựng cục bộ hoặcindex.html.
A2UI trong Canvas
A2UI is hosted by the Gateway canvas host and rendered inside the Canvas panel. When the Gateway advertises a Canvas host, the macOS app auto‑navigates to the A2UI host page on first open. URL host A2UI mặc định:Lệnh A2UI (v0.8)
Canvas hiện chấp nhận các thông điệp server→client A2UI v0.8:beginRenderingsurfaceUpdatedataModelUpdatedeleteSurface
createSurface (v0.9) chưa được hỗ trợ.
Ví dụ CLI:
Kích hoạt tác tử chạy từ Canvas
Canvas có thể kích hoạt các lần chạy tác tử mới thông qua deep link:openclaw://agent?...
Ghi chú bảo mật
- Cơ chế Canvas chặn truy cập vượt thư mục; tệp phải nằm dưới thư mục gốc của phiên.
- Nội dung Canvas cục bộ dùng cơ chế tùy chỉnh (không cần máy chủ loopback).
- Các URL
http(s)bên ngoài chỉ được cho phép khi được điều hướng một cách rõ ràng.