@cereworker/browser 26.323.5 → 26.323.7

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/cdp.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ import type { BrowserSession } from './puppeteer.js';
2
+ export interface CdpConnectionOptions {
3
+ /** Chrome remote debugging port (default: 9222) */
4
+ port?: number;
5
+ /** Direct WebSocket endpoint URL */
6
+ wsEndpoint?: string;
7
+ }
8
+ export declare function connectCdp(options?: CdpConnectionOptions): Promise<BrowserSession>;
9
+ export declare function disconnectCdp(): Promise<void>;
10
+ export declare function getCdpSession(): BrowserSession | null;
11
+ //# sourceMappingURL=cdp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cdp.d.ts","sourceRoot":"","sources":["../src/cdp.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAErD,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAID,wBAAsB,UAAU,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,cAAc,CAAC,CAkB5F;AAED,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAKnD;AAED,wBAAgB,aAAa,IAAI,cAAc,GAAG,IAAI,CAErD"}
package/dist/cdp.js ADDED
@@ -0,0 +1,28 @@
1
+ import puppeteer from 'puppeteer';
2
+ let cdpSession = null;
3
+ export async function connectCdp(options = {}) {
4
+ if (cdpSession)
5
+ return cdpSession;
6
+ let wsEndpoint = options.wsEndpoint;
7
+ if (!wsEndpoint) {
8
+ const port = options.port ?? 9222;
9
+ const response = await fetch(`http://localhost:${port}/json/version`);
10
+ const data = (await response.json());
11
+ wsEndpoint = data.webSocketDebuggerUrl;
12
+ }
13
+ const browser = await puppeteer.connect({ browserWSEndpoint: wsEndpoint });
14
+ const pages = await browser.pages();
15
+ const page = pages[0] ?? (await browser.newPage());
16
+ cdpSession = { browser, page };
17
+ return cdpSession;
18
+ }
19
+ export async function disconnectCdp() {
20
+ if (cdpSession) {
21
+ cdpSession.browser.disconnect();
22
+ cdpSession = null;
23
+ }
24
+ }
25
+ export function getCdpSession() {
26
+ return cdpSession;
27
+ }
28
+ //# sourceMappingURL=cdp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cdp.js","sourceRoot":"","sources":["../src/cdp.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,MAAM,WAAW,CAAC;AAUlC,IAAI,UAAU,GAA0B,IAAI,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAgC,EAAE;IACjE,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAElC,IAAI,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;IAEpC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC;QAClC,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,oBAAoB,IAAI,eAAe,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAqC,CAAC;QACzE,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC;IACzC,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;IACpC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEnD,UAAU,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,IAAI,UAAU,EAAE,CAAC;QACf,UAAU,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAChC,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC;AACpB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
- export { launchBrowser, closeBrowser, getSession, navigateTo, getPageText, screenshot, clickElement, typeText, evaluateJs, waitForSelector, getPageUrl, type BrowserSession, } from './puppeteer.js';
1
+ export { launchBrowser, closeBrowser, getSession, setMode, getMode, navigateTo, getPageText, screenshot, clickElement, typeText, evaluateJs, waitForSelector, getPageUrl, type BrowserSession, } from './puppeteer.js';
2
+ export { connectCdp, disconnectCdp, getCdpSession, type CdpConnectionOptions } from './cdp.js';
2
3
  export { browserToolDefinitions, type BrowserToolName } from './tools.js';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,eAAe,EACf,UAAU,EACV,KAAK,cAAc,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,OAAO,EACP,OAAO,EACP,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,eAAe,EACf,UAAU,EACV,KAAK,cAAc,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,4 @@
1
- export { launchBrowser, closeBrowser, getSession, navigateTo, getPageText, screenshot, clickElement, typeText, evaluateJs, waitForSelector, getPageUrl, } from './puppeteer.js';
1
+ export { launchBrowser, closeBrowser, getSession, setMode, getMode, navigateTo, getPageText, screenshot, clickElement, typeText, evaluateJs, waitForSelector, getPageUrl, } from './puppeteer.js';
2
+ export { connectCdp, disconnectCdp, getCdpSession } from './cdp.js';
2
3
  export { browserToolDefinitions } from './tools.js';
