@wundr.io/cli 1.0.11 → 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,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 type { 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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"}