@olib-ai/owl-browser-sdk 1.2.2 → 1.2.4

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/README.md CHANGED
@@ -297,6 +297,14 @@ await page.keyboardCombo('c', ['ctrl']); // Ctrl+C (copy)
297
297
  await page.keyboardCombo('v', ['ctrl']); // Ctrl+V (paste)
298
298
  await page.keyboardCombo('z', ['ctrl']); // Ctrl+Z (undo)
299
299
  await page.keyboardCombo('s', ['ctrl', 'shift']); // Ctrl+Shift+S
300
+
301
+ // Human-like mouse movement (anti-bot detection)
302
+ await page.mouseMove(100, 100, 500, 300); // Move from (100,100) to (500,300)
303
+ await page.mouseMove(100, 100, 500, 300, 50); // With 50 intermediate steps
304
+ await page.mouseMove(100, 100, 500, 300, 0, [ // With stop points
305
+ [200, 150],
306
+ [350, 250]
307
+ ]);
300
308
  ```
301
309
 
302
310
  #### Element State Checks
@@ -844,7 +852,12 @@ import {
844
852
  RateLimitError,
845
853
  IPBlockedError,
846
854
  LicenseError,
847
- BrowserInitializationError
855
+ BrowserInitializationError,
856
+ ActionError,
857
+ ActionStatus,
858
+ ElementNotFoundError,
859
+ NavigationError,
860
+ FirewallError
848
861
  } from '@olib-ai/owl-browser-sdk';
849
862
 
850
863
  async function withErrorHandling() {
@@ -863,9 +876,34 @@ async function withErrorHandling() {
863
876
  await page.goto('https://example.com');
864
877
 
865
878
  // Your automation code...
879
+ await page.click('non-existent button');
866
880
 
867
881
  } catch (error) {
868
- if (error instanceof AuthenticationError) {
882
+ if (error instanceof ElementNotFoundError) {
883
+ // Element was not found on the page
884
+ console.error('Element not found:', error.message);
885
+ } else if (error instanceof NavigationError) {
886
+ // Navigation failed (timeout, page load error, etc.)
887
+ console.error('Navigation failed:', error.message);
888
+ } else if (error instanceof ActionError) {
889
+ // Generic action error with detailed status
890
+ console.error('Action failed:', error.message);
891
+ console.error('Status:', error.status);
892
+ console.error('Selector:', error.selector);
893
+ // Check specific error types
894
+ if (error.isElementNotFound()) {
895
+ console.error('Could not find element');
896
+ } else if (error.isNavigationError()) {
897
+ console.error('Navigation issue');
898
+ } else if (error.isTimeout()) {
899
+ console.error('Operation timed out');
900
+ }
901
+ } else if (error instanceof FirewallError) {
902
+ // Web firewall/bot protection detected
903
+ console.error('Firewall detected:', error.provider);
904
+ console.error('Challenge type:', error.challengeType);
905
+ console.error('URL:', error.url);
906
+ } else if (error instanceof AuthenticationError) {
869
907
  // 401 - Invalid or expired token
870
908
  console.error('Auth failed:', error.message);
871
909
  console.error('Reason:', error.reason);
@@ -887,17 +925,92 @@ async function withErrorHandling() {
887
925
  }
888
926
  ```
889
927
 
