The agentic ecosystem produces new frameworks, protocols, and products weekly, and most confusion about them comes from comparing things that live in different buckets. Name the bucket first, and the landscape gets simple.
Bucket one: agent orchestration
This is everything about how an agent thinks and acts: model choice, tool calling, planning, permissioning, memory, and the harnesses that coordinate multi-step work across sub-agents. Frameworks like LangGraph, CrewAI, and the Agent Development Kit live here, and MCP, which connects agents to tools and data, is this bucket’s signature protocol.
It is where most of the industry’s attention lives, and where most of the well-known names compete. When people say “the agent stack,” they usually mean this bucket alone.
Bucket two: connecting agents to user-facing applications
The second bucket looks like last-mile plumbing and turns out to be one of the hardest problems in the stack. The reason: agents break the request-response paradigm the internet has been built on since its inception.
- Agents are long-running. They work for minutes, not milliseconds, so they must stream their work as it happens rather than return one response.
- Agents are steerable mid-run. Users interrupt, correct, and approve while the agent is working, so the connection must be bi-directional and support human-in-the-loop interaction.
- Connections break. A user closes a laptop mid-run; the session has to reconnect and resume without losing the thread.
- Agents are recursive. Connecting to an agent means connecting to its tools and sub-agents too, and their activity has to reflect back to the user coherently.
- The exchange mixes structured and unstructured data. Text and voice flow alongside tool calls, state updates, forms, and generative UI.
This is the layer the AG-UI protocol standardizes, and where CopilotKit builds: open-source infrastructure for connecting any agent to any user-facing application, with pre-built components or fully headless UI. The core of the bucket is the infrastructure of connectivity, not UI components.
Bucket three: agents that learn in production
Shipping an agent is the start of its lifecycle, not the end. The third bucket is self-improvement: once an agent is in production, it should get better from every interaction rather than plateau at launch quality.
The learning signals are the interactions themselves: agent-user conversations on one side, in-app user activity on the other. Learning is scoped per user, per group, and per organization, and it lands in two forms: skills injected back into the agent through in-context learning, with no fine-tuning pipeline required, and datasets exported for fine-tuning when you want them. Every learned behavior stays auditable, tracing back to its source. This is the bucket CopilotKit Intelligence occupies.
Why the buckets matter
The buckets compose; they do not compete. Your orchestration framework, your connectivity layer, and your learning loop are orthogonal choices, which is why protocols like MCP (bucket one) and AG-UI (bucket two) work together rather than fight.
The model also dissolves most category confusion. “LangGraph vs. CopilotKit” is not a comparison; it is one tool from bucket one and one from bucket two, typically used together. When a new agentic product launches, the first useful question is not “is it good?” but “which bucket is it in?”
