opensteer 0.7.1 → 0.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -5,10 +5,6 @@ interface JsonObject$1 {
5
5
  }
6
6
  type JsonArray$1 = readonly JsonValue$1[];
7
7
 
8
- declare const OPENSTEER_PROTOCOL_NAME = "opensteer";
9
- declare const OPENSTEER_PROTOCOL_VERSION: string;
10
- type OpensteerProtocolVersion = typeof OPENSTEER_PROTOCOL_VERSION;
11
-
12
8
  interface ExternalBinaryLocation {
13
9
  readonly delivery: "external";
14
10
  readonly uri: string;
@@ -1414,48 +1410,21 @@ interface TraceBundle<TData = unknown> {
1414
1410
  readonly artifacts?: readonly OpensteerArtifact[];
1415
1411
  }
1416
1412
 
1417
- interface OpensteerRequestEnvelope<TInput> {
1418
- readonly protocol: typeof OPENSTEER_PROTOCOL_NAME;
1419
- readonly version: OpensteerProtocolVersion;
1420
- readonly requestId: string;
1421
- readonly operation: string;
1422
- readonly sentAt: number;
1423
- readonly input: TInput;
1424
- }
1425
-
1426
1413
  type OpensteerSnapshotMode = "action" | "extraction";
1427
- interface OpensteerManagedBrowserLaunchOptions {
1428
- readonly kind?: "managed";
1429
- readonly headless?: boolean;
1430
- readonly executablePath?: string;
1431
- readonly args?: readonly string[];
1432
- readonly timeoutMs?: number;
1433
- }
1434
- interface OpensteerSnapshotSessionBrowserLaunchOptions {
1435
- readonly kind: "snapshot-session";
1436
- readonly headless?: boolean;
1437
- readonly executablePath?: string;
1438
- readonly sourceUserDataDir: string;
1439
- readonly sourceProfileDirectory?: string;
1440
- readonly args?: readonly string[];
1441
- readonly timeoutMs?: number;
1442
- }
1443
- interface OpensteerSnapshotAuthenticatedBrowserLaunchOptions {
1444
- readonly kind: "snapshot-authenticated";
1414
+ interface OpensteerBrowserLaunchOptions {
1445
1415
  readonly headless?: boolean;
1446
1416
  readonly executablePath?: string;
1447
- readonly sourceUserDataDir: string;
1448
- readonly sourceProfileDirectory?: string;
1449
1417
  readonly args?: readonly string[];
1450
1418
  readonly timeoutMs?: number;
1451
1419
  }
1452
- interface OpensteerAttachLiveBrowserLaunchOptions {
1453
- readonly kind: "attach-live";
1420
+ interface OpensteerAttachBrowserOptions {
1421
+ readonly mode: "attach";
1454
1422
  readonly endpoint?: string;
1455
1423
  readonly headers?: Readonly<Record<string, string>>;
1456
1424
  readonly freshTab?: boolean;
1457
1425
  }
1458
- type OpensteerBrowserLaunchOptions = OpensteerManagedBrowserLaunchOptions | OpensteerSnapshotSessionBrowserLaunchOptions | OpensteerSnapshotAuthenticatedBrowserLaunchOptions | OpensteerAttachLiveBrowserLaunchOptions;
1426
+ type OpensteerBrowserMode = "temporary" | "persistent";
1427
+ type OpensteerBrowserOptions = OpensteerBrowserMode | OpensteerAttachBrowserOptions;
1459
1428
  interface OpensteerBrowserContextOptions {
1460
1429
  readonly ignoreHTTPSErrors?: boolean;
1461
1430
  readonly locale?: string;
@@ -1551,13 +1520,14 @@ interface OpensteerSessionState {
1551
1520
  readonly url: string;
1552
1521
  readonly title: string;
1553
1522
  }
1554
- interface OpensteerSessionOpenInput {
1523
+ interface OpensteerOpenInput {
1555
1524
  readonly url?: string;
1556
- readonly name?: string;
1557
- readonly browser?: OpensteerBrowserLaunchOptions;
1525
+ readonly workspace?: string;
1526
+ readonly browser?: OpensteerBrowserOptions;
1527
+ readonly launch?: OpensteerBrowserLaunchOptions;
1558
1528
  readonly context?: OpensteerBrowserContextOptions;
1559
1529
  }
1560
- interface OpensteerSessionOpenOutput extends OpensteerSessionState {
1530
+ interface OpensteerOpenOutput extends OpensteerSessionState {
1561
1531
  }
1562
1532
  interface OpensteerPageListInput {
1563
1533
  }
@@ -1889,7 +1859,7 @@ interface OpensteerScriptSandboxOutput {
1889
1859
  readonly durationMs: number;
1890
1860
  }
1891
1861
 
1892
- type OpensteerStateSourceKind = "managed" | "attach-live" | "snapshot-session" | "snapshot-authenticated";
1862
+ type OpensteerStateSourceKind = "temporary" | "persistent" | "attach";
1893
1863
  type OpensteerReverseCaseStatus = "capturing" | "analyzing" | "ready" | "attention";
1894
1864
  type OpensteerReverseChannelKind = "http" | "event-stream" | "websocket";
1895
1865
  type OpensteerReverseManualCalibrationMode = "allow" | "avoid" | "require";
@@ -2682,6 +2652,43 @@ interface OpensteerInteractionReplayOutput {
2682
2652
  readonly error?: string;
2683
2653
  }
2684
2654
 
2655
+ type MatchOperator = "exact" | "startsWith" | "contains";
2656
+ interface AttributeMatchClause {
2657
+ readonly kind: "attr";
2658
+ readonly key: string;
2659
+ readonly op?: MatchOperator;
2660
+ readonly value?: string;
2661
+ }
2662
+ interface PositionMatchClause {
2663
+ readonly kind: "position";
2664
+ readonly axis: "nthOfType" | "nthChild";
2665
+ }
2666
+ type MatchClause = AttributeMatchClause | PositionMatchClause;
2667
+ interface PathNodePosition {
2668
+ readonly nthChild: number;
2669
+ readonly nthOfType: number;
2670
+ }
2671
+ interface PathNode {
2672
+ readonly tag: string;
2673
+ readonly attrs: Readonly<Record<string, string>>;
2674
+ readonly position: PathNodePosition;
2675
+ readonly match: readonly MatchClause[];
2676
+ }
2677
+ interface ContextHop {
2678
+ readonly kind: "iframe" | "shadow";
2679
+ readonly host: readonly PathNode[];
2680
+ }
2681
+ interface ElementRouteBase {
2682
+ readonly context: readonly ContextHop[];
2683
+ readonly nodes: readonly PathNode[];
2684
+ }
2685
+ interface StructuralElementAnchor extends ElementRouteBase {
2686
+ readonly resolution: "structural";
2687
+ }
2688
+ interface ReplayElementPath extends ElementRouteBase {
2689
+ readonly resolution: "deterministic";
2690
+ }
2691
+
2685
2692
  declare const OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL: unique symbol;
2686
2693
  type DomActionScrollAlignment = "start" | "center" | "end" | "nearest";
2687
2694
  interface DomActionTargetInspection {
@@ -2716,6 +2723,7 @@ interface DomPointerHitAssessment {
2716
2723
  readonly hitOwner?: NodeLocator;
2717
2724
  }
2718
2725
  interface DomActionBridge {
2726
+ buildReplayPath(locator: NodeLocator): Promise<ReplayElementPath>;
2719
2727
  inspectActionTarget(locator: NodeLocator): Promise<DomActionTargetInspection>;
2720
2728
  canonicalizePointerTarget(locator: NodeLocator): Promise<NodeLocator>;
2721
2729
  classifyPointerHit(input: {
@@ -3036,26 +3044,42 @@ interface OpensteerTraceStore {
3036
3044
  }): Promise<TraceBundle | undefined>;
3037
3045
  }
3038
3046
 
3039
- declare const OPENSTEER_FILESYSTEM_ROOT_LAYOUT = "opensteer-filesystem-root";
3040
- declare const OPENSTEER_FILESYSTEM_ROOT_VERSION = 1;
3041
- interface OpensteerRootManifest {
3042
- readonly layout: typeof OPENSTEER_FILESYSTEM_ROOT_LAYOUT;
3043
- readonly version: typeof OPENSTEER_FILESYSTEM_ROOT_VERSION;
3047
+ declare const OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT = "opensteer-workspace";
3048
+ declare const OPENSTEER_FILESYSTEM_WORKSPACE_VERSION = 2;
3049
+ interface OpensteerWorkspaceManifest {
3050
+ readonly layout: typeof OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT;
3051
+ readonly version: typeof OPENSTEER_FILESYSTEM_WORKSPACE_VERSION;
3052
+ readonly scope: "workspace" | "temporary";
3053
+ readonly workspace?: string;
3044
3054
  readonly createdAt: number;
3045
3055
  readonly updatedAt: number;
3046
3056
  readonly paths: {
3057
+ readonly browser: "browser";
3058
+ readonly live: "live";
3047
3059
  readonly artifacts: "artifacts";
3048
3060
  readonly traces: "traces";
3049
3061
  readonly registry: "registry";
3050
3062
  };
3051
3063
  }
3052
- interface CreateFilesystemOpensteerRootOptions {
3064
+ interface CreateFilesystemOpensteerWorkspaceOptions {
3053
3065
  readonly rootPath: string;
3066
+ readonly workspace?: string;
3067
+ readonly scope?: "workspace" | "temporary";
3054
3068
  readonly createdAt?: number;
3055
3069
  }
3056
- interface FilesystemOpensteerRoot {
3070
+ interface FilesystemOpensteerWorkspace {
3057
3071
  readonly rootPath: string;
3058
- readonly manifest: OpensteerRootManifest;
3072
+ readonly manifestPath: string;
3073
+ readonly manifest: OpensteerWorkspaceManifest;
3074
+ readonly browserPath: string;
3075
+ readonly browserManifestPath: string;
3076
+ readonly browserUserDataDir: string;
3077
+ readonly livePath: string;
3078
+ readonly liveBrowserPath: string;
3079
+ readonly artifactsPath: string;
3080
+ readonly tracesPath: string;
3081
+ readonly registryPath: string;
3082
+ readonly lockPath: string;
3059
3083
  readonly artifacts: OpensteerArtifactStore;
3060
3084
  readonly traces: OpensteerTraceStore;
3061
3085
  readonly registry: {
@@ -3069,8 +3093,14 @@ interface FilesystemOpensteerRoot {
3069
3093
  readonly reversePackages: ReversePackageRegistryStore;
3070
3094
  readonly reverseReports: ReverseReportRegistryStore;
3071
3095
  };
3072
- }
3073
- declare function createFilesystemOpensteerRoot(options: CreateFilesystemOpensteerRootOptions): Promise<FilesystemOpensteerRoot>;
3096
+ lock<T>(task: () => Promise<T>): Promise<T>;
3097
+ }
3098
+ declare function normalizeWorkspaceId(workspace: string): string;
3099
+ declare function resolveFilesystemWorkspacePath(input: {
3100
+ readonly rootDir: string;
3101
+ readonly workspace: string;
3102
+ }): string;
3103
+ declare function createFilesystemOpensteerWorkspace(options: CreateFilesystemOpensteerWorkspaceOptions): Promise<FilesystemOpensteerWorkspace>;
3074
3104
 
3075
3105
  type DomActionPolicyOperation = "dom.click" | "dom.hover" | "dom.input" | "dom.scroll";
3076
3106
  interface TimeoutResolutionInput {
@@ -3144,43 +3174,7 @@ declare function delayWithSignal(delayMs: number, signal: AbortSignal): Promise<
3144
3174
 
3145
3175
  declare function runWithPolicyTimeout<T>(policy: TimeoutPolicy, input: TimeoutResolutionInput, operation: (context: TimeoutExecutionContext) => Promise<T>): Promise<T>;
3146
3176
 
3147
- type MatchOperator = "exact" | "startsWith" | "contains";
3148
- interface AttributeMatchClause {
3149
- readonly kind: "attr";
3150
- readonly key: string;
3151
- readonly op?: MatchOperator;
3152
- readonly value?: string;
3153
- }
3154
- interface PositionMatchClause {
3155
- readonly kind: "position";
3156
- readonly axis: "nthOfType" | "nthChild";
3157
- }
3158
- type MatchClause = AttributeMatchClause | PositionMatchClause;
3159
- interface PathNodePosition {
3160
- readonly nthChild: number;
3161
- readonly nthOfType: number;
3162
- }
3163
- interface PathNode {
3164
- readonly tag: string;
3165
- readonly attrs: Readonly<Record<string, string>>;
3166
- readonly position: PathNodePosition;
3167
- readonly match: readonly MatchClause[];
3168
- }
3169
3177
  type DomPath = readonly PathNode[];
3170
- interface ContextHop {
3171
- readonly kind: "iframe" | "shadow";
3172
- readonly host: DomPath;
3173
- }
3174
- interface ElementRouteBase {
3175
- readonly context: readonly ContextHop[];
3176
- readonly nodes: DomPath;
3177
- }
3178
- interface StructuralElementAnchor extends ElementRouteBase {
3179
- readonly resolution: "structural";
3180
- }
3181
- interface ReplayElementPath extends ElementRouteBase {
3182
- readonly resolution: "deterministic";
3183
- }
3184
3178
  type ElementPath = ReplayElementPath;
3185
3179
  interface DomDescriptorPayload {
3186
3180
  readonly kind: "dom-target";
@@ -3258,6 +3252,7 @@ interface DomWriteDescriptorInput {
3258
3252
  readonly updatedAt?: number;
3259
3253
  }
3260
3254
  interface DomReadDescriptorInput {
3255
+ readonly method: string;
3261
3256
  readonly description: string;
3262
3257
  }
3263
3258
  interface DomActionOutcome {
@@ -3338,6 +3333,15 @@ interface DomRuntime {
3338
3333
  scroll(input: DomScrollInput): Promise<DomActionOutcome>;
3339
3334
  extractFields(input: DomExtractFieldsInput): Promise<Readonly<Record<string, string | null>>>;
3340
3335
  extractArrayRows(input: DomExtractArrayRowsInput): Promise<readonly DomExtractedArrayRow[]>;
3336
+ validateArrayFieldPositionStripping(input: {
3337
+ readonly pageRef: PageRef;
3338
+ readonly itemParentPath: ReplayElementPath;
3339
+ readonly fields: readonly {
3340
+ readonly key: string;
3341
+ readonly originalPath: ReplayElementPath;
3342
+ readonly strippedPath: ReplayElementPath;
3343
+ }[];
3344
+ }): Promise<Readonly<Record<string, boolean>>>;
3341
3345
  }
3342
3346
 
3343
3347
  declare function buildArrayFieldPathCandidates(path: ElementPath): string[];
@@ -3380,11 +3384,108 @@ declare function sanitizeElementPath(path: ReplayElementPath): ReplayElementPath
3380
3384
 
3381
3385
  declare function createDomRuntime(options: {
3382
3386
  readonly engine: BrowserCoreEngine;
3383
- readonly root?: FilesystemOpensteerRoot;
3387
+ readonly root?: FilesystemOpensteerWorkspace;
3384
3388
  readonly namespace?: string;
3385
3389
  readonly policy?: OpensteerPolicy;
3386
3390
  }): DomRuntime;
3387
3391
 
3392
+ declare const OPENSTEER_ENGINE_NAMES: readonly ["playwright", "abp"];
3393
+ type OpensteerEngineName = (typeof OPENSTEER_ENGINE_NAMES)[number];
3394
+ declare const DEFAULT_OPENSTEER_ENGINE: OpensteerEngineName;
3395
+ declare function resolveOpensteerEngineName(input?: {
3396
+ readonly requested?: string;
3397
+ readonly environment?: string;
3398
+ }): OpensteerEngineName;
3399
+ declare function normalizeOpensteerEngineName(value: string, source?: string): OpensteerEngineName;
3400
+
3401
+ type DisposableBrowserCoreEngine = BrowserCoreEngine & {
3402
+ dispose?: () => Promise<void>;
3403
+ [Symbol.asyncDispose]?: () => Promise<void>;
3404
+ };
3405
+ interface WorkspaceBrowserBootstrap {
3406
+ readonly kind: "empty" | "cloneLocalProfile";
3407
+ readonly sourceUserDataDir?: string;
3408
+ readonly sourceProfileDirectory?: string;
3409
+ }
3410
+ interface WorkspaceBrowserManifest {
3411
+ readonly mode: "persistent";
3412
+ readonly createdAt: number;
3413
+ readonly updatedAt: number;
3414
+ readonly userDataDir: "browser/user-data";
3415
+ readonly bootstrap: WorkspaceBrowserBootstrap;
3416
+ }
3417
+ interface WorkspaceLiveBrowserRecord {
3418
+ readonly mode: "persistent";
3419
+ readonly engine: OpensteerEngineName;
3420
+ readonly endpoint?: string;
3421
+ readonly baseUrl?: string;
3422
+ readonly remoteDebuggingUrl?: string;
3423
+ readonly sessionDir?: string;
3424
+ readonly pid: number;
3425
+ readonly startedAt: number;
3426
+ readonly executablePath?: string;
3427
+ readonly userDataDir: string;
3428
+ }
3429
+ interface OpensteerBrowserStatus {
3430
+ readonly mode: "temporary" | "persistent" | "attach";
3431
+ readonly engine: OpensteerEngineName;
3432
+ readonly workspace?: string;
3433
+ readonly rootPath: string;
3434
+ readonly live: boolean;
3435
+ readonly browserPath?: string;
3436
+ readonly userDataDir?: string;
3437
+ readonly endpoint?: string;
3438
+ readonly baseUrl?: string;
3439
+ readonly manifest?: WorkspaceBrowserManifest;
3440
+ }
3441
+ interface OpensteerBrowserManagerOptions {
3442
+ readonly rootDir?: string;
3443
+ readonly rootPath?: string;
3444
+ readonly workspace?: string;
3445
+ readonly engineName?: OpensteerEngineName;
3446
+ readonly browser?: OpensteerBrowserOptions;
3447
+ readonly launch?: OpensteerBrowserLaunchOptions;
3448
+ readonly context?: OpensteerBrowserContextOptions;
3449
+ }
3450
+ declare class OpensteerBrowserManager {
3451
+ readonly mode: "temporary" | "persistent" | "attach";
3452
+ readonly engineName: OpensteerEngineName;
3453
+ readonly rootPath: string;
3454
+ readonly workspace: string | undefined;
3455
+ readonly cleanupRootOnDisconnect: boolean;
3456
+ private readonly browserOptions;
3457
+ private readonly launchOptions;
3458
+ private readonly contextOptions;
3459
+ private workspaceStore;
3460
+ constructor(options?: OpensteerBrowserManagerOptions);
3461
+ createEngine(): Promise<DisposableBrowserCoreEngine>;
3462
+ status(): Promise<OpensteerBrowserStatus>;
3463
+ clonePersistentBrowser(input: {
3464
+ readonly sourceUserDataDir: string;
3465
+ readonly sourceProfileDirectory?: string;
3466
+ }): Promise<WorkspaceBrowserManifest>;
3467
+ reset(): Promise<void>;
3468
+ delete(): Promise<void>;
3469
+ close(): Promise<void>;
3470
+ private createAbpEngine;
3471
+ private createTemporaryAbpEngine;
3472
+ private createPersistentAbpEngine;
3473
+ private createAdoptedAbpEngine;
3474
+ private createTemporaryEngine;
3475
+ private createAttachEngine;
3476
+ private createPersistentEngine;
3477
+ private createAttachedEngine;
3478
+ private ensureWorkspaceStore;
3479
+ private ensurePersistentBrowserManifest;
3480
+ private readBrowserManifest;
3481
+ private readLivePersistentBrowser;
3482
+ private readStoredLiveBrowser;
3483
+ private resolveLivePersistentEngineName;
3484
+ private assertPersistentBrowserClosed;
3485
+ private closePersistentBrowser;
3486
+ private requirePersistentMode;
3487
+ }
3488
+
3388
3489
  interface OpensteerRouteRequest {
3389
3490
  readonly url: string;
3390
3491
  readonly method: string;
@@ -3442,30 +3543,39 @@ interface OpensteerInterceptScriptOptions {
3442
3543
  }
3443
3544
 
3444
3545
  interface OpensteerEngineFactoryOptions {
3445
- readonly browser?: OpensteerBrowserLaunchOptions;
3546
+ readonly browser?: OpensteerBrowserOptions;
3547
+ readonly launch?: OpensteerBrowserLaunchOptions;
3446
3548
  readonly context?: OpensteerBrowserContextOptions;
3447
3549
  }
3448
3550
  type OpensteerEngineFactory = (options: OpensteerEngineFactoryOptions) => Promise<BrowserCoreEngine>;
3449
3551
  interface OpensteerRuntimeOptions {
3450
- readonly name?: string;
3552
+ readonly workspace?: string;
3451
3553
  readonly rootDir?: string;
3452
- readonly browser?: OpensteerBrowserLaunchOptions;
3554
+ readonly rootPath?: string;
3555
+ readonly engineName?: OpensteerEngineName;
3556
+ readonly browser?: OpensteerBrowserOptions;
3557
+ readonly launch?: OpensteerBrowserLaunchOptions;
3453
3558
  readonly context?: OpensteerBrowserContextOptions;
3454
3559
  readonly engine?: BrowserCoreEngine;
3455
3560
  readonly engineFactory?: OpensteerEngineFactory;
3456
3561
  readonly policy?: OpensteerPolicy;
3562
+ readonly cleanupRootOnClose?: boolean;
3457
3563
  }
3458
3564
  interface RuntimeOperationOptions {
3459
3565
  readonly signal?: AbortSignal;
3460
3566
  }
3461
- declare class OpensteerSessionRuntime {
3462
- readonly name: string;
3567
+ declare class OpensteerRuntime {
3568
+ readonly workspace: string;
3463
3569
  readonly rootPath: string;
3570
+ private readonly publicWorkspace;
3464
3571
  private readonly configuredBrowser;
3572
+ private readonly configuredLaunch;
3465
3573
  private readonly configuredContext;
3574
+ private readonly configuredEngineName;
3466
3575
  private readonly injectedEngine;
3467
3576
  private readonly engineFactory;
3468
3577
  private readonly policy;
3578
+ private readonly cleanupRootOnClose;
3469
3579
  private root;
3470
3580
  private engine;
3471
3581
  private dom;
@@ -3481,7 +3591,7 @@ declare class OpensteerSessionRuntime {
3481
3591
  private readonly recipeCache;
3482
3592
  private ownsEngine;
3483
3593
  constructor(options?: OpensteerRuntimeOptions);
3484
- open(input?: OpensteerSessionOpenInput, options?: RuntimeOperationOptions): Promise<OpensteerSessionOpenOutput>;
3594
+ open(input?: OpensteerOpenInput, options?: RuntimeOperationOptions): Promise<OpensteerOpenOutput>;
3485
3595
  listPages(input?: OpensteerPageListInput, options?: RuntimeOperationOptions): Promise<OpensteerPageListOutput>;
3486
3596
  newPage(input?: OpensteerPageNewInput, options?: RuntimeOperationOptions): Promise<OpensteerPageNewOutput>;
3487
3597
  activatePage(input: OpensteerPageActivateInput, options?: RuntimeOperationOptions): Promise<OpensteerPageActivateOutput>;
@@ -3564,6 +3674,7 @@ declare class OpensteerSessionRuntime {
3564
3674
  request(input: OpensteerRequestExecuteInput, options?: RuntimeOperationOptions): Promise<OpensteerRequestExecuteOutput>;
3565
3675
  computerExecute(input: OpensteerComputerExecuteInput, options?: RuntimeOperationOptions): Promise<OpensteerComputerExecuteOutput>;
3566
3676
  close(options?: RuntimeOperationOptions): Promise<OpensteerSessionCloseOutput>;
3677
+ disconnect(): Promise<void>;
3567
3678
  isOpen(): boolean;
3568
3679
  private runDomAction;
3569
3680
  private prepareDomTarget;
@@ -3612,10 +3723,10 @@ declare class OpensteerSessionRuntime {
3612
3723
  private executeConfiguredRecipeBinding;
3613
3724
  private clearRecipeBindingCache;
3614
3725
  private retryResolvedRequestPlan;
3615
- private resolveAuthRecipe;
3616
- private runResolvedAuthRecipe;
3617
- private executeAuthRecipeRecord;
3618
- private executeAuthRecipeStep;
3726
+ private resolveRecipeRecord;
3727
+ private runResolvedRecipe;
3728
+ private executeRecipeRecord;
3729
+ private executeRecipeStep;
3619
3730
  private executeAuthRecipeHook;
3620
3731
  private executeRecipeRequest;
3621
3732
  private resolvePageHttpBinding;
@@ -3856,7 +3967,7 @@ interface OpensteerRuntimeOperationOptions {
3856
3967
  readonly signal?: AbortSignal;
3857
3968
  }
3858
3969
  interface OpensteerSemanticRuntime {
3859
- open(input?: OpensteerSessionOpenInput, options?: OpensteerRuntimeOperationOptions): Promise<OpensteerSessionOpenOutput>;
3970
+ open(input?: OpensteerOpenInput, options?: OpensteerRuntimeOperationOptions): Promise<OpensteerOpenOutput>;
3860
3971
  listPages(input?: OpensteerPageListInput, options?: OpensteerRuntimeOperationOptions): Promise<OpensteerPageListOutput>;
3861
3972
  newPage(input?: OpensteerPageNewInput, options?: OpensteerRuntimeOperationOptions): Promise<OpensteerPageNewOutput>;
3862
3973
  activatePage(input: OpensteerPageActivateInput, options?: OpensteerRuntimeOperationOptions): Promise<OpensteerPageActivateOutput>;
@@ -3928,6 +4039,21 @@ interface OpensteerCloudOptions {
3928
4039
  readonly baseUrl?: string;
3929
4040
  readonly browserProfile?: CloudBrowserProfilePreference;
3930
4041
  }
4042
+ interface OpensteerResolvedRuntimeConfig {
4043
+ readonly mode: OpensteerExecutionMode;
4044
+ readonly cloud?: OpensteerCloudConfig;
4045
+ }
4046
+ declare function resolveOpensteerRuntimeConfig(input?: {
4047
+ readonly cloud?: boolean | OpensteerCloudOptions;
4048
+ readonly environmentMode?: string;
4049
+ readonly mode?: OpensteerExecutionMode;
4050
+ }): OpensteerResolvedRuntimeConfig;
4051
+ declare function createOpensteerSemanticRuntime(input?: {
4052
+ readonly runtimeOptions?: OpensteerRuntimeOptions;
4053
+ readonly engine?: OpensteerEngineName;
4054
+ readonly cloud?: boolean | OpensteerCloudOptions;
4055
+ readonly mode?: OpensteerExecutionMode;
4056
+ }): OpensteerDisconnectableRuntime;
3931
4057
 
3932
4058
  interface OpensteerTargetOptions {
3933
4059
  readonly element?: number;
@@ -4018,16 +4144,22 @@ type OpensteerAddInitScriptOptions = OpensteerAddInitScriptInput;
4018
4144
  interface OpensteerOptions extends OpensteerRuntimeOptions {
4019
4145
  readonly cloud?: boolean | OpensteerCloudOptions;
4020
4146
  }
4021
- interface OpensteerAttachOptions {
4022
- readonly name?: string;
4023
- readonly rootDir?: string;
4147
+ interface OpensteerBrowserCloneOptions {
4148
+ readonly sourceUserDataDir: string;
4149
+ readonly sourceProfileDirectory?: string;
4150
+ }
4151
+ interface OpensteerBrowserController {
4152
+ status(): Promise<OpensteerBrowserStatus>;
4153
+ clone(input: OpensteerBrowserCloneOptions): Promise<WorkspaceBrowserManifest>;
4154
+ reset(): Promise<void>;
4155
+ delete(): Promise<void>;
4024
4156
  }
4025
4157
  declare class Opensteer {
4026
- private runtime;
4027
- private ownership;
4158
+ private readonly runtime;
4159
+ private readonly browserManager;
4160
+ readonly browser: OpensteerBrowserController;
4028
4161
  constructor(options?: OpensteerOptions);
4029
- static attach(options?: OpensteerAttachOptions): Opensteer;
4030
- open(input?: string | OpensteerSessionOpenInput): Promise<OpensteerSessionOpenOutput>;
4162
+ open(input?: string | OpensteerOpenInput): Promise<OpensteerOpenOutput>;
4031
4163
  listPages(input?: OpensteerPageListInput): Promise<OpensteerPageListOutput>;
4032
4164
  newPage(input?: OpensteerPageNewInput): Promise<OpensteerPageNewOutput>;
4033
4165
  activatePage(input: OpensteerPageActivateInput): Promise<OpensteerPageActivateOutput>;
@@ -4098,57 +4230,12 @@ declare class Opensteer {
4098
4230
  computerExecute(input: OpensteerComputerExecuteOptions): Promise<OpensteerComputerExecuteResult>;
4099
4231
  close(): Promise<OpensteerSessionCloseOutput>;
4100
4232
  disconnect(): Promise<void>;
4101
- private static fromRuntime;
4102
4233
  private requireOwnedInstrumentationRuntime;
4103
4234
  }
4104
4235
 
4105
4236
  type BrowserBrandId = "chrome" | "chrome-canary" | "chromium" | "brave" | "edge" | "vivaldi" | "helium";
4106
- interface BrowserBrandPlatformConfig {
4107
- readonly executableCandidates: readonly (string | null)[];
4108
- readonly userDataDir: string;
4109
- readonly bundleId?: string;
4110
- readonly processNames: readonly string[];
4111
- }
4112
- interface BrowserBrandRecord {
4113
- readonly id: BrowserBrandId;
4114
- readonly displayName: string;
4115
- readonly darwin?: BrowserBrandPlatformConfig;
4116
- readonly win32?: BrowserBrandPlatformConfig;
4117
- readonly linux?: BrowserBrandPlatformConfig;
4118
- }
4119
- interface InstalledBrowserBrand {
4120
- readonly brand: BrowserBrandRecord;
4121
- readonly brandId: BrowserBrandId;
4122
- readonly displayName: string;
4123
- readonly executablePath: string;
4124
- readonly userDataDir: string;
4125
- }
4126
- declare function getAllBrowserBrands(): readonly BrowserBrandRecord[];
4127
- declare function getBrowserBrand(id: BrowserBrandId): BrowserBrandRecord;
4128
- declare function detectInstalledBrowserBrands(): readonly InstalledBrowserBrand[];
4129
4237
 
4130
4238
  type CookieCaptureStrategy = "attach" | "headless" | "managed-relaunch";
4131
- interface CookieCaptureSourceInput {
4132
- readonly brandId?: BrowserBrandId;
4133
- readonly userDataDir?: string;
4134
- readonly profileDirectory?: string;
4135
- readonly executablePath?: string;
4136
- readonly attachEndpoint?: string;
4137
- readonly strategy?: CookieCaptureStrategy;
4138
- readonly timeoutMs?: number;
4139
- }
4140
- interface ResolvedCookieCaptureStrategy {
4141
- readonly strategy: CookieCaptureStrategy;
4142
- readonly brandId?: BrowserBrandId;
4143
- readonly brandDisplayName?: string;
4144
- readonly executablePath?: string;
4145
- readonly userDataDir?: string;
4146
- readonly profileDirectory?: string;
4147
- readonly attachEndpoint?: string;
4148
- readonly runningPid?: number;
4149
- readonly timeoutMs: number;
4150
- }
4151
- declare function resolveCookieCaptureStrategy(input?: CookieCaptureSourceInput): Promise<ResolvedCookieCaptureStrategy>;
4152
4239
 
4153
4240
  interface SyncBrowserProfileCookiesInput {
4154
4241
  readonly profileId: string;
@@ -4199,13 +4286,38 @@ declare class OpensteerCloudClient {
4199
4286
  private waitForSessionClosed;
4200
4287
  }
4201
4288
 
4202
- declare class CloudSessionProxy implements OpensteerSemanticRuntime {
4289
+ declare const CLOUD_SESSION_LAYOUT = "opensteer-cloud-session";
4290
+ declare const CLOUD_SESSION_VERSION = 1;
4291
+ interface PersistedCloudSessionRecord {
4292
+ readonly layout: typeof CLOUD_SESSION_LAYOUT;
4293
+ readonly version: typeof CLOUD_SESSION_VERSION;
4294
+ readonly mode: "cloud";
4295
+ readonly workspace?: string;
4296
+ readonly sessionId: string;
4297
+ readonly baseUrl: string;
4298
+ readonly startedAt: number;
4299
+ readonly updatedAt: number;
4300
+ }
4301
+ interface CloudSessionProxyOptions {
4302
+ readonly rootDir?: string;
4303
+ readonly rootPath?: string;
4304
+ readonly workspace?: string;
4305
+ readonly cleanupRootOnClose?: boolean;
4306
+ }
4307
+ declare function resolveCloudSessionRecordPath(rootPath: string): string;
4308
+ declare function readPersistedCloudSessionRecord(rootPath: string): Promise<PersistedCloudSessionRecord | undefined>;
4309
+ declare function hasPersistedCloudSession(rootPath: string): Promise<boolean>;
4310
+ declare class CloudSessionProxy implements OpensteerDisconnectableRuntime {
4311
+ readonly rootPath: string;
4312
+ readonly workspace: string | undefined;
4313
+ private readonly cleanupRootOnClose;
4203
4314
  private readonly cloud;
4204
- private readonly name?;
4205
4315
  private sessionId;
4316
+ private sessionBaseUrl;
4206
4317
  private client;
4207
- constructor(cloud: OpensteerCloudClient, name?: string | undefined);
4208
- open(input?: OpensteerSessionOpenInput): Promise<OpensteerSessionOpenOutput>;
4318
+ private workspaceStore;
4319
+ constructor(cloud: OpensteerCloudClient, options?: CloudSessionProxyOptions);
4320
+ open(input?: OpensteerOpenInput): Promise<OpensteerOpenOutput>;
4209
4321
  listPages(input?: OpensteerPageListInput): Promise<OpensteerPageListOutput>;
4210
4322
  newPage(input?: OpensteerPageNewInput): Promise<OpensteerPageNewOutput>;
4211
4323
  activatePage(input: OpensteerPageActivateInput): Promise<OpensteerPageActivateOutput>;
@@ -4267,7 +4379,14 @@ declare class CloudSessionProxy implements OpensteerSemanticRuntime {
4267
4379
  request(input: OpensteerRequestExecuteInput): Promise<OpensteerRequestExecuteOutput>;
4268
4380
  computerExecute(input: OpensteerComputerExecuteInput): Promise<OpensteerComputerExecuteOutput>;
4269
4381
  close(): Promise<OpensteerSessionCloseOutput>;
4382
+ disconnect(): Promise<void>;
4270
4383
  private ensureSession;
4384
+ private bindClient;
4385
+ private ensureWorkspaceStore;
4386
+ private loadPersistedSession;
4387
+ private writePersistedSession;
4388
+ private clearPersistedSession;
4389
+ private isReusableCloudSession;
4271
4390
  private requireClient;
4272
4391
  }
4273
4392
 
@@ -4275,54 +4394,11 @@ declare function dispatchSemanticOperation(runtime: OpensteerSemanticRuntime, op
4275
4394
  readonly signal?: AbortSignal;
4276
4395
  }): Promise<unknown>;
4277
4396
 
4278
- declare class ServiceOperationScheduler {
4279
- private engineLane;
4280
- run<T>(options: {
4281
- readonly operation: OpensteerSemanticOperationName;
4282
- readonly input: unknown;
4283
- readonly signal: AbortSignal;
4284
- readonly task: () => Promise<T>;
4285
- }): Promise<T>;
4286
- }
4287
- declare function parseRequestEnvelope(value: unknown): OpensteerRequestEnvelope<unknown>;
4288
-
4289
- interface StealthProfile {
4290
- readonly id: string;
4291
- readonly platform: "macos" | "windows" | "linux";
4292
- readonly browserBrand: "chrome" | "edge";
4293
- readonly browserVersion: string;
4294
- readonly userAgent: string;
4295
- readonly viewport: {
4296
- readonly width: number;
4297
- readonly height: number;
4298
- };
4299
- readonly screenResolution: {
4300
- readonly width: number;
4301
- readonly height: number;
4302
- };
4303
- readonly devicePixelRatio: number;
4304
- readonly maxTouchPoints: number;
4305
- readonly webglVendor: string;
4306
- readonly webglRenderer: string;
4307
- readonly fonts: readonly string[];
4308
- readonly canvasNoiseSeed: number;
4309
- readonly audioNoiseSeed: number;
4310
- readonly locale: string;
4311
- readonly timezoneId: string;
4312
- }
4313
- type StealthProfileOverrides = Partial<StealthProfile>;
4314
- declare function generateStealthProfile(overrides?: StealthProfileOverrides): StealthProfile;
4315
-
4316
4397
  interface LocalChromeProfileDescriptor {
4317
4398
  readonly directory: string;
4318
4399
  readonly name: string;
4319
4400
  readonly userDataDir: string;
4320
4401
  }
4321
- interface LocalBrowserInstallation {
4322
- readonly brand: BrowserBrandId;
4323
- readonly executablePath: string | null;
4324
- readonly userDataDir: string;
4325
- }
4326
4402
  interface InspectedCdpEndpoint {
4327
4403
  readonly endpoint: string;
4328
4404
  readonly browser?: string;
@@ -4335,17 +4411,6 @@ interface LocalCdpBrowserCandidate extends InspectedCdpEndpoint {
4335
4411
  readonly installationBrand?: BrowserBrandId;
4336
4412
  readonly userDataDir?: string;
4337
4413
  }
4338
- interface LaunchMetadataRecord {
4339
- readonly args: readonly string[];
4340
- readonly executablePath: string;
4341
- readonly headless: boolean;
4342
- readonly owner: {
4343
- readonly pid: number;
4344
- readonly processStartedAtMs: number;
4345
- } | undefined;
4346
- readonly profileDirectory?: string;
4347
- readonly userDataDir: string;
4348
- }
4349
4414
 
4350
4415
  declare function listLocalChromeProfiles(userDataDir?: string): readonly LocalChromeProfileDescriptor[];
4351
4416
 
@@ -4364,114 +4429,4 @@ declare function discoverLocalCdpBrowsers(input?: {
4364
4429
  readonly timeoutMs?: number;
4365
4430
  }): Promise<readonly LocalCdpBrowserCandidate[]>;
4366
4431
 
4367
- declare const CHROME_SINGLETON_ARTIFACTS: readonly ["SingletonCookie", "SingletonLock", "SingletonSocket", "DevToolsActivePort", "lockfile"];
4368
- type ChromeSingletonArtifact = (typeof CHROME_SINGLETON_ARTIFACTS)[number];
4369
-
4370
- type OpensteerLocalProfileInspection = {
4371
- readonly status: "available";
4372
- readonly userDataDir: string;
4373
- } | {
4374
- readonly status: "unsupported_default_user_data_dir";
4375
- readonly userDataDir: string;
4376
- readonly installationBrand: BrowserBrandId | "unknown";
4377
- } | {
4378
- readonly status: "opensteer_owned";
4379
- readonly userDataDir: string;
4380
- readonly launchMetadata: LaunchMetadataRecord;
4381
- readonly owner: {
4382
- readonly pid: number;
4383
- readonly processStartedAtMs: number;
4384
- } | undefined;
4385
- } | {
4386
- readonly status: "browser_owned";
4387
- readonly userDataDir: string;
4388
- readonly evidence: "devtools" | "singleton_owner" | "singleton_artifacts";
4389
- readonly ownerPid?: number;
4390
- readonly cdpEndpoint?: string;
4391
- readonly attachMode: "attach" | null;
4392
- } | {
4393
- readonly status: "stale_lock";
4394
- readonly userDataDir: string;
4395
- readonly artifacts: readonly ChromeSingletonArtifact[];
4396
- readonly staleOwnerPid?: number;
4397
- };
4398
- interface OpensteerLocalProfileUnlockResult {
4399
- readonly userDataDir: string;
4400
- readonly removed: readonly ChromeSingletonArtifact[];
4401
- }
4402
- declare class OpensteerLocalProfileUnavailableError extends Error {
4403
- readonly inspection: OpensteerLocalProfileInspection;
4404
- readonly code = "profile-unavailable";
4405
- constructor(inspection: OpensteerLocalProfileInspection);
4406
- }
4407
- declare function inspectLocalBrowserProfile(input?: {
4408
- readonly userDataDir?: string;
4409
- }): Promise<OpensteerLocalProfileInspection>;
4410
- declare function unlockLocalBrowserProfile(input: {
4411
- readonly userDataDir: string;
4412
- }): Promise<OpensteerLocalProfileUnlockResult>;
4413
-
4414
- declare function generateStealthInitScript(profile: StealthProfile): string;
4415
-
4416
- interface MousePathPoint {
4417
- readonly x: number;
4418
- readonly y: number;
4419
- readonly t: number;
4420
- }
4421
- interface MousePath {
4422
- readonly points: readonly MousePathPoint[];
4423
- readonly durationMs: number;
4424
- }
4425
- declare function generateMousePath(input: {
4426
- readonly start: {
4427
- readonly x: number;
4428
- readonly y: number;
4429
- };
4430
- readonly end: {
4431
- readonly x: number;
4432
- readonly y: number;
4433
- };
4434
- readonly durationMs?: number;
4435
- readonly fps?: number;
4436
- readonly jitter?: number;
4437
- readonly curvature?: number;
4438
- }): MousePath;
4439
- declare function generateDragTrail(input: {
4440
- readonly start: {
4441
- readonly x: number;
4442
- readonly y: number;
4443
- };
4444
- readonly end: {
4445
- readonly x: number;
4446
- readonly y: number;
4447
- };
4448
- readonly durationMs?: number;
4449
- readonly fps?: number;
4450
- }): MousePath;
4451
-
4452
- interface TypingCadenceSample {
4453
- readonly character: string;
4454
- readonly delayMs: number;
4455
- }
4456
- declare function generateTypingCadence(input: {
4457
- readonly text: string;
4458
- readonly baseDelayMs?: number;
4459
- readonly jitterMs?: number;
4460
- readonly hesitationProbability?: number;
4461
- }): readonly TypingCadenceSample[];
4462
-
4463
- interface ScrollPatternPoint {
4464
- readonly deltaY: number;
4465
- readonly t: number;
4466
- }
4467
- interface ScrollPattern {
4468
- readonly points: readonly ScrollPatternPoint[];
4469
- readonly durationMs: number;
4470
- }
4471
- declare function generateScrollPattern(input: {
4472
- readonly distancePx: number;
4473
- readonly durationMs?: number;
4474
- readonly fps?: number;
4475
- }): ScrollPattern;
4476
-
4477
- export { type AnchorTargetRef, type AppendTraceEntryInput, type ArtifactManifest, type ArtifactScope, type AuthRecipeRecord, type AuthRecipeRegistryStore, type BrowserBrandId, type BrowserBrandRecord, type BrowserProfileArchiveFormat, type BrowserProfileCreateRequest, type BrowserProfileDescriptor, type BrowserProfileImportCreateRequest, type BrowserProfileImportCreateResponse, type BrowserProfileImportDescriptor, type BrowserProfileImportStatus, type BrowserProfileListResponse, type BrowserProfileStatus, type CloudBrowserContextConfig, type CloudBrowserExtensionConfig, type CloudBrowserLaunchConfig, type CloudBrowserProfileLaunchPreference, type CloudBrowserProfilePreference, type CloudFingerprintMode, type CloudFingerprintPreference, type CloudGeolocation, type CloudProxyMode, type CloudProxyPreference, type CloudProxyProtocol, type CloudSelectorCacheImportEntry, type CloudSelectorCacheImportRequest, type CloudSelectorCacheImportResponse, type CloudSessionLaunchConfig, CloudSessionProxy, type CloudSessionSourceType, type CloudSessionStatus, type CloudSessionSummary, type CloudSessionVisibilityScope, type CloudViewport, type ContextHop, type CookieCaptureSourceInput, type CookieCaptureStrategy, type CreateFilesystemOpensteerRootOptions, type CreateTraceRunInput, DEFERRED_MATCH_ATTR_KEYS, type DescriptorRecord, type DescriptorRegistryStore, type DomActionBridge, type DomActionBridgeProvider, type DomActionOutcome, type DomActionPolicyOperation, type DomActionScrollAlignment, type DomActionScrollOptions, type DomActionSettleOptions, type DomActionTargetInspection, type DomArrayFieldSelector, type DomArrayRowMetadata, type DomArraySelector, type DomBuildPathInput, type DomClickInput, type DomDescriptorPayload, type DomDescriptorRecord, type DomExtractArrayRowsInput, type DomExtractFieldSelector, type DomExtractFieldsInput, type DomExtractedArrayRow, type DomHoverInput, type DomInputInput, type DomPath, type DomReadDescriptorInput, type DomResolveTargetInput, type DomRuntime, type DomScrollInput, type DomTargetRef, type DomWriteDescriptorInput, type ElementPath, ElementPathError, type FallbackDecision, type FallbackEvaluationInput, type FallbackPolicy, type FilesystemOpensteerRoot, type InspectedCdpEndpoint, type InteractionTraceRecord, type InteractionTraceRegistryStore, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, type LocalBrowserInstallation, type LocalCdpBrowserCandidate, type LocalChromeProfileDescriptor, MATCH_ATTRIBUTE_PRIORITY, type MatchClause, type MousePath, type MousePathPoint, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OPENSTEER_FILESYSTEM_ROOT_LAYOUT, OPENSTEER_FILESYSTEM_ROOT_VERSION, Opensteer, type OpensteerAddInitScriptOptions, type OpensteerArtifactStore, OpensteerAttachAmbiguousError, type OpensteerAttachOptions, type OpensteerCaptureScriptsOptions, type OpensteerCaptureScriptsResult, OpensteerCloudClient, type OpensteerCloudConfig, type OpensteerCloudOptions, type OpensteerCloudSessionCreateInput, type OpensteerCloudSessionDescriptor, type OpensteerComputerExecuteOptions, type OpensteerComputerExecuteResult, type OpensteerDisconnectableRuntime, type OpensteerEngineFactory, type OpensteerEngineFactoryOptions, type OpensteerExecutionMode, type OpensteerExtractOptions, type OpensteerFetchedRouteResponse, type OpensteerInputOptions, type OpensteerInteractionCaptureOptions, type OpensteerInteractionCaptureResult, type OpensteerInteractionDiffOptions, type OpensteerInteractionDiffResult, type OpensteerInteractionReplayOptions, type OpensteerInteractionReplayResult, type OpensteerInterceptScriptOptions, type OpensteerLocalProfileInspection, OpensteerLocalProfileUnavailableError, type OpensteerLocalProfileUnlockResult, type OpensteerNetworkClearOptions, type OpensteerNetworkClearResult, type OpensteerNetworkQueryOptions, type OpensteerNetworkQueryResult, type OpensteerNetworkSaveOptions, type OpensteerNetworkSaveResult, type OpensteerOptions, type OpensteerPolicy, type OpensteerRawRequestOptions, type OpensteerRawRequestResult, type OpensteerRequestOptions, type OpensteerRequestResult, type OpensteerReverseDiscoverOptions, type OpensteerReverseDiscoverResult, type OpensteerReverseExportOptions, type OpensteerReverseExportResult, type OpensteerReversePackageCreateOptions, type OpensteerReversePackageCreateResult, type OpensteerReversePackageRunOptions, type OpensteerReversePackageRunResult, type OpensteerReverseQueryOptions, type OpensteerReverseQueryResult, type OpensteerReverseReportOptions, type OpensteerReverseReportResult, type OpensteerRootManifest, type OpensteerRouteHandlerResult, type OpensteerRouteOptions, type OpensteerRouteRegistration, type OpensteerRuntimeOptions, type OpensteerScrollOptions, type OpensteerSemanticRuntime, OpensteerSessionRuntime, type OpensteerTargetOptions, type OpensteerTraceStore, type OpensteerWaitForNetworkOptions, type OpensteerWaitForPageOptions, type PathNode, type ProtocolArtifactDelivery, type RecipeRecord, type RecipeRegistryStore, type RegistryProvenance, type RegistryRecord, type ReplayElementPath, type RequestPlanFreshness, type RequestPlanLifecycle, type RequestPlanRecord, type RequestPlanRegistryStore, type ResolveRegistryRecordInput, type ResolvedDomTarget, type RetryDecision, type RetryEvaluationInput, type RetryPolicy, type ReverseCaseRecord, type ReverseCaseRegistryStore, type ReversePackageRecord, type ReversePackageRegistryStore, type ReverseReportRecord, type ReverseReportRegistryStore, STABLE_PRIMARY_ATTR_KEYS, type SavedNetworkQueryInput, type SavedNetworkStore, type ScrollPattern, type ScrollPatternPoint, ServiceOperationScheduler, type SettleContext, type SettleDelayInput, type SettleObserver, type SettlePolicy, type SettleTrigger, type StealthProfile, type StealthProfileOverrides, type StoredArtifactPayload, type StoredArtifactRecord, type StructuralElementAnchor, type StructuredArtifactKind, type SyncBrowserProfileCookiesInput, type TimeoutExecutionContext, type TimeoutPolicy, type TimeoutResolutionInput, type TraceEntryRecord, type TraceRunManifest, type TypingCadenceSample, type UpdateReverseCaseInput, type WriteAuthRecipeInput, type WriteBinaryArtifactInput, type WriteDescriptorInput, type WriteInteractionTraceInput, type WriteRecipeInput, type WriteRequestPlanInput, type WriteReverseCaseInput, type WriteReversePackageInput, type WriteReverseReportInput, type WriteStructuredArtifactInput, buildArrayFieldPathCandidates, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createDomRuntime, createFilesystemOpensteerRoot, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, detectInstalledBrowserBrands, discoverLocalCdpBrowsers, dispatchSemanticOperation, generateDragTrail, generateMousePath, generateScrollPattern, generateStealthInitScript, generateStealthProfile, generateTypingCadence, getAllBrowserBrands, getBrowserBrand, inspectCdpEndpoint, inspectLocalBrowserProfile, isCurrentUrlField, isValidCssAttributeKey, listLocalChromeProfiles, normalizeExtractedValue, normalizeOpensteerExecutionMode, parseRequestEnvelope, resolveCloudConfig, resolveCookieCaptureStrategy, resolveDomActionBridge, resolveExtractedValueInContext, resolveOpensteerExecutionMode, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath, unlockLocalBrowserProfile };
4432
+ export { type AnchorTargetRef, type AppendTraceEntryInput, type ArtifactManifest, type ArtifactScope, type AuthRecipeRecord, type AuthRecipeRegistryStore, type BrowserProfileArchiveFormat, type BrowserProfileCreateRequest, type BrowserProfileDescriptor, type BrowserProfileImportCreateRequest, type BrowserProfileImportCreateResponse, type BrowserProfileImportDescriptor, type BrowserProfileImportStatus, type BrowserProfileListResponse, type BrowserProfileStatus, type CloudBrowserContextConfig, type CloudBrowserExtensionConfig, type CloudBrowserLaunchConfig, type CloudBrowserProfileLaunchPreference, type CloudBrowserProfilePreference, type CloudFingerprintMode, type CloudFingerprintPreference, type CloudGeolocation, type CloudProxyMode, type CloudProxyPreference, type CloudProxyProtocol, type CloudSelectorCacheImportEntry, type CloudSelectorCacheImportRequest, type CloudSelectorCacheImportResponse, type CloudSessionLaunchConfig, CloudSessionProxy, type CloudSessionProxyOptions, type CloudSessionSourceType, type CloudSessionStatus, type CloudSessionSummary, type CloudSessionVisibilityScope, type CloudViewport, type ContextHop, type CreateFilesystemOpensteerWorkspaceOptions, type CreateTraceRunInput, DEFAULT_OPENSTEER_ENGINE, DEFERRED_MATCH_ATTR_KEYS, type DescriptorRecord, type DescriptorRegistryStore, type DomActionBridge, type DomActionBridgeProvider, type DomActionOutcome, type DomActionPolicyOperation, type DomActionScrollAlignment, type DomActionScrollOptions, type DomActionSettleOptions, type DomActionTargetInspection, type DomArrayFieldSelector, type DomArrayRowMetadata, type DomArraySelector, type DomBuildPathInput, type DomClickInput, type DomDescriptorPayload, type DomDescriptorRecord, type DomExtractArrayRowsInput, type DomExtractFieldSelector, type DomExtractFieldsInput, type DomExtractedArrayRow, type DomHoverInput, type DomInputInput, type DomPath, type DomReadDescriptorInput, type DomResolveTargetInput, type DomRuntime, type DomScrollInput, type DomTargetRef, type DomWriteDescriptorInput, type ElementPath, ElementPathError, type FallbackDecision, type FallbackEvaluationInput, type FallbackPolicy, type FilesystemOpensteerWorkspace, type InspectedCdpEndpoint, type InteractionTraceRecord, type InteractionTraceRegistryStore, type JsonArray, type JsonObject, type JsonPrimitive, type JsonValue, type LocalCdpBrowserCandidate, type LocalChromeProfileDescriptor, MATCH_ATTRIBUTE_PRIORITY, type MatchClause, OPENSTEER_DOM_ACTION_BRIDGE_SYMBOL, OPENSTEER_ENGINE_NAMES, OPENSTEER_FILESYSTEM_WORKSPACE_LAYOUT, OPENSTEER_FILESYSTEM_WORKSPACE_VERSION, Opensteer, type OpensteerAddInitScriptOptions, type OpensteerArtifactReadOptions, type OpensteerArtifactReadResult, type OpensteerArtifactStore, OpensteerAttachAmbiguousError, type OpensteerBrowserCloneOptions, type OpensteerBrowserController, OpensteerBrowserManager, type OpensteerBrowserManagerOptions, type OpensteerBrowserStatus, type OpensteerCaptchaSolveOptions, type OpensteerCaptchaSolveResult, type OpensteerCaptureScriptsOptions, type OpensteerCaptureScriptsResult, OpensteerCloudClient, type OpensteerCloudConfig, type OpensteerCloudOptions, type OpensteerCloudSessionCreateInput, type OpensteerCloudSessionDescriptor, type OpensteerComputerExecuteOptions, type OpensteerComputerExecuteResult, type OpensteerDisconnectableRuntime, type OpensteerEngineFactory, type OpensteerEngineFactoryOptions, type OpensteerEngineName, type OpensteerExecutionMode, type OpensteerExtractOptions, type OpensteerFetchedRouteResponse, type OpensteerInputOptions, type OpensteerInteractionCaptureOptions, type OpensteerInteractionCaptureResult, type OpensteerInteractionDiffOptions, type OpensteerInteractionDiffResult, type OpensteerInteractionReplayOptions, type OpensteerInteractionReplayResult, type OpensteerInterceptScriptOptions, type OpensteerNetworkClearOptions, type OpensteerNetworkClearResult, type OpensteerNetworkDiffOptions, type OpensteerNetworkDiffResult, type OpensteerNetworkMinimizeOptions, type OpensteerNetworkMinimizeResult, type OpensteerNetworkProbeOptions, type OpensteerNetworkProbeResult, type OpensteerNetworkQueryOptions, type OpensteerNetworkQueryResult, type OpensteerNetworkSaveOptions, type OpensteerNetworkSaveResult, type OpensteerOptions, type OpensteerPolicy, type OpensteerRawRequestOptions, type OpensteerRawRequestResult, type OpensteerRequestOptions, type OpensteerRequestResult, type OpensteerReverseDiscoverOptions, type OpensteerReverseDiscoverResult, type OpensteerReverseExportOptions, type OpensteerReverseExportResult, type OpensteerReversePackageCreateOptions, type OpensteerReversePackageCreateResult, type OpensteerReversePackageGetOptions, type OpensteerReversePackageGetResult, type OpensteerReversePackageListOptions, type OpensteerReversePackageListResult, type OpensteerReversePackagePatchOptions, type OpensteerReversePackagePatchResult, type OpensteerReversePackageRunOptions, type OpensteerReversePackageRunResult, type OpensteerReverseQueryOptions, type OpensteerReverseQueryResult, type OpensteerReverseReportOptions, type OpensteerReverseReportResult, type OpensteerRouteHandlerResult, type OpensteerRouteOptions, type OpensteerRouteRegistration, OpensteerRuntime, type OpensteerRuntimeOptions, type OpensteerScriptBeautifyOptions, type OpensteerScriptBeautifyResult, type OpensteerScriptDeobfuscateOptions, type OpensteerScriptDeobfuscateResult, type OpensteerScriptSandboxOptions, type OpensteerScriptSandboxResult, type OpensteerScrollOptions, type OpensteerSemanticRuntime, type OpensteerTargetOptions, type OpensteerTraceStore, type OpensteerWaitForNetworkOptions, type OpensteerWaitForPageOptions, type OpensteerWorkspaceManifest, type PathNode, type PersistedCloudSessionRecord, type ProtocolArtifactDelivery, type RecipeRecord, type RecipeRegistryStore, type RegistryProvenance, type RegistryRecord, type ReplayElementPath, type RequestPlanFreshness, type RequestPlanLifecycle, type RequestPlanRecord, type RequestPlanRegistryStore, type ResolveRegistryRecordInput, type ResolvedDomTarget, type RetryDecision, type RetryEvaluationInput, type RetryPolicy, type ReverseCaseRecord, type ReverseCaseRegistryStore, type ReversePackageRecord, type ReversePackageRegistryStore, type ReverseReportRecord, type ReverseReportRegistryStore, STABLE_PRIMARY_ATTR_KEYS, type SavedNetworkQueryInput, type SavedNetworkStore, type SettleContext, type SettleDelayInput, type SettleObserver, type SettlePolicy, type SettleTrigger, type StoredArtifactPayload, type StoredArtifactRecord, type StructuralElementAnchor, type StructuredArtifactKind, type SyncBrowserProfileCookiesInput, type TimeoutExecutionContext, type TimeoutPolicy, type TimeoutResolutionInput, type TraceEntryRecord, type TraceRunManifest, type UpdateReverseCaseInput, type WorkspaceBrowserBootstrap, type WorkspaceBrowserManifest, type WorkspaceLiveBrowserRecord, type WriteAuthRecipeInput, type WriteBinaryArtifactInput, type WriteDescriptorInput, type WriteInteractionTraceInput, type WriteRecipeInput, type WriteRequestPlanInput, type WriteReverseCaseInput, type WriteReversePackageInput, type WriteReverseReportInput, type WriteStructuredArtifactInput, buildArrayFieldPathCandidates, buildPathCandidates, buildPathSelectorHint, buildSegmentSelector, cloneElementPath, cloneReplayElementPath, cloneStructuralElementAnchor, createDomRuntime, createFilesystemOpensteerWorkspace, createOpensteerSemanticRuntime, defaultFallbackPolicy, defaultPolicy, defaultRetryPolicy, defaultSettlePolicy, defaultTimeoutPolicy, delayWithSignal, discoverLocalCdpBrowsers, dispatchSemanticOperation, hasPersistedCloudSession, inspectCdpEndpoint, isCurrentUrlField, isValidCssAttributeKey, listLocalChromeProfiles, normalizeExtractedValue, normalizeOpensteerEngineName, normalizeOpensteerExecutionMode, normalizeWorkspaceId, readPersistedCloudSessionRecord, resolveCloudConfig, resolveCloudSessionRecordPath, resolveDomActionBridge, resolveExtractedValueInContext, resolveFilesystemWorkspacePath, resolveOpensteerEngineName, resolveOpensteerExecutionMode, resolveOpensteerRuntimeConfig, runWithPolicyTimeout, sanitizeElementPath, sanitizeReplayElementPath, sanitizeStructuralElementAnchor, settleWithPolicy, shouldKeepAttributeForPath };