@loxia-labs/loxia-autopilot-one 1.0.14 → 1.0.16

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.
Files changed (123) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +1 -1
  3. package/bin/loxia-terminal-v2.js +1 -1
  4. package/bin/loxia-terminal.js +1 -1
  5. package/bin/start-with-terminal.js +1 -1
  6. package/package.json +1 -1
  7. package/scripts/install-scanners.js +1 -1
  8. package/src/analyzers/CSSAnalyzer.js +1 -1
  9. package/src/analyzers/ConfigValidator.js +1 -1
  10. package/src/analyzers/ESLintAnalyzer.js +1 -1
  11. package/src/analyzers/JavaScriptAnalyzer.js +1 -1
  12. package/src/analyzers/PrettierFormatter.js +1 -1
  13. package/src/analyzers/PythonAnalyzer.js +1 -1
  14. package/src/analyzers/SecurityAnalyzer.js +1 -1
  15. package/src/analyzers/TypeScriptAnalyzer.js +1 -1
  16. package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
  17. package/src/analyzers/codeCloneDetector/detector.js +1 -1
  18. package/src/analyzers/codeCloneDetector/index.js +1 -1
  19. package/src/analyzers/codeCloneDetector/parser.js +1 -1
  20. package/src/analyzers/codeCloneDetector/reporter.js +1 -1
  21. package/src/analyzers/codeCloneDetector/scanner.js +1 -1
  22. package/src/core/agentPool.js +1 -1
  23. package/src/core/agentScheduler.js +1 -1
  24. package/src/core/contextManager.js +1 -1
  25. package/src/core/messageProcessor.js +1 -1
  26. package/src/core/orchestrator.js +1 -1
  27. package/src/core/stateManager.js +1 -1
  28. package/src/index.js +1 -1
  29. package/src/interfaces/cli.js +1 -1
  30. package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
  31. package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
  32. package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
  33. package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
  34. package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
  35. package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
  36. package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
  37. package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
  38. package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
  39. package/src/interfaces/terminal/api/apiClient.js +1 -1
  40. package/src/interfaces/terminal/api/messageRouter.js +1 -1
  41. package/src/interfaces/terminal/api/session.js +1 -1
  42. package/src/interfaces/terminal/api/websocket.js +1 -1
  43. package/src/interfaces/terminal/components/AgentCreator.js +1 -1
  44. package/src/interfaces/terminal/components/AgentEditor.js +1 -1
  45. package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
  46. package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
  47. package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
  48. package/src/interfaces/terminal/components/Header.js +1 -1
  49. package/src/interfaces/terminal/components/HelpPanel.js +1 -1
  50. package/src/interfaces/terminal/components/InputBox.js +1 -1
  51. package/src/interfaces/terminal/components/Layout.js +1 -1
  52. package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
  53. package/src/interfaces/terminal/components/MessageList.js +1 -1
  54. package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
  55. package/src/interfaces/terminal/components/SearchPanel.js +1 -1
  56. package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
  57. package/src/interfaces/terminal/components/StatusBar.js +1 -1
  58. package/src/interfaces/terminal/components/TextInput.js +1 -1
  59. package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
  60. package/src/interfaces/terminal/config/constants.js +1 -1
  61. package/src/interfaces/terminal/index.js +1 -1
  62. package/src/interfaces/terminal/state/useAgentControl.js +1 -1
  63. package/src/interfaces/terminal/state/useAgents.js +1 -1
  64. package/src/interfaces/terminal/state/useConnection.js +1 -1
  65. package/src/interfaces/terminal/state/useMessages.js +1 -1
  66. package/src/interfaces/terminal/state/useTools.js +1 -1
  67. package/src/interfaces/terminal/utils/debugLogger.js +1 -1
  68. package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
  69. package/src/interfaces/terminal/utils/theme.js +1 -1
  70. package/src/interfaces/webServer.js +1 -1
  71. package/src/modules/fileExplorer/controller.js +1 -1
  72. package/src/modules/fileExplorer/index.js +1 -1
  73. package/src/modules/fileExplorer/middleware.js +1 -1
  74. package/src/modules/fileExplorer/routes.js +1 -1
  75. package/src/services/agentActivityService.js +1 -1
  76. package/src/services/aiService.js +1 -1
  77. package/src/services/apiKeyManager.js +1 -1
  78. package/src/services/benchmarkService.js +1 -1
  79. package/src/services/budgetService.js +1 -1
  80. package/src/services/contextInjectionService.js +1 -1
  81. package/src/services/conversationCompactionService.js +1 -1
  82. package/src/services/errorHandler.js +1 -1
  83. package/src/services/fileAttachmentService.js +1 -1
  84. package/src/services/modelRouterService.js +1 -1
  85. package/src/services/modelsService.js +1 -1
  86. package/src/services/qualityInspector.js +1 -1
  87. package/src/services/tokenCountingService.js +1 -1
  88. package/src/tools/agentCommunicationTool.js +1 -1
  89. package/src/tools/agentDelayTool.js +1 -1
  90. package/src/tools/asyncToolManager.js +1 -1
  91. package/src/tools/baseTool.js +1 -1
  92. package/src/tools/browserTool.js +1 -1
  93. package/src/tools/cloneDetectionTool.js +1 -1
  94. package/src/tools/dependencyResolverTool.js +1 -1
  95. package/src/tools/fileContentReplaceTool.js +1 -1
  96. package/src/tools/fileSystemTool.js +1 -1
  97. package/src/tools/fileTreeTool.js +1 -1
  98. package/src/tools/imageTool.js +1 -1
  99. package/src/tools/importAnalyzerTool.js +1 -1
  100. package/src/tools/jobDoneTool.js +1 -1
  101. package/src/tools/seekTool.js +1 -1
  102. package/src/tools/staticAnalysisTool.js +1 -1
  103. package/src/tools/taskManagerTool.js +1 -1
  104. package/src/tools/terminalTool.js +1 -1
  105. package/src/tools/webTool.js +1 -1
  106. package/src/types/agent.js +1 -1
  107. package/src/types/contextReference.js +1 -1
  108. package/src/types/conversation.js +1 -1
  109. package/src/types/toolCommand.js +1 -1
  110. package/src/utilities/attachmentValidator.js +1 -1
  111. package/src/utilities/configManager.js +1 -1
  112. package/src/utilities/constants.js +1 -1
  113. package/src/utilities/directoryAccessManager.js +1 -1
  114. package/src/utilities/fileProcessor.js +1 -1
  115. package/src/utilities/logger.js +1 -1
  116. package/src/utilities/tagParser.js +1 -1
  117. package/src/utilities/toolConstants.js +1 -1
  118. package/src/utilities/userDataDir.js +1 -1
  119. package/web-ui/build/index.html +2 -2
  120. package/web-ui/build/static/index-DFmFvOoy.css +1 -0
  121. package/web-ui/build/static/index-DOk0l6Kf.js +348 -0
  122. package/web-ui/build/static/index-DXN850Y2.js +0 -400
  123. package/web-ui/build/static/index-an-YRzUX.css +0 -1
