clearcote 0.30.0 → 0.31.1

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.js CHANGED
@@ -30,7 +30,7 @@ import { fetchWidevine, seedWidevine, widevineArgs } from "./widevine.js";
30
30
  import { emitCoherenceWarnings } from "./warnings.js";
31
31
  import { fontLaunchEnv } from "./fonts.js";
32
32
  import { withShaderDialect } from "./shaderdialect.js";
33
- import { applyHeadlessGeometry, fitWindowToPersona, installWindowFixup, moveWindowToOrigin, } from "./geometry.js";
33
+ import { applyHeadlessGeometry, fitServedWindow, fitWindowToWorkArea, installWindowFixup, servedGeometry, } from "./geometry.js";
34
34
  import { acquireLease, resolveLicenseKey, withRunToken } from "./license.js";
35
35
  export { proEnsureBinary } from "./download.js";
36
36
  export { checkInstall, verifyInstall } from "./download.js";
@@ -143,33 +143,25 @@ export async function download(options = {}) {
143
143
  const { version, licenseKey, licenseApiBase, releaseChannel, ...dl } = options;
144
144
  return executablePath({ version, releaseChannel, pro: proSelector(licenseKey, licenseApiBase), ...dl });
145
145
  }
146
- /** Headless: the geometry defaults are CONTEXT options and `chromium.launch()` takes none, so they
147
- * ride on newPage/newContext instead — persona regime gets `viewport: null` plus a window fit, no-
148
- * persona regime gets the screen + viewport override. See ./geometry.ts for why each is needed. */
149
- function installHeadlessGeometry(browser, geom, args) {
150
- // chromium.launch() accepts no context options, so the headless geometry default has to ride on
151
- // newPage/newContext — the same shape as installHeadedViewport. In persona mode each new context
152
- // is a new window, so each also gets the window fit. Any per-call geometry option wins.
153
- const persona = geom.mode === "persona";
154
- const defaults = persona
155
- ? { viewport: null }
156
- : { screen: geom.screen, viewport: geom.viewport };
157
- const merge = (o = {}) => "viewport" in o || "screen" in o ? o : { ...o, ...defaults };
146
+ /** Headless: `viewport: null` is a CONTEXT option and `chromium.launch()` takes none, so it rides on
147
+ * newPage/newContext instead, with the window fit to the work area (the persona's, or the display
148
+ * `--screen-info` set). See ./geometry.ts for why each is needed. */
149
+ function installHeadlessGeometry(browser, args) {
150
+ // Same shape as installHeadedViewport. Each new context is a new window, so each also gets the
151
+ // window fit. Any per-call geometry option wins.
152
+ const merge = (o = {}) => "viewport" in o || "screen" in o ? o : { ...o, viewport: null };
158
153
  const origNewPage = browser.newPage.bind(browser);
159
154
  const origNewContext = browser.newContext.bind(browser);
160
155
  browser.newPage =
161
156
  async (o = {}) => {
162
157
  const page = await origNewPage(merge(o));
163
- if (persona)
164
- await fitWindowToPersona(page, args);
165
- else
166
- await moveWindowToOrigin(page, args);
158
+ await fitWindowToWorkArea(page, args);
167
159
  return page;
168
160
  };
169
161
  browser.newContext =
170
162
  async (o = {}) => {
171
163
  const context = await origNewContext(merge(o));
172
- await installWindowFixup(context, args, persona);
164
+ await installWindowFixup(context, args);
173
165
  return context;
174
166
  };
175
167
  }
@@ -343,6 +335,39 @@ async function applyAutoProfile(fingerprint, exe, opts) {
343
335
  "profile fields apply only partially. Drop `fingerprint` for the coherent path.\n");
344
336
  }
345
337
  }
