claude-chrome-parallel 3.4.2 → 3.5.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.
Files changed (49) hide show
  1. package/README.md +1 -1
  2. package/dist/cdp/connection-pool.d.ts +29 -0
  3. package/dist/cdp/connection-pool.d.ts.map +1 -1
  4. package/dist/cdp/connection-pool.js +141 -2
  5. package/dist/cdp/connection-pool.js.map +1 -1
  6. package/dist/cdp/screenshot-scheduler.d.ts +54 -0
  7. package/dist/cdp/screenshot-scheduler.d.ts.map +1 -0
  8. package/dist/cdp/screenshot-scheduler.js +87 -0
  9. package/dist/cdp/screenshot-scheduler.js.map +1 -0
  10. package/dist/hints/rules/error-recovery.d.ts.map +1 -1
  11. package/dist/hints/rules/error-recovery.js +4 -0
  12. package/dist/hints/rules/error-recovery.js.map +1 -1
  13. package/dist/mcp-server.d.ts +5 -1
  14. package/dist/mcp-server.d.ts.map +1 -1
  15. package/dist/mcp-server.js +45 -1
  16. package/dist/mcp-server.js.map +1 -1
  17. package/dist/orchestration/workflow-engine.d.ts +30 -1
  18. package/dist/orchestration/workflow-engine.d.ts.map +1 -1
  19. package/dist/orchestration/workflow-engine.js +160 -4
  20. package/dist/orchestration/workflow-engine.js.map +1 -1
  21. package/dist/session-manager.d.ts +6 -0
  22. package/dist/session-manager.d.ts.map +1 -1
  23. package/dist/session-manager.js +26 -0
  24. package/dist/session-manager.js.map +1 -1
  25. package/dist/tools/batch-execute.d.ts +11 -0
  26. package/dist/tools/batch-execute.d.ts.map +1 -0
  27. package/dist/tools/batch-execute.js +226 -0
  28. package/dist/tools/batch-execute.js.map +1 -0
  29. package/dist/tools/computer.d.ts.map +1 -1
  30. package/dist/tools/computer.js +4 -2
  31. package/dist/tools/computer.js.map +1 -1
  32. package/dist/tools/index.d.ts.map +1 -1
  33. package/dist/tools/index.js +10 -0
  34. package/dist/tools/index.js.map +1 -1
  35. package/dist/tools/lightweight-scroll.d.ts +11 -0
  36. package/dist/tools/lightweight-scroll.d.ts.map +1 -0
  37. package/dist/tools/lightweight-scroll.js +266 -0
  38. package/dist/tools/lightweight-scroll.js.map +1 -0
  39. package/dist/tools/orchestration.d.ts.map +1 -1
  40. package/dist/tools/orchestration.js +123 -10
  41. package/dist/tools/orchestration.js.map +1 -1
  42. package/dist/tools/read-page.d.ts.map +1 -1
  43. package/dist/tools/read-page.js +59 -0
  44. package/dist/tools/read-page.js.map +1 -1
  45. package/dist/tools/shutdown.d.ts +12 -0
  46. package/dist/tools/shutdown.d.ts.map +1 -0
  47. package/dist/tools/shutdown.js +120 -0
  48. package/dist/tools/shutdown.js.map +1 -0
  49. package/package.json +1 -1
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Claude Chrome Parallel (CCP)
2
2
 
3
- > **Ultrafast parallel browser MCP.**
3
+ > **Ultrafast parallel browser MCP for Chrome**
4
4
 
