@akiojin/gwt 2.11.1 → 2.12.0

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 (70) hide show
  1. package/dist/claude.d.ts +4 -1
  2. package/dist/claude.d.ts.map +1 -1
  3. package/dist/claude.js +51 -7
  4. package/dist/claude.js.map +1 -1
  5. package/dist/cli/ui/components/App.d.ts +7 -0
  6. package/dist/cli/ui/components/App.d.ts.map +1 -1
  7. package/dist/cli/ui/components/App.js +307 -18
  8. package/dist/cli/ui/components/App.js.map +1 -1
  9. package/dist/cli/ui/components/screens/BranchQuickStartScreen.d.ts +21 -0
  10. package/dist/cli/ui/components/screens/BranchQuickStartScreen.d.ts.map +1 -0
  11. package/dist/cli/ui/components/screens/BranchQuickStartScreen.js +145 -0
  12. package/dist/cli/ui/components/screens/BranchQuickStartScreen.js.map +1 -0
  13. package/dist/cli/ui/components/screens/ExecutionModeSelectorScreen.d.ts +2 -1
  14. package/dist/cli/ui/components/screens/ExecutionModeSelectorScreen.d.ts.map +1 -1
  15. package/dist/cli/ui/components/screens/ExecutionModeSelectorScreen.js +4 -2
  16. package/dist/cli/ui/components/screens/ExecutionModeSelectorScreen.js.map +1 -1
  17. package/dist/cli/ui/components/screens/ModelSelectorScreen.js +1 -1
  18. package/dist/cli/ui/components/screens/SessionSelectorScreen.d.ts +10 -2
  19. package/dist/cli/ui/components/screens/SessionSelectorScreen.d.ts.map +1 -1
  20. package/dist/cli/ui/components/screens/SessionSelectorScreen.js +18 -7
  21. package/dist/cli/ui/components/screens/SessionSelectorScreen.js.map +1 -1
  22. package/dist/cli/ui/types.d.ts +1 -1
  23. package/dist/cli/ui/types.d.ts.map +1 -1
  24. package/dist/cli/ui/utils/continueSession.d.ts +18 -0
  25. package/dist/cli/ui/utils/continueSession.d.ts.map +1 -0
  26. package/dist/cli/ui/utils/continueSession.js +67 -0
  27. package/dist/cli/ui/utils/continueSession.js.map +1 -0
  28. package/dist/codex.d.ts +4 -1
  29. package/dist/codex.d.ts.map +1 -1
  30. package/dist/codex.js +70 -5
  31. package/dist/codex.js.map +1 -1
  32. package/dist/config/index.d.ts +9 -1
  33. package/dist/config/index.d.ts.map +1 -1
  34. package/dist/config/index.js +11 -2
  35. package/dist/config/index.js.map +1 -1
  36. package/dist/gemini.d.ts +4 -1
  37. package/dist/gemini.d.ts.map +1 -1
  38. package/dist/gemini.js +146 -32
  39. package/dist/gemini.js.map +1 -1
  40. package/dist/index.d.ts.map +1 -1
  41. package/dist/index.js +118 -8
  42. package/dist/index.js.map +1 -1
  43. package/dist/qwen.d.ts +4 -1
  44. package/dist/qwen.d.ts.map +1 -1
  45. package/dist/qwen.js +45 -4
  46. package/dist/qwen.js.map +1 -1
  47. package/dist/utils/session.d.ts +82 -0
  48. package/dist/utils/session.d.ts.map +1 -0
  49. package/dist/utils/session.js +579 -0
  50. package/dist/utils/session.js.map +1 -0
  51. package/package.json +1 -1
  52. package/src/claude.ts +69 -8
  53. package/src/cli/ui/__tests__/components/App.protected-branch.test.tsx +12 -2
  54. package/src/cli/ui/__tests__/components/screens/BranchQuickStartScreen.test.tsx +142 -0
  55. package/src/cli/ui/__tests__/components/screens/ExecutionModeSelectorScreen.test.tsx +14 -0
  56. package/src/cli/ui/__tests__/components/screens/SessionSelectorScreen.test.tsx +29 -10
  57. package/src/cli/ui/__tests__/integration/edgeCases.test.tsx +4 -1
  58. package/src/cli/ui/components/App.tsx +403 -23
  59. package/src/cli/ui/components/screens/BranchQuickStartScreen.tsx +237 -0
  60. package/src/cli/ui/components/screens/ExecutionModeSelectorScreen.tsx +5 -1
  61. package/src/cli/ui/components/screens/ModelSelectorScreen.tsx +1 -1
  62. package/src/cli/ui/components/screens/SessionSelectorScreen.tsx +34 -6
  63. package/src/cli/ui/types.ts +1 -0
  64. package/src/cli/ui/utils/continueSession.ts +106 -0
  65. package/src/codex.ts +91 -6
  66. package/src/config/index.ts +22 -2
  67. package/src/gemini.ts +179 -41
  68. package/src/index.ts +144 -16
  69. package/src/qwen.ts +56 -5
  70. package/src/utils/session.ts +704 -0
