@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
@@ -0,0 +1,61 @@
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 { join } from 'path';
8
+ import { getCodemieHome } from '../../../utils/paths.js';
9
+ /**
10
+ * Metrics collection configuration
11
+ */
12
+ export const METRICS_CONFIG = {
13
+ /**
14
+ * Metrics only enabled for ai-run-sso provider
15
+ * Can be disabled at runtime via CODEMIE_METRICS_DISABLED env var
16
+ */
17
+ enabled: (provider) => {
18
+ // Check if metrics are disabled at runtime
19
+ if (process.env.CODEMIE_METRICS_DISABLED === '1') {
20
+ return false;
21
+ }
22
+ return provider === 'ai-run-sso';
23
+ },
24
+ /**
25
+ * Retry configuration for correlation
26
+ * Exponential backoff: 500ms → 1s → 2s → 4s → 8s → 16s → 32s → 32s
27
+ * Total wait time: ~1.6 minutes
28
+ */
29
+ retry: {
30
+ attempts: 8,
31
+ delays: [500, 1000, 2000, 4000, 8000, 16000, 32000, 32000] // Exponential backoff capped at 32s
32
+ },
33
+ /**
34
+ * Post-processing configuration
35
+ * Global default: exclude errors from shell tools (contains sensitive command output)
36
+ * Individual agents can override this via their metricsConfig.excludeErrorsFromTools
37
+ */
38
+ excludeErrorsFromTools: ['Bash', 'Execute', 'Shell']
39
+ };
40
+ /**
41
+ * Get session metadata file path
42
+ * Format: ~/.codemie/sessions/{sessionId}.json
43
+ */
44
+ export function getSessionPath(sessionId) {
45
+ return join(getCodemieHome(), 'sessions', `${sessionId}.json`);
46
+ }
47
+ /**
48
+ * Get session metrics JSONL file path
49
+ * Format: ~/.codemie/sessions/{sessionId}_metrics.jsonl
50
+ */
51
+ export function getSessionMetricsPath(sessionId) {
52
+ return join(getCodemieHome(), 'sessions', `${sessionId}_metrics.jsonl`);
53
+ }
54
+ /**
55
+ * Get session conversation payloads JSONL file path
56
+ * Format: ~/.codemie/sessions/{sessionId}_conversation.jsonl
57
+ */
58
+ export function getSessionConversationPath(sessionId) {
59
+ return join(getCodemieHome(), 'sessions', `${sessionId}_conversation.jsonl`);
60
+ }
61
+ //# sourceMappingURL=session-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-config.js","sourceRoot":"","sources":["../../../../src/agents/core/session/session-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEzD;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C;;;OAGG;IACH,OAAO,EAAE,CAAC,QAAgB,EAAE,EAAE;QAC5B,2CAA2C;QAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,GAAG,EAAE,CAAC;YACjD,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,QAAQ,KAAK,YAAY,CAAC;IACnC,CAAC;IAED;;;;OAIG;IACH,KAAK,EAAE;QACL,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,oCAAoC;KAChG;IAED;;;;OAIG;IACH,sBAAsB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;CACrD,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;AACjE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,GAAG,SAAS,gBAAgB,CAAC,CAAC;AAC1E,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,SAAiB;IAC1D,OAAO,IAAI,CAAC,cAAc,EAAE,EAAE,UAAU,EAAE,GAAG,SAAS,qBAAqB,CAAC,CAAC;AAC/E,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Session Infrastructure Types
3
+ *
4
+ * Core type definitions for session management system.
5
+ * These types are shared across metrics, conversations, and other processors.
6
+ */
7
+ /**
8
+ * Correlation status
9
+ */
10
+ export type CorrelationStatus = 'pending' | 'matched' | 'failed';
11
+ /**
12
+ * Correlation result
13
+ */
14
+ export interface CorrelationResult {
15
+ status: CorrelationStatus;
16
+ agentSessionFile?: string;
17
+ agentSessionId?: string;
18
+ detectedAt?: number;
19
+ retryCount: number;
20
+ }
21
+ /**
22
+ * Session status
23
+ */
24
+ export type SessionStatus = 'active' | 'completed' | 'recovered' | 'failed';
25
+ /**
26
+ * Sync status (used by all processors)
27
+ */
28
+ export type SyncStatus = 'pending' | 'syncing' | 'synced' | 'failed';
29
+ /**
30
+ * Conversations sync state (ConversationsProcessor)
31
+ */
32
+ export interface ConversationsSyncState {
33
+ conversationId?: string;
34
+ lastSyncedMessageUuid?: string;
35
+ lastSyncedHistoryIndex?: number;
36
+ lastSyncAt?: number;
37
+ totalMessagesSynced?: number;
38
+ totalSyncAttempts?: number;
39
+ lastSyncError?: string;
40
+ }
41
+ /**
42
+ * Metrics sync state (MetricsProcessor)
43
+ * Re-exported from metrics/types.ts for convenience
44
+ */
45
+ export interface MetricsSyncState {
46
+ lastProcessedLine?: number;
47
+ lastProcessedTimestamp: number;
48
+ processedRecordIds: string[];
49
+ attachedUserPromptTexts?: string[];
50
+ lastSyncedRecordId?: string;
51
+ lastSyncAt?: number;
52
+ totalDeltas: number;
53
+ totalSynced: number;
54
+ totalFailed: number;
55
+ lastSyncError?: string;
56
+ }
57
+ /**
58
+ * Hierarchical sync state (per-processor sections)
59
+ */
60
+ export interface SyncState {
61
+ metrics?: MetricsSyncState;
62
+ conversations?: ConversationsSyncState;
63
+ }
64
+ /**
65
+ * Session metadata (stored in ~/.codemie/sessions/{sessionId}.json)
66
+ * Contains session info and sync state for all processors.
67
+ *
68
+ * This is the central session object used by:
69
+ * - Hook handlers (SessionStart, Stop): Create and manage session lifecycle
70
+ * - MetricsProcessor: Syncs metrics deltas
71
+ * - ConversationsProcessor: Syncs conversation messages
72
+ */
73
+ export interface Session {
74
+ sessionId: string;
75
+ agentName: string;
76
+ provider: string;
77
+ project?: string;
78
+ startTime: number;
79
+ endTime?: number;
80
+ workingDirectory: string;
81
+ gitBranch?: string;
82
+ correlation: CorrelationResult;
83
+ status: SessionStatus;
84
+ reason?: string;
85
+ sync?: SyncState;
86
+ }
87
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/session/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,WAAW,GAAG,WAAW,GAAG,QAAQ,CAAC;AAE5E;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,sBAAsB;IAErC,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAGhC,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAG3B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAE/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,uBAAuB,CAAC,EAAE,MAAM,EAAE,CAAC;IAGnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAGpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,aAAa,CAAC,EAAE,sBAAsB,CAAC;CACxC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,OAAO;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,IAAI,CAAC,EAAE,SAAS,CAAC;CAClB"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Session Infrastructure Types
3
+ *
4
+ * Core type definitions for session management system.
5
+ * These types are shared across metrics, conversations, and other processors.
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/agents/core/session/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * JSONL Reader Utility
3
+ *
4
+ * Generic JSONL file reading with type safety.
5
+ * Shared by all session processors and adapters.
6
+ */
7
+ /**
8
+ * Read all records from JSONL file.
9
+ *
10
+ * @param filePath - Absolute path to JSONL file
11
+ * @returns Array of parsed records (empty if file doesn't exist)
12
+ * @throws Error if file exists but cannot be read/parsed
13
+ */
14
+ export declare function readJSONL<T>(filePath: string): Promise<T[]>;
15
+ //# sourceMappingURL=jsonl-reader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl-reader.d.ts","sourceRoot":"","sources":["../../../../../src/agents/core/session/utils/jsonl-reader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAiBjE"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * JSONL Reader Utility
3
+ *
4
+ * Generic JSONL file reading with type safety.
5
+ * Shared by all session processors and adapters.
6
+ */
7
+ import { readFile } from 'fs/promises';
8
+ import { existsSync } from 'fs';
9
+ import { logger } from '../../../../utils/logger.js';
10
+ /**
11
+ * Read all records from JSONL file.
12
+ *
13
+ * @param filePath - Absolute path to JSONL file
14
+ * @returns Array of parsed records (empty if file doesn't exist)
15
+ * @throws Error if file exists but cannot be read/parsed
16
+ */
17
+ export async function readJSONL(filePath) {
18
+ try {
19
+ if (!existsSync(filePath)) {
20
+ return [];
21
+ }
22
+ const content = await readFile(filePath, 'utf8');
23
+ return content
24
+ .split('\n')
25
+ .filter(line => line.trim())
26
+ .map(line => JSON.parse(line));
27
+ }
28
+ catch (error) {
29
+ logger.error('[jsonl-reader] Failed to read JSONL:', error);
30
+ throw error;
31
+ }
32
+ }
33
+ //# sourceMappingURL=jsonl-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl-reader.js","sourceRoot":"","sources":["../../../../../src/agents/core/session/utils/jsonl-reader.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAI,QAAgB;IACjD,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAEjD,OAAO,OAAO;aACX,KAAK,CAAC,IAAI,CAAC;aACX,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aAC3B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAM,CAAC,CAAC;IAExC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;QAC5D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * JSONL Atomic Write Utility
3
+ *
4
+ * Generic JSONL file writing with atomic guarantees.
5
+ * Shared by all session processors and adapters.
6
+ *
7
+ * Safety guarantees:
8
+ * - Atomic rename ensures no partial writes
9
+ * - Fsync ensures durability before rename
10
+ * - Temp file cleanup on error
11
+ * - No data loss on crash/power failure
12
+ */
13
+ /**
14
+ * Atomically write records to JSONL file.
15
+ *
16
+ * Process:
17
+ * 1. Write to temporary file
18
+ * 2. Fsync to ensure data is on disk
19
+ * 3. Atomic rename to target file
20
+ * 4. Cleanup temp file on error
21
+ *
22
+ * @param filePath - Absolute path to target JSONL file
23
+ * @param records - Array of records to write
24
+ */
25
+ export declare function writeJSONLAtomic<T>(filePath: string, records: T[]): Promise<void>;
26
+ //# sourceMappingURL=jsonl-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl-writer.d.ts","sourceRoot":"","sources":["../../../../../src/agents/core/session/utils/jsonl-writer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH;;;;;;;;;;;GAWG;AACH,wBAAsB,gBAAgB,CAAC,CAAC,EACtC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,CAAC,EAAE,GACX,OAAO,CAAC,IAAI,CAAC,CA+Bf"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * JSONL Atomic Write Utility
3
+ *
4
+ * Generic JSONL file writing with atomic guarantees.
5
+ * Shared by all session processors and adapters.
6
+ *
7
+ * Safety guarantees:
8
+ * - Atomic rename ensures no partial writes
9
+ * - Fsync ensures durability before rename
10
+ * - Temp file cleanup on error
11
+ * - No data loss on crash/power failure
12
+ */
13
+ import { writeFile, rename, unlink, open } from 'fs/promises';
14
+ import { existsSync } from 'fs';
15
+ import { logger } from '../../../../utils/logger.js';
16
+ /**
17
+ * Atomically write records to JSONL file.
18
+ *
19
+ * Process:
20
+ * 1. Write to temporary file
21
+ * 2. Fsync to ensure data is on disk
22
+ * 3. Atomic rename to target file
23
+ * 4. Cleanup temp file on error
24
+ *
25
+ * @param filePath - Absolute path to target JSONL file
26
+ * @param records - Array of records to write
27
+ */
28
+ export async function writeJSONLAtomic(filePath, records) {
29
+ const tempPath = `${filePath}.tmp`;
30
+ try {
31
+ // 1. Write to temporary file
32
+ const lines = records.map(r => JSON.stringify(r)).join('\n') + '\n';
33
+ await writeFile(tempPath, lines, 'utf8');
34
+ // 2. Fsync to ensure data is on disk
35
+ const fd = await open(tempPath, 'r+');
36
+ await fd.sync();
37
+ await fd.close();
38
+ // 3. Atomic rename (overwrites target)
39
+ await rename(tempPath, filePath);
40
+ logger.debug(`[jsonl-writer] Atomically wrote ${records.length} records to ${filePath}`);
41
+ }
42
+ catch (error) {
43
+ // Cleanup temp file on error
44
+ try {
45
+ if (existsSync(tempPath)) {
46
+ await unlink(tempPath);
47
+ }
48
+ }
49
+ catch {
50
+ // Ignore cleanup errors
51
+ }
52
+ logger.error('[jsonl-writer] Failed to write JSONL:', error);
53
+ throw error;
54
+ }
55
+ }
56
+ //# sourceMappingURL=jsonl-writer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jsonl-writer.js","sourceRoot":"","sources":["../../../../../src/agents/core/session/utils/jsonl-writer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAC9D,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,QAAgB,EAChB,OAAY;IAEZ,MAAM,QAAQ,GAAG,GAAG,QAAQ,MAAM,CAAC;IAEnC,IAAI,CAAC;QACH,6BAA6B;QAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QACpE,MAAM,SAAS,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QAEzC,qCAAqC;QACrC,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAChB,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC;QAEjB,uCAAuC;QACvC,MAAM,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEjC,MAAM,CAAC,KAAK,CAAC,mCAAmC,OAAO,CAAC,MAAM,eAAe,QAAQ,EAAE,CAAC,CAAC;IAE3F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,6BAA6B;QAC7B,IAAI,CAAC;YACH,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;QAC7D,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -164,10 +164,7 @@ export interface AgentMetadata {
164
164
  customHealthCheck?: () => Promise<boolean>;
