UNPKG

superaugment

Version:

Enterprise-grade MCP server with world-class C++ analysis, robust error handling, and production-ready architecture for VS Code Augment

170 lines 5.77 kB
/** * SuperAugment C++ Analysis Tool * * Provides comprehensive C++ code analysis including syntax analysis, * semantic analysis, dependency tracking, performance analysis, and * modern C++ best practices validation. */ import { z } from 'zod'; import { BaseTool, type ToolExecutionContext, type ToolExecutionResult } from '../BaseTool.js'; import { ConfigManager } from '../../config/ConfigManager.js'; /** * C++ analysis options schema */ declare const CppAnalysisOptionsSchema: z.ZodObject<{ path: z.ZodString; includeHeaders: z.ZodDefault<z.ZodBoolean>; analyzeIncludes: z.ZodDefault<z.ZodBoolean>; checkModernCpp: z.ZodDefault<z.ZodBoolean>; performanceAnalysis: z.ZodDefault<z.ZodBoolean>; memoryAnalysis: z.ZodDefault<z.ZodBoolean>; securityAnalysis: z.ZodDefault<z.ZodBoolean>; cppStandard: z.ZodDefault<z.ZodEnum<["cpp11", "cpp14", "cpp17", "cpp20", "cpp23"]>>; maxDepth: z.ZodDefault<z.ZodNumber>; excludePatterns: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; customRules: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; }, "strict", z.ZodTypeAny, { path: string; maxDepth: number; cppStandard: "cpp14" | "cpp17" | "cpp20" | "cpp11" | "cpp23"; includeHeaders: boolean; analyzeIncludes: boolean; checkModernCpp: boolean; performanceAnalysis: boolean; memoryAnalysis: boolean; securityAnalysis: boolean; excludePatterns: string[]; customRules: string[]; }, { path: string; maxDepth?: number | undefined; cppStandard?: "cpp14" | "cpp17" | "cpp20" | "cpp11" | "cpp23" | undefined; includeHeaders?: boolean | undefined; analyzeIncludes?: boolean | undefined; checkModernCpp?: boolean | undefined; performanceAnalysis?: boolean | undefined; memoryAnalysis?: boolean | undefined; securityAnalysis?: boolean | undefined; excludePatterns?: string[] | undefined; customRules?: string[] | undefined; }>; type CppAnalysisOptions = z.infer<typeof CppAnalysisOptionsSchema>; /** * Comprehensive C++ Analysis Tool */ export declare class AnalyzeCppTool extends BaseTool { readonly name = "analyze_cpp"; readonly description = "Comprehensive C++ code analysis including syntax, semantics, performance, memory, and security analysis"; readonly inputSchema: z.ZodObject<{ path: z.ZodString; includeHeaders: z.ZodDefault<z.ZodBoolean>; analyzeIncludes: z.ZodDefault<z.ZodBoolean>; checkModernCpp: z.ZodDefault<z.ZodBoolean>; performanceAnalysis: z.ZodDefault<z.ZodBoolean>; memoryAnalysis: z.ZodDefault<z.ZodBoolean>; securityAnalysis: z.ZodDefault<z.ZodBoolean>; cppStandard: z.ZodDefault<z.ZodEnum<["cpp11", "cpp14", "cpp17", "cpp20", "cpp23"]>>; maxDepth: z.ZodDefault<z.ZodNumber>; excludePatterns: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; customRules: z.ZodDefault<z.ZodArray<z.ZodString, "many">>; }, "strict", z.ZodTypeAny, { path: string; maxDepth: number; cppStandard: "cpp14" | "cpp17" | "cpp20" | "cpp11" | "cpp23"; includeHeaders: boolean; analyzeIncludes: boolean; checkModernCpp: boolean; performanceAnalysis: boolean; memoryAnalysis: boolean; securityAnalysis: boolean; excludePatterns: string[]; customRules: string[]; }, { path: string; maxDepth?: number | undefined; cppStandard?: "cpp14" | "cpp17" | "cpp20" | "cpp11" | "cpp23" | undefined; includeHeaders?: boolean | undefined; analyzeIncludes?: boolean | undefined; checkModernCpp?: boolean | undefined; performanceAnalysis?: boolean | undefined; memoryAnalysis?: boolean | undefined; securityAnalysis?: boolean | undefined; excludePatterns?: string[] | undefined; customRules?: string[] | undefined; }>; private fileSystemManager; private cppAnalyzer; private ruleEngine; constructor(configManager: ConfigManager); protected executeInternal(args: CppAnalysisOptions, context: ToolExecutionContext): Promise<ToolExecutionResult>; /** * Discover C++ files in the target path */ private discoverCppFiles; /** * Initialize analysis report structure */ private initializeReport; /** * Perform syntax analysis */ private performSyntaxAnalysis; /** * Perform semantic analysis */ private performSemanticAnalysis; /** * Perform dependency analysis */ private performDependencyAnalysis; /** * Perform code quality analysis using rule engine */ private performCodeQualityAnalysis; /** * Perform modern C++ analysis */ private performModernCppAnalysis; /** * Perform performance analysis */ private performPerformanceAnalysis; /** * Perform memory analysis */ private performMemoryAnalysis; /** * Perform security analysis */ private performSecurityAnalysis; /** * Calculate complexity and maintainability metrics */ private calculateMetrics; /** * Generate final scores and overall assessment */ private generateFinalScores; /** * Generate comprehensive recommendations */ private generateRecommendations; /** * Create comprehensive C++ analysis response */ private createCppAnalysisResponse; /** * Calculate grade from score */ private calculateGrade; /** * Get maintainability rating */ private getMaintainabilityRating; /** * Calculate testability score */ private calculateTestabilityScore; } export {}; //# sourceMappingURL=AnalyzeCppTool.d.ts.map