dev3000 0.0.49 → 0.0.51

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 (36) hide show
  1. package/README.md +55 -6
  2. package/dist/cdp-monitor.d.ts.map +1 -1
  3. package/dist/cdp-monitor.js +54 -48
  4. package/dist/cdp-monitor.js.map +1 -1
  5. package/dist/cli.js +39 -33
  6. package/dist/cli.js.map +1 -1
  7. package/dist/dev-environment.d.ts +2 -0
  8. package/dist/dev-environment.d.ts.map +1 -1
  9. package/dist/dev-environment.js +212 -181
  10. package/dist/dev-environment.js.map +1 -1
  11. package/dist/index.d.ts +1 -1
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +1 -1
  14. package/dist/index.js.map +1 -1
  15. package/mcp-server/app/api/config/route.ts +7 -7
  16. package/mcp-server/app/api/logs/append/route.ts +59 -51
  17. package/mcp-server/app/api/logs/head/route.ts +22 -22
  18. package/mcp-server/app/api/logs/list/route.ts +39 -42
  19. package/mcp-server/app/api/logs/rotate/route.ts +28 -38
  20. package/mcp-server/app/api/logs/stream/route.ts +35 -35
  21. package/mcp-server/app/api/logs/tail/route.ts +22 -22
  22. package/mcp-server/app/api/mcp/[transport]/route.ts +189 -188
  23. package/mcp-server/app/api/replay/route.ts +217 -202
  24. package/mcp-server/app/layout.tsx +9 -8
  25. package/mcp-server/app/logs/LogsClient.test.ts +123 -99
  26. package/mcp-server/app/logs/LogsClient.tsx +724 -562
  27. package/mcp-server/app/logs/page.tsx +71 -72
  28. package/mcp-server/app/logs/utils.ts +99 -28
  29. package/mcp-server/app/page.tsx +10 -14
  30. package/mcp-server/app/replay/ReplayClient.tsx +120 -119
  31. package/mcp-server/app/replay/page.tsx +3 -3
  32. package/mcp-server/next.config.ts +2 -0
  33. package/mcp-server/package.json +5 -2
  34. package/mcp-server/pnpm-lock.yaml +37 -5
  35. package/mcp-server/tsconfig.json +4 -17
  36. package/package.json +16 -13
package/README.md CHANGED
@@ -9,7 +9,7 @@ pnpm install -g dev3000
9
9
  dev3000
10
10
  ```
11
11
 
12
- ![dev3000 CLI](cli.jpg)
12
+ ![dev3000 CLI](www/public/cli.gif)
13
13
 
14
14
  **You can also connect claude code to the mcp-server to have it issue commands to the browser.**
15
15
 
@@ -36,10 +36,10 @@ The tool monitors your app in a real browser and captures:
36
36
  Give Claude your log file for instant debugging:
37
37
 
38
38
  ```
39
- Read /tmp/dev3000.log
39
+ Read /tmp/d3k.log
40
40
  ```
41
41
 
42
- Logs are automatically saved with timestamps in `/var/log/dev3000/` (or temp directory) and rotated to keep the 10 most recent per project. The current session is always symlinked to `/tmp/dev3000.log` for easy access.
42
+ Logs are automatically saved with timestamps in `/var/log/dev3000/` (or temp directory) and rotated to keep the 10 most recent per project. The current session is always symlinked to `/tmp/d3k.log` for easy access.
43
43
 
44
44
  Or use the MCP server at `http://localhost:3684/api/mcp/mcp` for advanced querying:
45
45
 
@@ -48,6 +48,51 @@ Or use the MCP server at `http://localhost:3684/api/mcp/mcp` for advanced queryi
48
48
  - `get_browser_errors` - Extract browser errors by time period
49
49
  - `execute_browser_action` - Control the browser (click, navigate, screenshot, evaluate, scroll, type)
50
50
 
