From 450c76d955b8bae2be87c4fa8b2dc6d24b4737ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jim=20Liu=20=E5=AE=9D=E7=8E=89?= Date: Wed, 1 Apr 2026 02:12:04 -0500 Subject: [PATCH] chore(baoyu-url-to-markdown): sync vendor baoyu-fetch with login auto-detect --- .../vendor/baoyu-fetch/src/commands/convert.ts | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/skills/baoyu-url-to-markdown/scripts/vendor/baoyu-fetch/src/commands/convert.ts b/skills/baoyu-url-to-markdown/scripts/vendor/baoyu-fetch/src/commands/convert.ts index 1f6435f..659e18e 100644 --- a/skills/baoyu-url-to-markdown/scripts/vendor/baoyu-fetch/src/commands/convert.ts +++ b/skills/baoyu-url-to-markdown/scripts/vendor/baoyu-fetch/src/commands/convert.ts @@ -399,6 +399,22 @@ export async function runConvertCommand(options: ConvertCommandOptions): Promise if (restored) logger.info(`Restored ${adapter.name} session cookies from sidecar.`); } + if (options.waitMode === "interaction" && adapter.checkLogin) { + await context.browser.goto(url.toString(), options.timeoutMs).catch(() => {}); + const preLogin = await adapter.checkLogin(context); + if (preLogin.state !== "logged_in") { + didLogin = true; + await waitForInteraction(adapter, context, { + type: "wait_for_interaction", + kind: "login", + provider: preLogin.provider ?? adapter.name, + prompt: `Please sign in to ${adapter.name === "x" ? "X" : adapter.name} in the opened Chrome window. Extraction will continue automatically once login is detected.`, + reason: preLogin.reason ?? `Not logged in to ${adapter.name}`, + requiresVisibleBrowser: true, + }, options); + } + } + if (options.waitMode === "force") { await context.browser.goto(url.toString(), options.timeoutMs).catch(() => {}); await waitForForceResume(adapter, context, options);