@codemieai/code 0.0.28 → 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 (368) hide show
  1. package/README.md +8 -10
  2. package/bin/agent-executor.js +1 -1
  3. package/dist/agents/codemie-code/config.d.ts.map +1 -1
  4. package/dist/agents/codemie-code/config.js +0 -1
  5. package/dist/agents/codemie-code/config.js.map +1 -1
  6. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  7. package/dist/agents/core/AgentCLI.js +4 -8
  8. package/dist/agents/core/AgentCLI.js.map +1 -1
  9. package/dist/agents/core/BaseAgentAdapter.d.ts +17 -9
  10. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  11. package/dist/agents/core/BaseAgentAdapter.js +75 -67
  12. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  13. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts +258 -0
  14. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts.map +1 -0
  15. package/dist/agents/core/extension/BaseExtensionInstaller.js +522 -0
  16. package/dist/agents/core/extension/BaseExtensionInstaller.js.map +1 -0
  17. package/dist/agents/core/lifecycle-helpers.d.ts.map +1 -1
  18. package/dist/agents/core/lifecycle-helpers.js +16 -2
  19. package/dist/agents/core/lifecycle-helpers.js.map +1 -1
  20. package/dist/agents/core/metrics/index.d.ts +0 -2
  21. package/dist/agents/core/metrics/index.d.ts.map +1 -1
  22. package/dist/agents/core/metrics/index.js +0 -3
  23. package/dist/agents/core/metrics/index.js.map +1 -1
  24. package/dist/agents/core/metrics/types.d.ts +4 -232
  25. package/dist/agents/core/metrics/types.d.ts.map +1 -1
  26. package/dist/agents/core/metrics/types.js +2 -2
  27. package/dist/agents/core/session/BaseProcessor.d.ts +72 -0
  28. package/dist/agents/core/session/BaseProcessor.d.ts.map +1 -0
  29. package/dist/agents/core/session/BaseProcessor.js +9 -0
  30. package/dist/agents/core/session/BaseProcessor.js.map +1 -0
  31. package/dist/agents/core/session/BaseSessionAdapter.d.ts +99 -0
  32. package/dist/agents/core/session/BaseSessionAdapter.d.ts.map +1 -0
  33. package/dist/agents/core/session/BaseSessionAdapter.js +9 -0
  34. package/dist/agents/core/session/BaseSessionAdapter.js.map +1 -0
  35. package/dist/agents/core/session/SessionStore.d.ts +23 -0
  36. package/dist/agents/core/session/SessionStore.d.ts.map +1 -0
  37. package/dist/agents/core/session/SessionStore.js +75 -0
  38. package/dist/agents/core/session/SessionStore.js.map +1 -0
  39. package/dist/agents/core/session/session-config.d.ts +27 -0
  40. package/dist/agents/core/session/session-config.d.ts.map +1 -0
  41. package/dist/agents/core/session/session-config.js +61 -0
  42. package/dist/agents/core/session/session-config.js.map +1 -0
  43. package/dist/agents/core/session/types.d.ts +87 -0
  44. package/dist/agents/core/session/types.d.ts.map +1 -0
  45. package/dist/agents/core/session/types.js +8 -0
  46. package/dist/agents/core/session/types.js.map +1 -0
  47. package/dist/agents/core/session/utils/jsonl-reader.d.ts +15 -0
  48. package/dist/agents/core/session/utils/jsonl-reader.d.ts.map +1 -0
  49. package/dist/agents/core/session/utils/jsonl-reader.js +33 -0
  50. package/dist/agents/core/session/utils/jsonl-reader.js.map +1 -0
  51. package/dist/agents/core/session/utils/jsonl-writer.d.ts +26 -0
  52. package/dist/agents/core/session/utils/jsonl-writer.d.ts.map +1 -0
  53. package/dist/agents/core/session/utils/jsonl-writer.js +56 -0
  54. package/dist/agents/core/session/utils/jsonl-writer.js.map +1 -0
  55. package/dist/agents/core/types.d.ts +78 -11
  56. package/dist/agents/core/types.d.ts.map +1 -1
  57. package/dist/agents/plugins/claude/claude-message-types.d.ts +74 -0
  58. package/dist/agents/plugins/claude/claude-message-types.d.ts.map +1 -0
  59. package/dist/agents/plugins/claude/claude-message-types.js +8 -0
  60. package/dist/agents/plugins/claude/claude-message-types.js.map +1 -0
  61. package/dist/agents/plugins/claude/claude.plugin-installer.d.ts +53 -0
  62. package/dist/agents/plugins/claude/claude.plugin-installer.d.ts.map +1 -0
  63. package/dist/agents/plugins/claude/claude.plugin-installer.js +63 -0
  64. package/dist/agents/plugins/claude/claude.plugin-installer.js.map +1 -0
  65. package/dist/agents/plugins/claude/claude.plugin.d.ts +26 -0
  66. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -0
  67. package/dist/agents/plugins/{claude.plugin.js → claude/claude.plugin.js} +20 -11
  68. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -0
  69. package/dist/agents/plugins/claude/claude.session.d.ts +60 -0
  70. package/dist/agents/plugins/claude/claude.session.d.ts.map +1 -0
  71. package/dist/agents/plugins/claude/claude.session.js +339 -0
  72. package/dist/agents/plugins/claude/claude.session.js.map +1 -0
  73. package/dist/agents/plugins/claude/plugin/.claude-plugin/local-install.json +15 -0
  74. package/dist/agents/plugins/claude/plugin/.claude-plugin/plugin.json +9 -0
  75. package/dist/agents/plugins/claude/plugin/README.md +299 -0
  76. package/dist/agents/plugins/claude/plugin/claude-templates/README.md +539 -0
  77. package/dist/agents/plugins/claude/plugin/claude-templates/templates/CLAUDE.md.template +511 -0
  78. package/dist/agents/plugins/claude/plugin/claude-templates/templates/INDEX.md +205 -0
  79. package/dist/agents/plugins/claude/plugin/claude-templates/templates/TEMPLATE_SIZES.md +74 -0
  80. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/api/api-patterns.md.template +207 -0
  81. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/layered-architecture.md.template +143 -0
  82. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/architecture/project-structure.md.template +127 -0
  83. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/data/database-patterns.md.template +168 -0
  84. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/development/development-practices.md.template +210 -0
  85. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/integration/external-integrations.md.template +160 -0
  86. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/security/security-practices.md.template +170 -0
  87. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/code-quality.md.template +150 -0
  88. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/standards/git-workflow.md.template +177 -0
  89. package/dist/agents/plugins/claude/plugin/claude-templates/templates/guides/testing/testing-patterns.md.template +143 -0
  90. package/dist/agents/plugins/claude/plugin/commands/README.md +0 -0
  91. package/dist/agents/plugins/claude/plugin/commands/codemie-catchup.md +10 -0
  92. package/dist/agents/plugins/claude/plugin/commands/codemie-init.md +731 -0
  93. package/dist/agents/plugins/claude/plugin/commands/memory-add.md +44 -0
  94. package/dist/agents/plugins/claude/plugin/commands/memory-init.md +18 -0
  95. package/dist/agents/plugins/claude/plugin/commands/memory-refresh.md +54 -0
  96. package/dist/agents/plugins/claude/plugin/hooks/hooks.json +71 -0
  97. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts +51 -0
  98. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.d.ts.map +1 -0
  99. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js +840 -0
  100. package/dist/agents/plugins/claude/session/processors/claude.conversations-processor.js.map +1 -0
  101. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts +37 -0
  102. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.d.ts.map +1 -0
  103. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js +275 -0
  104. package/dist/agents/plugins/claude/session/processors/claude.metrics-processor.js.map +1 -0
  105. package/dist/agents/plugins/gemini/extension/README.md +88 -0
  106. package/dist/agents/plugins/gemini/extension/gemini-extension.json +11 -0
  107. package/dist/agents/plugins/gemini/extension/hooks/hooks.json +65 -0
  108. package/dist/agents/plugins/gemini/gemini.extension-installer.d.ts +49 -0
  109. package/dist/agents/plugins/gemini/gemini.extension-installer.d.ts.map +1 -0
  110. package/dist/agents/plugins/gemini/gemini.extension-installer.js +63 -0
  111. package/dist/agents/plugins/gemini/gemini.extension-installer.js.map +1 -0
  112. package/dist/agents/plugins/gemini/gemini.hook-transformer.d.ts +43 -0
  113. package/dist/agents/plugins/gemini/gemini.hook-transformer.d.ts.map +1 -0
  114. package/dist/agents/plugins/gemini/gemini.hook-transformer.js +57 -0
  115. package/dist/agents/plugins/gemini/gemini.hook-transformer.js.map +1 -0
  116. package/dist/agents/plugins/gemini/gemini.plugin.d.ts +32 -0
  117. package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -0
  118. package/dist/agents/plugins/gemini/gemini.plugin.js +136 -0
  119. package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -0
  120. package/dist/agents/plugins/gemini/gemini.session-adapter.d.ts +68 -0
  121. package/dist/agents/plugins/gemini/gemini.session-adapter.d.ts.map +1 -0
  122. package/dist/agents/plugins/gemini/gemini.session-adapter.js +268 -0
  123. package/dist/agents/plugins/gemini/gemini.session-adapter.js.map +1 -0
  124. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts +36 -0
  125. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.d.ts.map +1 -0
  126. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js +186 -0
  127. package/dist/agents/plugins/gemini/session/processors/gemini.conversations-processor.js.map +1 -0
  128. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.d.ts +32 -0
  129. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.d.ts.map +1 -0
  130. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.js +193 -0
  131. package/dist/agents/plugins/gemini/session/processors/gemini.metrics-processor.js.map +1 -0
  132. package/dist/agents/plugins/gemini/session/utils/token-aggregator.d.ts +26 -0
  133. package/dist/agents/plugins/gemini/session/utils/token-aggregator.d.ts.map +1 -0
  134. package/dist/agents/plugins/gemini/session/utils/token-aggregator.js +38 -0
  135. package/dist/agents/plugins/gemini/session/utils/token-aggregator.js.map +1 -0
  136. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.d.ts +33 -0
  137. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.d.ts.map +1 -0
  138. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.js +58 -0
  139. package/dist/agents/plugins/gemini/session/utils/tool-aggregator.js.map +1 -0
  140. package/dist/agents/plugins/gemini/session/utils/turn-detector.d.ts +70 -0
  141. package/dist/agents/plugins/gemini/session/utils/turn-detector.d.ts.map +1 -0
  142. package/dist/agents/plugins/gemini/session/utils/turn-detector.js +86 -0
  143. package/dist/agents/plugins/gemini/session/utils/turn-detector.js.map +1 -0
  144. package/dist/agents/registry.d.ts +7 -2
  145. package/dist/agents/registry.d.ts.map +1 -1
  146. package/dist/agents/registry.js +17 -8
  147. package/dist/agents/registry.js.map +1 -1
  148. package/dist/cli/commands/analytics/data-loader.d.ts +1 -1
  149. package/dist/cli/commands/analytics/data-loader.js +1 -1
  150. package/dist/cli/commands/analytics/index.js +1 -1
  151. package/dist/cli/commands/analytics/index.js.map +1 -1
  152. package/dist/cli/commands/doctor/checks/PythonCheck.d.ts +13 -0
  153. package/dist/cli/commands/doctor/checks/PythonCheck.d.ts.map +1 -1
  154. package/dist/cli/commands/doctor/checks/PythonCheck.js +90 -31
  155. package/dist/cli/commands/doctor/checks/PythonCheck.js.map +1 -1
  156. package/dist/cli/commands/hook.d.ts +7 -0
  157. package/dist/cli/commands/hook.d.ts.map +1 -0
  158. package/dist/cli/commands/hook.js +788 -0
  159. package/dist/cli/commands/hook.js.map +1 -0
  160. package/dist/cli/commands/setup.d.ts.map +1 -1
  161. package/dist/cli/commands/setup.js +3 -4
  162. package/dist/cli/commands/setup.js.map +1 -1
  163. package/dist/cli/commands/update.d.ts.map +1 -1
  164. package/dist/cli/commands/update.js +2 -1
  165. package/dist/cli/commands/update.js.map +1 -1
  166. package/dist/cli/first-time.d.ts +4 -0
  167. package/dist/cli/first-time.d.ts.map +1 -1
  168. package/dist/cli/first-time.js +26 -13
  169. package/dist/cli/first-time.js.map +1 -1
  170. package/dist/cli/index.js +2 -0
  171. package/dist/cli/index.js.map +1 -1
  172. package/dist/frameworks/core/types.d.ts +1 -1
  173. package/dist/frameworks/plugins/speckit.plugin.d.ts.map +1 -1
  174. package/dist/frameworks/plugins/speckit.plugin.js +1 -2
  175. package/dist/frameworks/plugins/speckit.plugin.js.map +1 -1
  176. package/dist/migrations/002-consolidate-sessions.migration.d.ts +50 -0
  177. package/dist/migrations/002-consolidate-sessions.migration.d.ts.map +1 -0
  178. package/dist/migrations/002-consolidate-sessions.migration.js +220 -0
  179. package/dist/migrations/002-consolidate-sessions.migration.js.map +1 -0
  180. package/dist/migrations/index.d.ts +1 -0
  181. package/dist/migrations/index.d.ts.map +1 -1
  182. package/dist/migrations/index.js +3 -2
  183. package/dist/migrations/index.js.map +1 -1
  184. package/dist/providers/core/types.d.ts +1 -1
  185. package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -1
  186. package/dist/providers/plugins/ollama/ollama.template.js +2 -10
  187. package/dist/providers/plugins/ollama/ollama.template.js.map +1 -1
  188. package/dist/providers/plugins/sso/index.d.ts +1 -1
  189. package/dist/providers/plugins/sso/index.d.ts.map +1 -1
  190. package/dist/providers/plugins/sso/index.js +1 -1
  191. package/dist/providers/plugins/sso/index.js.map +1 -1
  192. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts +1 -1
  193. package/dist/providers/plugins/sso/proxy/plugins/index.d.ts.map +1 -1
  194. package/dist/providers/plugins/sso/proxy/plugins/index.js +3 -3
  195. package/dist/providers/plugins/sso/proxy/plugins/index.js.map +1 -1
  196. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts +40 -0
  197. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.d.ts.map +1 -0
  198. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js +194 -0
  199. package/dist/providers/plugins/sso/proxy/plugins/sso.session-sync.plugin.js.map +1 -0
  200. package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts +1 -0
  201. package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts.map +1 -1
  202. package/dist/providers/plugins/sso/proxy/proxy-http-client.js +40 -6
  203. package/dist/providers/plugins/sso/proxy/proxy-http-client.js.map +1 -1
  204. package/dist/providers/plugins/sso/session/BaseProcessor.d.ts +72 -0
  205. package/dist/providers/plugins/sso/session/BaseProcessor.d.ts.map +1 -0
  206. package/dist/providers/plugins/sso/session/BaseProcessor.js +9 -0
  207. package/dist/providers/plugins/sso/session/BaseProcessor.js.map +1 -0
  208. package/dist/providers/plugins/sso/session/BaseSessionAdapter.d.ts +99 -0
  209. package/dist/providers/plugins/sso/session/BaseSessionAdapter.d.ts.map +1 -0
  210. package/dist/providers/plugins/sso/session/BaseSessionAdapter.js +9 -0
  211. package/dist/providers/plugins/sso/session/BaseSessionAdapter.js.map +1 -0
  212. package/dist/providers/plugins/sso/session/SessionSyncer.d.ts +36 -0
  213. package/dist/providers/plugins/sso/session/SessionSyncer.d.ts.map +1 -0
  214. package/dist/providers/plugins/sso/session/SessionSyncer.js +140 -0
  215. package/dist/providers/plugins/sso/session/SessionSyncer.js.map +1 -0
  216. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.d.ts +26 -0
  217. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.d.ts.map +1 -0
  218. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.js +146 -0
  219. package/dist/providers/plugins/sso/session/processors/conversations/conversation-api-client.js.map +1 -0
  220. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts +23 -0
  221. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.d.ts.map +1 -0
  222. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js +171 -0
  223. package/dist/providers/plugins/sso/session/processors/conversations/conversation-sync-processor.js.map +1 -0
  224. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.d.ts +69 -0
  225. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.d.ts.map +1 -0
  226. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.js +7 -0
  227. package/dist/providers/plugins/sso/session/processors/conversations/conversation-types.js.map +1 -0
  228. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.d.ts +30 -0
  229. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.d.ts.map +1 -0
  230. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.js +79 -0
  231. package/dist/providers/plugins/sso/session/processors/metrics/MetricsWriter.js.map +1 -0
  232. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-aggregator.d.ts → session/processors/metrics/metrics-aggregator.d.ts} +6 -5
  233. package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.d.ts.map +1 -0
  234. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-aggregator.js → session/processors/metrics/metrics-aggregator.js} +20 -12
  235. package/dist/providers/plugins/sso/session/processors/metrics/metrics-aggregator.js.map +1 -0
  236. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sender.d.ts → session/processors/metrics/metrics-api-client.d.ts} +18 -11
  237. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.d.ts.map +1 -0
  238. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sender.js → session/processors/metrics/metrics-api-client.js} +143 -15
  239. package/dist/providers/plugins/sso/session/processors/metrics/metrics-api-client.js.map +1 -0
  240. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-post-processor.d.ts → session/processors/metrics/metrics-post-processor.d.ts} +3 -3
  241. package/dist/providers/plugins/sso/session/processors/metrics/metrics-post-processor.d.ts.map +1 -0
  242. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-post-processor.js → session/processors/metrics/metrics-post-processor.js} +3 -3
  243. package/dist/providers/plugins/sso/session/processors/metrics/metrics-post-processor.js.map +1 -0
  244. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts +24 -0
  245. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.d.ts.map +1 -0
  246. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-sync.plugin.js → session/processors/metrics/metrics-sync-processor.js} +94 -165
  247. package/dist/providers/plugins/sso/session/processors/metrics/metrics-sync-processor.js.map +1 -0
  248. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-types.d.ts → session/processors/metrics/metrics-types.d.ts} +2 -1
  249. package/dist/providers/plugins/sso/session/processors/metrics/metrics-types.d.ts.map +1 -0
  250. package/dist/providers/plugins/sso/{metrics/sync/sso.metrics-types.js → session/processors/metrics/metrics-types.js} +1 -1
  251. package/dist/providers/plugins/sso/session/processors/metrics/metrics-types.js.map +1 -0
  252. package/dist/providers/plugins/sso/session/utils/jsonl-reader.d.ts +15 -0
  253. package/dist/providers/plugins/sso/session/utils/jsonl-reader.d.ts.map +1 -0
  254. package/dist/providers/plugins/sso/session/utils/jsonl-reader.js +33 -0
  255. package/dist/providers/plugins/sso/session/utils/jsonl-reader.js.map +1 -0
  256. package/dist/providers/plugins/sso/session/utils/jsonl-writer.d.ts +26 -0
  257. package/dist/providers/plugins/sso/session/utils/jsonl-writer.d.ts.map +1 -0
  258. package/dist/providers/plugins/sso/{metrics/sync/sso.jsonl-writer.js → session/utils/jsonl-writer.js} +11 -27
  259. package/dist/providers/plugins/sso/session/utils/jsonl-writer.js.map +1 -0
  260. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -1
  261. package/dist/providers/plugins/sso/sso.template.js +71 -44
  262. package/dist/providers/plugins/sso/sso.template.js.map +1 -1
  263. package/dist/utils/file-operations.d.ts +20 -0
  264. package/dist/utils/file-operations.d.ts.map +1 -0
  265. package/dist/utils/file-operations.js +48 -0
  266. package/dist/utils/file-operations.js.map +1 -0
  267. package/dist/utils/logger.d.ts +2 -1
  268. package/dist/utils/logger.d.ts.map +1 -1
  269. package/dist/utils/logger.js +12 -4
  270. package/dist/utils/logger.js.map +1 -1
  271. package/dist/utils/paths.d.ts +20 -5
  272. package/dist/utils/paths.d.ts.map +1 -1
  273. package/dist/utils/paths.js +23 -5
  274. package/dist/utils/paths.js.map +1 -1
  275. package/dist/utils/processes.d.ts +2 -0
  276. package/dist/utils/processes.d.ts.map +1 -1
  277. package/dist/utils/processes.js +6 -1
  278. package/dist/utils/processes.js.map +1 -1
  279. package/package.json +9 -9
  280. package/scripts/copy-plugins.js +57 -0
  281. package/scripts/license-check.js +23 -0
  282. package/bin/codemie-codex.js +0 -18
  283. package/bin/codemie-deepagents.js +0 -18
  284. package/dist/agents/core/BaseMetricsAdapter.d.ts +0 -165
  285. package/dist/agents/core/BaseMetricsAdapter.d.ts.map +0 -1
  286. package/dist/agents/core/BaseMetricsAdapter.js +0 -308
  287. package/dist/agents/core/BaseMetricsAdapter.js.map +0 -1
  288. package/dist/agents/core/metrics/MetricsOrchestrator.d.ts +0 -81
  289. package/dist/agents/core/metrics/MetricsOrchestrator.d.ts.map +0 -1
  290. package/dist/agents/core/metrics/MetricsOrchestrator.js +0 -417
  291. package/dist/agents/core/metrics/MetricsOrchestrator.js.map +0 -1
  292. package/dist/agents/core/metrics/core/DeltaWriter.d.ts +0 -49
  293. package/dist/agents/core/metrics/core/DeltaWriter.d.ts.map +0 -1
  294. package/dist/agents/core/metrics/core/DeltaWriter.js +0 -152
  295. package/dist/agents/core/metrics/core/DeltaWriter.js.map +0 -1
  296. package/dist/agents/core/metrics/core/FileSnapshotter.d.ts +0 -22
  297. package/dist/agents/core/metrics/core/FileSnapshotter.d.ts.map +0 -1
  298. package/dist/agents/core/metrics/core/FileSnapshotter.js +0 -74
  299. package/dist/agents/core/metrics/core/FileSnapshotter.js.map +0 -1
  300. package/dist/agents/core/metrics/core/SessionCorrelator.d.ts +0 -34
  301. package/dist/agents/core/metrics/core/SessionCorrelator.d.ts.map +0 -1
  302. package/dist/agents/core/metrics/core/SessionCorrelator.js +0 -157
  303. package/dist/agents/core/metrics/core/SessionCorrelator.js.map +0 -1
  304. package/dist/agents/core/metrics/core/SyncStateManager.d.ts +0 -69
  305. package/dist/agents/core/metrics/core/SyncStateManager.d.ts.map +0 -1
  306. package/dist/agents/core/metrics/core/SyncStateManager.js +0 -283
  307. package/dist/agents/core/metrics/core/SyncStateManager.js.map +0 -1
  308. package/dist/agents/core/metrics/session/SessionStore.d.ts +0 -43
  309. package/dist/agents/core/metrics/session/SessionStore.d.ts.map +0 -1
  310. package/dist/agents/core/metrics/session/SessionStore.js +0 -146
  311. package/dist/agents/core/metrics/session/SessionStore.js.map +0 -1
  312. package/dist/agents/core/metrics-config.d.ts +0 -38
  313. package/dist/agents/core/metrics-config.d.ts.map +0 -1
  314. package/dist/agents/core/metrics-config.js +0 -96
  315. package/dist/agents/core/metrics-config.js.map +0 -1
  316. package/dist/agents/plugins/claude.metrics.d.ts +0 -102
  317. package/dist/agents/plugins/claude.metrics.d.ts.map +0 -1
  318. package/dist/agents/plugins/claude.metrics.js +0 -656
  319. package/dist/agents/plugins/claude.metrics.js.map +0 -1
  320. package/dist/agents/plugins/claude.plugin.d.ts +0 -19
  321. package/dist/agents/plugins/claude.plugin.d.ts.map +0 -1
  322. package/dist/agents/plugins/claude.plugin.js.map +0 -1
  323. package/dist/agents/plugins/codex.metrics.d.ts +0 -69
  324. package/dist/agents/plugins/codex.metrics.d.ts.map +0 -1
  325. package/dist/agents/plugins/codex.metrics.js +0 -483
  326. package/dist/agents/plugins/codex.metrics.js.map +0 -1
  327. package/dist/agents/plugins/codex.plugin.d.ts +0 -21
  328. package/dist/agents/plugins/codex.plugin.d.ts.map +0 -1
  329. package/dist/agents/plugins/codex.plugin.js +0 -222
  330. package/dist/agents/plugins/codex.plugin.js.map +0 -1
  331. package/dist/agents/plugins/deepagents.plugin.d.ts +0 -21
  332. package/dist/agents/plugins/deepagents.plugin.d.ts.map +0 -1
  333. package/dist/agents/plugins/deepagents.plugin.js +0 -104
  334. package/dist/agents/plugins/deepagents.plugin.js.map +0 -1
  335. package/dist/agents/plugins/gemini.metrics.d.ts +0 -99
  336. package/dist/agents/plugins/gemini.metrics.d.ts.map +0 -1
  337. package/dist/agents/plugins/gemini.metrics.js +0 -475
  338. package/dist/agents/plugins/gemini.metrics.js.map +0 -1
  339. package/dist/agents/plugins/gemini.plugin.d.ts +0 -16
  340. package/dist/agents/plugins/gemini.plugin.d.ts.map +0 -1
  341. package/dist/agents/plugins/gemini.plugin.js +0 -80
  342. package/dist/agents/plugins/gemini.plugin.js.map +0 -1
  343. package/dist/agents/plugins/history-parser.d.ts +0 -52
  344. package/dist/agents/plugins/history-parser.d.ts.map +0 -1
  345. package/dist/agents/plugins/history-parser.js +0 -155
  346. package/dist/agents/plugins/history-parser.js.map +0 -1
  347. package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.d.ts +0 -28
  348. package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.d.ts.map +0 -1
  349. package/dist/providers/plugins/sso/metrics/sync/sso.jsonl-writer.js.map +0 -1
  350. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.d.ts +0 -62
  351. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.d.ts.map +0 -1
  352. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.js +0 -157
  353. package/dist/providers/plugins/sso/metrics/sync/sso.lifecycle-handler.js.map +0 -1
  354. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-aggregator.d.ts.map +0 -1
  355. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-aggregator.js.map +0 -1
  356. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.d.ts +0 -32
  357. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.d.ts.map +0 -1
  358. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.js +0 -159
  359. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-api-client.js.map +0 -1
  360. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-post-processor.d.ts.map +0 -1
  361. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-post-processor.js.map +0 -1
  362. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sender.d.ts.map +0 -1
  363. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sender.js.map +0 -1
  364. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.d.ts +0 -36
  365. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.d.ts.map +0 -1
  366. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-sync.plugin.js.map +0 -1
  367. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-types.d.ts.map +0 -1
  368. package/dist/providers/plugins/sso/metrics/sync/sso.metrics-types.js.map +0 -1