51
+ ### MCP Integration Notes
52
+
53
+ **Cursor Compatibility**: If registering the MCP server directly in Cursor shows "no tools or prompts", first register it with Claude, then it will work in both applications. This is a known Cursor MCP integration issue.
54
+
55
+ ## Using the Chrome Extension vs Playwright
56
+
57
+ dev3000 supports two monitoring modes:
58
+
59
+ ### Default: Playwright Browser Automation
60
+
61
+ By default, dev3000 launches a Playwright-controlled Chrome instance for comprehensive monitoring.
62
+
63
+ ### Alternative: Chrome Extension
64
+
65
+ For a lighter approach, install the dev3000 Chrome extension to monitor your existing browser session.
66
+
67
+ #### Installing the Chrome Extension
68
+
69
+ Since the extension isn't published to the Chrome Web Store, install it locally:
70
+
71
+ 1. Open Chrome and navigate to `chrome://extensions/`
72
+ 2. Enable "Developer mode" (toggle in top-right corner)
73
+ 3. Click "Load unpacked"
74
+ 4. Navigate to your dev3000 installation directory and select the `chrome-extension` folder
75
+ 5. The extension will now monitor localhost tabs automatically
76
+
77
+ #### Using with -so, --servers-only
78
+
79
+ When using the Chrome extension, start dev3000 with the `--servers-only` flag to skip Playwright:
80
+
81
+ ```bash
82
+ dev3000 --servers-only
83
+ ```
84
+
85
+ #### Comparison
86
+
87
+ | Feature | Playwright (Default) | Chrome Extension |
88
+ | ------------------- | ------------------------ | ----------------------- |
89
+ | **Setup** | Automatic | Manual install required |
90
+ | **Performance** | Higher resource usage | Lightweight |
91
+ | **Browser Control** | Full automation support | Monitoring only |
92
+ | **User Experience** | Separate browser window | Your existing browser |
93
+ | **Screenshots** | Automatic on events | Manual via extension |
94
+ | **Best For** | Automated testing, CI/CD | Development debugging |
95
+
51
96
  ## Options
52
97
 
53
98
  ```bash
@@ -56,7 +101,8 @@ dev3000 [options]
56
101
  -p, --port <port> Your app's port (default: 3000)
57
102
  --mcp-port <port> MCP server port (default: 3684)
58
103
  -s, --script <script> Package.json script to run (default: dev)
59
- --profile-dir <dir> Chrome profile directory (persists cookies/login state)
104
+ --servers-only Run servers only, skip browser launch (use with Chrome extension)
105
+ --profile-dir <dir> Chrome profile directory (default: /tmp/dev3000-chrome-profile)
60
106
  ```
61
107
 
62
108
  Examples:
@@ -65,7 +111,10 @@ Examples:
65
111
  # Custom port
66
112
  dev3000 --port 5173
67
113
 
68
- # Persistent login state
114
+ # Use with Chrome extension (no Playwright)
115
+ dev3000 --servers-only
116
+
117
+ # Custom profile directory
69
118
  dev3000 --profile-dir ./chrome-profile