338
+ /**
339
+ * Layer a saved persona's options under the caller's (`profile:` a name, path or Profile).
340
+ *
341
+ * `profile: "auto"` is NOT a saved option-set — it resolves a real captured fingerprint once the
342
+ * binary is known ({@link applyProfileAuto}) — so it must never reach Profile.load. Every entry
343
+ * point goes through here: launchPersistentContext and serve() used to load "auto" as a saved
344
+ * name and throw ENOENT for ~/.clearcote/profiles/auto.json, which broke the default launch().
345
+ */
346
+ function mergeSavedProfile(options) {
347
+ return options.profile && options.profile !== "auto"
348
+ ? { ...resolveProfileOptions(options.profile), ...options }
349
+ : options;
350
+ }
351
+ /**
352
+ * `profile: "auto"` -> resolve a REAL captured fingerprint for this host and apply it as
353
+ * fingerprintProfile. Deliberately does NOT set a seed: with no --fingerprint the farbling
354
+ * machinery stays off, which is the whole reason this path survives strict scoring.
355
+ * Called once `exe` is known, because both the engine's Chromium major and the host GPU
356
+ * measurement depend on the binary that will actually run. Pass-through (fingerprint "off") runs
357
+ * with NO persona, so "auto" has nothing to apply.
358
+ */
359
+ async function applyProfileAuto(profile, fingerprint, exe, o) {
360
+ if (profile !== "auto" || isFingerprintPassthrough(fingerprint.fingerprint))
361
+ return;
362
+ await applyAutoProfile(fingerprint, exe, {
363
+ quiet: o.quiet,
364
+ licenseKey: resolveLicenseKey(o.licenseKey),
365
+ // The profile service lives on the same backend as licensing, so a caller who overrode
366
+ // one has overridden both; profilesource still prefers CLEARCOTE_PROFILE_API when set.
367
+ apiBase: o.licenseApiBase,
368
+ ...(o.profileSelect ?? {}),
369
+ });
370
+ }
346
371
  /**
347
372
  * Delete a throwaway profile directory once its context closes.
348
373
  *
@@ -360,16 +385,7 @@ function installEphemeralProfileCleanup(context, userDataDir) {
360
385
  const remove = async () => {
361
386
  if (done)
362
387
  return;
363
- for (let attempt = 0; attempt < 6; attempt++) {
364
- try {
365
- rmSync(userDataDir, { recursive: true, force: true });
366
- done = true;
367
- return;
368
- }
369
- catch {
370
- await new Promise((r) => setTimeout(r, 250 * (attempt + 1))); // 0.25→1.5s, ~5s total
371
- }
372
- }
388
+ done = await removeProfileDir(userDataDir);
373
389
  };
374
390
  context.on("close", () => { void remove(); });
375
391
  // Synchronous: an exit handler cannot await, and an unresolved promise at exit removes nothing.
@@ -382,6 +398,37 @@ function installEphemeralProfileCleanup(context, userDataDir) {
382
398
  catch { /* temp sweeper gets it */ }
383
399
  });
384
400
  }
