CCopilotKit helps teams embed AI agents inside applications with app-native interfaces, not just chat. Its open-source AG-UI protocol standardizes how agents connect to front ends, supporting streaming chat, front-end tool calls, state sharing and human-in-the-loop flows, and works alongside MCP and A2A. Beyond the protocol, CopilotKit offers an enterprise toolkit including CopilotKit Enterprise Intelligence for optional self-hosted deployment, so companies can keep existing agent stacks while hardening production UIs. The product differentiates itself by providing a standardized front-end connection (AG-UI), a path to self-hosted, production-ready agent UIs, and enterprise tooling, with adoption across major cloud providers and big customers. The company aims to help enterprises deploy reliable, integrated AI agents inside their applications at scale, with options for self-hosting and hardened security.
Work here?Claim your company
Industries
Company Size
11-50
Company Stage
Series A
Total Funding
$54M
Headquarters
Seattle, Washington
Founded
2023
See people who can refer or advise you
Help us improve and share your feedback! Did you find this helpful?
Total Funding
$54M
Above
Industry Average
Funded Over
3 Rounds
Industry standards
Introducing CLiF: Continual Learning from Full-Stack Trajectories. By Anmol Baranwal and Eli Berman October 13, 2026 Today CopilotKit is releasing CLiF - Continual Learning from Full-Stack Trajectories in early access! CLiF turns the work your customers and employees already do in your product into the skills, evals, and fine-tuning data your agents need to do that same work reliably in production. It's fully self-hostable, and everything it produces is yours to export. Your agents could already learn from their own conversations in CopilotKit Intelligence. CLiF now securely captures both sides of the work (agent trace and user actions) through the AG-UI protocol. To see what CLiF can do for your product, book a demo, and its engineers will run it live on your use case. Here's why CopilotKit built it, and why every agentic product will need full-stack trajectories. Why agents stall before production. Agents like Claude and Codex now take on whole tasks by themselves. Your users want the same in your product, from your built-in agent or any external agent they bring. But even agents using top-tier models like Fable and Astra struggle to carry out complex, end-to-end tasks in your product consistently enough to deploy, at a cost and speed that make sense. At companies shipping agents at scale, the pattern is the same. You grind out evals for the flows that matter most, often thousands of cases, each written by hand. Then you improve the agent bit by bit until it passes enough of them to go live. That work is slow and expensive: * Prompts grow with every edge case. * Harness code fills up with special cases: hardcoded step orders, extra checks, custom retries. * Memory piles up with every conversation, and the agent can't tell which parts matter. * Fine-tuning comes last, if at all, because the right data is hard to collect. Even after launch, users find themselves nudging the agent. Guiding it, correcting it, adding context it was missing. Then the next conversation starts, and it needs the same help again. Meanwhile, the people using your product do this exact work every day. Your users already do the work in your product. Your customers and employees already know which actions to take, and in what order, to get the job done. They've done it hundreds of times. Your agent has to deduce all of that from prompts, skills, and hundreds of tools and APIs, so it guesses, retries, or hands the task back. Say you run a support platform. A rep gets a ticket: "I was charged twice." They check the plan, find the duplicate charge, and since the customer is on an annual plan, they issue an account credit instead of a refund, because that's what their team does. No doc or prompt says so. You could add that rule to a prompt. But there are hundreds like it, and you only find the missing ones when the agent gets them wrong. Products already record clicks, funnels, and session replays for people reading dashboards. To teach an agent the job, you need trajectories, securely captured as they happen: the full record of every action taken to complete a task, whether by a person or an agent. In your product, that's a product trajectory: every click, API call, and agent conversation behind a task. With product trajectories: * Your agent improves every day from how your customers and employees actually work. * The problems that come up most get fixed first. * You approve every change before your agent uses it. By hand, you would make one or two fixes a day, usually after a customer has already complained. Teams using product trajectories can see a significant drop in repetitive tasks, up to 80%, within the first two weeks. Continual learning from full-stack trajectories. CLiF is part of CopilotKit Intelligence and learns from full-stack trajectories captured over AG-UI (Agent-User Interaction Protocol). AG-UI is the open protocol that connects agents to user-facing apps, supported by Google, Microsoft, Amazon, and most of the ecosystem. AG-UI sits between your agent and your users on any surface, so it sees both sides of the work: * Agent trajectory (agent trace): every run, tool call, and state change your agent made, and what it returned. * Product trajectory (user actions): what was on your users' screens, the buttons they clicked, and the server requests they triggered. Together, that's a full-stack trajectory. Because it runs on AG-UI, CLiF works with any agent harness and any model under the hood, whether your agent lives in your web app, mobile, Slack, or Teams. CLiF reviews new trajectories on a schedule and finds the patterns, including the friction people silently work around. That friction often repeats across thousands of sessions and shows your agent exactly what to learn next. CLiF turns those patterns into proposed skills, and once you approve them, they reach your agent without redeploying. Skills are where it starts. From there, CopilotKit want every team to own the full cycle: * Securely capture every agent and user action as trajectories. * Use agents to make sense of that data at scale. * Turn it into evals and environments. * Review the results together, agents and humans. * Fine-tune smaller, faster open models for your most important tasks. What you get from full-stack trajectories. CLiF turns them into: * Skills for your agent or MCP server, built from patterns across your trajectories. * Production-based evals, built from what your users actually do and ready for the eval platform you already use. * Fine-tuning datasets for smaller models that run faster and cheaper on your most important tasks. * Full-stack trajectories you can export to any observability platform. All of it works with your existing observability and evals stack. The more your product gets used, the more of its work your agents can take on. Learning from agent trajectories, available today. Every conversation with your agent is an agent trajectory, stored in AG-UI Streams: the messages, tool calls, generative UI, state, and more. When a user corrects the agent, asks for a different format, or adds context it was missing, that becomes a signal CLiF can learn from. In CopilotKit Intelligence, you organize these trajectories into learning containers, for example, one for expense review and another for onboarding. A container only learns from its own threads, so a skill learned from expense reviews stays with expense reviews. Every learning run surfaces Product Insights: the recurring requests and friction in those conversations, each linked to the threads behind it. When the evidence supports a reusable lesson, CLiF proposes it as a skill. Each proposed skill is a SKILL.md you review, approve, and can ship with your project. Approved skills reach your agent without a redeploy, and each one stays readable and reversible. Around that loop, Intelligence lets you: * Import the threads you already have from a LangGraph Server or LangSmith Deployment, so you don't start from zero. * Run the analysis manually, or on a schedule once a container has at least 15 eligible threads. * Deliver skills automatically through adapters for LangGraph (Python and TypeScript), Mastra, Google ADK, Microsoft Agent Framework, and CopilotKit's built-in agent. Setup is one prompt you paste into your coding agent. * Download published skills with the CLI as plain SKILL.md files for any other agent. Fully self-hostable. CLiF is fully self-hostable, so your data stays inside your own network. You can self-host CopilotKit Intelligence on your own Kubernetes cluster with its Helm chart, or on AWS ECS/Fargate. You bring your own Postgres, Redis, and identity provider, such as Okta, Azure AD, or Keycloak, and keep secrets in the store you already use. Your trajectories, skills, and everything learned from them stay inside your VPC or on-prem. You can also send traces to your own OpenTelemetry collector. Learning from agent trajectories also runs on its managed cloud for the fastest setup. Its engineers can help you set it up. If you're planning an enterprise self-hosted deployment, book a call and CopilotKit'll walk through it with you. Get started. Learning from agent trajectories works today, and product trajectories are in early access. Want to see CLiF on your product? Book a demo, and CopilotKit'll take your use case and show how full-stack trajectories generate the exact evals and skills to get your agents' success rates above the line. The agentic ecosystem is moving from agent trajectories to full-stack trajectories. The products whose agents learn from how work actually gets done will pull ahead. Follow CopilotKit on Twitter for updates. If you get stuck, reach out in the CopilotKit or AG-UI communities.
Introducing Open Intelligent UI: the open-source alternative to ChatGPT's Intelligent UI. By Anmol Baranwal and Eli Berman October 9, 2026 Today, CopilotKit is releasing Open Intelligent UI - the open-source alternative to ChatGPT's Intelligent UI! OpenAI shipped Intelligent UI this week. ChatGPT now answers with charts, maps, working tools and creates interfaces on demand. But it's closed, runs only on OpenAI's models and only lives inside ChatGPT. There is no API to bring it into your own product. Open Intelligent UI gives you the same experience in your own app. You can bring any agent through AG-UI and use any model. It's fully open source and works with your existing components. Want this in your own product? Book a call with its engineers and CopilotKit'll help you set it up with your components and design system. What's inside. Your agent can now build interfaces on demand in your own agentic app. Here's everything you get! * You can visualize algorithms like binary search, BFS and sorting, step by step. * 3D scenes are built with Three.js. You can rotate a model and control it with sliders. * The agent builds working calculators, games and simulations that you can use right in the chat. * Trips are plotted on a real map with numbered stops and destination photos. * The agent picks the format for each answer. A quick fact stays as text, a trend becomes a chart and a process becomes a diagram. * The interface streams in while the agent is still generating it. * Generated code runs in an isolated iframe and can only load libraries from an approved list of CDNs. You can download any generated interface as a standalone HTML file. It's built on CopilotKit's Open Generative UI and the agent behind it runs on LangChain Deep Agents. For the models, it uses OpenAI to write the answer and Jev from TypeSafe to pick the format. The hard part of Generative UI. You don't want your agent building interfaces that don't feel like part of your product. It builds a chart or a form, but the fonts, colors and components aren't yours. Even OpenAI ran into this. Andrew Chen from their design team wrote after the launch that "the hardest part of generative UI isn't generating the UI". The more interesting challenge was "getting it to feel like it actually belongs in ChatGPT". Now that it's live in Claude as Artifacts and in ChatGPT as Intelligent UI, users will expect it from every agentic product. And your team already has a design system and a full catalog of components you use across your product. Generative UI should be built with what you already have: * Your design system * Your existing components * Your real data and each user's context OpenAI solved this for ChatGPT. CopilotKit solves it for your product, and supports every generative UI approach, including A2UI (Google's generative UI spec). The full generative UI spectrum. CopilotKit supports all the generative UI approaches in the agentic ecosystem. The spectrum runs from full control, where the agent only uses your own components, to full flexibility, where the agent writes the interface itself. Read more in the blog Generative UI Spectrum: How Agents Now Ship Their Own Interfaces, where you'll find the code for each approach, links to the docs and when to use each one. Here are a couple of examples built with CopilotKit. 1) A trip planner with Controlled generative UI, where the agent uses your existing components. It uses a live map, and the photos come from Wikipedia. 2) A snake game with Open Generative UI, where the agent builds the whole interface on the spot. Any agent, any surface. All of this is possible because of AG-UI (Agent-User Interaction Protocol), the open standard between agents and user-facing apps. Generative UI specs like A2UI and MCP Apps ride on top of AG-UI, so your agent can use any of them natively. You can swap the LangChain agent in Open Intelligent UI for Mastra, Google ADK, Microsoft Agent Framework or any other AG-UI agent, without touching the UI. Get started. Clone Open Intelligent UI and bring generative UI to your own app in minutes. You'll need an OpenAI key and a TypeSafe key, which you can add in the chat header when the app opens. git clone https://github.com/CopilotKit/OpenIntelligentUI.git cd OpenIntelligentUI make setup make dev CopilotKit'll keep shipping updates to Open Intelligent UI. Have an idea or found a bug? Open an issue or a PR on GitHub, and follow CopilotKit on Twitter for what's next. If you get stuck, reach out in the CopilotKit or AG-UI communities.
CopilotKit ships OpenDots to give AI agents web, voice, and Slack access. CopilotKit released OpenDots, a self-hostable template for persistent AI coworkers with their own computers, Slack access, and voice calls. · 1 hr ago Read 1 min * CopilotKit released OpenDots, a self-hostable, MIT-licensed template for always-on AI coworkers. * Each Dot gets its own role, permissions, and isolated computer with browser, files, and shell. * Agents move across web chat, voice calls, and Slack while sharing the same conversation context. * Built on AG-UI protocol with CopilotKit React SDK, Threads, Channels SDK, and OpenBot containers. * Human-in-the-loop review cards pause tool calls before any save, with retry-safe deduplication. * Alpha status: single-owner today, no shared editing, Slack and spoken delegation still need live verification. OpenDots packages agent UX for web, voice, and Slack. CopilotKit has released OpenDots, an open-source template for building persistent AI coworkers that operate through a web app, voice calls, and Slack. The MIT-licensed repository packages the interface and orchestration layers developers typically need to build themselves, including editable outputs, isolated agent environments, approval gates, and channel integrations. OpenDots organizes work into Spaces containing editable Pages and specialist agents called Dots. Each Dot has a defined role, scoped permissions, and an isolated computer. Researchers, writers, and Slack responders can complete tasks in separate sandboxes while leaving work on Pages that people can review and revise. Editable pages, scoped agents. OpenDots uses the AG-UI protocol to stream messages, tool calls, and agent state between a backend and a React interface. CopilotKit's React SDK and runtime render the experience, Intelligence preserves durable Threads for ongoing agent context, and the Channels SDK connects Slack. Page content and metadata are stored separately from conversation history, allowing each to persist independently. * Spaces and Pages: A document workspace with a visual editor, slash commands, autosave, and revision checks that stop stale requests from overwriting newer edits. Pro article This story is for Pro members. You've reached the end of the free preview. Upgrade to AlphaSignal Pro to read the full article - and everything else behind the paywall.
OpenMuse puts an agent in a browser and a terminal. OpenMuse is an alpha, self-hosted agent template that browses, runs commands and keeps a task record you can inspect. CopilotKit has published OpenMuse, a personal agent application that runs its own server, task worker and browser worker. The project is on github.com, where it is described as an alpha meant for self-hosting and for building on, under the MIT licence. What OpenMuse actually contains. The core of it is what the repository calls an agent computer: a persistent Chromium profile plus an optional Linux workspace. According to the project description, the agent can read public pages, run commands inside its own container, work with files, and move PDFs between the computer and the app. A person can open the browser or the terminal and continue the work by hand. The repository notes that graphical desktops and autonomous checkout are still future work. The second part is the record around the work. The activity surface is described as holding durable task plans, progress, input requests, pause, resume, cancel and retry, approvals, and saved receipts, with SQL leases used to recover interrupted work. Commands in the container are limited to 30 seconds and leave saved output and exit receipts. The interface is built with CopilotKit React Native for iOS, Android and web, and the repository invites teams to clone the template and customise it. Where this touches office work. Two of the four jobs BARGO works on are visible here. Approval Runner is the closer match: an agent that asks for input, waits for a sign-off and stores a receipt is the shape of a request that has to be routed and recorded rather than answered in a chat window. Document Desk is the second: the PDF path in the repository moves an attachment into a form, produces a filled copy and a reviewed reply, which is the same sequence as an invoice or a contract being read and entered into a business system. The limits matter as much as the features. This is an alpha. Live Google accounts and the richer thread features need their own configuration, and the deployment described in the repository uses a single owner behind a shared access key rather than multi-tenant authentication. The Docker computer and Google mail or calendar are not started by the default deployment blueprint. A team wanting to test the idea could start with one narrow, repetitive request that already ends in a written approval, run it against fictional data first, and check whether the saved receipts give an auditor enough to follow. Whether that holds up on real supplier documents is the question to answer before anything goes near a production system.
Introducing AG-UI 1.0: a stable spec for connecting any agent to any application. By Anmol Baranwal and Eli Berman September 30, 2026 CopilotKit is excited to announce AG-UI 1.0, with a full specification and major new features! AG-UI (Agent-User Interaction Protocol) is the open protocol that standardizes how AI agents connect to user-facing applications. It's adopted by Google, Microsoft, Amazon and Oracle, and supported by most agent frameworks, including LangChain, Mastra and Anthropic's Claude Managed Agents. AG-UI 1.0 introduces a stable specification that lays out clear rules for every event, backed by a JSON Schema that defines the exact fields each event carries. The TypeScript, Python and .NET SDKs are now generated from that schema. CopilotKit also incorporated feedback from the Anthropic, Pydantic AI and TanStack teams into the spec. Beyond the spec, 1.0 brings subagent support, metadata for sending custom data to the frontend, multimodal tool results, human-in-the-loop interrupts, token usage and more. AG-UI 1.0 is backwards compatible, so your existing agents and apps keep working. Let's start with a quick intro to AG-UI, then get into what's new in 1.0, how the spec works, and how to upgrade. npx create-ag-ui-app@latest What is AG-UI. Agents break the traditional request-and-response model. They stream tokens, call tools mid-response and spawn subagents. Since HTTP returns one response per request, the frontend has to parse the stream, track what the agent is doing, and map it all to the UI. Every agent framework does this differently, so you end up maintaining custom boilerplate for each one. AG-UI (Agent-User Interaction Protocol) standardizes how agents communicate with user-facing applications. Instead of a custom streaming layer, it defines a shared bi-directional event stream between the agent backend and the frontend. * The agent endpoint receives the request. A framework bridge turns your agent's native output into AG-UI events, and the endpoint streams them back. * The AG-UI client, usually an SDK in your app, sends the request, checks every event against the spec, and hands each one to your UI. That event stream covers the full agent lifecycle, grouped into event categories. For example, when a user asks an agent to summarize their Notion notes, the agent: * starts the run (RUN_STARTED) * calls the Notion tool (TOOL_CALL_START) * gets the notes back (TOOL_CALL_RESULT) * updates shared state (STATE_DELTA) * writes the summary, token by token (TEXT_MESSAGE_CONTENT) * finishes the run (RUN_FINISHED) AG-UI defines the events, and any client can read them, no matter which framework built the agent. So the same agent can run in any user-facing surface like web app, mobile app, terminal or Slack. AG-UI works with LangChain, Mastra, Google ADK, Claude Managed Agents, OpenAI Agents SDK, Strands Agents, Microsoft Agent Framework, Pydantic AI and more. Try all agentic features across 30 live integrations in the AG-UI Dojo. On the frontend, CopilotKit is its AG-UI client for React, Angular, Vue and React Native, and for chat apps like Slack, Teams, WhatsApp, Telegram and Discord. The ecosystem has evolved a lot. MCP became the standard for connecting agents to external tools, A2A lets agents coordinate with each other, and now AG-UI connects your agents to user-facing apps as shown below. What's New in AG-UI 1.0. * The JSON Schema defines what each event contains. Here's the full schema. * The spec defines how events behave: the order they arrive in, how runs start and end, and how errors are handled. Every rule says who it applies to: the producer that sends events (like your agent) or the consumer that reads them (like a client SDK or UI). If the spec and the schema disagree on a field, the schema is right. If an implementation breaks a rule, the implementation has the bug. No more guessing. CopilotKit published 1.0 as a draft first and discussed it openly on GitHub. The Anthropic, Pydantic AI and TanStack teams shared feedback, and a lot of it made it into the final spec. The 1.0 spec won't change, so what you build on it today keeps working. Future versions will follow the same process, and you can join its AG-UI community to keep up with the updates. Now let's get into the major changes in AG-UI 1.0! Each feature below includes a flow diagram showing your app, the AG-UI event stream and your agent. In each diagram, solid arrows are requests your app sends and dashed arrows are events streaming back. Subagent support. Say you ask a travel agent to plan a trip, and it starts two subagents at once: one searches flights, the other searches hotels. Before 1.0, both streamed into the same chat, and the UI had no idea whose output was whose. Now every event a subagent sends is tagged with its own id, so your UI can show each subagent in its own card while it works: { "type": "SUBAGENT_STARTED", "subagentRunId": "sub-1", "name": "flight-search"} {"type": "TEXT_MESSAGE_CONTENT", "messageId": "msg-1", "subagentRunId": "sub-1", "delta": "Found 3 flights..."} {"type": "SUBAGENT_FINISHED", "subagentRunId": "sub-1"} Metadata. With metadata, you can send any custom data from your agent to the frontend. For example, you can show which model answered under each message, or attach a trace id that links to your logs. Add it on the backend: TextMessageEndEvent( message_id="msg-1", metadata={"acme.model": "gpt-5.5", "acme.trace_id": "tr_8f2a"},) And it shows up on the message in the browser: agent.messages.at(-1)?.metadata; // {"acme.model": "gpt-5.5", "acme.trace_id": "tr_8f2a"} Multimodal tool results. Tool results can now include images, audio, video and documents, instead of just text. For example, an invoice tool can now return the PDF itself: { "type": "TOOL_CALL_RESULT", "messageId": "msg-2", "toolCallId": "call-1", "content": [{ "type": "text", "text": "Here is your invoice."}, {"type": "document", "source": { "type": "url", "value": "https://example.com/invoice.pdf", "mimeType": "application/pdf"}}]} Human-in-the-loop with interrupts. AG-UI 1.0 adds interrupts, so a run can pause when the agent needs something from the user. Say your agent wants approval before sending an email. The run pauses, your UI shows an approve button, and the next run picks up right where it left off with the user's answer. Runs can also end as cancelled, so a run the user stopped no longer looks like one that finished or failed. Token usage. Runs can now report token usage when they finish, with clear rules for input, output, cached and reasoning tokens. So you can show how much each run cost right in your UI. Tokens used by subagents also count toward the run that started them: { "type": "RUN_FINISHED", "threadId": "t1", "runId": "r1", "usage": [{ "model": "gpt-5.5", "inputTokens": 1200, "outputTokens": 340, "cachedInputTokens": 800}]} Those are the highlights! For the full list of changes in AG-UI 1.0, check out the changelog. How the AG-UI 1.0 spec works. The JSON Schema is a single file: schema.json. It describes every event, the request your app sends (RunAgentInput) and every type they use. * Any JSON Schema validator, in any language, can check an event against it. * It's strict. A field the schema doesn't define fails validation, except in spots meant for your own data, like metadata. The spec covers the rules a schema can't express, like event order and how runs start and end. For example, while the schema rejects fields it doesn't know, a 1.0 client talking to a newer agent will run into fields and events it has never seen. The spec tells the client to skip them with a warning instead of failing, so older clients keep working as the protocol grows. Here's how it all fits together, from the user's request to the events streaming back into your UI: Upgrading to AG-UI 1.0. AG-UI 1.0 is backwards compatible. A 0.x agent works with a 1.0 client, and a 1.0 agent works with a 0.x client, so nothing breaks when one side upgrades first. When you update to the 1.0 SDKs, there are a few small changes to make. In TypeScript: * Validators moved to @ag-ui/core/schemas. * Custom fields you read off events are gone. Use metadata instead. * SubAgentInfo is now SubagentInfo, and subAgents is now subagents. * ToolMessage.content can now be a string or a list of content parts. In Python, the models are now generated from the schema, and JSON Patch entries are typed objects, so patch["path"] becomes patch.path. The migration guide walks through every SDK, including .NET. Get started. Spin up your first AG-UI app with a single command. npx create-ag-ui-app@latest Once it's running, explore more: If you have ideas for the next version, jump into GitHub Discussions and tell CopilotKit what you want to see. If you're building an agent framework or SDK and want to add AG-UI support, CopilotKit'd love to work with you. Just reach out in the CopilotKit or AG-UI communities. Want to bring CopilotKit into your stack? Talk to its engineers and CopilotKit'll help you set it up. Follow CopilotKit on Twitter for updates.
Find jobs on Simplify and start your career today
Industries
Company Size
11-50
Company Stage
Series A
Total Funding
$54M
Headquarters
Seattle, Washington
Founded
2023
Find jobs on Simplify and start your career today