Benjamin Taylor 45bfd28dcc fix(core): exempt Intelligence and suggestion runs from the message filter
Two ways the filter reached places it should not, both found in review.

Intelligence: `IntelligenceAgent` posts `{...input}` to the managed runtime, so
the filtered list went on the wire, while the Intelligence connect path builds
its own input through `delegate.connectAgent` and stayed unfiltered. Run and
connect disagreeing is bad on its own, but the deciding point is that the
managed runtime is the store of record for the thread — the threads drawer and
the Slack transcript read from it — so a client-side truncation there has a
blast radius nobody asked for. Every reporter on #1482 is self-hosted. The
filter is now skipped in Intelligence mode, which also removes the asymmetry.

Suggestions: `SuggestionEngine` clones the provider agent for the fallback path
and gives the clone a fresh thread id, so no backend store can fill in what the
filter withheld — the seeded messages ARE the context. A trimming filter rode
the clone and silently degraded suggestions to context-free prompts, and only on
runtimes without the `suggestions` capability, so the behavior differed by
runtime version. The engine now clears the filter on that clone.

Also widens the try/catch to cover the repair, so a filter that returns an array
with a non-message entry degrades like one that throws rather than blowing up on
`message.role`. And corrects two JSDoc claims: the registry stamps every
`ProxiedCopilotRuntimeAgent` including one from `registerProxiedAgent` (which
files under `localAgents`), not only runtime-discovered ones; and the public
`messageFilter` setter is registry-owned, replaced on the next sweep.

Testing: 27 tests passing, up from 24. The suggestion test drives the real
`SuggestionEngine` fallback path and asserts the outbound body still carries the
seeded context — it fails with "expected 1 to be greater than 1" when the guard
is removed, which is exactly the silent degradation it protects against. New
tests also cover the Intelligence exemption and the bad-entry fallback. Full
core suite 846 passing with the same 20 pre-existing failures; suggestions
suites (72 tests) still green; tsc clean against the normalized baseline; oxlint
clean on all five files.

My first pass at the Intelligence JSDoc claimed the opposite of this and was
wrong in both directions before landing here.

Refs #1482
2026-09-06 12:42:49 -05:00
2026-04-07 12:29:28 +02:00
2026-07-20 19:56:52 +00:00
2023-06-30 16:46:26 -07:00
2026-06-23 20:52:56 -07:00
2026-07-06 14:24:16 -07:00

FavIcon

CopilotKit

Build agent-native applications — on any framework, on any surface.

Generative UI, shared state, and human-in-the-loop workflows for React, Angular, Vue, React Native — and in Slack and Microsoft Teams.

Bring Your Own Agent. Any Channel. — CopilotKit and AG-UI connect any agent framework to Slack, Microsoft Teams, Discord, WhatsApp, Telegram, Google Chat, iMessage, and SMS.



What is CopilotKit?

CopilotKit is a best-in-class SDK for building full-stack agentic applications, Generative UI, and chat applications.

What started as a React library is now the horizontal layer between your agents and your users: the same agent can power your web app, your mobile app, and your team's Slack or Microsoft Teams workspace.

We are the company behind the AG-UI Protocol — adopted by Google, LangChain, AWS, Microsoft, Mastra, PydanticAI, and more!

Quick Start

Up and running in under five minutes. All you need is an LLM key (OpenAI, Anthropic, Gemini, etc.).

npx copilotkit@latest create

Agent Skills

CopilotKit ships agent skills that teach your coding agent (Claude Code, Codex, Cursor, Gemini, and others) how to set up, build with, integrate, debug, and upgrade CopilotKit.

Install them into any project directory:

npx copilotkit@latest skills install

Run it again any time to refresh to the latest skills.

Bring Your App to Life

https://github.com/user-attachments/assets/72b7b4f3-b6e7-460c-a932-5746fe3c8db3

Add AI to your app in 1 minute

Features:

  • Chat UI A fully customizable chat interface that supports message streaming, tool calls, and agent responses.
  • Backend Tool Rendering Enables agents to call backend tools that return UI components rendered directly in the client.
  • Generative UI Allows agents to generate and update UI components dynamically at runtime based on user intent and agent state.
  • Shared State A synchronized state layer that both agents and UI components can read from and write to in real time.
  • Human-in-the-Loop Lets agents pause execution to request user input, confirmation, or edits before continuing.
  • Self-Learning (early access) Agents that continuously improve from user feedback via in-context reinforcement learning (CLHF).

