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

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 (732) hide show
  1. package/dist/docs/AFTER_MERGE_PROMPT.md +26 -0
  2. package/dist/docs/CHANGES.md +124 -0
  3. package/dist/docs/api-proxy.md +27 -0
  4. package/dist/docs/architecture.md +80 -0
  5. package/dist/docs/assets/connected_devtools.png +0 -0
  6. package/dist/docs/assets/gemini-screenshot.png +0 -0
  7. package/dist/docs/assets/monitoring-dashboard-logs.png +0 -0
  8. package/dist/docs/assets/monitoring-dashboard-metrics.png +0 -0
  9. package/dist/docs/assets/monitoring-dashboard-overview.png +0 -0
  10. package/dist/docs/assets/release_patch.png +0 -0
  11. package/dist/docs/assets/theme-ansi-light.png +0 -0
  12. package/dist/docs/assets/theme-ansi.png +0 -0
  13. package/dist/docs/assets/theme-atom-one.png +0 -0
  14. package/dist/docs/assets/theme-ayu-light.png +0 -0
  15. package/dist/docs/assets/theme-ayu.png +0 -0
  16. package/dist/docs/assets/theme-custom.png +0 -0
  17. package/dist/docs/assets/theme-default-light.png +0 -0
  18. package/dist/docs/assets/theme-default.png +0 -0
  19. package/dist/docs/assets/theme-dracula.png +0 -0
  20. package/dist/docs/assets/theme-github-light.png +0 -0
  21. package/dist/docs/assets/theme-github.png +0 -0
  22. package/dist/docs/assets/theme-google-light.png +0 -0
  23. package/dist/docs/assets/theme-xcode-light.png +0 -0
  24. package/dist/docs/changelogs/index.md +612 -0
  25. package/dist/docs/changelogs/latest.md +153 -0
  26. package/dist/docs/changelogs/preview.md +131 -0
  27. package/dist/docs/changelogs/releases.md +1162 -0
  28. package/dist/docs/cli/authentication.md +3 -0
  29. package/dist/docs/cli/checkpointing.md +94 -0
  30. package/dist/docs/cli/commands.md +357 -0
  31. package/dist/docs/cli/custom-commands.md +315 -0
  32. package/dist/docs/cli/enterprise.md +564 -0
  33. package/dist/docs/cli/gemini-ignore.md +71 -0
  34. package/dist/docs/cli/gemini-md.md +109 -0
  35. package/dist/docs/cli/generation-settings.md +210 -0
  36. package/dist/docs/cli/headless.md +388 -0
  37. package/dist/docs/cli/index.md +63 -0
  38. package/dist/docs/cli/keyboard-shortcuts.md +136 -0
  39. package/dist/docs/cli/model-routing.md +37 -0
  40. package/dist/docs/cli/model.md +62 -0
  41. package/dist/docs/cli/sandbox.md +171 -0
  42. package/dist/docs/cli/session-management.md +158 -0
  43. package/dist/docs/cli/settings.md +148 -0
  44. package/dist/docs/cli/skills.md +188 -0
  45. package/dist/docs/cli/system-prompt.md +94 -0
  46. package/dist/docs/cli/telemetry.md +813 -0
  47. package/dist/docs/cli/themes.md +237 -0
  48. package/dist/docs/cli/token-caching.md +20 -0
  49. package/dist/docs/cli/trusted-folders.md +95 -0
  50. package/dist/docs/cli/tutorials/skills-getting-started.md +124 -0
  51. package/dist/docs/cli/tutorials.md +87 -0
  52. package/dist/docs/cli/uninstall.md +47 -0
  53. package/dist/docs/core/index.md +101 -0
  54. package/dist/docs/core/memport.md +246 -0
  55. package/dist/docs/core/policy-engine.md +268 -0
  56. package/dist/docs/core/tools-api.md +131 -0
  57. package/dist/docs/examples/proxy-script.md +83 -0
  58. package/dist/docs/extensions/extension-releasing.md +183 -0
  59. package/dist/docs/extensions/getting-started-extensions.md +244 -0
  60. package/dist/docs/extensions/index.md +343 -0
  61. package/dist/docs/faq.md +153 -0
  62. package/dist/docs/get-started/authentication.md +321 -0
  63. package/dist/docs/get-started/configuration-v1.md +890 -0
  64. package/dist/docs/get-started/configuration.md +1643 -0
  65. package/dist/docs/get-started/examples.md +218 -0
  66. package/dist/docs/get-started/gemini-3.md +101 -0
  67. package/dist/docs/get-started/index.md +71 -0
  68. package/dist/docs/get-started/installation.md +141 -0
  69. package/dist/docs/hooks/best-practices.md +856 -0
  70. package/dist/docs/hooks/index.md +723 -0
  71. package/dist/docs/hooks/reference.md +178 -0
  72. package/dist/docs/hooks/writing-hooks.md +1044 -0
  73. package/dist/docs/ide-integration/ide-companion-spec.md +267 -0
  74. package/dist/docs/ide-integration/index.md +201 -0
  75. package/dist/docs/index.md +147 -0
  76. package/dist/docs/integration-tests.md +211 -0
  77. package/dist/docs/issue-and-pr-automation.md +134 -0
  78. package/dist/docs/local-development.md +128 -0
  79. package/dist/docs/mcp_integration.md +160 -0
  80. package/dist/docs/mermaid/context.mmd +103 -0
  81. package/dist/docs/mermaid/render-path.mmd +64 -0
  82. package/dist/docs/npm.md +62 -0
  83. package/dist/docs/quota-and-pricing.md +158 -0
  84. package/dist/docs/release-confidence.md +164 -0
  85. package/dist/docs/releases.md +540 -0
  86. package/dist/docs/sidebar.json +301 -0
  87. package/dist/docs/tools/file-system.md +217 -0
  88. package/dist/docs/tools/index.md +95 -0
  89. package/dist/docs/tools/mcp-server.md +1045 -0
  90. package/dist/docs/tools/memory.md +54 -0
  91. package/dist/docs/tools/shell.md +260 -0
  92. package/dist/docs/tools/todos.md +56 -0
  93. package/dist/docs/tools/web-fetch.md +59 -0
  94. package/dist/docs/tools/web-search.md +42 -0
  95. package/dist/docs/tos-privacy.md +96 -0
  96. package/dist/docs/troubleshooting.md +162 -0
  97. package/dist/package.json +7 -4
  98. package/dist/src/agents/a2a-client-manager.d.ts +82 -0
  99. package/dist/src/agents/a2a-client-manager.js +295 -0
  100. package/dist/src/agents/a2a-client-manager.js.map +1 -0
  101. package/dist/src/agents/a2a-client-manager.test.js +281 -0
  102. package/dist/src/agents/a2a-client-manager.test.js.map +1 -0
  103. package/dist/src/agents/a2aUtils.d.ts +29 -0
  104. package/dist/src/agents/a2aUtils.js +113 -0
  105. package/dist/src/agents/a2aUtils.js.map +1 -0
  106. package/dist/src/agents/a2aUtils.test.js +147 -0
  107. package/dist/src/agents/a2aUtils.test.js.map +1 -0
  108. package/dist/src/agents/agentLoader.d.ts +68 -0
  109. package/dist/src/agents/agentLoader.js +255 -0
  110. package/dist/src/agents/agentLoader.js.map +1 -0
  111. package/dist/src/agents/agentLoader.test.js +307 -0
  112. package/dist/src/agents/agentLoader.test.js.map +1 -0
  113. package/dist/src/agents/cli-help-agent.d.ts +24 -0
  114. package/dist/src/agents/cli-help-agent.js +85 -0
  115. package/dist/src/agents/cli-help-agent.js.map +1 -0
  116. package/dist/src/agents/cli-help-agent.test.js +65 -0
  117. package/dist/src/agents/cli-help-agent.test.js.map +1 -0
  118. package/dist/src/agents/codebase-investigator.d.ts +2 -2
  119. package/dist/src/agents/codebase-investigator.js +14 -8
  120. package/dist/src/agents/codebase-investigator.js.map +1 -1
  121. package/dist/src/agents/delegate-to-agent-tool.d.ts +2 -2
  122. package/dist/src/agents/delegate-to-agent-tool.js +25 -14
  123. package/dist/src/agents/delegate-to-agent-tool.js.map +1 -1
  124. package/dist/src/agents/delegate-to-agent-tool.test.js +101 -21
  125. package/dist/src/agents/delegate-to-agent-tool.test.js.map +1 -1
  126. package/dist/src/agents/{executor.d.ts → local-executor.d.ts} +5 -11
  127. package/dist/src/agents/{executor.js → local-executor.js} +123 -62
  128. package/dist/src/agents/local-executor.js.map +1 -0
  129. package/dist/src/agents/local-executor.test.d.ts +6 -0
  130. package/dist/src/agents/{executor.test.js → local-executor.test.js} +136 -58
  131. package/dist/src/agents/local-executor.test.js.map +1 -0
  132. package/dist/src/agents/{invocation.d.ts → local-invocation.d.ts} +6 -7
  133. package/dist/src/agents/{invocation.js → local-invocation.js} +9 -10
  134. package/dist/src/agents/local-invocation.js.map +1 -0
  135. package/dist/src/agents/local-invocation.test.d.ts +6 -0
  136. package/dist/src/agents/{invocation.test.js → local-invocation.test.js} +29 -20
  137. package/dist/src/agents/local-invocation.test.js.map +1 -0
  138. package/dist/src/agents/registry.d.ts +22 -1
  139. package/dist/src/agents/registry.js +192 -35
  140. package/dist/src/agents/registry.js.map +1 -1
  141. package/dist/src/agents/registry.test.js +407 -33
  142. package/dist/src/agents/registry.test.js.map +1 -1
  143. package/dist/src/agents/remote-invocation.d.ts +35 -0
  144. package/dist/src/agents/remote-invocation.js +126 -0
  145. package/dist/src/agents/remote-invocation.js.map +1 -0
  146. package/dist/src/agents/remote-invocation.test.d.ts +6 -0
  147. package/dist/src/agents/remote-invocation.test.js +201 -0
  148. package/dist/src/agents/remote-invocation.test.js.map +1 -0
  149. package/dist/src/agents/subagent-tool-wrapper.d.ts +2 -2
  150. package/dist/src/agents/subagent-tool-wrapper.js +11 -6
  151. package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
  152. package/dist/src/agents/subagent-tool-wrapper.test.js +33 -19
  153. package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
  154. package/dist/src/agents/types.d.ts +21 -15
  155. package/dist/src/agents/types.js.map +1 -1
  156. package/dist/src/availability/fallbackIntegration.test.d.ts +6 -0
  157. package/dist/src/availability/fallbackIntegration.test.js +58 -0
  158. package/dist/src/availability/fallbackIntegration.test.js.map +1 -0
  159. package/dist/src/availability/modelAvailabilityService.d.ts +2 -1
  160. package/dist/src/availability/policyHelpers.d.ts +4 -3
  161. package/dist/src/availability/policyHelpers.js +13 -22
  162. package/dist/src/availability/policyHelpers.js.map +1 -1
  163. package/dist/src/availability/policyHelpers.test.js +28 -18
  164. package/dist/src/availability/policyHelpers.test.js.map +1 -1
  165. package/dist/src/code_assist/experiments/experiments.d.ts +1 -1
  166. package/dist/src/code_assist/experiments/experiments.js +21 -0
  167. package/dist/src/code_assist/experiments/experiments.js.map +1 -1
  168. package/dist/src/code_assist/experiments/experiments_local.test.d.ts +6 -0
  169. package/dist/src/code_assist/experiments/experiments_local.test.js +110 -0
  170. package/dist/src/code_assist/experiments/experiments_local.test.js.map +1 -0
  171. package/dist/src/code_assist/oauth-credential-storage.js +3 -4
  172. package/dist/src/code_assist/oauth-credential-storage.js.map +1 -1
  173. package/dist/src/code_assist/oauth2.js +32 -2
  174. package/dist/src/code_assist/oauth2.js.map +1 -1
  175. package/dist/src/code_assist/oauth2.test.js +111 -16
  176. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  177. package/dist/src/code_assist/server.d.ts +9 -1
  178. package/dist/src/code_assist/server.js +74 -11
  179. package/dist/src/code_assist/server.js.map +1 -1
  180. package/dist/src/code_assist/server.test.js +199 -27
  181. package/dist/src/code_assist/server.test.js.map +1 -1
  182. package/dist/src/code_assist/setup.js +6 -4
  183. package/dist/src/code_assist/setup.js.map +1 -1
  184. package/dist/src/code_assist/setup.test.js +63 -0
  185. package/dist/src/code_assist/setup.test.js.map +1 -1
  186. package/dist/src/code_assist/telemetry.d.ts +14 -0
  187. package/dist/src/code_assist/telemetry.js +157 -0
  188. package/dist/src/code_assist/telemetry.js.map +1 -0
  189. package/dist/src/code_assist/telemetry.test.d.ts +6 -0
  190. package/dist/src/code_assist/telemetry.test.js +301 -0
  191. package/dist/src/code_assist/telemetry.test.js.map +1 -0
  192. package/dist/src/code_assist/types.d.ts +77 -1
  193. package/dist/src/code_assist/types.js +28 -0
  194. package/dist/src/code_assist/types.js.map +1 -1
  195. package/dist/src/commands/memory.d.ts +11 -0
  196. package/dist/src/commands/memory.js +80 -0
  197. package/dist/src/commands/memory.js.map +1 -0
  198. package/dist/src/commands/memory.test.d.ts +6 -0
  199. package/dist/src/commands/memory.test.js +155 -0
  200. package/dist/src/commands/memory.test.js.map +1 -0
  201. package/dist/src/config/config.d.ts +120 -26
  202. package/dist/src/config/config.js +241 -120
  203. package/dist/src/config/config.js.map +1 -1
  204. package/dist/src/config/config.test.js +215 -43
  205. package/dist/src/config/config.test.js.map +1 -1
  206. package/dist/src/config/flashFallback.test.js +11 -35
  207. package/dist/src/config/flashFallback.test.js.map +1 -1
  208. package/dist/src/config/models.d.ts +8 -9
  209. package/dist/src/config/models.js +18 -15
  210. package/dist/src/config/models.js.map +1 -1
  211. package/dist/src/config/models.test.js +52 -16
  212. package/dist/src/config/models.test.js.map +1 -1
  213. package/dist/src/config/storage.d.ts +5 -0
  214. package/dist/src/config/storage.js +17 -2
  215. package/dist/src/config/storage.js.map +1 -1
  216. package/dist/src/config/storage.test.js +16 -0
  217. package/dist/src/config/storage.test.js.map +1 -1
  218. package/dist/src/confirmation-bus/message-bus.js +2 -1
  219. package/dist/src/confirmation-bus/message-bus.js.map +1 -1
  220. package/dist/src/core/baseLlmClient.js +44 -43
  221. package/dist/src/core/baseLlmClient.js.map +1 -1
  222. package/dist/src/core/baseLlmClient.test.js +12 -19
  223. package/dist/src/core/baseLlmClient.test.js.map +1 -1
  224. package/dist/src/core/client.d.ts +7 -1
  225. package/dist/src/core/client.js +245 -114
  226. package/dist/src/core/client.js.map +1 -1
  227. package/dist/src/core/client.test.js +277 -74
  228. package/dist/src/core/client.test.js.map +1 -1
  229. package/dist/src/core/clientHookTriggers.js +2 -2
  230. package/dist/src/core/clientHookTriggers.js.map +1 -1
  231. package/dist/src/core/contentGenerator.js +3 -3
  232. package/dist/src/core/contentGenerator.js.map +1 -1
  233. package/dist/src/core/contentGenerator.test.js +1 -7
  234. package/dist/src/core/contentGenerator.test.js.map +1 -1
  235. package/dist/src/core/coreToolHookTriggers.d.ts +9 -5
  236. package/dist/src/core/coreToolHookTriggers.js +119 -21
  237. package/dist/src/core/coreToolHookTriggers.js.map +1 -1
  238. package/dist/src/core/coreToolHookTriggers.test.d.ts +6 -0
  239. package/dist/src/core/coreToolHookTriggers.test.js +191 -0
  240. package/dist/src/core/coreToolHookTriggers.test.js.map +1 -0
  241. package/dist/src/core/coreToolScheduler.d.ts +7 -93
  242. package/dist/src/core/coreToolScheduler.js +133 -369
  243. package/dist/src/core/coreToolScheduler.js.map +1 -1
  244. package/dist/src/core/coreToolScheduler.test.js +252 -394
  245. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  246. package/dist/src/core/geminiChat.d.ts +26 -1
  247. package/dist/src/core/geminiChat.js +112 -79
  248. package/dist/src/core/geminiChat.js.map +1 -1
  249. package/dist/src/core/geminiChat.test.js +125 -92
  250. package/dist/src/core/geminiChat.test.js.map +1 -1
  251. package/dist/src/core/geminiChatHookTriggers.d.ts +8 -4
  252. package/dist/src/core/geminiChatHookTriggers.js +34 -12
  253. package/dist/src/core/geminiChatHookTriggers.js.map +1 -1
  254. package/dist/src/core/geminiChatHookTriggers.test.d.ts +6 -0
  255. package/dist/src/core/geminiChatHookTriggers.test.js +153 -0
  256. package/dist/src/core/geminiChatHookTriggers.test.js.map +1 -0
  257. package/dist/src/core/geminiChat_network_retry.test.js +4 -6
  258. package/dist/src/core/geminiChat_network_retry.test.js.map +1 -1
  259. package/dist/src/core/loggingContentGenerator.js +19 -2
  260. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  261. package/dist/src/core/loggingContentGenerator.test.js +30 -0
  262. package/dist/src/core/loggingContentGenerator.test.js.map +1 -1
  263. package/dist/src/core/nonInteractiveToolExecutor.test.js +4 -4
  264. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  265. package/dist/src/core/prompts.js +37 -13
  266. package/dist/src/core/prompts.js.map +1 -1
  267. package/dist/src/core/prompts.test.js +47 -3
  268. package/dist/src/core/prompts.test.js.map +1 -1
  269. package/dist/src/core/tokenLimits.js +6 -12
  270. package/dist/src/core/tokenLimits.js.map +1 -1
  271. package/dist/src/core/tokenLimits.test.js +8 -4
  272. package/dist/src/core/tokenLimits.test.js.map +1 -1
  273. package/dist/src/core/turn.d.ts +21 -22
  274. package/dist/src/core/turn.js +31 -21
  275. package/dist/src/core/turn.js.map +1 -1
  276. package/dist/src/core/turn.test.js +79 -5
  277. package/dist/src/core/turn.test.js.map +1 -1
  278. package/dist/src/fallback/handler.js +1 -7
  279. package/dist/src/fallback/handler.js.map +1 -1
  280. package/dist/src/fallback/handler.test.js +10 -29
  281. package/dist/src/fallback/handler.test.js.map +1 -1
  282. package/dist/src/generated/git-commit.d.ts +3 -3
  283. package/dist/src/generated/git-commit.js +3 -3
  284. package/dist/src/hooks/hookAggregator.js +7 -0
  285. package/dist/src/hooks/hookAggregator.js.map +1 -1
  286. package/dist/src/hooks/hookEventHandler.d.ts +9 -5
  287. package/dist/src/hooks/hookEventHandler.js +61 -15
  288. package/dist/src/hooks/hookEventHandler.js.map +1 -1
  289. package/dist/src/hooks/hookEventHandler.test.js +223 -8
  290. package/dist/src/hooks/hookEventHandler.test.js.map +1 -1
  291. package/dist/src/hooks/hookPlanner.d.ts +1 -5
  292. package/dist/src/hooks/hookPlanner.js +2 -7
  293. package/dist/src/hooks/hookPlanner.js.map +1 -1
  294. package/dist/src/hooks/hookPlanner.test.js +62 -2
  295. package/dist/src/hooks/hookPlanner.test.js.map +1 -1
  296. package/dist/src/hooks/hookRegistry.d.ts +6 -11
  297. package/dist/src/hooks/hookRegistry.js +41 -14
  298. package/dist/src/hooks/hookRegistry.js.map +1 -1
  299. package/dist/src/hooks/hookRegistry.test.js +166 -2
  300. package/dist/src/hooks/hookRegistry.test.js.map +1 -1
  301. package/dist/src/hooks/hookRunner.d.ts +5 -3
  302. package/dist/src/hooks/hookRunner.js +57 -17
  303. package/dist/src/hooks/hookRunner.js.map +1 -1
  304. package/dist/src/hooks/hookRunner.test.js +172 -35
  305. package/dist/src/hooks/hookRunner.test.js.map +1 -1
  306. package/dist/src/hooks/hookSystem.d.ts +12 -0
  307. package/dist/src/hooks/hookSystem.js +39 -1
  308. package/dist/src/hooks/hookSystem.js.map +1 -1
  309. package/dist/src/hooks/hookTranslator.js +2 -1
  310. package/dist/src/hooks/hookTranslator.js.map +1 -1
  311. package/dist/src/hooks/index.d.ts +1 -2
  312. package/dist/src/hooks/index.js +1 -3
  313. package/dist/src/hooks/index.js.map +1 -1
  314. package/dist/src/hooks/trustedHooks.d.ts +28 -0
  315. package/dist/src/hooks/trustedHooks.js +90 -0
  316. package/dist/src/hooks/trustedHooks.js.map +1 -0
  317. package/dist/src/hooks/trustedHooks.test.d.ts +6 -0
  318. package/dist/src/hooks/trustedHooks.test.js +154 -0
  319. package/dist/src/hooks/trustedHooks.test.js.map +1 -0
  320. package/dist/src/hooks/types.d.ts +41 -9
  321. package/dist/src/hooks/types.js +31 -41
  322. package/dist/src/hooks/types.js.map +1 -1
  323. package/dist/src/hooks/types.test.js +9 -52
  324. package/dist/src/hooks/types.test.js.map +1 -1
  325. package/dist/src/ide/detect-ide.d.ts +4 -0
  326. package/dist/src/ide/detect-ide.js +7 -2
  327. package/dist/src/ide/detect-ide.js.map +1 -1
  328. package/dist/src/ide/detect-ide.test.js +10 -0
  329. package/dist/src/ide/detect-ide.test.js.map +1 -1
  330. package/dist/src/ide/ide-client.js +4 -1
  331. package/dist/src/ide/ide-client.js.map +1 -1
  332. package/dist/src/ide/ide-installer.js +2 -2
  333. package/dist/src/ide/ide-installer.js.map +1 -1
  334. package/dist/src/ide/ide-installer.test.js +11 -2
  335. package/dist/src/ide/ide-installer.test.js.map +1 -1
  336. package/dist/src/index.d.ts +16 -2
  337. package/dist/src/index.js +18 -3
  338. package/dist/src/index.js.map +1 -1
  339. package/dist/src/mcp/oauth-provider.js +7 -3
  340. package/dist/src/mcp/oauth-provider.js.map +1 -1
  341. package/dist/src/mcp/oauth-provider.test.js +4 -1
  342. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  343. package/dist/src/mcp/oauth-utils.d.ts +8 -1
  344. package/dist/src/mcp/oauth-utils.js +31 -2
  345. package/dist/src/mcp/oauth-utils.js.map +1 -1
  346. package/dist/src/mcp/oauth-utils.test.js +42 -0
  347. package/dist/src/mcp/oauth-utils.test.js.map +1 -1
  348. package/dist/src/mcp/token-storage/file-token-storage.js +2 -2
  349. package/dist/src/mcp/token-storage/file-token-storage.js.map +1 -1
  350. package/dist/src/mcp/token-storage/keychain-token-storage.js +1 -1
  351. package/dist/src/mcp/token-storage/keychain-token-storage.js.map +1 -1
  352. package/dist/src/policy/config.js +62 -23
  353. package/dist/src/policy/config.js.map +1 -1
  354. package/dist/src/policy/config.test.js +24 -2
  355. package/dist/src/policy/config.test.js.map +1 -1
  356. package/dist/src/policy/persistence.test.js +1 -1
  357. package/dist/src/policy/persistence.test.js.map +1 -1
  358. package/dist/src/policy/policies/agent.toml +1 -1
  359. package/dist/src/policy/policies/write.toml +5 -0
  360. package/dist/src/policy/policies/yolo.toml +1 -0
  361. package/dist/src/policy/policy-engine.d.ts +4 -0
  362. package/dist/src/policy/policy-engine.js +137 -53
  363. package/dist/src/policy/policy-engine.js.map +1 -1
  364. package/dist/src/policy/policy-engine.test.js +289 -1
  365. package/dist/src/policy/policy-engine.test.js.map +1 -1
  366. package/dist/src/policy/policy-updater.test.js +5 -5
  367. package/dist/src/policy/policy-updater.test.js.map +1 -1
  368. package/dist/src/policy/shell-safety.test.js +371 -8
  369. package/dist/src/policy/shell-safety.test.js.map +1 -1
  370. package/dist/src/policy/toml-loader.d.ts +0 -8
  371. package/dist/src/policy/toml-loader.js +13 -45
  372. package/dist/src/policy/toml-loader.js.map +1 -1
  373. package/dist/src/policy/toml-loader.test.js +13 -0
  374. package/dist/src/policy/toml-loader.test.js.map +1 -1
  375. package/dist/src/policy/types.d.ts +10 -0
  376. package/dist/src/policy/utils.d.ts +21 -0
  377. package/dist/src/policy/utils.js +45 -0
  378. package/dist/src/policy/utils.js.map +1 -0
  379. package/dist/src/policy/utils.test.d.ts +6 -0
  380. package/dist/src/policy/utils.test.js +92 -0
  381. package/dist/src/policy/utils.test.js.map +1 -0
  382. package/dist/src/routing/routingStrategy.d.ts +2 -0
  383. package/dist/src/routing/strategies/classifierStrategy.js +1 -1
  384. package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
  385. package/dist/src/routing/strategies/classifierStrategy.test.js +16 -0
  386. package/dist/src/routing/strategies/classifierStrategy.test.js.map +1 -1
  387. package/dist/src/routing/strategies/compositeStrategy.js +4 -2
  388. package/dist/src/routing/strategies/compositeStrategy.js.map +1 -1
  389. package/dist/src/routing/strategies/compositeStrategy.test.js +11 -10
  390. package/dist/src/routing/strategies/compositeStrategy.test.js.map +1 -1
  391. package/dist/src/routing/strategies/fallbackStrategy.d.ts +1 -1
  392. package/dist/src/routing/strategies/fallbackStrategy.js +2 -5
  393. package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
  394. package/dist/src/routing/strategies/fallbackStrategy.test.js +13 -6
  395. package/dist/src/routing/strategies/fallbackStrategy.test.js.map +1 -1
  396. package/dist/src/routing/strategies/overrideStrategy.d.ts +1 -1
  397. package/dist/src/routing/strategies/overrideStrategy.js +6 -6
  398. package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
  399. package/dist/src/routing/strategies/overrideStrategy.test.js +14 -0
  400. package/dist/src/routing/strategies/overrideStrategy.test.js.map +1 -1
  401. package/dist/src/scheduler/tool-executor.d.ts +22 -0
  402. package/dist/src/scheduler/tool-executor.js +198 -0
  403. package/dist/src/scheduler/tool-executor.js.map +1 -0
  404. package/dist/src/scheduler/tool-executor.test.d.ts +6 -0
  405. package/dist/src/scheduler/tool-executor.test.js +231 -0
  406. package/dist/src/scheduler/tool-executor.test.js.map +1 -0
  407. package/dist/src/scheduler/tool-modifier.d.ts +23 -0
  408. package/dist/src/scheduler/tool-modifier.js +50 -0
  409. package/dist/src/scheduler/tool-modifier.js.map +1 -0
  410. package/dist/src/scheduler/tool-modifier.test.d.ts +6 -0
  411. package/dist/src/scheduler/tool-modifier.test.js +159 -0
  412. package/dist/src/scheduler/tool-modifier.test.js.map +1 -0
  413. package/dist/src/scheduler/types.d.ts +95 -0
  414. package/dist/src/scheduler/types.js +7 -0
  415. package/dist/src/scheduler/types.js.map +1 -0
  416. package/dist/src/services/chatCompressionService.js +3 -10
  417. package/dist/src/services/chatCompressionService.js.map +1 -1
  418. package/dist/src/services/chatCompressionService.test.js +1 -0
  419. package/dist/src/services/chatCompressionService.test.js.map +1 -1
  420. package/dist/src/services/chatRecordingService.d.ts +7 -1
  421. package/dist/src/services/chatRecordingService.js +20 -2
  422. package/dist/src/services/chatRecordingService.js.map +1 -1
  423. package/dist/src/services/chatRecordingService.test.js +43 -0
  424. package/dist/src/services/chatRecordingService.test.js.map +1 -1
  425. package/dist/src/services/contextManager.d.ts +5 -11
  426. package/dist/src/services/contextManager.js +20 -17
  427. package/dist/src/services/contextManager.js.map +1 -1
  428. package/dist/src/services/contextManager.test.js +40 -41
  429. package/dist/src/services/contextManager.test.js.map +1 -1
  430. package/dist/src/services/environmentSanitization.d.ts +15 -0
  431. package/dist/src/services/environmentSanitization.js +142 -0
  432. package/dist/src/services/environmentSanitization.js.map +1 -0
  433. package/dist/src/services/environmentSanitization.test.d.ts +6 -0
  434. package/dist/src/services/environmentSanitization.test.js +284 -0
  435. package/dist/src/services/environmentSanitization.test.js.map +1 -0
  436. package/dist/src/services/gitService.js +10 -1
  437. package/dist/src/services/gitService.js.map +1 -1
  438. package/dist/src/services/gitService.test.js +28 -2
  439. package/dist/src/services/gitService.test.js.map +1 -1
  440. package/dist/src/services/loopDetectionService.js +2 -1
  441. package/dist/src/services/loopDetectionService.js.map +1 -1
  442. package/dist/src/services/loopDetectionService.test.js +14 -8
  443. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  444. package/dist/src/services/modelConfig.integration.test.js +3 -3
  445. package/dist/src/services/modelConfig.integration.test.js.map +1 -1
  446. package/dist/src/services/modelConfigService.d.ts +38 -4
  447. package/dist/src/services/modelConfigService.js +135 -76
  448. package/dist/src/services/modelConfigService.js.map +1 -1
  449. package/dist/src/services/modelConfigService.test.js +116 -0
  450. package/dist/src/services/modelConfigService.test.js.map +1 -1
  451. package/dist/src/services/shellExecutionService.d.ts +2 -0
  452. package/dist/src/services/shellExecutionService.js +6 -50
  453. package/dist/src/services/shellExecutionService.js.map +1 -1
  454. package/dist/src/services/shellExecutionService.test.js +68 -4
  455. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  456. package/dist/src/skills/skillLoader.d.ts +31 -0
  457. package/dist/src/skills/skillLoader.js +77 -0
  458. package/dist/src/skills/skillLoader.js.map +1 -0
  459. package/dist/src/skills/skillLoader.test.d.ts +6 -0
  460. package/dist/src/skills/skillLoader.test.js +75 -0
  461. package/dist/src/skills/skillLoader.test.js.map +1 -0
  462. package/dist/src/skills/skillManager.d.ts +69 -0
  463. package/dist/src/skills/skillManager.js +127 -0
  464. package/dist/src/skills/skillManager.js.map +1 -0
  465. package/dist/src/skills/skillManager.test.d.ts +6 -0
  466. package/dist/src/skills/skillManager.test.js +210 -0
  467. package/dist/src/skills/skillManager.test.js.map +1 -0
  468. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +18 -9
  469. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +234 -160
  470. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  471. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +162 -32
  472. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  473. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +11 -3
  474. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +24 -5
  475. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  476. package/dist/src/telemetry/loggers.d.ts +3 -3
  477. package/dist/src/telemetry/loggers.js +6 -5
  478. package/dist/src/telemetry/loggers.js.map +1 -1
  479. package/dist/src/telemetry/loggers.test.circular.js +1 -0
  480. package/dist/src/telemetry/loggers.test.circular.js.map +1 -1
  481. package/dist/src/telemetry/loggers.test.js +51 -10
  482. package/dist/src/telemetry/loggers.test.js.map +1 -1
  483. package/dist/src/telemetry/sdk.js +5 -6
  484. package/dist/src/telemetry/sdk.js.map +1 -1
  485. package/dist/src/telemetry/types.d.ts +7 -7
  486. package/dist/src/telemetry/types.js +14 -12
  487. package/dist/src/telemetry/types.js.map +1 -1
  488. package/dist/src/test-utils/mock-message-bus.d.ts +1 -0
  489. package/dist/src/test-utils/mock-message-bus.js +29 -0
  490. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  491. package/dist/src/test-utils/mock-tool.d.ts +5 -3
  492. package/dist/src/test-utils/mock-tool.js +11 -10
  493. package/dist/src/test-utils/mock-tool.js.map +1 -1
  494. package/dist/src/tools/activate-skill.d.ts +27 -0
  495. package/dist/src/tools/activate-skill.js +133 -0
  496. package/dist/src/tools/activate-skill.js.map +1 -0
  497. package/dist/src/tools/activate-skill.test.d.ts +6 -0
  498. package/dist/src/tools/activate-skill.test.js +113 -0
  499. package/dist/src/tools/activate-skill.test.js.map +1 -0
  500. package/dist/src/tools/confirmation-policy.test.js +3 -12
  501. package/dist/src/tools/confirmation-policy.test.js.map +1 -1
  502. package/dist/src/tools/edit.d.ts +27 -5
  503. package/dist/src/tools/edit.js +455 -136
  504. package/dist/src/tools/edit.js.map +1 -1
  505. package/dist/src/tools/edit.test.js +292 -526
  506. package/dist/src/tools/edit.test.js.map +1 -1
  507. package/dist/src/tools/get-internal-docs.d.ts +27 -0
  508. package/dist/src/tools/get-internal-docs.js +122 -0
  509. package/dist/src/tools/get-internal-docs.js.map +1 -0
  510. package/dist/src/tools/get-internal-docs.test.d.ts +6 -0
  511. package/dist/src/tools/get-internal-docs.test.js +57 -0
  512. package/dist/src/tools/get-internal-docs.test.js.map +1 -0
  513. package/dist/src/tools/glob.d.ts +2 -2
  514. package/dist/src/tools/glob.js +1 -1
  515. package/dist/src/tools/glob.js.map +1 -1
  516. package/dist/src/tools/glob.test.js +2 -1
  517. package/dist/src/tools/glob.test.js.map +1 -1
  518. package/dist/src/tools/grep.d.ts +2 -2
  519. package/dist/src/tools/grep.js +1 -1
  520. package/dist/src/tools/grep.js.map +1 -1
  521. package/dist/src/tools/grep.test.js +5 -4
  522. package/dist/src/tools/grep.test.js.map +1 -1
  523. package/dist/src/tools/ls.d.ts +2 -2
  524. package/dist/src/tools/ls.js +2 -2
  525. package/dist/src/tools/ls.js.map +1 -1
  526. package/dist/src/tools/ls.test.js +2 -1
  527. package/dist/src/tools/ls.test.js.map +1 -1
  528. package/dist/src/tools/mcp-client-manager.js +14 -7
  529. package/dist/src/tools/mcp-client-manager.js.map +1 -1
  530. package/dist/src/tools/mcp-client-manager.test.js +28 -0
  531. package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
  532. package/dist/src/tools/mcp-client.d.ts +5 -4
  533. package/dist/src/tools/mcp-client.js +10 -8
  534. package/dist/src/tools/mcp-client.js.map +1 -1
  535. package/dist/src/tools/mcp-client.test.js +47 -42
  536. package/dist/src/tools/mcp-client.test.js.map +1 -1
  537. package/dist/src/tools/mcp-tool.d.ts +20 -5
  538. package/dist/src/tools/mcp-tool.js +8 -8
  539. package/dist/src/tools/mcp-tool.js.map +1 -1
  540. package/dist/src/tools/mcp-tool.test.js +11 -6
  541. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  542. package/dist/src/tools/memoryTool.d.ts +3 -3
  543. package/dist/src/tools/memoryTool.js +2 -4
  544. package/dist/src/tools/memoryTool.js.map +1 -1
  545. package/dist/src/tools/memoryTool.test.js +5 -2
  546. package/dist/src/tools/memoryTool.test.js.map +1 -1
  547. package/dist/src/tools/message-bus-integration.test.js +10 -37
  548. package/dist/src/tools/message-bus-integration.test.js.map +1 -1
  549. package/dist/src/tools/read-file.d.ts +2 -2
  550. package/dist/src/tools/read-file.js +1 -1
  551. package/dist/src/tools/read-file.js.map +1 -1
  552. package/dist/src/tools/read-file.test.js +3 -2
  553. package/dist/src/tools/read-file.test.js.map +1 -1
  554. package/dist/src/tools/read-many-files.d.ts +2 -2
  555. package/dist/src/tools/read-many-files.js +2 -3
  556. package/dist/src/tools/read-many-files.js.map +1 -1
  557. package/dist/src/tools/read-many-files.test.js +3 -2
  558. package/dist/src/tools/read-many-files.test.js.map +1 -1
  559. package/dist/src/tools/ripGrep.d.ts +3 -2
  560. package/dist/src/tools/ripGrep.js +18 -7
  561. package/dist/src/tools/ripGrep.js.map +1 -1
  562. package/dist/src/tools/ripGrep.test.js +60 -4
  563. package/dist/src/tools/ripGrep.test.js.map +1 -1
  564. package/dist/src/tools/shell.d.ts +3 -6
  565. package/dist/src/tools/shell.js +21 -49
  566. package/dist/src/tools/shell.js.map +1 -1
  567. package/dist/src/tools/shell.test.js +35 -59
  568. package/dist/src/tools/shell.test.js.map +1 -1
  569. package/dist/src/tools/tool-error.d.ts +6 -1
  570. package/dist/src/tools/tool-error.js +6 -0
  571. package/dist/src/tools/tool-error.js.map +1 -1
  572. package/dist/src/tools/tool-names.d.ts +15 -0
  573. package/dist/src/tools/tool-names.js +57 -0
  574. package/dist/src/tools/tool-names.js.map +1 -1
  575. package/dist/src/tools/tool-names.test.d.ts +6 -0
  576. package/dist/src/tools/tool-names.test.js +43 -0
  577. package/dist/src/tools/tool-names.test.js.map +1 -0
  578. package/dist/src/tools/tool-registry.d.ts +11 -7
  579. package/dist/src/tools/tool-registry.js +15 -10
  580. package/dist/src/tools/tool-registry.js.map +1 -1
  581. package/dist/src/tools/tool-registry.test.js +16 -11
  582. package/dist/src/tools/tool-registry.test.js.map +1 -1
  583. package/dist/src/tools/tools.d.ts +8 -6
  584. package/dist/src/tools/tools.js +16 -18
  585. package/dist/src/tools/tools.js.map +1 -1
  586. package/dist/src/tools/tools.test.js +3 -1
  587. package/dist/src/tools/tools.test.js.map +1 -1
  588. package/dist/src/tools/web-fetch.d.ts +2 -2
  589. package/dist/src/tools/web-fetch.js +4 -4
  590. package/dist/src/tools/web-fetch.js.map +1 -1
  591. package/dist/src/tools/web-fetch.test.js +17 -19
  592. package/dist/src/tools/web-fetch.test.js.map +1 -1
  593. package/dist/src/tools/web-search.d.ts +2 -2
  594. package/dist/src/tools/web-search.js +5 -5
  595. package/dist/src/tools/web-search.js.map +1 -1
  596. package/dist/src/tools/web-search.test.js +2 -1
  597. package/dist/src/tools/web-search.test.js.map +1 -1
  598. package/dist/src/tools/write-file.d.ts +2 -2
  599. package/dist/src/tools/write-file.js +9 -6
  600. package/dist/src/tools/write-file.js.map +1 -1
  601. package/dist/src/tools/write-file.test.js +49 -7
  602. package/dist/src/tools/write-file.test.js.map +1 -1
  603. package/dist/src/tools/write-todos.d.ts +2 -2
  604. package/dist/src/tools/write-todos.js +5 -4
  605. package/dist/src/tools/write-todos.js.map +1 -1
  606. package/dist/src/tools/write-todos.test.js +2 -1
  607. package/dist/src/tools/write-todos.test.js.map +1 -1
  608. package/dist/src/utils/apiConversionUtils.d.ts +12 -0
  609. package/dist/src/utils/apiConversionUtils.js +46 -0
  610. package/dist/src/utils/apiConversionUtils.js.map +1 -0
  611. package/dist/src/utils/apiConversionUtils.test.d.ts +6 -0
  612. package/dist/src/utils/apiConversionUtils.test.js +150 -0
  613. package/dist/src/utils/apiConversionUtils.test.js.map +1 -0
  614. package/dist/src/utils/checkpointUtils.d.ts +1 -1
  615. package/dist/src/utils/checkpointUtils.js +1 -1
  616. package/dist/src/utils/checkpointUtils.js.map +1 -1
  617. package/dist/src/utils/checkpointUtils.test.js +1 -1
  618. package/dist/src/utils/checkpointUtils.test.js.map +1 -1
  619. package/dist/src/utils/debugLogger.js +1 -0
  620. package/dist/src/utils/debugLogger.js.map +1 -1
  621. package/dist/src/utils/editCorrector.d.ts +3 -3
  622. package/dist/src/utils/editCorrector.js +27 -10
  623. package/dist/src/utils/editCorrector.js.map +1 -1
  624. package/dist/src/utils/editCorrector.test.js +23 -23
  625. package/dist/src/utils/editCorrector.test.js.map +1 -1
  626. package/dist/src/utils/editor.d.ts +3 -2
  627. package/dist/src/utils/editor.js +26 -6
  628. package/dist/src/utils/editor.js.map +1 -1
  629. package/dist/src/utils/editor.test.js +27 -4
  630. package/dist/src/utils/editor.test.js.map +1 -1
  631. package/dist/src/utils/environmentContext.d.ts +1 -0
  632. package/dist/src/utils/environmentContext.js +4 -0
  633. package/dist/src/utils/environmentContext.js.map +1 -1
  634. package/dist/src/utils/environmentContext.test.js +2 -0
  635. package/dist/src/utils/environmentContext.test.js.map +1 -1
  636. package/dist/src/utils/errorReporting.d.ts +1 -1
  637. package/dist/src/utils/errorReporting.js +13 -12
  638. package/dist/src/utils/errorReporting.js.map +1 -1
  639. package/dist/src/utils/errorReporting.test.js +17 -14
  640. package/dist/src/utils/errorReporting.test.js.map +1 -1
  641. package/dist/src/utils/events.d.ts +71 -19
  642. package/dist/src/utils/events.js +35 -9
  643. package/dist/src/utils/events.js.map +1 -1
  644. package/dist/src/utils/events.test.js +25 -0
  645. package/dist/src/utils/events.test.js.map +1 -1
  646. package/dist/src/utils/fileDiffUtils.d.ts +18 -0
  647. package/dist/src/utils/fileDiffUtils.js +37 -0
  648. package/dist/src/utils/fileDiffUtils.js.map +1 -0
  649. package/dist/src/utils/fileDiffUtils.test.d.ts +6 -0
  650. package/dist/src/utils/fileDiffUtils.test.js +84 -0
  651. package/dist/src/utils/fileDiffUtils.test.js.map +1 -0
  652. package/dist/src/utils/fileUtils.d.ts +4 -0
  653. package/dist/src/utils/fileUtils.js +53 -0
  654. package/dist/src/utils/fileUtils.js.map +1 -1
  655. package/dist/src/utils/fileUtils.test.js +112 -1
  656. package/dist/src/utils/fileUtils.test.js.map +1 -1
  657. package/dist/src/utils/geminiIgnoreParser.d.ts +11 -0
  658. package/dist/src/utils/geminiIgnoreParser.js +20 -0
  659. package/dist/src/utils/geminiIgnoreParser.js.map +1 -1
  660. package/dist/src/utils/geminiIgnoreParser.test.js +48 -0
  661. package/dist/src/utils/geminiIgnoreParser.test.js.map +1 -1
  662. package/dist/src/utils/generateContentResponseUtilities.d.ts +3 -1
  663. package/dist/src/utils/generateContentResponseUtilities.js +106 -0
  664. package/dist/src/utils/generateContentResponseUtilities.js.map +1 -1
  665. package/dist/src/utils/generateContentResponseUtilities.test.js +279 -2
  666. package/dist/src/utils/generateContentResponseUtilities.test.js.map +1 -1
  667. package/dist/src/utils/getFolderStructure.js +7 -2
  668. package/dist/src/utils/getFolderStructure.js.map +1 -1
  669. package/dist/src/utils/gitIgnoreParser.js +9 -10
  670. package/dist/src/utils/gitIgnoreParser.js.map +1 -1
  671. package/dist/src/utils/installationManager.test.js +11 -3
  672. package/dist/src/utils/installationManager.test.js.map +1 -1
  673. package/dist/src/utils/memoryDiscovery.js +3 -4
  674. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  675. package/dist/src/utils/memoryDiscovery.test.js +12 -1
  676. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  677. package/dist/src/utils/partUtils.js +1 -1
  678. package/dist/src/utils/partUtils.js.map +1 -1
  679. package/dist/src/utils/paths.d.ts +10 -0
  680. package/dist/src/utils/paths.js +20 -1
  681. package/dist/src/utils/paths.js.map +1 -1
  682. package/dist/src/utils/retry.d.ts +1 -0
  683. package/dist/src/utils/retry.js +17 -5
  684. package/dist/src/utils/retry.js.map +1 -1
  685. package/dist/src/utils/retry.test.js +11 -11
  686. package/dist/src/utils/retry.test.js.map +1 -1
  687. package/dist/src/utils/shell-utils.d.ts +6 -0
  688. package/dist/src/utils/shell-utils.js +97 -12
  689. package/dist/src/utils/shell-utils.js.map +1 -1
  690. package/dist/src/utils/shell-utils.test.js +99 -1
  691. package/dist/src/utils/shell-utils.test.js.map +1 -1
  692. package/dist/src/utils/summarizer.test.js +3 -2
  693. package/dist/src/utils/summarizer.test.js.map +1 -1
  694. package/dist/src/utils/terminal.d.ts +4 -0
  695. package/dist/src/utils/terminal.js +12 -0
  696. package/dist/src/utils/terminal.js.map +1 -1
  697. package/dist/src/utils/tokenCalculation.js +20 -5
  698. package/dist/src/utils/tokenCalculation.js.map +1 -1
  699. package/dist/src/utils/tokenCalculation.test.js +11 -2
  700. package/dist/src/utils/tokenCalculation.test.js.map +1 -1
  701. package/dist/src/utils/tool-utils.d.ts +9 -0
  702. package/dist/src/utils/tool-utils.js +29 -0
  703. package/dist/src/utils/tool-utils.js.map +1 -1
  704. package/dist/src/utils/tool-utils.test.js +17 -2
  705. package/dist/src/utils/tool-utils.test.js.map +1 -1
  706. package/dist/src/utils/userAccountManager.test.js +5 -5
  707. package/dist/src/utils/userAccountManager.test.js.map +1 -1
  708. package/dist/src/utils/workspaceContext.test.js +1 -1
  709. package/dist/src/utils/workspaceContext.test.js.map +1 -1
  710. package/dist/tsconfig.tsbuildinfo +1 -1
  711. package/package.json +8 -6
  712. package/dist/src/agents/executor.js.map +0 -1
  713. package/dist/src/agents/executor.test.js.map +0 -1
  714. package/dist/src/agents/invocation.js.map +0 -1
  715. package/dist/src/agents/invocation.test.js.map +0 -1
  716. package/dist/src/core/sessionHookTriggers.d.ts +0 -28
  717. package/dist/src/core/sessionHookTriggers.js +0 -68
  718. package/dist/src/core/sessionHookTriggers.js.map +0 -1
  719. package/dist/src/tools/smart-edit.d.ts +0 -78
  720. package/dist/src/tools/smart-edit.js +0 -722
  721. package/dist/src/tools/smart-edit.js.map +0 -1
  722. package/dist/src/tools/smart-edit.test.js +0 -592
  723. package/dist/src/tools/smart-edit.test.js.map +0 -1
  724. package/dist/src/utils/shell-permissions.d.ts +0 -52
  725. package/dist/src/utils/shell-permissions.js +0 -188
  726. package/dist/src/utils/shell-permissions.js.map +0 -1
  727. package/dist/src/utils/shell-permissions.test.js +0 -347
  728. package/dist/src/utils/shell-permissions.test.js.map +0 -1
  729. /package/dist/src/agents/{executor.test.d.ts → a2a-client-manager.test.d.ts} +0 -0
  730. /package/dist/src/agents/{invocation.test.d.ts → a2aUtils.test.d.ts} +0 -0
  731. /package/dist/src/{tools/smart-edit.test.d.ts → agents/agentLoader.test.d.ts} +0 -0
  732. /package/dist/src/{utils/shell-permissions.test.d.ts → agents/cli-help-agent.test.d.ts} +0 -0
