UNPKG

@gork-labs/secondbrain-mcp

Version:

Second Brain MCP Server - Agent team orchestration with dynamic tool discovery

711 lines (710 loc) 22.3 kB
import { z } from 'zod'; export interface SessionState { sessionId: string; totalCalls: number; agentTypeCalls: Record<string, number>; refinementCount: Record<string, number>; isSubAgent: boolean; currentDepth: number; parentSessionId?: string; createdAt: string; lastActivity: string; } export declare const MemoryOperationSchema: z.ZodObject<{ operation: z.ZodEnum<["create_entities", "add_observations", "create_relations", "delete_entities", "delete_observations", "delete_relations"]>; data: z.ZodRecord<z.ZodString, z.ZodAny>; }, "strip", z.ZodTypeAny, { operation: "create_entities" | "add_observations" | "create_relations" | "delete_entities" | "delete_observations" | "delete_relations"; data: Record<string, any>; }, { operation: "create_entities" | "add_observations" | "create_relations" | "delete_entities" | "delete_observations" | "delete_relations"; data: Record<string, any>; }>; export declare const DeliverableSchema: z.ZodObject<{ documents: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; analysis: z.ZodOptional<z.ZodString>; recommendations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { documents?: string[] | undefined; analysis?: string | undefined; recommendations?: string[] | undefined; }, { documents?: string[] | undefined; analysis?: string | undefined; recommendations?: string[] | undefined; }>; export declare const SubAgentMetadataSchema: z.ZodObject<{ subagent: z.ZodString; task_completion_status: z.ZodEnum<["complete", "partial", "failed"]>; processing_time: z.ZodString; confidence_level: z.ZodEnum<["high", "medium", "low"]>; }, "strip", z.ZodTypeAny, { subagent: string; task_completion_status: "complete" | "partial" | "failed"; processing_time: string; confidence_level: "high" | "medium" | "low"; }, { subagent: string; task_completion_status: "complete" | "partial" | "failed"; processing_time: string; confidence_level: "high" | "medium" | "low"; }>; export declare const SubAgentResponseSchema: z.ZodObject<{ deliverables: z.ZodObject<{ documents: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; analysis: z.ZodOptional<z.ZodString>; recommendations: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; }, "strip", z.ZodTypeAny, { documents?: string[] | undefined; analysis?: string | undefined; recommendations?: string[] | undefined; }, { documents?: string[] | undefined; analysis?: string | undefined; recommendations?: string[] | undefined; }>; memory_operations: z.ZodOptional<z.ZodArray<z.ZodObject<{ operation: z.ZodEnum<["create_entities", "add_observations", "create_relations", "delete_entities", "delete_observations", "delete_relations"]>; data: z.ZodRecord<z.ZodString, z.ZodAny>; }, "strip", z.ZodTypeAny, { operation: "create_entities" | "add_observations" | "create_relations" | "delete_entities" | "delete_observations" | "delete_relations"; data: Record<string, any>; }, { operation: "create_entities" | "add_observations" | "create_relations" | "delete_entities" | "delete_observations" | "delete_relations"; data: Record<string, any>; }>, "many">>; metadata: z.ZodObject<{ subagent: z.ZodString; task_completion_status: z.ZodEnum<["complete", "partial", "failed"]>; processing_time: z.ZodString; confidence_level: z.ZodEnum<["high", "medium", "low"]>; }, "strip", z.ZodTypeAny, { subagent: string; task_completion_status: "complete" | "partial" | "failed"; processing_time: string; confidence_level: "high" | "medium" | "low"; }, { subagent: string; task_completion_status: "complete" | "partial" | "failed"; processing_time: string; confidence_level: "high" | "medium" | "low"; }>; tool: z.ZodOptional<z.ZodString>; arguments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>; }, "strip", z.ZodTypeAny, { deliverables: { documents?: string[] | undefined; analysis?: string | undefined; recommendations?: string[] | undefined; }; metadata: { subagent: string; task_completion_status: "complete" | "partial" | "failed"; processing_time: string; confidence_level: "high" | "medium" | "low"; }; memory_operations?: { operation: "create_entities" | "add_observations" | "create_relations" | "delete_entities" | "delete_observations" | "delete_relations"; data: Record<string, any>; }[] | undefined; tool?: string | undefined; arguments?: Record<string, any> | undefined; }, { deliverables: { documents?: string[] | undefined; analysis?: string | undefined; recommendations?: string[] | undefined; }; metadata: { subagent: string; task_completion_status: "complete" | "partial" | "failed"; processing_time: string; confidence_level: "high" | "medium" | "low"; }; memory_operations?: { operation: "create_entities" | "add_observations" | "create_relations" | "delete_entities" | "delete_observations" | "delete_relations"; data: Record<string, any>; }[] | undefined; tool?: string | undefined; arguments?: Record<string, any> | undefined; }>; export declare const ParallelAgentSpecSchema: z.ZodObject<{ agent_id: z.ZodString; subagent: z.ZodString; task: z.ZodString; context: z.ZodString; expected_deliverables: z.ZodString; }, "strip", z.ZodTypeAny, { subagent: string; agent_id: string; task: string; context: string; expected_deliverables: string; }, { subagent: string; agent_id: string; task: string; context: string; expected_deliverables: string; }>; export declare const SpawnAgentsParallelArgsSchema: z.ZodObject<{ agents: z.ZodArray<z.ZodObject<{ agent_id: z.ZodString; subagent: z.ZodString; task: z.ZodString; context: z.ZodString; expected_deliverables: z.ZodString; }, "strip", z.ZodTypeAny, { subagent: string; agent_id: string; task: string; context: string; expected_deliverables: string; }, { subagent: string; agent_id: string; task: string; context: string; expected_deliverables: string; }>, "many">; coordination_context: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { agents: { subagent: string; agent_id: string; task: string; context: string; expected_deliverables: string; }[]; coordination_context?: string | undefined; }, { agents: { subagent: string; agent_id: string; task: string; context: string; expected_deliverables: string; }[]; coordination_context?: string | undefined; }>; export interface ParallelAgentResult { agent_id: string; subagent: string; status: 'success' | 'failed'; execution_time_ms: number; session_id: string | null; response?: SubAgentResponse; error?: string; } export type MemoryOperation = z.infer<typeof MemoryOperationSchema>; export type Deliverable = z.infer<typeof DeliverableSchema>; export type SubAgentMetadata = z.infer<typeof SubAgentMetadataSchema>; export type SubAgentResponse = z.infer<typeof SubAgentResponseSchema>; export declare const SpawnAgentArgsSchema: z.ZodObject<{ subagent: z.ZodString; task: z.ZodString; context: z.ZodString; expected_deliverables: z.ZodString; }, "strip", z.ZodTypeAny, { subagent: string; task: string; context: string; expected_deliverables: string; }, { subagent: string; task: string; context: string; expected_deliverables: string; }>; export declare const ValidateOutputArgsSchema: z.ZodObject<{ sub_agent_response: z.ZodString; requirements: z.ZodString; quality_criteria: z.ZodString; subagent: z.ZodOptional<z.ZodString>; session_id: z.ZodOptional<z.ZodString>; enable_refinement: z.ZodOptional<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { sub_agent_response: string; requirements: string; quality_criteria: string; subagent?: string | undefined; session_id?: string | undefined; enable_refinement?: boolean | undefined; }, { sub_agent_response: string; requirements: string; quality_criteria: string; subagent?: string | undefined; session_id?: string | undefined; enable_refinement?: boolean | undefined; }>; export type SpawnAgentArgs = z.infer<typeof SpawnAgentArgsSchema>; export type ValidateOutputArgs = z.infer<typeof ValidateOutputArgsSchema>; export interface ChatmodeDefinition { name: string; description: string; tools: string[]; content: string; filePath: string; } export interface QualityAssessment { score: number; passed: boolean; issues: string[]; recommendations: string[]; confidence: 'high' | 'medium' | 'low'; } export interface QualityRuleResult { passed: boolean; score: number; feedback: string; severity: 'critical' | 'important' | 'minor'; category: string; } export interface ValidationContext { subagent: string; requirements: string; qualityCriteria: string; sessionHistory?: SessionState; taskType?: string; expectedDeliverables?: string[]; } export interface QualityRule { name: string; category: string; weight: number; applicableToAll: boolean; evaluator: (response: SubAgentResponse, context: ValidationContext) => QualityRuleResult; } export interface EnhancedQualityAssessment { overallScore: number; passed: boolean; qualityThreshold: number; ruleResults: QualityRuleResult[]; categories: Record<string, number>; recommendations: string[]; criticalIssues: string[]; confidence: 'high' | 'medium' | 'low'; processingTime: number; canRefine: boolean; refinementSuggestions: string[]; } export interface RefinementState { sessionId: string; originalTaskId: string; attemptNumber: number; previousScores: number[]; improvementAreas: string[]; lastRefinementTime: string; refinementReason: string; qualityTrend: 'improving' | 'declining' | 'stable'; } export interface QualityMetrics { totalValidations: number; averageScore: number; successRate: number; refinementRate: number; categoryBreakdown: Record<string, number>; subagentPerformance: Record<string, number>; qualityTrends: Array<{ timestamp: string; averageScore: number; validationCount: number; }>; } export interface SubagentQualityConfig { subagent: string; qualityThreshold: number; maxRefinementAttempts: number; specificRules: string[]; ruleWeights: Record<string, number>; requiredCategories: string[]; refinementPromptTemplate?: string; } export declare class SecondBrainError extends Error { code: string; details?: any | undefined; constructor(message: string, code: string, details?: any | undefined); } export declare class SessionLimitError extends SecondBrainError { constructor(message: string, details?: any); } export declare class SubagentNotFoundError extends SecondBrainError { constructor(subagent: string); } export declare class InvalidResponseError extends SecondBrainError { constructor(message: string, details?: any); } export interface QualityMetric { timestamp: string; subagent: string; sessionId?: string; qualityScore: number; passed: boolean; processingTime: number; refinementAttempts: number; ruleBreakdown: Record<string, number>; categories: Record<string, number>; criticalIssues: string[]; improvementAreas: string[]; } export interface PerformanceMetric { timestamp: string; operation: string; duration: number; success: boolean; errorType?: string; resourceUsage?: { memory: number; cpu?: number; }; requestSize?: number; responseSize?: number; } export interface UsageMetric { timestamp: string; subagent: string; sessionId: string; operation: string; success: boolean; userContext?: { taskType?: string; urgency?: string; complexity?: 'low' | 'medium' | 'high'; }; } export interface AnalyticsData { qualityMetrics: Record<string, QualityMetric[]>; performanceMetrics: PerformanceMetric[]; usageMetrics: UsageMetric[]; lastUpdated: string; totalRecords: number; } export interface QualityTrend { subagent: string; timeRange: string; scoreAverage: number; scoreTrend: 'improving' | 'declining' | 'stable'; successRate: number; refinementRate: number; totalValidations: number; insights: string[]; recommendations: string[]; } export interface SystemHealth { status: 'healthy' | 'warning' | 'critical'; totalRecords: number; memoryUsage: number; lastCleanup: string; storageLocation: string; uptime?: number; errorRate?: number; avgResponseTime?: number; } export interface QualityInsight { type: 'trend' | 'pattern' | 'anomaly' | 'recommendation'; subagent?: string; severity: 'info' | 'warning' | 'critical'; title: string; description: string; metrics: Record<string, number>; actionable: boolean; recommendation?: string; confidence: number; timestamp: string; } export interface PerformanceInsight { operation: string; avgDuration: number; p95Duration: number; successRate: number; errorPatterns: string[]; optimizationSuggestions: string[]; trend: 'improving' | 'declining' | 'stable'; timestamp: string; } export interface UsagePattern { subagent: string; peakHours: number[]; avgSessionDuration: number; successRate: number; commonTasks: string[]; userBehaviors: { refinementFrequency: number; taskComplexity: 'low' | 'medium' | 'high'; preferredFeatures: string[]; }; } export interface AnalyticsConfig { retention: { qualityMetrics: number; performanceMetrics: number; usageMetrics: number; }; aggregation: { windowSize: number; batchSize: number; }; alerts: { qualityThreshold: number; errorRateThreshold: number; performanceThreshold: number; }; intelligence: { enablePredictiveScoring: boolean; enableAdaptiveThresholds: boolean; enableAutoOptimization: boolean; learningWindowDays: number; }; } export interface MLPrediction { prediction: number; confidence: number; reasoning: string; features: Map<string, number>; } export interface MLTrainingData { timestamp: number; features: Map<string, number>; actualScore: number; actualPassed: boolean; processingTime: number; subagent: string; prediction?: number; } export interface MLModel { name: string; type: 'regression' | 'classification'; version: string; features: string[]; weights: Map<string, number>; accuracy: number; lastTrained: number; trainingCount: number; } export interface MLInsight { type: 'model_performance' | 'learning_pattern' | 'training_data' | 'prediction_accuracy' | 'data_distribution' | 'system_error' | 'anomaly_detection' | 'quality_forecast' | 'cross_chatmode_analysis' | 'proactive_alert'; severity: 'info' | 'warning' | 'critical'; title: string; description: string; actionRequired: boolean; recommendation?: string; forecastData?: { prediction: number; confidenceInterval: [number, number]; timeHorizon: string; methodology: string; }; anomalyDetails?: { detectionMethod: string; severity: number; expectedValue: number; actualValue: number; deviation: number; }; } export interface MLOptimization { timestamp: number; type: string; component: string; oldValue: number; newValue: number; expectedImprovement: number; actualImprovement?: number; applied: boolean; } export interface PredictiveAnalytics { qualityForecast: { subagent: string; currentScore: number; predictedScore: number; confidenceInterval: [number, number]; forecastHorizon: string; trendDirection: 'improving' | 'declining' | 'stable'; confidence: number; }; anomalies: { subagent: string; metric: string; severity: 'low' | 'medium' | 'high'; detectedAt: string; description: string; expectedValue: number; actualValue: number; deviationScore: number; }[]; crossSubagentPatterns: { pattern: string; affectedSubagents: string[]; correlation: number; significance: 'low' | 'medium' | 'high'; description: string; actionable: boolean; }[]; proactiveAlerts: { alertType: 'performance_degradation' | 'quality_decline' | 'anomaly_cluster' | 'trend_reversal'; severity: 'info' | 'warning' | 'critical'; description: string; affectedComponents: string[]; recommendedActions: string[]; confidence: number; estimatedImpact: string; }[]; } export interface BaseModel { id: string; name: string; type: 'statistical' | 'pattern_recognition' | 'domain_specific' | 'meta_learning'; version: string; accuracy: number; lastUpdated: number; trainingCount: number; specialization?: string; } export interface ModelPrediction { modelId: string; prediction: number; confidence: number; reasoning: string; contributingFactors: Record<string, number>; processingTime: number; } export interface EnsemblePrediction { finalPrediction: number; confidence: number; modelContributions: ModelPrediction[]; votingMethod: 'weighted_average' | 'confidence_weighted' | 'majority_vote' | 'expert_selection'; consensusLevel: number; metadata: { totalModels: number; participatingModels: number; conflictResolution?: string; qualityAssurance: boolean; }; } export interface ABTestConfig { experimentId: string; name: string; description: string; hypothesis: string; startDate: string; estimatedDuration: number; targetSampleSize: number; confidenceLevel: number; minimumEffectSize: number; successMetrics: string[]; variants: { id: string; name: string; description: string; trafficAllocation: number; configuration: Record<string, any>; }[]; safetyConstraints: { maxAllowedDegradation: number; earlyStoppingRules: string[]; fallbackVariant: string; }; } export interface ABTestResult { experimentId: string; status: 'running' | 'completed' | 'stopped_early' | 'failed'; duration: number; samplesCollected: number; statisticalPower: number; pValue: number; effectSize: number; confidenceInterval: [number, number]; winningVariant?: string; results: { variantId: string; sampleSize: number; successRate: number; averageMetric: number; confidenceInterval: [number, number]; }[]; recommendation: 'deploy_winner' | 'run_longer' | 'redesign_experiment' | 'no_significant_difference'; insights: string[]; } export interface AutoOptimizationConfig { optimizationId: string; name: string; description: string; objectives: { metric: string; target: 'maximize' | 'minimize'; weight: number; constraint?: { min?: number; max?: number; }; }[]; parameters: { name: string; type: 'continuous' | 'discrete' | 'categorical'; range: any; currentValue: any; }[]; algorithm: 'bayesian_optimization' | 'genetic_algorithm' | 'random_search' | 'grid_search'; constraints: { maxIterations: number; maxDuration: number; convergenceThreshold: number; safetyChecks: string[]; }; } export interface OptimizationResult { optimizationId: string; status: 'running' | 'converged' | 'max_iterations' | 'failed' | 'safety_stopped'; iterations: number; bestScore: number; bestParameters: Record<string, any>; improvement: number; convergenceHistory: { iteration: number; score: number; parameters: Record<string, any>; timestamp: string; }[]; deploymentStatus: 'not_deployed' | 'staged' | 'production' | 'rolled_back'; safetyMetrics: { metric: string; baseline: number; current: number; threshold: number; status: 'safe' | 'warning' | 'critical'; }[]; } export interface MetaLearningInsight { insightType: 'learning_efficiency' | 'transfer_opportunity' | 'curriculum_optimization' | 'feature_importance' | 'model_combination'; description: string; evidenceStrength: number; applicableScenarios: string[]; recommendations: string[]; transferPotential?: { sourceSubagent: string; targetSubagent: string; similarity: number; expectedBenefit: number; }; learningPatterns?: { optimalDataAmount: number; learningCurveShape: 'linear' | 'logarithmic' | 'exponential' | 'plateau'; criticalFeatures: string[]; diminishingReturns: boolean; }; } export interface AdaptiveIntelligence { ensemblePredictions: EnsemblePrediction[]; activeExperiments: ABTestConfig[]; experimentResults: ABTestResult[]; optimizationResults: OptimizationResult[]; metaLearningInsights: MetaLearningInsight[]; systemAdaptations: { timestamp: string; adaptationType: 'parameter_tuning' | 'model_reweighting' | 'feature_selection' | 'threshold_adjustment'; description: string; performance_impact: number; confidence: number; }[]; }