---
name: "@assistant-ui"
slug: "assistant-ui"
description: "Production-grade open-source React toolkit for building ChatGPT-style AI chat interfaces. Provides Radix-style composable primitives: Thread, Message, Composer, ThreadList, ActionBar, and more — all with streaming, auto-scroll, retries, attachments, markdown, code highlighting, voice dictation, and keyboard shortcuts built in. Adapter packages for Vercel AI SDK, LangGraph/LangChain, AG-UI, A2A, Google ADK, and custom data-stream backends. Supports generative UI (tool-call rendering, inline human approvals). Optional paid Cloud tier for managed thread history, telemetry, and file storage. Y Combinator-backed. Use for: any production AI chat or copilot UI that needs a fully featured, themeable, framework-agnostic chat shell wired to the Vercel AI SDK or LangGraph in minutes."
category: "AI/chat UI"
tags: ["ai", "audio", "buttons", "cards", "charts", "dashboard", "design-system", "forms", "hooks", "icons", "loaders", "marketing", "media", "navigation", "overlays", "pro-available", "theming"]
framework: "react"
license: "MIT"
author: "assistant-ui"
website: "https://www.assistant-ui.com"
github: "https://github.com/assistant-ui/assistant-ui"
registry: "https://r.assistant-ui.com/registry.json"
pro: true
pro_url: "https://www.assistant-ui.com/pricing"
github_stars: 10996
component_count: 42
generated_at: "2026-07-28T08:00:50.948Z"
---

# @assistant-ui

Production-grade open-source React toolkit for building ChatGPT-style AI chat interfaces. Provides Radix-style composable primitives: Thread, Message, Composer, ThreadList, ActionBar, and more — all with streaming, auto-scroll, retries, attachments, markdown, code highlighting, voice dictation, and keyboard shortcuts built in. Adapter packages for Vercel AI SDK, LangGraph/LangChain, AG-UI, A2A, Google ADK, and custom data-stream backends. Supports generative UI (tool-call rendering, inline human approvals). Optional paid Cloud tier for managed thread history, telemetry, and file storage. Y Combinator-backed. Use for: any production AI chat or copilot UI that needs a fully featured, themeable, framework-agnostic chat shell wired to the Vercel AI SDK or LangGraph in minutes.

## Links

- Website: https://www.assistant-ui.com
- GitHub: https://github.com/assistant-ui/assistant-ui
- Registry JSON: https://r.assistant-ui.com/registry.json
- Directory page: https://sh4dcn.vercel.app/registry/assistant-ui
- This file: https://sh4dcn.vercel.app/md/assistant-ui.md
- Pro / pricing: https://www.assistant-ui.com/pricing

## Install

```sh
# add the whole registry (shadcn CLI)
npx shadcn@latest add https://r.assistant-ui.com/registry.json
pnpm dlx shadcn@latest add https://r.assistant-ui.com/registry.json
bunx shadcn@latest add https://r.assistant-ui.com/registry.json
# clone the source repo
git clone https://github.com/assistant-ui/assistant-ui.git
# fetch the raw registry index
curl -s https://r.assistant-ui.com/registry.json
```

## Components (42)

| name | type | description | install |
| --- | --- | --- | --- |
| shimmer-style | registry:style | — | `npx shadcn@latest add https://r.assistant-ui.com/shimmer-style.json` |
| chat/b/ai-sdk-quick-start/json | registry:page | — | `npx shadcn@latest add https://r.assistant-ui.com/chat/b/ai-sdk-quick-start/json.json` |
| ai-sdk-backend | registry:page | — | `npx shadcn@latest add https://r.assistant-ui.com/ai-sdk-backend.json` |
| ai-sdk-backend-resumable | registry:page | — | `npx shadcn@latest add https://r.assistant-ui.com/ai-sdk-backend-resumable.json` |
| thread | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/thread.json` |
| voice | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/voice.json` |
| markdown-text | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/markdown-text.json` |
| reasoning | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/reasoning.json` |
| message-timing | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/message-timing.json` |
| context-display | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/context-display.json` |
| thread-list | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/thread-list.json` |
| mcp-config | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/mcp-config.json` |
| attachment | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/attachment.json` |
| follow-up-suggestions | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/follow-up-suggestions.json` |
| tooltip-icon-button | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/tooltip-icon-button.json` |
| syntax-highlighter | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/syntax-highlighter.json` |
| assistant-modal | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/assistant-modal.json` |
| assistant-sidebar | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/assistant-sidebar.json` |
| tool-fallback | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/tool-fallback.json` |
| tool-group | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/tool-group.json` |
| shiki-highlighter | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/shiki-highlighter.json` |
| mermaid-diagram | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/mermaid-diagram.json` |
| diff-viewer | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/diff-viewer.json` |
| threadlist-sidebar | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/threadlist-sidebar.json` |
| quote | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/quote.json` |
| sources | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/sources.json` |
| image | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/image.json` |
| file | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/file.json` |
| model-selector | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/model-selector.json` |
| logos | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/logos.json` |
| select | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/select.json` |
| direction | registry:ui | — | `npx shadcn@latest add https://r.assistant-ui.com/direction.json` |
| badge | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/badge.json` |
| tabs | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/tabs.json` |
| accordion | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/accordion.json` |
| dot-matrix | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/dot-matrix.json` |
| number-roll | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/number-roll.json` |
| heat-graph | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/heat-graph.json` |
| composer-trigger-popover | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/composer-trigger-popover.json` |
| directive-text | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/directive-text.json` |
| generative-ui-style | registry:style | — | `npx shadcn@latest add https://r.assistant-ui.com/generative-ui-style.json` |
| generative-ui | registry:component | — | `npx shadcn@latest add https://r.assistant-ui.com/generative-ui.json` |

## For AI agents

```text
You are adding components from @assistant-ui to a shadcn-compatible project.
1. Read this file (https://sh4dcn.vercel.app/md/assistant-ui.md) for the component list.
2. Fetch the machine-readable index: https://r.assistant-ui.com/registry.json
3. Install a single component with its install command from the table above.
4. Full structured record: https://sh4dcn.vercel.app/json (library slug: assistant-ui).
```
