assistant-ui
assistant-uiライブラリ(AIチャットUIコンポーネント)に関するガイドです。アーキテクチャの理解、デバッグ、コードベースの調査について質問する際に使用してください。
description の原文を見る
Guide for assistant-ui library - AI chat UI components. Use when asking about architecture, debugging, or understanding the codebase.
SKILL.md 本文
assistant-ui
常に assistant-ui.com/llms.txt で最新 API を確認してください。
AI チャットインターフェースを構成可能なプリミティブで構築するための React ライブラリ。
参考資料
./references/architecture.md-- コアアーキテクチャとレイヤー型システム./references/packages.md-- パッケージの概要と選定ガイド
使用時期
| ユースケース | 最適な用途 |
|---|---|
| チャット UI をゼロから構築 | UX を完全にコントロール |
| 既存 AI バックエンド | 任意のストリーミングバックエンドに接続 |
| カスタムメッセージ型 | ツール、画像、ファイル、カスタムパーツ |
| マルチスレッドアプリ | 組み込みのスレッドリスト管理 |
| 本番アプリ | クラウド永続化、認証、分析 |
アーキテクチャ
┌─────────────────────────────────────────────────────────┐
│ UI Components (Primitives) │
│ ThreadPrimitive, MessagePrimitive, ComposerPrimitive │
└─────────────────────────┬───────────────────────────────┘
│
┌─────────────────────────▼───────────────────────────────┐
│ Context Hooks │
│ useAui, useAuiState, useAuiEvent │
└─────────────────────────┬───────────────────────────────┘
│
┌─────────────────────────▼───────────────────────────────┐
│ Runtime Layer │
│ AssistantRuntime → ThreadRuntime → MessageRuntime │
└─────────────────────────┬───────────────────────────────┘
│
┌─────────────────────────▼───────────────────────────────┐
│ Adapters/Backend │
│ AI SDK · LangGraph · Custom · Cloud Persistence │
└─────────────────────────────────────────────────────────┘
Runtime を選択
AI SDK を使用していますか?
├─ はい → useChatRuntime(推奨)
└─ いいえ
├─ 外部状態(Redux/Zustand)? → useExternalStoreRuntime
├─ LangGraph エージェント? → useLangGraphRuntime
├─ AG-UI プロトコル? → useAgUiRuntime
├─ A2A プロトコル? → useA2ARuntime
└─ カスタム API → useLocalRuntime
コアパッケージ
| パッケージ | 用途 |
|---|---|
@assistant-ui/react | UI プリミティブとフック |
@assistant-ui/react-ai-sdk | Vercel AI SDK v6 アダプター |
@assistant-ui/react-langgraph | LangGraph アダプター |
@assistant-ui/react-markdown | Markdown レンダリング |
assistant-stream | ストリーミングプロトコル |
assistant-cloud | クラウド永続化 |
クイックスタート
import { AssistantRuntimeProvider } from "@assistant-ui/react";
import { Thread } from "@/components/assistant-ui/thread";
import { useChatRuntime, AssistantChatTransport } from "@assistant-ui/react-ai-sdk";
function App() {
const runtime = useChatRuntime({
transport: new AssistantChatTransport({ api: "/api/chat" }),
});
return (
<AssistantRuntimeProvider runtime={runtime}>
<Thread />
</AssistantRuntimeProvider>
);
}
状態へのアクセス
import { useAui, useAuiState } from "@assistant-ui/react";
const api = useAui();
api.thread().append({ role: "user", content: [{ type: "text", text: "Hi" }] });
api.thread().cancelRun();
const messages = useAuiState(s => s.thread.messages);
const isRunning = useAuiState(s => s.thread.isRunning);
関連スキル
/setup- インストールと設定/primitives- UI コンポーネントのカスタマイズ/runtime- 状態管理の詳細解説/tools- ツール登録と UI/streaming- ストリーミングプロトコル/cloud- 永続化と認証/thread-list- マルチスレッド管理/update- バージョン更新とマイグレーション
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- assistant-ui
- リポジトリ
- assistant-ui/skills
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/assistant-ui/skills / ライセンス: MIT
関連スキル
agent-browser
AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。
anyskill
AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。
engram
AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。
skyvern
AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。
pinchbench
PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。
openui
OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。