Agent Studio Chat
Follow the data flow
- •Start from
src/components/features/chat/hooks/useChatLogic.ts(Vercel AI SDKuseChat+DefaultChatTransport). - •Server route is
src/app/api/chat/route.ts(OpenRouter provider +streamText). - •UI entry is
src/components/features/chat/ChatInterface.tsx(Virtuoso list +ChatInput).
Know the state layers
- •Conversation persistence:
src/lib/store/useChatStore.ts - •UI-only transient state (editing/copy):
src/lib/store/useChatUIStore.ts - •Model + sampling + system instructions:
src/lib/store/useSettingsStore.tsandsrc/components/features/settings/SettingsPanel.tsx
Make safe changes
- •Preserve
UIMessage.partswhen needed (reasoning parts may carry provider metadata; seesrc/app/api/chat/route.ts). - •Prefer adding new transient UI flags to
useChatUIStoreto avoid prop drilling. - •Keep feature code under
src/components/features/chat/and reusesrc/components/ui/*primitives.