@office-ai/aioncli-core 0.1.21 → 0.2.2

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 (349) hide show
  1. package/dist/index.d.ts +3 -0
  2. package/dist/index.js +3 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/src/code_assist/converter.d.ts +3 -2
  5. package/dist/src/code_assist/converter.js +1 -0
  6. package/dist/src/code_assist/converter.js.map +1 -1
  7. package/dist/src/code_assist/oauth2.d.ts +2 -0
  8. package/dist/src/code_assist/oauth2.js +47 -25
  9. package/dist/src/code_assist/oauth2.js.map +1 -1
  10. package/dist/src/code_assist/oauth2.test.js +99 -8
  11. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  12. package/dist/src/code_assist/server.js +1 -1
  13. package/dist/src/code_assist/server.js.map +1 -1
  14. package/dist/src/code_assist/setup.js +48 -17
  15. package/dist/src/code_assist/setup.js.map +1 -1
  16. package/dist/src/code_assist/setup.test.js +114 -8
  17. package/dist/src/code_assist/setup.test.js.map +1 -1
  18. package/dist/src/config/config.d.ts +27 -8
  19. package/dist/src/config/config.js +54 -25
  20. package/dist/src/config/config.js.map +1 -1
  21. package/dist/src/config/config.test.js +109 -1
  22. package/dist/src/config/config.test.js.map +1 -1
  23. package/dist/src/core/client.d.ts +13 -15
  24. package/dist/src/core/client.js +215 -54
  25. package/dist/src/core/client.js.map +1 -1
  26. package/dist/src/core/client.test.js +631 -36
  27. package/dist/src/core/client.test.js.map +1 -1
  28. package/dist/src/core/contentGenerator.js +20 -12
  29. package/dist/src/core/contentGenerator.js.map +1 -1
  30. package/dist/src/core/contentGenerator.test.js +39 -15
  31. package/dist/src/core/contentGenerator.test.js.map +1 -1
  32. package/dist/src/core/coreToolScheduler.d.ts +2 -1
  33. package/dist/src/core/coreToolScheduler.js +26 -4
  34. package/dist/src/core/coreToolScheduler.js.map +1 -1
  35. package/dist/src/core/coreToolScheduler.test.js +230 -71
  36. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  37. package/dist/src/core/geminiChat.js +1 -1
  38. package/dist/src/core/geminiChat.js.map +1 -1
  39. package/dist/src/core/logger.d.ts +22 -1
  40. package/dist/src/core/logger.js +103 -17
  41. package/dist/src/core/logger.js.map +1 -1
  42. package/dist/src/core/logger.test.js +86 -20
  43. package/dist/src/core/logger.test.js.map +1 -1
  44. package/dist/src/core/loggingContentGenerator.d.ts +1 -0
  45. package/dist/src/core/loggingContentGenerator.js +7 -1
  46. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  47. package/dist/src/core/nonInteractiveToolExecutor.d.ts +2 -2
  48. package/dist/src/core/nonInteractiveToolExecutor.js +11 -3
  49. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  50. package/dist/src/core/nonInteractiveToolExecutor.test.js +95 -46
  51. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +1 -1
  52. package/dist/src/core/openaiContentGenerator.js +71 -25
  53. package/dist/src/core/openaiContentGenerator.js.map +1 -1
  54. package/dist/src/core/openaiContentGenerator.test.js +1 -1
  55. package/dist/src/core/openaiContentGenerator.test.js.map +1 -1
  56. package/dist/src/core/prompts.js +4 -4
  57. package/dist/src/core/prompts.js.map +1 -1
  58. package/dist/src/core/subagent.js +5 -5
  59. package/dist/src/core/subagent.js.map +1 -1
  60. package/dist/src/core/subagent.test.js +3 -3
  61. package/dist/src/core/subagent.test.js.map +1 -1
  62. package/dist/src/generated/git-commit.d.ts +7 -0
  63. package/dist/src/generated/git-commit.js +10 -0
  64. package/dist/src/generated/git-commit.js.map +1 -0
  65. package/dist/src/ide/constants.d.ts +6 -0
  66. package/dist/src/ide/constants.js +7 -0
  67. package/dist/src/ide/constants.js.map +1 -0
  68. package/dist/src/ide/detect-ide.d.ts +12 -2
  69. package/dist/src/ide/detect-ide.js +64 -5
  70. package/dist/src/ide/detect-ide.js.map +1 -1
  71. package/dist/src/ide/detect-ide.test.d.ts +6 -0
  72. package/dist/src/ide/detect-ide.test.js +65 -0
  73. package/dist/src/ide/detect-ide.test.js.map +1 -0
  74. package/dist/src/ide/ide-client.d.ts +9 -1
  75. package/dist/src/ide/ide-client.js +113 -30
  76. package/dist/src/ide/ide-client.js.map +1 -1
  77. package/dist/src/ide/ide-client.test.d.ts +6 -0
  78. package/dist/src/ide/ide-client.test.js +43 -0
  79. package/dist/src/ide/ide-client.test.js.map +1 -0
  80. package/dist/src/ide/ide-installer.js +23 -34
  81. package/dist/src/ide/ide-installer.js.map +1 -1
  82. package/dist/src/ide/ide-installer.test.js +6 -8
  83. package/dist/src/ide/ide-installer.test.js.map +1 -1
  84. package/dist/src/ide/ideContext.d.ts +6 -6
  85. package/dist/src/ide/process-utils.d.ts +19 -0
  86. package/dist/src/ide/process-utils.js +140 -0
  87. package/dist/src/ide/process-utils.js.map +1 -0
  88. package/dist/src/index.d.ts +6 -1
  89. package/dist/src/index.js +6 -1
  90. package/dist/src/index.js.map +1 -1
  91. package/dist/src/mcp/google-auth-provider.js +9 -0
  92. package/dist/src/mcp/google-auth-provider.js.map +1 -1
  93. package/dist/src/mcp/google-auth-provider.test.js +45 -10
  94. package/dist/src/mcp/google-auth-provider.test.js.map +1 -1
  95. package/dist/src/mcp/oauth-provider.d.ts +0 -1
  96. package/dist/src/mcp/oauth-provider.js +176 -59
  97. package/dist/src/mcp/oauth-provider.js.map +1 -1
  98. package/dist/src/mcp/oauth-provider.test.js +132 -62
  99. package/dist/src/mcp/oauth-provider.test.js.map +1 -1
  100. package/dist/src/mcp/oauth-utils.d.ts +3 -1
  101. package/dist/src/mcp/oauth-utils.js +50 -12
  102. package/dist/src/mcp/oauth-utils.js.map +1 -1
  103. package/dist/src/mcp/oauth-utils.test.js +17 -2
  104. package/dist/src/mcp/oauth-utils.test.js.map +1 -1
  105. package/dist/src/mocks/msw.d.ts +6 -0
  106. package/dist/src/mocks/msw.js +8 -0
  107. package/dist/src/mocks/msw.js.map +1 -0
  108. package/dist/src/services/chatRecordingService.d.ts +150 -0
  109. package/dist/src/services/chatRecordingService.js +318 -0
  110. package/dist/src/services/chatRecordingService.js.map +1 -0
  111. package/dist/src/services/chatRecordingService.test.d.ts +6 -0
  112. package/dist/src/services/chatRecordingService.test.js +288 -0
  113. package/dist/src/services/chatRecordingService.test.js.map +1 -0
  114. package/dist/src/services/fileSystemService.d.ts +31 -0
  115. package/dist/src/services/fileSystemService.js +18 -0
  116. package/dist/src/services/fileSystemService.js.map +1 -0
  117. package/dist/src/services/fileSystemService.test.d.ts +6 -0
  118. package/dist/src/services/fileSystemService.test.js +41 -0
  119. package/dist/src/services/fileSystemService.test.js.map +1 -0
  120. package/dist/src/services/loopDetectionService.js +9 -10
  121. package/dist/src/services/loopDetectionService.js.map +1 -1
  122. package/dist/src/services/loopDetectionService.test.js +52 -0
  123. package/dist/src/services/loopDetectionService.test.js.map +1 -1
  124. package/dist/src/services/shellExecutionService.d.ts +8 -10
  125. package/dist/src/services/shellExecutionService.js +289 -133
  126. package/dist/src/services/shellExecutionService.js.map +1 -1
  127. package/dist/src/services/shellExecutionService.test.js +274 -30
  128. package/dist/src/services/shellExecutionService.test.js.map +1 -1
  129. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +61 -17
  130. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +211 -233
  131. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  132. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +11 -0
  133. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +250 -94
  134. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +1 -1
  135. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +9 -2
  136. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +19 -9
  137. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  138. package/dist/src/telemetry/constants.d.ts +1 -0
  139. package/dist/src/telemetry/constants.js +1 -0
  140. package/dist/src/telemetry/constants.js.map +1 -1
  141. package/dist/src/telemetry/index.d.ts +2 -2
  142. package/dist/src/telemetry/index.js +2 -2
  143. package/dist/src/telemetry/index.js.map +1 -1
  144. package/dist/src/telemetry/integration.test.circular.js +1 -0
  145. package/dist/src/telemetry/integration.test.circular.js.map +1 -1
  146. package/dist/src/telemetry/loggers.d.ts +3 -1
  147. package/dist/src/telemetry/loggers.js +39 -6
  148. package/dist/src/telemetry/loggers.js.map +1 -1
  149. package/dist/src/telemetry/loggers.test.js +37 -7
  150. package/dist/src/telemetry/loggers.test.js.map +1 -1
  151. package/dist/src/telemetry/metrics.d.ts +5 -1
  152. package/dist/src/telemetry/metrics.js +23 -9
  153. package/dist/src/telemetry/metrics.js.map +1 -1
  154. package/dist/src/telemetry/metrics.test.js +31 -1
  155. package/dist/src/telemetry/metrics.test.js.map +1 -1
  156. package/dist/src/telemetry/sdk.d.ts +1 -1
  157. package/dist/src/telemetry/sdk.js +80 -44
  158. package/dist/src/telemetry/sdk.js.map +1 -1
  159. package/dist/src/telemetry/sdk.test.d.ts +6 -0
  160. package/dist/src/telemetry/sdk.test.js +82 -0
  161. package/dist/src/telemetry/sdk.test.js.map +1 -0
  162. package/dist/src/telemetry/telemetry.test.js +2 -2
  163. package/dist/src/telemetry/telemetry.test.js.map +1 -1
  164. package/dist/src/telemetry/types.d.ts +41 -14
  165. package/dist/src/telemetry/types.js +52 -23
  166. package/dist/src/telemetry/types.js.map +1 -1
  167. package/dist/src/telemetry/uiTelemetry.d.ts +4 -0
  168. package/dist/src/telemetry/uiTelemetry.js +14 -1
  169. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  170. package/dist/src/telemetry/uiTelemetry.test.js +45 -9
  171. package/dist/src/telemetry/uiTelemetry.test.js.map +1 -1
  172. package/dist/src/test-utils/config.d.ts +16 -0
  173. package/dist/src/test-utils/config.js +32 -0
  174. package/dist/src/test-utils/config.js.map +1 -0
  175. package/dist/src/test-utils/tools.d.ts +29 -8
  176. package/dist/src/test-utils/tools.js +80 -16
  177. package/dist/src/test-utils/tools.js.map +1 -1
  178. package/dist/src/tools/edit.d.ts +1 -1
  179. package/dist/src/tools/edit.js +23 -19
  180. package/dist/src/tools/edit.js.map +1 -1
  181. package/dist/src/tools/edit.test.js +11 -3
  182. package/dist/src/tools/edit.test.js.map +1 -1
  183. package/dist/src/tools/glob.d.ts +1 -1
  184. package/dist/src/tools/glob.js +15 -16
  185. package/dist/src/tools/glob.js.map +1 -1
  186. package/dist/src/tools/glob.test.js +20 -0
  187. package/dist/src/tools/glob.test.js.map +1 -1
  188. package/dist/src/tools/grep.d.ts +1 -1
  189. package/dist/src/tools/grep.js +7 -13
  190. package/dist/src/tools/grep.js.map +1 -1
  191. package/dist/src/tools/ls.d.ts +4 -23
  192. package/dist/src/tools/ls.js +77 -79
  193. package/dist/src/tools/ls.js.map +1 -1
  194. package/dist/src/tools/ls.test.js +62 -34
  195. package/dist/src/tools/ls.test.js.map +1 -1
  196. package/dist/src/tools/mcp-client-manager.d.ts +38 -0
  197. package/dist/src/tools/mcp-client-manager.js +74 -0
  198. package/dist/src/tools/mcp-client-manager.js.map +1 -0
  199. package/dist/src/tools/mcp-client-manager.test.d.ts +6 -0
  200. package/dist/src/tools/mcp-client-manager.test.js +39 -0
  201. package/dist/src/tools/mcp-client-manager.test.js.map +1 -0
  202. package/dist/src/tools/mcp-client.d.ts +43 -0
  203. package/dist/src/tools/mcp-client.js +157 -11
  204. package/dist/src/tools/mcp-client.js.map +1 -1
  205. package/dist/src/tools/mcp-client.test.js +62 -276
  206. package/dist/src/tools/mcp-client.test.js.map +1 -1
  207. package/dist/src/tools/mcp-tool.d.ts +6 -13
  208. package/dist/src/tools/mcp-tool.js +62 -34
  209. package/dist/src/tools/mcp-tool.js.map +1 -1
  210. package/dist/src/tools/mcp-tool.test.js +118 -59
  211. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  212. package/dist/src/tools/memoryTool.d.ts +9 -13
  213. package/dist/src/tools/memoryTool.js +122 -121
  214. package/dist/src/tools/memoryTool.js.map +1 -1
  215. package/dist/src/tools/memoryTool.test.js +38 -18
  216. package/dist/src/tools/memoryTool.test.js.map +1 -1
  217. package/dist/src/tools/read-file.d.ts +1 -1
  218. package/dist/src/tools/read-file.js +11 -14
  219. package/dist/src/tools/read-file.js.map +1 -1
  220. package/dist/src/tools/read-file.test.js +8 -0
  221. package/dist/src/tools/read-file.test.js.map +1 -1
  222. package/dist/src/tools/read-many-files.d.ts +3 -5
  223. package/dist/src/tools/read-many-files.js +121 -105
  224. package/dist/src/tools/read-many-files.js.map +1 -1
  225. package/dist/src/tools/read-many-files.test.js +94 -37
  226. package/dist/src/tools/read-many-files.test.js.map +1 -1
  227. package/dist/src/tools/shell.d.ts +4 -6
  228. package/dist/src/tools/shell.js +120 -124
  229. package/dist/src/tools/shell.js.map +1 -1
  230. package/dist/src/tools/shell.test.js +63 -65
  231. package/dist/src/tools/shell.test.js.map +1 -1
  232. package/dist/src/tools/tool-error.d.ts +1 -0
  233. package/dist/src/tools/tool-error.js +1 -0
  234. package/dist/src/tools/tool-error.js.map +1 -1
  235. package/dist/src/tools/tool-registry.d.ts +14 -18
  236. package/dist/src/tools/tool-registry.js +73 -106
  237. package/dist/src/tools/tool-registry.js.map +1 -1
  238. package/dist/src/tools/tool-registry.test.js +24 -192
  239. package/dist/src/tools/tool-registry.test.js.map +1 -1
  240. package/dist/src/tools/tools.d.ts +33 -89
  241. package/dist/src/tools/tools.js +76 -119
  242. package/dist/src/tools/tools.js.map +1 -1
  243. package/dist/src/tools/tools.test.js +91 -2
  244. package/dist/src/tools/tools.test.js.map +1 -1
  245. package/dist/src/tools/web-fetch.d.ts +4 -7
  246. package/dist/src/tools/web-fetch.js +58 -64
  247. package/dist/src/tools/web-fetch.js.map +1 -1
  248. package/dist/src/tools/web-fetch.test.js +8 -4
  249. package/dist/src/tools/web-fetch.test.js.map +1 -1
  250. package/dist/src/tools/web-search.d.ts +4 -5
  251. package/dist/src/tools/web-search.js +47 -51
  252. package/dist/src/tools/web-search.js.map +1 -1
  253. package/dist/src/tools/web-search.test.d.ts +6 -0
  254. package/dist/src/tools/web-search.test.js +139 -0
  255. package/dist/src/tools/web-search.test.js.map +1 -0
  256. package/dist/src/tools/write-file.d.ts +15 -10
  257. package/dist/src/tools/write-file.js +134 -145
  258. package/dist/src/tools/write-file.js.map +1 -1
  259. package/dist/src/tools/write-file.test.js +82 -127
  260. package/dist/src/tools/write-file.test.js.map +1 -1
  261. package/dist/src/utils/browser.js +4 -3
  262. package/dist/src/utils/browser.js.map +1 -1
  263. package/dist/src/utils/editCorrector.js +21 -22
  264. package/dist/src/utils/editCorrector.js.map +1 -1
  265. package/dist/src/utils/editor.js +1 -1
  266. package/dist/src/utils/editor.js.map +1 -1
  267. package/dist/src/utils/editor.test.js +10 -10
  268. package/dist/src/utils/editor.test.js.map +1 -1
  269. package/dist/src/utils/environmentContext.js +2 -2
  270. package/dist/src/utils/environmentContext.js.map +1 -1
  271. package/dist/src/utils/environmentContext.test.js +3 -2
  272. package/dist/src/utils/environmentContext.test.js.map +1 -1
  273. package/dist/src/utils/errorParsing.d.ts +8 -0
  274. package/dist/src/utils/errorParsing.js +93 -0
  275. package/dist/src/utils/errorParsing.js.map +1 -0
  276. package/dist/src/utils/errorParsing.test.d.ts +6 -0
  277. package/dist/src/utils/errorParsing.test.js +172 -0
  278. package/dist/src/utils/errorParsing.test.js.map +1 -0
  279. package/dist/src/utils/fileUtils.d.ts +2 -1
  280. package/dist/src/utils/fileUtils.js +3 -3
  281. package/dist/src/utils/fileUtils.js.map +1 -1
  282. package/dist/src/utils/fileUtils.test.js +18 -17
  283. package/dist/src/utils/fileUtils.test.js.map +1 -1
  284. package/dist/src/utils/filesearch/crawler.d.ts +15 -0
  285. package/dist/src/utils/filesearch/crawler.js +50 -0
  286. package/dist/src/utils/filesearch/crawler.js.map +1 -0
  287. package/dist/src/utils/filesearch/crawler.test.d.ts +6 -0
  288. package/dist/src/utils/filesearch/crawler.test.js +468 -0
  289. package/dist/src/utils/filesearch/crawler.test.js.map +1 -0
  290. package/dist/src/utils/filesearch/fileSearch.d.ts +9 -53
  291. package/dist/src/utils/filesearch/fileSearch.js +63 -118
  292. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  293. package/dist/src/utils/filesearch/fileSearch.test.js +95 -197
  294. package/dist/src/utils/filesearch/fileSearch.test.js.map +1 -1
  295. package/dist/src/utils/filesearch/ignore.d.ts +7 -0
  296. package/dist/src/utils/filesearch/ignore.js +25 -0
  297. package/dist/src/utils/filesearch/ignore.js.map +1 -1
  298. package/dist/src/utils/filesearch/ignore.test.js +89 -2
  299. package/dist/src/utils/filesearch/ignore.test.js.map +1 -1
  300. package/dist/src/utils/filesearch/result-cache.d.ts +1 -2
  301. package/dist/src/utils/filesearch/result-cache.js +1 -3
  302. package/dist/src/utils/filesearch/result-cache.js.map +1 -1
  303. package/dist/src/utils/filesearch/result-cache.test.js +3 -4
  304. package/dist/src/utils/filesearch/result-cache.test.js.map +1 -1
  305. package/dist/src/utils/getPty.d.ts +19 -0
  306. package/dist/src/utils/getPty.js +23 -0
  307. package/dist/src/utils/getPty.js.map +1 -0
  308. package/dist/src/utils/memoryDiscovery.js +3 -3
  309. package/dist/src/utils/memoryDiscovery.js.map +1 -1
  310. package/dist/src/utils/memoryDiscovery.test.js +3 -2
  311. package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
  312. package/dist/src/utils/memoryImportProcessor.js +3 -7
  313. package/dist/src/utils/memoryImportProcessor.js.map +1 -1
  314. package/dist/src/utils/memoryImportProcessor.test.js +17 -20
  315. package/dist/src/utils/memoryImportProcessor.test.js.map +1 -1
  316. package/dist/src/utils/nextSpeakerChecker.js +3 -4
  317. package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
  318. package/dist/src/utils/paths.d.ts +7 -0
  319. package/dist/src/utils/paths.js +15 -0
  320. package/dist/src/utils/paths.js.map +1 -1
  321. package/dist/src/utils/paths.test.js +74 -2
  322. package/dist/src/utils/paths.test.js.map +1 -1
  323. package/dist/src/utils/quotaErrorDetection.d.ts +1 -5
  324. package/dist/src/utils/quotaErrorDetection.js.map +1 -1
  325. package/dist/src/utils/schemaValidator.d.ts +1 -8
  326. package/dist/src/utils/schemaValidator.js +1 -32
  327. package/dist/src/utils/schemaValidator.js.map +1 -1
  328. package/dist/src/utils/secure-browser-launcher.js +4 -3
  329. package/dist/src/utils/secure-browser-launcher.js.map +1 -1
  330. package/dist/src/utils/shell-utils.d.ts +39 -0
  331. package/dist/src/utils/shell-utils.js +72 -2
  332. package/dist/src/utils/shell-utils.js.map +1 -1
  333. package/dist/src/utils/shell-utils.test.js +132 -4
  334. package/dist/src/utils/shell-utils.test.js.map +1 -1
  335. package/dist/src/utils/systemEncoding.js +1 -1
  336. package/dist/src/utils/systemEncoding.js.map +1 -1
  337. package/dist/src/utils/systemEncoding.test.js +23 -23
  338. package/dist/src/utils/systemEncoding.test.js.map +1 -1
  339. package/dist/src/utils/user_account.js +58 -48
  340. package/dist/src/utils/user_account.js.map +1 -1
  341. package/dist/src/utils/user_account.test.js +76 -9
  342. package/dist/src/utils/user_account.test.js.map +1 -1
  343. package/dist/src/utils/workspaceContext.d.ts +22 -7
  344. package/dist/src/utils/workspaceContext.js +81 -55
  345. package/dist/src/utils/workspaceContext.js.map +1 -1
  346. package/dist/src/utils/workspaceContext.test.js +221 -137
  347. package/dist/src/utils/workspaceContext.test.js.map +1 -1
  348. package/dist/tsconfig.tsbuildinfo +1 -1
  349. package/package.json +21 -8
