UNPKG

vibe-coder-mcp

Version:

Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.

153 lines 4.82 kB
import { SyntaxNode } from './parser.js'; import { FunctionInfo, ClassInfo, ImportInfo } from './codeMapModel.js'; export interface LanguageHandler { extractFunctions(rootNode: SyntaxNode, sourceCode: string, options?: FunctionExtractionOptions): FunctionInfo[]; extractClasses(rootNode: SyntaxNode, sourceCode: string, options?: ClassExtractionOptions): ClassInfo[]; extractImports(rootNode: SyntaxNode, sourceCode: string, options?: ImportExtractionOptions): ImportInfo[]; detectFramework?(sourceCode: string): string | null; enhanceImportInfo?(filePath: string, imports: ImportInfo[], options: Record<string, unknown>): Promise<ImportInfo[]>; } export interface FunctionExtractionOptions { isMethodExtraction?: boolean; className?: string; maxNestedFunctionDepth?: number; enableContextAnalysis?: boolean; enableRoleDetection?: boolean; enableHeuristicNaming?: boolean; } export interface ClassExtractionOptions { extractNestedClasses?: boolean; extractMethods?: boolean; extractProperties?: boolean; maxNestedClassDepth?: number; } export interface ImportExtractionOptions { resolveImportPaths?: boolean; extractComments?: boolean; useImportResolver?: boolean; filePath?: string; projectRoot?: string; } export interface FunctionContext { type: string; name?: string; parent?: FunctionContext; } export interface DebugConfig { showDetailedImports?: boolean; generateASTDebugFiles?: boolean; } export interface CodeMapGeneratorConfig { allowedMappingDirectory: string; cache?: CacheConfig; processing?: ProcessingConfig; output?: OutputConfig; universalOptimization?: UniversalOptimizationConfig; maxOptimizationLevel?: 'conservative' | 'balanced' | 'aggressive' | 'maximum'; qualityThresholds?: QualityThresholds; featureFlags?: FeatureFlagsConfig; importResolver?: ImportResolverConfig; debug?: DebugConfig; } export interface CacheConfig { enabled: boolean; maxEntries?: number; maxAge?: number; cacheDir?: string; useFileBasedAccess?: boolean; maxCachedFiles?: number; useMemoryCache?: boolean; memoryMaxEntries?: number; memoryMaxAge?: number; memoryThreshold?: number; useFileHashes?: boolean; } export interface ProcessingConfig { batchSize?: number; logMemoryUsage?: boolean; maxMemoryUsage?: number; incremental?: boolean; periodicGC?: boolean; gcInterval?: number; incrementalConfig?: IncrementalProcessingConfig; } export interface IncrementalProcessingConfig { useFileHashes?: boolean; useFileMetadata?: boolean; maxCachedHashes?: number; maxHashAge?: number; previousFilesListPath?: string; saveProcessedFilesList?: boolean; } export interface UniversalOptimizationConfig { eliminateVerboseDiagrams?: boolean; reduceClassDetails?: boolean; consolidateRepetitiveContent?: boolean; focusOnPublicInterfaces?: boolean; adaptiveOptimization?: boolean; } export interface PatternConsolidationConfig { enabled: boolean; maxComponentsShown: number; groupArchitecturalPatterns: boolean; groupFunctionPatterns: boolean; consolidationThreshold: number; } export interface QualityThresholds { minSemanticCompleteness: number; minArchitecturalIntegrity: number; maxInformationLoss: number; } export interface OutputConfig { outputDir?: string; format?: 'markdown' | 'json'; splitOutput?: boolean; filePrefix?: string; maxAge?: number; maxOutputDirs?: number; cleanupOldOutputs?: boolean; } export interface DirectoryStructure { baseOutputDir: string; outputDir: string; cacheDir: string; fileInfoCacheDir: string; metadataCacheDir: string; tempDir: string; jobTempDir: string; } export interface PathValidationResult { isValid: boolean; error?: string; normalizedPath?: string; } export interface FeatureFlagsConfig { enhancedFunctionDetection?: boolean; contextAnalysis?: boolean; frameworkDetection?: boolean; roleIdentification?: boolean; heuristicNaming?: boolean; memoryOptimization?: boolean; } export interface ImportResolverConfig { enabled: boolean; cacheSize?: number; useCache?: boolean; extensions?: Record<string, string[]>; generateImportGraph?: boolean; expandSecurityBoundary?: boolean; enhanceImports?: boolean; importMaxDepth?: number; tsConfig?: string; pythonPath?: string; pythonVersion?: string; venvPath?: string; clangdPath?: string; compileFlags?: string[]; includePaths?: string[]; semgrepPatterns?: string[]; semgrepTimeout?: number; semgrepMaxMemory?: string; disableSemgrepFallback?: boolean; } //# sourceMappingURL=types.d.ts.map