useChat
Streaming chat — messages, send, interrupts, voice, ephemeral
useChat
See for the underlying AG-UI events.
Generated props table for
UseChatOptionswill be produced fromsdk/react/src/types.tsvia TypeDoc.
const { messages, input, setInput, handleSubmit, isStreaming, isLoadingHistory, error, interrupt, resumeInterrupt, files, todos, presentedFile, stop, reload, clear, startNewChat, currentThreadId, isEphemeral, sandboxCommands, voice,} = useChat({ agentId, threadId, initialMessages, onFinish, onError, onEvent, onThreadCreated, onTitle, voice: useVoice({ agentId, threadId }), context: () => ({ page: window.location.pathname }), // or plain object});
await sendMessage('Hello', { contextOverride: 'Live page context', context: { tier: 'pro' } });await resumeInterrupt({ decisions: [{ type: 'approve' }] }, 'Approved');