@wundr.io/cli 1.0.11 → 1.0.13

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 (180) hide show
  1. package/bin/wundr.js +8 -4
  2. package/dist/ai/ai-service.d.ts.map +1 -1
  3. package/dist/ai/ai-service.js.map +1 -1
  4. package/dist/ai/claude-client.js.map +1 -1
  5. package/dist/ai/conversation-manager.js.map +1 -1
  6. package/dist/commands/ai.d.ts.map +1 -1
  7. package/dist/commands/ai.js +179 -24
  8. package/dist/commands/ai.js.map +1 -1
  9. package/dist/commands/analyze-optimized.d.ts.map +1 -1
  10. package/dist/commands/analyze-optimized.js +15 -6
  11. package/dist/commands/analyze-optimized.js.map +1 -1
  12. package/dist/commands/batch.d.ts +22 -0
  13. package/dist/commands/batch.d.ts.map +1 -1
  14. package/dist/commands/batch.js +130 -14
  15. package/dist/commands/batch.js.map +1 -1
  16. package/dist/commands/chat.d.ts +1 -0
  17. package/dist/commands/chat.d.ts.map +1 -1
  18. package/dist/commands/chat.js +7 -3
  19. package/dist/commands/chat.js.map +1 -1
  20. package/dist/commands/claude-init.d.ts +1 -1
  21. package/dist/commands/claude-init.d.ts.map +1 -1
  22. package/dist/commands/claude-init.js +16 -16
  23. package/dist/commands/claude-init.js.map +1 -1
  24. package/dist/commands/claude-setup.d.ts +5 -5
  25. package/dist/commands/claude-setup.d.ts.map +1 -1
  26. package/dist/commands/claude-setup.js +65 -59
  27. package/dist/commands/claude-setup.js.map +1 -1
  28. package/dist/commands/computer-setup.d.ts +1 -0
  29. package/dist/commands/computer-setup.d.ts.map +1 -1
  30. package/dist/commands/computer-setup.js +35 -7
  31. package/dist/commands/computer-setup.js.map +1 -1
  32. package/dist/commands/dashboard.js.map +1 -1
  33. package/dist/commands/govern.js.map +1 -1
  34. package/dist/commands/init.d.ts.map +1 -1
  35. package/dist/commands/init.js +3 -3
  36. package/dist/commands/init.js.map +1 -1
  37. package/dist/commands/orchestrator.d.ts.map +1 -1
  38. package/dist/commands/orchestrator.js +11 -4
  39. package/dist/commands/orchestrator.js.map +1 -1
  40. package/dist/commands/performance-optimizer.d.ts.map +1 -1
  41. package/dist/commands/performance-optimizer.js.map +1 -1
  42. package/dist/commands/rag.d.ts.map +1 -1
  43. package/dist/commands/rag.js +9 -6
  44. package/dist/commands/rag.js.map +1 -1
  45. package/dist/commands/setup.d.ts +5 -10
  46. package/dist/commands/setup.d.ts.map +1 -1
  47. package/dist/commands/setup.js +35 -260
  48. package/dist/commands/setup.js.map +1 -1
  49. package/dist/commands/watch.d.ts.map +1 -1
  50. package/dist/commands/watch.js.map +1 -1
  51. package/dist/context/session-manager.js.map +1 -1
  52. package/dist/framework/command-interface.d.ts +349 -0
  53. package/dist/framework/command-interface.d.ts.map +1 -0
  54. package/dist/framework/command-interface.js +101 -0
  55. package/dist/framework/command-interface.js.map +1 -0
  56. package/dist/framework/command-registry.d.ts +173 -0
  57. package/dist/framework/command-registry.d.ts.map +1 -0
  58. package/dist/framework/command-registry.js +734 -0
  59. package/dist/framework/command-registry.js.map +1 -0
  60. package/dist/framework/completion-exporter.d.ts +79 -0
  61. package/dist/framework/completion-exporter.d.ts.map +1 -0
  62. package/dist/framework/completion-exporter.js +259 -0
  63. package/dist/framework/completion-exporter.js.map +1 -0
  64. package/dist/framework/debug-logger.d.ts +163 -0
  65. package/dist/framework/debug-logger.d.ts.map +1 -0
  66. package/dist/framework/debug-logger.js +373 -0
  67. package/dist/framework/debug-logger.js.map +1 -0
  68. package/dist/framework/error-handler.d.ts +196 -0
  69. package/dist/framework/error-handler.d.ts.map +1 -0
  70. package/dist/framework/error-handler.js +613 -0
  71. package/dist/framework/error-handler.js.map +1 -0
  72. package/dist/framework/help-generator.d.ts +78 -0
  73. package/dist/framework/help-generator.d.ts.map +1 -0
  74. package/dist/framework/help-generator.js +414 -0
  75. package/dist/framework/help-generator.js.map +1 -0
  76. package/dist/framework/index.d.ts +62 -0
  77. package/dist/framework/index.d.ts.map +1 -0
  78. package/dist/framework/index.js +95 -0
  79. package/dist/framework/index.js.map +1 -0
  80. package/dist/framework/interactive-repl.d.ts +138 -0
  81. package/dist/framework/interactive-repl.d.ts.map +1 -0
  82. package/dist/framework/interactive-repl.js +567 -0
  83. package/dist/framework/interactive-repl.js.map +1 -0
  84. package/dist/framework/output-formatter.d.ts +274 -0
  85. package/dist/framework/output-formatter.d.ts.map +1 -0
  86. package/dist/framework/output-formatter.js +545 -0
  87. package/dist/framework/output-formatter.js.map +1 -0
  88. package/dist/framework/progress-manager.d.ts +192 -0
  89. package/dist/framework/progress-manager.d.ts.map +1 -0
  90. package/dist/framework/progress-manager.js +408 -0
  91. package/dist/framework/progress-manager.js.map +1 -0
  92. package/dist/interactive/interactive-mode.js.map +1 -1
  93. package/dist/nlp/command-mapper.js.map +1 -1
  94. package/dist/nlp/command-parser.js.map +1 -1
  95. package/dist/nlp/intent-parser.d.ts.map +1 -1
  96. package/dist/nlp/intent-parser.js +4 -2
  97. package/dist/nlp/intent-parser.js.map +1 -1
  98. package/dist/plugins/plugin-manager.d.ts +2 -1
  99. package/dist/plugins/plugin-manager.d.ts.map +1 -1
  100. package/dist/plugins/plugin-manager.js +30 -19
  101. package/dist/plugins/plugin-manager.js.map +1 -1
  102. package/dist/utils/backup-rollback-manager.d.ts.map +1 -1
  103. package/dist/utils/backup-rollback-manager.js +1 -2
  104. package/dist/utils/backup-rollback-manager.js.map +1 -1
  105. package/dist/utils/logger.js.map +1 -1
  106. package/package.json +6 -6
  107. package/src/ai/ai-service.ts +16 -17
  108. package/src/ai/claude-client.ts +16 -16
  109. package/src/ai/conversation-manager.ts +29 -29
  110. package/src/cli.ts +4 -4
  111. package/src/commands/ai.ts +246 -78
  112. package/src/commands/alignment.ts +74 -74
  113. package/src/commands/analyze-optimized.ts +111 -78
  114. package/src/commands/analyze.ts +14 -14
  115. package/src/commands/batch.ts +179 -42
  116. package/src/commands/chat.ts +37 -30
  117. package/src/commands/claude-init.ts +41 -45
  118. package/src/commands/claude-setup.ts +204 -119
  119. package/src/commands/computer-setup.ts +85 -43
  120. package/src/commands/create-command.ts +4 -4
  121. package/src/commands/create.ts +27 -27
  122. package/src/commands/dashboard.ts +24 -24
  123. package/src/commands/govern.ts +25 -25
  124. package/src/commands/governance.ts +34 -34
  125. package/src/commands/guardian.ts +56 -56
  126. package/src/commands/init.ts +25 -22
  127. package/src/commands/orchestrator.ts +68 -41
  128. package/src/commands/performance-optimizer.ts +34 -35
  129. package/src/commands/plugins.ts +27 -27
  130. package/src/commands/project-update.ts +175 -72
  131. package/src/commands/rag.ts +185 -78
  132. package/src/commands/session.ts +35 -35
  133. package/src/commands/setup.ts +40 -344
  134. package/src/commands/test-init.ts +3 -3
  135. package/src/commands/test.ts +4 -4
  136. package/src/commands/watch.ts +28 -29
  137. package/src/commands/worktree.ts +49 -49
  138. package/src/context/context-manager.ts +10 -10
  139. package/src/context/session-manager.ts +41 -41
  140. package/src/framework/command-interface.ts +520 -0
  141. package/src/framework/command-registry.ts +942 -0
  142. package/src/framework/completion-exporter.ts +383 -0
  143. package/src/framework/debug-logger.ts +519 -0
  144. package/src/framework/error-handler.ts +867 -0
  145. package/src/framework/help-generator.ts +540 -0
  146. package/src/framework/index.ts +169 -0
  147. package/src/framework/interactive-repl.ts +703 -0
  148. package/src/framework/output-formatter.ts +834 -0
  149. package/src/framework/progress-manager.ts +539 -0
  150. package/src/index.ts +4 -4
  151. package/src/interactive/interactive-mode.ts +16 -16
  152. package/src/lib/conflict-resolution.ts +799 -9
  153. package/src/lib/merge-strategy.ts +529 -7
  154. package/src/lib/safety-mechanisms.ts +422 -18
  155. package/src/lib/state-detection.ts +1015 -13
  156. package/src/nlp/command-mapper.ts +29 -29
  157. package/src/nlp/command-parser.ts +17 -17
  158. package/src/nlp/intent-classifier.ts +7 -7
  159. package/src/nlp/intent-parser.ts +54 -52
  160. package/src/plugins/plugin-manager.ts +61 -39
  161. package/src/tests/computer-setup-integration.test.ts +46 -15
  162. package/src/types/modules.d.ts +424 -1
  163. package/src/utils/backup-rollback-manager.ts +11 -8
  164. package/src/utils/config-manager.ts +3 -3
  165. package/src/utils/error-handler.ts +2 -2
  166. package/src/utils/logger.ts +22 -22
  167. package/templates/batch/ci-cd.yaml +7 -7
  168. package/test-suites/api/health.spec.ts +20 -23
  169. package/test-suites/helpers/test-config.ts +14 -13
  170. package/test-suites/ui/accessibility.spec.ts +27 -22
  171. package/test-suites/ui/smoke.spec.ts +26 -21
  172. package/dist/commands/computer-setup-commands.d.ts +0 -53
  173. package/dist/commands/computer-setup-commands.d.ts.map +0 -1
  174. package/dist/commands/computer-setup-commands.js +0 -705
  175. package/dist/commands/computer-setup-commands.js.map +0 -1
  176. package/dist/commands/vp.d.ts +0 -7
  177. package/dist/commands/vp.d.ts.map +0 -1
  178. package/dist/commands/vp.js +0 -571
  179. package/dist/commands/vp.js.map +0 -1
  180. package/src/commands/computer-setup-commands.ts +0 -872
