Demos

233 results

Most Popular

LangGraph (Python)LangGraph Platform

CLI Start Command

Copy-paste command to clone the canonical starter

LangGraph (Python)LangGraph Platform

Pre-Built: CopilotChat

Vanilla CopilotChat with three starter-prompt suggestions — the minimum-viable surface for free-form chat

LangGraph (Python)LangGraph Platform

Chat Customization: CSS

Default CopilotChat re-themed via CopilotKitCSSProperties

LangGraph (Python)LangGraph Platform

Generative UI: Tool Rendering (Default)

Out-of-the-box tool rendering — backend defines the tools; the frontend adds zero custom renderers and relies on CopilotKit's built-in default UI

LangGraph (Python)LangGraph Platform

Generative UI: Tool Rendering (Catch-all)

Single branded wildcard renderer via useDefaultRenderTool — the same app-designed card paints every tool call

LangGraph (Python)LangGraph Platform

Frontend Tools: In-app Actions

Agent invokes client-side handlers registered with useFrontendTool

LangGraph (Python)LangGraph Platform

Frontend Tools: Async

useFrontendTool with an async handler — agent awaits a client-side async operation (simulated notes DB query) and uses the returned result

LangGraph (Python)LangGraph Platform

Human In the Loop: In-chat

Time-slot picker rendered inline in the chat via `useHumanInTheLoop` — the agent requests user input, the frontend renders a TimePickerCard, and the user's choice resumes the agent.

LangGraph (Python)LangGraph Platform

Human in the Loop: In-app

Agent requests approval via useFrontendTool with an async handler; the approval UI pops up as an app-level modal OUTSIDE the chat, and a completion callback resolves the pending tool Promise with the user's decision

LangGraph (Python)LangGraph Platform

Generative UI: Tool Rendering (Custom)

Custom per-tool renderers (WeatherCard, FlightListCard) plus a wildcard catch-all for every other tool

LangGraph (Python)LangGraph Platform

Generative UI: Tool calls + reasoning

Per-tool renderers (WeatherCard, FlightListCard, custom catchall) interleaved with a reasoningMessage slot rendering the agent's reasoning tokens — combines reasoning-display + tool-rendering in one chat surface.

LangGraph (Python)LangGraph Platform

Generative UI: useComponent

Agent uses tools to trigger UI generation

LangGraph (Python)LangGraph Platform

Generative UI: Agent State

Agent-state-driven Gen UI — the agent plans a live step list via Command(update={steps}); the frontend subscribes through useAgent and renders the steps inside CopilotChat's messageView.children slot.

LangGraph (Python)LangGraph Platform

Shared State: Streaming

Per-token state delta streaming from agent to UI

LangGraph (Python)LangGraph Platform

Shared State: Read + Write

Bidirectional shared state — UI writes preferences via agent.setState; agent writes notes via a Command-returning tool

LangGraph (Python)LangGraph Platform

Shared State: Read-only

Recipe editor publishes form state via agent.setState; the agent reads the recipe context but does not mutate it (no backend tool — neutral default agent).

LangGraph (Python)LangGraph Platform

Sub-Agents

Multiple agents with visible task delegation

LangGraph (Python)LangGraph Platform

Pre-Built: Sidebar

Docked sidebar chat via <CopilotSidebar />

LangGraph (Python)LangGraph Platform

Pre-Built: Popup

Floating popup chat via <CopilotPopup />

LangGraph (Python)LangGraph Platform

Chat Customization: Slots

Customize CopilotChat via its slot system

LangGraph (Python)LangGraph Platform

Headless UI: Simple

Minimum viable headless chat — useAgent + useCopilotKit dressed in shadcn/ui primitives. No tool rendering, no generative UI, just text in / text out.

LangGraph (Python)LangGraph Platform

Headless UI: Complete

Full headless surface — hand-rolled CopilotChat replacement that wires every render hook (useRenderTool, useDefaultRenderTool, useComponent, useRenderToolCall, useRenderActivityMessage, useSuggestions, useAttachments) on top of shadcn primitives.

LangGraph (Python)LangGraph Platform

Reasoning: Default

Built-in CopilotChatReasoningMessage rendering with no slot override.

LangGraph (Python)LangGraph Platform

Reasoning: Custom

Visible reasoning/thinking chain alongside the final answer

LangGraph (Python)LangGraph Platform

Human in the Loop: Interrupts

Interactive component rendered inline in the chat via the lower-level `useInterrupt` primitive — direct control over the LangGraph interrupt lifecycle

LangGraph (Python)LangGraph Platform

Human in the Loop: Headless Interrupts

