@machina.ai/cell-cli-core 1.20.2-rc1 → 1.22.5-rc1

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 (436) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/index.js +1 -1
  3. package/dist/index.js.map +1 -1
  4. package/dist/package.json +1 -1
  5. package/dist/src/agents/delegate-to-agent-tool.d.ts +19 -0
  6. package/dist/src/agents/delegate-to-agent-tool.js +111 -0
  7. package/dist/src/agents/delegate-to-agent-tool.js.map +1 -0
  8. package/dist/src/agents/delegate-to-agent-tool.test.d.ts +6 -0
  9. package/dist/src/agents/delegate-to-agent-tool.test.js +133 -0
  10. package/dist/src/agents/delegate-to-agent-tool.test.js.map +1 -0
  11. package/dist/src/agents/executor.js +1 -1
  12. package/dist/src/agents/executor.js.map +1 -1
  13. package/dist/src/agents/executor.test.js.map +1 -1
  14. package/dist/src/agents/registry.d.ts +15 -0
  15. package/dist/src/agents/registry.js +58 -2
  16. package/dist/src/agents/registry.js.map +1 -1
  17. package/dist/src/agents/registry.test.js +61 -0
  18. package/dist/src/agents/registry.test.js.map +1 -1
  19. package/dist/src/availability/errorClassification.d.ts +7 -0
  20. package/dist/src/availability/errorClassification.js +20 -0
  21. package/dist/src/availability/errorClassification.js.map +1 -0
  22. package/dist/src/availability/modelAvailabilityService.d.ts +1 -0
  23. package/dist/src/availability/modelAvailabilityService.js +3 -0
  24. package/dist/src/availability/modelAvailabilityService.js.map +1 -1
  25. package/dist/src/availability/modelPolicy.d.ts +8 -1
  26. package/dist/src/availability/policyCatalog.d.ts +1 -0
  27. package/dist/src/availability/policyCatalog.js +6 -7
  28. package/dist/src/availability/policyCatalog.js.map +1 -1
  29. package/dist/src/availability/policyCatalog.test.js +2 -2
  30. package/dist/src/availability/policyCatalog.test.js.map +1 -1
  31. package/dist/src/availability/policyHelpers.d.ts +33 -3
  32. package/dist/src/availability/policyHelpers.js +113 -13
  33. package/dist/src/availability/policyHelpers.js.map +1 -1
  34. package/dist/src/availability/policyHelpers.test.js +133 -13
  35. package/dist/src/availability/policyHelpers.test.js.map +1 -1
  36. package/dist/src/availability/testUtils.d.ts +10 -0
  37. package/dist/src/availability/testUtils.js +22 -0
  38. package/dist/src/availability/testUtils.js.map +1 -0
  39. package/dist/src/code_assist/experiments/client_metadata.js +2 -1
  40. package/dist/src/code_assist/experiments/client_metadata.js.map +1 -1
  41. package/dist/src/code_assist/experiments/client_metadata.test.js +7 -10
  42. package/dist/src/code_assist/experiments/client_metadata.test.js.map +1 -1
  43. package/dist/src/code_assist/oauth2.d.ts +2 -0
  44. package/dist/src/code_assist/oauth2.js +38 -12
  45. package/dist/src/code_assist/oauth2.js.map +1 -1
  46. package/dist/src/code_assist/oauth2.test.js +113 -6
  47. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  48. package/dist/src/commands/init.d.ts +7 -0
  49. package/dist/src/commands/init.js +53 -0
  50. package/dist/src/commands/init.js.map +1 -0
  51. package/dist/src/commands/init.test.d.ts +6 -0
  52. package/dist/src/commands/init.test.js +25 -0
  53. package/dist/src/commands/init.test.js.map +1 -0
  54. package/dist/src/commands/restore.d.ts +9 -0
  55. package/dist/src/commands/restore.js +46 -0
  56. package/dist/src/commands/restore.js.map +1 -0
  57. package/dist/src/commands/restore.test.d.ts +6 -0
  58. package/dist/src/commands/restore.test.js +137 -0
  59. package/dist/src/commands/restore.test.js.map +1 -0
  60. package/dist/src/commands/types.d.ts +41 -0
  61. package/dist/src/commands/types.js +7 -0
  62. package/dist/src/commands/types.js.map +1 -0
  63. package/dist/src/config/config.d.ts +29 -3
  64. package/dist/src/config/config.js +146 -29
  65. package/dist/src/config/config.js.map +1 -1
  66. package/dist/src/config/config.test.js +203 -9
  67. package/dist/src/config/config.test.js.map +1 -1
  68. package/dist/src/config/defaultModelConfigs.js +21 -0
  69. package/dist/src/config/defaultModelConfigs.js.map +1 -1
  70. package/dist/src/config/models.d.ts +33 -11
  71. package/dist/src/config/models.js +82 -24
  72. package/dist/src/config/models.js.map +1 -1
  73. package/dist/src/config/models.test.js +70 -76
  74. package/dist/src/config/models.test.js.map +1 -1
  75. package/dist/src/confirmation-bus/message-bus.js +1 -0
  76. package/dist/src/confirmation-bus/message-bus.js.map +1 -1
  77. package/dist/src/confirmation-bus/types.d.ts +4 -0
  78. package/dist/src/core/baseLlmClient.d.ts +3 -1
  79. package/dist/src/core/baseLlmClient.js +40 -3
  80. package/dist/src/core/baseLlmClient.js.map +1 -1
  81. package/dist/src/core/baseLlmClient.test.js +184 -7
  82. package/dist/src/core/baseLlmClient.test.js.map +1 -1
  83. package/dist/src/core/client.js +47 -13
  84. package/dist/src/core/client.js.map +1 -1
  85. package/dist/src/core/client.test.js +133 -6
  86. package/dist/src/core/client.test.js.map +1 -1
  87. package/dist/src/core/contentGenerator.js +5 -3
  88. package/dist/src/core/contentGenerator.js.map +1 -1
  89. package/dist/src/core/contentGenerator.test.js +29 -22
  90. package/dist/src/core/contentGenerator.test.js.map +1 -1
  91. package/dist/src/core/coreToolScheduler.d.ts +1 -1
  92. package/dist/src/core/coreToolScheduler.js +76 -34
  93. package/dist/src/core/coreToolScheduler.js.map +1 -1
  94. package/dist/src/core/coreToolScheduler.test.js +135 -37
  95. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  96. package/dist/src/core/geminiChat.js +60 -29
  97. package/dist/src/core/geminiChat.js.map +1 -1
  98. package/dist/src/core/geminiChat.test.js +236 -188
  99. package/dist/src/core/geminiChat.test.js.map +1 -1
  100. package/dist/src/core/geminiChat_network_retry.test.d.ts +6 -0
  101. package/dist/src/core/geminiChat_network_retry.test.js +198 -0
  102. package/dist/src/core/geminiChat_network_retry.test.js.map +1 -0
  103. package/dist/src/core/logger.js.map +1 -1
  104. package/dist/src/core/nonInteractiveToolExecutor.test.js +4 -5
  105. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  106. package/dist/src/core/prompts.js +13 -11
  107. package/dist/src/core/prompts.js.map +1 -1
  108. package/dist/src/core/prompts.test.js +19 -8
  109. package/dist/src/core/prompts.test.js.map +1 -1
  110. package/dist/src/core/sessionHookTriggers.d.ts +28 -0
  111. package/dist/src/core/sessionHookTriggers.js +68 -0
  112. package/dist/src/core/sessionHookTriggers.js.map +1 -0
  113. package/dist/src/core/turn.d.ts +1 -0
  114. package/dist/src/core/turn.js +1 -1
  115. package/dist/src/core/turn.js.map +1 -1
  116. package/dist/src/fallback/handler.js +56 -115
  117. package/dist/src/fallback/handler.js.map +1 -1
  118. package/dist/src/fallback/handler.test.js +124 -278
  119. package/dist/src/fallback/handler.test.js.map +1 -1
  120. package/dist/src/generated/git-commit.d.ts +2 -2
  121. package/dist/src/generated/git-commit.js +2 -2
  122. package/dist/src/hooks/hookEventHandler.js +59 -1
  123. package/dist/src/hooks/hookEventHandler.js.map +1 -1
  124. package/dist/src/hooks/hookEventHandler.test.js +8 -1
  125. package/dist/src/hooks/hookEventHandler.test.js.map +1 -1
  126. package/dist/src/hooks/hookRegistry.d.ts +0 -7
  127. package/dist/src/hooks/hookRegistry.js +8 -21
  128. package/dist/src/hooks/hookRegistry.js.map +1 -1
  129. package/dist/src/hooks/hookRegistry.test.js +2 -7
  130. package/dist/src/hooks/hookRegistry.test.js.map +1 -1
  131. package/dist/src/hooks/hookRunner.js +12 -2
  132. package/dist/src/hooks/hookRunner.js.map +1 -1
  133. package/dist/src/hooks/hookRunner.test.js +1 -1
  134. package/dist/src/hooks/hookRunner.test.js.map +1 -1
  135. package/dist/src/hooks/hookSystem.d.ts +0 -8
  136. package/dist/src/hooks/hookSystem.js +0 -18
  137. package/dist/src/hooks/hookSystem.js.map +1 -1
  138. package/dist/src/hooks/hookSystem.test.js +123 -18
  139. package/dist/src/hooks/hookSystem.test.js.map +1 -1
  140. package/dist/src/hooks/index.d.ts +3 -1
  141. package/dist/src/hooks/index.js +3 -0
  142. package/dist/src/hooks/index.js.map +1 -1
  143. package/dist/src/hooks/types.d.ts +1 -2
  144. package/dist/src/hooks/types.js +0 -1
  145. package/dist/src/hooks/types.js.map +1 -1
  146. package/dist/src/ide/detect-ide.test.js +32 -1
  147. package/dist/src/ide/detect-ide.test.js.map +1 -1
  148. package/dist/src/ide/ide-client.js +2 -0
  149. package/dist/src/ide/ide-client.js.map +1 -1
  150. package/dist/src/ide/ide-installer.test.js +1 -1
  151. package/dist/src/ide/ide-installer.test.js.map +1 -1
  152. package/dist/src/index.d.ts +8 -0
  153. package/dist/src/index.js +8 -0
  154. package/dist/src/index.js.map +1 -1
  155. package/dist/src/mcp/oauth-provider.js.map +1 -1
  156. package/dist/src/output/json-formatter.d.ts +2 -2
  157. package/dist/src/output/json-formatter.js +6 -3
  158. package/dist/src/output/json-formatter.js.map +1 -1
  159. package/dist/src/output/json-formatter.test.js +37 -9
  160. package/dist/src/output/json-formatter.test.js.map +1 -1
  161. package/dist/src/output/stream-json-formatter.js +6 -0
  162. package/dist/src/output/stream-json-formatter.js.map +1 -1
  163. package/dist/src/output/stream-json-formatter.test.js +98 -100
  164. package/dist/src/output/stream-json-formatter.test.js.map +1 -1
  165. package/dist/src/output/types.d.ts +3 -0
  166. package/dist/src/output/types.js.map +1 -1
  167. package/dist/src/policy/config.js +97 -11
  168. package/dist/src/policy/config.js.map +1 -1
  169. package/dist/src/policy/persistence.test.d.ts +6 -0
  170. package/dist/src/policy/persistence.test.js +154 -0
  171. package/dist/src/policy/persistence.test.js.map +1 -0
  172. package/dist/src/policy/policies/agent.toml +31 -0
  173. package/dist/src/policy/policy-engine.d.ts +10 -1
  174. package/dist/src/policy/policy-engine.js +79 -5
  175. package/dist/src/policy/policy-engine.js.map +1 -1
  176. package/dist/src/policy/policy-engine.test.js +26 -2
  177. package/dist/src/policy/policy-engine.test.js.map +1 -1
  178. package/dist/src/policy/policy-updater.test.d.ts +6 -0
  179. package/dist/src/policy/policy-updater.test.js +116 -0
  180. package/dist/src/policy/policy-updater.test.js.map +1 -0
  181. package/dist/src/policy/shell-safety.test.d.ts +6 -0
  182. package/dist/src/policy/shell-safety.test.js +75 -0
  183. package/dist/src/policy/shell-safety.test.js.map +1 -0
  184. package/dist/src/policy/toml-loader.d.ts +11 -5
  185. package/dist/src/policy/toml-loader.js +38 -23
  186. package/dist/src/policy/toml-loader.js.map +1 -1
  187. package/dist/src/policy/toml-loader.test.js +28 -7
  188. package/dist/src/policy/toml-loader.test.js.map +1 -1
  189. package/dist/src/policy/types.d.ts +15 -0
  190. package/dist/src/resources/resource-registry.d.ts +30 -0
  191. package/dist/src/resources/resource-registry.js +57 -0
  192. package/dist/src/resources/resource-registry.js.map +1 -0
  193. package/dist/src/resources/resource-registry.test.d.ts +6 -0
  194. package/dist/src/resources/resource-registry.test.js +54 -0
  195. package/dist/src/resources/resource-registry.test.js.map +1 -0
  196. package/dist/src/routing/modelRouterService.js +0 -15
  197. package/dist/src/routing/modelRouterService.js.map +1 -1
  198. package/dist/src/routing/modelRouterService.test.js +0 -62
  199. package/dist/src/routing/modelRouterService.test.js.map +1 -1
  200. package/dist/src/routing/strategies/classifierStrategy.js +10 -21
  201. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  202. package/dist/src/routing/strategies/classifierStrategy.test.js +2 -1
  203. package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
  204. package/dist/src/routing/strategies/fallbackStrategy.js +23 -12
  205. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
  206. package/dist/src/routing/strategies/fallbackStrategy.test.js +69 -39
  207. package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
  208. package/dist/src/routing/strategies/overrideStrategy.js +4 -3
  209. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
  210. package/dist/src/safety/checker-runner.js +17 -6
  211. package/dist/src/safety/checker-runner.js.map +1 -1
  212. package/dist/src/services/chatCompressionService.js +15 -1
  213. package/dist/src/services/chatCompressionService.js.map +1 -1
  214. package/dist/src/services/chatCompressionService.test.js +2 -0
  215. package/dist/src/services/chatCompressionService.test.js.map +1 -1
  216. package/dist/src/services/chatRecordingService.d.ts +14 -0
  217. package/dist/src/services/chatRecordingService.js +37 -0
  218. package/dist/src/services/chatRecordingService.js.map +1 -1
  219. package/dist/src/services/fileSystemService.d.ts +0 -9
  220. package/dist/src/services/fileSystemService.js +0 -11
  221. package/dist/src/services/fileSystemService.js.map +1 -1
  222. package/dist/src/services/gitService.js +5 -0
  223. package/dist/src/services/gitService.js.map +1 -1
  224. package/dist/src/services/gitService.test.js +28 -0
  225. package/dist/src/services/gitService.test.js.map +1 -1
  226. package/dist/src/services/loopDetectionService.js +2 -2
  227. package/dist/src/services/loopDetectionService.js.map +1 -1
  228. package/dist/src/services/modelConfig.golden.test.js +32 -0
  229. package/dist/src/services/modelConfig.golden.test.js.map +1 -1
  230. package/dist/src/services/modelConfigService.d.ts +3 -0
  231. package/dist/src/services/modelConfigService.js +3 -2
  232. package/dist/src/services/modelConfigService.js.map +1 -1
  233. package/dist/src/services/modelConfigService.test.js +110 -0
  234. package/dist/src/services/modelConfigService.test.js.map +1 -1
  235. package/dist/src/services/modelConfigServiceTestUtils.d.ts +10 -0
  236. package/dist/src/services/modelConfigServiceTestUtils.js +17 -0
  237. package/dist/src/services/modelConfigServiceTestUtils.js.map +1 -0
  238. package/dist/src/services/sessionSummaryService.d.ts +28 -0
  239. package/dist/src/services/sessionSummaryService.js +131 -0
  240. package/dist/src/services/sessionSummaryService.js.map +1 -0
  241. package/dist/src/services/sessionSummaryService.test.d.ts +6 -0
  242. package/dist/src/services/sessionSummaryService.test.js +785 -0
  243. package/dist/src/services/sessionSummaryService.test.js.map +1 -0
  244. package/dist/src/services/sessionSummaryUtils.d.ts +16 -0
  245. package/dist/src/services/sessionSummaryUtils.js +129 -0
  246. package/dist/src/services/sessionSummaryUtils.js.map +1 -0
  247. package/dist/src/services/sessionSummaryUtils.test.d.ts +6 -0
  248. package/dist/src/services/sessionSummaryUtils.test.js +137 -0
  249. package/dist/src/services/sessionSummaryUtils.test.js.map +1 -0
  250. package/dist/src/services/shellExecutionService.js +28 -22
  251. package/dist/src/services/shellExecutionService.js.map +1 -1
  252. package/dist/src/services/shellExecutionService.test.js +46 -4
  253. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  254. package/dist/src/services/test-data/resolved-aliases-retry.golden.json +238 -0
  255. package/dist/src/services/test-data/resolved-aliases.golden.json +16 -0
  256. package/dist/src/telemetry/activity-detector.test.js.map +1 -1
  257. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +1 -0
  258. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +28 -5
  259. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  260. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +67 -1
  261. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  262. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +1 -0
  263. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +3 -1
  264. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  265. package/dist/src/telemetry/config.js +2 -0
  266. package/dist/src/telemetry/config.js.map +1 -1
  267. package/dist/src/telemetry/config.test.js +25 -0
  268. package/dist/src/telemetry/config.test.js.map +1 -1
  269. package/dist/src/telemetry/gcp-exporters.d.ts +4 -3
  270. package/dist/src/telemetry/gcp-exporters.js +8 -4
  271. package/dist/src/telemetry/gcp-exporters.js.map +1 -1
  272. package/dist/src/telemetry/index.d.ts +1 -1
  273. package/dist/src/telemetry/index.js +1 -1
  274. package/dist/src/telemetry/index.js.map +1 -1
  275. package/dist/src/telemetry/loggers.d.ts +2 -1
  276. package/dist/src/telemetry/loggers.js +345 -335
  277. package/dist/src/telemetry/loggers.js.map +1 -1
  278. package/dist/src/telemetry/loggers.test.js +20 -5
  279. package/dist/src/telemetry/loggers.test.js.map +1 -1
  280. package/dist/src/telemetry/metrics.test.js.map +1 -1
  281. package/dist/src/telemetry/sdk.d.ts +9 -2
  282. package/dist/src/telemetry/sdk.js +143 -17
  283. package/dist/src/telemetry/sdk.js.map +1 -1
  284. package/dist/src/telemetry/sdk.test.js +130 -28
  285. package/dist/src/telemetry/sdk.test.js.map +1 -1
  286. package/dist/src/telemetry/startupProfiler.js +26 -3
  287. package/dist/src/telemetry/startupProfiler.js.map +1 -1
  288. package/dist/src/telemetry/startupProfiler.test.js +49 -7
  289. package/dist/src/telemetry/startupProfiler.test.js.map +1 -1
  290. package/dist/src/telemetry/telemetry.test.js +10 -3
  291. package/dist/src/telemetry/telemetry.test.js.map +1 -1
  292. package/dist/src/telemetry/trace.js.map +1 -1
  293. package/dist/src/telemetry/types.d.ts +31 -6
  294. package/dist/src/telemetry/types.js +47 -8
  295. package/dist/src/telemetry/types.js.map +1 -1
  296. package/dist/src/telemetry/uiTelemetry.d.ts +1 -0
  297. package/dist/src/telemetry/uiTelemetry.js +2 -0
  298. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  299. package/dist/src/telemetry/uiTelemetry.test.js +4 -0
  300. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  301. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  302. package/dist/src/tools/confirmation-policy.test.d.ts +6 -0
  303. package/dist/src/tools/confirmation-policy.test.js +152 -0
  304. package/dist/src/tools/confirmation-policy.test.js.map +1 -0
  305. package/dist/src/tools/edit.js +5 -0
  306. package/dist/src/tools/edit.js.map +1 -1
  307. package/dist/src/tools/edit.test.js.map +1 -1
  308. package/dist/src/tools/grep.js.map +1 -1
  309. package/dist/src/tools/mcp-client-manager.d.ts +2 -1
  310. package/dist/src/tools/mcp-client-manager.js +20 -4
  311. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  312. package/dist/src/tools/mcp-client-manager.test.js +13 -10
  313. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  314. package/dist/src/tools/mcp-client.d.ts +39 -3
  315. package/dist/src/tools/mcp-client.js +433 -168
  316. package/dist/src/tools/mcp-client.js.map +1 -1
  317. package/dist/src/tools/mcp-client.test.js +648 -28
  318. package/dist/src/tools/mcp-client.test.js.map +1 -1
  319. package/dist/src/tools/mcp-tool.js +13 -0
  320. package/dist/src/tools/mcp-tool.js.map +1 -1
  321. package/dist/src/tools/mcp-tool.test.js +25 -0
  322. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  323. package/dist/src/tools/memoryTool.js +1 -0
  324. package/dist/src/tools/memoryTool.js.map +1 -1
  325. package/dist/src/tools/modifiable-tool.js.map +1 -1
  326. package/dist/src/tools/modifiable-tool.test.js +22 -13
  327. package/dist/src/tools/modifiable-tool.test.js.map +1 -1
  328. package/dist/src/tools/read-file.js +1 -1
  329. package/dist/src/tools/read-file.js.map +1 -1
  330. package/dist/src/tools/read-file.test.js.map +1 -1
  331. package/dist/src/tools/read-many-files.js +6 -4
  332. package/dist/src/tools/read-many-files.js.map +1 -1
  333. package/dist/src/tools/read-many-files.test.js +1 -1
  334. package/dist/src/tools/read-many-files.test.js.map +1 -1
  335. package/dist/src/tools/shell.d.ts +2 -1
  336. package/dist/src/tools/shell.js +15 -1
  337. package/dist/src/tools/shell.js.map +1 -1
  338. package/dist/src/tools/shell.test.js +2 -1
  339. package/dist/src/tools/shell.test.js.map +1 -1
  340. package/dist/src/tools/smart-edit.js +5 -0
  341. package/dist/src/tools/smart-edit.js.map +1 -1
  342. package/dist/src/tools/smart-edit.test.js.map +1 -1
  343. package/dist/src/tools/tool-names.d.ts +2 -0
  344. package/dist/src/tools/tool-names.js +2 -0
  345. package/dist/src/tools/tool-names.js.map +1 -1
  346. package/dist/src/tools/tools.d.ts +19 -0
  347. package/dist/src/tools/tools.js +29 -8
  348. package/dist/src/tools/tools.js.map +1 -1
  349. package/dist/src/tools/web-fetch.js +17 -4
  350. package/dist/src/tools/web-fetch.js.map +1 -1
  351. package/dist/src/tools/web-fetch.test.js +1 -0
  352. package/dist/src/tools/web-fetch.test.js.map +1 -1
  353. package/dist/src/tools/write-file.js +5 -0
  354. package/dist/src/tools/write-file.js.map +1 -1
  355. package/dist/src/tools/write-file.test.js.map +1 -1
  356. package/dist/src/utils/bfsFileSearch.d.ts +8 -0
  357. package/dist/src/utils/bfsFileSearch.js +63 -23
  358. package/dist/src/utils/bfsFileSearch.js.map +1 -1
  359. package/dist/src/utils/bfsFileSearch.test.js +65 -1
  360. package/dist/src/utils/bfsFileSearch.test.js.map +1 -1
  361. package/dist/src/utils/checkpointUtils.d.ts +82 -0
  362. package/dist/src/utils/checkpointUtils.js +117 -0
  363. package/dist/src/utils/checkpointUtils.js.map +1 -0
  364. package/dist/src/utils/checkpointUtils.test.d.ts +6 -0
  365. package/dist/src/utils/checkpointUtils.test.js +229 -0
  366. package/dist/src/utils/checkpointUtils.test.js.map +1 -0
  367. package/dist/src/utils/debugLogger.d.ts +3 -0
  368. package/dist/src/utils/debugLogger.js +27 -0
  369. package/dist/src/utils/debugLogger.js.map +1 -1
  370. package/dist/src/utils/editCorrector.test.js +4 -0
  371. package/dist/src/utils/editCorrector.test.js.map +1 -1
  372. package/dist/src/utils/editor.d.ts +9 -1
  373. package/dist/src/utils/editor.js +23 -14
  374. package/dist/src/utils/editor.js.map +1 -1
  375. package/dist/src/utils/errors.d.ts +8 -0
  376. package/dist/src/utils/errors.js +39 -2
  377. package/dist/src/utils/errors.js.map +1 -1
  378. package/dist/src/utils/errors.test.d.ts +6 -0
  379. package/dist/src/utils/errors.test.js +155 -0
  380. package/dist/src/utils/errors.test.js.map +1 -0
  381. package/dist/src/utils/extensionLoader.d.ts +2 -2
  382. package/dist/src/utils/extensionLoader.js +5 -6
  383. package/dist/src/utils/extensionLoader.js.map +1 -1
  384. package/dist/src/utils/extensionLoader.test.js +11 -0
  385. package/dist/src/utils/extensionLoader.test.js.map +1 -1
  386. package/dist/src/utils/fetch.d.ts +1 -1
  387. package/dist/src/utils/fetch.js +3 -3
  388. package/dist/src/utils/fetch.js.map +1 -1
  389. package/dist/src/utils/fileUtils.test.js +15 -0
  390. package/dist/src/utils/fileUtils.test.js.map +1 -1
  391. package/dist/src/utils/filesearch/crawlCache.js.map +1 -1
  392. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  393. package/dist/src/utils/flashFallback.test.js +1 -1
  394. package/dist/src/utils/flashFallback.test.js.map +1 -1
  395. package/dist/src/utils/googleErrors.js +31 -18
  396. package/dist/src/utils/googleErrors.js.map +1 -1
  397. package/dist/src/utils/googleErrors.test.js +10 -2
  398. package/dist/src/utils/googleErrors.test.js.map +1 -1
  399. package/dist/src/utils/googleQuotaErrors.d.ts +3 -3
  400. package/dist/src/utils/googleQuotaErrors.js +32 -6
  401. package/dist/src/utils/googleQuotaErrors.js.map +1 -1
  402. package/dist/src/utils/googleQuotaErrors.test.js +94 -2
  403. package/dist/src/utils/googleQuotaErrors.test.js.map +1 -1
  404. package/dist/src/utils/nextSpeakerChecker.test.js +4 -0
  405. package/dist/src/utils/nextSpeakerChecker.test.js.map +1 -1
  406. package/dist/src/utils/pathCorrector.js +12 -2
  407. package/dist/src/utils/pathCorrector.js.map +1 -1
  408. package/dist/src/utils/pathCorrector.test.js +6 -2
  409. package/dist/src/utils/pathCorrector.test.js.map +1 -1
  410. package/dist/src/utils/retry.d.ts +11 -0
  411. package/dist/src/utils/retry.js +54 -13
  412. package/dist/src/utils/retry.js.map +1 -1
  413. package/dist/src/utils/retry.test.js +170 -10
  414. package/dist/src/utils/retry.test.js.map +1 -1
  415. package/dist/src/utils/shell-permissions.d.ts +52 -0
  416. package/dist/src/utils/shell-permissions.js +188 -0
  417. package/dist/src/utils/shell-permissions.js.map +1 -0
  418. package/dist/src/utils/shell-permissions.test.d.ts +6 -0
  419. package/dist/src/utils/shell-permissions.test.js +347 -0
  420. package/dist/src/utils/shell-permissions.test.js.map +1 -0
  421. package/dist/src/utils/shell-utils.d.ts +10 -47
  422. package/dist/src/utils/shell-utils.js +1 -182
  423. package/dist/src/utils/shell-utils.js.map +1 -1
  424. package/dist/src/utils/shell-utils.test.js +1 -288
  425. package/dist/src/utils/shell-utils.test.js.map +1 -1
  426. package/dist/src/utils/terminalSerializer.test.js +17 -0
  427. package/dist/src/utils/terminalSerializer.test.js.map +1 -1
  428. package/dist/src/utils/tool-utils.js.map +1 -1
  429. package/dist/src/utils/version.d.ts +6 -0
  430. package/dist/src/utils/version.js +15 -0
  431. package/dist/src/utils/version.js.map +1 -0
  432. package/dist/src/utils/version.test.d.ts +6 -0
  433. package/dist/src/utils/version.test.js +39 -0
  434. package/dist/src/utils/version.test.js.map +1 -0
  435. package/dist/tsconfig.tsbuildinfo +1 -1
  436. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init.test.js","sourceRoot":"","sources":["../../../src/commands/init.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAExC,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;QAClD,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAEjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACpC,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QACrD,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;QAC3D,MAAM,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAE1C,IAAI,MAAM,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { GitService } from '../services/gitService.js';