3
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,eAAe,EACf,UAAU,GAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAwB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,OAAO,EACP,OAAO,EACP,UAAU,EACV,WAAW,EACX,UAAU,EACV,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,eAAe,EACf,UAAU,GAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAA6B,MAAM,UAAU,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAwB,MAAM,YAAY,CAAC"}
@@ -1,8 +1,11 @@
1
1
  import { type Browser, type Page } from 'puppeteer';
2
+ import { type CdpConnectionOptions } from './cdp.js';
2
3
  export interface BrowserSession {
3
4
  browser: Browser;
4
5
  page: Page;
5
6
  }
7
+ export declare function setMode(m: 'launch' | 'connect', options?: CdpConnectionOptions): void;
8
+ export declare function getMode(): 'launch' | 'connect';
6
9
  export declare function launchBrowser(headless?: boolean): Promise<BrowserSession>;
7
10
  export declare function closeBrowser(): Promise<void>;
8
11
  export declare function getSession(): BrowserSession | null;
@@ -1 +1 @@
1
- {"version":3,"file":"puppeteer.d.ts","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAE/D,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;CACZ;AAID,wBAAsB,aAAa,CAAC,QAAQ,UAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAa5E;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAKlD;AAED,wBAAgB,UAAU,IAAI,cAAc,GAAG,IAAI,CAElD;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAI7D;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CASnD;AAED,wBAAsB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAK/D;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQpE;AAED,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9E;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9D;AAED,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAQzF;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAGlD"}
1
+ {"version":3,"file":"puppeteer.d.ts","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"AAAA,OAAkB,EAAE,KAAK,OAAO,EAAE,KAAK,IAAI,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAA4C,KAAK,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAE/F,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,IAAI,CAAC;CACZ;AAMD,wBAAgB,OAAO,CAAC,CAAC,EAAE,QAAQ,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,oBAAoB,GAAG,IAAI,CAGrF;AAED,wBAAgB,OAAO,IAAI,QAAQ,GAAG,SAAS,CAE9C;AAWD,wBAAsB,aAAa,CAAC,QAAQ,UAAO,GAAG,OAAO,CAAC,cAAc,CAAC,CAa5E;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CASlD;AAED,wBAAgB,UAAU,IAAI,cAAc,GAAG,IAAI,CAGlD;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAI7D;AAED,wBAAsB,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CASnD;AAED,wBAAsB,UAAU,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAK/D;AAED,wBAAsB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQpE;AAED,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9E;AAED,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ9D;AAED,wBAAsB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAQzF;AAED,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAGlD"}
package/dist/puppeteer.js CHANGED
@@ -1,5 +1,24 @@
1
1
  import puppeteer from 'puppeteer';
2
+ import { connectCdp, disconnectCdp, getCdpSession } from './cdp.js';
2
3
  let session = null;
4
+ let mode = 'launch';
5
+ let cdpOptions = {};
6
+ export function setMode(m, options) {
7
+ mode = m;
8
+ cdpOptions = options ?? {};
9
+ }
10
+ export function getMode() {
11
+ return mode;
12
+ }
13
+ async function getOrCreateSession() {
14
+ if (mode === 'connect') {
15
+ const existing = getCdpSession();
16
+ if (existing)
17
+ return existing;
18
+ return connectCdp(cdpOptions);
19
+ }
20
+ return launchBrowser();
21
+ }
3
22
  export async function launchBrowser(headless = true) {
4
23
  if (session)
5
24
  return session;
@@ -13,21 +32,27 @@ export async function launchBrowser(headless = true) {
13
32
  return session;
14
33
  }
15
34
  export async function closeBrowser() {
35
+ if (mode === 'connect') {
36
+ await disconnectCdp();
37
+ return;
38
+ }
16
39
  if (session) {
17
40
  await session.browser.close();
18
41
  session = null;
19
42
  }
20
43
  }
21
44
  export function getSession() {
45
+ if (mode === 'connect')
46
+ return getCdpSession();
22
47
  return session;
23
48
  }
24
49
  export async function navigateTo(url) {
25
- const s = await launchBrowser();
50
+ const s = await getOrCreateSession();
26
51
  await s.page.goto(url, { waitUntil: 'networkidle2', timeout: 30000 });
27
52
  return `Navigated to ${s.page.url()} - Title: ${await s.page.title()}`;
28
53
  }
29
54
  export async function getPageText() {
30
- const s = await launchBrowser();
55
+ const s = await getOrCreateSession();
31
56
  const text = await s.page.evaluate(() => document.body.innerText);
32
57
  // Truncate to avoid massive output
33
58
  const maxLen = 10000;
@@ -37,13 +62,13 @@ export async function getPageText() {
37
62
  return text;
38
63
  }
39
64
  export async function screenshot(path) {
40
- const s = await launchBrowser();
65
+ const s = await getOrCreateSession();
41
66
  const filePath = path ?? `/tmp/cereworker-screenshot-${Date.now()}.png`;
42
67
  await s.page.screenshot({ path: filePath, fullPage: false });
43
68
  return `Screenshot saved to ${filePath}`;
44
69
  }
45
70
  export async function clickElement(selector) {
46
- const s = await launchBrowser();
71
+ const s = await getOrCreateSession();
47
72
  try {
48
73
  await s.page.click(selector);
49
74
  return `Clicked: ${selector}`;
@@ -53,7 +78,7 @@ export async function clickElement(selector) {
53
78
  }
54
79
  }
55
80
  export async function typeText(selector, text) {
56
- const s = await launchBrowser();
81
+ const s = await getOrCreateSession();
57
82
  try {
58
83
  await s.page.type(selector, text);
59
84
  return `Typed into: ${selector}`;
@@ -63,7 +88,7 @@ export async function typeText(selector, text) {
63
88
  }
64
89
  }
65
90
  export async function evaluateJs(code) {
66
- const s = await launchBrowser();
91
+ const s = await getOrCreateSession();
67
92
  try {
68
93
  const result = await s.page.evaluate(code);
69
94
  return String(result ?? '(no result)');
@@ -73,7 +98,7 @@ export async function evaluateJs(code) {
73
98
  }
74
99
  }
75
100
  export async function waitForSelector(selector, timeoutMs = 5000) {
76
- const s = await launchBrowser();
101
+ const s = await getOrCreateSession();
77
102
  try {
78
103
  await s.page.waitForSelector(selector, { timeout: timeoutMs });
79
104
  return `Found: ${selector}`;
@@ -83,7 +108,7 @@ export async function waitForSelector(selector, timeoutMs = 5000) {
83
108
  }
84
109
  }
85
110
  export async function getPageUrl() {
86
- const s = await launchBrowser();
111
+ const s = await getOrCreateSession();
87
112
  return s.page.url();
88
113
  }
89
114
  //# sourceMappingURL=puppeteer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"puppeteer.js","sourceRoot":"","sources":["../src/puppeteer.ts"],"names":[],"mappings":"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"}
package/dist/tools.d.ts CHANGED
@@ -96,10 +96,32 @@ export declare const browserToolDefinitions: {
96
96
  parameters: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
97
97
  execute: () => Promise<string>;
98
98
  };
99
+ browserConnect: {
100
+ description: string;
101
+ parameters: z.ZodObject<{
102
+ port: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
103
+ wsEndpoint: z.ZodOptional<z.ZodString>;
104
+ }, "strip", z.ZodTypeAny, {
105
+ port: number;
106
+ wsEndpoint?: string | undefined;
107
+ }, {
108
+ port?: number | undefined;
109
+ wsEndpoint?: string | undefined;
110
+ }>;
111
+ execute: (args: {
112
+ port?: number;
113
+ wsEndpoint?: string;
114
+ }) => Promise<string>;
115
+ };
116
+ browserDisconnect: {
117
+ description: string;
118
+ parameters: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
119
+ execute: () => Promise<"Not in CDP mode. Use browserClose to close a launched browser." | "Disconnected from Chrome">;
120
+ };
99
121
  browserClose: {
100
122
  description: string;
101
123
  parameters: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
102
- execute: () => Promise<string>;
124
+ execute: () => Promise<"Disconnected from Chrome" | "Browser closed">;
103
125
  };
104
126
  };
105
127
  export type BrowserToolName = keyof typeof browserToolDefinitions;
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,eAAO,MAAM,sBAAsB;;;;;;;;;;wBAMT;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;wBAYf;YAAE,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;wBAOjB;YAAE,QAAQ,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;wBAQpB;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;wBAOlC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;wBAQhB;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;CAgB/D,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,sBAAsB,CAAC"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAgBxB,eAAO,MAAM,sBAAsB;;;;;;;;;;wBAMT;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;wBAYf;YAAE,IAAI,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;wBAOjB;YAAE,QAAQ,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;wBAQpB;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;wBAOlC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;wBAQhB;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;;;;;;;;wBAetC;YAAE,IAAI,CAAC,EAAE,MAAM,CAAC;YAAC,UAAU,CAAC,EAAE,MAAM,CAAA;SAAE;;;;;;;;;;;;CAgC/D,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,sBAAsB,CAAC"}
package/dist/tools.js CHANGED
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
- import { navigateTo, getPageText, screenshot, clickElement, typeText, evaluateJs, waitForSelector, getPageUrl, closeBrowser, } from './puppeteer.js';
2
+ import { navigateTo, getPageText, screenshot, clickElement, typeText, evaluateJs, waitForSelector, getPageUrl, closeBrowser, setMode, getMode, } from './puppeteer.js';
3
+ import { connectCdp, disconnectCdp } from './cdp.js';
3
4
  export const browserToolDefinitions = {
4
5
  browserNavigate: {
5
6
  description: 'Navigate the browser to a URL',
@@ -55,12 +56,43 @@ export const browserToolDefinitions = {
55
56
  parameters: z.object({}),
56
57
  execute: async () => getPageUrl(),
57
58
  },
59
+ browserConnect: {
60
+ description: 'Connect to an existing Chrome browser via CDP (Chrome DevTools Protocol). Chrome must be running with --remote-debugging-port.',
61
+ parameters: z.object({
62
+ port: z.number().optional().default(9222).describe('Chrome remote debugging port'),
63
+ wsEndpoint: z.string().optional().describe('Direct WebSocket endpoint URL (overrides port)'),
64
+ }),
65
+ execute: async (args) => {
66
+ try {
67
+ setMode('connect', { port: args.port, wsEndpoint: args.wsEndpoint });
68
+ const s = await connectCdp({ port: args.port, wsEndpoint: args.wsEndpoint });
69
+ const url = s.page.url();
70
+ return `Connected to Chrome via CDP. Current page: ${url}`;
71
+ }
72
+ catch (err) {
73
+ setMode('launch');
74
+ return `Failed to connect: ${err instanceof Error ? err.message : String(err)}`;
75
+ }
76
+ },
77
+ },
78
+ browserDisconnect: {
79
+ description: 'Disconnect from Chrome without closing it (CDP mode only)',
80
+ parameters: z.object({}),
81
+ execute: async () => {
82
+ if (getMode() !== 'connect') {
83
+ return 'Not in CDP mode. Use browserClose to close a launched browser.';
84
+ }
85
+ await disconnectCdp();
86
+ setMode('launch');
87
+ return 'Disconnected from Chrome';
88
+ },
89
+ },
58
90
  browserClose: {
59
- description: 'Close the browser',
91
+ description: 'Close the browser (launch mode) or disconnect (CDP mode)',
60
92
  parameters: z.object({}),
61
93
  execute: async () => {
62
94
  await closeBrowser();
63
- return 'Browser closed';
95
+ return getMode() === 'connect' ? 'Disconnected from Chrome' : 'Browser closed';
64
96
  },
65
97
  },
66
98
  };
package/dist/tools.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cereworker/browser",
3
- "version": "26.323.5",
3
+ "version": "26.323.7",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -16,10 +16,10 @@
16
16
  "directory": "packages/browser"
17
17
  },
18
18
  "dependencies": {
19
- "@cereworker/core": "26.323.5",
20
- "@cereworker/config": "26.323.5",
21
19
  "puppeteer": "^24.0.0",
22
- "zod": "^3.24.0"
20
+ "zod": "^3.24.0",
21
+ "@cereworker/config": "26.323.7",
22
+ "@cereworker/core": "26.323.7"
23
23
  },
24
24
  "devDependencies": {
25
25
  "typescript": "^5.7.3"