thread-list

安装量: 563
排名: #1964

安装

npx skills add https://github.com/assistant-ui/skills --skill thread-list

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 (

); }

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 ( + New Chat

  <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 cloud to runtime Check authentication

Threads not persisting

Verify cloud connection Check network requests

返回排行榜