@wundr.io/cli 1.0.0 → 1.0.2-dev.20260530174250.ef0ec927

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 (230) hide show
  1. package/README.md +696 -280
  2. package/bin/wundr.js +13 -5
  3. package/package.json +30 -9
  4. package/src/ai/ai-service.ts +6 -4
  5. package/src/ai/claude-client.ts +6 -2
  6. package/src/ai/conversation-manager.ts +12 -5
  7. package/src/cli.ts +42 -13
  8. package/src/commands/ai.ts +340 -64
  9. package/src/commands/alignment.ts +1212 -0
  10. package/src/commands/analyze-optimized.ts +371 -33
  11. package/src/commands/analyze.ts +8 -6
  12. package/src/commands/batch.ts +166 -26
  13. package/src/commands/chat.ts +20 -10
  14. package/src/commands/claude-init.ts +31 -27
  15. package/src/commands/claude-setup.ts +761 -81
  16. package/src/commands/computer-setup.ts +524 -12
  17. package/src/commands/create-command.ts +3 -3
  18. package/src/commands/create.ts +9 -6
  19. package/src/commands/dashboard.ts +11 -6
  20. package/src/commands/govern.ts +11 -6
  21. package/src/commands/governance.ts +1005 -0
  22. package/src/commands/guardian.ts +887 -0
  23. package/src/commands/init.ts +104 -11
  24. package/src/commands/orchestrator.ts +789 -0
  25. package/src/commands/performance-optimizer.ts +15 -10
  26. package/src/commands/plugins.ts +8 -5
  27. package/src/commands/project-update.ts +1156 -0
  28. package/src/commands/rag.ts +1011 -0
  29. package/src/commands/session.ts +631 -0
  30. package/src/commands/setup.ts +42 -344
  31. package/src/commands/test-init.ts +3 -2
  32. package/src/commands/test.ts +3 -2
  33. package/src/commands/watch.ts +21 -11
  34. package/src/commands/worktree.ts +1057 -0
  35. package/src/context/context-manager.ts +5 -2
  36. package/src/context/session-manager.ts +18 -7
  37. package/src/framework/command-interface.ts +520 -0
  38. package/src/framework/command-registry.ts +942 -0
  39. package/src/framework/completion-exporter.ts +383 -0
  40. package/src/framework/debug-logger.ts +519 -0
  41. package/src/framework/error-handler.ts +867 -0
  42. package/src/framework/help-generator.ts +540 -0
  43. package/src/framework/index.ts +169 -0
  44. package/src/framework/interactive-repl.ts +703 -0
  45. package/src/framework/output-formatter.ts +834 -0
  46. package/src/framework/progress-manager.ts +539 -0
  47. package/src/index.ts +3 -2
  48. package/src/interactive/interactive-mode.ts +14 -7
  49. package/src/lib/conflict-resolution.ts +818 -0
  50. package/src/lib/merge-strategy.ts +550 -0
  51. package/src/lib/safety-mechanisms.ts +451 -0
  52. package/src/lib/state-detection.ts +1030 -0
  53. package/src/nlp/command-mapper.ts +8 -3
  54. package/src/nlp/command-parser.ts +5 -2
  55. package/src/nlp/intent-parser.ts +23 -9
  56. package/src/plugins/plugin-manager.ts +50 -24
  57. package/src/tests/computer-setup-integration.test.ts +470 -0
  58. package/src/types/index.ts +1 -1
  59. package/src/types/modules.d.ts +425 -1
  60. package/src/utils/backup-rollback-manager.ts +366 -0
  61. package/src/utils/claude-config-installer.ts +823 -0
  62. package/src/utils/config-manager.ts +9 -6
  63. package/src/utils/error-handler.ts +3 -1
  64. package/src/utils/logger.ts +35 -12
  65. package/templates/batch/ci-cd.yaml +7 -7
  66. package/test-suites/api/health.spec.ts +20 -23
  67. package/test-suites/helpers/test-config.ts +14 -13
  68. package/test-suites/ui/accessibility.spec.ts +27 -22
  69. package/test-suites/ui/smoke.spec.ts +26 -21
  70. package/dist/ai/ai-service.d.ts +0 -152
  71. package/dist/ai/ai-service.d.ts.map +0 -1
  72. package/dist/ai/ai-service.js +0 -430
  73. package/dist/ai/ai-service.js.map +0 -1
  74. package/dist/ai/claude-client.d.ts +0 -130
  75. package/dist/ai/claude-client.d.ts.map +0 -1
  76. package/dist/ai/claude-client.js +0 -339
  77. package/dist/ai/claude-client.js.map +0 -1
  78. package/dist/ai/conversation-manager.d.ts +0 -164
  79. package/dist/ai/conversation-manager.d.ts.map +0 -1
  80. package/dist/ai/conversation-manager.js +0 -612
  81. package/dist/ai/conversation-manager.js.map +0 -1
  82. package/dist/ai/index.d.ts +0 -5
  83. package/dist/ai/index.d.ts.map +0 -1
  84. package/dist/ai/index.js +0 -8
  85. package/dist/ai/index.js.map +0 -1
  86. package/dist/cli.d.ts +0 -36
  87. package/dist/cli.d.ts.map +0 -1
  88. package/dist/cli.js +0 -173
  89. package/dist/cli.js.map +0 -1
  90. package/dist/commands/ai.d.ts +0 -89
  91. package/dist/commands/ai.d.ts.map +0 -1
  92. package/dist/commands/ai.js +0 -735
  93. package/dist/commands/ai.js.map +0 -1
  94. package/dist/commands/analyze-optimized.d.ts +0 -14
  95. package/dist/commands/analyze-optimized.d.ts.map +0 -1
  96. package/dist/commands/analyze-optimized.js +0 -437
  97. package/dist/commands/analyze-optimized.js.map +0 -1
  98. package/dist/commands/analyze.d.ts +0 -65
  99. package/dist/commands/analyze.d.ts.map +0 -1
  100. package/dist/commands/analyze.js +0 -435
  101. package/dist/commands/analyze.js.map +0 -1
  102. package/dist/commands/batch.d.ts +0 -71
  103. package/dist/commands/batch.d.ts.map +0 -1
  104. package/dist/commands/batch.js +0 -738
  105. package/dist/commands/batch.js.map +0 -1
  106. package/dist/commands/chat.d.ts +0 -71
  107. package/dist/commands/chat.d.ts.map +0 -1
  108. package/dist/commands/chat.js +0 -674
  109. package/dist/commands/chat.js.map +0 -1
  110. package/dist/commands/claude-init.d.ts +0 -28
  111. package/dist/commands/claude-init.d.ts.map +0 -1
  112. package/dist/commands/claude-init.js +0 -587
  113. package/dist/commands/claude-init.js.map +0 -1
  114. package/dist/commands/claude-setup.d.ts +0 -32
  115. package/dist/commands/claude-setup.d.ts.map +0 -1
  116. package/dist/commands/claude-setup.js +0 -570
  117. package/dist/commands/claude-setup.js.map +0 -1
  118. package/dist/commands/computer-setup-commands.d.ts +0 -39
  119. package/dist/commands/computer-setup-commands.d.ts.map +0 -1
  120. package/dist/commands/computer-setup-commands.js +0 -563
  121. package/dist/commands/computer-setup-commands.js.map +0 -1
  122. package/dist/commands/computer-setup.d.ts +0 -7
  123. package/dist/commands/computer-setup.d.ts.map +0 -1
  124. package/dist/commands/computer-setup.js +0 -481
  125. package/dist/commands/computer-setup.js.map +0 -1
  126. package/dist/commands/create-command.d.ts +0 -7
  127. package/dist/commands/create-command.d.ts.map +0 -1
  128. package/dist/commands/create-command.js +0 -158
  129. package/dist/commands/create-command.js.map +0 -1
  130. package/dist/commands/create.d.ts +0 -74
  131. package/dist/commands/create.d.ts.map +0 -1
  132. package/dist/commands/create.js +0 -556
  133. package/dist/commands/create.js.map +0 -1
  134. package/dist/commands/dashboard.d.ts +0 -91
  135. package/dist/commands/dashboard.d.ts.map +0 -1
  136. package/dist/commands/dashboard.js +0 -537
  137. package/dist/commands/dashboard.js.map +0 -1
  138. package/dist/commands/govern.d.ts +0 -70
  139. package/dist/commands/govern.d.ts.map +0 -1
  140. package/dist/commands/govern.js +0 -480
  141. package/dist/commands/govern.js.map +0 -1
  142. package/dist/commands/init.d.ts +0 -55
  143. package/dist/commands/init.d.ts.map +0 -1
  144. package/dist/commands/init.js +0 -584
  145. package/dist/commands/init.js.map +0 -1
  146. package/dist/commands/performance-optimizer.d.ts +0 -30
  147. package/dist/commands/performance-optimizer.d.ts.map +0 -1
  148. package/dist/commands/performance-optimizer.js +0 -649
  149. package/dist/commands/performance-optimizer.js.map +0 -1
  150. package/dist/commands/plugins.d.ts +0 -87
  151. package/dist/commands/plugins.d.ts.map +0 -1
  152. package/dist/commands/plugins.js +0 -685
  153. package/dist/commands/plugins.js.map +0 -1
  154. package/dist/commands/setup.d.ts +0 -29
  155. package/dist/commands/setup.d.ts.map +0 -1
  156. package/dist/commands/setup.js +0 -399
  157. package/dist/commands/setup.js.map +0 -1
  158. package/dist/commands/test-init.d.ts +0 -9
  159. package/dist/commands/test-init.d.ts.map +0 -1
  160. package/dist/commands/test-init.js +0 -222
  161. package/dist/commands/test-init.js.map +0 -1
  162. package/dist/commands/test.d.ts +0 -25
  163. package/dist/commands/test.d.ts.map +0 -1
  164. package/dist/commands/test.js +0 -217
  165. package/dist/commands/test.js.map +0 -1
  166. package/dist/commands/watch.d.ts +0 -76
  167. package/dist/commands/watch.d.ts.map +0 -1
  168. package/dist/commands/watch.js +0 -610
  169. package/dist/commands/watch.js.map +0 -1
  170. package/dist/context/context-manager.d.ts +0 -155
  171. package/dist/context/context-manager.d.ts.map +0 -1
  172. package/dist/context/context-manager.js +0 -383
  173. package/dist/context/context-manager.js.map +0 -1
  174. package/dist/context/index.d.ts +0 -3
  175. package/dist/context/index.d.ts.map +0 -1
  176. package/dist/context/index.js +0 -6
  177. package/dist/context/index.js.map +0 -1
  178. package/dist/context/session-manager.d.ts +0 -207
  179. package/dist/context/session-manager.d.ts.map +0 -1
  180. package/dist/context/session-manager.js +0 -682
  181. package/dist/context/session-manager.js.map +0 -1
  182. package/dist/index.d.ts +0 -8
  183. package/dist/index.d.ts.map +0 -1
  184. package/dist/index.js +0 -51
  185. package/dist/index.js.map +0 -1
  186. package/dist/interactive/interactive-mode.d.ts +0 -76
  187. package/dist/interactive/interactive-mode.d.ts.map +0 -1
  188. package/dist/interactive/interactive-mode.js +0 -730
  189. package/dist/interactive/interactive-mode.js.map +0 -1
  190. package/dist/nlp/command-mapper.d.ts +0 -174
  191. package/dist/nlp/command-mapper.d.ts.map +0 -1
  192. package/dist/nlp/command-mapper.js +0 -623
  193. package/dist/nlp/command-mapper.js.map +0 -1
  194. package/dist/nlp/command-parser.d.ts +0 -106
  195. package/dist/nlp/command-parser.d.ts.map +0 -1
  196. package/dist/nlp/command-parser.js +0 -416
  197. package/dist/nlp/command-parser.js.map +0 -1
  198. package/dist/nlp/index.d.ts +0 -5
  199. package/dist/nlp/index.d.ts.map +0 -1
  200. package/dist/nlp/index.js +0 -8
  201. package/dist/nlp/index.js.map +0 -1
  202. package/dist/nlp/intent-classifier.d.ts +0 -59
  203. package/dist/nlp/intent-classifier.d.ts.map +0 -1
  204. package/dist/nlp/intent-classifier.js +0 -384
  205. package/dist/nlp/intent-classifier.js.map +0 -1
  206. package/dist/nlp/intent-parser.d.ts +0 -152
  207. package/dist/nlp/intent-parser.d.ts.map +0 -1
  208. package/dist/nlp/intent-parser.js +0 -739
  209. package/dist/nlp/intent-parser.js.map +0 -1
  210. package/dist/plugins/plugin-manager.d.ts +0 -120
  211. package/dist/plugins/plugin-manager.d.ts.map +0 -1
  212. package/dist/plugins/plugin-manager.js +0 -595
  213. package/dist/plugins/plugin-manager.js.map +0 -1
  214. package/dist/types/index.d.ts +0 -224
  215. package/dist/types/index.d.ts.map +0 -1
  216. package/dist/types/index.js +0 -3
  217. package/dist/types/index.js.map +0 -1
  218. package/dist/utils/config-manager.d.ts +0 -73
  219. package/dist/utils/config-manager.d.ts.map +0 -1
  220. package/dist/utils/config-manager.js +0 -339
  221. package/dist/utils/config-manager.js.map +0 -1
  222. package/dist/utils/error-handler.d.ts +0 -46
  223. package/dist/utils/error-handler.d.ts.map +0 -1
  224. package/dist/utils/error-handler.js +0 -169
  225. package/dist/utils/error-handler.js.map +0 -1
  226. package/dist/utils/logger.d.ts +0 -25
  227. package/dist/utils/logger.d.ts.map +0 -1
  228. package/dist/utils/logger.js +0 -94
  229. package/dist/utils/logger.js.map +0 -1
  230. package/src/commands/computer-setup-commands.ts +0 -709
