@codemieai/code 0.0.2 → 0.0.4

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 (360) hide show
  1. package/README.md +357 -719
  2. package/bin/codemie-claude.js +145 -0
  3. package/bin/codemie-code.js +128 -15
  4. package/bin/codemie-codex.js +137 -0
  5. package/bin/codemie.js +1 -1
  6. package/dist/agents/adapters/claude-code.d.ts +7 -2
  7. package/dist/agents/adapters/claude-code.d.ts.map +1 -1
  8. package/dist/agents/adapters/claude-code.js +94 -58
  9. package/dist/agents/adapters/claude-code.js.map +1 -1
  10. package/dist/agents/adapters/codemie-code.d.ts +11 -2
  11. package/dist/agents/adapters/codemie-code.d.ts.map +1 -1
  12. package/dist/agents/adapters/codemie-code.js +93 -25
  13. package/dist/agents/adapters/codemie-code.js.map +1 -1
  14. package/dist/agents/adapters/codex.d.ts +7 -2
  15. package/dist/agents/adapters/codex.d.ts.map +1 -1
  16. package/dist/agents/adapters/codex.js +104 -39
  17. package/dist/agents/adapters/codex.js.map +1 -1
  18. package/dist/agents/codemie-code/agent.d.ts +89 -0
  19. package/dist/agents/codemie-code/agent.d.ts.map +1 -0
  20. package/dist/agents/codemie-code/agent.js +689 -0
  21. package/dist/agents/codemie-code/agent.js.map +1 -0
  22. package/dist/agents/codemie-code/config.d.ts +40 -0
  23. package/dist/agents/codemie-code/config.d.ts.map +1 -0
  24. package/dist/agents/codemie-code/config.js +278 -0
  25. package/dist/agents/codemie-code/config.js.map +1 -0
  26. package/dist/agents/codemie-code/filters.d.ts +91 -0
  27. package/dist/agents/codemie-code/filters.d.ts.map +1 -0
  28. package/dist/agents/codemie-code/filters.js +328 -0
  29. package/dist/agents/codemie-code/filters.js.map +1 -0
  30. package/dist/agents/codemie-code/index.d.ts +92 -0
  31. package/dist/agents/codemie-code/index.d.ts.map +1 -0
  32. package/dist/agents/codemie-code/index.js +327 -0
  33. package/dist/agents/codemie-code/index.js.map +1 -0
  34. package/dist/agents/codemie-code/modes/contextAwarePlanning.d.ts +87 -0
  35. package/dist/agents/codemie-code/modes/contextAwarePlanning.d.ts.map +1 -0
  36. package/dist/agents/codemie-code/modes/contextAwarePlanning.js +957 -0
  37. package/dist/agents/codemie-code/modes/contextAwarePlanning.js.map +1 -0
  38. package/dist/agents/codemie-code/modes/planMode.d.ts +116 -0
  39. package/dist/agents/codemie-code/modes/planMode.d.ts.map +1 -0
  40. package/dist/agents/codemie-code/modes/planMode.js +537 -0
  41. package/dist/agents/codemie-code/modes/planMode.js.map +1 -0
  42. package/dist/agents/codemie-code/prompts.d.ts +40 -0
  43. package/dist/agents/codemie-code/prompts.d.ts.map +1 -0
  44. package/dist/agents/codemie-code/prompts.js +160 -0
  45. package/dist/agents/codemie-code/prompts.js.map +1 -0
  46. package/dist/agents/codemie-code/storage/todoStorage.d.ts +78 -0
  47. package/dist/agents/codemie-code/storage/todoStorage.d.ts.map +1 -0
  48. package/dist/agents/codemie-code/storage/todoStorage.js +225 -0
  49. package/dist/agents/codemie-code/storage/todoStorage.js.map +1 -0
  50. package/dist/agents/codemie-code/tokenUtils.d.ts +108 -0
  51. package/dist/agents/codemie-code/tokenUtils.d.ts.map +1 -0
  52. package/dist/agents/codemie-code/tokenUtils.js +220 -0
  53. package/dist/agents/codemie-code/tokenUtils.js.map +1 -0
  54. package/dist/agents/codemie-code/toolMetadata.d.ts +15 -0
  55. package/dist/agents/codemie-code/toolMetadata.d.ts.map +1 -0
  56. package/dist/agents/codemie-code/toolMetadata.js +315 -0
  57. package/dist/agents/codemie-code/toolMetadata.js.map +1 -0
  58. package/dist/agents/codemie-code/tools/index.d.ts +45 -0
  59. package/dist/agents/codemie-code/tools/index.d.ts.map +1 -0
  60. package/dist/agents/codemie-code/tools/index.js +407 -0
  61. package/dist/agents/codemie-code/tools/index.js.map +1 -0
  62. package/dist/agents/codemie-code/tools/planning.d.ts +53 -0
  63. package/dist/agents/codemie-code/tools/planning.d.ts.map +1 -0
  64. package/dist/agents/codemie-code/tools/planning.js +224 -0
  65. package/dist/agents/codemie-code/tools/planning.js.map +1 -0
  66. package/dist/agents/codemie-code/types.d.ts +418 -0
  67. package/dist/agents/codemie-code/types.d.ts.map +1 -0
  68. package/dist/agents/codemie-code/types.js +35 -0
  69. package/dist/agents/codemie-code/types.js.map +1 -0
  70. package/dist/agents/codemie-code/ui/progressTracker.d.ts +125 -0
  71. package/dist/agents/codemie-code/ui/progressTracker.d.ts.map +1 -0
  72. package/dist/agents/codemie-code/ui/progressTracker.js +343 -0
  73. package/dist/agents/codemie-code/ui/progressTracker.js.map +1 -0
  74. package/dist/agents/codemie-code/ui/todoPanel.d.ts +112 -0
  75. package/dist/agents/codemie-code/ui/todoPanel.d.ts.map +1 -0
  76. package/dist/agents/codemie-code/ui/todoPanel.js +318 -0
  77. package/dist/agents/codemie-code/ui/todoPanel.js.map +1 -0
  78. package/dist/agents/codemie-code/ui.d.ts +179 -0
  79. package/dist/agents/codemie-code/ui.d.ts.map +1 -0
  80. package/dist/agents/codemie-code/ui.js +1408 -0
  81. package/dist/agents/codemie-code/ui.js.map +1 -0
  82. package/dist/agents/codemie-code/utils/progressionEnforcer.d.ts +87 -0
  83. package/dist/agents/codemie-code/utils/progressionEnforcer.d.ts.map +1 -0
  84. package/dist/agents/codemie-code/utils/progressionEnforcer.js +293 -0
  85. package/dist/agents/codemie-code/utils/progressionEnforcer.js.map +1 -0
  86. package/dist/agents/codemie-code/utils/todoParser.d.ts +41 -0
  87. package/dist/agents/codemie-code/utils/todoParser.d.ts.map +1 -0
  88. package/dist/agents/codemie-code/utils/todoParser.js +305 -0
  89. package/dist/agents/codemie-code/utils/todoParser.js.map +1 -0
  90. package/dist/agents/codemie-code/utils/todoValidator.d.ts +65 -0
  91. package/dist/agents/codemie-code/utils/todoValidator.d.ts.map +1 -0
  92. package/dist/agents/codemie-code/utils/todoValidator.js +249 -0
  93. package/dist/agents/codemie-code/utils/todoValidator.js.map +1 -0
  94. package/dist/agents/codemie-code/validators/planValidator.d.ts +94 -0
  95. package/dist/agents/codemie-code/validators/planValidator.d.ts.map +1 -0
  96. package/dist/agents/codemie-code/validators/planValidator.js +281 -0
  97. package/dist/agents/codemie-code/validators/planValidator.js.map +1 -0
  98. package/dist/agents/registry.d.ts +1 -1
  99. package/dist/agents/registry.d.ts.map +1 -1
  100. package/dist/agents/registry.js +11 -15
  101. package/dist/agents/registry.js.map +1 -1
  102. package/dist/cli/commands/auth.d.ts +3 -0
  103. package/dist/cli/commands/auth.d.ts.map +1 -0
  104. package/dist/cli/commands/auth.js +170 -0
  105. package/dist/cli/commands/auth.js.map +1 -0
  106. package/dist/cli/commands/config.d.ts +3 -0
  107. package/dist/cli/commands/config.d.ts.map +1 -0
  108. package/dist/cli/commands/config.js +350 -0
  109. package/dist/cli/commands/config.js.map +1 -0
  110. package/dist/cli/commands/doctor.d.ts.map +1 -1
  111. package/dist/cli/commands/doctor.js +308 -71
  112. package/dist/cli/commands/doctor.js.map +1 -1
  113. package/dist/cli/commands/env.d.ts +3 -0
  114. package/dist/cli/commands/env.d.ts.map +1 -0
  115. package/dist/cli/commands/env.js +19 -0
  116. package/dist/cli/commands/env.js.map +1 -0
  117. package/dist/cli/commands/install.d.ts.map +1 -1
  118. package/dist/cli/commands/install.js +28 -33
  119. package/dist/cli/commands/install.js.map +1 -1
  120. package/dist/cli/commands/list.js +18 -24
  121. package/dist/cli/commands/list.js.map +1 -1
  122. package/dist/cli/commands/run.d.ts.map +1 -1
  123. package/dist/cli/commands/run.js +297 -31
  124. package/dist/cli/commands/run.js.map +1 -1
  125. package/dist/cli/commands/setup.d.ts +3 -0
  126. package/dist/cli/commands/setup.d.ts.map +1 -0
  127. package/dist/cli/commands/setup.js +523 -0
  128. package/dist/cli/commands/setup.js.map +1 -0
  129. package/dist/cli/commands/tools.d.ts +6 -0
  130. package/dist/cli/commands/tools.d.ts.map +1 -0
  131. package/dist/cli/commands/tools.js +244 -0
  132. package/dist/cli/commands/tools.js.map +1 -0
  133. package/dist/cli/commands/uninstall.js +24 -30
  134. package/dist/cli/commands/uninstall.js.map +1 -1
  135. package/dist/cli/commands/version.d.ts.map +1 -1
  136. package/dist/cli/commands/version.js +11 -16
  137. package/dist/cli/commands/version.js.map +1 -1
  138. package/dist/cli/commands/workflow.d.ts +6 -0
  139. package/dist/cli/commands/workflow.d.ts.map +1 -0
  140. package/dist/cli/commands/workflow.js +424 -0
  141. package/dist/cli/commands/workflow.js.map +1 -0
  142. package/dist/cli/index.js +85 -35
  143. package/dist/cli/index.js.map +1 -1
  144. package/dist/clients/adapters/github.d.ts +17 -0
  145. package/dist/clients/adapters/github.d.ts.map +1 -0
  146. package/dist/clients/adapters/github.js +150 -0
  147. package/dist/clients/adapters/github.js.map +1 -0
  148. package/dist/clients/adapters/gitlab.d.ts +17 -0
  149. package/dist/clients/adapters/gitlab.d.ts.map +1 -0
  150. package/dist/clients/adapters/gitlab.js +147 -0
  151. package/dist/clients/adapters/gitlab.js.map +1 -0
  152. package/dist/clients/registry.d.ts +20 -0
  153. package/dist/clients/registry.d.ts.map +1 -0
  154. package/dist/clients/registry.js +27 -0
  155. package/dist/clients/registry.js.map +1 -0
  156. package/dist/env/manager.js +9 -46
  157. package/dist/env/manager.js.map +1 -1
  158. package/dist/index.d.ts +6 -13
  159. package/dist/index.d.ts.map +1 -1
  160. package/dist/index.js +6 -43
  161. package/dist/index.js.map +1 -1
  162. package/dist/tools/detector.d.ts +33 -0
  163. package/dist/tools/detector.d.ts.map +1 -0
  164. package/dist/tools/detector.js +145 -0
  165. package/dist/tools/detector.js.map +1 -0
  166. package/dist/tools/index.d.ts +8 -0
  167. package/dist/tools/index.d.ts.map +1 -0
  168. package/dist/tools/index.js +8 -0
  169. package/dist/tools/index.js.map +1 -0
  170. package/dist/tools/manager.d.ts +21 -0
  171. package/dist/tools/manager.d.ts.map +1 -0
  172. package/dist/tools/manager.js +104 -0
  173. package/dist/tools/manager.js.map +1 -0
  174. package/dist/tools/registry.d.ts +8 -0
  175. package/dist/tools/registry.d.ts.map +1 -0
  176. package/dist/tools/registry.js +36 -0
  177. package/dist/tools/registry.js.map +1 -0
  178. package/dist/tools/types.d.ts +41 -0
  179. package/dist/tools/types.d.ts.map +1 -0
  180. package/dist/tools/types.js +5 -0
  181. package/dist/tools/types.js.map +1 -0
  182. package/dist/types/sso.d.ts +42 -0
  183. package/dist/types/sso.d.ts.map +1 -0
  184. package/dist/types/sso.js +2 -0
  185. package/dist/types/sso.js.map +1 -0
  186. package/dist/utils/agent-compatibility.d.ts +32 -0
  187. package/dist/utils/agent-compatibility.d.ts.map +1 -0
  188. package/dist/utils/agent-compatibility.js +140 -0
  189. package/dist/utils/agent-compatibility.js.map +1 -0
  190. package/dist/utils/async-tips.d.ts.map +1 -1
  191. package/dist/utils/async-tips.js +16 -55
  192. package/dist/utils/async-tips.js.map +1 -1
  193. package/dist/utils/clipboard.d.ts +16 -0
  194. package/dist/utils/clipboard.d.ts.map +1 -0
  195. package/dist/utils/clipboard.js +179 -0
  196. package/dist/utils/clipboard.js.map +1 -0
  197. package/dist/utils/codemie-integration-validator.d.ts +17 -0
  198. package/dist/utils/codemie-integration-validator.d.ts.map +1 -0
  199. package/dist/utils/codemie-integration-validator.js +105 -0
  200. package/dist/utils/codemie-integration-validator.js.map +1 -0
  201. package/dist/utils/codemie-model-fetcher.d.ts +11 -0
  202. package/dist/utils/codemie-model-fetcher.d.ts.map +1 -0
  203. package/dist/utils/codemie-model-fetcher.js +242 -0
  204. package/dist/utils/codemie-model-fetcher.js.map +1 -0
  205. package/dist/utils/config-loader.d.ts +118 -0
  206. package/dist/utils/config-loader.d.ts.map +1 -0
  207. package/dist/utils/config-loader.js +397 -0
  208. package/dist/utils/config-loader.js.map +1 -0
  209. package/dist/utils/credential-store.d.ts +16 -0
  210. package/dist/utils/credential-store.d.ts.map +1 -0
  211. package/dist/utils/credential-store.js +109 -0
  212. package/dist/utils/credential-store.js.map +1 -0
  213. package/dist/utils/dirname.d.ts +7 -0
  214. package/dist/utils/dirname.d.ts.map +1 -0
  215. package/dist/utils/dirname.js +11 -0
  216. package/dist/utils/dirname.js.map +1 -0
  217. package/dist/utils/errors.js +7 -17
  218. package/dist/utils/errors.js.map +1 -1
  219. package/dist/utils/exec.js +3 -6
  220. package/dist/utils/exec.js.map +1 -1
  221. package/dist/utils/first-time.d.ts +34 -0
  222. package/dist/utils/first-time.d.ts.map +1 -0
  223. package/dist/utils/first-time.js +226 -0
  224. package/dist/utils/first-time.js.map +1 -0
  225. package/dist/utils/health-checker.d.ts +20 -0
  226. package/dist/utils/health-checker.d.ts.map +1 -0
  227. package/dist/utils/health-checker.js +172 -0
  228. package/dist/utils/health-checker.js.map +1 -0
  229. package/dist/utils/logger.js +12 -18
  230. package/dist/utils/logger.js.map +1 -1
  231. package/dist/utils/model-fetcher.d.ts +21 -0
  232. package/dist/utils/model-fetcher.d.ts.map +1 -0
  233. package/dist/utils/model-fetcher.js +150 -0
  234. package/dist/utils/model-fetcher.js.map +1 -0
  235. package/dist/utils/sso-auth.d.ts +15 -0
  236. package/dist/utils/sso-auth.d.ts.map +1 -0
  237. package/dist/utils/sso-auth.js +207 -0
  238. package/dist/utils/sso-auth.js.map +1 -0
  239. package/dist/utils/sso-gateway.d.ts +47 -0
  240. package/dist/utils/sso-gateway.d.ts.map +1 -0
  241. package/dist/utils/sso-gateway.js +298 -0
  242. package/dist/utils/sso-gateway.js.map +1 -0
  243. package/dist/utils/tips.d.ts.map +1 -1
  244. package/dist/utils/tips.js +13 -52
  245. package/dist/utils/tips.js.map +1 -1
  246. package/dist/workflows/detector.d.ts +37 -0
  247. package/dist/workflows/detector.d.ts.map +1 -0
  248. package/dist/workflows/detector.js +160 -0
  249. package/dist/workflows/detector.js.map +1 -0
  250. package/dist/workflows/index.d.ts +8 -0
  251. package/dist/workflows/index.d.ts.map +1 -0
  252. package/dist/workflows/index.js +8 -0
  253. package/dist/workflows/index.js.map +1 -0
  254. package/dist/workflows/installer.d.ts +24 -0
  255. package/dist/workflows/installer.d.ts.map +1 -0
  256. package/dist/workflows/installer.js +105 -0
  257. package/dist/workflows/installer.js.map +1 -0
  258. package/dist/workflows/registry.d.ts +29 -0
  259. package/dist/workflows/registry.d.ts.map +1 -0
  260. package/dist/workflows/registry.js +54 -0
  261. package/dist/workflows/registry.js.map +1 -0
  262. package/dist/workflows/templates/github/metadata.d.ts +6 -0
  263. package/dist/workflows/templates/github/metadata.d.ts.map +1 -0
  264. package/dist/workflows/templates/github/metadata.js +111 -0
  265. package/dist/workflows/templates/github/metadata.js.map +1 -0
  266. package/dist/workflows/templates/gitlab/metadata.d.ts +6 -0
  267. package/dist/workflows/templates/gitlab/metadata.d.ts.map +1 -0
  268. package/dist/workflows/templates/gitlab/metadata.js +14 -0
  269. package/dist/workflows/templates/gitlab/metadata.js.map +1 -0
  270. package/dist/workflows/types.d.ts +71 -0
  271. package/dist/workflows/types.d.ts.map +1 -0
  272. package/dist/workflows/types.js +5 -0
  273. package/dist/workflows/types.js.map +1 -0
  274. package/package.json +32 -25
  275. package/src/workflows/templates/github/code-ci.yml +529 -0
  276. package/src/workflows/templates/github/inline-fix.yml +665 -0
  277. package/src/workflows/templates/github/pr-review.yml +677 -0
  278. package/.claude/agents/README.md +0 -298
  279. package/.claude/agents/release-manager.md +0 -857
  280. package/.codemie/guides/git-workflow.md +0 -493
  281. package/CLAUDE.md +0 -855
  282. package/dist/agents/adapters/aider.d.ts +0 -12
  283. package/dist/agents/adapters/aider.d.ts.map +0 -1
  284. package/dist/agents/adapters/aider.js +0 -80
  285. package/dist/agents/adapters/aider.js.map +0 -1
  286. package/dist/cli/cli.d.ts +0 -4
  287. package/dist/cli/cli.d.ts.map +0 -1
  288. package/dist/cli/cli.js +0 -107
  289. package/dist/cli/cli.js.map +0 -1
  290. package/dist/cli/commands/mcp.d.ts +0 -3
  291. package/dist/cli/commands/mcp.d.ts.map +0 -1
  292. package/dist/cli/commands/mcp.js +0 -459
  293. package/dist/cli/commands/mcp.js.map +0 -1
  294. package/dist/code/agent-events.d.ts +0 -39
  295. package/dist/code/agent-events.d.ts.map +0 -1
  296. package/dist/code/agent-events.js +0 -4
  297. package/dist/code/agent-events.js.map +0 -1
  298. package/dist/code/agent.d.ts +0 -19
  299. package/dist/code/agent.d.ts.map +0 -1
  300. package/dist/code/agent.js +0 -144
  301. package/dist/code/agent.js.map +0 -1
  302. package/dist/code/config.d.ts +0 -13
  303. package/dist/code/config.d.ts.map +0 -1
  304. package/dist/code/config.js +0 -41
  305. package/dist/code/config.js.map +0 -1
  306. package/dist/code/index.d.ts +0 -19
  307. package/dist/code/index.d.ts.map +0 -1
  308. package/dist/code/index.js +0 -400
  309. package/dist/code/index.js.map +0 -1
  310. package/dist/code/prompts.d.ts +0 -2
  311. package/dist/code/prompts.d.ts.map +0 -1
  312. package/dist/code/prompts.js +0 -45
  313. package/dist/code/prompts.js.map +0 -1
  314. package/dist/code/tools/command.d.ts +0 -8
  315. package/dist/code/tools/command.d.ts.map +0 -1
  316. package/dist/code/tools/command.js +0 -83
  317. package/dist/code/tools/command.js.map +0 -1
  318. package/dist/code/tools/diff-utils.d.ts +0 -2
  319. package/dist/code/tools/diff-utils.d.ts.map +0 -1
  320. package/dist/code/tools/diff-utils.js +0 -45
  321. package/dist/code/tools/diff-utils.js.map +0 -1
  322. package/dist/code/tools/filesystem.d.ts +0 -11
  323. package/dist/code/tools/filesystem.d.ts.map +0 -1
  324. package/dist/code/tools/filesystem.js +0 -442
  325. package/dist/code/tools/filesystem.js.map +0 -1
  326. package/dist/code/tools/git.d.ts +0 -7
  327. package/dist/code/tools/git.d.ts.map +0 -1
  328. package/dist/code/tools/git.js +0 -111
  329. package/dist/code/tools/git.js.map +0 -1
  330. package/dist/code/tools/mcp.d.ts +0 -13
  331. package/dist/code/tools/mcp.d.ts.map +0 -1
  332. package/dist/code/tools/mcp.js +0 -230
  333. package/dist/code/tools/mcp.js.map +0 -1
  334. package/dist/data/tips.json +0 -118
  335. package/dist/ui/terminal-ui.d.ts +0 -73
  336. package/dist/ui/terminal-ui.d.ts.map +0 -1
  337. package/dist/ui/terminal-ui.js +0 -900
  338. package/dist/ui/terminal-ui.js.map +0 -1
  339. package/dist/utils/env-mapper.d.ts +0 -40
  340. package/dist/utils/env-mapper.d.ts.map +0 -1
  341. package/dist/utils/env-mapper.js +0 -122
  342. package/dist/utils/env-mapper.js.map +0 -1
  343. package/docs/USER_GUIDE.md +0 -573
  344. package/eslint.config.mjs +0 -43
  345. package/tests/agent-direct.test.mjs +0 -45
  346. package/tests/agent-output.test.mjs +0 -64
  347. package/tests/codemie-code.test.mjs +0 -42
  348. package/tests/context7-only.test.mjs +0 -42
  349. package/tests/conversation-flow.test.mjs +0 -63
  350. package/tests/interactive-simulation.test.mjs +0 -60
  351. package/tests/live-output.test.mjs +0 -53
  352. package/tests/mcp-context7.test.mjs +0 -105
  353. package/tests/mcp-e2e.test.mjs +0 -109
  354. package/tests/mcp-time-server.test.mjs +0 -58
  355. package/tests/streaming.test.mjs +0 -57
  356. package/tests/test-helpers.mjs +0 -94
  357. package/tests/text-wrapping.test.mjs +0 -33
  358. package/tests/tool-count.test.mjs +0 -81
  359. package/tests/ui-format.test.mjs +0 -39
  360. package/tests/ui-state.test.mjs +0 -72