401
+ /** Remove a profile directory, retrying while the browser still holds handles (see above). */
402
+ async function removeProfileDir(userDataDir) {
403
+ for (let attempt = 0; attempt < 6; attempt++) {
404
+ try {
405
+ rmSync(userDataDir, { recursive: true, force: true });
406
+ return true;
407
+ }
408
+ catch {
409
+ await new Promise((r) => setTimeout(r, 250 * (attempt + 1))); // 0.25→1.5s, ~5s total
410
+ }
411
+ }
412
+ return false;
413
+ }
414
+ /**
415
+ * A persistent context on a fresh temp profile the caller never named, so never sees again: it is
416
+ * removed when the context closes and at process exit — and at once when the launch fails, which
417
+ * used to leak one directory per failed launch.
418
+ */
419
+ async function launchOnThrowawayProfile(prefix, options) {
420
+ const dir = mkdtempSync(join(tmpdir(), prefix));
421
+ let context;
422
+ try {
423
+ context = await launchPersistentContext(dir, options);
424
+ }
425
+ catch (e) {
426
+ await removeProfileDir(dir);
427
+ throw e;
428
+ }
429
+ installEphemeralProfileCleanup(context, dir);
430
+ return context;
431
+ }
385
432
  /**
386
433
  * Make a persistent BrowserContext satisfy code written against launch()'s Browser.
387
434
  *
@@ -437,23 +484,16 @@ export async function launch(options = {}) {
437
484
  return asBrowserLike(await launchPersistentContext(userDataDir, restOpts));
438
485
  }
439
486
  if (ephemeralProfile !== false) {
440
- const dir = mkdtempSync(join(tmpdir(), "clearcote-run-"));
441
- const context = await launchPersistentContext(dir, restOpts);
442
- installEphemeralProfileCleanup(context, dir);
443
- return asBrowserLike(context);
487
+ return asBrowserLike(await launchOnThrowawayProfile("clearcote-run-", restOpts));
444
488
  }
445
489
  return launchIncognito(restOpts);
446
490
  }
447
491
  /** The pre-0.23 incognito launch, reached via `ephemeralProfile: false`. */
