Co-Pilot / 辅助式
更新于 3 months ago
thread-list
Aassistant-ui
0.0k
assistant-ui/skills/assistant-ui/skills/thread-list
💡 摘要
此技能管理多个聊天线程,并提供可自定义的用户界面组件。
🎯 适合人群
前端开发者UI/UX设计师产品经理软件工程师技术团队负责人
🤖 AI 吐槽: “看起来很能打,但别让配置把人劝退。”
安全分析中风险
风险:Medium。建议检查:是否发起外网请求(SSRF/数据外发)。以最小权限运行,并在生产环境启用前审计代码与依赖。
name: thread-list description: Guide for multi-thread management in assistant-ui. Use when implementing thread lists, switching threads, or managing conversation history. version: 0.0.1 license: MIT
assistant-ui Thread List
Always consult assistant-ui.com/llms.txt for latest API.
Manage multiple chat threads with built-in or custom UI.
References
- ./references/management.md -- Thread CRUD operations
- ./references/custom-ui.md -- Custom thread list UI
Quick Start
Thread list is available with useChatRuntime + cloud:
import { AssistantCloud } from "assistant-cloud"; import { useChatRuntime, AssistantChatTransport } from "@assistant-ui/react-ai-sdk"; import { AssistantRuntimeProvider, Thread, ThreadList } from "@assistant-ui/react"; 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 ( <AssistantRuntimeProvider runtime={runtime}> <div className="flex h-screen"> <ThreadList className="w-64 border-r" /> <Thread className="flex-1" /> </div> </AssistantRuntimeProvider> ); }
Thread Operations
import { useAssistantApi, useAssistantState } from "@assistant-ui/react"; const api = useAssistantApi(); const { threads, mainThreadId } = useAssistantState(s => s.threadList); // Switch to thread api.threads().switchToThread(threadId); // Create new thread api.threads().switchToNewThread(); // Thread item operations const item = api.threads().item({ id: threadId }); await item.rename("New Title"); await item.archive(); await item.delete();
Custom Thread List
import { ThreadListPrimitive, ThreadListItemPrimitive } from "@assistant-ui/react"; function CustomThreadList() { return ( <ThreadListPrimitive.Root className="w-64"> <ThreadListPrimitive.New className="w-full p-2 bg-blue-500 text-white"> + New Chat </ThreadListPrimitive.New> <ThreadListPrimitive.Items> <ThreadListItemPrimitive.Root className="flex p-2 hover:bg-gray-100"> <ThreadListItemPrimitive.Trigger className="flex-1"> <ThreadListItemPrimitive.Title /> </ThreadListItemPrimitive.Trigger> <ThreadListItemPrimitive.Archive>Archive</ThreadListItemPrimitive.Archive> <ThreadListItemPrimitive.Delete>Delete</ThreadListItemPrimitive.Delete> </ThreadListItemPrimitive.Root> </ThreadListPrimitive.Items> </ThreadListPrimitive.Root> ); }
Without Cloud (Local)
import { useRemoteThreadListRuntime, InMemoryThreadListAdapter } from "@assistant-ui/react"; const runtime = useRemoteThreadListRuntime({ adapter: new InMemoryThreadListAdapter(), runtimeHook: () => useLocalRuntime({ model: myModel }), });
Common Gotchas
ThreadList not showing
- Pass
cloudto runtime - Check authentication
Threads not persisting
- Verify cloud connection
- Check network requests
五维分析
清晰度8/10
创新性6/10
实用性9/10
完整性8/10
可维护性7/10
优缺点分析
优点
- 支持多线程管理。
- 可自定义的用户界面组件。
- 易于与现有应用程序集成。
缺点
- 需要云设置以实现完整功能。
- 可能存在身份验证问题。
- 依赖外部库。
相关技能
免责声明:本内容来源于 GitHub 开源项目,仅供展示和评分分析使用。
版权归原作者所有 assistant-ui.
