@codemieai/code 0.0.27 → 0.0.29

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 (484) hide show
  1. package/README.md +9 -11
  2. package/bin/agent-executor.js +1 -1
  3. package/dist/agents/codemie-code/agent.js +1 -1
  4. package/dist/agents/codemie-code/config.d.ts +1 -1
  5. package/dist/agents/codemie-code/config.d.ts.map +1 -1
  6. package/dist/agents/codemie-code/config.js +3 -4
  7. package/dist/agents/codemie-code/config.js.map +1 -1
  8. package/dist/agents/codemie-code/index.js +1 -1
  9. package/dist/agents/codemie-code/storage/todoStorage.d.ts.map +1 -1
  10. package/dist/agents/codemie-code/storage/todoStorage.js +2 -2
  11. package/dist/agents/codemie-code/storage/todoStorage.js.map +1 -1
  12. package/dist/agents/codemie-code/tools/index.js +1 -1
  13. package/dist/agents/codemie-code/tools/index.js.map +1 -1
  14. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  15. package/dist/agents/core/AgentCLI.js +6 -10
  16. package/dist/agents/core/AgentCLI.js.map +1 -1
  17. package/dist/agents/core/BaseAgentAdapter.d.ts +17 -9
  18. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  19. package/dist/agents/core/BaseAgentAdapter.js +80 -72
  20. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  21. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts +258 -0
  22. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts.map +1 -0
  23. package/dist/agents/core/extension/BaseExtensionInstaller.js +522 -0
  24. package/dist/agents/core/extension/BaseExtensionInstaller.js.map +1 -0
  25. package/dist/agents/core/lifecycle-helpers.d.ts.map +1 -1
  26. package/dist/agents/core/lifecycle-helpers.js +16 -2
  27. package/dist/agents/core/lifecycle-helpers.js.map +1 -1
  28. package/dist/agents/core/metrics/index.d.ts +0 -2
  29. package/dist/agents/core/metrics/index.d.ts.map +1 -1
  30. package/dist/agents/core/metrics/index.js +0 -3
  31. package/dist/agents/core/metrics/index.js.map +1 -1
  32. package/dist/agents/core/metrics/types.d.ts +4 -232
  33. package/dist/agents/core/metrics/types.d.ts.map +1 -1
  34. package/dist/agents/core/metrics/types.js +2 -2
  35. package/dist/agents/core/session/BaseProcessor.d.ts +72 -0
  36. package/dist/agents/core/session/BaseProcessor.d.ts.map +1 -0
  37. package/dist/agents/core/session/BaseProcessor.js +9 -0
  38. package/dist/agents/core/session/BaseProcessor.js.map +1 -0
  39. package/dist/agents/core/session/BaseSessionAdapter.d.ts +99 -0
  40. package/dist/agents/core/session/BaseSessionAdapter.d.ts.map +1 -0
  41. package/dist/agents/core/session/BaseSessionAdapter.js +9 -0
  42. package/dist/agents/core/session/BaseSessionAdapter.js.map +1 -0
  43. package/dist/agents/core/session/SessionStore.d.ts +23 -0
  44. package/dist/agents/core/session/SessionStore.d.ts.map +1 -0
  45. package/dist/agents/core/session/SessionStore.js +75 -0
  46. package/dist/agents/core/session/SessionStore.js.map +1 -0
  47. package/dist/agents/core/session/session-config.d.ts +27 -0
  48. package/dist/agents/core/session/session-config.d.ts.map +1 -0
  49. package/dist/agents/core/session/session-config.js +61 -0
  50. package/dist/agents/core/session/session-config.js.map +1 -0
  51. package/dist/agents/core/session/types.d.ts +87 -0
  52. package/dist/agents/core/session/types.d.ts.map +1 -0
  53. package/dist/agents/core/session/types.js +8 -0
  54. package/dist/agents/core/session/types.js.map +1 -0
  55. package/dist/agents/core/session/utils/jsonl-reader.d.ts +15 -0
  56. package/dist/agents/core/session/utils/jsonl-reader.d.ts.map +1 -0
  57. package/dist/agents/core/session/utils/jsonl-reader.js +33 -0
  58. package/dist/agents/core/session/utils/jsonl-reader.js.map +1 -0
  59. package/dist/agents/core/session/utils/jsonl-writer.d.ts +26 -0
  60. package/dist/agents/core/session/utils/jsonl-writer.d.ts.map +1 -0
  61. package/dist/agents/core/session/utils/jsonl-writer.js +56 -0
  62. package/dist/agents/core/session/utils/jsonl-writer.js.map +1 -0
  63. package/dist/agents/core/types.d.ts +78 -11
  64. package/dist/agents/core/types.d.ts.map +1 -1
  65. package/dist/agents/plugins/claude/claude-message-types.d.ts +74 -0
  66. package/dist/agents/plugins/claude/claude-message-types.d.ts.map +1 -0
  67. package/dist/agents/plugins/claude/claude-message-types.js +8 -0
  68. package/dist/agents/plugins/claude/claude-message-types.js.map +1 -0
  69. package/dist/agents/plugins/claude/claude.plugin-installer.d.ts +53 -0
  70. package/dist/agents/plugins/claude/claude.plugin-installer.d.ts.map +1 -0
  71. package/dist/agents/plugins/claude/claude.plugin-installer.js +63 -0
  72. package/dist/agents/plugins/claude/claude.plugin-installer.js.map +1 -0
  73. package/dist/agents/plugins/claude/claude.plugin.d.ts +26 -0
  74. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -0
  75. package/dist/agents/plugins/{claude.plugin.js → claude/claude.plugin.js} +20 -11
  76. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -0
  77. package/dist/agents/plugins/claude/claude.session.d.ts +60 -0
  78. package/dist/agents/plugins/claude/claude.session.d.ts.map +1 -0
  79. package/dist/agents/plugins/claude/claude.session.js +339 -0
  80. package/dist/agents/plugins/claude/claude.session.js.map +1 -0
  81. package/dist/agents/plugins/claude/plugin/.claude-plugin/local-install.json +15 -0
  82. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +9 -0
  83. package/dist/agents/plugins/claude/plugin/README.md +299 -0
  84. package/dist/agents/plugins/claude/plugin/claude-templates/README.md +539 -0
  85. package/dist/agents/plugins/claude/plugin/claude-templates/templates/CLAUDE.md.template +511 -0
  86. package/dist/agents/plugins/claude/plugin/claude-templates/templates/INDEX.md +205 -0
  87. package/dist/agents/plugins/claude/plugin/claude-templates/templates/TEMPLATE_SIZES.md +74 -0
  88. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/api/api-patterns.md.template +207 -0
  89. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/layered-architecture.md.template +143 -0
  90. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/project-structure.md.template +127 -0
  91. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/data/database-patterns.md.template +168 -0
  92. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/development/development-practices.md.template +210 -0
  93. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/integration/external-integrations.md.template +160 -0
  94. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/security/security-practices.md.template +170 -0
  95. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/code-quality.md.template +150 -0
  96. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/git-workflow.md.template +177 -0
  97. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/testing/testing-patterns.md.template +143 -0
  98. package/dist/agents/plugins/claude/plugin/commands/README.md +0 -0
  99. package/dist/agents/plugins/claude/plugin/commands/codemie-catchup.md +10 -0
  100. package/dist/agents/plugins/claude/plugin/commands/codemie-init.md +731 -0
  101. package/dist/agents/plugins/claude/plugin/commands/memory-add.md +44 -0
  102. package/dist/agents/plugins/claude/plugin/commands/memory-init.md +18 -0
  103. package/dist/agents/plugins/claude/plugin/commands/memory-refresh.md +54 -0
  104. package/dist/agents/plugins/claude/plugin/hooks/hooks.json +71 -0
  105. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts +51 -0
  106. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts.map +1 -0
  107. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js +840 -0
  108. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js.map +1 -0
  109. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts +37 -0
  110. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts.map +1 -0
  111. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js +275 -0
  112. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js.map +1 -0
  113. package/dist/agents/plugins/codemie-code.plugin.js +1 -1
  114. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  115. package/dist/agents/plugins/gemini/extension/README.md +88 -0
  116. package/dist/agents/plugins/gemini/extension/gemini-extension.json +11 -0
  117. package/dist/agents/plugins/gemini/extension/hooks/hooks.json +65 -0
  118. package/dist/agents/plugins/gemini/gemini.extension-installer.d.ts +49 -0
  119. package/dist/agents/plugins/gemini/gemini.extension-installer.d.ts.map +1 -0
  120. package/dist/agents/plugins/gemini/gemini.extension-installer.js +63 -0
  121. package/dist/agents/plugins/gemini/gemini.extension-installer.js.map +1 -0
  122. package/dist/agents/plugins/gemini/gemini.hook-transformer.d.ts +43 -0
  123. package/dist/agents/plugins/gemini/gemini.hook-transformer.d.ts.map +1 -0
  124. package/dist/agents/plugins/gemini/gemini.hook-transformer.js +57 -0
  125. package/dist/agents/plugins/gemini/gemini.hook-transformer.js.map +1 -0
  126. package/dist/agents/plugins/gemini/gemini.plugin.d.ts +32 -0
  127. package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -0
  128. package/dist/agents/plugins/gemini/gemini.plugin.js +136 -0
  129. package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -0
  130. package/dist/agents/plugins/gemini/gemini.session-adapter.d.ts +68 -0
  131. package/dist/agents/plugins/gemini/gemini.session-adapter.d.ts.map +1 -0
  132. package/dist/agents/plugins/gemini/gemini.session-adapter.js +268 -0
  133. package/dist/agents/plugins/gemini/gemini.session-adapter.js.map +1 -0
  134. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts +36 -0
  135. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts.map +1 -0
  136. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js +186 -0
  137. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js.map +1 -0
  138. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.d.ts +32 -0
  139. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.d.ts.map +1 -0
  140. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.js +193 -0
  141. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.js.map +1 -0
  142. package/dist/agents/plugins/gemini/session/utils/token-aggregator.d.ts +26 -0
  143. package/dist/agents/plugins/gemini/session/utils/token-aggregator.d.ts.map +1 -0
  144. package/dist/agents/plugins/gemini/session/utils/token-aggregator.js +38 -0
  145. package/dist/agents/plugins/gemini/session/utils/token-aggregator.js.map +1 -0
  146. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.d.ts +33 -0
  147. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.d.ts.map +1 -0
  148. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.js +58 -0
  149. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.js.map +1 -0
  150. package/dist/agents/plugins/gemini/session/utils/turn-detector.d.ts +70 -0
  151. package/dist/agents/plugins/gemini/session/utils/turn-detector.d.ts.map +1 -0
  152. package/dist/agents/plugins/gemini/session/utils/turn-detector.js +86 -0
  153. package/dist/agents/plugins/gemini/session/utils/turn-detector.js.map +1 -0
  154. package/dist/agents/registry.d.ts +7 -2
  155. package/dist/agents/registry.d.ts.map +1 -1
  156. package/dist/agents/registry.js +17 -8
  157. package/dist/agents/registry.js.map +1 -1
  158. package/dist/cli/commands/analytics/data-loader.d.ts +1 -1
  159. package/dist/cli/commands/analytics/data-loader.d.ts.map +1 -1
  160. package/dist/cli/commands/analytics/data-loader.js +3 -3
  161. package/dist/cli/commands/analytics/data-loader.js.map +1 -1
  162. package/dist/cli/commands/analytics/index.js +1 -1
  163. package/dist/cli/commands/analytics/index.js.map +1 -1
  164. package/dist/cli/commands/doctor/checks/AIConfigCheck.js +1 -1
  165. package/dist/cli/commands/doctor/checks/AIConfigCheck.js.map +1 -1
  166. package/dist/cli/commands/doctor/checks/AwsCliCheck.js +1 -1
  167. package/dist/cli/commands/doctor/checks/AwsCliCheck.js.map +1 -1
  168. package/dist/cli/commands/doctor/checks/NpmCheck.js +1 -1
  169. package/dist/cli/commands/doctor/checks/NpmCheck.js.map +1 -1
  170. package/dist/cli/commands/doctor/checks/PythonCheck.d.ts +13 -0
  171. package/dist/cli/commands/doctor/checks/PythonCheck.d.ts.map +1 -1
  172. package/dist/cli/commands/doctor/checks/PythonCheck.js +91 -32
  173. package/dist/cli/commands/doctor/checks/PythonCheck.js.map +1 -1
  174. package/dist/cli/commands/doctor/checks/UvCheck.js +1 -1
  175. package/dist/cli/commands/doctor/checks/UvCheck.js.map +1 -1
  176. package/dist/cli/commands/doctor/types.d.ts +1 -1
  177. package/dist/cli/commands/doctor/types.d.ts.map +1 -1
  178. package/dist/cli/commands/hook.d.ts +7 -0
  179. package/dist/cli/commands/hook.d.ts.map +1 -0
  180. package/dist/cli/commands/hook.js +788 -0
  181. package/dist/cli/commands/hook.js.map +1 -0
  182. package/dist/cli/commands/profile/auth.js +1 -1
  183. package/dist/cli/commands/profile/auth.js.map +1 -1
  184. package/dist/{utils/profile-display.d.ts → cli/commands/profile/display.d.ts} +3 -3
  185. package/dist/cli/commands/profile/display.d.ts.map +1 -0
  186. package/dist/{utils/profile-display.js → cli/commands/profile/display.js} +2 -2
  187. package/dist/cli/commands/profile/display.js.map +1 -0
  188. package/dist/cli/commands/profile/index.js +2 -2
  189. package/dist/cli/commands/profile/index.js.map +1 -1
  190. package/dist/cli/commands/setup.d.ts.map +1 -1
  191. package/dist/cli/commands/setup.js +4 -5
  192. package/dist/cli/commands/setup.js.map +1 -1
  193. package/dist/cli/commands/update.d.ts +3 -0
  194. package/dist/cli/commands/update.d.ts.map +1 -0
  195. package/dist/cli/commands/update.js +291 -0
  196. package/dist/cli/commands/update.js.map +1 -0
  197. package/dist/cli/commands/version.js +1 -1
  198. package/dist/cli/commands/version.js.map +1 -1
  199. package/dist/{utils → cli}/first-time.d.ts +4 -0
  200. package/dist/cli/first-time.d.ts.map +1 -0
  201. package/dist/{utils → cli}/first-time.js +27 -14
  202. package/dist/cli/first-time.js.map +1 -0
  203. package/dist/cli/index.js +6 -2
  204. package/dist/cli/index.js.map +1 -1
  205. package/dist/env/manager.d.ts.map +1 -1
  206. package/dist/env/manager.js +3 -4
  207. package/dist/env/manager.js.map +1 -1
  208. package/dist/frameworks/core/BaseFrameworkAdapter.js +1 -1
  209. package/dist/frameworks/core/BaseFrameworkAdapter.js.map +1 -1
  210. package/dist/frameworks/core/types.d.ts +1 -1
  211. package/dist/frameworks/plugins/bmad.plugin.js +2 -2
  212. package/dist/frameworks/plugins/bmad.plugin.js.map +1 -1
  213. package/dist/frameworks/plugins/speckit.plugin.d.ts.map +1 -1
  214. package/dist/frameworks/plugins/speckit.plugin.js +2 -3
  215. package/dist/frameworks/plugins/speckit.plugin.js.map +1 -1
  216. package/dist/index.d.ts +1 -1
  217. package/dist/index.d.ts.map +1 -1
  218. package/dist/index.js +1 -1
  219. package/dist/index.js.map +1 -1
  220. package/dist/migrations/001-config-rename.migration.d.ts.map +1 -1
  221. package/dist/migrations/001-config-rename.migration.js +2 -2
  222. package/dist/migrations/001-config-rename.migration.js.map +1 -1
  223. package/dist/migrations/002-consolidate-sessions.migration.d.ts +50 -0
  224. package/dist/migrations/002-consolidate-sessions.migration.d.ts.map +1 -0
  225. package/dist/migrations/002-consolidate-sessions.migration.js +220 -0
  226. package/dist/migrations/002-consolidate-sessions.migration.js.map +1 -0
  227. package/dist/migrations/index.d.ts +1 -0
  228. package/dist/migrations/index.d.ts.map +1 -1
  229. package/dist/migrations/index.js +3 -2
  230. package/dist/migrations/index.js.map +1 -1
  231. package/dist/migrations/tracker.d.ts.map +1 -1
  232. package/dist/migrations/tracker.js +2 -2
  233. package/dist/migrations/tracker.js.map +1 -1
  234. package/dist/providers/core/base/http-client.js +1 -1
  235. package/dist/providers/core/types.d.ts +1 -1
  236. package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -1
  237. package/dist/providers/plugins/ollama/ollama.template.js +3 -1
  238. package/dist/providers/plugins/ollama/ollama.template.js.map +1 -1
  239. package/dist/providers/plugins/sso/index.d.ts +1 -1
  240. package/dist/providers/plugins/sso/index.d.ts.map +1 -1
  241. package/dist/providers/plugins/sso/index.js +1 -1
  242. package/dist/providers/plugins/sso/index.js.map +1 -1
  243. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +1 -1
  244. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts.map +1 -1
  245. package/dist/providers/plugins/sso/proxy/plugins/index.js +3 -3
  246. package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
  247. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts +40 -0
  248. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts.map +1 -0
  249. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js +194 -0
  250. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js.map +1 -0
  251. package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts +1 -0
  252. package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts.map +1 -1
  253. package/dist/providers/plugins/sso/proxy/proxy-http-client.js +40 -6
  254. package/dist/providers/plugins/sso/proxy/proxy-http-client.js.map +1 -1
  255. package/dist/providers/plugins/sso/session/BaseProcessor.d.ts +72 -0
  256. package/dist/providers/plugins/sso/session/BaseProcessor.d.ts.map +1 -0
  257. package/dist/providers/plugins/sso/session/BaseProcessor.js +9 -0
  258. package/dist/providers/plugins/sso/session/BaseProcessor.js.map +1 -0
  259. package/dist/providers/plugins/sso/session/BaseSessionAdapter.d.ts +99 -0
  260. package/dist/providers/plugins/sso/session/BaseSessionAdapter.d.ts.map +1 -0
  261. package/dist/providers/plugins/sso/session/BaseSessionAdapter.js +9 -0
  262. package/dist/providers/plugins/sso/session/BaseSessionAdapter.js.map +1 -0
  263. package/dist/providers/plugins/sso/session/SessionSyncer.d.ts +36 -0
  264. package/dist/providers/plugins/sso/session/SessionSyncer.d.ts.map +1 -0
  265. package/dist/providers/plugins/sso/session/SessionSyncer.js +140 -0
  266. package/dist/providers/plugins/sso/session/SessionSyncer.js.map +1 -0
  267. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.d.ts +26 -0
  268. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.d.ts.map +1 -0
  269. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.js +146 -0
  270. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.js.map +1 -0
  271. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts +23 -0
  272. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts.map +1 -0
  273. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js +171 -0
  274. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js.map +1 -0
  275. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.d.ts +69 -0
  276. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.d.ts.map +1 -0
  277. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.js +7 -0
  278. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.js.map +1 -0
  279. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.d.ts +30 -0
  280. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.d.ts.map +1 -0
  281. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.js +79 -0
  282. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.js.map +1 -0
  283. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-aggregator.d.ts → session/processors/metrics/metrics-aggregator.d.ts} +6 -5
  284. package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.d.ts.map +1 -0
  285. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-aggregator.js → session/processors/metrics/metrics-aggregator.js} +20 -12
  286. package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.js.map +1 -0
  287. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sender.d.ts → session/processors/metrics/metrics-api-client.d.ts} +18 -11
  288. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts.map +1 -0
  289. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sender.js → session/processors/metrics/metrics-api-client.js} +143 -15
  290. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js.map +1 -0
  291. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-post-processor.d.ts → session/processors/metrics/metrics-post-processor.d.ts} +3 -3
  292. package/dist/providers/plugins/sso/session/processors/metrics/metrics-post-processor.d.ts.map +1 -0
  293. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-post-processor.js → session/processors/metrics/metrics-post-processor.js} +3 -3
  294. package/dist/providers/plugins/sso/session/processors/metrics/metrics-post-processor.js.map +1 -0
  295. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts +24 -0
  296. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts.map +1 -0
  297. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sync.plugin.js → session/processors/metrics/metrics-sync-processor.js} +94 -165
  298. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.js.map +1 -0
  299. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-types.d.ts → session/processors/metrics/metrics-types.d.ts} +2 -1
  300. package/dist/providers/plugins/sso/session/processors/metrics/metrics-types.d.ts.map +1 -0
  301. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-types.js → session/processors/metrics/metrics-types.js} +1 -1
  302. package/dist/providers/plugins/sso/session/processors/metrics/metrics-types.js.map +1 -0
  303. package/dist/providers/plugins/sso/session/utils/jsonl-reader.d.ts +15 -0
  304. package/dist/providers/plugins/sso/session/utils/jsonl-reader.d.ts.map +1 -0
  305. package/dist/providers/plugins/sso/session/utils/jsonl-reader.js +33 -0
  306. package/dist/providers/plugins/sso/session/utils/jsonl-reader.js.map +1 -0
  307. package/dist/providers/plugins/sso/session/utils/jsonl-writer.d.ts +26 -0
  308. package/dist/providers/plugins/sso/session/utils/jsonl-writer.d.ts.map +1 -0
  309. package/dist/providers/plugins/sso/{metrics/sync/sso.jsonl-writer.js → session/utils/jsonl-writer.js} +11 -27
  310. package/dist/providers/plugins/sso/session/utils/jsonl-writer.js.map +1 -0
  311. package/dist/providers/plugins/sso/sso.auth.js +1 -1
  312. package/dist/providers/plugins/sso/sso.auth.js.map +1 -1
  313. package/dist/providers/plugins/sso/sso.http-client.d.ts +1 -1
  314. package/dist/providers/plugins/sso/sso.http-client.js +1 -1
  315. package/dist/providers/plugins/sso/sso.http-client.js.map +1 -1
  316. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
  317. package/dist/providers/plugins/sso/sso.template.js +71 -43
  318. package/dist/providers/plugins/sso/sso.template.js.map +1 -1
  319. package/dist/utils/{config-loader.d.ts → config.d.ts} +6 -1
  320. package/dist/utils/config.d.ts.map +1 -0
  321. package/dist/utils/{config-loader.js → config.js} +30 -4
  322. package/dist/utils/config.js.map +1 -0
  323. package/dist/utils/errors.d.ts +89 -0
  324. package/dist/utils/errors.d.ts.map +1 -1
  325. package/dist/utils/errors.js +340 -0
  326. package/dist/utils/errors.js.map +1 -1
  327. package/dist/utils/exec.d.ts +6 -0
  328. package/dist/utils/exec.d.ts.map +1 -1
  329. package/dist/utils/exec.js +6 -0
  330. package/dist/utils/exec.js.map +1 -1
  331. package/dist/utils/file-operations.d.ts +20 -0
  332. package/dist/utils/file-operations.d.ts.map +1 -0
  333. package/dist/utils/file-operations.js +48 -0
  334. package/dist/utils/file-operations.js.map +1 -0
  335. package/dist/utils/logger.d.ts +2 -1
  336. package/dist/utils/logger.d.ts.map +1 -1
  337. package/dist/utils/logger.js +15 -7
  338. package/dist/utils/logger.js.map +1 -1
  339. package/dist/utils/{json-parser.d.ts → parsers.d.ts} +1 -1
  340. package/dist/utils/parsers.d.ts.map +1 -0
  341. package/dist/utils/{json-parser.js → parsers.js} +1 -1
  342. package/dist/utils/parsers.js.map +1 -0
  343. package/dist/utils/{path-utils.d.ts → paths.d.ts} +77 -12
  344. package/dist/utils/paths.d.ts.map +1 -0
  345. package/dist/utils/{path-utils.js → paths.js} +103 -12
  346. package/dist/utils/paths.js.map +1 -0
  347. package/dist/utils/{npm.d.ts → processes.d.ts} +44 -7
  348. package/dist/utils/processes.d.ts.map +1 -0
  349. package/dist/utils/{npm.js → processes.js} +129 -10
  350. package/dist/utils/processes.js.map +1 -0
  351. package/dist/utils/profile.d.ts +1 -16
  352. package/dist/utils/profile.d.ts.map +1 -1
  353. package/dist/utils/profile.js +1 -27
  354. package/dist/utils/profile.js.map +1 -1
  355. package/dist/utils/security.d.ts +62 -0
  356. package/dist/utils/security.d.ts.map +1 -0
  357. package/dist/utils/security.js +396 -0
  358. package/dist/utils/security.js.map +1 -0
  359. package/package.json +11 -11
  360. package/scripts/copy-plugins.js +57 -0
  361. package/scripts/license-check.js +23 -0
  362. package/bin/codemie-codex.js +0 -18
  363. package/bin/codemie-deepagents.js +0 -18
  364. package/dist/agents/core/BaseMetricsAdapter.d.ts +0 -165
  365. package/dist/agents/core/BaseMetricsAdapter.d.ts.map +0 -1
  366. package/dist/agents/core/BaseMetricsAdapter.js +0 -308
  367. package/dist/agents/core/BaseMetricsAdapter.js.map +0 -1
  368. package/dist/agents/core/metrics/MetricsOrchestrator.d.ts +0 -81
  369. package/dist/agents/core/metrics/MetricsOrchestrator.d.ts.map +0 -1
  370. package/dist/agents/core/metrics/MetricsOrchestrator.js +0 -417
  371. package/dist/agents/core/metrics/MetricsOrchestrator.js.map +0 -1
  372. package/dist/agents/core/metrics/core/DeltaWriter.d.ts +0 -49
  373. package/dist/agents/core/metrics/core/DeltaWriter.d.ts.map +0 -1
  374. package/dist/agents/core/metrics/core/DeltaWriter.js +0 -152
  375. package/dist/agents/core/metrics/core/DeltaWriter.js.map +0 -1
  376. package/dist/agents/core/metrics/core/FileSnapshotter.d.ts +0 -22
  377. package/dist/agents/core/metrics/core/FileSnapshotter.d.ts.map +0 -1
  378. package/dist/agents/core/metrics/core/FileSnapshotter.js +0 -74
  379. package/dist/agents/core/metrics/core/FileSnapshotter.js.map +0 -1
  380. package/dist/agents/core/metrics/core/SessionCorrelator.d.ts +0 -34
  381. package/dist/agents/core/metrics/core/SessionCorrelator.d.ts.map +0 -1
  382. package/dist/agents/core/metrics/core/SessionCorrelator.js +0 -157
  383. package/dist/agents/core/metrics/core/SessionCorrelator.js.map +0 -1
  384. package/dist/agents/core/metrics/core/SyncStateManager.d.ts +0 -69
  385. package/dist/agents/core/metrics/core/SyncStateManager.d.ts.map +0 -1
  386. package/dist/agents/core/metrics/core/SyncStateManager.js +0 -283
  387. package/dist/agents/core/metrics/core/SyncStateManager.js.map +0 -1
  388. package/dist/agents/core/metrics/session/SessionStore.d.ts +0 -43
  389. package/dist/agents/core/metrics/session/SessionStore.d.ts.map +0 -1
  390. package/dist/agents/core/metrics/session/SessionStore.js +0 -146
  391. package/dist/agents/core/metrics/session/SessionStore.js.map +0 -1
  392. package/dist/agents/core/metrics-config.d.ts +0 -38
  393. package/dist/agents/core/metrics-config.d.ts.map +0 -1
  394. package/dist/agents/core/metrics-config.js +0 -95
  395. package/dist/agents/core/metrics-config.js.map +0 -1
  396. package/dist/agents/plugins/claude.metrics.d.ts +0 -102
  397. package/dist/agents/plugins/claude.metrics.d.ts.map +0 -1
  398. package/dist/agents/plugins/claude.metrics.js +0 -656
  399. package/dist/agents/plugins/claude.metrics.js.map +0 -1
  400. package/dist/agents/plugins/claude.plugin.d.ts +0 -19
  401. package/dist/agents/plugins/claude.plugin.d.ts.map +0 -1
  402. package/dist/agents/plugins/claude.plugin.js.map +0 -1
  403. package/dist/agents/plugins/codex.plugin.d.ts +0 -17
  404. package/dist/agents/plugins/codex.plugin.d.ts.map +0 -1
  405. package/dist/agents/plugins/codex.plugin.js +0 -386
  406. package/dist/agents/plugins/codex.plugin.js.map +0 -1
  407. package/dist/agents/plugins/deepagents.plugin.d.ts +0 -21
  408. package/dist/agents/plugins/deepagents.plugin.d.ts.map +0 -1
  409. package/dist/agents/plugins/deepagents.plugin.js +0 -104
  410. package/dist/agents/plugins/deepagents.plugin.js.map +0 -1
  411. package/dist/agents/plugins/gemini.metrics.d.ts +0 -99
  412. package/dist/agents/plugins/gemini.metrics.d.ts.map +0 -1
  413. package/dist/agents/plugins/gemini.metrics.js +0 -475
  414. package/dist/agents/plugins/gemini.metrics.js.map +0 -1
  415. package/dist/agents/plugins/gemini.plugin.d.ts +0 -16
  416. package/dist/agents/plugins/gemini.plugin.d.ts.map +0 -1
  417. package/dist/agents/plugins/gemini.plugin.js +0 -80
  418. package/dist/agents/plugins/gemini.plugin.js.map +0 -1
  419. package/dist/agents/plugins/history-parser.d.ts +0 -52
  420. package/dist/agents/plugins/history-parser.d.ts.map +0 -1
  421. package/dist/agents/plugins/history-parser.js +0 -155
  422. package/dist/agents/plugins/history-parser.js.map +0 -1
  423. package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.d.ts +0 -28
  424. package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.d.ts.map +0 -1
  425. package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.js.map +0 -1
  426. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.d.ts +0 -62
  427. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.d.ts.map +0 -1
  428. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.js +0 -157
  429. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.js.map +0 -1
  430. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-aggregator.d.ts.map +0 -1
  431. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-aggregator.js.map +0 -1
  432. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.d.ts +0 -32
  433. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.d.ts.map +0 -1
  434. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.js +0 -159
  435. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.js.map +0 -1
  436. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-post-processor.d.ts.map +0 -1
  437. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-post-processor.js.map +0 -1
  438. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sender.d.ts.map +0 -1
  439. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sender.js.map +0 -1
  440. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.d.ts +0 -36
  441. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.d.ts.map +0 -1
  442. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.js.map +0 -1
  443. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-types.d.ts.map +0 -1
  444. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-types.js.map +0 -1
  445. package/dist/utils/config-loader.d.ts.map +0 -1
  446. package/dist/utils/config-loader.js.map +0 -1
  447. package/dist/utils/credential-store.d.ts +0 -22
  448. package/dist/utils/credential-store.d.ts.map +0 -1
  449. package/dist/utils/credential-store.js +0 -165
  450. package/dist/utils/credential-store.js.map +0 -1
  451. package/dist/utils/dirname.d.ts +0 -7
  452. package/dist/utils/dirname.d.ts.map +0 -1
  453. package/dist/utils/dirname.js +0 -11
  454. package/dist/utils/dirname.js.map +0 -1
  455. package/dist/utils/error-context.d.ts +0 -90
  456. package/dist/utils/error-context.d.ts.map +0 -1
  457. package/dist/utils/error-context.js +0 -338
  458. package/dist/utils/error-context.js.map +0 -1
  459. package/dist/utils/first-time.d.ts.map +0 -1
  460. package/dist/utils/first-time.js.map +0 -1
  461. package/dist/utils/git.d.ts +0 -13
  462. package/dist/utils/git.d.ts.map +0 -1
  463. package/dist/utils/git.js +0 -37
  464. package/dist/utils/git.js.map +0 -1
  465. package/dist/utils/installation-id.d.ts +0 -10
  466. package/dist/utils/installation-id.d.ts.map +0 -1
  467. package/dist/utils/installation-id.js +0 -30
  468. package/dist/utils/installation-id.js.map +0 -1
  469. package/dist/utils/json-parser.d.ts.map +0 -1
  470. package/dist/utils/json-parser.js.map +0 -1
  471. package/dist/utils/npm.d.ts.map +0 -1
  472. package/dist/utils/npm.js.map +0 -1
  473. package/dist/utils/path-utils.d.ts.map +0 -1
  474. package/dist/utils/path-utils.js.map +0 -1
  475. package/dist/utils/profile-display.d.ts.map +0 -1
  476. package/dist/utils/profile-display.js.map +0 -1
  477. package/dist/utils/sanitize.d.ts +0 -28
  478. package/dist/utils/sanitize.d.ts.map +0 -1
  479. package/dist/utils/sanitize.js +0 -212
  480. package/dist/utils/sanitize.js.map +0 -1
  481. package/dist/utils/which.d.ts +0 -20
  482. package/dist/utils/which.d.ts.map +0 -1
  483. package/dist/utils/which.js +0 -54
  484. package/dist/utils/which.js.map +0 -1
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Metrics Writer
3
+ *
4
+ * Handles incremental metrics storage in JSONL format.
5
+ * Stores metrics in: ~/.codemie/sessions/{sessionId}_metrics.jsonl
6
+ * Provides O(1) append operations and efficient filtering by sync status.
7
+ */
8
+ import type { MetricDelta } from '../../../../../../agents/core/metrics/types.js';
9
+ export declare class MetricsWriter {
10
+ private readonly filePath;
11
+ constructor(sessionId: string);
12
+ /**
13
+ * Append new delta to JSONL file (O(1) operation)
14
+ * Returns the recordId from the delta
15
+ */
16
+ appendDelta(delta: Omit<MetricDelta, 'syncStatus' | 'syncAttempts'>): Promise<string>;
17
+ /**
18
+ * Read all deltas from JSONL file
19
+ */
20
+ readAll(): Promise<MetricDelta[]>;
21
+ /**
22
+ * Get file path
23
+ */
24
+ getFilePath(): string;
25
+ /**
26
+ * Check if file exists
27
+ */
28
+ exists(): boolean;
29
+ }
30
+ //# sourceMappingURL=MetricsWriter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricsWriter.d.ts","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/MetricsWriter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gDAAgD,CAAC;AAKlF,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;gBAEtB,SAAS,EAAE,MAAM;IAI7B;;;OAGG;IACG,WAAW,CACf,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,YAAY,GAAG,cAAc,CAAC,GACtD,OAAO,CAAC,MAAM,CAAC;IA6BlB;;OAEG;IACG,OAAO,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAiBrC;;KAEC;IACH,WAAW,IAAI,MAAM;IAIrB;;OAEG;IACH,MAAM,IAAI,OAAO;CAGlB"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Metrics Writer
3
+ *
4
+ * Handles incremental metrics storage in JSONL format.
5
+ * Stores metrics in: ~/.codemie/sessions/{sessionId}_metrics.jsonl
6
+ * Provides O(1) append operations and efficient filtering by sync status.
7
+ */
8
+ import { appendFile, readFile, mkdir } from 'fs/promises';
9
+ import { existsSync } from 'fs';
10
+ import { dirname } from 'path';
11
+ import { logger } from '../../../../../../utils/logger.js';
12
+ import { getSessionMetricsPath } from '../../../../../../agents/core/session/session-config.js';
13
+ import { createErrorContext, formatErrorForLog } from '../../../../../../utils/errors.js';
14
+ export class MetricsWriter {
15
+ filePath;
16
+ constructor(sessionId) {
17
+ this.filePath = getSessionMetricsPath(sessionId);
18
+ }
19
+ /**
20
+ * Append new delta to JSONL file (O(1) operation)
21
+ * Returns the recordId from the delta
22
+ */
23
+ async appendDelta(delta) {
24
+ try {
25
+ // Ensure directory exists
26
+ const dir = dirname(this.filePath);
27
+ if (!existsSync(dir)) {
28
+ await mkdir(dir, { recursive: true });
29
+ }
30
+ // Create full delta record (recordId already set from message UUID)
31
+ const fullDelta = {
32
+ ...delta,
33
+ syncStatus: 'pending',
34
+ syncAttempts: 0
35
+ };
36
+ // Append to JSONL
37
+ const line = JSON.stringify(fullDelta) + '\n';
38
+ await appendFile(this.filePath, line, 'utf-8');
39
+ logger.debug(`[MetricsWriter] Appended delta: ${delta.recordId}`);
40
+ return delta.recordId;
41
+ }
42
+ catch (error) {
43
+ const errorContext = createErrorContext(error);
44
+ logger.error('[MetricsWriter] Failed to append delta', formatErrorForLog(errorContext));
45
+ throw error;
46
+ }
47
+ }
48
+ /**
49
+ * Read all deltas from JSONL file
50
+ */
51
+ async readAll() {
52
+ try {
53
+ if (!existsSync(this.filePath)) {
54
+ return [];
55
+ }
56
+ const content = await readFile(this.filePath, 'utf-8');
57
+ const lines = content.trim().split('\n').filter(line => line.length > 0);
58
+ return lines.map(line => JSON.parse(line));
59
+ }
60
+ catch (error) {
61
+ const errorContext = createErrorContext(error);
62
+ logger.error('[MetricsWriter] Failed to read deltas', formatErrorForLog(errorContext));
63
+ throw error;
64
+ }
65
+ }
66
+ /**
67
+ * Get file path
68
+ */
69
+ getFilePath() {
70
+ return this.filePath;
71
+ }
72
+ /**
73
+ * Check if file exists
74
+ */
75
+ exists() {
76
+ return existsSync(this.filePath);
77
+ }
78
+ }
79
+ //# sourceMappingURL=MetricsWriter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetricsWriter.js","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/MetricsWriter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAE/B,OAAO,EAAE,MAAM,EAAE,MAAM,mCAAmC,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAC;AAChG,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAE1F,MAAM,OAAO,aAAa;IACP,QAAQ,CAAS;IAElC,YAAY,SAAiB;QAC3B,IAAI,CAAC,QAAQ,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACnD,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,WAAW,CACf,KAAuD;QAEvD,IAAI,CAAC;YACH,0BAA0B;YAC1B,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrB,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC;YAED,oEAAoE;YACpE,MAAM,SAAS,GAAgB;gBAC7B,GAAG,KAAK;gBACR,UAAU,EAAE,SAAS;gBACrB,YAAY,EAAE,CAAC;aAChB,CAAC;YAEF,kBAAkB;YAClB,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;YAC9C,MAAM,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YAE/C,MAAM,CAAC,KAAK,CAAC,mCAAmC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;YAClE,OAAO,KAAK,CAAC,QAAQ,CAAC;QAExB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;YACxF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO;QACX,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC/B,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACvD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAEzE,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAgB,CAAC,CAAC;QAE5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC,CAAC;YACvF,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IACC;;KAEC;IACH,WAAW;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;CACF"}
@@ -4,9 +4,10 @@
4
4
  * Aggregates metric deltas into a single session metric.
