dev3000 0.0.66 → 0.0.68

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 (208) hide show
  1. package/README.md +56 -7
  2. package/dist/cdp-monitor.d.ts +4 -1
  3. package/dist/cdp-monitor.d.ts.map +1 -1
  4. package/dist/cdp-monitor.js +39 -7
  5. package/dist/cdp-monitor.js.map +1 -1
  6. package/dist/cli.d.ts +1 -1
  7. package/dist/cli.js +12 -7
  8. package/dist/cli.js.map +1 -1
  9. package/dist/dev-environment.d.ts +2 -0
  10. package/dist/dev-environment.d.ts.map +1 -1
  11. package/dist/dev-environment.js +174 -42
  12. package/dist/dev-environment.js.map +1 -1
  13. package/dist/services/parsers/log-parsers/base.d.ts +1 -1
  14. package/dist/services/parsers/log-parsers/base.d.ts.map +1 -1
  15. package/dist/src/tui-interface-impl.tsx +163 -48
  16. package/dist/tui-interface-impl.d.ts.map +1 -1
  17. package/dist/tui-interface-impl.js +72 -14
  18. package/dist/tui-interface-impl.js.map +1 -1
  19. package/dist/utils/project-name.d.ts +18 -0
  20. package/dist/utils/project-name.d.ts.map +1 -0
  21. package/dist/utils/project-name.js +114 -0
  22. package/dist/utils/project-name.js.map +1 -0
  23. package/dist/utils/timestamp.d.ts +8 -0
  24. package/dist/utils/timestamp.d.ts.map +1 -0
  25. package/dist/utils/timestamp.js +18 -0
  26. package/dist/utils/timestamp.js.map +1 -0
  27. package/mcp-server/.next/BUILD_ID +1 -1
  28. package/mcp-server/.next/app-build-manifest.json +8 -6
  29. package/mcp-server/.next/build-manifest.json +2 -2
  30. package/mcp-server/.next/fallback-build-manifest.json +2 -2
  31. package/mcp-server/.next/next-minimal-server.js.nft.json +1 -1
  32. package/mcp-server/.next/next-server.js.nft.json +1 -1
  33. package/mcp-server/.next/prerender-manifest.json +10 -10
  34. package/mcp-server/.next/required-server-files.json +1 -0
  35. package/mcp-server/.next/server/app/_global-error/page.js.nft.json +1 -1
  36. package/mcp-server/.next/server/app/_global-error.html +2 -2
  37. package/mcp-server/.next/server/app/_global-error.rsc +1 -1
  38. package/mcp-server/.next/server/app/_not-found/page/app-build-manifest.json +1 -1
  39. package/mcp-server/.next/server/app/_not-found/page.js.nft.json +1 -1
  40. package/mcp-server/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  41. package/mcp-server/.next/server/app/_not-found.html +1 -1
  42. package/mcp-server/.next/server/app/_not-found.rsc +2 -2
  43. package/mcp-server/.next/server/app/api/logs/append/route.js.nft.json +1 -1
  44. package/mcp-server/.next/server/app/api/logs/head/route.js.nft.json +1 -1
  45. package/mcp-server/.next/server/app/api/logs/list/route.js.nft.json +1 -1
  46. package/mcp-server/.next/server/app/api/logs/rotate/route.js.nft.json +1 -1
  47. package/mcp-server/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  48. package/mcp-server/.next/server/app/api/logs/tail/route.js.nft.json +1 -1
  49. package/mcp-server/.next/server/app/api/screenshots/[filename]/route.js.nft.json +1 -1
  50. package/mcp-server/.next/server/app/api/tools/route.js.nft.json +1 -1
  51. package/mcp-server/.next/server/app/index.html +1 -1
  52. package/mcp-server/.next/server/app/index.rsc +3 -3
  53. package/mcp-server/.next/server/app/logs/page/app-build-manifest.json +4 -3
  54. package/mcp-server/.next/server/app/logs/page.js.nft.json +1 -1
  55. package/mcp-server/.next/server/app/logs/page_client-reference-manifest.js +1 -1
  56. package/mcp-server/.next/server/app/mcp/route.js.nft.json +1 -1
  57. package/mcp-server/.next/server/app/page/app-build-manifest.json +3 -2
  58. package/mcp-server/.next/server/app/page.js.nft.json +1 -1
  59. package/mcp-server/.next/server/app/page_client-reference-manifest.js +1 -1
  60. package/mcp-server/.next/server/chunks/ssr/{node_modules__pnpm_4f58b96e._.js → _188bfe33._.js} +2 -2
  61. package/mcp-server/.next/server/chunks/ssr/_188bfe33._.js.map +1 -0
  62. package/mcp-server/.next/server/chunks/ssr/_9d670a6b._.js +2 -2
  63. package/mcp-server/.next/server/chunks/ssr/_9d670a6b._.js.map +1 -1
  64. package/mcp-server/.next/server/chunks/ssr/_d858c4cd._.js +1 -1
  65. package/mcp-server/.next/server/chunks/ssr/_d858c4cd._.js.map +1 -1
  66. package/mcp-server/.next/server/chunks/ssr/_dae9c1d5._.js +1 -1
  67. package/mcp-server/.next/server/chunks/ssr/_dae9c1d5._.js.map +1 -1
  68. package/mcp-server/.next/server/chunks/ssr/{node_modules__pnpm_87fb6266._.js → _f03e80a8._.js} +2 -2
  69. package/mcp-server/.next/server/chunks/ssr/_f03e80a8._.js.map +1 -0
  70. package/mcp-server/.next/server/chunks/ssr/mcp-server_app_layout_tsx_afa41767._.js +1 -1
  71. package/mcp-server/.next/server/chunks/ssr/mcp-server_app_layout_tsx_afa41767._.js.map +1 -1
  72. package/mcp-server/.next/server/server-reference-manifest.js +1 -1
  73. package/mcp-server/.next/server/server-reference-manifest.json +1 -1
  74. package/mcp-server/.next/static/chunks/5a5edc75ee7e7de4.js +1 -0
  75. package/mcp-server/.next/static/chunks/65b18bf1ede9811a.css +1 -0
  76. package/mcp-server/.next/static/chunks/90585d882461b546.js +1 -0
  77. package/mcp-server/.next/static/chunks/c5f8464bc8083ee7.js +1 -0
  78. package/mcp-server/app/api/screenshots/[filename]/route.ts +15 -9
  79. package/mcp-server/app/api/tools/route.ts +22 -5
  80. package/mcp-server/app/layout.tsx +4 -2
  81. package/mcp-server/app/logs/LogsClient.infinite-loop.test.tsx +127 -0
  82. package/mcp-server/app/logs/LogsClient.tsx +318 -201
  83. package/mcp-server/app/logs/page.tsx +19 -3
  84. package/mcp-server/app/logs/utils.ts +15 -3
  85. package/mcp-server/app/mcp/route.ts +75 -509
  86. package/mcp-server/app/mcp/tools.ts +747 -0
  87. package/mcp-server/app/page.tsx +244 -169
  88. package/mcp-server/next.config.ts +1 -1
  89. package/mcp-server/package.json +14 -6
  90. package/mcp-server/public/favicon-16.svg +4 -0
  91. package/mcp-server/public/favicon-180.png +0 -0
  92. package/mcp-server/public/favicon-64.svg +4 -0
  93. package/mcp-server/public/favicon-preview.html +67 -0
  94. package/mcp-server/public/favicon.ico +0 -0
  95. package/mcp-server/public/favicon.svg +4 -0
  96. package/mcp-server/public/screenshots/test.txt +1 -0
  97. package/mcp-server/start-production.js +60 -0
  98. package/package.json +28 -15
  99. package/src/tui-interface-impl.tsx +163 -48
  100. package/mcp-server/.next/build/chunks/[root-of-the-server]__25374c4f._.js +0 -496
  101. package/mcp-server/.next/build/chunks/[root-of-the-server]__25374c4f._.js.map +0 -11
  102. package/mcp-server/.next/build/chunks/[root-of-the-server]__4718a9dd._.js +0 -408
  103. package/mcp-server/.next/build/chunks/[root-of-the-server]__4718a9dd._.js.map +0 -7
  104. package/mcp-server/.next/build/chunks/[root-of-the-server]__c438ef56._.js +0 -205
  105. package/mcp-server/.next/build/chunks/[root-of-the-server]__c438ef56._.js.map +0 -8
  106. package/mcp-server/.next/build/chunks/[root-of-the-server]__c7ae8543._.js +0 -496
  107. package/mcp-server/.next/build/chunks/[root-of-the-server]__c7ae8543._.js.map +0 -11
  108. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_d723d216._.js +0 -13
  109. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_postcss_ts_d723d216._.js.map +0 -5
  110. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_webpack-loaders_ts_5a40237e._.js +0 -12
  111. package/mcp-server/.next/build/chunks/[turbopack-node]_transforms_webpack-loaders_ts_5a40237e._.js.map +0 -5
  112. package/mcp-server/.next/build/chunks/[turbopack]_runtime.js +0 -770
  113. package/mcp-server/.next/build/chunks/[turbopack]_runtime.js.map +0 -10
  114. package/mcp-server/.next/build/chunks/node_modules__pnpm_806d01c0._.js +0 -6759
  115. package/mcp-server/.next/build/chunks/node_modules__pnpm_806d01c0._.js.map +0 -47
  116. package/mcp-server/.next/cache/.previewinfo +0 -1
  117. package/mcp-server/.next/cache/.rscinfo +0 -1
  118. package/mcp-server/.next/cache/.tsbuildinfo +0 -1
  119. package/mcp-server/.next/cache/next-devtools-config.json +0 -1
  120. package/mcp-server/.next/cache/webpack/client-development/0.pack.gz +0 -0
  121. package/mcp-server/.next/cache/webpack/client-development/1.pack.gz +0 -0
  122. package/mcp-server/.next/cache/webpack/client-development/2.pack.gz +0 -0
  123. package/mcp-server/.next/cache/webpack/client-development/3.pack.gz +0 -0
  124. package/mcp-server/.next/cache/webpack/client-development/4.pack.gz +0 -0
  125. package/mcp-server/.next/cache/webpack/client-development/index.pack.gz +0 -0
  126. package/mcp-server/.next/cache/webpack/client-development/index.pack.gz.old +0 -0
  127. package/mcp-server/.next/cache/webpack/server-development/0.pack.gz +0 -0
  128. package/mcp-server/.next/cache/webpack/server-development/1.pack.gz +0 -0
  129. package/mcp-server/.next/cache/webpack/server-development/2.pack.gz +0 -0
  130. package/mcp-server/.next/cache/webpack/server-development/3.pack.gz +0 -0
  131. package/mcp-server/.next/cache/webpack/server-development/4.pack.gz +0 -0
  132. package/mcp-server/.next/cache/webpack/server-development/5.pack.gz +0 -0
  133. package/mcp-server/.next/cache/webpack/server-development/index.pack.gz +0 -0
  134. package/mcp-server/.next/cache/webpack/server-development/index.pack.gz.old +0 -0
  135. package/mcp-server/.next/diagnostics/build-diagnostics.json +0 -6
  136. package/mcp-server/.next/diagnostics/framework.json +0 -1
  137. package/mcp-server/.next/server/chunks/0916f_next_ab257ac1._.js +0 -17
  138. package/mcp-server/.next/server/chunks/0916f_next_ab257ac1._.js.map +0 -1
  139. package/mcp-server/.next/server/chunks/250ae__next-internal_server_app_api_screenshots_[filename]_route_actions_4f8d6e37.js +0 -3
  140. package/mcp-server/.next/server/chunks/250ae__next-internal_server_app_api_screenshots_[filename]_route_actions_4f8d6e37.js.map +0 -1
  141. package/mcp-server/.next/server/chunks/[root-of-the-server]__1b561deb._.js +0 -3
  142. package/mcp-server/.next/server/chunks/[root-of-the-server]__1b561deb._.js.map +0 -1
  143. package/mcp-server/.next/server/chunks/[root-of-the-server]__38e8baae._.js +0 -22
  144. package/mcp-server/.next/server/chunks/[root-of-the-server]__38e8baae._.js.map +0 -1
  145. package/mcp-server/.next/server/chunks/[root-of-the-server]__47380b6c._.js +0 -7
  146. package/mcp-server/.next/server/chunks/[root-of-the-server]__47380b6c._.js.map +0 -1
  147. package/mcp-server/.next/server/chunks/[root-of-the-server]__674284d7._.js +0 -3
  148. package/mcp-server/.next/server/chunks/[root-of-the-server]__674284d7._.js.map +0 -1
  149. package/mcp-server/.next/server/chunks/[root-of-the-server]__6a89b7dc._.js +0 -3
  150. package/mcp-server/.next/server/chunks/[root-of-the-server]__6a89b7dc._.js.map +0 -1
  151. package/mcp-server/.next/server/chunks/[root-of-the-server]__729bfe09._.js +0 -11
  152. package/mcp-server/.next/server/chunks/[root-of-the-server]__729bfe09._.js.map +0 -1
  153. package/mcp-server/.next/server/chunks/[root-of-the-server]__a433711a._.js +0 -3
  154. package/mcp-server/.next/server/chunks/[root-of-the-server]__a433711a._.js.map +0 -1
  155. package/mcp-server/.next/server/chunks/[root-of-the-server]__a58600d8._.js +0 -3
  156. package/mcp-server/.next/server/chunks/[root-of-the-server]__a58600d8._.js.map +0 -1
  157. package/mcp-server/.next/server/chunks/[root-of-the-server]__bc43993b._.js +0 -3
  158. package/mcp-server/.next/server/chunks/[root-of-the-server]__bc43993b._.js.map +0 -1
  159. package/mcp-server/.next/server/chunks/[root-of-the-server]__c464573d._.js +0 -3
  160. package/mcp-server/.next/server/chunks/[root-of-the-server]__c464573d._.js.map +0 -1
  161. package/mcp-server/.next/server/chunks/[root-of-the-server]__e6d29491._.js +0 -4
  162. package/mcp-server/.next/server/chunks/[root-of-the-server]__e6d29491._.js.map +0 -1
  163. package/mcp-server/.next/server/chunks/[turbopack]_runtime.js +0 -770
  164. package/mcp-server/.next/server/chunks/[turbopack]_runtime.js.map +0 -10
  165. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_append_route_actions_bc66060f.js +0 -3
  166. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_append_route_actions_bc66060f.js.map +0 -1
  167. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_head_route_actions_1152480c.js +0 -3
  168. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_head_route_actions_1152480c.js.map +0 -1
  169. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_list_route_actions_b9e24400.js +0 -3
  170. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_list_route_actions_b9e24400.js.map +0 -1
  171. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_rotate_route_actions_76075d08.js +0 -3
  172. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_rotate_route_actions_76075d08.js.map +0 -1
  173. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_stream_route_actions_16e5c553.js +0 -3
  174. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_stream_route_actions_16e5c553.js.map +0 -1
  175. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_tail_route_actions_55440150.js +0 -3
  176. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_logs_tail_route_actions_55440150.js.map +0 -1
  177. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_tools_route_actions_007f3c7c.js +0 -3
  178. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_api_tools_route_actions_007f3c7c.js.map +0 -1
  179. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_mcp_route_actions_7f7b5be4.js +0 -3
  180. package/mcp-server/.next/server/chunks/mcp-server__next-internal_server_app_mcp_route_actions_7f7b5be4.js.map +0 -1
  181. package/mcp-server/.next/server/chunks/ssr/node_modules__pnpm_4f58b96e._.js.map +0 -1
  182. package/mcp-server/.next/server/chunks/ssr/node_modules__pnpm_87fb6266._.js.map +0 -1
  183. package/mcp-server/.next/server/pages/404.html +0 -1
  184. package/mcp-server/.next/server/pages/500.html +0 -2
  185. package/mcp-server/.next/server/pages/_app/build-manifest.json +0 -9
  186. package/mcp-server/.next/server/pages/_app/client-build-manifest.json +0 -1
  187. package/mcp-server/.next/server/pages/_app/next-font-manifest.json +0 -6
  188. package/mcp-server/.next/server/pages/_app/pages-manifest.json +0 -1
  189. package/mcp-server/.next/server/pages/_app/react-loadable-manifest.json +0 -1
  190. package/mcp-server/.next/server/pages/_document/next-font-manifest.json +0 -6
  191. package/mcp-server/.next/server/pages/_document/pages-manifest.json +0 -1
  192. package/mcp-server/.next/server/pages/_document/react-loadable-manifest.json +0 -1
  193. package/mcp-server/.next/server/pages/_error/build-manifest.json +0 -9
  194. package/mcp-server/.next/server/pages/_error/client-build-manifest.json +0 -1
  195. package/mcp-server/.next/server/pages/_error/next-font-manifest.json +0 -6
  196. package/mcp-server/.next/server/pages/_error/pages-manifest.json +0 -1
  197. package/mcp-server/.next/server/pages/_error/react-loadable-manifest.json +0 -1
  198. package/mcp-server/.next/static/chunks/11f1b53bdf7a9af0.js +0 -1
  199. package/mcp-server/.next/static/chunks/3d4ea64f6384f2c6.js +0 -1
  200. package/mcp-server/.next/static/chunks/50335dad5c51aab8.js +0 -1
  201. package/mcp-server/.next/static/chunks/bdd0789390bc312f.css +0 -1
  202. package/mcp-server/.next/trace +0 -1
  203. package/mcp-server/.next/turbopack +0 -0
  204. package/mcp-server/.next/types/routes.d.ts +0 -82
  205. package/mcp-server/.next/types/validator.ts +0 -160
  206. /package/mcp-server/.next/static/{mZfouQw6OHfahPQayuVeY → 9VUbGT0H5KtrSKNmmAF__}/_buildManifest.js +0 -0
  207. /package/mcp-server/.next/static/{mZfouQw6OHfahPQayuVeY → 9VUbGT0H5KtrSKNmmAF__}/_clientMiddlewareManifest.json +0 -0
  208. /package/mcp-server/.next/static/{mZfouQw6OHfahPQayuVeY → 9VUbGT0H5KtrSKNmmAF__}/_ssgManifest.js +0 -0
