rax-flow 0.1.9 → 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.
Files changed (223) hide show
  1. package/dist/bin.js +8 -6
  2. package/dist/bin.js.map +1 -1
  3. package/dist/hub/commands/index.d.ts.map +1 -1
  4. package/dist/hub/commands/index.js +7 -4
  5. package/dist/hub/commands/index.js.map +1 -1
  6. package/dist/hub/event-listener.d.ts +6 -0
  7. package/dist/hub/event-listener.d.ts.map +1 -1
  8. package/dist/hub/event-listener.js +10 -6
  9. package/dist/hub/event-listener.js.map +1 -1
  10. package/dist/hub/index.d.ts.map +1 -1
  11. package/dist/hub/index.js +12 -0
  12. package/dist/hub/index.js.map +1 -1
  13. package/dist/setup/components/ApiKeyInput.d.ts +25 -0
  14. package/dist/setup/components/ApiKeyInput.d.ts.map +1 -0
  15. package/dist/setup/components/ApiKeyInput.js +54 -0
  16. package/dist/setup/components/ApiKeyInput.js.map +1 -0
  17. package/dist/setup/components/AsciiBanner.d.ts +22 -0
  18. package/dist/setup/components/AsciiBanner.d.ts.map +1 -0
  19. package/dist/setup/components/AsciiBanner.js +55 -0
  20. package/dist/setup/components/AsciiBanner.js.map +1 -0
  21. package/dist/setup/components/CliDetector.d.ts +17 -0
  22. package/dist/setup/components/CliDetector.d.ts.map +1 -0
  23. package/dist/setup/components/CliDetector.js +79 -0
  24. package/dist/setup/components/CliDetector.js.map +1 -0
  25. package/dist/setup/components/ModeSelector.d.ts +8 -0
  26. package/dist/setup/components/ModeSelector.d.ts.map +1 -0
  27. package/dist/setup/components/ModeSelector.js +76 -0
  28. package/dist/setup/components/ModeSelector.js.map +1 -0
  29. package/dist/setup/components/ProviderSelector.d.ts +18 -0
  30. package/dist/setup/components/ProviderSelector.d.ts.map +1 -0
  31. package/dist/setup/components/ProviderSelector.js +97 -0
  32. package/dist/setup/components/ProviderSelector.js.map +1 -0
  33. package/dist/setup/components/SetupWizard.d.ts +2 -0
  34. package/dist/setup/components/SetupWizard.d.ts.map +1 -0
  35. package/dist/setup/components/SetupWizard.js +212 -0
  36. package/dist/setup/components/SetupWizard.js.map +1 -0
  37. package/dist/setup/components/StepIndicator.d.ts +13 -0
  38. package/dist/setup/components/StepIndicator.d.ts.map +1 -0
  39. package/dist/setup/components/StepIndicator.js +18 -0
  40. package/dist/setup/components/StepIndicator.js.map +1 -0
  41. package/dist/setup/components/SuccessScreen.d.ts +18 -0
  42. package/dist/setup/components/SuccessScreen.d.ts.map +1 -0
  43. package/dist/setup/components/SuccessScreen.js +38 -0
  44. package/dist/setup/components/SuccessScreen.js.map +1 -0
  45. package/dist/setup/index.d.ts +12 -0
  46. package/dist/setup/index.d.ts.map +1 -0
  47. package/dist/setup/index.js +29 -0
  48. package/dist/setup/index.js.map +1 -0
  49. package/dist/setup/utils/cli-detection.d.ts +12 -0
  50. package/dist/setup/utils/cli-detection.d.ts.map +1 -0
  51. package/dist/setup/utils/cli-detection.js +83 -0
  52. package/dist/setup/utils/cli-detection.js.map +1 -0
  53. package/dist/setup/utils/config-writer.d.ts +43 -0
  54. package/dist/setup/utils/config-writer.d.ts.map +1 -0
  55. package/dist/setup/utils/config-writer.js +180 -0
  56. package/dist/setup/utils/config-writer.js.map +1 -0
  57. package/dist/tui/App.d.ts +2 -1
  58. package/dist/tui/App.d.ts.map +1 -1
  59. package/dist/tui/App.js +78 -18
  60. package/dist/tui/App.js.map +1 -1
  61. package/dist/tui/components/AgentStateIcon.d.ts +18 -0
  62. package/dist/tui/components/AgentStateIcon.d.ts.map +1 -0
  63. package/dist/tui/components/AgentStateIcon.js +57 -0
  64. package/dist/tui/components/AgentStateIcon.js.map +1 -0
  65. package/dist/tui/components/AnimatedBranch.d.ts +39 -0
  66. package/dist/tui/components/AnimatedBranch.d.ts.map +1 -0
  67. package/dist/tui/components/AnimatedBranch.js +64 -0
  68. package/dist/tui/components/AnimatedBranch.js.map +1 -0
  69. package/dist/tui/components/ChatPanel.d.ts +2 -1
  70. package/dist/tui/components/ChatPanel.d.ts.map +1 -1
  71. package/dist/tui/components/ChatPanel.js +47 -28
  72. package/dist/tui/components/ChatPanel.js.map +1 -1
  73. package/dist/tui/components/DAGPanel.d.ts +14 -2
  74. package/dist/tui/components/DAGPanel.d.ts.map +1 -1
  75. package/dist/tui/components/DAGPanel.js +48 -27
  76. package/dist/tui/components/DAGPanel.js.map +1 -1
  77. package/dist/tui/components/ExecutionTimeline.d.ts +34 -0
  78. package/dist/tui/components/ExecutionTimeline.d.ts.map +1 -0
  79. package/dist/tui/components/ExecutionTimeline.js +67 -0
  80. package/dist/tui/components/ExecutionTimeline.js.map +1 -0
  81. package/dist/tui/components/Header.d.ts +2 -1
  82. package/dist/tui/components/Header.d.ts.map +1 -1
  83. package/dist/tui/components/Header.js +23 -20
  84. package/dist/tui/components/Header.js.map +1 -1
  85. package/dist/tui/components/HelpOverlay.d.ts +2 -1
  86. package/dist/tui/components/HelpOverlay.d.ts.map +1 -1
  87. package/dist/tui/components/HelpOverlay.js +59 -41
  88. package/dist/tui/components/HelpOverlay.js.map +1 -1
  89. package/dist/tui/components/InputBar.d.ts +3 -1
  90. package/dist/tui/components/InputBar.d.ts.map +1 -1
  91. package/dist/tui/components/InputBar.js +12 -7
  92. package/dist/tui/components/InputBar.js.map +1 -1
  93. package/dist/tui/components/LogsPanel.d.ts +3 -1
  94. package/dist/tui/components/LogsPanel.d.ts.map +1 -1
  95. package/dist/tui/components/LogsPanel.js +52 -3
  96. package/dist/tui/components/LogsPanel.js.map +1 -1
  97. package/dist/tui/components/MemoryPanel.d.ts +8 -6
  98. package/dist/tui/components/MemoryPanel.d.ts.map +1 -1
  99. package/dist/tui/components/MemoryPanel.js +37 -10
  100. package/dist/tui/components/MemoryPanel.js.map +1 -1
  101. package/dist/tui/components/MetricsPanel.d.ts +12 -7
  102. package/dist/tui/components/MetricsPanel.d.ts.map +1 -1
  103. package/dist/tui/components/MetricsPanel.js +24 -11
  104. package/dist/tui/components/MetricsPanel.js.map +1 -1
  105. package/dist/tui/components/StatusPanel.d.ts +3 -1
  106. package/dist/tui/components/StatusPanel.d.ts.map +1 -1
  107. package/dist/tui/components/StatusPanel.js +20 -18
  108. package/dist/tui/components/StatusPanel.js.map +1 -1
  109. package/dist/tui/components/TaskTree.d.ts +28 -0
  110. package/dist/tui/components/TaskTree.d.ts.map +1 -0
  111. package/dist/tui/components/TaskTree.js +29 -0
  112. package/dist/tui/components/TaskTree.js.map +1 -0
  113. package/dist/tui/components/animations/ProgressBar.d.ts +39 -0
  114. package/dist/tui/components/animations/ProgressBar.d.ts.map +1 -0
  115. package/dist/tui/components/animations/ProgressBar.js +39 -0
  116. package/dist/tui/components/animations/ProgressBar.js.map +1 -0
  117. package/dist/tui/components/animations/Pulse.d.ts +17 -0
  118. package/dist/tui/components/animations/Pulse.d.ts.map +1 -0
  119. package/dist/tui/components/animations/Pulse.js +47 -0
  120. package/dist/tui/components/animations/Pulse.js.map +1 -0
  121. package/dist/tui/components/animations/Spinner.d.ts +13 -0
  122. package/dist/tui/components/animations/Spinner.d.ts.map +1 -0
  123. package/dist/tui/components/animations/Spinner.js +36 -0
  124. package/dist/tui/components/animations/Spinner.js.map +1 -0
  125. package/dist/tui/components/animations/StatusAnimator.d.ts +27 -0
  126. package/dist/tui/components/animations/StatusAnimator.d.ts.map +1 -0
  127. package/dist/tui/components/animations/StatusAnimator.js +85 -0
  128. package/dist/tui/components/animations/StatusAnimator.js.map +1 -0
  129. package/dist/tui/components/animations/TypingEffect.d.ts +26 -0
  130. package/dist/tui/components/animations/TypingEffect.d.ts.map +1 -0
  131. package/dist/tui/components/animations/TypingEffect.js +59 -0
  132. package/dist/tui/components/animations/TypingEffect.js.map +1 -0
  133. package/dist/tui/components/animations/index.d.ts +8 -0
  134. package/dist/tui/components/animations/index.d.ts.map +1 -0
  135. package/dist/tui/components/animations/index.js +6 -0
  136. package/dist/tui/components/animations/index.js.map +1 -0
  137. package/dist/tui/hooks/useAnimation.d.ts +42 -0
  138. package/dist/tui/hooks/useAnimation.d.ts.map +1 -0
  139. package/dist/tui/hooks/useAnimation.js +212 -0
  140. package/dist/tui/hooks/useAnimation.js.map +1 -0
  141. package/dist/tui/hooks/useAppState.d.ts +9 -6
  142. package/dist/tui/hooks/useAppState.d.ts.map +1 -1
  143. package/dist/tui/hooks/useAppState.js +84 -69
  144. package/dist/tui/hooks/useAppState.js.map +1 -1
  145. package/dist/tui/services/orchestrator.d.ts.map +1 -1
  146. package/dist/tui/services/orchestrator.js +47 -3
  147. package/dist/tui/services/orchestrator.js.map +1 -1
  148. package/dist/tui/styles/borders.d.ts +31 -0
  149. package/dist/tui/styles/borders.d.ts.map +1 -0
  150. package/dist/tui/styles/borders.js +47 -0
  151. package/dist/tui/styles/borders.js.map +1 -0
  152. package/dist/tui/styles/colors.d.ts +18 -0
  153. package/dist/tui/styles/colors.d.ts.map +1 -0
  154. package/dist/tui/styles/colors.js +18 -0
  155. package/dist/tui/styles/colors.js.map +1 -0
  156. package/dist/tui/styles/index.d.ts +6 -0
  157. package/dist/tui/styles/index.d.ts.map +1 -0
  158. package/dist/tui/styles/index.js +6 -0
  159. package/dist/tui/styles/index.js.map +1 -0
  160. package/dist/tui/styles/indicators.d.ts +67 -0
  161. package/dist/tui/styles/indicators.d.ts.map +1 -0
  162. package/dist/tui/styles/indicators.js +42 -0
  163. package/dist/tui/styles/indicators.js.map +1 -0
  164. package/dist/tui/styles/layout.d.ts +21 -0
  165. package/dist/tui/styles/layout.d.ts.map +1 -0
  166. package/dist/tui/styles/layout.js +42 -0
  167. package/dist/tui/styles/layout.js.map +1 -0
  168. package/dist/tui/styles/providers.d.ts +77 -0
  169. package/dist/tui/styles/providers.d.ts.map +1 -0
  170. package/dist/tui/styles/providers.js +31 -0
  171. package/dist/tui/styles/providers.js.map +1 -0
  172. package/dist/tui/utils/animation.d.ts +44 -0
  173. package/dist/tui/utils/animation.d.ts.map +1 -0
  174. package/dist/tui/utils/animation.js +107 -0
  175. package/dist/tui/utils/animation.js.map +1 -0
  176. package/package.json +8 -8
  177. package/src/bin.ts +8 -5
  178. package/src/hub/commands/index.ts +7 -4
  179. package/src/hub/event-listener.ts +14 -10
  180. package/src/hub/index.ts +14 -2
  181. package/src/setup/components/ApiKeyInput.tsx +158 -0
  182. package/src/setup/components/AsciiBanner.tsx +125 -0
  183. package/src/setup/components/CliDetector.tsx +230 -0
  184. package/src/setup/components/ModeSelector.tsx +137 -0
  185. package/src/setup/components/ProviderSelector.tsx +174 -0
  186. package/src/setup/components/SetupWizard.tsx +368 -0
  187. package/src/setup/components/StepIndicator.tsx +74 -0
  188. package/src/setup/components/SuccessScreen.tsx +229 -0
  189. package/src/setup/index.ts +34 -0
  190. package/src/setup/utils/cli-detection.ts +99 -0
  191. package/src/setup/utils/config-writer.ts +249 -0
  192. package/src/tui/App.tsx +95 -64
  193. package/src/tui/components/AgentStateIcon.tsx +84 -0
  194. package/src/tui/components/AnimatedBranch.tsx +134 -0
  195. package/src/tui/components/ChatPanel.tsx +85 -43
  196. package/src/tui/components/DAGPanel.tsx +150 -58
  197. package/src/tui/components/ExecutionTimeline.tsx +225 -0
  198. package/src/tui/components/Header.tsx +67 -43
  199. package/src/tui/components/HelpOverlay.tsx +118 -61
  200. package/src/tui/components/InputBar.tsx +33 -19
  201. package/src/tui/components/LogsPanel.tsx +106 -14
  202. package/src/tui/components/MemoryPanel.tsx +106 -42
  203. package/src/tui/components/MetricsPanel.tsx +102 -61
  204. package/src/tui/components/StatusPanel.tsx +84 -37
  205. package/src/tui/components/TaskTree.tsx +159 -0
  206. package/src/tui/components/animations/ProgressBar.tsx +160 -0
  207. package/src/tui/components/animations/Pulse.tsx +73 -0
  208. package/src/tui/components/animations/Spinner.tsx +54 -0
  209. package/src/tui/components/animations/StatusAnimator.tsx +153 -0
  210. package/src/tui/components/animations/TypingEffect.tsx +119 -0
  211. package/src/tui/components/animations/index.ts +16 -0
  212. package/src/tui/hooks/useAnimation.ts +290 -0
  213. package/src/tui/hooks/useAppState.ts +52 -32
  214. package/src/tui/services/orchestrator.ts +57 -4
  215. package/src/tui/styles/borders.ts +51 -0
  216. package/src/tui/styles/colors.ts +19 -0
  217. package/src/tui/styles/index.ts +20 -0
  218. package/src/tui/styles/indicators.ts +54 -0
  219. package/src/tui/styles/layout.ts +44 -0
  220. package/src/tui/styles/providers.ts +32 -0
  221. package/src/tui/utils/animation.ts +124 -0
  222. package/LICENSE +0 -21
  223. package/tsconfig.tsbuildinfo +0 -1