@@ -4,6 +4,8 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { createHash } from 'node:crypto';
7
+ import * as os from 'node:os';
8
+ import si from 'systeminformation';
7
9
  import { HttpsProxyAgent } from 'https-proxy-agent';
8
10
  import { EventMetadataKey } from './event-metadata-key.js';
9
11
  import { InstallationManager } from '../../utils/installationManager.js';
@@ -13,6 +15,7 @@ import { FixedDeque } from 'mnemonist';
13
15
  import { GIT_COMMIT_INFO, CLI_VERSION } from '../../generated/git-commit.js';
14
16
  import { IDE_DEFINITIONS, detectIdeFromEnv, isCloudShell, } from '../../ide/detect-ide.js';
15
17
  import { debugLogger } from '../../utils/debugLogger.js';
18
+ import { getErrorMessage } from '../../utils/errors.js';
16
19
  export var EventNames;
17
20
  (function (EventNames) {
18
21
  EventNames["START_SESSION"] = "start_session";
@@ -45,13 +48,14 @@ export var EventNames;
45
48
  EventNames["TOOL_OUTPUT_TRUNCATED"] = "tool_output_truncated";
46
49
  EventNames["MODEL_ROUTING"] = "model_routing";
47
50
  EventNames["MODEL_SLASH_COMMAND"] = "model_slash_command";
48
- EventNames["SMART_EDIT_STRATEGY"] = "smart_edit_strategy";
49
- EventNames["SMART_EDIT_CORRECTION"] = "smart_edit_correction";
51
+ EventNames["EDIT_STRATEGY"] = "edit_strategy";
52
+ EventNames["EDIT_CORRECTION"] = "edit_correction";
50
53
  EventNames["AGENT_START"] = "agent_start";
51
54
  EventNames["AGENT_FINISH"] = "agent_finish";
52
55
  EventNames["RECOVERY_ATTEMPT"] = "recovery_attempt";
53
56
  EventNames["WEB_FETCH_FALLBACK_ATTEMPT"] = "web_fetch_fallback_attempt";
54
57
  EventNames["LLM_LOOP_CHECK"] = "llm_loop_check";
58
+ EventNames["HOOK_CALL"] = "hook_call";
55
59
  })(EventNames || (EventNames = {}));
