@vyuhlabs/dxkit 1.2.1 → 1.4.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.
@@ -39,16 +39,49 @@ exports.renderArchitectureRef = renderArchitectureRef;
39
39
  const fs = __importStar(require("fs"));
40
40
  const path = __importStar(require("path"));
41
41
  const IGNORE_DIRS = new Set([
42
- 'node_modules', 'vendor', '.venv', 'venv', 'target', 'bin', 'obj',
43
- '.git', '.next', '__pycache__', 'dist', 'build', '.tox', '.eggs',
44
- 'htmlcov', 'coverage', '.mypy_cache', '.pytest_cache', '.ruff_cache',
42
+ 'node_modules',
43
+ 'vendor',
44
+ '.venv',
45
+ 'venv',
46
+ 'target',
47
+ 'bin',
48
+ 'obj',
49
+ '.git',
50
+ '.next',
51
+ '__pycache__',
52
+ 'dist',
53
+ 'build',
54
+ '.tox',
55
+ '.eggs',
56
+ 'htmlcov',
57
+ 'coverage',
58
+ '.mypy_cache',
59
+ '.pytest_cache',
60
+ '.ruff_cache',
45
61
  ]);
46
62
  const BINARY_EXTENSIONS = new Set([
47
- '.png', '.jpg', '.jpeg', '.gif', '.ico', '.webp', '.svg',
48
- '.woff', '.woff2', '.ttf', '.eot',
49
- '.pdf', '.zip', '.tar', '.gz', '.br',
50
- '.exe', '.dll', '.so', '.dylib',
51
- '.lock', '.sum',
63
+ '.png',
64
+ '.jpg',
65
+ '.jpeg',
66
+ '.gif',
67
+ '.ico',
68
+ '.webp',
69
+ '.svg',
70
+ '.woff',
71
+ '.woff2',
72
+ '.ttf',
73
+ '.eot',
74
+ '.pdf',
75
+ '.zip',
76
+ '.tar',
77
+ '.gz',
78
+ '.br',
79
+ '.exe',
80
+ '.dll',
81
+ '.so',
82
+ '.dylib',
83
+ '.lock',
84
+ '.sum',
52
85
  ]);
53
86
  const MAX_FILE_SIZE = 100 * 1024; // 100KB
54
87
  // --- File Walking ---
@@ -83,7 +116,9 @@ function walkFiles(cwd, callback, maxDepth = 5) {
83
116
  const content = fs.readFileSync(full, 'utf-8');
84
117
  callback(rel, content);
85
118
  }
86
- catch { /* skip unreadable */ }
119
+ catch {
120
+ /* skip unreadable */
121
+ }
87
122
  }
88
123
  }
89
124
  }
@@ -114,12 +149,18 @@ function findEntryPoints(cwd) {
114
149
  seen.add(rel);
115
150
  }
116
151
  // Python __main__ pattern
