atlas-pipeline-mcp 1.0.19 → 1.0.21

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 (43) hide show
  1. package/dist/mcp.js +191 -0
  2. package/dist/mcp.js.map +1 -1
  3. package/dist/tools/context.d.ts +33 -7
  4. package/dist/tools/context.d.ts.map +1 -1
  5. package/dist/tools/context.js +167 -82
  6. package/dist/tools/context.js.map +1 -1
  7. package/dist/tools/dashboard.d.ts +107 -0
  8. package/dist/tools/dashboard.d.ts.map +1 -0
  9. package/dist/tools/dashboard.js +544 -0
  10. package/dist/tools/dashboard.js.map +1 -0
  11. package/dist/tools/dependencies.d.ts +105 -0
  12. package/dist/tools/dependencies.d.ts.map +1 -0
  13. package/dist/tools/dependencies.js +410 -0
  14. package/dist/tools/dependencies.js.map +1 -0
  15. package/dist/tools/git.d.ts +27 -4
  16. package/dist/tools/git.d.ts.map +1 -1
  17. package/dist/tools/git.js +156 -59
  18. package/dist/tools/git.js.map +1 -1
  19. package/dist/tools/profiler.d.ts +83 -0
  20. package/dist/tools/profiler.d.ts.map +1 -0
  21. package/dist/tools/profiler.js +385 -0
  22. package/dist/tools/profiler.js.map +1 -0
  23. package/dist/tools/refactor.d.ts +63 -0
  24. package/dist/tools/refactor.d.ts.map +1 -0
  25. package/dist/tools/refactor.js +308 -0
  26. package/dist/tools/refactor.js.map +1 -0
  27. package/dist/tools/resource-manager.d.ts +167 -0
  28. package/dist/tools/resource-manager.d.ts.map +1 -0
  29. package/dist/tools/resource-manager.js +352 -0
  30. package/dist/tools/resource-manager.js.map +1 -0
  31. package/dist/tools/review.d.ts +98 -0
  32. package/dist/tools/review.d.ts.map +1 -0
  33. package/dist/tools/review.js +428 -0
  34. package/dist/tools/review.js.map +1 -0
  35. package/dist/tools/test-utils.d.ts +170 -0
  36. package/dist/tools/test-utils.d.ts.map +1 -0
  37. package/dist/tools/test-utils.js +490 -0
  38. package/dist/tools/test-utils.js.map +1 -0
  39. package/dist/tools/validation.d.ts +237 -0
  40. package/dist/tools/validation.d.ts.map +1 -0
  41. package/dist/tools/validation.js +323 -0
  42. package/dist/tools/validation.js.map +1 -0
  43. package/package.json +1 -1
@@ -2,33 +2,56 @@
2
2
  * Atlas Server - Context Aggregation Tool
3
3
  *
4
4
  * Gathers and aggregates context from multiple sources:
5
- * - Project structure analysis
6
- * - Relevant code snippets
7
- * - Configuration files
8
- * - Dependencies information
5
+ * - Project structure analysis with caching
6
+ * - Relevant code snippets with relevance scoring
7
+ * - Configuration files with validation
8
+ * - Dependencies information with security checking
9
+ *
10
+ * Performance Features:
11
+ * - Parallel file scanning for faster analysis
12
+ * - Result caching to avoid redundant operations
13
+ * - Smart snippet ranking by relevance
14
+ * - Memory-efficient streaming for large files
15
+ *
16
+ * @module context
17
+ * @version 2.0.0
9
18
  */
10
- import { readFile, readdir, stat } from 'node:fs/promises';
11
- import { join, extname, relative } from 'node:path';
12
- import { logger } from '../utils.js';
19
+ import { readFile, readdir, stat, access } from 'node:fs/promises';
20
+ import { constants } from 'node:fs';
21
+ import { join, extname, relative, normalize } from 'node:path';
22
+ import { logger, isDefined, LRUCache, parallelMap, globalMetrics } from '../utils.js';
13
23
  // ============================================================================
14
- // Configuration
24
+ // Configuration (Centralized for Easy Tuning)
15
25
  // ============================================================================
