Save your spot

Live eventA single Agent, 3 surfaces

Connect any agent
to any user.

The Enterprise Agentic Frontend Stack. Build rich agentic applications that learn from every interaction. Self-hostable and built to scale with your org.

Claude Agent SDKOpenAI Agents SDKLangChainGoogle ADKAWS StrandsMastraWebSlackTeamsiOSAndroidWhatsAppCopilotKitAG-UI

Trusted by the majority of the Fortune 500s and Global 50.

Cisco
Apple
Walmart
Disney
Bank of America
Deutsche Telekom
Tesla
Ford
Toyota
Honda
Boeing
Salesforce
Intel
HP
Dell
AT&T
Comcast
Wells Fargo
Citi
Mastercard
Costco
Nike
Shell
General Electric
Booking.com
FedEx
UPS
Tripadvisor
UKG
Docusign
McDonald's
SoundCloud

Works with the agent stacks your teams already use.

Google
Microsoft
Amazon
LangChain
Anthropic
Mastra
Pydantic AI
Oracle
Agno
Tavily
TanStack
Daytona
LlamaIndex
CrewAI
AG2
Tako

Use cases & templates

Start from a real agent experience, then make every interaction look and feel like your product.

Company knowledge base

Connect the sources your company already trusts. Give every employee one agent that can answer with citations, analyze across systems, and prepare the next action.

Why teams build with CopilotKit.

Your agent acts inside the product, learns from real use, keeps every action auditable, and stays open to your stack.

Acts inside your product

Ask a question and get back a real chart or form, rendered with your components on the same live screen as your users. The agent can take action through your APIs and MCP tools, or directly in your frontend, and whatever it changes stays changed.

Learns from how users work

Every interaction becomes a signal. The agent improves as people use it instead of depreciating like static software.

Every action is auditable

Keep a complete record of every action. Your data stays yours, whether you self-host or use Copilot Cloud.

Open through AG-UI

CopilotKit is not a bet on one framework. Agent frameworks and harnesses across the ecosystem already connect through AG-UI.

Loved by developers.

Build rich agentic applications for any surface.

