@codemieai/code 0.0.16 → 0.0.18

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 (410) hide show
  1. package/README.md +62 -5
  2. package/bin/agent-executor.js +7 -28
  3. package/bin/codemie-claude.js +18 -0
  4. package/bin/codemie-codex.js +18 -0
  5. package/bin/codemie-deepagents.js +18 -0
  6. package/bin/codemie-gemini.js +18 -0
  7. package/dist/agents/codemie-code/agent.d.ts.map +1 -1
  8. package/dist/agents/codemie-code/agent.js +3 -32
  9. package/dist/agents/codemie-code/agent.js.map +1 -1
  10. package/dist/agents/codemie-code/tools/planning.d.ts +2 -2
  11. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  12. package/dist/agents/core/AgentCLI.js +31 -62
  13. package/dist/agents/core/AgentCLI.js.map +1 -1
  14. package/dist/agents/core/BaseAgentAdapter.d.ts +9 -1
  15. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  16. package/dist/agents/core/BaseAgentAdapter.js +125 -10
  17. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  18. package/dist/agents/core/BaseMetricsAdapter.d.ts +64 -0
  19. package/dist/agents/core/BaseMetricsAdapter.d.ts.map +1 -0
  20. package/dist/agents/core/BaseMetricsAdapter.js +74 -0
  21. package/dist/agents/core/BaseMetricsAdapter.js.map +1 -0
  22. package/dist/agents/core/types.d.ts +1 -0
  23. package/dist/agents/core/types.d.ts.map +1 -1
  24. package/dist/agents/plugins/claude.metrics.d.ts +112 -0
  25. package/dist/agents/plugins/claude.metrics.d.ts.map +1 -0
  26. package/dist/agents/plugins/claude.metrics.js +700 -0
  27. package/dist/agents/plugins/claude.metrics.js.map +1 -0
  28. package/dist/agents/plugins/claude.plugin.d.ts +9 -0
  29. package/dist/agents/plugins/claude.plugin.d.ts.map +1 -1
  30. package/dist/agents/plugins/claude.plugin.js +52 -10
  31. package/dist/agents/plugins/claude.plugin.js.map +1 -1
  32. package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
  33. package/dist/agents/plugins/codemie-code.plugin.js +57 -13
  34. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  35. package/dist/agents/plugins/codex.plugin.d.ts.map +1 -1
  36. package/dist/agents/plugins/codex.plugin.js +1 -3
  37. package/dist/agents/plugins/codex.plugin.js.map +1 -1
  38. package/dist/agents/plugins/gemini.plugin.d.ts.map +1 -1
  39. package/dist/agents/plugins/gemini.plugin.js +0 -7
  40. package/dist/agents/plugins/gemini.plugin.js.map +1 -1
  41. package/dist/agents/plugins/history-parser.d.ts +52 -0
  42. package/dist/agents/plugins/history-parser.d.ts.map +1 -0
  43. package/dist/agents/plugins/history-parser.js +155 -0
  44. package/dist/agents/plugins/history-parser.js.map +1 -0
  45. package/dist/cli/commands/analytics/aggregator.d.ts +58 -0
  46. package/dist/cli/commands/analytics/aggregator.d.ts.map +1 -0
  47. package/dist/cli/commands/analytics/aggregator.js +702 -0
  48. package/dist/cli/commands/analytics/aggregator.js.map +1 -0
  49. package/dist/cli/commands/analytics/data-loader.d.ts +84 -0
  50. package/dist/cli/commands/analytics/data-loader.d.ts.map +1 -0
  51. package/dist/cli/commands/analytics/data-loader.js +211 -0
  52. package/dist/cli/commands/analytics/data-loader.js.map +1 -0
  53. package/dist/cli/commands/analytics/exporter.d.ts +20 -0
  54. package/dist/cli/commands/analytics/exporter.d.ts.map +1 -0
  55. package/dist/cli/commands/analytics/exporter.js +103 -0
  56. package/dist/cli/commands/analytics/exporter.js.map +1 -0
  57. package/dist/cli/commands/analytics/formatter.d.ts +49 -0
  58. package/dist/cli/commands/analytics/formatter.d.ts.map +1 -0
  59. package/dist/cli/commands/analytics/formatter.js +309 -0
  60. package/dist/cli/commands/analytics/formatter.js.map +1 -0
  61. package/dist/cli/commands/analytics/index.d.ts +6 -0
  62. package/dist/cli/commands/analytics/index.d.ts.map +1 -0
  63. package/dist/cli/commands/analytics/index.js +157 -0
  64. package/dist/cli/commands/analytics/index.js.map +1 -0
  65. package/dist/cli/commands/analytics/model-normalizer.d.ts +21 -0
  66. package/dist/cli/commands/analytics/model-normalizer.d.ts.map +1 -0
  67. package/dist/cli/commands/analytics/model-normalizer.js +44 -0
  68. package/dist/cli/commands/analytics/model-normalizer.js.map +1 -0
  69. package/dist/cli/commands/analytics/types.d.ts +188 -0
  70. package/dist/cli/commands/analytics/types.d.ts.map +1 -0
  71. package/dist/cli/commands/analytics/types.js +6 -0
  72. package/dist/cli/commands/analytics/types.js.map +1 -0
  73. package/dist/cli/commands/doctor/checks/AwsCliCheck.d.ts +9 -0
  74. package/dist/cli/commands/doctor/checks/AwsCliCheck.d.ts.map +1 -0
  75. package/dist/cli/commands/doctor/checks/AwsCliCheck.js +28 -0
  76. package/dist/cli/commands/doctor/checks/AwsCliCheck.js.map +1 -0
  77. package/dist/cli/commands/doctor/checks/PythonCheck.d.ts.map +1 -1
  78. package/dist/cli/commands/doctor/checks/PythonCheck.js +10 -0
  79. package/dist/cli/commands/doctor/checks/PythonCheck.js.map +1 -1
  80. package/dist/cli/commands/doctor/checks/WorkflowsCheck.d.ts.map +1 -1
  81. package/dist/cli/commands/doctor/checks/WorkflowsCheck.js +2 -1
  82. package/dist/cli/commands/doctor/checks/WorkflowsCheck.js.map +1 -1
  83. package/dist/cli/commands/doctor/checks/index.d.ts +1 -0
  84. package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -1
  85. package/dist/cli/commands/doctor/checks/index.js +1 -0
  86. package/dist/cli/commands/doctor/checks/index.js.map +1 -1
  87. package/dist/cli/commands/doctor/index.d.ts.map +1 -1
  88. package/dist/cli/commands/doctor/index.js +75 -3
  89. package/dist/cli/commands/doctor/index.js.map +1 -1
  90. package/dist/cli/commands/profile.d.ts.map +1 -1
  91. package/dist/cli/commands/profile.js +49 -89
  92. package/dist/cli/commands/profile.js.map +1 -1
  93. package/dist/cli/commands/setup.js +1 -21
  94. package/dist/cli/commands/setup.js.map +1 -1
  95. package/dist/cli/index.js +1 -1
  96. package/dist/cli/index.js.map +1 -1
  97. package/dist/env/types.d.ts +14 -2
  98. package/dist/env/types.d.ts.map +1 -1
  99. package/dist/env/types.js.map +1 -1
  100. package/dist/metrics/MetricsOrchestrator.d.ts +67 -0
  101. package/dist/metrics/MetricsOrchestrator.d.ts.map +1 -0
  102. package/dist/metrics/MetricsOrchestrator.js +287 -0
  103. package/dist/metrics/MetricsOrchestrator.js.map +1 -0
  104. package/dist/metrics/config.d.ts +38 -0
  105. package/dist/metrics/config.d.ts.map +1 -0
  106. package/dist/metrics/config.js +80 -0
  107. package/dist/metrics/config.js.map +1 -0
  108. package/dist/metrics/core/DeltaWriter.d.ts +49 -0
  109. package/dist/metrics/core/DeltaWriter.d.ts.map +1 -0
  110. package/dist/metrics/core/DeltaWriter.js +146 -0
  111. package/dist/metrics/core/DeltaWriter.js.map +1 -0
  112. package/dist/metrics/core/FileSnapshotter.d.ts +22 -0
  113. package/dist/metrics/core/FileSnapshotter.d.ts.map +1 -0
  114. package/dist/metrics/core/FileSnapshotter.js +74 -0
  115. package/dist/metrics/core/FileSnapshotter.js.map +1 -0
  116. package/dist/metrics/core/SessionCorrelator.d.ts +34 -0
  117. package/dist/metrics/core/SessionCorrelator.d.ts.map +1 -0
  118. package/dist/metrics/core/SessionCorrelator.js +115 -0
  119. package/dist/metrics/core/SessionCorrelator.js.map +1 -0
  120. package/dist/metrics/core/SyncStateManager.d.ts +69 -0
  121. package/dist/metrics/core/SyncStateManager.d.ts.map +1 -0
  122. package/dist/metrics/core/SyncStateManager.js +284 -0
  123. package/dist/metrics/core/SyncStateManager.js.map +1 -0
  124. package/dist/metrics/index.d.ts +9 -0
  125. package/dist/metrics/index.d.ts.map +1 -0
  126. package/dist/metrics/index.js +11 -0
  127. package/dist/metrics/index.js.map +1 -0
  128. package/dist/metrics/session/SessionStore.d.ts +43 -0
  129. package/dist/metrics/session/SessionStore.d.ts.map +1 -0
  130. package/dist/metrics/session/SessionStore.js +142 -0
  131. package/dist/metrics/session/SessionStore.js.map +1 -0
  132. package/dist/metrics/sync/MetricsApiClient.d.ts +32 -0
  133. package/dist/metrics/sync/MetricsApiClient.d.ts.map +1 -0
  134. package/dist/metrics/sync/MetricsApiClient.js +155 -0
  135. package/dist/metrics/sync/MetricsApiClient.js.map +1 -0
  136. package/dist/metrics/sync/aggregator.d.ts +14 -0
  137. package/dist/metrics/sync/aggregator.d.ts.map +1 -0
  138. package/dist/metrics/sync/aggregator.js +214 -0
  139. package/dist/metrics/sync/aggregator.js.map +1 -0
  140. package/dist/metrics/sync/index.d.ts +10 -0
  141. package/dist/metrics/sync/index.d.ts.map +1 -0
  142. package/dist/metrics/sync/index.js +10 -0
  143. package/dist/metrics/sync/index.js.map +1 -0
  144. package/dist/metrics/sync/jsonl-writer.d.ts +28 -0
  145. package/dist/metrics/sync/jsonl-writer.d.ts.map +1 -0
  146. package/dist/metrics/sync/jsonl-writer.js +72 -0
  147. package/dist/metrics/sync/jsonl-writer.js.map +1 -0
  148. package/dist/metrics/sync/types.d.ts +73 -0
  149. package/dist/metrics/sync/types.d.ts.map +1 -0
  150. package/dist/metrics/sync/types.js +7 -0
  151. package/dist/metrics/sync/types.js.map +1 -0
  152. package/dist/metrics/types.d.ts +308 -0
  153. package/dist/metrics/types.d.ts.map +1 -0
  154. package/dist/metrics/types.js +8 -0
  155. package/dist/metrics/types.js.map +1 -0
  156. package/dist/providers/index.d.ts +2 -0
  157. package/dist/providers/index.d.ts.map +1 -1
  158. package/dist/providers/index.js +2 -0
  159. package/dist/providers/index.js.map +1 -1
  160. package/dist/providers/integration/setup-ui.d.ts +1 -1
  161. package/dist/providers/integration/setup-ui.d.ts.map +1 -1
  162. package/dist/providers/integration/setup-ui.js +51 -6
  163. package/dist/providers/integration/setup-ui.js.map +1 -1
  164. package/dist/providers/plugins/bedrock/bedrock.health.d.ts +53 -0
  165. package/dist/providers/plugins/bedrock/bedrock.health.d.ts.map +1 -0
  166. package/dist/providers/plugins/bedrock/bedrock.health.js +115 -0
  167. package/dist/providers/plugins/bedrock/bedrock.health.js.map +1 -0
  168. package/dist/providers/plugins/bedrock/bedrock.models.d.ts +26 -0
  169. package/dist/providers/plugins/bedrock/bedrock.models.d.ts.map +1 -0
  170. package/dist/providers/plugins/bedrock/bedrock.models.js +89 -0
  171. package/dist/providers/plugins/bedrock/bedrock.models.js.map +1 -0
  172. package/dist/providers/plugins/bedrock/bedrock.setup-steps.d.ts +12 -0
  173. package/dist/providers/plugins/bedrock/bedrock.setup-steps.d.ts.map +1 -0
  174. package/dist/providers/plugins/bedrock/bedrock.setup-steps.js +308 -0
  175. package/dist/providers/plugins/bedrock/bedrock.setup-steps.js.map +1 -0
  176. package/dist/providers/plugins/bedrock/bedrock.template.d.ts +11 -0
  177. package/dist/providers/plugins/bedrock/bedrock.template.d.ts.map +1 -0
  178. package/dist/providers/plugins/bedrock/bedrock.template.js +85 -0
  179. package/dist/providers/plugins/bedrock/bedrock.template.js.map +1 -0
  180. package/dist/providers/plugins/bedrock/index.d.ts +11 -0
  181. package/dist/providers/plugins/bedrock/index.d.ts.map +1 -0
  182. package/dist/providers/plugins/bedrock/index.js +11 -0
  183. package/dist/providers/plugins/bedrock/index.js.map +1 -0
  184. package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -1
  185. package/dist/providers/plugins/ollama/ollama.template.js +2 -0
  186. package/dist/providers/plugins/ollama/ollama.template.js.map +1 -1
  187. package/dist/providers/plugins/sso/sso.http-client.d.ts +2 -0
  188. package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -1
  189. package/dist/providers/plugins/sso/sso.http-client.js +9 -3
  190. package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
  191. package/dist/proxy/http-client.d.ts +1 -1
  192. package/dist/proxy/http-client.d.ts.map +1 -1
  193. package/dist/proxy/http-client.js +78 -12
  194. package/dist/proxy/http-client.js.map +1 -1
  195. package/dist/proxy/plugins/endpoint-blocker.plugin.d.ts +19 -0
  196. package/dist/proxy/plugins/endpoint-blocker.plugin.d.ts.map +1 -0
  197. package/dist/proxy/plugins/endpoint-blocker.plugin.js +61 -0
  198. package/dist/proxy/plugins/endpoint-blocker.plugin.js.map +1 -0
  199. package/dist/proxy/plugins/header-injection.plugin.js +3 -0
  200. package/dist/proxy/plugins/header-injection.plugin.js.map +1 -1
  201. package/dist/proxy/plugins/index.d.ts +3 -1
  202. package/dist/proxy/plugins/index.d.ts.map +1 -1
  203. package/dist/proxy/plugins/index.js +5 -1
  204. package/dist/proxy/plugins/index.js.map +1 -1
  205. package/dist/proxy/plugins/logging.plugin.d.ts +11 -3
  206. package/dist/proxy/plugins/logging.plugin.d.ts.map +1 -1
  207. package/dist/proxy/plugins/logging.plugin.js +189 -25
  208. package/dist/proxy/plugins/logging.plugin.js.map +1 -1
  209. package/dist/proxy/plugins/metrics-sync.plugin.d.ts +33 -0
  210. package/dist/proxy/plugins/metrics-sync.plugin.d.ts.map +1 -0
  211. package/dist/proxy/plugins/metrics-sync.plugin.js +320 -0
  212. package/dist/proxy/plugins/metrics-sync.plugin.js.map +1 -0
  213. package/dist/proxy/plugins/registry.d.ts.map +1 -1
  214. package/dist/proxy/plugins/registry.js +8 -1
  215. package/dist/proxy/plugins/registry.js.map +1 -1
  216. package/dist/proxy/plugins/types.d.ts +6 -2
  217. package/dist/proxy/plugins/types.d.ts.map +1 -1
  218. package/dist/proxy/types.d.ts +8 -1
  219. package/dist/proxy/types.d.ts.map +1 -1
  220. package/dist/utils/ascii-logo.d.ts +21 -0
  221. package/dist/utils/ascii-logo.d.ts.map +1 -0
  222. package/dist/utils/ascii-logo.js +85 -0
  223. package/dist/utils/ascii-logo.js.map +1 -0
  224. package/dist/utils/codemie-proxy.d.ts +2 -7
  225. package/dist/utils/codemie-proxy.d.ts.map +1 -1
  226. package/dist/utils/codemie-proxy.js +83 -61
  227. package/dist/utils/codemie-proxy.js.map +1 -1
  228. package/dist/utils/config-loader.d.ts.map +1 -1
  229. package/dist/utils/config-loader.js +22 -6
  230. package/dist/utils/config-loader.js.map +1 -1
  231. package/dist/utils/exec.d.ts +11 -0
  232. package/dist/utils/exec.d.ts.map +1 -1
  233. package/dist/utils/exec.js +17 -1
  234. package/dist/utils/exec.js.map +1 -1
  235. package/dist/utils/goodbye-messages.d.ts +13 -0
  236. package/dist/utils/goodbye-messages.d.ts.map +1 -0
  237. package/dist/utils/goodbye-messages.js +245 -0
  238. package/dist/utils/goodbye-messages.js.map +1 -0
  239. package/dist/utils/json-parser.d.ts +52 -0
  240. package/dist/utils/json-parser.d.ts.map +1 -0
  241. package/dist/utils/json-parser.js +126 -0
  242. package/dist/utils/json-parser.js.map +1 -0
  243. package/dist/utils/logger.d.ts +37 -1
  244. package/dist/utils/logger.d.ts.map +1 -1
  245. package/dist/utils/logger.js +92 -20
  246. package/dist/utils/logger.js.map +1 -1
  247. package/dist/utils/sanitize.d.ts.map +1 -1
  248. package/dist/utils/sanitize.js +0 -1
  249. package/dist/utils/sanitize.js.map +1 -1
  250. package/dist/utils/which.d.ts +20 -0
  251. package/dist/utils/which.d.ts.map +1 -0
  252. package/dist/utils/which.js +47 -0
  253. package/dist/utils/which.js.map +1 -0
  254. package/package.json +10 -5
  255. package/dist/analytics/aggregation/adapters/claude.adapter.d.ts +0 -37
  256. package/dist/analytics/aggregation/adapters/claude.adapter.d.ts.map +0 -1
  257. package/dist/analytics/aggregation/adapters/claude.adapter.js +0 -531
  258. package/dist/analytics/aggregation/adapters/claude.adapter.js.map +0 -1
  259. package/dist/analytics/aggregation/adapters/codex.adapter.d.ts +0 -25
  260. package/dist/analytics/aggregation/adapters/codex.adapter.d.ts.map +0 -1
  261. package/dist/analytics/aggregation/adapters/codex.adapter.js +0 -396
  262. package/dist/analytics/aggregation/adapters/codex.adapter.js.map +0 -1
  263. package/dist/analytics/aggregation/adapters/gemini.adapter.d.ts +0 -36
  264. package/dist/analytics/aggregation/adapters/gemini.adapter.d.ts.map +0 -1
  265. package/dist/analytics/aggregation/adapters/gemini.adapter.js +0 -365
  266. package/dist/analytics/aggregation/adapters/gemini.adapter.js.map +0 -1
  267. package/dist/analytics/aggregation/adapters/index.d.ts +0 -7
  268. package/dist/analytics/aggregation/adapters/index.d.ts.map +0 -1
  269. package/dist/analytics/aggregation/adapters/index.js +0 -7
  270. package/dist/analytics/aggregation/adapters/index.js.map +0 -1
  271. package/dist/analytics/aggregation/aggregator.d.ts +0 -49
  272. package/dist/analytics/aggregation/aggregator.d.ts.map +0 -1
  273. package/dist/analytics/aggregation/aggregator.js +0 -239
  274. package/dist/analytics/aggregation/aggregator.js.map +0 -1
  275. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.d.ts +0 -99
  276. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.d.ts.map +0 -1
  277. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.js +0 -110
  278. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.js.map +0 -1
  279. package/dist/analytics/aggregation/core/adapter.interface.d.ts +0 -76
  280. package/dist/analytics/aggregation/core/adapter.interface.d.ts.map +0 -1
  281. package/dist/analytics/aggregation/core/adapter.interface.js +0 -9
  282. package/dist/analytics/aggregation/core/adapter.interface.js.map +0 -1
  283. package/dist/analytics/aggregation/core/aggregation-utils.d.ts +0 -86
  284. package/dist/analytics/aggregation/core/aggregation-utils.d.ts.map +0 -1
  285. package/dist/analytics/aggregation/core/aggregation-utils.js +0 -126
  286. package/dist/analytics/aggregation/core/aggregation-utils.js.map +0 -1
  287. package/dist/analytics/aggregation/core/discovery.d.ts +0 -40
  288. package/dist/analytics/aggregation/core/discovery.d.ts.map +0 -1
  289. package/dist/analytics/aggregation/core/discovery.js +0 -132
  290. package/dist/analytics/aggregation/core/discovery.js.map +0 -1
  291. package/dist/analytics/aggregation/core/file-utils.d.ts +0 -24
  292. package/dist/analytics/aggregation/core/file-utils.d.ts.map +0 -1
  293. package/dist/analytics/aggregation/core/file-utils.js +0 -143
  294. package/dist/analytics/aggregation/core/file-utils.js.map +0 -1
  295. package/dist/analytics/aggregation/core/index.d.ts +0 -14
  296. package/dist/analytics/aggregation/core/index.d.ts.map +0 -1
  297. package/dist/analytics/aggregation/core/index.js +0 -14
  298. package/dist/analytics/aggregation/core/index.js.map +0 -1
  299. package/dist/analytics/aggregation/core/project-mapping.d.ts +0 -50
  300. package/dist/analytics/aggregation/core/project-mapping.d.ts.map +0 -1
  301. package/dist/analytics/aggregation/core/project-mapping.js +0 -102
  302. package/dist/analytics/aggregation/core/project-mapping.js.map +0 -1
  303. package/dist/analytics/aggregation/core/streaming.d.ts +0 -26
  304. package/dist/analytics/aggregation/core/streaming.d.ts.map +0 -1
  305. package/dist/analytics/aggregation/core/streaming.js +0 -58
  306. package/dist/analytics/aggregation/core/streaming.js.map +0 -1
  307. package/dist/analytics/aggregation/core/user-prompt-source.d.ts +0 -81
  308. package/dist/analytics/aggregation/core/user-prompt-source.d.ts.map +0 -1
  309. package/dist/analytics/aggregation/core/user-prompt-source.js +0 -69
  310. package/dist/analytics/aggregation/core/user-prompt-source.js.map +0 -1
  311. package/dist/analytics/aggregation/core/user-prompt-sources/json.d.ts +0 -49
  312. package/dist/analytics/aggregation/core/user-prompt-sources/json.d.ts.map +0 -1
  313. package/dist/analytics/aggregation/core/user-prompt-sources/json.js +0 -66
  314. package/dist/analytics/aggregation/core/user-prompt-sources/json.js.map +0 -1
  315. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.d.ts +0 -43
  316. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.d.ts.map +0 -1
  317. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.js +0 -56
  318. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.js.map +0 -1
  319. package/dist/analytics/aggregation/index.d.ts +0 -8
  320. package/dist/analytics/aggregation/index.d.ts.map +0 -1
  321. package/dist/analytics/aggregation/index.js +0 -8
  322. package/dist/analytics/aggregation/index.js.map +0 -1
  323. package/dist/analytics/aggregation/types.d.ts +0 -278
  324. package/dist/analytics/aggregation/types.d.ts.map +0 -1
  325. package/dist/analytics/aggregation/types.js +0 -8
  326. package/dist/analytics/aggregation/types.js.map +0 -1
  327. package/dist/analytics/collector.d.ts +0 -46
  328. package/dist/analytics/collector.d.ts.map +0 -1
  329. package/dist/analytics/collector.js +0 -83
  330. package/dist/analytics/collector.js.map +0 -1
  331. package/dist/analytics/config.d.ts +0 -15
  332. package/dist/analytics/config.d.ts.map +0 -1
  333. package/dist/analytics/config.js +0 -65
  334. package/dist/analytics/config.js.map +0 -1
  335. package/dist/analytics/index.d.ts +0 -99
  336. package/dist/analytics/index.d.ts.map +0 -1
  337. package/dist/analytics/index.js +0 -280
  338. package/dist/analytics/index.js.map +0 -1
  339. package/dist/analytics/plugins/api-metrics.plugin.d.ts +0 -26
  340. package/dist/analytics/plugins/api-metrics.plugin.d.ts.map +0 -1
  341. package/dist/analytics/plugins/api-metrics.plugin.js +0 -97
  342. package/dist/analytics/plugins/api-metrics.plugin.js.map +0 -1
  343. package/dist/analytics/plugins/index.d.ts +0 -15
  344. package/dist/analytics/plugins/index.d.ts.map +0 -1
  345. package/dist/analytics/plugins/index.js +0 -15
  346. package/dist/analytics/plugins/index.js.map +0 -1
  347. package/dist/analytics/plugins/model-metrics.plugin.d.ts +0 -39
  348. package/dist/analytics/plugins/model-metrics.plugin.d.ts.map +0 -1
  349. package/dist/analytics/plugins/model-metrics.plugin.js +0 -105
  350. package/dist/analytics/plugins/model-metrics.plugin.js.map +0 -1
  351. package/dist/analytics/plugins/provider-metrics.plugin.d.ts +0 -41
  352. package/dist/analytics/plugins/provider-metrics.plugin.d.ts.map +0 -1
  353. package/dist/analytics/plugins/provider-metrics.plugin.js +0 -123
  354. package/dist/analytics/plugins/provider-metrics.plugin.js.map +0 -1
  355. package/dist/analytics/plugins/types.d.ts +0 -61
  356. package/dist/analytics/plugins/types.d.ts.map +0 -1
  357. package/dist/analytics/plugins/types.js +0 -54
  358. package/dist/analytics/plugins/types.js.map +0 -1
  359. package/dist/analytics/privacy.d.ts +0 -10
  360. package/dist/analytics/privacy.d.ts.map +0 -1
  361. package/dist/analytics/privacy.js +0 -20
  362. package/dist/analytics/privacy.js.map +0 -1
  363. package/dist/analytics/remote-submission/cursor-manager.d.ts +0 -71
  364. package/dist/analytics/remote-submission/cursor-manager.d.ts.map +0 -1
  365. package/dist/analytics/remote-submission/cursor-manager.js +0 -204
  366. package/dist/analytics/remote-submission/cursor-manager.js.map +0 -1
  367. package/dist/analytics/remote-submission/index.d.ts +0 -12
  368. package/dist/analytics/remote-submission/index.d.ts.map +0 -1
  369. package/dist/analytics/remote-submission/index.js +0 -11
  370. package/dist/analytics/remote-submission/index.js.map +0 -1
  371. package/dist/analytics/remote-submission/lock-manager.d.ts +0 -71
  372. package/dist/analytics/remote-submission/lock-manager.d.ts.map +0 -1
  373. package/dist/analytics/remote-submission/lock-manager.js +0 -238
  374. package/dist/analytics/remote-submission/lock-manager.js.map +0 -1
  375. package/dist/analytics/remote-submission/metric-transformer.d.ts +0 -21
  376. package/dist/analytics/remote-submission/metric-transformer.d.ts.map +0 -1
  377. package/dist/analytics/remote-submission/metric-transformer.js +0 -82
  378. package/dist/analytics/remote-submission/metric-transformer.js.map +0 -1
  379. package/dist/analytics/remote-submission/submitter.d.ts +0 -79
  380. package/dist/analytics/remote-submission/submitter.d.ts.map +0 -1
  381. package/dist/analytics/remote-submission/submitter.js +0 -362
  382. package/dist/analytics/remote-submission/submitter.js.map +0 -1
  383. package/dist/analytics/remote-submission/types.d.ts +0 -123
  384. package/dist/analytics/remote-submission/types.d.ts.map +0 -1
  385. package/dist/analytics/remote-submission/types.js +0 -13
  386. package/dist/analytics/remote-submission/types.js.map +0 -1
  387. package/dist/analytics/session.d.ts +0 -56
  388. package/dist/analytics/session.d.ts.map +0 -1
  389. package/dist/analytics/session.js +0 -95
  390. package/dist/analytics/session.js.map +0 -1
  391. package/dist/analytics/types.d.ts +0 -104
  392. package/dist/analytics/types.d.ts.map +0 -1
  393. package/dist/analytics/types.js +0 -15
  394. package/dist/analytics/types.js.map +0 -1
  395. package/dist/analytics/writer.d.ts +0 -18
  396. package/dist/analytics/writer.d.ts.map +0 -1
  397. package/dist/analytics/writer.js +0 -44
  398. package/dist/analytics/writer.js.map +0 -1
  399. package/dist/cli/commands/analytics.d.ts +0 -3
  400. package/dist/cli/commands/analytics.d.ts.map +0 -1
  401. package/dist/cli/commands/analytics.js +0 -748
  402. package/dist/cli/commands/analytics.js.map +0 -1
  403. package/dist/utils/analytics-reader.d.ts +0 -117
  404. package/dist/utils/analytics-reader.d.ts.map +0 -1
  405. package/dist/utils/analytics-reader.js +0 -421
  406. package/dist/utils/analytics-reader.js.map +0 -1
  407. package/dist/utils/date-formatter.d.ts +0 -88
  408. package/dist/utils/date-formatter.d.ts.map +0 -1
  409. package/dist/utils/date-formatter.js +0 -133
  410. package/dist/utils/date-formatter.js.map +0 -1
