UNPKG

ai-debug-local-mcp

Version:

🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh

203 lines • 8.87 kB
import { Page } from 'playwright'; import { DebugState, DOMSnapshot, NetworkRequest } from './types'; import { NetworkRequest as NetworkCoordinatorRequest, NetworkResponse as NetworkCoordinatorResponse, NetworkError as NetworkCoordinatorError, NetworkMetrics, NetworkReport } from './local-debug-engine/network-coordinator'; export declare class LocalDebugEngine { private browser?; private page?; private browserManager; private eventCollector; private stateCapture; private frameworkDetector; private debugInjector; private eventMonitor; private flutterEngine?; private flutterEnhancedEngine?; private problemEngine; private nextjsEngine?; private nextjsEnhancedEngine?; private serverFrameworkEngine?; private metaFrameworkEngine?; private tidewaveIntegration?; private tidewaveCapabilities?; private jsExecutionEngine; private asyncTrackingEngine; private jsErrorDetectionEngine; private jsAnalysisCoordinator; private flutterAnalysisCoordinator; private userActionCoordinator; private debugSessionCoordinator; private networkCoordinator; private reactStateCoordinator; private elementInspectionCoordinator; private performanceCoordinator; private reactStateEngine; private databaseTraceEngine?; constructor(); /** * Set up event handlers to bridge BrowserManager events with existing data collection */ private setupBrowserManagerHandlers; attachToPage(page: Page): Promise<void>; captureState(): Promise<DebugState>; captureDOMSnapshot(): Promise<DOMSnapshot>; injectDebuggingCode(code: string): Promise<any>; inspectElement(selector: string): Promise<import("./local-debug-engine/element-inspection-coordinator").ElementInspectionResult>; inspectMultipleElements(selectors: string[]): Promise<import("./local-debug-engine/element-inspection-coordinator").MultipleElementInspectionResult[]>; elementExists(selector: string): Promise<boolean>; isElementVisible(selector: string): Promise<boolean>; getElementCount(selector: string): Promise<number>; getElementAttributes(selector: string): Promise<Record<string, string> | null>; getComputedStyles(selector: string, properties?: string[]): Promise<Record<string, string> | null>; getElementBounds(selector: string): Promise<import("./local-debug-engine/element-inspection-coordinator").ElementBounds | null>; findAllElements(selector: string): Promise<{ tagName: string; id: string; className: string; }[]>; simulateUserAction(action: string, selector?: string, value?: any): Promise<void>; getConsoleMessages(filter?: { type?: string; since?: Date; maxTokens?: number; }): Array<{ type: string; text: string; timestamp: Date; }>; getNetworkRequests(filter?: { status?: string; pattern?: string; }): NetworkRequest[]; getCapturedNetworkRequests(): NetworkCoordinatorRequest[]; getCapturedNetworkResponses(): NetworkCoordinatorResponse[]; getNetworkErrors(): NetworkCoordinatorError[]; getNetworkMetrics(): NetworkMetrics; generateNetworkReport(): NetworkReport; findReactComponents(): Promise<any[]>; findPhoenixLiveViewState(): Promise<any>; detectFramework(page: Page): Promise<string>; injectDebugging(page: Page, framework: string): Promise<void>; monitorEvents(page: Page, duration: number): Promise<any[]>; basicAnalysis(events: any[]): any; simulateAction(page: Page, action: string, selector: string, value?: string, coordinates?: { x: number; y: number; }): Promise<any>; captureRecentEvents(page: Page, duration: number): Promise<any[]>; extractPageState(page: Page): Promise<any>; generateBasicReport(session: any): any; addNetworkMock(urlPattern: string, response: { status?: number; body?: any; headers?: Record<string, string>; delay?: number; }): Promise<void>; removeNetworkMock(urlPattern: string): boolean; clearAllMocks(): void; getMockedUrls(): string[]; getFlutterWidgetTree(): Promise<any>; getFlutterPerformance(): Promise<any>; inspectFlutterWidget(widgetId: string): Promise<any>; highlightFlutterWidget(widgetId: string): Promise<void>; getFlutterMemoryUsage(): Promise<any>; isFlutterConnected(): boolean; isFlutterDetected(): boolean; getHydrationIssues(): Promise<any>; getBundleAnalysis(): Promise<any>; getRouteChanges(): Promise<any>; detectCommonProblems(): Promise<any>; private attachFrameworkEngines; getNextJSPageInfo(): Promise<any>; getNextJSBuildInfo(): Promise<any>; getNextJSHydrationErrors(): Promise<any>; getNextJSImageIssues(): Promise<any>; getNextJSServerClientBoundaries(): Promise<any[]>; getNextJSDataFetching(): Promise<any[]>; analyzeNextJSServerClientFlow(): Promise<any>; detectNextJSProblems(): Promise<any>; getNextJSConfig(): Promise<any>; getNextJSAppRouterInfo(): Promise<any>; getNextJSDataFetchingAnalysis(): Promise<any>; getNextJSBundleAnalysis(): Promise<any>; analyzeNextJSServerComponentFlow(): Promise<any>; getNextJSMiddlewareAnalysis(): Promise<any>; getNextJSServerActionMonitor(): Promise<any>; getNextJSCacheInspector(): Promise<any>; getNextJSFontAnalysis(): Promise<any>; getNextJSSecurityAnalysis(): Promise<any>; getNextJSISRMonitor(route?: string): Promise<any>; getNextJSEdgeRuntimeInfo(): Promise<any>; getNextJSPPRAnalysis(): Promise<any>; getNextJSHMRAnalysis(): Promise<any>; debugNextJSRoute(): Promise<any>; analyzeNextJSBundleDetails(): Promise<any>; clearNextJSCache(type: 'all' | 'data' | 'full-route' | 'client'): Promise<void>; getNextJSPerformanceScore(): Promise<any>; getTurboEvents(): Promise<any>; getStimulusControllers(): Promise<any>; getCSRFIssues(): Promise<any>; detectServerFrameworkProblems(): Promise<any>; getFormSubmissions(): Promise<any>; isNextJSConnected(): boolean; isServerFrameworkConnected(): boolean; getMetaFrameworkInfo(): Promise<any>; getRemixLoaderData(): Promise<any>; getRemixRouteModules(): Promise<any>; getAstroIslands(): Promise<any>; getNuxtPayload(): Promise<any>; getQwikResumability(): Promise<any>; getViteHMREvents(): Promise<any>; detectMetaFrameworkProblems(): Promise<any>; isMetaFrameworkConnected(): boolean; enableJavaScriptTracing(): Promise<void>; disableJavaScriptTracing(): Promise<void>; instrumentFunction(functionPath: string, functionName?: string): Promise<void>; getJavaScriptExecutionTrace(): Promise<any>; getJavaScriptCallGraph(): Promise<any>; getJavaScriptPerformanceProfile(): Promise<any>; captureVariableState(variablePath: string, scope?: string): Promise<any>; enableAsyncTracking(): Promise<void>; disableAsyncTracking(): Promise<void>; getAsyncOperationTrace(): Promise<any>; getPromiseChain(promiseId: string): Promise<any>; getAsyncStackTrace(operationId: string): Promise<string[]>; detectAsyncLeaks(): Promise<any>; detectJavaScriptErrors(): Promise<any>; validateScriptTags(): Promise<any>; stopErrorMonitoring(): Promise<void>; getFailedRequests(): NetworkRequest[]; getSlowRequests(thresholdMs?: number): NetworkRequest[]; getApiRequests(): NetworkRequest[]; getRequestsByStatus(status: number): NetworkRequest[]; detectApiDataMismatches(): Promise<any[]>; private findArraysInObject; getReactComponentTree(): Promise<any>; getReactState(): Promise<any>; detectReactStateMismatches(): Promise<any[]>; monitorReactStateChanges(duration: number): Promise<any[]>; getReactComponentByName(name: string): Promise<any>; captureDatabaseQueries(duration: number): Promise<any[]>; getDatabaseQueries(filter?: { minDuration?: number; operation?: string; hasError?: boolean; table?: string; }): any[]; detectN1Queries(): any[]; getSlowDatabaseQueries(thresholdMs?: number): any[]; getDatabaseQueryStats(): any; clearDatabaseQueries(): void; getFlutterConfig(): Promise<any>; getFlutterDiagnostics(): Promise<any>; getFlutterPerformanceMetrics(): Promise<any>; detectFlutterWebIssues(): Promise<any>; analyzeFlutterWidgetTree(): Promise<any>; detectFlutterMemoryLeaks(): Promise<any>; captureFlutterStateSnapshot(): Promise<any>; analyzeFlutterAssetLoading(): Promise<any>; getFlutterBrowserCompatibility(): Promise<any>; getFlutterHealthCheck(): Promise<any>; getFlutterPerformanceBaseline(): Promise<any>; cleanup(): Promise<void>; } //# sourceMappingURL=local-debug-engine.d.ts.map