dev3000 0.0.129 → 0.0.131

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 (52) hide show
  1. package/dist/cli.d.ts +1 -1
  2. package/dist/cli.js +69 -1
  3. package/dist/cli.js.map +1 -1
  4. package/dist/dev-environment.d.ts +2 -0
  5. package/dist/dev-environment.d.ts.map +1 -1
  6. package/dist/dev-environment.js +144 -37
  7. package/dist/dev-environment.js.map +1 -1
  8. package/dist/src/tui-interface-impl.tsx +4 -2
  9. package/dist/tui-interface-impl.d.ts.map +1 -1
  10. package/dist/tui-interface-impl.js +4 -2
  11. package/dist/tui-interface-impl.js.map +1 -1
  12. package/dist/utils/tmux-helpers.d.ts +35 -0
  13. package/dist/utils/tmux-helpers.d.ts.map +1 -0
  14. package/dist/utils/tmux-helpers.js +60 -0
  15. package/dist/utils/tmux-helpers.js.map +1 -0
  16. package/mcp-server/.next/BUILD_ID +1 -1
  17. package/mcp-server/.next/build-manifest.json +2 -2
  18. package/mcp-server/.next/fallback-build-manifest.json +2 -2
  19. package/mcp-server/.next/prerender-manifest.json +3 -3
  20. package/mcp-server/.next/server/app/_global-error.html +2 -2
  21. package/mcp-server/.next/server/app/_global-error.rsc +1 -1
  22. package/mcp-server/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  23. package/mcp-server/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  24. package/mcp-server/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  25. package/mcp-server/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  26. package/mcp-server/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  27. package/mcp-server/.next/server/app/_not-found.html +1 -1
  28. package/mcp-server/.next/server/app/_not-found.rsc +1 -1
  29. package/mcp-server/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  30. package/mcp-server/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  31. package/mcp-server/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  32. package/mcp-server/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  33. package/mcp-server/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  34. package/mcp-server/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  35. package/mcp-server/.next/server/app/index.html +1 -1
  36. package/mcp-server/.next/server/app/index.rsc +1 -1
  37. package/mcp-server/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  38. package/mcp-server/.next/server/app/index.segments/_full.segment.rsc +1 -1
  39. package/mcp-server/.next/server/app/index.segments/_head.segment.rsc +1 -1
  40. package/mcp-server/.next/server/app/index.segments/_index.segment.rsc +1 -1
  41. package/mcp-server/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  42. package/mcp-server/.next/server/chunks/[root-of-the-server]__141a5bc7._.js.map +1 -1
  43. package/mcp-server/.next/server/pages/404.html +1 -1
  44. package/mcp-server/.next/server/pages/500.html +2 -2
  45. package/mcp-server/.next/server/server-reference-manifest.js +1 -1
  46. package/mcp-server/.next/server/server-reference-manifest.json +1 -1
  47. package/mcp-server/app/mcp/route.ts +2 -0
  48. package/package.json +1 -1
  49. package/src/tui-interface-impl.tsx +4 -2
  50. /package/mcp-server/.next/static/{BepurBtJdbTpTE52bZxiF → i5SOhj7cf3JSMPksTBNpr}/_buildManifest.js +0 -0
  51. /package/mcp-server/.next/static/{BepurBtJdbTpTE52bZxiF → i5SOhj7cf3JSMPksTBNpr}/_clientMiddlewareManifest.json +0 -0
  52. /package/mcp-server/.next/static/{BepurBtJdbTpTE52bZxiF → i5SOhj7cf3JSMPksTBNpr}/_ssgManifest.js +0 -0
package/dist/cli.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- #!/usr/bin/env -S node --no-warnings
1
+ #!/usr/bin/env bun
2
2
  export {};
3
3
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.js CHANGED
@@ -1,4 +1,4 @@
1
- #!/usr/bin/env -S node --no-warnings
1
+ #!/usr/bin/env bun
2
2
  import chalk from "chalk";
3
3
  import { Command } from "commander";
4
4
  import { existsSync, readFileSync } from "fs";
@@ -12,8 +12,70 @@ import { createPersistentLogFile, findAvailablePort, startDevEnvironment } from
12
12
  import { detectAIAgent } from "./utils/agent-detection.js";
13
13
  import { formatMcpConfigTargets, parseDisabledMcpConfigs } from "./utils/mcp-configs.js";
14
14
  import { getProjectName } from "./utils/project-name.js";
