CopilotKit: A Frontend Layer for Agentic Apps That Spans React, Angular, 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 open-source TypeScript SDK that connects agent backends to multiple frontend surfaces, from React and Angular to Slack and Teams. It standardizes the wire protocol with AG-UI and adds generative UI, shared state, and human-in-the-loop features.
- Who is it for?
- Adopt CopilotKit if you are building a frontend for an agent backend and need to support multiple surfaces, especially React, Angular, React Native, or Slack, without rewriting agent logic. Do not adopt it if you need a fully self-contained agent runtime, because CopilotKit is a UI and protocol layer, not an agent framework.
- 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 1 day 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 14, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
What CopilotKit Solves and Who It Is For
The project started as a React library, according to the README, and has since expanded. That history matters because it explains why React is the only platform marked GA, while Angular, Vue, and React Native are marked Supported. The GA status for React means the team treats it as production-ready. The other platforms are usable but may lag in feature parity. For an engineering team, that distinction is the first thing to check before committing.
The AG-UI Protocol as the Unifying Wire Format
The README lists specific features that ride on top of this protocol: backend tool rendering, generative UI, shared state, and human-in-the-loop. Backend tool rendering means an agent can call a tool that returns a UI component, and that component appears in the client. Generative UI goes further: the agent can generate and update UI components dynamically at runtime based on user intent. Shared state is a synchronized layer that both the agent and the UI can read and write in real time. Human-in-the-loop lets the agent pause and ask for user input or confirmation before continuing. These are not hypothetical features; they are the mechanisms that make an agent feel interactive rather than a simple chat. The protocol is what enables them to work consistently across surfaces.
Getting Started: Commands and Configuration
One practical detail: the quick start command is npx, which means you need Node.js installed. The project is TypeScript, so the npm ecosystem is the primary distribution channel. The Angular package has its own release version, angular/v0.4.0, which suggests that Angular support is maintained separately from the main v1.69.x line. That split can be a maintenance consideration, as updates to the core may not immediately reach the Angular package.
The Channels SDK: Taking Agents into Slack and Teams
The Slack integration is not just a simple bot. The README describes threads and approvals, which are agentic patterns that require the agent to pause and wait for user action. That is a different interaction model than a simple command bot. If your organization lives in Slack, this could be the most valuable part of CopilotKit. But it requires your agent backend to support the AG-UI protocol and the human-in-the-loop semantics. The documentation for Slack is linked, but the README does not show the setup steps, so you will need to follow that guide.
Self-Learning Agents: The Early Access Caveat
The README also mentions threads and persistence, capturing full interaction history including generative UI, human-in-the-loop, and shared state. That is a useful capability for debugging and for the self-learning feature. But again, the README does not explain how persistence is implemented or whether it is part of the open-source core. If you need audit trails or replay, you will need to investigate the docs.
Limitations and Failure Modes
A failure mode is the human-in-the-loop feature. If your agent pauses for user input, the UI must be able to resume the interaction. That requires the shared state to be correctly synchronized. If the state layer fails, the agent may hang or the UI may show stale data. The README does not describe error handling for these scenarios. Another failure mode is the use of generative UI. If the agent generates a UI component that does not exist in your component registry, the client will not know how to render it. The README does not explain how you register custom components. You will need to read the docs. Finally, the self-learning feature, if used, could alter agent behavior in unpredictable ways based on user feedback. That is a double-edged sword: it can improve the agent, but it can also cause regression if the feedback is noisy. The early access status means you are an experimenter, not a customer.
Alternatives and How They Differ
For teams already using LangGraph, CopilotKit is a natural fit because the quickstart guide is for LangGraph. If you are not using LangGraph, you need to check whether your agent framework supports AG-UI. The AG-UI protocol is the real differentiator, and it may be adopted by other frameworks over time. The README claims adoption by Google and Microsoft, which suggests the protocol is gaining traction. But adoption does not guarantee compatibility with your specific setup.
Maintenance and Upgrade Cost
Upgrade cost is moderate. The active development means you get bug fixes and new features, but you also need to keep up. The agent skills are designed to reduce that cost by teaching AI coding assistants how to handle CopilotKit. That is an innovative approach, but it depends on the quality of the skills. The README does not provide details on the skills' content. The main upgrade risk is the platform-specific packages. If you use React, you are on the GA path. If you use Angular, you are on a v0.4.0 path, which may have breaking changes with each release. The Channels SDK is also in flux. For a production deployment, you should pin versions and test carefully.
Editorial conclusion
Adopt CopilotKit if you are building a frontend for an agent backend and need to support multiple surfaces, especially React, Angular, React Native, or Slack, without rewriting agent logic. Do not adopt it if you need a fully self-contained agent runtime, because CopilotKit is a UI and protocol layer, not an agent framework. Verify first whether the AG-UI protocol is compatible with your existing agent backend, and check the early access status of self-learning features before relying on them. Also confirm that the specific platform you target, such as Vue or mobile, has the maturity you need, since some are marked supported but not GA.
Community notes