"""Tool config request/response schemas.""" from pydantic import BaseModel, Field class ToolConfigCreate(BaseModel): tool_type_id: str = Field(description="UUID of the tool type") key: str = Field(description="Configuration key") value: str = Field(description="Configuration value") config_type: str = Field(default="env", description="Config type: env or file") file_path: str | None = Field(default=None, description="File path for file configs") port_override: int | None = Field(default=None, description="Port override") start_command: str | None = Field(default=None, description="Start command override") working_directory: str | None = Field(default=None, description="Working directory") environment_variables: dict[str, str] | None = Field( default=None, description="Additional environment variables" ) volumes: list[dict] | None = Field(default=None, description="Volume mounts") class ToolConfigUpdate(BaseModel): value: str | None = None config_type: str | None = None file_path: str | None = None port_override: int | None = None start_command: str | None = None working_directory: str | None = None environment_variables: dict[str, str] | None = None volumes: list[dict] | None = None class ToolConfigResponse(BaseModel): id: str tool_type_id: str user_id: str project_id: str | None key: str value: str config_type: str file_path: str | None port_override: int | None start_command: str | None working_directory: str | None environment_variables: dict[str, str] | None volumes: list[dict] | None created_at: str updated_at: str