The model decides to call your JavaScript functions, Ferric runs them locally, feeds the results back, and the model answers — a full tool-calling loop in a browser tab on WebGPU. Same protocol as a cloud agent (OpenAI/Hermes tool-calls), but nothing leaves your machine: no server, no API key, no token bill.
Try it
Loads Qwen2.5-1.5B (~1.1 GB, once) to your GPU. The agent has one tool — add, a real JS function running in this page. Watch the model decide to call it, Ferric run it, and the model use the result.
Each tool call below is a real invocation of the JavaScript function in this page — the model chose to call it and supplied the arguments; the result is fed back so it can chain the next step.
Why it matters
The reasoning, the tool calls, and your data never leave the tab. No provider key, no server round-trip.
Hermes/OpenAI-style tool-calls — the same format cloud models use. Ferric's native server speaks it too; here it runs on WebGPU.
A tool is just a JavaScript function. The model gets the signatures, decides when to call, and you run it — DOM, fetch, anything.
The exact pure-Rust runtime that serves cloud, on the browser's GPU — bit-identical to the native build.