cloud
提供线程、消息和文件的云端持久化解决方案,确保数据在云环境中的安全存储和可靠访问。
npx skills add assistant-ui/skills --skill cloudBefore / After 效果对比
1 组在开发AI助手时,用户的对话历史和文件上传通常只存在于当前会话中,一旦会话结束,所有上下文都会丢失,无法实现跨会话的记忆和连续性。
通过AssistantCloud技能,可以轻松地将AI助手的对话线程、消息和文件持久化到云端。这使得用户可以在不同设备或不同时间点恢复之前的对话,提供了无缝且个性化的用户体验。
description SKILL.md
cloud
assistant-ui Cloud Always consult assistant-ui.com/llms.txt for latest API. Cloud persistence for threads, messages, and files. References ./references/persistence.md -- Thread and message persistence ./references/authorization.md -- Authentication patterns Installation npm install assistant-cloud Quick Start import { AssistantCloud } from "assistant-cloud"; import { useChatRuntime, AssistantChatTransport } from "@assistant-ui/react-ai-sdk"; import { AssistantRuntimeProvider } from "@assistant-ui/react"; import { Thread } from "@/components/assistant-ui/thread"; import { ThreadList } from "@/components/assistant-ui/thread-list"; const cloud = new AssistantCloud({ baseUrl: process.env.NEXT_PUBLIC_ASSISTANT_BASE_URL, authToken: async () => getAuthToken(), }); function Chat() { const runtime = useChatRuntime({ transport: new AssistantChatTransport({ api: "/api/chat" }), cloud, }); return ( ); } Authentication Options // JWT Token (recommended) const cloud = new AssistantCloud({ baseUrl: process.env.NEXT_PUBLIC_ASSISTANT_BASE_URL, authToken: async () => session?.accessToken, }); // API Key (server-side) const cloud = new AssistantCloud({ baseUrl: process.env.ASSISTANT_BASE_URL, apiKey: process.env.ASSISTANT_API_KEY, userId: user.id, workspaceId: user.workspaceId, }); // Anonymous (public apps) const cloud = new AssistantCloud({ baseUrl: process.env.NEXT_PUBLIC_ASSISTANT_BASE_URL, anonymous: true, }); Cloud API // Thread operations const threads = await cloud.threads.list(); await cloud.threads.create({ title: "New Chat" }); await cloud.threads.update(threadId, { title: "Updated" }); await cloud.threads.delete(threadId); // Message operations const messages = await cloud.threads.messages(threadId).list(); // File uploads const { signedUrl, publicUrl } = await cloud.files.generatePresignedUploadUrl({ filename: "document.pdf", }); await fetch(signedUrl, { method: "PUT", body: file }); Environment Variables NEXT_PUBLIC_ASSISTANT_BASE_URL=https://api.assistant-ui.com ASSISTANT_API_KEY=your-api-key # Server-side only Common Gotchas Threads not persisting Pass cloud to runtime Check authentication Auth errors Verify authToken returns valid token Check baseUrl is correct Weekly Installs307Repositoryassistant-ui/skillsGitHub Stars7First SeenJan 21, 2026Security AuditsGen Agent Trust HubFailSocketPassSnykWarnInstalled oncodex270opencode269gemini-cli262github-copilot248cursor230amp229
forum用户评价 (0)
发表评价
暂无评价,来写第一条吧
统计数据
用户评分
为此 Skill 评分