from pydantic import BaseModel, Field from typing import List, Literal, Optional from datetime import datetime PromptKind = Literal["core", "safety", "governance", "tools"] class AgentPrompt(BaseModel): id: Optional[str] = None kind: PromptKind content: str version: int updated_at: Optional[datetime] = None created_by: Optional[str] = None note: Optional[str] = None class AgentPromptList(BaseModel): agent_id: str prompts: List[AgentPrompt] class AgentPromptUpsertItem(BaseModel): kind: PromptKind content: str note: Optional[str] = None class AgentPromptUpsertRequest(BaseModel): prompts: List[AgentPromptUpsertItem] = Field(default_factory=list)