@machina.ai/cell-cli-core 1.10.0-rc1 → 1.13.0-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 (549) hide show
  1. package/dist/index.d.ts +5 -0
  2. package/dist/index.js +4 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/package.json +13 -5
  5. package/dist/src/agents/codebase-investigator.js +2 -5
  6. package/dist/src/agents/codebase-investigator.js.map +1 -1
  7. package/dist/src/agents/executor.d.ts +19 -0
  8. package/dist/src/agents/executor.js +234 -46
  9. package/dist/src/agents/executor.js.map +1 -1
  10. package/dist/src/agents/executor.test.js +371 -40
  11. package/dist/src/agents/executor.test.js.map +1 -1
  12. package/dist/src/agents/registry.js +4 -3
  13. package/dist/src/agents/registry.js.map +1 -1
  14. package/dist/src/agents/subagent-tool-wrapper.test.js +2 -4
  15. package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
  16. package/dist/src/agents/types.d.ts +2 -1
  17. package/dist/src/agents/types.js +1 -0
  18. package/dist/src/agents/types.js.map +1 -1
  19. package/dist/src/code_assist/converter.d.ts +1 -0
  20. package/dist/src/code_assist/converter.js +1 -0
  21. package/dist/src/code_assist/converter.js.map +1 -1
  22. package/dist/src/code_assist/converter.test.js +19 -0
  23. package/dist/src/code_assist/converter.test.js.map +1 -1
  24. package/dist/src/code_assist/experiments/client_metadata.d.ts +12 -0
  25. package/dist/src/code_assist/experiments/client_metadata.js +49 -0
  26. package/dist/src/code_assist/experiments/client_metadata.js.map +1 -0
  27. package/dist/src/code_assist/experiments/experiments.d.ts +17 -0
  28. package/dist/src/code_assist/experiments/experiments.js +36 -0
  29. package/dist/src/code_assist/experiments/experiments.js.map +1 -0
  30. package/dist/src/code_assist/experiments/types.d.ts +35 -0
  31. package/dist/src/code_assist/experiments/types.js +7 -0
  32. package/dist/src/code_assist/experiments/types.js.map +1 -0
  33. package/dist/src/code_assist/oauth-credential-storage.js +5 -4
  34. package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
  35. package/dist/src/code_assist/oauth-credential-storage.test.js +15 -3
  36. package/dist/src/code_assist/oauth-credential-storage.test.js.map +1 -1
  37. package/dist/src/code_assist/oauth2.d.ts +2 -2
  38. package/dist/src/code_assist/oauth2.js +64 -51
  39. package/dist/src/code_assist/oauth2.js.map +1 -1
  40. package/dist/src/code_assist/oauth2.test.js +65 -33
  41. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  42. package/dist/src/code_assist/server.d.ts +6 -4
  43. package/dist/src/code_assist/server.js +11 -0
  44. package/dist/src/code_assist/server.js.map +1 -1
  45. package/dist/src/code_assist/server.test.js +17 -0
  46. package/dist/src/code_assist/server.test.js.map +1 -1
  47. package/dist/src/code_assist/setup.d.ts +2 -2
  48. package/dist/src/code_assist/setup.js.map +1 -1
  49. package/dist/src/code_assist/types.d.ts +1 -1
  50. package/dist/src/code_assist/types.js.map +1 -1
  51. package/dist/src/commands/extensions.d.ts +7 -0
  52. package/dist/src/commands/extensions.js +9 -0
  53. package/dist/src/commands/extensions.js.map +1 -0
  54. package/dist/src/commands/extensions.test.js +19 -0
  55. package/dist/src/commands/extensions.test.js.map +1 -0
  56. package/dist/src/config/config.d.ts +81 -32
  57. package/dist/src/config/config.js +193 -66
  58. package/dist/src/config/config.js.map +1 -1
  59. package/dist/src/config/config.test.js +115 -36
  60. package/dist/src/config/config.test.js.map +1 -1
  61. package/dist/src/config/models.d.ts +1 -1
  62. package/dist/src/config/models.js +2 -2
  63. package/dist/src/config/models.js.map +1 -1
  64. package/dist/src/config/storage.d.ts +3 -0
  65. package/dist/src/config/storage.js +20 -0
  66. package/dist/src/config/storage.js.map +1 -1
  67. package/dist/src/confirmation-bus/message-bus.d.ts +2 -1
  68. package/dist/src/confirmation-bus/message-bus.js +7 -1
  69. package/dist/src/confirmation-bus/message-bus.js.map +1 -1
  70. package/dist/src/confirmation-bus/types.d.ts +12 -2
  71. package/dist/src/confirmation-bus/types.js +1 -0
  72. package/dist/src/confirmation-bus/types.js.map +1 -1
  73. package/dist/src/core/apiKeyCredentialStorage.d.ts +17 -0
  74. package/dist/src/core/apiKeyCredentialStorage.js +64 -0
  75. package/dist/src/core/apiKeyCredentialStorage.js.map +1 -0
  76. package/dist/src/core/apiKeyCredentialStorage.test.d.ts +6 -0
  77. package/dist/src/core/apiKeyCredentialStorage.test.js +71 -0
  78. package/dist/src/core/apiKeyCredentialStorage.test.js.map +1 -0
  79. package/dist/src/core/client.d.ts +2 -11
  80. package/dist/src/core/client.js +31 -170
  81. package/dist/src/core/client.js.map +1 -1
  82. package/dist/src/core/client.test.js +107 -429
  83. package/dist/src/core/client.test.js.map +1 -1
  84. package/dist/src/core/contentGenerator.js +64 -59
  85. package/dist/src/core/contentGenerator.js.map +1 -1
  86. package/dist/src/core/contentGenerator.test.js +38 -4
  87. package/dist/src/core/contentGenerator.test.js.map +1 -1
  88. package/dist/src/core/coreToolScheduler.d.ts +8 -2
  89. package/dist/src/core/coreToolScheduler.js +337 -172
  90. package/dist/src/core/coreToolScheduler.js.map +1 -1
  91. package/dist/src/core/coreToolScheduler.test.js +363 -12
  92. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  93. package/dist/src/core/fakeContentGenerator.d.ts +33 -0
  94. package/dist/src/core/fakeContentGenerator.js +58 -0
  95. package/dist/src/core/fakeContentGenerator.js.map +1 -0
  96. package/dist/src/core/fakeContentGenerator.test.d.ts +6 -0
  97. package/dist/src/core/fakeContentGenerator.test.js +127 -0
  98. package/dist/src/core/fakeContentGenerator.test.js.map +1 -0
  99. package/dist/src/core/geminiChat.d.ts +2 -0
  100. package/dist/src/core/geminiChat.js +7 -2
  101. package/dist/src/core/geminiChat.js.map +1 -1
  102. package/dist/src/core/geminiChat.test.js +15 -3
  103. package/dist/src/core/geminiChat.test.js.map +1 -1
  104. package/dist/src/core/logger.js +21 -19
  105. package/dist/src/core/logger.js.map +1 -1
  106. package/dist/src/core/loggingContentGenerator.d.ts +1 -0
  107. package/dist/src/core/loggingContentGenerator.js +113 -33
  108. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  109. package/dist/src/core/nonInteractiveToolExecutor.js +5 -4
  110. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  111. package/dist/src/core/nonInteractiveToolExecutor.test.js +3 -0
  112. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  113. package/dist/src/core/prompts.js +115 -72
  114. package/dist/src/core/prompts.js.map +1 -1
  115. package/dist/src/core/prompts.test.js +30 -108
  116. package/dist/src/core/prompts.test.js.map +1 -1
  117. package/dist/src/core/recordingContentGenerator.d.ts +18 -0
  118. package/dist/src/core/recordingContentGenerator.js +77 -0
  119. package/dist/src/core/recordingContentGenerator.js.map +1 -0
  120. package/dist/src/core/recordingContentGenerator.test.d.ts +6 -0
  121. package/dist/src/core/recordingContentGenerator.test.js +101 -0
  122. package/dist/src/core/recordingContentGenerator.test.js.map +1 -0
  123. package/dist/src/core/turn.d.ts +2 -0
  124. package/dist/src/core/turn.js +3 -1
  125. package/dist/src/core/turn.js.map +1 -1
  126. package/dist/src/core/turn.test.js +48 -0
  127. package/dist/src/core/turn.test.js.map +1 -1
  128. package/dist/src/fallback/handler.js +2 -0
  129. package/dist/src/fallback/handler.js.map +1 -1
  130. package/dist/src/generated/git-commit.d.ts +2 -2
  131. package/dist/src/generated/git-commit.js +2 -2
  132. package/dist/src/hooks/hookPlanner.d.ts +46 -0
  133. package/dist/src/hooks/hookPlanner.js +108 -0
  134. package/dist/src/hooks/hookPlanner.js.map +1 -0
  135. package/dist/src/hooks/hookPlanner.test.d.ts +6 -0
  136. package/dist/src/hooks/hookPlanner.test.js +255 -0
  137. package/dist/src/hooks/hookPlanner.test.js.map +1 -0
  138. package/dist/src/hooks/hookRegistry.d.ts +87 -0
  139. package/dist/src/hooks/hookRegistry.js +198 -0
  140. package/dist/src/hooks/hookRegistry.js.map +1 -0
  141. package/dist/src/hooks/hookRegistry.test.d.ts +6 -0
  142. package/dist/src/hooks/hookRegistry.test.js +341 -0
  143. package/dist/src/hooks/hookRegistry.test.js.map +1 -0
  144. package/dist/src/hooks/hookTranslator.d.ts +113 -0
  145. package/dist/src/hooks/hookTranslator.js +232 -0
  146. package/dist/src/hooks/hookTranslator.js.map +1 -0
  147. package/dist/src/hooks/hookTranslator.test.d.ts +6 -0
  148. package/dist/src/hooks/hookTranslator.test.js +192 -0
  149. package/dist/src/hooks/hookTranslator.test.js.map +1 -0
  150. package/dist/src/hooks/types.d.ts +384 -0
  151. package/dist/src/hooks/types.js +284 -0
  152. package/dist/src/hooks/types.js.map +1 -0
  153. package/dist/src/hooks/types.test.d.ts +6 -0
  154. package/dist/src/hooks/types.test.js +35 -0
  155. package/dist/src/hooks/types.test.js.map +1 -0
  156. package/dist/src/ide/ide-client.js +2 -1
  157. package/dist/src/ide/ide-client.js.map +1 -1
  158. package/dist/src/index.d.ts +15 -0
  159. package/dist/src/index.js +18 -0
  160. package/dist/src/index.js.map +1 -1
  161. package/dist/src/mcp/google-auth-provider.d.ts +2 -0
  162. package/dist/src/mcp/google-auth-provider.js +21 -3
  163. package/dist/src/mcp/google-auth-provider.js.map +1 -1
  164. package/dist/src/mcp/google-auth-provider.test.js +42 -9
  165. package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
  166. package/dist/src/mcp/mcpLauncher.d.ts +26 -0
  167. package/dist/src/mcp/mcpLauncher.js +238 -0
  168. package/dist/src/mcp/mcpLauncher.js.map +1 -0
  169. package/dist/src/mcp/oauth-provider.d.ts +8 -5
  170. package/dist/src/mcp/oauth-provider.js +140 -55
  171. package/dist/src/mcp/oauth-provider.js.map +1 -1
  172. package/dist/src/mcp/oauth-provider.test.js +191 -2
  173. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  174. package/dist/src/mcp/oauth-token-storage.js +5 -4
  175. package/dist/src/mcp/oauth-token-storage.js.map +1 -1
  176. package/dist/src/mcp/oauth-token-storage.test.js +17 -11
  177. package/dist/src/mcp/oauth-token-storage.test.js.map +1 -1
  178. package/dist/src/mcp/oauth-utils.d.ts +7 -0
  179. package/dist/src/mcp/oauth-utils.js +28 -8
  180. package/dist/src/mcp/oauth-utils.js.map +1 -1
  181. package/dist/src/mcp/oauth-utils.test.js +45 -2
  182. package/dist/src/mcp/oauth-utils.test.js.map +1 -1
  183. package/dist/src/mcp/sa-impersonation-provider.d.ts +0 -6
  184. package/dist/src/mcp/sa-impersonation-provider.js +6 -23
  185. package/dist/src/mcp/sa-impersonation-provider.js.map +1 -1
  186. package/dist/src/mcp/token-storage/base-token-storage.test.js +75 -84
  187. package/dist/src/mcp/token-storage/base-token-storage.test.js.map +1 -1
  188. package/dist/src/mcp/token-storage/file-token-storage.js +1 -1
  189. package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
  190. package/dist/src/mcp/token-storage/file-token-storage.test.js +7 -5
  191. package/dist/src/mcp/token-storage/file-token-storage.test.js.map +1 -1
  192. package/dist/src/mcp/token-storage/hybrid-token-storage.js +1 -1
  193. package/dist/src/mcp/token-storage/hybrid-token-storage.js.map +1 -1
  194. package/dist/src/mcp/token-storage/hybrid-token-storage.test.js +2 -2
  195. package/dist/src/mcp/token-storage/hybrid-token-storage.test.js.map +1 -1
  196. package/dist/src/mcp/token-storage/keychain-token-storage.d.ts +6 -2
  197. package/dist/src/mcp/token-storage/keychain-token-storage.js +63 -7
  198. package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
  199. package/dist/src/mcp/token-storage/keychain-token-storage.test.js +54 -3
  200. package/dist/src/mcp/token-storage/keychain-token-storage.test.js.map +1 -1
  201. package/dist/src/mcp/token-storage/types.d.ts +6 -0
  202. package/dist/src/mcp/token-storage/types.js.map +1 -1
  203. package/dist/src/output/stream-json-formatter.d.ts +32 -0
  204. package/dist/src/output/stream-json-formatter.js +52 -0
  205. package/dist/src/output/stream-json-formatter.js.map +1 -0
  206. package/dist/src/output/stream-json-formatter.test.d.ts +6 -0
  207. package/dist/src/output/stream-json-formatter.test.js +479 -0
  208. package/dist/src/output/stream-json-formatter.test.js.map +1 -0
  209. package/dist/src/output/types.d.ts +63 -1
  210. package/dist/src/output/types.js +11 -0
  211. package/dist/src/output/types.js.map +1 -1
  212. package/dist/src/policy/config.d.ts +31 -0
  213. package/dist/src/policy/config.js +197 -0
  214. package/dist/src/policy/config.js.map +1 -0
  215. package/dist/src/policy/config.test.d.ts +6 -0
  216. package/dist/src/policy/config.test.js +404 -0
  217. package/dist/src/policy/config.test.js.map +1 -0
  218. package/dist/src/policy/index.d.ts +2 -0
  219. package/dist/src/policy/index.js +2 -0
  220. package/dist/src/policy/index.js.map +1 -1
  221. package/dist/src/policy/policies/read-only.toml +56 -0
  222. package/dist/src/policy/policies/write.toml +63 -0
  223. package/dist/src/policy/policies/yolo.toml +31 -0
  224. package/dist/src/policy/policy-engine.js +4 -0
  225. package/dist/src/policy/policy-engine.js.map +1 -1
  226. package/dist/src/policy/toml-loader.d.ts +46 -0
  227. package/dist/src/policy/toml-loader.js +314 -0
  228. package/dist/src/policy/toml-loader.js.map +1 -0
  229. package/dist/src/policy/toml-loader.test.d.ts +6 -0
  230. package/dist/src/policy/toml-loader.test.js +522 -0
  231. package/dist/src/policy/toml-loader.test.js.map +1 -0
  232. package/dist/src/policy/types.d.ts +18 -0
  233. package/dist/src/policy/types.js +6 -0
  234. package/dist/src/policy/types.js.map +1 -1
  235. package/dist/src/prompts/prompt-registry.js +2 -1
  236. package/dist/src/prompts/prompt-registry.js.map +1 -1
  237. package/dist/src/routing/strategies/classifierStrategy.js +3 -2
  238. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  239. package/dist/src/services/chatCompressionService.d.ts +32 -0
  240. package/dist/src/services/chatCompressionService.js +162 -0
  241. package/dist/src/services/chatCompressionService.js.map +1 -0
  242. package/dist/src/services/chatCompressionService.test.d.ts +6 -0
  243. package/dist/src/services/chatCompressionService.test.js +209 -0
  244. package/dist/src/services/chatCompressionService.test.js.map +1 -0
  245. package/dist/src/services/chatRecordingService.js +9 -8
  246. package/dist/src/services/chatRecordingService.js.map +1 -1
  247. package/dist/src/services/fileDiscoveryService.d.ts +2 -14
  248. package/dist/src/services/fileDiscoveryService.js +19 -55
  249. package/dist/src/services/fileDiscoveryService.js.map +1 -1
  250. package/dist/src/services/fileDiscoveryService.test.js +91 -11
  251. package/dist/src/services/fileDiscoveryService.test.js.map +1 -1
  252. package/dist/src/services/loopDetectionService.d.ts +1 -1
  253. package/dist/src/services/loopDetectionService.js +27 -13
  254. package/dist/src/services/loopDetectionService.js.map +1 -1
  255. package/dist/src/services/loopDetectionService.test.js +119 -11
  256. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  257. package/dist/src/services/shellExecutionService.js +50 -23
  258. package/dist/src/services/shellExecutionService.js.map +1 -1
  259. package/dist/src/services/shellExecutionService.test.js +82 -15
  260. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  261. package/dist/src/telemetry/activity-monitor.d.ts +116 -0
  262. package/dist/src/telemetry/activity-monitor.js +209 -0
  263. package/dist/src/telemetry/activity-monitor.js.map +1 -0
  264. package/dist/src/telemetry/activity-monitor.test.d.ts +6 -0
  265. package/dist/src/telemetry/activity-monitor.test.js +248 -0
  266. package/dist/src/telemetry/activity-monitor.test.js.map +1 -0
  267. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +5 -1
  268. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +135 -57
  269. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  270. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +43 -75
  271. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  272. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +7 -1
  273. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +13 -1
  274. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  275. package/dist/src/telemetry/gcp-exporters.js +0 -1
  276. package/dist/src/telemetry/gcp-exporters.js.map +1 -1
  277. package/dist/src/telemetry/gcp-exporters.test.js +1 -1
  278. package/dist/src/telemetry/gcp-exporters.test.js.map +1 -1
  279. package/dist/src/telemetry/index.d.ts +4 -2
  280. package/dist/src/telemetry/index.js +5 -3
  281. package/dist/src/telemetry/index.js.map +1 -1
  282. package/dist/src/telemetry/loggers.d.ts +2 -1
  283. package/dist/src/telemetry/loggers.js +37 -26
  284. package/dist/src/telemetry/loggers.js.map +1 -1
  285. package/dist/src/telemetry/loggers.test.js +215 -56
  286. package/dist/src/telemetry/loggers.test.js.map +1 -1
  287. package/dist/src/telemetry/metrics.d.ts +55 -6
  288. package/dist/src/telemetry/metrics.js +89 -1
  289. package/dist/src/telemetry/metrics.js.map +1 -1
  290. package/dist/src/telemetry/metrics.test.js +172 -213
  291. package/dist/src/telemetry/metrics.test.js.map +1 -1
  292. package/dist/src/telemetry/sdk.js +3 -2
  293. package/dist/src/telemetry/sdk.js.map +1 -1
  294. package/dist/src/telemetry/semantic.d.ts +82 -0
  295. package/dist/src/telemetry/semantic.js +269 -0
  296. package/dist/src/telemetry/semantic.js.map +1 -0
  297. package/dist/src/telemetry/semantic.test.d.ts +6 -0
  298. package/dist/src/telemetry/semantic.test.js +387 -0
  299. package/dist/src/telemetry/semantic.test.js.map +1 -0
  300. package/dist/src/telemetry/telemetry-utils.test.js +29 -28
  301. package/dist/src/telemetry/telemetry-utils.test.js.map +1 -1
  302. package/dist/src/telemetry/trace.d.ts +46 -0
  303. package/dist/src/telemetry/trace.js +121 -0
  304. package/dist/src/telemetry/trace.js.map +1 -0
  305. package/dist/src/telemetry/types.d.ts +79 -34
  306. package/dist/src/telemetry/types.js +191 -61
  307. package/dist/src/telemetry/types.js.map +1 -1
  308. package/dist/src/telemetry/uiTelemetry.js +6 -6
  309. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  310. package/dist/src/telemetry/uiTelemetry.test.js +88 -66
  311. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  312. package/dist/src/tools/edit.d.ts +3 -2
  313. package/dist/src/tools/edit.js +24 -19
  314. package/dist/src/tools/edit.js.map +1 -1
  315. package/dist/src/tools/edit.test.js +78 -2
  316. package/dist/src/tools/edit.test.js.map +1 -1
  317. package/dist/src/tools/glob.d.ts +3 -2
  318. package/dist/src/tools/glob.js +15 -19
  319. package/dist/src/tools/glob.js.map +1 -1
  320. package/dist/src/tools/glob.test.js +203 -199
  321. package/dist/src/tools/glob.test.js.map +1 -1
  322. package/dist/src/tools/grep.d.ts +3 -2
  323. package/dist/src/tools/grep.js +22 -16
  324. package/dist/src/tools/grep.js.map +1 -1
  325. package/dist/src/tools/ls.d.ts +3 -2
  326. package/dist/src/tools/ls.js +15 -20
  327. package/dist/src/tools/ls.js.map +1 -1
  328. package/dist/src/tools/ls.test.js +2 -9
  329. package/dist/src/tools/ls.test.js.map +1 -1
  330. package/dist/src/tools/mcp-client-manager.d.ts +49 -11
  331. package/dist/src/tools/mcp-client-manager.js +209 -31
  332. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  333. package/dist/src/tools/mcp-client-manager.test.js +132 -25
  334. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  335. package/dist/src/tools/mcp-client.d.ts +5 -1
  336. package/dist/src/tools/mcp-client.js +85 -104
  337. package/dist/src/tools/mcp-client.js.map +1 -1
  338. package/dist/src/tools/mcp-client.test.js +65 -6
  339. package/dist/src/tools/mcp-client.test.js.map +1 -1
  340. package/dist/src/tools/mcp-tool.d.ts +5 -2
  341. package/dist/src/tools/mcp-tool.js +16 -8
  342. package/dist/src/tools/mcp-tool.js.map +1 -1
  343. package/dist/src/tools/memoryTool.d.ts +6 -4
  344. package/dist/src/tools/memoryTool.js +13 -10
  345. package/dist/src/tools/memoryTool.js.map +1 -1
  346. package/dist/src/tools/message-bus-integration.test.js +14 -1
  347. package/dist/src/tools/message-bus-integration.test.js.map +1 -1
  348. package/dist/src/tools/modifiable-tool.js +3 -2
  349. package/dist/src/tools/modifiable-tool.js.map +1 -1
  350. package/dist/src/tools/read-file.d.ts +4 -3
  351. package/dist/src/tools/read-file.js +16 -11
  352. package/dist/src/tools/read-file.js.map +1 -1
  353. package/dist/src/tools/read-file.test.js +25 -2
  354. package/dist/src/tools/read-file.test.js.map +1 -1
  355. package/dist/src/tools/read-many-files.d.ts +4 -3
  356. package/dist/src/tools/read-many-files.js +19 -37
  357. package/dist/src/tools/read-many-files.js.map +1 -1
  358. package/dist/src/tools/read-many-files.test.js +0 -1
  359. package/dist/src/tools/read-many-files.test.js.map +1 -1
  360. package/dist/src/tools/ripGrep.d.ts +3 -2
  361. package/dist/src/tools/ripGrep.js +47 -17
  362. package/dist/src/tools/ripGrep.js.map +1 -1
  363. package/dist/src/tools/ripGrep.test.js +106 -60
  364. package/dist/src/tools/ripGrep.test.js.map +1 -1
  365. package/dist/src/tools/shell.d.ts +7 -5
  366. package/dist/src/tools/shell.js +39 -68
  367. package/dist/src/tools/shell.js.map +1 -1
  368. package/dist/src/tools/shell.test.js +69 -9
  369. package/dist/src/tools/shell.test.js.map +1 -1
  370. package/dist/src/tools/smart-edit.d.ts +3 -2
  371. package/dist/src/tools/smart-edit.js +30 -18
  372. package/dist/src/tools/smart-edit.js.map +1 -1
  373. package/dist/src/tools/smart-edit.test.js +62 -2
  374. package/dist/src/tools/smart-edit.test.js.map +1 -1
  375. package/dist/src/tools/tool-names.d.ts +8 -0
  376. package/dist/src/tools/tool-names.js +8 -5
  377. package/dist/src/tools/tool-names.js.map +1 -1
  378. package/dist/src/tools/tool-registry.d.ts +6 -19
  379. package/dist/src/tools/tool-registry.js +14 -49
  380. package/dist/src/tools/tool-registry.js.map +1 -1
  381. package/dist/src/tools/tool-registry.test.js +2 -24
  382. package/dist/src/tools/tool-registry.test.js.map +1 -1
  383. package/dist/src/tools/tools.d.ts +22 -8
  384. package/dist/src/tools/tools.js +65 -36
  385. package/dist/src/tools/tools.js.map +1 -1
  386. package/dist/src/tools/web-fetch.d.ts +4 -3
  387. package/dist/src/tools/web-fetch.js +37 -25
  388. package/dist/src/tools/web-fetch.js.map +1 -1
  389. package/dist/src/tools/web-fetch.test.js +262 -1
  390. package/dist/src/tools/web-fetch.test.js.map +1 -1
  391. package/dist/src/tools/web-search.d.ts +4 -3
  392. package/dist/src/tools/web-search.js +8 -6
  393. package/dist/src/tools/web-search.js.map +1 -1
  394. package/dist/src/tools/write-file.d.ts +3 -2
  395. package/dist/src/tools/write-file.js +8 -8
  396. package/dist/src/tools/write-file.js.map +1 -1
  397. package/dist/src/tools/write-file.test.js +1 -2
  398. package/dist/src/tools/write-file.test.js.map +1 -1
  399. package/dist/src/tools/write-todos.d.ts +4 -8
  400. package/dist/src/tools/write-todos.js +15 -6
  401. package/dist/src/tools/write-todos.js.map +1 -1
  402. package/dist/src/tools/write-todos.test.js +2 -2
  403. package/dist/src/tools/write-todos.test.js.map +1 -1
  404. package/dist/src/utils/bfsFileSearch.js +3 -2
  405. package/dist/src/utils/bfsFileSearch.js.map +1 -1
  406. package/dist/src/utils/channel.d.ts +19 -0
  407. package/dist/src/utils/channel.js +49 -0
  408. package/dist/src/utils/channel.js.map +1 -0
  409. package/dist/src/utils/channel.test.d.ts +6 -0
  410. package/dist/src/utils/channel.test.js +170 -0
  411. package/dist/src/utils/channel.test.js.map +1 -0
  412. package/dist/src/utils/debugLogger.d.ts +25 -0
  413. package/dist/src/utils/debugLogger.js +33 -0
  414. package/dist/src/utils/debugLogger.js.map +1 -0
  415. package/dist/src/utils/debugLogger.test.d.ts +6 -0
  416. package/dist/src/utils/debugLogger.test.js +67 -0
  417. package/dist/src/utils/debugLogger.test.js.map +1 -0
  418. package/dist/src/utils/delay.d.ts +16 -0
  419. package/dist/src/utils/delay.js +43 -0
  420. package/dist/src/utils/delay.js.map +1 -0
  421. package/dist/src/utils/delay.test.d.ts +6 -0
  422. package/dist/src/utils/delay.test.js +88 -0
  423. package/dist/src/utils/delay.test.js.map +1 -0
  424. package/dist/src/utils/editCorrector.js +5 -9
  425. package/dist/src/utils/editCorrector.js.map +1 -1
  426. package/dist/src/utils/editCorrector.test.js +3 -5
  427. package/dist/src/utils/editCorrector.test.js.map +1 -1
  428. package/dist/src/utils/editor.js +33 -38
  429. package/dist/src/utils/editor.js.map +1 -1
  430. package/dist/src/utils/environmentContext.d.ts +2 -1
  431. package/dist/src/utils/environmentContext.js +18 -33
  432. package/dist/src/utils/environmentContext.js.map +1 -1
  433. package/dist/src/utils/environmentContext.test.js +0 -34
  434. package/dist/src/utils/environmentContext.test.js.map +1 -1
  435. package/dist/src/utils/errorParsing.d.ts +1 -1
  436. package/dist/src/utils/errorParsing.js +5 -33
  437. package/dist/src/utils/errorParsing.js.map +1 -1
  438. package/dist/src/utils/errorParsing.test.js +0 -88
  439. package/dist/src/utils/errorParsing.test.js.map +1 -1
  440. package/dist/src/utils/errors.d.ts +3 -0
  441. package/dist/src/utils/errors.js +6 -0
  442. package/dist/src/utils/errors.js.map +1 -1
  443. package/dist/src/utils/events.d.ts +88 -0
  444. package/dist/src/utils/events.js +77 -0
  445. package/dist/src/utils/events.js.map +1 -0
  446. package/dist/src/utils/events.test.d.ts +6 -0
  447. package/dist/src/utils/events.test.js +131 -0
  448. package/dist/src/utils/events.test.js.map +1 -0
  449. package/dist/src/utils/extensionLoader.d.ts +78 -0
  450. package/dist/src/utils/extensionLoader.js +162 -0
  451. package/dist/src/utils/extensionLoader.js.map +1 -0
  452. package/dist/src/utils/extensionLoader.test.d.ts +6 -0
  453. package/dist/src/utils/extensionLoader.test.js +90 -0
  454. package/dist/src/utils/extensionLoader.test.js.map +1 -0
  455. package/dist/src/utils/fetch.d.ts +1 -0
  456. package/dist/src/utils/fetch.js +4 -0
  457. package/dist/src/utils/fetch.js.map +1 -1
  458. package/dist/src/utils/fileUtils.d.ts +4 -0
  459. package/dist/src/utils/fileUtils.js +34 -2
  460. package/dist/src/utils/fileUtils.js.map +1 -1
  461. package/dist/src/utils/fileUtils.test.js +12 -1
  462. package/dist/src/utils/fileUtils.test.js.map +1 -1
  463. package/dist/src/utils/flashFallback.test.js +26 -45
  464. package/dist/src/utils/flashFallback.test.js.map +1 -1
  465. package/dist/src/utils/getFolderStructure.js +9 -17
  466. package/dist/src/utils/getFolderStructure.js.map +1 -1
  467. package/dist/src/utils/gitIgnoreParser.d.ts +4 -1
  468. package/dist/src/utils/gitIgnoreParser.js +28 -10
  469. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  470. package/dist/src/utils/gitIgnoreParser.test.js +58 -0
  471. package/dist/src/utils/gitIgnoreParser.test.js.map +1 -1
  472. package/dist/src/utils/googleErrors.d.ts +104 -0
  473. package/dist/src/utils/googleErrors.js +152 -0
  474. package/dist/src/utils/googleErrors.js.map +1 -0
  475. package/dist/src/utils/googleErrors.test.d.ts +6 -0
  476. package/dist/src/utils/googleErrors.test.js +301 -0
  477. package/dist/src/utils/googleErrors.test.js.map +1 -0
  478. package/dist/src/utils/googleQuotaErrors.d.ts +36 -0
  479. package/dist/src/utils/googleQuotaErrors.js +149 -0
  480. package/dist/src/utils/googleQuotaErrors.js.map +1 -0
  481. package/dist/src/utils/googleQuotaErrors.test.d.ts +6 -0
  482. package/dist/src/utils/googleQuotaErrors.test.js +311 -0
  483. package/dist/src/utils/googleQuotaErrors.test.js.map +1 -0
  484. package/dist/src/utils/ignorePatterns.test.js +26 -30
  485. package/dist/src/utils/ignorePatterns.test.js.map +1 -1
  486. package/dist/src/utils/installationManager.js +2 -1
  487. package/dist/src/utils/installationManager.js.map +1 -1
  488. package/dist/src/utils/installationManager.test.js +3 -3
  489. package/dist/src/utils/installationManager.test.js.map +1 -1
  490. package/dist/src/utils/llm-edit-fixer.d.ts +1 -1
  491. package/dist/src/utils/llm-edit-fixer.js +29 -4
  492. package/dist/src/utils/llm-edit-fixer.js.map +1 -1
  493. package/dist/src/utils/llm-edit-fixer.test.js +21 -0
  494. package/dist/src/utils/llm-edit-fixer.test.js.map +1 -1
  495. package/dist/src/utils/memoryDiscovery.d.ts +11 -1
  496. package/dist/src/utils/memoryDiscovery.js +150 -11
  497. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  498. package/dist/src/utils/memoryDiscovery.test.js +157 -19
  499. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  500. package/dist/src/utils/memoryImportProcessor.js +3 -2
  501. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  502. package/dist/src/utils/nextSpeakerChecker.js +2 -1
  503. package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
  504. package/dist/src/utils/package.d.ts +12 -0
  505. package/dist/src/utils/package.js +15 -0
  506. package/dist/src/utils/package.js.map +1 -0
  507. package/dist/src/utils/paths.js +126 -26
  508. package/dist/src/utils/paths.js.map +1 -1
  509. package/dist/src/utils/paths.test.js +200 -68
  510. package/dist/src/utils/paths.test.js.map +1 -1
  511. package/dist/src/utils/quotaErrorDetection.d.ts +0 -2
  512. package/dist/src/utils/quotaErrorDetection.js +0 -46
  513. package/dist/src/utils/quotaErrorDetection.js.map +1 -1
  514. package/dist/src/utils/retry.d.ts +1 -0
  515. package/dist/src/utils/retry.js +57 -158
  516. package/dist/src/utils/retry.js.map +1 -1
  517. package/dist/src/utils/retry.test.js +48 -109
  518. package/dist/src/utils/retry.test.js.map +1 -1
  519. package/dist/src/utils/safeJsonStringify.d.ts +4 -4
  520. package/dist/src/utils/safeJsonStringify.js +31 -7
  521. package/dist/src/utils/safeJsonStringify.js.map +1 -1
  522. package/dist/src/utils/shell-utils.d.ts +14 -2
  523. package/dist/src/utils/shell-utils.js +381 -136
  524. package/dist/src/utils/shell-utils.js.map +1 -1
  525. package/dist/src/utils/shell-utils.test.js +242 -60
  526. package/dist/src/utils/shell-utils.test.js.map +1 -1
  527. package/dist/src/utils/summarizer.js +2 -1
  528. package/dist/src/utils/summarizer.js.map +1 -1
  529. package/dist/src/utils/summarizer.test.js +0 -1
  530. package/dist/src/utils/summarizer.test.js.map +1 -1
  531. package/dist/src/utils/systemEncoding.js +5 -4
  532. package/dist/src/utils/systemEncoding.js.map +1 -1
  533. package/dist/src/utils/tool-utils.d.ts +2 -2
  534. package/dist/src/utils/tool-utils.js +14 -5
  535. package/dist/src/utils/tool-utils.js.map +1 -1
  536. package/dist/src/utils/userAccountManager.js +5 -4
  537. package/dist/src/utils/userAccountManager.js.map +1 -1
  538. package/dist/src/utils/workspaceContext.js +3 -2
  539. package/dist/src/utils/workspaceContext.js.map +1 -1
  540. package/dist/src/utils/workspaceContext.test.js +2 -2
  541. package/dist/src/utils/workspaceContext.test.js.map +1 -1
  542. package/dist/tsconfig.tsbuildinfo +1 -1
  543. package/package.json +13 -5
  544. package/dist/src/core/subagent.d.ts +0 -236
  545. package/dist/src/core/subagent.js +0 -482
  546. package/dist/src/core/subagent.js.map +0 -1
  547. package/dist/src/core/subagent.test.js +0 -556
  548. package/dist/src/core/subagent.test.js.map +0 -1
  549. /package/dist/src/{core/subagent.test.d.ts → commands/extensions.test.d.ts} +0 -0