@@ -31,20 +31,18 @@ export class ClaudeInitCommand {
31
31
  this.program
32
32
  .command('claude-init')
33
33
  .alias('ci')
34
- .description(
35
- 'Initialize Claude Code and Claude Flow in current repository',
36
- )
34
+ .description('Initialize Claude Code and Ruflo in current repository')
37
35
  .option('-i, --interactive', 'Interactive mode with prompts')
38
36
  .option('-a, --audit', 'Run repository audit first')
39
37
  .option('-f, --force', 'Force overwrite existing CLAUDE.md')
40
38
  .option('--agents <agents>', 'Comma-separated list of agents to enable')
41
39
  .option(
42
40
  '--mcp-tools <tools>',
43
- 'Comma-separated list of MCP tools to enable',
41
+ 'Comma-separated list of MCP tools to enable'
44
42
  )
45
43
  .option(
46
44
  '--profile <profile>',
47
- 'Developer profile (fullstack, frontend, backend, devops)',
45
+ 'Developer profile (fullstack, frontend, backend, devops)'
48
46
  )
49
47
  .action(async options => {
50
48
  await this.execute(options);
@@ -58,8 +56,8 @@ export class ClaudeInitCommand {
58
56
  if (!this.isGitRepo()) {
59
57
  console.error(
60
58
  chalk.red(
61
- 'āŒ Not in a git repository. Please run this command in a git repository.',
62
- ),
59
+ 'āŒ Not in a git repository. Please run this command in a git repository.'
60
+ )
63
61
  );
64
62
  process.exit(1);
65
63
  }
@@ -81,15 +79,15 @@ export class ClaudeInitCommand {
81
79
  // Generate CLAUDE.md
82
80
  await this.generateClaudeMd(projectInfo, options);
83
81
 
84
- // Setup Claude Flow
85
- await this.setupClaudeFlow(projectInfo, options);
82
+ // Setup Ruflo
83
+ await this.setupRuflo(projectInfo, options);
86
84
 
87
85
  // Setup MCP tools
88
86
  await this.setupMcpTools(options.mcpTools);
89
87
 
90
88
  // Setup agents
91
89
  await this.setupAgents(
92
- options.agents || this.getDefaultAgents(projectInfo),
90
+ options.agents || this.getDefaultAgents(projectInfo)
93
91
  );
94
92
 
95
93
  // Setup quality hooks
@@ -163,7 +161,7 @@ export class ClaudeInitCommand {
163
161
  }
164
162
 
165
163
  this.spinner.succeed(
166
- `Project analyzed: ${projectInfo.name} (${projectInfo.type})`,
164
+ `Project analyzed: ${projectInfo.name} (${projectInfo.type})`
167
165
  );
168
166
  return projectInfo;
169
167
  }
@@ -186,11 +184,11 @@ export class ClaudeInitCommand {
186
184
 
187
185
  // Structure checks
188
186
  if (await fs.pathExists('src')) {
189
- auditResults.categories.structure.score += 10;
190
- }
187
+ auditResults.categories.structure.score += 10;
188
+ }
191
189
  if (await fs.pathExists('.gitignore')) {
192
- auditResults.categories.structure.score += 5;
193
- }
190
+ auditResults.categories.structure.score += 5;
191
+ }
194
192
  if (projectInfo.isMonorepo && (await fs.pathExists('packages'))) {
195
193
  auditResults.categories.structure.score += 5;
196
194
  }
@@ -249,7 +247,7 @@ auditResults.categories.structure.score += 5;
249
247
  auditResults.categories.security.score += 10;
250
248
  } else if (await fs.pathExists('.env')) {
251
249
  auditResults.recommendations.push(
252
- 'Add .env.example for environment variables',
250
+ 'Add .env.example for environment variables'
253
251
  );
254
252
  }
255
253
 
@@ -264,8 +262,8 @@ auditResults.categories.structure.score += 5;
264
262
  console.log(chalk.cyan('\nšŸ“Š Audit Results:'));
265
263
  console.log(
266
264
  chalk.white(
267
- `Overall Score: ${auditResults.score}/${auditResults.maxScore}`,
268
- ),
265
+ `Overall Score: ${auditResults.score}/${auditResults.maxScore}`
266
+ )
269
267
  );
