@google/gemini-cli-core 0.1.17-nightly.250806.805114ae → 0.1.17-nightly.250809.f35921a7

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 (191) hide show
  1. package/README.md +10 -0
  2. package/dist/google-gemini-cli-core-0.1.17.tgz +0 -0
  3. package/dist/src/code_assist/converter.d.ts +2 -1
  4. package/dist/src/code_assist/converter.js +1 -1
  5. package/dist/src/code_assist/converter.js.map +1 -1
  6. package/dist/src/code_assist/converter.test.js +48 -1
  7. package/dist/src/code_assist/converter.test.js.map +1 -1
  8. package/dist/src/code_assist/server.test.js +4 -1
  9. package/dist/src/code_assist/server.test.js.map +1 -1
  10. package/dist/src/config/config.d.ts +19 -0
  11. package/dist/src/config/config.js +29 -1
  12. package/dist/src/config/config.js.map +1 -1
  13. package/dist/src/config/config.test.js +8 -0
  14. package/dist/src/config/config.test.js.map +1 -1
  15. package/dist/src/core/client.d.ts +0 -2
  16. package/dist/src/core/client.js +9 -84
  17. package/dist/src/core/client.js.map +1 -1
  18. package/dist/src/core/client.test.js +7 -2
  19. package/dist/src/core/client.test.js.map +1 -1
  20. package/dist/src/core/contentGenerator.js +3 -2
  21. package/dist/src/core/contentGenerator.js.map +1 -1
  22. package/dist/src/core/contentGenerator.test.js +3 -2
  23. package/dist/src/core/contentGenerator.test.js.map +1 -1
  24. package/dist/src/core/coreToolScheduler.d.ts +21 -8
  25. package/dist/src/core/coreToolScheduler.js +170 -61
  26. package/dist/src/core/coreToolScheduler.js.map +1 -1
  27. package/dist/src/core/coreToolScheduler.test.js +181 -37
  28. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  29. package/dist/src/core/geminiChat.d.ts +7 -6
  30. package/dist/src/core/geminiChat.js +43 -43
  31. package/dist/src/core/geminiChat.js.map +1 -1
  32. package/dist/src/core/loggingContentGenerator.d.ts +24 -0
  33. package/dist/src/core/loggingContentGenerator.js +89 -0
  34. package/dist/src/core/loggingContentGenerator.js.map +1 -0
  35. package/dist/src/core/nonInteractiveToolExecutor.js +20 -1
  36. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  37. package/dist/src/core/nonInteractiveToolExecutor.test.js +7 -31
  38. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  39. package/dist/src/core/subagent.d.ts +230 -0
  40. package/dist/src/core/subagent.js +447 -0
  41. package/dist/src/core/subagent.js.map +1 -0
  42. package/dist/src/core/subagent.test.d.ts +6 -0
  43. package/dist/src/core/subagent.test.js +515 -0
  44. package/dist/src/core/subagent.test.js.map +1 -0
  45. package/dist/src/core/turn.js +1 -0
  46. package/dist/src/core/turn.js.map +1 -1
  47. package/dist/src/core/turn.test.js +4 -0
  48. package/dist/src/core/turn.test.js.map +1 -1
  49. package/dist/src/ide/ide-client.d.ts +20 -1
  50. package/dist/src/ide/ide-client.js +136 -17
  51. package/dist/src/ide/ide-client.js.map +1 -1
  52. package/dist/src/ide/ideContext.d.ts +95 -0
  53. package/dist/src/ide/ideContext.js +45 -0
  54. package/dist/src/ide/ideContext.js.map +1 -1
  55. package/dist/src/services/loopDetectionService.js +10 -6
  56. package/dist/src/services/loopDetectionService.js.map +1 -1
  57. package/dist/src/services/loopDetectionService.test.js +139 -0
  58. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  59. package/dist/src/services/shellExecutionService.js +29 -9
  60. package/dist/src/services/shellExecutionService.js.map +1 -1
  61. package/dist/src/services/shellExecutionService.test.js +8 -0
  62. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  63. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +26 -2
  64. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +173 -51
  65. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  66. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +6 -0
  67. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +186 -0
  68. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -0
  69. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +5 -1
  70. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +8 -0
  71. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  72. package/dist/src/telemetry/loggers.test.circular.js +7 -2
  73. package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
  74. package/dist/src/telemetry/loggers.test.js +7 -2
  75. package/dist/src/telemetry/loggers.test.js.map +1 -1
  76. package/dist/src/telemetry/metrics.d.ts +3 -2
  77. package/dist/src/telemetry/metrics.js +7 -1
  78. package/dist/src/telemetry/metrics.js.map +1 -1
  79. package/dist/src/telemetry/metrics.test.js +50 -0
  80. package/dist/src/telemetry/metrics.test.js.map +1 -1
  81. package/dist/src/telemetry/tool-call-decision.d.ts +13 -0
  82. package/dist/src/telemetry/tool-call-decision.js +29 -0
  83. package/dist/src/telemetry/tool-call-decision.js.map +1 -0
  84. package/dist/src/telemetry/types.d.ts +4 -7
  85. package/dist/src/telemetry/types.js +17 -21
  86. package/dist/src/telemetry/types.js.map +1 -1
  87. package/dist/src/telemetry/uiTelemetry.d.ts +4 -1
  88. package/dist/src/telemetry/uiTelemetry.js +3 -1
  89. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  90. package/dist/src/telemetry/uiTelemetry.test.js +13 -2
  91. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  92. package/dist/src/test-utils/tools.d.ts +23 -0
  93. package/dist/src/test-utils/tools.js +41 -0
  94. package/dist/src/test-utils/tools.js.map +1 -0
  95. package/dist/src/tools/diffOptions.d.ts +2 -0
  96. package/dist/src/tools/diffOptions.js +28 -0
  97. package/dist/src/tools/diffOptions.js.map +1 -1
  98. package/dist/src/tools/diffOptions.test.d.ts +6 -0
  99. package/dist/src/tools/diffOptions.test.js +119 -0
  100. package/dist/src/tools/diffOptions.test.js.map +1 -0
  101. package/dist/src/tools/edit.d.ts +9 -33
  102. package/dist/src/tools/edit.js +143 -131
  103. package/dist/src/tools/edit.js.map +1 -1
  104. package/dist/src/tools/edit.test.js +117 -51
  105. package/dist/src/tools/edit.test.js.map +1 -1
  106. package/dist/src/tools/glob.d.ts +3 -10
  107. package/dist/src/tools/glob.js +85 -88
  108. package/dist/src/tools/glob.js.map +1 -1
  109. package/dist/src/tools/glob.test.js +22 -12
  110. package/dist/src/tools/glob.test.js.map +1 -1
  111. package/dist/src/tools/grep.d.ts +3 -35
  112. package/dist/src/tools/grep.js +111 -82
  113. package/dist/src/tools/grep.js.map +1 -1
  114. package/dist/src/tools/grep.test.js +40 -23
  115. package/dist/src/tools/grep.test.js.map +1 -1
  116. package/dist/src/tools/mcp-client.d.ts +14 -3
  117. package/dist/src/tools/mcp-client.js +82 -6
  118. package/dist/src/tools/mcp-client.js.map +1 -1
  119. package/dist/src/tools/mcp-client.test.js +337 -2
  120. package/dist/src/tools/mcp-client.test.js.map +1 -1
  121. package/dist/src/tools/memoryTool.d.ts +2 -2
  122. package/dist/src/tools/memoryTool.js +1 -0
  123. package/dist/src/tools/memoryTool.js.map +1 -1
  124. package/dist/src/tools/modifiable-tool.d.ts +8 -5
  125. package/dist/src/tools/modifiable-tool.js +4 -1
  126. package/dist/src/tools/modifiable-tool.js.map +1 -1
  127. package/dist/src/tools/modifiable-tool.test.js +3 -3
  128. package/dist/src/tools/modifiable-tool.test.js.map +1 -1
  129. package/dist/src/tools/read-file.d.ts +4 -6
  130. package/dist/src/tools/read-file.js +87 -39
  131. package/dist/src/tools/read-file.js.map +1 -1
  132. package/dist/src/tools/read-file.test.js +192 -130
  133. package/dist/src/tools/read-file.test.js.map +1 -1
  134. package/dist/src/tools/read-many-files.js +8 -2
  135. package/dist/src/tools/read-many-files.js.map +1 -1
  136. package/dist/src/tools/read-many-files.test.js +22 -11
  137. package/dist/src/tools/read-many-files.test.js.map +1 -1
  138. package/dist/src/tools/shell.js +6 -1
  139. package/dist/src/tools/shell.js.map +1 -1
  140. package/dist/src/tools/shell.test.js +21 -0
  141. package/dist/src/tools/shell.test.js.map +1 -1
  142. package/dist/src/tools/tool-error.d.ts +4 -0
  143. package/dist/src/tools/tool-error.js +4 -0
  144. package/dist/src/tools/tool-error.js.map +1 -1
  145. package/dist/src/tools/tool-registry.d.ts +11 -5
  146. package/dist/src/tools/tool-registry.js +19 -4
  147. package/dist/src/tools/tool-registry.js.map +1 -1
  148. package/dist/src/tools/tool-registry.test.js +3 -20
  149. package/dist/src/tools/tool-registry.test.js.map +1 -1
  150. package/dist/src/tools/tools.d.ts +140 -39
  151. package/dist/src/tools/tools.js +180 -10
  152. package/dist/src/tools/tools.js.map +1 -1
  153. package/dist/src/tools/tools.test.d.ts +6 -0
  154. package/dist/src/tools/tools.test.js +117 -0
  155. package/dist/src/tools/tools.test.js.map +1 -0
  156. package/dist/src/tools/write-file.d.ts +6 -2
  157. package/dist/src/tools/write-file.js +81 -15
  158. package/dist/src/tools/write-file.js.map +1 -1
  159. package/dist/src/tools/write-file.test.js +113 -8
  160. package/dist/src/tools/write-file.test.js.map +1 -1
  161. package/dist/src/utils/bfsFileSearch.test.js +28 -56
  162. package/dist/src/utils/bfsFileSearch.test.js.map +1 -1
  163. package/dist/src/utils/environmentContext.d.ts +21 -0
  164. package/dist/src/utils/environmentContext.js +90 -0
  165. package/dist/src/utils/environmentContext.js.map +1 -0
  166. package/dist/src/utils/environmentContext.test.d.ts +6 -0
  167. package/dist/src/utils/environmentContext.test.js +139 -0
  168. package/dist/src/utils/environmentContext.test.js.map +1 -0
  169. package/dist/src/utils/fileUtils.d.ts +7 -0
  170. package/dist/src/utils/fileUtils.js +15 -12
  171. package/dist/src/utils/fileUtils.js.map +1 -1
  172. package/dist/src/utils/fileUtils.test.js +6 -5
  173. package/dist/src/utils/fileUtils.test.js.map +1 -1
  174. package/dist/src/utils/filesearch/crawlCache.d.ts +1 -1
  175. package/dist/src/utils/filesearch/crawlCache.js +4 -1
  176. package/dist/src/utils/filesearch/crawlCache.js.map +1 -1
  177. package/dist/src/utils/filesearch/crawlCache.test.js +10 -0
  178. package/dist/src/utils/filesearch/crawlCache.test.js.map +1 -1
  179. package/dist/src/utils/filesearch/fileSearch.d.ts +2 -0
  180. package/dist/src/utils/filesearch/fileSearch.js +32 -7
  181. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  182. package/dist/src/utils/filesearch/fileSearch.test.js +139 -0
  183. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  184. package/dist/src/utils/memoryDiscovery.js +4 -1
  185. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  186. package/dist/src/utils/nextSpeakerChecker.js +2 -2
  187. package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
  188. package/dist/src/utils/nextSpeakerChecker.test.js +2 -2
  189. package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
  190. package/dist/tsconfig.tsbuildinfo +1 -1
  191. package/package.json +3 -1
