codehere 0.3.0 → 0.5.0-alpha

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 (455) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +329 -65
  3. package/dist/application/agents/documentation-agent.d.ts +24 -0
  4. package/dist/application/agents/documentation-agent.d.ts.map +1 -0
  5. package/dist/application/agents/documentation-agent.js +399 -0
  6. package/dist/application/agents/documentation-agent.js.map +1 -0
  7. package/dist/application/agents/execution-agent.d.ts +11 -0
  8. package/dist/application/agents/execution-agent.d.ts.map +1 -1
  9. package/dist/application/agents/execution-agent.js +289 -80
  10. package/dist/application/agents/execution-agent.js.map +1 -1
  11. package/dist/application/agents/multi-agent-orchestrator.d.ts +4 -0
  12. package/dist/application/agents/multi-agent-orchestrator.d.ts.map +1 -1
  13. package/dist/application/agents/multi-agent-orchestrator.js +95 -2
  14. package/dist/application/agents/multi-agent-orchestrator.js.map +1 -1
  15. package/dist/application/agents/planning-agent.d.ts +3 -0
  16. package/dist/application/agents/planning-agent.d.ts.map +1 -1
  17. package/dist/application/agents/planning-agent.js +151 -71
  18. package/dist/application/agents/planning-agent.js.map +1 -1
  19. package/dist/application/agents/product-requirements-agent.d.ts +21 -0
  20. package/dist/application/agents/product-requirements-agent.d.ts.map +1 -0
  21. package/dist/application/agents/product-requirements-agent.js +247 -0
  22. package/dist/application/agents/product-requirements-agent.js.map +1 -0
  23. package/dist/application/agents/validation-agent.d.ts +5 -1
  24. package/dist/application/agents/validation-agent.d.ts.map +1 -1
  25. package/dist/application/agents/validation-agent.js +156 -21
  26. package/dist/application/agents/validation-agent.js.map +1 -1
  27. package/dist/application/reasoning/multi-model-planning-strategy.d.ts +21 -0
  28. package/dist/application/reasoning/multi-model-planning-strategy.d.ts.map +1 -0
  29. package/dist/application/reasoning/multi-model-planning-strategy.js +158 -0
  30. package/dist/application/reasoning/multi-model-planning-strategy.js.map +1 -0
  31. package/dist/application/reasoning/reasoning-config.d.ts +15 -0
  32. package/dist/application/reasoning/reasoning-config.d.ts.map +1 -0
  33. package/dist/application/reasoning/reasoning-config.js +50 -0
  34. package/dist/application/reasoning/reasoning-config.js.map +1 -0
  35. package/dist/application/reasoning/reasoning-orchestrator.d.ts +18 -0
  36. package/dist/application/reasoning/reasoning-orchestrator.d.ts.map +1 -0
  37. package/dist/application/reasoning/reasoning-orchestrator.js +170 -0
  38. package/dist/application/reasoning/reasoning-orchestrator.js.map +1 -0
  39. package/dist/application/reasoning/reasoning-strategy.interface.d.ts +24 -0
  40. package/dist/application/reasoning/reasoning-strategy.interface.d.ts.map +1 -0
  41. package/dist/application/reasoning/reasoning-strategy.interface.js +6 -0
  42. package/dist/application/reasoning/reasoning-strategy.interface.js.map +1 -0
  43. package/dist/application/reasoning/role-provider-resolver.d.ts +36 -0
  44. package/dist/application/reasoning/role-provider-resolver.d.ts.map +1 -0
  45. package/dist/application/reasoning/role-provider-resolver.js +74 -0
  46. package/dist/application/reasoning/role-provider-resolver.js.map +1 -0
  47. package/dist/application/reasoning/simple-planning-strategy.d.ts +22 -0
  48. package/dist/application/reasoning/simple-planning-strategy.d.ts.map +1 -0
  49. package/dist/application/reasoning/simple-planning-strategy.js +217 -0
  50. package/dist/application/reasoning/simple-planning-strategy.js.map +1 -0
  51. package/dist/application/reasoning/types.d.ts +65 -0
  52. package/dist/application/reasoning/types.d.ts.map +1 -0
  53. package/dist/application/reasoning/types.js +6 -0
  54. package/dist/application/reasoning/types.js.map +1 -0
  55. package/dist/application/reasoning/validator-strategy.d.ts +56 -0
  56. package/dist/application/reasoning/validator-strategy.d.ts.map +1 -0
  57. package/dist/application/reasoning/validator-strategy.js +103 -0
  58. package/dist/application/reasoning/validator-strategy.js.map +1 -0
  59. package/dist/application/services/dependency-container.d.ts +46 -2
  60. package/dist/application/services/dependency-container.d.ts.map +1 -1
  61. package/dist/application/services/dependency-container.js +198 -8
  62. package/dist/application/services/dependency-container.js.map +1 -1
  63. package/dist/application/services/intelligent-router.d.ts +19 -0
  64. package/dist/application/services/intelligent-router.d.ts.map +1 -1
  65. package/dist/application/services/intelligent-router.js +393 -91
  66. package/dist/application/services/intelligent-router.js.map +1 -1
  67. package/dist/application/use-cases/ask-question-use-case.d.ts +20 -0
  68. package/dist/application/use-cases/ask-question-use-case.d.ts.map +1 -1
  69. package/dist/application/use-cases/ask-question-use-case.js +129 -49
  70. package/dist/application/use-cases/ask-question-use-case.js.map +1 -1
  71. package/dist/application/use-cases/edit-file-use-case.d.ts.map +1 -1
  72. package/dist/application/use-cases/edit-file-use-case.js +16 -1
  73. package/dist/application/use-cases/edit-file-use-case.js.map +1 -1
  74. package/dist/application/use-cases/planning-use-case.d.ts +14 -1
  75. package/dist/application/use-cases/planning-use-case.d.ts.map +1 -1
  76. package/dist/application/use-cases/planning-use-case.js +109 -2
  77. package/dist/application/use-cases/planning-use-case.js.map +1 -1
  78. package/dist/domain/entities/documentation.d.ts +35 -0
  79. package/dist/domain/entities/documentation.d.ts.map +1 -0
  80. package/dist/domain/entities/documentation.js +6 -0
  81. package/dist/domain/entities/documentation.js.map +1 -0
  82. package/dist/domain/entities/memory.d.ts.map +1 -1
  83. package/dist/domain/entities/product-requirements.d.ts +50 -0
  84. package/dist/domain/entities/product-requirements.d.ts.map +1 -0
  85. package/dist/domain/entities/product-requirements.js +6 -0
  86. package/dist/domain/entities/product-requirements.js.map +1 -0
  87. package/dist/domain/entities/task.d.ts +152 -0
  88. package/dist/domain/entities/task.d.ts.map +1 -0
  89. package/dist/domain/entities/task.js +61 -0
  90. package/dist/domain/entities/task.js.map +1 -0
  91. package/dist/domain/errors/embeddings-not-found-error.d.ts +9 -0
  92. package/dist/domain/errors/embeddings-not-found-error.d.ts.map +1 -0
  93. package/dist/domain/errors/embeddings-not-found-error.js +13 -0
  94. package/dist/domain/errors/embeddings-not-found-error.js.map +1 -0
  95. package/dist/domain/interfaces/agent.interface.d.ts +15 -0
  96. package/dist/domain/interfaces/agent.interface.d.ts.map +1 -0
  97. package/dist/domain/interfaces/agent.interface.js +6 -0
  98. package/dist/domain/interfaces/agent.interface.js.map +1 -0
  99. package/dist/domain/interfaces/embedding-repository.interface.d.ts +5 -0
  100. package/dist/domain/interfaces/embedding-repository.interface.d.ts.map +1 -1
  101. package/dist/domain/services/environment-mode-manager.d.ts +12 -0
  102. package/dist/domain/services/environment-mode-manager.d.ts.map +1 -0
  103. package/dist/domain/services/environment-mode-manager.js +22 -0
  104. package/dist/domain/services/environment-mode-manager.js.map +1 -0
  105. package/dist/domain/services/query-intent-classifier.d.ts.map +1 -1
  106. package/dist/domain/services/query-intent-classifier.js +20 -1
  107. package/dist/domain/services/query-intent-classifier.js.map +1 -1
  108. package/dist/domain/services/risk-tier-detector.d.ts +17 -0
  109. package/dist/domain/services/risk-tier-detector.d.ts.map +1 -0
  110. package/dist/domain/services/risk-tier-detector.js +78 -0
  111. package/dist/domain/services/risk-tier-detector.js.map +1 -0
  112. package/dist/embed.d.ts.map +1 -1
  113. package/dist/embed.js +18 -8
  114. package/dist/embed.js.map +1 -1
  115. package/dist/formatter.d.ts.map +1 -1
  116. package/dist/formatter.js +10 -3
  117. package/dist/formatter.js.map +1 -1
  118. package/dist/index.js +494 -167
  119. package/dist/index.js.map +1 -1
  120. package/dist/infrastructure/ai/cohere-ai-service.d.ts.map +1 -1
  121. package/dist/infrastructure/ai/cohere-ai-service.js +19 -6
  122. package/dist/infrastructure/ai/cohere-ai-service.js.map +1 -1
  123. package/dist/infrastructure/ai/fake-ai-service.d.ts +22 -0
  124. package/dist/infrastructure/ai/fake-ai-service.d.ts.map +1 -0
  125. package/dist/infrastructure/ai/fake-ai-service.js +59 -0
  126. package/dist/infrastructure/ai/fake-ai-service.js.map +1 -0
  127. package/dist/infrastructure/ai/provider-ai-service.d.ts +59 -0
  128. package/dist/infrastructure/ai/provider-ai-service.d.ts.map +1 -0
  129. package/dist/infrastructure/ai/provider-ai-service.js +477 -0
  130. package/dist/infrastructure/ai/provider-ai-service.js.map +1 -0
  131. package/dist/infrastructure/cache/embedding-cache.d.ts +13 -1
  132. package/dist/infrastructure/cache/embedding-cache.d.ts.map +1 -1
  133. package/dist/infrastructure/cache/embedding-cache.js +80 -9
  134. package/dist/infrastructure/cache/embedding-cache.js.map +1 -1
  135. package/dist/infrastructure/cache/query-result-cache.d.ts +14 -55
  136. package/dist/infrastructure/cache/query-result-cache.d.ts.map +1 -1
  137. package/dist/infrastructure/cache/query-result-cache.js +40 -112
  138. package/dist/infrastructure/cache/query-result-cache.js.map +1 -1
  139. package/dist/infrastructure/cache/response-cache.d.ts +18 -0
  140. package/dist/infrastructure/cache/response-cache.d.ts.map +1 -0
  141. package/dist/infrastructure/cache/response-cache.js +48 -0
  142. package/dist/infrastructure/cache/response-cache.js.map +1 -0
  143. package/dist/infrastructure/cache/security-scan-cache.d.ts +8 -49
  144. package/dist/infrastructure/cache/security-scan-cache.d.ts.map +1 -1
  145. package/dist/infrastructure/cache/security-scan-cache.js +25 -102
  146. package/dist/infrastructure/cache/security-scan-cache.js.map +1 -1
  147. package/dist/infrastructure/completion/bash-completion.d.ts +2 -3
  148. package/dist/infrastructure/completion/bash-completion.d.ts.map +1 -1
  149. package/dist/infrastructure/completion/bash-completion.js +11 -87
  150. package/dist/infrastructure/completion/bash-completion.js.map +1 -1
  151. package/dist/infrastructure/completion/fish-completion.d.ts +2 -3
  152. package/dist/infrastructure/completion/fish-completion.d.ts.map +1 -1
  153. package/dist/infrastructure/completion/fish-completion.js +15 -58
  154. package/dist/infrastructure/completion/fish-completion.js.map +1 -1
  155. package/dist/infrastructure/completion/zsh-completion.d.ts +2 -3
  156. package/dist/infrastructure/completion/zsh-completion.d.ts.map +1 -1
  157. package/dist/infrastructure/completion/zsh-completion.js +18 -73
  158. package/dist/infrastructure/completion/zsh-completion.js.map +1 -1
  159. package/dist/infrastructure/config/config-manager.d.ts +10 -0
  160. package/dist/infrastructure/config/config-manager.d.ts.map +1 -1
  161. package/dist/infrastructure/config/config-manager.js +13 -2
  162. package/dist/infrastructure/config/config-manager.js.map +1 -1
  163. package/dist/infrastructure/context/conversation-context.d.ts +54 -0
  164. package/dist/infrastructure/context/conversation-context.d.ts.map +1 -0
  165. package/dist/infrastructure/context/conversation-context.js +129 -0
  166. package/dist/infrastructure/context/conversation-context.js.map +1 -0
  167. package/dist/infrastructure/context/session-manager.d.ts +42 -0
  168. package/dist/infrastructure/context/session-manager.d.ts.map +1 -0
  169. package/dist/infrastructure/context/session-manager.js +94 -0
  170. package/dist/infrastructure/context/session-manager.js.map +1 -0
  171. package/dist/infrastructure/cost/cost-tracker.d.ts +1 -0
  172. package/dist/infrastructure/cost/cost-tracker.d.ts.map +1 -1
  173. package/dist/infrastructure/cost/cost-tracker.js +12 -5
  174. package/dist/infrastructure/cost/cost-tracker.js.map +1 -1
  175. package/dist/infrastructure/governance/nist-ai-rmf.d.ts +6 -8
  176. package/dist/infrastructure/governance/nist-ai-rmf.d.ts.map +1 -1
  177. package/dist/infrastructure/governance/nist-ai-rmf.js +6 -8
  178. package/dist/infrastructure/governance/nist-ai-rmf.js.map +1 -1
  179. package/dist/infrastructure/governance/policy-as-code.d.ts +6 -8
  180. package/dist/infrastructure/governance/policy-as-code.d.ts.map +1 -1
  181. package/dist/infrastructure/governance/policy-as-code.js +6 -8
  182. package/dist/infrastructure/governance/policy-as-code.js.map +1 -1
  183. package/dist/infrastructure/governance/prompt-to-code-lineage.d.ts +7 -9
  184. package/dist/infrastructure/governance/prompt-to-code-lineage.d.ts.map +1 -1
  185. package/dist/infrastructure/governance/prompt-to-code-lineage.js +7 -9
  186. package/dist/infrastructure/governance/prompt-to-code-lineage.js.map +1 -1
  187. package/dist/infrastructure/protocols/a2a-metadata.js +1 -1
  188. package/dist/infrastructure/protocols/mcp-oauth.js +1 -1
  189. package/dist/infrastructure/providers/cohere-provider.d.ts +39 -0
  190. package/dist/infrastructure/providers/cohere-provider.d.ts.map +1 -0
  191. package/dist/infrastructure/providers/cohere-provider.js +444 -0
  192. package/dist/infrastructure/providers/cohere-provider.js.map +1 -0
  193. package/dist/infrastructure/providers/fake-provider.d.ts +43 -0
  194. package/dist/infrastructure/providers/fake-provider.d.ts.map +1 -0
  195. package/dist/infrastructure/providers/fake-provider.js +130 -0
  196. package/dist/infrastructure/providers/fake-provider.js.map +1 -0
  197. package/dist/infrastructure/providers/local-llm-provider.d.ts +49 -0
  198. package/dist/infrastructure/providers/local-llm-provider.d.ts.map +1 -0
  199. package/dist/infrastructure/providers/local-llm-provider.js +330 -0
  200. package/dist/infrastructure/providers/local-llm-provider.js.map +1 -0
  201. package/dist/infrastructure/providers/model-config.types.d.ts +70 -0
  202. package/dist/infrastructure/providers/model-config.types.d.ts.map +1 -0
  203. package/dist/infrastructure/providers/model-config.types.js +9 -0
  204. package/dist/infrastructure/providers/model-config.types.js.map +1 -0
  205. package/dist/infrastructure/providers/model-provider.interface.d.ts +113 -0
  206. package/dist/infrastructure/providers/model-provider.interface.d.ts.map +1 -0
  207. package/dist/infrastructure/providers/model-provider.interface.js +8 -0
  208. package/dist/infrastructure/providers/model-provider.interface.js.map +1 -0
  209. package/dist/infrastructure/providers/openai-provider.d.ts +38 -0
  210. package/dist/infrastructure/providers/openai-provider.d.ts.map +1 -0
  211. package/dist/infrastructure/providers/openai-provider.js +413 -0
  212. package/dist/infrastructure/providers/openai-provider.js.map +1 -0
  213. package/dist/infrastructure/providers/openrouter-provider.d.ts +42 -0
  214. package/dist/infrastructure/providers/openrouter-provider.d.ts.map +1 -0
  215. package/dist/infrastructure/providers/openrouter-provider.js +401 -0
  216. package/dist/infrastructure/providers/openrouter-provider.js.map +1 -0
  217. package/dist/infrastructure/providers/operation-provider-resolver.d.ts +48 -0
  218. package/dist/infrastructure/providers/operation-provider-resolver.d.ts.map +1 -0
  219. package/dist/infrastructure/providers/operation-provider-resolver.js +131 -0
  220. package/dist/infrastructure/providers/operation-provider-resolver.js.map +1 -0
  221. package/dist/infrastructure/providers/provider-config-loader.d.ts +37 -0
  222. package/dist/infrastructure/providers/provider-config-loader.d.ts.map +1 -0
  223. package/dist/infrastructure/providers/provider-config-loader.js +120 -0
  224. package/dist/infrastructure/providers/provider-config-loader.js.map +1 -0
  225. package/dist/infrastructure/providers/provider-registry.d.ts +53 -0
  226. package/dist/infrastructure/providers/provider-registry.d.ts.map +1 -0
  227. package/dist/infrastructure/providers/provider-registry.js +88 -0
  228. package/dist/infrastructure/providers/provider-registry.js.map +1 -0
  229. package/dist/infrastructure/security/input-validator.d.ts.map +1 -1
  230. package/dist/infrastructure/security/input-validator.js +19 -6
  231. package/dist/infrastructure/security/input-validator.js.map +1 -1
  232. package/dist/infrastructure/serialization/toon-serializer.d.ts +45 -0
  233. package/dist/infrastructure/serialization/toon-serializer.d.ts.map +1 -0
  234. package/dist/infrastructure/serialization/toon-serializer.js +119 -0
  235. package/dist/infrastructure/serialization/toon-serializer.js.map +1 -0
  236. package/dist/infrastructure/storage/embeddings-path.d.ts +18 -0
  237. package/dist/infrastructure/storage/embeddings-path.d.ts.map +1 -0
  238. package/dist/infrastructure/storage/embeddings-path.js +37 -0
  239. package/dist/infrastructure/storage/embeddings-path.js.map +1 -0
  240. package/dist/infrastructure/storage/plan-repository.d.ts +2 -0
  241. package/dist/infrastructure/storage/plan-repository.d.ts.map +1 -1
  242. package/dist/infrastructure/storage/plan-repository.js +36 -73
  243. package/dist/infrastructure/storage/plan-repository.js.map +1 -1
  244. package/dist/infrastructure/storage/sqlite-embedding-repository.d.ts +10 -1
  245. package/dist/infrastructure/storage/sqlite-embedding-repository.d.ts.map +1 -1
  246. package/dist/infrastructure/storage/sqlite-embedding-repository.js +37 -3
  247. package/dist/infrastructure/storage/sqlite-embedding-repository.js.map +1 -1
  248. package/dist/infrastructure/storage/task-helpers.d.ts +69 -0
  249. package/dist/infrastructure/storage/task-helpers.d.ts.map +1 -0
  250. package/dist/infrastructure/storage/task-helpers.js +197 -0
  251. package/dist/infrastructure/storage/task-helpers.js.map +1 -0
  252. package/dist/infrastructure/storage/task-repository.d.ts +68 -0
  253. package/dist/infrastructure/storage/task-repository.d.ts.map +1 -0
  254. package/dist/infrastructure/storage/task-repository.js +216 -0
  255. package/dist/infrastructure/storage/task-repository.js.map +1 -0
  256. package/dist/infrastructure/telemetry/telemetry-service.d.ts +74 -0
  257. package/dist/infrastructure/telemetry/telemetry-service.d.ts.map +1 -0
  258. package/dist/infrastructure/telemetry/telemetry-service.js +167 -0
  259. package/dist/infrastructure/telemetry/telemetry-service.js.map +1 -0
  260. package/dist/infrastructure/ux/bi-directional-learning.d.ts +22 -0
  261. package/dist/infrastructure/ux/bi-directional-learning.d.ts.map +1 -1
  262. package/dist/infrastructure/ux/bi-directional-learning.js +144 -7
  263. package/dist/infrastructure/ux/bi-directional-learning.js.map +1 -1
  264. package/dist/infrastructure/ux/capability-boundaries.d.ts +22 -0
  265. package/dist/infrastructure/ux/capability-boundaries.d.ts.map +1 -0
  266. package/dist/infrastructure/ux/capability-boundaries.js +42 -0
  267. package/dist/infrastructure/ux/capability-boundaries.js.map +1 -0
  268. package/dist/infrastructure/ux/comprehensive-formatter.d.ts +21 -0
  269. package/dist/infrastructure/ux/comprehensive-formatter.d.ts.map +1 -0
  270. package/dist/infrastructure/ux/comprehensive-formatter.js +117 -0
  271. package/dist/infrastructure/ux/comprehensive-formatter.js.map +1 -0
  272. package/dist/infrastructure/ux/contextual-feature-discovery.d.ts +5 -18
  273. package/dist/infrastructure/ux/contextual-feature-discovery.d.ts.map +1 -1
  274. package/dist/infrastructure/ux/contextual-feature-discovery.js +5 -139
  275. package/dist/infrastructure/ux/contextual-feature-discovery.js.map +1 -1
  276. package/dist/infrastructure/ux/feature-discovery.d.ts +3 -33
  277. package/dist/infrastructure/ux/feature-discovery.d.ts.map +1 -1
  278. package/dist/infrastructure/ux/feature-discovery.js +5 -181
  279. package/dist/infrastructure/ux/feature-discovery.js.map +1 -1
  280. package/dist/infrastructure/ux/feedback-prompt.d.ts +26 -0
  281. package/dist/infrastructure/ux/feedback-prompt.d.ts.map +1 -0
  282. package/dist/infrastructure/ux/feedback-prompt.js +45 -0
  283. package/dist/infrastructure/ux/feedback-prompt.js.map +1 -0
  284. package/dist/infrastructure/ux/hitl-review-portal.d.ts.map +1 -1
  285. package/dist/infrastructure/ux/hitl-review-portal.js +4 -1
  286. package/dist/infrastructure/ux/hitl-review-portal.js.map +1 -1
  287. package/dist/infrastructure/ux/hitl-validation.d.ts +35 -0
  288. package/dist/infrastructure/ux/hitl-validation.d.ts.map +1 -1
  289. package/dist/infrastructure/ux/hitl-validation.js +86 -0
  290. package/dist/infrastructure/ux/hitl-validation.js.map +1 -1
  291. package/dist/infrastructure/ux/progress-indicator.d.ts +5 -6
  292. package/dist/infrastructure/ux/progress-indicator.d.ts.map +1 -1
  293. package/dist/infrastructure/ux/progress-indicator.js +36 -41
  294. package/dist/infrastructure/ux/progress-indicator.js.map +1 -1
  295. package/dist/infrastructure/ux/proportional-friction.d.ts +73 -0
  296. package/dist/infrastructure/ux/proportional-friction.d.ts.map +1 -0
  297. package/dist/infrastructure/ux/proportional-friction.js +200 -0
  298. package/dist/infrastructure/ux/proportional-friction.js.map +1 -0
  299. package/dist/infrastructure/ux/review-checkpoint.d.ts +3 -1
  300. package/dist/infrastructure/ux/review-checkpoint.d.ts.map +1 -1
  301. package/dist/infrastructure/ux/review-checkpoint.js +33 -80
  302. package/dist/infrastructure/ux/review-checkpoint.js.map +1 -1
  303. package/dist/infrastructure/ux/staged-feature-intro.d.ts +14 -39
  304. package/dist/infrastructure/ux/staged-feature-intro.d.ts.map +1 -1
  305. package/dist/infrastructure/ux/staged-feature-intro.js +12 -132
  306. package/dist/infrastructure/ux/staged-feature-intro.js.map +1 -1
  307. package/dist/infrastructure/ux/syntax-highlighter.d.ts +1 -2
  308. package/dist/infrastructure/ux/syntax-highlighter.d.ts.map +1 -1
  309. package/dist/infrastructure/ux/syntax-highlighter.js +67 -148
  310. package/dist/infrastructure/ux/syntax-highlighter.js.map +1 -1
  311. package/dist/infrastructure/validation/agent-feedback.d.ts +51 -0
  312. package/dist/infrastructure/validation/agent-feedback.d.ts.map +1 -0
  313. package/dist/infrastructure/validation/agent-feedback.js +55 -0
  314. package/dist/infrastructure/validation/agent-feedback.js.map +1 -0
  315. package/dist/infrastructure/validation/agent-validation-helper.d.ts +75 -0
  316. package/dist/infrastructure/validation/agent-validation-helper.d.ts.map +1 -0
  317. package/dist/infrastructure/validation/agent-validation-helper.js +137 -0
  318. package/dist/infrastructure/validation/agent-validation-helper.js.map +1 -0
  319. package/dist/infrastructure/validation/feedback-stats.d.ts +99 -0
  320. package/dist/infrastructure/validation/feedback-stats.d.ts.map +1 -0
  321. package/dist/infrastructure/validation/feedback-stats.js +173 -0
  322. package/dist/infrastructure/validation/feedback-stats.js.map +1 -0
  323. package/dist/infrastructure/validation/review-handler.d.ts +26 -0
  324. package/dist/infrastructure/validation/review-handler.d.ts.map +1 -0
  325. package/dist/infrastructure/validation/review-handler.js +40 -0
  326. package/dist/infrastructure/validation/review-handler.js.map +1 -0
  327. package/dist/infrastructure/validation/summary-aggregator.d.ts +45 -0
  328. package/dist/infrastructure/validation/summary-aggregator.d.ts.map +1 -0
  329. package/dist/infrastructure/validation/summary-aggregator.js +70 -0
  330. package/dist/infrastructure/validation/summary-aggregator.js.map +1 -0
  331. package/dist/infrastructure/validation/summary-extractor.d.ts +24 -0
  332. package/dist/infrastructure/validation/summary-extractor.d.ts.map +1 -0
  333. package/dist/infrastructure/validation/summary-extractor.js +45 -0
  334. package/dist/infrastructure/validation/summary-extractor.js.map +1 -0
  335. package/dist/infrastructure/validation/trace-summary.d.ts +45 -0
  336. package/dist/infrastructure/validation/trace-summary.d.ts.map +1 -0
  337. package/dist/infrastructure/validation/trace-summary.js +52 -0
  338. package/dist/infrastructure/validation/trace-summary.js.map +1 -0
  339. package/dist/infrastructure/validation/trust-config.d.ts +27 -0
  340. package/dist/infrastructure/validation/trust-config.d.ts.map +1 -0
  341. package/dist/infrastructure/validation/trust-config.js +113 -0
  342. package/dist/infrastructure/validation/trust-config.js.map +1 -0
  343. package/dist/infrastructure/xai/attention-visualizer.d.ts +6 -8
  344. package/dist/infrastructure/xai/attention-visualizer.d.ts.map +1 -1
  345. package/dist/infrastructure/xai/attention-visualizer.js +6 -8
  346. package/dist/infrastructure/xai/attention-visualizer.js.map +1 -1
  347. package/dist/infrastructure/xai/cot-visualizer.d.ts +6 -9
  348. package/dist/infrastructure/xai/cot-visualizer.d.ts.map +1 -1
  349. package/dist/infrastructure/xai/cot-visualizer.js +6 -9
  350. package/dist/infrastructure/xai/cot-visualizer.js.map +1 -1
  351. package/dist/infrastructure/xai/decision-tree-log.d.ts +6 -10
  352. package/dist/infrastructure/xai/decision-tree-log.d.ts.map +1 -1
  353. package/dist/infrastructure/xai/decision-tree-log.js +6 -10
  354. package/dist/infrastructure/xai/decision-tree-log.js.map +1 -1
  355. package/dist/infrastructure/xai/interactive-xai.d.ts +6 -8
  356. package/dist/infrastructure/xai/interactive-xai.d.ts.map +1 -1
  357. package/dist/infrastructure/xai/interactive-xai.js +6 -8
  358. package/dist/infrastructure/xai/interactive-xai.js.map +1 -1
  359. package/dist/infrastructure/xai/uncertainty-quantifier.d.ts +6 -9
  360. package/dist/infrastructure/xai/uncertainty-quantifier.d.ts.map +1 -1
  361. package/dist/infrastructure/xai/uncertainty-quantifier.js +6 -9
  362. package/dist/infrastructure/xai/uncertainty-quantifier.js.map +1 -1
  363. package/dist/monitoring.d.ts +1 -1
  364. package/dist/monitoring.d.ts.map +1 -1
  365. package/dist/monitoring.js +12 -9
  366. package/dist/monitoring.js.map +1 -1
  367. package/dist/parallel-processor.d.ts.map +1 -1
  368. package/dist/parallel-processor.js +124 -45
  369. package/dist/parallel-processor.js.map +1 -1
  370. package/dist/presentation/cli/commands/ask-command.d.ts +2 -0
  371. package/dist/presentation/cli/commands/ask-command.d.ts.map +1 -1
  372. package/dist/presentation/cli/commands/ask-command.js +356 -87
  373. package/dist/presentation/cli/commands/ask-command.js.map +1 -1
  374. package/dist/presentation/cli/commands/config-command.d.ts.map +1 -1
  375. package/dist/presentation/cli/commands/config-command.js +22 -8
  376. package/dist/presentation/cli/commands/config-command.js.map +1 -1
  377. package/dist/presentation/cli/commands/decision-command.js +23 -6
  378. package/dist/presentation/cli/commands/decision-command.js.map +1 -1
  379. package/dist/presentation/cli/commands/docs-command.d.ts +14 -0
  380. package/dist/presentation/cli/commands/docs-command.d.ts.map +1 -0
  381. package/dist/presentation/cli/commands/docs-command.js +25 -0
  382. package/dist/presentation/cli/commands/docs-command.js.map +1 -0
  383. package/dist/presentation/cli/commands/fix-command.d.ts +10 -0
  384. package/dist/presentation/cli/commands/fix-command.d.ts.map +1 -0
  385. package/dist/presentation/cli/commands/fix-command.js +94 -0
  386. package/dist/presentation/cli/commands/fix-command.js.map +1 -0
  387. package/dist/presentation/cli/commands/help-command.d.ts.map +1 -1
  388. package/dist/presentation/cli/commands/help-command.js +23 -1
  389. package/dist/presentation/cli/commands/help-command.js.map +1 -1
  390. package/dist/presentation/cli/commands/memory-command.d.ts +17 -0
  391. package/dist/presentation/cli/commands/memory-command.d.ts.map +1 -0
  392. package/dist/presentation/cli/commands/memory-command.js +252 -0
  393. package/dist/presentation/cli/commands/memory-command.js.map +1 -0
  394. package/dist/presentation/cli/commands/models-command.d.ts +13 -0
  395. package/dist/presentation/cli/commands/models-command.d.ts.map +1 -0
  396. package/dist/presentation/cli/commands/models-command.js +194 -0
  397. package/dist/presentation/cli/commands/models-command.js.map +1 -0
  398. package/dist/presentation/cli/commands/orchestrate-command.d.ts +2 -0
  399. package/dist/presentation/cli/commands/orchestrate-command.d.ts.map +1 -1
  400. package/dist/presentation/cli/commands/orchestrate-command.js +182 -14
  401. package/dist/presentation/cli/commands/orchestrate-command.js.map +1 -1
  402. package/dist/presentation/cli/commands/plan-command.d.ts +2 -0
  403. package/dist/presentation/cli/commands/plan-command.d.ts.map +1 -1
  404. package/dist/presentation/cli/commands/plan-command.js +212 -26
  405. package/dist/presentation/cli/commands/plan-command.js.map +1 -1
  406. package/dist/presentation/cli/commands/product-command.d.ts +14 -0
  407. package/dist/presentation/cli/commands/product-command.d.ts.map +1 -0
  408. package/dist/presentation/cli/commands/product-command.js +22 -0
  409. package/dist/presentation/cli/commands/product-command.js.map +1 -0
  410. package/dist/presentation/cli/commands/react-command.d.ts.map +1 -1
  411. package/dist/presentation/cli/commands/react-command.js +8 -2
  412. package/dist/presentation/cli/commands/react-command.js.map +1 -1
  413. package/dist/presentation/cli/commands/review-command.d.ts +14 -0
  414. package/dist/presentation/cli/commands/review-command.d.ts.map +1 -0
  415. package/dist/presentation/cli/commands/review-command.js +173 -0
  416. package/dist/presentation/cli/commands/review-command.js.map +1 -0
  417. package/dist/presentation/cli/commands/run-command.d.ts +13 -0
  418. package/dist/presentation/cli/commands/run-command.d.ts.map +1 -0
  419. package/dist/presentation/cli/commands/run-command.js +188 -0
  420. package/dist/presentation/cli/commands/run-command.js.map +1 -0
  421. package/dist/presentation/cli/commands/setup-command.d.ts.map +1 -1
  422. package/dist/presentation/cli/commands/setup-command.js +15 -0
  423. package/dist/presentation/cli/commands/setup-command.js.map +1 -1
  424. package/dist/presentation/cli/commands/smart-command.d.ts +3 -1
  425. package/dist/presentation/cli/commands/smart-command.d.ts.map +1 -1
  426. package/dist/presentation/cli/commands/smart-command.js +165 -11
  427. package/dist/presentation/cli/commands/smart-command.js.map +1 -1
  428. package/dist/presentation/cli/commands/status-command.d.ts +14 -0
  429. package/dist/presentation/cli/commands/status-command.d.ts.map +1 -0
  430. package/dist/presentation/cli/commands/status-command.js +171 -0
  431. package/dist/presentation/cli/commands/status-command.js.map +1 -0
  432. package/dist/presentation/cli/commands/suggest-command.d.ts +11 -0
  433. package/dist/presentation/cli/commands/suggest-command.d.ts.map +1 -0
  434. package/dist/presentation/cli/commands/suggest-command.js +138 -0
  435. package/dist/presentation/cli/commands/suggest-command.js.map +1 -0
  436. package/dist/presentation/cli/error-display.d.ts.map +1 -1
  437. package/dist/presentation/cli/error-display.js +118 -17
  438. package/dist/presentation/cli/error-display.js.map +1 -1
  439. package/dist/search.d.ts.map +1 -1
  440. package/dist/search.js +6 -1
  441. package/dist/search.js.map +1 -1
  442. package/dist/session.d.ts +1 -0
  443. package/dist/session.d.ts.map +1 -1
  444. package/dist/session.js +69 -4
  445. package/dist/session.js.map +1 -1
  446. package/dist/tools/bash.d.ts.map +1 -1
  447. package/dist/tools/bash.js +3 -0
  448. package/dist/tools/bash.js.map +1 -1
  449. package/dist/tools/git-tool.js +7 -7
  450. package/dist/tools/git-tool.js.map +1 -1
  451. package/dist/ui.d.ts +11 -0
  452. package/dist/ui.d.ts.map +1 -1
  453. package/dist/ui.js +62 -6
  454. package/dist/ui.js.map +1 -1
  455. package/package.json +22 -4
