@codemieai/code 0.0.14 → 0.0.16

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 (370) hide show
  1. package/README.md +32 -15
  2. package/dist/agents/codemie-code/agent.d.ts.map +1 -1
  3. package/dist/agents/codemie-code/agent.js +6 -6
  4. package/dist/agents/codemie-code/agent.js.map +1 -1
  5. package/dist/agents/codemie-code/config.d.ts.map +1 -1
  6. package/dist/agents/codemie-code/config.js +14 -5
  7. package/dist/agents/codemie-code/config.js.map +1 -1
  8. package/dist/agents/codemie-code/filters.js +12 -12
  9. package/dist/agents/codemie-code/filters.js.map +1 -1
  10. package/dist/agents/codemie-code/index.d.ts.map +1 -1
  11. package/dist/agents/codemie-code/index.js +3 -1
  12. package/dist/agents/codemie-code/index.js.map +1 -1
  13. package/dist/agents/codemie-code/storage/todoStorage.js +1 -1
  14. package/dist/agents/codemie-code/storage/todoStorage.js.map +1 -1
  15. package/dist/agents/codemie-code/ui.js +1 -1
  16. package/dist/agents/codemie-code/ui.js.map +1 -1
  17. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  18. package/dist/agents/core/AgentCLI.js +5 -4
  19. package/dist/agents/core/AgentCLI.js.map +1 -1
  20. package/dist/agents/core/BaseAgentAdapter.d.ts +1 -5
  21. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  22. package/dist/agents/core/BaseAgentAdapter.js +5 -26
  23. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  24. package/dist/agents/core/types.d.ts +5 -0
  25. package/dist/agents/core/types.d.ts.map +1 -1
  26. package/dist/agents/plugins/claude.plugin.js +1 -1
  27. package/dist/agents/plugins/claude.plugin.js.map +1 -1
  28. package/dist/agents/plugins/codemie-code.plugin.js +2 -2
  29. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  30. package/dist/agents/plugins/codex.plugin.js +2 -2
  31. package/dist/agents/plugins/codex.plugin.js.map +1 -1
  32. package/dist/agents/plugins/deepagents.plugin.js +1 -1
  33. package/dist/agents/plugins/deepagents.plugin.js.map +1 -1
  34. package/dist/agents/plugins/gemini.plugin.js +1 -1
  35. package/dist/agents/plugins/gemini.plugin.js.map +1 -1
  36. package/dist/analytics/aggregation/adapters/claude.adapter.d.ts.map +1 -1
  37. package/dist/analytics/aggregation/adapters/claude.adapter.js +75 -15
  38. package/dist/analytics/aggregation/adapters/claude.adapter.js.map +1 -1
  39. package/dist/analytics/aggregation/adapters/codex.adapter.d.ts.map +1 -1
  40. package/dist/analytics/aggregation/adapters/codex.adapter.js +20 -0
  41. package/dist/analytics/aggregation/adapters/codex.adapter.js.map +1 -1
  42. package/dist/analytics/aggregation/adapters/gemini.adapter.d.ts +8 -0
  43. package/dist/analytics/aggregation/adapters/gemini.adapter.d.ts.map +1 -1
  44. package/dist/analytics/aggregation/adapters/gemini.adapter.js +46 -1
  45. package/dist/analytics/aggregation/adapters/gemini.adapter.js.map +1 -1
  46. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.d.ts +36 -0
  47. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.d.ts.map +1 -1
  48. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.js +52 -0
  49. package/dist/analytics/aggregation/core/BaseAnalyticsAdapter.js.map +1 -1
  50. package/dist/analytics/aggregation/core/adapter.interface.d.ts +11 -0
  51. package/dist/analytics/aggregation/core/adapter.interface.d.ts.map +1 -1
  52. package/dist/analytics/aggregation/core/aggregation-utils.d.ts +20 -0
  53. package/dist/analytics/aggregation/core/aggregation-utils.d.ts.map +1 -1
  54. package/dist/analytics/aggregation/core/aggregation-utils.js +43 -0
  55. package/dist/analytics/aggregation/core/aggregation-utils.js.map +1 -1
  56. package/dist/analytics/aggregation/core/file-utils.d.ts +2 -1
  57. package/dist/analytics/aggregation/core/file-utils.d.ts.map +1 -1
  58. package/dist/analytics/aggregation/core/file-utils.js +20 -85
  59. package/dist/analytics/aggregation/core/file-utils.js.map +1 -1
  60. package/dist/analytics/aggregation/core/index.d.ts +3 -0
  61. package/dist/analytics/aggregation/core/index.d.ts.map +1 -1
  62. package/dist/analytics/aggregation/core/index.js +3 -0
  63. package/dist/analytics/aggregation/core/index.js.map +1 -1
  64. package/dist/analytics/aggregation/core/user-prompt-source.d.ts +81 -0
  65. package/dist/analytics/aggregation/core/user-prompt-source.d.ts.map +1 -0
  66. package/dist/analytics/aggregation/core/user-prompt-source.js +69 -0
  67. package/dist/analytics/aggregation/core/user-prompt-source.js.map +1 -0
  68. package/dist/analytics/aggregation/core/user-prompt-sources/json.d.ts +49 -0
  69. package/dist/analytics/aggregation/core/user-prompt-sources/json.d.ts.map +1 -0
  70. package/dist/analytics/aggregation/core/user-prompt-sources/json.js +66 -0
  71. package/dist/analytics/aggregation/core/user-prompt-sources/json.js.map +1 -0
  72. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.d.ts +43 -0
  73. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.d.ts.map +1 -0
  74. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.js +56 -0
  75. package/dist/analytics/aggregation/core/user-prompt-sources/jsonl.js.map +1 -0
  76. package/dist/analytics/aggregation/types.d.ts +20 -0
  77. package/dist/analytics/aggregation/types.d.ts.map +1 -1
  78. package/dist/analytics/index.d.ts.map +1 -1
  79. package/dist/analytics/index.js +3 -11
  80. package/dist/analytics/index.js.map +1 -1
  81. package/dist/analytics/remote-submission/cursor-manager.d.ts +71 -0
  82. package/dist/analytics/remote-submission/cursor-manager.d.ts.map +1 -0
  83. package/dist/analytics/remote-submission/cursor-manager.js +204 -0
  84. package/dist/analytics/remote-submission/cursor-manager.js.map +1 -0
  85. package/dist/analytics/remote-submission/index.d.ts +12 -0
  86. package/dist/analytics/remote-submission/index.d.ts.map +1 -0
  87. package/dist/analytics/remote-submission/index.js +11 -0
  88. package/dist/analytics/remote-submission/index.js.map +1 -0
  89. package/dist/analytics/remote-submission/lock-manager.d.ts +71 -0
  90. package/dist/analytics/remote-submission/lock-manager.d.ts.map +1 -0
  91. package/dist/analytics/remote-submission/lock-manager.js +238 -0
  92. package/dist/analytics/remote-submission/lock-manager.js.map +1 -0
  93. package/dist/analytics/remote-submission/metric-transformer.d.ts +21 -0
  94. package/dist/analytics/remote-submission/metric-transformer.d.ts.map +1 -0
  95. package/dist/analytics/remote-submission/metric-transformer.js +82 -0
  96. package/dist/analytics/remote-submission/metric-transformer.js.map +1 -0
  97. package/dist/analytics/remote-submission/submitter.d.ts +79 -0
  98. package/dist/analytics/remote-submission/submitter.d.ts.map +1 -0
  99. package/dist/analytics/remote-submission/submitter.js +362 -0
  100. package/dist/analytics/remote-submission/submitter.js.map +1 -0
  101. package/dist/analytics/remote-submission/types.d.ts +123 -0
  102. package/dist/analytics/remote-submission/types.d.ts.map +1 -0
  103. package/dist/analytics/remote-submission/types.js +13 -0
  104. package/dist/analytics/remote-submission/types.js.map +1 -0
  105. package/dist/cli/commands/analytics.d.ts.map +1 -1
  106. package/dist/cli/commands/analytics.js +181 -12
  107. package/dist/cli/commands/analytics.js.map +1 -1
  108. package/dist/cli/commands/auth.d.ts.map +1 -1
  109. package/dist/cli/commands/auth.js +10 -5
  110. package/dist/cli/commands/auth.js.map +1 -1
  111. package/dist/cli/commands/doctor/checks/AIConfigCheck.d.ts.map +1 -1
  112. package/dist/cli/commands/doctor/checks/AIConfigCheck.js +12 -5
  113. package/dist/cli/commands/doctor/checks/AIConfigCheck.js.map +1 -1
  114. package/dist/cli/commands/doctor/formatter.d.ts +1 -1
  115. package/dist/cli/commands/doctor/formatter.d.ts.map +1 -1
  116. package/dist/cli/commands/doctor/formatter.js +1 -6
  117. package/dist/cli/commands/doctor/formatter.js.map +1 -1
  118. package/dist/cli/commands/doctor/index.d.ts.map +1 -1
  119. package/dist/cli/commands/doctor/index.js +36 -9
  120. package/dist/cli/commands/doctor/index.js.map +1 -1
  121. package/dist/cli/commands/doctor/type-adapters.d.ts +18 -0
  122. package/dist/cli/commands/doctor/type-adapters.d.ts.map +1 -0
  123. package/dist/cli/commands/doctor/type-adapters.js +75 -0
  124. package/dist/cli/commands/doctor/type-adapters.js.map +1 -0
  125. package/dist/cli/commands/install.d.ts.map +1 -1
  126. package/dist/cli/commands/install.js +1 -6
  127. package/dist/cli/commands/install.js.map +1 -1
  128. package/dist/cli/commands/list.d.ts.map +1 -1
  129. package/dist/cli/commands/list.js +0 -5
  130. package/dist/cli/commands/list.js.map +1 -1
  131. package/dist/cli/commands/profile.d.ts.map +1 -1
  132. package/dist/cli/commands/profile.js +109 -63
  133. package/dist/cli/commands/profile.js.map +1 -1
  134. package/dist/cli/commands/setup.d.ts.map +1 -1
  135. package/dist/cli/commands/setup.js +169 -660
  136. package/dist/cli/commands/setup.js.map +1 -1
  137. package/dist/cli/commands/workflow.js +1 -1
  138. package/dist/cli/commands/workflow.js.map +1 -1
  139. package/dist/cli/index.d.ts +1 -1
  140. package/dist/cli/index.d.ts.map +1 -1
  141. package/dist/cli/index.js +4 -5
  142. package/dist/cli/index.js.map +1 -1
  143. package/dist/providers/core/base/BaseHealthCheck.d.ts +57 -0
  144. package/dist/providers/core/base/BaseHealthCheck.d.ts.map +1 -0
  145. package/dist/providers/core/base/BaseHealthCheck.js +121 -0
  146. package/dist/providers/core/base/BaseHealthCheck.js.map +1 -0
  147. package/dist/providers/core/base/BaseModelProxy.d.ts +45 -0
  148. package/dist/providers/core/base/BaseModelProxy.d.ts.map +1 -0
  149. package/dist/providers/core/base/BaseModelProxy.js +43 -0
  150. package/dist/providers/core/base/BaseModelProxy.js.map +1 -0
  151. package/dist/providers/core/base/http-client.d.ts +57 -0
  152. package/dist/providers/core/base/http-client.d.ts.map +1 -0
  153. package/dist/providers/core/base/http-client.js +240 -0
  154. package/dist/providers/core/base/http-client.js.map +1 -0
  155. package/dist/providers/core/decorators.d.ts +13 -0
  156. package/dist/providers/core/decorators.d.ts.map +1 -0
  157. package/dist/providers/core/decorators.js +15 -0
  158. package/dist/providers/core/decorators.js.map +1 -0
  159. package/dist/providers/core/index.d.ts +13 -0
  160. package/dist/providers/core/index.d.ts.map +1 -0
  161. package/dist/providers/core/index.js +14 -0
  162. package/dist/providers/core/index.js.map +1 -0
  163. package/dist/providers/core/registry.d.ts +66 -0
  164. package/dist/providers/core/registry.d.ts.map +1 -0
  165. package/dist/providers/core/registry.js +105 -0
  166. package/dist/providers/core/registry.js.map +1 -0
  167. package/dist/providers/core/types.d.ts +285 -0
  168. package/dist/providers/core/types.d.ts.map +1 -0
  169. package/dist/providers/core/types.js +7 -0
  170. package/dist/providers/core/types.js.map +1 -0
  171. package/dist/providers/index.d.ts +20 -0
  172. package/dist/providers/index.d.ts.map +1 -0
  173. package/dist/providers/index.js +22 -0
  174. package/dist/providers/index.js.map +1 -0
  175. package/dist/providers/integration/setup-ui.d.ts +76 -0
  176. package/dist/providers/integration/setup-ui.d.ts.map +1 -0
  177. package/dist/providers/integration/setup-ui.js +141 -0
  178. package/dist/providers/integration/setup-ui.js.map +1 -0
  179. package/dist/providers/plugins/litellm/index.d.ts +8 -0
  180. package/dist/providers/plugins/litellm/index.d.ts.map +1 -0
  181. package/dist/providers/plugins/litellm/index.js +12 -0
  182. package/dist/providers/plugins/litellm/index.js.map +1 -0
  183. package/dist/providers/plugins/litellm/litellm.models.d.ts +27 -0
  184. package/dist/providers/plugins/litellm/litellm.models.d.ts.map +1 -0
  185. package/dist/providers/plugins/litellm/litellm.models.js +48 -0
  186. package/dist/providers/plugins/litellm/litellm.models.js.map +1 -0
  187. package/dist/providers/plugins/litellm/litellm.setup-steps.d.ts +8 -0
  188. package/dist/providers/plugins/litellm/litellm.setup-steps.d.ts.map +1 -0
  189. package/dist/providers/plugins/litellm/litellm.setup-steps.js +52 -0
  190. package/dist/providers/plugins/litellm/litellm.setup-steps.js.map +1 -0
  191. package/dist/providers/plugins/litellm/litellm.template.d.ts +11 -0
  192. package/dist/providers/plugins/litellm/litellm.template.d.ts.map +1 -0
  193. package/dist/providers/plugins/litellm/litellm.template.js +59 -0
  194. package/dist/providers/plugins/litellm/litellm.template.js.map +1 -0
  195. package/dist/providers/plugins/ollama/index.d.ts +11 -0
  196. package/dist/providers/plugins/ollama/index.d.ts.map +1 -0
  197. package/dist/providers/plugins/ollama/index.js +11 -0
  198. package/dist/providers/plugins/ollama/index.js.map +1 -0
  199. package/dist/providers/plugins/ollama/ollama.health.d.ts +48 -0
  200. package/dist/providers/plugins/ollama/ollama.health.d.ts.map +1 -0
  201. package/dist/providers/plugins/ollama/ollama.health.js +87 -0
  202. package/dist/providers/plugins/ollama/ollama.health.js.map +1 -0
  203. package/dist/providers/plugins/ollama/ollama.models.d.ts +47 -0
  204. package/dist/providers/plugins/ollama/ollama.models.d.ts.map +1 -0
  205. package/dist/providers/plugins/ollama/ollama.models.js +252 -0
  206. package/dist/providers/plugins/ollama/ollama.models.js.map +1 -0
  207. package/dist/providers/plugins/ollama/ollama.setup-steps.d.ts +16 -0
  208. package/dist/providers/plugins/ollama/ollama.setup-steps.d.ts.map +1 -0
  209. package/dist/providers/plugins/ollama/ollama.setup-steps.js +164 -0
  210. package/dist/providers/plugins/ollama/ollama.setup-steps.js.map +1 -0
  211. package/dist/providers/plugins/ollama/ollama.template.d.ts +11 -0
  212. package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -0
  213. package/dist/providers/plugins/ollama/ollama.template.js +87 -0
  214. package/dist/providers/plugins/ollama/ollama.template.js.map +1 -0
  215. package/dist/providers/plugins/sso/index.d.ts +12 -0
  216. package/dist/providers/plugins/sso/index.d.ts.map +1 -0
  217. package/dist/providers/plugins/sso/index.js +12 -0
  218. package/dist/providers/plugins/sso/index.js.map +1 -0
  219. package/dist/providers/plugins/sso/sso.auth.d.ts +50 -0
  220. package/dist/providers/plugins/sso/sso.auth.d.ts.map +1 -0
  221. package/dist/{utils/sso-auth.js → providers/plugins/sso/sso.auth.js} +37 -2
  222. package/dist/providers/plugins/sso/sso.auth.js.map +1 -0
  223. package/dist/providers/plugins/sso/sso.health.d.ts +44 -0
  224. package/dist/providers/plugins/sso/sso.health.d.ts.map +1 -0
  225. package/dist/providers/plugins/sso/sso.health.js +178 -0
  226. package/dist/providers/plugins/sso/sso.health.js.map +1 -0
  227. package/dist/{utils/codemie-model-fetcher.d.ts → providers/plugins/sso/sso.http-client.d.ts} +16 -5
  228. package/dist/providers/plugins/sso/sso.http-client.d.ts.map +1 -0
  229. package/dist/providers/plugins/sso/sso.http-client.js +187 -0
  230. package/dist/providers/plugins/sso/sso.http-client.js.map +1 -0
  231. package/dist/providers/plugins/sso/sso.models.d.ts +48 -0
  232. package/dist/providers/plugins/sso/sso.models.d.ts.map +1 -0
  233. package/dist/providers/plugins/sso/sso.models.js +139 -0
  234. package/dist/providers/plugins/sso/sso.models.js.map +1 -0
  235. package/dist/providers/plugins/sso/sso.setup-steps.d.ts +16 -0
  236. package/dist/providers/plugins/sso/sso.setup-steps.d.ts.map +1 -0
  237. package/dist/providers/plugins/sso/sso.setup-steps.js +145 -0
  238. package/dist/providers/plugins/sso/sso.setup-steps.js.map +1 -0
  239. package/dist/providers/plugins/sso/sso.template.d.ts +11 -0
  240. package/dist/providers/plugins/sso/sso.template.d.ts.map +1 -0
  241. package/dist/providers/plugins/sso/sso.template.js +35 -0
  242. package/dist/providers/plugins/sso/sso.template.js.map +1 -0
  243. package/dist/proxy/errors.d.ts.map +1 -0
  244. package/dist/proxy/errors.js.map +1 -0
  245. package/dist/proxy/http-client.d.ts.map +1 -0
  246. package/dist/{utils/proxy → proxy}/http-client.js +1 -1
  247. package/dist/proxy/http-client.js.map +1 -0
  248. package/dist/proxy/plugins/header-injection.plugin.d.ts +16 -0
  249. package/dist/proxy/plugins/header-injection.plugin.d.ts.map +1 -0
  250. package/dist/proxy/plugins/header-injection.plugin.js +52 -0
  251. package/dist/proxy/plugins/header-injection.plugin.js.map +1 -0
  252. package/dist/proxy/plugins/index.d.ts +18 -0
  253. package/dist/proxy/plugins/index.d.ts.map +1 -0
  254. package/dist/proxy/plugins/index.js +28 -0
  255. package/dist/proxy/plugins/index.js.map +1 -0
  256. package/dist/proxy/plugins/logging.plugin.d.ts +22 -0
  257. package/dist/proxy/plugins/logging.plugin.d.ts.map +1 -0
  258. package/dist/proxy/plugins/logging.plugin.js +92 -0
  259. package/dist/proxy/plugins/logging.plugin.js.map +1 -0
  260. package/dist/proxy/plugins/registry.d.ts +50 -0
  261. package/dist/proxy/plugins/registry.d.ts.map +1 -0
  262. package/dist/proxy/plugins/registry.js +124 -0
  263. package/dist/proxy/plugins/registry.js.map +1 -0
  264. package/dist/proxy/plugins/sso-auth.plugin.d.ts +16 -0
  265. package/dist/proxy/plugins/sso-auth.plugin.d.ts.map +1 -0
  266. package/dist/proxy/plugins/sso-auth.plugin.js +35 -0
  267. package/dist/proxy/plugins/sso-auth.plugin.js.map +1 -0
  268. package/dist/proxy/plugins/types.d.ts +79 -0
  269. package/dist/proxy/plugins/types.d.ts.map +1 -0
  270. package/dist/proxy/plugins/types.js +8 -0
  271. package/dist/proxy/plugins/types.js.map +1 -0
  272. package/dist/proxy/types.d.ts.map +1 -0
  273. package/dist/proxy/types.js.map +1 -0
  274. package/dist/utils/analytics-reader.js +1 -1
  275. package/dist/utils/analytics-reader.js.map +1 -1
  276. package/dist/utils/codemie-proxy.d.ts +43 -22
  277. package/dist/utils/codemie-proxy.d.ts.map +1 -1
  278. package/dist/utils/codemie-proxy.js +158 -88
  279. package/dist/utils/codemie-proxy.js.map +1 -1
  280. package/dist/utils/config-loader.d.ts +5 -6
  281. package/dist/utils/config-loader.d.ts.map +1 -1
  282. package/dist/utils/config-loader.js +72 -92
  283. package/dist/utils/config-loader.js.map +1 -1
  284. package/dist/utils/credential-store.d.ts +1 -1
  285. package/dist/utils/credential-store.d.ts.map +1 -1
  286. package/dist/utils/first-time.d.ts +0 -4
  287. package/dist/utils/first-time.d.ts.map +1 -1
  288. package/dist/utils/first-time.js +5 -117
  289. package/dist/utils/first-time.js.map +1 -1
  290. package/dist/utils/logger.d.ts +31 -1
  291. package/dist/utils/logger.d.ts.map +1 -1
  292. package/dist/utils/logger.js +111 -3
  293. package/dist/utils/logger.js.map +1 -1
  294. package/dist/utils/sanitize.d.ts +28 -0
  295. package/dist/utils/sanitize.d.ts.map +1 -0
  296. package/dist/utils/sanitize.js +213 -0
  297. package/dist/utils/sanitize.js.map +1 -0
  298. package/dist/workflows/installer.d.ts.map +1 -1
  299. package/dist/workflows/installer.js +3 -4
  300. package/dist/workflows/installer.js.map +1 -1
  301. package/package.json +1 -1
  302. package/dist/cli/commands/config.d.ts +0 -3
  303. package/dist/cli/commands/config.d.ts.map +0 -1
  304. package/dist/cli/commands/config.js +0 -198
  305. package/dist/cli/commands/config.js.map +0 -1
  306. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts +0 -11
  307. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.d.ts.map +0 -1
  308. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js +0 -192
  309. package/dist/cli/commands/doctor/providers/AIRunSSOProviderCheck.js.map +0 -1
  310. package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts +0 -12
  311. package/dist/cli/commands/doctor/providers/BaseProviderCheck.d.ts.map +0 -1
  312. package/dist/cli/commands/doctor/providers/BaseProviderCheck.js +0 -12
  313. package/dist/cli/commands/doctor/providers/BaseProviderCheck.js.map +0 -1
  314. package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts +0 -11
  315. package/dist/cli/commands/doctor/providers/StandardProviderCheck.d.ts.map +0 -1
  316. package/dist/cli/commands/doctor/providers/StandardProviderCheck.js +0 -97
  317. package/dist/cli/commands/doctor/providers/StandardProviderCheck.js.map +0 -1
  318. package/dist/cli/commands/doctor/providers/index.d.ts +0 -30
  319. package/dist/cli/commands/doctor/providers/index.d.ts.map +0 -1
  320. package/dist/cli/commands/doctor/providers/index.js +0 -66
  321. package/dist/cli/commands/doctor/providers/index.js.map +0 -1
  322. package/dist/cli/commands/env.d.ts +0 -3
  323. package/dist/cli/commands/env.d.ts.map +0 -1
  324. package/dist/cli/commands/env.js +0 -19
  325. package/dist/cli/commands/env.js.map +0 -1
  326. package/dist/types/sso.d.ts +0 -42
  327. package/dist/types/sso.d.ts.map +0 -1
  328. package/dist/types/sso.js +0 -2
  329. package/dist/types/sso.js.map +0 -1
  330. package/dist/utils/async-tips.d.ts +0 -64
  331. package/dist/utils/async-tips.d.ts.map +0 -1
  332. package/dist/utils/async-tips.js +0 -203
  333. package/dist/utils/async-tips.js.map +0 -1
  334. package/dist/utils/codemie-integration-validator.d.ts +0 -18
  335. package/dist/utils/codemie-integration-validator.d.ts.map +0 -1
  336. package/dist/utils/codemie-integration-validator.js +0 -119
  337. package/dist/utils/codemie-integration-validator.js.map +0 -1
  338. package/dist/utils/codemie-model-fetcher.d.ts.map +0 -1
  339. package/dist/utils/codemie-model-fetcher.js +0 -242
  340. package/dist/utils/codemie-model-fetcher.js.map +0 -1
  341. package/dist/utils/health-checker.d.ts +0 -20
  342. package/dist/utils/health-checker.d.ts.map +0 -1
  343. package/dist/utils/health-checker.js +0 -172
  344. package/dist/utils/health-checker.js.map +0 -1
  345. package/dist/utils/model-fetcher.d.ts +0 -21
  346. package/dist/utils/model-fetcher.d.ts.map +0 -1
  347. package/dist/utils/model-fetcher.js +0 -148
  348. package/dist/utils/model-fetcher.js.map +0 -1
  349. package/dist/utils/proxy/errors.d.ts.map +0 -1
  350. package/dist/utils/proxy/errors.js.map +0 -1
  351. package/dist/utils/proxy/http-client.d.ts.map +0 -1
  352. package/dist/utils/proxy/http-client.js.map +0 -1
  353. package/dist/utils/proxy/interceptors.d.ts +0 -69
  354. package/dist/utils/proxy/interceptors.d.ts.map +0 -1
  355. package/dist/utils/proxy/interceptors.js +0 -308
  356. package/dist/utils/proxy/interceptors.js.map +0 -1
  357. package/dist/utils/proxy/types.d.ts.map +0 -1
  358. package/dist/utils/proxy/types.js.map +0 -1
  359. package/dist/utils/sso-auth.d.ts +0 -15
  360. package/dist/utils/sso-auth.d.ts.map +0 -1
  361. package/dist/utils/sso-auth.js.map +0 -1
  362. package/dist/utils/tips.d.ts +0 -35
  363. package/dist/utils/tips.d.ts.map +0 -1
  364. package/dist/utils/tips.js +0 -93
  365. package/dist/utils/tips.js.map +0 -1
  366. /package/dist/{utils/proxy → proxy}/errors.d.ts +0 -0
  367. /package/dist/{utils/proxy → proxy}/errors.js +0 -0
  368. /package/dist/{utils/proxy → proxy}/http-client.d.ts +0 -0
  369. /package/dist/{utils/proxy → proxy}/types.d.ts +0 -0
  370. /package/dist/{utils/proxy → proxy}/types.js +0 -0