5
5
  * Reuses patterns from analytics system.
6
6
  */
7
- import type { MetricDelta, MetricsSession } from '../../../../../agents/core/metrics/types.js';
8
- import type { SessionMetric } from './sso.metrics-types.js';
9
- import type { AgentMetricsConfig } from '../../../../../agents/core/types.js';
7
+ import type { MetricDelta } from '../../../../../../agents/core/metrics/types.js';
8
+ import type { Session } from '../../../../../../agents/core/session/types.js';
9
+ import type { SessionMetric } from './metrics-types.js';
10
+ import type { AgentMetricsConfig } from '../../../../../../agents/core/types.js';
10
11
  /**
11
12
  * Aggregate pending deltas into session metrics grouped by branch
12
13
  * Returns one metric per branch to prevent mixing metrics between branches
@@ -16,5 +17,5 @@ import type { AgentMetricsConfig } from '../../../../../agents/core/types.js';
16
17
  * @param version - CLI version
17
18
  * @param agentConfig - Optional agent-specific metrics configuration (for post-processing)
18
19
  */
19
- export declare function aggregateDeltas(deltas: MetricDelta[], session: MetricsSession, version: string, agentConfig?: AgentMetricsConfig): SessionMetric[];
20
- //# sourceMappingURL=sso.metrics-aggregator.d.ts.map
20
+ export declare function aggregateDeltas(deltas: MetricDelta[], session: Session, version: string, agentConfig?: AgentMetricsConfig): SessionMetric[];
21
+ //# sourceMappingURL=metrics-aggregator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-aggregator.d.ts","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-aggregator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gDAAgD,CAAC;AAClF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gDAAgD,CAAC;AAC9E,OAAO,KAAK,EAAoB,aAAa,EAAC,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,wCAAwC,CAAC;AAK/E;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,kBAAkB,GAC/B,aAAa,EAAE,CAuCjB"}
@@ -4,9 +4,9 @@
4
4
  * Aggregates metric deltas into a single session metric.