@@ -0,0 +1,252 @@
1
+ /**
2
+ * CLI Command: Memory
3
+ * View and manage Codehere's operation history (v0.5: operation history only, not full long-term memory)
4
+ *
5
+ * Focus: Delightful UX, XAI, Responsible AI
6
+ */
7
+ import { container } from '../../../application/services/dependency-container.js';
8
+ import { colors, formatNumber, newline, separator, createBanner, warning, info, } from '../../../ui.js';
9
+ import { findCodebaseRoot } from '../../../domain/services/codebase-detector.js';
10
+ import { executionTracer } from '../../../infrastructure/observability/execution-tracer.js';
11
+ import { displayError } from '../error-display.js';
12
+ export async function executeMemoryCommand(options = {}) {
13
+ const codebaseInfo = findCodebaseRoot(process.cwd());
14
+ const codebaseId = codebaseInfo?.rootPath || process.cwd();
15
+ const runId = executionTracer.startRun('memory', {
16
+ codebaseId,
17
+ });
18
+ try {
19
+ const memoryRepository = container.memoryRepository;
20
+ // Get all recent memories (we'll filter by codebase if needed)
21
+ // Note: Some memories might not have codebaseId in metadata (older format)
22
+ const allRecent = await memoryRepository.findRecent(1000);
23
+ // Filter by codebase if codebaseId is available
24
+ // Also include memories without codebaseId (for backward compatibility)
25
+ let memories = allRecent.filter(m => {
26
+ const metadata = typeof m.metadata === 'string' ? JSON.parse(m.metadata) : (m.metadata || {});
27
+ return !metadata.codebaseId || metadata.codebaseId === codebaseId || metadata.codebasePath === codebaseId;
28
+ });
29
+ // Filter by type if specified
30
+ if (options.type) {
31
+ memories = memories.filter(m => m.type === options.type);
32
+ }
33
+ // Handle clear action
34
+ if (options.clear) {
35
+ if (memories.length === 0) {
36
+ console.log(info('No memories found to clear.'));
37
+ newline();
38
+ executionTracer.endRun();
39
+ return;
40
+ }
41
+ // Show confirmation
42
+ console.log(warning(`⚠️ This will clear ${memories.length} memory item(s) for this codebase.`));
43
+ console.log(colors.dim('This action cannot be undone.'));
44
+ newline();
45
+ console.log(colors.bold('To confirm, run:'));
46
+ console.log(colors.cyan(` codehere memory --clear --confirm`));
47
+ newline();
48
+ executionTracer.endRun();
49
+ return;
50
+ }
51
+ // Handle stats
52
+ if (options.stats || (!options.list && !options.search)) {
53
+ if (options.json) {
54
+ // P0 FIX: JSON output for stats
55
+ const { container } = await import('../../../application/services/dependency-container.js');
56
+ const provider = container.aiService.provider?.name || container.aiService.provider?.id || 'unknown';
57
+ const output = {
58
+ provider,
59
+ stats: {
60
+ total: memories.length,
61
+ byType: memories.reduce((acc, m) => {
62
+ acc[m.type] = (acc[m.type] || 0) + 1;
63
+ return acc;
64
+ }, {}),
65
+ },
66
+ };
67
+ console.log(JSON.stringify(output, null, 2));
68
+ }
69
+ else {
70
+ showMemoryStats(memories, codebaseId);
71
+ }
72
+ executionTracer.endRun();
73
+ return;
74
+ }
75
+ // Handle search
76
+ if (options.search) {
77
+ const searchTerm = options.search.toLowerCase();
78
+ const filtered = memories.filter(m => m.description.toLowerCase().includes(searchTerm) ||
79
+ m.type.toLowerCase().includes(searchTerm));
80
+ if (filtered.length === 0) {
81
+ if (options.json) {
82
+ // P0 FIX: Return empty JSON array for JSON mode
83
+ const { container } = await import('../../../application/services/dependency-container.js');
84
+ const provider = container.aiService.provider?.name || container.aiService.provider?.id || 'unknown';
85
+ console.log(JSON.stringify({ provider, memories: [] }, null, 2));
86
+ }
87
+ else {
88
+ console.log(info(`No memories found matching "${options.search}"`));
89
+ newline();
90
+ }
91
+ executionTracer.endRun();
92
+ return;
93
+ }
94
+ await showMemoryList(filtered, options.limit || 20, options.json);
95
+ executionTracer.endRun();
96
+ return;
97
+ }
98
+ // Handle list (default)
99
+ if (options.list || (!options.stats && !options.search)) {
100
+ const limit = options.limit || 20;
101
+ await showMemoryList(memories, limit, options.json);
102
+ executionTracer.endRun();
103
+ return;
104
+ }
105
+ executionTracer.endRun();
106
+ }
107
+ catch (err) {
108
+ displayError(err, { operation: 'memory' });
109
+ executionTracer.endRun();
110
+ process.exit(1);
111
+ }
112
+ }
113
+ function showMemoryStats(memories, codebaseId) {
114
+ console.log(createBanner('Memory Statistics', 'What Codehere remembers'));
115
+ newline();
116
+ if (memories.length === 0) {
117
+ console.log(info('No memories found for this codebase.'));
118
+ console.log(colors.dim('Memories are created as you use Codehere.'));
119
+ newline();
120
+ console.log(colors.bold('Try:'));
121
+ console.log(colors.cyan(' codehere "explain this function"'));
122
+ console.log(colors.cyan(' codehere plan "refactor authentication"'));
123
+ newline();
124
+ return;
125
+ }
126
+ // Group by type
127
+ const byType = {};
128
+ const byImportance = {
129
+ high: 0,
130
+ medium: 0,
131
+ low: 0,
132
+ };
133
+ let totalImportance = 0;
134
+ const now = Date.now();
135
+ const oneDayAgo = now - 24 * 60 * 60 * 1000;
136
+ const oneWeekAgo = now - 7 * 24 * 60 * 60 * 1000;
137
+ let recentCount = 0;
138
+ let weekCount = 0;
139
+ memories.forEach(m => {
140
+ byType[m.type] = (byType[m.type] || 0) + 1;
141
+ if (m.importance >= 7)
142
+ byImportance.high++;
143
+ else if (m.importance >= 4)
144
+ byImportance.medium++;
145
+ else
146
+ byImportance.low++;
147
+ totalImportance += m.importance;
148
+ const timestamp = m.timestamp instanceof Date ? m.timestamp.getTime() : m.timestamp;
149
+ if (timestamp > oneDayAgo)
150
+ recentCount++;
151
+ if (timestamp > oneWeekAgo)
152
+ weekCount++;
153
+ });
154
+ const avgImportance = totalImportance / memories.length;
155
+ console.log(colors.bold('Overview:'));
156
+ console.log(` Total Memories: ${colors.cyan(formatNumber(memories.length))}`);
157
+ console.log(` Average Importance: ${colors.cyan(avgImportance.toFixed(1))}/10`);
158
+ console.log(` Recent (24h): ${colors.cyan(formatNumber(recentCount))}`);
159
+ console.log(` This Week: ${colors.cyan(formatNumber(weekCount))}`);
160
+ newline();
161
+ console.log(colors.bold('By Type:'));
162
+ Object.entries(byType)
163
+ .sort((a, b) => b[1] - a[1])
164
+ .forEach(([type, count]) => {
165
+ const percentage = ((count / memories.length) * 100).toFixed(1);
166
+ console.log(` ${colors.cyan(type.padEnd(12))} ${formatNumber(count).padStart(6)} (${percentage}%)`);
167
+ });
168
+ newline();
169
+ console.log(colors.bold('By Importance:'));
170
+ console.log(` High (7-10): ${colors.green(formatNumber(byImportance.high))}`);
171
+ console.log(` Medium (4-6): ${colors.yellow(formatNumber(byImportance.medium))}`);
172
+ console.log(` Low (1-3): ${colors.dim(formatNumber(byImportance.low))}`);
173
+ newline();
174
+ // Show Responsible AI indicator
175
+ console.log(separator('─', 60));
176
+ console.log(colors.dim('🔒 Privacy: All memories stored locally in SQLite'));
177
+ console.log(colors.dim('📊 Data: No external transmission, your codebase stays private'));
178
+ newline();
179
+ }
180
+ async function showMemoryList(memories, limit, json) {
181
+ if (json) {
182
+ // P0 FIX: Ensure pure JSON output with provider field
183
+ const { container } = await import('../../../application/services/dependency-container.js');
184
+ const provider = container.aiService.provider?.name || container.aiService.provider?.id || 'unknown';
185
+ const output = {
186
+ provider,
187
+ memories: memories.slice(0, limit).map(m => ({
188
+ id: m.id,
189
+ type: m.type,
190
+ description: m.description,
191
+ importance: m.importance,
192
+ timestamp: m.timestamp instanceof Date ? m.timestamp.toISOString() : new Date(m.timestamp).toISOString(),
193
+ lastAccessed: m.lastAccessed instanceof Date ? m.lastAccessed.toISOString() : new Date(m.lastAccessed).toISOString(),
194
+ })),
195
+ };
196
+ console.log(JSON.stringify(output, null, 2));
197
+ return;
198
+ }
199
+ console.log(createBanner('Memory List', 'What Codehere remembers'));
200
+ newline();
201
+ if (memories.length === 0) {
202
+ console.log(info('No memories found.'));
203
+ console.log(colors.dim('Memories are created as you use Codehere.'));
204
+ newline();
205
+ return;
206
+ }
207
+ const displayMemories = memories.slice(0, limit);
208
+ console.log(colors.bold(`Showing ${displayMemories.length} of ${memories.length} memories:`));
209
+ newline();
210
+ displayMemories.forEach((memory, index) => {
211
+ const timestamp = memory.timestamp instanceof Date ? memory.timestamp : new Date(memory.timestamp);
212
+ const timeAgo = getTimeAgo(timestamp);
213
+ const importanceColor = memory.importance >= 7 ? colors.green : memory.importance >= 4 ? colors.yellow : colors.dim;
214
+ console.log(separator('─', 60));
215
+ console.log(`${colors.bold(`[${index + 1}]`)} ${colors.cyan(memory.type.toUpperCase())} ${importanceColor(`(importance: ${memory.importance}/10)`)}`);
216
+ console.log(colors.dim(` ${timeAgo}`));
217
+ console.log(` ${memory.description}`);
218
+ if (memory.metadata) {
219
+ const metadata = typeof memory.metadata === 'string' ? JSON.parse(memory.metadata) : memory.metadata;
220
+ if (metadata.codebasePath) {
221
+ console.log(colors.dim(` Codebase: ${metadata.codebasePath}`));
222
+ }
223
+ }
224
+ });
225
+ if (memories.length > limit) {
226
+ newline();
227
+ console.log(colors.dim(`... and ${memories.length - limit} more memories`));
228
+ console.log(colors.dim(`Use --limit <number> to see more`));
229
+ }
230
+ newline();
231
+ console.log(separator('─', 60));
232
+ console.log(colors.dim('💡 Tip: Use "codehere memory --search <term>" to search memories'));
233
+ console.log(colors.dim('🔒 Privacy: All memories stored locally, never transmitted'));
234
+ newline();
235
+ }
236
+ function getTimeAgo(date) {
237
+ const now = Date.now();
238
+ const then = date.getTime();
239
+ const diff = now - then;
240
+ const seconds = Math.floor(diff / 1000);
241
+ const minutes = Math.floor(seconds / 60);
242
+ const hours = Math.floor(minutes / 60);
243
+ const days = Math.floor(hours / 24);
244
+ if (days > 0)
245
+ return `${days} day${days > 1 ? 's' : ''} ago`;
246
+ if (hours > 0)
247
+ return `${hours} hour${hours > 1 ? 's' : ''} ago`;
248
+ if (minutes > 0)
249
+ return `${minutes} minute${minutes > 1 ? 's' : ''} ago`;
250
+ return 'just now';
251
+ }
252
+ //# sourceMappingURL=memory-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memory-command.js","sourceRoot":"","sources":["../../../../src/presentation/cli/commands/memory-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Models Command
3
+ * List, search, and get info about available AI models
4
+ */
5
+ export interface ModelsCommandOptions {
6
+ list?: boolean;
7
+ search?: string;
8
+ info?: string;
9
+ provider?: string;
10
+ json?: boolean;
11
+ }
12
+ export declare function executeModelsCommand(options: ModelsCommandOptions): Promise<void>;
13
+ //# sourceMappingURL=models-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models-command.d.ts","sourceRoot":"","sources":["../../../../src/presentation/cli/commands/models-command.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA2BvF"}
@@ -0,0 +1,194 @@
1
+ /**
2
+ * Models Command
3
+ * List, search, and get info about available AI models
4
+ */
5
+ import { DependencyContainer } from '../../../application/services/dependency-container.js';
6
+ import { createBanner, newline, isMinimalStyle } from '../../../ui.js';
7
+ import chalk from 'chalk';
8
+ export async function executeModelsCommand(options) {
9
+ const container = new DependencyContainer();
10
+ const registry = container.providerRegistry;
11
+ // Show header
12
+ if (!isMinimalStyle()) {
13
+ console.log(createBanner('AI Models', 'Available models across all providers'));
14
+ newline();
15
+ }
16
+ // List all models
17
+ if (options.list || (!options.search && !options.info)) {
18
+ await listModels(registry, options.provider, options.json);
19
+ return;
20
+ }
21
+ // Search models
22
+ if (options.search) {
23
+ await searchModels(registry, options.search, options.provider, options.json);
24
+ return;
25
+ }
26
+ // Get model info
27
+ if (options.info) {
28
+ await getModelInfo(registry, options.info, options.provider, options.json);
29
+ return;
30
+ }
31
+ }
32
+ async function listModels(registry, providerFilter, jsonOutput) {
33
+ const allModels = [];
34
+ // Get models from all providers
35
+ const providers = providerFilter
36
+ ? [registry.get(providerFilter)].filter(Boolean)
37
+ : Array.from(registry.getAll().values());
38
+ for (const provider of providers) {
39
+ try {
40
+ const models = await provider.getModels();
41
+ for (const model of models) {
42
+ const capabilities = [];
43
+ if (model.capabilities.chat)
44
+ capabilities.push('chat');
45
+ if (model.capabilities.streaming)
46
+ capabilities.push('streaming');
47
+ if (model.capabilities.embedding)
48
+ capabilities.push('embedding');
49
+ if (model.capabilities.rerank)
50
+ capabilities.push('rerank');
51
+ if (model.capabilities.toolCalling)
52
+ capabilities.push('tools');
53
+ allModels.push({
54
+ id: model.id,
55
+ name: model.name,
56
+ provider: provider.id,
57
+ contextWindow: model.contextWindow,
58
+ capabilities,
59
+ });
60
+ }
61
+ }
62
+ catch (error) {
63
+ // Skip providers that fail
64
+ if (!jsonOutput) {
65
+ console.warn(chalk.yellow(`⚠️ Failed to get models from ${provider.id}: ${error instanceof Error ? error.message : String(error)}`));
66
+ }
67
+ }
68
+ }
69
+ if (jsonOutput) {
70
+ console.log(JSON.stringify(allModels, null, 2));
71
+ return;
72
+ }
73
+ // Group by provider
74
+ const byProvider = new Map();
75
+ for (const model of allModels) {
76
+ if (!byProvider.has(model.provider)) {
77
+ byProvider.set(model.provider, []);
78
+ }
79
+ byProvider.get(model.provider).push(model);
80
+ }
81
+ // Display
82
+ for (const [providerId, models] of byProvider.entries()) {
83
+ const provider = registry.get(providerId);
84
+ const providerName = provider?.name || providerId;
85
+ console.log(chalk.bold(`\n${providerName} (${models.length} models):`));
86
+ for (const model of models.slice(0, 20)) { // Limit to 20 per provider
87
+ const caps = model.capabilities.join(', ');
88
+ console.log(` ${chalk.cyan(model.id)} - ${model.name}`);
89
+ console.log(` Context: ${model.contextWindow.toLocaleString()} tokens | Capabilities: ${caps}`);
90
+ }
91
+ if (models.length > 20) {
92
+ console.log(chalk.dim(` ... and ${models.length - 20} more models`));
93
+ }
94
+ }
95
+ console.log(chalk.dim(`\nTotal: ${allModels.length} models from ${byProvider.size} providers`));
96
+ console.log(chalk.dim('Use "codehere models search <query>" to search, or "codehere models info <model-id>" for details'));
97
+ }
98
+ async function searchModels(registry, query, providerFilter, jsonOutput) {
99
+ const allModels = [];
100
+ const providers = providerFilter
101
+ ? [registry.get(providerFilter)].filter(Boolean)
102
+ : Array.from(registry.getAll().values());
103
+ for (const provider of providers) {
104
+ try {
105
+ const models = await provider.getModels();
106
+ for (const model of models) {
107
+ const searchText = `${model.id} ${model.name}`.toLowerCase();
108
+ if (searchText.includes(query.toLowerCase())) {
109
+ const capabilities = [];
110
+ if (model.capabilities.chat)
111
+ capabilities.push('chat');
112
+ if (model.capabilities.streaming)
113
+ capabilities.push('streaming');
114
+ if (model.capabilities.embedding)
115
+ capabilities.push('embedding');
116
+ if (model.capabilities.rerank)
117
+ capabilities.push('rerank');
118
+ if (model.capabilities.toolCalling)
119
+ capabilities.push('tools');
120
+ allModels.push({
121
+ id: model.id,
122
+ name: model.name,
123
+ provider: provider.id,
124
+ contextWindow: model.contextWindow,
125
+ capabilities,
126
+ });
127
+ }
128
+ }
129
+ }
130
+ catch (error) {
131
+ // Skip providers that fail
132
+ }
133
+ }
134
+ if (jsonOutput) {
135
+ console.log(JSON.stringify(allModels, null, 2));
136
+ return;
137
+ }
138
+ if (allModels.length === 0) {
139
+ console.log(chalk.yellow(`No models found matching "${query}"`));
140
+ return;
141
+ }
142
+ console.log(chalk.bold(`Found ${allModels.length} model(s) matching "${query}":\n`));
143
+ for (const model of allModels) {
144
+ const caps = model.capabilities.join(', ');
145
+ console.log(`${chalk.cyan(model.id)} - ${model.name}`);
146
+ console.log(` Provider: ${model.provider} | Context: ${model.contextWindow.toLocaleString()} tokens | Capabilities: ${caps}`);
147
+ console.log();
148
+ }
149
+ }
150
+ async function getModelInfo(registry, modelId, providerFilter, jsonOutput) {
151
+ const providers = providerFilter
152
+ ? [registry.get(providerFilter)].filter(Boolean)
153
+ : Array.from(registry.getAll().values());
154
+ for (const provider of providers) {
155
+ try {
156
+ const models = await provider.getModels();
157
+ const model = models.find((m) => m.id === modelId || m.providerModelId === modelId);
158
+ if (model) {
159
+ if (jsonOutput) {
160
+ console.log(JSON.stringify({
161
+ id: model.id,
162
+ name: model.name,
163
+ provider: provider.id,
164
+ providerModelId: model.providerModelId,
165
+ contextWindow: model.contextWindow,
166
+ capabilities: model.capabilities,
167
+ }, null, 2));
168
+ }
169
+ else {
170
+ console.log(chalk.bold(`\nModel: ${model.name}`));
171
+ console.log(` ID: ${chalk.cyan(model.id)}`);
172
+ console.log(` Provider: ${provider.name} (${provider.id})`);
173
+ console.log(` Provider Model ID: ${model.providerModelId}`);
174
+ console.log(` Context Window: ${model.contextWindow.toLocaleString()} tokens`);
175
+ console.log(` Capabilities:`);
176
+ console.log(` - Chat: ${model.capabilities.chat ? '✅' : '❌'}`);
177
+ console.log(` - Streaming: ${model.capabilities.streaming ? '✅' : '❌'}`);
178
+ console.log(` - Embedding: ${model.capabilities.embedding ? '✅' : '❌'}`);
179
+ console.log(` - Rerank: ${model.capabilities.rerank ? '✅' : '❌'}`);
180
+ console.log(` - Tool Calling: ${model.capabilities.toolCalling ? '✅' : '❌'}`);
181
+ }
182
+ return;
183
+ }
184
+ }
185
+ catch (error) {
186
+ // Continue searching
187
+ }
188
+ }
189
+ if (!jsonOutput) {
190
+ console.log(chalk.red(`Model "${modelId}" not found`));
191
+ console.log(chalk.dim('Use "codehere models list" to see all available models'));
192
+ }
193
+ }
194
+ //# sourceMappingURL=models-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models-command.js","sourceRoot":"","sources":["../../../../src/presentation/cli/commands/models-command.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,7 @@
5
5
  export declare function executeOrchestrateCommand(goal: string, options?: {
6
6
  mode?: 'plan-only' | 'execute-only' | 'full';
7
7
  planId?: string;
8
+ review?: boolean;
9
+ json?: boolean;
8
10
  }): Promise<void>;
9
11
  //# sourceMappingURL=orchestrate-command.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrate-command.d.ts","sourceRoot":"","sources":["../../../../src/presentation/cli/commands/orchestrate-command.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAmBH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,WAAW,GAAG,cAAc,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAO,GAC9E,OAAO,CAAC,IAAI,CAAC,CAsKf"}
1
+ {"version":3,"file":"orchestrate-command.d.ts","sourceRoot":"","sources":["../../../../src/presentation/cli/commands/orchestrate-command.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAyBH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;IAAE,IAAI,CAAC,EAAE,WAAW,GAAG,cAAc,GAAG,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAO,GAChH,OAAO,CAAC,IAAI,CAAC,CAgVf"}