Choose a user surface
+4 more
ReactAngularVue
Slack
Acme Inc
# support · thread
DK
Dana K.2:13 PM
Customer in the ticket queue is asking about a refund on order #4821, can someone take a look?
Refund AgentAPP2:14 PM
Customer asked about order #4821. Policy allows a full refund, @dana needs to approve amounts over $50.
Refund approved: $86.40 back on your Visa, 3 - 5 days.
Item$61.20
Shipping$16.80
Tax$8.40
Human_Approval
Refund #4821 is above your $50 auto-limit.
Approve full $86.40
Approve $69.60, keep shipping
Or reply with a note…
What card did they pay with?
Full card numbers aren’t in your permissions. I can share the last 4: ·· 4242.
How many people are in this channel, and how many are in PT?
23 members in #support. 9 of them are in Pacific Time.
channel.members read from Slack context · TOOL_CALL
Dana approved this from her phone. The thread updated the moment she did.
STATE_DELTA · synced across devices
✓ 2+1 3
3 replies · today at 2:16 PM
DK
Dana K.2:16 PM
Approved. Refund is on its way to the customer.
DK
Dana K.2:13 PM
Analyze our Q3 vendor spend
Vendor AgentAPP2:14 PM
Parsed 47 vendors. Top spend:
AWS$52.4k
Salesforce$31.2k
Datadog$12.8k
Figma$8.9k
Other$78.9k
DK
Dana K.2:15 PM
Use the updated spreadsheet insteadq3-vendors.xlsx2.1 MB
Reply in thread…
React
app.acme.com/ordersapp.acme.com/expenses
Expenses
Top 10 · by amountLast 30 daysadded by agent
AWS · Compute$12,400
Salesforce · Licenses$8,150
Datadog · Observability$3,900
Snowflake · Storage$2,750
Figma · Seats$1,240
Linear · Seats$890
4 more…
Where's my refund? Order #4821
Refund approved: $86.40 back on your Visa, 3 - 5 days.
Item$61.20
Shipping$16.80
Tax$8.40
Human_Input
How should we send your $86.40?
Original card · Visa ·· 4242
Store credit, instant
Or type something else…
Can you open order #7130 too?
Order #7130 isn’t on your account, so I can’t open it. Ask about one of your orders.
Show the 10 most expensive charges this month
I can filter the Expenses page down to those. Take you there?
Yes, take me thereStay here
Here you are. AWS alone is over a third of the month.
You approved this on your phone a minute ago. Everything here is already up to date.
STATE_DELTA · synced across devices
Ask anything…
Analyze our Q3 vendor spend
Parsed 47 vendors. Top spend:
AWS$52.4k
Salesforce$31.2k
Datadog$12.8k
Figma$8.9k
Other$78.9k
Anything we’re overpaying for?
Datadog looks high for your usage, and 3 licenses appear unused.
Use the updated spreadsheet insteadq3-vendors.xlsx2.1 MB
iOS
9:41
Acme Supportagent · online
Where’s my refund? Order #4821
Refund approved: $86.40 back on your Visa, 3 - 5 days.
Item$61.20
Shipping$16.80
Tax$8.40
Human_Input
How should we send your $86.40?
Original card · Visa ·· 4242
Store credit, instant
Or type something else…
Can you open order #7130 too?
Order #7130 isn’t on your account, so I can’t open it. Ask about one of your orders.
refund.issue executed in-app · TOOL_CALL
You started this on the web dashboard. The conversation carried over, mid-run.
STATE_DELTA · synced across devices
Analyze our Q3 vendor spend
Parsed 47 vendors. Top spend:
AWS$52.4k
Salesforce$31.2k
Datadog$12.8k
Figma$8.9k
Other$78.9k
Use the updated spreadsheet insteadq3-vendors.xlsx2.1 MB
Message
Android
9:41
Acme Supportagent · online
Where’s my refund? Order #4821
Refund approved: $86.40 back on your Visa, 3 - 5 days.
Item$61.20
Shipping$16.80
Tax$8.40
Human_Input
How should we send your $86.40?
Original card · Visa ·· 4242
Store credit, instant
Or type something else…
Can you open order #7130 too?
Order #7130 isn’t on your account, so I can’t open it. Ask about one of your orders.
refund.issue executed in-app · TOOL_CALL
You started this on the web dashboard. The conversation carried over, mid-run.
STATE_DELTA · synced across devices
Analyze our Q3 vendor spend
Parsed 47 vendors. Top spend:
AWS$52.4k
Salesforce$31.2k
Datadog$12.8k
Figma$8.9k
Other$78.9k
Use the updated spreadsheet insteadq3-vendors.xlsx2.1 MB
Message
Teams
Refunds · General · Acme Inc
DK
Dana K. · 2:13 PM
Where's the refund for order #4821?
Refund Agent · 2:14 PM
Refund approved: $86.40 back on your Visa, 3 - 5 days.
Item$61.20
Shipping$16.80
Tax$8.40
Refund #4821 needs a decision
Amount is above the $50 auto-limit.
Approve full $86.40
Approve $69.60, keep shipping
Or reply with a note…
What card did they pay with?
Full card numbers aren’t in your permissions. I can share the last 4: ·· 4242.
How many people are in this team, and how many are in PT?
12 members in Refunds · General. 5 of them are in Pacific Time.
team.roster read from Teams context · TOOL_CALL
Approved from mobile just now. This thread is already up to date.
STATE_DELTA · synced across devices
DK
Dana K. · 2:13 PM
Analyze our Q3 vendor spend
Vendor Agent · 2:14 PM
Parsed 47 vendors. Top spend:
AWS$52.4k
Salesforce$31.2k
Datadog$12.8k
Figma$8.9k
Other$78.9k
DK
Dana K. · 2:15 PM
Use the updated spreadsheet insteadq3-vendors.xlsx2.1 MB
Type a message
Choose a capability
and much more
Resulting codeChat UI
// pre-built chat, styled with your CSS
<CopilotChat agentId="support"
  className="acme-chat" />

// or swap any subcomponent via slots
<CopilotChat
  messageView={AcmeMessages}
  input={AcmeInput} />

