@joeytheman/gemini-mcp-tool 2.2.0 → 2.3.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 (107) hide show
  1. package/README.md +10 -7
  2. package/dist/__tests__/agyModelSteps.test.d.ts +2 -0
  3. package/dist/__tests__/agyModelSteps.test.d.ts.map +1 -0
  4. package/dist/__tests__/agyModelSteps.test.js +58 -0
  5. package/dist/__tests__/agyModelSteps.test.js.map +1 -0
  6. package/dist/__tests__/capture-script.chromium.test.d.ts +2 -0
  7. package/dist/__tests__/capture-script.chromium.test.d.ts.map +1 -0
  8. package/dist/__tests__/capture-script.chromium.test.js +235 -0
  9. package/dist/__tests__/capture-script.chromium.test.js.map +1 -0
  10. package/dist/__tests__/layout-snippet.chromium.test.d.ts +2 -0
  11. package/dist/__tests__/layout-snippet.chromium.test.d.ts.map +1 -0
  12. package/dist/__tests__/layout-snippet.chromium.test.js +333 -0
  13. package/dist/__tests__/layout-snippet.chromium.test.js.map +1 -0
  14. package/dist/__tests__/layout-snippet.test.d.ts +2 -0
  15. package/dist/__tests__/layout-snippet.test.d.ts.map +1 -0
  16. package/dist/__tests__/layout-snippet.test.js +12 -0
  17. package/dist/__tests__/layout-snippet.test.js.map +1 -0
  18. package/dist/__tests__/live-pass.test.js +531 -7
  19. package/dist/__tests__/live-pass.test.js.map +1 -1
  20. package/dist/__tests__/screen-review.test.js +111 -2
  21. package/dist/__tests__/screen-review.test.js.map +1 -1
  22. package/dist/__tests__/server-progress.test.d.ts +2 -0
  23. package/dist/__tests__/server-progress.test.d.ts.map +1 -0
  24. package/dist/__tests__/server-progress.test.js +63 -0
  25. package/dist/__tests__/server-progress.test.js.map +1 -0
  26. package/dist/__tests__/server.test.js +1 -8
  27. package/dist/__tests__/server.test.js.map +1 -1
  28. package/dist/__tests__/simple-tools.test.js +8 -3
  29. package/dist/__tests__/simple-tools.test.js.map +1 -1
  30. package/dist/__tests__/tools.test.js +29 -1
  31. package/dist/__tests__/tools.test.js.map +1 -1
  32. package/dist/__tests__/utils/agyExecutor.test.js +176 -61
  33. package/dist/__tests__/utils/agyExecutor.test.js.map +1 -1
  34. package/dist/__tests__/utils/commandExecutor.test.js +155 -1
  35. package/dist/__tests__/utils/commandExecutor.test.js.map +1 -1
  36. package/dist/__tests__/utils/progressUpdates.test.d.ts +2 -0
  37. package/dist/__tests__/utils/progressUpdates.test.d.ts.map +1 -0
  38. package/dist/__tests__/utils/progressUpdates.test.js +62 -0
  39. package/dist/__tests__/utils/progressUpdates.test.js.map +1 -0
  40. package/dist/constants.d.ts +33 -10
  41. package/dist/constants.d.ts.map +1 -1
  42. package/dist/constants.js +42 -10
  43. package/dist/constants.js.map +1 -1
  44. package/dist/index.js +19 -94
  45. package/dist/index.js.map +1 -1
  46. package/dist/layoutCheckSnippet.generated.d.ts +2 -0
  47. package/dist/layoutCheckSnippet.generated.d.ts.map +1 -0
  48. package/dist/layoutCheckSnippet.generated.js +3 -0
  49. package/dist/layoutCheckSnippet.generated.js.map +1 -0
  50. package/dist/tools/ask-gemini.tool.d.ts.map +1 -1
  51. package/dist/tools/ask-gemini.tool.js +6 -5
  52. package/dist/tools/ask-gemini.tool.js.map +1 -1
  53. package/dist/tools/brainstorm.tool.d.ts.map +1 -1
  54. package/dist/tools/brainstorm.tool.js +2 -1
  55. package/dist/tools/brainstorm.tool.js.map +1 -1
  56. package/dist/tools/live-pass.tool.d.ts +24 -1
  57. package/dist/tools/live-pass.tool.d.ts.map +1 -1
  58. package/dist/tools/live-pass.tool.js +174 -52
  59. package/dist/tools/live-pass.tool.js.map +1 -1
  60. package/dist/tools/registry.d.ts +2 -2
  61. package/dist/tools/registry.d.ts.map +1 -1
  62. package/dist/tools/registry.js +2 -2
  63. package/dist/tools/registry.js.map +1 -1
  64. package/dist/tools/screen-review.tool.d.ts +3 -0
  65. package/dist/tools/screen-review.tool.d.ts.map +1 -1
  66. package/dist/tools/screen-review.tool.js +42 -8
  67. package/dist/tools/screen-review.tool.js.map +1 -1
  68. package/dist/tools/simple-tools.d.ts.map +1 -1
  69. package/dist/tools/simple-tools.js +6 -2
  70. package/dist/tools/simple-tools.js.map +1 -1
  71. package/dist/utils/agyExecutor.d.ts +9 -1
  72. package/dist/utils/agyExecutor.d.ts.map +1 -1
  73. package/dist/utils/agyExecutor.js +54 -48
  74. package/dist/utils/agyExecutor.js.map +1 -1
  75. package/dist/utils/agyModelSteps.d.ts +5 -0
  76. package/dist/utils/agyModelSteps.d.ts.map +1 -0
  77. package/dist/utils/agyModelSteps.js +33 -0
  78. package/dist/utils/agyModelSteps.js.map +1 -0
  79. package/dist/utils/artifactFile.d.ts +6 -0
  80. package/dist/utils/artifactFile.d.ts.map +1 -0
  81. package/dist/utils/artifactFile.js +55 -0
  82. package/dist/utils/artifactFile.js.map +1 -0
  83. package/dist/utils/captureScript.d.ts +24 -0
  84. package/dist/utils/captureScript.d.ts.map +1 -0
  85. package/dist/utils/captureScript.js +83 -0
  86. package/dist/utils/captureScript.js.map +1 -0
  87. package/dist/utils/commandExecutor.d.ts +7 -1
  88. package/dist/utils/commandExecutor.d.ts.map +1 -1
  89. package/dist/utils/commandExecutor.js +154 -22
  90. package/dist/utils/commandExecutor.js.map +1 -1
  91. package/dist/utils/gitCheckout.d.ts +14 -0
  92. package/dist/utils/gitCheckout.d.ts.map +1 -0
  93. package/dist/utils/gitCheckout.js +36 -0
  94. package/dist/utils/gitCheckout.js.map +1 -0
  95. package/dist/utils/layoutCheck.d.ts +58 -0
  96. package/dist/utils/layoutCheck.d.ts.map +1 -0
  97. package/dist/utils/layoutCheck.js +84 -0
  98. package/dist/utils/layoutCheck.js.map +1 -0
  99. package/dist/utils/logger.d.ts +0 -1
  100. package/dist/utils/logger.d.ts.map +1 -1
  101. package/dist/utils/logger.js +0 -6
  102. package/dist/utils/logger.js.map +1 -1
  103. package/dist/utils/progressUpdates.d.ts +14 -0
  104. package/dist/utils/progressUpdates.d.ts.map +1 -0
  105. package/dist/utils/progressUpdates.js +40 -0
  106. package/dist/utils/progressUpdates.js.map +1 -0
  107. package/package.json +13 -11
