export type ToolContextWithMetadata = { sessionID: string; messageID: string; agent: string; abort: AbortSignal; metadata?: (input: { title?: string; metadata?: Record; }) => void; };