7
+ import type { CommandActionReturn } from './types.js';
8
+ import { type ToolCallData } from '../utils/checkpointUtils.js';
9
+ export declare function performRestore<HistoryType = unknown, ArgsType = unknown>(toolCallData: ToolCallData<HistoryType, ArgsType>, gitService: GitService | undefined): AsyncGenerator<CommandActionReturn<HistoryType>>;
@@ -0,0 +1,46 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import {} from '../utils/checkpointUtils.js';
7
+ export async function* performRestore(toolCallData, gitService) {
8
+ if (toolCallData.history && toolCallData.clientHistory) {
9
+ yield {
10
+ type: 'load_history',
11
+ history: toolCallData.history,
12
+ clientHistory: toolCallData.clientHistory,
13
+ };
14
+ }
15
+ if (toolCallData.commitHash) {
16
+ if (!gitService) {
17
+ yield {
18
+ type: 'message',
19
+ messageType: 'error',
20
+ content: 'Git service is not available, cannot restore checkpoint. Please ensure you are in a git repository.',
21
+ };
22
+ return;
23
+ }
24
+ try {
25
+ await gitService.restoreProjectFromSnapshot(toolCallData.commitHash);
26
+ yield {
27
+ type: 'message',
28
+ messageType: 'info',
29
+ content: 'Restored project to the state before the tool call.',
30
+ };
31
+ }
32
+ catch (e) {
33
+ const error = e;
34
+ if (error.message.includes('unable to read tree')) {
35
+ yield {
36
+ type: 'message',
37
+ messageType: 'error',
38
+ content: `The commit hash '${toolCallData.commitHash}' associated with this checkpoint could not be found in your Git repository. This can happen if the repository has been re-cloned, reset, or if old commits have been garbage collected. This checkpoint cannot be restored.`,
39
+ };
40
+ return;
41
+ }
42
+ throw e;
43
+ }
44
+ }
45
+ }
46
+ //# sourceMappingURL=restore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../../src/commands/restore.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAqB,MAAM,6BAA6B,CAAC;AAEhE,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,cAAc,CAInC,YAAiD,EACjD,UAAkC;IAElC,IAAI,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,aAAa,EAAE,CAAC;QACvD,MAAM;YACJ,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,aAAa,EAAE,YAAY,CAAC,aAAa;SAC1C,CAAC;IACJ,CAAC;IAED,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;QAC5B,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM;gBACJ,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,OAAO;gBACpB,OAAO,EACL,qGAAqG;aACxG,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,0BAA0B,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;YACrE,MAAM;gBACJ,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,qDAAqD;aAC/D,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,KAAK,GAAG,CAAU,CAAC;YACzB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;gBAClD,MAAM;oBACJ,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,OAAO;oBACpB,OAAO,EAAE,oBAAoB,YAAY,CAAC,UAAU,8NAA8N;iBACnR,CAAC;gBACF,OAAO;YACT,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;AACH,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,137 @@
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 { performRestore } from './restore.js';
8
+ import {} from '../utils/checkpointUtils.js';
9
+ describe('performRestore', () => {
10
+ let mockGitService;
11
+ beforeEach(() => {
12
+ mockGitService = {
13
+ initialize: vi.fn(),
14
+ verifyGitAvailability: vi.fn(),
15
+ setupShadowGitRepository: vi.fn(),
16
+ getCurrentCommitHash: vi.fn(),
17
+ createFileSnapshot: vi.fn(),
18
+ restoreProjectFromSnapshot: vi.fn(),
19
+ storage: {},
20
+ getHistoryDir: vi.fn().mockReturnValue('mock-history-dir'),
21
+ shadowGitRepository: {},
22
+ };
23
+ });
24
+ it('should yield load_history if history and clientHistory are present', async () => {
25
+ const toolCallData = {
26
+ toolCall: { name: 'test', args: {} },
27
+ history: [{ some: 'history' }],
28
+ clientHistory: [{ role: 'user', parts: [{ text: 'hello' }] }],
29
+ };
30
+ const generator = performRestore(toolCallData, undefined);
31
+ const result = await generator.next();
32
+ expect(result.value).toEqual({
33
+ type: 'load_history',
34
+ history: toolCallData.history,
35
+ clientHistory: toolCallData.clientHistory,
36
+ });
37
+ expect(result.done).toBe(false);
38
+ const nextResult = await generator.next();
39
+ expect(nextResult.done).toBe(true);
40
+ });
41
+ it('should call restoreProjectFromSnapshot and yield a message if commitHash and gitService are present', async () => {
42
+ const toolCallData = {
43
+ toolCall: { name: 'test', args: {} },
44
+ commitHash: 'test-commit-hash',
45
+ };
46
+ const spy = vi
47
+ .spyOn(mockGitService, 'restoreProjectFromSnapshot')
48
+ .mockResolvedValue(undefined);
49
+ const generator = performRestore(toolCallData, mockGitService);
50
+ const result = await generator.next();
51
+ expect(spy).toHaveBeenCalledWith('test-commit-hash');
52
+ expect(result.value).toEqual({
53
+ type: 'message',
54
+ messageType: 'info',
55
+ content: 'Restored project to the state before the tool call.',
56
+ });
57
+ expect(result.done).toBe(false);
58
+ const nextResult = await generator.next();
59
+ expect(nextResult.done).toBe(true);
60
+ });
61
+ it('should yield an error message if restoreProjectFromSnapshot throws "unable to read tree" error', async () => {
62
+ const toolCallData = {
63
+ toolCall: { name: 'test', args: {} },
64
+ commitHash: 'invalid-commit-hash',
65
+ };
66
+ const spy = vi
67
+ .spyOn(mockGitService, 'restoreProjectFromSnapshot')
68
+ .mockRejectedValue(new Error('fatal: unable to read tree invalid-commit-hash'));
69
+ const generator = performRestore(toolCallData, mockGitService);
70
+ const result = await generator.next();
71
+ expect(spy).toHaveBeenCalledWith('invalid-commit-hash');
72
+ expect(result.value).toEqual({
73
+ type: 'message',
74
+ messageType: 'error',
75
+ content: "The commit hash 'invalid-commit-hash' associated with this checkpoint could not be found in your Git repository. This can happen if the repository has been re-cloned, reset, or if old commits have been garbage collected. This checkpoint cannot be restored.",
76
+ });
77
+ expect(result.done).toBe(false);
78
+ const nextResult = await generator.next();
79
+ expect(nextResult.done).toBe(true);
80
+ });
81
+ it('should re-throw other errors from restoreProjectFromSnapshot', async () => {
82
+ const toolCallData = {
83
+ toolCall: { name: 'test', args: {} },
84
+ commitHash: 'some-commit-hash',
85
+ };
86
+ const testError = new Error('something went wrong');
87
+ vi.spyOn(mockGitService, 'restoreProjectFromSnapshot').mockRejectedValue(testError);
88
+ const generator = performRestore(toolCallData, mockGitService);
89
+ await expect(generator.next()).rejects.toThrow(testError);
90
+ });
91
+ it('should yield load_history then a message if both are present', async () => {
92
+ const toolCallData = {
93
+ toolCall: { name: 'test', args: {} },
94
+ history: [{ some: 'history' }],
95
+ clientHistory: [{ role: 'user', parts: [{ text: 'hello' }] }],
96
+ commitHash: 'test-commit-hash',
97
+ };
98
+ const spy = vi
99
+ .spyOn(mockGitService, 'restoreProjectFromSnapshot')
100
+ .mockResolvedValue(undefined);
101
+ const generator = performRestore(toolCallData, mockGitService);
102
+ const historyResult = await generator.next();
103
+ expect(historyResult.value).toEqual({
104
+ type: 'load_history',
105
+ history: toolCallData.history,
106
+ clientHistory: toolCallData.clientHistory,
107
+ });
108
+ expect(historyResult.done).toBe(false);
109
+ const messageResult = await generator.next();
110
+ expect(spy).toHaveBeenCalledWith('test-commit-hash');
111
+ expect(messageResult.value).toEqual({
112
+ type: 'message',
113
+ messageType: 'info',
114
+ content: 'Restored project to the state before the tool call.',
115
+ });
116
+ expect(messageResult.done).toBe(false);
117
+ const nextResult = await generator.next();
118
+ expect(nextResult.done).toBe(true);
119
+ });
120
+ it('should yield error message if commitHash is present but gitService is undefined', async () => {
121
+ const toolCallData = {
122
+ toolCall: { name: 'test', args: {} },
123
+ commitHash: 'test-commit-hash',
124
+ };
125
+ const generator = performRestore(toolCallData, undefined);
126
+ const result = await generator.next();
127
+ expect(result.value).toEqual({
128
+ type: 'message',
129
+ messageType: 'error',
130
+ content: 'Git service is not available, cannot restore checkpoint. Please ensure you are in a git repository.',
131
+ });
132
+ expect(result.done).toBe(false);
133
+ const nextResult = await generator.next();
134
+ expect(nextResult.done).toBe(true);
135
+ });
136
+ });
137
+ //# sourceMappingURL=restore.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore.test.js","sourceRoot":"","sources":["../../../src/commands/restore.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAqB,MAAM,6BAA6B,CAAC;AAGhE,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC9B,IAAI,cAA0B,CAAC;IAE/B,UAAU,CAAC,GAAG,EAAE;QACd,cAAc,GAAG;YACf,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE;YACnB,qBAAqB,EAAE,EAAE,CAAC,EAAE,EAAE;YAC9B,wBAAwB,EAAE,EAAE,CAAC,EAAE,EAAE;YACjC,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE;YAC7B,kBAAkB,EAAE,EAAE,CAAC,EAAE,EAAE;YAC3B,0BAA0B,EAAE,EAAE,CAAC,EAAE,EAAE;YACnC,OAAO,EAAE,EAAE;YACX,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,kBAAkB,CAAC;YAC1D,mBAAmB,EAAE,EAAE;SACC,CAAC;IAC7B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,MAAM,YAAY,GAAiB;YACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC9B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;SAC9D,CAAC;QAEF,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YAC3B,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,aAAa,EAAE,YAAY,CAAC,aAAa;SAC1C,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qGAAqG,EAAE,KAAK,IAAI,EAAE;QACnH,MAAM,YAAY,GAAiB;YACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpC,UAAU,EAAE,kBAAkB;SAC/B,CAAC;QACF,MAAM,GAAG,GAAG,EAAE;aACX,KAAK,CAAC,cAAc,EAAE,4BAA4B,CAAC;aACnD,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAEhC,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,MAAM;YACnB,OAAO,EAAE,qDAAqD;SAC/D,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gGAAgG,EAAE,KAAK,IAAI,EAAE;QAC9G,MAAM,YAAY,GAAiB;YACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpC,UAAU,EAAE,qBAAqB;SAClC,CAAC;QACF,MAAM,GAAG,GAAG,EAAE;aACX,KAAK,CAAC,cAAc,EAAE,4BAA4B,CAAC;aACnD,iBAAiB,CAChB,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAC5D,CAAC;QAEJ,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC/D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,qBAAqB,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,OAAO;YACpB,OAAO,EACL,kQAAkQ;SACrQ,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,YAAY,GAAiB;YACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpC,UAAU,EAAE,kBAAkB;SAC/B,CAAC;QACF,MAAM,SAAS,GAAG,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACpD,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,4BAA4B,CAAC,CAAC,iBAAiB,CACtE,SAAS,CACV,CAAC;QAEF,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAC/D,MAAM,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,YAAY,GAAiB;YACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC9B,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;YAC7D,UAAU,EAAE,kBAAkB;SAC/B,CAAC;QACF,MAAM,GAAG,GAAG,EAAE;aACX,KAAK,CAAC,cAAc,EAAE,4BAA4B,CAAC;aACnD,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAEhC,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;QAE/D,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YAClC,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,aAAa,EAAE,YAAY,CAAC,aAAa;SAC1C,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEvC,MAAM,aAAa,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,CAAC,CAAC;QACrD,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YAClC,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,MAAM;YACnB,OAAO,EAAE,qDAAqD;SAC/D,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEvC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAC/F,MAAM,YAAY,GAAiB;YACjC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE;YACpC,UAAU,EAAE,kBAAkB;SAC/B,CAAC;QAEF,MAAM,SAAS,GAAG,cAAc,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC1D,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAEtC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC;YAC3B,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,OAAO;YACpB,OAAO,EACL,qGAAqG;SACxG,CAAC,CAAC;QACH,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAEhC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import type { Content, PartListUnion } from '@google/genai';
7
+ /**
8
+ * The return type for a command action that results in scheduling a tool call.
9
+ */
10
+ export interface ToolActionReturn {
11
+ type: 'tool';
12
+ toolName: string;
13
+ toolArgs: Record<string, unknown>;
14
+ }
15
+ /**
16
+ * The return type for a command action that results in a simple message
17
+ * being displayed to the user.
18
+ */
19
+ export interface MessageActionReturn {
20
+ type: 'message';
21
+ messageType: 'info' | 'error';
22
+ content: string;
23
+ }
24
+ /**
25
+ * The return type for a command action that results in replacing
26
+ * the entire conversation history.
27
+ */
28
+ export interface LoadHistoryActionReturn<HistoryType = unknown> {
29
+ type: 'load_history';
30
+ history: HistoryType;
31
+ clientHistory: Content[];
32
+ }
33
+ /**
34
+ * The return type for a command action that should immediately submit
35
+ * content as a prompt to the Gemini model.
36
+ */
37
+ export interface SubmitPromptActionReturn {
38
+ type: 'submit_prompt';
39
+ content: PartListUnion;
40
+ }
41
+ export type CommandActionReturn<HistoryType = unknown> = ToolActionReturn | MessageActionReturn | LoadHistoryActionReturn<HistoryType> | SubmitPromptActionReturn;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -6,6 +6,7 @@
6
6
  import type { ContentGenerator, ContentGeneratorConfig } from '../core/contentGenerator.js';
