UNPKG

stellar-cyber-mcp-agents

Version:

Model Context Protocol (MCP) server for Stellar Cyber security operations with specialized multi-agent analysis capabilities

46 lines 2.31 kB
import { EventEmitter } from 'eventemitter3'; import { AgentId, AgentMetadata, AgentRegistry, AgentCommunicationChannel, AgentLogger, AgentMetrics, AgentState, AgentHealth, AgentRequest, AgentResponse, AgentContext, AgentEventType, AgentStatus, RequestPriority, AgentLifecycle } from '../types/agent.js'; export declare abstract class BaseAgent extends EventEmitter implements AgentLifecycle { protected readonly metadata: AgentMetadata; protected readonly registry: AgentRegistry; protected readonly channel: AgentCommunicationChannel; protected readonly logger: AgentLogger; protected readonly metrics: AgentMetrics; protected state: AgentState; protected health: AgentHealth; protected startTime: Date; protected activeRequests: number; protected totalRequests: number; protected errors: number; protected heartbeatInterval?: NodeJS.Timeout; protected healthCheckInterval?: NodeJS.Timeout; constructor(metadata: AgentMetadata, registry: AgentRegistry, channel: AgentCommunicationChannel, logger: AgentLogger, metrics: AgentMetrics); initialize(): Promise<void>; start(): Promise<void>; stop(): Promise<void>; destroy(): Promise<void>; healthCheck(): Promise<AgentHealth>; protected abstract onInitialize(): Promise<void>; protected abstract onStart(): Promise<void>; protected abstract onStop(): Promise<void>; protected abstract onDestroy(): Promise<void>; protected abstract onHealthCheck(): Promise<AgentHealth>; protected abstract handleRequest(request: AgentRequest, context: AgentContext): Promise<any>; getId(): AgentId; getMetadata(): AgentMetadata; getState(): AgentState; getHealth(): AgentHealth; getUptime(): number; getStatus(): AgentStatus; protected setState(state: AgentState): void; protected setHealth(health: AgentHealth): void; protected emitEvent(type: AgentEventType, data: any): void; sendRequest(targetAgentId: AgentId, capability: string, payload: any, priority?: RequestPriority, timeout?: number): Promise<AgentResponse>; private handleIncomingRequest; private handleAgentEvent; private startHeartbeat; private startHealthChecks; private getStateValue; private getHealthValue; } //# sourceMappingURL=base-agent.d.ts.map