@@ -1,87 +1,11 @@
1
1
  /**
2
2
  * Metrics Collection Types
3
3
  *
4
- * Core type definitions for the metrics collection system.
5
- * Supports file-based metrics gathering from agent session files.
4
+ * Metrics-specific type definitions for the metrics collection system.
5
+ * For core session types, see ../session/types.js
6
6
  */
7
- /**
8
- * File snapshot information
9
- */
10
- export interface FileInfo {
11
- path: string;
12
- size: number;
13
- createdAt: number;
14
- modifiedAt: number;
15
- }
16
- /**
17
- * Snapshot of directory state at a point in time
18
- */
19
- export interface FileSnapshot {
20
- timestamp: number;
21
- files: FileInfo[];
22
- }
23
- /**
24
- * Correlation status
25
- */
26
- export type CorrelationStatus = 'pending' | 'matched' | 'failed';
27
- /**
28
- * Session status
29
- */
30
- export type SessionStatus = 'active' | 'completed' | 'recovered' | 'failed';
31
- /**
32
- * Watermark type (per-agent strategy)
33
- */
34
- export type WatermarkType = 'hash' | 'line' | 'object';
35
- /**
36
- * Watermark data
37
- */
38
- export interface Watermark {
39
- type: WatermarkType;
40
- value: string;
41
- updatedAt: number;
42
- expiresAt: number;
43
- }
44
- /**
45
- * Correlation result
46
- */
47
- export interface CorrelationResult {
48
- status: CorrelationStatus;
49
- agentSessionFile?: string;
50
- agentSessionId?: string;
51
- detectedAt?: number;
52
- retryCount: number;
53
- }
54
- /**
55
- * Monitoring state
56
- */
57
- export interface MonitoringState {
58
- isActive: boolean;
59
- lastCheckTime?: number;
60
- changeCount: number;
61
- }
62
- /**
63
- * Sync status for metrics records
64
- */
65
- export type SyncStatus = 'pending' | 'syncing' | 'synced' | 'failed';
66
- /**
67
- * Session metadata (stored in ~/.codemie/metrics/sessions/{sessionId}.json)
68
- * Contains both session info and sync state
69
- */
70
- export interface MetricsSession {
71
- sessionId: string;
72
- agentName: string;
73
- provider: string;
74
- project?: string;
75
- startTime: number;
76
- endTime?: number;
77
- workingDirectory: string;
78
- gitBranch?: string;
79
- correlation: CorrelationResult;
80
- monitoring: MonitoringState;
81
- watermark?: Watermark;
82
- status: SessionStatus;
83
- syncState?: SyncState;
84
- }
7
+ import type { SyncStatus } from '../session/types.js';
8
+ export type { SyncStatus, MetricsSyncState, Session } from '../session/types.js';
85
9
  /**
86
10
  * Tool execution status
87
11
  */