928
+ ### Action Result Validation
929
+
930
+ The browser returns structured `ActionResult` responses for browser actions, providing detailed information about success or failure:
931
+
932
+ ```typescript
933
+ import {
934
+ ActionStatus,
935
+ ActionResult,
936
+ ActionError,
937
+ isActionResult,
938
+ throwIfActionFailed
939
+ } from '@olib-ai/owl-browser-sdk';
940
+
941
+ // ActionStatus enum values
942
+ ActionStatus.OK // Action succeeded
943
+ ActionStatus.ELEMENT_NOT_FOUND // Element not found on page
944
+ ActionStatus.ELEMENT_NOT_VISIBLE // Element exists but not visible
945
+ ActionStatus.ELEMENT_NOT_INTERACTABLE // Element not interactable
946
+ ActionStatus.NAVIGATION_FAILED // Navigation failed
947
+ ActionStatus.NAVIGATION_TIMEOUT // Navigation timed out
948
+ ActionStatus.PAGE_LOAD_ERROR // Page failed to load
949
+ ActionStatus.FIREWALL_DETECTED // Web firewall/bot protection detected
950
+ ActionStatus.CAPTCHA_DETECTED // CAPTCHA challenge detected
951
+ ActionStatus.CLICK_FAILED // Click action failed
952
+ ActionStatus.TYPE_FAILED // Type action failed
953
+ ActionStatus.CONTEXT_NOT_FOUND // Browser context not found
954
+ ActionStatus.INVALID_SELECTOR // Invalid selector provided
955
+ ActionStatus.TIMEOUT // Operation timed out
956
+
957
+ // ActionResult interface
958
+ interface ActionResult {
959
+ success: boolean;
960
+ status: ActionStatus | string;
961
+ message: string;
962
+ selector?: string; // The selector that failed (for element errors)
963
+ url?: string; // URL involved (for navigation errors)
964
+ http_status?: number; // HTTP status code (for navigation)
965
+ error_code?: string; // Browser error code
966
+ element_count?: number; // Elements found (for multiple_elements error)
967
+ }
968
+
969
+ // Helper functions
970
+ if (isActionResult(result)) {
971
+ if (!result.success) {
972
+ throwIfActionFailed(result); // Throws appropriate exception
973
+ }
974
+ }
975
+ ```
976
+
890
977
  ### Exception Types
891
978
 
892
979
  | Exception | HTTP Code | Description |
893
980
  |-----------|-----------|-------------|
981
+ | `ActionError` | - | Browser action failed with status code and details |
982
+ | `ElementNotFoundError` | - | Element not found on page |
983
+ | `NavigationError` | - | Navigation failed (timeout, load error) |
984
+ | `FirewallError` | - | Web firewall/bot protection detected (Cloudflare, Akamai, etc.) |
985
+ | `ContextError` | - | Browser context not found |
894
986
  | `AuthenticationError` | 401 | Invalid/expired token or JWT signature mismatch |
895
987
  | `RateLimitError` | 429 | Too many requests, includes `retryAfter` in seconds |
896
988
  | `IPBlockedError` | 403 | Client IP not in whitelist |
897
989
  | `LicenseError` | 503 | Browser license validation failed |
898
990
  | `BrowserInitializationError` | - | Failed to start/connect to browser |
899
991
  | `CommandTimeoutError` | - | Operation timed out |
900
- | `ElementNotFoundError` | - | Element not found on page |
992
+
993
+ ### FirewallError Properties
994
+
995
+ | Property | Type | Description |
996
+ |----------|------|-------------|
997
+ | `url` | `string` | The URL where the firewall was detected |
998
+ | `provider` | `string` | Firewall provider (Cloudflare, Akamai, Imperva, etc.) |
999
+ | `challengeType` | `string?` | Type of challenge (JS Challenge, CAPTCHA, etc.) |
1000
+
1001
+ The browser automatically detects web firewalls including Cloudflare, Akamai, Imperva, PerimeterX, DataDome, and AWS WAF.
1002
+
1003
+ ### ActionError Properties
1004
+
1005
+ | Property | Type | Description |
1006
+ |----------|------|-------------|
1007
+ | `status` | `ActionStatus` | Status code (e.g., `element_not_found`) |
1008
+ | `message` | `string` | Human-readable error message |
1009
+ | `selector` | `string?` | The selector that failed |
1010
+ | `url` | `string?` | URL involved in navigation errors |
1011
+ | `httpStatus` | `number?` | HTTP status code |
1012
+ | `errorCode` | `string?` | Browser error code |
1013
+ | `elementCount` | `number?` | Number of elements found |
901
1014
 
902
1015
  ## Performance Tips
903
1016
 
