@stackguide/mcp-server 3.2.0 → 3.8.1

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 (177) hide show
  1. package/README.md +315 -9
  2. package/dist/config/persistence.d.ts +16 -0
  3. package/dist/config/persistence.d.ts.map +1 -1
  4. package/dist/config/persistence.js +53 -0
  5. package/dist/config/persistence.js.map +1 -1
  6. package/dist/handlers/analyze.d.ts +11 -0
  7. package/dist/handlers/analyze.d.ts.map +1 -0
  8. package/dist/handlers/analyze.js +274 -0
  9. package/dist/handlers/analyze.js.map +1 -0
  10. package/dist/handlers/config.d.ts +1 -8
  11. package/dist/handlers/config.d.ts.map +1 -1
  12. package/dist/handlers/config.js +7 -1
  13. package/dist/handlers/config.js.map +1 -1
  14. package/dist/handlers/context.d.ts +1 -5
  15. package/dist/handlers/context.d.ts.map +1 -1
  16. package/dist/handlers/context.js +7 -1
  17. package/dist/handlers/context.js.map +1 -1
  18. package/dist/handlers/cursor.d.ts +1 -7
  19. package/dist/handlers/cursor.d.ts.map +1 -1
  20. package/dist/handlers/cursor.js +7 -1
  21. package/dist/handlers/cursor.js.map +1 -1
  22. package/dist/handlers/custom-rule.d.ts +1 -11
  23. package/dist/handlers/custom-rule.d.ts.map +1 -1
  24. package/dist/handlers/custom-rule.js +7 -1
  25. package/dist/handlers/custom-rule.js.map +1 -1
  26. package/dist/handlers/docs.d.ts +1 -8
  27. package/dist/handlers/docs.d.ts.map +1 -1
  28. package/dist/handlers/docs.js +7 -1
  29. package/dist/handlers/docs.js.map +1 -1
  30. package/dist/handlers/generate.d.ts +1 -13
  31. package/dist/handlers/generate.d.ts.map +1 -1
  32. package/dist/handlers/generate.js +6 -3
  33. package/dist/handlers/generate.js.map +1 -1
  34. package/dist/handlers/health.d.ts +1 -8
  35. package/dist/handlers/health.d.ts.map +1 -1
  36. package/dist/handlers/health.js +11 -3
  37. package/dist/handlers/health.js.map +1 -1
  38. package/dist/handlers/help.d.ts +1 -5
  39. package/dist/handlers/help.d.ts.map +1 -1
  40. package/dist/handlers/help.js +7 -1
  41. package/dist/handlers/help.js.map +1 -1
  42. package/dist/handlers/index.d.ts +1 -0
  43. package/dist/handlers/index.d.ts.map +1 -1
  44. package/dist/handlers/index.js +1 -0
  45. package/dist/handlers/index.js.map +1 -1
  46. package/dist/handlers/knowledge.d.ts +1 -8
  47. package/dist/handlers/knowledge.d.ts.map +1 -1
  48. package/dist/handlers/knowledge.js +7 -1
  49. package/dist/handlers/knowledge.js.map +1 -1
  50. package/dist/handlers/prompts.d.ts +31 -0
  51. package/dist/handlers/prompts.d.ts.map +1 -0
  52. package/dist/handlers/prompts.js +225 -0
  53. package/dist/handlers/prompts.js.map +1 -0
  54. package/dist/handlers/resources.d.ts +27 -0
  55. package/dist/handlers/resources.d.ts.map +1 -0
  56. package/dist/handlers/resources.js +210 -0
  57. package/dist/handlers/resources.js.map +1 -0
  58. package/dist/handlers/review.d.ts.map +1 -1
  59. package/dist/handlers/review.js +18 -1
  60. package/dist/handlers/review.js.map +1 -1
  61. package/dist/handlers/rules.d.ts +1 -9
  62. package/dist/handlers/rules.d.ts.map +1 -1
  63. package/dist/handlers/rules.js +7 -1
  64. package/dist/handlers/rules.js.map +1 -1
  65. package/dist/handlers/setup.d.ts +1 -0
  66. package/dist/handlers/setup.d.ts.map +1 -1
  67. package/dist/handlers/setup.js +42 -0
  68. package/dist/handlers/setup.js.map +1 -1
  69. package/dist/index.d.ts +4 -2
  70. package/dist/index.d.ts.map +1 -1
  71. package/dist/index.js +29 -417
  72. package/dist/index.js.map +1 -1
  73. package/dist/router/index.d.ts +69 -0
  74. package/dist/router/index.d.ts.map +1 -0
  75. package/dist/router/index.js +151 -0
  76. package/dist/router/index.js.map +1 -0
  77. package/dist/services/ast/analyzer.d.ts +55 -0
  78. package/dist/services/ast/analyzer.d.ts.map +1 -0
  79. package/dist/services/ast/analyzer.js +268 -0
  80. package/dist/services/ast/analyzer.js.map +1 -0
  81. package/dist/services/ast/index.d.ts +10 -0
  82. package/dist/services/ast/index.d.ts.map +1 -0
  83. package/dist/services/ast/index.js +12 -0
  84. package/dist/services/ast/index.js.map +1 -0
  85. package/dist/services/ast/rules.d.ts +13 -0
  86. package/dist/services/ast/rules.d.ts.map +1 -0
  87. package/dist/services/ast/rules.js +358 -0
  88. package/dist/services/ast/rules.js.map +1 -0
  89. package/dist/services/ast/treeSitterParser.d.ts +54 -0
  90. package/dist/services/ast/treeSitterParser.d.ts.map +1 -0
  91. package/dist/services/ast/treeSitterParser.js +394 -0
  92. package/dist/services/ast/treeSitterParser.js.map +1 -0
  93. package/dist/services/ast/types.d.ts +167 -0
  94. package/dist/services/ast/types.d.ts.map +1 -0
  95. package/dist/services/ast/types.js +35 -0
  96. package/dist/services/ast/types.js.map +1 -0
  97. package/dist/services/codeAnalyzer.d.ts.map +1 -1
  98. package/dist/services/codeAnalyzer.js +43 -3
  99. package/dist/services/codeAnalyzer.js.map +1 -1
  100. package/dist/services/httpClient.d.ts +45 -0
  101. package/dist/services/httpClient.d.ts.map +1 -0
  102. package/dist/services/httpClient.js +309 -0
  103. package/dist/services/httpClient.js.map +1 -0
  104. package/dist/services/intelligence/configGenerator.d.ts +28 -0
  105. package/dist/services/intelligence/configGenerator.d.ts.map +1 -0
  106. package/dist/services/intelligence/configGenerator.js +404 -0
  107. package/dist/services/intelligence/configGenerator.js.map +1 -0
  108. package/dist/services/intelligence/dependencyAdvisor.d.ts +24 -0
  109. package/dist/services/intelligence/dependencyAdvisor.d.ts.map +1 -0
  110. package/dist/services/intelligence/dependencyAdvisor.js +404 -0
  111. package/dist/services/intelligence/dependencyAdvisor.js.map +1 -0
  112. package/dist/services/intelligence/index.d.ts +12 -0
  113. package/dist/services/intelligence/index.d.ts.map +1 -0
  114. package/dist/services/intelligence/index.js +16 -0
  115. package/dist/services/intelligence/index.js.map +1 -0
  116. package/dist/services/intelligence/projectFs.d.ts +11 -0
  117. package/dist/services/intelligence/projectFs.d.ts.map +1 -0
  118. package/dist/services/intelligence/projectFs.js +30 -0
  119. package/dist/services/intelligence/projectFs.js.map +1 -0
  120. package/dist/services/intelligence/projectIntelligence.d.ts +26 -0
  121. package/dist/services/intelligence/projectIntelligence.d.ts.map +1 -0
  122. package/dist/services/intelligence/projectIntelligence.js +344 -0
  123. package/dist/services/intelligence/projectIntelligence.js.map +1 -0
  124. package/dist/services/intelligence/structureAnalyzer.d.ts +27 -0
  125. package/dist/services/intelligence/structureAnalyzer.d.ts.map +1 -0
  126. package/dist/services/intelligence/structureAnalyzer.js +286 -0
  127. package/dist/services/intelligence/structureAnalyzer.js.map +1 -0
  128. package/dist/services/intelligence/templates.d.ts +22 -0
  129. package/dist/services/intelligence/templates.d.ts.map +1 -0
  130. package/dist/services/intelligence/templates.js +521 -0
  131. package/dist/services/intelligence/templates.js.map +1 -0
  132. package/dist/services/intelligence/types.d.ts +222 -0
  133. package/dist/services/intelligence/types.d.ts.map +1 -0
  134. package/dist/services/intelligence/types.js +7 -0
  135. package/dist/services/intelligence/types.js.map +1 -0
  136. package/dist/services/projectFs.d.ts +85 -0
  137. package/dist/services/projectFs.d.ts.map +1 -0
  138. package/dist/services/projectFs.js +287 -0
  139. package/dist/services/projectFs.js.map +1 -0
  140. package/dist/services/rulesEngine.d.ts +255 -0
  141. package/dist/services/rulesEngine.d.ts.map +1 -0
  142. package/dist/services/rulesEngine.js +483 -0
  143. package/dist/services/rulesEngine.js.map +1 -0
  144. package/dist/services/webDocumentation.d.ts +9 -0
  145. package/dist/services/webDocumentation.d.ts.map +1 -1
  146. package/dist/services/webDocumentation.js +144 -1
  147. package/dist/services/webDocumentation.js.map +1 -1
  148. package/dist/storage/index.d.ts +7 -0
  149. package/dist/storage/index.d.ts.map +1 -0
  150. package/dist/storage/index.js +7 -0
  151. package/dist/storage/index.js.map +1 -0
  152. package/dist/storage/sqlite.d.ts +92 -0
  153. package/dist/storage/sqlite.d.ts.map +1 -0
  154. package/dist/storage/sqlite.js +471 -0
  155. package/dist/storage/sqlite.js.map +1 -0
  156. package/dist/storage/types.d.ts +147 -0
  157. package/dist/storage/types.d.ts.map +1 -0
  158. package/dist/storage/types.js +13 -0
  159. package/dist/storage/types.js.map +1 -0
  160. package/dist/tools/definitions.d.ts +87 -0
  161. package/dist/tools/definitions.d.ts.map +1 -1
  162. package/dist/tools/definitions.js +34 -0
  163. package/dist/tools/definitions.js.map +1 -1
  164. package/dist/utils/logger.d.ts +11 -2
  165. package/dist/utils/logger.d.ts.map +1 -1
  166. package/dist/utils/logger.js +30 -2
  167. package/dist/utils/logger.js.map +1 -1
  168. package/dist/utils/validation.d.ts +3 -3
  169. package/dist/validation/index.d.ts +8 -0
  170. package/dist/validation/index.d.ts.map +1 -0
  171. package/dist/validation/index.js +19 -0
  172. package/dist/validation/index.js.map +1 -0
  173. package/dist/validation/schemas.d.ts +341 -0
  174. package/dist/validation/schemas.d.ts.map +1 -0
  175. package/dist/validation/schemas.js +244 -0
  176. package/dist/validation/schemas.js.map +1 -0
  177. package/package.json +9 -2
