Sep 10One Agent, Three Surfaces

What Is Agentic UI?

Agentic UI is user interface built for humans and AI agents to work in the same application. It streams agent work as it happens, accepts human steering and approvals mid-run, renders agent-generated interface alongside developer-built components, and keeps application state synchronized between the user and the agent. Where traditional UI assumes a human issuing commands to deterministic software, agentic UI assumes a running agent whose work the human watches, directs, and corrects.

Live: an agentic interface streaming agent work and rendering generative UI. Try it.

Software interfaces have always been built for one kind of actor: a human clicking through screens that behave the same way every time. AI agents introduce a second actor, one that works over minutes, produces interface as well as text, and needs to be supervised while it runs. Agentic UI is the interface layer built for that two-actor world.

What makes a user interface agentic?

Four capabilities separate an agentic interface from a conventional one. An application does not need all four on day one, but a mature agentic UI has each of them.

The four capabilities reinforce each other. Streaming makes the agent’s work visible, shared state makes it grounded, human-in-the-loop makes it correctable, and generative UI makes it usable. Remove one and the others weaken: approvals without streaming ask users to judge work they never saw, and generative UI without shared state renders components that drift out of sync with the application.

Agentic UI vs. traditional UI

Traditional UI is built on the request-response assumption: the user acts, the system answers, and the exchange ends in milliseconds. Everything about conventional interface design flows from that assumption. Screens are deterministic because the software is. Loading states are brief because responses are fast. Nothing changes unless the user changes it, so there is no need to display another actor’s activity.

Agents break every one of those assumptions. A session is long-running, so the interface must narrate progress instead of blocking on a result. The agent acts on the application, so the interface must render changes the user did not make. Outcomes are non-deterministic, so the interface must support review and correction rather than assume the first result is final. Connections drop mid-run, so sessions must reconnect and resume without losing the thread. Traditional UI has no vocabulary for any of this; agentic UI is that vocabulary.

Agentic UI vs. chat UI

The two terms get conflated because chat was the first surface where agents met users, and for a while the chat window was the only agentic interface most people had seen. But chat is one surface; agentic UI is the capability set. A chat window with none of the four capabilities (a text box that returns completed answers) is chat UI without being agentic. A dashboard with no conversation anywhere can be deeply agentic if it streams agent activity, shares state with a running agent, and asks the user to approve consequential actions.

The practical consequence: “add a chatbot” and “build agentic UI” are different projects. The first adds a conversational widget. The second wires an agent into the application’s interface so that humans and agents can genuinely work together, wherever in the application that work happens.

Where does agentic UI show up?

Agentic UI appears on three application surfaces, distinguished by how much the application mediates the interaction.

  1. Chat. A threaded, turn-based conversation where agent work streams into the thread and generative UI appears inline as cards and blocks. Support agents, Q&A, and guided workflows live here.
  2. Chat plus canvas. A conversation pane beside a shared working area. The chat carries steering and approvals while the canvas holds the evolving artifact: a document, a plan, a design, a spreadsheet. This is the natural surface for co-creation, where shared state does the heaviest lifting.
  3. Chatless, or embedded. No conversation surface at all. The agent communicates with the application, and the application renders agent output as part of its native interface: suggestions inside a dashboard, drafted fields inside a form, triage decisions inside a queue. Users may never think of it as an agent; they experience a product feature.

Applications built around these surfaces from the ground up, rather than adding an assistant to the side, are what agent-native applications are. And the depth of agency behind the interface varies too: the same surfaces serve both copilots and autonomous agents, a distinction covered in copilots vs. agents.

What infrastructure does agentic UI need?

Every capability above is a transport problem before it is a design problem. Streaming needs an event channel that survives disconnects and resumes. Shared state needs synchronization between the agent runtime and the application frontend. Human-in-the-loop needs a bi-directional connection that can pause an agent mid-run and carry the user’s answer back. Generative UI needs a wire format for components, not just tokens.

In the three buckets of the agentic world, this is the second bucket: agent-user connectivity, the layer that connects agents to user-facing applications. It sits alongside agent orchestration (how agents reason and call tools, where MCP connects agents to tools and A2A connects agents to each other) and agent learning (how deployed agents improve from every interaction).

The connectivity layer is standardized by AG-UI, the open Agent-User Interaction protocol. AG-UI defines the event stream that carries agent output, state synchronization, human-in-the-loop interactions, and generative UI between any agent backend and any application frontend. With the transport standardized, agentic UI becomes a design surface to build on rather than infrastructure to reinvent, which is the same shift HTTP brought to the web: nobody builds the pipe anymore, they build what flows through it.

FAQs

What is an example of agentic UI?
A travel app where an agent plans an itinerary is a clear example. The interface streams the agent's progress as it searches, shows each proposed flight and hotel as rendered cards rather than raw text, pauses for the user to approve the booking step, and updates the shared itinerary the moment either the user or the agent edits it. Every one of those behaviors (streaming, generative UI, human approval, shared state) is agentic UI at work.
Is agentic UI the same as generative UI?
No. Generative UI is one ingredient of agentic UI: it covers how an agent produces interface, from choosing among developer-built components to composing or generating UI itself. Agentic UI is the whole interaction layer, which also includes streaming the agent's work, human-in-the-loop approvals, and state synchronization between the user and the agent. An application can have generative UI without the rest, but it is not fully agentic until the other capabilities are present.
Do I need a chat window to have agentic UI?
No. Chat is one surface among three. Agentic UI also appears in chat plus canvas layouts, where a conversation drives a shared working area, and in chatless or embedded form, where agent output renders inside the application's native interface with no conversation visible at all. The defining traits are streaming, steering, shared state, and agent-generated interface, not the presence of a message thread.
What is the difference between agentic UI and agentic UX?
Agentic UX is the design discipline: the principles for making agent behavior legible, keeping humans in control, and calibrating trust. Agentic UI is the concrete interface layer that implements those principles: the streamed output, the approval prompts, the rendered components, the synchronized state. UX names the goals; UI names the built artifact that delivers them.
How do I build agentic UI?
The interaction layer between agents and applications is standardized by AG-UI, the open Agent-User Interaction protocol, which carries streaming output, shared state, human-in-the-loop interactions, and generative UI as protocol events. Frameworks like CopilotKit implement AG-UI and provide the application-side components, so the same agentic UI capabilities work across agent frameworks rather than being rebuilt per backend.

Related concepts

Talk to an engineer about agentic UI

Bring your use case. A CopilotKit engineer will walk you through how this applies to what you are building.