@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,522 @@
1
+ /**
2
+ * Base Extension Installer
3
+ *
4
+ * Abstract base class providing common installation logic for agent extensions/plugins.
5
+ * Uses Template Method pattern - subclasses override agent-specific parts.
6
+ *
7
+ * Common logic (~220 lines):
8
+ * - Version detection from manifest JSON
9
+ * - Check if already installed (compare versions)
10
+ * - Copy files recursively from source to target
11
+ * - Verify installation (check critical files, validate JSON)
12
+ * - Return installation result with detailed info
13
+ * - Logging with agent-specific context
14
+ *
15
+ * Agent-specific parts (4 methods to override):
16
+ * - getSourcePath(): Where extension files are bundled
17
+ * - getTargetPath(): Where to install in user's home
18
+ * - getManifestPath(): Relative path to manifest file
19
+ * - getCriticalFiles(): List of files to verify
20
+ *
21
+ * @module agents/core/extension/BaseExtensionInstaller
22
+ */
23
+ import { mkdir, cp, access, readFile, writeFile, readdir, stat } from 'fs/promises';
24
+ import { join, dirname, relative } from 'path';
25
+ import { constants, existsSync } from 'fs';
26
+ import { logger } from '../../../utils/logger.js';
27
+ /**
28
+ * Base Extension Installer Abstract Class
29
+ *
30
+ * Provides common installation logic shared across all agent extensions.
31
+ * Subclasses provide agent-specific paths and configuration.
32
+ */
33
+ export class BaseExtensionInstaller {
34
+ agentName;
35
+ /**
36
+ * Constructor
37
+ * @param agentName - Agent name from metadata (e.g., 'claude', 'gemini')
38
+ */
39
+ constructor(agentName) {
40
+ this.agentName = agentName;
41
+ }
42
+ // ==========================================
43
+ // Common logic (shared across all agents)
44
+ // ==========================================
45
+ /**
46
+ * Get version from manifest JSON file
47
+ *
48
+ * @param basePath - Base directory path (source or target)
49
+ * @returns Version string or null if not found
50
+ */
51
+ async getVersion(basePath) {
52
+ try {
53
+ const manifestPath = join(basePath, this.getManifestPath());
54
+ const content = await readFile(manifestPath, 'utf-8');
55
+ const json = JSON.parse(content);
56
+ return json.version || null;
57
+ }
58
+ catch {
59
+ return null;
60
+ }
61
+ }
62
+ /**
63
+ * Read local copy configuration from manifest
64
+ *
65
+ * Reads from local-install.json first (preferred), with fallback to plugin.json
66
+ * for backward compatibility.
67
+ *
68
+ * @returns LocalCopyConfig if enabled, null otherwise
69
+ */
70
+ async readLocalCopyFromManifest() {
71
+ try {
72
+ const sourcePath = this.getSourcePath();
73
+ const manifestDir = dirname(join(sourcePath, this.getManifestPath()));
74
+ // Try reading from separate local-install.json file first (preferred)
75
+ const localInstallPath = join(manifestDir, 'local-install.json');
76
+ try {
77
+ const localInstallContent = await readFile(localInstallPath, 'utf-8');
78
+ const localConfig = JSON.parse(localInstallContent);
79
+ if (!localConfig.enabled)
80
+ return null;
81
+ logger.debug(`[${this.agentName}] Loaded local copy config from local-install.json`);
82
+ // Apply defaults
83
+ return {
84
+ enabled: true,
85
+ strategy: localConfig.strategy || 'hybrid',
86
+ includes: localConfig.includes || [],
87
+ excludes: localConfig.excludes || [],
88
+ targetDir: localConfig.targetDir || '.codemie',
89
+ preserveStructure: localConfig.preserveStructure ?? true,
90
+ overwritePolicy: localConfig.overwritePolicy || 'newer'
91
+ };
92
+ }
93
+ catch {
94
+ // Fallback to reading from plugin.json (backward compatibility)
95
+ logger.debug(`[${this.agentName}] local-install.json not found, checking plugin.json`);
96
+ const manifestPath = join(sourcePath, this.getManifestPath());
97
+ const content = await readFile(manifestPath, 'utf-8');
98
+ const manifest = JSON.parse(content);
99
+ if (!manifest.localCopy?.enabled)
100
+ return null;
101
+ logger.debug(`[${this.agentName}] Loaded local copy config from plugin.json (deprecated)`);
102
+ // Apply defaults
103
+ return {
104
+ enabled: true,
105
+ strategy: manifest.localCopy.strategy || 'hybrid',
106
+ includes: manifest.localCopy.includes || [],
107
+ excludes: manifest.localCopy.excludes || [],
108
+ targetDir: manifest.localCopy.targetDir || '.codemie',
109
+ preserveStructure: manifest.localCopy.preserveStructure ?? true,
110
+ overwritePolicy: manifest.localCopy.overwritePolicy || 'newer'
111
+ };
112
+ }
113
+ }
114
+ catch (error) {
115
+ logger.debug(`[${this.agentName}] Failed to read local copy config: ${error}`);
116
+ return null;
117
+ }
118
+ }
119
+ /**
120
+ * Install extension files to local working directory
121
+ *
122
+ * @param sourcePath - Source directory path (global installation)
123
+ * @param config - Local copy configuration
124
+ * @returns Result with copied files, skipped files, and errors
125
+ */
126
+ async installLocal(sourcePath, config) {
127
+ const { resolveLocalTargetPath } = await import('../../../utils/paths.js');
128
+ const result = {
129
+ success: false,
130
+ targetPath: '',
131
+ copiedFiles: [],
132
+ skippedFiles: [],
133
+ errors: []
134
+ };
135
+ try {
136
+ // 1. Resolve target directory
137
+ result.targetPath = resolveLocalTargetPath(config.targetDir);
138
+ logger.info(`[${this.agentName}] Local copy target: ${result.targetPath}`);
139
+ // 2. Check version (skip if up-to-date)
140
+ const sourceVersion = await this.getVersion(sourcePath);
141
+ if (!await this.shouldUpdateLocal(result.targetPath, sourceVersion || 'unknown')) {
142
+ result.success = true;
143
+ result.skippedFiles.push('All files (already up-to-date)');
144
+ return result;
145
+ }
146
+ // 3. Ensure target directory exists
147
+ await mkdir(result.targetPath, { recursive: true });
148
+ // 4. Walk source directory and copy selectively
149
+ const filesInfo = await this.walkDirectory(sourcePath, sourcePath, config);
150
+ for (const file of filesInfo.include) {
151
+ try {
152
+ const sourceFull = join(sourcePath, file);
153
+ const targetFull = join(result.targetPath, file);
154
+ // Ensure parent directory exists
155
+ await mkdir(dirname(targetFull), { recursive: true });
156
+ // Copy with overwrite policy
157
+ if (await this.shouldCopyFile(sourceFull, targetFull, config.overwritePolicy)) {
158
+ await cp(sourceFull, targetFull, { force: true });
159
+ result.copiedFiles.push(file);
160
+ logger.debug(`[${this.agentName}] Copied: ${file}`);
161
+ }
162
+ else {
163
+ result.skippedFiles.push(file);
164
+ }
165
+ }
166
+ catch (error) {
167
+ const errorMsg = `Failed to copy ${file}: ${error}`;
168
+ result.errors.push(errorMsg);
169
+ logger.warn(`[${this.agentName}] ${errorMsg}`);
170
+ }
171
+ }
172
+ // 5. Write version tracking file
173
+ await this.writeVersionFile(result.targetPath, sourceVersion);
174
+ result.success = result.errors.length === 0;
175
+ logger.info(`[${this.agentName}] Local copy: ${result.copiedFiles.length} copied, ` +
176
+ `${result.skippedFiles.length} skipped, ${result.errors.length} errors`);
177
+ }
178
+ catch (error) {
179
+ const errorMsg = error instanceof Error ? error.message : String(error);
180
+ result.errors.push(errorMsg);
181
+ logger.error(`[${this.agentName}] Local copy failed: ${errorMsg}`);
182
+ }
183
+ return result;
184
+ }
185
+ /**
186
+ * Recursively walk directory and filter files
187
+ *
188
+ * @param basePath - Base source path
189
+ * @param currentPath - Current directory being walked
190
+ * @param config - Local copy configuration
191
+ * @returns Lists of included and excluded files
192
+ */
193
+ async walkDirectory(basePath, currentPath, config) {
194
+ const result = { include: [], exclude: [] };
195
+ const entries = await readdir(currentPath, { withFileTypes: true });
196
+ for (const entry of entries) {
197
+ const fullPath = join(currentPath, entry.name);
198
+ const relativePath = relative(basePath, fullPath);
199
+ if (entry.isDirectory()) {
200
+ // Recurse into directory
201
+ const nested = await this.walkDirectory(basePath, fullPath, config);
202
+ result.include.push(...nested.include);
203
+ result.exclude.push(...nested.exclude);
204
+ }
205
+ else {
206
+ // Apply filter
207
+ if (this.shouldIncludeFile(relativePath, config)) {
208
+ result.include.push(relativePath);
209
+ }
210
+ else {
211
+ result.exclude.push(relativePath);
212
+ }
213
+ }
214
+ }
215
+ return result;
216
+ }
217
+ /**
218
+ * Check if file should be included based on pattern matching strategy
219
+ *
220
+ * @param relativePath - File path relative to base
221
+ * @param config - Local copy configuration
222
+ * @returns true if file should be included
223
+ */
224
+ shouldIncludeFile(relativePath, config) {
225
+ // Import glob matcher (placeholder - will be implemented)
226
+ // TODO: Import actual pattern matcher from filters module
227
+ const matchesPattern = (path, pattern) => {
228
+ // Simple glob matching - replace with actual implementation
229
+ const regexPattern = pattern
230
+ .replace(/\*/g, '.*')
231
+ .replace(/\?/g, '.');
232
+ return new RegExp(`^${regexPattern}$`).test(path);
233
+ };
234
+ if (config.strategy === 'whitelist') {
235
+ return config.includes.some(pattern => matchesPattern(relativePath, pattern));
236
+ }
237
+ if (config.strategy === 'blacklist') {
238
+ return !config.excludes.some(pattern => matchesPattern(relativePath, pattern));
239
+ }
240
+ // Hybrid: match includes, then apply excludes
241
+ const included = config.includes.some(pattern => matchesPattern(relativePath, pattern));
242
+ if (!included)
243
+ return false;
244
+ const excluded = config.excludes.some(pattern => matchesPattern(relativePath, pattern));
245
+ return !excluded;
246
+ }
247
+ /**
248
+ * Check if file should be copied based on overwrite policy
249
+ *
250
+ * @param sourcePath - Source file path
251
+ * @param targetPath - Target file path
252
+ * @param policy - Overwrite policy
253
+ * @returns true if file should be copied
254
+ */
255
+ async shouldCopyFile(sourcePath, targetPath, policy) {
256
+ if (policy === 'always')
257
+ return true;
258
+ if (policy === 'never' && existsSync(targetPath))
259
+ return false;
260
+ // 'newer' policy: compare timestamps
261
+ if (policy === 'newer' && existsSync(targetPath)) {
262
+ try {
263
+ const [sourceStats, targetStats] = await Promise.all([
264
+ stat(sourcePath),
265
+ stat(targetPath)
266
+ ]);
267
+ return sourceStats.mtime > targetStats.mtime;
268
+ }
269
+ catch {
270
+ return true; // Copy if stat fails
271
+ }
272
+ }
273
+ return true; // Copy if target doesn't exist
274
+ }
275
+ /**
276
+ * Write version file to track local installation
277
+ *
278
+ * @param targetPath - Target directory path
279
+ * @param version - Extension version
280
+ */
281
+ async writeVersionFile(targetPath, version) {
282
+ const versionFile = join(targetPath, `${this.agentName}.extension.json`);
283
+ const versionInfo = {
284
+ version: version || 'unknown',
285
+ installedAt: new Date().toISOString()
286
+ };
287
+ try {
288
+ await writeFile(versionFile, JSON.stringify(versionInfo, null, 2), 'utf-8');
289
+ logger.debug(`[${this.agentName}] Version file written: ${versionFile}`);
290
+ }
291
+ catch (error) {
292
+ logger.warn(`[${this.agentName}] Failed to write version file: ${error}`);
293
+ }
294
+ }
295
+ /**
296
+ * Check if local extension should be updated
297
+ *
298
+ * @param targetPath - Target directory path
299
+ * @param sourceVersion - Source extension version
300
+ * @returns true if update is needed
301
+ */
302
+ async shouldUpdateLocal(targetPath, sourceVersion) {
303
+ const versionFile = join(targetPath, `${this.agentName}.extension.json`);
304
+ try {
305
+ const content = await readFile(versionFile, 'utf-8');
306
+ const versionInfo = JSON.parse(content);
307
+ if (versionInfo.version === sourceVersion) {
308
+ logger.debug(`[${this.agentName}] Local extension already at v${sourceVersion}`);
309
+ return false;
310
+ }
311
+ logger.info(`[${this.agentName}] Updating local: v${versionInfo.version} → v${sourceVersion}`);
312
+ return true;
313
+ }
314
+ catch {
315
+ // No version file or invalid = first install
316
+ return true;
317
+ }
318
+ }
319
+ /**
320
+ * Check if extension is already installed and get version info
321
+ *
322
+ * Verifies:
323
+ * - Target directory exists
324
+ * - Manifest file exists and is readable
325
+ * - Hooks file exists and is readable
326
+ *
327
+ * @returns Object with installation status and version, or null if not installed
328
+ */
329
+ async getInstalledInfo() {
330
+ try {
331
+ const targetPath = this.getTargetPath();
332
+ // Check if directory exists
333
+ await access(targetPath, constants.F_OK);
334
+ // Verify manifest exists
335
+ const manifestPath = join(targetPath, this.getManifestPath());
336
+ await access(manifestPath, constants.R_OK);
337
+ // Verify hooks exist (critical for extension functionality)
338
+ const hooksPath = join(targetPath, 'hooks', 'hooks.json');
339
+ await access(hooksPath, constants.R_OK);
340
+ // Get installed version
341
+ const version = await this.getVersion(targetPath);
342
+ return { installed: true, version };
343
+ }
344
+ catch {
345
+ return null;
346
+ }
347
+ }
348
+ /**
349
+ * Verify extension structure after installation
350
+ *
351
+ * Validates:
352
+ * - Critical files exist
353
+ * - JSON files are valid
354
+ *
355
+ * @param targetPath - Path to installed extension directory
356
+ * @returns True if extension structure is valid
357
+ */
358
+ async verifyInstallation(targetPath) {
359
+ try {
360
+ const criticalFiles = this.getCriticalFiles();
361
+ for (const file of criticalFiles) {
362
+ const filePath = join(targetPath, file);
363
+ await access(filePath, constants.R_OK);
364
+ // Verify JSON files are valid
365
+ if (file.endsWith('.json')) {
366
+ const content = await readFile(filePath, 'utf-8');
367
+ JSON.parse(content); // Throws if invalid JSON
368
+ }
369
+ }
370
+ return true;
371
+ }
372
+ catch {
373
+ return false;
374
+ }
375
+ }
376
+ /**
377
+ * Install extension to target directory with version-aware updates
378
+ *
379
+ * Installation process:
380
+ * 1. Verify source exists
381
+ * 2. Get source and installed versions (from manifest, not hardcoded)
382
+ * 3. Compare versions - skip if identical
383
+ * 4. Copy files from source to target
384
+ * 5. Verify installation integrity
385
+ * 6. Log results with agent-specific context
386
+ * 7. Return detailed result
387
+ *
388
+ * @returns Installation result with status, action, and version info
389
+ */
390
+ async install() {
391
+ logger.info(`[${this.agentName}] Checking CodeMie extension...`);
392
+ try {
393
+ const sourcePath = this.getSourcePath();
394
+ const targetPath = this.getTargetPath();
395
+ logger.info(`[${this.agentName}] Extension paths: source=${sourcePath}, target=${targetPath}`);
396
+ // 1. Verify source exists
397
+ logger.info(`[${this.agentName}] Step 1: Verifying source path exists...`);
398
+ try {
399
+ await access(sourcePath, constants.R_OK);
400
+ logger.info(`[${this.agentName}] Source path verified: ${sourcePath}`);
401
+ }
402
+ catch {
403
+ throw new Error(`Source path not found: ${sourcePath}`);
404
+ }
405
+ // 2. Get source and installed versions (from manifest, not hardcoded)
406
+ logger.info(`[${this.agentName}] Step 2: Getting versions...`);
407
+ const sourceVersion = await this.getVersion(sourcePath);
408
+ logger.info(`[${this.agentName}] Source version: ${sourceVersion || 'not found'}`);
409
+ const installedInfo = await this.getInstalledInfo();
410
+ logger.info(`[${this.agentName}] Installed info: ${JSON.stringify(installedInfo)}`);
411
+ // 3. Compare versions - skip if identical
412
+ logger.info(`[${this.agentName}] Step 3: Comparing versions...`);
413
+ let action;
414
+ if (!installedInfo?.installed) {
415
+ action = 'copied';
416
+ logger.info(`[${this.agentName}] Action determined: copied (not installed)`);
417
+ }
418
+ else if (sourceVersion && installedInfo.version && sourceVersion !== installedInfo.version) {
419
+ action = 'updated';
420
+ logger.info(`[${this.agentName}] Action determined: updated (${installedInfo.version} → ${sourceVersion})`);
421
+ }
422
+ else {
423
+ action = 'already_exists';
424
+ logger.info(`[${this.agentName}] Action determined: already_exists (version ${sourceVersion || 'unknown'})`);
425
+ }
426
+ // 4. Copy files from source to target (if needed)
427
+ if (action !== 'already_exists') {
428
+ logger.info(`[${this.agentName}] Step 4: Copying extension files...`);
429
+ // Ensure parent directory exists
430
+ await mkdir(dirname(targetPath), { recursive: true });
431
+ // Copy entire extension directory (recursive, force overwrite)
432
+ await cp(sourcePath, targetPath, {
433
+ recursive: true,
434
+ force: true,
435
+ errorOnExist: false
436
+ });
437
+ logger.info(`[${this.agentName}] Files copied successfully`);
438
+ // 5. Verify installation integrity
439
+ logger.info(`[${this.agentName}] Step 5: Verifying installation...`);
440
+ const isValid = await this.verifyInstallation(targetPath);
441
+ logger.info(`[${this.agentName}] Verification result: ${isValid}`);
442
+ if (!isValid) {
443
+ logger.warn(`[${this.agentName}] Installation verification failed`);
444
+ return {
445
+ success: false,
446
+ targetPath,
447
+ action: 'failed',
448
+ error: 'Extension structure verification failed after copy',
449
+ sourceVersion: sourceVersion || undefined
450
+ };
451
+ }
452
+ }
453
+ else {
454
+ logger.info(`[${this.agentName}] Skipping copy - extension already up-to-date`);
455
+ }
456
+ // Build result
457
+ logger.info(`[${this.agentName}] Step 6: Building result object...`);
458
+ const result = {
459
+ success: true,
460
+ targetPath,
461
+ action,
462
+ sourceVersion: sourceVersion || undefined,
463
+ installedVersion: installedInfo?.version || undefined
464
+ };
465
+ // 6. Log result inside installer (agent-specific context)
466
+ logger.info(`[${this.agentName}] Step 7: Logging final result (action=${action})...`);
467
+ if (result.action === 'copied') {
468
+ const versionInfo = result.sourceVersion ? ` (v${result.sourceVersion})` : '';
469
+ logger.info(`[${this.agentName}] Extension installed to ${result.targetPath}${versionInfo}`);
470
+ }
471
+ else if (result.action === 'updated') {
472
+ const versionInfo = result.installedVersion && result.sourceVersion
473
+ ? ` (v${result.installedVersion} → v${result.sourceVersion})`
474
+ : '';
475
+ logger.info(`[${this.agentName}] Extension updated at ${result.targetPath}${versionInfo}`);
476
+ }
477
+ else {
478
+ const versionInfo = result.sourceVersion ? ` (v${result.sourceVersion})` : '';
479
+ logger.debug(`[${this.agentName}] Extension already up-to-date at ${result.targetPath}${versionInfo}`);
480
+ }
481
+ // 7. Perform local copy to working directory (NEW)
482
+ logger.info(`[${this.agentName}] Checking local copy configuration...`);
483
+ const localConfig = await this.readLocalCopyFromManifest();
484
+ if (localConfig?.enabled) {
485
+ logger.info(`[${this.agentName}] Local copy enabled, copying to working directory...`);
486
+ const localResult = await this.installLocal(sourcePath, localConfig);
487
+ result.localCopy = localResult;
488
+ if (localResult.success && localResult.copiedFiles.length > 0) {
489
+ logger.info(`[${this.agentName}] Local copy: ${localResult.copiedFiles.length} files copied to ${localResult.targetPath}`);
490
+ }
491
+ else if (localResult.success) {
492
+ logger.debug(`[${this.agentName}] Local copy: already up-to-date`);
493
+ }
494
+ else {
495
+ logger.warn(`[${this.agentName}] Local copy failed with ${localResult.errors.length} errors`);
496
+ }
497
+ }
498
+ else {
499
+ logger.debug(`[${this.agentName}] Local copy not enabled, skipping`);
500
+ }
501
+ // 8. Return detailed result
502
+ logger.info(`[${this.agentName}] Installation complete - returning result`);
503
+ return result;
504
+ }
505
+ catch (error) {
506
+ const errorMsg = error instanceof Error ? error.message : String(error);
507
+ const errorStack = error instanceof Error ? error.stack : undefined;
508
+ logger.error(`[${this.agentName}] Extension installation failed: ${errorMsg}`);
509
+ if (errorStack) {
510
+ logger.debug(`[${this.agentName}] Error stack: ${errorStack}`);
511
+ }
512
+ logger.warn(`[${this.agentName}] Continuing without extension - hooks will not be available`);
513
+ return {
514
+ success: false,
515
+ targetPath: this.getTargetPath(),
516
+ action: 'failed',
517
+ error: errorMsg
518
+ };
519
+ }
520
+ }
521
+ }
522
+ //# sourceMappingURL=BaseExtensionInstaller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseExtensionInstaller.js","sourceRoot":"","sources":["../../../../src/agents/core/extension/BaseExtensionInstaller.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-helpers.d.ts","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAA0B,MAAM,YAAY,CAAC;AAGtF,OAAO,0BAA0B,CAAC;AAiElC;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAS5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf"}
1
+ {"version":3,"file":"lifecycle-helpers.d.ts","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAA0B,MAAM,YAAY,CAAC;AAGtF,OAAO,0BAA0B,CAAC;AAiFlC;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,gBAAgB,CACpC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAS5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EAAE,EACd,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,MAAM,EAAE,CAAC,CASnB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAcf;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,GAAG,EACZ,SAAS,EAAE,cAAc,GAAG,SAAS,EACrC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,OAAO,CAAC,IAAI,CAAC,CAOf"}
@@ -87,12 +87,26 @@ async function resolveHook(lifecycle, hookName, provider, agentName) {
87
87
  if (specificHook) {
88
88
  return specificHook;
89
89
  }
90
- // Only wildcard hook exists
90
+ // Only wildcard hook exists - chain with agent's default hook if available
91
91
  if (wildcardHook) {
92
+ const agentDefaultHook = lifecycle?.[hookName];
93
+ // If agent has a default hook, chain wildcard → agent default
94
+ if (agentDefaultHook) {
95
+ return (async function (...args) {
96
+ // Execute wildcard hook first (provider customization)
97
+ const intermediateResult = await wildcardHook.call(this, ...args);
98
+ // Execute agent's default hook with wildcard's result
99
+ // Replace first arg (env) with intermediate result
100
+ const finalArgs = [...args];
101
+ finalArgs[0] = intermediateResult;
102
+ return await agentDefaultHook.call(this, ...finalArgs);
103
+ });
104
+ }
105
+ // No agent default hook, just return wildcard
92
106
  return wildcardHook;
93
107
  }
94
108
  }
95
- // 2. Fall back to agent's default hook
109
+ // 2. Fall back to agent's default hook (no provider hooks)
96
110
  if (!lifecycle)
97
111
  return undefined;
98
112
  return lifecycle[hookName];
@@ -1 +1 @@
1
- {"version":3,"file":"lifecycle-helpers.js","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lifecycle-helpers.js","sourceRoot":"","sources":["../../../src/agents/core/lifecycle-helpers.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,4 @@
4
4
  * Public API for the metrics collection system.
5
5
  */
6
6
  export * from './types.js';
7
- export { DeltaWriter } from './core/DeltaWriter.js';
8
- export { SyncStateManager } from './core/SyncStateManager.js';
9
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,cAAc,YAAY,CAAC"}
@@ -5,7 +5,4 @@
5
5
  */
6
6
  // Types
7
7
  export * from './types.js';
8
- // Core components
9
- export { DeltaWriter } from './core/DeltaWriter.js';
10
- export { SyncStateManager } from './core/SyncStateManager.js';
11
8
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,kBAAkB;AAClB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/agents/core/metrics/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC"}