code-auditor-mcp 1.0.0 → 1.1.0
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.
- package/README.md +72 -2
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +3 -0
- package/dist/api/index.js.map +1 -0
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +229 -22
- package/dist/cli.js.map +1 -1
- package/dist/codeIndexDb.d.ts +150 -0
- package/dist/codeIndexDb.d.ts.map +1 -0
- package/dist/codeIndexDb.js +847 -0
- package/dist/codeIndexDb.js.map +1 -0
- package/dist/codeIndexService.d.ts +66 -0
- package/dist/codeIndexService.d.ts.map +1 -0
- package/dist/codeIndexService.js +201 -0
- package/dist/codeIndexService.js.map +1 -0
- package/dist/config/configLoader.d.ts.map +1 -1
- package/dist/config/configLoader.js +17 -1
- package/dist/config/configLoader.js.map +1 -1
- package/dist/config/defaults.d.ts +9 -0
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +9 -0
- package/dist/config/defaults.js.map +1 -1
- package/dist/constants.d.ts +8 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +14 -0
- package/dist/constants.js.map +1 -0
- package/dist/functionScanner.d.ts +30 -0
- package/dist/functionScanner.d.ts.map +1 -0
- package/dist/functionScanner.js +264 -0
- package/dist/functionScanner.js.map +1 -0
- package/dist/generators/AWSQConfigGenerator.d.ts +8 -0
- package/dist/generators/AWSQConfigGenerator.d.ts.map +1 -0
- package/dist/generators/AWSQConfigGenerator.js +33 -0
- package/dist/generators/AWSQConfigGenerator.js.map +1 -0
- package/dist/generators/AiderConfigGenerator.d.ts +8 -0
- package/dist/generators/AiderConfigGenerator.d.ts.map +1 -0
- package/dist/generators/AiderConfigGenerator.js +23 -0
- package/dist/generators/AiderConfigGenerator.js.map +1 -0
- package/dist/generators/BaseConfigGenerator.d.ts +51 -0
- package/dist/generators/BaseConfigGenerator.d.ts.map +1 -0
- package/dist/generators/BaseConfigGenerator.js +67 -0
- package/dist/generators/BaseConfigGenerator.js.map +1 -0
- package/dist/generators/ClaudeConfigGenerator.d.ts +14 -0
- package/dist/generators/ClaudeConfigGenerator.d.ts.map +1 -0
- package/dist/generators/ClaudeConfigGenerator.js +70 -0
- package/dist/generators/ClaudeConfigGenerator.js.map +1 -0
- package/dist/generators/ClineConfigGenerator.d.ts +9 -0
- package/dist/generators/ClineConfigGenerator.d.ts.map +1 -0
- package/dist/generators/ClineConfigGenerator.js +26 -0
- package/dist/generators/ClineConfigGenerator.js.map +1 -0
- package/dist/generators/CodeiumConfigGenerator.d.ts +8 -0
- package/dist/generators/CodeiumConfigGenerator.d.ts.map +1 -0
- package/dist/generators/CodeiumConfigGenerator.js +30 -0
- package/dist/generators/CodeiumConfigGenerator.js.map +1 -0
- package/dist/generators/ConfigGeneratorFactory.d.ts +35 -0
- package/dist/generators/ConfigGeneratorFactory.d.ts.map +1 -0
- package/dist/generators/ConfigGeneratorFactory.js +77 -0
- package/dist/generators/ConfigGeneratorFactory.js.map +1 -0
- package/dist/generators/ContinueConfigGenerator.d.ts +12 -0
- package/dist/generators/ContinueConfigGenerator.d.ts.map +1 -0
- package/dist/generators/ContinueConfigGenerator.js +99 -0
- package/dist/generators/ContinueConfigGenerator.js.map +1 -0
- package/dist/generators/CopilotConfigGenerator.d.ts +12 -0
- package/dist/generators/CopilotConfigGenerator.d.ts.map +1 -0
- package/dist/generators/CopilotConfigGenerator.js +77 -0
- package/dist/generators/CopilotConfigGenerator.js.map +1 -0
- package/dist/generators/CursorConfigGenerator.d.ts +12 -0
- package/dist/generators/CursorConfigGenerator.d.ts.map +1 -0
- package/dist/generators/CursorConfigGenerator.js +80 -0
- package/dist/generators/CursorConfigGenerator.js.map +1 -0
- package/dist/generators/JetBrainsConfigGenerator.d.ts +8 -0
- package/dist/generators/JetBrainsConfigGenerator.d.ts.map +1 -0
- package/dist/generators/JetBrainsConfigGenerator.js +36 -0
- package/dist/generators/JetBrainsConfigGenerator.js.map +1 -0
- package/dist/generators/VSCodeConfigGenerator.d.ts +8 -0
- package/dist/generators/VSCodeConfigGenerator.d.ts.map +1 -0
- package/dist/generators/VSCodeConfigGenerator.js +29 -0
- package/dist/generators/VSCodeConfigGenerator.js.map +1 -0
- package/dist/generators/index.d.ts +13 -0
- package/dist/generators/index.d.ts.map +1 -0
- package/dist/generators/index.js +14 -0
- package/dist/generators/index.js.map +1 -0
- package/dist/mcp-standalone.js +0 -0
- package/dist/mcp.js +483 -2
- package/dist/mcp.js.map +1 -1
- package/dist/search/QueryParser.d.ts +60 -0
- package/dist/search/QueryParser.d.ts.map +1 -0
- package/dist/search/QueryParser.js +330 -0
- package/dist/search/QueryParser.js.map +1 -0
- package/dist/search/index.d.ts +7 -0
- package/dist/search/index.d.ts.map +1 -0
- package/dist/search/index.js +6 -0
- package/dist/search/index.js.map +1 -0
- package/dist/test-multi-strategy-search.d.ts +3 -0
- package/dist/test-multi-strategy-search.d.ts.map +1 -0
- package/dist/test-multi-strategy-search.js +170 -0
- package/dist/test-multi-strategy-search.js.map +1 -0
- package/dist/types.d.ts +136 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/InteractivePrompts.d.ts +37 -0
- package/dist/ui/InteractivePrompts.d.ts.map +1 -0
- package/dist/ui/InteractivePrompts.js +147 -0
- package/dist/ui/InteractivePrompts.js.map +1 -0
- package/dist/ui/index.d.ts +2 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +3 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/utils/jsDocParser.d.ts +84 -0
- package/dist/utils/jsDocParser.d.ts.map +1 -0
- package/dist/utils/jsDocParser.js +366 -0
- package/dist/utils/jsDocParser.js.map +1 -0
- package/package.json +31 -11
|
@@ -0,0 +1,366 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSDoc Parser Utilities
|
|
3
|
+
* Extracts JSDoc documentation from TypeScript AST nodes
|
|
4
|
+
*
|
|
5
|
+
* Provides comprehensive extraction of JSDoc comments including:
|
|
6
|
+
* - Description
|
|
7
|
+
* - Parameters (@param)
|
|
8
|
+
* - Return values (@returns, @return)
|
|
9
|
+
* - Thrown exceptions (@throws)
|
|
10
|
+
* - Examples (@example)
|
|
11
|
+
* - Other tags (deprecated, since, see, etc.)
|
|
12
|
+
*/
|
|
13
|
+
import * as ts from 'typescript';
|
|
14
|
+
/**
|
|
15
|
+
* Extract JSDoc information from a TypeScript node
|
|
16
|
+
* @param node The AST node to extract JSDoc from
|
|
17
|
+
* @param sourceFile The source file containing the node
|
|
18
|
+
* @returns Extracted JSDoc information
|
|
19
|
+
*/
|
|
20
|
+
export function extractJSDoc(node, sourceFile) {
|
|
21
|
+
const jsDocInfo = {
|
|
22
|
+
tags: {}
|
|
23
|
+
};
|
|
24
|
+
// Get JSDoc comments attached to the node
|
|
25
|
+
const jsDocComments = getJSDocComments(node);
|
|
26
|
+
if (jsDocComments.length === 0) {
|
|
27
|
+
return jsDocInfo;
|
|
28
|
+
}
|
|
29
|
+
// Process each JSDoc comment
|
|
30
|
+
for (const jsDoc of jsDocComments) {
|
|
31
|
+
// Extract description
|
|
32
|
+
const description = extractDescription(jsDoc);
|
|
33
|
+
if (description && !jsDocInfo.description) {
|
|
34
|
+
jsDocInfo.description = description;
|
|
35
|
+
}
|
|
36
|
+
// Extract tags
|
|
37
|
+
if (jsDoc.tags) {
|
|
38
|
+
for (const tag of jsDoc.tags) {
|
|
39
|
+
processJSDocTag(tag, jsDocInfo);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
return jsDocInfo;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Get JSDoc comments from a node
|
|
47
|
+
*/
|
|
48
|
+
function getJSDocComments(node) {
|
|
49
|
+
const jsDocNodes = [];
|
|
50
|
+
// TypeScript provides JSDoc comments through the node
|
|
51
|
+
const jsDocComments = node.jsDoc;
|
|
52
|
+
if (jsDocComments && Array.isArray(jsDocComments)) {
|
|
53
|
+
jsDocNodes.push(...jsDocComments);
|
|
54
|
+
}
|
|
55
|
+
// Alternative method using ts.getJSDocCommentsAndTags
|
|
56
|
+
const commentsAndTags = ts.getJSDocCommentsAndTags(node);
|
|
57
|
+
for (const item of commentsAndTags) {
|
|
58
|
+
if (ts.isJSDoc(item)) {
|
|
59
|
+
jsDocNodes.push(item);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
return jsDocNodes;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Extract description from JSDoc
|
|
66
|
+
*/
|
|
67
|
+
function extractDescription(jsDoc) {
|
|
68
|
+
if (jsDoc.comment) {
|
|
69
|
+
if (typeof jsDoc.comment === 'string') {
|
|
70
|
+
return jsDoc.comment.trim();
|
|
71
|
+
}
|
|
72
|
+
else if (Array.isArray(jsDoc.comment)) {
|
|
73
|
+
// Handle NodeArray<JSDocComment>
|
|
74
|
+
return jsDoc.comment.map(c => typeof c === 'string' ? c : c.getText?.() || '').join('').trim();
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return undefined;
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Process a JSDoc tag and add information to the JSDocInfo object
|
|
81
|
+
*/
|
|
82
|
+
function processJSDocTag(tag, jsDocInfo) {
|
|
83
|
+
const tagName = tag.tagName.text.toLowerCase();
|
|
84
|
+
switch (tagName) {
|
|
85
|
+
case 'param':
|
|
86
|
+
case 'parameter':
|
|
87
|
+
processParamTag(tag, jsDocInfo);
|
|
88
|
+
break;
|
|
89
|
+
case 'returns':
|
|
90
|
+
case 'return':
|
|
91
|
+
processReturnTag(tag, jsDocInfo);
|
|
92
|
+
break;
|
|
93
|
+
case 'throws':
|
|
94
|
+
case 'throw':
|
|
95
|
+
case 'exception':
|
|
96
|
+
processThrowsTag(tag, jsDocInfo);
|
|
97
|
+
break;
|
|
98
|
+
case 'example':
|
|
99
|
+
processExampleTag(tag, jsDocInfo);
|
|
100
|
+
break;
|
|
101
|
+
default:
|
|
102
|
+
// Store other tags generically
|
|
103
|
+
processGenericTag(tag, jsDocInfo);
|
|
104
|
+
break;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Process @param tag
|
|
109
|
+
*/
|
|
110
|
+
function processParamTag(tag, jsDocInfo) {
|
|
111
|
+
if (!jsDocInfo.params) {
|
|
112
|
+
jsDocInfo.params = [];
|
|
113
|
+
}
|
|
114
|
+
const param = {
|
|
115
|
+
name: tag.name.getText(),
|
|
116
|
+
optional: tag.isBracketed || false
|
|
117
|
+
};
|
|
118
|
+
// Extract type if available
|
|
119
|
+
if (tag.typeExpression) {
|
|
120
|
+
param.type = tag.typeExpression.type.getText();
|
|
121
|
+
}
|
|
122
|
+
// Extract description
|
|
123
|
+
if (tag.comment) {
|
|
124
|
+
param.description = extractTagComment(tag.comment);
|
|
125
|
+
}
|
|
126
|
+
// Check for default value in description (common pattern: @param {type} [name=default])
|
|
127
|
+
const nameText = tag.name.getText();
|
|
128
|
+
if (nameText.includes('=')) {
|
|
129
|
+
const [name, defaultValue] = nameText.split('=');
|
|
130
|
+
param.name = name.trim();
|
|
131
|
+
param.defaultValue = defaultValue.trim();
|
|
132
|
+
param.optional = true;
|
|
133
|
+
}
|
|
134
|
+
jsDocInfo.params.push(param);
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Process @returns tag
|
|
138
|
+
*/
|
|
139
|
+
function processReturnTag(tag, jsDocInfo) {
|
|
140
|
+
if (!jsDocInfo.returns) {
|
|
141
|
+
jsDocInfo.returns = {};
|
|
142
|
+
}
|
|
143
|
+
// Extract type if available
|
|
144
|
+
if (tag.typeExpression) {
|
|
145
|
+
jsDocInfo.returns.type = tag.typeExpression.type.getText();
|
|
146
|
+
}
|
|
147
|
+
// Extract description
|
|
148
|
+
if (tag.comment) {
|
|
149
|
+
jsDocInfo.returns.description = extractTagComment(tag.comment);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
/**
|
|
153
|
+
* Process @throws tag
|
|
154
|
+
*/
|
|
155
|
+
function processThrowsTag(tag, jsDocInfo) {
|
|
156
|
+
if (!jsDocInfo.throws) {
|
|
157
|
+
jsDocInfo.throws = [];
|
|
158
|
+
}
|
|
159
|
+
const throwsInfo = {};
|
|
160
|
+
// Extract type if available
|
|
161
|
+
if (tag.typeExpression) {
|
|
162
|
+
throwsInfo.type = tag.typeExpression.type.getText();
|
|
163
|
+
}
|
|
164
|
+
// Extract description
|
|
165
|
+
if (tag.comment) {
|
|
166
|
+
throwsInfo.description = extractTagComment(tag.comment);
|
|
167
|
+
}
|
|
168
|
+
jsDocInfo.throws.push(throwsInfo);
|
|
169
|
+
}
|
|
170
|
+
/**
|
|
171
|
+
* Process @example tag
|
|
172
|
+
*/
|
|
173
|
+
function processExampleTag(tag, jsDocInfo) {
|
|
174
|
+
if (!jsDocInfo.examples) {
|
|
175
|
+
jsDocInfo.examples = [];
|
|
176
|
+
}
|
|
177
|
+
if (tag.comment) {
|
|
178
|
+
const example = extractTagComment(tag.comment);
|
|
179
|
+
if (example) {
|
|
180
|
+
jsDocInfo.examples.push(example);
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Process generic tags (deprecated, since, see, etc.)
|
|
186
|
+
*/
|
|
187
|
+
function processGenericTag(tag, jsDocInfo) {
|
|
188
|
+
const tagName = tag.tagName.text.toLowerCase();
|
|
189
|
+
if (!jsDocInfo.tags[tagName]) {
|
|
190
|
+
jsDocInfo.tags[tagName] = [];
|
|
191
|
+
}
|
|
192
|
+
if (tag.comment) {
|
|
193
|
+
const comment = extractTagComment(tag.comment);
|
|
194
|
+
if (comment) {
|
|
195
|
+
jsDocInfo.tags[tagName].push(comment);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
else {
|
|
199
|
+
// Some tags don't have comments (e.g., @deprecated without description)
|
|
200
|
+
jsDocInfo.tags[tagName].push('');
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Extract comment text from JSDoc comment
|
|
205
|
+
*/
|
|
206
|
+
function extractTagComment(comment) {
|
|
207
|
+
if (typeof comment === 'string') {
|
|
208
|
+
return comment.trim();
|
|
209
|
+
}
|
|
210
|
+
else if (Array.isArray(comment)) {
|
|
211
|
+
return comment.map(c => typeof c === 'string' ? c : c.getText?.() || '').join('').trim();
|
|
212
|
+
}
|
|
213
|
+
return '';
|
|
214
|
+
}
|
|
215
|
+
/**
|
|
216
|
+
* Extract JSDoc for function-like declarations
|
|
217
|
+
* @param node Function declaration, method declaration, or arrow function
|
|
218
|
+
* @param sourceFile The source file containing the node
|
|
219
|
+
* @returns JSDoc information formatted for EnhancedFunctionMetadata
|
|
220
|
+
*/
|
|
221
|
+
export function extractFunctionJSDoc(node, sourceFile) {
|
|
222
|
+
const jsDocInfo = extractJSDoc(node, sourceFile);
|
|
223
|
+
// Convert to EnhancedFunctionMetadata format
|
|
224
|
+
const result = {};
|
|
225
|
+
if (jsDocInfo.description) {
|
|
226
|
+
result.description = jsDocInfo.description;
|
|
227
|
+
}
|
|
228
|
+
if (jsDocInfo.examples && jsDocInfo.examples.length > 0) {
|
|
229
|
+
result.examples = jsDocInfo.examples;
|
|
230
|
+
}
|
|
231
|
+
if (jsDocInfo.tags && Object.keys(jsDocInfo.tags).length > 0) {
|
|
232
|
+
result.tags = jsDocInfo.tags;
|
|
233
|
+
}
|
|
234
|
+
return Object.keys(result).length > 0 ? result : undefined;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Extract parameter information including JSDoc
|
|
238
|
+
* @param node Function-like declaration
|
|
239
|
+
* @param sourceFile The source file containing the node
|
|
240
|
+
* @returns Array of parameter information
|
|
241
|
+
*/
|
|
242
|
+
export function extractParameters(node, sourceFile) {
|
|
243
|
+
const jsDocInfo = extractJSDoc(node, sourceFile);
|
|
244
|
+
const parameters = [];
|
|
245
|
+
// Extract parameters from the function signature
|
|
246
|
+
for (const param of node.parameters) {
|
|
247
|
+
const paramName = param.name.getText(sourceFile);
|
|
248
|
+
const paramInfo = {
|
|
249
|
+
name: paramName,
|
|
250
|
+
optional: !!param.questionToken || !!param.initializer
|
|
251
|
+
};
|
|
252
|
+
// Get type from TypeScript
|
|
253
|
+
if (param.type) {
|
|
254
|
+
paramInfo.type = param.type.getText(sourceFile);
|
|
255
|
+
}
|
|
256
|
+
// Get default value
|
|
257
|
+
if (param.initializer) {
|
|
258
|
+
paramInfo.defaultValue = param.initializer.getText(sourceFile);
|
|
259
|
+
}
|
|
260
|
+
// Find matching JSDoc param
|
|
261
|
+
const jsDocParam = jsDocInfo.params?.find(p => p.name === paramName);
|
|
262
|
+
if (jsDocParam) {
|
|
263
|
+
if (jsDocParam.description) {
|
|
264
|
+
paramInfo.description = jsDocParam.description;
|
|
265
|
+
}
|
|
266
|
+
// JSDoc type takes precedence if TypeScript type is not available
|
|
267
|
+
if (!paramInfo.type && jsDocParam.type) {
|
|
268
|
+
paramInfo.type = jsDocParam.type;
|
|
269
|
+
}
|
|
270
|
+
if (jsDocParam.defaultValue) {
|
|
271
|
+
paramInfo.defaultValue = jsDocParam.defaultValue;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
parameters.push(paramInfo);
|
|
275
|
+
}
|
|
276
|
+
// Add any JSDoc params that aren't in the signature (e.g., for JavaScript files)
|
|
277
|
+
if (jsDocInfo.params) {
|
|
278
|
+
for (const jsDocParam of jsDocInfo.params) {
|
|
279
|
+
if (!parameters.find(p => p.name === jsDocParam.name)) {
|
|
280
|
+
parameters.push({
|
|
281
|
+
name: jsDocParam.name,
|
|
282
|
+
type: jsDocParam.type,
|
|
283
|
+
description: jsDocParam.description,
|
|
284
|
+
optional: jsDocParam.optional,
|
|
285
|
+
defaultValue: jsDocParam.defaultValue
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}
|
|
290
|
+
return parameters;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Extract return type information including JSDoc
|
|
294
|
+
* @param node Function-like declaration
|
|
295
|
+
* @param sourceFile The source file containing the node
|
|
296
|
+
* @returns Return type string or undefined
|
|
297
|
+
*/
|
|
298
|
+
export function extractReturnType(node, sourceFile) {
|
|
299
|
+
// First try to get the TypeScript return type
|
|
300
|
+
if (node.type) {
|
|
301
|
+
return node.type.getText(sourceFile);
|
|
302
|
+
}
|
|
303
|
+
// Fall back to JSDoc return type
|
|
304
|
+
const jsDocInfo = extractJSDoc(node, sourceFile);
|
|
305
|
+
if (jsDocInfo.returns?.type) {
|
|
306
|
+
return jsDocInfo.returns.type;
|
|
307
|
+
}
|
|
308
|
+
return undefined;
|
|
309
|
+
}
|
|
310
|
+
/**
|
|
311
|
+
* Check if a function has JSDoc documentation
|
|
312
|
+
* @param node Function-like declaration
|
|
313
|
+
* @returns True if the function has JSDoc
|
|
314
|
+
*/
|
|
315
|
+
export function hasJSDoc(node) {
|
|
316
|
+
const jsDocComments = getJSDocComments(node);
|
|
317
|
+
return jsDocComments.length > 0;
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Extract all JSDoc tags from a node
|
|
321
|
+
* @param node The AST node
|
|
322
|
+
* @returns Map of tag names to their values
|
|
323
|
+
*/
|
|
324
|
+
export function extractAllJSDocTags(node) {
|
|
325
|
+
const jsDocInfo = extractJSDoc(node, node.getSourceFile());
|
|
326
|
+
const allTags = { ...jsDocInfo.tags };
|
|
327
|
+
// Add structured tags to the result
|
|
328
|
+
if (jsDocInfo.params && jsDocInfo.params.length > 0) {
|
|
329
|
+
allTags.param = jsDocInfo.params.map(p => `${p.name}${p.type ? ` {${p.type}}` : ''}${p.description ? ` - ${p.description}` : ''}`);
|
|
330
|
+
}
|
|
331
|
+
if (jsDocInfo.returns) {
|
|
332
|
+
allTags.returns = [
|
|
333
|
+
`${jsDocInfo.returns.type || ''}${jsDocInfo.returns.description ? ` - ${jsDocInfo.returns.description}` : ''}`.trim()
|
|
334
|
+
];
|
|
335
|
+
}
|
|
336
|
+
if (jsDocInfo.throws && jsDocInfo.throws.length > 0) {
|
|
337
|
+
allTags.throws = jsDocInfo.throws.map(t => `${t.type || ''}${t.description ? ` - ${t.description}` : ''}`.trim());
|
|
338
|
+
}
|
|
339
|
+
if (jsDocInfo.examples && jsDocInfo.examples.length > 0) {
|
|
340
|
+
allTags.example = jsDocInfo.examples;
|
|
341
|
+
}
|
|
342
|
+
return allTags;
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Create a searchable text representation of JSDoc
|
|
346
|
+
* @param jsDoc JSDoc information
|
|
347
|
+
* @returns Searchable text string
|
|
348
|
+
*/
|
|
349
|
+
export function createSearchableJSDocText(jsDoc) {
|
|
350
|
+
if (!jsDoc)
|
|
351
|
+
return '';
|
|
352
|
+
const parts = [];
|
|
353
|
+
if (jsDoc.description) {
|
|
354
|
+
parts.push(jsDoc.description);
|
|
355
|
+
}
|
|
356
|
+
if (jsDoc.examples) {
|
|
357
|
+
parts.push(...jsDoc.examples);
|
|
358
|
+
}
|
|
359
|
+
if (jsDoc.tags) {
|
|
360
|
+
for (const [tagName, values] of Object.entries(jsDoc.tags)) {
|
|
361
|
+
parts.push(`@${tagName}`, ...values);
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
return parts.join(' ').toLowerCase();
|
|
365
|
+
}
|
|
366
|
+
//# sourceMappingURL=jsDocParser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"jsDocParser.js","sourceRoot":"","sources":["../../src/utils/jsDocParser.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "code-auditor-mcp",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "TypeScript/JavaScript code quality auditor with MCP server - Analyze code for SOLID principles, DRY violations, security patterns, and more",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -9,14 +9,6 @@
|
|
|
9
9
|
"code-audit": "./dist/cli.js",
|
|
10
10
|
"code-auditor-mcp": "./dist/mcp-standalone.js"
|
|
11
11
|
},
|
|
12
|
-
"scripts": {
|
|
13
|
-
"build": "tsc",
|
|
14
|
-
"watch": "tsc --watch",
|
|
15
|
-
"dev": "tsx src/cli.ts",
|
|
16
|
-
"audit": "node dist/cli.js",
|
|
17
|
-
"prepublishOnly": "npm run build",
|
|
18
|
-
"test": "echo \"No tests yet\" && exit 0"
|
|
19
|
-
},
|
|
20
12
|
"keywords": [
|
|
21
13
|
"audit",
|
|
22
14
|
"code-quality",
|
|
@@ -37,12 +29,28 @@
|
|
|
37
29
|
},
|
|
38
30
|
"dependencies": {
|
|
39
31
|
"@modelcontextprotocol/sdk": "^1.17.1",
|
|
32
|
+
"ajv": "^8.12.0",
|
|
40
33
|
"chalk": "^5.3.0",
|
|
34
|
+
"chokidar": "^3.5.3",
|
|
35
|
+
"commander": "^12.0.0",
|
|
36
|
+
"cors": "^2.8.5",
|
|
37
|
+
"express": "^4.18.2",
|
|
38
|
+
"express-rate-limit": "^7.1.5",
|
|
39
|
+
"flexsearch": "^0.8.212",
|
|
40
|
+
"inquirer": "^9.2.15",
|
|
41
|
+
"lokijs": "^1.5.12",
|
|
42
|
+
"pino": "^8.16.2",
|
|
43
|
+
"pino-pretty": "^10.2.3",
|
|
41
44
|
"typescript": "^5.0.0"
|
|
42
45
|
},
|
|
43
46
|
"devDependencies": {
|
|
47
|
+
"@types/cors": "^2.8.17",
|
|
48
|
+
"@types/express": "^4.17.21",
|
|
49
|
+
"@types/inquirer": "^9.0.7",
|
|
50
|
+
"@types/lokijs": "^1.5.14",
|
|
44
51
|
"@types/node": "^20.0.0",
|
|
45
|
-
"tsx": "^4.0.0"
|
|
52
|
+
"tsx": "^4.0.0",
|
|
53
|
+
"vitest": "^1.0.0"
|
|
46
54
|
},
|
|
47
55
|
"files": [
|
|
48
56
|
"dist/**/*",
|
|
@@ -58,5 +66,17 @@
|
|
|
58
66
|
"bugs": {
|
|
59
67
|
"url": "https://github.com/code-auditor/code-auditor/issues"
|
|
60
68
|
},
|
|
61
|
-
"homepage": "https://github.com/code-auditor/code-auditor#readme"
|
|
69
|
+
"homepage": "https://github.com/code-auditor/code-auditor#readme",
|
|
70
|
+
"scripts": {
|
|
71
|
+
"build": "tsc",
|
|
72
|
+
"watch": "tsc --watch",
|
|
73
|
+
"dev": "tsx src/cli.ts",
|
|
74
|
+
"dev:server": "tsx --watch src/cli.ts start --rest-api",
|
|
75
|
+
"audit": "node dist/cli.js",
|
|
76
|
+
"start": "node dist/mcp-standalone.js",
|
|
77
|
+
"start:rest": "node dist/cli.js start --rest-api",
|
|
78
|
+
"generate": "node dist/cli.js generate-config",
|
|
79
|
+
"test": "vitest",
|
|
80
|
+
"test:watch": "vitest watch"
|
|
81
|
+
}
|
|
62
82
|
}
|