CopilotKit integrates Claude Agent SDK with AG-UI for React and mobile frontends
CopilotKit shipped an AG-UI integration that streams Claude Agent SDK agents into web and mobile frontends with generative UI and approval checkpoints. The adapter lets teams embed terminal-first Claude agents in React, Vue, Angular, and React Native without rewriting transport or state plumbing.

TL;DR
- CopilotKit's launch post says its new adapter streams a Claude Agent SDK agent into a frontend, replacing the terminal-only default with an in-app copilot surface.
- The integration exposes four concrete behaviors, according to CopilotKit's feature list: real-time streaming, runtime-chosen generative UI, human approval checkpoints, and reuse across React, Angular, Vue, and React Native.
- The AG-UI README describes the protocol as an event-based standard for connecting agents to user-facing apps, while CopilotKit's docs PR shows the Claude adapter was documented with state sync, frontend tools, and custom UI components.
- CopilotKit's follow-up links both a live dojo demo and the integration code, which is unusually concrete for a small SDK bridge ship.
You can jump straight to the dojo demo, skim the docs PR for the actual feature surface, and inspect AG-UI's adapter code for TypeScript and Python. The TypeScript adapter manages per-request query() calls with session resume, while the Python adapter runs per-thread session workers, so this is transport and lifecycle plumbing, not just a chat widget veneer.
AG-UI adapter
The core move is simple: take a Claude Agent SDK backend and expose it over AG-UI, which the project README describes as an open, lightweight, event-based protocol for agent-human interaction.
That matters technically because AG-UI already defines standard event types and a middleware layer for different transports, so the Claude bridge plugs into the same frontend contract other agent backends use. In the adapter docs PR, CopilotKit documented quickstarts for both greenfield apps and existing Claude agents, plus tool rendering, state rendering, frontend tools, and custom components.
Generative UI and approval gates
CopilotKit's feature post breaks the integration into four pieces:
- Real-time streaming from the Claude agent into the UI
- Generative UI, where the agent chooses what to render at runtime
- Human-in-the-loop approval before the agent changes the app
- One agent backend reused across React, Angular, Vue, and React Native
The dojo demo makes those abstractions less hand-wavy. Its Claude Agent SDK examples are split into Agentic Chat, Backend Tool Rendering, Human in the Loop, and Tool Based Generative UI, plus agent state collaboration.
Session plumbing, not just presentation
The interesting detail is buried in the adapter implementations. The TypeScript adapter says it manages the SDK query() lifecycle internally with session resume for multi-turn use, while the Python adapter manages client lifecycle through per-thread session workers.
That is the real work here. Claude Agent SDK already had the backend loop, but product teams still needed state sync, event transport, and approval UX before non-developers could touch it. This bridge ships those pieces as reusable adapter code instead of app-specific glue.
Microsoft is already in the next wave
Two days before the Claude announcement, CopilotKit's Microsoft teaser said the company was working with Microsoft on another AG-UI integration, with Microsoft handling the agentic backend and AG-UI handling the frontend connection.
That makes the Claude ship look less like a one-off SDK connector and more like CopilotKit's broader pitch: backend frameworks vary, frontend agent transport should not.