@@ -1,19 +1,23 @@
1
1
  import chalk from "chalk";
2
2
  import { spawn } from "child_process";
3
- import { appendFileSync, copyFileSync, cpSync, existsSync, lstatSync, mkdirSync, readdirSync, readFileSync, statSync, unlinkSync, writeFileSync } from "fs";
3
+ import { appendFileSync, copyFileSync, cpSync, existsSync, lstatSync, mkdirSync, readdirSync, readFileSync, realpathSync, statSync, unlinkSync, writeFileSync } from "fs";
4
4
  import ora from "ora";
5
5
  import { homedir, tmpdir } from "os";
6
- import { basename, dirname, join } from "path";
6
+ import { dirname, join } from "path";
7
7
  import { fileURLToPath } from "url";
8
8
  import { CDPMonitor } from "./cdp-monitor.js";
9
9
  import { NextJsErrorDetector, OutputProcessor, StandardLogParser } from "./services/parsers/index.js";
10
10
  import { DevTUI } from "./tui-interface.js";
11
+ import { getProjectDisplayName, getProjectName } from "./utils/project-name.js";
12
+ import { formatTimestamp } from "./utils/timestamp.js";
11
13
  class Logger {
12
14
  logFile;
13
15
  tail;
14
- constructor(logFile, tail = false) {
16
+ dateTimeFormat;
17
+ constructor(logFile, tail = false, dateTimeFormat = "local") {
15
18
  this.logFile = logFile;
16
19
  this.tail = tail;
20
+ this.dateTimeFormat = dateTimeFormat;
17
21
  // Ensure directory exists
18
22
  const logDir = dirname(logFile);
19
23
  if (!existsSync(logDir)) {
@@ -23,7 +27,7 @@ class Logger {
23
27
  writeFileSync(this.logFile, "");
24
28
  }
25
29
  log(source, message) {
26
- const timestamp = new Date().toISOString();
30
+ const timestamp = formatTimestamp(new Date(), this.dateTimeFormat);
27
31
  const logEntry = `[${timestamp}] [${source.toUpperCase()}] ${message}\n`;
28
32
  appendFileSync(this.logFile, logEntry);
29
33
  // If tail is enabled, also output to console
@@ -68,6 +72,8 @@ async function findAvailablePort(startPort) {
68
72
  throw new Error(`No available ports found starting from ${startPort}`);
69
73
  }
70
74
  export function createPersistentLogFile() {
75
+ // Get unique project name
76
+ const projectName = getProjectName();
71
77
  // Create /var/log/dev3000 directory
72
78
  const logBaseDir = "/var/log/dev3000";
73
79
  try {
@@ -81,12 +87,12 @@ export function createPersistentLogFile() {
81
87
  if (!existsSync(fallbackDir)) {
82
88
  mkdirSync(fallbackDir, { recursive: true });
83
89
  }
84
- return createLogFileInDir(fallbackDir);
90
+ return createLogFileInDir(fallbackDir, projectName);
85
91
  }
86
- return createLogFileInDir(logBaseDir);
92
+ return createLogFileInDir(logBaseDir, projectName);
87
93
  }
88
94
  // Write session info for MCP server to discover
89
- function writeSessionInfo(projectName, logFilePath, appPort, mcpPort) {
95
+ function writeSessionInfo(projectName, logFilePath, appPort, mcpPort, cdpUrl) {
90
96
  const sessionDir = join(homedir(), ".d3k");
91
97
  try {
92
98
  // Create ~/.d3k directory if it doesn't exist
@@ -99,6 +105,7 @@ function writeSessionInfo(projectName, logFilePath, appPort, mcpPort) {
99
105
  logFilePath,
100
106
  appPort,
101
107
  mcpPort: mcpPort || null,
108
+ cdpUrl: cdpUrl || null,
102
109
  startTime: new Date().toISOString(),
103
110
  pid: process.pid,
104
111
  cwd: process.cwd()
@@ -112,25 +119,23 @@ function writeSessionInfo(projectName, logFilePath, appPort, mcpPort) {
112
119
  console.warn(chalk.yellow(`⚠️ Could not write session info: ${error}`));
113
120
  }
114
121
  }
115
- function createLogFileInDir(baseDir) {
116
- // Get current working directory name
117
- const cwdName = basename(process.cwd()).replace(/[^a-zA-Z0-9-_]/g, "_");
122
+ function createLogFileInDir(baseDir, projectName) {
118
123
  // Create timestamp
119
124
  const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
120
125
  // Create log file path
121
- const logFileName = `dev3000-${cwdName}-${timestamp}.log`;
126
+ const logFileName = `dev3000-${projectName}-${timestamp}.log`;
122
127
  const logFilePath = join(baseDir, logFileName);
123
128
  // Prune old logs for this project (keep only 10 most recent)
124
- pruneOldLogs(baseDir, cwdName);
129
+ pruneOldLogs(baseDir, projectName);
125
130
  // Create the log file
126
131
  writeFileSync(logFilePath, "");
127
132
  return logFilePath;
128
133
  }
129
- function pruneOldLogs(baseDir, cwdName) {
134
+ function pruneOldLogs(baseDir, projectName) {
130
135
  try {
131
136
  // Find all log files for this project
132
137
  const files = readdirSync(baseDir)
133
- .filter((file) => file.startsWith(`dev3000-${cwdName}-`) && file.endsWith(".log"))
138
+ .filter((file) => file.startsWith(`dev3000-${projectName}-`) && file.endsWith(".log"))
134
139
  .map((file) => ({
135
140
  name: file,
136
141
  path: join(baseDir, file),
@@ -177,7 +182,7 @@ export class DevEnvironment {
177
182
  ...options,
178
183
  mcpPort: options.portMcp || options.mcpPort || "3684"
179
184
  };
180
- this.logger = new Logger(options.logFile, options.tail || false);
185
+ this.logger = new Logger(options.logFile, options.tail || false, options.dateTimeFormat || "local");
181
186
  this.outputProcessor = new OutputProcessor(new StandardLogParser(), new NextJsErrorDetector());
182
187
  // Set up MCP server public directory for web-accessible screenshots
183
188
  const currentFile = fileURLToPath(import.meta.url);
@@ -371,8 +376,9 @@ export class DevEnvironment {
371
376
  await this.checkPortsAvailable(true); // silent mode for TUI
372
377
  // Clear console and start TUI
373
378
  console.clear();
374
- // Get project name from current directory
375
- const projectName = basename(process.cwd()).replace(/[^a-zA-Z0-9-_]/g, "_");
379
+ // Get unique project name
380
+ const projectName = getProjectName();
381
+ const projectDisplayName = getProjectDisplayName();
376
382
  // Start TUI interface with initial status and updated port
377
383
  this.tui = new DevTUI({
378
384
  appPort: this.options.port, // This may have been updated by checkPortsAvailable
@@ -381,7 +387,7 @@ export class DevEnvironment {
381
387
  commandName: this.options.commandName,
382
388
  serversOnly: this.options.serversOnly,
383
389
  version: this.version,
384
- projectName
390
+ projectName: projectDisplayName
385
391
  });
386
392
  await this.tui.start();
387
393
  // Give TUI a moment to fully initialize
@@ -407,16 +413,16 @@ export class DevEnvironment {
407
413
  await this.tui.updateStatus("Starting your dev server...");
408
414
  await this.startServer();
409
415
  // Start MCP server
410
- await this.tui.updateStatus(`Starting ${this.options.commandName} services...`);
416
+ await this.tui.updateStatus(`Starting ${this.options.commandName} MCP server...`);
411
417
  await this.startMcpServer();
412
418
  // Wait for servers to be ready
413
419
  await this.tui.updateStatus("Waiting for your app server...");
414
420
  await this.waitForServer();
415
- await this.tui.updateStatus(`Waiting for ${this.options.commandName} services...`);
421
+ await this.tui.updateStatus(`Waiting for ${this.options.commandName} MCP server...`);
416
422
  await this.waitForMcpServer();
417
423
  // Start CDP monitoring if not in servers-only mode
418
424
  if (!this.options.serversOnly) {
419
- await this.tui.updateStatus("Launching browser monitor...");
425
+ await this.tui.updateStatus(`Starting ${this.options.commandName} browser...`);
420
426
  this.startCDPMonitoringAsync();
421
427
  }
422
428
  else {
@@ -443,23 +449,23 @@ export class DevEnvironment {
443
449
  this.spinner.text = "Starting your dev server...";
444
450
  await this.startServer();
445
451
  // Start MCP server
446
- this.spinner.text = `Starting ${this.options.commandName} services...`;
452
+ this.spinner.text = `Starting ${this.options.commandName} MCP server...`;
447
453
  await this.startMcpServer();
448
454
  // Wait for servers to be ready
449
455
  this.spinner.text = "Waiting for your app server...";
450
456
  await this.waitForServer();
451
- this.spinner.text = `Waiting for ${this.options.commandName} services...`;
457
+ this.spinner.text = `Waiting for ${this.options.commandName} MCP server...`;
452
458
  await this.waitForMcpServer();
453
459
  // Start CDP monitoring if not in servers-only mode
454
460
  if (!this.options.serversOnly) {
455
- this.spinner.text = "Launching browser monitor...";
461
+ this.spinner.text = `Starting ${this.options.commandName} browser...`;
456
462
  this.startCDPMonitoringAsync();
457
463
  }
458
464
  else {
459
465
  this.debugLog("Browser monitoring disabled via --servers-only flag");
460
466
  }
461
467
  // Get project name for session info and Visual Timeline URL
462
- const projectName = basename(process.cwd()).replace(/[^a-zA-Z0-9-_]/g, "_");
468
+ const projectName = getProjectName();
463
469
  writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort);
464
470
  // Complete startup with success message only in non-TUI mode
465
471
  this.spinner.succeed("Development environment ready!");
@@ -617,8 +623,23 @@ export class DevEnvironment {
617
623
  // Get the path to our bundled MCP server
618
624
  const currentFile = fileURLToPath(import.meta.url);
619
625
  const packageRoot = dirname(dirname(currentFile)); // Go up from dist/ to package root
620
- const mcpServerPath = join(packageRoot, "mcp-server");
621
- this.debugLog(`MCP server path: ${mcpServerPath}`);
626
+ let mcpServerPath = join(packageRoot, "mcp-server");
627
+ this.debugLog(`Initial MCP server path: ${mcpServerPath}`);
628
+ // For pnpm global installs, resolve symlinks to get the real path
629
+ if (existsSync(mcpServerPath)) {
630
+ try {
631
+ const realPath = realpathSync(mcpServerPath);
632
+ if (realPath !== mcpServerPath) {
633
+ this.debugLog(`MCP server path resolved from symlink: ${mcpServerPath} -> ${realPath}`);
634
+ mcpServerPath = realPath;
635
+ }
636
+ }
637
+ catch (e) {
638
+ // Error resolving path, continue with original
639
+ this.debugLog(`Error resolving real path: ${e}`);
640
+ }
641
+ }
642
+ this.debugLog(`Final MCP server path: ${mcpServerPath}`);
622
643
  if (!existsSync(mcpServerPath)) {
623
644
  throw new Error(`MCP server directory not found at ${mcpServerPath}`);
624
645
  }
@@ -642,16 +663,34 @@ export class DevEnvironment {
642
663
  }
643
664
  // Check if .next build directory exists - if so, skip dependency installation
644
665
  const nextBuildPath = join(mcpServerPath, ".next");
666
+ this.debugLog(`Checking for pre-built MCP server at: ${nextBuildPath}`);
667
+ let isPreBuilt = false;
645
668
  if (existsSync(nextBuildPath)) {
646
669
  this.debugLog("MCP server is pre-built (.next directory exists), skipping dependency installation");
670
+ isPreBuilt = true;
671
+ // For global installs with pre-built servers, we'll run from the original location
672
+ // No need to copy anything to temp directory
673
+ if (isGlobalInstall) {
674
+ this.debugLog("Global install with pre-built server - will run from original location");
675
+ actualWorkingDir = mcpServerPath;
676
+ // Still need to set up screenshot directory in temp
677
+ const tmpDirPath = join(tmpdir(), "dev3000-mcp-deps");
678
+ this.screenshotDir = join(tmpDirPath, "public", "screenshots");
679
+ this.mcpPublicDir = join(tmpDirPath, "public", "screenshots");
680
+ if (!existsSync(this.mcpPublicDir)) {
681
+ mkdirSync(this.mcpPublicDir, { recursive: true });
682
+ }
683
+ }
647
684
  }
648
685
  else {
649
- this.debugLog("Installing/updating MCP server dependencies");
686
+ this.debugLog("No .next directory found, installing/updating MCP server dependencies");
687
+ this.debugLog(`WARNING: MCP server appears to not be pre-built. This is unexpected for a published package.`);
650
688
  await this.installMcpServerDeps(mcpServerPath);
651
689
  }
652
690
  // Use version already read in constructor
653
- // For global installs, ensure all necessary files are copied to temp directory
654
- if (isGlobalInstall && actualWorkingDir !== mcpServerPath) {
691
+ // For global installs, only copy files if NOT pre-built
692
+ // Pre-built servers run from their original location
693
+ if (isGlobalInstall && actualWorkingDir !== mcpServerPath && !isPreBuilt) {
655
694
  const requiredFiles = ["app", "public", "next.config.ts", "next-env.d.ts", "tsconfig.json", ".next"];
656
695
  for (const file of requiredFiles) {
657
696
  const srcPath = join(mcpServerPath, file);
@@ -689,25 +728,73 @@ export class DevEnvironment {
689
728
  }
690
729
  }
691
730
  }
692
- // Start the MCP server using detected package manager
693
- const packageManagerForRun = detectPackageManagerForRun();
694
- this.debugLog(`Using package manager: ${packageManagerForRun}`);
731
+ // Start the MCP server
695
732
  this.debugLog(`MCP server working directory: ${actualWorkingDir}`);
696
733
  this.debugLog(`MCP server port: ${this.options.mcpPort}`);
697
- // Use production mode for MCP server (non-standalone)
698
- // This provides proper CSS and still allows dynamic screenshot serving
699
- const mcpCommand = [packageManagerForRun, "run", "start"];
700
- this.debugLog(`MCP server mode: production (using ${packageManagerForRun} run start)`);
734
+ this.debugLog(`Screenshot directory: ${this.screenshotDir}`);
735
+ this.debugLog(`Is pre-built: ${isPreBuilt}`);
736
+ this.debugLog(`Is global install: ${isGlobalInstall}`);
737
+ let mcpCommand;
738
+ let mcpCwd = actualWorkingDir;
739
+ if (isGlobalInstall && isPreBuilt) {
740
+ // For global installs with pre-built servers, use the standalone server directly
741
+ // This avoids the turbopack runtime issues with npx
742
+ const serverJsPath = join(mcpServerPath, ".next", "standalone", "mcp-server", "server.js");
743
+ if (existsSync(serverJsPath)) {
744
+ // Use the standalone server directly
745
+ this.debugLog(`Global install with standalone server at ${serverJsPath}`);
746
+ mcpCommand = ["node", serverJsPath];
747
+ mcpCwd = dirname(serverJsPath);
748
+ }
749
+ else {
750
+ // Check for start-production.js script
751
+ const startProdScript = join(mcpServerPath, "start-production.js");
752
+ if (existsSync(startProdScript)) {
753
+ // Use the production script
754
+ this.debugLog(`Global install with start-production.js script`);
755
+ mcpCommand = ["node", startProdScript];
756
+ mcpCwd = mcpServerPath;
757
+ }
758
+ else {
759
+ // Fallback to finding Next.js binary
760
+ const dev3000NodeModules = join(mcpServerPath, "..", "..", "node_modules");
761
+ const nextBinPath = join(dev3000NodeModules, ".bin", "next");
762
+ this.debugLog(`Looking for Next.js at: ${nextBinPath}`);
763
+ if (existsSync(nextBinPath)) {
764
+ // Found Next.js in the dev3000 package
765
+ this.debugLog(`Global install with Next.js found at ${nextBinPath}`);
766
+ mcpCommand = [nextBinPath, "start"];
767
+ mcpCwd = mcpServerPath;
768
+ }
769
+ else {
770
+ // Fallback to npx with the exact version we built with
771
+ this.debugLog(`Global install with pre-built server - using npx next start`);
772
+ mcpCommand = ["npx", "--yes", "next@15.5.1-canary.30", "start"];
773
+ mcpCwd = mcpServerPath;
774
+ }
775
+ }
776
+ }
777
+ }
778
+ else {
779
+ // Non-global or non-pre-built: use package manager
780
+ const packageManagerForRun = detectPackageManagerForRun();
781
+ this.debugLog(`Using package manager: ${packageManagerForRun}`);
782
+ mcpCommand = [packageManagerForRun, "run", "start"];
783
+ mcpCwd = actualWorkingDir;
784
+ }
785
+ this.debugLog(`MCP server command: ${mcpCommand.join(" ")}`);
786
+ this.debugLog(`MCP server cwd: ${mcpCwd}`);
701
787
  // Start MCP server as a true background singleton process
702
788
  this.mcpServerProcess = spawn(mcpCommand[0], mcpCommand.slice(1), {
703
789
  stdio: ["ignore", "pipe", "pipe"],
704
790
  detached: true, // Run independently of parent process
705
- cwd: actualWorkingDir,
791
+ cwd: mcpCwd,
706
792
  env: {
707
793
  ...process.env,
708
794
  PORT: this.options.mcpPort,
709
795
  LOG_FILE_PATH: this.options.logFile, // Pass log file path to MCP server
710
- DEV3000_VERSION: this.version // Pass version to MCP server
796
+ DEV3000_VERSION: this.version, // Pass version to MCP server
797
+ SCREENSHOT_DIR: this.screenshotDir // Pass screenshot directory for global installs
711
798
  }
712
799
  });
713
800
  // Unref the process so it continues running after parent exits
@@ -716,6 +803,10 @@ export class DevEnvironment {
716
803
  // Log MCP server output to separate file for debugging
717
804
  const mcpLogFile = join(dirname(this.options.logFile), "dev3000-mcp.log");
718
805
  writeFileSync(mcpLogFile, ""); // Clear the file
806
+ // In debug mode, output the MCP log file path
807
+ if (this.options.debug) {
808
+ console.log(chalk.gray(`[DEBUG] MCP server logs: ${mcpLogFile}`));
809
+ }
719
810
  this.mcpServerProcess.stdout?.on("data", (data) => {
720
811
  const message = data.toString().trim();
721
812
  if (message) {
@@ -807,6 +898,40 @@ export class DevEnvironment {
807
898
  // Always copy package.json to temp directory to ensure it's up to date
808
899
  const tmpPackageJson = join(tmpDirPath, "package.json");
809
900
  const sourcePackageJson = join(mcpServerPath, "package.json");
901
+ // Debug: Check if source package.json exists
902
+ if (!existsSync(sourcePackageJson)) {
903
+ const errorDetails = [
904
+ `ERROR: package.json not found at ${sourcePackageJson}`,
905
+ `MCP server path: ${mcpServerPath}`,
906
+ `Contents of MCP server directory:`
907
+ ];
908
+ try {
909
+ const files = readdirSync(mcpServerPath);
910
+ files.forEach((file) => {
911
+ errorDetails.push(` - ${file}`);
912
+ });
913
+ }
914
+ catch (e) {
915
+ errorDetails.push(` Error listing directory: ${e}`);
916
+ }
917
+ // Additional debug: Check parent directories
918
+ errorDetails.push(`Parent directory: ${dirname(mcpServerPath)}`);
919
+ try {
920
+ const parentFiles = readdirSync(dirname(mcpServerPath));
921
+ parentFiles.forEach((file) => {
922
+ errorDetails.push(` Parent dir file: ${file}`);
923
+ });
924
+ }
925
+ catch (e) {
926
+ errorDetails.push(` Error listing parent directory: ${e}`);
927
+ }
928
+ // Log all error details
929
+ errorDetails.forEach((detail) => {
930
+ this.debugLog(detail);
931
+ });
932
+ reject(new Error(`MCP server package.json not found at ${sourcePackageJson}`));
933
+ return;
934
+ }
810
935
  copyFileSync(sourcePackageJson, tmpPackageJson);
811
936
  workingDir = tmpDirPath;
812
937
  }
@@ -933,11 +1058,18 @@ export class DevEnvironment {
933
1058
  // Initialize CDP monitor with enhanced logging - use MCP public directory for screenshots
934
1059
  this.cdpMonitor = new CDPMonitor(this.options.profileDir, this.mcpPublicDir, (_source, message) => {
935
1060
  this.logger.log("browser", message);
936
- }, this.options.debug, this.options.browser);
1061
+ }, this.options.debug, this.options.browser, this.options.pluginReactScan);
937
1062
  try {
938
1063
  // Start CDP monitoring
939
1064
  await this.cdpMonitor.start();
940
1065
  this.logger.log("browser", "[CDP] Chrome launched with DevTools Protocol monitoring");
1066
+ // Update session info with CDP URL now that we have it
1067
+ const projectName = getProjectName();
1068
+ const cdpUrl = this.cdpMonitor.getCdpUrl();
1069
+ if (cdpUrl) {
1070
+ writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl);
1071
+ this.debugLog(`Updated session info with CDP URL: ${cdpUrl}`);
1072
+ }
941
1073
  // Navigate to the app
942
1074
  await this.cdpMonitor.navigateToApp(this.options.port);
943
1075
  this.logger.log("browser", `[CDP] Navigated to http://localhost:${this.options.port}`);
@@ -956,7 +1088,7 @@ export class DevEnvironment {
956
1088
  this.stopHealthCheck();
957
1089
  // Clean up session file
958
1090
  try {
959
- const projectName = basename(process.cwd()).replace(/[^a-zA-Z0-9-_]/g, "_");
1091
+ const projectName = getProjectName();
960
1092
  const sessionFile = join(homedir(), ".d3k", `${projectName}.json`);
961
1093
  if (existsSync(sessionFile)) {
962
1094
  unlinkSync(sessionFile);
@@ -1023,7 +1155,7 @@ export class DevEnvironment {
1023
1155
  this.stopHealthCheck();
1024
1156
  // Clean up session file
1025
1157
  try {
1026
- const projectName = basename(process.cwd()).replace(/[^a-zA-Z0-9-_]/g, "_");
1158
+ const projectName = getProjectName();
1027
1159
  const sessionFile = join(homedir(), ".d3k", `${projectName}.json`);
1028
1160
  if (existsSync(sessionFile)) {
1029
1161
  unlinkSync(sessionFile);
@@ -1 +1 @@
1
- {"version":3,"file":"dev-environment.js","sourceRoot":"","sources":["../src/dev-environment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-environment.js","sourceRoot":"","sources":["../src/dev-environment.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ export interface ParsedLogLine {
9
9
  formatted: string;
10
10
  message: string;
11
11
  processName?: string;
12
- metadata?: Record<string, any>;
12
+ metadata?: Record<string, unknown>;
13
13
  }
14
14
  /**
15
15
  * Base interface for log format parsers
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/services/parsers/log-parsers/base.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CAAA;CACrC"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../../../src/services/parsers/log-parsers/base.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE,CAAA;CACrC"}