Same interrupt(...) backend pattern as gen-ui-interrupt, but the time-picker mounts in a separate app-surface pane (left) instead of inline inside the chat — uses useHeadlessInterrupt (custom-event subscribe + manual runAgent forwardedProps.command.resume).

LangGraph (Python)LangGraph Platform

Declarative UI: Dynamic A2UI

Canonical A2UI BYOC — custom catalog (Card/StatusBadge/Metric/InfoRow/PrimaryButton) wired via a2ui.catalog on the provider

LangGraph (Python)LangGraph Platform

Declarative UI: Fixed A2UI

Render an A2UI tree from a fixed, server-side schema — the agent streams data into a pre-authored component tree

LangGraph (Python)LangGraph Platform

A2UI Error Recovery

Makes the A2UI validate->retry recovery loop visible — an invalid first render heals to a valid one, and an always-invalid render shows a graceful recovery-exhausted fallback. Backend-owned via get_a2ui_tools (injectA2UITool=false); reuses the declarative-gen-ui catalog.

LangGraph (Python)LangGraph Platform

MCP Apps

MCP server-driven UI via activity renderers

LangGraph (Python)LangGraph Platform

Shared State: Frontend Context

Frontend provides read-only context to the agent via useAgentContext

LangGraph (Python)LangGraph Platform

Declarative UI: json-render

Streaming hierarchical JSON UI spec rendered via @json-render/react, with a Zod-validated catalog (MetricCard + PieChart + BarChart)

LangGraph (Python)LangGraph Platform

Beautiful Chat

Canonical polished starter chat — brand fonts, theme tokens, suggestion pills

LangGraph (Python)LangGraph Platform

Attachments

Image and PDF uploads via CopilotChat attachments, processed by a vision-capable agent

LangGraph (Python)LangGraph Platform

Authentication

Bearer-token gate via runtime onRequest hook with unauthenticated / authenticated states

LangGraph (Python)LangGraph Platform

Declarative UI: Hashbrown

Streaming structured output via @hashbrownai/react, rendering a sales dashboard catalog (MetricCard + PieChart + BarChart)

LangGraph (Python)LangGraph Platform

Open Generative UI: Default

Agent composes UI from a registered component library — distinct from Tool Rendering, which attaches a custom renderer to a *named* backend tool. Use Open Generative UI when you want the agent to assemble UI freely from a palette you control.

LangGraph (Python)LangGraph Platform

Open Generative UI: Custom

Same Open Generative UI surface, with the iframe-rendered components able to call back into frontend sandbox functions (e.g., a Calculator app whose buttons trigger handlers in the host page).

LangGraph (Python)LangGraph Platform

Voice

Speech-to-text via @copilotkit/voice with a bundled sample audio button

LangGraph (Python)LangGraph Platform

Agent Config Object

Forward a typed config object (tone / expertise / response length) from the provider to the agent's dynamic system prompt

Agent Frameworks

Claude Agent SDK (Python)

CLI Start Command

Copy-paste command to clone the canonical starter

Claude Agent SDK (Python)

Agentic Chat

Natural conversation with frontend tool execution

Claude Agent SDK (Python)

Tool Rendering

Backend agent tools rendered as UI components

Claude Agent SDK (Python)

Agentic Generative UI

Long-running agent tasks with generated UI

Claude Agent SDK (Python)

State Streaming

Per-token state delta streaming from agent to UI

Claude Agent SDK (Python)

Shared State (Read + Write)

Bidirectional agent state — UI writes preferences, agent writes notes back

Claude Agent SDK (Python)

Shared State (Read)

Agent reads frontend-provided state as context

Claude Agent SDK (Python)

Sub-Agents

Multiple agents with visible task delegation

Claude Agent SDK (Python)

Pre-Built: Sidebar

Docked sidebar chat via <CopilotSidebar />

Claude Agent SDK (Python)

Pre-Built: Popup

Floating popup chat via <CopilotPopup />

Claude Agent SDK (Python)

Chat Customization (Slots)

Customize CopilotChat via its slot system

Claude Agent SDK (Python)

Chat Customization (CSS)

Default CopilotChat re-themed via CopilotKitCSSProperties

Claude Agent SDK (Python)

Headless Chat (Simple)

Minimal custom chat surface built on useAgent

Claude Agent SDK (Python)

Headless Chat (Complete)

Full chat implementation built from scratch on useAgent

Claude Agent SDK (Python)

Frontend Tools (In-App Actions)

Agent invokes client-side handlers registered with useFrontendTool

Claude Agent SDK (Python)

Frontend Tools (Async)

useFrontendTool with an async handler — agent awaits a client-side async operation (simulated notes DB query) and uses the returned result

