CopilotKit: the frontend layer that connects agents to React, Angular, Vue and Slack
The Frontend Stack for Agents & Generative UI. React, Angular, Mobile, Slack, and more. Makers of the AG-UI Protocol.
At a glance
- What is it?
- CopilotKit is an MIT-licensed TypeScript SDK for building agent-native applications, with Generative UI, shared state and human-in-the-loop workflows. It is strongest when you already have an agent and need a UI layer across several surfaces.
- Who is it for?
- Adopt CopilotKit when you already have an agent and need one UI layer across React, Angular, Vue, React Native or Slack, and when you accept that the AG-UI wire protocol sits between your backend and the client. Skip it if you want a hosted chat widget with no backend work, or if you need a stable public API for self-learning agents, which the README labels early access.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 2 days ago.
- What is it written in?
- Mainly TypeScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 27, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What CopilotKit solves for teams that already have an agent
The hard part of shipping an agent product is rarely the model call. It is the plumbing between an agent loop running on a server and a React tree that has to render whatever the agent decides to do next. CopilotKit positions itself as that layer. The README calls it "the horizontal layer between your agents and your users", and the pitch is that the same agent can power a web app, a mobile app and a Slack workspace without being rewritten per surface.
The intended user is a product team that already has an agent backend, often built with LangGraph or a similar framework, and now needs chat, streaming tool calls and UI that the agent can drive. The README lists the feature set plainly: a customizable chat interface with message streaming and tool calls, backend tool rendering where tools return UI components rendered on the client, Generative UI where components are generated and updated at runtime, shared state that both agent and UI read and write, and human-in-the-loop pausing so an agent can ask for confirmation before continuing.
That combination is the actual product. Any one of those pieces is a weekend of work. Keeping all five synchronized across four frontend frameworks and two chat surfaces is not, and that is the gap CopilotKit is selling into.
AG-UI is the wire protocol underneath the framework packages
CopilotKit's maintainers also maintain the AG-UI Protocol, and the README states that CopilotKit handles the UI layer for each framework while AG-UI handles the wire protocol. That split matters when you evaluate lock-in. The protocol repository is separate, and the README claims adoption by Google, LangChain, AWS, Microsoft, Mastra and PydanticAI. If those integrations hold, your agent backend speaks AG-UI and the CopilotKit packages are a client of it, which means replacing the frontend layer later is a smaller job than replacing a proprietary runtime.
The repository layout supports the multi-surface claim. The packages directory is a pnpm and Nx monorepo, and the build script excludes native runtimes and skill adapters into separate targets such as build:native-runtimes for runtime-python, runtime-go, runtime-ruby and runtime-dotnet, and build:skill-adapters for Python and .NET intelligence packages. There is a sdk-python directory at the top level. So the TypeScript frontend is not the whole repository; there are server-side runtimes in four languages plus Python SDK work.
One consequence of this architecture deserves attention. Because the agent drives UI through a protocol, the client has to be able to render components the agent names. That is powerful for Generative UI and awkward for teams with a strict component allowlist, since the mapping between what the agent requests and what the client will draw becomes a security-relevant surface you own.
Installing CopilotKit and getting a first app running
The README gives a single scaffolding command and says you need an LLM key from OpenAI, Anthropic, Gemini or similar. Run it in an empty directory:
npx copilotkit@latest createThe README claims this gets you up and running in under five minutes and describes the result: CopilotKit installed, a provider configured so context, state and hooks are ready, the agent and UI connected so actions stream and UI renders immediately, and the app deployment-ready. What you should see after the command is a project where those four things are already wired, rather than an empty scaffold.
There is a second command aimed at coding agents rather than at you. CopilotKit ships agent skills that teach Claude Code, Codex, Cursor, Gemini and others how to set up, build with, integrate, debug and upgrade the library. Install them into any project directory:
npx copilotkit@latest skills installThe README says running it again refreshes to the latest skills, which is a small but real maintenance detail: the skills are versioned artifacts you re-pull, not files you edit once. For framework-specific setup, the README points at docs.copilotkit.ai, with separate quickstarts for React and Next.js, React Native and Slack. Angular is marked Supported with source code and a quickstart in packages/angular; Vue is marked Supported with source code, and the quickstart is listed as coming soon. That difference is worth noting before you plan a Vue rollout.
Where the documentation is thin and the design costs you something
Self-Learning is the clearest limitation. The README describes Continuous Learning from Human Feedback, with in-context reinforcement learning, automatic prompt augmentation, per-user adaptation, and threads and persistence across sessions. It also marks the feature early access and says the team is onboarding now. So the capability is real enough to be described in detail, but you cannot treat it as production-ready, and the README does not document rollback or what happens to learned state if you turn it off. If per-user adaptation is central to your product, that gap is a planning risk, not a footnote.
The Vue story has a similar shape. Vue is listed as Supported, but the quickstart is "coming soon", so the fastest path is reading the source in packages/vue rather than following a guide. Angular is further along, with a dedicated package and a recent release, angular/v0.4.0 on 2026-08-28, but its version numbering is separate from the core line, which reached v1.69.3 on 2026-08-27. Two version tracks mean two upgrade cadences to track.
The wrong-tool case is equally clear. If you want a chat widget you can drop into a marketing site with no backend, CopilotKit is more machinery than you need: it assumes an agent, a protocol hop and a client that renders agent-selected components. And the README lists Discord, WhatsApp, Telegram, Google Chat, iMessage and SMS as coming soon, so anyone planning a messaging rollout beyond Slack and Microsoft Teams is waiting on the roadmap, not configuring a flag.
CopilotKit compared with assistant-ui and with using AG-UI directly
The most common comparison is with assistant-ui, and the difference is architectural rather than cosmetic. assistant-ui is a React chat component library: you get the thread, the message primitives and the composer, and you wire your own backend to it. CopilotKit assumes an agent backend and adds the pieces a chat library does not have, namely shared state that both sides write to, human-in-the-loop pausing, and Generative UI where the agent drives component rendering. If your product is a chat interface over a model, the smaller library is the better fit. If your product is an app where the agent changes what is on screen, CopilotKit is aimed at exactly that.
The other comparison is AG-UI itself. Using the protocol directly means you implement the client side of the event stream and decide how to map events to your own components. That gives you full control and no dependency on CopilotKit's abstractions, at the cost of building the chat surface, the state synchronization and the approval flow yourself. CopilotKit's value is that it has already made those decisions for React, Angular, Vue and React Native.
There is also CopilotKit Intelligence, a separate offering referenced in the README for the self-learning work, available via CopilotKit Cloud or self-hosted. That is the boundary between the open source SDK and the commercial product, and it is the part of the stack where the README gives the least operational detail.
Licence, maintenance and what an upgrade actually involves
The repository is MIT licensed, which permits commercial use and modification. The README links to the LICENSE file at the repository root. Nothing in the README suggests a dual-licence arrangement for the core SDK, but CopilotKit Intelligence is a separate product, so do not assume the same terms cover it. That is a question for the vendor, not something to infer from the repository licence file.
Maintenance is active by the evidence available. The last push was on 2026-08-28, and the repository is not archived. Recent releases include angular/v0.4.0 on 2026-08-28, v1.69.3 on 2026-08-27 and v1.69.2 on 2026-08-26. The presence of a .changeset directory, a release.config.json, renovate.json and a commitlint.config.js in the repository root indicates a release process with automated dependency updates and conventional commits, which usually means upgrades arrive on a predictable cadence rather than in bursts.
The upgrade cost is concentrated in two places. First, the core version line moves quickly, so pinning and reading the changelog is part of the job. Second, the agent skills are refreshed by re-running npx copilotkit@latest skills install, which means your coding agent's instructions about this library can drift from the version in your lockfile if you do not re-run it. Neither is unusual, but both are recurring tasks rather than one-time setup.
Editorial conclusion
Adopt CopilotKit when you already have an agent and need one UI layer across React, Angular, Vue, React Native or Slack, and when you accept that the AG-UI wire protocol sits between your backend and the client. Skip it if you want a hosted chat widget with no backend work, or if you need a stable public API for self-learning agents, which the README labels early access. Before committing, verify that the packages for your target framework are published on npm at the version your app needs, and check whether the Channels SDK for Slack or Microsoft Teams is what you actually want, since the README treats it as a separate product surface from the core SDK.
Frequently asked questions
What does CopilotKit do?
It is an SDK for building agent-native applications, providing chat UI, backend tool rendering, Generative UI, shared state and human-in-the-loop workflows. The README describes it as the layer between your agents and your users, across React, Angular, Vue, React Native, Slack and Microsoft Teams.
Is CopilotKit free to use?
The repository is MIT licensed, so the core SDK can be used commercially. CopilotKit Intelligence, which covers the self-learning features, is described in the README as a separate offering available via CopilotKit Cloud or self-hosted, so its terms are not covered by the repository licence.
What is CopilotKit used for?
It is used to connect an existing agent backend to a user interface so the agent can stream messages, call tools that render UI components, read and write shared state, and pause for user confirmation. The README lists web, mobile and Slack or Microsoft Teams as target surfaces.
Is CopilotKit open source?
Yes. The repository is licensed under MIT and the source is public, including packages for React, Angular and Vue plus server-side runtimes in Python, Go, Ruby and .NET. The README also references a separate commercial offering, CopilotKit Intelligence.
Is CopilotKit from Microsoft?
The README does not say so. It describes CopilotKit as the company behind the AG-UI Protocol and lists Microsoft among the adopters of that protocol, alongside Google, LangChain, AWS, Mastra and PydanticAI. Microsoft Teams is listed as a supported channel.
How does CopilotKit relate to AG-UI?
The README states that the same maintainers are behind the AG-UI Protocol, that AG-UI handles the wire protocol and that CopilotKit handles the UI layer for each framework. Your agent logic stays the same while the protocol carries events between backend and client.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/copilotkit-copilotkit)
Community notes