@@ -1,38 +1,50 @@
1
1
  /**
2
- * CodeMie Proxy Server - Refactored
2
+ * CodeMie Proxy Server - Plugin-Based Architecture
3
3
  *
4
- * Clean, modular proxy implementation following SOLID principles.
5
- * Uses interceptor pattern for extensibility (Open/Closed).
4
+ * KISS: Does ONE thing - forwards HTTP requests with streaming
5
+ * SOLID: Single responsibility, plugins injected via registry
6
+ * NO analytics-specific logic in core!
6
7
  *
7
8
  * Architecture:
8
9
  * - ProxyHTTPClient: Handles HTTP forwarding with streaming
9
- * - Interceptors: Plugin-based request/response/error handling
10
- * - Main Proxy: Orchestrates the flow
10
+ * - PluginRegistry: Manages plugin lifecycle and ordering
11
+ * - ProxyInterceptors: Plugin-based hooks for extensibility
12
+ * - Main Proxy: Orchestrates the flow with zero buffering
11
13
  *
12
- * KISS: Simple flow - build context → run interceptors → forward → stream
13
- * DRY: Reuses Analytics system, delegates to interceptors
14
- * SOLID: Each component has single responsibility, extensible via plugins
14
+ * Flow:
15
+ * 1. Build context
16
+ * 2. Run onRequest hooks
17
+ * 3. Forward to upstream (get response headers)
18
+ * 4. Run onResponseHeaders hooks
19
+ * 5. Stream response body (with optional chunk hooks)
20
+ * 6. Run onResponseComplete hooks
21
+ *
22
+ * NO BUFFERING by default!
15
23
  */