@@ -6,10 +6,12 @@
6
6
  import { DiscoveredMCPTool } from '../tools/mcp-tool.js';
7
7
  import { AuthType } from '../core/contentGenerator.js';
8
8
  import { getDecisionFromOutcome, ToolCallDecision, } from './tool-call-decision.js';
9
+ import { getConventionAttributes } from './metrics.js';
9
10
  export { ToolCallDecision };
10
11
  import { getCommonAttributes } from './telemetryAttributes.js';
11
12
  import { SemanticAttributes } from '@opentelemetry/semantic-conventions';
12
13
  import { safeJsonStringify } from '../utils/safeJsonStringify.js';
14
+ import { toInputMessages, toOutputMessages, toFinishReasons, toOutputType, toSystemInstruction, } from './semantic.js';
13
15
  export const EVENT_CLI_CONFIG = 'gemini_cli.config';
14
16
  export class StartSessionEvent {
15
17
  'event.name';
@@ -30,9 +32,13 @@ export class StartSessionEvent {
30
32
  mcp_tools_count;
31
33
  mcp_tools;
32
34
  output_format;
35
+ extensions_count;
36
+ extensions;
37
+ extension_ids;
38
+ auth_type;
33
39
  constructor(config, toolRegistry) {
34
40
  const generatorConfig = config.getContentGeneratorConfig();
35
- const mcpServers = config.getMcpServers();
41
+ const mcpServers = config.getMcpClientManager()?.getMcpServers() ?? config.getMcpServers();
36
42
  let useGemini = false;
37
43
  let useVertex = false;
38
44
  if (generatorConfig && generatorConfig.authType) {
@@ -58,6 +64,11 @@ export class StartSessionEvent {
58
64
  config.getFileFilteringRespectGitIgnore();
59
65
  this.mcp_servers_count = mcpServers ? Object.keys(mcpServers).length : 0;
60
66
  this.output_format = config.getOutputFormat();
67
+ const extensions = config.getExtensions();
68
+ this.extensions_count = extensions.length;
69
+ this.extensions = extensions.map((e) => e.name).join(',');
70
+ this.extension_ids = extensions.map((e) => e.id).join(',');
71
+ this.auth_type = generatorConfig?.authType;
61
72
  if (toolRegistry) {
62
73
  const mcpTools = toolRegistry
63
74
  .getAllTools()
@@ -88,6 +99,10 @@ export class StartSessionEvent {
88
99
  mcp_tools: this.mcp_tools,
89
100
  mcp_tools_count: this.mcp_tools_count,
90
101
  output_format: this.output_format,
102
+ extensions: this.extensions,
103
+ extensions_count: this.extensions_count,
104
+ extension_ids: this.extension_ids,
105
+ auth_type: this.auth_type,
91
106
  };
92
107
  }
93
108
  toLogBody() {
@@ -155,6 +170,8 @@ export class ToolCallEvent {
155
170
  tool_type;
156
171
  content_length;
157
172
  mcp_server_name;
173
+ extension_name;
174
+ extension_id;
158
175
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
159
176
  metadata;
160
177
  constructor(call, function_name, function_args, duration_ms, success, prompt_id, tool_type, error) {
@@ -176,6 +193,8 @@ export class ToolCallEvent {
176
193
  call.tool instanceof DiscoveredMCPTool) {
177
194
  this.tool_type = 'mcp';
178
195
  this.mcp_server_name = call.tool.serverName;
196
+ this.extension_name = call.tool.extensionName;
197
+ this.extension_id = call.tool.extensionId;
179
198
  }
180
199
  else {
181
200
  this.tool_type = 'native';
@@ -223,6 +242,8 @@ export class ToolCallEvent {
223
242
  tool_type: this.tool_type,
224
243
  content_length: this.content_length,
225
244
  mcp_server_name: this.mcp_server_name,
245
+ extension_name: this.extension_name,
246
+ extension_id: this.extension_id,
226
247
  metadata: this.metadata,
227
248
  };
228
249
  if (this.error) {
@@ -272,13 +293,13 @@ export class ApiErrorEvent {
272
293
  'event.name';
273
294
  'event.timestamp';
274
295
  model;
296
+ prompt;
275
297
  error;
276
298
  error_type;
277
299
  status_code;
278
300
  duration_ms;
279
- prompt_id;
280
301
  auth_type;
281
- constructor(model, error, duration_ms, prompt_id, auth_type, error_type, status_code) {
302
+ constructor(model, error, duration_ms, prompt_details, auth_type, error_type, status_code) {
282
303
  this['event.name'] = 'api_error';
283
304
  this['event.timestamp'] = new Date().toISOString();
284
305
  this.model = model;
@@ -286,10 +307,10 @@ export class ApiErrorEvent {
286
307
  this.error_type = error_type;
287
308
  this.status_code = status_code;
288
309
  this.duration_ms = duration_ms;
289
- this.prompt_id = prompt_id;
310
+ this.prompt = prompt_details;
290
311
  this.auth_type = auth_type;
291
312
  }
292
- toOpenTelemetryAttributes(config) {
313
+ toLogRecord(config) {
293
314
  const attributes = {
294
315
  ...getCommonAttributes(config),
295
316
  'event.name': EVENT_API_ERROR,
@@ -301,7 +322,7 @@ export class ApiErrorEvent {
301
322
  error: this.error,
302
323
  status_code: this.status_code,
303
324
  duration_ms: this.duration_ms,
304
- prompt_id: this.prompt_id,
325
+ prompt_id: this.prompt.prompt_id,
305
326
  auth_type: this.auth_type,
306
327
  };
307
328
  if (this.error_type) {
@@ -310,58 +331,98 @@ export class ApiErrorEvent {
310
331
  if (typeof this.status_code === 'number') {
311
332
  attributes[SemanticAttributes.HTTP_STATUS_CODE] = this.status_code;
312
333
  }
313
- return attributes;
334
+ const logRecord = {
335
+ body: `API error for ${this.model}. Error: ${this.error}. Duration: ${this.duration_ms}ms.`,
336
+ attributes,
337
+ };
338
+ return logRecord;
314
339
  }
315
- toLogBody() {
316
- return `API error for ${this.model}. Error: ${this.error}. Duration: ${this.duration_ms}ms.`;
340
+ toSemanticLogRecord(config) {
341
+ const attributes = {
342
+ ...getCommonAttributes(config),
343
+ 'event.name': EVENT_GEN_AI_OPERATION_DETAILS,
344
+ 'event.timestamp': this['event.timestamp'],
345
+ ...toGenerateContentConfigAttributes(this.prompt.generate_content_config),
346
+ ...getConventionAttributes(this),
347
+ };
348
+ if (this.prompt.server) {
349
+ attributes['server.address'] = this.prompt.server.address;
350
+ attributes['server.port'] = this.prompt.server.port;
351
+ }
352
+ if (config.getTelemetryLogPromptsEnabled() && this.prompt.contents) {
353
+ attributes['gen_ai.input.messages'] = JSON.stringify(toInputMessages(this.prompt.contents));
354
+ }
355
+ const logRecord = {
356
+ body: `GenAI operation error details from ${this.model}. Error: ${this.error}. Duration: ${this.duration_ms}ms.`,
357
+ attributes,
358
+ };
359
+ return logRecord;
317
360
  }
318
361
  }
319
362
  export const EVENT_API_RESPONSE = 'gemini_cli.api_response';
363
+ export const EVENT_GEN_AI_OPERATION_DETAILS = 'gen_ai.client.inference.operation.details';
364
+ function toGenerateContentConfigAttributes(config) {
365
+ if (!config) {
366
+ return {};
367
+ }
368
+ return {
369
+ 'gen_ai.request.temperature': config.temperature,
370
+ 'gen_ai.request.top_p': config.topP,
371
+ 'gen_ai.request.top_k': config.topK,
372
+ 'gen_ai.request.choice.count': config.candidateCount,
373
+ 'gen_ai.request.seed': config.seed,
374
+ 'gen_ai.request.frequency_penalty': config.frequencyPenalty,
375
+ 'gen_ai.request.presence_penalty': config.presencePenalty,
376
+ 'gen_ai.request.max_tokens': config.maxOutputTokens,
377
+ 'gen_ai.output.type': toOutputType(config.responseMimeType),
378
+ 'gen_ai.request.stop_sequences': config.stopSequences,
379
+ 'gen_ai.system_instructions': JSON.stringify(toSystemInstruction(config.systemInstruction)),
380
+ };
381
+ }
320
382
  export class ApiResponseEvent {
321
383
  'event.name';
322
384
  'event.timestamp';
323
- model;
324
385
  status_code;
325
386
  duration_ms;
326
- input_token_count;
327
- output_token_count;
328
- cached_content_token_count;
329
- thoughts_token_count;
330
- tool_token_count;
331
- total_token_count;
332
387
  response_text;
333
- prompt_id;
334
388
  auth_type;
335
- constructor(model, duration_ms, prompt_id, auth_type, usage_data, response_text) {
389
+ model;
390
+ prompt;
391
+ response;
392
+ usage;
393
+ constructor(model, duration_ms, prompt_details, response_details, auth_type, usage_data, response_text) {
336
394
  this['event.name'] = 'api_response';
337
395
  this['event.timestamp'] = new Date().toISOString();
338
- this.model = model;
339
396
  this.duration_ms = duration_ms;
340
397
  this.status_code = 200;
341
- this.input_token_count = usage_data?.promptTokenCount ?? 0;
342
- this.output_token_count = usage_data?.candidatesTokenCount ?? 0;
343
- this.cached_content_token_count = usage_data?.cachedContentTokenCount ?? 0;
344
- this.thoughts_token_count = usage_data?.thoughtsTokenCount ?? 0;
345
- this.tool_token_count = usage_data?.toolUsePromptTokenCount ?? 0;
346
- this.total_token_count = usage_data?.totalTokenCount ?? 0;
347
398
  this.response_text = response_text;
348
- this.prompt_id = prompt_id;
349
399
  this.auth_type = auth_type;
400
+ this.model = model;
401
+ this.prompt = prompt_details;
402
+ this.response = response_details;
403
+ this.usage = {
404
+ input_token_count: usage_data?.promptTokenCount ?? 0,
405
+ output_token_count: usage_data?.candidatesTokenCount ?? 0,
406
+ cached_content_token_count: usage_data?.cachedContentTokenCount ?? 0,
407
+ thoughts_token_count: usage_data?.thoughtsTokenCount ?? 0,
408
+ tool_token_count: usage_data?.toolUsePromptTokenCount ?? 0,
409
+ total_token_count: usage_data?.totalTokenCount ?? 0,
410
+ };
350
411
  }
351
- toOpenTelemetryAttributes(config) {
412
+ toLogRecord(config) {
352
413
  const attributes = {
353
414
  ...getCommonAttributes(config),
354
415
  'event.name': EVENT_API_RESPONSE,
355
416
  'event.timestamp': this['event.timestamp'],
356
417
  model: this.model,
357
418
  duration_ms: this.duration_ms,
358
- input_token_count: this.input_token_count,
359
- output_token_count: this.output_token_count,
360
- cached_content_token_count: this.cached_content_token_count,
361
- thoughts_token_count: this.thoughts_token_count,
362
- tool_token_count: this.tool_token_count,
363
- total_token_count: this.total_token_count,
364
- prompt_id: this.prompt_id,
419
+ input_token_count: this.usage.input_token_count,
420
+ output_token_count: this.usage.output_token_count,
421
+ cached_content_token_count: this.usage.cached_content_token_count,
422
+ thoughts_token_count: this.usage.thoughts_token_count,
423
+ tool_token_count: this.usage.tool_token_count,
424
+ total_token_count: this.usage.total_token_count,
425
+ prompt_id: this.prompt.prompt_id,
365
426
  auth_type: this.auth_type,
366
427
  status_code: this.status_code,
367
428
  };
@@ -373,10 +434,39 @@ export class ApiResponseEvent {
373
434
  attributes[SemanticAttributes.HTTP_STATUS_CODE] = this.status_code;
374
435
  }
375
436
  }
376
- return attributes;
437
+ const logRecord = {
438
+ body: `API response from ${this.model}. Status: ${this.status_code || 'N/A'}. Duration: ${this.duration_ms}ms.`,
439
+ attributes,
440
+ };
441
+ return logRecord;
377
442
  }
378
- toLogBody() {
379
- return `API response from ${this.model}. Status: ${this.status_code || 'N/A'}. Duration: ${this.duration_ms}ms.`;
443
+ toSemanticLogRecord(config) {
444
+ const attributes = {
445
+ ...getCommonAttributes(config),
446
+ 'event.name': EVENT_GEN_AI_OPERATION_DETAILS,
447
+ 'event.timestamp': this['event.timestamp'],
448
+ 'gen_ai.response.id': this.response.response_id,
449
+ 'gen_ai.response.finish_reasons': toFinishReasons(this.response.candidates),
450
+ 'gen_ai.output.messages': JSON.stringify(toOutputMessages(this.response.candidates)),
451
+ ...toGenerateContentConfigAttributes(this.prompt.generate_content_config),
452
+ ...getConventionAttributes(this),
453
+ };
454
+ if (this.prompt.server) {
455
+ attributes['server.address'] = this.prompt.server.address;
456
+ attributes['server.port'] = this.prompt.server.port;
457
+ }
458
+ if (config.getTelemetryLogPromptsEnabled() && this.prompt.contents) {
459
+ attributes['gen_ai.input.messages'] = JSON.stringify(toInputMessages(this.prompt.contents));
460
+ }
461
+ if (this.usage) {
462
+ attributes['gen_ai.usage.input_tokens'] = this.usage.input_token_count;
463
+ attributes['gen_ai.usage.output_tokens'] = this.usage.output_token_count;
464
+ }
465
+ const logRecord = {
466
+ body: `GenAI operation details from ${this.model}. Status: ${this.status_code || 'N/A'}. Duration: ${this.duration_ms}ms.`,
467
+ attributes,
468
+ };
469
+ return logRecord;
380
470
  }
381
471
  }
382
472
  export const EVENT_FLASH_FALLBACK = 'gemini_cli.flash_fallback';
@@ -503,13 +593,14 @@ export class NextSpeakerCheckEvent {
503
593
  }
504
594
  }
505
595
  export const EVENT_SLASH_COMMAND = 'gemini_cli.slash_command';
506
- export function makeSlashCommandEvent({ command, subcommand, status, }) {
596
+ export function makeSlashCommandEvent({ command, subcommand, status, extension_id, }) {
507
597
  return {
508
598
  'event.name': 'slash_command',
509
599
  'event.timestamp': new Date().toISOString(),
510
600
  command,
511
601
  subcommand,
512
602
  status,
603
+ extension_id,
513
604
  toOpenTelemetryAttributes(config) {
514
605
  return {
515
606
  ...getCommonAttributes(config),
@@ -518,6 +609,7 @@ export function makeSlashCommandEvent({ command, subcommand, status, }) {
518
609
  command: this.command,
519
610
  subcommand: this.subcommand,
520
611
  status: this.status,
612
+ extension_id: this.extension_id,
521
613
  };
522
614
  },
523
615
  toLogBody() {
@@ -826,13 +918,15 @@ export class ExtensionInstallEvent {
826
918
  'event.name';
827
919
  'event.timestamp';
828
920
  extension_name;
921
+ extension_id;
829
922
  extension_version;
830
923
  extension_source;
831
924
  status;
832
- constructor(extension_name, extension_version, extension_source, status) {
925
+ constructor(extension_name, extension_id, extension_version, extension_source, status) {
833
926
  this['event.name'] = 'extension_install';
834
927
  this['event.timestamp'] = new Date().toISOString();
835
928
  this.extension_name = extension_name;
929
+ this.extension_id = extension_id;
836
930
  this.extension_version = extension_version;
837
931
  this.extension_source = extension_source;
838
932
  this.status = status;
@@ -895,11 +989,13 @@ export class ExtensionUninstallEvent {
895
989
  'event.name';
896
990
  'event.timestamp';
897
991
  extension_name;
992
+ extension_id;
898
993
  status;
899
- constructor(extension_name, status) {
994
+ constructor(extension_name, extension_id, status) {
900
995
  this['event.name'] = 'extension_uninstall';
901
996
  this['event.timestamp'] = new Date().toISOString();
902
997
  this.extension_name = extension_name;
998
+ this.extension_id = extension_id;
903
999
  this.status = status;
904
1000
  }
905
1001
  toOpenTelemetryAttributes(config) {
@@ -920,14 +1016,16 @@ export class ExtensionUpdateEvent {
920
1016
  'event.name';
921
1017
  'event.timestamp';
922
1018
  extension_name;
1019
+ extension_id;
923
1020
  extension_previous_version;
924
1021
  extension_version;
925
1022
  extension_source;
926
1023
  status;
927
- constructor(extension_name, extension_version, extension_previous_version, extension_source, status) {
1024
+ constructor(extension_name, extension_id, extension_version, extension_previous_version, extension_source, status) {
928
1025
  this['event.name'] = 'extension_update';
929
1026
  this['event.timestamp'] = new Date().toISOString();
930
1027
  this.extension_name = extension_name;
1028
+ this.extension_id = extension_id;
931
1029
  this.extension_version = extension_version;
932
1030
  this.extension_previous_version = extension_previous_version;
933
1031
  this.extension_source = extension_source;
@@ -954,11 +1052,13 @@ export class ExtensionEnableEvent {
954
1052
  'event.name';
955
1053
  'event.timestamp';
956
1054
  extension_name;
1055
+ extension_id;
957
1056
  setting_scope;
958
- constructor(extension_name, settingScope) {
1057
+ constructor(extension_name, extension_id, settingScope) {
959
1058
  this['event.name'] = 'extension_enable';
960
1059
  this['event.timestamp'] = new Date().toISOString();
961
1060
  this.extension_name = extension_name;
1061
+ this.extension_id = extension_id;
962
1062
  this.setting_scope = settingScope;
963
1063
  }
964
1064
  toOpenTelemetryAttributes(config) {
@@ -1001,11 +1101,13 @@ export class ExtensionDisableEvent {
1001
1101
  'event.name';
1002
1102
  'event.timestamp';
1003
1103
  extension_name;
1104
+ extension_id;
1004
1105
  setting_scope;
1005
- constructor(extension_name, settingScope) {
1106
+ constructor(extension_name, extension_id, settingScope) {
1006
1107
  this['event.name'] = 'extension_disable';
1007
1108
  this['event.timestamp'] = new Date().toISOString();
1008
1109
  this.extension_name = extension_name;
1110
+ this.extension_id = extension_id;
1009
1111
  this.setting_scope = settingScope;
1010
1112
  }
1011
1113
  toOpenTelemetryAttributes(config) {
@@ -1065,14 +1167,11 @@ export class SmartEditCorrectionEvent {
1065
1167
  return `Smart Edit Tool Correction: ${this.correction}`;
1066
1168
  }
1067
1169
  }
1068
- export const EVENT_AGENT_START = 'gemini_cli.agent.start';
1069
- export class AgentStartEvent {
1070
- 'event.name';
1170
+ class BaseAgentEvent {
1071
1171
  'event.timestamp';
1072
1172
  agent_id;
1073
1173
  agent_name;
1074
1174
  constructor(agent_id, agent_name) {
1075
- this['event.name'] = 'agent_start';
1076
1175
  this['event.timestamp'] = new Date().toISOString();
1077
1176
  this.agent_id = agent_id;
1078
1177
  this.agent_name = agent_name;
@@ -1080,41 +1179,44 @@ export class AgentStartEvent {
1080
1179
  toOpenTelemetryAttributes(config) {
1081
1180
  return {
1082
1181
  ...getCommonAttributes(config),
1083
- 'event.name': EVENT_AGENT_START,
1084
1182
  'event.timestamp': this['event.timestamp'],
1085
1183
  agent_id: this.agent_id,
1086
1184
  agent_name: this.agent_name,
1087
1185
  };
1088
1186
  }
1187
+ }
1188
+ export const EVENT_AGENT_START = 'gemini_cli.agent.start';
1189
+ export class AgentStartEvent extends BaseAgentEvent {
1190
+ 'event.name' = 'agent_start';
1191
+ constructor(agent_id, agent_name) {
1192
+ super(agent_id, agent_name);
1193
+ }
1194
+ toOpenTelemetryAttributes(config) {
1195
+ return {
1196
+ ...super.toOpenTelemetryAttributes(config),
1197
+ 'event.name': EVENT_AGENT_START,
1198
+ };
1199
+ }
1089
1200
  toLogBody() {
1090
1201
  return `Agent ${this.agent_name} started. ID: ${this.agent_id}`;
1091
1202
  }
1092
1203
  }
1093
1204
  export const EVENT_AGENT_FINISH = 'gemini_cli.agent.finish';
1094
- export class AgentFinishEvent {
1095
- 'event.name';
1096
- 'event.timestamp';
1097
- agent_id;
1098
- agent_name;
1205
+ export class AgentFinishEvent extends BaseAgentEvent {
1206
+ 'event.name' = 'agent_finish';
1099
1207
  duration_ms;
1100
1208
  turn_count;
1101
1209
  terminate_reason;
1102
1210
  constructor(agent_id, agent_name, duration_ms, turn_count, terminate_reason) {
1103
- this['event.name'] = 'agent_finish';
1104
- this['event.timestamp'] = new Date().toISOString();
1105
- this.agent_id = agent_id;
1106
- this.agent_name = agent_name;
1211
+ super(agent_id, agent_name);
1107
1212
  this.duration_ms = duration_ms;
1108
1213
  this.turn_count = turn_count;
1109
1214
  this.terminate_reason = terminate_reason;
1110
1215
  }
1111
1216
  toOpenTelemetryAttributes(config) {
1112
1217
  return {
1113
- ...getCommonAttributes(config),
1218
+ ...super.toOpenTelemetryAttributes(config),
1114
1219
  'event.name': EVENT_AGENT_FINISH,
1115
- 'event.timestamp': this['event.timestamp'],
1116
- agent_id: this.agent_id,
1117
- agent_name: this.agent_name,
1118
1220
  duration_ms: this.duration_ms,
1119
1221
  turn_count: this.turn_count,
1120
1222
  terminate_reason: this.terminate_reason,
@@ -1124,6 +1226,34 @@ export class AgentFinishEvent {
1124
1226
  return `Agent ${this.agent_name} finished. Reason: ${this.terminate_reason}. Duration: ${this.duration_ms}ms. Turns: ${this.turn_count}.`;
1125
1227
  }
1126
1228
  }
1229
+ export const EVENT_AGENT_RECOVERY_ATTEMPT = 'gemini_cli.agent.recovery_attempt';
1230
+ export class RecoveryAttemptEvent extends BaseAgentEvent {
1231
+ 'event.name' = 'agent_recovery_attempt';
1232
+ reason;
1233
+ duration_ms;
1234
+ success;
1235
+ turn_count;
1236
+ constructor(agent_id, agent_name, reason, duration_ms, success, turn_count) {
1237
+ super(agent_id, agent_name);
1238
+ this.reason = reason;
1239
+ this.duration_ms = duration_ms;
1240
+ this.success = success;
1241
+ this.turn_count = turn_count;
1242
+ }
1243
+ toOpenTelemetryAttributes(config) {
1244
+ return {
1245
+ ...super.toOpenTelemetryAttributes(config),
1246
+ 'event.name': EVENT_AGENT_RECOVERY_ATTEMPT,
1247
+ reason: this.reason,
1248
+ duration_ms: this.duration_ms,
1249
+ success: this.success,
1250
+ turn_count: this.turn_count,
1251
+ };
1252
+ }
1253
+ toLogBody() {
1254
+ return `Agent ${this.agent_name} recovery attempt. Reason: ${this.reason}. Success: ${this.success}. Duration: ${this.duration_ms}ms.`;
1255
+ }
1256
+ }
1127
1257
  export const EVENT_WEB_FETCH_FALLBACK_ATTEMPT = 'gemini_cli.web_fetch_fallback_attempt';
1128
1258
  export class WebFetchFallbackAttemptEvent {
1129
1259
  'event.name';
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/telemetry/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/telemetry/types.ts"],"names":[],"mappings":"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"}