@@ -1,384 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IntentClassifier = void 0;
4
- /**
5
- * Intent classifier for natural language processing
6
- */
7
- class IntentClassifier {
8
- patterns;
9
- constructor() {
10
- this.patterns = this.initializePatterns();
11
- }
12
- /**
13
- * Classify user intent from natural language input
14
- */
15
- classifyIntent(input) {
16
- const results = [];
17
- const normalizedInput = input.toLowerCase().trim();
18
- for (const pattern of this.patterns) {
19
- for (const regex of pattern.patterns) {
20
- const match = normalizedInput.match(regex);
21
- if (match) {
22
- const entities = {};
23
- // Extract entities using pattern extractors
24
- for (const [entityName, extractor] of Object.entries(pattern.entityExtractors)) {
25
- try {
26
- entities[entityName] = extractor(match);
27
- }
28
- catch (error) {
29
- // Skip failed entity extraction
30
- }
31
- }
32
- const confidence = this.calculateConfidence(match, pattern, normalizedInput);
33
- results.push({
34
- name: pattern.intent,
35
- confidence,
36
- entities,
37
- metadata: {
38
- matchedPattern: regex.source,
39
- priority: pattern.priority,
40
- },
41
- });
42
- }
43
- }
44
- }
45
- // Sort by confidence and priority
46
- return results.sort((a, b) => {
47
- const confidenceDiff = b.confidence - a.confidence;
48
- if (Math.abs(confidenceDiff) < 0.1) {
49
- return ((b.metadata?.['priority'] || 0) - (a.metadata?.['priority'] || 0));
50
- }
51
- return confidenceDiff;
52
- });
53
- }
54
- /**
55
- * Get the best intent classification
56
- */
57
- getBestIntent(input) {
58
- const intents = this.classifyIntent(input);
59
- return intents.length > 0 && intents[0] ? intents[0] : null;
60
- }
61
- /**
62
- * Check if input matches a specific intent
63
- */
64
- matchesIntent(input, intentName, minConfidence = 0.7) {
65
- const intents = this.classifyIntent(input);
66
- const matchedIntent = intents.find(intent => intent.name === intentName);
67
- return matchedIntent ? matchedIntent.confidence >= minConfidence : false;
68
- }
69
- /**
70
- * Initialize intent patterns
71
- */
72
- initializePatterns() {
73
- return [
74
- // Analysis intents
75
- {
76
- intent: 'analyze_project',
77
- patterns: [
78
- /analyze\s+(?:the\s+)?project/i,
79
- /scan\s+(?:the\s+)?project/i,
80
- /check\s+(?:the\s+)?project/i,
81
- /examine\s+(?:the\s+)?project/i,
82
- ],
83
- entityExtractors: {},
84
- priority: 10,
85
- },
86
- {
87
- intent: 'analyze_dependencies',
88
- patterns: [
89
- /analyze\s+dependencies/i,
90
- /check\s+dependencies/i,
91
- /dependency\s+analysis/i,
92
- /deps?\s+check/i,
93
- /find\s+dependency\s+issues/i,
94
- ],
95
- entityExtractors: {},
96
- priority: 10,
97
- },
98
- {
99
- intent: 'analyze_duplicates',
100
- patterns: [
101
- /find\s+duplicates?/i,
102
- /duplicate\s+(?:code|analysis)/i,
103
- /check\s+for\s+duplicates?/i,
104
- /detect\s+duplicates?/i,
105
- ],
106
- entityExtractors: {},
107
- priority: 10,
108
- },
109
- {
110
- intent: 'analyze_quality',
111
- patterns: [
112
- /code\s+quality/i,
113
- /quality\s+check/i,
114
- /analyze\s+quality/i,
115
- /check\s+code\s+quality/i,
116
- ],
117
- entityExtractors: {},
118
- priority: 10,
119
- },
120
- {
121
- intent: 'analyze_path',
122
- patterns: [
123
- /analyze\s+(.+?)(?:\s|$)/i,
124
- /scan\s+(.+?)(?:\s|$)/i,
125
- /check\s+(.+?)(?:\s|$)/i,
126
- ],
127
- entityExtractors: {
128
- path: match => match[1]?.trim(),
129
- },
130
- priority: 8,
131
- },
132
- // Creation intents
133
- {
134
- intent: 'create_service',
135
- patterns: [
136
- /create\s+(?:a\s+)?service/i,
137
- /new\s+service/i,
138
- /generate\s+service/i,
139
- /make\s+(?:a\s+)?service/i,
140
- ],
141
- entityExtractors: {
142
- name: match => this.extractServiceName(match.input || ''),
143
- },
144
- priority: 10,
145
- },
146
- {
147
- intent: 'create_component',
148
- patterns: [
149
- /create\s+(?:a\s+)?component/i,
150
- /new\s+component/i,
151
- /generate\s+component/i,
152
- /make\s+(?:a\s+)?component/i,
153
- ],
154
- entityExtractors: {
155
- name: match => this.extractComponentName(match.input || ''),
156
- },
157
- priority: 10,
158
- },
159
- {
160
- intent: 'create_template',
161
- patterns: [
162
- /create\s+(?:a\s+)?template/i,
163
- /new\s+template/i,
164
- /generate\s+template/i,
165
- /make\s+(?:a\s+)?template/i,
166
- ],
167
- entityExtractors: {
168
- type: match => this.extractTemplateType(match.input || ''),
169
- },
170
- priority: 10,
171
- },
172
- // Initialization intents
173
- {
174
- intent: 'init_project',
175
- patterns: [
176
- /init(?:ialize)?\s+(?:a\s+)?project/i,
177
- /setup\s+(?:a\s+)?project/i,
178
- /start\s+(?:a\s+)?new\s+project/i,
179
- /create\s+(?:a\s+)?new\s+project/i,
180
- ],
181
- entityExtractors: {
182
- name: match => this.extractProjectName(match.input || ''),
183
- type: match => this.extractProjectType(match.input || ''),
184
- },
185
- priority: 10,
186
- },
187
- {
188
- intent: 'init_config',
189
- patterns: [
190
- /init(?:ialize)?\s+config/i,
191
- /setup\s+config/i,
192
- /create\s+config/i,
193
- /configure\s+wundr/i,
194
- ],
195
- entityExtractors: {},
196
- priority: 10,
197
- },
198
- // Dashboard intents
199
- {
200
- intent: 'start_dashboard',
201
- patterns: [
202
- /start\s+dashboard/i,
203
- /open\s+dashboard/i,
204
- /show\s+dashboard/i,
205
- /launch\s+dashboard/i,
206
- /run\s+dashboard/i,
207
- ],
208
- entityExtractors: {
209
- port: match => this.extractPort(match.input || ''),
210
- open: match => /open/.test(match.input || ''),
211
- },
212
- priority: 10,
213
- },
214
- // Governance intents
215
- {
216
- intent: 'apply_governance',
217
- patterns: [
218
- /apply\s+governance/i,
219
- /governance\s+check/i,
220
- /compliance\s+check/i,
221
- /enforce\s+rules/i,
222
- ],
223
- entityExtractors: {},
224
- priority: 10,
225
- },
226
- // Watch intents
227
- {
228
- intent: 'watch_files',
229
- patterns: [
230
- /watch\s+files?/i,
231
- /monitor\s+files?/i,
232
- /auto\s+run/i,
233
- /continuous\s+(?:build|test|check)/i,
234
- ],
235
- entityExtractors: {
236
- pattern: match => this.extractWatchPattern(match.input || ''),
237
- command: match => this.extractWatchCommand(match.input || ''),
238
- },
239
- priority: 10,
240
- },
241
- // Batch intents
242
- {
243
- intent: 'run_batch',
244
- patterns: [
245
- /run\s+batch/i,
246
- /execute\s+batch/i,
247
- /batch\s+(?:operation|job|process)/i,
248
- /run\s+multiple\s+commands/i,
249
- ],
250
- entityExtractors: {
251
- file: match => this.extractBatchFile(match.input || ''),
252
- },
253
- priority: 10,
254
- },
255
- // Plugin intents
256
- {
257
- intent: 'manage_plugins',
258
- patterns: [
259
- /manage\s+plugins?/i,
260
- /plugin\s+(?:list|install|remove)/i,
261
- /add\s+plugin/i,
262
- /install\s+plugin/i,
263
- ],
264
- entityExtractors: {
265
- action: match => this.extractPluginAction(match.input || ''),
266
- name: match => this.extractPluginName(match.input || ''),
267
- },
268
- priority: 10,
269
- },
270
- // Help intents
271
- {
272
- intent: 'get_help',
273
- patterns: [
274
- /help/i,
275
- /how\s+(?:do\s+i|to)/i,
276
- /what\s+(?:is|does)/i,
277
- /show\s+(?:commands|options)/i,
278
- /usage/i,
279
- ],
280
- entityExtractors: {
281
- topic: match => this.extractHelpTopic(match.input || ''),
282
- },
283
- priority: 8,
284
- },
285
- // Generic action intents
286
- {
287
- intent: 'generic_action',
288
- patterns: [
289
- /^(analyze|create|init|start|run|execute|show|open|install|remove|add|delete|update)/i,
290
- ],
291
- entityExtractors: {
292
- action: match => match[1]?.toLowerCase(),
293
- target: match => this.extractActionTarget(match.input || ''),
294
- },
295
- priority: 5,
296
- },
297
- ];
298
- }
299
- /**
300
- * Calculate confidence score for a match
301
- */
302
- calculateConfidence(match, pattern, normalizedInput) {
303
- let confidence = 0.7; // Base confidence
304
- // Boost confidence for exact matches
305
- if (match[0] === normalizedInput) {
306
- confidence += 0.2;
307
- }
308
- // Boost confidence for longer matches
309
- const matchRatio = match[0].length / normalizedInput.length;
310
- confidence += Math.min(0.2, matchRatio * 0.3);
311
- // Boost confidence for high-priority patterns
312
- if (pattern.priority >= 10) {
313
- confidence += 0.1;
314
- }
315
- // Cap confidence at 1.0
316
- return Math.min(1.0, confidence);
317
- }
318
- // Entity extraction helper methods
319
- extractServiceName(input) {
320
- const match = input.match(/(?:service\s+)?(?:called\s+|named\s+)?([A-Z][a-zA-Z]*)/);
321
- return match?.[1];
322
- }
323
- extractComponentName(input) {
324
- const match = input.match(/(?:component\s+)?(?:called\s+|named\s+)?([A-Z][a-zA-Z]*)/);
325
- return match?.[1];
326
- }
327
- extractTemplateType(input) {
328
- const match = input.match(/template\s+for\s+([a-zA-Z]+)/);
329
- return match?.[1];
330
- }
331
- extractProjectName(input) {
332
- const match = input.match(/project\s+(?:called\s+|named\s+)?([a-zA-Z-_]+)/);
333
- return match?.[1];
334
- }
335
- extractProjectType(input) {
336
- const types = ['node', 'react', 'typescript', 'express', 'next', 'vue'];
337
- for (const type of types) {
338
- if (input.includes(type)) {
339
- return type;
340
- }
341
- }
342
- return undefined;
343
- }
344
- extractPort(input) {
345
- const match = input.match(/port\s+(\d+)/);
346
- return match && match[1] ? parseInt(match[1], 10) : undefined;
347
- }
348
- extractWatchPattern(input) {
349
- const match = input.match(/watch\s+"([^"]+)"/);
350
- return match?.[1];
351
- }
352
- extractWatchCommand(input) {
353
- const match = input.match(/run\s+"([^"]+)"/);
354
- return match?.[1];
355
- }
356
- extractBatchFile(input) {
357
- const match = input.match(/batch\s+(?:file\s+)?([^\s]+\.(?:json|yaml|yml))/);
358
- return match?.[1];
359
- }
360
- extractPluginAction(input) {
361
- const actions = ['install', 'remove', 'list', 'enable', 'disable'];
362
- for (const action of actions) {
363
- if (input.includes(action)) {
364
- return action;
365
- }
366
- }
367
- return undefined;
368
- }
369
- extractPluginName(input) {
370
- const match = input.match(/plugin\s+([a-zA-Z-_@\/]+)/);
371
- return match?.[1];
372
- }
373
- extractHelpTopic(input) {
374
- const match = input.match(/help\s+(?:with\s+)?([a-zA-Z]+)/);
375
- return match?.[1];
376
- }
377
- extractActionTarget(input) {
378
- const words = input.split(/\s+/);
379
- // Return words after the action verb
380
- return words.slice(1).join(' ') || undefined;
381
- }
382
- }
383
- exports.IntentClassifier = IntentClassifier;
384
- //# sourceMappingURL=intent-classifier.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intent-classifier.js","sourceRoot":"","sources":["../../src/nlp/intent-classifier.ts"],"names":[],"mappings":"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"}
@@ -1,152 +0,0 @@
1
- import { EventEmitter } from 'events';
2
- import { ClaudeClient, ClaudeMessage } from '../ai/claude-client';
3
- /**
4
- * Intent classification result
5
- */
6
- export interface IntentResult {
7
- intent: string;
8
- confidence: number;
9
- command?: string;
10
- parameters?: Record<string, any>;
11
- clarification?: string;
12
- alternatives?: Array<{
13
- command: string;
14
- confidence: number;
15
- description: string;
16
- }>;
17
- reasoning?: string;
18
- context?: {
19
- entities: Entity[];
20
- keywords: string[];
21
- sentiment: 'positive' | 'neutral' | 'negative';
22
- };
23
- }
24
- /**
25
- * Named entity recognition result
26
- */
27
- export interface Entity {
28
- text: string;
29
- type: 'file_path' | 'package_name' | 'command' | 'option' | 'value' | 'technology';
30
- confidence: number;
31
- startIndex: number;
32
- endIndex: number;
33
- }
34
- /**
35
- * Command pattern for intent matching
36
- */
37
- export interface CommandPattern {
38
- intent: string;
39
- patterns: string[];
40
- parameters: ParameterPattern[];
41
- examples: string[];
42
- category: string;
43
- destructive?: boolean;
44
- }
45
- /**
46
- * Parameter extraction pattern
47
- */
48
- export interface ParameterPattern {
49
- name: string;
50
- type: 'string' | 'number' | 'boolean' | 'path' | 'enum';
51
- required: boolean;
52
- aliases?: string[];
53
- validation?: RegExp;
54
- enumValues?: string[];
55
- defaultValue?: any;
56
- }
57
- /**
58
- * Context for intent analysis
59
- */
60
- export interface IntentContext {
61
- projectType?: string;
62
- recentCommands?: string[];
63
- workingDirectory?: string;
64
- gitStatus?: string;
65
- conversationHistory?: ClaudeMessage[];
66
- userPreferences?: Record<string, any>;
67
- }
68
- /**
69
- * Intent parser configuration
70
- */
71
- export interface IntentParserConfig {
72
- confidenceThreshold: number;
73
- maxAlternatives: number;
74
- enableNER: boolean;
75
- enableContextAwareness: boolean;
76
- cacheDuration: number;
77
- }
78
- /**
79
- * Advanced NLP Intent Parser for converting natural language to CLI commands
80
- */
81
- export declare class IntentParser extends EventEmitter {
82
- private claudeClient;
83
- private config;
84
- private commandPatterns;
85
- private intentCache;
86
- private entityPatterns;
87
- constructor(claudeClient: ClaudeClient, config?: Partial<IntentParserConfig>);
88
- /**
89
- * Parse natural language input and extract intent
90
- */
91
- parseIntent(input: string, availableCommands: string[], context?: IntentContext): Promise<IntentResult>;
92
- /**
93
- * Extract command parameters from natural language
94
- */
95
- extractParameters(input: string, command: string, commandPattern?: CommandPattern): Promise<Record<string, any>>;
96
- /**
97
- * Suggest commands based on partial input
98
- */
99
- suggestCommands(partialInput: string, availableCommands: string[], context?: IntentContext, limit?: number): Promise<Array<{
100
- command: string;
101
- description: string;
102
- confidence: number;
103
- completion: string;
104
- }>>;
105
- /**
106
- * Register a custom command pattern
107
- */
108
- registerCommandPattern(pattern: CommandPattern): void;
109
- /**
110
- * Batch register multiple command patterns
111
- */
112
- registerCommandPatterns(patterns: CommandPattern[]): void;
113
- /**
114
- * Get registered command patterns
115
- */
116
- getCommandPatterns(): CommandPattern[];
117
- /**
118
- * Clear intent cache
119
- */
120
- clearCache(): void;
121
- /**
122
- * Get cache statistics
123
- */
124
- getCacheStats(): {
125
- size: number;
126
- hitRate: number;
127
- oldestEntry: Date | null;
128
- };
129
- private initializePatterns;
130
- private initializeEntityRecognition;
131
- private normalizeInput;
132
- private getCacheKey;
133
- private patternMatching;
134
- private calculatePatternScore;
135
- private calculateStringSimilarity;
136
- private extractEntities;
137
- private aiIntentAnalysis;
138
- private buildContextInfo;
139
- private combineResults;
140
- private validateAndEnrich;
141
- private getContextualAlternatives;
142
- private fallbackIntentParsing;
143
- private fallbackParameterExtraction;
144
- private getPatternSuggestions;
145
- private getAISuggestions;
146
- private extractKeywords;
147
- private analyzeSentiment;
148
- private cacheResult;
149
- private cleanCache;
150
- }
151
- export default IntentParser;
152
- //# sourceMappingURL=intent-parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intent-parser.d.ts","sourceRoot":"","sources":["../../src/nlp/intent-parser.ts"],"names":[],"mappings":"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"}