mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-22 14:01:14 +00:00
* feat(canvas): let widget buttons send prompts into web chat Inline show_widget documents get a sendPrompt(text) bridge: a private MessageChannel offered to the Control UI before widget code runs. The chat adopts only the first offer per frame, requires transient user activation, a visible focused frame, plain text (no slash commands), and rate limits 10 prompts/minute per widget. Accepted prompts run the normal user send path of the owning chat pane. * fix(canvas): appease lint/knip/docs gates for widget prompts Split widget prompt tests into their own file, drive validation and rate limits through the real port path instead of exported internals, use addEventListener on the adopted port, and regenerate docs_map. * fix(canvas): install widget listeners per window for non-isolated tests Module-boolean listener flags broke in shared vitest workers where each test file gets a fresh jsdom window; key installation by window instead and give port flushing more headroom.