@adverant-nexus/cli 2.0.1 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (641) hide show
  1. package/README.md +34 -552
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/auth/auth-client.d.ts +84 -0
  4. package/dist/auth/auth-client.d.ts.map +1 -0
  5. package/dist/auth/auth-client.js +145 -0
  6. package/dist/auth/auth-client.js.map +1 -0
  7. package/dist/auth/credentials-manager.d.ts +82 -0
  8. package/dist/auth/credentials-manager.d.ts.map +1 -0
  9. package/dist/auth/credentials-manager.js +200 -0
  10. package/dist/auth/credentials-manager.js.map +1 -0
  11. package/dist/cli.d.ts +4 -29
  12. package/dist/cli.d.ts.map +1 -1
  13. package/dist/cli.js +167 -111
  14. package/dist/cli.js.map +1 -1
  15. package/dist/commands/agent/index.d.ts +1 -2
  16. package/dist/commands/agent/index.d.ts.map +1 -1
  17. package/dist/commands/agent/index.js +1 -3
  18. package/dist/commands/agent/index.js.map +1 -1
  19. package/dist/commands/agent/list.d.ts +0 -1
  20. package/dist/commands/agent/list.d.ts.map +1 -1
  21. package/dist/commands/agent/list.js +32 -29
  22. package/dist/commands/agent/list.js.map +1 -1
  23. package/dist/commands/agent/run.d.ts +1 -3
  24. package/dist/commands/agent/run.d.ts.map +1 -1
  25. package/dist/commands/agent/run.js +92 -107
  26. package/dist/commands/agent/run.js.map +1 -1
  27. package/dist/commands/agent/status.d.ts +0 -1
  28. package/dist/commands/agent/status.d.ts.map +1 -1
  29. package/dist/commands/agent/status.js +37 -32
  30. package/dist/commands/agent/status.js.map +1 -1
  31. package/dist/commands/api-key/create.d.ts +10 -0
  32. package/dist/commands/api-key/create.d.ts.map +1 -0
  33. package/dist/commands/api-key/create.js +314 -0
  34. package/dist/commands/api-key/create.js.map +1 -0
  35. package/dist/commands/api-key/delete.d.ts +10 -0
  36. package/dist/commands/api-key/delete.d.ts.map +1 -0
  37. package/dist/commands/api-key/delete.js +132 -0
  38. package/dist/commands/api-key/delete.js.map +1 -0
  39. package/dist/commands/api-key/index.d.ts +11 -0
  40. package/dist/commands/api-key/index.d.ts.map +1 -0
  41. package/dist/commands/api-key/index.js +11 -0
  42. package/dist/commands/api-key/index.js.map +1 -0
  43. package/dist/commands/api-key/info.d.ts +10 -0
  44. package/dist/commands/api-key/info.d.ts.map +1 -0
  45. package/dist/commands/api-key/info.js +163 -0
  46. package/dist/commands/api-key/info.js.map +1 -0
  47. package/dist/commands/api-key/list.d.ts +10 -0
  48. package/dist/commands/api-key/list.d.ts.map +1 -0
  49. package/dist/commands/api-key/list.js +130 -0
  50. package/dist/commands/api-key/list.js.map +1 -0
  51. package/dist/commands/api-key/rotate.d.ts +10 -0
  52. package/dist/commands/api-key/rotate.d.ts.map +1 -0
  53. package/dist/commands/api-key/rotate.js +196 -0
  54. package/dist/commands/api-key/rotate.js.map +1 -0
  55. package/dist/commands/auth/index.d.ts +10 -0
  56. package/dist/commands/auth/index.d.ts.map +1 -0
  57. package/dist/commands/auth/index.js +10 -0
  58. package/dist/commands/auth/index.js.map +1 -0
  59. package/dist/commands/auth/login.d.ts +10 -0
  60. package/dist/commands/auth/login.d.ts.map +1 -0
  61. package/dist/commands/auth/login.js +162 -0
  62. package/dist/commands/auth/login.js.map +1 -0
  63. package/dist/commands/auth/logout.d.ts +10 -0
  64. package/dist/commands/auth/logout.d.ts.map +1 -0
  65. package/dist/commands/auth/logout.js +89 -0
  66. package/dist/commands/auth/logout.js.map +1 -0
  67. package/dist/commands/auth/register.d.ts +10 -0
  68. package/dist/commands/auth/register.d.ts.map +1 -0
  69. package/dist/commands/auth/register.js +289 -0
  70. package/dist/commands/auth/register.js.map +1 -0
  71. package/dist/commands/auth/whoami.d.ts +10 -0
  72. package/dist/commands/auth/whoami.d.ts.map +1 -0
  73. package/dist/commands/auth/whoami.js +220 -0
  74. package/dist/commands/auth/whoami.js.map +1 -0
  75. package/dist/commands/dynamic/graphrag-commands.d.ts +1 -7
  76. package/dist/commands/dynamic/graphrag-commands.d.ts.map +1 -1
  77. package/dist/commands/dynamic/graphrag-commands.js +23 -440
  78. package/dist/commands/dynamic/graphrag-commands.js.map +1 -1
  79. package/dist/commands/dynamic/index.d.ts +3 -1
  80. package/dist/commands/dynamic/index.d.ts.map +1 -1
  81. package/dist/commands/dynamic/index.js +1 -0
  82. package/dist/commands/dynamic/index.js.map +1 -1
  83. package/dist/commands/dynamic/mageagent-commands.d.ts +3 -1
  84. package/dist/commands/dynamic/mageagent-commands.d.ts.map +1 -1
  85. package/dist/commands/dynamic/mageagent-commands.js +52 -13
  86. package/dist/commands/dynamic/mageagent-commands.js.map +1 -1
  87. package/dist/commands/dynamic/{nexus-commands.d.ts → mcp-commands.d.ts} +17 -22
  88. package/dist/commands/dynamic/mcp-commands.d.ts.map +1 -0
  89. package/dist/commands/dynamic/mcp-commands.js +199 -0
  90. package/dist/commands/dynamic/mcp-commands.js.map +1 -0
  91. package/dist/commands/dynamic/mcp-tool-mapper.d.ts +8 -17
  92. package/dist/commands/dynamic/mcp-tool-mapper.d.ts.map +1 -1
  93. package/dist/commands/dynamic/mcp-tool-mapper.js +28 -105
  94. package/dist/commands/dynamic/mcp-tool-mapper.js.map +1 -1
  95. package/dist/commands/dynamic/sandbox-commands.d.ts +3 -1
  96. package/dist/commands/dynamic/sandbox-commands.d.ts.map +1 -1
  97. package/dist/commands/dynamic/sandbox-commands.js +48 -13
  98. package/dist/commands/dynamic/sandbox-commands.js.map +1 -1
  99. package/dist/commands/org/create.d.ts +10 -0
  100. package/dist/commands/org/create.d.ts.map +1 -0
  101. package/dist/commands/org/create.js +134 -0
  102. package/dist/commands/org/create.js.map +1 -0
  103. package/dist/commands/org/index.d.ts +10 -0
  104. package/dist/commands/org/index.d.ts.map +1 -0
  105. package/dist/commands/org/index.js +10 -0
  106. package/dist/commands/org/index.js.map +1 -0
  107. package/dist/commands/org/info.d.ts +10 -0
  108. package/dist/commands/org/info.d.ts.map +1 -0
  109. package/dist/commands/org/info.js +129 -0
  110. package/dist/commands/org/info.js.map +1 -0
  111. package/dist/commands/org/list.d.ts +10 -0
  112. package/dist/commands/org/list.d.ts.map +1 -0
  113. package/dist/commands/org/list.js +99 -0
  114. package/dist/commands/org/list.js.map +1 -0
  115. package/dist/commands/org/switch.d.ts +10 -0
  116. package/dist/commands/org/switch.d.ts.map +1 -0
  117. package/dist/commands/org/switch.js +129 -0
  118. package/dist/commands/org/switch.js.map +1 -0
  119. package/dist/commands/plugin/disable.d.ts +1 -1
  120. package/dist/commands/plugin/disable.d.ts.map +1 -1
  121. package/dist/commands/plugin/disable.js +35 -22
  122. package/dist/commands/plugin/disable.js.map +1 -1
  123. package/dist/commands/plugin/enable.d.ts +1 -1
  124. package/dist/commands/plugin/enable.d.ts.map +1 -1
  125. package/dist/commands/plugin/enable.js +48 -27
  126. package/dist/commands/plugin/enable.js.map +1 -1
  127. package/dist/commands/plugin/index.d.ts +1 -1
  128. package/dist/commands/plugin/index.d.ts.map +1 -1
  129. package/dist/commands/plugin/index.js +19 -16
  130. package/dist/commands/plugin/index.js.map +1 -1
  131. package/dist/commands/plugin/info.d.ts +1 -1
  132. package/dist/commands/plugin/info.d.ts.map +1 -1
  133. package/dist/commands/plugin/info.js +115 -113
  134. package/dist/commands/plugin/info.js.map +1 -1
  135. package/dist/commands/plugin/init.d.ts +1 -1
  136. package/dist/commands/plugin/init.d.ts.map +1 -1
  137. package/dist/commands/plugin/init.js +226 -69
  138. package/dist/commands/plugin/init.js.map +1 -1
  139. package/dist/commands/plugin/install.d.ts +1 -1
  140. package/dist/commands/plugin/install.d.ts.map +1 -1
  141. package/dist/commands/plugin/install.js +69 -44
  142. package/dist/commands/plugin/install.js.map +1 -1
  143. package/dist/commands/plugin/list.d.ts +1 -1
  144. package/dist/commands/plugin/list.d.ts.map +1 -1
  145. package/dist/commands/plugin/list.js +98 -58
  146. package/dist/commands/plugin/list.js.map +1 -1
  147. package/dist/commands/plugin/uninstall.d.ts +1 -1
  148. package/dist/commands/plugin/uninstall.d.ts.map +1 -1
  149. package/dist/commands/plugin/uninstall.js +44 -38
  150. package/dist/commands/plugin/uninstall.js.map +1 -1
  151. package/dist/commands/services/health.d.ts +4 -3
  152. package/dist/commands/services/health.d.ts.map +1 -1
  153. package/dist/commands/services/health.js +171 -60
  154. package/dist/commands/services/health.js.map +1 -1
  155. package/dist/commands/services/index.d.ts +2 -10
  156. package/dist/commands/services/index.d.ts.map +1 -1
  157. package/dist/commands/services/index.js +26 -20
  158. package/dist/commands/services/index.js.map +1 -1
  159. package/dist/commands/services/info.d.ts +4 -3
  160. package/dist/commands/services/info.d.ts.map +1 -1
  161. package/dist/commands/services/info.js +142 -60
  162. package/dist/commands/services/info.js.map +1 -1
  163. package/dist/commands/services/list.d.ts +2 -3
  164. package/dist/commands/services/list.d.ts.map +1 -1
  165. package/dist/commands/services/list.js +85 -36
  166. package/dist/commands/services/list.js.map +1 -1
  167. package/dist/commands/services/logs.d.ts +4 -3
  168. package/dist/commands/services/logs.d.ts.map +1 -1
  169. package/dist/commands/services/logs.js +55 -94
  170. package/dist/commands/services/logs.js.map +1 -1
  171. package/dist/commands/services/ports.d.ts +4 -3
  172. package/dist/commands/services/ports.d.ts.map +1 -1
  173. package/dist/commands/services/ports.js +129 -58
  174. package/dist/commands/services/ports.js.map +1 -1
  175. package/dist/commands/services/restart.d.ts +4 -3
  176. package/dist/commands/services/restart.d.ts.map +1 -1
  177. package/dist/commands/services/restart.js +89 -55
  178. package/dist/commands/services/restart.js.map +1 -1
  179. package/dist/commands/services/start.d.ts +4 -3
  180. package/dist/commands/services/start.d.ts.map +1 -1
  181. package/dist/commands/services/start.js +87 -55
  182. package/dist/commands/services/start.js.map +1 -1
  183. package/dist/commands/services/status.d.ts +2 -3
  184. package/dist/commands/services/status.d.ts.map +1 -1
  185. package/dist/commands/services/status.js +141 -82
  186. package/dist/commands/services/status.js.map +1 -1
  187. package/dist/commands/services/stop.d.ts +4 -3
  188. package/dist/commands/services/stop.d.ts.map +1 -1
  189. package/dist/commands/services/stop.js +91 -55
  190. package/dist/commands/services/stop.js.map +1 -1
  191. package/dist/commands/session/delete.js +2 -2
  192. package/dist/commands/session/delete.js.map +1 -1
  193. package/dist/commands/session/export.js +3 -3
  194. package/dist/commands/session/export.js.map +1 -1
  195. package/dist/commands/session/import.d.ts.map +1 -1
  196. package/dist/commands/session/import.js +3 -4
  197. package/dist/commands/session/import.js.map +1 -1
  198. package/dist/commands/session/list.d.ts.map +1 -1
  199. package/dist/commands/session/list.js +3 -3
  200. package/dist/commands/session/list.js.map +1 -1
  201. package/dist/commands/session/load.d.ts.map +1 -1
  202. package/dist/commands/session/load.js +4 -4
  203. package/dist/commands/session/load.js.map +1 -1
  204. package/dist/commands/session/resume.d.ts.map +1 -1
  205. package/dist/commands/session/resume.js +36 -15
  206. package/dist/commands/session/resume.js.map +1 -1
  207. package/dist/commands/session/save.d.ts.map +1 -1
  208. package/dist/commands/session/save.js +20 -15
  209. package/dist/commands/session/save.js.map +1 -1
  210. package/dist/commands/workspace/git-commit.d.ts.map +1 -1
  211. package/dist/commands/workspace/git-commit.js +16 -33
  212. package/dist/commands/workspace/git-commit.js.map +1 -1
  213. package/dist/commands/workspace/git-status.d.ts.map +1 -1
  214. package/dist/commands/workspace/git-status.js +22 -17
  215. package/dist/commands/workspace/git-status.js.map +1 -1
  216. package/dist/commands/workspace/index.d.ts.map +1 -1
  217. package/dist/commands/workspace/index.js +0 -1
  218. package/dist/commands/workspace/index.js.map +1 -1
  219. package/dist/commands/workspace/info.d.ts.map +1 -1
  220. package/dist/commands/workspace/info.js +26 -133
  221. package/dist/commands/workspace/info.js.map +1 -1
  222. package/dist/commands/workspace/init.d.ts.map +1 -1
  223. package/dist/commands/workspace/init.js +10 -13
  224. package/dist/commands/workspace/init.js.map +1 -1
  225. package/dist/commands/workspace/validate.d.ts.map +1 -1
  226. package/dist/commands/workspace/validate.js +12 -16
  227. package/dist/commands/workspace/validate.js.map +1 -1
  228. package/dist/core/config/config-manager.d.ts +16 -3
  229. package/dist/core/config/config-manager.d.ts.map +1 -1
  230. package/dist/core/config/config-manager.js +57 -89
  231. package/dist/core/config/config-manager.js.map +1 -1
  232. package/dist/core/config/index.d.ts +10 -0
  233. package/dist/core/config/index.d.ts.map +1 -0
  234. package/dist/core/config/index.js +9 -0
  235. package/dist/core/config/index.js.map +1 -0
  236. package/dist/core/config/profile-manager.d.ts +1 -1
  237. package/dist/core/config/profile-manager.d.ts.map +1 -1
  238. package/dist/core/config/profile-manager.js +39 -22
  239. package/dist/core/config/profile-manager.js.map +1 -1
  240. package/dist/core/config/workspace-detector.d.ts +3 -3
  241. package/dist/core/config/workspace-detector.d.ts.map +1 -1
  242. package/dist/core/config/workspace-detector.js +17 -25
  243. package/dist/core/config/workspace-detector.js.map +1 -1
  244. package/dist/core/discovery/docker-parser.d.ts +32 -5
  245. package/dist/core/discovery/docker-parser.d.ts.map +1 -1
  246. package/dist/core/discovery/docker-parser.js +78 -118
  247. package/dist/core/discovery/docker-parser.js.map +1 -1
  248. package/dist/core/discovery/index.d.ts +6 -2
  249. package/dist/core/discovery/index.d.ts.map +1 -1
  250. package/dist/core/discovery/index.js +6 -2
  251. package/dist/core/discovery/index.js.map +1 -1
  252. package/dist/core/discovery/mcp-discovery.d.ts +33 -2
  253. package/dist/core/discovery/mcp-discovery.d.ts.map +1 -1
  254. package/dist/core/discovery/mcp-discovery.js +74 -40
  255. package/dist/core/discovery/mcp-discovery.js.map +1 -1
  256. package/dist/core/discovery/openapi-parser.d.ts +39 -1
  257. package/dist/core/discovery/openapi-parser.d.ts.map +1 -1
  258. package/dist/core/discovery/openapi-parser.js +60 -5
  259. package/dist/core/discovery/openapi-parser.js.map +1 -1
  260. package/dist/core/discovery/plugin-discovery.d.ts +45 -2
  261. package/dist/core/discovery/plugin-discovery.d.ts.map +1 -1
  262. package/dist/core/discovery/plugin-discovery.js +53 -2
  263. package/dist/core/discovery/plugin-discovery.js.map +1 -1
  264. package/dist/core/discovery/service-discovery.d.ts +110 -7
  265. package/dist/core/discovery/service-discovery.d.ts.map +1 -1
  266. package/dist/core/discovery/service-discovery.js +123 -23
  267. package/dist/core/discovery/service-discovery.js.map +1 -1
  268. package/dist/core/discovery/service-metadata-loader.d.ts +88 -0
  269. package/dist/core/discovery/service-metadata-loader.d.ts.map +1 -0
  270. package/dist/core/discovery/service-metadata-loader.js +161 -0
  271. package/dist/core/discovery/service-metadata-loader.js.map +1 -0
  272. package/dist/core/docker/docker-executor.d.ts +234 -0
  273. package/dist/core/docker/docker-executor.d.ts.map +1 -0
  274. package/dist/core/docker/docker-executor.js +375 -0
  275. package/dist/core/docker/docker-executor.js.map +1 -0
  276. package/dist/core/logging/index.d.ts +7 -0
  277. package/dist/core/logging/index.d.ts.map +1 -0
  278. package/dist/core/logging/index.js +7 -0
  279. package/dist/core/logging/index.js.map +1 -0
  280. package/dist/core/logging/logger.d.ts +152 -0
  281. package/dist/core/logging/logger.d.ts.map +1 -0
  282. package/dist/core/logging/logger.js +338 -0
  283. package/dist/core/logging/logger.js.map +1 -0
  284. package/dist/core/router/command-registry.d.ts +145 -8
  285. package/dist/core/router/command-registry.d.ts.map +1 -1
  286. package/dist/core/router/command-registry.js +200 -13
  287. package/dist/core/router/command-registry.js.map +1 -1
  288. package/dist/core/router/command-router.d.ts +116 -6
  289. package/dist/core/router/command-router.d.ts.map +1 -1
  290. package/dist/core/router/command-router.js +223 -19
  291. package/dist/core/router/command-router.js.map +1 -1
  292. package/dist/core/router/examples/commander-integration.d.ts +20 -0
  293. package/dist/core/router/examples/commander-integration.d.ts.map +1 -0
  294. package/dist/core/router/examples/commander-integration.js +345 -0
  295. package/dist/core/router/examples/commander-integration.js.map +1 -0
  296. package/dist/core/router/index.d.ts +12 -4
  297. package/dist/core/router/index.d.ts.map +1 -1
  298. package/dist/core/router/index.js +14 -3
  299. package/dist/core/router/index.js.map +1 -1
  300. package/dist/core/router/middleware.d.ts +74 -0
  301. package/dist/core/router/middleware.d.ts.map +1 -0
  302. package/dist/core/router/middleware.js +227 -0
  303. package/dist/core/router/middleware.js.map +1 -0
  304. package/dist/core/session/context-manager.d.ts +9 -4
  305. package/dist/core/session/context-manager.d.ts.map +1 -1
  306. package/dist/core/session/context-manager.js +17 -8
  307. package/dist/core/session/context-manager.js.map +1 -1
  308. package/dist/core/session/env-sanitizer.d.ts +74 -0
  309. package/dist/core/session/env-sanitizer.d.ts.map +1 -0
  310. package/dist/core/session/env-sanitizer.js +219 -0
  311. package/dist/core/session/env-sanitizer.js.map +1 -0
  312. package/dist/core/session/history-manager.d.ts +1 -1
  313. package/dist/core/session/history-manager.d.ts.map +1 -1
  314. package/dist/core/session/history-manager.js +5 -2
  315. package/dist/core/session/history-manager.js.map +1 -1
  316. package/dist/core/session/index.d.ts +1 -0
  317. package/dist/core/session/index.d.ts.map +1 -1
  318. package/dist/core/session/index.js +1 -0
  319. package/dist/core/session/index.js.map +1 -1
  320. package/dist/core/session/session-manager.d.ts +13 -1
  321. package/dist/core/session/session-manager.d.ts.map +1 -1
  322. package/dist/core/session/session-manager.js +33 -2
  323. package/dist/core/session/session-manager.js.map +1 -1
  324. package/dist/core/session/session-storage.d.ts +4 -1
  325. package/dist/core/session/session-storage.d.ts.map +1 -1
  326. package/dist/core/session/session-storage.js +29 -27
  327. package/dist/core/session/session-storage.js.map +1 -1
  328. package/dist/core/transport/http-client.d.ts +82 -9
  329. package/dist/core/transport/http-client.d.ts.map +1 -1
  330. package/dist/core/transport/http-client.js +255 -130
  331. package/dist/core/transport/http-client.js.map +1 -1
  332. package/dist/core/transport/index.d.ts +2 -2
  333. package/dist/core/transport/index.d.ts.map +1 -1
  334. package/dist/core/transport/index.js +1 -1
  335. package/dist/core/transport/mcp-client.d.ts +87 -14
  336. package/dist/core/transport/mcp-client.d.ts.map +1 -1
  337. package/dist/core/transport/mcp-client.js +263 -63
  338. package/dist/core/transport/mcp-client.js.map +1 -1
  339. package/dist/core/transport/stream-handler.d.ts +36 -5
  340. package/dist/core/transport/stream-handler.d.ts.map +1 -1
  341. package/dist/core/transport/stream-handler.js +232 -43
  342. package/dist/core/transport/stream-handler.js.map +1 -1
  343. package/dist/core/transport/websocket-client.d.ts +31 -4
  344. package/dist/core/transport/websocket-client.d.ts.map +1 -1
  345. package/dist/core/transport/websocket-client.js +178 -65
  346. package/dist/core/transport/websocket-client.js.map +1 -1
  347. package/dist/index.d.ts +2 -3
  348. package/dist/index.d.ts.map +1 -1
  349. package/dist/index.js +56 -90
  350. package/dist/index.js.map +1 -1
  351. package/dist/output/index.d.ts +0 -3
  352. package/dist/output/index.d.ts.map +1 -1
  353. package/dist/output/index.js +4 -3
  354. package/dist/output/index.js.map +1 -1
  355. package/dist/repl/completer.d.ts +2 -2
  356. package/dist/repl/completer.d.ts.map +1 -1
  357. package/dist/repl/completer.js +5 -5
  358. package/dist/repl/completer.js.map +1 -1
  359. package/dist/repl/evaluator.d.ts +9 -3
  360. package/dist/repl/evaluator.d.ts.map +1 -1
  361. package/dist/repl/evaluator.js +78 -20
  362. package/dist/repl/evaluator.js.map +1 -1
  363. package/dist/repl/renderer.d.ts +2 -2
  364. package/dist/repl/renderer.d.ts.map +1 -1
  365. package/dist/repl/renderer.js +4 -5
  366. package/dist/repl/renderer.js.map +1 -1
  367. package/dist/repl/repl.d.ts +8 -4
  368. package/dist/repl/repl.d.ts.map +1 -1
  369. package/dist/repl/repl.js +68 -34
  370. package/dist/repl/repl.js.map +1 -1
  371. package/dist/session/context-manager.d.ts +5 -0
  372. package/dist/session/context-manager.d.ts.map +1 -0
  373. package/dist/session/context-manager.js +5 -0
  374. package/dist/session/context-manager.js.map +1 -0
  375. package/dist/session/history-manager.d.ts +5 -0
  376. package/dist/session/history-manager.d.ts.map +1 -0
  377. package/dist/session/history-manager.js +5 -0
  378. package/dist/session/history-manager.js.map +1 -0
  379. package/dist/session/session-manager.d.ts +5 -0
  380. package/dist/session/session-manager.d.ts.map +1 -0
  381. package/dist/session/session-manager.js +5 -0
  382. package/dist/session/session-manager.js.map +1 -0
  383. package/dist/utils/banner.d.ts +55 -0
  384. package/dist/utils/banner.d.ts.map +1 -0
  385. package/dist/utils/banner.js +257 -0
  386. package/dist/utils/banner.js.map +1 -0
  387. package/package.json +21 -36
  388. package/ARCHITECTURE.md +0 -1366
  389. package/LICENSE +0 -21
  390. package/completions/_nexus +0 -452
  391. package/completions/nexus.bash +0 -329
  392. package/completions/nexus.fish +0 -187
  393. package/dist/commands/compute/agent.d.ts +0 -21
  394. package/dist/commands/compute/agent.d.ts.map +0 -1
  395. package/dist/commands/compute/agent.js +0 -158
  396. package/dist/commands/compute/agent.js.map +0 -1
  397. package/dist/commands/compute/index.d.ts +0 -10
  398. package/dist/commands/compute/index.d.ts.map +0 -1
  399. package/dist/commands/compute/index.js +0 -27
  400. package/dist/commands/compute/index.js.map +0 -1
  401. package/dist/commands/compute/lib/hardware-detection.d.ts +0 -52
  402. package/dist/commands/compute/lib/hardware-detection.d.ts.map +0 -1
  403. package/dist/commands/compute/lib/hardware-detection.js +0 -432
  404. package/dist/commands/compute/lib/hardware-detection.js.map +0 -1
  405. package/dist/commands/compute/lib/local-compute-agent.d.ts +0 -143
  406. package/dist/commands/compute/lib/local-compute-agent.d.ts.map +0 -1
  407. package/dist/commands/compute/lib/local-compute-agent.js +0 -1162
  408. package/dist/commands/compute/lib/local-compute-agent.js.map +0 -1
  409. package/dist/commands/compute/lib/local-compute-client.d.ts +0 -89
  410. package/dist/commands/compute/lib/local-compute-client.d.ts.map +0 -1
  411. package/dist/commands/compute/lib/local-compute-client.js +0 -388
  412. package/dist/commands/compute/lib/local-compute-client.js.map +0 -1
  413. package/dist/commands/compute/list.d.ts +0 -14
  414. package/dist/commands/compute/list.d.ts.map +0 -1
  415. package/dist/commands/compute/list.js +0 -164
  416. package/dist/commands/compute/list.js.map +0 -1
  417. package/dist/commands/compute/logs.d.ts +0 -14
  418. package/dist/commands/compute/logs.d.ts.map +0 -1
  419. package/dist/commands/compute/logs.js +0 -105
  420. package/dist/commands/compute/logs.js.map +0 -1
  421. package/dist/commands/compute/resources.d.ts +0 -14
  422. package/dist/commands/compute/resources.d.ts.map +0 -1
  423. package/dist/commands/compute/resources.js +0 -163
  424. package/dist/commands/compute/resources.js.map +0 -1
  425. package/dist/commands/compute/status.d.ts +0 -13
  426. package/dist/commands/compute/status.d.ts.map +0 -1
  427. package/dist/commands/compute/status.js +0 -223
  428. package/dist/commands/compute/status.js.map +0 -1
  429. package/dist/commands/compute/submit.d.ts +0 -19
  430. package/dist/commands/compute/submit.d.ts.map +0 -1
  431. package/dist/commands/compute/submit.js +0 -99
  432. package/dist/commands/compute/submit.js.map +0 -1
  433. package/dist/commands/deploy.d.ts +0 -11
  434. package/dist/commands/deploy.d.ts.map +0 -1
  435. package/dist/commands/deploy.js +0 -117
  436. package/dist/commands/deploy.js.map +0 -1
  437. package/dist/commands/dynamic/nexus-commands.d.ts.map +0 -1
  438. package/dist/commands/dynamic/nexus-commands.js +0 -426
  439. package/dist/commands/dynamic/nexus-commands.js.map +0 -1
  440. package/dist/commands/init.d.ts +0 -11
  441. package/dist/commands/init.d.ts.map +0 -1
  442. package/dist/commands/init.js +0 -128
  443. package/dist/commands/init.js.map +0 -1
  444. package/dist/commands/list.d.ts +0 -10
  445. package/dist/commands/list.d.ts.map +0 -1
  446. package/dist/commands/list.js +0 -81
  447. package/dist/commands/list.js.map +0 -1
  448. package/dist/commands/login.d.ts +0 -10
  449. package/dist/commands/login.d.ts.map +0 -1
  450. package/dist/commands/login.js +0 -83
  451. package/dist/commands/login.js.map +0 -1
  452. package/dist/commands/logs.d.ts +0 -11
  453. package/dist/commands/logs.d.ts.map +0 -1
  454. package/dist/commands/logs.js +0 -79
  455. package/dist/commands/logs.js.map +0 -1
  456. package/dist/commands/nexus/index.d.ts +0 -69
  457. package/dist/commands/nexus/index.d.ts.map +0 -1
  458. package/dist/commands/nexus/index.js +0 -336
  459. package/dist/commands/nexus/index.js.map +0 -1
  460. package/dist/commands/register.d.ts +0 -10
  461. package/dist/commands/register.d.ts.map +0 -1
  462. package/dist/commands/register.js +0 -85
  463. package/dist/commands/register.js.map +0 -1
  464. package/dist/core/agent-client.d.ts +0 -49
  465. package/dist/core/agent-client.d.ts.map +0 -1
  466. package/dist/core/agent-client.js +0 -289
  467. package/dist/core/agent-client.js.map +0 -1
  468. package/dist/core/nexus-client.d.ts +0 -119
  469. package/dist/core/nexus-client.d.ts.map +0 -1
  470. package/dist/core/nexus-client.js +0 -292
  471. package/dist/core/nexus-client.js.map +0 -1
  472. package/dist/core/nexus-tool-executor.d.ts +0 -102
  473. package/dist/core/nexus-tool-executor.d.ts.map +0 -1
  474. package/dist/core/nexus-tool-executor.js +0 -386
  475. package/dist/core/nexus-tool-executor.js.map +0 -1
  476. package/dist/core/react-handler.d.ts +0 -17
  477. package/dist/core/react-handler.d.ts.map +0 -1
  478. package/dist/core/react-handler.js +0 -296
  479. package/dist/core/react-handler.js.map +0 -1
  480. package/dist/output/formatters/index.d.ts +0 -9
  481. package/dist/output/formatters/index.d.ts.map +0 -1
  482. package/dist/output/formatters/index.js +0 -9
  483. package/dist/output/formatters/index.js.map +0 -1
  484. package/dist/output/formatters/json-formatter.d.ts +0 -71
  485. package/dist/output/formatters/json-formatter.d.ts.map +0 -1
  486. package/dist/output/formatters/json-formatter.js +0 -236
  487. package/dist/output/formatters/json-formatter.js.map +0 -1
  488. package/dist/output/formatters/stream-formatter.d.ts +0 -107
  489. package/dist/output/formatters/stream-formatter.d.ts.map +0 -1
  490. package/dist/output/formatters/stream-formatter.js +0 -247
  491. package/dist/output/formatters/stream-formatter.js.map +0 -1
  492. package/dist/output/formatters/table-formatter.d.ts +0 -63
  493. package/dist/output/formatters/table-formatter.d.ts.map +0 -1
  494. package/dist/output/formatters/table-formatter.js +0 -294
  495. package/dist/output/formatters/table-formatter.js.map +0 -1
  496. package/dist/output/formatters/text-formatter.d.ts +0 -63
  497. package/dist/output/formatters/text-formatter.d.ts.map +0 -1
  498. package/dist/output/formatters/text-formatter.js +0 -202
  499. package/dist/output/formatters/text-formatter.js.map +0 -1
  500. package/dist/output/formatters/yaml-formatter.d.ts +0 -71
  501. package/dist/output/formatters/yaml-formatter.d.ts.map +0 -1
  502. package/dist/output/formatters/yaml-formatter.js +0 -239
  503. package/dist/output/formatters/yaml-formatter.js.map +0 -1
  504. package/dist/output/output-manager.d.ts +0 -156
  505. package/dist/output/output-manager.d.ts.map +0 -1
  506. package/dist/output/output-manager.js +0 -339
  507. package/dist/output/output-manager.js.map +0 -1
  508. package/dist/output/renderers/index.d.ts +0 -6
  509. package/dist/output/renderers/index.d.ts.map +0 -1
  510. package/dist/output/renderers/index.js +0 -6
  511. package/dist/output/renderers/index.js.map +0 -1
  512. package/dist/output/renderers/progress-renderer.d.ts +0 -56
  513. package/dist/output/renderers/progress-renderer.d.ts.map +0 -1
  514. package/dist/output/renderers/progress-renderer.js +0 -306
  515. package/dist/output/renderers/progress-renderer.js.map +0 -1
  516. package/dist/output/renderers/terminal-renderer.d.ts +0 -117
  517. package/dist/output/renderers/terminal-renderer.d.ts.map +0 -1
  518. package/dist/output/renderers/terminal-renderer.js +0 -294
  519. package/dist/output/renderers/terminal-renderer.js.map +0 -1
  520. package/dist/plugins/index.d.ts +0 -12
  521. package/dist/plugins/index.d.ts.map +0 -1
  522. package/dist/plugins/index.js +0 -18
  523. package/dist/plugins/index.js.map +0 -1
  524. package/dist/plugins/plugin-loader.d.ts +0 -37
  525. package/dist/plugins/plugin-loader.d.ts.map +0 -1
  526. package/dist/plugins/plugin-loader.js +0 -155
  527. package/dist/plugins/plugin-loader.js.map +0 -1
  528. package/dist/plugins/plugin-manager.d.ts +0 -78
  529. package/dist/plugins/plugin-manager.d.ts.map +0 -1
  530. package/dist/plugins/plugin-manager.js +0 -310
  531. package/dist/plugins/plugin-manager.js.map +0 -1
  532. package/dist/plugins/plugin-sdk.d.ts +0 -136
  533. package/dist/plugins/plugin-sdk.d.ts.map +0 -1
  534. package/dist/plugins/plugin-sdk.js +0 -260
  535. package/dist/plugins/plugin-sdk.js.map +0 -1
  536. package/dist/plugins/plugin-storage.d.ts +0 -109
  537. package/dist/plugins/plugin-storage.d.ts.map +0 -1
  538. package/dist/plugins/plugin-storage.js +0 -207
  539. package/dist/plugins/plugin-storage.js.map +0 -1
  540. package/dist/plugins/plugin-validator.d.ts +0 -44
  541. package/dist/plugins/plugin-validator.d.ts.map +0 -1
  542. package/dist/plugins/plugin-validator.js +0 -272
  543. package/dist/plugins/plugin-validator.js.map +0 -1
  544. package/dist/plugins/template-generator.d.ts +0 -35
  545. package/dist/plugins/template-generator.d.ts.map +0 -1
  546. package/dist/plugins/template-generator.js +0 -438
  547. package/dist/plugins/template-generator.js.map +0 -1
  548. package/dist/templates/python.d.ts +0 -15
  549. package/dist/templates/python.d.ts.map +0 -1
  550. package/dist/templates/python.js +0 -375
  551. package/dist/templates/python.js.map +0 -1
  552. package/dist/templates/typescript.d.ts +0 -15
  553. package/dist/templates/typescript.d.ts.map +0 -1
  554. package/dist/templates/typescript.js +0 -274
  555. package/dist/templates/typescript.js.map +0 -1
  556. package/dist/types/agent.d.ts +0 -109
  557. package/dist/types/agent.d.ts.map +0 -1
  558. package/dist/types/agent.js +0 -7
  559. package/dist/types/agent.js.map +0 -1
  560. package/dist/types/api.d.ts +0 -125
  561. package/dist/types/api.d.ts.map +0 -1
  562. package/dist/types/api.js +0 -53
  563. package/dist/types/api.js.map +0 -1
  564. package/dist/types/command.d.ts +0 -101
  565. package/dist/types/command.d.ts.map +0 -1
  566. package/dist/types/command.js +0 -7
  567. package/dist/types/command.js.map +0 -1
  568. package/dist/types/compute.d.ts +0 -317
  569. package/dist/types/compute.d.ts.map +0 -1
  570. package/dist/types/compute.js +0 -19
  571. package/dist/types/compute.js.map +0 -1
  572. package/dist/types/config.d.ts +0 -71
  573. package/dist/types/config.d.ts.map +0 -1
  574. package/dist/types/config.js +0 -7
  575. package/dist/types/config.js.map +0 -1
  576. package/dist/types/errors.d.ts +0 -56
  577. package/dist/types/errors.d.ts.map +0 -1
  578. package/dist/types/errors.js +0 -64
  579. package/dist/types/errors.js.map +0 -1
  580. package/dist/types/index.d.ts +0 -16
  581. package/dist/types/index.d.ts.map +0 -1
  582. package/dist/types/index.js +0 -16
  583. package/dist/types/index.js.map +0 -1
  584. package/dist/types/nexus.d.ts +0 -254
  585. package/dist/types/nexus.d.ts.map +0 -1
  586. package/dist/types/nexus.js +0 -7
  587. package/dist/types/nexus.js.map +0 -1
  588. package/dist/types/output.d.ts +0 -107
  589. package/dist/types/output.d.ts.map +0 -1
  590. package/dist/types/output.js +0 -7
  591. package/dist/types/output.js.map +0 -1
  592. package/dist/types/plugin.d.ts +0 -118
  593. package/dist/types/plugin.d.ts.map +0 -1
  594. package/dist/types/plugin.js +0 -7
  595. package/dist/types/plugin.js.map +0 -1
  596. package/dist/types/service.d.ts +0 -94
  597. package/dist/types/service.d.ts.map +0 -1
  598. package/dist/types/service.js +0 -15
  599. package/dist/types/service.js.map +0 -1
  600. package/dist/types/session.d.ts +0 -80
  601. package/dist/types/session.d.ts.map +0 -1
  602. package/dist/types/session.js +0 -7
  603. package/dist/types/session.js.map +0 -1
  604. package/dist/types/transport.d.ts +0 -96
  605. package/dist/types/transport.d.ts.map +0 -1
  606. package/dist/types/transport.js +0 -7
  607. package/dist/types/transport.js.map +0 -1
  608. package/dist/utils/config.d.ts +0 -47
  609. package/dist/utils/config.d.ts.map +0 -1
  610. package/dist/utils/config.js +0 -166
  611. package/dist/utils/config.js.map +0 -1
  612. package/dist/utils/error-handler.d.ts +0 -82
  613. package/dist/utils/error-handler.d.ts.map +0 -1
  614. package/dist/utils/error-handler.js +0 -238
  615. package/dist/utils/error-handler.js.map +0 -1
  616. package/dist/utils/index.d.ts +0 -9
  617. package/dist/utils/index.d.ts.map +0 -1
  618. package/dist/utils/index.js +0 -9
  619. package/dist/utils/index.js.map +0 -1
  620. package/dist/utils/logger.d.ts +0 -61
  621. package/dist/utils/logger.d.ts.map +0 -1
  622. package/dist/utils/logger.js +0 -200
  623. package/dist/utils/logger.js.map +0 -1
  624. package/dist/utils/prompt.d.ts +0 -57
  625. package/dist/utils/prompt.d.ts.map +0 -1
  626. package/dist/utils/prompt.js +0 -141
  627. package/dist/utils/prompt.js.map +0 -1
  628. package/dist/utils/spinner.d.ts +0 -47
  629. package/dist/utils/spinner.d.ts.map +0 -1
  630. package/dist/utils/spinner.js +0 -123
  631. package/dist/utils/spinner.js.map +0 -1
  632. package/dist/utils/validation.d.ts +0 -97
  633. package/dist/utils/validation.d.ts.map +0 -1
  634. package/dist/utils/validation.js +0 -289
  635. package/dist/utils/validation.js.map +0 -1
  636. package/docs/COMPLETIONS.md +0 -528
  637. package/docs/REPL.md +0 -466
  638. package/docs/graphrag-commands.md +0 -387
  639. package/scripts/install-completions.sh +0 -356
  640. package/scripts/prepublish.js +0 -522
  641. package/scripts/verify-package.js +0 -505