15
+ import { DEFAULT_TMUX_CONFIG, generateSessionName, generateTmuxCommands, getTmuxInstallInstructions, isTmuxInstalled } from "./utils/tmux-helpers.js";
15
16
  import { loadUserConfig } from "./utils/user-config.js";
16
17
  import { checkForUpdates, getUpgradeCommand, performUpgrade } from "./utils/version-check.js";
18
+ /**
19
+ * Launch d3k with an agent using tmux for proper terminal multiplexing.
20
+ * This creates a split-screen with the agent on the left and d3k logs on the right.
21
+ */
22
+ async function launchWithTmux(agentCommand) {
23
+ const { execSync, spawn } = await import("child_process");
24
+ // Check if tmux is installed
25
+ if (!(await isTmuxInstalled())) {
26
+ console.error(chalk.red("\n❌ tmux is not installed."));
27
+ console.error(chalk.yellow("\nThe --with-agent flag requires tmux for split-screen mode."));
28
+ console.error(chalk.cyan("\nTo install tmux:"));
29
+ for (const instruction of getTmuxInstallInstructions()) {
30
+ console.error(chalk.gray(` ${instruction}`));
31
+ }
32
+ console.error(chalk.yellow("\nAlternatively, run d3k and your agent in separate terminal tabs.\n"));
33
+ process.exit(1);
34
+ }
35
+ // Generate a unique session name
36
+ const sessionName = generateSessionName();
37
+ // Get the d3k command path (same as what user ran)
38
+ const d3kCommand = process.argv[1].endsWith("d3k") ? "d3k" : "dev3000";
39
+ // Clear screen before launching tmux (prevents leftover text after exit)
40
+ process.stdout.write("\x1b[2J\x1b[0f");
41
+ // Generate tmux commands using the helper
42
+ const commands = generateTmuxCommands({
43
+ sessionName,
44
+ d3kCommand,
45
+ agentCommand,
46
+ agentDelay: DEFAULT_TMUX_CONFIG.agentDelay,
47
+ paneWidthPercent: DEFAULT_TMUX_CONFIG.paneWidthPercent
48
+ });
49
+ try {
50
+ // Execute all setup commands
51
+ for (const cmd of commands) {
52
+ execSync(cmd, {
53
+ stdio: "inherit",
54
+ shell: "/bin/bash"
55
+ });
56
+ }
57
+ // Attach to the session
58
+ const tmux = spawn("tmux", ["attach-session", "-t", sessionName], {
59
+ stdio: "inherit"
60
+ });
61
+ tmux.on("exit", (code) => {
62
+ // Clean up the session if it still exists
63
+ try {
64
+ execSync(`tmux kill-session -t "${sessionName}" 2>/dev/null`, { stdio: "ignore" });
65
+ }
66
+ catch {
67
+ // Session might already be killed
68
+ }
69
+ // Clear screen after tmux exits for clean terminal
70
+ process.stdout.write("\x1b[2J\x1b[0f");
71
+ process.exit(code || 0);
72
+ });
73
+ }
74
+ catch (error) {
75
+ console.error(chalk.red("\n❌ Failed to start tmux session:"), error);
76
+ process.exit(1);
77
+ }
78
+ }
17
79
  function detectPythonCommand(debug = false) {
18
80
  // Check if we're in a virtual environment
19
81
  if (process.env.VIRTUAL_ENV) {
@@ -256,7 +318,13 @@ program
256
318
  .option("--no-chrome-devtools-mcp", "Disable chrome-devtools MCP integration (enabled by default)")
257
319
  .option("--headless", "Run Chrome in headless mode (for serverless/CI environments)")
258
320
  .option("--kill-mcp", "Kill the MCP server on port 3684 and exit")
321
+ .option("--with-agent <command>", 'Run an agent (e.g. claude) in split-screen mode using tmux. Example: --with-agent "claude"')
259
322
  .action(async (options) => {
323
+ // Handle --with-agent by spawning tmux with split panes
324
+ if (options.withAgent) {
325
+ await launchWithTmux(options.withAgent);
326
+ return;
327
+ }
260
328
  // Handle --kill-mcp option
261
329
  if (options.killMcp) {
262
330
  console.log(chalk.yellow("🛑 Killing MCP server on port 3684..."));
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ interface DevEnvironmentOptions {
32
32
  disabledMcpConfigs?: McpConfigTarget[];
33
33
  debugPort?: number;
34
34
  headless?: boolean;
35
+ withAgent?: string;
35
36
  }
36
37
  export declare function findAvailablePort(startPort: number): Promise<string>;
37
38
  export declare function createPersistentLogFile(): string;
@@ -72,6 +73,7 @@ export declare class DevEnvironment {
72
73
  private detectPortChange;
73
74
  private debugLog;
74
75
  private showRecentLogs;
76
+ private checkForCommonIssues;
75
77
  private startMcpServer;
76
78
  private waitForServer;
77
79
  private detectPackageManagerInDir;
@@ -1 +1 @@
1
- {"version":3,"file":"dev-environment.d.ts","sourceRoot":"","sources":["../src/dev-environment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev-environment.d.ts","sourceRoot":"","sources":["../src/dev-environment.ts"],"names":[],"mappings":"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"}
@@ -539,7 +539,7 @@ export function createPersistentLogFile() {
539
539
  }
540
540
  }
541
541
  // Write session info for MCP server to discover
542
- function writeSessionInfo(projectName, logFilePath, appPort, mcpPort, cdpUrl, chromePids, serverCommand, framework) {
542
+ function writeSessionInfo(projectName, logFilePath, appPort, mcpPort, cdpUrl, chromePids, serverCommand, framework, serverPid) {
543
543
  const sessionDir = join(homedir(), ".d3k");
544
544
  try {
545
545
  // Create ~/.d3k directory if it doesn't exist
@@ -558,7 +558,8 @@ function writeSessionInfo(projectName, logFilePath, appPort, mcpPort, cdpUrl, ch
558
558
  cwd: process.cwd(),
559
559
  chromePids: chromePids || [],
560
560
  serverCommand: serverCommand || null,
561
- framework: framework || null
561
+ framework: framework || null,
562
+ serverPid: serverPid || null
562
563
  };
563
564
  // Write session file - use project name as filename for easy lookup
564
565
  const sessionFile = join(sessionDir, `${projectName}.json`);
@@ -584,6 +585,21 @@ function getSessionChromePids(projectName) {
584
585
  }
585
586
  return [];
586
587
  }
588
+ // Get server PID for this instance
589
+ function getSessionServerPid(projectName) {
590
+ const sessionDir = join(homedir(), ".d3k");
591
+ const sessionFile = join(sessionDir, `${projectName}.json`);
592
+ try {
593
+ if (existsSync(sessionFile)) {
594
+ const sessionInfo = JSON.parse(readFileSync(sessionFile, "utf8"));
595
+ return sessionInfo.serverPid || null;
596
+ }
597
+ }
598
+ catch (_error) {
599
+ // Non-fatal - return null
600
+ }
601
+ return null;
602
+ }
587
603
  function createLogFileInDir(baseDir, projectName) {
588
604
  // Create timestamp
589
605
  const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
@@ -713,12 +729,10 @@ export class DevEnvironment {
713
729
  // This prevents "kill EPERM" errors when MCP tries to spawn new browsers
714
730
  await cleanupOrphanedPlaywrightProcesses((msg) => this.debugLog(msg));
715
731
  // Always kill any existing MCP server to ensure clean state
732
+ // We ALWAYS try to kill, even if port appears free - there can be race conditions
716
733
  if (this.options.mcpPort) {
717
- const isPortInUse = !(await isPortAvailable(this.options.mcpPort.toString()));
718
- if (isPortInUse) {
719
- this.debugLog(`Killing existing process on port ${this.options.mcpPort}`);
720
- await this.killMcpServer();
721
- }
734
+ this.debugLog(`Ensuring port ${this.options.mcpPort} is free (always kill)`);
735
+ await this.killMcpServer();
722
736
  }
723
737
  // Check if user explicitly set ports via CLI flags
724
738
  const userSetAppPort = this.options.userSetPort || false;
@@ -774,21 +788,27 @@ export class DevEnvironment {
774
788
  this.debugLog("killMcpServer skipped: Running in sandbox environment");
775
789
  return;
776
790
  }
777
- try {
778
- // First, get the PIDs
779
- const getPidsProcess = spawn("lsof", ["-ti", `:${this.options.mcpPort}`], {
780
- stdio: "pipe"
781
- });
782
- const pids = await new Promise((resolve, reject) => {
783
- let output = "";
784
- getPidsProcess.stdout?.on("data", (data) => {
785
- output += data.toString();
791
+ // Retry loop to ensure port is fully released
792
+ const maxRetries = 5;
793
+ for (let attempt = 1; attempt <= maxRetries; attempt++) {
794
+ try {
795
+ // First, get the PIDs
796
+ const getPidsProcess = spawn("lsof", ["-ti", `:${this.options.mcpPort}`], {
797
+ stdio: "pipe"
786
798
  });
787
- getPidsProcess.on("error", (err) => reject(err));
788
- getPidsProcess.on("exit", () => resolve(output.trim()));
789
- });
790
- if (pids) {
791
- this.debugLog(`Found MCP server processes: ${pids}`);
799
+ const pids = await new Promise((resolve, reject) => {
800
+ let output = "";
801
+ getPidsProcess.stdout?.on("data", (data) => {
802
+ output += data.toString();
803
+ });
804
+ getPidsProcess.on("error", (err) => reject(err));
805
+ getPidsProcess.on("exit", () => resolve(output.trim()));
806
+ });
807
+ if (!pids) {
808
+ this.debugLog(`Port ${this.options.mcpPort} is free (attempt ${attempt})`);
809
+ return; // Port is already free
810
+ }
811
+ this.debugLog(`Found MCP server processes (attempt ${attempt}): ${pids}`);
792
812
  // Kill each PID individually with kill -9
793
813
  const pidList = pids.split("\n").filter(Boolean);
794
814
  for (const pid of pidList) {
@@ -800,14 +820,22 @@ export class DevEnvironment {
800
820
  });
801
821
  });
802
822
  }
803
- // Give it time to fully release the port
804
- this.debugLog(`Waiting for port ${this.options.mcpPort} to be released...`);
805
- await new Promise((resolve) => setTimeout(resolve, 1000));
823
+ // Give it time to fully release the port (longer waits, macOS can be slow)
824
+ const waitTime = 1000 * attempt;
825
+ this.debugLog(`Waiting ${waitTime}ms for port ${this.options.mcpPort} to be released...`);
826
+ await new Promise((resolve) => setTimeout(resolve, waitTime));
827
+ // Check if port is now free
828
+ const available = await isPortAvailable(this.options.mcpPort.toString());
829
+ if (available) {
830
+ this.debugLog(`Port ${this.options.mcpPort} released successfully`);
831
+ return;
832
+ }
833
+ }
834
+ catch (error) {
835
+ this.debugLog(`Error killing MCP server (attempt ${attempt}): ${error}`);
806
836
  }
807
837
  }
808
- catch (error) {
809
- this.debugLog(`Error killing MCP server: ${error}`);
810
- }
838
+ this.debugLog(`Warning: Port ${this.options.mcpPort} may still be in use after ${maxRetries} attempts`);
811
839
  }
812
840
  async checkProcessHealth() {
813
841
  if (this.isShuttingDown)
@@ -996,7 +1024,7 @@ export class DevEnvironment {
996
1024
  // Write session info for MCP server discovery (include CDP URL if browser monitoring was started)
997
1025
  const cdpUrl = this.cdpMonitor?.getCdpUrl() || null;
998
1026
  const chromePids = this.cdpMonitor?.getChromePids() || [];
999
- writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl, chromePids, this.options.serverCommand, this.options.framework);
1027
+ writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl, chromePids, this.options.serverCommand, this.options.framework, this.serverProcess?.pid);
1000
1028
  // Clear status - ready!
1001
1029
  await this.tui.updateStatus(null);
1002
1030
  }
@@ -1059,7 +1087,7 @@ export class DevEnvironment {
1059
1087
  // Include CDP URL if browser monitoring was started
1060
1088
  const cdpUrl = this.cdpMonitor?.getCdpUrl() || null;
1061
1089
  const chromePids = this.cdpMonitor?.getChromePids() || [];
1062
- writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl, chromePids, this.options.serverCommand, this.options.framework);
1090
+ writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl, chromePids, this.options.serverCommand, this.options.framework, this.serverProcess?.pid);
1063
1091
  // Complete startup with success message only in non-TUI mode
1064
1092
  this.spinner.succeed("Development environment ready!");
1065
1093
  // Regular console output (when TUI is disabled with --no-tui)
@@ -1251,7 +1279,7 @@ export class DevEnvironment {
1251
1279
  const cdpUrl = this.cdpMonitor?.getCdpUrl();
1252
1280
  const chromePids = this.cdpMonitor?.getChromePids() || [];
1253
1281
  if (cdpUrl || chromePids.length > 0) {
1254
- writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl || undefined, chromePids, this.options.serverCommand);
1282
+ writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl || undefined, chromePids, this.options.serverCommand, this.options.framework, this.serverProcess?.pid);
1255
1283
  this.debugLog(`Updated session info with new port: ${this.options.port}`);
1256
1284
  }
1257
1285
  // Update TUI header with new port
@@ -1340,6 +1368,32 @@ export class DevEnvironment {
1340
1368
  console.log(chalk.yellow(`💡 Check logs for details: ${this.options.logFile}`));
1341
1369
  }
1342
1370
  }
1371
+ checkForCommonIssues() {
1372
+ try {
1373
+ if (!existsSync(this.options.logFile))
1374
+ return;
1375
+ const logContent = readFileSync(this.options.logFile, "utf8");
1376
+ // Check for Next.js lock file issue (this fix also kills the process holding the port)
1377
+ if (logContent.includes("Unable to acquire lock") && logContent.includes(".next/dev/lock")) {
1378
+ console.log(chalk.yellow("\n💡 Detected Next.js lock file issue!"));
1379
+ console.log(chalk.white(" Another Next.js dev server may be running or crashed without cleanup."));
1380
+ console.log(chalk.white(" To fix, run:"));
1381
+ console.log(chalk.cyan(" rm -f .next/dev/lock && pkill -f 'next dev'"));
1382
+ return; // pkill also fixes the port-in-use issue, so skip that check
1383
+ }
1384
+ // Check for port in use (only if not a Next.js lock issue)
1385
+ const portInUseMatch = logContent.match(/Port (\d+) is in use by process (\d+)/);
1386
+ if (portInUseMatch) {
1387
+ const [, port, pid] = portInUseMatch;
1388
+ console.log(chalk.yellow(`\n💡 Port ${port} was already in use by process ${pid}`));
1389
+ console.log(chalk.white(" To kill that process, run:"));
1390
+ console.log(chalk.cyan(` kill -9 ${pid}`));
1391
+ }
1392
+ }
1393
+ catch {
1394
+ // Ignore errors reading log file
1395
+ }
1396
+ }
1343
1397
  async startMcpServer() {
1344
1398
  this.debugLog("Starting MCP server setup");
1345
1399
  // Note: MCP server cleanup now happens earlier in checkPortsAvailable()
@@ -1869,7 +1923,7 @@ export class DevEnvironment {
1869
1923
  }
1870
1924
  // Always write session info after CDP monitoring starts - this is critical for
1871
1925
  // sandbox environments where external tools poll for the cdpUrl in the session file
1872
- writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl || undefined, chromePids, this.options.serverCommand);
1926
+ writeSessionInfo(projectName, this.options.logFile, this.options.port, this.options.mcpPort, cdpUrl || undefined, chromePids, this.options.serverCommand, this.options.framework, this.serverProcess?.pid);
1873
1927
  this.debugLog(`Updated session info with CDP URL: ${cdpUrl}, Chrome PIDs: [${chromePids.join(", ")}]`);
1874
1928
  this.logger.log("browser", `[CDP] Session info written with cdpUrl: ${cdpUrl ? "available" : "null"}`);
1875
1929
  // Navigate to the app
@@ -1893,9 +1947,11 @@ export class DevEnvironment {
1893
1947
  await this.screencastManager.stop();
1894
1948
  this.screencastManager = null;
1895
1949
  }
1950
+ // Read server PID from session file BEFORE deleting it (needed for cleanup)
1951
+ const projectName = getProjectName();
1952
+ const savedServerPid = getSessionServerPid(projectName);
1896
1953
  // Clean up session file
1897
1954
  try {
1898
- const projectName = getProjectName();
1899
1955
  const sessionFile = join(homedir(), ".d3k", `${projectName}.json`);
1900
1956
  if (existsSync(sessionFile)) {
1901
1957
  unlinkSync(sessionFile);
@@ -1942,6 +1998,24 @@ export class DevEnvironment {
1942
1998
  // Kill app server only (MCP server remains as singleton)
1943
1999
  console.log(chalk.cyan("🔄 Killing app server..."));
1944
2000
  await killPortProcess(this.options.port, "your app server");
2001
+ // Kill server process and its children using the saved PID (from before session file was deleted)
2002
+ if (!isInSandbox() && savedServerPid) {
2003
+ try {
2004
+ const { spawnSync } = await import("child_process");
2005
+ // Kill all child processes of the server
2006
+ spawnSync("pkill", ["-P", savedServerPid.toString()], { stdio: "ignore" });
2007
+ // Kill the server process itself
2008
+ try {
2009
+ process.kill(savedServerPid, "SIGKILL");
2010
+ }
2011
+ catch {
2012
+ // Process may already be dead
2013
+ }
2014
+ }
2015
+ catch {
2016
+ // Ignore pkill errors
2017
+ }
2018
+ }
1945
2019
  // Shutdown CDP monitor if it was started
1946
2020
  if (this.cdpMonitor) {
1947
2021
  try {
@@ -1954,8 +2028,10 @@ export class DevEnvironment {
1954
2028
  }
1955
2029
  }
1956
2030
  console.log(chalk.red(`❌ ${this.options.commandName} exited due to server failure`));
1957
- const projectName = getProjectName();
1958
- console.log(chalk.yellow(`Check the logs at ~/.d3k/logs/${projectName}-d3k.log for errors. Feeling like helping? Run dev3000 --debug and file an issue at https://github.com/vercel-labs/dev3000/issues`));
2031
+ // Show recent log entries to help diagnose the issue
2032
+ this.showRecentLogs();
2033
+ // Check for common issues and provide specific guidance
2034
+ this.checkForCommonIssues();
1959
2035
  process.exit(1);
1960
2036
  }
1961
2037
  setupCleanupHandlers() {
@@ -2026,15 +2102,31 @@ export class DevEnvironment {
2026
2102
  process.exit(1);
2027
2103
  });
2028
2104
  });
2105
+ // Handle SIGHUP (sent by tmux when session/pane is killed)
2106
+ process.on("SIGHUP", () => {
2107
+ this.debugLog("SIGHUP received (tmux session closing)");
2108
+ if (this.isShuttingDown)
2109
+ return;
2110
+ this.isShuttingDown = true;
2111
+ this.handleShutdown()
2112
+ .then(() => {
2113
+ process.exit(0);
2114
+ })
2115
+ .catch(() => {
2116
+ process.exit(1);
2117
+ });
2118
+ });
2029
2119
  }
2030
2120
  async handleShutdown() {
2031
2121
  // Stop health monitoring
2032
2122
  this.stopHealthCheck();
2033
2123
  // Release the lock file
2034
2124
  this.releaseLock();
2125
+ // Read server PID from session file BEFORE deleting it (needed for cleanup)
2126
+ const projectName = getProjectName();
2127
+ const savedServerPid = getSessionServerPid(projectName);
2035
2128
  // Clean up session file
2036
2129
  try {
2037
- const projectName = getProjectName();
2038
2130
  const sessionFile = join(homedir(), ".d3k", `${projectName}.json`);
2039
2131
  if (existsSync(sessionFile)) {
2040
2132
  unlinkSync(sessionFile);
@@ -2183,9 +2275,24 @@ export class DevEnvironment {
2183
2275
  await new Promise((resolve) => setTimeout(resolve, 100));
2184
2276
  // Double-check: try to kill any remaining processes on the app port
2185
2277
  try {
2186
- const { spawn } = await import("child_process");
2187
- spawn("sh", ["-c", `pkill -f ":${this.options.port}"`], { stdio: "ignore" });
2278
+ const { spawnSync } = await import("child_process");
2279
+ // Kill by port
2280
+ spawnSync("sh", ["-c", `pkill -f ":${this.options.port}"`], { stdio: "ignore" });
2188
2281
  this.debugLog(`Sent pkill signal for port ${this.options.port}`);
2282
+ // Kill server process and its children using the saved PID (from before session file was deleted)
2283
+ if (savedServerPid) {
2284
+ // Kill all child processes of the server
2285
+ spawnSync("pkill", ["-P", savedServerPid.toString()], { stdio: "ignore" });
2286
+ this.debugLog(`Killed children of server PID ${savedServerPid}`);
2287
+ // Kill the server process itself
2288
+ try {
2289
+ process.kill(savedServerPid, "SIGKILL");
2290
+ this.debugLog(`Killed server PID ${savedServerPid}`);
2291
+ }
2292
+ catch {
2293
+ // Process may already be dead
2294
+ }
2295
+ }
2189
2296
  }
2190
2297
  catch {
2191
2298
  // Ignore pkill errors