Files
wehub-resource-sync e30e75b5d4
Code Quality / Oxlint + Oxfmt (push) Waiting to run
Code Quality / Template Sync (push) Waiting to run
Code Quality / Build Changed Packages (push) Waiting to run
Code Quality / Test Changed Packages (push) Waiting to run
Deploy Expo Example / Deploy Production (push) Waiting to run
Deploy Ink Example / Deploy Production (push) Waiting to run
Python Tests / pytest (assistant-stream, 3.10) (push) Waiting to run
Python Tests / pytest (assistant-stream, 3.12) (push) Waiting to run
Python Tests / pytest (assistant-ui-sync-server-api, 3.10) (push) Waiting to run
Python Tests / pytest (assistant-ui-sync-server-api, 3.12) (push) Waiting to run
Deploy Shadcn Registry / Deploy Production (push) Waiting to run
Template Metrics / LOC + Bundle Size (push) Waiting to run
Changesets / Create Version PR (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:40:13 +08:00
..

@assistant-ui/cloud-ai-sdk

Standalone Vercel AI SDK hooks backed by Assistant Cloud persistence. Use this when you want managed thread history, auto-titling, and thread CRUD for an AI SDK chat app without pulling in @assistant-ui/react.

If you are already using @assistant-ui/react, install @assistant-ui/react-ai-sdk and pass an AssistantCloud instance instead.

Installation

npm install @assistant-ui/cloud-ai-sdk assistant-cloud ai @ai-sdk/react

Usage

"use client";

import { useCloudChat } from "@assistant-ui/cloud-ai-sdk";

export function Chat() {
  const { messages, sendMessage, threadId } = useCloudChat();
  return (
    <div>
      {messages.map((m) => (
        <div key={m.id}>{m.content}</div>
      ))}
      <button onClick={() => sendMessage({ text: "Hello" })}>Send</button>
    </div>
  );
}

Set NEXT_PUBLIC_ASSISTANT_BASE_URL for zero-config, or pass an explicit cloud instance: useCloudChat({ cloud }). Pair with useThreads for thread CRUD and selection.

Full reference at assistant-ui.com/docs/cloud/ai-sdk.