# CopilotKit **Repository Path**: mirrors_hjr3/CopilotKit ## Basic Information - **Project Name**: CopilotKit - **Description**: React UI + elegant infrastructure for AI Copilots, in-app AI agents, AI chatbots, and AI-powered Textareas 🪁 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-16 - **Last Updated**: 2025-10-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
CopilotKit Logo

Build deeply-integrated AI assistants & agents
that work alongside your users inside your applications.


NPM MIT Discord

CopilotKit Discord CopilotKit GitHub CopilotKit GitHub

Stay up to date with our latest releases!

LI Discord


214 (1) # Demos (click to clone / run)

📊 Spreadsheets + Copilot

![Spreadsheet Demo](https://github.com/user-attachments/assets/0935da06-668e-41b1-806e-19a1a1574be2) [View Demo Repository →](https://github.com/CopilotKit/demo-spreadsheet)
A powerful spreadsheet assistant that helps users analyze data, create formulas, and generate insights through natural language interaction.

🏦 Banking Assistant (SaaS Copilot)

[View Demo Repository →](https://github.com/CopilotKit/demo-banking)
An AI-powered banking interface that helps users manage transactions, analyze spending patterns, and get personalized financial advice.

✈️ [Tutorial] Agent-Native Travel Planner (ANA)

[View Tutorial →](https://docs.copilotkit.ai/coagents/tutorials/ai-travel-app/overview)
Interactive travel planning assistant that helps users discover destinations, create itineraries, and manage trip details with natural language.

🔍 [Tutorial] Agent-Native Research Canvas (ANA)

[View Demo Repository →](https://github.com/CopilotKit/CopilotKit/blob/main/examples/coagents-research-canvas/readme.md)
An intelligent research assistant that helps users analyze academic papers, synthesize information across multiple sources, and generate comprehensive research summaries through natural language interaction.
# Getting Started Get started in minutes - check out the [quickstart documentation](https://docs.copilotkit.ai/quickstart). # Code Samples ```ts // Headless UI with full control const { visibleMessages, appendMessage, setMessages, ... } = useCopilotChat(); // Pre-built components with deep customization options (CSS + pass custom sub-components) // --- // Frontend RAG useCopilotReadable({ description: "The current user's colleagues", value: colleagues, }); // knowledge-base integration useCopilotKnowledgebase(myCustomKnowledgeBase) // --- // Frontend actions + generative UI, with full streaming support useCopilotAction({ name: "appendToSpreadsheet", description: "Append rows to the current spreadsheet", parameters: [ { name: "rows", type: "object[]", attributes: [{ name: "cells", type: "object[]", attributes: [{ name: "value", type: "string" }] }] } ], render: ({ status, args }) => , handler: ({ rows }) => setSpreadsheet({ ...spreadsheet, rows: [...spreadsheet.rows, ...canonicalSpreadsheetData(rows)] }), }); // --- // structured autocomplete for anything const { suggestions } = useCopilotStructuredAutocompletion( { instructions: `Autocomplete or modify spreadsheet rows based on the inferred user intent.`, value: { rows: spreadsheet.rows.map((row) => ({ cells: row })) }, enabled: !!activeCell && !spreadsheetIsEmpty, }, [activeCell, spreadsheet] ); ``` # Code Samples (CoAgents: in-app LangGraph Agents) ```ts // Share state between app and agent const { agentState } = useCoAgent({ name: "basic_agent", initialState: { input: "NYC" } }); // agentic generative UI useCoAgentStateRender({ name: "basic_agent", render: ({ state }) => , }); // Human in the Loop (Approval) useCopilotAction({ name: "email_tool", parameters: [{ name: "email_draft", type: "string", description: "The email content", required: true }], renderAndWaitForResponse: ({ args, status, respond }) => ( respond?.({ approved: false })} onSend={() => respond?.({ approved: true, metadata: { sentAt: new Date().toISOString() } })} /> ), }); // --- // intermediate agent state streaming (supports both LangGraph.js + LangGraph python) const modifiedConfig = copilotKitCustomizeConfig(config, { emitIntermediateState: [{ stateKey: "outline", tool: "set_outline", toolArgument: "outline" }], }); const response = await ChatOpenAI({ model: "gpt-4o" }).invoke(messages, modifiedConfig); ``` ## Contributing Thanks for your interest in contributing to CopilotKit! 💜 We value all contributions, whether it's through code, documentation, creating demo apps, or just spreading the word. Here are a few useful resources to help you get started: - For code contributions, [CONTRIBUTING.md](./CONTRIBUTING.md). - For documentation-related contributions, [check out the documentation contributions guide](https://docs.copilotkit.ai/contributing/docs-contributions?ref=github_readme). - Want to contribute but not sure how? [Join our Discord](https://discord.gg/6dffbvGU3D) and we'll help you out! > 💡 **NOTE:** All contributions must be submitted via a pull request and be reviewed by our team. This ensures all contributions are of high quality and align with the project's goals. ## Get in touch You are invited to join our community on [Discord](https://discord.gg/6dffbvGU3D) and chat with our team and other community members. ## License This repository's source code is available under the [MIT License](https://github.com/CopilotKit/CopilotKit/blob/main/LICENSE).