@@ -104,55 +28,6 @@ export interface FileOperation {
104
28
  linesModified?: number;
105
29
  durationMs?: number;
106
30
  }
107
- /**
108
- * Detailed tool call metric
109
- */
110
- export interface ToolCallMetric {
111
- id: string;
112
- name: string;
113
- timestamp: number;
114
- status: ToolStatus;
115
- input?: Record<string, unknown>;
116
- error?: string;
117
- fileOperation?: FileOperation;
118
- }
119
- /**
120
- * Aggregated tool usage summary
121
- */
122
- export interface ToolUsageSummary {
123
- name: string;
124
- count: number;
125
- successCount?: number;
126
- errorCount?: number;
127
- fileOperations?: {
128
- read?: number;
129
- write?: number;
130
- edit?: number;
131
- delete?: number;
132
- glob?: number;
133
- grep?: number;
134
- };
135
- }
136
- /**
137
- * Metric snapshot (extracted from agent session file)
138
- * This represents the current state of all metrics for a session
139
- */
140
- export interface MetricSnapshot {
141
- sessionId: string;
142
- timestamp: number;
143
- tokens?: {
144
- input: number;
145
- output: number;
146
- cacheCreation?: number;
147
- cacheRead?: number;
148
- };
149
- toolCalls?: ToolCallMetric[];
150
- toolUsageSummary?: ToolUsageSummary[];
151
- turnCount?: number;
152
- duration?: number;
153
- model?: string;
154
- metadata?: Record<string, unknown>;
155
- }
156
31
  /**
157
32
  * Delta record (JSONL line in session_metrics.jsonl)
158
33
  * Each line represents incremental metrics for one turn
@@ -210,107 +85,4 @@ export interface UserPrompt {
210
85
  sessionId: string;
211
86
  pastedContents?: Record<string, unknown>;
212
87
  }
213
- /**
214
- * Sync state (sync_state.json)
215
- */
216
- export interface SyncState {
217
- sessionId: string;
218
- agentSessionId: string;
219
- sessionStartTime: number;
220
- sessionEndTime?: number;
221
- status: 'active' | 'completed' | 'failed';
222
- lastProcessedLine: number;
223
- lastProcessedTimestamp: number;
224
- processedRecordIds: string[];
225
- attachedUserPromptTexts?: string[];
226
- lastSyncedRecordId?: string;
227
- lastSyncAt?: number;
228
- totalDeltas: number;
229
- totalSynced: number;
230
- totalFailed: number;
231
- }
232
- /**
233
- * Agent-specific metrics support interface
234
- */
235
- export interface AgentMetricsSupport {
236
- /**
237
- * Get data paths for this agent
238
- */
239
- getDataPaths(): {
240
- sessionsDir: string;
241
- settingsDir?: string;
242
- };
243
- /**
244
- * Check if file path matches agent's session file pattern
245
- */
246
- matchesSessionPattern(path: string): boolean;
247
- /**
248
- * Extract session ID from file path
249
- */
250
- extractSessionId(path: string): string;
251
- /**
252
- * Parse session file and extract metrics (full snapshot)
253
- */
254
- parseSessionFile(path: string): Promise<MetricSnapshot>;
255
- /**
256
- * Parse incremental metrics from session file
257
- * Returns only new deltas since fromLine
258
- */
259
- parseIncrementalMetrics(path: string, processedRecordIds: Set<string>, attachedUserPromptTexts?: Set<string>): Promise<{
260
- deltas: MetricDelta[];
261
- lastLine: number;
262
- newlyAttachedPrompts?: string[];
263
- }>;
264
- /**
265
- * Get user prompts for a specific session
266
- * Each agent implements this to parse their specific history format
267
- *
268
- * @param sessionId - Agent session ID
269
- * @param fromTimestamp - Start timestamp (Unix ms) - optional
270
- * @param toTimestamp - End timestamp (Unix ms) - optional
271
- * @returns Array of user prompts
272
- */
273
- getUserPrompts(sessionId: string, fromTimestamp?: number, toTimestamp?: number): Promise<UserPrompt[]>;
274
- /**
275
- * Get watermark strategy for this agent
276
- */
277
- getWatermarkStrategy(): WatermarkType;
278
- /**
279
- * Get initialization delay (ms) for this agent
280
- */
281
- getInitDelay(): number;
282
- }
283
- /**
284
- * File change event
285
- */
286
- export interface FileChangeEvent {
287
- path: string;
288
- timestamp: number;
289
- size: number;
290
- hash: string;
291
- }
292
- /**
293
- * Metrics configuration
294
- */
295
- export interface MetricsConfig {
296
- enabled: (provider: string) => boolean;
297
- initDelay: Record<string, number>;
298
- retry: {
299
- attempts: number;
300
- delays: number[];
301
- };
302
- monitoring: {
303
- pollInterval: number;
304
- debounceDelay: number;
305
- };
306
- watermark: {
307
- ttl: number;
308
- };
309
- /**
310
- * Global list of tool names whose errors should be excluded from metrics
311
- * Agents can override this via their metricsConfig.excludeErrorsFromTools
312
- * Example: ['Bash', 'Execute', 'Shell']
313
- */
314
- excludeErrorsFromTools?: string[];
315
- }
316
88
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/metrics/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/metrics/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEtD,YAAY,EAAE,UAAU,EAAE,gBAAgB,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,CAAC;AAEzD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAE1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IAGF,KAAK,EAAE;QACL,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;KAC5B,CAAC;IAGF,UAAU,CAAC,EAAE;QACX,CAAC,QAAQ,EAAE,MAAM,GAAG;YAClB,OAAO,EAAE,MAAM,CAAC;YAChB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IAGF,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;QAC7D,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,EAAE,CAAC;IAGJ,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAGlB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,EAAE,CAAC;IAGJ,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C"}
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * Metrics Collection Types
3
3
  *
