@loxia-labs/loxia-autopilot-one 1.0.13 → 1.0.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/README.md +7 -3
  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 -0
  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-CR8edPA3.js +348 -0
  121. package/web-ui/build/static/index-uN7nOVvZ.css +1 -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_0x577c68=a0_0x5384;(function(_0x427d39,_0x1cec05){const _0x291d18=a0_0x5384,_0x266e3f=_0x427d39();while(!![]){try{const _0x21308e=parseInt(_0x291d18(0x29e))/0x1*(parseInt(_0x291d18(0x2c4))/0x2)+parseInt(_0x291d18(0x20f))/0x3*(-parseInt(_0x291d18(0x261))/0x4)+parseInt(_0x291d18(0x1cb))/0x5*(-parseInt(_0x291d18(0x1af))/0x6)+parseInt(_0x291d18(0x2dc))/0x7*(-parseInt(_0x291d18(0x29f))/0x8)+parseInt(_0x291d18(0x1b3))/0x9*(-parseInt(_0x291d18(0x2ca))/0xa)+parseInt(_0x291d18(0x25d))/0xb*(parseInt(_0x291d18(0x1fe))/0xc)+parseInt(_0x291d18(0x1eb))/0xd*(parseInt(_0x291d18(0x2c0))/0xe);if(_0x21308e===_0x1cec05)break;else _0x266e3f['push'](_0x266e3f['shift']());}catch(_0x5341f8){_0x266e3f['push'](_0x266e3f['shift']());}}}(a0_0x4113,0xbbc4e));import{BaseTool}from'./baseTool.js';import a0_0x3dda76 from'../utilities/tagParser.js';import a0_0x5985b7 from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';import a0_0x4aff06 from'path';import a0_0x40d079 from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x5384(_0x5f21a1,_0x15e60f){_0x5f21a1=_0x5f21a1-0x19e;const _0x41133d=a0_0x4113();let _0x53846b=_0x41133d[_0x5f21a1];if(a0_0x5384['MdODuj']===undefined){var _0x42f9a6=function(_0x359f72){const _0x5ab0ce='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3dda76='',_0x5985b7='';for(let _0x4aff06=0x0,_0x40d079,_0x2ac0da,_0x317957=0x0;_0x2ac0da=_0x359f72['charAt'](_0x317957++);~_0x2ac0da&&(_0x40d079=_0x4aff06%0x4?_0x40d079*0x40+_0x2ac0da:_0x2ac0da,_0x4aff06++%0x4)?_0x3dda76+=String['fromCharCode'](0xff&_0x40d079>>(-0x2*_0x4aff06&0x6)):0x0){_0x2ac0da=_0x5ab0ce['indexOf'](_0x2ac0da);}for(let _0x4ae687=0x0,_0x33827b=_0x3dda76['length'];_0x4ae687<_0x33827b;_0x4ae687++){_0x5985b7+='%'+('00'+_0x3dda76['charCodeAt'](_0x4ae687)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5985b7);};a0_0x5384['yVOAeC']=_0x42f9a6,a0_0x5384['vkbiga']={},a0_0x5384['MdODuj']=!![];}const _0x57bd7e=_0x41133d[0x0],_0x18ec8d=_0x5f21a1+_0x57bd7e,_0x5ddb52=a0_0x5384['vkbiga'][_0x18ec8d];return!_0x5ddb52?(_0x53846b=a0_0x5384['yVOAeC'](_0x53846b),a0_0x5384['vkbiga'][_0x18ec8d]=_0x53846b):_0x53846b=_0x5ddb52,_0x53846b;}class PromptDetector{constructor(){const _0x2d5174=a0_0x5384;this[_0x2d5174(0x213)]=[{'pattern':/\(y\/n\)/i,'type':_0x2d5174(0x1cd),'description':_0x2d5174(0x1a6)},{'pattern':/\(Y\/n\)/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\(y\/N\)/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/\[y\/n\]/i,'type':_0x2d5174(0x1cd),'description':'Yes/No\x20question'},{'pattern':/\[Y\/n\]/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\[y\/N\]/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/continue\?/i,'type':_0x2d5174(0x26a),'description':'Continue\x20prompt'},{'pattern':/proceed\?/i,'type':'continue','description':'Proceed\x20prompt'},{'pattern':/press any key to continue/i,'type':_0x2d5174(0x1f7),'description':_0x2d5174(0x2e2)},{'pattern':/press enter to continue/i,'type':'keypress','description':'Press\x20enter'},{'pattern':/hit enter to continue/i,'type':'keypress','description':'Hit\x20enter'},{'pattern':/password:/i,'type':_0x2d5174(0x21a),'description':_0x2d5174(0x269)},{'pattern':/enter password/i,'type':'password','description':'Password\x20prompt'},{'pattern':/passphrase:/i,'type':'password','description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':'username','description':_0x2d5174(0x1ea)},{'pattern':/enter username/i,'type':_0x2d5174(0x2bb),'description':'Username\x20prompt'},{'pattern':/enter\s+\w+:/i,'type':'input','description':'Generic\x20input\x20prompt'},{'pattern':/please enter/i,'type':_0x2d5174(0x2be),'description':_0x2d5174(0x244)},{'pattern':/input:/i,'type':'input','description':_0x2d5174(0x244)},{'pattern':/are you sure\?/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/do you want to/i,'type':'confirmation','description':_0x2d5174(0x1dc)},{'pattern':/would you like to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':'selection','description':_0x2d5174(0x26f)},{'pattern':/choose/i,'type':'selection','description':_0x2d5174(0x26f)},{'pattern':/\d+\)\s+\w+/g,'type':'menu','description':'Menu\x20selection'}];}['detectPrompt'](_0x2ac0da,_0x317957=a0_0x577c68(0x1ad)){const _0x35766a=a0_0x577c68;if(!_0x2ac0da||_0x2ac0da['trim']()['length']===0x0)return null;const _0x4ae687=_0x2ac0da['split']('\x0a'),_0x33827b=_0x4ae687[_0x35766a(0x28e)](-0x5)[_0x35766a(0x216)]('\x0a');for(const _0x54478a of this[_0x35766a(0x213)]){const _0x26562e=_0x33827b['match'](_0x54478a[_0x35766a(0x271)]);if(_0x26562e)return{'detected':!![],'type':_0x54478a['type'],'description':_0x54478a['description'],'matchedText':_0x26562e[0x0],'matchIndex':_0x26562e[_0x35766a(0x1ca)],'source':_0x317957,'fullContext':_0x33827b,'timestamp':Date['now']()};}const _0x296208=_0x4ae687[_0x4ae687['length']-0x1]||'';if(_0x296208[_0x35766a(0x245)]()[_0x35766a(0x2bf)]>0x0){const _0x5ef755=/:\s*$/[_0x35766a(0x1b2)](_0x296208),_0x4ee686=/\?\s*$/[_0x35766a(0x1b2)](_0x296208);if(_0x5ef755||_0x4ee686){const _0xd4063d=/\b(enter|type|provide|specify|input)\b/i[_0x35766a(0x1b2)](_0x296208);if(_0xd4063d)return{'detected':!![],'type':_0x35766a(0x1f2),'description':_0x35766a(0x2c9),'matchedText':_0x296208[_0x35766a(0x245)](),'source':_0x317957,'fullContext':_0x33827b,'timestamp':Date[_0x35766a(0x1a4)](),'confidence':0.7};}}return null;}[a0_0x577c68(0x27b)](_0x471f56,_0x54eedd=0x7530){const _0x2422e6=a0_0x577c68,_0x5bfa33=Date[_0x2422e6(0x1a4)](),_0x52328f=_0x5bfa33-_0x471f56;return{'isHanging':_0x52328f>=_0x54eedd,'timeSinceLastOutput':_0x52328f,'threshold':_0x54eedd,'likelyWaiting':_0x52328f>=_0x54eedd/0x2};}}class TerminalTool extends BaseTool{constructor(_0x196599={},_0x129945=null){const _0x9723ac=a0_0x577c68;super(_0x196599,_0x129945),this['requiresProject']=![],this['isAsync']=![],this['timeout']=_0x196599[_0x9723ac(0x24b)]||0x1d4c0,this[_0x9723ac(0x230)]=_0x196599[_0x9723ac(0x230)]||0x3,this[_0x9723ac(0x2e6)]=new Map(),this['commandHistory']=[],this[_0x9723ac(0x2a8)]=_0x196599[_0x9723ac(0x2a8)]||null,this[_0x9723ac(0x1b7)]=_0x196599['blockedCommands']||['rm\x20-rf\x20/',_0x9723ac(0x2a9),_0x9723ac(0x242),_0x9723ac(0x1ab),_0x9723ac(0x2aa),'halt'],this['directoryAccessManager']=new a0_0x5985b7(_0x196599,_0x129945),this['promptDetector']=new PromptDetector(),this['commandTracker']=new Map(),this[_0x9723ac(0x1cf)]=0x0,this['MAX_BACKGROUND_COMMANDS_PER_AGENT']=_0x196599[_0x9723ac(0x1d6)]||0x5,this['MAX_BACKGROUND_COMMANDS_GLOBAL']=_0x196599[_0x9723ac(0x2db)]||0x14,this[_0x9723ac(0x1d9)]=_0x196599['maxCommandAgeMinutes']||0x3c,this[_0x9723ac(0x1ed)]=null,this['platformType']=null,this['initializeTerminalDetection']();}[a0_0x577c68(0x226)](){const _0x3b50c7=a0_0x577c68;return _0x3b50c7(0x253)+this[_0x3b50c7(0x24b)]+_0x3b50c7(0x1e5);}['parseParameters'](_0x13cb97){const _0x3fe0d3=a0_0x577c68;try{const _0x1ab9ab={},_0x105d01=a0_0x3dda76[_0x3fe0d3(0x1d3)](_0x13cb97,'run-command'),_0x11296=a0_0x3dda76[_0x3fe0d3(0x1d3)](_0x13cb97,'change-directory'),_0x1e81be=a0_0x3dda76[_0x3fe0d3(0x1d3)](_0x13cb97,'list-directory'),_0x24cf8a=a0_0x3dda76[_0x3fe0d3(0x1d3)](_0x13cb97,_0x3fe0d3(0x214)),_0x5d1b21=a0_0x3dda76[_0x3fe0d3(0x1d3)](_0x13cb97,_0x3fe0d3(0x212)),_0x1e1039=a0_0x3dda76['extractContent'](_0x13cb97,'timeout'),_0x36dc11=a0_0x3dda76['extractContent'](_0x13cb97,'async'),_0x719f1e=[];return _0x105d01['length']>0x0&&_0x719f1e['push']({'type':_0x3fe0d3(0x27f),'command':_0x105d01[0x0]['trim']()}),_0x11296[_0x3fe0d3(0x2bf)]>0x0&&_0x719f1e['push']({'type':'change-directory','directory':_0x11296[0x0]['trim']()}),_0x1e81be['length']>0x0&&_0x719f1e['push']({'type':_0x3fe0d3(0x247),'directory':_0x1e81be[0x0]['trim']()||'.'}),_0x24cf8a['length']>0x0&&_0x719f1e[_0x3fe0d3(0x294)]({'type':_0x3fe0d3(0x214),'directory':_0x24cf8a[0x0][_0x3fe0d3(0x245)]()}),_0x5d1b21[_0x3fe0d3(0x2bf)]>0x0&&_0x719f1e['push']({'type':'get-working-directory'}),_0x1ab9ab[_0x3fe0d3(0x2d4)]=_0x719f1e,_0x1e1039[_0x3fe0d3(0x2bf)]>0x0&&(_0x1ab9ab[_0x3fe0d3(0x24b)]=parseInt(_0x1e1039[0x0],0xa)),_0x36dc11[_0x3fe0d3(0x2bf)]>0x0&&(_0x1ab9ab[_0x3fe0d3(0x241)]=_0x36dc11[0x0]['toLowerCase']()===_0x3fe0d3(0x1a7)),_0x1ab9ab['rawContent']=_0x13cb97[_0x3fe0d3(0x245)](),_0x1ab9ab;}catch(_0x4f4d14){throw new Error(_0x3fe0d3(0x238)+_0x4f4d14['message']);}}[a0_0x577c68(0x2cd)](){const _0x4b0192=a0_0x577c68;return[_0x4b0192(0x2d4)];}['customValidateParameters'](_0x431f97){const _0x48b8f4=a0_0x577c68,_0xa89cef=[];if(!_0x431f97[_0x48b8f4(0x2d4)]||!Array['isArray'](_0x431f97[_0x48b8f4(0x2d4)])||_0x431f97['actions']['length']===0x0)_0xa89cef[_0x48b8f4(0x294)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x3e73b5,_0x394b90]of _0x431f97[_0x48b8f4(0x2d4)][_0x48b8f4(0x1be)]()){if(!_0x394b90[_0x48b8f4(0x2d2)]){_0xa89cef[_0x48b8f4(0x294)]('Action\x20'+(_0x3e73b5+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x394b90[_0x48b8f4(0x2d2)]){case _0x48b8f4(0x27f):if(!_0x394b90['command']||!_0x394b90[_0x48b8f4(0x276)][_0x48b8f4(0x245)]())_0xa89cef['push']('Action\x20'+(_0x3e73b5+0x1)+':\x20command\x20is\x20required\x20for\x20run-command');else{if(this[_0x48b8f4(0x21e)](_0x394b90[_0x48b8f4(0x276)]))_0xa89cef['push'](_0x48b8f4(0x1d2)+(_0x3e73b5+0x1)+_0x48b8f4(0x289)+_0x394b90['command']);else this[_0x48b8f4(0x2a8)]&&!this[_0x48b8f4(0x248)](_0x394b90['command'])&&_0xa89cef[_0x48b8f4(0x294)]('Action\x20'+(_0x3e73b5+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x394b90[_0x48b8f4(0x276)]);}break;case'change-directory':case _0x48b8f4(0x247):case'create-directory':(!_0x394b90['directory']||!_0x394b90[_0x48b8f4(0x28a)]['trim']())&&_0xa89cef['push']('Action\x20'+(_0x3e73b5+0x1)+_0x48b8f4(0x2c8)+_0x394b90[_0x48b8f4(0x2d2)]);break;case'get-working-directory':break;default:_0xa89cef['push'](_0x48b8f4(0x1d2)+(_0x3e73b5+0x1)+_0x48b8f4(0x293)+_0x394b90[_0x48b8f4(0x2d2)]);}}return _0x431f97['timeout']&&(_0x431f97[_0x48b8f4(0x24b)]<0x3e8||_0x431f97['timeout']>this['timeout'])&&_0xa89cef['push']('Timeout\x20must\x20be\x20between\x201000\x20and\x20'+this[_0x48b8f4(0x24b)]+'\x20milliseconds'),{'valid':_0xa89cef[_0x48b8f4(0x2bf)]===0x0,'errors':_0xa89cef};}async['execute'](_0x37f7ac,_0x14c042){const _0x430c74=a0_0x577c68,{actions:_0x4970c0,timeout:_0x1d603a,async:_0x491133}=_0x37f7ac,{agentId:_0x243a72,projectDir:_0x38ae82,directoryAccess:_0x4b581a}=_0x14c042,_0x2c492f=_0x4b581a||this[_0x430c74(0x1f6)]['createDirectoryAccess']({'workingDirectory':_0x38ae82||process['cwd'](),'writeEnabledDirectories':[_0x38ae82||process[_0x430c74(0x1a1)]()],'restrictToProject':!![]});_0x4b581a&&_0x4b581a['workingDirectory']?console['log']('Terminal\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x4b581a['workingDirectory']):console[_0x430c74(0x223)]('Terminal\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x38ae82||process['cwd']());const _0x184e65=_0x243a72+'-'+(_0x38ae82||'default');let _0x21adad=this[_0x430c74(0x2e6)]['get'](_0x184e65)||this['directoryAccessManager']['getWorkingDirectory'](_0x2c492f);const _0x4a9eba=[];for(const _0x3064cd of _0x4970c0){try{let _0x16513f;switch(_0x3064cd[_0x430c74(0x2d2)]){case'run-command':_0x16513f=await this['executeCommand'](_0x3064cd[_0x430c74(0x276)],_0x21adad,{'timeout':_0x1d603a||this[_0x430c74(0x24b)],'async':_0x491133||![],'agentId':_0x243a72,'context':{'toolsRegistry':_0x14c042['toolsRegistry'],'aiService':_0x14c042[_0x430c74(0x25f)],'apiKey':_0x14c042['apiKey'],'customApiKeys':_0x14c042[_0x430c74(0x283)],'platformProvided':_0x14c042['platformProvided']}});break;case _0x430c74(0x2a6):_0x16513f=await this[_0x430c74(0x1f8)](_0x3064cd[_0x430c74(0x28a)],_0x21adad,_0x2c492f),_0x21adad=_0x16513f['newDirectory'],this[_0x430c74(0x2e6)][_0x430c74(0x1dd)](_0x184e65,_0x21adad);break;case _0x430c74(0x247):_0x16513f=await this['listDirectory'](_0x3064cd['directory']==='.'?_0x21adad:_0x3064cd[_0x430c74(0x28a)]);break;case _0x430c74(0x214):_0x16513f=await this['createDirectory'](_0x3064cd[_0x430c74(0x28a)],_0x21adad);break;case'get-working-directory':_0x16513f={'success':!![],'action':_0x430c74(0x212),'workingDirectory':_0x21adad,'message':'Current\x20working\x20directory:\x20'+_0x21adad};break;default:throw new Error(_0x430c74(0x270)+_0x3064cd[_0x430c74(0x2d2)]);}_0x4a9eba[_0x430c74(0x294)](_0x16513f),this[_0x430c74(0x2e7)](_0x3064cd,_0x16513f,_0x243a72);}catch(_0x392719){const _0x1d039e={'success':![],'action':_0x3064cd['type'],'error':_0x392719['message'],'command':_0x3064cd['command']||_0x3064cd[_0x430c74(0x28a)],'workingDirectory':_0x21adad};_0x4a9eba[_0x430c74(0x294)](_0x1d039e),this['addToHistory'](_0x3064cd,_0x1d039e,_0x243a72);}}const _0x13cf0f=_0x4a9eba['every'](_0x66b6a3=>_0x66b6a3['success']),_0x4e583a=_0x4a9eba['filter'](_0x189582=>!_0x189582['success']);return{'success':_0x13cf0f,'actions':_0x4a9eba,'workingDirectory':_0x21adad,'executedActions':_0x4970c0['length'],'failedActions':_0x4e583a['length'],'toolUsed':_0x430c74(0x1f9),'message':_0x13cf0f?_0x430c74(0x1d0)+_0x4970c0[_0x430c74(0x2bf)]+_0x430c74(0x26c):_0x4e583a[_0x430c74(0x2bf)]+'\x20of\x20'+_0x4970c0['length']+_0x430c74(0x2ad)};}async[a0_0x577c68(0x1bf)](_0x2d47ed,_0x5e6d35,_0x542c3f={}){const _0x1eb86a=a0_0x577c68,{timeout:timeout=this['timeout'],async:_0x302bde=![],agentId:_0x2f9271,context:_0x17c486}=_0x542c3f,_0x34cbcb=_0x2d47ed;let _0x5240f7;try{_0x5240f7=await this[_0x1eb86a(0x2cf)](_0x2d47ed,{'agentId':_0x2f9271,'toolsRegistry':_0x17c486?.['toolsRegistry'],'messageProcessor':_0x17c486?.['messageProcessor'],'aiService':_0x17c486?.[_0x1eb86a(0x25f)],'apiKey':_0x17c486?.[_0x1eb86a(0x1fb)],'customApiKeys':_0x17c486?.['customApiKeys'],'platformProvided':_0x17c486?.[_0x1eb86a(0x2ea)]});}catch(_0x58fde0){this[_0x1eb86a(0x1b1)]?.['warn'](_0x1eb86a(0x1d7),{'originalCommand':_0x34cbcb,'error':_0x58fde0[_0x1eb86a(0x22d)]}),_0x5240f7=_0x2d47ed;}return new Promise((_0x564f0d,_0x1b4ba2)=>{const _0x40282d=_0x1eb86a,_0x310ef1=Date[_0x40282d(0x1a4)]();this[_0x40282d(0x1b1)]?.[_0x40282d(0x2b0)](_0x40282d(0x2cc)+_0x5240f7,{'originalCommand':_0x34cbcb,'translatedCommand':_0x5240f7,'terminal':this['detectedTerminal'],'workingDirectory':_0x5e6d35,'timeout':timeout,'agentId':_0x2f9271});const _0xe78a6a=exec(_0x5240f7,{'cwd':_0x5e6d35,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x32cdad,_0x5d40e9,_0x460b40)=>{const _0x45e81a=_0x40282d,_0x2fdde3=Date['now']()-_0x310ef1;if(_0x32cdad){this['logger']?.[_0x45e81a(0x1b4)]('Command\x20failed:\x20'+_0x5240f7,{'originalCommand':_0x34cbcb,'translatedCommand':_0x5240f7,'error':_0x32cdad[_0x45e81a(0x22d)],'workingDirectory':_0x5e6d35,'executionTime':_0x2fdde3}),_0x564f0d({'success':![],'action':'run-command','command':_0x34cbcb,'translatedCommand':_0x5240f7!==_0x34cbcb?_0x5240f7:undefined,'error':_0x32cdad['message'],'stderr':_0x460b40[_0x45e81a(0x245)](),'stdout':_0x5d40e9[_0x45e81a(0x245)](),'exitCode':_0x32cdad[_0x45e81a(0x231)],'executionTime':_0x2fdde3,'workingDirectory':_0x5e6d35});return;}this[_0x45e81a(0x1b1)]?.[_0x45e81a(0x2b0)](_0x45e81a(0x2d8)+_0x5240f7,{'originalCommand':_0x34cbcb,'translatedCommand':_0x5240f7,'executionTime':_0x2fdde3,'stdoutLength':_0x5d40e9['length'],'stderrLength':_0x460b40['length']}),_0x564f0d({'success':!![],'action':_0x45e81a(0x27f),'command':_0x34cbcb,'translatedCommand':_0x5240f7!==_0x34cbcb?_0x5240f7:undefined,'stdout':_0x5d40e9['trim'](),'stderr':_0x460b40['trim'](),'exitCode':0x0,'executionTime':_0x2fdde3,'workingDirectory':_0x5e6d35,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x2fdde3+'ms'});});setTimeout(()=>{const _0x580e1a=_0x40282d;!_0xe78a6a['killed']&&(_0xe78a6a['kill'](_0x580e1a(0x1ce)),_0x1b4ba2(new Error('Command\x20timed\x20out\x20after\x20'+timeout+_0x580e1a(0x2ce)+_0x5240f7+_0x580e1a(0x22b)+_0x34cbcb+')')));},timeout);});}async[a0_0x577c68(0x2b8)](_0x4e1395,_0x3aea32,_0x2e2f6c={}){const _0x39ba49=a0_0x577c68,{timeout:timeout=this[_0x39ba49(0x24b)],agentId:_0x1e2447,context:_0x47b3ec}=_0x2e2f6c,_0xb4fd68=_0x4e1395;let _0x2cac84;try{_0x2cac84=await this['translateCommand'](_0x4e1395,{'agentId':_0x1e2447,'toolsRegistry':_0x47b3ec?.[_0x39ba49(0x1f0)],'messageProcessor':_0x47b3ec?.[_0x39ba49(0x239)],'aiService':_0x47b3ec?.[_0x39ba49(0x25f)],'apiKey':_0x47b3ec?.['apiKey'],'customApiKeys':_0x47b3ec?.[_0x39ba49(0x283)],'platformProvided':_0x47b3ec?.[_0x39ba49(0x2ea)]});}catch(_0x47a849){this[_0x39ba49(0x1b1)]?.[_0x39ba49(0x2c5)](_0x39ba49(0x1d7),{'originalCommand':_0xb4fd68,'error':_0x47a849[_0x39ba49(0x22d)]}),_0x2cac84=_0x4e1395;}return new Promise((_0x89231c,_0x461091)=>{const _0x555fe8=_0x39ba49,_0x4e745e=Date[_0x555fe8(0x1a4)]();this[_0x555fe8(0x1b1)]?.[_0x555fe8(0x2b0)](_0x555fe8(0x2de)+_0x2cac84,{'originalCommand':_0xb4fd68,'translatedCommand':_0x2cac84,'terminal':this['detectedTerminal'],'workingDirectory':_0x3aea32,'timeout':timeout,'agentId':_0x1e2447});let _0x3b5b29;if(this[_0x555fe8(0x1ed)]==='cmd'||this[_0x555fe8(0x1ed)]==='powershell'){const _0x154ebd=this['detectedTerminal']==='powershell'?'powershell':'cmd',_0x2b4ecd=this[_0x555fe8(0x1ed)]==='powershell'?['-Command',_0x2cac84]:['/c',_0x2cac84];_0x3b5b29=spawn(_0x154ebd,_0x2b4ecd,{'cwd':_0x3aea32,'env':{...process['env']},'windowsHide':!![]});}else _0x3b5b29=spawn('sh',['-c',_0x2cac84],{'cwd':_0x3aea32,'env':{...process[_0x555fe8(0x220)]}});let _0x3376be='',_0x117e8e='',_0xef6b4c=![],_0x166998=null,_0x3bbc2d=Date[_0x555fe8(0x1a4)](),_0x1c087=null;const _0x40bdf6=setTimeout(()=>{const _0x239ebb=_0x555fe8;!_0x3b5b29['killed']&&_0x166998===null&&(_0xef6b4c=!![],this['logger']?.['warn']('Command\x20timed\x20out,\x20killing\x20process:\x20'+_0x2cac84,{'timeout':timeout,'agentId':_0x1e2447}),_0x3b5b29[_0x239ebb(0x2a3)](_0x239ebb(0x1ce)),setTimeout(()=>{const _0xead133=_0x239ebb;!_0x3b5b29[_0xead133(0x254)]&&_0x3b5b29[_0xead133(0x2a3)](_0xead133(0x2b7));},0x1388));},timeout);_0x3b5b29['stdout']['on']('data',_0x59f282=>{const _0x3be37b=_0x555fe8,_0x238465=_0x59f282['toString']();_0x3376be+=_0x238465,_0x3bbc2d=Date['now'](),this[_0x3be37b(0x1b1)]?.[_0x3be37b(0x202)]('Command\x20output\x20chunk:\x20'+_0x238465['substring'](0x0,0x64),{'agentId':_0x1e2447,'command':_0xb4fd68[_0x3be37b(0x2e4)](0x0,0x32)});if(!_0x1c087){const _0x36bf0d=this['promptDetector']['detectPrompt'](_0x3376be,'stdout');_0x36bf0d&&(_0x1c087=_0x36bf0d,this[_0x3be37b(0x1b1)]?.['info'](_0x3be37b(0x2b4),{'type':_0x36bf0d[_0x3be37b(0x2d2)],'description':_0x36bf0d['description'],'matchedText':_0x36bf0d[_0x3be37b(0x225)],'agentId':_0x1e2447,'command':_0xb4fd68[_0x3be37b(0x2e4)](0x0,0x32)}));}}),_0x3b5b29['stderr']['on']('data',_0x24b188=>{const _0x329bc7=_0x555fe8,_0x49968f=_0x24b188['toString']();_0x117e8e+=_0x49968f,_0x3bbc2d=Date[_0x329bc7(0x1a4)](),this[_0x329bc7(0x1b1)]?.['debug']('Command\x20error\x20chunk:\x20'+_0x49968f['substring'](0x0,0x64),{'agentId':_0x1e2447,'command':_0xb4fd68['substring'](0x0,0x32)});if(!_0x1c087){const _0x56b502=this[_0x329bc7(0x2df)]['detectPrompt'](_0x117e8e,_0x329bc7(0x260));_0x56b502&&(_0x1c087=_0x56b502,this['logger']?.[_0x329bc7(0x2b0)]('Prompt\x20detected\x20in\x20stderr',{'type':_0x56b502[_0x329bc7(0x2d2)],'description':_0x56b502[_0x329bc7(0x249)],'matchedText':_0x56b502[_0x329bc7(0x225)],'agentId':_0x1e2447,'command':_0xb4fd68['substring'](0x0,0x32)}));}}),_0x3b5b29['on'](_0x555fe8(0x2ae),(_0x41703f,_0x55d68c)=>{const _0x6f265=_0x555fe8;clearTimeout(_0x40bdf6),_0x166998=_0x41703f;const _0x48961a=Date[_0x6f265(0x1a4)]()-_0x4e745e,_0x353cc7=Date[_0x6f265(0x1a4)]()-_0x3bbc2d;this[_0x6f265(0x1b1)]?.[_0x6f265(0x2b0)](_0x6f265(0x20e)+_0x2cac84,{'exitCode':_0x41703f,'signal':_0x55d68c,'executionTime':_0x48961a,'timedOut':_0xef6b4c,'stdoutLength':_0x3376be['length'],'stderrLength':_0x117e8e['length'],'promptDetected':!!_0x1c087,'timeSinceLastOutput':_0x353cc7});const _0x8da60c={'action':'run-command','command':_0xb4fd68,'translatedCommand':_0x2cac84!==_0xb4fd68?_0x2cac84:undefined,'stdout':_0x3376be[_0x6f265(0x245)](),'stderr':_0x117e8e[_0x6f265(0x245)](),'exitCode':_0x41703f,'executionTime':_0x48961a,'workingDirectory':_0x3aea32,'promptDetected':!!_0x1c087,'promptInfo':_0x1c087||undefined,'lastOutputTime':_0x3bbc2d,'timeSinceLastOutput':_0x353cc7};if(_0xef6b4c){_0x89231c({..._0x8da60c,'success':![],'error':'Command\x20timed\x20out\x20after\x20'+timeout+'ms','exitCode':_0x41703f||-0x1,'timedOut':!![]});return;}if(_0x41703f!==0x0){this['logger']?.['error']('Command\x20failed\x20with\x20exit\x20code\x20'+_0x41703f+':\x20'+_0x2cac84,{'originalCommand':_0xb4fd68,'translatedCommand':_0x2cac84,'exitCode':_0x41703f,'stderr':_0x117e8e[_0x6f265(0x2e4)](0x0,0xc8),'executionTime':_0x48961a,'promptDetected':!!_0x1c087}),_0x89231c({..._0x8da60c,'success':![],'error':_0x6f265(0x237)+_0x41703f});return;}this[_0x6f265(0x1b1)]?.[_0x6f265(0x2b0)](_0x6f265(0x19f)+_0x2cac84,{'originalCommand':_0xb4fd68,'executionTime':_0x48961a,'stdoutLength':_0x3376be[_0x6f265(0x2bf)],'stderrLength':_0x117e8e['length'],'promptDetected':!!_0x1c087}),_0x89231c({..._0x8da60c,'success':!![],'exitCode':0x0,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x48961a+'ms'});}),_0x3b5b29['on']('error',_0x165ef7=>{const _0x449d54=_0x555fe8;clearTimeout(_0x40bdf6);const _0x26433c=Date['now']()-_0x4e745e,_0x578342=Date['now']()-_0x3bbc2d;this[_0x449d54(0x1b1)]?.['error']('Command\x20spawn\x20error:\x20'+_0x2cac84,{'originalCommand':_0xb4fd68,'error':_0x165ef7[_0x449d54(0x22d)],'executionTime':_0x26433c,'promptDetected':!!_0x1c087}),_0x89231c({'success':![],'action':'run-command','command':_0xb4fd68,'translatedCommand':_0x2cac84!==_0xb4fd68?_0x2cac84:undefined,'error':_0x165ef7[_0x449d54(0x22d)],'stderr':_0x117e8e[_0x449d54(0x245)](),'stdout':_0x3376be[_0x449d54(0x245)](),'exitCode':-0x1,'executionTime':_0x26433c,'workingDirectory':_0x3aea32,'promptDetected':!!_0x1c087,'promptInfo':_0x1c087||undefined,'lastOutputTime':_0x3bbc2d,'timeSinceLastOutput':_0x578342});});});}async[a0_0x577c68(0x1f8)](_0xce7733,_0x1acc04,_0x5c3b37){const _0x471282=a0_0x577c68;try{let _0x5cfb2e;a0_0x4aff06[_0x471282(0x1c3)](_0xce7733)?_0x5cfb2e=_0xce7733:_0x5cfb2e=a0_0x4aff06['resolve'](_0x1acc04,_0xce7733);const _0x24402e=await a0_0x40d079[_0x471282(0x2ed)](_0x5cfb2e);if(!_0x24402e[_0x471282(0x219)]())throw new Error('Not\x20a\x20directory:\x20'+_0x5cfb2e);const _0x3d8ffb=this['directoryAccessManager']['validateReadAccess'](_0x5cfb2e,_0x5c3b37);if(!_0x3d8ffb[_0x471282(0x2af)]){this['logger']?.['warn'](_0x471282(0x281)+_0x3d8ffb[_0x471282(0x2ba)],{'targetDirectory':_0x5cfb2e,'reason':_0x3d8ffb[_0x471282(0x2ba)],'category':_0x3d8ffb[_0x471282(0x1e3)]});throw new Error(_0x471282(0x1c4)+_0x3d8ffb['reason']);}return{'success':!![],'action':_0x471282(0x2a6),'previousDirectory':_0x1acc04,'newDirectory':_0x5cfb2e,'message':'Changed\x20directory\x20to\x20'+_0x5cfb2e};}catch(_0x47a47c){throw new Error('Failed\x20to\x20change\x20directory\x20to\x20'+_0xce7733+':\x20'+_0x47a47c[_0x471282(0x22d)]);}}async['listDirectory'](_0x59b753){const _0x12f02a=a0_0x577c68;try{const _0x201f09=await a0_0x40d079['readdir'](_0x59b753,{'withFileTypes':!![]}),_0x94c997=_0x201f09['map'](_0x2509e5=>({'name':_0x2509e5[_0x12f02a(0x287)],'type':_0x2509e5[_0x12f02a(0x219)]()?'directory':_0x12f02a(0x1b0),'isSymlink':_0x2509e5[_0x12f02a(0x1f1)]()}));return{'success':!![],'action':_0x12f02a(0x247),'directory':_0x59b753,'contents':_0x94c997,'totalItems':_0x94c997[_0x12f02a(0x2bf)],'directories':_0x94c997['filter'](_0x76c7ee=>_0x76c7ee['type']===_0x12f02a(0x28a))[_0x12f02a(0x2bf)],'files':_0x94c997['filter'](_0x446670=>_0x446670[_0x12f02a(0x2d2)]==='file')[_0x12f02a(0x2bf)],'message':'Listed\x20'+_0x94c997['length']+_0x12f02a(0x235)+_0x59b753};}catch(_0x176fed){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x59b753+':\x20'+_0x176fed['message']);}}async[a0_0x577c68(0x28f)](_0x547031,_0x410af9){const _0x337264=a0_0x577c68;try{let _0x4e45fb;return a0_0x4aff06[_0x337264(0x1c3)](_0x547031)?_0x4e45fb=_0x547031:_0x4e45fb=a0_0x4aff06['resolve'](_0x410af9,_0x547031),await a0_0x40d079['mkdir'](_0x4e45fb,{'recursive':!![]}),{'success':!![],'action':_0x337264(0x214),'directory':_0x4e45fb,'relativePath':a0_0x4aff06['relative'](_0x410af9,_0x4e45fb),'message':'Created\x20directory:\x20'+_0x4e45fb};}catch(_0x91e511){throw new Error(_0x337264(0x1e6)+_0x547031+':\x20'+_0x91e511[_0x337264(0x22d)]);}}['isBlockedCommand'](_0x53078b){const _0x29bc41=a0_0x577c68,_0x575cae=_0x53078b[_0x29bc41(0x279)]()[_0x29bc41(0x245)]();return this['blockedCommands']['some'](_0x3f2bcb=>{const _0x40b0df=_0x29bc41,_0x24a3bf=_0x3f2bcb[_0x40b0df(0x279)]();return _0x575cae===_0x24a3bf||_0x575cae['startsWith'](_0x24a3bf+'\x20');});}[a0_0x577c68(0x248)](_0x3fd4e7){const _0x3e285f=a0_0x577c68;if(!this[_0x3e285f(0x2a8)])return!![];const _0x1dfb43=_0x3fd4e7['toLowerCase']()['trim'](),_0x1d3aec=_0x1dfb43[_0x3e285f(0x1e9)]('\x20')[0x0];return this['allowedCommands']['some'](_0x32d74f=>_0x32d74f[_0x3e285f(0x279)]()===_0x1d3aec||_0x1dfb43['startsWith'](_0x32d74f[_0x3e285f(0x279)]()+'\x20'));}['addToHistory'](_0x4d8400,_0xa2de83,_0x3c1d34){const _0x1a49d1=a0_0x577c68,_0x4c167f={'timestamp':new Date()['toISOString'](),'agentId':_0x3c1d34,'action':_0x4d8400['type'],'command':_0x4d8400['command']||_0x4d8400[_0x1a49d1(0x28a)],'success':_0xa2de83['success'],'executionTime':_0xa2de83['executionTime']||0x0,'workingDirectory':_0xa2de83['workingDirectory']};this[_0x1a49d1(0x29b)][_0x1a49d1(0x294)](_0x4c167f),this['commandHistory']['length']>0x64&&(this['commandHistory']=this[_0x1a49d1(0x29b)][_0x1a49d1(0x28e)](-0x64));}[a0_0x577c68(0x1e1)](){const _0x5622bb=a0_0x577c68;return[_0x5622bb(0x27f),_0x5622bb(0x2a6),_0x5622bb(0x247),'create-directory',_0x5622bb(0x212)];}['getParameterSchema'](){const _0x2dadc3=a0_0x577c68;return{'type':_0x2dadc3(0x267),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':_0x2dadc3(0x267),'properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'command':{'type':'string'},'directory':{'type':'string'}},'required':[_0x2dadc3(0x2d2)]}},'timeout':{'type':'integer','minimum':0x3e8,'maximum':this['timeout']},'async':{'type':'boolean'}},'required':['actions']};}[a0_0x577c68(0x2b3)](_0x2a599c=null){if(_0x2a599c)return this['commandHistory']['filter'](_0x4bcf8f=>_0x4bcf8f['agentId']===_0x2a599c);return[...this['commandHistory']];}['clearWorkingDirectory'](_0x4178dd){const _0x462df2=a0_0x577c68;for(const [_0x3e59b2]of this['workingDirectories']){_0x3e59b2['startsWith'](_0x4178dd+'-')&&this[_0x462df2(0x2e6)][_0x462df2(0x1c1)](_0x3e59b2);}}[a0_0x577c68(0x1aa)](_0x57c48c,_0x5c260d=null){const _0x497ee2=a0_0x577c68,_0x6c27d=_0x57c48c+'-'+(_0x5c260d||'default');return this[_0x497ee2(0x2e6)][_0x497ee2(0x25c)](_0x6c27d)||_0x5c260d||process[_0x497ee2(0x1a1)]();}[a0_0x577c68(0x2d9)](){const _0x5eb77b=a0_0x577c68;this['platformType']=process['platform'];if(process['platform']==='win32'){if(process[_0x5eb77b(0x220)]['PSModulePath'])this[_0x5eb77b(0x1ed)]=_0x5eb77b(0x2b6);else process[_0x5eb77b(0x220)]['SHELL']&&process[_0x5eb77b(0x220)]['SHELL']['includes']('bash')?this[_0x5eb77b(0x1ed)]='bash':this[_0x5eb77b(0x1ed)]=_0x5eb77b(0x26b);}else process['platform']==='darwin'?this['detectedTerminal']=_0x5eb77b(0x28c):this[_0x5eb77b(0x1ed)]=_0x5eb77b(0x28c);this[_0x5eb77b(0x1b1)]?.['info'](_0x5eb77b(0x1db),{'platform':this['platformType'],'terminal':this['detectedTerminal'],'shell':process['env'][_0x5eb77b(0x26d)]});}async['translateCommand'](_0x3aab38,_0x49e623={}){const _0xcec511=a0_0x577c68,_0x26b49c=_0x3aab38['trim'](),_0x215a54=this['analyzeCommandCompatibility'](_0x26b49c);this[_0xcec511(0x1b1)]?.['info'](_0xcec511(0x22c),{'command':_0x26b49c,'detectedTerminal':_0x215a54[_0xcec511(0x1ed)],'commandType':_0x215a54[_0xcec511(0x2da)],'commandCategory':_0x215a54[_0xcec511(0x200)],'compatible':_0x215a54[_0xcec511(0x2a1)],'issues':_0x215a54['specificIssues'],'suggestedAction':_0x215a54['suggestedAction'],'confidence':_0x215a54[_0xcec511(0x2d7)]});if(_0x215a54[_0xcec511(0x2a1)])return _0x3aab38;let _0x3f171f=null;if(this[_0xcec511(0x1ed)]==='cmd')_0x3f171f=this['translateToWindowsCmd'](_0x26b49c);else{if(this[_0xcec511(0x1ed)]==='powershell')_0x3f171f=this[_0xcec511(0x215)](_0x26b49c);else this['detectedTerminal']===_0xcec511(0x28c)&&(_0x3f171f=this['translateToBash'](_0x26b49c));}if(_0x3f171f&&this['isSimpleCommand'](_0x26b49c))return this[_0xcec511(0x1b1)]?.['info']('Using\x20simple\x20translation',{'original':_0x3aab38,'translated':_0x3f171f,'method':_0xcec511(0x255)}),_0x3f171f;if(_0x49e623['aiService']||_0x49e623['toolsRegistry']&&_0x49e623['agentId']){this['logger']?.['info']('Attempting\x20AI\x20translation\x20for\x20complex\x20command',{'command':_0x3aab38['substring'](0x0,0x64)+'...','hasAiService':!!_0x49e623['aiService'],'hasToolsRegistry':!!_0x49e623['toolsRegistry'],'agentId':_0x49e623['agentId']});try{const _0xc9ded8=await this[_0xcec511(0x1fc)](_0x3aab38,_0x49e623);if(_0xc9ded8&&_0xc9ded8[_0xcec511(0x245)]()!==_0x3aab38[_0xcec511(0x245)]())return this['logger']?.[_0xcec511(0x2b0)]('Using\x20AI\x20translation',{'original':_0x3aab38,'translated':_0xc9ded8,'method':'ai'}),_0xc9ded8;else this['logger']?.[_0xcec511(0x2c5)](_0xcec511(0x290),{'original':_0x3aab38,'translated':_0xc9ded8});}catch(_0x2b5dce){this[_0xcec511(0x1b1)]?.['warn'](_0xcec511(0x2c1),{'original':_0x3aab38,'error':_0x2b5dce['message'],'stack':_0x2b5dce['stack']});}}else this[_0xcec511(0x1b1)]?.['warn'](_0xcec511(0x259),{'hasAiService':!!_0x49e623[_0xcec511(0x25f)],'hasToolsRegistry':!!_0x49e623[_0xcec511(0x1f0)],'hasAgentId':!!_0x49e623[_0xcec511(0x1e4)],'contextKeys':Object[_0xcec511(0x22e)](_0x49e623)});return _0x3f171f||_0x3aab38;}['isSimpleCommand'](_0x3d73df){const _0x3766ee=a0_0x577c68,_0x5d0106=_0x3d73df[_0x3766ee(0x279)]();if(_0x3d73df[_0x3766ee(0x285)]('\x5cn')||_0x3d73df[_0x3766ee(0x285)]('\x5cr')||_0x3d73df['includes']('\x5ct'))return![];if(_0x3d73df[_0x3766ee(0x285)]('\x0a')||_0x3d73df['includes']('\x0d'))return![];if(_0x3d73df['includes']('#include')||_0x3d73df['includes']('printf')||_0x3d73df['includes']('main()'))return![];if(_0x3d73df['includes']('def\x20')||_0x3d73df[_0x3766ee(0x285)]('function\x20')||_0x3d73df['includes']('class\x20'))return![];if(_0x3d73df[_0x3766ee(0x285)]('echo\x20\x27')&&!_0x3d73df['includes']('echo\x20\x22'))return![];const _0x7cb414=_0x3d73df[_0x3766ee(0x291)](/'([^']*)'/);if(_0x7cb414&&_0x7cb414[0x1]['length']>0x32)return![];if(this['detectedTerminal']===_0x3766ee(0x26b)&&_0x3d73df[_0x3766ee(0x285)]('>')&&_0x3d73df['includes']('/')&&!_0x3d73df[_0x3766ee(0x285)]('\x5c'))return![];if(_0x3d73df['includes'](_0x3766ee(0x1f5))||_0x3d73df[_0x3766ee(0x285)](_0x3766ee(0x2c3))||_0x3d73df['includes'](';\x20'))return![];if(_0x3d73df['includes']('$(')||_0x3d73df[_0x3766ee(0x285)]('`')||_0x3d73df['includes']('{')||_0x3d73df['includes']('['))return![];if(_0x5d0106[_0x3766ee(0x285)]('for\x20')||_0x5d0106['includes']('while\x20')||_0x5d0106[_0x3766ee(0x285)]('if\x20'))return![];if(_0x5d0106[_0x3766ee(0x285)]('export ')||_0x5d0106[_0x3766ee(0x285)]('source\x20'))return![];if(_0x3d73df['includes'](_0x3766ee(0x1ef))||_0x3d73df['includes'](_0x3766ee(0x209)))return![];return!![];}async[a0_0x577c68(0x1fc)](_0x4f166a,_0x2c86df){const _0x4a60ef=a0_0x577c68;let _0x536b9b=_0x2c86df['aiService'];if(!_0x536b9b&&_0x2c86df['toolsRegistry']&&_0x2c86df[_0x4a60ef(0x1e4)]){const _0x3207af=_0x2c86df[_0x4a60ef(0x239)];_0x3207af&&_0x3207af[_0x4a60ef(0x25f)]&&(_0x536b9b=_0x3207af['aiService']);}if(!_0x536b9b)throw new Error(_0x4a60ef(0x221));const _0x4ffffb=this[_0x4a60ef(0x256)](_0x4f166a),_0x2559af=_0x4a60ef(0x264);try{const _0x353ed6=await _0x536b9b['sendMessage'](_0x2559af,_0x4ffffb,{'agentId':_0x2c86df[_0x4a60ef(0x1e4)],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x2c86df['apiKey'],'customApiKeys':_0x2c86df['customApiKeys'],'platformProvided':_0x2c86df['platformProvided']}),_0x453668=this['extractTranslatedCommand'](_0x353ed6['content']);return this['logger']?.[_0x4a60ef(0x202)](_0x4a60ef(0x23d),{'original':_0x4f166a,'translated':_0x453668,'model':_0x2559af,'terminal':this['detectedTerminal']}),_0x453668;}catch(_0x13a3c8){this['logger']?.[_0x4a60ef(0x1b4)](_0x4a60ef(0x2cb),{'command':_0x4f166a,'terminal':this['detectedTerminal'],'error':_0x13a3c8[_0x4a60ef(0x22d)]});throw _0x13a3c8;}}[a0_0x577c68(0x256)](_0xb410c9){const _0x429aad=a0_0x577c68,_0x2bc4a4={'cmd':_0x429aad(0x26e),'powershell':'Windows\x20PowerShell','bash':'Bash\x20shell\x20(Linux/Unix/macOS)'},_0x16b266=_0x2bc4a4[this['detectedTerminal']]||this['detectedTerminal'],_0x14dfee=this['analyzeCommandCompatibility'](_0xb410c9);let _0x3dbb33='Translate\x20this\x20command\x20to\x20work\x20correctly\x20in\x20'+_0x16b266+_0x429aad(0x1b8)+_0xb410c9+_0x429aad(0x27d)+_0x14dfee[_0x429aad(0x2da)]+_0x429aad(0x1c7)+_0x14dfee['commandCategory']+_0x429aad(0x2c7)+_0x16b266+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x14dfee['specificIssues']['join'](',\x20')||_0x429aad(0x282));return _0x14dfee['commandType']===_0x429aad(0x228)&&_0x14dfee[_0x429aad(0x208)]&&_0x14dfee['alternatives'][this['detectedTerminal']]&&(_0x3dbb33+='\x0a-\x20Suggested\x20Alternative:\x20'+_0x14dfee['alternatives'][this[_0x429aad(0x1ed)]]),_0x3dbb33+=_0x429aad(0x1fa)+_0x16b266+_0x429aad(0x2e1),_0x3dbb33;}[a0_0x577c68(0x1ff)](_0x143f97){const _0x29f128=a0_0x577c68;let _0x4723eb=_0x143f97[_0x29f128(0x20b)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x4723eb=_0x4723eb['replace'](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x54a934=_0x4723eb[_0x29f128(0x245)]()['split']('\x0a');return _0x54a934['length']>0x1&&!_0x4723eb['includes']('&&')&&!_0x4723eb['includes']('||')&&(_0x4723eb=_0x54a934[0x0][_0x29f128(0x245)]()),_0x4723eb['trim']();}[a0_0x577c68(0x206)](_0x5c1749){const _0xa442c2=a0_0x577c68,_0x55ec42=this[_0xa442c2(0x2d3)](_0x5c1749),_0x21791a=this[_0xa442c2(0x201)](_0x55ec42,this[_0xa442c2(0x1ed)]);return{'compatible':_0x21791a,'detectedTerminal':this[_0xa442c2(0x1ed)],'commandType':_0x55ec42[_0xa442c2(0x2d2)],'commandCategory':_0x55ec42['category'],'specificIssues':_0x55ec42[_0xa442c2(0x1c5)],'suggestedAction':_0x21791a?_0xa442c2(0x297):_0xa442c2(0x265),'confidence':_0x55ec42['confidence']};}[a0_0x577c68(0x1df)](_0x1f0781){const _0x5af041=a0_0x577c68;return this['analyzeCommandCompatibility'](_0x1f0781)[_0x5af041(0x2a1)];}['classifyCommand'](_0x3ec240){const _0x3cdace=a0_0x577c68,_0x1a3324=_0x3ec240[_0x3cdace(0x279)]()['trim'](),_0x2bc32c=_0x1a3324[_0x3cdace(0x1e9)]('\x20')[0x0],_0x24df22=[];let _0x26cebc=0.9;const _0x276ee8={'ls':{'category':'file-listing','alternatives':{'cmd':'dir','powershell':_0x3cdace(0x2b9)}},'cat':{'category':_0x3cdace(0x229),'alternatives':{'cmd':'type','powershell':_0x3cdace(0x23a)}},'grep':{'category':'text-search','alternatives':{'cmd':_0x3cdace(0x2bd),'powershell':'Select-String'}},'find':{'category':_0x3cdace(0x28d),'alternatives':{'cmd':'dir\x20/s','powershell':'Get-ChildItem\x20-Recurse'}},'head':{'category':'file-viewing','alternatives':{'cmd':_0x3cdace(0x1de),'powershell':'Get-Content\x20-Head'}},'tail':{'category':_0x3cdace(0x229),'alternatives':{'cmd':_0x3cdace(0x1ee),'powershell':'Get-Content\x20-Tail'}},'wc':{'category':'text-analysis','alternatives':{'cmd':_0x3cdace(0x2b2),'powershell':_0x3cdace(0x1a8)}},'cp':{'category':_0x3cdace(0x278),'alternatives':{'cmd':_0x3cdace(0x295),'powershell':'Copy-Item'}},'mv':{'category':_0x3cdace(0x1a3),'alternatives':{'cmd':'move','powershell':'Move-Item'}},'rm':{'category':_0x3cdace(0x234),'alternatives':{'cmd':'del','powershell':'Remove-Item'}},'mkdir':{'category':'directory-create','alternatives':{'cmd':'mkdir','powershell':_0x3cdace(0x207)}},'rmdir':{'category':_0x3cdace(0x24a),'alternatives':{'cmd':'rmdir','powershell':'Remove-Item'}},'touch':{'category':'file-create','alternatives':{'cmd':_0x3cdace(0x277),'powershell':_0x3cdace(0x2a7)}},'chmod':{'category':'permissions','alternatives':{'cmd':'icacls','powershell':_0x3cdace(0x296)}},'chown':{'category':_0x3cdace(0x22a),'alternatives':{'cmd':'takeown','powershell':_0x3cdace(0x296)}},'ps':{'category':'process-list','alternatives':{'cmd':'tasklist','powershell':_0x3cdace(0x27e)}},'kill':{'category':_0x3cdace(0x1a9),'alternatives':{'cmd':_0x3cdace(0x27c),'powershell':'Stop-Process'}},'killall':{'category':_0x3cdace(0x1a9),'alternatives':{'cmd':_0x3cdace(0x240),'powershell':_0x3cdace(0x1d8)}},'top':{'category':_0x3cdace(0x2ab),'alternatives':{'cmd':_0x3cdace(0x22f),'powershell':_0x3cdace(0x1b5)}},'wget':{'category':_0x3cdace(0x2d5),'alternatives':{'cmd':'curl','powershell':_0x3cdace(0x263)}},'curl':{'category':_0x3cdace(0x2a0),'alternatives':{'cmd':_0x3cdace(0x268),'powershell':_0x3cdace(0x24e)}},'ping':{'category':'network-test','alternatives':{'cmd':'ping','powershell':_0x3cdace(0x262)}},'awk':{'category':_0x3cdace(0x2b5),'alternatives':{'cmd':_0x3cdace(0x1a2),'powershell':_0x3cdace(0x1f3)}},'sed':{'category':_0x3cdace(0x29a),'alternatives':{'cmd':_0x3cdace(0x2d1),'powershell':_0x3cdace(0x204)}},'sort':{'category':'text-sort','alternatives':{'cmd':_0x3cdace(0x2b1),'powershell':_0x3cdace(0x1a0)}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':'sort\x20/unique','powershell':_0x3cdace(0x1bb)}},'pwd':{'category':'directory-current','alternatives':{'cmd':'cd','powershell':'Get-Location'}},'whoami':{'category':_0x3cdace(0x203),'alternatives':{'cmd':_0x3cdace(0x243),'powershell':'whoami'}},'env':{'category':'environment','alternatives':{'cmd':_0x3cdace(0x1dd),'powershell':_0x3cdace(0x1fd)}},'export':{'category':'environment','alternatives':{'cmd':_0x3cdace(0x1dd),'powershell':_0x3cdace(0x25e)}},'source':{'category':_0x3cdace(0x1b6),'alternatives':{'cmd':_0x3cdace(0x20c),'powershell':'.\x20'}},'tar':{'category':_0x3cdace(0x2c6),'alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':'archive','alternatives':{'cmd':_0x3cdace(0x211),'powershell':'Compress-Archive'}},'unzip':{'category':_0x3cdace(0x2c6),'alternatives':{'cmd':'powershell\x20Expand-Archive','powershell':'Expand-Archive'}},'df':{'category':'disk-info','alternatives':{'cmd':'fsutil\x20volume\x20diskfree','powershell':_0x3cdace(0x2ee)}},'du':{'category':'disk-usage','alternatives':{'cmd':_0x3cdace(0x2e0),'powershell':_0x3cdace(0x210)}},'free':{'category':'memory-info','alternatives':{'cmd':_0x3cdace(0x1ae),'powershell':_0x3cdace(0x24f)}},'uname':{'category':_0x3cdace(0x1da),'alternatives':{'cmd':'systeminfo','powershell':'Get-ComputerInfo'}}},_0x3281c3={'dir':{'category':'file-listing','alternatives':{'unix':'ls','powershell':_0x3cdace(0x2b9)}},'type':{'category':'file-viewing','alternatives':{'unix':'cat','powershell':'Get-Content'}},'copy':{'category':_0x3cdace(0x278),'alternatives':{'unix':'cp','powershell':'Copy-Item'}},'move':{'category':_0x3cdace(0x1a3),'alternatives':{'unix':'mv','powershell':'Move-Item'}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':_0x3cdace(0x217)}},'tasklist':{'category':_0x3cdace(0x288),'alternatives':{'unix':'ps','powershell':_0x3cdace(0x27e)}},'taskkill':{'category':_0x3cdace(0x1a9),'alternatives':{'unix':_0x3cdace(0x2a3),'powershell':_0x3cdace(0x23c)}},'findstr':{'category':'text-search','alternatives':{'unix':_0x3cdace(0x28b),'powershell':'Select-String'}}},_0x3e0f0e={'get-childitem':{'category':_0x3cdace(0x1e8),'alternatives':{'unix':'ls','cmd':_0x3cdace(0x286)}},'get-content':{'category':'file-viewing','alternatives':{'unix':_0x3cdace(0x236),'cmd':_0x3cdace(0x2d2)}},'copy-item':{'category':'file-copy','alternatives':{'unix':'cp','cmd':'copy'}},'move-item':{'category':_0x3cdace(0x1a3),'alternatives':{'unix':'mv','cmd':_0x3cdace(0x227)}},'remove-item':{'category':'file-delete','alternatives':{'unix':'rm','cmd':_0x3cdace(0x2eb)}},'get-process':{'category':'process-list','alternatives':{'unix':'ps','cmd':'tasklist'}},'stop-process':{'category':_0x3cdace(0x1a9),'alternatives':{'unix':_0x3cdace(0x2a3),'cmd':_0x3cdace(0x27c)}}};let _0x3e3d7b=_0x3cdace(0x205),_0x37c5da=_0x3cdace(0x205),_0x11a6e7={};if(_0x276ee8[_0x2bc32c])_0x3e3d7b='unix',_0x37c5da=_0x276ee8[_0x2bc32c][_0x3cdace(0x1e3)],_0x11a6e7=_0x276ee8[_0x2bc32c]['alternatives'];else{if(_0x3281c3[_0x2bc32c])_0x3e3d7b=_0x3cdace(0x2e9),_0x37c5da=_0x3281c3[_0x2bc32c]['category'],_0x11a6e7=_0x3281c3[_0x2bc32c][_0x3cdace(0x208)];else{if(_0x3e0f0e[_0x2bc32c])_0x3e3d7b='powershell',_0x37c5da=_0x3e0f0e[_0x2bc32c][_0x3cdace(0x1e3)],_0x11a6e7=_0x3e0f0e[_0x2bc32c][_0x3cdace(0x208)];else{const _0x1f3c89=[_0x3cdace(0x258),'cd','exit',_0x3cdace(0x1f4)];_0x1f3c89[_0x3cdace(0x285)](_0x2bc32c)?(_0x3e3d7b='universal',_0x37c5da=_0x3cdace(0x2ac)):(_0x3e3d7b='unknown',_0x26cebc=0.3);}}}return _0x3ec240[_0x3cdace(0x285)]('\x27')&&!_0x3ec240['includes']('\x22')&&_0x24df22['push']('single-quotes-problematic'),_0x3ec240['includes']('/')&&!_0x3ec240[_0x3cdace(0x285)]('\x5c')&&!_0x3ec240['includes']('http')&&_0x3ec240[_0x3cdace(0x285)]('>')&&_0x24df22['push']('unix-style-paths'),(_0x3ec240[_0x3cdace(0x285)]('\x5cn')||_0x3ec240['includes']('\x5ct'))&&_0x24df22['push'](_0x3cdace(0x2dd)),(_0x3ec240['includes']('\x20&&\x20')||_0x3ec240['includes'](_0x3cdace(0x2c3))||_0x3ec240[_0x3cdace(0x285)](';'))&&_0x24df22[_0x3cdace(0x294)](_0x3cdace(0x1c9)),{'type':_0x3e3d7b,'category':_0x37c5da,'alternatives':_0x11a6e7,'issues':_0x24df22,'confidence':_0x26cebc,'firstWord':_0x2bc32c,'fullCommand':_0x3ec240};}['isCommandCompatibleWithTerminal'](_0x4a0a61,_0xcc31c2){const _0x1469fb=a0_0x577c68;switch(_0xcc31c2){case'cmd':if(_0x4a0a61[_0x1469fb(0x2d2)]===_0x1469fb(0x228))return![];if(_0x4a0a61['issues'][_0x1469fb(0x285)]('single-quotes-problematic'))return![];if(_0x4a0a61['issues']['includes']('unix-style-paths'))return![];return _0x4a0a61['type']===_0x1469fb(0x2e9)||_0x4a0a61[_0x1469fb(0x2d2)]===_0x1469fb(0x1d5);case'powershell':if(_0x4a0a61['type']==='unix'&&!_0x4a0a61[_0x1469fb(0x208)][_0x1469fb(0x2b6)])return![];return!![];case'bash':if(_0x4a0a61[_0x1469fb(0x2d2)]==='windows-cmd')return![];return _0x4a0a61[_0x1469fb(0x2d2)]==='unix'||_0x4a0a61[_0x1469fb(0x2d2)]==='universal';default:return![];}}[a0_0x577c68(0x21d)](_0x248054){const _0x4d92d5=a0_0x577c68;let _0x180e95=_0x248054;const _0x4642b8=new Map([[/^ls\s*$/,'dir'],[/^ls\s+-la?$/,'dir'],[/^ls\s+-l$/,_0x4d92d5(0x286)],[/^ls\s+-a$/,'dir\x20/a'],[/^cat\s+(.+)$/,'type\x20$1'],[/^cp\s+(.+)\s+(.+)$/,_0x4d92d5(0x1c2)],[/^mv\s+(.+)\s+(.+)$/,_0x4d92d5(0x1ba)],[/^rm\s+(.+)$/,'del\x20$1'],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,'rmdir\x20$1'],[/^ps\s*$/,_0x4d92d5(0x22f)],[/^kill\s+(.+)$/,'taskkill\x20/PID\x20$1'],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,_0x4d92d5(0x243)],[/^ping\s+(.+)$/,_0x4d92d5(0x21f)],[/^wget\s+(.+)$/,'curl\x20-O\x20$1'],[/^curl\s+(.+)$/,_0x4d92d5(0x299)]]);for(const [_0x4daf86,_0x45c558]of _0x4642b8){if(_0x4daf86[_0x4d92d5(0x1b2)](_0x180e95)){_0x180e95=_0x180e95['replace'](_0x4daf86,_0x45c558);break;}}_0x180e95=_0x180e95['replace'](/echo\s+'([^']+)'\s*>/g,'echo\x20\x22$1\x22\x20>'),_0x180e95=_0x180e95[_0x4d92d5(0x20b)](/echo\s+'([^']+)'$/g,_0x4d92d5(0x25a));if(_0x180e95['includes'](_0x4d92d5(0x224))&&_0x180e95['includes']('\x5cn')){const _0x1fbbea=_0x180e95[_0x4d92d5(0x291)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x1fbbea){const _0x441e6b=_0x1fbbea[0x1]['replace'](/\\n/g,'\x0a'),_0x408459=_0x1fbbea[0x2],_0x422132=_0x441e6b[_0x4d92d5(0x1e9)]('\x0a');_0x180e95='('+_0x422132[_0x4d92d5(0x27a)](_0x277a45=>_0x4d92d5(0x272)+_0x277a45)[_0x4d92d5(0x216)](_0x4d92d5(0x257))+_0x4d92d5(0x250)+_0x408459;}}return this[_0x4d92d5(0x1b1)]?.[_0x4d92d5(0x2b0)](_0x4d92d5(0x284),{'original':_0x248054,'translated':_0x180e95}),_0x180e95;}['translateToPowerShell'](_0x128d33){const _0x2a7a3a=a0_0x577c68;let _0x5ec9d0=_0x128d33;const _0x1bc726=new Map([[/^ls\s*$/,_0x2a7a3a(0x2b9)],[/^ls\s+-la?$/,'Get-ChildItem\x20-Force'],[/^cat\s+(.+)$/,_0x2a7a3a(0x266)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x2a7a3a(0x275)],[/^rm\s+(.+)$/,'Remove-Item\x20$1'],[/^pwd\s*$/,'Get-Location'],[/^ps\s*$/,_0x2a7a3a(0x27e)]]);for(const [_0x37058e,_0x474448]of _0x1bc726){if(_0x37058e['test'](_0x5ec9d0)){_0x5ec9d0=_0x5ec9d0[_0x2a7a3a(0x20b)](_0x37058e,_0x474448);break;}}return this[_0x2a7a3a(0x1b1)]?.[_0x2a7a3a(0x2b0)](_0x2a7a3a(0x19e),{'original':_0x128d33,'translated':_0x5ec9d0}),_0x5ec9d0;}['translateToBash'](_0x40829f){const _0x409d37=a0_0x577c68;let _0x431041=_0x40829f;const _0x515229=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x409d37(0x1cc)],[/^type\s+(.+)$/,_0x409d37(0x1c0)],[/^copy\s+(.+)\s+(.+)$/,_0x409d37(0x23b)],[/^move\s+(.+)\s+(.+)$/,'mv\x20$1\x20$2'],[/^del\s+(.+)$/,'rm\x20$1'],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,'pwd']]);for(const [_0x406c9a,_0x378ceb]of _0x515229){if(_0x406c9a[_0x409d37(0x1b2)](_0x431041)){_0x431041=_0x431041['replace'](_0x406c9a,_0x378ceb);break;}}return _0x431041;}async['cleanup'](_0x3d6e5d){}async[a0_0x577c68(0x274)](_0x5a6e54,_0x43170f,_0x492836={}){const _0xd0eb8e=a0_0x577c68,{agentId:_0x4360a9,context:_0x494397}=_0x492836;if(!_0x4360a9)throw new Error(_0xd0eb8e(0x232));const _0xa36fb4=this[_0xd0eb8e(0x2d0)](_0x4360a9),_0x5f0bb8=_0xa36fb4[_0xd0eb8e(0x29c)](_0x564c72=>_0x564c72['state']===_0xd0eb8e(0x2a2)||_0x564c72[_0xd0eb8e(0x252)]==='waiting_for_input');if(_0x5f0bb8['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error(_0xd0eb8e(0x246)+this[_0xd0eb8e(0x20a)]+')');const _0x23516e=Array[_0xd0eb8e(0x280)](this['commandTracker'][_0xd0eb8e(0x2e3)]()),_0x47b443=_0x23516e[_0xd0eb8e(0x29c)](_0x471709=>_0x471709[_0xd0eb8e(0x252)]==='running'||_0x471709['state']===_0xd0eb8e(0x1e7));if(_0x47b443[_0xd0eb8e(0x2bf)]>=this['MAX_BACKGROUND_COMMANDS_GLOBAL'])throw new Error('Maximum\x20global\x20background\x20commands\x20exceeded\x20('+this[_0xd0eb8e(0x1a5)]+')');const _0x5b0664=_0x4360a9+'-cmd-'+Date[_0xd0eb8e(0x1a4)]()+'-'+ ++this[_0xd0eb8e(0x1cf)],_0x142bea=_0x5a6e54;let _0x485164;try{_0x485164=await this['translateCommand'](_0x5a6e54,{'agentId':_0x4360a9,'toolsRegistry':_0x494397?.['toolsRegistry'],'messageProcessor':_0x494397?.[_0xd0eb8e(0x239)],'aiService':_0x494397?.[_0xd0eb8e(0x25f)],'apiKey':_0x494397?.['apiKey'],'customApiKeys':_0x494397?.['customApiKeys'],'platformProvided':_0x494397?.[_0xd0eb8e(0x2ea)]});}catch(_0x4d96ba){this[_0xd0eb8e(0x1b1)]?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x142bea,'error':_0x4d96ba['message']}),_0x485164=_0x5a6e54;}this['logger']?.['info'](_0xd0eb8e(0x1ec)+_0x485164,{'commandId':_0x5b0664,'agentId':_0x4360a9,'originalCommand':_0x142bea,'workingDirectory':_0x43170f});let _0x2ed36;if(this['detectedTerminal']==='cmd'||this[_0xd0eb8e(0x1ed)]==='powershell'){const _0x1355a7=this['detectedTerminal']===_0xd0eb8e(0x2b6)?'powershell':_0xd0eb8e(0x26b),_0x313c43=this[_0xd0eb8e(0x1ed)]==='powershell'?['-Command',_0x485164]:['/c',_0x485164];_0x2ed36=spawn(_0x1355a7,_0x313c43,{'cwd':_0x43170f,'env':{...process[_0xd0eb8e(0x220)]},'windowsHide':!![],'stdio':[_0xd0eb8e(0x251),'pipe',_0xd0eb8e(0x251)]});}else _0x2ed36=spawn('sh',['-c',_0x485164],{'cwd':_0x43170f,'env':{...process[_0xd0eb8e(0x220)]},'stdio':[_0xd0eb8e(0x251),'pipe','pipe']});const _0x49b2b5={'commandId':_0x5b0664,'agentId':_0x4360a9,'pid':_0x2ed36[_0xd0eb8e(0x1d4)],'command':_0x142bea,'translatedCommand':_0x485164,'workingDirectory':_0x43170f,'startTime':new Date()['toISOString'](),'state':'running','exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date['now'](),'promptDetected':null,'process':_0x2ed36};return this[_0xd0eb8e(0x218)]['set'](_0x5b0664,_0x49b2b5),_0x2ed36[_0xd0eb8e(0x1ad)]['on'](_0xd0eb8e(0x2e8),_0x291f7a=>{const _0x50dd03=_0xd0eb8e,_0x23fc4f=_0x291f7a['toString']();_0x49b2b5[_0x50dd03(0x1bd)]+=_0x23fc4f,_0x49b2b5['lastOutputTime']=Date[_0x50dd03(0x1a4)]();if(!_0x49b2b5[_0x50dd03(0x292)]){const _0x19505b=this['promptDetector'][_0x50dd03(0x23f)](_0x49b2b5[_0x50dd03(0x1bd)],_0x50dd03(0x1ad));_0x19505b&&(_0x49b2b5[_0x50dd03(0x292)]=_0x19505b,_0x49b2b5[_0x50dd03(0x252)]='waiting_for_input',this['logger']?.[_0x50dd03(0x2b0)](_0x50dd03(0x1d1),{'commandId':_0x5b0664,'agentId':_0x4360a9,'type':_0x19505b[_0x50dd03(0x2d2)],'matchedText':_0x19505b[_0x50dd03(0x225)]}));}}),_0x2ed36[_0xd0eb8e(0x260)]['on'](_0xd0eb8e(0x2e8),_0x235051=>{const _0x3babe9=_0xd0eb8e,_0x8a845f=_0x235051[_0x3babe9(0x222)]();_0x49b2b5[_0x3babe9(0x1b9)]+=_0x8a845f,_0x49b2b5['lastOutputTime']=Date['now']();if(!_0x49b2b5['promptDetected']){const _0x2b33ce=this[_0x3babe9(0x2df)][_0x3babe9(0x23f)](_0x49b2b5['stderrBuffer'],'stderr');_0x2b33ce&&(_0x49b2b5['promptDetected']=_0x2b33ce,_0x49b2b5[_0x3babe9(0x252)]=_0x3babe9(0x1e7),this[_0x3babe9(0x1b1)]?.[_0x3babe9(0x2b0)](_0x3babe9(0x2ec),{'commandId':_0x5b0664,'agentId':_0x4360a9,'type':_0x2b33ce[_0x3babe9(0x2d2)],'matchedText':_0x2b33ce['matchedText']}));}}),_0x2ed36['on'](_0xd0eb8e(0x2ae),(_0x26ed28,_0x5bb7be)=>{const _0x38a68e=_0xd0eb8e;_0x49b2b5['exitCode']=_0x26ed28,_0x49b2b5['state']=_0x26ed28===0x0?_0x38a68e(0x20d):'failed',_0x49b2b5['endTime']=new Date()['toISOString'](),this[_0x38a68e(0x1b1)]?.['info']('Background\x20command\x20exited',{'commandId':_0x5b0664,'agentId':_0x4360a9,'exitCode':_0x26ed28,'signal':_0x5bb7be,'state':_0x49b2b5['state']});}),_0x2ed36['on'](_0xd0eb8e(0x1b4),_0x2e4a96=>{const _0x351559=_0xd0eb8e;_0x49b2b5['state']='failed',_0x49b2b5['error']=_0x2e4a96[_0x351559(0x22d)],_0x49b2b5[_0x351559(0x24d)]=new Date()[_0x351559(0x21c)](),this[_0x351559(0x1b1)]?.[_0x351559(0x1b4)]('Background\x20command\x20error',{'commandId':_0x5b0664,'agentId':_0x4360a9,'error':_0x2e4a96['message']});}),{'success':!![],'commandId':_0x5b0664,'pid':_0x2ed36[_0xd0eb8e(0x1d4)],'command':_0x142bea,'translatedCommand':_0x485164,'workingDirectory':_0x43170f,'message':_0xd0eb8e(0x2a5)+_0x5b0664};}[a0_0x577c68(0x2c2)](_0x1df7a0,_0x5796f5,_0x4b2c07){const _0x597a2f=a0_0x577c68,_0x4b5e5f=this['validateCommandOwnership'](_0x1df7a0,_0x4b2c07);if(_0x4b5e5f['state']==='completed'||_0x4b5e5f[_0x597a2f(0x252)]===_0x597a2f(0x2a4))throw new Error('Cannot\x20send\x20input\x20to\x20'+_0x4b5e5f['state']+_0x597a2f(0x1c8));if(!_0x4b5e5f['process']||_0x4b5e5f[_0x597a2f(0x23e)]['killed'])throw new Error(_0x597a2f(0x24c));const _0x508a11=_0x5796f5[_0x597a2f(0x1e2)]('\x0a')?_0x5796f5:_0x5796f5+'\x0a';return _0x4b5e5f['process'][_0x597a2f(0x273)][_0x597a2f(0x21b)](_0x508a11),this[_0x597a2f(0x1b1)]?.[_0x597a2f(0x2b0)]('Input\x20sent\x20to\x20background\x20command',{'commandId':_0x1df7a0,'agentId':_0x4b2c07,'inputLength':_0x5796f5[_0x597a2f(0x2bf)]}),_0x4b5e5f[_0x597a2f(0x252)]==='waiting_for_input'&&(_0x4b5e5f[_0x597a2f(0x252)]=_0x597a2f(0x2a2),_0x4b5e5f[_0x597a2f(0x292)]=null),{'success':!![],'commandId':_0x1df7a0,'message':_0x597a2f(0x25b)};}['getCommandStatus'](_0x53fba6,_0x22aea3){const _0x2a0aee=a0_0x577c68,_0x530faa=this['validateCommandOwnership'](_0x53fba6,_0x22aea3),_0x20fceb=Date[_0x2a0aee(0x1a4)]()-_0x530faa[_0x2a0aee(0x2e5)];return{'success':!![],'commandId':_0x53fba6,'pid':_0x530faa[_0x2a0aee(0x1d4)],'command':_0x530faa[_0x2a0aee(0x276)],'state':_0x530faa[_0x2a0aee(0x252)],'exitCode':_0x530faa['exitCode'],'startTime':_0x530faa[_0x2a0aee(0x298)],'endTime':_0x530faa[_0x2a0aee(0x24d)],'workingDirectory':_0x530faa['workingDirectory'],'stdout':_0x530faa['stdoutBuffer'],'stderr':_0x530faa[_0x2a0aee(0x1b9)],'stdoutLength':_0x530faa[_0x2a0aee(0x1bd)]['length'],'stderrLength':_0x530faa[_0x2a0aee(0x1b9)]['length'],'lastOutputTime':_0x530faa[_0x2a0aee(0x2e5)],'timeSinceLastOutput':_0x20fceb,'promptDetected':!!_0x530faa[_0x2a0aee(0x292)],'promptInfo':_0x530faa[_0x2a0aee(0x292)]||undefined};}['killCommand'](_0x11c1ed,_0x518f94){const _0x8b05de=a0_0x577c68,_0x90f0f2=this[_0x8b05de(0x233)](_0x11c1ed,_0x518f94);if(_0x90f0f2[_0x8b05de(0x252)]==='completed'||_0x90f0f2[_0x8b05de(0x252)]==='failed')return{'success':!![],'commandId':_0x11c1ed,'message':_0x8b05de(0x1e0),'state':_0x90f0f2[_0x8b05de(0x252)]};if(_0x90f0f2[_0x8b05de(0x23e)]&&!_0x90f0f2['process']['killed'])return _0x90f0f2['process']['kill'](_0x8b05de(0x1ce)),setTimeout(()=>{const _0x4e2bb5=_0x8b05de;_0x90f0f2[_0x4e2bb5(0x23e)]&&!_0x90f0f2['process']['killed']&&_0x90f0f2['process']['kill']('SIGKILL');},0x1388),this['logger']?.['info']('Background\x20command\x20killed',{'commandId':_0x11c1ed,'agentId':_0x518f94}),{'success':!![],'commandId':_0x11c1ed,'message':_0x8b05de(0x29d)};return{'success':![],'commandId':_0x11c1ed,'error':'Command\x20process\x20not\x20found\x20or\x20already\x20killed'};}['listAgentCommands'](_0x116255){const _0x5a839a=a0_0x577c68,_0x46a407=this[_0x5a839a(0x2d0)](_0x116255);return _0x46a407[_0x5a839a(0x27a)](_0x3574ee=>({'commandId':_0x3574ee[_0x5a839a(0x1bc)],'command':_0x3574ee[_0x5a839a(0x276)],'state':_0x3574ee[_0x5a839a(0x252)],'pid':_0x3574ee['pid'],'exitCode':_0x3574ee['exitCode'],'startTime':_0x3574ee['startTime'],'endTime':_0x3574ee['endTime'],'promptDetected':!!_0x3574ee['promptDetected'],'timeSinceLastOutput':Date[_0x5a839a(0x1a4)]()-_0x3574ee['lastOutputTime']}));}['getAgentCommands'](_0x2cc696){const _0x204467=a0_0x577c68;return Array['from'](this[_0x204467(0x218)]['values']())['filter'](_0x40c834=>_0x40c834['agentId']===_0x2cc696);}['validateCommandOwnership'](_0x15ec41,_0x13b817){const _0x604a83=a0_0x577c68,_0x5ea89d=this[_0x604a83(0x218)][_0x604a83(0x25c)](_0x15ec41);if(!_0x5ea89d)throw new Error('Command\x20not\x20found:\x20'+_0x15ec41);if(_0x5ea89d['agentId']!==_0x13b817)throw new Error('Access\x20denied:\x20Command\x20belongs\x20to\x20agent\x20'+_0x5ea89d[_0x604a83(0x1e4)]);return _0x5ea89d;}async[a0_0x577c68(0x2d6)](_0x500168){const _0x30ac41=a0_0x577c68,_0x174736=this[_0x30ac41(0x2d0)](_0x500168);let _0xaf41a1=0x0,_0x413348=0x0;for(const _0x553bc7 of _0x174736){_0x553bc7[_0x30ac41(0x23e)]&&!_0x553bc7[_0x30ac41(0x23e)]['killed']&&(_0x553bc7[_0x30ac41(0x23e)]['kill']('SIGTERM'),_0xaf41a1++,setTimeout(()=>{const _0x2fe9a8=_0x30ac41;_0x553bc7[_0x2fe9a8(0x23e)]&&!_0x553bc7['process'][_0x2fe9a8(0x254)]&&_0x553bc7[_0x2fe9a8(0x23e)]['kill']('SIGKILL');},0xbb8)),this[_0x30ac41(0x218)][_0x30ac41(0x1c1)](_0x553bc7['commandId']),_0x413348++;}return this['logger']?.['info'](_0x30ac41(0x1ac),{'agentId':_0x500168,'killedCount':_0xaf41a1,'removedCount':_0x413348}),{'success':!![],'agentId':_0x500168,'killedCount':_0xaf41a1,'removedCount':_0x413348,'message':_0x30ac41(0x1c6)+_0x413348+'\x20commands\x20for\x20agent\x20'+_0x500168};}['cleanupStaleCommands'](){const _0x2720aa=a0_0x577c68,_0x372703=Date['now']();let _0xa77fa7=0x0;for(const [_0x1ab829,_0x3e53d9]of this[_0x2720aa(0x218)][_0x2720aa(0x1be)]()){if(_0x3e53d9['state']!=='completed'&&_0x3e53d9['state']!==_0x2720aa(0x2a4))continue;const _0x59accc=new Date(_0x3e53d9[_0x2720aa(0x298)])[_0x2720aa(0x2bc)](),_0x26b1a2=(_0x372703-_0x59accc)/0x3e8/0x3c;_0x26b1a2>this[_0x2720aa(0x1d9)]&&(this[_0x2720aa(0x218)]['delete'](_0x1ab829),_0xa77fa7++);}return _0xa77fa7>0x0&&this['logger']?.[_0x2720aa(0x2b0)]('Stale\x20commands\x20cleaned\x20up',{'removedCount':_0xa77fa7,'ageThresholdMinutes':this[_0x2720aa(0x1d9)]}),{'success':!![],'removedCount':_0xa77fa7,'message':'Cleaned\x20up\x20'+_0xa77fa7+'\x20stale\x20commands'};}}export default TerminalTool;function a0_0x4113(){const _0x43fc55=['y29UDgLUDwu','y21K','igfJDgLVBNmGy29TCgXLDgvKihn1y2nLC3nMDwXSEq','u0HfteW','v2LUzg93CYbdB21Tyw5KifbYB21WDcaOy21KlMv4zsK','u2vSzwn0Aw9UihbYB21WDa','vw5RBM93BIbHy3rPB24GDhLWztOG','Cgf0DgvYBG','zwnOBYa','C3rKAw4','C3rHCNrcywnRz3jVDw5Kq29TBwfUza','tw92zs1jDgvTicqXicqY','y29TBwfUza','DhLWzsbUDwWGpG','zMLSzs1JB3b5','Dg9mB3DLCKnHC2u','BwfW','zgv0zwn0sgfUzW','DgfZA2TPBgW','cMbGyaOkq09ntuforcbbtKfmwvnjuZOklsbdB21Tyw5Kifr5Cgu6ia','r2v0lvbYB2nLC3m','CNvUlwnVBw1HBMq','zNjVBq','rgLYzwn0B3j5ignOyw5NzsbIBg9JA2vKoIa','tM9UzsbKzxrLy3rLza','y3vZDg9TqxbPs2v5CW','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbxAw5KB3DZiennra','Aw5JBhvKzxm','zgLY','BMfTzq','ChjVy2vZCY1SAxn0','oIbJB21Tyw5KigLZigjSB2nRzwqGzM9YihnLy3vYAxr5oIa','zgLYzwn0B3j5','z3jLCa','yMfZAa','zMLSzs1ZzwfYy2G','C2XPy2u','y3jLyxrLrgLYzwn0B3j5','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','Bwf0y2G','ChjVBxb0rgv0zwn0zwq','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','ChvZAa','y29WEq','u2v0lufJBa','zxHLy3v0zq','C3rHCNruAw1L','y3vYBcaKmq','Dgv4Dc1LzgL0','y29TBwfUzeHPC3rVCNK','zMLSDgvY','q29TBwfUzcbRAwXSzwqGC3vJy2vZC2z1BgX5','mtq4mxnPCevKCa','mJrbBeHhC0y','Ahr0Cc1JBgLLBNq','y29TCgf0AwjSzq','CNvUBMLUzW','A2LSBa','zMfPBgvK','qMfJA2DYB3vUzcbJB21Tyw5Kihn0yxj0zwqGD2L0AcbjrdOG','y2HHBMDLlwrPCMvJDg9YEq','tMv3luL0zw0Glvr5CguGrMLSzq','ywXSB3DLzenVBw1HBMrZ','zM9YBwf0','CMvIB290','ChjVy2vZCY1TB25PDg9Y','yNvPBhrPBG','igfJDgLVBNmGzMfPBgvK','zxHPDa','ywXSB3DLza','Aw5MBW','C29YDa','zMLUzcaVyW','z2v0q29TBwfUzeHPC3rVCNK','uhjVBxb0igrLDgvJDgvKigLUihn0zg91Da','Dgv4Dc1WCM9JzxnZAw5N','Cg93zxjZAgvSBa','u0Lhs0Lmta','zxHLy3v0zunVBw1HBMrxAxrOu3bHD24','r2v0lunOAwXKsxrLBq','CMvHC29U','DxnLCM5HBwu','z2v0vgLTzq','zMLUzhn0CG','Aw5WDxq','BgvUz3rO','mJGXote4q1r6rvzW','quKGDhjHBNnSyxrPB24GzMfPBgvKlcbMywXSAw5NigjHy2SGDg8GC2LTCgXLihrYyw5ZBgf0Aw9U','C2vUzeLUChv0','ihX8ia','mtK1ngHVyLjotG','D2fYBG','yxjJAgL2zq','cI0GvgfYz2v0ifrLCM1PBMfSoIa','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','r2vUzxjPyYbPBNb1DcbWCM9TChqGzgv0zwn0zwq','ntG3mJC0mg1vy2jgAW','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwq','rxHLy3v0Aw5NignVBw1HBMq6ia','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','Bxm6ia','DhjHBNnSyxrLq29TBwfUza','z2v0qwDLBNrdB21Tyw5KCW','Cg93zxjZAgvSBcaTyW','DhLWzq','y2XHC3nPzNLdB21Tyw5K','ywn0Aw9UCW','zg93BMXVywq','y2XLyw51CefNzw50','y29UzMLKzw5Jzq','q29TBwfUzcbJB21WBgv0zwq6ia','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','y29TBwfUzfr5Cgu','Bwf4qMfJA2DYB3vUzenVBw1HBMrZr2XVyMfS','mZi3mdu3nwnAv3Lyza','zxnJyxbLlxnLCxvLBMnLCW','rxHLy3v0Aw5NignVBw1HBMqGD2L0AcbZCgf3BJOG','ChjVBxb0rgv0zwn0B3i','zgLYic9Z','cJiUifbYzxnLCNzLihrOzsbVCMLNAw5HBcbPBNrLBNqGyw5Kigz1BMn0Aw9UywXPDhKkmY4GsgfUzgXLigzPBguGCgf0AhmSihf1B3rPBMCSigfUzcbZEw50yxGGy29YCMvJDgX5cJqUieLMignYzwf0Aw5NigzPBgvZlcbLBNn1CMuGChjVCgvYigvUy29KAw5NigfUzcbSAw5LigvUzgLUz3mkns4GqwrKCMvZCYb0AguGC3bLy2LMAwmGy29TCgf0AwjPBgL0EsbPC3n1zxmGAwrLBNrPzMLLzcbHyM92zqO2lIbszxr1CM4Gt05mwsb0AguGDhjHBNnSyxrLzcbJB21Tyw5KlcbUB3rOAw5NigvSC2ukcLrsqu5ttefuruqGq09ntufordO','uhjLC3mGyw55igTLEq','DMfSDwvZ','C3vIC3rYAw5N','BgfZDe91Dhb1DfrPBwu','D29YA2LUz0rPCMvJDg9YAwvZ','ywrKvg9iAxn0B3j5','zgf0yq','D2LUzg93CY1JBwq','CgXHDgzVCM1qCM92AwrLza','zgvS','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUzcbZDgrLCNi','C3rHDa','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFtg9NAwnHBerPC2S','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','u29YDc1pyMPLy3q','y3DK','zM9Yic9M','zMLSzs1TB3zL','BM93','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','wwvZl05Vihf1zxn0Aw9U','Dhj1zq','twvHC3vYzs1pyMPLy3q','ChjVy2vZCY1RAwXS','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','C2H1DgrVD24','qwDLBNqGy29TBwfUzhmGy2XLyw5Lzcb1Ca','C3rKB3v0','C3LZDgvTAw5MBW','nMjhAgTKtG','zMLSzq','Bg9Nz2vY','DgvZDa','mtHmuezfvue','zxjYB3i','r2v0lvbYB2nLC3mGFcbtB3j0lu9IAMvJDcbdufu','C2nYAxb0lwv4zwn1Dgu','yMXVy2TLzenVBw1HBMrZ','oGOkt1jjr0LoquWGq09ntufordOkygbGcG','C3rKzxjYqNvMzMvY','Bw92zsaKmsaKmG','u29YDc1pyMPLy3qGlvvUAxf1zq','y29TBwfUzeLK','C3rKB3v0qNvMzMvY','zw50CMLLCW','zxHLy3v0zunVBw1HBMq','y2f0icqX','zgvSzxrL','y29WEsaKmsaKmG','AxnbyNnVBhv0zq','qwnJzxnZigrLBMLLzdOG','AxnZDwvZ','q2XLyw5Lzcb1Cca','cI0Gq2f0zwDVCNK6ia','ignVBw1HBMq','y29TBwfUzc1JAgfPBMLUzW','Aw5KzxG','nZe5ntGXnvroCKLqBW','BhmGlwe','EwvZlw5V','u0Lhvevstq','y29TBwfUzeLKq291BNrLCG','qwXSia','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','qwn0Aw9Uia','zxH0CMfJDenVBNrLBNq','CgLK','Dw5PDMvYC2fS','Bwf4qMfJA2DYB3vUzenVBw1HBMrZugvYqwDLBNq','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','tufyx0nptu1btKrFquDfx01jtLvurvm','C3LZDgvTlwLUzM8','vgvYBwLUywWGzgv0zwn0zwq','q29UzMLYBwf0Aw9UihbYB21WDa','C2v0','Bw9Yzq','AxndB21Tyw5Kq29TCgf0AwjSzq','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','zw5KC1DPDgG','y2f0zwDVCNK','ywDLBNrjza','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPfwefnueXfuZOkcLj1BIbUCg0GAw5ZDgfSBdOkygbGANnVBGP7iNrVB2Xjzci6icj0zxjTAw5HBciSicjHy3rPB25ZiJOGw3SIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbPBNn0ywXSiN1DFqPGygakcKDPDcbVCgvYyxrPB25ZoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbZDgf0DxmIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbHzgqGlIj9laOGicaGEYj0ExbLiJOGiNj1BI1JB21Tyw5KiIWGiMnVBw1HBMqIoIaIz2L0ignVBw1PDcaTBsbCiLvWzgf0zsbMAwXLC1WIiN0kicbDcN0kygbGcGPdAgfUz2uGzgLYzwn0B3j5igfUzcbIDwLSzdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIlI4VzNjVBNrLBMqIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbYDw4GyNvPBgqIFqOGif0kFqPGygakcLnfq1vssvrzoGOTierHBMDLCM91CYbJB21Tyw5KCYbHCMuGyMXVy2TLzaOTienVBw1HBMrZigv4zwn1DguGAw4GAxnVBgf0zwqGzw52AxjVBM1LBNqklsbpDxrWDxqGAxmGy2fWDhvYzwqGyw5KihjLDhvYBMvKihnHzMvSEqOkqKvtvcbquKfdveLdrvm6cI0GvxnLiezPBgvtExn0zw0GDg9VBcbMB3iGzMLSzs9KAxjLy3rVCNKGB3bLCMf0Aw9UCWOTifvZzsbuzxjTAw5HBcbMB3iGq0Xjihv0AwXPDgLLCYaOBNbTlcbNAxqSign1CMWSigv0yY4PcI0Gq2HLy2SGy29TBwfUzcbVDxrWDxqGDg8GDMvYAwz5ihn1y2nLC3mkicaGia','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','D2fPDgLUz19MB3jFAw5WDxq','zMLSzs1SAxn0Aw5N','C3bSAxq','vxnLCM5HBwuGChjVBxb0','mJq5nNLuwvzfva','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','zgv0zwn0zwruzxjTAw5HBa','Bw9YzsaRBG','ihWG','Dg9VBhnszwDPC3rYEq','AxntEw1IB2XPy0XPBMS','z2vUzxjPyW','rM9YrwfJAc1pyMPLy3q','AgvSCa','icyMia','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','A2v5ChjLC3m','y2HHBMDLrgLYzwn0B3j5','DgvYBwLUywW','cGPsrvfvsvjftuvovfm6cJeUie1HA2uGDgHLignVBw1HBMqGD29YAYbJB3jYzwn0BhKGAw4G','yxbPs2v5','DhjHBNnSyxrLq29TBwfUzfDPDgHbsq','r2v0lunOAwXKsxrLBsbfBNy6','mJG4DMLmuK5h','zxH0CMfJDfrYyw5ZBgf0zwrdB21Tyw5K','y29TBwfUzenHDgvNB3j5','AxndB21Tyw5Kq29TCgf0AwjSzvDPDgHuzxjTAw5HBa','zgvIDwC','DxnLCI1PBMzV','BMf0AxzL','Dw5RBM93BG','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','tMv3luL0zw0Glvr5CguGrgLYzwn0B3j5','ywX0zxjUyxrPDMvZ','id4GjG','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','CMvWBgfJzq','y2fSBa','y29TCgXLDgvK','q29TBwfUzcbWCM9JzxnZigv4AxrLzdOG','mZe1m1bdDMj1sG','r2v0lunOAwXKsxrLBsaTuMvJDxjZzsb8ie1Lyxn1CMuTt2jQzwn0','Cg93zxjZAgvSBcbdB21WCMvZCY1bCMnOAxzL','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','ChjVBxb0ugf0DgvYBNm','y3jLyxrLlwrPCMvJDg9YEq','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','AM9PBG','uMvTB3zLluL0zw0','y29TBwfUzfrYywnRzxi','AxneAxjLy3rVCNK','CgfZC3DVCMq','D3jPDgu','Dg9ju09tDhjPBMC','DhjHBNnSyxrLvg9xAw5KB3DZq21K','AxncBg9JA2vKq29TBwfUza','CgLUzYaKmq','zw52','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','Dg9tDhjPBMC','Bg9N','zwnOBYaN','Bwf0y2HLzfrLEhq','z2v0rgvZy3jPChrPB24','Bw92zq','Dw5PEa','zMLSzs12Awv3Aw5N','B3DUzxjZAgLW','icHVCMLNAw5HBdOG','q29TBwfUzcbJB21WyxrPyMLSAxr5igfUywX5C2LZ','BwvZC2fNzq','A2v5CW','DgfZA2XPC3q','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','y29Kzq','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','zMLSzs1KzwXLDgu','igL0zw1ZigLUia','y2f0','q29TBwfUzcbLEgL0zwqGD2L0AcbJB2rLia','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSihbHCMfTzxrLCNm6ia','BwvZC2fNzvbYB2nLC3nVCG','r2v0lunVBNrLBNq','y3aGjdeGjdi','u3rVCc1qCM9JzxnZ','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbJB21WBgv0zwq','ChjVy2vZCW','zgv0zwn0uhjVBxb0','DgfZA2TPBgWGl2yGl2LT','yxn5BMm','zgvSic9Mic9X','zwnOBYaLvvnfuK5btuuL','r2vUzxjPyYbPBNb1DcbWCM9TChq','DhjPBq','twf4Aw11BsbIywnRz3jVDw5KignVBw1HBMrZihbLCIbHz2vUDcbLEgnLzwrLzcaO','BgLZDc1KAxjLy3rVCNK','AxnbBgXVD2vKq29TBwfUza','zgvZy3jPChrPB24','zgLYzwn0B3j5lwrLBgv0zq','DgLTzw91Da','q29TBwfUzcbWCM9JzxnZigLZig5VDcbYDw5UAw5N','zw5KvgLTzq','sw52B2TLlvjLC3rnzxrOB2q','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','ksa+ia','CgLWzq','C3rHDgu','cLrLCM1PBMfSifrVB2W6iev4zwn1DguGC3LZDgvTignVBw1HBMrZigfUzcbTyw5Hz2uGDgvYBwLUywWGB3bLCMf0Aw9UCYbZywzLBhKUcGPjtvbpuLrbtLq6iezVCIbMAwXLigfUzcbKAxjLy3rVCNKGy3jLyxrPB24SihbYzwzLCIb1C2LUzYb0AguGrMLSzvn5C3rLBsb0B29SlGPszxnLCNzLihrOzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGB3bLCMf0Aw9UCYbSAwTLig5WBsWGz2L0lcbJDxjSlcbLDgmUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaICNvUlwnVBw1HBMqIlcaIy29TBwfUzci6icjUCg0GAw5ZDgfSBcbLEhbYzxnZiN0ScIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIChjVAMvJDc9IywnRzw5KiN0kicbDcN0kygbGcGPtvvbqt1juruqGqunusu9ouZOklsbYDw4Ty29TBwfUzdOGrxHLy3v0zsbHignVBw1HBMqGkgnVBw1HBMqPcI0Gy2HHBMDLlwrPCMvJDg9YEtOGq2HHBMDLihDVCMTPBMCGzgLYzwn0B3j5icHKAxjLy3rVCNKPcI0GBgLZDc1KAxjLy3rVCNK6ieXPC3qGzgLYzwn0B3j5ignVBNrLBNrZicHKAxjLy3rVCNKPcI0Gy3jLyxrLlwrPCMvJDg9YEtOGq3jLyxrLigrPCMvJDg9YEsaOzgLYzwn0B3j5ksaTihbYzwzLCIbgAwXLu3LZDgvTihrVB2WklsbNzxqTD29YA2LUzY1KAxjLy3rVCNK6ieDLDcbJDxjYzw50igrPCMvJDg9YEqOkuefsqu1fvevsuZOklsbJB21Tyw5KoIbuAguGy29TBwfUzcb0BYbLEgvJDxrLcI0GzgLYzwn0B3j5oIbeAxjLy3rVCNKGCgf0AcbMB3iGBMf2AwDHDgLVBI9VCgvYyxrPB25ZcI0GDgLTzw91DdOGt3b0Aw9UywWGDgLTzw91DcbPBIbTAwXSAxnLy29UzhmGkg1HEca','A2LSBgvK','C2LTCgXL','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','icyG','zwnOBW','quKGDhjHBNnSyxrPB24GBM90igf2ywLSywjSzsaTig1PC3nPBMCGy29UDgv4Da','zwnOBYaIjdeI','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','z2v0','mtC1mJK2yM1zz0Xj','jgvUDJO','ywLtzxj2AwnL','C3rKzxjY','mZq2oeH5CKn1AW','vgvZDc1ozxrdB25Uzwn0Aw9U','sw52B2TLlvDLyLjLCxvLC3q','z3b0ltqTBwLUAq','DhjHBNnSyxrL','r2v0lunVBNrLBNqGjde','B2jQzwn0','y3vYBa','ugfZC3DVCMqGChjVBxb0'];a0_0x4113=function(){return _0x43fc55;};return a0_0x4113();}
1
+ const a0_0x11454d=a0_0x3230;(function(_0x49be58,_0x51d12e){const _0x1e04d8=a0_0x3230,_0x17accd=_0x49be58();while(!![]){try{const _0x3b18db=-parseInt(_0x1e04d8(0x207))/0x1*(parseInt(_0x1e04d8(0x22c))/0x2)+-parseInt(_0x1e04d8(0x204))/0x3*(parseInt(_0x1e04d8(0x1e1))/0x4)+parseInt(_0x1e04d8(0x252))/0x5*(parseInt(_0x1e04d8(0x205))/0x6)+-parseInt(_0x1e04d8(0x2c2))/0x7+parseInt(_0x1e04d8(0x221))/0x8*(-parseInt(_0x1e04d8(0x236))/0x9)+-parseInt(_0x1e04d8(0x2cd))/0xa*(parseInt(_0x1e04d8(0x2a0))/0xb)+parseInt(_0x1e04d8(0x2bf))/0xc*(parseInt(_0x1e04d8(0x1fd))/0xd);if(_0x3b18db===_0x51d12e)break;else _0x17accd['push'](_0x17accd['shift']());}catch(_0x3ffe7b){_0x17accd['push'](_0x17accd['shift']());}}}(a0_0x4125,0x6362d));function a0_0x3230(_0x4e790e,_0x50e135){_0x4e790e=_0x4e790e-0x19b;const _0x412548=a0_0x4125();let _0x323035=_0x412548[_0x4e790e];if(a0_0x3230['MXftfr']===undefined){var _0xdf4c72=function(_0x41e5ea){const _0x3d67b4='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x417aef='',_0x5c8ea9='';for(let _0x476ddc=0x0,_0x33debd,_0x4891ef,_0x19cbbf=0x0;_0x4891ef=_0x41e5ea['charAt'](_0x19cbbf++);~_0x4891ef&&(_0x33debd=_0x476ddc%0x4?_0x33debd*0x40+_0x4891ef:_0x4891ef,_0x476ddc++%0x4)?_0x417aef+=String['fromCharCode'](0xff&_0x33debd>>(-0x2*_0x476ddc&0x6)):0x0){_0x4891ef=_0x3d67b4['indexOf'](_0x4891ef);}for(let _0x4022a4=0x0,_0x588a9c=_0x417aef['length'];_0x4022a4<_0x588a9c;_0x4022a4++){_0x5c8ea9+='%'+('00'+_0x417aef['charCodeAt'](_0x4022a4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c8ea9);};a0_0x3230['dpSKAi']=_0xdf4c72,a0_0x3230['icXaeA']={},a0_0x3230['MXftfr']=!![];}const _0x2199dc=_0x412548[0x0],_0x2a94e6=_0x4e790e+_0x2199dc,_0x491459=a0_0x3230['icXaeA'][_0x2a94e6];return!_0x491459?(_0x323035=a0_0x3230['dpSKAi'](_0x323035),a0_0x3230['icXaeA'][_0x2a94e6]=_0x323035):_0x323035=_0x491459,_0x323035;}function a0_0x4125(){const _0x457450=['quKGy29TBwfUzcb0CMfUC2XHDgLVBIbJB21WBgv0zwq','BgLZDc1KAxjLy3rVCNK','C3bLy2LMAwnjC3n1zxm','vgvZDc1ozxrdB25Uzwn0Aw9U','BwvUDq','D2LUzg93CY1JBwq','ChjVBxb0ugf0DgvYBNm','Cg93zxjZAgvSBa','A2LSBa','C2vUze1LC3nHz2u','zxH0CMfJDenVBNrLBNq','uhjLC3mGzw50zxi','Bw9Yzq','y3aGjdeGjdi','ywDLBNrjza','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','cGPsrvfvsvjftuvovfm6cJeUie1HA2uGDgHLignVBw1HBMqGD29YAYbJB3jYzwn0BhKGAw4G','zMLUzhn0CG','C3rKB3v0','yMfZAa','AwnHy2XZ','y29TBwfUza','y2f0zwDVCNK','zgLYzwn0B3j5','Dw5PEc1ZDhLSzs1WyxrOCW','D2HPBguG','id4GjG','ChjVy2vZCY1TB25PDg9Y','y29TBwfUzc1JAgfPBMLUzW','y2f0','C2LTCgXL','vxnPBMCGC2LTCgXLihrYyw5ZBgf0Aw9U','Bw92zsaKmsaKmG','r2v0lunOAwXKsxrLBsaTuMvJDxjZzq','y3vZDg9TqxbPs2v5CW','Aw5MBW','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','C29YDcaVDw5PCxvL','DgfZA2TPBgWGl1bjrcaKmq','BwfPBIGP','D3jPDgu','C3rHDa','C3rHDgu','C2vUzeLUChv0','BxyGjdeGjdi','r2v0luXVy2f0Aw9U','AxntAw1WBgvdB21Tyw5K','uhjVBxb0igrLDgvJDgvKigLUihn0zg91Da','CMvWBgfJzq','zw50CMLLCW','yxn5BMm','y29WEsaKmsaKmG','tufyx0nptu1btKrFquDfx01jtLvurvm','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','AxnbyNnVBhv0zq','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','zMLSzs1ZzwfYy2G','zMLSzs1JB3b5','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','Bxm6ia','nhjxyLPPsq','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ihX8ia','y29TCgXLDgvK','zgvSzxrL','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','AxnZDwvZ','r2v0lunVBNrLBNqGjde','twvUDsbZzwXLy3rPB24','zMLSzq','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','zMLSzs1SAxn0Aw5N','DgfRzw93BG','r2v0lunVBNrLBNqGluHLywq','zgLYic9H','AxneAxjLy3rVCNK','u2vSzwn0lvn0CMLUzW','CMvXDwLYzxnqCM9Qzwn0','CMvSyxrPDMu','y29TBwfUzeHPC3rVCNK','y2HHBMDLlwrPCMvJDg9YEq','Cg93zxjZAgvSBcbfEhbHBMqTqxjJAgL2zq','q3jLyxrLzcbKAxjLy3rVCNK6ia','yNvPBhrPBG','C3vJy2vZCW','lunVBw1HBMq','DxnLCI1PBMzV','DhLWzq','mJuZnJndwMnrzeS','zxHLy3v0zq','EwvZlw5V','z2vUzxjPyW','y29UzMLYBwf0Aw9U','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPfwefnueXfuZOkcLj1BIbUCg0GAw5ZDgfSBdOkygbGANnVBGP7iNrVB2Xjzci6icj0zxjTAw5HBciSicjHy3rPB25ZiJOGw3SIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbPBNn0ywXSiN1DFqPGygakcKDPDcbVCgvYyxrPB25ZoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbZDgf0DxmIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbHzgqGlIj9laOGicaGEYj0ExbLiJOGiNj1BI1JB21Tyw5KiIWGiMnVBw1HBMqIoIaIz2L0ignVBw1PDcaTBsbCiLvWzgf0zsbMAwXLC1WIiN0kicbDcN0kygbGcGPdAgfUz2uGzgLYzwn0B3j5igfUzcbIDwLSzdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIlI4VzNjVBNrLBMqIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbYDw4GyNvPBgqIFqOGif0kFqPGygakcLnfq1vssvrzoGOTierHBMDLCM91CYbJB21Tyw5KCYbHCMuGyMXVy2TLzaOTienVBw1HBMrZigv4zwn1DguGAw4GAxnVBgf0zwqGzw52AxjVBM1LBNqklsbpDxrWDxqGAxmGy2fWDhvYzwqGyw5KihjLDhvYBMvKihnHzMvSEqOkqKvtvcbquKfdveLdrvm6cI0GvxnLiezPBgvtExn0zw0GDg9VBcbMB3iGzMLSzs9KAxjLy3rVCNKGB3bLCMf0Aw9UCWOTifvZzsbuzxjTAw5HBcbMB3iGq0Xjihv0AwXPDgLLCYaOBNbTlcbNAxqSign1CMWSigv0yY4PcI0Gq2HLy2SGy29TBwfUzcbVDxrWDxqGDg8GDMvYAwz5ihn1y2nLC3mkicaGia','vw5RBM93BIbHy3rPB24GDhLWztOG','nZi5otaWquXJvMne','mtm4mgfJwvjfDW','Cgf0DgvYBG','mZKXnJm5t0HXqMDJ','zgLZAY1PBMzV','BgLZDerPCMvJDg9YEq','BwfW','y3DK','BgfZDe91Dhb1DfrPBwu','Dg9mB3DLCKnHC2u','CMf3q29UDgvUDa','zgLY','C3rKB3v0qNvMzMvY','Dw5RBM93BG','AxnbCNjHEq','zxnJyxbLlxnLCxvLBMnLCW','Bwf0y2G','Bwf0y2HLzfrLEhq','Bg9N','zwnOBW','zgv0zwn0sgfUzW','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','tMv3luL0zw0Glvr5CguGrgLYzwn0B3j5','C3rHCNrcywnRz3jVDw5Kq29TBwfUza','AwyG','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','ywXSB3DLzenVBw1HBMrZ','zgvZy3jPChrPB24','tM90igeGzgLYzwn0B3j5oIa','nZi4q0z1zvb0','C2vSzwn0Aw9U','y29UDgLUDwu','z2v0ugfYyw1LDgvYu2nOzw1H','zMLSzs12Awv3Aw5N','zxH0CMfJDfrYyw5ZBgf0zwrdB21Tyw5K','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','BhmGlwe','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','zgv0zwn0zwruzxjTAw5HBa','ChjVy2vZCW','mKrkAKrlyW','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','ChjVy2vZCY1RAwXS','ywn0Aw9UCW','Dgv4Dc1WCM9JzxnZAw5N','Dg9ju09tDhjPBMC','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','C3rKzxjYqNvMzMvY','CMvZB2X2zq','zwnOBYaIjdeIid4','mtu3mJn3uffAAxm','AxncBg9JA2vKq29TBwfUza','u0Lhs0Lmta','q29TBwfUzcbVDxrWDxqGy2H1BMS6ia','D2fPDgLUz19MB3jFAw5WDxq','ywrKvg9iAxn0B3j5','Dg9VBhnszwDPC3rYEq','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbxAw5KB3DZiennra','oIbJB21Tyw5KigLZihjLCxvPCMvKigzVCIbYDw4Ty29TBwfUza','q29TBwfUzcbMywLSzwq6ia','CM0GlxjMic8','BM93','r2v0lunOAwXKsxrLBsaTrM9Yy2u','r2v0lunVBNrLBNqGlvrHAwW','z3jLCa','uMvTB3zLluL0zw0','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSihbHCMfTzxrLCNm6ia','D29YA2LUz0rPCMvJDg9YAwvZ','q29TChjLC3mTqxjJAgL2zq','zMLSDgvY','zMLSzs1KzwXLDgu','CgXHDgzVCM0','y2XHC3mG','v2LUzg93CYbdB21Tyw5KifbYB21WDcaOy21KlMv4zsK','DgvYBwLUywW','CNvUlwnVBw1HBMq','u2v0lufJBa','nJeXnxf4t0HtqG','r2v0lunOAwXKsxrLBq','Cg93zxjZAgvSBcaTyW','zgv0zwn0uhjVBxb0','DhjPBq','Dw5PDMvYC2fS','DhLWzsbUDwWGpG','twvHC3vYzs1pyMPLy3q','zMLSzs1JCMvHDgu','zgvSic9Mic9X','DgLTzw91Da','zxHLy3v0Aw9UvgLTzq','vhjHBNnSyxrLihrOAxmGy29TBwfUzcb0BYb3B3jRignVCNjLy3rSEsbPBIa','r2v0lvbYB2nLC3mGFcbtB3j0lu9IAMvJDcbdufu','Bg9Nz2vY','sgL0igvUDgvY','ChvZAa','D29YA2LUz0rPCMvJDg9YEq','C3rHCNruAw1L','BMf0AxzL','q29UDgLUDwuGChjVBxb0','ywX0zxjUyxrPDMvZ','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','zgvS','y21K','y29TBwfUzfr5Cgu','y2f0icqX','AgfSDa','CMvHC29U','BMfTzq','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','C29Tzq','sw52B2TLlvjLC3rnzxrOB2q','zxHPDa','z2v0qwDLBNrdB21Tyw5KCW','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','oIb0ExbLigLZihjLCxvPCMvK','D2LUmZi','yxjJAgL2zq','icyG','v2LUzg93CYbqB3DLCLnOzwXS','C2v0','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','CgfZC3DVCMq','D2fYBG','CgLWzq','zwnOBYaLvvnfuK5btuuL','Dw5PEa','AgvSCa','CNvUBMLUzW','y2fSBa','zwnOBYaN','qMfJA2DYB3vUzcbJB21Tyw5KigvYCM9Y','ufnnB2r1BgvqyxrO','A2LSBgvK','igfJDgLVBNmGy29TCgXLDgvKihn1y2nLC3nMDwXSEq','y2XHC3nPzNLdB21Tyw5K','Dg9tDhjPBMC','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','DMfSDwvZ','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','DhjHBNnSyxrLvg9xAw5KB3DZq21K','ywXSB3DLza','r2v0lunVBxb1DgvYsw5MBW','CgXHDgzVCM1qCM92AwrLza','ChjVy2vZCY1SAxn0','AM9PBG','DhjHBNnSyxrLvg9cyxnO','igL0zw1ZigLUia','BwvZC2fNzq','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','yxbPs2v5','z2v0rgvZy3jPChrPB24','ChjVBxb0rgv0zwn0B3i','DgfZA2XPC3q','qwn0Aw9Uia','y29TCgf0AwjSzq','u0Lhvevstq','mJa5z0DoCu5I','cLrLCM1PBMfSifrVB2W6iev4zwn1DguGC3LZDgvTignVBw1HBMrZigfUzcbTyw5Hz2uGDgvYBwLUywWGB3bLCMf0Aw9UCYbZywzLBhKUcGPjtvbpuLrbtLq6iezVCIbMAwXLigfUzcbKAxjLy3rVCNKGy3jLyxrPB24SihbYzwzLCIb1C2LUzYb0AguGrMLSzvn5C3rLBsb0B29SlGPszxnLCNzLihrOzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGB3bLCMf0Aw9UCYbSAwTLig5WBsWGz2L0lcbJDxjSlcbLDgmUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaICNvUlwnVBw1HBMqIlcaIy29TBwfUzci6icjUCg0GAw5ZDgfSBcbLEhbYzxnZiN0ScIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIChjVAMvJDc9IywnRzw5KiN0kicbDcN0kygbGcGPtvvbqt1juruqGqunusu9ouZOklsbYDw4Ty29TBwfUzdOGrxHLy3v0zsbHignVBw1HBMqGkgnVBw1HBMqPcI0Gy2HHBMDLlwrPCMvJDg9YEtOGq2HHBMDLihDVCMTPBMCGzgLYzwn0B3j5icHKAxjLy3rVCNKPcI0GBgLZDc1KAxjLy3rVCNK6ieXPC3qGzgLYzwn0B3j5ignVBNrLBNrZicHKAxjLy3rVCNKPcI0Gy3jLyxrLlwrPCMvJDg9YEtOGq3jLyxrLigrPCMvJDg9YEsaOzgLYzwn0B3j5ksaTihbYzwzLCIbgAwXLu3LZDgvTihrVB2WklsbNzxqTD29YA2LUzY1KAxjLy3rVCNK6ieDLDcbJDxjYzw50igrPCMvJDg9YEqOkuefsqu1fvevsuZOklsbJB21Tyw5KoIbuAguGy29TBwfUzcb0BYbLEgvJDxrLcI0GzgLYzwn0B3j5oIbeAxjLy3rVCNKGCgf0AcbMB3iGBMf2AwDHDgLVBI9VCgvYyxrPB25ZcI0GDgLTzw91DdOGt3b0Aw9UywWGDgLTzw91DcbPBIbTAwXSAxnLy29UzhmGkg1HEca','y3jLyxrLrgLYzwn0B3j5','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','A2LSBenVBw1HBMq','twf4Aw11BsbNBg9IywWGyMfJA2DYB3vUzcbJB21Tyw5KCYbLEgnLzwrLzcaO','zw52','r2vUzxjPyYbPBNb1DcbWCM9TChq','r2v0lunVBNrLBNq','u0HfteW','Dgv4Dc1ZzwfYy2G','y2XLyw51Cfn0ywXLq29TBwfUzhm','Aw50zwDLCG','C3vIC3rYAw5N','z2v0q29TBwfUzeHPC3rVCNK','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','C3rKzxjY','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','wwvZl05Vihf1zxn0Aw9U','ywLtzxj2AwnL','z2v0vgLTzq','ChDK','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','BgvUz3rO','y29TBwfUzfrYywnRzxi','C3rHCNrZv2L0Aa','yMXVy2TLzenVBw1HBMrZ','zw5KvgLTzq','C3bSAxq','tw92zs1jDgvTicqXicqY','ChjVBxb0rgv0zwn0zwq','mtaWntzUz1zYy0G','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','zgvIDwC','mJq4nta0mM9yyKzuDW','zgvSicqX','y29TBwfUzenHDgvNB3j5','Aw5WDxq','q2XLyw5Lzcb1Cca','zxHPDenVzgu','zgf0yq','y29TBwfUzeLKq291BNrLCG','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','BwTKAxi','AxnbBgXVD2vKq29TBwfUza','mtG5ntKWDLrnv3fi','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','BMv3rgLYzwn0B3j5','zxjYB3i','zMfPBgvK','CgLUzYaKmq','z2v0q29TBwfUzfn0yxr1CW','CgLK','DgvZDa','DgfZA2TPBgW','u29YDc1pyMPLy3qGlvvUAxf1zq','y29TBwfUzeLK','C3LZDgvTAw5MBW','y3jLyxrLlwrPCMvJDg9YEq','z3b0ltqTBwLUAq','zwnOBYa','Bwf4q29TBwfUzefNzu1PBNv0zxm','ugfZC3bOCMfZzsbWCM9TChq','zNjVBq','ChjPBNrM','Bw9YzsaRBG','tw92zs1jDgvT','zgLYzwn0B3j5lwn1CNjLBNq','DhjHBNnSyxrLq29TBwfUza','y3vYBa','zxHLy3v0zunVBw1HBMq','q2fUBM90ihnLBMqGAw5WDxqGDg8G','Aw5JBhvKzxm','cI0Gq2f0zwDVCNK6ia','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','ksa+ia','A2v5ChjLC3m','jgvUDJO'];a0_0x4125=function(){return _0x457450;};return a0_0x4125();}import{BaseTool}from'./baseTool.js';import a0_0x417aef from'../utilities/tagParser.js';import a0_0x5c8ea9 from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';import a0_0x476ddc from'path';import a0_0x33debd from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0x36cd76=a0_0x3230;this['promptPatterns']=[{'pattern':/\(y\/n\)/i,'type':_0x36cd76(0x1ff),'description':'Yes/No\x20question'},{'pattern':/\(Y\/n\)/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\(y\/N\)/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/\[y\/n\]/i,'type':_0x36cd76(0x1ff),'description':_0x36cd76(0x2b2)},{'pattern':/\[Y\/n\]/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\[y\/N\]/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/continue\?/i,'type':'continue','description':_0x36cd76(0x266)},{'pattern':/proceed\?/i,'type':_0x36cd76(0x223),'description':'Proceed\x20prompt'},{'pattern':/press any key to continue/i,'type':'keypress','description':'Press\x20any\x20key'},{'pattern':/press enter to continue/i,'type':'keypress','description':_0x36cd76(0x1b0)},{'pattern':/hit enter to continue/i,'type':_0x36cd76(0x1a3),'description':_0x36cd76(0x261)},{'pattern':/password:/i,'type':_0x36cd76(0x27d),'description':'Password\x20prompt'},{'pattern':/enter password/i,'type':'password','description':'Password\x20prompt'},{'pattern':/passphrase:/i,'type':'password','description':_0x36cd76(0x2de)},{'pattern':/username:/i,'type':'username','description':'Username\x20prompt'},{'pattern':/enter username/i,'type':'username','description':'Username\x20prompt'},{'pattern':/enter\s+\w+:/i,'type':_0x36cd76(0x2c5),'description':_0x36cd76(0x2a7)},{'pattern':/please enter/i,'type':'input','description':'Generic\x20input\x20prompt'},{'pattern':/input:/i,'type':_0x36cd76(0x2c5),'description':_0x36cd76(0x2a7)},{'pattern':/are you sure\?/i,'type':_0x36cd76(0x201),'description':'Confirmation\x20prompt'},{'pattern':/do you want to/i,'type':_0x36cd76(0x201),'description':'Confirmation\x20prompt'},{'pattern':/would you like to/i,'type':_0x36cd76(0x201),'description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':_0x36cd76(0x222),'description':'Selection\x20prompt'},{'pattern':/choose/i,'type':_0x36cd76(0x222),'description':'Selection\x20prompt'},{'pattern':/\d+\)\s+\w+/g,'type':_0x36cd76(0x1a9),'description':_0x36cd76(0x1e9)}];}[a0_0x11454d(0x255)](_0x4891ef,_0x19cbbf=a0_0x11454d(0x1b7)){const _0x4e8073=a0_0x11454d;if(!_0x4891ef||_0x4891ef[_0x4e8073(0x256)]()['length']===0x0)return null;const _0x4022a4=_0x4891ef[_0x4e8073(0x2bc)]('\x0a'),_0x588a9c=_0x4022a4['slice'](-0x5)[_0x4e8073(0x294)]('\x0a');for(const _0x1742d4 of this[_0x4e8073(0x1ab)]){const _0x5d724f=_0x588a9c['match'](_0x1742d4[_0x4e8073(0x206)]);if(_0x5d724f)return{'detected':!![],'type':_0x1742d4[_0x4e8073(0x1fc)],'description':_0x1742d4[_0x4e8073(0x21f)],'matchedText':_0x5d724f[0x0],'matchIndex':_0x5d724f['index'],'source':_0x19cbbf,'fullContext':_0x588a9c,'timestamp':Date[_0x4e8073(0x242)]()};}const _0x3b80c0=_0x4022a4[_0x4022a4['length']-0x1]||'';if(_0x3b80c0[_0x4e8073(0x256)]()['length']>0x0){const _0x30f29b=/:\s*$/[_0x4e8073(0x2d5)](_0x3b80c0),_0x398fef=/\?\s*$/['test'](_0x3b80c0);if(_0x30f29b||_0x398fef){const _0x4f2c41=/\b(enter|type|provide|specify|input)\b/i['test'](_0x3b80c0);if(_0x4f2c41)return{'detected':!![],'type':_0x4e8073(0x200),'description':'Generic\x20input\x20prompt\x20detected','matchedText':_0x3b80c0[_0x4e8073(0x256)](),'source':_0x19cbbf,'fullContext':_0x588a9c,'timestamp':Date[_0x4e8073(0x242)](),'confidence':0.7};}}return null;}[a0_0x11454d(0x218)](_0x30262e,_0x3207cb=0x7530){const _0x320d9e=a0_0x11454d,_0x3fc2c2=Date[_0x320d9e(0x242)](),_0x34b6ee=_0x3fc2c2-_0x30262e;return{'isHanging':_0x34b6ee>=_0x3207cb,'timeSinceLastOutput':_0x34b6ee,'threshold':_0x3207cb,'likelyWaiting':_0x34b6ee>=_0x3207cb/0x2};}}class TerminalTool extends BaseTool{constructor(_0x1f6f69={},_0x22fbe9=null){const _0x239059=a0_0x11454d;super(_0x1f6f69,_0x22fbe9),this[_0x239059(0x1f2)]=![],this['isAsync']=![],this['timeout']=_0x1f6f69[_0x239059(0x25c)]||0x1d4c0,this[_0x239059(0x1dc)]=_0x1f6f69[_0x239059(0x1dc)]||0x3,this['workingDirectories']=new Map(),this['commandHistory']=[],this['allowedCommands']=_0x1f6f69['allowedCommands']||null,this['blockedCommands']=_0x1f6f69[_0x239059(0x2ba)]||[_0x239059(0x241),'format',_0x239059(0x25b),'shutdown','reboot',_0x239059(0x26d)],this[_0x239059(0x1c9)]=new a0_0x5c8ea9(_0x1f6f69,_0x22fbe9),this[_0x239059(0x29b)]=new PromptDetector(),this[_0x239059(0x2b8)]=new Map(),this[_0x239059(0x2c9)]=0x0,this[_0x239059(0x2a3)]=_0x1f6f69['maxBackgroundCommandsPerAgent']||0x5,this[_0x239059(0x2ce)]=_0x1f6f69['maxBackgroundCommandsGlobal']||0x14,this[_0x239059(0x1d9)]=_0x1f6f69[_0x239059(0x2dd)]||0x3c,this['detectedTerminal']=null,this['platformType']=null,this['initializeTerminalDetection']();}[a0_0x11454d(0x29a)](){const _0x15ca4c=a0_0x11454d;return _0x15ca4c(0x2a1)+this[_0x15ca4c(0x25c)]+_0x15ca4c(0x202);}['parseParameters'](_0x3c0006){const _0x2a291c=a0_0x11454d;try{const _0x427a99={},_0x37ed7c=a0_0x417aef['extractContent'](_0x3c0006,_0x2a291c(0x250)),_0x15fc1b=a0_0x417aef[_0x2a291c(0x1af)](_0x3c0006,_0x2a291c(0x1f5)),_0x5d39bf=a0_0x417aef[_0x2a291c(0x1af)](_0x3c0006,'list-directory'),_0x47f366=a0_0x417aef[_0x2a291c(0x1af)](_0x3c0006,'create-directory'),_0x57ec48=a0_0x417aef[_0x2a291c(0x1af)](_0x3c0006,'get-working-directory'),_0x4034db=a0_0x417aef[_0x2a291c(0x1af)](_0x3c0006,'timeout'),_0xe55225=a0_0x417aef['extractContent'](_0x3c0006,'async'),_0x30e7bd=[];return _0x37ed7c[_0x2a291c(0x2b7)]>0x0&&_0x30e7bd[_0x2a291c(0x262)]({'type':_0x2a291c(0x250),'command':_0x37ed7c[0x0][_0x2a291c(0x256)]()}),_0x15fc1b[_0x2a291c(0x2b7)]>0x0&&_0x30e7bd['push']({'type':_0x2a291c(0x1f5),'directory':_0x15fc1b[0x0][_0x2a291c(0x256)]()}),_0x5d39bf[_0x2a291c(0x2b7)]>0x0&&_0x30e7bd['push']({'type':'list-directory','directory':_0x5d39bf[0x0][_0x2a291c(0x256)]()||'.'}),_0x47f366['length']>0x0&&_0x30e7bd['push']({'type':'create-directory','directory':_0x47f366[0x0]['trim']()}),_0x57ec48['length']>0x0&&_0x30e7bd[_0x2a291c(0x262)]({'type':'get-working-directory'}),_0x427a99[_0x2a291c(0x22f)]=_0x30e7bd,_0x4034db['length']>0x0&&(_0x427a99[_0x2a291c(0x25c)]=parseInt(_0x4034db[0x0],0xa)),_0xe55225['length']>0x0&&(_0x427a99[_0x2a291c(0x1d7)]=_0xe55225[0x0]['toLowerCase']()==='true'),_0x427a99[_0x2a291c(0x20e)]=_0x3c0006['trim'](),_0x427a99;}catch(_0x34a408){throw new Error(_0x2a291c(0x247)+_0x34a408['message']);}}[a0_0x11454d(0x270)](){const _0x155257=a0_0x11454d;return[_0x155257(0x22f)];}[a0_0x11454d(0x2af)](_0x50e9be){const _0x41be0d=a0_0x11454d,_0x1259cd=[];if(!_0x50e9be['actions']||!Array[_0x41be0d(0x212)](_0x50e9be['actions'])||_0x50e9be['actions']['length']===0x0)_0x1259cd['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0xb5c24c,_0x4bb7b8]of _0x50e9be['actions']['entries']()){if(!_0x4bb7b8[_0x41be0d(0x1fc)]){_0x1259cd['push'](_0x41be0d(0x29d)+(_0xb5c24c+0x1)+_0x41be0d(0x276));continue;}switch(_0x4bb7b8[_0x41be0d(0x1fc)]){case _0x41be0d(0x250):if(!_0x4bb7b8['command']||!_0x4bb7b8['command']['trim']())_0x1259cd[_0x41be0d(0x262)](_0x41be0d(0x29d)+(_0xb5c24c+0x1)+_0x41be0d(0x23f));else{if(this[_0x41be0d(0x237)](_0x4bb7b8['command']))_0x1259cd[_0x41be0d(0x262)](_0x41be0d(0x29d)+(_0xb5c24c+0x1)+':\x20command\x20is\x20blocked\x20for\x20security:\x20'+_0x4bb7b8['command']);else this[_0x41be0d(0x21e)]&&!this['isAllowedCommand'](_0x4bb7b8['command'])&&_0x1259cd[_0x41be0d(0x262)](_0x41be0d(0x29d)+(_0xb5c24c+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x4bb7b8[_0x41be0d(0x1ba)]);}break;case _0x41be0d(0x1f5):case _0x41be0d(0x1a6):case _0x41be0d(0x2da):(!_0x4bb7b8[_0x41be0d(0x1bc)]||!_0x4bb7b8['directory'][_0x41be0d(0x256)]())&&_0x1259cd['push'](_0x41be0d(0x29d)+(_0xb5c24c+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x4bb7b8[_0x41be0d(0x1fc)]);break;case'get-working-directory':break;default:_0x1259cd[_0x41be0d(0x262)]('Action\x20'+(_0xb5c24c+0x1)+_0x41be0d(0x1df)+_0x4bb7b8['type']);}}return _0x50e9be[_0x41be0d(0x25c)]&&(_0x50e9be['timeout']<0x3e8||_0x50e9be[_0x41be0d(0x25c)]>this['timeout'])&&_0x1259cd[_0x41be0d(0x262)]('Timeout\x20must\x20be\x20between\x201000\x20and\x20'+this['timeout']+'\x20milliseconds'),{'valid':_0x1259cd[_0x41be0d(0x2b7)]===0x0,'errors':_0x1259cd};}async[a0_0x11454d(0x1fe)](_0x269740,_0x1ac2f2){const _0x2f0568=a0_0x11454d,{actions:_0x5b8b91,timeout:_0x371397,async:_0x100496}=_0x269740,{agentId:_0x1f23d9,projectDir:_0x152fd9,directoryAccess:_0x90d6d7}=_0x1ac2f2,_0x54732c=_0x90d6d7||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x152fd9||process['cwd'](),'writeEnabledDirectories':[_0x152fd9||process[_0x2f0568(0x20b)]()],'restrictToProject':!![]});_0x90d6d7&&_0x90d6d7[_0x2f0568(0x263)]?console['log']('Terminal\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x90d6d7['workingDirectory']):console[_0x2f0568(0x216)]('Terminal\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0x152fd9||process[_0x2f0568(0x20b)]());const _0x549775=_0x1f23d9+'-'+(_0x152fd9||'default');let _0x4046c5=this[_0x2f0568(0x248)]['get'](_0x549775)||this[_0x2f0568(0x1c9)]['getWorkingDirectory'](_0x54732c);const _0x55e99d=[];for(const _0x1dd05d of _0x5b8b91){try{let _0x3fd0f5;switch(_0x1dd05d['type']){case _0x2f0568(0x250):_0x3fd0f5=await this[_0x2f0568(0x19d)](_0x1dd05d[_0x2f0568(0x1ba)],_0x4046c5,{'timeout':_0x371397||this[_0x2f0568(0x25c)],'async':_0x100496||![],'agentId':_0x1f23d9,'context':{'toolsRegistry':_0x1ac2f2[_0x2f0568(0x23c)],'aiService':_0x1ac2f2['aiService'],'apiKey':_0x1ac2f2['apiKey'],'customApiKeys':_0x1ac2f2[_0x2f0568(0x1c7)],'platformProvided':_0x1ac2f2[_0x2f0568(0x292)]}});break;case _0x2f0568(0x1f5):_0x3fd0f5=await this['changeDirectory'](_0x1dd05d['directory'],_0x4046c5,_0x54732c),_0x4046c5=_0x3fd0f5[_0x2f0568(0x2cf)],this['workingDirectories'][_0x2f0568(0x27b)](_0x549775,_0x4046c5);break;case _0x2f0568(0x1a6):_0x3fd0f5=await this[_0x2f0568(0x209)](_0x1dd05d[_0x2f0568(0x1bc)]==='.'?_0x4046c5:_0x1dd05d['directory']);break;case'create-directory':_0x3fd0f5=await this[_0x2f0568(0x2a2)](_0x1dd05d['directory'],_0x4046c5);break;case _0x2f0568(0x1b4):_0x3fd0f5={'success':!![],'action':_0x2f0568(0x1b4),'workingDirectory':_0x4046c5,'message':'Current\x20working\x20directory:\x20'+_0x4046c5};break;default:throw new Error(_0x2f0568(0x203)+_0x1dd05d['type']);}_0x55e99d['push'](_0x3fd0f5),this[_0x2f0568(0x23b)](_0x1dd05d,_0x3fd0f5,_0x1f23d9);}catch(_0x2d47c2){const _0x47653e={'success':![],'action':_0x1dd05d['type'],'error':_0x2d47c2[_0x2f0568(0x297)],'command':_0x1dd05d['command']||_0x1dd05d[_0x2f0568(0x1bc)],'workingDirectory':_0x4046c5};_0x55e99d['push'](_0x47653e),this[_0x2f0568(0x23b)](_0x1dd05d,_0x47653e,_0x1f23d9);}}const _0x3fc918=_0x55e99d['every'](_0x3fa84b=>_0x3fa84b['success']),_0x4fed89=_0x55e99d['filter'](_0x2afd04=>!_0x2afd04[_0x2f0568(0x1f9)]);return{'success':_0x3fc918,'actions':_0x55e99d,'workingDirectory':_0x4046c5,'executedActions':_0x5b8b91['length'],'failedActions':_0x4fed89['length'],'toolUsed':_0x2f0568(0x24f),'message':_0x3fc918?'All\x20'+_0x5b8b91['length']+_0x2f0568(0x289):_0x4fed89['length']+'\x20of\x20'+_0x5b8b91['length']+'\x20actions\x20failed'};}async['executeCommand'](_0xcdd60,_0x28b3e5,_0x1def41={}){const _0x5b161e=a0_0x11454d,{timeout:timeout=this[_0x5b161e(0x25c)],async:_0x3eda1f=![],agentId:_0x567275,context:_0x5e784e}=_0x1def41,_0x31e17e=_0xcdd60;let _0x5d9405;try{_0x5d9405=await this[_0x5b161e(0x19b)](_0xcdd60,{'agentId':_0x567275,'toolsRegistry':_0x5e784e?.['toolsRegistry'],'messageProcessor':_0x5e784e?.['messageProcessor'],'aiService':_0x5e784e?.[_0x5b161e(0x2b3)],'apiKey':_0x5e784e?.['apiKey'],'customApiKeys':_0x5e784e?.[_0x5b161e(0x1c7)],'platformProvided':_0x5e784e?.['platformProvided']});}catch(_0x1d7e18){this[_0x5b161e(0x260)]?.['warn'](_0x5b161e(0x28c),{'originalCommand':_0x31e17e,'error':_0x1d7e18['message']}),_0x5d9405=_0xcdd60;}return new Promise((_0x49edfa,_0x34492d)=>{const _0x193c63=Date['now']();this['logger']?.['info']('Executing\x20command:\x20'+_0x5d9405,{'originalCommand':_0x31e17e,'translatedCommand':_0x5d9405,'terminal':this['detectedTerminal'],'workingDirectory':_0x28b3e5,'timeout':timeout,'agentId':_0x567275});const _0x3fc156=exec(_0x5d9405,{'cwd':_0x28b3e5,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x508a7e,_0x3ce6a8,_0x331d38)=>{const _0x18e466=a0_0x3230,_0x15353f=Date[_0x18e466(0x242)]()-_0x193c63;if(_0x508a7e){this['logger']?.[_0x18e466(0x2d0)](_0x18e466(0x240)+_0x5d9405,{'originalCommand':_0x31e17e,'translatedCommand':_0x5d9405,'error':_0x508a7e['message'],'workingDirectory':_0x28b3e5,'executionTime':_0x15353f}),_0x49edfa({'success':![],'action':'run-command','command':_0x31e17e,'translatedCommand':_0x5d9405!==_0x31e17e?_0x5d9405:undefined,'error':_0x508a7e['message'],'stderr':_0x331d38['trim'](),'stdout':_0x3ce6a8['trim'](),'exitCode':_0x508a7e['code'],'executionTime':_0x15353f,'workingDirectory':_0x28b3e5});return;}this['logger']?.[_0x18e466(0x1c8)]('Command\x20completed:\x20'+_0x5d9405,{'originalCommand':_0x31e17e,'translatedCommand':_0x5d9405,'executionTime':_0x15353f,'stdoutLength':_0x3ce6a8[_0x18e466(0x2b7)],'stderrLength':_0x331d38[_0x18e466(0x2b7)]}),_0x49edfa({'success':!![],'action':_0x18e466(0x250),'command':_0x31e17e,'translatedCommand':_0x5d9405!==_0x31e17e?_0x5d9405:undefined,'stdout':_0x3ce6a8[_0x18e466(0x256)](),'stderr':_0x331d38[_0x18e466(0x256)](),'exitCode':0x0,'executionTime':_0x15353f,'workingDirectory':_0x28b3e5,'message':_0x18e466(0x232)+_0x15353f+'ms'});});setTimeout(()=>{const _0x442e9f=a0_0x3230;!_0x3fc156['killed']&&(_0x3fc156['kill'](_0x442e9f(0x29f)),_0x34492d(new Error(_0x442e9f(0x227)+timeout+_0x442e9f(0x1e0)+_0x5d9405+'\x20(original:\x20'+_0x31e17e+')')));},timeout);});}async['executeCommandWithSpawn'](_0x5ca0f0,_0x1a527e,_0x4fca0f={}){const _0x2199f9=a0_0x11454d,{timeout:timeout=this['timeout'],agentId:_0x50bad5,context:_0x46f385}=_0x4fca0f,_0x2b8dc0=_0x5ca0f0;let _0x30413f;try{_0x30413f=await this['translateCommand'](_0x5ca0f0,{'agentId':_0x50bad5,'toolsRegistry':_0x46f385?.[_0x2199f9(0x23c)],'messageProcessor':_0x46f385?.['messageProcessor'],'aiService':_0x46f385?.['aiService'],'apiKey':_0x46f385?.[_0x2199f9(0x299)],'customApiKeys':_0x46f385?.['customApiKeys'],'platformProvided':_0x46f385?.[_0x2199f9(0x292)]});}catch(_0x1d8d66){this['logger']?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x2b8dc0,'error':_0x1d8d66['message']}),_0x30413f=_0x5ca0f0;}return new Promise((_0x448f16,_0x53c8cc)=>{const _0x4eeb87=_0x2199f9,_0x5e29f8=Date['now']();this['logger']?.[_0x4eeb87(0x1c8)]('Executing\x20command\x20with\x20spawn:\x20'+_0x30413f,{'originalCommand':_0x2b8dc0,'translatedCommand':_0x30413f,'terminal':this['detectedTerminal'],'workingDirectory':_0x1a527e,'timeout':timeout,'agentId':_0x50bad5});let _0x3daa66;if(this[_0x4eeb87(0x22a)]==='cmd'||this[_0x4eeb87(0x22a)]==='powershell'){const _0x4f4e7d=this['detectedTerminal']===_0x4eeb87(0x1ac)?'powershell':'cmd',_0x4b7b9e=this[_0x4eeb87(0x22a)]===_0x4eeb87(0x1ac)?['-Command',_0x30413f]:['/c',_0x30413f];_0x3daa66=spawn(_0x4f4e7d,_0x4b7b9e,{'cwd':_0x1a527e,'env':{...process['env']},'windowsHide':!![]});}else _0x3daa66=spawn('sh',['-c',_0x30413f],{'cwd':_0x1a527e,'env':{...process[_0x4eeb87(0x2a6)]}});let _0x25ccf8='',_0x2161c1='',_0x40f5c7=![],_0x4857b1=null,_0x3cdb0d=Date['now'](),_0x367f81=null;const _0x367a7c=setTimeout(()=>{const _0x11bd5e=_0x4eeb87;!_0x3daa66[_0x11bd5e(0x288)]&&_0x4857b1===null&&(_0x40f5c7=!![],this['logger']?.[_0x11bd5e(0x27e)]('Command\x20timed\x20out,\x20killing\x20process:\x20'+_0x30413f,{'timeout':timeout,'agentId':_0x50bad5}),_0x3daa66['kill'](_0x11bd5e(0x29f)),setTimeout(()=>{const _0x4a6b1a=_0x11bd5e;!_0x3daa66[_0x4a6b1a(0x288)]&&_0x3daa66['kill']('SIGKILL');},0x1388));},timeout);_0x3daa66['stdout']['on'](_0x4eeb87(0x2c8),_0x2ceb0c=>{const _0x539def=_0x4eeb87,_0x5983e8=_0x2ceb0c[_0x539def(0x28b)]();_0x25ccf8+=_0x5983e8,_0x3cdb0d=Date['now'](),this['logger']?.[_0x539def(0x2c1)](_0x539def(0x239)+_0x5983e8['substring'](0x0,0x64),{'agentId':_0x50bad5,'command':_0x2b8dc0['substring'](0x0,0x32)});if(!_0x367f81){const _0x318c9e=this[_0x539def(0x29b)]['detectPrompt'](_0x25ccf8,_0x539def(0x1b7));_0x318c9e&&(_0x367f81=_0x318c9e,this[_0x539def(0x260)]?.[_0x539def(0x1c8)](_0x539def(0x1d4),{'type':_0x318c9e['type'],'description':_0x318c9e['description'],'matchedText':_0x318c9e['matchedText'],'agentId':_0x50bad5,'command':_0x2b8dc0['substring'](0x0,0x32)}));}}),_0x3daa66[_0x4eeb87(0x2b0)]['on'](_0x4eeb87(0x2c8),_0x40b426=>{const _0x56b6d4=_0x4eeb87,_0xe922e1=_0x40b426['toString']();_0x2161c1+=_0xe922e1,_0x3cdb0d=Date['now'](),this[_0x56b6d4(0x260)]?.[_0x56b6d4(0x2c1)]('Command\x20error\x20chunk:\x20'+_0xe922e1[_0x56b6d4(0x2ad)](0x0,0x64),{'agentId':_0x50bad5,'command':_0x2b8dc0[_0x56b6d4(0x2ad)](0x0,0x32)});if(!_0x367f81){const _0x1a8293=this[_0x56b6d4(0x29b)][_0x56b6d4(0x255)](_0x2161c1,_0x56b6d4(0x2b0));_0x1a8293&&(_0x367f81=_0x1a8293,this[_0x56b6d4(0x260)]?.['info']('Prompt\x20detected\x20in\x20stderr',{'type':_0x1a8293['type'],'description':_0x1a8293['description'],'matchedText':_0x1a8293[_0x56b6d4(0x215)],'agentId':_0x50bad5,'command':_0x2b8dc0['substring'](0x0,0x32)}));}}),_0x3daa66['on'](_0x4eeb87(0x273),(_0x35c1a4,_0x19f665)=>{const _0x274ee6=_0x4eeb87;clearTimeout(_0x367a7c),_0x4857b1=_0x35c1a4;const _0xa70a4a=Date[_0x274ee6(0x242)]()-_0x5e29f8,_0x51372a=Date['now']()-_0x3cdb0d;this['logger']?.['info']('Command\x20process\x20exited:\x20'+_0x30413f,{'exitCode':_0x35c1a4,'signal':_0x19f665,'executionTime':_0xa70a4a,'timedOut':_0x40f5c7,'stdoutLength':_0x25ccf8['length'],'stderrLength':_0x2161c1['length'],'promptDetected':!!_0x367f81,'timeSinceLastOutput':_0x51372a});const _0x3c9d78={'action':'run-command','command':_0x2b8dc0,'translatedCommand':_0x30413f!==_0x2b8dc0?_0x30413f:undefined,'stdout':_0x25ccf8[_0x274ee6(0x256)](),'stderr':_0x2161c1['trim'](),'exitCode':_0x35c1a4,'executionTime':_0xa70a4a,'workingDirectory':_0x1a527e,'promptDetected':!!_0x367f81,'promptInfo':_0x367f81||undefined,'lastOutputTime':_0x3cdb0d,'timeSinceLastOutput':_0x51372a};if(_0x40f5c7){_0x448f16({..._0x3c9d78,'success':![],'error':_0x274ee6(0x227)+timeout+'ms','exitCode':_0x35c1a4||-0x1,'timedOut':!![]});return;}if(_0x35c1a4!==0x0){this['logger']?.[_0x274ee6(0x2d0)]('Command\x20failed\x20with\x20exit\x20code\x20'+_0x35c1a4+':\x20'+_0x30413f,{'originalCommand':_0x2b8dc0,'translatedCommand':_0x30413f,'exitCode':_0x35c1a4,'stderr':_0x2161c1[_0x274ee6(0x2ad)](0x0,0xc8),'executionTime':_0xa70a4a,'promptDetected':!!_0x367f81}),_0x448f16({..._0x3c9d78,'success':![],'error':'Command\x20exited\x20with\x20code\x20'+_0x35c1a4});return;}this['logger']?.[_0x274ee6(0x1c8)](_0x274ee6(0x2c0)+_0x30413f,{'originalCommand':_0x2b8dc0,'executionTime':_0xa70a4a,'stdoutLength':_0x25ccf8['length'],'stderrLength':_0x2161c1['length'],'promptDetected':!!_0x367f81}),_0x448f16({..._0x3c9d78,'success':!![],'exitCode':0x0,'message':_0x274ee6(0x232)+_0xa70a4a+'ms'});}),_0x3daa66['on'](_0x4eeb87(0x2d0),_0x11ae39=>{const _0x55c6ef=_0x4eeb87;clearTimeout(_0x367a7c);const _0x11eba8=Date['now']()-_0x5e29f8,_0x33df6c=Date[_0x55c6ef(0x242)]()-_0x3cdb0d;this['logger']?.['error']('Command\x20spawn\x20error:\x20'+_0x30413f,{'originalCommand':_0x2b8dc0,'error':_0x11ae39[_0x55c6ef(0x297)],'executionTime':_0x11eba8,'promptDetected':!!_0x367f81}),_0x448f16({'success':![],'action':'run-command','command':_0x2b8dc0,'translatedCommand':_0x30413f!==_0x2b8dc0?_0x30413f:undefined,'error':_0x11ae39['message'],'stderr':_0x2161c1[_0x55c6ef(0x256)](),'stdout':_0x25ccf8['trim'](),'exitCode':-0x1,'executionTime':_0x11eba8,'workingDirectory':_0x1a527e,'promptDetected':!!_0x367f81,'promptInfo':_0x367f81||undefined,'lastOutputTime':_0x3cdb0d,'timeSinceLastOutput':_0x33df6c});});});}async['changeDirectory'](_0x4d1c9d,_0xfd77c8,_0x181282){const _0xaa484f=a0_0x11454d;try{let _0x5ad9d4;a0_0x476ddc[_0xaa484f(0x1db)](_0x4d1c9d)?_0x5ad9d4=_0x4d1c9d:_0x5ad9d4=a0_0x476ddc[_0xaa484f(0x234)](_0xfd77c8,_0x4d1c9d);const _0x158c12=await a0_0x33debd[_0xaa484f(0x1ce)](_0x5ad9d4);if(!_0x158c12[_0xaa484f(0x1f0)]())throw new Error(_0xaa484f(0x220)+_0x5ad9d4);const _0xeb1832=this['directoryAccessManager']['validateReadAccess'](_0x5ad9d4,_0x181282);if(!_0xeb1832[_0xaa484f(0x290)]){this['logger']?.[_0xaa484f(0x27e)]('Directory\x20change\x20blocked:\x20'+_0xeb1832[_0xaa484f(0x26e)],{'targetDirectory':_0x5ad9d4,'reason':_0xeb1832[_0xaa484f(0x26e)],'category':_0xeb1832[_0xaa484f(0x1bb)]});throw new Error('Access\x20denied:\x20'+_0xeb1832[_0xaa484f(0x26e)]);}return{'success':!![],'action':'change-directory','previousDirectory':_0xfd77c8,'newDirectory':_0x5ad9d4,'message':'Changed\x20directory\x20to\x20'+_0x5ad9d4};}catch(_0xc1000){throw new Error('Failed\x20to\x20change\x20directory\x20to\x20'+_0x4d1c9d+':\x20'+_0xc1000[_0xaa484f(0x297)]);}}async['listDirectory'](_0x2ef4a3){const _0x3c3299=a0_0x11454d;try{const _0x4ee649=await a0_0x33debd['readdir'](_0x2ef4a3,{'withFileTypes':!![]}),_0x4c11ff=_0x4ee649['map'](_0x13d779=>({'name':_0x13d779[_0x3c3299(0x26f)],'type':_0x13d779['isDirectory']()?'directory':_0x3c3299(0x1ea),'isSymlink':_0x13d779['isSymbolicLink']()}));return{'success':!![],'action':_0x3c3299(0x1a6),'directory':_0x2ef4a3,'contents':_0x4c11ff,'totalItems':_0x4c11ff['length'],'directories':_0x4c11ff['filter'](_0x3a2fe7=>_0x3a2fe7[_0x3c3299(0x1fc)]==='directory')['length'],'files':_0x4c11ff[_0x3c3299(0x24a)](_0x3d717a=>_0x3d717a[_0x3c3299(0x1fc)]===_0x3c3299(0x1ea))['length'],'message':'Listed\x20'+_0x4c11ff[_0x3c3299(0x2b7)]+_0x3c3299(0x296)+_0x2ef4a3};}catch(_0x84c844){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x2ef4a3+':\x20'+_0x84c844[_0x3c3299(0x297)]);}}async[a0_0x11454d(0x2a2)](_0x3a6fbc,_0x5da4d6){const _0x585cb8=a0_0x11454d;try{let _0x97ba3a;return a0_0x476ddc[_0x585cb8(0x1db)](_0x3a6fbc)?_0x97ba3a=_0x3a6fbc:_0x97ba3a=a0_0x476ddc['resolve'](_0x5da4d6,_0x3a6fbc),await a0_0x33debd[_0x585cb8(0x2cb)](_0x97ba3a,{'recursive':!![]}),{'success':!![],'action':_0x585cb8(0x2da),'directory':_0x97ba3a,'relativePath':a0_0x476ddc[_0x585cb8(0x1f3)](_0x5da4d6,_0x97ba3a),'message':_0x585cb8(0x1f7)+_0x97ba3a};}catch(_0x59c401){throw new Error(_0x585cb8(0x1eb)+_0x3a6fbc+':\x20'+_0x59c401['message']);}}['isBlockedCommand'](_0x5e5d62){const _0x4999ff=a0_0x11454d,_0x3d146=_0x5e5d62['toLowerCase']()[_0x4999ff(0x256)]();return this[_0x4999ff(0x2ba)][_0x4999ff(0x271)](_0x29ab74=>{const _0x459d5f=_0x4999ff,_0xac2242=_0x29ab74['toLowerCase']();return _0x3d146===_0xac2242||_0x3d146[_0x459d5f(0x2b9)](_0xac2242+'\x20');});}[a0_0x11454d(0x2cc)](_0x4afaa5){const _0x29d27d=a0_0x11454d;if(!this['allowedCommands'])return!![];const _0x2f560c=_0x4afaa5['toLowerCase']()[_0x29d27d(0x256)](),_0x5a2028=_0x2f560c[_0x29d27d(0x2bc)]('\x20')[0x0];return this['allowedCommands']['some'](_0x440a79=>_0x440a79['toLowerCase']()===_0x5a2028||_0x2f560c['startsWith'](_0x440a79['toLowerCase']()+'\x20'));}['addToHistory'](_0x36dfef,_0x1a545c,_0x48e323){const _0x2aeebe=a0_0x11454d,_0x4e583f={'timestamp':new Date()['toISOString'](),'agentId':_0x48e323,'action':_0x36dfef[_0x2aeebe(0x1fc)],'command':_0x36dfef[_0x2aeebe(0x1ba)]||_0x36dfef['directory'],'success':_0x1a545c['success'],'executionTime':_0x1a545c[_0x2aeebe(0x25d)]||0x0,'workingDirectory':_0x1a545c[_0x2aeebe(0x263)]};this[_0x2aeebe(0x1f4)][_0x2aeebe(0x262)](_0x4e583f),this['commandHistory']['length']>0x64&&(this[_0x2aeebe(0x1f4)]=this[_0x2aeebe(0x1f4)]['slice'](-0x64));}['getSupportedActions'](){const _0x4eed9f=a0_0x11454d;return['run-command','change-directory',_0x4eed9f(0x1a6),'create-directory',_0x4eed9f(0x1b4)];}[a0_0x11454d(0x224)](){const _0x51aade=a0_0x11454d;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this[_0x51aade(0x1e2)]()},'command':{'type':'string'},'directory':{'type':'string'}},'required':[_0x51aade(0x1fc)]}},'timeout':{'type':_0x51aade(0x2ac),'minimum':0x3e8,'maximum':this[_0x51aade(0x25c)]},'async':{'type':'boolean'}},'required':[_0x51aade(0x22f)]};}[a0_0x11454d(0x2ae)](_0x50e03e=null){const _0x39f157=a0_0x11454d;if(_0x50e03e)return this[_0x39f157(0x1f4)]['filter'](_0x2a87ad=>_0x2a87ad['agentId']===_0x50e03e);return[...this['commandHistory']];}['clearWorkingDirectory'](_0x54592e){const _0x13178d=a0_0x11454d;for(const [_0x3738a0]of this[_0x13178d(0x248)]){_0x3738a0['startsWith'](_0x54592e+'-')&&this['workingDirectories'][_0x13178d(0x1e5)](_0x3738a0);}}[a0_0x11454d(0x2b6)](_0x2c5670,_0x17cd26=null){const _0xee21f6=_0x2c5670+'-'+(_0x17cd26||'default');return this['workingDirectories']['get'](_0xee21f6)||_0x17cd26||process['cwd']();}[a0_0x11454d(0x2ca)](){const _0x4095e5=a0_0x11454d;this['platformType']=process[_0x4095e5(0x24c)];if(process[_0x4095e5(0x24c)]===_0x4095e5(0x277)){if(process[_0x4095e5(0x2a6)][_0x4095e5(0x287)])this['detectedTerminal']='powershell';else process[_0x4095e5(0x2a6)][_0x4095e5(0x2a9)]&&process[_0x4095e5(0x2a6)][_0x4095e5(0x2a9)]['includes']('bash')?this['detectedTerminal']=_0x4095e5(0x1b8):this['detectedTerminal']='cmd';}else process[_0x4095e5(0x24c)]==='darwin'?this['detectedTerminal']='bash':this[_0x4095e5(0x22a)]=_0x4095e5(0x1b8);this['logger']?.['info']('Terminal\x20detected',{'platform':this['platformType'],'terminal':this[_0x4095e5(0x22a)],'shell':process[_0x4095e5(0x2a6)][_0x4095e5(0x2a9)]});}async[a0_0x11454d(0x19b)](_0x4bdf45,_0x4c1741={}){const _0x897ad4=a0_0x11454d,_0x49fbc1=_0x4bdf45['trim'](),_0x5a6d05=this['analyzeCommandCompatibility'](_0x49fbc1);this['logger']?.[_0x897ad4(0x1c8)]('Command\x20compatibility\x20analysis',{'command':_0x49fbc1,'detectedTerminal':_0x5a6d05['detectedTerminal'],'commandType':_0x5a6d05['commandType'],'commandCategory':_0x5a6d05[_0x897ad4(0x2c4)],'compatible':_0x5a6d05[_0x897ad4(0x29e)],'issues':_0x5a6d05[_0x897ad4(0x1a7)],'suggestedAction':_0x5a6d05['suggestedAction'],'confidence':_0x5a6d05['confidence']});if(_0x5a6d05['compatible'])return _0x4bdf45;let _0x1b27bb=null;if(this[_0x897ad4(0x22a)]==='cmd')_0x1b27bb=this[_0x897ad4(0x28f)](_0x49fbc1);else{if(this['detectedTerminal']==='powershell')_0x1b27bb=this[_0x897ad4(0x1a1)](_0x49fbc1);else this[_0x897ad4(0x22a)]===_0x897ad4(0x1b8)&&(_0x1b27bb=this[_0x897ad4(0x295)](_0x49fbc1));}if(_0x1b27bb&&this[_0x897ad4(0x1d3)](_0x49fbc1))return this['logger']?.[_0x897ad4(0x1c8)](_0x897ad4(0x1c4),{'original':_0x4bdf45,'translated':_0x1b27bb,'method':_0x897ad4(0x1c3)}),_0x1b27bb;if(_0x4c1741[_0x897ad4(0x2b3)]||_0x4c1741['toolsRegistry']&&_0x4c1741[_0x897ad4(0x1b3)]){this[_0x897ad4(0x260)]?.[_0x897ad4(0x1c8)]('Attempting\x20AI\x20translation\x20for\x20complex\x20command',{'command':_0x4bdf45['substring'](0x0,0x64)+'...','hasAiService':!!_0x4c1741[_0x897ad4(0x2b3)],'hasToolsRegistry':!!_0x4c1741[_0x897ad4(0x23c)],'agentId':_0x4c1741[_0x897ad4(0x1b3)]});try{const _0x1fa07e=await this['translateCommandWithAI'](_0x4bdf45,_0x4c1741);if(_0x1fa07e&&_0x1fa07e['trim']()!==_0x4bdf45['trim']())return this[_0x897ad4(0x260)]?.['info']('Using\x20AI\x20translation',{'original':_0x4bdf45,'translated':_0x1fa07e,'method':'ai'}),_0x1fa07e;else this['logger']?.[_0x897ad4(0x27e)](_0x897ad4(0x27c),{'original':_0x4bdf45,'translated':_0x1fa07e});}catch(_0x4188a4){this['logger']?.[_0x897ad4(0x27e)]('AI\x20translation\x20failed,\x20falling\x20back\x20to\x20simple\x20translation',{'original':_0x4bdf45,'error':_0x4188a4['message'],'stack':_0x4188a4['stack']});}}else this[_0x897ad4(0x260)]?.[_0x897ad4(0x27e)]('AI\x20translation\x20not\x20available\x20-\x20missing\x20context',{'hasAiService':!!_0x4c1741['aiService'],'hasToolsRegistry':!!_0x4c1741[_0x897ad4(0x23c)],'hasAgentId':!!_0x4c1741['agentId'],'contextKeys':Object['keys'](_0x4c1741)});return _0x1b27bb||_0x4bdf45;}['isSimpleCommand'](_0x2b30a5){const _0x321b25=a0_0x11454d,_0x4ea865=_0x2b30a5[_0x321b25(0x20d)]();if(_0x2b30a5[_0x321b25(0x19f)]('\x5cn')||_0x2b30a5['includes']('\x5cr')||_0x2b30a5['includes']('\x5ct'))return![];if(_0x2b30a5['includes']('\x0a')||_0x2b30a5['includes']('\x0d'))return![];if(_0x2b30a5['includes']('#include')||_0x2b30a5['includes'](_0x321b25(0x2e0))||_0x2b30a5['includes'](_0x321b25(0x1cc)))return![];if(_0x2b30a5[_0x321b25(0x19f)]('def\x20')||_0x2b30a5['includes']('function\x20')||_0x2b30a5['includes'](_0x321b25(0x24d)))return![];if(_0x2b30a5[_0x321b25(0x19f)](_0x321b25(0x285))&&!_0x2b30a5['includes']('echo\x20\x22'))return![];const _0x564ede=_0x2b30a5[_0x321b25(0x214)](/'([^']*)'/);if(_0x564ede&&_0x564ede[0x1]['length']>0x32)return![];if(this[_0x321b25(0x22a)]==='cmd'&&_0x2b30a5[_0x321b25(0x19f)]('>')&&_0x2b30a5[_0x321b25(0x19f)]('/')&&!_0x2b30a5['includes']('\x5c'))return![];if(_0x2b30a5[_0x321b25(0x19f)]('\x20&&\x20')||_0x2b30a5[_0x321b25(0x19f)](_0x321b25(0x1e3))||_0x2b30a5['includes'](';\x20'))return![];if(_0x2b30a5['includes']('$(')||_0x2b30a5[_0x321b25(0x19f)]('`')||_0x2b30a5['includes']('{')||_0x2b30a5['includes']('['))return![];if(_0x4ea865['includes']('for\x20')||_0x4ea865[_0x321b25(0x19f)](_0x321b25(0x1be))||_0x4ea865[_0x321b25(0x19f)](_0x321b25(0x21c)))return![];if(_0x4ea865['includes']('export ')||_0x4ea865[_0x321b25(0x19f)]('source\x20'))return![];if(_0x2b30a5[_0x321b25(0x19f)]('\x20|\x20')||_0x2b30a5['includes'](_0x321b25(0x1bf)))return![];return!![];}async['translateCommandWithAI'](_0x718ee4,_0x59747f){const _0x39ebbf=a0_0x11454d;let _0x122011=_0x59747f[_0x39ebbf(0x2b3)];if(!_0x122011&&_0x59747f['toolsRegistry']&&_0x59747f[_0x39ebbf(0x1b3)]){const _0xfd0c45=_0x59747f['messageProcessor'];_0xfd0c45&&_0xfd0c45[_0x39ebbf(0x2b3)]&&(_0x122011=_0xfd0c45[_0x39ebbf(0x2b3)]);}if(!_0x122011)throw new Error(_0x39ebbf(0x1e6));const _0x3d24db=this[_0x39ebbf(0x21d)](_0x718ee4),_0x517614=_0x39ebbf(0x2db);try{const _0x578f97=await _0x122011[_0x39ebbf(0x1ae)](_0x517614,_0x3d24db,{'agentId':_0x59747f['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x59747f['apiKey'],'customApiKeys':_0x59747f[_0x39ebbf(0x1c7)],'platformProvided':_0x59747f['platformProvided']}),_0x57af86=this[_0x39ebbf(0x226)](_0x578f97['content']);return this['logger']?.['debug'](_0x39ebbf(0x1a5),{'original':_0x718ee4,'translated':_0x57af86,'model':_0x517614,'terminal':this['detectedTerminal']}),_0x57af86;}catch(_0x2a9e35){this['logger']?.['error']('AI\x20command\x20translation\x20failed',{'command':_0x718ee4,'terminal':this[_0x39ebbf(0x22a)],'error':_0x2a9e35['message']});throw _0x2a9e35;}}[a0_0x11454d(0x21d)](_0x44586c){const _0x3e4f9a=a0_0x11454d,_0x435cf7={'cmd':_0x3e4f9a(0x24e),'powershell':_0x3e4f9a(0x27a),'bash':'Bash\x20shell\x20(Linux/Unix/macOS)'},_0x28d522=_0x435cf7[this[_0x3e4f9a(0x22a)]]||this['detectedTerminal'],_0x2ac7d7=this[_0x3e4f9a(0x2b1)](_0x44586c);let _0x36616b=_0x3e4f9a(0x25e)+_0x28d522+':\x0a\x0aORIGINAL\x20COMMAND:\x0a```\x0a'+_0x44586c+'\x0a```\x0a\x0aCOMMAND\x20ANALYSIS:\x0a-\x20Command\x20Type:\x20'+_0x2ac7d7[_0x3e4f9a(0x26b)]+_0x3e4f9a(0x1a0)+_0x2ac7d7['commandCategory']+'\x0a-\x20Target\x20Terminal:\x20'+_0x28d522+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x2ac7d7[_0x3e4f9a(0x1a7)]['join'](',\x20')||'None\x20detected');return _0x2ac7d7['commandType']===_0x3e4f9a(0x281)&&_0x2ac7d7[_0x3e4f9a(0x267)]&&_0x2ac7d7[_0x3e4f9a(0x267)][this[_0x3e4f9a(0x22a)]]&&(_0x36616b+='\x0a-\x20Suggested\x20Alternative:\x20'+_0x2ac7d7['alternatives'][this[_0x3e4f9a(0x22a)]]),_0x36616b+=_0x3e4f9a(0x1b5)+_0x28d522+'\x0a2.\x20Preserve\x20the\x20original\x20intent\x20and\x20functionality\x0a3.\x20Handle\x20file\x20paths,\x20quoting,\x20and\x20syntax\x20correctly\x0a4.\x20If\x20creating\x20files,\x20ensure\x20proper\x20encoding\x20and\x20line\x20endings\x0a5.\x20Address\x20the\x20specific\x20compatibility\x20issues\x20identified\x20above\x0a6.\x20Return\x20ONLY\x20the\x20translated\x20command,\x20nothing\x20else\x0a\x0aTRANSLATED\x20COMMAND:',_0x36616b;}[a0_0x11454d(0x226)](_0x35b8fe){const _0x1a0478=a0_0x11454d;let _0x17e5cb=_0x35b8fe[_0x1a0478(0x1d5)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x17e5cb=_0x17e5cb[_0x1a0478(0x1d5)](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x1e16ed=_0x17e5cb['trim']()['split']('\x0a');return _0x1e16ed[_0x1a0478(0x2b7)]>0x1&&!_0x17e5cb[_0x1a0478(0x19f)]('&&')&&!_0x17e5cb['includes']('||')&&(_0x17e5cb=_0x1e16ed[0x0]['trim']()),_0x17e5cb[_0x1a0478(0x256)]();}['analyzeCommandCompatibility'](_0x5a13de){const _0x4b0121=a0_0x11454d,_0x251c0f=this[_0x4b0121(0x28a)](_0x5a13de),_0x59a0a9=this['isCommandCompatibleWithTerminal'](_0x251c0f,this['detectedTerminal']);return{'compatible':_0x59a0a9,'detectedTerminal':this[_0x4b0121(0x22a)],'commandType':_0x251c0f[_0x4b0121(0x1fc)],'commandCategory':_0x251c0f[_0x4b0121(0x1bb)],'specificIssues':_0x251c0f[_0x4b0121(0x1e7)],'suggestedAction':_0x59a0a9?'execute':'translate','confidence':_0x251c0f['confidence']};}['isCommandCompatible'](_0x1b78e5){const _0x1c7312=a0_0x11454d;return this[_0x1c7312(0x2b1)](_0x1b78e5)[_0x1c7312(0x29e)];}[a0_0x11454d(0x28a)](_0x99a4f5){const _0x27d3dd=a0_0x11454d,_0x483428=_0x99a4f5['toLowerCase']()[_0x27d3dd(0x256)](),_0x1db5da=_0x483428[_0x27d3dd(0x2bc)]('\x20')[0x0],_0xcea4cb=[];let _0x262b5c=0.9;const _0xc15e3d={'ls':{'category':'file-listing','alternatives':{'cmd':_0x27d3dd(0x20f),'powershell':_0x27d3dd(0x253)}},'cat':{'category':'file-viewing','alternatives':{'cmd':_0x27d3dd(0x1fc),'powershell':_0x27d3dd(0x2a8)}},'grep':{'category':_0x27d3dd(0x2aa),'alternatives':{'cmd':_0x27d3dd(0x1b6),'powershell':_0x27d3dd(0x1f1)}},'find':{'category':_0x27d3dd(0x1dd),'alternatives':{'cmd':'dir\x20/s','powershell':_0x27d3dd(0x1c6)}},'head':{'category':_0x27d3dd(0x225),'alternatives':{'cmd':_0x27d3dd(0x1b1),'powershell':_0x27d3dd(0x1ee)}},'tail':{'category':_0x27d3dd(0x225),'alternatives':{'cmd':_0x27d3dd(0x2e1),'powershell':_0x27d3dd(0x244)}},'wc':{'category':'text-analysis','alternatives':{'cmd':'find\x20/c','powershell':_0x27d3dd(0x259)}},'cp':{'category':_0x27d3dd(0x1de),'alternatives':{'cmd':'copy','powershell':'Copy-Item'}},'mv':{'category':'file-move','alternatives':{'cmd':'move','powershell':'Move-Item'}},'rm':{'category':_0x27d3dd(0x24b),'alternatives':{'cmd':_0x27d3dd(0x269),'powershell':'Remove-Item'}},'mkdir':{'category':'directory-create','alternatives':{'cmd':_0x27d3dd(0x2cb),'powershell':_0x27d3dd(0x21a)}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':'rmdir','powershell':_0x27d3dd(0x246)}},'touch':{'category':_0x27d3dd(0x25a),'alternatives':{'cmd':_0x27d3dd(0x258),'powershell':'New-Item\x20-Type\x20File'}},'chmod':{'category':'permissions','alternatives':{'cmd':_0x27d3dd(0x1b9),'powershell':_0x27d3dd(0x251)}},'chown':{'category':'ownership','alternatives':{'cmd':_0x27d3dd(0x1ed),'powershell':_0x27d3dd(0x251)}},'ps':{'category':_0x27d3dd(0x293),'alternatives':{'cmd':_0x27d3dd(0x29c),'powershell':'Get-Process'}},'kill':{'category':_0x27d3dd(0x22e),'alternatives':{'cmd':_0x27d3dd(0x2d6),'powershell':'Stop-Process'}},'killall':{'category':'process-kill','alternatives':{'cmd':'taskkill\x20/f\x20/im','powershell':'Get-Process\x20|\x20Stop-Process'}},'top':{'category':_0x27d3dd(0x1c0),'alternatives':{'cmd':'tasklist','powershell':_0x27d3dd(0x25f)}},'wget':{'category':'download','alternatives':{'cmd':'curl','powershell':'Invoke-WebRequest'}},'curl':{'category':'http-client','alternatives':{'cmd':_0x27d3dd(0x19c),'powershell':_0x27d3dd(0x272)}},'ping':{'category':'network-test','alternatives':{'cmd':'ping','powershell':_0x27d3dd(0x1a8)}},'awk':{'category':_0x27d3dd(0x230),'alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':'text-edit','alternatives':{'cmd':_0x27d3dd(0x254),'powershell':_0x27d3dd(0x265)}},'sort':{'category':'text-sort','alternatives':{'cmd':'sort','powershell':'Sort-Object'}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':_0x27d3dd(0x1ca),'powershell':_0x27d3dd(0x2d7)}},'pwd':{'category':_0x27d3dd(0x2e3),'alternatives':{'cmd':'cd','powershell':_0x27d3dd(0x1d2)}},'whoami':{'category':_0x27d3dd(0x1fb),'alternatives':{'cmd':_0x27d3dd(0x280),'powershell':'whoami'}},'env':{'category':'environment','alternatives':{'cmd':_0x27d3dd(0x27b),'powershell':'Get-ChildItem\x20Env:'}},'export':{'category':'environment','alternatives':{'cmd':'set','powershell':_0x27d3dd(0x1a4)}},'source':{'category':'script-execute','alternatives':{'cmd':_0x27d3dd(0x284),'powershell':'.\x20'}},'tar':{'category':'archive','alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':'archive','alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0x27d3dd(0x249)}},'unzip':{'category':_0x27d3dd(0x278),'alternatives':{'cmd':_0x27d3dd(0x1f6),'powershell':'Expand-Archive'}},'df':{'category':_0x27d3dd(0x208),'alternatives':{'cmd':'fsutil\x20volume\x20diskfree','powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':'disk-usage','alternatives':{'cmd':'dir\x20/s','powershell':'Get-ChildItem\x20-Recurse\x20|\x20Measure-Object'}},'free':{'category':'memory-info','alternatives':{'cmd':_0x27d3dd(0x2d9),'powershell':_0x27d3dd(0x23d)}},'uname':{'category':'system-info','alternatives':{'cmd':_0x27d3dd(0x2d9),'powershell':_0x27d3dd(0x291)}}},_0x7609d8={'dir':{'category':_0x27d3dd(0x1ec),'alternatives':{'unix':'ls','powershell':_0x27d3dd(0x253)}},'type':{'category':_0x27d3dd(0x225),'alternatives':{'unix':_0x27d3dd(0x1c2),'powershell':'Get-Content'}},'copy':{'category':_0x27d3dd(0x1de),'alternatives':{'unix':'cp','powershell':'Copy-Item'}},'move':{'category':'file-move','alternatives':{'unix':'mv','powershell':_0x27d3dd(0x2e2)}},'del':{'category':_0x27d3dd(0x24b),'alternatives':{'unix':'rm','powershell':_0x27d3dd(0x246)}},'tasklist':{'category':_0x27d3dd(0x293),'alternatives':{'unix':'ps','powershell':'Get-Process'}},'taskkill':{'category':'process-kill','alternatives':{'unix':'kill','powershell':'Stop-Process'}},'findstr':{'category':'text-search','alternatives':{'unix':_0x27d3dd(0x245),'powershell':'Select-String'}}},_0x4066aa={'get-childitem':{'category':_0x27d3dd(0x1ec),'alternatives':{'unix':'ls','cmd':'dir'}},'get-content':{'category':'file-viewing','alternatives':{'unix':_0x27d3dd(0x1c2),'cmd':'type'}},'copy-item':{'category':'file-copy','alternatives':{'unix':'cp','cmd':'copy'}},'move-item':{'category':'file-move','alternatives':{'unix':'mv','cmd':'move'}},'remove-item':{'category':_0x27d3dd(0x24b),'alternatives':{'unix':'rm','cmd':_0x27d3dd(0x269)}},'get-process':{'category':_0x27d3dd(0x293),'alternatives':{'unix':'ps','cmd':'tasklist'}},'stop-process':{'category':_0x27d3dd(0x22e),'alternatives':{'unix':_0x27d3dd(0x1ad),'cmd':_0x27d3dd(0x2d6)}}};let _0x565329='unknown',_0x3851c7='unknown',_0x41b64b={};if(_0xc15e3d[_0x1db5da])_0x565329=_0x27d3dd(0x281),_0x3851c7=_0xc15e3d[_0x1db5da]['category'],_0x41b64b=_0xc15e3d[_0x1db5da][_0x27d3dd(0x267)];else{if(_0x7609d8[_0x1db5da])_0x565329='windows-cmd',_0x3851c7=_0x7609d8[_0x1db5da]['category'],_0x41b64b=_0x7609d8[_0x1db5da][_0x27d3dd(0x267)];else{if(_0x4066aa[_0x1db5da])_0x565329=_0x27d3dd(0x1ac),_0x3851c7=_0x4066aa[_0x1db5da][_0x27d3dd(0x1bb)],_0x41b64b=_0x4066aa[_0x1db5da][_0x27d3dd(0x267)];else{const _0x3077e4=[_0x27d3dd(0x217),'cd','exit',_0x27d3dd(0x282)];_0x3077e4['includes'](_0x1db5da)?(_0x565329=_0x27d3dd(0x257),_0x3851c7=_0x27d3dd(0x1f8)):(_0x565329=_0x27d3dd(0x211),_0x262b5c=0.3);}}}return _0x99a4f5['includes']('\x27')&&!_0x99a4f5[_0x27d3dd(0x19f)]('\x22')&&_0xcea4cb['push']('single-quotes-problematic'),_0x99a4f5[_0x27d3dd(0x19f)]('/')&&!_0x99a4f5[_0x27d3dd(0x19f)]('\x5c')&&!_0x99a4f5['includes']('http')&&_0x99a4f5[_0x27d3dd(0x19f)]('>')&&_0xcea4cb[_0x27d3dd(0x262)]('unix-style-paths'),(_0x99a4f5[_0x27d3dd(0x19f)]('\x5cn')||_0x99a4f5['includes']('\x5ct'))&&_0xcea4cb[_0x27d3dd(0x262)](_0x27d3dd(0x213)),(_0x99a4f5['includes']('\x20&&\x20')||_0x99a4f5[_0x27d3dd(0x19f)](_0x27d3dd(0x1e3))||_0x99a4f5[_0x27d3dd(0x19f)](';'))&&_0xcea4cb[_0x27d3dd(0x262)](_0x27d3dd(0x1c1)),{'type':_0x565329,'category':_0x3851c7,'alternatives':_0x41b64b,'issues':_0xcea4cb,'confidence':_0x262b5c,'firstWord':_0x1db5da,'fullCommand':_0x99a4f5};}['isCommandCompatibleWithTerminal'](_0x251351,_0x2aec85){const _0x34e099=a0_0x11454d;switch(_0x2aec85){case'cmd':if(_0x251351[_0x34e099(0x1fc)]===_0x34e099(0x281))return![];if(_0x251351[_0x34e099(0x1e7)]['includes'](_0x34e099(0x268)))return![];if(_0x251351['issues'][_0x34e099(0x19f)](_0x34e099(0x1bd)))return![];return _0x251351[_0x34e099(0x1fc)]==='windows-cmd'||_0x251351['type']===_0x34e099(0x257);case _0x34e099(0x1ac):if(_0x251351[_0x34e099(0x1fc)]===_0x34e099(0x281)&&!_0x251351[_0x34e099(0x267)][_0x34e099(0x1ac)])return![];return!![];case'bash':if(_0x251351[_0x34e099(0x1fc)]===_0x34e099(0x1aa))return![];return _0x251351[_0x34e099(0x1fc)]==='unix'||_0x251351['type']===_0x34e099(0x257);default:return![];}}['translateToWindowsCmd'](_0x481493){const _0x2e2bc9=a0_0x11454d;let _0x5c81c8=_0x481493;const _0x3828c0=new Map([[/^ls\s*$/,_0x2e2bc9(0x20f)],[/^ls\s+-la?$/,'dir'],[/^ls\s+-l$/,_0x2e2bc9(0x20f)],[/^ls\s+-a$/,_0x2e2bc9(0x1ef)],[/^cat\s+(.+)$/,'type\x20$1'],[/^cp\s+(.+)\s+(.+)$/,_0x2e2bc9(0x1d8)],[/^mv\s+(.+)\s+(.+)$/,_0x2e2bc9(0x1c5)],[/^rm\s+(.+)$/,_0x2e2bc9(0x2c3)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,'rmdir\x20$1'],[/^ps\s*$/,'tasklist'],[/^kill\s+(.+)$/,_0x2e2bc9(0x1cb)],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,'echo\x20%USERNAME%'],[/^ping\s+(.+)$/,_0x2e2bc9(0x2d2)],[/^wget\s+(.+)$/,'curl\x20-O\x20$1'],[/^curl\s+(.+)$/,'curl\x20$1']]);for(const [_0x504471,_0x405877]of _0x3828c0){if(_0x504471[_0x2e2bc9(0x2d5)](_0x5c81c8)){_0x5c81c8=_0x5c81c8[_0x2e2bc9(0x1d5)](_0x504471,_0x405877);break;}}_0x5c81c8=_0x5c81c8[_0x2e2bc9(0x1d5)](/echo\s+'([^']+)'\s*>/g,_0x2e2bc9(0x235)),_0x5c81c8=_0x5c81c8[_0x2e2bc9(0x1d5)](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x5c81c8[_0x2e2bc9(0x19f)]('echo\x20\x27')&&_0x5c81c8[_0x2e2bc9(0x19f)]('\x5cn')){const _0x346be8=_0x5c81c8[_0x2e2bc9(0x214)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x346be8){const _0x48f3d3=_0x346be8[0x1][_0x2e2bc9(0x1d5)](/\\n/g,'\x0a'),_0x1aaabe=_0x346be8[0x2],_0x1d38a3=_0x48f3d3['split']('\x0a');_0x5c81c8='('+_0x1d38a3[_0x2e2bc9(0x20a)](_0x1a1c1f=>_0x2e2bc9(0x2dc)+_0x1a1c1f)['join'](_0x2e2bc9(0x279))+_0x2e2bc9(0x1a2)+_0x1aaabe;}}return this[_0x2e2bc9(0x260)]?.['info'](_0x2e2bc9(0x23e),{'original':_0x481493,'translated':_0x5c81c8}),_0x5c81c8;}['translateToPowerShell'](_0xc6184b){const _0x3b2f99=a0_0x11454d;let _0x44befd=_0xc6184b;const _0x1f047f=new Map([[/^ls\s*$/,'Get-ChildItem'],[/^ls\s+-la?$/,_0x3b2f99(0x243)],[/^cat\s+(.+)$/,_0x3b2f99(0x1e8)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x3b2f99(0x2bd)],[/^rm\s+(.+)$/,'Remove-Item\x20$1'],[/^pwd\s*$/,_0x3b2f99(0x1d2)],[/^ps\s*$/,'Get-Process']]);for(const [_0x12bd24,_0x27d54c]of _0x1f047f){if(_0x12bd24[_0x3b2f99(0x2d5)](_0x44befd)){_0x44befd=_0x44befd[_0x3b2f99(0x1d5)](_0x12bd24,_0x27d54c);break;}}return this['logger']?.[_0x3b2f99(0x1c8)](_0x3b2f99(0x275),{'original':_0xc6184b,'translated':_0x44befd}),_0x44befd;}[a0_0x11454d(0x295)](_0x5c8a36){const _0x4dbfca=a0_0x11454d;let _0x46c01e=_0x5c8a36;const _0x230305=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x4dbfca(0x228)],[/^type\s+(.+)$/,_0x4dbfca(0x26c)],[/^copy\s+(.+)\s+(.+)$/,_0x4dbfca(0x1b2)],[/^move\s+(.+)\s+(.+)$/,_0x4dbfca(0x1d1)],[/^del\s+(.+)$/,'rm\x20$1'],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,_0x4dbfca(0x2b5)]]);for(const [_0x2ead88,_0x3bc688]of _0x230305){if(_0x2ead88[_0x4dbfca(0x2d5)](_0x46c01e)){_0x46c01e=_0x46c01e['replace'](_0x2ead88,_0x3bc688);break;}}return _0x46c01e;}async['cleanup'](_0x36da19){}async[a0_0x11454d(0x21b)](_0x10766a,_0x453436,_0x53c075={}){const _0x3de339=a0_0x11454d,{agentId:_0xf9c9d5,context:_0x2a6ef5}=_0x53c075;if(!_0xf9c9d5)throw new Error(_0x3de339(0x298));const _0x538a2c=this[_0x3de339(0x274)](_0xf9c9d5),_0xf56689=_0x538a2c['filter'](_0x1008a9=>_0x1008a9['state']==='running'||_0x1008a9['state']===_0x3de339(0x23a));if(_0xf56689['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error('Maximum\x20background\x20commands\x20per\x20agent\x20exceeded\x20('+this[_0x3de339(0x2a3)]+')');const _0x1291a0=Array['from'](this[_0x3de339(0x2b8)]['values']()),_0x4e4fc8=_0x1291a0[_0x3de339(0x24a)](_0x54e8ed=>_0x54e8ed[_0x3de339(0x1cf)]===_0x3de339(0x283)||_0x54e8ed['state']===_0x3de339(0x23a));if(_0x4e4fc8['length']>=this[_0x3de339(0x2ce)])throw new Error(_0x3de339(0x2a5)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0x2b1781=_0xf9c9d5+'-cmd-'+Date[_0x3de339(0x242)]()+'-'+ ++this['commandIdCounter'],_0x329ff4=_0x10766a;let _0x4a5d9b;try{_0x4a5d9b=await this[_0x3de339(0x19b)](_0x10766a,{'agentId':_0xf9c9d5,'toolsRegistry':_0x2a6ef5?.['toolsRegistry'],'messageProcessor':_0x2a6ef5?.['messageProcessor'],'aiService':_0x2a6ef5?.[_0x3de339(0x2b3)],'apiKey':_0x2a6ef5?.['apiKey'],'customApiKeys':_0x2a6ef5?.['customApiKeys'],'platformProvided':_0x2a6ef5?.[_0x3de339(0x292)]});}catch(_0xa0856c){this['logger']?.['warn'](_0x3de339(0x28c),{'originalCommand':_0x329ff4,'error':_0xa0856c[_0x3de339(0x297)]}),_0x4a5d9b=_0x10766a;}this['logger']?.[_0x3de339(0x1c8)]('Starting\x20background\x20command:\x20'+_0x4a5d9b,{'commandId':_0x2b1781,'agentId':_0xf9c9d5,'originalCommand':_0x329ff4,'workingDirectory':_0x453436});let _0x3abc41;if(this['detectedTerminal']===_0x3de339(0x26a)||this[_0x3de339(0x22a)]==='powershell'){const _0x192869=this['detectedTerminal']===_0x3de339(0x1ac)?_0x3de339(0x1ac):'cmd',_0xe549a7=this[_0x3de339(0x22a)]==='powershell'?[_0x3de339(0x1fa),_0x4a5d9b]:['/c',_0x4a5d9b];_0x3abc41=spawn(_0x192869,_0xe549a7,{'cwd':_0x453436,'env':{...process['env']},'windowsHide':!![],'stdio':[_0x3de339(0x27f),_0x3de339(0x27f),_0x3de339(0x27f)]});}else _0x3abc41=spawn('sh',['-c',_0x4a5d9b],{'cwd':_0x453436,'env':{...process[_0x3de339(0x2a6)]},'stdio':[_0x3de339(0x27f),_0x3de339(0x27f),'pipe']});const _0x43a03a={'commandId':_0x2b1781,'agentId':_0xf9c9d5,'pid':_0x3abc41['pid'],'command':_0x329ff4,'translatedCommand':_0x4a5d9b,'workingDirectory':_0x453436,'startTime':new Date()[_0x3de339(0x231)](),'state':'running','exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date[_0x3de339(0x242)](),'promptDetected':null,'process':_0x3abc41};return this[_0x3de339(0x2b8)]['set'](_0x2b1781,_0x43a03a),_0x3abc41['stdout']['on']('data',_0xad0985=>{const _0x4c7eb0=_0x3de339,_0x32ff18=_0xad0985[_0x4c7eb0(0x28b)]();_0x43a03a['stdoutBuffer']+=_0x32ff18,_0x43a03a['lastOutputTime']=Date['now']();if(!_0x43a03a[_0x4c7eb0(0x2be)]){const _0x5a65a4=this[_0x4c7eb0(0x29b)]['detectPrompt'](_0x43a03a[_0x4c7eb0(0x210)],_0x4c7eb0(0x1b7));_0x5a65a4&&(_0x43a03a[_0x4c7eb0(0x2be)]=_0x5a65a4,_0x43a03a[_0x4c7eb0(0x1cf)]=_0x4c7eb0(0x23a),this['logger']?.[_0x4c7eb0(0x1c8)](_0x4c7eb0(0x1da),{'commandId':_0x2b1781,'agentId':_0xf9c9d5,'type':_0x5a65a4[_0x4c7eb0(0x1fc)],'matchedText':_0x5a65a4[_0x4c7eb0(0x215)]}));}}),_0x3abc41[_0x3de339(0x2b0)]['on']('data',_0x2251f6=>{const _0x4b8cc9=_0x3de339,_0x2d023f=_0x2251f6[_0x4b8cc9(0x28b)]();_0x43a03a['stderrBuffer']+=_0x2d023f,_0x43a03a[_0x4b8cc9(0x20c)]=Date['now']();if(!_0x43a03a['promptDetected']){const _0x4be258=this[_0x4b8cc9(0x29b)]['detectPrompt'](_0x43a03a['stderrBuffer'],'stderr');_0x4be258&&(_0x43a03a[_0x4b8cc9(0x2be)]=_0x4be258,_0x43a03a['state']=_0x4b8cc9(0x23a),this['logger']?.['info']('Prompt\x20detected\x20in\x20background\x20command\x20stderr',{'commandId':_0x2b1781,'agentId':_0xf9c9d5,'type':_0x4be258['type'],'matchedText':_0x4be258['matchedText']}));}}),_0x3abc41['on']('exit',(_0x346243,_0x49db92)=>{const _0x5a4f87=_0x3de339;_0x43a03a['exitCode']=_0x346243,_0x43a03a[_0x5a4f87(0x1cf)]=_0x346243===0x0?_0x5a4f87(0x1e4):_0x5a4f87(0x2d1),_0x43a03a[_0x5a4f87(0x2bb)]=new Date()[_0x5a4f87(0x231)](),this['logger']?.['info']('Background\x20command\x20exited',{'commandId':_0x2b1781,'agentId':_0xf9c9d5,'exitCode':_0x346243,'signal':_0x49db92,'state':_0x43a03a[_0x5a4f87(0x1cf)]});}),_0x3abc41['on'](_0x3de339(0x2d0),_0x369bd0=>{const _0x270b34=_0x3de339;_0x43a03a['state']=_0x270b34(0x2d1),_0x43a03a[_0x270b34(0x2d0)]=_0x369bd0['message'],_0x43a03a[_0x270b34(0x2bb)]=new Date()[_0x270b34(0x231)](),this['logger']?.[_0x270b34(0x2d0)](_0x270b34(0x286),{'commandId':_0x2b1781,'agentId':_0xf9c9d5,'error':_0x369bd0[_0x270b34(0x297)]});}),{'success':!![],'commandId':_0x2b1781,'pid':_0x3abc41[_0x3de339(0x2d4)],'command':_0x329ff4,'translatedCommand':_0x4a5d9b,'workingDirectory':_0x453436,'message':'Background\x20command\x20started\x20with\x20ID:\x20'+_0x2b1781};}[a0_0x11454d(0x1d0)](_0x758688,_0x94138c,_0x7ae249){const _0x477826=a0_0x11454d,_0x1fe29f=this['validateCommandOwnership'](_0x758688,_0x7ae249);if(_0x1fe29f[_0x477826(0x1cf)]===_0x477826(0x1e4)||_0x1fe29f[_0x477826(0x1cf)]==='failed')throw new Error(_0x477826(0x19e)+_0x1fe29f[_0x477826(0x1cf)]+'\x20command');if(!_0x1fe29f[_0x477826(0x22b)]||_0x1fe29f['process']['killed'])throw new Error('Command\x20process\x20is\x20not\x20running');const _0x3e097e=_0x94138c['endsWith']('\x0a')?_0x94138c:_0x94138c+'\x0a';return _0x1fe29f['process']['stdin'][_0x477826(0x1cd)](_0x3e097e),this['logger']?.['info']('Input\x20sent\x20to\x20background\x20command',{'commandId':_0x758688,'agentId':_0x7ae249,'inputLength':_0x94138c[_0x477826(0x2b7)]}),_0x1fe29f[_0x477826(0x1cf)]==='waiting_for_input'&&(_0x1fe29f['state']='running',_0x1fe29f['promptDetected']=null),{'success':!![],'commandId':_0x758688,'message':_0x477826(0x28e)};}[a0_0x11454d(0x2d3)](_0x11970d,_0x40ca8c){const _0x487f57=a0_0x11454d,_0x39ac96=this[_0x487f57(0x219)](_0x11970d,_0x40ca8c),_0x6b7fe1=Date[_0x487f57(0x242)]()-_0x39ac96['lastOutputTime'];return{'success':!![],'commandId':_0x11970d,'pid':_0x39ac96['pid'],'command':_0x39ac96['command'],'state':_0x39ac96[_0x487f57(0x1cf)],'exitCode':_0x39ac96[_0x487f57(0x2c7)],'startTime':_0x39ac96['startTime'],'endTime':_0x39ac96[_0x487f57(0x2bb)],'workingDirectory':_0x39ac96[_0x487f57(0x263)],'stdout':_0x39ac96['stdoutBuffer'],'stderr':_0x39ac96['stderrBuffer'],'stdoutLength':_0x39ac96['stdoutBuffer'][_0x487f57(0x2b7)],'stderrLength':_0x39ac96[_0x487f57(0x233)][_0x487f57(0x2b7)],'lastOutputTime':_0x39ac96['lastOutputTime'],'timeSinceLastOutput':_0x6b7fe1,'promptDetected':!!_0x39ac96['promptDetected'],'promptInfo':_0x39ac96['promptDetected']||undefined};}[a0_0x11454d(0x2a4)](_0x37d6d9,_0x517a26){const _0x364625=a0_0x11454d,_0x41acbf=this[_0x364625(0x219)](_0x37d6d9,_0x517a26);if(_0x41acbf[_0x364625(0x1cf)]==='completed'||_0x41acbf['state']===_0x364625(0x2d1))return{'success':!![],'commandId':_0x37d6d9,'message':_0x364625(0x22d),'state':_0x41acbf[_0x364625(0x1cf)]};if(_0x41acbf['process']&&!_0x41acbf['process'][_0x364625(0x288)])return _0x41acbf['process'][_0x364625(0x1ad)](_0x364625(0x29f)),setTimeout(()=>{const _0x4de4be=_0x364625;_0x41acbf['process']&&!_0x41acbf['process'][_0x4de4be(0x288)]&&_0x41acbf[_0x4de4be(0x22b)][_0x4de4be(0x1ad)](_0x4de4be(0x238));},0x1388),this['logger']?.['info']('Background\x20command\x20killed',{'commandId':_0x37d6d9,'agentId':_0x517a26}),{'success':!![],'commandId':_0x37d6d9,'message':'Command\x20killed\x20successfully'};return{'success':![],'commandId':_0x37d6d9,'error':'Command\x20process\x20not\x20found\x20or\x20already\x20killed'};}['listAgentCommands'](_0x163e6e){const _0x49df38=a0_0x11454d,_0x323c45=this[_0x49df38(0x274)](_0x163e6e);return _0x323c45['map'](_0x3757ff=>({'commandId':_0x3757ff[_0x49df38(0x2d8)],'command':_0x3757ff[_0x49df38(0x1ba)],'state':_0x3757ff[_0x49df38(0x1cf)],'pid':_0x3757ff[_0x49df38(0x2d4)],'exitCode':_0x3757ff['exitCode'],'startTime':_0x3757ff[_0x49df38(0x264)],'endTime':_0x3757ff['endTime'],'promptDetected':!!_0x3757ff['promptDetected'],'timeSinceLastOutput':Date[_0x49df38(0x242)]()-_0x3757ff[_0x49df38(0x20c)]}));}[a0_0x11454d(0x274)](_0x3629ed){const _0x28653c=a0_0x11454d;return Array[_0x28653c(0x2df)](this[_0x28653c(0x2b8)][_0x28653c(0x28d)]())[_0x28653c(0x24a)](_0x58badb=>_0x58badb[_0x28653c(0x1b3)]===_0x3629ed);}[a0_0x11454d(0x219)](_0x1058a6,_0x33df9c){const _0x171115=a0_0x11454d,_0x50473e=this[_0x171115(0x2b8)]['get'](_0x1058a6);if(!_0x50473e)throw new Error('Command\x20not\x20found:\x20'+_0x1058a6);if(_0x50473e['agentId']!==_0x33df9c)throw new Error(_0x171115(0x229)+_0x50473e['agentId']);return _0x50473e;}async['cleanupAgent'](_0x3b33fd){const _0x4d0ab3=a0_0x11454d,_0x3eb38b=this['getAgentCommands'](_0x3b33fd);let _0x184afd=0x0,_0x456bab=0x0;for(const _0x316e13 of _0x3eb38b){_0x316e13[_0x4d0ab3(0x22b)]&&!_0x316e13['process']['killed']&&(_0x316e13['process']['kill']('SIGTERM'),_0x184afd++,setTimeout(()=>{const _0x630c71=_0x4d0ab3;_0x316e13[_0x630c71(0x22b)]&&!_0x316e13['process']['killed']&&_0x316e13[_0x630c71(0x22b)]['kill']('SIGKILL');},0xbb8)),this[_0x4d0ab3(0x2b8)]['delete'](_0x316e13['commandId']),_0x456bab++;}return this[_0x4d0ab3(0x260)]?.['info']('Agent\x20commands\x20cleaned\x20up',{'agentId':_0x3b33fd,'killedCount':_0x184afd,'removedCount':_0x456bab}),{'success':!![],'agentId':_0x3b33fd,'killedCount':_0x184afd,'removedCount':_0x456bab,'message':_0x4d0ab3(0x2c6)+_0x456bab+'\x20commands\x20for\x20agent\x20'+_0x3b33fd};}[a0_0x11454d(0x2ab)](){const _0x4abd5b=a0_0x11454d,_0x4c7135=Date['now']();let _0x162997=0x0;for(const [_0x5b38d9,_0x20fdeb]of this['commandTracker'][_0x4abd5b(0x1d6)]()){if(_0x20fdeb['state']!=='completed'&&_0x20fdeb['state']!==_0x4abd5b(0x2d1))continue;const _0x48bc9c=new Date(_0x20fdeb['startTime'])[_0x4abd5b(0x2b4)](),_0x1805e6=(_0x4c7135-_0x48bc9c)/0x3e8/0x3c;_0x1805e6>this['MAX_COMMAND_AGE_MINUTES']&&(this['commandTracker']['delete'](_0x5b38d9),_0x162997++);}return _0x162997>0x0&&this['logger']?.['info']('Stale\x20commands\x20cleaned\x20up',{'removedCount':_0x162997,'ageThresholdMinutes':this[_0x4abd5b(0x1d9)]}),{'success':!![],'removedCount':_0x162997,'message':'Cleaned\x20up\x20'+_0x162997+'\x20stale\x20commands'};}}export default TerminalTool;
@@ -1 +1 @@
1
- const a0_0x27cf32=a0_0xb06b;(function(_0x4cc636,_0x2c2471){const _0x154f34=a0_0xb06b,_0x182164=_0x4cc636();while(!![]){try{const _0x129416=-parseInt(_0x154f34(0x217))/0x1*(parseInt(_0x154f34(0x25b))/0x2)+-parseInt(_0x154f34(0x21d))/0x3*(-parseInt(_0x154f34(0x247))/0x4)+-parseInt(_0x154f34(0x200))/0x5+-parseInt(_0x154f34(0x24d))/0x6*(parseInt(_0x154f34(0x26a))/0x7)+-parseInt(_0x154f34(0x250))/0x8+-parseInt(_0x154f34(0x222))/0x9*(-parseInt(_0x154f34(0x26d))/0xa)+-parseInt(_0x154f34(0x204))/0xb*(-parseInt(_0x154f34(0x253))/0xc);if(_0x129416===_0x2c2471)break;else _0x182164['push'](_0x182164['shift']());}catch(_0x205921){_0x182164['push'](_0x182164['shift']());}}}(a0_0x3ba1,0x787d0));import{BaseTool}from'./baseTool.js';function a0_0x3ba1(){const _0x462e3a=['zw5ZDxjLqNjVD3nLCG','uhvWCgv0zwvYigjYB3DZzxiGAw5PDgLHBgL6zwqGC3vJy2vZC2z1BgX5','DgfIswrSzvrPBwvVDxq','ugvYzM9YBwLUzYb3zwiGC2vHCMnO','i2jFCMvZDwX0CW','CgfYC2vqyxjHBwv0zxjZ','ChvZAa','C2nYB2XS','C2v0vMLLD3bVCNq','AgvHzgXLC3m','DhjPBq','CgfYC2vby3rPB25Z','zxH0CMfJDc1SAw5RCW','BgfZDefJDgL2Axr5','zgf0ytPPBwfNzs9WBMC7yMfZzty0la','zxzLCNK','Aw5UzxjuzxH0','yMfZzty0','CxvLCNKGAxmGCMvXDwLYzwqGzM9YihnLyxjJAcbVCgvYyxrPB24','CMvZDwX0C1nLBgvJDg9Y','mJmYmJK2nxDvBKfywG','Aw5WDxrBBMfTzt0ICsjD','ywn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLzcbMB3iGAw50zxjHy3rPDMuGB3bLCMf0Aw9U','jYbHBhjLywr5igv4Axn0CYbMB3iGywDLBNqG','mtf3BKrzs3O','i3nLyxjJAcaUzYbHlcaJC2vHCMnOigfBAhjLzL0','BM93','ywDLBNruywjZ','C2v0','DgLTzw91Da','Aw5WDxrBDhLWzt0IC3vIBwL0iL0Sigj1DhrVBLT0ExbLpsjZDwjTAxqIxq','DhLWzq','ls1KAxnHyMXLlwrLDI1ZAg0TDxnHz2u','lNjLC3vSDf9FysWGyvTKyxrHlxrLC3rPzd0ICMvZDwX0lxrPDgXLlweIxq','C2nYzwvUC2HVDc0','z29Vz2XL','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq6ia','C2L6zq','ywn0Aw9UCW','zMLUza','BgvUz3rO','D2fYBG','C3DPDgnOvgfI','ndKXmu5hsujorG','CxvLCNLtzwXLy3rVCKfSBa','zgLYzwn0B3j5qwnJzxnZ','C2vSzwn0B3i','DMfSDwu','BMfTzq','m2XKrNHTza','zNjVBq','CgfNzq','vw5RBM93BIbZzwfYy2GGzw5NAw5LoIa','zw5ZDxjLvgvTCerPCG','oxztrwT3Dq','yxbPs2v5','ywDLBNrjza','z290BW','yNv0Dg9U','ls1KAxnHyMXLlxnLDhvPzc1Zyw5KyM94','zw50CMLLCW','i3nLyxjJAa','zhvJA2r1y2TNBW','zxH0CMfJDenVBNrLBNq','C2vHCMnO','vevnuf9esvi','z2v0lxnVDxjJzq','AxndB25Uzwn0zwq','z2v0lwnVBNnVBgu','y2XVC2u','C2vHCMnOrw5NAw5LCW','C3DPDgnOlxrHyG','zMv0y2G','z2v0','jYbUB3qGzM91BMqGzM9YigfNzw50ia','y29UC29Szu1LC3nHz2vZ','C2nYzwvUC2HVDa','q2XLyw5PBMCGDxaGywDLBNqGDgfICW','ig11C3qGyMuGzxHLy3v0zwqGD2L0AgLUigeGDgfIignVBNrLEhqGkhvZzsbVCgvUlxrHyIb3AxrOig5LC3rLzefJDgLVBNmP','lNbUzW','Cgf0Aa','ls1UBY1Zyw5KyM94','CxvLCNLtzwXLy3rVCG','yM9KEq','D2fPDc1MB3i','D2fPDezVCLnLBgvJDg9Y','u2vHCMnOihf1zxj5igLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','DxjS','zMLSDgvY','Dgv4DenVBNrLBNq','ywLtzxj2AwnL','mtaZnte1mMjLAhnrsq','zMLSzq','zxHLy3v0zvrHyKfJDgLVBG','D29YA2LUz0rPCMvJDg9YEq','BMf2AwDHDgu','y3vZDg9TqxbPs2v5CW','mZaZotK2nLLhCxvQqW','Dg1WzgLY','AxnbCNjHEq','nduXmti5nKnmC2zJtW','y2XVC2uTDgfI','i2XPBMTZlcbBzgf0ys10zxn0Awq9iM1HAw5SAw5LiL0','mtuZnZa2otj1uxjlEu0','zxHLyW','Dgv4Da','DgL0Bgu','rMfPBgvKihrVignSB3nLigLKBguGDgfI','vgfIicC','rMfPBgvKihrVignSzwfUihrLBxaGzgLYzwn0B3j5','yNjVD3nLCKLUAxrPywXPEMLUzW','mJHUBfvlEg4','Bwf4uMvZDwX0CW','ChjLC3m','lIbbDMfPBgfIBgu6ia','kfTEpL0Qkt4Ow148xsOPpc8','BgLUA3m','jYbJBg9Zzwq','Aw5MBW','zw5NAw5L','t3bLBMLUzYb0ywi','Bgf1BMnO','q0Xfqu5vuf9jtLrfuLzbta','q2XVC2vKia','rMfPBgvKihrVihbHCNnLihDLyIb0B29SihbHCMfTzxrLCNm6ia','y29UC29Szq','n2rUEvPOtG','rMfPBgvKihrVignYzwf0zsb0zw1WigrPCMvJDg9YEq','Ag92zxi','ntu3nZyXmevmt0fesa','y2XLyw51CfrPBwvY','A2v5','BMv3','BwfW','Aw50zxjHy3rPDMu','y29UDgvUDa','q2XVC2LUzYb0ywi','C3rYAw5N','qw5HBhL6Aw5NihnJCMvLBNnOB3qGD2L0Acbbsq','tM8GDgfICYb0BYbJBgvHBIb1Ca','y2XVC2vZDa','AhjLzG','tM8Gywn0AxzLihrHyNm','ls1KAxnHyMXLlwfJy2vSzxjHDgvKltjKlwnHBNzHCW','BMv0D29YA2LKBguY','ls1KAxnHyMXLlwjSAw5RlwzLyxr1CMvZpuf1Dg9TyxrPB25dB250CM9SBgvK','y2XLyw51Ca','D2vI','zgvSzxrL','zxjYB3i','BMv3ugfNzq','Bg9Nz2vY','BgLZDc10ywjZ','AxnbC3LUyW','yNjVD3nLCG','qwn0Aw9UigzHAwXLza','u2vHCMnOignVBxbSzxrLza','yw5HBhL6zs1Zy3jLzw5ZAg90','BwvZC2fNzq','rMfPBgvKihrVigLUAxrPywXPEMuGyNjVD3nLCG','revgqvvmvf9usu1ft1vu','B3bLBLrHyG','y2XLyw51CeLKBgvuywjZ','zxzHBhvHDgu','q2XVC2vKigLKBguGDgfI','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','AgfZ','y2XPy2S','lMjFywXNBYbH','u3DPDgnOzwqGDg8GDgfIicC','B3bLCMf0Aw9U','zxH0CMfJDc10zxH0','BgLZDfrHyNm','yw5HBhL6zvnJCMvLBNnOB3q','zM9YBwf0CW','CgfYC2vozxn0zwrby3rPB25Z','AM9PBG','Bw9KzwW','CxvLCNK'];a0_0x3ba1=function(){return _0x462e3a;};return a0_0x3ba1();}import a0_0x1d049e from'../utilities/tagParser.js';import a0_0x49c7c7 from'puppeteer';import a0_0x32665c from'path';import a0_0x10b60f from'fs/promises';function a0_0xb06b(_0x2ca2d5,_0x5ed27f){_0x2ca2d5=_0x2ca2d5-0x1cd;const _0x3ba1f8=a0_0x3ba1();let _0xb06bd6=_0x3ba1f8[_0x2ca2d5];if(a0_0xb06b['URiObG']===undefined){var _0x4ecb14=function(_0x40e41a){const _0x36c121='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1d049e='',_0x49c7c7='';for(let _0x32665c=0x0,_0x10b60f,_0x5a0150,_0x57b45d=0x0;_0x5a0150=_0x40e41a['charAt'](_0x57b45d++);~_0x5a0150&&(_0x10b60f=_0x32665c%0x4?_0x10b60f*0x40+_0x5a0150:_0x5a0150,_0x32665c++%0x4)?_0x1d049e+=String['fromCharCode'](0xff&_0x10b60f>>(-0x2*_0x32665c&0x6)):0x0){_0x5a0150=_0x36c121['indexOf'](_0x5a0150);}for(let _0x10fcb8=0x0,_0x3a1b98=_0x1d049e['length'];_0x10fcb8<_0x3a1b98;_0x10fcb8++){_0x49c7c7+='%'+('00'+_0x1d049e['charCodeAt'](_0x10fcb8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49c7c7);};a0_0xb06b['PBsJLb']=_0x4ecb14,a0_0xb06b['BqiqzS']={},a0_0xb06b['URiObG']=!![];}const _0x4f10d1=_0x3ba1f8[0x0],_0x589aa6=_0x2ca2d5+_0x4f10d1,_0x23efcb=a0_0xb06b['BqiqzS'][_0x589aa6];return!_0x23efcb?(_0xb06bd6=a0_0xb06b['PBsJLb'](_0xb06bd6),a0_0xb06b['BqiqzS'][_0x589aa6]=_0xb06bd6):_0xb06bd6=_0x23efcb,_0xb06bd6;}import a0_0x5a0150 from'os';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class WebTool extends BaseTool{constructor(_0x57b45d={},_0x10fcb8=null){const _0x1deeaa=a0_0xb06b;super(_0x57b45d,_0x10fcb8),this['requiresProject']=![],this[_0x1deeaa(0x1d2)]=!![],this['browser']=null,this[_0x1deeaa(0x25a)]=![],this[_0x1deeaa(0x207)]=new Map(),this[_0x1deeaa(0x232)]=[{'name':'google','url':'https://www.google.com/search?q=','searchSelector':'input[name=\x22q\x22]','submitSelector':_0x1deeaa(0x20a),'resultsSelector':_0x1deeaa(0x205),'waitSelector':_0x1deeaa(0x229)},{'name':'bing','url':'https://www.bing.com/search?q=','searchSelector':'input[name=\x22q\x22]','submitSelector':'input[type=\x22submit\x22]','resultsSelector':_0x1deeaa(0x1e1),'waitSelector':_0x1deeaa(0x1f0)},{'name':_0x1deeaa(0x22a),'url':'https://duckduckgo.com/?q=','searchSelector':_0x1deeaa(0x201),'submitSelector':'button[type=\x22submit\x22]','resultsSelector':_0x1deeaa(0x20d),'waitSelector':_0x1deeaa(0x252)}],this['TAB_IDLE_TIMEOUT']=_0x57b45d[_0x1deeaa(0x1ee)]||0x3c*0x3c*0x3e8,this['CLEANUP_INTERVAL']=_0x57b45d['cleanupInterval']||0x5*0x3c*0x3e8,this['DEFAULT_TIMEOUT']=_0x57b45d['defaultTimeout']||0xea60,this['TEMP_DIR']=_0x57b45d['tempDir']||a0_0x32665c['join'](a0_0x5a0150[_0x1deeaa(0x24e)](),'webtool-screenshots'),this['cleanupTimer']=null,this['startCleanupTimer'](),this['ensureTempDir']();}['getDescription'](){return'\x0aWeb\x20Tool:\x20Browse,\x20search,\x20and\x20automate\x20web\x20interactions\x20using\x20Puppeteer.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22search|fetch|interactive\x22,\x0a\x20\x20\x22parameters\x22:\x20{...}\x0a}\x0a```\x0a\x0aOPERATIONS:\x0a\x0a1.\x20SEARCH:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22search\x22,\x0a\x20\x20\x22query\x22:\x20\x22search\x20terms\x22,\x0a\x20\x20\x22engine\x22:\x20\x22google\x22,\x0a\x20\x20\x22maxResults\x22:\x2010\x0a}\x0a```\x0a\x0a2.\x20FETCH:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22fetch\x22,\x0a\x20\x20\x22url\x22:\x20\x22https://example.com\x22,\x0a\x20\x20\x22formats\x22:\x20[\x22title\x22,\x20\x22text\x22,\x20\x22links\x22]\x0a}\x0a```\x0a\x0a3.\x20INTERACTIVE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22interactive\x22,\x0a\x20\x20\x22headless\x22:\x20true,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22open-tab\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22main\x22,\x0a\x20\x20\x20\x20\x20\x20\x22url\x22:\x20\x22https://example.com\x22,\x0a\x20\x20\x20\x20\x20\x20\x22nestedActions\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22wait-for\x22,\x20\x22selector\x22:\x20\x22.content\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22click\x22,\x20\x22selector\x22:\x20\x22button.submit\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22screenshot\x22,\x20\x22format\x22:\x20\x22file\x22,\x20\x22path\x22:\x20\x22result.png\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22extract-text\x22,\x20\x22selector\x22:\x20\x22#content\x22}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22close-tab\x22,\x20\x22name\x22:\x20\x22main\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20open-tab,\x20close-tab,\x20switch-tab,\x20list-tabs\x0a-\x20navigate,\x20click,\x20type,\x20press\x0a-\x20wait-for,\x20screenshot,\x20analyze-screenshot\x0a-\x20extract-text,\x20extract-links,\x20get-source\x0a-\x20scroll,\x20hover\x0a\x0aEXAMPLES:\x0a\x0aSearch\x20Google:\x0a```json\x0a{\x22toolId\x22:\x20\x22web\x22,\x20\x22operation\x22:\x20\x22search\x22,\x20\x22query\x22:\x20\x22puppeteer\x20tutorial\x22,\x20\x22maxResults\x22:\x205}\x0a```\x0a\x0aFetch\x20page\x20content:\x0a```json\x0a{\x22toolId\x22:\x20\x22web\x22,\x20\x22operation\x22:\x20\x22fetch\x22,\x20\x22url\x22:\x20\x22https://example.com\x22,\x20\x22formats\x22:\x20[\x22text\x22,\x20\x22links\x22]}\x0a```\x0a\x0aAutomate\x20workflow:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22interactive\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22open-tab\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22search\x22,\x0a\x20\x20\x20\x20\x20\x20\x22url\x22:\x20\x22https://github.com/trending\x22,\x0a\x20\x20\x20\x20\x20\x20\x22nestedActions\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22wait-for\x22,\x20\x22selector\x22:\x20\x22.Box-row\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22extract-links\x22,\x20\x22selector\x22:\x20\x22.Box-row\x20a\x22}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Browser\x20isolated\x20per\x20agent\x0a-\x20Tabs\x20auto-close\x20after\x201\x20hour\x0a\x20\x20\x20\x20';}[a0_0x27cf32(0x1f1)](_0x3a1b98){const _0x14fc89=a0_0x27cf32;try{if(_0x3a1b98[_0x14fc89(0x1f6)]()['startsWith']('{'))return JSON['parse'](_0x3a1b98);const _0x3d02d9={},_0x533ae2=a0_0x1d049e['extractContent'](_0x3a1b98,_0x14fc89(0x1e3));_0x533ae2[_0x14fc89(0x214)]>0x0&&(_0x3d02d9['operation']=_0x533ae2[0x0][_0x14fc89(0x1f6)]());switch(_0x3d02d9['operation']){case _0x14fc89(0x22c):_0x3d02d9['query']=a0_0x1d049e['extractContent'](_0x3a1b98,_0x14fc89(0x1eb))[0x0]?.[_0x14fc89(0x1f6)](),_0x3d02d9['engine']=a0_0x1d049e[_0x14fc89(0x22b)](_0x3a1b98,'engine')[0x0]?.['trim']()||'google';const _0x30562c=a0_0x1d049e[_0x14fc89(0x22b)](_0x3a1b98,'max-results')[0x0]?.[_0x14fc89(0x1f6)]();_0x3d02d9['maxResults']=_0x30562c?parseInt(_0x30562c,0xa):0xa;break;case'fetch':_0x3d02d9[_0x14fc89(0x243)]=a0_0x1d049e[_0x14fc89(0x22b)](_0x3a1b98,'url')[0x0]?.['trim']();const _0x8d2236=a0_0x1d049e['extractContent'](_0x3a1b98,'format')[0x0]?.[_0x14fc89(0x1f6)]();_0x3d02d9['formats']=_0x8d2236?_0x8d2236['split'](',')[_0x14fc89(0x271)](_0x28ffb9=>_0x28ffb9[_0x14fc89(0x1f6)]()):['title','text'];break;case _0x14fc89(0x272):const _0x13c73e=a0_0x1d049e[_0x14fc89(0x22b)](_0x3a1b98,'headless')[0x0]?.[_0x14fc89(0x1f6)]();_0x3d02d9[_0x14fc89(0x1f5)]=_0x13c73e!=='false';const _0x2f70c6=a0_0x1d049e[_0x14fc89(0x22b)](_0x3a1b98,_0x14fc89(0x212))[0x0];_0x2f70c6&&(_0x3d02d9[_0x14fc89(0x212)]=this[_0x14fc89(0x1f7)](_0x2f70c6));break;}return _0x3d02d9['rawContent']=_0x3a1b98[_0x14fc89(0x1f6)](),_0x3d02d9;}catch(_0x57dfe3){throw new Error(_0x14fc89(0x268)+_0x57dfe3[_0x14fc89(0x1d7)]);}}['parseActions'](_0x119eb8){const _0x5e66ee=a0_0x27cf32,_0x5e6ecf=[],_0x249a25=/<open-tab[^>]*name="([^"]+)"[^>]*>([\s\S]*?)<\/open-tab>/g;let _0x36f474;while((_0x36f474=_0x249a25[_0x5e66ee(0x254)](_0x119eb8))!==null){const [,_0x10e9bf,_0x5dec7a]=_0x36f474,_0x53f653=a0_0x1d049e[_0x5e66ee(0x22b)](_0x5dec7a,_0x5e66ee(0x24b))[0x0]?.['trim']();_0x5e6ecf[_0x5e66ee(0x1f2)]({'type':'open-tab','name':_0x10e9bf,'url':_0x53f653,'nestedActions':this['parseNestedActions'](_0x5dec7a)});}const _0x4a37c4=['close-tab',_0x5e66ee(0x233),_0x5e66ee(0x1d1),_0x5e66ee(0x24b),'click',_0x5e66ee(0x20b),_0x5e66ee(0x25d),_0x5e66ee(0x240),'screenshot',_0x5e66ee(0x1d6),'extract-text','extract-links','get-source',_0x5e66ee(0x230),_0x5e66ee(0x1f3),_0x5e66ee(0x26c),'mouse-move'];for(const _0x547abc of _0x4a37c4){const _0x23fca3=new RegExp('<'+_0x547abc+_0x5e66ee(0x25f)+_0x547abc+'>','g');let _0x4c6ebe;while((_0x4c6ebe=_0x23fca3['exec'](_0x119eb8))!==null){const [,_0xca1837,_0x44b676]=_0x4c6ebe,_0x1e76fc={'type':_0x547abc},_0x15664f=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x21fe9a;while((_0x21fe9a=_0x15664f['exec'](_0xca1837))!==null){_0x1e76fc[_0x21fe9a[0x1]]=_0x21fe9a[0x2];}_0x44b676&&_0x44b676[_0x5e66ee(0x1f6)]()&&(_0x1e76fc['value']=_0x44b676['trim']()),_0x5e6ecf[_0x5e66ee(0x1f2)](_0x1e76fc);}}return _0x5e6ecf;}[a0_0x27cf32(0x1e8)](_0x458ff2){const _0x1f0da4=a0_0x27cf32,_0x287ab2=[],_0x53630f=['navigate',_0x1f0da4(0x1e0),_0x1f0da4(0x20b),'press',_0x1f0da4(0x240),_0x1f0da4(0x238),'analyze-screenshot','extract-text',_0x1f0da4(0x1f8),_0x1f0da4(0x22e),'get-console',_0x1f0da4(0x1f3),_0x1f0da4(0x26c),'mouse-move'];for(const _0x1e04de of _0x53630f){const _0x34b7e2=new RegExp('<'+_0x1e04de+_0x1f0da4(0x25f)+_0x1e04de+'>|<'+_0x1e04de+'([^>]*)/>','g');let _0x2d8249;while((_0x2d8249=_0x34b7e2['exec'](_0x458ff2))!==null){const [,_0x4377db,_0x3556e2,_0x2cf504]=_0x2d8249,_0x3ab1e9=_0x4377db||_0x2cf504||'',_0x8f02f9={'type':_0x1e04de},_0x1533ee=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x39337c;while((_0x39337c=_0x1533ee[_0x1f0da4(0x254)](_0x3ab1e9))!==null){_0x8f02f9[_0x39337c[0x1]]=_0x39337c[0x2];}_0x3556e2&&_0x3556e2[_0x1f0da4(0x1f6)]()&&(_0x8f02f9['value']=_0x3556e2[_0x1f0da4(0x1f6)]()),_0x287ab2['push'](_0x8f02f9);}}return _0x287ab2;}['getRequiredParameters'](){const _0x38bb6e=a0_0x27cf32;return[_0x38bb6e(0x1e3)];}[a0_0x27cf32(0x1de)](_0x25c5e6){const _0x5902f5=a0_0x27cf32,_0x1c9be7=[];if(![_0x5902f5(0x22c),'fetch','interactive']['includes'](_0x25c5e6[_0x5902f5(0x1e3)]))return _0x1c9be7[_0x5902f5(0x1f2)]('operation\x20must\x20be\x20one\x20of:\x20search,\x20fetch,\x20interactive'),{'valid':![],'errors':_0x1c9be7};switch(_0x25c5e6['operation']){case'search':!_0x25c5e6['query']&&_0x1c9be7[_0x5902f5(0x1f2)](_0x5902f5(0x1fe));break;case _0x5902f5(0x234):!_0x25c5e6[_0x5902f5(0x243)]&&_0x1c9be7['push']('url\x20is\x20required\x20for\x20fetch\x20operation');break;case _0x5902f5(0x272):(!_0x25c5e6[_0x5902f5(0x212)]||!Array[_0x5902f5(0x24f)](_0x25c5e6['actions'])||_0x25c5e6['actions'][_0x5902f5(0x214)]===0x0)&&_0x1c9be7[_0x5902f5(0x1f2)](_0x5902f5(0x202));break;}return{'valid':_0x1c9be7['length']===0x0,'errors':_0x1c9be7};}async['execute'](_0x3363bd,_0xdb02a6){const _0x28b252=a0_0x27cf32,{operation:_0x26d989}=_0x3363bd,{agentId:_0xf6428e}=_0xdb02a6;try{await this['ensureBrowser']();let _0x5733a7;switch(_0x26d989){case _0x28b252(0x22c):_0x5733a7=await this['search'](_0x3363bd[_0x28b252(0x1eb)],{'engine':_0x3363bd[_0x28b252(0x263)]||_0x28b252(0x20f),'maxResults':_0x3363bd[_0x28b252(0x25c)]||0xa,'agentId':_0xf6428e});break;case _0x28b252(0x234):_0x5733a7=await this[_0x28b252(0x234)](_0x3363bd[_0x28b252(0x243)],{'formats':_0x3363bd[_0x28b252(0x1e7)]||['title',_0x28b252(0x255)],'agentId':_0xf6428e});break;case'interactive':_0x5733a7=await this['interactive'](_0x3363bd[_0x28b252(0x212)],{'headless':_0x3363bd['headless']!==![],'agentId':_0xf6428e,'context':_0xdb02a6});break;default:throw new Error('Unknown\x20operation:\x20'+_0x26d989);}return{'success':!![],'operation':_0x26d989,'result':_0x5733a7,'toolUsed':_0x28b252(0x27f)};}catch(_0x1d4e0e){return this['logger']?.['error']('Web\x20tool\x20execution\x20failed',{'operation':_0x26d989,'error':_0x1d4e0e['message'],'agentId':_0xf6428e}),{'success':![],'operation':_0x26d989,'error':_0x1d4e0e['message'],'toolUsed':'web'};}}async['ensureBrowser'](){const _0x25648b=a0_0x27cf32;if(this['browser']&&this['browser'][_0x25648b(0x22f)]())return;if(this['browserInitializing']){while(this['browserInitializing']){await new Promise(_0x1c8507=>setTimeout(_0x1c8507,0x64));}return;}this[_0x25648b(0x25a)]=!![];try{this['logger']?.['info']('Initializing\x20Puppeteer\x20browser'),this[_0x25648b(0x1d3)]=await a0_0x49c7c7[_0x25648b(0x265)]({'headless':_0x25648b(0x270),'args':[_0x25648b(0x23d),_0x25648b(0x227),_0x25648b(0x20c),_0x25648b(0x27b),'--disable-gpu',_0x25648b(0x27d),'--user-agent=Mozilla/5.0\x20(Windows\x20NT\x2010.0;\x20Win64;\x20x64)\x20AppleWebKit/537.36\x20(KHTML,\x20like\x20Gecko)\x20Chrome/120.0.0.0\x20Safari/537.36']}),this['logger']?.['info'](_0x25648b(0x1ed));}catch(_0x1b0d82){this[_0x25648b(0x1d0)]?.[_0x25648b(0x1ce)](_0x25648b(0x1d8),{'error':_0x1b0d82['message']});throw new Error('Browser\x20initialization\x20failed:\x20'+_0x1b0d82[_0x25648b(0x1d7)]);}finally{this[_0x25648b(0x25a)]=![];}}async['search'](_0x36be34,_0x4d4f13={}){const _0x7c5cbb=a0_0x27cf32,{engine:engine='google',maxResults:maxResults=0xa,agentId:_0x3a8274}=_0x4d4f13;if(!_0x36be34||typeof _0x36be34!==_0x7c5cbb(0x275)||_0x36be34[_0x7c5cbb(0x1f6)]()[_0x7c5cbb(0x214)]===0x0)throw new Error(_0x7c5cbb(0x242));const _0x1f4373=this['searchEngines'][_0x7c5cbb(0x213)](_0x1e2150=>_0x1e2150['name']===engine);if(!_0x1f4373)throw new Error(_0x7c5cbb(0x220)+engine+_0x7c5cbb(0x25e)+this[_0x7c5cbb(0x232)][_0x7c5cbb(0x271)](_0x581747=>_0x581747[_0x7c5cbb(0x21c)])['join'](',\x20'));await this['ensureBrowser'](),this[_0x7c5cbb(0x1d0)]?.['info'](_0x7c5cbb(0x1ef),{'query':_0x36be34,'engine':engine,'agentId':_0x3a8274});const _0x315068=await this[_0x7c5cbb(0x1d3)]['newPage']();try{const _0x2b8997=''+_0x1f4373[_0x7c5cbb(0x243)]+encodeURIComponent(_0x36be34);await _0x315068[_0x7c5cbb(0x225)](_0x2b8997,{'waitUntil':_0x7c5cbb(0x27c),'timeout':this[_0x7c5cbb(0x1d9)]}),await _0x315068[_0x7c5cbb(0x241)](_0x1f4373['waitSelector'],{'timeout':this['DEFAULT_TIMEOUT']});const _0x329053=await _0x315068['evaluate']((_0x58e0a7,_0x303802)=>{const _0x515110=_0x7c5cbb,_0x3ea4e=Array[_0x515110(0x21e)](document[_0x515110(0x218)](_0x58e0a7));return _0x3ea4e['slice'](0x0,_0x303802)[_0x515110(0x271)](_0x2f4565=>({'url':_0x2f4565[_0x515110(0x279)],'title':_0x2f4565['textContent']['trim'](),'description':_0x2f4565[_0x515110(0x278)]('.g,\x20.b_algo,\x20.result')?.[_0x515110(0x245)]['trim']()||''}))[_0x515110(0x244)](_0x28af77=>_0x28af77[_0x515110(0x243)]&&_0x28af77['url']['startsWith']('http'));},_0x1f4373[_0x7c5cbb(0x1ff)],maxResults);return this[_0x7c5cbb(0x1d0)]?.['info'](_0x7c5cbb(0x1d5),{'resultsCount':_0x329053['length'],'agentId':_0x3a8274}),{'success':!![],'query':_0x36be34,'engine':engine,'resultsCount':_0x329053[_0x7c5cbb(0x214)],'results':_0x329053};}finally{await _0x315068[_0x7c5cbb(0x231)]();}}async[a0_0x27cf32(0x234)](_0x249232,_0x3f650c={}){const _0x3751e8=a0_0x27cf32,{formats:formats=[_0x3751e8(0x256),'text'],agentId:_0x551c16}=_0x3f650c;await this[_0x3751e8(0x1ec)](),this[_0x3751e8(0x1d0)]?.['info']('Fetching\x20web\x20content',{'url':_0x249232,'formats':formats,'agentId':_0x551c16});const _0x6d9ed9=await this[_0x3751e8(0x1d3)][_0x3751e8(0x1cf)]();try{const _0x101485=[];formats['includes'](_0x3751e8(0x269))&&_0x6d9ed9['on'](_0x3751e8(0x269),_0x5728eb=>{_0x101485['push']({'type':_0x5728eb['type'](),'text':_0x5728eb['text']()});});await _0x6d9ed9[_0x3751e8(0x225)](_0x249232,{'waitUntil':_0x3751e8(0x27c),'timeout':this['DEFAULT_TIMEOUT']});const _0x597f6d={'url':_0x249232};for(const _0xab0e96 of formats){switch(_0xab0e96){case'title':_0x597f6d['title']=await _0x6d9ed9[_0x3751e8(0x256)]();break;case'text':_0x597f6d[_0x3751e8(0x255)]=await _0x6d9ed9['evaluate'](()=>document[_0x3751e8(0x23f)][_0x3751e8(0x1fc)]);break;case _0x3751e8(0x260):_0x597f6d['links']=await _0x6d9ed9['evaluate'](()=>{const _0x20686a=_0x3751e8;return Array[_0x20686a(0x21e)](document['querySelectorAll']('a[href]'))[_0x20686a(0x271)](_0xd4eaad=>({'href':_0xd4eaad[_0x20686a(0x279)],'text':_0xd4eaad['textContent'][_0x20686a(0x1f6)]()}));});break;case'html':_0x597f6d['html']=await _0x6d9ed9['content']();break;case'console':_0x597f6d[_0x3751e8(0x237)]=_0x101485;break;}}return this['logger']?.['info']('Fetch\x20completed',{'url':_0x249232,'formats':formats,'agentId':_0x551c16}),{'success':!![],..._0x597f6d};}finally{await _0x6d9ed9[_0x3751e8(0x231)]();}}async['interactive'](_0x20536e,_0x81ba0a={}){const _0x26a98d=a0_0x27cf32,{headless:headless=!![],agentId:_0xb78fc,context:_0x5ddd81}=_0x81ba0a;await this[_0x26a98d(0x1ec)](),this['logger']?.['info']('Starting\x20interactive\x20session',{'actionsCount':_0x20536e[_0x26a98d(0x214)],'headless':headless,'agentId':_0xb78fc});const _0x3850e9=[];!this['agentTabs'][_0x26a98d(0x1df)](_0xb78fc)&&this['agentTabs']['set'](_0xb78fc,new Map());const _0x46d8f9=this[_0x26a98d(0x207)]['get'](_0xb78fc);for(const _0x23db31 of _0x20536e){try{let _0x431c02;switch(_0x23db31['type']){case'open-tab':_0x431c02=await this[_0x26a98d(0x1da)](_0xb78fc,_0x23db31[_0x26a98d(0x21c)],_0x23db31['url'],headless,_0x23db31['nestedActions'],_0x5ddd81);break;case _0x26a98d(0x251):_0x431c02=await this['closeTab'](_0xb78fc,_0x23db31[_0x26a98d(0x21c)]);break;case _0x26a98d(0x233):_0x431c02=await this[_0x26a98d(0x216)](_0xb78fc,_0x23db31['name']);break;case'list-tabs':_0x431c02=await this[_0x26a98d(0x1e5)](_0xb78fc);break;default:_0x431c02={'success':![],'error':'Action\x20'+_0x23db31[_0x26a98d(0x20b)]+_0x26a98d(0x23a)};}_0x3850e9['push']({'action':_0x23db31[_0x26a98d(0x20b)],..._0x431c02});}catch(_0xf12674){this[_0x26a98d(0x1d0)]?.[_0x26a98d(0x1ce)](_0x26a98d(0x1d4),{'action':_0x23db31['type'],'error':_0xf12674[_0x26a98d(0x1d7)],'agentId':_0xb78fc}),_0x3850e9['push']({'action':_0x23db31['type'],'success':![],'error':_0xf12674[_0x26a98d(0x1d7)]});}}return{'success':_0x3850e9[_0x26a98d(0x1fb)](_0x5953ed=>_0x5953ed['success']!==![]),'actionsExecuted':_0x3850e9['length'],'results':_0x3850e9};}async[a0_0x27cf32(0x1da)](_0x141d55,_0x449c9d,_0xa0bad3,_0x9162e,_0x15d6a0=[],_0x485e56={}){const _0x1b9a6b=a0_0x27cf32;!this[_0x1b9a6b(0x207)][_0x1b9a6b(0x1df)](_0x141d55)&&this[_0x1b9a6b(0x207)][_0x1b9a6b(0x208)](_0x141d55,new Map());const _0x3c96a9=this[_0x1b9a6b(0x207)][_0x1b9a6b(0x235)](_0x141d55);if(_0x3c96a9['has'](_0x449c9d))throw new Error('Tab\x20\x27'+_0x449c9d+_0x1b9a6b(0x203)+_0x141d55);this[_0x1b9a6b(0x1d0)]?.['info'](_0x1b9a6b(0x264),{'agentId':_0x141d55,'tabName':_0x449c9d,'url':_0xa0bad3,'headless':_0x9162e});const _0x5d98d5=await this['browser'][_0x1b9a6b(0x1cf)]();await _0x5d98d5[_0x1b9a6b(0x1f4)]({'width':0x500,'height':0x2d0});const _0x42f3dc=[];_0x5d98d5['on'](_0x1b9a6b(0x269),_0x2d2399=>{const _0x259599=_0x1b9a6b;_0x42f3dc[_0x259599(0x1f2)]({'type':_0x2d2399['type'](),'text':_0x2d2399['text'](),'timestamp':Date['now']()});});const _0x39d6be={'page':_0x5d98d5,'url':_0xa0bad3,'lastActivity':Date[_0x1b9a6b(0x206)](),'headless':_0x9162e,'consoleMessages':_0x42f3dc,'name':_0x449c9d};_0x3c96a9[_0x1b9a6b(0x208)](_0x449c9d,_0x39d6be);const _0x51e7f4=[];try{_0xa0bad3&&(await _0x5d98d5[_0x1b9a6b(0x225)](_0xa0bad3,{'waitUntil':'networkidle2','timeout':this['DEFAULT_TIMEOUT']}),_0x39d6be[_0x1b9a6b(0x243)]=_0xa0bad3,_0x39d6be['lastActivity']=Date['now']());for(const _0x4daf10 of _0x15d6a0){const _0x3ab0cc=await this[_0x1b9a6b(0x249)](_0x5d98d5,_0x4daf10,_0x39d6be,_0x485e56);_0x51e7f4['push']({'action':_0x4daf10['type'],..._0x3ab0cc}),_0x39d6be[_0x1b9a6b(0x1f9)]=Date['now']();}return{'success':!![],'tabName':_0x449c9d,'url':_0x39d6be[_0x1b9a6b(0x243)],'actionsExecuted':_0x51e7f4[_0x1b9a6b(0x214)],'results':_0x51e7f4};}catch(_0x979fb7){this['logger']?.['error']('Failed\x20to\x20open\x20tab',{'agentId':_0x141d55,'tabName':_0x449c9d,'error':_0x979fb7[_0x1b9a6b(0x1d7)]}),await _0x5d98d5[_0x1b9a6b(0x231)](),_0x3c96a9[_0x1b9a6b(0x1cd)](_0x449c9d);throw _0x979fb7;}}async[a0_0x27cf32(0x249)](_0xf74850,_0x5cd19a,_0x522ba8,_0x4e9643){const _0x433c0d=a0_0x27cf32;switch(_0x5cd19a['type']){case'navigate':await _0xf74850['goto'](_0x5cd19a['value']||_0x5cd19a[_0x433c0d(0x243)],{'waitUntil':'networkidle2','timeout':this['DEFAULT_TIMEOUT']}),_0x522ba8['url']=_0xf74850['url']();return{'success':!![],'url':_0x522ba8['url']};case'click':await _0xf74850[_0x433c0d(0x1e0)](_0x5cd19a[_0x433c0d(0x21a)],{'button':_0x5cd19a[_0x433c0d(0x226)]||'left'});return{'success':!![],'selector':_0x5cd19a['selector']};case _0x433c0d(0x20b):await _0xf74850['type'](_0x5cd19a['selector'],_0x5cd19a['text']||_0x5cd19a['value']);return{'success':!![],'selector':_0x5cd19a['selector'],'text':_0x5cd19a[_0x433c0d(0x255)]};case _0x433c0d(0x25d):await _0xf74850['keyboard'][_0x433c0d(0x25d)](_0x5cd19a[_0x433c0d(0x26f)]||_0x5cd19a['value']);return{'success':!![],'key':_0x5cd19a[_0x433c0d(0x26f)]};case'wait-for':const _0x1e2139=_0x5cd19a[_0x433c0d(0x209)]?parseInt(_0x5cd19a[_0x433c0d(0x209)],0xa):this['DEFAULT_TIMEOUT'];await _0xf74850[_0x433c0d(0x241)](_0x5cd19a[_0x433c0d(0x21a)],{'timeout':_0x1e2139});return{'success':!![],'selector':_0x5cd19a['selector']};case _0x433c0d(0x238):return await this['takeScreenshot'](_0xf74850,_0x5cd19a,_0x4e9643);case _0x433c0d(0x1d6):return await this[_0x433c0d(0x1e6)](_0xf74850,_0x5cd19a[_0x433c0d(0x21b)],_0x4e9643);case _0x433c0d(0x1e4):const _0x493289=await _0xf74850[_0x433c0d(0x1dc)](_0x4bfe0f=>{const _0x373285=document['querySelector'](_0x4bfe0f);return _0x373285?_0x373285['innerText']:null;},_0x5cd19a[_0x433c0d(0x21a)]);return{'success':!![],'selector':_0x5cd19a['selector'],'text':_0x493289};case _0x433c0d(0x1f8):const _0x3877d1=await _0xf74850['evaluate'](_0x3f051d=>{const _0x13323d=_0x433c0d,_0x38ae00=document['querySelectorAll'](_0x3f051d);return Array[_0x13323d(0x21e)](_0x38ae00)[_0x13323d(0x271)](_0x4e2644=>({'href':_0x4e2644['href'],'text':_0x4e2644['textContent']['trim']()}));},_0x5cd19a['selector']);return{'success':!![],'selector':_0x5cd19a['selector'],'links':_0x3877d1};case'get-source':const _0x17e104=await _0xf74850['content']();return{'success':!![],'html':_0x17e104};case'get-console':return{'success':!![],'consoleMessages':[..._0x522ba8['consoleMessages']]};case'scroll':await _0xf74850[_0x433c0d(0x1dc)](_0x443549=>{const _0x4173f6=_0x433c0d;_0x443549?document[_0x4173f6(0x23e)](_0x443549)?.['scrollIntoView']():window['scrollTo'](0x0,document[_0x4173f6(0x23f)]['scrollHeight']);},_0x5cd19a[_0x433c0d(0x21a)]);return{'success':!![]};case _0x433c0d(0x26c):await _0xf74850['hover'](_0x5cd19a[_0x433c0d(0x21a)]);return{'success':!![],'selector':_0x5cd19a['selector']};case'mouse-move':await _0xf74850['hover'](_0x5cd19a['selector']);return{'success':!![],'selector':_0x5cd19a[_0x433c0d(0x21a)]};default:throw new Error('Unknown\x20action\x20type:\x20'+_0x5cd19a['type']);}}async['takeScreenshot'](_0x1f1ecc,_0x45d4ec,_0x2e9c1f){const _0x139fd0=a0_0x27cf32,_0x4e56bc=_0x45d4ec['format']||_0x139fd0(0x248),_0x4a5add=_0x45d4ec[_0x139fd0(0x23c)];if(_0x4e56bc===_0x139fd0(0x1fd)){const _0x1ad900=await _0x1f1ecc[_0x139fd0(0x238)]({'encoding':'base64'});return{'success':!![],'format':'base64','screenshot':_0x1ad900};}let _0x6d7dde;if(_0x4a5add){const _0x4982a1=_0x2e9c1f[_0x139fd0(0x219)]?.[_0x139fd0(0x24a)]||_0x2e9c1f['projectDir']||process['cwd']();_0x6d7dde=a0_0x32665c['isAbsolute'](_0x4a5add)?_0x4a5add:a0_0x32665c[_0x139fd0(0x1e9)](_0x4982a1,_0x4a5add);}else{const _0x3b24c5=_0x139fd0(0x20e)+Date[_0x139fd0(0x206)]()+_0x139fd0(0x23b);_0x6d7dde=a0_0x32665c['join'](this['TEMP_DIR'],_0x3b24c5);}return await _0x1f1ecc[_0x139fd0(0x238)]({'path':_0x6d7dde}),{'success':!![],'format':_0x139fd0(0x248),'path':_0x6d7dde};}async[a0_0x27cf32(0x1e6)](_0x14cb18,_0x58cf51,_0x520b0c){const _0xa0c6b=a0_0x27cf32,_0x831b5f=await _0x14cb18[_0xa0c6b(0x238)]({'encoding':_0xa0c6b(0x1fd)}),_0x3d0979=_0x520b0c[_0xa0c6b(0x246)];if(!_0x3d0979)throw new Error('AI\x20service\x20not\x20available\x20for\x20screenshot\x20analysis');this[_0xa0c6b(0x1d0)]?.['info'](_0xa0c6b(0x276),{'question':_0x58cf51['substring'](0x0,0x64),'agentId':_0x520b0c['agentId']});try{const _0x19a1d4='o3',_0x20a381=await _0x3d0979['sendMessage'](_0x19a1d4,_0x58cf51,{'agentId':_0x520b0c[_0xa0c6b(0x224)],'images':[_0xa0c6b(0x1fa)+_0x831b5f],'apiKey':_0x520b0c[_0xa0c6b(0x223)],'customApiKeys':_0x520b0c[_0xa0c6b(0x24c)],'platformProvided':_0x520b0c['platformProvided']});return{'success':!![],'question':_0x58cf51,'analysis':_0x20a381[_0xa0c6b(0x273)],'model':_0x20a381[_0xa0c6b(0x1ea)]||_0x19a1d4};}catch(_0x3b9ae1){this['logger']?.['error']('Screenshot\x20analysis\x20failed',{'error':_0x3b9ae1['message'],'agentId':_0x520b0c[_0xa0c6b(0x224)]});throw new Error(_0xa0c6b(0x210)+_0x3b9ae1['message']);}}async['closeTab'](_0x1c7885,_0x441a10){const _0x4b6cf1=a0_0x27cf32,_0x2299ba=this['agentTabs'][_0x4b6cf1(0x235)](_0x1c7885);if(!_0x2299ba||!_0x2299ba[_0x4b6cf1(0x1df)](_0x441a10))throw new Error(_0x4b6cf1(0x258)+_0x441a10+'\x27\x20not\x20found\x20for\x20agent\x20'+_0x1c7885);const _0x2d092a=_0x2299ba[_0x4b6cf1(0x235)](_0x441a10);return this['logger']?.[_0x4b6cf1(0x262)](_0x4b6cf1(0x274),{'agentId':_0x1c7885,'tabName':_0x441a10}),await _0x2d092a['page']['close'](),_0x2299ba[_0x4b6cf1(0x1cd)](_0x441a10),{'success':!![],'tabName':_0x441a10,'message':'Tab\x20\x27'+_0x441a10+_0x4b6cf1(0x261)};}async[a0_0x27cf32(0x216)](_0x3a72dd,_0x4b1dc7){const _0x1d8f99=a0_0x27cf32,_0x2dc747=this[_0x1d8f99(0x207)]['get'](_0x3a72dd);if(!_0x2dc747||!_0x2dc747[_0x1d8f99(0x1df)](_0x4b1dc7))throw new Error(_0x1d8f99(0x258)+_0x4b1dc7+_0x1d8f99(0x236)+_0x3a72dd);const _0x5431ef=_0x2dc747[_0x1d8f99(0x235)](_0x4b1dc7);return _0x5431ef['lastActivity']=Date[_0x1d8f99(0x206)](),{'success':!![],'tabName':_0x4b1dc7,'url':_0x5431ef['url'],'message':_0x1d8f99(0x1e2)+_0x4b1dc7+'\x27'};}async[a0_0x27cf32(0x1e5)](_0x1c0233){const _0x447158=a0_0x27cf32,_0x4c5c63=this['agentTabs']['get'](_0x1c0233);if(!_0x4c5c63||_0x4c5c63['size']===0x0)return{'success':!![],'tabCount':0x0,'tabs':[],'message':_0x447158(0x27a)};const _0x2ca1da=[];for(const [_0x3de924,_0x2a9a03]of _0x4c5c63[_0x447158(0x228)]()){_0x2ca1da['push']({'name':_0x3de924,'url':_0x2a9a03['url'],'idleTime':Date['now']()-_0x2a9a03[_0x447158(0x1f9)],'headless':_0x2a9a03['headless']});}return{'success':!![],'tabCount':_0x2ca1da[_0x447158(0x214)],'tabs':_0x2ca1da};}['startCleanupTimer'](){const _0x52143a=a0_0x27cf32;this['cleanupTimer']&&clearInterval(this[_0x52143a(0x26e)]),this[_0x52143a(0x26e)]=setInterval(()=>{const _0x1671eb=_0x52143a;this[_0x1671eb(0x1db)]();},this[_0x52143a(0x266)]);}async[a0_0x27cf32(0x1db)](){const _0x54e260=a0_0x27cf32,_0x2eff07=Date['now'](),_0x2cf898=[];for(const [_0x5f1757,_0x3e18a9]of this['agentTabs'][_0x54e260(0x228)]()){for(const [_0x2d057f,_0x45fc58]of _0x3e18a9[_0x54e260(0x228)]()){const _0x540356=_0x2eff07-_0x45fc58[_0x54e260(0x1f9)];_0x540356>this['TAB_IDLE_TIMEOUT']&&_0x2cf898['push']({'agentId':_0x5f1757,'tabName':_0x2d057f,'tabInfo':_0x45fc58});}}if(_0x2cf898['length']>0x0){this['logger']?.[_0x54e260(0x262)]('Cleaning\x20up\x20idle\x20tabs',{'count':_0x2cf898[_0x54e260(0x214)]});for(const {agentId:_0x100c68,tabName:_0x57da80,tabInfo:_0x5c6d62}of _0x2cf898){try{await _0x5c6d62[_0x54e260(0x21f)]['close'](),this['agentTabs']['get'](_0x100c68)['delete'](_0x57da80),this[_0x54e260(0x1d0)]?.['debug'](_0x54e260(0x1dd),{'agentId':_0x100c68,'tabName':_0x57da80});}catch(_0x30d150){this['logger']?.['error'](_0x54e260(0x257),{'agentId':_0x100c68,'tabName':_0x57da80,'error':_0x30d150['message']});}}}}async['cleanupAgent'](_0x2c77ce){const _0x6136d5=a0_0x27cf32,_0x37f8b8=this[_0x6136d5(0x207)][_0x6136d5(0x235)](_0x2c77ce);if(!_0x37f8b8)return{'success':!![],'agentId':_0x2c77ce,'closedTabs':0x0,'message':_0x6136d5(0x277)};this[_0x6136d5(0x1d0)]?.[_0x6136d5(0x262)](_0x6136d5(0x239),{'agentId':_0x2c77ce,'tabCount':_0x37f8b8[_0x6136d5(0x211)]});let _0x3a11ee=0x0;for(const [_0x5ce998,_0x300f27]of _0x37f8b8['entries']()){try{await _0x300f27[_0x6136d5(0x21f)][_0x6136d5(0x231)](),_0x3a11ee++;}catch(_0xaed776){this[_0x6136d5(0x1d0)]?.['error']('Failed\x20to\x20close\x20tab\x20during\x20cleanup',{'agentId':_0x2c77ce,'tabName':_0x5ce998,'error':_0xaed776['message']});}}return this['agentTabs'][_0x6136d5(0x1cd)](_0x2c77ce),{'success':!![],'agentId':_0x2c77ce,'closedTabs':_0x3a11ee,'message':_0x6136d5(0x267)+_0x3a11ee+'\x20tabs\x20for\x20agent\x20'+_0x2c77ce};}async[a0_0x27cf32(0x221)](){const _0x111344=a0_0x27cf32;try{await a0_0x10b60f['mkdir'](this[_0x111344(0x22d)],{'recursive':!![]});}catch(_0x4e42e6){this[_0x111344(0x1d0)]?.['warn'](_0x111344(0x26b),{'path':this[_0x111344(0x22d)],'error':_0x4e42e6[_0x111344(0x1d7)]});}}async[a0_0x27cf32(0x27e)](){const _0x3798d8=a0_0x27cf32;this[_0x3798d8(0x26e)]&&(clearInterval(this['cleanupTimer']),this['cleanupTimer']=null);for(const [_0x5d5160]of this['agentTabs'][_0x3798d8(0x228)]()){await this['cleanupAgent'](_0x5d5160);}this['browser']&&(await this[_0x3798d8(0x1d3)]['close'](),this['browser']=null);try{await a0_0x10b60f['rm'](this['TEMP_DIR'],{'recursive':!![],'force':!![]});}catch(_0x50adff){this['logger']?.[_0x3798d8(0x215)](_0x3798d8(0x259),{'path':this[_0x3798d8(0x22d)],'error':_0x50adff[_0x3798d8(0x1d7)]});}}}export default WebTool;
1
+ const a0_0x100787=a0_0x166d;(function(_0x20fe02,_0x23edff){const _0x1b0fa5=a0_0x166d,_0x7286d3=_0x20fe02();while(!![]){try{const _0xdcfc74=parseInt(_0x1b0fa5(0x1d4))/0x1*(-parseInt(_0x1b0fa5(0x206))/0x2)+parseInt(_0x1b0fa5(0x21a))/0x3+parseInt(_0x1b0fa5(0x22f))/0x4*(parseInt(_0x1b0fa5(0x1fe))/0x5)+-parseInt(_0x1b0fa5(0x1ac))/0x6*(-parseInt(_0x1b0fa5(0x225))/0x7)+-parseInt(_0x1b0fa5(0x215))/0x8*(-parseInt(_0x1b0fa5(0x1b1))/0x9)+-parseInt(_0x1b0fa5(0x1a9))/0xa+parseInt(_0x1b0fa5(0x21b))/0xb*(-parseInt(_0x1b0fa5(0x220))/0xc);if(_0xdcfc74===_0x23edff)break;else _0x7286d3['push'](_0x7286d3['shift']());}catch(_0xc2ad72){_0x7286d3['push'](_0x7286d3['shift']());}}}(a0_0x5aad,0x1bebb));import{BaseTool}from'./baseTool.js';import a0_0x358e5c from'../utilities/tagParser.js';function a0_0x166d(_0x517fa7,_0x1f052a){_0x517fa7=_0x517fa7-0x196;const _0x5aada0=a0_0x5aad();let _0x166d2b=_0x5aada0[_0x517fa7];if(a0_0x166d['SjiHrp']===undefined){var _0x470368=function(_0x5cf223){const _0x2456c8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x358e5c='',_0xc432c='';for(let _0x2e97b7=0x0,_0x5d660a,_0x56da64,_0xd8da0c=0x0;_0x56da64=_0x5cf223['charAt'](_0xd8da0c++);~_0x56da64&&(_0x5d660a=_0x2e97b7%0x4?_0x5d660a*0x40+_0x56da64:_0x56da64,_0x2e97b7++%0x4)?_0x358e5c+=String['fromCharCode'](0xff&_0x5d660a>>(-0x2*_0x2e97b7&0x6)):0x0){_0x56da64=_0x2456c8['indexOf'](_0x56da64);}for(let _0x4974ec=0x0,_0x230d40=_0x358e5c['length'];_0x4974ec<_0x230d40;_0x4974ec++){_0xc432c+='%'+('00'+_0x358e5c['charCodeAt'](_0x4974ec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc432c);};a0_0x166d['qEcJEC']=_0x470368,a0_0x166d['FmmPab']={},a0_0x166d['SjiHrp']=!![];}const _0x2aa2cb=_0x5aada0[0x0],_0x2e3fb6=_0x517fa7+_0x2aa2cb,_0x37d6fd=a0_0x166d['FmmPab'][_0x2e3fb6];return!_0x37d6fd?(_0x166d2b=a0_0x166d['qEcJEC'](_0x166d2b),a0_0x166d['FmmPab'][_0x2e3fb6]=_0x166d2b):_0x166d2b=_0x37d6fd,_0x166d2b;}import a0_0xc432c from'puppeteer';import a0_0x2e97b7 from'path';import a0_0x5d660a from'fs/promises';import a0_0x56da64 from'os';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x5aad(){const _0x8b9f4c=['BMv3','vw5RBM93BIbZzwfYy2GGzw5NAw5LoIa','ywn0Aw9UCW','revgqvvmvf9usu1ft1vu','AxnbCNjHEq','zhvJA2r1y2TNBW','C2nYzwvUC2HVDc0','lMjFywXNBYbH','C3DPDgnOlxrHyG','C2L6zq','mJa5mZG5mefXqKncDa','y29UC29Szu1LC3nHz2vZ','Ahr0Ca','mZm1odHkuKrrAKy','qwn0Aw9UigzHAwXLza','BgLUA3m','C2vUze1LC3nHz2u','CgfYC2vby3rPB25Z','ndv4Dgrbwxa','Aw50zxjHy3rPDMu','C3rHCNrZv2L0Aa','y2XLyw51CefNzw50','u3DPDgnOzwqGDg8GDgfIicC','zxH0CMfJDenVBNrLBNq','ChjLC3m','ywDLBNrjza','i2jFCMvZDwX0CW','yw5HBhL6zs1Zy3jLzw5ZAg90','zMLSDgvY','BgvUz3rO','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq','DgL0Bgu','zMLUza','ywDLBNruywjZ','A2v5','y3DK','lNjLC3vSDf9FysWGyvTKyxrHlxrLC3rPzd0ICMvZDwX0lxrPDgXLlweIxq','yM9KEq','DgLTzw91Da','rMfPBgvKihrVihbHCNnLihDLyIb0B29SihbHCMfTzxrLCNm6ia','rMfPBgvKihrVig9Wzw4GDgfI','tM8GDgfICYb0BYbJBgvHBIb1Ca','DhLWzq','v2vIihrVB2WGzxHLy3v0Aw9UigzHAwXLza','D2fPDfnLBgvJDg9Y','zxH0CMfJDc10zxH0','zgvMyxvSDfrPBwvVDxq','yNjVD3nLCG','zw5ZDxjLvgvTCerPCG','q0Xfqu5vuf9jtLrfuLzbta','C2vSzwn0B3i','y2XLyw51CeLKBgvuywjZ','y2XPy2S','mZiZodnxtKfiC1O','rMfPBgvKihrVignSB3nLigLKBguGDgfI','B3bLCMf0Aw9U','Aw5WDxrBDhLWzt0IC3vIBwL0iL0','BwvZC2fNzq','D2fYBG','rMfPBgvKihrVignSB3nLihrHyIbKDxjPBMCGy2XLyw51Ca','BMfTzq','CxvLCNLtzwXLy3rVCG','yvTOCMvMxq','Bg9Nz2vY','cLDLyIbuB29SoIbcCM93C2uSihnLyxjJAcWGyw5Kigf1Dg9TyxrLihDLyIbPBNrLCMfJDgLVBNmGDxnPBMCGuhvWCgv0zwvYlGOkvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaID2vIiIWkicaIB3bLCMf0Aw9UiJOGiNnLyxjJAhXMzxrJAhXPBNrLCMfJDgL2zsiScIaGiNbHCMfTzxrLCNmIoIb7lI4UFqP9cMbGyaOkt1bfuKfusu9ouZOkcJeUifnfqvjdsdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj3zwiIlaOGicjVCgvYyxrPB24IoIaIC2vHCMnOiIWkicaICxvLCNKIoIaIC2vHCMnOihrLCM1ZiIWkicaIzw5NAw5LiJOGiMDVB2DSzsiScIaGiM1HEfjLC3vSDhmIoIaXmaP9cMbGyaOkmI4GrKvuq0G6cMbGygPZB24kEWOGicj0B29SswqIoIaID2vIiIWkicaIB3bLCMf0Aw9UiJOGiMzLDgnOiIWkicaIDxjSiJOGiMH0DhbZoI8VzxHHBxbSzs5JB20IlaOGicjMB3jTyxrZiJOGwYj0AxrSzsiSicj0zxH0iIWGiMXPBMTZiL0kFqPGygakcJmUieLovevsqunusvzfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNDLyIiScIaGiM9WzxjHDgLVBIi6icjPBNrLCMfJDgL2zsiScIaGiMHLywrSzxnZiJOGDhj1zsWkicaIywn0Aw9UCYi6ifSkicaGihSkicaGicaGiNr5CguIoIaIB3bLBI10ywiIlaOGicaGicaIBMfTzsi6icjTywLUiIWkicaGicaGiNvYBci6icjODhrWCZOVl2v4yw1WBguUy29TiIWkicaGicaGiM5LC3rLzefJDgLVBNmIoIbBcIaGicaGicaGEYj0ExbLiJOGiNDHAxqTzM9YiIWGiNnLBgvJDg9YiJOGiI5JB250zw50iN0ScIaGicaGicaGEYj0ExbLiJOGiMnSAwnRiIWGiNnLBgvJDg9YiJOGiMj1DhrVBI5ZDwjTAxqIFsWkicaGicaGicb7iNr5CguIoIaIC2nYzwvUC2HVDciSicjMB3jTyxqIoIaIzMLSzsiSicjWyxrOiJOGiNjLC3vSDc5WBMCIFsWkicaGicaGicb7iNr5CguIoIaIzxH0CMfJDc10zxH0iIWGiNnLBgvJDg9YiJOGiInJB250zw50iN0kicaGicaGxqOGicaGFsWkicaGihSIDhLWzsi6icjJBg9Zzs10ywiIlcaIBMfTzsi6icjTywLUiN0kicbDcN0kygbGcGPtvvbqt1juruqGqunusu9ouZOklsbVCgvUlxrHyIWGy2XVC2uTDgfIlcbZD2L0y2GTDgfIlcbSAxn0lxrHyNmklsbUyxzPz2f0zsWGy2XPy2SSihr5CguSihbYzxnZcI0GD2fPDc1MB3iSihnJCMvLBNnOB3qSigfUywX5EMuTC2nYzwvUC2HVDaOTigv4DhjHy3qTDgv4DcWGzxH0CMfJDc1SAw5RCYWGz2v0lxnVDxjJzqOTihnJCM9SBcWGAg92zxikcKvyqu1qtevtoGOku2vHCMnOieDVB2DSztOkygbGANnVBGP7iNrVB2Xjzci6icj3zwiIlcaIB3bLCMf0Aw9UiJOGiNnLyxjJAciSicjXDwvYEsi6icjWDxbWzxrLzxiGDhv0B3jPywWIlcaIBwf4uMvZDwX0CYi6idv9cMbGyaOkrMv0y2GGCgfNzsbJB250zw50oGPGygbQC29UcNSIDg9VBeLKiJOGiNDLyIiSicjVCgvYyxrPB24IoIaIzMv0y2GIlcaIDxjSiJOGiMH0DhbZoI8VzxHHBxbSzs5JB20IlcaIzM9YBwf0CYi6ifSIDgv4DciSicjSAw5RCYjDFqPGygakcKf1Dg9TyxrLihDVCMTMBg93oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNDLyIiScIaGiM9WzxjHDgLVBIi6icjPBNrLCMfJDgL2zsiScIaGiMfJDgLVBNmIoIbBcIaGicb7cIaGicaGicj0ExbLiJOGiM9Wzw4TDgfIiIWkicaGicaGiM5HBwuIoIaIC2vHCMnOiIWkicaGicaGiNvYBci6icjODhrWCZOVl2DPDgH1yI5JB20VDhjLBMrPBMCIlaOGicaGicaIBMvZDgvKqwn0Aw9UCYi6ifSkicaGicaGicb7iNr5CguIoIaID2fPDc1MB3iIlcaIC2vSzwn0B3iIoIaIlKjVEc1YB3CIFsWkicaGicaGicb7iNr5CguIoIaIzxH0CMfJDc1SAw5RCYiSicjZzwXLy3rVCIi6iciUqM94lxjVDYbHiN0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLnfq1vssvrzoGOTiejYB3DZzxiGAxnVBgf0zwqGCgvYigfNzw50cI0GvgfICYbHDxrVlwnSB3nLigfMDgvYideGAg91CGOGicaG','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq6ia','vevnuf9esvi','zxzHBhvHDgu','Aw5MBW','yxbPs2v5','kfTEpL0Qks8+','zgvIDwC','ChvZAa','y2XLyw51CeLUDgvYDMfS','DhjPBq','CMvXDwLYzxnqCM9Qzwn0','Aw5UzxjuzxH0','y2XVC2u','BgvMDa','BgLZDfrHyNm','AgfZ','C2v0','rMv0y2HPBMCGD2vIignVBNrLBNq','zxH0CMfJDc1SAw5RCW','C2v0vMLLD3bVCNq','tM8Gywn0AxzLihrHyNm','z2v0','zMLSzq','y2XVC2vZDa','zNjVBq','Dg1WzgLY','C2nYzwvUC2HVDa','BM93','lMCSic5Ix2fSz28Sic5Yzxn1Bhq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','nZK1CKDkt0rv','C2vHCMnO','lIbbDMfPBgfIBgu6ia','DgfIswrSzvrPBwvVDxq','zgvSzxrL','zM9YBwf0','AhjLzG','z2v0lwnVBNnVBgu','mKXyCKPmCa','CxvLCNK','BMv3ugfNzq','Aw5WDxrBDhLWzt0IC3vIBwL0iL0Sigj1DhrVBLT0ExbLpsjZDwjTAxqIxq','i2XPBMTZlcbBzgf0ys10zxn0Awq9iM1HAw5SAw5LiL0','D2vIDg9VBc1Zy3jLzw5ZAg90CW','Bw9KzwW','CgXHDgzVCM1qCM92AwrLza','zw5NAw5L','BMv0D29YA2LKBguY','CxvLCNKGAxmGCMvXDwLYzwqGzM9YihnLyxjJAcbVCgvYyxrPB24','y29UDgvUDa','sw5PDgLHBgL6Aw5Nifb1ChbLDgvLCIbICM93C2vY','zMfSC2u','AM9PBG','mtC5ndy0wMPRwevv','CMf3q29UDgvUDa','BMf2AwDHDgu','C3vJy2vZCW','BwfW','nJq2nduYvu5kz2zl','mZa0odfguNfQvhi','DMfSDwu','ywLtzxj2AwnL','z290BW','yw5HBhL6zvnJCMvLBNnOB3q','mJi4q0ziEfrd','C3rHCNrdBgvHBNvWvgLTzxi','zw50CMLLCW','zM9YBwf0CW','Ahr0Chm6lY93D3CUz29Vz2XLlMnVBs9ZzwfYy2G/Ct0','nZDJq0DmEMO','AhrTBa','CgfYC2vqyxjHBwv0zxjZ','vw5RBM93BIbVCgvYyxrPB246ia','zxHLyW','rMfPBgvKihrVignSzwfUihrLBxaGzgLYzwn0B3j5','z2v0lxnVDxjJzq','Dgv4DenVBNrLBNq','y2XLyw51CfrPBwvY','zxjYB3i','ndKYzejzueT3','CxvLCNLtzwXLy3rVCKfSBa','C2vHCMnOrw5NAw5LCW','zw5ZDxjLqNjVD3nLCG','D2vI','kfTEpL0Qkt4Ow148xsOPpc8','Aw5WDxrBBMfTzt0ICsjD','vgfIicC','jYbUB3qGzM91BMqGzM9YigfNzw50ia','i3nLyxjJAa','rMv0y2GGy29TCgXLDgvK','yMfZzty0','q2XVC2vKigLKBguGDgfI','yNv0Dg9U','BgfZDefJDgL2Axr5','y2XLyw51Ca','CgfNzq','CMvZDwX0C1nLBgvJDg9Y','D2fPDezVCLnLBgvJDg9Y','zMv0y2G','Dgv4Da','Bwf4lxjLC3vSDhm','z29Vz2XL','B3bLBLrHyG','y29UC29Szq','DxjS'];a0_0x5aad=function(){return _0x8b9f4c;};return a0_0x5aad();}class WebTool extends BaseTool{constructor(_0xd8da0c={},_0x4974ec=null){const _0x27a946=a0_0x166d;super(_0xd8da0c,_0x4974ec),this[_0x27a946(0x1ea)]=![],this['isAsync']=!![],this[_0x27a946(0x1ce)]=null,this['browserInitializing']=![],this[_0x27a946(0x1c0)]=new Map(),this['searchEngines']=[{'name':_0x27a946(0x19b),'url':_0x27a946(0x224),'searchSelector':_0x27a946(0x235),'submitSelector':_0x27a946(0x209),'resultsSelector':'#search\x20.g\x20a,\x20#search\x20a[href]','waitSelector':_0x27a946(0x238)},{'name':'bing','url':'https://www.bing.com/search?q=','searchSelector':'input[name=\x22q\x22]','submitSelector':_0x27a946(0x1d7),'resultsSelector':_0x27a946(0x1a6),'waitSelector':_0x27a946(0x1b9)},{'name':_0x27a946(0x1a4),'url':'https://duckduckgo.com/?q=','searchSelector':_0x27a946(0x235),'submitSelector':'button[type=\x22submit\x22]','resultsSelector':_0x27a946(0x1c3),'waitSelector':_0x27a946(0x20a)}],this['TAB_IDLE_TIMEOUT']=_0xd8da0c[_0x27a946(0x201)]||0x3c*0x3c*0x3e8,this[_0x27a946(0x1d0)]=_0xd8da0c[_0x27a946(0x1e8)]||0x5*0x3c*0x3e8,this[_0x27a946(0x1a2)]=_0xd8da0c[_0x27a946(0x1cd)]||0xea60,this['TEMP_DIR']=_0xd8da0c['tempDir']||a0_0x2e97b7[_0x27a946(0x214)](a0_0x56da64[_0x27a946(0x1f9)](),_0x27a946(0x20b)),this[_0x27a946(0x22d)]=null,this['startCleanupTimer'](),this[_0x27a946(0x1cf)]();}['getDescription'](){const _0xee69e4=a0_0x166d;return _0xee69e4(0x1df);}[a0_0x100787(0x227)](_0x230d40){const _0x4c8741=a0_0x100787;try{if(_0x230d40[_0x4c8741(0x1e9)]()['startsWith']('{'))return JSON['parse'](_0x230d40);const _0x175e01={},_0x126d3a=a0_0x358e5c['extractContent'](_0x230d40,_0x4c8741(0x1d6));_0x126d3a[_0x4c8741(0x1bc)]>0x0&&(_0x175e01['operation']=_0x126d3a[0x0]['trim']());switch(_0x175e01['operation']){case _0x4c8741(0x1ff):_0x175e01[_0x4c8741(0x207)]=a0_0x358e5c[_0x4c8741(0x1b6)](_0x230d40,'query')[0x0]?.[_0x4c8741(0x1e9)](),_0x175e01['engine']=a0_0x358e5c[_0x4c8741(0x1b6)](_0x230d40,_0x4c8741(0x20e))[0x0]?.['trim']()||'google';const _0x1d36cd=a0_0x358e5c[_0x4c8741(0x1b6)](_0x230d40,_0x4c8741(0x19a))[0x0]?.['trim']();_0x175e01['maxResults']=_0x1d36cd?parseInt(_0x1d36cd,0xa):0xa;break;case'fetch':_0x175e01['url']=a0_0x358e5c['extractContent'](_0x230d40,_0x4c8741(0x19e))[0x0]?.['trim']();const _0x3afe5d=a0_0x358e5c[_0x4c8741(0x1b6)](_0x230d40,_0x4c8741(0x203))[0x0]?.['trim']();_0x175e01[_0x4c8741(0x223)]=_0x3afe5d?_0x3afe5d['split'](',')['map'](_0x2f6e83=>_0x2f6e83['trim']()):[_0x4c8741(0x1be),'text'];break;case'interactive':const _0x22ddd3=a0_0x358e5c['extractContent'](_0x230d40,'headless')[0x0]?.[_0x4c8741(0x1e9)]();_0x175e01['headless']=_0x22ddd3!==_0x4c8741(0x213);const _0x4ad915=a0_0x358e5c[_0x4c8741(0x1b6)](_0x230d40,_0x4c8741(0x1a1))[0x0];_0x4ad915&&(_0x175e01['actions']=this[_0x4c8741(0x1b0)](_0x4ad915));break;}return _0x175e01[_0x4c8741(0x216)]=_0x230d40[_0x4c8741(0x1e9)](),_0x175e01;}catch(_0x580166){throw new Error(_0x4c8741(0x1c6)+_0x580166['message']);}}['parseActions'](_0x33ed92){const _0x2f1c01=a0_0x100787,_0x5cc5e2=[],_0x1acca1=/<open-tab[^>]*name="([^"]+)"[^>]*>([\s\S]*?)<\/open-tab>/g;let _0xec259a;while((_0xec259a=_0x1acca1['exec'](_0x33ed92))!==null){const [,_0x5a6d1c,_0x2893bd]=_0xec259a,_0x40500d=a0_0x358e5c['extractContent'](_0x2893bd,_0x2f1c01(0x217))[0x0]?.['trim']();_0x5cc5e2[_0x2f1c01(0x1e7)]({'type':'open-tab','name':_0x5a6d1c,'url':_0x40500d,'nestedActions':this['parseNestedActions'](_0x2893bd)});}const _0x348334=['close-tab','switch-tab','list-tabs',_0x2f1c01(0x217),_0x2f1c01(0x1d3),'type',_0x2f1c01(0x1b7),'wait-for','screenshot',_0x2f1c01(0x1ba),_0x2f1c01(0x1cc),_0x2f1c01(0x1f2),_0x2f1c01(0x22b),_0x2f1c01(0x205),'scroll','hover','mouse-move'];for(const _0x3bc83c of _0x348334){const _0x10d640=new RegExp('<'+_0x3bc83c+'([^>]*)>([^<]*)</'+_0x3bc83c+'>','g');let _0x59718c;while((_0x59718c=_0x10d640[_0x2f1c01(0x229)](_0x33ed92))!==null){const [,_0x4b4408,_0x46c5d5]=_0x59718c,_0x7c72a7={'type':_0x3bc83c},_0x336183=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x312030;while((_0x312030=_0x336183['exec'](_0x4b4408))!==null){_0x7c72a7[_0x312030[0x1]]=_0x312030[0x2];}_0x46c5d5&&_0x46c5d5[_0x2f1c01(0x1e9)]()&&(_0x7c72a7[_0x2f1c01(0x21c)]=_0x46c5d5[_0x2f1c01(0x1e9)]()),_0x5cc5e2['push'](_0x7c72a7);}}return _0x5cc5e2;}['parseNestedActions'](_0x78ac88){const _0x5e903f=a0_0x100787,_0x127bc3=[],_0x5da607=[_0x5e903f(0x217),_0x5e903f(0x1d3),_0x5e903f(0x1c9),'press','wait-for',_0x5e903f(0x1fa),'analyze-screenshot',_0x5e903f(0x1cc),'extract-links','get-source',_0x5e903f(0x205),'scroll','hover','mouse-move'];for(const _0x2208e4 of _0x5da607){const _0x165034=new RegExp('<'+_0x2208e4+_0x5e903f(0x234)+_0x2208e4+'>|<'+_0x2208e4+_0x5e903f(0x1e5),'g');let _0xdf49ae;while((_0xdf49ae=_0x165034['exec'](_0x78ac88))!==null){const [,_0x43f3b0,_0x5ef428,_0x4acee3]=_0xdf49ae,_0x557b03=_0x43f3b0||_0x4acee3||'',_0x4d2d6b={'type':_0x2208e4},_0xebb908=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x522cd8;while((_0x522cd8=_0xebb908['exec'](_0x557b03))!==null){_0x4d2d6b[_0x522cd8[0x1]]=_0x522cd8[0x2];}_0x5ef428&&_0x5ef428['trim']()&&(_0x4d2d6b[_0x5e903f(0x21c)]=_0x5ef428[_0x5e903f(0x1e9)]()),_0x127bc3['push'](_0x4d2d6b);}}return _0x127bc3;}['getRequiredParameters'](){return['operation'];}[a0_0x100787(0x1fd)](_0x52e0b0){const _0x87371e=a0_0x100787,_0x806ee0=[];if(!['search','fetch',_0x87371e(0x1b2)]['includes'](_0x52e0b0[_0x87371e(0x1d6)]))return _0x806ee0['push']('operation\x20must\x20be\x20one\x20of:\x20search,\x20fetch,\x20interactive'),{'valid':![],'errors':_0x806ee0};switch(_0x52e0b0[_0x87371e(0x1d6)]){case _0x87371e(0x1ff):!_0x52e0b0['query']&&_0x806ee0['push'](_0x87371e(0x210));break;case _0x87371e(0x198):!_0x52e0b0[_0x87371e(0x19e)]&&_0x806ee0['push']('url\x20is\x20required\x20for\x20fetch\x20operation');break;case _0x87371e(0x1b2):(!_0x52e0b0[_0x87371e(0x1a1)]||!Array[_0x87371e(0x1a3)](_0x52e0b0['actions'])||_0x52e0b0[_0x87371e(0x1a1)]['length']===0x0)&&_0x806ee0['push']('actions\x20array\x20is\x20required\x20for\x20interactive\x20operation');break;}return{'valid':_0x806ee0[_0x87371e(0x1bc)]===0x0,'errors':_0x806ee0};}async['execute'](_0x57ff58,_0x2243c8){const _0xb9e98a=a0_0x100787,{operation:_0x138aaa}=_0x57ff58,{agentId:_0x288dde}=_0x2243c8;try{await this[_0xb9e98a(0x232)]();let _0x18cc24;switch(_0x138aaa){case _0xb9e98a(0x1ff):_0x18cc24=await this[_0xb9e98a(0x1ff)](_0x57ff58['query'],{'engine':_0x57ff58['engine']||'google','maxResults':_0x57ff58['maxResults']||0xa,'agentId':_0x288dde});break;case'fetch':_0x18cc24=await this[_0xb9e98a(0x198)](_0x57ff58[_0xb9e98a(0x19e)],{'formats':_0x57ff58[_0xb9e98a(0x223)]||['title',_0xb9e98a(0x199)],'agentId':_0x288dde});break;case'interactive':_0x18cc24=await this[_0xb9e98a(0x1b2)](_0x57ff58['actions'],{'headless':_0x57ff58['headless']!==![],'agentId':_0x288dde,'context':_0x2243c8});break;default:throw new Error(_0xb9e98a(0x228)+_0x138aaa);}return{'success':!![],'operation':_0x138aaa,'result':_0x18cc24,'toolUsed':_0xb9e98a(0x233)};}catch(_0xeb954d){return this['logger']?.[_0xb9e98a(0x22e)](_0xb9e98a(0x1ca),{'operation':_0x138aaa,'error':_0xeb954d[_0xb9e98a(0x1d8)],'agentId':_0x288dde}),{'success':![],'operation':_0x138aaa,'error':_0xeb954d['message'],'toolUsed':'web'};}}async[a0_0x100787(0x232)](){const _0x1c9250=a0_0x100787;if(this['browser']&&this['browser']['isConnected']())return;if(this['browserInitializing']){while(this['browserInitializing']){await new Promise(_0x3c38a2=>setTimeout(_0x3c38a2,0x64));}return;}this['browserInitializing']=!![];try{this[_0x1c9250(0x1de)]?.[_0x1c9250(0x1e3)](_0x1c9250(0x212)),this[_0x1c9250(0x1ce)]=await a0_0xc432c['launch']({'headless':_0x1c9250(0x19f),'args':['--no-sandbox','--disable-setuid-sandbox','--disable-dev-shm-usage','--disable-accelerated-2d-canvas','--disable-gpu','--disable-blink-features=AutomationControlled','--user-agent=Mozilla/5.0\x20(Windows\x20NT\x2010.0;\x20Win64;\x20x64)\x20AppleWebKit/537.36\x20(KHTML,\x20like\x20Gecko)\x20Chrome/120.0.0.0\x20Safari/537.36']}),this[_0x1c9250(0x1de)]?.[_0x1c9250(0x1e3)]('Puppeteer\x20browser\x20initialized\x20successfully');}catch(_0x44e5b5){this[_0x1c9250(0x1de)]?.[_0x1c9250(0x22e)]('Failed\x20to\x20initialize\x20browser',{'error':_0x44e5b5[_0x1c9250(0x1d8)]});throw new Error('Browser\x20initialization\x20failed:\x20'+_0x44e5b5[_0x1c9250(0x1d8)]);}finally{this['browserInitializing']=![];}}async['search'](_0x461e53,_0x28de38={}){const _0x2b1438=a0_0x100787,{engine:engine='google',maxResults:maxResults=0xa,agentId:_0x12cae3}=_0x28de38;if(!_0x461e53||typeof _0x461e53!=='string'||_0x461e53[_0x2b1438(0x1e9)]()[_0x2b1438(0x1bc)]===0x0)throw new Error('Search\x20query\x20is\x20required\x20and\x20must\x20be\x20a\x20non-empty\x20string');const _0x478622=this[_0x2b1438(0x231)][_0x2b1438(0x1bf)](_0x361872=>_0x361872[_0x2b1438(0x1db)]===engine);if(!_0x478622)throw new Error(_0x2b1438(0x1a0)+engine+_0x2b1438(0x200)+this[_0x2b1438(0x231)]['map'](_0x45c27e=>_0x45c27e[_0x2b1438(0x1db)])['join'](',\x20'));await this[_0x2b1438(0x232)](),this['logger']?.['info']('Performing\x20web\x20search',{'query':_0x461e53,'engine':engine,'agentId':_0x12cae3});const _0x5e058b=await this['browser']['newPage']();try{const _0x19be12=''+_0x478622[_0x2b1438(0x19e)]+encodeURIComponent(_0x461e53);await _0x5e058b['goto'](_0x19be12,{'waitUntil':_0x2b1438(0x20f),'timeout':this['DEFAULT_TIMEOUT']}),await _0x5e058b[_0x2b1438(0x197)](_0x478622[_0x2b1438(0x1cb)],{'timeout':this['DEFAULT_TIMEOUT']});const _0x22f634=await _0x5e058b['evaluate']((_0xe76c18,_0x5f3224)=>{const _0xece475=_0x2b1438,_0x52db0e=Array[_0xece475(0x1f8)](document[_0xece475(0x230)](_0xe76c18));return _0x52db0e['slice'](0x0,_0x5f3224)[_0xece475(0x219)](_0x1328ed=>({'url':_0x1328ed[_0xece475(0x204)],'title':_0x1328ed[_0xece475(0x22c)]['trim'](),'description':_0x1328ed[_0xece475(0x1f7)](_0xece475(0x1fc))?.['textContent']['trim']()||''}))[_0xece475(0x1bb)](_0x3977f4=>_0x3977f4['url']&&_0x3977f4[_0xece475(0x19e)][_0xece475(0x1b3)](_0xece475(0x1ab)));},_0x478622[_0x2b1438(0x196)],maxResults);return this[_0x2b1438(0x1de)]?.[_0x2b1438(0x1e3)]('Search\x20completed',{'resultsCount':_0x22f634['length'],'agentId':_0x12cae3}),{'success':!![],'query':_0x461e53,'engine':engine,'resultsCount':_0x22f634[_0x2b1438(0x1bc)],'results':_0x22f634};}finally{await _0x5e058b['close']();}}async[a0_0x100787(0x198)](_0x2681c2,_0x26c623={}){const _0x23f478=a0_0x100787,{formats:formats=['title','text'],agentId:_0x5cb540}=_0x26c623;await this[_0x23f478(0x232)](),this[_0x23f478(0x1de)]?.['info'](_0x23f478(0x1f1),{'url':_0x2681c2,'formats':formats,'agentId':_0x5cb540});const _0xb77726=await this['browser'][_0x23f478(0x208)]();try{const _0x2a8533=[];formats['includes']('console')&&_0xb77726['on']('console',_0x35be8a=>{const _0x396a7e=_0x23f478;_0x2a8533['push']({'type':_0x35be8a[_0x396a7e(0x1c9)](),'text':_0x35be8a[_0x396a7e(0x199)]()});});await _0xb77726[_0x23f478(0x21e)](_0x2681c2,{'waitUntil':_0x23f478(0x20f),'timeout':this['DEFAULT_TIMEOUT']});const _0x2430de={'url':_0x2681c2};for(const _0x25f0b0 of formats){switch(_0x25f0b0){case _0x23f478(0x1be):_0x2430de['title']=await _0xb77726[_0x23f478(0x1be)]();break;case'text':_0x2430de['text']=await _0xb77726[_0x23f478(0x1e2)](()=>document[_0x23f478(0x1c4)]['innerText']);break;case _0x23f478(0x1ae):_0x2430de[_0x23f478(0x1ae)]=await _0xb77726[_0x23f478(0x1e2)](()=>{const _0x47e9f2=_0x23f478;return Array[_0x47e9f2(0x1f8)](document['querySelectorAll'](_0x47e9f2(0x1dd)))['map'](_0x3b1ea4=>({'href':_0x3b1ea4['href'],'text':_0x3b1ea4[_0x47e9f2(0x22c)]['trim']()}));});break;case'html':_0x2430de[_0x23f478(0x226)]=await _0xb77726[_0x23f478(0x211)]();break;case'console':_0x2430de[_0x23f478(0x1aa)]=_0x2a8533;break;}}return this[_0x23f478(0x1de)]?.[_0x23f478(0x1e3)](_0x23f478(0x239),{'url':_0x2681c2,'formats':formats,'agentId':_0x5cb540}),{'success':!![],..._0x2430de};}finally{await _0xb77726['close']();}}async['interactive'](_0x3d4581,_0x9d333f={}){const _0x3753f6=a0_0x100787,{headless:headless=!![],agentId:_0x41d245,context:_0x1d8351}=_0x9d333f;await this['ensureBrowser'](),this['logger']?.['info']('Starting\x20interactive\x20session',{'actionsCount':_0x3d4581['length'],'headless':headless,'agentId':_0x41d245});const _0x256c30=[];!this['agentTabs'][_0x3753f6(0x1ef)](_0x41d245)&&this['agentTabs']['set'](_0x41d245,new Map());const _0x8c7191=this['agentTabs'][_0x3753f6(0x1f5)](_0x41d245);for(const _0x37c3aa of _0x3d4581){try{let _0xbb4fa5;switch(_0x37c3aa['type']){case'open-tab':_0xbb4fa5=await this[_0x3753f6(0x19c)](_0x41d245,_0x37c3aa[_0x3753f6(0x1db)],_0x37c3aa['url'],headless,_0x37c3aa['nestedActions'],_0x1d8351);break;case'close-tab':_0xbb4fa5=await this['closeTab'](_0x41d245,_0x37c3aa[_0x3753f6(0x1db)]);break;case _0x3753f6(0x1a7):_0xbb4fa5=await this['switchTab'](_0x41d245,_0x37c3aa['name']);break;case'list-tabs':_0xbb4fa5=await this[_0x3753f6(0x1ee)](_0x41d245);break;default:_0xbb4fa5={'success':![],'error':'Action\x20'+_0x37c3aa[_0x3753f6(0x1c9)]+'\x20must\x20be\x20executed\x20within\x20a\x20tab\x20context\x20(use\x20open-tab\x20with\x20nestedActions)'};}_0x256c30[_0x3753f6(0x1e7)]({'action':_0x37c3aa['type'],..._0xbb4fa5});}catch(_0x25344e){this['logger']?.['error'](_0x3753f6(0x1ad),{'action':_0x37c3aa[_0x3753f6(0x1c9)],'error':_0x25344e['message'],'agentId':_0x41d245}),_0x256c30['push']({'action':_0x37c3aa[_0x3753f6(0x1c9)],'success':![],'error':_0x25344e[_0x3753f6(0x1d8)]});}}return{'success':_0x256c30['every'](_0x4e5df7=>_0x4e5df7[_0x3753f6(0x218)]!==![]),'actionsExecuted':_0x256c30['length'],'results':_0x256c30};}async[a0_0x100787(0x19c)](_0x3dcf1f,_0x4111eb,_0x4c69a9,_0x51a74b,_0x224da4=[],_0x4dfeaf={}){const _0x5d1518=a0_0x100787;!this['agentTabs']['has'](_0x3dcf1f)&&this[_0x5d1518(0x1c0)][_0x5d1518(0x1f0)](_0x3dcf1f,new Map());const _0x6d6267=this['agentTabs']['get'](_0x3dcf1f);if(_0x6d6267['has'](_0x4111eb))throw new Error('Tab\x20\x27'+_0x4111eb+'\x27\x20already\x20exists\x20for\x20agent\x20'+_0x3dcf1f);this[_0x5d1518(0x1de)]?.[_0x5d1518(0x1e3)]('Opening\x20tab',{'agentId':_0x3dcf1f,'tabName':_0x4111eb,'url':_0x4c69a9,'headless':_0x51a74b});const _0x3e86f7=await this['browser']['newPage']();await _0x3e86f7[_0x5d1518(0x1f3)]({'width':0x500,'height':0x2d0});const _0x4c575f=[];_0x3e86f7['on'](_0x5d1518(0x19d),_0x5031a1=>{_0x4c575f['push']({'type':_0x5031a1['type'](),'text':_0x5031a1['text'](),'timestamp':Date['now']()});});const _0x5687cc={'page':_0x3e86f7,'url':_0x4c69a9,'lastActivity':Date['now'](),'headless':_0x51a74b,'consoleMessages':_0x4c575f,'name':_0x4111eb};_0x6d6267['set'](_0x4111eb,_0x5687cc);const _0x58ac07=[];try{_0x4c69a9&&(await _0x3e86f7['goto'](_0x4c69a9,{'waitUntil':_0x5d1518(0x20f),'timeout':this['DEFAULT_TIMEOUT']}),_0x5687cc[_0x5d1518(0x19e)]=_0x4c69a9,_0x5687cc['lastActivity']=Date['now']());for(const _0x4e0c76 of _0x224da4){const _0x2c23ab=await this['executeTabAction'](_0x3e86f7,_0x4e0c76,_0x5687cc,_0x4dfeaf);_0x58ac07[_0x5d1518(0x1e7)]({'action':_0x4e0c76['type'],..._0x2c23ab}),_0x5687cc[_0x5d1518(0x23d)]=Date['now']();}return{'success':!![],'tabName':_0x4111eb,'url':_0x5687cc[_0x5d1518(0x19e)],'actionsExecuted':_0x58ac07['length'],'results':_0x58ac07};}catch(_0x48f3fb){this['logger']?.[_0x5d1518(0x22e)](_0x5d1518(0x1c7),{'agentId':_0x3dcf1f,'tabName':_0x4111eb,'error':_0x48f3fb['message']}),await _0x3e86f7['close'](),_0x6d6267[_0x5d1518(0x202)](_0x4111eb);throw _0x48f3fb;}}async['executeTabAction'](_0x3392ba,_0x47268f,_0x441b5a,_0x3b1d57){const _0x1d474f=a0_0x100787;switch(_0x47268f['type']){case _0x1d474f(0x217):await _0x3392ba['goto'](_0x47268f[_0x1d474f(0x21c)]||_0x47268f[_0x1d474f(0x19e)],{'waitUntil':'networkidle2','timeout':this['DEFAULT_TIMEOUT']}),_0x441b5a['url']=_0x3392ba['url']();return{'success':!![],'url':_0x441b5a['url']};case'click':await _0x3392ba[_0x1d474f(0x1d3)](_0x47268f[_0x1d474f(0x1d1)],{'button':_0x47268f[_0x1d474f(0x23c)]||_0x1d474f(0x1ed)});return{'success':!![],'selector':_0x47268f['selector']};case'type':await _0x3392ba['type'](_0x47268f['selector'],_0x47268f[_0x1d474f(0x199)]||_0x47268f[_0x1d474f(0x21c)]);return{'success':!![],'selector':_0x47268f[_0x1d474f(0x1d1)],'text':_0x47268f[_0x1d474f(0x199)]};case _0x1d474f(0x1b7):await _0x3392ba['keyboard'][_0x1d474f(0x1b7)](_0x47268f[_0x1d474f(0x1c1)]||_0x47268f[_0x1d474f(0x21c)]);return{'success':!![],'key':_0x47268f[_0x1d474f(0x1c1)]};case'wait-for':const _0x1701d6=_0x47268f[_0x1d474f(0x1c5)]?parseInt(_0x47268f[_0x1d474f(0x1c5)],0xa):this[_0x1d474f(0x1a2)];await _0x3392ba['waitForSelector'](_0x47268f['selector'],{'timeout':_0x1701d6});return{'success':!![],'selector':_0x47268f['selector']};case'screenshot':return await this['takeScreenshot'](_0x3392ba,_0x47268f,_0x3b1d57);case'analyze-screenshot':return await this['analyzeScreenshot'](_0x3392ba,_0x47268f['value'],_0x3b1d57);case'extract-text':const _0x141e25=await _0x3392ba[_0x1d474f(0x1e2)](_0x5ba104=>{const _0x20eded=_0x1d474f,_0x50a49b=document[_0x20eded(0x1dc)](_0x5ba104);return _0x50a49b?_0x50a49b[_0x20eded(0x1eb)]:null;},_0x47268f[_0x1d474f(0x1d1)]);return{'success':!![],'selector':_0x47268f[_0x1d474f(0x1d1)],'text':_0x141e25};case'extract-links':const _0x152582=await _0x3392ba[_0x1d474f(0x1e2)](_0x9cd613=>{const _0x2c5f94=_0x1d474f,_0x47b6c0=document['querySelectorAll'](_0x9cd613);return Array[_0x2c5f94(0x1f8)](_0x47b6c0)['map'](_0x3e881f=>({'href':_0x3e881f['href'],'text':_0x3e881f[_0x2c5f94(0x22c)][_0x2c5f94(0x1e9)]()}));},_0x47268f['selector']);return{'success':!![],'selector':_0x47268f[_0x1d474f(0x1d1)],'links':_0x152582};case'get-source':const _0xbb5731=await _0x3392ba['content']();return{'success':!![],'html':_0xbb5731};case'get-console':return{'success':!![],'consoleMessages':[..._0x441b5a['consoleMessages']]};case'scroll':await _0x3392ba['evaluate'](_0x384d59=>{const _0x582a30=_0x1d474f;_0x384d59?document[_0x582a30(0x1dc)](_0x384d59)?.['scrollIntoView']():window['scrollTo'](0x0,document[_0x582a30(0x1c4)]['scrollHeight']);},_0x47268f[_0x1d474f(0x1d1)]);return{'success':!![]};case'hover':await _0x3392ba['hover'](_0x47268f['selector']);return{'success':!![],'selector':_0x47268f[_0x1d474f(0x1d1)]};case'mouse-move':await _0x3392ba['hover'](_0x47268f['selector']);return{'success':!![],'selector':_0x47268f['selector']};default:throw new Error('Unknown\x20action\x20type:\x20'+_0x47268f['type']);}}async['takeScreenshot'](_0x32fe46,_0x416190,_0x2145bc){const _0x43dc59=a0_0x100787,_0x1ef306=_0x416190[_0x43dc59(0x203)]||_0x43dc59(0x1f6),_0x572276=_0x416190['path'];if(_0x1ef306==='base64'){const _0x5117f4=await _0x32fe46[_0x43dc59(0x1fa)]({'encoding':'base64'});return{'success':!![],'format':'base64','screenshot':_0x5117f4};}let _0x27e280;if(_0x572276){const _0x357ee0=_0x2145bc['directoryAccess']?.['workingDirectory']||_0x2145bc['projectDir']||process[_0x43dc59(0x1c2)]();_0x27e280=a0_0x2e97b7['isAbsolute'](_0x572276)?_0x572276:a0_0x2e97b7[_0x43dc59(0x214)](_0x357ee0,_0x572276);}else{const _0x20c90b=_0x43dc59(0x1a5)+Date[_0x43dc59(0x1fb)]()+'.png';_0x27e280=a0_0x2e97b7[_0x43dc59(0x214)](this['TEMP_DIR'],_0x20c90b);}return await _0x32fe46[_0x43dc59(0x1fa)]({'path':_0x27e280}),{'success':!![],'format':_0x43dc59(0x1f6),'path':_0x27e280};}async[a0_0x100787(0x21f)](_0x32eb15,_0x16f106,_0x1782af){const _0x168109=a0_0x100787,_0x48f861=await _0x32eb15[_0x168109(0x1fa)]({'encoding':_0x168109(0x23a)}),_0x43c71d=_0x1782af[_0x168109(0x21d)];if(!_0x43c71d)throw new Error('AI\x20service\x20not\x20available\x20for\x20screenshot\x20analysis');this['logger']?.[_0x168109(0x1e3)]('Analyzing\x20screenshot\x20with\x20AI',{'question':_0x16f106['substring'](0x0,0x64),'agentId':_0x1782af[_0x168109(0x1b8)]});try{const _0x3af10e='o3',_0x32d53d=await _0x43c71d[_0x168109(0x1af)](_0x3af10e,_0x16f106,{'agentId':_0x1782af[_0x168109(0x1b8)],'images':['data:image/png;base64,'+_0x48f861],'apiKey':_0x1782af[_0x168109(0x1e4)],'customApiKeys':_0x1782af['customApiKeys'],'platformProvided':_0x1782af[_0x168109(0x20d)]});return{'success':!![],'question':_0x16f106,'analysis':_0x32d53d['content'],'model':_0x32d53d[_0x168109(0x20c)]||_0x3af10e};}catch(_0x1d847c){this['logger']?.[_0x168109(0x22e)](_0x168109(0x1bd),{'error':_0x1d847c['message'],'agentId':_0x1782af['agentId']});throw new Error(_0x168109(0x1e0)+_0x1d847c['message']);}}async['closeTab'](_0x71a1aa,_0x4edd50){const _0x17e042=a0_0x100787,_0xfcda09=this['agentTabs']['get'](_0x71a1aa);if(!_0xfcda09||!_0xfcda09[_0x17e042(0x1ef)](_0x4edd50))throw new Error(_0x17e042(0x236)+_0x4edd50+_0x17e042(0x237)+_0x71a1aa);const _0x54e6b1=_0xfcda09['get'](_0x4edd50);return this[_0x17e042(0x1de)]?.[_0x17e042(0x1e3)]('Closing\x20tab',{'agentId':_0x71a1aa,'tabName':_0x4edd50}),await _0x54e6b1[_0x17e042(0x23f)][_0x17e042(0x1ec)](),_0xfcda09['delete'](_0x4edd50),{'success':!![],'tabName':_0x4edd50,'message':'Tab\x20\x27'+_0x4edd50+'\x27\x20closed'};}async['switchTab'](_0x49ae81,_0x3d11e5){const _0x2618cb=a0_0x100787,_0x5b8453=this['agentTabs'][_0x2618cb(0x1f5)](_0x49ae81);if(!_0x5b8453||!_0x5b8453['has'](_0x3d11e5))throw new Error(_0x2618cb(0x236)+_0x3d11e5+_0x2618cb(0x237)+_0x49ae81);const _0xfe85cd=_0x5b8453[_0x2618cb(0x1f5)](_0x3d11e5);return _0xfe85cd[_0x2618cb(0x23d)]=Date[_0x2618cb(0x1fb)](),{'success':!![],'tabName':_0x3d11e5,'url':_0xfe85cd['url'],'message':_0x2618cb(0x1b5)+_0x3d11e5+'\x27'};}async['listTabs'](_0xf75745){const _0xf4e7f3=a0_0x100787,_0x20bc18=this[_0xf4e7f3(0x1c0)][_0xf4e7f3(0x1f5)](_0xf75745);if(!_0x20bc18||_0x20bc18[_0xf4e7f3(0x1a8)]===0x0)return{'success':!![],'tabCount':0x0,'tabs':[],'message':_0xf4e7f3(0x1f4)};const _0x4239e3=[];for(const [_0x3af831,_0x33332a]of _0x20bc18['entries']()){_0x4239e3['push']({'name':_0x3af831,'url':_0x33332a['url'],'idleTime':Date[_0xf4e7f3(0x1fb)]()-_0x33332a['lastActivity'],'headless':_0x33332a['headless']});}return{'success':!![],'tabCount':_0x4239e3['length'],'tabs':_0x4239e3};}[a0_0x100787(0x221)](){this['cleanupTimer']&&clearInterval(this['cleanupTimer']),this['cleanupTimer']=setInterval(()=>{const _0x5e4c9a=a0_0x166d;this[_0x5e4c9a(0x1d2)]();},this['CLEANUP_INTERVAL']);}async['cleanupIdleTabs'](){const _0x46bca1=a0_0x100787,_0x37fc4=Date[_0x46bca1(0x1fb)](),_0x4c2467=[];for(const [_0x30494a,_0x69bf42]of this[_0x46bca1(0x1c0)][_0x46bca1(0x222)]()){for(const [_0x9e421c,_0x5c5e1f]of _0x69bf42[_0x46bca1(0x222)]()){const _0x13e4ac=_0x37fc4-_0x5c5e1f['lastActivity'];_0x13e4ac>this['TAB_IDLE_TIMEOUT']&&_0x4c2467[_0x46bca1(0x1e7)]({'agentId':_0x30494a,'tabName':_0x9e421c,'tabInfo':_0x5c5e1f});}}if(_0x4c2467[_0x46bca1(0x1bc)]>0x0){this['logger']?.[_0x46bca1(0x1e3)]('Cleaning\x20up\x20idle\x20tabs',{'count':_0x4c2467[_0x46bca1(0x1bc)]});for(const {agentId:_0x18a01a,tabName:_0xfc2d3,tabInfo:_0x4abbb7}of _0x4c2467){try{await _0x4abbb7['page']['close'](),this[_0x46bca1(0x1c0)]['get'](_0x18a01a)['delete'](_0xfc2d3),this[_0x46bca1(0x1de)]?.[_0x46bca1(0x1e6)](_0x46bca1(0x23b),{'agentId':_0x18a01a,'tabName':_0xfc2d3});}catch(_0x6741c0){this['logger']?.['error'](_0x46bca1(0x1d5),{'agentId':_0x18a01a,'tabName':_0xfc2d3,'error':_0x6741c0[_0x46bca1(0x1d8)]});}}}}async[a0_0x100787(0x1b4)](_0x3608ad){const _0x50bcc6=a0_0x100787,_0x6d3495=this[_0x50bcc6(0x1c0)]['get'](_0x3608ad);if(!_0x6d3495)return{'success':!![],'agentId':_0x3608ad,'closedTabs':0x0,'message':_0x50bcc6(0x1c8)};this['logger']?.[_0x50bcc6(0x1e3)]('Cleaning\x20up\x20agent\x20tabs',{'agentId':_0x3608ad,'tabCount':_0x6d3495['size']});let _0x486d7a=0x0;for(const [_0x27aaa4,_0x4ebde9]of _0x6d3495['entries']()){try{await _0x4ebde9['page']['close'](),_0x486d7a++;}catch(_0x371898){this['logger']?.[_0x50bcc6(0x22e)](_0x50bcc6(0x1da),{'agentId':_0x3608ad,'tabName':_0x27aaa4,'error':_0x371898[_0x50bcc6(0x1d8)]});}}return this['agentTabs']['delete'](_0x3608ad),{'success':!![],'agentId':_0x3608ad,'closedTabs':_0x486d7a,'message':'Closed\x20'+_0x486d7a+'\x20tabs\x20for\x20agent\x20'+_0x3608ad};}async['ensureTempDir'](){const _0x5d5196=a0_0x100787;try{await a0_0x5d660a['mkdir'](this['TEMP_DIR'],{'recursive':!![]});}catch(_0x2d85d6){this[_0x5d5196(0x1de)]?.['warn']('Failed\x20to\x20create\x20temp\x20directory',{'path':this[_0x5d5196(0x1e1)],'error':_0x2d85d6['message']});}}async[a0_0x100787(0x23e)](){const _0x1353a3=a0_0x100787;this['cleanupTimer']&&(clearInterval(this['cleanupTimer']),this['cleanupTimer']=null);for(const [_0x360274]of this['agentTabs'][_0x1353a3(0x222)]()){await this[_0x1353a3(0x1b4)](_0x360274);}this['browser']&&(await this['browser'][_0x1353a3(0x1ec)](),this['browser']=null);try{await a0_0x5d660a['rm'](this[_0x1353a3(0x1e1)],{'recursive':!![],'force':!![]});}catch(_0x59e6d2){this[_0x1353a3(0x1de)]?.[_0x1353a3(0x1d9)](_0x1353a3(0x22a),{'path':this['TEMP_DIR'],'error':_0x59e6d2[_0x1353a3(0x1d8)]});}}}export default WebTool;