donobu
Version:
Create browser automations with an LLM agent and replay them as Playwright scripts.
29 lines • 1.36 kB
TypeScript
import type { Page } from 'playwright-core';
import { GptClient } from '../../clients/GptClient';
import type { DonobuStack } from '../../managers/DonobuStack';
import type { ControlPanelFactory } from '../../models/ControlPanel';
import type { DonobuExtendedPage } from './DonobuExtendedPage';
/**
* Decorate a Playwright page with Donobu capabilities.
* - If the browser context already has an extended page, reuse its shared state (flowId,
* persistence, GPT client, cache settings); passing a different flowId will throw.
* - Otherwise, initialize a fresh flow and register it for future tabs in this context.
*/
export declare function extendPage(page: Page, options?: {
/**
* Optional externally supplied flow ID. When provided (the Playwright
* fixture does this), every log (both in user code and in the autonomous
* Donobu flow) shares the same identifier. If omitted we generate a UUID so
* standalone usages still function, but Playwright scenarios should always
* pass one to ensure log consistency.
*/
flowId?: string;
visualCueDurationMs?: number;
cacheFilepath?: string;
envVars?: string[];
gptClient?: GptClient;
headless?: boolean;
donobuStack?: DonobuStack;
controlPanelFactory?: ControlPanelFactory;
}): Promise<DonobuExtendedPage>;
//# sourceMappingURL=extendPage.d.ts.map