Skip to content

Chat SDK adds web adapter support

1 min read

You can now build chat UIs that connect to Chat SDK with the new web adapter. Build in-product assistants, support agents, or any other browser-based chat experience.

Define the bot on your server:

lib/bot.ts
import { Chat } from "chat";
import { createWebAdapter } from "@chat-adapter/web";
const bot = new Chat({
userName: "mybot",
adapters: {
web: createWebAdapter({
userName: "mybot",
getUser: (req) => ({ id: getUserIdFromCookie(req) }),
}),
},
});
bot.onDirectMessage(async (thread, message) => {
await thread.post(`You said: ${message.text}`);
});

Echo each direct message back to the sender

Then stream replies live to the browser with a preconfigured @ai-sdk/react useChat hook:

app/chat/page.tsx
import { useChat } from "@chat-adapter/web/react";
const { messages, sendMessage, status } = useChat();

Wire the bot into a React component

Read the Chat SDK documentation to get started, browse the supported adapters, or learn how to build your own.