// or fully headless
const { agent } = useAgent();
{ agent.messages.map((m) => (
  <AcmeBubble key={m.id}> {m.content} </AcmeBubble>
)) }
// Controlled generative UI
useComponent({
  name: "showRefundStatus",
  description: "Show a refund status card.",
  parameters: z.object({
    orderId: z.string(),
    amount: z.number(),
    method: z.string(),
  }),
  // your component, your design system
  render: RefundStatusCard,
});

const RefundStatusCard = ({ orderId, amount }) => (
  <Card>…</Card>  // breakdown pie, your design system
);
useHumanInTheLoop({
  name: "chooseRefundMethod",
  parameters: z.object({ orderId: z.string() }),
  render: ({ respond }) => (
    <RefundMethodChoice
      options={["original card", "store credit"]}
      allowCustomAnswer
      onChoose={(answer) => respond?.(answer)}
    />
  ),
});
useFrontendTool({
  name: "selectOrder",
  description: "Open an order in the dashboard.",
  parameters: z.object({ orderId: z.string() }),
  handler: async ({ orderId }) => {
    openOrder(orderId);  // your app code
    return { status: "selected", orderId };
  },
});
const handler = createCopilotRuntimeHandler({
  runtime,
  hooks: {
    onRequest: ({ request }) => {
      const jwt = request.headers.get("authorization");
      const user = verifyJwt(jwt);
      if (!user)
        throw new Response(null, { status: 401 });
      // agent runs are tied to this user
    },
  },
});
const { agent } = useAgent({ agentId: "support" });

// read the agent's shared state
agent.state.focus  // "refunds"

// write it, the agent sees the change
agent.setState({ ...agent.state, focus: "returns" });
5-minute walkthrough

Agents that improve with every interaction

Turn real usage into a controlled learning loop that makes agent quality and speed rise while cost falls.

QUALITY SPEED COST

User interactions over time

How automatic learning works

Follow each production interaction from captured signal to a safer, more capable agent.

Every interaction is captured.
In-chat & in-app.

In-app interactions

What users do in your app: clicks, edits, and navigation outside the chat.

Agent-user interactions

The back-and-forth with the agent, plus feedback signals: approvals, edits, retries.

Define learning containers for users, groups of users, or entire organizations.

Self-learning
Learning containers
per user
per group of users
per organization

Your agent automatically improves with every interaction.

Self-improving skills - automatically adopted by your agents
New skills created from real usage
They keep improving over time. You do nothing.
Export datasets to fine-tune custom models
Your interaction data, exportable as fine-tuning datasets

Product analytics for agentic products

See what users try, where they succeed, where they struggle, and what to improve next.

threadsflows

Understand user behavior

See which jobs users attempt, the paths they take, and where they abandon or ask for help.

Measure product outcomes

Connect agent interactions to task completion, adoption, satisfaction, and the outcomes your product team cares about.

Find what works

Identify where users succeed, struggle, retry, or hand off so you know what to improve next.

Works alongside your LLM observability

Keep the traces and evals your engineering team already relies on. CopilotKit adds the product view: what users try, where they succeed, and where they get stuck.

Enterprise Ready. Future-proof your organization.

Own your data and security

Self-host both the open-source SDK and the enterprise runtime. Nothing leaves your infrastructure. Or use our managed Cloud for added convenience.

Future-proof: any agent stack, any frontend, any model

AG-UI works with the stacks your teams use today, and whatever they adopt next.

Bring your own database

No new data store to trust. Everything persists in the database you already run.

Continuous improvement

Use observed outcomes and human feedback to improve prompts, routing, workflows, and UI behavior while you own the learning loop.

Built with teams shipping agentic products.

The CopilotKit SDK has accelerated our development processes and enabled us to help our users accomplish their tasks more quickly and with more confidence.

Mark Peterson, VP of Software Engineering

Docusign

Docusign

The AG-UI architecture lets us cleanly decouple our agent framework from the frontend, so we can evolve each independently. The pre-built component library saved us from rolling our own.

Bryan Godwin, CTO

Evergreen Wealth

Evergreen Wealth

Start building

Enhance your applications
with powerful AI capabilities

Supported frameworks: Google ADK, Microsoft Agent Framework, AI SDK, LangGraph, crewAI, Agno, AWS Strands, AG2, Mastra, LlamaIndex, and Pydantic AI