from pydantic import BaseModel, Field from typing import Optional class ChatRequest(BaseModel): """Request model for chat endpoint.""" message: str = Field(..., description="User message to send to the supervisor agent") thread_id: Optional[str] = Field( default=None, description="Thread ID for conversation continuity. If not provided, a new thread is created." ) class ChatResponse(BaseModel): """Response model for chat endpoint.""" response: str = Field(..., description="Agent's response message") thread_id: str = Field(..., description="Thread ID for conversation continuity") token_count: int = Field(..., description="Current token count in context window") class NewChatResponse(BaseModel): """Response model for creating a new chat session.""" thread_id: str = Field(..., description="New thread ID for the conversation") message: str = Field(..., description="Welcome message")