@wundr.io/cli 1.0.10 → 1.0.12

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 (269) hide show
  1. package/bin/wundr.js +8 -4
  2. package/package.json +23 -23
  3. package/src/ai/ai-service.ts +16 -17
  4. package/src/ai/claude-client.ts +16 -16
  5. package/src/ai/conversation-manager.ts +29 -29
  6. package/src/cli.ts +4 -4
  7. package/src/commands/ai.ts +246 -78
  8. package/src/commands/alignment.ts +74 -74
  9. package/src/commands/analyze-optimized.ts +111 -78
  10. package/src/commands/analyze.ts +14 -14
  11. package/src/commands/batch.ts +179 -42
  12. package/src/commands/chat.ts +37 -30
  13. package/src/commands/claude-init.ts +41 -45
  14. package/src/commands/claude-setup.ts +204 -119
  15. package/src/commands/computer-setup.ts +85 -43
  16. package/src/commands/create-command.ts +4 -4
  17. package/src/commands/create.ts +27 -27
  18. package/src/commands/dashboard.ts +24 -24
  19. package/src/commands/govern.ts +25 -25
  20. package/src/commands/governance.ts +34 -34
  21. package/src/commands/guardian.ts +56 -56
  22. package/src/commands/init.ts +25 -22
  23. package/src/commands/orchestrator.ts +68 -41
  24. package/src/commands/performance-optimizer.ts +34 -35
  25. package/src/commands/plugins.ts +27 -27
  26. package/src/commands/project-update.ts +175 -72
  27. package/src/commands/rag.ts +185 -78
  28. package/src/commands/session.ts +35 -35
  29. package/src/commands/setup.ts +40 -344
  30. package/src/commands/test-init.ts +3 -3
  31. package/src/commands/test.ts +4 -4
  32. package/src/commands/watch.ts +28 -29
  33. package/src/commands/worktree.ts +49 -49
  34. package/src/context/context-manager.ts +10 -10
  35. package/src/context/session-manager.ts +41 -41
  36. package/src/framework/command-interface.ts +520 -0
  37. package/src/framework/command-registry.ts +942 -0
  38. package/src/framework/completion-exporter.ts +383 -0
  39. package/src/framework/debug-logger.ts +519 -0
  40. package/src/framework/error-handler.ts +867 -0
  41. package/src/framework/help-generator.ts +540 -0
  42. package/src/framework/index.ts +169 -0
  43. package/src/framework/interactive-repl.ts +703 -0
  44. package/src/framework/output-formatter.ts +834 -0
  45. package/src/framework/progress-manager.ts +539 -0
  46. package/src/index.ts +4 -4
  47. package/src/interactive/interactive-mode.ts +16 -16
  48. package/src/lib/conflict-resolution.ts +799 -9
  49. package/src/lib/merge-strategy.ts +529 -7
  50. package/src/lib/safety-mechanisms.ts +422 -18
  51. package/src/lib/state-detection.ts +1015 -13
  52. package/src/nlp/command-mapper.ts +29 -29
  53. package/src/nlp/command-parser.ts +17 -17
  54. package/src/nlp/intent-classifier.ts +7 -7
  55. package/src/nlp/intent-parser.ts +54 -52
  56. package/src/plugins/plugin-manager.ts +61 -39
  57. package/src/tests/computer-setup-integration.test.ts +46 -15
  58. package/src/types/modules.d.ts +424 -1
  59. package/src/utils/backup-rollback-manager.ts +11 -8
  60. package/src/utils/config-manager.ts +3 -3
  61. package/src/utils/error-handler.ts +2 -2
  62. package/src/utils/logger.ts +22 -22
  63. package/templates/batch/ci-cd.yaml +7 -7
  64. package/test-suites/api/health.spec.ts +20 -23
  65. package/test-suites/helpers/test-config.ts +14 -13
  66. package/test-suites/ui/accessibility.spec.ts +27 -22
  67. package/test-suites/ui/smoke.spec.ts +26 -21
  68. package/LICENSE +0 -21
  69. package/dist/ai/ai-service.d.ts +0 -152
  70. package/dist/ai/ai-service.d.ts.map +0 -1
  71. package/dist/ai/ai-service.js +0 -430
  72. package/dist/ai/ai-service.js.map +0 -1
  73. package/dist/ai/claude-client.d.ts +0 -130
  74. package/dist/ai/claude-client.d.ts.map +0 -1
  75. package/dist/ai/claude-client.js +0 -340
  76. package/dist/ai/claude-client.js.map +0 -1
  77. package/dist/ai/conversation-manager.d.ts +0 -164
  78. package/dist/ai/conversation-manager.d.ts.map +0 -1
  79. package/dist/ai/conversation-manager.js +0 -614
  80. package/dist/ai/conversation-manager.js.map +0 -1
  81. package/dist/ai/index.d.ts +0 -5
  82. package/dist/ai/index.d.ts.map +0 -1
  83. package/dist/ai/index.js +0 -8
  84. package/dist/ai/index.js.map +0 -1
  85. package/dist/cli.d.ts +0 -36
  86. package/dist/cli.d.ts.map +0 -1
  87. package/dist/cli.js +0 -192
  88. package/dist/cli.js.map +0 -1
  89. package/dist/commands/ai.d.ts +0 -89
  90. package/dist/commands/ai.d.ts.map +0 -1
  91. package/dist/commands/ai.js +0 -799
  92. package/dist/commands/ai.js.map +0 -1
  93. package/dist/commands/alignment.d.ts +0 -78
  94. package/dist/commands/alignment.d.ts.map +0 -1
  95. package/dist/commands/alignment.js +0 -817
  96. package/dist/commands/alignment.js.map +0 -1
  97. package/dist/commands/analyze-optimized.d.ts +0 -14
  98. package/dist/commands/analyze-optimized.d.ts.map +0 -1
  99. package/dist/commands/analyze-optimized.js +0 -600
  100. package/dist/commands/analyze-optimized.js.map +0 -1
  101. package/dist/commands/analyze.d.ts +0 -65
  102. package/dist/commands/analyze.d.ts.map +0 -1
  103. package/dist/commands/analyze.js +0 -435
  104. package/dist/commands/analyze.js.map +0 -1
  105. package/dist/commands/batch.d.ts +0 -71
  106. package/dist/commands/batch.d.ts.map +0 -1
  107. package/dist/commands/batch.js +0 -738
  108. package/dist/commands/batch.js.map +0 -1
  109. package/dist/commands/chat.d.ts +0 -71
  110. package/dist/commands/chat.d.ts.map +0 -1
  111. package/dist/commands/chat.js +0 -674
  112. package/dist/commands/chat.js.map +0 -1
  113. package/dist/commands/claude-init.d.ts +0 -28
  114. package/dist/commands/claude-init.d.ts.map +0 -1
  115. package/dist/commands/claude-init.js +0 -591
  116. package/dist/commands/claude-init.js.map +0 -1
  117. package/dist/commands/claude-setup.d.ts +0 -119
  118. package/dist/commands/claude-setup.d.ts.map +0 -1
  119. package/dist/commands/claude-setup.js +0 -1073
  120. package/dist/commands/claude-setup.js.map +0 -1
  121. package/dist/commands/computer-setup-commands.d.ts +0 -53
  122. package/dist/commands/computer-setup-commands.d.ts.map +0 -1
  123. package/dist/commands/computer-setup-commands.js +0 -705
  124. package/dist/commands/computer-setup-commands.js.map +0 -1
  125. package/dist/commands/computer-setup.d.ts +0 -7
  126. package/dist/commands/computer-setup.d.ts.map +0 -1
  127. package/dist/commands/computer-setup.js +0 -849
  128. package/dist/commands/computer-setup.js.map +0 -1
  129. package/dist/commands/create-command.d.ts +0 -7
  130. package/dist/commands/create-command.d.ts.map +0 -1
  131. package/dist/commands/create-command.js +0 -158
  132. package/dist/commands/create-command.js.map +0 -1
  133. package/dist/commands/create.d.ts +0 -74
  134. package/dist/commands/create.d.ts.map +0 -1
  135. package/dist/commands/create.js +0 -556
  136. package/dist/commands/create.js.map +0 -1
  137. package/dist/commands/dashboard.d.ts +0 -91
  138. package/dist/commands/dashboard.d.ts.map +0 -1
  139. package/dist/commands/dashboard.js +0 -538
  140. package/dist/commands/dashboard.js.map +0 -1
  141. package/dist/commands/govern.d.ts +0 -70
  142. package/dist/commands/govern.d.ts.map +0 -1
  143. package/dist/commands/govern.js +0 -481
  144. package/dist/commands/govern.js.map +0 -1
  145. package/dist/commands/governance.d.ts +0 -17
  146. package/dist/commands/governance.d.ts.map +0 -1
  147. package/dist/commands/governance.js +0 -703
  148. package/dist/commands/governance.js.map +0 -1
  149. package/dist/commands/guardian.d.ts +0 -20
  150. package/dist/commands/guardian.d.ts.map +0 -1
  151. package/dist/commands/guardian.js +0 -597
  152. package/dist/commands/guardian.js.map +0 -1
  153. package/dist/commands/init.d.ts +0 -59
  154. package/dist/commands/init.d.ts.map +0 -1
  155. package/dist/commands/init.js +0 -650
  156. package/dist/commands/init.js.map +0 -1
  157. package/dist/commands/orchestrator.d.ts +0 -7
  158. package/dist/commands/orchestrator.d.ts.map +0 -1
  159. package/dist/commands/orchestrator.js +0 -571
  160. package/dist/commands/orchestrator.js.map +0 -1
  161. package/dist/commands/performance-optimizer.d.ts +0 -30
  162. package/dist/commands/performance-optimizer.d.ts.map +0 -1
  163. package/dist/commands/performance-optimizer.js +0 -650
  164. package/dist/commands/performance-optimizer.js.map +0 -1
  165. package/dist/commands/plugins.d.ts +0 -87
  166. package/dist/commands/plugins.d.ts.map +0 -1
  167. package/dist/commands/plugins.js +0 -685
  168. package/dist/commands/plugins.js.map +0 -1
  169. package/dist/commands/rag.d.ts +0 -7
  170. package/dist/commands/rag.d.ts.map +0 -1
  171. package/dist/commands/rag.js +0 -748
  172. package/dist/commands/rag.js.map +0 -1
  173. package/dist/commands/session.d.ts +0 -41
  174. package/dist/commands/session.d.ts.map +0 -1
  175. package/dist/commands/session.js +0 -441
  176. package/dist/commands/session.js.map +0 -1
  177. package/dist/commands/setup.d.ts +0 -29
  178. package/dist/commands/setup.d.ts.map +0 -1
  179. package/dist/commands/setup.js +0 -397
  180. package/dist/commands/setup.js.map +0 -1
  181. package/dist/commands/test-init.d.ts +0 -9
  182. package/dist/commands/test-init.d.ts.map +0 -1
  183. package/dist/commands/test-init.js +0 -222
  184. package/dist/commands/test-init.js.map +0 -1
  185. package/dist/commands/test.d.ts +0 -25
  186. package/dist/commands/test.d.ts.map +0 -1
  187. package/dist/commands/test.js +0 -217
  188. package/dist/commands/test.js.map +0 -1
  189. package/dist/commands/vp.d.ts +0 -7
  190. package/dist/commands/vp.d.ts.map +0 -1
  191. package/dist/commands/vp.js +0 -571
  192. package/dist/commands/vp.js.map +0 -1
  193. package/dist/commands/watch.d.ts +0 -76
  194. package/dist/commands/watch.d.ts.map +0 -1
  195. package/dist/commands/watch.js +0 -613
  196. package/dist/commands/watch.js.map +0 -1
  197. package/dist/commands/worktree.d.ts +0 -63
  198. package/dist/commands/worktree.d.ts.map +0 -1
  199. package/dist/commands/worktree.js +0 -774
  200. package/dist/commands/worktree.js.map +0 -1
  201. package/dist/context/context-manager.d.ts +0 -155
  202. package/dist/context/context-manager.d.ts.map +0 -1
  203. package/dist/context/context-manager.js +0 -383
  204. package/dist/context/context-manager.js.map +0 -1
  205. package/dist/context/index.d.ts +0 -3
  206. package/dist/context/index.d.ts.map +0 -1
  207. package/dist/context/index.js +0 -6
  208. package/dist/context/index.js.map +0 -1
  209. package/dist/context/session-manager.d.ts +0 -207
  210. package/dist/context/session-manager.d.ts.map +0 -1
  211. package/dist/context/session-manager.js +0 -686
  212. package/dist/context/session-manager.js.map +0 -1
  213. package/dist/index.d.ts +0 -8
  214. package/dist/index.d.ts.map +0 -1
  215. package/dist/index.js +0 -51
  216. package/dist/index.js.map +0 -1
  217. package/dist/interactive/interactive-mode.d.ts +0 -76
  218. package/dist/interactive/interactive-mode.d.ts.map +0 -1
  219. package/dist/interactive/interactive-mode.js +0 -732
  220. package/dist/interactive/interactive-mode.js.map +0 -1
  221. package/dist/nlp/command-mapper.d.ts +0 -174
  222. package/dist/nlp/command-mapper.d.ts.map +0 -1
  223. package/dist/nlp/command-mapper.js +0 -624
  224. package/dist/nlp/command-mapper.js.map +0 -1
  225. package/dist/nlp/command-parser.d.ts +0 -106
  226. package/dist/nlp/command-parser.d.ts.map +0 -1
  227. package/dist/nlp/command-parser.js +0 -417
  228. package/dist/nlp/command-parser.js.map +0 -1
  229. package/dist/nlp/index.d.ts +0 -5
  230. package/dist/nlp/index.d.ts.map +0 -1
  231. package/dist/nlp/index.js +0 -8
  232. package/dist/nlp/index.js.map +0 -1
  233. package/dist/nlp/intent-classifier.d.ts +0 -59
  234. package/dist/nlp/intent-classifier.d.ts.map +0 -1
  235. package/dist/nlp/intent-classifier.js +0 -384
  236. package/dist/nlp/intent-classifier.js.map +0 -1
  237. package/dist/nlp/intent-parser.d.ts +0 -152
  238. package/dist/nlp/intent-parser.d.ts.map +0 -1
  239. package/dist/nlp/intent-parser.js +0 -744
  240. package/dist/nlp/intent-parser.js.map +0 -1
  241. package/dist/plugins/plugin-manager.d.ts +0 -120
  242. package/dist/plugins/plugin-manager.d.ts.map +0 -1
  243. package/dist/plugins/plugin-manager.js +0 -595
  244. package/dist/plugins/plugin-manager.js.map +0 -1
  245. package/dist/types/index.d.ts +0 -224
  246. package/dist/types/index.d.ts.map +0 -1
  247. package/dist/types/index.js +0 -3
  248. package/dist/types/index.js.map +0 -1
  249. package/dist/utils/backup-rollback-manager.d.ts +0 -72
  250. package/dist/utils/backup-rollback-manager.d.ts.map +0 -1
  251. package/dist/utils/backup-rollback-manager.js +0 -289
  252. package/dist/utils/backup-rollback-manager.js.map +0 -1
  253. package/dist/utils/claude-config-installer.d.ts +0 -98
  254. package/dist/utils/claude-config-installer.d.ts.map +0 -1
  255. package/dist/utils/claude-config-installer.js +0 -678
  256. package/dist/utils/claude-config-installer.js.map +0 -1
  257. package/dist/utils/config-manager.d.ts +0 -73
  258. package/dist/utils/config-manager.d.ts.map +0 -1
  259. package/dist/utils/config-manager.js +0 -339
  260. package/dist/utils/config-manager.js.map +0 -1
  261. package/dist/utils/error-handler.d.ts +0 -46
  262. package/dist/utils/error-handler.d.ts.map +0 -1
  263. package/dist/utils/error-handler.js +0 -169
  264. package/dist/utils/error-handler.js.map +0 -1
  265. package/dist/utils/logger.d.ts +0 -25
  266. package/dist/utils/logger.d.ts.map +0 -1
  267. package/dist/utils/logger.js +0 -105
  268. package/dist/utils/logger.js.map +0 -1
  269. package/src/commands/computer-setup-commands.ts +0 -872
