How it works

Three ideas, and the apps assemble themselves.

The whole framework rests on three decisions. Together they turn a rigid app into a conversation that builds the right interface for each person, each moment.

01

The interface is drawn on the server, in the moment

Nothing is a fixed screen. For each turn, the system assembles a small tree of UI pieces and sends it down. The app just renders what it receives — it never assumes a shape ahead of time. That single decision is what lets the interface change from one message to the next.

02

Capabilities live as self-contained domains

A domain bundles everything a capability needs into one reusable unit — several skills working together, the facts and knowledge they rely on, the data handling behind them, the guardrails that keep them safe, and the interface they present. Reminders, food logging, web discovery, outreach: each is a domain. Add one, and it registers itself. From then on any agent can use it, and every future app inherits it, with only a little glue in between.

03

Agents orchestrate a trusted library — they don't improvise the risky parts

An agent chooses which capabilities to use and assembles the interface, guided by the conversation. But the parts that must be right — safety rules, compliance, anything sensitive — are settled, reviewed code. The agent works within those guardrails; it never invents them. Creativity where it helps, certainty where it counts.

Anatomy of a turn

What happens between "I want…" and "…there it is."

1

You say what you want

"Plan my meals for the week and remind me to prep on Sunday."

2

An agent reads the intent

It recognizes two capabilities are needed — meal planning and reminders — and reaches for both from the shared library.

3

It assembles the interface

A weekly plan renders as an editable card; a reminder form appears with Sunday already filled in. Both are built from the same primitives every other app uses.

4

You act, right in the chat

Tweak a day, tap "set." No screen to find, no menu to learn. The interface existed only for this moment — and it fit exactly.

The building blocks

One box of pieces. Endless arrangements.

Every interface on the framework — in every app — is snapped together from the same set of primitives. Because they nest inside one another freely, an agent can build anything from a one-line answer to a full working form, then discard it and build the next.

You give input

TextNumberDate & timeSwitch & checkboxSelect & multi-selectSliderFile & photo captureAutocomplete

The agent shows results

TextRich textImageData table & listLine / bar / pie chartAudio & videoAnimation

Things get composed

Rows & formsLists & drawersButtons & actionsPersistent side panelsValidation rulesCards nested in cards

Not a mock-up

This is how our apps run today.

Two live apps — a nutrition coach and a B2B sales engine — already share one framework: the same UI pieces, the same capability library, the same agents. Everything on this page is drawn from how they actually work, not a someday roadmap.