from datetime import datetime from typing import Any from pydantic import BaseModel class CaptureRequest(BaseModel): content: str source: str = "unknown" metadata: dict[str, Any] = {} class Thought(BaseModel): id: str content: str source: str metadata: dict[str, Any] created_at: datetime embedded: bool class SearchRequest(BaseModel): query: str limit: int = 10 source: str | None = None class SearchResult(BaseModel): id: str content: str source: str similarity: float created_at: datetime metadata: dict[str, Any] class Stats(BaseModel): total_thoughts: int embedded_count: int sources: list[dict[str, Any]]