@office-ai/aioncli-core 0.8.1 → 0.18.5

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 (778) hide show
  1. package/dist/index.d.ts +8 -2
  2. package/dist/index.js +7 -2
  3. package/dist/index.js.map +1 -1
  4. package/dist/src/agents/codebase-investigator.d.ts +36 -1
  5. package/dist/src/agents/codebase-investigator.js +93 -34
  6. package/dist/src/agents/codebase-investigator.js.map +1 -1
  7. package/dist/src/agents/codebase-investigator.test.d.ts +6 -0
  8. package/dist/src/agents/codebase-investigator.test.js +35 -0
  9. package/dist/src/agents/codebase-investigator.test.js.map +1 -0
  10. package/dist/src/agents/executor.d.ts +37 -11
  11. package/dist/src/agents/executor.js +512 -150
  12. package/dist/src/agents/executor.js.map +1 -1
  13. package/dist/src/agents/executor.test.js +1188 -245
  14. package/dist/src/agents/executor.test.js.map +1 -1
  15. package/dist/src/agents/invocation.d.ts +5 -2
  16. package/dist/src/agents/invocation.js +4 -2
  17. package/dist/src/agents/invocation.js.map +1 -1
  18. package/dist/src/agents/invocation.test.js +9 -0
  19. package/dist/src/agents/invocation.test.js.map +1 -1
  20. package/dist/src/agents/registry.d.ts +6 -1
  21. package/dist/src/agents/registry.js +51 -4
  22. package/dist/src/agents/registry.js.map +1 -1
  23. package/dist/src/agents/registry.test.js +30 -16
  24. package/dist/src/agents/registry.test.js.map +1 -1
  25. package/dist/src/agents/subagent-tool-wrapper.d.ts +3 -1
  26. package/dist/src/agents/subagent-tool-wrapper.js +4 -3
  27. package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
  28. package/dist/src/agents/subagent-tool-wrapper.test.js +9 -4
  29. package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
  30. package/dist/src/agents/types.d.ts +37 -7
  31. package/dist/src/agents/types.js +2 -0
  32. package/dist/src/agents/types.js.map +1 -1
  33. package/dist/src/code_assist/codeAssist.js +1 -1
  34. package/dist/src/code_assist/codeAssist.test.d.ts +6 -0
  35. package/dist/src/code_assist/codeAssist.test.js +99 -0
  36. package/dist/src/code_assist/codeAssist.test.js.map +1 -0
  37. package/dist/src/code_assist/converter.d.ts +1 -0
  38. package/dist/src/code_assist/converter.js +1 -0
  39. package/dist/src/code_assist/converter.js.map +1 -1
  40. package/dist/src/code_assist/converter.test.js +19 -0
  41. package/dist/src/code_assist/converter.test.js.map +1 -1
  42. package/dist/src/code_assist/experiments/client_metadata.d.ts +12 -0
  43. package/dist/src/code_assist/experiments/client_metadata.js +50 -0
  44. package/dist/src/code_assist/experiments/client_metadata.js.map +1 -0
  45. package/dist/src/code_assist/experiments/client_metadata.test.d.ts +6 -0
  46. package/dist/src/code_assist/experiments/client_metadata.test.js +99 -0
  47. package/dist/src/code_assist/experiments/client_metadata.test.js.map +1 -0
  48. package/dist/src/code_assist/experiments/experiments.d.ts +17 -0
  49. package/dist/src/code_assist/experiments/experiments.js +36 -0
  50. package/dist/src/code_assist/experiments/experiments.js.map +1 -0
  51. package/dist/src/code_assist/experiments/experiments.test.d.ts +6 -0
  52. package/dist/src/code_assist/experiments/experiments.test.js +92 -0
  53. package/dist/src/code_assist/experiments/experiments.test.js.map +1 -0
  54. package/dist/src/code_assist/experiments/flagNames.d.ts +13 -0
  55. package/dist/src/code_assist/experiments/flagNames.js +13 -0
  56. package/dist/src/code_assist/experiments/flagNames.js.map +1 -0
  57. package/dist/src/code_assist/experiments/types.d.ts +35 -0
  58. package/dist/src/code_assist/experiments/types.js +7 -0
  59. package/dist/src/code_assist/experiments/types.js.map +1 -0
  60. package/dist/src/code_assist/oauth-credential-storage.js +6 -5
  61. package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
  62. package/dist/src/code_assist/oauth-credential-storage.test.js +65 -3
  63. package/dist/src/code_assist/oauth-credential-storage.test.js.map +1 -1
  64. package/dist/src/code_assist/oauth2.d.ts +2 -2
  65. package/dist/src/code_assist/oauth2.js +161 -93
  66. package/dist/src/code_assist/oauth2.js.map +1 -1
  67. package/dist/src/code_assist/oauth2.test.js +103 -57
  68. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  69. package/dist/src/code_assist/server.d.ts +6 -4
  70. package/dist/src/code_assist/server.js +16 -8
  71. package/dist/src/code_assist/server.js.map +1 -1
  72. package/dist/src/code_assist/server.test.js +126 -28
  73. package/dist/src/code_assist/server.test.js.map +1 -1
  74. package/dist/src/code_assist/setup.d.ts +2 -2
  75. package/dist/src/code_assist/setup.js +4 -2
  76. package/dist/src/code_assist/setup.js.map +1 -1
  77. package/dist/src/code_assist/types.d.ts +1 -1
  78. package/dist/src/code_assist/types.js.map +1 -1
  79. package/dist/src/commands/extensions.d.ts +7 -0
  80. package/dist/src/commands/extensions.js +9 -0
  81. package/dist/src/commands/extensions.js.map +1 -0
  82. package/dist/src/commands/extensions.test.d.ts +6 -0
  83. package/dist/src/commands/extensions.test.js +19 -0
  84. package/dist/src/commands/extensions.test.js.map +1 -0
  85. package/dist/src/config/config.d.ts +169 -43
  86. package/dist/src/config/config.js +418 -79
  87. package/dist/src/config/config.js.map +1 -1
  88. package/dist/src/config/config.test.js +684 -49
  89. package/dist/src/config/config.test.js.map +1 -1
  90. package/dist/src/config/defaultModelConfigs.d.ts +7 -0
  91. package/dist/src/config/defaultModelConfigs.js +185 -0
  92. package/dist/src/config/defaultModelConfigs.js.map +1 -0
  93. package/dist/src/config/models.d.ts +23 -2
  94. package/dist/src/config/models.js +50 -7
  95. package/dist/src/config/models.js.map +1 -1
  96. package/dist/src/config/models.test.js +71 -10
  97. package/dist/src/config/models.test.js.map +1 -1
  98. package/dist/src/config/storage.d.ts +3 -1
  99. package/dist/src/config/storage.js +22 -2
  100. package/dist/src/config/storage.js.map +1 -1
  101. package/dist/src/config/storage.test.js +7 -6
  102. package/dist/src/config/storage.test.js.map +1 -1
  103. package/dist/src/confirmation-bus/message-bus.d.ts +3 -2
  104. package/dist/src/confirmation-bus/message-bus.js +9 -3
  105. package/dist/src/confirmation-bus/message-bus.js.map +1 -1
  106. package/dist/src/confirmation-bus/message-bus.test.js +30 -24
  107. package/dist/src/confirmation-bus/message-bus.test.js.map +1 -1
  108. package/dist/src/confirmation-bus/types.d.ts +13 -2
  109. package/dist/src/confirmation-bus/types.js +1 -0
  110. package/dist/src/confirmation-bus/types.js.map +1 -1
  111. package/dist/src/core/apiKeyCredentialStorage.d.ts +17 -0
  112. package/dist/src/core/apiKeyCredentialStorage.js +64 -0
  113. package/dist/src/core/apiKeyCredentialStorage.js.map +1 -0
  114. package/dist/src/core/apiKeyCredentialStorage.test.d.ts +6 -0
  115. package/dist/src/core/apiKeyCredentialStorage.test.js +71 -0
  116. package/dist/src/core/apiKeyCredentialStorage.test.js.map +1 -0
  117. package/dist/src/core/baseLlmClient.d.ts +4 -8
  118. package/dist/src/core/baseLlmClient.js +6 -11
  119. package/dist/src/core/baseLlmClient.js.map +1 -1
  120. package/dist/src/core/baseLlmClient.test.js +22 -27
  121. package/dist/src/core/baseLlmClient.test.js.map +1 -1
  122. package/dist/src/core/client.d.ts +12 -19
  123. package/dist/src/core/client.js +104 -206
  124. package/dist/src/core/client.js.map +1 -1
  125. package/dist/src/core/client.test.js +329 -452
  126. package/dist/src/core/client.test.js.map +1 -1
  127. package/dist/src/core/contentGenerator.d.ts +3 -2
  128. package/dist/src/core/contentGenerator.js +56 -41
  129. package/dist/src/core/contentGenerator.js.map +1 -1
  130. package/dist/src/core/contentGenerator.test.js +49 -1
  131. package/dist/src/core/contentGenerator.test.js.map +1 -1
  132. package/dist/src/core/coreToolScheduler.d.ts +8 -4
  133. package/dist/src/core/coreToolScheduler.js +348 -179
  134. package/dist/src/core/coreToolScheduler.js.map +1 -1
  135. package/dist/src/core/coreToolScheduler.test.js +575 -219
  136. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  137. package/dist/src/core/fakeContentGenerator.d.ts +33 -0
  138. package/dist/src/core/fakeContentGenerator.js +58 -0
  139. package/dist/src/core/fakeContentGenerator.js.map +1 -0
  140. package/dist/src/core/fakeContentGenerator.test.d.ts +6 -0
  141. package/dist/src/core/fakeContentGenerator.test.js +127 -0
  142. package/dist/src/core/fakeContentGenerator.test.js.map +1 -0
  143. package/dist/src/core/geminiChat.d.ts +23 -18
  144. package/dist/src/core/geminiChat.js +186 -108
  145. package/dist/src/core/geminiChat.js.map +1 -1
  146. package/dist/src/core/geminiChat.test.js +581 -270
  147. package/dist/src/core/geminiChat.test.js.map +1 -1
  148. package/dist/src/core/logger.d.ts +7 -2
  149. package/dist/src/core/logger.js +35 -27
  150. package/dist/src/core/logger.js.map +1 -1
  151. package/dist/src/core/logger.test.js +45 -29
  152. package/dist/src/core/logger.test.js.map +1 -1
  153. package/dist/src/core/loggingContentGenerator.d.ts +1 -0
  154. package/dist/src/core/loggingContentGenerator.js +113 -33
  155. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  156. package/dist/src/core/loggingContentGenerator.test.d.ts +6 -0
  157. package/dist/src/core/loggingContentGenerator.test.js +180 -0
  158. package/dist/src/core/loggingContentGenerator.test.js.map +1 -0
  159. package/dist/src/core/nonInteractiveToolExecutor.d.ts +3 -2
  160. package/dist/src/core/nonInteractiveToolExecutor.js +12 -7
  161. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  162. package/dist/src/core/nonInteractiveToolExecutor.test.js +12 -8
  163. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  164. package/dist/src/core/openaiContentGenerator.d.ts +15 -1
  165. package/dist/src/core/openaiContentGenerator.js +139 -22
  166. package/dist/src/core/openaiContentGenerator.js.map +1 -1
  167. package/dist/src/core/prompts.d.ts +2 -1
  168. package/dist/src/core/prompts.js +135 -154
  169. package/dist/src/core/prompts.js.map +1 -1
  170. package/dist/src/core/prompts.test.js +128 -189
  171. package/dist/src/core/prompts.test.js.map +1 -1
  172. package/dist/src/core/recordingContentGenerator.d.ts +18 -0
  173. package/dist/src/core/recordingContentGenerator.js +77 -0
  174. package/dist/src/core/recordingContentGenerator.js.map +1 -0
  175. package/dist/src/core/recordingContentGenerator.test.d.ts +6 -0
  176. package/dist/src/core/recordingContentGenerator.test.js +101 -0
  177. package/dist/src/core/recordingContentGenerator.test.js.map +1 -0
  178. package/dist/src/core/tokenLimits.test.d.ts +6 -0
  179. package/dist/src/core/tokenLimits.test.js +26 -0
  180. package/dist/src/core/tokenLimits.test.js.map +1 -0
  181. package/dist/src/core/turn.d.ts +23 -3
  182. package/dist/src/core/turn.js +18 -9
  183. package/dist/src/core/turn.js.map +1 -1
  184. package/dist/src/core/turn.test.js +98 -104
  185. package/dist/src/core/turn.test.js.map +1 -1
  186. package/dist/src/fallback/handler.js +60 -8
  187. package/dist/src/fallback/handler.js.map +1 -1
  188. package/dist/src/fallback/handler.test.js +132 -17
  189. package/dist/src/fallback/handler.test.js.map +1 -1
  190. package/dist/src/fallback/types.d.ts +1 -1
  191. package/dist/src/generated/git-commit.d.ts +2 -2
  192. package/dist/src/generated/git-commit.js +2 -2
  193. package/dist/src/generated/git-commit.js.map +1 -1
  194. package/dist/src/hooks/hookAggregator.d.ts +68 -0
  195. package/dist/src/hooks/hookAggregator.js +262 -0
  196. package/dist/src/hooks/hookAggregator.js.map +1 -0
  197. package/dist/src/hooks/hookAggregator.test.d.ts +6 -0
  198. package/dist/src/hooks/hookAggregator.test.js +387 -0
  199. package/dist/src/hooks/hookAggregator.test.js.map +1 -0
  200. package/dist/src/hooks/hookPlanner.d.ts +46 -0
  201. package/dist/src/hooks/hookPlanner.js +108 -0
  202. package/dist/src/hooks/hookPlanner.js.map +1 -0
  203. package/dist/src/hooks/hookPlanner.test.d.ts +6 -0
  204. package/dist/src/hooks/hookPlanner.test.js +255 -0
  205. package/dist/src/hooks/hookPlanner.test.js.map +1 -0
  206. package/dist/src/hooks/hookRegistry.d.ts +87 -0
  207. package/dist/src/hooks/hookRegistry.js +198 -0
  208. package/dist/src/hooks/hookRegistry.js.map +1 -0
  209. package/dist/src/hooks/hookRegistry.test.d.ts +6 -0
  210. package/dist/src/hooks/hookRegistry.test.js +341 -0
  211. package/dist/src/hooks/hookRegistry.test.js.map +1 -0
  212. package/dist/src/hooks/hookRunner.d.ts +42 -0
  213. package/dist/src/hooks/hookRunner.js +272 -0
  214. package/dist/src/hooks/hookRunner.js.map +1 -0
  215. package/dist/src/hooks/hookRunner.test.d.ts +6 -0
  216. package/dist/src/hooks/hookRunner.test.js +468 -0
  217. package/dist/src/hooks/hookRunner.test.js.map +1 -0
  218. package/dist/src/hooks/hookTranslator.d.ts +113 -0
  219. package/dist/src/hooks/hookTranslator.js +232 -0
  220. package/dist/src/hooks/hookTranslator.js.map +1 -0
  221. package/dist/src/hooks/hookTranslator.test.d.ts +6 -0
  222. package/dist/src/hooks/hookTranslator.test.js +192 -0
  223. package/dist/src/hooks/hookTranslator.test.js.map +1 -0
  224. package/dist/src/hooks/types.d.ts +384 -0
  225. package/dist/src/hooks/types.js +284 -0
  226. package/dist/src/hooks/types.js.map +1 -0
  227. package/dist/src/hooks/types.test.d.ts +6 -0
  228. package/dist/src/hooks/types.test.js +313 -0
  229. package/dist/src/hooks/types.test.js.map +1 -0
  230. package/dist/src/ide/detect-ide.d.ts +4 -0
  231. package/dist/src/ide/detect-ide.js +6 -1
  232. package/dist/src/ide/detect-ide.js.map +1 -1
  233. package/dist/src/ide/detect-ide.test.js +16 -0
  234. package/dist/src/ide/detect-ide.test.js.map +1 -1
  235. package/dist/src/ide/ide-client.d.ts +3 -1
  236. package/dist/src/ide/ide-client.js +12 -10
  237. package/dist/src/ide/ide-client.js.map +1 -1
  238. package/dist/src/ide/ide-client.test.js +163 -4
  239. package/dist/src/ide/ide-client.test.js.map +1 -1
  240. package/dist/src/ide/ide-installer.js +66 -21
  241. package/dist/src/ide/ide-installer.js.map +1 -1
  242. package/dist/src/ide/ide-installer.test.js +54 -1
  243. package/dist/src/ide/ide-installer.test.js.map +1 -1
  244. package/dist/src/ide/process-utils.js +85 -75
  245. package/dist/src/ide/process-utils.js.map +1 -1
  246. package/dist/src/ide/process-utils.test.js +83 -90
  247. package/dist/src/ide/process-utils.test.js.map +1 -1
  248. package/dist/src/ide/types.d.ts +5 -5
  249. package/dist/src/ide/types.js +1 -1
  250. package/dist/src/index.d.ts +21 -0
  251. package/dist/src/index.js +24 -0
  252. package/dist/src/index.js.map +1 -1
  253. package/dist/src/mcp/google-auth-provider.d.ts +2 -0
  254. package/dist/src/mcp/google-auth-provider.js +21 -3
  255. package/dist/src/mcp/google-auth-provider.js.map +1 -1
  256. package/dist/src/mcp/google-auth-provider.test.js +42 -9
  257. package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
  258. package/dist/src/mcp/oauth-provider.d.ts +8 -5
  259. package/dist/src/mcp/oauth-provider.js +140 -55
  260. package/dist/src/mcp/oauth-provider.js.map +1 -1
  261. package/dist/src/mcp/oauth-provider.test.js +369 -2
  262. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  263. package/dist/src/mcp/oauth-token-storage.js +5 -4
  264. package/dist/src/mcp/oauth-token-storage.js.map +1 -1
  265. package/dist/src/mcp/oauth-token-storage.test.js +17 -11
  266. package/dist/src/mcp/oauth-token-storage.test.js.map +1 -1
  267. package/dist/src/mcp/oauth-utils.d.ts +7 -0
  268. package/dist/src/mcp/oauth-utils.js +28 -8
  269. package/dist/src/mcp/oauth-utils.js.map +1 -1
  270. package/dist/src/mcp/oauth-utils.test.js +45 -2
  271. package/dist/src/mcp/oauth-utils.test.js.map +1 -1
  272. package/dist/src/mcp/sa-impersonation-provider.d.ts +0 -6
  273. package/dist/src/mcp/sa-impersonation-provider.js +6 -23
  274. package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
  275. package/dist/src/mcp/token-storage/base-token-storage.test.js +75 -84
  276. package/dist/src/mcp/token-storage/base-token-storage.test.js.map +1 -1
  277. package/dist/src/mcp/token-storage/file-token-storage.js +3 -2
  278. package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
  279. package/dist/src/mcp/token-storage/file-token-storage.test.js +11 -8
  280. package/dist/src/mcp/token-storage/file-token-storage.test.js.map +1 -1
  281. package/dist/src/mcp/token-storage/keychain-token-storage.d.ts +6 -2
  282. package/dist/src/mcp/token-storage/keychain-token-storage.js +63 -7
  283. package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
  284. package/dist/src/mcp/token-storage/keychain-token-storage.test.js +54 -3
  285. package/dist/src/mcp/token-storage/keychain-token-storage.test.js.map +1 -1
  286. package/dist/src/mcp/token-storage/types.d.ts +6 -0
  287. package/dist/src/mcp/token-storage/types.js.map +1 -1
  288. package/dist/src/output/stream-json-formatter.d.ts +32 -0
  289. package/dist/src/output/stream-json-formatter.js +52 -0
  290. package/dist/src/output/stream-json-formatter.js.map +1 -0
  291. package/dist/src/output/stream-json-formatter.test.d.ts +6 -0
  292. package/dist/src/output/stream-json-formatter.test.js +479 -0
  293. package/dist/src/output/stream-json-formatter.test.js.map +1 -0
  294. package/dist/src/output/types.d.ts +63 -1
  295. package/dist/src/output/types.js +11 -0
  296. package/dist/src/output/types.js.map +1 -1
  297. package/dist/src/policy/config.d.ts +31 -0
  298. package/dist/src/policy/config.js +199 -0
  299. package/dist/src/policy/config.js.map +1 -0
  300. package/dist/src/policy/config.test.d.ts +6 -0
  301. package/dist/src/policy/config.test.js +538 -0
  302. package/dist/src/policy/config.test.js.map +1 -0
  303. package/dist/src/policy/index.d.ts +2 -0
  304. package/dist/src/policy/index.js +2 -0
  305. package/dist/src/policy/index.js.map +1 -1
  306. package/dist/src/policy/policies/discovered.toml +8 -0
  307. package/dist/src/policy/policies/read-only.toml +56 -0
  308. package/dist/src/policy/policies/write.toml +73 -0
  309. package/dist/src/policy/policies/yolo.toml +31 -0
  310. package/dist/src/policy/policy-engine.d.ts +12 -3
  311. package/dist/src/policy/policy-engine.js +74 -8
  312. package/dist/src/policy/policy-engine.js.map +1 -1
  313. package/dist/src/policy/policy-engine.test.js +460 -76
  314. package/dist/src/policy/policy-engine.test.js.map +1 -1
  315. package/dist/src/policy/toml-loader.d.ts +47 -0
  316. package/dist/src/policy/toml-loader.js +411 -0
  317. package/dist/src/policy/toml-loader.js.map +1 -0
  318. package/dist/src/policy/toml-loader.test.d.ts +6 -0
  319. package/dist/src/policy/toml-loader.test.js +376 -0
  320. package/dist/src/policy/toml-loader.test.js.map +1 -0
  321. package/dist/src/policy/types.d.ts +83 -0
  322. package/dist/src/policy/types.js +10 -0
  323. package/dist/src/policy/types.js.map +1 -1
  324. package/dist/src/prompts/mcp-prompts.test.d.ts +6 -0
  325. package/dist/src/prompts/mcp-prompts.test.js +39 -0
  326. package/dist/src/prompts/mcp-prompts.test.js.map +1 -0
  327. package/dist/src/prompts/prompt-registry.js +2 -1
  328. package/dist/src/prompts/prompt-registry.js.map +1 -1
  329. package/dist/src/prompts/prompt-registry.test.d.ts +6 -0
  330. package/dist/src/prompts/prompt-registry.test.js +96 -0
  331. package/dist/src/prompts/prompt-registry.test.js.map +1 -0
  332. package/dist/src/routing/modelRouterService.js +15 -0
  333. package/dist/src/routing/modelRouterService.js.map +1 -1
  334. package/dist/src/routing/modelRouterService.test.js +62 -0
  335. package/dist/src/routing/modelRouterService.test.js.map +1 -1
  336. package/dist/src/routing/strategies/classifierStrategy.d.ts +1 -1
  337. package/dist/src/routing/strategies/classifierStrategy.js +9 -16
  338. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  339. package/dist/src/routing/strategies/classifierStrategy.test.js +17 -13
  340. package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
  341. package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
  342. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
  343. package/dist/src/routing/strategies/fallbackStrategy.test.js +4 -0
  344. package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
  345. package/dist/src/routing/strategies/overrideStrategy.js +2 -2
  346. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
  347. package/dist/src/routing/strategies/overrideStrategy.test.js +3 -0
  348. package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -1
  349. package/dist/src/safety/built-in.d.ts +21 -0
  350. package/dist/src/safety/built-in.js +106 -0
  351. package/dist/src/safety/built-in.js.map +1 -0
  352. package/dist/src/safety/built-in.test.d.ts +6 -0
  353. package/dist/src/safety/built-in.test.js +199 -0
  354. package/dist/src/safety/built-in.test.js.map +1 -0
  355. package/dist/src/safety/checker-runner.d.ts +48 -0
  356. package/dist/src/safety/checker-runner.js +208 -0
  357. package/dist/src/safety/checker-runner.js.map +1 -0
  358. package/dist/src/safety/checker-runner.test.d.ts +6 -0
  359. package/dist/src/safety/checker-runner.test.js +238 -0
  360. package/dist/src/safety/checker-runner.test.js.map +1 -0
  361. package/dist/src/safety/context-builder.d.ts +23 -0
  362. package/dist/src/safety/context-builder.js +47 -0
  363. package/dist/src/safety/context-builder.js.map +1 -0
  364. package/dist/src/safety/context-builder.test.d.ts +6 -0
  365. package/dist/src/safety/context-builder.test.js +49 -0
  366. package/dist/src/safety/context-builder.test.js.map +1 -0
  367. package/dist/src/safety/protocol.d.ts +88 -0
  368. package/dist/src/safety/protocol.js +15 -0
  369. package/dist/src/safety/protocol.js.map +1 -0
  370. package/dist/src/safety/registry.d.ts +26 -0
  371. package/dist/src/safety/registry.js +65 -0
  372. package/dist/src/safety/registry.js.map +1 -0
  373. package/dist/src/safety/registry.test.d.ts +6 -0
  374. package/dist/src/safety/registry.test.js +31 -0
  375. package/dist/src/safety/registry.test.js.map +1 -0
  376. package/dist/src/services/chatCompressionService.d.ts +32 -0
  377. package/dist/src/services/chatCompressionService.js +162 -0
  378. package/dist/src/services/chatCompressionService.js.map +1 -0
  379. package/dist/src/services/chatCompressionService.test.d.ts +6 -0
  380. package/dist/src/services/chatCompressionService.test.js +210 -0
  381. package/dist/src/services/chatCompressionService.test.js.map +1 -0
  382. package/dist/src/services/chatRecordingService.d.ts +3 -2
  383. package/dist/src/services/chatRecordingService.js +11 -9
  384. package/dist/src/services/chatRecordingService.js.map +1 -1
  385. package/dist/src/services/fileDiscoveryService.d.ts +2 -14
  386. package/dist/src/services/fileDiscoveryService.js +19 -55
  387. package/dist/src/services/fileDiscoveryService.js.map +1 -1
  388. package/dist/src/services/fileDiscoveryService.test.js +91 -11
  389. package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
  390. package/dist/src/services/loopDetectionService.d.ts +4 -1
  391. package/dist/src/services/loopDetectionService.js +95 -42
  392. package/dist/src/services/loopDetectionService.js.map +1 -1
  393. package/dist/src/services/loopDetectionService.test.js +220 -12
  394. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  395. package/dist/src/services/modelConfig.golden.test.d.ts +6 -0
  396. package/dist/src/services/modelConfig.golden.test.js +42 -0
  397. package/dist/src/services/modelConfig.golden.test.js.map +1 -0
  398. package/dist/src/services/modelConfig.integration.test.d.ts +6 -0
  399. package/dist/src/services/modelConfig.integration.test.js +247 -0
  400. package/dist/src/services/modelConfig.integration.test.js.map +1 -0
  401. package/dist/src/services/modelConfigService.d.ts +48 -0
  402. package/dist/src/services/modelConfigService.js +151 -0
  403. package/dist/src/services/modelConfigService.js.map +1 -0
  404. package/dist/src/services/modelConfigService.test.d.ts +6 -0
  405. package/dist/src/services/modelConfigService.test.js +531 -0
  406. package/dist/src/services/modelConfigService.test.js.map +1 -0
  407. package/dist/src/services/shellExecutionService.d.ts +1 -0
  408. package/dist/src/services/shellExecutionService.js +195 -92
  409. package/dist/src/services/shellExecutionService.js.map +1 -1
  410. package/dist/src/services/shellExecutionService.test.js +137 -14
  411. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  412. package/dist/src/services/test-data/resolved-aliases.golden.json +202 -0
  413. package/dist/src/telemetry/activity-monitor.d.ts +116 -0
  414. package/dist/src/telemetry/activity-monitor.js +209 -0
  415. package/dist/src/telemetry/activity-monitor.js.map +1 -0
  416. package/dist/src/telemetry/activity-monitor.test.d.ts +6 -0
  417. package/dist/src/telemetry/activity-monitor.test.js +251 -0
  418. package/dist/src/telemetry/activity-monitor.test.js.map +1 -0
  419. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +25 -7
  420. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +294 -76
  421. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  422. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +1 -0
  423. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +192 -66
  424. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  425. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +25 -3
  426. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +59 -5
  427. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  428. package/dist/src/telemetry/constants.d.ts +0 -28
  429. package/dist/src/telemetry/constants.js +0 -29
  430. package/dist/src/telemetry/constants.js.map +1 -1
  431. package/dist/src/telemetry/gcp-exporters.js +0 -1
  432. package/dist/src/telemetry/gcp-exporters.js.map +1 -1
  433. package/dist/src/telemetry/gcp-exporters.test.js +1 -1
  434. package/dist/src/telemetry/gcp-exporters.test.js.map +1 -1
  435. package/dist/src/telemetry/index.d.ts +7 -3
  436. package/dist/src/telemetry/index.js +13 -4
  437. package/dist/src/telemetry/index.js.map +1 -1
  438. package/dist/src/telemetry/loggers.d.ts +14 -7
  439. package/dist/src/telemetry/loggers.js +197 -320
  440. package/dist/src/telemetry/loggers.js.map +1 -1
  441. package/dist/src/telemetry/loggers.test.circular.js +0 -1
  442. package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
  443. package/dist/src/telemetry/loggers.test.js +460 -59
  444. package/dist/src/telemetry/loggers.test.js.map +1 -1
  445. package/dist/src/telemetry/memory-monitor.d.ts +149 -0
  446. package/dist/src/telemetry/memory-monitor.js +335 -0
  447. package/dist/src/telemetry/memory-monitor.js.map +1 -0
  448. package/dist/src/telemetry/memory-monitor.test.d.ts +6 -0
  449. package/dist/src/telemetry/memory-monitor.test.js +472 -0
  450. package/dist/src/telemetry/memory-monitor.test.js.map +1 -0
  451. package/dist/src/telemetry/metrics.d.ts +180 -4
  452. package/dist/src/telemetry/metrics.js +270 -6
  453. package/dist/src/telemetry/metrics.js.map +1 -1
  454. package/dist/src/telemetry/metrics.test.js +502 -184
  455. package/dist/src/telemetry/metrics.test.js.map +1 -1
  456. package/dist/src/telemetry/sdk.js +3 -2
  457. package/dist/src/telemetry/sdk.js.map +1 -1
  458. package/dist/src/telemetry/semantic.d.ts +82 -0
  459. package/dist/src/telemetry/semantic.js +269 -0
  460. package/dist/src/telemetry/semantic.js.map +1 -0
  461. package/dist/src/telemetry/semantic.test.d.ts +6 -0
  462. package/dist/src/telemetry/semantic.test.js +387 -0
  463. package/dist/src/telemetry/semantic.test.js.map +1 -0
  464. package/dist/src/telemetry/telemetry-utils.test.js +29 -28
  465. package/dist/src/telemetry/telemetry-utils.test.js.map +1 -1
  466. package/dist/src/telemetry/telemetryAttributes.d.ts +8 -0
  467. package/dist/src/telemetry/telemetryAttributes.js +19 -0
  468. package/dist/src/telemetry/telemetryAttributes.js.map +1 -0
  469. package/dist/src/telemetry/trace.d.ts +46 -0
  470. package/dist/src/telemetry/trace.js +121 -0
  471. package/dist/src/telemetry/trace.js.map +1 -0
  472. package/dist/src/telemetry/types.d.ts +227 -29
  473. package/dist/src/telemetry/types.js +858 -72
  474. package/dist/src/telemetry/types.js.map +1 -1
  475. package/dist/src/telemetry/uiTelemetry.d.ts +1 -1
  476. package/dist/src/telemetry/uiTelemetry.js +7 -7
  477. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  478. package/dist/src/telemetry/uiTelemetry.test.js +89 -67
  479. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  480. package/dist/src/test-utils/config.d.ts +1 -1
  481. package/dist/src/test-utils/config.js +1 -1
  482. package/dist/src/tools/base-tool-invocation.test.d.ts +6 -0
  483. package/dist/src/tools/base-tool-invocation.test.js +85 -0
  484. package/dist/src/tools/base-tool-invocation.test.js.map +1 -0
  485. package/dist/src/tools/edit.d.ts +4 -3
  486. package/dist/src/tools/edit.js +50 -47
  487. package/dist/src/tools/edit.js.map +1 -1
  488. package/dist/src/tools/edit.test.js +306 -216
  489. package/dist/src/tools/edit.test.js.map +1 -1
  490. package/dist/src/tools/glob.d.ts +4 -3
  491. package/dist/src/tools/glob.js +24 -27
  492. package/dist/src/tools/glob.js.map +1 -1
  493. package/dist/src/tools/glob.test.js +212 -205
  494. package/dist/src/tools/glob.test.js.map +1 -1
  495. package/dist/src/tools/grep.d.ts +4 -3
  496. package/dist/src/tools/grep.js +31 -25
  497. package/dist/src/tools/grep.js.map +1 -1
  498. package/dist/src/tools/grep.test.js +15 -12
  499. package/dist/src/tools/grep.test.js.map +1 -1
  500. package/dist/src/tools/ls.d.ts +4 -3
  501. package/dist/src/tools/ls.js +29 -35
  502. package/dist/src/tools/ls.js.map +1 -1
  503. package/dist/src/tools/ls.test.js +34 -42
  504. package/dist/src/tools/ls.test.js.map +1 -1
  505. package/dist/src/tools/mcp-client-manager.d.ts +49 -11
  506. package/dist/src/tools/mcp-client-manager.js +191 -31
  507. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  508. package/dist/src/tools/mcp-client-manager.test.js +132 -25
  509. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  510. package/dist/src/tools/mcp-client.d.ts +12 -5
  511. package/dist/src/tools/mcp-client.js +287 -267
  512. package/dist/src/tools/mcp-client.js.map +1 -1
  513. package/dist/src/tools/mcp-client.test.js +352 -45
  514. package/dist/src/tools/mcp-client.test.js.map +1 -1
  515. package/dist/src/tools/mcp-tool.d.ts +6 -2
  516. package/dist/src/tools/mcp-tool.js +19 -8
  517. package/dist/src/tools/mcp-tool.js.map +1 -1
  518. package/dist/src/tools/mcp-tool.test.js +186 -273
  519. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  520. package/dist/src/tools/memoryTool.d.ts +7 -5
  521. package/dist/src/tools/memoryTool.js +14 -12
  522. package/dist/src/tools/memoryTool.js.map +1 -1
  523. package/dist/src/tools/memoryTool.test.js +10 -9
  524. package/dist/src/tools/memoryTool.test.js.map +1 -1
  525. package/dist/src/tools/message-bus-integration.test.js +14 -1
  526. package/dist/src/tools/message-bus-integration.test.js.map +1 -1
  527. package/dist/src/tools/modifiable-tool.d.ts +5 -1
  528. package/dist/src/tools/modifiable-tool.js +38 -16
  529. package/dist/src/tools/modifiable-tool.js.map +1 -1
  530. package/dist/src/tools/modifiable-tool.test.js +66 -31
  531. package/dist/src/tools/modifiable-tool.test.js.map +1 -1
  532. package/dist/src/tools/read-file.d.ts +6 -5
  533. package/dist/src/tools/read-file.js +26 -32
  534. package/dist/src/tools/read-file.js.map +1 -1
  535. package/dist/src/tools/read-file.test.js +68 -33
  536. package/dist/src/tools/read-file.test.js.map +1 -1
  537. package/dist/src/tools/read-many-files.d.ts +6 -12
  538. package/dist/src/tools/read-many-files.js +28 -57
  539. package/dist/src/tools/read-many-files.js.map +1 -1
  540. package/dist/src/tools/read-many-files.test.js +37 -36
  541. package/dist/src/tools/read-many-files.test.js.map +1 -1
  542. package/dist/src/tools/ripGrep.d.ts +28 -10
  543. package/dist/src/tools/ripGrep.js +195 -193
  544. package/dist/src/tools/ripGrep.js.map +1 -1
  545. package/dist/src/tools/ripGrep.test.js +533 -204
  546. package/dist/src/tools/ripGrep.test.js.map +1 -1
  547. package/dist/src/tools/shell.d.ts +8 -6
  548. package/dist/src/tools/shell.js +64 -38
  549. package/dist/src/tools/shell.js.map +1 -1
  550. package/dist/src/tools/shell.test.js +134 -43
  551. package/dist/src/tools/shell.test.js.map +1 -1
  552. package/dist/src/tools/smart-edit.d.ts +10 -23
  553. package/dist/src/tools/smart-edit.js +100 -85
  554. package/dist/src/tools/smart-edit.js.map +1 -1
  555. package/dist/src/tools/smart-edit.test.js +229 -179
  556. package/dist/src/tools/smart-edit.test.js.map +1 -1
  557. package/dist/src/tools/tool-error.d.ts +21 -0
  558. package/dist/src/tools/tool-error.js +27 -0
  559. package/dist/src/tools/tool-error.js.map +1 -1
  560. package/dist/src/tools/tool-names.d.ts +17 -0
  561. package/dist/src/tools/tool-names.js +21 -0
  562. package/dist/src/tools/tool-names.js.map +1 -0
  563. package/dist/src/tools/tool-registry.d.ts +32 -20
  564. package/dist/src/tools/tool-registry.js +122 -78
  565. package/dist/src/tools/tool-registry.js.map +1 -1
  566. package/dist/src/tools/tool-registry.test.js +167 -90
  567. package/dist/src/tools/tool-registry.test.js.map +1 -1
  568. package/dist/src/tools/tools.d.ts +23 -8
  569. package/dist/src/tools/tools.js +69 -37
  570. package/dist/src/tools/tools.js.map +1 -1
  571. package/dist/src/tools/web-fetch.d.ts +11 -3
  572. package/dist/src/tools/web-fetch.js +80 -38
  573. package/dist/src/tools/web-fetch.js.map +1 -1
  574. package/dist/src/tools/web-fetch.test.js +338 -9
  575. package/dist/src/tools/web-fetch.test.js.map +1 -1
  576. package/dist/src/tools/web-search.d.ts +4 -3
  577. package/dist/src/tools/web-search.js +11 -9
  578. package/dist/src/tools/web-search.js.map +1 -1
  579. package/dist/src/tools/web-search.test.js +6 -0
  580. package/dist/src/tools/web-search.test.js.map +1 -1
  581. package/dist/src/tools/write-file.d.ts +3 -2
  582. package/dist/src/tools/write-file.js +41 -40
  583. package/dist/src/tools/write-file.js.map +1 -1
  584. package/dist/src/tools/write-file.test.js +130 -123
  585. package/dist/src/tools/write-file.test.js.map +1 -1
  586. package/dist/src/tools/write-todos.d.ts +34 -9
  587. package/dist/src/tools/write-todos.js +54 -11
  588. package/dist/src/tools/write-todos.js.map +1 -1
  589. package/dist/src/tools/write-todos.test.js +2 -2
  590. package/dist/src/tools/write-todos.test.js.map +1 -1
  591. package/dist/src/utils/bfsFileSearch.js +3 -2
  592. package/dist/src/utils/bfsFileSearch.js.map +1 -1
  593. package/dist/src/utils/channel.d.ts +19 -0
  594. package/dist/src/utils/channel.js +49 -0
  595. package/dist/src/utils/channel.js.map +1 -0
  596. package/dist/src/utils/channel.test.d.ts +6 -0
  597. package/dist/src/utils/channel.test.js +170 -0
  598. package/dist/src/utils/channel.test.js.map +1 -0
  599. package/dist/src/utils/debugLogger.d.ts +25 -0
  600. package/dist/src/utils/debugLogger.js +33 -0
  601. package/dist/src/utils/debugLogger.js.map +1 -0
  602. package/dist/src/utils/debugLogger.test.d.ts +6 -0
  603. package/dist/src/utils/debugLogger.test.js +69 -0
  604. package/dist/src/utils/debugLogger.test.js.map +1 -0
  605. package/dist/src/utils/delay.d.ts +16 -0
  606. package/dist/src/utils/delay.js +43 -0
  607. package/dist/src/utils/delay.js.map +1 -0
  608. package/dist/src/utils/delay.test.d.ts +6 -0
  609. package/dist/src/utils/delay.test.js +88 -0
  610. package/dist/src/utils/delay.test.js.map +1 -0
  611. package/dist/src/utils/editCorrector.js +10 -25
  612. package/dist/src/utils/editCorrector.js.map +1 -1
  613. package/dist/src/utils/editCorrector.test.js +19 -5
  614. package/dist/src/utils/editCorrector.test.js.map +1 -1
  615. package/dist/src/utils/editor.d.ts +4 -2
  616. package/dist/src/utils/editor.js +53 -39
  617. package/dist/src/utils/editor.js.map +1 -1
  618. package/dist/src/utils/editor.test.js +18 -45
  619. package/dist/src/utils/editor.test.js.map +1 -1
  620. package/dist/src/utils/environmentContext.d.ts +2 -1
  621. package/dist/src/utils/environmentContext.js +20 -33
  622. package/dist/src/utils/environmentContext.js.map +1 -1
  623. package/dist/src/utils/environmentContext.test.js +6 -34
  624. package/dist/src/utils/environmentContext.test.js.map +1 -1
  625. package/dist/src/utils/errorParsing.d.ts +1 -1
  626. package/dist/src/utils/errorParsing.js +5 -33
  627. package/dist/src/utils/errorParsing.js.map +1 -1
  628. package/dist/src/utils/errorParsing.test.js +0 -88
  629. package/dist/src/utils/errorParsing.test.js.map +1 -1
  630. package/dist/src/utils/errors.d.ts +3 -0
  631. package/dist/src/utils/errors.js +6 -0
  632. package/dist/src/utils/errors.js.map +1 -1
  633. package/dist/src/utils/events.d.ts +121 -0
  634. package/dist/src/utils/events.js +84 -0
  635. package/dist/src/utils/events.js.map +1 -0
  636. package/dist/src/utils/events.test.d.ts +6 -0
  637. package/dist/src/utils/events.test.js +212 -0
  638. package/dist/src/utils/events.test.js.map +1 -0
  639. package/dist/src/utils/extensionLoader.d.ts +86 -0
  640. package/dist/src/utils/extensionLoader.js +208 -0
  641. package/dist/src/utils/extensionLoader.js.map +1 -0
  642. package/dist/src/utils/extensionLoader.test.d.ts +6 -0
  643. package/dist/src/utils/extensionLoader.test.js +154 -0
  644. package/dist/src/utils/extensionLoader.test.js.map +1 -0
  645. package/dist/src/utils/fetch.d.ts +1 -0
  646. package/dist/src/utils/fetch.js +4 -0
  647. package/dist/src/utils/fetch.js.map +1 -1
  648. package/dist/src/utils/fileUtils.d.ts +4 -0
  649. package/dist/src/utils/fileUtils.js +34 -2
  650. package/dist/src/utils/fileUtils.js.map +1 -1
  651. package/dist/src/utils/fileUtils.test.js +87 -61
  652. package/dist/src/utils/fileUtils.test.js.map +1 -1
  653. package/dist/src/utils/filesearch/fileSearch.js +1 -1
  654. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  655. package/dist/src/utils/flashFallback.test.js +28 -47
  656. package/dist/src/utils/flashFallback.test.js.map +1 -1
  657. package/dist/src/utils/formatters.d.ts +1 -0
  658. package/dist/src/utils/formatters.js +2 -1
  659. package/dist/src/utils/formatters.js.map +1 -1
  660. package/dist/src/utils/formatters.test.d.ts +6 -0
  661. package/dist/src/utils/formatters.test.js +26 -0
  662. package/dist/src/utils/formatters.test.js.map +1 -0
  663. package/dist/src/utils/getFolderStructure.js +9 -17
  664. package/dist/src/utils/getFolderStructure.js.map +1 -1
  665. package/dist/src/utils/getFolderStructure.test.js +7 -6
  666. package/dist/src/utils/getFolderStructure.test.js.map +1 -1
  667. package/dist/src/utils/gitIgnoreParser.d.ts +4 -1
  668. package/dist/src/utils/gitIgnoreParser.js +28 -10
  669. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  670. package/dist/src/utils/gitIgnoreParser.test.js +58 -0
  671. package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
  672. package/dist/src/utils/googleErrors.d.ts +104 -0
  673. package/dist/src/utils/googleErrors.js +152 -0
  674. package/dist/src/utils/googleErrors.js.map +1 -0
  675. package/dist/src/utils/googleErrors.test.d.ts +6 -0
  676. package/dist/src/utils/googleErrors.test.js +301 -0
  677. package/dist/src/utils/googleErrors.test.js.map +1 -0
  678. package/dist/src/utils/googleQuotaErrors.d.ts +37 -0
  679. package/dist/src/utils/googleQuotaErrors.js +157 -0
  680. package/dist/src/utils/googleQuotaErrors.js.map +1 -0
  681. package/dist/src/utils/googleQuotaErrors.test.d.ts +6 -0
  682. package/dist/src/utils/googleQuotaErrors.test.js +311 -0
  683. package/dist/src/utils/googleQuotaErrors.test.js.map +1 -0
  684. package/dist/src/utils/httpErrors.d.ts +18 -0
  685. package/dist/src/utils/httpErrors.js +36 -0
  686. package/dist/src/utils/httpErrors.js.map +1 -0
  687. package/dist/src/utils/ignorePatterns.test.js +26 -30
  688. package/dist/src/utils/ignorePatterns.test.js.map +1 -1
  689. package/dist/src/utils/installationManager.js +2 -1
  690. package/dist/src/utils/installationManager.js.map +1 -1
  691. package/dist/src/utils/installationManager.test.js +6 -4
  692. package/dist/src/utils/installationManager.test.js.map +1 -1
  693. package/dist/src/utils/llm-edit-fixer.d.ts +1 -1
  694. package/dist/src/utils/llm-edit-fixer.js +33 -9
  695. package/dist/src/utils/llm-edit-fixer.js.map +1 -1
  696. package/dist/src/utils/llm-edit-fixer.test.js +38 -1
  697. package/dist/src/utils/llm-edit-fixer.test.js.map +1 -1
  698. package/dist/src/utils/memoryDiscovery.d.ts +20 -1
  699. package/dist/src/utils/memoryDiscovery.js +176 -12
  700. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  701. package/dist/src/utils/memoryDiscovery.test.js +299 -40
  702. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  703. package/dist/src/utils/memoryImportProcessor.js +4 -3
  704. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  705. package/dist/src/utils/memoryImportProcessor.test.js +8 -14
  706. package/dist/src/utils/memoryImportProcessor.test.js.map +1 -1
  707. package/dist/src/utils/nextSpeakerChecker.js +3 -3
  708. package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
  709. package/dist/src/utils/nextSpeakerChecker.test.js +13 -5
  710. package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
  711. package/dist/src/utils/package.d.ts +12 -0
  712. package/dist/src/utils/package.js +15 -0
  713. package/dist/src/utils/package.js.map +1 -0
  714. package/dist/src/utils/pathCorrector.d.ts +25 -0
  715. package/dist/src/utils/pathCorrector.js +33 -0
  716. package/dist/src/utils/pathCorrector.js.map +1 -0
  717. package/dist/src/utils/pathCorrector.test.d.ts +6 -0
  718. package/dist/src/utils/pathCorrector.test.js +83 -0
  719. package/dist/src/utils/pathCorrector.test.js.map +1 -0
  720. package/dist/src/utils/pathReader.js +4 -4
  721. package/dist/src/utils/pathReader.js.map +1 -1
  722. package/dist/src/utils/pathReader.test.js +44 -1
  723. package/dist/src/utils/pathReader.test.js.map +1 -1
  724. package/dist/src/utils/paths.d.ts +1 -1
  725. package/dist/src/utils/paths.js +131 -29
  726. package/dist/src/utils/paths.js.map +1 -1
  727. package/dist/src/utils/paths.test.js +200 -68
  728. package/dist/src/utils/paths.test.js.map +1 -1
  729. package/dist/src/utils/quotaErrorDetection.d.ts +0 -2
  730. package/dist/src/utils/quotaErrorDetection.js +0 -46
  731. package/dist/src/utils/quotaErrorDetection.js.map +1 -1
  732. package/dist/src/utils/retry.d.ts +3 -10
  733. package/dist/src/utils/retry.js +97 -195
  734. package/dist/src/utils/retry.js.map +1 -1
  735. package/dist/src/utils/retry.test.js +179 -145
  736. package/dist/src/utils/retry.test.js.map +1 -1
  737. package/dist/src/utils/safeJsonStringify.d.ts +4 -4
  738. package/dist/src/utils/safeJsonStringify.js +31 -7
  739. package/dist/src/utils/safeJsonStringify.js.map +1 -1
  740. package/dist/src/utils/shell-utils.d.ts +15 -2
  741. package/dist/src/utils/shell-utils.js +387 -140
  742. package/dist/src/utils/shell-utils.js.map +1 -1
  743. package/dist/src/utils/shell-utils.test.js +244 -62
  744. package/dist/src/utils/shell-utils.test.js.map +1 -1
  745. package/dist/src/utils/stdio.d.ts +32 -0
  746. package/dist/src/utils/stdio.js +85 -0
  747. package/dist/src/utils/stdio.js.map +1 -0
  748. package/dist/src/utils/stdio.test.d.ts +6 -0
  749. package/dist/src/utils/stdio.test.js +47 -0
  750. package/dist/src/utils/stdio.test.js.map +1 -0
  751. package/dist/src/utils/summarizer.d.ts +4 -2
  752. package/dist/src/utils/summarizer.js +8 -9
  753. package/dist/src/utils/summarizer.js.map +1 -1
  754. package/dist/src/utils/summarizer.test.js +32 -12
  755. package/dist/src/utils/summarizer.test.js.map +1 -1
  756. package/dist/src/utils/systemEncoding.js +5 -4
  757. package/dist/src/utils/systemEncoding.js.map +1 -1
  758. package/dist/src/utils/systemEncoding.test.js +2 -1
  759. package/dist/src/utils/systemEncoding.test.js.map +1 -1
  760. package/dist/src/utils/terminal.d.ts +14 -0
  761. package/dist/src/utils/terminal.js +38 -0
  762. package/dist/src/utils/terminal.js.map +1 -0
  763. package/dist/src/utils/tool-utils.d.ts +2 -2
  764. package/dist/src/utils/tool-utils.js +15 -6
  765. package/dist/src/utils/tool-utils.js.map +1 -1
  766. package/dist/src/utils/tool-utils.test.js +8 -0
  767. package/dist/src/utils/tool-utils.test.js.map +1 -1
  768. package/dist/src/utils/userAccountManager.js +5 -4
  769. package/dist/src/utils/userAccountManager.js.map +1 -1
  770. package/dist/src/utils/userAccountManager.test.js +9 -7
  771. package/dist/src/utils/userAccountManager.test.js.map +1 -1
  772. package/dist/src/utils/workspaceContext.d.ts +4 -3
  773. package/dist/src/utils/workspaceContext.js +13 -13
  774. package/dist/src/utils/workspaceContext.js.map +1 -1
  775. package/dist/src/utils/workspaceContext.test.js +8 -7
  776. package/dist/src/utils/workspaceContext.test.js.map +1 -1
  777. package/dist/tsconfig.tsbuildinfo +1 -1
  778. package/package.json +12 -7