@@ -1 +1 @@
1
- const a0_0x4ea7e9=a0_0x3e37;(function(_0x20a910,_0x379003){const _0x5e1092=a0_0x3e37,_0x1b0467=_0x20a910();while(!![]){try{const _0x2ea1ff=parseInt(_0x5e1092(0x11a))/0x1+-parseInt(_0x5e1092(0x116))/0x2*(-parseInt(_0x5e1092(0x12b))/0x3)+-parseInt(_0x5e1092(0x102))/0x4+-parseInt(_0x5e1092(0x107))/0x5+parseInt(_0x5e1092(0x14d))/0x6+parseInt(_0x5e1092(0x106))/0x7*(parseInt(_0x5e1092(0x109))/0x8)+parseInt(_0x5e1092(0xf4))/0x9;if(_0x2ea1ff===_0x379003)break;else _0x1b0467['push'](_0x1b0467['shift']());}catch(_0x2e9d92){_0x1b0467['push'](_0x1b0467['shift']());}}}(a0_0x345c,0x19086));import{QUALITY_INSPECTOR_CONFIG,AGENT_STATUS,MESSAGE_ROLES}from'../utilities/constants.js';import{logger}from'../utilities/logger.js';function a0_0x345c(){const _0x421802=['AgfUzgXLugvYzM9YBwfUy2vjC3n1zq','Aw5JBhvKzxm','Dw5RBM93BG','BgvUz3rO','Aw50zxj2zw50Aw9UqNjLywTxywL0','CgvYzM9YBwfUy2vFB3b0Aw1PEMf0Aw9U','zgvSzxrL','uxvHBgL0EsbjBNnWzwn0B3iGC3rHCNrLza','Aw5MAw5PDgvxywL0Aw5N','sw50zxj2zw50Aw9Uihn1y2nLC3nMDwW','yNjLywTFCMvWzxrPDgLVBG','qwDLBNqGCMvZCg9UC2uGDgLTzsbPCYbKzwDYywrLza','CgvUzgLUzW','y2HLy2TfCNjVCKXVB3bZ','qwDLBNqGAxmGCMvWzwf0Aw5NihrOzsbZyw1LignVBw1HBMrZ','zMLSDgvY','uxvHBgL0EsbjBNnWzwn0B3iGAxmGywXYzwfKEsbYDw5UAw5N','z2v0','mtyXndqYr3Put1Ll','AxnsDw5UAw5N','AgLNAf9LCNjVCL9YyxrL','zgv0zwn0ugvYzM9YBwfUy2vjC3n1zq','rMfPBgvKihrVihjLy29YzcbHy3rPDML0Eq','Cgf0DgvYBNm','B3jJAgvZDhjHDg9Y','BwvZC2fNzunVDw50','C3vJy2vZCW','y2HLy2TjBMzPBML0zvDHAxrPBMC','yxzLCMfNzvjLC3bVBNnLvgLTzq','qwn0AxzPDhKGCMvJB3jKzwq','igvYCM9YCW','zxjYB3jFBg9VChm','nZKYnJu2rgLfC3jK','C2v0','C2v2zxjPDhK','DgLTzw91Da','mta2mJztvw9tugq','ota4mJC1zNrMvhvJ','CMvZB3vYy2vFzxHOyxvZDgLVBG','mtq0z21YBgrf','qwDLBNqGAxmGzxHWzxjPzw5JAw5NihjLy3vYCMLUzYa','Aw5MBW','zxjYB3jZ','D2fYBG','BwvZC2fNzq','yNjLywTFzxjYB3jFBg9VCa','Bw9UAxrVCMLUz0rHDge','C3rVCa','z2vUzxjHDgvfCNjVCKD1AwrHBMnL','C3vJy2vZC2z1BeLUDgvYDMvUDgLVBNm','zxzLCNK','CMvWzxrPDgL2zv9JB21Tyw5KCW','ofvbzffZvq','D2fPDgLUzW','y29UzMLN','ywDLBNrZtw9UAxrVCMvK','mtq5mJy4swDpq3fL','qwDLBNqGAgfZigHPz2GGzxjYB3iGCMf0zq','CgvYzM9YBwfUy2vnzxrYAwnZ','C2vUze1LC3nHz2u','CgvYzM9YBvf1ywXPDhLdAgvJAW','Dg90ywXjBNrLCNzLBNrPB25Z','Aw5MAw5PDgvFD2fPDgLUzW','y2XLyw51Ce9SzerHDge','yNjLywTFD2fPDa','u1rvq0TFuefuvevstLm','Cgf1C2vFzM9Yx3jLC291CMnLCW','DgLTzxn0yw1W','CMvJB3jKqwn0AxzPDhK','Dg90ywXnzxnZywDLCW','BM93','Cgf0DgvYBLr5Cgu','Aw50zxj2zw50Aw9UqNjLywTszxbLDgL0Aw9U','mtmWnZa3uKfKD3fS','AgfUzgXLu3r1y2Tbz2vUDa','zgv0zwn0u3r1y2Tqyxr0zxjU','C2L6zq','y2HLy2TszxnVDxjJzuv4Agf1C3rPB24','AgfZ','sw50zxj2zw50Aw9UigzHAwXLza','ihrPBwvZks4GugXLyxnLihjLDMLLDYb0AguGzxjYB3iGzgv0ywLSCYbHBMqGywrQDxn0ihLVDxiGyxbWCM9Hy2GGywnJB3jKAw5NBhKU','Bwv0CMLJCW','q09pterpv05Fuevssu9e','y2HLy2TjBNrLCNzHBa','C3r1y2TdB3vUDa','Cgf1C2vbz2vUDa','zxjYB3i','sw50zxj2zw50Aw9UihnRAxbWzwqGzhvLihrVignVB2XKB3DU','y2HLy2TszxbLDgL0AxzLq29TBwfUzhm','DxbKyxrLugvYzM9YBwfUy2vnzxrYAwnZ','u1Ltvevn','CMvZCg9UC2vuAw1L','zgv0zwn0rxjYB3jqyxr0zxjU','zgvIDwC','BwfW','BgfZDefJDgL2Axr5','ywn0AxzPDhLiAxn0B3j5','AgLNAa','zgvZy3jPChrPB24','Cgf0DgvYBNnezxrLy3rLza','qwDLBNqGAxmGC3r1y2SGAw4Gyw4GzxjYB3iGBg9VCa','rMfPBgvKihrVigHHBMrSzsbWzxjMB3jTyw5JzsbPC3n1zq','zxjYB3jsyxrL','y2HLy2S','y29UDgvUDa','ChvZAa','z2vUzxjHDgvpChrPBwL6yxrPB25tDwDNzxn0Aw9U','nJGXmJGYBM1IrKHr','rMfPBgvKihrVigHHBMrSzsbZDhvJAYbHz2vUDa','Aw50zxj2zw50Aw9Ur2vUzxjPyW','DgHYzxnOB2XK','DhLWzq','C2XVD19YzxnWB25Zzq','q0Hfq0TFsu5urvjwquXFtuvtu0fhrvm'];a0_0x345c=function(){return _0x421802;};return a0_0x345c();}export class QualityInspector{constructor(_0x5ad097){const _0x1300a7=a0_0x3e37;this[_0x1300a7(0xfa)]=_0x5ad097,this[_0x1300a7(0x118)]=QUALITY_INSPECTOR_CONFIG,this[_0x1300a7(0x110)]=new Map(),this['interventionHistory']=new Map(),this['isRunning']=![],this['checkInterval']=null,this['patterns']={'repetitiveCommands':new PatternDetector(_0x1300a7(0x115),0x5,0x493e0),'infiniteWaiting':new PatternDetector('infinite_waiting',0x3,0x927c0),'errorLoops':new PatternDetector(_0x1300a7(0x101),0x4,0x2bf20),'resourceExhaustion':new PatternDetector('resource_exhaustion',0x2,0x1d4c0)},this[_0x1300a7(0x133)]={'totalInterventions':0x0,'successfulInterventions':0x0,'falsePositives':0x0,'agentsMonitored':new Set(),'patternsDetected':new Map()};}['start'](){const _0x55fed8=a0_0x3e37;if(this['isRunning']){logger['warn'](_0x55fed8(0xf2));return;}this['isRunning']=!![],this[_0x55fed8(0x135)]=setInterval(()=>{const _0xf26263=_0x55fed8;this[_0xf26263(0x11e)]();},this['config'][_0x55fed8(0x153)]*0x3e8),logger[_0x55fed8(0x10b)](_0x55fed8(0x15b),{'checkInterval':this[_0x55fed8(0x118)]['CHECK_INTERVAL_MESSAGES'],'stuckPatterns':this[_0x55fed8(0x118)][_0x55fed8(0x123)],'interventionThreshold':this['config']['INTERVENTION_THRESHOLD']});}[a0_0x4ea7e9(0x111)](){const _0x262ae6=a0_0x4ea7e9;if(!this['isRunning'])return;this['isRunning']=![],this[_0x262ae6(0x135)]&&(clearInterval(this['checkInterval']),this[_0x262ae6(0x135)]=null),logger[_0x262ae6(0x10b)]('Quality\x20Inspector\x20stopped',{'totalInterventions':this['metrics']['totalInterventions'],'successfulInterventions':this['metrics'][_0x262ae6(0x113)],'agentsMonitored':this['metrics']['agentsMonitored'][_0x262ae6(0x12e)]});}[a0_0x4ea7e9(0x126)](_0x2d4126,_0x48af8c){const _0xe6d13b=a0_0x4ea7e9;if(!this[_0xe6d13b(0xf5)])return;try{!this['monitoringData'][_0xe6d13b(0x130)](_0x2d4126)&&(this['monitoringData'][_0xe6d13b(0x103)](_0x2d4126,{'activityHistory':[],'messageCount':0x0,'lastActivity':Date[_0xe6d13b(0x128)](),'currentPattern':null,'stuckCount':0x0,'errors':[],'performanceMetrics':{'averageResponseTime':0x0,'totalMessages':0x0,'errorRate':0x0}}),this['metrics']['agentsMonitored']['add'](_0x2d4126));const _0x13dede=this['monitoringData']['get'](_0x2d4126);_0x13dede['activityHistory'][_0xe6d13b(0x14b)]({..._0x48af8c,'timestamp':Date[_0xe6d13b(0x128)]()}),_0x13dede['activityHistory']['length']>0x64&&(_0x13dede['activityHistory']=_0x13dede[_0xe6d13b(0x142)]['slice'](-0x64)),_0x13dede['lastActivity']=Date['now'](),_0x13dede[_0xe6d13b(0xfb)]++,this['updatePerformanceMetrics'](_0x2d4126,_0x48af8c),this['detectPatterns'](_0x2d4126,_0x48af8c),logger[_0xe6d13b(0x13f)](_0xe6d13b(0xff),{'agentId':_0x2d4126,'activityType':_0x48af8c[_0xe6d13b(0x151)],'messageCount':_0x13dede['messageCount']});}catch(_0x2acdb4){logger['error'](_0xe6d13b(0xf8),{'error':_0x2acdb4['message'],'agentId':_0x2d4126});}}async[a0_0x4ea7e9(0x11e)](){const _0x2df10e=a0_0x4ea7e9;try{logger[_0x2df10e(0x13f)]('Performing\x20quality\x20check',{'agentsMonitored':this[_0x2df10e(0x133)][_0x2df10e(0x119)][_0x2df10e(0x12e)]});for(const [_0x35cfb3,_0x5d3f46]of this[_0x2df10e(0x110)]){await this['checkAgentQuality'](_0x35cfb3,_0x5d3f46);}this['cleanupOldData']();}catch(_0x2c17c9){logger[_0x2df10e(0x138)]('Quality\x20check\x20failed',{'error':_0x2c17c9['message']});}}async['checkAgentQuality'](_0xf338d2,_0x11d859){const _0x2aeba1=a0_0x4ea7e9;try{const _0x44dfe5=this[_0x2aeba1(0x12d)](_0xf338d2,_0x11d859);if(_0x44dfe5){await this['handleStuckAgent'](_0xf338d2,_0x44dfe5);return;}const _0x3a41dc=this['detectPerformanceIssue'](_0xf338d2,_0x11d859);if(_0x3a41dc){await this[_0x2aeba1(0x154)](_0xf338d2,_0x3a41dc);return;}const _0x3e4a57=this[_0x2aeba1(0x13e)](_0xf338d2,_0x11d859);if(_0x3e4a57){await this['handleErrorPattern'](_0xf338d2,_0x3e4a57);return;}_0x11d859[_0x2aeba1(0x136)]>0x0&&(_0x11d859[_0x2aeba1(0x136)]=0x0,logger[_0x2aeba1(0x13f)]('Agent\x20recovered',{'agentId':_0xf338d2}));}catch(_0x5c748d){logger['error']('Agent\x20quality\x20check\x20failed',{'error':_0x5c748d['message'],'agentId':_0xf338d2});}}['detectStuckPattern'](_0x3aed3c,_0x4c9b1c){const _0x47126c=a0_0x4ea7e9,_0x1abdc5=Date[_0x47126c(0x128)](),_0x5e9567=_0x4c9b1c[_0x47126c(0x142)]['filter'](_0x1ce591=>_0x1abdc5-_0x1ce591[_0x47126c(0x125)]<0x927c0);if(this[_0x47126c(0xf9)]['repetitiveCommands']['check'](_0x5e9567))return{'type':'repetitive_commands','description':_0x47126c(0xf0),'severity':'medium','activities':_0x5e9567};if(this[_0x47126c(0xf9)][_0x47126c(0x15c)][_0x47126c(0x149)](_0x5e9567))return{'type':'infinite_waiting','description':'Agent\x20appears\x20to\x20be\x20waiting\x20indefinitely','severity':'high','activities':_0x5e9567};if(this['patterns']['errorLoops'][_0x47126c(0x149)](_0x5e9567))return{'type':'error_loops','description':_0x47126c(0x146),'severity':'high','activities':_0x5e9567};if(this[_0x47126c(0xf9)]['resourceExhaustion'][_0x47126c(0x149)](_0x5e9567))return{'type':'resource_exhaustion','description':'Agent\x20is\x20experiencing\x20resource\x20exhaustion','severity':'critical','activities':_0x5e9567};return null;}[a0_0x4ea7e9(0xf7)](_0x5220eb,_0x37a578){const _0x2a5386=a0_0x4ea7e9,_0x53ab14=_0x37a578[_0x2a5386(0x11c)];if(_0x53ab14[_0x2a5386(0xfe)]>0x7530)return{'type':_0x2a5386(0x152),'description':_0x2a5386(0x15f),'severity':'medium','metrics':{'averageResponseTime':_0x53ab14['averageResponseTime']}};if(_0x53ab14['errorRate']>0.5)return{'type':'high_error_rate','description':_0x2a5386(0x11b),'severity':_0x2a5386(0x143),'metrics':{'errorRate':_0x53ab14['errorRate']}};return null;}['detectErrorPattern'](_0x4fcf9e,_0x2857f1){const _0x51f2e3=a0_0x4ea7e9,_0x2beb16=_0x2857f1['errors'][_0x51f2e3(0xf1)](_0x1422cb=>Date['now']()-_0x1422cb['timestamp']<0x493e0);if(_0x2beb16['length']>=0x3){const _0x13831b=_0x2beb16['map'](_0x50cffb=>_0x50cffb[_0x51f2e3(0x151)]),_0xf9c1c0=[...new Set(_0x13831b)];if(_0xf9c1c0[_0x51f2e3(0x157)]===0x1)return{'type':'recurring_error','description':_0x51f2e3(0x10a)+_0xf9c1c0[0x0]+_0x51f2e3(0x100),'severity':'high','errorType':_0xf9c1c0[0x0],'count':_0x2beb16['length']};}return null;}async[a0_0x4ea7e9(0x12c)](_0x58c3cc,_0x41c389){const _0x5c7d0b=a0_0x4ea7e9;try{const _0x1f72db=this['monitoringData']['get'](_0x58c3cc);_0x1f72db['stuckCount']++,!this[_0x5c7d0b(0x133)][_0x5c7d0b(0x145)]['has'](_0x41c389['type'])&&this['metrics']['patternsDetected']['set'](_0x41c389['type'],0x0),this[_0x5c7d0b(0x133)]['patternsDetected']['set'](_0x41c389['type'],this[_0x5c7d0b(0x133)]['patternsDetected'][_0x5c7d0b(0xf3)](_0x41c389['type'])+0x1),logger[_0x5c7d0b(0x10d)]('Stuck\x20agent\x20detected',{'agentId':_0x58c3cc,'pattern':_0x41c389['type'],'severity':_0x41c389[_0x5c7d0b(0x104)],'stuckCount':_0x1f72db[_0x5c7d0b(0x136)]}),_0x1f72db[_0x5c7d0b(0x136)]>=this['config']['INTERVENTION_THRESHOLD']&&await this['performIntervention'](_0x58c3cc,_0x41c389);}catch(_0x2d7ba6){logger['error'](_0x5c7d0b(0x14e),{'error':_0x2d7ba6[_0x5c7d0b(0x10e)],'agentId':_0x58c3cc});}}async[a0_0x4ea7e9(0x154)](_0x5eb5bf,_0x39a6d2){const _0x5993f0=a0_0x4ea7e9;try{logger[_0x5993f0(0x10d)]('Performance\x20issue\x20detected',{'agentId':_0x5eb5bf,'issueType':_0x39a6d2['type'],'severity':_0x39a6d2['severity'],'metrics':_0x39a6d2['metrics']});const _0x474275=this[_0x5993f0(0x14c)](_0x39a6d2);_0x474275&&await this[_0x5993f0(0xfa)]['sendSystemMessage'](_0x5eb5bf,{'type':_0x5993f0(0x159),'content':_0x474275,'priority':'medium'});}catch(_0x323db9){logger[_0x5993f0(0x138)](_0x5993f0(0x147),{'error':_0x323db9['message'],'agentId':_0x5eb5bf});}}async['handleErrorPattern'](_0x1a0053,_0x4886d9){const _0x2b2eb9=a0_0x4ea7e9;try{logger[_0x2b2eb9(0x10d)]('Error\x20pattern\x20detected',{'agentId':_0x1a0053,'patternType':_0x4886d9['type'],'errorType':_0x4886d9['errorType'],'count':_0x4886d9['count']});const _0x1f0938=this['generateErrorGuidance'](_0x4886d9);_0x1f0938&&await this['orchestrator']['sendSystemMessage'](_0x1a0053,{'type':'error_guidance','content':_0x1f0938,'priority':'high'});}catch(_0x39421b){logger[_0x2b2eb9(0x138)]('Failed\x20to\x20handle\x20error\x20pattern',{'error':_0x39421b['message'],'agentId':_0x1a0053});}}async['performIntervention'](_0x1d268e,_0x4d7b51){const _0xc17745=a0_0x4ea7e9;try{this['metrics'][_0xc17745(0x11f)]++;const _0xca402d=this['interventionHistory']['get'](_0x1d268e),_0x7c6577=Date['now']();if(_0xca402d&&_0x7c6577-_0xca402d[_0xc17745(0x125)]<this[_0xc17745(0x118)][_0xc17745(0x134)]){logger[_0xc17745(0x13f)](_0xc17745(0x139),{'agentId':_0x1d268e});return;}const _0x5d49ed={'timestamp':_0x7c6577,'pattern':_0x4d7b51['type'],'severity':_0x4d7b51['severity'],'action':null,'success':![]};let _0x223468;switch(_0x4d7b51[_0xc17745(0x151)]){case _0xc17745(0x115):_0x223468=await this['interventionBreakRepetition'](_0x1d268e);break;case'infinite_waiting':_0x223468=await this[_0xc17745(0x158)](_0x1d268e);break;case _0xc17745(0x101):_0x223468=await this['interventionBreakErrorLoop'](_0x1d268e);break;case'resource_exhaustion':_0x223468=await this['interventionHandleResourceExhaustion'](_0x1d268e);break;default:_0x223468=await this['interventionGeneric'](_0x1d268e,_0x4d7b51);}_0x5d49ed['action']=_0x223468['type'],_0x5d49ed[_0xc17745(0xfc)]=_0x223468[_0xc17745(0xfc)],_0x223468[_0xc17745(0xfc)]?(this[_0xc17745(0x133)][_0xc17745(0x113)]++,logger['info'](_0xc17745(0x15d),{'agentId':_0x1d268e,'pattern':_0x4d7b51[_0xc17745(0x151)],'action':_0x223468[_0xc17745(0x151)]})):logger[_0xc17745(0x10d)](_0xc17745(0x131),{'agentId':_0x1d268e,'pattern':_0x4d7b51[_0xc17745(0x151)],'action':_0x223468['type'],'reason':_0x223468['reason']}),this['interventionHistory'][_0xc17745(0x103)](_0x1d268e,_0x5d49ed);}catch(_0x17b705){logger['error']('Intervention\x20failed',{'error':_0x17b705[_0xc17745(0x10e)],'agentId':_0x1d268e});}}async[a0_0x4ea7e9(0x12a)](_0x576f5e){const _0x3f7438=a0_0x4ea7e9;try{const _0x494eab={'role':MESSAGE_ROLES['SYSTEM'],'content':'Quality\x20Inspector\x20detected\x20repetitive\x20behavior.\x20Please\x20try\x20a\x20different\x20approach\x20or\x20ask\x20for\x20help\x20if\x20you\x20are\x20stuck.'};return await this['orchestrator'][_0x3f7438(0x11d)](_0x576f5e,_0x494eab),{'type':'break_repetition','success':!![]};}catch(_0x203919){return{'type':_0x3f7438(0x15e),'success':![],'reason':_0x203919[_0x3f7438(0x10e)]};}}async['interventionBreakWait'](_0x177574){const _0x17f50d=a0_0x4ea7e9;try{const _0x3953f9={'role':MESSAGE_ROLES[_0x17f50d(0x13c)],'content':'Quality\x20Inspector\x20detected\x20that\x20you\x20may\x20be\x20waiting\x20indefinitely.\x20Please\x20proceed\x20with\x20the\x20next\x20step\x20or\x20request\x20assistance.'};return await this['orchestrator'][_0x17f50d(0x11d)](_0x177574,_0x3953f9),{'type':'break_wait','success':!![]};}catch(_0x4aab44){return{'type':_0x17f50d(0x122),'success':![],'reason':_0x4aab44[_0x17f50d(0x10e)]};}}async['interventionBreakErrorLoop'](_0x378043){const _0x4704e4=a0_0x4ea7e9;try{const _0x140294={'role':MESSAGE_ROLES[_0x4704e4(0x13c)],'content':'Quality\x20Inspector\x20detected\x20repeated\x20errors.\x20Please\x20review\x20your\x20approach\x20and\x20consider\x20alternative\x20solutions.'};return await this[_0x4704e4(0xfa)][_0x4704e4(0x11d)](_0x378043,_0x140294),{'type':_0x4704e4(0x10f),'success':!![]};}catch(_0x285dd0){return{'type':'break_error_loop','success':![],'reason':_0x285dd0[_0x4704e4(0x10e)]};}}async['interventionHandleResourceExhaustion'](_0x518f40){const _0x34f295=a0_0x4ea7e9;try{return await this[_0x34f295(0xfa)][_0x34f295(0x137)](_0x518f40,0x3c,'Resource\x20exhaustion\x20detected'),{'type':_0x34f295(0x124),'success':!![]};}catch(_0x5c0534){return{'type':_0x34f295(0x124),'success':![],'reason':_0x5c0534[_0x34f295(0x10e)]};}}async[a0_0x4ea7e9(0x14f)](_0x5cc8e6,_0x4013e6){const _0x38d113=a0_0x4ea7e9;try{const _0x2bcc5e={'role':MESSAGE_ROLES[_0x38d113(0x13c)],'content':'Quality\x20Inspector\x20detected\x20'+_0x4013e6[_0x38d113(0x144)]+'.\x20Please\x20review\x20your\x20current\x20approach.'};return await this[_0x38d113(0xfa)][_0x38d113(0x11d)](_0x5cc8e6,_0x2bcc5e),{'type':'generic_guidance','success':!![]};}catch(_0xcf87b8){return{'type':'generic_guidance','success':![],'reason':_0xcf87b8['message']};}}[a0_0x4ea7e9(0x14c)](_0x33ed76){const _0x1b7108=a0_0x4ea7e9;switch(_0x33ed76['type']){case'slow_response':return'Your\x20response\x20time\x20is\x20slower\x20than\x20usual.\x20Consider\x20breaking\x20down\x20complex\x20tasks\x20into\x20smaller\x20steps.';case _0x1b7108(0xf6):return'You\x20are\x20experiencing\x20frequent\x20errors.\x20Please\x20review\x20your\x20approach\x20and\x20verify\x20inputs\x20before\x20proceeding.';default:return'Performance\x20optimization\x20suggested.\x20Please\x20review\x20your\x20current\x20approach.';}}[a0_0x4ea7e9(0x112)](_0x2eac28){const _0x27d89a=a0_0x4ea7e9;return'Recurring\x20'+_0x2eac28['errorType']+'\x20errors\x20detected\x20('+_0x2eac28['count']+_0x27d89a(0x132);}[a0_0x4ea7e9(0x13b)](_0x4e9c75,_0x1ea989){const _0x2cacd5=a0_0x4ea7e9,_0x554135=this[_0x2cacd5(0x110)][_0x2cacd5(0xf3)](_0x4e9c75),_0x5e40d3=_0x554135['performanceMetrics'];if(_0x1ea989['responseTime']){const _0x4ff261=_0x5e40d3[_0x2cacd5(0xfe)]*_0x5e40d3[_0x2cacd5(0x127)]+_0x1ea989[_0x2cacd5(0x13d)];_0x5e40d3[_0x2cacd5(0x127)]++,_0x5e40d3['averageResponseTime']=_0x4ff261/_0x5e40d3[_0x2cacd5(0x127)];}if(_0x1ea989['error']){_0x554135['errors'][_0x2cacd5(0x14b)]({'type':_0x1ea989['error'][_0x2cacd5(0x151)]||_0x2cacd5(0x156),'message':_0x1ea989[_0x2cacd5(0x138)][_0x2cacd5(0x10e)],'timestamp':Date[_0x2cacd5(0x128)]()}),_0x554135['errors']=_0x554135[_0x2cacd5(0x10c)]['filter'](_0x5b47b3=>Date['now']()-_0x5b47b3[_0x2cacd5(0x125)]<0x36ee80);const _0x3ad03a=_0x554135[_0x2cacd5(0x142)]['length'],_0x2d5fed=_0x554135[_0x2cacd5(0x10c)]['length'];_0x5e40d3[_0x2cacd5(0x148)]=_0x3ad03a>0x0?_0x2d5fed/_0x3ad03a:0x0;}}['detectPatterns'](_0x510607,_0x3f3406){}['getMetrics'](){const _0x5a0cd1=a0_0x4ea7e9;return{...this[_0x5a0cd1(0x133)],'agentsMonitored':this['metrics']['agentsMonitored']['size'],'patternsDetected':Object['fromEntries'](this['metrics']['patternsDetected']),'interventionSuccessRate':this[_0x5a0cd1(0x133)][_0x5a0cd1(0x11f)]>0x0?this['metrics'][_0x5a0cd1(0x113)]/this['metrics']['totalInterventions']:0x0,'isRunning':this['isRunning']};}['getAgentReport'](_0x3df564){const _0x192410=a0_0x4ea7e9,_0x19b064=this[_0x192410(0x110)]['get'](_0x3df564);if(!_0x19b064)return null;const _0x161200=Date[_0x192410(0x128)](),_0x5b4f84=_0x19b064[_0x192410(0x142)][_0x192410(0xf1)](_0x4edd00=>_0x161200-_0x4edd00[_0x192410(0x125)]<0x36ee80);return{'agentId':_0x3df564,'messageCount':_0x19b064['messageCount'],'lastActivity':_0x19b064['lastActivity'],'stuckCount':_0x19b064[_0x192410(0x136)],'recentActivityCount':_0x5b4f84[_0x192410(0x157)],'performanceMetrics':{..._0x19b064['performanceMetrics']},'errorCount':_0x19b064[_0x192410(0x10c)]['length'],'interventions':this['interventionHistory']['get'](_0x3df564)||null};}[a0_0x4ea7e9(0x121)](){const _0x5184d0=a0_0x4ea7e9,_0x1a1a5c=Date[_0x5184d0(0x128)](),_0x245cce=0x5265c00;for(const [_0x29ef4c,_0x95f986]of this['monitoringData']){_0x95f986[_0x5184d0(0x142)]=_0x95f986[_0x5184d0(0x142)]['filter'](_0x235131=>_0x1a1a5c-_0x235131[_0x5184d0(0x125)]<_0x245cce),_0x95f986['errors']=_0x95f986[_0x5184d0(0x10c)]['filter'](_0x39c2c2=>_0x1a1a5c-_0x39c2c2[_0x5184d0(0x125)]<_0x245cce),_0x1a1a5c-_0x95f986[_0x5184d0(0x141)]>_0x245cce&&(this[_0x5184d0(0x110)][_0x5184d0(0x15a)](_0x29ef4c),this[_0x5184d0(0x133)]['agentsMonitored']['delete'](_0x29ef4c));}}}class PatternDetector{constructor(_0x213055,_0x5e457f,_0x555193){const _0x5ac46a=a0_0x4ea7e9;this[_0x5ac46a(0x129)]=_0x213055,this[_0x5ac46a(0x150)]=_0x5e457f,this['timeWindow']=_0x555193;}['check'](_0x49e157){const _0xc2611=a0_0x4ea7e9,_0x5a7271=Date['now'](),_0x2beb15=_0x49e157[_0xc2611(0xf1)](_0x144383=>_0x5a7271-_0x144383['timestamp']<this['timeWindow']);switch(this[_0xc2611(0x129)]){case _0xc2611(0x115):return this[_0xc2611(0x13a)](_0x2beb15);case _0xc2611(0x120):return this[_0xc2611(0xfd)](_0x2beb15);case'error_loops':return this['checkErrorLoops'](_0x2beb15);case _0xc2611(0x108):return this[_0xc2611(0x12f)](_0x2beb15);default:return![];}}[a0_0x4ea7e9(0x13a)](_0x3304b3){const _0x3d136f=a0_0x4ea7e9;if(_0x3304b3['length']<this[_0x3d136f(0x150)])return![];const _0x2e976d=_0x3304b3['filter'](_0x6d6328=>_0x6d6328['type']==='command')[_0x3d136f(0x140)](_0x459cf0=>_0x459cf0[_0x3d136f(0x14a)])['slice'](-this[_0x3d136f(0x150)]);return _0x2e976d['length']>=this[_0x3d136f(0x150)]&&_0x2e976d[_0x3d136f(0x114)](_0x5d1878=>_0x5d1878===_0x2e976d[0x0]);}[a0_0x4ea7e9(0xfd)](_0x18e348){const _0x5b1253=a0_0x4ea7e9;if(_0x18e348[_0x5b1253(0x157)]<this[_0x5b1253(0x150)])return![];const _0x2902ee=_0x18e348['filter'](_0x2235e5=>_0x2235e5['type']==='waiting'||_0x2235e5['content']?.['includes'](_0x5b1253(0x117))||_0x2235e5[_0x5b1253(0x14a)]?.['includes'](_0x5b1253(0x160)));return _0x2902ee['length']>=this[_0x5b1253(0x150)];}[a0_0x4ea7e9(0xef)](_0x29a17e){const _0x2adb6a=a0_0x4ea7e9;if(_0x29a17e['length']<this[_0x2adb6a(0x150)])return![];const _0x7e9c6a=_0x29a17e['filter'](_0xfa3ec8=>_0xfa3ec8['error']||_0xfa3ec8[_0x2adb6a(0x151)]===_0x2adb6a(0x138));return _0x7e9c6a['length']>=this['threshold'];}['checkResourceExhaustion'](_0x15ace7){const _0x3b8a40=a0_0x4ea7e9;if(_0x15ace7[_0x3b8a40(0x157)]<this[_0x3b8a40(0x150)])return![];const _0x256530=_0x15ace7[_0x3b8a40(0xf1)](_0x1c4c7c=>_0x1c4c7c['error']?.['type']==='resource_exhaustion'||_0x1c4c7c[_0x3b8a40(0x14a)]?.['includes']('memory')||_0x1c4c7c[_0x3b8a40(0x14a)]?.[_0x3b8a40(0x155)](_0x3b8a40(0x105))||_0x1c4c7c[_0x3b8a40(0x14a)]?.[_0x3b8a40(0x155)]('limit\x20exceeded'));return _0x256530['length']>=this[_0x3b8a40(0x150)];}}function a0_0x3e37(_0x1044a0,_0xb6adbf){_0x1044a0=_0x1044a0-0xef;const _0x345c17=a0_0x345c();let _0x3e3782=_0x345c17[_0x1044a0];if(a0_0x3e37['qywJSw']===undefined){var _0xd7edc3=function(_0xef9893){const _0x15e72a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ad097='',_0x2d4126='';for(let _0x48af8c=0x0,_0x13dede,_0x2acdb4,_0x35cfb3=0x0;_0x2acdb4=_0xef9893['charAt'](_0x35cfb3++);~_0x2acdb4&&(_0x13dede=_0x48af8c%0x4?_0x13dede*0x40+_0x2acdb4:_0x2acdb4,_0x48af8c++%0x4)?_0x5ad097+=String['fromCharCode'](0xff&_0x13dede>>(-0x2*_0x48af8c&0x6)):0x0){_0x2acdb4=_0x15e72a['indexOf'](_0x2acdb4);}for(let _0x5d3f46=0x0,_0x2c17c9=_0x5ad097['length'];_0x5d3f46<_0x2c17c9;_0x5d3f46++){_0x2d4126+='%'+('00'+_0x5ad097['charCodeAt'](_0x5d3f46)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2d4126);};a0_0x3e37['AOmrwf']=_0xd7edc3,a0_0x3e37['ZNGgAJ']={},a0_0x3e37['qywJSw']=!![];}const _0x44748d=_0x345c17[0x0],_0xa6185e=_0x1044a0+_0x44748d,_0x469b92=a0_0x3e37['ZNGgAJ'][_0xa6185e];return!_0x469b92?(_0x3e3782=a0_0x3e37['AOmrwf'](_0x3e3782),a0_0x3e37['ZNGgAJ'][_0xa6185e]=_0x3e3782):_0x3e3782=_0x469b92,_0x3e3782;}export default QualityInspector;
1
+ function a0_0x413c(){const _0xc388ab=['AgLNAa','CMvWzxrPDgL2zunVBw1HBMrZ','ugvYzM9YBwfUy2uGB3b0Aw1PEMf0Aw9Uihn1z2DLC3rLzc4GugXLyxnLihjLDMLLDYb5B3vYign1CNjLBNqGyxbWCM9Hy2GU','uxvHBgL0EsbjBNnWzwn0B3iGAxmGywXYzwfKEsbYDw5UAw5N','C3r1y2TdB3vUDa','zgvZy3jPChrPB24','C2vUzfn5C3rLBu1LC3nHz2u','ww91CIbYzxnWB25Zzsb0Aw1LigLZihnSB3DLCIb0AgfUihvZDwfSlIbdB25ZAwrLCIbICMvHA2LUzYbKB3DUignVBxbSzxGGDgfZA3mGAw50BYbZBwfSBgvYihn0zxbZlG','y29UzMLN','Aw50zxj2zw50Aw9UqNjLywTfCNjVCKXVB3a','lIbqBgvHC2uGCMv2Awv3ihLVDxiGy3vYCMvUDcbHChbYB2fJAc4','Cgf0DgvYBNm','su5urvjwru5usu9ox1riuKvtse9mra','D2fYBG','y2HLy2TjBNrLCNzHBa','C3vJy2vZCW','CgvUzgLUzW','qwDLBNqGyxbWzwfYCYb0BYbIzsb3ywL0Aw5NigLUzgvMAw5PDgvSEq','u3r1y2SGywDLBNqGzgv0zwn0zwq','y29UDgvUDa','ww91igfYzsbLEhbLCMLLBMnPBMCGzNjLCxvLBNqGzxjYB3jZlIbqBgvHC2uGCMv2Awv3ihLVDxiGyxbWCM9Hy2GGyw5KihzLCMLMEsbPBNb1DhmGyMvMB3jLihbYB2nLzwrPBMCU','ihrPBwvZks4GugXLyxnLihjLDMLLDYb0AguGzxjYB3iGzgv0ywLSCYbHBMqGywrQDxn0ihLVDxiGyxbWCM9Hy2GGywnJB3jKAw5NBhKU','B3jJAgvZDhjHDg9Y','AgfUzgXLu3r1y2Tbz2vUDa','z2vUzxjHDgvpChrPBwL6yxrPB25tDwDNzxn0Aw9U','DgLTzvDPBMrVDW','ugvYzM9YBwLUzYbXDwfSAxr5ignOzwnR','C2v0','AgLNAf9LCNjVCL9YyxrL','y3jPDgLJywW','qwDLBNqGAgfZigHPz2GGzxjYB3iGCMf0zq','Dg90ywXjBNrLCNzLBNrPB25Z','AxnsDw5UAw5N','Bwv0CMLJCW','BwvTB3j5','z2vUzxjPy19NDwLKyw5Jzq','mtqWmZG5Cxztr1nl','DgHYzxnOB2XK','q0Hfq0TFsu5urvjwquXFtuvtu0fhrvm','C3rVCa','ntC4nJe4mwjxDe13rW','Bw9UAxrVCMLUz0rHDge','C2vUze1LC3nHz2u','yNjLywTFD2fPDa','zxzLCNK','BM93','zxjYB3jsyxrL','CMvZCg9UC2vuAw1L','y2HLy2Tbz2vUDff1ywXPDhK','C2v2zxjPDhK','zgvIDwC','Cgf1C2vFzM9Yx3jLC291CMnLCW','y2HLy2TfCNjVCKXVB3bZ','sw50zxj2zw50Aw9Uihn1y2nLC3nMDwW','zgv0zwn0ugvYzM9YBwfUy2vjC3n1zq','y2XLyw51Ce9SzerHDge','C3rHCNq','Aw50zxj2zw50Aw9UsgfUzgXLuMvZB3vYy2vfEgHHDxn0Aw9U','Cgf0DgvYBNnezxrLy3rLza','rxjYB3iGCgf0DgvYBIbKzxrLy3rLza','BwvZC2fNzq','CgvYzM9YBwfUy2vnzxrYAwnZ','DhLWzq','qwDLBNqGAxmGzxHWzxjPzw5JAw5NihjLC291CMnLigv4Agf1C3rPB24','mZq1rgjSB2Hn','AgfZ','BgfZDefJDgL2Axr5','zxjYB3jZ','Aw50zxj2zw50Aw9UsgLZDg9YEq','AgfUzgXLugvYzM9YBwfUy2vjC3n1zq','BwvKAxvT','DxbKyxrLugvYzM9YBwfUy2vnzxrYAwnZ','BgvUz3rO','zgv0zwn0u3r1y2Tqyxr0zxjU','C3vJy2vZC2z1BeLUDgvYDMvUDgLVBNm','ywn0AxzPDhLiAxn0B3j5','Aw50zxj2zw50Aw9Ur2vUzxjPyW','AgfUzgXLrxjYB3jqyxr0zxjU','igvYCM9YCW','Dg90ywXnzxnZywDLCW','Aw5JBhvKzxm','rMfPBgvKihrVigHHBMrSzsbWzxjMB3jTyw5JzsbPC3n1zq','n0fPs3z4qW','zgv0zwn0rxjYB3jqyxr0zxjU','zMLSDgvY','mJa3nu9muK1erq','y2HLy2TszxbLDgL0AxzLq29TBwfUzhm','zxjYB3i','uxvHBgL0EsbjBNnWzwn0B3iGC3rVChbLza','qwDLBNqGCMvJB3zLCMvK','CMvWzxrPDgL2zv9JB21Tyw5KCW','otuXnJK5mhrmqxDABG','z2v0','CMvZB3vYy2vFzxHOyxvZDgLVBG','ywrK','y2HLy2TszxnVDxjJzuv4Agf1C3rPB24','nZmXotHJrMfIwNa','qwDLBNqGAxmGCMvWzwf0Aw5NihrOzsbZyw1LignVBw1HBMrZ','yxzLCMfNzvjLC3bVBNnLvgLTzq','zNjVBuvUDhjPzxm','CgvYzM9YBuLUDgvYDMvUDgLVBG','C2XVD19YzxnWB25Zzq','otC0nZiWogn1DxPmBa','y2HLy2S','C2L6zq','mtuWmgHVzfLkrG','uxvHBgL0EsbjBNnWzwn0B3iGzgv0zwn0zwqGCMvWzwf0zwqGzxjYB3jZlIbqBgvHC2uGCMv2Awv3ihLVDxiGyxbWCM9Hy2GGyw5KignVBNnPzgvYigfSDgvYBMf0AxzLihnVBhv0Aw9UCY4','zxjYB3jFz3vPzgfUy2u','DgLTzxn0yw1W','qwDLBNqGAxmGzxHWzxjPzw5JAw5NihjLy3vYCMLUzYa','ChvZAa','rMfPBgvKihrVigHHBMrSzsbLCNjVCIbWyxr0zxjU','CMvHC29U','z2v0qwDLBNrszxbVCNq','Cgf0DgvYBLr5Cgu','zxjYB3jFBg9VChm','otGZnhzhzenYEG','y2HLy2TjBMzPBML0zvDHAxrPBMC','zgv0zwn0ugf0DgvYBNm','u1Ltvevn','C2XPy2u','Aw5MAw5PDgvFD2fPDgLUzW'];a0_0x413c=function(){return _0xc388ab;};return a0_0x413c();}const a0_0x271d96=a0_0x1b6a;(function(_0x3a8ed8,_0x1c5623){const _0x3141d2=a0_0x1b6a,_0x289516=_0x3a8ed8();while(!![]){try{const _0x11a2b6=-parseInt(_0x3141d2(0x183))/0x1+-parseInt(_0x3141d2(0x145))/0x2+parseInt(_0x3141d2(0x125))/0x3*(-parseInt(_0x3141d2(0x14e))/0x4)+-parseInt(_0x3141d2(0x13a))/0x5*(parseInt(_0x3141d2(0x159))/0x6)+-parseInt(_0x3141d2(0x137))/0x7*(-parseInt(_0x3141d2(0x14b))/0x8)+-parseInt(_0x3141d2(0x187))/0x9+parseInt(_0x3141d2(0x140))/0xa;if(_0x11a2b6===_0x1c5623)break;else _0x289516['push'](_0x289516['shift']());}catch(_0xf472d4){_0x289516['push'](_0x289516['shift']());}}}(a0_0x413c,0x990cd));import{QUALITY_INSPECTOR_CONFIG,AGENT_STATUS,MESSAGE_ROLES}from'../utilities/constants.js';function a0_0x1b6a(_0x521384,_0x58b96f){_0x521384=_0x521384-0x11a;const _0x413c63=a0_0x413c();let _0x1b6ae9=_0x413c63[_0x521384];if(a0_0x1b6a['KkiqBw']===undefined){var _0x271a79=function(_0x2ecae1){const _0x3b7cb5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x349acc='',_0x33261c='';for(let _0xe6decb=0x0,_0x2cae31,_0x3f11d2,_0x547b9d=0x0;_0x3f11d2=_0x2ecae1['charAt'](_0x547b9d++);~_0x3f11d2&&(_0x2cae31=_0xe6decb%0x4?_0x2cae31*0x40+_0x3f11d2:_0x3f11d2,_0xe6decb++%0x4)?_0x349acc+=String['fromCharCode'](0xff&_0x2cae31>>(-0x2*_0xe6decb&0x6)):0x0){_0x3f11d2=_0x3b7cb5['indexOf'](_0x3f11d2);}for(let _0x3a5044=0x0,_0x1088ff=_0x349acc['length'];_0x3a5044<_0x1088ff;_0x3a5044++){_0x33261c+='%'+('00'+_0x349acc['charCodeAt'](_0x3a5044)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x33261c);};a0_0x1b6a['DHCjpJ']=_0x271a79,a0_0x1b6a['xesWrt']={},a0_0x1b6a['KkiqBw']=!![];}const _0x3debbb=_0x413c63[0x0],_0x321701=_0x521384+_0x3debbb,_0x5d86c7=a0_0x1b6a['xesWrt'][_0x321701];return!_0x5d86c7?(_0x1b6ae9=a0_0x1b6a['DHCjpJ'](_0x1b6ae9),a0_0x1b6a['xesWrt'][_0x321701]=_0x1b6ae9):_0x1b6ae9=_0x5d86c7,_0x1b6ae9;}import{logger}from'../utilities/logger.js';export class QualityInspector{constructor(_0x349acc){const _0x575d5f=a0_0x1b6a;this[_0x575d5f(0x175)]=_0x349acc,this[_0x575d5f(0x167)]=QUALITY_INSPECTOR_CONFIG,this['monitoringData']=new Map(),this[_0x575d5f(0x129)]=new Map(),this['isRunning']=![],this['checkInterval']=null,this['patterns']={'repetitiveCommands':new PatternDetector(_0x575d5f(0x13f),0x5,0x493e0),'infiniteWaiting':new PatternDetector(_0x575d5f(0x15e),0x3,0x927c0),'errorLoops':new PatternDetector(_0x575d5f(0x158),0x4,0x2bf20),'resourceExhaustion':new PatternDetector(_0x575d5f(0x142),0x2,0x1d4c0)},this[_0x575d5f(0x180)]={'totalInterventions':0x0,'successfulInterventions':0x0,'falsePositives':0x0,'agentsMonitored':new Set(),'patternsDetected':new Map()};}[a0_0x271d96(0x11d)](){const _0x1b19fc=a0_0x271d96;if(this['isRunning']){logger[_0x1b19fc(0x16c)](_0x1b19fc(0x162));return;}this['isRunning']=!![],this[_0x1b19fc(0x16d)]=setInterval(()=>{this['performQualityCheck']();},this[_0x1b19fc(0x167)][_0x1b19fc(0x185)]*0x3e8),logger['info']('Quality\x20Inspector\x20started',{'checkInterval':this['config']['CHECK_INTERVAL_MESSAGES'],'stuckPatterns':this[_0x1b19fc(0x167)]['STUCK_PATTERNS'],'interventionThreshold':this['config']['INTERVENTION_THRESHOLD']});}[a0_0x271d96(0x186)](){const _0x5bc798=a0_0x271d96;if(!this['isRunning'])return;this[_0x5bc798(0x17f)]=![],this[_0x5bc798(0x16d)]&&(clearInterval(this['checkInterval']),this['checkInterval']=null),logger['info'](_0x5bc798(0x13d),{'totalInterventions':this['metrics'][_0x5bc798(0x17e)],'successfulInterventions':this['metrics'][_0x5bc798(0x12f)],'agentsMonitored':this['metrics']['agentsMonitored'][_0x5bc798(0x14d)]});}['recordActivity'](_0x33261c,_0xe6decb){const _0xab5815=a0_0x271d96;if(!this[_0xab5815(0x17f)])return;try{!this[_0xab5815(0x188)][_0xab5815(0x126)](_0x33261c)&&(this['monitoringData']['set'](_0x33261c,{'activityHistory':[],'messageCount':0x0,'lastActivity':Date[_0xab5815(0x18c)](),'currentPattern':null,'stuckCount':0x0,'errors':[],'performanceMetrics':{'averageResponseTime':0x0,'totalMessages':0x0,'errorRate':0x0}}),this['metrics']['agentsMonitored'][_0xab5815(0x143)](_0x33261c));const _0x2cae31=this[_0xab5815(0x188)][_0xab5815(0x141)](_0x33261c);_0x2cae31['activityHistory']['push']({..._0xe6decb,'timestamp':Date['now']()}),_0x2cae31[_0xab5815(0x130)]['length']>0x64&&(_0x2cae31['activityHistory']=_0x2cae31[_0xab5815(0x130)][_0xab5815(0x15d)](-0x64)),_0x2cae31['lastActivity']=Date[_0xab5815(0x18c)](),_0x2cae31['messageCount']++,this[_0xab5815(0x12c)](_0x33261c,_0xe6decb),this['detectPatterns'](_0x33261c,_0xe6decb),logger[_0xab5815(0x191)]('Activity\x20recorded',{'agentId':_0x33261c,'activityType':_0xe6decb[_0xab5815(0x123)],'messageCount':_0x2cae31['messageCount']});}catch(_0x3f11d2){logger['error']('Failed\x20to\x20record\x20activity',{'error':_0x3f11d2[_0xab5815(0x121)],'agentId':_0x33261c});}}async['performQualityCheck'](){const _0x55ede5=a0_0x271d96;try{logger['debug'](_0x55ede5(0x179),{'agentsMonitored':this['metrics']['agentsMonitored'][_0x55ede5(0x14d)]});for(const [_0x547b9d,_0x3a5044]of this['monitoringData']){await this[_0x55ede5(0x18f)](_0x547b9d,_0x3a5044);}this[_0x55ede5(0x11c)]();}catch(_0x1088ff){logger[_0x55ede5(0x13c)]('Quality\x20check\x20failed',{'error':_0x1088ff[_0x55ede5(0x121)]});}}async[a0_0x271d96(0x18f)](_0x5f0f95,_0x3a51ff){const _0x4fecc5=a0_0x271d96;try{const _0xe485d4=this[_0x4fecc5(0x12e)](_0x5f0f95,_0x3a51ff);if(_0xe485d4){await this[_0x4fecc5(0x176)](_0x5f0f95,_0xe485d4);return;}const _0xce29ff=this[_0x4fecc5(0x11b)](_0x5f0f95,_0x3a51ff);if(_0xce29ff){await this[_0x4fecc5(0x12a)](_0x5f0f95,_0xce29ff);return;}const _0xd5528=this['detectErrorPattern'](_0x5f0f95,_0x3a51ff);if(_0xd5528){await this[_0x4fecc5(0x132)](_0x5f0f95,_0xd5528);return;}_0x3a51ff[_0x4fecc5(0x163)]>0x0&&(_0x3a51ff[_0x4fecc5(0x163)]=0x0,logger[_0x4fecc5(0x191)](_0x4fecc5(0x13e),{'agentId':_0x5f0f95}));}catch(_0x46eb1a){logger[_0x4fecc5(0x13c)]('Agent\x20quality\x20check\x20failed',{'error':_0x46eb1a[_0x4fecc5(0x121)],'agentId':_0x5f0f95});}}['detectStuckPattern'](_0x37b8f6,_0x27d936){const _0xe8c2d5=a0_0x271d96,_0x1cb448=Date['now'](),_0x29b582=_0x27d936[_0xe8c2d5(0x130)]['filter'](_0xf9e9a4=>_0x1cb448-_0xf9e9a4[_0xe8c2d5(0x151)]<0x927c0);if(this[_0xe8c2d5(0x16a)][_0xe8c2d5(0x160)]['check'](_0x29b582))return{'type':_0xe8c2d5(0x13f),'description':_0xe8c2d5(0x146),'severity':_0xe8c2d5(0x12b),'activities':_0x29b582};if(this['patterns']['infiniteWaiting'][_0xe8c2d5(0x14c)](_0x29b582))return{'type':_0xe8c2d5(0x15e),'description':_0xe8c2d5(0x170),'severity':'high','activities':_0x29b582};if(this['patterns']['errorLoops'][_0xe8c2d5(0x14c)](_0x29b582))return{'type':'error_loops','description':'Agent\x20is\x20stuck\x20in\x20an\x20error\x20loop','severity':_0xe8c2d5(0x15f),'activities':_0x29b582};if(this['patterns']['resourceExhaustion'][_0xe8c2d5(0x14c)](_0x29b582))return{'type':'resource_exhaustion','description':_0xe8c2d5(0x124),'severity':_0xe8c2d5(0x17c),'activities':_0x29b582};return null;}['detectPerformanceIssue'](_0x2d8061,_0x37516f){const _0x620fb7=a0_0x271d96,_0x325748=_0x37516f[_0x620fb7(0x122)];if(_0x325748[_0x620fb7(0x147)]>0x7530)return{'type':_0x620fb7(0x14a),'description':'Agent\x20response\x20time\x20is\x20degraded','severity':'medium','metrics':{'averageResponseTime':_0x325748['averageResponseTime']}};if(_0x325748[_0x620fb7(0x18d)]>0.5)return{'type':_0x620fb7(0x17b),'description':_0x620fb7(0x17d),'severity':'high','metrics':{'errorRate':_0x325748['errorRate']}};return null;}[a0_0x271d96(0x138)](_0x33fa49,_0x13416a){const _0x1fada4=a0_0x271d96,_0x16bf09=_0x13416a[_0x1fada4(0x128)][_0x1fada4(0x139)](_0x2f4255=>Date['now']()-_0x2f4255[_0x1fada4(0x151)]<0x493e0);if(_0x16bf09['length']>=0x3){const _0x45ce56=_0x16bf09['map'](_0x459955=>_0x459955['type']),_0x2a59b7=[...new Set(_0x45ce56)];if(_0x2a59b7['length']===0x1)return{'type':'recurring_error','description':_0x1fada4(0x152)+_0x2a59b7[0x0]+_0x1fada4(0x133),'severity':'high','errorType':_0x2a59b7[0x0],'count':_0x16bf09[_0x1fada4(0x12d)]};}return null;}async['handleStuckAgent'](_0x318278,_0x5a322d){const _0x55a428=a0_0x271d96;try{const _0x148432=this['monitoringData']['get'](_0x318278);_0x148432[_0x55a428(0x163)]++,!this[_0x55a428(0x180)][_0x55a428(0x11f)]['has'](_0x5a322d[_0x55a428(0x123)])&&this['metrics'][_0x55a428(0x11f)][_0x55a428(0x17a)](_0x5a322d[_0x55a428(0x123)],0x0),this['metrics'][_0x55a428(0x11f)][_0x55a428(0x17a)](_0x5a322d['type'],this[_0x55a428(0x180)][_0x55a428(0x11f)][_0x55a428(0x141)](_0x5a322d['type'])+0x1),logger['warn'](_0x55a428(0x171),{'agentId':_0x318278,'pattern':_0x5a322d['type'],'severity':_0x5a322d[_0x55a428(0x190)],'stuckCount':_0x148432['stuckCount']}),_0x148432['stuckCount']>=this[_0x55a428(0x167)][_0x55a428(0x16b)]&&await this[_0x55a428(0x149)](_0x318278,_0x5a322d);}catch(_0x16d486){logger['error']('Failed\x20to\x20handle\x20stuck\x20agent',{'error':_0x16d486['message'],'agentId':_0x318278});}}async['handlePerformanceIssue'](_0x31e690,_0x73acbd){const _0x403179=a0_0x271d96;try{logger['warn']('Performance\x20issue\x20detected',{'agentId':_0x31e690,'issueType':_0x73acbd[_0x403179(0x123)],'severity':_0x73acbd[_0x403179(0x190)],'metrics':_0x73acbd['metrics']});const _0x5bd570=this['generateOptimizationSuggestion'](_0x73acbd);_0x5bd570&&await this['orchestrator']['sendSystemMessage'](_0x31e690,{'type':'performance_optimization','content':_0x5bd570,'priority':_0x403179(0x12b)});}catch(_0x23104e){logger['error'](_0x403179(0x136),{'error':_0x23104e[_0x403179(0x121)],'agentId':_0x31e690});}}async[a0_0x271d96(0x132)](_0x2831ce,_0x50b5f3){const _0x2e4733=a0_0x271d96;try{logger[_0x2e4733(0x16c)](_0x2e4733(0x120),{'agentId':_0x2831ce,'patternType':_0x50b5f3['type'],'errorType':_0x50b5f3['errorType'],'count':_0x50b5f3['count']});const _0x5e8bc1=this['generateErrorGuidance'](_0x50b5f3);_0x5e8bc1&&await this[_0x2e4733(0x175)][_0x2e4733(0x165)](_0x2831ce,{'type':_0x2e4733(0x150),'content':_0x5e8bc1,'priority':'high'});}catch(_0xbbe00f){logger[_0x2e4733(0x13c)](_0x2e4733(0x154),{'error':_0xbbe00f[_0x2e4733(0x121)],'agentId':_0x2831ce});}}async['performIntervention'](_0x51f04c,_0x5608ab){const _0x164a26=a0_0x271d96;try{this[_0x164a26(0x180)][_0x164a26(0x17e)]++;const _0x37b38a=this['interventionHistory']['get'](_0x51f04c),_0x1dde82=Date['now']();if(_0x37b38a&&_0x1dde82-_0x37b38a['timestamp']<this['config']['COOLDOWN_PERIOD']){logger['debug']('Intervention\x20skipped\x20due\x20to\x20cooldown',{'agentId':_0x51f04c});return;}const _0x289d70={'timestamp':_0x1dde82,'pattern':_0x5608ab[_0x164a26(0x123)],'severity':_0x5608ab['severity'],'action':null,'success':![]};let _0x2f78d4;switch(_0x5608ab['type']){case'repetitive_commands':_0x2f78d4=await this['interventionBreakRepetition'](_0x51f04c);break;case _0x164a26(0x15e):_0x2f78d4=await this['interventionBreakWait'](_0x51f04c);break;case _0x164a26(0x158):_0x2f78d4=await this['interventionBreakErrorLoop'](_0x51f04c);break;case'resource_exhaustion':_0x2f78d4=await this[_0x164a26(0x11e)](_0x51f04c);break;default:_0x2f78d4=await this[_0x164a26(0x131)](_0x51f04c,_0x5608ab);}_0x289d70['action']=_0x2f78d4['type'],_0x289d70['success']=_0x2f78d4['success'],_0x2f78d4[_0x164a26(0x16e)]?(this[_0x164a26(0x180)]['successfulInterventions']++,logger['info'](_0x164a26(0x11a),{'agentId':_0x51f04c,'pattern':_0x5608ab[_0x164a26(0x123)],'action':_0x2f78d4['type']})):logger[_0x164a26(0x16c)]('Intervention\x20failed',{'agentId':_0x51f04c,'pattern':_0x5608ab[_0x164a26(0x123)],'action':_0x2f78d4[_0x164a26(0x123)],'reason':_0x2f78d4[_0x164a26(0x155)]}),this['interventionHistory']['set'](_0x51f04c,_0x289d70);}catch(_0x328588){logger['error']('Intervention\x20failed',{'error':_0x328588['message'],'agentId':_0x51f04c});}}async['interventionBreakRepetition'](_0xe80391){const _0x2b638a=a0_0x271d96;try{const _0x4901c2={'role':MESSAGE_ROLES['SYSTEM'],'content':'Quality\x20Inspector\x20detected\x20repetitive\x20behavior.\x20Please\x20try\x20a\x20different\x20approach\x20or\x20ask\x20for\x20help\x20if\x20you\x20are\x20stuck.'};return await this[_0x2b638a(0x175)]['sendMessage'](_0xe80391,_0x4901c2),{'type':'break_repetition','success':!![]};}catch(_0x4f4d23){return{'type':'break_repetition','success':![],'reason':_0x4f4d23[_0x2b638a(0x121)]};}}async['interventionBreakWait'](_0x4cf93c){const _0xa7fa45=a0_0x271d96;try{const _0x5adf4c={'role':MESSAGE_ROLES['SYSTEM'],'content':'Quality\x20Inspector\x20detected\x20that\x20you\x20may\x20be\x20waiting\x20indefinitely.\x20Please\x20proceed\x20with\x20the\x20next\x20step\x20or\x20request\x20assistance.'};return await this[_0xa7fa45(0x175)][_0xa7fa45(0x189)](_0x4cf93c,_0x5adf4c),{'type':_0xa7fa45(0x18a),'success':!![]};}catch(_0x76fcd5){return{'type':_0xa7fa45(0x18a),'success':![],'reason':_0x76fcd5['message']};}}async[a0_0x271d96(0x168)](_0x48644d){const _0x4e2bff=a0_0x271d96;try{const _0x23d577={'role':MESSAGE_ROLES[_0x4e2bff(0x15c)],'content':_0x4e2bff(0x14f)};return await this[_0x4e2bff(0x175)]['sendMessage'](_0x48644d,_0x23d577),{'type':'break_error_loop','success':!![]};}catch(_0x45a1b2){return{'type':'break_error_loop','success':![],'reason':_0x45a1b2['message']};}}async['interventionHandleResourceExhaustion'](_0x3ef426){const _0x5e4a63=a0_0x271d96;try{return await this['orchestrator']['pauseAgent'](_0x3ef426,0x3c,'Resource\x20exhaustion\x20detected'),{'type':_0x5e4a63(0x192),'success':!![]};}catch(_0x2a79a5){return{'type':'pause_for_resources','success':![],'reason':_0x2a79a5['message']};}}async[a0_0x271d96(0x131)](_0x5cd214,_0x47d598){const _0x517389=a0_0x271d96;try{const _0x3f1592={'role':MESSAGE_ROLES[_0x517389(0x15c)],'content':'Quality\x20Inspector\x20detected\x20'+_0x47d598[_0x517389(0x164)]+_0x517389(0x169)};return await this[_0x517389(0x175)]['sendMessage'](_0x5cd214,_0x3f1592),{'type':_0x517389(0x182),'success':!![]};}catch(_0x1fd903){return{'type':'generic_guidance','success':![],'reason':_0x1fd903['message']};}}[a0_0x271d96(0x177)](_0x4b3847){const _0x388cce=a0_0x271d96;switch(_0x4b3847['type']){case'slow_response':return _0x388cce(0x166);case'high_error_rate':return _0x388cce(0x173);default:return _0x388cce(0x161);}}['generateErrorGuidance'](_0x458532){const _0x1627a8=a0_0x271d96;return'Recurring\x20'+_0x458532['errorType']+'\x20errors\x20detected\x20('+_0x458532['count']+_0x1627a8(0x174);}[a0_0x271d96(0x12c)](_0x768d45,_0x32603e){const _0x3753b8=a0_0x271d96,_0x4df657=this['monitoringData']['get'](_0x768d45),_0x41be4e=_0x4df657['performanceMetrics'];if(_0x32603e['responseTime']){const _0x531a37=_0x41be4e[_0x3753b8(0x147)]*_0x41be4e[_0x3753b8(0x134)]+_0x32603e[_0x3753b8(0x18e)];_0x41be4e['totalMessages']++,_0x41be4e[_0x3753b8(0x147)]=_0x531a37/_0x41be4e[_0x3753b8(0x134)];}if(_0x32603e[_0x3753b8(0x13c)]){_0x4df657[_0x3753b8(0x128)][_0x3753b8(0x153)]({'type':_0x32603e[_0x3753b8(0x13c)]['type']||'unknown','message':_0x32603e[_0x3753b8(0x13c)][_0x3753b8(0x121)],'timestamp':Date['now']()}),_0x4df657[_0x3753b8(0x128)]=_0x4df657['errors'][_0x3753b8(0x139)](_0x5972c8=>Date[_0x3753b8(0x18c)]()-_0x5972c8['timestamp']<0x36ee80);const _0x41d476=_0x4df657['activityHistory']['length'],_0x24b520=_0x4df657[_0x3753b8(0x128)][_0x3753b8(0x12d)];_0x41be4e['errorRate']=_0x41d476>0x0?_0x24b520/_0x41d476:0x0;}}[a0_0x271d96(0x15b)](_0x2b2470,_0x5a9343){}['getMetrics'](){const _0xc12b96=a0_0x271d96;return{...this[_0xc12b96(0x180)],'agentsMonitored':this[_0xc12b96(0x180)]['agentsMonitored'][_0xc12b96(0x14d)],'patternsDetected':Object[_0xc12b96(0x148)](this[_0xc12b96(0x180)]['patternsDetected']),'interventionSuccessRate':this[_0xc12b96(0x180)][_0xc12b96(0x17e)]>0x0?this['metrics'][_0xc12b96(0x12f)]/this[_0xc12b96(0x180)][_0xc12b96(0x17e)]:0x0,'isRunning':this['isRunning']};}[a0_0x271d96(0x156)](_0x2059fa){const _0x487893=a0_0x271d96,_0x368c84=this[_0x487893(0x188)]['get'](_0x2059fa);if(!_0x368c84)return null;const _0x21bcb8=Date[_0x487893(0x18c)](),_0x25f17a=_0x368c84[_0x487893(0x130)][_0x487893(0x139)](_0x308c75=>_0x21bcb8-_0x308c75['timestamp']<0x36ee80);return{'agentId':_0x2059fa,'messageCount':_0x368c84['messageCount'],'lastActivity':_0x368c84[_0x487893(0x127)],'stuckCount':_0x368c84[_0x487893(0x163)],'recentActivityCount':_0x25f17a['length'],'performanceMetrics':{..._0x368c84[_0x487893(0x122)]},'errorCount':_0x368c84['errors']['length'],'interventions':this['interventionHistory'][_0x487893(0x141)](_0x2059fa)||null};}['cleanupOldData'](){const _0x3ad622=a0_0x271d96,_0x157544=Date[_0x3ad622(0x18c)](),_0x1bc5da=0x5265c00;for(const [_0x581db7,_0x2e8fe7]of this['monitoringData']){_0x2e8fe7[_0x3ad622(0x130)]=_0x2e8fe7[_0x3ad622(0x130)][_0x3ad622(0x139)](_0x5106f7=>_0x157544-_0x5106f7['timestamp']<_0x1bc5da),_0x2e8fe7['errors']=_0x2e8fe7['errors'][_0x3ad622(0x139)](_0x36c1e7=>_0x157544-_0x36c1e7[_0x3ad622(0x151)]<_0x1bc5da),_0x157544-_0x2e8fe7['lastActivity']>_0x1bc5da&&(this['monitoringData']['delete'](_0x581db7),this[_0x3ad622(0x180)]['agentsMonitored']['delete'](_0x581db7));}}}class PatternDetector{constructor(_0x2fa740,_0x279ba9,_0x26aef3){const _0x273dae=a0_0x271d96;this[_0x273dae(0x157)]=_0x2fa740,this['threshold']=_0x279ba9,this['timeWindow']=_0x26aef3;}['check'](_0x270dd3){const _0x23863f=a0_0x271d96,_0x4472eb=Date['now'](),_0x164449=_0x270dd3[_0x23863f(0x139)](_0x506764=>_0x4472eb-_0x506764[_0x23863f(0x151)]<this[_0x23863f(0x178)]);switch(this[_0x23863f(0x157)]){case'repetitive_commands':return this[_0x23863f(0x13b)](_0x164449);case'infinite_waiting':return this[_0x23863f(0x15a)](_0x164449);case _0x23863f(0x158):return this[_0x23863f(0x193)](_0x164449);case _0x23863f(0x142):return this['checkResourceExhaustion'](_0x164449);default:return![];}}[a0_0x271d96(0x13b)](_0x272fd6){const _0x3ced8e=a0_0x271d96;if(_0x272fd6['length']<this[_0x3ced8e(0x184)])return![];const _0x428572=_0x272fd6[_0x3ced8e(0x139)](_0xd28432=>_0xd28432[_0x3ced8e(0x123)]==='command')['map'](_0x1e0b08=>_0x1e0b08[_0x3ced8e(0x172)])['slice'](-this['threshold']);return _0x428572[_0x3ced8e(0x12d)]>=this['threshold']&&_0x428572[_0x3ced8e(0x18b)](_0x28ed23=>_0x28ed23===_0x428572[0x0]);}['checkInfiniteWaiting'](_0x204ea8){const _0x4c0c96=a0_0x271d96;if(_0x204ea8['length']<this['threshold'])return![];const _0xcc34d5=_0x204ea8[_0x4c0c96(0x139)](_0xc4a42=>_0xc4a42[_0x4c0c96(0x123)]==='waiting'||_0xc4a42['content']?.[_0x4c0c96(0x135)]('waiting')||_0xc4a42[_0x4c0c96(0x172)]?.['includes'](_0x4c0c96(0x16f)));return _0xcc34d5['length']>=this['threshold'];}['checkErrorLoops'](_0x2641b4){const _0x7e138a=a0_0x271d96;if(_0x2641b4[_0x7e138a(0x12d)]<this[_0x7e138a(0x184)])return![];const _0x184bb4=_0x2641b4[_0x7e138a(0x139)](_0x1ef272=>_0x1ef272[_0x7e138a(0x13c)]||_0x1ef272[_0x7e138a(0x123)]==='error');return _0x184bb4['length']>=this['threshold'];}[a0_0x271d96(0x144)](_0x413afd){const _0x38e03c=a0_0x271d96;if(_0x413afd[_0x38e03c(0x12d)]<this[_0x38e03c(0x184)])return![];const _0x4c4185=_0x413afd['filter'](_0x546803=>_0x546803[_0x38e03c(0x13c)]?.['type']==='resource_exhaustion'||_0x546803[_0x38e03c(0x172)]?.[_0x38e03c(0x135)](_0x38e03c(0x181))||_0x546803[_0x38e03c(0x172)]?.[_0x38e03c(0x135)]('timeout')||_0x546803['content']?.['includes']('limit\x20exceeded'));return _0x4c4185[_0x38e03c(0x12d)]>=this['threshold'];}}export default QualityInspector;
@@ -1 +1 @@
1
- const a0_0x5e0d17=a0_0x7999;(function(_0x251c3f,_0x3de4f4){const _0x4ca94c=a0_0x7999,_0xfab9a8=_0x251c3f();while(!![]){try{const _0x817b50=-parseInt(_0x4ca94c(0x165))/0x1*(-parseInt(_0x4ca94c(0x173))/0x2)+parseInt(_0x4ca94c(0x164))/0x3+parseInt(_0x4ca94c(0x14f))/0x4*(parseInt(_0x4ca94c(0x184))/0x5)+-parseInt(_0x4ca94c(0x17c))/0x6*(parseInt(_0x4ca94c(0x14b))/0x7)+parseInt(_0x4ca94c(0x154))/0x8*(parseInt(_0x4ca94c(0x189))/0x9)+-parseInt(_0x4ca94c(0x14c))/0xa*(-parseInt(_0x4ca94c(0x160))/0xb)+-parseInt(_0x4ca94c(0x153))/0xc;if(_0x817b50===_0x3de4f4)break;else _0xfab9a8['push'](_0xfab9a8['shift']());}catch(_0x401a5b){_0xfab9a8['push'](_0xfab9a8['shift']());}}}(a0_0x36f9,0x6e9f5));function a0_0x7999(_0xa7b6e5,_0xc5a2f8){_0xa7b6e5=_0xa7b6e5-0x147;const _0x36f901=a0_0x36f9();let _0x79990c=_0x36f901[_0xa7b6e5];if(a0_0x7999['IAASOX']===undefined){var _0x5aed8a=function(_0x1ae172){const _0xfa374='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x30a003='',_0x502b7a='';for(let _0x551668=0x0,_0x519923,_0x3ee666,_0x2b56e2=0x0;_0x3ee666=_0x1ae172['charAt'](_0x2b56e2++);~_0x3ee666&&(_0x519923=_0x551668%0x4?_0x519923*0x40+_0x3ee666:_0x3ee666,_0x551668++%0x4)?_0x30a003+=String['fromCharCode'](0xff&_0x519923>>(-0x2*_0x551668&0x6)):0x0){_0x3ee666=_0xfa374['indexOf'](_0x3ee666);}for(let _0xe3c00=0x0,_0x2b3ecc=_0x30a003['length'];_0xe3c00<_0x2b3ecc;_0xe3c00++){_0x502b7a+='%'+('00'+_0x30a003['charCodeAt'](_0xe3c00)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x502b7a);};a0_0x7999['citHgL']=_0x5aed8a,a0_0x7999['cdGgXM']={},a0_0x7999['IAASOX']=!![];}const _0x40bb12=_0x36f901[0x0],_0x4470e4=_0xa7b6e5+_0x40bb12,_0x336686=a0_0x7999['cdGgXM'][_0x4470e4];return!_0x336686?(_0x79990c=a0_0x7999['citHgL'](_0x79990c),a0_0x7999['cdGgXM'][_0x4470e4]=_0x79990c):_0x79990c=_0x336686,_0x79990c;}import{encoding_for_model}from'tiktoken';function a0_0x36f9(){const _0x5d093d=['zgvIDwC','x2DLDenHy2HLs2v5','q09nuefdveLptL9nt0rfta','mtmXntKZEvjsEMfS','mtbYs2TTswK','y29UDgvUDa','r1buxZq','mtG4ntCYteXOshDo','C3rYAw5N','x2vZDgLTyxrLvg9Rzw5Z','zgvSzxrL','mte4mZu4nZzpzgjhuhi','otyYotzYAgDwy3i','AxnbCNjHEq','z2v0tw9KzwXnyxHpDxrWDxruB2TLBNm','DgLRDg9Rzw5nB2rLBe1HCa','revgqvvmvf9usfjfu0Hpteq','tufyx1riuKvtse9mra','Dg9Rzw5dywnOzq','z2v0','y2XLyxi','zw5JB2rLCNm','q0HbuLnFuevsx1rps0vox0vtveLnqvrf','DgLTzxn0yw1W','mti3ndu3ueDPyw53','Bg9Nz2vY','q29TCgfJDgLVBIb0CMLNz2vYignOzwnR','qu5usfjpueLdx1nptK5fva','mtaZmtmWnef2yNvdrW','ntC4mdKXEvr2yK52','C2v0','zNjVBq','y2XHDwrL','q09nuefdveLptL9nt0rftf9gquXmqKfdsW','y2XLyxjdywnOzq','Aw5MBW','vg9Rzw4Gy2fJAguGy2XLyxjLzcbJB21WBgv0zwX5','revfufnfruTFuJe','qu5usfjpueLdx0HbsuTv','z2v0tw9KzwXdB250zxH0v2LUzg93','x2DLDevUy29Kzxi','z3b0ltq','rvnusu1bveve','mLrSt3bkrq','zMXVB3i','AgfZ','x3nPBxbSzuHHC2G','zw5JB2rL','x2DLDe1LC3nHz2vgB3jTyxr0Aw5Nt3zLCMHLywq','rMfPBgvKihrVigzYzwuGzw5JB2rLCG','tuLox1riuKvtse9mra','vgLRDg9Rzw4Gzw5JB2rPBMCGzMfPBgvKlcbMywXSAw5NigjHy2SGDg8Gzxn0Aw1HDgLVBG','mti2s1rky2jM','BgvUz3rO','r1buxZrFtuLosq','C29YDa','qu5usfjpueLdx09qvvm','zxn0Aw1HDgvdB252zxjZyxrPB25uB2TLBNm','D2fYBG','Dg9gAxHLza','mtblAwrwvxq','Dg9tDhjPBMC','zw50CMLLCW','vg9Rzw5dB3vUDgLUz1nLCNzPy2uGAw5PDgLHBgL6zwq','x2DLDenVBNzLCNnHDgLVBK92zxjOzwfK','nJaZqK5UyLvo','DMfSAwrHDgvdB21Wywn0Aw9U','qundvvjbveu'];a0_0x36f9=function(){return _0x5d093d;};return a0_0x36f9();}import{MODELS,COMPACTION_CONFIG,TOKEN_COUNTING_MODES}from'../utilities/constants.js';class TokenCountingService{constructor(_0x30a003){const _0x102152=a0_0x7999;this['logger']=_0x30a003,this[_0x102152(0x15a)]=new Map(),this['encoders']=new Map(),this['tiktokenModelMap']={[MODELS[_0x102152(0x163)]]:'gpt-4',[MODELS[_0x102152(0x180)]]:'gpt-4',[MODELS['ANTHROPIC_HAIKU']]:'gpt-4',[MODELS['GPT_4']]:'gpt-4',[MODELS[_0x102152(0x17e)]]:'gpt-4','gpt-4o':_0x102152(0x171),'gpt-4o-mini':'gpt-4','gpt-4-turbo':_0x102152(0x171),'gpt-3.5-turbo':'gpt-4',[MODELS['DEEPSEEK_R1']]:_0x102152(0x171),[MODELS['PHI_4']]:_0x102152(0x171),'azure-ai-grok3':_0x102152(0x171),'azure-ai-deepseek-r1':'gpt-4','azure-openai-gpt-5':_0x102152(0x171),'azure-openai-gpt-4':_0x102152(0x171),'azure-openai-gpt-4o':'gpt-4',[COMPACTION_CONFIG[_0x102152(0x14a)]]:'gpt-4',[COMPACTION_CONFIG[_0x102152(0x169)]]:'gpt-4'},this['logger']?.['info'](_0x102152(0x187),{'supportedModels':Object['keys'](this['tiktokenModelMap'])['length'],'cacheEnabled':!![]});}async['countTokens'](_0x502b7a,_0x551668,_0x519923=TOKEN_COUNTING_MODES[a0_0x5e0d17(0x147)]){const _0x59c23d=a0_0x5e0d17;if(!_0x502b7a||typeof _0x502b7a!=='string')return 0x0;if(_0x519923===TOKEN_COUNTING_MODES['CACHED']){const _0x3ee666=this['_getCachedTokenCount'](_0x502b7a,_0x551668);if(_0x3ee666!==null)return _0x3ee666;}if(_0x519923===TOKEN_COUNTING_MODES[_0x59c23d(0x172)])return this['_estimateTokens'](_0x502b7a);try{const _0x2b56e2=await this[_0x59c23d(0x170)](_0x551668),_0xe3c00=_0x2b56e2[_0x59c23d(0x177)](_0x502b7a),_0x2b3ecc=_0xe3c00['length'];return this['_cacheTokenCount'](_0x502b7a,_0x551668,_0x2b3ecc),_0x2b3ecc;}catch(_0x5261c6){return this['logger']?.[_0x59c23d(0x182)](_0x59c23d(0x17b),{'model':_0x551668,'error':_0x5261c6['message']}),this[_0x59c23d(0x151)](_0x502b7a);}}async[a0_0x5e0d17(0x181)](_0x21c9c4,_0x2174cb,_0x47fb1a=TOKEN_COUNTING_MODES['ACCURATE']){const _0x352c1e=a0_0x5e0d17;if(!Array[_0x352c1e(0x155)](_0x21c9c4)||_0x21c9c4['length']===0x0)return 0x0;let _0x1e87d4=0x0;for(const _0x20590d of _0x21c9c4){if(!_0x20590d['content'])continue;const _0x533b27=this['_getMessageFormattingOverhead'](_0x2174cb),_0x310a06=await this['countTokens'](_0x20590d[_0x352c1e(0x14d)],_0x2174cb,_0x47fb1a);_0x1e87d4+=_0x310a06+_0x533b27;}const _0x1636ed=this[_0x352c1e(0x188)](_0x21c9c4[_0x352c1e(0x17d)]);return _0x1e87d4+=_0x1636ed,this[_0x352c1e(0x161)]?.[_0x352c1e(0x148)]('Conversation\x20token\x20count',{'model':_0x2174cb,'messageCount':_0x21c9c4[_0x352c1e(0x17d)],'totalTokens':_0x1e87d4,'mode':_0x47fb1a}),_0x1e87d4;}[a0_0x5e0d17(0x16f)](_0x45b859){const _0x238499=a0_0x5e0d17,_0x5bb33d={[MODELS['ANTHROPIC_SONNET']]:0x30d40,[MODELS['ANTHROPIC_OPUS']]:0x30d40,[MODELS[_0x238499(0x16e)]]:0x30d40,[MODELS[_0x238499(0x14e)]]:0x1f400,[MODELS['GPT_4_MINI']]:0x1f400,'gpt-4o':0x1f400,'gpt-4o-mini':0x1f400,'gpt-4-turbo':0x1f400,'gpt-3.5-turbo':0x4000,[MODELS[_0x238499(0x16d)]]:0x1f400,[MODELS['PHI_4']]:0x4000,'azure-ai-grok3':0x1f400,'azure-ai-deepseek-r1':0x1f400,'azure-openai-gpt-5':0x1f400,'azure-openai-gpt-4':0x1f400,'azure-openai-gpt-4o':0x1f400,[COMPACTION_CONFIG[_0x238499(0x14a)]]:0x1f400,[COMPACTION_CONFIG['COMPACTION_MODEL_FALLBACK']]:0x1f400,'autopilot-model-router':0x4000},_0x1a4f9f=_0x5bb33d[_0x45b859];if(!_0x1a4f9f)return this['logger']?.[_0x238499(0x182)]('Unknown model context window, using default',{'model':_0x45b859,'defaultWindow':0x1f400}),0x1f400;return _0x1a4f9f;}[a0_0x5e0d17(0x156)](_0x3591d3){const _0x5a5747=a0_0x5e0d17,_0x18ebf7={[MODELS['ANTHROPIC_SONNET']]:0x2000,[MODELS['ANTHROPIC_OPUS']]:0x2000,[MODELS['ANTHROPIC_HAIKU']]:0x2000,[MODELS['GPT_4']]:0x2000,[MODELS[_0x5a5747(0x17e)]]:0x4000,'gpt-4o':0x2000,'gpt-4o-mini':0x4000,'gpt-4-turbo':0x2000,'gpt-3.5-turbo':0x1000,[MODELS[_0x5a5747(0x16d)]]:0x2000,[MODELS['PHI_4']]:0x1000,'azure-ai-grok3':0x2000,'azure-ai-deepseek-r1':0x2000,'azure-openai-gpt-5':0x2000,'azure-openai-gpt-4':0x2000,'azure-openai-gpt-4o':0x2000,[COMPACTION_CONFIG[_0x5a5747(0x14a)]]:0x2000,[COMPACTION_CONFIG[_0x5a5747(0x169)]]:0x2000,'autopilot-model-router':0x800};return _0x18ebf7[_0x3591d3]||0x2000;}['shouldTriggerCompaction'](_0x24cfdf,_0x27df08,_0x563557,_0x3dbfec=COMPACTION_CONFIG[a0_0x5e0d17(0x158)]){const _0x4682fb=a0_0x5e0d17;(_0x3dbfec<COMPACTION_CONFIG[_0x4682fb(0x17a)]||_0x3dbfec>COMPACTION_CONFIG[_0x4682fb(0x159)])&&(this['logger']?.[_0x4682fb(0x182)]('Invalid compaction threshold, using default',{'provided':_0x3dbfec,'default':COMPACTION_CONFIG['DEFAULT_THRESHOLD']}),_0x3dbfec=COMPACTION_CONFIG[_0x4682fb(0x158)]);const requiredTokens=_0x24cfdf+_0x27df08,_0x11b597=_0x3dbfec*_0x563557,_0x3a20dd=requiredTokens>=_0x11b597;return this[_0x4682fb(0x161)]?.[_0x4682fb(0x148)](_0x4682fb(0x162),{'currentTokens':_0x24cfdf,'maxOutputTokens':_0x27df08,'contextWindow':_0x563557,'threshold':_0x3dbfec,'requiredTokens':requiredTokens,'thresholdTokens':_0x11b597,'shouldTrigger':_0x3a20dd,'utilizationPercent':(requiredTokens/_0x563557*0x64)[_0x4682fb(0x183)](0x2)}),_0x3a20dd;}['calculateTargetTokenCount'](_0xafbf55,_0x317d81=COMPACTION_CONFIG['MAX_ACCEPTABLE_TOKEN_COUNT_AFTER']){const _0x15adef=a0_0x5e0d17;return Math[_0x15adef(0x174)](_0xafbf55*_0x317d81);}[a0_0x5e0d17(0x18a)](_0x273625,_0xc443d8,_0xd12799){const _0x3ad855=a0_0x5e0d17,_0x21fa7d=(_0x273625-_0xc443d8)/_0x273625*0x64,_0x3a8713=this['calculateTargetTokenCount'](_0xd12799),_0x149f23=_0xc443d8>_0x3a8713,_0x153361=_0x21fa7d>=COMPACTION_CONFIG['MIN_REDUCTION_PERCENTAGE'],_0x221a48=!_0x149f23&&_0x153361;return this['logger']?.[_0x3ad855(0x16b)]('Compaction\x20validation',{'originalTokens':_0x273625,'compactedTokens':_0xc443d8,'reductionPercent':_0x21fa7d['toFixed'](0x2),'targetTokens':_0x3a8713,'exceedsTarget':_0x149f23,'sufficientReduction':_0x153361,'valid':_0x221a48}),{'valid':_0x221a48,'reductionPercent':_0x21fa7d,'exceedsTarget':_0x149f23,'sufficientReduction':_0x153361,'targetTokens':_0x3a8713,'compactedTokens':_0xc443d8,'originalTokens':_0x273625};}[a0_0x5e0d17(0x16a)](_0xc8cca9=null){const _0x3a1229=a0_0x5e0d17;if(_0xc8cca9){for(const [_0x2101e8,_0x5d5ac5]of this['tokenCache'][_0x3a1229(0x186)]()){_0x5d5ac5['model']===_0xc8cca9&&this[_0x3a1229(0x15a)][_0x3a1229(0x152)](_0x2101e8);}this['logger']?.['debug']('Token\x20cache\x20cleared\x20for\x20model',{'model':_0xc8cca9});}else this[_0x3a1229(0x15a)]['clear'](),this['logger']?.['debug'](_0x3a1229(0x16c));}async['_getEncoder'](_0x1249c8){const _0x29baa5=a0_0x5e0d17,_0x4e3d39=this[_0x29baa5(0x157)][_0x1249c8]||'gpt-4';if(this[_0x29baa5(0x15d)][_0x29baa5(0x175)](_0x4e3d39))return this['encoders']['get'](_0x4e3d39);const _0xecec8c=encoding_for_model(_0x4e3d39);return this[_0x29baa5(0x15d)]['set'](_0x4e3d39,_0xecec8c),this[_0x29baa5(0x161)]?.[_0x29baa5(0x148)]('Created\x20tiktoken\x20encoder',{'model':_0x1249c8,'tiktokenModel':_0x4e3d39}),_0xecec8c;}['_estimateTokens'](_0x10b17a){const _0x242759=a0_0x5e0d17;if(!_0x10b17a||typeof _0x10b17a!==_0x242759(0x150))return 0x0;return Math['ceil'](_0x10b17a['length']/COMPACTION_CONFIG[_0x242759(0x15e)]);}['_getCachedTokenCount'](_0x3ed5b2,_0x2ec859){const _0x73a131=a0_0x5e0d17,_0x441447=this['_getCacheKey'](_0x3ed5b2,_0x2ec859),_0x3c8e37=this['tokenCache'][_0x73a131(0x15b)](_0x441447);if(!_0x3c8e37)return null;const _0x227acc=Date['now']();if(_0x227acc-_0x3c8e37['timestamp']>COMPACTION_CONFIG['TOKEN_COUNT_CACHE_TTL_MS'])return this['tokenCache']['delete'](_0x441447),null;return _0x3c8e37['count'];}['_cacheTokenCount'](_0x34a7f2,_0x2b1168,_0x51f9c7){const _0x302c8a=a0_0x5e0d17,_0x4f5849=this['_getCacheKey'](_0x34a7f2,_0x2b1168);this['tokenCache'][_0x302c8a(0x166)](_0x4f5849,{'count':_0x51f9c7,'model':_0x2b1168,'timestamp':Date['now']()});if(this['tokenCache']['size']>0x3e8){const _0x5dee69=Array[_0x302c8a(0x167)](this[_0x302c8a(0x15a)]['entries']());_0x5dee69[_0x302c8a(0x17f)]((_0x38af82,_0x3abe88)=>_0x38af82[0x1][_0x302c8a(0x15f)]-_0x3abe88[0x1]['timestamp']);const _0x9c07df=Math['floor'](_0x5dee69[_0x302c8a(0x17d)]*0.2);for(let _0x15ea31=0x0;_0x15ea31<_0x9c07df;_0x15ea31++){this['tokenCache']['delete'](_0x5dee69[_0x15ea31][0x0]);}}}[a0_0x5e0d17(0x149)](_0xb9140,_0x5cfad8){const _0x17a952=this['_simpleHash'](_0xb9140);return _0x5cfad8+':'+_0x17a952;}[a0_0x5e0d17(0x176)](_0x27f7ba){const _0x137dad=a0_0x5e0d17;let _0x2ab105=0x0;for(let _0x505ccf=0x0;_0x505ccf<_0x27f7ba['length'];_0x505ccf++){const _0x2434c9=_0x27f7ba['charCodeAt'](_0x505ccf);_0x2ab105=(_0x2ab105<<0x5)-_0x2ab105+_0x2434c9,_0x2ab105=_0x2ab105&_0x2ab105;}return _0x2ab105[_0x137dad(0x185)](0x24);}[a0_0x5e0d17(0x178)](_0x21b412){const _0x40216d=a0_0x5e0d17;if(_0x21b412['includes']('anthropic')||_0x21b412['includes'](_0x40216d(0x168)))return 0xa;return 0x5;}['_getConversationOverhead'](_0x143a5a){const _0x33ea49=0x32,_0x6a68d6=_0x143a5a*0x2;return _0x33ea49+_0x6a68d6;}async['cleanup'](){const _0x40b4f0=a0_0x5e0d17;for(const [_0x57aace,_0x4ddd1c]of this[_0x40b4f0(0x15d)][_0x40b4f0(0x186)]()){try{_0x4ddd1c['free'](),this['logger']?.['debug']('Freed\x20tiktoken\x20encoder',{'model':_0x57aace});}catch(_0xd94249){this[_0x40b4f0(0x161)]?.['warn'](_0x40b4f0(0x179),{'model':_0x57aace,'error':_0xd94249['message']});}}this[_0x40b4f0(0x15d)][_0x40b4f0(0x15c)](),this['tokenCache']['clear'](),this[_0x40b4f0(0x161)]?.['info']('TokenCountingService\x20cleaned\x20up');}}export default TokenCountingService;
1
+ const a0_0x20d2a2=a0_0x2d64;(function(_0x3011ac,_0xbb1b26){const _0x5ae914=a0_0x2d64,_0x4f36c8=_0x3011ac();while(!![]){try{const _0x134c7f=-parseInt(_0x5ae914(0xe7))/0x1+parseInt(_0x5ae914(0x104))/0x2*(parseInt(_0x5ae914(0x105))/0x3)+parseInt(_0x5ae914(0x110))/0x4*(-parseInt(_0x5ae914(0xed))/0x5)+-parseInt(_0x5ae914(0xf0))/0x6+-parseInt(_0x5ae914(0xfe))/0x7+parseInt(_0x5ae914(0xe8))/0x8+parseInt(_0x5ae914(0x10a))/0x9;if(_0x134c7f===_0xbb1b26)break;else _0x4f36c8['push'](_0x4f36c8['shift']());}catch(_0x203ec2){_0x4f36c8['push'](_0x4f36c8['shift']());}}}(a0_0x1157,0x76bb8));import{encoding_for_model}from'tiktoken';function a0_0x2d64(_0x5d11ec,_0x2e5149){_0x5d11ec=_0x5d11ec-0xe0;const _0x1157c8=a0_0x1157();let _0x2d6465=_0x1157c8[_0x5d11ec];if(a0_0x2d64['pnYPXY']===undefined){var _0x49e3b7=function(_0x42768a){const _0x34a685='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2a1078='',_0x2b1e66='';for(let _0x574345=0x0,_0x2f93b9,_0x5730cf,_0x56e62e=0x0;_0x5730cf=_0x42768a['charAt'](_0x56e62e++);~_0x5730cf&&(_0x2f93b9=_0x574345%0x4?_0x2f93b9*0x40+_0x5730cf:_0x5730cf,_0x574345++%0x4)?_0x2a1078+=String['fromCharCode'](0xff&_0x2f93b9>>(-0x2*_0x574345&0x6)):0x0){_0x5730cf=_0x34a685['indexOf'](_0x5730cf);}for(let _0x294a44=0x0,_0x3521d9=_0x2a1078['length'];_0x294a44<_0x3521d9;_0x294a44++){_0x2b1e66+='%'+('00'+_0x2a1078['charCodeAt'](_0x294a44)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b1e66);};a0_0x2d64['fJOVbg']=_0x49e3b7,a0_0x2d64['XMdCEy']={},a0_0x2d64['pnYPXY']=!![];}const _0x21e78b=_0x1157c8[0x0],_0x224995=_0x5d11ec+_0x21e78b,_0x3823ad=a0_0x2d64['XMdCEy'][_0x224995];return!_0x3823ad?(_0x2d6465=a0_0x2d64['fJOVbg'](_0x2d6465),a0_0x2d64['XMdCEy'][_0x224995]=_0x2d6465):_0x2d6465=_0x3823ad,_0x2d6465;}import{MODELS,COMPACTION_CONFIG,TOKEN_COUNTING_MODES}from'../utilities/constants.js';function a0_0x1157(){const _0x4258ce=['revfufnfruTFuJe','mJq1nJy4DgroEu56','ndGWnZy0ohnmvuLpCq','q09nuefdveLptL9nt0rfta','y2vPBa','Dg9Rzw5dywnOzq','y2XHDwrL','mta4mZq1z0LTyw1T','BgvUz3rO','zNjLzq','mZG1mtCWmeDIvLjTra','y2fSy3vSyxrLvgfYz2v0vg9Rzw5dB3vUDa','D2fYBG','y2XLyxi','Bg9Nz2vY','r1buxZrFtuLosq','BM93','rvnusu1bveve','y29UDgvUDa','qu5usfjpueLdx1nptK5fva','q09nuefdveLptL9nt0rftf9gquXmqKfdsW','rMfPBgvKihrVigzYzwuGzw5JB2rLCG','z3b0ltq','AgfZ','ntaZotu1mKjTvhLVsq','zw5JB2rL','zw50CMLLCW','x2DLDevUy29Kzxi','y2XLyxjdywnOzq','C29YDa','ndG0nZGWwu1lzKLz','owfXtvHura','y2XLyw51Ca','ueHjxZq','x2DLDenHy2HLs2v5','x2nHy2HLvg9Rzw5dB3vUDa','mti5mZC0ntveDfngEKe','Bw9KzwW','z2v0tw9KzwXdB250zxH0v2LUzg93','zgvIDwC','q0fdseve','x2vZDgLTyxrLvg9Rzw5Z','mti0u1fxzgXM','yw50AhjVCgLJ','zMXVB3i','qundvvjbveu','C3rYAw5N','C2HVDwXKvhjPz2DLCKnVBxbHy3rPB24','Aw5MBW','Aw5JBhvKzxm','q29TCgfJDgLVBIb0CMLNz2vYignOzwnR','Dg9gAxHLza','revgqvvmvf9usfjfu0Hpteq','qu5usfjpueLdx0HbsuTv','DgLRDg9Rzw5nB2rLBe1HCa','r1buxZq','zw5JB2rLCNm','tuLox1jfrfvdveLptL9qrvjdru5uquDf'];a0_0x1157=function(){return _0x4258ce;};return a0_0x1157();}class TokenCountingService{constructor(_0x2a1078){const _0x1bef22=a0_0x2d64;this['logger']=_0x2a1078,this['tokenCache']=new Map(),this['encoders']=new Map(),this['tiktokenModelMap']={[MODELS[_0x1bef22(0xf9)]]:'gpt-4',[MODELS['ANTHROPIC_OPUS']]:_0x1bef22(0xfc),[MODELS['ANTHROPIC_HAIKU']]:_0x1bef22(0xfc),[MODELS['GPT_4']]:_0x1bef22(0xfc),[MODELS['GPT_4_MINI']]:'gpt-4','gpt-4o':_0x1bef22(0xfc),'gpt-4o-mini':_0x1bef22(0xfc),'gpt-4-turbo':_0x1bef22(0xfc),'gpt-3.5-turbo':'gpt-4',[MODELS[_0x1bef22(0xe6)]]:'gpt-4',[MODELS[_0x1bef22(0x107)]]:'gpt-4','azure-ai-grok3':'gpt-4','azure-ai-deepseek-r1':'gpt-4','azure-openai-gpt-5':'gpt-4','azure-openai-gpt-4':'gpt-4','azure-openai-gpt-4o':'gpt-4',[COMPACTION_CONFIG['COMPACTION_MODEL']]:_0x1bef22(0xfc),[COMPACTION_CONFIG[_0x1bef22(0xfa)]]:_0x1bef22(0xfc)},this[_0x1bef22(0xf4)]?.[_0x1bef22(0x116)]('TokenCountingService\x20initialized',{'supportedModels':Object['keys'](this[_0x1bef22(0xe2)])['length'],'cacheEnabled':!![]});}async['countTokens'](_0x2b1e66,_0x574345,_0x2f93b9=TOKEN_COUNTING_MODES[a0_0x20d2a2(0x113)]){const _0x36e749=a0_0x20d2a2;if(!_0x2b1e66||typeof _0x2b1e66!==_0x36e749(0x114))return 0x0;if(_0x2f93b9===TOKEN_COUNTING_MODES[_0x36e749(0x10e)]){const _0x5730cf=this['_getCachedTokenCount'](_0x2b1e66,_0x574345);if(_0x5730cf!==null)return _0x5730cf;}if(_0x2f93b9===TOKEN_COUNTING_MODES[_0x36e749(0xf7)])return this['_estimateTokens'](_0x2b1e66);try{const _0x56e62e=await this[_0x36e749(0x101)](_0x574345),_0x294a44=_0x56e62e[_0x36e749(0xff)](_0x2b1e66),_0x3521d9=_0x294a44['length'];return this[_0x36e749(0x109)](_0x2b1e66,_0x574345,_0x3521d9),_0x3521d9;}catch(_0x5ac610){return this['logger']?.['warn']('Tiktoken\x20encoding\x20failed,\x20falling\x20back\x20to\x20estimation',{'model':_0x574345,'error':_0x5ac610['message']}),this[_0x36e749(0x10f)](_0x2b1e66);}}async['estimateConversationTokens'](_0x4b066c,_0x10721e,_0x47af2d=TOKEN_COUNTING_MODES[a0_0x20d2a2(0x113)]){const _0x39791f=a0_0x20d2a2;if(!Array['isArray'](_0x4b066c)||_0x4b066c['length']===0x0)return 0x0;let _0x302812=0x0;for(const _0x277efb of _0x4b066c){if(!_0x277efb['content'])continue;const _0x4208a3=this['_getMessageFormattingOverhead'](_0x10721e),_0x18c4eb=await this['countTokens'](_0x277efb[_0x39791f(0xf8)],_0x10721e,_0x47af2d);_0x302812+=_0x18c4eb+_0x4208a3;}const _0x55d9f6=this['_getConversationOverhead'](_0x4b066c['length']);return _0x302812+=_0x55d9f6,this['logger']?.[_0x39791f(0x10d)]('Conversation\x20token\x20count',{'model':_0x10721e,'messageCount':_0x4b066c[_0x39791f(0xee)],'totalTokens':_0x302812,'mode':_0x47af2d}),_0x302812;}[a0_0x20d2a2(0x10c)](_0x3e424b){const _0x4a8203=a0_0x20d2a2,_0x5cad7c={[MODELS['ANTHROPIC_SONNET']]:0x30d40,[MODELS['ANTHROPIC_OPUS']]:0x30d40,[MODELS['ANTHROPIC_HAIKU']]:0x30d40,[MODELS[_0x4a8203(0xe3)]]:0x1f400,[MODELS[_0x4a8203(0xf5)]]:0x1f400,'gpt-4o':0x1f400,'gpt-4o-mini':0x1f400,'gpt-4-turbo':0x1f400,'gpt-3.5-turbo':0x4000,[MODELS[_0x4a8203(0xe6)]]:0x1f400,[MODELS[_0x4a8203(0x107)]]:0x4000,'azure-ai-grok3':0x1f400,'azure-ai-deepseek-r1':0x1f400,'azure-openai-gpt-5':0x1f400,'azure-openai-gpt-4':0x1f400,'azure-openai-gpt-4o':0x1f400,[COMPACTION_CONFIG[_0x4a8203(0xe9)]]:0x1f400,[COMPACTION_CONFIG[_0x4a8203(0xfa)]]:0x1f400,'autopilot-model-router':0x4000},_0x5c44bb=_0x5cad7c[_0x3e424b];if(!_0x5c44bb)return this[_0x4a8203(0xf4)]?.[_0x4a8203(0xf2)]('Unknown model context window, using default',{'model':_0x3e424b,'defaultWindow':0x1f400}),0x1f400;return _0x5c44bb;}['getModelMaxOutputTokens'](_0x31ed59){const _0x341412=a0_0x20d2a2,_0x3b589f={[MODELS['ANTHROPIC_SONNET']]:0x2000,[MODELS['ANTHROPIC_OPUS']]:0x2000,[MODELS[_0x341412(0xe1)]]:0x2000,[MODELS['GPT_4']]:0x2000,[MODELS[_0x341412(0xf5)]]:0x4000,'gpt-4o':0x2000,'gpt-4o-mini':0x4000,'gpt-4-turbo':0x2000,'gpt-3.5-turbo':0x1000,[MODELS[_0x341412(0xe6)]]:0x2000,[MODELS['PHI_4']]:0x1000,'azure-ai-grok3':0x2000,'azure-ai-deepseek-r1':0x2000,'azure-openai-gpt-5':0x2000,'azure-openai-gpt-4':0x2000,'azure-openai-gpt-4o':0x2000,[COMPACTION_CONFIG['COMPACTION_MODEL']]:0x2000,[COMPACTION_CONFIG['COMPACTION_MODEL_FALLBACK']]:0x2000,'autopilot-model-router':0x800};return _0x3b589f[_0x31ed59]||0x2000;}[a0_0x20d2a2(0x115)](_0x3432a1,_0x2a1224,_0x10d6c2,_0x18c9c6=COMPACTION_CONFIG[a0_0x20d2a2(0xe0)]){const _0x4754ec=a0_0x20d2a2;(_0x18c9c6<COMPACTION_CONFIG['MIN_THRESHOLD']||_0x18c9c6>COMPACTION_CONFIG['MAX_THRESHOLD'])&&(this[_0x4754ec(0xf4)]?.[_0x4754ec(0xf2)]('Invalid compaction threshold, using default',{'provided':_0x18c9c6,'default':COMPACTION_CONFIG['DEFAULT_THRESHOLD']}),_0x18c9c6=COMPACTION_CONFIG[_0x4754ec(0xe0)]);const requiredTokens=_0x3432a1+_0x2a1224,_0x56ee69=_0x18c9c6*_0x10d6c2,_0x373045=requiredTokens>=_0x56ee69;return this['logger']?.[_0x4754ec(0x10d)](_0x4754ec(0x118),{'currentTokens':_0x3432a1,'maxOutputTokens':_0x2a1224,'contextWindow':_0x10d6c2,'threshold':_0x18c9c6,'requiredTokens':requiredTokens,'thresholdTokens':_0x56ee69,'shouldTrigger':_0x373045,'utilizationPercent':(requiredTokens/_0x10d6c2*0x64)['toFixed'](0x2)}),_0x373045;}['calculateTargetTokenCount'](_0x435e9e,_0x2560a9=COMPACTION_CONFIG['MAX_ACCEPTABLE_TOKEN_COUNT_AFTER']){const _0x2103e5=a0_0x20d2a2;return Math[_0x2103e5(0x112)](_0x435e9e*_0x2560a9);}['validateCompaction'](_0x4c9074,_0x2f5586,_0x1b6c26){const _0x278a5e=a0_0x20d2a2,_0x1467d7=(_0x4c9074-_0x2f5586)/_0x4c9074*0x64,_0x170e05=this[_0x278a5e(0xf1)](_0x1b6c26),_0x826480=_0x2f5586>_0x170e05,_0x1931cc=_0x1467d7>=COMPACTION_CONFIG[_0x278a5e(0xe5)],_0x1db940=!_0x826480&&_0x1931cc;return this['logger']?.['info']('Compaction\x20validation',{'originalTokens':_0x4c9074,'compactedTokens':_0x2f5586,'reductionPercent':_0x1467d7[_0x278a5e(0x119)](0x2),'targetTokens':_0x170e05,'exceedsTarget':_0x826480,'sufficientReduction':_0x1931cc,'valid':_0x1db940}),{'valid':_0x1db940,'reductionPercent':_0x1467d7,'exceedsTarget':_0x826480,'sufficientReduction':_0x1931cc,'targetTokens':_0x170e05,'compactedTokens':_0x2f5586,'originalTokens':_0x4c9074};}[a0_0x20d2a2(0x102)](_0x4c10c7=null){const _0x25e46d=a0_0x20d2a2;if(_0x4c10c7){for(const [_0x1a1db3,_0x5ae86a]of this['tokenCache']['entries']()){_0x5ae86a[_0x25e46d(0x10b)]===_0x4c10c7&&this['tokenCache']['delete'](_0x1a1db3);}this['logger']?.[_0x25e46d(0x10d)]('Token\x20cache\x20cleared\x20for\x20model',{'model':_0x4c10c7});}else this['tokenCache']['clear'](),this[_0x25e46d(0xf4)]?.['debug']('Token\x20cache\x20cleared\x20completely');}async['_getEncoder'](_0x2bf060){const _0x3e71a2=a0_0x20d2a2,_0x482a36=this[_0x3e71a2(0xe2)][_0x2bf060]||'gpt-4';if(this[_0x3e71a2(0xe4)][_0x3e71a2(0xfd)](_0x482a36))return this[_0x3e71a2(0xe4)]['get'](_0x482a36);const _0x421732=encoding_for_model(_0x482a36);return this['encoders']['set'](_0x482a36,_0x421732),this[_0x3e71a2(0xf4)]?.[_0x3e71a2(0x10d)]('Created\x20tiktoken\x20encoder',{'model':_0x2bf060,'tiktokenModel':_0x482a36}),_0x421732;}[a0_0x20d2a2(0x10f)](_0x1ad9d0){const _0x136671=a0_0x20d2a2;if(!_0x1ad9d0||typeof _0x1ad9d0!==_0x136671(0x114))return 0x0;return Math[_0x136671(0xea)](_0x1ad9d0[_0x136671(0xee)]/COMPACTION_CONFIG['CHARS_PER_TOKEN_ESTIMATE']);}['_getCachedTokenCount'](_0x263102,_0x57eec1){const _0x1f9807=a0_0x20d2a2,_0x4d229c=this['_getCacheKey'](_0x263102,_0x57eec1),_0x4cee32=this[_0x1f9807(0xeb)]['get'](_0x4d229c);if(!_0x4cee32)return null;const _0x3012f9=Date['now']();if(_0x3012f9-_0x4cee32['timestamp']>COMPACTION_CONFIG['TOKEN_COUNT_CACHE_TTL_MS'])return this[_0x1f9807(0xeb)]['delete'](_0x4d229c),null;return _0x4cee32['count'];}[a0_0x20d2a2(0x109)](_0x20de2e,_0x35335a,_0x368f41){const _0x1539ab=a0_0x20d2a2,_0x4617c8=this[_0x1539ab(0x108)](_0x20de2e,_0x35335a);this[_0x1539ab(0xeb)]['set'](_0x4617c8,{'count':_0x368f41,'model':_0x35335a,'timestamp':Date[_0x1539ab(0xf6)]()});if(this['tokenCache']['size']>0x3e8){const _0x4d34bb=Array['from'](this['tokenCache']['entries']());_0x4d34bb[_0x1539ab(0x103)]((_0x15034a,_0x4060eb)=>_0x15034a[0x1]['timestamp']-_0x4060eb[0x1]['timestamp']);const _0x34aa2c=Math[_0x1539ab(0x112)](_0x4d34bb['length']*0.2);for(let _0x54a624=0x0;_0x54a624<_0x34aa2c;_0x54a624++){this['tokenCache']['delete'](_0x4d34bb[_0x54a624][0x0]);}}}['_getCacheKey'](_0x389de0,_0x19032d){const _0x252a1b=this['_simpleHash'](_0x389de0);return _0x19032d+':'+_0x252a1b;}['_simpleHash'](_0x211ac2){let _0x41e60f=0x0;for(let _0x3ec372=0x0;_0x3ec372<_0x211ac2['length'];_0x3ec372++){const _0x16e998=_0x211ac2['charCodeAt'](_0x3ec372);_0x41e60f=(_0x41e60f<<0x5)-_0x41e60f+_0x16e998,_0x41e60f=_0x41e60f&_0x41e60f;}return _0x41e60f['toString'](0x24);}['_getMessageFormattingOverhead'](_0x7bd232){const _0x2d7607=a0_0x20d2a2;if(_0x7bd232['includes'](_0x2d7607(0x111))||_0x7bd232[_0x2d7607(0x117)](_0x2d7607(0xec)))return 0xa;return 0x5;}['_getConversationOverhead'](_0x2551f6){const _0x5efa6b=0x32,_0xb2e2db=_0x2551f6*0x2;return _0x5efa6b+_0xb2e2db;}async[a0_0x20d2a2(0x106)](){const _0xc028d2=a0_0x20d2a2;for(const [_0x2451b9,_0x3bfc8b]of this['encoders'][_0xc028d2(0x100)]()){try{_0x3bfc8b[_0xc028d2(0xef)](),this[_0xc028d2(0xf4)]?.['debug']('Freed\x20tiktoken\x20encoder',{'model':_0x2451b9});}catch(_0x5bc127){this['logger']?.[_0xc028d2(0xf2)](_0xc028d2(0xfb),{'model':_0x2451b9,'error':_0x5bc127['message']});}}this[_0xc028d2(0xe4)][_0xc028d2(0xf3)](),this[_0xc028d2(0xeb)][_0xc028d2(0xf3)](),this['logger']?.[_0xc028d2(0x116)]('TokenCountingService\x20cleaned\x20up');}}export default TokenCountingService;
@@ -1 +1 @@
1
- const a0_0x218b07=a0_0xc2b4;(function(_0xe3d8b0,_0x1973e6){const _0x2c8a3c=a0_0xc2b4,_0xe7d6f0=_0xe3d8b0();while(!![]){try{const _0x1cd53e=-parseInt(_0x2c8a3c(0x122))/0x1*(-parseInt(_0x2c8a3c(0xe5))/0x2)+parseInt(_0x2c8a3c(0x10e))/0x3+parseInt(_0x2c8a3c(0xf2))/0x4+-parseInt(_0x2c8a3c(0xed))/0x5*(parseInt(_0x2c8a3c(0x12d))/0x6)+-parseInt(_0x2c8a3c(0x160))/0x7*(-parseInt(_0x2c8a3c(0xc9))/0x8)+-parseInt(_0x2c8a3c(0xca))/0x9*(parseInt(_0x2c8a3c(0x119))/0xa)+parseInt(_0x2c8a3c(0xe9))/0xb;if(_0x1cd53e===_0x1973e6)break;else _0xe7d6f0['push'](_0xe7d6f0['shift']());}catch(_0x1f6f0a){_0xe7d6f0['push'](_0xe7d6f0['shift']());}}}(a0_0x1927,0x6ff78));import{BaseTool}from'./baseTool.js';function a0_0xc2b4(_0x10d38f,_0x3bb43b){_0x10d38f=_0x10d38f-0xc9;const _0x1927e2=a0_0x1927();let _0xc2b453=_0x1927e2[_0x10d38f];if(a0_0xc2b4['XUiNpc']===undefined){var _0x575566=function(_0x4c9a22){const _0x37e701='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4aff60='',_0x28df49='';for(let _0x1fd705=0x0,_0x5a0f15,_0x3a201f,_0x3d3e78=0x0;_0x3a201f=_0x4c9a22['charAt'](_0x3d3e78++);~_0x3a201f&&(_0x5a0f15=_0x1fd705%0x4?_0x5a0f15*0x40+_0x3a201f:_0x3a201f,_0x1fd705++%0x4)?_0x4aff60+=String['fromCharCode'](0xff&_0x5a0f15>>(-0x2*_0x1fd705&0x6)):0x0){_0x3a201f=_0x37e701['indexOf'](_0x3a201f);}for(let _0x23d5ff=0x0,_0x529765=_0x4aff60['length'];_0x23d5ff<_0x529765;_0x23d5ff++){_0x28df49+='%'+('00'+_0x4aff60['charCodeAt'](_0x23d5ff)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x28df49);};a0_0xc2b4['tFtNOD']=_0x575566,a0_0xc2b4['UEXBAY']={},a0_0xc2b4['XUiNpc']=!![];}const _0x135f39=_0x1927e2[0x0],_0x2aacf5=_0x10d38f+_0x135f39,_0x2da019=a0_0xc2b4['UEXBAY'][_0x2aacf5];return!_0x2da019?(_0xc2b453=a0_0xc2b4['tFtNOD'](_0xc2b453),a0_0xc2b4['UEXBAY'][_0x2aacf5]=_0xc2b453):_0xc2b453=_0x2da019,_0xc2b453;}import{promises as a0_0x4aff60}from'fs';import a0_0x28df49 from'path';function a0_0x1927(){const _0x2c8505=['z2v0','Dg9ju09tDhjPBMC','D2vIu2vYDMvY','zxjYB3i','ywDLBNqTy29TBxvUAwnHDgLVBG','y3vYCMvUDe1VzgvS','B2jQzwn0','lI4U','BgvUz3rO','w14+xsO+kc4QpYK8xc8','uMvJAxbPzw50igfNzw50khmPig5VDcbMB3vUzdOG','x2LUAxrPywXPEMvtDg9YywDL','cIOQuMvXDwLYzxmGuMvWBhK6kIOG','Bwf4uMvJAxbPzw50C1bLCK1LC3nHz2u','ihjLCgXPzxmGCgvYihrOCMvHzaOTie1HEca','y2vPBa','y2fWywjPBgL0AwvZ','DhjPBq','Bg9N','CMvJAxbPzw50CW','BwvZC2fNzq','D2vIlxnLC3nPB24','x2jYB2fKy2fZDfrVvuK','C2vZC2LVBKLK','igzPBguOCYK','B3jJAgvZDhjHDg9Y','BwvZC2fNzunVDw50','yMfZzw5HBwu','C2L6zq','ywrK','8j+tQcbozxCGBwvZC2fNzsbMCM9Tia','ig1PBNv0zxmk','C3rHCNrZv2L0Aa','n1Peshj0AG','ChjPB3jPDhK','nte1mJGYngXxt0rZuG','nZa0mtuZn0Lntfryqq','DhLWzq','ywn0Aw9UCW','qxzHAwXHyMXLigfNzw50CYb5B3uGy2fUig1LC3nHz2u6cG','twf4Aw11Bsa','wwvZ','z2v0vw5YzxbSAwvKtwvZC2fNzxm','y29UDMvYC2f0Aw9Uswq','BM93','x2DLBMvYyxrLqxr0ywnOBwvUDeLK','y29UDMvYC2f0Aw9UCW','zw50CMLLCW','q29UDMvYC2f0Aw9Uig5VDcbMB3vUzdOG','z2v0vgLTzq','BMfTzq','q29UDMvYC2f0Aw9UigrLChrOigXPBwL0ihjLywnOzwqGka','Bg94Awfxzwjtzxj2zxi','CgvYC2LZDefNzw50u3rHDgu','zw5Kzwq','CgfYC2u','z2v0rgvZy3jPChrPB24','x3bYB2nLC3nbDhrHy2HTzw50CW','x3bHCNnLuMvJAxbPzw50CW','CMvWBgLLCW','BwvZC2fNzvbYB2nLC3nVCG','CMfUzg9TqNL0zxm','y29UzMLN','mZeWmZy2uKn4DejO','Aw5JBhvKzxm','CMvZB2X2zwq','CMvWBgLLza','nda1nta1mvrUwLzhuq','Dg9tDhjPBMC','CMvJAxbPzw50swq','CgfYDgLJAxbHBNrZ','mty5nwDIt2fjrq','CYbZAw5JzsbSyxn0ig1LC3nHz2u','BwvZC2fNzxm','BgfZDfvWzgf0zwq','Bwf4qxr0ywnOBwvUDfnPEMu','mJqZotiZnM9VwgPbyq','Dg9vChbLCKnHC2u','CMvWBgfJzq','zxHLy3v0zq','x2DLDe1LC3nHz2vezxb0Aa','ywn0AxzL','C2vUDa','ywDLBNrjza','ywn0Aw9U','ChvZAa','ywDLBNrqB29S','Agv4','BwfYAY1JB252zxjZyxrPB24Tzw5Kzwq','CMvXDwLYzxmTCMvWBhK','y29UDI0','ks4GugXLyxnLihn0yxj0igeGBMv3ignVBNzLCNnHDgLVBI4','Bwf4qxr0ywnOBwvUDhnqzxjnzxnZywDL','CgfYC2vqyxjHBwv0zxjZ','AgfZ','C29YDa','BwfYAY1YzxnVBhzLza','twvZC2fNzsbZzw50ihn1y2nLC3nMDwXSEq','rMfPBgvKihrVigLUAxrPywXPEMuGBwvZC2fNzsbZDg9YywDLoG','BwvZC2fNzs1Pza','ywDLBNrdB252zxjZyxrPB25Z','BwfYA0nVBNzLCNnHDgLVBKvUzgvK','CMvJAxbPzw50','BgfZDfr5Cgu','otGWmte4zKTez0XH','DgLTzxn0yw1W','x2DLBMvYyxrLtwvZC2fNzuLK','BwfW','z2v0qwDLBNq','x25VDgLMEvjLy2LWAwvUDhm','C3rHDhvZ','C2vUzgvYtMfTzq','AM9PBG','Aw50zxjbz2vUDfrYywnRAw5N','BgfZDefJDgL2Axr5','mtb0uxf6Aeq','Bwf4q29UDMvYC2f0Aw9UrgvWDgG','Bwf4','zw5KvgLTzq','q29UDMvYC2f0Aw9UieLeigLZihjLCxvPCMvK','C3vIAMvJDa','zMLSDgvY','x2HHC0fNzw50uMvWBgLLza','Cgf0Aa','mvHTuMPJBW','ywDLBNrjBMjVEgvZ','C2vUzgvY','C3rVCMfNzurPCG','BwTKAxi','zNvSBa','CMvWBhKTDg8TBwvZC2fNzq','zgvSzxrL','C2vUze1LC3nHz2u','y29UDgvUDa','CMvJzwL2zwq','mtuYodjyze5wz3m','AxnbCNjHEq','y2XLyw51Ca','CMvXDwLYzxnszxbSEq','kqOQkLn1yMPLy3q6kIOG','yNjVywrJyxn0vg9tzxnZAw9U','CMvHC29U','Dhj1zq','t3jPz2LUywWGBwvZC2fNzsbjrcbHBMqGCMvWBhKGy29UDgvUDcbHCMuGCMvXDwLYzwq','BgLZDefJDgL2zufNzw50CW','C3vIC3rYAw5N','uMu6ia','C2v0','BgfZDfnLBNq','rMfPBgvKihrVigjYB2fKy2fZDcbHz2vUDcbTzxnZywDLihrVifvjoG','zw5KuMvHC29U','ywDLBNrnzxnZywDLq291BNrZ','yxr0ywnOBwvUDhm'];a0_0x1927=function(){return _0x2c8505;};return a0_0x1927();}import a0_0x1fd705 from'crypto';class AgentCommunicationTool extends BaseTool{constructor(_0x5a0f15={}){const _0x295559=a0_0xc2b4;super('agentcommunication','Agent\x20Communication','communication'),this[_0x295559(0xe4)]={'maxConversationDepth':_0x5a0f15['maxConversationDepth']||0xa,'maxRecipientsPerMessage':_0x5a0f15[_0x295559(0x14c)]||0x3,'maxAttachmentSize':_0x5a0f15[_0x295559(0xf1)]||0xa*0x400*0x400,'maxAttachmentsPerMessage':_0x5a0f15[_0x295559(0x102)]||0x5,'conversationTimeout':_0x5a0f15['conversationTimeout']||0x36ee80,'messageRetentionPeriod':_0x5a0f15['messageRetentionPeriod']||0x5265c00,'enableBroadcast':_0x5a0f15['enableBroadcast']||![],'storageDir':_0x5a0f15[_0x295559(0x125)]||'.loxia-messages'},this[_0x295559(0xef)]=new Map(),this[_0x295559(0xd4)]=new Map(),this[_0x295559(0x123)]=new Map(),this['agentConversations']=new Map(),this['conversationDepths']=new Map(),this['lastActivityTimes']=new Map(),this['agentMessageCounts']=new Map(),this[_0x295559(0x14a)]();}[a0_0x218b07(0xde)](){const _0x31baf1=a0_0x218b07;return('\x0aAgent\x20Communication\x20Tool:\x20Enables\x20communication\x20between\x20active\x20agents.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentcommunication\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22action-name\x22,\x20...params}]\x0a}\x0a```\x0a\x0aACTIONS:\x0a-\x20get-available-agents:\x20List\x20active\x20agents\x0a-\x20send-message:\x20Send\x20message\x20(recipient,\x20subject,\x20message,\x20priority,\x20requiresReply)\x0a-\x20reply-to-message:\x20Reply\x20to\x20message\x20(messageId,\x20message)\x0a-\x20get-unreplied-messages:\x20Get\x20pending\x20messages\x0a-\x20mark-conversation-ended:\x20End\x20conversation\x20(conversationId,\x20reason)\x0a\x0aEXAMPLES:\x0a\x0aGet\x20available\x20agents:\x0a```json\x0a{\x22toolId\x22:\x20\x22agentcommunication\x22,\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22get-available-agents\x22}]}\x0a```\x0a\x0aSend\x20a\x20message:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentcommunication\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22type\x22:\x20\x22send-message\x22,\x0a\x20\x20\x20\x20\x22recipient\x22:\x20\x22agent-fullstack-developer-1234567890123\x22,\x0a\x20\x20\x20\x20\x22subject\x22:\x20\x22Code\x20review\x20needed\x22,\x0a\x20\x20\x20\x20\x22message\x22:\x20\x22Please\x20review\x20the\x20authentication\x20module\x22,\x0a\x20\x20\x20\x20\x22priority\x22:\x20\x22normal\x22,\x0a\x20\x20\x20\x20\x22requiresReply\x22:\x20true\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aReply\x20to\x20a\x20message:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentcommunication\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22type\x22:\x20\x22reply-to-message\x22,\x0a\x20\x20\x20\x20\x22messageId\x22:\x20\x22msg-789\x22,\x0a\x20\x20\x20\x20\x22message\x22:\x20\x22Review\x20complete.\x20All\x20issues\x20addressed.\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20Use\x20full\x20agent\x20ID\x20from\x20get-available-agents\x20as\x20recipient.\x0a\x0aLIMITS:\x0a-\x20Max\x20'+this['config'][_0x31baf1(0x11a)]+_0x31baf1(0x14d)+this[_0x31baf1(0xe4)][_0x31baf1(0x14c)]+'\x20recipients\x20per\x20message\x0a-\x20Conversations\x20expire\x20after\x20'+this['config']['conversationTimeout']/0xea60+_0x31baf1(0x15e))[_0x31baf1(0x150)]();}[a0_0x218b07(0x103)](_0x3a201f){const _0xc3a981=a0_0x218b07;if(typeof _0x3a201f===_0xc3a981(0x145)&&_0x3a201f!==null){if(_0x3a201f[_0xc3a981(0xcc)]&&Array['isArray'](_0x3a201f['actions'])&&_0x3a201f[_0xc3a981(0xcc)][_0xc3a981(0x147)]>0x0){const _0x3d3e78=_0x3a201f['actions'][0x0];return{'action':_0x3d3e78['type'],..._0x3d3e78};}else{if(_0x3a201f[_0xc3a981(0xfa)]||_0x3a201f['type'])return{'action':_0x3a201f[_0xc3a981(0xfa)]||_0x3a201f[_0xc3a981(0xcb)],..._0x3a201f};}return _0x3a201f;}if(typeof _0x3a201f==='string'){if(_0x3a201f[_0xc3a981(0x150)]()[_0xc3a981(0x15f)]('{'))try{const _0x1e6ebe=JSON[_0xc3a981(0xdd)](_0x3a201f);return this['parseParameters'](_0x1e6ebe);}catch(_0x1273fc){}const _0x23d5ff={},_0x529765=_0x3a201f['match'](/<action[^>]*>([^<]+)<\/action>/);_0x529765&&(_0x23d5ff['action']=_0x529765[0x1][_0xc3a981(0x150)]());const _0x487e20=[_0xc3a981(0x10c),_0xc3a981(0x152),'subject',_0xc3a981(0x153),_0xc3a981(0x13e),'priority',_0xc3a981(0xff),_0xc3a981(0x109),'cc-recipients','include-low-priority','conversation-id','reason',_0xc3a981(0x106)];for(const _0x2fa48c of _0x487e20){const _0x5ace4e=new RegExp('<'+_0x2fa48c[_0xc3a981(0xf4)]('-','\x5c-')+_0xc3a981(0x148)+_0x2fa48c[_0xc3a981(0xf4)]('-','\x5c-')+'>','s'),_0x6abe4=_0x3a201f['match'](_0x5ace4e);if(_0x6abe4){let _0x2cdb3a=_0x6abe4[0x1][_0xc3a981(0x150)]();if(_0x2cdb3a[_0xc3a981(0x15f)]('[')||_0x2cdb3a['startsWith']('{')||_0x2cdb3a===_0xc3a981(0x134)||_0x2cdb3a==='false')try{_0x2cdb3a=JSON['parse'](_0x2cdb3a);}catch{}const _0x1b3086=_0x2fa48c[_0xc3a981(0xf4)](/-(.)/g,(_0x1e61ee,_0x677600)=>_0x677600[_0xc3a981(0xf3)]());_0x23d5ff[_0x1b3086]=_0x2cdb3a;}}const _0x3c98fa=_0x3a201f['match'](/<action([^>]*)>([^<]+)<\/action>/);if(_0x3c98fa&&_0x3c98fa[0x1]){const _0x5e632c=_0x3c98fa[0x1]['matchAll'](/([\w-]+)=["']([^"']+)["']/g);for(const _0x128e36 of _0x5e632c){const _0x48ec77=_0x128e36[0x1][_0xc3a981(0xf4)](/-(.)/g,(_0x210403,_0x1462f7)=>_0x1462f7[_0xc3a981(0xf3)]());_0x23d5ff[_0x48ec77]=_0x128e36[0x2];}}return _0x23d5ff;}return _0x3a201f||{};}async[a0_0x218b07(0xf5)](_0x37354d={},_0xf512={}){const _0x50fa77=a0_0x218b07,{action:_0x4d181a}=_0x37354d;if(!_0x4d181a)throw new Error('Action\x20parameter\x20is\x20required');const _0x2a0178=_0xf512[_0x50fa77(0xf9)];if(!_0x2a0178)throw new Error('Agent\x20ID\x20is\x20required\x20in\x20context');switch(_0x4d181a['toLowerCase']()){case'get-available-agents':return await this['getAvailableAgents'](_0x2a0178,_0x37354d,_0xf512);case'send-message':return await this['sendMessage'](_0x2a0178,_0x37354d,_0xf512);case _0x50fa77(0x128):return await this['replyToMessage'](_0x2a0178,_0x37354d,_0xf512);case'get-unreplied-messages':return await this[_0x50fa77(0xd0)](_0x2a0178,_0x37354d,_0xf512);case _0x50fa77(0xfe):return await this[_0x50fa77(0x10b)](_0x2a0178,_0x37354d,_0xf512);default:throw new Error('Unknown\x20action:\x20'+_0x4d181a);}}async['getAvailableAgents'](_0x19db74,_0x49c914,_0xda1bf){const _0x219baf=a0_0x218b07;try{const _0xceddc1=_0xda1bf['agentPool'];if(!_0xceddc1)throw new Error('Agent\x20pool\x20not\x20available\x20in\x20context');const _0x520945=await _0xceddc1['listActiveAgents'](),_0x4b505d=_0x520945[_0x219baf(0x11f)](_0xa24e0b=>_0xa24e0b['id']!==_0x19db74&&!_0xa24e0b['isPaused'])['map'](_0x5edb73=>({'id':_0x5edb73['id'],'name':_0x5edb73[_0x219baf(0xd8)],'type':_0x5edb73['type'],'capabilities':_0x5edb73[_0x219baf(0x14f)],'status':_0x5edb73['status'],'messageStats':this['agentMessageCounts'][_0x219baf(0x13f)](_0x5edb73['id'])||{'sent':0x0,'received':0x0},'activeConversations':(this[_0x219baf(0x10a)][_0x219baf(0x13f)](_0x5edb73['id'])||new Set())['size']}));return{'success':!![],'agents':_0x4b505d,'totalActive':_0x4b505d[_0x219baf(0x147)],'timestamp':new Date()[_0x219baf(0x140)]()};}catch(_0x563fc5){return{'success':![],'error':_0x563fc5['message']};}}async[a0_0x218b07(0x12a)](_0x5d33d3,_0x5491a3,_0x431111){const _0x527a89=a0_0x218b07;try{const {recipient:_0x47b62e,recipients:_0x3fc53e,subject:_0x1bb7b3,message:_0xc8d1e3,attachments:_0x1830e8,priority:priority='normal','requires-reply':requiresReply=![]}=_0x5491a3;if(!_0x1bb7b3||!_0xc8d1e3)throw new Error('Subject\x20and\x20message\x20are\x20required');const _0x36993c=this['_parseRecipients'](_0x47b62e,_0x3fc53e);if(_0x36993c['length']===0x0)throw new Error('At\x20least\x20one\x20recipient\x20is\x20required');if(_0x36993c[_0x527a89(0x147)]>this[_0x527a89(0xe4)]['maxRecipientsPerMessage'])throw new Error('Maximum\x20'+this[_0x527a89(0xe4)][_0x527a89(0x14c)]+'\x20recipients\x20allowed');const _0x1009a3=_0x431111[_0x527a89(0xfc)],_0x3a8686=await _0x1009a3[_0x527a89(0x112)](_0x5d33d3);if(!_0x3a8686)throw new Error('Sender\x20agent\x20not\x20found');const _0x1fddad=[];for(const _0x49c8b4 of _0x36993c){const _0x14814d=await this['_canSendMessage'](_0x3a8686,_0x49c8b4,_0x431111);!_0x14814d['allowed']&&_0x1fddad[_0x527a89(0xfb)]({'recipientId':_0x49c8b4,'reason':_0x14814d[_0x527a89(0x133)],'waitUntil':_0x14814d['waitUntil']});}if(_0x1fddad[_0x527a89(0x147)]>0x0){const _0x3a0e4a=Math[_0x527a89(0x11b)](..._0x1fddad[_0x527a89(0x111)](_0x551835=>_0x551835['waitUntil']||0x0)),_0x12f521=new Date(_0x3a0e4a);await _0x1009a3['updateAgent'](_0x5d33d3,{'delayEndTime':_0x12f521['toISOString']()});const _0x58eeb3=Math[_0x527a89(0x14e)]((_0x3a0e4a-Date['now']())/0x3e8);return{'success':!![],'delayed':!![],'delayUntil':_0x12f521[_0x527a89(0x140)](),'delaySeconds':_0x58eeb3,'message':'Waiting\x20'+_0x58eeb3+'s\x20before\x20next\x20message.\x20Recipients\x20need\x20time\x20to\x20respond.','blockedRecipients':_0x1fddad[_0x527a89(0x111)](_0x3509dc=>({'recipientId':_0x3509dc[_0x527a89(0xeb)],'reason':_0x3509dc[_0x527a89(0x133)]}))};}const _0x326fdf={},_0x431c29=[];for(const _0x4924f4 of _0x36993c){const _0x2905fd=await _0x1009a3[_0x527a89(0x112)](_0x4924f4);!_0x2905fd?_0x431c29[_0x527a89(0xfb)](_0x4924f4):_0x326fdf[_0x4924f4]=_0x2905fd[_0x527a89(0xd8)];}if(_0x431c29['length']>0x0){const _0x2d8228=await _0x1009a3[_0x527a89(0x136)](),_0x52fc2a=_0x2d8228['filter'](_0x593f03=>_0x593f03['id']!==_0x5d33d3&&!_0x593f03['isPaused'])[_0x527a89(0x111)](_0x4e9765=>'-\x20'+_0x4e9765['name']+'\x20(ID:\x20'+_0x4e9765['id']+')')['join']('\x0a');return{'success':![],'error':_0x527a89(0x149)+_0x431c29[_0x527a89(0x116)](',\x20'),'suggestion':_0x527a89(0xcd)+_0x52fc2a,'availableAgents':_0x2d8228[_0x527a89(0x111)](_0x4e2462=>({'id':_0x4e2462['id'],'name':_0x4e2462['name'],'capabilities':_0x4e2462['capabilities']}))};}const _0x164407=_0x3a8686?_0x3a8686['name']:_0x5d33d3,processedAttachments=await this[_0x527a89(0xdf)](_0x1830e8,_0x5d33d3),_0x173283=this['_generateMessageId'](),_0x58b1a0=this['_generateConversationId'](),_0x39ab63=new Date()['toISOString'](),_0x176a85={'id':_0x173283,'conversationId':_0x58b1a0,'sender':_0x5d33d3,'senderName':_0x164407,'recipients':_0x36993c,'recipientNames':_0x326fdf,'subject':_0x1bb7b3,'content':_0xc8d1e3,'attachments':processedAttachments,'priority':priority,'requiresReply':requiresReply,'timestamp':_0x39ab63,'status':_0x527a89(0xf8),'replies':[],'metadata':{'depth':0x0,'isRoot':!![]}};this[_0x527a89(0xef)]['set'](_0x173283,_0x176a85),this['conversations']['set'](_0x58b1a0,{'id':_0x58b1a0,'rootMessageId':_0x173283,'participants':[_0x5d33d3,..._0x36993c],'startTime':_0x39ab63,'lastActivity':_0x39ab63,'status':_0x527a89(0xf7),'messageCount':0x1});for(const _0x29d560 of _0x36993c){!this[_0x527a89(0x123)][_0x527a89(0x104)](_0x29d560)&&this[_0x527a89(0x123)]['set'](_0x29d560,new Set()),this['agentInboxes'][_0x527a89(0x13f)](_0x29d560)[_0x527a89(0x15c)](_0x173283),!this['agentConversations'][_0x527a89(0x104)](_0x29d560)&&this[_0x527a89(0x10a)]['set'](_0x29d560,new Set()),this[_0x527a89(0x10a)][_0x527a89(0x13f)](_0x29d560)['add'](_0x58b1a0);}!this[_0x527a89(0x10a)][_0x527a89(0x104)](_0x5d33d3)&&this[_0x527a89(0x10a)]['set'](_0x5d33d3,new Set());this[_0x527a89(0x10a)]['get'](_0x5d33d3)['add'](_0x58b1a0),this['_updateMessageCounts'](_0x5d33d3,'sent');for(const _0x1652bd of _0x36993c){this['_updateMessageCounts'](_0x1652bd,'received');}for(const _0x1e53b5 of _0x36993c){await this['_updateConversationTracking'](_0x5d33d3,_0x1e53b5,'sent',_0x431111);}return await this['_notifyRecipients'](_0x176a85,_0x431111),await this[_0x527a89(0x155)](_0x176a85,'agent-message-sent',_0x431111),{'success':!![],'messageId':_0x173283,'conversationId':_0x58b1a0,'recipients':_0x36993c,'timestamp':_0x39ab63,'message':_0x527a89(0x107)};}catch(_0x2ecd44){return{'success':![],'error':_0x2ecd44['message']};}}async['replyToMessage'](_0x3a62ac,_0x791369,_0x3aeaa8){const _0x4123a7=a0_0x218b07;try{const {'message-id':_0x9eb1d0,message:_0x210022,'cc-recipients':_0x3bf8fa,attachments:_0x2efcea,'mark-resolved':_0x3c1c84=![]}=_0x791369;if(!_0x9eb1d0||!_0x210022)throw new Error(_0x4123a7(0x135));const _0x35e5f6=this[_0x4123a7(0xef)][_0x4123a7(0x13f)](_0x9eb1d0);if(!_0x35e5f6)throw new Error('Original\x20message\x20not\x20found:\x20'+_0x9eb1d0);const _0x4bac51=_0x35e5f6['sender']===_0x3a62ac||_0x35e5f6[_0x4123a7(0x152)][_0x4123a7(0xe6)](_0x3a62ac);if(!_0x4bac51)throw new Error('You\x20are\x20not\x20a\x20participant\x20in\x20this\x20conversation');const _0x548e29=this['conversations'][_0x4123a7(0x13f)](_0x35e5f6['conversationId']),_0x5a0056=this['_getConversationDepth'](_0x35e5f6['conversationId']);if(_0x5a0056>=this['config']['maxConversationDepth'])return{'success':![],'error':_0x4123a7(0xd9)+this[_0x4123a7(0xe4)][_0x4123a7(0x11a)]+_0x4123a7(0x101),'suggestion':'Consider\x20marking\x20this\x20conversation\x20as\x20ended\x20and\x20starting\x20fresh\x20if\x20needed.'};let _0x1a7ed6=[_0x35e5f6['sender']];_0x35e5f6[_0x4123a7(0x124)]===_0x3a62ac&&(_0x1a7ed6=_0x35e5f6[_0x4123a7(0x152)]);if(_0x3bf8fa){const _0xbe4811=this[_0x4123a7(0xe0)](null,_0x3bf8fa);_0x1a7ed6=[...new Set([..._0x1a7ed6,..._0xbe4811])];}_0x1a7ed6=_0x1a7ed6['filter'](_0x590725=>_0x590725!==_0x3a62ac);if(_0x1a7ed6['length']>this['config']['maxRecipientsPerMessage'])throw new Error('Maximum\x20'+this['config']['maxRecipientsPerMessage']+'\x20recipients\x20allowed');const _0x59e07f=_0x3aeaa8['agentPool'],_0x5c4d5d=await _0x59e07f[_0x4123a7(0x112)](_0x3a62ac),_0x5f0a28=_0x5c4d5d?_0x5c4d5d[_0x4123a7(0xd8)]:_0x3a62ac,_0x797607={};for(const _0x5ed7a7 of _0x1a7ed6){const _0x3216bb=await _0x59e07f['getAgent'](_0x5ed7a7);_0x3216bb&&(_0x797607[_0x5ed7a7]=_0x3216bb['name']);}const processedAttachments=await this['_processAttachments'](_0x2efcea,_0x3a62ac),_0x202e4f=this[_0x4123a7(0x110)](),_0x64b682=new Date()['toISOString'](),_0x236572={'id':_0x202e4f,'conversationId':_0x35e5f6[_0x4123a7(0xd1)],'sender':_0x3a62ac,'senderName':_0x5f0a28,'recipients':_0x1a7ed6,'recipientNames':_0x797607,'subject':_0x4123a7(0x138)+_0x35e5f6[_0x4123a7(0x11e)],'content':_0x210022,'attachments':processedAttachments,'priority':_0x35e5f6[_0x4123a7(0x161)],'requiresReply':!_0x3c1c84,'timestamp':_0x64b682,'status':'sent','replies':[],'metadata':{'depth':_0x5a0056+0x1,'isRoot':![],'inReplyTo':_0x9eb1d0}};this[_0x4123a7(0xef)][_0x4123a7(0x139)](_0x202e4f,_0x236572),_0x35e5f6['replies'][_0x4123a7(0xfb)](_0x202e4f),_0x548e29[_0x4123a7(0x118)]=_0x64b682,_0x548e29[_0x4123a7(0x159)]++;_0x3c1c84&&(_0x548e29['status']=_0x4123a7(0xe7));for(const _0xd1487c of _0x1a7ed6){!this['agentInboxes'][_0x4123a7(0x104)](_0xd1487c)&&this['agentInboxes'][_0x4123a7(0x139)](_0xd1487c,new Set()),this['agentInboxes'][_0x4123a7(0x13f)](_0xd1487c)['add'](_0x202e4f);}this['_updateMessageCounts'](_0x3a62ac,_0x4123a7(0xf8));for(const _0x2b64b6 of _0x1a7ed6){this['_updateMessageCounts'](_0x2b64b6,_0x4123a7(0x12c));}for(const _0x63c518 of _0x1a7ed6){await this['_updateConversationTracking'](_0x3a62ac,_0x63c518,_0x4123a7(0xe8),_0x3aeaa8);}return await this[_0x4123a7(0x113)](_0x236572,_0x3aeaa8),await this[_0x4123a7(0x155)](_0x236572,'agent-message-reply',_0x3aeaa8),{'success':!![],'messageId':_0x202e4f,'conversationId':_0x35e5f6[_0x4123a7(0xd1)],'recipients':_0x1a7ed6,'depth':_0x5a0056+0x1,'timestamp':_0x64b682,'conversationStatus':_0x548e29['status']};}catch(_0x253ff4){return{'success':![],'error':_0x253ff4['message']};}}async[a0_0x218b07(0xd0)](_0x2cdbf0,_0x5c4dca,_0x475eae){const _0xa7cbf=a0_0x218b07;try{const {'include-low-priority':_0x1b5688=![],'max-age-hours':_0x5c2aa8=0x18}=_0x5c4dca,_0x35c69c=this[_0xa7cbf(0x123)][_0xa7cbf(0x13f)](_0x2cdbf0)||new Set(),_0x42eec0=[],_0x49be6b=Date['now']()-_0x5c2aa8*0x36ee80;for(const _0x5b17bd of _0x35c69c){const _0x337827=this['messages'][_0xa7cbf(0x13f)](_0x5b17bd);if(!_0x337827)continue;if(new Date(_0x337827[_0xa7cbf(0x10f)])['getTime']()<_0x49be6b)continue;if(_0x337827['priority']==='low'&&!_0x1b5688)continue;if(_0x337827[_0xa7cbf(0x130)]){const _0x3cd661=this[_0xa7cbf(0x120)](_0x2cdbf0,_0x337827);if(!_0x3cd661){const _0x2e686b=this[_0xa7cbf(0xd4)][_0xa7cbf(0x13f)](_0x337827['conversationId']);_0x42eec0['push']({'messageId':_0x337827['id'],'conversationId':_0x337827['conversationId'],'sender':_0x337827[_0xa7cbf(0x124)],'subject':_0x337827[_0xa7cbf(0x11e)],'preview':_0x337827[_0xa7cbf(0x12b)][_0xa7cbf(0x137)](0x0,0x64)+_0xa7cbf(0x146),'priority':_0x337827[_0xa7cbf(0x161)],'timestamp':_0x337827[_0xa7cbf(0x10f)],'hasAttachments':_0x337827[_0xa7cbf(0x13e)][_0xa7cbf(0x147)]>0x0,'conversationStatus':_0x2e686b?.[_0xa7cbf(0x114)]||'unknown','depth':_0x337827['metadata']['depth']});}}}return _0x42eec0[_0xa7cbf(0x105)]((_0x23aa58,_0x4650bf)=>{const _0xa67d31=_0xa7cbf,_0x40fbda={'high':0x0,'normal':0x1,'low':0x2},_0x4081be=_0x40fbda[_0x23aa58['priority']]-_0x40fbda[_0x4650bf['priority']];if(_0x4081be!==0x0)return _0x4081be;return new Date(_0x4650bf[_0xa67d31(0x10f)])-new Date(_0x23aa58[_0xa67d31(0x10f)]);}),{'success':!![],'messages':_0x42eec0,'total':_0x42eec0[_0xa7cbf(0x147)],'inbox':{'total':_0x35c69c['size'],'activeConversations':(this[_0xa7cbf(0x10a)]['get'](_0x2cdbf0)||new Set())['size']}};}catch(_0x1d53ad){return{'success':![],'error':_0x1d53ad['message']};}}async['markConversationEnded'](_0x37ea8d,_0x3caca9,_0xbc36dc){const _0x243ed3=a0_0x218b07;try{const {'conversation-id':_0x901169,reason:reason='Conversation\x20ended\x20by\x20agent'}=_0x3caca9;if(!_0x901169)throw new Error(_0x243ed3(0x11d));const _0x415a12=this['conversations'][_0x243ed3(0x13f)](_0x901169);if(!_0x415a12)throw new Error(_0x243ed3(0xd6)+_0x901169);if(!_0x415a12[_0x243ed3(0xec)][_0x243ed3(0xe6)](_0x37ea8d))throw new Error('You\x20are\x20not\x20a\x20participant\x20in\x20this\x20conversation');_0x415a12['status']='ended',_0x415a12[_0x243ed3(0x11c)]=new Date()[_0x243ed3(0x140)](),_0x415a12[_0x243ed3(0x13c)]=reason,_0x415a12['endedBy']=_0x37ea8d;for(const _0x2e3b4b of _0x415a12[_0x243ed3(0xec)]){const _0xde331d=this[_0x243ed3(0x10a)]['get'](_0x2e3b4b);_0xde331d&&_0xde331d[_0x243ed3(0x129)](_0x901169);}return{'success':!![],'conversationId':_0x901169,'status':'ended','reason':reason,'timestamp':_0x415a12[_0x243ed3(0x11c)]};}catch(_0x1ac1a6){return{'success':![],'error':_0x1ac1a6[_0x243ed3(0x153)]};}}async['_initializeStorage'](){const _0x56140f=a0_0x218b07;try{await a0_0x4aff60['mkdir'](this['config']['storageDir'],{'recursive':!![]});const _0x15a2d4=a0_0x28df49['join'](this['config'][_0x56140f(0x125)],_0x56140f(0x13e));await a0_0x4aff60[_0x56140f(0x126)](_0x15a2d4,{'recursive':!![]});}catch(_0x12670d){console['error'](_0x56140f(0x108),_0x12670d);}}[a0_0x218b07(0xe0)](_0x16707c,_0x520673){const _0x1c77b7=a0_0x218b07;let _0x2c295f=[];_0x16707c&&_0x2c295f[_0x1c77b7(0xfb)](_0x16707c);if(_0x520673){if(typeof _0x520673==='string')try{const _0x367264=JSON['parse'](_0x520673);_0x2c295f=[..._0x2c295f,...Array[_0x1c77b7(0x12e)](_0x367264)?_0x367264:[_0x367264]];}catch{_0x2c295f[_0x1c77b7(0xfb)](_0x520673);}else Array['isArray'](_0x520673)&&(_0x2c295f=[..._0x2c295f,..._0x520673]);}return[...new Set(_0x2c295f)];}async[a0_0x218b07(0xdf)](_0x1c72df,_0x407054){const _0x4fc418=a0_0x218b07;if(!_0x1c72df)return[];let _0x249651=[];if(typeof _0x1c72df==='string')try{_0x249651=JSON[_0x4fc418(0xdd)](_0x1c72df);}catch{return[];}else _0x249651=_0x1c72df;!Array['isArray'](_0x249651)&&(_0x249651=[_0x249651]);if(_0x249651['length']>this['config'][_0x4fc418(0x102)])throw new Error(_0x4fc418(0xce)+this['config']['maxAttachmentsPerMessage']+'\x20attachments\x20allowed');const processedAttachments=[];for(const _0x4d82b3 of _0x249651){if(!_0x4d82b3['path'])continue;try{const _0x400af1=await a0_0x4aff60['stat'](_0x4d82b3[_0x4fc418(0x121)]);if(_0x400af1[_0x4fc418(0x15b)]>this['config'][_0x4fc418(0xf1)])throw new Error('Attachment\x20exceeds\x20size\x20limit:\x20'+_0x4d82b3[_0x4fc418(0x121)]);const _0x18fb8a=this[_0x4fc418(0xd3)](),_0x44057c=a0_0x28df49['extname'](_0x4d82b3[_0x4fc418(0x121)]),_0x4181b2=a0_0x28df49[_0x4fc418(0x116)](this['config']['storageDir'],'attachments',''+_0x18fb8a+_0x44057c);await a0_0x4aff60['copyFile'](_0x4d82b3[_0x4fc418(0x121)],_0x4181b2),processedAttachments[_0x4fc418(0xfb)]({'id':_0x18fb8a,'originalPath':_0x4d82b3[_0x4fc418(0x121)],'storagePath':_0x4181b2,'type':_0x4d82b3['type']||'file','size':_0x400af1['size'],'name':a0_0x28df49[_0x4fc418(0x15a)](_0x4d82b3[_0x4fc418(0x121)])});}catch(_0xb459cb){console['error']('Failed\x20to\x20process\x20attachment:\x20'+_0x4d82b3['path'],_0xb459cb);}}return processedAttachments;}async['_notifyRecipients'](_0x439a03,_0x1480d3){const _0x2d184f=a0_0x218b07,_0x2e6b58=_0x1480d3[_0x2d184f(0xfc)];if(!_0x2e6b58)return;for(const _0x44ba73 of _0x439a03['recipients']){try{await _0x2e6b58['notifyAgent'](_0x44ba73,{'type':'agent-communication','from':_0x439a03[_0x2d184f(0x124)],'conversationId':_0x439a03['conversationId'],'content':_0x2d184f(0x15d)+_0x439a03['senderName']+':\x20\x22'+_0x439a03[_0x2d184f(0x11e)]+'\x22','messageId':_0x439a03['id'],'priority':_0x439a03[_0x2d184f(0x161)],'requiresResponse':_0x439a03['requiresReply']});const _0xe7aed7=await _0x2e6b58[_0x2d184f(0x112)](_0x44ba73);if(_0xe7aed7){const _0x431e6c='📨\x20**Inter-Agent\x20Message**\x0a**From:**\x20'+_0x439a03[_0x2d184f(0x115)]+'\x20('+_0x439a03[_0x2d184f(0x124)]+_0x2d184f(0x131)+_0x439a03['subject']+'\x0a**Priority:**\x20'+_0x439a03['priority']+_0x2d184f(0x14b)+(_0x439a03[_0x2d184f(0x130)]?_0x2d184f(0xcf):'No')+'\x0a\x0a**Message:**\x0a'+_0x439a03[_0x2d184f(0x12b)]+'\x0a\x0a'+(_0x439a03['attachments'][_0x2d184f(0x147)]>0x0?'**Attachments:**\x20'+_0x439a03[_0x2d184f(0x13e)]['length']+_0x2d184f(0x157):'')+'\x0a\x0a*You\x20can\x20reply\x20using\x20the\x20agentcommunication\x20tool\x20with\x20action=\x22reply-to-message\x22\x20and\x20message-id=\x22'+_0x439a03['id']+'\x22*',_0x59870f={'id':'agent-comm-'+_0x439a03['id'],'conversationId':_0x439a03['conversationId'],'agentId':_0x439a03['sender'],'content':_0x431e6c,'role':'system','timestamp':_0x439a03['timestamp'],'type':'agent-communication','metadata':{'originalMessageId':_0x439a03['id'],'fromAgent':_0x439a03[_0x2d184f(0x124)],'requiresResponse':_0x439a03[_0x2d184f(0x130)],'priority':_0x439a03['priority']}};_0xe7aed7['conversations']['full'][_0x2d184f(0xef)][_0x2d184f(0xfb)](_0x59870f),_0xe7aed7[_0x2d184f(0xd4)][_0x2d184f(0x127)]['lastUpdated']=new Date()['toISOString'](),_0xe7aed7[_0x2d184f(0x144)]&&_0xe7aed7[_0x2d184f(0xd4)][_0xe7aed7[_0x2d184f(0x144)]]&&(_0xe7aed7['conversations'][_0xe7aed7[_0x2d184f(0x144)]][_0x2d184f(0xef)]['push'](_0x59870f),_0xe7aed7['conversations'][_0xe7aed7[_0x2d184f(0x144)]][_0x2d184f(0xf0)]=new Date()[_0x2d184f(0x140)]()),await _0x2e6b58['persistAgentState'](_0x44ba73),console['log']('📬\x20Queueing\x20inter-agent\x20message\x20for\x20scheduler\x20processing',{'recipientId':_0x44ba73,'sender':_0x439a03['sender'],'subject':_0x439a03['subject'],'hasSessionId':!!_0x1480d3[_0x2d184f(0x156)]}),await _0x2e6b58['addInterAgentMessage'](_0x44ba73,{'id':_0x439a03['id'],'messageId':_0x439a03['id'],'sender':_0x439a03[_0x2d184f(0x124)],'senderName':_0x439a03[_0x2d184f(0x115)],'subject':_0x439a03[_0x2d184f(0x11e)],'content':_0x439a03['content'],'attachments':_0x439a03[_0x2d184f(0x13e)],'priority':_0x439a03[_0x2d184f(0x161)],'requiresReply':_0x439a03[_0x2d184f(0x130)],'conversationId':_0x439a03['conversationId'],'sessionId':_0x1480d3['sessionId'],'timestamp':new Date()['toISOString']()}),console[_0x2d184f(0x151)]('Direct\x20message\x20injected\x20and\x20queued\x20for\x20processing:\x20'+_0x44ba73,{'messageId':_0x439a03['id'],'fromAgent':_0x439a03[_0x2d184f(0x124)],'subject':_0x439a03[_0x2d184f(0x11e)],'priority':_0x439a03['priority']});}}catch(_0x3f2119){console[_0x2d184f(0x142)]('Failed\x20to\x20notify\x20agent\x20'+_0x44ba73+':',_0x3f2119);}}}['_hasAgentReplied'](_0x377416,_0x43dc97){const _0x2b2108=a0_0x218b07;for(const _0x3d5264 of _0x43dc97['replies']){const _0x296559=this['messages']['get'](_0x3d5264);if(_0x296559&&_0x296559['sender']===_0x377416)return!![];if(_0x296559&&this[_0x2b2108(0x120)](_0x377416,_0x296559))return!![];}return![];}['_getConversationDepth'](_0x1f638c){const _0x4c86d0=a0_0x218b07,_0x1ef458=this['conversations'][_0x4c86d0(0x13f)](_0x1f638c);if(!_0x1ef458)return 0x0;let _0x2968f6=0x0;const _0xaf1b90=this['messages']['get'](_0x1ef458['rootMessageId']);return _0xaf1b90&&(_0x2968f6=this['_getMessageDepth'](_0xaf1b90)),_0x2968f6;}[a0_0x218b07(0xf6)](_0x29a740,_0x189bf9=0x0){const _0x57e3c6=a0_0x218b07;if(_0x29a740[_0x57e3c6(0xe1)]['length']===0x0)return _0x189bf9;let _0x4e7428=_0x189bf9;for(const _0x272504 of _0x29a740[_0x57e3c6(0xe1)]){const _0x4c63eb=this['messages'][_0x57e3c6(0x13f)](_0x272504);if(_0x4c63eb){const _0x5a9f2f=this[_0x57e3c6(0xf6)](_0x4c63eb,_0x189bf9+0x1);_0x4e7428=Math['max'](_0x4e7428,_0x5a9f2f);}}return _0x4e7428;}['_updateMessageCounts'](_0x327634,_0x42130c){const _0xf41b1c=a0_0x218b07;!this['agentMessageCounts'][_0xf41b1c(0x104)](_0x327634)&&this[_0xf41b1c(0x13d)][_0xf41b1c(0x139)](_0x327634,{'sent':0x0,'received':0x0});const _0x561cf5=this[_0xf41b1c(0x13d)]['get'](_0x327634);_0x42130c===_0xf41b1c(0xf8)?_0x561cf5[_0xf41b1c(0xf8)]++:_0x561cf5['received']++;}['_generateMessageId'](){const _0x9d07e6=a0_0x218b07;return'msg-'+Date[_0x9d07e6(0xd2)]()+'-'+a0_0x1fd705[_0x9d07e6(0xe3)](0x4)[_0x9d07e6(0xea)](_0x9d07e6(0xfd));}['_generateConversationId'](){const _0x22fd52=a0_0x218b07;return _0x22fd52(0x100)+Date[_0x22fd52(0xd2)]()+'-'+a0_0x1fd705[_0x22fd52(0xe3)](0x4)[_0x22fd52(0xea)]('hex');}['_generateAttachmentId'](){const _0x293e4c=a0_0x218b07;return'att-'+Date[_0x293e4c(0xd2)]()+'-'+a0_0x1fd705['randomBytes'](0x4)['toString'](_0x293e4c(0xfd));}async[a0_0x218b07(0x12f)](){const _0x4bead1=a0_0x218b07,_0xdb80a2=Date[_0x4bead1(0xd2)](),_0x96247a=_0xdb80a2-this[_0x4bead1(0xe4)]['messageRetentionPeriod'];for(const [_0x2115f2,_0x3e50fb]of this[_0x4bead1(0xef)]['entries']()){const _0x5207e9=new Date(_0x3e50fb['timestamp'])['getTime']();if(_0x5207e9<_0x96247a){for(const _0x51c2f3 of _0x3e50fb[_0x4bead1(0x13e)]){try{await a0_0x4aff60['unlink'](_0x51c2f3['storagePath']);}catch(_0x518f6e){}}for(const [_0x4c187b,_0x5df574]of this['agentInboxes'][_0x4bead1(0xd5)]()){_0x5df574['delete'](_0x2115f2);}this[_0x4bead1(0xef)]['delete'](_0x2115f2);}}for(const [_0x3984b2,_0x2dbe6a]of this[_0x4bead1(0xd4)][_0x4bead1(0xd5)]()){const _0x3f60f6=new Date(_0x2dbe6a['lastActivity'])[_0x4bead1(0xd7)]();if(_0x3f60f6<_0x96247a||_0x2dbe6a['status']===_0x4bead1(0xdc)){for(const [_0x539736,_0x582faa]of this[_0x4bead1(0x10a)][_0x4bead1(0xd5)]()){_0x582faa[_0x4bead1(0x129)](_0x3984b2);}this[_0x4bead1(0xd4)][_0x4bead1(0x129)](_0x3984b2);}}}async[a0_0x218b07(0x155)](_0x47fd11,_0x1c75be,_0x15b236){const _0xbc20b5=a0_0x218b07;try{const _0x7ea497={'type':_0xbc20b5(0x143),'eventType':_0x1c75be,'timestamp':_0x47fd11[_0xbc20b5(0x10f)],'messageId':_0x47fd11['id'],'conversationId':_0x47fd11['conversationId'],'sender':{'id':_0x47fd11['sender'],'name':_0x47fd11['senderName']},'recipients':Object[_0xbc20b5(0xd5)](_0x47fd11['recipientNames']||{})['map'](([_0x5d5834,_0x23e79a])=>({'id':_0x5d5834,'name':_0x23e79a})),'subject':_0x47fd11[_0xbc20b5(0x11e)],'content':_0x47fd11[_0xbc20b5(0x12b)],'priority':_0x47fd11['priority'],'requiresReply':_0x47fd11['requiresReply'],'hasAttachments':_0x47fd11[_0xbc20b5(0x13e)]&&_0x47fd11[_0xbc20b5(0x13e)]['length']>0x0,'attachmentCount':_0x47fd11[_0xbc20b5(0x13e)]?_0x47fd11[_0xbc20b5(0x13e)]['length']:0x0,'metadata':_0x47fd11['metadata']};if(_0x15b236['agentPool']&&_0x15b236[_0xbc20b5(0xfc)]['messageProcessor']){const _0x4a7c6f=_0x15b236['agentPool'][_0xbc20b5(0xe2)];if(_0x4a7c6f&&_0x4a7c6f[_0xbc20b5(0x158)]&&_0x4a7c6f[_0xbc20b5(0x158)][_0xbc20b5(0x141)]){_0x4a7c6f[_0xbc20b5(0x158)][_0xbc20b5(0x141)]['broadcastToSession'](_0x15b236['sessionId']||'web-session',{'type':_0xbc20b5(0x143),'action':'agent-communication','data':_0x7ea497});return;}}if(_0x15b236['orchestrator']&&_0x15b236[_0xbc20b5(0x158)]['webServer']){_0x15b236[_0xbc20b5(0x158)]['webServer']['broadcastToSession'](_0x15b236[_0xbc20b5(0x156)]||_0xbc20b5(0x154),{'type':_0xbc20b5(0x143),'action':'agent-communication','data':_0x7ea497});return;}global[_0xbc20b5(0xda)]&&global['loxiaWebServer'][_0xbc20b5(0x132)](_0x15b236['sessionId']||'web-session',{'type':_0xbc20b5(0x143),'action':'agent-communication','data':_0x7ea497});}catch(_0x2a91ef){console['error'](_0xbc20b5(0x13b),_0x2a91ef);}}async['_canSendMessage'](_0x5bd115,_0x4caf77,_0x310474){const _0x8567d5=a0_0x218b07,_0x2407a2=_0x310474['agentPool'],_0x1423f6=_0x5bd115[_0x8567d5(0x117)];!_0x1423f6[_0x8567d5(0x104)](_0x4caf77)&&_0x1423f6['set'](_0x4caf77,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x101f5a=_0x1423f6['get'](_0x4caf77),_0x2e1d88=Date[_0x8567d5(0xd2)](),_0x3cca5a=0x3c*0x3e8;if(_0x101f5a[_0x8567d5(0x10d)]==='received'||_0x101f5a['lastReceived']&&_0x101f5a['lastReceived']>_0x101f5a[_0x8567d5(0x13a)])return{'allowed':!![]};if(_0x101f5a['lastSent']){const _0x2319de=_0x2e1d88-_0x101f5a[_0x8567d5(0x13a)];if(_0x2319de>=_0x3cca5a)return{'allowed':!![]};const _0x195653=_0x101f5a['lastSent']+_0x3cca5a;return{'allowed':![],'reason':'Must\x20wait\x20'+Math[_0x8567d5(0x14e)]((_0x195653-_0x2e1d88)/0x3e8)+_0x8567d5(0xee),'waitUntil':_0x195653};}return{'allowed':!![]};}async['_updateConversationTracking'](_0x5b8ebd,_0x2b0bfb,_0x4600ed,_0x35aaa4){const _0x5e78c4=a0_0x218b07,_0x4bc3d5=_0x35aaa4['agentPool'],_0x3eb1f4=await _0x4bc3d5['getAgent'](_0x5b8ebd);if(!_0x3eb1f4)return;const _0x5437ba=Date['now']();!_0x3eb1f4[_0x5e78c4(0x117)][_0x5e78c4(0x104)](_0x2b0bfb)&&_0x3eb1f4['interAgentTracking']['set'](_0x2b0bfb,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x3f347d=_0x3eb1f4['interAgentTracking']['get'](_0x2b0bfb);if(_0x4600ed==='sent')_0x3f347d['lastSent']=_0x5437ba,_0x3f347d['lastType']=_0x5e78c4(0xf8);else _0x4600ed==='replied'&&(_0x3f347d['lastSent']=_0x5437ba,_0x3f347d['lastType']=_0x5e78c4(0xf8));const _0x3e414b=await _0x4bc3d5[_0x5e78c4(0x112)](_0x2b0bfb);if(_0x3e414b){!_0x3e414b[_0x5e78c4(0x117)][_0x5e78c4(0x104)](_0x5b8ebd)&&_0x3e414b['interAgentTracking']['set'](_0x5b8ebd,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x3f440f=_0x3e414b['interAgentTracking']['get'](_0x5b8ebd);_0x3f440f['lastReceived']=_0x5437ba,_0x3f440f['lastType']=_0x5e78c4(0x12c),await _0x4bc3d5['persistAgentState'](_0x2b0bfb);}await _0x4bc3d5[_0x5e78c4(0xdb)](_0x5b8ebd);}['setMessageProcessor'](_0x116ec3){this['messageProcessor']=_0x116ec3;}}export default AgentCommunicationTool;
1
+ const a0_0xe3db2b=a0_0x7f00;(function(_0x5f12d3,_0x2c2053){const _0x4911c4=a0_0x7f00,_0x26a2e3=_0x5f12d3();while(!![]){try{const _0x19518d=-parseInt(_0x4911c4(0x1a9))/0x1+-parseInt(_0x4911c4(0x1d6))/0x2+-parseInt(_0x4911c4(0x1ab))/0x3*(-parseInt(_0x4911c4(0x197))/0x4)+-parseInt(_0x4911c4(0x1c8))/0x5+-parseInt(_0x4911c4(0x1e4))/0x6*(parseInt(_0x4911c4(0x189))/0x7)+parseInt(_0x4911c4(0x14c))/0x8+parseInt(_0x4911c4(0x1bd))/0x9;if(_0x19518d===_0x2c2053)break;else _0x26a2e3['push'](_0x26a2e3['shift']());}catch(_0x47e47f){_0x26a2e3['push'](_0x26a2e3['shift']());}}}(a0_0x2cc0,0x84966));import{BaseTool}from'./baseTool.js';import{promises as a0_0x213cff}from'fs';import a0_0x21d4dc from'path';import a0_0x354967 from'crypto';class AgentCommunicationTool extends BaseTool{constructor(_0x38cfa7={}){const _0x268fa1=a0_0x7f00;super(_0x268fa1(0x1b9),'Agent\x20Communication',_0x268fa1(0x16c)),this['config']={'maxConversationDepth':_0x38cfa7[_0x268fa1(0x15b)]||0xa,'maxRecipientsPerMessage':_0x38cfa7['maxRecipientsPerMessage']||0x3,'maxAttachmentSize':_0x38cfa7['maxAttachmentSize']||0xa*0x400*0x400,'maxAttachmentsPerMessage':_0x38cfa7['maxAttachmentsPerMessage']||0x5,'conversationTimeout':_0x38cfa7['conversationTimeout']||0x36ee80,'messageRetentionPeriod':_0x38cfa7['messageRetentionPeriod']||0x5265c00,'enableBroadcast':_0x38cfa7[_0x268fa1(0x161)]||![],'storageDir':_0x38cfa7['storageDir']||'.loxia-messages'},this['messages']=new Map(),this['conversations']=new Map(),this[_0x268fa1(0x17c)]=new Map(),this['agentConversations']=new Map(),this[_0x268fa1(0x17e)]=new Map(),this['lastActivityTimes']=new Map(),this['agentMessageCounts']=new Map(),this[_0x268fa1(0x1b5)]();}[a0_0xe3db2b(0x144)](){const _0x4e8416=a0_0xe3db2b;return('\x0aAgent\x20Communication\x20Tool:\x20Enables\x20communication\x20between\x20active\x20agents.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentcommunication\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22action-name\x22,\x20...params}]\x0a}\x0a```\x0a\x0aACTIONS:\x0a-\x20get-available-agents:\x20List\x20active\x20agents\x0a-\x20send-message:\x20Send\x20message\x20(recipient,\x20subject,\x20message,\x20priority,\x20requiresReply)\x0a-\x20reply-to-message:\x20Reply\x20to\x20message\x20(messageId,\x20message)\x0a-\x20get-unreplied-messages:\x20Get\x20pending\x20messages\x0a-\x20mark-conversation-ended:\x20End\x20conversation\x20(conversationId,\x20reason)\x0a\x0aEXAMPLES:\x0a\x0aGet\x20available\x20agents:\x0a```json\x0a{\x22toolId\x22:\x20\x22agentcommunication\x22,\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22get-available-agents\x22}]}\x0a```\x0a\x0aSend\x20a\x20message:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentcommunication\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22type\x22:\x20\x22send-message\x22,\x0a\x20\x20\x20\x20\x22recipient\x22:\x20\x22agent-fullstack-developer-1234567890123\x22,\x0a\x20\x20\x20\x20\x22subject\x22:\x20\x22Code\x20review\x20needed\x22,\x0a\x20\x20\x20\x20\x22message\x22:\x20\x22Please\x20review\x20the\x20authentication\x20module\x22,\x0a\x20\x20\x20\x20\x22priority\x22:\x20\x22normal\x22,\x0a\x20\x20\x20\x20\x22requiresReply\x22:\x20true\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aReply\x20to\x20a\x20message:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22agentcommunication\x22,\x0a\x20\x20\x22actions\x22:\x20[{\x0a\x20\x20\x20\x20\x22type\x22:\x20\x22reply-to-message\x22,\x0a\x20\x20\x20\x20\x22messageId\x22:\x20\x22msg-789\x22,\x0a\x20\x20\x20\x20\x22message\x22:\x20\x22Review\x20complete.\x20All\x20issues\x20addressed.\x22\x0a\x20\x20}]\x0a}\x0a```\x0a\x0aIMPORTANT:\x20Use\x20full\x20agent\x20ID\x20from\x20get-available-agents\x20as\x20recipient.\x0a\x0aLIMITS:\x0a-\x20Max\x20'+this[_0x4e8416(0x156)]['maxConversationDepth']+'\x20replies\x20per\x20thread\x0a-\x20Max\x20'+this[_0x4e8416(0x156)]['maxRecipientsPerMessage']+_0x4e8416(0x16f)+this[_0x4e8416(0x156)][_0x4e8416(0x1cc)]/0xea60+'\x20minutes\x0a')['trim']();}[a0_0xe3db2b(0x18b)](_0x489653){const _0x1b03b8=a0_0xe3db2b;if(typeof _0x489653==='object'&&_0x489653!==null){if(_0x489653['actions']&&Array[_0x1b03b8(0x155)](_0x489653[_0x1b03b8(0x1e2)])&&_0x489653[_0x1b03b8(0x1e2)]['length']>0x0){const _0x586dee=_0x489653[_0x1b03b8(0x1e2)][0x0];return{'action':_0x586dee['type'],..._0x586dee};}else{if(_0x489653[_0x1b03b8(0x188)]||_0x489653['type'])return{'action':_0x489653[_0x1b03b8(0x188)]||_0x489653[_0x1b03b8(0x186)],..._0x489653};}return _0x489653;}if(typeof _0x489653==='string'){if(_0x489653['trim']()[_0x1b03b8(0x1dd)]('{'))try{const _0x3bf8fb=JSON[_0x1b03b8(0x195)](_0x489653);return this['parseParameters'](_0x3bf8fb);}catch(_0x5b718d){}const _0x240eae={},_0x294937=_0x489653['match'](/<action[^>]*>([^<]+)<\/action>/);_0x294937&&(_0x240eae[_0x1b03b8(0x188)]=_0x294937[0x1]['trim']());const _0xb1db16=['recipient',_0x1b03b8(0x165),'subject','message',_0x1b03b8(0x1d3),_0x1b03b8(0x1df),'requires-reply','message-id',_0x1b03b8(0x1a8),'include-low-priority',_0x1b03b8(0x1b2),_0x1b03b8(0x146),'mark-resolved'];for(const _0x341501 of _0xb1db16){const _0x2558bc=new RegExp('<'+_0x341501[_0x1b03b8(0x19f)]('-','\x5c-')+'[^>]*>(.*?)<\x5c/'+_0x341501['replace']('-','\x5c-')+'>','s'),_0x2e717a=_0x489653['match'](_0x2558bc);if(_0x2e717a){let _0x431c0a=_0x2e717a[0x1]['trim']();if(_0x431c0a['startsWith']('[')||_0x431c0a['startsWith']('{')||_0x431c0a==='true'||_0x431c0a==='false')try{_0x431c0a=JSON['parse'](_0x431c0a);}catch{}const _0x12bc22=_0x341501['replace'](/-(.)/g,(_0x435627,_0x4f706b)=>_0x4f706b['toUpperCase']());_0x240eae[_0x12bc22]=_0x431c0a;}}const _0x57d4c5=_0x489653['match'](/<action([^>]*)>([^<]+)<\/action>/);if(_0x57d4c5&&_0x57d4c5[0x1]){const _0xb0ec3b=_0x57d4c5[0x1][_0x1b03b8(0x1a3)](/([\w-]+)=["']([^"']+)["']/g);for(const _0x5c369c of _0xb0ec3b){const _0xd11aab=_0x5c369c[0x1][_0x1b03b8(0x19f)](/-(.)/g,(_0x45e27f,_0x10c3c0)=>_0x10c3c0['toUpperCase']());_0x240eae[_0xd11aab]=_0x5c369c[0x2];}}return _0x240eae;}return _0x489653||{};}async['execute'](_0x13c4b0={},_0x39344e={}){const _0x4637e8=a0_0xe3db2b,{action:_0x1a5836}=_0x13c4b0;if(!_0x1a5836)throw new Error('Action\x20parameter\x20is\x20required');const _0x4b7874=_0x39344e['agentId'];if(!_0x4b7874)throw new Error(_0x4637e8(0x198));switch(_0x1a5836['toLowerCase']()){case _0x4637e8(0x183):return await this[_0x4637e8(0x175)](_0x4b7874,_0x13c4b0,_0x39344e);case'send-message':return await this[_0x4637e8(0x1c4)](_0x4b7874,_0x13c4b0,_0x39344e);case'reply-to-message':return await this[_0x4637e8(0x143)](_0x4b7874,_0x13c4b0,_0x39344e);case _0x4637e8(0x1a0):return await this['getUnrepliedMessages'](_0x4b7874,_0x13c4b0,_0x39344e);case _0x4637e8(0x18e):return await this['markConversationEnded'](_0x4b7874,_0x13c4b0,_0x39344e);default:throw new Error('Unknown\x20action:\x20'+_0x1a5836);}}async[a0_0xe3db2b(0x175)](_0x5a0dea,_0x3732e8,_0xcefaa3){const _0x1411c1=a0_0xe3db2b;try{const _0x159cda=_0xcefaa3[_0x1411c1(0x177)];if(!_0x159cda)throw new Error('Agent\x20pool\x20not\x20available\x20in\x20context');const _0xa27ebe=await _0x159cda[_0x1411c1(0x162)](),_0x44f9b4=_0xa27ebe['filter'](_0x1e968d=>_0x1e968d['id']!==_0x5a0dea&&!_0x1e968d[_0x1411c1(0x153)])[_0x1411c1(0x168)](_0x3b60da=>({'id':_0x3b60da['id'],'name':_0x3b60da[_0x1411c1(0x179)],'type':_0x3b60da[_0x1411c1(0x186)],'capabilities':_0x3b60da[_0x1411c1(0x171)],'status':_0x3b60da[_0x1411c1(0x15c)],'messageStats':this[_0x1411c1(0x17a)][_0x1411c1(0x1bb)](_0x3b60da['id'])||{'sent':0x0,'received':0x0},'activeConversations':(this[_0x1411c1(0x19d)]['get'](_0x3b60da['id'])||new Set())[_0x1411c1(0x142)]}));return{'success':!![],'agents':_0x44f9b4,'totalActive':_0x44f9b4[_0x1411c1(0x1ce)],'timestamp':new Date()['toISOString']()};}catch(_0x402c96){return{'success':![],'error':_0x402c96['message']};}}async[a0_0xe3db2b(0x1c4)](_0x466239,_0x232521,_0xdd9738){const _0x459f55=a0_0xe3db2b;try{const {recipient:_0xf60183,recipients:_0x5bbd37,subject:_0x41f240,message:_0x335d44,attachments:_0xe197b0,priority:priority=_0x459f55(0x182),'requires-reply':requiresReply=![]}=_0x232521;if(!_0x41f240||!_0x335d44)throw new Error(_0x459f55(0x158));const _0x2583b1=this[_0x459f55(0x1cf)](_0xf60183,_0x5bbd37);if(_0x2583b1['length']===0x0)throw new Error('At\x20least\x20one\x20recipient\x20is\x20required');if(_0x2583b1['length']>this['config']['maxRecipientsPerMessage'])throw new Error('Maximum\x20'+this['config']['maxRecipientsPerMessage']+_0x459f55(0x15a));const _0x3c01f0=_0xdd9738['agentPool'],_0x40c8d7=await _0x3c01f0['getAgent'](_0x466239);if(!_0x40c8d7)throw new Error('Sender\x20agent\x20not\x20found');const _0x5e9316=[];for(const _0x1e8b22 of _0x2583b1){const _0x34e9f0=await this['_canSendMessage'](_0x40c8d7,_0x1e8b22,_0xdd9738);!_0x34e9f0[_0x459f55(0x1db)]&&_0x5e9316[_0x459f55(0x1e1)]({'recipientId':_0x1e8b22,'reason':_0x34e9f0[_0x459f55(0x146)],'waitUntil':_0x34e9f0[_0x459f55(0x149)]});}if(_0x5e9316[_0x459f55(0x1ce)]>0x0){const _0x260d70=Math[_0x459f55(0x157)](..._0x5e9316['map'](_0x16c5e9=>_0x16c5e9['waitUntil']||0x0)),_0x18c96a=new Date(_0x260d70);await _0x3c01f0['updateAgent'](_0x466239,{'delayEndTime':_0x18c96a[_0x459f55(0x19e)]()});const _0x4c229a=Math[_0x459f55(0x1c3)]((_0x260d70-Date[_0x459f55(0x1af)]())/0x3e8);return{'success':!![],'delayed':!![],'delayUntil':_0x18c96a[_0x459f55(0x19e)](),'delaySeconds':_0x4c229a,'message':'Waiting\x20'+_0x4c229a+_0x459f55(0x1d2),'blockedRecipients':_0x5e9316[_0x459f55(0x168)](_0x30dd73=>({'recipientId':_0x30dd73[_0x459f55(0x148)],'reason':_0x30dd73[_0x459f55(0x146)]}))};}const _0x3aca85={},_0x3f903b=[];for(const _0x426e6f of _0x2583b1){const _0x2a2560=await _0x3c01f0[_0x459f55(0x154)](_0x426e6f);!_0x2a2560?_0x3f903b[_0x459f55(0x1e1)](_0x426e6f):_0x3aca85[_0x426e6f]=_0x2a2560[_0x459f55(0x179)];}if(_0x3f903b[_0x459f55(0x1ce)]>0x0){const _0x7a79be=await _0x3c01f0[_0x459f55(0x162)](),_0x2ece68=_0x7a79be[_0x459f55(0x173)](_0x20eea2=>_0x20eea2['id']!==_0x466239&&!_0x20eea2[_0x459f55(0x153)])['map'](_0x17f831=>'-\x20'+_0x17f831[_0x459f55(0x179)]+_0x459f55(0x14b)+_0x17f831['id']+')')['join']('\x0a');return{'success':![],'error':'Recipient\x20agent(s)\x20not\x20found:\x20'+_0x3f903b[_0x459f55(0x1a6)](',\x20'),'suggestion':_0x459f55(0x15f)+_0x2ece68,'availableAgents':_0x7a79be[_0x459f55(0x168)](_0x26a4ee=>({'id':_0x26a4ee['id'],'name':_0x26a4ee[_0x459f55(0x179)],'capabilities':_0x26a4ee['capabilities']}))};}const _0x4fff06=_0x40c8d7?_0x40c8d7['name']:_0x466239,processedAttachments=await this['_processAttachments'](_0xe197b0,_0x466239),_0x15b296=this['_generateMessageId'](),_0x93e64d=this['_generateConversationId'](),_0x39235f=new Date()['toISOString'](),_0x31152f={'id':_0x15b296,'conversationId':_0x93e64d,'sender':_0x466239,'senderName':_0x4fff06,'recipients':_0x2583b1,'recipientNames':_0x3aca85,'subject':_0x41f240,'content':_0x335d44,'attachments':processedAttachments,'priority':priority,'requiresReply':requiresReply,'timestamp':_0x39235f,'status':'sent','replies':[],'metadata':{'depth':0x0,'isRoot':!![]}};this[_0x459f55(0x18d)]['set'](_0x15b296,_0x31152f),this['conversations'][_0x459f55(0x163)](_0x93e64d,{'id':_0x93e64d,'rootMessageId':_0x15b296,'participants':[_0x466239,..._0x2583b1],'startTime':_0x39235f,'lastActivity':_0x39235f,'status':_0x459f55(0x1d9),'messageCount':0x1});for(const _0xf61efb of _0x2583b1){!this[_0x459f55(0x17c)][_0x459f55(0x196)](_0xf61efb)&&this['agentInboxes'][_0x459f55(0x163)](_0xf61efb,new Set()),this['agentInboxes']['get'](_0xf61efb)['add'](_0x15b296),!this[_0x459f55(0x19d)][_0x459f55(0x196)](_0xf61efb)&&this[_0x459f55(0x19d)]['set'](_0xf61efb,new Set()),this[_0x459f55(0x19d)]['get'](_0xf61efb)['add'](_0x93e64d);}!this['agentConversations'][_0x459f55(0x196)](_0x466239)&&this[_0x459f55(0x19d)][_0x459f55(0x163)](_0x466239,new Set());this[_0x459f55(0x19d)][_0x459f55(0x1bb)](_0x466239)[_0x459f55(0x1be)](_0x93e64d),this[_0x459f55(0x1da)](_0x466239,'sent');for(const _0x324072 of _0x2583b1){this['_updateMessageCounts'](_0x324072,_0x459f55(0x170));}for(const _0x517af8 of _0x2583b1){await this['_updateConversationTracking'](_0x466239,_0x517af8,_0x459f55(0x17d),_0xdd9738);}return await this[_0x459f55(0x187)](_0x31152f,_0xdd9738),await this[_0x459f55(0x145)](_0x31152f,'agent-message-sent',_0xdd9738),{'success':!![],'messageId':_0x15b296,'conversationId':_0x93e64d,'recipients':_0x2583b1,'timestamp':_0x39235f,'message':'Message\x20sent\x20successfully'};}catch(_0x1d5fff){return{'success':![],'error':_0x1d5fff['message']};}}async['replyToMessage'](_0x18aa32,_0x55b90a,_0x2fbef9){const _0x2c5b55=a0_0xe3db2b;try{const {'message-id':_0x1b600a,message:_0x5e7cfd,'cc-recipients':_0x56bc25,attachments:_0x15d8d3,'mark-resolved':_0x3c42dc=![]}=_0x55b90a;if(!_0x1b600a||!_0x5e7cfd)throw new Error('Original\x20message\x20ID\x20and\x20reply\x20content\x20are\x20required');const _0x10755f=this[_0x2c5b55(0x18d)][_0x2c5b55(0x1bb)](_0x1b600a);if(!_0x10755f)throw new Error(_0x2c5b55(0x1aa)+_0x1b600a);const _0x3bebe5=_0x10755f['sender']===_0x18aa32||_0x10755f[_0x2c5b55(0x165)][_0x2c5b55(0x1b3)](_0x18aa32);if(!_0x3bebe5)throw new Error('You\x20are\x20not\x20a\x20participant\x20in\x20this\x20conversation');const _0x2ad954=this['conversations']['get'](_0x10755f[_0x2c5b55(0x1ba)]),_0x201246=this[_0x2c5b55(0x17f)](_0x10755f[_0x2c5b55(0x1ba)]);if(_0x201246>=this[_0x2c5b55(0x156)]['maxConversationDepth'])return{'success':![],'error':_0x2c5b55(0x18c)+this[_0x2c5b55(0x156)][_0x2c5b55(0x15b)]+').\x20Please\x20start\x20a\x20new\x20conversation.','suggestion':_0x2c5b55(0x14d)};let _0xf7c172=[_0x10755f['sender']];_0x10755f['sender']===_0x18aa32&&(_0xf7c172=_0x10755f[_0x2c5b55(0x165)]);if(_0x56bc25){const _0x4ee8b4=this[_0x2c5b55(0x1cf)](null,_0x56bc25);_0xf7c172=[...new Set([..._0xf7c172,..._0x4ee8b4])];}_0xf7c172=_0xf7c172[_0x2c5b55(0x173)](_0x3c309b=>_0x3c309b!==_0x18aa32);if(_0xf7c172[_0x2c5b55(0x1ce)]>this[_0x2c5b55(0x156)][_0x2c5b55(0x194)])throw new Error('Maximum\x20'+this['config'][_0x2c5b55(0x194)]+'\x20recipients\x20allowed');const _0x4c0da1=_0x2fbef9['agentPool'],_0x1e9aa3=await _0x4c0da1['getAgent'](_0x18aa32),_0x13b6ea=_0x1e9aa3?_0x1e9aa3['name']:_0x18aa32,_0x214571={};for(const _0x43e3d5 of _0xf7c172){const _0x4e5e61=await _0x4c0da1['getAgent'](_0x43e3d5);_0x4e5e61&&(_0x214571[_0x43e3d5]=_0x4e5e61[_0x2c5b55(0x179)]);}const processedAttachments=await this[_0x2c5b55(0x141)](_0x15d8d3,_0x18aa32),_0x300d76=this[_0x2c5b55(0x1dc)](),_0x158322=new Date()[_0x2c5b55(0x19e)](),_0x2fd199={'id':_0x300d76,'conversationId':_0x10755f['conversationId'],'sender':_0x18aa32,'senderName':_0x13b6ea,'recipients':_0xf7c172,'recipientNames':_0x214571,'subject':_0x2c5b55(0x1bf)+_0x10755f['subject'],'content':_0x5e7cfd,'attachments':processedAttachments,'priority':_0x10755f['priority'],'requiresReply':!_0x3c42dc,'timestamp':_0x158322,'status':'sent','replies':[],'metadata':{'depth':_0x201246+0x1,'isRoot':![],'inReplyTo':_0x1b600a}};this[_0x2c5b55(0x18d)]['set'](_0x300d76,_0x2fd199),_0x10755f['replies']['push'](_0x300d76),_0x2ad954['lastActivity']=_0x158322,_0x2ad954[_0x2c5b55(0x172)]++;_0x3c42dc&&(_0x2ad954['status']=_0x2c5b55(0x151));for(const _0x395bda of _0xf7c172){!this['agentInboxes']['has'](_0x395bda)&&this['agentInboxes']['set'](_0x395bda,new Set()),this[_0x2c5b55(0x17c)][_0x2c5b55(0x1bb)](_0x395bda)['add'](_0x300d76);}this['_updateMessageCounts'](_0x18aa32,'sent');for(const _0x175a32 of _0xf7c172){this[_0x2c5b55(0x1da)](_0x175a32,_0x2c5b55(0x170));}for(const _0xbf1bed of _0xf7c172){await this[_0x2c5b55(0x1c0)](_0x18aa32,_0xbf1bed,_0x2c5b55(0x1b0),_0x2fbef9);}return await this['_notifyRecipients'](_0x2fd199,_0x2fbef9),await this['_broadcastToUI'](_0x2fd199,_0x2c5b55(0x1e3),_0x2fbef9),{'success':!![],'messageId':_0x300d76,'conversationId':_0x10755f['conversationId'],'recipients':_0xf7c172,'depth':_0x201246+0x1,'timestamp':_0x158322,'conversationStatus':_0x2ad954['status']};}catch(_0x1da9c4){return{'success':![],'error':_0x1da9c4[_0x2c5b55(0x16e)]};}}async[a0_0xe3db2b(0x1d7)](_0x53110f,_0x318b78,_0x1bb192){const _0x1edec7=a0_0xe3db2b;try{const {'include-low-priority':_0x3f5341=![],'max-age-hours':_0x4bb37b=0x18}=_0x318b78,_0x1d692b=this['agentInboxes']['get'](_0x53110f)||new Set(),_0x1efbef=[],_0x1864e9=Date['now']()-_0x4bb37b*0x36ee80;for(const _0x591174 of _0x1d692b){const _0x54a04c=this['messages']['get'](_0x591174);if(!_0x54a04c)continue;if(new Date(_0x54a04c['timestamp'])[_0x1edec7(0x159)]()<_0x1864e9)continue;if(_0x54a04c['priority']==='low'&&!_0x3f5341)continue;if(_0x54a04c['requiresReply']){const _0x3ed3d0=this['_hasAgentReplied'](_0x53110f,_0x54a04c);if(!_0x3ed3d0){const _0x5bc423=this[_0x1edec7(0x16d)][_0x1edec7(0x1bb)](_0x54a04c['conversationId']);_0x1efbef['push']({'messageId':_0x54a04c['id'],'conversationId':_0x54a04c['conversationId'],'sender':_0x54a04c['sender'],'subject':_0x54a04c['subject'],'preview':_0x54a04c[_0x1edec7(0x1b8)][_0x1edec7(0x190)](0x0,0x64)+_0x1edec7(0x1c7),'priority':_0x54a04c['priority'],'timestamp':_0x54a04c['timestamp'],'hasAttachments':_0x54a04c['attachments'][_0x1edec7(0x1ce)]>0x0,'conversationStatus':_0x5bc423?.['status']||'unknown','depth':_0x54a04c['metadata'][_0x1edec7(0x14e)]});}}}return _0x1efbef[_0x1edec7(0x1a4)]((_0x4de8b5,_0x36e15c)=>{const _0x1aaa57=_0x1edec7,_0x32a6e1={'high':0x0,'normal':0x1,'low':0x2},_0x14bc36=_0x32a6e1[_0x4de8b5[_0x1aaa57(0x1df)]]-_0x32a6e1[_0x36e15c[_0x1aaa57(0x1df)]];if(_0x14bc36!==0x0)return _0x14bc36;return new Date(_0x36e15c[_0x1aaa57(0x1cb)])-new Date(_0x4de8b5['timestamp']);}),{'success':!![],'messages':_0x1efbef,'total':_0x1efbef['length'],'inbox':{'total':_0x1d692b['size'],'activeConversations':(this[_0x1edec7(0x19d)]['get'](_0x53110f)||new Set())['size']}};}catch(_0x2cb43d){return{'success':![],'error':_0x2cb43d['message']};}}async[a0_0xe3db2b(0x176)](_0x3d8927,_0x47c3ee,_0x5a6d2d){const _0x4b71f2=a0_0xe3db2b;try{const {'conversation-id':_0x43836d,reason:reason='Conversation\x20ended\x20by\x20agent'}=_0x47c3ee;if(!_0x43836d)throw new Error(_0x4b71f2(0x16b));const _0x3262ac=this[_0x4b71f2(0x16d)]['get'](_0x43836d);if(!_0x3262ac)throw new Error('Conversation\x20not\x20found:\x20'+_0x43836d);if(!_0x3262ac['participants'][_0x4b71f2(0x1b3)](_0x3d8927))throw new Error('You\x20are\x20not\x20a\x20participant\x20in\x20this\x20conversation');_0x3262ac['status']='ended',_0x3262ac[_0x4b71f2(0x1a5)]=new Date()[_0x4b71f2(0x19e)](),_0x3262ac[_0x4b71f2(0x16a)]=reason,_0x3262ac['endedBy']=_0x3d8927;for(const _0x308d32 of _0x3262ac['participants']){const _0x153f63=this['agentConversations']['get'](_0x308d32);_0x153f63&&_0x153f63['delete'](_0x43836d);}return{'success':!![],'conversationId':_0x43836d,'status':_0x4b71f2(0x160),'reason':reason,'timestamp':_0x3262ac[_0x4b71f2(0x1a5)]};}catch(_0x2872d4){return{'success':![],'error':_0x2872d4['message']};}}async['_initializeStorage'](){const _0x20d3f6=a0_0xe3db2b;try{await a0_0x213cff[_0x20d3f6(0x15d)](this['config'][_0x20d3f6(0x14f)],{'recursive':!![]});const _0x4cce45=a0_0x21d4dc[_0x20d3f6(0x1a6)](this['config'][_0x20d3f6(0x14f)],'attachments');await a0_0x213cff['mkdir'](_0x4cce45,{'recursive':!![]});}catch(_0x3c3199){console['error'](_0x20d3f6(0x1d5),_0x3c3199);}}['_parseRecipients'](_0x4d7745,_0x418dcc){const _0x123646=a0_0xe3db2b;let _0x35b997=[];_0x4d7745&&_0x35b997['push'](_0x4d7745);if(_0x418dcc){if(typeof _0x418dcc==='string')try{const _0x189a8b=JSON['parse'](_0x418dcc);_0x35b997=[..._0x35b997,...Array[_0x123646(0x155)](_0x189a8b)?_0x189a8b:[_0x189a8b]];}catch{_0x35b997['push'](_0x418dcc);}else Array['isArray'](_0x418dcc)&&(_0x35b997=[..._0x35b997,..._0x418dcc]);}return[...new Set(_0x35b997)];}async[a0_0xe3db2b(0x141)](_0x38bcc3,_0x2fe071){const _0x30d180=a0_0xe3db2b;if(!_0x38bcc3)return[];let _0x377549=[];if(typeof _0x38bcc3==='string')try{_0x377549=JSON[_0x30d180(0x195)](_0x38bcc3);}catch{return[];}else _0x377549=_0x38bcc3;!Array['isArray'](_0x377549)&&(_0x377549=[_0x377549]);if(_0x377549[_0x30d180(0x1ce)]>this[_0x30d180(0x156)][_0x30d180(0x1ac)])throw new Error('Maximum\x20'+this[_0x30d180(0x156)]['maxAttachmentsPerMessage']+_0x30d180(0x1d8));const processedAttachments=[];for(const _0x9367ad of _0x377549){if(!_0x9367ad['path'])continue;try{const _0x266d2a=await a0_0x213cff[_0x30d180(0x152)](_0x9367ad[_0x30d180(0x1e0)]);if(_0x266d2a[_0x30d180(0x142)]>this['config']['maxAttachmentSize'])throw new Error(_0x30d180(0x199)+_0x9367ad[_0x30d180(0x1e0)]);const _0x44931b=this[_0x30d180(0x169)](),_0x3e9847=a0_0x21d4dc['extname'](_0x9367ad['path']),_0x19c0e3=a0_0x21d4dc['join'](this['config'][_0x30d180(0x14f)],_0x30d180(0x1d3),''+_0x44931b+_0x3e9847);await a0_0x213cff['copyFile'](_0x9367ad[_0x30d180(0x1e0)],_0x19c0e3),processedAttachments['push']({'id':_0x44931b,'originalPath':_0x9367ad[_0x30d180(0x1e0)],'storagePath':_0x19c0e3,'type':_0x9367ad[_0x30d180(0x186)]||'file','size':_0x266d2a['size'],'name':a0_0x21d4dc['basename'](_0x9367ad['path'])});}catch(_0x57ba83){console[_0x30d180(0x191)](_0x30d180(0x1a2)+_0x9367ad['path'],_0x57ba83);}}return processedAttachments;}async['_notifyRecipients'](_0x17be3b,_0x24be7c){const _0x34a867=a0_0xe3db2b,_0x251a82=_0x24be7c[_0x34a867(0x177)];if(!_0x251a82)return;for(const _0x3f6468 of _0x17be3b['recipients']){try{await _0x251a82['notifyAgent'](_0x3f6468,{'type':_0x34a867(0x184),'from':_0x17be3b['sender'],'conversationId':_0x17be3b[_0x34a867(0x1ba)],'content':'📨\x20New\x20message\x20from\x20'+_0x17be3b['senderName']+':\x20\x22'+_0x17be3b[_0x34a867(0x1ad)]+'\x22','messageId':_0x17be3b['id'],'priority':_0x17be3b['priority'],'requiresResponse':_0x17be3b['requiresReply']});const _0x5cc86f=await _0x251a82[_0x34a867(0x154)](_0x3f6468);if(_0x5cc86f){const _0x2a401f='📨\x20**Inter-Agent\x20Message**\x0a**From:**\x20'+_0x17be3b[_0x34a867(0x167)]+'\x20('+_0x17be3b[_0x34a867(0x1ae)]+_0x34a867(0x19c)+_0x17be3b['subject']+_0x34a867(0x140)+_0x17be3b['priority']+'\x0a**Requires\x20Reply:**\x20'+(_0x17be3b[_0x34a867(0x14a)]?_0x34a867(0x1ca):'No')+_0x34a867(0x19b)+_0x17be3b[_0x34a867(0x1b8)]+'\x0a\x0a'+(_0x17be3b['attachments'][_0x34a867(0x1ce)]>0x0?'**Attachments:**\x20'+_0x17be3b['attachments'][_0x34a867(0x1ce)]+'\x20file(s)':'')+'\x0a\x0a*You\x20can\x20reply\x20using\x20the\x20agentcommunication\x20tool\x20with\x20action=\x22reply-to-message\x22\x20and\x20message-id=\x22'+_0x17be3b['id']+'\x22*',_0x29623a={'id':'agent-comm-'+_0x17be3b['id'],'conversationId':_0x17be3b['conversationId'],'agentId':_0x17be3b[_0x34a867(0x1ae)],'content':_0x2a401f,'role':'system','timestamp':_0x17be3b[_0x34a867(0x1cb)],'type':_0x34a867(0x184),'metadata':{'originalMessageId':_0x17be3b['id'],'fromAgent':_0x17be3b[_0x34a867(0x1ae)],'requiresResponse':_0x17be3b[_0x34a867(0x14a)],'priority':_0x17be3b[_0x34a867(0x1df)]}};_0x5cc86f[_0x34a867(0x16d)]['full'][_0x34a867(0x18d)][_0x34a867(0x1e1)](_0x29623a),_0x5cc86f[_0x34a867(0x16d)]['full']['lastUpdated']=new Date()[_0x34a867(0x19e)](),_0x5cc86f[_0x34a867(0x166)]&&_0x5cc86f[_0x34a867(0x16d)][_0x5cc86f[_0x34a867(0x166)]]&&(_0x5cc86f['conversations'][_0x5cc86f['currentModel']]['messages'][_0x34a867(0x1e1)](_0x29623a),_0x5cc86f['conversations'][_0x5cc86f[_0x34a867(0x166)]]['lastUpdated']=new Date()[_0x34a867(0x19e)]()),await _0x251a82['persistAgentState'](_0x3f6468),console[_0x34a867(0x147)](_0x34a867(0x150),{'recipientId':_0x3f6468,'sender':_0x17be3b['sender'],'subject':_0x17be3b[_0x34a867(0x1ad)],'hasSessionId':!!_0x24be7c['sessionId']}),await _0x251a82['addInterAgentMessage'](_0x3f6468,{'id':_0x17be3b['id'],'messageId':_0x17be3b['id'],'sender':_0x17be3b['sender'],'senderName':_0x17be3b['senderName'],'subject':_0x17be3b[_0x34a867(0x1ad)],'content':_0x17be3b['content'],'attachments':_0x17be3b[_0x34a867(0x1d3)],'priority':_0x17be3b['priority'],'requiresReply':_0x17be3b['requiresReply'],'conversationId':_0x17be3b['conversationId'],'sessionId':_0x24be7c[_0x34a867(0x18a)],'timestamp':new Date()['toISOString']()}),console['log'](_0x34a867(0x1d0)+_0x3f6468,{'messageId':_0x17be3b['id'],'fromAgent':_0x17be3b[_0x34a867(0x1ae)],'subject':_0x17be3b['subject'],'priority':_0x17be3b['priority']});}}catch(_0x5eaabc){console['error'](_0x34a867(0x1c2)+_0x3f6468+':',_0x5eaabc);}}}['_hasAgentReplied'](_0x5210e1,_0x5783e4){const _0x39fc28=a0_0xe3db2b;for(const _0x408e3f of _0x5783e4[_0x39fc28(0x174)]){const _0x105a27=this['messages'][_0x39fc28(0x1bb)](_0x408e3f);if(_0x105a27&&_0x105a27['sender']===_0x5210e1)return!![];if(_0x105a27&&this['_hasAgentReplied'](_0x5210e1,_0x105a27))return!![];}return![];}['_getConversationDepth'](_0x54b165){const _0x540579=a0_0xe3db2b,_0x36a98f=this[_0x540579(0x16d)]['get'](_0x54b165);if(!_0x36a98f)return 0x0;let _0x10b332=0x0;const _0x2dfc4b=this[_0x540579(0x18d)]['get'](_0x36a98f[_0x540579(0x17b)]);return _0x2dfc4b&&(_0x10b332=this['_getMessageDepth'](_0x2dfc4b)),_0x10b332;}['_getMessageDepth'](_0x5c2d36,_0x25eb61=0x0){const _0x31339e=a0_0xe3db2b;if(_0x5c2d36['replies'][_0x31339e(0x1ce)]===0x0)return _0x25eb61;let _0x5a4b34=_0x25eb61;for(const _0xfbff16 of _0x5c2d36['replies']){const _0x2ce031=this['messages'][_0x31339e(0x1bb)](_0xfbff16);if(_0x2ce031){const _0x5e24a0=this['_getMessageDepth'](_0x2ce031,_0x25eb61+0x1);_0x5a4b34=Math[_0x31339e(0x157)](_0x5a4b34,_0x5e24a0);}}return _0x5a4b34;}[a0_0xe3db2b(0x1da)](_0x3ca5c5,_0x252c6d){const _0x1c24dc=a0_0xe3db2b;!this[_0x1c24dc(0x17a)][_0x1c24dc(0x196)](_0x3ca5c5)&&this[_0x1c24dc(0x17a)]['set'](_0x3ca5c5,{'sent':0x0,'received':0x0});const _0x368ab8=this[_0x1c24dc(0x17a)][_0x1c24dc(0x1bb)](_0x3ca5c5);_0x252c6d===_0x1c24dc(0x17d)?_0x368ab8['sent']++:_0x368ab8[_0x1c24dc(0x170)]++;}[a0_0xe3db2b(0x1dc)](){const _0x1c8f41=a0_0xe3db2b;return _0x1c8f41(0x1d1)+Date[_0x1c8f41(0x1af)]()+'-'+a0_0x354967['randomBytes'](0x4)['toString']('hex');}[a0_0xe3db2b(0x1b6)](){const _0x231fd9=a0_0xe3db2b;return _0x231fd9(0x1a1)+Date[_0x231fd9(0x1af)]()+'-'+a0_0x354967['randomBytes'](0x4)[_0x231fd9(0x180)]('hex');}[a0_0xe3db2b(0x169)](){const _0x1abbca=a0_0xe3db2b;return _0x1abbca(0x1bc)+Date[_0x1abbca(0x1af)]()+'-'+a0_0x354967[_0x1abbca(0x1cd)](0x4)[_0x1abbca(0x180)](_0x1abbca(0x178));}async['cleanup'](){const _0x2c5727=a0_0xe3db2b,_0x2477d3=Date['now'](),_0x52aeb7=_0x2477d3-this[_0x2c5727(0x156)]['messageRetentionPeriod'];for(const [_0x359dbf,_0x25c5bd]of this['messages'][_0x2c5727(0x18f)]()){const _0x354a07=new Date(_0x25c5bd[_0x2c5727(0x1cb)])[_0x2c5727(0x159)]();if(_0x354a07<_0x52aeb7){for(const _0x4aefaf of _0x25c5bd['attachments']){try{await a0_0x213cff['unlink'](_0x4aefaf[_0x2c5727(0x1c1)]);}catch(_0x46284f){}}for(const [_0x39bc67,_0x3a476c]of this['agentInboxes']['entries']()){_0x3a476c[_0x2c5727(0x164)](_0x359dbf);}this[_0x2c5727(0x18d)][_0x2c5727(0x164)](_0x359dbf);}}for(const [_0x20333f,_0x4d7dce]of this['conversations']['entries']()){const _0x260014=new Date(_0x4d7dce[_0x2c5727(0x1b4)])['getTime']();if(_0x260014<_0x52aeb7||_0x4d7dce[_0x2c5727(0x15c)]==='ended'){for(const [_0x22cb9d,_0x405a02]of this[_0x2c5727(0x19d)][_0x2c5727(0x18f)]()){_0x405a02[_0x2c5727(0x164)](_0x20333f);}this['conversations']['delete'](_0x20333f);}}}async[a0_0xe3db2b(0x145)](_0x3ab903,_0xcf65bd,_0xa01678){const _0x4e071f=a0_0xe3db2b;try{const _0x2eccf1={'type':_0x4e071f(0x184),'eventType':_0xcf65bd,'timestamp':_0x3ab903['timestamp'],'messageId':_0x3ab903['id'],'conversationId':_0x3ab903['conversationId'],'sender':{'id':_0x3ab903[_0x4e071f(0x1ae)],'name':_0x3ab903['senderName']},'recipients':Object['entries'](_0x3ab903['recipientNames']||{})['map'](([_0x55f88d,_0x3ee0dd])=>({'id':_0x55f88d,'name':_0x3ee0dd})),'subject':_0x3ab903[_0x4e071f(0x1ad)],'content':_0x3ab903[_0x4e071f(0x1b8)],'priority':_0x3ab903['priority'],'requiresReply':_0x3ab903[_0x4e071f(0x14a)],'hasAttachments':_0x3ab903['attachments']&&_0x3ab903['attachments'][_0x4e071f(0x1ce)]>0x0,'attachmentCount':_0x3ab903['attachments']?_0x3ab903[_0x4e071f(0x1d3)]['length']:0x0,'metadata':_0x3ab903['metadata']};if(_0xa01678[_0x4e071f(0x177)]&&_0xa01678['agentPool']['messageProcessor']){const _0x3ed354=_0xa01678[_0x4e071f(0x177)][_0x4e071f(0x1de)];if(_0x3ed354&&_0x3ed354[_0x4e071f(0x192)]&&_0x3ed354['orchestrator']['webServer']){_0x3ed354['orchestrator'][_0x4e071f(0x193)][_0x4e071f(0x1a7)](_0xa01678[_0x4e071f(0x18a)]||_0x4e071f(0x1b7),{'type':_0x4e071f(0x184),'action':_0x4e071f(0x184),'data':_0x2eccf1});return;}}if(_0xa01678[_0x4e071f(0x192)]&&_0xa01678['orchestrator']['webServer']){_0xa01678[_0x4e071f(0x192)][_0x4e071f(0x193)][_0x4e071f(0x1a7)](_0xa01678['sessionId']||_0x4e071f(0x1b7),{'type':_0x4e071f(0x184),'action':'agent-communication','data':_0x2eccf1});return;}global['loxiaWebServer']&&global['loxiaWebServer'][_0x4e071f(0x1a7)](_0xa01678[_0x4e071f(0x18a)]||'web-session',{'type':'agent-communication','action':'agent-communication','data':_0x2eccf1});}catch(_0x43fd1b){console['error']('Failed\x20to\x20broadcast\x20agent\x20message\x20to\x20UI:',_0x43fd1b);}}async[a0_0xe3db2b(0x1d4)](_0x23986b,_0x21deb9,_0xb898f6){const _0x2786f3=a0_0xe3db2b,_0x480762=_0xb898f6[_0x2786f3(0x177)];(!_0x23986b['interAgentTracking']||!(_0x23986b[_0x2786f3(0x1c9)]instanceof Map))&&(_0x23986b[_0x2786f3(0x1c9)]&&typeof _0x23986b['interAgentTracking']==='object'?_0x23986b[_0x2786f3(0x1c9)]=new Map(Object[_0x2786f3(0x18f)](_0x23986b['interAgentTracking'])):_0x23986b[_0x2786f3(0x1c9)]=new Map());const _0x507b6c=_0x23986b[_0x2786f3(0x1c9)];!_0x507b6c[_0x2786f3(0x196)](_0x21deb9)&&_0x507b6c[_0x2786f3(0x163)](_0x21deb9,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x5ea738=_0x507b6c[_0x2786f3(0x1bb)](_0x21deb9),_0x34922a=Date[_0x2786f3(0x1af)](),_0x298617=0x3c*0x3e8;if(_0x5ea738['lastType']===_0x2786f3(0x170)||_0x5ea738['lastReceived']&&_0x5ea738['lastReceived']>_0x5ea738[_0x2786f3(0x15e)])return{'allowed':!![]};if(_0x5ea738[_0x2786f3(0x15e)]){const _0x2410ec=_0x34922a-_0x5ea738[_0x2786f3(0x15e)];if(_0x2410ec>=_0x298617)return{'allowed':!![]};const _0x5b9283=_0x5ea738[_0x2786f3(0x15e)]+_0x298617;return{'allowed':![],'reason':_0x2786f3(0x1c6)+Math['ceil']((_0x5b9283-_0x34922a)/0x3e8)+_0x2786f3(0x185),'waitUntil':_0x5b9283};}return{'allowed':!![]};}async[a0_0xe3db2b(0x1c0)](_0x4a4025,_0x39f6be,_0x135689,_0x549d3d){const _0x56378f=a0_0xe3db2b,_0x29397b=_0x549d3d[_0x56378f(0x177)],_0xce5092=await _0x29397b[_0x56378f(0x154)](_0x4a4025);if(!_0xce5092)return;const _0x826f16=Date['now']();(!_0xce5092['interAgentTracking']||!(_0xce5092['interAgentTracking']instanceof Map))&&(_0xce5092[_0x56378f(0x1c9)]&&typeof _0xce5092[_0x56378f(0x1c9)]==='object'?_0xce5092['interAgentTracking']=new Map(Object['entries'](_0xce5092['interAgentTracking'])):_0xce5092[_0x56378f(0x1c9)]=new Map());!_0xce5092[_0x56378f(0x1c9)][_0x56378f(0x196)](_0x39f6be)&&_0xce5092['interAgentTracking'][_0x56378f(0x163)](_0x39f6be,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x389149=_0xce5092[_0x56378f(0x1c9)][_0x56378f(0x1bb)](_0x39f6be);if(_0x135689==='sent')_0x389149[_0x56378f(0x15e)]=_0x826f16,_0x389149['lastType']='sent';else _0x135689==='replied'&&(_0x389149['lastSent']=_0x826f16,_0x389149[_0x56378f(0x19a)]=_0x56378f(0x17d));const _0xe4c98c=await _0x29397b['getAgent'](_0x39f6be);if(_0xe4c98c){(!_0xe4c98c[_0x56378f(0x1c9)]||!(_0xe4c98c[_0x56378f(0x1c9)]instanceof Map))&&(_0xe4c98c['interAgentTracking']&&typeof _0xe4c98c[_0x56378f(0x1c9)]===_0x56378f(0x1b1)?_0xe4c98c[_0x56378f(0x1c9)]=new Map(Object['entries'](_0xe4c98c['interAgentTracking'])):_0xe4c98c[_0x56378f(0x1c9)]=new Map());!_0xe4c98c[_0x56378f(0x1c9)][_0x56378f(0x196)](_0x4a4025)&&_0xe4c98c[_0x56378f(0x1c9)][_0x56378f(0x163)](_0x4a4025,{'lastSent':null,'lastReceived':null,'lastType':null});const _0x2b3760=_0xe4c98c['interAgentTracking']['get'](_0x4a4025);_0x2b3760[_0x56378f(0x1c5)]=_0x826f16,_0x2b3760[_0x56378f(0x19a)]='received',await _0x29397b[_0x56378f(0x181)](_0x39f6be);}await _0x29397b['persistAgentState'](_0x4a4025);}['setMessageProcessor'](_0x665874){const _0x2b473d=a0_0xe3db2b;this[_0x2b473d(0x1de)]=_0x665874;}}function a0_0x7f00(_0x358dbe,_0x2e403e){_0x358dbe=_0x358dbe-0x140;const _0x2cc036=a0_0x2cc0();let _0x7f00bd=_0x2cc036[_0x358dbe];if(a0_0x7f00['KzwkHK']===undefined){var _0x1ea4ca=function(_0x21fd59){const _0x4c5dc5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x213cff='',_0x21d4dc='';for(let _0x354967=0x0,_0x38cfa7,_0x489653,_0x586dee=0x0;_0x489653=_0x21fd59['charAt'](_0x586dee++);~_0x489653&&(_0x38cfa7=_0x354967%0x4?_0x38cfa7*0x40+_0x489653:_0x489653,_0x354967++%0x4)?_0x213cff+=String['fromCharCode'](0xff&_0x38cfa7>>(-0x2*_0x354967&0x6)):0x0){_0x489653=_0x4c5dc5['indexOf'](_0x489653);}for(let _0x240eae=0x0,_0x294937=_0x213cff['length'];_0x240eae<_0x294937;_0x240eae++){_0x21d4dc+='%'+('00'+_0x213cff['charCodeAt'](_0x240eae)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x21d4dc);};a0_0x7f00['bGXYMf']=_0x1ea4ca,a0_0x7f00['dAIFrN']={},a0_0x7f00['KzwkHK']=!![];}const _0x5e106e=_0x2cc036[0x0],_0x406836=_0x358dbe+_0x5e106e,_0x441169=a0_0x7f00['dAIFrN'][_0x406836];return!_0x441169?(_0x7f00bd=a0_0x7f00['bGXYMf'](_0x7f00bd),a0_0x7f00['dAIFrN'][_0x406836]=_0x7f00bd):_0x7f00bd=_0x441169,_0x7f00bd;}export default AgentCommunicationTool;function a0_0x2cc0(){const _0x515aee=['y2fWywjPBgL0AwvZ','BwvZC2fNzunVDw50','zMLSDgvY','CMvWBgLLCW','z2v0qxzHAwXHyMXLqwDLBNrZ','BwfYA0nVBNzLCNnHDgLVBKvUzgvK','ywDLBNrqB29S','Agv4','BMfTzq','ywDLBNrnzxnZywDLq291BNrZ','CM9VDe1LC3nHz2vjza','ywDLBNrjBMjVEgvZ','C2vUDa','y29UDMvYC2f0Aw9UrgvWDgHZ','x2DLDenVBNzLCNnHDgLVBKrLChrO','Dg9tDhjPBMC','CgvYC2LZDefNzw50u3rHDgu','BM9YBwfS','z2v0lwf2ywLSywjSzs1Hz2vUDhm','ywDLBNqTy29TBxvUAwnHDgLVBG','CYbZAw5JzsbSyxn0ig1LC3nHz2u','DhLWzq','x25VDgLMEvjLy2LWAwvUDhm','ywn0Aw9U','mtr0tvfwu3m','C2vZC2LVBKLK','CgfYC2vqyxjHBwv0zxjZ','q29UDMvYC2f0Aw9UigrLChrOigXPBwL0ihjLywnOzwqGka','BwvZC2fNzxm','BwfYAY1JB252zxjZyxrPB24Tzw5Kzwq','zw50CMLLCW','C3vIC3rYAw5N','zxjYB3i','B3jJAgvZDhjHDg9Y','D2vIu2vYDMvY','Bwf4uMvJAxbPzw50C1bLCK1LC3nHz2u','CgfYC2u','AgfZ','ngvStgfUqq','qwDLBNqGsuqGAxmGCMvXDwLYzwqGAw4Gy29UDgv4Da','qxr0ywnOBwvUDcbLEgnLzwrZihnPEMuGBgLTAxq6ia','BgfZDfr5Cgu','cGOQkK1LC3nHz2u6kIOk','kqOQkLn1yMPLy3q6kIOG','ywDLBNrdB252zxjZyxrPB25Z','Dg9ju09tDhjPBMC','CMvWBgfJzq','z2v0lxvUCMvWBgLLzc1TzxnZywDLCW','y29UDI0','rMfPBgvKihrVihbYB2nLC3mGyxr0ywnOBwvUDdOG','Bwf0y2HbBgW','C29YDa','zw5KvgLTzq','AM9PBG','yNjVywrJyxn0vg9tzxnZAw9U','y2mTCMvJAxbPzw50CW','otq0mZiZugzYrMns','t3jPz2LUywWGBwvZC2fNzsbUB3qGzM91BMq6ia','mtu2mtG5AhbRv2nT','Bwf4qxr0ywnOBwvUDhnqzxjnzxnZywDL','C3vIAMvJDa','C2vUzgvY','BM93','CMvWBgLLza','B2jQzwn0','y29UDMvYC2f0Aw9UlwLK','Aw5JBhvKzxm','BgfZDefJDgL2Axr5','x2LUAxrPywXPEMvtDg9YywDL','x2DLBMvYyxrLq29UDMvYC2f0Aw9Uswq','D2vIlxnLC3nPB24','y29UDgvUDa','ywDLBNrJB21TDw5Py2f0Aw9U','y29UDMvYC2f0Aw9Uswq','z2v0','yxr0lq','mZu0ntmYotvny1DOrM4','ywrK','uMu6ia','x3vWzgf0zunVBNzLCNnHDgLVBLrYywnRAw5N','C3rVCMfNzvbHDgG','rMfPBgvKihrVig5VDgLMEsbHz2vUDca','y2vPBa','C2vUze1LC3nHz2u','BgfZDfjLy2vPDMvK','txvZDcb3ywL0ia','lI4U','ndi1ndaZmg1VDNHdwa','Aw50zxjbz2vUDfrYywnRAw5N','wwvZ','DgLTzxn0yw1W','y29UDMvYC2f0Aw9UvgLTzw91Da','CMfUzg9TqNL0zxm','BgvUz3rO','x3bHCNnLuMvJAxbPzw50CW','rgLYzwn0ig1LC3nHz2uGAw5Qzwn0zwqGyw5Kihf1zxvLzcbMB3iGChjVy2vZC2LUzZOG','BxnNlq','CYbIzwzVCMuGBMv4DcbTzxnZywDLlIbszwnPCgLLBNrZig5LzwqGDgLTzsb0BYbYzxnWB25KlG','yxr0ywnOBwvUDhm','x2nHBLnLBMrnzxnZywDL','rMfPBgvKihrVigLUAxrPywXPEMuGBwvZC2fNzsbZDg9YywDLoG','mtGXmZG1nMjjuMnzwG','z2v0vw5YzxbSAwvKtwvZC2fNzxm','igf0DgfJAg1LBNrZigfSBg93zwq','ywn0AxzL','x3vWzgf0zu1LC3nHz2vdB3vUDhm','ywXSB3DLza','x2DLBMvYyxrLtwvZC2fNzuLK','C3rHCNrZv2L0Aa','BwvZC2fNzvbYB2nLC3nVCG','ChjPB3jPDhK','Cgf0Aa','ChvZAa','ywn0Aw9UCW','ywDLBNqTBwvZC2fNzs1YzxbSEq','mZi0nZaYnKvyyvPKrW','cIOQuhjPB3jPDhK6kIOG','x3bYB2nLC3nbDhrHy2HTzw50CW','C2L6zq','CMvWBhLuB01LC3nHz2u','z2v0rgvZy3jPChrPB24','x2jYB2fKy2fZDfrVvuK','CMvHC29U','Bg9N','CMvJAxbPzw50swq','D2fPDfvUDgLS','CMvXDwLYzxnszxbSEq','icHjrdOG','mJy4oti3mMvYv2DyEq','q29UC2LKzxiGBwfYA2LUzYb0AgLZignVBNzLCNnHDgLVBIbHCYbLBMrLzcbHBMqGC3rHCNrPBMCGzNjLC2GGAwyGBMvLzgvKlG','zgvWDgG','C3rVCMfNzurPCG','8j+tRcbrDwv1zwLUzYbPBNrLCI1Hz2vUDcbTzxnZywDLigzVCIbZy2HLzhvSzxiGChjVy2vZC2LUzW','CMvZB2X2zwq','C3rHDa','AxnqyxvZzwq','z2v0qwDLBNq','AxnbCNjHEq','y29UzMLN','Bwf4','u3vIAMvJDcbHBMqGBwvZC2fNzsbHCMuGCMvXDwLYzwq','z2v0vgLTzq','ihjLy2LWAwvUDhmGywXSB3DLza','Bwf4q29UDMvYC2f0Aw9UrgvWDgG','C3rHDhvZ','BwTKAxi','BgfZDfnLBNq','qxzHAwXHyMXLigfNzw50CYb5B3uGy2fUig1LC3nHz2u6cG','zw5Kzwq','zw5HyMXLqNjVywrJyxn0','BgLZDefJDgL2zufNzw50CW','C2v0','zgvSzxrL','CMvJAxbPzw50CW','y3vYCMvUDe1VzgvS','C2vUzgvYtMfTzq','BwfW','x2DLBMvYyxrLqxr0ywnOBwvUDeLK','zw5KuMvHC29U','q29UDMvYC2f0Aw9UieLeigLZihjLCxvPCMvK','y29TBxvUAwnHDgLVBG','y29UDMvYC2f0Aw9UCW','BwvZC2fNzq','ihjLy2LWAwvUDhmGCgvYig1LC3nHz2uklsbdB252zxjZyxrPB25Zigv4CgLYzsbHzNrLCIa','CMvJzwL2zwq'];a0_0x2cc0=function(){return _0x515aee;};return a0_0x2cc0();}
@@ -1 +1 @@
1
- const a0_0x30b360=a0_0x57ee;(function(_0x255813,_0x251d36){const _0x28bed1=a0_0x57ee,_0x7a62e9=_0x255813();while(!![]){try{const _0x6f4c16=-parseInt(_0x28bed1(0xe3))/0x1+-parseInt(_0x28bed1(0xdc))/0x2*(-parseInt(_0x28bed1(0xe2))/0x3)+-parseInt(_0x28bed1(0xd9))/0x4*(-parseInt(_0x28bed1(0xb0))/0x5)+-parseInt(_0x28bed1(0xa3))/0x6+parseInt(_0x28bed1(0xe1))/0x7*(parseInt(_0x28bed1(0xba))/0x8)+-parseInt(_0x28bed1(0xa5))/0x9*(parseInt(_0x28bed1(0xe8))/0xa)+parseInt(_0x28bed1(0xe9))/0xb;if(_0x6f4c16===_0x251d36)break;else _0x7a62e9['push'](_0x7a62e9['shift']());}catch(_0x33e5fd){_0x7a62e9['push'](_0x7a62e9['shift']());}}}(a0_0x2df6,0x57df9));function a0_0x57ee(_0x44a298,_0x411523){_0x44a298=_0x44a298-0x9f;const _0x2df6e6=a0_0x2df6();let _0x57ee08=_0x2df6e6[_0x44a298];if(a0_0x57ee['HpchYj']===undefined){var _0x270fbd=function(_0x2aa23f){const _0x294d41='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4f0a59='',_0x1935b7='';for(let _0x2055a8=0x0,_0x10e626,_0x258916,_0x357116=0x0;_0x258916=_0x2aa23f['charAt'](_0x357116++);~_0x258916&&(_0x10e626=_0x2055a8%0x4?_0x10e626*0x40+_0x258916:_0x258916,_0x2055a8++%0x4)?_0x4f0a59+=String['fromCharCode'](0xff&_0x10e626>>(-0x2*_0x2055a8&0x6)):0x0){_0x258916=_0x294d41['indexOf'](_0x258916);}for(let _0x30fd78=0x0,_0x4eaa34=_0x4f0a59['length'];_0x30fd78<_0x4eaa34;_0x30fd78++){_0x1935b7+='%'+('00'+_0x4f0a59['charCodeAt'](_0x30fd78)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1935b7);};a0_0x57ee['hguICG']=_0x270fbd,a0_0x57ee['ntVUbm']={},a0_0x57ee['HpchYj']=!![];}const _0x4b849d=_0x2df6e6[0x0],_0x338528=_0x44a298+_0x4b849d,_0x5ea936=a0_0x57ee['ntVUbm'][_0x338528];return!_0x5ea936?(_0x57ee08=a0_0x57ee['hguICG'](_0x57ee08),a0_0x57ee['ntVUbm'][_0x338528]=_0x57ee08):_0x57ee08=_0x5ea936,_0x57ee08;}function a0_0x2df6(){const _0x31a87f=['BwLUugf1C2veDxjHDgLVBG','mZKWnJe2zxHmrwXX','D2fYBMLUz3m','z2v0rgvZy3jPChrPB24','nK5yC0fVAG','BwvZC2fNzq','C3rHDhvZ','zg9JA2vYihj1BG','Aw4G','mtK2ue9dwfzr','mZK2mtq3ze5muM5y','mZyWnZGWENjSz3fO','t3b0Aw9UywWGCMvHC29UigzVCIb0AguGCgf1C2u','y29TCgLSzq','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','ChvZAa','mtG3meX3z2zWwq','mJe1mJqZnMn1Eg9gvW','ugf1C2uGzhvYAw5NihbHy2THz2uGAw5ZDgfSBgf0Aw9U','C3vNz2vZDgvK','AxnfBMfIBgvK','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mZa8l3bHDxnLlwr1CMf0Aw9UpGPBl3rVB2XD','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHihDOB2XLig51BwjLCIbVzIbZzwnVBMrZ','rxjYB3iGy2HLy2TPBMCGywDLBNqGC3rHDhvZoIa','BgvUz3rO','CgfYC2vqyxjHBwv0zxjZ','q29UC2LKzxiGAwyGC3vJAcbHigXVBMCGCgf1C2uGAxmGCMvHBgX5ig5LzwrLza','mJGWnte2mMjKrufbAW','Bwf4ugf1C2veDxjHDgLVBG','nty3uNHHDeXb','C2v0qwDLBNrqB29S','qNvPBgqVy29TCgLSyxrPB24GChjVy2vZC2vZignHBIbIzsb0Aw1LlwLUDgvUC2L2zq','yNvPBgq','CMvHC29U','BwfRzq','zxjYB3i','ywDLBNrqB29S','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mtiWpc9WyxvZzs1KDxjHDgLVBJ4kphjLyxnVBJ5xywL0Aw5NigzVCIbUCg0GAw5ZDgfSBcb0BYbJB21WBgv0ztWVCMvHC29UpGPBl3rVB2XD','u2LTCgXLidmWlxnLy29UzcbWyxvZzsb3AxrOB3v0ihnWzwnPzMLJihjLyxnVBG','Cgf1C2uTzhvYyxrPB24GBxvZDcbIzsbHihzHBgLKig51BwjLCG','mJvTsMfuyu8','Bwf4rhvYyxrPB24','BwvKAxvT','AxnjBNrLz2vY','Dg9ju09tDhjPBMC','Cgf1C2u','ywDLBNqTC3rHDhvZ','ywDLBNqTCgf1C2u','Aw5JBhvKzxm','zhvYyxrPB24','mZqYnJrZA0rOB0i','CM91BMq','ihnLy29UzcHZkq','Cgf1C2vKvw50AwW','ihnLy29UzhmGka','BgfZDenVBw1HBMq','y29TCgLSyxrPB24','Bg9Nz2vY','qwDLBNqGzgvSyxKGDg9VBcbKAxnHyMXLzcaTig5VigfNzw50ihbVB2WGyxzHAwXHyMXL','Dg9mB3DLCKnHC2u','BM93','zMXVB3i','uefvu0ve','zM9YBwf0uMvZDw1LvgLTzq','C3rYAw5N','Cgf1C2uTzhvYyxrPB24GAxmGCMvXDwLYzwq','qwDLBNqGCgf1C2uGCMvXDwvZDgvK','C3vJy2vZCW','tufyx1bbvvnfx0rvuKfusu9o','z2v0vgLTzq','Aw5MBW','CMvXDwLYzxnqCM9Qzwn0','C3rHy2S','AxnbC3LUyW','vw5RBM93BIbLCNjVCG','rg9JA2vYig9WzxjHDgLVBNmGB2z0zw4GCMvXDwLYzsbLEhrLBMrLzcb0Aw1L','z2L0ihb1BgW','y2fUugf1C2vbz2vUDa','r2L0ig9WzxjHDgLVBNmGDxn1ywXSEsbJB21WBgv0zsbXDwLJA2X5','Cgf1C2uTzhvYyxrPB24'];a0_0x2df6=function(){return _0x31a87f;};return a0_0x2df6();}import{BaseTool}from'./baseTool.js';import a0_0x4f0a59 from'../utilities/tagParser.js';import{TOOL_STATUS,SYSTEM_DEFAULTS,AGENT_STATUS}from'../utilities/constants.js';class AgentDelayTool extends BaseTool{constructor(_0x1935b7={},_0x2055a8=null,_0x10e626=null){const _0x520c20=a0_0x57ee;super(_0x1935b7,_0x2055a8),this[_0x520c20(0xac)]=_0x10e626,this[_0x520c20(0xa4)]=_0x1935b7[_0x520c20(0xb1)]||SYSTEM_DEFAULTS[_0x520c20(0xcc)],this[_0x520c20(0xd8)]=_0x1935b7['minDuration']||0x1,this[_0x520c20(0xcf)]=![],this[_0x520c20(0xd1)]=![];}[a0_0x30b360(0xdb)](){const _0x15893d=a0_0x30b360;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[_0x15893d(0xd8)]+'-'+this[_0x15893d(0xa4)]+')\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[_0x15893d(0xc6)]+'\x27\x20and\x20will\x20not\x20process\x20new\x20messages\x20until\x20the\x20duration\x20expires.\x0aOther\x20agents\x20can\x20still\x20send\x20messages,\x20but\x20they\x20will\x20be\x20queued\x20until\x20the\x20agent\x20resumes.\x0a\x0aIMPORTANT:\x20Use\x20this\x20tool\x20judiciously.\x20Only\x20pause\x20when\x20genuinely\x20waiting\x20for\x20external\x20processes.\x0aMaximum\x20pause\x20duration:\x20'+this['maxPauseDuration']+_0x15893d(0xbe)+Math['floor'](this['maxPauseDuration']/0x3c)+'\x20minutes).\x0a\x20\x20\x20\x20';}[a0_0x30b360(0xa1)](_0x258916){const _0x1999f4=a0_0x30b360;try{const _0x357116=a0_0x4f0a59['extractContent'](_0x258916,_0x1999f4(0xd7)),_0x30fd78=a0_0x4f0a59['extractContent'](_0x258916,'reason'),_0x4eaa34=_0x357116[_0x1999f4(0xa0)]>0x0?parseInt(_0x357116[0x0],0xa):null,_0xfd1dfd=_0x30fd78['length']>0x0?_0x30fd78[0x0]['trim']():_0x1999f4(0xca);return{'duration':_0x4eaa34,'reason':_0xfd1dfd,'rawContent':_0x258916['trim']()};}catch(_0x47f677){throw new Error('Failed\x20to\x20parse\x20agent\x20delay\x20parameters:\x20'+_0x47f677[_0x1999f4(0xdd)]);}}[a0_0x30b360(0xe6)](){const _0xe144fe=a0_0x30b360;return[_0xe144fe(0xb9)];}['validateParameterTypes'](_0x1805fe){const _0x50953e=a0_0x30b360,_0x2f7c15=[];return _0x1805fe['duration']!==null&&_0x1805fe[_0x50953e(0xb9)]!==undefined&&((typeof _0x1805fe['duration']!=='number'||isNaN(_0x1805fe['duration']))&&_0x2f7c15[_0x50953e(0xe7)](_0x50953e(0xaf))),_0x1805fe[_0x50953e(0xa9)]&&typeof _0x1805fe['reason']!==_0x50953e(0xc8)&&_0x2f7c15[_0x50953e(0xe7)]('reason\x20must\x20be\x20a\x20string'),{'valid':_0x2f7c15['length']===0x0,'errors':_0x2f7c15};}[a0_0x30b360(0xee)](_0x5a08ff){const _0x44808a=a0_0x30b360,_0x4f2990=[];return _0x5a08ff['duration']===null||_0x5a08ff['duration']===undefined?_0x4f2990[_0x44808a(0xe7)](_0x44808a(0xc9)):(_0x5a08ff[_0x44808a(0xb9)]<this['minPauseDuration']&&_0x4f2990[_0x44808a(0xe7)]('pause-duration\x20must\x20be\x20at\x20least\x20'+this['minPauseDuration']+_0x44808a(0xbc)),_0x5a08ff['duration']>this['maxPauseDuration']&&_0x4f2990['push']('pause-duration\x20cannot\x20exceed\x20'+this['maxPauseDuration']+'\x20seconds\x20('+Math[_0x44808a(0xc5)](this['maxPauseDuration']/0x3c)+'\x20minutes)'),!Number[_0x44808a(0xb3)](_0x5a08ff['duration'])&&_0x4f2990['push'](_0x44808a(0xef))),_0x5a08ff['reason']&&_0x5a08ff[_0x44808a(0xa9)][_0x44808a(0xa0)]>0xc8&&_0x4f2990[_0x44808a(0xe7)]('reason\x20cannot\x20exceed\x20200\x20characters'),{'valid':_0x4f2990['length']===0x0,'errors':_0x4f2990};}async['execute'](_0x5ce5c1,_0x1da452){const _0x1ed73f=a0_0x30b360,{duration:_0x163f0b,reason:_0xc8bd23}=_0x5ce5c1,{agentId:_0x4cab90}=_0x1da452;if(!_0x4cab90)throw new Error('Agent\x20ID\x20is\x20required\x20for\x20agent\x20delay\x20tool');if(!this['agentPool'])throw new Error('Agent\x20pool\x20not\x20available\x20-\x20cannot\x20pause\x20agent');try{const _0x4e75a2=new Date(Date[_0x1ed73f(0xc4)]()+_0x163f0b*0x3e8),_0x51ed82=await this[_0x1ed73f(0xac)]['pauseAgent'](_0x4cab90,_0x4e75a2,_0xc8bd23),_0x48d336=await this['agentPool']['getAgent'](_0x4cab90);_0x48d336&&(_0x48d336['delayEndTime']=_0x4e75a2[_0x1ed73f(0xb4)](),await this[_0x1ed73f(0xac)]['persistAgentState'](_0x4cab90));if(!_0x51ed82[_0x1ed73f(0xcb)])throw new Error('Failed\x20to\x20pause\x20agent:\x20'+(_0x51ed82['message']||_0x1ed73f(0xd2)));const _0x1f75df={'success':!![],'action':_0x1ed73f(0xb7),'agentId':_0x4cab90,'pauseDuration':_0x163f0b,'pausedUntil':_0x4e75a2[_0x1ed73f(0xb4)](),'reason':_0xc8bd23,'message':'Agent\x20will\x20resume\x20activity\x20in\x20'+_0x163f0b+'\x20second'+(_0x163f0b!==0x1?'s':''),'resumeTime':this[_0x1ed73f(0xc7)](_0x4e75a2),'toolUsed':'agent-delay'};return this[_0x1ed73f(0xc1)]?.[_0x1ed73f(0xce)]('Agent\x20paused\x20via\x20agent-delay\x20tool:\x20'+_0x4cab90,{'duration':_0x163f0b,'reason':_0xc8bd23,'pausedUntil':_0x4e75a2[_0x1ed73f(0xb4)](),'toolUsage':!![]}),_0x1f75df;}catch(_0x5e517f){this['logger']?.[_0x1ed73f(0xab)]('Agent\x20delay\x20tool\x20execution\x20failed:\x20'+_0x5e517f[_0x1ed73f(0xdd)],{'agentId':_0x4cab90,'duration':_0x163f0b,'reason':_0xc8bd23,'error':_0x5e517f[_0x1ed73f(0xd0)]});throw _0x5e517f;}}['getSupportedActions'](){const _0x1205a8=a0_0x30b360;return[_0x1205a8(0xb5),'delay'];}['getParameterSchema'](){const _0x36187c=a0_0x30b360;return{'type':'object','properties':{'duration':{'type':'integer','minimum':this[_0x36187c(0xd8)],'maximum':this['maxPauseDuration'],'description':'Number\x20of\x20seconds\x20to\x20pause\x20agent\x20activity'},'reason':{'type':_0x36187c(0xc8),'maxLength':0xc8,'description':_0x36187c(0xe4)}},'required':[_0x36187c(0xb9)]};}['getCapabilities'](){const _0x5656d3=a0_0x30b360,_0x551a20=super['getCapabilities']();return{..._0x551a20,'pauseRange':{'min':this[_0x5656d3(0xd8)],'max':this['maxPauseDuration'],'unit':'seconds'},'affects':_0x5656d3(0xb6),'interactsWithAgentPool':!![],'useCases':['installation-waiting','service-startup','file-operations','build-processes',_0x5656d3(0xc0),'deployment-delays']};}[a0_0x30b360(0xc7)](_0x3bd987){const _0x2394d2=a0_0x30b360,_0xb3432a=new Date(),_0x2e8e0e=Math[_0x2394d2(0xbb)]((_0x3bd987[_0x2394d2(0xcd)]()-_0xb3432a[_0x2394d2(0xcd)]())/0x3e8);if(_0x2e8e0e<0x3c)return'in\x20'+_0x2e8e0e+'\x20second'+(_0x2e8e0e!==0x1?'s':'');else{if(_0x2e8e0e<0xe10){const _0x23687e=Math[_0x2394d2(0xbb)](_0x2e8e0e/0x3c);return _0x2394d2(0xe0)+_0x23687e+'\x20minute'+(_0x23687e!==0x1?'s':'');}else{const _0xad0ac0=Math[_0x2394d2(0xbb)](_0x2e8e0e/0xe10);return'in\x20'+_0xad0ac0+'\x20hour'+(_0xad0ac0!==0x1?'s':'');}}}['getUsageExamples'](){const _0x57c7eb=a0_0x30b360;return[{'title':'Basic\x20pause\x20for\x2030\x20seconds','command':_0x57c7eb(0xed),'description':_0x57c7eb(0xae)},{'title':_0x57c7eb(0xea),'command':_0x57c7eb(0xad),'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':'Short\x20pause\x20to\x20allow\x20a\x20service\x20to\x20fully\x20initialize'},{'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_0x30b360(0xd5)](_0x4feeec){const _0xbd7eb=a0_0x30b360;if(!this[_0xbd7eb(0xac)])return{'canPause':![],'reason':'Agent\x20pool\x20not\x20available'};try{const _0x4b72e0=await this['agentPool']['getAgent'](_0x4feeec);if(!_0x4b72e0)return{'canPause':![],'reason':'Agent\x20not\x20found'};if(_0x4b72e0['status']===AGENT_STATUS[_0xbd7eb(0xc6)])return{'canPause':![],'reason':'Agent\x20is\x20already\x20paused','pausedUntil':_0x4b72e0[_0xbd7eb(0xbd)]};return{'canPause':!![],'currentStatus':_0x4b72e0[_0xbd7eb(0xde)]};}catch(_0x241599){return{'canPause':![],'reason':_0xbd7eb(0x9f)+_0x241599['message']};}}['getPauseRecommendations'](_0x4aa7f0){const _0x511ef4=a0_0x30b360,_0x3f159a={'suggested':[],'warnings':[]};if(_0x4aa7f0[_0x511ef4(0xbf)]&&typeof _0x4aa7f0['lastCommand']===_0x511ef4(0xc8)){const _0x28e192=_0x4aa7f0['lastCommand'][_0x511ef4(0xc3)]();(_0x28e192[_0x511ef4(0xb8)]('npm\x20install')||_0x28e192[_0x511ef4(0xb8)]('yarn\x20install'))&&_0x3f159a['suggested'][_0x511ef4(0xe7)]({'duration':0x5a,'reason':'Package\x20installation\x20typically\x20takes\x201-2\x20minutes','confidence':'high'}),(_0x28e192[_0x511ef4(0xb8)]('docker\x20build')||_0x28e192[_0x511ef4(0xb8)](_0x511ef4(0xdf)))&&_0x3f159a[_0x511ef4(0xeb)]['push']({'duration':0x78,'reason':_0x511ef4(0xd3),'confidence':_0x511ef4(0xb2)}),(_0x28e192['includes'](_0x511ef4(0xaa))||_0x28e192['includes'](_0x511ef4(0xa8))||_0x28e192[_0x511ef4(0xb8)](_0x511ef4(0xe5)))&&_0x3f159a[_0x511ef4(0xeb)][_0x511ef4(0xe7)]({'duration':0xb4,'reason':_0x511ef4(0xa7),'confidence':'medium'}),(_0x28e192['includes']('git\x20clone')||_0x28e192[_0x511ef4(0xb8)](_0x511ef4(0xd4)))&&_0x3f159a[_0x511ef4(0xeb)][_0x511ef4(0xe7)]({'duration':0x1e,'reason':_0x511ef4(0xd6),'confidence':'high'});}return _0x4aa7f0['requestedDuration']&&(_0x4aa7f0['requestedDuration']<0xa&&_0x3f159a[_0x511ef4(0xda)][_0x511ef4(0xe7)]('Very\x20short\x20pauses\x20may\x20not\x20be\x20necessary'),_0x4aa7f0['requestedDuration']>0xf0&&_0x3f159a['warnings']['push'](_0x511ef4(0xa2))),_0x3f159a;}[a0_0x30b360(0xa6)](_0x2c0ded){const _0x192955=a0_0x30b360;this['agentPool']=_0x2c0ded,this[_0x192955(0xec)]=!!_0x2c0ded,this['isEnabled']?this[_0x192955(0xc1)]?.['info']('Agent\x20delay\x20tool\x20enabled\x20with\x20agent\x20pool'):this[_0x192955(0xc1)]?.['warn'](_0x192955(0xc2));}}export default AgentDelayTool;
1
+ const a0_0xf1e227=a0_0x49fe;function a0_0x49fe(_0x4d0ac1,_0x1e1bb0){_0x4d0ac1=_0x4d0ac1-0x9f;const _0x28348a=a0_0x2834();let _0x49fe14=_0x28348a[_0x4d0ac1];if(a0_0x49fe['EychkB']===undefined){var _0x2980b1=function(_0x2efbd0){const _0x3bf807='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x210b6f='',_0x49231e='';for(let _0x1c2e92=0x0,_0x264fa4,_0x54e71b,_0x33acee=0x0;_0x54e71b=_0x2efbd0['charAt'](_0x33acee++);~_0x54e71b&&(_0x264fa4=_0x1c2e92%0x4?_0x264fa4*0x40+_0x54e71b:_0x54e71b,_0x1c2e92++%0x4)?_0x210b6f+=String['fromCharCode'](0xff&_0x264fa4>>(-0x2*_0x1c2e92&0x6)):0x0){_0x54e71b=_0x3bf807['indexOf'](_0x54e71b);}for(let _0x24cdf8=0x0,_0x574ead=_0x210b6f['length'];_0x24cdf8<_0x574ead;_0x24cdf8++){_0x49231e+='%'+('00'+_0x210b6f['charCodeAt'](_0x24cdf8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49231e);};a0_0x49fe['NauQwQ']=_0x2980b1,a0_0x49fe['caENRn']={},a0_0x49fe['EychkB']=!![];}const _0x568795=_0x28348a[0x0],_0x4a4eb7=_0x4d0ac1+_0x568795,_0x4ae71b=a0_0x49fe['caENRn'][_0x4a4eb7];return!_0x4ae71b?(_0x49fe14=a0_0x49fe['NauQwQ'](_0x49fe14),a0_0x49fe['caENRn'][_0x4a4eb7]=_0x49fe14):_0x49fe14=_0x4ae71b,_0x49fe14;}function a0_0x2834(){const _0x105ed5=['BwvKAxvT','nJiZnZeYrvf3Dffo','z2v0vgLTzq','D2fYBMLUz3m','mty0ELPPqxng','yNvPBgqTChjVy2vZC2vZ','tNvTyMvYig9MihnLy29UzhmGDg8GCgf1C2uGywDLBNqGywn0AxzPDhK','y29TCgLSzq','qwDLBNqGzgvSyxKGDg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','qwDLBNqGzgvSyxKGDg9VBcbLBMfIBgvKihDPDgGGywDLBNqGCg9VBa','qwDLBNqGCgf1C2uGCMvXDwvZDgvK','qwDLBNqGzgvSyxKGDg9VBcbKAxnHyMXLzcaTig5VigfNzw50ihbVB2WGyxzHAwXHyMXL','ugf1C2uGzM9YidiGBwLUDxrLCYb3AgLSzsbWywnRywDLCYbHCMuGyMvPBMCGAw5ZDgfSBgvK','ig1PBNv0zxmPlGOGicaG','Bwf4ugf1C2veDxjHDgLVBG','ndCYmti4teHRy1j3','D2fYBG','twf4Aw11BsbKDxjHDgLVBIbWyxvZzsbMB3iGBgvUz3rOEsbIDwLSzcbVCgvYyxrPB25Z','BwvZC2fNzq','Bwf4rhvYyxrPB24','Aw5ZDgfSBgf0Aw9UlxDHAxrPBMC','qwDLBNqGsuqGAxmGCMvXDwLYzwqGzM9YigfNzw50igrLBgf5ihrVB2W','ntqWnJuZm3zztfnVAW','zM9YBwf0uMvZDw1LvgLTzq','cKfNzw50ierLBgf5ifrVB2W6ifbHDxnLigfNzw50igfJDgL2Axr5igzVCIbHihnWzwnPzMLLzcbKDxjHDgLVBIb0BYbWCMv2zw50ihvUBMvJzxnZyxj5ig1LC3nHz2uGzxHJAgfUz2vZigr1CMLUzYb3ywL0Aw5NihbLCMLVzhmUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjHz2vUDgrLBgf5iIWkicaIzhvYyxrPB24IoIaZmcWkicaICMvHC29UiJOGiLDHAxrPBMCGzM9Yig5WBsbPBNn0ywXSihrVignVBxbSzxrLiGP9cMbGyaOkuefsqu1fvevsuZOklsbKDxjHDgLVBJOGtNvTyMvYig9MihnLy29UzhmGDg8GCgf1C2uGka','qNvPBgqVy29TCgLSyxrPB24GChjVy2vZC2vZignHBIbIzsb0Aw1LlwLUDgvUC2L2zq','zg9JA2vYigj1AwXK','uefvu0ve','ksaTihjLCxvPCMvKcI0GCMvHC29UoIbpChrPB25HBcbLEhbSyw5HDgLVBIbMB3iGDgHLihbHDxnLcGPvu0uGq0ftrvm6cI0Gqwz0zxiGCNvUBMLUzYaNBNbTigLUC3rHBgWNig9YihnPBwLSyxiGBg9UzY1YDw5UAw5NignVBw1HBMrZcI0Gv2fPDgLUzYbMB3iGC2vYDMLJzxmGDg8GC3rHCNqGDxaklsbbBgXVD2LUzYb0Aw1LigzVCIbMAwXLihn5C3rLBsbVCgvYyxrPB25ZihrVignVBxbSzxrLcI0GuhjLDMvUDgLUzYbYyxbPzcbZDgf0DxmGy2HLy2TPBMCGBg9VChmklsbeDxjPBMCGyNvPBgqGChjVy2vZC2vZig9YignVBxbPBgf0Aw9UcGPfwefnueXfuZOkcJeUiejHC2LJihbHDxnLigzVCIaXig1PBNv0ztOkygbGANnVBGP7cIaGiNrVB2Xjzci6icjHz2vUDgrLBgf5iIWkicaIzhvYyxrPB24IoIa2maP9cMbGyaOkmI4Gugf1C2uGD2L0AcbYzwfZB246cMbGygPZB24kEWOGicj0B29SswqIoIaIywDLBNrKzwXHEsiScIaGiMr1CMf0Aw9UiJOGmtiWlaOGicjYzwfZB24IoIaIsw5ZDgfSBgLUzYbKzxbLBMrLBMnPzxmIcN0kygbGcGOZlIbcCMLLzIbWyxvZzsbMB3iGC2vYDMLJzsbZDgfYDhvWoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiMfNzw50zgvSyxKIlaOGicjKDxjHDgLVBIi6idmWlaOGicjYzwfZB24IoIaIv2fPDgLUzYbMB3iGC2vYDMvYihn0yxj0DxaIcN0kygbGcGPcruHbvKLpuJOkvgHLigfNzw50ihDPBgWGyMuGBwfYA2vKigfZicC','CM91BMq','ywDLBNqTCgf1C2u','qwDLBNqGCgf1C2vKihzPysbHz2vUDc1KzwXHEsb0B29SoIa','BgvUz3rO','C3vJy2vZCW','BM93','ihnLy29UzcHZkq','BwfRzq','qwDLBNqGD2LSBcbYzxn1BwuGywn0AxzPDhKGAw4G','z2L0ignSB25L','ownUuwPQtW','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mZaWpc9WyxvZzs1KDxjHDgLVBJ4kphjLyxnVBJ5xywL0Aw5NigzVCIbSyxjNzsbWCM9Qzwn0ignVBxbPBgf0Aw9Upc9YzwfZB24+cLSVDg9VBf0','ig1PBNv0zxmP','Aw5JBhvKzxm','z2v0qwDLBNq','Bg9Nz2vY','B2jQzwn0','qwDLBNqGAxmGywXYzwfKEsbWyxvZzwq','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','ywDLBNrqB29S','ihnLy29UzhmGka','rMfPBgvKihrVihbHDxnLigfNzw50oIa','rg9JA2vYig9WzxjHDgLVBNmGB2z0zw4GCMvXDwLYzsbLEhrLBMrLzcb0Aw1L','zhvYyxrPB24','Cgf1C2uTzhvYyxrPB24Gy2fUBM90igv4y2vLzca','qMfZAwmGCgf1C2uGzM9YidmWihnLy29Uzhm','ihnLy29Uza','t3b0Aw9UywWGCMvHC29UigzVCIb0AguGCgf1C2u','Cgf1C2u','nJeYmZaXAgnOB2fI','odaXnZKYofHPExLqqG','rxjYB3iGy2HLy2TPBMCGywDLBNqGC3rHDhvZoIa','mtC4mZaWsKj3yKjj','BwLUrhvYyxrPB24','zMXVB3i','igHVDxi','CgfYC2vqyxjHBwv0zxjZ','nZbqA3HgDgC','AxnfBMfIBgvK','Aw4G','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mZa8l3bHDxnLlwr1CMf0Aw9UpGPBl3rVB2XD','BgfZDenVBw1HBMq','yNvPBgq','z2v0vxnHz2vfEgfTCgXLCW','C3vNz2vZDgvK','zgvSyxK','z2v0q2fWywjPBgL0AwvZ','mtm4nJm3ohD0wezJBa','C3rYAw5N','mJHXEg10Bfi','BwLUugf1C2veDxjHDgLVBG','CMvXDwvZDgvKrhvYyxrPB24','CMvHC29U','Aw5MBW','zxH0CMfJDenVBNrLBNq','rxH0zw5KzwqGCgf1C2uGzM9Yigj1AwXKihbYB2nLC3m','CgvYC2LZDefNzw50u3rHDgu','C2vJB25KCW','AgLNAa','w3rVB2WGAwq9iMfNzw50zgvSyxKIxqO8Cgf1C2uTzhvYyxrPB24+mtiWpc9WyxvZzs1KDxjHDgLVBJ4kphjLyxnVBJ5xywL0Aw5NigzVCIbUCg0GAw5ZDgfSBcb0BYbJB21WBgv0ztWVCMvHC29UpGPBl3rVB2XD','qwDLBNqGCg9VBcbUB3qGyxzHAwXHyMXL','ChvZAa'];a0_0x2834=function(){return _0x105ed5;};return a0_0x2834();}(function(_0x1b2f15,_0x43416e){const _0x4ef84d=a0_0x49fe,_0x15bd9a=_0x1b2f15();while(!![]){try{const _0x58c70f=-parseInt(_0x4ef84d(0xba))/0x1+-parseInt(_0x4ef84d(0xdc))/0x2+-parseInt(_0x4ef84d(0xea))/0x3+-parseInt(_0x4ef84d(0xdf))/0x4*(parseInt(_0x4ef84d(0xbd))/0x5)+parseInt(_0x4ef84d(0xcc))/0x6*(parseInt(_0x4ef84d(0xce))/0x7)+-parseInt(_0x4ef84d(0xbb))/0x8*(parseInt(_0x4ef84d(0xa7))/0x9)+parseInt(_0x4ef84d(0xc2))/0xa*(parseInt(_0x4ef84d(0xf1))/0xb);if(_0x58c70f===_0x43416e)break;else _0x15bd9a['push'](_0x15bd9a['shift']());}catch(_0x53d86b){_0x15bd9a['push'](_0x15bd9a['shift']());}}}(a0_0x2834,0xc7efb));import{BaseTool}from'./baseTool.js';import a0_0x210b6f from'../utilities/tagParser.js';import{TOOL_STATUS,SYSTEM_DEFAULTS,AGENT_STATUS}from'../utilities/constants.js';class AgentDelayTool extends BaseTool{constructor(_0x49231e={},_0x1c2e92=null,_0x264fa4=null){const _0x25ceb4=a0_0x49fe;super(_0x49231e,_0x1c2e92),this['agentPool']=_0x264fa4,this[_0x25ceb4(0xe9)]=_0x49231e[_0x25ceb4(0xee)]||SYSTEM_DEFAULTS['MAX_PAUSE_DURATION'],this[_0x25ceb4(0xcf)]=_0x49231e[_0x25ceb4(0xbe)]||0x1,this['requiresProject']=![],this['isAsync']=![];}['getDescription'](){const _0x3306ef=a0_0x49fe;return _0x3306ef(0xf3)+this['minPauseDuration']+'-'+this['maxPauseDuration']+_0x3306ef(0xf7)+AGENT_STATUS[_0x3306ef(0xf6)]+'\x27\x20and\x20will\x20not\x20process\x20new\x20messages\x20until\x20the\x20duration\x20expires.\x0aOther\x20agents\x20can\x20still\x20send\x20messages,\x20but\x20they\x20will\x20be\x20queued\x20until\x20the\x20agent\x20resumes.\x0a\x0aIMPORTANT:\x20Use\x20this\x20tool\x20judiciously.\x20Only\x20pause\x20when\x20genuinely\x20waiting\x20for\x20external\x20processes.\x0aMaximum\x20pause\x20duration:\x20'+this[_0x3306ef(0xe9)]+_0x3306ef(0xb1)+Math['floor'](this['maxPauseDuration']/0x3c)+_0x3306ef(0xe8);}[a0_0xf1e227(0xc1)](_0x54e71b){const _0x4ee2e6=a0_0xf1e227;try{const _0x33acee=a0_0x210b6f[_0x4ee2e6(0xd3)](_0x54e71b,'pause-duration'),_0x24cdf8=a0_0x210b6f['extractContent'](_0x54e71b,_0x4ee2e6(0xd1)),_0x574ead=_0x33acee['length']>0x0?parseInt(_0x33acee[0x0],0xa):null,_0x12b8cc=_0x24cdf8['length']>0x0?_0x24cdf8[0x0]['trim']():_0x4ee2e6(0xe5);return{'duration':_0x574ead,'reason':_0x12b8cc,'rawContent':_0x54e71b['trim']()};}catch(_0xcf8d47){throw new Error('Failed\x20to\x20parse\x20agent\x20delay\x20parameters:\x20'+_0xcf8d47[_0x4ee2e6(0xed)]);}}[a0_0xf1e227(0xaf)](){const _0x4f0079=a0_0xf1e227;return[_0x4f0079(0xb4)];}['validateParameterTypes'](_0x2f1480){const _0xddf8d2=a0_0xf1e227,_0x57ffcf=[];return _0x2f1480[_0xddf8d2(0xb4)]!==null&&_0x2f1480['duration']!==undefined&&((typeof _0x2f1480[_0xddf8d2(0xb4)]!=='number'||isNaN(_0x2f1480['duration']))&&_0x57ffcf[_0xddf8d2(0xda)]('pause-duration\x20must\x20be\x20a\x20valid\x20number')),_0x2f1480[_0xddf8d2(0xd1)]&&typeof _0x2f1480['reason']!==_0xddf8d2(0xcd)&&_0x57ffcf['push']('reason\x20must\x20be\x20a\x20string'),{'valid':_0x57ffcf[_0xddf8d2(0xa0)]===0x0,'errors':_0x57ffcf};}['customValidateParameters'](_0x184c25){const _0xc3a40f=a0_0xf1e227,_0xfab0ce=[];return _0x184c25['duration']===null||_0x184c25[_0xc3a40f(0xb4)]===undefined?_0xfab0ce[_0xc3a40f(0xda)]('pause-duration\x20is\x20required'):(_0x184c25[_0xc3a40f(0xb4)]<this[_0xc3a40f(0xcf)]&&_0xfab0ce['push']('pause-duration\x20must\x20be\x20at\x20least\x20'+this['minPauseDuration']+_0xc3a40f(0xa3)),_0x184c25['duration']>this['maxPauseDuration']&&_0xfab0ce['push'](_0xc3a40f(0xb5)+this['maxPauseDuration']+'\x20seconds\x20('+Math[_0xc3a40f(0xbf)](this['maxPauseDuration']/0x3c)+_0xc3a40f(0xa9)),!Number['isInteger'](_0x184c25['duration'])&&_0xfab0ce[_0xc3a40f(0xda)]('pause-duration\x20must\x20be\x20a\x20whole\x20number\x20of\x20seconds')),_0x184c25[_0xc3a40f(0xd1)]&&_0x184c25['reason'][_0xc3a40f(0xa0)]>0xc8&&_0xfab0ce[_0xc3a40f(0xda)]('reason\x20cannot\x20exceed\x20200\x20characters'),{'valid':_0xfab0ce[_0xc3a40f(0xa0)]===0x0,'errors':_0xfab0ce};}async['execute'](_0x558d07,_0x2af55f){const _0x1a4627=a0_0xf1e227,{duration:_0x2a0769,reason:_0x19d219}=_0x558d07,{agentId:_0x5b6025}=_0x2af55f;if(!_0x5b6025)throw new Error(_0x1a4627(0xf0));if(!this[_0x1a4627(0xb0)])throw new Error('Agent\x20pool\x20not\x20available\x20-\x20cannot\x20pause\x20agent');try{const _0x45c5f8=new Date(Date[_0x1a4627(0xa2)]()+_0x2a0769*0x3e8),_0x340f6f=await this[_0x1a4627(0xb0)]['pauseAgent'](_0x5b6025,_0x45c5f8,_0x19d219),_0x5c7507=await this[_0x1a4627(0xb0)][_0x1a4627(0xab)](_0x5b6025);_0x5c7507&&(_0x5c7507['delayEndTime']=_0x45c5f8['toISOString'](),await this[_0x1a4627(0xb0)][_0x1a4627(0xd5)](_0x5b6025));if(!_0x340f6f[_0x1a4627(0xa1)])throw new Error(_0x1a4627(0xb2)+(_0x340f6f[_0x1a4627(0xed)]||'Unknown\x20error'));const _0x2ea23d={'success':!![],'action':_0x1a4627(0xf9),'agentId':_0x5b6025,'pauseDuration':_0x2a0769,'pausedUntil':_0x45c5f8['toISOString'](),'reason':_0x19d219,'message':_0x1a4627(0xa5)+_0x2a0769+'\x20second'+(_0x2a0769!==0x1?'s':''),'resumeTime':this[_0x1a4627(0xf2)](_0x45c5f8),'toolUsed':'agent-delay'};return this['logger']?.['info'](_0x1a4627(0x9f)+_0x5b6025,{'duration':_0x2a0769,'reason':_0x19d219,'pausedUntil':_0x45c5f8['toISOString'](),'toolUsage':!![]}),_0x2ea23d;}catch(_0x2d9e94){this[_0x1a4627(0xac)]?.['error'](_0x1a4627(0xe3)+_0x2d9e94['message'],{'agentId':_0x5b6025,'duration':_0x2a0769,'reason':_0x19d219,'error':_0x2d9e94['stack']});throw _0x2d9e94;}}['getSupportedActions'](){const _0x599867=a0_0xf1e227;return[_0x599867(0xb9),_0x599867(0xca)];}['getParameterSchema'](){const _0xb2f6ae=a0_0xf1e227;return{'type':_0xb2f6ae(0xad),'properties':{'duration':{'type':'integer','minimum':this[_0xb2f6ae(0xcf)],'maximum':this[_0xb2f6ae(0xe9)],'description':_0xb2f6ae(0xe1)},'reason':{'type':_0xb2f6ae(0xcd),'maxLength':0xc8,'description':_0xb2f6ae(0xb8)}},'required':[_0xb2f6ae(0xb4)]};}[a0_0xf1e227(0xcb)](){const _0x351d4c=a0_0xf1e227,_0x303b41=super[_0x351d4c(0xcb)]();return{..._0x303b41,'pauseRange':{'min':this[_0x351d4c(0xcf)],'max':this[_0x351d4c(0xe9)],'unit':_0x351d4c(0xd6)},'affects':'agent-status','interactsWithAgentPool':!![],'useCases':[_0x351d4c(0xef),'service-startup','file-operations',_0x351d4c(0xe0),'compilation','deployment-delays']};}['formatResumeTime'](_0x48ecfb){const _0x99cf71=a0_0xf1e227,_0x2410b6=new Date(),_0x125c1a=Math[_0x99cf71(0xf8)]((_0x48ecfb['getTime']()-_0x2410b6[_0x99cf71(0xdd)]())/0x3e8);if(_0x125c1a<0x3c)return _0x99cf71(0xc4)+_0x125c1a+_0x99cf71(0xb7)+(_0x125c1a!==0x1?'s':'');else{if(_0x125c1a<0xe10){const _0x52d9a3=Math[_0x99cf71(0xf8)](_0x125c1a/0x3c);return'in\x20'+_0x52d9a3+'\x20minute'+(_0x52d9a3!==0x1?'s':'');}else{const _0x39bd9d=Math[_0x99cf71(0xf8)](_0x125c1a/0xe10);return _0x99cf71(0xc4)+_0x39bd9d+_0x99cf71(0xc0)+(_0x39bd9d!==0x1?'s':'');}}}[a0_0xf1e227(0xc8)](){const _0x4c989a=a0_0xf1e227;return[{'title':_0x4c989a(0xb6),'command':_0x4c989a(0xc5),'description':'Simple\x2030-second\x20pause\x20without\x20specific\x20reason'},{'title':'Pause\x20during\x20package\x20installation','command':_0x4c989a(0xd8),'description':_0x4c989a(0xe7)},{'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':'Short\x20pause\x20to\x20allow\x20a\x20service\x20to\x20fully\x20initialize'},{'title':_0x4c989a(0xd4),'command':_0x4c989a(0xa8),'description':_0x4c989a(0xec)}];}async['canPauseAgent'](_0xdf5e77){const _0x3ec3ab=a0_0xf1e227;if(!this[_0x3ec3ab(0xb0)])return{'canPause':![],'reason':_0x3ec3ab(0xd9)};try{const _0x475baa=await this['agentPool'][_0x3ec3ab(0xab)](_0xdf5e77);if(!_0x475baa)return{'canPause':![],'reason':'Agent\x20not\x20found'};if(_0x475baa['status']===AGENT_STATUS['PAUSED'])return{'canPause':![],'reason':_0x3ec3ab(0xae),'pausedUntil':_0x475baa['pausedUntil']};return{'canPause':!![],'currentStatus':_0x475baa['status']};}catch(_0xe0acc8){return{'canPause':![],'reason':_0x3ec3ab(0xbc)+_0xe0acc8[_0x3ec3ab(0xed)]};}}['getPauseRecommendations'](_0xcfca7e){const _0x55f332=a0_0xf1e227,_0x46453d={'suggested':[],'warnings':[]};if(_0xcfca7e['lastCommand']&&typeof _0xcfca7e[_0x55f332(0xc6)]==='string'){const _0x358f6f=_0xcfca7e[_0x55f332(0xc6)]['toLowerCase']();(_0x358f6f['includes']('npm\x20install')||_0x358f6f[_0x55f332(0xaa)]('yarn\x20install'))&&_0x46453d[_0x55f332(0xc9)]['push']({'duration':0x5a,'reason':'Package\x20installation\x20typically\x20takes\x201-2\x20minutes','confidence':'high'}),(_0x358f6f[_0x55f332(0xaa)](_0x55f332(0xf5))||_0x358f6f['includes']('docker\x20run'))&&_0x46453d[_0x55f332(0xc9)]['push']({'duration':0x78,'reason':_0x55f332(0xb3),'confidence':'medium'}),(_0x358f6f[_0x55f332(0xaa)](_0x55f332(0xa4))||_0x358f6f[_0x55f332(0xaa)](_0x55f332(0xc7))||_0x358f6f[_0x55f332(0xaa)](_0x55f332(0xe2)))&&_0x46453d[_0x55f332(0xc9)]['push']({'duration':0xb4,'reason':_0x55f332(0xf4),'confidence':_0x55f332(0xdb)}),(_0x358f6f['includes'](_0x55f332(0xa6))||_0x358f6f['includes']('git\x20pull'))&&_0x46453d[_0x55f332(0xc9)][_0x55f332(0xda)]({'duration':0x1e,'reason':'Git\x20operations\x20usually\x20complete\x20quickly','confidence':_0x55f332(0xd7)});}return _0xcfca7e[_0x55f332(0xd0)]&&(_0xcfca7e[_0x55f332(0xd0)]<0xa&&_0x46453d[_0x55f332(0xde)][_0x55f332(0xda)]('Very\x20short\x20pauses\x20may\x20not\x20be\x20necessary'),_0xcfca7e[_0x55f332(0xd0)]>0xf0&&_0x46453d[_0x55f332(0xde)]['push']('Consider\x20if\x20such\x20a\x20long\x20pause\x20is\x20really\x20needed')),_0x46453d;}['setAgentPool'](_0x4bd7fc){const _0x3e16f9=a0_0xf1e227;this[_0x3e16f9(0xb0)]=_0x4bd7fc,this['isEnabled']=!!_0x4bd7fc,this[_0x3e16f9(0xc3)]?this['logger']?.[_0x3e16f9(0xd2)](_0x3e16f9(0xe4)):this['logger']?.[_0x3e16f9(0xeb)](_0x3e16f9(0xe6));}}export default AgentDelayTool;