🧩 Works With Your Stack

One agent backend. Every frontend.

Platform Status Get Started
⚛️ React / Next.js GA Quickstart
🅰️ Angular Supported Source Code & Quickstart
💚 Vue Supported Source Code - Quickstart coming soon
📱 React Native Supported Quickstart
💬 Slack / Microsoft Teams Supported Channels · Quickstart
🔜 Discord / WhatsApp / Telegram / Google Chat / iMessage / SMS 🟡 Coming soon Channels

Your agent logic stays the same — AG-UI handles the wire protocol, CopilotKit handles the UI layer for each framework and channel.

💬 Channels: One Agent, Every Chat App

Write it once, run every channel

The Channels SDK takes the agent you already built and drops it into the chat apps your users live in — same tools, same shared state, same human-in-the-loop, no rewrite (Learn more).

  • Slack Agents as first-class Slack apps: threads, tool calls, and human-in-the-loop approvals right in the channel.
  • Microsoft Teams Bring agentic workflows to the enterprise, where your org already lives.

👉 Explore Channels →

🧠 Self-Learning Agents

Improve your product by learning over time.

With Continuous Learning from Human Feedback (CLHF), part of CopilotKit Intelligence, agents improve with every interaction:

  • In-context reinforcement learning Agents automatically improve from user interactions, no model fine-tuning required.
  • Automatic prompt augmentation Agent behavior adapts based on recent interactions and outcomes.
  • Per-user adaptation Agents learn individual preferences and get better for each user over time.
  • Threads & persistence Full interaction history — generative UI, human-in-the-loop, shared state — captured across sessions.

Available via CopilotKit Cloud or self-hosted.

🔒 Early access: We're onboarding teams now.

👉 Request early access →

https://github.com/user-attachments/assets/7372b27b-8def-40fb-a11d-1f6585f556ad

What this gives you:

  • CopilotKit installed Core packages are fully set up in your app
  • Provider configured Context, state, and hooks ready to use
  • Agent <> UI connected Agents can stream actions and render UI immediately
  • Deployment-ready Your app is ready to deploy

Complete getting started guide →

How it works:

CopilotKit connects your UI, agents, and tools into a single interaction loop.

CopilotKit Diagram — Motion x2 6 sec version

This enables:

  • Agents that ask users for input
  • Tools that render UI
  • Stateful workflows across steps and sessions
  • One agent, deployed across web, mobile, and chat platforms

useAgent Hook

The useAgent hook sits directly on AG-UI, giving you full programmatic control over the agent connection.

// Programmatically access and control your agents
const { agent } = useAgent({ agentId: "my_agent" });

// Render and update your agent's state
return <div>
  <h1>{agent.state.city}</h1>
  <button onClick={() => agent.setState({ city: "NYC" })}>
    Set City
  </button>
</div>

Check out the useAgent docs to learn more.

https://github.com/user-attachments/assets/67928406-8abc-49a1-a851-98018b52174f

Generative UI

Generative UI is a core CopilotKit pattern that allows agents to dynamically render UI as part of their workflow.

https://github.com/user-attachments/assets/3cfacac0-4ffd-457a-96f9-d7951e4ab7b6

Compare the Three Types

image

Explore:

Generative UI educational repo →

🖥️ AG-UI: The AgentUser Interaction Protocol

Connect agent workflows to user-facing apps, with deep partnerships and 1st-party integrations across the agentic stack—including LangChain, CrewAI, Mastra, PydanticAI, and more.

AG-UI


npx create-ag-ui-app my-agent-app
Learn more in the AG-UI README →

🤝 Community

Have questions or need help?

Join our Discord →
Read the Docs →
Try CopilotKit Intelligence →

Stay up to date with our latest releases!

Follow us on LinkedIn →
Follow us on X →

🙋🏽‍♂️ 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:

📄 License

This repository's source code is available under the MIT License.

S
Description
copilotkit-debug: Use when diagnosing CopilotKit issues -- runtime connectivity failures, agent not responding, streaming errors, tool execution problems, transcription…; copilotkit-develop: Use when building AI-powered features with CopilotKit v2 -- adding chat interfaces, registering frontend tools, sharing application context with agents,…; copilotkit-agui: Use when building custom agent backends, implementing the AG-UI protocol, debugging streaming issues, or understanding how agents commun…
Readme MIT 924 MiB
Languages
TypeScript 78.7%
MDX 6.6%
Python 6.4%
C# 1.7%
CSS 1.3%
Other 5.3%