56
60
  /**
57
61
  * Determine the surface that the user is currently using. Surface is effectively the
@@ -109,6 +113,29 @@ const MAX_EVENTS = 1000;
109
113
  * Maximum events to retry after a failed clearcut flush
110
114
  */
111
115
  const MAX_RETRY_EVENTS = 100;
116
+ const NO_GPU = 'NA';
117
+ let cachedGpuInfo;
118
+ async function refreshGpuInfo() {
119
+ try {
120
+ const graphics = await si.graphics();
121
+ if (graphics.controllers && graphics.controllers.length > 0) {
122
+ cachedGpuInfo = graphics.controllers.map((c) => c.model).join(', ');
123
+ }
124
+ else {
125
+ cachedGpuInfo = NO_GPU;
126
+ }
127
+ }
128
+ catch (error) {
129
+ cachedGpuInfo = 'FAILED';
130
+ debugLogger.error('Failed to get GPU information for telemetry', getErrorMessage(error));
131
+ }
132
+ }
133
+ async function getGpuInfo() {
134
+ if (!cachedGpuInfo) {
135
+ await refreshGpuInfo();
136
+ }
137
+ return cachedGpuInfo ?? NO_GPU;
138
+ }
112
139
  // Singleton class for batch posting log events to Clearcut. When a new event comes in, the elapsed time