Claude Agent SDK (Python)

In-App Human in the Loop (Frontend Tools + async HITL)

Agent requests approval via useFrontendTool with an async handler; the approval UI pops up as an app-level modal OUTSIDE the chat, and a completion callback resolves the pending tool Promise with the user's decision

Claude Agent SDK (Python)

Readonly State (Agent Context)

Frontend provides read-only context to the agent via useAgentContext

Claude Agent SDK (Python)

Tool Rendering (Default Catch-all)

Out-of-the-box tool rendering — backend defines the tools; the frontend adds zero custom renderers and relies on CopilotKit's built-in default UI

Claude Agent SDK (Python)

Tool Rendering (Custom Catch-all)

Single branded wildcard renderer via useDefaultRenderTool — the same app-designed card paints every tool call

Claude Agent SDK (Python)

Fully Open-Ended Generative UI

Agent generates UI from an arbitrary component library

Claude Agent SDK (Python)

Open-Ended Gen UI (Advanced: with frontend function calling)

Agent-authored UI that can invoke frontend sandbox functions from inside the iframe

Claude Agent SDK (Python)

Declarative UI: json-render

Declarative generative UI via @json-render/react — Claude emits a flat element-tree spec the renderer consumes

Claude Agent SDK (Python)

Declarative UI: Hashbrown

Declarative streaming UI via @hashbrownai/react useJsonParser — Claude emits a catalog-constrained UI envelope

Claude Agent SDK (Python)

Multimodal Attachments

Image + PDF attachments routed through Claude's native vision + pypdf text flattening

Claude Agent SDK (Python)

Voice Input

Audio transcription wired on a per-demo runtime with a guarded OpenAI Whisper service that maps missing keys to 401

Claude Agent SDK (Python)

Agent Config Object

Forwarded props (tone / expertise / responseLength) flow from the provider into the agent's system prompt via `forwardedProps.config.configurable.properties`

Claude Agent SDK (Python)

Agentic Chat (Reasoning)

Visible reasoning / thinking chain rendered via a custom messageView slot

Claude Agent SDK (Python)

Reasoning (Default Render)

Reasoning rendered via CopilotKit's built-in collapsible card with zero custom config

Claude Agent SDK (Python)

Tool Rendering (Reasoning Chain)

Sequential tool calls combined with visible reasoning steps

Claude Agent SDK (Python)

Authentication

Framework-native request auth via the V2 runtime's `onRequest` hook; missing bearer token returns 401

Claude Agent SDK (Python)

MCP Apps

MCP server-driven UI via activity renderers — the agent calls a tool on a remote MCP server (Excalidraw) and the runtime middleware renders the returned UI resource as a sandboxed iframe inline in the chat

Claude Agent SDK (Python)

Beautiful Chat

Polished brand-themed chat surface over the Claude Agent SDK backend with seeded suggestion pills and a glanceable decorative side panel — pure frontend dressing, no extra runtime config

Claude Agent SDK (Python)

Tool-Based Generative UI

Agent uses tools to trigger UI generation (haiku generator via useFrontendTool + useRenderTool)

Claude Agent SDK (Python)

In-Chat HITL (useHumanInTheLoop — ergonomic API)

Interactive approval/decision surface rendered inline in the chat via the high-level `useHumanInTheLoop` hook

Claude Agent SDK (Python)

In-Chat HITL (useInterrupt — low-level primitive)

Interactive time-picker component rendered inline in the chat via useFrontendTool with an async handler — the Promise resolves only when the user picks a slot or cancels

Claude Agent SDK (Python)

Headless Interrupt (testing)

Resolve interrupts from a plain button grid — no chat, no useInterrupt render prop; the time-picker popup appears in the app surface outside the chat

Claude Agent SDK (Python)

Declarative Generative UI (A2UI)

Canonical A2UI BYOC — custom catalog (Card/StatusBadge/Metric/InfoRow/PrimaryButton/PieChart/BarChart) wired via a2ui.catalog on the provider; backend agent owns the `generate_a2ui` tool with injectA2UITool false

Claude Agent SDK (Python)

Declarative Generative UI (A2UI — Fixed Schema)

A2UI rendering against a known client-side schema; the backend ships flight_schema.json and only streams data via display_flight

Claude Agent SDK (TypeScript)

CLI Start Command

Copy-paste command to clone the canonical starter

Claude Agent SDK (TypeScript)

Agentic Chat

Natural conversation with frontend tool execution

Claude Agent SDK (TypeScript)

Pre-Built: Sidebar

Docked sidebar chat via <CopilotSidebar />

Claude Agent SDK (TypeScript)

