CopilotKit是什么
CopilotKit 是开源的AI原生应用前端操作系统。工具支持三种 Generative UI 模式,包含受控、声明式 A2UI、开放式,让 AI Agent 不再停留在聊天框,能直接在应用内实时生成交互界面。团队推出了 AG-UI 协议,实现双向状态同步、Human-in-the-Loop、持久 Threads 等功能,一次集成可多端全通。

CopilotKit的主要功能
- 三种 Generative UI 模式
受控模式(Controlled):开发者预定义 React 组件,Agent 只负责挑选组件和填充数据,确保品牌风格完全一致。
声明式模式(A2UI):Agent 输出 JSON schema,前端自动映射成组件,适合覆盖长尾低频功能而无需手写代码。
开放式模式(Open-ended):Agent 直接生成 HTML 或驱动 Excalidraw 等工具,适合一次性探索性可视化场景。
- 双向状态同步:Agent 能直接修改状态,实现前端与 Agent 的实时双向绑定。
- Human-in-the-Loop:Agent 可在关键执行节点暂停,弹出确认框请求用户审批后再继续操作。
- 持久 Threads:所有对话、状态、生成的 UI 自动持久化,用户下次打开应用可从断点无缝续接。
- AG-UI 协议全栈打通:作为行业标准协议,支持一次编写 Agent 逻辑,在 Web、Mobile、Slack 等多端同时运行。
CopilotKit的技术原理
- AG-UI 协议层:协议定义了 AI Agent 与用户界面之间的实时通信标准。工具通过标准化的消息格式和事件流,让 Agent 能直接生成结构化 UI 指令,实现从对话到操作界面的范式转换。
- 三种 Generative UI 渲染机制:受控模式通过预注册的 React 组件映射表,让 LLM 在工具调用时仅返回组件 ID 与数据载荷,前端按固定渲染管线执行;A2UI 声明式模式由 Agent 输出符合 JSON schema 的 UI 描述,前端运行时通过动态组件解析器将 schema 映射为可交互元素;开放式模式能直接渲染 Agent 生成的 HTML 字符串或沙箱化 iframe。
- 双向状态同步架构:前端通过
useAgent等 Hook 与 CopilotKit Runtime 建立 WebSocket 或 SSE 长连接,应用状态以共享状态树(Shared State)形式暴露给 Agent。Agent 侧通过协议层读取状态快照,执行工具调用后回写状态变更,前端订阅状态 diff 自动重渲染,形成闭环。 - Human-in-the-Loop 中断机制:Runtime 在执行链中插入中断节点(Interrupt Node),当 Agent 调用需要人工确认的工具时,执行流暂停并向前端发送中断事件(Interrupt Event),渲染审批 UI。用户确认后,前端将审批结果(Approval/ Rejection)回传 Runtime,执行流恢复,Agent 继续后续步骤。
- 持久化 Threads 与会话管理:所有对话消息、中间状态、生成的 UI 节点及用户审批记录均按 Thread ID 持久化到存储层。用户重新接入时,Runtime 根据 Thread ID 加载完整上下文,Agent 从断点状态恢复执行,实现跨会话的连续性。
如何使用CopilotKit
- 新项目快速启动:执行
npx copilotkit@latest create -f <framework>一键创建带 CopilotKit 的模板项目。 - 现有项目集成:执行
npx copilotkit@latest init自动安装核心包、配置 Provider、连接 Agent 与 UI。 - 接入 Agent 状态:用
useAgenthook 读取和修改 Agent 状态,例如agent.state.city和agent.setState()。 - 定义 Copilot Actions:将现有 API 调用或业务函数注册为 LLM 可调用的 actions,实现工具调用闭环。
- 部署上线:完成配置后可直接部署,支持自托管或 CopilotKit Cloud 企业版。
CopilotKit的核心优势
协议级标准:团队是 AG-UI 协议缔造者,已被 Google、Microsoft、Amazon、LangChain、Mastra 等巨头采用,生态兼容性强。
三种 UI 模式覆盖全场景:从严格受控到完全开放,满足不同业务对品牌一致性和灵活性的双重需求。
前端状态深度集成:不同于普通聊天组件,CopilotKit 能与应用内部状态双向同步。
生产级 Human-in-the-Loop:内置审批流机制,让 Agent 在关键操作前主动请求人工确认,降低风险。
跨端一次集成:基于 AG-UI 协议,同一套 Agent 逻辑可同时跑在 Web、移动端和 Slack 等渠道。
CopilotKit的项目地址
- GitHub仓库:https://github.com/CopilotKit/CopilotKit
CopilotKit的同类竞品对比
| 对比维度 | CopilotKit | Assistant-ui |
|---|---|---|
| 核心定位 | 全栈 Agent UI 基础设施(前端组件 + 运行时 + 协议) | 开源 React 组件库,专注 AI 聊天界面 |
| UI 生成方式 | Agent 主动生成界面:支持受控组件、A2UI JSON 映射、开放式 HTML 三种模式 | 静态预置组件:Thread、Message、Composer、Suggestion 等,Agent 不生成新 UI |
| 状态管理 | 双向深度同步:Agent 可读写应用内部状态,前端自动响应 | 单向消息流:主要管理对话消息列表,应用状态需手动桥接 |
| Human-in-the-Loop | 执行流原生中断:Agent 暂停 → 渲染审批 UI → 用户确认 → 自动恢复 | 消息级拦截:可插入自定义消息内容,但无执行流控制机制 |
| 后端耦合 | 自带 Runtime,同时深度集成 LangGraph、Mastra、CrewAI 等 | 纯前端,需自行对接 OpenAI、LangChain、Convex 等后端 |
| 持久化 | 内置 Thread 持久化(内存/Redis/数据库),断点续接 | 依赖外部后端实现,本身不提供存储层 |
| 工具调用渲染 | 自动生成对应交互组件(表单、按钮、图表等) | 基础展示工具调用名称和参数,无动态交互组件 |
| 协议标准 | AG-UI 协议缔造者,定义 Agent-UI 交互标准 | 遵循通用消息格式,无专属协议 |
| 上手成本 | 中等:需理解 Runtime、Actions、三种 UI 模式 | 较低:纯 React 组件,按文档组装即可 |
| 适用场景 | 在复杂 SaaS 中嵌入能”动手”的智能 Copilot | 快速搭建标准 AI 聊天机器人界面 |
CopilotKit的应用场景
SaaS 产品内嵌 Copilot:在 CRM、ERP、数据分析后台等现有产品中嵌入 AI 助手,让用户通过对话直接操作复杂功能。
AI 原生应用开发:构建以 Agent 为核心的新一代应用,Agent 可实时生成表单、看板、日历等交互界面。
长尾功能自动化:通过 A2UI 模式让 Agent 自动生成低频功能界面(如发票申请、设备预订),减少开发人力。
跨平台 Agent 部署:基于 AG-UI 协议,将同一 Agent 同时部署到 Web 应用、移动端和 Slack 机器人。