5
5
  [![GitHub release](https://img.shields.io/github/v/release/shaun0927/claude-chrome-parallel)](https://github.com/shaun0927/claude-chrome-parallel/releases)
6
6
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
@@ -43,10 +43,27 @@ export declare class CDPConnectionPool {
43
43
  * Initialize the pool with pre-warmed pages
44
44
  */
45
45
  initialize(): Promise<void>;
46
+ /**
47
+ * When true, suppresses automatic pool replenishment.
48
+ * Set during bulk operations (acquireBatch, preWarmForWorkflow) to prevent
49
+ * about:blank tab proliferation.
50
+ */
51
+ private suppressReplenishment;
46
52
  /**
47
53
  * Acquire a page from the pool
48
54
  */
49
55
  acquirePage(): Promise<Page>;
56
+ /**
57
+ * Acquire multiple pages at once without triggering per-page replenishment.
58
+ * Prevents about:blank tab proliferation during workflow_init.
59
+ *
60
+ * Instead of acquiring one-by-one (each triggering replenishPoolAsync),
61
+ * this method batch-acquires all needed pages, only replenishing once at the end.
62
+ *
63
+ * @param count Number of pages to acquire
64
+ * @returns Array of acquired pages
65
+ */
66
+ acquireBatch(count: number): Promise<Page[]>;
50
67
  /**
51
68
  * Release a page back to the pool (non-blocking: cleanup runs async)
52
69
  */
@@ -75,6 +92,18 @@ export declare class CDPConnectionPool {
75
92
  * Perform maintenance on the pool
76
93
  */
77
94
  private performMaintenance;
95
+ /**
96
+ * Pre-warm pages for an upcoming workflow.
97
+ * Call this before creating workers to eliminate page creation delay
98
+ * during the worker creation loop.
99
+ *
100
+ * @param count Number of pages needed for the workflow
101
+ * @param concurrency Max parallel page creation (default: 10)
102
+ */
103
+ preWarmForWorkflow(count: number, concurrency?: number): Promise<{
104
+ warmed: number;
105
+ durationMs: number;
106
+ }>;
78
107
  /**
79
108
  * Get pool statistics
80
109
  */
@@ -1 +1 @@
1
- {"version":3,"file":"connection-pool.d.ts","sourceRoot":"","sources":["../../src/cdp/connection-pool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAgB,MAAM,UAAU,CAAC;AAEnD,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,oBAAoB,EAAE,MAAM,CAAC;IAC7B,0CAA0C;IAC1C,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAgBD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAoB;IAC1C,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,aAAa,CAAS;IAG9B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,YAAY,CAAgB;gBAExB,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,UAAU;IAKtD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBjC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA4ClC;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B5C;;OAEG;YACW,oBAAoB;IAuClC,MAAM,CAAC,QAAQ,CAAC,gBAAgB;;;MAAiC;IAEjE;;OAEG;YACW,aAAa;IAU3B;;OAEG;YACW,kBAAkB;IAuBhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;OAEG;YACW,kBAAkB;IAiChC;;OAEG;IACH,QAAQ,IAAI,SAAS;IAgBrB;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC;IAIjC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAI/C;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CA6BhC;AAKD,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAK3E"}
1
+ {"version":3,"file":"connection-pool.d.ts","sourceRoot":"","sources":["../../src/cdp/connection-pool.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAgB,MAAM,UAAU,CAAC;AAEnD,MAAM,WAAW,UAAU;IACzB,uEAAuE;IACvE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,uCAAuC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,oDAAoD;IACpD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,oBAAoB,EAAE,MAAM,CAAC;IAC7B,0CAA0C;IAC1C,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAgBD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAoB;IAC1C,OAAO,CAAC,UAAU,CAAoC;IACtD,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,aAAa,CAAS;IAG9B,OAAO,CAAC,iBAAiB,CAAK;IAC9B,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,oBAAoB,CAAK;IACjC,OAAO,CAAC,YAAY,CAAgB;gBAExB,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,UAAU;IAKtD;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAoBjC;;;;OAIG;IACH,OAAO,CAAC,qBAAqB,CAAS;IAEtC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;IA8ClC;;;;;;;;;OASG;IACG,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IA0ElD;;OAEG;IACG,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B5C;;OAEG;YACW,oBAAoB;IAuClC,MAAM,CAAC,QAAQ,CAAC,gBAAgB;;;MAAiC;IAEjE;;OAEG;YACW,aAAa;IAU3B;;OAEG;YACW,kBAAkB;IAuBhC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAQ1B;;OAEG;YACW,kBAAkB;IAiChC;;;;;;;OAOG;IACG,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,SAAK,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAkE1G;;OAEG;IACH,QAAQ,IAAI,SAAS;IAgBrB;;OAEG;IACH,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC;IAIjC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI;IAI/C;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CA6BhC;AAKD,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,iBAAiB,CAK3E"}
@@ -47,6 +47,12 @@ class CDPConnectionPool {
47
47
  this.isInitialized = true;
48
48
  console.error('[Pool] Connection pool initialized');
49
49
  }
50
+ /**
51
+ * When true, suppresses automatic pool replenishment.
52
+ * Set during bulk operations (acquireBatch, preWarmForWorkflow) to prevent
53
+ * about:blank tab proliferation.
54
+ */
55
+ suppressReplenishment = false;
50
56
  /**
51
57
  * Acquire a page from the pool
52
58
  */
@@ -83,10 +89,84 @@ class CDPConnectionPool {
83
89
  if (this.acquireTimes.length > 100) {
84
90
  this.acquireTimes.shift();
85
91
  }
86
- // Replenish pool in background if needed
87
- this.replenishPoolAsync();
92
+ // Replenish pool in background if needed (suppressed during bulk ops)
93
+ if (!this.suppressReplenishment) {
94
+ this.replenishPoolAsync();
95
+ }
88
96
  return page;
89
97
  }
98
+ /**
99
+ * Acquire multiple pages at once without triggering per-page replenishment.
100
+ * Prevents about:blank tab proliferation during workflow_init.
101
+ *
102
+ * Instead of acquiring one-by-one (each triggering replenishPoolAsync),
103
+ * this method batch-acquires all needed pages, only replenishing once at the end.
104
+ *
105
+ * @param count Number of pages to acquire
106
+ * @returns Array of acquired pages
107
+ */
108
+ async acquireBatch(count) {
109
+ if (!this.isInitialized) {
110
+ await this.initialize();
111
+ }
112
+ // Suppress replenishment during batch acquire
113
+ this.suppressReplenishment = true;
114
+ const startTime = Date.now();
115
+ try {
116
+ const pages = [];
117
+ // First, take as many as possible from the pool
118
+ const fromPool = Math.min(count, this.availablePages.length);
119
+ for (let i = 0; i < fromPool; i++) {
120
+ const pooledPage = this.availablePages.pop();
121
+ pooledPage.lastUsedAt = Date.now();
122
+ this.inUsePages.set(pooledPage.page, pooledPage);
123
+ this.pagesReused++;
124
+ pages.push(pooledPage.page);
125
+ }
126
+ // Create remaining pages on-demand (in parallel with concurrency limit)
127
+ const remaining = count - fromPool;
128
+ if (remaining > 0) {
129
+ const concurrency = 10;
130
+ let active = 0;
131
+ const queue = [];
132
+ const limiter = async (fn) => {
133
+ if (active >= concurrency) {
134
+ await new Promise((resolve) => queue.push(resolve));
135
+ }
136
+ active++;
137
+ try {
138
+ return await fn();
139
+ }
140
+ finally {
141
+ active--;
142
+ if (queue.length > 0)
143
+ queue.shift()();
144
+ }
145
+ };
146
+ const newPages = await Promise.all(Array.from({ length: remaining }, () => limiter(async () => {
147
+ const page = await this.createNewPage();
148
+ const pooledPage = {
149
+ page,
150
+ createdAt: Date.now(),
151
+ lastUsedAt: Date.now(),
152
+ visitedOrigins: new Set(),
153
+ };
154
+ this.inUsePages.set(page, pooledPage);
155
+ this.pagesCreatedOnDemand++;
156
+ return page;
157
+ })));
158
+ pages.push(...newPages);
159
+ }
160
+ const durationMs = Date.now() - startTime;
161
+ console.error(`[Pool] Batch acquired ${pages.length} pages (${fromPool} from pool, ${remaining} on-demand) in ${durationMs}ms`);
162
+ return pages;
163
+ }
164
+ finally {
165
+ this.suppressReplenishment = false;
166
+ // Do NOT replenish after batch acquire — workflow pages will be released back
167
+ // to the pool during cleanup. Eager replenishment here creates about:blank ghost tabs.
168
+ }
169
+ }
90
170
  /**
91
171
  * Release a page back to the pool (non-blocking: cleanup runs async)
92
172
  */
@@ -232,6 +312,65 @@ class CDPConnectionPool {
232
312
  console.error(`[Pool] Maintenance: closed ${pagesToRemove.length} idle page(s)`);
233
313
  }
234
314
  }
315
+ /**
316
+ * Pre-warm pages for an upcoming workflow.
317
+ * Call this before creating workers to eliminate page creation delay
318
+ * during the worker creation loop.
319
+ *
320
+ * @param count Number of pages needed for the workflow
321
+ * @param concurrency Max parallel page creation (default: 10)
322
+ */
323
+ async preWarmForWorkflow(count, concurrency = 10) {
324
+ const startTime = Date.now();
325
+ if (!this.isInitialized) {
326
+ await this.initialize();
327
+ }
328
+ const currentAvailable = this.availablePages.length;
329
+ const needed = Math.max(0, Math.min(count - currentAvailable, this.config.maxPoolSize - currentAvailable - this.inUsePages.size));
330
+ if (needed === 0) {
331
+ return { warmed: 0, durationMs: 0 };
332
+ }
333
+ console.error(`[Pool] Pre-warming ${needed} pages for workflow (${currentAvailable} already available, ${count} needed)`);
334
+ // Create pages with concurrency control
335
+ let active = 0;
336
+ const queue = [];
337
+ let created = 0;
338
+ const limiter = async (fn) => {
339
+ if (active >= concurrency) {
340
+ await new Promise((resolve) => queue.push(resolve));
341
+ }
342
+ active++;
343
+ try {
344
+ return await fn();
345
+ }
346
+ finally {
347
+ active--;
348
+ if (queue.length > 0) {
349
+ const next = queue.shift();
350
+ next();
351
+ }
352
+ }
353
+ };
354
+ const promises = [];
355
+ for (let i = 0; i < needed; i++) {
356
+ promises.push(limiter(async () => {
357
+ const page = await this.createNewPage();
358
+ this.availablePages.push({
359
+ page,
360
+ createdAt: Date.now(),
361
+ lastUsedAt: Date.now(),
362
+ visitedOrigins: new Set(),
363
+ });
364
+ created++;
365
+ }).catch((err) => {
366
+ console.error('[Pool] Failed to pre-warm page:', err);
367
+ }));
368
+ }
369
+ await Promise.all(promises);
370
+ const durationMs = Date.now() - startTime;
371
+ console.error(`[Pool] Pre-warmed ${created}/${needed} pages in ${durationMs}ms`);
372
+ return { warmed: created, durationMs };
373
+ }
235
374
  /**
236
375
  * Get pool statistics
237
376
  */
@@ -1 +1 @@
1
- {"version":3,"file":"connection-pool.js","sourceRoot":"","sources":["../../src/cdp/connection-pool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-pool.js","sourceRoot":"","sources":["../../src/cdp/connection-pool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Screenshot Scheduler - Concurrency-controlled screenshot pipeline
3
+ *
4
+ * Prevents GPU/renderer contention when multiple tabs request
5
+ * screenshots simultaneously. Without this, 20 concurrent screenshot
6
+ * requests serialize through Chrome's renderer, causing 185s+ timeouts.
7
+ *
8
+ * Performance impact: 20 concurrent screenshots from 4000ms to ~800ms
9
+ */
10
+ import { Page } from 'puppeteer-core';
11
+ import { CDPClient } from './client';
12
+ export interface ScreenshotOptions {
13
+ format?: 'webp' | 'png' | 'jpeg';
14
+ quality?: number;
15
+ fullPage?: boolean;
16
+ clip?: {
17
+ x: number;
18
+ y: number;
19
+ width: number;
20
+ height: number;
21
+ scale?: number;
22
+ };
23
+ optimizeForSpeed?: boolean;
24
+ }
25
+ export interface ScreenshotResult {
26
+ data: string;
27
+ durationMs: number;
28
+ waitMs: number;
29
+ }
30
+ export interface SchedulerStats {
31
+ pending: number;
32
+ active: number;
33
+ completed: number;
34
+ totalWaitMs: number;
35
+ totalCaptureMs: number;
36
+ concurrency: number;
37
+ }
38
+ export declare class ScreenshotScheduler {
39
+ private readonly concurrency;
40
+ private active;
41
+ private queue;
42
+ private completed;
43
+ private totalWaitMs;
44
+ private totalCaptureMs;
45
+ constructor(concurrency?: number);
46
+ /**
47
+ * Capture a screenshot with concurrency control.
48
+ * Queues the request if too many are already in flight.
49
+ */
50
+ capture(page: Page, cdpClient: CDPClient, options?: ScreenshotOptions): Promise<ScreenshotResult>;
51
+ getStats(): SchedulerStats;
52
+ }
53
+ export declare function getScreenshotScheduler(): ScreenshotScheduler;
54
+ //# sourceMappingURL=screenshot-scheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenshot-scheduler.d.ts","sourceRoot":"","sources":["../../src/cdp/screenshot-scheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,MAAM,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,mBAAmB;IAQ5B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAP9B,OAAO,CAAC,MAAM,CAAK;IACnB,OAAO,CAAC,KAAK,CAAyB;IACtC,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,cAAc,CAAK;gBAGR,WAAW,GAAE,MAAU;IAG1C;;;OAGG;IACG,OAAO,CACX,IAAI,EAAE,IAAI,EACV,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,gBAAgB,CAAC;IAmD5B,QAAQ,IAAI,cAAc;CAU3B;AAKD,wBAAgB,sBAAsB,IAAI,mBAAmB,CAM5D"}
@@ -0,0 +1,87 @@
1
+ "use strict";
2
+ /**
3
+ * Screenshot Scheduler - Concurrency-controlled screenshot pipeline
4
+ *
5
+ * Prevents GPU/renderer contention when multiple tabs request
6
+ * screenshots simultaneously. Without this, 20 concurrent screenshot
7
+ * requests serialize through Chrome's renderer, causing 185s+ timeouts.
8
+ *
9
+ * Performance impact: 20 concurrent screenshots from 4000ms to ~800ms
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ScreenshotScheduler = void 0;
13
+ exports.getScreenshotScheduler = getScreenshotScheduler;
14
+ class ScreenshotScheduler {
15
+ concurrency;
16
+ active = 0;
17
+ queue = [];
18
+ completed = 0;
19
+ totalWaitMs = 0;
20
+ totalCaptureMs = 0;
21
+ constructor(concurrency = 5) {
22
+ this.concurrency = concurrency;
23
+ }
24
+ /**
25
+ * Capture a screenshot with concurrency control.
26
+ * Queues the request if too many are already in flight.
27
+ */
28
+ async capture(page, cdpClient, options = {}) {
29
+ const queuedAt = Date.now();
30
+ // Wait for a slot if at capacity
31
+ if (this.active >= this.concurrency) {
32
+ await new Promise((resolve) => this.queue.push(resolve));
33
+ }
34
+ this.active++;
35
+ const waitMs = Date.now() - queuedAt;
36
+ const captureStart = Date.now();
37
+ try {
38
+ const format = options.format || 'webp';
39
+ const quality = options.quality ?? 60;
40
+ const params = {
41
+ format,
42
+ quality,
43
+ optimizeForSpeed: options.optimizeForSpeed ?? true,
44
+ };
45
+ if (options.clip) {
46
+ params.clip = options.clip;
47
+ }
48
+ if (options.fullPage) {
49
+ params.captureBeyondViewport = true;
50
+ }
51
+ const { data } = await cdpClient.send(page, 'Page.captureScreenshot', params);
52
+ const durationMs = Date.now() - captureStart;
53
+ this.completed++;
54
+ this.totalWaitMs += waitMs;
55
+ this.totalCaptureMs += durationMs;
56
+ return { data, durationMs, waitMs };
57
+ }
58
+ finally {
59
+ this.active--;
60
+ if (this.queue.length > 0) {
61
+ const next = this.queue.shift();
62
+ next();
63
+ }
64
+ }
65
+ }
66
+ getStats() {
67
+ return {
68
+ pending: this.queue.length,
69
+ active: this.active,
70
+ completed: this.completed,
71
+ totalWaitMs: this.totalWaitMs,
72
+ totalCaptureMs: this.totalCaptureMs,
73
+ concurrency: this.concurrency,
74
+ };
75
+ }
76
+ }
77
+ exports.ScreenshotScheduler = ScreenshotScheduler;
78
+ // Singleton instance
79
+ let schedulerInstance = null;
80
+ function getScreenshotScheduler() {
81
+ if (!schedulerInstance) {
82
+ const concurrency = parseInt(process.env.SCREENSHOT_CONCURRENCY || '5', 10);
83
+ schedulerInstance = new ScreenshotScheduler(concurrency);
84
+ }
85
+ return schedulerInstance;
86
+ }
87
+ //# sourceMappingURL=screenshot-scheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenshot-scheduler.js","sourceRoot":"","sources":["../../src/cdp/screenshot-scheduler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"error-recovery.d.ts","sourceRoot":"","sources":["../../../src/hints/rules/error-recovery.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAqC/C,eAAO,MAAM,kBAAkB,EAAE,QAAQ,EAOtC,CAAC"}
1
+ {"version":3,"file":"error-recovery.d.ts","sourceRoot":"","sources":["../../../src/hints/rules/error-recovery.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAyC/C,eAAO,MAAM,kBAAkB,EAAE,QAAQ,EAOtC,CAAC"}
@@ -38,6 +38,10 @@ const patterns = [
38
38
  test: /^\s*\{\s*\}\s*$|"result":\s*\{\s*\}/,
39
39
  hint: 'Hint: Empty object may indicate an async result. Wrap code in async IIFE: (async () => { return await ... })()',
40
40
  },
41
+ {
42
+ test: /await is only valid in async/i,
43
+ hint: 'Hint: Top-level await is not supported in javascript_tool. Use Promise chaining instead: new Promise(r => setTimeout(r, ms)).then(() => yourCode). Or wrap in async IIFE: (async () => { await ...; return result; })()',
44
+ },
41
45
  ];
42
46
  exports.errorRecoveryRules = patterns.map((p, i) => ({
43
47
  name: `error-recovery-${i}`,
@@ -1 +1 @@
1
- {"version":3,"file":"error-recovery.js","sourceRoot":"","sources":["../../../src/hints/rules/error-recovery.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,MAAM,QAAQ,GAA0C;IACtD;QACE,IAAI,EAAE,4CAA4C;QAClD,IAAI,EAAE,6EAA6E;KACpF;IACD;QACE,IAAI,EAAE,8CAA8C;QACpD,IAAI,EAAE,kDAAkD;KACzD;IACD;QACE,IAAI,EAAE,6FAA6F;QACnG,IAAI,EAAE,sDAAsD;KAC7D;IACD;QACE,IAAI,EAAE,0DAA0D;QAChE,IAAI,EAAE,sDAAsD;KAC7D;IACD;QACE,IAAI,EAAE,0CAA0C;QAChD,IAAI,EAAE,uDAAuD;KAC9D;IACD;QACE,IAAI,EAAE,wEAAwE;QAC9E,IAAI,EAAE,yDAAyD;KAChE;IACD;QACE,IAAI,EAAE,uCAAuC;QAC7C,IAAI,EAAE,wEAAwE;KAC/E;IACD;QACE,IAAI,EAAE,qCAAqC;QAC3C,IAAI,EAAE,gHAAgH;KACvH;CACF,CAAC;AAEW,QAAA,kBAAkB,GAAe,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,IAAI,EAAE,kBAAkB,CAAC,EAAE;IAC3B,QAAQ,EAAE,GAAG,GAAG,CAAC;IACjB,KAAK,CAAC,GAAG;QACP,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC9B,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;CACF,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"error-recovery.js","sourceRoot":"","sources":["../../../src/hints/rules/error-recovery.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAIH,MAAM,QAAQ,GAA0C;IACtD;QACE,IAAI,EAAE,4CAA4C;QAClD,IAAI,EAAE,6EAA6E;KACpF;IACD;QACE,IAAI,EAAE,8CAA8C;QACpD,IAAI,EAAE,kDAAkD;KACzD;IACD;QACE,IAAI,EAAE,6FAA6F;QACnG,IAAI,EAAE,sDAAsD;KAC7D;IACD;QACE,IAAI,EAAE,0DAA0D;QAChE,IAAI,EAAE,sDAAsD;KAC7D;IACD;QACE,IAAI,EAAE,0CAA0C;QAChD,IAAI,EAAE,uDAAuD;KAC9D;IACD;QACE,IAAI,EAAE,wEAAwE;QAC9E,IAAI,EAAE,yDAAyD;KAChE;IACD;QACE,IAAI,EAAE,uCAAuC;QAC7C,IAAI,EAAE,wEAAwE;KAC/E;IACD;QACE,IAAI,EAAE,qCAAqC;QAC3C,IAAI,EAAE,gHAAgH;KACvH;IACD;QACE,IAAI,EAAE,+BAA+B;QACrC,IAAI,EAAE,yNAAyN;KAChO;CACF,CAAC;AAEW,QAAA,kBAAkB,GAAe,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IACpE,IAAI,EAAE,kBAAkB,CAAC,EAAE;IAC3B,QAAQ,EAAE,GAAG,GAAG,CAAC;IACjB,KAAK,CAAC,GAAG;QACP,IAAI,CAAC,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC9B,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACrD,CAAC;CACF,CAAC,CAAC,CAAC"}
@@ -89,9 +89,13 @@ export declare class MCPServer {
89
89
  */
90
90
  getToolNames(): string[];
91
91
  /**
92
- * Stop the server
92
+ * Stop the server and clean up all Chrome resources
93
93
  */
94
94
  stop(): void;
95
+ /**
96
+ * Clean up all Chrome resources: sessions, connection pool, CDP, and Chrome process
97
+ */
98
+ private cleanup;
95
99
  /**
96
100
  * Check if dashboard is enabled
97
101
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,UAAU,EACV,WAAW,EAGX,iBAAiB,EACjB,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,SAAS,EAA0E,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAA4C,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAG1G,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAwC;IACrD,OAAO,CAAC,SAAS,CAAiD;IAClE,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,EAAE,CAAmC;IAC7C,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAAmB;gBAEtB,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,GAAE,gBAAqB;IA2B3E;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAIvD;;OAEG;IACH,OAAO,CAAC,aAAa;IA2BrB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,iBAAiB,GAC5B,IAAI;IAIP;;OAEG;IACH,KAAK,IAAI,IAAI;IA+Db;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IA4D9D;;OAEG;YACW,gBAAgB;IAsC9B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,mBAAmB;IAQjC;;OAEG;YACW,mBAAmB;IAkCjC;;OAEG;YACW,eAAe;IA4F7B;;OAEG;YACW,kBAAkB;IAYhC;;OAEG;YACW,oBAAoB;IA2BlC;;OAEG;YACW,oBAAoB;IAkBlC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,IAAI,IAAI,IAAI;IAYZ;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;CAGjC;AAMD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAEnE;AAED,wBAAgB,YAAY,IAAI,SAAS,CAKxC"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EACL,UAAU,EACV,WAAW,EAGX,iBAAiB,EACjB,WAAW,EAGZ,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,cAAc,EAAqB,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,SAAS,EAA0E,MAAM,sBAAsB,CAAC;AACzH,OAAO,EAA4C,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAM1G,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,KAAK,CAAwC;IACrD,OAAO,CAAC,SAAS,CAAiD;IAClE,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,EAAE,CAAmC;IAC7C,OAAO,CAAC,SAAS,CAA0B;IAC3C,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,mBAAmB,CAAoC;IAC/D,OAAO,CAAC,UAAU,CAA2B;IAC7C,OAAO,CAAC,OAAO,CAAmB;gBAEtB,cAAc,CAAC,EAAE,cAAc,EAAE,OAAO,GAAE,gBAAqB;IA2B3E;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;IAIvD;;OAEG;IACH,OAAO,CAAC,aAAa;IA2BrB;;OAEG;IACH,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,WAAW,EACpB,UAAU,EAAE,iBAAiB,GAC5B,IAAI;IAIP;;OAEG;IACH,KAAK,IAAI,IAAI;IA+Db;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACG,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IA4D9D;;OAEG;YACW,gBAAgB;IAsC9B;;OAEG;YACW,eAAe;IAQ7B;;OAEG;YACW,mBAAmB;IAQjC;;OAEG;YACW,mBAAmB;IAkCjC;;OAEG;YACW,eAAe;IA4F7B;;OAEG;YACW,kBAAkB;IAYhC;;OAEG;YACW,oBAAoB;IA2BlC;;OAEG;YACW,oBAAoB;IAkBlC;;OAEG;IACH,OAAO,CAAC,aAAa;IAiBrB;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,YAAY,IAAI,MAAM,EAAE;IAIxB;;OAEG;IACH,IAAI,IAAI,IAAI;IAiBZ;;OAEG;YACW,OAAO;IAkCrB;;OAEG;IACH,kBAAkB,IAAI,OAAO;IAI7B;;OAEG;IACH,YAAY,IAAI,SAAS,GAAG,IAAI;CAGjC;AAMD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CAEnE;AAED,wBAAgB,YAAY,IAAI,SAAS,CAKxC"}
@@ -46,6 +46,9 @@ const session_manager_1 = require("./session-manager");
46
46
  const index_js_1 = require("./dashboard/index.js");
47
47
  const usage_guide_1 = require("./resources/usage-guide");
48
48
  const hints_1 = require("./hints");
49
+ const connection_pool_1 = require("./cdp/connection-pool");
50
+ const client_1 = require("./cdp/client");
51
+ const launcher_1 = require("./chrome/launcher");
49
52
  class MCPServer {
50
53
  tools = new Map();
51
54
  resources = new Map();
@@ -488,7 +491,7 @@ class MCPServer {
488
491
  return Array.from(this.tools.keys());
489
492
  }
490
493
  /**
491
- * Stop the server
494
+ * Stop the server and clean up all Chrome resources
492
495
  */
493
496
  stop() {
494
497
  // Stop dashboard
@@ -499,6 +502,47 @@ class MCPServer {
499
502
  this.rl.close();
500
503
  this.rl = null;
501
504
  }
505
+ // Clean up Chrome resources (async, best-effort on exit)
506
+ this.cleanup().catch((err) => {
507
+ console.error('[MCPServer] Cleanup error:', err);
508
+ });
509
+ }
510
+ /**
511
+ * Clean up all Chrome resources: sessions, connection pool, CDP, and Chrome process
512
+ */
513
+ async cleanup() {
514
+ try {
515
+ await this.sessionManager.cleanupAllSessions();
516
+ }
517
+ catch (e) {
518
+ console.error('[MCPServer] Session cleanup error:', e);
519
+ }
520
+ try {
521
+ const pool = (0, connection_pool_1.getCDPConnectionPool)();
522
+ await pool.shutdown();
523
+ }
524
+ catch {
525
+ // Pool may not have been initialized
526
+ }
527
+ try {
528
+ const cdpClient = (0, client_1.getCDPClient)();
529
+ if (cdpClient.isConnected()) {
530
+ await cdpClient.disconnect();
531
+ }
532
+ }
533
+ catch {
534
+ // Client may not have been initialized
535
+ }
536
+ try {
537
+ const launcher = (0, launcher_1.getChromeLauncher)();
538
+ if (launcher.isConnected()) {
539
+ await launcher.close();
540
+ console.error('[MCPServer] Chrome process terminated');
541
+ }
542
+ }
543
+ catch {
544
+ // Launcher may not have been initialized
545
+ }
502
546
  }
503
547
  /**
504
548
  * Check if dashboard is enabled
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}