@@ -1,5 +1,7 @@
1
1
  import { AgentMetadata, AgentAdapter } from './types.js';
2
2
  import { CodeMieProxy } from '../../utils/codemie-proxy.js';
3
+ import { MetricsOrchestrator } from '../../metrics/MetricsOrchestrator.js';
4
+ import type { AgentMetricsSupport } from '../../metrics/types.js';
3
5
  /**
4
6
  * Base class for all agent adapters
5
7
  * Implements common logic shared by external agents
@@ -7,7 +9,13 @@ import { CodeMieProxy } from '../../utils/codemie-proxy.js';
7
9
  export declare abstract class BaseAgentAdapter implements AgentAdapter {
8
10
  protected metadata: AgentMetadata;
9
11
  protected proxy: CodeMieProxy | null;
12
+ protected metricsOrchestrator: MetricsOrchestrator | null;
10
13
  constructor(metadata: AgentMetadata);
14
+ /**
15
+ * Get metrics adapter for this agent (optional)
16
+ * Override in agent plugin if metrics collection is supported
17
+ */
18
+ getMetricsAdapter(): AgentMetricsSupport | null;
11
19
  get name(): string;
12
20
  get displayName(): string;
13
21
  get description(): string;
@@ -20,7 +28,7 @@ export declare abstract class BaseAgentAdapter implements AgentAdapter {
20
28
  */
21
29
  uninstall(): Promise<void>;
22
30
  /**
23
- * Check if agent is installed via which command
31
+ * Check if agent is installed (cross-platform)
24
32
  */
25
33
  isInstalled(): Promise<boolean>;
26
34
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAgentAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAe,MAAM,YAAY,CAAC;AAItE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG5D;;;GAGG;AACH,8BAAsB,gBAAiB,YAAW,YAAY;IAGhD,SAAS,CAAC,QAAQ,EAAE,aAAa;IAF7C,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;gBAEtB,QAAQ,EAAE,aAAa;IAE7C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAarC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAa1C;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAqG/E;;;OAGG;cACa,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IA8CjE;;OAEG;IACH,OAAO,CAAC,aAAa;CAStB"}
1
+ {"version":3,"file":"BaseAgentAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAe,MAAM,YAAY,CAAC;AAKtE,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAE5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAC3E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAMlE;;;GAGG;AACH,8BAAsB,gBAAiB,YAAW,YAAY;IAIhD,SAAS,CAAC,QAAQ,EAAE,aAAa;IAH7C,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAQ;IAC5C,SAAS,CAAC,mBAAmB,EAAE,mBAAmB,GAAG,IAAI,CAAQ;gBAE3C,QAAQ,EAAE,aAAa;IAE7C;;;OAGG;IACH,iBAAiB,IAAI,mBAAmB,GAAG,IAAI;IAI/C,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAe9B;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAehC;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAcrC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAa1C;;OAEG;IACG,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAoM/E;;;OAGG;cACa,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAgEjE;;OAEG;IACH,OAAO,CAAC,aAAa;CAStB"}
@@ -1,8 +1,14 @@
1
1
  import { exec } from '../../utils/exec.js';
2
2
  import { logger } from '../../utils/logger.js';
3
3
  import { spawn } from 'child_process';
4
+ import { randomUUID } from 'crypto';
4
5
  import { CodeMieProxy } from '../../utils/codemie-proxy.js';
5
6
  import { ProviderRegistry } from '../../providers/core/registry.js';
7
+ import { MetricsOrchestrator } from '../../metrics/MetricsOrchestrator.js';
8
+ import { getRandomWelcomeMessage, getRandomGoodbyeMessage } from '../../utils/goodbye-messages.js';
9
+ import { renderCodeMieLogo } from '../../utils/ascii-logo.js';
10
+ import chalk from 'chalk';
11
+ import gradient from 'gradient-string';
6
12
  /**
7
13
  * Base class for all agent adapters
8
14
  * Implements common logic shared by external agents
@@ -10,9 +16,17 @@ import { ProviderRegistry } from '../../providers/core/registry.js';
10
16
  export class BaseAgentAdapter {
11
17
  metadata;
12
18
  proxy = null;
19
+ metricsOrchestrator = null;
13
20
  constructor(metadata) {
14
21
  this.metadata = metadata;
15
22
  }
23
+ /**
24
+ * Get metrics adapter for this agent (optional)
25
+ * Override in agent plugin if metrics collection is supported
26
+ */
27
+ getMetricsAdapter() {
28
+ return null;
29
+ }
16
30
  get name() {
17
31
  return this.metadata.name;
18
32
  }
@@ -57,15 +71,16 @@ export class BaseAgentAdapter {
57
71
  }
58
72
  }