448
492
  async function launchIncognito(options = {}) {
449
- // profile="auto" is NOT a saved option-set — it resolves a real captured fingerprint later,
450
- // once the executable (and therefore the engine's Chromium major) is known.
451
- const isAutoProfile = options.profile === "auto";
452
- // profile= a saved persona: its options are the base, explicit options override.
453
- const merged = options.profile && !isAutoProfile
454
- ? { ...resolveProfileOptions(options.profile), ...options }
455
- : options;
456
- const { profile: _profile, profileSelect: _profileSelect, extensions, portableProfile, shaderDialect, socks5Udp, encryptionKey, disablePrivacySandbox, executablePath: exeOption, args, geoip, humanize, showCursor, autoUpdate, cacheDir, quiet, version, licenseKey, licenseApiBase, licenseThroughProxy, releaseChannel, allowThirdPartyCookies, transparentProxy, ...rest } = merged;
493
+ // profile= a saved persona: its options are the base, explicit options override. ("auto" is
494
+ // resolved later, once the executable is known.)
495
+ const merged = mergeSavedProfile(options);
496
+ const { profile, profileSelect, extensions, portableProfile, shaderDialect, socks5Udp, encryptionKey, disablePrivacySandbox, executablePath: exeOption, args, geoip, humanize, showCursor, autoUpdate, cacheDir, quiet, version, licenseKey, licenseApiBase, licenseThroughProxy, releaseChannel, allowThirdPartyCookies, transparentProxy, ...rest } = merged;
457
497
  const { fingerprint, rest: afterFp } = splitFingerprintOptions(rest);
458
498
  const { agent, rest: pwOptions } = splitAgentOptions(afterFp);
459
499
  const proxyOpt = pwOptions.proxy; // captured before resolveProxy drops it
@@ -464,29 +504,18 @@ async function launchIncognito(options = {}) {
464
504
  // Playwright's handling, which authenticates (routing blindly would leave every request at 407).
465
505
  const exe = await executablePath({ executablePath: exeOption, version, autoUpdate, cacheDir, quiet, releaseChannel, pro: proSelector(licenseKey, licenseApiBase) }); // capability-gated proxy route
466
506
  ensureRunnableHere(exe);
507
+ // Before the warnings below, so they judge the persona that will actually run (as in Python).
508
+ await applyProfileAuto(profile, fingerprint, exe, { quiet, licenseKey, licenseApiBase, profileSelect });
467
509
  // SOCKS5-with-credentials must go through --proxy-server (Playwright rejects it); drop it from PW.
468
510
  const { args: proxyArgs, proxy } = resolveProxy(pwOptions.proxy, engineSupportsSwitch(exe, "proxy-auth"));
469
511
  warnUnsupportedEngineOptions(exe, fingerprint, proxyOpt, quiet);
470
- // proxy unchanged unless it was rerouted to --proxy-server, in which case drop it from Playwright
512
+ // proxy unchanged unless it was rerouted to --proxy-server (drop it from Playwright) or its URL
513
+ // carried the credentials (hand Playwright the fields it reads)
471
514
  if (proxy === undefined)
472
515
  delete pwOptions.proxy;
516
+ else
517
+ pwOptions.proxy = proxy;
473
518
  emitCoherenceWarnings({ ...fingerprint, proxy: proxyOpt, geoip, headless: pwOptions.headless, _userArgs: args ?? [] }, quiet, process.platform, String(RELEASE.version).split(".")[0]);
474
- // A license key selects the PRO (gated) binary; no key -> the free binary (unchanged path).
475
- // profile:"auto" -> resolve a REAL captured fingerprint for this host and apply it as
476
- // fingerprintProfile. Deliberately does NOT set a seed: with no --fingerprint the farbling
477
- // machinery stays off, which is the whole reason this path survives strict scoring.
478
- // Resolved here, after `exe` is known, because both the engine's Chromium major and the host
479
- // GPU measurement depend on the binary that will actually run.
480
- if (isAutoProfile && !isFingerprintPassthrough(fingerprint.fingerprint)) {
481
- await applyAutoProfile(fingerprint, exe, {
482
- quiet,
483
- licenseKey: resolveLicenseKey(licenseKey),
484
- // The profile service lives on the same backend as licensing, so a caller who overrode
485
- // one has overridden both; profilesource still prefers CLEARCOTE_PROFILE_API when set.
486
- apiBase: licenseApiBase,
487
- ...(options.profileSelect ?? {}),
488
- });
489
- }
490
519
  const headed = pwOptions.headless === false;
491
520
  // License (opt-in): check out a concurrency slot and inject CLEARCOTE_RUN_TOKEN so the PRO
492
521
  // engine gate lets the browser launch. Inert (null) in free mode / when no key is set.
@@ -501,11 +530,12 @@ async function launchIncognito(options = {}) {
501
530
  const runtimeEnv = lease ? withRunToken(lease.token, launchEnv, launchToken?.file) : launchEnv;
502
531
  const engineArgs = assembleArgs(fingerprintArgs(fingerprint), agentArgs(agent), [...extensionArgs(extensions), ...portableArgs(portableProfile, encryptionKey)], proxyArgs, disablePrivacySandbox, fingerprint.webrtcIp, args ?? [], proxyOpt, socks5Udp, { exe, headed, quiet, allowThirdPartyCookies, transparentProxy });
503
532
  // Headless: screen.* has to be handled alongside the viewport or the window reports a geometry no
504
- // real browser can (see ./geometry.ts). Probe a copy — viewport/screen are context options, which
505
- // chromium.launch() does not take — and carry the result to newPage/newContext.
533
+ // real browser can (see ./geometry.ts). Probe a copy — viewport is a context option, which
534
+ // chromium.launch() does not take — and carry the result to newPage/newContext. The display
535
+ // switches go on the command line; the fit keeps reading the caller's own engineArgs.
506
536
  const geom = headed
507
537
  ? null
508
- : applyHeadlessGeometry({ ...pwOptions }, fingerprint.fingerprint, engineArgs);
538
+ : applyHeadlessGeometry({ ...pwOptions }, fingerprint.fingerprint, engineArgs, fingerprint);
509
539
  const browser = await releaseLeaseOnFailure(lease, () => winAvRetry((exePath) => chromium.launch({
510
540
  // Drop Playwright's --enable-automation (keeps AutomationControlled off) and
511
541
  // --enable-unsafe-swiftshader (see DEFAULT_IGNORED_ARGS; paired with --ignore-gpu-blocklist in
@@ -514,7 +544,7 @@ async function launchIncognito(options = {}) {
514
544
  ...pwOptions,
515
545
  executablePath: exePath,
516
546
  ...(runtimeEnv ? { env: runtimeEnv } : {}),
517
- args: engineArgs,
547
+ args: [...engineArgs, ...(geom?.args ?? [])],
518
548
  }), exe));
519
549
  // Release the concurrency slot + remove the run-token file when the browser closes.
520
550
  if (lease)
@@ -522,7 +552,7 @@ async function launchIncognito(options = {}) {
522
552
  if (headed)
523
553
  installHeadedViewport(browser); // launch() takes no viewport option -> wrap newPage/newContext
524
554
  else if (geom)
525
- installHeadlessGeometry(browser, geom, engineArgs);
555
+ installHeadlessGeometry(browser, engineArgs);
526
556
  installHumanize(browser, { humanize, showCursor, seed: fingerprint.fingerprint }); // seed => stable motor persona
527
557
  return browser;
528
558
  }
@@ -531,8 +561,8 @@ async function launchIncognito(options = {}) {
531
561
  * {@link BrowserContext} (cookies, storage, etc. persist in `userDataDir`).
532
562
  */
533
563
  export async function launchPersistentContext(userDataDir, options = {}) {
534
- const merged = options.profile ? { ...resolveProfileOptions(options.profile), ...options } : options;
535
- const { profile: _profile, extensions, portableProfile, shaderDialect, socks5Udp, encryptionKey, disablePrivacySandbox, executablePath: exeOption, args, geoip, humanize, showCursor, autoUpdate, cacheDir, quiet, widevine, version, licenseKey, licenseApiBase, licenseThroughProxy, releaseChannel, allowThirdPartyCookies, transparentProxy, ...rest } = merged;
564
+ const merged = mergeSavedProfile(options);
565
+ const { profile, profileSelect, extensions, portableProfile, shaderDialect, socks5Udp, encryptionKey, disablePrivacySandbox, executablePath: exeOption, args, geoip, humanize, showCursor, autoUpdate, cacheDir, quiet, widevine, version, licenseKey, licenseApiBase, licenseThroughProxy, releaseChannel, allowThirdPartyCookies, transparentProxy, ...rest } = merged;
536
566
  const { fingerprint, rest: afterFp } = splitFingerprintOptions(rest);
537
567
  const { agent, rest: pwOptions } = splitAgentOptions(afterFp);
538
568
  const proxyOpt = pwOptions.proxy; // captured before resolveProxy drops it
@@ -540,10 +570,13 @@ export async function launchPersistentContext(userDataDir, options = {}) {
540
570
  await applyGeoip(fingerprint, pwOptions.proxy, quiet);
541
571
  const exe = await executablePath({ executablePath: exeOption, version, autoUpdate, cacheDir, quiet, releaseChannel, pro: proSelector(licenseKey, licenseApiBase) }); // capability-gated proxy route
542
572
  ensureRunnableHere(exe);
573
+ await applyProfileAuto(profile, fingerprint, exe, { quiet, licenseKey, licenseApiBase, profileSelect });
543
574
  const { args: proxyArgs, proxy } = resolveProxy(pwOptions.proxy, engineSupportsSwitch(exe, "proxy-auth"));
544
575
  warnUnsupportedEngineOptions(exe, fingerprint, proxyOpt, quiet);
545
576
  if (proxy === undefined)
546
577
  delete pwOptions.proxy;
578
+ else
579
+ pwOptions.proxy = proxy;
547
580
  emitCoherenceWarnings({ ...fingerprint, proxy: proxyOpt, geoip, headless: pwOptions.headless, _userArgs: args ?? [] }, quiet, process.platform, String(RELEASE.version).split(".")[0]);
548
581
  const opts = pwOptions;
549
582
  // headed + no explicit viewport -> disable the emulated viewport (impossible-window tell)
@@ -586,21 +619,22 @@ export async function launchPersistentContext(userDataDir, options = {}) {
586
619
  const runtimeEnv = lease ? withRunToken(lease.token, ctxEnv, launchToken?.file) : ctxEnv;
587
620
  const engineArgs = assembleArgs(fingerprintArgs(fingerprint), agentArgs(agent), [...extensionArgs(extensions), ...portableArgs(portableProfile, encryptionKey)], proxyArgs, disablePrivacySandbox, fingerprint.webrtcIp, userArgs, proxyOpt, socks5Udp, { exe, headed: opts.headless === false, quiet, allowThirdPartyCookies, transparentProxy });
588
621
  // headless: the persona owns screen when it is running, so only the window needs fitting; with no
589
- // persona the SDK overrides screen itself (see ./geometry.ts). Headed already set viewport: null.
622
+ // persona the SDK sets the headless display itself (see ./geometry.ts). Headed already set
623
+ // viewport: null.
590
624
  const geom = opts.headless === false
591
625
  ? null
592
- : applyHeadlessGeometry(opts, fingerprint.fingerprint, engineArgs);
626
+ : applyHeadlessGeometry(opts, fingerprint.fingerprint, engineArgs, fingerprint);
593
627
  const context = await releaseLeaseOnFailure(lease, () => winAvRetry((exePath) => chromium.launchPersistentContext(userDataDir, {
594
628
  ...opts,
595
629
  ignoreDefaultArgs, // keep AutomationControlled off (+ component updater on when widevine)
596
630
  executablePath: exePath,
597
631
  ...(runtimeEnv ? { env: runtimeEnv } : {}),
598
- args: engineArgs,
632
+ args: [...engineArgs, ...(geom?.args ?? [])],
599
633
  }), exe));
600
634
  if (lease)
601
635
  context.on("close", () => { void lease.stop(); launchToken?.release(); });
602
636
  if (geom)
603
- await installWindowFixup(context, engineArgs, geom.mode === "persona");
637
+ await installWindowFixup(context, engineArgs);
604
638
  installHumanizeOnContext(context, { humanize, showCursor, seed: fingerprint.fingerprint }); // seed => stable motor persona
605
639
  return context;
606
640
  }
@@ -608,7 +642,8 @@ export async function launchPersistentContext(userDataDir, options = {}) {
608
642
  * Launch Clearcote ready for the in-browser AI agent and return a Playwright {@link BrowserContext}.
609
643
  *
610
644
  * The agent drives Chrome's Actor framework, which only attaches to a **regular profile** — not
611
- * incognito — so this uses a *persistent* context (a fresh temp `userDataDir` unless you pass one).
645
+ * incognito — so this uses a *persistent* context: a fresh temp `userDataDir`, deleted when the
646
+ * context closes, unless you pass one to keep.
612
647
  * Set `agentLlmKey` (+ optional `agentModel`), then drive a page with {@link runAgentTask}:
613
648
  *
614
649
  * ```ts
@@ -623,8 +658,9 @@ export async function launchPersistentContext(userDataDir, options = {}) {
623
658
  */
624
659
  export async function launchAgent(options = {}) {
625
660
  const { userDataDir, ...rest } = options;
626
- const dir = userDataDir ?? mkdtempSync(join(tmpdir(), "clearcote-agent-"));
627
- return launchPersistentContext(dir, rest);
661
+ if (userDataDir !== undefined)
662
+ return launchPersistentContext(userDataDir, rest);
663
+ return launchOnThrowawayProfile("clearcote-agent-", rest);
628
664
  }
629
665
  /** A free ephemeral TCP port on loopback. */
630
666
  function freePort() {
@@ -722,13 +758,17 @@ export function serveNeedsNoSandbox(platform, uid, args) {
722
758
  return platform === "linux" && uid === 0 && !args.includes("--no-sandbox");
723
759
  }
724
760
  export async function serve(options = {}) {
725
- const { port, host = "127.0.0.1", allowOrigins, userDataDir: uddOption, headless = true, readyTimeoutMs = 30000, humanize: _humanize, // Playwright-only; not applicable to a direct launch
761
+ const { port, host = "127.0.0.1", allowOrigins, userDataDir: uddOption, headless = true, readyTimeoutMs = 30000, windowSize, humanize: _humanize, // Playwright-only; not applicable to a direct launch
726
762
  showCursor: _showCursor, ...launchOpts } = options;
763
+ if (windowSize !== undefined) {
764
+ const ok = (v) => typeof v === "number" && Number.isInteger(v) && v >= 100 && v <= 10000;
765
+ if (!windowSize || !ok(windowSize.width) || !ok(windowSize.height)) {
766
+ throw new TypeError("clearcote serve: windowSize must be { width, height } in whole CSS px, 100-10000");
767
+ }
768
+ }
727
769
  // Build the same stealth arg set as launch(), then launch the binary ourselves.
728
- const merged = launchOpts.profile
729
- ? { ...resolveProfileOptions(launchOpts.profile), ...launchOpts }
730
- : launchOpts;
731
- const { profile: _profile, extensions, portableProfile, shaderDialect, socks5Udp, encryptionKey, disablePrivacySandbox, executablePath: exeOption, args: userArgs, geoip, autoUpdate, cacheDir, quiet, version, licenseKey, licenseApiBase, licenseThroughProxy, releaseChannel, allowThirdPartyCookies, transparentProxy, ...rest } = merged;
770
+ const merged = mergeSavedProfile(launchOpts);
771
+ const { profile, profileSelect, extensions, portableProfile, shaderDialect, socks5Udp, encryptionKey, disablePrivacySandbox, executablePath: exeOption, args: userArgs, geoip, autoUpdate, cacheDir, quiet, version, licenseKey, licenseApiBase, licenseThroughProxy, releaseChannel, allowThirdPartyCookies, transparentProxy, ...rest } = merged;
732
772
  const { fingerprint, rest: afterFp } = splitFingerprintOptions(rest);
733
773
  const { agent, rest: pwOptions } = splitAgentOptions(afterFp);
734
774
  const proxyOpt = pwOptions.proxy;
@@ -736,7 +776,10 @@ export async function serve(options = {}) {
736
776
  await applyGeoip(fingerprint, proxyOpt, quiet);
737
777
  const exe = await executablePath({ executablePath: exeOption, version, autoUpdate, cacheDir, quiet, releaseChannel, pro: proSelector(licenseKey, licenseApiBase) }); // capability-gated proxy route
738
778
  ensureRunnableHere(exe);
739
- const { args: proxyArgs } = resolveProxy(proxyOpt, engineSupportsSwitch(exe, "proxy-auth"));
779
+ await applyProfileAuto(profile, fingerprint, exe, { quiet, licenseKey, licenseApiBase, profileSelect });
780
+ // passProxy: what is left for a plain --proxy-server once credentials went to the engine's own
781
+ // switches (undefined then — proxyArgs already carries --proxy-server).
782
+ const { args: proxyArgs, proxy: passProxy } = resolveProxy(proxyOpt, engineSupportsSwitch(exe, "proxy-auth"));
740
783
  warnUnsupportedEngineOptions(exe, fingerprint, proxyOpt, quiet);
741
784
  emitCoherenceWarnings({ ...fingerprint, proxy: proxyOpt, geoip, headless, _userArgs: userArgs ?? [] }, quiet, process.platform, String(RELEASE.version).split(".")[0]);
742
785
  // A license key selects the PRO (gated) binary; no key -> the free binary (unchanged path).
@@ -756,12 +799,20 @@ export async function serve(options = {}) {
756
799
  ];
757
800
  if (headless)
758
801
  cdpArgs.push("--headless=new");
759
- if (proxyOpt?.server)
760
- cdpArgs.push(`--proxy-server=${proxyOpt.server}`);
802
+ // Never the caller's raw server: it comes after proxyArgs, so a second --proxy-server would win,
803
+ // and one still carrying user:pass@ is rejected by Chromium's parser — every request then failed
804
+ // with ERR_NO_SUPPORTED_PROXIES (measured on r27).
805
+ if (passProxy?.server)
806
+ cdpArgs.push(`--proxy-server=${passProxy.server}`);
761
807
  // Chromium refuses to start as root without --no-sandbox, and serve spawns the binary itself, so
762
808
  // Playwright's own --no-sandbox is missing: `clearcote serve` in a root container just timed out.
763
809
  if (serveNeedsNoSandbox(process.platform, process.getuid?.(), engineArgs))
764
810
  cdpArgs.push("--no-sandbox");
811
+ // Headless geometry for a raw endpoint: the display and window are set browser-wide, since no
812
+ // client's context options or CDP overrides would reach every page (see ./geometry.ts).
813
+ const geometry = servedGeometry(engineArgs, fingerprint, headless);
814
+ if (geometry)
815
+ cdpArgs.push(...geometry.args);
765
816
  // License (opt-in): check out a concurrency slot + inject CLEARCOTE_RUN_TOKEN. Inert in free mode.
766
817
  const lease = await acquireLease({
767
818
  licenseKey, licenseApiBase, quiet, sdkVersion: SDK_VERSION, licenseThroughProxy, proxy: proxyOpt,
@@ -820,6 +871,10 @@ export async function serve(options = {}) {
820
871
  }
821
872
  const srv = new Server(proc, host, resolvedPort, userDataDir, ownUdd, lease, launchToken);
822
873
  process.once("exit", () => { void srv.close(); });
874
+ // Before any client attaches: the window onto the work area (and, under a persona, the headless
875
+ // display onto the persona's). Its own connection, closed again; never fails the launch.
876
+ if (geometry)
877
+ await fitServedWindow(await srv.wsUrl().catch(() => undefined), { persona: geometry.persona, windowSize });
823
878
  if (!quiet) {
824
879
  process.stderr.write(`[clearcote] CDP endpoint ready: ${srv.cdpUrl}\n` +
825
880
  ` attach any client: connectOverCDP(${JSON.stringify(srv.cdpUrl)}) / puppeteer.connect({ browserURL })\n`);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -119,6 +119,19 @@ export declare function engineSupportsSwitch(exe: string | undefined, name: stri
119
119
  * unknown switch, so an older engine launches fine — but silently, which is worse than a warning.
120
120
  */
121
121
  export declare function warnUnsupportedEngineOptions(exe: string | undefined, fingerprint: Record<string, unknown>, proxy: PwProxy | undefined, quiet?: boolean): string[];
122
+ /**
123
+ * The credentials a proxy descriptor carries, and its server with any userinfo removed.
124
+ *
125
+ * `socks5://user:pass@host:1080` is the shape most proxy providers hand out, so credentials written
126
+ * into the URL count exactly like the `username`/`password` fields (which win when both are given,
127
+ * as in {@link toProxySpec}). Userinfo is percent-decoded, like a browser reads it, and split at the
128
+ * LAST '@' of the authority, like the WHATWG URL parser, so an unescaped '@' in a password survives.
129
+ */
130
+ export declare function proxyCredentials(proxy: PwProxy): {
131
+ server: string;
132
+ username: string;
133
+ password: string;
134
+ };
122
135
  export declare function resolveProxy(proxy: PwProxy | undefined, engineSupportsProxyAuth?: boolean): {
123
136
  args: string[];
124
137
  proxy: PwProxy | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"launchopts.d.ts","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"launchopts.d.ts","sourceRoot":"","sources":["../src/launchopts.ts"],"names":[],"mappings":"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"}