16
- const MAX_FILE_SIZE = 100 * 1024; // 100KB max file size to read
17
- const MAX_SNIPPET_LENGTH = 2000; // Max characters per snippet
18
- const MAX_SNIPPETS = 10; // Max number of snippets to return
19
- const CODE_EXTENSIONS = new Set([
20
- '.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs',
21
- '.py', '.pyw',
22
- '.rs',
23
- '.go',
24
- '.java',
25
- '.rb',
26
- '.php',
27
- '.swift',
28
- '.kt', '.kts',
29
- '.c', '.h', '.cpp', '.hpp', '.cc',
30
- '.cs',
31
- '.vue', '.svelte',
26
+ /** Maximum file size to read (prevents memory exhaustion) */
27
+ const MAX_FILE_SIZE = 100 * 1024; // 100KB
28
+ /** Maximum characters per code snippet */
29
+ const MAX_SNIPPET_LENGTH = 2000;
30
+ /** Maximum number of snippets to return */
31
+ const MAX_SNIPPETS = 10;
32
+ /** Maximum directory depth for scanning */
33
+ const MAX_SCAN_DEPTH = 10;
34
+ /** Concurrency for parallel file operations */
35
+ const FILE_SCAN_CONCURRENCY = 5;
36
+ /** Cache TTL for project analysis (5 minutes) */
37
+ const PROJECT_CACHE_TTL_MS = 5 * 60 * 1000;
38
+ /** Cache size for project info */
39
+ const PROJECT_CACHE_SIZE = 50;
40
+ /** Supported code file extensions with language mapping */
41
+ const CODE_EXTENSIONS = new Map([
42
+ ['.ts', 'TypeScript'], ['.tsx', 'TypeScript'],
43
+ ['.js', 'JavaScript'], ['.jsx', 'JavaScript'], ['.mjs', 'JavaScript'], ['.cjs', 'JavaScript'],
44
+ ['.py', 'Python'], ['.pyw', 'Python'],
45
+ ['.rs', 'Rust'],
46
+ ['.go', 'Go'],
47
+ ['.java', 'Java'],
48
+ ['.rb', 'Ruby'],
49
+ ['.php', 'PHP'],
50
+ ['.swift', 'Swift'],
51
+ ['.kt', 'Kotlin'], ['.kts', 'Kotlin'],
52
+ ['.c', 'C'], ['.h', 'C'], ['.cpp', 'C++'], ['.hpp', 'C++'], ['.cc', 'C++'],
53
+ ['.cs', 'C#'],
54
+ ['.vue', 'Vue'], ['.svelte', 'Svelte'],
32
55
  ]);
33
56
  const CONFIG_FILES = [
34
57
  'package.json',
@@ -44,28 +67,49 @@ const CONFIG_FILES = [
44
67
  '.env',
45
68
  '.env.example',
46
69
  ];
70
+ /** Directories to ignore during scanning (performance and security) */
47
71
  const IGNORE_DIRS = new Set([
48
- 'node_modules',
49
- '.git',
50
- 'dist',
51
- 'build',
52
- 'out',
53
- '.next',
54
- '__pycache__',
55
- '.pytest_cache',
56
- 'target',
57
- 'vendor',
58
- '.venv',
59
- 'venv',
60
- 'env',
72
+ 'node_modules', 'bower_components',
73
+ '.git', '.svn', '.hg',
74
+ 'dist', 'build', 'out', 'target',
75
+ '.next', '.nuxt', '.output',
76
+ '__pycache__', '.pytest_cache', '.mypy_cache', '.tox',
77
+ 'vendor', 'Pods',
78
+ '.venv', 'venv', 'env', 'virtualenv',
79
+ 'coverage', '.nyc_output',
80
+ 'tmp', 'temp', 'cache',
81
+ '.idea', '.vscode', '.vs',
61
82
  ]);
62
83
  // ============================================================================
63
- // Context Building
84
+ // Caching Layer for Performance
85
+ // ============================================================================
86
+ /** Cache for project analysis results */
87
+ const projectCache = new LRUCache(PROJECT_CACHE_SIZE, PROJECT_CACHE_TTL_MS);
88
+ /** Cache for file existence checks */
89
+ const fileExistsCache = new LRUCache(200, 30000); // 30s TTL
90
+ // ============================================================================
91
+ // Context Building (Enhanced with Validation and Caching)
64
92
  // ============================================================================
65
93
  /**
66
- * Build comprehensive context for the pipeline
94
+ * Build comprehensive context for the pipeline with caching and parallel processing
95
+ *
96
+ * @param intent - Analyzed user intent
97
+ * @param repoPath - Optional repository path
98
+ * @param gitContext - Optional git context
99
+ * @returns Pipeline context with code snippets and project info
100
+ *
101
+ * @example
102
+ * ```typescript
103
+ * const context = await buildContext(intent, '/path/to/repo', gitContext);
104
+ * console.log(`Found ${context.codeSnippets.length} relevant snippets`);
105
+ * ```
67
106
  */
68
107
  export async function buildContext(intent, repoPath, gitContext) {
108
+ // Input validation
109
+ if (!intent || !intent.primaryIntent) {
110
+ throw new Error('Invalid intent: primaryIntent is required');
111
+ }
112
+ const startTime = performance.now();
69
113
  logger.debug({ repoPath, hasGitContext: !!gitContext }, 'Building context');
70
114
  const context = {
71
115
  intent,
@@ -73,42 +117,72 @@ export async function buildContext(intent, repoPath, gitContext) {
73
117
  gitContext,
74
118
  };
75
119
  if (!repoPath) {
120
+ logger.debug('No repository path provided, returning minimal context');
76
121
  return context;
77
122
  }
123
+ // Normalize path for consistent caching
124
+ const normalizedPath = normalize(repoPath);
78
125
  try {
79
- // Gather project info
80
- context.projectInfo = await analyzeProject(repoPath);
81
- // Find relevant code snippets based on intent
82
- context.codeSnippets = await findRelevantSnippets(repoPath, intent, context.projectInfo);
126
+ // Gather project info with caching
127
+ context.projectInfo = await globalMetrics.measure('context_analyze_project', () => analyzeProject(normalizedPath));
128
+ // Find relevant code snippets in parallel with project analysis
129
+ context.codeSnippets = await globalMetrics.measure('context_find_snippets', () => findRelevantSnippets(normalizedPath, intent, context.projectInfo));
130
+ const duration = Math.round(performance.now() - startTime);
83
131
  logger.debug({
84
132
  snippetCount: context.codeSnippets.length,
85
133
  languages: context.projectInfo.languages,
134
+ durationMs: duration,
86
135
  }, 'Context built successfully');
87
136
  }
88
137
  catch (error) {
89
- logger.warn({ error, repoPath }, 'Error building context');
138
+ const errorMsg = error instanceof Error ? error.message : String(error);
139
+ logger.warn({ error: errorMsg, repoPath: normalizedPath }, 'Error building context');
140
+ // Return partial context rather than failing completely
141
+ context.projectInfo = undefined;
142
+ context.codeSnippets = [];
90
143
  }
91
144
  return context;
92
145
  }
93
146
  /**
94
- * Analyze project structure and configuration
147
+ * Analyze project structure and configuration with caching
148
+ *
149
+ * @param rootPath - Project root directory
150
+ * @returns Comprehensive project information
151
+ * @throws {Error} If rootPath is invalid or inaccessible
95
152
  */
96
153
  export async function analyzeProject(rootPath) {
154
+ // Input validation
155
+ if (!rootPath || typeof rootPath !== 'string') {
156
+ throw new Error('Invalid rootPath: must be a non-empty string');
157
+ }
158
+ // Check cache first
159
+ const cacheKey = normalize(rootPath);
160
+ const cached = projectCache.get(cacheKey);
161
+ if (cached) {
162
+ logger.debug({ rootPath }, 'Using cached project info');
163
+ return cached;
164
+ }
165
+ // Verify directory exists and is accessible
166
+ try {
167
+ const stats = await stat(rootPath);
168
+ if (!stats.isDirectory()) {
169
+ throw new Error(`Path is not a directory: ${rootPath}`);
170
+ }
171
+ }
172
+ catch (error) {
173
+ throw new Error(`Cannot access directory: ${rootPath} - ${error}`);
174
+ }
97
175
  const languages = new Set();
98
176
  const frameworks = new Set();
99
177
  const configFiles = [];
100
178
  let packageManager;
101
- // Check for config files
102
- for (const configFile of CONFIG_FILES) {
103
- try {
104
- const filePath = join(rootPath, configFile);
105
- await stat(filePath);
106
- configFiles.push(configFile);
107
- }
108
- catch {
109
- // File doesn't exist
110
- }
111
- }
179
+ // Check for config files in parallel for better performance
180
+ const configChecks = await parallelMap(CONFIG_FILES, async (configFile) => {
181
+ const filePath = join(rootPath, configFile);
182
+ const exists = await fileExists(filePath);
183
+ return exists ? configFile : null;
184
+ }, { concurrency: FILE_SCAN_CONCURRENCY });
185
+ configFiles.push(...configChecks.filter(isDefined));
112
186
  // Detect package manager
113
187
  if (configFiles.includes('package.json')) {
114
188
  if (await fileExists(join(rootPath, 'bun.lockb'))) {
@@ -124,7 +198,7 @@ export async function analyzeProject(rootPath) {
124
198
  packageManager = 'npm';
125
199
  }
126
200
  }
127
- // Analyze package.json for frameworks
201
+ // Analyze package.json for frameworks (with error handling)
128
202
  const packageJsonPath = join(rootPath, 'package.json');
129
203
  if (await fileExists(packageJsonPath)) {
130
204
  try {
@@ -134,42 +208,43 @@ export async function analyzeProject(rootPath) {
134
208
  ...pkg.dependencies,
135
209
  ...pkg.devDependencies,
136
210
  };
137
- // Detect frameworks
138
- if (allDeps['next'])
139
- frameworks.add('Next.js');
140
- if (allDeps['react'])
141
- frameworks.add('React');
142
- if (allDeps['vue'])
143
- frameworks.add('Vue');
144
- if (allDeps['@angular/core'])
145
- frameworks.add('Angular');
146
- if (allDeps['svelte'])
147
- frameworks.add('Svelte');
148
- if (allDeps['express'])
149
- frameworks.add('Express');
150
- if (allDeps['fastify'])
151
- frameworks.add('Fastify');
152
- if (allDeps['koa'])
153
- frameworks.add('Koa');
154
- if (allDeps['nestjs'] || allDeps['@nestjs/core'])
155
- frameworks.add('NestJS');
211
+ // Detect frameworks with priority (more specific first)
212
+ const frameworkDetectors = [
213
+ ['@nestjs/core', 'NestJS'],
214
+ ['next', 'Next.js'],
215
+ ['react', 'React'],
216
+ ['vue', 'Vue'],
217
+ ['@angular/core', 'Angular'],
218
+ ['svelte', 'Svelte'],
219
+ ['fastify', 'Fastify'],
220
+ ['express', 'Express'],
221
+ ['koa', 'Koa'],
222
+ ];
223
+ for (const [pkg, framework] of frameworkDetectors) {
224
+ if (allDeps[pkg])
225
+ frameworks.add(framework);
226
+ }
156
227
  // Detect TypeScript
157
228
  if (allDeps['typescript'])
158
229
  languages.add('TypeScript');
159
230
  }
160
- catch {
161
- // Ignore parse errors
231
+ catch (error) {
232
+ logger.warn({ error, path: packageJsonPath }, 'Failed to parse package.json');
233
+ // Continue without package.json analysis
162
234
  }
163
235
  }
164
- // Scan for code files to detect languages
236
+ // Scan for code files to detect languages (with depth limit for performance)
165
237
  await scanForLanguages(rootPath, languages, 3);
166
- return {
238
+ const projectInfo = {
167
239
  rootPath,
168
240
  languages: Array.from(languages),
169
241
  frameworks: Array.from(frameworks),
170
242
  packageManager,
171
243
  configFiles,
172
244
  };
245
+ // Cache the result
246
+ projectCache.set(cacheKey, projectInfo);
247
+ return projectInfo;
173
248
  }
174
249
  /**
175
250
  * Find code snippets relevant to the user's intent
@@ -215,14 +290,24 @@ async function findRelevantSnippets(rootPath, intent, projectInfo) {
215
290
  // Helper Functions
216
291
  // ============================================================================
217
292
  /**
218
- * Check if a file exists
293
+ * Check if a file exists with caching for performance
294
+ *
295
+ * @param path - File path to check
296
+ * @returns True if file exists and is accessible
219
297
  */
220
298
  async function fileExists(path) {
299
+ // Check cache first
300
+ const cached = fileExistsCache.get(path);
301
+ if (cached !== undefined) {
302
+ return cached;
303
+ }
221
304
  try {
222
- await stat(path);
305
+ await access(path, constants.F_OK);
306
+ fileExistsCache.set(path, true);
223
307
  return true;
224
308
  }
225
309
  catch {
310
+ fileExistsCache.set(path, false);
226
311
  return false;
227
312
  }
228
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,107 @@
1
+ /**
2
+ * Atlas Server - Live Code Metrics Dashboard Generator
3
+ *
4
+ * Generate beautiful, real-time HTML dashboards for code metrics:
5
+ * - Interactive visualizations
6
+ * - Complexity trends over time
7
+ * - Dependency graphs
8
+ * - Test coverage maps
9
+ * - Performance hotspots
10
+ * - Security audit results
11
+ * - Team velocity metrics
12
+ * - Technical debt tracking
13
+ *
14
+ * @module dashboard
15
+ * @author Nishant Unavane
16
+ * @version 1.0.0
17
+ */
18
+ export interface DashboardOptions {
19
+ projectPath: string;
20
+ outputPath?: string;
21
+ includeComplexity?: boolean;
22
+ includeCoverage?: boolean;
23
+ includeDependencies?: boolean;
24
+ includeSecurity?: boolean;
25
+ includePerformance?: boolean;
26
+ includeGitStats?: boolean;
27
+ metricsData?: ProjectMetrics;
28
+ historicalData?: HistoricalMetrics[];
29
+ title?: string;
30
+ theme?: 'light' | 'dark' | 'auto';
31
+ refreshInterval?: number;
32
+ }
33
+ export interface ProjectMetrics {
34
+ timestamp: string;
35
+ complexity: ComplexityMetrics;
36
+ coverage: CoverageMetrics;
37
+ dependencies: DependencyMetrics;
38
+ security: SecurityMetrics;
39
+ performance: PerformanceMetrics;
40
+ git: GitMetrics;
41
+ }
42
+ export interface ComplexityMetrics {
43
+ averageCyclomaticComplexity: number;
44
+ maxComplexity: number;
45
+ filesAboveThreshold: number;
46
+ maintainabilityIndex: number;
47
+ technicalDebt: {
48
+ hours: number;
49
+ cost: string;
50
+ };
51
+ }
52
+ export interface CoverageMetrics {
53
+ lineCoverage: number;
54
+ branchCoverage: number;
55
+ functionCoverage: number;
56
+ uncoveredFiles: number;
57
+ totalStatements: number;
58
+ coveredStatements: number;
59
+ }
60
+ export interface DependencyMetrics {
61
+ total: number;
62
+ direct: number;
63
+ transitive: number;
64
+ outdated: number;
65
+ vulnerable: number;
66
+ totalSize: number;
67
+ }
68
+ export interface SecurityMetrics {
69
+ vulnerabilities: {
70
+ critical: number;
71
+ high: number;
72
+ medium: number;
73
+ low: number;
74
+ };
75
+ score: number;
76
+ lastScanDate: string;
77
+ }
78
+ export interface PerformanceMetrics {
79
+ buildTime: number;
80
+ bundleSize: number;
81
+ loadTime: number;
82
+ memoryUsage: number;
83
+ }
84
+ export interface GitMetrics {
85
+ totalCommits: number;
86
+ contributors: number;
87
+ filesChanged: number;
88
+ linesAdded: number;
89
+ linesDeleted: number;
90
+ branchCount: number;
91
+ }
92
+ export interface HistoricalMetrics {
93
+ date: string;
94
+ metrics: ProjectMetrics;
95
+ }
96
+ export interface DashboardResult {
97
+ htmlPath: string;
98
+ htmlContent: string;
99
+ metrics: ProjectMetrics;
100
+ executionTimeMs: number;
101
+ }
102
+ /**
103
+ * Generate interactive HTML dashboard
104
+ */
105
+ export declare function generateDashboard(options: DashboardOptions): Promise<DashboardResult>;
106
+ export default generateDashboard;
107
+ //# sourceMappingURL=dashboard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard.d.ts","sourceRoot":"","sources":["../../src/tools/dashboard.ts"],"names":[],"mappings":"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"}