package/dist/index.js CHANGED
@@ -10,9 +10,12 @@ import { worktreeExists, isProtectedBranchName, switchToProtectedBranch, Worktre
10
10
  import { getTerminalStreams, waitForUserAcknowledgement, } from "./utils/terminal.js";
11
11
  import { getToolById, getSharedEnvironment } from "./config/tools.js";
12
12
  import { launchCustomAITool } from "./launcher.js";
13
- import { saveSession } from "./config/index.js";
13
+ import { saveSession, loadSession } from "./config/index.js";
14
+ import { findLatestCodexSession, findLatestClaudeSession, findLatestGeminiSession, } from "./utils/session.js";
14
15
  import { getPackageVersion } from "./utils.js";
16
+ import { findLatestClaudeSessionId } from "./utils/session.js";
15
17
  import readline from "node:readline";
18
+ import { resolveContinueSessionId } from "./cli/ui/utils/continueSession.js";
16
19
  import { installDependenciesForWorktree, DependencyInstallError, } from "./services/dependency-installer.js";
17
20
  const ERROR_PROMPT = chalk.yellow("Review the error details, then press Enter to continue.");
18
21
  async function waitForErrorAcknowledgement() {
@@ -197,6 +200,7 @@ async function mainInkUI() {
197
200
  const { App } = await import("./cli/ui/components/App.js");
198
201
  const terminal = getTerminalStreams();
199
202
  let selectionResult;
203
+ // Resume stdin to ensure it's ready for Ink.js
200
204
  if (typeof terminal.stdin.resume === "function") {
201
205
  terminal.stdin.resume();
202
206
  }
@@ -230,7 +234,7 @@ async function mainInkUI() {
230
234
  * Handle AI tool workflow
231
235
  */
232
236
  export async function handleAIToolWorkflow(selectionResult) {
233
- const { branch, displayName, branchType, remoteBranch, tool, mode, skipPermissions, model, inferenceLevel, } = selectionResult;
237
+ const { branch, displayName, branchType, remoteBranch, tool, mode, skipPermissions, model, inferenceLevel, sessionId: selectedSessionId, } = selectionResult;
234
238
  const branchLabel = displayName ?? branch;
235
239
  const modelInfo = model || inferenceLevel
236
240
  ? `, model=${model ?? "default"}${inferenceLevel ? `/${inferenceLevel}` : ""}`
@@ -408,12 +412,36 @@ export async function handleAIToolWorkflow(selectionResult) {
408
412
  toolLabel: toolConfig.displayName ?? tool,
409
413
  mode,
410
414
  model: model ?? null,
415
+ reasoningLevel: inferenceLevel ?? null,
416
+ skipPermissions: skipPermissions ?? null,
411
417
  timestamp: Date.now(),
412
418
  repositoryRoot: repoRoot,
413
- });
419
+ }, { skipHistory: true });
420
+ // Lookup saved session ID for continue/resume
421
+ let resumeSessionId = selectedSessionId && selectedSessionId.length > 0
422
+ ? selectedSessionId
423
+ : null;
424
+ if (mode === "continue" || mode === "resume") {
425
+ const existingSession = await loadSession(repoRoot);
426
+ const history = existingSession?.history ?? [];
427
+ resumeSessionId =
428
+ resumeSessionId ??
429
+ (await resolveContinueSessionId({
430
+ history,
431
+ sessionData: existingSession,
432
+ branch,
433
+ toolId: tool,
434
+ repoRoot,
435
+ }));
436
+ if (!resumeSessionId) {
437
+ printWarning("No saved session ID found for this branch/tool. Falling back to tool default.");
438
+ }
439
+ }
440
+ const launchStartedAt = Date.now();
414
441
  // Launch selected AI tool
415
442
  // Builtin tools use their dedicated launch functions
416
443
  // Custom tools use the generic launchCustomAITool function
444
+ let launchResult;
417
445
  if (tool === "claude-code") {
418
446
  const launchOptions = {
419
447
  mode: mode === "resume"
@@ -423,11 +451,12 @@ export async function handleAIToolWorkflow(selectionResult) {
423
451
  : "normal",
424
452
  skipPermissions,
425
453
  envOverrides: sharedEnv,
454
+ sessionId: resumeSessionId,
426
455
  };
427
456
  if (model) {
428
457
  launchOptions.model = model;
429
458
  }
430
- await launchClaudeCode(worktreePath, launchOptions);
459
+ launchResult = await launchClaudeCode(worktreePath, launchOptions);
431
460
  }
432
461
  else if (tool === "codex-cli") {
433
462
  const launchOptions = {
@@ -438,6 +467,7 @@ export async function handleAIToolWorkflow(selectionResult) {
438
467
  : "normal",
439
468
  bypassApprovals: skipPermissions,
440
469
  envOverrides: sharedEnv,
470
+ sessionId: resumeSessionId,
441
471
  };
442
472
  if (model) {
443
473
  launchOptions.model = model;
@@ -445,7 +475,7 @@ export async function handleAIToolWorkflow(selectionResult) {
445
475
  if (inferenceLevel) {
446
476
  launchOptions.reasoningEffort = inferenceLevel;
447
477
  }
448
- await launchCodexCLI(worktreePath, launchOptions);
478
+ launchResult = await launchCodexCLI(worktreePath, launchOptions);
449
479
  }
450
480
  else if (tool === "gemini-cli") {
451
481
  const launchOptions = {
@@ -456,11 +486,12 @@ export async function handleAIToolWorkflow(selectionResult) {
456
486
  : "normal",
457
487
  skipPermissions,
458
488
  envOverrides: sharedEnv,
489
+ sessionId: resumeSessionId,
459
490
  };
460
491
  if (model) {
461
492
  launchOptions.model = model;
462
493
  }
463
- await launchGeminiCLI(worktreePath, launchOptions);
494
+ launchResult = await launchGeminiCLI(worktreePath, launchOptions);
464
495
  }
465
496
  else if (tool === "qwen-cli") {
466
497
  const launchOptions = {
@@ -471,16 +502,17 @@ export async function handleAIToolWorkflow(selectionResult) {
471
502
  : "normal",
472
503
  skipPermissions,
473
504
  envOverrides: sharedEnv,
505
+ sessionId: resumeSessionId,
474
506
  };
475
507
  if (model) {
476
508
  launchOptions.model = model;
477
509
  }
478
- await launchQwenCLI(worktreePath, launchOptions);
510
+ launchResult = await launchQwenCLI(worktreePath, launchOptions);
479
511
  }
480
512
  else {
481
513
  // Custom tool
482
514
  printInfo(`Launching custom tool: ${toolConfig.displayName}`);
483
- await launchCustomAITool(toolConfig, {
515
+ launchResult = await launchCustomAITool(toolConfig, {
484
516
  mode: mode === "resume"
485
517
  ? "resume"
486
518
  : mode === "continue"
@@ -491,6 +523,84 @@ export async function handleAIToolWorkflow(selectionResult) {
491
523
  sharedEnv,
492
524
  });
493
525
  }
526
+ // Persist session with captured session ID (if any)
527
+ let finalSessionId = launchResult?.sessionId ??
528
+ resumeSessionId ??
529
+ null;
530
+ if (!finalSessionId && tool === "claude-code") {
531
+ try {
532
+ finalSessionId = (await findLatestClaudeSessionId(worktreePath)) ?? null;
533
+ }
534
+ catch {
535
+ finalSessionId = null;
536
+ }
537
+ }
538
+ const finishedAt = Date.now();
539
+ if (tool === "codex-cli") {
540
+ try {
541
+ const latest = await findLatestCodexSession({
542
+ since: launchStartedAt - 60_000,
543
+ until: finishedAt + 60_000,
544
+ preferClosestTo: finishedAt,
545
+ windowMs: 60 * 60 * 1000,
546
+ cwd: worktreePath,
547
+ });
548
+ if (latest) {
549
+ finalSessionId = latest.id;
550
+ }
551
+ }
552
+ catch {
553
+ // ignore fallback failure
554
+ }
555
+ }
556
+ else if (tool === "claude-code") {
557
+ try {
558
+ const latestClaude = await findLatestClaudeSession(worktreePath, {
559
+ since: launchStartedAt - 60_000,
560
+ until: finishedAt + 60_000,
561
+ preferClosestTo: finishedAt,
562
+ windowMs: 60 * 60 * 1000,
563
+ });
564
+ if (latestClaude) {
565
+ finalSessionId = latestClaude.id;
566
+ }
567
+ }
568
+ catch {
569
+ // ignore
570
+ }
571
+ }
572
+ else if (tool === "gemini-cli") {
573
+ try {
574
+ const latestGemini = await findLatestGeminiSession(worktreePath, {
575
+ since: launchStartedAt - 60_000,
576
+ until: finishedAt + 60_000,
577
+ preferClosestTo: finishedAt,
578
+ windowMs: 60 * 60 * 1000,
579
+ cwd: worktreePath,
580
+ });
581
+ if (latestGemini) {
582
+ finalSessionId = latestGemini.id;
583
+ }
584
+ }
585
+ catch {
586
+ // ignore
587
+ }
588
+ }
589
+ await saveSession({
590
+ lastWorktreePath: worktreePath,
591
+ lastBranch: branch,
592
+ lastUsedTool: tool,
593
+ toolLabel: toolConfig.displayName ?? tool,
594
+ mode,
595
+ model: model ?? null,
596
+ reasoningLevel: inferenceLevel ?? null,
597
+ skipPermissions: skipPermissions ?? null,
598
+ timestamp: Date.now(),
599
+ repositoryRoot: repoRoot,
600
+ lastSessionId: finalSessionId,
601
+ });
602
+ // Small buffer before returning to branch list to avoid abrupt screen swap
603
+ await new Promise((resolve) => setTimeout(resolve, 3000));
494
604
  printInfo("Session completed successfully. Returning to main menu...");
495
605
  return;
496
606
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/qwen.d.ts CHANGED
@@ -8,6 +8,9 @@ export declare function launchQwenCLI(worktreePath: string, options?: {
8
8
  extraArgs?: string[];
9
9
  envOverrides?: Record<string, string>;
10
10
  model?: string;
11
- }): Promise<void>;
11
+ sessionId?: string | null;
12
+ }): Promise<{
13
+ sessionId?: string | null;
14
+ }>;
12
15
  export declare function isQwenCLIAvailable(): Promise<boolean>;
13
16
  //# sourceMappingURL=qwen.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"qwen.d.ts","sourceRoot":"","sources":["../src/qwen.ts"],"names":[],"mappings":"AAOA,qBAAa,SAAU,SAAQ,KAAK;IAGzB,KAAK,CAAC,EAAE,OAAO;gBADtB,OAAO,EAAE,MAAM,EACR,KAAK,CAAC,EAAE,OAAO,YAAA;CAKzB;AAED,wBAAsB,aAAa,CACjC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IACP,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;CACX,GACL,OAAO,CAAC,IAAI,CAAC,CA0Jf;AAiBD,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAe3D"}
1
+ {"version":3,"file":"qwen.d.ts","sourceRoot":"","sources":["../src/qwen.ts"],"names":[],"mappings":"AAQA,qBAAa,SAAU,SAAQ,KAAK;IAGzB,KAAK,CAAC,EAAE,OAAO;gBADtB,OAAO,EAAE,MAAM,EACR,KAAK,CAAC,EAAE,OAAO,YAAA;CAKzB;AAED,wBAAsB,aAAa,CACjC,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE;IACP,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,CAAC;IACxC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,GACL,OAAO,CAAC;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CA2MxC;AAiBD,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAe3D"}
package/dist/qwen.js CHANGED
@@ -2,6 +2,7 @@ import { execa } from "execa";
2
2
  import chalk from "chalk";
3
3
  import { existsSync } from "fs";
4
4
  import { createChildStdio, getTerminalStreams } from "./utils/terminal.js";
5
+ import { findLatestQwenSessionId } from "./utils/session.js";
5
6
  const QWEN_CLI_PACKAGE = "@qwen-code/qwen-code@latest";
6
7
  export class QwenError extends Error {
7
8
  cause;
@@ -28,12 +29,19 @@ export async function launchQwenCLI(worktreePath, options = {}) {
28
29
  // Handle execution mode
29
30
  // Note: Qwen CLI doesn't have explicit continue/resume CLI options at startup.
30
31
  // Session management is done via /chat commands during interactive sessions.
32
+ const resumeSessionId = options.sessionId && options.sessionId.trim().length > 0
33
+ ? options.sessionId.trim()
34
+ : null;
31
35
  switch (options.mode) {
32
36
  case "continue":
33
- console.log(chalk.cyan(" â­ī¸ Starting session (use /chat resume in the CLI to continue)"));
37
+ console.log(chalk.cyan(resumeSessionId
38
+ ? ` â­ī¸ Starting session (then /chat resume ${resumeSessionId})`
39
+ : " â­ī¸ Starting session (use /chat resume in the CLI to continue)"));
34
40
  break;
35
41
  case "resume":
36
- console.log(chalk.cyan(" 🔄 Starting session (use /chat resume in the CLI to continue)"));
42
+ console.log(chalk.cyan(resumeSessionId
43
+ ? ` 🔄 Starting session (then /chat resume ${resumeSessionId})`
44
+ : " 🔄 Starting session (use /chat resume in the CLI to continue)"));
37
45
  break;
38
46
  case "normal":
39
47
  default:
@@ -49,6 +57,7 @@ export async function launchQwenCLI(worktreePath, options = {}) {
49
57
  if (options.extraArgs && options.extraArgs.length > 0) {
50
58
  args.push(...options.extraArgs);
51
59
  }
60
+ console.log(chalk.gray(` 📋 Args: ${args.join(" ")}`));
52
61
  terminal.exitRawMode();
53
62
  const baseEnv = {
54
63
  ...process.env,
@@ -58,10 +67,22 @@ export async function launchQwenCLI(worktreePath, options = {}) {
58
67
  // Auto-detect locally installed qwen command
59
68
  const hasLocalQwen = await isQwenCommandAvailable();
60
69
  try {
70
+ const execChild = async (child) => {
71
+ try {
72
+ await child;
73
+ }
74
+ catch (execError) {
75
+ // Treat SIGINT/SIGTERM as normal exit (user pressed Ctrl+C)
76
+ if (execError.signal === "SIGINT" || execError.signal === "SIGTERM") {
77
+ return;
78
+ }
79
+ throw execError;
80
+ }
81
+ };
61
82
  if (hasLocalQwen) {
62
83
  // Use locally installed qwen command
63
84
  console.log(chalk.green(" ✨ Using locally installed qwen command"));
64
- await execa("qwen", args, {
85
+ const child = execa("qwen", args, {
65
86
  cwd: worktreePath,
66
87
  shell: true,
67
88
  stdin: childStdio.stdin,
@@ -69,6 +90,7 @@ export async function launchQwenCLI(worktreePath, options = {}) {
69
90
  stderr: childStdio.stderr,
70
91
  env: baseEnv,
71
92
  });
93
+ await execChild(child);
72
94
  }
73
95
  else {
74
96
  // Fallback to bunx
@@ -78,7 +100,7 @@ export async function launchQwenCLI(worktreePath, options = {}) {
78
100
  console.log("");
79
101
  // Wait 2 seconds to let user read the message
80
102
  await new Promise((resolve) => setTimeout(resolve, 2000));
81
- await execa("bunx", [QWEN_CLI_PACKAGE, ...args], {
103
+ const child = execa("bunx", [QWEN_CLI_PACKAGE, ...args], {
82
104
  cwd: worktreePath,
83
105
  shell: true,
84
106
  stdin: childStdio.stdin,
@@ -86,11 +108,30 @@ export async function launchQwenCLI(worktreePath, options = {}) {
86
108
  stderr: childStdio.stderr,
87
109
  env: baseEnv,
88
110
  });
111
+ await execChild(child);
89
112
  }
90
113
  }
91
114
  finally {
92
115
  childStdio.cleanup();
93
116
  }
117
+ let capturedSessionId = null;
118
+ try {
119
+ capturedSessionId =
120
+ (await findLatestQwenSessionId(worktreePath)) ??
121
+ resumeSessionId ??
122
+ null;
123
+ }
124
+ catch {
125
+ capturedSessionId = resumeSessionId ?? null;
126
+ }
127
+ if (capturedSessionId) {
128
+ console.log(chalk.cyan(`\n 🆔 Session tag: ${capturedSessionId}`));
129
+ console.log(chalk.gray(` Resume in Qwen CLI: /chat resume ${capturedSessionId}`));
130
+ }
131
+ else {
132
+ console.log(chalk.yellow("\n â„šī¸ Could not determine Qwen session tag automatically."));
133
+ }
134
+ return capturedSessionId ? { sessionId: capturedSessionId } : {};
94
135
  }
95
136
  catch (error) {
96
137
  const hasLocalQwen = await isQwenCommandAvailable();
package/dist/qwen.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"qwen.js","sourceRoot":"","sources":["../src/qwen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qwen.js","sourceRoot":"","sources":["../src/qwen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,gBAAgB,GAAG,6BAA6B,CAAC;AAEvD,MAAM,OAAO,SAAU,SAAQ,KAAK;IAGzB;IAFT,YACE,OAAe,EACR,KAAe;QAEtB,KAAK,CAAC,OAAO,CAAC,CAAC;QAFR,UAAK,GAAL,KAAK,CAAU;QAGtB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,YAAoB,EACpB,UAOI,EAAE;IAEN,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IAEtC,IAAI,CAAC;QACH,oCAAoC;QACpC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,iCAAiC,YAAY,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,YAAY,EAAE,CAAC,CAAC,CAAC;QAEjE,MAAM,IAAI,GAAa,CAAC,iBAAiB,CAAC,CAAC;QAE3C,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,gBAAgB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC;QAED,wBAAwB;QACxB,+EAA+E;QAC/E,6EAA6E;QAC7E,MAAM,eAAe,GACnB,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;YACtD,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,EAAE;YAC1B,CAAC,CAAC,IAAI,CAAC;QACX,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,UAAU;gBACb,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,eAAe;oBACb,CAAC,CAAC,8CAA8C,eAAe,GAAG;oBAClE,CAAC,CAAC,mEAAmE,CACxE,CACF,CAAC;gBACF,MAAM;YACR,KAAK,QAAQ;gBACX,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CACR,eAAe;oBACb,CAAC,CAAC,6CAA6C,eAAe,GAAG;oBACjE,CAAC,CAAC,kEAAkE,CACvE,CACF,CAAC;gBACF,MAAM;YACR,KAAK,QAAQ,CAAC;YACd;gBACE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;gBACtD,MAAM;QACV,CAAC;QAED,sCAAsC;QACtC,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;YAC5B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,+CAA+C,CAAC,CAC9D,CAAC;QACJ,CAAC;QAED,oDAAoD;QACpD,IAAI,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzD,QAAQ,CAAC,WAAW,EAAE,CAAC;QAEvB,MAAM,OAAO,GAAG;YACd,GAAG,OAAO,CAAC,GAAG;YACd,GAAG,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,CAAC;SAChC,CAAC;QAEF,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;QAEtC,6CAA6C;QAC7C,MAAM,YAAY,GAAG,MAAM,sBAAsB,EAAE,CAAC;QAEpD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,KAAK,EAAE,KAAU,EAAE,EAAE;gBACrC,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC;gBACd,CAAC;gBAAC,OAAO,SAAc,EAAE,CAAC;oBACxB,4DAA4D;oBAC5D,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBACpE,OAAO;oBACT,CAAC;oBACD,MAAM,SAAS,CAAC;gBAClB,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,YAAY,EAAE,CAAC;gBACjB,qCAAqC;gBACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC,CAAC;gBACtE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE;oBAChC,GAAG,EAAE,YAAY;oBACjB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,GAAG,EAAE,OAAO;iBACN,CAAC,CAAC;gBACV,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;iBAAM,CAAC;gBACN,mBAAmB;gBACnB,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CACrE,CAAC;gBACF,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,iEAAiE,CAClE,CACF,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,2CAA2C,CAAC,CAAC,CAAC;gBACvE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,8CAA8C;gBAC9C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC1D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,GAAG,IAAI,CAAC,EAAE;oBACvD,GAAG,EAAE,YAAY;oBACjB,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,UAAU,CAAC,KAAK;oBACvB,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,MAAM,EAAE,UAAU,CAAC,MAAM;oBACzB,GAAG,EAAE,OAAO;iBACN,CAAC,CAAC;gBACV,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,CAAC;QAED,IAAI,iBAAiB,GAAkB,IAAI,CAAC;QAC5C,IAAI,CAAC;YACH,iBAAiB;gBACf,CAAC,MAAM,uBAAuB,CAAC,YAAY,CAAC,CAAC;oBAC7C,eAAe;oBACf,IAAI,CAAC;QACT,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,GAAG,eAAe,IAAI,IAAI,CAAC;QAC9C,CAAC;QAED,IAAI,iBAAiB,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,iBAAiB,EAAE,CAAC,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,IAAI,CAAC,uCAAuC,iBAAiB,EAAE,CAAC,CACvE,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CACV,8DAA8D,CAC/D,CACF,CAAC;QACJ,CAAC;QAED,OAAO,iBAAiB,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,YAAY,GAAG,MAAM,sBAAsB,EAAE,CAAC;QACpD,IAAI,YAAoB,CAAC;QAEzB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,YAAY,EAAE,CAAC;gBACjB,YAAY;oBACV,uEAAuE,CAAC;YAC5E,CAAC;iBAAM,CAAC;gBACN,YAAY;oBACV,sFAAsF,CAAC;YAC3F,CAAC;QACH,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,8BAA8B,KAAK,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;QAClF,CAAC;QAED,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC,CAAC;YAC/D,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,MAAM,CACV,4EAA4E,CAC7E,CACF,CAAC;gBACF,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,MAAM,CAAC,gDAAgD,CAAC,CAC/D,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,MAAM,CACV,2DAA2D,CAC5D,CACF,CAAC;gBACF,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,MAAM,CACV,+EAA+E,CAChF,CACF,CAAC;YACJ,CAAC;YACD,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,MAAM,CAAC,oDAAoD,CAAC,CACnE,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;YAAS,CAAC;QACT,QAAQ,CAAC,WAAW,EAAE,CAAC;IACzB,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,sBAAsB;IACnC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;QACjE,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;QACjC,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC5B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,8BAA8B,CAAC,CAAC,CAAC;YAC5D,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,IAAI,CACR,qEAAqE,CACtE,CACF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * Validates that a string is a properly formatted UUID session ID.
3
+ * @param id - The string to validate
4
+ * @returns true if the string is a valid UUID format
5
+ */
6
+ export declare function isValidUuidSessionId(id: string): boolean;
7
+ export interface CodexSessionInfo {
8
+ id: string;
9
+ mtime: number;
10
+ }
11
+ export interface GeminiSessionInfo {
12
+ id: string;
13
+ mtime: number;
14
+ }
15
+ export declare function findLatestCodexSession(options?: {
16
+ since?: number;
17
+ until?: number;
18
+ preferClosestTo?: number;
19
+ windowMs?: number;
20
+ cwd?: string | null;
21
+ }): Promise<CodexSessionInfo | null>;
22
+ export declare function findLatestCodexSessionId(options?: {
23
+ since?: number;
24
+ until?: number;
25
+ preferClosestTo?: number;
26
+ windowMs?: number;
27
+ cwd?: string | null;
28
+ }): Promise<string | null>;
29
+ export declare function waitForCodexSessionId(options: {
30
+ startedAt: number;
31
+ timeoutMs?: number;
32
+ pollIntervalMs?: number;
33
+ cwd?: string | null;
34
+ }): Promise<string | null>;
35
+ export declare function encodeClaudeProjectPath(cwd: string): string;
36
+ export declare function findLatestClaudeSessionId(cwd: string, options?: {
37
+ since?: number;
38
+ until?: number;
39
+ preferClosestTo?: number;
40
+ windowMs?: number;
41
+ }): Promise<string | null>;
42
+ export interface ClaudeSessionInfo {
43
+ id: string;
44
+ mtime: number;
45
+ }
46
+ export declare function findLatestClaudeSession(cwd: string, options?: {
47
+ since?: number;
48
+ until?: number;
49
+ preferClosestTo?: number;
50
+ windowMs?: number;
51
+ }): Promise<ClaudeSessionInfo | null>;
52
+ export declare function waitForClaudeSessionId(cwd: string, options?: {
53
+ timeoutMs?: number;
54
+ pollIntervalMs?: number;
55
+ since?: number;
56
+ until?: number;
57
+ preferClosestTo?: number;
58
+ windowMs?: number;
59
+ }): Promise<string | null>;
60
+ export declare function findLatestGeminiSession(_cwd: string, options?: {
61
+ since?: number;
62
+ until?: number;
63
+ preferClosestTo?: number;
64
+ windowMs?: number;
65
+ cwd?: string | null;
66
+ }): Promise<GeminiSessionInfo | null>;
67
+ export declare function findLatestGeminiSessionId(cwd: string, options?: {
68
+ since?: number;
69
+ until?: number;
70
+ preferClosestTo?: number;
71
+ windowMs?: number;
72
+ cwd?: string | null;
73
+ }): Promise<string | null>;
74
+ export declare function findLatestQwenSessionId(_cwd: string): Promise<string | null>;
75
+ /**
76
+ * Checks if a Claude session file exists for the given session ID and worktree path.
77
+ * @param sessionId - The session ID to check
78
+ * @param worktreePath - The worktree path (used to determine project encoding)
79
+ * @returns true if a session file exists for this ID
80
+ */
81
+ export declare function claudeSessionFileExists(sessionId: string, worktreePath: string): Promise<boolean>;
82
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/utils/session.ts"],"names":[],"mappings":"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"}