@@ -1,128 +1,365 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createDoctorCommand = createDoctorCommand;
7
- const commander_1 = require("commander");
8
- const tips_1 = require("../../utils/tips");
9
- const exec_1 = require("../../utils/exec");
10
- const chalk_1 = __importDefault(require("chalk"));
11
- const registry_1 = require("../../agents/registry");
12
- function createDoctorCommand() {
13
- const command = new commander_1.Command('doctor');
1
+ import { Command } from 'commander';
2
+ import { tipDisplay } from '../../utils/tips.js';
3
+ import { exec } from '../../utils/exec.js';
4
+ import chalk from 'chalk';
5
+ import ora from 'ora';
6
+ import { AgentRegistry } from '../../agents/registry.js';
7
+ import { ConfigLoader } from '../../utils/config-loader.js';
8
+ import { checkProviderHealth } from '../../utils/health-checker.js';
9
+ import { fetchAvailableModels } from '../../utils/model-fetcher.js';
10
+ import { CodeMieSSO } from '../../utils/sso-auth.js';
11
+ import { fetchCodeMieModelsFromConfig, validateCodeMieConnectivity, fetchCodeMieIntegrationsFromConfig } from '../../utils/codemie-model-fetcher.js';
12
+ import { checkAllTools } from '../../tools/index.js';
13
+ import { detectVCSProvider, listInstalledWorkflows } from '../../workflows/index.js';
14
+ export function createDoctorCommand() {
15
+ const command = new Command('doctor');
14
16
  command
15
17
  .description('Check system health and configuration')
16
18
  .action(async () => {
17
- console.log(chalk_1.default.bold('\n🔍 CodeMie Code Health Check\n'));
19
+ console.log(chalk.bold('\n🔍 CodeMie Code Health Check\n'));
18
20
  let hasIssues = false;
19
21
  // Check Node.js version
20
- console.log(chalk_1.default.bold('Node.js:'));
22
+ console.log(chalk.bold('Node.js:'));
21
23
  try {
22
24
  const nodeVersion = process.version;
23
25
  const majorVersion = parseInt(nodeVersion.slice(1).split('.')[0]);
24
26
  if (majorVersion >= 18) {
25
- console.log(` ${chalk_1.default.green('✓')} Version ${nodeVersion}`);
27
+ console.log(` ${chalk.green('✓')} Version ${nodeVersion}`);
26
28
  }
27
29
  else {
28
- console.log(` ${chalk_1.default.yellow('⚠')} Version ${nodeVersion} (recommended: >= 18.0.0)`);
30
+ console.log(` ${chalk.yellow('⚠')} Version ${nodeVersion} (recommended: >= 18.0.0)`);
29
31
  hasIssues = true;
30
32
  }
31
33
  }
32
34
  catch {
33
- console.log(` ${chalk_1.default.red('✗')} Failed to check version`);
35
+ console.log(` ${chalk.red('✗')} Failed to check version`);
34
36
  hasIssues = true;
35
37
  }
36
38
  console.log();
37
39
  // Check npm
38
- console.log(chalk_1.default.bold('npm:'));
40
+ console.log(chalk.bold('npm:'));
39
41
  try {
40
- const result = await (0, exec_1.exec)('npm', ['--version']);
41
- console.log(` ${chalk_1.default.green('✓')} Version ${result.stdout}`);
42
+ const result = await exec('npm', ['--version']);
43
+ console.log(` ${chalk.green('✓')} Version ${result.stdout}`);
42
44
  }
43
45
  catch {
44
- console.log(` ${chalk_1.default.red('✗')} npm not found`);
46
+ console.log(` ${chalk.red('✗')} npm not found`);
45
47
  hasIssues = true;
46
48
  }
47
49
  console.log();
48
- // Check git
49
- console.log(chalk_1.default.bold('git:'));
50
+ // Check AI Configuration
51
+ console.log(chalk.bold('AI Configuration:'));
52
+ let config;
50
53
  try {
51
- const result = await (0, exec_1.exec)('git', ['--version']);
52
- console.log(` ${chalk_1.default.green('✓')} ${result.stdout}`);
54
+ config = await ConfigLoader.load();
55
+ // Check if config is empty or missing required fields
56
+ const hasProvider = !!config.provider;
57
+ const hasBaseUrl = !!config.baseUrl;
58
+ const hasApiKey = !!config.apiKey;
59
+ const hasModel = !!config.model;
60
+ if (hasProvider) {
61
+ console.log(` ${chalk.green('✓')} Provider: ${config.provider}`);
62
+ }
63
+ else {
64
+ console.log(` ${chalk.red('✗')} Provider not configured`);
65
+ hasIssues = true;
66
+ }
67
+ if (hasBaseUrl) {
68
+ console.log(` ${chalk.green('✓')} Base URL: ${config.baseUrl}`);
69
+ }
70
+ else {
71
+ console.log(` ${chalk.red('✗')} Base URL not configured`);
72
+ hasIssues = true;
73
+ }
74
+ if (hasApiKey) {
75
+ const masked = config.apiKey.substring(0, 8) + '***' + config.apiKey.substring(config.apiKey.length - 4);
76
+ console.log(` ${chalk.green('✓')} API Key: ${masked}`);
77
+ }
78
+ else {
79
+ console.log(` ${chalk.red('✗')} API Key not configured`);
80
+ hasIssues = true;
81
+ }
82
+ if (hasModel) {
83
+ console.log(` ${chalk.green('✓')} Model: ${config.model}`);
84
+ }
85
+ else {
86
+ console.log(` ${chalk.red('✗')} Model not configured`);
87
+ hasIssues = true;
88
+ }
89
+ // Show setup instructions if config is incomplete
90
+ if (!hasProvider || !hasBaseUrl || !hasApiKey || !hasModel) {
91
+ console.log(` ${chalk.dim('Run: codemie setup')}`);
92
+ }
53
93
  }
54
- catch {
55
- console.log(` ${chalk_1.default.yellow('⚠')} git not found (optional)`);
94
+ catch (error) {
95
+ const errorMessage = error instanceof Error ? error.message : String(error);
96
+ console.log(` ${chalk.red('✗')} Configuration error: ${errorMessage}`);
97
+ console.log(` ${chalk.dim('Run: codemie setup')}`);
98
+ hasIssues = true;
56
99
  }
57
100
  console.log();
58
- // Check AI Configuration
59
- console.log(chalk_1.default.bold('AI Configuration:'));
60
- // Check for any valid base URL
61
- const baseUrl = process.env.CODEMIE_BASE_URL ||
62
- process.env.ANTHROPIC_BASE_URL ||
63
- process.env.OPENAI_BASE_URL;
64
- // Check for any valid auth token
65
- const authToken = process.env.CODEMIE_AUTH_TOKEN ||
66
- process.env.CODEMIE_API_KEY ||
67
- process.env.ANTHROPIC_AUTH_TOKEN ||
68
- process.env.ANTHROPIC_API_KEY ||
69
- process.env.OPENAI_AUTH_TOKEN ||
70
- process.env.OPENAI_API_KEY;
71
- if (baseUrl) {
72
- console.log(` ${chalk_1.default.green('✓')} Base URL: ${baseUrl}`);
101
+ // Check SSO Configuration if provider is ai-run-sso
102
+ if (config && config.provider === 'ai-run-sso') {
103
+ await checkSSOConfiguration(config);
104
+ }
105
+ // Test connectivity if config is valid (skip for ai-run-sso as it has its own validation)
106
+ if (config && config.baseUrl && config.apiKey && config.model && config.provider !== 'ai-run-sso') {
107
+ console.log(chalk.bold('Connectivity Test:'));
108
+ const healthSpinner = ora('Validating credentials and endpoint...').start();
109
+ try {
110
+ const startTime = Date.now();
111
+ const result = await checkProviderHealth(config.baseUrl, config.apiKey);
112
+ const duration = Date.now() - startTime;
113
+ if (!result.success) {
114
+ throw new Error(result.message);
115
+ }
116
+ healthSpinner.succeed(chalk.green(`Credentials validated`));
117
+ console.log(` ${chalk.dim('Response time:')} ${duration}ms`);
118
+ console.log(` ${chalk.dim('Status:')} ${result.message}`);
119
+ }
120
+ catch (error) {
121
+ const errorMessage = error instanceof Error ? error.message : String(error);
122
+ healthSpinner.fail(chalk.red('Connection test failed'));
123
+ console.log(` ${chalk.dim('Error:')} ${errorMessage}`);
124
+ hasIssues = true;
125
+ }
126
+ console.log();
127
+ // Fetch and verify models
128
+ if (config.provider !== 'bedrock') {
129
+ console.log(chalk.bold('Model Verification:'));
130
+ const modelsSpinner = ora('Fetching available models...').start();
131
+ try {
132
+ const availableModels = await fetchAvailableModels({
133
+ provider: config.provider,
134
+ baseUrl: config.baseUrl,
135
+ apiKey: config.apiKey,
136
+ model: config.model,
137
+ timeout: config.timeout || 300
138
+ });
139
+ if (availableModels.length > 0) {
140
+ modelsSpinner.succeed(chalk.green(`Found ${availableModels.length} available models`));
141
+ // Check if configured model exists
142
+ const configuredModel = config.model;
143
+ const modelExists = availableModels.includes(configuredModel);
144
+ if (modelExists) {
145
+ console.log(` ${chalk.green('✓')} Configured model '${configuredModel}' is available`);
146
+ }
147
+ else {
148
+ console.log(` ${chalk.yellow('⚠')} Configured model '${configuredModel}' not found in available models`);
149
+ console.log(` ${chalk.dim('Available models:')} ${availableModels.slice(0, 5).join(', ')}${availableModels.length > 5 ? '...' : ''}`);
150
+ hasIssues = true;
151
+ }
152
+ }
153
+ else {
154
+ modelsSpinner.warn(chalk.yellow('Could not fetch models from provider'));
155
+ console.log(` ${chalk.dim('Using configured model:')} ${config.model}`);
156
+ }
157
+ }
158
+ catch (error) {
159
+ const errorMessage = error instanceof Error ? error.message : String(error);
160
+ modelsSpinner.warn(chalk.yellow('Model verification skipped'));
161
+ console.log(` ${chalk.dim('Error:')} ${errorMessage}`);
162
+ }
163
+ console.log();
164
+ }
165
+ }
166
+ // Check installed agents
167
+ console.log(chalk.bold('Installed Agents:'));
168
+ const installedAgents = await AgentRegistry.getInstalledAgents();
169
+ if (installedAgents.length > 0) {
170
+ for (const agent of installedAgents) {
171
+ const version = await agent.getVersion();
172
+ const versionStr = version ? ` (${version})` : '';
173
+ console.log(` ${chalk.green('✓')} ${agent.displayName}${versionStr}`);
174
+ }
73
175
  }
74
176
  else {
75
- console.log(` ${chalk_1.default.red('')} Base URL not set`);
76
- console.log(` Set: CODEMIE_BASE_URL (or provider-specific: ANTHROPIC_BASE_URL, OPENAI_BASE_URL)`);
77
- hasIssues = true;
177
+ console.log(` ${chalk.yellow('')} No agents installed (CodeMie Code is built-in)`);
78
178
  }
79
- if (authToken) {
80
- const masked = authToken.substring(0, 4) + '***';
81
- console.log(` ${chalk_1.default.green('✓')} Auth Token: ${masked}`);
179
+ console.log();
180
+ // Check VCS Tools
181
+ console.log(chalk.bold('VCS Tools:'));
182
+ const toolsStatus = checkAllTools();
183
+ // Show git first
184
+ if (toolsStatus.git.installed) {
185
+ console.log(` ${chalk.green('✓')} Git v${toolsStatus.git.version}`);
82
186
  }
83
187
  else {
84
- console.log(` ${chalk_1.default.red('')} Auth Token not set`);
85
- console.log(` Set: CODEMIE_AUTH_TOKEN (or provider-specific: ANTHROPIC_AUTH_TOKEN, OPENAI_API_KEY)`);
86
- hasIssues = true;
188
+ console.log(` ${chalk.yellow('')} Git not installed`);
87
189
  }
88
- // Check model configuration
89
- const model = process.env.CODEMIE_MODEL ||
90
- process.env.ANTHROPIC_MODEL ||
91
- process.env.OPENAI_MODEL;
92
- if (model) {
93
- console.log(` ${chalk_1.default.green('✓')} Model: ${model}`);
190
+ if (toolsStatus.gh.installed) {
191
+ const authStatus = toolsStatus.gh.authenticated
192
+ ? chalk.green(`authenticated as ${toolsStatus.gh.authUser}`)
193
+ : chalk.yellow('not authenticated');
194
+ console.log(` ${chalk.green('✓')} GitHub CLI (gh) v${toolsStatus.gh.version} - ${authStatus}`);
94
195
  }
95
196
  else {
96
- console.log(` ${chalk_1.default.yellow('')} Model not set (will use default: claude-4-5-sonnet)`);
197
+ console.log(` ${chalk.dim('')} GitHub CLI (gh) not installed`);
198
+ console.log(` ${chalk.dim('Install with: codemie tools install gh')}`);
199
+ }
200
+ if (toolsStatus.glab.installed) {
201
+ const authStatus = toolsStatus.glab.authenticated
202
+ ? chalk.green(`authenticated as ${toolsStatus.glab.authUser}`)
203
+ : chalk.yellow('not authenticated');
204
+ console.log(` ${chalk.green('✓')} GitLab CLI (glab) v${toolsStatus.glab.version} - ${authStatus}`);
205
+ }
206
+ else {
207
+ console.log(` ${chalk.dim('○')} GitLab CLI (glab) not installed`);
208
+ console.log(` ${chalk.dim('Install with: codemie tools install glab')}`);
97
209
  }
98
210
  console.log();
99
- // Check installed agents
100
- console.log(chalk_1.default.bold('Installed Agents:'));
101
- const installedAgents = await registry_1.AgentRegistry.getInstalledAgents();
102
- if (installedAgents.length > 0) {
103
- for (const agent of installedAgents) {
104
- const version = await agent.getVersion();
105
- const versionStr = version ? ` (${version})` : '';
106
- console.log(` ${chalk_1.default.green('✓')} ${agent.displayName}${versionStr}`);
211
+ // Check VCS and Workflows
212
+ console.log(chalk.bold('Repository & Workflows:'));
213
+ const vcsDetection = detectVCSProvider();
214
+ if (vcsDetection.isGitRepo) {
215
+ console.log(` ${chalk.green('✓')} Git repository detected`);
216
+ if (vcsDetection.provider) {
217
+ console.log(` ${chalk.green('✓')} Provider: ${vcsDetection.provider}`);
218
+ console.log(` ${chalk.dim(`Remote: ${vcsDetection.remoteUrl}`)}`);
219
+ // List installed workflows
220
+ const installedWorkflows = listInstalledWorkflows(vcsDetection.provider);
221
+ if (installedWorkflows.length > 0) {
222
+ console.log(` ${chalk.green('✓')} ${installedWorkflows.length} workflow(s) installed:`);
223
+ installedWorkflows.forEach(workflow => {
224
+ const fileName = workflow.split('/').pop();
225
+ console.log(` ${chalk.dim('•')} ${fileName}`);
226
+ });
227
+ }
228
+ else {
229
+ console.log(` ${chalk.dim('○')} No workflows installed`);
230
+ console.log(` ${chalk.dim('Install workflows with: codemie workflow install <workflow-id>')}`);
231
+ }
232
+ }
233
+ else {
234
+ console.log(` ${chalk.yellow('⚠')} VCS provider not detected`);
235
+ console.log(` ${chalk.dim('Remote URL:')} ${vcsDetection.remoteUrl || 'none'}`);
107
236
  }
108
237
  }
109
238
  else {
110
- console.log(` ${chalk_1.default.yellow('')} No agents installed (CodeMie Code is built-in)`);
239
+ console.log(` ${chalk.dim('')} Not a git repository`);
111
240
  }
112
241
  console.log();
113
242
  // Summary
114
243
  if (hasIssues) {
115
- console.log(chalk_1.default.yellow('⚠ Some issues detected. Please resolve them for optimal performance.\n'));
244
+ console.log(chalk.yellow('⚠ Some issues detected. Please resolve them for optimal performance.\n'));
116
245
  process.exit(1);
117
246
  }
118
247
  else {
119
- console.log(chalk_1.default.green('✓ All checks passed!\n'));
248
+ console.log(chalk.green('✓ All checks passed!\n'));
120
249
  // Show a helpful tip after successful health check (unless in assistant context)
121
250
  if (!process.env.CODEMIE_IN_ASSISTANT) {
122
- tips_1.tipDisplay.showRandomTip();
251
+ tipDisplay.showRandomTip();
123
252
  }
124
253
  }
125
254
  });
126
255
  return command;
127
256
  }
257
+ async function checkSSOConfiguration(config) {
258
+ console.log(chalk.bold('🔐 SSO Configuration:'));
259
+ // Check CodeMie URL
260
+ if (config.codeMieUrl) {
261
+ console.log(` ${chalk.green('✓')} CodeMie URL: ${config.codeMieUrl}`);
262
+ const connectivitySpinner = ora('Checking CodeMie server connectivity...').start();
263
+ try {
264
+ await validateCodeMieConnectivity();
265
+ connectivitySpinner.succeed(chalk.green('CodeMie server accessible'));
266
+ }
267
+ catch (error) {
268
+ connectivitySpinner.fail(chalk.red('CodeMie server not accessible'));
269
+ console.log(` ${chalk.dim('Error:')} ${error instanceof Error ? error.message : String(error)}`);
270
+ }
271
+ }
272
+ else {
273
+ console.log(` ${chalk.red('✗')} CodeMie URL not configured`);
274
+ }
275
+ // Check SSO credentials
276
+ try {
277
+ const sso = new CodeMieSSO();
278
+ const credentials = await sso.getStoredCredentials();
279
+ if (credentials) {
280
+ console.log(` ${chalk.green('✓')} SSO credentials stored`);
281
+ // Check expiration
282
+ if (credentials.expiresAt) {
283
+ const expiresIn = Math.max(0, credentials.expiresAt - Date.now());
284
+ if (expiresIn > 0) {
285
+ const hours = Math.floor(expiresIn / (1000 * 60 * 60));
286
+ console.log(` ${chalk.green('✓')} Session expires in: ${hours} hours`);
287
+ }
288
+ else {
289
+ console.log(` ${chalk.red('✗')} SSO session expired`);
290
+ console.log(` ${chalk.dim('Run: codemie auth refresh')}`);
291
+ }
292
+ }
293
+ // Test API access
294
+ const apiSpinner = ora('Testing API access...').start();
295
+ try {
296
+ const models = await fetchCodeMieModelsFromConfig();
297
+ apiSpinner.succeed(chalk.green(`API access working (${models.length} models available)`));
298
+ }
299
+ catch (error) {
300
+ apiSpinner.fail(chalk.red('API access failed'));
301
+ console.log(` ${chalk.dim('Error:')} ${error instanceof Error ? error.message : String(error)}`);
302
+ if (error instanceof Error && error.message.includes('expired')) {
303
+ console.log(` ${chalk.dim('Run: codemie auth refresh')}`);
304
+ }
305
+ }
306
+ // Check CodeMie integrations for ai-run-sso
307
+ if (config.codeMieIntegration) {
308
+ // Display alias if available, otherwise show ID
309
+ const displayValue = config.codeMieIntegration.alias || config.codeMieIntegration.id || 'unknown';
310
+ console.log(` ${chalk.green('✓')} Integration: ${displayValue}`);
311
+ const integrationSpinner = ora('Validating CodeMie integration...').start();
312
+ try {
313
+ const integrations = await fetchCodeMieIntegrationsFromConfig();
314
+ const litellmIntegrations = integrations.filter(i => i.credential_type === 'LiteLLM');
315
+ if (litellmIntegrations.length === 0) {
316
+ integrationSpinner.fail(chalk.red('No LiteLLM integrations found'));
317
+ console.log(` ${chalk.dim('Contact support to set up LiteLLM integration')}`);
318
+ }
319
+ else {
320
+ // Use ID for validation if available, otherwise fall back to alias
321
+ const validationKey = config.codeMieIntegration.id ? 'id' : 'alias';
322
+ const validationValue = config.codeMieIntegration.id || config.codeMieIntegration.alias;
323
+ const hasSelectedIntegration = litellmIntegrations.some(i => i[validationKey] === validationValue);
324
+ if (hasSelectedIntegration) {
325
+ const selectedIntegration = litellmIntegrations.find(i => i[validationKey] === validationValue);
326
+ const displayName = selectedIntegration?.project_name
327
+ ? `${selectedIntegration.alias} (${selectedIntegration.project_name})`
328
+ : selectedIntegration?.alias || validationValue;
329
+ integrationSpinner.succeed(chalk.green(`Integration validated: ${displayName}`));
330
+ }
331
+ else {
332
+ integrationSpinner.fail(chalk.red('Selected integration not found'));
333
+ console.log(` ${chalk.dim('Available LiteLLM integrations:')}`);
334
+ litellmIntegrations.forEach(integration => {
335
+ const displayName = integration.project_name
336
+ ? `${integration.alias} (${integration.project_name})`
337
+ : integration.alias;
338
+ console.log(` ${chalk.dim('•')} ${displayName}`);
339
+ });
340
+ console.log(` ${chalk.dim('Run: codemie setup to reconfigure')}`);
341
+ }
342
+ }
343
+ }
344
+ catch (error) {
345
+ integrationSpinner.fail(chalk.red('Integration validation failed'));
346
+ console.log(` ${chalk.dim('Error:')} ${error instanceof Error ? error.message : String(error)}`);
347
+ }
348
+ }
349
+ else {
350
+ console.log(` ${chalk.yellow('⚠')} No integration configured`);
351
+ console.log(` ${chalk.dim('This may indicate an older configuration. Run: codemie setup')}`);
352
+ }
353
+ }
354
+ else {
355
+ console.log(` ${chalk.red('✗')} SSO credentials not found`);
356
+ console.log(` ${chalk.dim('Run: codemie auth login')}`);
357
+ }
358
+ }
359
+ catch (error) {
360
+ console.log(` ${chalk.red('✗')} Error checking SSO credentials`);
361
+ console.log(` ${chalk.dim('Error:')} ${error instanceof Error ? error.message : String(error)}`);
362
+ }
363
+ console.log();
364
+ }
128
365
  //# sourceMappingURL=doctor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/cli/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,YAAY,EAAwB,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,kCAAkC,EAAE,MAAM,sCAAsC,CAAC;AACrJ,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAErF,MAAM,UAAU,mBAAmB;IACjC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC;IAEtC,OAAO;SACJ,WAAW,CAAC,uCAAuC,CAAC;SACpD,MAAM,CAAC,KAAK,IAAI,EAAE;QACjB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAE5D,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,wBAAwB;QACxB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC;YACpC,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAElE,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,WAAW,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,WAAW,2BAA2B,CAAC,CAAC;gBACtF,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YAC3D,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,YAAY;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACjD,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAE7C,IAAI,MAAM,CAAC;QACX,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,EAAE,CAAC;YAEnC,sDAAsD;YACtD,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;YACtC,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;YACpC,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YAClC,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAEhC,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YACpE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBAC3D,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YACnE,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;gBAC3D,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBACzG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;gBAC1D,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,IAAI,QAAQ,EAAE,CAAC;gBACb,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;gBACxD,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,kDAAkD;YAClD,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC3D,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,yBAAyB,YAAY,EAAE,CAAC,CAAC;YACxE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC;YACxD,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QAED,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,oDAAoD;QACpD,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YAC/C,MAAM,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;QAED,0FAA0F;QAC1F,IAAI,MAAM,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;YAClG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC9C,MAAM,aAAa,GAAG,GAAG,CAAC,wCAAwC,CAAC,CAAC,KAAK,EAAE,CAAC;YAE5E,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAExC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAClC,CAAC;gBAED,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,QAAQ,IAAI,CAAC,CAAC;gBAC9D,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;gBACxD,SAAS,GAAG,IAAI,CAAC;YACnB,CAAC;YAED,OAAO,CAAC,GAAG,EAAE,CAAC;YAEd,0BAA0B;YAC1B,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAClC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;gBAC/C,MAAM,aAAa,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,EAAE,CAAC;gBAElE,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC;wBACjD,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,GAAG;qBAC/B,CAAC,CAAC;oBAEH,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC/B,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,eAAe,CAAC,MAAM,mBAAmB,CAAC,CAAC,CAAC;wBAEvF,mCAAmC;wBACnC,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC;wBACrC,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;wBAE9D,IAAI,WAAW,EAAE,CAAC;4BAChB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,sBAAsB,eAAe,gBAAgB,CAAC,CAAC;wBAC1F,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,sBAAsB,eAAe,iCAAiC,CAAC,CAAC;4BAC1G,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACvI,SAAS,GAAG,IAAI,CAAC;wBACnB,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,CAAC;wBACzE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC3E,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAc,EAAE,CAAC;oBACxB,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC5E,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,4BAA4B,CAAC,CAAC,CAAC;oBAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;gBAC1D,CAAC;gBAED,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;QAC7C,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,kBAAkB,EAAE,CAAC;QAEjE,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;gBACpC,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE,CAAC;gBACzC,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,WAAW,GAAG,UAAU,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,kBAAkB;QAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC;QAEpC,iBAAiB;QACjB,IAAI,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,WAAW,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACvE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAC1D,CAAC;QAED,IAAI,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAG,WAAW,CAAC,EAAE,CAAC,aAAa;gBAC7C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAC5D,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,qBAAqB,WAAW,CAAC,EAAE,CAAC,OAAO,MAAM,UAAU,EAAE,CAAC,CAAC;QAClG,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,wCAAwC,CAAC,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa;gBAC/C,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,oBAAoB,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAC9D,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,uBAAuB,WAAW,CAAC,IAAI,CAAC,OAAO,MAAM,UAAU,EAAE,CAAC,CAAC;QACtG,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,0CAA0C,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,0BAA0B;QAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACnD,MAAM,YAAY,GAAG,iBAAiB,EAAE,CAAC;QAEzC,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YAE7D,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACxE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,WAAW,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;gBAEvE,2BAA2B;gBAC3B,MAAM,kBAAkB,GAAG,sBAAsB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACzE,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,MAAM,yBAAyB,CAAC,CAAC;oBACzF,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;wBACpC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;wBAC3C,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;oBACrD,CAAC,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;oBAC1D,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,gEAAgE,CAAC,EAAE,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,YAAY,CAAC,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAC1D,CAAC;QACD,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,UAAU;QACV,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,wEAAwE,CAAC,CAAC,CAAC;YACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;YACnD,iFAAiF;YACjF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,CAAC;gBACtC,UAAU,CAAC,aAAa,EAAE,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,MAA4B;IAC/D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAEjD,oBAAoB;IACpB,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;QAEvE,MAAM,mBAAmB,GAAG,GAAG,CAAC,yCAAyC,CAAC,CAAC,KAAK,EAAE,CAAC;QACnF,IAAI,CAAC;YACH,MAAM,2BAA2B,EAAE,CAAC;YACpC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACxE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACpG,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAChE,CAAC;IAED,wBAAwB;IACxB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,oBAAoB,EAAE,CAAC;QAErD,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YAE5D,mBAAmB;YACnB,IAAI,WAAW,CAAC,SAAS,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClE,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;oBAClB,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;oBACvD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,wBAAwB,KAAK,QAAQ,CAAC,CAAC;gBAC1E,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;oBACvD,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;YAED,kBAAkB;YAClB,MAAM,UAAU,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,EAAE,CAAC;YACxD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,4BAA4B,EAAE,CAAC;gBACpD,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,uBAAuB,MAAM,CAAC,MAAM,oBAAoB,CAAC,CAAC,CAAC;YAC5F,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBAChD,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBAElG,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAChE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,2BAA2B,CAAC,EAAE,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC;YAED,4CAA4C;YAC5C,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBAC9B,gDAAgD;gBAChD,MAAM,YAAY,GAAG,MAAM,CAAC,kBAAkB,CAAC,KAAK,IAAI,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,SAAS,CAAC;gBAClG,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,YAAY,EAAE,CAAC,CAAC;gBAElE,MAAM,kBAAkB,GAAG,GAAG,CAAC,mCAAmC,CAAC,CAAC,KAAK,EAAE,CAAC;gBAC5E,IAAI,CAAC;oBACH,MAAM,YAAY,GAAG,MAAM,kCAAkC,EAAE,CAAC;oBAChE,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC;oBAEtF,IAAI,mBAAmB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACrC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;wBACpE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,+CAA+C,CAAC,EAAE,CAAC,CAAC;oBACrF,CAAC;yBAAM,CAAC;wBACN,mEAAmE;wBACnE,MAAM,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;wBACpE,MAAM,eAAe,GAAG,MAAM,CAAC,kBAAkB,CAAC,EAAE,IAAI,MAAM,CAAC,kBAAkB,CAAC,KAAK,CAAC;wBACxF,MAAM,sBAAsB,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,eAAe,CAAC,CAAC;wBAEnG,IAAI,sBAAsB,EAAE,CAAC;4BAC3B,MAAM,mBAAmB,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,KAAK,eAAe,CAAC,CAAC;4BAChG,MAAM,WAAW,GAAG,mBAAmB,EAAE,YAAY;gCACnD,CAAC,CAAC,GAAG,mBAAmB,CAAC,KAAK,KAAK,mBAAmB,CAAC,YAAY,GAAG;gCACtE,CAAC,CAAC,mBAAmB,EAAE,KAAK,IAAI,eAAe,CAAC;4BAElD,kBAAkB,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,0BAA0B,WAAW,EAAE,CAAC,CAAC,CAAC;wBACnF,CAAC;6BAAM,CAAC;4BACN,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC,CAAC;4BACrE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,iCAAiC,CAAC,EAAE,CAAC,CAAC;4BACrE,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gCACxC,MAAM,WAAW,GAAG,WAAW,CAAC,YAAY;oCAC1C,CAAC,CAAC,GAAG,WAAW,CAAC,KAAK,KAAK,WAAW,CAAC,YAAY,GAAG;oCACtD,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC;gCACtB,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;4BAC1D,CAAC,CAAC,CAAC;4BACH,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,mCAAmC,CAAC,EAAE,CAAC,CAAC;wBACzE,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC,CAAC;oBACpE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;gBACpG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,8DAA8D,CAAC,EAAE,CAAC,CAAC;YACpG,CAAC;QAEH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACpG,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare function createEnvCommand(): Command;
3
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,wBAAgB,gBAAgB,IAAI,OAAO,CAmB1C"}
@@ -0,0 +1,19 @@
1
+ import { Command } from 'commander';
2
+ import { FirstTimeExperience } from '../../utils/first-time.js';
3
+ export function createEnvCommand() {
4
+ const command = new Command('env');
5
+ command
6
+ .description('Show complete manual configuration guide with environment variables and setup commands')
7
+ .argument('[provider]', 'Provider: litellm, bedrock, azure', 'litellm')
8
+ .action((provider) => {
9
+ const validProviders = ['litellm', 'bedrock', 'azure'];
10
+ if (!validProviders.includes(provider)) {
11
+ console.error(`Invalid provider: ${provider}`);
12
+ console.error(`Valid providers: ${validProviders.join(', ')}`);
13
+ process.exit(1);
14
+ }
15
+ FirstTimeExperience.showManualSetup(provider);
16
+ });
17
+ return command;
18
+ }
19
+ //# sourceMappingURL=env.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../../../src/cli/commands/env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,MAAM,UAAU,gBAAgB;IAC9B,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC;IAEnC,OAAO;SACJ,WAAW,CAAC,wFAAwF,CAAC;SACrG,QAAQ,CAAC,YAAY,EAAE,mCAAmC,EAAE,SAAS,CAAC;SACtE,MAAM,CAAC,CAAC,QAAgB,EAAE,EAAE;QAC3B,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAEvD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,qBAAqB,QAAQ,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,oBAAoB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,mBAAmB,CAAC,eAAe,CAAC,QAA2C,CAAC,CAAC;IACnF,CAAC,CAAC,CAAC;IAEL,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,oBAAoB,IAAI,OAAO,CA4E9C"}
1
+ {"version":3,"file":"install.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/install.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,oBAAoB,IAAI,OAAO,CA6E9C"}
@@ -1,64 +1,59 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createInstallCommand = createInstallCommand;
7
- const commander_1 = require("commander");
8
- const registry_1 = require("../../agents/registry");
9
- const logger_1 = require("../../utils/logger");
10
- const async_tips_1 = require("../../utils/async-tips");
11
- const errors_1 = require("../../utils/errors");
12
- const ora_1 = __importDefault(require("ora"));
13
- const chalk_1 = __importDefault(require("chalk"));
14
- function createInstallCommand() {
15
- const command = new commander_1.Command('install');
1
+ import { Command } from 'commander';
2
+ import { AgentRegistry } from '../../agents/registry.js';
3
+ import { logger } from '../../utils/logger.js';
4
+ import { asyncTipDisplay } from '../../utils/async-tips.js';
5
+ import { AgentInstallationError } from '../../utils/errors.js';
6
+ import ora from 'ora';
7
+ import chalk from 'chalk';
8
+ export function createInstallCommand() {
9
+ const command = new Command('install');
16
10
  command
17
- .description('Install an agent')
18
- .argument('[agent]', 'Agent name to install')
11
+ .description('Install an external AI coding agent (e.g., claude, codex)')
12
+ .argument('[agent]', 'Agent name to install (run without argument to see available agents)')
19
13
  .action(async (agentName) => {
20
14
  try {
21
15
  // If no agent name provided, show available agents
22
16
  if (!agentName) {
23
- const agents = registry_1.AgentRegistry.getAllAgents();
17
+ const agents = AgentRegistry.getAllAgents();
24
18
  console.log();
25
- console.log(chalk_1.default.bold('Available agents to install:\n'));
19
+ console.log(chalk.bold('Available agents to install:\n'));
26
20
  for (const agent of agents) {
27
21
  const installed = await agent.isInstalled();
28
- const status = installed ? chalk_1.default.green('✓ installed') : chalk_1.default.yellow('○ not installed');
22
+ const status = installed ? chalk.green('✓ installed') : chalk.yellow('○ not installed');
29
23
  const version = installed ? await agent.getVersion() : null;
30
- const versionStr = version ? chalk_1.default.gray(` (${version})`) : '';
31
- console.log(chalk_1.default.bold(` ${agent.displayName}`) + versionStr);
32
- console.log(` Command: ${chalk_1.default.cyan(`codemie install ${agent.name}`)}`);
24
+ const versionStr = version ? chalk.gray(` (${version})`) : '';
25
+ console.log(chalk.bold(` ${agent.displayName}`) + versionStr);
26
+ console.log(` Command: ${chalk.cyan(`codemie install ${agent.name}`)}`);
33
27
  console.log(` Status: ${status}`);
34
- console.log(` ${chalk_1.default.gray(agent.description)}`);
28
+ console.log(` ${chalk.gray(agent.description)}`);
35
29
  console.log();
36
30
  }
37
- console.log(chalk_1.default.cyan('💡 Tip:') + ' Run ' + chalk_1.default.blueBright('codemie install <agent>') + ' to install an agent');
31
+ console.log(chalk.cyan('💡 Tip:') + ' Run ' + chalk.blueBright('codemie install <agent>') + ' to install an agent');
38
32
  console.log();
39
33
  return;
40
34
  }
41
- const agent = registry_1.AgentRegistry.getAgent(agentName);
35
+ const agent = AgentRegistry.getAgent(agentName);
42
36
  if (!agent) {
43
- throw new errors_1.AgentInstallationError(agentName, `Unknown agent. Use 'codemie list' to see available agents.`);
37
+ throw new AgentInstallationError(agentName, `Unknown agent. Use 'codemie list' to see available agents.`);
44
38
  }
45
39
  // Check if already installed
46
40
  if (await agent.isInstalled()) {
47
- logger_1.logger.info(`${agent.displayName} is already installed`);
41
+ logger.info(`${agent.displayName} is already installed`);
48
42
  return;
49
43
  }
50
- const spinner = (0, ora_1.default)(`Installing ${agent.displayName}...`).start();
44
+ const spinner = ora(`Installing ${agent.displayName}...`).start();
51
45
  try {
52
46
  // Show tips during installation
53
47
  const installPromise = agent.install();
54
- const stopTips = async_tips_1.asyncTipDisplay.showDuring(installPromise);
48
+ const stopTips = asyncTipDisplay.showDuring(installPromise);
55
49
  await installPromise;
56
50
  stopTips();
57
51
  spinner.succeed(`${agent.displayName} installed successfully`);
58
52
  // Show how to run the newly installed agent
59
53
  console.log();
60
- console.log(chalk_1.default.cyan('💡 Next steps:'));
61
- console.log(chalk_1.default.white(` Run the agent with:`), chalk_1.default.blueBright(`codemie run ${agentName}`));
54
+ console.log(chalk.cyan('💡 Next steps:'));
55
+ console.log(chalk.white(` Interactive mode:`), chalk.blueBright(`codemie-${agentName}`));
56
+ console.log(chalk.white(` Single task:`), chalk.blueBright(`codemie-${agentName} --task "your task"`));
62
57
  console.log();
63
58
  }
64
59
  catch (error) {
@@ -67,7 +62,7 @@ function createInstallCommand() {
67
62
  }
68
63
  }
69
64
  catch (error) {
70
- logger_1.logger.error('Installation failed:', error);
65
+ logger.error('Installation failed:', error);
71
66
  process.exit(1);
72
67
  }
73
68
  });