@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.
- package/README.md +34 -552
- package/dist/.tsbuildinfo +1 -0
- package/dist/auth/auth-client.d.ts +84 -0
- package/dist/auth/auth-client.d.ts.map +1 -0
- package/dist/auth/auth-client.js +145 -0
- package/dist/auth/auth-client.js.map +1 -0
- package/dist/auth/credentials-manager.d.ts +82 -0
- package/dist/auth/credentials-manager.d.ts.map +1 -0
- package/dist/auth/credentials-manager.js +200 -0
- package/dist/auth/credentials-manager.js.map +1 -0
- package/dist/cli.d.ts +4 -29
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +167 -111
- package/dist/cli.js.map +1 -1
- package/dist/commands/agent/index.d.ts +1 -2
- package/dist/commands/agent/index.d.ts.map +1 -1
- package/dist/commands/agent/index.js +1 -3
- package/dist/commands/agent/index.js.map +1 -1
- package/dist/commands/agent/list.d.ts +0 -1
- package/dist/commands/agent/list.d.ts.map +1 -1
- package/dist/commands/agent/list.js +32 -29
- package/dist/commands/agent/list.js.map +1 -1
- package/dist/commands/agent/run.d.ts +1 -3
- package/dist/commands/agent/run.d.ts.map +1 -1
- package/dist/commands/agent/run.js +92 -107
- package/dist/commands/agent/run.js.map +1 -1
- package/dist/commands/agent/status.d.ts +0 -1
- package/dist/commands/agent/status.d.ts.map +1 -1
- package/dist/commands/agent/status.js +37 -32
- package/dist/commands/agent/status.js.map +1 -1
- package/dist/commands/api-key/create.d.ts +10 -0
- package/dist/commands/api-key/create.d.ts.map +1 -0
- package/dist/commands/api-key/create.js +314 -0
- package/dist/commands/api-key/create.js.map +1 -0
- package/dist/commands/api-key/delete.d.ts +10 -0
- package/dist/commands/api-key/delete.d.ts.map +1 -0
- package/dist/commands/api-key/delete.js +132 -0
- package/dist/commands/api-key/delete.js.map +1 -0
- package/dist/commands/api-key/index.d.ts +11 -0
- package/dist/commands/api-key/index.d.ts.map +1 -0
- package/dist/commands/api-key/index.js +11 -0
- package/dist/commands/api-key/index.js.map +1 -0
- package/dist/commands/api-key/info.d.ts +10 -0
- package/dist/commands/api-key/info.d.ts.map +1 -0
- package/dist/commands/api-key/info.js +163 -0
- package/dist/commands/api-key/info.js.map +1 -0
- package/dist/commands/api-key/list.d.ts +10 -0
- package/dist/commands/api-key/list.d.ts.map +1 -0
- package/dist/commands/api-key/list.js +130 -0
- package/dist/commands/api-key/list.js.map +1 -0
- package/dist/commands/api-key/rotate.d.ts +10 -0
- package/dist/commands/api-key/rotate.d.ts.map +1 -0
- package/dist/commands/api-key/rotate.js +196 -0
- package/dist/commands/api-key/rotate.js.map +1 -0
- package/dist/commands/auth/index.d.ts +10 -0
- package/dist/commands/auth/index.d.ts.map +1 -0
- package/dist/commands/auth/index.js +10 -0
- package/dist/commands/auth/index.js.map +1 -0
- package/dist/commands/auth/login.d.ts +10 -0
- package/dist/commands/auth/login.d.ts.map +1 -0
- package/dist/commands/auth/login.js +162 -0
- package/dist/commands/auth/login.js.map +1 -0
- package/dist/commands/auth/logout.d.ts +10 -0
- package/dist/commands/auth/logout.d.ts.map +1 -0
- package/dist/commands/auth/logout.js +89 -0
- package/dist/commands/auth/logout.js.map +1 -0
- package/dist/commands/auth/register.d.ts +10 -0
- package/dist/commands/auth/register.d.ts.map +1 -0
- package/dist/commands/auth/register.js +289 -0
- package/dist/commands/auth/register.js.map +1 -0
- package/dist/commands/auth/whoami.d.ts +10 -0
- package/dist/commands/auth/whoami.d.ts.map +1 -0
- package/dist/commands/auth/whoami.js +220 -0
- package/dist/commands/auth/whoami.js.map +1 -0
- package/dist/commands/dynamic/graphrag-commands.d.ts +1 -7
- package/dist/commands/dynamic/graphrag-commands.d.ts.map +1 -1
- package/dist/commands/dynamic/graphrag-commands.js +23 -440
- package/dist/commands/dynamic/graphrag-commands.js.map +1 -1
- package/dist/commands/dynamic/index.d.ts +3 -1
- package/dist/commands/dynamic/index.d.ts.map +1 -1
- package/dist/commands/dynamic/index.js +1 -0
- package/dist/commands/dynamic/index.js.map +1 -1
- package/dist/commands/dynamic/mageagent-commands.d.ts +3 -1
- package/dist/commands/dynamic/mageagent-commands.d.ts.map +1 -1
- package/dist/commands/dynamic/mageagent-commands.js +52 -13
- package/dist/commands/dynamic/mageagent-commands.js.map +1 -1
- package/dist/commands/dynamic/{nexus-commands.d.ts → mcp-commands.d.ts} +17 -22
- package/dist/commands/dynamic/mcp-commands.d.ts.map +1 -0
- package/dist/commands/dynamic/mcp-commands.js +199 -0
- package/dist/commands/dynamic/mcp-commands.js.map +1 -0
- package/dist/commands/dynamic/mcp-tool-mapper.d.ts +8 -17
- package/dist/commands/dynamic/mcp-tool-mapper.d.ts.map +1 -1
- package/dist/commands/dynamic/mcp-tool-mapper.js +28 -105
- package/dist/commands/dynamic/mcp-tool-mapper.js.map +1 -1
- package/dist/commands/dynamic/sandbox-commands.d.ts +3 -1
- package/dist/commands/dynamic/sandbox-commands.d.ts.map +1 -1
- package/dist/commands/dynamic/sandbox-commands.js +48 -13
- package/dist/commands/dynamic/sandbox-commands.js.map +1 -1
- package/dist/commands/org/create.d.ts +10 -0
- package/dist/commands/org/create.d.ts.map +1 -0
- package/dist/commands/org/create.js +134 -0
- package/dist/commands/org/create.js.map +1 -0
- package/dist/commands/org/index.d.ts +10 -0
- package/dist/commands/org/index.d.ts.map +1 -0
- package/dist/commands/org/index.js +10 -0
- package/dist/commands/org/index.js.map +1 -0
- package/dist/commands/org/info.d.ts +10 -0
- package/dist/commands/org/info.d.ts.map +1 -0
- package/dist/commands/org/info.js +129 -0
- package/dist/commands/org/info.js.map +1 -0
- package/dist/commands/org/list.d.ts +10 -0
- package/dist/commands/org/list.d.ts.map +1 -0
- package/dist/commands/org/list.js +99 -0
- package/dist/commands/org/list.js.map +1 -0
- package/dist/commands/org/switch.d.ts +10 -0
- package/dist/commands/org/switch.d.ts.map +1 -0
- package/dist/commands/org/switch.js +129 -0
- package/dist/commands/org/switch.js.map +1 -0
- package/dist/commands/plugin/disable.d.ts +1 -1
- package/dist/commands/plugin/disable.d.ts.map +1 -1
- package/dist/commands/plugin/disable.js +35 -22
- package/dist/commands/plugin/disable.js.map +1 -1
- package/dist/commands/plugin/enable.d.ts +1 -1
- package/dist/commands/plugin/enable.d.ts.map +1 -1
- package/dist/commands/plugin/enable.js +48 -27
- package/dist/commands/plugin/enable.js.map +1 -1
- package/dist/commands/plugin/index.d.ts +1 -1
- package/dist/commands/plugin/index.d.ts.map +1 -1
- package/dist/commands/plugin/index.js +19 -16
- package/dist/commands/plugin/index.js.map +1 -1
- package/dist/commands/plugin/info.d.ts +1 -1
- package/dist/commands/plugin/info.d.ts.map +1 -1
- package/dist/commands/plugin/info.js +115 -113
- package/dist/commands/plugin/info.js.map +1 -1
- package/dist/commands/plugin/init.d.ts +1 -1
- package/dist/commands/plugin/init.d.ts.map +1 -1
- package/dist/commands/plugin/init.js +226 -69
- package/dist/commands/plugin/init.js.map +1 -1
- package/dist/commands/plugin/install.d.ts +1 -1
- package/dist/commands/plugin/install.d.ts.map +1 -1
- package/dist/commands/plugin/install.js +69 -44
- package/dist/commands/plugin/install.js.map +1 -1
- package/dist/commands/plugin/list.d.ts +1 -1
- package/dist/commands/plugin/list.d.ts.map +1 -1
- package/dist/commands/plugin/list.js +98 -58
- package/dist/commands/plugin/list.js.map +1 -1
- package/dist/commands/plugin/uninstall.d.ts +1 -1
- package/dist/commands/plugin/uninstall.d.ts.map +1 -1
- package/dist/commands/plugin/uninstall.js +44 -38
- package/dist/commands/plugin/uninstall.js.map +1 -1
- package/dist/commands/services/health.d.ts +4 -3
- package/dist/commands/services/health.d.ts.map +1 -1
- package/dist/commands/services/health.js +171 -60
- package/dist/commands/services/health.js.map +1 -1
- package/dist/commands/services/index.d.ts +2 -10
- package/dist/commands/services/index.d.ts.map +1 -1
- package/dist/commands/services/index.js +26 -20
- package/dist/commands/services/index.js.map +1 -1
- package/dist/commands/services/info.d.ts +4 -3
- package/dist/commands/services/info.d.ts.map +1 -1
- package/dist/commands/services/info.js +142 -60
- package/dist/commands/services/info.js.map +1 -1
- package/dist/commands/services/list.d.ts +2 -3
- package/dist/commands/services/list.d.ts.map +1 -1
- package/dist/commands/services/list.js +85 -36
- package/dist/commands/services/list.js.map +1 -1
- package/dist/commands/services/logs.d.ts +4 -3
- package/dist/commands/services/logs.d.ts.map +1 -1
- package/dist/commands/services/logs.js +55 -94
- package/dist/commands/services/logs.js.map +1 -1
- package/dist/commands/services/ports.d.ts +4 -3
- package/dist/commands/services/ports.d.ts.map +1 -1
- package/dist/commands/services/ports.js +129 -58
- package/dist/commands/services/ports.js.map +1 -1
- package/dist/commands/services/restart.d.ts +4 -3
- package/dist/commands/services/restart.d.ts.map +1 -1
- package/dist/commands/services/restart.js +89 -55
- package/dist/commands/services/restart.js.map +1 -1
- package/dist/commands/services/start.d.ts +4 -3
- package/dist/commands/services/start.d.ts.map +1 -1
- package/dist/commands/services/start.js +87 -55
- package/dist/commands/services/start.js.map +1 -1
- package/dist/commands/services/status.d.ts +2 -3
- package/dist/commands/services/status.d.ts.map +1 -1
- package/dist/commands/services/status.js +141 -82
- package/dist/commands/services/status.js.map +1 -1
- package/dist/commands/services/stop.d.ts +4 -3
- package/dist/commands/services/stop.d.ts.map +1 -1
- package/dist/commands/services/stop.js +91 -55
- package/dist/commands/services/stop.js.map +1 -1
- package/dist/commands/session/delete.js +2 -2
- package/dist/commands/session/delete.js.map +1 -1
- package/dist/commands/session/export.js +3 -3
- package/dist/commands/session/export.js.map +1 -1
- package/dist/commands/session/import.d.ts.map +1 -1
- package/dist/commands/session/import.js +3 -4
- package/dist/commands/session/import.js.map +1 -1
- package/dist/commands/session/list.d.ts.map +1 -1
- package/dist/commands/session/list.js +3 -3
- package/dist/commands/session/list.js.map +1 -1
- package/dist/commands/session/load.d.ts.map +1 -1
- package/dist/commands/session/load.js +4 -4
- package/dist/commands/session/load.js.map +1 -1
- package/dist/commands/session/resume.d.ts.map +1 -1
- package/dist/commands/session/resume.js +36 -15
- package/dist/commands/session/resume.js.map +1 -1
- package/dist/commands/session/save.d.ts.map +1 -1
- package/dist/commands/session/save.js +20 -15
- package/dist/commands/session/save.js.map +1 -1
- package/dist/commands/workspace/git-commit.d.ts.map +1 -1
- package/dist/commands/workspace/git-commit.js +16 -33
- package/dist/commands/workspace/git-commit.js.map +1 -1
- package/dist/commands/workspace/git-status.d.ts.map +1 -1
- package/dist/commands/workspace/git-status.js +22 -17
- package/dist/commands/workspace/git-status.js.map +1 -1
- package/dist/commands/workspace/index.d.ts.map +1 -1
- package/dist/commands/workspace/index.js +0 -1
- package/dist/commands/workspace/index.js.map +1 -1
- package/dist/commands/workspace/info.d.ts.map +1 -1
- package/dist/commands/workspace/info.js +26 -133
- package/dist/commands/workspace/info.js.map +1 -1
- package/dist/commands/workspace/init.d.ts.map +1 -1
- package/dist/commands/workspace/init.js +10 -13
- package/dist/commands/workspace/init.js.map +1 -1
- package/dist/commands/workspace/validate.d.ts.map +1 -1
- package/dist/commands/workspace/validate.js +12 -16
- package/dist/commands/workspace/validate.js.map +1 -1
- package/dist/core/config/config-manager.d.ts +16 -3
- package/dist/core/config/config-manager.d.ts.map +1 -1
- package/dist/core/config/config-manager.js +57 -89
- package/dist/core/config/config-manager.js.map +1 -1
- package/dist/core/config/index.d.ts +10 -0
- package/dist/core/config/index.d.ts.map +1 -0
- package/dist/core/config/index.js +9 -0
- package/dist/core/config/index.js.map +1 -0
- package/dist/core/config/profile-manager.d.ts +1 -1
- package/dist/core/config/profile-manager.d.ts.map +1 -1
- package/dist/core/config/profile-manager.js +39 -22
- package/dist/core/config/profile-manager.js.map +1 -1
- package/dist/core/config/workspace-detector.d.ts +3 -3
- package/dist/core/config/workspace-detector.d.ts.map +1 -1
- package/dist/core/config/workspace-detector.js +17 -25
- package/dist/core/config/workspace-detector.js.map +1 -1
- package/dist/core/discovery/docker-parser.d.ts +32 -5
- package/dist/core/discovery/docker-parser.d.ts.map +1 -1
- package/dist/core/discovery/docker-parser.js +78 -118
- package/dist/core/discovery/docker-parser.js.map +1 -1
- package/dist/core/discovery/index.d.ts +6 -2
- package/dist/core/discovery/index.d.ts.map +1 -1
- package/dist/core/discovery/index.js +6 -2
- package/dist/core/discovery/index.js.map +1 -1
- package/dist/core/discovery/mcp-discovery.d.ts +33 -2
- package/dist/core/discovery/mcp-discovery.d.ts.map +1 -1
- package/dist/core/discovery/mcp-discovery.js +74 -40
- package/dist/core/discovery/mcp-discovery.js.map +1 -1
- package/dist/core/discovery/openapi-parser.d.ts +39 -1
- package/dist/core/discovery/openapi-parser.d.ts.map +1 -1
- package/dist/core/discovery/openapi-parser.js +60 -5
- package/dist/core/discovery/openapi-parser.js.map +1 -1
- package/dist/core/discovery/plugin-discovery.d.ts +45 -2
- package/dist/core/discovery/plugin-discovery.d.ts.map +1 -1
- package/dist/core/discovery/plugin-discovery.js +53 -2
- package/dist/core/discovery/plugin-discovery.js.map +1 -1
- package/dist/core/discovery/service-discovery.d.ts +110 -7
- package/dist/core/discovery/service-discovery.d.ts.map +1 -1
- package/dist/core/discovery/service-discovery.js +123 -23
- package/dist/core/discovery/service-discovery.js.map +1 -1
- package/dist/core/discovery/service-metadata-loader.d.ts +88 -0
- package/dist/core/discovery/service-metadata-loader.d.ts.map +1 -0
- package/dist/core/discovery/service-metadata-loader.js +161 -0
- package/dist/core/discovery/service-metadata-loader.js.map +1 -0
- package/dist/core/docker/docker-executor.d.ts +234 -0
- package/dist/core/docker/docker-executor.d.ts.map +1 -0
- package/dist/core/docker/docker-executor.js +375 -0
- package/dist/core/docker/docker-executor.js.map +1 -0
- package/dist/core/logging/index.d.ts +7 -0
- package/dist/core/logging/index.d.ts.map +1 -0
- package/dist/core/logging/index.js +7 -0
- package/dist/core/logging/index.js.map +1 -0
- package/dist/core/logging/logger.d.ts +152 -0
- package/dist/core/logging/logger.d.ts.map +1 -0
- package/dist/core/logging/logger.js +338 -0
- package/dist/core/logging/logger.js.map +1 -0
- package/dist/core/router/command-registry.d.ts +145 -8
- package/dist/core/router/command-registry.d.ts.map +1 -1
- package/dist/core/router/command-registry.js +200 -13
- package/dist/core/router/command-registry.js.map +1 -1
- package/dist/core/router/command-router.d.ts +116 -6
- package/dist/core/router/command-router.d.ts.map +1 -1
- package/dist/core/router/command-router.js +223 -19
- package/dist/core/router/command-router.js.map +1 -1
- package/dist/core/router/examples/commander-integration.d.ts +20 -0
- package/dist/core/router/examples/commander-integration.d.ts.map +1 -0
- package/dist/core/router/examples/commander-integration.js +345 -0
- package/dist/core/router/examples/commander-integration.js.map +1 -0
- package/dist/core/router/index.d.ts +12 -4
- package/dist/core/router/index.d.ts.map +1 -1
- package/dist/core/router/index.js +14 -3
- package/dist/core/router/index.js.map +1 -1
- package/dist/core/router/middleware.d.ts +74 -0
- package/dist/core/router/middleware.d.ts.map +1 -0
- package/dist/core/router/middleware.js +227 -0
- package/dist/core/router/middleware.js.map +1 -0
- package/dist/core/session/context-manager.d.ts +9 -4
- package/dist/core/session/context-manager.d.ts.map +1 -1
- package/dist/core/session/context-manager.js +17 -8
- package/dist/core/session/context-manager.js.map +1 -1
- package/dist/core/session/env-sanitizer.d.ts +74 -0
- package/dist/core/session/env-sanitizer.d.ts.map +1 -0
- package/dist/core/session/env-sanitizer.js +219 -0
- package/dist/core/session/env-sanitizer.js.map +1 -0
- package/dist/core/session/history-manager.d.ts +1 -1
- package/dist/core/session/history-manager.d.ts.map +1 -1
- package/dist/core/session/history-manager.js +5 -2
- package/dist/core/session/history-manager.js.map +1 -1
- package/dist/core/session/index.d.ts +1 -0
- package/dist/core/session/index.d.ts.map +1 -1
- package/dist/core/session/index.js +1 -0
- package/dist/core/session/index.js.map +1 -1
- package/dist/core/session/session-manager.d.ts +13 -1
- package/dist/core/session/session-manager.d.ts.map +1 -1
- package/dist/core/session/session-manager.js +33 -2
- package/dist/core/session/session-manager.js.map +1 -1
- package/dist/core/session/session-storage.d.ts +4 -1
- package/dist/core/session/session-storage.d.ts.map +1 -1
- package/dist/core/session/session-storage.js +29 -27
- package/dist/core/session/session-storage.js.map +1 -1
- package/dist/core/transport/http-client.d.ts +82 -9
- package/dist/core/transport/http-client.d.ts.map +1 -1
- package/dist/core/transport/http-client.js +255 -130
- package/dist/core/transport/http-client.js.map +1 -1
- package/dist/core/transport/index.d.ts +2 -2
- package/dist/core/transport/index.d.ts.map +1 -1
- package/dist/core/transport/index.js +1 -1
- package/dist/core/transport/mcp-client.d.ts +87 -14
- package/dist/core/transport/mcp-client.d.ts.map +1 -1
- package/dist/core/transport/mcp-client.js +263 -63
- package/dist/core/transport/mcp-client.js.map +1 -1
- package/dist/core/transport/stream-handler.d.ts +36 -5
- package/dist/core/transport/stream-handler.d.ts.map +1 -1
- package/dist/core/transport/stream-handler.js +232 -43
- package/dist/core/transport/stream-handler.js.map +1 -1
- package/dist/core/transport/websocket-client.d.ts +31 -4
- package/dist/core/transport/websocket-client.d.ts.map +1 -1
- package/dist/core/transport/websocket-client.js +178 -65
- package/dist/core/transport/websocket-client.js.map +1 -1
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +56 -90
- package/dist/index.js.map +1 -1
- package/dist/output/index.d.ts +0 -3
- package/dist/output/index.d.ts.map +1 -1
- package/dist/output/index.js +4 -3
- package/dist/output/index.js.map +1 -1
- package/dist/repl/completer.d.ts +2 -2
- package/dist/repl/completer.d.ts.map +1 -1
- package/dist/repl/completer.js +5 -5
- package/dist/repl/completer.js.map +1 -1
- package/dist/repl/evaluator.d.ts +9 -3
- package/dist/repl/evaluator.d.ts.map +1 -1
- package/dist/repl/evaluator.js +78 -20
- package/dist/repl/evaluator.js.map +1 -1
- package/dist/repl/renderer.d.ts +2 -2
- package/dist/repl/renderer.d.ts.map +1 -1
- package/dist/repl/renderer.js +4 -5
- package/dist/repl/renderer.js.map +1 -1
- package/dist/repl/repl.d.ts +8 -4
- package/dist/repl/repl.d.ts.map +1 -1
- package/dist/repl/repl.js +68 -34
- package/dist/repl/repl.js.map +1 -1
- package/dist/session/context-manager.d.ts +5 -0
- package/dist/session/context-manager.d.ts.map +1 -0
- package/dist/session/context-manager.js +5 -0
- package/dist/session/context-manager.js.map +1 -0
- package/dist/session/history-manager.d.ts +5 -0
- package/dist/session/history-manager.d.ts.map +1 -0
- package/dist/session/history-manager.js +5 -0
- package/dist/session/history-manager.js.map +1 -0
- package/dist/session/session-manager.d.ts +5 -0
- package/dist/session/session-manager.d.ts.map +1 -0
- package/dist/session/session-manager.js +5 -0
- package/dist/session/session-manager.js.map +1 -0
- package/dist/utils/banner.d.ts +55 -0
- package/dist/utils/banner.d.ts.map +1 -0
- package/dist/utils/banner.js +257 -0
- package/dist/utils/banner.js.map +1 -0
- package/package.json +21 -36
- package/ARCHITECTURE.md +0 -1366
- package/LICENSE +0 -21
- package/completions/_nexus +0 -452
- package/completions/nexus.bash +0 -329
- package/completions/nexus.fish +0 -187
- package/dist/commands/compute/agent.d.ts +0 -21
- package/dist/commands/compute/agent.d.ts.map +0 -1
- package/dist/commands/compute/agent.js +0 -158
- package/dist/commands/compute/agent.js.map +0 -1
- package/dist/commands/compute/index.d.ts +0 -10
- package/dist/commands/compute/index.d.ts.map +0 -1
- package/dist/commands/compute/index.js +0 -27
- package/dist/commands/compute/index.js.map +0 -1
- package/dist/commands/compute/lib/hardware-detection.d.ts +0 -52
- package/dist/commands/compute/lib/hardware-detection.d.ts.map +0 -1
- package/dist/commands/compute/lib/hardware-detection.js +0 -432
- package/dist/commands/compute/lib/hardware-detection.js.map +0 -1
- package/dist/commands/compute/lib/local-compute-agent.d.ts +0 -143
- package/dist/commands/compute/lib/local-compute-agent.d.ts.map +0 -1
- package/dist/commands/compute/lib/local-compute-agent.js +0 -1162
- package/dist/commands/compute/lib/local-compute-agent.js.map +0 -1
- package/dist/commands/compute/lib/local-compute-client.d.ts +0 -89
- package/dist/commands/compute/lib/local-compute-client.d.ts.map +0 -1
- package/dist/commands/compute/lib/local-compute-client.js +0 -388
- package/dist/commands/compute/lib/local-compute-client.js.map +0 -1
- package/dist/commands/compute/list.d.ts +0 -14
- package/dist/commands/compute/list.d.ts.map +0 -1
- package/dist/commands/compute/list.js +0 -164
- package/dist/commands/compute/list.js.map +0 -1
- package/dist/commands/compute/logs.d.ts +0 -14
- package/dist/commands/compute/logs.d.ts.map +0 -1
- package/dist/commands/compute/logs.js +0 -105
- package/dist/commands/compute/logs.js.map +0 -1
- package/dist/commands/compute/resources.d.ts +0 -14
- package/dist/commands/compute/resources.d.ts.map +0 -1
- package/dist/commands/compute/resources.js +0 -163
- package/dist/commands/compute/resources.js.map +0 -1
- package/dist/commands/compute/status.d.ts +0 -13
- package/dist/commands/compute/status.d.ts.map +0 -1
- package/dist/commands/compute/status.js +0 -223
- package/dist/commands/compute/status.js.map +0 -1
- package/dist/commands/compute/submit.d.ts +0 -19
- package/dist/commands/compute/submit.d.ts.map +0 -1
- package/dist/commands/compute/submit.js +0 -99
- package/dist/commands/compute/submit.js.map +0 -1
- package/dist/commands/deploy.d.ts +0 -11
- package/dist/commands/deploy.d.ts.map +0 -1
- package/dist/commands/deploy.js +0 -117
- package/dist/commands/deploy.js.map +0 -1
- package/dist/commands/dynamic/nexus-commands.d.ts.map +0 -1
- package/dist/commands/dynamic/nexus-commands.js +0 -426
- package/dist/commands/dynamic/nexus-commands.js.map +0 -1
- package/dist/commands/init.d.ts +0 -11
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -128
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/list.d.ts +0 -10
- package/dist/commands/list.d.ts.map +0 -1
- package/dist/commands/list.js +0 -81
- package/dist/commands/list.js.map +0 -1
- package/dist/commands/login.d.ts +0 -10
- package/dist/commands/login.d.ts.map +0 -1
- package/dist/commands/login.js +0 -83
- package/dist/commands/login.js.map +0 -1
- package/dist/commands/logs.d.ts +0 -11
- package/dist/commands/logs.d.ts.map +0 -1
- package/dist/commands/logs.js +0 -79
- package/dist/commands/logs.js.map +0 -1
- package/dist/commands/nexus/index.d.ts +0 -69
- package/dist/commands/nexus/index.d.ts.map +0 -1
- package/dist/commands/nexus/index.js +0 -336
- package/dist/commands/nexus/index.js.map +0 -1
- package/dist/commands/register.d.ts +0 -10
- package/dist/commands/register.d.ts.map +0 -1
- package/dist/commands/register.js +0 -85
- package/dist/commands/register.js.map +0 -1
- package/dist/core/agent-client.d.ts +0 -49
- package/dist/core/agent-client.d.ts.map +0 -1
- package/dist/core/agent-client.js +0 -289
- package/dist/core/agent-client.js.map +0 -1
- package/dist/core/nexus-client.d.ts +0 -119
- package/dist/core/nexus-client.d.ts.map +0 -1
- package/dist/core/nexus-client.js +0 -292
- package/dist/core/nexus-client.js.map +0 -1
- package/dist/core/nexus-tool-executor.d.ts +0 -102
- package/dist/core/nexus-tool-executor.d.ts.map +0 -1
- package/dist/core/nexus-tool-executor.js +0 -386
- package/dist/core/nexus-tool-executor.js.map +0 -1
- package/dist/core/react-handler.d.ts +0 -17
- package/dist/core/react-handler.d.ts.map +0 -1
- package/dist/core/react-handler.js +0 -296
- package/dist/core/react-handler.js.map +0 -1
- package/dist/output/formatters/index.d.ts +0 -9
- package/dist/output/formatters/index.d.ts.map +0 -1
- package/dist/output/formatters/index.js +0 -9
- package/dist/output/formatters/index.js.map +0 -1
- package/dist/output/formatters/json-formatter.d.ts +0 -71
- package/dist/output/formatters/json-formatter.d.ts.map +0 -1
- package/dist/output/formatters/json-formatter.js +0 -236
- package/dist/output/formatters/json-formatter.js.map +0 -1
- package/dist/output/formatters/stream-formatter.d.ts +0 -107
- package/dist/output/formatters/stream-formatter.d.ts.map +0 -1
- package/dist/output/formatters/stream-formatter.js +0 -247
- package/dist/output/formatters/stream-formatter.js.map +0 -1
- package/dist/output/formatters/table-formatter.d.ts +0 -63
- package/dist/output/formatters/table-formatter.d.ts.map +0 -1
- package/dist/output/formatters/table-formatter.js +0 -294
- package/dist/output/formatters/table-formatter.js.map +0 -1
- package/dist/output/formatters/text-formatter.d.ts +0 -63
- package/dist/output/formatters/text-formatter.d.ts.map +0 -1
- package/dist/output/formatters/text-formatter.js +0 -202
- package/dist/output/formatters/text-formatter.js.map +0 -1
- package/dist/output/formatters/yaml-formatter.d.ts +0 -71
- package/dist/output/formatters/yaml-formatter.d.ts.map +0 -1
- package/dist/output/formatters/yaml-formatter.js +0 -239
- package/dist/output/formatters/yaml-formatter.js.map +0 -1
- package/dist/output/output-manager.d.ts +0 -156
- package/dist/output/output-manager.d.ts.map +0 -1
- package/dist/output/output-manager.js +0 -339
- package/dist/output/output-manager.js.map +0 -1
- package/dist/output/renderers/index.d.ts +0 -6
- package/dist/output/renderers/index.d.ts.map +0 -1
- package/dist/output/renderers/index.js +0 -6
- package/dist/output/renderers/index.js.map +0 -1
- package/dist/output/renderers/progress-renderer.d.ts +0 -56
- package/dist/output/renderers/progress-renderer.d.ts.map +0 -1
- package/dist/output/renderers/progress-renderer.js +0 -306
- package/dist/output/renderers/progress-renderer.js.map +0 -1
- package/dist/output/renderers/terminal-renderer.d.ts +0 -117
- package/dist/output/renderers/terminal-renderer.d.ts.map +0 -1
- package/dist/output/renderers/terminal-renderer.js +0 -294
- package/dist/output/renderers/terminal-renderer.js.map +0 -1
- package/dist/plugins/index.d.ts +0 -12
- package/dist/plugins/index.d.ts.map +0 -1
- package/dist/plugins/index.js +0 -18
- package/dist/plugins/index.js.map +0 -1
- package/dist/plugins/plugin-loader.d.ts +0 -37
- package/dist/plugins/plugin-loader.d.ts.map +0 -1
- package/dist/plugins/plugin-loader.js +0 -155
- package/dist/plugins/plugin-loader.js.map +0 -1
- package/dist/plugins/plugin-manager.d.ts +0 -78
- package/dist/plugins/plugin-manager.d.ts.map +0 -1
- package/dist/plugins/plugin-manager.js +0 -310
- package/dist/plugins/plugin-manager.js.map +0 -1
- package/dist/plugins/plugin-sdk.d.ts +0 -136
- package/dist/plugins/plugin-sdk.d.ts.map +0 -1
- package/dist/plugins/plugin-sdk.js +0 -260
- package/dist/plugins/plugin-sdk.js.map +0 -1
- package/dist/plugins/plugin-storage.d.ts +0 -109
- package/dist/plugins/plugin-storage.d.ts.map +0 -1
- package/dist/plugins/plugin-storage.js +0 -207
- package/dist/plugins/plugin-storage.js.map +0 -1
- package/dist/plugins/plugin-validator.d.ts +0 -44
- package/dist/plugins/plugin-validator.d.ts.map +0 -1
- package/dist/plugins/plugin-validator.js +0 -272
- package/dist/plugins/plugin-validator.js.map +0 -1
- package/dist/plugins/template-generator.d.ts +0 -35
- package/dist/plugins/template-generator.d.ts.map +0 -1
- package/dist/plugins/template-generator.js +0 -438
- package/dist/plugins/template-generator.js.map +0 -1
- package/dist/templates/python.d.ts +0 -15
- package/dist/templates/python.d.ts.map +0 -1
- package/dist/templates/python.js +0 -375
- package/dist/templates/python.js.map +0 -1
- package/dist/templates/typescript.d.ts +0 -15
- package/dist/templates/typescript.d.ts.map +0 -1
- package/dist/templates/typescript.js +0 -274
- package/dist/templates/typescript.js.map +0 -1
- package/dist/types/agent.d.ts +0 -109
- package/dist/types/agent.d.ts.map +0 -1
- package/dist/types/agent.js +0 -7
- package/dist/types/agent.js.map +0 -1
- package/dist/types/api.d.ts +0 -125
- package/dist/types/api.d.ts.map +0 -1
- package/dist/types/api.js +0 -53
- package/dist/types/api.js.map +0 -1
- package/dist/types/command.d.ts +0 -101
- package/dist/types/command.d.ts.map +0 -1
- package/dist/types/command.js +0 -7
- package/dist/types/command.js.map +0 -1
- package/dist/types/compute.d.ts +0 -317
- package/dist/types/compute.d.ts.map +0 -1
- package/dist/types/compute.js +0 -19
- package/dist/types/compute.js.map +0 -1
- package/dist/types/config.d.ts +0 -71
- package/dist/types/config.d.ts.map +0 -1
- package/dist/types/config.js +0 -7
- package/dist/types/config.js.map +0 -1
- package/dist/types/errors.d.ts +0 -56
- package/dist/types/errors.d.ts.map +0 -1
- package/dist/types/errors.js +0 -64
- package/dist/types/errors.js.map +0 -1
- package/dist/types/index.d.ts +0 -16
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -16
- package/dist/types/index.js.map +0 -1
- package/dist/types/nexus.d.ts +0 -254
- package/dist/types/nexus.d.ts.map +0 -1
- package/dist/types/nexus.js +0 -7
- package/dist/types/nexus.js.map +0 -1
- package/dist/types/output.d.ts +0 -107
- package/dist/types/output.d.ts.map +0 -1
- package/dist/types/output.js +0 -7
- package/dist/types/output.js.map +0 -1
- package/dist/types/plugin.d.ts +0 -118
- package/dist/types/plugin.d.ts.map +0 -1
- package/dist/types/plugin.js +0 -7
- package/dist/types/plugin.js.map +0 -1
- package/dist/types/service.d.ts +0 -94
- package/dist/types/service.d.ts.map +0 -1
- package/dist/types/service.js +0 -15
- package/dist/types/service.js.map +0 -1
- package/dist/types/session.d.ts +0 -80
- package/dist/types/session.d.ts.map +0 -1
- package/dist/types/session.js +0 -7
- package/dist/types/session.js.map +0 -1
- package/dist/types/transport.d.ts +0 -96
- package/dist/types/transport.d.ts.map +0 -1
- package/dist/types/transport.js +0 -7
- package/dist/types/transport.js.map +0 -1
- package/dist/utils/config.d.ts +0 -47
- package/dist/utils/config.d.ts.map +0 -1
- package/dist/utils/config.js +0 -166
- package/dist/utils/config.js.map +0 -1
- package/dist/utils/error-handler.d.ts +0 -82
- package/dist/utils/error-handler.d.ts.map +0 -1
- package/dist/utils/error-handler.js +0 -238
- package/dist/utils/error-handler.js.map +0 -1
- package/dist/utils/index.d.ts +0 -9
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js +0 -9
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -61
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -200
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/prompt.d.ts +0 -57
- package/dist/utils/prompt.d.ts.map +0 -1
- package/dist/utils/prompt.js +0 -141
- package/dist/utils/prompt.js.map +0 -1
- package/dist/utils/spinner.d.ts +0 -47
- package/dist/utils/spinner.d.ts.map +0 -1
- package/dist/utils/spinner.js +0 -123
- package/dist/utils/spinner.js.map +0 -1
- package/dist/utils/validation.d.ts +0 -97
- package/dist/utils/validation.d.ts.map +0 -1
- package/dist/utils/validation.js +0 -289
- package/dist/utils/validation.js.map +0 -1
- package/docs/COMPLETIONS.md +0 -528
- package/docs/REPL.md +0 -466
- package/docs/graphrag-commands.md +0 -387
- package/scripts/install-completions.sh +0 -356
- package/scripts/prepublish.js +0 -522
- 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 '
|
|
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
|
-
*
|
|
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
|
|
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
|
-
//
|
|
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
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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
|
|
84
|
+
error: `Validation error: ${error.message}`,
|
|
31
85
|
};
|
|
32
86
|
}
|
|
33
87
|
}
|
|
34
|
-
// Execute command
|
|
88
|
+
// Execute command with middleware chain
|
|
35
89
|
try {
|
|
36
90
|
const startTime = Date.now();
|
|
37
|
-
|
|
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
|
-
|
|
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
|
|
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 = [
|
|
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":"AAAA
|
|
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"}
|