7
7
  import { AuthType } from '../core/contentGenerator.js';
8
8
  import { PromptRegistry } from '../prompts/prompt-registry.js';
9
+ import { ResourceRegistry } from '../resources/resource-registry.js';
9
10
  import { ToolRegistry } from '../tools/tool-registry.js';
10
11
  import { GeminiClient } from '../core/client.js';
11
12
  import { BaseLlmClient } from '../core/baseLlmClient.js';
@@ -35,6 +36,7 @@ import { PolicyEngine } from '../policy/policy-engine.js';
35
36
  import type { PolicyEngineConfig } from '../policy/types.js';
36
37
  import { HookSystem } from '../hooks/index.js';
37
38
  import type { UserTierId } from '../code_assist/types.js';
39
+ import type { RetrieveUserQuotaResponse } from '../code_assist/types.js';
38
40
  import type { Experiments } from '../code_assist/experiments/experiments.js';
39
41
  import { AgentRegistry } from '../agents/registry.js';
40
42
  import { ApprovalMode } from '../policy/types.js';
@@ -57,6 +59,7 @@ export interface TelemetrySettings {
57
59
  logPrompts?: boolean;
58
60
  outfile?: string;
59
61
  useCollector?: boolean;
62
+ useCliAuth?: boolean;
60
63
  }