4
- * Core type definitions for the metrics collection system.
5
- * Supports file-based metrics gathering from agent session files.
4
+ * Metrics-specific type definitions for the metrics collection system.
5
+ * For core session types, see ../session/types.js
6
6
  */
7
7
  export {};
8
8
  //# sourceMappingURL=types.js.map
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Base Session Processor
3
+ *
4
+ * Defines the contract for session processors.
5
+ * Each processor (metrics, conversations, analytics) implements this interface
6
+ * to transform parsed session data for their specific use case.
7
+ */
8
+ import type { ParsedSession } from './BaseSessionAdapter.js';
9
+ /**
10
+ * Processing context passed to all processors.
11
+ * Contains API credentials and configuration needed for processing.
12
+ */
13
+ export interface ProcessingContext {
14
+ /** API base URL */
15
+ apiBaseUrl: string;
16
+ /** Authentication cookies */
17
+ cookies: string;
18
+ /** API key for localhost development (user-id header) */
19
+ apiKey?: string;
20
+ /** Client type identifier */
21
+ clientType: string;
22
+ /** Client version */
23
+ version: string;
24
+ /** Dry run mode (don't send to API) */
25
+ dryRun: boolean;
26
+ /** CodeMie session ID */
27
+ sessionId?: string;
28
+ /** Agent-specific session ID (e.g., Claude's sessionId from JSONL) */
29
+ agentSessionId?: string;
30
+ /** Path to agent session file */
31
+ agentSessionFile?: string;
32
+ }
33
+ /**
34
+ * Result of processing a session.
35
+ * Allows tracking per-processor status.
36
+ */
37
+ export interface ProcessingResult {
38
+ /** Whether processing succeeded */
39
+ success: boolean;
40
+ /** Optional status message */
41
+ message?: string;
42
+ /** Optional metadata for tracking */
43
+ metadata?: Record<string, unknown>;
44
+ }
45
+ /**
46
+ * Base interface for session processors.
47
+ * Each processor implements a specific use case (metrics, conversations, analytics, etc.).
48
+ */
49
+ export interface SessionProcessor {
50
+ /** Processor name (used for logging and tracking) */
51
+ readonly name: string;
52
+ /** Execution priority (lower runs first) */
53
+ readonly priority: number;
54
+ /**
55
+ * Check if this processor should run for the given session.
56
+ * Allows conditional processing based on session data.
57
+ *
58
+ * @param session - Parsed session data
59
+ * @returns True if processor should run
60
+ */
61
+ shouldProcess(session: ParsedSession): boolean;
62
+ /**
63
+ * Process a session.
64
+ * Implements the specific transformation/upload logic for this processor.
65
+ *
66
+ * @param session - Parsed session data
67
+ * @param context - Processing context (API credentials, config)
68
+ * @returns Processing result (success/failure status)
69
+ */
70
+ process(session: ParsedSession, context: ProcessingContext): Promise<ProcessingResult>;
71
+ }
72
+ //# sourceMappingURL=BaseProcessor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseProcessor.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/BaseProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IAChC,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,uCAAuC;IACvC,MAAM,EAAE,OAAO,CAAC;IAGhB,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,8BAA8B;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B;;;;;;OAMG;IACH,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;IAE/C;;;;;;;OAOG;IACH,OAAO,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACxF"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Base Session Processor
3
+ *
4
+ * Defines the contract for session processors.
5
+ * Each processor (metrics, conversations, analytics) implements this interface
6
+ * to transform parsed session data for their specific use case.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=BaseProcessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseProcessor.js","sourceRoot":"","sources":["../../../../src/agents/core/session/BaseProcessor.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Base Session Adapter
3
+ *
4
+ * Defines the contract for agent-specific session parsing.
5
+ * Each agent (Claude, Gemini) implements this interface to parse
6
+ * their session file format into a unified ParsedSession format.
7
+ */
8
+ /**
9
+ * Agent-agnostic session representation.
10
+ * Both metrics and conversations processors work with this unified format.
11
+ */
12
+ export interface ParsedSession {
13
+ sessionId: string;
14
+ agentName: string;
15
+ agentVersion?: string;
16
+ metadata: {
17
+ projectPath?: string;
18
+ createdAt?: string;
19
+ updatedAt?: string;
20
+ repository?: string;
21
+ branch?: string;
22
+ };
23
+ messages: unknown[];
24
+ subagents?: Array<{
25
+ agentId: string;
26
+ slug?: string;
27
+ filePath: string;
28
+ messages: unknown[];
29
+ }>;
30
+ metrics?: {
31
+ tokens?: {
32
+ input: number;
33
+ output: number;
34
+ cacheRead?: number;
35
+ cacheWrite?: number;
36
+ };
37
+ tools?: Record<string, number>;
38
+ toolStatus?: Record<string, {
39
+ success: number;
40
+ failure: number;
41
+ }>;
42
+ fileOperations?: Array<{
43
+ type: 'write' | 'edit' | 'delete';
44
+ path: string;
45
+ linesAdded?: number;
46
+ linesRemoved?: number;
47
+ }>;
48
+ };
49
+ }
50
+ /**
51
+ * Aggregated result from processing a session with multiple processors.
52
+ * Contains results from all processors that ran.
53
+ */
54
+ export interface AggregatedResult {
55
+ /** True if all processors succeeded */
56
+ success: boolean;
57
+ /** Results from each processor by name */
58
+ processors: Record<string, {
59
+ success: boolean;
60
+ message?: string;
61
+ recordsProcessed?: number;
62
+ }>;
63
+ /** Total records processed across all processors */
64
+ totalRecords: number;
65
+ /** Names of failed processors */
66
+ failedProcessors: string[];
67
+ }
68
+ /**
69
+ * Base interface for session adapters.
70
+ * Each agent implements this to provide agent-specific parsing logic.
71
+ */
72
+ export interface SessionAdapter {
73
+ /** Agent name (e.g., 'claude', 'gemini') */
74
+ readonly agentName: string;
75
+ /**
76
+ * Parse session file to unified format.
77
+ * @param filePath - Absolute path to session file
78
+ * @param sessionId - CodeMie session ID (already correlated)
79
+ * @returns Parsed session in agent-agnostic format
80
+ */
81
+ parseSessionFile(filePath: string, sessionId: string): Promise<ParsedSession>;
82
+ /**
83
+ * Register a processor to run during session processing.
84
+ * Processors are sorted by priority (lower runs first).
85
+ * @param processor - Processor to register
86
+ */
87
+ registerProcessor(processor: import('./BaseProcessor.js').SessionProcessor): void;
88
+ /**
89
+ * Process session file with all registered processors.
90
+ * Reads file once, passes ParsedSession to all processors.
91
+ *
92
+ * @param filePath - Path to agent session file
93
+ * @param sessionId - CodeMie session ID
94
+ * @param context - Processing context (for processors that need API access)
95
+ * @returns Aggregated results from all processors
96
+ */
97
+ processSession(filePath: string, sessionId: string, context: import('./BaseProcessor.js').ProcessingContext): Promise<AggregatedResult>;
98
+ }
99
+ //# sourceMappingURL=BaseSessionAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseSessionAdapter.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/BaseSessionAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;GAGG;AACH,MAAM,WAAW,aAAa;IAE5B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,QAAQ,EAAE;QACR,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;IAGF,QAAQ,EAAE,OAAO,EAAE,CAAC;IAIpB,SAAS,CAAC,EAAE,KAAK,CAAC;QAChB,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,OAAO,EAAE,CAAC;KACrB,CAAC,CAAC;IAGH,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE;YACP,KAAK,EAAE,MAAM,CAAC;YACd,MAAM,EAAE,MAAM,CAAC;YACf,SAAS,CAAC,EAAE,MAAM,CAAC;YACnB,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC;QACF,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAClE,cAAc,CAAC,EAAE,KAAK,CAAC;YACrB,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;YAClC,IAAI,EAAE,MAAM,CAAC;YACb,UAAU,CAAC,EAAE,MAAM,CAAC;YACpB,YAAY,CAAC,EAAE,MAAM,CAAC;SACvB,CAAC,CAAC;KACJ,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,OAAO,EAAE,OAAO,CAAC;IACjB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;QACzB,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,CAAC,CAAC;IACH,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAC;IACrB,iCAAiC;IACjC,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAE9E;;;;OAIG;IACH,iBAAiB,CAAC,SAAS,EAAE,OAAO,oBAAoB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAElF;;;;;;;;OAQG;IACH,cAAc,CACZ,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,oBAAoB,EAAE,iBAAiB,GACtD,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC9B"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Base Session Adapter
3
+ *
4
+ * Defines the contract for agent-specific session parsing.
5
+ * Each agent (Claude, Gemini) implements this interface to parse
6
+ * their session file format into a unified ParsedSession format.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=BaseSessionAdapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseSessionAdapter.js","sourceRoot":"","sources":["../../../../src/agents/core/session/BaseSessionAdapter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Session Store
3
+ *
4
+ * Manages persistence of session data to JSON files.
5
+ * One file per session: ~/.codemie/sessions/{sessionId}.json
6
+ */
7
+ import type { Session } from './types.js';
8
+ export declare class SessionStore {
9
+ /**
10
+ * Save session to disk
11
+ * Path: ~/.codemie/sessions/{sessionId}.json
12
+ */
13
+ saveSession(session: Session): Promise<void>;
14
+ /**
15
+ * Load session from disk
16
+ */
17
+ loadSession(sessionId: string): Promise<Session | null>;
18
+ /**
19
+ * Update session status and reason
20
+ */
21
+ updateSessionStatus(sessionId: string, status: Session['status'], reason?: string): Promise<void>;
22
+ }
23
+ //# sourceMappingURL=SessionStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionStore.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/SessionStore.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAK1C,qBAAa,YAAY;IACvB;;;OAGG;IACG,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBlD;;OAEG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;IAsB7D;;OAEG;IACG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAiBxG"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Session Store
3
+ *
4
+ * Manages persistence of session data to JSON files.
5
+ * One file per session: ~/.codemie/sessions/{sessionId}.json
6
+ */
7
+ import { readFile, writeFile, mkdir } from 'fs/promises';
8
+ import { existsSync } from 'fs';
9
+ import { dirname } from 'path';
10
+ import { getSessionPath } from './session-config.js';
11
+ import { logger } from '../../../utils/logger.js';
12
+ import { createErrorContext, formatErrorForLog } from '../../../utils/errors.js';
13
+ export class SessionStore {
14
+ /**
15
+ * Save session to disk
16
+ * Path: ~/.codemie/sessions/{sessionId}.json
17
+ */
18
+ async saveSession(session) {
19
+ const sessionPath = getSessionPath(session.sessionId);
20
+ try {
21
+ // Ensure directory exists
22
+ const dir = dirname(sessionPath);
23
+ if (!existsSync(dir)) {
24
+ await mkdir(dir, { recursive: true });
25
+ }
26
+ // Write session data
27
+ await writeFile(sessionPath, JSON.stringify(session, null, 2), 'utf-8');
28
+ logger.debug(`[SessionStore] Saved session: ${session.sessionId}`);
29
+ }
30
+ catch (error) {
31
+ const errorContext = createErrorContext(error, { sessionId: session.sessionId });
32
+ logger.error(`[SessionStore] Failed to save session: ${session.sessionId}`, formatErrorForLog(errorContext));
33
+ throw error;
34
+ }
35
+ }
36
+ /**
37
+ * Load session from disk
38
+ */
39
+ async loadSession(sessionId) {
40
+ const sessionPath = getSessionPath(sessionId);
41
+ if (!existsSync(sessionPath)) {
42
+ logger.debug(`[SessionStore] Session file not found: ${sessionId}`);
43
+ return null;
44
+ }
45
+ try {
46
+ const content = await readFile(sessionPath, 'utf-8');
47
+ const session = JSON.parse(content);
48
+ logger.debug(`[SessionStore] Loaded session: ${sessionId}`);
49
+ return session;
50
+ }
51
+ catch (error) {
52
+ const errorContext = createErrorContext(error, { sessionId });
53
+ logger.error(`[SessionStore] Failed to load session: ${sessionId}`, formatErrorForLog(errorContext));
54
+ return null;
55
+ }
56
+ }
57
+ /**
58
+ * Update session status and reason
59
+ */
60
+ async updateSessionStatus(sessionId, status, reason) {
61
+ const session = await this.loadSession(sessionId);
62
+ if (!session) {
63
+ throw new Error(`Session not found: ${sessionId}`);
64
+ }
65
+ session.status = status;
66
+ if (reason) {
67
+ session.reason = reason;
68
+ }
69
+ if (status === 'completed' || status === 'recovered' || status === 'failed') {
70
+ session.endTime = Date.now();
71
+ }
72
+ await this.saveSession(session);
73
+ }
74
+ }
75
+ //# sourceMappingURL=SessionStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SessionStore.js","sourceRoot":"","sources":["../../../../src/agents/core/session/SessionStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * Session Infrastructure Configuration
3
+ *
4
+ * Unified configuration for session management, metrics, and conversations.
5
+ * All session data stored under ~/.codemie/sessions/
6
+ */
7
+ import type { MetricsConfig } from '../types.js';
8
+ /**
9
+ * Metrics collection configuration
10
+ */
11
+ export declare const METRICS_CONFIG: MetricsConfig;
12
+ /**
13
+ * Get session metadata file path
14
+ * Format: ~/.codemie/sessions/{sessionId}.json
15
+ */
16
+ export declare function getSessionPath(sessionId: string): string;
17
+ /**
18
+ * Get session metrics JSONL file path
19
+ * Format: ~/.codemie/sessions/{sessionId}_metrics.jsonl
20
+ */
21
+ export declare function getSessionMetricsPath(sessionId: string): string;
22
+ /**
23
+ * Get session conversation payloads JSONL file path
24
+ * Format: ~/.codemie/sessions/{sessionId}_conversation.jsonl
25
+ */
26
+ export declare function getSessionConversationPath(sessionId: string): string;
27
+ //# sourceMappingURL=session-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-config.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/session-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAIjD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,aA6B5B,CAAC;AAEF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEpE"}