@kenkaiiii/ggcoder 5.68.1 → 5.70.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 (120) hide show
  1. package/dist/app-sidecar.js +37 -11
  2. package/dist/app-sidecar.js.map +1 -1
  3. package/dist/cli.js +17 -19
  4. package/dist/cli.js.map +1 -1
  5. package/dist/core/acceptance-checks.d.ts +48 -0
  6. package/dist/core/acceptance-checks.js +144 -0
  7. package/dist/core/acceptance-checks.js.map +1 -0
  8. package/dist/core/agent-session.d.ts +26 -0
  9. package/dist/core/agent-session.js +121 -5
  10. package/dist/core/agent-session.js.map +1 -1
  11. package/dist/core/agents.d.ts +6 -5
  12. package/dist/core/agents.js.map +1 -1
  13. package/dist/core/bundled-agents.js +1 -3
  14. package/dist/core/bundled-agents.js.map +1 -1
  15. package/dist/core/cache-diagnostics.d.ts +6 -0
  16. package/dist/core/cache-diagnostics.js +31 -0
  17. package/dist/core/cache-diagnostics.js.map +1 -1
  18. package/dist/core/cache-expiry.d.ts +87 -0
  19. package/dist/core/cache-expiry.js +111 -0
  20. package/dist/core/cache-expiry.js.map +1 -0
  21. package/dist/core/compaction/compactor.js +78 -48
  22. package/dist/core/compaction/compactor.js.map +1 -1
  23. package/dist/core/destructive-git-guard.d.ts +27 -0
  24. package/dist/core/destructive-git-guard.js +94 -54
  25. package/dist/core/destructive-git-guard.js.map +1 -1
  26. package/dist/core/injection-detect.d.ts +38 -0
  27. package/dist/core/injection-detect.js +232 -0
  28. package/dist/core/injection-detect.js.map +1 -0
  29. package/dist/core/mcp/client.d.ts +72 -0
  30. package/dist/core/mcp/client.js +264 -41
  31. package/dist/core/mcp/client.js.map +1 -1
  32. package/dist/core/mcp/store.d.ts +6 -1
  33. package/dist/core/mcp/store.js +12 -1
  34. package/dist/core/mcp/store.js.map +1 -1
  35. package/dist/core/mcp/types.d.ts +18 -0
  36. package/dist/core/model-unavailable.d.ts +14 -0
  37. package/dist/core/model-unavailable.js +23 -0
  38. package/dist/core/model-unavailable.js.map +1 -0
  39. package/dist/core/node-debugger.d.ts +148 -0
  40. package/dist/core/node-debugger.js +642 -0
  41. package/dist/core/node-debugger.js.map +1 -0
  42. package/dist/core/persistent-shell.d.ts +58 -6
  43. package/dist/core/persistent-shell.js +331 -49
  44. package/dist/core/persistent-shell.js.map +1 -1
  45. package/dist/core/process-manager.d.ts +14 -0
  46. package/dist/core/process-manager.js +61 -0
  47. package/dist/core/process-manager.js.map +1 -1
  48. package/dist/core/progress/git-xp.js +8 -14
  49. package/dist/core/progress/git-xp.js.map +1 -1
  50. package/dist/core/subagent-manager.d.ts +20 -5
  51. package/dist/core/subagent-manager.js +22 -8
  52. package/dist/core/subagent-manager.js.map +1 -1
  53. package/dist/core/subagent-receipt.d.ts +54 -0
  54. package/dist/core/subagent-receipt.js +276 -0
  55. package/dist/core/subagent-receipt.js.map +1 -0
  56. package/dist/core/subagent-turn-record.d.ts +2 -0
  57. package/dist/core/subagent-turn-record.js.map +1 -1
  58. package/dist/core/test-impact.d.ts +73 -0
  59. package/dist/core/test-impact.js +467 -0
  60. package/dist/core/test-impact.js.map +1 -0
  61. package/dist/core/thinking-level.d.ts +1 -1
  62. package/dist/core/thinking-level.js +1 -1
  63. package/dist/core/thinking-level.js.map +1 -1
  64. package/dist/core/verification-gate.d.ts +2 -0
  65. package/dist/core/verification-gate.js +4 -0
  66. package/dist/core/verification-gate.js.map +1 -1
  67. package/dist/core/verification-snapshot.js +3 -5
  68. package/dist/core/verification-snapshot.js.map +1 -1
  69. package/dist/core/workspace-guard.d.ts +18 -7
  70. package/dist/core/workspace-guard.js +227 -60
  71. package/dist/core/workspace-guard.js.map +1 -1
  72. package/dist/interactive.js +2 -1
  73. package/dist/interactive.js.map +1 -1
  74. package/dist/modes/subagent-worker-mode.js +34 -6
  75. package/dist/modes/subagent-worker-mode.js.map +1 -1
  76. package/dist/test-support/keep-alive.d.ts +14 -0
  77. package/dist/test-support/keep-alive.js +17 -0
  78. package/dist/test-support/keep-alive.js.map +1 -0
  79. package/dist/tools/bash.d.ts +10 -1
  80. package/dist/tools/bash.js +78 -7
  81. package/dist/tools/bash.js.map +1 -1
  82. package/dist/tools/debug.d.ts +54 -0
  83. package/dist/tools/debug.js +233 -0
  84. package/dist/tools/debug.js.map +1 -0
  85. package/dist/tools/index.d.ts +13 -2
  86. package/dist/tools/index.js +41 -6
  87. package/dist/tools/index.js.map +1 -1
  88. package/dist/tools/prompt-hints.js +2 -0
  89. package/dist/tools/prompt-hints.js.map +1 -1
  90. package/dist/tools/read.js +3 -2
  91. package/dist/tools/read.js.map +1 -1
  92. package/dist/tools/subagent-control.js +44 -8
  93. package/dist/tools/subagent-control.js.map +1 -1
  94. package/dist/tools/subagent-shared.d.ts +29 -8
  95. package/dist/tools/subagent-shared.js +45 -14
  96. package/dist/tools/subagent-shared.js.map +1 -1
  97. package/dist/tools/subagent.d.ts +8 -2
  98. package/dist/tools/subagent.js +28 -10
  99. package/dist/tools/subagent.js.map +1 -1
  100. package/dist/tools/task-output.js +3 -2
  101. package/dist/tools/task-output.js.map +1 -1
  102. package/dist/tools/tool-tiers.d.ts +2 -2
  103. package/dist/tools/tool-tiers.js +3 -2
  104. package/dist/tools/tool-tiers.js.map +1 -1
  105. package/dist/tools/truncate.d.ts +21 -0
  106. package/dist/tools/truncate.js +187 -0
  107. package/dist/tools/truncate.js.map +1 -1
  108. package/dist/tools/ui-adopt.js +2 -0
  109. package/dist/tools/ui-adopt.js.map +1 -1
  110. package/dist/utils/git.d.ts +77 -0
  111. package/dist/utils/git.js +285 -21
  112. package/dist/utils/git.js.map +1 -1
  113. package/dist/utils/github-ci.js +2 -1
  114. package/dist/utils/github-ci.js.map +1 -1
  115. package/dist/utils/github.js +11 -9
  116. package/dist/utils/github.js.map +1 -1
  117. package/dist/utils/process.d.ts +20 -0
  118. package/dist/utils/process.js +98 -0
  119. package/dist/utils/process.js.map +1 -1
  120. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"subagent-worker-mode.js","sourceRoot":"","sources":["../../src/modes/subagent-worker-mode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subagent-worker-mode.js","sourceRoot":"","sources":["../../src/modes/subagent-worker-mode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Body for a test fixture process that must stay running until a test kills
3
+ * it, yet must not outlive the test run itself.
4
+ *
5
+ * A bare `setInterval(() => {}, 1000)` runs forever: if the test runner is
6
+ * killed mid-test (Ctrl+C, an agent's timeout, a crashed worker), cleanup in
7
+ * `finally`/`afterEach` never runs and the fixture is orphaned for good. This
8
+ * one exits as soon as the owning test process is gone, which never changes
9
+ * a test's outcome because the owner is alive for the whole test.
10
+ *
11
+ * Contains no quotes, `$` or backslashes, so it can be embedded in a
12
+ * double-quoted shell argument or a JS string literal unchanged.
13
+ */
14
+ export declare function keepAliveWhileOwnerLives(ownerPid?: number): string;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Body for a test fixture process that must stay running until a test kills
3
+ * it, yet must not outlive the test run itself.
4
+ *
5
+ * A bare `setInterval(() => {}, 1000)` runs forever: if the test runner is
6
+ * killed mid-test (Ctrl+C, an agent's timeout, a crashed worker), cleanup in
7
+ * `finally`/`afterEach` never runs and the fixture is orphaned for good. This
8
+ * one exits as soon as the owning test process is gone, which never changes
9
+ * a test's outcome because the owner is alive for the whole test.
10
+ *
11
+ * Contains no quotes, `$` or backslashes, so it can be embedded in a
12
+ * double-quoted shell argument or a JS string literal unchanged.
13
+ */
14
+ export function keepAliveWhileOwnerLives(ownerPid = process.pid) {
15
+ return `setInterval(()=>{try{process.kill(${ownerPid},0)}catch{process.exit(0)}},1000);`;
16
+ }
17
+ //# sourceMappingURL=keep-alive.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"keep-alive.js","sourceRoot":"","sources":["../../src/test-support/keep-alive.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,wBAAwB,CAAC,WAAmB,OAAO,CAAC,GAAG;IACrE,OAAO,qCAAqC,QAAQ,oCAAoC,CAAC;AAC3F,CAAC"}
@@ -5,6 +5,13 @@ import { type ToolOperations } from "./operations.js";
5
5
  import { type ResolveShellOpts } from "../core/shell.js";
6
6
  import { type GetNetworkPolicy } from "../core/network-guard.js";
7
7
  import { type SandboxPolicy } from "../core/sandbox.js";
8
+ /**
9
+ * Background process id when a bash result reports that a foreground command
10
+ * outlived its default budget and was handed to the process manager. Such a
11
+ * command has no exit code yet: its outcome arrives later, like an explicit
12
+ * `run_in_background` run, so callers must not read the result as a failure.
13
+ */
14
+ export declare function autoBackgroundedId(result: string): string | undefined;
8
15
  /**
9
16
  * Render command output for the tool result. Over-limit output is compressed
10
17
  * (keeps errors + head/tail, collapses repeats) rather than blindly
@@ -26,5 +33,7 @@ declare const BashParams: z.ZodObject<{
26
33
  }, z.core.$strip>;
27
34
  export declare function createBashTool(cwd: string, processManager: ProcessManager, ops?: ToolOperations, planModeRef?: {
28
35
  current: boolean;
29
- }, shellOpts?: ResolveShellOpts, getNetworkPolicy?: GetNetworkPolicy, getSandboxPolicy?: () => SandboxPolicy): AgentTool<typeof BashParams>;
36
+ }, shellOpts?: ResolveShellOpts, getNetworkPolicy?: GetNetworkPolicy, getSandboxPolicy?: () => SandboxPolicy,
37
+ /** Default foreground budget; injectable so tests need not wait 120s. */
38
+ defaultTimeoutMs?: number): AgentTool<typeof BashParams>;
30
39
  export {};
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { killProcessTree } from "../utils/process.js";
3
- import { truncateTail, MAX_BYTES } from "./truncate.js";
3
+ import { truncateTail, MAX_BYTES, describeCompressed } from "./truncate.js";
4
4
  import { compressToolOutput } from "./compress.js";
5
5
  import { writeOverflow } from "./overflow.js";
6
6
  import { localOperations } from "./operations.js";
@@ -22,6 +22,18 @@ function sandboxAwareEnv(sandboxed) {
22
22
  return sandboxed ? { ...env, ...SANDBOX_ENV_PATCH } : env;
23
23
  }
24
24
  const DEFAULT_TIMEOUT = 120_000; // 120 seconds
25
+ const AUTO_BACKGROUND_RE = /^Still running after \d+(?:\.\d+)?s, so it was moved to the background\b/;
26
+ /**
27
+ * Background process id when a bash result reports that a foreground command
28
+ * outlived its default budget and was handed to the process manager. Such a
29
+ * command has no exit code yet: its outcome arrives later, like an explicit
30
+ * `run_in_background` run, so callers must not read the result as a failure.
31
+ */
32
+ export function autoBackgroundedId(result) {
33
+ if (!AUTO_BACKGROUND_RE.test(result))
34
+ return undefined;
35
+ return /^ID:\s*(\S+)$/m.exec(result)?.[1];
36
+ }
25
37
  const MAX_OUTPUT_BYTES = 10 * 1024 * 1024; // 10 MB — cap buffered output to prevent OOM
26
38
  /**
27
39
  * How long to keep collecting output after the shell exits while something it
@@ -75,7 +87,8 @@ export async function renderBashOutput(rawOutput) {
75
87
  ? ` Full output saved to ${overflowPath} — read it with offset/limit if needed.`
76
88
  : "";
77
89
  const c = compressToolOutput(rawOutput);
78
- return `[${c.notice}${overflowNotice}]\n${c.content}`;
90
+ const what = describeCompressed(rawOutput, c.content);
91
+ return `[${c.notice}${what ? ` ${what}` : ""}${overflowNotice}]\n${c.content}`;
79
92
  }
80
93
  const BashParams = z.object({
81
94
  command: z.string().describe("The bash command to execute"),
@@ -84,7 +97,8 @@ const BashParams = z.object({
84
97
  .int()
85
98
  .min(1000)
86
99
  .optional()
87
- .describe("Timeout in milliseconds (default: 120000)"),
100
+ .describe("Stop the command after this many milliseconds. Without it, a command still " +
101
+ "running after 120000ms moves to the background instead of being stopped."),
88
102
  run_in_background: z
89
103
  .boolean()
90
104
  .optional()
@@ -123,7 +137,9 @@ const BashParams = z.object({
123
137
  "notified automatically the instant one holds, instead of polling " +
124
138
  "task_output. Each condition fires once; exit always notifies regardless."),
125
139
  });
126
- export function createBashTool(cwd, processManager, ops = localOperations, planModeRef, shellOpts, getNetworkPolicy, getSandboxPolicy) {
140
+ export function createBashTool(cwd, processManager, ops = localOperations, planModeRef, shellOpts, getNetworkPolicy, getSandboxPolicy,
141
+ /** Default foreground budget; injectable so tests need not wait 120s. */
142
+ defaultTimeoutMs = DEFAULT_TIMEOUT) {
127
143
  // Lazily created on the first persist:true call; one session per tool
128
144
  // instance (i.e. per agent session), killed when the process exits.
129
145
  let sessionShell = null;
@@ -294,9 +310,16 @@ export function createBashTool(cwd, processManager, ops = localOperations, planM
294
310
  : undefined);
295
311
  const output = await renderBashOutput(res.output);
296
312
  const exitCode = res.exitCode === "TIMEOUT"
297
- ? `TIMEOUT (${timeoutMs ?? DEFAULT_TIMEOUT}ms) — session shell was reset; cd/env state is gone`
313
+ ? `TIMEOUT (${timeoutMs ?? DEFAULT_TIMEOUT}ms)` +
314
+ (res.shellKept
315
+ ? " — the command was stopped; the session shell kept its cwd/env"
316
+ : "")
298
317
  : String(res.exitCode);
299
- return annotateSandboxDenial(`Exit code: ${exitCode}\n${output}`, sessionSandboxed);
318
+ // The restart note sits right under the exit code so output truncation
319
+ // can never drop it.
320
+ const restartNote = sessionShell.takeRestartNote();
321
+ const note = restartNote ? `${restartNote}\n` : "";
322
+ return annotateSandboxDenial(`Exit code: ${exitCode}\n${note}${output}`, sessionSandboxed);
300
323
  }
301
324
  if (run_in_background) {
302
325
  let launch;
@@ -326,7 +349,7 @@ export function createBashTool(cwd, processManager, ops = localOperations, planM
326
349
  `Use task_output with id="${result.id}" to read output, ` +
327
350
  `task_send to type input/answer prompts, task_stop to stop it.`);
328
351
  }
329
- const effectiveTimeout = timeoutMs ?? DEFAULT_TIMEOUT;
352
+ const effectiveTimeout = timeoutMs ?? defaultTimeoutMs;
330
353
  // Cross-platform shell: bash on macOS/Linux, Git Bash on Windows (or
331
354
  // cmd.exe fallback), wrapped by the OS sandbox before any child starts.
332
355
  const shell = resolveShell(command, shellOpts);
@@ -373,8 +396,51 @@ export function createBashTool(cwd, processManager, ops = localOperations, planM
373
396
  child.stderr?.on("data", onData);
374
397
  let killed = false;
375
398
  let timedOut = false;
399
+ let backgrounded = false;
400
+ const startedAt = Date.now();
401
+ /**
402
+ * Hand a still-running command to the process manager instead of
403
+ * killing it, so a slow build or test run keeps going (same process,
404
+ * same cwd) while the agent moves on. Only for the default budget: an
405
+ * explicit `timeout` is the model saying when to give up. Returns
406
+ * false when adoption is not possible, leaving the kill path to run.
407
+ */
408
+ const moveToBackground = () => {
409
+ // The shell already exited and only leftovers hold the pipes; the
410
+ // drain path owns that case.
411
+ if (timeoutMs !== undefined || child.exitCode !== null || !child.pid)
412
+ return false;
413
+ child.stdout?.off("data", onData);
414
+ child.stderr?.off("data", onData);
415
+ let adopted;
416
+ try {
417
+ adopted = processManager.adopt(child, command, startedAt, Buffer.concat(chunks));
418
+ }
419
+ catch {
420
+ child.stdout?.on("data", onData);
421
+ child.stderr?.on("data", onData);
422
+ return false;
423
+ }
424
+ backgrounded = true;
425
+ context.signal.removeEventListener("abort", onAbort);
426
+ void (async () => {
427
+ const soFar = await renderBashOutput(Buffer.concat(chunks).toString("utf-8"));
428
+ resolve(`Still running after ${effectiveTimeout / 1000}s, so it was moved to the background ` +
429
+ `instead of being stopped. It keeps its working directory and output.\n` +
430
+ `ID: ${adopted.id}\n` +
431
+ `PID: ${adopted.pid}\n` +
432
+ `Log: ${adopted.logFile}\n` +
433
+ `You will be notified when it exits. Use task_output with id="${adopted.id}" ` +
434
+ `(wait_ms to block until it exits) to read output, task_stop to stop it. ` +
435
+ `Pass an explicit timeout to have a command stopped instead.\n` +
436
+ (soFar ? `Output so far:\n${soFar}` : "No output so far."));
437
+ })();
438
+ return true;
439
+ };
376
440
  // Timeout handling
377
441
  const timer = setTimeout(() => {
442
+ if (moveToBackground())
443
+ return;
378
444
  timedOut = true;
379
445
  killed = true;
380
446
  if (child.pid)
@@ -405,6 +471,9 @@ export function createBashTool(cwd, processManager, ops = localOperations, planM
405
471
  clearTimeout(timer);
406
472
  clearTimeout(drainTimer);
407
473
  context.signal.removeEventListener("abort", onAbort);
474
+ // The process manager owns an adopted command's exit.
475
+ if (backgrounded)
476
+ return;
408
477
  const rawOutput = Buffer.concat(chunks).toString("utf-8");
409
478
  let output = await renderBashOutput(rawOutput);
410
479
  if (outputCapped) {
@@ -440,6 +509,8 @@ export function createBashTool(cwd, processManager, ops = localOperations, planM
440
509
  resolve(annotateSandboxDenial(`Exit code: ${exitCode}\n${output}`, launch.sandboxed));
441
510
  });
442
511
  child.on("error", (err) => {
512
+ if (backgrounded)
513
+ return;
443
514
  clearTimeout(timer);
444
515
  clearTimeout(drainTimer);
445
516
  context.signal.removeEventListener("abort", onAbort);
@@ -1 +1 @@
1
- {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bash.js","sourceRoot":"","sources":["../../src/tools/bash.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ import { z } from "zod";
2
+ import type { AgentTool } from "@kenkaiiii/gg-agent";
3
+ import { NodeDebugSession } from "../core/node-debugger.js";
4
+ import type { SandboxPolicy } from "../core/sandbox.js";
5
+ import { type ToolOperations } from "./operations.js";
6
+ declare const DebugParams: z.ZodObject<{
7
+ action: z.ZodEnum<{
8
+ output: "output";
9
+ pause: "pause";
10
+ stop: "stop";
11
+ stack: "stack";
12
+ continue: "continue";
13
+ step_over: "step_over";
14
+ step_into: "step_into";
15
+ step_out: "step_out";
16
+ launch: "launch";
17
+ set_breakpoint: "set_breakpoint";
18
+ remove_breakpoint: "remove_breakpoint";
19
+ variables: "variables";
20
+ evaluate: "evaluate";
21
+ }>;
22
+ program: z.ZodOptional<z.ZodString>;
23
+ args: z.ZodOptional<z.ZodArray<z.ZodString>>;
24
+ node_args: z.ZodOptional<z.ZodArray<z.ZodString>>;
25
+ breakpoints: z.ZodOptional<z.ZodArray<z.ZodObject<{
26
+ file: z.ZodString;
27
+ line: z.ZodNumber;
28
+ condition: z.ZodOptional<z.ZodString>;
29
+ }, z.core.$strip>>>;
30
+ stop_on_entry: z.ZodOptional<z.ZodBoolean>;
31
+ pause_on_exceptions: z.ZodOptional<z.ZodEnum<{
32
+ none: "none";
33
+ all: "all";
34
+ uncaught: "uncaught";
35
+ }>>;
36
+ file: z.ZodOptional<z.ZodString>;
37
+ line: z.ZodOptional<z.ZodNumber>;
38
+ condition: z.ZodOptional<z.ZodString>;
39
+ breakpoint_id: z.ZodOptional<z.ZodString>;
40
+ frame: z.ZodOptional<z.ZodNumber>;
41
+ expression: z.ZodOptional<z.ZodString>;
42
+ timeout_ms: z.ZodOptional<z.ZodNumber>;
43
+ }, z.core.$strip>;
44
+ /** Holds the one live debug session of an agent session; `shutdown` on dispose. */
45
+ export declare class DebugManager {
46
+ private session;
47
+ get current(): NodeDebugSession | undefined;
48
+ replace(next: NodeDebugSession | undefined): boolean;
49
+ shutdown(): void;
50
+ }
51
+ export declare function createDebugTool(cwd: string, manager: DebugManager, ops?: ToolOperations, planModeRef?: {
52
+ current: boolean;
53
+ }, getSandboxPolicy?: () => SandboxPolicy): AgentTool<typeof DebugParams>;
54
+ export {};
@@ -0,0 +1,233 @@
1
+ import { z } from "zod";
2
+ import { NodeDebugSession } from "../core/node-debugger.js";
3
+ import { isPlanModeActive, planModeRestriction } from "../core/runtime-mode.js";
4
+ import { localOperations } from "./operations.js";
5
+ import { truncateTail } from "./truncate.js";
6
+ const DEFAULT_WAIT_MS = 15_000;
7
+ const MAX_WAIT_MS = 120_000;
8
+ const BreakpointSpec = z.object({
9
+ file: z.string().min(1),
10
+ line: z.number().int().positive(),
11
+ condition: z.string().optional().describe("JS expression; pause only when it is truthy"),
12
+ });
13
+ const DebugParams = z.object({
14
+ action: z
15
+ .enum([
16
+ "launch",
17
+ "set_breakpoint",
18
+ "remove_breakpoint",
19
+ "continue",
20
+ "step_over",
21
+ "step_into",
22
+ "step_out",
23
+ "pause",
24
+ "stack",
25
+ "variables",
26
+ "evaluate",
27
+ "output",
28
+ "stop",
29
+ ])
30
+ .describe("What to do. Every action that runs code returns where the program stopped."),
31
+ program: z.string().optional().describe("launch: script to run (.js/.mjs/.cjs/.ts)"),
32
+ args: z.array(z.string()).optional().describe("launch: arguments passed to the script"),
33
+ node_args: z
34
+ .array(z.string())
35
+ .optional()
36
+ .describe('launch: extra node flags, e.g. ["--test", "--test-isolation=none"]'),
37
+ breakpoints: z
38
+ .array(BreakpointSpec)
39
+ .max(50)
40
+ .optional()
41
+ .describe("launch: breakpoints armed before the first line runs"),
42
+ stop_on_entry: z.boolean().optional().describe("launch: stay paused on the first line"),
43
+ pause_on_exceptions: z
44
+ .enum(["none", "uncaught", "all"])
45
+ .optional()
46
+ .describe("launch: when to pause on a throw (default uncaught)"),
47
+ file: z.string().optional().describe("set_breakpoint: file path"),
48
+ line: z.number().int().positive().optional().describe("set_breakpoint: 1-based line"),
49
+ condition: z.string().optional().describe("set_breakpoint: JS condition"),
50
+ breakpoint_id: z.string().optional().describe("remove_breakpoint: id such as bp1"),
51
+ frame: z
52
+ .number()
53
+ .int()
54
+ .min(0)
55
+ .optional()
56
+ .describe("variables/evaluate: stack frame index (0 = innermost)"),
57
+ expression: z.string().optional().describe("evaluate: JS expression"),
58
+ timeout_ms: z
59
+ .number()
60
+ .int()
61
+ .min(100)
62
+ .max(MAX_WAIT_MS)
63
+ .optional()
64
+ .describe(`launch/continue/step/pause: how long to wait for a stop (default ${DEFAULT_WAIT_MS})`),
65
+ });
66
+ /** Holds the one live debug session of an agent session; `shutdown` on dispose. */
67
+ export class DebugManager {
68
+ session;
69
+ get current() {
70
+ return this.session;
71
+ }
72
+ replace(next) {
73
+ const replaced = this.session !== undefined && !this.session.hasExited;
74
+ this.session?.stop();
75
+ this.session = next;
76
+ return replaced;
77
+ }
78
+ shutdown() {
79
+ this.replace(undefined);
80
+ }
81
+ }
82
+ function describeStop(session, state, waitedMs) {
83
+ const parts = [];
84
+ if (state.kind === "paused") {
85
+ parts.push(session.pauseSummary());
86
+ const snippet = session.sourceSnippet();
87
+ if (snippet)
88
+ parts.push(snippet);
89
+ }
90
+ else if (state.kind === "exited") {
91
+ parts.push(`The program exited (code ${state.code ?? "unknown"}). The debug session is over.`);
92
+ }
93
+ else {
94
+ parts.push(`Still running after ${waitedMs / 1000}s with no breakpoint hit. ` +
95
+ "Use pause to stop it where it is, continue to keep waiting, or stop to end it.");
96
+ }
97
+ const output = session.readNewOutput();
98
+ if (output)
99
+ parts.push(`Program output:\n${truncateTail(output).content}`);
100
+ return parts.join("\n\n");
101
+ }
102
+ async function withLocals(session, text) {
103
+ if (!session.isPaused)
104
+ return text;
105
+ try {
106
+ return `${text}\n\nVariables:\n${await session.variables(0)}`;
107
+ }
108
+ catch {
109
+ return text;
110
+ }
111
+ }
112
+ function need(value, name, action) {
113
+ if (value === undefined)
114
+ throw new Error(`${action} needs \`${name}\``);
115
+ return value;
116
+ }
117
+ export function createDebugTool(cwd, manager, ops = localOperations, planModeRef, getSandboxPolicy) {
118
+ return {
119
+ name: "debug",
120
+ description: "Debug a Node.js program (JS, or TS run by Node's type stripping) with real breakpoints. " +
121
+ "Use it when a bug depends on runtime state: launch with breakpoints, read variables at the " +
122
+ "stop, step, and evaluate expressions in the paused frame — instead of adding prints and re-running. " +
123
+ "launch, continue, step_* and pause return where it stopped, the source around it and the " +
124
+ "local variables. It pauses on uncaught exceptions by default. One session at a time; " +
125
+ "launching again stops the previous program. To debug a node:test file, launch it with " +
126
+ 'node_args ["--test", "--test-isolation=none"]. Test runners that run tests in worker ' +
127
+ "processes (vitest, jest) do not reach breakpoints this way.",
128
+ parameters: DebugParams,
129
+ async execute(args, context) {
130
+ const waitMs = args.timeout_ms ?? DEFAULT_WAIT_MS;
131
+ const session = manager.current;
132
+ if (args.action === "launch") {
133
+ if (isPlanModeActive(planModeRef))
134
+ return planModeRestriction("debug launch");
135
+ const program = need(args.program, "program", "launch");
136
+ let next;
137
+ try {
138
+ next = await NodeDebugSession.launch({
139
+ cwd,
140
+ program,
141
+ ...(args.args && { args: args.args }),
142
+ ...(args.node_args && { nodeArgs: args.node_args }),
143
+ ...(args.breakpoints && { breakpoints: args.breakpoints }),
144
+ ...(args.pause_on_exceptions && { pauseOnExceptions: args.pause_on_exceptions }),
145
+ ...(getSandboxPolicy && { sandboxPolicy: getSandboxPolicy() }),
146
+ ops,
147
+ });
148
+ }
149
+ catch (error) {
150
+ return `Error: could not start the debugger: ${error.message}`;
151
+ }
152
+ const replaced = manager.replace(next);
153
+ // The first stop is always "Break on start", after breakpoints are armed.
154
+ let state = await next.waitForStop(waitMs, context.signal);
155
+ if (state.kind === "paused" && !args.stop_on_entry) {
156
+ state = await next.resume("continue", waitMs, context.signal);
157
+ }
158
+ const armed = next
159
+ .listBreakpoints()
160
+ .map((bp) => `${bp.id} ${bp.file}:${bp.line}`)
161
+ .join(", ");
162
+ const header = (replaced ? "Stopped the previous debug session.\n" : "") +
163
+ `Launched ${program} under the debugger.` +
164
+ (armed ? ` Breakpoints: ${armed}.` : "");
165
+ return withLocals(next, `${header}\n\n${describeStop(next, state, waitMs)}`);
166
+ }
167
+ if (!session)
168
+ return 'Error: no debug session. Start one with action "launch".';
169
+ if (args.action === "output") {
170
+ return session.readNewOutput() || "(no new output)";
171
+ }
172
+ if (args.action === "stop") {
173
+ manager.replace(undefined);
174
+ const output = session.readNewOutput();
175
+ return `Debug session stopped.${output ? `\n\nProgram output:\n${truncateTail(output).content}` : ""}`;
176
+ }
177
+ if (session.hasExited) {
178
+ return `Error: the program already exited (${describeStop(session, session.state(), 0)}). Launch it again.`;
179
+ }
180
+ try {
181
+ switch (args.action) {
182
+ case "set_breakpoint": {
183
+ const file = need(args.file, "file", "set_breakpoint");
184
+ const line = need(args.line, "line", "set_breakpoint");
185
+ const bp = await session.setBreakpoint(file, line, args.condition);
186
+ const where = bp.boundLines.length > 0
187
+ ? `bound at line ${bp.boundLines.join(", ")}`
188
+ : "pending until the file loads (check the path if it never hits)";
189
+ return `Breakpoint ${bp.id} set at ${file}:${line}, ${where}.`;
190
+ }
191
+ case "remove_breakpoint": {
192
+ const id = need(args.breakpoint_id, "breakpoint_id", "remove_breakpoint");
193
+ return (await session.removeBreakpoint(id))
194
+ ? `Removed ${id}.`
195
+ : `Error: no breakpoint ${id}. Set: ${session
196
+ .listBreakpoints()
197
+ .map((b) => b.id)
198
+ .join(", ") || "none"}.`;
199
+ }
200
+ case "continue":
201
+ case "step_over":
202
+ case "step_into":
203
+ case "step_out": {
204
+ if (!session.isPaused) {
205
+ return "Error: the program is running, not paused. Use pause first, or wait for a breakpoint.";
206
+ }
207
+ const state = await session.resume(args.action, waitMs, context.signal);
208
+ return withLocals(session, describeStop(session, state, waitMs));
209
+ }
210
+ case "pause": {
211
+ const state = await session.pause(waitMs, context.signal);
212
+ return withLocals(session, describeStop(session, state, waitMs));
213
+ }
214
+ case "stack":
215
+ if (!session.isPaused)
216
+ return "Error: the program is running; there is no stack to show.";
217
+ return session.stack();
218
+ case "variables":
219
+ if (!session.isPaused)
220
+ return "Error: the program is running; pause it first.";
221
+ return session.variables(args.frame ?? 0);
222
+ case "evaluate":
223
+ return session.evaluate(need(args.expression, "expression", "evaluate"), args.frame ?? 0);
224
+ }
225
+ }
226
+ catch (error) {
227
+ return `Error: ${error.message}`;
228
+ }
229
+ return "Error: unknown action";
230
+ },
231
+ };
232
+ }
233
+ //# sourceMappingURL=debug.js.map