@@ -1,33 +1,143 @@
1
1
  /**
2
2
  * Command Router
3
3
  *
4
- * Routes commands to appropriate handlers
4
+ * Routes commands to appropriate handlers with:
5
+ * - Intelligent command resolution (namespace, aliases, etc.)
6
+ * - Argument validation
7
+ * - Error handling
8
+ * - Performance tracking
9
+ * - Middleware support
5
10
  */
6
- import type { Command, CommandArgs, CommandContext, CommandResult } from '../../types/command.js';
11
+ import type { Command, CommandArgs, CommandContext, CommandResult } from '@adverant-nexus/types';
7
12
  import { CommandRegistry } from './command-registry.js';
13
+ /**
14
+ * Middleware function type for command execution
15
+ */
16
+ export type CommandMiddleware = (command: Command, args: CommandArgs, context: CommandContext, next: () => Promise<CommandResult>) => Promise<CommandResult>;
17
+ /**
18
+ * Command Router Implementation
19
+ *
20
+ * Handles:
21
+ * - Command resolution with multiple strategies
22
+ * - Validation before execution
23
+ * - Middleware chain execution
24
+ * - Error handling and reporting
25
+ * - Performance metrics
26
+ */
8
27
  export declare class CommandRouter {
9
28
  private registry;
29
+ private middlewares;
10
30
  constructor(registry: CommandRegistry);
31
+ /**
32
+ * Add middleware to the execution chain
33
+ *
34
+ * Middleware is executed in the order it was added
35
+ *
36
+ * @param middleware - Middleware function
37
+ *
38
+ * @example
39
+ * router.use(async (command, args, context, next) => {
40
+ * console.log(`Executing ${command.name}`);
41
+ * const result = await next();
42
+ * console.log(`Completed ${command.name}`);
43
+ * return result;
44
+ * });
45
+ */
46
+ use(middleware: CommandMiddleware): void;
11
47
  /**
12
48
  * Route and execute a command
49
+ *
50
+ * Execution flow:
51
+ * 1. Find command using resolution strategies
52
+ * 2. Validate arguments if validator exists
53
+ * 3. Execute middleware chain
54
+ * 4. Execute command handler
55
+ * 5. Return result with metadata
56
+ *
57
+ * @param commandName - Command name (can include namespace)
58
+ * @param args - Command arguments
59
+ * @param context - Execution context
60
+ * @returns Command execution result
13
61
  */
14
62
  route(commandName: string, args: CommandArgs, context: CommandContext): Promise<CommandResult>;
15
63
  /**
16
- * Find command by name, trying multiple resolution strategies
64
+ * Execute command with middleware chain
65
+ *
66
+ * @param command - Command to execute
67
+ * @param args - Command arguments
68
+ * @param context - Execution context
69
+ * @param index - Current middleware index
70
+ * @returns Command result
71
+ */
72
+ private executeWithMiddleware;
73
+ /**
74
+ * Find command by name using multiple resolution strategies
75
+ *
76
+ * Resolution strategies (in order):
77
+ * 1. Direct lookup (exact match)
78
+ * 2. Namespace prefix (e.g., "services:health")
79
+ * 3. Common namespaces (services, graphrag, mageagent, etc.)
80
+ * 4. Command aliases
81
+ *
82
+ * @param commandName - Command name to find
83
+ * @returns Command definition or undefined
17
84
  */
18
85
  private findCommand;
19
86
  /**
20
- * Get all available commands
87
+ * Get all available commands, optionally filtered by namespace
88
+ *
89
+ * @param namespace - Optional namespace filter
90
+ * @returns Array of commands
21
91
  */
22
92
  listCommands(namespace?: string): Command[];
23
93
  /**
24
- * Get all namespaces
94
+ * Get all registered namespaces
95
+ *
96
+ * @returns Array of namespace strings
25
97
  */
26
98
  listNamespaces(): string[];
27
99
  /**
28
- * Search commands
100
+ * Search for commands by keyword
101
+ *
102
+ * @param keyword - Search keyword
103
+ * @returns Array of matching commands
29
104
  */
30
105
  searchCommands(keyword: string): Command[];
106
+ /**
107
+ * Get commands organized by category
108
+ *
109
+ * @returns Map of category to commands
110
+ */
111
+ getCommandsByCategory(): Map<string, Command[]>;
112
+ /**
113
+ * Validate command exists and is accessible
114
+ *
115
+ * @param commandName - Command name to validate
116
+ * @param context - Execution context (for auth/workspace checks)
117
+ * @returns Validation result with error message if invalid
118
+ */
119
+ validateCommand(commandName: string, context: CommandContext): {
120
+ valid: boolean;
121
+ error?: string;
122
+ command?: Command;
123
+ };
124
+ /**
125
+ * Get command help text
126
+ *
127
+ * @param commandName - Command name
128
+ * @returns Help text or undefined if command not found
129
+ */
130
+ getCommandHelp(commandName: string): string | undefined;
131
+ /**
132
+ * Clear all registered middleware
133
+ */
134
+ clearMiddleware(): void;
31
135
  }