70
119
  ```
71
120
 
@@ -80,7 +129,7 @@ We welcome pull requests (PRs) from the community!
80
129
  Before submitting a PR:
81
130
 
82
131
  - **Pull the latest changes** from `main`.
83
- - **Run** `scripts/test-canary.sh` to test your feature locally and verify what is already in the canary build.
132
+ - **Run** `scripts/canary.sh` to test your feature locally and verify what is already in the canary build.
84
133
  - **Tip** `dev3000 --version` to verify you're on the canary locally
85
134
  - **FYI** .husky/pre-commit.sh runs `pnpm format` to apply biome.json rules to all code
86
135
  - Please run and test the canary build locally to avoid duplicating work that may already be done.
@@ -1 +1 @@
1
- {"version":3,"file":"cdp-monitor.d.ts","sourceRoot":"","sources":["../src/cdp-monitor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAM/B,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,GAAG,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,SAAS,CAAC;IACd,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,UAAU,CAA8B;IAChD,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,aAAa,CAAgD;IACrE,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,MAAM,CAA4C;IAC1D,OAAO,CAAC,KAAK,CAAkB;IAC/B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,gBAAgB,CAA+B;gBAGrD,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,EACjD,KAAK,GAAE,OAAe;IAQxB,OAAO,CAAC,QAAQ;IAMV,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B,OAAO,CAAC,iBAAiB;YAkCX,YAAY;YAsFZ,YAAY;YA2GZ,cAAc;YAsDd,gBAAgB;IAuC9B,OAAO,CAAC,kBAAkB;IAqO1B,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,gBAAgB;IAelB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YA4ClC,wBAAwB;IA2KtC,OAAO,CAAC,6BAA6B;YAevB,cAAc;IA4BtB,kBAAkB,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IA0DnD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAuBhC"}
1
+ {"version":3,"file":"cdp-monitor.d.ts","sourceRoot":"","sources":["../src/cdp-monitor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAA;AAE9B,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,GAAG,CAAA;IACX,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,SAAS,CAAA;IACb,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,MAAM,EAAE,MAAM,CAAA;CACf;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,SAAS,CAAe;IAChC,OAAO,CAAC,aAAa,CAA+C;IACpE,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,aAAa,CAAQ;IAC7B,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,cAAc,CAAQ;IAC9B,OAAO,CAAC,eAAe,CAAI;IAC3B,OAAO,CAAC,gBAAgB,CAA8B;gBAGpD,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,EACjD,KAAK,GAAE,OAAe;IAQxB,OAAO,CAAC,QAAQ;IAMV,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAsB5B,OAAO,CAAC,iBAAiB;YAkCX,YAAY;YAoFZ,YAAY;YAuFZ,cAAc;YAsDd,gBAAgB;IAsC9B,OAAO,CAAC,kBAAkB;IAgN1B,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,gBAAgB;IAelB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YA4ClC,wBAAwB;IAyJtC,OAAO,CAAC,6BAA6B;YAevB,cAAc;IA4BtB,kBAAkB,CAAC,WAAW,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAoDnD,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAuBhC"}
@@ -1,9 +1,9 @@
1
1
  import { spawn } from "child_process";
2
- import { WebSocket } from "ws";
3
- import { writeFileSync, existsSync, mkdirSync, readFileSync } from "fs";
4
- import { join, dirname } from "path";
2
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
5
3
  import { tmpdir } from "os";
4
+ import { dirname, join } from "path";
6
5
  import { fileURLToPath } from "url";
6
+ import { WebSocket } from "ws";
7
7
  export class CDPMonitor {
8
8
  browser = null;
9
9
  connection = null;
@@ -57,9 +57,9 @@ export class CDPMonitor {
57
57
  const loadingHtmlPath = join(currentDir, "src/loading.html");
58
58
  let loadingHtml;
59
59
  try {
60
- loadingHtml = readFileSync(loadingHtmlPath, 'utf-8');
60
+ loadingHtml = readFileSync(loadingHtmlPath, "utf-8");
61
61
  }
62
- catch (error) {
62
+ catch (_error) {
63
63
  // Fallback to a simple loading page if file not found
64
64
  loadingHtml = `<!DOCTYPE html>
65
65
  <html>
@@ -82,7 +82,7 @@ export class CDPMonitor {
82
82
  "/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
83
83
  "google-chrome",
84
84
  "chrome",
85
- "chromium",
85
+ "chromium"
86
86
  ];
87
87
  this.debugLog(`Attempting to launch Chrome for CDP monitoring on port ${this.debugPort}`);
88
88
  this.debugLog(`Profile directory: ${this.profileDir}`);