@@ -3,11 +3,27 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { Buffer } from 'buffer';
7
6
  import { HttpsProxyAgent } from 'https-proxy-agent';
8
- import { StartSessionEvent, EndSessionEvent, UserPromptEvent, ToolCallEvent, ApiRequestEvent, ApiResponseEvent, ApiErrorEvent, FlashFallbackEvent, LoopDetectedEvent, NextSpeakerCheckEvent, SlashCommandEvent, MalformedJsonResponseEvent, IdeConnectionEvent } from '../types.js';
7
+ import { StartSessionEvent, UserPromptEvent, ToolCallEvent, ApiRequestEvent, ApiResponseEvent, ApiErrorEvent, LoopDetectedEvent, NextSpeakerCheckEvent, SlashCommandEvent, MalformedJsonResponseEvent, IdeConnectionEvent, KittySequenceOverflowEvent, ChatCompressionEvent } from '../types.js';
9
8
  import { EventMetadataKey } from './event-metadata-key.js';
10
9
  import { Config } from '../../config/config.js';
10
+ export declare enum EventNames {
11
+ START_SESSION = "start_session",
12
+ NEW_PROMPT = "new_prompt",
13
+ TOOL_CALL = "tool_call",
14
+ API_REQUEST = "api_request",
15
+ API_RESPONSE = "api_response",
16
+ API_ERROR = "api_error",
17
+ END_SESSION = "end_session",
18
+ FLASH_FALLBACK = "flash_fallback",
19
+ LOOP_DETECTED = "loop_detected",
20
+ NEXT_SPEAKER_CHECK = "next_speaker_check",
21
+ SLASH_COMMAND = "slash_command",
22
+ MALFORMED_JSON_RESPONSE = "malformed_json_response",
23
+ IDE_CONNECTION = "ide_connection",
24
+ KITTY_SEQUENCE_OVERFLOW = "kitty_sequence_overflow",
25
+ CHAT_COMPRESSION = "chat_compression"
26
+ }
11
27
  export interface LogResponse {
12
28
  nextRequestWaitMs?: number;
13
29
  }
