@vm0/cli 9.271.6 → 9.272.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/{agent-ETI6HQCF.js → agent-S5RL323V.js} +6 -6
- package/{banking-7R434L5Z.js → banking-HSDRTKVP.js} +4 -4
- package/{browser-W3UDNAFN.js → browser-TYHCDF3J.js} +11 -27
- package/browser-TYHCDF3J.js.map +1 -0
- package/{chat-ZWX64EII.js → chat-FHAGZVZJ.js} +5 -5
- package/{chunk-RQ36UIG3.js → chunk-ASUMSS65.js} +144 -195
- package/chunk-ASUMSS65.js.map +1 -0
- package/{chunk-45IFS66F.js → chunk-AVFS2SID.js} +2 -2
- package/{chunk-ZSIYKEIF.js → chunk-H566OQ7J.js} +2 -2
- package/{chunk-MQMMLQXB.js → chunk-JYFV2GNX.js} +64 -70
- package/chunk-JYFV2GNX.js.map +1 -0
- package/{chunk-DMHP3E2B.js → chunk-KDSA7BEE.js} +2 -2
- package/{chunk-ZFE46PXQ.js → chunk-KO5OXRMR.js} +2 -2
- package/{chunk-VEHRGO3Q.js → chunk-QI56BAHC.js} +2 -2
- package/{chunk-RQCH5BYD.js → chunk-XOPZHXXZ.js} +2 -2
- package/{chunk-GIQS445S.js → chunk-XWNYWQRU.js} +2 -2
- package/{computer-use-WK6YNEHN.js → computer-use-LOJWBRSN.js} +4 -4
- package/{connector-PROIBXNT.js → connector-ANLXHMB3.js} +7 -7
- package/{credit-BVUW6LEK.js → credit-LHJMV7QJ.js} +5 -5
- package/{developer-support-TEWHGI6B.js → developer-support-JKTPRMNM.js} +4 -4
- package/{doctor-VDAEGLKC.js → doctor-554EIIF3.js} +5 -5
- package/{feishu-3U47MKEA.js → feishu-C5VGJ2NQ.js} +4 -4
- package/{finance-VWGPL5AQ.js → finance-VHKWKPVX.js} +4 -4
- package/{generate-74BTZLZV.js → generate-OBK35MJE.js} +5 -5
- package/{github-NIJHTCZN.js → github-VLNAUGLY.js} +4 -4
- package/{goal-DUSZXIDY.js → goal-DAURDXOD.js} +4 -4
- package/{host-4HKPAYFG.js → host-2XI6JTNN.js} +4 -4
- package/{logs-2YJ5MDLF.js → logs-LNPDO54L.js} +5 -5
- package/{mail-GWJT6Z77.js → mail-WRBBGQEO.js} +6 -6
- package/{maps-GBLDAEVZ.js → maps-255EEBKE.js} +4 -4
- package/{model-ROTUHAOL.js → model-K3LAPXAI.js} +5 -5
- package/{model-provider-JUYC7FWQ.js → model-provider-NREA6ERS.js} +5 -5
- package/{org-E2FRQ22I.js → org-GUQGVEVX.js} +4 -4
- package/package.json +1 -1
- package/{people-search-OYPVQVV2.js → people-search-RIC2TKWX.js} +4 -4
- package/{phone-66YHUSTT.js → phone-2AQMLLVJ.js} +4 -4
- package/{preference-7M5KKUHG.js → preference-A37HZEM6.js} +4 -4
- package/{resource-EBU5O6X7.js → resource-JWWHRZ6D.js} +4 -4
- package/{scrape-KHZWNWNY.js → scrape-MX3YWKHX.js} +4 -4
- package/{search-2UZMYWO7.js → search-TZWGF5ZL.js} +5 -5
- package/{secret-YCTFTZA3.js → secret-6YVK6K4A.js} +4 -4
- package/{slack-QC6AEEQE.js → slack-FZ7BI3NY.js} +4 -4
- package/{teams-C27EKNAB.js → teams-M62LQTIC.js} +4 -4
- package/{telegram-55BPTSG3.js → telegram-YZW5TT57.js} +4 -4
- package/{upgrade-WVNCWSQZ.js → upgrade-EH3BDUWY.js} +3 -3
- package/{variable-BCFZUYDS.js → variable-ZRIVOPCS.js} +4 -4
- package/{video-G4NGIFIO.js → video-DKNVOEXF.js} +3 -3
- package/{weather-PMPVGF7W.js → weather-MHIQ4ANM.js} +4 -4
- package/{web-UXORFYEN.js → web-TDNUW4CU.js} +4 -4
- package/{web-search-KTJ7MZ7X.js → web-search-H4MGHJ5R.js} +4 -4
- package/{whoami-QT4BOMKH.js → whoami-AMWSLL4D.js} +6 -6
- package/{workflow-HVAVJS4M.js → workflow-3D7D2JSB.js} +4 -4
- package/zero.js +42 -42
- package/browser-W3UDNAFN.js.map +0 -1
- package/chunk-MQMMLQXB.js.map +0 -1
- package/chunk-RQ36UIG3.js.map +0 -1
- /package/{agent-ETI6HQCF.js.map → agent-S5RL323V.js.map} +0 -0
- /package/{banking-7R434L5Z.js.map → banking-HSDRTKVP.js.map} +0 -0
- /package/{chat-ZWX64EII.js.map → chat-FHAGZVZJ.js.map} +0 -0
- /package/{chunk-45IFS66F.js.map → chunk-AVFS2SID.js.map} +0 -0
- /package/{chunk-ZSIYKEIF.js.map → chunk-H566OQ7J.js.map} +0 -0
- /package/{chunk-DMHP3E2B.js.map → chunk-KDSA7BEE.js.map} +0 -0
- /package/{chunk-ZFE46PXQ.js.map → chunk-KO5OXRMR.js.map} +0 -0
- /package/{chunk-VEHRGO3Q.js.map → chunk-QI56BAHC.js.map} +0 -0
- /package/{chunk-RQCH5BYD.js.map → chunk-XOPZHXXZ.js.map} +0 -0
- /package/{chunk-GIQS445S.js.map → chunk-XWNYWQRU.js.map} +0 -0
- /package/{computer-use-WK6YNEHN.js.map → computer-use-LOJWBRSN.js.map} +0 -0
- /package/{connector-PROIBXNT.js.map → connector-ANLXHMB3.js.map} +0 -0
- /package/{credit-BVUW6LEK.js.map → credit-LHJMV7QJ.js.map} +0 -0
- /package/{developer-support-TEWHGI6B.js.map → developer-support-JKTPRMNM.js.map} +0 -0
- /package/{doctor-VDAEGLKC.js.map → doctor-554EIIF3.js.map} +0 -0
- /package/{feishu-3U47MKEA.js.map → feishu-C5VGJ2NQ.js.map} +0 -0
- /package/{finance-VWGPL5AQ.js.map → finance-VHKWKPVX.js.map} +0 -0
- /package/{generate-74BTZLZV.js.map → generate-OBK35MJE.js.map} +0 -0
- /package/{github-NIJHTCZN.js.map → github-VLNAUGLY.js.map} +0 -0
- /package/{goal-DUSZXIDY.js.map → goal-DAURDXOD.js.map} +0 -0
- /package/{host-4HKPAYFG.js.map → host-2XI6JTNN.js.map} +0 -0
- /package/{logs-2YJ5MDLF.js.map → logs-LNPDO54L.js.map} +0 -0
- /package/{mail-GWJT6Z77.js.map → mail-WRBBGQEO.js.map} +0 -0
- /package/{maps-GBLDAEVZ.js.map → maps-255EEBKE.js.map} +0 -0
- /package/{model-ROTUHAOL.js.map → model-K3LAPXAI.js.map} +0 -0
- /package/{model-provider-JUYC7FWQ.js.map → model-provider-NREA6ERS.js.map} +0 -0
- /package/{org-E2FRQ22I.js.map → org-GUQGVEVX.js.map} +0 -0
- /package/{people-search-OYPVQVV2.js.map → people-search-RIC2TKWX.js.map} +0 -0
- /package/{phone-66YHUSTT.js.map → phone-2AQMLLVJ.js.map} +0 -0
- /package/{preference-7M5KKUHG.js.map → preference-A37HZEM6.js.map} +0 -0
- /package/{resource-EBU5O6X7.js.map → resource-JWWHRZ6D.js.map} +0 -0
- /package/{scrape-KHZWNWNY.js.map → scrape-MX3YWKHX.js.map} +0 -0
- /package/{search-2UZMYWO7.js.map → search-TZWGF5ZL.js.map} +0 -0
- /package/{secret-YCTFTZA3.js.map → secret-6YVK6K4A.js.map} +0 -0
- /package/{slack-QC6AEEQE.js.map → slack-FZ7BI3NY.js.map} +0 -0
- /package/{teams-C27EKNAB.js.map → teams-M62LQTIC.js.map} +0 -0
- /package/{telegram-55BPTSG3.js.map → telegram-YZW5TT57.js.map} +0 -0
- /package/{upgrade-WVNCWSQZ.js.map → upgrade-EH3BDUWY.js.map} +0 -0
- /package/{variable-BCFZUYDS.js.map → variable-ZRIVOPCS.js.map} +0 -0
- /package/{video-G4NGIFIO.js.map → video-DKNVOEXF.js.map} +0 -0
- /package/{weather-PMPVGF7W.js.map → weather-MHIQ4ANM.js.map} +0 -0
- /package/{web-UXORFYEN.js.map → web-TDNUW4CU.js.map} +0 -0
- /package/{web-search-KTJ7MZ7X.js.map → web-search-H4MGHJ5R.js.map} +0 -0
- /package/{whoami-QT4BOMKH.js.map → whoami-AMWSLL4D.js.map} +0 -0
- /package/{workflow-HVAVJS4M.js.map → workflow-3D7D2JSB.js.map} +0 -0
|
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from "node:module";
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
policyIcon
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-XWNYWQRU.js";
|
|
7
7
|
import {
|
|
8
8
|
isInteractive,
|
|
9
9
|
promptConfirm
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
import {
|
|
12
12
|
connectorPermissionGrantsToFirewallPolicies,
|
|
13
13
|
loadConnectorPermissionInfos
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-KO5OXRMR.js";
|
|
15
15
|
import {
|
|
16
16
|
createZeroAgent,
|
|
17
17
|
deleteZeroAgent,
|
|
@@ -23,13 +23,13 @@ import {
|
|
|
23
23
|
listZeroUserPermissionGrants,
|
|
24
24
|
updateZeroAgent,
|
|
25
25
|
updateZeroAgentInstructions
|
|
26
|
-
} from "./chunk-
|
|
27
|
-
import "./chunk-
|
|
26
|
+
} from "./chunk-JYFV2GNX.js";
|
|
27
|
+
import "./chunk-AVFS2SID.js";
|
|
28
28
|
import "./chunk-MA22KQYU.js";
|
|
29
29
|
import {
|
|
30
30
|
source_default,
|
|
31
31
|
withErrorHandler
|
|
32
|
-
} from "./chunk-
|
|
32
|
+
} from "./chunk-QI56BAHC.js";
|
|
33
33
|
import "./chunk-MD3YWUKO.js";
|
|
34
34
|
import {
|
|
35
35
|
Command
|
|
@@ -599,4 +599,4 @@ Notes:
|
|
|
599
599
|
export {
|
|
600
600
|
zeroAgentCommand
|
|
601
601
|
};
|
|
602
|
-
//# sourceMappingURL=agent-
|
|
602
|
+
//# sourceMappingURL=agent-S5RL323V.js.map
|
|
@@ -3,13 +3,13 @@ import { createRequire as __createRequire } from "node:module";
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
callZeroBanking
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-JYFV2GNX.js";
|
|
7
|
+
import "./chunk-AVFS2SID.js";
|
|
8
8
|
import "./chunk-MA22KQYU.js";
|
|
9
9
|
import {
|
|
10
10
|
source_default,
|
|
11
11
|
withErrorHandler
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-QI56BAHC.js";
|
|
13
13
|
import "./chunk-MD3YWUKO.js";
|
|
14
14
|
import {
|
|
15
15
|
Command,
|
|
@@ -114,4 +114,4 @@ Notes:
|
|
|
114
114
|
export {
|
|
115
115
|
zeroBankingCommand
|
|
116
116
|
};
|
|
117
|
-
//# sourceMappingURL=banking-
|
|
117
|
+
//# sourceMappingURL=banking-HSDRTKVP.js.map
|
|
@@ -8,13 +8,13 @@ import {
|
|
|
8
8
|
leaseZeroBrowser,
|
|
9
9
|
useZeroBrowser,
|
|
10
10
|
zeroBrowserCreateRequestSchema
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-JYFV2GNX.js";
|
|
12
|
+
import "./chunk-AVFS2SID.js";
|
|
13
13
|
import "./chunk-MA22KQYU.js";
|
|
14
14
|
import {
|
|
15
15
|
source_default,
|
|
16
16
|
withErrorHandler
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-QI56BAHC.js";
|
|
18
18
|
import "./chunk-MD3YWUKO.js";
|
|
19
19
|
import {
|
|
20
20
|
Command,
|
|
@@ -45,13 +45,7 @@ function parseAgentSession(value) {
|
|
|
45
45
|
return value;
|
|
46
46
|
}
|
|
47
47
|
function browserJson(browser) {
|
|
48
|
-
const {
|
|
49
|
-
creditsCharged: _creditsCharged,
|
|
50
|
-
grossCredits: _grossCredits,
|
|
51
|
-
liveUrl: _liveUrl,
|
|
52
|
-
maxCredits: _maxCredits,
|
|
53
|
-
...safeBrowser
|
|
54
|
-
} = browser;
|
|
48
|
+
const { liveUrl: _liveUrl, ...safeBrowser } = browser;
|
|
55
49
|
return safeBrowser;
|
|
56
50
|
}
|
|
57
51
|
function connectAgentBrowser(cdpUrl, sessionName) {
|
|
@@ -76,7 +70,7 @@ function reclaimNotice(browser) {
|
|
|
76
70
|
}
|
|
77
71
|
function renderBrowser(browser) {
|
|
78
72
|
console.log(`${browser.name} \xB7 ${browser.status}`);
|
|
79
|
-
console.log(source_default.dim(` ID: ${browser.
|
|
73
|
+
console.log(source_default.dim(` Thread ID: ${browser.threadId}`));
|
|
80
74
|
console.log(source_default.dim(` ${reclaimNotice(browser)}`));
|
|
81
75
|
console.log(` ${browser.viewerUrl}`);
|
|
82
76
|
}
|
|
@@ -109,16 +103,6 @@ var useCommand = new Command().name("use").description(
|
|
|
109
103
|
await connectResponse(await useZeroBrowser(), options);
|
|
110
104
|
})
|
|
111
105
|
);
|
|
112
|
-
var resumeCommand = new Command().name("resume").description("Deprecated alias of use").addOption(
|
|
113
|
-
new Option(
|
|
114
|
-
"--agent-session <name>",
|
|
115
|
-
"Named agent-browser session"
|
|
116
|
-
).argParser(parseAgentSession)
|
|
117
|
-
).option("--json", "Print machine-readable output without connection secrets").action(
|
|
118
|
-
withErrorHandler(async (options) => {
|
|
119
|
-
await connectResponse(await useZeroBrowser(), options);
|
|
120
|
-
})
|
|
121
|
-
);
|
|
122
106
|
var leaseCommand = new Command().name("lease").description(
|
|
123
107
|
`Keep this thread's live browser for another ${ZERO_BROWSER_IDLE_LEASE_MINUTES} minutes`
|
|
124
108
|
).option("--json", "Print machine-readable output").action(
|
|
@@ -133,7 +117,7 @@ var leaseCommand = new Command().name("lease").description(
|
|
|
133
117
|
})
|
|
134
118
|
);
|
|
135
119
|
var newCommand = new Command().name("new").description(
|
|
136
|
-
"Create another thread browser with
|
|
120
|
+
"Create another thread browser with an isolated profile and attach it to agent-browser"
|
|
137
121
|
).addOption(new Option("--name <name>", "Browser name").default("browser")).addOption(
|
|
138
122
|
new Option(
|
|
139
123
|
"--country <code>",
|
|
@@ -168,7 +152,7 @@ var viewCommand = new Command().name("view").description("Print the current thre
|
|
|
168
152
|
console.log((await getCurrentZeroBrowser()).viewerUrl);
|
|
169
153
|
})
|
|
170
154
|
);
|
|
171
|
-
var zeroBrowserCommand = new Command().name("browser").description("Use a managed remote browser through agent-browser").addCommand(useCommand).addCommand(leaseCommand).addCommand(
|
|
155
|
+
var zeroBrowserCommand = new Command().name("browser").description("Use a managed remote browser through agent-browser").addCommand(useCommand).addCommand(leaseCommand).addCommand(newCommand).addCommand(statusCommand).addCommand(viewCommand).addHelpText(
|
|
172
156
|
"after",
|
|
173
157
|
`
|
|
174
158
|
Examples:
|
|
@@ -181,12 +165,12 @@ Examples:
|
|
|
181
165
|
Notes:
|
|
182
166
|
- The browser outlives this run; the user can keep working in it from the viewer link
|
|
183
167
|
- Zero reclaims it after ${ZERO_BROWSER_IDLE_LEASE_MINUTES} idle minutes
|
|
184
|
-
- \`zero browser use\` restores a reclaimed browser's login profile
|
|
168
|
+
- \`zero browser use\` restores a reclaimed browser's login profile and reopens saved tab URLs when possible
|
|
185
169
|
- Browser Use credentials and connection URLs are never printed
|
|
186
|
-
-
|
|
187
|
-
- Threads can
|
|
170
|
+
- Each thread keeps an isolated login profile
|
|
171
|
+
- Threads can run their browsers in parallel`
|
|
188
172
|
);
|
|
189
173
|
export {
|
|
190
174
|
zeroBrowserCommand
|
|
191
175
|
};
|
|
192
|
-
//# sourceMappingURL=browser-
|
|
176
|
+
//# sourceMappingURL=browser-TYHCDF3J.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/commands/zero/browser/index.ts"],"sourcesContent":["import { spawnSync } from \"node:child_process\";\n\nimport chalk from \"chalk\";\nimport { Command, InvalidArgumentError, Option } from \"commander\";\nimport {\n ZERO_BROWSER_IDLE_LEASE_MINUTES,\n zeroBrowserCreateRequestSchema,\n type ZeroBrowserSession,\n} from \"@vm0/api-contracts/contracts/zero-browser\";\n\nimport {\n createZeroBrowser,\n getCurrentZeroBrowser,\n leaseZeroBrowser,\n useZeroBrowser,\n} from \"../../../lib/api\";\nimport { withErrorHandler } from \"../../../lib/command\";\n\nconst DEFAULT_AGENT_BROWSER_SESSION = \"zero-browser\";\n\ninterface NewOptions {\n readonly name: string;\n readonly country?: string;\n readonly agentSession?: string;\n readonly json?: boolean;\n}\n\ninterface ConnectionOptions {\n readonly agentSession?: string;\n readonly json?: boolean;\n}\n\ninterface OutputOptions {\n readonly json?: boolean;\n}\n\nfunction parseCountry(value: string): string {\n const normalized = value.trim().toLowerCase();\n if (!/^[a-z]{2}$/u.test(normalized)) {\n throw new InvalidArgumentError(\"country must be a two-letter country code\");\n }\n return normalized;\n}\n\nfunction parseAgentSession(value: string): string {\n if (!/^[a-zA-Z0-9_-]{1,64}$/u.test(value)) {\n throw new InvalidArgumentError(\n \"agent-session must contain only letters, numbers, underscores, or hyphens\",\n );\n }\n return value;\n}\n\nfunction browserJson(\n browser: ZeroBrowserSession,\n): Omit<ZeroBrowserSession, \"liveUrl\"> {\n const { liveUrl: _liveUrl, ...safeBrowser } = browser;\n return safeBrowser;\n}\n\nfunction connectAgentBrowser(cdpUrl: string, sessionName: string): void {\n const result = spawnSync(\n \"agent-browser\",\n [\"--session\", sessionName, \"connect\", cdpUrl],\n { stdio: \"ignore\" },\n );\n if (result.error) {\n throw new Error(\"Could not start agent-browser\", {\n cause: result.error,\n });\n }\n if (result.status !== 0) {\n throw new Error(\n `agent-browser connect exited with status ${result.status ?? \"unknown\"}`,\n );\n }\n}\n\nfunction reclaimNotice(browser: ZeroBrowserSession): string {\n return browser.idleExpiresAt\n ? `Zero reclaims this browser at ${browser.idleExpiresAt} unless it is used or leased again`\n : \"This browser has no live window to reclaim\";\n}\n\nfunction renderBrowser(browser: ZeroBrowserSession): void {\n console.log(`${browser.name} · ${browser.status}`);\n console.log(chalk.dim(` Thread ID: ${browser.threadId}`));\n console.log(chalk.dim(` ${reclaimNotice(browser)}`));\n console.log(` ${browser.viewerUrl}`);\n}\n\nasync function connectResponse(\n response: {\n readonly browser: ZeroBrowserSession;\n readonly cdpUrl: string;\n },\n options: ConnectionOptions,\n): Promise<void> {\n const sessionName = options.agentSession ?? DEFAULT_AGENT_BROWSER_SESSION;\n connectAgentBrowser(response.cdpUrl, sessionName);\n if (options.json) {\n console.log(\n JSON.stringify({\n browser: browserJson(response.browser),\n agentBrowserSession: sessionName,\n }),\n );\n return;\n }\n console.log(chalk.green(\"✓ Managed browser ready\"));\n console.log(chalk.dim(` agent-browser session: ${sessionName}`));\n console.log(chalk.dim(` ${reclaimNotice(response.browser)}`));\n console.log(`[Open live browser](${response.browser.viewerUrl})`);\n}\n\nconst useCommand = new Command()\n .name(\"use\")\n .description(\n \"Create, reuse, or resume this thread's browser, attach it to agent-browser, and extend its lease\",\n )\n .addOption(\n new Option(\n \"--agent-session <name>\",\n \"Named agent-browser session\",\n ).argParser(parseAgentSession),\n )\n .option(\"--json\", \"Print machine-readable output without connection secrets\")\n .action(\n withErrorHandler(async (options: ConnectionOptions) => {\n await connectResponse(await useZeroBrowser(), options);\n }),\n );\n\nconst leaseCommand = new Command()\n .name(\"lease\")\n .description(\n `Keep this thread's live browser for another ${ZERO_BROWSER_IDLE_LEASE_MINUTES} minutes`,\n )\n .option(\"--json\", \"Print machine-readable output\")\n .action(\n withErrorHandler(async (options: OutputOptions) => {\n const browser = await leaseZeroBrowser();\n if (options.json) {\n console.log(JSON.stringify({ browser: browserJson(browser) }));\n return;\n }\n console.log(chalk.green(\"✓ Managed browser lease extended\"));\n console.log(chalk.dim(` ${reclaimNotice(browser)}`));\n }),\n );\n\nconst newCommand = new Command()\n .name(\"new\")\n .description(\n \"Create another thread browser with an isolated profile and attach it to agent-browser\",\n )\n .addOption(new Option(\"--name <name>\", \"Browser name\").default(\"browser\"))\n .addOption(\n new Option(\n \"--country <code>\",\n \"Residential proxy country; omitted uses lower-cost proxyless egress\",\n ).argParser(parseCountry),\n )\n .addOption(\n new Option(\n \"--agent-session <name>\",\n \"Named agent-browser session\",\n ).argParser(parseAgentSession),\n )\n .option(\"--json\", \"Print machine-readable output without connection secrets\")\n .action(\n withErrorHandler(async (options: NewOptions) => {\n const request = zeroBrowserCreateRequestSchema.parse({\n name: options.name,\n proxyCountryCode: options.country ?? null,\n });\n await connectResponse(await createZeroBrowser(request), options);\n }),\n );\n\nconst statusCommand = new Command()\n .name(\"status\")\n .description(\"Show the current thread browser status\")\n .option(\"--json\", \"Print machine-readable output\")\n .action(\n withErrorHandler(async (options: OutputOptions) => {\n const browser = await getCurrentZeroBrowser();\n if (options.json) {\n console.log(JSON.stringify({ browser: browserJson(browser) }));\n return;\n }\n renderBrowser(browser);\n }),\n );\n\nconst viewCommand = new Command()\n .name(\"view\")\n .description(\"Print the current thread browser's authenticated viewer link\")\n .action(\n withErrorHandler(async () => {\n console.log((await getCurrentZeroBrowser()).viewerUrl);\n }),\n );\n\nexport const zeroBrowserCommand = new Command()\n .name(\"browser\")\n .description(\"Use a managed remote browser through agent-browser\")\n .addCommand(useCommand)\n .addCommand(leaseCommand)\n .addCommand(newCommand)\n .addCommand(statusCommand)\n .addCommand(viewCommand)\n .addHelpText(\n \"after\",\n `\nExamples:\n Open this thread's browser: zero browser use\n Keep it alive: zero browser lease\n Create another browser: zero browser new --name booking --country us\n Use the browser: agent-browser --session zero-browser open https://example.com\n Share live view: zero browser view\n\nNotes:\n - The browser outlives this run; the user can keep working in it from the viewer link\n - Zero reclaims it after ${ZERO_BROWSER_IDLE_LEASE_MINUTES} idle minutes\n - \\`zero browser use\\` restores a reclaimed browser's login profile and reopens saved tab URLs when possible\n - Browser Use credentials and connection URLs are never printed\n - Each thread keeps an isolated login profile\n - Threads can run their browsers in parallel`,\n );\n"],"mappings":"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","names":[]}
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
} from "./chunk-LN2ATWKS.js";
|
|
12
12
|
import {
|
|
13
13
|
formatModelProviderRoute
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-XOPZHXXZ.js";
|
|
15
15
|
import {
|
|
16
16
|
chatThreadEventSchema,
|
|
17
17
|
chatThreadSnapshotProjectionSchema,
|
|
@@ -27,14 +27,14 @@ import {
|
|
|
27
27
|
sendZeroChatEvent,
|
|
28
28
|
updateZeroChatThreadModelSelection,
|
|
29
29
|
userMessageDocumentSchema
|
|
30
|
-
} from "./chunk-
|
|
31
|
-
import "./chunk-
|
|
30
|
+
} from "./chunk-JYFV2GNX.js";
|
|
31
|
+
import "./chunk-AVFS2SID.js";
|
|
32
32
|
import "./chunk-MA22KQYU.js";
|
|
33
33
|
import {
|
|
34
34
|
getApiUrl,
|
|
35
35
|
source_default,
|
|
36
36
|
withErrorHandler
|
|
37
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-QI56BAHC.js";
|
|
38
38
|
import {
|
|
39
39
|
decodeZeroTokenPayload
|
|
40
40
|
} from "./chunk-MD3YWUKO.js";
|
|
@@ -1168,4 +1168,4 @@ Examples:
|
|
|
1168
1168
|
export {
|
|
1169
1169
|
zeroChatCommand
|
|
1170
1170
|
};
|
|
1171
|
-
//# sourceMappingURL=chat-
|
|
1171
|
+
//# sourceMappingURL=chat-FHAGZVZJ.js.map
|