165
165
  dataPaths?: {
166
166
  home: string;
167
- sessions?: string;
168
167
  settings?: string;
169
- cache?: string;
170
- user_prompts?: string;
171
168
  };
172
169
  analyticsAdapter?: AgentAnalyticsAdapter;
173
170
  /**
@@ -194,18 +191,10 @@ export interface AgentMetricsConfig {
194
191
  */
195
192
  export interface MetricsConfig {
196
193
  enabled: (provider: string) => boolean;
197
- initDelay: Record<string, number>;
198
194
  retry: {
199
195
  attempts: number;
200
196
  delays: number[];
201
197
  };
202
- monitoring: {
203
- pollInterval: number;
204
- debounceDelay: number;
205
- };
206
- watermark: {
207
- ttl: number;
208
- };
209
198
  /**
210
199
  * Global list of tool names whose errors should be excluded from metrics
211
200
  * Agents can override this via their metricsConfig.excludeErrorsFromTools
@@ -217,6 +206,8 @@ export interface MetricsConfig {
217
206
  * Agent configuration passed to runtime handlers
218
207
  */
219
208
  export interface AgentConfig {
209
+ agent?: string;
210
+ agentDisplayName?: string;
220
211
  provider?: string;
221
212
  model?: string;
222
213
  baseUrl?: string;
@@ -224,6 +215,62 @@ export interface AgentConfig {
224
215
  timeout?: number;
225
216
  profileName?: string;
226
217
  }
218
+ /**
219
+ * Hook transformer interface for agent-specific payload transformation
220
+ * Transforms agent-specific hook events to internal BaseHookEvent format
221
+ *
222
+ * Agents implement this interface to convert their hook payloads to the
223
+ * internal format expected by CodeMie CLI hook handlers.
224
+ *
225
+ * @example Gemini transformer
226
+ * ```typescript
227
+ * class GeminiHookTransformer implements HookTransformer {
228
+ * readonly agentName = 'gemini';
229
+ *
230
+ * transform(event: unknown): BaseHookEvent {
231
+ * const geminiEvent = event as GeminiHookEvent;
232
+ * return {
233
+ * ...geminiEvent,
234
+ * permission_mode: 'default' // Add default value
235
+ * };
236
+ * }
237
+ * }
238
+ * ```
239
+ */
240
+ export interface HookTransformer {
241
+ /**
242
+ * Transform agent-specific hook event to internal format
243
+ * @param event - Raw hook event from agent
244
+ * @returns Transformed event in internal BaseHookEvent format
245
+ */
246
+ transform(event: unknown): BaseHookEvent;
247
+ /**
248
+ * Agent name for this transformer
249
+ */
250
+ readonly agentName: string;
251
+ }
252
+ /**
253
+ * Base hook event structure - all hooks include these fields
254
+ * This is the internal format used by CodeMie CLI hook handlers
255
+ *
256
+ * See Claude Code hook documentation: https://code.claude.com/docs/en/hooks#hook-input
257
+ */
258
+ export interface BaseHookEvent {
259
+ session_id: string;
260
+ transcript_path: string;
261
+ permission_mode: string;
262
+ hook_event_name: string;
263
+ cwd?: string;
264
+ source?: string;
265
+ reason?: string;
266
+ agent_id?: string;
267
+ agent_transcript_path?: string;
268
+ stop_hook_active?: boolean;
269
+ }
270
+ export interface BaseExtensionInstaller {
271
+ getTargetPath(): string;
272
+ install(): Promise<any>;
273
+ }
227
274
  /**
228
275
  * Agent adapter interface - implemented by BaseAgentAdapter
229
276
  */
@@ -237,5 +284,25 @@ export interface AgentAdapter {
237
284
  run(args: string[], env?: Record<string, string>): Promise<void>;
238
285
  getVersion(): Promise<string | null>;
239
286
  getMetricsConfig(): AgentMetricsConfig | undefined;
287
+ /**
288
+ * Get hook transformer for this agent (optional)
289
+ * Returns a transformer to convert agent-specific hook payloads to internal format
290
+ *
291
+ * Agents that use different hook payload structures should implement this.
292
+ * Agents using Claude-compatible payloads can omit this.
293
+ *
294
+ * @returns Hook transformer instance or undefined
295
+ */
296
+ getHookTransformer?(): HookTransformer | undefined;
297
+ /**
298
+ * Get extension installer for this agent (optional)
299
+ * Returns installer to handle plugin/extension installation
300
+ *
301
+ * Agents that require extensions/plugins should implement this.
302
+ * Installer will be called automatically by provider lifecycle hooks.
303
+ *
304
+ * @returns BaseExtensionInstaller instance or undefined
305
+ */
306
+ getExtensionInstaller?(): BaseExtensionInstaller | undefined;
240
307
  }
241
308
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/core/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,74 @@
1
+ /**
2
+ * Claude Message Types
3
+ *
4
+ * Type definitions for Claude session JSONL format.
5
+ * Used by ClaudeSessionAdapter to parse session files from ~/.claude/projects/
6
+ */
7
+ /**
8
+ * Claude session message (from ~/.claude/projects/*.jsonl)
9
+ */
10
+ export interface ClaudeMessage {
11
+ type: 'user' | 'assistant' | 'system' | string;
12
+ subtype?: 'api_error' | string;
13
+ uuid: string;
14
+ parentUuid?: string;
15
+ sessionId: string;
16
+ timestamp: string;
17
+ cwd?: string;
18
+ message?: {
19
+ role: 'user' | 'assistant';
20
+ model?: string;
21
+ content: string | ContentItem[];
22
+ usage?: {
23
+ input_tokens?: number;
24
+ output_tokens?: number;
25
+ cache_creation_input_tokens?: number;
26
+ cache_read_input_tokens?: number;
27
+ };
28
+ Output?: {
29
+ __type?: string;
30
+ };
31
+ error?: {
32
+ message?: string;
33
+ status?: number;
34
+ };
35
+ };
36
+ error?: {
37
+ status?: number;
38
+ error?: {
39
+ Message?: string;
40
+ message?: string;
41
+ };
42
+ };
43
+ toolUseResult?: {
44
+ type: string;
45
+ file?: {
46
+ filePath: string;
47
+ content: string;
48
+ };
49
+ };
50
+ }
51
+ /**
52
+ * Content item in Claude message
53
+ */
54
+ export interface ContentItem {
55
+ type: 'text' | 'tool_use' | 'tool_result' | 'thinking';
56
+ text?: string;
57
+ thinking?: string;
58
+ id?: string;
59
+ name?: string;
60
+ input?: Record<string, unknown>;
61
+ tool_use_id?: string;
62
+ content?: string;
63
+ isError?: boolean;
64
+ }
65
+ /**
66
+ * Tool use block in Claude message
67
+ */
68
+ export interface ToolUse {
69
+ type: 'tool_use';
70
+ id: string;
71
+ name: string;
72
+ input: Record<string, unknown>;
73
+ }
74
+ //# sourceMappingURL=claude-message-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-message-types.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/claude-message-types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC/C,OAAO,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE;QACR,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;QAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,GAAG,WAAW,EAAE,CAAC;QAChC,KAAK,CAAC,EAAE;YACN,YAAY,CAAC,EAAE,MAAM,CAAC;YACtB,aAAa,CAAC,EAAE,MAAM,CAAC;YACvB,2BAA2B,CAAC,EAAE,MAAM,CAAC;YACrC,uBAAuB,CAAC,EAAE,MAAM,CAAC;SAClC,CAAC;QACF,MAAM,CAAC,EAAE;YACP,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;QACF,KAAK,CAAC,EAAE;YACN,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,MAAM,CAAC,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;IACF,KAAK,CAAC,EAAE;QACN,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE;YACN,OAAO,CAAC,EAAE,MAAM,CAAC;YACjB,OAAO,CAAC,EAAE,MAAM,CAAC;SAClB,CAAC;KACH,CAAC;IACF,aAAa,CAAC,EAAE;QACd,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,CAAC,EAAE;YACL,QAAQ,EAAE,MAAM,CAAC;YACjB,OAAO,EAAE,MAAM,CAAC;SACjB,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,aAAa,GAAG,UAAU,CAAC;IACvD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,UAAU,CAAC;IACjB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Claude Message Types
3
+ *
4
+ * Type definitions for Claude session JSONL format.
5
+ * Used by ClaudeSessionAdapter to parse session files from ~/.claude/projects/
6
+ */
7
+ export {};
8
+ //# sourceMappingURL=claude-message-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-message-types.js","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/claude-message-types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Claude Plugin Installer
3
+ *
4
+ * Handles automatic installation of Claude plugin to user's home directory
5
+ * for SSO provider integration.
6
+ *
7
+ * Extends BaseExtensionInstaller to provide Claude-specific paths.
8
+ * All installation logic is inherited from the base class.
9
+ *
10
+ * @module agents/plugins/claude/plugin-installer
11
+ */
12
+ import { BaseExtensionInstaller } from '../../core/extension/BaseExtensionInstaller.js';
13
+ import type { AgentMetadata } from '../../core/types.js';
14
+ /**
15
+ * Re-export result type for backward compatibility
16
+ */
17
+ export type { ExtensionInstallationResult as PluginInstallationResult } from '../../core/extension/BaseExtensionInstaller.js';
18
+ /**
19
+ * Claude Plugin Installer
20
+ *
21
+ * Installs CodeMie plugin for Claude Code to enable session tracking,
22
+ * metrics collection, and conversation sync.
23
+ *
24
+ * Reduces from 260 lines to ~40 lines by extending BaseExtensionInstaller.
25
+ */
26
+ export declare class ClaudePluginInstaller extends BaseExtensionInstaller {
27
+ /**
28
+ * Constructor
29
+ * @param metadata - Agent metadata containing name, displayName, etc.
30
+ */
31
+ constructor(metadata: AgentMetadata);
32
+ /**
33
+ * Get the source plugin directory path
34
+ * Works in both development and npm package contexts
35
+ */
36
+ protected getSourcePath(): string;
37
+ /**
38
+ * Get the target installation directory
39
+ * @returns ~/.codemie/claude-plugin
40
+ */
41
+ getTargetPath(): string;
42
+ /**
43
+ * Get the manifest file path (relative to base directory)
44
+ * @returns .claude-plugin/plugin.json
45
+ */
46
+ protected getManifestPath(): string;
47
+ /**
48
+ * Get list of critical files that must exist after installation
49
+ * @returns Array of relative file paths
50
+ */
51
+ protected getCriticalFiles(): string[];
52
+ }
53
+ //# sourceMappingURL=claude.plugin-installer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude.plugin-installer.d.ts","sourceRoot":"","sources":["../../../../src/agents/plugins/claude/claude.plugin-installer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAKH,OAAO,EAAE,sBAAsB,EAAE,MAAM,gDAAgD,CAAC;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;GAEG;AACH,YAAY,EAAE,2BAA2B,IAAI,wBAAwB,EAAE,MAAM,gDAAgD,CAAC;AAE9H;;;;;;;GAOG;AACH,qBAAa,qBAAsB,SAAQ,sBAAsB;IAC/D;;;OAGG;gBACS,QAAQ,EAAE,aAAa;IAInC;;;OAGG;IACH,SAAS,CAAC,aAAa,IAAI,MAAM;IAMjC;;;OAGG;IACH,aAAa,IAAI,MAAM;IAIvB;;;OAGG;IACH,SAAS,CAAC,eAAe,IAAI,MAAM;IAInC;;;OAGG;IACH,SAAS,CAAC,gBAAgB,IAAI,MAAM,EAAE;CAGvC"}