@@ -1 +0,0 @@
1
- {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
@@ -1,28 +0,0 @@
1
- import type { Command } from 'commander';
2
- export declare class ClaudeInitCommand {
3
- private program;
4
- private spinner;
5
- constructor(program: Command);
6
- private setupCommand;
7
- private execute;
8
- private isGitRepo;
9
- private analyzeProject;
10
- private runAudit;
11
- private promptUser;
12
- private getDefaultMcpTools;
13
- private getDefaultProfile;
14
- private getDefaultAgents;
15
- private getAllAgentChoices;
16
- private generateClaudeMd;
17
- private getAgentDescription;
18
- private getMcpToolDescription;
19
- private getWorkflowPatterns;
20
- private setupClaudeFlow;
21
- private setupMcpTools;
22
- private setupAgents;
23
- private setupQualityHooks;
24
- private printNextSteps;
25
- }
26
- declare const createClaudeInitCommand: (program: Command) => ClaudeInitCommand;
27
- export default createClaudeInitCommand;
28
- //# sourceMappingURL=claude-init.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-init.d.ts","sourceRoot":"","sources":["../../src/commands/claude-init.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAczC,qBAAa,iBAAiB;IAGhB,OAAO,CAAC,OAAO;IAF3B,OAAO,CAAC,OAAO,CAAS;gBAEJ,OAAO,EAAE,OAAO;IAIpC,OAAO,CAAC,YAAY;YAwBN,OAAO;IAgDrB,OAAO,CAAC,SAAS;YASH,cAAc;YA4Dd,QAAQ;YA2HR,UAAU;IAuDxB,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,kBAAkB;YA0BZ,gBAAgB;IAsF9B,OAAO,CAAC,mBAAmB;IAqB3B,OAAO,CAAC,qBAAqB;IAW7B,OAAO,CAAC,mBAAmB;YAiCb,eAAe;YAuCf,aAAa;YA+Cb,WAAW;YA0BX,iBAAiB;IA0B/B,OAAO,CAAC,cAAc;CAcvB;AAED,QAAA,MAAM,uBAAuB,GAAI,SAAS,OAAO,sBACjB,CAAC;AACjC,eAAe,uBAAuB,CAAC"}
@@ -1,591 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ClaudeInitCommand = void 0;
4
- const tslib_1 = require("tslib");
5
- const child_process_1 = require("child_process");
6
- const path = tslib_1.__importStar(require("path"));
7
- const chalk_1 = tslib_1.__importDefault(require("chalk"));
8
- const fs = tslib_1.__importStar(require("fs-extra"));
9
- const inquirer_1 = tslib_1.__importDefault(require("inquirer"));
10
- const ora_1 = tslib_1.__importDefault(require("ora"));
11
- class ClaudeInitCommand {
12
- program;
13
- spinner = (0, ora_1.default)();
14
- constructor(program) {
15
- this.program = program;
16
- this.setupCommand();
17
- }
18
- setupCommand() {
19
- this.program
20
- .command('claude-init')
21
- .alias('ci')
22
- .description('Initialize Claude Code and Claude Flow in current repository')
23
- .option('-i, --interactive', 'Interactive mode with prompts')
24
- .option('-a, --audit', 'Run repository audit first')
25
- .option('-f, --force', 'Force overwrite existing CLAUDE.md')
26
- .option('--agents <agents>', 'Comma-separated list of agents to enable')
27
- .option('--mcp-tools <tools>', 'Comma-separated list of MCP tools to enable')
28
- .option('--profile <profile>', 'Developer profile (fullstack, frontend, backend, devops)')
29
- .action(async (options) => {
30
- await this.execute(options);
31
- });
32
- }
33
- async execute(options) {
34
- console.log(chalk_1.default.blue.bold('\nšŸ¤– Wundr Claude Initialization\n'));
35
- // Check if in a git repository
36
- if (!this.isGitRepo()) {
37
- console.error(chalk_1.default.red('āŒ Not in a git repository. Please run this command in a git repository.'));
38
- process.exit(1);
39
- }
40
- // Gather project information
41
- const projectInfo = await this.analyzeProject();
42
- // Run audit if requested
43
- if (options.audit) {
44
- await this.runAudit(projectInfo);
45
- }
46
- // Interactive mode
47
- if (options.interactive) {
48
- const answers = await this.promptUser(projectInfo);
49
- Object.assign(options, answers);
50
- }
51
- // Generate CLAUDE.md
52
- await this.generateClaudeMd(projectInfo, options);
53
- // Setup Claude Flow
54
- await this.setupClaudeFlow(projectInfo, options);
55
- // Setup MCP tools
56
- await this.setupMcpTools(options.mcpTools);
57
- // Setup agents
58
- await this.setupAgents(options.agents || this.getDefaultAgents(projectInfo));
59
- // Setup quality hooks
60
- await this.setupQualityHooks(projectInfo);
61
- console.log(chalk_1.default.green.bold('\nāœ… Claude initialization complete!\n'));
62
- this.printNextSteps();
63
- }
64
- isGitRepo() {
65
- try {
66
- (0, child_process_1.execSync)('git rev-parse --git-dir', { stdio: 'ignore' });
67
- return true;
68
- }
69
- catch {
70
- return false;
71
- }
72
- }
73
- async analyzeProject() {
74
- this.spinner.start('Analyzing project structure...');
75
- const projectInfo = {
76
- name: path.basename(process.cwd()),
77
- description: 'Project repository',
78
- type: 'unknown',
79
- hasTypeScript: false,
80
- hasReact: false,
81
- hasNext: false,
82
- isMonorepo: false,
83
- scripts: {},
84
- dependencies: [],
85
- };
86
- // Read package.json if it exists
87
- const packageJsonPath = path.join(process.cwd(), 'package.json');
88
- if (await fs.pathExists(packageJsonPath)) {
89
- const pkg = await fs.readJson(packageJsonPath);
90
- projectInfo.name = pkg.name || projectInfo.name;
91
- projectInfo.description = pkg.description || projectInfo.description;
92
- projectInfo.scripts = pkg.scripts || {};
93
- projectInfo.dependencies = [
94
- ...Object.keys(pkg.dependencies || {}),
95
- ...Object.keys(pkg.devDependencies || {}),
96
- ];
97
- }
98
- // Detect project type
99
- projectInfo.hasTypeScript = await fs.pathExists('tsconfig.json');
100
- projectInfo.hasReact = projectInfo.dependencies.includes('react');
101
- projectInfo.hasNext =
102
- (await fs.pathExists('next.config.js')) ||
103
- (await fs.pathExists('next.config.mjs'));
104
- projectInfo.isMonorepo =
105
- (await fs.pathExists('lerna.json')) ||
106
- (await fs.pathExists('pnpm-workspace.yaml')) ||
107
- (await fs.pathExists('rush.json'));
108
- // Determine project type
109
- if (projectInfo.hasNext) {
110
- projectInfo.type = 'nextjs';
111
- }
112
- else if (projectInfo.hasReact) {
113
- projectInfo.type = 'react';
114
- }
115
- else if (projectInfo.hasTypeScript) {
116
- projectInfo.type = 'typescript';
117
- }
118
- else if (projectInfo.dependencies.includes('express')) {
119
- projectInfo.type = 'node-backend';
120
- }
121
- else if (projectInfo.isMonorepo) {
122
- projectInfo.type = 'monorepo';
123
- }
124
- else {
125
- projectInfo.type = 'javascript';
126
- }
127
- this.spinner.succeed(`Project analyzed: ${projectInfo.name} (${projectInfo.type})`);
128
- return projectInfo;
129
- }
130
- async runAudit(projectInfo) {
131
- this.spinner.start('Running repository audit...');
132
- const auditResults = {
133
- score: 0,
134
- maxScore: 100,
135
- categories: {
136
- structure: { score: 0, maxScore: 20 },
137
- quality: { score: 0, maxScore: 20 },
138
- testing: { score: 0, maxScore: 20 },
139
- documentation: { score: 0, maxScore: 20 },
140
- security: { score: 0, maxScore: 20 },
141
- },
142
- recommendations: [],
143
- };
144
- // Structure checks
145
- if (await fs.pathExists('src')) {
146
- auditResults.categories.structure.score += 10;
147
- }
148
- if (await fs.pathExists('.gitignore')) {
149
- auditResults.categories.structure.score += 5;
150
- }
151
- if (projectInfo.isMonorepo && (await fs.pathExists('packages'))) {
152
- auditResults.categories.structure.score += 5;
153
- }
154
- // Quality checks
155
- if ((await fs.pathExists('.eslintrc.json')) ||
156
- (await fs.pathExists('.eslintrc.js'))) {
157
- auditResults.categories.quality.score += 10;
158
- }
159
- else {
160
- auditResults.recommendations.push('Add ESLint configuration');
161
- }
162
- if (await fs.pathExists('.prettierrc')) {
163
- auditResults.categories.quality.score += 5;
164
- }
165
- else {
166
- auditResults.recommendations.push('Add Prettier configuration');
167
- }
168
- if (projectInfo.hasTypeScript) {
169
- auditResults.categories.quality.score += 5;
170
- }
171
- // Testing checks
172
- if (projectInfo.scripts.test) {
173
- auditResults.categories.testing.score += 10;
174
- }
175
- else {
176
- auditResults.recommendations.push('Add test script to package.json');
177
- }
178
- if ((await fs.pathExists('jest.config.js')) ||
179
- (await fs.pathExists('vitest.config.js'))) {
180
- auditResults.categories.testing.score += 10;
181
- }
182
- // Documentation checks
183
- if (await fs.pathExists('README.md')) {
184
- auditResults.categories.documentation.score += 10;
185
- }
186
- else {
187
- auditResults.recommendations.push('Add README.md');
188
- }
189
- if (await fs.pathExists('docs')) {
190
- auditResults.categories.documentation.score += 10;
191
- }
192
- // Security checks
193
- if (!(await fs.pathExists('.env'))) {
194
- auditResults.categories.security.score += 10;
195
- }
196
- if (await fs.pathExists('.env.example')) {
197
- auditResults.categories.security.score += 10;
198
- }
199
- else if (await fs.pathExists('.env')) {
200
- auditResults.recommendations.push('Add .env.example for environment variables');
201
- }
202
- // Calculate total score
203
- for (const category of Object.values(auditResults.categories)) {
204
- auditResults.score += category.score;
205
- }
206
- this.spinner.succeed('Audit complete');
207
- // Display results
208
- console.log(chalk_1.default.cyan('\nšŸ“Š Audit Results:'));
209
- console.log(chalk_1.default.white(`Overall Score: ${auditResults.score}/${auditResults.maxScore}`));
210
- for (const [name, category] of Object.entries(auditResults.categories)) {
211
- const percentage = (category.score / category.maxScore) * 100;
212
- const color = percentage >= 80
213
- ? chalk_1.default.green
214
- : percentage >= 50
215
- ? chalk_1.default.yellow
216
- : chalk_1.default.red;
217
- console.log(color(` ${name}: ${category.score}/${category.maxScore} (${percentage.toFixed(0)}%)`));
218
- }
219
- if (auditResults.recommendations.length > 0) {
220
- console.log(chalk_1.default.yellow('\nšŸ’” Recommendations:'));
221
- for (const rec of auditResults.recommendations) {
222
- console.log(chalk_1.default.white(` • ${rec}`));
223
- }
224
- }
225
- }
226
- async promptUser(projectInfo) {
227
- const answers = await inquirer_1.default.prompt([
228
- {
229
- type: 'confirm',
230
- name: 'setupClaudeFlow',
231
- message: 'Setup Claude Flow orchestration?',
232
- default: true,
233
- },
234
- {
235
- type: 'checkbox',
236
- name: 'mcpTools',
237
- message: 'Select MCP tools to enable:',
238
- choices: [
239
- { name: 'Firecrawl (Web scraping)', value: 'firecrawl' },
240
- { name: 'Context7 (Context management)', value: 'context7' },
241
- { name: 'Playwright (Browser automation)', value: 'playwright' },
242
- { name: 'Browser MCP (Chrome control)', value: 'browser' },
243
- {
244
- name: 'Sequential Thinking (MIT reasoning)',
245
- value: 'sequentialthinking',
246
- },
247
- ],
248
- default: this.getDefaultMcpTools(projectInfo),
249
- },
250
- {
251
- type: 'list',
252
- name: 'profile',
253
- message: 'Select developer profile:',
254
- choices: [
255
- { name: 'Full-stack Developer', value: 'fullstack' },
256
- { name: 'Frontend Developer', value: 'frontend' },
257
- { name: 'Backend Developer', value: 'backend' },
258
- { name: 'DevOps Engineer', value: 'devops' },
259
- { name: 'Custom', value: 'custom' },
260
- ],
261
- default: this.getDefaultProfile(projectInfo),
262
- },
263
- ]);
264
- if (answers.profile === 'custom') {
265
- const customAgents = await inquirer_1.default.prompt([
266
- {
267
- type: 'checkbox',
268
- name: 'agents',
269
- message: 'Select agents to enable:',
270
- choices: this.getAllAgentChoices(),
271
- default: this.getDefaultAgents(projectInfo),
272
- },
273
- ]);
274
- answers.agents = customAgents.agents.join(',');
275
- }
276
- return answers;
277
- }
278
- getDefaultMcpTools(projectInfo) {
279
- const tools = ['sequentialthinking'];
280
- if (projectInfo.hasReact || projectInfo.hasNext) {
281
- tools.push('browser', 'playwright');
282
- }
283
- return tools;
284
- }
285
- getDefaultProfile(projectInfo) {
286
- if (projectInfo.hasNext ||
287
- (projectInfo.hasReact && projectInfo.dependencies.includes('express'))) {
288
- return 'fullstack';
289
- }
290
- else if (projectInfo.hasReact) {
291
- return 'frontend';
292
- }
293
- else if (projectInfo.dependencies.includes('express') ||
294
- projectInfo.dependencies.includes('fastify')) {
295
- return 'backend';
296
- }
297
- return 'fullstack';
298
- }
299
- getDefaultAgents(projectInfo) {
300
- const agents = ['coder', 'reviewer', 'tester', 'planner', 'researcher'];
301
- if (projectInfo.hasTypeScript) {
302
- agents.push('system-architect');
303
- }
304
- if (projectInfo.hasReact || projectInfo.hasNext) {
305
- agents.push('mobile-dev');
306
- }
307
- if (projectInfo.isMonorepo) {
308
- agents.push('repo-architect', 'sync-coordinator');
309
- }
310
- return agents;
311
- }
312
- getAllAgentChoices() {
313
- return [
314
- { name: 'Coder - Implementation specialist', value: 'coder' },
315
- { name: 'Reviewer - Code review specialist', value: 'reviewer' },
316
- { name: 'Tester - Testing specialist', value: 'tester' },
317
- { name: 'Planner - Strategic planning', value: 'planner' },
318
- { name: 'Researcher - Information gathering', value: 'researcher' },
319
- {
320
- name: 'System Architect - Architecture design',
321
- value: 'system-architect',
322
- },
323
- { name: 'Mobile Dev - React Native development', value: 'mobile-dev' },
324
- { name: 'Backend Dev - API development', value: 'backend-dev' },
325
- { name: 'ML Developer - Machine learning', value: 'ml-developer' },
326
- { name: 'CICD Engineer - Pipeline automation', value: 'cicd-engineer' },
327
- { name: 'Performance Analyzer - Optimization', value: 'perf-analyzer' },
328
- { name: 'GitHub Modes - GitHub integration', value: 'github-modes' },
329
- { name: 'PR Manager - Pull request management', value: 'pr-manager' },
330
- { name: 'Issue Tracker - Issue management', value: 'issue-tracker' },
331
- {
332
- name: 'Release Manager - Release coordination',
333
- value: 'release-manager',
334
- },
335
- ];
336
- }
337
- async generateClaudeMd(projectInfo, options) {
338
- this.spinner.start('Generating CLAUDE.md...');
339
- const claudeMdPath = path.join(process.cwd(), 'CLAUDE.md');
340
- if ((await fs.pathExists(claudeMdPath)) && !options.force) {
341
- const { overwrite } = await inquirer_1.default.prompt([
342
- {
343
- type: 'confirm',
344
- name: 'overwrite',
345
- message: 'CLAUDE.md already exists. Overwrite?',
346
- default: false,
347
- },
348
- ]);
349
- if (!overwrite) {
350
- this.spinner.warn('Skipped CLAUDE.md generation');
351
- return;
352
- }
353
- }
354
- const agents = options.agents
355
- ? options.agents.split(',')
356
- : this.getDefaultAgents(projectInfo);
357
- const mcpTools = options.mcpTools || this.getDefaultMcpTools(projectInfo);
358
- const content = `# Claude Code Configuration - ${projectInfo.name}
359
-
360
- ## Project: ${projectInfo.name}
361
- ${projectInfo.description}
362
-
363
- ## 🚨 CRITICAL: VERIFICATION PROTOCOL
364
-
365
- ### MANDATORY: ALWAYS VERIFY, NEVER ASSUME
366
- **After EVERY code change:**
367
- 1. **TEST IT**: Run the actual command and show real output
368
- 2. **PROVE IT**: Show file contents, build results, test output
369
- 3. **FAIL LOUDLY**: If something fails, say "āŒ FAILED:" immediately
370
- 4. **VERIFY SUCCESS**: Only claim "complete" after showing it working
371
-
372
- ## Project Type: ${projectInfo.type}
373
- - TypeScript: ${projectInfo.hasTypeScript ? 'Yes' : 'No'}
374
- - React: ${projectInfo.hasReact ? 'Yes' : 'No'}
375
- - Next.js: ${projectInfo.hasNext ? 'Yes' : 'No'}
376
- - Monorepo: ${projectInfo.isMonorepo ? 'Yes' : 'No'}
377
-
378
- ## Available Scripts
379
- ${Object.entries(projectInfo.scripts)
380
- .map(([key, value]) => `- \`npm run ${key}\`: ${value}`)
381
- .join('\n')}
382
-
383
- ## Quality Standards
384
- - Always run \`npm run build\` after changes
385
- ${projectInfo.scripts.test ? '- Always run `npm run test` before committing' : ''}
386
- ${projectInfo.scripts.lint ? '- Always run `npm run lint` before committing' : ''}
387
- ${projectInfo.scripts.typecheck ? '- Always run `npm run typecheck` for TypeScript projects' : ''}
388
-
389
- ## Agent Configuration
390
- Enabled agents for this project:
391
- ${agents.map(agent => `- **${agent}**: ${this.getAgentDescription(agent)}`).join('\n')}
392
-
393
- ## MCP Tools
394
- Enabled MCP tools:
395
- ${mcpTools.map((tool) => `- **${tool}**: ${this.getMcpToolDescription(tool)}`).join('\n')}
396
-
397
- ## Workflow Patterns
398
- ${this.getWorkflowPatterns(projectInfo, agents)}
399
-
400
- ## Code Style & Best Practices
401
- - **Modular Design**: Keep files under 500 lines
402
- - **Environment Safety**: Never hardcode secrets
403
- - **Test-First**: Write tests before implementation
404
- - **Clean Architecture**: Separate concerns
405
- - **Documentation**: Keep updated
406
-
407
- Generated on: ${new Date().toISOString()}
408
- By: Wundr Claude Init
409
- `;
410
- await fs.writeFile(claudeMdPath, content);
411
- this.spinner.succeed('CLAUDE.md generated successfully');
412
- }
413
- getAgentDescription(agent) {
414
- const descriptions = {
415
- coder: 'Implementation and code generation',
416
- reviewer: 'Code review and quality assurance',
417
- tester: 'Testing and validation',
418
- planner: 'Task planning and orchestration',
419
- researcher: 'Research and information gathering',
420
- 'system-architect': 'System design and architecture',
421
- 'mobile-dev': 'React Native mobile development',
422
- 'backend-dev': 'Backend API development',
423
- 'ml-developer': 'Machine learning development',
424
- 'cicd-engineer': 'CI/CD pipeline automation',
425
- 'perf-analyzer': 'Performance analysis and optimization',
426
- 'github-modes': 'GitHub integration and automation',
427
- 'pr-manager': 'Pull request management',
428
- 'issue-tracker': 'Issue tracking and management',
429
- 'release-manager': 'Release coordination and deployment',
430
- };
431
- return descriptions[agent] || 'Specialized agent';
432
- }
433
- getMcpToolDescription(tool) {
434
- const descriptions = {
435
- firecrawl: 'Web scraping and crawling',
436
- context7: 'Context management and vector search',
437
- playwright: 'Browser automation and testing',
438
- browser: 'Real Chrome browser control',
439
- sequentialthinking: 'Structured reasoning and validation',
440
- };
441
- return descriptions[tool] || 'MCP tool';
442
- }
443
- getWorkflowPatterns(projectInfo, agents) {
444
- const patterns = [];
445
- if (projectInfo.hasReact || projectInfo.hasNext) {
446
- patterns.push(`### Frontend Development
447
- 1. Use **researcher** to analyze requirements
448
- 2. Use **planner** to design component structure
449
- 3. Use **coder** to implement components
450
- 4. Use **tester** to write tests
451
- 5. Use **reviewer** to validate code quality`);
452
- }
453
- if (agents.includes('github-modes')) {
454
- patterns.push(`### GitHub Workflow
455
- 1. Use **issue-tracker** to manage tasks
456
- 2. Use **pr-manager** for pull requests
457
- 3. Use **code-review-swarm** for reviews
458
- 4. Use **release-manager** for deployments`);
459
- }
460
- if (projectInfo.isMonorepo) {
461
- patterns.push(`### Monorepo Management
462
- 1. Use **repo-architect** for structure optimization
463
- 2. Use **sync-coordinator** for package synchronization
464
- 3. Use **multi-repo-swarm** for cross-package changes`);
465
- }
466
- return patterns.join('\n\n');
467
- }
468
- async setupClaudeFlow(projectInfo, options) {
469
- if (!options.setupClaudeFlow) {
470
- return;
471
- }
472
- this.spinner.start('Setting up Claude Flow...');
473
- try {
474
- // Initialize Claude Flow
475
- (0, child_process_1.execSync)('npx claude-flow@alpha init', { stdio: 'ignore' });
476
- // Configure for project
477
- const config = {
478
- project: projectInfo.name,
479
- topology: projectInfo.isMonorepo ? 'hierarchical' : 'mesh',
480
- agents: options.agents
481
- ? options.agents.split(',')
482
- : this.getDefaultAgents(projectInfo),
483
- memory: {
484
- backend: 'sqlite',
485
- path: '.claude-flow/memory.db',
486
- },
487
- neural: {
488
- enabled: true,
489
- modelPath: '.claude-flow/models',
490
- },
491
- };
492
- await fs.writeJson('.claude-flow/config.json', config, { spaces: 2 });
493
- this.spinner.succeed('Claude Flow configured');
494
- }
495
- catch (error) {
496
- this.spinner.fail('Failed to setup Claude Flow');
497
- console.error(chalk_1.default.red(error));
498
- }
499
- }
500
- async setupMcpTools(mcpTools) {
501
- if (!mcpTools) {
502
- return;
503
- }
504
- const tools = Array.isArray(mcpTools) ? mcpTools : mcpTools.split(',');
505
- for (const tool of tools) {
506
- this.spinner.start(`Installing ${tool} MCP...`);
507
- try {
508
- switch (tool) {
509
- case 'firecrawl':
510
- (0, child_process_1.execSync)('npx claude mcp add firecrawl npx @firecrawl/mcp-server', {
511
- stdio: 'ignore',
512
- });
513
- break;
514
- case 'context7':
515
- (0, child_process_1.execSync)('npx claude mcp add context7 npx @context7/mcp-server', {
516
- stdio: 'ignore',
517
- });
518
- break;
519
- case 'playwright':
520
- (0, child_process_1.execSync)('npx claude mcp add playwright npx @playwright/mcp-server', { stdio: 'ignore' });
521
- break;
522
- case 'browser':
523
- (0, child_process_1.execSync)('npx claude mcp add browser npx @browser/mcp-server', {
524
- stdio: 'ignore',
525
- });
526
- break;
527
- case 'sequentialthinking':
528
- (0, child_process_1.execSync)('npm install -g @modelcontextprotocol/server-sequentialthinking', { stdio: 'ignore' });
529
- break;
530
- }
531
- this.spinner.succeed(`${tool} MCP installed`);
532
- }
533
- catch (error) {
534
- this.spinner.fail(`Failed to install ${tool} MCP`);
535
- }
536
- }
537
- }
538
- async setupAgents(agents) {
539
- this.spinner.start('Setting up agents...');
540
- const agentsDir = path.join(process.cwd(), '.claude', 'agents');
541
- await fs.ensureDir(agentsDir);
542
- for (const agent of agents) {
543
- const agentConfig = {
544
- name: agent,
545
- description: this.getAgentDescription(agent),
546
- enabled: true,
547
- configuration: {
548
- maxTokens: 8000,
549
- temperature: 0.7,
550
- topP: 0.9,
551
- },
552
- };
553
- await fs.writeJson(path.join(agentsDir, `${agent}.json`), agentConfig, {
554
- spaces: 2,
555
- });
556
- }
557
- this.spinner.succeed(`${agents.length} agents configured`);
558
- }
559
- async setupQualityHooks(projectInfo) {
560
- this.spinner.start('Setting up quality enforcement hooks...');
561
- const hooksDir = path.join(process.cwd(), '.claude', 'hooks');
562
- await fs.ensureDir(hooksDir);
563
- // Pre-commit hook
564
- const preCommitHook = `#!/bin/bash
565
- # Claude Code Quality Enforcement
566
-
567
- echo "šŸ” Running quality checks..."
568
-
569
- ${projectInfo.scripts.typecheck ? 'npm run typecheck || exit 1' : ''}
570
- ${projectInfo.scripts.lint ? 'npm run lint || exit 1' : ''}
571
- ${projectInfo.scripts.test ? 'npm test || exit 1' : ''}
572
-
573
- echo "āœ… All quality checks passed!"
574
- `;
575
- await fs.writeFile(path.join(hooksDir, 'pre-commit.sh'), preCommitHook);
576
- await fs.chmod(path.join(hooksDir, 'pre-commit.sh'), '755');
577
- this.spinner.succeed('Quality hooks configured');
578
- }
579
- printNextSteps() {
580
- console.log(chalk_1.default.cyan('\nšŸ“‹ Next Steps:'));
581
- console.log(chalk_1.default.white('1. Review and customize CLAUDE.md'));
582
- console.log(chalk_1.default.white('2. Configure API keys for MCP tools (if needed)'));
583
- console.log(chalk_1.default.white('3. Restart Claude Desktop to load new configurations'));
584
- console.log(chalk_1.default.white('4. Run: npx claude-flow@alpha sparc tdd "your first feature"'));
585
- console.log(chalk_1.default.cyan('\nšŸš€ Happy coding with Claude!\n'));
586
- }
587
- }
588
- exports.ClaudeInitCommand = ClaudeInitCommand;
589
- const createClaudeInitCommand = (program) => new ClaudeInitCommand(program);
590
- exports.default = createClaudeInitCommand;
591
- //# sourceMappingURL=claude-init.js.map