59
73
  /**
60
- * Check if agent is installed via which command
74
+ * Check if agent is installed (cross-platform)
61
75
  */
62
76
  async isInstalled() {
63
77
  if (!this.metadata.cliCommand) {
64
78
  return true; // Built-in agents are always "installed"
65
79
  }
66
80
  try {
67
- const result = await exec('which', [this.metadata.cliCommand]);
68
- return result.code === 0;
81
+ // Use commandExists which handles Windows (where) vs Unix (which)
82
+ const { commandExists } = await import('../../utils/which.js');
83
+ return await commandExists(this.metadata.cliCommand);
69
84
  }
70
85
  catch {
71
86
  return false;
@@ -90,14 +105,72 @@ export class BaseAgentAdapter {
90
105
  * Run the agent
91
106
  */
92
107
  async run(args, envOverrides) {
93
- logger.info(`Starting ${this.displayName}...`);
108
+ // Generate session ID at the very start - this is the source of truth
109
+ // All components (logger, metrics, proxy) will use this same session ID
110
+ const sessionId = randomUUID();
94
111
  // Merge environment variables
95
112
  let env = {
96
113
  ...process.env,
97
- ...envOverrides
114
+ ...envOverrides,
115
+ CODEMIE_SESSION_ID: sessionId
98
116
  };
99
- // Setup proxy if needed
117
+ // Initialize logger with session ID
118
+ const { logger } = await import('../../utils/logger.js');
119
+ logger.setSessionId(sessionId);
120
+ // Log all environment variables for debugging (sanitized)
121
+ logger.debug('=== Environment Variables (All) ===');
122
+ const sortedEnvKeys = Object.keys(env).sort();
123
+ for (const key of sortedEnvKeys) {
124
+ const value = env[key];
125
+ if (value) {
126
+ // Mask sensitive values (API keys, tokens, secrets)
127
+ if (key.toLowerCase().includes('key') ||
128
+ key.toLowerCase().includes('token') ||
129
+ key.toLowerCase().includes('secret') ||
130
+ key.toLowerCase().includes('password')) {
131
+ const masked = value.length > 12
132
+ ? value.substring(0, 8) + '***' + value.substring(value.length - 4)
133
+ : '***';
134
+ logger.debug(`${key}: ${masked}`);
135
+ }
136
+ else {
137
+ logger.debug(`${key}: ${value}`);
138
+ }
139
+ }
140
+ }
141
+ logger.debug('=== End Environment Variables ===');
142
+ // Setup metrics orchestrator with the session ID
143
+ const metricsAdapter = this.getMetricsAdapter();
144
+ if (metricsAdapter && env.CODEMIE_PROVIDER) {
145
+ this.metricsOrchestrator = new MetricsOrchestrator({
146
+ agentName: this.metadata.name,
147
+ provider: env.CODEMIE_PROVIDER,
148
+ workingDirectory: process.cwd(),
149
+ metricsAdapter,
150
+ sessionId // Pass the session ID explicitly
151
+ });
152
+ // Take pre-spawn snapshot
153
+ await this.metricsOrchestrator.beforeAgentSpawn();
154
+ }
155
+ // Setup proxy with the session ID (already in env)
100
156
  await this.setupProxy(env);
157
+ // Show welcome message with session info
158
+ const profileName = env.CODEMIE_PROFILE_NAME || 'default';
159
+ const provider = env.CODEMIE_PROVIDER || 'unknown';
160
+ const cliVersion = env.CODEMIE_CLI_VERSION || 'unknown';
161
+ const model = env.CODEMIE_MODEL || 'unknown';
162
+ // Display ASCII logo with configuration
163
+ console.log(renderCodeMieLogo({
164
+ profile: profileName,
165
+ provider,
166
+ model,
167
+ agent: this.metadata.name,
168
+ cliVersion,
169
+ sessionId
170
+ }));
171
+ // Show random welcome message
172
+ console.log(chalk.cyan.bold(getRandomWelcomeMessage()));
173
+ console.log(''); // Empty line for spacing
101
174
  // Apply argument transformations
102
175
  const transformedArgs = this.metadata.argumentTransform
103
176
  ? this.metadata.argumentTransform(args, this.extractConfig(env))
@@ -111,11 +184,22 @@ export class BaseAgentAdapter {
111
184
  }
112
185
  try {
113
186
  // Spawn the CLI command with inherited stdio
187
+ // On Windows, use shell: true to resolve .cmd/.bat executables
188
+ const isWindows = process.platform === 'win32';
114
189
  const child = spawn(this.metadata.cliCommand, transformedArgs, {
115
190
  stdio: 'inherit',
116
- env
191
+ env,
192
+ shell: isWindows, // Windows needs shell to resolve .cmd files
193
+ windowsHide: isWindows // Hide console window on Windows
117
194
  });
118
- // Define cleanup function for proxy
195
+ // Take post-spawn snapshot after process starts
196
+ if (this.metricsOrchestrator) {
197
+ // Don't await - let it run in background
198
+ this.metricsOrchestrator.afterAgentSpawn().catch(err => {
199
+ logger.error('[MetricsOrchestrator] Post-spawn snapshot failed:', err);
200
+ });
201
+ }
202
+ // Define cleanup function for proxy and metrics
119
203
  const cleanup = async () => {
120
204
  if (this.proxy) {
121
205
  logger.debug(`[${this.displayName}] Stopping proxy and flushing analytics...`);
@@ -144,6 +228,9 @@ export class BaseAgentAdapter {
144
228
  // Remove signal handlers to prevent memory leaks
145
229
  process.off('SIGINT', sigintHandler);
146
230
  process.off('SIGTERM', sigtermHandler);
231
+ // Show shutting down message
232
+ console.log(''); // Empty line for spacing
233
+ console.log(chalk.yellow('Shutting down...'));
147
234
  // Grace period: wait for any final API calls from the external agent
148
235
  // Many agents (Claude, Gemini, Codex) send telemetry/session data on shutdown
149
236
  if (this.proxy) {
@@ -151,12 +238,23 @@ export class BaseAgentAdapter {
151
238
  logger.debug(`[${this.displayName}] Waiting ${gracePeriodMs}ms grace period for final API calls...`);
152
239
  await new Promise(resolve => setTimeout(resolve, gracePeriodMs));
153
240
  }
241
+ // Finalize metrics on agent exit
242
+ if (this.metricsOrchestrator && code !== null) {
243
+ await this.metricsOrchestrator.onAgentExit(code);
244
+ }
154
245
  // Clean up proxy
155
246
  await cleanup();
156
247
  // Run afterRun hook
157
248
  if (this.metadata.lifecycle?.afterRun && code !== null) {
158
249
  await this.metadata.lifecycle.afterRun(code);
159
250
  }
251
+ // Show goodbye message with random easter egg
252
+ console.log(chalk.cyan.bold(getRandomGoodbyeMessage()));
253
+ console.log(''); // Spacing before powered by
254
+ // Create custom magenta-purple gradient for CodeMie branding
255
+ const codeMieGradient = gradient(['#ff00ff', '#9933ff']);
256
+ console.log(codeMieGradient('Powered by AI/Run CodeMie CLI'));
257
+ console.log(''); // Empty line for spacing
160
258
  if (code === 0) {
161
259
  resolve();
162
260
  }
@@ -194,10 +292,23 @@ export class BaseAgentAdapter {
194
292
  throw new Error('No API URL found for SSO authentication');
195
293
  }
196
294
  // Parse timeout from environment (in seconds, convert to milliseconds)
197
- const timeoutSeconds = env.CODEMIE_TIMEOUT ? parseInt(env.CODEMIE_TIMEOUT, 10) : 300;
295
+ // Default to 0 (unlimited) for AI requests that can take a long time
296
+ const timeoutSeconds = env.CODEMIE_TIMEOUT ? parseInt(env.CODEMIE_TIMEOUT, 10) : 0;
198
297
  const timeoutMs = timeoutSeconds * 1000;
199
298
  // Extract config values from environment (includes CLI overrides)
200
299
  const config = this.extractConfig(env);
300
+ // Get session ID from environment (set at agent start)
301
+ const sessionId = env.CODEMIE_SESSION_ID;
302
+ // Deserialize profile config (read once at CLI level)
303
+ let profileConfig = undefined;
304
+ if (env.CODEMIE_PROFILE_CONFIG) {
305
+ try {
306
+ profileConfig = JSON.parse(env.CODEMIE_PROFILE_CONFIG);
307
+ }
308
+ catch (error) {
309
+ logger.debug('[BaseAgentAdapter] Failed to parse profile config:', error);
310
+ }
311
+ }
201
312
  // Create and start the proxy with full config
202
313
  this.proxy = new CodeMieProxy({
203
314
  targetApiUrl,
@@ -205,7 +316,11 @@ export class BaseAgentAdapter {
205
316
  timeout: timeoutMs,
206
317
  model: config.model,
207
318
  provider: config.provider,
208
- integrationId: env.CODEMIE_INTEGRATION_ID
319
+ profile: env.CODEMIE_PROFILE_NAME,
320
+ integrationId: env.CODEMIE_INTEGRATION_ID,
321
+ sessionId,
322
+ version: env.CODEMIE_CLI_VERSION,
323
+ profileConfig
209
324
  });
210
325
  const { url } = await this.proxy.start();
211
326
  const { baseUrl, apiKey } = this.metadata.ssoConfig.envOverrides;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseAgentAdapter.js","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BaseAgentAdapter.js","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Base Metrics Adapter
3
+ *
4
+ * Generic implementation of AgentMetricsSupport interface.
5
+ * Provides default implementations that work for most agents.
6
+ * Agent plugins override only what's specific to them.
7
+ */
8
+ import type { AgentMetricsSupport, MetricSnapshot, MetricDelta, UserPrompt } from '../../metrics/types.js';
9
+ import type { AgentMetadata } from './types.js';
10
+ export declare abstract class BaseMetricsAdapter implements AgentMetricsSupport {
11
+ protected agentName: string;
12
+ protected metadata?: AgentMetadata | undefined;
13
+ constructor(agentName: string, metadata?: AgentMetadata | undefined);
14
+ /**
15
+ * Get data paths - can be overridden or uses metadata.dataPaths
16
+ */
17
+ getDataPaths(): {
18
+ sessionsDir: string;
19
+ settingsDir?: string;
20
+ };
21
+ /**
22
+ * Check if file matches session pattern - MUST be overridden
23
+ */
24
+ abstract matchesSessionPattern(path: string): boolean;
25
+ /**
26
+ * Extract session ID from path - MUST be overridden
27
+ */
28
+ abstract extractSessionId(path: string): string;
29
+ /**
30
+ * Parse session file - MUST be overridden
31
+ */
32
+ abstract parseSessionFile(path: string): Promise<MetricSnapshot>;
33
+ /**
34
+ * Parse incremental metrics from session file
35
+ * Returns only new deltas, skipping already-processed record IDs
36
+ * MUST be overridden if delta-based metrics are used
37
+ */
38
+ parseIncrementalMetrics(_path: string, _processedRecordIds: Set<string>, _attachedUserPromptTexts?: Set<string>): Promise<{
39
+ deltas: MetricDelta[];
40
+ lastLine: number;
41
+ newlyAttachedPrompts?: string[];
42
+ }>;
43
+ /**
44
+ * Get user prompts for a specific session
45
+ * Each agent implements this to parse their specific history format
46
+ * MUST be overridden by each agent adapter
47
+ */
48
+ getUserPrompts(_sessionId: string, _fromTimestamp?: number, _toTimestamp?: number): Promise<UserPrompt[]>;
49
+ /**
50
+ * Get watermark strategy - default: hash
51
+ * Override if agent uses different strategy
52
+ */
53
+ getWatermarkStrategy(): 'hash' | 'line' | 'object';
54
+ /**
55
+ * Get initialization delay - default: 500ms
56
+ * Override if agent needs different delay
57
+ */
58
+ getInitDelay(): number;
59
+ /**
60
+ * Utility: Get agent home directory
61
+ */
62
+ protected getAgentHome(subpath?: string): string;
63
+ }
64
+ //# sourceMappingURL=BaseMetricsAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseMetricsAdapter.d.ts","sourceRoot":"","sources":["../../../src/agents/core/BaseMetricsAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC3G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,8BAAsB,kBAAmB,YAAW,mBAAmB;IAEnE,SAAS,CAAC,SAAS,EAAE,MAAM;IAC3B,SAAS,CAAC,QAAQ,CAAC,EAAE,aAAa;gBADxB,SAAS,EAAE,MAAM,EACjB,QAAQ,CAAC,EAAE,aAAa,YAAA;IAGpC;;OAEG;IACH,YAAY,IAAI;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB;IAgBD;;OAEG;IACH,QAAQ,CAAC,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAErD;;OAEG;IACH,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAE/C;;OAEG;IACH,QAAQ,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAEhE;;;;OAIG;IACG,uBAAuB,CAC3B,KAAK,EAAE,MAAM,EACb,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,EAChC,wBAAwB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GACrC,OAAO,CAAC;QACT,MAAM,EAAE,WAAW,EAAE,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;KACjC,CAAC;IAKF;;;;OAIG;IACG,cAAc,CAClB,UAAU,EAAE,MAAM,EAClB,cAAc,CAAC,EAAE,MAAM,EACvB,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,UAAU,EAAE,CAAC;IAKxB;;;OAGG;IACH,oBAAoB,IAAI,MAAM,GAAG,MAAM,GAAG,QAAQ;IAIlD;;;OAGG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM;CAKjD"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Base Metrics Adapter
3
+ *
4
+ * Generic implementation of AgentMetricsSupport interface.
5
+ * Provides default implementations that work for most agents.
6
+ * Agent plugins override only what's specific to them.
7
+ */
8
+ import { homedir } from 'os';
9
+ import { join } from 'path';
10
+ export class BaseMetricsAdapter {
11
+ agentName;
12
+ metadata;
13
+ constructor(agentName, metadata) {
14
+ this.agentName = agentName;
15
+ this.metadata = metadata;
16
+ }
17
+ /**
18
+ * Get data paths - can be overridden or uses metadata.dataPaths
19
+ */
20
+ getDataPaths() {
21
+ if (this.metadata?.dataPaths) {
22
+ // Use dataPaths from metadata
23
+ const home = this.metadata.dataPaths.home;
24
+ const sessions = this.metadata.dataPaths.sessions || '';
25
+ return {
26
+ sessionsDir: join(home.replace('~', homedir()), sessions),
27
+ settingsDir: home.replace('~', homedir())
28
+ };
29
+ }
30
+ // Fallback: must be overridden
31
+ throw new Error(`${this.agentName}: getDataPaths() must be implemented or metadata.dataPaths must be provided`);
32
+ }
33
+ /**
34
+ * Parse incremental metrics from session file
35
+ * Returns only new deltas, skipping already-processed record IDs
36
+ * MUST be overridden if delta-based metrics are used
37
+ */
38
+ async parseIncrementalMetrics(_path, _processedRecordIds, _attachedUserPromptTexts) {
39
+ // Default implementation: not supported
40
+ throw new Error(`${this.agentName}: parseIncrementalMetrics() not implemented`);
41
+ }
42
+ /**
43
+ * Get user prompts for a specific session
44
+ * Each agent implements this to parse their specific history format
45
+ * MUST be overridden by each agent adapter
46
+ */
47
+ async getUserPrompts(_sessionId, _fromTimestamp, _toTimestamp) {
48
+ // Default implementation: not supported
49
+ throw new Error(`${this.agentName}: getUserPrompts() not implemented`);
50
+ }
51
+ /**
52
+ * Get watermark strategy - default: hash
53
+ * Override if agent uses different strategy
54
+ */
55
+ getWatermarkStrategy() {
56
+ return 'hash'; // Default: full-file hash
57
+ }
58
+ /**
59
+ * Get initialization delay - default: 500ms
60
+ * Override if agent needs different delay
61
+ */
62
+ getInitDelay() {
63
+ return 500; // Default: 500ms
64
+ }
65
+ /**
66
+ * Utility: Get agent home directory
67
+ */
68
+ getAgentHome(subpath) {
69
+ const home = homedir();
70
+ const agentDir = join(home, `.${this.agentName}`);
71
+ return subpath ? join(agentDir, subpath) : agentDir;
72
+ }
73
+ }
74
+ //# sourceMappingURL=BaseMetricsAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseMetricsAdapter.js","sourceRoot":"","sources":["../../../src/agents/core/BaseMetricsAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAI5B,MAAM,OAAgB,kBAAkB;IAE1B;IACA;IAFZ,YACY,SAAiB,EACjB,QAAwB;QADxB,cAAS,GAAT,SAAS,CAAQ;QACjB,aAAQ,GAAR,QAAQ,CAAgB;IACjC,CAAC;IAEJ;;OAEG;IACH,YAAY;QAIV,IAAI,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC;YAC7B,8BAA8B;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,IAAI,EAAE,CAAC;YAExD,OAAO;gBACL,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,QAAQ,CAAC;gBACzD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC;aAC1C,CAAC;QACJ,CAAC;QAED,+BAA+B;QAC/B,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,6EAA6E,CAAC,CAAC;IAClH,CAAC;IAiBD;;;;OAIG;IACH,KAAK,CAAC,uBAAuB,CAC3B,KAAa,EACb,mBAAgC,EAChC,wBAAsC;QAMtC,wCAAwC;QACxC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,6CAA6C,CAAC,CAAC;IAClF,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,cAAc,CAClB,UAAkB,EAClB,cAAuB,EACvB,YAAqB;QAErB,wCAAwC;QACxC,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,SAAS,oCAAoC,CAAC,CAAC;IACzE,CAAC;IAED;;;OAGG;IACH,oBAAoB;QAClB,OAAO,MAAM,CAAC,CAAC,0BAA0B;IAC3C,CAAC;IAED;;;OAGG;IACH,YAAY;QACV,OAAO,GAAG,CAAC,CAAC,iBAAiB;IAC/B,CAAC;IAED;;OAEG;IACO,YAAY,CAAC,OAAgB;QACrC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAClD,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IACtD,CAAC;CACF"}
@@ -58,6 +58,7 @@ export interface AgentMetadata {
58
58
  sessions?: string;
59
59
  settings?: string;
60
60
  cache?: string;
61
+ history?: string;
61
62
  };
62
63
  analyticsAdapter?: AgentAnalyticsAdapter;
63
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Claude Metrics Adapter
3
+ *
4
+ * Implements metrics support for Claude Code agent.
5
+ * Handles Claude-specific file formats and parsing logic.
6
+ */
7
+ import { BaseMetricsAdapter } from '../core/BaseMetricsAdapter.js';
8
+ import type { MetricSnapshot, MetricDelta, UserPrompt } from '../../metrics/types.js';
9
+ export declare class ClaudeMetricsAdapter extends BaseMetricsAdapter {
10
+ /**
11
+ * Check if file matches Claude session pattern
12
+ * Pattern: ~/.claude/projects/{hash}/{session-id}.jsonl
13
+ * Note: Claude uses JSONL (JSON Lines) format, not regular JSON
14
+ * Matches UUID format but EXCLUDES agent-* files (those are sub-agents)
15
+ */
16
+ matchesSessionPattern(path: string): boolean;
17
+ /**
18
+ * Find all agent-*.jsonl files in the same directory as the session file
19
+ * that belong to the same Claude sessionId (filters by sessionId)
20
+ *
21
+ * Agent files contain sub-agent/tool execution data with potentially different models
22
+ *
23
+ * @param sessionFilePath - Path to the main session file
24
+ * @returns Array of agent file paths matching the same sessionId
25
+ */
26
+ private findAgentFiles;
27
+ /**
28
+ * Parse all models from agent files
29
+ * Agent files may contain different models used by sub-agents/tools
30
+ *
31
+ * @param agentFilePaths - Array of agent file paths
32
+ * @returns Map of model names to call counts
33
+ */
34
+ private parseModelsFromAgentFiles;
35
+ /**
36
+ * Extract session ID from Claude file path
37
+ * Examples:
38
+ * ~/.claude/projects/abc123/session-def-456.jsonl → session-def-456
39
+ * ~/.claude/projects/abc123/agent-abc123de.jsonl → agent-abc123de
40
+ */
41
+ extractSessionId(path: string): string;
42
+ /**
43
+ * Parse Claude session file (multi-line JSON objects) and extract metrics
44
+ * Each object contains a conversation turn with message data
45
+ */
46
+ parseSessionFile(path: string): Promise<MetricSnapshot>;
47
+ /**
48
+ * Extract file operation details from tool input and result
49
+ * Uses raw tool names (provider-specific, e.g., "Write", "Edit", "Read")
50
+ *
51
+ * @param toolName - Tool name (Read, Write, Edit, etc.)
52
+ * @param input - Tool input parameters
53
+ * @param toolUseResult - Tool execution result with structured data (optional)
54
+ */
55
+ private extractFileOperation;
56
+ /**
57
+ * Extract file format from path
58
+ */
59
+ private extractFormat;
60
+ /**
61
+ * Detect programming language from file extension
62
+ */
63
+ private detectLanguage;
64
+ /**
65
+ * Build aggregated tool usage summary from detailed tool calls
66
+ */
67
+ private buildToolUsageSummary;
68
+ /**
69
+ * Claude uses hash-based watermark (full file rewrite)
70
+ */
71
+ getWatermarkStrategy(): 'hash' | 'line' | 'object';
72
+ /**
73
+ * Claude initialization delay: 500ms
74
+ */
75
+ getInitDelay(): number;
76
+ /**
77
+ * Get user prompts for a specific session
78
+ * Claude stores user prompts in history file (path from metadata)
79
+ *
80
+ * @param sessionId - Claude session ID
81
+ * @param fromTimestamp - Start timestamp (Unix ms) - optional
82
+ * @param toTimestamp - End timestamp (Unix ms) - optional
83
+ * @returns Array of user prompts
84
+ */
85
+ getUserPrompts(sessionId: string, fromTimestamp?: number, toTimestamp?: number): Promise<UserPrompt[]>;
86
+ /**
87
+ * Parse session file and extract incremental delta records
88
+ * Returns array of delta records for turns with token usage
89
+ *
90
+ * Automatically discovers and parses ALL agent files for the session
91
+ * to capture sub-agents/sidechains that share the same Claude sessionId
92
+ *
93
+ * @param path - Path to agent session file
94
+ * @param processedRecordIds - Set of record IDs already written to metrics
95
+ * @param attachedUserPromptTexts - Set of user prompt texts already attached (persisted from sync state)
96
+ */
97
+ parseIncrementalMetrics(path: string, processedRecordIds?: Set<string>, attachedUserPromptTexts?: Set<string>): Promise<{
98
+ deltas: MetricDelta[];
99
+ lastLine: number;
100
+ newlyAttachedPrompts: string[];
101
+ }>;
102
+ /**
103
+ * Parse a single agent file for deltas
104
+ * Extracted from parseIncrementalMetrics for reuse across multiple files
105
+ *
106
+ * @param path - Path to agent file
107
+ * @param processedRecordIds - Set of record IDs already processed
108
+ * @param attachedUserPrompts - Set of user prompt display texts that have been attached (shared across files)
109
+ */
110
+ private parseAgentFileDeltas;
111
+ }
112
+ //# sourceMappingURL=claude.metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude.metrics.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/claude.metrics.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EAKX,UAAU,EACX,MAAM,wBAAwB,CAAC;AAKhC,qBAAa,oBAAqB,SAAQ,kBAAkB;IAG1D;;;;;OAKG;IACH,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAW5C;;;;;;;;OAQG;YACW,cAAc;IA8D5B;;;;;;OAMG;YACW,yBAAyB;IAsBvC;;;;;OAKG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAKtC;;;OAGG;IACG,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IA6I7D;;;;;;;OAOG;IACH,OAAO,CAAC,oBAAoB;IA2E5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAKrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAyBtB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAiC7B;;OAEG;IACH,oBAAoB,IAAI,MAAM,GAAG,MAAM,GAAG,QAAQ;IAIlD;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;;;;;;;OAQG;IACG,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,aAAa,CAAC,EAAE,MAAM,EACtB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,UAAU,EAAE,CAAC;IAwBxB;;;;;;;;;;OAUG;IACG,uBAAuB,CAC3B,IAAI,EAAE,MAAM,EACZ,kBAAkB,GAAE,GAAG,CAAC,MAAM,CAAa,EAC3C,uBAAuB,GAAE,GAAG,CAAC,MAAM,CAAa,GAC/C,OAAO,CAAC;QACT,MAAM,EAAE,WAAW,EAAE,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,oBAAoB,EAAE,MAAM,EAAE,CAAC;KAChC,CAAC;IAoCF;;;;;;;OAOG;YACW,oBAAoB;CAsPnC"}