@ranker/raxflow 0.2.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/dashboard/index.html +420 -0
- package/dist/benchmark.d.ts.map +1 -0
- package/dist/benchmark.js +123 -0
- package/dist/benchmark.js.map +1 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +141 -0
- package/dist/bin.js.map +1 -0
- package/dist/bootstrap.d.ts.map +1 -0
- package/dist/bootstrap.js +22 -0
- package/dist/bootstrap.js.map +1 -0
- package/dist/bridge-adapter-templates.d.ts.map +1 -0
- package/dist/bridge-adapter-templates.js +185 -0
- package/dist/bridge-adapter-templates.js.map +1 -0
- package/dist/bridge-test.d.ts.map +1 -0
- package/dist/bridge-test.js +89 -0
- package/dist/bridge-test.js.map +1 -0
- package/dist/dashboard.d.ts.map +1 -0
- package/dist/dashboard.js +49 -0
- package/dist/dashboard.js.map +1 -0
- package/dist/doctor.d.ts.map +1 -0
- package/dist/doctor.js +70 -0
- package/dist/doctor.js.map +1 -0
- package/dist/evolve.d.ts.map +1 -0
- package/dist/evolve.js +48 -0
- package/dist/evolve.js.map +1 -0
- package/dist/host-init-templates.d.ts.map +1 -0
- package/dist/host-init-templates.js +119 -0
- package/dist/host-init-templates.js.map +1 -0
- package/dist/hub/__tests__/commands.test.d.ts.map +1 -0
- package/dist/hub/__tests__/commands.test.js +72 -0
- package/dist/hub/__tests__/commands.test.js.map +1 -0
- package/dist/hub/__tests__/history.test.d.ts.map +1 -0
- package/dist/hub/__tests__/history.test.js +119 -0
- package/dist/hub/__tests__/history.test.js.map +1 -0
- package/dist/hub/__tests__/parser.test.d.ts.map +1 -0
- package/dist/hub/__tests__/parser.test.js +92 -0
- package/dist/hub/__tests__/parser.test.js.map +1 -0
- package/dist/hub/chat/ChatApp.d.ts +2 -0
- package/dist/hub/chat/ChatApp.d.ts.map +1 -0
- package/dist/hub/chat/ChatApp.js +146 -0
- package/dist/hub/chat/ChatApp.js.map +1 -0
- package/dist/hub/chat/components/ChatInput.d.ts +9 -0
- package/dist/hub/chat/components/ChatInput.d.ts.map +1 -0
- package/dist/hub/chat/components/ChatInput.js +19 -0
- package/dist/hub/chat/components/ChatInput.js.map +1 -0
- package/dist/hub/chat/components/MessageList.d.ts +7 -0
- package/dist/hub/chat/components/MessageList.d.ts.map +1 -0
- package/dist/hub/chat/components/MessageList.js +6 -0
- package/dist/hub/chat/components/MessageList.js.map +1 -0
- package/dist/hub/chat/context.d.ts.map +1 -0
- package/dist/hub/chat/context.js +42 -0
- package/dist/hub/chat/context.js.map +1 -0
- package/dist/hub/chat/hooks/useChatHistory.d.ts +7 -0
- package/dist/hub/chat/hooks/useChatHistory.d.ts.map +1 -0
- package/dist/hub/chat/hooks/useChatHistory.js +31 -0
- package/dist/hub/chat/hooks/useChatHistory.js.map +1 -0
- package/dist/hub/chat/index.d.ts.map +1 -0
- package/dist/hub/chat/index.js +7 -0
- package/dist/hub/chat/index.js.map +1 -0
- package/dist/hub/chat/intent-parser.d.ts.map +1 -0
- package/dist/hub/chat/intent-parser.js +48 -0
- package/dist/hub/chat/intent-parser.js.map +1 -0
- package/dist/hub/chat/types.d.ts.map +1 -0
- package/dist/hub/chat/types.js +2 -0
- package/dist/hub/chat/types.js.map +1 -0
- package/dist/hub/commands/agents.d.ts.map +1 -0
- package/dist/hub/commands/agents.js +36 -0
- package/dist/hub/commands/agents.js.map +1 -0
- package/dist/hub/commands/index.d.ts.map +1 -0
- package/dist/hub/commands/index.js +123 -0
- package/dist/hub/commands/index.js.map +1 -0
- package/dist/hub/commands/logs.d.ts.map +1 -0
- package/dist/hub/commands/logs.js +53 -0
- package/dist/hub/commands/logs.js.map +1 -0
- package/dist/hub/commands/memory.d.ts.map +1 -0
- package/dist/hub/commands/memory.js +40 -0
- package/dist/hub/commands/memory.js.map +1 -0
- package/dist/hub/commands/metrics.d.ts.map +1 -0
- package/dist/hub/commands/metrics.js +35 -0
- package/dist/hub/commands/metrics.js.map +1 -0
- package/dist/hub/commands/providers.d.ts.map +1 -0
- package/dist/hub/commands/providers.js +26 -0
- package/dist/hub/commands/providers.js.map +1 -0
- package/dist/hub/commands/run.d.ts.map +1 -0
- package/dist/hub/commands/run.js +31 -0
- package/dist/hub/commands/run.js.map +1 -0
- package/dist/hub/commands/status.d.ts.map +1 -0
- package/dist/hub/commands/status.js +61 -0
- package/dist/hub/commands/status.js.map +1 -0
- package/dist/hub/commands/workflows.d.ts.map +1 -0
- package/dist/hub/commands/workflows.js +45 -0
- package/dist/hub/commands/workflows.js.map +1 -0
- package/dist/hub/config-loader.d.ts.map +1 -0
- package/dist/hub/config-loader.js +27 -0
- package/dist/hub/config-loader.js.map +1 -0
- package/dist/hub/event-listener.d.ts +6 -0
- package/dist/hub/event-listener.d.ts.map +1 -0
- package/dist/hub/event-listener.js +12 -0
- package/dist/hub/event-listener.js.map +1 -0
- package/dist/hub/history.d.ts.map +1 -0
- package/dist/hub/history.js +59 -0
- package/dist/hub/history.js.map +1 -0
- package/dist/hub/index.d.ts.map +1 -0
- package/dist/hub/index.js +114 -0
- package/dist/hub/index.js.map +1 -0
- package/dist/hub/parser.d.ts.map +1 -0
- package/dist/hub/parser.js +98 -0
- package/dist/hub/parser.js.map +1 -0
- package/dist/hub/styles/borders.d.ts.map +1 -0
- package/dist/hub/styles/borders.js +64 -0
- package/dist/hub/styles/borders.js.map +1 -0
- package/dist/hub/styles/colors.d.ts.map +1 -0
- package/dist/hub/styles/colors.js +115 -0
- package/dist/hub/styles/colors.js.map +1 -0
- package/dist/hub/styles/typography.d.ts.map +1 -0
- package/dist/hub/styles/typography.js +60 -0
- package/dist/hub/styles/typography.js.map +1 -0
- package/dist/hub/tui/App.d.ts +2 -0
- package/dist/hub/tui/App.d.ts.map +1 -0
- package/dist/hub/tui/App.js +53 -0
- package/dist/hub/tui/App.js.map +1 -0
- package/dist/hub/tui/components/AgentQueue.d.ts +6 -0
- package/dist/hub/tui/components/AgentQueue.d.ts.map +1 -0
- package/dist/hub/tui/components/AgentQueue.js +20 -0
- package/dist/hub/tui/components/AgentQueue.js.map +1 -0
- package/dist/hub/tui/components/DAGPanel.d.ts +16 -0
- package/dist/hub/tui/components/DAGPanel.d.ts.map +1 -0
- package/dist/hub/tui/components/DAGPanel.js +51 -0
- package/dist/hub/tui/components/DAGPanel.js.map +1 -0
- package/dist/hub/tui/components/Header.d.ts +7 -0
- package/dist/hub/tui/components/Header.d.ts.map +1 -0
- package/dist/hub/tui/components/Header.js +17 -0
- package/dist/hub/tui/components/Header.js.map +1 -0
- package/dist/hub/tui/components/LogsPanel.d.ts +6 -0
- package/dist/hub/tui/components/LogsPanel.d.ts.map +1 -0
- package/dist/hub/tui/components/LogsPanel.js +26 -0
- package/dist/hub/tui/components/LogsPanel.js.map +1 -0
- package/dist/hub/tui/components/StatusBar.d.ts +8 -0
- package/dist/hub/tui/components/StatusBar.d.ts.map +1 -0
- package/dist/hub/tui/components/StatusBar.js +7 -0
- package/dist/hub/tui/components/StatusBar.js.map +1 -0
- package/dist/hub/tui/hooks/useEvents.d.ts +2 -0
- package/dist/hub/tui/hooks/useEvents.d.ts.map +1 -0
- package/dist/hub/tui/hooks/useEvents.js +13 -0
- package/dist/hub/tui/hooks/useEvents.js.map +1 -0
- package/dist/hub/tui/index.d.ts.map +1 -0
- package/dist/hub/tui/index.js +7 -0
- package/dist/hub/tui/index.js.map +1 -0
- package/dist/hub/tui/types.d.ts.map +1 -0
- package/dist/hub/tui/types.js +2 -0
- package/dist/hub/tui/types.js.map +1 -0
- package/dist/hub/types.d.ts.map +1 -0
- package/dist/hub/types.js +2 -0
- package/dist/hub/types.js.map +1 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/init-host.d.ts.map +1 -0
- package/dist/init-host.js +232 -0
- package/dist/init-host.js.map +1 -0
- package/dist/install.d.ts.map +1 -0
- package/dist/install.js +99 -0
- package/dist/install.js.map +1 -0
- package/dist/run.d.ts.map +1 -0
- package/dist/run.js +238 -0
- package/dist/run.js.map +1 -0
- package/dist/setup/components/ApiKeyInput.d.ts +25 -0
- package/dist/setup/components/ApiKeyInput.d.ts.map +1 -0
- package/dist/setup/components/ApiKeyInput.js +54 -0
- package/dist/setup/components/ApiKeyInput.js.map +1 -0
- package/dist/setup/components/AsciiBanner.d.ts +22 -0
- package/dist/setup/components/AsciiBanner.d.ts.map +1 -0
- package/dist/setup/components/AsciiBanner.js +55 -0
- package/dist/setup/components/AsciiBanner.js.map +1 -0
- package/dist/setup/components/CliDetector.d.ts +17 -0
- package/dist/setup/components/CliDetector.d.ts.map +1 -0
- package/dist/setup/components/CliDetector.js +79 -0
- package/dist/setup/components/CliDetector.js.map +1 -0
- package/dist/setup/components/ModeSelector.d.ts +8 -0
- package/dist/setup/components/ModeSelector.d.ts.map +1 -0
- package/dist/setup/components/ModeSelector.js +76 -0
- package/dist/setup/components/ModeSelector.js.map +1 -0
- package/dist/setup/components/ProviderSelector.d.ts +18 -0
- package/dist/setup/components/ProviderSelector.d.ts.map +1 -0
- package/dist/setup/components/ProviderSelector.js +97 -0
- package/dist/setup/components/ProviderSelector.js.map +1 -0
- package/dist/setup/components/SetupWizard.d.ts +2 -0
- package/dist/setup/components/SetupWizard.d.ts.map +1 -0
- package/dist/setup/components/SetupWizard.js +212 -0
- package/dist/setup/components/SetupWizard.js.map +1 -0
- package/dist/setup/components/StepIndicator.d.ts +13 -0
- package/dist/setup/components/StepIndicator.d.ts.map +1 -0
- package/dist/setup/components/StepIndicator.js +18 -0
- package/dist/setup/components/StepIndicator.js.map +1 -0
- package/dist/setup/components/SuccessScreen.d.ts +18 -0
- package/dist/setup/components/SuccessScreen.d.ts.map +1 -0
- package/dist/setup/components/SuccessScreen.js +38 -0
- package/dist/setup/components/SuccessScreen.js.map +1 -0
- package/dist/setup/index.d.ts +12 -0
- package/dist/setup/index.d.ts.map +1 -0
- package/dist/setup/index.js +29 -0
- package/dist/setup/index.js.map +1 -0
- package/dist/setup/utils/cli-detection.d.ts +12 -0
- package/dist/setup/utils/cli-detection.d.ts.map +1 -0
- package/dist/setup/utils/cli-detection.js +83 -0
- package/dist/setup/utils/cli-detection.js.map +1 -0
- package/dist/setup/utils/config-writer.d.ts +43 -0
- package/dist/setup/utils/config-writer.d.ts.map +1 -0
- package/dist/setup/utils/config-writer.js +180 -0
- package/dist/setup/utils/config-writer.js.map +1 -0
- package/dist/styles.d.ts.map +1 -0
- package/dist/styles.js +12 -0
- package/dist/styles.js.map +1 -0
- package/dist/tui/App.d.ts +3 -0
- package/dist/tui/App.d.ts.map +1 -0
- package/dist/tui/App.js +131 -0
- package/dist/tui/App.js.map +1 -0
- package/dist/tui/components/AgentStateIcon.d.ts +18 -0
- package/dist/tui/components/AgentStateIcon.d.ts.map +1 -0
- package/dist/tui/components/AgentStateIcon.js +57 -0
- package/dist/tui/components/AgentStateIcon.js.map +1 -0
- package/dist/tui/components/AnimatedBranch.d.ts +39 -0
- package/dist/tui/components/AnimatedBranch.d.ts.map +1 -0
- package/dist/tui/components/AnimatedBranch.js +64 -0
- package/dist/tui/components/AnimatedBranch.js.map +1 -0
- package/dist/tui/components/ChatPanel.d.ts +16 -0
- package/dist/tui/components/ChatPanel.d.ts.map +1 -0
- package/dist/tui/components/ChatPanel.js +50 -0
- package/dist/tui/components/ChatPanel.js.map +1 -0
- package/dist/tui/components/DAGPanel.d.ts +36 -0
- package/dist/tui/components/DAGPanel.d.ts.map +1 -0
- package/dist/tui/components/DAGPanel.js +51 -0
- package/dist/tui/components/DAGPanel.js.map +1 -0
- package/dist/tui/components/ExecutionTimeline.d.ts +34 -0
- package/dist/tui/components/ExecutionTimeline.d.ts.map +1 -0
- package/dist/tui/components/ExecutionTimeline.js +67 -0
- package/dist/tui/components/ExecutionTimeline.js.map +1 -0
- package/dist/tui/components/Header.d.ts +12 -0
- package/dist/tui/components/Header.d.ts.map +1 -0
- package/dist/tui/components/Header.js +32 -0
- package/dist/tui/components/Header.js.map +1 -0
- package/dist/tui/components/HelpOverlay.d.ts +7 -0
- package/dist/tui/components/HelpOverlay.d.ts.map +1 -0
- package/dist/tui/components/HelpOverlay.js +60 -0
- package/dist/tui/components/HelpOverlay.js.map +1 -0
- package/dist/tui/components/InputBar.d.ts +10 -0
- package/dist/tui/components/InputBar.d.ts.map +1 -0
- package/dist/tui/components/InputBar.js +21 -0
- package/dist/tui/components/InputBar.js.map +1 -0
- package/dist/tui/components/LogsPanel.d.ts +9 -0
- package/dist/tui/components/LogsPanel.d.ts.map +1 -0
- package/dist/tui/components/LogsPanel.js +56 -0
- package/dist/tui/components/LogsPanel.js.map +1 -0
- package/dist/tui/components/MemoryPanel.d.ts +21 -0
- package/dist/tui/components/MemoryPanel.d.ts.map +1 -0
- package/dist/tui/components/MemoryPanel.js +51 -0
- package/dist/tui/components/MemoryPanel.js.map +1 -0
- package/dist/tui/components/MetricsPanel.d.ts +18 -0
- package/dist/tui/components/MetricsPanel.d.ts.map +1 -0
- package/dist/tui/components/MetricsPanel.js +27 -0
- package/dist/tui/components/MetricsPanel.js.map +1 -0
- package/dist/tui/components/StatusPanel.d.ts +23 -0
- package/dist/tui/components/StatusPanel.d.ts.map +1 -0
- package/dist/tui/components/StatusPanel.js +23 -0
- package/dist/tui/components/StatusPanel.js.map +1 -0
- package/dist/tui/components/TaskTree.d.ts +28 -0
- package/dist/tui/components/TaskTree.d.ts.map +1 -0
- package/dist/tui/components/TaskTree.js +29 -0
- package/dist/tui/components/TaskTree.js.map +1 -0
- package/dist/tui/components/animations/ProgressBar.d.ts +39 -0
- package/dist/tui/components/animations/ProgressBar.d.ts.map +1 -0
- package/dist/tui/components/animations/ProgressBar.js +39 -0
- package/dist/tui/components/animations/ProgressBar.js.map +1 -0
- package/dist/tui/components/animations/Pulse.d.ts +17 -0
- package/dist/tui/components/animations/Pulse.d.ts.map +1 -0
- package/dist/tui/components/animations/Pulse.js +47 -0
- package/dist/tui/components/animations/Pulse.js.map +1 -0
- package/dist/tui/components/animations/Spinner.d.ts +13 -0
- package/dist/tui/components/animations/Spinner.d.ts.map +1 -0
- package/dist/tui/components/animations/Spinner.js +36 -0
- package/dist/tui/components/animations/Spinner.js.map +1 -0
- package/dist/tui/components/animations/StatusAnimator.d.ts +27 -0
- package/dist/tui/components/animations/StatusAnimator.d.ts.map +1 -0
- package/dist/tui/components/animations/StatusAnimator.js +85 -0
- package/dist/tui/components/animations/StatusAnimator.js.map +1 -0
- package/dist/tui/components/animations/TypingEffect.d.ts +26 -0
- package/dist/tui/components/animations/TypingEffect.d.ts.map +1 -0
- package/dist/tui/components/animations/TypingEffect.js +59 -0
- package/dist/tui/components/animations/TypingEffect.js.map +1 -0
- package/dist/tui/components/animations/index.d.ts +8 -0
- package/dist/tui/components/animations/index.d.ts.map +1 -0
- package/dist/tui/components/animations/index.js +6 -0
- package/dist/tui/components/animations/index.js.map +1 -0
- package/dist/tui/hooks/useAnimation.d.ts +42 -0
- package/dist/tui/hooks/useAnimation.d.ts.map +1 -0
- package/dist/tui/hooks/useAnimation.js +212 -0
- package/dist/tui/hooks/useAnimation.js.map +1 -0
- package/dist/tui/hooks/useAppState.d.ts +65 -0
- package/dist/tui/hooks/useAppState.d.ts.map +1 -0
- package/dist/tui/hooks/useAppState.js +293 -0
- package/dist/tui/hooks/useAppState.js.map +1 -0
- package/dist/tui/index.d.ts +3 -0
- package/dist/tui/index.d.ts.map +1 -0
- package/dist/tui/index.js +8 -0
- package/dist/tui/index.js.map +1 -0
- package/dist/tui/services/orchestrator.d.ts +16 -0
- package/dist/tui/services/orchestrator.d.ts.map +1 -0
- package/dist/tui/services/orchestrator.js +152 -0
- package/dist/tui/services/orchestrator.js.map +1 -0
- package/dist/tui/styles/borders.d.ts +31 -0
- package/dist/tui/styles/borders.d.ts.map +1 -0
- package/dist/tui/styles/borders.js +47 -0
- package/dist/tui/styles/borders.js.map +1 -0
- package/dist/tui/styles/colors.d.ts +18 -0
- package/dist/tui/styles/colors.d.ts.map +1 -0
- package/dist/tui/styles/colors.js +18 -0
- package/dist/tui/styles/colors.js.map +1 -0
- package/dist/tui/styles/index.d.ts +6 -0
- package/dist/tui/styles/index.d.ts.map +1 -0
- package/dist/tui/styles/index.js +6 -0
- package/dist/tui/styles/index.js.map +1 -0
- package/dist/tui/styles/indicators.d.ts +67 -0
- package/dist/tui/styles/indicators.d.ts.map +1 -0
- package/dist/tui/styles/indicators.js +42 -0
- package/dist/tui/styles/indicators.js.map +1 -0
- package/dist/tui/styles/layout.d.ts +21 -0
- package/dist/tui/styles/layout.d.ts.map +1 -0
- package/dist/tui/styles/layout.js +42 -0
- package/dist/tui/styles/layout.js.map +1 -0
- package/dist/tui/styles/providers.d.ts +77 -0
- package/dist/tui/styles/providers.d.ts.map +1 -0
- package/dist/tui/styles/providers.js +31 -0
- package/dist/tui/styles/providers.js.map +1 -0
- package/dist/tui/utils/animation.d.ts +44 -0
- package/dist/tui/utils/animation.d.ts.map +1 -0
- package/dist/tui/utils/animation.js +107 -0
- package/dist/tui/utils/animation.js.map +1 -0
- package/dist/vendor-manifests.d.ts.map +1 -0
- package/dist/vendor-manifests.js +94 -0
- package/dist/vendor-manifests.js.map +1 -0
- package/dist/ws-relay.d.ts +12 -0
- package/dist/ws-relay.d.ts.map +1 -0
- package/dist/ws-relay.js +148 -0
- package/dist/ws-relay.js.map +1 -0
- package/package.json +34 -0
- package/src/benchmark.ts +156 -0
- package/src/bin.ts +156 -0
- package/src/bootstrap.ts +36 -0
- package/src/bridge-adapter-templates.ts +181 -0
- package/src/bridge-test.ts +107 -0
- package/src/dashboard.ts +51 -0
- package/src/doctor.ts +92 -0
- package/src/evolve.ts +74 -0
- package/src/host-init-templates.ts +134 -0
- package/src/hub/__tests__/commands.test.ts +84 -0
- package/src/hub/__tests__/history.test.ts +137 -0
- package/src/hub/__tests__/parser.test.ts +105 -0
- package/src/hub/commands/agents.ts +53 -0
- package/src/hub/commands/index.ts +140 -0
- package/src/hub/commands/logs.ts +70 -0
- package/src/hub/commands/memory.ts +47 -0
- package/src/hub/commands/metrics.ts +49 -0
- package/src/hub/commands/providers.ts +39 -0
- package/src/hub/commands/run.ts +37 -0
- package/src/hub/commands/status.ts +69 -0
- package/src/hub/commands/workflows.ts +64 -0
- package/src/hub/config-loader.ts +37 -0
- package/src/hub/event-listener.ts +17 -0
- package/src/hub/history.ts +66 -0
- package/src/hub/index.ts +132 -0
- package/src/hub/parser.ts +107 -0
- package/src/hub/styles/borders.ts +74 -0
- package/src/hub/styles/colors.ts +129 -0
- package/src/hub/styles/typography.ts +68 -0
- package/src/hub/types.ts +31 -0
- package/src/index.ts +10 -0
- package/src/init-host.ts +285 -0
- package/src/install.ts +118 -0
- package/src/run.ts +317 -0
- package/src/setup/components/ApiKeyInput.tsx +158 -0
- package/src/setup/components/AsciiBanner.tsx +125 -0
- package/src/setup/components/CliDetector.tsx +230 -0
- package/src/setup/components/ModeSelector.tsx +137 -0
- package/src/setup/components/ProviderSelector.tsx +174 -0
- package/src/setup/components/SetupWizard.tsx +368 -0
- package/src/setup/components/StepIndicator.tsx +74 -0
- package/src/setup/components/SuccessScreen.tsx +229 -0
- package/src/setup/index.ts +34 -0
- package/src/setup/utils/cli-detection.ts +99 -0
- package/src/setup/utils/config-writer.ts +249 -0
- package/src/styles.ts +12 -0
- package/src/tui/App.tsx +177 -0
- package/src/tui/components/AgentStateIcon.tsx +84 -0
- package/src/tui/components/AnimatedBranch.tsx +134 -0
- package/src/tui/components/ChatPanel.tsx +125 -0
- package/src/tui/components/DAGPanel.tsx +208 -0
- package/src/tui/components/ExecutionTimeline.tsx +225 -0
- package/src/tui/components/Header.tsx +109 -0
- package/src/tui/components/HelpOverlay.tsx +140 -0
- package/src/tui/components/InputBar.tsx +69 -0
- package/src/tui/components/LogsPanel.tsx +129 -0
- package/src/tui/components/MemoryPanel.tsx +163 -0
- package/src/tui/components/MetricsPanel.tsx +149 -0
- package/src/tui/components/StatusPanel.tsx +137 -0
- package/src/tui/components/TaskTree.tsx +159 -0
- package/src/tui/components/animations/ProgressBar.tsx +160 -0
- package/src/tui/components/animations/Pulse.tsx +73 -0
- package/src/tui/components/animations/Spinner.tsx +54 -0
- package/src/tui/components/animations/StatusAnimator.tsx +153 -0
- package/src/tui/components/animations/TypingEffect.tsx +119 -0
- package/src/tui/components/animations/index.ts +16 -0
- package/src/tui/hooks/useAnimation.ts +290 -0
- package/src/tui/hooks/useAppState.ts +403 -0
- package/src/tui/index.ts +9 -0
- package/src/tui/services/orchestrator.ts +195 -0
- package/src/tui/styles/borders.ts +51 -0
- package/src/tui/styles/colors.ts +19 -0
- package/src/tui/styles/index.ts +20 -0
- package/src/tui/styles/indicators.ts +54 -0
- package/src/tui/styles/layout.ts +44 -0
- package/src/tui/styles/providers.ts +32 -0
- package/src/tui/utils/animation.ts +124 -0
- package/src/vendor-manifests.ts +113 -0
- package/src/ws-relay.ts +156 -0
- package/tsconfig.json +28 -0
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import * as readline from "readline";
|
|
2
|
+
import { parseCommand, getCompletions } from "./parser.js";
|
|
3
|
+
import { CommandHistory } from "./history.js";
|
|
4
|
+
import { subscribeToEvents } from "./event-listener.js";
|
|
5
|
+
import { getCommandRegistry } from "./commands/index.js";
|
|
6
|
+
import { loadConfig } from "./config-loader.js";
|
|
7
|
+
const WELCOME_MESSAGE = `
|
|
8
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
9
|
+
│ ■ RAXFLOW HUB [HOST-NATIVE] ● READY │
|
|
10
|
+
│ Project: %PROJECT% Agents: 12/12 Online │
|
|
11
|
+
├─────────────────────────────────────────────────────────────┤
|
|
12
|
+
│ // BIENVENUE — Tapez 'help' ou '?' pour commencer │
|
|
13
|
+
└─────────────────────────────────────────────────────────────┘
|
|
14
|
+
`;
|
|
15
|
+
export async function startHub(options) {
|
|
16
|
+
const config = options.config || (await loadConfig(options.cwd));
|
|
17
|
+
const context = {
|
|
18
|
+
config,
|
|
19
|
+
};
|
|
20
|
+
const history = new CommandHistory(options.cwd);
|
|
21
|
+
await history.load();
|
|
22
|
+
const commands = getCommandRegistry();
|
|
23
|
+
console.log(WELCOME_MESSAGE.replace("%PROJECT%", config.project || "default"));
|
|
24
|
+
let isClosing = false;
|
|
25
|
+
const rl = readline.createInterface({
|
|
26
|
+
input: process.stdin,
|
|
27
|
+
output: process.stdout,
|
|
28
|
+
prompt: "raxflow > ",
|
|
29
|
+
completer: (line) => {
|
|
30
|
+
const completions = getCompletions(line, context);
|
|
31
|
+
const hits = completions.filter((c) => c.startsWith(line));
|
|
32
|
+
return [hits.length ? hits : completions, line];
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
const unsubscribe = subscribeToEvents((event) => {
|
|
36
|
+
const timeStr = new Date().toLocaleTimeString("fr-FR", { hour: "2-digit", minute: "2-digit" });
|
|
37
|
+
switch (event.type) {
|
|
38
|
+
case "run_start":
|
|
39
|
+
console.log(`[${timeStr}] ▶ Task started: ${event.taskId}`);
|
|
40
|
+
break;
|
|
41
|
+
case "run_end":
|
|
42
|
+
console.log(`[${timeStr}] ✓ Task completed: ${event.taskId} (confidence: ${event.metrics.confidence.toFixed(2)})`);
|
|
43
|
+
break;
|
|
44
|
+
case "node_error":
|
|
45
|
+
console.log(`[${timeStr}] ⚠ Node error: ${event.agent} - ${event.message}`);
|
|
46
|
+
break;
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
rl.on("line", async (input) => {
|
|
50
|
+
const trimmed = input.trim();
|
|
51
|
+
if (!trimmed) {
|
|
52
|
+
rl.prompt();
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
history.add(trimmed);
|
|
56
|
+
const command = parseCommand(trimmed);
|
|
57
|
+
if (command.name === "exit" || command.name === "quit") {
|
|
58
|
+
isClosing = true;
|
|
59
|
+
console.log("👋 À bientôt !");
|
|
60
|
+
unsubscribe();
|
|
61
|
+
rl.close();
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
const cmdDef = commands.get(command.name) || commands.get("help");
|
|
65
|
+
if (cmdDef) {
|
|
66
|
+
try {
|
|
67
|
+
await cmdDef.handler(command.args, command.flags, context);
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.error(`❌ Erreur: ${error instanceof Error ? error.message : String(error)}`);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
console.log(`Commande inconnue: ${command.name}. Tapez 'help' pour voir les commandes disponibles.`);
|
|
75
|
+
}
|
|
76
|
+
if (!isClosing) {
|
|
77
|
+
rl.prompt();
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
rl.on("close", async () => {
|
|
81
|
+
if (!isClosing) {
|
|
82
|
+
await history.save();
|
|
83
|
+
console.log("\n👋 À bientôt !");
|
|
84
|
+
unsubscribe();
|
|
85
|
+
}
|
|
86
|
+
process.exit(0);
|
|
87
|
+
});
|
|
88
|
+
process.on("SIGINT", () => {
|
|
89
|
+
console.log("\n");
|
|
90
|
+
rl.prompt();
|
|
91
|
+
});
|
|
92
|
+
rl.prompt();
|
|
93
|
+
}
|
|
94
|
+
export async function startHubOneShot(command, args) {
|
|
95
|
+
const cwd = process.cwd();
|
|
96
|
+
const config = await loadConfig(cwd);
|
|
97
|
+
const context = { config };
|
|
98
|
+
const commands = getCommandRegistry();
|
|
99
|
+
const parsed = parseCommand([command, ...args].join(" "));
|
|
100
|
+
const cmdDef = commands.get(parsed.name);
|
|
101
|
+
if (!cmdDef) {
|
|
102
|
+
console.error(`Commande inconnue: ${parsed.name}`);
|
|
103
|
+
process.exit(1);
|
|
104
|
+
}
|
|
105
|
+
try {
|
|
106
|
+
await cmdDef.handler(parsed.args, parsed.flags, context);
|
|
107
|
+
process.exit(0);
|
|
108
|
+
}
|
|
109
|
+
catch (error) {
|
|
110
|
+
console.error(`❌ Erreur: ${error instanceof Error ? error.message : String(error)}`);
|
|
111
|
+
process.exit(1);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/hub/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAcrC,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAgCnD;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,EAAE,CA0D5E"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
const BOOLEAN_FLAGS = new Set([
|
|
2
|
+
"stream",
|
|
3
|
+
"json",
|
|
4
|
+
"f",
|
|
5
|
+
"force",
|
|
6
|
+
"verbose",
|
|
7
|
+
"quiet",
|
|
8
|
+
"dry-run",
|
|
9
|
+
"yes",
|
|
10
|
+
"help",
|
|
11
|
+
]);
|
|
12
|
+
export function parseCommand(input) {
|
|
13
|
+
const tokens = input.trim().split(/\s+/);
|
|
14
|
+
const name = tokens[0] || "";
|
|
15
|
+
const args = [];
|
|
16
|
+
const flags = {};
|
|
17
|
+
for (let i = 1; i < tokens.length; i++) {
|
|
18
|
+
const token = tokens[i];
|
|
19
|
+
if (token.startsWith("--")) {
|
|
20
|
+
const flagName = token.slice(2);
|
|
21
|
+
const nextToken = tokens[i + 1];
|
|
22
|
+
if (nextToken && !nextToken.startsWith("-") && !BOOLEAN_FLAGS.has(flagName)) {
|
|
23
|
+
flags[flagName] = nextToken;
|
|
24
|
+
i++;
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
flags[flagName] = true;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
else if (token.startsWith("-")) {
|
|
31
|
+
const flagName = token.slice(1);
|
|
32
|
+
const nextToken = tokens[i + 1];
|
|
33
|
+
if (nextToken && !nextToken.startsWith("-") && !BOOLEAN_FLAGS.has(flagName)) {
|
|
34
|
+
flags[flagName] = nextToken;
|
|
35
|
+
i++;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
flags[flagName] = true;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
args.push(token);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return { name, args, flags };
|
|
46
|
+
}
|
|
47
|
+
export function getCompletions(partial, _context) {
|
|
48
|
+
const commands = [
|
|
49
|
+
"run",
|
|
50
|
+
"status",
|
|
51
|
+
"agents",
|
|
52
|
+
"providers",
|
|
53
|
+
"workflows",
|
|
54
|
+
"logs",
|
|
55
|
+
"metrics",
|
|
56
|
+
"memory",
|
|
57
|
+
"install",
|
|
58
|
+
"config",
|
|
59
|
+
"doctor",
|
|
60
|
+
"bridge-test",
|
|
61
|
+
"benchmark",
|
|
62
|
+
"evolve",
|
|
63
|
+
"dashboard",
|
|
64
|
+
"ui",
|
|
65
|
+
"chat",
|
|
66
|
+
"help",
|
|
67
|
+
"exit",
|
|
68
|
+
"quit",
|
|
69
|
+
];
|
|
70
|
+
if (!partial) {
|
|
71
|
+
return commands;
|
|
72
|
+
}
|
|
73
|
+
const trimmed = partial.trim();
|
|
74
|
+
const endsWithSpace = partial.endsWith(" ");
|
|
75
|
+
const tokens = trimmed.split(/\s+/);
|
|
76
|
+
const currentWord = endsWithSpace ? "" : tokens[tokens.length - 1];
|
|
77
|
+
if (tokens.length === 1 && !endsWithSpace) {
|
|
78
|
+
return commands.filter((c) => c.startsWith(currentWord));
|
|
79
|
+
}
|
|
80
|
+
const command = tokens[0];
|
|
81
|
+
const isKnownCommand = commands.includes(command);
|
|
82
|
+
if (!isKnownCommand) {
|
|
83
|
+
return [];
|
|
84
|
+
}
|
|
85
|
+
switch (command) {
|
|
86
|
+
case "run":
|
|
87
|
+
return ["--workflow", "--max-parallel", "--stream", "--json"].filter((c) => c.startsWith(currentWord));
|
|
88
|
+
case "logs":
|
|
89
|
+
return ["-f", "--agent", "--level"].filter((c) => c.startsWith(currentWord));
|
|
90
|
+
case "agents":
|
|
91
|
+
case "providers":
|
|
92
|
+
case "workflows":
|
|
93
|
+
return [];
|
|
94
|
+
default:
|
|
95
|
+
return [];
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/hub/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"borders.d.ts","sourceRoot":"","sources":["../../../src/hub/styles/borders.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;CAqBnB,CAAC;AAGF,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CA0BhF;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAYnE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,MAAM,CAI3E"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// RAXFLOW Design System - Borders and Boxes
|
|
2
|
+
// Brutalist style: no border-radius, sharp corners
|
|
3
|
+
export const borders = {
|
|
4
|
+
// Border characters for ASCII boxes
|
|
5
|
+
horizontal: "─",
|
|
6
|
+
vertical: "│",
|
|
7
|
+
topLeft: "┌",
|
|
8
|
+
topRight: "┐",
|
|
9
|
+
bottomLeft: "└",
|
|
10
|
+
bottomRight: "┘",
|
|
11
|
+
leftT: "├",
|
|
12
|
+
rightT: "┤",
|
|
13
|
+
topT: "┬",
|
|
14
|
+
bottomT: "┴",
|
|
15
|
+
cross: "┼",
|
|
16
|
+
// Double line (for emphasis)
|
|
17
|
+
doubleHorizontal: "═",
|
|
18
|
+
doubleVertical: "║",
|
|
19
|
+
doubleTopLeft: "╔",
|
|
20
|
+
doubleTopRight: "╗",
|
|
21
|
+
doubleBottomLeft: "╚",
|
|
22
|
+
doubleBottomRight: "╝",
|
|
23
|
+
};
|
|
24
|
+
// Box drawing utilities
|
|
25
|
+
export function drawBox(content, width, title) {
|
|
26
|
+
const { topLeft, topRight, bottomLeft, bottomRight, horizontal, vertical } = borders;
|
|
27
|
+
const lines = [];
|
|
28
|
+
// Top border
|
|
29
|
+
if (title) {
|
|
30
|
+
const titleStr = ` ${title} `;
|
|
31
|
+
const sideWidth = Math.floor((width - titleStr.length - 2) / 2);
|
|
32
|
+
const leftSide = horizontal.repeat(sideWidth);
|
|
33
|
+
const rightSide = horizontal.repeat(width - titleStr.length - 2 - sideWidth);
|
|
34
|
+
lines.push(`${topLeft}${leftSide}${titleStr}${rightSide}${topRight}`);
|
|
35
|
+
}
|
|
36
|
+
else {
|
|
37
|
+
lines.push(`${topLeft}${horizontal.repeat(width - 2)}${topRight}`);
|
|
38
|
+
}
|
|
39
|
+
// Content
|
|
40
|
+
for (const line of content) {
|
|
41
|
+
const padded = line.padEnd(width - 2, " ").slice(0, width - 2);
|
|
42
|
+
lines.push(`${vertical}${padded}${vertical}`);
|
|
43
|
+
}
|
|
44
|
+
// Bottom border
|
|
45
|
+
lines.push(`${bottomLeft}${horizontal.repeat(width - 2)}${bottomRight}`);
|
|
46
|
+
return lines.join("\n");
|
|
47
|
+
}
|
|
48
|
+
export function drawSeparator(width, title) {
|
|
49
|
+
const { leftT, rightT, horizontal } = borders;
|
|
50
|
+
if (title) {
|
|
51
|
+
const titleStr = ` ${title} `;
|
|
52
|
+
const sideWidth = Math.floor((width - titleStr.length - 2) / 2);
|
|
53
|
+
const leftSide = horizontal.repeat(sideWidth);
|
|
54
|
+
const rightSide = horizontal.repeat(width - titleStr.length - 2 - sideWidth);
|
|
55
|
+
return `${leftT}${leftSide}${titleStr}${rightSide}${rightT}`;
|
|
56
|
+
}
|
|
57
|
+
return `${leftT}${horizontal.repeat(width - 2)}${rightT}`;
|
|
58
|
+
}
|
|
59
|
+
export function drawProgressBar(percent, width = 20) {
|
|
60
|
+
const filled = Math.floor((percent / 100) * width);
|
|
61
|
+
const empty = width - filled;
|
|
62
|
+
return "█".repeat(filled) + "░".repeat(empty);
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=borders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"borders.js","sourceRoot":"","sources":["../../../src/hub/styles/borders.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../../src/hub/styles/colors.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;CA4BlB,CAAC;AAGF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmCtB,CAAC;AAGF,eAAO,MAAM,gBAAgB;;;;;;;;;CAS5B,CAAC;AAGF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAUrD,CAAC;AAGF,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,OAAO,UAAU,GAAG,MAAM,CAE7E;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAqBlD;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAInD"}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
// RAXFLOW Design System - Colors
|
|
2
|
+
// Based on cli-design.md specifications
|
|
3
|
+
export const colors = {
|
|
4
|
+
// Backgrounds
|
|
5
|
+
background: "#050505",
|
|
6
|
+
surface: "#0a0a0a",
|
|
7
|
+
surfaceElev: "#0d0d0d",
|
|
8
|
+
// Primary
|
|
9
|
+
primary: "#f97316", // Orange vif
|
|
10
|
+
primaryGlow: "rgba(249, 115, 22, 0.3)",
|
|
11
|
+
primaryGlowHover: "rgba(249, 115, 22, 0.5)",
|
|
12
|
+
// Text
|
|
13
|
+
textPrimary: "#ffffff",
|
|
14
|
+
textSecondary: "#a1a1aa",
|
|
15
|
+
textTertiary: "#71717a",
|
|
16
|
+
textQuaternary: "#3f3f46",
|
|
17
|
+
// Status
|
|
18
|
+
success: "#22c55e",
|
|
19
|
+
warning: "#f59e0b",
|
|
20
|
+
error: "#ef4444",
|
|
21
|
+
// Borders
|
|
22
|
+
border: "#27272a",
|
|
23
|
+
// Mutations
|
|
24
|
+
mutation: "#f59e0b",
|
|
25
|
+
mutationGlow: "rgba(245, 158, 11, 0.4)",
|
|
26
|
+
};
|
|
27
|
+
// ANSI color codes for terminal
|
|
28
|
+
export const ansiColors = {
|
|
29
|
+
reset: "\x1b[0m",
|
|
30
|
+
bright: "\x1b[1m",
|
|
31
|
+
dim: "\x1b[2m",
|
|
32
|
+
// Foreground colors
|
|
33
|
+
black: "\x1b[30m",
|
|
34
|
+
red: "\x1b[31m",
|
|
35
|
+
green: "\x1b[32m",
|
|
36
|
+
yellow: "\x1b[33m",
|
|
37
|
+
blue: "\x1b[34m",
|
|
38
|
+
magenta: "\x1b[35m",
|
|
39
|
+
cyan: "\x1b[36m",
|
|
40
|
+
white: "\x1b[37m",
|
|
41
|
+
gray: "\x1b[90m",
|
|
42
|
+
// Bright colors
|
|
43
|
+
brightRed: "\x1b[91m",
|
|
44
|
+
brightGreen: "\x1b[92m",
|
|
45
|
+
brightYellow: "\x1b[93m",
|
|
46
|
+
brightBlue: "\x1b[94m",
|
|
47
|
+
brightMagenta: "\x1b[95m",
|
|
48
|
+
brightCyan: "\x1b[96m",
|
|
49
|
+
brightWhite: "\x1b[97m",
|
|
50
|
+
// Background colors
|
|
51
|
+
bgBlack: "\x1b[40m",
|
|
52
|
+
bgRed: "\x1b[41m",
|
|
53
|
+
bgGreen: "\x1b[42m",
|
|
54
|
+
bgYellow: "\x1b[43m",
|
|
55
|
+
bgBlue: "\x1b[44m",
|
|
56
|
+
bgMagenta: "\x1b[45m",
|
|
57
|
+
bgCyan: "\x1b[46m",
|
|
58
|
+
bgWhite: "\x1b[47m",
|
|
59
|
+
bgGray: "\x1b[100m",
|
|
60
|
+
};
|
|
61
|
+
// Status indicators
|
|
62
|
+
export const statusIndicators = {
|
|
63
|
+
online: "●",
|
|
64
|
+
offline: "○",
|
|
65
|
+
running: "▶",
|
|
66
|
+
loading: "◐",
|
|
67
|
+
mutation: "◆",
|
|
68
|
+
checkpoint: "■",
|
|
69
|
+
pending: "○",
|
|
70
|
+
done: "✓",
|
|
71
|
+
};
|
|
72
|
+
// Provider indicators
|
|
73
|
+
export const providerIndicators = {
|
|
74
|
+
host: "[H]",
|
|
75
|
+
claude: "[C]",
|
|
76
|
+
opencode: "[O]",
|
|
77
|
+
kilo: "[K]",
|
|
78
|
+
anthropic: "[A]",
|
|
79
|
+
gemini: "[G]",
|
|
80
|
+
mistral: "[M]",
|
|
81
|
+
groq: "[Q]",
|
|
82
|
+
openai: "[O]",
|
|
83
|
+
};
|
|
84
|
+
// Utility functions
|
|
85
|
+
export function colorize(text, color) {
|
|
86
|
+
return `${ansiColors[color]}${text}${ansiColors.reset}`;
|
|
87
|
+
}
|
|
88
|
+
export function statusColor(status) {
|
|
89
|
+
switch (status.toLowerCase()) {
|
|
90
|
+
case "online":
|
|
91
|
+
case "ready":
|
|
92
|
+
case "active":
|
|
93
|
+
case "done":
|
|
94
|
+
case "success":
|
|
95
|
+
return ansiColors.green;
|
|
96
|
+
case "running":
|
|
97
|
+
case "busy":
|
|
98
|
+
return ansiColors.yellow;
|
|
99
|
+
case "error":
|
|
100
|
+
case "failed":
|
|
101
|
+
return ansiColors.red;
|
|
102
|
+
case "queued":
|
|
103
|
+
case "pending":
|
|
104
|
+
case "idle":
|
|
105
|
+
return ansiColors.gray;
|
|
106
|
+
default:
|
|
107
|
+
return ansiColors.reset;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
export function formatStatus(status) {
|
|
111
|
+
const indicator = statusIndicators[status.toLowerCase()] || "○";
|
|
112
|
+
const color = statusColor(status);
|
|
113
|
+
return `${color}${indicator}${ansiColors.reset}`;
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=colors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colors.js","sourceRoot":"","sources":["../../../src/hub/styles/colors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../../../src/hub/styles/typography.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCtB,CAAC;AAGF,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE9C;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAK7D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGhE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
// RAXFLOW Design System - Typography
|
|
2
|
+
// Space Grotesk for titles, Space Mono for system text
|
|
3
|
+
export const typography = {
|
|
4
|
+
// Font families
|
|
5
|
+
primary: "Space Grotesk",
|
|
6
|
+
monospace: "Space Mono",
|
|
7
|
+
// Font weights
|
|
8
|
+
weights: {
|
|
9
|
+
light: 300,
|
|
10
|
+
regular: 400,
|
|
11
|
+
medium: 500,
|
|
12
|
+
bold: 700,
|
|
13
|
+
},
|
|
14
|
+
// Sizes (in terminal columns roughly)
|
|
15
|
+
sizes: {
|
|
16
|
+
hero: 4, // text-4xl
|
|
17
|
+
section: 2, // text-2xl
|
|
18
|
+
label: 0, // text-[10px]
|
|
19
|
+
body: 1, // text-sm
|
|
20
|
+
code: 0, // text-xs
|
|
21
|
+
status: -1, // text-[9px]
|
|
22
|
+
agent: 0, // text-xs
|
|
23
|
+
provider: -1, // text-[9px]
|
|
24
|
+
},
|
|
25
|
+
// Tracking (letter-spacing)
|
|
26
|
+
tracking: {
|
|
27
|
+
none: "",
|
|
28
|
+
tight: "",
|
|
29
|
+
normal: "",
|
|
30
|
+
wide: " ",
|
|
31
|
+
label: " ", // 0.15em equivalent in monospace
|
|
32
|
+
},
|
|
33
|
+
};
|
|
34
|
+
// Text formatting utilities for terminal
|
|
35
|
+
export function upperCase(text) {
|
|
36
|
+
return text.toUpperCase();
|
|
37
|
+
}
|
|
38
|
+
export function padCenter(text, width) {
|
|
39
|
+
const padding = Math.max(0, width - text.length);
|
|
40
|
+
const leftPad = Math.floor(padding / 2);
|
|
41
|
+
const rightPad = padding - leftPad;
|
|
42
|
+
return " ".repeat(leftPad) + text + " ".repeat(rightPad);
|
|
43
|
+
}
|
|
44
|
+
export function padRight(text, width) {
|
|
45
|
+
const padding = Math.max(0, width - text.length);
|
|
46
|
+
return text + " ".repeat(padding);
|
|
47
|
+
}
|
|
48
|
+
export function padLeft(text, width) {
|
|
49
|
+
const padding = Math.max(0, width - text.length);
|
|
50
|
+
return " ".repeat(padding) + text;
|
|
51
|
+
}
|
|
52
|
+
export function truncate(text, maxLength) {
|
|
53
|
+
if (text.length <= maxLength)
|
|
54
|
+
return text;
|
|
55
|
+
return text.slice(0, maxLength - 3) + "...";
|
|
56
|
+
}
|
|
57
|
+
export function formatLabel(text) {
|
|
58
|
+
return upperCase(text).split("").join(" ");
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=typography.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typography.js","sourceRoot":"","sources":["../../../src/hub/styles/typography.ts"],"names":[],"mappings":"AAAA,qCAAqC;AACrC,uDAAuD;AAEvD,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,gBAAgB;IAChB,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,YAAY;IAEvB,eAAe;IACf,OAAO,EAAE;QACP,KAAK,EAAE,GAAG;QACV,OAAO,EAAE,GAAG;QACZ,MAAM,EAAE,GAAG;QACX,IAAI,EAAE,GAAG;KACV;IAED,sCAAsC;IACtC,KAAK,EAAE;QACL,IAAI,EAAE,CAAC,EAAO,WAAW;QACzB,OAAO,EAAE,CAAC,EAAI,WAAW;QACzB,KAAK,EAAE,CAAC,EAAM,cAAc;QAC5B,IAAI,EAAE,CAAC,EAAO,UAAU;QACxB,IAAI,EAAE,CAAC,EAAO,UAAU;QACxB,MAAM,EAAE,CAAC,CAAC,EAAI,aAAa;QAC3B,KAAK,EAAE,CAAC,EAAM,UAAU;QACxB,QAAQ,EAAE,CAAC,CAAC,EAAE,aAAa;KAC5B;IAED,4BAA4B;IAC5B,QAAQ,EAAE;QACR,IAAI,EAAE,EAAE;QACR,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE;QACV,IAAI,EAAE,GAAG;QACT,KAAK,EAAE,IAAI,EAAE,iCAAiC;KAC/C;CACF,CAAC;AAEF,yCAAyC;AACzC,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAAY,EAAE,KAAa;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,OAAO,GAAG,OAAO,CAAC;IACnC,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAAa;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,IAAY,EAAE,KAAa;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,SAAiB;IACtD,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAC9C,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App.d.ts","sourceRoot":"","sources":["../../../src/hub/tui/App.tsx"],"names":[],"mappings":"AAUA,wBAAgB,GAAG,QA2ElB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React, { useState } from 'react';
|
|
3
|
+
import { Box, Text, useInput, useApp } from 'ink';
|
|
4
|
+
import { Header } from './components/Header.js';
|
|
5
|
+
import { DAGPanel } from './components/DAGPanel.js';
|
|
6
|
+
import { AgentQueue } from './components/AgentQueue.js';
|
|
7
|
+
import { LogsPanel } from './components/LogsPanel.js';
|
|
8
|
+
import { StatusBar } from './components/StatusBar.js';
|
|
9
|
+
import { useEvents } from './hooks/useEvents.js';
|
|
10
|
+
export function App() {
|
|
11
|
+
const [currentView, setCurrentView] = useState('dag');
|
|
12
|
+
const [isRunning, setIsRunning] = useState(false);
|
|
13
|
+
const { exit } = useApp();
|
|
14
|
+
// Subscribe to events
|
|
15
|
+
const events = useEvents();
|
|
16
|
+
// Handle keyboard input
|
|
17
|
+
useInput((input, key) => {
|
|
18
|
+
// F1-F8 keys for views
|
|
19
|
+
if (key.sequence === '\x1bOP')
|
|
20
|
+
setCurrentView('dag'); // F1
|
|
21
|
+
if (key.sequence === '\x1bOQ')
|
|
22
|
+
setCurrentView('agents'); // F2
|
|
23
|
+
if (key.sequence === '\x1bOR')
|
|
24
|
+
setCurrentView('providers'); // F3
|
|
25
|
+
if (key.sequence === '\x1bOS')
|
|
26
|
+
setCurrentView('workflows'); // F4
|
|
27
|
+
if (input === '\x1b[15~')
|
|
28
|
+
setCurrentView('logs'); // F5
|
|
29
|
+
if (input === '\x1b[17~')
|
|
30
|
+
setCurrentView('metrics'); // F6
|
|
31
|
+
if (input === '\x1b[18~')
|
|
32
|
+
setCurrentView('memory'); // F7
|
|
33
|
+
if (input === '\x1b[19~')
|
|
34
|
+
setCurrentView('dashboard'); // F8
|
|
35
|
+
// Tab to cycle views
|
|
36
|
+
if (key.tab) {
|
|
37
|
+
const views = ['dag', 'agents', 'providers', 'workflows', 'logs', 'metrics', 'memory'];
|
|
38
|
+
const currentIndex = views.indexOf(currentView);
|
|
39
|
+
const nextIndex = (currentIndex + 1) % views.length;
|
|
40
|
+
setCurrentView(views[nextIndex]);
|
|
41
|
+
}
|
|
42
|
+
// Q to quit
|
|
43
|
+
if (input === 'q' || input === 'Q') {
|
|
44
|
+
exit();
|
|
45
|
+
}
|
|
46
|
+
// Ctrl+P to pause
|
|
47
|
+
if (key.ctrl && input === 'p') {
|
|
48
|
+
setIsRunning(!isRunning);
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
return (_jsxs(Box, { flexDirection: "column", height: "100%", children: [_jsx(Header, { currentView: currentView }), _jsxs(Box, { flexGrow: 1, flexDirection: "row", children: [_jsxs(Box, { flexGrow: 2, borderStyle: "single", padding: 1, children: [currentView === 'dag' && _jsx(DAGPanel, {}), currentView === 'agents' && _jsx(AgentQueue, {}), currentView === 'providers' && _jsx(Text, { children: "Providers View" }), currentView === 'workflows' && _jsx(Text, { children: "Workflows View" }), currentView === 'logs' && _jsx(LogsPanel, {}), currentView === 'metrics' && _jsx(Text, { children: "Metrics View" }), currentView === 'memory' && _jsx(Text, { children: "Memory View" }), currentView === 'dashboard' && _jsx(Text, { children: "Dashboard View" })] }), currentView !== 'agents' && (_jsx(Box, { width: 30, borderStyle: "single", padding: 1, children: _jsx(AgentQueue, { compact: true }) }))] }), _jsx(Box, { height: 8, borderStyle: "single", padding: 1, children: _jsx(LogsPanel, { maxLines: 5 }) }), _jsx(StatusBar, { isRunning: isRunning, currentView: currentView })] }));
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=App.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/hub/tui/App.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentQueue.d.ts","sourceRoot":"","sources":["../../../../src/hub/tui/components/AgentQueue.tsx"],"names":[],"mappings":"AAIA,UAAU,eAAe;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAwBD,wBAAgB,UAAU,CAAC,EAAE,OAAe,EAAE,EAAE,eAAe,OAsC9D"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { Box, Text } from 'ink';
|
|
4
|
+
import { providerIndicators } from '../../styles/colors.js';
|
|
5
|
+
const mockAgents = [
|
|
6
|
+
{ name: 'CodeGenerator', provider: 'host', status: 'running', progress: 80, task: 'Generating auth.ts' },
|
|
7
|
+
{ name: 'TestAgent', provider: 'host', status: 'queued', task: 'Queued' },
|
|
8
|
+
{ name: 'FixAgent', provider: 'claude', status: 'idle' },
|
|
9
|
+
{ name: 'ValidatorAgent', provider: 'host', status: 'online' },
|
|
10
|
+
];
|
|
11
|
+
const statusColors = {
|
|
12
|
+
online: 'green',
|
|
13
|
+
running: 'yellow',
|
|
14
|
+
queued: 'gray',
|
|
15
|
+
idle: 'gray',
|
|
16
|
+
};
|
|
17
|
+
export function AgentQueue({ compact = false }) {
|
|
18
|
+
return (_jsxs(Box, { flexDirection: "column", gap: 1, children: [_jsx(Text, { bold: true, color: "#f97316", children: "AGENT QUEUE" }), mockAgents.map((agent) => (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Box, { children: [_jsx(Text, { color: statusColors[agent.status], children: agent.status === 'running' ? '▶' : agent.status === 'queued' ? '◐' : '●' }), _jsx(Box, { marginLeft: 1, width: compact ? 12 : 20, children: _jsx(Text, { bold: true, children: agent.name.slice(0, compact ? 12 : 20) }) }), _jsx(Text, { color: "#a1a1aa", children: providerIndicators[agent.provider] || '[?]' })] }), agent.status === 'running' && agent.progress !== undefined && (_jsx(Box, { marginLeft: 2, children: _jsxs(Text, { color: "yellow", children: ["\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2591\u2591 ", agent.progress, "%"] }) })), agent.task && (_jsx(Box, { marginLeft: 2, children: _jsx(Text, { dimColor: true, children: agent.task }) }))] }, agent.name)))] }));
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=AgentQueue.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentQueue.js","sourceRoot":"","sources":["../../../../src/hub/tui/components/AgentQueue.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,kBAAkB,EAAoB,MAAM,wBAAwB,CAAC;AAc9E,MAAM,UAAU,GAAY;IAC1B,EAAE,IAAI,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE;IACxG,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;IACzE,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;IACxD,EAAE,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;CAC/D,CAAC;AAEF,MAAM,YAAY,GAA2B;IAC3C,MAAM,EAAE,OAAO;IACf,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,MAAM;IACd,IAAI,EAAE,MAAM;CACb,CAAC;AAEF,MAAM,UAAU,UAAU,CAAC,EAAE,OAAO,GAAG,KAAK,EAAmB;IAC7D,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,GAAG,EAAE,CAAC,aAChC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,SAAS,4BAEnB,EAEN,UAAU,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CACzB,MAAC,GAAG,IAAkB,aAAa,EAAC,QAAQ,aAC1C,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,YACpC,KAAK,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GACpE,EACP,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAC1C,KAAC,IAAI,IAAC,IAAI,kBAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GAAQ,GACtD,EACN,KAAC,IAAI,IAAC,KAAK,EAAC,SAAS,YAClB,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,KAAK,GACvC,IACH,EAEL,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAC7D,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,sGACF,KAAK,CAAC,QAAQ,SACzB,GACH,CACP,EAEA,KAAK,CAAC,IAAI,IAAI,CACb,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,CAAC,IAAI,GAAQ,GAC9B,CACP,KAzBO,KAAK,CAAC,IAAI,CA0Bd,CACP,CAAC,IACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
interface DAGPanelProps {
|
|
2
|
+
workflow?: {
|
|
3
|
+
levels: Array<{
|
|
4
|
+
name: string;
|
|
5
|
+
progress: number;
|
|
6
|
+
nodes: Array<{
|
|
7
|
+
name: string;
|
|
8
|
+
status: 'done' | 'running' | 'pending' | 'queued';
|
|
9
|
+
agent: string;
|
|
10
|
+
}>;
|
|
11
|
+
}>;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export declare function DAGPanel({ workflow }: DAGPanelProps): any;
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=DAGPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DAGPanel.d.ts","sourceRoot":"","sources":["../../../../src/hub/tui/components/DAGPanel.tsx"],"names":[],"mappings":"AAKA,UAAU,aAAa;IACrB,QAAQ,CAAC,EAAE;QACT,MAAM,EAAE,KAAK,CAAC;YACZ,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,MAAM,CAAC;YACjB,KAAK,EAAE,KAAK,CAAC;gBACX,IAAI,EAAE,MAAM,CAAC;gBACb,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;gBAClD,KAAK,EAAE,MAAM,CAAC;aACf,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ,CAAC;CACH;AAgDD,wBAAgB,QAAQ,CAAC,EAAE,QAAuB,EAAE,EAAE,aAAa,OAqClE"}
|