@@ -15,51 +31,79 @@ export interface LogEventEntry {
15
31
  event_time_ms: number;
16
32
  source_extension_json: string;
17
33
  }
18
- export type EventValue = {
19
- gemini_cli_key: EventMetadataKey | string;
34
+ export interface EventValue {
35
+ gemini_cli_key: EventMetadataKey;
20
36
  value: string;
21
- };
22
- export type LogEvent = {
23
- console_type: string;
37
+ }
38
+ export interface LogEvent {
39
+ console_type: 'GEMINI_CLI';
24
40
  application: number;
25
41
  event_name: string;
26
42
  event_metadata: EventValue[][];
27
43
  client_email?: string;
28
44
  client_install_id?: string;
29
- };
45
+ }
46
+ export interface LogRequest {
47
+ log_source_name: 'CONCORD';
48
+ request_time_ms: number;
49
+ log_event: LogEventEntry[][];
50
+ }
30
51
  export declare class ClearcutLogger {
31
52
  private static instance;
32
53
  private config?;
54
+ private sessionData;
55
+ private promptId;
56
+ /**
57
+ * Queue of pending events that need to be flushed to the server. New events
58
+ * are added to this queue and then flushed on demand (via `flushToClearcut`)
59
+ */
33
60
  private readonly events;
34
- private last_flush_time;
35
- private flush_interval_ms;
36
- private readonly max_events;
37
- private readonly max_retry_events;
61
+ /**
62
+ * The last time that the events were successfully flushed to the server.
63
+ */
64
+ private lastFlushTime;
65
+ /**
66
+ * the value is true when there is a pending flush happening. This prevents
67
+ * concurrent flush operations.
68
+ */
38
69
  private flushing;
70
+ /**
71
+ * This value is true when a flush was requested during an ongoing flush.
72
+ */
39
73
  private pendingFlush;
40
74
  private constructor();
41
75
  static getInstance(config?: Config): ClearcutLogger | undefined;
42
76
  /** For testing purposes only. */
43
77
  static clearInstance(): void;
44
- enqueueLogEvent(event: object): void;
45
- createLogEvent(name: string, data: EventValue[]): LogEvent;
78
+ enqueueLogEvent(event: LogEvent): void;
79
+ createLogEvent(eventName: EventNames, data?: EventValue[]): LogEvent;
46
80
  flushIfNeeded(): void;
47
81
  flushToClearcut(): Promise<LogResponse>;
48
- decodeLogResponse(buf: Buffer): LogResponse | undefined;
49
82
  logStartSessionEvent(event: StartSessionEvent): void;
50
83
  logNewPromptEvent(event: UserPromptEvent): void;
51
84
  logToolCallEvent(event: ToolCallEvent): void;
52
85
  logApiRequestEvent(event: ApiRequestEvent): void;
53
86
  logApiResponseEvent(event: ApiResponseEvent): void;
54
87
  logApiErrorEvent(event: ApiErrorEvent): void;
55
- logFlashFallbackEvent(event: FlashFallbackEvent): void;
88
+ logChatCompressionEvent(event: ChatCompressionEvent): void;
89
+ logFlashFallbackEvent(): void;
56
90
  logLoopDetectedEvent(event: LoopDetectedEvent): void;
57
91
  logNextSpeakerCheck(event: NextSpeakerCheckEvent): void;
58
92
  logSlashCommandEvent(event: SlashCommandEvent): void;
59
93
  logMalformedJsonResponseEvent(event: MalformedJsonResponseEvent): void;
60
94
  logIdeConnectionEvent(event: IdeConnectionEvent): void;
61
- logEndSessionEvent(event: EndSessionEvent): void;
95
+ logKittySequenceOverflowEvent(event: KittySequenceOverflowEvent): void;
96
+ logEndSessionEvent(): void;
97
+ /**
98
+ * Adds default fields to data, and returns a new data array. This fields
99
+ * should exist on all log events.
100
+ */
101
+ addDefaultFields(data: EventValue[]): EventValue[];
62
102
  getProxyAgent(): HttpsProxyAgent<string> | undefined;
63
103
  shutdown(): void;
64
104
  private requeueFailedEvents;
65
105
  }
106
+ export declare const TEST_ONLY: {
107
+ MAX_RETRY_EVENTS: number;
108
+ MAX_EVENTS: number;
109
+ };