113
140
  // is checked and events are flushed to Clearcut if at least a minute has passed since the last flush.
114
141
  export class ClearcutLogger {
@@ -163,18 +190,22 @@ export class ClearcutLogger {
163
190
  // @ts-expect-error - ClearcutLogger is a singleton, but we need to clear it for tests.
164
191
  ClearcutLogger.instance = undefined;
165
192
  }
166
- enqueueHelper(event) {
193
+ enqueueHelper(event, experimentIds) {
167
194
  // Manually handle overflow for FixedDeque, which throws when full.
168
195
  const wasAtCapacity = this.events.size >= MAX_EVENTS;
169
196
  if (wasAtCapacity) {
170
197
  this.events.shift(); // Evict oldest element to make space.
171
198
  }
172
- this.events.push([
173
- {
174
- event_time_ms: Date.now(),
175
- source_extension_json: safeJsonStringify(event),
176
- },
177
- ]);
199
+ const logEventEntry = {
200
+ event_time_ms: Date.now(),
201
+ source_extension_json: safeJsonStringify(event),
202
+ };
203
+ if (experimentIds !== undefined) {
204
+ logEventEntry.exp = {
205
+ gws_experiment: experimentIds,
206
+ };
207
+ }
208
+ this.events.push([logEventEntry]);
178
209
  if (wasAtCapacity && this.config?.getDebugMode()) {
179
210
  debugLogger.debug(`ClearcutLogger: Dropped old event to prevent memory leak (queue size: ${this.events.size})`);
180
211
  }
@@ -185,7 +216,7 @@ export class ClearcutLogger {
185
216
  }
186
217
  catch (error) {
187
218
  if (this.config?.getDebugMode()) {
188
- console.error('ClearcutLogger: Failed to enqueue log event.', error);
219
+ debugLogger.warn('ClearcutLogger: Failed to enqueue log event.', error);
189
220
  }
190
221
  }
191
222
  }
@@ -196,19 +227,17 @@ export class ClearcutLogger {
196
227
  if (experiments) {
197
228
  const exp_id_data = [
198
229
  {
199
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXPERIMENT_IDS,
230
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXPERIMENT_IDS,
200
231
  value: experiments.experimentIds.toString() ?? 'NA',
201
232
  },
202
233
  ];
203
234
  event.event_metadata = [[...event.event_metadata[0], ...exp_id_data]];
204
235
  }
205
- this.enqueueHelper(event);
236
+ this.enqueueHelper(event, experiments?.experimentIds);
206
237
  });
207
238
  }