Pre-Built: Popup

Floating popup chat via <CopilotPopup />

Claude Agent SDK (TypeScript)

Chat Customization (Slots)

Customize CopilotChat via its slot system

Claude Agent SDK (TypeScript)

Chat Customization (CSS)

Default CopilotChat re-themed via CopilotKitCSSProperties

Claude Agent SDK (TypeScript)

Headless Chat (Simple)

Minimal custom chat surface built on useAgent

Claude Agent SDK (TypeScript)

Frontend Tools (In-App Actions)

Agent invokes client-side handlers registered with useFrontendTool

Claude Agent SDK (TypeScript)

Frontend Tools (Async)

useFrontendTool with an async handler — agent awaits a client-side async operation (simulated notes DB query) and uses the returned result

Claude Agent SDK (TypeScript)

In-App Human in the Loop (Frontend Tools + async HITL)

Agent requests approval via useFrontendTool with an async handler; the approval UI pops up as an app-level modal OUTSIDE the chat, and a completion callback resolves the pending tool Promise with the user's decision

Claude Agent SDK (TypeScript)

Tool Rendering

Backend agent tools rendered as UI components

Claude Agent SDK (TypeScript)

Declarative Generative UI (A2UI)

Canonical A2UI BYOC — custom catalog wired via a2ui.catalog on the provider; backend agent owns the generate_a2ui tool with injectA2UITool false

Claude Agent SDK (TypeScript)

Agentic Generative UI

Long-running agent tasks with generated UI

Claude Agent SDK (TypeScript)

Tool-Based Generative UI

Agent uses frontend tools to trigger UI generation — useFrontendTool with a render function paints structured haiku output as a styled card alongside the chat

Claude Agent SDK (TypeScript)

State Streaming

Per-token state delta streaming from agent to UI

Claude Agent SDK (TypeScript)

Shared State (Read + Write)

Bidirectional shared state — UI writes preferences via agent.setState, agent reads them every turn and writes notes back via a set_notes tool

Claude Agent SDK (TypeScript)

Shared State (Read)

Agent reads frontend-provided state as context

Claude Agent SDK (TypeScript)

Sub-Agents

Supervisor delegates to research / writing / critique sub-agents (each a single secondary Anthropic Messages call); every delegation appears in a live log via shared state

Claude Agent SDK (TypeScript)

Readonly State (Agent Context)

Frontend provides read-only context to the agent via useAgentContext

Claude Agent SDK (TypeScript)

Fully Open-Ended Generative UI

Agent generates UI from an arbitrary component library

Claude Agent SDK (TypeScript)

Open-Ended Gen UI (Advanced: with frontend function calling)

Agent-authored UI that can invoke frontend sandbox functions from inside the iframe

Claude Agent SDK (TypeScript)

Declarative UI: json-render

Declarative generative UI via @json-render/react — Claude emits a flat element-tree spec the renderer consumes

Claude Agent SDK (TypeScript)

Declarative UI: Hashbrown

Declarative streaming UI via @hashbrownai/react useJsonParser — Claude emits a catalog-constrained UI envelope

Claude Agent SDK (TypeScript)

MCP Apps

MCP server-driven UI via activity renderers — runtime auto-applies the MCP Apps middleware and the built-in MCPAppsActivityRenderer paints sandboxed iframes inline in the chat

Claude Agent SDK (TypeScript)

Multimodal Attachments

Image and PDF attachments forwarded to Claude's vision-capable model

Claude Agent SDK (TypeScript)

Voice Input

Mic + sample audio transcription via a guarded OpenAI Whisper service

Claude Agent SDK (TypeScript)

Agent Config Object

forwardedProps route provider-configured tone/expertise/length into the Claude system prompt per turn

Claude Agent SDK (TypeScript)

Authentication

Bearer-token gate via the V2 runtime onRequest hook with typed 401 surface

Claude Agent SDK (TypeScript)

Tool Rendering: Default Catch-all

Zero-config wildcard renderer via useDefaultRenderTool — built-in tool-call card paints every tool

Claude Agent SDK (TypeScript)

Tool Rendering: Custom Catch-all

Single branded wildcard renderer registered via useDefaultRenderTool({ render })

Claude Agent SDK (TypeScript)

Reasoning (Default)

Built-in CopilotChatReasoningMessage card paints Claude extended-thinking output — zero custom slots

Claude Agent SDK (TypeScript)

Reasoning (Custom)

Custom reasoningMessage slot renders Claude extended-thinking deltas as a tagged amber banner

Claude Agent SDK (TypeScript)

Tool Rendering: Reasoning Chain

Reasoning slot + per-tool renderers + wildcard catch-all in one cell

