This is the opposite direction from Custom Functions. Events are your site telling the assistant something. Functions are the assistant asking your site to do something. They work well together and are configured separately.
Page views are automatic
If you use the standard embed snippet, you get this for free:history.pushState / replaceState and listening for popstate — always calling through to your router, never replacing it. If your router navigates some other way, report it yourself:
Emit your own events
Anything else worth knowing, send as a named event:What the assistant does with them
Nothing, immediately. An event is context, not a turn. The assistant will not stop mid-sentence to announce that you navigated, and it will not comment on an event unless the conversation makes it relevant. That is deliberate. An assistant that reacts to every click is a distraction, and reacting to a navigation the assistant itself performed would make it talk to itself. If you want a reaction, ask for it in the scenario prompt — for example: “If the visitor opens the pricing page while you are talking about features, offer to walk them through the tiers.”Limits
Keep event details small. This is a signal channel, not a data pipe — if the assistant needs a record, give it a Custom Function to fetch one.
Where it works
Live Website Events need a page to report from, so they work on the sidebar widget:
Nothing breaks elsewhere — there is simply no page sending events, and the assistant behaves as it always has.
Related
- Custom Functions — let the assistant act on your site, not just watch it.
- Embed API — putting the widget on an authenticated page.