package/dist/bin.js CHANGED
@@ -1,5 +1,4 @@
1
1
  #!/usr/bin/env node
2
- import { runInstall } from "./install.js";
3
2
  import { runBenchmark } from "./benchmark.js";
4
3
  import { runBootstrap } from "./bootstrap.js";
5
4
  import { runBridgeTest } from "./bridge-test.js";
@@ -8,6 +7,7 @@ import { runInitHost } from "./init-host.js";
8
7
  import { runWorkflow } from "./run.js";
9
8
  import { runDashboard } from "./dashboard.js";
10
9
  import { startHubOneShot } from "./hub/index.js";
10
+ import { runSetup } from "./setup/index.js";
11
11
  function getFlag(args, flag) {
12
12
  const index = args.indexOf(flag);
13
13
  if (index === -1)
@@ -42,8 +42,11 @@ async function main() {
42
42
  console.log(" hub Launch interactive hub");
43
43
  console.log(" --run <prompt> One-shot mode (execute and exit)");
44
44
  console.log("");
45
- console.log("Legacy Commands:");
46
- console.log(" install [--ui] Setup project, providers and .raxrc");
45
+ console.log("Setup:");
46
+ console.log(" setup Interactive setup wizard (TUI)");
47
+ console.log(" install [--ui] Legacy setup (alias for setup)");
48
+ console.log("");
49
+ console.log("Commands:");
47
50
  console.log(" run --prompt <text> [--workflow path] [--json] [--stream] [--max-parallel N] [--no-cache-persist]");
48
51
  console.log(" Execute workflow");
49
52
  console.log(" Optional: [--provider host|openai|claude|rest] [--bridge-command \"node bridge.mjs\"]");
@@ -56,9 +59,8 @@ async function main() {
56
59
  console.log(" dashboard [--port N] Start the visual insights dashboard");
57
60
  process.exit(0);
58
61
  }
59
- if (command === "install") {
60
- const openUi = args.includes("--ui");
61
- const code = await runInstall({ cwd: process.cwd(), openUi });
62
+ if (command === "install" || command === "setup") {
63
+ const code = await runSetup();
62
64
  process.exit(code);
63
65
  }
64
66
  if (command === "run") {
package/dist/bin.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../src/bin.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hub/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAYhD,wBAAgB,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAO5D;AAED,wBAAgB,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEnE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hub/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAahD,wBAAgB,eAAe,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAO5D;AAED,wBAAgB,kBAAkB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEnE"}
@@ -6,6 +6,7 @@ import { listWorkflows } from "./workflows.js";
6
6
  import { showLogs } from "./logs.js";
7
7
  import { showMetrics } from "./metrics.js";
8
8
  import { showMemory } from "./memory.js";
9
+ import { startTUI } from "../../tui/index.js";
9
10
  const commands = new Map();
10
11
  export function registerCommand(def) {
11
12
  commands.set(def.name, def);
@@ -92,16 +93,18 @@ registerCommand({
92
93
  name: "ui",
93
94
  description: "Lance le mode TUI plein écran",
94
95
  handler: async () => {
95
- console.log("⚠️ Mode TUI non disponible - nécessite l'installation de react et ink");
96
- console.log(" npm install react ink");
96
+ console.log("\n🎬 Lancement du mode TUI...\n");
97
+ const { waitUntilExit } = startTUI();
98
+ await waitUntilExit();
97
99
  },
98
100
  });
99
101
  registerCommand({
100
102
  name: "chat",
101
103
  description: "Lance le mode conversationnel",
102
104
  handler: async () => {
103
- console.log("⚠️ Mode Chat non disponible - nécessite l'installation de react et ink");
104
- console.log(" npm install react ink");
105
+ console.log("\n💬 Lancement du mode Chat (TUI)...\n");
106
+ const { waitUntilExit } = startTUI();
107
+ await waitUntilExit();
105
108
  },
106
109
  });
107
110
  const placeholderCommands = [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hub/commands/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/hub/commands/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { RuntimeEventBus, RuntimeEvent } from "rax-flow-core";
2
+ export type { RuntimeEvent };
3
+ export declare function getEventBus(): RuntimeEventBus;
4
+ export declare function subscribeToEvents(callback: (event: RuntimeEvent) => void): () => void;
5
+ export declare function emitEvent(event: RuntimeEvent): void;
6
+ //# sourceMappingURL=event-listener.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-listener.d.ts","sourceRoot":"","sources":["../../src/hub/event-listener.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI,CAMtF"}
1
+ {"version":3,"file":"event-listener.d.ts","sourceRoot":"","sources":["../../src/hub/event-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAI9D,YAAY,EAAE,YAAY,EAAE,CAAC;AAE7B,wBAAgB,WAAW,IAAI,eAAe,CAE7C;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,MAAM,IAAI,CAErF;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAEnD"}
@@ -1,8 +1,12 @@
1
- export function subscribeToEvents(_callback) {
2
- // TODO: Integrate with RuntimeEventBus from core
3
- // For now, return a no-op unsubscribe
4
- return () => {
5
- // Cleanup
6
- };
1
+ import { RuntimeEventBus } from "rax-flow-core";
2
+ const globalEventBus = new RuntimeEventBus();
3
+ export function getEventBus() {
4
+ return globalEventBus;
5
+ }
6
+ export function subscribeToEvents(callback) {
7
+ return globalEventBus.onEvent(callback);
8
+ }
9
+ export function emitEvent(event) {
10
+ globalEventBus.emit(event);
7
11
  }
8
12
  //# sourceMappingURL=event-listener.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event-listener.js","sourceRoot":"","sources":["../../src/hub/event-listener.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,iBAAiB,CAAC,SAAwC;IACxE,iDAAiD;IACjD,sCAAsC;IACtC,OAAO,GAAG,EAAE;QACV,UAAU;IACZ,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"event-listener.js","sourceRoot":"","sources":["../../src/hub/event-listener.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAgB,MAAM,eAAe,CAAC;AAE9D,MAAM,cAAc,GAAG,IAAI,eAAe,EAAE,CAAC;AAI7C,MAAM,UAAU,WAAW;IACzB,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAAuC;IACvE,OAAO,cAAc,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAmB;IAC3C,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC7B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAuB,MAAM,YAAY,CAAC;AAgB7D,wBAAsB,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA+EjE;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBpF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAuB,MAAM,YAAY,CAAC;AAgB7D,wBAAsB,QAAQ,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CA2FjE;AAED,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBpF"}
package/dist/hub/index.js CHANGED
@@ -33,6 +33,18 @@ export async function startHub(options) {
33
33
  },
34
34
  });
35
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
+ }
36
48
  });
37
49
  rl.on("line", async (input) => {
38
50
  const trimmed = input.trim();
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/hub/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ interface ApiKeyInputProps {
2
+ providerId: string;
3
+ providerName: string;
4
+ currentKey?: string;
5
+ envVar?: string;
6
+ onSetKey: (key: string) => void;
7
+ onSkip: () => void;
8
+ onBack: () => void;
9
+ }
10
+ export declare function ApiKeyInput({ providerId, providerName, currentKey, envVar, onSetKey, onSkip, onBack, }: ApiKeyInputProps): import("react/jsx-runtime").JSX.Element;
11
+ interface ApiKeyCollectorProps {
12
+ providers: Array<{
13
+ id: string;
14
+ name: string;
15
+ requiresApiKey: boolean;
16
+ }>;
17
+ currentIndex: number;
18
+ keys: Record<string, string>;
19
+ onSetKey: (providerId: string, key: string) => void;
20
+ onSkip: () => void;
21
+ onBack: () => void;
22
+ }
23
+ export declare function ApiKeyCollector({ providers, currentIndex, keys, onSetKey, onSkip, onBack, }: ApiKeyCollectorProps): import("react/jsx-runtime").JSX.Element | null;
24
+ export {};
25
+ //# sourceMappingURL=ApiKeyInput.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApiKeyInput.d.ts","sourceRoot":"","sources":["../../../src/setup/components/ApiKeyInput.tsx"],"names":[],"mappings":"AAIA,UAAU,gBAAgB;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAC1B,UAAU,EACV,YAAY,EACZ,UAAU,EACV,MAAM,EACN,QAAQ,EACR,MAAM,EACN,MAAM,GACP,EAAE,gBAAgB,2CA0FlB;AAED,UAAU,oBAAoB;IAC5B,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACxE,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAUD,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,YAAY,EACZ,IAAI,EACJ,QAAQ,EACR,MAAM,EACN,MAAM,GACP,EAAE,oBAAoB,kDAmBtB"}
@@ -0,0 +1,54 @@
1
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
+ import { useState } from "react";
3
+ import { Box, Text, useInput } from "ink";
4
+ import TextInput from "ink-text-input";
5
+ export function ApiKeyInput({ providerId, providerName, currentKey, envVar, onSetKey, onSkip, onBack, }) {
6
+ const [inputValue, setInputValue] = useState(currentKey || "");
7
+ const [isEditing, setIsEditing] = useState(true);
8
+ const [showKey, setShowKey] = useState(false);
9
+ const PRIMARY = "#f97316";
10
+ const envValue = process.env[envVar || ""];
11
+ useInput((input, key) => {
12
+ if (!isEditing) {
13
+ if (key.return || input === "s") {
14
+ onSkip();
15
+ }
16
+ else if (input === "b") {
17
+ onBack();
18
+ }
19
+ else if (input === "e") {
20
+ setIsEditing(true);
21
+ }
22
+ }
23
+ });
24
+ const handleSubmit = (value) => {
25
+ if (value.trim()) {
26
+ onSetKey(value.trim());
27
+ }
28
+ else {
29
+ setIsEditing(false);
30
+ }
31
+ };
32
+ const maskedValue = (key) => {
33
+ if (key.length <= 8)
34
+ return "••••••••";
35
+ return key.slice(0, 4) + "•".repeat(8) + key.slice(-4);
36
+ };
37
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { marginBottom: 1, children: _jsxs(Text, { color: PRIMARY, bold: true, children: ["CONFIGURE ", providerName.toUpperCase()] }) }), envValue && (_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: "#22c55e", children: "\u2713" }), _jsx(Text, { color: "#a1a1aa", children: " Found key in " }), _jsx(Text, { color: "#f59e0b", children: envVar })] })), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "#a1a1aa", children: "Enter your API key (or leave empty to skip):" }) }), isEditing ? (_jsxs(Box, { children: [_jsx(Text, { color: "#27272a", children: "> " }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, placeholder: envValue ? "Press Enter to use env variable" : "sk-...", showCursor: true })] })) : (_jsx(Box, { flexDirection: "column", children: inputValue && (_jsxs(Box, { children: [_jsx(Text, { color: "#22c55e", children: "\u2713 Key set: " }), _jsx(Text, { color: "#a1a1aa", children: showKey ? inputValue : maskedValue(inputValue) })] })) })), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "#27272a", children: "─".repeat(50) }) }), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: "#71717a", children: "[E] Edit" }), _jsx(Text, { color: "#71717a", children: " [S] Skip" }), _jsx(Text, { color: "#71717a", children: " [B] Back" })] })] }));
38
+ }
39
+ const ENV_VAR_MAP = {
40
+ anthropic: "ANTHROPIC_API_KEY",
41
+ openai: "OPENAI_API_KEY",
42
+ gemini: "GOOGLE_API_KEY",
43
+ mistral: "MISTRAL_API_KEY",
44
+ groq: "GROQ_API_KEY",
45
+ };
46
+ export function ApiKeyCollector({ providers, currentIndex, keys, onSetKey, onSkip, onBack, }) {
47
+ const providersNeedingKeys = providers.filter((p) => p.requiresApiKey);
48
+ const currentProvider = providersNeedingKeys[currentIndex];
49
+ if (!currentProvider) {
50
+ return null;
51
+ }
52
+ return (_jsx(ApiKeyInput, { providerId: currentProvider.id, providerName: currentProvider.name, currentKey: keys[currentProvider.id], envVar: ENV_VAR_MAP[currentProvider.id], onSetKey: (key) => onSetKey(currentProvider.id, key), onSkip: onSkip, onBack: onBack }));
53
+ }
54
+ //# sourceMappingURL=ApiKeyInput.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ApiKeyInput.js","sourceRoot":"","sources":["../../../src/setup/components/ApiKeyInput.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import React from "react";
2
+ interface AsciiBannerProps {
3
+ compact?: boolean;
4
+ showTagline?: boolean;
5
+ }
6
+ export declare function AsciiBanner({ compact, showTagline }: AsciiBannerProps): import("react/jsx-runtime").JSX.Element;
7
+ export declare function IndustrialDivider({ width }: {
8
+ width?: number;
9
+ }): import("react/jsx-runtime").JSX.Element;
10
+ export declare function IndustrialBox({ children, title, width, active, }: {
11
+ children: React.ReactNode;
12
+ title?: string;
13
+ width?: number;
14
+ active?: boolean;
15
+ }): import("react/jsx-runtime").JSX.Element;
16
+ export declare function StatusIndicator({ status, label, active }: {
17
+ status: "online" | "offline" | "running" | "pending" | "done" | "error";
18
+ label: string;
19
+ active?: boolean;
20
+ }): import("react/jsx-runtime").JSX.Element;
21
+ export {};
22
+ //# sourceMappingURL=AsciiBanner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsciiBanner.d.ts","sourceRoot":"","sources":["../../../src/setup/components/AsciiBanner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAiC1B,UAAU,gBAAgB;IACxB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,WAAW,CAAC,EAAE,OAAe,EAAE,WAAkB,EAAE,EAAE,gBAAgB,2CAmBpF;AAED,wBAAgB,iBAAiB,CAAC,EAAE,KAAU,EAAE,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,2CASnE;AAED,wBAAgB,aAAa,CAAC,EAC5B,QAAQ,EACR,KAAK,EACL,KAAU,EACV,MAAc,GACf,EAAE;IACD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,2CAeA;AAED,wBAAgB,eAAe,CAAC,EAC9B,MAAM,EACN,KAAK,EACL,MAAc,EACf,EAAE;IACD,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,2CAmBA"}
@@ -0,0 +1,55 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Box, Text } from "ink";
3
+ const PRIMARY = "#f97316";
4
+ const SECONDARY = "#a1a1aa";
5
+ const RAX_FLOW_ASCII = `
6
+ ╔══════════════════════════════════════════════════════════════════════════╗
7
+ ║ ██████╗ █████╗ ██████╗ ██╗ ██╗ █████╗ ███╗ ██╗ ██████╗███████╗ ║
8
+ ║ ██╔══██╗██╔══██╗██╔════╝██║ ██╔╝██╔══██╗████╗ ██║██╔════╝██╔════╝ ║
9
+ ║ ██████╔╝███████║██║ █████╔╝ ███████║██╔██╗ ██║██║ █████╗ ║
10
+ ║ ██╔══██╗██╔══██║██║ ██╔═██╗ ██╔══██║██║╚██╗██║██║ ██╔══╝ ║
11
+ ║ ██║ ██║██║ ██║╚██████╗██║ ██╗██║ ██║██║ ╚████║╚██████╗███████╗ ║
12
+ ║ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═════╝╚══════╝ ║
13
+ ╠══════════════════════════════════════════════════════════════════════════╣
14
+ ║ [■■■■■■■■■■] ORCHESTRATOR THAT EVOLVES WITH YOUR HOST TOOLS [■■■■■■] ║
15
+ ╚══════════════════════════════════════════════════════════════════════════╝`;
16
+ const RAX_FLOW_ASCII_COMPACT = `
17
+ ╔═══════════════════════════════════════════════════════╗
18
+ ║ ██████╗ █████╗ ██████╗ ██╗ ██╗███████╗ ║
19
+ ║ ██╔══██╗██╔══██╗██╔════╝ ██║ ██║██╔════╝ ║
20
+ ║ ██████╔╝███████║██║ █████║█████╗ ║
21
+ ║ ██╔══██╗██╔══██║██║ ██╔═██║██╔══╝ ║
22
+ ║ ██║ ██║██║ ██║╚██████╗ ██║ ██║███████╗ ║
23
+ ║ ╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝ ║
24
+ ╠═══════════════════════════════════════════════════════╣
25
+ ║ [■■■■■] ORCHESTRATOR [■■■■■] ║
26
+ ╚═══════════════════════════════════════════════════════╝`;
27
+ const GEAR_PATTERN = " ⚙ ";
28
+ const CIRCUIT_PATTERN = " │├┤│ ";
29
+ export function AsciiBanner({ compact = false, showTagline = true }) {
30
+ const ascii = compact ? RAX_FLOW_ASCII_COMPACT : RAX_FLOW_ASCII;
31
+ return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsx(Box, { children: _jsx(Text, { color: PRIMARY, bold: true, children: ascii }) }), showTagline && (_jsx(Box, { marginTop: 1, justifyContent: "center", children: _jsx(Text, { color: SECONDARY, dimColor: true, children: compact ? "Setup Wizard v1.0" : "Multi-Agent Orchestration Framework • Setup Wizard v1.0" }) }))] }));
32
+ }
33
+ export function IndustrialDivider({ width = 60 }) {
34
+ const segment = "─".repeat(Math.floor(width / 3));
35
+ const full = `╟${segment}╂${segment}╂${segment}╢`;
36
+ return (_jsx(Box, { children: _jsx(Text, { color: "#27272a", children: full }) }));
37
+ }
38
+ export function IndustrialBox({ children, title, width = 60, active = false, }) {
39
+ const borderColor = active ? PRIMARY : "#27272a";
40
+ const innerWidth = width - 4;
41
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: borderColor, children: `┌${title ? `─ ${title} ` : ""}${"─".repeat(innerWidth - (title?.length || 0) - 2)}┐` }), _jsx(Box, { flexDirection: "column", borderStyle: "single", borderColor: borderColor, children: children }), _jsx(Text, { color: borderColor, children: `└${"─".repeat(innerWidth)}┘` })] }));
42
+ }
43
+ export function StatusIndicator({ status, label, active = false }) {
44
+ const indicators = {
45
+ online: { char: "●", color: "#22c55e" },
46
+ offline: { char: "○", color: "#71717a" },
47
+ running: { char: "▶", color: "#f59e0b" },
48
+ pending: { char: "◐", color: "#a1a1aa" },
49
+ done: { char: "✓", color: "#22c55e" },
50
+ error: { char: "✗", color: "#ef4444" },
51
+ };
52
+ const { char, color } = indicators[status];
53
+ return (_jsxs(Box, { children: [_jsx(Text, { color: active ? PRIMARY : color, children: char }), _jsx(Text, { children: " " }), _jsx(Text, { color: active ? PRIMARY : "#ffffff", children: label })] }));
54
+ }
55
+ //# sourceMappingURL=AsciiBanner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AsciiBanner.js","sourceRoot":"","sources":["../../../src/setup/components/AsciiBanner.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { DetectedCli } from "../utils/cli-detection.js";
2
+ export type { DetectedCli };
3
+ interface CliDetectorProps {
4
+ onDetected: (clis: DetectedCli[]) => void;
5
+ onContinue: () => void;
6
+ onBack: () => void;
7
+ }
8
+ export declare function CliDetector({ onDetected, onContinue, onBack }: CliDetectorProps): import("react/jsx-runtime").JSX.Element;
9
+ interface CliSelectorProps {
10
+ detectedClis: DetectedCli[];
11
+ selectedClis: string[];
12
+ onToggle: (cliId: string) => void;
13
+ onContinue: () => void;
14
+ onBack: () => void;
15
+ }
16
+ export declare function CliSelector({ detectedClis, selectedClis, onToggle, onContinue, onBack, }: CliSelectorProps): import("react/jsx-runtime").JSX.Element;
17
+ //# sourceMappingURL=CliDetector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CliDetector.d.ts","sourceRoot":"","sources":["../../../src/setup/components/CliDetector.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAuB,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAE7E,YAAY,EAAE,WAAW,EAAE,CAAC;AAE5B,UAAU,gBAAgB;IACxB,UAAU,EAAE,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,IAAI,CAAC;IAC1C,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,gBAAgB,2CA6G/E;AAED,UAAU,gBAAgB;IACxB,YAAY,EAAE,WAAW,EAAE,CAAC;IAC5B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,IAAI,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAC1B,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,UAAU,EACV,MAAM,GACP,EAAE,gBAAgB,2CA2FlB"}
@@ -0,0 +1,79 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useState, useEffect } from "react";
3
+ import { Box, Text, useInput } from "ink";
4
+ import Spinner from "ink-spinner";
5
+ import { detectInstalledClis } from "../utils/cli-detection.js";
6
+ export function CliDetector({ onDetected, onContinue, onBack }) {
7
+ const [detecting, setDetecting] = useState(true);
8
+ const [detectedClis, setDetectedClis] = useState([]);
9
+ const [error, setError] = useState(null);
10
+ const PRIMARY = "#f97316";
11
+ useEffect(() => {
12
+ detectInstalledClis()
13
+ .then((clis) => {
14
+ setDetectedClis(clis);
15
+ onDetected(clis);
16
+ setDetecting(false);
17
+ })
18
+ .catch((err) => {
19
+ setError(err.message);
20
+ setDetecting(false);
21
+ });
22
+ }, [onDetected]);
23
+ useInput((input, key) => {
24
+ if (!detecting) {
25
+ if (key.return || input === "c") {
26
+ onContinue();
27
+ }
28
+ else if (input === "b") {
29
+ onBack();
30
+ }
31
+ }
32
+ });
33
+ if (detecting) {
34
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: PRIMARY, bold: true, children: "DETECTING INSTALLED TOOLS" }) }), _jsxs(Box, { children: [_jsx(Text, { color: "#f59e0b", children: _jsx(Spinner, { type: "dots" }) }), _jsx(Text, { color: "#a1a1aa", children: " Scanning for compatible CLI tools..." })] })] }));
35
+ }
36
+ if (error) {
37
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: "#ef4444", children: ["Error detecting CLIs: ", error] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "#71717a", children: "[B] Back" }) })] }));
38
+ }
39
+ const availableClis = detectedClis.filter((c) => c.detected);
40
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: PRIMARY, bold: true, children: "DETECTED TOOLS" }) }), _jsx(Box, { flexDirection: "column", marginBottom: 1, children: detectedClis.map((cli) => (_jsxs(Box, { children: [_jsx(Text, { color: cli.detected ? "#22c55e" : "#71717a", children: cli.detected ? "●" : "○" }), _jsx(Text, { children: " " }), _jsx(Text, { color: cli.detected ? "#ffffff" : "#71717a", children: cli.name }), cli.version && (_jsxs(Text, { color: "#a1a1aa", children: [" v", cli.version.split(" ")[0]] })), cli.configPath && (_jsxs(Text, { color: "#71717a", dimColor: true, children: [" ", "(", cli.configPath, ")"] }))] }, cli.id))) }), availableClis.length === 0 && (_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "#f59e0b", children: "\u26A0 No compatible CLI tools detected. You can still use cloud providers." }) })), _jsx(Box, { children: _jsx(Text, { color: "#27272a", children: "─".repeat(50) }) }), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: "#22c55e", children: "[C] Continue" }), _jsx(Text, { color: "#71717a", children: " [B] Back" })] })] }));
41
+ }
42
+ export function CliSelector({ detectedClis, selectedClis, onToggle, onContinue, onBack, }) {
43
+ const [focusedIndex, setFocusedIndex] = useState(0);
44
+ const availableClis = detectedClis.filter((c) => c.detected);
45
+ const PRIMARY = "#f97316";
46
+ useInput((input, key) => {
47
+ if (key.upArrow) {
48
+ setFocusedIndex((prev) => prev === 0 ? availableClis.length : prev - 1);
49
+ }
50
+ else if (key.downArrow) {
51
+ setFocusedIndex((prev) => prev === availableClis.length ? 0 : prev + 1);
52
+ }
53
+ else if (key.return) {
54
+ if (focusedIndex === availableClis.length) {
55
+ onContinue();
56
+ }
57
+ else {
58
+ onToggle(availableClis[focusedIndex].id);
59
+ }
60
+ }
61
+ else if (input === " ") {
62
+ if (focusedIndex < availableClis.length) {
63
+ onToggle(availableClis[focusedIndex].id);
64
+ }
65
+ }
66
+ else if (input === "b") {
67
+ onBack();
68
+ }
69
+ });
70
+ if (availableClis.length === 0) {
71
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: "#f59e0b", children: "No CLI tools detected. Skipping hub setup..." }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "#22c55e", children: "[C] Continue" }) })] }));
72
+ }
73
+ return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: PRIMARY, bold: true, children: "SELECT TOOLS TO INTEGRATE" }) }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "#a1a1aa", dimColor: true, children: "Use \u2191/\u2193 to navigate, SPACE to toggle, ENTER to continue" }) }), _jsx(Box, { flexDirection: "column", children: availableClis.map((cli, index) => {
74
+ const isSelected = selectedClis.includes(cli.id);
75
+ const isFocused = index === focusedIndex;
76
+ return (_jsxs(Box, { children: [_jsx(Text, { color: isFocused ? PRIMARY : "#27272a", children: isFocused ? "▶ " : " " }), _jsxs(Text, { color: isSelected ? "#22c55e" : "#a1a1aa", children: ["[", isSelected ? "■" : " ", "]"] }), _jsx(Text, { children: " " }), _jsx(Text, { color: isFocused ? "#ffffff" : "#a1a1aa", bold: isFocused, children: cli.name }), cli.version && (_jsxs(Text, { color: "#71717a", children: [" ", cli.version.split(" ")[0]] }))] }, cli.id));
77
+ }) }), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: focusedIndex === availableClis.length ? PRIMARY : "#a1a1aa", children: focusedIndex === availableClis.length ? "▶ " : " " }), _jsx(Text, { color: "#22c55e", children: "[CONTINUE]" })] }), _jsx(Box, { marginTop: 1, children: _jsx(Text, { color: "#71717a", children: "[B] Back" }) })] }));
78
+ }
79
+ //# sourceMappingURL=CliDetector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CliDetector.js","sourceRoot":"","sources":["../../../src/setup/components/CliDetector.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ interface ModeSelectorProps {
2
+ selectedMode: "hub" | "standalone" | "both" | null;
3
+ onSelect: (mode: "hub" | "standalone" | "both") => void;
4
+ onContinue: () => void;
5
+ }
6
+ export declare function ModeSelector({ selectedMode, onSelect, onContinue }: ModeSelectorProps): import("react/jsx-runtime").JSX.Element;
7
+ export {};
8
+ //# sourceMappingURL=ModeSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModeSelector.d.ts","sourceRoot":"","sources":["../../../src/setup/components/ModeSelector.tsx"],"names":[],"mappings":"AAGA,UAAU,iBAAiB;IACzB,YAAY,EAAE,KAAK,GAAG,YAAY,GAAG,MAAM,GAAG,IAAI,CAAC;IACnD,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,YAAY,GAAG,MAAM,KAAK,IAAI,CAAC;IACxD,UAAU,EAAE,MAAM,IAAI,CAAC;CACxB;AAsCD,wBAAgB,YAAY,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,iBAAiB,2CA2FrF"}