16
24
  import { createServer } from 'http';
17
25
  import { randomUUID } from 'crypto';
18
26
  import { URL } from 'url';
19
27
  import { CredentialStore } from './credential-store.js';
28
+ import { ProviderRegistry } from '../providers/core/registry.js';
20
29
  import { logger } from './logger.js';
21
30
  import { getAnalytics } from '../analytics/index.js';
22
- import { ProxyHTTPClient } from './proxy/http-client.js';
23
- import { SSOAuthInterceptor, HeaderInjectionInterceptor, AnalyticsInterceptor } from './proxy/interceptors.js';
24
- import { AuthenticationError, NetworkError, TimeoutError, normalizeError } from './proxy/errors.js';
31
+ import { loadAnalyticsConfig } from '../analytics/config.js';
32
+ import { RemoteAnalyticsSubmitter } from '../analytics/remote-submission/index.js';
33
+ import { ProxyHTTPClient } from '../proxy/http-client.js';
34
+ import { AuthenticationError, NetworkError, TimeoutError, normalizeError } from '../proxy/errors.js';
35
+ import { getPluginRegistry } from '../proxy/plugins/registry.js';
36
+ import '../proxy/plugins/index.js'; // Auto-register core plugins
25
37
  /**
26
- * CodeMie Proxy - Simple HTTP proxy with interceptor support
27
- * KISS: Core responsibility = forward requests + run interceptors
38
+ * CodeMie Proxy - Plugin-based HTTP proxy with streaming
39
+ * KISS: Core responsibility = forward requests + run plugin hooks
28
40
  */
