UNPKG

vibe-coder-mcp

Version:

Production-ready MCP server with complete agent integration, multi-transport support, and comprehensive development automation tools for AI-assisted workflows.

88 lines 3.39 kB
import { EventEmitter } from 'events'; import { WorkflowPhase } from './workflow-state-manager.js'; export type AgentActivity = 'idle' | 'decomposition' | 'orchestration' | 'task_execution' | 'research' | 'context_enrichment' | 'dependency_analysis'; export interface WorkflowAwareAgentState { agentId: string; currentActivity: AgentActivity; activityStartTime: Date; lastHeartbeat: Date; lastProgressUpdate: Date; workflowId?: string; sessionId?: string; expectedDuration?: number; progressPercentage: number; isWorkflowCritical: boolean; extendedTimeoutUntil?: Date; gracePeriodCount: number; metadata: { workflowPhase?: WorkflowPhase; taskCount?: number; estimatedCompletion?: Date; lastActivityUpdate?: Date; [key: string]: unknown; }; } export interface WorkflowTimeoutConfig { baseHeartbeatInterval: number; activityTimeoutMultipliers: Record<AgentActivity, number>; maxGracePeriods: number; gracePeriodDuration: number; progressUpdateInterval: number; workflowCriticalExtension: number; enableAdaptiveTimeouts: boolean; } export declare class WorkflowAwareAgentManager extends EventEmitter { private static instance; private config; private agentStates; private agentOrchestrator; private workflowStateManager; private decompositionService; private monitoringInterval; private isMonitoring; private startTime; private constructor(); private scheduleAsyncInitialization; private initializeDecompositionService; private getAgentOrchestrator; static getInstance(config?: Partial<WorkflowTimeoutConfig>): WorkflowAwareAgentManager; startMonitoring(): Promise<void>; stopMonitoring(): Promise<void>; registerAgentActivity(agentId: string, activity: AgentActivity, options?: { workflowId?: string; sessionId?: string; expectedDuration?: number; isWorkflowCritical?: boolean; metadata?: Record<string, unknown>; }): Promise<void>; updateAgentProgress(agentId: string, progressPercentage: number, metadata?: Record<string, unknown>): Promise<void>; completeAgentActivity(agentId: string, success?: boolean, metadata?: Record<string, unknown>): Promise<void>; getAgentState(agentId: string): WorkflowAwareAgentState | undefined; getAllAgentStates(): WorkflowAwareAgentState[]; getWorkflowAwareStats(): { totalAgents: number; activeWorkflows: number; agentsByActivity: Record<AgentActivity, number>; criticalAgents: number; agentsInGracePeriod: number; averageProgress: number; }; private setupEventListeners; private performWorkflowAwareHealthCheck; private shouldMarkAgentOffline; private calculateActivityTimeout; private adjustTimeoutBasedOnProgress; private handleAgentTimeout; private handleWorkflowPhaseChange; private handleWorkflowProgressUpdate; private handleDecompositionStarted; private handleDecompositionProgress; private handleDecompositionCompleted; private handleDecompositionFailed; private handleEpicGenerationStarted; private handleEpicGenerationCompleted; private handleTaskListStarted; private handleTaskListCompleted; dispose(): void; } //# sourceMappingURL=workflow-aware-agent-manager.d.ts.map