@@ -2,12 +2,14 @@ import { z } from 'zod';
2
2
  import * as fs from 'fs';
3
3
  import * as path from 'path';
4
4
  import { formatZodIssues } from './registry.js';
5
- import { deniedActionsSummary, executeAgyJson, formatAgyUsageLine, formatConversationLine, toAgyJsonSchema, } from '../utils/agyExecutor.js';
5
+ import { deniedActionsSummary, executeAgyJson, formatAgyUsageLine, formatConversationLine, printTimeoutSchema, toAgyJsonSchema, } from '../utils/agyExecutor.js';
6
6
  import { bulletList, section, renderUnparsableEnvelope, formatWorkingTreeSection, failWithWorkingTree } from '../utils/agyReport.js';
7
7
  import { isWithin, resolveWorkingDirectory, realpathOfExistingPrefix } from '../utils/fileReferences.js';
8
8
  import { snapshotWorkingTree, diffWorkingTree } from '../utils/gitStatusGuard.js';
9
- import { ERROR_MESSAGES, LIVE_PASS, MODELS, MODEL_CHOICE_DESCRIPTION } from '../constants.js';
10
- const IMAGE_EXTENSIONS = /\.(png|jpe?g)$/i;
9
+ import { resolveMergeBase } from '../utils/gitCheckout.js';
10
+ import { hasImageSignature } from '../utils/artifactFile.js';
11
+ import { countAgyModelSteps, formatModelSteps } from '../utils/agyModelSteps.js';
12
+ import { ERROR_MESSAGES, LIVE_PASS, MODELS, MODEL_CHOICE_DESCRIPTION, PRINT_TIMEOUT_CEILING_NOTE } from '../constants.js';
11
13
  const WHITESPACE = /\s/;
12
14
  // ---------------------------------------------------------------- arguments
