首页 > 教程攻略 > ai资讯 >CopilotKit – 开源 AI Agent 开放框架,全栈 Agent UI 基础设施

CopilotKit – 开源 AI Agent 开放框架,全栈 Agent UI 基础设施

来源:互联网 时间:2026-06-09 14:09:08

CopilotKit是什么

先说一个核心判断:如果你的AI应用还停留在“对话框里聊几句”的层面,那很可能已经落后了。真正有价值的AI Agent,应该能直接动手操作界面——帮你填表单、改表格、画图表,而不是只输出一段文本。

CopilotKit就是干这个的。它是一个开源的AI原生应用前端操作系统,核心能力是让AI Agent从聊天框里“走出来”,直接在应用内实时生成交互界面。工具提供了三种Generative UI模式:受控模式、声明式A2UI、开放式模式,几乎覆盖了从品牌一致性到探索性可视化的所有需求。团队还推出了AG-UI协议,实现了双向状态同步、Human-in-the-Loop、持久化Threads等功能。更关键的是,一次集成就能在Web、移动端、Slack等多个渠道同时运行。

CopilotKit – 开源 AI Agent 开放框架,全栈 Agent UI 基础设施

CopilotKit的主要功能

简单来说,它提供了三种根本不同的Generative UI模式,分别对应不同的场景和需求:

  • 受控模式(Controlled)

    :开发者预先定义好React组件,Agent只负责挑选组件和填充数据。这种方式能确保品牌风格完全一致,适合对UI有严格要求的场景。
  • 声明式模式(A2UI)

    :Agent输出JSON schema,前端自动映射成组件。这对覆盖长尾低频功能特别友好——不需要手写代码,Agent自己就能搞定。
  • 开放式模式(Open-ended)

    :Agent直接生成HTML或驱动Excalidraw等工具。一次性探索性可视化场景,用这个模式再合适不过。

除此之外,还有几个关键能力值得关注:

  • 双向状态同步

    :Agent能直接修改应用状态,实现前端与Agent的实时双向绑定。这可不是简单的聊天组件能比的。
  • Human-in-the-Loop

    :Agent在关键执行节点可以暂停,弹出确认框请求用户审批。这相当于给Agent加了一个安全阀。
  • 持久Threads

    :所有对话、状态、生成的UI自动持久化。用户下次打开应用,可以从断点无缝续接。
  • AG-UI协议全栈打通

    :作为行业标准协议,支持一次编写Agent逻辑,在Web、移动端、Slack等多端同时运行。

CopilotKit的技术原理

拆开来看,CopilotKit的底层有一套相当巧妙的设计:

  • AG-UI协议层

    :协议定义了AI Agent与用户界面之间的实时通信标准。通过标准化的消息格式和事件流,Agent能直接生成结构化UI指令,从对话到操作界面的范式转换就是这么实现的。
  • 三种Generative UI渲染机制

    :受控模式通过预注册的React组件映射表,LLM只返回组件ID与数据载荷;A2UI声明式模式由Agent输出JSON schema,前端运行时动态解析并映射为可交互元素;开放式模式则直接渲染Agent生成的HTML字符串或沙箱化iframe。
  • 双向状态同步架构

    :前端通过useAgent等Hook与CopilotKit Runtime建立WebSocket或SSE长连接。应用状态以共享状态树形式暴露给Agent,Agent侧通过协议层读取状态快照,执行工具调用后回写状态变更,前端订阅状态diff自动重渲染,形成闭环。
  • Human-in-the-Loop中断机制

    :Runtime在执行链中插入中断节点。当Agent调用需要人工确认的工具时,执行流暂停并向前端发送中断事件,渲染审批UI。用户确认后,前端将审批结果回传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状态

    :用 useAgent hook 读取和修改Agent状态,例如 agent.state.cityagent.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为例,两者虽然都在做AI界面,但思路完全不同:

对比维度

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机器人。