package/README.md CHANGED
@@ -2,7 +2,11 @@
2
2
 
3
3
  Dynamic context loading for AI coding assistants. Works with **Cursor** and **GitHub Copilot**.
4
4
 
5
- ## Quick Start
5
+ [![Version](https://img.shields.io/badge/version-3.7.0-blue.svg)](https://github.com/stackguide/mcp-server)
6
+ [![Tests](https://img.shields.io/badge/tests-659%20passing-green.svg)](./tests)
7
+ [![License](https://img.shields.io/badge/license-MIT-green.svg)](./LICENSE)
8
+
9
+ ## 🚀 Quick Start
6
10
 
7
11
  **Cursor** (`.cursor/mcp.json`):
8
12
  ```json
@@ -18,17 +22,19 @@ Dynamic context loading for AI coding assistants. Works with **Cursor** and **Gi
18
22
 
19
23
  **VS Code** (`.vscode/mcp.json`): Same config as above.
20
24
 
21
- ## Usage
25
+ ## 💬 Usage
22
26
 
23
27
  Just talk naturally:
24
28
 
25
29
  - *"Set up my project"* → Auto-configures with interactive wizard
26
- - *"Review my code"* → Analyzes with Quick Fix suggestions
30
+ - *"Review my code"* → Analyzes with AST-powered Quick Fixes
27
31
  - *"Generate a component"* → Creates boilerplate code
28
32
  - *"Check project health"* → Returns health score (A-F)
33
+ - *"Analyze my project"* → Auto-configuration intelligence
29
34
  - *"Browse React rules"* → Shows community rules
35
+ - *"Configure rules"* → **NEW!** Customize analysis rules
30
36
 
31
- ## Tools (12 total)
37
+ ## 🛠️ Tools (13 total)
32
38
 
33
39
  ### Core Tools
34
40
  | Tool | Description | Example |
@@ -39,11 +45,12 @@ Just talk naturally:
39
45
  | `knowledge` | Access patterns & solutions | `knowledge action:"get" query:"architecture"` |
40
46
  | `review` | Review code with Quick Fixes | `review file:"src/index.ts" focus:"security"` |
41
47
 
42
- ### Advanced Features (NEW in v2.4.0)
48
+ ### Advanced Features
43
49
  | Tool | Description | Example |
44
50
  |------|-------------|---------|
45
51
  | `generate` | Generate boilerplate code | `generate type:"component" name:"UserCard"` |
46
52
  | `health` | Project health score (A-F) | `health detailed:true` |
53
+ | `analyze` | **NEW!** Project intelligence | `analyze action:"full" path:"./my-project"` |
47
54
 
48
55
  ### Integration Tools
49
56
  | Tool | Description | Example |
@@ -106,11 +113,205 @@ Setup now provides tailored recommendations:
106
113
  }
107
114
  ```
108
115
 
109
- ## Supported Stacks
116
+ ## 🆕 New in v3.7.0: Configurable Rules Engine
117
+
118
+ ### Custom Rules CRUD
119
+ Create, update, delete, and manage custom rules with full persistence:
120
+
121
+ ```bash
122
+ # Create custom rule
123
+ rules action:"create" rule:{"id":"MY-001", "name":"Custom Rule", "description":"...", "severity":"warning", "pattern":"console\\.log"}
124
+
125
+ # Update rule
126
+ rules action:"update" ruleId:"MY-001" updates:{"severity":"error"}
127
+
128
+ # Delete rule
129
+ rules action:"delete" ruleId:"MY-001"
130
+
131
+ # List all rules (builtin + custom)
132
+ rules action:"list" category:"security"
133
+
134
+ # Import/Export rules
135
+ rules action:"export" format:"json"
136
+ rules action:"import" rules:[...]
137
+ ```
138
+
139
+ ### Rule Overrides
140
+ Override builtin rule behavior without modifying them:
141
+
142
+ ```bash
143
+ # Disable a rule
144
+ rules action:"override" ruleId:"TS-SEC001" override:{"enabled":false}
145
+
146
+ # Change severity
147
+ rules action:"override" ruleId:"TS-PERF002" override:{"severity":"error"}
148
+
149
+ # Custom message
150
+ rules action:"override" ruleId:"TS-BP001" override:{"customMessage":"Use arrow functions in this project"}
151
+
152
+ # File-specific overrides
153
+ rules action:"override" ruleId:"TS-SEC002" override:{"filePatterns":["!**/tests/**"]}
154
+
155
+ # Remove override
156
+ rules action:"clearOverride" ruleId:"TS-SEC001"
157
+ ```
158
+
159
+ ### Rule Settings
160
+ Configure global rule behavior:
161
+
162
+ ```bash
163
+ # Get current settings
164
+ rules action:"settings"
165
+
166
+ # Update settings
167
+ rules action:"updateSettings" settings:{"enableBuiltin":true, "enableCustom":true, "defaultSeverity":"warning"}
168
+ ```
169
+
170
+ ---
171
+
172
+ ## 🆕 New in v3.6.0: Input Validation (Zod)
173
+
174
+ All tool inputs are now validated with Zod schemas:
175
+
176
+ - **Type-safe inputs**: All parameters are validated against schemas
177
+ - **Helpful error messages**: Clear validation errors with path information
178
+ - **Path sanitization**: Prevents path traversal attacks
179
+ - **Automatic sanitization**: Sensitive data is masked in logs
180
+
181
+ ```typescript
182
+ // Example validation error
183
+ {
184
+ "success": false,
185
+ "error": "Validation failed",
186
+ "issues": [
187
+ { "path": ["file"], "message": "Required" },
188
+ { "path": ["focus"], "message": "Invalid enum value. Expected 'security' | 'performance' | 'best-practices'" }
189
+ ]
190
+ }
191
+ ```
192
+
193
+ ---
194
+
195
+ ## 🆕 New in v3.5.0: AST-Powered Analysis (Tree-sitter)
196
+
197
+ ### Real Semantic Code Analysis
198
+ Code review now uses tree-sitter for accurate AST-based analysis:
199
+
200
+ ```bash
201
+ review file:"src/index.ts" focus:"security"
202
+ ```
203
+
204
+ **Supported Languages**: TypeScript, JavaScript, Python, Go, Rust
205
+
206
+ **Analysis Categories**:
207
+ - 🔒 **Security**: eval detection, SQL injection, XSS, hardcoded secrets
208
+ - ⚡ **Performance**: nested loops, inefficient operations
209
+ - ✨ **Best Practices**: any usage, console.log in production, unused vars
210
+ - 🏗️ **Maintainability**: function complexity, file length
211
+
212
+ **Code Metrics**:
213
+ ```json
214
+ {
215
+ "metrics": {
216
+ "linesOfCode": 150,
217
+ "functions": 12,
218
+ "classes": 3,
219
+ "imports": 8,
220
+ "exports": 5,
221
+ "complexity": 24,
222
+ "maxNesting": 4
223
+ }
224
+ }
225
+ ```
226
+
227
+ ---
228
+
229
+ ## 🆕 New in v3.4.0: Architecture Improvements
230
+
231
+ ### SQLite Persistence
232
+ All configuration now persists across sessions:
233
+
234
+ ```bash
235
+ config action:"save" name:"my-project"
236
+ config action:"load" name:"my-project"
237
+ config action:"list"
238
+ config action:"delete" name:"my-project"
239
+ ```
240
+
241
+ ### Real Filesystem Access
242
+ Analyze actual project files:
243
+
244
+ ```bash
245
+ analyze action:"full" path:"./src"
246
+ health detailed:true
247
+ ```
248
+
249
+ ### HTTP Client with Caching
250
+ Rate-limited API calls with automatic caching:
251
+
252
+ ```bash
253
+ docs action:"fetch" url:"https://react.dev/reference/react"
254
+ cursor action:"browse" query:"nextjs"
255
+ ```
256
+
257
+ ---
258
+
259
+ ## New in v3.3.0: Auto-Configuration Intelligence 🧠
260
+
261
+ ### Project Intelligence Analysis
262
+ Get comprehensive analysis with actionable recommendations:
263
+
264
+ ```bash
265
+ analyze action:"full" path:"./my-project"
266
+ analyze action:"structure" # Analyze only project structure
267
+ analyze action:"config" # Analyze only configurations
268
+ analyze action:"dependencies" # Analyze only dependencies
269
+ analyze action:"generate" configType:"eslint" # Generate optimal config
270
+ analyze action:"apply" # Apply all auto-fixes
271
+ ```
272
+
273
+ Returns:
274
+ - **Overall Score (0-100)** with grade (A-F)
275
+ - **Structure Analysis**: Missing dirs/files, directory organization
276
+ - **Configuration Analysis**: Missing ESLint, Prettier, TSConfig recommendations
277
+ - **Dependency Analysis**: Missing packages, security advisories
278
+ - **Priority Actions**: Sorted by impact with estimated effort
279
+ - **Suggested Workflow**: Step-by-step improvement plan
280
+
281
+ ```json
282
+ {
283
+ "overallScore": 72,
284
+ "grade": "C",
285
+ "priorityActions": [
286
+ { "action": "Add ESLint configuration", "priority": "high", "impact": "Improves code quality" },
287
+ { "action": "Add tests directory", "priority": "medium", "impact": "Enables testing" }
288
+ ],
289
+ "suggestedWorkflow": [
290
+ { "step": 1, "action": "Run `analyze action:generate configType:eslint`" },
291
+ { "step": 2, "action": "Run `analyze action:generate configType:prettier`" }
292
+ ]
293
+ }
294
+ ```
295
+
296
+ ### Enhanced Setup with Intelligence
297
+ Setup now includes quick intelligence analysis:
298
+
299
+ ```json
300
+ {
301
+ "intelligence": {
302
+ "structureScore": 85,
303
+ "configScore": 60,
304
+ "dependencyScore": 90,
305
+ "quickWins": ["Add .prettierrc for consistent formatting"]
306
+ }
307
+ }
308
+ ```
309
+
310
+ ## 📋 Supported Stacks
110
311
 
111
312
  `python-django` · `python-fastapi` · `python-flask` · `react-node` · `react-typescript` · `vue-node` · `nextjs` · `express` · `nestjs` · `laravel` · `rails` · `golang` · `rust`
112
313
 
113
- ## Examples
314
+ ## 📖 Examples
114
315
 
115
316
  ```bash
116
317
  # Auto-setup with wizard
@@ -119,17 +320,122 @@ setup
119
320
  # Generate React component
120
321
  generate type:"component" name:"Dashboard"
121
322
 
122
- # Review with Quick Fixes
323
+ # Review with AST-powered Quick Fixes
123
324
  review file:"src/App.tsx" focus:"performance"
124
325
 
125
326
  # Check project health
126
327
  health
127
328
 
329
+ # Analyze project intelligence
330
+ analyze action:"full"
331
+ analyze action:"generate" configType:"prettier"
332
+
128
333
  # Browse and import community rules
129
334
  cursor action:"popular"
130
335
  cursor action:"import" slug:"typescript-best-practices"
336
+
337
+ # Configure rules
338
+ rules action:"list" category:"security"
339
+ rules action:"create" rule:{"id":"MY-001", "name":"No TODO", "pattern":"TODO", "severity":"info"}
340
+ rules action:"override" ruleId:"TS-SEC001" override:{"severity":"error"}
341
+ ```
342
+
343
+ ## 🏗️ Architecture
344
+
131
345
  ```
346
+ ┌─────────────────────────────────────────────────────────┐
347
+ │ MCP Server │
348
+ ├─────────────────────────────────────────────────────────┤
349
+ │ Router (handler registration + validation) │
350
+ ├─────────────────────────────────────────────────────────┤
351
+ │ Handlers (setup, review, generate, health, etc.) │
352
+ ├─────────────────────────────────────────────────────────┤
353
+ │ Services Layer │
354
+ │ ├── AST Analysis (tree-sitter multi-language) │
355
+ │ ├── Rules Engine (builtin + custom + overrides) │
356
+ │ ├── Code Analyzer (semantic analysis) │
357
+ │ ├── Rule Manager (data loading) │
358
+ │ └── Auto Detect (project type detection) │
359
+ ├─────────────────────────────────────────────────────────┤
360
+ │ Infrastructure │
361
+ │ ├── Validation (Zod schemas) │
362
+ │ ├── Persistence (SQLite storage) │
363
+ │ ├── ProjectFs (filesystem abstraction) │
364
+ │ └── HttpClient (rate-limited + cached) │
365
+ └─────────────────────────────────────────────────────────┘
366
+ ```
367
+
368
+ ## 🧪 Testing
369
+
370
+ ```bash
371
+ # Run all tests
372
+ npm test
373
+
374
+ # With coverage
375
+ npm run test:coverage
376
+
377
+ # Watch mode
378
+ npm run test:watch
379
+ ```
380
+
381
+ **Test Statistics**: 659 tests across 35 test files
382
+
383
+ ## 📚 API Reference
384
+
385
+ ### Tool Parameters
386
+
387
+ #### `setup`
388
+ | Parameter | Type | Description |
389
+ |-----------|------|-------------|
390
+ | `type` | string | Project type (optional, auto-detected) |
391
+ | `path` | string | Project path (default: current dir) |
392
+
393
+ #### `review`
394
+ | Parameter | Type | Description |
395
+ |-----------|------|-------------|
396
+ | `file` | string | **Required**. File path to review |
397
+ | `content` | string | File content (optional, read from file) |
398
+ | `focus` | string | `security` \| `performance` \| `best-practices` |
399
+ | `detailed` | boolean | Include code metrics |
400
+
401
+ #### `generate`
402
+ | Parameter | Type | Description |
403
+ |-----------|------|-------------|
404
+ | `type` | string | **Required**. `component` \| `hook` \| `service` \| `test` \| `api` \| `model` \| `util` |
405
+ | `name` | string | **Required**. Name for generated code |
406
+ | `options` | object | Framework-specific options |
407
+
408
+ #### `rules`
409
+ | Parameter | Type | Description |
410
+ |-----------|------|-------------|
411
+ | `action` | string | **Required**. `list` \| `search` \| `get` \| `create` \| `update` \| `delete` \| `override` \| `clearOverride` \| `settings` \| `import` \| `export` |
412
+ | `ruleId` | string | Rule ID (for get/update/delete/override) |
413
+ | `rule` | object | Rule definition (for create) |
414
+ | `override` | object | Override settings |
415
+ | `category` | string | Filter by category |
416
+
417
+ #### `health`
418
+ | Parameter | Type | Description |
419
+ |-----------|------|-------------|
420
+ | `detailed` | boolean | Include category breakdown |
421
+ | `path` | string | Project path |
422
+
423
+ #### `analyze`
424
+ | Parameter | Type | Description |
425
+ |-----------|------|-------------|
426
+ | `action` | string | **Required**. `full` \| `structure` \| `config` \| `dependencies` \| `generate` \| `apply` |
427
+ | `path` | string | Project path |
428
+ | `configType` | string | For generate: `eslint` \| `prettier` \| `tsconfig` |
429
+
430
+ ## 🤝 Contributing
431
+
432
+ 1. Fork the repository
433
+ 2. Create your feature branch (`git checkout -b feature/amazing`)
434
+ 3. Run tests (`npm test`)
435
+ 4. Commit your changes (`git commit -m 'Add amazing feature'`)
436
+ 5. Push to the branch (`git push origin feature/amazing`)
437
+ 6. Open a Pull Request
132
438
 
133
- ## License
439
+ ## 📄 License
134
440
 
135
441
  MIT
@@ -12,4 +12,20 @@ export declare function updateSelectedKnowledge(configId: string, knowledgeIds:
12
12
  export declare function exportConfiguration(id: string): string | null;
13
13
  export declare function importConfiguration(jsonString: string): UserConfiguration | null;
14
14
  export declare function getConfigPath(): string;
15
+ /**
16
+ * Get a value from generic storage
17
+ */
18
+ export declare function getStorageValue<T>(key: string): T | null;
19
+ /**
20
+ * Set a value in generic storage
21
+ */
22
+ export declare function setStorageValue<T>(key: string, value: T): void;
23
+ /**
24
+ * Delete a value from generic storage
25
+ */
26
+ export declare function deleteStorageValue(key: string): boolean;
27
+ /**
28
+ * Check if a key exists in storage
29
+ */
30
+ export declare function hasStorageValue(key: string): boolean;
15
31
  //# sourceMappingURL=persistence.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../src/config/persistence.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAgDlE,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,WAAW,EACxB,aAAa,GAAE,MAAM,EAAO,EAC5B,iBAAiB,GAAE,MAAM,EAAO,GAC/B,iBAAiB,CAmBnB;AAGD,wBAAgB,oBAAoB,IAAI,iBAAiB,EAAE,CAG1D;AAGD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAGzE;AAGD,wBAAgB,sBAAsB,IAAI,iBAAiB,GAAG,IAAI,CAIjE;AAGD,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAW3E;AAGD,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC,GAC5D,iBAAiB,GAAG,IAAI,CAc1B;AAGD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAcvD;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAgBnF;AAGD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAGhF;AAGD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAGzF;AAGD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI7D;AAGD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAoBhF;AAQD,wBAAgB,aAAa,IAAI,MAAM,CAEtC"}
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../../src/config/persistence.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAgDlE,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,WAAW,EACxB,aAAa,GAAE,MAAM,EAAO,EAC5B,iBAAiB,GAAE,MAAM,EAAO,GAC/B,iBAAiB,CAmBnB;AAGD,wBAAgB,oBAAoB,IAAI,iBAAiB,EAAE,CAG1D;AAGD,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAGzE;AAGD,wBAAgB,sBAAsB,IAAI,iBAAiB,GAAG,IAAI,CAIjE;AAGD,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAW3E;AAGD,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,GAAG,WAAW,CAAC,CAAC,GAC5D,iBAAiB,GAAG,IAAI,CAc1B;AAGD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAcvD;AAGD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI,CAgBnF;AAGD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAGhF;AAGD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAGzF;AAGD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAI7D;AAGD,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAoBhF;AAQD,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAgCD;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,IAAI,CAGxD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAI9D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMvD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAGpD"}
@@ -168,4 +168,57 @@ function generateId() {
168
168
  export function getConfigPath() {
169
169
  return CONFIG_DIR;
170
170
  }
171
+ // ============================================================================
172
+ // Generic Storage Functions
173
+ // ============================================================================
174
+ const GENERIC_STORAGE_FILE = join(CONFIG_DIR, 'storage.json');
175
+ function getGenericStorage() {
176
+ ensureConfigDir();
177
+ if (!existsSync(GENERIC_STORAGE_FILE)) {
178
+ return {};
179
+ }
180
+ try {
181
+ const data = readFileSync(GENERIC_STORAGE_FILE, 'utf-8');
182
+ return JSON.parse(data);
183
+ }
184
+ catch {
185
+ return {};
186
+ }
187
+ }
188
+ function saveGenericStorage(storage) {
189
+ ensureConfigDir();
190
+ writeFileSync(GENERIC_STORAGE_FILE, JSON.stringify(storage, null, 2));
191
+ }
192
+ /**
193
+ * Get a value from generic storage
194
+ */
195
+ export function getStorageValue(key) {
196
+ const storage = getGenericStorage();
197
+ return storage[key] ?? null;
198
+ }
199
+ /**
200
+ * Set a value in generic storage
201
+ */
202
+ export function setStorageValue(key, value) {
203
+ const storage = getGenericStorage();
204
+ storage[key] = value;
205
+ saveGenericStorage(storage);
206
+ }
207
+ /**
208
+ * Delete a value from generic storage
209
+ */
210
+ export function deleteStorageValue(key) {
211
+ const storage = getGenericStorage();
212
+ const exists = key in storage;
213
+ delete storage[key];
214
+ saveGenericStorage(storage);
215
+ return exists;
216
+ }
217
+ /**
218
+ * Check if a key exists in storage
219
+ */
220
+ export function hasStorageValue(key) {
221
+ const storage = getGenericStorage();
222
+ return key in storage;
223
+ }
171
224
  //# sourceMappingURL=persistence.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/config/persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../../src/config/persistence.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,0BAA0B;AAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,aAAa,CAAC,CAAC;AAClD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;AACpD,MAAM,mBAAmB,GAAG,IAAI,CAAC,UAAU,EAAE,qBAAqB,CAAC,CAAC;AAQpE,wCAAwC;AACxC,SAAS,eAAe;IACtB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC5B,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED,cAAc;AACd,SAAS,UAAU;IACjB,eAAe,EAAE,CAAC;IAElB,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACrC,MAAM,cAAc,GAAyB;YAC3C,qBAAqB,EAAE,IAAI;YAC3B,cAAc,EAAE,EAAE;SACnB,CAAC;QACF,aAAa,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5E,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,YAAY,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAyB,CAAC;IAClD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;IAC7D,CAAC;AACH,CAAC;AAED,eAAe;AACf,SAAS,WAAW,CAAC,OAA6B;IAChD,eAAe,EAAE,CAAC;IAClB,aAAa,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,WAAwB,EACxB,gBAA0B,EAAE,EAC5B,oBAA8B,EAAE;IAEhC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAE7B,MAAM,SAAS,GAAsB;QACnC,EAAE,EAAE,UAAU,EAAE;QAChB,IAAI;QACJ,WAAW;QACX,aAAa;QACb,iBAAiB;QACjB,WAAW,EAAE,EAAE;QACf,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IAEF,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,EAAE,CAAC;IAC7C,WAAW,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,oBAAoB;IAClC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,cAAc,CAAC;AAChC,CAAC;AAED,0BAA0B;AAC1B,MAAM,UAAU,oBAAoB,CAAC,EAAU;IAC7C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;AAC/D,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,sBAAsB;IACpC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,qBAAqB;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,qBAAqB,CAAC,IAAI,IAAI,CAAC;AAC1F,CAAC;AAED,2BAA2B;AAC3B,MAAM,UAAU,sBAAsB,CAAC,EAAU;IAC/C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAE7D,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,CAAC,qBAAqB,GAAG,EAAE,CAAC;QACnC,WAAW,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,mBAAmB,CACjC,EAAU,EACV,OAA6D;IAE7D,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAEjE,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAE9B,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;QAC9B,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC;QAChC,GAAG,OAAO;QACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;IAEF,WAAW,CAAC,OAAO,CAAC,CAAC;IACrB,OAAO,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC5C,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IAEjE,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAE/B,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAExC,IAAI,OAAO,CAAC,qBAAqB,KAAK,EAAE,EAAE,CAAC;QACzC,OAAO,CAAC,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC;IACxE,CAAC;IAED,WAAW,CAAC,OAAO,CAAC,CAAC;IACrB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kBAAkB;AAClB,MAAM,UAAU,aAAa,CAAC,QAAgB,EAAE,IAAsB;IACpE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,OAAO,GAAS;QACpB,GAAG,IAAI;QACP,EAAE,EAAE,UAAU,EAAE;KACjB,CAAC;IAEF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACjC,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5C,WAAW,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,wBAAwB;AACxB,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE,OAAiB;IACrE,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC;IACzE,OAAO,MAAM,KAAK,IAAI,CAAC;AACzB,CAAC;AAED,4BAA4B;AAC5B,MAAM,UAAU,uBAAuB,CAAC,QAAgB,EAAE,YAAsB;IAC9E,MAAM,MAAM,GAAG,mBAAmB,CAAC,QAAQ,EAAE,EAAE,iBAAiB,EAAE,YAAY,EAAE,CAAC,CAAC;IAClF,OAAO,MAAM,KAAK,IAAI,CAAC;AACzB,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,mBAAmB,CAAC,EAAU;IAC5C,MAAM,MAAM,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzB,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAsB,CAAC;QAE7D,MAAM,SAAS,GAAsB;YACnC,GAAG,QAAQ;YACX,EAAE,EAAE,UAAU,EAAE;YAChB,IAAI,EAAE,GAAG,QAAQ,CAAC,IAAI,aAAa;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QAEF,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvC,WAAW,CAAC,OAAO,CAAC,CAAC;QAErB,OAAO,SAAS,CAAC;IACnB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,qBAAqB;AACrB,SAAS,UAAU;IACjB,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACpE,CAAC;AAED,yBAAyB;AACzB,MAAM,UAAU,aAAa;IAC3B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,+EAA+E;AAC/E,4BAA4B;AAC5B,+EAA+E;AAE/E,MAAM,oBAAoB,GAAG,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAM9D,SAAS,iBAAiB;IACxB,eAAe,EAAE,CAAC;IAElB,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,YAAY,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAmB,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAuB;IACjD,eAAe,EAAE,CAAC;IAClB,aAAa,CAAC,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAI,GAAW;IAC5C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,OAAQ,OAAO,CAAC,GAAG,CAAO,IAAI,IAAI,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAI,GAAW,EAAE,KAAQ;IACtD,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACrB,kBAAkB,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,MAAM,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC;IAC9B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;IACpB,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,OAAO,GAAG,IAAI,OAAO,CAAC;AACxB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Analyze handler - Project Intelligence Analysis
3
+ * Provides comprehensive project analysis and recommendations
4
+ * @version 3.3.0
5
+ */
6
+ import { ServerState, ToolResponse } from './types.js';
7
+ /**
8
+ * Handle analyze tool requests
9
+ */
10
+ export declare function handleAnalyze(args: unknown, state: ServerState): Promise<ToolResponse>;
11
+ //# sourceMappingURL=analyze.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/handlers/analyze.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,YAAY,EAA+B,MAAM,YAAY,CAAC;AA6BpF;;GAEG;AACH,wBAAsB,aAAa,CACjC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,WAAW,GACjB,OAAO,CAAC,YAAY,CAAC,CAyCvB"}