208
239
  catch (error) {
209
- if (this.config?.getDebugMode()) {
210
- console.error('ClearcutLogger: Failed to enqueue log event.', error);
211
- }
240
+ debugLogger.warn('ClearcutLogger: Failed to enqueue log event.', error);
212
241
  }
213
242
  }
214
243
  createBasicLogEvent(eventName, data = []) {
@@ -218,31 +247,31 @@ export class ClearcutLogger {
218
247
  const baseMetadata = [
219
248
  ...data,
220
249
  {
221
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SURFACE,
250
+ cell_cli_key: EventMetadataKey.CELL_CLI_SURFACE,
222
251
  value: surface,
223
252
  },
224
253
  {
225
- CELL_CLI_key: EventMetadataKey.CELL_CLI_VERSION,
254
+ cell_cli_key: EventMetadataKey.CELL_CLI_VERSION,
226
255
  value: CLI_VERSION,
227
256
  },
228
257
  {
229
- CELL_CLI_key: EventMetadataKey.CELL_CLI_GIT_COMMIT_HASH,
258
+ cell_cli_key: EventMetadataKey.CELL_CLI_GIT_COMMIT_HASH,
230
259
  value: GIT_COMMIT_INFO,
231
260
  },
232
261
  {
233
- CELL_CLI_key: EventMetadataKey.CELL_CLI_OS,
262
+ cell_cli_key: EventMetadataKey.CELL_CLI_OS,
234
263
  value: process.platform,
235
264
  },
236
265
  ];
237
266
  if (ghWorkflowName) {
238
267
  baseMetadata.push({
239
- CELL_CLI_key: EventMetadataKey.CELL_CLI_GH_WORKFLOW_NAME,
268
+ cell_cli_key: EventMetadataKey.CELL_CLI_GH_WORKFLOW_NAME,
240
269
  value: ghWorkflowName,
241
270
  });
242
271
  }
243
272
  if (this.hashedGHRepositoryName) {
244
273
  baseMetadata.push({
245
- CELL_CLI_key: EventMetadataKey.CELL_CLI_GH_REPOSITORY_NAME_HASH,
274
+ cell_cli_key: EventMetadataKey.CELL_CLI_GH_REPOSITORY_NAME_HASH,
246
275
  value: this.hashedGHRepositoryName,
247
276
  });
248
277
  }
@@ -318,7 +347,7 @@ export class ClearcutLogger {
318
347
  }
319
348
  else {
320
349
  if (this.config?.getDebugMode()) {
321
- console.error(`Error flushing log events: HTTP ${response.status}: ${response.statusText}`);
350
+ debugLogger.warn(`Error flushing log events: HTTP ${response.status}: ${response.statusText}`);
322
351
  }
323
352
  // Re-queue failed events for retry
324
353
  this.requeueFailedEvents(eventsToSend);
@@ -326,7 +355,7 @@ export class ClearcutLogger {
326
355
  }
327
356
  catch (e) {
328
357
  if (this.config?.getDebugMode()) {
329
- console.error('Error flushing log events:', e);
358
+ debugLogger.warn('Error flushing log events:', e);
330
359
  }
331
360
  // Re-queue failed events for retry
332
361
  this.requeueFailedEvents(eventsToSend);
@@ -344,84 +373,101 @@ export class ClearcutLogger {
344
373
  }
345
374
  return result;
346
375
  }
347
- logStartSessionEvent(event) {
376
+ async logStartSessionEvent(event) {
348
377
  const data = [
349
378
  {
350
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_MODEL,
379
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_MODEL,
351
380
  value: event.model,
352
381
  },
353
382
  {
354
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_EMBEDDING_MODEL,
383
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_EMBEDDING_MODEL,
355
384
  value: event.embedding_model,
356
385
  },
357
386
  {
358
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_SANDBOX,
387
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_SANDBOX,
359
388
  value: event.sandbox_enabled.toString(),
360
389
  },
361
390
  {
362
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_CORE_TOOLS,
391
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_CORE_TOOLS,
363
392
  value: event.core_tools_enabled,
364
393
  },
365
394
  {
366
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_APPROVAL_MODE,
395
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_APPROVAL_MODE,
367
396
  value: event.approval_mode,
368
397
  },
369
398
  {
370
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_API_KEY_ENABLED,
399
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_API_KEY_ENABLED,
371
400
  value: event.api_key_enabled.toString(),
372
401
  },
373
402
  {
374
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_VERTEX_API_ENABLED,
403
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_VERTEX_API_ENABLED,
375
404
  value: event.vertex_ai_enabled.toString(),
376
405
  },
377
406
  {
378
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_DEBUG_MODE_ENABLED,
407
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_DEBUG_MODE_ENABLED,
379
408
  value: event.debug_enabled.toString(),
380
409
  },
381
410
  {
382
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_VERTEX_API_ENABLED,
411
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_VERTEX_API_ENABLED,
383
412
  value: event.vertex_ai_enabled.toString(),
384
413
  },
385
414
  {
386
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_SERVERS,
415
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_SERVERS,
387
416
  value: event.mcp_servers,
388
417
  },
389
418
  {
390
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_VERTEX_API_ENABLED,
419
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_VERTEX_API_ENABLED,
391
420
  value: event.vertex_ai_enabled.toString(),
392
421
  },
393
422
  {
394
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_TELEMETRY_ENABLED,
423
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_TELEMETRY_ENABLED,
395
424
  value: event.telemetry_enabled.toString(),
396
425
  },
397
426
  {
398
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_TELEMETRY_LOG_USER_PROMPTS_ENABLED,
427
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_TELEMETRY_LOG_USER_PROMPTS_ENABLED,
399
428
  value: event.telemetry_log_user_prompts_enabled.toString(),
400
429
  },
401
430
  {
402
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_SERVERS_COUNT,
431
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_SERVERS_COUNT,
403
432
  value: event.mcp_servers_count
404
433
  ? event.mcp_servers_count.toString()
405
434
  : '',
406
435
  },
407
436
  {
408
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_TOOLS_COUNT,
437
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_TOOLS_COUNT,
409
438
  value: event.mcp_tools_count?.toString() ?? '',
410
439
  },
411
440
  {
412
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_TOOLS,
441
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_MCP_TOOLS,
413
442
  value: event.mcp_tools ? event.mcp_tools : '',
414
443
  },
415
444
  {
416
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_EXTENSIONS_COUNT,
445
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_EXTENSIONS_COUNT,
417
446
  value: event.extensions_count.toString(),
418
447
  },
419
448
  // We deliberately do not log the names of extensions here, to be safe.
420
449
  {
421
- CELL_CLI_key: EventMetadataKey.CELL_CLI_START_SESSION_EXTENSION_IDS,
450
+ cell_cli_key: EventMetadataKey.CELL_CLI_START_SESSION_EXTENSION_IDS,
422
451
  value: event.extension_ids.toString(),
423
452
  },
424
453
  ];
454
+ // Add hardware information only to the start session event
455
+ const cpus = os.cpus();
456
+ data.push({
457
+ cell_cli_key: EventMetadataKey.CELL_CLI_CPU_INFO,
458
+ value: cpus[0].model,
459
+ }, {
460
+ cell_cli_key: EventMetadataKey.CELL_CLI_CPU_CORES,
461
+ value: cpus.length.toString(),
462
+ }, {
463
+ cell_cli_key: EventMetadataKey.CELL_CLI_RAM_TOTAL_GB,
464
+ value: (os.totalmem() / 1024 ** 3).toFixed(2).toString(),
465
+ });
466
+ const gpuInfo = await getGpuInfo();
467
+ data.push({
468
+ cell_cli_key: EventMetadataKey.CELL_CLI_GPU_INFO,
469
+ value: gpuInfo,
470
+ });
425
471
  this.sessionData = data;
426
472
  // Flush after experiments finish loading from CCPA server
427
473
  // eslint-disable-next-line @typescript-eslint/no-floating-promises
@@ -435,7 +481,7 @@ export class ClearcutLogger {
435
481
  this.promptId = event.prompt_id;
436
482
  const data = [
437
483
  {
438
- CELL_CLI_key: EventMetadataKey.CELL_CLI_USER_PROMPT_LENGTH,
484
+ cell_cli_key: EventMetadataKey.CELL_CLI_USER_PROMPT_LENGTH,
439
485
  value: JSON.stringify(event.prompt_length),
440
486
  },
441
487
  ];
@@ -445,35 +491,35 @@ export class ClearcutLogger {
445
491
  logToolCallEvent(event) {
446
492
  const data = [
447
493
  {
448
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_NAME,
494
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_NAME,
449
495
  value: JSON.stringify(event.function_name),
450
496
  },
451
497
  {
452
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_DECISION,
498
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_DECISION,
453
499
  value: JSON.stringify(event.decision),
454
500
  },
455
501
  {
456
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_SUCCESS,
502
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_SUCCESS,
457
503
  value: JSON.stringify(event.success),
458
504
  },
459
505
  {
460
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_DURATION_MS,
506
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_DURATION_MS,
461
507
  value: JSON.stringify(event.duration_ms),
462
508
  },
463
509
  {
464
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_ERROR_TYPE,
510
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_ERROR_TYPE,
465
511
  value: JSON.stringify(event.error_type),
466
512
  },
467
513
  {
468
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_TYPE,
514
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_TYPE,
469
515
  value: JSON.stringify(event.tool_type),
470
516
  },
471
517
  {
472
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_CONTENT_LENGTH,
518
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_CONTENT_LENGTH,
473
519
  value: JSON.stringify(event.content_length),
474
520
  },
475
521
  {
476
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_MCP_SERVER_NAME,
522
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_MCP_SERVER_NAME,
477
523
  value: JSON.stringify(event.mcp_server_name),
478
524
  },
479
525
  ];
@@ -488,10 +534,10 @@ export class ClearcutLogger {
488
534
  user_added_chars: EventMetadataKey.CELL_CLI_USER_ADDED_CHARS,
489
535
  user_removed_chars: EventMetadataKey.CELL_CLI_USER_REMOVED_CHARS,
490
536
  };
491
- for (const [key, CELL_CLI_key] of Object.entries(metadataMapping)) {
537
+ for (const [key, cell_cli_key] of Object.entries(metadataMapping)) {
492
538
  if (event.metadata[key] !== undefined) {
493
539
  data.push({
494
- CELL_CLI_key,
540
+ cell_cli_key,
495
541
  value: JSON.stringify(event.metadata[key]),
496
542
  });
497
543
  }
@@ -499,7 +545,7 @@ export class ClearcutLogger {
499
545
  }
500
546
  if (event.extension_id) {
501
547
  data.push({
502
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
548
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
503
549
  value: event.extension_id,
504
550
  });
505
551
  }
@@ -510,29 +556,29 @@ export class ClearcutLogger {
510
556
  logFileOperationEvent(event) {
511
557
  const data = [
512
558
  {
513
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_NAME,
559
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_NAME,
514
560
  value: JSON.stringify(event.tool_name),
515
561
  },
516
562
  {
517
- CELL_CLI_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_TYPE,
563
+ cell_cli_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_TYPE,
518
564
  value: JSON.stringify(event.operation),
519
565
  },
520
566
  {
521
- CELL_CLI_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_LINES,
567
+ cell_cli_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_LINES,
522
568
  value: JSON.stringify(event.lines),
523
569
  },
524
570
  {
525
- CELL_CLI_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_MIMETYPE,
571
+ cell_cli_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_MIMETYPE,
526
572
  value: JSON.stringify(event.mimetype),
527
573
  },
528
574
  {
529
- CELL_CLI_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_EXTENSION,
575
+ cell_cli_key: EventMetadataKey.CELL_CLI_FILE_OPERATION_EXTENSION,
530
576
  value: JSON.stringify(event.extension),
531
577
  },
532
578
  ];
533
579
  if (event.programming_language) {
534
580
  data.push({
535
- CELL_CLI_key: EventMetadataKey.CELL_CLI_PROGRAMMING_LANGUAGE,
581
+ cell_cli_key: EventMetadataKey.CELL_CLI_PROGRAMMING_LANGUAGE,
536
582
  value: event.programming_language,
537
583
  });
538
584
  }
@@ -543,7 +589,7 @@ export class ClearcutLogger {
543
589
  logApiRequestEvent(event) {
544
590
  const data = [
545
591
  {
546
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_REQUEST_MODEL,
592
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_REQUEST_MODEL,
547
593
  value: JSON.stringify(event.model),
548
594
  },
549
595
  ];
@@ -553,35 +599,35 @@ export class ClearcutLogger {
553
599
  logApiResponseEvent(event) {
554
600
  const data = [
555
601
  {
556
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_MODEL,
602
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_MODEL,
557
603
  value: JSON.stringify(event.model),
558
604
  },
559
605
  {
560
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_STATUS_CODE,
606
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_STATUS_CODE,
561
607
  value: JSON.stringify(event.status_code),
562
608
  },
563
609
  {
564
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_DURATION_MS,
610
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_DURATION_MS,
565
611
  value: JSON.stringify(event.duration_ms),
566
612
  },
567
613
  {
568
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_INPUT_TOKEN_COUNT,
614
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_INPUT_TOKEN_COUNT,
569
615
  value: JSON.stringify(event.usage.input_token_count),
570
616
  },
571
617
  {
572
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_OUTPUT_TOKEN_COUNT,
618
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_OUTPUT_TOKEN_COUNT,
573
619
  value: JSON.stringify(event.usage.output_token_count),
574
620
  },
575
621
  {
576
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_CACHED_TOKEN_COUNT,
622
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_CACHED_TOKEN_COUNT,
577
623
  value: JSON.stringify(event.usage.cached_content_token_count),
578
624
  },
579
625
  {
580
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_THINKING_TOKEN_COUNT,
626
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_THINKING_TOKEN_COUNT,
581
627
  value: JSON.stringify(event.usage.thoughts_token_count),
582
628
  },
583
629
  {
584
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_RESPONSE_TOOL_TOKEN_COUNT,
630
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_RESPONSE_TOOL_TOKEN_COUNT,
585
631
  value: JSON.stringify(event.usage.tool_token_count),
586
632
  },
587
633
  ];
@@ -591,19 +637,19 @@ export class ClearcutLogger {
591
637
  logApiErrorEvent(event) {
592
638
  const data = [
593
639
  {
594
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_ERROR_MODEL,
640
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_ERROR_MODEL,
595
641
  value: JSON.stringify(event.model),
596
642
  },
597
643
  {
598
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_ERROR_TYPE,
644
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_ERROR_TYPE,
599
645
  value: JSON.stringify(event.error_type),
600
646
  },
601
647
  {
602
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_ERROR_STATUS_CODE,
648
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_ERROR_STATUS_CODE,
603
649
  value: JSON.stringify(event.status_code),
604
650
  },
605
651
  {
606
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_ERROR_DURATION_MS,
652
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_ERROR_DURATION_MS,
607
653
  value: JSON.stringify(event.duration_ms),
608
654
  },
609
655
  ];
@@ -613,11 +659,11 @@ export class ClearcutLogger {
613
659
  logChatCompressionEvent(event) {
614
660
  const data = [
615
661
  {
616
- CELL_CLI_key: EventMetadataKey.CELL_CLI_COMPRESSION_TOKENS_BEFORE,
662
+ cell_cli_key: EventMetadataKey.CELL_CLI_COMPRESSION_TOKENS_BEFORE,
617
663
  value: `${event.tokens_before}`,
618
664
  },
619
665
  {
620
- CELL_CLI_key: EventMetadataKey.CELL_CLI_COMPRESSION_TOKENS_AFTER,
666
+ cell_cli_key: EventMetadataKey.CELL_CLI_COMPRESSION_TOKENS_AFTER,
621
667
  value: `${event.tokens_after}`,
622
668
  },
623
669
  ];
@@ -638,13 +684,13 @@ export class ClearcutLogger {
638
684
  logLoopDetectedEvent(event) {
639
685
  const data = [
640
686
  {
641
- CELL_CLI_key: EventMetadataKey.CELL_CLI_LOOP_DETECTED_TYPE,
687
+ cell_cli_key: EventMetadataKey.CELL_CLI_LOOP_DETECTED_TYPE,
642
688
  value: JSON.stringify(event.loop_type),
643
689
  },
644
690
  ];
645
691
  if (event.confirmed_by_model) {
646
692
  data.push({
647
- CELL_CLI_key: EventMetadataKey.CELL_CLI_LOOP_DETECTED_CONFIRMED_BY_MODEL,
693
+ cell_cli_key: EventMetadataKey.CELL_CLI_LOOP_DETECTED_CONFIRMED_BY_MODEL,
648
694
  value: event.confirmed_by_model,
649
695
  });
650
696
  }
@@ -659,11 +705,11 @@ export class ClearcutLogger {
659
705
  logNextSpeakerCheck(event) {
660
706
  const data = [
661
707
  {
662
- CELL_CLI_key: EventMetadataKey.CELL_CLI_RESPONSE_FINISH_REASON,
708
+ cell_cli_key: EventMetadataKey.CELL_CLI_RESPONSE_FINISH_REASON,
663
709
  value: JSON.stringify(event.finish_reason),
664
710
  },
665
711
  {
666
- CELL_CLI_key: EventMetadataKey.CELL_CLI_NEXT_SPEAKER_CHECK_RESULT,
712
+ cell_cli_key: EventMetadataKey.CELL_CLI_NEXT_SPEAKER_CHECK_RESULT,
667
713
  value: JSON.stringify(event.result),
668
714
  },
669
715
  ];
@@ -673,25 +719,25 @@ export class ClearcutLogger {
673
719
  logSlashCommandEvent(event) {
674
720
  const data = [
675
721
  {
676
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SLASH_COMMAND_NAME,
722
+ cell_cli_key: EventMetadataKey.CELL_CLI_SLASH_COMMAND_NAME,
677
723
  value: JSON.stringify(event.command),
678
724
  },
679
725
  ];
680
726
  if (event.subcommand) {
681
727
  data.push({
682
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SLASH_COMMAND_SUBCOMMAND,
728
+ cell_cli_key: EventMetadataKey.CELL_CLI_SLASH_COMMAND_SUBCOMMAND,
683
729
  value: JSON.stringify(event.subcommand),
684
730
  });
685
731
  }
686
732
  if (event.status) {
687
733
  data.push({
688
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SLASH_COMMAND_STATUS,
734
+ cell_cli_key: EventMetadataKey.CELL_CLI_SLASH_COMMAND_STATUS,
689
735
  value: JSON.stringify(event.status),
690
736
  });
691
737
  }
692
738
  if (event.extension_id) {
693
739
  data.push({
694
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
740
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
695
741
  value: event.extension_id,
696
742
  });
697
743
  }
@@ -701,7 +747,7 @@ export class ClearcutLogger {
701
747
  logMalformedJsonResponseEvent(event) {
702
748
  const data = [
703
749
  {
704
- CELL_CLI_key: EventMetadataKey.CELL_CLI_MALFORMED_JSON_RESPONSE_MODEL,
750
+ cell_cli_key: EventMetadataKey.CELL_CLI_MALFORMED_JSON_RESPONSE_MODEL,
705
751
  value: JSON.stringify(event.model),
706
752
  },
707
753
  ];
@@ -711,7 +757,7 @@ export class ClearcutLogger {
711
757
  logIdeConnectionEvent(event) {
712
758
  const data = [
713
759
  {
714
- CELL_CLI_key: EventMetadataKey.CELL_CLI_IDE_CONNECTION_TYPE,
760
+ cell_cli_key: EventMetadataKey.CELL_CLI_IDE_CONNECTION_TYPE,
715
761
  value: JSON.stringify(event.connection_type),
716
762
  },
717
763
  ];
@@ -726,15 +772,15 @@ export class ClearcutLogger {
726
772
  logConversationFinishedEvent(event) {
727
773
  const data = [
728
774
  {
729
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SESSION_ID,
775
+ cell_cli_key: EventMetadataKey.CELL_CLI_SESSION_ID,
730
776
  value: this.config?.getSessionId() ?? '',
731
777
  },
732
778
  {
733
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONVERSATION_TURN_COUNT,
779
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONVERSATION_TURN_COUNT,
734
780
  value: JSON.stringify(event.turnCount),
735
781
  },
736
782
  {
737
- CELL_CLI_key: EventMetadataKey.CELL_CLI_APPROVAL_MODE,
783
+ cell_cli_key: EventMetadataKey.CELL_CLI_APPROVAL_MODE,
738
784
  value: event.approvalMode,
739
785
  },
740
786
  ];
@@ -752,7 +798,7 @@ export class ClearcutLogger {
752
798
  const data = [];
753
799
  if (event.error_message) {
754
800
  data.push({
755
- CELL_CLI_key: EventMetadataKey.CELL_CLI_INVALID_CHUNK_ERROR_MESSAGE,
801
+ cell_cli_key: EventMetadataKey.CELL_CLI_INVALID_CHUNK_ERROR_MESSAGE,
756
802
  value: event.error_message,
757
803
  });
758
804
  }
@@ -762,19 +808,19 @@ export class ClearcutLogger {
762
808
  logContentRetryEvent(event) {
763
809
  const data = [
764
810
  {
765
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_ATTEMPT_NUMBER,
811
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_ATTEMPT_NUMBER,
766
812
  value: String(event.attempt_number),
767
813
  },
768
814
  {
769
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_ERROR_TYPE,
815
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_ERROR_TYPE,
770
816
  value: event.error_type,
771
817
  },
772
818
  {
773
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_DELAY_MS,
819
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_DELAY_MS,
774
820
  value: String(event.retry_delay_ms),
775
821
  },
776
822
  {
777
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_REQUEST_MODEL,
823
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_REQUEST_MODEL,
778
824
  value: event.model,
779
825
  },
780
826
  ];
@@ -784,21 +830,21 @@ export class ClearcutLogger {
784
830
  logContentRetryFailureEvent(event) {
785
831
  const data = [
786
832
  {
787
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_FAILURE_TOTAL_ATTEMPTS,
833
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_FAILURE_TOTAL_ATTEMPTS,
788
834
  value: String(event.total_attempts),
789
835
  },
790
836
  {
791
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_FAILURE_FINAL_ERROR_TYPE,
837
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_FAILURE_FINAL_ERROR_TYPE,
792
838
  value: event.final_error_type,
793
839
  },
794
840
  {
795
- CELL_CLI_key: EventMetadataKey.CELL_CLI_API_REQUEST_MODEL,
841
+ cell_cli_key: EventMetadataKey.CELL_CLI_API_REQUEST_MODEL,
796
842
  value: event.model,
797
843
  },
798
844
  ];
799
845
  if (event.total_duration_ms) {
800
846
  data.push({
801
- CELL_CLI_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_FAILURE_TOTAL_DURATION_MS,
847
+ cell_cli_key: EventMetadataKey.CELL_CLI_CONTENT_RETRY_FAILURE_TOTAL_DURATION_MS,
802
848
  value: String(event.total_duration_ms),
803
849
  });
804
850
  }
@@ -808,23 +854,23 @@ export class ClearcutLogger {
808
854
  async logExtensionInstallEvent(event) {
809
855
  const data = [
810
856
  {
811
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
857
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
812
858
  value: event.hashed_extension_name,
813
859
  },
814
860
  {
815
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
861
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
816
862
  value: event.extension_id,
817
863
  },
818
864
  {
819
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_VERSION,
865
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_VERSION,
820
866
  value: event.extension_version,
821
867
  },
822
868
  {
823
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_SOURCE,
869
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_SOURCE,
824
870
  value: event.extension_source,
825
871
  },
826
872
  {
827
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_INSTALL_STATUS,
873
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_INSTALL_STATUS,
828
874
  value: event.status,
829
875
  },
830
876
  ];
@@ -836,15 +882,15 @@ export class ClearcutLogger {
836
882
  async logExtensionUninstallEvent(event) {
837
883
  const data = [
838
884
  {
839
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
885
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
840
886
  value: event.hashed_extension_name,
841
887
  },
842
888
  {
843
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
889
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
844
890
  value: event.extension_id,
845
891
  },
846
892
  {
847
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_UNINSTALL_STATUS,
893
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_UNINSTALL_STATUS,
848
894
  value: event.status,
849
895
  },
850
896
  ];
@@ -856,27 +902,27 @@ export class ClearcutLogger {
856
902
  async logExtensionUpdateEvent(event) {
857
903
  const data = [
858
904
  {
859
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
905
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
860
906
  value: event.hashed_extension_name,
861
907
  },
862
908
  {
863
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
909
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
864
910
  value: event.extension_id,
865
911
  },
866
912
  {
867
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_VERSION,
913
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_VERSION,
868
914
  value: event.extension_version,
869
915
  },
870
916
  {
871
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_PREVIOUS_VERSION,
917
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_PREVIOUS_VERSION,
872
918
  value: event.extension_previous_version,
873
919
  },
874
920
  {
875
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_SOURCE,
921
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_SOURCE,
876
922
  value: event.extension_source,
877
923
  },
878
924
  {
879
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_UPDATE_STATUS,
925
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_UPDATE_STATUS,
880
926
  value: event.status,
881
927
  },
882
928
  ];
@@ -888,23 +934,23 @@ export class ClearcutLogger {
888
934
  logToolOutputTruncatedEvent(event) {
889
935
  const data = [
890
936
  {
891
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_CALL_NAME,
937
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_CALL_NAME,
892
938
  value: JSON.stringify(event.tool_name),
893
939
  },
894
940
  {
895
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_ORIGINAL_LENGTH,
941
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_ORIGINAL_LENGTH,
896
942
  value: JSON.stringify(event.original_content_length),
897
943
  },
898
944
  {
899
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_TRUNCATED_LENGTH,
945
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_TRUNCATED_LENGTH,
900
946
  value: JSON.stringify(event.truncated_content_length),
901
947
  },
902
948
  {
903
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_THRESHOLD,
949
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_THRESHOLD,
904
950
  value: JSON.stringify(event.threshold),
905
951
  },
906
952
  {
907
- CELL_CLI_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_LINES,
953
+ cell_cli_key: EventMetadataKey.CELL_CLI_TOOL_OUTPUT_TRUNCATED_LINES,
908
954
  value: JSON.stringify(event.lines),
909
955
  },
910
956
  ];
@@ -914,25 +960,25 @@ export class ClearcutLogger {
914
960
  logModelRoutingEvent(event) {
915
961
  const data = [
916
962
  {
917
- CELL_CLI_key: EventMetadataKey.CELL_CLI_ROUTING_DECISION,
963
+ cell_cli_key: EventMetadataKey.CELL_CLI_ROUTING_DECISION,
918
964
  value: event.decision_model,
919
965
  },
920
966
  {
921
- CELL_CLI_key: EventMetadataKey.CELL_CLI_ROUTING_DECISION_SOURCE,
967
+ cell_cli_key: EventMetadataKey.CELL_CLI_ROUTING_DECISION_SOURCE,
922
968
  value: event.decision_source,
923
969
  },
924
970
  {
925
- CELL_CLI_key: EventMetadataKey.CELL_CLI_ROUTING_LATENCY_MS,
971
+ cell_cli_key: EventMetadataKey.CELL_CLI_ROUTING_LATENCY_MS,
926
972
  value: event.routing_latency_ms.toString(),
927
973
  },
928
974
  {
929
- CELL_CLI_key: EventMetadataKey.CELL_CLI_ROUTING_FAILURE,
975
+ cell_cli_key: EventMetadataKey.CELL_CLI_ROUTING_FAILURE,
930
976
  value: event.failed.toString(),
931
977
  },
932
978
  ];
933
979
  if (event.error_message) {
934
980
  data.push({
935
- CELL_CLI_key: EventMetadataKey.CELL_CLI_ROUTING_FAILURE_REASON,
981
+ cell_cli_key: EventMetadataKey.CELL_CLI_ROUTING_FAILURE_REASON,
936
982
  value: event.error_message,
937
983
  });
938
984
  }
@@ -942,15 +988,15 @@ export class ClearcutLogger {
942
988
  async logExtensionEnableEvent(event) {
943
989
  const data = [
944
990
  {
945
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
991
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
946
992
  value: event.hashed_extension_name,
947
993
  },
948
994
  {
949
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
995
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
950
996
  value: event.extension_id,
951
997
  },
952
998
  {
953
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ENABLE_SETTING_SCOPE,
999
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ENABLE_SETTING_SCOPE,
954
1000
  value: event.setting_scope,
955
1001
  },
956
1002
  ];
@@ -962,7 +1008,7 @@ export class ClearcutLogger {
962
1008
  logModelSlashCommandEvent(event) {
963
1009
  const data = [
964
1010
  {
965
- CELL_CLI_key: EventMetadataKey.CELL_CLI_MODEL_SLASH_COMMAND,
1011
+ cell_cli_key: EventMetadataKey.CELL_CLI_MODEL_SLASH_COMMAND,
966
1012
  value: event.model_name,
967
1013
  },
968
1014
  ];
@@ -972,15 +1018,15 @@ export class ClearcutLogger {
972
1018
  async logExtensionDisableEvent(event) {
973
1019
  const data = [
974
1020
  {
975
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
1021
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_NAME,
976
1022
  value: event.hashed_extension_name,
977
1023
  },
978
1024
  {
979
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
1025
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_ID,
980
1026
  value: event.extension_id,
981
1027
  },
982
1028
  {
983
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXTENSION_DISABLE_SETTING_SCOPE,
1029
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXTENSION_DISABLE_SETTING_SCOPE,
984
1030
  value: event.setting_scope,
985
1031
  },
986
1032
  ];
@@ -989,34 +1035,34 @@ export class ClearcutLogger {
989
1035
  debugLogger.debug('Error flushing to Clearcut:', error);
990
1036
  });
991
1037
  }
992
- logSmartEditStrategyEvent(event) {
1038
+ logEditStrategyEvent(event) {
993
1039
  const data = [
994
1040
  {
995
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SMART_EDIT_STRATEGY,
1041
+ cell_cli_key: EventMetadataKey.CELL_CLI_EDIT_STRATEGY,
996
1042
  value: event.strategy,
997
1043
  },
998
1044
  ];
999
- this.enqueueLogEvent(this.createLogEvent(EventNames.SMART_EDIT_STRATEGY, data));
1045
+ this.enqueueLogEvent(this.createLogEvent(EventNames.EDIT_STRATEGY, data));
1000
1046
  this.flushIfNeeded();
1001
1047
  }
1002
- logSmartEditCorrectionEvent(event) {
1048
+ logEditCorrectionEvent(event) {
1003
1049
  const data = [
1004
1050
  {
1005
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SMART_EDIT_CORRECTION,
1051
+ cell_cli_key: EventMetadataKey.CELL_CLI_EDIT_CORRECTION,
1006
1052
  value: event.correction,
1007
1053
  },
1008
1054
  ];
1009
- this.enqueueLogEvent(this.createLogEvent(EventNames.SMART_EDIT_CORRECTION, data));
1055
+ this.enqueueLogEvent(this.createLogEvent(EventNames.EDIT_CORRECTION, data));
1010
1056
  this.flushIfNeeded();
1011
1057
  }
1012
1058
  logAgentStartEvent(event) {
1013
1059
  const data = [
1014
1060
  {
1015
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_ID,
1061
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_ID,
1016
1062
  value: event.agent_id,
1017
1063
  },
1018
1064
  {
1019
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_NAME,
1065
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_NAME,
1020
1066
  value: event.agent_name,
1021
1067
  },
1022
1068
  ];
@@ -1026,23 +1072,23 @@ export class ClearcutLogger {
1026
1072
  logAgentFinishEvent(event) {
1027
1073
  const data = [
1028
1074
  {
1029
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_ID,
1075
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_ID,
1030
1076
  value: event.agent_id,
1031
1077
  },
1032
1078
  {
1033
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_NAME,
1079
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_NAME,
1034
1080
  value: event.agent_name,
1035
1081
  },
1036
1082
  {
1037
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_DURATION_MS,
1083
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_DURATION_MS,
1038
1084
  value: event.duration_ms.toString(),
1039
1085
  },
1040
1086
  {
1041
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_TURN_COUNT,
1087
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_TURN_COUNT,
1042
1088
  value: event.turn_count.toString(),
1043
1089
  },
1044
1090
  {
1045
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_TERMINATE_REASON,
1091
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_TERMINATE_REASON,
1046
1092
  value: event.terminate_reason,
1047
1093
  },
1048
1094
  ];
@@ -1052,27 +1098,27 @@ export class ClearcutLogger {
1052
1098
  logRecoveryAttemptEvent(event) {
1053
1099
  const data = [
1054
1100
  {
1055
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_ID,
1101
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_ID,
1056
1102
  value: event.agent_id,
1057
1103
  },
1058
1104
  {
1059
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_NAME,
1105
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_NAME,
1060
1106
  value: event.agent_name,
1061
1107
  },
1062
1108
  {
1063
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_RECOVERY_REASON,
1109
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_RECOVERY_REASON,
1064
1110
  value: event.reason,
1065
1111
  },
1066
1112
  {
1067
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_RECOVERY_DURATION_MS,
1113
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_RECOVERY_DURATION_MS,
1068
1114
  value: event.duration_ms.toString(),
1069
1115
  },
1070
1116
  {
1071
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_RECOVERY_SUCCESS,
1117
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_RECOVERY_SUCCESS,
1072
1118
  value: event.success.toString(),
1073
1119
  },
1074
1120
  {
1075
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AGENT_TURN_COUNT,
1121
+ cell_cli_key: EventMetadataKey.CELL_CLI_AGENT_TURN_COUNT,
1076
1122
  value: event.turn_count.toString(),
1077
1123
  },
1078
1124
  ];
@@ -1082,7 +1128,7 @@ export class ClearcutLogger {
1082
1128
  logWebFetchFallbackAttemptEvent(event) {
1083
1129
  const data = [
1084
1130
  {
1085
- CELL_CLI_key: EventMetadataKey.CELL_CLI_WEB_FETCH_FALLBACK_REASON,
1131
+ cell_cli_key: EventMetadataKey.CELL_CLI_WEB_FETCH_FALLBACK_REASON,
1086
1132
  value: event.reason,
1087
1133
  },
1088
1134
  ];
@@ -1092,25 +1138,49 @@ export class ClearcutLogger {
1092
1138
  logLlmLoopCheckEvent(event) {
1093
1139
  const data = [
1094
1140
  {
1095
- CELL_CLI_key: EventMetadataKey.CELL_CLI_PROMPT_ID,
1141
+ cell_cli_key: EventMetadataKey.CELL_CLI_PROMPT_ID,
1096
1142
  value: event.prompt_id,
1097
1143
  },
1098
1144
  {
1099
- CELL_CLI_key: EventMetadataKey.CELL_CLI_LLM_LOOP_CHECK_FLASH_CONFIDENCE,
1145
+ cell_cli_key: EventMetadataKey.CELL_CLI_LLM_LOOP_CHECK_FLASH_CONFIDENCE,
1100
1146
  value: event.flash_confidence.toString(),
1101
1147
  },
1102
1148
  {
1103
- CELL_CLI_key: EventMetadataKey.CELL_CLI_LLM_LOOP_CHECK_MAIN_MODEL,
1149
+ cell_cli_key: EventMetadataKey.CELL_CLI_LLM_LOOP_CHECK_MAIN_MODEL,
1104
1150
  value: event.main_model,
1105
1151
  },
1106
1152
  {
1107
- CELL_CLI_key: EventMetadataKey.CELL_CLI_LLM_LOOP_CHECK_MAIN_MODEL_CONFIDENCE,
1153
+ cell_cli_key: EventMetadataKey.CELL_CLI_LLM_LOOP_CHECK_MAIN_MODEL_CONFIDENCE,
1108
1154
  value: event.main_model_confidence.toString(),
1109
1155
  },
1110
1156
  ];
1111
1157
  this.enqueueLogEvent(this.createLogEvent(EventNames.LLM_LOOP_CHECK, data));
1112
1158
  this.flushIfNeeded();
1113
1159
  }
1160
+ logHookCallEvent(event) {
1161
+ const data = [
1162
+ {
1163
+ cell_cli_key: EventMetadataKey.CELL_CLI_HOOK_EVENT_NAME,
1164
+ value: event.hook_event_name,
1165
+ },
1166
+ {
1167
+ cell_cli_key: EventMetadataKey.CELL_CLI_HOOK_DURATION_MS,
1168
+ value: event.duration_ms.toString(),
1169
+ },
1170
+ {
1171
+ cell_cli_key: EventMetadataKey.CELL_CLI_HOOK_SUCCESS,
1172
+ value: event.success.toString(),
1173
+ },
1174
+ ];
1175
+ if (event.exit_code !== undefined) {
1176
+ data.push({
1177
+ cell_cli_key: EventMetadataKey.CELL_CLI_HOOK_EXIT_CODE,
1178
+ value: event.exit_code.toString(),
1179
+ });
1180
+ }
1181
+ this.enqueueLogEvent(this.createLogEvent(EventNames.HOOK_CALL, data));
1182
+ this.flushIfNeeded();
1183
+ }
1114
1184
  /**
1115
1185
  * Adds default fields to data, and returns a new data array. This fields
1116
1186
  * should exist on all log events.
@@ -1118,37 +1188,37 @@ export class ClearcutLogger {
1118
1188
  addDefaultFields(data, totalAccounts) {
1119
1189
  const defaultLogMetadata = [
1120
1190
  {
1121
- CELL_CLI_key: EventMetadataKey.CELL_CLI_SESSION_ID,
1191
+ cell_cli_key: EventMetadataKey.CELL_CLI_SESSION_ID,
1122
1192
  value: this.config?.getSessionId() ?? '',
1123
1193
  },
1124
1194
  {
1125
- CELL_CLI_key: EventMetadataKey.CELL_CLI_AUTH_TYPE,
1195
+ cell_cli_key: EventMetadataKey.CELL_CLI_AUTH_TYPE,
1126
1196
  value: JSON.stringify(this.config?.getContentGeneratorConfig()?.authType),
1127
1197
  },
1128
1198
  {
1129
- CELL_CLI_key: EventMetadataKey.CELL_CLI_GOOGLE_ACCOUNTS_COUNT,
1199
+ cell_cli_key: EventMetadataKey.CELL_CLI_GOOGLE_ACCOUNTS_COUNT,
1130
1200
  value: `${totalAccounts}`,
1131
1201
  },
1132
1202
  {
1133
- CELL_CLI_key: EventMetadataKey.CELL_CLI_PROMPT_ID,
1203
+ cell_cli_key: EventMetadataKey.CELL_CLI_PROMPT_ID,
1134
1204
  value: this.promptId,
1135
1205
  },
1136
1206
  {
1137
- CELL_CLI_key: EventMetadataKey.CELL_CLI_NODE_VERSION,
1207
+ cell_cli_key: EventMetadataKey.CELL_CLI_NODE_VERSION,
1138
1208
  value: process.versions.node,
1139
1209
  },
1140
1210
  {
1141
- CELL_CLI_key: EventMetadataKey.CELL_CLI_USER_SETTINGS,
1211
+ cell_cli_key: EventMetadataKey.CELL_CLI_USER_SETTINGS,
1142
1212
  value: this.getConfigJson(),
1143
1213
  },
1144
1214
  {
1145
- CELL_CLI_key: EventMetadataKey.CELL_CLI_INTERACTIVE,
1215
+ cell_cli_key: EventMetadataKey.CELL_CLI_INTERACTIVE,
1146
1216
  value: this.config?.isInteractive().toString() ?? 'false',
1147
1217
  },
1148
1218
  ];
1149
1219
  if (this.config?.getExperiments()) {
1150
1220
  defaultLogMetadata.push({
1151
- CELL_CLI_key: EventMetadataKey.CELL_CLI_EXPERIMENT_IDS,
1221
+ cell_cli_key: EventMetadataKey.CELL_CLI_EXPERIMENT_IDS,
1152
1222
  value: this.config?.getExperiments()?.experimentIds.toString() ?? 'NA',
1153
1223
  });
1154
1224
  }
@@ -1208,5 +1278,9 @@ export class ClearcutLogger {
1208
1278
  export const TEST_ONLY = {
1209
1279
  MAX_RETRY_EVENTS,
1210
1280
  MAX_EVENTS,
1281
+ refreshGpuInfo,
1282
+ resetCachedGpuInfoForTesting: () => {
1283
+ cachedGpuInfo = undefined;
1284
+ },
1211
1285
  };
1212
1286
  //# sourceMappingURL=clearcut-logger.js.map