skills/canvas/SKILL.md
Use canvas to show HTML on connected Mac/iOS/Android nodes.
plugins.entries.canvas.config.host.root.gateway.port, default 18789).gateway.bind: loopback local only, LAN IP for LAN, Tailscale host for tailnet, auto picks best route.pluginSurfaceUrls.canvas capability URLs; prefer those when available.Active config: $OPENCLAW_CONFIG_PATH or ~/.openclaw/openclaw.json.
{
"plugins": {
"entries": {
"canvas": {
"config": {
"host": {
"enabled": true,
"root": "~/.openclaw/canvas",
"liveReload": true
}
}
}
}
},
"gateway": { "bind": "auto" }
}
present: show canvas, optional URL.hide: hide canvas.navigate: open new URL.eval: run JavaScript in current canvas.snapshot: capture screenshot.plugins.entries.canvas.config.host.root or the default state canvas dir./__openclaw__/canvas/<file>.html.snapshot when the user needs proof.http://<gateway-host>:<gateway.port>/__openclaw__/canvas/index.html
http://<gateway-host>:<gateway.port>/__openclaw__/canvas/games/snake.html
Path mapping:
/__openclaw__/canvas/index.html -> <canvas host root>/index.html/__openclaw__/canvas/games/snake.html -> <canvas host root>/games/snake.htmlgateway.bind or public URL, regenerate URL.liveReload and file write under root.