pdca
Version:
🎯 AI 驅動的 PDCA 多代理開發系統 - 智能循環控制 + 成本管理 + Token 優化 + 多 AI 引擎支援
71 lines • 1.85 kB
TypeScript
/**
* 通訊管理器
* 負責代理間的訊息傳遞和檔案系統 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