dev3000 0.0.44 → 0.0.45

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.
@@ -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;YA4DZ,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":"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"}
@@ -86,38 +86,59 @@ export class CDPMonitor {
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}`);
89
- let chromePath = chromeCommands[0]; // Default to macOS path
90
- this.debugLog(`Using Chrome path: ${chromePath}`);
91
- this.browser = spawn(chromePath, [
92
- `--remote-debugging-port=${this.debugPort}`,
93
- `--user-data-dir=${this.profileDir}`,
94
- "--no-first-run",
95
- this.createLoadingPage(),
96
- ], {
97
- stdio: "pipe",
98
- detached: false,
99
- });
100
- if (!this.browser) {
101
- reject(new Error("Failed to launch Chrome"));
102
- return;
103
- }
104
- this.browser.on("error", (error) => {
105
- this.debugLog(`Chrome launch error: ${error.message}`);
106
- if (!this.isShuttingDown) {
107
- reject(error);
89
+ let attemptIndex = 0;
90
+ const tryNextChrome = () => {
91
+ if (attemptIndex >= chromeCommands.length) {
92
+ reject(new Error("Failed to launch Chrome: all browser paths exhausted"));
93
+ return;
108
94
  }
109
- });
110
- this.browser.stderr?.on("data", (data) => {
111
- this.debugLog(`Chrome stderr: ${data.toString().trim()}`);
112
- });
113
- this.browser.stdout?.on("data", (data) => {
114
- this.debugLog(`Chrome stdout: ${data.toString().trim()}`);
115
- });
116
- // Give Chrome time to start up
117
- setTimeout(() => {
118
- this.debugLog("Chrome startup timeout reached, assuming success");
119
- resolve();
120
- }, 3000);
95
+ const chromePath = chromeCommands[attemptIndex];
96
+ this.debugLog(`Trying Chrome path [${attemptIndex}]: ${chromePath}`);
97
+ attemptIndex++;
98
+ this.browser = spawn(chromePath, [
99
+ `--remote-debugging-port=${this.debugPort}`,
100
+ `--user-data-dir=${this.profileDir}`,
101
+ "--no-first-run",
102
+ this.createLoadingPage(),
103
+ ], {
104
+ stdio: "pipe",
105
+ detached: false,
106
+ });
107
+ if (!this.browser) {
108
+ this.debugLog(`Failed to spawn Chrome process for path: ${chromePath}`);
109
+ setTimeout(tryNextChrome, 100);
110
+ return;
111
+ }
112
+ let processExited = false;
113
+ this.browser.on("error", (error) => {
114
+ this.debugLog(`Chrome launch error for ${chromePath}: ${error.message}`);
115
+ if (!this.isShuttingDown && !processExited) {
116
+ processExited = true;
117
+ setTimeout(tryNextChrome, 100);
118
+ }
119
+ });
120
+ this.browser.on("exit", (code, signal) => {
121
+ if (!this.isShuttingDown && !processExited && code !== 0) {
122
+ this.debugLog(`Chrome exited early for ${chromePath} with code ${code}, signal ${signal}`);
123
+ processExited = true;
124
+ setTimeout(tryNextChrome, 100);
125
+ }
126
+ });
127
+ this.browser.stderr?.on("data", (data) => {
128
+ this.debugLog(`Chrome stderr: ${data.toString().trim()}`);
129
+ });
130
+ this.browser.stdout?.on("data", (data) => {
131
+ this.debugLog(`Chrome stdout: ${data.toString().trim()}`);
132
+ });
133
+ // Give Chrome time to start up
134
+ setTimeout(() => {
135
+ if (!processExited) {
136
+ this.debugLog(`Chrome successfully started with path: ${chromePath}`);
137
+ resolve();
138
+ }
139
+ }, 3000);
140
+ };
141
+ tryNextChrome();
121
142
  });
122
143
  }
123
144
  async connectToCDP() {
@@ -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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"}
@@ -1,6 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { useState, useEffect, useRef, useMemo } from 'react';
4
+ import { useRouter, useSearchParams } from 'next/navigation';
4
5
  import { LogEntry, LogsApiResponse, ConfigApiResponse, LogFile, LogListResponse } from '@/types';
5
6
 
6
7
  // Hook for dark mode with system preference detection
@@ -428,19 +429,27 @@ function LogEntryComponent({ entry }: { entry: LogEntry }) {
428
429
 
429
430
  interface LogsClientProps {
430
431
  version: string;
432
+ initialData?: {
433
+ logs: LogEntry[];
434
+ logFiles: any[];
435
+ currentLogFile: string;
436
+ mode: 'head' | 'tail';
437
+ };
431
438
  }
432
439
 
433
- export default function LogsClient({ version }: LogsClientProps) {
440
+ export default function LogsClient({ version, initialData }: LogsClientProps) {
441
+ const router = useRouter();
442
+ const searchParams = useSearchParams();
434
443
  const [darkMode, setDarkMode] = useDarkMode();
435
- const [logs, setLogs] = useState<LogEntry[]>([]);
436
- const [mode, setMode] = useState<'head' | 'tail'>('tail');
444
+ const [logs, setLogs] = useState<LogEntry[]>(initialData?.logs || []);
445
+ const [mode, setMode] = useState<'head' | 'tail'>(initialData?.mode || 'tail');
437
446
  const [isAtBottom, setIsAtBottom] = useState(true);
438
447
  const [isLoadingNew, setIsLoadingNew] = useState(false);
439
- const [isInitialLoading, setIsInitialLoading] = useState(true);
440
- const [lastLogCount, setLastLogCount] = useState(0);
448
+ const [isInitialLoading, setIsInitialLoading] = useState(!initialData);
449
+ const [lastLogCount, setLastLogCount] = useState(initialData?.logs.length || 0);
441
450
  const [lastFetched, setLastFetched] = useState<Date | null>(null);
442
- const [availableLogs, setAvailableLogs] = useState<LogFile[]>([]);
443
- const [currentLogFile, setCurrentLogFile] = useState<string>('');
451
+ const [availableLogs, setAvailableLogs] = useState<LogFile[]>(initialData?.logFiles || []);
452
+ const [currentLogFile, setCurrentLogFile] = useState<string>(initialData?.currentLogFile || '');
444
453
  const [projectName, setProjectName] = useState<string>('');
445
454
  const [showLogSelector, setShowLogSelector] = useState(false);
446
455
  const [isReplaying, setIsReplaying] = useState(false);
@@ -569,7 +578,19 @@ export default function LogsClient({ version }: LogsClientProps) {
569
578
  };
570
579
 
571
580
  useEffect(() => {
572
- loadInitialLogs();
581
+ // Only load initial logs if we don't have initial data (client-side fallback)
582
+ if (!initialData) {
583
+ loadInitialLogs();
584
+ } else {
585
+ // We have initial data, just start polling for updates
586
+ setIsInitialLoading(false);
587
+ if (mode === 'tail' && isAtBottom) {
588
+ // Set up polling timer for new logs
589
+ pollIntervalRef.current = setInterval(() => {
590
+ pollForNewLogs();
591
+ }, 2000);
592
+ }
593
+ }
573
594
  }, [mode]);
574
595
 
575
596
  useEffect(() => {
@@ -788,8 +809,8 @@ export default function LogsClient({ version }: LogsClientProps) {
788
809
  <button
789
810
  key={logFile.path}
790
811
  onClick={() => {
791
- // TODO: Implement log switching
792
812
  setShowLogSelector(false);
813
+ router.push(`/logs?file=${encodeURIComponent(logFile.name)}&mode=${mode}`);
793
814
  }}
794
815
  className={`w-full text-left px-3 py-2 text-sm hover:bg-gray-50 flex items-center justify-between ${
795
816
  logFile.isCurrent ? 'bg-blue-50 text-blue-900' : 'text-gray-700'
@@ -964,9 +985,10 @@ export default function LogsClient({ version }: LogsClientProps) {
964
985
  <div className="flex items-center bg-gray-100 rounded-md p-1">
965
986
  <button
966
987
  onClick={() => {
967
- setMode('head');
968
- // Scroll to top when switching to head mode
969
- containerRef.current?.scrollTo({ top: 0, behavior: 'smooth' });
988
+ const currentFile = searchParams.get('file');
989
+ if (currentFile) {
990
+ router.push(`/logs?file=${encodeURIComponent(currentFile)}&mode=head`);
991
+ }
970
992
  }}
971
993
  className={`px-2 sm:px-3 py-1 rounded text-xs sm:text-sm font-medium transition-colors whitespace-nowrap ${
972
994
  mode === 'head'
@@ -977,7 +999,12 @@ export default function LogsClient({ version }: LogsClientProps) {
977
999
  Head
978
1000
  </button>
979
1001
  <button
980
- onClick={() => setMode('tail')}
1002
+ onClick={() => {
1003
+ const currentFile = searchParams.get('file');
1004
+ if (currentFile) {
1005
+ router.push(`/logs?file=${encodeURIComponent(currentFile)}&mode=tail`);
1006
+ }
1007
+ }}
981
1008
  className={`px-2 sm:px-3 py-1 rounded text-xs sm:text-sm font-medium transition-colors whitespace-nowrap ${
982
1009
  mode === 'tail'
983
1010
  ? 'bg-white text-gray-900 shadow-sm'
@@ -1,7 +1,128 @@
1
- import LogsClient from './LogsClient';
1
+ import LogsClient, { parseLogEntries } from './LogsClient';
2
+ import { redirect } from 'next/navigation';
3
+ import { readFileSync, existsSync, readdirSync, statSync } from 'fs';
4
+ import { join, dirname, basename } from 'path';
2
5
 
3
- export default function LogsPage() {
6
+ interface PageProps {
7
+ searchParams: { file?: string; mode?: 'head' | 'tail' };
8
+ }
9
+
10
+ async function getLogFiles() {
11
+ try {
12
+ const currentLogPath = process.env.LOG_FILE_PATH || '/tmp/dev3000.log';
13
+
14
+ if (!existsSync(currentLogPath)) {
15
+ return { files: [], currentFile: '', projectName: 'unknown' };
16
+ }
17
+
18
+ const logDir = dirname(currentLogPath);
19
+ const currentLogName = basename(currentLogPath);
20
+
21
+ // Extract project name from current log filename
22
+ const projectMatch = currentLogName.match(/^dev3000-(.+?)-\d{4}-\d{2}-\d{2}T/);
23
+ const projectName = projectMatch ? projectMatch[1] : 'unknown';
24
+
25
+ const dirContents = readdirSync(logDir);
26
+ const logFiles = dirContents
27
+ .filter(file =>
28
+ file.startsWith(`dev3000-${projectName}-`) &&
29
+ file.endsWith('.log')
30
+ )
31
+ .map(file => {
32
+ const filePath = join(logDir, file);
33
+ const stats = statSync(filePath);
34
+
35
+ const timestampMatch = file.match(/(\d{4}-\d{2}-\d{2}T[\d-]+Z)/);
36
+ const timestamp = timestampMatch ? timestampMatch[1].replace(/-/g, ':') : '';
37
+
38
+ return {
39
+ name: file,
40
+ path: filePath,
41
+ timestamp,
42
+ size: stats.size,
43
+ mtime: stats.mtime,
44
+ isCurrent: file === currentLogName
45
+ };
46
+ })
47
+ .sort((a, b) => b.mtime.getTime() - a.mtime.getTime());
48
+
49
+ return {
50
+ files: logFiles,
51
+ currentFile: currentLogPath,
52
+ projectName
53
+ };
54
+ } catch (error) {
55
+ return { files: [], currentFile: '', projectName: 'unknown' };
56
+ }
57
+ }
58
+
59
+ async function getLogData(logPath: string, mode: 'head' | 'tail' = 'tail', lines: number = 100) {
60
+ try {
61
+ if (!existsSync(logPath)) {
62
+ return { logs: '', total: 0 };
63
+ }
64
+
65
+ const logContent = readFileSync(logPath, 'utf-8');
66
+ const allLines = logContent.split('\n').filter(line => line.trim());
67
+
68
+ const selectedLines = mode === 'head'
69
+ ? allLines.slice(0, lines)
70
+ : allLines.slice(-lines);
71
+
72
+ return {
73
+ logs: selectedLines.join('\n'),
74
+ total: allLines.length
75
+ };
76
+ } catch (error) {
77
+ return { logs: '', total: 0 };
78
+ }
79
+ }
80
+
81
+ export default async function LogsPage({ searchParams }: PageProps) {
4
82
  const version = process.env.DEV3000_VERSION || '0.0.0';
5
83
 
6
- return <LogsClient version={version} />;
84
+ // Get available log files
85
+ const { files, currentFile } = await getLogFiles();
86
+
87
+ // If no file specified and we have files, redirect to latest
88
+ if (!searchParams.file && files.length > 0) {
89
+ const latestFile = files[0].name;
90
+ redirect(`/logs?file=${encodeURIComponent(latestFile)}`);
91
+ }
92
+
93
+ // If no file specified and no files available, render with empty data
94
+ if (!searchParams.file) {
95
+ return (
96
+ <LogsClient
97
+ version={version}
98
+ initialData={{
99
+ logs: [],
100
+ logFiles: [],
101
+ currentLogFile: '',
102
+ mode: 'tail'
103
+ }}
104
+ />
105
+ );
106
+ }
107
+
108
+ // Find the selected log file
109
+ const selectedFile = files.find(f => f.name === searchParams.file);
110
+ const logPath = selectedFile?.path || currentFile;
111
+ const mode = (searchParams.mode as 'head' | 'tail') || 'tail';
112
+
113
+ // Get initial log data server-side
114
+ const logData = await getLogData(logPath, mode);
115
+ const parsedLogs = parseLogEntries(logData.logs);
116
+
117
+ return (
118
+ <LogsClient
119
+ version={version}
120
+ initialData={{
121
+ logs: parsedLogs,
122
+ logFiles: files,
123
+ currentLogFile: logPath,
124
+ mode
125
+ }}
126
+ />
127
+ );
7
128
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dev3000",
3
- "version": "0.0.44",
3
+ "version": "0.0.45",
4
4
  "description": "AI-powered development tools with browser monitoring and MCP server integration",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",