@codemieai/code 0.14.0 → 0.15.0

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 (280) hide show
  1. package/README.md +23 -0
  2. package/bin/codemie-openwiki.js +18 -0
  3. package/dist/agents/core/AgentCLI.d.ts.map +1 -1
  4. package/dist/agents/core/AgentCLI.js +2 -0
  5. package/dist/agents/core/AgentCLI.js.map +1 -1
  6. package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
  7. package/dist/agents/core/BaseAgentAdapter.js +25 -11
  8. package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
  9. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts +1 -0
  10. package/dist/agents/core/extension/BaseExtensionInstaller.d.ts.map +1 -1
  11. package/dist/agents/core/extension/BaseExtensionInstaller.js +20 -0
  12. package/dist/agents/core/extension/BaseExtensionInstaller.js.map +1 -1
  13. package/dist/agents/core/types.d.ts +8 -0
  14. package/dist/agents/core/types.d.ts.map +1 -1
  15. package/dist/agents/plugins/claude/claude-message-types.d.ts +1 -0
  16. package/dist/agents/plugins/claude/claude-message-types.d.ts.map +1 -1
  17. package/dist/agents/plugins/claude/claude.plugin.d.ts.map +1 -1
  18. package/dist/agents/plugins/claude/claude.plugin.js +48 -6
  19. package/dist/agents/plugins/claude/claude.plugin.js.map +1 -1
  20. package/dist/agents/plugins/claude/plugin/__tests__/statusline.test.ts +26 -4
  21. package/dist/agents/plugins/claude/plugin/statusline.mjs +5 -1
  22. package/dist/agents/plugins/codemie-code.plugin.d.ts +1 -0
  23. package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
  24. package/dist/agents/plugins/codemie-code.plugin.js +12 -5
  25. package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
  26. package/dist/agents/plugins/codex/codex-message-types.d.ts +28 -0
  27. package/dist/agents/plugins/codex/codex-message-types.d.ts.map +1 -1
  28. package/dist/agents/plugins/codex/codex-message-types.js.map +1 -1
  29. package/dist/agents/plugins/codex/codex.plugin.d.ts.map +1 -1
  30. package/dist/agents/plugins/codex/codex.plugin.js +30 -2
  31. package/dist/agents/plugins/codex/codex.plugin.js.map +1 -1
  32. package/dist/agents/plugins/codex/index.d.ts +4 -2
  33. package/dist/agents/plugins/codex/index.d.ts.map +1 -1
  34. package/dist/agents/plugins/codex/index.js +3 -1
  35. package/dist/agents/plugins/codex/index.js.map +1 -1
  36. package/dist/agents/plugins/copilot-cli/copilot-cli.plugin.d.ts.map +1 -1
  37. package/dist/agents/plugins/copilot-cli/copilot-cli.plugin.js +3 -1
  38. package/dist/agents/plugins/copilot-cli/copilot-cli.plugin.js.map +1 -1
  39. package/dist/agents/plugins/gemini/gemini.models.d.ts +33 -0
  40. package/dist/agents/plugins/gemini/gemini.models.d.ts.map +1 -0
  41. package/dist/agents/plugins/gemini/gemini.models.js +122 -0
  42. package/dist/agents/plugins/gemini/gemini.models.js.map +1 -0
  43. package/dist/agents/plugins/gemini/gemini.plugin.d.ts.map +1 -1
  44. package/dist/agents/plugins/gemini/gemini.plugin.js +6 -0
  45. package/dist/agents/plugins/gemini/gemini.plugin.js.map +1 -1
  46. package/dist/agents/plugins/openwiki/openwiki.plugin.d.ts +30 -0
  47. package/dist/agents/plugins/openwiki/openwiki.plugin.d.ts.map +1 -0
  48. package/dist/agents/plugins/openwiki/openwiki.plugin.js +73 -0
  49. package/dist/agents/plugins/openwiki/openwiki.plugin.js.map +1 -0
  50. package/dist/agents/plugins/pi/pi.models.d.ts.map +1 -1
  51. package/dist/agents/plugins/pi/pi.models.js +62 -0
  52. package/dist/agents/plugins/pi/pi.models.js.map +1 -1
  53. package/dist/agents/plugins/pi/pi.plugin.d.ts.map +1 -1
  54. package/dist/agents/plugins/pi/pi.plugin.js +7 -3
  55. package/dist/agents/plugins/pi/pi.plugin.js.map +1 -1
  56. package/dist/agents/registry.d.ts.map +1 -1
  57. package/dist/agents/registry.js +2 -0
  58. package/dist/agents/registry.js.map +1 -1
  59. package/dist/bin/proxy-daemon.js +3 -0
  60. package/dist/bin/proxy-daemon.js.map +1 -1
  61. package/dist/cli/commands/analytics/aggregator.d.ts.map +1 -1
  62. package/dist/cli/commands/analytics/aggregator.js +1 -0
  63. package/dist/cli/commands/analytics/aggregator.js.map +1 -1
  64. package/dist/cli/commands/analytics/cost/cost-enricher.d.ts.map +1 -1
  65. package/dist/cli/commands/analytics/cost/cost-enricher.js +6 -1
  66. package/dist/cli/commands/analytics/cost/cost-enricher.js.map +1 -1
  67. package/dist/cli/commands/analytics/cost/types.d.ts +8 -0
  68. package/dist/cli/commands/analytics/cost/types.d.ts.map +1 -1
  69. package/dist/cli/commands/analytics/report/client/app.js +111 -1
  70. package/dist/cli/commands/analytics/report/payload-builder.d.ts.map +1 -1
  71. package/dist/cli/commands/analytics/report/payload-builder.js +6 -0
  72. package/dist/cli/commands/analytics/report/payload-builder.js.map +1 -1
  73. package/dist/cli/commands/analytics/report/template.html +9 -0
  74. package/dist/cli/commands/analytics/report/types.d.ts +1 -0
  75. package/dist/cli/commands/analytics/report/types.d.ts.map +1 -1
  76. package/dist/cli/commands/analytics/types.d.ts +1 -0
  77. package/dist/cli/commands/analytics/types.d.ts.map +1 -1
  78. package/dist/cli/commands/assistants/chat/claudeUploadsDetector.d.ts.map +1 -1
  79. package/dist/cli/commands/assistants/chat/claudeUploadsDetector.js +43 -67
  80. package/dist/cli/commands/assistants/chat/claudeUploadsDetector.js.map +1 -1
  81. package/dist/cli/commands/assistants/chat/codexUploadsDetector.d.ts +26 -0
  82. package/dist/cli/commands/assistants/chat/codexUploadsDetector.d.ts.map +1 -0
  83. package/dist/cli/commands/assistants/chat/codexUploadsDetector.js +240 -0
  84. package/dist/cli/commands/assistants/chat/codexUploadsDetector.js.map +1 -0
  85. package/dist/cli/commands/assistants/chat/historyLoader.d.ts +2 -2
  86. package/dist/cli/commands/assistants/chat/historyLoader.d.ts.map +1 -1
  87. package/dist/cli/commands/assistants/chat/historyLoader.js.map +1 -1
  88. package/dist/cli/commands/assistants/chat/index.d.ts.map +1 -1
  89. package/dist/cli/commands/assistants/chat/index.js +14 -3
  90. package/dist/cli/commands/assistants/chat/index.js.map +1 -1
  91. package/dist/cli/commands/assistants/setup/data.d.ts.map +1 -1
  92. package/dist/cli/commands/assistants/setup/data.js +7 -0
  93. package/dist/cli/commands/assistants/setup/data.js.map +1 -1
  94. package/dist/cli/commands/assistants/setup/selection/utils.d.ts +3 -3
  95. package/dist/cli/commands/assistants/setup/selection/utils.d.ts.map +1 -1
  96. package/dist/cli/commands/assistants/setup/selection/utils.js.map +1 -1
  97. package/dist/cli/commands/docs.d.ts +12 -0
  98. package/dist/cli/commands/docs.d.ts.map +1 -0
  99. package/dist/cli/commands/docs.js +141 -0
  100. package/dist/cli/commands/docs.js.map +1 -0
  101. package/dist/cli/commands/install.d.ts.map +1 -1
  102. package/dist/cli/commands/install.js +30 -18
  103. package/dist/cli/commands/install.js.map +1 -1
  104. package/dist/cli/commands/log/filter.js +1 -1
  105. package/dist/cli/commands/log/filter.js.map +1 -1
  106. package/dist/cli/commands/log/formatter.d.ts.map +1 -1
  107. package/dist/cli/commands/log/formatter.js +1 -0
  108. package/dist/cli/commands/log/formatter.js.map +1 -1
  109. package/dist/cli/commands/log/parser.d.ts.map +1 -1
  110. package/dist/cli/commands/log/parser.js +2 -0
  111. package/dist/cli/commands/log/parser.js.map +1 -1
  112. package/dist/cli/commands/log/types.d.ts +1 -1
  113. package/dist/cli/commands/log/types.d.ts.map +1 -1
  114. package/dist/cli/commands/models.d.ts.map +1 -1
  115. package/dist/cli/commands/models.js +12 -2
  116. package/dist/cli/commands/models.js.map +1 -1
  117. package/dist/cli/commands/profile/display.d.ts +3 -3
  118. package/dist/cli/commands/profile/display.d.ts.map +1 -1
  119. package/dist/cli/commands/profile/display.js +6 -6
  120. package/dist/cli/commands/profile/display.js.map +1 -1
  121. package/dist/cli/commands/profile/index.d.ts.map +1 -1
  122. package/dist/cli/commands/profile/index.js +4 -2
  123. package/dist/cli/commands/profile/index.js.map +1 -1
  124. package/dist/cli/commands/proxy/connect-orchestrator.d.ts +9 -0
  125. package/dist/cli/commands/proxy/connect-orchestrator.d.ts.map +1 -1
  126. package/dist/cli/commands/proxy/connect-orchestrator.js +15 -1
  127. package/dist/cli/commands/proxy/connect-orchestrator.js.map +1 -1
  128. package/dist/cli/commands/proxy/connectors/codex-desktop.d.ts +1 -1
  129. package/dist/cli/commands/proxy/connectors/codex-desktop.d.ts.map +1 -1
  130. package/dist/cli/commands/proxy/connectors/codex-desktop.js +19 -9
  131. package/dist/cli/commands/proxy/connectors/codex-desktop.js.map +1 -1
  132. package/dist/cli/commands/proxy/connectors/desktop.d.ts +5 -0
  133. package/dist/cli/commands/proxy/connectors/desktop.d.ts.map +1 -1
  134. package/dist/cli/commands/proxy/connectors/desktop.js +57 -2
  135. package/dist/cli/commands/proxy/connectors/desktop.js.map +1 -1
  136. package/dist/cli/commands/proxy/connectors/managed-mcp-remote.d.ts +10 -0
  137. package/dist/cli/commands/proxy/connectors/managed-mcp-remote.d.ts.map +1 -1
  138. package/dist/cli/commands/proxy/connectors/managed-mcp-remote.js.map +1 -1
  139. package/dist/cli/commands/proxy/daemon-manager.d.ts +2 -0
  140. package/dist/cli/commands/proxy/daemon-manager.d.ts.map +1 -1
  141. package/dist/cli/commands/proxy/daemon-manager.js +2 -0
  142. package/dist/cli/commands/proxy/daemon-manager.js.map +1 -1
  143. package/dist/cli/commands/proxy/index.d.ts.map +1 -1
  144. package/dist/cli/commands/proxy/index.js +44 -2
  145. package/dist/cli/commands/proxy/index.js.map +1 -1
  146. package/dist/cli/commands/setup.d.ts.map +1 -1
  147. package/dist/cli/commands/setup.js +6 -6
  148. package/dist/cli/commands/setup.js.map +1 -1
  149. package/dist/cli/commands/shared/api-response-guard.d.ts +20 -0
  150. package/dist/cli/commands/shared/api-response-guard.d.ts.map +1 -0
  151. package/dist/cli/commands/shared/api-response-guard.js +31 -0
  152. package/dist/cli/commands/shared/api-response-guard.js.map +1 -0
  153. package/dist/cli/commands/skills/setup/data.d.ts.map +1 -1
  154. package/dist/cli/commands/skills/setup/data.js +8 -0
  155. package/dist/cli/commands/skills/setup/data.js.map +1 -1
  156. package/dist/cli/index.js +2 -0
  157. package/dist/cli/index.js.map +1 -1
  158. package/dist/env/types.d.ts +22 -15
  159. package/dist/env/types.d.ts.map +1 -1
  160. package/dist/env/types.js.map +1 -1
  161. package/dist/frameworks/core/registry.d.ts +6 -0
  162. package/dist/frameworks/core/registry.d.ts.map +1 -1
  163. package/dist/frameworks/core/registry.js +8 -0
  164. package/dist/frameworks/core/registry.js.map +1 -1
  165. package/dist/frameworks/core/types.d.ts +7 -0
  166. package/dist/frameworks/core/types.d.ts.map +1 -1
  167. package/dist/frameworks/plugins/codebase-memory.plugin.d.ts.map +1 -1
  168. package/dist/frameworks/plugins/codebase-memory.plugin.js +1 -0
  169. package/dist/frameworks/plugins/codebase-memory.plugin.js.map +1 -1
  170. package/dist/frameworks/plugins/codegraph.plugin.d.ts +17 -0
  171. package/dist/frameworks/plugins/codegraph.plugin.d.ts.map +1 -0
  172. package/dist/frameworks/plugins/codegraph.plugin.js +74 -0
  173. package/dist/frameworks/plugins/codegraph.plugin.js.map +1 -0
  174. package/dist/frameworks/plugins/graphify.plugin.d.ts +20 -0
  175. package/dist/frameworks/plugins/graphify.plugin.d.ts.map +1 -0
  176. package/dist/frameworks/plugins/graphify.plugin.js +92 -0
  177. package/dist/frameworks/plugins/graphify.plugin.js.map +1 -0
  178. package/dist/frameworks/plugins/index.d.ts +2 -0
  179. package/dist/frameworks/plugins/index.d.ts.map +1 -1
  180. package/dist/frameworks/plugins/index.js +6 -0
  181. package/dist/frameworks/plugins/index.js.map +1 -1
  182. package/dist/hooks/executor.d.ts +2 -0
  183. package/dist/hooks/executor.d.ts.map +1 -1
  184. package/dist/hooks/executor.js +14 -1
  185. package/dist/hooks/executor.js.map +1 -1
  186. package/dist/migrations/001-config-rename.migration.d.ts +0 -1
  187. package/dist/migrations/001-config-rename.migration.d.ts.map +1 -1
  188. package/dist/migrations/001-config-rename.migration.js +0 -1
  189. package/dist/migrations/001-config-rename.migration.js.map +1 -1
  190. package/dist/migrations/002-consolidate-sessions.migration.d.ts +0 -1
  191. package/dist/migrations/002-consolidate-sessions.migration.d.ts.map +1 -1
  192. package/dist/migrations/002-consolidate-sessions.migration.js +0 -1
  193. package/dist/migrations/002-consolidate-sessions.migration.js.map +1 -1
  194. package/dist/migrations/003-remove-hooks-node.migration.d.ts +0 -1
  195. package/dist/migrations/003-remove-hooks-node.migration.d.ts.map +1 -1
  196. package/dist/migrations/003-remove-hooks-node.migration.js +0 -1
  197. package/dist/migrations/003-remove-hooks-node.migration.js.map +1 -1
  198. package/dist/migrations/006-resolve-hook-command-paths.migration.d.ts +9 -0
  199. package/dist/migrations/006-resolve-hook-command-paths.migration.d.ts.map +1 -0
  200. package/dist/migrations/006-resolve-hook-command-paths.migration.js +59 -0
  201. package/dist/migrations/006-resolve-hook-command-paths.migration.js.map +1 -0
  202. package/dist/migrations/007-decouple-provider-workspace-config.migration.d.ts +10 -0
  203. package/dist/migrations/007-decouple-provider-workspace-config.migration.d.ts.map +1 -0
  204. package/dist/migrations/007-decouple-provider-workspace-config.migration.js +118 -0
  205. package/dist/migrations/007-decouple-provider-workspace-config.migration.js.map +1 -0
  206. package/dist/migrations/index.d.ts +2 -0
  207. package/dist/migrations/index.d.ts.map +1 -1
  208. package/dist/migrations/index.js +2 -0
  209. package/dist/migrations/index.js.map +1 -1
  210. package/dist/migrations/types.d.ts +1 -3
  211. package/dist/migrations/types.d.ts.map +1 -1
  212. package/dist/plugins/loaders/hooks-loader.js +1 -1
  213. package/dist/plugins/loaders/hooks-loader.js.map +1 -1
  214. package/dist/providers/core/codemie-auth-helpers.d.ts +1 -1
  215. package/dist/providers/core/codemie-auth-helpers.d.ts.map +1 -1
  216. package/dist/providers/core/codemie-auth-helpers.js +3 -3
  217. package/dist/providers/core/codemie-auth-helpers.js.map +1 -1
  218. package/dist/providers/core/default-agent-hooks.d.ts.map +1 -1
  219. package/dist/providers/core/default-agent-hooks.js +21 -5
  220. package/dist/providers/core/default-agent-hooks.js.map +1 -1
  221. package/dist/providers/core/types.d.ts +1 -0
  222. package/dist/providers/core/types.d.ts.map +1 -1
  223. package/dist/providers/core/types.js.map +1 -1
  224. package/dist/providers/integration/setup-ui.d.ts +5 -0
  225. package/dist/providers/integration/setup-ui.d.ts.map +1 -1
  226. package/dist/providers/integration/setup-ui.js +17 -2
  227. package/dist/providers/integration/setup-ui.js.map +1 -1
  228. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.d.ts.map +1 -1
  229. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.js +12 -0
  230. package/dist/providers/plugins/anthropic-subscription/anthropic-subscription.template.js.map +1 -1
  231. package/dist/providers/plugins/litellm/litellm.setup-steps.d.ts.map +1 -1
  232. package/dist/providers/plugins/litellm/litellm.setup-steps.js +6 -4
  233. package/dist/providers/plugins/litellm/litellm.setup-steps.js.map +1 -1
  234. package/dist/providers/plugins/ollama/ollama.health.js +1 -1
  235. package/dist/providers/plugins/ollama/ollama.health.js.map +1 -1
  236. package/dist/providers/plugins/ollama/ollama.models.d.ts +29 -2
  237. package/dist/providers/plugins/ollama/ollama.models.d.ts.map +1 -1
  238. package/dist/providers/plugins/ollama/ollama.models.js +103 -22
  239. package/dist/providers/plugins/ollama/ollama.models.js.map +1 -1
  240. package/dist/providers/plugins/ollama/ollama.setup-steps.d.ts.map +1 -1
  241. package/dist/providers/plugins/ollama/ollama.setup-steps.js +71 -8
  242. package/dist/providers/plugins/ollama/ollama.setup-steps.js.map +1 -1
  243. package/dist/providers/plugins/ollama/ollama.template.d.ts.map +1 -1
  244. package/dist/providers/plugins/ollama/ollama.template.js +66 -6
  245. package/dist/providers/plugins/ollama/ollama.template.js.map +1 -1
  246. package/dist/providers/plugins/sso/proxy/plugins/claude-request-normalizer.plugin.d.ts +3 -25
  247. package/dist/providers/plugins/sso/proxy/plugins/claude-request-normalizer.plugin.d.ts.map +1 -1
  248. package/dist/providers/plugins/sso/proxy/plugins/claude-request-normalizer.plugin.js +93 -100
  249. package/dist/providers/plugins/sso/proxy/plugins/claude-request-normalizer.plugin.js.map +1 -1
  250. package/dist/providers/plugins/sso/proxy/plugins/codex-request-normalizer.plugin.js +7 -2
  251. package/dist/providers/plugins/sso/proxy/plugins/codex-request-normalizer.plugin.js.map +1 -1
  252. package/dist/providers/plugins/sso/proxy/plugins/header-injection.plugin.js +5 -1
  253. package/dist/providers/plugins/sso/proxy/plugins/header-injection.plugin.js.map +1 -1
  254. package/dist/providers/plugins/sso/proxy/plugins/sso-auth.plugin.d.ts.map +1 -1
  255. package/dist/providers/plugins/sso/proxy/plugins/sso-auth.plugin.js +32 -3
  256. package/dist/providers/plugins/sso/proxy/plugins/sso-auth.plugin.js.map +1 -1
  257. package/dist/providers/plugins/sso/proxy/proxy-errors.d.ts.map +1 -1
  258. package/dist/providers/plugins/sso/proxy/proxy-errors.js +27 -1
  259. package/dist/providers/plugins/sso/proxy/proxy-errors.js.map +1 -1
  260. package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts +7 -2
  261. package/dist/providers/plugins/sso/proxy/proxy-http-client.d.ts.map +1 -1
  262. package/dist/providers/plugins/sso/proxy/proxy-http-client.js +191 -15
  263. package/dist/providers/plugins/sso/proxy/proxy-http-client.js.map +1 -1
  264. package/dist/utils/config.d.ts +20 -27
  265. package/dist/utils/config.d.ts.map +1 -1
  266. package/dist/utils/config.js +90 -84
  267. package/dist/utils/config.js.map +1 -1
  268. package/dist/utils/hardware.d.ts +36 -0
  269. package/dist/utils/hardware.d.ts.map +1 -0
  270. package/dist/utils/hardware.js +86 -0
  271. package/dist/utils/hardware.js.map +1 -0
  272. package/dist/utils/hook-command.d.ts +4 -0
  273. package/dist/utils/hook-command.d.ts.map +1 -0
  274. package/dist/utils/hook-command.js +75 -0
  275. package/dist/utils/hook-command.js.map +1 -0
  276. package/dist/utils/logger.d.ts +1 -0
  277. package/dist/utils/logger.d.ts.map +1 -1
  278. package/dist/utils/logger.js +21 -0
  279. package/dist/utils/logger.js.map +1 -1
  280. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -85,27 +85,21 @@ export class ConfigLoader {
85
85
  // 4. Global config (~/.codemie/codemie-cli.config.json)
86
86
  const globalConfig = await this.loadGlobalConfigProfile(selectedProfileName);
87
87
  Object.assign(config, this.removeUndefined(globalConfig));
88
- // 3. Project-local config (.codemie/codemie-cli.config.json)
88
+ // 3. Project-local config (.codemie/codemie-cli.config.json) — provider identity
89
+ // (name/model/baseUrl/apiKey/etc.). Repo/tooling-context fields no longer live on
90
+ // the profile; they resolve independently below via resolveWorkspace().
89
91
  const localConfig = await this.loadLocalConfigProfile(workingDir, localProfileName);
90
- // When the selected global profile differs from the team's local profile, keep only
91
- // project-level local fields. The selection may come from --profile or activeProfile;
92
- // either way, the local team fallback must not replace provider, model, or credentials.
92
+ // When the selected global profile differs from the team's local profile, the local
93
+ // team profile must not replace provider, model, or credentials — apply none of it.
93
94
  const applyProjectOnly = Boolean(selectedProfileName && localProfileName && selectedProfileName !== localProfileName);
94
- // When applying project-only composition, gate it on URL equality. If the
95
- // selected global profile targets a different CodeMie env than the local
96
- // team profile, the team's project/integration/URL all reference the wrong
97
- // env's records — drop the project-context bundle and let the global
98
- // profile supply everything.
99
- const selectedProfileDefinesProjectContext = Boolean(globalConfig.codeMieProject || globalConfig.codeMieIntegration);
100
- const preserveProjectContext = applyProjectOnly &&
101
- !selectedProfileDefinesProjectContext &&
102
- this.shouldPreserveProjectContext(localConfig.codeMieUrl, globalConfig.codeMieUrl);
103
- const effectiveLocalConfig = preserveProjectContext
104
- ? this.filterProjectFields(localConfig)
105
- : applyProjectOnly
106
- ? {}
107
- : localConfig;
95
+ const effectiveLocalConfig = applyProjectOnly ? {} : localConfig;
108
96
  Object.assign(config, this.removeUndefined(effectiveLocalConfig));
97
+ // Workspace (repo/tooling-context) fields resolve by whole-object override — the
98
+ // local scope's workspace if defined, else the global scope's — independent of
99
+ // which profile is active, so switching the active profile never drops workspace
100
+ // context.
101
+ const workspace = await this.resolveWorkspace(workingDir);
102
+ Object.assign(config, this.removeUndefined(workspace));
109
103
  // 2. Environment variables (load .env first if in project)
110
104
  const envPath = path.join(workingDir, '.env');
111
105
  try {
@@ -166,6 +160,24 @@ export class ConfigLoader {
166
160
  }
167
161
  return config;
168
162
  }
163
+ /**
164
+ * Resolve the workspace-level (repo/tooling-context) configuration for a working
165
+ * directory, by whole-object override: the local scope's `workspace` if it is
166
+ * defined, else the global scope's, else `{}`. Never mixes fields between scopes —
167
+ * this is what lets switching the active profile keep workspace context intact.
168
+ */
169
+ static async resolveWorkspace(workingDir) {
170
+ // `!= null` (loose) deliberately also excludes an explicit `"workspace": null` —
171
+ // e.g. from a hand-edited or externally-written config file — which is not a
172
+ // valid WorkspaceConfig object and must fall back to the next scope rather than
173
+ // being treated as "defined" and passed downstream to Object.entries().
174
+ const localMultiConfig = await this.loadLocalMultiProviderConfig(workingDir);
175
+ if (localMultiConfig.workspace != null) {
176
+ return localMultiConfig.workspace;
177
+ }
178
+ const globalMultiConfig = await this.loadMultiProviderConfig();
179
+ return globalMultiConfig.workspace ?? {};
180
+ }
169
181
  /**
170
182
  * Load full configuration including analytics
171
183
  * Returns the complete multi-provider config with analytics settings
@@ -299,49 +311,6 @@ export class ConfigLoader {
299
311
  // Fallback: keep the original 2-level lookup behavior.
300
312
  return selectedProfileName;
301
313
  }
302
- /**
303
- * Fields that belong to the repository/project context rather than to the provider
304
- * identity. When a user explicitly selects a different global provider profile via
305
- * --profile, these fields should still be supplied by the team's local profile so the
306
- * repository context is not lost.
307
- */
308
- static PROJECT_FIELDS = [
309
- 'codeMieProject',
310
- 'codeMieIntegration',
311
- 'codeMieUrl'
312
- ];
313
- /**
314
- * Returns true when the local team profile's project context (codeMieProject,
315
- * codeMieIntegration, codeMieUrl) is safe to compose with the selected global
316
- * profile. The composition is only safe when both profiles target the same
317
- * CodeMie environment — otherwise the local project/integration IDs reference
318
- * the wrong env's database rows and the URL is outright wrong.
319
- *
320
- * The gate is conservative: it only blocks composition when both URLs are
321
- * explicitly set and normalized-differ. A missing URL on either side is
322
- * treated as "no signal of conflict" and composition proceeds. This matches
323
- * the common case where a local profile sets only `codeMieProject` and relies
324
- * on the global profile for the URL.
325
- */
326
- static shouldPreserveProjectContext(localUrl, globalUrl) {
327
- if (!localUrl || !globalUrl)
328
- return true;
329
- const normalize = (u) => u.replace(/\/+$/, '').toLowerCase();
330
- return normalize(localUrl) === normalize(globalUrl);
331
- }
332
- /**
333
- * Keep only project-level fields from a local profile. Used when the selected global
334
- * profile differs from the team's local default profile.
335
- */
336
- static filterProjectFields(config) {
337
- const result = {};
338
- for (const field of this.PROJECT_FIELDS) {
339
- if (config[field] !== undefined) {
340
- result[field] = config[field];
341
- }
342
- }
343
- return result;
344
- }
345
314
  /**
346
315
  * Load configuration with validation (throws if required fields missing)
347
316
  */
@@ -479,6 +448,38 @@ export class ConfigLoader {
479
448
  config.userEmail = email;
480
449
  await this.saveMultiProviderConfig(config);
481
450
  }
451
+ /**
452
+ * Keys that belong to WorkspaceConfig (repo/tooling-context) rather than to a
453
+ * ProviderProfile. Used to split a saved profile's input into its profile half
454
+ * and its workspace half — see splitProfileAndWorkspace().
455
+ */
456
+ static WORKSPACE_KEYS = [
457
+ 'codeMieUrl',
458
+ 'codeMieProject',
459
+ 'codeMieIntegration',
460
+ 'hooks',
461
+ 'plugins',
462
+ 'assistants',
463
+ 'skillsSearchUrl',
464
+ 'claudeAutocompactPct',
465
+ 'metrics'
466
+ ];
467
+ /**
468
+ * Partition a profile-shaped input into its provider-identity half and its
469
+ * workspace half, so callers that persist a profile can route each half to
470
+ * where it belongs (profiles[name] vs. the scope's workspace).
471
+ */
472
+ static splitProfileAndWorkspace(input) {
473
+ const profile = { ...input };
474
+ const workspace = {};
475
+ for (const key of this.WORKSPACE_KEYS) {
476
+ if (input[key] !== undefined) {
477
+ workspace[key] = input[key];
478
+ delete profile[key];
479
+ }
480
+ }
481
+ return { profile, workspace };
482
+ }
482
483
  /**
483
484
  * Add or update a profile
484
485
  */
@@ -486,8 +487,12 @@ export class ConfigLoader {
486
487
  const config = await this.loadMultiProviderConfig();
487
488
  // Strip top-level-only fields that must not live inside a profile
488
489
  const { codemieSkills: _skills, codemieAssistants: _assistants, ...cleanProfile } = profile;
489
- cleanProfile.name = profileName;
490
- config.profiles[profileName] = cleanProfile;
490
+ const { profile: profileFields, workspace: workspaceFields } = this.splitProfileAndWorkspace(cleanProfile);
491
+ profileFields.name = profileName;
492
+ config.profiles[profileName] = profileFields;
493
+ if (Object.keys(this.removeUndefined(workspaceFields)).length > 0) {
494
+ config.workspace = { ...config.workspace, ...workspaceFields };
495
+ }
491
496
  // If this is the first profile, make it active
492
497
  if (Object.keys(config.profiles).length === 1) {
493
498
  config.activeProfile = profileName;
@@ -710,26 +715,21 @@ export class ConfigLoader {
710
715
  await fs.mkdir(configDir, { recursive: true });
711
716
  // Create multi-provider config structure
712
717
  const profileName = overrides?.profileName || 'default';
713
- const profile = {};
714
- // Add overrides if provided
715
- if (overrides?.codeMieProject) {
716
- profile.codeMieProject = overrides.codeMieProject;
717
- }
718
- if (overrides?.codeMieIntegration) {
719
- profile.codeMieIntegration = overrides.codeMieIntegration;
720
- }
721
- // Add any other overrides
718
+ const rawOverrides = {};
719
+ // Collect all overrides (excluding the meta-only profileName key)
722
720
  for (const [key, value] of Object.entries(overrides || {})) {
723
- if (key !== 'profileName' && key !== 'codeMieProject' && key !== 'codeMieIntegration' && value !== undefined) {
724
- profile[key] = value;
721
+ if (key !== 'profileName' && value !== undefined) {
722
+ rawOverrides[key] = value;
725
723
  }
726
724
  }
725
+ const { profile, workspace } = this.splitProfileAndWorkspace(rawOverrides);
727
726
  const config = {
728
727
  version: 2,
729
728
  activeProfile: profileName,
730
729
  profiles: {
731
730
  [profileName]: profile
732
- }
731
+ },
732
+ ...(Object.keys(this.removeUndefined(workspace)).length > 0 ? { workspace } : {})
733
733
  };
734
734
  const configPath = path.join(configDir, 'codemie-cli.config.json');
735
735
  await fs.writeFile(configPath, JSON.stringify(config, null, 2), 'utf-8');
@@ -854,6 +854,8 @@ export class ConfigLoader {
854
854
  * Remove undefined values from object
855
855
  */
856
856
  static removeUndefined(obj) {
857
+ if (obj == null)
858
+ return {};
857
859
  return Object.fromEntries(Object.entries(obj).filter(([_, v]) => v !== undefined));
858
860
  }
859
861
  /**
@@ -958,15 +960,15 @@ export class ConfigLoader {
958
960
  const globalConfig = await this.loadGlobalConfigProfile(selectedProfileName);
959
961
  const localConfig = await this.loadLocalConfigProfile(workingDir, localProfileName);
960
962
  const applyProjectOnly = Boolean(selectedProfileName && localProfileName && selectedProfileName !== localProfileName);
961
- const selectedProfileDefinesProjectContext = Boolean(globalConfig.codeMieProject || globalConfig.codeMieIntegration);
962
- const preserveProjectContext = applyProjectOnly &&
963
- !selectedProfileDefinesProjectContext &&
964
- this.shouldPreserveProjectContext(localConfig.codeMieUrl, globalConfig.codeMieUrl);
965
- const effectiveLocalConfig = preserveProjectContext
966
- ? this.filterProjectFields(localConfig)
967
- : applyProjectOnly
968
- ? {}
969
- : localConfig;
963
+ const effectiveLocalConfig = applyProjectOnly ? {} : localConfig;
964
+ // Workspace (repo/tooling-context) fields resolve independently of profile
965
+ // selection — see resolveWorkspace(). Label the layer by which scope actually
966
+ // supplied it (mirrors resolveWorkspace()'s own local-else-global rule) rather
967
+ // than hardcoding 'project', so --show-sources doesn't misattribute a
968
+ // global-scope-only workspace value to the local config.
969
+ const localWorkspaceScope = await this.loadLocalMultiProviderConfig(workingDir);
970
+ const workspaceSource = localWorkspaceScope.workspace != null ? 'project' : 'global';
971
+ const workspace = await this.resolveWorkspace(workingDir);
970
972
  const configs = [
971
973
  {
972
974
  data: {
@@ -983,6 +985,10 @@ export class ConfigLoader {
983
985
  data: effectiveLocalConfig,
984
986
  source: 'project'
985
987
  },
988
+ {
989
+ data: workspace,
990
+ source: workspaceSource
991
+ },
986
992
  {
987
993
  data: this.loadFromEnv(),
988
994
  source: 'env'
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * System Hardware Detection
3
+ *
4
+ * Detects memory capabilities of the current machine so that provider
5
+ * setup can recommend only the local LLM models that actually fit.
6
+ *
7
+ * Heuristics (rule of thumb: model weights + context/runtime overhead
8
+ * must fit into memory usable by the inference engine):
9
+ * - macOS (Apple Silicon): unified memory - GPU may wire up to ~75% of RAM
10
+ * - Linux/Windows with NVIDIA GPU: dedicated VRAM is the binding constraint
11
+ * - CPU-only fallback: conservative 50% of RAM (CPU inference is slow anyway)
12
+ */
13
+ export interface SystemCapabilities {
14
+ totalMemoryGb: number;
15
+ usableMemoryGb: number;
16
+ gpuMemoryGb?: number;
17
+ platform: NodeJS.Platform;
18
+ }
19
+ /**
20
+ * Detect system capabilities, including an async GPU probe.
21
+ * Result is cached for the process lifetime; call this early in async
22
+ * setup flows so later sync consumers (choice rendering) can use
23
+ * getSystemCapabilities().
24
+ */
25
+ export declare function detectSystemCapabilities(): Promise<SystemCapabilities>;
26
+ /**
27
+ * Get system capabilities synchronously.
28
+ * Returns the cached result of detectSystemCapabilities() when available,
29
+ * otherwise computes RAM-only heuristics without GPU probing.
30
+ */
31
+ export declare function getSystemCapabilities(): SystemCapabilities;
32
+ /**
33
+ * Check whether a model with the given memory requirement fits the system
34
+ */
35
+ export declare function modelFitsSystem(minMemoryGb: number, capabilities?: SystemCapabilities): boolean;
36
+ //# sourceMappingURL=hardware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardware.d.ts","sourceRoot":"","sources":["../../src/utils/hardware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAMH,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;CAC3B;AAuCD;;;;;GAKG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAa5E;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,kBAAkB,CAe1D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,kBAA4C,GACzD,OAAO,CAET"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * System Hardware Detection
3
+ *
4
+ * Detects memory capabilities of the current machine so that provider
5
+ * setup can recommend only the local LLM models that actually fit.
6
+ *
7
+ * Heuristics (rule of thumb: model weights + context/runtime overhead
8
+ * must fit into memory usable by the inference engine):
9
+ * - macOS (Apple Silicon): unified memory - GPU may wire up to ~75% of RAM
10
+ * - Linux/Windows with NVIDIA GPU: dedicated VRAM is the binding constraint
11
+ * - CPU-only fallback: conservative 50% of RAM (CPU inference is slow anyway)
12
+ */
13
+ import os from 'os';
14
+ import { exec } from './exec.js';
15
+ import { logger } from './logger.js';
16
+ // macOS unified memory: GPU can wire up to ~75% of RAM
17
+ const MACOS_MEMORY_FRACTION = 0.75;
18
+ // CPU-only / unknown GPU: conservative share of RAM for local inference
19
+ const FALLBACK_MEMORY_FRACTION = 0.5;
20
+ let cachedCapabilities;
21
+ /**
22
+ * Probe NVIDIA GPUs for dedicated VRAM via nvidia-smi.
23
+ * Returns the largest single-GPU memory in GB, or undefined when no
24
+ * NVIDIA GPU / driver is present.
25
+ */
26
+ async function detectGpuMemoryGb() {
27
+ try {
28
+ const result = await exec('nvidia-smi', ['--query-gpu=memory.total', '--format=csv,noheader,nounits'], { timeout: 3000 });
29
+ if (result.code !== 0) {
30
+ return undefined;
31
+ }
32
+ const valuesGb = result.stdout
33
+ .trim()
34
+ .split('\n')
35
+ .map(line => parseFloat(line.trim()) / 1024) // MiB -> GiB
36
+ .filter(value => !Number.isNaN(value));
37
+ return valuesGb.length > 0 ? Math.max(...valuesGb) : undefined;
38
+ }
39
+ catch (error) {
40
+ logger.debug('GPU detection skipped (nvidia-smi unavailable):', error);
41
+ return undefined;
42
+ }
43
+ }
44
+ /**
45
+ * Detect system capabilities, including an async GPU probe.
46
+ * Result is cached for the process lifetime; call this early in async
47
+ * setup flows so later sync consumers (choice rendering) can use
48
+ * getSystemCapabilities().
49
+ */
50
+ export async function detectSystemCapabilities() {
51
+ const totalMemoryGb = os.totalmem() / (1024 ** 3);
52
+ const platform = os.platform();
53
+ // macOS uses unified memory; probing for a discrete NVIDIA GPU is pointless
54
+ const gpuMemoryGb = platform === 'darwin' ? undefined : await detectGpuMemoryGb();
55
+ const usableMemoryGb = platform === 'darwin'
56
+ ? totalMemoryGb * MACOS_MEMORY_FRACTION
57
+ : (gpuMemoryGb ?? totalMemoryGb * FALLBACK_MEMORY_FRACTION);
58
+ cachedCapabilities = { totalMemoryGb, usableMemoryGb, gpuMemoryGb, platform };
59
+ return cachedCapabilities;
60
+ }
61
+ /**
62
+ * Get system capabilities synchronously.
63
+ * Returns the cached result of detectSystemCapabilities() when available,
64
+ * otherwise computes RAM-only heuristics without GPU probing.
65
+ */
66
+ export function getSystemCapabilities() {
67
+ if (!cachedCapabilities) {
68
+ const totalMemoryGb = os.totalmem() / (1024 ** 3);
69
+ const platform = os.platform();
70
+ cachedCapabilities = {
71
+ totalMemoryGb,
72
+ usableMemoryGb: platform === 'darwin'
73
+ ? totalMemoryGb * MACOS_MEMORY_FRACTION
74
+ : totalMemoryGb * FALLBACK_MEMORY_FRACTION,
75
+ platform
76
+ };
77
+ }
78
+ return cachedCapabilities;
79
+ }
80
+ /**
81
+ * Check whether a model with the given memory requirement fits the system
82
+ */
83
+ export function modelFitsSystem(minMemoryGb, capabilities = getSystemCapabilities()) {
84
+ return minMemoryGb <= capabilities.usableMemoryGb;
85
+ }
86
+ //# sourceMappingURL=hardware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hardware.js","sourceRoot":"","sources":["../../src/utils/hardware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AASrC,uDAAuD;AACvD,MAAM,qBAAqB,GAAG,IAAI,CAAC;AACnC,wEAAwE;AACxE,MAAM,wBAAwB,GAAG,GAAG,CAAC;AAErC,IAAI,kBAAkD,CAAC;AAEvD;;;;GAIG;AACH,KAAK,UAAU,iBAAiB;IAC9B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CACvB,YAAY,EACZ,CAAC,0BAA0B,EAAE,+BAA+B,CAAC,EAC7D,EAAE,OAAO,EAAE,IAAI,EAAE,CAClB,CAAC;QAEF,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM;aAC3B,IAAI,EAAE;aACN,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,aAAa;aACzD,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QAEzC,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE,KAAK,CAAC,CAAC;QACvE,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB;IAC5C,MAAM,aAAa,GAAG,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAClD,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;IAE/B,4EAA4E;IAC5E,MAAM,WAAW,GAAG,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,iBAAiB,EAAE,CAAC;IAElF,MAAM,cAAc,GAAG,QAAQ,KAAK,QAAQ;QAC1C,CAAC,CAAC,aAAa,GAAG,qBAAqB;QACvC,CAAC,CAAC,CAAC,WAAW,IAAI,aAAa,GAAG,wBAAwB,CAAC,CAAC;IAE9D,kBAAkB,GAAG,EAAE,aAAa,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;IAC9E,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACxB,MAAM,aAAa,GAAG,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;QAClD,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC;QAE/B,kBAAkB,GAAG;YACnB,aAAa;YACb,cAAc,EAAE,QAAQ,KAAK,QAAQ;gBACnC,CAAC,CAAC,aAAa,GAAG,qBAAqB;gBACvC,CAAC,CAAC,aAAa,GAAG,wBAAwB;YAC5C,QAAQ;SACT,CAAC;IACJ,CAAC;IAED,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,WAAmB,EACnB,eAAmC,qBAAqB,EAAE;IAE1D,OAAO,WAAW,IAAI,YAAY,CAAC,cAAc,CAAC;AACpD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare function resolveCodemieBinary(): Promise<string>;
2
+ export declare function resolveHookCommand(command: string, binary: string): string;
3
+ export declare function rewriteHooksCommandTree(node: unknown, binary: string): boolean;
4
+ //# sourceMappingURL=hook-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hook-command.d.ts","sourceRoot":"","sources":["../../src/utils/hook-command.ts"],"names":[],"mappings":"AAoBA,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,CAmB5D;AAGD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAI1E;AAID,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CA2B9E"}