genbox-agent 1.0.137 → 1.0.138

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.
File without changes
package/dist/hook.js CHANGED
File without changes
@@ -355,11 +355,15 @@ export declare class AgentServer {
355
355
  private terminateSessionProcesses;
356
356
  /**
357
357
  * Cleanup git worktree for a session
358
- * Reads worktree info from dtach metadata file and removes worktree + branch
358
+ * First tries database fields, then falls back to dtach metadata files
359
359
  *
360
360
  * Supports both new naming (UUID) and legacy naming (short hex ID) for backwards compatibility.
361
361
  */
362
362
  private cleanupSessionWorktree;
363
+ /**
364
+ * Clean up session meta files (socket, log, sh, meta.json)
365
+ */
366
+ private cleanupSessionMetaFiles;
363
367
  /**
364
368
  * Handle storage cleanup - delete messages/events for archived sessions and vacuum database
365
369
  * This frees up memory and disk space
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAUH,OAAO,EAAE,cAAc,EAAuB,MAAM,oBAAoB,CAAC;AAmBzE,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAiB1C,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,IAAI,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAAG,WAAW,GAAG,kBAAkB,GAAG,IAAI,CAAC;AAE5E,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1E,WAAW,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACpF;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3G,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3G,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7G,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC3G;AAED,MAAM,WAAW,cAAc;IAE7B,YAAY,EAAE,MAAM,WAAW,EAAE,CAAC;IAClC,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,WAAW,GAAG,IAAI,CAAC;IACtD,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACvE,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IAChD,UAAU,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3D,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAC3D,aAAa,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACvJ,WAAW,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC;IAG5C,cAAc,EAAE,MAAM,WAAW,GAAG,IAAI,CAAC;IAGzC,kBAAkB,CAAC,EAAE,MAAM,uBAAuB,CAAC;IAGnD,oBAAoB,CAAC,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IAGvD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;CACvC;AAED;;;GAGG;AACH,qBAAa,WAAW;IA2BpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IA3B3B,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,EAAE,CAA+B;IACzC,OAAO,CAAC,IAAI,CAAa;IACzB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,aAAa,CAA0C;IAC/D,OAAO,CAAC,gBAAgB,CAA0B;IAClD,OAAO,CAAC,cAAc,CAA+B;IAGrD,OAAO,CAAC,aAAa,CAA2E;IAChG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,qBAAqB,CAAQ;IAGrD,OAAO,CAAC,qBAAqB,CAA+B;IAC5D,OAAO,CAAC,YAAY,CAAa;IAIjC,OAAO,CAAC,cAAc,CAAyE;IAC/F,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAM;IACzC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAiB;IAG/D,OAAO,CAAC,wBAAwB,CAAmE;gBAGhF,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,cAAc;IAG3C;;;;OAIG;IACH,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI;IAKhD;;OAEG;IACH,gBAAgB,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIlF;;;;;OAKG;IACH,OAAO,CAAC,kBAAkB;IA8B1B;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAS3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAO1B;;;;OAIG;YACW,mBAAmB;IA+CjC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC;IA4D9B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA6B7B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqD3B;;OAEG;IACH,OAAO,IAAI,MAAM;IAIjB;;OAEG;IACH,SAAS,IAAI,OAAO;IAIpB;;OAEG;IACH,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IASxE;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAOxC;;OAEG;IACH,cAAc,CAAC,KAAK,EAAE,GAAG,GAAG,IAAI;IAWhC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoHzB;;OAEG;IACH,OAAO,CAAC,YAAY;IA6BpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAwI9B;;;OAGG;IACI,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI;IAqB3F;;;OAGG;IACI,uBAAuB,IAAI,IAAI;IA0EtC;;;OAGG;IACI,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAoBvD;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAoF1B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IASzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAmB3B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAY5B,OAAO,CAAC,YAAY;IAkBpB,OAAO,CAAC,gBAAgB;IAaxB,OAAO,CAAC,eAAe;IAkCvB;;;;;;;OAOG;YACW,wBAAwB;IAqPtC,OAAO,CAAC,gBAAgB;IAqHxB,OAAO,CAAC,mBAAmB;IA8D3B,OAAO,CAAC,mBAAmB;IA0L3B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IA4D7B,OAAO,CAAC,iBAAiB;IAUzB,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,eAAe;IASvB;;;OAGG;YACW,uBAAuB;IA8BrC;;;OAGG;YACW,0BAA0B;IAiIxC;;OAEG;YACW,qBAAqB;IAmFnC;;OAEG;YACW,wBAAwB;IAmJtC;;OAEG;YACW,eAAe;IA2D7B;;OAEG;YACW,qBAAqB;IAoBnC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAwBhC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAiChC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAoBhC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA0IzB;;OAEG;YACW,sBAAsB;IAqFpC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAU1B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAUzB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IAoH7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2B3B,OAAO,CAAC,qBAAqB;IAyB7B,OAAO,CAAC,uBAAuB;IAgD/B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA0C5B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAoEjC;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAuE9B;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA2E5B,OAAO,CAAC,mBAAmB;IAkC3B;;OAEG;IACH,OAAO,CAAC,eAAe;IAoBvB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA8C1B,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,SAAS;IAKjB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAe;IAEpD,OAAO,CAAC,QAAQ;IA2BhB;;;OAGG;IACH,OAAO,CAAC,iBAAiB;CAoB1B"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -1407,10 +1407,14 @@ class AgentServer {
1407
1407
  model: model || undefined,
1408
1408
  projectPath: result.projectPath,
1409
1409
  correlationId: result.correlationId,
1410
+ // Git worktree isolation info (for cleanup when session is archived)
1411
+ worktreePath: result.worktreePath || undefined,
1412
+ worktreeBranch: result.worktreeBranch || undefined,
1413
+ originalProjectPath: result.originalProjectPath || undefined,
1410
1414
  });
1411
1415
  // Set pending status (status field handled separately)
1412
1416
  this.storageManager.sessions.updateStatus(result.correlationId, 'active');
1413
- console.log(`[server] Created pending storage session ${result.correlationId.substring(0, 8)}... with name: "${sessionName || '(pending)'}"`);
1417
+ console.log(`[server] Created pending storage session ${result.correlationId.substring(0, 8)}... with name: "${sessionName || '(pending)'}", worktree: ${result.worktreePath ? 'yes' : 'no'}`);
1414
1418
  }
1415
1419
  // Broadcast pending session event to notify desktop app
1416
1420
  this.broadcastEvent({
@@ -1485,8 +1489,12 @@ class AgentServer {
1485
1489
  model: model || undefined, // Store the model used for this session
1486
1490
  projectPath: session.projectPath,
1487
1491
  correlationId: correlationId || undefined, // For matching pending session in desktop app
1492
+ // Git worktree isolation info (for cleanup when session is archived)
1493
+ worktreePath: session.worktreePath || undefined,
1494
+ worktreeBranch: session.worktreeBranch || undefined,
1495
+ originalProjectPath: session.originalProjectPath || undefined,
1488
1496
  });
1489
- console.log(`[server] Created storage session ${storageId} with name: "${sessionName || '(pending)'}", model: "${model || '(default)'}"`);
1497
+ console.log(`[server] Created storage session ${storageId} with name: "${sessionName || '(pending)'}", model: "${model || '(default)'}", worktree: ${session.worktreePath ? 'yes' : 'no'}`);
1490
1498
  // Notify for real-time streaming initialization
1491
1499
  if (this.onSessionCreatedCallback && session.projectPath) {
1492
1500
  this.onSessionCreatedCallback(storageId, session.projectPath);
@@ -2628,23 +2636,40 @@ runcmd:
2628
2636
  }
2629
2637
  /**
2630
2638
  * Cleanup git worktree for a session
2631
- * Reads worktree info from dtach metadata file and removes worktree + branch
2639
+ * First tries database fields, then falls back to dtach metadata files
2632
2640
  *
2633
2641
  * Supports both new naming (UUID) and legacy naming (short hex ID) for backwards compatibility.
2634
2642
  */
2635
2643
  cleanupSessionWorktree(sessionId) {
2644
+ // First, try to get worktree info from the database
2645
+ if (this.storageManager) {
2646
+ const session = this.storageManager.sessions.getById(sessionId);
2647
+ if (session?.worktreePath || session?.worktreeBranch) {
2648
+ console.log(`[server] Cleaning up worktree from database for session ${sessionId}`);
2649
+ const cleanupResult = (0, git_worktree_1.cleanupWorktree)(session.worktreePath, session.worktreeBranch, session.originalProjectPath);
2650
+ if (cleanupResult.hasUncommittedChanges) {
2651
+ console.warn(`[server] Session ${sessionId} had uncommitted changes that were discarded`);
2652
+ }
2653
+ if (cleanupResult.worktreeRemoved) {
2654
+ console.log(`[server] Worktree removed for session ${sessionId}`);
2655
+ }
2656
+ if (cleanupResult.branchDeleted) {
2657
+ console.log(`[server] Branch deleted for session ${sessionId}`);
2658
+ }
2659
+ // Also clean up any meta files
2660
+ this.cleanupSessionMetaFiles(sessionId, session.dtachSocketPath);
2661
+ return;
2662
+ }
2663
+ }
2664
+ // Fall back to reading from metadata files
2636
2665
  const socketsDir = path.join(process.env.HOME || '/tmp', '.genbox', 'sockets');
2637
2666
  const prefixes = ['claude-', 'gemini-', 'codex-', 'opencode-'];
2638
2667
  // Build list of session IDs to try
2639
- // 1. The sessionId itself (for new sessions that use UUID in filename)
2640
- // 2. The dtach session ID extracted from socket path (for legacy sessions)
2641
2668
  const sessionIdsToTry = [sessionId];
2642
2669
  // For backwards compatibility: extract dtach session ID from socket path in database
2643
2670
  if (this.storageManager) {
2644
2671
  const session = this.storageManager.sessions.getById(sessionId);
2645
2672
  if (session?.dtachSocketPath) {
2646
- // Extract dtach session ID from socket path
2647
- // e.g., /Users/.../.genbox/sockets/claude-9a3a0416f421617f.sock -> 9a3a0416f421617f
2648
2673
  const socketFilename = path.basename(session.dtachSocketPath, '.sock');
2649
2674
  const match = socketFilename.match(/^(claude|gemini|codex|opencode)-(.+)$/);
2650
2675
  if (match && match[2] !== sessionId) {
@@ -2660,7 +2685,7 @@ runcmd:
2660
2685
  if (fs.existsSync(metaPath)) {
2661
2686
  const meta = JSON.parse(fs.readFileSync(metaPath, 'utf-8'));
2662
2687
  if (meta.worktreePath || meta.worktreeBranch) {
2663
- console.log(`[server] Cleaning up worktree for archived session ${sessionId}`);
2688
+ console.log(`[server] Cleaning up worktree from meta file for session ${sessionId}`);
2664
2689
  const cleanupResult = (0, git_worktree_1.cleanupWorktree)(meta.worktreePath, meta.worktreeBranch, meta.originalProjectPath);
2665
2690
  if (cleanupResult.hasUncommittedChanges) {
2666
2691
  console.warn(`[server] Session ${sessionId} had uncommitted changes that were discarded`);
@@ -2672,7 +2697,7 @@ runcmd:
2672
2697
  console.log(`[server] Branch deleted for session ${sessionId}`);
2673
2698
  }
2674
2699
  }
2675
- // Also clean up the meta file itself
2700
+ // Clean up the meta file
2676
2701
  try {
2677
2702
  fs.unlinkSync(metaPath);
2678
2703
  console.log(`[server] Removed meta file: ${metaPath}`);
@@ -2688,7 +2713,27 @@ runcmd:
2688
2713
  }
2689
2714
  }
2690
2715
  }
2691
- console.log(`[server] No metadata file found for session ${sessionId}, skipping worktree cleanup`);
2716
+ console.log(`[server] No worktree info found for session ${sessionId}`);
2717
+ }
2718
+ /**
2719
+ * Clean up session meta files (socket, log, sh, meta.json)
2720
+ */
2721
+ cleanupSessionMetaFiles(sessionId, dtachSocketPath) {
2722
+ if (!dtachSocketPath)
2723
+ return;
2724
+ const socketsDir = path.dirname(dtachSocketPath);
2725
+ const socketFilename = path.basename(dtachSocketPath, '.sock');
2726
+ for (const ext of ['.sock', '.log', '.sh', '.meta.json']) {
2727
+ const filePath = path.join(socketsDir, `${socketFilename}${ext}`);
2728
+ try {
2729
+ if (fs.existsSync(filePath)) {
2730
+ fs.unlinkSync(filePath);
2731
+ }
2732
+ }
2733
+ catch {
2734
+ // Ignore cleanup errors
2735
+ }
2736
+ }
2692
2737
  }
2693
2738
  /**
2694
2739
  * Handle storage cleanup - delete messages/events for archived sessions and vacuum database