@loxia-labs/loxia-autopilot-one 1.0.13 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -3
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/agentActivityService.js +1 -0
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/index-CR8edPA3.js +348 -0
- package/web-ui/build/static/index-uN7nOVvZ.css +1 -0
- package/web-ui/build/static/index-DXN850Y2.js +0 -400
- package/web-ui/build/static/index-an-YRzUX.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x57911b=a0_0x46c7;(function(_0x485f69,_0x2adae6){const _0x15d587=a0_0x46c7,_0x425b6a=_0x485f69();while(!![]){try{const _0x4b5752=parseInt(_0x15d587(0x8f))/0x1+parseInt(_0x15d587(0xec))/0x2*(-parseInt(_0x15d587(0xd4))/0x3)+-parseInt(_0x15d587(0x8b))/0x4*(-parseInt(_0x15d587(0xc1))/0x5)+-parseInt(_0x15d587(0xca))/0x6+parseInt(_0x15d587(0xa3))/0x7+-parseInt(_0x15d587(0x110))/0x8+parseInt(_0x15d587(0x117))/0x9;if(_0x4b5752===_0x2adae6)break;else _0x425b6a['push'](_0x425b6a['shift']());}catch(_0x4ef699){_0x425b6a['push'](_0x425b6a['shift']());}}}(a0_0x365e,0x21b99));import{BaseTool}from'./baseTool.js';import{promises as a0_0x303c2a}from'fs';import a0_0x68cb5d from'path';function a0_0x46c7(_0x3a4861,_0x4a632c){_0x3a4861=_0x3a4861-0x7a;const _0x365e8f=a0_0x365e();let _0x46c7e7=_0x365e8f[_0x3a4861];if(a0_0x46c7['igbAuH']===undefined){var _0x1cb9ca=function(_0x4177f7){const _0x5b1c9b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x303c2a='',_0x68cb5d='';for(let _0x53eb0d=0x0,_0x884783,_0xab409d,_0x18fc29=0x0;_0xab409d=_0x4177f7['charAt'](_0x18fc29++);~_0xab409d&&(_0x884783=_0x53eb0d%0x4?_0x884783*0x40+_0xab409d:_0xab409d,_0x53eb0d++%0x4)?_0x303c2a+=String['fromCharCode'](0xff&_0x884783>>(-0x2*_0x53eb0d&0x6)):0x0){_0xab409d=_0x5b1c9b['indexOf'](_0xab409d);}for(let _0x3d3674=0x0,_0x112cf8=_0x303c2a['length'];_0x3d3674<_0x112cf8;_0x3d3674++){_0x68cb5d+='%'+('00'+_0x303c2a['charCodeAt'](_0x3d3674)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x68cb5d);};a0_0x46c7['vrcwDl']=_0x1cb9ca,a0_0x46c7['SKBNKL']={},a0_0x46c7['igbAuH']=!![];}const _0x52422d=_0x365e8f[0x0],_0x25bebd=_0x3a4861+_0x52422d,_0x1e9f4e=a0_0x46c7['SKBNKL'][_0x25bebd];return!_0x1e9f4e?(_0x46c7e7=a0_0x46c7['vrcwDl'](_0x46c7e7),a0_0x46c7['SKBNKL'][_0x25bebd]=_0x46c7e7):_0x46c7e7=_0x1e9f4e,_0x46c7e7;}import a0_0x53eb0d from'crypto';class AgentCommunicationTool extends BaseTool{constructor(_0x884783={}){const _0x9d95fa=a0_0x46c7;super(_0x9d95fa(0xe9),'Agent\x20Communication','communication'),this['config']={'maxConversationDepth':_0x884783[_0x9d95fa(0x81)]||0xa,'maxRecipientsPerMessage':_0x884783[_0x9d95fa(0x114)]||0x3,'maxAttachmentSize':_0x884783['maxAttachmentSize']||0xa*0x400*0x400,'maxAttachmentsPerMessage':_0x884783['maxAttachmentsPerMessage']||0x5,'conversationTimeout':_0x884783[_0x9d95fa(0x113)]||0x36ee80,'messageRetentionPeriod':_0x884783['messageRetentionPeriod']||0x5265c00,'enableBroadcast':_0x884783['enableBroadcast']||![],'storageDir':_0x884783[_0x9d95fa(0xb2)]||_0x9d95fa(0x8a)},this[_0x9d95fa(0x116)]=new Map(),this[_0x9d95fa(0x9a)]=new Map(),this['agentInboxes']=new Map(),this['agentConversations']=new Map(),this['conversationDepths']=new Map(),this[_0x9d95fa(0xad)]=new Map(),this[_0x9d95fa(0xa5)]=new Map(),this[_0x9d95fa(0xfb)]();}['getDescription'](){const _0x418c42=a0_0x46c7;return(_0x418c42(0x9c)+this['config']['maxConversationDepth']+'\x20replies\x20per\x20thread\x0a-\x20Max\x20'+this[_0x418c42(0xf8)][_0x418c42(0x114)]+_0x418c42(0xd3)+this['config'][_0x418c42(0x113)]/0xea60+_0x418c42(0xc2))['trim']();}['parseParameters'](_0xab409d){const _0x4810a5=a0_0x46c7;if(typeof _0xab409d==='object'&&_0xab409d!==null){if(_0xab409d['actions']&&Array[_0x4810a5(0xf1)](_0xab409d[_0x4810a5(0xdf)])&&_0xab409d[_0x4810a5(0xdf)][_0x4810a5(0x8e)]>0x0){const _0x18fc29=_0xab409d[_0x4810a5(0xdf)][0x0];return{'action':_0x18fc29[_0x4810a5(0x118)],..._0x18fc29};}else{if(_0xab409d['action']||_0xab409d[_0x4810a5(0x118)])return{'action':_0xab409d['action']||_0xab409d[_0x4810a5(0x118)],..._0xab409d};}return _0xab409d;}if(typeof _0xab409d===_0x4810a5(0xff)){if(_0xab409d[_0x4810a5(0x88)]()['startsWith']('{'))try{const _0x8eda8d=JSON['parse'](_0xab409d);return this[_0x4810a5(0x10b)](_0x8eda8d);}catch(_0x579fe6){}const _0x3d3674={},_0x112cf8=_0xab409d['match'](/<action[^>]*>([^<]+)<\/action>/);_0x112cf8&&(_0x3d3674[_0x4810a5(0xea)]=_0x112cf8[0x1]['trim']());const _0x4bcf4b=[_0x4810a5(0x10e),_0x4810a5(0xe0),'subject','message',_0x4810a5(0xf2),'priority','requires-reply','message-id',_0x4810a5(0xee),'include-low-priority','conversation-id','reason',_0x4810a5(0xb1)];for(const _0x4325c2 of _0x4bcf4b){const _0x5490e8=new RegExp('<'+_0x4325c2[_0x4810a5(0xae)]('-','\x5c-')+'[^>]*>(.*?)<\x5c/'+_0x4325c2['replace']('-','\x5c-')+'>','s'),_0x4d6e95=_0xab409d['match'](_0x5490e8);if(_0x4d6e95){let _0x2cefa2=_0x4d6e95[0x1][_0x4810a5(0x88)]();if(_0x2cefa2[_0x4810a5(0xc7)]('[')||_0x2cefa2['startsWith']('{')||_0x2cefa2===_0x4810a5(0x7f)||_0x2cefa2==='false')try{_0x2cefa2=JSON['parse'](_0x2cefa2);}catch{}const _0x13531e=_0x4325c2[_0x4810a5(0xae)](/-(.)/g,(_0x169a8f,_0x2faf89)=>_0x2faf89[_0x4810a5(0xe3)]());_0x3d3674[_0x13531e]=_0x2cefa2;}}const _0x59b764=_0xab409d['match'](/<action([^>]*)>([^<]+)<\/action>/);if(_0x59b764&&_0x59b764[0x1]){const _0x159be6=_0x59b764[0x1]['matchAll'](/([\w-]+)=["']([^"']+)["']/g);for(const _0x2e9932 of _0x159be6){const _0x3b8d73=_0x2e9932[0x1][_0x4810a5(0xae)](/-(.)/g,(_0x20c233,_0x52d90b)=>_0x52d90b[_0x4810a5(0xe3)]());_0x3d3674[_0x3b8d73]=_0x2e9932[0x2];}}return _0x3d3674;}return _0xab409d||{};}async[a0_0x57911b(0x103)](_0x3aafa2={},_0x4735a3={}){const _0x117f1b=a0_0x57911b,{action:_0x237747}=_0x3aafa2;if(!_0x237747)throw new Error(_0x117f1b(0x11a));const _0x38be96=_0x4735a3['agentId'];if(!_0x38be96)throw new Error(_0x117f1b(0x80));switch(_0x237747[_0x117f1b(0x84)]()){case _0x117f1b(0xe1):return await this[_0x117f1b(0xd5)](_0x38be96,_0x3aafa2,_0x4735a3);case _0x117f1b(0xa1):return await this[_0x117f1b(0x9b)](_0x38be96,_0x3aafa2,_0x4735a3);case'reply-to-message':return await this[_0x117f1b(0x98)](_0x38be96,_0x3aafa2,_0x4735a3);case'get-unreplied-messages':return await this['getUnrepliedMessages'](_0x38be96,_0x3aafa2,_0x4735a3);case _0x117f1b(0xde):return await this['markConversationEnded'](_0x38be96,_0x3aafa2,_0x4735a3);default:throw new Error(_0x117f1b(0xaa)+_0x237747);}}async[a0_0x57911b(0xd5)](_0x3211f1,_0x3f75e3,_0xb6a426){const _0x56bf4a=a0_0x57911b;try{const _0x10903a=_0xb6a426['agentPool'];if(!_0x10903a)throw new Error('Agent\x20pool\x20not\x20available\x20in\x20context');const _0x126dd7=await _0x10903a['listActiveAgents'](),_0x146493=_0x126dd7[_0x56bf4a(0xd1)](_0xfcf2b7=>_0xfcf2b7['id']!==_0x3211f1&&!_0xfcf2b7[_0x56bf4a(0xb3)])['map'](_0x508e78=>({'id':_0x508e78['id'],'name':_0x508e78['name'],'type':_0x508e78[_0x56bf4a(0x118)],'capabilities':_0x508e78[_0x56bf4a(0xc8)],'status':_0x508e78['status'],'messageStats':this[_0x56bf4a(0xa5)]['get'](_0x508e78['id'])||{'sent':0x0,'received':0x0},'activeConversations':(this['agentConversations'][_0x56bf4a(0x102)](_0x508e78['id'])||new Set())['size']}));return{'success':!![],'agents':_0x146493,'totalActive':_0x146493['length'],'timestamp':new Date()['toISOString']()};}catch(_0x1fe457){return{'success':![],'error':_0x1fe457['message']};}}async[a0_0x57911b(0x9b)](_0x272685,_0xda6fa1,_0x86837c){const _0x1e6c40=a0_0x57911b;try{const {recipient:_0xb0e7b9,recipients:_0x40be18,subject:_0x1eebf3,message:_0x25edeb,attachments:_0x3ae4d3,priority:priority='normal','requires-reply':requiresReply=![]}=_0xda6fa1;if(!_0x1eebf3||!_0x25edeb)throw new Error(_0x1e6c40(0xd6));const _0x5b4769=this[_0x1e6c40(0x109)](_0xb0e7b9,_0x40be18);if(_0x5b4769[_0x1e6c40(0x8e)]===0x0)throw new Error(_0x1e6c40(0x90));if(_0x5b4769[_0x1e6c40(0x8e)]>this['config'][_0x1e6c40(0x114)])throw new Error('Maximum\x20'+this[_0x1e6c40(0xf8)]['maxRecipientsPerMessage']+_0x1e6c40(0xef));const _0x3d04bf=_0x86837c[_0x1e6c40(0xe6)],_0x2019c8=await _0x3d04bf[_0x1e6c40(0xf6)](_0x272685);if(!_0x2019c8)throw new Error('Sender\x20agent\x20not\x20found');const _0x47295d=[];for(const _0x1d403d of _0x5b4769){const _0x3a21ca=await this[_0x1e6c40(0xa8)](_0x2019c8,_0x1d403d,_0x86837c);!_0x3a21ca[_0x1e6c40(0x10f)]&&_0x47295d['push']({'recipientId':_0x1d403d,'reason':_0x3a21ca[_0x1e6c40(0x10d)],'waitUntil':_0x3a21ca[_0x1e6c40(0xdb)]});}if(_0x47295d[_0x1e6c40(0x8e)]>0x0){const _0x5e2347=Math[_0x1e6c40(0xcf)](..._0x47295d[_0x1e6c40(0x93)](_0x25f077=>_0x25f077['waitUntil']||0x0)),_0x201023=new Date(_0x5e2347);await _0x3d04bf[_0x1e6c40(0xfa)](_0x272685,{'delayEndTime':_0x201023['toISOString']()});const _0x42d55d=Math[_0x1e6c40(0xc0)]((_0x5e2347-Date[_0x1e6c40(0x11d)]())/0x3e8);return{'success':!![],'delayed':!![],'delayUntil':_0x201023[_0x1e6c40(0xa6)](),'delaySeconds':_0x42d55d,'message':'Waiting\x20'+_0x42d55d+_0x1e6c40(0xd7),'blockedRecipients':_0x47295d['map'](_0x3a2915=>({'recipientId':_0x3a2915['recipientId'],'reason':_0x3a2915['reason']}))};}const _0x20b929={},_0x5a8b14=[];for(const _0x4f512b of _0x5b4769){const _0x5da4a4=await _0x3d04bf['getAgent'](_0x4f512b);!_0x5da4a4?_0x5a8b14['push'](_0x4f512b):_0x20b929[_0x4f512b]=_0x5da4a4[_0x1e6c40(0xba)];}if(_0x5a8b14['length']>0x0){const _0xb801c9=await _0x3d04bf[_0x1e6c40(0x7e)](),_0x142d4b=_0xb801c9['filter'](_0x3b9117=>_0x3b9117['id']!==_0x272685&&!_0x3b9117['isPaused'])[_0x1e6c40(0x93)](_0x599515=>'-\x20'+_0x599515[_0x1e6c40(0xba)]+_0x1e6c40(0xfe)+_0x599515['id']+')')[_0x1e6c40(0xd8)]('\x0a');return{'success':![],'error':'Recipient\x20agent(s)\x20not\x20found:\x20'+_0x5a8b14[_0x1e6c40(0xd8)](',\x20'),'suggestion':_0x1e6c40(0x105)+_0x142d4b,'availableAgents':_0xb801c9[_0x1e6c40(0x93)](_0x6320cb=>({'id':_0x6320cb['id'],'name':_0x6320cb[_0x1e6c40(0xba)],'capabilities':_0x6320cb[_0x1e6c40(0xc8)]}))};}const _0xcb29f1=_0x2019c8?_0x2019c8[_0x1e6c40(0xba)]:_0x272685,processedAttachments=await this[_0x1e6c40(0xcb)](_0x3ae4d3,_0x272685),_0x3e9795=this['_generateMessageId'](),_0x2885af=this['_generateConversationId'](),_0x242ba4=new Date()['toISOString'](),_0x44cbbc={'id':_0x3e9795,'conversationId':_0x2885af,'sender':_0x272685,'senderName':_0xcb29f1,'recipients':_0x5b4769,'recipientNames':_0x20b929,'subject':_0x1eebf3,'content':_0x25edeb,'attachments':processedAttachments,'priority':priority,'requiresReply':requiresReply,'timestamp':_0x242ba4,'status':'sent','replies':[],'metadata':{'depth':0x0,'isRoot':!![]}};this[_0x1e6c40(0x116)]['set'](_0x3e9795,_0x44cbbc),this['conversations'][_0x1e6c40(0x97)](_0x2885af,{'id':_0x2885af,'rootMessageId':_0x3e9795,'participants':[_0x272685,..._0x5b4769],'startTime':_0x242ba4,'lastActivity':_0x242ba4,'status':'active','messageCount':0x1});for(const _0x159ac3 of _0x5b4769){!this[_0x1e6c40(0xf0)]['has'](_0x159ac3)&&this['agentInboxes'][_0x1e6c40(0x97)](_0x159ac3,new Set()),this['agentInboxes']['get'](_0x159ac3)['add'](_0x3e9795),!this[_0x1e6c40(0x7b)][_0x1e6c40(0x92)](_0x159ac3)&&this[_0x1e6c40(0x7b)]['set'](_0x159ac3,new Set()),this['agentConversations'][_0x1e6c40(0x102)](_0x159ac3)['add'](_0x2885af);}!this['agentConversations']['has'](_0x272685)&&this[_0x1e6c40(0x7b)][_0x1e6c40(0x97)](_0x272685,new Set());this['agentConversations'][_0x1e6c40(0x102)](_0x272685)[_0x1e6c40(0xeb)](_0x2885af),this[_0x1e6c40(0x106)](_0x272685,_0x1e6c40(0x7a));for(const _0x25acda of _0x5b4769){this['_updateMessageCounts'](_0x25acda,'received');}for(const _0x86842b of _0x5b4769){await this[_0x1e6c40(0xbd)](_0x272685,_0x86842b,'sent',_0x86837c);}return await this['_notifyRecipients'](_0x44cbbc,_0x86837c),await this[_0x1e6c40(0xab)](_0x44cbbc,_0x1e6c40(0xe8),_0x86837c),{'success':!![],'messageId':_0x3e9795,'conversationId':_0x2885af,'recipients':_0x5b4769,'timestamp':_0x242ba4,'message':'Message\x20sent\x20successfully'};}catch(_0xb07913){return{'success':![],'error':_0xb07913[_0x1e6c40(0xa7)]};}}async[a0_0x57911b(0x98)](_0xe849fc,_0x47ad30,_0x542a4c){const _0x589082=a0_0x57911b;try{const {'message-id':_0x5e2152,message:_0x67286,'cc-recipients':_0x3cb5bb,attachments:_0x1f58d5,'mark-resolved':_0x5121be=![]}=_0x47ad30;if(!_0x5e2152||!_0x67286)throw new Error(_0x589082(0xe2));const _0x4702af=this[_0x589082(0x116)][_0x589082(0x102)](_0x5e2152);if(!_0x4702af)throw new Error(_0x589082(0xf7)+_0x5e2152);const _0x17a61c=_0x4702af['sender']===_0xe849fc||_0x4702af[_0x589082(0xe0)][_0x589082(0x7d)](_0xe849fc);if(!_0x17a61c)throw new Error(_0x589082(0xd9));const _0x17e70c=this[_0x589082(0x9a)]['get'](_0x4702af[_0x589082(0xc6)]),_0x17f3fd=this[_0x589082(0xed)](_0x4702af['conversationId']);if(_0x17f3fd>=this['config']['maxConversationDepth'])return{'success':![],'error':'Conversation\x20depth\x20limit\x20reached\x20('+this[_0x589082(0xf8)]['maxConversationDepth']+_0x589082(0xda),'suggestion':_0x589082(0x95)};let _0x2f2fc0=[_0x4702af[_0x589082(0x8d)]];_0x4702af[_0x589082(0x8d)]===_0xe849fc&&(_0x2f2fc0=_0x4702af[_0x589082(0xe0)]);if(_0x3cb5bb){const _0x4af861=this[_0x589082(0x109)](null,_0x3cb5bb);_0x2f2fc0=[...new Set([..._0x2f2fc0,..._0x4af861])];}_0x2f2fc0=_0x2f2fc0[_0x589082(0xd1)](_0xd8baf7=>_0xd8baf7!==_0xe849fc);if(_0x2f2fc0[_0x589082(0x8e)]>this[_0x589082(0xf8)][_0x589082(0x114)])throw new Error('Maximum\x20'+this[_0x589082(0xf8)]['maxRecipientsPerMessage']+_0x589082(0xef));const _0x238c3f=_0x542a4c['agentPool'],_0x4d39e8=await _0x238c3f['getAgent'](_0xe849fc),_0x493406=_0x4d39e8?_0x4d39e8[_0x589082(0xba)]:_0xe849fc,_0x4d8d42={};for(const _0x4945e4 of _0x2f2fc0){const _0x28938f=await _0x238c3f[_0x589082(0xf6)](_0x4945e4);_0x28938f&&(_0x4d8d42[_0x4945e4]=_0x28938f['name']);}const processedAttachments=await this[_0x589082(0xcb)](_0x1f58d5,_0xe849fc),_0x1ac7ea=this[_0x589082(0xbe)](),_0x2bbe96=new Date()[_0x589082(0xa6)](),_0x5ebb7a={'id':_0x1ac7ea,'conversationId':_0x4702af[_0x589082(0xc6)],'sender':_0xe849fc,'senderName':_0x493406,'recipients':_0x2f2fc0,'recipientNames':_0x4d8d42,'subject':_0x589082(0xb8)+_0x4702af[_0x589082(0xac)],'content':_0x67286,'attachments':processedAttachments,'priority':_0x4702af[_0x589082(0x9f)],'requiresReply':!_0x5121be,'timestamp':_0x2bbe96,'status':'sent','replies':[],'metadata':{'depth':_0x17f3fd+0x1,'isRoot':![],'inReplyTo':_0x5e2152}};this[_0x589082(0x116)][_0x589082(0x97)](_0x1ac7ea,_0x5ebb7a),_0x4702af[_0x589082(0xcc)][_0x589082(0xb6)](_0x1ac7ea),_0x17e70c[_0x589082(0x82)]=_0x2bbe96,_0x17e70c[_0x589082(0x100)]++;_0x5121be&&(_0x17e70c[_0x589082(0xfc)]='resolved');for(const _0x558e7f of _0x2f2fc0){!this['agentInboxes'][_0x589082(0x92)](_0x558e7f)&&this['agentInboxes'][_0x589082(0x97)](_0x558e7f,new Set()),this['agentInboxes']['get'](_0x558e7f)[_0x589082(0xeb)](_0x1ac7ea);}this['_updateMessageCounts'](_0xe849fc,_0x589082(0x7a));for(const _0x4753f0 of _0x2f2fc0){this[_0x589082(0x106)](_0x4753f0,'received');}for(const _0x1fb198 of _0x2f2fc0){await this[_0x589082(0xbd)](_0xe849fc,_0x1fb198,'replied',_0x542a4c);}return await this[_0x589082(0x83)](_0x5ebb7a,_0x542a4c),await this[_0x589082(0xab)](_0x5ebb7a,'agent-message-reply',_0x542a4c),{'success':!![],'messageId':_0x1ac7ea,'conversationId':_0x4702af['conversationId'],'recipients':_0x2f2fc0,'depth':_0x17f3fd+0x1,'timestamp':_0x2bbe96,'conversationStatus':_0x17e70c['status']};}catch(_0x4b73b0){return{'success':![],'error':_0x4b73b0[_0x589082(0xa7)]};}}async['getUnrepliedMessages'](_0x5e9ac2,_0x5ebc05,_0x334b87){const _0x3288d8=a0_0x57911b;try{const {'include-low-priority':_0x305a72=![],'max-age-hours':_0xd2f6f5=0x18}=_0x5ebc05,_0x4727be=this['agentInboxes'][_0x3288d8(0x102)](_0x5e9ac2)||new Set(),_0x378687=[],_0x2ceeb0=Date[_0x3288d8(0x11d)]()-_0xd2f6f5*0x36ee80;for(const _0x4ce9ca of _0x4727be){const _0x4846f7=this['messages'][_0x3288d8(0x102)](_0x4ce9ca);if(!_0x4846f7)continue;if(new Date(_0x4846f7[_0x3288d8(0xb4)])[_0x3288d8(0x8c)]()<_0x2ceeb0)continue;if(_0x4846f7[_0x3288d8(0x9f)]==='low'&&!_0x305a72)continue;if(_0x4846f7[_0x3288d8(0xbf)]){const _0x5033c6=this[_0x3288d8(0xdc)](_0x5e9ac2,_0x4846f7);if(!_0x5033c6){const _0x552adb=this['conversations']['get'](_0x4846f7['conversationId']);_0x378687[_0x3288d8(0xb6)]({'messageId':_0x4846f7['id'],'conversationId':_0x4846f7[_0x3288d8(0xc6)],'sender':_0x4846f7['sender'],'subject':_0x4846f7['subject'],'preview':_0x4846f7[_0x3288d8(0xc9)][_0x3288d8(0xf3)](0x0,0x64)+'...','priority':_0x4846f7['priority'],'timestamp':_0x4846f7[_0x3288d8(0xb4)],'hasAttachments':_0x4846f7['attachments'][_0x3288d8(0x8e)]>0x0,'conversationStatus':_0x552adb?.['status']||'unknown','depth':_0x4846f7['metadata'][_0x3288d8(0x94)]});}}}return _0x378687[_0x3288d8(0xc4)]((_0x4607f2,_0x5424d6)=>{const _0x2bb0b2=_0x3288d8,_0x14267d={'high':0x0,'normal':0x1,'low':0x2},_0x27847a=_0x14267d[_0x4607f2['priority']]-_0x14267d[_0x5424d6['priority']];if(_0x27847a!==0x0)return _0x27847a;return new Date(_0x5424d6[_0x2bb0b2(0xb4)])-new Date(_0x4607f2[_0x2bb0b2(0xb4)]);}),{'success':!![],'messages':_0x378687,'total':_0x378687['length'],'inbox':{'total':_0x4727be[_0x3288d8(0xcd)],'activeConversations':(this['agentConversations'][_0x3288d8(0x102)](_0x5e9ac2)||new Set())['size']}};}catch(_0x15347f){return{'success':![],'error':_0x15347f[_0x3288d8(0xa7)]};}}async['markConversationEnded'](_0xd1781f,_0x525160,_0x54b9e6){const _0x2b3e51=a0_0x57911b;try{const {'conversation-id':_0x226992,reason:reason='Conversation\x20ended\x20by\x20agent'}=_0x525160;if(!_0x226992)throw new Error('Conversation\x20ID\x20is\x20required');const _0x410319=this['conversations'][_0x2b3e51(0x102)](_0x226992);if(!_0x410319)throw new Error('Conversation\x20not\x20found:\x20'+_0x226992);if(!_0x410319['participants']['includes'](_0xd1781f))throw new Error(_0x2b3e51(0xd9));_0x410319[_0x2b3e51(0xfc)]=_0x2b3e51(0x91),_0x410319['endTime']=new Date()[_0x2b3e51(0xa6)](),_0x410319['endReason']=reason,_0x410319[_0x2b3e51(0x107)]=_0xd1781f;for(const _0x4e022d of _0x410319['participants']){const _0x35dbd3=this['agentConversations']['get'](_0x4e022d);_0x35dbd3&&_0x35dbd3['delete'](_0x226992);}return{'success':!![],'conversationId':_0x226992,'status':_0x2b3e51(0x91),'reason':reason,'timestamp':_0x410319['endTime']};}catch(_0x202ff8){return{'success':![],'error':_0x202ff8[_0x2b3e51(0xa7)]};}}async[a0_0x57911b(0xfb)](){const _0x1bab43=a0_0x57911b;try{await a0_0x303c2a['mkdir'](this['config']['storageDir'],{'recursive':!![]});const _0x39eb44=a0_0x68cb5d[_0x1bab43(0xd8)](this['config'][_0x1bab43(0xb2)],_0x1bab43(0xf2));await a0_0x303c2a['mkdir'](_0x39eb44,{'recursive':!![]});}catch(_0x27a459){console['error']('Failed\x20to\x20initialize\x20message\x20storage:',_0x27a459);}}['_parseRecipients'](_0x242629,_0x4e640a){const _0x264a65=a0_0x57911b;let _0x3ac5f1=[];_0x242629&&_0x3ac5f1['push'](_0x242629);if(_0x4e640a){if(typeof _0x4e640a===_0x264a65(0xff))try{const _0x6e21c4=JSON['parse'](_0x4e640a);_0x3ac5f1=[..._0x3ac5f1,...Array[_0x264a65(0xf1)](_0x6e21c4)?_0x6e21c4:[_0x6e21c4]];}catch{_0x3ac5f1['push'](_0x4e640a);}else Array[_0x264a65(0xf1)](_0x4e640a)&&(_0x3ac5f1=[..._0x3ac5f1,..._0x4e640a]);}return[...new Set(_0x3ac5f1)];}async['_processAttachments'](_0x1bbbe2,_0x573406){const _0xbb1f9f=a0_0x57911b;if(!_0x1bbbe2)return[];let _0x50dc7a=[];if(typeof _0x1bbbe2===_0xbb1f9f(0xff))try{_0x50dc7a=JSON[_0xbb1f9f(0xbc)](_0x1bbbe2);}catch{return[];}else _0x50dc7a=_0x1bbbe2;!Array['isArray'](_0x50dc7a)&&(_0x50dc7a=[_0x50dc7a]);if(_0x50dc7a[_0xbb1f9f(0x8e)]>this[_0xbb1f9f(0xf8)][_0xbb1f9f(0x101)])throw new Error('Maximum\x20'+this[_0xbb1f9f(0xf8)]['maxAttachmentsPerMessage']+'\x20attachments\x20allowed');const processedAttachments=[];for(const _0x17d0f9 of _0x50dc7a){if(!_0x17d0f9[_0xbb1f9f(0x10c)])continue;try{const _0x50ca7e=await a0_0x303c2a['stat'](_0x17d0f9[_0xbb1f9f(0x10c)]);if(_0x50ca7e['size']>this[_0xbb1f9f(0xf8)]['maxAttachmentSize'])throw new Error(_0xbb1f9f(0x96)+_0x17d0f9['path']);const _0x528cbe=this[_0xbb1f9f(0x111)](),_0x2f1820=a0_0x68cb5d['extname'](_0x17d0f9['path']),_0x2e8648=a0_0x68cb5d['join'](this['config']['storageDir'],'attachments',''+_0x528cbe+_0x2f1820);await a0_0x303c2a[_0xbb1f9f(0xd2)](_0x17d0f9['path'],_0x2e8648),processedAttachments['push']({'id':_0x528cbe,'originalPath':_0x17d0f9[_0xbb1f9f(0x10c)],'storagePath':_0x2e8648,'type':_0x17d0f9[_0xbb1f9f(0x118)]||_0xbb1f9f(0xd0),'size':_0x50ca7e['size'],'name':a0_0x68cb5d[_0xbb1f9f(0xe5)](_0x17d0f9['path'])});}catch(_0x325b11){console['error']('Failed\x20to\x20process\x20attachment:\x20'+_0x17d0f9[_0xbb1f9f(0x10c)],_0x325b11);}}return processedAttachments;}async[a0_0x57911b(0x83)](_0x50b6f8,_0x298d64){const _0x40a518=a0_0x57911b,_0xa5ddc0=_0x298d64[_0x40a518(0xe6)];if(!_0xa5ddc0)return;for(const _0x1b16b6 of _0x50b6f8[_0x40a518(0xe0)]){try{await _0xa5ddc0['notifyAgent'](_0x1b16b6,{'type':'agent-communication','from':_0x50b6f8[_0x40a518(0x8d)],'conversationId':_0x50b6f8[_0x40a518(0xc6)],'content':'📨\x20New\x20message\x20from\x20'+_0x50b6f8['senderName']+':\x20\x22'+_0x50b6f8['subject']+'\x22','messageId':_0x50b6f8['id'],'priority':_0x50b6f8['priority'],'requiresResponse':_0x50b6f8['requiresReply']});const _0x1e25ff=await _0xa5ddc0['getAgent'](_0x1b16b6);if(_0x1e25ff){const _0x534c3b=_0x40a518(0x104)+_0x50b6f8['senderName']+'\x20('+_0x50b6f8['sender']+')\x0a**Subject:**\x20'+_0x50b6f8[_0x40a518(0xac)]+'\x0a**Priority:**\x20'+_0x50b6f8[_0x40a518(0x9f)]+'\x0a**Requires\x20Reply:**\x20'+(_0x50b6f8['requiresReply']?'Yes':'No')+'\x0a\x0a**Message:**\x0a'+_0x50b6f8['content']+'\x0a\x0a'+(_0x50b6f8[_0x40a518(0xf2)]['length']>0x0?'**Attachments:**\x20'+_0x50b6f8[_0x40a518(0xf2)][_0x40a518(0x8e)]+_0x40a518(0x7c):'')+'\x0a\x0a*You\x20can\x20reply\x20using\x20the\x20agentcommunication\x20tool\x20with\x20action=\x22reply-to-message\x22\x20and\x20message-id=\x22'+_0x50b6f8['id']+'\x22*',_0x4e35cd={'id':'agent-comm-'+_0x50b6f8['id'],'conversationId':_0x50b6f8[_0x40a518(0xc6)],'agentId':_0x50b6f8['sender'],'content':_0x534c3b,'role':_0x40a518(0xf4),'timestamp':_0x50b6f8['timestamp'],'type':_0x40a518(0xf9),'metadata':{'originalMessageId':_0x50b6f8['id'],'fromAgent':_0x50b6f8['sender'],'requiresResponse':_0x50b6f8['requiresReply'],'priority':_0x50b6f8['priority']}};_0x1e25ff['conversations']['full'][_0x40a518(0x116)]['push'](_0x4e35cd),_0x1e25ff[_0x40a518(0x9a)][_0x40a518(0x9d)]['lastUpdated']=new Date()[_0x40a518(0xa6)](),_0x1e25ff['currentModel']&&_0x1e25ff['conversations'][_0x1e25ff[_0x40a518(0x108)]]&&(_0x1e25ff['conversations'][_0x1e25ff['currentModel']]['messages']['push'](_0x4e35cd),_0x1e25ff[_0x40a518(0x9a)][_0x1e25ff['currentModel']][_0x40a518(0xb7)]=new Date()[_0x40a518(0xa6)]()),await _0xa5ddc0['persistAgentState'](_0x1b16b6),console[_0x40a518(0xa2)](_0x40a518(0x89),{'recipientId':_0x1b16b6,'sender':_0x50b6f8[_0x40a518(0x8d)],'subject':_0x50b6f8['subject'],'hasSessionId':!!_0x298d64[_0x40a518(0x11c)]}),await _0xa5ddc0[_0x40a518(0xdd)](_0x1b16b6,{'id':_0x50b6f8['id'],'messageId':_0x50b6f8['id'],'sender':_0x50b6f8[_0x40a518(0x8d)],'senderName':_0x50b6f8['senderName'],'subject':_0x50b6f8[_0x40a518(0xac)],'content':_0x50b6f8['content'],'attachments':_0x50b6f8['attachments'],'priority':_0x50b6f8[_0x40a518(0x9f)],'requiresReply':_0x50b6f8['requiresReply'],'conversationId':_0x50b6f8[_0x40a518(0xc6)],'sessionId':_0x298d64[_0x40a518(0x11c)],'timestamp':new Date()[_0x40a518(0xa6)]()}),console[_0x40a518(0xa2)](_0x40a518(0xe4)+_0x1b16b6,{'messageId':_0x50b6f8['id'],'fromAgent':_0x50b6f8[_0x40a518(0x8d)],'subject':_0x50b6f8['subject'],'priority':_0x50b6f8[_0x40a518(0x9f)]});}}catch(_0x5e42b2){console[_0x40a518(0xa0)]('Failed\x20to\x20notify\x20agent\x20'+_0x1b16b6+':',_0x5e42b2);}}}[a0_0x57911b(0xdc)](_0x344e29,_0x1024cc){const _0x32b10a=a0_0x57911b;for(const _0x51ffa8 of _0x1024cc['replies']){const _0xa5a4d0=this[_0x32b10a(0x116)][_0x32b10a(0x102)](_0x51ffa8);if(_0xa5a4d0&&_0xa5a4d0[_0x32b10a(0x8d)]===_0x344e29)return!![];if(_0xa5a4d0&&this[_0x32b10a(0xdc)](_0x344e29,_0xa5a4d0))return!![];}return![];}[a0_0x57911b(0xed)](_0x271fbd){const _0x2e6403=a0_0x57911b,_0x806d1e=this['conversations'][_0x2e6403(0x102)](_0x271fbd);if(!_0x806d1e)return 0x0;let _0xd10141=0x0;const _0x1e0c7f=this['messages'][_0x2e6403(0x102)](_0x806d1e[_0x2e6403(0xe7)]);return _0x1e0c7f&&(_0xd10141=this['_getMessageDepth'](_0x1e0c7f)),_0xd10141;}['_getMessageDepth'](_0x489edc,_0x379960=0x0){const _0x4a5e00=a0_0x57911b;if(_0x489edc['replies'][_0x4a5e00(0x8e)]===0x0)return _0x379960;let _0x570961=_0x379960;for(const _0x1dc8a4 of _0x489edc['replies']){const _0x4701d6=this[_0x4a5e00(0x116)]['get'](_0x1dc8a4);if(_0x4701d6){const _0x36dd0c=this[_0x4a5e00(0x115)](_0x4701d6,_0x379960+0x1);_0x570961=Math[_0x4a5e00(0xcf)](_0x570961,_0x36dd0c);}}return _0x570961;}['_updateMessageCounts'](_0xadc359,_0x2c4e94){const _0x24f033=a0_0x57911b;!this[_0x24f033(0xa5)]['has'](_0xadc359)&&this['agentMessageCounts']['set'](_0xadc359,{'sent':0x0,'received':0x0});const _0x55f41a=this[_0x24f033(0xa5)]['get'](_0xadc359);_0x2c4e94==='sent'?_0x55f41a[_0x24f033(0x7a)]++:_0x55f41a['received']++;}['_generateMessageId'](){const _0x53b9f6=a0_0x57911b;return'msg-'+Date['now']()+'-'+a0_0x53eb0d['randomBytes'](0x4)['toString'](_0x53b9f6(0x87));}[a0_0x57911b(0x11b)](){const _0x18042c=a0_0x57911b;return'conv-'+Date[_0x18042c(0x11d)]()+'-'+a0_0x53eb0d['randomBytes'](0x4)[_0x18042c(0x99)](_0x18042c(0x87));}[a0_0x57911b(0x111)](){const _0x5476a4=a0_0x57911b;return'att-'+Date['now']()+'-'+a0_0x53eb0d['randomBytes'](0x4)[_0x5476a4(0x99)]('hex');}async['cleanup'](){const _0x18f528=a0_0x57911b,_0x60e3d8=Date[_0x18f528(0x11d)](),_0x53a50a=_0x60e3d8-this['config'][_0x18f528(0xa9)];for(const [_0x4d1707,_0x1162ab]of this['messages'][_0x18f528(0x112)]()){const _0x55ea73=new Date(_0x1162ab['timestamp'])['getTime']();if(_0x55ea73<_0x53a50a){for(const _0x54befd of _0x1162ab[_0x18f528(0xf2)]){try{await a0_0x303c2a['unlink'](_0x54befd[_0x18f528(0xfd)]);}catch(_0x4793a5){}}for(const [_0x33d622,_0x1562bb]of this['agentInboxes'][_0x18f528(0x112)]()){_0x1562bb['delete'](_0x4d1707);}this['messages']['delete'](_0x4d1707);}}for(const [_0x3c903b,_0x3cf428]of this['conversations']['entries']()){const _0x47d078=new Date(_0x3cf428[_0x18f528(0x82)])[_0x18f528(0x8c)]();if(_0x47d078<_0x53a50a||_0x3cf428[_0x18f528(0xfc)]==='ended'){for(const [_0x268692,_0x308c34]of this['agentConversations'][_0x18f528(0x112)]()){_0x308c34[_0x18f528(0x119)](_0x3c903b);}this[_0x18f528(0x9a)]['delete'](_0x3c903b);}}}async[a0_0x57911b(0xab)](_0x2e2fbe,_0x501463,_0x4f21e1){const _0x47aa76=a0_0x57911b;try{const _0x4b49e3={'type':_0x47aa76(0xf9),'eventType':_0x501463,'timestamp':_0x2e2fbe['timestamp'],'messageId':_0x2e2fbe['id'],'conversationId':_0x2e2fbe[_0x47aa76(0xc6)],'sender':{'id':_0x2e2fbe['sender'],'name':_0x2e2fbe['senderName']},'recipients':Object['entries'](_0x2e2fbe[_0x47aa76(0xb5)]||{})['map'](([_0x29bd36,_0x3e306a])=>({'id':_0x29bd36,'name':_0x3e306a})),'subject':_0x2e2fbe['subject'],'content':_0x2e2fbe['content'],'priority':_0x2e2fbe[_0x47aa76(0x9f)],'requiresReply':_0x2e2fbe['requiresReply'],'hasAttachments':_0x2e2fbe['attachments']&&_0x2e2fbe[_0x47aa76(0xf2)]['length']>0x0,'attachmentCount':_0x2e2fbe['attachments']?_0x2e2fbe[_0x47aa76(0xf2)][_0x47aa76(0x8e)]:0x0,'metadata':_0x2e2fbe['metadata']};if(_0x4f21e1[_0x47aa76(0xe6)]&&_0x4f21e1['agentPool'][_0x47aa76(0x9e)]){const _0x2442b1=_0x4f21e1['agentPool']['messageProcessor'];if(_0x2442b1&&_0x2442b1[_0x47aa76(0xa4)]&&_0x2442b1[_0x47aa76(0xa4)]['webServer']){_0x2442b1[_0x47aa76(0xa4)]['webServer']['broadcastToSession'](_0x4f21e1['sessionId']||'web-session',{'type':_0x47aa76(0xf9),'action':'agent-communication','data':_0x4b49e3});return;}}if(_0x4f21e1['orchestrator']&&_0x4f21e1[_0x47aa76(0xa4)]['webServer']){_0x4f21e1['orchestrator']['webServer']['broadcastToSession'](_0x4f21e1[_0x47aa76(0x11c)]||'web-session',{'type':_0x47aa76(0xf9),'action':'agent-communication','data':_0x4b49e3});return;}global['loxiaWebServer']&&global[_0x47aa76(0x10a)]['broadcastToSession'](_0x4f21e1['sessionId']||_0x47aa76(0xce),{'type':'agent-communication','action':'agent-communication','data':_0x4b49e3});}catch(_0x16b664){console[_0x47aa76(0xa0)](_0x47aa76(0xf5),_0x16b664);}}async['_canSendMessage'](_0x1fda9d,_0x2e219f,_0x1ba626){const _0x4d865b=a0_0x57911b,_0x4da3cf=_0x1ba626['agentPool'],_0x358505=_0x1fda9d['interAgentTracking'];!_0x358505['has'](_0x2e219f)&&_0x358505['set'](_0x2e219f,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x54713f=_0x358505[_0x4d865b(0x102)](_0x2e219f),_0x1d2985=Date['now'](),_0x4fbf85=0x3c*0x3e8;if(_0x54713f[_0x4d865b(0xaf)]===_0x4d865b(0xb9)||_0x54713f[_0x4d865b(0xc3)]&&_0x54713f[_0x4d865b(0xc3)]>_0x54713f['lastSent'])return{'allowed':!![]};if(_0x54713f[_0x4d865b(0xbb)]){const _0x2463f8=_0x1d2985-_0x54713f[_0x4d865b(0xbb)];if(_0x2463f8>=_0x4fbf85)return{'allowed':!![]};const _0x59e03a=_0x54713f['lastSent']+_0x4fbf85;return{'allowed':![],'reason':'Must\x20wait\x20'+Math['ceil']((_0x59e03a-_0x1d2985)/0x3e8)+_0x4d865b(0x86),'waitUntil':_0x59e03a};}return{'allowed':!![]};}async[a0_0x57911b(0xbd)](_0x2f4165,_0x148498,_0x48f7c6,_0x475bd5){const _0x5f5788=a0_0x57911b,_0x165bec=_0x475bd5[_0x5f5788(0xe6)],_0x210bfc=await _0x165bec['getAgent'](_0x2f4165);if(!_0x210bfc)return;const _0x4d5dfc=Date[_0x5f5788(0x11d)]();!_0x210bfc['interAgentTracking'][_0x5f5788(0x92)](_0x148498)&&_0x210bfc['interAgentTracking']['set'](_0x148498,{'lastSent':null,'lastReceived':null,'lastType':null});const _0xd3aac5=_0x210bfc['interAgentTracking']['get'](_0x148498);if(_0x48f7c6===_0x5f5788(0x7a))_0xd3aac5['lastSent']=_0x4d5dfc,_0xd3aac5[_0x5f5788(0xaf)]='sent';else _0x48f7c6==='replied'&&(_0xd3aac5['lastSent']=_0x4d5dfc,_0xd3aac5[_0x5f5788(0xaf)]='sent');const _0x1fc189=await _0x165bec[_0x5f5788(0xf6)](_0x148498);if(_0x1fc189){!_0x1fc189['interAgentTracking'][_0x5f5788(0x92)](_0x2f4165)&&_0x1fc189['interAgentTracking']['set'](_0x2f4165,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x200a1a=_0x1fc189[_0x5f5788(0xc5)]['get'](_0x2f4165);_0x200a1a['lastReceived']=_0x4d5dfc,_0x200a1a[_0x5f5788(0xaf)]=_0x5f5788(0xb9),await _0x165bec[_0x5f5788(0xb0)](_0x148498);}await _0x165bec['persistAgentState'](_0x2f4165);}[a0_0x57911b(0x85)](_0x1889fc){const _0x426486=a0_0x57911b;this[_0x426486(0x9e)]=_0x1889fc;}}function a0_0x365e(){const _0x1e08c0=['Dg9ju09tDhjPBMC','BwvZC2fNzq','x2nHBLnLBMrnzxnZywDL','BwvZC2fNzvjLDgvUDgLVBLbLCMLVza','vw5RBM93BIbHy3rPB246ia','x2jYB2fKy2fZDfrVvuK','C3vIAMvJDa','BgfZDefJDgL2Axr5vgLTzxm','CMvWBgfJzq','BgfZDfr5Cgu','CgvYC2LZDefNzw50u3rHDgu','BwfYAY1YzxnVBhzLza','C3rVCMfNzurPCG','AxnqyxvZzwq','DgLTzxn0yw1W','CMvJAxbPzw50tMfTzxm','ChvZAa','BgfZDfvWzgf0zwq','uMu6ia','CMvJzwL2zwq','BMfTzq','BgfZDfnLBNq','CgfYC2u','x3vWzgf0zunVBNzLCNnHDgLVBLrYywnRAw5N','x2DLBMvYyxrLtwvZC2fNzuLK','CMvXDwLYzxnszxbSEq','y2vPBa','nde1vgH2qNvP','ig1PBNv0zxmk','BgfZDfjLy2vPDMvK','C29YDa','Aw50zxjbz2vUDfrYywnRAw5N','y29UDMvYC2f0Aw9Uswq','C3rHCNrZv2L0Aa','y2fWywjPBgL0AwvZ','y29UDgvUDa','ndK4nJKWEMn1ywTp','x3bYB2nLC3nbDhrHy2HTzw50CW','CMvWBgLLCW','C2L6zq','D2vIlxnLC3nPB24','Bwf4','zMLSzq','zMLSDgvY','y29WEuzPBgu','ihjLy2LWAwvUDhmGCgvYig1LC3nHz2uklsbdB252zxjZyxrPB25Zigv4CgLYzsbHzNrLCIa','mtK4Du1zwuXJ','z2v0qxzHAwXHyMXLqwDLBNrZ','u3vIAMvJDcbHBMqGBwvZC2fNzsbHCMuGCMvXDwLYzwq','CYbIzwzVCMuGBMv4DcbTzxnZywDLlIbszwnPCgLLBNrZig5LzwqGDgLTzsb0BYbYzxnWB25KlG','AM9PBG','ww91igfYzsbUB3qGysbWyxj0AwnPCgfUDcbPBIb0AgLZignVBNzLCNnHDgLVBG','ks4GugXLyxnLihn0yxj0igeGBMv3ignVBNzLCNnHDgLVBI4','D2fPDfvUDgLS','x2HHC0fNzw50uMvWBgLLza','ywrKsw50zxjbz2vUDe1LC3nHz2u','BwfYAY1JB252zxjZyxrPB24Tzw5Kzwq','ywn0Aw9UCW','CMvJAxbPzw50CW','z2v0lwf2ywLSywjSzs1Hz2vUDhm','t3jPz2LUywWGBwvZC2fNzsbjrcbHBMqGCMvWBhKGy29UDgvUDcbHCMuGCMvXDwLYzwq','Dg9vChbLCKnHC2u','rgLYzwn0ig1LC3nHz2uGAw5Qzwn0zwqGyw5Kihf1zxvLzcbMB3iGChjVy2vZC2LUzZOG','yMfZzw5HBwu','ywDLBNrqB29S','CM9VDe1LC3nHz2vjza','ywDLBNqTBwvZC2fNzs1Zzw50','ywDLBNrJB21TDw5Py2f0Aw9U','ywn0Aw9U','ywrK','nJaXngr3sujcCG','x2DLDenVBNzLCNnHDgLVBKrLChrO','y2mTCMvJAxbPzw50CW','ihjLy2LWAwvUDhmGywXSB3DLza','ywDLBNrjBMjVEgvZ','AxnbCNjHEq','yxr0ywnOBwvUDhm','C3vIC3rYAw5N','C3LZDgvT','rMfPBgvKihrVigjYB2fKy2fZDcbHz2vUDcbTzxnZywDLihrVifvjoG','z2v0qwDLBNq','t3jPz2LUywWGBwvZC2fNzsbUB3qGzM91BMq6ia','y29UzMLN','ywDLBNqTy29TBxvUAwnHDgLVBG','DxbKyxrLqwDLBNq','x2LUAxrPywXPEMvtDg9YywDL','C3rHDhvZ','C3rVCMfNzvbHDgG','icHjrdOG','C3rYAw5N','BwvZC2fNzunVDw50','Bwf4qxr0ywnOBwvUDhnqzxjnzxnZywDL','z2v0','zxHLy3v0zq','8j+tQcaQkKLUDgvYlufNzw50ie1LC3nHz2uQkGOQkKzYB206kIOG','qxzHAwXHyMXLigfNzw50CYb5B3uGy2fUig1LC3nHz2u6cG','x3vWzgf0zu1LC3nHz2vdB3vUDhm','zw5KzwrcEq','y3vYCMvUDe1VzgvS','x3bHCNnLuMvJAxbPzw50CW','Bg94Awfxzwjtzxj2zxi','CgfYC2vqyxjHBwv0zxjZ','Cgf0Aa','CMvHC29U','CMvJAxbPzw50','ywXSB3DLza','oda2nJmYservruDP','x2DLBMvYyxrLqxr0ywnOBwvUDeLK','zw50CMLLCW','y29UDMvYC2f0Aw9UvgLTzw91Da','Bwf4uMvJAxbPzw50C1bLCK1LC3nHz2u','x2DLDe1LC3nHz2vezxb0Aa','BwvZC2fNzxm','mJu2mZa5mMjqsNPmqG','DhLWzq','zgvSzxrL','qwn0Aw9UihbHCMfTzxrLCIbPCYbYzxf1AxjLza','x2DLBMvYyxrLq29UDMvYC2f0Aw9Uswq','C2vZC2LVBKLK','BM93','C2vUDa','ywDLBNrdB252zxjZyxrPB25Z','igzPBguOCYK','Aw5JBhvKzxm','BgLZDefJDgL2zufNzw50CW','Dhj1zq','qwDLBNqGsuqGAxmGCMvXDwLYzwqGAw4Gy29UDgv4Da','Bwf4q29UDMvYC2f0Aw9UrgvWDgG','BgfZDefJDgL2Axr5','x25VDgLMEvjLy2LWAwvUDhm','Dg9mB3DLCKnHC2u','C2v0twvZC2fNzvbYB2nLC3nVCG','CYbZAw5JzsbSyxn0ig1LC3nHz2u','Agv4','DhjPBq','8j+tRcbrDwv1zwLUzYbPBNrLCI1Hz2vUDcbTzxnZywDLigzVCIbZy2HLzhvSzxiGChjVy2vZC2LUzW','lMXVEgLHlw1LC3nHz2vZ','mZi4nhLuz01bqG','z2v0vgLTzq','C2vUzgvY','BgvUz3rO','mteWmJa1tMXKtgTo','qxqGBgvHC3qGB25LihjLy2LWAwvUDcbPCYbYzxf1AxjLza','zw5Kzwq','AgfZ','BwfW','zgvWDgG','q29UC2LKzxiGBwfYA2LUzYb0AgLZignVBNzLCNnHDgLVBIbHCYbLBMrLzcbHBMqGC3rHCNrPBMCGzNjLC2GGAwyGBMvLzgvKlG','qxr0ywnOBwvUDcbLEgnLzwrZihnPEMuGBgLTAxq6ia','C2v0','CMvWBhLuB01LC3nHz2u','Dg9tDhjPBMC','y29UDMvYC2f0Aw9UCW','C2vUze1LC3nHz2u','cKfNzw50ienVBw11BMLJyxrPB24Gvg9VBdOGrw5HyMXLCYbJB21TDw5Py2f0Aw9UigjLDhDLzw4Gywn0AxzLigfNzw50CY4kcLvtquDfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMfNzw50y29TBxvUAwnHDgLVBIiScIaGiMfJDgLVBNmIoIbBEYj0ExbLiJOGiMfJDgLVBI1Uyw1LiIWGlI4UCgfYyw1ZFv0kFqPGygakcKfdveLptLm6cI0Gz2v0lwf2ywLSywjSzs1Hz2vUDhm6ieXPC3qGywn0AxzLigfNzw50CWOTihnLBMqTBwvZC2fNztOGu2vUzcbTzxnZywDLicHYzwnPCgLLBNqSihn1yMPLy3qSig1LC3nHz2uSihbYAw9YAxr5lcbYzxf1AxjLC1jLCgX5kqOTihjLCgX5lxrVlw1LC3nHz2u6ifjLCgX5ihrVig1LC3nHz2uGkg1LC3nHz2vjzcWGBwvZC2fNzsKklsbNzxqTDw5YzxbSAwvKlw1LC3nHz2vZoIbhzxqGCgvUzgLUzYbTzxnZywDLCWOTig1HCMSTy29UDMvYC2f0Aw9UlwvUzgvKoIbfBMqGy29UDMvYC2f0Aw9UicHJB252zxjZyxrPB25jzcWGCMvHC29UkqOkrvHbtvbmrvm6cGPhzxqGyxzHAwXHyMXLigfNzw50CZOkygbGANnVBGP7iNrVB2Xjzci6icjHz2vUDgnVBw11BMLJyxrPB24IlcaIywn0Aw9UCYi6ifT7iNr5CguIoIaIz2v0lwf2ywLSywjSzs1Hz2vUDhmIFv19cMbGyaOku2vUzcbHig1LC3nHz2u6cMbGygPZB24kEWOGicj0B29SswqIoIaIywDLBNrJB21TDw5Py2f0Aw9UiIWkicaIywn0Aw9UCYi6ifT7cIaGicaIDhLWzsi6icjZzw5Klw1LC3nHz2uIlaOGicaGiNjLy2LWAwvUDci6icjHz2vUDc1MDwXSC3rHy2STzgv2zwXVCgvYlteYmZq1nJC4otaXmJmIlaOGicaGiNn1yMPLy3qIoIaIq29KzsbYzxzPzxCGBMvLzgvKiIWkicaGicjTzxnZywDLiJOGiLbSzwfZzsbYzxzPzxCGDgHLigf1DgHLBNrPy2f0Aw9Uig1VzhvSzsiScIaGicaIChjPB3jPDhKIoIaIBM9YBwfSiIWkicaGicjYzxf1AxjLC1jLCgX5iJOGDhj1zqOGih1DcN0kygbGcGPszxbSEsb0BYbHig1LC3nHz2u6cMbGygPZB24kEWOGicj0B29SswqIoIaIywDLBNrJB21TDw5Py2f0Aw9UiIWkicaIywn0Aw9UCYi6ifT7cIaGicaIDhLWzsi6icjYzxbSEs10BY1TzxnZywDLiIWkicaGicjTzxnZywDLswqIoIaIBxnNltC4osiScIaGicaIBwvZC2fNzsi6icjszxzPzxCGy29TCgXLDguUiefSBcbPC3n1zxmGywrKCMvZC2vKlIikicb9xqP9cMbGyaOksu1qt1juqu5uoIbvC2uGzNvSBcbHz2vUDcbjrcbMCM9TigDLDc1HDMfPBgfIBguTywDLBNrZigfZihjLy2LWAwvUDc4kcKXjtuLuuZOklsbnyxGG','zNvSBa','BwvZC2fNzvbYB2nLC3nVCG','ChjPB3jPDhK','zxjYB3i','C2vUzc1TzxnZywDL','Bg9N','ndaXodq5uwrHuNDH','B3jJAgvZDhjHDg9Y','ywDLBNrnzxnZywDLq291BNrZ'];a0_0x365e=function(){return _0x1e08c0;};return a0_0x365e();}export default AgentCommunicationTool;
|
|
1
|
+
const a0_0xca5962=a0_0x134e;(function(_0x53b2a6,_0x45688b){const _0x53dd6d=a0_0x134e,_0x149f4e=_0x53b2a6();while(!![]){try{const _0x42454e=-parseInt(_0x53dd6d(0x1ec))/0x1*(-parseInt(_0x53dd6d(0x233))/0x2)+parseInt(_0x53dd6d(0x1e1))/0x3+parseInt(_0x53dd6d(0x25c))/0x4+-parseInt(_0x53dd6d(0x215))/0x5+-parseInt(_0x53dd6d(0x25e))/0x6+-parseInt(_0x53dd6d(0x205))/0x7*(-parseInt(_0x53dd6d(0x236))/0x8)+parseInt(_0x53dd6d(0x253))/0x9;if(_0x42454e===_0x45688b)break;else _0x149f4e['push'](_0x149f4e['shift']());}catch(_0x57ad3e){_0x149f4e['push'](_0x149f4e['shift']());}}}(a0_0x49b2,0x5fc90));import{BaseTool}from'./baseTool.js';import{promises as a0_0x577a4e}from'fs';import a0_0x5a956d from'path';function a0_0x134e(_0x81f4d,_0x45c750){_0x81f4d=_0x81f4d-0x1c6;const _0x49b245=a0_0x49b2();let _0x134e27=_0x49b245[_0x81f4d];if(a0_0x134e['DyOnIW']===undefined){var _0x45de47=function(_0x126262){const _0x55a0f1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x577a4e='',_0x5a956d='';for(let _0x2b416a=0x0,_0xc55cea,_0x383ff8,_0x7613f=0x0;_0x383ff8=_0x126262['charAt'](_0x7613f++);~_0x383ff8&&(_0xc55cea=_0x2b416a%0x4?_0xc55cea*0x40+_0x383ff8:_0x383ff8,_0x2b416a++%0x4)?_0x577a4e+=String['fromCharCode'](0xff&_0xc55cea>>(-0x2*_0x2b416a&0x6)):0x0){_0x383ff8=_0x55a0f1['indexOf'](_0x383ff8);}for(let _0x50911b=0x0,_0x107bdf=_0x577a4e['length'];_0x50911b<_0x107bdf;_0x50911b++){_0x5a956d+='%'+('00'+_0x577a4e['charCodeAt'](_0x50911b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5a956d);};a0_0x134e['MDpUYQ']=_0x45de47,a0_0x134e['CtroAg']={},a0_0x134e['DyOnIW']=!![];}const _0x194810=_0x49b245[0x0],_0x3e6e51=_0x81f4d+_0x194810,_0x4860ed=a0_0x134e['CtroAg'][_0x3e6e51];return!_0x4860ed?(_0x134e27=a0_0x134e['MDpUYQ'](_0x134e27),a0_0x134e['CtroAg'][_0x3e6e51]=_0x134e27):_0x134e27=_0x4860ed,_0x134e27;}import a0_0x2b416a from'crypto';class AgentCommunicationTool extends BaseTool{constructor(_0xc55cea={}){const _0x4ef92b=a0_0x134e;super(_0x4ef92b(0x260),_0x4ef92b(0x21c),'communication'),this[_0x4ef92b(0x243)]={'maxConversationDepth':_0xc55cea[_0x4ef92b(0x26d)]||0xa,'maxRecipientsPerMessage':_0xc55cea[_0x4ef92b(0x208)]||0x3,'maxAttachmentSize':_0xc55cea['maxAttachmentSize']||0xa*0x400*0x400,'maxAttachmentsPerMessage':_0xc55cea['maxAttachmentsPerMessage']||0x5,'conversationTimeout':_0xc55cea[_0x4ef92b(0x1cc)]||0x36ee80,'messageRetentionPeriod':_0xc55cea[_0x4ef92b(0x1de)]||0x5265c00,'enableBroadcast':_0xc55cea[_0x4ef92b(0x24f)]||![],'storageDir':_0xc55cea[_0x4ef92b(0x265)]||'.loxia-messages'},this['messages']=new Map(),this[_0x4ef92b(0x20e)]=new Map(),this[_0x4ef92b(0x257)]=new Map(),this['agentConversations']=new Map(),this['conversationDepths']=new Map(),this['lastActivityTimes']=new Map(),this['agentMessageCounts']=new Map(),this[_0x4ef92b(0x25b)]();}['getDescription'](){const _0xb08aab=a0_0x134e;return(_0xb08aab(0x268)+this['config']['maxConversationDepth']+'\x20replies\x20per\x20thread\x0a-\x20Max\x20'+this['config'][_0xb08aab(0x208)]+_0xb08aab(0x1cf)+this['config']['conversationTimeout']/0xea60+'\x20minutes\x0a')['trim']();}['parseParameters'](_0x383ff8){const _0x5810f5=a0_0x134e;if(typeof _0x383ff8==='object'&&_0x383ff8!==null){if(_0x383ff8['actions']&&Array['isArray'](_0x383ff8['actions'])&&_0x383ff8['actions'][_0x5810f5(0x1fd)]>0x0){const _0x7613f=_0x383ff8[_0x5810f5(0x248)][0x0];return{'action':_0x7613f['type'],..._0x7613f};}else{if(_0x383ff8[_0x5810f5(0x24c)]||_0x383ff8[_0x5810f5(0x269)])return{'action':_0x383ff8[_0x5810f5(0x24c)]||_0x383ff8['type'],..._0x383ff8};}return _0x383ff8;}if(typeof _0x383ff8===_0x5810f5(0x218)){if(_0x383ff8[_0x5810f5(0x1ea)]()[_0x5810f5(0x1dd)]('{'))try{const _0x43c901=JSON[_0x5810f5(0x259)](_0x383ff8);return this[_0x5810f5(0x224)](_0x43c901);}catch(_0x1c6734){}const _0x50911b={},_0x107bdf=_0x383ff8[_0x5810f5(0x1c7)](/<action[^>]*>([^<]+)<\/action>/);_0x107bdf&&(_0x50911b[_0x5810f5(0x24c)]=_0x107bdf[0x1]['trim']());const _0x5b0e63=[_0x5810f5(0x203),'recipients','subject','message','attachments','priority','requires-reply','message-id',_0x5810f5(0x220),'include-low-priority',_0x5810f5(0x1f8),'reason',_0x5810f5(0x204)];for(const _0x1fce7f of _0x5b0e63){const _0x364224=new RegExp('<'+_0x1fce7f[_0x5810f5(0x23e)]('-','\x5c-')+'[^>]*>(.*?)<\x5c/'+_0x1fce7f['replace']('-','\x5c-')+'>','s'),_0x24ea5c=_0x383ff8['match'](_0x364224);if(_0x24ea5c){let _0x407e80=_0x24ea5c[0x1][_0x5810f5(0x1ea)]();if(_0x407e80[_0x5810f5(0x1dd)]('[')||_0x407e80[_0x5810f5(0x1dd)]('{')||_0x407e80==='true'||_0x407e80===_0x5810f5(0x225))try{_0x407e80=JSON[_0x5810f5(0x259)](_0x407e80);}catch{}const _0xa26a2a=_0x1fce7f['replace'](/-(.)/g,(_0x750824,_0x1244d3)=>_0x1244d3['toUpperCase']());_0x50911b[_0xa26a2a]=_0x407e80;}}const _0x1e2d53=_0x383ff8[_0x5810f5(0x1c7)](/<action([^>]*)>([^<]+)<\/action>/);if(_0x1e2d53&&_0x1e2d53[0x1]){const _0x47d908=_0x1e2d53[0x1]['matchAll'](/([\w-]+)=["']([^"']+)["']/g);for(const _0x1d012f of _0x47d908){const _0xf85d8=_0x1d012f[0x1]['replace'](/-(.)/g,(_0x5a8006,_0x2f25e2)=>_0x2f25e2['toUpperCase']());_0x50911b[_0xf85d8]=_0x1d012f[0x2];}}return _0x50911b;}return _0x383ff8||{};}async['execute'](_0x2582df={},_0x3ec2e6={}){const _0x529025=a0_0x134e,{action:_0x13ca38}=_0x2582df;if(!_0x13ca38)throw new Error(_0x529025(0x226));const _0x3e4d88=_0x3ec2e6[_0x529025(0x1e3)];if(!_0x3e4d88)throw new Error(_0x529025(0x1eb));switch(_0x13ca38[_0x529025(0x212)]()){case _0x529025(0x202):return await this['getAvailableAgents'](_0x3e4d88,_0x2582df,_0x3ec2e6);case _0x529025(0x255):return await this[_0x529025(0x1dc)](_0x3e4d88,_0x2582df,_0x3ec2e6);case _0x529025(0x1ef):return await this['replyToMessage'](_0x3e4d88,_0x2582df,_0x3ec2e6);case _0x529025(0x1e5):return await this['getUnrepliedMessages'](_0x3e4d88,_0x2582df,_0x3ec2e6);case'mark-conversation-ended':return await this['markConversationEnded'](_0x3e4d88,_0x2582df,_0x3ec2e6);default:throw new Error(_0x529025(0x1da)+_0x13ca38);}}async[a0_0xca5962(0x207)](_0x5a0538,_0xf58951,_0x266dcb){const _0x53e666=a0_0xca5962;try{const _0x12fa71=_0x266dcb['agentPool'];if(!_0x12fa71)throw new Error(_0x53e666(0x24b));const _0x1ebcde=await _0x12fa71['listActiveAgents'](),_0x2cd65d=_0x1ebcde[_0x53e666(0x242)](_0x1ced63=>_0x1ced63['id']!==_0x5a0538&&!_0x1ced63[_0x53e666(0x1c8)])[_0x53e666(0x1fa)](_0x3b3556=>({'id':_0x3b3556['id'],'name':_0x3b3556['name'],'type':_0x3b3556['type'],'capabilities':_0x3b3556['capabilities'],'status':_0x3b3556[_0x53e666(0x21b)],'messageStats':this['agentMessageCounts'][_0x53e666(0x252)](_0x3b3556['id'])||{'sent':0x0,'received':0x0},'activeConversations':(this['agentConversations'][_0x53e666(0x252)](_0x3b3556['id'])||new Set())[_0x53e666(0x263)]}));return{'success':!![],'agents':_0x2cd65d,'totalActive':_0x2cd65d[_0x53e666(0x1fd)],'timestamp':new Date()[_0x53e666(0x214)]()};}catch(_0x37946b){return{'success':![],'error':_0x37946b[_0x53e666(0x239)]};}}async['sendMessage'](_0x311355,_0x243382,_0x1bde7e){const _0x1f4796=a0_0xca5962;try{const {recipient:_0x10d230,recipients:_0x121f43,subject:_0x1cfcf7,message:_0xbc7483,attachments:_0xbecb48,priority:priority='normal','requires-reply':requiresReply=![]}=_0x243382;if(!_0x1cfcf7||!_0xbc7483)throw new Error(_0x1f4796(0x1c9));const _0x55d4bc=this[_0x1f4796(0x21f)](_0x10d230,_0x121f43);if(_0x55d4bc['length']===0x0)throw new Error(_0x1f4796(0x25f));if(_0x55d4bc['length']>this['config'][_0x1f4796(0x208)])throw new Error('Maximum\x20'+this[_0x1f4796(0x243)][_0x1f4796(0x208)]+'\x20recipients\x20allowed');const _0x479681=_0x1bde7e[_0x1f4796(0x254)],_0x4ddab1=await _0x479681[_0x1f4796(0x241)](_0x311355);if(!_0x4ddab1)throw new Error(_0x1f4796(0x20a));const _0x19c9a0=[];for(const _0x4791e0 of _0x55d4bc){const _0x55aa7e=await this['_canSendMessage'](_0x4ddab1,_0x4791e0,_0x1bde7e);!_0x55aa7e[_0x1f4796(0x240)]&&_0x19c9a0[_0x1f4796(0x1f4)]({'recipientId':_0x4791e0,'reason':_0x55aa7e['reason'],'waitUntil':_0x55aa7e['waitUntil']});}if(_0x19c9a0[_0x1f4796(0x1fd)]>0x0){const _0x56340d=Math['max'](..._0x19c9a0[_0x1f4796(0x1fa)](_0x1d22f8=>_0x1d22f8['waitUntil']||0x0)),_0x44d9e4=new Date(_0x56340d);await _0x479681[_0x1f4796(0x21d)](_0x311355,{'delayEndTime':_0x44d9e4[_0x1f4796(0x214)]()});const _0x1b9e3f=Math[_0x1f4796(0x1f6)]((_0x56340d-Date[_0x1f4796(0x1f0)]())/0x3e8);return{'success':!![],'delayed':!![],'delayUntil':_0x44d9e4['toISOString'](),'delaySeconds':_0x1b9e3f,'message':_0x1f4796(0x230)+_0x1b9e3f+_0x1f4796(0x23f),'blockedRecipients':_0x19c9a0['map'](_0x53ed9c=>({'recipientId':_0x53ed9c['recipientId'],'reason':_0x53ed9c[_0x1f4796(0x1db)]}))};}const _0x313819={},_0x5bd252=[];for(const _0x407b11 of _0x55d4bc){const _0x20f8f4=await _0x479681[_0x1f4796(0x241)](_0x407b11);!_0x20f8f4?_0x5bd252[_0x1f4796(0x1f4)](_0x407b11):_0x313819[_0x407b11]=_0x20f8f4['name'];}if(_0x5bd252[_0x1f4796(0x1fd)]>0x0){const _0x42e089=await _0x479681['listActiveAgents'](),_0x52bf5c=_0x42e089['filter'](_0x16ff6b=>_0x16ff6b['id']!==_0x311355&&!_0x16ff6b[_0x1f4796(0x1c8)])['map'](_0x51160e=>'-\x20'+_0x51160e['name']+_0x1f4796(0x1e4)+_0x51160e['id']+')')[_0x1f4796(0x217)]('\x0a');return{'success':![],'error':_0x1f4796(0x1ee)+_0x5bd252[_0x1f4796(0x217)](',\x20'),'suggestion':'Available\x20agents\x20you\x20can\x20message:\x0a'+_0x52bf5c,'availableAgents':_0x42e089['map'](_0x370fba=>({'id':_0x370fba['id'],'name':_0x370fba['name'],'capabilities':_0x370fba[_0x1f4796(0x201)]}))};}const _0x1d3d3b=_0x4ddab1?_0x4ddab1['name']:_0x311355,processedAttachments=await this[_0x1f4796(0x221)](_0xbecb48,_0x311355),_0x3101e4=this[_0x1f4796(0x1c6)](),_0xcb64e0=this['_generateConversationId'](),_0x459f3a=new Date()['toISOString'](),_0x48dcf4={'id':_0x3101e4,'conversationId':_0xcb64e0,'sender':_0x311355,'senderName':_0x1d3d3b,'recipients':_0x55d4bc,'recipientNames':_0x313819,'subject':_0x1cfcf7,'content':_0xbc7483,'attachments':processedAttachments,'priority':priority,'requiresReply':requiresReply,'timestamp':_0x459f3a,'status':_0x1f4796(0x1fb),'replies':[],'metadata':{'depth':0x0,'isRoot':!![]}};this[_0x1f4796(0x26f)][_0x1f4796(0x1ed)](_0x3101e4,_0x48dcf4),this['conversations'][_0x1f4796(0x1ed)](_0xcb64e0,{'id':_0xcb64e0,'rootMessageId':_0x3101e4,'participants':[_0x311355,..._0x55d4bc],'startTime':_0x459f3a,'lastActivity':_0x459f3a,'status':'active','messageCount':0x1});for(const _0x3013c5 of _0x55d4bc){!this[_0x1f4796(0x257)][_0x1f4796(0x23c)](_0x3013c5)&&this[_0x1f4796(0x257)][_0x1f4796(0x1ed)](_0x3013c5,new Set()),this['agentInboxes']['get'](_0x3013c5)[_0x1f4796(0x1e6)](_0x3101e4),!this['agentConversations']['has'](_0x3013c5)&&this[_0x1f4796(0x256)]['set'](_0x3013c5,new Set()),this[_0x1f4796(0x256)][_0x1f4796(0x252)](_0x3013c5)['add'](_0xcb64e0);}!this['agentConversations']['has'](_0x311355)&&this['agentConversations']['set'](_0x311355,new Set());this['agentConversations'][_0x1f4796(0x252)](_0x311355)['add'](_0xcb64e0),this[_0x1f4796(0x1fc)](_0x311355,'sent');for(const _0x1ba1a7 of _0x55d4bc){this[_0x1f4796(0x1fc)](_0x1ba1a7,_0x1f4796(0x1d3));}for(const _0xc22e38 of _0x55d4bc){await this['_updateConversationTracking'](_0x311355,_0xc22e38,'sent',_0x1bde7e);}return await this['_notifyRecipients'](_0x48dcf4,_0x1bde7e),await this['_broadcastToUI'](_0x48dcf4,_0x1f4796(0x1d0),_0x1bde7e),{'success':!![],'messageId':_0x3101e4,'conversationId':_0xcb64e0,'recipients':_0x55d4bc,'timestamp':_0x459f3a,'message':_0x1f4796(0x1f9)};}catch(_0x11ffd7){return{'success':![],'error':_0x11ffd7['message']};}}async[a0_0xca5962(0x26a)](_0x2f3196,_0x434dd8,_0x1f9718){const _0x35a9f4=a0_0xca5962;try{const {'message-id':_0x202a44,message:_0x48a76e,'cc-recipients':_0x11a657,attachments:_0x34c53f,'mark-resolved':_0x5856c2=![]}=_0x434dd8;if(!_0x202a44||!_0x48a76e)throw new Error(_0x35a9f4(0x26e));const _0x286e94=this[_0x35a9f4(0x26f)]['get'](_0x202a44);if(!_0x286e94)throw new Error('Original\x20message\x20not\x20found:\x20'+_0x202a44);const _0xc6bc35=_0x286e94['sender']===_0x2f3196||_0x286e94[_0x35a9f4(0x267)][_0x35a9f4(0x223)](_0x2f3196);if(!_0xc6bc35)throw new Error('You\x20are\x20not\x20a\x20participant\x20in\x20this\x20conversation');const _0x592459=this[_0x35a9f4(0x20e)]['get'](_0x286e94[_0x35a9f4(0x22a)]),_0x1758b6=this[_0x35a9f4(0x1d1)](_0x286e94[_0x35a9f4(0x22a)]);if(_0x1758b6>=this[_0x35a9f4(0x243)]['maxConversationDepth'])return{'success':![],'error':_0x35a9f4(0x222)+this['config'][_0x35a9f4(0x26d)]+').\x20Please\x20start\x20a\x20new\x20conversation.','suggestion':_0x35a9f4(0x23a)};let _0x3696d6=[_0x286e94['sender']];_0x286e94['sender']===_0x2f3196&&(_0x3696d6=_0x286e94['recipients']);if(_0x11a657){const _0x3fefcd=this['_parseRecipients'](null,_0x11a657);_0x3696d6=[...new Set([..._0x3696d6,..._0x3fefcd])];}_0x3696d6=_0x3696d6['filter'](_0x247482=>_0x247482!==_0x2f3196);if(_0x3696d6[_0x35a9f4(0x1fd)]>this['config'][_0x35a9f4(0x208)])throw new Error(_0x35a9f4(0x22b)+this['config'][_0x35a9f4(0x208)]+_0x35a9f4(0x229));const _0x290d5a=_0x1f9718[_0x35a9f4(0x254)],_0x4a14d1=await _0x290d5a['getAgent'](_0x2f3196),_0x5dbfee=_0x4a14d1?_0x4a14d1['name']:_0x2f3196,_0x2c55c2={};for(const _0x31c1a0 of _0x3696d6){const _0xaba550=await _0x290d5a['getAgent'](_0x31c1a0);_0xaba550&&(_0x2c55c2[_0x31c1a0]=_0xaba550[_0x35a9f4(0x1f7)]);}const processedAttachments=await this['_processAttachments'](_0x34c53f,_0x2f3196),_0x40dc6b=this[_0x35a9f4(0x1c6)](),_0x3fd0eb=new Date()['toISOString'](),_0x2c865d={'id':_0x40dc6b,'conversationId':_0x286e94[_0x35a9f4(0x22a)],'sender':_0x2f3196,'senderName':_0x5dbfee,'recipients':_0x3696d6,'recipientNames':_0x2c55c2,'subject':_0x35a9f4(0x22c)+_0x286e94[_0x35a9f4(0x1f2)],'content':_0x48a76e,'attachments':processedAttachments,'priority':_0x286e94['priority'],'requiresReply':!_0x5856c2,'timestamp':_0x3fd0eb,'status':_0x35a9f4(0x1fb),'replies':[],'metadata':{'depth':_0x1758b6+0x1,'isRoot':![],'inReplyTo':_0x202a44}};this[_0x35a9f4(0x26f)][_0x35a9f4(0x1ed)](_0x40dc6b,_0x2c865d),_0x286e94['replies']['push'](_0x40dc6b),_0x592459[_0x35a9f4(0x20f)]=_0x3fd0eb,_0x592459['messageCount']++;_0x5856c2&&(_0x592459[_0x35a9f4(0x21b)]='resolved');for(const _0x40d640 of _0x3696d6){!this['agentInboxes']['has'](_0x40d640)&&this[_0x35a9f4(0x257)]['set'](_0x40d640,new Set()),this[_0x35a9f4(0x257)][_0x35a9f4(0x252)](_0x40d640)[_0x35a9f4(0x1e6)](_0x40dc6b);}this[_0x35a9f4(0x1fc)](_0x2f3196,_0x35a9f4(0x1fb));for(const _0x3b9f0e of _0x3696d6){this[_0x35a9f4(0x1fc)](_0x3b9f0e,_0x35a9f4(0x1d3));}for(const _0x31f622 of _0x3696d6){await this[_0x35a9f4(0x23b)](_0x2f3196,_0x31f622,'replied',_0x1f9718);}return await this[_0x35a9f4(0x244)](_0x2c865d,_0x1f9718),await this['_broadcastToUI'](_0x2c865d,'agent-message-reply',_0x1f9718),{'success':!![],'messageId':_0x40dc6b,'conversationId':_0x286e94[_0x35a9f4(0x22a)],'recipients':_0x3696d6,'depth':_0x1758b6+0x1,'timestamp':_0x3fd0eb,'conversationStatus':_0x592459[_0x35a9f4(0x21b)]};}catch(_0x36f87f){return{'success':![],'error':_0x36f87f['message']};}}async[a0_0xca5962(0x209)](_0x12afc7,_0x2b0a6a,_0x28e0d6){const _0xa64ca4=a0_0xca5962;try{const {'include-low-priority':_0x298732=![],'max-age-hours':_0x194672=0x18}=_0x2b0a6a,_0x1c075d=this[_0xa64ca4(0x257)]['get'](_0x12afc7)||new Set(),_0x2cea3d=[],_0x468ce2=Date[_0xa64ca4(0x1f0)]()-_0x194672*0x36ee80;for(const _0xbbcf47 of _0x1c075d){const _0x7b430e=this[_0xa64ca4(0x26f)]['get'](_0xbbcf47);if(!_0x7b430e)continue;if(new Date(_0x7b430e['timestamp'])['getTime']()<_0x468ce2)continue;if(_0x7b430e[_0xa64ca4(0x1ff)]==='low'&&!_0x298732)continue;if(_0x7b430e['requiresReply']){const _0x100eed=this['_hasAgentReplied'](_0x12afc7,_0x7b430e);if(!_0x100eed){const _0x5539ce=this['conversations'][_0xa64ca4(0x252)](_0x7b430e['conversationId']);_0x2cea3d[_0xa64ca4(0x1f4)]({'messageId':_0x7b430e['id'],'conversationId':_0x7b430e['conversationId'],'sender':_0x7b430e['sender'],'subject':_0x7b430e[_0xa64ca4(0x1f2)],'preview':_0x7b430e[_0xa64ca4(0x21e)][_0xa64ca4(0x237)](0x0,0x64)+_0xa64ca4(0x219),'priority':_0x7b430e['priority'],'timestamp':_0x7b430e[_0xa64ca4(0x247)],'hasAttachments':_0x7b430e['attachments'][_0xa64ca4(0x1fd)]>0x0,'conversationStatus':_0x5539ce?.[_0xa64ca4(0x21b)]||'unknown','depth':_0x7b430e['metadata']['depth']});}}}return _0x2cea3d['sort']((_0x4ae108,_0x2bf704)=>{const _0xa7d1cb=_0xa64ca4,_0x563010={'high':0x0,'normal':0x1,'low':0x2},_0x2e39dc=_0x563010[_0x4ae108[_0xa7d1cb(0x1ff)]]-_0x563010[_0x2bf704[_0xa7d1cb(0x1ff)]];if(_0x2e39dc!==0x0)return _0x2e39dc;return new Date(_0x2bf704['timestamp'])-new Date(_0x4ae108['timestamp']);}),{'success':!![],'messages':_0x2cea3d,'total':_0x2cea3d['length'],'inbox':{'total':_0x1c075d['size'],'activeConversations':(this['agentConversations'][_0xa64ca4(0x252)](_0x12afc7)||new Set())[_0xa64ca4(0x263)]}};}catch(_0x192f08){return{'success':![],'error':_0x192f08[_0xa64ca4(0x239)]};}}async[a0_0xca5962(0x22e)](_0x2c2879,_0x123de7,_0x486c2a){const _0x3ed4dc=a0_0xca5962;try{const {'conversation-id':_0xbccc12,reason:reason='Conversation\x20ended\x20by\x20agent'}=_0x123de7;if(!_0xbccc12)throw new Error('Conversation\x20ID\x20is\x20required');const _0x86c973=this[_0x3ed4dc(0x20e)]['get'](_0xbccc12);if(!_0x86c973)throw new Error(_0x3ed4dc(0x200)+_0xbccc12);if(!_0x86c973['participants'][_0x3ed4dc(0x223)](_0x2c2879))throw new Error('You\x20are\x20not\x20a\x20participant\x20in\x20this\x20conversation');_0x86c973[_0x3ed4dc(0x21b)]=_0x3ed4dc(0x26b),_0x86c973['endTime']=new Date()[_0x3ed4dc(0x214)](),_0x86c973[_0x3ed4dc(0x234)]=reason,_0x86c973[_0x3ed4dc(0x23d)]=_0x2c2879;for(const _0x25862f of _0x86c973['participants']){const _0x480456=this['agentConversations']['get'](_0x25862f);_0x480456&&_0x480456[_0x3ed4dc(0x1d8)](_0xbccc12);}return{'success':!![],'conversationId':_0xbccc12,'status':_0x3ed4dc(0x26b),'reason':reason,'timestamp':_0x86c973[_0x3ed4dc(0x22d)]};}catch(_0x35ef4a){return{'success':![],'error':_0x35ef4a[_0x3ed4dc(0x239)]};}}async[a0_0xca5962(0x25b)](){const _0x3eabb3=a0_0xca5962;try{await a0_0x577a4e['mkdir'](this['config'][_0x3eabb3(0x265)],{'recursive':!![]});const _0xf7a00c=a0_0x5a956d['join'](this['config']['storageDir'],'attachments');await a0_0x577a4e['mkdir'](_0xf7a00c,{'recursive':!![]});}catch(_0x2c404f){console[_0x3eabb3(0x24a)]('Failed\x20to\x20initialize\x20message\x20storage:',_0x2c404f);}}['_parseRecipients'](_0x508d5a,_0x273dc8){const _0x1a4fed=a0_0xca5962;let _0x3ec627=[];_0x508d5a&&_0x3ec627['push'](_0x508d5a);if(_0x273dc8){if(typeof _0x273dc8==='string')try{const _0x2ec46e=JSON[_0x1a4fed(0x259)](_0x273dc8);_0x3ec627=[..._0x3ec627,...Array['isArray'](_0x2ec46e)?_0x2ec46e:[_0x2ec46e]];}catch{_0x3ec627['push'](_0x273dc8);}else Array[_0x1a4fed(0x1ce)](_0x273dc8)&&(_0x3ec627=[..._0x3ec627,..._0x273dc8]);}return[...new Set(_0x3ec627)];}async[a0_0xca5962(0x221)](_0x1159de,_0x5225e4){const _0x5bb4b1=a0_0xca5962;if(!_0x1159de)return[];let _0x5b20c3=[];if(typeof _0x1159de===_0x5bb4b1(0x218))try{_0x5b20c3=JSON['parse'](_0x1159de);}catch{return[];}else _0x5b20c3=_0x1159de;!Array[_0x5bb4b1(0x1ce)](_0x5b20c3)&&(_0x5b20c3=[_0x5b20c3]);if(_0x5b20c3['length']>this['config']['maxAttachmentsPerMessage'])throw new Error(_0x5bb4b1(0x22b)+this[_0x5bb4b1(0x243)][_0x5bb4b1(0x1e7)]+'\x20attachments\x20allowed');const processedAttachments=[];for(const _0x7d1691 of _0x5b20c3){if(!_0x7d1691[_0x5bb4b1(0x24e)])continue;try{const _0x3ac28e=await a0_0x577a4e[_0x5bb4b1(0x266)](_0x7d1691['path']);if(_0x3ac28e[_0x5bb4b1(0x263)]>this[_0x5bb4b1(0x243)][_0x5bb4b1(0x1d4)])throw new Error(_0x5bb4b1(0x1d6)+_0x7d1691[_0x5bb4b1(0x24e)]);const _0x1f93bb=this[_0x5bb4b1(0x1df)](),_0x1842b9=a0_0x5a956d[_0x5bb4b1(0x228)](_0x7d1691[_0x5bb4b1(0x24e)]),_0x204e6c=a0_0x5a956d['join'](this[_0x5bb4b1(0x243)][_0x5bb4b1(0x265)],_0x5bb4b1(0x1d7),''+_0x1f93bb+_0x1842b9);await a0_0x577a4e[_0x5bb4b1(0x1d9)](_0x7d1691['path'],_0x204e6c),processedAttachments['push']({'id':_0x1f93bb,'originalPath':_0x7d1691[_0x5bb4b1(0x24e)],'storagePath':_0x204e6c,'type':_0x7d1691['type']||_0x5bb4b1(0x211),'size':_0x3ac28e[_0x5bb4b1(0x263)],'name':a0_0x5a956d[_0x5bb4b1(0x249)](_0x7d1691[_0x5bb4b1(0x24e)])});}catch(_0x4c3a50){console['error']('Failed\x20to\x20process\x20attachment:\x20'+_0x7d1691['path'],_0x4c3a50);}}return processedAttachments;}async[a0_0xca5962(0x244)](_0x96cbe3,_0x19dc67){const _0xa09b42=a0_0xca5962,_0x49d933=_0x19dc67[_0xa09b42(0x254)];if(!_0x49d933)return;for(const _0x441445 of _0x96cbe3[_0xa09b42(0x267)]){try{await _0x49d933[_0xa09b42(0x20d)](_0x441445,{'type':'agent-communication','from':_0x96cbe3['sender'],'conversationId':_0x96cbe3[_0xa09b42(0x22a)],'content':'📨\x20New\x20message\x20from\x20'+_0x96cbe3[_0xa09b42(0x1e0)]+':\x20\x22'+_0x96cbe3[_0xa09b42(0x1f2)]+'\x22','messageId':_0x96cbe3['id'],'priority':_0x96cbe3[_0xa09b42(0x1ff)],'requiresResponse':_0x96cbe3['requiresReply']});const _0x5dd64e=await _0x49d933['getAgent'](_0x441445);if(_0x5dd64e){const _0x3b10d6='📨\x20**Inter-Agent\x20Message**\x0a**From:**\x20'+_0x96cbe3[_0xa09b42(0x1e0)]+'\x20('+_0x96cbe3['sender']+')\x0a**Subject:**\x20'+_0x96cbe3['subject']+'\x0a**Priority:**\x20'+_0x96cbe3[_0xa09b42(0x1ff)]+'\x0a**Requires\x20Reply:**\x20'+(_0x96cbe3[_0xa09b42(0x1d5)]?_0xa09b42(0x1e8):'No')+'\x0a\x0a**Message:**\x0a'+_0x96cbe3[_0xa09b42(0x21e)]+'\x0a\x0a'+(_0x96cbe3[_0xa09b42(0x1d7)]['length']>0x0?'**Attachments:**\x20'+_0x96cbe3['attachments'][_0xa09b42(0x1fd)]+_0xa09b42(0x227):'')+'\x0a\x0a*You\x20can\x20reply\x20using\x20the\x20agentcommunication\x20tool\x20with\x20action=\x22reply-to-message\x22\x20and\x20message-id=\x22'+_0x96cbe3['id']+'\x22*',_0x2e268f={'id':'agent-comm-'+_0x96cbe3['id'],'conversationId':_0x96cbe3['conversationId'],'agentId':_0x96cbe3['sender'],'content':_0x3b10d6,'role':_0xa09b42(0x1d2),'timestamp':_0x96cbe3[_0xa09b42(0x247)],'type':_0xa09b42(0x21a),'metadata':{'originalMessageId':_0x96cbe3['id'],'fromAgent':_0x96cbe3['sender'],'requiresResponse':_0x96cbe3['requiresReply'],'priority':_0x96cbe3[_0xa09b42(0x1ff)]}};_0x5dd64e[_0xa09b42(0x20e)][_0xa09b42(0x1cb)]['messages'][_0xa09b42(0x1f4)](_0x2e268f),_0x5dd64e['conversations'][_0xa09b42(0x1cb)]['lastUpdated']=new Date()[_0xa09b42(0x214)](),_0x5dd64e[_0xa09b42(0x250)]&&_0x5dd64e[_0xa09b42(0x20e)][_0x5dd64e['currentModel']]&&(_0x5dd64e['conversations'][_0x5dd64e[_0xa09b42(0x250)]][_0xa09b42(0x26f)]['push'](_0x2e268f),_0x5dd64e['conversations'][_0x5dd64e['currentModel']]['lastUpdated']=new Date()[_0xa09b42(0x214)]()),await _0x49d933[_0xa09b42(0x1ca)](_0x441445),console[_0xa09b42(0x1f3)](_0xa09b42(0x1cd),{'recipientId':_0x441445,'sender':_0x96cbe3['sender'],'subject':_0x96cbe3[_0xa09b42(0x1f2)],'hasSessionId':!!_0x19dc67['sessionId']}),await _0x49d933[_0xa09b42(0x232)](_0x441445,{'id':_0x96cbe3['id'],'messageId':_0x96cbe3['id'],'sender':_0x96cbe3['sender'],'senderName':_0x96cbe3['senderName'],'subject':_0x96cbe3[_0xa09b42(0x1f2)],'content':_0x96cbe3[_0xa09b42(0x21e)],'attachments':_0x96cbe3['attachments'],'priority':_0x96cbe3['priority'],'requiresReply':_0x96cbe3[_0xa09b42(0x1d5)],'conversationId':_0x96cbe3[_0xa09b42(0x22a)],'sessionId':_0x19dc67[_0xa09b42(0x25d)],'timestamp':new Date()[_0xa09b42(0x214)]()}),console['log'](_0xa09b42(0x238)+_0x441445,{'messageId':_0x96cbe3['id'],'fromAgent':_0x96cbe3[_0xa09b42(0x25a)],'subject':_0x96cbe3['subject'],'priority':_0x96cbe3['priority']});}}catch(_0x10b3ea){console[_0xa09b42(0x24a)](_0xa09b42(0x1e9)+_0x441445+':',_0x10b3ea);}}}[a0_0xca5962(0x262)](_0xe9ff8,_0x2c59ea){const _0x1cdca9=a0_0xca5962;for(const _0x31533d of _0x2c59ea['replies']){const _0x45414f=this['messages']['get'](_0x31533d);if(_0x45414f&&_0x45414f[_0x1cdca9(0x25a)]===_0xe9ff8)return!![];if(_0x45414f&&this[_0x1cdca9(0x262)](_0xe9ff8,_0x45414f))return!![];}return![];}['_getConversationDepth'](_0x2fc1a1){const _0x43aa9a=a0_0xca5962,_0x4bd050=this[_0x43aa9a(0x20e)][_0x43aa9a(0x252)](_0x2fc1a1);if(!_0x4bd050)return 0x0;let _0x469e09=0x0;const _0x461103=this['messages'][_0x43aa9a(0x252)](_0x4bd050['rootMessageId']);return _0x461103&&(_0x469e09=this[_0x43aa9a(0x1f5)](_0x461103)),_0x469e09;}[a0_0xca5962(0x1f5)](_0x1f3f23,_0x5b91cb=0x0){const _0x42349e=a0_0xca5962;if(_0x1f3f23[_0x42349e(0x22f)][_0x42349e(0x1fd)]===0x0)return _0x5b91cb;let _0x52e8fb=_0x5b91cb;for(const _0x4a9871 of _0x1f3f23['replies']){const _0x46bfe1=this[_0x42349e(0x26f)]['get'](_0x4a9871);if(_0x46bfe1){const _0x22b4ad=this[_0x42349e(0x1f5)](_0x46bfe1,_0x5b91cb+0x1);_0x52e8fb=Math['max'](_0x52e8fb,_0x22b4ad);}}return _0x52e8fb;}['_updateMessageCounts'](_0x277a29,_0x16c4b8){const _0x59beaa=a0_0xca5962;!this['agentMessageCounts']['has'](_0x277a29)&&this['agentMessageCounts']['set'](_0x277a29,{'sent':0x0,'received':0x0});const _0xad9367=this['agentMessageCounts'][_0x59beaa(0x252)](_0x277a29);_0x16c4b8==='sent'?_0xad9367[_0x59beaa(0x1fb)]++:_0xad9367[_0x59beaa(0x1d3)]++;}['_generateMessageId'](){const _0x52f69a=a0_0xca5962;return'msg-'+Date['now']()+'-'+a0_0x2b416a[_0x52f69a(0x210)](0x4)['toString']('hex');}['_generateConversationId'](){const _0x2cbab4=a0_0xca5962;return _0x2cbab4(0x264)+Date['now']()+'-'+a0_0x2b416a['randomBytes'](0x4)[_0x2cbab4(0x213)](_0x2cbab4(0x1f1));}['_generateAttachmentId'](){const _0x4ff034=a0_0xca5962;return'att-'+Date['now']()+'-'+a0_0x2b416a[_0x4ff034(0x210)](0x4)['toString']('hex');}async[a0_0xca5962(0x1fe)](){const _0x294fa3=a0_0xca5962,_0x3d43f2=Date['now'](),_0x157f70=_0x3d43f2-this[_0x294fa3(0x243)]['messageRetentionPeriod'];for(const [_0xf1bcd,_0x447ae1]of this['messages']['entries']()){const _0x12a3de=new Date(_0x447ae1['timestamp'])[_0x294fa3(0x261)]();if(_0x12a3de<_0x157f70){for(const _0x3eb560 of _0x447ae1['attachments']){try{await a0_0x577a4e['unlink'](_0x3eb560['storagePath']);}catch(_0x143a30){}}for(const [_0x55d5fa,_0x31a3e4]of this[_0x294fa3(0x257)]['entries']()){_0x31a3e4['delete'](_0xf1bcd);}this['messages']['delete'](_0xf1bcd);}}for(const [_0x556895,_0x1a8d2e]of this['conversations']['entries']()){const _0x58c797=new Date(_0x1a8d2e[_0x294fa3(0x20f)])[_0x294fa3(0x261)]();if(_0x58c797<_0x157f70||_0x1a8d2e['status']===_0x294fa3(0x26b)){for(const [_0x3cd488,_0x1b85f6]of this['agentConversations']['entries']()){_0x1b85f6['delete'](_0x556895);}this[_0x294fa3(0x20e)]['delete'](_0x556895);}}}async['_broadcastToUI'](_0x526495,_0x27fd8f,_0x13f183){const _0x366b4b=a0_0xca5962;try{const _0x1dd73e={'type':_0x366b4b(0x21a),'eventType':_0x27fd8f,'timestamp':_0x526495['timestamp'],'messageId':_0x526495['id'],'conversationId':_0x526495[_0x366b4b(0x22a)],'sender':{'id':_0x526495['sender'],'name':_0x526495[_0x366b4b(0x1e0)]},'recipients':Object[_0x366b4b(0x251)](_0x526495[_0x366b4b(0x216)]||{})[_0x366b4b(0x1fa)](([_0x1d0809,_0x2eb930])=>({'id':_0x1d0809,'name':_0x2eb930})),'subject':_0x526495['subject'],'content':_0x526495[_0x366b4b(0x21e)],'priority':_0x526495['priority'],'requiresReply':_0x526495[_0x366b4b(0x1d5)],'hasAttachments':_0x526495[_0x366b4b(0x1d7)]&&_0x526495['attachments']['length']>0x0,'attachmentCount':_0x526495[_0x366b4b(0x1d7)]?_0x526495[_0x366b4b(0x1d7)][_0x366b4b(0x1fd)]:0x0,'metadata':_0x526495['metadata']};if(_0x13f183['agentPool']&&_0x13f183[_0x366b4b(0x254)][_0x366b4b(0x20b)]){const _0x5d7461=_0x13f183['agentPool']['messageProcessor'];if(_0x5d7461&&_0x5d7461['orchestrator']&&_0x5d7461['orchestrator']['webServer']){_0x5d7461['orchestrator'][_0x366b4b(0x235)]['broadcastToSession'](_0x13f183[_0x366b4b(0x25d)]||'web-session',{'type':_0x366b4b(0x21a),'action':'agent-communication','data':_0x1dd73e});return;}}if(_0x13f183[_0x366b4b(0x258)]&&_0x13f183['orchestrator']['webServer']){_0x13f183['orchestrator']['webServer'][_0x366b4b(0x26c)](_0x13f183[_0x366b4b(0x25d)]||'web-session',{'type':'agent-communication','action':'agent-communication','data':_0x1dd73e});return;}global[_0x366b4b(0x206)]&&global['loxiaWebServer']['broadcastToSession'](_0x13f183['sessionId']||'web-session',{'type':_0x366b4b(0x21a),'action':_0x366b4b(0x21a),'data':_0x1dd73e});}catch(_0x8dfb74){console[_0x366b4b(0x24a)](_0x366b4b(0x231),_0x8dfb74);}}async['_canSendMessage'](_0x51299d,_0x4706cd,_0x319c3d){const _0x262e97=a0_0xca5962,_0xaf7c64=_0x319c3d['agentPool'];(!_0x51299d[_0x262e97(0x245)]||!(_0x51299d[_0x262e97(0x245)]instanceof Map))&&(_0x51299d['interAgentTracking']&&typeof _0x51299d[_0x262e97(0x245)]==='object'?_0x51299d[_0x262e97(0x245)]=new Map(Object[_0x262e97(0x251)](_0x51299d[_0x262e97(0x245)])):_0x51299d['interAgentTracking']=new Map());const _0x58d633=_0x51299d[_0x262e97(0x245)];!_0x58d633[_0x262e97(0x23c)](_0x4706cd)&&_0x58d633['set'](_0x4706cd,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x15ad58=_0x58d633[_0x262e97(0x252)](_0x4706cd),_0x2cecae=Date[_0x262e97(0x1f0)](),_0x3fddb4=0x3c*0x3e8;if(_0x15ad58['lastType']===_0x262e97(0x1d3)||_0x15ad58[_0x262e97(0x246)]&&_0x15ad58[_0x262e97(0x246)]>_0x15ad58[_0x262e97(0x20c)])return{'allowed':!![]};if(_0x15ad58[_0x262e97(0x20c)]){const _0x252b3e=_0x2cecae-_0x15ad58['lastSent'];if(_0x252b3e>=_0x3fddb4)return{'allowed':!![]};const _0x46e09b=_0x15ad58['lastSent']+_0x3fddb4;return{'allowed':![],'reason':'Must\x20wait\x20'+Math[_0x262e97(0x1f6)]((_0x46e09b-_0x2cecae)/0x3e8)+_0x262e97(0x24d),'waitUntil':_0x46e09b};}return{'allowed':!![]};}async['_updateConversationTracking'](_0x294b9d,_0x5541e5,_0x218555,_0x5cd5a6){const _0x380570=a0_0xca5962,_0x1cb899=_0x5cd5a6['agentPool'],_0x37c366=await _0x1cb899['getAgent'](_0x294b9d);if(!_0x37c366)return;const _0x62be53=Date['now']();(!_0x37c366[_0x380570(0x245)]||!(_0x37c366[_0x380570(0x245)]instanceof Map))&&(_0x37c366['interAgentTracking']&&typeof _0x37c366['interAgentTracking']==='object'?_0x37c366['interAgentTracking']=new Map(Object[_0x380570(0x251)](_0x37c366['interAgentTracking'])):_0x37c366['interAgentTracking']=new Map());!_0x37c366[_0x380570(0x245)][_0x380570(0x23c)](_0x5541e5)&&_0x37c366[_0x380570(0x245)]['set'](_0x5541e5,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x167b47=_0x37c366['interAgentTracking'][_0x380570(0x252)](_0x5541e5);if(_0x218555==='sent')_0x167b47['lastSent']=_0x62be53,_0x167b47['lastType']=_0x380570(0x1fb);else _0x218555==='replied'&&(_0x167b47[_0x380570(0x20c)]=_0x62be53,_0x167b47['lastType']='sent');const _0x224b00=await _0x1cb899['getAgent'](_0x5541e5);if(_0x224b00){(!_0x224b00[_0x380570(0x245)]||!(_0x224b00['interAgentTracking']instanceof Map))&&(_0x224b00['interAgentTracking']&&typeof _0x224b00[_0x380570(0x245)]==='object'?_0x224b00['interAgentTracking']=new Map(Object[_0x380570(0x251)](_0x224b00['interAgentTracking'])):_0x224b00['interAgentTracking']=new Map());!_0x224b00['interAgentTracking']['has'](_0x294b9d)&&_0x224b00['interAgentTracking'][_0x380570(0x1ed)](_0x294b9d,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x1f0064=_0x224b00[_0x380570(0x245)][_0x380570(0x252)](_0x294b9d);_0x1f0064['lastReceived']=_0x62be53,_0x1f0064[_0x380570(0x1e2)]='received',await _0x1cb899['persistAgentState'](_0x5541e5);}await _0x1cb899[_0x380570(0x1ca)](_0x294b9d);}['setMessageProcessor'](_0x55bec9){const _0x53d88c=a0_0xca5962;this[_0x53d88c(0x20b)]=_0x55bec9;}}export default AgentCommunicationTool;function a0_0x49b2(){const _0x4ee8b7=['ywDLBNrJB21TDw5Py2f0Aw9U','z2v0vgLTzq','x2HHC0fNzw50uMvWBgLLza','C2L6zq','y29UDI0','C3rVCMfNzurPCG','C3rHDa','CMvJAxbPzw50CW','cKfNzw50ienVBw11BMLJyxrPB24Gvg9VBdOGrw5HyMXLCYbJB21TDw5Py2f0Aw9UigjLDhDLzw4Gywn0AxzLigfNzw50CY4kcLvtquDfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMfNzw50y29TBxvUAwnHDgLVBIiScIaGiMfJDgLVBNmIoIbBEYj0ExbLiJOGiMfJDgLVBI1Uyw1LiIWGlI4UCgfYyw1ZFv0kFqPGygakcKfdveLptLm6cI0Gz2v0lwf2ywLSywjSzs1Hz2vUDhm6ieXPC3qGywn0AxzLigfNzw50CWOTihnLBMqTBwvZC2fNztOGu2vUzcbTzxnZywDLicHYzwnPCgLLBNqSihn1yMPLy3qSig1LC3nHz2uSihbYAw9YAxr5lcbYzxf1AxjLC1jLCgX5kqOTihjLCgX5lxrVlw1LC3nHz2u6ifjLCgX5ihrVig1LC3nHz2uGkg1LC3nHz2vjzcWGBwvZC2fNzsKklsbNzxqTDw5YzxbSAwvKlw1LC3nHz2vZoIbhzxqGCgvUzgLUzYbTzxnZywDLCWOTig1HCMSTy29UDMvYC2f0Aw9UlwvUzgvKoIbfBMqGy29UDMvYC2f0Aw9UicHJB252zxjZyxrPB25jzcWGCMvHC29UkqOkrvHbtvbmrvm6cGPhzxqGyxzHAwXHyMXLigfNzw50CZOkygbGANnVBGP7iNrVB2Xjzci6icjHz2vUDgnVBw11BMLJyxrPB24IlcaIywn0Aw9UCYi6ifT7iNr5CguIoIaIz2v0lwf2ywLSywjSzs1Hz2vUDhmIFv19cMbGyaOku2vUzcbHig1LC3nHz2u6cMbGygPZB24kEWOGicj0B29SswqIoIaIywDLBNrJB21TDw5Py2f0Aw9UiIWkicaIywn0Aw9UCYi6ifT7cIaGicaIDhLWzsi6icjZzw5Klw1LC3nHz2uIlaOGicaGiNjLy2LWAwvUDci6icjHz2vUDc1MDwXSC3rHy2STzgv2zwXVCgvYlteYmZq1nJC4otaXmJmIlaOGicaGiNn1yMPLy3qIoIaIq29KzsbYzxzPzxCGBMvLzgvKiIWkicaGicjTzxnZywDLiJOGiLbSzwfZzsbYzxzPzxCGDgHLigf1DgHLBNrPy2f0Aw9Uig1VzhvSzsiScIaGicaIChjPB3jPDhKIoIaIBM9YBwfSiIWkicaGicjYzxf1AxjLC1jLCgX5iJOGDhj1zqOGih1DcN0kygbGcGPszxbSEsb0BYbHig1LC3nHz2u6cMbGygPZB24kEWOGicj0B29SswqIoIaIywDLBNrJB21TDw5Py2f0Aw9UiIWkicaIywn0Aw9UCYi6ifT7cIaGicaIDhLWzsi6icjYzxbSEs10BY1TzxnZywDLiIWkicaGicjTzxnZywDLswqIoIaIBxnNltC4osiScIaGicaIBwvZC2fNzsi6icjszxzPzxCGy29TCgXLDguUiefSBcbPC3n1zxmGywrKCMvZC2vKlIikicb9xqP9cMbGyaOksu1qt1juqu5uoIbvC2uGzNvSBcbHz2vUDcbjrcbMCM9TigDLDc1HDMfPBgfIBguTywDLBNrZigfZihjLy2LWAwvUDc4kcKXjtuLuuZOklsbnyxGG','DhLWzq','CMvWBhLuB01LC3nHz2u','zw5Kzwq','yNjVywrJyxn0vg9tzxnZAw9U','Bwf4q29UDMvYC2f0Aw9UrgvWDgG','t3jPz2LUywWGBwvZC2fNzsbjrcbHBMqGCMvWBhKGy29UDgvUDcbHCMuGCMvXDwLYzwq','BwvZC2fNzxm','x2DLBMvYyxrLtwvZC2fNzuLK','Bwf0y2G','AxnqyxvZzwq','u3vIAMvJDcbHBMqGBwvZC2fNzsbHCMuGCMvXDwLYzwq','CgvYC2LZDefNzw50u3rHDgu','zNvSBa','y29UDMvYC2f0Aw9UvgLTzw91Da','8j+tRcbrDwv1zwLUzYbPBNrLCI1Hz2vUDcbTzxnZywDLigzVCIbZy2HLzhvSzxiGChjVy2vZC2LUzW','AxnbCNjHEq','ihjLy2LWAwvUDhmGCgvYig1LC3nHz2uklsbdB252zxjZyxrPB25Zigv4CgLYzsbHzNrLCIa','ywDLBNqTBwvZC2fNzs1Zzw50','x2DLDenVBNzLCNnHDgLVBKrLChrO','C3LZDgvT','CMvJzwL2zwq','Bwf4qxr0ywnOBwvUDfnPEMu','CMvXDwLYzxnszxbSEq','qxr0ywnOBwvUDcbLEgnLzwrZihnPEMuGBgLTAxq6ia','yxr0ywnOBwvUDhm','zgvSzxrL','y29WEuzPBgu','vw5RBM93BIbHy3rPB246ia','CMvHC29U','C2vUze1LC3nHz2u','C3rHCNrZv2L0Aa','BwvZC2fNzvjLDgvUDgLVBLbLCMLVza','x2DLBMvYyxrLqxr0ywnOBwvUDeLK','C2vUzgvYtMfTzq','otCWmJm2q0zdtu1c','BgfZDfr5Cgu','ywDLBNrjza','icHjrdOG','z2v0lxvUCMvWBgLLzc1TzxnZywDLCW','ywrK','Bwf4qxr0ywnOBwvUDhnqzxjnzxnZywDL','wwvZ','rMfPBgvKihrVig5VDgLMEsbHz2vUDca','DhjPBq','qwDLBNqGsuqGAxmGCMvXDwLYzwqGAw4Gy29UDgv4Da','nMXQtwrKyG','C2v0','uMvJAxbPzw50igfNzw50khmPig5VDcbMB3vUzdOG','CMvWBhKTDg8TBwvZC2fNzq','BM93','Agv4','C3vIAMvJDa','Bg9N','ChvZAa','x2DLDe1LC3nHz2vezxb0Aa','y2vPBa','BMfTzq','y29UDMvYC2f0Aw9UlwLK','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','BwfW','C2vUDa','x3vWzgf0zu1LC3nHz2vdB3vUDhm','BgvUz3rO','y2XLyw51Ca','ChjPB3jPDhK','q29UDMvYC2f0Aw9Uig5VDcbMB3vUzdOG','y2fWywjPBgL0AwvZ','z2v0lwf2ywLSywjSzs1Hz2vUDhm','CMvJAxbPzw50','BwfYAY1YzxnVBhzLza','n3HVrejXuG','Bg94Awfxzwjtzxj2zxi','z2v0qxzHAwXHyMXLqwDLBNrZ','Bwf4uMvJAxbPzw50C1bLCK1LC3nHz2u','z2v0vw5YzxbSAwvKtwvZC2fNzxm','u2vUzgvYigfNzw50ig5VDcbMB3vUza','BwvZC2fNzvbYB2nLC3nVCG','BgfZDfnLBNq','BM90Awz5qwDLBNq','y29UDMvYC2f0Aw9UCW','BgfZDefJDgL2Axr5','CMfUzg9TqNL0zxm','zMLSzq','Dg9mB3DLCKnHC2u','Dg9tDhjPBMC','Dg9ju09tDhjPBMC','mZyZmdK4nvbfzg1Kwq','CMvJAxbPzw50tMfTzxm','AM9PBG','C3rYAw5N','lI4U','ywDLBNqTy29TBxvUAwnHDgLVBG','C3rHDhvZ','qwDLBNqGq29TBxvUAwnHDgLVBG','DxbKyxrLqwDLBNq','y29UDgvUDa','x3bHCNnLuMvJAxbPzw50CW','y2mTCMvJAxbPzw50CW','x3bYB2nLC3nbDhrHy2HTzw50CW','q29UDMvYC2f0Aw9UigrLChrOigXPBwL0ihjLywnOzwqGka','Aw5JBhvKzxm','CgfYC2vqyxjHBwv0zxjZ','zMfSC2u','qwn0Aw9UihbHCMfTzxrLCIbPCYbYzxf1AxjLza','igzPBguOCYK','zxH0BMfTzq','ihjLy2LWAwvUDhmGywXSB3DLza','y29UDMvYC2f0Aw9Uswq','twf4Aw11Bsa','uMu6ia','zw5KvgLTzq','BwfYA0nVBNzLCNnHDgLVBKvUzgvK','CMvWBgLLCW','v2fPDgLUzYa','rMfPBgvKihrVigjYB2fKy2fZDcbHz2vUDcbTzxnZywDLihrVifvjoG','ywrKsw50zxjbz2vUDe1LC3nHz2u','otK3ntHVte9vwKq','zw5KuMvHC29U','D2vIu2vYDMvY','mti3odG1nNbiCvfLzW','C3vIC3rYAw5N','rgLYzwn0ig1LC3nHz2uGAw5Qzwn0zwqGyw5Kihf1zxvLzcbMB3iGChjVy2vZC2LUzZOG','BwvZC2fNzq','q29UC2LKzxiGBwfYA2LUzYb0AgLZignVBNzLCNnHDgLVBIbHCYbLBMrLzcbHBMqGC3rHCNrPBMCGzNjLC2GGAwyGBMvLzgvKlG','x3vWzgf0zunVBNzLCNnHDgLVBLrYywnRAw5N','AgfZ','zw5KzwrcEq','CMvWBgfJzq','CYbIzwzVCMuGBMv4DcbTzxnZywDLlIbszwnPCgLLBNrZig5LzwqGDgLTzsb0BYbYzxnWB25KlG','ywXSB3DLza','z2v0qwDLBNq','zMLSDgvY','y29UzMLN','x25VDgLMEvjLy2LWAwvUDhm','Aw50zxjbz2vUDfrYywnRAw5N','BgfZDfjLy2vPDMvK','DgLTzxn0yw1W','ywn0Aw9UCW','yMfZzw5HBwu','zxjYB3i','qwDLBNqGCg9VBcbUB3qGyxzHAwXHyMXLigLUignVBNrLEhq','ywn0Aw9U','CYbZAw5JzsbSyxn0ig1LC3nHz2u','Cgf0Aa','zw5HyMXLqNjVywrJyxn0','y3vYCMvUDe1VzgvS','zw50CMLLCW','z2v0','mta2ntqYmhHwCuTorG','ywDLBNrqB29S','C2vUzc1TzxnZywDL','ywDLBNrdB252zxjZyxrPB25Z','ywDLBNrjBMjVEgvZ','B3jJAgvZDhjHDg9Y','CgfYC2u','C2vUzgvY','x2LUAxrPywXPEMvtDg9YywDL','mtCZmJq2mfnwuuHHrq','C2vZC2LVBKLK','mti5mZaZmhvhqNP5Dq','qxqGBgvHC3qGB25LihjLy2LWAwvUDcbPCYbYzxf1AxjLza'];a0_0x49b2=function(){return _0x4ee8b7;};return a0_0x49b2();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x35fab7=a0_0x44ac;function a0_0x1595(){const _0x4b1d62=['CM91BMq','BwvKAxvT','qwDLBNqGAxmGywXYzwfKEsbWyxvZzwq','C2vJB25KCW','ndi0txPMDxH4','BwvZC2fNzq','BgfZDenVBw1HBMq','zxH0CMfJDenVBNrLBNq','y29TCgLSzq','AgLNAa','Bwf4rhvYyxrPB24','z2v0rgvZy3jPChrPB24','AxnfBMfIBgvK','zM9YBwf0uMvZDw1LvgLTzq','D2fYBMLUz3m','EwfYBIbPBNn0ywXS','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHihzHBgLKig51BwjLCG','Bwf4ugf1C2veDxjHDgLVBG','ChvZAa','ndHHqw9guvG','Cgf1C2uTzhvYyxrPB24Gy2fUBM90igv4y2vLzca','ksaTihjLCxvPCMvKcI0GCMvHC29UoIbpChrPB25HBcbLEhbSyw5HDgLVBIbMB3iGDgHLihbHDxnLcGPvu0uGq0ftrvm6cI0Gqwz0zxiGCNvUBMLUzYaNBNbTigLUC3rHBgWNig9YihnPBwLSyxiGBg9UzY1YDw5UAw5NignVBw1HBMrZcI0Gv2fPDgLUzYbMB3iGC2vYDMLJzxmGDg8GC3rHCNqGDxaklsbbBgXVD2LUzYb0Aw1LigzVCIbMAwXLihn5C3rLBsbVCgvYyxrPB25ZihrVignVBxbSzxrLcI0GuhjLDMvUDgLUzYbYyxbPzcbZDgf0DxmGy2HLy2TPBMCGBg9VChmklsbeDxjPBMCGyNvPBgqGChjVy2vZC2vZig9YignVBxbPBgf0Aw9UcGPfwefnueXfuZOkcJeUiejHC2LJihbHDxnLigzVCIaXig1PBNv0ztOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjHz2vUDgrLBgf5iIWkicaIzhvYyxrPB24IoIa2maP9cMbGyaOkmI4Gugf1C2uGD2L0AcbYzwfZB246cMbGygPZB24kEWOGicj0B29SswqIoIaIywDLBNrKzwXHEsiScIaGiMr1CMf0Aw9UiJOGmtiWlaOGicjYzwfZB24IoIaIsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmIcN0kygbGcGOZlIbcCMLLzIbWyxvZzsbMB3iGC2vYDMLJzsbZDgfYDhvWoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMfNzw50zgvSyxKIlaOGicjKDxjHDgLVBIi6idmWlaOGicjYzwfZB24IoIaIv2fPDgLUzYbMB3iGC2vYDMvYihn0yxj0DxaIcN0kygbGcGPcruHbvKLpuJOkvgHLigfNzw50ihDPBgWGyMuGBwfYA2vKigfZicC','ihnLy29UzhmGka','rxjYB3iGy2HLy2TPBMCGywDLBNqGC3rHDhvZoIa','nZe2ntq1CKfhz2Pt','DhjPBq','zgvSyxK','z2v0qwDLBNq','qwDLBNqGCg9VBcbUB3qGyxzHAwXHyMXLic0Gy2fUBM90ihbHDxnLigfNzw50','rg9JA2vYig9WzxjHDgLVBNmGB2z0zw4GCMvXDwLYzsbLEhrLBMrLzcb0Aw1L','y2fUugf1C2vbz2vUDa','DMfSAwrHDgvqyxjHBwv0zxjuExbLCW','mZG4ndfOEMTtBha','ugf1C2uGzhvYAw5NihbHy2THz2uGAw5ZDgfSBgf0Aw9U','CgfYC2vqyxjHBwv0zxjZ','tNvTyMvYig9MihnLy29UzhmGDg8GCgf1C2uGywDLBNqGywn0AxzPDhK','vw5RBM93BIbLCNjVCG','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHDcbSzwfZDca','zg9JA2vYihj1BG','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHihDOB2XLig51BwjLCIbVzIbZzwnVBMrZ','t3b0Aw9UywWGCMvHC29UigzVCIb0AguGCgf1C2u','nZK0ntm4mhHotNbvua','ndCYnteXmNDis2DVBa','jYbHBMqGD2LSBcbUB3qGChjVy2vZCYbUzxCGBwvZC2fNzxmGDw50AwWGDgHLigr1CMf0Aw9Uigv4CgLYzxmUcK90AgvYigfNzw50CYbJyw4GC3rPBgWGC2vUzcbTzxnZywDLCYWGyNv0ihrOzxKGD2LSBcbIzsbXDwv1zwqGDw50AwWGDgHLigfNzw50ihjLC3vTzxmUcGPjtvbpuLrbtLq6ifvZzsb0AgLZihrVB2WGANvKAwnPB3vZBhKUie9UBhKGCgf1C2uGD2HLBIbNzw51Aw5LBhKGD2fPDgLUzYbMB3iGzxH0zxjUywWGChjVy2vZC2vZlGPnyxHPBxvTihbHDxnLigr1CMf0Aw9UoIa','ntyZnerzwgXyCG','mZe0ody1u3nRvgDk','z2v0vgLTzq','ig1PBNv0zxmPlGOGicaG','Cgf1C2uTzhvYyxrPB24GAxmGCMvXDwLYzwq','Aw50zwDLCG','ywDLBNqTzgvSyxK','zxHLy3v0zq','zMLSzs1VCgvYyxrPB25Z','Cgf1C2vKvw50AwW','ywDLBNqTC3rHDhvZ','z2L0ihb1BgW','Bg9Nz2vY','mtfoBunfqwq','rMfPBgvKihrVihbHDxnLigfNzw50oIa','z2v0q2fWywjPBgL0AwvZ','C3rHDhvZ','zxjYB3i','uefvu0ve','q29UC2LKzxiGAwyGC3vJAcbHigXVBMCGCgf1C2uGAxmGCMvHBgX5ig5LzwrLza','C3rHy2S','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mZa8l3bHDxnLlwr1CMf0Aw9UpGPBl3rVB2XD','ihnLy29Uza','qwDLBNqGD2LSBcbYzxn1BwuGywn0AxzPDhKGAw4G','zMXVB3i','nJaXsuLlD2Hq','igHVDxi','Cgf1C2u','ig1PBNv0zq','cKfNzw50ierLBgf5ifrVB2W6ifbHDxnLigfNzw50igfJDgL2Axr5igzVCIbHihnWzwnPzMLLzcbKDxjHDgLVBIb0BYbWCMv2zw50ihvUBMvJzxnZyxj5ig1LC3nHz2uGzxHJAgfUz2vZigr1CMLUzYb3ywL0Aw5NihbLCMLVzhmUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjHz2vUDgrLBgf5iIWkicaIzhvYyxrPB24IoIaZmcWkicaICMvHC29UiJOGiLDHAxrPBMCGzM9Yig5WBsbPBNn0ywXSihrVignVBxbSzxrLiGP9cMbGyaOkuefsqu1fvevsuZOklsbKDxjHDgLVBJOGtNvTyMvYig9MihnLy29UzhmGDg8GCgf1C2uGka','BgvUz3rO','u2HVCNqGCgf1C2uGDg8GywXSB3CGysbZzxj2AwnLihrVigz1BgX5igLUAxrPywXPEMu','zhvYyxrPB24','C2v0qwDLBNrqB29S','C2vYDMLJzs1ZDgfYDhvW','CMvHC29U','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','BwfRzq','ndqWyMTOsMf1','Aw5ZDgfSBgf0Aw9UlxDHAxrPBMC','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mtiWpc9WyxvZzs1KDxjHDgLVBJ4kphjLyxnVBJ5xywL0Aw5NigzVCIbUCg0GAw5ZDgfSBcb0BYbJB21WBgv0ztWVCMvHC29UpGPBl3rVB2XD','u2LTCgXLidmWlxnLy29UzcbWyxvZzsb3AxrOB3v0ihnWzwnPzMLJihjLyxnVBG','ywDLBNrqB29S','BM93','vMvYEsbZAg9YDcbWyxvZzxmGBwf5ig5VDcbIzsbUzwnLC3nHCNK','C3vNz2vZDgvK','qwDLBNqGsuqGAxmGCMvXDwLYzwqGzM9YigfNzw50igrLBgf5ihrVB2W','z2v0u3vWCg9YDgvKqwn0Aw9UCW','Dg9mB3DLCKnHC2u','ndKXnJyWnZzkCLzizg8','tufyx1bbvvnfx0rvuKfusu9o','CMvXDwLYzxnqCM9Qzwn0','qwDLBNqGCgf1C2vKihzPysbHz2vUDc1KzwXHEsb0B29SoIa','Aw5JBhvKzxm','Aw4G','z2v0ugf1C2vszwnVBw1LBMrHDgLVBNm','Dg9ju09tDhjPBMC','C3rYAw5N','AxnjBNrLz2vY','BwLUugf1C2veDxjHDgLVBG'];a0_0x1595=function(){return _0x4b1d62;};return a0_0x1595();}(function(_0xd50fcd,_0x44dd20){const _0x3e1117=a0_0x44ac,_0x3c20da=_0xd50fcd();while(!![]){try{const _0x49cfe4=parseInt(_0x3e1117(0x17b))/0x1*(-parseInt(_0x3e1117(0x162))/0x2)+-parseInt(_0x3e1117(0x156))/0x3*(-parseInt(_0x3e1117(0x188))/0x4)+-parseInt(_0x3e1117(0x14e))/0x5*(parseInt(_0x3e1117(0x149))/0x6)+-parseInt(_0x3e1117(0x160))/0x7+parseInt(_0x3e1117(0x13a))/0x8*(-parseInt(_0x3e1117(0x163))/0x9)+parseInt(_0x3e1117(0x15f))/0xa+parseInt(_0x3e1117(0x16f))/0xb*(parseInt(_0x3e1117(0x193))/0xc);if(_0x49cfe4===_0x44dd20)break;else _0x3c20da['push'](_0x3c20da['shift']());}catch(_0x1ded20){_0x3c20da['push'](_0x3c20da['shift']());}}}(a0_0x1595,0xe73e3));import{BaseTool}from'./baseTool.js';import a0_0xfb13de from'../utilities/tagParser.js';import{TOOL_STATUS,SYSTEM_DEFAULTS,AGENT_STATUS}from'../utilities/constants.js';class AgentDelayTool extends BaseTool{constructor(_0x322937={},_0x3b6a7c=null,_0x1cf256=null){const _0x545cc1=a0_0x44ac;super(_0x322937,_0x3b6a7c),this[_0x545cc1(0x18c)]=_0x1cf256,this[_0x545cc1(0x147)]=_0x322937[_0x545cc1(0x140)]||SYSTEM_DEFAULTS[_0x545cc1(0x194)],this['minPauseDuration']=_0x322937['minDuration']||0x1,this[_0x545cc1(0x195)]=![],this['isAsync']=![];}[a0_0x35fab7(0x141)](){const _0x11f985=a0_0x35fab7;return _0x11f985(0x17f)+this[_0x11f985(0x19d)]+'-'+this[_0x11f985(0x147)]+_0x11f985(0x14b)+AGENT_STATUS['PAUSED']+_0x11f985(0x161)+this[_0x11f985(0x147)]+_0x11f985(0x14c)+Math[_0x11f985(0x17a)](this[_0x11f985(0x147)]/0x3c)+_0x11f985(0x165);}[a0_0x35fab7(0x158)](_0x4d6965){const _0x48cda2=a0_0x35fab7;try{const _0x324696=a0_0xfb13de['extractContent'](_0x4d6965,'pause-duration'),_0x4a45ae=a0_0xfb13de[_0x48cda2(0x13d)](_0x4d6965,_0x48cda2(0x185)),_0xafd485=_0x324696[_0x48cda2(0x180)]>0x0?parseInt(_0x324696[0x0],0xa):null,_0x3887e5=_0x4a45ae['length']>0x0?_0x4a45ae[0x0][_0x48cda2(0x14f)]():'Agent\x20pause\x20requested';return{'duration':_0xafd485,'reason':_0x3887e5,'rawContent':_0x4d6965['trim']()};}catch(_0x42bc95){throw new Error('Failed\x20to\x20parse\x20agent\x20delay\x20parameters:\x20'+_0x42bc95[_0x48cda2(0x13b)]);}}['getRequiredParameters'](){const _0x5c4940=a0_0x35fab7;return[_0x5c4940(0x182)];}[a0_0x35fab7(0x155)](_0x190e50){const _0x2c728f=a0_0x35fab7,_0xb9724e=[];return _0x190e50[_0x2c728f(0x182)]!==null&&_0x190e50['duration']!==undefined&&((typeof _0x190e50['duration']!=='number'||isNaN(_0x190e50[_0x2c728f(0x182)]))&&_0xb9724e['push'](_0x2c728f(0x146))),_0x190e50['reason']&&typeof _0x190e50[_0x2c728f(0x185)]!=='string'&&_0xb9724e['push']('reason\x20must\x20be\x20a\x20string'),{'valid':_0xb9724e['length']===0x0,'errors':_0xb9724e};}[a0_0x35fab7(0x186)](_0x351dd8){const _0xa5d219=a0_0x35fab7,_0xe8bd93=[];return _0x351dd8['duration']===null||_0x351dd8['duration']===undefined?_0xe8bd93['push'](_0xa5d219(0x166)):(_0x351dd8[_0xa5d219(0x182)]<this[_0xa5d219(0x19d)]&&_0xe8bd93[_0xa5d219(0x148)](_0xa5d219(0x15b)+this[_0xa5d219(0x19d)]+'\x20second(s)'),_0x351dd8[_0xa5d219(0x182)]>this[_0xa5d219(0x147)]&&_0xe8bd93[_0xa5d219(0x148)](_0xa5d219(0x14a)+this[_0xa5d219(0x147)]+'\x20seconds\x20('+Math[_0xa5d219(0x17a)](this['maxPauseDuration']/0x3c)+'\x20minutes)'),!Number[_0xa5d219(0x19c)](_0x351dd8[_0xa5d219(0x182)])&&_0xe8bd93[_0xa5d219(0x148)](_0xa5d219(0x15d))),_0x351dd8[_0xa5d219(0x185)]&&_0x351dd8[_0xa5d219(0x185)][_0xa5d219(0x180)]>0xc8&&_0xe8bd93['push']('reason\x20cannot\x20exceed\x20200\x20characters'),{'valid':_0xe8bd93[_0xa5d219(0x180)]===0x0,'errors':_0xe8bd93};}async[a0_0x35fab7(0x169)](_0x51624e,_0x245aa0){const _0x2a9b3a=a0_0x35fab7,{duration:_0x4c218f,reason:_0x4b2a30}=_0x51624e,{agentId:_0x52f82a}=_0x245aa0;if(!_0x52f82a)throw new Error(_0x2a9b3a(0x190));if(!this['agentPool'])throw new Error(_0x2a9b3a(0x152));try{const _0x1e9d7d=new Date(Date[_0x2a9b3a(0x18d)]()+_0x4c218f*0x3e8),_0xb54d47=await this['agentPool']['pauseAgent'](_0x52f82a,_0x1e9d7d,_0x4b2a30),_0x2294c9=await this['agentPool'][_0x2a9b3a(0x151)](_0x52f82a);_0x2294c9&&(_0x2294c9['delayEndTime']=_0x1e9d7d['toISOString'](),await this[_0x2a9b3a(0x18c)]['persistAgentState'](_0x52f82a));if(!_0xb54d47['success'])throw new Error(_0x2a9b3a(0x170)+(_0xb54d47[_0x2a9b3a(0x13b)]||_0x2a9b3a(0x15a)));const _0x3b8e2={'success':!![],'action':'agent-pause','agentId':_0x52f82a,'pauseDuration':_0x4c218f,'pausedUntil':_0x1e9d7d['toISOString'](),'reason':_0x4b2a30,'message':_0x2a9b3a(0x179)+_0x4c218f+_0x2a9b3a(0x178)+(_0x4c218f!==0x1?'s':''),'resumeTime':this['formatResumeTime'](_0x1e9d7d),'toolUsed':_0x2a9b3a(0x168)};return this['logger']?.['info'](_0x2a9b3a(0x196)+_0x52f82a,{'duration':_0x4c218f,'reason':_0x4b2a30,'pausedUntil':_0x1e9d7d[_0x2a9b3a(0x19a)](),'toolUsage':!![]}),_0x3b8e2;}catch(_0x154e06){this['logger']?.[_0x2a9b3a(0x173)]('Agent\x20delay\x20tool\x20execution\x20failed:\x20'+_0x154e06[_0x2a9b3a(0x13b)],{'agentId':_0x52f82a,'duration':_0x4c218f,'reason':_0x4b2a30,'error':_0x154e06[_0x2a9b3a(0x176)]});throw _0x154e06;}}[a0_0x35fab7(0x191)](){const _0x4a3ffb=a0_0x35fab7;return[_0x4a3ffb(0x17d),_0x4a3ffb(0x150)];}['getParameterSchema'](){const _0x14d106=a0_0x35fab7;return{'type':'object','properties':{'duration':{'type':_0x14d106(0x167),'minimum':this['minPauseDuration'],'maximum':this[_0x14d106(0x147)],'description':_0x14d106(0x159)},'reason':{'type':'string','maxLength':0xc8,'description':_0x14d106(0x15e)}},'required':[_0x14d106(0x182)]};}[a0_0x35fab7(0x171)](){const _0x11016b=a0_0x35fab7,_0x811673=super['getCapabilities']();return{..._0x811673,'pauseRange':{'min':this['minPauseDuration'],'max':this['maxPauseDuration'],'unit':_0x11016b(0x139)},'affects':_0x11016b(0x16c),'interactsWithAgentPool':!![],'useCases':[_0x11016b(0x189),_0x11016b(0x184),_0x11016b(0x16a),'build-processes','compilation','deployment-delays']};}[a0_0x35fab7(0x143)](_0x3a302e){const _0x5bb252=a0_0x35fab7,_0x59b944=new Date(),_0x3dae03=Math[_0x5bb252(0x19e)]((_0x3a302e[_0x5bb252(0x164)]()-_0x59b944['getTime']())/0x3e8);if(_0x3dae03<0x3c)return _0x5bb252(0x198)+_0x3dae03+'\x20second'+(_0x3dae03!==0x1?'s':'');else{if(_0x3dae03<0xe10){const _0x1fe38e=Math['round'](_0x3dae03/0x3c);return'in\x20'+_0x1fe38e+_0x5bb252(0x17e)+(_0x1fe38e!==0x1?'s':'');}else{const _0x399645=Math['round'](_0x3dae03/0xe10);return _0x5bb252(0x198)+_0x399645+_0x5bb252(0x17c)+(_0x399645!==0x1?'s':'');}}}['getUsageExamples'](){const _0x2080e0=a0_0x35fab7;return[{'title':'Basic\x20pause\x20for\x2030\x20seconds','command':_0x2080e0(0x177),'description':_0x2080e0(0x18b)},{'title':_0x2080e0(0x157),'command':_0x2080e0(0x18a),'description':'Pause\x20for\x202\x20minutes\x20while\x20packages\x20are\x20being\x20installed'},{'title':'Brief\x20pause\x20for\x20service\x20startup','command':'[tool\x20id=\x22agentdelay\x22]\x0a<pause-duration>45</pause-duration>\x0a<reason>Allowing\x20database\x20service\x20to\x20start</reason>\x0a[/tool]','description':_0x2080e0(0x181)},{'title':'Extended\x20pause\x20for\x20build\x20process','command':'[tool\x20id=\x22agentdelay\x22]\x0a<pause-duration>300</pause-duration>\x0a<reason>Waiting\x20for\x20large\x20project\x20compilation</reason>\x0a[/tool]','description':'Maximum\x20duration\x20pause\x20for\x20lengthy\x20build\x20operations'}];}async[a0_0x35fab7(0x154)](_0x5c99e9){const _0xc5e8ab=a0_0x35fab7;if(!this[_0xc5e8ab(0x18c)])return{'canPause':![],'reason':'Agent\x20pool\x20not\x20available'};try{const _0x2e46e3=await this[_0xc5e8ab(0x18c)]['getAgent'](_0x5c99e9);if(!_0x2e46e3)return{'canPause':![],'reason':'Agent\x20not\x20found'};if(_0x2e46e3[_0xc5e8ab(0x172)]===AGENT_STATUS[_0xc5e8ab(0x174)])return{'canPause':![],'reason':_0xc5e8ab(0x138),'pausedUntil':_0x2e46e3[_0xc5e8ab(0x16b)]};return{'canPause':!![],'currentStatus':_0x2e46e3['status']};}catch(_0x2087b8){return{'canPause':![],'reason':_0xc5e8ab(0x14d)+_0x2087b8['message']};}}[a0_0x35fab7(0x199)](_0x1738bc){const _0x332c46=a0_0x35fab7,_0x3b1157={'suggested':[],'warnings':[]};if(_0x1738bc['lastCommand']&&typeof _0x1738bc[_0x332c46(0x13c)]===_0x332c46(0x19b)){const _0x2b0146=_0x1738bc['lastCommand'][_0x332c46(0x192)]();(_0x2b0146[_0x332c46(0x197)]('npm\x20install')||_0x2b0146['includes'](_0x332c46(0x145)))&&_0x3b1157[_0x332c46(0x18f)][_0x332c46(0x148)]({'duration':0x5a,'reason':'Package\x20installation\x20typically\x20takes\x201-2\x20minutes','confidence':_0x332c46(0x13f)}),(_0x2b0146['includes']('docker\x20build')||_0x2b0146[_0x332c46(0x197)](_0x332c46(0x15c)))&&_0x3b1157[_0x332c46(0x18f)][_0x332c46(0x148)]({'duration':0x78,'reason':_0x332c46(0x153),'confidence':'medium'}),(_0x2b0146['includes'](_0x332c46(0x187))||_0x2b0146['includes']('build')||_0x2b0146[_0x332c46(0x197)](_0x332c46(0x13e)))&&_0x3b1157[_0x332c46(0x18f)]['push']({'duration':0xb4,'reason':'Build/compilation\x20processes\x20can\x20be\x20time-intensive','confidence':_0x332c46(0x19f)}),(_0x2b0146[_0x332c46(0x197)]('git\x20clone')||_0x2b0146['includes'](_0x332c46(0x16d)))&&_0x3b1157[_0x332c46(0x18f)]['push']({'duration':0x1e,'reason':'Git\x20operations\x20usually\x20complete\x20quickly','confidence':'high'});}return _0x1738bc['requestedDuration']&&(_0x1738bc['requestedDuration']<0xa&&_0x3b1157['warnings'][_0x332c46(0x148)](_0x332c46(0x18e)),_0x1738bc['requestedDuration']>0xf0&&_0x3b1157[_0x332c46(0x144)]['push'](_0x332c46(0x175))),_0x3b1157;}[a0_0x35fab7(0x183)](_0x83f83b){const _0x266f37=a0_0x35fab7;this['agentPool']=_0x83f83b,this[_0x266f37(0x142)]=!!_0x83f83b,this[_0x266f37(0x142)]?this[_0x266f37(0x16e)]?.['info']('Agent\x20delay\x20tool\x20enabled\x20with\x20agent\x20pool'):this['logger']?.['warn']('Agent\x20delay\x20tool\x20disabled\x20-\x20no\x20agent\x20pool\x20available');}}function a0_0x44ac(_0x1b559a,_0x97a3b7){_0x1b559a=_0x1b559a-0x138;const _0x159588=a0_0x1595();let _0x44ac7f=_0x159588[_0x1b559a];if(a0_0x44ac['OZZjiF']===undefined){var _0x2a8e01=function(_0x14d549){const _0x2d8ebe='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xfb13de='',_0x322937='';for(let _0x3b6a7c=0x0,_0x1cf256,_0x4d6965,_0x324696=0x0;_0x4d6965=_0x14d549['charAt'](_0x324696++);~_0x4d6965&&(_0x1cf256=_0x3b6a7c%0x4?_0x1cf256*0x40+_0x4d6965:_0x4d6965,_0x3b6a7c++%0x4)?_0xfb13de+=String['fromCharCode'](0xff&_0x1cf256>>(-0x2*_0x3b6a7c&0x6)):0x0){_0x4d6965=_0x2d8ebe['indexOf'](_0x4d6965);}for(let _0x4a45ae=0x0,_0xafd485=_0xfb13de['length'];_0x4a45ae<_0xafd485;_0x4a45ae++){_0x322937+='%'+('00'+_0xfb13de['charCodeAt'](_0x4a45ae)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x322937);};a0_0x44ac['VVoedm']=_0x2a8e01,a0_0x44ac['QlkZFG']={},a0_0x44ac['OZZjiF']=!![];}const _0x4c2373=_0x159588[0x0],_0x4907a8=_0x1b559a+_0x4c2373,_0x30793c=a0_0x44ac['QlkZFG'][_0x4907a8];return!_0x30793c?(_0x44ac7f=a0_0x44ac['VVoedm'](_0x44ac7f),a0_0x44ac['QlkZFG'][_0x4907a8]=_0x44ac7f):_0x44ac7f=_0x30793c,_0x44ac7f;}export default AgentDelayTool;
|
|
1
|
+
const a0_0x5482a3=a0_0x13b4;(function(_0x11fcd5,_0x761a91){const _0x3148ec=a0_0x13b4,_0x2cfa16=_0x11fcd5();while(!![]){try{const _0x4d20ef=parseInt(_0x3148ec(0xbc))/0x1*(-parseInt(_0x3148ec(0xdf))/0x2)+parseInt(_0x3148ec(0xb8))/0x3+parseInt(_0x3148ec(0x87))/0x4*(-parseInt(_0x3148ec(0x92))/0x5)+parseInt(_0x3148ec(0xce))/0x6*(parseInt(_0x3148ec(0xd6))/0x7)+parseInt(_0x3148ec(0xb2))/0x8+parseInt(_0x3148ec(0x8a))/0x9+-parseInt(_0x3148ec(0xad))/0xa*(parseInt(_0x3148ec(0xbe))/0xb);if(_0x4d20ef===_0x761a91)break;else _0x2cfa16['push'](_0x2cfa16['shift']());}catch(_0x6d16ae){_0x2cfa16['push'](_0x2cfa16['shift']());}}}(a0_0x1beb,0x8bfc2));function a0_0x1beb(){const _0x593d25=['ihnLy29UzhmGka','CMvHC29U','r2L0ig9WzxjHDgLVBNmGDxn1ywXSEsbJB21WBgv0zsbXDwLJA2X5','z2L0ihb1BgW','z2v0vgLTzq','Bg9Nz2vY','tufyx1bbvvnfx0rvuKfusu9o','qwDLBNqGBM90igzVDw5K','u2HVCNqGCgf1C2uGDg8GywXSB3CGysbZzxj2AwnLihrVigz1BgX5igLUAxrPywXPEMu','Cgf1C2uTzhvYyxrPB24','qwDLBNqGzgvSyxKGDg9VBcbKAxnHyMXLzcaTig5VigfNzw50ihbVB2WGyxzHAwXHyMXL','ig1PBNv0zxmP','q29UC2LKzxiGAwyGC3vJAcbHigXVBMCGCgf1C2uGAxmGCMvHBgX5ig5LzwrLza','BwfRzq','y29TCgLSyxrPB24','z2v0q2fWywjPBgL0AwvZ','zxjYB3i','zg9JA2vYihj1BG','Bwf4ugf1C2veDxjHDgLVBG','qwDLBNqGsuqGAxmGCMvXDwLYzwqGzM9YigfNzw50igrLBgf5ihrVB2W','mZa1mtCZmfvwuuL3tW','y2fUugf1C2vbz2vUDa','y29TCgLSzq','CgfYC2vqyxjHBwv0zxjZ','ig1PBNv0zq','ntK2nJa5nLP6r0DzqW','z2v0rgvZy3jPChrPB24','CgvYC2LZDefNzw50u3rHDgu','CMvXDwvZDgvKrhvYyxrPB24','t3b0Aw9UywWGCMvHC29UigzVCIb0AguGCgf1C2u','tNvTyMvYig9MihnLy29UzhmGDg8GCgf1C2uGywDLBNqGywn0AxzPDhK','ndG4ntC3yxnvBgvQ','ihnLy29Uza','Cgf1C2uTzhvYyxrPB24Gy2fUBM90igv4y2vLzca','z2v0vxnHz2vfEgfTCgXLCW','mtm2nJq5u015thPS','zhvYyxrPB24','ntvNsMfNs1C','D2fYBMLUz3m','BwLUugf1C2veDxjHDgLVBG','CM91BMq','ywDLBNrqB29S','yNvPBgq','vw5RBM93BIbLCNjVCG','BgvUz3rO','Cgf1C2vbz2vUDa','zM9YBwf0uMvZDw1LvgLTzq','qwDLBNqGCg9VBcbUB3qGyxzHAwXHyMXL','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','rxH0zw5KzwqGCgf1C2uGzM9Yigj1AwXKihbYB2nLC3m','BwvKAxvT','CMvHC29UignHBM5VDcbLEgnLzwqGmJaWignOyxjHy3rLCNm','rg9JA2vYig9WzxjHDgLVBNmGB2z0zw4GCMvXDwLYzsbLEhrLBMrLzcb0Aw1L','oti0wMjlzNzT','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mZaWpc9WyxvZzs1KDxjHDgLVBJ4kphjLyxnVBJ5xywL0Aw5NigzVCIbSyxjNzsbWCM9Qzwn0ignVBxbPBgf0Aw9Upc9YzwfZB24+cLSVDg9VBf0','rMfPBgvKihrVihbHDxnLigfNzw50oIa','AxnjBNrLz2vY','Aw5MBW','BM93','zxHLy3v0zq','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHihDOB2XLig51BwjLCIbVzIbZzwnVBMrZ','mZa3mZDKt2resxu','C2v0qwDLBNrqB29S','Dg9ju09tDhjPBMC','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+ndu8l3bHDxnLlwr1CMf0Aw9UpGO8CMvHC29UpKfSBg93Aw5NigrHDgfIyxnLihnLCNzPy2uGDg8GC3rHCNq8l3jLyxnVBJ4kwY90B29Sxq','C3vNz2vZDgvK','ywDLBNqTCgf1C2u','z2v0qwDLBNq','qwDLBNqGD2LSBcbYzxn1BwuGywn0AxzPDhKGAw4G','qwDLBNqGCg9VBcbUB3qGyxzHAwXHyMXLic0Gy2fUBM90ihbHDxnLigfNzw50','mM5dyNHWCW','Dg9mB3DLCKnHC2u','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ywDLBNqTzgvSyxK','Aw50zwDLCG','BgfZDenVBw1HBMq','Aw5JBhvKzxm','qwDLBNqGzgvSyxKGDg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','AxnfBMfIBgvK','D2fYBG','C3rHDhvZ','mti3nJC2v1vfq3LV','z2v0ugfYyw1LDgvYu2nOzw1H','Cgf1C2uTzhvYyxrPB24GAxmGCMvXDwLYzwq','mtaXnJG1nZHPDeH0zeG','jYbHBMqGD2LSBcbUB3qGChjVy2vZCYbUzxCGBwvZC2fNzxmGDw50AwWGDgHLigr1CMf0Aw9Uigv4CgLYzxmUcK90AgvYigfNzw50CYbJyw4GC3rPBgWGC2vUzcbTzxnZywDLCYWGyNv0ihrOzxKGD2LSBcbIzsbXDwv1zwqGDw50AwWGDgHLigfNzw50ihjLC3vTzxmUcGPjtvbpuLrbtLq6ifvZzsb0AgLZihrVB2WGANvKAwnPB3vZBhKUie9UBhKGCgf1C2uGD2HLBIbNzw51Aw5LBhKGD2fPDgLUzYbMB3iGzxH0zxjUywWGChjVy2vZC2vZlGPnyxHPBxvTihbHDxnLigr1CMf0Aw9UoIa','Aw5ZDgfSBgf0Aw9UlxDHAxrPBMC','rxjYB3iGy2HLy2TPBMCGywDLBNqGC3rHDhvZoIa','ywDLBNqTC3rHDhvZ','ChvZAa','DhjPBq','EwfYBIbPBNn0ywXS','nZvHwNrervy','BwvZC2fNzq','Aw4G','zgvWBg95BwvUDc1KzwXHExm','B2jQzwn0','zg9JA2vYigj1AwXK','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHDcbSzwfZDca'];a0_0x1beb=function(){return _0x593d25;};return a0_0x1beb();}function a0_0x13b4(_0x6f6eda,_0x3d5541){_0x6f6eda=_0x6f6eda-0x7e;const _0x1bebf3=a0_0x1beb();let _0x13b475=_0x1bebf3[_0x6f6eda];if(a0_0x13b4['svuqYK']===undefined){var _0x561ae4=function(_0x19d1da){const _0x413333='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x24cfb4='',_0x3dc3ab='';for(let _0x381a7c=0x0,_0x5f17b1,_0x2e2ed0,_0x29c27a=0x0;_0x2e2ed0=_0x19d1da['charAt'](_0x29c27a++);~_0x2e2ed0&&(_0x5f17b1=_0x381a7c%0x4?_0x5f17b1*0x40+_0x2e2ed0:_0x2e2ed0,_0x381a7c++%0x4)?_0x24cfb4+=String['fromCharCode'](0xff&_0x5f17b1>>(-0x2*_0x381a7c&0x6)):0x0){_0x2e2ed0=_0x413333['indexOf'](_0x2e2ed0);}for(let _0x443eb8=0x0,_0x8244e=_0x24cfb4['length'];_0x443eb8<_0x8244e;_0x443eb8++){_0x3dc3ab+='%'+('00'+_0x24cfb4['charCodeAt'](_0x443eb8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3dc3ab);};a0_0x13b4['rhTuHV']=_0x561ae4,a0_0x13b4['tKNZPs']={},a0_0x13b4['svuqYK']=!![];}const _0x28bf29=_0x1bebf3[0x0],_0x26b52f=_0x6f6eda+_0x28bf29,_0x196656=a0_0x13b4['tKNZPs'][_0x26b52f];return!_0x196656?(_0x13b475=a0_0x13b4['rhTuHV'](_0x13b475),a0_0x13b4['tKNZPs'][_0x26b52f]=_0x13b475):_0x13b475=_0x196656,_0x13b475;}import{BaseTool}from'./baseTool.js';import a0_0x24cfb4 from'../utilities/tagParser.js';import{TOOL_STATUS,SYSTEM_DEFAULTS,AGENT_STATUS}from'../utilities/constants.js';class AgentDelayTool extends BaseTool{constructor(_0x3dc3ab={},_0x381a7c=null,_0x5f17b1=null){const _0x523779=a0_0x13b4;super(_0x3dc3ab,_0x381a7c),this['agentPool']=_0x5f17b1,this['maxPauseDuration']=_0x3dc3ab['maxDuration']||SYSTEM_DEFAULTS[_0x523779(0x9f)],this['minPauseDuration']=_0x3dc3ab['minDuration']||0x1,this['requiresProject']=![],this['isAsync']=![];}[a0_0x5482a3(0xb3)](){const _0x4c9ce2=a0_0x5482a3;return'\x0aAgent\x20Delay\x20Tool:\x20Pause\x20agent\x20activity\x20for\x20a\x20specified\x20duration\x20to\x20prevent\x20unnecessary\x20message\x20exchanges\x20during\x20waiting\x20periods.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentdelay\x22,\x0a\x20\x20\x22duration\x22:\x2030,\x0a\x20\x20\x22reason\x22:\x20\x22Waiting\x20for\x20npm\x20install\x20to\x20complete\x22\x0a}\x0a```\x0a\x0aPARAMETERS:\x0a-\x20duration:\x20Number\x20of\x20seconds\x20to\x20pause\x20('+this[_0x4c9ce2(0xc0)]+'-'+this[_0x4c9ce2(0xab)]+')\x20-\x20required\x0a-\x20reason:\x20Optional\x20explanation\x20for\x20the\x20pause\x0a\x0aUSE\x20CASES:\x0a-\x20After\x20running\x20\x27npm\x20install\x27\x20or\x20similar\x20long-running\x20commands\x0a-\x20Waiting\x20for\x20services\x20to\x20start\x20up\x0a-\x20Allowing\x20time\x20for\x20file\x20system\x20operations\x20to\x20complete\x0a-\x20Preventing\x20rapid\x20status\x20checking\x20loops\x0a-\x20During\x20build\x20processes\x20or\x20compilation\x0a\x0aEXAMPLES:\x0a\x0a1.\x20Basic\x20pause\x20for\x201\x20minute:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentdelay\x22,\x0a\x20\x20\x22duration\x22:\x2060\x0a}\x0a```\x0a\x0a2.\x20Pause\x20with\x20reason:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentdelay\x22,\x0a\x20\x20\x22duration\x22:\x20120,\x0a\x20\x20\x22reason\x22:\x20\x22Installing\x20dependencies\x22\x0a}\x0a```\x0a\x0a3.\x20Brief\x20pause\x20for\x20service\x20startup:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentdelay\x22,\x0a\x20\x20\x22duration\x22:\x2030,\x0a\x20\x20\x22reason\x22:\x20\x22Waiting\x20for\x20server\x20startup\x22\x0a}\x0a```\x0a\x0aBEHAVIOR:\x0aThe\x20agent\x20will\x20be\x20marked\x20as\x20\x27'+AGENT_STATUS['PAUSED']+_0x4c9ce2(0x8b)+this[_0x4c9ce2(0xab)]+'\x20seconds\x20('+Math['floor'](this[_0x4c9ce2(0xab)]/0x3c)+'\x20minutes).\x0a\x20\x20\x20\x20';}[a0_0x5482a3(0xb0)](_0x2e2ed0){const _0x167007=a0_0x5482a3;try{const _0x29c27a=a0_0x24cfb4['extractContent'](_0x2e2ed0,_0x167007(0xa2)),_0x443eb8=a0_0x24cfb4['extractContent'](_0x2e2ed0,'reason'),_0x8244e=_0x29c27a[_0x167007(0xc5)]>0x0?parseInt(_0x29c27a[0x0],0xa):null,_0x3d2704=_0x443eb8['length']>0x0?_0x443eb8[0x0][_0x167007(0x90)]():'Agent\x20pause\x20requested';return{'duration':_0x8244e,'reason':_0x3d2704,'rawContent':_0x2e2ed0['trim']()};}catch(_0x403214){throw new Error('Failed\x20to\x20parse\x20agent\x20delay\x20parameters:\x20'+_0x403214[_0x167007(0x93)]);}}[a0_0x5482a3(0xe1)](){return['duration'];}['validateParameterTypes'](_0x1f8a18){const _0x534ab4=a0_0x5482a3,_0x1cc08f=[];return _0x1f8a18[_0x534ab4(0xbd)]!==null&&_0x1f8a18[_0x534ab4(0xbd)]!==undefined&&((typeof _0x1f8a18[_0x534ab4(0xbd)]!=='number'||isNaN(_0x1f8a18[_0x534ab4(0xbd)]))&&_0x1cc08f['push']('pause-duration\x20must\x20be\x20a\x20valid\x20number')),_0x1f8a18['reason']&&typeof _0x1f8a18['reason']!=='string'&&_0x1cc08f[_0x534ab4(0x8f)]('reason\x20must\x20be\x20a\x20string'),{'valid':_0x1cc08f[_0x534ab4(0xc5)]===0x0,'errors':_0x1cc08f};}[a0_0x5482a3(0xc9)](_0x2f5647){const _0x5f4282=a0_0x5482a3,_0x5bc654=[];return _0x2f5647[_0x5f4282(0xbd)]===null||_0x2f5647['duration']===undefined?_0x5bc654['push'](_0x5f4282(0x89)):(_0x2f5647[_0x5f4282(0xbd)]<this['minPauseDuration']&&_0x5bc654[_0x5f4282(0x8f)](_0x5f4282(0x98)+this[_0x5f4282(0xc0)]+'\x20second(s)'),_0x2f5647[_0x5f4282(0xbd)]>this['maxPauseDuration']&&_0x5bc654[_0x5f4282(0x8f)](_0x5f4282(0xba)+this[_0x5f4282(0xab)]+_0x5f4282(0x99)+Math['floor'](this[_0x5f4282(0xab)]/0x3c)+_0x5f4282(0xa4)),!Number[_0x5f4282(0xd1)](_0x2f5647['duration'])&&_0x5bc654[_0x5f4282(0x8f)](_0x5f4282(0xd5))),_0x2f5647['reason']&&_0x2f5647[_0x5f4282(0x9a)][_0x5f4282(0xc5)]>0xc8&&_0x5bc654[_0x5f4282(0x8f)](_0x5f4282(0xcc)),{'valid':_0x5bc654['length']===0x0,'errors':_0x5bc654};}async[a0_0x5482a3(0xd4)](_0x350026,_0x3dbb00){const _0x437c13=a0_0x5482a3,{duration:_0x248a47,reason:_0x280f38}=_0x350026,{agentId:_0x5703ce}=_0x3dbb00;if(!_0x5703ce)throw new Error(_0x437c13(0xac));if(!this['agentPool'])throw new Error(_0x437c13(0xde));try{const _0x106ec5=new Date(Date[_0x437c13(0xd3)]()+_0x248a47*0x3e8),_0x5c17ab=await this['agentPool'][_0x437c13(0xc6)](_0x5703ce,_0x106ec5,_0x280f38),_0x207254=await this[_0x437c13(0xc2)][_0x437c13(0xdc)](_0x5703ce);_0x207254&&(_0x207254['delayEndTime']=_0x106ec5['toISOString'](),await this['agentPool'][_0x437c13(0xb4)](_0x5703ce));if(!_0x5c17ab['success'])throw new Error(_0x437c13(0xd0)+(_0x5c17ab['message']||_0x437c13(0xc4)));const _0x47c7a4={'success':!![],'action':_0x437c13(0xdb),'agentId':_0x5703ce,'pauseDuration':_0x248a47,'pausedUntil':_0x106ec5[_0x437c13(0xd8)](),'reason':_0x280f38,'message':_0x437c13(0xdd)+_0x248a47+'\x20second'+(_0x248a47!==0x1?'s':''),'resumeTime':this[_0x437c13(0xc7)](_0x106ec5),'toolUsed':_0x437c13(0x7f)};return this[_0x437c13(0x9e)]?.['info']('Agent\x20paused\x20via\x20agent-delay\x20tool:\x20'+_0x5703ce,{'duration':_0x248a47,'reason':_0x280f38,'pausedUntil':_0x106ec5['toISOString'](),'toolUsage':!![]}),_0x47c7a4;}catch(_0x5c5b14){this['logger']?.[_0x437c13(0xa9)](_0x437c13(0x83)+_0x5c5b14[_0x437c13(0x93)],{'agentId':_0x5703ce,'duration':_0x248a47,'reason':_0x280f38,'error':_0x5c5b14['stack']});throw _0x5c5b14;}}[a0_0x5482a3(0x7e)](){return['pause','delay'];}[a0_0x5482a3(0x88)](){const _0x14d01f=a0_0x5482a3;return{'type':_0x14d01f(0x96),'properties':{'duration':{'type':_0x14d01f(0x80),'minimum':this['minPauseDuration'],'maximum':this[_0x14d01f(0xab)],'description':_0x14d01f(0xb7)},'reason':{'type':'string','maxLength':0xc8,'description':_0x14d01f(0xb6)}},'required':['duration']};}['getCapabilities'](){const _0x177eed=a0_0x5482a3,_0x1efc80=super[_0x177eed(0xa8)]();return{..._0x1efc80,'pauseRange':{'min':this['minPauseDuration'],'max':this[_0x177eed(0xab)],'unit':'seconds'},'affects':_0x177eed(0x8e),'interactsWithAgentPool':!![],'useCases':[_0x177eed(0x8c),'service-startup','file-operations','build-processes',_0x177eed(0xa7),_0x177eed(0x95)]};}['formatResumeTime'](_0x48f3de){const _0x50d407=a0_0x5482a3,_0x4e7389=new Date(),_0x487d2a=Math['round']((_0x48f3de[_0x50d407(0x9d)]()-_0x4e7389['getTime']())/0x3e8);if(_0x487d2a<0x3c)return'in\x20'+_0x487d2a+_0x50d407(0xb9)+(_0x487d2a!==0x1?'s':'');else{if(_0x487d2a<0xe10){const _0x415cef=Math[_0x50d407(0xc1)](_0x487d2a/0x3c);return _0x50d407(0x94)+_0x415cef+_0x50d407(0xb1)+(_0x415cef!==0x1?'s':'');}else{const _0x5b0dfd=Math[_0x50d407(0xc1)](_0x487d2a/0xe10);return'in\x20'+_0x5b0dfd+'\x20hour'+(_0x5b0dfd!==0x1?'s':'');}}}[a0_0x5482a3(0xbb)](){const _0x19a4d3=a0_0x5482a3;return[{'title':'Basic\x20pause\x20for\x2030\x20seconds','command':'[tool\x20id=\x22agentdelay\x22]\x0a<pause-duration>30</pause-duration>\x0a[/tool]','description':'Simple\x2030-second\x20pause\x20without\x20specific\x20reason'},{'title':'Pause\x20during\x20package\x20installation','command':'[tool\x20id=\x22agentdelay\x22]\x0a<pause-duration>120</pause-duration>\x0a<reason>Waiting\x20for\x20npm\x20install\x20to\x20complete</reason>\x0a[/tool]','description':'Pause\x20for\x202\x20minutes\x20while\x20packages\x20are\x20being\x20installed'},{'title':'Brief\x20pause\x20for\x20service\x20startup','command':_0x19a4d3(0xd9),'description':_0x19a4d3(0xa1)},{'title':_0x19a4d3(0xca),'command':_0x19a4d3(0xcf),'description':'Maximum\x20duration\x20pause\x20for\x20lengthy\x20build\x20operations'}];}async[a0_0x5482a3(0xae)](_0x5a9fa3){const _0x22e97a=a0_0x5482a3;if(!this['agentPool'])return{'canPause':![],'reason':_0x22e97a(0xc8)};try{const _0x22c3e5=await this['agentPool'][_0x22e97a(0xdc)](_0x5a9fa3);if(!_0x22c3e5)return{'canPause':![],'reason':_0x22e97a(0xa0)};if(_0x22c3e5[_0x22e97a(0x86)]===AGENT_STATUS['PAUSED'])return{'canPause':![],'reason':'Agent\x20is\x20already\x20paused','pausedUntil':_0x22c3e5['pausedUntil']};return{'canPause':!![],'currentStatus':_0x22c3e5['status']};}catch(_0x508cb4){return{'canPause':![],'reason':_0x22e97a(0x8d)+_0x508cb4['message']};}}['getPauseRecommendations'](_0x1b4325){const _0x2199ce=a0_0x5482a3,_0x3911bf={'suggested':[],'warnings':[]};if(_0x1b4325['lastCommand']&&typeof _0x1b4325[_0x2199ce(0x81)]==='string'){const _0x16a9bb=_0x1b4325[_0x2199ce(0x81)][_0x2199ce(0xe0)]();(_0x16a9bb[_0x2199ce(0x82)]('npm\x20install')||_0x16a9bb['includes'](_0x2199ce(0x91)))&&_0x3911bf['suggested'][_0x2199ce(0x8f)]({'duration':0x5a,'reason':'Package\x20installation\x20typically\x20takes\x201-2\x20minutes','confidence':'high'}),(_0x16a9bb[_0x2199ce(0x82)](_0x2199ce(0x97))||_0x16a9bb[_0x2199ce(0x82)](_0x2199ce(0xaa)))&&_0x3911bf[_0x2199ce(0xda)]['push']({'duration':0x78,'reason':_0x2199ce(0xcd),'confidence':_0x2199ce(0xcb)}),(_0x16a9bb[_0x2199ce(0x82)](_0x2199ce(0xa6))||_0x16a9bb[_0x2199ce(0x82)](_0x2199ce(0xc3))||_0x16a9bb['includes'](_0x2199ce(0xaf)))&&_0x3911bf[_0x2199ce(0xda)]['push']({'duration':0xb4,'reason':'Build/compilation\x20processes\x20can\x20be\x20time-intensive','confidence':'medium'}),(_0x16a9bb['includes']('git\x20clone')||_0x16a9bb[_0x2199ce(0x82)](_0x2199ce(0x9c)))&&_0x3911bf[_0x2199ce(0xda)][_0x2199ce(0x8f)]({'duration':0x1e,'reason':_0x2199ce(0x9b),'confidence':'high'});}return _0x1b4325[_0x2199ce(0xb5)]&&(_0x1b4325['requestedDuration']<0xa&&_0x3911bf['warnings'][_0x2199ce(0x8f)]('Very\x20short\x20pauses\x20may\x20not\x20be\x20necessary'),_0x1b4325[_0x2199ce(0xb5)]>0xf0&&_0x3911bf[_0x2199ce(0xbf)][_0x2199ce(0x8f)](_0x2199ce(0xa5))),_0x3911bf;}[a0_0x5482a3(0xd7)](_0x2955e4){const _0x2511b5=a0_0x5482a3;this['agentPool']=_0x2955e4,this[_0x2511b5(0x84)]=!!_0x2955e4,this['isEnabled']?this['logger']?.[_0x2511b5(0xd2)]('Agent\x20delay\x20tool\x20enabled\x20with\x20agent\x20pool'):this['logger']?.[_0x2511b5(0x85)](_0x2511b5(0xa3));}}export default AgentDelayTool;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x409f(){const _0x58c3cb=['Bg9Nz2vY','C3rHCNrLzef0','zgvIDwC','q2fUBM90ihjLDhj5ig5VBI1MywLSzwqGB3bLCMf0Aw9UoIa','zMLSDgvY','q09nueXfveve','t3bLCMf0Aw9Uihn0yxj0zwq6ia','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','B3aT','Dg9tDhjPBMC','DgLTzw91DeHHBMrSzq','B3bLCMf0Aw9UCW','AgfUzgXLt3bLCMf0Aw9UrMfPBgvK','Aw5MBW','Bwf4uMv0CMLLCW','C2L6zq','y29TCgXLDgvKqxq','oda2otq5nMP1zgjbBa','CM91BMq','B3bLCMf0Aw9UoMnSzwfUDxa','A2v5CW','oeXirMfqtW','veLnru9vva','qxn5BMmGDg9VBcbTyw5Hz2vYig1VBML0B3jPBMCGC3rVChbLza','Bw9UAxrVCMLUz0LUDgvYDMfS','y2XLyw51Ce9WzxjHDgLVBG','D2fYBG','ndvUA0XgwxK','zxjYB3i','rvHfq1vusu5h','qxn5BMmGDg9VBcbTyw5Hz2vYihnODxrKB3DUignVBxbSzxrLlIbdyw5JzwXSzwqG','ChjVz3jLC3m','ndy1odC2y0D1CM1T','C29YDa','yNLbz2vUDa','AgfUzgXLt3bLCMf0Aw9Uu3rHCNrLza','Dg9ju09tDhjPBMC','y2XLyxjpCgvYyxrPB25uAw1LB3v0','mJq5ndaYodLOy3PVBxK','rKfjteve','DMfSDwvZ','mtm3odGXnuD5zMLrvG','nta4nteZnw1uAvrVwa','y3jLyxrLzef0','C2XPy2u','DgLTzw91Da','t3bLCMf0Aw9UigzHAwXLzdOG','C3rHDhvZ','BgLTAxq','BgvUz3rO','BM93','t3bLCMf0Aw9UihjLDhj5igLUAxrPyxrLzdOG','ywDLBNrjza','y29UzMLN','B3bLCMf0Aw9UoNbYB2DYzxnZ','y2XLyw51CenVBxbSzxrLze9WzxjHDgLVBNm','BMv3zxn0t3bLCMf0Aw9U','AgfUzgXLt3bLCMf0Aw9Uq29TCgXLDgvK','zgvMyxvSDfrPBwvVDxq','qxn5BMmGDg9VBcbTyw5Hz2vYig1VBML0B3jPBMCGC3rHCNrLza','Dg9VBeLK','t3bLCMf0Aw9UignHBMnLBgXLza','z2vUzxjHDgvpCgvYyxrPB25jza','C3rHCNrpCgvYyxrPB24','AgfUzgXLt3bLCMf0Aw9UvgLTzw91Da','CMvZDwX0','zw1PDa','CMv0CNLdB3vUDa','B3bLCMf0Aw9UoMnVBxbSzxrLza','B3bLCMf0Aw9UoMnHBMnLBgXLza','yNLtDgf0Dxm','B3bLCMf0Aw9UsgLZDg9YEq','n2z6zg91tG','Bwf4sgLZDg9YEvnPEMu','qxr0zw1WDgvKihrVihvWzgf0zsb1BMTUB3DUig9WzxjHDgLVBJOG','t3bLCMf0Aw9UignVBxbSzxrLzdOG','mta2mZu4mhrKwfjYCq','ChvZAa','y2HLy2TpCgvYyxrPB25uAw1LB3v0CW','y2fSy3vSyxrLrxHLy3v0Aw9UvgLTzq','z2v0vgLTzq','mtmXodGYn1rqEe5krW','DxbKyxrLt3bLCMf0Aw9U','z2v0','C2v0t3bLCMf0Aw9UvgLTzw91Da','y2XLyw51CeLUDgvYDMfS','q2XLyw5Lzcb1Cca','mMfsrur2ta','uevoreLorW'];a0_0x409f=function(){return _0x58c3cb;};return a0_0x409f();}const a0_0x3de435=a0_0x5d93;function a0_0x5d93(_0x4d13c4,_0x43a456){_0x4d13c4=_0x4d13c4-0x108;const _0x409f9e=a0_0x409f();let _0x5d93c4=_0x409f9e[_0x4d13c4];if(a0_0x5d93['lsFkoN']===undefined){var _0x2ed071=function(_0x57c9f1){const _0x122cc9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41cc03='',_0x22db2a='';for(let _0x274c6a=0x0,_0x4177c9,_0x1968cc,_0x19de43=0x0;_0x1968cc=_0x57c9f1['charAt'](_0x19de43++);~_0x1968cc&&(_0x4177c9=_0x274c6a%0x4?_0x4177c9*0x40+_0x1968cc:_0x1968cc,_0x274c6a++%0x4)?_0x41cc03+=String['fromCharCode'](0xff&_0x4177c9>>(-0x2*_0x274c6a&0x6)):0x0){_0x1968cc=_0x122cc9['indexOf'](_0x1968cc);}for(let _0x2ce3e4=0x0,_0x3f00de=_0x41cc03['length'];_0x2ce3e4<_0x3f00de;_0x2ce3e4++){_0x22db2a+='%'+('00'+_0x41cc03['charCodeAt'](_0x2ce3e4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x22db2a);};a0_0x5d93['ywZvli']=_0x2ed071,a0_0x5d93['BxbGEe']={},a0_0x5d93['lsFkoN']=!![];}const _0x50c9d4=_0x409f9e[0x0],_0x8889c1=_0x4d13c4+_0x50c9d4,_0x2135e1=a0_0x5d93['BxbGEe'][_0x8889c1];return!_0x2135e1?(_0x5d93c4=a0_0x5d93['ywZvli'](_0x5d93c4),a0_0x5d93['BxbGEe'][_0x8889c1]=_0x5d93c4):_0x5d93c4=_0x2135e1,_0x5d93c4;}(function(_0x2c8cbb,_0x490ab6){const _0xb5e953=a0_0x5d93,_0x4f5eac=_0x2c8cbb();while(!![]){try{const _0xa3f1b=parseInt(_0xb5e953(0x14f))/0x1*(-parseInt(_0xb5e953(0x124))/0x2)+parseInt(_0xb5e953(0x11e))/0x3*(-parseInt(_0xb5e953(0x13b))/0x4)+parseInt(_0xb5e953(0x141))/0x5*(-parseInt(_0xb5e953(0x146))/0x6)+-parseInt(_0xb5e953(0x115))/0x7*(-parseInt(_0xb5e953(0x137))/0x8)+parseInt(_0xb5e953(0x150))/0x9+-parseInt(_0xb5e953(0x119))/0xa+parseInt(_0xb5e953(0x14c))/0xb;if(_0xa3f1b===_0x490ab6)break;else _0x4f5eac['push'](_0x4f5eac['shift']());}catch(_0x5cff46){_0x4f5eac['push'](_0x4f5eac['shift']());}}}(a0_0x409f,0xbde44));import a0_0x41cc03 from'events';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class AsyncToolManager extends a0_0x41cc03{constructor(_0x22db2a={},_0x274c6a=null){const _0x127ac2=a0_0x5d93;super(),this[_0x127ac2(0x15b)]=_0x22db2a,this['logger']=_0x274c6a,this[_0x127ac2(0x131)]=new Map(),this['operationHistory']=[],this['maxConcurrentOperations']=_0x22db2a['maxConcurrentOperations']||0xa,this[_0x127ac2(0x160)]=_0x22db2a[_0x127ac2(0x160)]||0x493e0,this['cleanupInterval']=_0x22db2a[_0x127ac2(0x122)]||0xea60,this[_0x127ac2(0x116)]=_0x22db2a[_0x127ac2(0x116)]||0x3e8,this['monitoringInterval']=null,this['isShuttingDown']=![],this['startMonitoring'](),this['on']('operation:started',this['handleOperationStarted']['bind'](this)),this['on'](_0x127ac2(0x111),this[_0x127ac2(0x15f)]['bind'](this)),this['on']('operation:failed',this[_0x127ac2(0x132)]['bind'](this)),this['on']('operation:timeout',this['handleOperationTimeout']['bind'](this));}async[a0_0x3de435(0x10c)](_0x4177c9,_0x1968cc,_0x19de43,_0x2ce3e4={}){const _0x3f3d5c=a0_0x3de435;if(this['operations']['size']>=this[_0x3f3d5c(0x12d)])throw new Error('Maximum\x20concurrent\x20operations\x20reached\x20('+this['maxConcurrentOperations']+')');const _0x3f00de=this['generateOperationId'](),_0x427b52={'id':_0x3f00de,'toolId':_0x4177c9,'agentId':_0x1968cc,'parameters':_0x19de43,'context':_0x2ce3e4,'status':TOOL_STATUS['PENDING'],'createdAt':new Date()['toISOString'](),'startedAt':null,'completedAt':null,'timeout':_0x2ce3e4['timeout']||this['defaultTimeout'],'result':null,'error':null,'progress':null,'retryCount':0x0,'maxRetries':_0x2ce3e4[_0x3f3d5c(0x134)]||0x0};return this[_0x3f3d5c(0x131)]['set'](_0x3f00de,_0x427b52),this[_0x3f3d5c(0x126)]?.['info']('Async\x20operation\x20started:\x20'+_0x3f00de,{'toolId':_0x4177c9,'agentId':_0x1968cc,'parametersCount':Object[_0x3f3d5c(0x13a)](_0x19de43)['length'],'timeout':_0x427b52['timeout']}),this['setOperationTimeout'](_0x3f00de),this['emit']('operation:started',_0x427b52),_0x3f00de;}[a0_0x3de435(0x11f)](_0x33c778,_0x1a3f03,_0x43b209={}){const _0x5aad95=a0_0x3de435,_0x73a2cb=this['operations'][_0x5aad95(0x120)](_0x33c778);if(!_0x73a2cb)return this['logger']?.['warn'](_0x5aad95(0x117)+_0x33c778),![];const _0xb91aa6=_0x73a2cb[_0x5aad95(0x155)];_0x73a2cb['status']=_0x1a3f03;_0x1a3f03===TOOL_STATUS['EXECUTING']&&!_0x73a2cb[_0x5aad95(0x127)]&&(_0x73a2cb[_0x5aad95(0x127)]=new Date()['toISOString']());(_0x1a3f03===TOOL_STATUS[_0x5aad95(0x12b)]||_0x1a3f03===TOOL_STATUS[_0x5aad95(0x14d)])&&(_0x73a2cb['completedAt']=new Date()[_0x5aad95(0x14a)]());if(_0x43b209[_0x5aad95(0x10e)]!==undefined)_0x73a2cb[_0x5aad95(0x10e)]=_0x43b209['result'];if(_0x43b209['error']!==undefined)_0x73a2cb[_0x5aad95(0x142)]=_0x43b209[_0x5aad95(0x142)];if(_0x43b209['progress']!==undefined)_0x73a2cb['progress']=_0x43b209[_0x5aad95(0x145)];this[_0x5aad95(0x126)]?.[_0x5aad95(0x128)]('Operation\x20status\x20updated:\x20'+_0x33c778,{'previousStatus':_0xb91aa6,'newStatus':_0x1a3f03,'hasResult':!!_0x43b209['result'],'hasError':!!_0x43b209[_0x5aad95(0x142)],'progress':_0x43b209['progress']});switch(_0x1a3f03){case TOOL_STATUS[_0x5aad95(0x12b)]:this[_0x5aad95(0x10f)]('operation:completed',_0x73a2cb);break;case TOOL_STATUS[_0x5aad95(0x14d)]:this[_0x5aad95(0x10f)]('operation:failed',_0x73a2cb);break;case TOOL_STATUS[_0x5aad95(0x143)]:this['emit'](_0x5aad95(0x15c),_0x73a2cb);break;}return!![];}['getOperation'](_0xd30a27){const _0x5b0370=a0_0x3de435,_0x51c6d0=this['operations'][_0x5b0370(0x120)](_0xd30a27);if(!_0x51c6d0)return null;return{'id':_0x51c6d0['id'],'toolId':_0x51c6d0['toolId'],'agentId':_0x51c6d0[_0x5b0370(0x15a)],'status':_0x51c6d0['status'],'createdAt':_0x51c6d0[_0x5b0370(0x151)],'startedAt':_0x51c6d0['startedAt'],'completedAt':_0x51c6d0[_0x5b0370(0x136)],'result':_0x51c6d0[_0x5b0370(0x10e)],'error':_0x51c6d0['error'],'progress':_0x51c6d0[_0x5b0370(0x145)],'retryCount':_0x51c6d0[_0x5b0370(0x110)],'executionTime':this['calculateExecutionTime'](_0x51c6d0)};}['getAgentOperations'](_0x12cd0a){const _0x2889bb=a0_0x3de435,_0x30cb2b=[];for(const _0x393115 of this['operations'][_0x2889bb(0x14e)]()){_0x393115[_0x2889bb(0x15a)]===_0x12cd0a&&_0x30cb2b[_0x2889bb(0x11a)](this['getOperation'](_0x393115['id']));}return _0x30cb2b['sort']((_0xdf2042,_0x5954a7)=>new Date(_0x5954a7['createdAt'])-new Date(_0xdf2042[_0x2889bb(0x151)]));}async['cancelOperation'](_0x3e12ba,_0x57dae9=a0_0x3de435(0x10a)){const _0xef1728=a0_0x3de435,_0x470b44=this['operations'][_0xef1728(0x120)](_0x3e12ba);if(!_0x470b44)return![];if(_0x470b44[_0xef1728(0x155)]===TOOL_STATUS[_0xef1728(0x12b)]||_0x470b44['status']===TOOL_STATUS['FAILED'])return this['logger']?.['warn']('Cannot\x20cancel\x20completed/failed\x20operation:\x20'+_0x3e12ba),![];return this[_0xef1728(0x11f)](_0x3e12ba,TOOL_STATUS['CANCELLED'],{'error':_0x57dae9}),this[_0xef1728(0x14b)](_0x3e12ba),this['emit'](_0xef1728(0x112),_0x470b44),await this[_0xef1728(0x13f)](_0x3e12ba),this['logger']?.['info']('Operation\x20cancelled:\x20'+_0x3e12ba,{'reason':_0x57dae9}),!![];}async['retryOperation'](_0x5dfc09){const _0x57de44=a0_0x3de435,_0x2479df=this[_0x57de44(0x131)]['get'](_0x5dfc09);if(!_0x2479df)return![];if(_0x2479df[_0x57de44(0x155)]!==TOOL_STATUS[_0x57de44(0x14d)])return this['logger']?.[_0x57de44(0x140)](_0x57de44(0x129)+_0x5dfc09),![];if(_0x2479df['retryCount']>=_0x2479df['maxRetries'])return this['logger']?.[_0x57de44(0x140)]('Maximum\x20retries\x20exceeded\x20for\x20operation:\x20'+_0x5dfc09),![];return _0x2479df['retryCount']++,_0x2479df[_0x57de44(0x155)]=TOOL_STATUS[_0x57de44(0x125)],_0x2479df['startedAt']=null,_0x2479df['completedAt']=null,_0x2479df[_0x57de44(0x142)]=null,_0x2479df[_0x57de44(0x10e)]=null,this[_0x57de44(0x121)](_0x5dfc09),this['logger']?.['info'](_0x57de44(0x159)+_0x5dfc09,{'retryCount':_0x2479df['retryCount'],'maxRetries':_0x2479df['maxRetries']}),this['emit']('operation:retry',_0x2479df),!![];}['getStatistics'](){const _0x106481=a0_0x3de435,_0x38be1a={'total':this['operations'][_0x106481(0x135)],'byStatus':{},'byTool':{},'byAgent':{},'averageExecutionTime':0x0,'oldestOperation':null,'newestOperation':null};let _0x44a583=0x0,_0x4cdb89=0x0,_0x4a10d1=null,_0x596d7a=null;for(const _0x41ee07 of this['operations']['values']()){_0x38be1a[_0x106481(0x113)][_0x41ee07[_0x106481(0x155)]]=(_0x38be1a['byStatus'][_0x41ee07[_0x106481(0x155)]]||0x0)+0x1,_0x38be1a['byTool'][_0x41ee07['toolId']]=(_0x38be1a['byTool'][_0x41ee07[_0x106481(0x109)]]||0x0)+0x1,_0x38be1a[_0x106481(0x148)][_0x41ee07[_0x106481(0x15a)]]=(_0x38be1a[_0x106481(0x148)][_0x41ee07['agentId']]||0x0)+0x1;const _0x138f72=this['calculateExecutionTime'](_0x41ee07);_0x138f72>0x0&&(_0x44a583+=_0x138f72,_0x4cdb89++);const _0xfeb30c=new Date(_0x41ee07[_0x106481(0x151)])['getTime']();(!_0x4a10d1||_0xfeb30c<_0x4a10d1)&&(_0x4a10d1=_0xfeb30c,_0x38be1a['oldestOperation']=_0x41ee07['id']),(!_0x596d7a||_0xfeb30c>_0x596d7a)&&(_0x596d7a=_0xfeb30c,_0x38be1a[_0x106481(0x15e)]=_0x41ee07['id']);}return _0x38be1a['averageExecutionTime']=_0x4cdb89>0x0?Math[_0x106481(0x138)](_0x44a583/_0x4cdb89):0x0,_0x38be1a;}async[a0_0x3de435(0x15d)](_0x34a9ae=0x36ee80){const _0x869bf5=a0_0x3de435,_0x209398=Date[_0x869bf5(0x158)]()-_0x34a9ae,_0x4e6eab=[];for(const _0x3acd0a of this['operations']['values']()){(_0x3acd0a['status']===TOOL_STATUS[_0x869bf5(0x12b)]||_0x3acd0a[_0x869bf5(0x155)]===TOOL_STATUS['FAILED']||_0x3acd0a[_0x869bf5(0x155)]===TOOL_STATUS['CANCELLED'])&&new Date(_0x3acd0a[_0x869bf5(0x136)])[_0x869bf5(0x11d)]()<_0x209398&&_0x4e6eab[_0x869bf5(0x11a)](_0x3acd0a['id']);}for(const _0x33f4f3 of _0x4e6eab){await this[_0x869bf5(0x13f)](_0x33f4f3);}return this['logger']?.[_0x869bf5(0x128)](_0x869bf5(0x123)+_0x4e6eab['length']+'\x20completed\x20operations'),_0x4e6eab[_0x869bf5(0x157)];}['startMonitoring'](){const _0x2f5460=a0_0x3de435;this['monitoringInterval']&&clearInterval(this['monitoringInterval']),this['monitoringInterval']=setInterval(()=>{const _0x598f0b=a0_0x5d93;this[_0x598f0b(0x11b)](),this['cleanupCompletedOperations']();},this[_0x2f5460(0x122)]),this[_0x2f5460(0x126)]?.['info'](_0x2f5460(0x108));}['stopMonitoring'](){const _0xbf24a4=a0_0x3de435;this[_0xbf24a4(0x13e)]&&(clearInterval(this[_0xbf24a4(0x13e)]),this['monitoringInterval']=null),this['logger']?.[_0xbf24a4(0x133)](_0xbf24a4(0x13d));}[a0_0x3de435(0x11b)](){const _0x1a8943=a0_0x3de435,_0x1dd52e=Date[_0x1a8943(0x158)]();for(const _0x295f72 of this['operations'][_0x1a8943(0x14e)]()){if(_0x295f72[_0x1a8943(0x155)]===TOOL_STATUS[_0x1a8943(0x143)]||_0x295f72['status']===TOOL_STATUS[_0x1a8943(0x125)]){const _0x5e5b9b=new Date(_0x295f72['createdAt'])['getTime']();_0x1dd52e-_0x5e5b9b>_0x295f72[_0x1a8943(0x153)]&&this['handleOperationTimeout'](_0x295f72);}}}['setOperationTimeout'](_0x2b08b3){const _0x1aa2d8=a0_0x3de435,_0x2b4a17=this['operations'][_0x1aa2d8(0x120)](_0x2b08b3);if(!_0x2b4a17)return;_0x2b4a17['timeoutHandle']=setTimeout(()=>{const _0x501e67=_0x1aa2d8;this[_0x501e67(0x10d)](_0x2b4a17);},_0x2b4a17[_0x1aa2d8(0x153)]);}['clearOperationTimeout'](_0x9d6e9b){const _0x23c9c7=a0_0x3de435,_0x52cb43=this[_0x23c9c7(0x131)][_0x23c9c7(0x120)](_0x9d6e9b);_0x52cb43&&_0x52cb43['timeoutHandle']&&(clearTimeout(_0x52cb43[_0x23c9c7(0x130)]),delete _0x52cb43['timeoutHandle']);}[a0_0x3de435(0x10b)](){const _0xe2a041=a0_0x3de435,_0xe3821=Date[_0xe2a041(0x158)]()['toString'](0x24),_0x34408f=Math['random']()[_0xe2a041(0x12f)](0x24)['substr'](0x2,0x9);return _0xe2a041(0x12e)+_0xe3821+'-'+_0x34408f;}[a0_0x3de435(0x11c)](_0x2c7fe3){const _0x51f012=a0_0x3de435;if(!_0x2c7fe3[_0x51f012(0x127)])return 0x0;const _0x29fde6=_0x2c7fe3['completedAt']?new Date(_0x2c7fe3['completedAt'])['getTime']():Date[_0x51f012(0x158)]();return _0x29fde6-new Date(_0x2c7fe3['startedAt'])[_0x51f012(0x11d)]();}async['cleanupOperation'](_0x19f1d0){const _0x4858b9=a0_0x3de435,_0x1a7d0f=this['operations']['get'](_0x19f1d0);if(!_0x1a7d0f)return;this[_0x4858b9(0x14b)](_0x19f1d0),this['operationHistory']['push']({..._0x1a7d0f,'executionTime':this[_0x4858b9(0x11c)](_0x1a7d0f),'cleanedUpAt':new Date()['toISOString']()}),this[_0x4858b9(0x114)]['length']>this['maxHistorySize']&&(this[_0x4858b9(0x114)]=this['operationHistory']['slice'](-this['maxHistorySize'])),this[_0x4858b9(0x131)]['delete'](_0x19f1d0),this['emit'](_0x4858b9(0x139),{'operationId':_0x19f1d0,'toolId':_0x1a7d0f[_0x4858b9(0x109)]});}[a0_0x3de435(0x149)](_0x32804d){const _0x237cfe=a0_0x3de435;this['logger']?.['debug'](_0x237cfe(0x12c)+_0x32804d['id'],{'toolId':_0x32804d['toolId'],'agentId':_0x32804d['agentId']});}async[a0_0x3de435(0x15f)](_0x22310d){const _0x5abe08=a0_0x3de435;this['logger']?.['info'](_0x5abe08(0x118)+_0x22310d['id'],{'toolId':_0x22310d['toolId'],'agentId':_0x22310d[_0x5abe08(0x15a)],'executionTime':this[_0x5abe08(0x11c)](_0x22310d)}),setTimeout(()=>this['cleanupOperation'](_0x22310d['id']),0x7530);}async[a0_0x3de435(0x132)](_0x111fe0){const _0x4ac11c=a0_0x3de435;this[_0x4ac11c(0x126)]?.['error'](_0x4ac11c(0x154)+_0x111fe0['id'],{'toolId':_0x111fe0[_0x4ac11c(0x109)],'agentId':_0x111fe0['agentId'],'error':_0x111fe0[_0x4ac11c(0x142)],'executionTime':this['calculateExecutionTime'](_0x111fe0),'retryCount':_0x111fe0[_0x4ac11c(0x110)]}),_0x111fe0['retryCount']<_0x111fe0['maxRetries']?setTimeout(()=>this['retryOperation'](_0x111fe0['id']),0x1388):setTimeout(()=>this['cleanupOperation'](_0x111fe0['id']),0xea60);}async['handleOperationTimeout'](_0x53a4ae){const _0x752083=a0_0x3de435;this[_0x752083(0x126)]?.[_0x752083(0x140)]('Operation\x20timed\x20out:\x20'+_0x53a4ae['id'],{'toolId':_0x53a4ae[_0x752083(0x109)],'agentId':_0x53a4ae[_0x752083(0x15a)],'timeout':_0x53a4ae['timeout'],'executionTime':this[_0x752083(0x11c)](_0x53a4ae)}),this['updateOperation'](_0x53a4ae['id'],TOOL_STATUS[_0x752083(0x13c)],{'error':'Operation\x20timed\x20out\x20after\x20'+_0x53a4ae['timeout']+'ms'}),this[_0x752083(0x10f)]('operation:timeout',_0x53a4ae),setTimeout(()=>this[_0x752083(0x13f)](_0x53a4ae['id']),0x7530);}async['shutdown'](){const _0x6718e7=a0_0x3de435;this['isShuttingDown']=!![],this['logger']?.[_0x6718e7(0x133)]('Shutting down async tool manager...'),this['stopMonitoring']();const _0x222eb9=[];for(const _0x1261b2 of this['operations'][_0x6718e7(0x14e)]()){(_0x1261b2[_0x6718e7(0x155)]===TOOL_STATUS[_0x6718e7(0x125)]||_0x1261b2[_0x6718e7(0x155)]===TOOL_STATUS['EXECUTING'])&&_0x222eb9[_0x6718e7(0x11a)](_0x1261b2['id']);}for(const _0x3d930d of _0x222eb9){await this['cancelOperation'](_0x3d930d,'System\x20shutdown');}this[_0x6718e7(0x131)]['clear'](),this['logger']?.[_0x6718e7(0x133)](_0x6718e7(0x144)+_0x222eb9['length']+'\x20operations.');}['getOperationHistory'](_0x5d1728={}){const _0x375127=a0_0x3de435;let _0x5c0f96=[...this[_0x375127(0x114)]];return _0x5d1728[_0x375127(0x15a)]&&(_0x5c0f96=_0x5c0f96['filter'](_0x504a5b=>_0x504a5b['agentId']===_0x5d1728[_0x375127(0x15a)])),_0x5d1728[_0x375127(0x109)]&&(_0x5c0f96=_0x5c0f96['filter'](_0x2d8fb2=>_0x2d8fb2['toolId']===_0x5d1728[_0x375127(0x109)])),_0x5d1728[_0x375127(0x155)]&&(_0x5c0f96=_0x5c0f96[_0x375127(0x12a)](_0x2116cd=>_0x2116cd['status']===_0x5d1728['status'])),_0x5d1728[_0x375127(0x156)]&&(_0x5c0f96=_0x5c0f96[_0x375127(0x152)](-_0x5d1728[_0x375127(0x156)])),_0x5c0f96[_0x375127(0x147)]((_0x5e14c0,_0x147b5c)=>new Date(_0x147b5c[_0x375127(0x151)])-new Date(_0x5e14c0['createdAt']));}}export default AsyncToolManager;
|
|
1
|
+
function a0_0x2eaa(){const _0x5b64b8=['B3bLCMf0Aw9UoNbYB2DYzxnZ','y2XLyw51CenVBxbSzxrLze9WzxjHDgLVBNm','DgLTzw91Da','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','otq0ndG0y01Qv25Y','BgLTAxq','y2XLyw51CeLUDgvYDMfS','t3bLCMf0Aw9UihjLDhj5igLUAxrPyxrLzdOG','zxjYB3i','y2fUy2vSt3bLCMf0Aw9U','mtq0zwLRt3zP','z2v0qwDLBNrpCgvYyxrPB25Z','Bw9UAxrVCMLUz0LUDgvYDMfS','zw1PDa','y2XLyw51Ce9WzxjHDgLVBG','DMfSDwvZ','C3rVCe1VBML0B3jPBMC','ywDLBNrjza','mJC3mtu1BLDYDxLq','y29UzMLN','y3jLyxrLzef0','y29TCgXLDgvKqxq','mZa4t3vnzKHs','C3rHDhvZ','DxbKyxrLt3bLCMf0Aw9U','uevoreLorW','rvHfq1vusu5h','B3aT','BgvUz3rO','odG4uMTwvxPp','CMvZDwX0','y2XLyxjpCgvYyxrPB25uAw1LB3v0','yNLbz2vUDa','zgvIDwC','q09nueXfveve','D2fYBG','AgfUzgXLt3bLCMf0Aw9UrMfPBgvK','y2HLy2TpCgvYyxrPB25uAw1LB3v0CW','C2XPy2u','rKfjteve','B3bLCMf0Aw9UsgLZDg9YEq','twf4Aw11BsbYzxrYAwvZigv4y2vLzgvKigzVCIbVCgvYyxrPB246ia','odC1mdC5tMjUte5g','mJi1mdvTCNjJALy','mJe0nJH2BuzcuM0','z2v0','B3bLCMf0Aw9UoNn0yxj0zwq','C2v0','AgfUzgXLt3bLCMf0Aw9UvgLTzw91Da','ChvZAa','C2H1DgrVD24','AgfUzgXLt3bLCMf0Aw9Uu3rHCNrLza','twf4Aw11BsbJB25JDxjYzw50ig9WzxjHDgLVBNmGCMvHy2HLzcaO','CM91BMq','AgfUzgXLt3bLCMf0Aw9Uq29TCgXLDgvK','Bg9Nz2vY','t3bLCMf0Aw9Uihn0yxr1CYb1CgrHDgvKoIa','Dg9VBeLK','q2XLyw5Lzcb1Cca','ChjVz3jLC3m','C2v0t3bLCMf0Aw9UvgLTzw91Da','yMLUza','CMv0CNLdB3vUDa','yNLtDgf0Dxm','z2v0vgLTzq','C2L6zq','t3bLCMf0Aw9Uihn0yxj0zwq6ia','CMv0CNLpCgvYyxrPB24','z2vUzxjHDgvpCgvYyxrPB25jza','A2v5CW','mtm3otyWtg1NDe1V','Bwf4sgLZDg9YEvnPEMu','Dg9ju09tDhjPBMC','zgvMyxvSDfrPBwvVDxq','BM93','B2XKzxn0t3bLCMf0Aw9U','q0foq0vmteve','yxzLCMfNzuv4zwn1DgLVBLrPBwu','B3bLCMf0Aw9UoNrPBwvVDxq','nejttKrVrG','t3bLCMf0Aw9UignHBMnLBgXLza','AxntAhv0DgLUz0rVD24','Aw5MBW','t3bLCMf0Aw9UignVBxbSzxrLzdOG','y2fSy3vSyxrLrxHLy3v0Aw9UvgLTzq','C3rHCNrLzef0','mtbSAwvQAMm','mti1odjZsgXdqNi','DgLTzw91DeHHBMrSzq','u3LZDgvTihnODxrKB3DU','C29YDa','B3bLCMf0Aw9UCW'];a0_0x2eaa=function(){return _0x5b64b8;};return a0_0x2eaa();}const a0_0x514041=a0_0x244c;(function(_0xa14ced,_0x22210f){const _0x10b49e=a0_0x244c,_0x35b942=_0xa14ced();while(!![]){try{const _0x266d22=parseInt(_0x10b49e(0x1c0))/0x1+parseInt(_0x10b49e(0x1b2))/0x2+-parseInt(_0x10b49e(0x17c))/0x3*(parseInt(_0x10b49e(0x1a1))/0x4)+parseInt(_0x10b49e(0x1a8))/0x5*(parseInt(_0x10b49e(0x1a9))/0x6)+parseInt(_0x10b49e(0x17d))/0x7*(-parseInt(_0x10b49e(0x16f))/0x8)+-parseInt(_0x10b49e(0x1b8))/0x9*(-parseInt(_0x10b49e(0x198))/0xa)+-parseInt(_0x10b49e(0x1c4))/0xb*(parseInt(_0x10b49e(0x17e))/0xc);if(_0x266d22===_0x22210f)break;else _0x35b942['push'](_0x35b942['shift']());}catch(_0x1158b8){_0x35b942['push'](_0x35b942['shift']());}}}(a0_0x2eaa,0x434dd));import a0_0x47d32c from'events';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x244c(_0x467265,_0xb0d8b7){_0x467265=_0x467265-0x16b;const _0x2eaab3=a0_0x2eaa();let _0x244c83=_0x2eaab3[_0x467265];if(a0_0x244c['gWKrvq']===undefined){var _0x12ca6e=function(_0x57546d){const _0x359603='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x47d32c='',_0x2acb37='';for(let _0x1f1421=0x0,_0x1d14e9,_0x7c0db,_0x2fe196=0x0;_0x7c0db=_0x57546d['charAt'](_0x2fe196++);~_0x7c0db&&(_0x1d14e9=_0x1f1421%0x4?_0x1d14e9*0x40+_0x7c0db:_0x7c0db,_0x1f1421++%0x4)?_0x47d32c+=String['fromCharCode'](0xff&_0x1d14e9>>(-0x2*_0x1f1421&0x6)):0x0){_0x7c0db=_0x359603['indexOf'](_0x7c0db);}for(let _0x49a31b=0x0,_0x4ade2e=_0x47d32c['length'];_0x49a31b<_0x4ade2e;_0x49a31b++){_0x2acb37+='%'+('00'+_0x47d32c['charCodeAt'](_0x49a31b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2acb37);};a0_0x244c['bPdCNQ']=_0x12ca6e,a0_0x244c['NFABBx']={},a0_0x244c['gWKrvq']=!![];}const _0x3b5fb5=_0x2eaab3[0x0],_0x47164e=_0x467265+_0x3b5fb5,_0x465fd0=a0_0x244c['NFABBx'][_0x47164e];return!_0x465fd0?(_0x244c83=a0_0x244c['bPdCNQ'](_0x244c83),a0_0x244c['NFABBx'][_0x47164e]=_0x244c83):_0x244c83=_0x465fd0,_0x244c83;}class AsyncToolManager extends a0_0x47d32c{constructor(_0x2acb37={},_0x1f1421=null){const _0x27cc2c=a0_0x244c;super(),this[_0x27cc2c(0x1c1)]=_0x2acb37,this[_0x27cc2c(0x189)]=_0x1f1421,this['operations']=new Map(),this['operationHistory']=[],this['maxConcurrentOperations']=_0x2acb37['maxConcurrentOperations']||0xa,this['defaultTimeout']=_0x2acb37[_0x27cc2c(0x19b)]||0x493e0,this[_0x27cc2c(0x1b4)]=_0x2acb37['cleanupInterval']||0xea60,this['maxHistorySize']=_0x2acb37['maxHistorySize']||0x3e8,this[_0x27cc2c(0x1ba)]=null,this[_0x27cc2c(0x1a3)]=![],this['startMonitoring'](),this['on']('operation:started',this['handleOperationStarted']['bind'](this)),this['on']('operation:completed',this['handleOperationCompleted']['bind'](this)),this['on']('operation:failed',this[_0x27cc2c(0x176)][_0x27cc2c(0x18f)](this)),this['on'](_0x27cc2c(0x1a0),this['handleOperationTimeout'][_0x27cc2c(0x18f)](this));}async['startOperation'](_0x1d14e9,_0x7c0db,_0x2fe196,_0x49a31b={}){const _0x5b4bf2=a0_0x244c;if(this[_0x5b4bf2(0x1ad)]['size']>=this[_0x5b4bf2(0x1b1)])throw new Error(_0x5b4bf2(0x186)+this[_0x5b4bf2(0x1b1)]+')');const _0x4ade2e=this['generateOperationId'](),_0x586634={'id':_0x4ade2e,'toolId':_0x1d14e9,'agentId':_0x7c0db,'parameters':_0x2fe196,'context':_0x49a31b,'status':TOOL_STATUS[_0x5b4bf2(0x16b)],'createdAt':new Date()[_0x5b4bf2(0x19a)](),'startedAt':null,'completedAt':null,'timeout':_0x49a31b[_0x5b4bf2(0x1b0)]||this[_0x5b4bf2(0x19b)],'result':null,'error':null,'progress':null,'retryCount':0x0,'maxRetries':_0x49a31b['maxRetries']||0x0};return this['operations'][_0x5b4bf2(0x181)](_0x4ade2e,_0x586634),this[_0x5b4bf2(0x189)]?.['info']('Async\x20operation\x20started:\x20'+_0x4ade2e,{'toolId':_0x1d14e9,'agentId':_0x7c0db,'parametersCount':Object[_0x5b4bf2(0x197)](_0x2fe196)[_0x5b4bf2(0x16e)],'timeout':_0x586634['timeout']}),this[_0x5b4bf2(0x18e)](_0x4ade2e),this['emit'](_0x5b4bf2(0x180),_0x586634),_0x4ade2e;}['updateOperation'](_0x5b0246,_0x16c4d9,_0x405572={}){const _0x1daec4=a0_0x244c,_0x425219=this[_0x1daec4(0x1ad)][_0x1daec4(0x17f)](_0x5b0246);if(!_0x425219)return this[_0x1daec4(0x189)]?.[_0x1daec4(0x175)]('Attempted\x20to\x20update\x20unknown\x20operation:\x20'+_0x5b0246),![];const _0x59dc40=_0x425219['status'];_0x425219['status']=_0x16c4d9;_0x16c4d9===TOOL_STATUS[_0x1daec4(0x16c)]&&!_0x425219['startedAt']&&(_0x425219[_0x1daec4(0x1a7)]=new Date()[_0x1daec4(0x19a)]());(_0x16c4d9===TOOL_STATUS['COMPLETED']||_0x16c4d9===TOOL_STATUS['FAILED'])&&(_0x425219['completedAt']=new Date()[_0x1daec4(0x19a)]());if(_0x405572['result']!==undefined)_0x425219[_0x1daec4(0x170)]=_0x405572['result'];if(_0x405572[_0x1daec4(0x1b6)]!==undefined)_0x425219[_0x1daec4(0x1b6)]=_0x405572['error'];if(_0x405572[_0x1daec4(0x18d)]!==undefined)_0x425219['progress']=_0x405572['progress'];this[_0x1daec4(0x189)]?.[_0x1daec4(0x173)](_0x1daec4(0x18a)+_0x5b0246,{'previousStatus':_0x59dc40,'newStatus':_0x16c4d9,'hasResult':!!_0x405572[_0x1daec4(0x170)],'hasError':!!_0x405572['error'],'progress':_0x405572[_0x1daec4(0x18d)]});switch(_0x16c4d9){case TOOL_STATUS[_0x1daec4(0x174)]:this[_0x1daec4(0x1bb)]('operation:completed',_0x425219);break;case TOOL_STATUS[_0x1daec4(0x179)]:this[_0x1daec4(0x1bb)]('operation:failed',_0x425219);break;case TOOL_STATUS['EXECUTING']:this['emit'](_0x1daec4(0x1ae),_0x425219);break;}return!![];}['getOperation'](_0x1538ba){const _0x3f815b=a0_0x244c,_0x1c7a27=this['operations'][_0x3f815b(0x17f)](_0x1538ba);if(!_0x1c7a27)return null;return{'id':_0x1c7a27['id'],'toolId':_0x1c7a27['toolId'],'agentId':_0x1c7a27[_0x3f815b(0x1bf)],'status':_0x1c7a27[_0x3f815b(0x1c5)],'createdAt':_0x1c7a27[_0x3f815b(0x1c2)],'startedAt':_0x1c7a27[_0x3f815b(0x1a7)],'completedAt':_0x1c7a27[_0x3f815b(0x1c3)],'result':_0x1c7a27[_0x3f815b(0x170)],'error':_0x1c7a27['error'],'progress':_0x1c7a27['progress'],'retryCount':_0x1c7a27[_0x3f815b(0x190)],'executionTime':this[_0x3f815b(0x1a6)](_0x1c7a27)};}[a0_0x514041(0x1b9)](_0xf5078c){const _0x11588e=a0_0x514041,_0x3bda80=[];for(const _0x471d08 of this[_0x11588e(0x1ad)][_0x11588e(0x1bd)]()){_0x471d08[_0x11588e(0x1bf)]===_0xf5078c&&_0x3bda80[_0x11588e(0x183)](this['getOperation'](_0x471d08['id']));}return _0x3bda80['sort']((_0x22ab30,_0x49c5af)=>new Date(_0x49c5af[_0x11588e(0x1c2)])-new Date(_0x22ab30[_0x11588e(0x1c2)]));}async[a0_0x514041(0x1b7)](_0x1964f0,_0xfe52b5=a0_0x514041(0x1a2)){const _0x3b8ea3=a0_0x514041,_0x3a14ca=this['operations']['get'](_0x1964f0);if(!_0x3a14ca)return![];if(_0x3a14ca[_0x3b8ea3(0x1c5)]===TOOL_STATUS['COMPLETED']||_0x3a14ca[_0x3b8ea3(0x1c5)]===TOOL_STATUS[_0x3b8ea3(0x179)])return this[_0x3b8ea3(0x189)]?.['warn']('Cannot\x20cancel\x20completed/failed\x20operation:\x20'+_0x1964f0),![];return this[_0x3b8ea3(0x1c6)](_0x1964f0,TOOL_STATUS['CANCELLED'],{'error':_0xfe52b5}),this['clearOperationTimeout'](_0x1964f0),this[_0x3b8ea3(0x1bb)]('operation:cancelled',_0x3a14ca),await this['cleanupOperation'](_0x1964f0),this['logger']?.[_0x3b8ea3(0x1a4)]('Operation\x20cancelled:\x20'+_0x1964f0,{'reason':_0xfe52b5}),!![];}async[a0_0x514041(0x195)](_0x4a2e5c){const _0x26a835=a0_0x514041,_0x1cc58a=this['operations'][_0x26a835(0x17f)](_0x4a2e5c);if(!_0x1cc58a)return![];if(_0x1cc58a[_0x26a835(0x1c5)]!==TOOL_STATUS['FAILED'])return this[_0x26a835(0x189)]?.['warn']('Cannot\x20retry\x20non-failed\x20operation:\x20'+_0x4a2e5c),![];if(_0x1cc58a['retryCount']>=_0x1cc58a['maxRetries'])return this[_0x26a835(0x189)]?.['warn'](_0x26a835(0x17b)+_0x4a2e5c),![];return _0x1cc58a[_0x26a835(0x190)]++,_0x1cc58a[_0x26a835(0x1c5)]=TOOL_STATUS[_0x26a835(0x16b)],_0x1cc58a['startedAt']=null,_0x1cc58a['completedAt']=null,_0x1cc58a[_0x26a835(0x1b6)]=null,_0x1cc58a['result']=null,this[_0x26a835(0x18e)](_0x4a2e5c),this['logger']?.[_0x26a835(0x1a4)](_0x26a835(0x1b5)+_0x4a2e5c,{'retryCount':_0x1cc58a[_0x26a835(0x190)],'maxRetries':_0x1cc58a['maxRetries']}),this[_0x26a835(0x1bb)]('operation:retry',_0x1cc58a),!![];}['getStatistics'](){const _0x560c73=a0_0x514041,_0x4e0172={'total':this[_0x560c73(0x1ad)][_0x560c73(0x193)],'byStatus':{},'byTool':{},'byAgent':{},'averageExecutionTime':0x0,'oldestOperation':null,'newestOperation':null};let _0x46d94c=0x0,_0x5345e0=0x0,_0x46fed4=null,_0x227342=null;for(const _0x2605ee of this['operations']['values']()){_0x4e0172['byStatus'][_0x2605ee['status']]=(_0x4e0172[_0x560c73(0x191)][_0x2605ee[_0x560c73(0x1c5)]]||0x0)+0x1,_0x4e0172['byTool'][_0x2605ee[_0x560c73(0x18b)]]=(_0x4e0172['byTool'][_0x2605ee['toolId']]||0x0)+0x1,_0x4e0172['byAgent'][_0x2605ee['agentId']]=(_0x4e0172[_0x560c73(0x172)][_0x2605ee[_0x560c73(0x1bf)]]||0x0)+0x1;const _0x2c3484=this['calculateExecutionTime'](_0x2605ee);_0x2c3484>0x0&&(_0x46d94c+=_0x2c3484,_0x5345e0++);const _0x3a0de4=new Date(_0x2605ee['createdAt'])[_0x560c73(0x192)]();(!_0x46fed4||_0x3a0de4<_0x46fed4)&&(_0x46fed4=_0x3a0de4,_0x4e0172[_0x560c73(0x19d)]=_0x2605ee['id']),(!_0x227342||_0x3a0de4>_0x227342)&&(_0x227342=_0x3a0de4,_0x4e0172['newestOperation']=_0x2605ee['id']);}return _0x4e0172[_0x560c73(0x19f)]=_0x5345e0>0x0?Math[_0x560c73(0x187)](_0x46d94c/_0x5345e0):0x0,_0x4e0172;}async[a0_0x514041(0x1af)](_0x1de37b=0x36ee80){const _0x38ab08=a0_0x514041,_0x52be22=Date[_0x38ab08(0x19c)]()-_0x1de37b,_0x1e1ea0=[];for(const _0x523165 of this['operations']['values']()){(_0x523165[_0x38ab08(0x1c5)]===TOOL_STATUS[_0x38ab08(0x174)]||_0x523165[_0x38ab08(0x1c5)]===TOOL_STATUS['FAILED']||_0x523165['status']===TOOL_STATUS[_0x38ab08(0x19e)])&&new Date(_0x523165[_0x38ab08(0x1c3)])[_0x38ab08(0x192)]()<_0x52be22&&_0x1e1ea0['push'](_0x523165['id']);}for(const _0x5be8af of _0x1e1ea0){await this[_0x38ab08(0x1bc)](_0x5be8af);}return this['logger']?.['debug'](_0x38ab08(0x18c)+_0x1e1ea0['length']+'\x20completed\x20operations'),_0x1e1ea0['length'];}['startMonitoring'](){const _0x41762d=a0_0x514041;this['monitoringInterval']&&clearInterval(this[_0x41762d(0x1ba)]),this[_0x41762d(0x1ba)]=setInterval(()=>{this['checkOperationTimeouts'](),this['cleanupCompletedOperations']();},this['cleanupInterval']),this[_0x41762d(0x189)]?.[_0x41762d(0x1a4)]('Async\x20tool\x20manager\x20monitoring\x20started');}['stopMonitoring'](){const _0x485789=a0_0x514041;this[_0x485789(0x1ba)]&&(clearInterval(this['monitoringInterval']),this[_0x485789(0x1ba)]=null),this[_0x485789(0x189)]?.[_0x485789(0x1a4)]('Async\x20tool\x20manager\x20monitoring\x20stopped');}[a0_0x514041(0x177)](){const _0x5f2367=a0_0x514041,_0x3a453d=Date[_0x5f2367(0x19c)]();for(const _0x431314 of this['operations']['values']()){if(_0x431314['status']===TOOL_STATUS['EXECUTING']||_0x431314[_0x5f2367(0x1c5)]===TOOL_STATUS[_0x5f2367(0x16b)]){const _0x132173=new Date(_0x431314[_0x5f2367(0x1c2)])[_0x5f2367(0x192)]();_0x3a453d-_0x132173>_0x431314['timeout']&&this[_0x5f2367(0x182)](_0x431314);}}}['setOperationTimeout'](_0x4d27b6){const _0x4b290d=a0_0x514041,_0x21cba6=this['operations'][_0x4b290d(0x17f)](_0x4d27b6);if(!_0x21cba6)return;_0x21cba6['timeoutHandle']=setTimeout(()=>{this['handleOperationTimeout'](_0x21cba6);},_0x21cba6[_0x4b290d(0x1b0)]);}[a0_0x514041(0x171)](_0x2fa5c6){const _0x5905f4=a0_0x514041,_0x1689b1=this['operations']['get'](_0x2fa5c6);_0x1689b1&&_0x1689b1['timeoutHandle']&&(clearTimeout(_0x1689b1[_0x5905f4(0x1aa)]),delete _0x1689b1[_0x5905f4(0x1aa)]);}[a0_0x514041(0x196)](){const _0x3e916b=a0_0x514041,_0x423211=Date['now']()['toString'](0x24),_0x5a77cb=Math['random']()['toString'](0x24)['substr'](0x2,0x9);return _0x3e916b(0x16d)+_0x423211+'-'+_0x5a77cb;}['calculateExecutionTime'](_0x10db10){const _0x141b0b=a0_0x514041;if(!_0x10db10[_0x141b0b(0x1a7)])return 0x0;const _0x2d0443=_0x10db10[_0x141b0b(0x1c3)]?new Date(_0x10db10['completedAt'])['getTime']():Date[_0x141b0b(0x19c)]();return _0x2d0443-new Date(_0x10db10['startedAt'])['getTime']();}async[a0_0x514041(0x1bc)](_0x595429){const _0x204876=a0_0x514041,_0x403895=this['operations']['get'](_0x595429);if(!_0x403895)return;this[_0x204876(0x171)](_0x595429),this['operationHistory'][_0x204876(0x183)]({..._0x403895,'executionTime':this['calculateExecutionTime'](_0x403895),'cleanedUpAt':new Date()['toISOString']()}),this[_0x204876(0x17a)][_0x204876(0x16e)]>this[_0x204876(0x199)]&&(this[_0x204876(0x17a)]=this['operationHistory'][_0x204876(0x178)](-this['maxHistorySize'])),this[_0x204876(0x1ad)]['delete'](_0x595429),this[_0x204876(0x1bb)]('operation:cleanup',{'operationId':_0x595429,'toolId':_0x403895[_0x204876(0x18b)]});}[a0_0x514041(0x185)](_0x31b27d){const _0x20b90f=a0_0x514041;this[_0x20b90f(0x189)]?.[_0x20b90f(0x173)](_0x20b90f(0x194)+_0x31b27d['id'],{'toolId':_0x31b27d['toolId'],'agentId':_0x31b27d['agentId']});}async[a0_0x514041(0x188)](_0x480f6a){const _0x1659bb=a0_0x514041;this[_0x1659bb(0x189)]?.['info'](_0x1659bb(0x1a5)+_0x480f6a['id'],{'toolId':_0x480f6a['toolId'],'agentId':_0x480f6a['agentId'],'executionTime':this[_0x1659bb(0x1a6)](_0x480f6a)}),setTimeout(()=>this['cleanupOperation'](_0x480f6a['id']),0x7530);}async[a0_0x514041(0x176)](_0x20882f){const _0x3df78b=a0_0x514041;this['logger']?.['error']('Operation\x20failed:\x20'+_0x20882f['id'],{'toolId':_0x20882f['toolId'],'agentId':_0x20882f['agentId'],'error':_0x20882f[_0x3df78b(0x1b6)],'executionTime':this[_0x3df78b(0x1a6)](_0x20882f),'retryCount':_0x20882f[_0x3df78b(0x190)]}),_0x20882f[_0x3df78b(0x190)]<_0x20882f['maxRetries']?setTimeout(()=>this[_0x3df78b(0x195)](_0x20882f['id']),0x1388):setTimeout(()=>this[_0x3df78b(0x1bc)](_0x20882f['id']),0xea60);}async['handleOperationTimeout'](_0x56d7d2){const _0x2ddf39=a0_0x514041;this['logger']?.[_0x2ddf39(0x175)]('Operation\x20timed\x20out:\x20'+_0x56d7d2['id'],{'toolId':_0x56d7d2['toolId'],'agentId':_0x56d7d2[_0x2ddf39(0x1bf)],'timeout':_0x56d7d2['timeout'],'executionTime':this['calculateExecutionTime'](_0x56d7d2)}),this['updateOperation'](_0x56d7d2['id'],TOOL_STATUS['TIMEOUT'],{'error':'Operation\x20timed\x20out\x20after\x20'+_0x56d7d2[_0x2ddf39(0x1b0)]+'ms'}),this['emit'](_0x2ddf39(0x1a0),_0x56d7d2),setTimeout(()=>this[_0x2ddf39(0x1bc)](_0x56d7d2['id']),0x7530);}async[a0_0x514041(0x184)](){const _0x114e57=a0_0x514041;this[_0x114e57(0x1a3)]=!![],this['logger']?.['info']('Shutting down async tool manager...'),this[_0x114e57(0x1be)]();const _0x48ebb0=[];for(const _0x3f1ed1 of this['operations']['values']()){(_0x3f1ed1['status']===TOOL_STATUS['PENDING']||_0x3f1ed1[_0x114e57(0x1c5)]===TOOL_STATUS[_0x114e57(0x16c)])&&_0x48ebb0[_0x114e57(0x183)](_0x3f1ed1['id']);}for(const _0x36aafa of _0x48ebb0){await this[_0x114e57(0x1b7)](_0x36aafa,_0x114e57(0x1ab));}this['operations']['clear'](),this['logger']?.['info']('Async\x20tool\x20manager\x20shutdown\x20complete.\x20Cancelled\x20'+_0x48ebb0['length']+'\x20operations.');}['getOperationHistory'](_0x5462ca={}){const _0x4f5d0c=a0_0x514041;let _0x48d1c1=[...this['operationHistory']];return _0x5462ca[_0x4f5d0c(0x1bf)]&&(_0x48d1c1=_0x48d1c1['filter'](_0x3678b8=>_0x3678b8['agentId']===_0x5462ca['agentId'])),_0x5462ca[_0x4f5d0c(0x18b)]&&(_0x48d1c1=_0x48d1c1['filter'](_0x5544ec=>_0x5544ec[_0x4f5d0c(0x18b)]===_0x5462ca[_0x4f5d0c(0x18b)])),_0x5462ca['status']&&(_0x48d1c1=_0x48d1c1['filter'](_0x578193=>_0x578193['status']===_0x5462ca['status'])),_0x5462ca['limit']&&(_0x48d1c1=_0x48d1c1['slice'](-_0x5462ca[_0x4f5d0c(0x1b3)])),_0x48d1c1[_0x4f5d0c(0x1ac)]((_0x3b93eb,_0x1424fb)=>new Date(_0x1424fb[_0x4f5d0c(0x1c2)])-new Date(_0x3b93eb[_0x4f5d0c(0x1c2)]));}}export default AsyncToolManager;
|
package/src/tools/baseTool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0xe430ba=a0_0x2c22;(function(_0x10cbb1,_0xd4faec){const _0x5047a0=a0_0x2c22,_0x273934=_0x10cbb1();while(!![]){try{const _0x62f30d=-parseInt(_0x5047a0(0x1d8))/0x1*(parseInt(_0x5047a0(0x19e))/0x2)+-parseInt(_0x5047a0(0x198))/0x3+parseInt(_0x5047a0(0x1a7))/0x4*(parseInt(_0x5047a0(0x1f2))/0x5)+parseInt(_0x5047a0(0x1cd))/0x6*(-parseInt(_0x5047a0(0x1a0))/0x7)+parseInt(_0x5047a0(0x1c6))/0x8+parseInt(_0x5047a0(0x1be))/0x9+-parseInt(_0x5047a0(0x18d))/0xa*(-parseInt(_0x5047a0(0x1e8))/0xb);if(_0x62f30d===_0xd4faec)break;else _0x273934['push'](_0x273934['shift']());}catch(_0x3a0124){_0x273934['push'](_0x273934['shift']());}}}(a0_0x2380,0xd6430));import{TOOL_STATUS,OPERATION_STATUS,ERROR_TYPES,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x2c22(_0x2a17ed,_0x47f52e){_0x2a17ed=_0x2a17ed-0x17d;const _0x23803b=a0_0x2380();let _0x2c229e=_0x23803b[_0x2a17ed];if(a0_0x2c22['oRvvVT']===undefined){var _0x1f73d8=function(_0x44ca98){const _0x270228='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x22039f='',_0x3eabd4='';for(let _0x4b55ac=0x0,_0x4f7487,_0x909c97,_0x26f4b6=0x0;_0x909c97=_0x44ca98['charAt'](_0x26f4b6++);~_0x909c97&&(_0x4f7487=_0x4b55ac%0x4?_0x4f7487*0x40+_0x909c97:_0x909c97,_0x4b55ac++%0x4)?_0x22039f+=String['fromCharCode'](0xff&_0x4f7487>>(-0x2*_0x4b55ac&0x6)):0x0){_0x909c97=_0x270228['indexOf'](_0x909c97);}for(let _0x2bc7f0=0x0,_0x421172=_0x22039f['length'];_0x2bc7f0<_0x421172;_0x2bc7f0++){_0x3eabd4+='%'+('00'+_0x22039f['charCodeAt'](_0x2bc7f0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3eabd4);};a0_0x2c22['DDhvGe']=_0x1f73d8,a0_0x2c22['RVfSeE']={},a0_0x2c22['oRvvVT']=!![];}const _0x567f20=_0x23803b[0x0],_0x82471e=_0x2a17ed+_0x567f20,_0x1180f0=a0_0x2c22['RVfSeE'][_0x82471e];return!_0x1180f0?(_0x2c229e=a0_0x2c22['DDhvGe'](_0x2c229e),a0_0x2c22['RVfSeE'][_0x82471e]=_0x2c229e):_0x2c229e=_0x1180f0,_0x2c229e;}function a0_0x2380(){const _0x5dd15f=['z2v0vgLTzq','yxn5BMm','Bg9Nz2vY','B2jQzwn0','CMvKDwnL','y29UzMLN','z2v0ugfYyw1LDgvYu2nOzw1H','u3LZDgvT','DMfSAwq','mJq2nJm2menQrhPxrW','q09nueXfveve','yxn5BMnpCgvYyxrPB25Z','ChvZAa','vg9VBca','zxHLy3v0Aw9UvgLTzq','mtzmzfbPuhC','ywn0AxzLt3bLCMf0Aw9UCW','n3zVq3DVCa','Dg9VBerLC2nYAxb0Aw9UCW','x2DLDfrVB2XdyxrLz29YEq','zMLSDgvY','ig11C3qGAw1WBgvTzw50ihbHCNnLugfYyw1LDgvYCYGP','y2XLyw51CeHPC3rVCNK','z2v0vxnHz2vtDgf0CW','mtjov09XDK8','BM93','lsbvC2uGiNrVB2XjzciGDg8GC3bLy2LMEsb0AguGDg9VBcbUyw1LcG','zw5Oyw5Jzvn5C3rLBvbYB21WDa','CM91BMq','z2v0','A2v5CW','zxHLy3v0zvDPDgHuAw1LB3v0','ifrpt0WkcG','B3bLCMf0Aw9UsgLZDg9YEq','Dg9VBa','icaICgfYyw1LDgvYCYi6ihSGlI4Uih0k','tK9ux0zpvu5e','z2v0q2fWywjPBgL0AwvZ','DgvZDcbJB250zw50','lsbvC2uGiNbHCMfTzxrLCNmIig9IAMvJDcbMB3iGDg9VBc1ZCgvJAwzPyYbWyxjHBwv0zxjZcG','z2v0qxzHAwXHyMXLvg9VBhngB3jvsq','BwvZC2fNzq','vg9VBcbLEgvJDxrPB24Gy29TCgXLDgvKoIa','AM9PBG','z2v0uMvNAxn0CNLtDgf0CW','lsbvC2uGiMfJDgLVBNmIigfYCMf5igzVCIb0B29SCYb0Agf0ihn1ChbVCNqGBxvSDgLWBguGB3bLCMf0Aw9UCWOk','zxHLy3v0zvDPDgHmAwzLy3LJBgu','mtq5nJmXntDpv2TfuNO','z2vUzxjHDgvuB29SrgvZy3jPChrPB25ZrM9YuhjVBxb0','igHHCYbYzwfJAgvKig1HEgLTDw0Gy29Uy3vYCMvUDcbVCgvYyxrPB25ZigXPBwL0','C2v0','ww91igHHDMuGywnJzxnZihrVihrOzsbMB2XSB3DPBMCGDg9VBhmGDg8GCgvYzM9YBsbVCgvYyxrPB25ZigfUzcb0yxnRCZOkcG','zw5KvgLTzq','zxHLy3v0zvrVB2Xtzwn1CMvSEq','C2XPy2u','mJeWnJiYnhH0vLviBa','zw5HyMXLza','z2v0vg9VBa','Dg9ju09tDhjPBMC','Dg9mB3DLCKnHC2u','CMvXDwLYzxnqCM9Qzwn0','Dg9VBhm','otG1nZyWng5JDfLcsW','DMfSAwrHDgvqyxjHBwv0zxjZ','DxnHz2vdB3vUDa','igLZigrPC2fIBgvK','ygbGcG','CMfUzg9T','CMvNAxn0zxjuB29S','z2v0u3vWCg9YDgvKqwn0Aw9UCW','C3rHDhvZ','zw5HyMXL','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','mty0mdz1tMfQyK8','vg9VBcbUB3qGzM91BMq6ia','BgfZDfvZzwq','zNjVBq','BgvUz3rO','cLvZzsbku09oigzVCM1HDcbPBIbTyxjRzg93BIbJB2rLigjSB2nRCYb0BYbPBNzVA2uGDg9VBhmUcGO','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','Aw5MBW','Aw5JBhvKzxm','ygbGANnVBGO','z2v0rgvZy3jPChrPB24','y2HHCKf0','Bg9JywXLq29TCgfYzq','vg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','vg9VBcbLEgvJDxrPB24GC3rHCNrLzdOG','z2vUzxjHDgvpCgvYyxrPB25jza','mtflvwnstey','CgfYC2vqyxjHBwv0zxjZ','C2vJCMv0CW','AxnfBMfIBgvK','C2L6zq','C2fUAxrPEMvdB250zxH0','ig1PC3nPBMCGCMvXDwLYzwqGBwv0Ag9KoIa','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','vg9VBcbZDgf0Axn0AwnZihjLC2v0oIa','qwz0zxiGAw52B2TPBMCGysb0B29SlcbxquLuigzVCIb0AguGywn0DwfSihjLC3bVBNnLlIbeBYbot1qGz2vUzxjHDguGAw1Hz2LUyxj5ihjLC3bVBNnLCY4k','otyZmdmWyvzSEhLn','rMfPBgvKihrVigDLDcbKzxnJCMLWDgLVBIbMB3iGDg9VBdOG','y2fSy3vSyxrLqxzLCMfNzuv4zwn1DgLVBLrPBwu','iYmJifn0yw5KyxjKiezVCM1HDdOGsLnptIbPBIbnyxjRzg93BIbdB2rLiejSB2nRcG','y29UC3rYDwn0B3i','y2fSy3vSyxrLu3vJy2vZC1jHDgu','BgLZDfrVB2XZ','DgLTzw91Da','zxjYB3i','zgvSzxrL','kIO6ia','vg9VBcbLEgvJDxrPB24GDgLTzwqGB3v0igfMDgvYia','ig11C3qGAw1WBgvTzw50igDLDerLC2nYAxb0Aw9UkcK','BMfTzq','rKfjteve','DhjPBq','AxnbC3LUyW','zxHLy3v0zq','DMfSAwrHDgvqyxjHBwv0zxjuExbLCW','otCWmJq5mhP4tvfvra','lsbbBhDHExmGD3jHCcbku09oihrVB2WGy29TBwfUzhmGAw4GygbGANnVBIaUlI4GygbGigjSB2nRCWO'];a0_0x2380=function(){return _0x5dd15f;};return a0_0x2380();}class BaseTool{constructor(_0x22039f={},_0x3eabd4=null){const _0x4b769e=a0_0x2c22;this['id']=this['constructor']['name'][_0x4b769e(0x1ca)]()['replace'](_0x4b769e(0x1b1),''),this[_0x4b769e(0x194)]=_0x22039f,this[_0x4b769e(0x191)]=_0x3eabd4,this[_0x4b769e(0x1cb)]=![],this[_0x4b769e(0x18a)]=![],this['timeout']=_0x22039f['timeout']||SYSTEM_DEFAULTS['MAX_TOOL_EXECUTION_TIME'],this[_0x4b769e(0x1ef)]=_0x22039f[_0x4b769e(0x1ef)]||0x1,this['activeOperations']=new Map(),this[_0x4b769e(0x1b0)]=[],this[_0x4b769e(0x1eb)]=_0x22039f[_0x4b769e(0x1c7)]!==![],this['lastUsed']=null,this['usageCount']=0x0;}[a0_0xe430ba(0x1e2)](){const _0x37b507=a0_0xe430ba;throw new Error('Tool\x20'+this['id']+_0x37b507(0x186));}[a0_0xe430ba(0x1e9)](_0x4b55ac){const _0x195b73=a0_0xe430ba;throw new Error('Tool\x20'+this['id']+_0x195b73(0x1a4));}async[a0_0xe430ba(0x18b)](_0x4f7487,_0x909c97){const _0x126e2e=a0_0xe430ba;throw new Error(_0x126e2e(0x19c)+this['id']+'\x20must\x20implement\x20execute()');}[a0_0xe430ba(0x1b4)](){const _0x221406=a0_0xe430ba;return{'id':this['id'],'async':this['isAsync'],'requiresProject':this[_0x221406(0x1cb)],'timeout':this[_0x221406(0x181)],'maxConcurrentOperations':this['maxConcurrentOperations'],'enabled':this[_0x221406(0x1eb)],'supportedActions':this[_0x221406(0x1d4)](),'parameterSchema':this[_0x221406(0x195)]()};}[a0_0xe430ba(0x1ce)](_0x26f4b6){const _0x726435=a0_0xe430ba;try{if(!_0x26f4b6||typeof _0x26f4b6!=='object')return{'valid':![],'error':'Parameters\x20must\x20be\x20an\x20object'};const requiredParams=this['getRequiredParameters']();for(const required of requiredParams){if(!(required in _0x26f4b6))return{'valid':![],'error':'Missing\x20required\x20parameter:\x20'+required};}const _0x2bc7f0=this[_0x726435(0x18c)](_0x26f4b6);if(!_0x2bc7f0['valid'])return _0x2bc7f0;const _0x421172=this['customValidateParameters'](_0x26f4b6);if(!_0x421172[_0x726435(0x197)])return _0x421172;return{'valid':!![]};}catch(_0x18d767){return{'valid':![],'error':_0x726435(0x1d7)+_0x18d767[_0x726435(0x1b8)]};}}async[a0_0xe430ba(0x1bd)](_0x49a36b,_0x2edde4){const _0x1e4d61=a0_0xe430ba,_0x15632d=this[_0x1e4d61(0x1e7)](),_0x22e067=Date['now']();if(!this['isEnabled'])throw new Error(_0x1e4d61(0x19c)+this['id']+_0x1e4d61(0x1d0));if(this[_0x1e4d61(0x19f)][_0x1e4d61(0x1ec)]>=this[_0x1e4d61(0x1ef)])throw new Error(_0x1e4d61(0x19c)+this['id']+_0x1e4d61(0x1c0));const _0x4d800f=this['validateParameters'](_0x49a36b);if(!_0x4d800f['valid'])throw new Error('Parameter\x20validation\x20failed:\x20'+_0x4d800f[_0x1e4d61(0x182)]);const _0x46e2cf={'id':_0x15632d,'toolId':this['id'],'status':TOOL_STATUS['EXECUTING'],'startTime':new Date()['toISOString'](),'params':_0x49a36b,'context':this[_0x1e4d61(0x1ed)](_0x2edde4)};this[_0x1e4d61(0x19f)]['set'](_0x15632d,_0x46e2cf);try{this[_0x1e4d61(0x191)]?.[_0x1e4d61(0x1df)](_0x1e4d61(0x1e6)+this['id'],{'operationId':_0x15632d,'toolId':this['id'],'context':_0x46e2cf['context']});const _0xe2c764=await this['executeWithTimeout'](_0x49a36b,_0x2edde4);return _0x46e2cf[_0x1e4d61(0x1d5)]=TOOL_STATUS[_0x1e4d61(0x199)],_0x46e2cf['result']=_0xe2c764,_0x46e2cf[_0x1e4d61(0x1c3)]=new Date()[_0x1e4d61(0x1c9)](),_0x46e2cf['executionTime']=Date['now']()-_0x22e067,this[_0x1e4d61(0x1da)]=new Date()[_0x1e4d61(0x1c9)](),this[_0x1e4d61(0x1cf)]++,this[_0x1e4d61(0x191)]?.[_0x1e4d61(0x1df)](_0x1e4d61(0x1b9)+this['id'],{'operationId':_0x15632d,'executionTime':_0x46e2cf['executionTime'],'success':!![]}),{'success':!![],'operationId':_0x15632d,'result':_0xe2c764,'executionTime':_0x46e2cf['executionTime'],'toolId':this['id']};}catch(_0x5029a5){_0x46e2cf['status']=TOOL_STATUS[_0x1e4d61(0x188)],_0x46e2cf[_0x1e4d61(0x182)]=_0x5029a5[_0x1e4d61(0x1b8)],_0x46e2cf['endTime']=new Date()[_0x1e4d61(0x1c9)](),_0x46e2cf[_0x1e4d61(0x19d)]=Date[_0x1e4d61(0x1a8)]()-_0x22e067,this['logger']?.[_0x1e4d61(0x182)](_0x1e4d61(0x1e5)+this['id'],{'operationId':_0x15632d,'error':_0x5029a5['message'],'executionTime':_0x46e2cf['executionTime']});throw _0x5029a5;}finally{this['operationHistory']['push']({..._0x46e2cf}),this['activeOperations'][_0x1e4d61(0x183)](_0x15632d),this['cleanupHistory'](),await this['cleanup'](_0x15632d);}}async['getStatus'](_0x577473){const _0x1baa2f=a0_0xe430ba,_0x4d6b2c=this['activeOperations']['get'](_0x577473);if(!_0x4d6b2c){const _0x47b919=this[_0x1baa2f(0x1b0)]['find'](_0x33b967=>_0x33b967['id']===_0x577473);if(_0x47b919)return{'operationId':_0x577473,'status':_0x47b919['status'],'result':_0x47b919['result'],'error':_0x47b919[_0x1baa2f(0x182)],'executionTime':_0x47b919['executionTime']};return{'operationId':_0x577473,'status':OPERATION_STATUS[_0x1baa2f(0x1b3)],'error':'Operation\x20not\x20found'};}return{'operationId':_0x577473,'status':_0x4d6b2c['status'],'startTime':_0x4d6b2c['startTime'],'executionTime':_0x4d6b2c[_0x1baa2f(0x1c3)]?new Date(_0x4d6b2c['endTime'])['getTime']()-new Date(_0x4d6b2c['startTime'])['getTime']():Date[_0x1baa2f(0x1a8)]()-new Date(_0x4d6b2c['startTime'])[_0x1baa2f(0x18f)]()};}async['cleanup'](_0x5d8968){}[a0_0xe430ba(0x1d4)](){return['execute'];}[a0_0xe430ba(0x195)](){const _0x26dea6=a0_0xe430ba;return{'type':_0x26dea6(0x192),'properties':{},'required':[]};}[a0_0xe430ba(0x1de)](){return[];}['validateParameterTypes'](_0x224cbb){return{'valid':!![]};}['customValidateParameters'](_0x37cc2b){return{'valid':!![]};}async[a0_0xe430ba(0x1ae)](_0x17e17c,_0x3f1725){return new Promise(async(_0x34b3b7,_0x25fe70)=>{const _0x30f646=a0_0x2c22,_0x4de2b7=setTimeout(()=>{const _0x3b6f50=a0_0x2c22;_0x25fe70(new Error(_0x3b6f50(0x185)+this[_0x3b6f50(0x181)]+'ms'));},this['timeout']);try{const _0x87adf=await this[_0x30f646(0x18b)](_0x17e17c,_0x3f1725);clearTimeout(_0x4de2b7),_0x34b3b7(_0x87adf);}catch(_0x29544f){clearTimeout(_0x4de2b7),_0x25fe70(_0x29544f);}});}['generateOperationId'](){const _0xcd8cd=a0_0xe430ba;return this['id']+'-'+Date[_0xcd8cd(0x1a8)]()+'-'+Math[_0xcd8cd(0x1d2)]()['toString'](0x24)['substr'](0x2,0x9);}[a0_0xe430ba(0x1ed)](_0x5e1312){const _0x1101a3=a0_0xe430ba,_0x51bbb7={..._0x5e1312};return delete _0x51bbb7['apiKeys'],delete _0x51bbb7[_0x1101a3(0x1ea)],delete _0x51bbb7['passwords'],_0x51bbb7['content']&&_0x51bbb7['content'][_0x1101a3(0x1dc)]>0x1f4&&(_0x51bbb7['content']=_0x51bbb7['content']['substring'](0x0,0x1f4)+'...\x20[truncated]'),_0x51bbb7;}[a0_0xe430ba(0x1a5)](){const _0x58131c=a0_0xe430ba,_0x187bb6=0x64;this['operationHistory']['length']>_0x187bb6&&(this['operationHistory']=this[_0x58131c(0x1b0)][_0x58131c(0x1c5)](-_0x187bb6));}['getUsageStats'](){const _0x26d395=a0_0xe430ba;return{'toolId':this['id'],'usageCount':this['usageCount'],'lastUsed':this['lastUsed'],'activeOperations':this['activeOperations']['size'],'totalOperations':this['operationHistory'][_0x26d395(0x1dc)],'averageExecutionTime':this['calculateAverageExecutionTime'](),'successRate':this[_0x26d395(0x17f)](),'isEnabled':this[_0x26d395(0x1eb)]};}[a0_0xe430ba(0x1f4)](){const _0x2dbcd9=a0_0xe430ba,_0x5fec27=this[_0x2dbcd9(0x1b0)]['filter'](_0x4342b0=>_0x4342b0[_0x2dbcd9(0x1d5)]===TOOL_STATUS['COMPLETED']&&_0x4342b0[_0x2dbcd9(0x19d)]);if(_0x5fec27[_0x2dbcd9(0x1dc)]===0x0)return 0x0;const _0x43bada=_0x5fec27[_0x2dbcd9(0x193)]((_0x1547ac,_0x39836f)=>_0x1547ac+_0x39836f[_0x2dbcd9(0x19d)],0x0);return Math[_0x2dbcd9(0x1ab)](_0x43bada/_0x5fec27[_0x2dbcd9(0x1dc)]);}[a0_0xe430ba(0x17f)](){const _0x51445c=a0_0xe430ba;if(this[_0x51445c(0x1b0)][_0x51445c(0x1dc)]===0x0)return 0x0;const _0x262b7c=this[_0x51445c(0x1b0)]['filter'](_0xeae20d=>_0xeae20d[_0x51445c(0x1d5)]===TOOL_STATUS['COMPLETED']);return _0x262b7c[_0x51445c(0x1dc)]/this['operationHistory']['length']*0x64;}[a0_0xe430ba(0x1d6)](){const _0x9a386c=a0_0xe430ba;this['isEnabled']=!![],this[_0x9a386c(0x191)]?.['info']('Tool\x20enabled:\x20'+this['id']);}['disable'](){const _0x9a078a=a0_0xe430ba;this['isEnabled']=![],this[_0x9a078a(0x191)]?.['info']('Tool\x20disabled:\x20'+this['id']);}['resetStats'](){const _0x309f0e=a0_0xe430ba;this['usageCount']=0x0,this['lastUsed']=null,this['operationHistory']=[],this['logger']?.['info'](_0x309f0e(0x1f0)+this['id']);}}class ToolsRegistry{constructor(_0x4faa95=null){const _0x1f0745=a0_0xe430ba;this['logger']=_0x4faa95,this[_0x1f0745(0x1cc)]=new Map(),this[_0x1f0745(0x1a1)]=new Map(),this['toolCapabilities']=new Map(),this[_0x1f0745(0x19a)]=new Map();}async[a0_0xe430ba(0x1d3)](_0x26d03b){const _0x5df245=a0_0xe430ba;try{const _0x1e0a21=new _0x26d03b();if(!(_0x1e0a21 instanceof BaseTool))throw new Error(_0x5df245(0x19c)+_0x26d03b[_0x5df245(0x187)]+'\x20must\x20extend\x20BaseTool');const _0x1266a5=_0x1e0a21['getCapabilities']();await this['validateTool'](_0x1e0a21),this[_0x5df245(0x1cc)]['set'](_0x1e0a21['id'],_0x1e0a21),this['toolDescriptions']['set'](_0x1e0a21['id'],_0x1e0a21[_0x5df245(0x1e2)]()),this['toolCapabilities'][_0x5df245(0x1c1)](_0x1e0a21['id'],_0x1266a5),this['logger']?.['info']('Tool\x20registered:\x20'+_0x1e0a21['id'],{'capabilities':_0x1266a5['supportedActions'],'async':_0x1266a5['async'],'requiresProject':_0x1266a5['requiresProject']});}catch(_0x1ca271){this['logger']?.[_0x5df245(0x182)]('Tool\x20registration\x20failed:\x20'+_0x1ca271[_0x5df245(0x1b8)],{'toolClass':_0x26d03b[_0x5df245(0x187)]});throw _0x1ca271;}}async['discoverTools'](_0x1a0722){return 0x0;}async['validateTool'](_0x5dfd16){const _0xb708f1=a0_0xe430ba,requiredMethods=['getDescription',_0xb708f1(0x1e9),'execute'];for(const _0xcb3411 of requiredMethods){if(typeof _0x5dfd16[_0xcb3411]!=='function')throw new Error('Tool\x20'+_0x5dfd16['id']+_0xb708f1(0x1ee)+_0xcb3411);}try{const _0x1b076e=_0x5dfd16[_0xb708f1(0x1e9)](_0xb708f1(0x1b5));if(typeof _0x1b076e!=='object')throw new Error('Tool\x20'+_0x5dfd16['id']+'\x20parseParameters\x20must\x20return\x20an\x20object');}catch(_0x2fe9fc){}const _0x36d2c0=_0x5dfd16['getCapabilities']();if(!_0x36d2c0||typeof _0x36d2c0!==_0xb708f1(0x192))throw new Error('Tool\x20'+_0x5dfd16['id']+'\x20getCapabilities\x20must\x20return\x20an\x20object');}[a0_0xe430ba(0x1c8)](_0x323d4f){const _0x4f4f09=a0_0xe430ba;return this[_0x4f4f09(0x1cc)]['get'](_0x323d4f)||null;}['getToolCapabilities'](){const _0x52687c=a0_0xe430ba,_0x2069d8={};for(const [_0x186984,_0xa026db]of this['tools']['entries']()){_0xa026db['isEnabled']&&(_0x2069d8[_0x186984]={'description':this['toolDescriptions'][_0x52687c(0x1ac)](_0x186984),'capabilities':this['toolCapabilities'][_0x52687c(0x1ac)](_0x186984),'usageStats':_0xa026db[_0x52687c(0x1a6)]()});}return _0x2069d8;}async[a0_0xe430ba(0x1c4)](_0x1cf878,_0x43aba5,_0x3b5d45){const _0x33043b=a0_0xe430ba,_0x121f17=this[_0x33043b(0x1c8)](_0x1cf878);if(!_0x121f17)throw new Error(_0x33043b(0x1d9)+_0x1cf878);if(!_0x121f17[_0x33043b(0x1eb)])throw new Error('Tool\x20is\x20disabled:\x20'+_0x1cf878);return await _0x121f17[_0x33043b(0x1bd)](_0x43aba5,_0x3b5d45);}[a0_0xe430ba(0x180)](){const _0x55a2c8=a0_0xe430ba;return Array['from'](this['tools'][_0x55a2c8(0x1ad)]());}[a0_0xe430ba(0x1bf)](_0x29df12=[],_0x341269={}){const _0xf6c089=a0_0xe430ba,{includeExamples:includeExamples=!![],includeUsageGuidelines:includeUsageGuidelines=!![],includeSecurityNotes:includeSecurityNotes=!![],compact:compact=![]}=_0x341269,_0x4f46e5=_0x29df12[_0xf6c089(0x1dc)]>0x0?_0x29df12[_0xf6c089(0x1a3)](_0x176b56=>this[_0xf6c089(0x1cc)]['has'](_0x176b56)):Array['from'](this['tools'][_0xf6c089(0x1ad)]());if(_0x4f46e5['length']===0x0)return'';let _0x55c02e='\x0a##\x20AVAILABLE\x20TOOLS\x0a\x0a';_0x55c02e+=_0xf6c089(0x1c2);for(const _0x1100a7 of _0x4f46e5){const _0x2e50bd=this['tools']['get'](_0x1100a7);if(!_0x2e50bd||!_0x2e50bd[_0xf6c089(0x1eb)])continue;try{if(compact){const _0x1820cb=_0x2e50bd['getCapabilities'](),_0xa57a29=_0x1820cb['supportedActions']||['execute'];_0x55c02e+='**'+_0x1100a7+_0xf6c089(0x184)+_0xa57a29[_0xf6c089(0x1ba)](',\x20')+'\x0a';}else _0x55c02e+='###\x20'+_0x1100a7['toUpperCase']()+_0xf6c089(0x1af),_0x55c02e+=_0x2e50bd['getDescription'](),_0x55c02e+='\x0a\x0a---\x0a\x0a';}catch(_0x5b99d1){this[_0xf6c089(0x191)]?.['warn'](_0xf6c089(0x1f3)+_0x1100a7,{'error':_0x5b99d1['message']});}}return compact&&(_0x55c02e+=_0xf6c089(0x1dd)),_0x55c02e+='##\x20TOOL\x20INVOCATION\x20SYNTAX\x0a\x0a',_0x55c02e+='**IMPORTANT**:\x20Use\x20JSON\x20format\x20in\x20markdown\x20code\x20blocks\x20to\x20invoke\x20tools:\x0a\x0a',_0x55c02e+=_0xf6c089(0x17d),_0x55c02e+=_0xf6c089(0x1d1),_0x55c02e+=_0xf6c089(0x1e1),_0x55c02e+='{\x0a',_0x55c02e+='\x20\x20\x22toolId\x22:\x20\x22toolname\x22,\x0a',_0x55c02e+=_0xf6c089(0x1b2),_0x55c02e+='}\x0a',_0x55c02e+=_0xf6c089(0x1d1),_0x55c02e+='```\x0a\x0a',_0x55c02e+='**Rules:**\x0a',_0x55c02e+=_0xf6c089(0x18e),_0x55c02e+=_0xf6c089(0x1a9),_0x55c02e+=_0xf6c089(0x1b6),_0x55c02e+=_0xf6c089(0x1bc),_0x55c02e+=_0xf6c089(0x1f1),_0x55c02e;}[a0_0xe430ba(0x1aa)](_0x3e5d29,_0x6f57f5=[],_0x46a0d1={}){const _0x38e303=a0_0xe430ba,_0x57511e=this['generateToolDescriptionsForPrompt'](_0x6f57f5,_0x46a0d1);if(!_0x57511e['trim']())return _0x3e5d29||'';const _0x4608d4=_0x3e5d29||'';if(_0x4608d4[_0x38e303(0x1e0)]('##\x20AVAILABLE\x20TOOLS'))return _0x4608d4['replace'](/## AVAILABLE TOOLS[\s\S]*?(?=##|$)/,_0x57511e+'\x0a');const _0x150342='IMPORTANT:\x20when\x20asked\x20to\x20perform\x20an\x20action\x20or\x20operation,\x20use\x20each\x20response\x20to\x20invoke\x20a\x20tool\x20if\x20needed,\x20and\x20update\x20the\x20user\x20on\x20the\x20progress\x20(same\x20message).';return _0x4608d4+(_0x4608d4['endsWith']('\x0a')?'':'\x0a')+_0x57511e+_0x150342+'\x0a';}[a0_0xe430ba(0x1b7)](){const _0x52464d=a0_0xe430ba,_0x4d0de7=[];for(const [_0x42448a,_0x2315d6]of this[_0x52464d(0x1cc)]['entries']()){const _0x54dec3=_0x2315d6[_0x52464d(0x1b4)](),_0x3a4edb=_0x2315d6['getDescription'](),_0x494d14=_0x3a4edb['split']('\x0a')['find'](_0x49b138=>_0x49b138['trim']()['length']>0x0)||'',_0x2e0c8d=_0x494d14['replace'](/^.*Tool:\s*/i,'')['replace'](/\s*-.*$/,'')[_0x52464d(0x189)]();_0x4d0de7[_0x52464d(0x19b)]({'id':_0x42448a,'name':_0x2e0c8d||_0x42448a[_0x52464d(0x1e3)](0x0)['toUpperCase']()+_0x42448a['slice'](0x1),'description':_0x494d14,'category':this[_0x52464d(0x1a2)](_0x42448a),'enabled':_0x54dec3['enabled'],'async':_0x54dec3[_0x52464d(0x190)],'requiresProject':_0x54dec3[_0x52464d(0x1cb)],'className':_0x2315d6[_0x52464d(0x17e)]['name']});}return _0x4d0de7['sort']((_0x599f76,_0x20ac90)=>_0x599f76[_0x52464d(0x187)][_0x52464d(0x1e4)](_0x20ac90[_0x52464d(0x187)]));}['_getToolCategory'](_0x2e0909){const _0x91cff6=a0_0xe430ba,_0x228a07={'terminal':_0x91cff6(0x196),'filesystem':'File\x20Operations','web':'Automation','agentdelay':'Utility'};return _0x228a07[_0x2e0909]||'Other';}[a0_0xe430ba(0x1bb)](){const _0x51c168=a0_0xe430ba,_0x3123d1=Array[_0x51c168(0x1db)](this['tools']['values']())[_0x51c168(0x1a3)](_0x5ec46f=>_0x5ec46f[_0x51c168(0x1eb)]),_0x2cf8ad=Array[_0x51c168(0x1db)](this[_0x51c168(0x1cc)]['values']())[_0x51c168(0x193)]((_0x424c56,_0x26ca19)=>_0x424c56+_0x26ca19['usageCount'],0x0);return{'totalTools':this['tools']['size'],'enabledTools':_0x3123d1[_0x51c168(0x1dc)],'totalOperations':_0x2cf8ad,'activeOperations':this['asyncOperations'][_0x51c168(0x1ec)]};}}export{BaseTool,ToolsRegistry};
|
|
1
|
+
const a0_0x56073b=a0_0x2e4d;function a0_0x2e4d(_0xee4c98,_0x4a10e4){_0xee4c98=_0xee4c98-0xa2;const _0x473a8b=a0_0x473a();let _0x2e4dc4=_0x473a8b[_0xee4c98];if(a0_0x2e4d['AYEcCT']===undefined){var _0x348760=function(_0x56b17d){const _0xfad05e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x367270='',_0x104314='';for(let _0x142d33=0x0,_0x591384,_0x2e6e81,_0xdcdcb7=0x0;_0x2e6e81=_0x56b17d['charAt'](_0xdcdcb7++);~_0x2e6e81&&(_0x591384=_0x142d33%0x4?_0x591384*0x40+_0x2e6e81:_0x2e6e81,_0x142d33++%0x4)?_0x367270+=String['fromCharCode'](0xff&_0x591384>>(-0x2*_0x142d33&0x6)):0x0){_0x2e6e81=_0xfad05e['indexOf'](_0x2e6e81);}for(let _0x1df08e=0x0,_0x16d57d=_0x367270['length'];_0x1df08e<_0x16d57d;_0x1df08e++){_0x104314+='%'+('00'+_0x367270['charCodeAt'](_0x1df08e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x104314);};a0_0x2e4d['oSNHyE']=_0x348760,a0_0x2e4d['ZTmBDy']={},a0_0x2e4d['AYEcCT']=!![];}const _0x284967=_0x473a8b[0x0],_0x5c711a=_0xee4c98+_0x284967,_0x13c55d=a0_0x2e4d['ZTmBDy'][_0x5c711a];return!_0x13c55d?(_0x2e4dc4=a0_0x2e4d['oSNHyE'](_0x2e4dc4),a0_0x2e4d['ZTmBDy'][_0x5c711a]=_0x2e4dc4):_0x2e4dc4=_0x13c55d,_0x2e4dc4;}(function(_0x9fe88a,_0x4e8368){const _0x2e92ad=a0_0x2e4d,_0x14cde1=_0x9fe88a();while(!![]){try{const _0x500b22=parseInt(_0x2e92ad(0xf3))/0x1+parseInt(_0x2e92ad(0xc0))/0x2+-parseInt(_0x2e92ad(0xb8))/0x3*(-parseInt(_0x2e92ad(0xbd))/0x4)+-parseInt(_0x2e92ad(0x10a))/0x5*(parseInt(_0x2e92ad(0xb1))/0x6)+-parseInt(_0x2e92ad(0xc1))/0x7+-parseInt(_0x2e92ad(0xf0))/0x8+parseInt(_0x2e92ad(0xf8))/0x9;if(_0x500b22===_0x4e8368)break;else _0x14cde1['push'](_0x14cde1['shift']());}catch(_0x5ac405){_0x14cde1['push'](_0x14cde1['shift']());}}}(a0_0x473a,0x4b0a7));function a0_0x473a(){const _0x48d0fe=['C3rHDhvZ','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','y29UDgvUDa','CMvWBgfJzq','C2XPy2u','z2v0ugfYyw1LDgvYu2nOzw1H','DMfSAwq','vg9VBca','kIO6ia','DxnHz2vdB3vUDa','C2L6zq','B3bLCMf0Aw9UsgLZDg9YEq','BwvZC2fNzq','x2DLDfrVB2XdyxrLz29YEq','iYmJia','Aw5MBW','ndeXmZG0rgDjAMzH','zxHLy3v0zq','zNvUy3rPB24','mJC2mZC4DfrxA3Hy','ygbGcG','DMfSAwrHDgvqyxjHBwv0zxjuExbLCW','z2v0vg9VBenHCgfIAwXPDgLLCW','ig11C3qGAw1WBgvTzw50ihbHCNnLugfYyw1LDgvYCYGP','otq2otK4BgHZvK1O','rMLSzsbpCgvYyxrPB25Z','ihbHCNnLugfYyw1LDgvYCYbTDxn0ihjLDhvYBIbHBIbVyMPLy3q','ugfYyw1LDgvYihzHBgLKyxrPB24GzMfPBgvKoIa','C3rHCNruAw1L','zw5KvgLTzq','ig11C3qGAw1WBgvTzw50igDLDerLC2nYAxb0Aw9UkcK','BM93','CMfUzg9T','Bg9JywXLq29TCgfYzq','tufyx1rpt0XFrvHfq1vusu9ox1rjtuu','cImJiefwquLmqujmrsbut09muWOk','z2v0','z2v0uMvNAxn0CNLtDgf0CW','zxHLy3v0Aw9UvgLTzq','igLZigrPC2fIBgvK','CMvKDwnL','C2fUAxrPEMvdB250zxH0','mJG1ntvvqwrVsMq','iYmJifn0yw5KyxjKiezVCM1HDdOGsLnptIbPBIbnyxjRzg93BIbdB2rLiejSB2nRcG','BMfTzq','CMvZDwX0','z2v0vg9VBa','u3LZDgvT','z2v0rgvZy3jPChrPB24','ww91igHHDMuGywnJzxnZihrVihrOzsbMB2XSB3DPBMCGDg9VBhmGDg8GCgvYzM9YBsbVCgvYyxrPB25ZigfUzcb0yxnRCZOkcG','Dg9VBerLC2nYAxb0Aw9UCW','C3vIC3rYAw5N','zgvSzxrL','Bg9Nz2vY','DgLTzw91Da','vg9VBcbLEgvJDxrPB24GDgLTzwqGB3v0igfMDgvYia','lsbvC2uGiNrVB2XjzciGDg8GC3bLy2LMEsb0AguGDg9VBcbUyw1LcG','ywn0AxzLt3bLCMf0Aw9UCW','vg9VBcbKAxnHyMXLzdOG','iYmGqvzbsuXbqKXfifrpt0Xt','B2jQzwn0','C2v0','Dg9VBhm','nteWsNfRvKTb','DMfSAwrHDgvuB29S','Dg9ju09tDhjPBMC','AxnfBMfIBgvK','rMfPBgvKihrVigDLDcbKzxnJCMLWDgLVBIbMB3iGDg9VBdOG','zw5Oyw5Jzvn5C3rLBvbYB21WDa','y2XLyw51Ca','mtaWnZmWmxjnAg55yG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','DMfSAwrHDgvqyxjHBwv0zxjZ','z2v0u3rHDhvZ','ChvZAa','nfDtDenPwa','BgfZDfvZzwq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','ndq2mtu0u0HutMDu','nJCZntmZCfvZzLn3','y2HHCKf0','tK9ux0zpvu5e','Dg9vChbLCKnHC2u','iYmGve9ptcbjtLzpq0fusu9oifnztLrbwaOk','z2v0vgLTzq','CgfZC3DVCMrZ','y2XLyw51CeHPC3rVCNK','cLvZzsbku09oigzVCM1HDcbPBIbTyxjRzg93BIbJB2rLigjSB2nRCYb0BYbPBNzVA2uGDg9VBhmUcGO','z2v0q2fWywjPBgL0AwvZ','Dg9VBenHCgfIAwXPDgLLCW','t3bLCMf0Aw9Uig5VDcbMB3vUza','zxHLy3v0zvrVB2Xtzwn1CMvSEq','vg9VBcbYzwDPC3rLCMvKoIa','yxn5BMm','BgvUz3rO','zNjVBq','zw50CMLLCW','AxnbC3LUyW','CMvXDwLYzxnqCM9Qzwn0','yxn5BMnpCgvYyxrPB25Z','zxHLy3v0zvDPDgHmAwzLy3LJBgu','zxjYB3i','D2fYBG','y29UC3rYDwn0B3i','CgfYC2vqyxjHBwv0zxjZ','y2fSy3vSyxrLqxzLCMfNzuv4zwn1DgLVBLrPBwu','z2vUzxjHDgvuB29SrgvZy3jPChrPB25ZrM9YuhjVBxb0','zMLSDgvY','vg9VBcbYzwDPC3rYyxrPB24GzMfPBgvKoIa','Dg9tDhjPBMC'];a0_0x473a=function(){return _0x48d0fe;};return a0_0x473a();}import{TOOL_STATUS,OPERATION_STATUS,ERROR_TYPES,SYSTEM_DEFAULTS}from'../utilities/constants.js';class BaseTool{constructor(_0x367270={},_0x104314=null){const _0x514745=a0_0x2e4d;this['id']=this['constructor'][_0x514745(0x10c)]['toLowerCase']()['replace']('tool',''),this['config']=_0x367270,this['logger']=_0x104314,this['requiresProject']=![],this['isAsync']=![],this[_0x514745(0xa8)]=_0x367270[_0x514745(0xa8)]||SYSTEM_DEFAULTS[_0x514745(0x102)],this['maxConcurrentOperations']=_0x367270['maxConcurrentOperations']||0x1,this['activeOperations']=new Map(),this[_0x514745(0xeb)]=[],this['isEnabled']=_0x367270['enabled']!==![],this['lastUsed']=null,this[_0x514745(0xe9)]=0x0;}[a0_0x56073b(0xa2)](){const _0xb98d0b=a0_0x56073b;throw new Error('Tool\x20'+this['id']+_0xb98d0b(0xfe));}[a0_0x56073b(0xda)](_0x142d33){const _0x110cd7=a0_0x56073b;throw new Error(_0x110cd7(0xe7)+this['id']+_0x110cd7(0xf7));}async[a0_0x56073b(0xf1)](_0x591384,_0x2e6e81){throw new Error('Tool\x20'+this['id']+'\x20must\x20implement\x20execute()');}[a0_0x56073b(0xca)](){const _0x58a6d3=a0_0x56073b;return{'id':this['id'],'async':this[_0x58a6d3(0xd3)],'requiresProject':this[_0x58a6d3(0xd4)],'timeout':this[_0x58a6d3(0xa8)],'maxConcurrentOperations':this[_0x58a6d3(0xb9)],'enabled':this['isEnabled'],'supportedActions':this['getSupportedActions'](),'parameterSchema':this[_0x58a6d3(0xe5)]()};}['validateParameters'](_0xdcdcb7){const _0xa19403=a0_0x56073b;try{if(!_0xdcdcb7||typeof _0xdcdcb7!=='object')return{'valid':![],'error':'Parameters\x20must\x20be\x20an\x20object'};const requiredParams=this['getRequiredParameters']();for(const required of requiredParams){if(!(required in _0xdcdcb7))return{'valid':![],'error':'Missing\x20required\x20parameter:\x20'+required};}const _0x1df08e=this[_0xa19403(0xf5)](_0xdcdcb7);if(!_0x1df08e[_0xa19403(0xe6)])return _0x1df08e;const _0x16d57d=this[_0xa19403(0xbf)](_0xdcdcb7);if(!_0x16d57d[_0xa19403(0xe6)])return _0x16d57d;return{'valid':!![]};}catch(_0x2a46f7){return{'valid':![],'error':'Parameter\x20validation\x20failed:\x20'+_0x2a46f7[_0xa19403(0xec)]};}}async[a0_0x56073b(0xd6)](_0x2155b5,_0x49cabf){const _0x257f14=a0_0x56073b,_0x38144a=this['generateOperationId'](),_0x217681=Date['now']();if(!this[_0x257f14(0xb4)])throw new Error('Tool\x20'+this['id']+_0x257f14(0x107));if(this[_0x257f14(0xab)]['size']>=this['maxConcurrentOperations'])throw new Error(_0x257f14(0xe7)+this['id']+'\x20has\x20reached\x20maximum\x20concurrent\x20operations\x20limit');const _0x2d2bfc=this[_0x257f14(0xba)](_0x2155b5);if(!_0x2d2bfc[_0x257f14(0xe6)])throw new Error(_0x257f14(0xfb)+_0x2d2bfc[_0x257f14(0xd7)]);const _0x550b06={'id':_0x38144a,'toolId':this['id'],'status':TOOL_STATUS['EXECUTING'],'startTime':new Date()['toISOString'](),'params':_0x2155b5,'context':this[_0x257f14(0x109)](_0x49cabf)};this[_0x257f14(0xab)]['set'](_0x38144a,_0x550b06);try{this[_0x257f14(0xa7)]?.['info']('Tool\x20execution\x20started:\x20'+this['id'],{'operationId':_0x38144a,'toolId':this['id'],'context':_0x550b06['context']});const _0x5a2135=await this['executeWithTimeout'](_0x2155b5,_0x49cabf);return _0x550b06[_0x257f14(0xe0)]=TOOL_STATUS['COMPLETED'],_0x550b06[_0x257f14(0x10d)]=_0x5a2135,_0x550b06['endTime']=new Date()[_0x257f14(0xb3)](),_0x550b06[_0x257f14(0x106)]=Date['now']()-_0x217681,this['lastUsed']=new Date()[_0x257f14(0xb3)](),this['usageCount']++,this[_0x257f14(0xa7)]?.[_0x257f14(0xef)]('Tool\x20execution\x20completed:\x20'+this['id'],{'operationId':_0x38144a,'executionTime':_0x550b06[_0x257f14(0x106)],'success':!![]}),{'success':!![],'operationId':_0x38144a,'result':_0x5a2135,'executionTime':_0x550b06['executionTime'],'toolId':this['id']};}catch(_0x211fbe){_0x550b06['status']=TOOL_STATUS['FAILED'],_0x550b06['error']=_0x211fbe[_0x257f14(0xec)],_0x550b06['endTime']=new Date()[_0x257f14(0xb3)](),_0x550b06['executionTime']=Date[_0x257f14(0xff)]()-_0x217681,this['logger']?.['error']('Tool\x20execution\x20failed:\x20'+this['id'],{'operationId':_0x38144a,'error':_0x211fbe[_0x257f14(0xec)],'executionTime':_0x550b06['executionTime']});throw _0x211fbe;}finally{this['operationHistory'][_0x257f14(0xbc)]({..._0x550b06}),this[_0x257f14(0xab)][_0x257f14(0xa6)](_0x38144a),this[_0x257f14(0xc8)](),await this[_0x257f14(0xb7)](_0x38144a);}}async[a0_0x56073b(0xbb)](_0x3d1b9d){const _0x33aa95=a0_0x56073b,_0x30fbb5=this['activeOperations']['get'](_0x3d1b9d);if(!_0x30fbb5){const _0x40915d=this[_0x33aa95(0xeb)]['find'](_0x574651=>_0x574651['id']===_0x3d1b9d);if(_0x40915d)return{'operationId':_0x3d1b9d,'status':_0x40915d[_0x33aa95(0xe0)],'result':_0x40915d['result'],'error':_0x40915d[_0x33aa95(0xd7)],'executionTime':_0x40915d[_0x33aa95(0x106)]};return{'operationId':_0x3d1b9d,'status':OPERATION_STATUS[_0x33aa95(0xc3)],'error':_0x33aa95(0xcc)};}return{'operationId':_0x3d1b9d,'status':_0x30fbb5[_0x33aa95(0xe0)],'startTime':_0x30fbb5[_0x33aa95(0xfc)],'executionTime':_0x30fbb5[_0x33aa95(0xfd)]?new Date(_0x30fbb5[_0x33aa95(0xfd)])['getTime']()-new Date(_0x30fbb5['startTime'])[_0x33aa95(0xc6)]():Date[_0x33aa95(0xff)]()-new Date(_0x30fbb5['startTime'])['getTime']()};}async[a0_0x56073b(0xb7)](_0x4d4c70){}['getSupportedActions'](){const _0x2944ae=a0_0x56073b;return[_0x2944ae(0xf1)];}[a0_0x56073b(0xe5)](){const _0x3bb6b8=a0_0x56073b;return{'type':_0x3bb6b8(0xae),'properties':{},'required':[]};}[a0_0x56073b(0xe1)](){return[];}['validateParameterTypes'](_0x3bb372){return{'valid':!![]};}[a0_0x56073b(0xbf)](_0x3e0162){return{'valid':!![]};}async['executeWithTimeout'](_0x23b1c2,_0xba9da8){return new Promise(async(_0x24225e,_0x468b6d)=>{const _0x119143=a0_0x2e4d,_0xea9b7e=setTimeout(()=>{const _0x341529=a0_0x2e4d;_0x468b6d(new Error(_0x341529(0xa9)+this[_0x341529(0xa8)]+'ms'));},this['timeout']);try{const _0x8116d0=await this[_0x119143(0xf1)](_0x23b1c2,_0xba9da8);clearTimeout(_0xea9b7e),_0x24225e(_0x8116d0);}catch(_0x5eb68d){clearTimeout(_0xea9b7e),_0x468b6d(_0x5eb68d);}});}['generateOperationId'](){const _0x178ff6=a0_0x56073b;return this['id']+'-'+Date['now']()+'-'+Math[_0x178ff6(0x100)]()[_0x178ff6(0xdf)](0x24)['substr'](0x2,0x9);}['sanitizeContext'](_0x2a5e09){const _0x2e99a3=a0_0x56073b,_0x4ce453={..._0x2a5e09};return delete _0x4ce453['apiKeys'],delete _0x4ce453['secrets'],delete _0x4ce453[_0x2e99a3(0xc7)],_0x4ce453['content']&&_0x4ce453['content'][_0x2e99a3(0xd0)]>0x1f4&&(_0x4ce453['content']=_0x4ce453[_0x2e99a3(0xe2)][_0x2e99a3(0xa5)](0x0,0x1f4)+'...\x20[truncated]'),_0x4ce453;}['cleanupHistory'](){const _0x40ad7f=a0_0x56073b,_0x3b8242=0x64;this[_0x40ad7f(0xeb)][_0x40ad7f(0xd0)]>_0x3b8242&&(this['operationHistory']=this['operationHistory']['slice'](-_0x3b8242));}['getUsageStats'](){const _0x2c51c1=a0_0x56073b;return{'toolId':this['id'],'usageCount':this['usageCount'],'lastUsed':this[_0x2c51c1(0xbe)],'activeOperations':this['activeOperations'][_0x2c51c1(0xea)],'totalOperations':this['operationHistory'][_0x2c51c1(0xd0)],'averageExecutionTime':this[_0x2c51c1(0xdb)](),'successRate':this['calculateSuccessRate'](),'isEnabled':this['isEnabled']};}['calculateAverageExecutionTime'](){const _0x543eaa=a0_0x56073b,_0x62a0ed=this['operationHistory']['filter'](_0x47f0ad=>_0x47f0ad[_0x543eaa(0xe0)]===TOOL_STATUS['COMPLETED']&&_0x47f0ad['executionTime']);if(_0x62a0ed[_0x543eaa(0xd0)]===0x0)return 0x0;const _0x1ef901=_0x62a0ed['reduce']((_0x442a00,_0x47e63b)=>_0x442a00+_0x47e63b['executionTime'],0x0);return Math['round'](_0x1ef901/_0x62a0ed['length']);}['calculateSuccessRate'](){const _0x163030=a0_0x56073b;if(this['operationHistory'][_0x163030(0xd0)]===0x0)return 0x0;const _0x169f94=this[_0x163030(0xeb)]['filter'](_0x3f9071=>_0x3f9071['status']===TOOL_STATUS['COMPLETED']);return _0x169f94[_0x163030(0xd0)]/this[_0x163030(0xeb)]['length']*0x64;}['enable'](){const _0x392060=a0_0x56073b;this['isEnabled']=!![],this['logger']?.[_0x392060(0xef)]('Tool\x20enabled:\x20'+this['id']);}['disable'](){const _0x4b7ff0=a0_0x56073b;this[_0x4b7ff0(0xb4)]=![],this['logger']?.['info'](_0x4b7ff0(0xac)+this['id']);}['resetStats'](){const _0x5ac6e3=a0_0x56073b;this['usageCount']=0x0,this['lastUsed']=null,this[_0x5ac6e3(0xeb)]=[],this[_0x5ac6e3(0xa7)]?.[_0x5ac6e3(0xef)]('Tool\x20statistics\x20reset:\x20'+this['id']);}}class ToolsRegistry{constructor(_0x1e9f71=null){const _0x235bf6=a0_0x56073b;this[_0x235bf6(0xa7)]=_0x1e9f71,this[_0x235bf6(0xb0)]=new Map(),this['toolDescriptions']=new Map(),this[_0x235bf6(0xcb)]=new Map(),this[_0x235bf6(0xd5)]=new Map();}async['registerTool'](_0x26e8ad){const _0x4c3246=a0_0x56073b;try{const _0x264158=new _0x26e8ad();if(!(_0x264158 instanceof BaseTool))throw new Error(_0x4c3246(0xe7)+_0x26e8ad[_0x4c3246(0x10c)]+'\x20must\x20extend\x20BaseTool');const _0x89b2f=_0x264158['getCapabilities']();await this[_0x4c3246(0xb2)](_0x264158),this[_0x4c3246(0xb0)][_0x4c3246(0xaf)](_0x264158['id'],_0x264158),this[_0x4c3246(0xa4)][_0x4c3246(0xaf)](_0x264158['id'],_0x264158['getDescription']()),this['toolCapabilities'][_0x4c3246(0xaf)](_0x264158['id'],_0x89b2f),this[_0x4c3246(0xa7)]?.['info'](_0x4c3246(0xce)+_0x264158['id'],{'capabilities':_0x89b2f['supportedActions'],'async':_0x89b2f[_0x4c3246(0xcf)],'requiresProject':_0x89b2f['requiresProject']});}catch(_0x5e6f9f){this['logger']?.[_0x4c3246(0xd7)](_0x4c3246(0xde)+_0x5e6f9f[_0x4c3246(0xec)],{'toolClass':_0x26e8ad['name']});throw _0x5e6f9f;}}async['discoverTools'](_0x3265c5){return 0x0;}async['validateTool'](_0xf04ce3){const _0x1e557c=a0_0x56073b,requiredMethods=[_0x1e557c(0xa2),'parseParameters',_0x1e557c(0xf1)];for(const _0x355887 of requiredMethods){if(typeof _0xf04ce3[_0x355887]!==_0x1e557c(0xf2))throw new Error('Tool\x20'+_0xf04ce3['id']+'\x20missing\x20required\x20method:\x20'+_0x355887);}try{const _0x47fbbd=_0xf04ce3['parseParameters']('test\x20content');if(typeof _0x47fbbd!=='object')throw new Error(_0x1e557c(0xe7)+_0xf04ce3['id']+_0x1e557c(0xfa));}catch(_0x5a6fef){}const _0x3cd2d0=_0xf04ce3[_0x1e557c(0xca)]();if(!_0x3cd2d0||typeof _0x3cd2d0!=='object')throw new Error('Tool\x20'+_0xf04ce3['id']+'\x20getCapabilities\x20must\x20return\x20an\x20object');}[a0_0x56073b(0x10e)](_0x599cc4){const _0x3a7657=a0_0x56073b;return this[_0x3a7657(0xb0)]['get'](_0x599cc4)||null;}[a0_0x56073b(0xf6)](){const _0x4f409f=a0_0x56073b,_0x294f03={};for(const [_0x1878a4,_0x58daa7]of this[_0x4f409f(0xb0)][_0x4f409f(0xd2)]()){_0x58daa7[_0x4f409f(0xb4)]&&(_0x294f03[_0x1878a4]={'description':this[_0x4f409f(0xa4)][_0x4f409f(0x104)](_0x1878a4),'capabilities':this[_0x4f409f(0xcb)][_0x4f409f(0x104)](_0x1878a4),'usageStats':_0x58daa7['getUsageStats']()});}return _0x294f03;}async[a0_0x56073b(0xcd)](_0x1a6b56,_0x18a6d1,_0x5bec9c){const _0x309afb=a0_0x56073b,_0x54ddf3=this[_0x309afb(0x10e)](_0x1a6b56);if(!_0x54ddf3)throw new Error('Tool\x20not\x20found:\x20'+_0x1a6b56);if(!_0x54ddf3['isEnabled'])throw new Error('Tool\x20is\x20disabled:\x20'+_0x1a6b56);return await _0x54ddf3['executeWithLifecycle'](_0x18a6d1,_0x5bec9c);}['listTools'](){const _0x4ef03d=a0_0x56073b;return Array[_0x4ef03d(0xd1)](this['tools']['keys']());}[a0_0x56073b(0xdc)](_0x414c19=[],_0x5e53f3={}){const _0x45e913=a0_0x56073b,{includeExamples:includeExamples=!![],includeUsageGuidelines:includeUsageGuidelines=!![],includeSecurityNotes:includeSecurityNotes=!![],compact:compact=![]}=_0x5e53f3,_0x462e55=_0x414c19[_0x45e913(0xd0)]>0x0?_0x414c19[_0x45e913(0xdd)](_0x27a638=>this['tools']['has'](_0x27a638)):Array[_0x45e913(0xd1)](this['tools']['keys']());if(_0x462e55['length']===0x0)return'';let _0x288660=_0x45e913(0x103);_0x288660+=_0x45e913(0xa3);for(const _0x215654 of _0x462e55){const _0x3ca46f=this['tools'][_0x45e913(0x104)](_0x215654);if(!_0x3ca46f||!_0x3ca46f[_0x45e913(0xb4)])continue;try{if(compact){const _0x2e6a41=_0x3ca46f['getCapabilities'](),_0x195ef7=_0x2e6a41['supportedActions']||['execute'];_0x288660+='**'+_0x215654+_0x45e913(0xe8)+_0x195ef7['join'](',\x20')+'\x0a';}else _0x288660+=_0x45e913(0xee)+_0x215654[_0x45e913(0xc4)]()+'\x20TOOL\x0a\x0a',_0x288660+=_0x3ca46f[_0x45e913(0xa2)](),_0x288660+='\x0a\x0a---\x0a\x0a';}catch(_0x4d4d51){this[_0x45e913(0xa7)]?.[_0x45e913(0xd8)](_0x45e913(0xb5)+_0x215654,{'error':_0x4d4d51['message']});}}return compact&&(_0x288660+=_0x45e913(0xc9)),_0x288660+=_0x45e913(0xc5),_0x288660+='**IMPORTANT**:\x20Use\x20JSON\x20format\x20in\x20markdown\x20code\x20blocks\x20to\x20invoke\x20tools:\x0a\x0a',_0x288660+=_0x45e913(0x10b),_0x288660+=_0x45e913(0xf4),_0x288660+='```json\x0a',_0x288660+='{\x0a',_0x288660+='\x20\x20\x22toolId\x22:\x20\x22toolname\x22,\x0a',_0x288660+='\x20\x20\x22parameters\x22:\x20{\x20...\x20}\x0a',_0x288660+='}\x0a',_0x288660+=_0x45e913(0xf4),_0x288660+='```\x0a\x0a',_0x288660+='**Rules:**\x0a',_0x288660+='-\x20Always\x20wrap\x20JSON\x20tool\x20commands\x20in\x20```json\x20...\x20```\x20blocks\x0a',_0x288660+=_0x45e913(0xaa),_0x288660+='-\x20Use\x20\x22parameters\x22\x20object\x20for\x20tool-specific\x20parameters\x0a',_0x288660+='-\x20Use\x20\x22actions\x22\x20array\x20for\x20tools\x20that\x20support\x20multiple\x20operations\x0a\x0a',_0x288660+='After\x20invoking\x20a\x20tool,\x20WAIT\x20for\x20the\x20actual\x20response.\x20Do\x20NOT\x20generate\x20imaginary\x20responses.\x0a',_0x288660;}[a0_0x56073b(0xb6)](_0x13faa8,_0x26538a=[],_0x55cf02={}){const _0x19d0f5=a0_0x56073b,_0x5c0731=this[_0x19d0f5(0xdc)](_0x26538a,_0x55cf02);if(!_0x5c0731['trim']())return _0x13faa8||'';const _0x3043bd=_0x13faa8||'';if(_0x3043bd['includes'](_0x19d0f5(0xad)))return _0x3043bd[_0x19d0f5(0xe3)](/## AVAILABLE TOOLS[\s\S]*?(?=##|$)/,_0x5c0731+'\x0a');const _0x124baa='IMPORTANT:\x20when\x20asked\x20to\x20perform\x20an\x20action\x20or\x20operation,\x20use\x20each\x20response\x20to\x20invoke\x20a\x20tool\x20if\x20needed,\x20and\x20update\x20the\x20user\x20on\x20the\x20progress\x20(same\x20message).';return _0x3043bd+(_0x3043bd['endsWith']('\x0a')?'':'\x0a')+_0x5c0731+_0x124baa+'\x0a';}['getAvailableToolsForUI'](){const _0x3a3419=a0_0x56073b,_0x4f0d82=[];for(const [_0x3e85dd,_0x1d54bd]of this[_0x3a3419(0xb0)][_0x3a3419(0xd2)]()){const _0x300871=_0x1d54bd['getCapabilities'](),_0x4c5cd0=_0x1d54bd[_0x3a3419(0xa2)](),_0x988b12=_0x4c5cd0['split']('\x0a')['find'](_0x9c61f4=>_0x9c61f4['trim']()[_0x3a3419(0xd0)]>0x0)||'',_0x509142=_0x988b12[_0x3a3419(0xe3)](/^.*Tool:\s*/i,'')['replace'](/\s*-.*$/,'')['trim']();_0x4f0d82[_0x3a3419(0xbc)]({'id':_0x3e85dd,'name':_0x509142||_0x3e85dd[_0x3a3419(0xc2)](0x0)[_0x3a3419(0xc4)]()+_0x3e85dd[_0x3a3419(0xe4)](0x1),'description':_0x988b12,'category':this[_0x3a3419(0xed)](_0x3e85dd),'enabled':_0x300871['enabled'],'async':_0x300871[_0x3a3419(0xcf)],'requiresProject':_0x300871['requiresProject'],'className':_0x1d54bd[_0x3a3419(0xd9)][_0x3a3419(0x10c)]});}return _0x4f0d82['sort']((_0x521436,_0x1c069d)=>_0x521436['name'][_0x3a3419(0x101)](_0x1c069d[_0x3a3419(0x10c)]));}[a0_0x56073b(0xed)](_0x47fc46){const _0x27d959=a0_0x56073b,_0x91769e={'terminal':_0x27d959(0x10f),'filesystem':_0x27d959(0xf9),'web':'Automation','agentdelay':'Utility'};return _0x91769e[_0x47fc46]||'Other';}[a0_0x56073b(0x105)](){const _0x19aa2c=a0_0x56073b,_0x27e0b9=Array['from'](this[_0x19aa2c(0xb0)]['values']())['filter'](_0x17e270=>_0x17e270['isEnabled']),_0x36d553=Array['from'](this[_0x19aa2c(0xb0)]['values']())[_0x19aa2c(0x108)]((_0x49352d,_0x49a6c6)=>_0x49352d+_0x49a6c6[_0x19aa2c(0xe9)],0x0);return{'totalTools':this[_0x19aa2c(0xb0)][_0x19aa2c(0xea)],'enabledTools':_0x27e0b9['length'],'totalOperations':_0x36d553,'activeOperations':this['asyncOperations']['size']};}}export{BaseTool,ToolsRegistry};
|