项目简介
做AI应用开发的朋友,大概率都遇到过一个尴尬:
你接了LLM,写了Prompt,聊天窗口跑起来了。然后用户说”帮我查订单”,你的Agent调用了工具,返回一段文字——但用户真正想要的,是一个可以点击的订单卡片、一个可以筛选的表单、一张可以交互的图表。
CopilotKit 要解决的,就是这个问题。32.7K Stars,MIT协议,一句话说清楚:它是构建Agent原生应用的全栈SDK,让AI不仅能”说”,还能”做界面”。
安装要求和过程
环境要求
- Node.js 18+
- React 18+(React版本);Angular/Vue也已支持
- TypeScript(推荐)
快速开始(新项目)
npx copilotkit@latest create -f nextjs已有项目接入
npx copilotkit@latest init执行后自动完成:核心包安装、Provider配置、Agent与UI连接、部署就绪配置。
安装React核心包
npm install @copilotkit/react-core @copilotkit/react-ui核心功能
1. 生成式UI(Generative UI)
这是CopilotKit最招牌的能力。传统聊天AI返回的是文字,CopilotKit让Agent在运行时动态生成前端组件。比如用户说”画一个销售漏斗图”,Agent可以直接生成一个React组件渲染在聊天窗口里,而不是返回一段描述。
2. AG-UI协议的主导者
CopilotKit主导了AG-UI协议的制定,这个协议已经被Google、LangChain、AWS、Microsoft、Mastra、PydanticAI等主流AI厂商采纳。它的作用是实现Agent与用户界面的标准化通信——你可以理解为”AI界面的HTTP协议”。用了CopilotKit,你的Agent天然支持这个协议,未来对接其他厂商的生态会很顺畅。
3. 人机协同工作流
有些操作,AI不能自己拍板。CopilotKit支持Agent执行过程中主动暂停,请求人工确认后再继续。比如”我准备删除这三条数据,确认?”——用户点确认,Agent再执行。这个能力在金融、医疗、企业审批等场景里几乎是必需的。
4. 共享状态管理
Agent和UI组件之间有一层可实时读写同步的状态层。Agent更新了状态,UI立刻响应;用户在UI上操作,Agent也能立刻感知。这种双向实时交互,是”真正Agent原生应用”和”套壳聊天窗口”之间最本质的差别。
5. 自学习Agent(早期访问)
通过人类反馈持续学习(RLHF),Agent可以不用微调模型,就能通过用户反馈自动优化行为。而且支持按用户偏好做个性化适配——也就是说,同一个Agent,给不同用户用,会越来越”懂”那个用户。
典型使用场景
场景一:AI客服系统
用户在聊天窗口说”查我的订单”。传统方案:Agent返回一段文字”您的订单号是xxx,状态是已发货”。
用了CopilotKit:Agent动态生成一个可交互的订单卡片,用户可以直接在聊天窗口里点击”退款”、”查看物流”、”联系卖家”。整个过程不需要跳转页面,也不需要用户去别的地方操作。
场景二:企业知识库助手
结合RAG,用户问”帮我分析Q1各区域的销售趋势”。Agent不仅返回文字结论,还直接生成一张交互式图表,用户可以在聊天窗口里筛选区域、切换时间维度、导出数据。这种体验,是传统”一问一答”的AI客服完全给不了的。
推荐理由
我自己试CopilotKit最直接的原因是:受够了”AI聊天窗口”的局限。
接LLM很方便,但接完之后你会发现,用户真正想要的不是”聊天”,而是”完成任务”。查订单、填表单、看报表——这些事情,纯文字交互的效率是很低的。
CopilotKit的Generative UI把这个问题解决了。Agent可以动态生成界面,用户可以在聊天窗口里直接操作,整个体验是对话式+界面式的混合——这其实更像人跟人打交道的方式,而不是人跟搜索引擎打交道的方式。
另外一点是AG-UI协议。现在AI应用开发有个痛点:每接一个平台(Web、移动端、Slack、Teams),都要重新写一套UI逻辑。CopilotKit的AG-UI协议让同一套Agent逻辑可以同时驱动多个平台的UI——这个在多端部署的场景下,省的工作量是很可观的。
下载地址
GitHub仓库:https://github.com/CopilotKit/CopilotKit(32.7K+ Stars)
官方网站:https://www.copilotkit.ai/
开发文档:https://docs.copilotkit.ai/
npm安装:npm install @copilotkit/react-core @copilotkit/react-ui