136
+ /**
137
+ * Factory function to create a new CommandRouter instance
138
+ *
139
+ * @param registry - Command registry to use
140
+ * @returns New CommandRouter instance
141
+ */
32
142
  export declare function createCommandRouter(registry: CommandRegistry): CommandRouter;
33
143
  //# sourceMappingURL=command-router.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"command-router.d.ts","sourceRoot":"","sources":["../../../src/core/router/command-router.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,aAAa,EACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,qBAAa,aAAa;IACZ,OAAO,CAAC,QAAQ;gBAAR,QAAQ,EAAE,eAAe;IAE7C;;OAEG;IACG,KAAK,CACT,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC;IAgDzB;;OAEG;IACH,OAAO,CAAC,WAAW;IA8BnB;;OAEG;IACH,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE;IAI3C;;OAEG;IACH,cAAc,IAAI,MAAM,EAAE;IAI1B;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE;CAG3C;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe,GAAG,aAAa,CAE5E"}
1
+ {"version":3,"file":"command-router.d.ts","sourceRoot":"","sources":["../../../src/core/router/command-router.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,aAAa,EACd,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,CAC9B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,cAAc,EACvB,IAAI,EAAE,MAAM,OAAO,CAAC,aAAa,CAAC,KAC/B,OAAO,CAAC,aAAa,CAAC,CAAC;AAE5B;;;;;;;;;GASG;AACH,qBAAa,aAAa;IAGZ,OAAO,CAAC,QAAQ;IAF5B,OAAO,CAAC,WAAW,CAA2B;gBAE1B,QAAQ,EAAE,eAAe;IAE7C;;;;;;;;;;;;;;OAcG;IACH,GAAG,CAAC,UAAU,EAAE,iBAAiB,GAAG,IAAI;IAIxC;;;;;;;;;;;;;;OAcG;IACG,KAAK,CACT,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,WAAW,EACjB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC;IAuEzB;;;;;;;;OAQG;YACW,qBAAqB;IAqBnC;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,WAAW;IAqCnB;;;;;OAKG;IACH,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,EAAE;IAI3C;;;;OAIG;IACH,cAAc,IAAI,MAAM,EAAE;IAI1B;;;;;OAKG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,EAAE;IAI1C;;;;OAIG;IACH,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;IAI/C;;;;;;OAMG;IACH,eAAe,CACb,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,cAAc,GACtB;QAAE,KAAK,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE;IAkCxD;;;;;OAKG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;IAwCvD;;OAEG;IACH,eAAe,IAAI,IAAI;CAGxB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,eAAe,GAAG,aAAa,CAE5E"}
@@ -1,18 +1,64 @@
1
1
  /**
2
2
  * Command Router
3
3
  *
4
- * Routes commands to appropriate handlers
4
+ * Routes commands to appropriate handlers with:
5
+ * - Intelligent command resolution (namespace, aliases, etc.)
6
+ * - Argument validation
7
+ * - Error handling
8
+ * - Performance tracking
9
+ * - Middleware support
10
+ */
11
+ /**
12
+ * Command Router Implementation
13
+ *
14
+ * Handles:
15
+ * - Command resolution with multiple strategies
16
+ * - Validation before execution
17
+ * - Middleware chain execution
18
+ * - Error handling and reporting
19
+ * - Performance metrics
5
20
  */
6
21
  export class CommandRouter {
7
22
  registry;
23
+ middlewares = [];
8
24
  constructor(registry) {
9
25
  this.registry = registry;
10
26
  }
27
+ /**
28
+ * Add middleware to the execution chain
29
+ *
30
+ * Middleware is executed in the order it was added
31
+ *
32
+ * @param middleware - Middleware function
33
+ *
34
+ * @example
35
+ * router.use(async (command, args, context, next) => {
36
+ * console.log(`Executing ${command.name}`);
37
+ * const result = await next();
38
+ * console.log(`Completed ${command.name}`);
39
+ * return result;
40
+ * });
41
+ */
42
+ use(middleware) {
43
+ this.middlewares.push(middleware);
44
+ }
11
45
  /**
12
46
  * Route and execute a command
47
+ *
48
+ * Execution flow:
49
+ * 1. Find command using resolution strategies
50
+ * 2. Validate arguments if validator exists
51
+ * 3. Execute middleware chain
52
+ * 4. Execute command handler
53
+ * 5. Return result with metadata
54
+ *
55
+ * @param commandName - Command name (can include namespace)
56
+ * @param args - Command arguments
57
+ * @param context - Execution context
58
+ * @returns Command execution result
13
59
  */
14
60
  async route(commandName, args, context) {
15
- // Try to find command
61
+ // Find command using multiple resolution strategies
16
62
  const command = this.findCommand(commandName);
17
63
  if (!command) {
18
64
  return {
@@ -22,41 +68,88 @@ export class CommandRouter {
22
68
  }
23
69
  // Validate arguments if validator exists
24
70
  if (command.validator) {
25
- const validation = await command.validator(args, context);
26
- if (!validation.valid) {
27
- const errors = validation.errors?.map((e) => e.message).join(', ');
71
+ try {
72
+ const validation = await command.validator(args, context);
73
+ if (!validation.valid) {
74
+ const errors = validation.errors?.map((e) => e.message).join(', ');
75
+ return {
76
+ success: false,
77
+ error: `Validation failed: ${errors}`,
78
+ };
79
+ }
80
+ }
81
+ catch (error) {
28
82
  return {
29
83
  success: false,
30
- error: `Validation failed: ${errors}`,
84
+ error: `Validation error: ${error.message}`,
31
85
  };
32
86
  }
33
87
  }
34
- // Execute command handler
88
+ // Execute command with middleware chain
35
89
  try {
36
90
  const startTime = Date.now();
37
- const result = await command.handler(args, context);
91
+ // Build middleware chain
92
+ const result = await this.executeWithMiddleware(command, args, context, 0);
38
93
  const duration = Date.now() - startTime;
94
+ // Add execution metadata
39
95
  return {
40
96
  ...result,
41
97
  metadata: {
42
98
  ...result.metadata,
43
99
  duration,
44
- service: command.namespace,
100
+ ...(command.namespace && { service: command.namespace }),
45
101
  },
46
102
  };
47
103
  }
48
104
  catch (error) {
49
- return {
105
+ // Handle unexpected errors
106
+ const errorResult = {
50
107
  success: false,
51
108
  error: error.message || 'Command execution failed',
52
- metadata: {
53
- service: command.namespace,
54
- },
55
109
  };
110
+ // Add metadata only if we have data to add
111
+ if (command.namespace || error.name || error.stack) {
112
+ errorResult.metadata = {
113
+ ...(command.namespace && { service: command.namespace }),
114
+ };
115
+ }
116
+ return errorResult;
117
+ }
118
+ }
119
+ /**
120
+ * Execute command with middleware chain
121
+ *
122
+ * @param command - Command to execute
123
+ * @param args - Command arguments
124
+ * @param context - Execution context
125
+ * @param index - Current middleware index
126
+ * @returns Command result
127
+ */
128
+ async executeWithMiddleware(command, args, context, index) {
129
+ // If we've reached the end of middleware chain, execute handler
130
+ if (index >= this.middlewares.length) {
131
+ return command.handler(args, context);
132
+ }
133
+ // Execute current middleware with next() function
134
+ const middleware = this.middlewares[index];
135
+ if (!middleware) {
136
+ return command.handler(args, context);
56
137
  }
138
+ return middleware(command, args, context, async () => {
139
+ return this.executeWithMiddleware(command, args, context, index + 1);
140
+ });
57
141
  }
58
142
  /**
59
- * Find command by name, trying multiple resolution strategies
143
+ * Find command by name using multiple resolution strategies
144
+ *
145
+ * Resolution strategies (in order):
146
+ * 1. Direct lookup (exact match)
147
+ * 2. Namespace prefix (e.g., "services:health")
148
+ * 3. Common namespaces (services, graphrag, mageagent, etc.)
149
+ * 4. Command aliases
150
+ *
151
+ * @param commandName - Command name to find
152
+ * @returns Command definition or undefined
60
153
  */
61
154
  findCommand(commandName) {
62
155
  // Strategy 1: Direct lookup
@@ -65,13 +158,20 @@ export class CommandRouter {
65
158
  return command;
66
159
  // Strategy 2: Try with namespace prefix (e.g., "graphrag:query")
67
160
  if (commandName.includes(':')) {
68
- const [namespace, name] = commandName.split(':', 2);
161
+ const [namespace = '', name = ''] = commandName.split(':', 2);
69
162
  command = this.registry.get(name, namespace);
70
163
  if (command)
71
164
  return command;
72
165
  }
73
166
  // Strategy 3: Try common namespaces
74
- const commonNamespaces = ['services', 'graphrag', 'mageagent', 'sandbox', 'nexus'];
167
+ const commonNamespaces = [
168
+ 'services',
169
+ 'graphrag',
170
+ 'mageagent',
171
+ 'sandbox',
172
+ 'mcp',
173
+ 'plugins',
174
+ ];
75
175
  for (const namespace of commonNamespaces) {
76
176
  command = this.registry.get(commandName, namespace);
77
177
  if (command)
@@ -87,24 +187,128 @@ export class CommandRouter {
87
187
  return undefined;
88
188
  }
89
189
  /**
90
- * Get all available commands
190
+ * Get all available commands, optionally filtered by namespace
191
+ *
192
+ * @param namespace - Optional namespace filter
193
+ * @returns Array of commands
91
194
  */
92
195
  listCommands(namespace) {
93
196
  return this.registry.list(namespace);
94
197
  }
95
198
  /**
96
- * Get all namespaces
199
+ * Get all registered namespaces
200
+ *
201
+ * @returns Array of namespace strings
97
202
  */
98
203
  listNamespaces() {
99
204
  return this.registry.listNamespaces();
100
205
  }
101
206
  /**
102
- * Search commands
207
+ * Search for commands by keyword
208
+ *
209
+ * @param keyword - Search keyword
210
+ * @returns Array of matching commands
103
211
  */
104
212
  searchCommands(keyword) {
105
213
  return this.registry.search(keyword);
106
214
  }
215
+ /**
216
+ * Get commands organized by category
217
+ *
218
+ * @returns Map of category to commands
219
+ */
220
+ getCommandsByCategory() {
221
+ return this.registry.getByCategory();
222
+ }
223
+ /**
224
+ * Validate command exists and is accessible
225
+ *
226
+ * @param commandName - Command name to validate
227
+ * @param context - Execution context (for auth/workspace checks)
228
+ * @returns Validation result with error message if invalid
229
+ */
230
+ validateCommand(commandName, context) {
231
+ const command = this.findCommand(commandName);
232
+ if (!command) {
233
+ return {
234
+ valid: false,
235
+ error: `Command '${commandName}' not found`,
236
+ };
237
+ }
238
+ // Check authentication requirement
239
+ if (command.requiresAuth && !context.config?.auth?.token) {
240
+ return {
241
+ valid: false,
242
+ error: `Command '${commandName}' requires authentication. Run 'nexus auth login' first.`,
243
+ command,
244
+ };
245
+ }
246
+ // Check workspace requirement
247
+ if (command.requiresWorkspace && !context.workspace) {
248
+ return {
249
+ valid: false,
250
+ error: `Command '${commandName}' requires a workspace. Run from within a project directory.`,
251
+ command,
252
+ };
253
+ }
254
+ return {
255
+ valid: true,
256
+ command,
257
+ };
258
+ }
259
+ /**
260
+ * Get command help text
261
+ *
262
+ * @param commandName - Command name
263
+ * @returns Help text or undefined if command not found
264
+ */
265
+ getCommandHelp(commandName) {
266
+ const command = this.findCommand(commandName);
267
+ if (!command)
268
+ return undefined;
269
+ let help = `${command.name} - ${command.description}\n\n`;
270
+ if (command.usage) {
271
+ help += `Usage: ${command.usage}\n\n`;
272
+ }
273
+ if (command.args && command.args.length > 0) {
274
+ help += 'Arguments:\n';
275
+ for (const arg of command.args) {
276
+ const required = arg.required ? '(required)' : '(optional)';
277
+ help += ` ${arg.name} ${required} - ${arg.description}\n`;
278
+ }
279
+ help += '\n';
280
+ }
281
+ if (command.options && command.options.length > 0) {
282
+ help += 'Options:\n';
283
+ for (const option of command.options) {
284
+ const flags = option.short
285
+ ? `-${option.short}, --${option.long}`
286
+ : `--${option.long}`;
287
+ help += ` ${flags} - ${option.description}\n`;
288
+ }
289
+ help += '\n';
290
+ }
291
+ if (command.examples && command.examples.length > 0) {
292
+ help += 'Examples:\n';
293
+ for (const example of command.examples) {
294
+ help += ` ${example}\n`;
295
+ }
296
+ }
297
+ return help;
298
+ }
299
+ /**
300
+ * Clear all registered middleware
301
+ */
302
+ clearMiddleware() {
303
+ this.middlewares = [];
304
+ }
107
305
  }
306
+ /**
307
+ * Factory function to create a new CommandRouter instance
308
+ *
309
+ * @param registry - Command registry to use
310
+ * @returns New CommandRouter instance
311
+ */
108
312
  export function createCommandRouter(registry) {
109
313
  return new CommandRouter(registry);
110
314
  }
@@ -1 +1 @@
1
- {"version":3,"file":"command-router.js","sourceRoot":"","sources":["../../../src/core/router/command-router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-router.js","sourceRoot":"","sources":["../../../src/core/router/command-router.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Commander.js Integration Example
3
+ *
4
+ * Shows how to integrate the command router with Commander.js
5
+ */
6
+ import { Command as CommanderCommand } from 'commander';
7
+ import { createCommandRegistry, createCommandRouter, type Command, type CommandContext } from '../index.js';
8
+ /**
9
+ * Convert router Command to Commander.js Command
10
+ */
11
+ export declare function commandToCommander(command: Command, router: ReturnType<typeof createCommandRouter>, context: CommandContext): CommanderCommand;
12
+ /**
13
+ * Create Commander.js program from router registry
14
+ */
15
+ export declare function createCommanderProgram(registry: ReturnType<typeof createCommandRegistry>, router: ReturnType<typeof createCommandRouter>, context: CommandContext): CommanderCommand;
16
+ /**
17
+ * Example: Full CLI setup with Commander.js
18
+ */
19
+ export declare function setupCLI(): Promise<void>;
20
+ //# sourceMappingURL=commander-integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commander-integration.d.ts","sourceRoot":"","sources":["../../../../src/core/router/examples/commander-integration.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACxD,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,KAAK,OAAO,EACZ,KAAK,cAAc,EAEpB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC9C,OAAO,EAAE,cAAc,GACtB,gBAAgB,CAuGlB;AA4BD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,EAClD,MAAM,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,EAC9C,OAAO,EAAE,cAAc,GACtB,gBAAgB,CAsDlB;AAED;;GAEG;AACH,wBAAsB,QAAQ,kBA2B7B"}