29
41
  export class CodeMieProxy {
30
42
  config;
31
43
  server = null;
32
- credentials = null;
33
44
  httpClient;
34
45
  interceptors = [];
35
46
  actualPort = 0;
47
+ remoteSubmitter = null;
36
48
  constructor(config) {
37
49
  this.config = config;
38
50
  // Initialize HTTP client with streaming support
@@ -40,49 +52,39 @@ export class CodeMieProxy {
40
52
  timeout: config.timeout || 300000,
41
53
  rejectUnauthorized: false // Allow self-signed certificates
42
54
  });
43
- // Register interceptors (Open/Closed: add more without modifying this)
44
- this.registerInterceptors();
45
- }
46
- /**
47
- * Register interceptors
48
- * Easy to add new interceptors without modifying handleRequest
49
- */
50
- registerInterceptors() {
51
- // Will be initialized with credentials after start()
52
- // Interceptors added dynamically in start()
53
55
  }
54
56
  /**
55
57
  * Start the proxy server
56
58
  */
57
59
  async start() {
58
- // Load SSO credentials
59
- const store = CredentialStore.getInstance();
60
- this.credentials = await store.retrieveSSOCredentials();
61
- if (!this.credentials) {
62
- throw new AuthenticationError('SSO credentials not found. Please run: codemie auth login');
60
+ // 1. Check if provider uses SSO authentication
61
+ const provider = ProviderRegistry.getProvider(this.config.provider || '');
62
+ const isSSOProvider = provider?.authType === 'sso';
63
+ // 2. Load credentials (if needed for SSO)
64
+ let credentials = null;
65
+ if (isSSOProvider) {
66
+ const store = CredentialStore.getInstance();
67
+ credentials = await store.retrieveSSOCredentials();
68
+ if (!credentials) {
69
+ throw new AuthenticationError('SSO credentials not found. Please run: codemie auth login');
70
+ }
63
71
  }
64
- // Now register interceptors with credentials
65
- this.interceptors = [];
66
- // 1. SSO Authentication
67
- this.interceptors.push(new SSOAuthInterceptor(this.credentials));
68
- // 2. Header Injection
69
- this.interceptors.push(new HeaderInjectionInterceptor({
70
- sessionId: logger.getSessionId(),
71
- provider: this.config.provider,
72
- integrationId: this.config.integrationId,
73
- model: this.config.model,
74
- timeout: this.config.timeout,
75
- clientType: this.config.clientType
76
- }));
77
- // 3. Analytics tracking (only if enabled)
78
- const analytics = getAnalytics();
79
- if (analytics.isEnabled) {
80
- this.interceptors.push(new AnalyticsInterceptor());
72
+ // 3. Build plugin context
73
+ const pluginContext = {
74
+ config: this.config,
75
+ logger,
76
+ credentials: credentials || undefined,
77
+ analytics: getAnalytics()
78
+ };
79
+ // 4. Initialize plugins from registry
80
+ const registry = getPluginRegistry();
81
+ this.interceptors = await registry.initialize(pluginContext);
82
+ // 5. Start analytics metrics submitter (writes codemie_coding_agent_usage_total metrics)
83
+ const analyticsConfig = loadAnalyticsConfig();
84
+ if (analyticsConfig.enabled) {
85
+ await this.startAnalyticsMetricsSubmitter(isSSOProvider ? credentials : null);
81
86
  }
82
- // Future: Add more interceptors here without touching handleRequest!
83
- // this.interceptors.push(new RetryInterceptor({ maxRetries: 3 }));
84
- // this.interceptors.push(new CachingInterceptor());
85
- // Find available port
87
+ // 6. Find available port
86
88
  this.actualPort = this.config.port || await this.findAvailablePort();
87
89
  return new Promise((resolve, reject) => {
88
90
  this.server = createServer((req, res) => {
@@ -114,10 +116,45 @@ export class CodeMieProxy {
114
116
  });
115
117
  });
116
118
  }
119
+ /**
120
+ * Start analytics metrics submitter
121
+ * Writes codemie_coding_agent_usage metrics to ~/.codemie/analytics/YYYY-MM-DD.jsonl
122
+ */
123
+ async startAnalyticsMetricsSubmitter(credentials) {
124
+ try {
125
+ const analyticsConfig = loadAnalyticsConfig();
126
+ // Build config
127
+ const submitterConfig = {
128
+ enabled: true,
129
+ target: analyticsConfig.target,
130
+ interval: parseInt(process.env.CODEMIE_ANALYTICS_REMOTE_INTERVAL || '300000', 10),
131
+ batchSize: parseInt(process.env.CODEMIE_ANALYTICS_REMOTE_BATCH_SIZE || '100', 10)
132
+ };
133
+ // Add remote config only if SSO provider with credentials
134
+ if (credentials && this.config.targetApiUrl) {
135
+ const cookieString = Object.entries(credentials.cookies)
136
+ .map(([key, value]) => `${key}=${value}`)
137
+ .join('; ');
138
+ submitterConfig.baseUrl = this.config.targetApiUrl;
139
+ submitterConfig.cookies = cookieString;
140
+ }
141
+ this.remoteSubmitter = new RemoteAnalyticsSubmitter(submitterConfig);
142
+ this.remoteSubmitter.start();
143
+ logger.debug(`Analytics metrics submitter started (target: ${analyticsConfig.target})`);
144
+ }
145
+ catch (error) {
146
+ logger.error(`Failed to start analytics metrics submitter: ${error}`);
147
+ }
148
+ }
117
149
  /**
118
150
  * Stop the proxy server
119
151
  */
120
152
  async stop() {
153
+ // Stop remote analytics submitter
154
+ if (this.remoteSubmitter) {
155
+ this.remoteSubmitter.stop();
156
+ logger.debug('Remote analytics submitter stopped');
157
+ }
121
158
  // Flush analytics before stopping to ensure all events are written
122
159
  const analytics = getAnalytics();
123
160
  if (analytics.isEnabled) {
@@ -127,7 +164,7 @@ export class CodeMieProxy {
127
164
  if (this.server) {
128
165
  await new Promise((resolve) => {
129
166
  this.server.close(() => {
130
- logger.debug('Proxy stopped');
167
+ logger.debug('[CodeMieProxy] Stopped');
131
168
  resolve();
132
169
  });
133
170
  });
@@ -136,20 +173,26 @@ export class CodeMieProxy {
136
173
  this.httpClient.close();
137
174
  }
138
175
  /**
139
- * Core request handler - Clean, simple flow
140
- * KISS: Build context → run interceptors → forward → stream
176
+ * Handle incoming request - STREAMING ONLY
177
+ *
178
+ * Flow:
179
+ * 1. Build context
180
+ * 2. Run onRequest hooks
181
+ * 3. Forward to upstream (get response headers)
182
+ * 4. Run onResponseHeaders hooks
183
+ * 5. Stream response body (with optional chunk hooks)
184
+ * 6. Run onResponseComplete hooks
185
+ *
186
+ * NO BUFFERING!
141
187
  */
142
188
  async handleRequest(req, res) {
189
+ const startTime = Date.now();
143
190
  try {
144
- // 1. Build context (DRY: single place for context creation)
191
+ // 1. Build context
145
192
  const context = await this.buildContext(req);
146
193
  // 2. Run onRequest interceptors
147
- for (const interceptor of this.interceptors) {
148
- if (interceptor.onRequest) {
149
- await interceptor.onRequest(context);
150
- }
151
- }
152
- // 3. Forward request to upstream (streaming, no buffering)
194
+ await this.runHook('onRequest', interceptor => interceptor.onRequest?.(context));
195
+ // 3. Forward request to upstream
153
196
  const targetUrl = this.buildTargetUrl(req.url);
154
197
  context.targetUrl = targetUrl.toString();
155
198
  const upstreamResponse = await this.httpClient.forward(targetUrl, {
@@ -157,23 +200,12 @@ export class CodeMieProxy {
157
200
  headers: context.headers,
158
201
  body: context.requestBody || undefined
159
202
  });
160
- // 4. Read response body for analytics (buffered, but needed)
161
- // This is a trade-off: analytics needs the body
162
- const responseBody = await this.httpClient.readResponseBody(upstreamResponse);
163
- const response = {
164
- statusCode: upstreamResponse.statusCode || 200,
165
- statusMessage: upstreamResponse.statusMessage || 'OK',
166
- headers: upstreamResponse.headers,
167
- body: responseBody
168
- };
169
- // 5. Run onResponse interceptors (before streaming to client)
170
- for (const interceptor of this.interceptors) {
171
- if (interceptor.onResponse) {
172
- await interceptor.onResponse(context, response);
173
- }
174
- }
175
- // 6. Send response to client
176
- this.sendResponse(res, response);
203
+ // 4. Run onResponseHeaders hooks (BEFORE streaming)
204
+ await this.runHook('onResponseHeaders', interceptor => interceptor.onResponseHeaders?.(context, upstreamResponse.headers));
205
+ // 5. Stream response to client
206
+ const metadata = await this.streamResponse(context, upstreamResponse, res, startTime);
207
+ // 6. Run onResponseComplete hooks (AFTER streaming)
208
+ await this.runHook('onResponseComplete', interceptor => interceptor.onResponseComplete?.(context, metadata));
177
209
  }
178
210
  catch (error) {
179
211
  await this.handleError(error, req, res);
@@ -238,22 +270,60 @@ export class CodeMieProxy {
238
270
  });
239
271
  }
240
272
  /**
241
- * Send successful response to client
273
+ * Stream response with optional chunk transformation
242
274
  */
243
- sendResponse(res, response) {
244
- res.statusCode = response.statusCode;
245
- // Copy headers (skip problematic ones)
246
- for (const [key, value] of Object.entries(response.headers)) {
275
+ async streamResponse(context, upstream, downstream, startTime) {
276
+ // Set status and headers
277
+ downstream.statusCode = upstream.statusCode || 200;
278
+ for (const [key, value] of Object.entries(upstream.headers)) {
247
279
  if (!['transfer-encoding', 'connection'].includes(key.toLowerCase()) && value !== undefined) {
248
- res.setHeader(key, value);
280
+ downstream.setHeader(key, value);
249
281
  }
250
282
  }
251
- // Send body
252
- if (response.body) {
253
- res.end(response.body);
283
+ // Stream with optional chunk hooks
284
+ let bytesSent = 0;
285
+ for await (const chunk of upstream) {
286
+ let processedChunk = Buffer.from(chunk);
287
+ // Run onResponseChunk hooks (optional transform)
288
+ for (const interceptor of this.interceptors) {
289
+ if (interceptor.onResponseChunk && processedChunk) {
290
+ try {
291
+ processedChunk = await interceptor.onResponseChunk(context, processedChunk);
292
+ }
293
+ catch (error) {
294
+ logger.error(`[CodeMieProxy] Chunk hook error:`, error);
295
+ // Continue streaming even if hook fails
296
+ }
297
+ }
298
+ }
299
+ // Write to client (if not filtered out)
300
+ if (processedChunk) {
301
+ downstream.write(processedChunk);
302
+ bytesSent += processedChunk.length;
303
+ }
254
304
  }
255
- else {
256
- res.end();
305
+ downstream.end();
306
+ const durationMs = Date.now() - startTime;
307
+ return {
308
+ statusCode: upstream.statusCode || 200,
309
+ statusMessage: upstream.statusMessage || 'OK',
310
+ headers: upstream.headers,
311
+ bytesSent,
312
+ durationMs
313
+ };
314
+ }
315
+ /**
316
+ * Run interceptor hook safely (errors don't break flow)
317
+ */
318
+ async runHook(hookName, fn) {
319
+ for (const interceptor of this.interceptors) {
320
+ try {
321
+ await fn(interceptor);
322
+ }
323
+ catch (error) {
324
+ logger.error(`[CodeMieProxy] Hook ${hookName} error in ${interceptor.name}:`, error);
325
+ // Continue with other interceptors
326
+ }
257
327
  }
258
328
  }
259
329
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"codemie-proxy.js","sourceRoot":"","sources":["../../src/utils/codemie-proxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codemie-proxy.js","sourceRoot":"","sources":["../../src/utils/codemie-proxy.ts"],"names":[],"mappings":"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"}
@@ -126,6 +126,10 @@ export declare class ConfigLoader {
126
126
  * Mask sensitive values
127
127
  */
128
128
  private static maskSensitive;
129
+ /**
130
+ * Recursively mask sensitive values in nested objects
131
+ */
132
+ private static maskNestedSensitive;
129
133
  /**
130
134
  * Get color for source
131
135
  */
@@ -134,14 +138,9 @@ export declare class ConfigLoader {
134
138
  * Get environment variable overrides
135
139
  */
136
140
  static getEnvOverrides(): Partial<CodeMieConfigOptions>;
137
- /**
138
- * Set multi-provider environment variables (OpenAI, Anthropic, Gemini)
139
- * Used by LiteLLM and AI-Run SSO for maximum compatibility
140
- */
141
- private static setMultiProviderEnvVars;
142
141
  /**
143
142
  * Export provider-specific environment variables
144
- * (for passing to external agents like Claude Code, Codex)
143
+ * Uses ProviderRegistry to get env mappings from provider templates
145
144
  */
146
145
  static exportProviderEnvVars(config: CodeMieConfigOptions): Record<string, string>;
147
146
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/utils/config-loader.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import * as os from 'os';
4
4
  import dotenv from 'dotenv';
5
5
  import chalk from 'chalk';
6
6
  import { isMultiProviderConfig, isLegacyConfig } from '../env/types.js';
7
+ import { ProviderRegistry } from '../providers/index.js';
7
8
  /**
8
9
  * Unified configuration loader with priority system:
9
10
  * CLI args > Env vars > Project config > Global config > Defaults
@@ -153,12 +154,6 @@ export class ConfigLoader {
153
154
  alias: process.env.CODEMIE_INTEGRATION_ALIAS || ''
154
155
  };
155
156
  }
156
- // Check for AWS Bedrock configuration
157
- if (process.env.CLAUDE_CODE_USE_BEDROCK === '1') {
158
- env.provider = 'bedrock';
159
- env.baseUrl = 'bedrock';
160
- env.apiKey = 'bedrock'; // Placeholder for AWS credentials
161
- }
162
157
  return env;
163
158
  }
164
159
  /**
@@ -242,14 +237,11 @@ export class ConfigLoader {
242
237
  if (!config.profiles[profileName]) {
243
238
  throw new Error(`Profile "${profileName}" not found`);
244
239
  }
245
- // Can't delete the active profile if it's the only one
246
- if (config.activeProfile === profileName && Object.keys(config.profiles).length === 1) {
247
- throw new Error('Cannot delete the only profile. Add another profile first.');
248
- }
249
240
  delete config.profiles[profileName];
250
- // If we deleted the active profile, switch to another one
241
+ // If we deleted the active profile, switch to another one (if any exist)
251
242
  if (config.activeProfile === profileName) {
252
- config.activeProfile = Object.keys(config.profiles)[0];
243
+ const remainingProfiles = Object.keys(config.profiles);
244
+ config.activeProfile = remainingProfiles.length > 0 ? remainingProfiles[0] : '';
253
245
  }
254
246
  await this.saveMultiProviderConfig(config);
255
247
  }
@@ -451,9 +443,10 @@ export class ConfigLoader {
451
443
  * Mask sensitive values
452
444
  */
453
445
  static maskSensitive(key, value) {
454
- const valueStr = String(value);
455
446
  const keyLower = key.toLowerCase();
447
+ // Handle sensitive values
456
448
  if (keyLower.includes('key') || keyLower.includes('token') || keyLower.includes('password')) {
449
+ const valueStr = String(value);
457
450
  if (valueStr.length <= 8) {
458
451
  return '***';
459
452
  }
@@ -465,7 +458,46 @@ export class ConfigLoader {
465
458
  if (Array.isArray(value)) {
466
459
  return value.join(', ');
467
460
  }
468
- return valueStr;
461
+ // Handle objects (like analytics, profiles)
462
+ if (typeof value === 'object' && value !== null) {
463
+ // Recursively mask sensitive values in nested objects
464
+ const masked = this.maskNestedSensitive(value);
465
+ return JSON.stringify(masked, null, 2);
466
+ }
467
+ return String(value);
468
+ }
469
+ /**
470
+ * Recursively mask sensitive values in nested objects
471
+ */
472
+ static maskNestedSensitive(obj) {
473
+ if (Array.isArray(obj)) {
474
+ return obj.map(item => this.maskNestedSensitive(item));
475
+ }
476
+ if (typeof obj === 'object' && obj !== null) {
477
+ const result = {};
478
+ for (const [key, value] of Object.entries(obj)) {
479
+ const keyLower = key.toLowerCase();
480
+ if (keyLower.includes('key') || keyLower.includes('token') || keyLower.includes('password')) {
481
+ const valueStr = String(value);
482
+ if (valueStr.length <= 8) {
483
+ result[key] = '***';
484
+ }
485
+ else {
486
+ const start = valueStr.substring(0, 8);
487
+ const end = valueStr.substring(valueStr.length - 4);
488
+ result[key] = `${start}***${end}`;
489
+ }
490
+ }
491
+ else if (typeof value === 'object' && value !== null) {
492
+ result[key] = this.maskNestedSensitive(value);
493
+ }
494
+ else {
495
+ result[key] = value;
496
+ }
497
+ }
498
+ return result;
499
+ }
500
+ return obj;
469
501
  }
470
502
  /**
471
503
  * Get color for source
@@ -486,32 +518,9 @@ export class ConfigLoader {
486
518
  static getEnvOverrides() {
487
519
  return this.removeUndefined(this.loadFromEnv());
488
520
  }
489
- /**
490
- * Set multi-provider environment variables (OpenAI, Anthropic, Gemini)
491
- * Used by LiteLLM and AI-Run SSO for maximum compatibility
492
- */
493
- static setMultiProviderEnvVars(env, config) {
494
- if (config.baseUrl) {
495
- env.OPENAI_BASE_URL = config.baseUrl;
496
- env.ANTHROPIC_BASE_URL = config.baseUrl;
497
- // LiteLLM Gemini integration requires GOOGLE_GEMINI_BASE_URL
498
- // See: https://docs.litellm.ai/docs/tutorials/litellm_gemini_cli
499
- env.GOOGLE_GEMINI_BASE_URL = config.baseUrl;
500
- }
501
- if (config.apiKey) {
502
- env.OPENAI_API_KEY = config.apiKey;
503
- env.ANTHROPIC_AUTH_TOKEN = config.apiKey;
504
- env.GEMINI_API_KEY = config.apiKey;
505
- }
506
- if (config.model) {
507
- env.OPENAI_MODEL = config.model;
508
- env.ANTHROPIC_MODEL = config.model;
509
- env.GEMINI_MODEL = config.model;
510
- }
511
- }
512
521
  /**
513
522
  * Export provider-specific environment variables
514
- * (for passing to external agents like Claude Code, Codex)
523
+ * Uses ProviderRegistry to get env mappings from provider templates
515
524
  */
516
525
  static exportProviderEnvVars(config) {
517
526
  const env = {};
@@ -528,62 +537,33 @@ export class ConfigLoader {
528
537
  env.CODEMIE_TIMEOUT = String(config.timeout);
529
538
  if (config.debug)
530
539
  env.CODEMIE_DEBUG = String(config.debug);
531
- // Set provider-specific vars based on provider
532
- const provider = (config.provider || 'openai').toUpperCase();
533
- if (provider === 'OPENAI' || provider === 'CODEX') {
534
- // OpenAI and Codex share the same configuration
535
- // Note: OpenAI Codex was deprecated in March 2023
536
- // Modern usage should use gpt-3.5-turbo or gpt-4 models instead
537
- if (config.baseUrl)
538
- env.OPENAI_BASE_URL = config.baseUrl;
539
- if (config.apiKey)
540
- env.OPENAI_API_KEY = config.apiKey;
541
- if (config.model)
542
- env.OPENAI_MODEL = config.model;
543
- // Legacy Codex environment variables (for compatibility)
544
- if (provider === 'CODEX') {
545
- if (config.baseUrl)
546
- env.CODEX_BASE_URL = config.baseUrl;
547
- if (config.apiKey)
548
- env.CODEX_API_KEY = config.apiKey;
549
- if (config.model)
550
- env.CODEX_MODEL = config.model;
540
+ // Get provider template from registry
541
+ const providerName = (config.provider || 'openai').toLowerCase();
542
+ const providerTemplate = ProviderRegistry.getProvider(providerName);
543
+ if (providerTemplate?.envMapping) {
544
+ // Apply env mappings from provider template
545
+ const { envMapping } = providerTemplate;
546
+ // Map base URL
547
+ if (config.baseUrl && envMapping.baseUrl) {
548
+ for (const envVar of envMapping.baseUrl) {
549
+ env[envVar] = config.baseUrl;
550
+ }
551
+ }
552
+ // Map API key
553
+ if (config.apiKey && envMapping.apiKey) {
554
+ for (const envVar of envMapping.apiKey) {
555
+ env[envVar] = config.apiKey;
556
+ }
557
+ }
558
+ // Map model
559
+ if (config.model && envMapping.model) {
560
+ for (const envVar of envMapping.model) {
561
+ env[envVar] = config.model;
562
+ }
551
563
  }
552
564
  }
553
- else if (provider === 'AZURE') {
554
- if (config.baseUrl)
555
- env.AZURE_OPENAI_ENDPOINT = config.baseUrl;
556
- if (config.apiKey)
557
- env.AZURE_OPENAI_API_KEY = config.apiKey;
558
- if (config.model)
559
- env.AZURE_OPENAI_DEPLOYMENT = config.model;
560
- }
561
- else if (provider === 'BEDROCK') {
562
- // AWS Bedrock configuration
563
- env.CLAUDE_CODE_USE_BEDROCK = '1';
564
- // AWS credentials should be set via AWS CLI or environment variables
565
- }
566
- else if (provider === 'GEMINI') {
567
- // Google Gemini API
568
- // LiteLLM Gemini integration requires GOOGLE_GEMINI_BASE_URL
569
- // See: https://docs.litellm.ai/docs/tutorials/litellm_gemini_cli
570
- if (config.baseUrl)
571
- env.GOOGLE_GEMINI_BASE_URL = config.baseUrl;
572
- if (config.apiKey)
573
- env.GEMINI_API_KEY = config.apiKey;
574
- if (config.model)
575
- env.GEMINI_MODEL = config.model;
576
- }
577
- else if (provider === 'LITELLM') {
578
- // Generic LiteLLM proxy gateway
579
- // LiteLLM can proxy for any model, so set OpenAI, Anthropic, and Gemini env vars
580
- this.setMultiProviderEnvVars(env, config);
581
- }
582
- else if (provider === 'AI-RUN-SSO') {
583
- // CodeMie SSO authentication - credentials handled via credential store
584
- // Set OpenAI, Anthropic, and Gemini env vars for compatibility
585
- this.setMultiProviderEnvVars(env, config);
586
- // Add SSO-specific environment variables
565
+ // Special case: SSO-specific environment variables
566
+ if (providerName === 'ai-run-sso') {
587
567
  if (config.codeMieUrl)
588
568
  env.CODEMIE_URL = config.codeMieUrl;
589
569
  if (config.authMethod)