@@ -1 +1 @@
1
- {"version":3,"file":"coreToolScheduler.test.js","sourceRoot":"","sources":["../../../src/core/coreToolScheduler.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coreToolScheduler.test.js","sourceRoot":"","sources":["../../../src/core/coreToolScheduler.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { GenerateContentResponse, type CountTokensResponse, type GenerateContentParameters, type CountTokensParameters, EmbedContentResponse, type EmbedContentParameters } from '@google/genai';
7
+ import type { ContentGenerator } from './contentGenerator.js';
8
+ import type { UserTierId } from '../code_assist/types.js';
9
+ export type FakeResponse = {
10
+ method: 'generateContent';
11
+ response: GenerateContentResponse;
12
+ } | {
13
+ method: 'generateContentStream';
14
+ response: GenerateContentResponse[];
15
+ } | {
16
+ method: 'countTokens';
17
+ response: CountTokensResponse;
18
+ } | {
19
+ method: 'embedContent';
20
+ response: EmbedContentResponse;
21
+ };
22
+ export declare class FakeContentGenerator implements ContentGenerator {
23
+ private readonly responses;
24
+ private callCounter;
25
+ userTier?: UserTierId;
26
+ constructor(responses: FakeResponse[]);
27
+ static fromFile(filePath: string): Promise<FakeContentGenerator>;
28
+ private getNextResponse;
29
+ generateContent(request: GenerateContentParameters, _userPromptId: string): Promise<GenerateContentResponse>;
30
+ generateContentStream(request: GenerateContentParameters, _userPromptId: string): Promise<AsyncGenerator<GenerateContentResponse>>;
31
+ countTokens(request: CountTokensParameters): Promise<CountTokensResponse>;
32
+ embedContent(request: EmbedContentParameters): Promise<EmbedContentResponse>;
33
+ }
@@ -0,0 +1,58 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { GenerateContentResponse, EmbedContentResponse, } from '@google/genai';
7
+ import { promises } from 'node:fs';
8
+ import { safeJsonStringify } from '../utils/safeJsonStringify.js';
9
+ // A ContentGenerator that responds with canned responses.
10
+ //
11
+ // Typically these would come from a file, provided by the `--fake-responses`
12
+ // CLI argument.
13
+ export class FakeContentGenerator {
14
+ responses;
15
+ callCounter = 0;
16
+ userTier;
17
+ constructor(responses) {
18
+ this.responses = responses;
19
+ }
20
+ static async fromFile(filePath) {
21
+ const fileContent = await promises.readFile(filePath, 'utf-8');
22
+ const responses = fileContent
23
+ .split('\n')
24
+ .filter((line) => line.trim() !== '')
25
+ .map((line) => JSON.parse(line));
26
+ return new FakeContentGenerator(responses);
27
+ }
28
+ getNextResponse(method, request) {
29
+ const response = this.responses[this.callCounter++];
30
+ if (!response) {
31
+ throw new Error(`No more mock responses for ${method}, got request:\n` +
32
+ safeJsonStringify(request));
33
+ }
34
+ if (response.method !== method) {
35
+ throw new Error(`Unexpected response type, next response was for ${response.method} but expected ${method}`);
36
+ }
37
+ return response.response;
38
+ }
39
+ async generateContent(request, _userPromptId) {
40
+ return Object.setPrototypeOf(this.getNextResponse('generateContent', request), GenerateContentResponse.prototype);
41
+ }
42
+ async generateContentStream(request, _userPromptId) {
43
+ const responses = this.getNextResponse('generateContentStream', request);
44
+ async function* stream() {
45
+ for (const response of responses) {
46
+ yield Object.setPrototypeOf(response, GenerateContentResponse.prototype);
47
+ }
48
+ }
49
+ return stream();
50
+ }
51
+ async countTokens(request) {
52
+ return this.getNextResponse('countTokens', request);
53
+ }
54
+ async embedContent(request) {
55
+ return Object.setPrototypeOf(this.getNextResponse('embedContent', request), EmbedContentResponse.prototype);
56
+ }
57
+ }
58
+ //# sourceMappingURL=fakeContentGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fakeContentGenerator.js","sourceRoot":"","sources":["../../../src/core/fakeContentGenerator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,uBAAuB,EAIvB,oBAAoB,GAErB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGnC,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAoBlE,0DAA0D;AAC1D,EAAE;AACF,6EAA6E;AAC7E,gBAAgB;AAChB,MAAM,OAAO,oBAAoB;IAIF;IAHrB,WAAW,GAAG,CAAC,CAAC;IACxB,QAAQ,CAAc;IAEtB,YAA6B,SAAyB;QAAzB,cAAS,GAAT,SAAS,CAAgB;IAAG,CAAC;IAE1D,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAgB;QACpC,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,WAAW;aAC1B,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;aACpC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAiB,CAAC,CAAC;QACnD,OAAO,IAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;IAC7C,CAAC;IAEO,eAAe,CAGrB,MAAS,EAAE,OAAgB;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CACb,8BAA8B,MAAM,kBAAkB;gBACpD,iBAAiB,CAAC,OAAO,CAAC,CAC7B,CAAC;QACJ,CAAC;QACD,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,mDAAmD,QAAQ,CAAC,MAAM,iBAAiB,MAAM,EAAE,CAC5F,CAAC;QACJ,CAAC;QACD,OAAO,QAAQ,CAAC,QAAa,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,OAAkC,EAClC,aAAqB;QAErB,OAAO,MAAM,CAAC,cAAc,CAC1B,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,OAAO,CAAC,EAChD,uBAAuB,CAAC,SAAS,CAClC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,OAAkC,EAClC,aAAqB;QAErB,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;QACzE,KAAK,SAAS,CAAC,CAAC,MAAM;YACpB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACjC,MAAM,MAAM,CAAC,cAAc,CACzB,QAAQ,EACR,uBAAuB,CAAC,SAAS,CAClC,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,WAAW,CACf,OAA8B;QAE9B,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,OAA+B;QAE/B,OAAO,MAAM,CAAC,cAAc,CAC1B,IAAI,CAAC,eAAe,CAAC,cAAc,EAAE,OAAO,CAAC,EAC7C,oBAAoB,CAAC,SAAS,CAC/B,CAAC;IACJ,CAAC;CACF"}
@@ -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,127 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { describe, it, expect, vi, beforeEach } from 'vitest';
7
+ import { FakeContentGenerator, } from './fakeContentGenerator.js';
8
+ import { promises } from 'node:fs';
9
+ import { GenerateContentResponse, } from '@google/genai';
10
+ vi.mock('node:fs', async (importOriginal) => {
11
+ const actual = await importOriginal();
12
+ return {
13
+ ...actual,
14
+ promises: {
15
+ ...actual.promises,
16
+ readFile: vi.fn(),
17
+ },
18
+ };
19
+ });
20
+ const mockReadFile = vi.mocked(promises.readFile);
21
+ describe('FakeContentGenerator', () => {
22
+ const fakeGenerateContentResponse = {
23
+ method: 'generateContent',
24
+ response: {
25
+ candidates: [
26
+ { content: { parts: [{ text: 'response1' }], role: 'model' } },
27
+ ],
28
+ },
29
+ };
30
+ const fakeGenerateContentStreamResponse = {
31
+ method: 'generateContentStream',
32
+ response: [
33
+ {
34
+ candidates: [
35
+ { content: { parts: [{ text: 'chunk1' }], role: 'model' } },
36
+ ],
37
+ },
38
+ {
39
+ candidates: [
40
+ { content: { parts: [{ text: 'chunk2' }], role: 'model' } },
41
+ ],
42
+ },
43
+ ],
44
+ };
45
+ const fakeCountTokensResponse = {
46
+ method: 'countTokens',
47
+ response: { totalTokens: 10 },
48
+ };
49
+ const fakeEmbedContentResponse = {
50
+ method: 'embedContent',
51
+ response: {
52
+ embeddings: [{ values: [1, 2, 3] }],
53
+ },
54
+ };
55
+ beforeEach(() => {
56
+ vi.resetAllMocks();
57
+ });
58
+ it('should return responses for generateContent', async () => {
59
+ const generator = new FakeContentGenerator([fakeGenerateContentResponse]);
60
+ const response = await generator.generateContent({}, 'id');
61
+ expect(response).instanceOf(GenerateContentResponse);
62
+ expect(response).toEqual(fakeGenerateContentResponse.response);
63
+ });
64
+ it('should return responses for generateContentStream', async () => {
65
+ const generator = new FakeContentGenerator([
66
+ fakeGenerateContentStreamResponse,
67
+ ]);
68
+ const stream = await generator.generateContentStream({}, 'id');
69
+ const responses = [];
70
+ for await (const response of stream) {
71
+ expect(response).instanceOf(GenerateContentResponse);
72
+ responses.push(response);
73
+ }
74
+ expect(responses).toEqual(fakeGenerateContentStreamResponse.response);
75
+ });
76
+ it('should return responses for countTokens', async () => {
77
+ const generator = new FakeContentGenerator([fakeCountTokensResponse]);
78
+ const response = await generator.countTokens({});
79
+ expect(response).toEqual(fakeCountTokensResponse.response);
80
+ });
81
+ it('should return responses for embedContent', async () => {
82
+ const generator = new FakeContentGenerator([fakeEmbedContentResponse]);
83
+ const response = await generator.embedContent({});
84
+ expect(response).toEqual(fakeEmbedContentResponse.response);
85
+ });
86
+ it('should handle a mixture of calls', async () => {
87
+ const fakeResponses = [
88
+ fakeGenerateContentResponse,
89
+ fakeGenerateContentStreamResponse,
90
+ fakeCountTokensResponse,
91
+ fakeEmbedContentResponse,
92
+ ];
93
+ const generator = new FakeContentGenerator(fakeResponses);
94
+ for (const fakeResponse of fakeResponses) {
95
+ const response = await generator[fakeResponse.method]({}, '');
96
+ if (fakeResponse.method === 'generateContentStream') {
97
+ const responses = [];
98
+ for await (const item of response) {
99
+ expect(item).instanceOf(GenerateContentResponse);
100
+ responses.push(item);
101
+ }
102
+ expect(responses).toEqual(fakeResponse.response);
103
+ }
104
+ else {
105
+ expect(response).toEqual(fakeResponse.response);
106
+ }
107
+ }
108
+ });
109
+ it('should throw error when no more responses', async () => {
110
+ const generator = new FakeContentGenerator([fakeGenerateContentResponse]);
111
+ await generator.generateContent({}, 'id');
112
+ await expect(generator.embedContent({})).rejects.toThrowError('No more mock responses for embedContent');
113
+ await expect(generator.countTokens({})).rejects.toThrowError('No more mock responses for countTokens');
114
+ await expect(generator.generateContentStream({}, 'id')).rejects.toThrow('No more mock responses for generateContentStream');
115
+ await expect(generator.generateContent({}, 'id')).rejects.toThrowError('No more mock responses for generateContent');
116
+ });
117
+ describe('fromFile', () => {
118
+ it('should create a generator from a file', async () => {
119
+ const fileContent = JSON.stringify(fakeGenerateContentResponse) + '\n';
120
+ mockReadFile.mockResolvedValue(fileContent);
121
+ const generator = await FakeContentGenerator.fromFile('fake-path.json');
122
+ const response = await generator.generateContent({}, 'id');
123
+ expect(response).toEqual(fakeGenerateContentResponse.response);
124
+ });
125
+ });
126
+ });
127
+ //# sourceMappingURL=fakeContentGenerator.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fakeContentGenerator.test.js","sourceRoot":"","sources":["../../../src/core/fakeContentGenerator.test.ts"],"names":[],"mappings":"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"}
@@ -3,10 +3,12 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { GenerateContentResponse, type Content, type GenerateContentConfig, type SendMessageParameters, type Part, type Tool } from '@google/genai';
6
+ import type { GenerateContentResponse, Content, Part, Tool, PartListUnion } from '@google/genai';
7
7
  import type { Config } from '../config/config.js';
8
8
  import type { StructuredError } from './turn.js';
9
- import { ChatRecordingService } from '../services/chatRecordingService.js';
9
+ import type { CompletedToolCall } from './coreToolScheduler.js';
10
+ import { ChatRecordingService, type ResumedSessionData } from '../services/chatRecordingService.js';
11
+ import type { ModelConfigKey } from '../services/modelConfigService.js';
10
12
  export declare enum StreamEventType {
11
13
  /** A regular content chunk from the API. */
12
14
  CHUNK = "chunk",
@@ -20,14 +22,15 @@ export type StreamEvent = {
20
22
  } | {
21
23
  type: StreamEventType.RETRY;
22
24
  };
25
+ export declare const SYNTHETIC_THOUGHT_SIGNATURE = "skip_thought_signature_validator";
23
26
  export declare function isValidNonThoughtTextPart(part: Part): boolean;
24
27
  /**
25
28
  * Custom error to signal that a stream completed with invalid content,
26
29
  * which should trigger a retry.
27
30
  */
28
31
  export declare class InvalidStreamError extends Error {
29
- readonly type: 'NO_FINISH_REASON' | 'NO_RESPONSE_TEXT';
30
- constructor(message: string, type: 'NO_FINISH_REASON' | 'NO_RESPONSE_TEXT');
32
+ readonly type: 'NO_FINISH_REASON' | 'NO_RESPONSE_TEXT' | 'MALFORMED_FUNCTION_CALL';
33
+ constructor(message: string, type: 'NO_FINISH_REASON' | 'NO_RESPONSE_TEXT' | 'MALFORMED_FUNCTION_CALL');
31
34
  }
32
35
  /**
33
36
  * Chat session that enables sending messages to the model with previous
@@ -38,11 +41,13 @@ export declare class InvalidStreamError extends Error {
38
41
  */
39
42
  export declare class GeminiChat {
40
43
  private readonly config;
41
- private readonly generationConfig;
44
+ private systemInstruction;
45
+ private tools;
42
46
  private history;
43
47
  private sendPromise;
44
48
  private readonly chatRecordingService;
45
- constructor(config: Config, generationConfig?: GenerateContentConfig, history?: Content[]);
49
+ private lastPromptTokenCount;
50
+ constructor(config: Config, systemInstruction?: string, tools?: Tool[], history?: Content[], resumedSessionData?: ResumedSessionData);
46
51
  setSystemInstruction(sysInstr: string): void;
47
52
  /**
48
53
  * Sends a message to the model and returns the response in chunks.
@@ -52,7 +57,10 @@ export declare class GeminiChat {
52
57
  * sending the next message.
53
58
  *
54
59
  * @see {@link Chat#sendMessage} for non-streaming method.
55
- * @param params - parameters for sending the message.
60
+ * @param modelConfigKey - The key for the model config.
61
+ * @param message - The list of messages to send.
62
+ * @param prompt_id - The ID of the prompt.
63
+ * @param signal - An abort signal for this message.
56
64
  * @return The model's response.
57
65
  *
58
66
  * @example
@@ -66,7 +74,7 @@ export declare class GeminiChat {
66
74
  * }
67
75
  * ```
68
76
  */
69
- sendMessageStream(model: string, params: SendMessageParameters, prompt_id: string): Promise<AsyncGenerator<StreamEvent>>;
77
+ sendMessageStream(modelConfigKey: ModelConfigKey, message: PartListUnion, prompt_id: string, signal: AbortSignal): Promise<AsyncGenerator<StreamEvent>>;
70
78
  private makeApiCallAndProcessStream;
71
79
  /**
72
80
  * Returns the chat history.
@@ -102,27 +110,24 @@ export declare class GeminiChat {
102
110
  addHistory(content: Content): void;
103
111
  setHistory(history: Content[]): void;
104
112
  stripThoughtsFromHistory(): void;
113
+ ensureActiveLoopHasThoughtSignatures(requestContents: Content[]): Content[];
105
114
  setTools(tools: Tool[]): void;
106
115
  maybeIncludeSchemaDepthContext(error: StructuredError): Promise<void>;
107
116
  private processStreamResponse;
117
+ getLastPromptTokenCount(): number;
108
118
  /**
109
119
  * Gets the chat recording service instance.
110
120
  */
111
121
  getChatRecordingService(): ChatRecordingService;
112
122
  /**
113
- * Extracts and records thought from thought content.
123
+ * Records completed tool calls with full metadata.
124
+ * This is called by external components when tool calls complete, before sending responses to Gemini.
114
125
  */
115
- private recordThoughtFromContent;
126
+ recordCompletedToolCalls(model: string, toolCalls: CompletedToolCall[]): void;
116
127
  /**
117
- * Truncates the chunkStream right before the second function call to a
118
- * function that mutates state. This may involve trimming parts from a chunk
119
- * as well as omtting some chunks altogether.
120
- *
121
- * We do this because it improves tool call quality if the model gets
122
- * feedback from one mutating function call before it makes the next one.
128
+ * Extracts and records thought from thought content.
123
129
  */
124
- private stopBeforeSecondMutator;
125
- private isMutatorFunctionCall;
130
+ private recordThoughtFromContent;
126
131
  }
127
132
  /** Visible for Testing */
128
133
  export declare function isSchemaDepthError(errorMessage: string): boolean;