@wundr.io/cli 1.0.12 → 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 (234) hide show
  1. package/LICENSE +21 -0
  2. package/dist/ai/ai-service.d.ts +152 -0
  3. package/dist/ai/ai-service.d.ts.map +1 -0
  4. package/dist/ai/ai-service.js +430 -0
  5. package/dist/ai/ai-service.js.map +1 -0
  6. package/dist/ai/claude-client.d.ts +130 -0
  7. package/dist/ai/claude-client.d.ts.map +1 -0
  8. package/dist/ai/claude-client.js +340 -0
  9. package/dist/ai/claude-client.js.map +1 -0
  10. package/dist/ai/conversation-manager.d.ts +164 -0
  11. package/dist/ai/conversation-manager.d.ts.map +1 -0
  12. package/dist/ai/conversation-manager.js +614 -0
  13. package/dist/ai/conversation-manager.js.map +1 -0
  14. package/dist/ai/index.d.ts +5 -0
  15. package/dist/ai/index.d.ts.map +1 -0
  16. package/dist/ai/index.js +8 -0
  17. package/dist/ai/index.js.map +1 -0
  18. package/dist/cli.d.ts +36 -0
  19. package/dist/cli.d.ts.map +1 -0
  20. package/dist/cli.js +192 -0
  21. package/dist/cli.js.map +1 -0
  22. package/dist/commands/ai.d.ts +89 -0
  23. package/dist/commands/ai.d.ts.map +1 -0
  24. package/dist/commands/ai.js +954 -0
  25. package/dist/commands/ai.js.map +1 -0
  26. package/dist/commands/alignment.d.ts +78 -0
  27. package/dist/commands/alignment.d.ts.map +1 -0
  28. package/dist/commands/alignment.js +817 -0
  29. package/dist/commands/alignment.js.map +1 -0
  30. package/dist/commands/analyze-optimized.d.ts +14 -0
  31. package/dist/commands/analyze-optimized.d.ts.map +1 -0
  32. package/dist/commands/analyze-optimized.js +609 -0
  33. package/dist/commands/analyze-optimized.js.map +1 -0
  34. package/dist/commands/analyze.d.ts +65 -0
  35. package/dist/commands/analyze.d.ts.map +1 -0
  36. package/dist/commands/analyze.js +435 -0
  37. package/dist/commands/analyze.js.map +1 -0
  38. package/dist/commands/batch.d.ts +93 -0
  39. package/dist/commands/batch.d.ts.map +1 -0
  40. package/dist/commands/batch.js +854 -0
  41. package/dist/commands/batch.js.map +1 -0
  42. package/dist/commands/chat.d.ts +72 -0
  43. package/dist/commands/chat.d.ts.map +1 -0
  44. package/dist/commands/chat.js +678 -0
  45. package/dist/commands/chat.js.map +1 -0
  46. package/dist/commands/claude-init.d.ts +28 -0
  47. package/dist/commands/claude-init.d.ts.map +1 -0
  48. package/dist/commands/claude-init.js +591 -0
  49. package/dist/commands/claude-init.js.map +1 -0
  50. package/dist/commands/claude-setup.d.ts +119 -0
  51. package/dist/commands/claude-setup.d.ts.map +1 -0
  52. package/dist/commands/claude-setup.js +1079 -0
  53. package/dist/commands/claude-setup.js.map +1 -0
  54. package/dist/commands/computer-setup.d.ts +8 -0
  55. package/dist/commands/computer-setup.d.ts.map +1 -0
  56. package/dist/commands/computer-setup.js +877 -0
  57. package/dist/commands/computer-setup.js.map +1 -0
  58. package/dist/commands/create-command.d.ts +7 -0
  59. package/dist/commands/create-command.d.ts.map +1 -0
  60. package/dist/commands/create-command.js +158 -0
  61. package/dist/commands/create-command.js.map +1 -0
  62. package/dist/commands/create.d.ts +74 -0
  63. package/dist/commands/create.d.ts.map +1 -0
  64. package/dist/commands/create.js +556 -0
  65. package/dist/commands/create.js.map +1 -0
  66. package/dist/commands/dashboard.d.ts +91 -0
  67. package/dist/commands/dashboard.d.ts.map +1 -0
  68. package/dist/commands/dashboard.js +538 -0
  69. package/dist/commands/dashboard.js.map +1 -0
  70. package/dist/commands/govern.d.ts +70 -0
  71. package/dist/commands/govern.d.ts.map +1 -0
  72. package/dist/commands/govern.js +481 -0
  73. package/dist/commands/govern.js.map +1 -0
  74. package/dist/commands/governance.d.ts +17 -0
  75. package/dist/commands/governance.d.ts.map +1 -0
  76. package/dist/commands/governance.js +703 -0
  77. package/dist/commands/governance.js.map +1 -0
  78. package/dist/commands/guardian.d.ts +20 -0
  79. package/dist/commands/guardian.d.ts.map +1 -0
  80. package/dist/commands/guardian.js +597 -0
  81. package/dist/commands/guardian.js.map +1 -0
  82. package/dist/commands/init.d.ts +59 -0
  83. package/dist/commands/init.d.ts.map +1 -0
  84. package/dist/commands/init.js +650 -0
  85. package/dist/commands/init.js.map +1 -0
  86. package/dist/commands/orchestrator.d.ts +7 -0
  87. package/dist/commands/orchestrator.d.ts.map +1 -0
  88. package/dist/commands/orchestrator.js +578 -0
  89. package/dist/commands/orchestrator.js.map +1 -0
  90. package/dist/commands/performance-optimizer.d.ts +30 -0
  91. package/dist/commands/performance-optimizer.d.ts.map +1 -0
  92. package/dist/commands/performance-optimizer.js +650 -0
  93. package/dist/commands/performance-optimizer.js.map +1 -0
  94. package/dist/commands/plugins.d.ts +87 -0
  95. package/dist/commands/plugins.d.ts.map +1 -0
  96. package/dist/commands/plugins.js +685 -0
  97. package/dist/commands/plugins.js.map +1 -0
  98. package/dist/commands/rag.d.ts +7 -0
  99. package/dist/commands/rag.d.ts.map +1 -0
  100. package/dist/commands/rag.js +751 -0
  101. package/dist/commands/rag.js.map +1 -0
  102. package/dist/commands/session.d.ts +41 -0
  103. package/dist/commands/session.d.ts.map +1 -0
  104. package/dist/commands/session.js +441 -0
  105. package/dist/commands/session.js.map +1 -0
  106. package/dist/commands/setup.d.ts +24 -0
  107. package/dist/commands/setup.d.ts.map +1 -0
  108. package/dist/commands/setup.js +172 -0
  109. package/dist/commands/setup.js.map +1 -0
  110. package/dist/commands/test-init.d.ts +9 -0
  111. package/dist/commands/test-init.d.ts.map +1 -0
  112. package/dist/commands/test-init.js +222 -0
  113. package/dist/commands/test-init.js.map +1 -0
  114. package/dist/commands/test.d.ts +25 -0
  115. package/dist/commands/test.d.ts.map +1 -0
  116. package/dist/commands/test.js +217 -0
  117. package/dist/commands/test.js.map +1 -0
  118. package/dist/commands/watch.d.ts +76 -0
  119. package/dist/commands/watch.d.ts.map +1 -0
  120. package/dist/commands/watch.js +613 -0
  121. package/dist/commands/watch.js.map +1 -0
  122. package/dist/commands/worktree.d.ts +63 -0
  123. package/dist/commands/worktree.d.ts.map +1 -0
  124. package/dist/commands/worktree.js +774 -0
  125. package/dist/commands/worktree.js.map +1 -0
  126. package/dist/context/context-manager.d.ts +155 -0
  127. package/dist/context/context-manager.d.ts.map +1 -0
  128. package/dist/context/context-manager.js +383 -0
  129. package/dist/context/context-manager.js.map +1 -0
  130. package/dist/context/index.d.ts +3 -0
  131. package/dist/context/index.d.ts.map +1 -0
  132. package/dist/context/index.js +6 -0
  133. package/dist/context/index.js.map +1 -0
  134. package/dist/context/session-manager.d.ts +207 -0
  135. package/dist/context/session-manager.d.ts.map +1 -0
  136. package/dist/context/session-manager.js +686 -0
  137. package/dist/context/session-manager.js.map +1 -0
  138. package/dist/framework/command-interface.d.ts +349 -0
  139. package/dist/framework/command-interface.d.ts.map +1 -0
  140. package/dist/framework/command-interface.js +101 -0
  141. package/dist/framework/command-interface.js.map +1 -0
  142. package/dist/framework/command-registry.d.ts +173 -0
  143. package/dist/framework/command-registry.d.ts.map +1 -0
  144. package/dist/framework/command-registry.js +734 -0
  145. package/dist/framework/command-registry.js.map +1 -0
  146. package/dist/framework/completion-exporter.d.ts +79 -0
  147. package/dist/framework/completion-exporter.d.ts.map +1 -0
  148. package/dist/framework/completion-exporter.js +259 -0
  149. package/dist/framework/completion-exporter.js.map +1 -0
  150. package/dist/framework/debug-logger.d.ts +163 -0
  151. package/dist/framework/debug-logger.d.ts.map +1 -0
  152. package/dist/framework/debug-logger.js +373 -0
  153. package/dist/framework/debug-logger.js.map +1 -0
  154. package/dist/framework/error-handler.d.ts +196 -0
  155. package/dist/framework/error-handler.d.ts.map +1 -0
  156. package/dist/framework/error-handler.js +613 -0
  157. package/dist/framework/error-handler.js.map +1 -0
  158. package/dist/framework/help-generator.d.ts +78 -0
  159. package/dist/framework/help-generator.d.ts.map +1 -0
  160. package/dist/framework/help-generator.js +414 -0
  161. package/dist/framework/help-generator.js.map +1 -0
  162. package/dist/framework/index.d.ts +62 -0
  163. package/dist/framework/index.d.ts.map +1 -0
  164. package/dist/framework/index.js +95 -0
  165. package/dist/framework/index.js.map +1 -0
  166. package/dist/framework/interactive-repl.d.ts +138 -0
  167. package/dist/framework/interactive-repl.d.ts.map +1 -0
  168. package/dist/framework/interactive-repl.js +567 -0
  169. package/dist/framework/interactive-repl.js.map +1 -0
  170. package/dist/framework/output-formatter.d.ts +274 -0
  171. package/dist/framework/output-formatter.d.ts.map +1 -0
  172. package/dist/framework/output-formatter.js +545 -0
  173. package/dist/framework/output-formatter.js.map +1 -0
  174. package/dist/framework/progress-manager.d.ts +192 -0
  175. package/dist/framework/progress-manager.d.ts.map +1 -0
  176. package/dist/framework/progress-manager.js +408 -0
  177. package/dist/framework/progress-manager.js.map +1 -0
  178. package/dist/index.d.ts +8 -0
  179. package/dist/index.d.ts.map +1 -0
  180. package/dist/index.js +51 -0
  181. package/dist/index.js.map +1 -0
  182. package/dist/interactive/interactive-mode.d.ts +76 -0
  183. package/dist/interactive/interactive-mode.d.ts.map +1 -0
  184. package/dist/interactive/interactive-mode.js +732 -0
  185. package/dist/interactive/interactive-mode.js.map +1 -0
  186. package/dist/nlp/command-mapper.d.ts +174 -0
  187. package/dist/nlp/command-mapper.d.ts.map +1 -0
  188. package/dist/nlp/command-mapper.js +624 -0
  189. package/dist/nlp/command-mapper.js.map +1 -0
  190. package/dist/nlp/command-parser.d.ts +106 -0
  191. package/dist/nlp/command-parser.d.ts.map +1 -0
  192. package/dist/nlp/command-parser.js +417 -0
  193. package/dist/nlp/command-parser.js.map +1 -0
  194. package/dist/nlp/index.d.ts +5 -0
  195. package/dist/nlp/index.d.ts.map +1 -0
  196. package/dist/nlp/index.js +8 -0
  197. package/dist/nlp/index.js.map +1 -0
  198. package/dist/nlp/intent-classifier.d.ts +59 -0
  199. package/dist/nlp/intent-classifier.d.ts.map +1 -0
  200. package/dist/nlp/intent-classifier.js +384 -0
  201. package/dist/nlp/intent-classifier.js.map +1 -0
  202. package/dist/nlp/intent-parser.d.ts +152 -0
  203. package/dist/nlp/intent-parser.d.ts.map +1 -0
  204. package/dist/nlp/intent-parser.js +746 -0
  205. package/dist/nlp/intent-parser.js.map +1 -0
  206. package/dist/plugins/plugin-manager.d.ts +121 -0
  207. package/dist/plugins/plugin-manager.d.ts.map +1 -0
  208. package/dist/plugins/plugin-manager.js +606 -0
  209. package/dist/plugins/plugin-manager.js.map +1 -0
  210. package/dist/types/index.d.ts +224 -0
  211. package/dist/types/index.d.ts.map +1 -0
  212. package/dist/types/index.js +3 -0
  213. package/dist/types/index.js.map +1 -0
  214. package/dist/utils/backup-rollback-manager.d.ts +72 -0
  215. package/dist/utils/backup-rollback-manager.d.ts.map +1 -0
  216. package/dist/utils/backup-rollback-manager.js +288 -0
  217. package/dist/utils/backup-rollback-manager.js.map +1 -0
  218. package/dist/utils/claude-config-installer.d.ts +98 -0
  219. package/dist/utils/claude-config-installer.d.ts.map +1 -0
  220. package/dist/utils/claude-config-installer.js +678 -0
  221. package/dist/utils/claude-config-installer.js.map +1 -0
  222. package/dist/utils/config-manager.d.ts +73 -0
  223. package/dist/utils/config-manager.d.ts.map +1 -0
  224. package/dist/utils/config-manager.js +339 -0
  225. package/dist/utils/config-manager.js.map +1 -0
  226. package/dist/utils/error-handler.d.ts +46 -0
  227. package/dist/utils/error-handler.d.ts.map +1 -0
  228. package/dist/utils/error-handler.js +169 -0
  229. package/dist/utils/error-handler.js.map +1 -0
  230. package/dist/utils/logger.d.ts +25 -0
  231. package/dist/utils/logger.d.ts.map +1 -0
  232. package/dist/utils/logger.js +105 -0
  233. package/dist/utils/logger.js.map +1 -0
  234. package/package.json +23 -23
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
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 setupRuflo;
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
@@ -0,0 +1 @@
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;YAsBN,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,UAAU;YAuCV,aAAa;YA+Cb,WAAW;YA0BX,iBAAiB;IA0B/B,OAAO,CAAC,cAAc;CAYvB;AAED,QAAA,MAAM,uBAAuB,GAAI,SAAS,OAAO,sBACjB,CAAC;AACjC,eAAe,uBAAuB,CAAC"}
@@ -0,0 +1,591 @@
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 Ruflo 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 Ruflo
54
+ await this.setupRuflo(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: 'setupRuflo',
231
+ message: 'Setup Ruflo 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 setupRuflo(projectInfo, options) {
469
+ if (!options.setupRuflo) {
470
+ return;
471
+ }
472
+ this.spinner.start('Setting up Ruflo...');
473
+ try {
474
+ // Initialize Ruflo
475
+ (0, child_process_1.execSync)('npx ruflo@latest 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: '.ruflo/memory.db',
486
+ },
487
+ neural: {
488
+ enabled: true,
489
+ modelPath: '.ruflo/models',
490
+ },
491
+ };
492
+ await fs.writeJson('.ruflo/config.json', config, { spaces: 2 });
493
+ this.spinner.succeed('Ruflo configured');
494
+ }
495
+ catch (error) {
496
+ this.spinner.fail('Failed to setup Ruflo');
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 ruflo@latest 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