117
- if (basename.endsWith('.py') && content.includes("__name__") && content.includes("__main__") && !seen.has(rel)) {
152
+ if (basename.endsWith('.py') &&
153
+ content.includes('__name__') &&
154
+ content.includes('__main__') &&
155
+ !seen.has(rel)) {
118
156
  results.push({ file: rel, type: 'Python __main__ entry' });
119
157
  seen.add(rel);
120
158
  }
121
159
  // Go func main pattern (for non-main.go files)
122
- if (basename.endsWith('.go') && /^func\s+main\s*\(/m.test(content) && basename !== 'main.go' && !seen.has(rel)) {
160
+ if (basename.endsWith('.go') &&
161
+ /^func\s+main\s*\(/m.test(content) &&
162
+ basename !== 'main.go' &&
163
+ !seen.has(rel)) {
123
164
  results.push({ file: rel, type: 'Go main function' });
124
165
  seen.add(rel);
125
166
  }
@@ -133,39 +174,82 @@ function findEntryPoints(cwd) {
133
174
  results.push({ file: pkg.main, type: 'package.json main' });
134
175
  }
135
176
  }
136
- catch { /* ignore */ }
177
+ catch {
178
+ /* ignore */
179
+ }
137
180
  }
138
181
  return results;
139
182
  }
140
183
  // --- API Routes ---
141
184
  const ROUTE_PATTERNS = [
142
185
  // Python FastAPI/Flask decorators
143
- { ext: /\.py$/, regex: /@(?:app|router)\.(get|post|put|delete|patch)\s*\(\s*['"]([^'"]+)/gi, methodGroup: 1, pathGroup: 2 },
186
+ {
187
+ ext: /\.py$/,
188
+ regex: /@(?:app|router)\.(get|post|put|delete|patch)\s*\(\s*['"]([^'"]+)/gi,
189
+ methodGroup: 1,
190
+ pathGroup: 2,
191
+ },
144
192
  // Python Flask @app.route
145
- { ext: /\.py$/, regex: /@(?:app|blueprint)\.route\s*\(\s*['"]([^'"]+)['"]/gi, methodGroup: -1, pathGroup: 1 },
193
+ {
194
+ ext: /\.py$/,
195
+ regex: /@(?:app|blueprint)\.route\s*\(\s*['"]([^'"]+)['"]/gi,
196
+ methodGroup: -1,
197
+ pathGroup: 1,
198
+ },
146
199
  // Express/Node — only match when path starts with /
147
- { ext: /\.[tj]sx?$/, regex: /(?:app|router|this\.app)\.(get|post|put|delete|patch|all)\s*\(\s*['"](\/.+?)['"]/gi, methodGroup: 1, pathGroup: 2 },
200
+ {
201
+ ext: /\.[tj]sx?$/,
202
+ regex: /(?:app|router|this\.app)\.(get|post|put|delete|patch|all)\s*\(\s*['"](\/.+?)['"]/gi,
203
+ methodGroup: 1,
204
+ pathGroup: 2,
205
+ },
148
206
  // LoopBack decorators — @get('/path'), @post('/path'), etc.
149
- { ext: /\.[tj]sx?$/, regex: /@(get|post|put|del|patch)\s*\(\s*['"]([^'"]+)/gi, methodGroup: 1, pathGroup: 2 },
207
+ {
208
+ ext: /\.[tj]sx?$/,
209
+ regex: /@(get|post|put|del|patch)\s*\(\s*['"]([^'"]+)/gi,
210
+ methodGroup: 1,
211
+ pathGroup: 2,
212
+ },
150
213
  // Go standard library and popular routers
151
214
  { ext: /\.go$/, regex: /(?:HandleFunc|Handle)\s*\(\s*"([^"]+)"/g, methodGroup: -1, pathGroup: 1 },
152
215
  // Go Gin/Echo/Fiber
153
- { ext: /\.go$/, regex: /\.(GET|POST|PUT|DELETE|PATCH)\s*\(\s*"([^"]+)"/gi, methodGroup: 1, pathGroup: 2 },
216
+ {
217
+ ext: /\.go$/,
218
+ regex: /\.(GET|POST|PUT|DELETE|PATCH)\s*\(\s*"([^"]+)"/gi,
219
+ methodGroup: 1,
220
+ pathGroup: 2,
221
+ },
154
222
  // C# attributes
155
- { ext: /\.cs$/, regex: /\[Http(Get|Post|Put|Delete|Patch)(?:\s*\("([^"]*)"\))?\]/g, methodGroup: 1, pathGroup: 2 },
223
+ {
224
+ ext: /\.cs$/,
225
+ regex: /\[Http(Get|Post|Put|Delete|Patch)(?:\s*\("([^"]*)"\))?\]/g,
226
+ methodGroup: 1,
227
+ pathGroup: 2,
228
+ },
156
229
  // C# minimal API
157
- { ext: /\.cs$/, regex: /app\.Map(Get|Post|Put|Delete|Patch)\s*\(\s*"([^"]+)"/gi, methodGroup: 1, pathGroup: 2 },
230
+ {
231
+ ext: /\.cs$/,
232
+ regex: /app\.Map(Get|Post|Put|Delete|Patch)\s*\(\s*"([^"]+)"/gi,
233
+ methodGroup: 1,
234
+ pathGroup: 2,
235
+ },
158
236
  ];
159
237
  function isSourceFile(rel) {
160
238
  // Exclude test files, docs, and generated files from API route detection
161
239
  const lower = rel.toLowerCase();
162
240
  if (lower.endsWith('_test.go') || lower.includes('test_') || lower.includes('/tests/'))
163
241
  return false;
164
- if (lower.endsWith('.test.ts') || lower.endsWith('.test.js') || lower.endsWith('.spec.ts') || lower.endsWith('.spec.js'))
242
+ if (lower.endsWith('.test.ts') ||
243
+ lower.endsWith('.test.js') ||
244
+ lower.endsWith('.spec.ts') ||
245
+ lower.endsWith('.spec.js'))
165
246
  return false;
166
247
  if (lower.includes('/docs/') || lower.includes('/documentation/'))
167
248
  return false;
168
- if (lower.endsWith('.md') || lower.endsWith('.mdx') || lower.endsWith('.txt') || lower.endsWith('.rst'))
249
+ if (lower.endsWith('.md') ||
250
+ lower.endsWith('.mdx') ||
251
+ lower.endsWith('.txt') ||
252
+ lower.endsWith('.rst'))
169
253
  return false;
170
254
  if (lower.includes('example') || lower.includes('sample') || lower.includes('fixture'))
171
255
  return false;
@@ -189,11 +273,12 @@ function findApiRoutes(cwd) {
189
273
  }
190
274
  // Next.js API routes (file-based)
191
275
  if (rel.includes('app/api/') || rel.includes('pages/api/')) {
192
- const routePath = '/' + rel
193
- .replace(/^.*(?:app|pages)\//, '')
194
- .replace(/\/route\.[tj]sx?$/, '')
195
- .replace(/\/index\.[tj]sx?$/, '')
196
- .replace(/\.[tj]sx?$/, '');
276
+ const routePath = '/' +
277
+ rel
278
+ .replace(/^.*(?:app|pages)\//, '')
279
+ .replace(/\/route\.[tj]sx?$/, '')
280
+ .replace(/\/index\.[tj]sx?$/, '')
281
+ .replace(/\.[tj]sx?$/, '');
197
282
  results.push({ method: 'ANY', path: routePath, file: rel });
198
283
  }
199
284
  });
@@ -201,40 +286,40 @@ function findApiRoutes(cwd) {
201
286
  }
202
287
  // --- Directory Classification ---
203
288
  const DIR_PURPOSES = {
204
- 'src': 'Source code',
205
- 'lib': 'Library code',
206
- 'pkg': 'Packages',
207
- 'internal': 'Internal packages (Go)',
208
- 'cmd': 'CLI commands (Go)',
209
- 'tests': 'Test files',
210
- 'test': 'Test files',
211
- '__tests__': 'Test files (Jest)',
212
- 'spec': 'Test specifications',
213
- 'docs': 'Documentation',
214
- 'documentation': 'Documentation',
215
- 'scripts': 'Utility scripts',
216
- 'tools': 'Development tools',
217
- 'config': 'Configuration',
218
- 'configs': 'Configuration',
219
- 'migrations': 'Database migrations',
220
- 'db': 'Database',
221
- 'api': 'API layer',
222
- 'routes': 'Route handlers',
223
- 'controllers': 'Controllers',
224
- 'handlers': 'Request handlers',
225
- 'models': 'Data models',
226
- 'services': 'Service layer',
227
- 'middleware': 'Middleware',
228
- 'components': 'UI components',
229
- 'pages': 'Page components',
230
- 'app': 'Application (Next.js App Router)',
231
- 'public': 'Static assets',
232
- 'static': 'Static files',
233
- 'assets': 'Assets',
234
- 'frontend': 'Frontend application',
235
- 'backend': 'Backend application',
236
- 'infra': 'Infrastructure code',
237
- 'deploy': 'Deployment configuration',
289
+ src: 'Source code',
290
+ lib: 'Library code',
291
+ pkg: 'Packages',
292
+ internal: 'Internal packages (Go)',
293
+ cmd: 'CLI commands (Go)',
294
+ tests: 'Test files',
295
+ test: 'Test files',
296
+ __tests__: 'Test files (Jest)',
297
+ spec: 'Test specifications',
298
+ docs: 'Documentation',
299
+ documentation: 'Documentation',
300
+ scripts: 'Utility scripts',
301
+ tools: 'Development tools',
302
+ config: 'Configuration',
303
+ configs: 'Configuration',
304
+ migrations: 'Database migrations',
305
+ db: 'Database',
306
+ api: 'API layer',
307
+ routes: 'Route handlers',
308
+ controllers: 'Controllers',
309
+ handlers: 'Request handlers',
310
+ models: 'Data models',
311
+ services: 'Service layer',
312
+ middleware: 'Middleware',
313
+ components: 'UI components',
314
+ pages: 'Page components',
315
+ app: 'Application (Next.js App Router)',
316
+ public: 'Static assets',
317
+ static: 'Static files',
318
+ assets: 'Assets',
319
+ frontend: 'Frontend application',
320
+ backend: 'Backend application',
321
+ infra: 'Infrastructure code',
322
+ deploy: 'Deployment configuration',
238
323
  '.github': 'GitHub workflows and config',
239
324
  };
240
325
  function classifyDirectories(cwd) {
@@ -267,18 +352,21 @@ function classifyDirectories(cwd) {
267
352
  }
268
353
  }
269
354
  }
270
- catch { /* skip */ }
355
+ catch {
356
+ /* skip */
357
+ }
271
358
  }
272
359
  }
273
- catch { /* skip */ }
360
+ catch {
361
+ /* skip */
362
+ }
274
363
  return results;
275
364
  }
276
365
  // --- Test Patterns ---
277
366
  function detectTestPatterns(cwd) {
278
367
  const results = [];
279
368
  // pytest
280
- if (fs.existsSync(path.join(cwd, 'pytest.ini')) ||
281
- fs.existsSync(path.join(cwd, 'conftest.py'))) {
369
+ if (fs.existsSync(path.join(cwd, 'pytest.ini')) || fs.existsSync(path.join(cwd, 'conftest.py'))) {
282
370
  results.push({ framework: 'pytest', location: 'tests/', pattern: 'test_*.py' });
283
371
  }
284
372
  else {
@@ -288,7 +376,9 @@ function detectTestPatterns(cwd) {
288
376
  results.push({ framework: 'pytest', location: 'tests/', pattern: 'test_*.py' });
289
377
  }
290
378
  }
291
- catch { /* no pyproject */ }
379
+ catch {
380
+ /* no pyproject */
381
+ }
292
382
  }
293
383
  // go test
294
384
  let hasGoTests = false;
@@ -302,29 +392,50 @@ function detectTestPatterns(cwd) {
302
392
  // Jest
303
393
  if (fs.existsSync(path.join(cwd, 'jest.config.js')) ||
304
394
  fs.existsSync(path.join(cwd, 'jest.config.ts'))) {
305
- results.push({ framework: 'jest', location: '__tests__/ or *.test.ts', pattern: '*.test.{ts,tsx,js,jsx}' });
395
+ results.push({
396
+ framework: 'jest',
397
+ location: '__tests__/ or *.test.ts',
398
+ pattern: '*.test.{ts,tsx,js,jsx}',
399
+ });
306
400
  }
307
401
  else {
308
402
  try {
309
403
  const pkg = JSON.parse(fs.readFileSync(path.join(cwd, 'package.json'), 'utf-8'));
310
404
  if (pkg.jest || pkg.devDependencies?.jest) {
311
- results.push({ framework: 'jest', location: '__tests__/ or *.test.ts', pattern: '*.test.{ts,tsx,js,jsx}' });
405
+ results.push({
406
+ framework: 'jest',
407
+ location: '__tests__/ or *.test.ts',
408
+ pattern: '*.test.{ts,tsx,js,jsx}',
409
+ });
312
410
  }
313
411
  }
314
- catch { /* no package.json */ }
412
+ catch {
413
+ /* no package.json */
414
+ }
315
415
  }
316
416
  // xUnit / NUnit (C#)
317
- let hasCsharpTests = false;
318
417
  walkFiles(cwd, (rel, content) => {
319
- if (rel.endsWith('.csproj') && (content.includes('xunit') || content.includes('nunit') || content.includes('MSTest'))) {
320
- hasCsharpTests = true;
321
- const framework = content.includes('xunit') ? 'xUnit' : content.includes('nunit') ? 'NUnit' : 'MSTest';
322
- results.push({ framework, location: '*.Tests projects', pattern: '*.cs with [Fact]/[Test]' });
418
+ if (rel.endsWith('.csproj') &&
419
+ (content.includes('xunit') || content.includes('nunit') || content.includes('MSTest'))) {
420
+ const framework = content.includes('xunit')
421
+ ? 'xUnit'
422
+ : content.includes('nunit')
423
+ ? 'NUnit'
424
+ : 'MSTest';
425
+ results.push({
426
+ framework,
427
+ location: '*.Tests projects',
428
+ pattern: '*.cs with [Fact]/[Test]',
429
+ });
323
430
  }
324
431
  }, 2);
325
432
  // cargo test
326
433
  if (fs.existsSync(path.join(cwd, 'Cargo.toml'))) {
327
- results.push({ framework: 'cargo test', location: 'src/ (#[cfg(test)]) + tests/', pattern: '#[test] functions' });
434
+ results.push({
435
+ framework: 'cargo test',
436
+ location: 'src/ (#[cfg(test)]) + tests/',
437
+ pattern: '#[test] functions',
438
+ });
328
439
  }
329
440
  return results;
330
441
  }
@@ -334,10 +445,10 @@ const CONFIG_FILES = {
334
445
  'pyproject.toml': 'Python project config',
335
446
  'go.mod': 'Go module definition',
336
447
  'Cargo.toml': 'Rust package manifest',
337
- 'Makefile': 'Build automation',
448
+ Makefile: 'Build automation',
338
449
  'docker-compose.yml': 'Docker services',
339
450
  'docker-compose.yaml': 'Docker services',
340
- 'Dockerfile': 'Container build',
451
+ Dockerfile: 'Container build',
341
452
  '.env.example': 'Environment template',
342
453
  'tsconfig.json': 'TypeScript config',
343
454
  '.eslintrc.js': 'ESLint config',
@@ -369,24 +480,39 @@ function detectConventions(cwd) {
369
480
  fileNames.push(path.basename(rel, path.extname(rel)));
370
481
  }, 2);
371
482
  // Naming convention
372
- const snakeCount = fileNames.filter(n => n.includes('_') && !n.includes('-')).length;
373
- const kebabCount = fileNames.filter(n => n.includes('-') && !n.includes('_')).length;
374
- const camelCount = fileNames.filter(n => /^[a-z][a-zA-Z]+$/.test(n) && !n.includes('_') && !n.includes('-')).length;
375
- const pascalCount = fileNames.filter(n => /^[A-Z][a-zA-Z]+$/.test(n)).length;
483
+ const snakeCount = fileNames.filter((n) => n.includes('_') && !n.includes('-')).length;
484
+ const kebabCount = fileNames.filter((n) => n.includes('-') && !n.includes('_')).length;
485
+ const camelCount = fileNames.filter((n) => /^[a-z][a-zA-Z]+$/.test(n) && !n.includes('_') && !n.includes('-')).length;
486
+ const pascalCount = fileNames.filter((n) => /^[A-Z][a-zA-Z]+$/.test(n)).length;
376
487
  const max = Math.max(snakeCount, kebabCount, camelCount, pascalCount);
377
488
  if (max > 5) {
378
489
  if (snakeCount === max)
379
- conventions.push({ pattern: 'snake_case', description: 'File names use snake_case convention' });
490
+ conventions.push({
491
+ pattern: 'snake_case',
492
+ description: 'File names use snake_case convention',
493
+ });
380
494
  else if (kebabCount === max)
381
- conventions.push({ pattern: 'kebab-case', description: 'File names use kebab-case convention' });
495
+ conventions.push({
496
+ pattern: 'kebab-case',
497
+ description: 'File names use kebab-case convention',
498
+ });
382
499
  else if (pascalCount === max)
383
- conventions.push({ pattern: 'PascalCase', description: 'File names use PascalCase convention' });
500
+ conventions.push({
501
+ pattern: 'PascalCase',
502
+ description: 'File names use PascalCase convention',
503
+ });
384
504
  else if (camelCount === max)
385
- conventions.push({ pattern: 'camelCase', description: 'File names use camelCase convention' });
505
+ conventions.push({
506
+ pattern: 'camelCase',
507
+ description: 'File names use camelCase convention',
508
+ });
386
509
  }
387
510
  // Test location
388
511
  if (fs.existsSync(path.join(cwd, 'tests')) || fs.existsSync(path.join(cwd, 'test'))) {
389
- conventions.push({ pattern: 'Separate test directory', description: 'Tests in dedicated tests/ directory' });
512
+ conventions.push({
513
+ pattern: 'Separate test directory',
514
+ description: 'Tests in dedicated tests/ directory',
515
+ });
390
516
  }
391
517
  return conventions;
392
518
  }
@@ -399,12 +525,22 @@ function scanCodebase(cwd) {
399
525
  let sourceFileCount = 0;
400
526
  const languageBreakdown = {};
401
527
  const EXT_TO_LANG = {
402
- '.ts': 'TypeScript', '.tsx': 'TypeScript', '.js': 'JavaScript', '.jsx': 'JavaScript',
403
- '.py': 'Python', '.go': 'Go', '.rs': 'Rust', '.cs': 'C#', '.java': 'Java',
528
+ '.ts': 'TypeScript',
529
+ '.tsx': 'TypeScript',
530
+ '.js': 'JavaScript',
531
+ '.jsx': 'JavaScript',
532
+ '.py': 'Python',
533
+ '.go': 'Go',
534
+ '.rs': 'Rust',
535
+ '.cs': 'C#',
536
+ '.java': 'Java',
404
537
  };
405
538
  walkFiles(cwd, (rel) => {
406
539
  fileCount++;
407
- if (TEST_FILE_PATTERNS.test(rel) || rel.includes('__tests__/') || rel.includes('/tests/') || rel.includes('/test/')) {
540
+ if (TEST_FILE_PATTERNS.test(rel) ||
541
+ rel.includes('__tests__/') ||
542
+ rel.includes('/tests/') ||
543
+ rel.includes('/test/')) {
408
544
  testFileCount++;
409
545
  }
410
546
  else if (SOURCE_FILE_EXTENSIONS.test(rel)) {
@@ -481,7 +617,8 @@ function renderCodebaseSkill(analysis) {
481
617
  if (analysis.testFileCount === 0) {
482
618
  lines.push('- **No tests found.** This project needs test infrastructure.');
483
619
  }
484
- else if (analysis.sourceFileCount > 50 && analysis.testFileCount < analysis.sourceFileCount * 0.1) {
620
+ else if (analysis.sourceFileCount > 50 &&
621
+ analysis.testFileCount < analysis.sourceFileCount * 0.1) {
485
622
  lines.push('- **Minimal test presence.** Most code paths are likely untested.');
486
623
  }
487
624
  if (analysis.testPatterns.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"codebase-scanner.js","sourceRoot":"","sources":["../src/codebase-scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codebase-scanner.js","sourceRoot":"","sources":["../src/codebase-scanner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAsRxC,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CAsCjD"}
1
+ {"version":3,"file":"detect.d.ts","sourceRoot":"","sources":["../src/detect.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAuUxC,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,aAAa,CA6CjD"}