The page calls the model directly from this browser. Your key is stored in this browser's localStorage and is sent only to the provider you pick — it never reaches this site's server, because there isn't one.
A key in a browser is readable by anything that can run script on this page. Use a key you are willing to rotate, and remove it when you're done.
One prompt, two runs, side by side. The interesting difference is rarely the prose — it's which tool each model reaches for and what arguments it passes.
Define a tool and the model is offered it on the next turn, alongside the built-in ones. It is stored in this browser's localStorage.
The body runs in a restricted scope: it sees data, args and h, and nothing else — no window, no document, no fetch, no localStorage. It cannot read your API key. This is your own browser tab: paste hostile code and the only session you can damage is this one.
In scope: data (the site corpus: data.streak, data.nhl), args (what the model passed),
and h — h.lines(array), h.top(rows, key, n), h.find(rows, name),
h.pct(x), h.round(x, dp), h.num(x, fallback).