@gork-labs/secondbrain-mcp
Version:
Second Brain MCP Server - Agent team orchestration with dynamic tool discovery
110 lines (109 loc) • 3.67 kB
TypeScript
import { EnhancedQualityAssessment, ValidationContext, QualityTrend, QualityInsight, PerformanceInsight, UsagePattern, SystemHealth, AnalyticsConfig } from '../utils/types.js';
/**
* Analytics Manager
* Central coordinator for all analytics and intelligence features
*/
export declare class AnalyticsManager {
private storage;
private qualityAnalyzer;
private metricsCollector;
private initialized;
constructor(analyticsConfig?: Partial<AnalyticsConfig>);
/**
* Record a complete validation event for analytics
*/
recordValidationEvent(assessment: EnhancedQualityAssessment, context: ValidationContext, sessionId?: string, operationId?: string): void;
private determineTaskComplexity;
/**
* Start timing an operation for performance analytics
*/
startTiming(operationId: string, operation: string): void;
/**
* End timing an operation and record results
*/
endTiming(operationId: string, operation: string, success: boolean, errorType?: string): number;
/**
* Record a refinement event
*/
recordRefinementEvent(sessionId: string, chatmode: string, originalScore: number, improvedScore: number, successful: boolean): void;
/**
* Get quality trends for dashboard/reporting
*/
getQualityTrends(chatmode?: string, days?: number): QualityTrend;
/**
* Get quality insights for proactive management
*/
getQualityInsights(chatmode?: string): QualityInsight[];
/**
* Get performance insights for optimization
*/
getPerformanceInsights(operation?: string, days?: number): PerformanceInsight | Record<string, PerformanceInsight>;
/**
* Get usage patterns for understanding user behavior
*/
getUsagePatterns(chatmode?: string, days?: number): UsagePattern[];
/**
* Get current system health status
*/
getSystemHealth(): SystemHealth;
/**
* Compare performance across chatmodes
*/
compareSubagentPerformance(): Record<string, QualityTrend>;
/**
* Predict quality score for context (if intelligence enabled)
*/
predictQualityScore(context: ValidationContext): number;
/**
* Get adaptive quality threshold (if intelligence enabled)
*/
getAdaptiveQualityThreshold(subagent: string): number;
/**
* Generate comprehensive analytics report
*/
generateAnalyticsReport(days?: number): {
executiveSummary: {
totalValidations: number;
avgQualityScore: number;
successRate: number;
systemHealth: string;
keyInsights: string[];
};
qualityReport: {
overview: QualityTrend;
subagentBreakdown: Record<string, QualityTrend>;
insights: QualityInsight[];
recommendations: string[];
};
performanceReport: Record<string, PerformanceInsight>;
usageReport: UsagePattern[];
systemStatus: SystemHealth;
generatedAt: string;
};
/**
* Export all analytics data for external analysis
*/
exportAnalyticsData(): {
qualityData: any;
performanceData: any;
usageData: any;
metadata: {
exportedAt: string;
dataRange: string;
totalRecords: number;
};
};
/**
* Clear all analytics data (for testing or reset)
*/
clearAnalyticsData(): void;
/**
* Get analytics configuration and status
*/
getAnalyticsStatus(): {
initialized: boolean;
storageHealth: SystemHealth;
configStatus: string;
lastActivity: string;
};
}