WKWebView ein. Es
ist ein leichtgewichtiger visueller Arbeitsbereich für HTML/CSS/JS, A2UI und kleine interaktive
UI-Oberflächen.
Wo Canvas gespeichert ist
Der Canvas-Zustand wird unter Application Support gespeichert:~/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 vorhanden ist, zeigt die App eine integrierte Gerüstseite an.
Panel-Verhalten
- Rahmenloses, in der Größe veränderbares Panel, das nahe der Menüleiste (oder dem Mauszeiger) verankert ist.
- Merkt sich Größe/Position pro Sitzung.
- Lädt automatisch neu, wenn sich lokale Canvas-Dateien ändern.
- Es ist jeweils nur ein Canvas-Panel sichtbar (die Sitzung wird bei Bedarf gewechselt).
CANVAS_DISABLED zurück.
Agent-API-Oberfläche
Canvas wird über den Gateway WebSocket verfügbar gemacht, sodass der Agent Folgendes kann:- das Panel anzeigen/ausblenden
- zu einem Pfad oder einer URL navigieren
- JavaScript auswerten
- ein Snapshot-Bild erfassen
canvas.navigateakzeptiert lokale Canvas-Pfade,http(s)-URLs undfile://-URLs.- Wenn Sie
"/"übergeben, zeigt Canvas das lokale Gerüst oderindex.htmlan.
A2UI in Canvas
A2UI wird vom Gateway-Canvas-Host gehostet und im Canvas-Panel gerendert. Wenn der Gateway einen Canvas-Host bekanntgibt, navigiert die macOS-App beim ersten Öffnen automatisch zur A2UI-Hostseite. Standard-URL des A2UI-Hosts:A2UI-Befehle (v0.8)
Canvas akzeptiert derzeit A2UI v0.8-Server→Client-Nachrichten:beginRenderingsurfaceUpdatedataModelUpdatedeleteSurface
createSurface (v0.9) wird nicht unterstützt.
CLI-Beispiel:
Agentenläufe aus Canvas auslösen
Canvas kann neue Agentenläufe über Deep Links auslösen:openclaw://agent?...
message: vorausgefüllter Agent-Prompt.sessionKey: stabile Sitzungskennung.thinking: optionales Denkprofil.deliver,tooderchannel: Zustellziel.timeoutSeconds: optionales Lauf-Timeout.key: von der App generiertes Sicherheitstoken für vertrauenswürdige lokale Aufrufer.
Sicherheitshinweise
- Das Canvas-Schema blockiert Directory Traversal; Dateien müssen sich unter dem Sitzungsstamm befinden.
- Lokaler Canvas-Inhalt verwendet ein benutzerdefiniertes Schema (kein Loopback-Server erforderlich).
- Externe
http(s)-URLs sind nur zulässig, wenn explizit dorthin navigiert wird.