UNPKG

pdca

Version:

🎯 AI 驅動的 PDCA 多代理開發系統 - 智能循環控制 + 成本管理 + Token 優化 + 多 AI 引擎支援

71 lines 1.85 kB
/** * 通訊管理器 * 負責代理間的訊息傳遞和檔案系統 IPC */ import { EventEmitter } from 'events'; import { PDCAMessage, AgentRole } from './message-protocol.js'; export interface CommunicationConfig { baseDir: string; pollingInterval: number; messageRetention: number; } export declare class CommunicationManager extends EventEmitter { private config; private watchedFiles; private processedMessages; private messageQueue; constructor(config?: Partial<CommunicationConfig>); private initializeDirectories; /** * 發送訊息 */ sendMessage(message: PDCAMessage): Promise<void>; /** * 開始監聽訊息 */ startListening(agentRole: AgentRole | 'coordinator'): void; /** * 停止監聽 */ stopListening(): void; /** * 監聽目錄變化 */ private watchDirectory; /** * 掃描目錄中的訊息 */ private scanDirectory; /** * 移動訊息到已處理目錄 */ private moveToProcessed; /** * 清理過期訊息 */ private cleanupOldMessages; private cleanupDirectory; /** * 取得代理的未讀訊息 */ getUnreadMessages(agentRole: AgentRole | 'coordinator'): PDCAMessage[]; /** * 回覆訊息 */ replyToMessage(originalMessage: PDCAMessage, reply: Omit<PDCAMessage, 'id' | 'timestamp' | 'replyTo'>): Promise<void>; /** * 廣播訊息給所有代理 */ broadcastMessage(message: Omit<PDCAMessage, 'to'>): Promise<void>; /** * 取得通訊統計 */ getStatistics(): { totalSent: number; totalReceived: number; pendingMessages: number; processedMessages: number; }; } export default CommunicationManager; //# sourceMappingURL=communication-manager.d.ts.map