Claude Agent SDK (TypeScript)

Beautiful Chat

Polished brand-themed chat surface over the shared Claude SDK agent with seeded suggestion pills

Claude Agent SDK (TypeScript)

In-Chat HITL (useHumanInTheLoop — ergonomic API)

Interactive approval/decision surface rendered inline in the chat via the high-level `useHumanInTheLoop` hook

Claude Agent SDK (TypeScript)

In-Chat HITL (useInterrupt — low-level primitive)

Interactive time-picker component rendered inline in the chat via useFrontendTool with an async handler — the Promise resolves only when the user picks a slot or cancels

Claude Agent SDK (TypeScript)

Headless Interrupt (testing)

Resolve interrupts from a plain button grid — no chat, no useInterrupt render prop; the time-picker popup appears in the app surface outside the chat

Claude Agent SDK (TypeScript)

Headless Chat (Complete)

Full custom chat surface built on `useAgent` — exercises the full rendering stack (text, per-tool renderers, frontend components) with backend get_weather / get_stock_price tools and a frontend highlight_note tool

Claude Agent SDK (TypeScript)

A2UI (Fixed Schema)

Fixed-schema A2UI — backend display_flight tool emits an a2ui_operations container that ships a JSON component tree plus per-call data; frontend catalog binds component names to React renderers

Enterprise

MS Agent Framework (.NET)

CLI Start Command

Copy-paste command to clone the canonical starter

MS Agent Framework (.NET)

Agentic Chat

Natural conversation with frontend tool execution

MS Agent Framework (.NET)

Chat Customization (CSS)

Default CopilotChat re-themed via CopilotKitCSSProperties

MS Agent Framework (.NET)

Tool Rendering (Default Catch-all)

Out-of-the-box tool rendering — backend defines the tools; the frontend adds zero custom renderers and relies on CopilotKit's built-in default UI

MS Agent Framework (.NET)

Tool Rendering (Custom Catch-all)

Single branded wildcard renderer via useDefaultRenderTool — the same app-designed card paints every tool call

MS Agent Framework (.NET)

Frontend Tools (In-App Actions)

Agent invokes client-side handlers registered with useFrontendTool

MS Agent Framework (.NET)

Frontend Tools (Async)

useFrontendTool with an async handler — agent awaits a client-side async operation (simulated notes DB query) and uses the returned result

MS Agent Framework (.NET)

In-Chat Human in the Loop (Original)

User approves agent actions before execution

MS Agent Framework (.NET)

In-App Human in the Loop (Frontend Tools + async HITL)

Agent requests approval via useFrontendTool with an async handler; the approval UI pops up as an app-level modal OUTSIDE the chat, and a completion callback resolves the pending tool Promise with the user's decision

MS Agent Framework (.NET)

In-Chat HITL (useHumanInTheLoop — ergonomic API)

Interactive approval/decision surface rendered inline in the chat via the high-level `useHumanInTheLoop` hook

MS Agent Framework (.NET)

Tool-Based Generative UI

Agent uses tools to trigger UI generation

MS Agent Framework (.NET)

Tool Rendering

Backend agent tools rendered as UI components

MS Agent Framework (.NET)

Agentic Generative UI

Long-running agent tasks with generated UI

MS Agent Framework (.NET)

State Streaming

Per-token state delta streaming from agent to UI

MS Agent Framework (.NET)

Shared State (Read + Write)

Bidirectional agent state — UI writes preferences, agent writes notes back via a set_notes tool

MS Agent Framework (.NET)

Sub-Agents

Supervisor delegates to research / writing / critique sub-agents with a live delegation log

MS Agent Framework (.NET)

Pre-Built: Sidebar

Docked sidebar chat via <CopilotSidebar />

MS Agent Framework (.NET)

Pre-Built: Popup

Floating popup chat via <CopilotPopup />

MS Agent Framework (.NET)

Chat Customization (Slots)

Customize CopilotChat via its slot system

MS Agent Framework (.NET)

Headless Chat (Simple)

Minimal custom chat surface built on useAgent

MS Agent Framework (.NET)

Headless Chat (Complete)

Full chat implementation built from scratch on useAgent

MS Agent Framework (.NET)

In-Chat HITL (useInterrupt — low-level primitive)

Interactive component rendered inline in the chat via the lower-level `useInterrupt` primitive — direct control over the interrupt lifecycle

MS Agent Framework (.NET)

Declarative Generative UI (A2UI)

Canonical A2UI BYOC — custom catalog (Card/StatusBadge/Metric/InfoRow/PrimaryButton) wired via a2ui.catalog on the provider; runtime injects the render_a2ui tool automatically