13
15
  function fileExists(candidate) {
@@ -26,8 +28,9 @@ export const screenReviewArgsSchema = z.object({
26
28
  images: z.array(z.string()).optional().describe("review mode only: absolute paths to the PNG/JPEG frames to judge. Each must exist."),
27
29
  changedRoutes: z.array(z.string()).optional().describe("review mode: repo-relative route/component files the diff touched (from `git diff --name-only`). Every changed screen file (under an `app/` directory) that no image shows makes the review REQUEST_CHANGES; a changed file under `components/` only warns."),
28
30
  routeFile: z.string().optional().describe("plan mode only: absolute path to the route/screen source file to inventory. Must exist inside workingDirectory."),
31
+ baseRef: z.string().min(1).optional().describe("review mode only: the git ref the diff under review is based on, such as 'origin/main'. Resolved in code to its merge base with HEAD (the call fails when it does not resolve); Gemini may then run read-only `git diff <merge-base>...HEAD` and `git show <merge-base>:<path>` to judge severity by the branch's own diff. That needs yolo: true, because headless agy denies the shell otherwise. Without baseRef Gemini runs no git at all."),
29
32
  model: z.string().default(MODELS.MEDIUM).describe(`${MODEL_CHOICE_DESCRIPTION} Defaults to '${MODELS.MEDIUM}'.`),
30
- printTimeout: z.string().default(LIVE_PASS.SCREEN_REVIEW_PRINT_TIMEOUT).describe("agy --print-timeout for the review."),
33
+ printTimeout: printTimeoutSchema.default(LIVE_PASS.SCREEN_REVIEW_PRINT_TIMEOUT).describe(`agy --print-timeout for the review. ${PRINT_TIMEOUT_CEILING_NOTE}`),
31
34
  yolo: z.boolean().default(false).describe("Pass --dangerously-skip-permissions. Defaults to false because a review only reads. Set it to true when the instructions ask Gemini to read repository files that are not passed as images: it reaches for a shell to do that, headless agy denies the shell, and the call then fails naming the denied action."),
32
35
  conversationId: z.string().min(1).optional().describe("Resume a previous review so round 2 keeps round 1's visual analysis."),
33
36
  }).superRefine((value, ctx) => {
@@ -49,7 +52,7 @@ export const screenReviewArgsSchema = z.object({
49
52
  else if (!fileExists(image)) {
50
53
  ctx.addIssue({ code: 'custom', message: `${ERROR_MESSAGES.SCREEN_REVIEW_IMAGE_MISSING}: ${image}`, path: ['images', index] });
51
54
  }
52
- else if (!IMAGE_EXTENSIONS.test(image)) {
55
+ else if (!hasImageSignature(image)) {
53
56
  ctx.addIssue({ code: 'custom', message: `image must be a PNG or JPEG: ${image}`, path: ['images', index] });
54
57
  }
55
58
  });
@@ -58,6 +61,9 @@ export const screenReviewArgsSchema = z.object({
58
61
  if (value.images) {
59
62
  ctx.addIssue({ code: 'custom', message: 'images is review mode only', path: ['images'] });
60
63
  }
64
+ if (value.baseRef !== undefined) {
65
+ ctx.addIssue({ code: 'custom', message: 'baseRef is review mode only', path: ['baseRef'] });
66
+ }
61
67
  const routeFile = value.routeFile;
62
68
  if (!routeFile || !path.isAbsolute(routeFile) || !fileExists(routeFile)) {
63
69
  ctx.addIssue({ code: 'custom', message: ERROR_MESSAGES.SCREEN_REVIEW_ROUTE_FILE, path: ['routeFile'] });
@@ -122,6 +128,21 @@ const SCHEMA_TEXT = {
122
128
  plan: JSON.stringify(SCREEN_PLAN_RESULT_JSON_SCHEMA),
123
129
  };
124
130
  // ------------------------------------------------------------------- prompt
131
+ function readingSection(config) {
132
+ const routeFile = config.mode === 'plan' ? 'the route file above' : 'the route file each image shows';
133
+ const git = config.mode === 'review' && config.mergeBase
134
+ ? `The diff under review is ${config.mergeBase}...HEAD (${config.mergeBase} is the merge base of the caller's base ref and HEAD, resolved for you). Severity follows that diff: you may run read-only \`git diff ${config.mergeBase}...HEAD\`, optionally with \`--name-only\` and \`-- <paths>\`, and \`git show ${config.mergeBase}:<path>\`. No other git command.`
135
+ : 'Never run git.';
136
+ return `## Reading code (bounded)
137
+ Read only the code the checklist needs as evidence, and only the lines you need:
138
+ - ${routeFile}, and the components and UI primitives it renders;
139
+ - the changed files listed above or named in the context;
140
+ - the producer lines (serializers, services, hooks) behind a capability or viewer-scoped field the checklist asks about;
141
+ - the rule files and READMEs the instructions cite, and the board or design files they name.
142
+ ${git}
143
+ Never run tests, Jest, npm or any package script. Never read node_modules, release notes or changelog fragments. Never re-read the file the instructions came from: they are above, verbatim.
144
+ `;
145
+ }
125
146
  export function buildScreenReviewPrompt(config) {
126
147
  // The heading is explicit and always present: a reviewer checklist that files
127
148
  // "no composition contract" as a finding must be able to see that one WAS
@@ -137,7 +158,9 @@ Read this route file and inventory the actions it exposes. There is no screensho
137
158
 
138
159
  ## Instructions
139
160
  ${config.instructions}
140
- ${contextSection}## Contract
161
+ ${contextSection}
162
+ ${readingSection({ mode: 'plan' })}
163
+ ## Contract
141
164
  - Cover this route only. Do not wander into other routes or shared components except to name the primitive a control should use.
142
165
  - Every control that is visible or reachable on this route gets a row, including ones hidden behind a menu.
143
166
  - Your answer is ONLY the schema JSON. No prose before or after it, no markdown fences.`;
@@ -155,7 +178,9 @@ ${imageRefs}
155
178
 
156
179
  ## Instructions
157
180
  ${config.instructions}
158
- ${contextSection}${changedSection}## Contract
181
+ ${contextSection}${changedSection}
182
+ ${readingSection({ mode: 'review', mergeBase: config.mergeBase })}
183
+ ## Contract
159
184
  - Enumerate what is in each image (every control, label and region) BEFORE judging it. Fill "inventory" first.
160
185
  - Set each screen's "route_file" to the repo-relative path of the route or screen source file that image shows, choosing from the changed files above when one of them fits. Use "" only when you genuinely cannot tell — the caller uses this to check that every changed screen has a screenshot.
161
186
  - Each finding's "observed" clause describes what the image shows; "rule" cites the rule it breaks.
@@ -257,6 +282,7 @@ export function formatScreenReviewReport(input) {
257
282
  parts.push(formatConversationLine(envelope.conversation_id));
258
283
  parts.push(headline);
259
284
  parts.push(formatAgyUsageLine(envelope));
285
+ parts.push(formatModelSteps(input.modelSteps));
260
286
  parts.push(section('Why', bulletList(decision.reasons)));
261
287
  if (decision.coverage.length > 0) {
262
288
  parts.push(section('Screenshot coverage', decision.coverage
@@ -343,13 +369,18 @@ export const screenReviewTool = {
343
369
  readOnlyHint: true,
344
370
  openWorldHint: true,
345
371
  },
346
- execute: async (args, onProgress) => {
372
+ execute: async (args, onProgress, signal) => {
347
373
  const input = screenReviewArgsSchema.parse(args);
348
374
  const workingDirectory = resolveWorkingDirectory(input.workingDirectory);
349
375
  const isPlan = input.mode === 'plan';
350
376
  // agy resolves an @reference only under a workspace directory, so every
351
377
  // image's parent has to be added explicitly.
352
378
  const imageDirs = [...new Set((input.images ?? []).map(image => path.dirname(image)))];
379
+ const mergeBase = input.baseRef === undefined
380
+ ? undefined
381
+ : await resolveMergeBase(workingDirectory, input.baseRef).catch((error) => {
382
+ throw new Error(`${ERROR_MESSAGES.SCREEN_REVIEW_BASE_REF}: '${input.baseRef}'. ${error.message}`);
383
+ });
353
384
  const before = input.yolo ? await snapshotWorkingTree(workingDirectory) : null;
354
385
  const afterWorkingTree = async () => diffWorkingTree(before, input.yolo ? await snapshotWorkingTree(workingDirectory) : null);
355
386
  let envelope;
@@ -361,6 +392,7 @@ export const screenReviewTool = {
361
392
  images: input.images,
362
393
  routeFile: input.routeFile,
363
394
  changedRoutes: input.changedRoutes,
395
+ mergeBase,
364
396
  }), {
365
397
  model: input.model,
366
398
  yolo: input.yolo,
@@ -370,6 +402,7 @@ export const screenReviewTool = {
370
402
  cwd: workingDirectory,
371
403
  jsonSchema: isPlan ? SCHEMA_TEXT.plan : SCHEMA_TEXT.review,
372
404
  noCache: true,
405
+ signal,
373
406
  }, onProgress);
374
407
  }
375
408
  catch (error) {
@@ -409,6 +442,7 @@ export const screenReviewTool = {
409
442
  decision: deriveReviewVerdict(parsed.data, input.images ?? [], input.changedRoutes ?? []),
410
443
  deniedActions,
411
444
  workingTree,
445
+ modelSteps: envelope.conversation_id ? await countAgyModelSteps(envelope.conversation_id) : null,
412
446
  });
413
447
  },
414
448
  };
@@ -1 +1 @@
1
- {"version":3,"file":"screen-review.tool.js","sourceRoot":"","sources":["../../src/tools/screen-review.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"screen-review.tool.js","sourceRoot":"","sources":["../../src/tools/screen-review.tool.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"simple-tools.d.ts","sourceRoot":"","sources":["../../src/tools/simple-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,eAAO,MAAM,QAAQ,EAAE,WAmBtB,CAAC;AAIF,eAAO,MAAM,QAAQ,EAAE,WAgBtB,CAAC"}
1
+ {"version":3,"file":"simple-tools.d.ts","sourceRoot":"","sources":["../../src/tools/simple-tools.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAQ5C,eAAO,MAAM,QAAQ,EAAE,WAmBtB,CAAC;AAIF,eAAO,MAAM,QAAQ,EAAE,WAmBtB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import { executeCommand } from '../utils/commandExecutor.js';
3
+ import { AGY_LIMITS } from '../constants.js';
3
4
  const pingArgsSchema = z.object({
4
5
  prompt: z.string().default('').describe("Message to echo "),
5
6
  });
@@ -37,8 +38,11 @@ export const helpTool = {
37
38
  readOnlyHint: true,
38
39
  openWorldHint: true,
39
40
  },
40
- execute: async (args, onProgress) => {
41
- return executeCommand("agy", ["--help"], onProgress);
41
+ execute: async (args, onProgress, signal) => {
42
+ return executeCommand("agy", ["--help"], onProgress, undefined, {
43
+ killAfterMs: AGY_LIMITS.DEFAULT_CEILING_MS,
44
+ signal,
45
+ });
42
46
  }
43
47
  };
44
48
  //# sourceMappingURL=simple-tools.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"simple-tools.js","sourceRoot":"","sources":["../../src/tools/simple-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAE7D,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;CAC5D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAgB;IACnC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,cAAc;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,6CAA6C;KAC3D;IACD,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;KACrB;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC;QACvD,MAAM,IAAI,GAAG,OAAiB,CAAC;QAC/B,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEpC,MAAM,CAAC,MAAM,QAAQ,GAAgB;IACnC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,0BAA0B;IACvC,SAAS,EAAE,cAAc;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,0BAA0B;KACxC;IACD,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;KACpB;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;QAClC,OAAO,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,CAAC;IACvD,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"simple-tools.js","sourceRoot":"","sources":["../../src/tools/simple-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAC7D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,kBAAkB,CAAC;CAC5D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,QAAQ,GAAgB;IACnC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,MAAM;IACnB,SAAS,EAAE,cAAc;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,6CAA6C;KAC3D;IACD,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,IAAI;KACrB;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC;QACvD,MAAM,IAAI,GAAG,OAAiB,CAAC;QAC/B,UAAU,EAAE,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEpC,MAAM,CAAC,MAAM,QAAQ,GAAgB;IACnC,IAAI,EAAE,MAAM;IACZ,WAAW,EAAE,0BAA0B;IACvC,SAAS,EAAE,cAAc;IACzB,MAAM,EAAE;QACN,WAAW,EAAE,0BAA0B;KACxC;IACD,QAAQ,EAAE,QAAQ;IAClB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM;QACb,YAAY,EAAE,IAAI;QAClB,aAAa,EAAE,IAAI;KACpB;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE;QAC1C,OAAO,cAAc,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE;YAC9D,WAAW,EAAE,UAAU,CAAC,kBAAkB;YAC1C,MAAM;SACP,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -1,4 +1,4 @@
1
- import { type ZodType } from 'zod';
1
+ import { z, type ZodType } from 'zod';
2
2
  export interface AgyCLIOptions {
3
3
  model?: string;
4
4
  sandbox?: boolean;
@@ -17,6 +17,8 @@ export interface AgyCLIOptions {
17
17
  conversationId?: string;
18
18
  noCache?: boolean;
19
19
  cwd?: string;
20
+ /** Stops agy when the MCP request is cancelled. */
21
+ signal?: AbortSignal;
20
22
  }
21
23
  export interface AgyUsage {
22
24
  input_tokens?: number;
@@ -41,6 +43,12 @@ export interface AgyJsonEnvelope {
41
43
  usage?: AgyUsage;
42
44
  denied_actions?: AgyDeniedAction[];
43
45
  }
46
+ export declare const printTimeoutSchema: z.ZodString;
47
+ /**
48
+ * How long an agy process may run: its print timeout plus a margin, or the
49
+ * default ceiling when there is no positive timeout.
50
+ */
51
+ export declare function agyKillAfterMs(printTimeout?: string): number;
44
52
  /**
45
53
  * The conversation this call asked agy to resume, if any. `resume` with a bare
46
54
  * ID maps to the same `--conversation` flag as `conversationId`, so both must be
@@ -1 +1 @@
1
- {"version":3,"file":"agyExecutor.d.ts","sourceRoot":"","sources":["../../src/utils/agyExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agyExecutor.d.ts","sourceRoot":"","sources":["../../src/utils/agyExecutor.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,33 @@
1
1
  import { z } from 'zod';
2
2
  import { executeCommand } from './commandExecutor.js';
3
3
  import { Logger } from './logger.js';
4
- import { ERROR_MESSAGES, MODELS, CLI, AGY_INTERNAL, LIVE_PASS } from '../constants.js';
4
+ import { ERROR_MESSAGES, MODELS, CLI, AGY_INTERNAL, LIVE_PASS, AGY_LIMITS } from '../constants.js';
5
5
  import { parseChangeModeOutput, validateChangeModeEdits } from './changeModeParser.js';
6
6
  import { formatChangeModeResponse, summarizeChangeModeEdits } from './changeModeTranslator.js';
7
7
  import { chunkChangeModeEdits } from './changeModeChunker.js';
8
8
  import { cacheChunks, getChunks } from './chunkCache.js';
9
9
  import { generateCacheKey, getCachedResponse, cacheResponse, isCacheEnabled } from './responseCache.js';
10
10
  import { normalizeList, resolveFileReferences, isFilesystemRoot } from './fileReferences.js';
11
- import { recoverFromTranscript, isRecoverableEmptyOutput } from './agyTranscriptRecovery.js';
11
+ const DURATION_TERM = /(\d+(?:\.\d+)?)(ms|h|m|s)/g;
12
+ const DURATION_UNIT_MS = { ms: 1, s: 1000, m: 60_000, h: 3_600_000 };
13
+ const PRINT_TIMEOUT_PATTERN = new RegExp(`^(?:0|(?:${DURATION_TERM.source})+)$`);
14
+ export const printTimeoutSchema = z.string().regex(PRINT_TIMEOUT_PATTERN, ERROR_MESSAGES.INVALID_PRINT_TIMEOUT);
15
+ /** Milliseconds (0 is agy's "no limit"), or undefined for a value printTimeoutSchema rejects. */
16
+ function printTimeoutMs(printTimeout) {
17
+ if (!PRINT_TIMEOUT_PATTERN.test(printTimeout))
18
+ return undefined;
19
+ return [...printTimeout.matchAll(DURATION_TERM)].reduce((total, [, amount, unit]) => total + Number(amount) * DURATION_UNIT_MS[unit], 0);
20
+ }
21
+ /**
22
+ * How long an agy process may run: its print timeout plus a margin, or the
23
+ * default ceiling when there is no positive timeout.
24
+ */
25
+ export function agyKillAfterMs(printTimeout) {
26
+ const timeoutMs = printTimeoutMs(printTimeout ?? '') ?? 0;
27
+ return timeoutMs > 0 && timeoutMs <= Number.MAX_SAFE_INTEGER - AGY_LIMITS.CEILING_MARGIN_MS
28
+ ? timeoutMs + AGY_LIMITS.CEILING_MARGIN_MS
29
+ : AGY_LIMITS.DEFAULT_CEILING_MS;
30
+ }
12
31
  const AGY_STATUS_SUCCESS = 'SUCCESS';
13
32
  const AGY_STATUS_ERROR = 'ERROR';
14
33
  const PARSE_EXCERPT_CHARS = 200;
@@ -119,12 +138,11 @@ function buildAgyArgs(opts, prompt, refDirs) {
119
138
  if (opts.printTimeout) {
120
139
  args.push(CLI.FLAGS.PRINT_TIMEOUT, opts.printTimeout);
121
140
  }
122
- if (isJsonMode(opts)) {
123
- args.push(CLI.FLAGS.OUTPUT_FORMAT, CLI.DEFAULTS.OUTPUT_FORMAT_JSON);
124
- // The schema is passed inline (~2 KB); agy takes it as a flag value.
125
- if (opts.jsonSchema) {
126
- args.push(CLI.FLAGS.JSON_SCHEMA, opts.jsonSchema);
127
- }
141
+ // Every call reads its answer from the JSON envelope, whatever the caller asked for.
142
+ args.push(CLI.FLAGS.OUTPUT_FORMAT, CLI.DEFAULTS.OUTPUT_FORMAT_JSON);
143
+ // The schema is passed inline (~2 KB); agy takes it as a flag value.
144
+ if (opts.jsonSchema) {
145
+ args.push(CLI.FLAGS.JSON_SCHEMA, opts.jsonSchema);
128
146
  }
129
147
  args.push(...resolveConversationArgs(opts));
130
148
  args.push(CLI.FLAGS.PRINT, prompt);
@@ -235,8 +253,17 @@ export function toAgyJsonSchema(schema) {
235
253
  return rest;
236
254
  }
237
255
  /**
238
- * Validate a json-mode run before it is cached or returned. Throws for every
239
- * failure mode agy signals inside an exit-0 envelope.
256
+ * A resumed turn replays the previous turn's structured_output, so it only
257
+ * counts as this call's answer when this call passed a schema.
258
+ */
259
+ function hasAnswer(envelope, opts) {
260
+ const hasStructuredAnswer = Boolean(opts.jsonSchema) &&
261
+ envelope.structured_output !== undefined && envelope.structured_output !== null;
262
+ return Boolean(envelope.response?.trim()) || hasStructuredAnswer;
263
+ }
264
+ /**
265
+ * Validate a run before it is cached or returned. Throws for every failure
266
+ * mode agy signals inside an exit-0 envelope.
240
267
  */
241
268
  function verifyJsonEnvelope(stdout, opts) {
242
269
  if (stdout.trim() === AGY_INTERNAL.TIMEOUT_SENTINEL) {
@@ -253,12 +280,13 @@ function verifyJsonEnvelope(stdout, opts) {
253
280
  throw new Error(`${ERROR_MESSAGES.CONVERSATION_NOT_RESUMED} ${requested}; it returned ` +
254
281
  `${envelope.conversation_id || '(none)'}. The ID is unknown to this machine or workspace.`);
255
282
  }
256
- const hasContent = Boolean(envelope.response?.trim()) ||
257
- (envelope.structured_output !== undefined && envelope.structured_output !== null);
258
283
  const denied = deniedActionsSummary(envelope);
259
- if (!hasContent && denied) {
260
- throw new Error(`${ERROR_MESSAGES.AGY_DENIED_ACTIONS}: ${denied}`);
284
+ if (!hasAnswer(envelope, opts) && denied) {
285
+ // changeMode asks for edits back, so yolo (letting Gemini write the files) is the wrong remedy.
286
+ const message = opts.changeMode ? ERROR_MESSAGES.CHANGEMODE_DENIED_ACTIONS : ERROR_MESSAGES.AGY_DENIED_ACTIONS;
287
+ throw new Error(`${message}: ${denied}`);
261
288
  }
289
+ return envelope;
262
290
  }
263
291
  export async function executeAgyCLI(prompt, options, onProgress) {
264
292
  const opts = typeof options === 'string'
@@ -348,46 +376,24 @@ ${processedPrompt}
348
376
  processedPrompt = changeModeInstructions;
349
377
  }
350
378
  const args = buildAgyArgs(opts, processedPrompt, refDirs);
351
- const runStartMs = Date.now();
352
379
  try {
353
- const result = await executeCommand(CLI.COMMANDS.AGY, args, onProgress, opts.cwd);
354
- // json mode carries its own failure signalling in the envelope, so it is
355
- // verified here instead of going through transcript recovery.
380
+ const result = await executeCommand(CLI.COMMANDS.AGY, args, onProgress, opts.cwd, {
381
+ killAfterMs: agyKillAfterMs(opts.printTimeout),
382
+ signal: opts.signal,
383
+ });
384
+ const envelope = verifyJsonEnvelope(result, opts);
356
385
  if (isJsonMode(opts)) {
357
- verifyJsonEnvelope(result, opts);
358
- if (cacheKey)
386
+ if (cacheKey && hasAnswer(envelope, opts))
359
387
  cacheResponse(cacheKey, result);
360
388
  return result;
361
389
  }
362
- // agy can exit 0 with empty/timeout stdout while the real answer is only in
363
- // its transcript. Recover BEFORE caching or changeMode parsing.
364
- let finalResult = result;
365
- if (isRecoverableEmptyOutput(result)) {
366
- Logger.debug('agy returned empty/timeout output; attempting transcript recovery');
367
- const recovered = recoverFromTranscript({
368
- cwd: opts.cwd,
369
- conversationId: requestedConversationId(opts),
370
- runStartMs,
371
- });
372
- if (recovered) {
373
- finalResult = recovered;
374
- }
375
- else if (result.trim() === AGY_INTERNAL.TIMEOUT_SENTINEL) {
376
- // The timeout sentinel is never a real answer; fail loud.
377
- throw new Error(ERROR_MESSAGES.AGY_NO_OUTPUT);
378
- }
379
- else {
380
- // Genuinely empty output (e.g. a changeMode request the model decided
381
- // needs no edits). Preserve the legacy soft result rather than erroring.
382
- finalResult = '';
383
- }
384
- }
385
- // Never cache an empty result — it is not a useful answer and an empty
386
- // string would crash the size-bounded LRU (size 0).
387
- if (cacheKey && finalResult) {
388
- cacheResponse(cacheKey, finalResult);
390
+ const answer = (envelope.response ?? '').trim();
391
+ if (!answer) {
392
+ throw new Error(`${ERROR_MESSAGES.AGY_EMPTY_ANSWER} ${formatConversationLine(envelope.conversation_id ?? '')}`);
389
393
  }
390
- return finalResult;
394
+ if (cacheKey)
395
+ cacheResponse(cacheKey, answer);
396
+ return answer;
391
397
  }
392
398
  catch (error) {
393
399
  const errorMessage = error instanceof Error ? error.message : String(error);
@@ -1 +1 @@
1
- {"version":3,"file":"agyExecutor.js","sourceRoot":"","sources":["../../src/utils/agyExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agyExecutor.js","sourceRoot":"","sources":["../../src/utils/agyExecutor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare function agyConversationStore(conversationId: string, root?: string): string;
2
+ /** How many model steps Gemini took in a conversation, or null when agy's step store can't be read. */
3
+ export declare function countAgyModelSteps(conversationId: string, root?: string): Promise<number | null>;
4
+ export declare function formatModelSteps(steps: number | null, frameCount?: number): string;
5
+ //# sourceMappingURL=agyModelSteps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agyModelSteps.d.ts","sourceRoot":"","sources":["../../src/utils/agyModelSteps.ts"],"names":[],"mappings":"AAQA,wBAAgB,oBAAoB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,SAAyD,GAAG,MAAM,CAElI;AAED,uGAAuG;AACvG,wBAAsB,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAatG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAMlF"}
@@ -0,0 +1,33 @@
1
+ import { execFile } from 'child_process';
2
+ import * as os from 'os';
3
+ import * as path from 'path';
4
+ import { promisify } from 'util';
5
+ import { AGY_INTERNAL } from '../constants.js';
6
+ const execFileAsync = promisify(execFile);
7
+ export function agyConversationStore(conversationId, root = path.join(os.homedir(), ...AGY_INTERNAL.ROOT_SEGMENTS)) {
8
+ return path.join(root, AGY_INTERNAL.CONVERSATIONS_DIR, `${conversationId}${AGY_INTERNAL.CONVERSATION_STORE_EXT}`);
9
+ }
10
+ /** How many model steps Gemini took in a conversation, or null when agy's step store can't be read. */
11
+ export async function countAgyModelSteps(conversationId, root) {
12
+ if (!/^[0-9a-f-]+$/i.test(conversationId))
13
+ return null;
14
+ try {
15
+ const { stdout } = await execFileAsync('sqlite3', [`file:${encodeURI(agyConversationStore(conversationId, root))}?immutable=1`, `select count(*) from steps where step_type = ${AGY_INTERNAL.MODEL_STEP_TYPE};`], { timeout: 10_000 });
16
+ const count = Number.parseInt(stdout.trim(), 10);
17
+ return Number.isNaN(count) ? null : count;
18
+ }
19
+ catch {
20
+ return null;
21
+ }
22
+ }
23
+ export function formatModelSteps(steps, frameCount) {
24
+ if (steps === null)
25
+ return "Gemini steps: ? (agy's step store was unreadable)";
26
+ if (frameCount === undefined)
27
+ return `Gemini steps: ${steps}`;
28
+ if (frameCount === 0)
29
+ return `Gemini steps: ${steps}, no frames`;
30
+ const perFrame = Math.round((steps / frameCount) * 10) / 10;
31
+ return `Gemini steps: ${steps} (${perFrame} per frame, ${frameCount} frame${frameCount === 1 ? '' : 's'})`;
32
+ }
33
+ //# sourceMappingURL=agyModelSteps.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agyModelSteps.js","sourceRoot":"","sources":["../../src/utils/agyModelSteps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAE1C,MAAM,UAAU,oBAAoB,CAAC,cAAsB,EAAE,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,GAAG,YAAY,CAAC,aAAa,CAAC;IACxH,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,iBAAiB,EAAE,GAAG,cAAc,GAAG,YAAY,CAAC,sBAAsB,EAAE,CAAC,CAAC;AACpH,CAAC;AAED,uGAAuG;AACvG,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,cAAsB,EAAE,IAAa;IAC5E,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,OAAO,IAAI,CAAC;IACvD,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CACpC,SAAS,EACT,CAAC,QAAQ,SAAS,CAAC,oBAAoB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC,cAAc,EAAE,gDAAgD,YAAY,CAAC,eAAe,GAAG,CAAC,EAC9J,EAAE,OAAO,EAAE,MAAM,EAAE,CACpB,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QACjD,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,KAAoB,EAAE,UAAmB;IACxE,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,mDAAmD,CAAC;IAC/E,IAAI,UAAU,KAAK,SAAS;QAAE,OAAO,iBAAiB,KAAK,EAAE,CAAC;IAC9D,IAAI,UAAU,KAAK,CAAC;QAAE,OAAO,iBAAiB,KAAK,aAAa,CAAC;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC;IAC5D,OAAO,iBAAiB,KAAK,KAAK,QAAQ,eAAe,UAAU,SAAS,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;AAC7G,CAAC"}
@@ -0,0 +1,6 @@
1
+ export type ArtifactFileStatus = 'OK' | 'OUTSIDE' | 'MISSING' | 'EMPTY' | 'STALE';
2
+ export declare const IMAGE_FILE: RegExp;
3
+ export declare function hasImageSignature(file: string): boolean;
4
+ /** Whether a file a pass wrote is inside `artifactDir`, present, non-empty and written during this run. */
5
+ export declare function checkArtifactFile(absFile: string, artifactDir: string, runStartMs: number): ArtifactFileStatus;
6
+ //# sourceMappingURL=artifactFile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"artifactFile.d.ts","sourceRoot":"","sources":["../../src/utils/artifactFile.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,kBAAkB,GAAG,IAAI,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;AAElF,eAAO,MAAM,UAAU,QAAoB,CAAC;AAE5C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CA4BvD;AAED,2GAA2G;AAC3G,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAW9G"}