@@ -99,10 +99,10 @@ export class CDPMonitor {
99
99
  `--remote-debugging-port=${this.debugPort}`,
100
100
  `--user-data-dir=${this.profileDir}`,
101
101
  "--no-first-run",
102
- this.createLoadingPage(),
102
+ this.createLoadingPage()
103
103
  ], {
104
104
  stdio: "pipe",
105
- detached: false,
105
+ detached: false
106
106
  });
107
107
  if (!this.browser) {
108
108
  this.debugLog(`Failed to spawn Chrome process for path: ${chromePath}`);
@@ -169,7 +169,7 @@ export class CDPMonitor {
169
169
  this.connection = {
170
170
  ws,
171
171
  sessionId: null,
172
- nextId: 1,
172
+ nextId: 1
173
173
  };
174
174
  resolve();
175
175
  });
@@ -210,7 +210,7 @@ export class CDPMonitor {
210
210
  throw new Error(`Failed to connect to CDP after ${maxRetries} attempts: ${error}`);
211
211
  }
212
212
  // Exponential backoff
213
- const delay = Math.min(1000 * Math.pow(2, retryCount - 1), 5000);
213
+ const delay = Math.min(1000 * 2 ** (retryCount - 1), 5000);
214
214
  this.debugLog(`Retrying CDP connection in ${delay}ms`);
215
215
  await new Promise((resolve) => setTimeout(resolve, delay));
216
216
  }
@@ -225,13 +225,13 @@ export class CDPMonitor {
225
225
  const command = {
226
226
  id,
227
227
  method,
228
- params,
228
+ params
229
229
  };
230
230
  const messageHandler = (data) => {
231
231
  try {
232
232
  const message = JSON.parse(data.toString());
233
233
  if (message.id === id) {
234
- this.connection.ws.removeListener("message", messageHandler);
234
+ this.connection?.ws.removeListener("message", messageHandler);
235
235
  if (message.error) {
236
236
  reject(new Error(message.error.message));
237
237
  }
@@ -241,14 +241,14 @@ export class CDPMonitor {
241
241
  }
242
242
  }
243
243
  catch (error) {
244
- this.connection.ws.removeListener("message", messageHandler);
244
+ this.connection?.ws.removeListener("message", messageHandler);
245
245
  reject(error);
246
246
  }
247
247
  };
248
- this.connection.ws.on("message", messageHandler);
248
+ this.connection?.ws.on("message", messageHandler);
249
249
  // Command timeout
250
250
  const timeout = setTimeout(() => {
251
- this.connection.ws.removeListener("message", messageHandler);
251
+ this.connection?.ws.removeListener("message", messageHandler);
252
252
  reject(new Error(`CDP command timeout: ${method}`));
253
253
  }, 10000);
254
254
  // Clear timeout if command succeeds/fails
@@ -262,7 +262,7 @@ export class CDPMonitor {
262
262
  clearTimeout(timeout);
263
263
  originalReject(reason);
264
264
  };
265
- this.connection.ws.send(JSON.stringify(command));
265
+ this.connection?.ws.send(JSON.stringify(command));
266
266
  });
267
267
  }