MS Agent Framework (.NET)

Declarative Generative UI (A2UI — Fixed Schema)

A2UI rendering against a known client-side schema

MS Agent Framework (.NET)

MCP Apps

MCP server-driven UI via activity renderers

MS Agent Framework (.NET)

Headless Interrupt (testing)

Resolve interrupts from a plain button grid — no chat, no useInterrupt render prop

MS Agent Framework (.NET)

Readonly State (Agent Context)

Frontend provides read-only context to the agent via useAgentContext

MS Agent Framework (.NET)

Reasoning (Default Render)

Built-in CopilotChatReasoningMessage renders without a custom slot

MS Agent Framework (.NET)

Reasoning (Custom Render)

Custom reasoning slot renders the model's visible thinking chain

MS Agent Framework (.NET)

Tool Rendering + Reasoning Chain (testing)

Sequential tool calls with reasoning tokens rendered side-by-side

MS Agent Framework (.NET)

BYOC json-render

Streaming hierarchical JSON UI spec rendered via @json-render/react, with a Zod-validated catalog (MetricCard + PieChart + BarChart)

MS Agent Framework (.NET)

Beautiful Chat

Canonical polished starter chat — brand fonts, theme tokens, suggestion pills

MS Agent Framework (.NET)

Multimodal Attachments

Image and PDF uploads via CopilotChat attachments, processed by a vision-capable agent

MS Agent Framework (.NET)

Authentication

Bearer-token gate via runtime onRequest hook with unauthenticated / authenticated states

MS Agent Framework (.NET)

BYOC Hashbrown

Streaming structured output via @hashbrownai/react, rendering a sales dashboard catalog (MetricCard + PieChart + BarChart)

MS Agent Framework (.NET)

Fully Open-Ended Generative UI

Agent generates UI from an arbitrary component library

MS Agent Framework (.NET)

Open-Ended Gen UI (Advanced: with frontend function calling)

Agent-authored UI that can invoke frontend sandbox functions from inside the iframe

MS Agent Framework (.NET)

Voice Input

Speech-to-text via @copilotkit/voice with a bundled sample audio button

MS Agent Framework (.NET)

Agent Config Object

Forward a typed config object (tone / expertise / response length) from the provider to the agent's dynamic system prompt

MS Agent Harness (.NET)

CLI Start Command

Copy-paste command to clone the canonical starter

MS Agent Harness (.NET)

Agentic Chat

Natural conversation with frontend tool execution

MS Agent Harness (.NET)

Chat Customization (CSS)

Default CopilotChat re-themed via CopilotKitCSSProperties

MS Agent Harness (.NET)

Tool Rendering (Default Catch-all)

Out-of-the-box tool rendering — backend defines the tools; the frontend adds zero custom renderers and relies on CopilotKit's built-in default UI

MS Agent Harness (.NET)

Tool Rendering (Custom Catch-all)

Single branded wildcard renderer via useDefaultRenderTool — the same app-designed card paints every tool call

MS Agent Harness (.NET)

Frontend Tools (In-App Actions)

Agent invokes client-side handlers registered with useFrontendTool

MS Agent Harness (.NET)

Frontend Tools (Async)

useFrontendTool with an async handler — agent awaits a client-side async operation (simulated notes DB query) and uses the returned result

MS Agent Harness (.NET)

In-Chat Human in the Loop (Original)

User approves agent actions before execution

MS Agent Harness (.NET)

In-App Human in the Loop (Frontend Tools + async HITL)

Agent requests approval via useFrontendTool with an async handler; the approval UI pops up as an app-level modal OUTSIDE the chat, and a completion callback resolves the pending tool Promise with the user's decision

MS Agent Harness (.NET)

In-Chat HITL (useHumanInTheLoop — ergonomic API)

Interactive approval/decision surface rendered inline in the chat via the high-level `useHumanInTheLoop` hook

MS Agent Harness (.NET)

Tool-Based Generative UI

Agent uses tools to trigger UI generation

MS Agent Harness (.NET)

Tool Rendering

Backend agent tools rendered as UI components

MS Agent Harness (.NET)

Agentic Generative UI

Long-running agent tasks with generated UI

MS Agent Harness (.NET)

State Streaming

Per-token state delta streaming from agent to UI

MS Agent Harness (.NET)

Shared State (Read + Write)

Bidirectional agent state — UI writes preferences, agent writes notes back via a set_notes tool

MS Agent Harness (.NET)

Sub-Agents

Supervisor delegates to research / writing / critique sub-agents with a live delegation log

MS Agent Harness (.NET)

Pre-Built: Sidebar

