Agentic Frontends

Streaming tokens, tool progress, citations, cancellation and partial failure — plus the rule that a model suggesting an action is never the same as the action being authorized.

What the Frontend Owns in an Agent Product
▶ lab

The model runs elsewhere. The client is a UI for an operation that streams, takes tools, fails halfway and must never be trusted with authority.

Q · Where does the frontend stop and the agent begin, and which of these problems are actually mine?
Streaming a Response Without Melting the Device
▶ lab

Tokens arrive dozens of times a second on a thread that also has to paint. What you do per chunk decides whether the answer feels alive or the page feels broken.

Q · How do I render an answer as it arrives without re-rendering the world on every token?
Showing What the System Is Doing

Observable states — searching, retrieving, calling, processing — reported honestly. Not a dramatisation of thinking the system cannot actually show you.

Q · What do I show during the thirty seconds when the model is not producing text?
Citations and Answers With Holes In

A source the user can actually check, and an answer that admits what it is missing. Both are interface problems before they are model problems.

Q · How do I render an answer so that a person can tell how much of it to trust?
Stopping It, and Trying Again Safely

Cancellation is two-sided and retry is not free: a run that already called a tool has already changed something.

Q · What does stop actually stop, and what is safe to do again?
A Suggestion Is Not an Authorization
▶ lab

The model proposes; structured validation, a permission check and the backend decide. The UI shows only what was actually confirmed.

Q · The model wants to do something. What has to be true before it happens, and what does the interface owe the user?