package types import "time" type Role string const ( RoleUser Role = "user" RoleAssistant Role = "assistant" RoleSystem Role = "system" RoleTool Role = "tool" ) type Message struct { ID string `json:"id"` Role Role `json:"role"` Content string `json:"content"` ToolCall *ToolCall `json:"toolCall,omitempty"` CreatedAt time.Time `json:"createdAt"` } type ToolCall struct { Name string `json:"name"` Arguments string `json:"arguments"` Result string `json:"result,omitempty"` } type Conversation struct { ID string `json:"id"` Messages []Message `json:"messages"` CreatedAt time.Time `json:"createdAt"` UpdatedAt time.Time `json:"updatedAt"` } type Mood string const ( MoodNeutral Mood = "neutral" MoodCurious Mood = "curious" MoodPlayful Mood = "playful" MoodThoughtful Mood = "thoughtful" MoodAnnoyed Mood = "annoyed" MoodTired Mood = "tired" )