openclaw/docs/nodes
Peter Steinberger b363d5a293
feat(linux): canvas UI via CLI-node + Tauri app IPC bridge (#107633)
* feat(linux): canvas via CLI-node + Tauri app IPC bridge

* refactor: extract gateway helper modules

* build(linux-canvas): register plugin package in lockfile

* fix(linux-canvas): move canvas advertise test out of core, regen docs/protocol/deadcode

* fix(gateway): break node-catalog/registry import cycle via leaf normalize module; add canvas glossary term

* style: oxfmt invoke.ts and runtime.ts after buildNodeEventParams extraction

* fix(linux): load Canvas WebView via dedicated data_directory context

Wry's Linux/WebKitGTK incognito mode discards Tauri's registered
WebContext (wry webkitgtk/mod.rs), so the Canvas window got a fresh
ephemeral context without the openclaw-canvas:// scheme handler — the
bundled A2UI page never committed (stayed about:blank) and every A2UI
command timed out. Use an isolated cache-backed data_directory instead,
which keeps the protocol handler while still isolating Canvas storage
from the dashboard window.

* fix(linux): keep Canvas WebView ephemeral via incognito + data_directory

Autoreview flagged that a dedicated data_directory alone persists Canvas
browser state (cookies, localStorage, IndexedDB, service workers) across
restarts, so an agent that navigates Canvas to a site could leak an
authenticated session into a later session. iOS uses a non-persistent
store; Linux should match.

Add .incognito(true) alongside .data_directory(): the distinct directory
gives Tauri a fresh WebContext key so it still attaches the
openclaw-canvas:// protocol closure, and incognito makes Wry swap in a
fresh *ephemeral* context carrying those protocols. Live-verified on a
Wayland/WebKitGTK box: the bundled page still loads
(location.href=openclaw-canvas://localhost/index.html, openclawA2UI
present, A2UI renders) and the canvas-webview dir holds no persistent
cookie/storage files.
2026-07-14 16:05:14 -07:00
..
audio.md fix(media): verify local STT acceleration before prioritizing it (#104210) 2026-07-11 13:58:53 +08:00
camera.md feat(linux): headless node device capabilities (camera, location, notifications) (#107193) 2026-07-14 02:30:36 -07:00
computer-use.md docs(security): clarify computer act authorization 2026-07-10 13:06:53 -05:00
images.md docs: rewrite published docs grounded in current source (#100142) 2026-07-05 00:32:47 -04:00
index.md feat(linux): canvas UI via CLI-node + Tauri app IPC bridge (#107633) 2026-07-14 16:05:14 -07:00
location-command.md feat(linux): headless node device capabilities (camera, location, notifications) (#107193) 2026-07-14 02:30:36 -07:00
media-understanding.md chore: migrate active GPT-5.5 references to GPT-5.6 (#104452) 2026-07-11 06:30:57 -07:00
presence.md feat(nodes): route alerts to the active computer (#105083) 2026-07-12 10:05:50 +01:00
talk.md feat(voice): universal talk waveform driven by real audio levels (#102901) 2026-07-09 16:33:25 +01:00
troubleshooting.md fix(computer): prevent stale, replayed, and post-cancel desktop actions (#103422) 2026-07-10 06:47:56 +01:00
voicewake.md feat(android): add foreground Voice Wake (#107081) 2026-07-13 21:48:29 -07:00