/** * Architect Tools - Integration layer between architect agent and contextual analysis system * Provides tools for codebase intelligence, architectural assessment, and design planning */ import { CodebaseStructure } from "../delegation/codebase-context-analyzer.js"; import { DependencyNode } from "../delegation/dependency-graph-builder.js"; export interface CodebaseComplexityInfo { averageComplexity: number; highComplexityFiles: string[]; complexityDistribution: "low" | "medium" | "high" | "critical"; recommendations: string[]; } export interface ContextAnalysisResult { codebaseStructure: CodebaseStructure; architecturalPatterns: string[]; dependencyIssues: string[]; scalabilityAssessment: { score: number; recommendations: string[]; }; maintainabilityIndex: number; complexityAnalysis: CodebaseComplexityInfo; } export interface ArchitectureAssessment { overallHealth: "excellent" | "good" | "fair" | "poor" | "critical"; scores: { modularity: number; coupling: number; cohesion: number; testability: number; scalability: number; }; issues: Array<{ type: "critical" | "major" | "minor"; description: string; impact: string; recommendation: string; }>; recommendations: string[]; } export interface DependencyAnalysis { graph: Map; circularDependencies: string[]; tightlyCoupledModules: string[]; orphanModules: string[]; healthScore: number; recommendations: string[]; } /** * Context Analysis Tool - Comprehensive codebase intelligence gathering */ export declare function contextAnalysis(projectRoot: string, files?: string[], depth?: "overview" | "detailed" | "comprehensive"): Promise; /** * Codebase Structure Tool - File organization and module analysis */ export declare function codebaseStructure(projectRoot: string, includeMetrics?: boolean): Promise; /** * Dependency Analysis Tool - Component relationship and coupling analysis */ export declare function dependencyAnalysis(projectRoot: string, focusAreas?: string[]): Promise; /** * Architecture Assessment Tool - Overall architectural health evaluation */ export declare function architectureAssessment(projectRoot: string, assessmentType?: "quick" | "comprehensive"): Promise; /** Confer text follows the assessment. A critical coupling issue is FAIL. */ export declare function conferVerdictFromAssessment(assessment: ArchitectureAssessment): "PASS" | "CONDITIONAL" | "FAIL"; export declare function formatConferArchitectureText(conferPrompt: string, assessment: ArchitectureAssessment): string; export declare const architectTools: { contextAnalysis: typeof contextAnalysis; codebaseStructure: typeof codebaseStructure; dependencyAnalysis: typeof dependencyAnalysis; architectureAssessment: typeof architectureAssessment; };