@@ -5,10 +5,12 @@
5
5
  */
6
6
  import { describe, it, expect, vi, beforeEach } from 'vitest';
7
7
  import { UiTelemetryService } from './uiTelemetry.js';
8
- import { ToolCallEvent, ToolCallDecision, } from './types.js';
8
+ import { ToolCallDecision } from './tool-call-decision.js';
9
+ import { ToolCallEvent } from './types.js';
9
10
  import { EVENT_API_ERROR, EVENT_API_RESPONSE, EVENT_TOOL_CALL, } from './constants.js';
10
11
  import { ToolErrorType } from '../tools/tool-error.js';
11
12
  import { ToolConfirmationOutcome } from '../tools/tools.js';
13
+ import { MockTool } from '../test-utils/tools.js';
12
14
  const createFakeCompletedToolCall = (name, success, duration = 100, outcome, error) => {
13
15
  const request = {
14
16
  callId: `call_${name}_${Date.now()}`,
@@ -17,11 +19,13 @@ const createFakeCompletedToolCall = (name, success, duration = 100, outcome, err
17
19
  isClientInitiated: false,
18
20
  prompt_id: 'prompt-id-1',
19
21
  };
22
+ const tool = new MockTool(name);
20
23
  if (success) {
21
24
  return {
22
25
  status: 'success',
23
26
  request,
24
- tool: { name }, // Mock tool
27
+ tool,
28
+ invocation: tool.build({}),
25
29
  response: {
26
30
  callId: request.callId,
27
31
  responseParts: {
@@ -43,6 +47,7 @@ const createFakeCompletedToolCall = (name, success, duration = 100, outcome, err
43
47
  return {
44
48
  status: 'error',
45
49
  request,
50
+ tool,
46
51
  response: {
47
52
  callId: request.callId,
48
53
  responseParts: {
@@ -79,6 +84,7 @@ describe('UiTelemetryService', () => {
79
84
  [ToolCallDecision.ACCEPT]: 0,
80
85
  [ToolCallDecision.REJECT]: 0,
81
86
  [ToolCallDecision.MODIFY]: 0,
87
+ [ToolCallDecision.AUTO_ACCEPT]: 0,
82
88
  },
83
89
  byName: {},
84
90
  },
@@ -300,6 +306,7 @@ describe('UiTelemetryService', () => {
300
306
  [ToolCallDecision.ACCEPT]: 1,
301
307
  [ToolCallDecision.REJECT]: 0,
302
308
  [ToolCallDecision.MODIFY]: 0,
309
+ [ToolCallDecision.AUTO_ACCEPT]: 0,
303
310
  },
304
311
  });
305
312
  });
@@ -325,6 +332,7 @@ describe('UiTelemetryService', () => {
325
332
  [ToolCallDecision.ACCEPT]: 0,
326
333
  [ToolCallDecision.REJECT]: 1,
327
334
  [ToolCallDecision.MODIFY]: 0,
335
+ [ToolCallDecision.AUTO_ACCEPT]: 0,
328
336
  },
329
337
  });
330
338
  });
@@ -351,11 +359,13 @@ describe('UiTelemetryService', () => {
351
359
  [ToolCallDecision.ACCEPT]: 0,
352
360
  [ToolCallDecision.REJECT]: 0,
353
361
  [ToolCallDecision.MODIFY]: 0,
362
+ [ToolCallDecision.AUTO_ACCEPT]: 0,
354
363
  });
355
364
  expect(tools.byName['test_tool'].decisions).toEqual({
356
365
  [ToolCallDecision.ACCEPT]: 0,
357
366
  [ToolCallDecision.REJECT]: 0,
358
367
  [ToolCallDecision.MODIFY]: 0,
368
+ [ToolCallDecision.AUTO_ACCEPT]: 0,
359
369
  });
360
370
  });
361
371
  it('should aggregate multiple ToolCallEvents for the same tool', () => {
@@ -386,6 +396,7 @@ describe('UiTelemetryService', () => {
386
396
  [ToolCallDecision.ACCEPT]: 1,
387
397
  [ToolCallDecision.REJECT]: 1,
388
398
  [ToolCallDecision.MODIFY]: 0,
399
+ [ToolCallDecision.AUTO_ACCEPT]: 0,
389
400
  },
390
401
  });
391
402
  });
@@ -1 +1 @@
1
- {"version":3,"file":"uiTelemetry.test.js","sourceRoot":"","sources":["../../../src/telemetry/uiTelemetry.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"uiTelemetry.test.js","sourceRoot":"","sources":["../../../src/telemetry/uiTelemetry.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { BaseTool, ToolCallConfirmationDetails, ToolResult } from '../tools/tools.js';
7
+ import { Schema } from '@google/genai';
8
+ /**
9
+ * A highly configurable mock tool for testing purposes.
10
+ */
11
+ export declare class MockTool extends BaseTool<{
12
+ [key: string]: unknown;
13
+ }, ToolResult> {
14
+ executeFn: import("vitest").Mock<(...args: any[]) => any>;
15
+ shouldConfirm: boolean;
16
+ constructor(name?: string, displayName?: string, description?: string, params?: Schema);
17
+ execute(params: {
18
+ [key: string]: unknown;
19
+ }, _abortSignal: AbortSignal): Promise<ToolResult>;
20
+ shouldConfirmExecute(_params: {
21
+ [key: string]: unknown;
22
+ }, _abortSignal: AbortSignal): Promise<ToolCallConfirmationDetails | false>;
23
+ }
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { vi } from 'vitest';
7
+ import { BaseTool, Icon, } from '../tools/tools.js';
8
+ import { Type } from '@google/genai';
9
+ /**
10
+ * A highly configurable mock tool for testing purposes.
11
+ */
12
+ export class MockTool extends BaseTool {
13
+ executeFn = vi.fn();
14
+ shouldConfirm = false;
15
+ constructor(name = 'mock-tool', displayName, description = 'A mock tool for testing.', params = {
16
+ type: Type.OBJECT,
17
+ properties: { param: { type: Type.STRING } },
18
+ }) {
19
+ super(name, displayName ?? name, description, Icon.Hammer, params);
20
+ }
21
+ async execute(params, _abortSignal) {
22
+ const result = this.executeFn(params);
23
+ return (result ?? {
24
+ llmContent: `Tool ${this.name} executed successfully.`,
25
+ returnDisplay: `Tool ${this.name} executed successfully.`,
26
+ });
27
+ }
28
+ async shouldConfirmExecute(_params, _abortSignal) {
29
+ if (this.shouldConfirm) {
30
+ return {
31
+ type: 'exec',
32
+ title: `Confirm ${this.displayName}`,
33
+ command: this.name,
34
+ rootCommand: this.name,
35
+ onConfirm: async () => { },
36
+ };
37
+ }
38
+ return false;
39
+ }
40
+ }
41
+ //# sourceMappingURL=tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../src/test-utils/tools.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EACL,QAAQ,EACR,IAAI,GAGL,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAU,IAAI,EAAE,MAAM,eAAe,CAAC;AAE7C;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,QAAgD;IAC5E,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IACpB,aAAa,GAAG,KAAK,CAAC;IAEtB,YACE,IAAI,GAAG,WAAW,EAClB,WAAoB,EACpB,WAAW,GAAG,0BAA0B,EACxC,SAAiB;QACf,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE;KAC7C;QAED,KAAK,CAAC,IAAI,EAAE,WAAW,IAAI,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACrE,CAAC;IAED,KAAK,CAAC,OAAO,CACX,MAAkC,EAClC,YAAyB;QAEzB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACtC,OAAO,CACL,MAAM,IAAI;YACR,UAAU,EAAE,QAAQ,IAAI,CAAC,IAAI,yBAAyB;YACtD,aAAa,EAAE,QAAQ,IAAI,CAAC,IAAI,yBAAyB;SAC1D,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CACxB,OAAmC,EACnC,YAAyB;QAEzB,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,OAAO;gBACL,IAAI,EAAE,MAAe;gBACrB,KAAK,EAAE,WAAW,IAAI,CAAC,WAAW,EAAE;gBACpC,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,WAAW,EAAE,IAAI,CAAC,IAAI;gBACtB,SAAS,EAAE,KAAK,IAAI,EAAE,GAAE,CAAC;aAC1B,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
@@ -4,4 +4,6 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import * as Diff from 'diff';
7
+ import { DiffStat } from './tools.js';
7
8
  export declare const DEFAULT_DIFF_OPTIONS: Diff.PatchOptions;
9
+ export declare function getDiffStat(fileName: string, oldStr: string, aiStr: string, userStr: string): DiffStat;
@@ -3,8 +3,36 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ import * as Diff from 'diff';
6
7
  export const DEFAULT_DIFF_OPTIONS = {
7
8
  context: 3,
8
9
  ignoreWhitespace: true,
9
10
  };
11
+ export function getDiffStat(fileName, oldStr, aiStr, userStr) {
12
+ const countLines = (patch) => {
13
+ let added = 0;
14
+ let removed = 0;
15
+ patch.hunks.forEach((hunk) => {
16
+ hunk.lines.forEach((line) => {
17
+ if (line.startsWith('+')) {
18
+ added++;
19
+ }
20
+ else if (line.startsWith('-')) {
21
+ removed++;
22
+ }
23
+ });
24
+ });
25
+ return { added, removed };
26
+ };
27
+ const patch = Diff.structuredPatch(fileName, fileName, oldStr, aiStr, 'Current', 'Proposed', DEFAULT_DIFF_OPTIONS);
28
+ const { added: aiAddedLines, removed: aiRemovedLines } = countLines(patch);
29
+ const userPatch = Diff.structuredPatch(fileName, fileName, aiStr, userStr, 'Proposed', 'User', DEFAULT_DIFF_OPTIONS);
30
+ const { added: userAddedLines, removed: userRemovedLines } = countLines(userPatch);
31
+ return {
32
+ ai_added_lines: aiAddedLines,
33
+ ai_removed_lines: aiRemovedLines,
34
+ user_added_lines: userAddedLines,
35
+ user_removed_lines: userRemovedLines,
36
+ };
37
+ }
10
38
  //# sourceMappingURL=diffOptions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"diffOptions.js","sourceRoot":"","sources":["../../../src/tools/diffOptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,CAAC,MAAM,oBAAoB,GAAsB;IACrD,OAAO,EAAE,CAAC;IACV,gBAAgB,EAAE,IAAI;CACvB,CAAC"}
1
+ {"version":3,"file":"diffOptions.js","sourceRoot":"","sources":["../../../src/tools/diffOptions.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,MAAM,CAAC,MAAM,oBAAoB,GAAsB;IACrD,OAAO,EAAE,CAAC;IACV,gBAAgB,EAAE,IAAI;CACvB,CAAC;AAEF,MAAM,UAAU,WAAW,CACzB,QAAgB,EAChB,MAAc,EACd,KAAa,EACb,OAAe;IAEf,MAAM,UAAU,GAAG,CAAC,KAAsB,EAAE,EAAE;QAC5C,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAe,EAAE,EAAE;YACtC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;gBAClC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,KAAK,EAAE,CAAC;gBACV,CAAC;qBAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;IAC5B,CAAC,CAAC;IAEF,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAChC,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,KAAK,EACL,SAAS,EACT,UAAU,EACV,oBAAoB,CACrB,CAAC;IACF,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IAE3E,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CACpC,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,OAAO,EACP,UAAU,EACV,MAAM,EACN,oBAAoB,CACrB,CAAC;IACF,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,gBAAgB,EAAE,GACxD,UAAU,CAAC,SAAS,CAAC,CAAC;IAExB,OAAO;QACL,cAAc,EAAE,YAAY;QAC5B,gBAAgB,EAAE,cAAc;QAChC,gBAAgB,EAAE,cAAc;QAChC,kBAAkB,EAAE,gBAAgB;KACrC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};
@@ -0,0 +1,119 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { describe, expect, it } from 'vitest';
7
+ import { getDiffStat } from './diffOptions.js';
8
+ describe('getDiffStat', () => {
9
+ const fileName = 'test.txt';
10
+ it('should return 0 for all stats when there are no changes', () => {
11
+ const oldStr = 'line1\nline2\n';
12
+ const aiStr = 'line1\nline2\n';
13
+ const userStr = 'line1\nline2\n';
14
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
15
+ expect(diffStat).toEqual({
16
+ ai_added_lines: 0,
17
+ ai_removed_lines: 0,
18
+ user_added_lines: 0,
19
+ user_removed_lines: 0,
20
+ });
21
+ });
22
+ it('should correctly report AI additions', () => {
23
+ const oldStr = 'line1\nline2\n';
24
+ const aiStr = 'line1\nline2\nline3\n';
25
+ const userStr = 'line1\nline2\nline3\n';
26
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
27
+ expect(diffStat).toEqual({
28
+ ai_added_lines: 1,
29
+ ai_removed_lines: 0,
30
+ user_added_lines: 0,
31
+ user_removed_lines: 0,
32
+ });
33
+ });
34
+ it('should correctly report AI removals', () => {
35
+ const oldStr = 'line1\nline2\nline3\n';
36
+ const aiStr = 'line1\nline3\n';
37
+ const userStr = 'line1\nline3\n';
38
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
39
+ expect(diffStat).toEqual({
40
+ ai_added_lines: 0,
41
+ ai_removed_lines: 1,
42
+ user_added_lines: 0,
43
+ user_removed_lines: 0,
44
+ });
45
+ });
46
+ it('should correctly report AI modifications', () => {
47
+ const oldStr = 'line1\nline2\nline3\n';
48
+ const aiStr = 'line1\nline_two\nline3\n';
49
+ const userStr = 'line1\nline_two\nline3\n';
50
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
51
+ expect(diffStat).toEqual({
52
+ ai_added_lines: 1,
53
+ ai_removed_lines: 1,
54
+ user_added_lines: 0,
55
+ user_removed_lines: 0,
56
+ });
57
+ });
58
+ it('should correctly report user additions', () => {
59
+ const oldStr = 'line1\nline2\n';
60
+ const aiStr = 'line1\nline2\nline3\n';
61
+ const userStr = 'line1\nline2\nline3\nline4\n';
62
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
63
+ expect(diffStat).toEqual({
64
+ ai_added_lines: 1,
65
+ ai_removed_lines: 0,
66
+ user_added_lines: 1,
67
+ user_removed_lines: 0,
68
+ });
69
+ });
70
+ it('should correctly report user removals', () => {
71
+ const oldStr = 'line1\nline2\n';
72
+ const aiStr = 'line1\nline2\nline3\n';
73
+ const userStr = 'line1\nline2\n';
74
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
75
+ expect(diffStat).toEqual({
76
+ ai_added_lines: 1,
77
+ ai_removed_lines: 0,
78
+ user_added_lines: 0,
79
+ user_removed_lines: 1,
80
+ });
81
+ });
82
+ it('should correctly report user modifications', () => {
83
+ const oldStr = 'line1\nline2\n';
84
+ const aiStr = 'line1\nline2\nline3\n';
85
+ const userStr = 'line1\nline2\nline_three\n';
86
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
87
+ expect(diffStat).toEqual({
88
+ ai_added_lines: 1,
89
+ ai_removed_lines: 0,
90
+ user_added_lines: 1,
91
+ user_removed_lines: 1,
92
+ });
93
+ });
94
+ it('should handle complex changes from both AI and user', () => {
95
+ const oldStr = 'line1\nline2\nline3\nline4\n';
96
+ const aiStr = 'line_one\nline2\nline_three\nline4\n';
97
+ const userStr = 'line_one\nline_two\nline_three\nline4\nline5\n';
98
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
99
+ expect(diffStat).toEqual({
100
+ ai_added_lines: 2,
101
+ ai_removed_lines: 2,
102
+ user_added_lines: 2,
103
+ user_removed_lines: 1,
104
+ });
105
+ });
106
+ it('should report a single line modification as one addition and one removal', () => {
107
+ const oldStr = 'hello world';
108
+ const aiStr = 'hello universe';
109
+ const userStr = 'hello universe';
110
+ const diffStat = getDiffStat(fileName, oldStr, aiStr, userStr);
111
+ expect(diffStat).toEqual({
112
+ ai_added_lines: 1,
113
+ ai_removed_lines: 1,
114
+ user_added_lines: 0,
115
+ user_removed_lines: 0,
116
+ });
117
+ });
118
+ });
119
+ //# sourceMappingURL=diffOptions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"diffOptions.test.js","sourceRoot":"","sources":["../../../src/tools/diffOptions.test.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,10 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { BaseTool, ToolCallConfirmationDetails, ToolLocation, ToolResult } from './tools.js';
6
+ import { BaseDeclarativeTool, ToolInvocation, ToolResult } from './tools.js';
7
7
  import { Config } from '../config/config.js';
8
- import { ModifiableTool, ModifyContext } from './modifiable-tool.js';
8
+ import { ModifiableDeclarativeTool, ModifyContext } from './modifiable-tool.js';
9
+ export declare function applyReplacement(currentContent: string | null, oldString: string, newString: string, isNewFile: boolean): string;
9
10
  /**
10
11
  * Parameters for the Edit tool
11
12
  */
@@ -31,11 +32,15 @@ export interface EditToolParams {
31
32
  * Whether the edit was modified manually by the user.
32
33
  */
33
34
  modified_by_user?: boolean;
35
+ /**
36
+ * Initially proposed string.
37
+ */
38
+ ai_proposed_string?: string;
34
39
  }
35
40
  /**
36
41
  * Implementation of the Edit tool logic
37
42
  */
38
- export declare class EditTool extends BaseTool<EditToolParams, ToolResult> implements ModifiableTool<EditToolParams> {
43
+ export declare class EditTool extends BaseDeclarativeTool<EditToolParams, ToolResult> implements ModifiableDeclarativeTool<EditToolParams> {
39
44
  private readonly config;
40
45
  static readonly Name = "replace";
41
46
  constructor(config: Config);
@@ -45,35 +50,6 @@ export declare class EditTool extends BaseTool<EditToolParams, ToolResult> imple
45
50
  * @returns Error message string or null if valid
46
51
  */
47
52
  validateToolParams(params: EditToolParams): string | null;
48
- /**
49
- * Determines any file locations affected by the tool execution
50
- * @param params Parameters for the tool execution
51
- * @returns A list of such paths
52
- */
53
- toolLocations(params: EditToolParams): ToolLocation[];
54
- private _applyReplacement;
55
- /**
56
- * Calculates the potential outcome of an edit operation.
57
- * @param params Parameters for the edit operation
58
- * @returns An object describing the potential edit outcome
59
- * @throws File system errors if reading the file fails unexpectedly (e.g., permissions)
60
- */
61
- private calculateEdit;
62
- /**
63
- * Handles the confirmation prompt for the Edit tool in the CLI.
64
- * It needs to calculate the diff to show the user.
65
- */
66
- shouldConfirmExecute(params: EditToolParams, abortSignal: AbortSignal): Promise<ToolCallConfirmationDetails | false>;
67
- getDescription(params: EditToolParams): string;
68
- /**
69
- * Executes the edit operation with the given parameters.
70
- * @param params Parameters for the edit operation
71
- * @returns Result of the edit operation
72
- */
73
- execute(params: EditToolParams, signal: AbortSignal): Promise<ToolResult>;
74
- /**
75
- * Creates parent directories if they don't exist
76
- */
77
- private ensureParentDirectoriesExist;
53
+ protected createInvocation(params: EditToolParams): ToolInvocation<EditToolParams, ToolResult>;
78
54
  getModifyContext(_: AbortSignal): ModifyContext<EditToolParams>;
79
55
  }