Docked sidebar chat via <CopilotSidebar />

MS Agent Harness (.NET)

Pre-Built: Popup

Floating popup chat via <CopilotPopup />

MS Agent Harness (.NET)

Chat Customization (Slots)

Customize CopilotChat via its slot system

MS Agent Harness (.NET)

Headless Chat (Simple)

Minimal custom chat surface built on useAgent

MS Agent Harness (.NET)

Headless Chat (Complete)

Full chat implementation built from scratch on useAgent

MS Agent Harness (.NET)

In-Chat HITL (useInterrupt — low-level primitive)

Interactive component rendered inline in the chat via the lower-level `useInterrupt` primitive — direct control over the interrupt lifecycle

MS Agent Harness (.NET)

Declarative Generative UI (A2UI)

Canonical A2UI BYOC — custom catalog (Card/StatusBadge/Metric/InfoRow/PrimaryButton) wired via a2ui.catalog on the provider; runtime injects the render_a2ui tool automatically

MS Agent Harness (.NET)

Declarative Generative UI (A2UI — Fixed Schema)

A2UI rendering against a known client-side schema

MS Agent Harness (.NET)

MCP Apps

MCP server-driven UI via activity renderers

MS Agent Harness (.NET)

Headless Interrupt (testing)

Resolve interrupts from a plain button grid — no chat, no useInterrupt render prop

MS Agent Harness (.NET)

Readonly State (Agent Context)

Frontend provides read-only context to the agent via useAgentContext

MS Agent Harness (.NET)

Reasoning (Default Render)

Built-in CopilotChatReasoningMessage renders without a custom slot

MS Agent Harness (.NET)

Reasoning (Custom Render)

Custom reasoning slot renders the model's visible thinking chain

MS Agent Harness (.NET)

Tool Rendering + Reasoning Chain (testing)

Sequential tool calls with reasoning tokens rendered side-by-side

MS Agent Harness (.NET)

BYOC json-render

Streaming hierarchical JSON UI spec rendered via @json-render/react, with a Zod-validated catalog (MetricCard + PieChart + BarChart)

MS Agent Harness (.NET)

Beautiful Chat

Canonical polished starter chat backed by Microsoft Agent Harness over Microsoft Agent Framework

MS Agent Harness (.NET)

Multimodal Attachments

Image and PDF uploads via CopilotChat attachments, processed by a vision-capable agent

MS Agent Harness (.NET)

Authentication

Bearer-token gate via runtime onRequest hook with unauthenticated / authenticated states

MS Agent Harness (.NET)

BYOC Hashbrown

Streaming structured output via @hashbrownai/react, rendering a sales dashboard catalog (MetricCard + PieChart + BarChart)

MS Agent Harness (.NET)

Fully Open-Ended Generative UI

Agent generates UI from an arbitrary component library

MS Agent Harness (.NET)

Open-Ended Gen UI (Advanced: with frontend function calling)

Agent-authored UI that can invoke frontend sandbox functions from inside the iframe

MS Agent Harness (.NET)

Voice Input

Speech-to-text via @copilotkit/voice with a bundled sample audio button

MS Agent Harness (.NET)

Agent Config Object

Forward a typed config object (tone / expertise / response length) from the provider to the agent's dynamic system prompt

Emerging

LangGraph (FastAPI)LangGraph Platform

CLI Start Command

Copy-paste command to clone the canonical starter

LangGraph (FastAPI)LangGraph Platform

Agentic Chat

Natural conversation with frontend tool execution

LangGraph (FastAPI)LangGraph Platform

Tool Rendering

Backend agent tools rendered as UI components

LangGraph (FastAPI)LangGraph Platform

In-Chat Human in the Loop (Original)

User approves agent actions before execution

LangGraph (FastAPI)LangGraph Platform

Agentic Generative UI

Long-running agent tasks with generated UI

LangGraph (FastAPI)LangGraph Platform

Tool-Based Generative UI

Agent uses tools to trigger UI generation

LangGraph (FastAPI)LangGraph Platform

State Streaming

Per-token state delta streaming from agent to UI

LangGraph (FastAPI)LangGraph Platform

Shared State (Read + Write)

Bidirectional shared state — UI writes preferences, agent writes notes

LangGraph (FastAPI)LangGraph Platform

Sub-Agents

Multiple agents with visible task delegation

LangGraph (FastAPI)LangGraph Platform

Pre-Built: Sidebar

Docked sidebar chat via <CopilotSidebar />

LangGraph (FastAPI)LangGraph Platform

Pre-Built: Popup

Floating popup chat via <CopilotPopup />

LangGraph (FastAPI)LangGraph Platform

