Configuration for the experimental Chrome typed-tools transport.
API
interface ExperimentalChromeToolsTransportOptions {createSession?: (options: ChromeToolsSessionOptions) => Promise<ChromeToolsSession>;events?: {
downloadRequired?: (status: 'downloadable' | 'downloading') => void | Promise<void>;
downloadProgress?: (percent: number) => void;
sessionState?: (state: 'created' | 'destroyed') => void;
};outputLanguage?: SupportedOutputLanguage;schemaFinalization?: 'after-tool-planning';timeoutMs?: number;toolPhase?: (context: ChromeToolsTurnContext) => ChromeToolPhase;}createSession
(options: ChromeToolsSessionOptions) => Promise<ChromeToolsSession>Optional session provider; native capability checks still apply.
events
{
downloadRequired?: (status: 'downloadable' | 'downloading') => void | Promise<void>;
downloadProgress?: (percent: number) => void;
sessionState?: (state: 'created' | 'destroyed') => void;
}outputLanguage
Text language negotiated for both input and output. Defaults to English.
schemaFinalization
'after-tool-planning'Finalize structured or component UI answers after unconstrained tool planning. Adds one terminal inference pass; individual schemas remain model-dependent.
timeoutMs
numberBounds an entire session, including creation and inference; 1–1200000ms.
toolPhase
(context: ChromeToolsTurnContext) => ChromeToolPhaseSelect one tool or direct schema finalization from immutable current-turn history. Requires schemaFinalization and a response schema.