270
268
 
271
269
  for (const [name, category] of Object.entries(auditResults.categories)) {
@@ -278,8 +276,8 @@ auditResults.categories.structure.score += 5;
278
276
  : chalk.red;
279
277
  console.log(
280
278
  color(
281
- ` ${name}: ${category.score}/${category.maxScore} (${percentage.toFixed(0)}%)`,
282
- ),
279
+ ` ${name}: ${category.score}/${category.maxScore} (${percentage.toFixed(0)}%)`
280
+ )
283
281
  );
284
282
  }
285
283
 
@@ -295,8 +293,8 @@ auditResults.categories.structure.score += 5;
295
293
  const answers = await inquirer.prompt([
296
294
  {
297
295
  type: 'confirm',
298
- name: 'setupClaudeFlow',
299
- message: 'Setup Claude Flow orchestration?',
296
+ name: 'setupRuflo',
297
+ message: 'Setup Ruflo orchestration?',
300
298
  default: true,
301
299
  },
302
300
  {
@@ -415,7 +413,7 @@ auditResults.categories.structure.score += 5;
415
413
 
416
414
  private async generateClaudeMd(
417
415
  projectInfo: ProjectInfo,
418
- options: any,
416
+ options: any
419
417
  ): Promise<void> {
420
418
  this.spinner.start('Generating CLAUDE.md...');
421
419
 
@@ -533,7 +531,7 @@ By: Wundr Claude Init
533
531
 
534
532
  private getWorkflowPatterns(
535
533
  projectInfo: ProjectInfo,
536
- agents: string[],
534
+ agents: string[]
537
535
  ): string {
538
536
  const patterns: string[] = [];
539
537
 
@@ -564,19 +562,19 @@ By: Wundr Claude Init
564
562
  return patterns.join('\n\n');
565
563
  }
566
564
 
567
- private async setupClaudeFlow(
565
+ private async setupRuflo(
568
566
  projectInfo: ProjectInfo,
569
- options: any,
567
+ options: any
570
568
  ): Promise<void> {
571
- if (!options.setupClaudeFlow) {
572
- return;
573
- }
569
+ if (!options.setupRuflo) {
570
+ return;
571
+ }
574
572
 
575
- this.spinner.start('Setting up Claude Flow...');
573
+ this.spinner.start('Setting up Ruflo...');
576
574
 
577
575
  try {
578
- // Initialize Claude Flow
579
- execSync('npx claude-flow@alpha init', { stdio: 'ignore' });
576
+ // Initialize Ruflo
577
+ execSync('npx ruflo@latest init', { stdio: 'ignore' });
580
578
 
581
579
  // Configure for project
582
580
  const config = {
@@ -587,26 +585,26 @@ return;
587
585
  : this.getDefaultAgents(projectInfo),
588
586
  memory: {
589
587
  backend: 'sqlite',
590
- path: '.claude-flow/memory.db',
588
+ path: '.ruflo/memory.db',
591
589
  },
592
590
  neural: {
593
591
  enabled: true,
594
- modelPath: '.claude-flow/models',
592
+ modelPath: '.ruflo/models',
595
593
  },
596
594
  };
597
595
 
598
- await fs.writeJson('.claude-flow/config.json', config, { spaces: 2 });
599
- this.spinner.succeed('Claude Flow configured');
596
+ await fs.writeJson('.ruflo/config.json', config, { spaces: 2 });
597
+ this.spinner.succeed('Ruflo configured');
600
598
  } catch (error) {
601
- this.spinner.fail('Failed to setup Claude Flow');
599
+ this.spinner.fail('Failed to setup Ruflo');
602
600
  console.error(chalk.red(error));
603
601
  }
604
602
  }
605
603
 
606
604
  private async setupMcpTools(mcpTools: string | string[]): Promise<void> {
607
605
  if (!mcpTools) {
608
- return;
609
- }
606
+ return;
607
+ }
610
608
 
611
609
  const tools = Array.isArray(mcpTools) ? mcpTools : mcpTools.split(',');
612
610
 
@@ -628,7 +626,7 @@ return;
628
626
  case 'playwright':
629
627
  execSync(
630
628
  'npx claude mcp add playwright npx @playwright/mcp-server',
631
- { stdio: 'ignore' },
629
+ { stdio: 'ignore' }
632
630
  );
633
631
  break;
634
632
  case 'browser':
@@ -639,7 +637,7 @@ return;
639
637
  case 'sequentialthinking':
640
638
  execSync(
641
639
  'npm install -g @modelcontextprotocol/server-sequentialthinking',
642
- { stdio: 'ignore' },
640
+ { stdio: 'ignore' }
643
641
  );
644
642
  break;
645
643
  }
@@ -707,12 +705,10 @@ echo "āœ… All quality checks passed!"
707
705
  console.log(chalk.white('1. Review and customize CLAUDE.md'));
708
706
  console.log(chalk.white('2. Configure API keys for MCP tools (if needed)'));
709
707
  console.log(
710
- chalk.white('3. Restart Claude Desktop to load new configurations'),
708
+ chalk.white('3. Restart Claude Desktop to load new configurations')
711
709
  );
712
710
  console.log(
713
- chalk.white(
714
- '4. Run: npx claude-flow@alpha sparc tdd "your first feature"',
715
- ),
711
+ chalk.white('4. Run: npx ruflo@latest sparc tdd "your first feature"')
716
712
  );
717
713
  console.log(chalk.cyan('\nšŸš€ Happy coding with Claude!\n'));
718
714
  }