package/dist/browser.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { BrowserContext } from './context';
2
- import type { BrowserConfig, LLMStatus, DemographicsInfo, LocationInfo, DateTimeInfo, WeatherInfo, ContextOptions } from './types';
2
+ import type { BrowserConfig, LLMStatus, DemographicsInfo, LocationInfo, DateTimeInfo, WeatherInfo, ContextOptions, BrowserProfile, LicenseStatusResponse, LicenseInfo, HardwareFingerprint, LiveStreamInfo } from './types';
3
3
  /**
4
4
  * Main Browser class for automation
5
5
  *
@@ -75,6 +75,18 @@ export declare class Browser {
75
75
  * Get all active pages
76
76
  */
77
77
  pages(): BrowserContext[];
78
+ /**
79
+ * List all active context IDs from the browser
80
+ * This queries the browser directly, useful for debugging
81
+ * @returns Array of context ID strings
82
+ *
83
+ * @example
84
+ * ```typescript
85
+ * const contextIds = await browser.listContexts();
86
+ * console.log(`Active contexts: ${contextIds.join(', ')}`);
87
+ * ```
88
+ */
89
+ listContexts(): Promise<string[]>;
78
90
  /**
79
91
  * Check if on-device LLM is ready
80
92
  */
@@ -147,6 +159,92 @@ export declare class Browser {
147
159
  * ```
148
160
  */
149
161
  getHomepage(): Promise<string>;
162
+ /**
163
+ * Create a new browser profile with randomized fingerprint
164
+ * @param name - Human-readable name for the profile
165
+ *
166
+ * @example
167
+ * ```typescript
168
+ * const profile = await browser.createProfile('My Profile');
169
+ * console.log(`Created profile: ${profile.profileId}`);
170
+ * ```
171
+ */
172
+ createProfile(name?: string): Promise<BrowserProfile>;
173
+ /**
174
+ * List all active live streams across all contexts
175
+ *
176
+ * @example
177
+ * ```typescript
178
+ * const streams = await browser.listLiveStreams();
179
+ * for (const stream of streams) {
180
+ * console.log(`Stream ${stream.contextId}: ${stream.fps}fps, ${stream.subscribers} viewers`);
181
+ * }
182
+ * ```
183
+ */
184
+ listLiveStreams(): Promise<LiveStreamInfo[]>;
185
+ /**
186
+ * Get current license status
187
+ *
188
+ * @example
189
+ * ```typescript
190
+ * const status = await browser.getLicenseStatus();
191
+ * if (status.valid) {
192
+ * console.log('License is active');
193
+ * } else {
194
+ * console.log(`License issue: ${status.status}`);
195
+ * }
196
+ * ```
197
+ */
198
+ getLicenseStatus(): Promise<LicenseStatusResponse>;
199
+ /**
200
+ * Get detailed license information
201
+ *
202
+ * @example
203
+ * ```typescript
204
+ * const info = await browser.getLicenseInfo();
205
+ * console.log(`License: ${info.licenseId}`);
206
+ * console.log(`Expires: ${info.expiresAt}`);
207
+ * console.log(`Features: ${info.features.join(', ')}`);
208
+ * ```
209
+ */
210
+ getLicenseInfo(): Promise<LicenseInfo>;
211
+ /**
212
+ * Get hardware fingerprint for license binding
213
+ *
214
+ * @example
215
+ * ```typescript
216
+ * const hw = await browser.getHardwareFingerprint();
217
+ * console.log(`Hardware ID: ${hw.fingerprint}`);
218
+ * ```
219
+ */
220
+ getHardwareFingerprint(): Promise<HardwareFingerprint>;
221
+ /**
222
+ * Add/activate a license
223
+ * @param licensePath - Path to the license file (.olic)
224
+ * @param licenseContent - Base64-encoded license content (alternative to path)
225
+ *
226
+ * @example
227
+ * ```typescript
228
+ * // From file
229
+ * await browser.addLicense({ licensePath: '/path/to/license.olic' });
230
+ *
231
+ * // From base64 content
232
+ * await browser.addLicense({ licenseContent: 'base64encodedcontent...' });
233
+ * ```
234
+ */
235
+ addLicense(options: {
236
+ licensePath?: string;
237
+ licenseContent?: string;
238
+ }): Promise<void>;
239
+ /**
240
+ * Remove the current license
241
+ *
242
+ * @example
243
+ * ```typescript
244
+ * await browser.removeLicense();
245
+ * ```
246
+ */
247
+ removeLicense(): Promise<void>;
150
248
  /**
151
249
  * Close all contexts and shutdown browser
152
250
  */
@@ -1 +1 @@
1
- {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EACV,aAAa,EAEb,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,QAAQ,CAA6C;IAC7D,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,CAAC,EAAE,aAAa;IAIlC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACG,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAYhE;;OAEG;IACH,KAAK,IAAI,cAAc,EAAE;IAIzB;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAOxC;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAOxC;;;;;;;;;;OAUG;IACG,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAOlD;;;;;;;;;;;OAWG;IACG,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAO1C;;;;;;;;;OASG;IACG,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAO1C;;;;;;;;;;;;OAYG;IACG,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAOxC;;;;;;;;;;;;OAYG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAOpC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB5B;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;IACH,SAAS,IAAI,OAAO;CAGrB"}
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,KAAK,EACV,aAAa,EAEb,SAAS,EACT,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,WAAW,EACX,mBAAmB,EACnB,cAAc,EACf,MAAM,SAAS,CAAC;AAEjB;;;;;;;;;;;;;;;;GAgBG;AACH,qBAAa,OAAO;IAClB,OAAO,CAAC,IAAI,CAAc;IAC1B,OAAO,CAAC,QAAQ,CAA6C;IAC7D,OAAO,CAAC,UAAU,CAAS;gBAEf,MAAM,CAAC,EAAE,aAAa;IAIlC;;OAEG;IACG,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB7B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACG,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IAahE;;OAEG;IACH,KAAK,IAAI,cAAc,EAAE;IAIzB;;;;;;;;;;OAUG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAOvC;;OAEG;IACG,YAAY,IAAI,OAAO,CAAC,SAAS,CAAC;IAOxC;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAOxC;;;;;;;;;;OAUG;IACG,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAOlD;;;;;;;;;;;OAWG;IACG,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAO1C;;;;;;;;;OASG;IACG,WAAW,IAAI,OAAO,CAAC,YAAY,CAAC;IAO1C;;;;;;;;;;;;OAYG;IACG,UAAU,IAAI,OAAO,CAAC,WAAW,CAAC;IAOxC;;;;;;;;;;;;OAYG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IASpC;;;;;;;;;OASG;IACG,aAAa,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAW3D;;;;;;;;;;OAUG;IACG,eAAe,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IASlD;;;;;;;;;;;;OAYG;IACG,gBAAgB,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAKxD;;;;;;;;;;OAUG;IACG,cAAc,IAAI,OAAO,CAAC,WAAW,CAAC;IAI5C;;;;;;;;OAQG;IACG,sBAAsB,IAAI,OAAO,CAAC,mBAAmB,CAAC;IAI5D;;;;;;;;;;;;;OAaG;IACG,UAAU,CAAC,OAAO,EAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3F;;;;;;;OAOG;IACG,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAIpC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoB5B;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;IACH,SAAS,IAAI,OAAO;CAGrB"}
package/dist/browser.js CHANGED
@@ -94,7 +94,8 @@ class Browser {
94
94
  if (!this.isLaunched) {
95
95
  throw new Error('Browser not launched. Call launch() first.');
96
96
  }
97
- const contextId = await this.core.createContext(options);
97
+ const contextInfo = await this.core.createContext(options);
98
+ const contextId = contextInfo.context_id;
98
99
  const context = new context_1.BrowserContext(contextId, this.core);
99
100
  this.contexts.set(contextId, context);
100
101
  return context;
@@ -105,6 +106,23 @@ class Browser {
105
106
  pages() {
106
107
  return Array.from(this.contexts.values());
107
108
  }
109
+ /**
110
+ * List all active context IDs from the browser
111
+ * This queries the browser directly, useful for debugging
112
+ * @returns Array of context ID strings
113
+ *
114
+ * @example
115
+ * ```typescript
116
+ * const contextIds = await browser.listContexts();
117
+ * console.log(`Active contexts: ${contextIds.join(', ')}`);
118
+ * ```
119
+ */
120
+ async listContexts() {
121
+ if (!this.isLaunched) {
122
+ throw new Error('Browser not launched. Call launch() first.');
123
+ }
124
+ return await this.core.sendCommand('listContexts', {});
125
+ }
108
126
  /**
109
127
  * Check if on-device LLM is ready
110
128
  */
@@ -212,6 +230,118 @@ class Browser {
212
230
  }
213
231
  return await this.core.getHomepage();
214
232
  }
233
+ // ==================== PROFILE MANAGEMENT ====================
234
+ /**
235
+ * Create a new browser profile with randomized fingerprint
236
+ * @param name - Human-readable name for the profile
237
+ *
238
+ * @example
239
+ * ```typescript
240
+ * const profile = await browser.createProfile('My Profile');
241
+ * console.log(`Created profile: ${profile.profileId}`);
242
+ * ```
243
+ */
244
+ async createProfile(name) {
245
+ if (!this.isLaunched) {
246
+ throw new Error('Browser not launched. Call launch() first.');
247
+ }
248
+ return await this.core.sendCommand('createProfile', {
249
+ name,
250
+ });
251
+ }
252
+ // ==================== LIVE STREAMING ====================
253
+ /**
254
+ * List all active live streams across all contexts
255
+ *
256
+ * @example
257
+ * ```typescript
258
+ * const streams = await browser.listLiveStreams();
259
+ * for (const stream of streams) {
260
+ * console.log(`Stream ${stream.contextId}: ${stream.fps}fps, ${stream.subscribers} viewers`);
261
+ * }
262
+ * ```
263
+ */
264
+ async listLiveStreams() {
265
+ if (!this.isLaunched) {
266
+ throw new Error('Browser not launched. Call launch() first.');
267
+ }
268
+ return await this.core.sendCommand('listLiveStreams', {});
269
+ }
270
+ // ==================== LICENSE MANAGEMENT ====================
271
+ /**
272
+ * Get current license status
273
+ *
274
+ * @example
275
+ * ```typescript
276
+ * const status = await browser.getLicenseStatus();
277
+ * if (status.valid) {
278
+ * console.log('License is active');
279
+ * } else {
280
+ * console.log(`License issue: ${status.status}`);
281
+ * }
282
+ * ```
283
+ */
284
+ async getLicenseStatus() {
285
+ // License methods work even before launch
286
+ return await this.core.sendCommand('getLicenseStatus', {});
287
+ }
288
+ /**
289
+ * Get detailed license information
290
+ *
291
+ * @example
292
+ * ```typescript
293
+ * const info = await browser.getLicenseInfo();
294
+ * console.log(`License: ${info.licenseId}`);
295
+ * console.log(`Expires: ${info.expiresAt}`);
296
+ * console.log(`Features: ${info.features.join(', ')}`);
297
+ * ```
298
+ */
299
+ async getLicenseInfo() {
300
+ return await this.core.sendCommand('getLicenseInfo', {});
301
+ }
302
+ /**
303
+ * Get hardware fingerprint for license binding
304
+ *
305
+ * @example
306
+ * ```typescript
307
+ * const hw = await browser.getHardwareFingerprint();
308
+ * console.log(`Hardware ID: ${hw.fingerprint}`);
309
+ * ```
310
+ */
311
+ async getHardwareFingerprint() {
312
+ return await this.core.sendCommand('getHardwareFingerprint', {});
313
+ }
314
+ /**
315
+ * Add/activate a license
316
+ * @param licensePath - Path to the license file (.olic)
317
+ * @param licenseContent - Base64-encoded license content (alternative to path)
318
+ *
319
+ * @example
320
+ * ```typescript
321
+ * // From file
322
+ * await browser.addLicense({ licensePath: '/path/to/license.olic' });
323
+ *
324
+ * // From base64 content
325
+ * await browser.addLicense({ licenseContent: 'base64encodedcontent...' });
326
+ * ```
327
+ */
328
+ async addLicense(options) {
329
+ await this.core.sendCommand('addLicense', {
330
+ license_path: options.licensePath,
331
+ license_content: options.licenseContent,
332
+ });
333
+ }
334
+ /**
335
+ * Remove the current license
336
+ *
337
+ * @example
338
+ * ```typescript
339
+ * await browser.removeLicense();
340
+ * ```
341
+ */
342
+ async removeLicense() {
343
+ await this.core.sendCommand('removeLicense', {});
344
+ }
215
345
  /**
216
346
  * Close all contexts and shutdown browser
217
347
  */
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":";;;AAAA,iCAAqC;AACrC,uCAA2C;AAiB3C;;;;;;;;;;;;;;;;GAgBG;AACH,MAAa,OAAO;IAKlB,YAAY,MAAsB;QAH1B,aAAQ,GAAmC,IAAI,GAAG,EAAE,CAAC;QACrD,eAAU,GAAG,KAAK,CAAC;QAGzB,IAAI,CAAC,IAAI,GAAG,IAAI,kBAAW,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM;QACV,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC9C,CAAC;QAED,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QAEvB,wBAAwB;QACxB,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,IAAI,EAAE;YAC/B,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2CG;IACH,KAAK,CAAC,OAAO,CAAC,OAAwB;QACpC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,WAAW,CAAC,UAAU,CAAC;QACzC,MAAM,OAAO,GAAG,IAAI,wBAAc,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEtC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,KAAK;QACH,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY;QAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IACzC,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;IAC3C,CAAC;IAED;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;IACtC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,WAAW;QACf,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IAED,+DAA+D;IAE/D;;;;;;;;;OASG;IACH,KAAK,CAAC,aAAa,CAAC,IAAa;QAC/B,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE;YAClD,IAAI;SACL,CAAC,CAAC;IACL,CAAC;IAED,2DAA2D;IAE3D;;;;;;;;;;OAUG;IACH,KAAK,CAAC,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,+DAA+D;IAE/D;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,gBAAgB;QACpB,0CAA0C;QAC1C,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,cAAc;QAClB,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,sBAAsB;QAC1B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;IACnE,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,KAAK,CAAC,UAAU,CAAC,OAA0D;QACzE,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE;YACxC,YAAY,EAAE,OAAO,CAAC,WAAW;YACjC,eAAe,EAAE,OAAO,CAAC,cAAc;SACxC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACrB,OAAO;QACT,CAAC;QAED,qBAAqB;QACrB,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjD,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;YACxB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,uCAAuC;YACzC,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;QAEtB,mBAAmB;QACnB,MAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YAC1B,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACvB,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;IAClD,CAAC;CACF;AApYD,0BAoYC"}
@@ -34,7 +34,9 @@ export interface BrowserConnection {
34
34
  isRunning(): boolean;
35
35
  }
36
36
  /**
37
- * Local connection using child process IPC (stdin/stdout)
37
+ * Local connection using child process IPC (stdin/stdout or Unix domain socket)
38
+ * On Linux/macOS, uses multi-IPC Unix domain sockets for parallel command processing
39
+ * Each context gets its own dedicated socket for true parallelism
38
40
  */
39
41
  export declare class LocalConnection implements BrowserConnection {
40
42
  private browserProcess;
@@ -45,6 +47,11 @@ export declare class LocalConnection implements BrowserConnection {
45
47
  private browserPath;
46
48
  private initTimeout;
47
49
  private verbose;
50
+ private socketPath;
51
+ private contextSockets;
52
+ private contextSocketBuffers;
53
+ private defaultSocket;
54
+ private defaultSocketBuffer;
48
55
  private licenseError;
49
56
  private hardwareFingerprint;
50
57
  constructor(config: BrowserConfig);
@@ -57,7 +64,16 @@ export declare class LocalConnection implements BrowserConnection {
57
64
  * Handle JSON response from browser
58
65
  */
59
66
  private handleResponse;
67
+ /**
68
+ * Connect to the multi-IPC Unix domain socket (default socket for non-context commands)
69
+ */
70
+ private connectToSocket;
71
+ /**
72
+ * Get or create a socket for a specific context (enables parallel command processing)
73
+ */
74
+ private getOrCreateContextSocket;
60
75
  sendCommand(method: string, params?: Record<string, any>): Promise<any>;
76
+ private setupTimeout;
61
77
  shutdown(): Promise<void>;
62
78
  isRunning(): boolean;
63
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../src/connection.ts"],"names":[],"mappings":"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"}