from typing import Dict, Any, List from pydantic import BaseModel class AgentRequest(BaseModel): tenant_id: str user_id: str | None message: str conversation_history: List[Dict[str, str]] = [] temperature: float = 0.0 class AgentDecision(BaseModel): action: str tool: str | None tool_input: Dict[str, Any] | None reason: str | None class AgentResponse(BaseModel): text: str decision: AgentDecision tool_traces: List[Dict[str, Any]] = [] reasoning_trace: List[Dict[str, Any]] = []