268
268
  async enableCDPDomains() {
@@ -274,14 +274,16 @@ export class CDPMonitor {
274
274
  "Performance", // Performance metrics
275
275
  "Security", // Security events
276
276
  "Log", // Browser console logs
277
- "Input", // Mouse and keyboard input events
277
+ "Input" // Mouse and keyboard input events
278
278
  ];
279
279
  for (const domain of domains) {
280
280
  try {
281
281
  this.debugLog(`Enabling CDP domain: ${domain}`);
282
282
  await this.sendCDPCommand(`${domain}.enable`);
283
283
  this.debugLog(`Successfully enabled CDP domain: ${domain}`);
284
- this.logger("browser", `[CDP] Enabled ${domain} domain`);
284
+ if (this.debug) {
285
+ this.logger("browser", `[CDP] Enabled ${domain} domain`);
286
+ }
285
287
  }
286
288
  catch (error) {
287
289
  this.debugLog(`Failed to enable CDP domain ${domain}: ${error}`);
@@ -294,7 +296,7 @@ export class CDPMonitor {
294
296
  this.debugLog("Enabling runtime for console and exception capture");
295
297
  await this.sendCDPCommand("Runtime.enable");
296
298
  await this.sendCDPCommand("Runtime.setAsyncCallStackDepth", {
297
- maxDepth: 32,
299
+ maxDepth: 32
298
300
  });
299
301
  this.debugLog("CDP domains enabled successfully");
300
302
  }
@@ -312,12 +314,17 @@ export class CDPMonitor {
312
314
  if (args.length > 0 && args[0].value?.includes("[DEV3000_INTERACTION]")) {
313
315
  const interaction = args[0].value.replace("[DEV3000_INTERACTION] ", "");
314
316
  this.logger("browser", `[INTERACTION] ${interaction}`);
317
+ // Take screenshot when scroll settles
318
+ if (interaction.startsWith("SCROLL_SETTLED")) {
319
+ this.takeScreenshot("scroll-settled");
320
+ }
315
321
  return;
316
322
  }
317
323
  // Debug: Log all console messages to see if tracking script is even running
318
- if (args.length > 0 &&
319
- args[0].value?.includes("CDP tracking initialized")) {
320
- this.logger("browser", `[DEBUG] Interaction tracking script loaded successfully`);
324
+ if (args.length > 0 && args[0].value?.includes("CDP tracking initialized")) {
325
+ if (this.debug) {
326
+ this.logger("browser", `[DEBUG] Interaction tracking script loaded successfully`);
327
+ }
321
328
  }
322
329
  // Log regular console messages with enhanced context
323
330
  const values = args
@@ -420,13 +427,13 @@ export class CDPMonitor {
420
427
  }, 200);
421
428
  });
422
429
  // Page load events for better screenshot timing
423
- this.onCDPEvent("Page.loadEventFired", async (event) => {
430
+ this.onCDPEvent("Page.loadEventFired", async (_event) => {
424
431
  this.logger("browser", "[PAGE] Load event fired");
425
432
  this.takeScreenshot("page-loaded");
426
433
  // Reinject interaction tracking on page load
427
434
  await this.setupInteractionTracking();
428
435
  });
429
- this.onCDPEvent("Page.domContentEventFired", async (event) => {
436
+ this.onCDPEvent("Page.domContentEventFired", async (_event) => {
430
437
  this.logger("browser", "[PAGE] DOM content loaded");
431
438
  // Take screenshot on DOM content loaded too for earlier capture
432
439
  this.takeScreenshot("dom-content-loaded");
@@ -434,18 +441,18 @@ export class CDPMonitor {
434
441
  await this.setupInteractionTracking();
435
442
  });
436
443
  // Network activity tracking for better screenshot timing
437
- this.onCDPEvent("Network.requestWillBeSent", (event) => {
444
+ this.onCDPEvent("Network.requestWillBeSent", (_event) => {
438
445
  this.pendingRequests++;
439
446
  if (this.networkIdleTimer) {
440
447
  clearTimeout(this.networkIdleTimer);
441
448
  this.networkIdleTimer = null;
442
449
  }
443
450
  });
444
- this.onCDPEvent("Network.loadingFinished", (event) => {
451
+ this.onCDPEvent("Network.loadingFinished", (_event) => {
445
452
  this.pendingRequests--;
446
453
  this.scheduleNetworkIdleScreenshot();
447
454
  });
448
- this.onCDPEvent("Network.loadingFailed", (event) => {
455
+ this.onCDPEvent("Network.loadingFailed", (_event) => {
449
456
  this.pendingRequests--;
450
457
  this.scheduleNetworkIdleScreenshot();
451
458
  });
@@ -483,7 +490,7 @@ export class CDPMonitor {
483
490
  method: message.method,
484
491
  params: message.params || {},
485
492
  timestamp: Date.now(),
486
- sessionId: message.sessionId,
493
+ sessionId: message.sessionId
487
494
  };
488
495
  handler(event);
489
496
  }
@@ -496,7 +503,7 @@ export class CDPMonitor {
496
503
  this.debugLog(`Navigating to http://localhost:${port}`);
497
504
  // Navigate to the app
498
505
  await this.sendCDPCommand("Page.navigate", {
499
- url: `http://localhost:${port}`,
506
+ url: `http://localhost:${port}`
500
507
  });
501
508
  this.debugLog("Navigation command sent successfully");
502
509
  // Take an immediate screenshot after navigation command
@@ -610,7 +617,7 @@ export class CDPMonitor {
610
617
  }
611
618
 
612
619
  // If this is the first scroll event or different target, reset
613
- if (scrollTimeout === null) {
620
+ if (scrollTimeout === null || scrollTarget !== target) {
614
621
  scrollStartX = currentScrollX;
615
622
  scrollStartY = currentScrollY;
616
623
  scrollTarget = target;
@@ -622,11 +629,19 @@ export class CDPMonitor {
622
629
  lastScrollX = currentScrollX;
623
630
  lastScrollY = currentScrollY;
624
631
 
625
- // Set timeout to log scroll after 150ms of no scrolling
632
+ // Set timeout to log scroll after 300ms of no scrolling (scroll settled)
626
633
  scrollTimeout = setTimeout(function() {
627
- console.log('[DEV3000_INTERACTION] SCROLL from ' + scrollStartX + ',' + scrollStartY + ' to ' + lastScrollX + ',' + lastScrollY + ' in ' + target);
634
+ // Only log if there was actual movement (threshold of 5 pixels)
635
+ let deltaX = Math.abs(lastScrollX - scrollStartX);
636
+ let deltaY = Math.abs(lastScrollY - scrollStartY);
637
+
638
+ if (deltaX > 5 || deltaY > 5) {
639
+ console.log('[DEV3000_INTERACTION] SCROLL from ' + scrollStartX + ',' + scrollStartY + ' to ' + lastScrollX + ',' + lastScrollY + ' in ' + target);
640
+ // Take screenshot after scroll settles
641
+ console.log('[DEV3000_INTERACTION] SCROLL_SETTLED at ' + lastScrollX + ',' + lastScrollY);
642
+ }
628
643
  scrollTimeout = null;
629
- }, 150);
644
+ }, 300);
630
645
  }, true); // Use capture: true to catch scroll events on all elements
631
646
  }
632
647
  } catch (err) {
@@ -645,20 +660,11 @@ export class CDPMonitor {
645
660
  this.logger("browser", `[CDP ERROR] Tracking script syntax error: ${errorMessage}`);
646
661
  throw new Error(`Invalid tracking script syntax: ${errorMessage}`);
647
662
  }
648
- // First try a simple test
649
- const simpleTest = `console.log('DEV3000_TEST: Simple script execution working!');`;
650
- const testResult = await this.sendCDPCommand("Runtime.evaluate", {
651
- expression: simpleTest,
652
- includeCommandLineAPI: false,
653
- });
654
- this.debugLog(`Simple test result: ${JSON.stringify(testResult)}`);
655
- this.logger("browser", `[DEBUG] Simple test result: ${testResult.result?.value || "undefined"}`);
656
663
  const result = await this.sendCDPCommand("Runtime.evaluate", {
657
664
  expression: trackingScript,
658
- includeCommandLineAPI: false,
665
+ includeCommandLineAPI: false
659
666
  });
660
667
  this.debugLog(`Interaction tracking script injected. Result: ${JSON.stringify(result)}`);
661
- this.logger("browser", `[DEBUG] Script injection result: ${result.result?.value || "undefined"}`);
662
668
  // Log any errors from the script injection
663
669
  if (result.exceptionDetails) {
664
670
  this.debugLog(`Script injection exception: ${JSON.stringify(result.exceptionDetails)}`);
@@ -689,7 +695,7 @@ export class CDPMonitor {
689
695
  format: "png",
690
696
  quality: 80,
691
697
  clip: undefined, // Full viewport
692
- fromSurface: true,
698
+ fromSurface: true
693
699
  });
694
700
  const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
695
701
  const filename = `${timestamp}-${event}.png`;
@@ -719,14 +725,14 @@ export class CDPMonitor {
719
725
  x: interaction.coordinates.x,
720
726
  y: interaction.coordinates.y,
721
727
  button: "left",
722
- clickCount: 1,
728
+ clickCount: 1
723
729
  });
724
730
  await this.sendCDPCommand("Input.dispatchMouseEvent", {
725
731
  type: "mouseReleased",
726
732
  x: interaction.coordinates.x,
727
733
  y: interaction.coordinates.y,
728
734
  button: "left",
729
- clickCount: 1,
735
+ clickCount: 1
730
736
  });
731
737
  break;
732
738
  case "KEYDOWN":
@@ -734,7 +740,7 @@ export class CDPMonitor {
734
740
  type: "keyDown",
735
741
  key: interaction.key,
736
742
  code: interaction.code,
737
- ...interaction.modifiers,
743
+ ...interaction.modifiers
738
744
  });
739
745
  break;
740
746
  case "SCROLL":
@@ -743,7 +749,7 @@ export class CDPMonitor {
743
749
  x: interaction.to.x,
744
750
  y: interaction.to.y,
745
751
  deltaX: interaction.to.x - interaction.from.x,
746
- deltaY: interaction.to.y - interaction.from.y,
752
+ deltaY: interaction.to.y - interaction.from.y
747
753
  });
748
754
  break;
749
755
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"cdp-monitor.js","sourceRoot":"","sources":["../src/cdp-monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cdp-monitor.js","sourceRoot":"","sources":["../src/cdp-monitor.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -1,37 +1,37 @@
1
1
  #!/usr/bin/env node
2
- import { Command } from 'commander';
3
- import chalk from 'chalk';
4
- import { tmpdir } from 'os';
5
- import { join, dirname } from 'path';
6
- import { existsSync, readFileSync } from 'fs';
7
- import { fileURLToPath } from 'url';
8
- import { startDevEnvironment, createPersistentLogFile } from './dev-environment.js';
2
+ import chalk from "chalk";
3
+ import { Command } from "commander";
4
+ import { existsSync, readFileSync } from "fs";
5
+ import { tmpdir } from "os";
6
+ import { dirname, join } from "path";
7
+ import { fileURLToPath } from "url";
8
+ import { createPersistentLogFile, startDevEnvironment } from "./dev-environment.js";
9
9
  function detectPackageManager() {
10
- if (existsSync('pnpm-lock.yaml'))
11
- return 'pnpm';
12
- if (existsSync('yarn.lock'))
13
- return 'yarn';
14
- if (existsSync('package-lock.json'))
15
- return 'npm';
16
- return 'npm'; // fallback
10
+ if (existsSync("pnpm-lock.yaml"))
11
+ return "pnpm";
12
+ if (existsSync("yarn.lock"))
13
+ return "yarn";
14
+ if (existsSync("package-lock.json"))
15
+ return "npm";
16
+ return "npm"; // fallback
17
17
  }
18
18
  // Read version from package.json
19
19
  function getVersion() {
20
20
  try {
21
21
  const currentFile = fileURLToPath(import.meta.url);
22
22
  const packageRoot = dirname(dirname(currentFile)); // Go up from dist/ to package root
23
- const packageJsonPath = join(packageRoot, 'package.json');
24
- const packageJson = JSON.parse(readFileSync(packageJsonPath, 'utf8'));
23
+ const packageJsonPath = join(packageRoot, "package.json");
24
+ const packageJson = JSON.parse(readFileSync(packageJsonPath, "utf8"));
25
25
  let version = packageJson.version;
26
26
  // Use git to detect if we're in the dev3000 source repository
27
27
  try {
28
- const { execSync } = require('child_process');
29
- const gitRemote = execSync('git remote get-url origin 2>/dev/null', {
28
+ const { execSync } = require("child_process");
29
+ const gitRemote = execSync("git remote get-url origin 2>/dev/null", {
30
30
  cwd: packageRoot,
31
- encoding: 'utf8'
31
+ encoding: "utf8"
32
32
  }).trim();
33
- if (gitRemote.includes('vercel-labs/dev3000') && !version.includes('canary')) {
34
- version += '-local';
33
+ if (gitRemote.includes("vercel-labs/dev3000") && !version.includes("canary")) {
34
+ version += "-local";
35
35
  }
36
36
  }
37
37
  catch {
@@ -39,26 +39,30 @@ function getVersion() {
39
39
  }
40
40
  return version;
41
41
  }
42
- catch (error) {
43
- return '0.0.0'; // fallback
42
+ catch (_error) {
43
+ return "0.0.0"; // fallback
44
44
  }
45
45
  }
46
46
  const program = new Command();
47
47
  program
48
- .name('dev3000')
49
- .description('AI-powered development tools with browser monitoring and MCP server')
48
+ .name("dev3000")
49
+ .description("AI-powered development tools with browser monitoring and MCP server")
50
50
  .version(getVersion());
51
51
  program
52
- .description('AI-powered development tools with browser monitoring and MCP server')
53
- .option('-p, --port <port>', 'Development server port', '3000')
54
- .option('--mcp-port <port>', 'MCP server port', '3684')
55
- .option('-s, --script <script>', 'Package.json script to run (e.g. dev, build-start)', 'dev')
56
- .option('--profile-dir <dir>', 'Chrome profile directory', join(tmpdir(), 'dev3000-chrome-profile'))
57
- .option('--debug', 'Enable debug logging to console')
52
+ .description("AI-powered development tools with browser monitoring and MCP server")
53
+ .option("-p, --port <port>", "Development server port", "3000")
54
+ .option("--mcp-port <port>", "MCP server port", "3684")
55
+ .option("-s, --script <script>", "Package.json script to run (e.g. dev, build-start)", "dev")
56
+ .option("--profile-dir <dir>", "Chrome profile directory", join(tmpdir(), "dev3000-chrome-profile"))
57
+ .option("--servers-only", "Run servers only, skip browser launch (use with Chrome extension)")
58
+ .option("--debug", "Enable debug logging to console")
58
59
  .action(async (options) => {
59
60
  // Convert script option to full command
60
61
  const packageManager = detectPackageManager();
61
62
  const serverCommand = `${packageManager} run ${options.script}`;
63
+ // Detect which command name was used (dev3000 or d3k)
64
+ const executablePath = process.argv[1];
65
+ const commandName = executablePath.endsWith("/d3k") || executablePath.includes("/d3k") ? "d3k" : "dev3000";
62
66
  try {
63
67
  // Create persistent log file and setup symlink
64
68
  const logFile = createPersistentLogFile();
@@ -66,11 +70,13 @@ program
66
70
  ...options,
67
71
  logFile,
68
72
  serverCommand,
69
- debug: options.debug
73
+ debug: options.debug,
74
+ serversOnly: options.serversOnly,
75
+ commandName
70
76
  });
71
77
  }
72
78
  catch (error) {
73
- console.error(chalk.red('❌ Failed to start development environment:'), error);
79
+ console.error(chalk.red("❌ Failed to start development environment:"), error);
74
80
  process.exit(1);
75
81
  }
76
82
  });