61
64
  export interface OutputSettings {
62
65
  format?: OutputFormat;
@@ -114,6 +117,7 @@ export declare class MCPServerConfig {
114
117
  readonly httpUrl?: string | undefined;
115
118
  readonly headers?: Record<string, string> | undefined;
116
119
  readonly tcp?: string | undefined;
120
+ readonly type?: "sse" | "http" | undefined;
117
121
  readonly timeout?: number | undefined;
118
122
  readonly trust?: boolean | undefined;
119
123
  readonly description?: string | undefined;
@@ -124,7 +128,7 @@ export declare class MCPServerConfig {
124
128
  readonly authProviderType?: AuthProviderType | undefined;
125
129
  readonly targetAudience?: string | undefined;
126
130
  readonly targetServiceAccount?: string | undefined;
127
- constructor(command?: string | undefined, args?: string[] | undefined, env?: Record<string, string> | undefined, cwd?: string | undefined, stdio?: boolean | undefined, url?: string | undefined, httpUrl?: string | undefined, headers?: Record<string, string> | undefined, tcp?: string | undefined, timeout?: number | undefined, trust?: boolean | undefined, description?: string | undefined, includeTools?: string[] | undefined, excludeTools?: string[] | undefined, extension?: GeminiCLIExtension | undefined, oauth?: MCPOAuthConfig | undefined, authProviderType?: AuthProviderType | undefined, targetAudience?: string | undefined, targetServiceAccount?: string | undefined);
131
+ constructor(command?: string | undefined, args?: string[] | undefined, env?: Record<string, string> | undefined, cwd?: string | undefined, stdio?: boolean | undefined, url?: string | undefined, httpUrl?: string | undefined, headers?: Record<string, string> | undefined, tcp?: string | undefined, type?: "sse" | "http" | undefined, timeout?: number | undefined, trust?: boolean | undefined, description?: string | undefined, includeTools?: string[] | undefined, excludeTools?: string[] | undefined, extension?: GeminiCLIExtension | undefined, oauth?: MCPOAuthConfig | undefined, authProviderType?: AuthProviderType | undefined, targetAudience?: string | undefined, targetServiceAccount?: string | undefined);
128
132
  }
129
133
  export declare enum AuthProviderType {
130
134
  DYNAMIC_DISCOVERY = "dynamic_discovery",
@@ -225,8 +229,13 @@ export interface ConfigParameters {
225
229
  experiments?: Experiments;
226
230
  hooks?: {
227
231
  [K in HookEventName]?: HookDefinition[];
228
- };
232
+ } | ({
233
+ [K in HookEventName]?: HookDefinition[];
234
+ } & {
235
+ disabled?: string[];
236
+ });
229
237
  previewFeatures?: boolean;
238
+ enableAgents?: boolean;
230
239
  enableModelAvailabilityService?: boolean;
231
240
  experimentalJitContext?: boolean;
232
241
  }
@@ -236,6 +245,7 @@ export declare class Config {
236
245
  private allowedMcpServers;
237
246
  private blockedMcpServers;
238
247
  private promptRegistry;
248
+ private resourceRegistry;
239
249
  private agentRegistry;
240
250
  private sessionId;
241
251
  private fileSystemService;
@@ -258,7 +268,6 @@ export declare class Config {
258
268
  private userMemory;
259
269
  private geminiMdFileCount;
260
270
  private geminiMdFilePaths;
261
- private approvalMode;
262
271
  private readonly showMemoryUsage;
263
272
  private readonly accessibility;
264
273
  private readonly telemetrySettings;
@@ -280,10 +289,12 @@ export declare class Config {
280
289
  private readonly bugCommand;
281
290
  private model;
282
291
  private previewFeatures;
292
+ private hasAccessToPreviewModel;
283
293
  private readonly noBrowser;
284
294
  private readonly folderTrust;
285
295
  private ideMode;
286
296
  private inFallbackMode;
297
+ private _activeModel;
287
298
  private readonly maxSessionTurns;
288
299
  private readonly listSessions;
289
300
  private readonly deleteSession;
@@ -332,12 +343,14 @@ export declare class Config {
332
343
  private pendingIncludeDirectories;
333
344
  private readonly enableHooks;
334
345
  private readonly hooks;
346
+ private readonly disabledHooks;
335
347
  private experiments;
336
348
  private experimentsPromise;
337
349
  private hookSystem?;
338
350
  private previewModelFallbackMode;
339
351
  private previewModelBypassMode;
340
352
  private readonly enableModelAvailabilityService;
353
+ private readonly enableAgents;
341
354
  private readonly experimentalJitContext;
342
355
  private contextManager?;
343
356
  constructor(params: ConfigParameters);
@@ -361,6 +374,9 @@ export declare class Config {
361
374
  getContentGeneratorConfig(): ContentGeneratorConfig;
362
375
  getModel(): string;
363
376
  setModel(newModel: string): void;
377
+ getActiveModel(): string;
378
+ setActiveModel(model: string): void;
379
+ resetTurn(): void;
364
380
  isInFallbackMode(): boolean;
365
381
  setFallbackMode(active: boolean): void;
366
382
  setFallbackModelHandler(handler: FallbackModelHandler): void;
@@ -381,10 +397,14 @@ export declare class Config {
381
397
  getAgentRegistry(): AgentRegistry;
382
398
  getToolRegistry(): ToolRegistry;
383
399
  getPromptRegistry(): PromptRegistry;
400
+ getResourceRegistry(): ResourceRegistry;
384
401
  getDebugMode(): boolean;
385
402
  getQuestion(): string | undefined;
386
403
  getPreviewFeatures(): boolean | undefined;
387
404
  setPreviewFeatures(previewFeatures: boolean): void;
405
+ getHasAccessToPreviewModel(): boolean;
406
+ setHasAccessToPreviewModel(hasAccess: boolean): void;
407
+ refreshUserQuota(): Promise<RetrieveUserQuotaResponse | undefined>;
388
408
  getCoreTools(): string[] | undefined;
389
409
  getAllowedTools(): string[] | undefined;
390
410
  /**
@@ -431,6 +451,7 @@ export declare class Config {
431
451
  getTelemetryTarget(): TelemetryTarget;
432
452
  getTelemetryOutfile(): string | undefined;
433
453
  getTelemetryUseCollector(): boolean;
454
+ getTelemetryUseCliAuth(): boolean;
434
455
  getGeminiClient(): GeminiClient;
435
456
  /**
436
457
  * Updates the system instruction with the latest user memory.
@@ -470,6 +491,7 @@ export declare class Config {
470
491
  getEnabledExtensions(): string[];
471
492
  getEnableExtensionReloading(): boolean;
472
493
  isModelAvailabilityServiceEnabled(): boolean;
494
+ isAgentsEnabled(): boolean;
473
495
  getNoBrowser(): boolean;
474
496
  isBrowserLaunchSuppressed(): boolean;
475
497
  getSummarizeToolOutputConfig(): Record<string, SummarizeToolOutputSettings> | undefined;
@@ -534,6 +556,10 @@ export declare class Config {
534
556
  getHooks(): {
535
557
  [K in HookEventName]?: HookDefinition[];
536
558
  } | undefined;
559
+ /**
560
+ * Get disabled hooks list
561
+ */
562
+ getDisabledHooks(): string[];
537
563
  /**
538
564
  * Get experiments configuration
539
565
  */