5
5
  * Reuses patterns from analytics system.
6
6
  */
7
- import { logger } from '../../../../../utils/logger.js';
8
- import { postProcessMetric } from './sso.metrics-post-processor.js';
9
- import { MetricsSender } from './sso.metrics-sender.js';
7
+ import { logger } from '../../../../../../utils/logger.js';
8
+ import { postProcessMetric } from './metrics-post-processor.js';
9
+ import { MetricsSender } from './metrics-api-client.js';
10
10
  /**
11
11
  * Aggregate pending deltas into session metrics grouped by branch
12
12
  * Returns one metric per branch to prevent mixing metrics between branches
@@ -49,6 +49,12 @@ export function aggregateDeltas(deltas, session, version, agentConfig) {
49
49
  * Build session attributes from deltas for a specific branch
50
50
  */
51
51
  function buildSessionAttributes(deltas, session, version, branch) {
52
+ // Use agent session ID from session correlation for API calls
53
+ // This is the canonical source of truth set during SessionStart
54
+ // Fallback: If correlation not set, try deltas, then session ID
55
+ const agentSessionId = session.correlation?.agentSessionId
56
+ || deltas[0]?.agentSessionId
57
+ || session.sessionId;
52
58
  // Token aggregation
53
59
  let totalInput = 0;
54
60
  let totalOutput = 0;
@@ -74,13 +80,15 @@ function buildSessionAttributes(deltas, session, version, branch) {
74
80
  // Aggregate all deltas
75
81
  for (const delta of deltas) {
76
82
  // Tokens
77
- totalInput += delta.tokens.input || 0;
78
- totalOutput += delta.tokens.output || 0;
79
- totalCacheRead += delta.tokens.cacheRead || 0;
80
- totalCacheCreation += delta.tokens.cacheCreation || 0;
81
- // Tools
82
- for (const [toolName, count] of Object.entries(delta.tools)) {
83
- toolCounts[toolName] = (toolCounts[toolName] || 0) + count;
83
+ totalInput += delta.tokens?.input || 0;
84
+ totalOutput += delta.tokens?.output || 0;
85
+ totalCacheRead += delta.tokens?.cacheRead || 0;
86
+ totalCacheCreation += delta.tokens?.cacheCreation || 0;
87
+ // Tools (defensive: old deltas might not have tools field)
88
+ if (delta.tools) {
89
+ for (const [toolName, count] of Object.entries(delta.tools)) {
90
+ toolCounts[toolName] = (toolCounts[toolName] || 0) + count;
91
+ }
84
92
  }
85
93
  // Tool status
86
94
  if (delta.toolStatus) {
@@ -153,7 +161,7 @@ function buildSessionAttributes(deltas, session, version, branch) {
153
161
  agent_version: version,
154
162
  llm_model: primaryModel || 'unknown',
155
163
  repository: session.workingDirectory,
156
- session_id: session.sessionId,
164
+ session_id: agentSessionId, // Use agent session ID for API correlation
157
165
  branch: branch,
158
166
  ...(session.project && { project: session.project }),
159
167
  // Interaction Metrics
@@ -222,4 +230,4 @@ function calculateDurationFromDeltas(deltas, session) {
222
230
  }
223
231
  return batchDuration;
224
232
  }
225
- //# sourceMappingURL=sso.metrics-aggregator.js.map
233
+ //# sourceMappingURL=metrics-aggregator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-aggregator.js","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-aggregator.ts"],"names":[],"mappings":"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"}
@@ -14,16 +14,22 @@
14
14
  * IMPORTANT: This is an SSO provider capability, not a generic metrics capability.
15
15
  * Only works with ai-run-sso provider which provides authentication cookies.
16
16
  */
17
- import type { SessionMetric, MetricsSyncResponse } from './sso.metrics-types.js';
18
- import type { MetricsSession } from '../../../../../agents/core/metrics/types.js';
17
+ import type { SessionMetric, MetricsSyncResponse } from './metrics-types.js';
18
+ import type { Session } from '../../../../../../agents/core/session/types.js';
19
19
  /**
20
- * Session start status
20
+ * Session start status object with reason
21
21
  */
22
- export type SessionStartStatus = 'started' | 'failed';
22
+ export interface SessionStartStatus {
23
+ status: 'started' | 'failed';
24
+ reason?: string;
25
+ }
23
26
  /**
24
- * Session end status
27
+ * Session end status object with reason
25
28
  */
26
- export type SessionEndStatus = 'completed' | 'failed' | 'interrupted';
29
+ export interface SessionEndStatus {
30
+ status: 'completed' | 'failed' | 'interrupted';
31
+ reason?: string;
32
+ }
27
33
  /**
28
34
  * Session lifecycle error
29
35
  */
@@ -35,6 +41,7 @@ export interface SessionError {
35
41
  export interface MetricsSenderOptions {
36
42
  baseUrl: string;
37
43
  cookies?: string;
44
+ apiKey?: string;
38
45
  timeout?: number;
39
46
  retryAttempts?: number;
40
47
  version?: string;
@@ -65,10 +72,10 @@ export declare class MetricsSender {
65
72
  *
66
73
  * @param session - Session metadata (with optional model)
67
74
  * @param workingDirectory - Current working directory (for git branch detection)
68
- * @param status - Session start status (started/failed)
75
+ * @param status - Session start status object with status and optional reason
69
76
  * @param error - Optional error information (required if status=failed)
70
77
  */
71
- sendSessionStart(session: Pick<MetricsSession, 'sessionId' | 'agentName' | 'provider' | 'project' | 'startTime' | 'workingDirectory'> & {
78
+ sendSessionStart(session: Pick<Session, 'sessionId' | 'agentName' | 'provider' | 'project' | 'startTime' | 'workingDirectory'> & {
72
79
  model?: string;
73
80
  }, workingDirectory: string, status?: SessionStartStatus, error?: SessionError): Promise<MetricsSyncResponse>;
74
81
  /**
@@ -77,11 +84,11 @@ export declare class MetricsSender {
77
84
  *
78
85
  * @param session - Session metadata (with optional model)
79
86
  * @param workingDirectory - Current working directory (for git branch detection)
80
- * @param status - Session end status (completed/failed/interrupted)
87
+ * @param status - Session end status object with status and optional reason
81
88
  * @param durationMs - Session duration in milliseconds
82
89
  * @param error - Optional error information (for failed sessions)
83
90
  */
84
- sendSessionEnd(session: Pick<MetricsSession, 'sessionId' | 'agentName' | 'provider' | 'project' | 'startTime' | 'workingDirectory'> & {
91
+ sendSessionEnd(session: Pick<Session, 'sessionId' | 'agentName' | 'provider' | 'project' | 'startTime' | 'workingDirectory'> & {
85
92
  model?: string;
86
93
  }, workingDirectory: string, status: SessionEndStatus, durationMs: number, error?: SessionError): Promise<MetricsSyncResponse>;
87
94
  /**
@@ -101,4 +108,4 @@ export declare class MetricsSender {
101
108
  */
102
109
  private extractRepository;
103
110
  }
104
- //# sourceMappingURL=sso.metrics-sender.d.ts.map
111
+ //# sourceMappingURL=metrics-api-client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-api-client.d.ts","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-api-client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAoB,mBAAmB,EAAmB,MAAM,oBAAoB,CAAC;AAChH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gDAAgD,CAAC;AAmJ9E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,aAAa,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,qBAAa,aAAa;IACxB;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,oBAAoB,+BAA+B;IACnE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,6BAA6B;IAE/D,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,OAAO,CAAS;gBAEZ,OAAO,EAAE,oBAAoB;IAgBzC;;;;;;;;OAQG;IACG,gBAAgB,CACpB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,kBAAkB,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAClI,gBAAgB,EAAE,MAAM,EACxB,MAAM,GAAE,kBAA0C,EAClD,KAAK,CAAC,EAAE,YAAY,GACnB,OAAO,CAAC,mBAAmB,CAAC;IAmF/B;;;;;;;;;OASG;IACG,cAAc,CAClB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,GAAG,WAAW,GAAG,kBAAkB,CAAC,GAAG;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAClI,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,MAAM,EAClB,KAAK,CAAC,EAAE,YAAY,GACnB,OAAO,CAAC,mBAAmB,CAAC;IAoF/B;;;;;OAKG;IACG,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAkC5E;;;;;;;OAOG;IACH,OAAO,CAAC,iBAAiB;CAU1B"}
@@ -14,9 +14,132 @@
14
14
  * IMPORTANT: This is an SSO provider capability, not a generic metrics capability.
15
15
  * Only works with ai-run-sso provider which provides authentication cookies.
16
16
  */
17
- import { MetricsApiClient } from './sso.metrics-api-client.js';
18
- import { logger } from '../../../../../utils/logger.js';
19
- import { detectGitBranch } from '../../../../../utils/git.js';
17
+ import { logger } from '../../../../../../utils/logger.js';
18
+ import { detectGitBranch } from '../../../../../../utils/processes.js';
19
+ import { CODEMIE_ENDPOINTS } from '../../../sso.http-client.js';
20
+ /**
21
+ * Low-level HTTP client for sending metrics to CodeMie API
22
+ * Features:
23
+ * - Exponential backoff retry
24
+ * - SSO cookie authentication or apiKey authentication
25
+ * - JSON batch sending
26
+ * - Error classification (retryable vs non-retryable)
27
+ */
28
+ class MetricsApiClient {
29
+ config;
30
+ constructor(config) {
31
+ this.config = {
32
+ baseUrl: config.baseUrl,
33
+ cookies: config.cookies || '',
34
+ apiKey: config.apiKey || '',
35
+ timeout: config.timeout || 30000,
36
+ retryAttempts: config.retryAttempts || 3,
37
+ retryDelays: config.retryDelays || [1000, 2000, 5000],
38
+ version: config.version || process.env.CODEMIE_CLI_VERSION || 'unknown',
39
+ clientType: config.clientType || 'codemie-cli'
40
+ };
41
+ }
42
+ async sendMetric(metric) {
43
+ let lastError;
44
+ for (let attempt = 0; attempt <= this.config.retryAttempts; attempt++) {
45
+ try {
46
+ if (attempt > 0) {
47
+ const delay = this.config.retryDelays[attempt - 1] || 5000;
48
+ logger.debug(`[MetricsApiClient] Retry attempt ${attempt} after ${delay}ms`);
49
+ await this.sleep(delay);
50
+ }
51
+ return await this.sendRequest(metric);
52
+ }
53
+ catch (error) {
54
+ lastError = error;
55
+ const errorMessage = error instanceof Error ? error.message : String(error);
56
+ const errorName = error instanceof Error ? error.name : 'Unknown';
57
+ const statusCode = error.statusCode;
58
+ if (!this.isRetryable(error)) {
59
+ logger.error(`[MetricsApiClient] Non-retryable error [${errorName}]: ${errorMessage}${statusCode ? ` (HTTP ${statusCode})` : ''}`);
60
+ throw error;
61
+ }
62
+ logger.warn(`[MetricsApiClient] Attempt ${attempt + 1} failed [${errorName}]: ${errorMessage}${statusCode ? ` (HTTP ${statusCode})` : ''}`);
63
+ }
64
+ }
65
+ throw new Error(`Failed after ${this.config.retryAttempts} retries: ${lastError?.message}`);
66
+ }
67
+ async sendRequest(metric) {
68
+ const url = `${this.config.baseUrl}${CODEMIE_ENDPOINTS.METRICS}`;
69
+ const body = JSON.stringify(metric);
70
+ logger.debug(`[MetricsApiClient] Sending metric to ${url}. Body ${body}`);
71
+ const headers = {
72
+ 'Content-Type': 'application/json',
73
+ 'User-Agent': `codemie-cli/${this.config.version}`,
74
+ 'X-CodeMie-CLI': `codemie-cli/${this.config.version}`,
75
+ 'X-CodeMie-Client': this.config.clientType
76
+ };
77
+ if (this.config.apiKey) {
78
+ headers['user-id'] = this.config.apiKey;
79
+ }
80
+ else if (this.config.cookies) {
81
+ headers['Cookie'] = this.config.cookies;
82
+ }
83
+ const controller = new AbortController();
84
+ const timeoutId = setTimeout(() => controller.abort(), this.config.timeout);
85
+ try {
86
+ const response = await fetch(url, {
87
+ method: 'POST',
88
+ headers,
89
+ body,
90
+ signal: controller.signal
91
+ });
92
+ clearTimeout(timeoutId);
93
+ const data = await response.json();
94
+ if (!response.ok) {
95
+ if ('code' in data && 'details' in data) {
96
+ const errorData = data;
97
+ let errorMessage = `API returned ${response.status}: ${errorData.message}`;
98
+ if (errorData.details)
99
+ errorMessage += `\nDetails: ${errorData.details}`;
100
+ if (errorData.help)
101
+ errorMessage += `\nHelp: ${errorData.help}`;
102
+ const error = new Error(errorMessage);
103
+ error.statusCode = response.status;
104
+ error.response = data;
105
+ throw error;
106
+ }
107
+ const errorMessage = 'message' in data ? data.message : response.statusText;
108
+ const error = new Error(`API returned ${response.status}: ${errorMessage}`);
109
+ error.statusCode = response.status;
110
+ error.response = data;
111
+ throw error;
112
+ }
113
+ const successData = data;
114
+ logger.debug(`[MetricsApiClient] Response from ${url}: success=${successData.success}, message="${successData.message}"`);
115
+ if (!successData.success) {
116
+ const error = new Error(`API reported failure: ${successData.message}`);
117
+ error.response = data;
118
+ throw error;
119
+ }
120
+ logger.info(`[MetricsApiClient] Successfully sent metric: ${successData.message}`);
121
+ return successData;
122
+ }
123
+ catch (error) {
124
+ clearTimeout(timeoutId);
125
+ if (error.name === 'AbortError') {
126
+ throw new Error(`Request timeout after ${this.config.timeout}ms`);
127
+ }
128
+ throw error;
129
+ }
130
+ }
131
+ isRetryable(error) {
132
+ const statusCode = error.statusCode;
133
+ if (!statusCode)
134
+ return true; // Network errors
135
+ if (statusCode >= 500 || statusCode === 429)
136
+ return true; // Server errors and rate limit
137
+ return false; // 4xx errors (except 429)
138
+ }
139
+ sleep(ms) {
140
+ return new Promise(resolve => setTimeout(resolve, ms));
141
+ }
142
+ }
20
143
  /**
21
144
  * High-level metrics sender for SSO provider
22
145
  * Wraps MetricsApiClient with convenience methods
@@ -40,6 +163,7 @@ export class MetricsSender {
40
163
  const config = {
41
164
  baseUrl: options.baseUrl,
42
165
  cookies: options.cookies,
166
+ apiKey: options.apiKey,
43
167
  timeout: options.timeout,
44
168
  retryAttempts: options.retryAttempts,
45
169
  version: options.version,
@@ -53,10 +177,10 @@ export class MetricsSender {
53
177
  *
54
178
  * @param session - Session metadata (with optional model)
55
179
  * @param workingDirectory - Current working directory (for git branch detection)
56
- * @param status - Session start status (started/failed)
180
+ * @param status - Session start status object with status and optional reason
57
181
  * @param error - Optional error information (required if status=failed)
58
182
  */
59
- async sendSessionStart(session, workingDirectory, status = 'started', error) {
183
+ async sendSessionStart(session, workingDirectory, status = { status: 'started' }, error) {
60
184
  // Detect git branch
61
185
  const branch = await detectGitBranch(workingDirectory);
62
186
  // Extract repository from working directory
@@ -87,13 +211,14 @@ export class MetricsSender {
87
211
  total_lines_removed: 0,
88
212
  // Session metadata
89
213
  session_duration_ms: 0,
90
- had_errors: status === 'failed',
214
+ had_errors: status.status === 'failed',
91
215
  count: 1,
92
216
  // Lifecycle status
93
- status
217
+ status: status.status,
218
+ ...(status.reason && { reason: status.reason })
94
219
  };
95
220
  // Add error details if session start failed
96
- if (status === 'failed' && error) {
221
+ if (status.status === 'failed' && error) {
97
222
  attributes.errors = {
98
223
  [error.type]: [error.code ? `[${error.code}] ${error.message}` : error.message]
99
224
  };
@@ -113,7 +238,8 @@ export class MetricsSender {
113
238
  session_id: metric.attributes.session_id,
114
239
  branch: metric.attributes.branch,
115
240
  repository: metric.attributes.repository,
116
- status,
241
+ status: status.status,
242
+ reason: status.reason,
117
243
  ...(error && { error_type: error.type })
118
244
  }
119
245
  }
@@ -130,7 +256,7 @@ export class MetricsSender {
130
256
  *
131
257
  * @param session - Session metadata (with optional model)
132
258
  * @param workingDirectory - Current working directory (for git branch detection)
133
- * @param status - Session end status (completed/failed/interrupted)
259
+ * @param status - Session end status object with status and optional reason
134
260
  * @param durationMs - Session duration in milliseconds
135
261
  * @param error - Optional error information (for failed sessions)
136
262
  */
@@ -165,13 +291,14 @@ export class MetricsSender {
165
291
  total_lines_removed: 0,
166
292
  // Session metadata
167
293
  session_duration_ms: durationMs,
168
- had_errors: status === 'failed',
294
+ had_errors: status.status === 'failed',
169
295
  count: 1,
170
296
  // Lifecycle status
171
- status
297
+ status: status.status,
298
+ ...(status.reason && { reason: status.reason })
172
299
  };
173
300
  // Add error details if session ended with error
174
- if (status === 'failed' && error) {
301
+ if (status.status === 'failed' && error) {
175
302
  attributes.errors = {
176
303
  [error.type]: [error.code ? `[${error.code}] ${error.message}` : error.message]
177
304
  };
@@ -191,7 +318,8 @@ export class MetricsSender {
191
318
  session_id: metric.attributes.session_id,
192
319
  branch: metric.attributes.branch,
193
320
  repository: metric.attributes.repository,
194
- status,
321
+ status: status.status,
322
+ reason: status.reason,
195
323
  duration_ms: durationMs,
196
324
  ...(error && { error_type: error.type })
197
325
  }
@@ -255,4 +383,4 @@ export class MetricsSender {
255
383
  return filtered[filtered.length - 1] || 'unknown';
256
384
  }
257
385
  }
258
- //# sourceMappingURL=sso.metrics-sender.js.map
386
+ //# sourceMappingURL=metrics-api-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-api-client.js","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-api-client.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,8 @@
6
6
  * 2. Filters out tool errors based on agent configuration
7
7
  * 3. Escapes/sanitizes error messages to prevent JSON issues
8
8
  */
9
- import type { SessionMetric } from './sso.metrics-types.js';
10
- import type { AgentMetricsConfig } from '../../../../../agents/core/types.js';
9
+ import type { SessionMetric } from './metrics-types.js';
10
+ import type { AgentMetricsConfig } from '../../../../../../agents/core/types.js';
11
11
  /**
12
12
  * Post-process a session metric to sanitize sensitive data
13
13
  *
@@ -45,4 +45,4 @@ export declare function filterAndSanitizeErrors(errors: Record<string, string[]>
45
45
  * 4. Escape for JSON safety
46
46
  */
47
47
  export declare function sanitizeError(error: string): string;
48
- //# sourceMappingURL=sso.metrics-post-processor.d.ts.map
48
+ //# sourceMappingURL=metrics-post-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-post-processor.d.ts","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-post-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,wCAAwC,CAAC;AAI/E;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE,kBAAkB,GAC/B,aAAa,CA2Bf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqC5D;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAChC,WAAW,CAAC,EAAE,kBAAkB,GAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAuB1B;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAgCnD"}
@@ -8,8 +8,8 @@
8
8
  */
9
9
  import path from 'path';
10
10
  import stripAnsi from 'strip-ansi';
11
- import { METRICS_CONFIG } from '../../../../../agents/core/metrics-config.js';
12
- import { logger } from '../../../../../utils/logger.js';
11
+ import { METRICS_CONFIG } from '../../../../../../agents/core/session/session-config.js';
12
+ import { logger } from '../../../../../../utils/logger.js';
13
13
  /**
14
14
  * Post-process a session metric to sanitize sensitive data
15
15
  *
@@ -144,4 +144,4 @@ export function sanitizeError(error) {
144
144
  .replace(/\t/g, '\\t'); // Escape tabs
145
145
  return sanitized;
146
146
  }
147
- //# sourceMappingURL=sso.metrics-post-processor.js.map
147
+ //# sourceMappingURL=metrics-post-processor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-post-processor.js","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-post-processor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Metrics Sync Processor (SSO Provider)
3
+ *
4
+ * Lightweight processor that syncs metric deltas to CodeMie API.
5
+ *
6
+ * Responsibilities:
7
+ * - Read pending metric deltas from JSONL (written by agent adapters)
8
+ * - Aggregate deltas into metrics grouped by branch
9
+ * - Send metrics to CodeMie API
10
+ * - Mark deltas as 'synced' atomically
11
+ *
12
+ * Note: Delta extraction is handled by agent adapters (e.g., Claude's MetricsProcessor)
13
+ */
14
+ import type { SessionProcessor, ProcessingContext, ProcessingResult } from '../../BaseProcessor.js';
15
+ import type { ParsedSession } from '../../BaseSessionAdapter.js';
16
+ export declare class MetricsSyncProcessor implements SessionProcessor {
17
+ readonly name = "metrics-sync";
18
+ readonly priority = 2;
19
+ private sessionStore;
20
+ private isSyncing;
21
+ shouldProcess(_session: ParsedSession): boolean;
22
+ process(session: ParsedSession, context: ProcessingContext): Promise<ProcessingResult>;
23
+ }
24
+ //# sourceMappingURL=metrics-sync-processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics-sync-processor.d.ts","sourceRoot":"","sources":["../../../../../../../src/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AACpG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAUjE,qBAAa,oBAAqB,YAAW,gBAAgB;IAC3D,QAAQ,CAAC,IAAI,kBAAkB;IAC/B,QAAQ,CAAC,QAAQ,KAAK;IAEtB,OAAO,CAAC,YAAY,CAAsB;IAC1C,OAAO,CAAC,SAAS,CAAS;IAE1B,aAAa,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO;IAKzC,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC;CA0P7F"}