Chat Customization (Slots)

Customize CopilotChat via its slot system

LangGraph (FastAPI)LangGraph Platform

Chat Customization (CSS)

Default CopilotChat re-themed via CopilotKitCSSProperties

LangGraph (FastAPI)LangGraph Platform

Beautiful Chat

Canonical polished starter chat — brand fonts, theme tokens, suggestion pills

LangGraph (FastAPI)LangGraph Platform

Headless Chat (Simple)

Minimal custom chat surface built on useAgent

LangGraph (FastAPI)LangGraph Platform

Headless Chat (Complete)

Full chat implementation built from scratch on useAgent

LangGraph (FastAPI)LangGraph Platform

Authentication

Bearer-token gate via runtime onRequest hook with unauthenticated / authenticated states

LangGraph (FastAPI)LangGraph Platform

Multimodal Attachments

Image and PDF uploads via CopilotChat attachments, processed by a vision-capable agent

LangGraph (FastAPI)LangGraph Platform

Agent Config Object

Forward a typed config object (tone / expertise / response length) from the provider to the agent's dynamic system prompt

LangGraph (FastAPI)LangGraph Platform

Tool Rendering (Default Catch-all)

Out-of-the-box tool rendering — backend defines the tools; the frontend adds zero custom renderers and relies on CopilotKit's built-in default UI

LangGraph (FastAPI)LangGraph Platform

Tool Rendering (Custom Catch-all)

Single branded wildcard renderer via useDefaultRenderTool — the same app-designed card paints every tool call

LangGraph (FastAPI)LangGraph Platform

Tool Rendering + Reasoning Chain (testing)

Sequential tool calls with reasoning tokens rendered side-by-side

LangGraph (FastAPI)LangGraph Platform

In-Chat HITL (useInterrupt — low-level primitive)

Interactive component rendered inline in the chat via the lower-level `useInterrupt` primitive — direct control over the LangGraph interrupt lifecycle

LangGraph (FastAPI)LangGraph Platform

Headless Interrupt (testing)

Resolve langgraph interrupts from a plain button grid — no chat, no useInterrupt render prop

LangGraph (FastAPI)LangGraph Platform

Declarative Generative UI (A2UI)

Canonical A2UI BYOC — custom catalog (Card/StatusBadge/Metric/InfoRow/PrimaryButton) wired via a2ui.catalog on the provider

LangGraph (FastAPI)LangGraph Platform

Declarative Generative UI (A2UI — Fixed Schema)

A2UI rendering against a known client-side schema

LangGraph (FastAPI)LangGraph Platform

A2UI Error Recovery

Makes the A2UI validate->retry recovery loop visible — an invalid first render heals to a valid one, and an always-invalid render shows a graceful recovery-exhausted fallback. Backend-owned via get_a2ui_tools (injectA2UITool=false); reuses the declarative-gen-ui catalog.

LangGraph (FastAPI)LangGraph Platform

MCP Apps

MCP server-driven UI via activity renderers

LangGraph (FastAPI)LangGraph Platform

Frontend Tools (In-App Actions)

Agent invokes client-side handlers registered with useFrontendTool

LangGraph (FastAPI)LangGraph Platform

Frontend Tools (Async)

useFrontendTool with an async handler — agent awaits a client-side async operation (simulated notes DB query) and uses the returned result

LangGraph (FastAPI)LangGraph Platform

In-App Human in the Loop (Frontend Tools + async HITL)

Agent requests approval via useFrontendTool with an async handler; the approval UI pops up as an app-level modal OUTSIDE the chat, and a completion callback resolves the pending tool Promise with the user's decision

LangGraph (FastAPI)LangGraph Platform

In-Chat HITL (useHumanInTheLoop — ergonomic API)

Interactive approval/decision surface rendered inline in the chat via the high-level `useHumanInTheLoop` hook

LangGraph (FastAPI)LangGraph Platform

In-Chat HITL (Booking)

Time-picker card rendered inline via useHumanInTheLoop for a booking flow

LangGraph (FastAPI)LangGraph Platform

Readonly State (Agent Context)

Frontend provides read-only context to the agent via useAgentContext

LangGraph (FastAPI)LangGraph Platform

Voice Input

Speech-to-text via @copilotkit/voice with a bundled sample audio button

LangGraph (FastAPI)LangGraph Platform

Fully Open-Ended Generative UI

Agent generates UI from an arbitrary component library

LangGraph (FastAPI)LangGraph Platform

Open-Ended Gen UI (Advanced: with frontend function calling)

Agent-authored UI that can invoke frontend sandbox functions from inside the iframe

62a46840e
CopilotKit Showcase