← 返回玩法首页
🎨 Canvas 视觉画布

让 AI 看得见

OpenClaw Canvas 是 AI 驱动的可视化画布,让 AI 可以实时展示思考过程、生成图表、创建交互式界面

🎯 核心概念

Canvas 是 macOS 应用内置的AI 控制的可视化面板,基于 WKWebView 实现:

🖼️ 实时渲染

AI 可以实时更新 Canvas 内容,所见即所得

📊 数据可视化

AI 生成的图表、表格、思维导图即时展示

🎭 A2UI 支持

通过 A2UI 协议创建丰富的交互式界面

🔗 深度链接

Canvas 可以触发新的 Agent 运行

📂 Canvas 存储位置

Canvas 状态存储在应用支持目录下:

~/Library/Application Support/OpenClaw/canvas/<session>/...

Canvas 通过自定义 URL scheme 提供文件:

# URL scheme 格式
openclaw-canvas://<session>/<path>

# 示例
openclaw-canvas://main/              → main/index.html
openclaw-canvas://main/assets/app.css → main/assets/app.css
openclaw-canvas://main/widgets/todo/  → main/widgets/todo/index.html

🖥️ 面板行为

可以在设置中禁用 Canvas:Settings → Allow Canvas

🤖 Agent API

Canvas 通过 Gateway WebSocket 暴露给 Agent:

CLI 命令

# 显示 Canvas 面板
openclaw nodes canvas present --node <id>

# 导航到路径或 URL
openclaw nodes canvas navigate --node <id> --url "/"

# 执行 JavaScript
openclaw nodes canvas eval --node <id> --js "document.title"

# 捕获快照图片
openclaw nodes canvas snapshot --node <id>

注意

🎭 A2UI 在 Canvas 中

A2UI 由 Gateway Canvas 主机托管,在 Canvas 面板中渲染。Gateway 宣示 Canvas 主机后,macOS 应用首次打开时会自动导航到 A2UI 主机页面。

默认 A2UI 主机 URL

http://<gateway-host>:18789/__openclaw__/a2ui/

A2UI 命令 (v0.8)

Canvas 当前支持以下 A2UI v0.8 服务→客户端消息:

注意createSurface (v0.9) 暂不支持

A2UI 推送示例

# 推送 A2UI v0.8 内容
cat > /tmp/a2ui-v0.8.jsonl <<'EOFA2'
{"surfaceUpdate":{"surfaceId":"main","components":[...]}}
{"beginRendering":{"surfaceId":"main","root":"root"}}
EOFA2

openclaw nodes canvas a2ui push --jsonl /tmp/a2ui-v0.8.jsonl --node <id>

# 快速测试
openclaw nodes canvas a2ui push --node <id> --text "Hello from A2UI"

🔗 深度链接触发 Agent

Canvas 可以通过深度链接触发新的 Agent 运行:

# 深度链接格式
openclaw://agent?message=Review%20this%20design

# 在 JavaScript 中使用
window.location.href = "openclaw://agent?message=Review%20this%20design";

应用会提示确认,除非提供了有效的密钥。

💡 使用场景

🧠 思维可视化

AI 将思考过程以思维导图形式展示

📈 数据展示

生成图表、统计图、数据看板

🎨 创意设计

生成 UI 设计稿、原型图

✅ 交互任务

创建待办事项、问卷、选择界面

🔒 安全说明

🎉 接下来做什么?

继续探索其他有趣的玩法

🌐 浏览器自动化 🎙️ 语音唤醒 ⏰ 定时任务