@loxia-labs/loxia-autopilot-one 1.0.14 → 1.0.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/agentActivityService.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/index-CR8edPA3.js +348 -0
- package/web-ui/build/static/index-uN7nOVvZ.css +1 -0
- package/web-ui/build/static/index-DXN850Y2.js +0 -400
- package/web-ui/build/static/index-an-YRzUX.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x90eebf=a0_0x2f8a;(function(_0x459f9c,_0x1cf72f){const _0x1a2d82=a0_0x2f8a,_0x2f6906=_0x459f9c();while(!![]){try{const _0x52c233=-parseInt(_0x1a2d82(0x19a))/0x1+parseInt(_0x1a2d82(0x134))/0x2*(parseInt(_0x1a2d82(0x18d))/0x3)+parseInt(_0x1a2d82(0xf5))/0x4*(parseInt(_0x1a2d82(0x144))/0x5)+parseInt(_0x1a2d82(0x1d3))/0x6*(parseInt(_0x1a2d82(0x1aa))/0x7)+parseInt(_0x1a2d82(0x1d5))/0x8*(parseInt(_0x1a2d82(0x14a))/0x9)+-parseInt(_0x1a2d82(0x124))/0xa+-parseInt(_0x1a2d82(0xf4))/0xb*(parseInt(_0x1a2d82(0xe4))/0xc);if(_0x52c233===_0x1cf72f)break;else _0x2f6906['push'](_0x2f6906['shift']());}catch(_0x1b5616){_0x2f6906['push'](_0x2f6906['shift']());}}}(a0_0xa5e7,0xf225e));import{BaseTool}from'./baseTool.js';function a0_0xa5e7(){const _0x40e6d8=['y3vYBa','zMLUzcaVyW','zgLYzwn0B3j5lwnYzwf0zq','zMLSzs1ZzwfYy2G','DgfZA2XPC3q','Bwf4q29TBwfUzefNzu1PBNv0zxm','z2v0rgvZy3jPChrPB24','cGPsrvfvsvjftuvovfm6cJeUie1HA2uGDgHLignVBw1HBMqGD29YAYbJB3jYzwn0BhKGAw4G','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','mZG4nty2mgfKyvLPsq','CMvHC29U','nJa0mJrNqw5VBK0','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','y29TCgf0AwjSzq','ywn0Aw9UCW','BgLZDc1KAxjLy3rVCNK','y2HHBMDLlwrPCMvJDg9YEq','zgvMia','CgfYC2vqyxjHBwv0zxjZ','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','yNvPBhrPBG','AxnbBgXVD2vKq29TBwfUza','zg93BMXVywq','ugfZC3DVCMqGChjVBxb0','vhjHBNnSyxrLihrOAxmGy29TBwfUzcb0BYb3B3jRignVCNjLy3rSEsbPBIa','BMf0AxzL','tw92zs1jDgvTicqXicqY','C2LTCgXL','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','C3rYAw5N','oGOkt1jjr0LoquWGq09ntufordOkygbGcG','quKGDhjHBNnSyxrPB24GBM90igf2ywLSywjSzsaTig1PC3nPBMCGy29UDgv4Da','zgv0zwn0zwruzxjTAw5HBa','r2vUzxjPyYbPBNb1DcbWCM9TChqGzgv0zwn0zwq','qwDLBNqGy29TBwfUzhmGy2XLyw5Lzcb1Ca','tMv3luL0zw0Glvr5CguGrMLSzq','yxjJAgL2zq','DgfZA2TPBgW','AxntAw1WBgvdB21Tyw5K','quKGDhjHBNnSyxrPB24GzMfPBgvKlcbMywXSAw5NigjHy2SGDg8GC2LTCgXLihrYyw5ZBgf0Aw9U','zw52','sgL0igvUDgvY','DgfZA2TPBgWGl1bjrcaKmq','ksa+ia','u2vSzwn0Aw9UihbYB21WDa','y29Kzq','C3rKB3v0qNvMzMvY','Cg93zxjZAgvSBa','vgvYBwLUywWGzgv0zwn0zwq','C2XPy2u','y29TBwfUzeLK','Dw5RBM93BG','DhLWzsbUDwWGpG','BgvUz3rO','C3vJy2vZCW','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwq','zMLSDgvY','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','zgLYzwn0B3j5lwn1CNjLBNq','ywX0zxjUyxrPDMvZ','ihX8ia','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','y29UDgLUDwu','CgLK','y29TBwfUzfrYywnRzxi','r2vUzxjPyYbPBNb1DcbWCM9TChq','Dg9VBhnszwDPC3rYEq','ywDLBNrjza','y2f0zwDVCNK','r2v0luXVy2f0Aw9U','DgvZDa','DxnLCM5HBwu','Aw5KzxG','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','Aw50zwDLCG','CM1KAxi','CgvYBwLZC2LVBNm','Dgv4Dc1WCM9JzxnZAw5N','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','q3jLyxrLzcbKAxjLy3rVCNK6ia','uMvTB3zLluL0zw0Gjde','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','B2jQzwn0','rxHLy3v0Aw5NignVBw1HBMq6ia','Aw5MBW','C3vIC3rYAw5N','y29TBwfUzfr5Cgu','EwvZlw5V','y2XLyxjxB3jRAw5NrgLYzwn0B3j5','ywXSB3DLzenVBw1HBMrZ','C2v0','z3jLCa','zgv0zwn0sgfUzW','Dw5PEc1ZDhLSzs1WyxrOCW','C3rKzxjY','zw52AxjVBM1LBNq','tw92zs1jDgvT','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','ChjPBNrM','zM9Yia','BM93','mte2nenbsgLLBG','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','CgXHDgzVCM1qCM92AwrLza','CMvXDwLYzxnqCM9Qzwn0','ChjVy2vZCY1RAwXS','y21K','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','DgvYBwLUywW','C3rHDa','AxnbyNnVBhv0zq','DhLWzq','ig1PBgXPC2vJB25KCW','z2v0ugfYyw1LDgvYu2nOzw1H','y29TBwfUzeLKq291BNrLCG','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','q29UzMLYBwf0Aw9UihbYB21WDa','mJm2nZC1wMnxsM1P','mZK3mJrOqNDWz3i','yxjYyxK','C3rKAw4','qxr0zw1WDgLUzYbbssb0CMfUC2XHDgLVBIbMB3iGy29TCgXLEcbJB21Tyw5K','zwnOBYaN','y29TBwfUzenHDgvNB3j5','BxyGjdeGjdi','rxHLy3v0Aw5NignVBw1HBMqGD2L0AcbZCgf3BJOG','C3rHDgu','zMLSzs12Awv3Aw5N','zxHLy3v0Aw9UvgLTzq','wwvZl05Vihf1zxn0Aw9U','uMvTB3zLluL0zw0','CgLUzW','yMXVy2TLzenVBw1HBMrZ','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','z2v0vgLTzq','zxH0CMfJDenVBNrLBNq','D29YA2LUz0rPCMvJDg9YEq','zgfYD2LU','q29TBwfUzcbVDxrWDxqGy2H1BMS6ia','C3vNz2vZDgvKqwn0Aw9U','zgLYic9H','q29WEs1jDgvTicqXicqY','CM0GlxjMic8','DgLTzw91Da','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','vxnLCM5HBwuGChjVBxb0','C3bLy2LMAwnjC3n1zxm','zwnOBYaIjdeIid4','Dw5PEa','z2v0q29TBwfUzfn0yxr1CW','uhjLC3mGyw55igTLEq','Dgv4Dc1HBMfSExnPCW','D2LUmZi','DhjPBq','zgvS','Dg9ju09tDhjPBMC','Ahr0Cc1JBgLLBNq','zgLY','zMLSzs1KzwXLDgu','A2LSBa','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','u0HfteW','AgvSCa','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','Bwf4qMfJA2DYB3vUzenVBw1HBMrZugvYqwDLBNq','odi4odbXEgXfA00','zxHPDa','twf4Aw11BsbNBg9IywWGyMfJA2DYB3vUzcbJB21Tyw5KCYbLEgnLzwrLzcaO','zMLSzs1SAxn0Aw5N','jgvUDJO','zgvZy3jPChrPB24','Bwf0y2HLzfrLEhq','qwXSia','CgXHDgzVCM0','C3rHy2S','r2v0lunOAwXKsxrLBsbfBNy6','cLrLCM1PBMfSifrVB2W6iev4zwn1DguGC3LZDgvTignVBw1HBMrZigfUzcbTyw5Hz2uGDgvYBwLUywWGB3bLCMf0Aw9UCYbZywzLBhKUcGPjtvbpuLrbtLq6iezVCIbMAwXLigfUzcbKAxjLy3rVCNKGy3jLyxrPB24SihbYzwzLCIb1C2LUzYb0AguGrMLSzvn5C3rLBsb0B29SlGPszxnLCNzLihrOzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGB3bLCMf0Aw9UCYbSAwTLig5WBsWGz2L0lcbJDxjSlcbLDgmUcGPvu0fhrtOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaICNvUlwnVBw1HBMqIlcaIy29TBwfUzci6icjUCg0GAw5ZDgfSBcbLEhbYzxnZiN0ScIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIChjVAMvJDc9IywnRzw5KiN0kicbDcN0kygbGcGPtvvbqt1juruqGqunusu9ouZOklsbYDw4Ty29TBwfUzdOGrxHLy3v0zsbHignVBw1HBMqGkgnVBw1HBMqPcI0Gy2HHBMDLlwrPCMvJDg9YEtOGq2HHBMDLihDVCMTPBMCGzgLYzwn0B3j5icHKAxjLy3rVCNKPcI0GBgLZDc1KAxjLy3rVCNK6ieXPC3qGzgLYzwn0B3j5ignVBNrLBNrZicHKAxjLy3rVCNKPcI0Gy3jLyxrLlwrPCMvJDg9YEtOGq3jLyxrLigrPCMvJDg9YEsaOzgLYzwn0B3j5ksaTihbYzwzLCIbgAwXLu3LZDgvTihrVB2WklsbNzxqTD29YA2LUzY1KAxjLy3rVCNK6ieDLDcbJDxjYzw50igrPCMvJDg9YEqOkuefsqu1fvevsuZOklsbJB21Tyw5KoIbuAguGy29TBwfUzcb0BYbLEgvJDxrLcI0GzgLYzwn0B3j5oIbeAxjLy3rVCNKGCgf0AcbMB3iGBMf2AwDHDgLVBI9VCgvYyxrPB25ZcI0GDgLTzw91DdOGt3b0Aw9UywWGDgLTzw91DcbPBIbTAwXSAxnLy29UzhmGkg1HEca','y29UzMLYBwf0Aw9U','C29YDa','lunVBw1HBMq','igfJDgLVBNmGzMfPBgvK','mtKWz294Eeze','zNjVBq','CM1KAxiGjde','CgXHDgzVCM1uExbL','y3jLyxrLrgLYzwn0B3j5','zgLYzwn0B3j5','C2vUze1LC3nHz2u','q29WEs1jDgvT','A2LSBenVBw1HBMq','zgvSzxrL','vxnPBMCGquKGDhjHBNnSyxrPB24','z2v0','ChjVy2vZCW','C3bSAxq','DgfZA2TPBgWGl2yGl2LT','z3b0ltqTBwLUAq','odq1B2nkDhrp','y3DK','zMLSzq','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','zxjYB3i','q29TChjLC3mTqxjJAgL2zq','ntqWAvP5u1H1','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','DhjHBNnSyxrLvg9cyxnO','q29TBwfUzcbLEgL0zwqGD2L0AcbJB2rLia','AxnbCNjHEq','tgLZDgvKia','AwnHy2XZ','r2v0lunOAwXKsxrLBsaTuMvJDxjZzsb8ie1Lyxn1CMuTt2jQzwn0','qMfJA2DYB3vUzcbJB21Tyw5KigTPBgXLza','ChjVBxb0rgv0zwn0zwq','D2HPBguG','yM9VBgvHBG','y29UDgvUDa','zwnOBYaI','zgvIDwC','q29TBwfUzcbZCgf3BIbLCNjVCJOG','zxHLy3v0zunVBw1HBMrxAxrOu3bHD24','ignVBw1HBMq','ihn0ywXLignVBw1HBMrZ','y29TBwfUzeHPC3rVCNK','AxntEw1IB2XPy0XPBMS','BwvTB3j5lwLUzM8','BwvZC2fNzq','tufyx0nptu1btKrFquDfx01jtLvurvm','CM0Gjde','DhjHBNnSyxrL','Bwf0y2G','AxncBg9JA2vKq29TBwfUza','Bg9Nz2vY','z2v0qwDLBNrdB21Tyw5KCW','CgLWzq','Bw9YzsaRBG','z2v0u3vWCg9YDgvKqwn0Aw9UCW','AxneAxjLy3rVCNK','BgfZDe91Dhb1DfrPBwu','zxHPDenVzgu','y3jLyxrLlwrPCMvJDg9YEq','BwvUDq','y2XHC3nPzNLdB21Tyw5K','Ahr0Ca','cI0Gq2f0zwDVCNK6ia','Dg9mB3DLCKnHC2u','ChvZAa','AxnZDwvZ','D29YA2LUz0rPCMvJDg9YAwvZ','r2v0lvbYB2nLC3m','y3vYBcaTtYaKmq','BwfW','Dhj1zq','zgvSic9Mic9X','uhjVBxb0igrLDgvJDgvKigLUihn0zg91Da','DhjHBNnSyxrLq29TBwfUzfDPDgHbsq','sw52B2TLlvjLC3rnzxrOB2q','Dgv4Dc1LzgL0','Dgv4Dc1ZzwfYy2G','D3jPDgu','ywrKvg9iAxn0B3j5','lwnTzc0','BMv0D29YAY10zxn0','BMv3rgLYzwn0B3j5','Dw5PDMvYC2fS','A2LSBgvK','CNvUBMLUzW','zgv0zwn0uhjVBxb0','v2LUzg93CYbqB3DLCLnOzwXS','BgLZDerPCMvJDg9YEq','vgvYBwLUywWGrevcvuC6ifvZAw5NigfNzw50ignVBMzPz3vYzwqGD29YA2LUzYbKAxjLy3rVCNK6','mty5mtDeD3zwBM0','DMfSDwvZ','qwn0Aw9Uia','Bw92zsaKmsaKmG','BwTKAxiGjde','u3rVCc1qCM9JzxnZ','C3rKB3v0','zMLUzhn0CG','u0Lhs0Lmta','icyMia','zM9YBwf0','BMfTzq','AM9PBG','odC0mZKZt2zUA1b0','r2v0lunOAwXKsxrLBsaTuMvJDxjZzq','C3rHCNrZv2L0Aa','Bw92zq','CMvWBgfJzq','BwvZC2fNzvbYB2nLC3nVCG','zMLSzs1JCMvHDgu','Bg9N','q29TBwfUzcbMywLSzwq6ia','C3rHCNruAw1L','CMvSyxrPDMu','zNvUy3rPB24G','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','ChjVBxb0ugf0DgvYBNm','AgfSDa','AxndB21Tyw5Kq29TCgf0AwjSzq','mtrUvNLPwgC','zw5KvgLTzq','zgf0yq','vw5RBM93BIbHy3rPB24GDhLWztOG','CNvUlwnVBw1HBMq','zMLSzs1TB3zL','Dg9tDhjPBMC','D2fYBG','CgfZC3DVCMq','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','Aw5JBhvKzxm','C3rKzxjYqNvMzMvY','ywXSB3DLza','D2fPDgLUz19MB3jFAw5WDxq','zgLZAY1PBMzV','y29TBwfUza','y2f0','ChjVBxb0rgv0zwn0B3i','lI4U','r2v0lunVBNrLBNqGluHLywq','y2HHBMDLrgLYzwn0B3j5','A2v5ChjLC3m','A2v5CW','ywLtzxj2AwnL','yxn5BMm','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ','yMfZAa','BwTKAxi','u0Lhvevstq','yxbPs2v5','DhjHBNnSyxrLq29TBwfUza','zMfPBgvK'];a0_0xa5e7=function(){return _0x40e6d8;};return a0_0xa5e7();}import a0_0x10dea3 from'../utilities/tagParser.js';import a0_0x1d987a from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';import a0_0x2aced1 from'path';import a0_0xe9eda2 from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x2f8a(_0x1dda96,_0x4786c7){_0x1dda96=_0x1dda96-0xa2;const _0xa5e7f5=a0_0xa5e7();let _0x2f8a3f=_0xa5e7f5[_0x1dda96];if(a0_0x2f8a['MtdMDb']===undefined){var _0x2ed8e9=function(_0x1ad6ee){const _0x4a3a10='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x10dea3='',_0x1d987a='';for(let _0x2aced1=0x0,_0xe9eda2,_0x346b0f,_0x396eca=0x0;_0x346b0f=_0x1ad6ee['charAt'](_0x396eca++);~_0x346b0f&&(_0xe9eda2=_0x2aced1%0x4?_0xe9eda2*0x40+_0x346b0f:_0x346b0f,_0x2aced1++%0x4)?_0x10dea3+=String['fromCharCode'](0xff&_0xe9eda2>>(-0x2*_0x2aced1&0x6)):0x0){_0x346b0f=_0x4a3a10['indexOf'](_0x346b0f);}for(let _0x19b12b=0x0,_0x48ba5f=_0x10dea3['length'];_0x19b12b<_0x48ba5f;_0x19b12b++){_0x1d987a+='%'+('00'+_0x10dea3['charCodeAt'](_0x19b12b)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d987a);};a0_0x2f8a['JoRtmN']=_0x2ed8e9,a0_0x2f8a['vmzQRv']={},a0_0x2f8a['MtdMDb']=!![];}const _0x7030f1=_0xa5e7f5[0x0],_0x1dce30=_0x1dda96+_0x7030f1,_0x30ba96=a0_0x2f8a['vmzQRv'][_0x1dce30];return!_0x30ba96?(_0x2f8a3f=a0_0x2f8a['JoRtmN'](_0x2f8a3f),a0_0x2f8a['vmzQRv'][_0x1dce30]=_0x2f8a3f):_0x2f8a3f=_0x30ba96,_0x2f8a3f;}class PromptDetector{constructor(){const _0x15b8da=a0_0x2f8a;this[_0x15b8da(0x1a7)]=[{'pattern':/\(y\/n\)/i,'type':'yes-no','description':_0x15b8da(0x100)},{'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':_0x15b8da(0xd6),'description':_0x15b8da(0x100)},{'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':'Continue\x20prompt'},{'pattern':/proceed\?/i,'type':_0x15b8da(0xbb),'description':'Proceed\x20prompt'},{'pattern':/press any key to continue/i,'type':'keypress','description':_0x15b8da(0x115)},{'pattern':/press enter to continue/i,'type':_0x15b8da(0x1bf),'description':'Press\x20enter'},{'pattern':/hit enter to continue/i,'type':_0x15b8da(0x1bf),'description':_0x15b8da(0xa5)},{'pattern':/password:/i,'type':'password','description':_0x15b8da(0x1e1)},{'pattern':/enter password/i,'type':_0x15b8da(0x1b2),'description':'Password\x20prompt'},{'pattern':/passphrase:/i,'type':'password','description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':_0x15b8da(0xc4),'description':'Username\x20prompt'},{'pattern':/enter username/i,'type':'username','description':_0x15b8da(0x110)},{'pattern':/enter\s+\w+:/i,'type':'input','description':_0x15b8da(0xbe)},{'pattern':/please enter/i,'type':'input','description':'Generic\x20input\x20prompt'},{'pattern':/input:/i,'type':'input','description':_0x15b8da(0xbe)},{'pattern':/are you sure\?/i,'type':_0x15b8da(0x130),'description':_0x15b8da(0xf3)},{'pattern':/do you want to/i,'type':_0x15b8da(0x130),'description':_0x15b8da(0xf3)},{'pattern':/would you like to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':'selection','description':_0x15b8da(0xa8)},{'pattern':/choose/i,'type':'selection','description':_0x15b8da(0xa8)},{'pattern':/\d+\)\s+\w+/g,'type':_0x15b8da(0x16f),'description':'Menu\x20selection'}];}['detectPrompt'](_0x346b0f,_0x396eca='stdout'){const _0x46740d=a0_0x2f8a;if(!_0x346b0f||_0x346b0f[_0x46740d(0x118)]()[_0x46740d(0xb1)]===0x0)return null;const _0x19b12b=_0x346b0f[_0x46740d(0x141)]('\x0a'),_0x48ba5f=_0x19b12b['slice'](-0x5)['join']('\x0a');for(const _0x1a7f17 of this['promptPatterns']){const _0x2b6420=_0x48ba5f[_0x46740d(0x164)](_0x1a7f17['pattern']);if(_0x2b6420)return{'detected':!![],'type':_0x1a7f17['type'],'description':_0x1a7f17['description'],'matchedText':_0x2b6420[0x0],'matchIndex':_0x2b6420[_0x46740d(0xc5)],'source':_0x396eca,'fullContext':_0x48ba5f,'timestamp':Date['now']()};}const _0x4308de=_0x19b12b[_0x19b12b[_0x46740d(0xb1)]-0x1]||'';if(_0x4308de[_0x46740d(0x118)]()[_0x46740d(0xb1)]>0x0){const _0x2e2233=/:\s*$/['test'](_0x4308de),_0x2cda4e=/\?\s*$/[_0x46740d(0xc3)](_0x4308de);if(_0x2e2233||_0x2cda4e){const _0x237114=/\b(enter|type|provide|specify|input)\b/i['test'](_0x4308de);if(_0x237114)return{'detected':!![],'type':'generic','description':_0x46740d(0x1eb),'matchedText':_0x4308de[_0x46740d(0x118)](),'source':_0x396eca,'fullContext':_0x48ba5f,'timestamp':Date['now'](),'confidence':0.7};}}return null;}[a0_0x90eebf(0xdb)](_0x49e97d,_0x42ed29=0x7530){const _0x22904a=Date['now'](),_0x457de7=_0x22904a-_0x49e97d;return{'isHanging':_0x457de7>=_0x42ed29,'timeSinceLastOutput':_0x457de7,'threshold':_0x42ed29,'likelyWaiting':_0x457de7>=_0x42ed29/0x2};}}class TerminalTool extends BaseTool{constructor(_0x4b0a77={},_0x256451=null){const _0x4617d8=a0_0x90eebf;super(_0x4b0a77,_0x256451),this[_0x4617d8(0xe7)]=![],this['isAsync']=![],this[_0x4617d8(0x10e)]=_0x4b0a77[_0x4617d8(0x10e)]||0x1d4c0,this[_0x4617d8(0xe0)]=_0x4b0a77['maxConcurrentOperations']||0x3,this['workingDirectories']=new Map(),this['commandHistory']=[],this[_0x4617d8(0xd8)]=_0x4b0a77[_0x4617d8(0xd8)]||null,this[_0x4617d8(0x103)]=_0x4b0a77[_0x4617d8(0x103)]||[_0x4617d8(0x10d),_0x4617d8(0x197),_0x4617d8(0x17b),'shutdown','reboot',_0x4617d8(0x1a8)],this['directoryAccessManager']=new a0_0x1d987a(_0x4b0a77,_0x256451),this['promptDetector']=new PromptDetector(),this[_0x4617d8(0xbd)]=new Map(),this['commandIdCounter']=0x0,this[_0x4617d8(0xcd)]=_0x4b0a77[_0x4617d8(0x123)]||0x5,this[_0x4617d8(0x10f)]=_0x4b0a77['maxBackgroundCommandsGlobal']||0x14,this['MAX_COMMAND_AGE_MINUTES']=_0x4b0a77[_0x4617d8(0x1cf)]||0x3c,this['detectedTerminal']=null,this[_0x4617d8(0x137)]=null,this['initializeTerminalDetection']();}[a0_0x90eebf(0x1d0)](){const _0x5817c8=a0_0x90eebf;return _0x5817c8(0x12f)+this['timeout']+'ms)\x0a-\x20async:\x20Whether\x20to\x20run\x20command\x20asynchronously\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aRun\x20npm\x20install:\x0a```json\x0a{\x22toolId\x22:\x20\x22terminal\x22,\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22npm\x20install\x22}]}\x0a```\x0a\x0aGit\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22git\x20status\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22git\x20add\x20.\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22git\x20commit\x20-m\x20\x5c\x22Update\x20files\x5c\x22\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aChange\x20directory\x20and\x20build:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22change-directory\x22,\x20\x22directory\x22:\x20\x22../frontend\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22npm\x20run\x20build\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Dangerous\x20commands\x20are\x20blocked\x0a-\x20Commands\x20execute\x20in\x20isolated\x20environment\x0a-\x20Output\x20is\x20captured\x20and\x20returned\x20safely\x0a\x0aBEST\x20PRACTICES:\x0a-\x20Use\x20FileSystem\x20tool\x20for\x20file/directory\x20operations\x0a-\x20Use\x20Terminal\x20for\x20CLI\x20utilities\x20(npm,\x20git,\x20curl,\x20etc.)\x0a-\x20Check\x20command\x20output\x20to\x20verify\x20success\x0a\x20\x20\x20\x20';}[a0_0x90eebf(0x1dc)](_0x5de524){const _0x162a6c=a0_0x90eebf;try{const _0x1b9dbc={},_0x433813=a0_0x10dea3[_0x162a6c(0x106)](_0x5de524,_0x162a6c(0x1ae)),_0x4e815f=a0_0x10dea3['extractContent'](_0x5de524,'change-directory'),_0x207952=a0_0x10dea3['extractContent'](_0x5de524,'list-directory'),_0x2c4aa9=a0_0x10dea3[_0x162a6c(0x106)](_0x5de524,'create-directory'),_0x2d9845=a0_0x10dea3[_0x162a6c(0x106)](_0x5de524,'get-working-directory'),_0x27066c=a0_0x10dea3[_0x162a6c(0x106)](_0x5de524,_0x162a6c(0x10e)),_0x52f753=a0_0x10dea3[_0x162a6c(0x106)](_0x5de524,'async'),_0x4c3037=[];return _0x433813['length']>0x0&&_0x4c3037[_0x162a6c(0x174)]({'type':'run-command','command':_0x433813[0x0][_0x162a6c(0x118)]()}),_0x4e815f[_0x162a6c(0xb1)]>0x0&&_0x4c3037['push']({'type':_0x162a6c(0x1da),'directory':_0x4e815f[0x0]['trim']()}),_0x207952[_0x162a6c(0xb1)]>0x0&&_0x4c3037['push']({'type':_0x162a6c(0x1d9),'directory':_0x207952[0x0]['trim']()||'.'}),_0x2c4aa9['length']>0x0&&_0x4c3037[_0x162a6c(0x174)]({'type':_0x162a6c(0x16e),'directory':_0x2c4aa9[0x0][_0x162a6c(0x118)]()}),_0x2d9845[_0x162a6c(0xb1)]>0x0&&_0x4c3037[_0x162a6c(0x174)]({'type':_0x162a6c(0x11f)}),_0x1b9dbc['actions']=_0x4c3037,_0x27066c[_0x162a6c(0xb1)]>0x0&&(_0x1b9dbc['timeout']=parseInt(_0x27066c[0x0],0xa)),_0x52f753[_0x162a6c(0xb1)]>0x0&&(_0x1b9dbc[_0x162a6c(0x1c2)]=_0x52f753[0x0]['toLowerCase']()===_0x162a6c(0x17a)),_0x1b9dbc['rawContent']=_0x5de524[_0x162a6c(0x118)](),_0x1b9dbc;}catch(_0xd31917){throw new Error('Failed\x20to\x20parse\x20terminal\x20parameters:\x20'+_0xd31917[_0x162a6c(0x160)]);}}['getRequiredParameters'](){return['actions'];}['customValidateParameters'](_0x1d368c){const _0x2ab8bd=a0_0x90eebf,_0xda779c=[];if(!_0x1d368c[_0x2ab8bd(0x1d8)]||!Array[_0x2ab8bd(0x14e)](_0x1d368c[_0x2ab8bd(0x1d8)])||_0x1d368c[_0x2ab8bd(0x1d8)][_0x2ab8bd(0xb1)]===0x0)_0xda779c['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x11f04b,_0x5c15aa]of _0x1d368c[_0x2ab8bd(0x1d8)]['entries']()){if(!_0x5c15aa[_0x2ab8bd(0xee)]){_0xda779c['push']('Action\x20'+(_0x11f04b+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x5c15aa[_0x2ab8bd(0xee)]){case'run-command':if(!_0x5c15aa[_0x2ab8bd(0x1b9)]||!_0x5c15aa[_0x2ab8bd(0x1b9)][_0x2ab8bd(0x118)]())_0xda779c['push'](_0x2ab8bd(0x18f)+(_0x11f04b+0x1)+':\x20command\x20is\x20required\x20for\x20run-command');else{if(this['isBlockedCommand'](_0x5c15aa['command']))_0xda779c['push'](_0x2ab8bd(0x18f)+(_0x11f04b+0x1)+':\x20command\x20is\x20blocked\x20for\x20security:\x20'+_0x5c15aa['command']);else this['allowedCommands']&&!this[_0x2ab8bd(0x1df)](_0x5c15aa[_0x2ab8bd(0x1b9)])&&_0xda779c['push']('Action\x20'+(_0x11f04b+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x5c15aa['command']);}break;case'change-directory':case _0x2ab8bd(0x1d9):case _0x2ab8bd(0x16e):(!_0x5c15aa[_0x2ab8bd(0x139)]||!_0x5c15aa['directory'][_0x2ab8bd(0x118)]())&&_0xda779c[_0x2ab8bd(0x174)](_0x2ab8bd(0x18f)+(_0x11f04b+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x5c15aa[_0x2ab8bd(0xee)]);break;case _0x2ab8bd(0x11f):break;default:_0xda779c[_0x2ab8bd(0x174)]('Action\x20'+(_0x11f04b+0x1)+_0x2ab8bd(0xcc)+_0x5c15aa[_0x2ab8bd(0xee)]);}}return _0x1d368c[_0x2ab8bd(0x10e)]&&(_0x1d368c['timeout']<0x3e8||_0x1d368c[_0x2ab8bd(0x10e)]>this['timeout'])&&_0xda779c[_0x2ab8bd(0x174)]('Timeout\x20must\x20be\x20between\x201000\x20and\x20'+this[_0x2ab8bd(0x10e)]+_0x2ab8bd(0xef)),{'valid':_0xda779c['length']===0x0,'errors':_0xda779c};}async['execute'](_0x4971f6,_0x15ac67){const _0x463492=a0_0x90eebf,{actions:_0x1617c6,timeout:_0x4ced03,async:_0x1a3d93}=_0x4971f6,{agentId:_0x30a422,projectDir:_0xc3feea,directoryAccess:_0x3401f6}=_0x15ac67,_0x9dd998=_0x3401f6||this['directoryAccessManager'][_0x463492(0x1c3)]({'workingDirectory':_0xc3feea||process['cwd'](),'writeEnabledDirectories':[_0xc3feea||process[_0x463492(0x145)]()],'restrictToProject':!![]});_0x3401f6&&_0x3401f6['workingDirectory']?console[_0x463492(0x1a1)](_0x463492(0x18c),_0x3401f6[_0x463492(0x107)]):console[_0x463492(0x1a1)]('Terminal\x20DEBUG:\x20Using\x20fallback\x20working\x20directory:',_0xc3feea||process['cwd']());const _0x4fc582=_0x30a422+'-'+(_0xc3feea||'default');let _0x57352b=this['workingDirectories'][_0x463492(0x13f)](_0x4fc582)||this[_0x463492(0xea)]['getWorkingDirectory'](_0x9dd998);const _0xfdea08=[];for(const _0x237a46 of _0x1617c6){try{let _0x4cc9f5;switch(_0x237a46['type']){case'run-command':_0x4cc9f5=await this['executeCommand'](_0x237a46[_0x463492(0x1b9)],_0x57352b,{'timeout':_0x4ced03||this[_0x463492(0x10e)],'async':_0x1a3d93||![],'agentId':_0x30a422,'context':{'toolsRegistry':_0x15ac67['toolsRegistry'],'aiService':_0x15ac67[_0x463492(0x1c1)],'apiKey':_0x15ac67[_0x463492(0x1c7)],'customApiKeys':_0x15ac67['customApiKeys'],'platformProvided':_0x15ac67[_0x463492(0xe6)]}});break;case'change-directory':_0x4cc9f5=await this[_0x463492(0x1be)](_0x237a46['directory'],_0x57352b,_0x9dd998),_0x57352b=_0x4cc9f5[_0x463492(0x185)],this[_0x463492(0x176)][_0x463492(0xd9)](_0x4fc582,_0x57352b);break;case'list-directory':_0x4cc9f5=await this[_0x463492(0x18b)](_0x237a46['directory']==='.'?_0x57352b:_0x237a46[_0x463492(0x139)]);break;case'create-directory':_0x4cc9f5=await this[_0x463492(0x138)](_0x237a46['directory'],_0x57352b);break;case'get-working-directory':_0x4cc9f5={'success':!![],'action':'get-working-directory','workingDirectory':_0x57352b,'message':'Current\x20working\x20directory:\x20'+_0x57352b};break;default:throw new Error(_0x463492(0x1ad)+_0x237a46[_0x463492(0xee)]);}_0xfdea08['push'](_0x4cc9f5),this[_0x463492(0x182)](_0x237a46,_0x4cc9f5,_0x30a422);}catch(_0xbb36a3){const _0xe33db1={'success':![],'action':_0x237a46[_0x463492(0xee)],'error':_0xbb36a3[_0x463492(0x160)],'command':_0x237a46['command']||_0x237a46['directory'],'workingDirectory':_0x57352b};_0xfdea08['push'](_0xe33db1),this[_0x463492(0x182)](_0x237a46,_0xe33db1,_0x30a422);}}const _0x1f9061=_0xfdea08['every'](_0x218831=>_0x218831[_0x463492(0xb2)]),_0x3bdb57=_0xfdea08['filter'](_0x53b55a=>!_0x53b55a['success']);return{'success':_0x1f9061,'actions':_0xfdea08,'workingDirectory':_0x57352b,'executedActions':_0x1617c6['length'],'failedActions':_0x3bdb57['length'],'toolUsed':_0x463492(0xeb),'message':_0x1f9061?_0x463492(0x12b)+_0x1617c6[_0x463492(0xb1)]+'\x20actions\x20completed\x20successfully':_0x3bdb57[_0x463492(0xb1)]+'\x20of\x20'+_0x1617c6[_0x463492(0xb1)]+_0x463492(0x133)};}async['executeCommand'](_0xcd0d54,_0x30bec8,_0x28b6a3={}){const _0x456f36=a0_0x90eebf,{timeout:timeout=this['timeout'],async:_0x5e90ce=![],agentId:_0xe833ed,context:_0x109dd0}=_0x28b6a3,_0x4f6bdf=_0xcd0d54;let _0x4d5ddd;try{_0x4d5ddd=await this['translateCommand'](_0xcd0d54,{'agentId':_0xe833ed,'toolsRegistry':_0x109dd0?.[_0x456f36(0xbf)],'messageProcessor':_0x109dd0?.[_0x456f36(0x19f)],'aiService':_0x109dd0?.[_0x456f36(0x1c1)],'apiKey':_0x109dd0?.[_0x456f36(0x1c7)],'customApiKeys':_0x109dd0?.['customApiKeys'],'platformProvided':_0x109dd0?.['platformProvided']});}catch(_0x847218){this[_0x456f36(0x166)]?.['warn'](_0x456f36(0xba),{'originalCommand':_0x4f6bdf,'error':_0x847218['message']}),_0x4d5ddd=_0xcd0d54;}return new Promise((_0x9471dc,_0x19640e)=>{const _0x970755=_0x456f36,_0x3c93bd=Date[_0x970755(0xe3)]();this['logger']?.['info'](_0x970755(0xd2)+_0x4d5ddd,{'originalCommand':_0x4f6bdf,'translatedCommand':_0x4d5ddd,'terminal':this['detectedTerminal'],'workingDirectory':_0x30bec8,'timeout':timeout,'agentId':_0xe833ed});const _0x4da9b5=exec(_0x4d5ddd,{'cwd':_0x30bec8,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x4dffb8,_0x50031a,_0x4146d6)=>{const _0x9ffbb8=_0x970755,_0x1c4265=Date['now']()-_0x3c93bd;if(_0x4dffb8){this['logger']?.['error'](_0x9ffbb8(0x1a2)+_0x4d5ddd,{'originalCommand':_0x4f6bdf,'translatedCommand':_0x4d5ddd,'error':_0x4dffb8['message'],'workingDirectory':_0x30bec8,'executionTime':_0x1c4265}),_0x9471dc({'success':![],'action':'run-command','command':_0x4f6bdf,'translatedCommand':_0x4d5ddd!==_0x4f6bdf?_0x4d5ddd:undefined,'error':_0x4dffb8[_0x9ffbb8(0x160)],'stderr':_0x4146d6['trim'](),'stdout':_0x50031a['trim'](),'exitCode':_0x4dffb8[_0x9ffbb8(0xa9)],'executionTime':_0x1c4265,'workingDirectory':_0x30bec8});return;}this['logger']?.[_0x9ffbb8(0xd3)]('Command\x20completed:\x20'+_0x4d5ddd,{'originalCommand':_0x4f6bdf,'translatedCommand':_0x4d5ddd,'executionTime':_0x1c4265,'stdoutLength':_0x50031a['length'],'stderrLength':_0x4146d6[_0x9ffbb8(0xb1)]}),_0x9471dc({'success':!![],'action':_0x9ffbb8(0x1ae),'command':_0x4f6bdf,'translatedCommand':_0x4d5ddd!==_0x4f6bdf?_0x4d5ddd:undefined,'stdout':_0x50031a[_0x9ffbb8(0x118)](),'stderr':_0x4146d6['trim'](),'exitCode':0x0,'executionTime':_0x1c4265,'workingDirectory':_0x30bec8,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x1c4265+'ms'});});setTimeout(()=>{const _0x3255dc=_0x970755;!_0x4da9b5[_0x3255dc(0x187)]&&(_0x4da9b5['kill']('SIGTERM'),_0x19640e(new Error(_0x3255dc(0x1a6)+timeout+'ms:\x20'+_0x4d5ddd+'\x20(original:\x20'+_0x4f6bdf+')')));},timeout);});}async[a0_0x90eebf(0x15a)](_0x3e5471,_0x339ac7,_0x567a62={}){const _0x516e36=a0_0x90eebf,{timeout:timeout=this[_0x516e36(0x10e)],agentId:_0x59cace,context:_0x427cc4}=_0x567a62,_0x54d4d0=_0x3e5471;let _0x38bc43;try{_0x38bc43=await this[_0x516e36(0x1c8)](_0x3e5471,{'agentId':_0x59cace,'toolsRegistry':_0x427cc4?.[_0x516e36(0xbf)],'messageProcessor':_0x427cc4?.[_0x516e36(0x19f)],'aiService':_0x427cc4?.['aiService'],'apiKey':_0x427cc4?.[_0x516e36(0x1c7)],'customApiKeys':_0x427cc4?.['customApiKeys'],'platformProvided':_0x427cc4?.['platformProvided']});}catch(_0x5c3a56){this[_0x516e36(0x166)]?.[_0x516e36(0x1b1)](_0x516e36(0xba),{'originalCommand':_0x54d4d0,'error':_0x5c3a56['message']}),_0x38bc43=_0x3e5471;}return new Promise((_0x1bef04,_0xa5ba95)=>{const _0x3ff454=_0x516e36,_0x57d334=Date[_0x3ff454(0xe3)]();this[_0x3ff454(0x166)]?.['info'](_0x3ff454(0xfc)+_0x38bc43,{'originalCommand':_0x54d4d0,'translatedCommand':_0x38bc43,'terminal':this['detectedTerminal'],'workingDirectory':_0x339ac7,'timeout':timeout,'agentId':_0x59cace});let _0x29fc3f;if(this[_0x3ff454(0x1ea)]===_0x3ff454(0xe9)||this[_0x3ff454(0x1ea)]==='powershell'){const _0x46663d=this['detectedTerminal']===_0x3ff454(0xab)?'powershell':_0x3ff454(0xe9),_0x268302=this[_0x3ff454(0x1ea)]===_0x3ff454(0xab)?[_0x3ff454(0x132),_0x38bc43]:['/c',_0x38bc43];_0x29fc3f=spawn(_0x46663d,_0x268302,{'cwd':_0x339ac7,'env':{...process[_0x3ff454(0xa4)]},'windowsHide':!![]});}else _0x29fc3f=spawn('sh',['-c',_0x38bc43],{'cwd':_0x339ac7,'env':{...process['env']}});let _0x52a221='',_0x4bd5df='',_0x32fc64=![],_0x4ceccb=null,_0x3c8025=Date[_0x3ff454(0xe3)](),_0x51945a=null;const _0x48c008=setTimeout(()=>{!_0x29fc3f['killed']&&_0x4ceccb===null&&(_0x32fc64=!![],this['logger']?.['warn']('Command\x20timed\x20out,\x20killing\x20process:\x20'+_0x38bc43,{'timeout':timeout,'agentId':_0x59cace}),_0x29fc3f['kill']('SIGTERM'),setTimeout(()=>{const _0x5bc485=a0_0x2f8a;!_0x29fc3f[_0x5bc485(0x187)]&&_0x29fc3f[_0x5bc485(0x11e)](_0x5bc485(0x195));},0x1388));},timeout);_0x29fc3f[_0x3ff454(0x193)]['on']('data',_0x350e0a=>{const _0x7c5e2d=_0x3ff454,_0x288935=_0x350e0a['toString']();_0x52a221+=_0x288935,_0x3c8025=Date[_0x7c5e2d(0xe3)](),this[_0x7c5e2d(0x166)]?.[_0x7c5e2d(0x158)](_0x7c5e2d(0x109)+_0x288935[_0x7c5e2d(0xd4)](0x0,0x64),{'agentId':_0x59cace,'command':_0x54d4d0[_0x7c5e2d(0xd4)](0x0,0x32)});if(!_0x51945a){const _0xb4cbaf=this[_0x7c5e2d(0x1bb)]['detectPrompt'](_0x52a221,'stdout');_0xb4cbaf&&(_0x51945a=_0xb4cbaf,this[_0x7c5e2d(0x166)]?.[_0x7c5e2d(0xd3)](_0x7c5e2d(0x17c),{'type':_0xb4cbaf['type'],'description':_0xb4cbaf[_0x7c5e2d(0x129)],'matchedText':_0xb4cbaf[_0x7c5e2d(0x12a)],'agentId':_0x59cace,'command':_0x54d4d0[_0x7c5e2d(0xd4)](0x0,0x32)}));}}),_0x29fc3f['stderr']['on']('data',_0x2a78d6=>{const _0x18c98c=_0x3ff454,_0x39a66a=_0x2a78d6['toString']();_0x4bd5df+=_0x39a66a,_0x3c8025=Date[_0x18c98c(0xe3)](),this[_0x18c98c(0x166)]?.['debug']('Command\x20error\x20chunk:\x20'+_0x39a66a[_0x18c98c(0xd4)](0x0,0x64),{'agentId':_0x59cace,'command':_0x54d4d0[_0x18c98c(0xd4)](0x0,0x32)});if(!_0x51945a){const _0x4785aa=this['promptDetector'][_0x18c98c(0x189)](_0x4bd5df,_0x18c98c(0xdd));_0x4785aa&&(_0x51945a=_0x4785aa,this['logger']?.[_0x18c98c(0xd3)]('Prompt\x20detected\x20in\x20stderr',{'type':_0x4785aa['type'],'description':_0x4785aa['description'],'matchedText':_0x4785aa[_0x18c98c(0x12a)],'agentId':_0x59cace,'command':_0x54d4d0[_0x18c98c(0xd4)](0x0,0x32)}));}}),_0x29fc3f['on']('exit',(_0x191f1d,_0x4ccb3e)=>{const _0x4b813c=_0x3ff454;clearTimeout(_0x48c008),_0x4ceccb=_0x191f1d;const _0x4122dd=Date[_0x4b813c(0xe3)]()-_0x57d334,_0x26615d=Date[_0x4b813c(0xe3)]()-_0x3c8025;this['logger']?.['info']('Command\x20process\x20exited:\x20'+_0x38bc43,{'exitCode':_0x191f1d,'signal':_0x4ccb3e,'executionTime':_0x4122dd,'timedOut':_0x32fc64,'stdoutLength':_0x52a221[_0x4b813c(0xb1)],'stderrLength':_0x4bd5df[_0x4b813c(0xb1)],'promptDetected':!!_0x51945a,'timeSinceLastOutput':_0x26615d});const _0x3a43cb={'action':_0x4b813c(0x1ae),'command':_0x54d4d0,'translatedCommand':_0x38bc43!==_0x54d4d0?_0x38bc43:undefined,'stdout':_0x52a221[_0x4b813c(0x118)](),'stderr':_0x4bd5df['trim'](),'exitCode':_0x191f1d,'executionTime':_0x4122dd,'workingDirectory':_0x339ac7,'promptDetected':!!_0x51945a,'promptInfo':_0x51945a||undefined,'lastOutputTime':_0x3c8025,'timeSinceLastOutput':_0x26615d};if(_0x32fc64){_0x1bef04({..._0x3a43cb,'success':![],'error':_0x4b813c(0x1a6)+timeout+'ms','exitCode':_0x191f1d||-0x1,'timedOut':!![]});return;}if(_0x191f1d!==0x0){this['logger']?.['error']('Command\x20failed\x20with\x20exit\x20code\x20'+_0x191f1d+':\x20'+_0x38bc43,{'originalCommand':_0x54d4d0,'translatedCommand':_0x38bc43,'exitCode':_0x191f1d,'stderr':_0x4bd5df[_0x4b813c(0xd4)](0x0,0xc8),'executionTime':_0x4122dd,'promptDetected':!!_0x51945a}),_0x1bef04({..._0x3a43cb,'success':![],'error':_0x4b813c(0x14d)+_0x191f1d});return;}this[_0x4b813c(0x166)]?.[_0x4b813c(0xd3)]('Command\x20completed\x20successfully:\x20'+_0x38bc43,{'originalCommand':_0x54d4d0,'executionTime':_0x4122dd,'stdoutLength':_0x52a221[_0x4b813c(0xb1)],'stderrLength':_0x4bd5df[_0x4b813c(0xb1)],'promptDetected':!!_0x51945a}),_0x1bef04({..._0x3a43cb,'success':!![],'exitCode':0x0,'message':_0x4b813c(0xb9)+_0x4122dd+'ms'});}),_0x29fc3f['on']('error',_0x55d521=>{const _0x52673b=_0x3ff454;clearTimeout(_0x48c008);const _0x324b7b=Date[_0x52673b(0xe3)]()-_0x57d334,_0x32ac89=Date[_0x52673b(0xe3)]()-_0x3c8025;this[_0x52673b(0x166)]?.[_0x52673b(0x148)](_0x52673b(0x159)+_0x38bc43,{'originalCommand':_0x54d4d0,'error':_0x55d521['message'],'executionTime':_0x324b7b,'promptDetected':!!_0x51945a}),_0x1bef04({'success':![],'action':'run-command','command':_0x54d4d0,'translatedCommand':_0x38bc43!==_0x54d4d0?_0x38bc43:undefined,'error':_0x55d521[_0x52673b(0x160)],'stderr':_0x4bd5df['trim'](),'stdout':_0x52a221['trim'](),'exitCode':-0x1,'executionTime':_0x324b7b,'workingDirectory':_0x339ac7,'promptDetected':!!_0x51945a,'promptInfo':_0x51945a||undefined,'lastOutputTime':_0x3c8025,'timeSinceLastOutput':_0x32ac89});});});}async[a0_0x90eebf(0x1be)](_0x54b502,_0x29cc4f,_0x49849c){const _0x387bb6=a0_0x90eebf;try{let _0x4cfc3d;a0_0x2aced1[_0x387bb6(0xed)](_0x54b502)?_0x4cfc3d=_0x54b502:_0x4cfc3d=a0_0x2aced1['resolve'](_0x29cc4f,_0x54b502);const _0x2495e9=await a0_0xe9eda2[_0x387bb6(0xec)](_0x4cfc3d);if(!_0x2495e9[_0x387bb6(0x16b)]())throw new Error('Not\x20a\x20directory:\x20'+_0x4cfc3d);const _0x44b2d5=this[_0x387bb6(0xea)]['validateReadAccess'](_0x4cfc3d,_0x49849c);if(!_0x44b2d5[_0x387bb6(0x1b6)]){this['logger']?.[_0x387bb6(0x1b1)]('Directory\x20change\x20blocked:\x20'+_0x44b2d5['reason'],{'targetDirectory':_0x4cfc3d,'reason':_0x44b2d5[_0x387bb6(0x1d4)],'category':_0x44b2d5['category']});throw new Error('Access\x20denied:\x20'+_0x44b2d5['reason']);}return{'success':!![],'action':'change-directory','previousDirectory':_0x29cc4f,'newDirectory':_0x4cfc3d,'message':'Changed\x20directory\x20to\x20'+_0x4cfc3d};}catch(_0x1518b1){throw new Error('Failed\x20to\x20change\x20directory\x20to\x20'+_0x54b502+':\x20'+_0x1518b1['message']);}}async[a0_0x90eebf(0x18b)](_0x17cfb8){const _0x3df6b2=a0_0x90eebf;try{const _0x47d01d=await a0_0xe9eda2['readdir'](_0x17cfb8,{'withFileTypes':!![]}),_0x21e8d8=_0x47d01d['map'](_0x42ff46=>({'name':_0x42ff46[_0x3df6b2(0x198)],'type':_0x42ff46[_0x3df6b2(0x16b)]()?'directory':_0x3df6b2(0x146),'isSymlink':_0x42ff46[_0x3df6b2(0x15e)]()}));return{'success':!![],'action':_0x3df6b2(0x1d9),'directory':_0x17cfb8,'contents':_0x21e8d8,'totalItems':_0x21e8d8[_0x3df6b2(0xb1)],'directories':_0x21e8d8[_0x3df6b2(0xb4)](_0x43f0e0=>_0x43f0e0['type']==='directory')[_0x3df6b2(0xb1)],'files':_0x21e8d8['filter'](_0x344655=>_0x344655['type']===_0x3df6b2(0x146))['length'],'message':_0x3df6b2(0x14f)+_0x21e8d8[_0x3df6b2(0xb1)]+'\x20items\x20in\x20'+_0x17cfb8};}catch(_0x3c08fd){throw new Error(_0x3df6b2(0xe5)+_0x17cfb8+':\x20'+_0x3c08fd[_0x3df6b2(0x160)]);}}async['createDirectory'](_0x2575e9,_0x44c901){const _0x4ae2b4=a0_0x90eebf;try{let _0x17882d;return a0_0x2aced1['isAbsolute'](_0x2575e9)?_0x17882d=_0x2575e9:_0x17882d=a0_0x2aced1['resolve'](_0x44c901,_0x2575e9),await a0_0xe9eda2[_0x4ae2b4(0x1c5)](_0x17882d,{'recursive':!![]}),{'success':!![],'action':_0x4ae2b4(0x16e),'directory':_0x17882d,'relativePath':a0_0x2aced1[_0x4ae2b4(0x1a4)](_0x44c901,_0x17882d),'message':_0x4ae2b4(0xce)+_0x17882d};}catch(_0x2b2bb7){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x2575e9+':\x20'+_0x2b2bb7['message']);}}[a0_0x90eebf(0x165)](_0x2789ff){const _0x35e895=a0_0x90eebf,_0x17ecf4=_0x2789ff[_0x35e895(0x173)]()['trim']();return this[_0x35e895(0x103)]['some'](_0x4136c7=>{const _0x596b2c=_0x35e895,_0x23bca9=_0x4136c7['toLowerCase']();return _0x17ecf4===_0x23bca9||_0x17ecf4[_0x596b2c(0x19c)](_0x23bca9+'\x20');});}[a0_0x90eebf(0x1df)](_0xf7c894){const _0x5046a7=a0_0x90eebf;if(!this[_0x5046a7(0xd8)])return!![];const _0x2ea6a6=_0xf7c894[_0x5046a7(0x173)]()['trim'](),_0x42eac3=_0x2ea6a6[_0x5046a7(0x141)]('\x20')[0x0];return this[_0x5046a7(0xd8)]['some'](_0x39e2fc=>_0x39e2fc[_0x5046a7(0x173)]()===_0x42eac3||_0x2ea6a6['startsWith'](_0x39e2fc[_0x5046a7(0x173)]()+'\x20'));}['addToHistory'](_0x33194e,_0x3bf542,_0x84df56){const _0x3908e9=a0_0x90eebf,_0x249e40={'timestamp':new Date()[_0x3908e9(0x11a)](),'agentId':_0x84df56,'action':_0x33194e['type'],'command':_0x33194e[_0x3908e9(0x1b9)]||_0x33194e['directory'],'success':_0x3bf542[_0x3908e9(0xb2)],'executionTime':_0x3bf542[_0x3908e9(0xff)]||0x0,'workingDirectory':_0x3bf542['workingDirectory']};this['commandHistory'][_0x3908e9(0x174)](_0x249e40),this[_0x3908e9(0x15d)][_0x3908e9(0xb1)]>0x64&&(this[_0x3908e9(0x15d)]=this[_0x3908e9(0x15d)][_0x3908e9(0xad)](-0x64));}['getSupportedActions'](){const _0x253a1d=a0_0x90eebf;return[_0x253a1d(0x1ae),_0x253a1d(0x1da),_0x253a1d(0x1d9),_0x253a1d(0x16e),_0x253a1d(0x11f)];}[a0_0x90eebf(0xf0)](){const _0x414862=a0_0x90eebf;return{'type':'object','properties':{'actions':{'type':_0x414862(0xf6),'minItems':0x1,'items':{'type':_0x414862(0xd1),'properties':{'type':{'type':'string','enum':this[_0x414862(0x16a)]()},'command':{'type':_0x414862(0x1e7)},'directory':{'type':'string'}},'required':[_0x414862(0xee)]}},'timeout':{'type':_0x414862(0xc8),'minimum':0x3e8,'maximum':this['timeout']},'async':{'type':_0x414862(0x155)}},'required':['actions']};}['getCommandHistory'](_0x1151bd=null){const _0x16aebe=a0_0x90eebf;if(_0x1151bd)return this['commandHistory']['filter'](_0x1038ae=>_0x1038ae[_0x16aebe(0xc0)]===_0x1151bd);return[...this[_0x16aebe(0x15d)]];}[a0_0x90eebf(0xd7)](_0x26078b){const _0x2d97ea=a0_0x90eebf;for(const [_0x5cb69f]of this['workingDirectories']){_0x5cb69f[_0x2d97ea(0x19c)](_0x26078b+'-')&&this['workingDirectories']['delete'](_0x5cb69f);}}[a0_0x90eebf(0xc7)](_0x227964,_0x5e05ef=null){const _0x283d80=a0_0x90eebf,_0x1611bd=_0x227964+'-'+(_0x5e05ef||'default');return this[_0x283d80(0x176)]['get'](_0x1611bd)||_0x5e05ef||process['cwd']();}[a0_0x90eebf(0xd0)](){const _0xb3e197=a0_0x90eebf;this['platformType']=process['platform'];if(process[_0xb3e197(0x12c)]===_0xb3e197(0x117)){if(process[_0xb3e197(0xa4)]['PSModulePath'])this['detectedTerminal']=_0xb3e197(0xab);else process[_0xb3e197(0xa4)][_0xb3e197(0x120)]&&process['env']['SHELL']['includes']('bash')?this['detectedTerminal']='bash':this[_0xb3e197(0x1ea)]=_0xb3e197(0xe9);}else process['platform']===_0xb3e197(0x108)?this[_0xb3e197(0x1ea)]='bash':this['detectedTerminal']='bash';this[_0xb3e197(0x166)]?.[_0xb3e197(0xd3)](_0xb3e197(0xac),{'platform':this[_0xb3e197(0x137)],'terminal':this['detectedTerminal'],'shell':process[_0xb3e197(0xa4)]['SHELL']});}async[a0_0x90eebf(0x1c8)](_0x2ecdc9,_0x238548={}){const _0x67fdce=a0_0x90eebf,_0x4e689a=_0x2ecdc9[_0x67fdce(0x118)](),_0x811d8=this['analyzeCommandCompatibility'](_0x4e689a);this[_0x67fdce(0x166)]?.[_0x67fdce(0xd3)]('Command\x20compatibility\x20analysis',{'command':_0x4e689a,'detectedTerminal':_0x811d8['detectedTerminal'],'commandType':_0x811d8['commandType'],'commandCategory':_0x811d8[_0x67fdce(0xfa)],'compatible':_0x811d8['compatible'],'issues':_0x811d8['specificIssues'],'suggestedAction':_0x811d8[_0x67fdce(0x10a)],'confidence':_0x811d8['confidence']});if(_0x811d8['compatible'])return _0x2ecdc9;let _0x3bba0c=null;if(this['detectedTerminal']===_0x67fdce(0xe9))_0x3bba0c=this['translateToWindowsCmd'](_0x4e689a);else{if(this['detectedTerminal']==='powershell')_0x3bba0c=this['translateToPowerShell'](_0x4e689a);else this['detectedTerminal']===_0x67fdce(0x1c4)&&(_0x3bba0c=this[_0x67fdce(0x14c)](_0x4e689a));}if(_0x3bba0c&&this['isSimpleCommand'](_0x4e689a))return this[_0x67fdce(0x166)]?.['info']('Using\x20simple\x20translation',{'original':_0x2ecdc9,'translated':_0x3bba0c,'method':_0x67fdce(0x1e5)}),_0x3bba0c;if(_0x238548[_0x67fdce(0x1c1)]||_0x238548['toolsRegistry']&&_0x238548[_0x67fdce(0xc0)]){this['logger']?.[_0x67fdce(0xd3)](_0x67fdce(0xf8),{'command':_0x2ecdc9['substring'](0x0,0x64)+_0x67fdce(0x1bc),'hasAiService':!!_0x238548[_0x67fdce(0x1c1)],'hasToolsRegistry':!!_0x238548['toolsRegistry'],'agentId':_0x238548[_0x67fdce(0xc0)]});try{const _0x571f9f=await this[_0x67fdce(0x17d)](_0x2ecdc9,_0x238548);if(_0x571f9f&&_0x571f9f['trim']()!==_0x2ecdc9[_0x67fdce(0x118)]())return this[_0x67fdce(0x166)]?.['info'](_0x67fdce(0x13e),{'original':_0x2ecdc9,'translated':_0x571f9f,'method':'ai'}),_0x571f9f;else this[_0x67fdce(0x166)]?.[_0x67fdce(0x1b1)]('AI\x20translation\x20returned\x20same\x20command',{'original':_0x2ecdc9,'translated':_0x571f9f});}catch(_0x5ebe7e){this[_0x67fdce(0x166)]?.['warn'](_0x67fdce(0xa3),{'original':_0x2ecdc9,'error':_0x5ebe7e['message'],'stack':_0x5ebe7e[_0x67fdce(0x12d)]});}}else this['logger']?.['warn'](_0x67fdce(0x1e9),{'hasAiService':!!_0x238548['aiService'],'hasToolsRegistry':!!_0x238548['toolsRegistry'],'hasAgentId':!!_0x238548[_0x67fdce(0xc0)],'contextKeys':Object[_0x67fdce(0x1c0)](_0x238548)});return _0x3bba0c||_0x2ecdc9;}[a0_0x90eebf(0xa2)](_0x1a6a4d){const _0x5ef5a0=a0_0x90eebf,_0x31fc8b=_0x1a6a4d[_0x5ef5a0(0x173)]();if(_0x1a6a4d[_0x5ef5a0(0x1b4)]('\x5cn')||_0x1a6a4d['includes']('\x5cr')||_0x1a6a4d[_0x5ef5a0(0x1b4)]('\x5ct'))return![];if(_0x1a6a4d['includes']('\x0a')||_0x1a6a4d['includes']('\x0d'))return![];if(_0x1a6a4d[_0x5ef5a0(0x1b4)]('#include')||_0x1a6a4d['includes'](_0x5ef5a0(0xe1))||_0x1a6a4d[_0x5ef5a0(0x1b4)]('main()'))return![];if(_0x1a6a4d[_0x5ef5a0(0x1b4)](_0x5ef5a0(0x1db))||_0x1a6a4d[_0x5ef5a0(0x1b4)](_0x5ef5a0(0x1a5))||_0x1a6a4d[_0x5ef5a0(0x1b4)]('class\x20'))return![];if(_0x1a6a4d['includes']('echo\x20\x27')&&!_0x1a6a4d['includes'](_0x5ef5a0(0x157)))return![];const _0x2707d4=_0x1a6a4d['match'](/'([^']*)'/);if(_0x2707d4&&_0x2707d4[0x1][_0x5ef5a0(0xb1)]>0x32)return![];if(this['detectedTerminal']===_0x5ef5a0(0xe9)&&_0x1a6a4d['includes']('>')&&_0x1a6a4d['includes']('/')&&!_0x1a6a4d['includes']('\x5c'))return![];if(_0x1a6a4d[_0x5ef5a0(0x1b4)](_0x5ef5a0(0x196))||_0x1a6a4d[_0x5ef5a0(0x1b4)](_0x5ef5a0(0xb8))||_0x1a6a4d['includes'](';\x20'))return![];if(_0x1a6a4d['includes']('$(')||_0x1a6a4d['includes']('`')||_0x1a6a4d[_0x5ef5a0(0x1b4)]('{')||_0x1a6a4d[_0x5ef5a0(0x1b4)]('['))return![];if(_0x31fc8b[_0x5ef5a0(0x1b4)](_0x5ef5a0(0xe2))||_0x31fc8b[_0x5ef5a0(0x1b4)](_0x5ef5a0(0x154))||_0x31fc8b[_0x5ef5a0(0x1b4)]('if\x20'))return![];if(_0x31fc8b[_0x5ef5a0(0x1b4)]('export ')||_0x31fc8b['includes']('source\x20'))return![];if(_0x1a6a4d['includes']('\x20|\x20')||_0x1a6a4d[_0x5ef5a0(0x1b4)]('\x20>\x20&'))return![];return!![];}async[a0_0x90eebf(0x17d)](_0xe76f7c,_0x863483){const _0x577751=a0_0x90eebf;let _0x885bee=_0x863483['aiService'];if(!_0x885bee&&_0x863483[_0x577751(0xbf)]&&_0x863483['agentId']){const _0x6a2a5d=_0x863483[_0x577751(0x19f)];_0x6a2a5d&&_0x6a2a5d[_0x577751(0x1c1)]&&(_0x885bee=_0x6a2a5d[_0x577751(0x1c1)]);}if(!_0x885bee)throw new Error(_0x577751(0xc6));const _0x3cfe7e=this[_0x577751(0x1d2)](_0xe76f7c),_0x2e3a5c=_0x577751(0x143);try{const _0x10ff8f=await _0x885bee[_0x577751(0x13a)](_0x2e3a5c,_0x3cfe7e,{'agentId':_0x863483['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x863483['apiKey'],'customApiKeys':_0x863483['customApiKeys'],'platformProvided':_0x863483[_0x577751(0xe6)]}),_0x14ad0a=this['extractTranslatedCommand'](_0x10ff8f[_0x577751(0x156)]);return this['logger']?.['debug']('AI\x20command\x20translation\x20completed',{'original':_0xe76f7c,'translated':_0x14ad0a,'model':_0x2e3a5c,'terminal':this['detectedTerminal']}),_0x14ad0a;}catch(_0x59c881){this['logger']?.['error'](_0x577751(0xb3),{'command':_0xe76f7c,'terminal':this[_0x577751(0x1ea)],'error':_0x59c881[_0x577751(0x160)]});throw _0x59c881;}}['buildTranslationPrompt'](_0x4c981f){const _0x519dd0=a0_0x90eebf,_0x3bdb44={'cmd':'Windows\x20Command\x20Prompt\x20(cmd.exe)','powershell':_0x519dd0(0x18a),'bash':'Bash\x20shell\x20(Linux/Unix/macOS)'},_0x571c2d=_0x3bdb44[this['detectedTerminal']]||this[_0x519dd0(0x1ea)],_0x22f914=this[_0x519dd0(0x1e6)](_0x4c981f);let _0x20fd0d=_0x519dd0(0x1e2)+_0x571c2d+_0x519dd0(0x1e8)+_0x4c981f+'\x0a```\x0a\x0aCOMMAND\x20ANALYSIS:\x0a-\x20Command\x20Type:\x20'+_0x22f914[_0x519dd0(0xd5)]+_0x519dd0(0x172)+_0x22f914[_0x519dd0(0xfa)]+'\x0a-\x20Target\x20Terminal:\x20'+_0x571c2d+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x22f914[_0x519dd0(0x111)]['join'](',\x20')||'None\x20detected');return _0x22f914['commandType']===_0x519dd0(0x113)&&_0x22f914['alternatives']&&_0x22f914['alternatives'][this['detectedTerminal']]&&(_0x20fd0d+='\x0a-\x20Suggested\x20Alternative:\x20'+_0x22f914[_0x519dd0(0xb7)][this[_0x519dd0(0x1ea)]]),_0x20fd0d+=_0x519dd0(0x1d1)+_0x571c2d+'\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:',_0x20fd0d;}['extractTranslatedCommand'](_0x51aa93){const _0x42a730=a0_0x90eebf;let _0x1f459d=_0x51aa93[_0x42a730(0x19e)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x1f459d=_0x1f459d['replace'](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x70c8f1=_0x1f459d['trim']()['split']('\x0a');return _0x70c8f1['length']>0x1&&!_0x1f459d[_0x42a730(0x1b4)]('&&')&&!_0x1f459d[_0x42a730(0x1b4)]('||')&&(_0x1f459d=_0x70c8f1[0x0][_0x42a730(0x118)]()),_0x1f459d['trim']();}[a0_0x90eebf(0x1e6)](_0x560fcb){const _0x28c05f=a0_0x90eebf,_0x2b00a1=this['classifyCommand'](_0x560fcb),_0xe68b6=this['isCommandCompatibleWithTerminal'](_0x2b00a1,this['detectedTerminal']);return{'compatible':_0xe68b6,'detectedTerminal':this['detectedTerminal'],'commandType':_0x2b00a1[_0x28c05f(0xee)],'commandCategory':_0x2b00a1['category'],'specificIssues':_0x2b00a1[_0x28c05f(0x175)],'suggestedAction':_0xe68b6?'execute':_0x28c05f(0x163),'confidence':_0x2b00a1['confidence']};}[a0_0x90eebf(0x1a9)](_0x4c0149){const _0x286dca=a0_0x90eebf;return this[_0x286dca(0x1e6)](_0x4c0149)[_0x286dca(0x1d7)];}[a0_0x90eebf(0x170)](_0x3c6e23){const _0x28a76b=a0_0x90eebf,_0x2f515b=_0x3c6e23['toLowerCase']()['trim'](),_0xb06a40=_0x2f515b['split']('\x20')[0x0],_0x4cd39a=[];let _0x74e667=0.9;const _0x28a1be={'ls':{'category':_0x28a76b(0x127),'alternatives':{'cmd':'dir','powershell':'Get-ChildItem'}},'cat':{'category':'file-viewing','alternatives':{'cmd':_0x28a76b(0xee),'powershell':'Get-Content'}},'grep':{'category':_0x28a76b(0x180),'alternatives':{'cmd':_0x28a76b(0x194),'powershell':'Select-String'}},'find':{'category':_0x28a76b(0x1cd),'alternatives':{'cmd':'dir\x20/s','powershell':_0x28a76b(0x19b)}},'head':{'category':'file-viewing','alternatives':{'cmd':'more','powershell':_0x28a76b(0x1bd)}},'tail':{'category':_0x28a76b(0xfe),'alternatives':{'cmd':_0x28a76b(0x169),'powershell':'Get-Content\x20-Tail'}},'wc':{'category':_0x28a76b(0x116),'alternatives':{'cmd':_0x28a76b(0x1cb),'powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':'copy','powershell':'Copy-Item'}},'mv':{'category':'file-move','alternatives':{'cmd':_0x28a76b(0x19d),'powershell':_0x28a76b(0xdf)}},'rm':{'category':_0x28a76b(0x11d),'alternatives':{'cmd':_0x28a76b(0x119),'powershell':'Remove-Item'}},'mkdir':{'category':_0x28a76b(0x1cc),'alternatives':{'cmd':_0x28a76b(0x1c5),'powershell':'New-Item\x20-Type\x20Directory'}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':_0x28a76b(0xc9),'powershell':_0x28a76b(0x101)}},'touch':{'category':_0x28a76b(0x1a0),'alternatives':{'cmd':_0x28a76b(0xb0),'powershell':_0x28a76b(0x1ed)}},'chmod':{'category':_0x28a76b(0xca),'alternatives':{'cmd':_0x28a76b(0x150),'powershell':'Set-Acl'}},'chown':{'category':'ownership','alternatives':{'cmd':'takeown','powershell':'Set-Acl'}},'ps':{'category':'process-list','alternatives':{'cmd':_0x28a76b(0x1ce),'powershell':'Get-Process'}},'kill':{'category':'process-kill','alternatives':{'cmd':_0x28a76b(0x1ef),'powershell':_0x28a76b(0x192)}},'killall':{'category':'process-kill','alternatives':{'cmd':_0x28a76b(0x142),'powershell':_0x28a76b(0x1b3)}},'top':{'category':'process-monitor','alternatives':{'cmd':_0x28a76b(0x1ce),'powershell':'Get-Process\x20|\x20Sort-Object\x20CPU'}},'wget':{'category':_0x28a76b(0x1e0),'alternatives':{'cmd':'curl','powershell':'Invoke-WebRequest'}},'curl':{'category':_0x28a76b(0x11b),'alternatives':{'cmd':_0x28a76b(0x1ca),'powershell':_0x28a76b(0x17e)}},'ping':{'category':_0x28a76b(0x184),'alternatives':{'cmd':_0x28a76b(0x102),'powershell':'Test-NetConnection'}},'awk':{'category':_0x28a76b(0xcb),'alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':_0x28a76b(0x17f),'alternatives':{'cmd':'powershell\x20-c','powershell':_0x28a76b(0x1e3)}},'sort':{'category':'text-sort','alternatives':{'cmd':_0x28a76b(0x131),'powershell':'Sort-Object'}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':'sort\x20/unique','powershell':'Sort-Object\x20-Unique'}},'pwd':{'category':_0x28a76b(0xb6),'alternatives':{'cmd':'cd','powershell':_0x28a76b(0xc2)}},'whoami':{'category':'user-info','alternatives':{'cmd':'echo\x20%USERNAME%','powershell':'whoami'}},'env':{'category':_0x28a76b(0xde),'alternatives':{'cmd':_0x28a76b(0xd9),'powershell':_0x28a76b(0x12e)}},'export':{'category':_0x28a76b(0xde),'alternatives':{'cmd':_0x28a76b(0xd9),'powershell':_0x28a76b(0x128)}},'source':{'category':'script-execute','alternatives':{'cmd':'call','powershell':'.\x20'}},'tar':{'category':_0x28a76b(0x1ee),'alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':_0x28a76b(0x1ee),'alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0x28a76b(0x149)}},'unzip':{'category':_0x28a76b(0x1ee),'alternatives':{'cmd':'powershell\x20Expand-Archive','powershell':'Expand-Archive'}},'df':{'category':_0x28a76b(0x1b8),'alternatives':{'cmd':'fsutil\x20volume\x20diskfree','powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':'disk-usage','alternatives':{'cmd':'dir\x20/s','powershell':_0x28a76b(0x151)}},'free':{'category':_0x28a76b(0x15f),'alternatives':{'cmd':'systeminfo','powershell':'Get-WmiObject\x20-Class\x20Win32_PhysicalMemory'}},'uname':{'category':'system-info','alternatives':{'cmd':'systeminfo','powershell':'Get-ComputerInfo'}}},_0x2384d5={'dir':{'category':'file-listing','alternatives':{'unix':'ls','powershell':'Get-ChildItem'}},'type':{'category':'file-viewing','alternatives':{'unix':'cat','powershell':'Get-Content'}},'copy':{'category':'file-copy','alternatives':{'unix':'cp','powershell':_0x28a76b(0x13b)}},'move':{'category':_0x28a76b(0x1af),'alternatives':{'unix':'mv','powershell':_0x28a76b(0xdf)}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':_0x28a76b(0x101)}},'tasklist':{'category':'process-list','alternatives':{'unix':'ps','powershell':_0x28a76b(0x177)}},'taskkill':{'category':_0x28a76b(0xe8),'alternatives':{'unix':_0x28a76b(0x11e),'powershell':'Stop-Process'}},'findstr':{'category':_0x28a76b(0x180),'alternatives':{'unix':_0x28a76b(0xda),'powershell':'Select-String'}}},_0x551acd={'get-childitem':{'category':'file-listing','alternatives':{'unix':'ls','cmd':_0x28a76b(0x11c)}},'get-content':{'category':'file-viewing','alternatives':{'unix':_0x28a76b(0x1ba),'cmd':'type'}},'copy-item':{'category':'file-copy','alternatives':{'unix':'cp','cmd':'copy'}},'move-item':{'category':'file-move','alternatives':{'unix':'mv','cmd':_0x28a76b(0x19d)}},'remove-item':{'category':_0x28a76b(0x11d),'alternatives':{'unix':'rm','cmd':'del'}},'get-process':{'category':'process-list','alternatives':{'unix':'ps','cmd':_0x28a76b(0x1ce)}},'stop-process':{'category':'process-kill','alternatives':{'unix':'kill','cmd':_0x28a76b(0x1ef)}}};let _0x2d0a19=_0x28a76b(0xaf),_0x1e5fdb='unknown',_0xaa3809={};if(_0x28a1be[_0xb06a40])_0x2d0a19=_0x28a76b(0x113),_0x1e5fdb=_0x28a1be[_0xb06a40][_0x28a76b(0xc1)],_0xaa3809=_0x28a1be[_0xb06a40]['alternatives'];else{if(_0x2384d5[_0xb06a40])_0x2d0a19='windows-cmd',_0x1e5fdb=_0x2384d5[_0xb06a40]['category'],_0xaa3809=_0x2384d5[_0xb06a40][_0x28a76b(0xb7)];else{if(_0x551acd[_0xb06a40])_0x2d0a19=_0x28a76b(0xab),_0x1e5fdb=_0x551acd[_0xb06a40][_0x28a76b(0xc1)],_0xaa3809=_0x551acd[_0xb06a40]['alternatives'];else{const _0x4e7356=['echo','cd',_0x28a76b(0x125),_0x28a76b(0x121)];_0x4e7356['includes'](_0xb06a40)?(_0x2d0a19='universal',_0x1e5fdb=_0x28a76b(0x1de)):(_0x2d0a19=_0x28a76b(0xaf),_0x74e667=0.3);}}}return _0x3c6e23[_0x28a76b(0x1b4)]('\x27')&&!_0x3c6e23[_0x28a76b(0x1b4)]('\x22')&&_0x4cd39a['push'](_0x28a76b(0x14b)),_0x3c6e23['includes']('/')&&!_0x3c6e23['includes']('\x5c')&&!_0x3c6e23['includes'](_0x28a76b(0x171))&&_0x3c6e23['includes']('>')&&_0x4cd39a['push'](_0x28a76b(0xdc)),(_0x3c6e23[_0x28a76b(0x1b4)]('\x5cn')||_0x3c6e23[_0x28a76b(0x1b4)]('\x5ct'))&&_0x4cd39a[_0x28a76b(0x174)]('escape-sequences'),(_0x3c6e23[_0x28a76b(0x1b4)](_0x28a76b(0x196))||_0x3c6e23['includes']('\x20||\x20')||_0x3c6e23[_0x28a76b(0x1b4)](';'))&&_0x4cd39a['push']('command-chaining'),{'type':_0x2d0a19,'category':_0x1e5fdb,'alternatives':_0xaa3809,'issues':_0x4cd39a,'confidence':_0x74e667,'firstWord':_0xb06a40,'fullCommand':_0x3c6e23};}['isCommandCompatibleWithTerminal'](_0x531074,_0x578525){const _0x31c035=a0_0x90eebf;switch(_0x578525){case _0x31c035(0xe9):if(_0x531074[_0x31c035(0xee)]==='unix')return![];if(_0x531074[_0x31c035(0x175)]['includes']('single-quotes-problematic'))return![];if(_0x531074[_0x31c035(0x175)][_0x31c035(0x1b4)]('unix-style-paths'))return![];return _0x531074['type']==='windows-cmd'||_0x531074[_0x31c035(0xee)]===_0x31c035(0x186);case'powershell':if(_0x531074['type']===_0x31c035(0x113)&&!_0x531074[_0x31c035(0xb7)]['powershell'])return![];return!![];case _0x31c035(0x1c4):if(_0x531074['type']==='windows-cmd')return![];return _0x531074['type']===_0x31c035(0x113)||_0x531074[_0x31c035(0xee)]==='universal';default:return![];}}['translateToWindowsCmd'](_0x59a453){const _0x4d7497=a0_0x90eebf;let _0x9091d6=_0x59a453;const _0x59c7b1=new Map([[/^ls\s*$/,'dir'],[/^ls\s+-la?$/,_0x4d7497(0x11c)],[/^ls\s+-l$/,_0x4d7497(0x11c)],[/^ls\s+-a$/,_0x4d7497(0x10b)],[/^cat\s+(.+)$/,'type\x20$1'],[/^cp\s+(.+)\s+(.+)$/,'copy\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x4d7497(0x190)],[/^rm\s+(.+)$/,'del\x20$1'],[/^mkdir\s+(.+)$/,_0x4d7497(0x191)],[/^rmdir\s+(.+)$/,_0x4d7497(0x136)],[/^ps\s*$/,_0x4d7497(0x1ce)],[/^kill\s+(.+)$/,_0x4d7497(0xa6)],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,'echo\x20%USERNAME%'],[/^ping\s+(.+)$/,'ping\x20$1'],[/^wget\s+(.+)$/,_0x4d7497(0x178)],[/^curl\s+(.+)$/,'curl\x20$1']]);for(const [_0x1074fb,_0x3a0a61]of _0x59c7b1){if(_0x1074fb['test'](_0x9091d6)){_0x9091d6=_0x9091d6['replace'](_0x1074fb,_0x3a0a61);break;}}_0x9091d6=_0x9091d6[_0x4d7497(0x19e)](/echo\s+'([^']+)'\s*>/g,_0x4d7497(0x112)),_0x9091d6=_0x9091d6[_0x4d7497(0x19e)](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x9091d6[_0x4d7497(0x1b4)](_0x4d7497(0xf9))&&_0x9091d6['includes']('\x5cn')){const _0x409c85=_0x9091d6['match'](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x409c85){const _0x4fa880=_0x409c85[0x1][_0x4d7497(0x19e)](/\\n/g,'\x0a'),_0x5e67cd=_0x409c85[0x2],_0x51f2a2=_0x4fa880[_0x4d7497(0x141)]('\x0a');_0x9091d6='('+_0x51f2a2[_0x4d7497(0x179)](_0x46ad8e=>'echo\x20'+_0x46ad8e)[_0x4d7497(0x199)]('\x20&\x20')+_0x4d7497(0xa7)+_0x5e67cd;}}return this['logger']?.['info']('Command\x20translated\x20for\x20Windows\x20CMD',{'original':_0x59a453,'translated':_0x9091d6}),_0x9091d6;}[a0_0x90eebf(0x147)](_0xd68ebb){const _0x4ed70a=a0_0x90eebf;let _0x5085b0=_0xd68ebb;const _0x15e0fd=new Map([[/^ls\s*$/,'Get-ChildItem'],[/^ls\s+-la?$/,'Get-ChildItem\x20-Force'],[/^cat\s+(.+)$/,'Get-Content\x20$1'],[/^cp\s+(.+)\s+(.+)$/,_0x4ed70a(0x10c)],[/^mv\s+(.+)\s+(.+)$/,_0x4ed70a(0x1e4)],[/^rm\s+(.+)$/,_0x4ed70a(0xcf)],[/^pwd\s*$/,'Get-Location'],[/^ps\s*$/,_0x4ed70a(0x177)]]);for(const [_0x52bc8a,_0x590833]of _0x15e0fd){if(_0x52bc8a['test'](_0x5085b0)){_0x5085b0=_0x5085b0[_0x4ed70a(0x19e)](_0x52bc8a,_0x590833);break;}}return this[_0x4ed70a(0x166)]?.['info']('Command\x20translated\x20for\x20PowerShell',{'original':_0xd68ebb,'translated':_0x5085b0}),_0x5085b0;}['translateToBash'](_0x12bdfd){const _0x438a26=a0_0x90eebf;let _0x10070d=_0x12bdfd;const _0x5a94b3=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,'ls\x20-a'],[/^type\s+(.+)$/,'cat\x20$1'],[/^copy\s+(.+)\s+(.+)$/,'cp\x20$1\x20$2'],[/^move\s+(.+)\s+(.+)$/,_0x438a26(0xfb)],[/^del\s+(.+)$/,_0x438a26(0x162)],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,'pwd']]);for(const [_0x1056ec,_0x3ceffa]of _0x5a94b3){if(_0x1056ec['test'](_0x10070d)){_0x10070d=_0x10070d['replace'](_0x1056ec,_0x3ceffa);break;}}return _0x10070d;}async['cleanup'](_0x14027f){}async['startBackgroundCommand'](_0x3c1c3e,_0x2ca798,_0x4e5ccb={}){const _0x5e044f=a0_0x90eebf,{agentId:_0xf73c95,context:_0x408e07}=_0x4e5ccb;if(!_0xf73c95)throw new Error(_0x5e044f(0x122));const _0xe6404b=this['getAgentCommands'](_0xf73c95),_0x17cb20=_0xe6404b['filter'](_0x57b2ad=>_0x57b2ad['state']===_0x5e044f(0x188)||_0x57b2ad['state']===_0x5e044f(0x1b7));if(_0x17cb20['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error('Maximum\x20background\x20commands\x20per\x20agent\x20exceeded\x20('+this[_0x5e044f(0xcd)]+')');const _0x509631=Array['from'](this[_0x5e044f(0xbd)][_0x5e044f(0x18e)]()),_0x24a0b4=_0x509631[_0x5e044f(0xb4)](_0x10549c=>_0x10549c[_0x5e044f(0xfd)]===_0x5e044f(0x188)||_0x10549c[_0x5e044f(0xfd)]==='waiting_for_input');if(_0x24a0b4['length']>=this[_0x5e044f(0x10f)])throw new Error(_0x5e044f(0x126)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0x5705fb=_0xf73c95+_0x5e044f(0x183)+Date['now']()+'-'+ ++this[_0x5e044f(0xf1)],_0x5aee74=_0x3c1c3e;let _0x1f3af;try{_0x1f3af=await this['translateCommand'](_0x3c1c3e,{'agentId':_0xf73c95,'toolsRegistry':_0x408e07?.['toolsRegistry'],'messageProcessor':_0x408e07?.[_0x5e044f(0x19f)],'aiService':_0x408e07?.[_0x5e044f(0x1c1)],'apiKey':_0x408e07?.[_0x5e044f(0x1c7)],'customApiKeys':_0x408e07?.['customApiKeys'],'platformProvided':_0x408e07?.['platformProvided']});}catch(_0x37b043){this['logger']?.['warn'](_0x5e044f(0xba),{'originalCommand':_0x5aee74,'error':_0x37b043[_0x5e044f(0x160)]}),_0x1f3af=_0x3c1c3e;}this[_0x5e044f(0x166)]?.['info']('Starting\x20background\x20command:\x20'+_0x1f3af,{'commandId':_0x5705fb,'agentId':_0xf73c95,'originalCommand':_0x5aee74,'workingDirectory':_0x2ca798});let _0x1fbd69;if(this[_0x5e044f(0x1ea)]===_0x5e044f(0xe9)||this[_0x5e044f(0x1ea)]==='powershell'){const _0x8f8f21=this[_0x5e044f(0x1ea)]===_0x5e044f(0xab)?'powershell':'cmd',_0x4cc7e4=this[_0x5e044f(0x1ea)]==='powershell'?[_0x5e044f(0x132),_0x1f3af]:['/c',_0x1f3af];_0x1fbd69=spawn(_0x8f8f21,_0x4cc7e4,{'cwd':_0x2ca798,'env':{...process['env']},'windowsHide':!![],'stdio':[_0x5e044f(0x168),_0x5e044f(0x168),'pipe']});}else _0x1fbd69=spawn('sh',['-c',_0x1f3af],{'cwd':_0x2ca798,'env':{...process['env']},'stdio':[_0x5e044f(0x168),_0x5e044f(0x168),'pipe']});const _0x1f9806={'commandId':_0x5705fb,'agentId':_0xf73c95,'pid':_0x1fbd69[_0x5e044f(0xbc)],'command':_0x5aee74,'translatedCommand':_0x1f3af,'workingDirectory':_0x2ca798,'startTime':new Date()[_0x5e044f(0x11a)](),'state':'running','exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date[_0x5e044f(0xe3)](),'promptDetected':null,'process':_0x1fbd69};return this['commandTracker']['set'](_0x5705fb,_0x1f9806),_0x1fbd69['stdout']['on'](_0x5e044f(0x1ac),_0x32eadb=>{const _0xd99be9=_0x5e044f,_0x1489f4=_0x32eadb['toString']();_0x1f9806[_0xd99be9(0xaa)]+=_0x1489f4,_0x1f9806['lastOutputTime']=Date[_0xd99be9(0xe3)]();if(!_0x1f9806['promptDetected']){const _0x565383=this['promptDetector'][_0xd99be9(0x189)](_0x1f9806[_0xd99be9(0xaa)],'stdout');_0x565383&&(_0x1f9806[_0xd99be9(0x153)]=_0x565383,_0x1f9806[_0xd99be9(0xfd)]=_0xd99be9(0x1b7),this[_0xd99be9(0x166)]?.[_0xd99be9(0xd3)](_0xd99be9(0xb5),{'commandId':_0x5705fb,'agentId':_0xf73c95,'type':_0x565383[_0xd99be9(0xee)],'matchedText':_0x565383['matchedText']}));}}),_0x1fbd69[_0x5e044f(0xdd)]['on'](_0x5e044f(0x1ac),_0x348103=>{const _0xd7d45=_0x5e044f,_0x582db4=_0x348103[_0xd7d45(0x1b0)]();_0x1f9806['stderrBuffer']+=_0x582db4,_0x1f9806[_0xd7d45(0x16c)]=Date['now']();if(!_0x1f9806['promptDetected']){const _0x37fd59=this['promptDetector']['detectPrompt'](_0x1f9806[_0xd7d45(0x1b5)],'stderr');_0x37fd59&&(_0x1f9806[_0xd7d45(0x153)]=_0x37fd59,_0x1f9806[_0xd7d45(0xfd)]=_0xd7d45(0x1b7),this['logger']?.['info']('Prompt\x20detected\x20in\x20background\x20command\x20stderr',{'commandId':_0x5705fb,'agentId':_0xf73c95,'type':_0x37fd59['type'],'matchedText':_0x37fd59['matchedText']}));}}),_0x1fbd69['on']('exit',(_0x1043f5,_0x5ea809)=>{const _0x2e6b75=_0x5e044f;_0x1f9806['exitCode']=_0x1043f5,_0x1f9806[_0x2e6b75(0xfd)]=_0x1043f5===0x0?'completed':_0x2e6b75(0x1c9),_0x1f9806[_0x2e6b75(0x1ab)]=new Date()[_0x2e6b75(0x11a)](),this['logger']?.[_0x2e6b75(0xd3)]('Background\x20command\x20exited',{'commandId':_0x5705fb,'agentId':_0xf73c95,'exitCode':_0x1043f5,'signal':_0x5ea809,'state':_0x1f9806[_0x2e6b75(0xfd)]});}),_0x1fbd69['on']('error',_0x62cd0b=>{const _0x34bc02=_0x5e044f;_0x1f9806[_0x34bc02(0xfd)]=_0x34bc02(0x1c9),_0x1f9806[_0x34bc02(0x148)]=_0x62cd0b['message'],_0x1f9806['endTime']=new Date()[_0x34bc02(0x11a)](),this['logger']?.[_0x34bc02(0x148)]('Background\x20command\x20error',{'commandId':_0x5705fb,'agentId':_0xf73c95,'error':_0x62cd0b['message']});}),{'success':!![],'commandId':_0x5705fb,'pid':_0x1fbd69[_0x5e044f(0xbc)],'command':_0x5aee74,'translatedCommand':_0x1f3af,'workingDirectory':_0x2ca798,'message':'Background\x20command\x20started\x20with\x20ID:\x20'+_0x5705fb};}['sendInput'](_0xbb22dd,_0x30056b,_0xa1cc6a){const _0x173334=a0_0x90eebf,_0x57eea5=this['validateCommandOwnership'](_0xbb22dd,_0xa1cc6a);if(_0x57eea5[_0x173334(0xfd)]==='completed'||_0x57eea5[_0x173334(0xfd)]===_0x173334(0x1c9))throw new Error('Cannot\x20send\x20input\x20to\x20'+_0x57eea5['state']+_0x173334(0x15b));if(!_0x57eea5[_0x173334(0x140)]||_0x57eea5[_0x173334(0x140)][_0x173334(0x187)])throw new Error('Command\x20process\x20is\x20not\x20running');const _0xf99460=_0x30056b['endsWith']('\x0a')?_0x30056b:_0x30056b+'\x0a';return _0x57eea5[_0x173334(0x140)][_0x173334(0xf7)][_0x173334(0x181)](_0xf99460),this[_0x173334(0x166)]?.[_0x173334(0xd3)]('Input\x20sent\x20to\x20background\x20command',{'commandId':_0xbb22dd,'agentId':_0xa1cc6a,'inputLength':_0x30056b[_0x173334(0xb1)]}),_0x57eea5['state']===_0x173334(0x1b7)&&(_0x57eea5['state']=_0x173334(0x188),_0x57eea5['promptDetected']=null),{'success':!![],'commandId':_0xbb22dd,'message':_0x173334(0xf2)};}[a0_0x90eebf(0x114)](_0x57c3e7,_0x3997c4){const _0x1c527c=a0_0x90eebf,_0x1e1374=this[_0x1c527c(0x104)](_0x57c3e7,_0x3997c4),_0x7d3326=Date[_0x1c527c(0xe3)]()-_0x1e1374['lastOutputTime'];return{'success':!![],'commandId':_0x57c3e7,'pid':_0x1e1374['pid'],'command':_0x1e1374[_0x1c527c(0x1b9)],'state':_0x1e1374[_0x1c527c(0xfd)],'exitCode':_0x1e1374['exitCode'],'startTime':_0x1e1374[_0x1c527c(0x1a3)],'endTime':_0x1e1374[_0x1c527c(0x1ab)],'workingDirectory':_0x1e1374[_0x1c527c(0x107)],'stdout':_0x1e1374['stdoutBuffer'],'stderr':_0x1e1374['stderrBuffer'],'stdoutLength':_0x1e1374[_0x1c527c(0xaa)]['length'],'stderrLength':_0x1e1374[_0x1c527c(0x1b5)][_0x1c527c(0xb1)],'lastOutputTime':_0x1e1374['lastOutputTime'],'timeSinceLastOutput':_0x7d3326,'promptDetected':!!_0x1e1374[_0x1c527c(0x153)],'promptInfo':_0x1e1374['promptDetected']||undefined};}[a0_0x90eebf(0x13c)](_0x42aa70,_0x5402f4){const _0xa5fe8a=a0_0x90eebf,_0x172e62=this[_0xa5fe8a(0x104)](_0x42aa70,_0x5402f4);if(_0x172e62['state']==='completed'||_0x172e62['state']===_0xa5fe8a(0x1c9))return{'success':!![],'commandId':_0x42aa70,'message':_0xa5fe8a(0x1d6),'state':_0x172e62[_0xa5fe8a(0xfd)]};if(_0x172e62['process']&&!_0x172e62[_0xa5fe8a(0x140)]['killed'])return _0x172e62[_0xa5fe8a(0x140)][_0xa5fe8a(0x11e)]('SIGTERM'),setTimeout(()=>{const _0x225dd0=_0xa5fe8a;_0x172e62[_0x225dd0(0x140)]&&!_0x172e62[_0x225dd0(0x140)]['killed']&&_0x172e62['process']['kill'](_0x225dd0(0x195));},0x1388),this['logger']?.[_0xa5fe8a(0xd3)](_0xa5fe8a(0x152),{'commandId':_0x42aa70,'agentId':_0x5402f4}),{'success':!![],'commandId':_0x42aa70,'message':'Command\x20killed\x20successfully'};return{'success':![],'commandId':_0x42aa70,'error':'Command\x20process\x20not\x20found\x20or\x20already\x20killed'};}['listAgentCommands'](_0x5e0842){const _0x273999=a0_0x90eebf,_0x5db5c3=this[_0x273999(0x167)](_0x5e0842);return _0x5db5c3[_0x273999(0x179)](_0x19ce7c=>({'commandId':_0x19ce7c[_0x273999(0xae)],'command':_0x19ce7c['command'],'state':_0x19ce7c['state'],'pid':_0x19ce7c[_0x273999(0xbc)],'exitCode':_0x19ce7c[_0x273999(0x16d)],'startTime':_0x19ce7c['startTime'],'endTime':_0x19ce7c['endTime'],'promptDetected':!!_0x19ce7c[_0x273999(0x153)],'timeSinceLastOutput':Date['now']()-_0x19ce7c[_0x273999(0x16c)]}));}[a0_0x90eebf(0x167)](_0x26187c){const _0x50b283=a0_0x90eebf;return Array[_0x50b283(0x135)](this[_0x50b283(0xbd)]['values']())['filter'](_0x31ab50=>_0x31ab50['agentId']===_0x26187c);}[a0_0x90eebf(0x104)](_0x319f2c,_0xc8ff57){const _0x5c225d=a0_0x90eebf,_0x26e763=this['commandTracker']['get'](_0x319f2c);if(!_0x26e763)throw new Error('Command\x20not\x20found:\x20'+_0x319f2c);if(_0x26e763['agentId']!==_0xc8ff57)throw new Error(_0x5c225d(0x1dd)+_0x26e763[_0x5c225d(0xc0)]);return _0x26e763;}async['cleanupAgent'](_0x29d4e9){const _0x53247c=a0_0x90eebf,_0x1f3699=this['getAgentCommands'](_0x29d4e9);let _0x358450=0x0,_0x1d2873=0x0;for(const _0x3d9c9f of _0x1f3699){_0x3d9c9f['process']&&!_0x3d9c9f[_0x53247c(0x140)]['killed']&&(_0x3d9c9f[_0x53247c(0x140)][_0x53247c(0x11e)](_0x53247c(0x1c6)),_0x358450++,setTimeout(()=>{const _0x10f8f1=_0x53247c;_0x3d9c9f[_0x10f8f1(0x140)]&&!_0x3d9c9f['process']['killed']&&_0x3d9c9f[_0x10f8f1(0x140)]['kill'](_0x10f8f1(0x195));},0xbb8)),this['commandTracker'][_0x53247c(0x13d)](_0x3d9c9f[_0x53247c(0xae)]),_0x1d2873++;}return this[_0x53247c(0x166)]?.['info'](_0x53247c(0x1ec),{'agentId':_0x29d4e9,'killedCount':_0x358450,'removedCount':_0x1d2873}),{'success':!![],'agentId':_0x29d4e9,'killedCount':_0x358450,'removedCount':_0x1d2873,'message':'Cleaned\x20up\x20'+_0x1d2873+'\x20commands\x20for\x20agent\x20'+_0x29d4e9};}['cleanupStaleCommands'](){const _0x569114=a0_0x90eebf,_0x2d5bfd=Date[_0x569114(0xe3)]();let _0x47f9f7=0x0;for(const [_0x1063cd,_0x362399]of this['commandTracker']['entries']()){if(_0x362399[_0x569114(0xfd)]!=='completed'&&_0x362399[_0x569114(0xfd)]!=='failed')continue;const _0x200b59=new Date(_0x362399['startTime'])[_0x569114(0x105)](),_0x41c216=(_0x2d5bfd-_0x200b59)/0x3e8/0x3c;_0x41c216>this[_0x569114(0x161)]&&(this[_0x569114(0xbd)]['delete'](_0x1063cd),_0x47f9f7++);}return _0x47f9f7>0x0&&this['logger']?.['info']('Stale\x20commands\x20cleaned\x20up',{'removedCount':_0x47f9f7,'ageThresholdMinutes':this[_0x569114(0x161)]}),{'success':!![],'removedCount':_0x47f9f7,'message':'Cleaned\x20up\x20'+_0x47f9f7+_0x569114(0x15c)};}}export default TerminalTool;
|
|
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;
|
package/src/tools/webTool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x380c(_0x33f8df,_0x328f52){_0x33f8df=_0x33f8df-0x1ac;const _0x57b0da=a0_0x57b0();let _0x380c39=_0x57b0da[_0x33f8df];if(a0_0x380c['NrSkRb']===undefined){var _0x45fd0b=function(_0x1ebf96){const _0x30c03b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x276770='',_0x30abfa='';for(let _0x2df44f=0x0,_0x3c23cc,_0x2f00fe,_0x59d20b=0x0;_0x2f00fe=_0x1ebf96['charAt'](_0x59d20b++);~_0x2f00fe&&(_0x3c23cc=_0x2df44f%0x4?_0x3c23cc*0x40+_0x2f00fe:_0x2f00fe,_0x2df44f++%0x4)?_0x276770+=String['fromCharCode'](0xff&_0x3c23cc>>(-0x2*_0x2df44f&0x6)):0x0){_0x2f00fe=_0x30c03b['indexOf'](_0x2f00fe);}for(let _0x550f4e=0x0,_0x311553=_0x276770['length'];_0x550f4e<_0x311553;_0x550f4e++){_0x30abfa+='%'+('00'+_0x276770['charCodeAt'](_0x550f4e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x30abfa);};a0_0x380c['TkbYLq']=_0x45fd0b,a0_0x380c['wETDCr']={},a0_0x380c['NrSkRb']=!![];}const _0x2e8bd6=_0x57b0da[0x0],_0x528428=_0x33f8df+_0x2e8bd6,_0x2f75eb=a0_0x380c['wETDCr'][_0x528428];return!_0x2f75eb?(_0x380c39=a0_0x380c['TkbYLq'](_0x380c39),a0_0x380c['wETDCr'][_0x528428]=_0x380c39):_0x380c39=_0x2f75eb,_0x380c39;}const a0_0x25f545=a0_0x380c;(function(_0x341519,_0x275173){const _0x4846c7=a0_0x380c,_0x35b4b6=_0x341519();while(!![]){try{const _0x38acb9=-parseInt(_0x4846c7(0x211))/0x1*(-parseInt(_0x4846c7(0x1bb))/0x2)+-parseInt(_0x4846c7(0x254))/0x3+parseInt(_0x4846c7(0x1fd))/0x4*(-parseInt(_0x4846c7(0x1b7))/0x5)+parseInt(_0x4846c7(0x221))/0x6*(parseInt(_0x4846c7(0x204))/0x7)+-parseInt(_0x4846c7(0x1e7))/0x8+parseInt(_0x4846c7(0x200))/0x9*(parseInt(_0x4846c7(0x23c))/0xa)+parseInt(_0x4846c7(0x1c7))/0xb*(parseInt(_0x4846c7(0x241))/0xc);if(_0x38acb9===_0x275173)break;else _0x35b4b6['push'](_0x35b4b6['shift']());}catch(_0x1f9c15){_0x35b4b6['push'](_0x35b4b6['shift']());}}}(a0_0x57b0,0x51a7c));import{BaseTool}from'./baseTool.js';function a0_0x57b0(){const _0xba4d75=['ls1KAxnHyMXLlwfJy2vSzxjHDgvKltjKlwnHBNzHCW','Bwf4uMvZDwX0CW','C3rHCNrdBgvHBNvWvgLTzxi','revgqvvmvf9usu1ft1vu','tM8Gywn0AxzLihrHyNm','yw5HBhL6zs1Zy3jLzw5ZAg90','nNDhyw5IrW','ywDLBNrjza','BMv0D29YA2LKBguY','Dgv4DenVBNrLBNq','AxndB25Uzwn0zwq','rMfPBgvKihrVignSB3nLigLKBguGDgfI','D2fPDfnLBgvJDg9Y','Aw5JBhvKzxm','vefcx0LetevFveLnru9vva','qNjVD3nLCIbPBML0AwfSAxPHDgLVBIbMywLSzwq6ia','C2vHCMnO','C2v0','BgfZDefJDgL2Axr5','zxH0CMfJDc10zxH0','B3bLBLrHyG','zw5ZDxjLqNjVD3nLCG','C3bSAxq','tM8GDgfICYb0BYbJBgvHBIb1Ca','BM93','Aw5WDxrBBMfTzt0ICsjD','Aw50zxjHy3rPDMu','C2XPy2u','CgfYC2vozxn0zwrby3rPB25Z','BMv3ugfNzq','CxvLCNKGAxmGCMvXDwLYzwqGzM9YihnLyxjJAcbVCgvYyxrPB24','Aw5WDxrBDhLWzt0IC3vIBwL0iL0Sigj1DhrVBLT0ExbLpsjZDwjTAxqIxq','z2v0lxnVDxjJzq','mtbNB0rSAwm','AM9PBG','cLDLyIbuB29SoIbcCM93C2uSihnLyxjJAcWGyw5Kigf1Dg9TyxrLihDLyIbPBNrLCMfJDgLVBNmGDxnPBMCGuhvWCgv0zwvYlGOkvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaID2vIiIWkicaIB3bLCMf0Aw9UiJOGiNnLyxjJAhXMzxrJAhXPBNrLCMfJDgL2zsiScIaGiNbHCMfTzxrLCNmIoIb7lI4UFqP9cMbGyaOkt1bfuKfusu9ouZOkcJeUifnfqvjdsdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj3zwiIlaOGicjVCgvYyxrPB24IoIaIC2vHCMnOiIWkicaICxvLCNKIoIaIC2vHCMnOihrLCM1ZiIWkicaIzw5NAw5LiJOGiMDVB2DSzsiScIaGiM1HEfjLC3vSDhmIoIaXmaP9cMbGyaOkmI4GrKvuq0G6cMbGygPZB24kEWOGicj0B29SswqIoIaID2vIiIWkicaIB3bLCMf0Aw9UiJOGiMzLDgnOiIWkicaIDxjSiJOGiMH0DhbZoI8VzxHHBxbSzs5JB20IlaOGicjMB3jTyxrZiJOGwYj0AxrSzsiSicj0zxH0iIWGiMXPBMTZiL0kFqPGygakcJmUieLovevsqunusvzfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNDLyIiScIaGiM9WzxjHDgLVBIi6icjPBNrLCMfJDgL2zsiScIaGiMHLywrSzxnZiJOGDhj1zsWkicaIywn0Aw9UCYi6ifSkicaGihSkicaGicaGiNr5CguIoIaIB3bLBI10ywiIlaOGicaGicaIBMfTzsi6icjTywLUiIWkicaGicaGiNvYBci6icjODhrWCZOVl2v4yw1WBguUy29TiIWkicaGicaGiM5LC3rLzefJDgLVBNmIoIbBcIaGicaGicaGEYj0ExbLiJOGiNDHAxqTzM9YiIWGiNnLBgvJDg9YiJOGiI5JB250zw50iN0ScIaGicaGicaGEYj0ExbLiJOGiMnSAwnRiIWGiNnLBgvJDg9YiJOGiMj1DhrVBI5ZDwjTAxqIFsWkicaGicaGicb7iNr5CguIoIaIC2nYzwvUC2HVDciSicjMB3jTyxqIoIaIzMLSzsiSicjWyxrOiJOGiNjLC3vSDc5WBMCIFsWkicaGicaGicb7iNr5CguIoIaIzxH0CMfJDc10zxH0iIWGiNnLBgvJDg9YiJOGiInJB250zw50iN0kicaGicaGxqOGicaGFsWkicaGihSIDhLWzsi6icjJBg9Zzs10ywiIlcaIBMfTzsi6icjTywLUiN0kicbDcN0kygbGcGPtvvbqt1juruqGqunusu9ouZOklsbVCgvUlxrHyIWGy2XVC2uTDgfIlcbZD2L0y2GTDgfIlcbSAxn0lxrHyNmklsbUyxzPz2f0zsWGy2XPy2SSihr5CguSihbYzxnZcI0GD2fPDc1MB3iSihnJCMvLBNnOB3qSigfUywX5EMuTC2nYzwvUC2HVDaOTigv4DhjHy3qTDgv4DcWGzxH0CMfJDc1SAw5RCYWGz2v0lxnVDxjJzqOTihnJCM9SBcWGAg92zxikcKvyqu1qtevtoGOku2vHCMnOieDVB2DSztOkygbGANnVBGP7iNrVB2Xjzci6icj3zwiIlcaIB3bLCMf0Aw9UiJOGiNnLyxjJAciSicjXDwvYEsi6icjWDxbWzxrLzxiGDhv0B3jPywWIlcaIBwf4uMvZDwX0CYi6idv9cMbGyaOkrMv0y2GGCgfNzsbJB250zw50oGPGygbQC29UcNSIDg9VBeLKiJOGiNDLyIiSicjVCgvYyxrPB24IoIaIzMv0y2GIlcaIDxjSiJOGiMH0DhbZoI8VzxHHBxbSzs5JB20IlcaIzM9YBwf0CYi6ifSIDgv4DciSicjSAw5RCYjDFqPGygakcKf1Dg9TyxrLihDVCMTMBg93oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNDLyIiScIaGiM9WzxjHDgLVBIi6icjPBNrLCMfJDgL2zsiScIaGiMfJDgLVBNmIoIbBcIaGicb7cIaGicaGicj0ExbLiJOGiM9Wzw4TDgfIiIWkicaGicaGiM5HBwuIoIaIC2vHCMnOiIWkicaGicaGiNvYBci6icjODhrWCZOVl2DPDgH1yI5JB20VDhjLBMrPBMCIlaOGicaGicaIBMvZDgvKqwn0Aw9UCYi6ifSkicaGicaGicb7iNr5CguIoIaID2fPDc1MB3iIlcaIC2vSzwn0B3iIoIaIlKjVEc1YB3CIFsWkicaGicaGicb7iNr5CguIoIaIzxH0CMfJDc1SAw5RCYiSicjZzwXLy3rVCIi6iciUqM94lxjVDYbHiN0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLnfq1vssvrzoGOTiejYB3DZzxiGAxnVBgf0zwqGCgvYigfNzw50cI0GvgfICYbHDxrVlwnSB3nLigfMDgvYideGAg91CGOGicaG','CxvLCNLtzwXLy3rVCKfSBa','C3DPDgnOlxrHyG','mtjKsKX1Cwi','C2nYB2XS','yM9KEq','Bg9Nz2vY','qw5HBhL6Aw5NihnJCMvLBNnOB3qGD2L0Acbbsq','y2XVC2vZDa','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq6ia','C3rHCNrZv2L0Aa','vw5RBM93BIbZzwfYy2GGzw5NAw5LoIa','AhjLzG','qwn0Aw9UigzHAwXLza','y2XVC2u','zxHLyW','DgL0Bgu','jYbJBg9Zzwq','C2L6zq','Aw5UzxjuzxH0','BgLUA3m','CgXHDgzVCM1qCM92AwrLza','nty2mZC5BhnLvwLc','yMLUzW','uhvWCgv0zwvYigjYB3DZzxiGAw5PDgLHBgL6zwqGC3vJy2vZC2z1BgX5','DMfSDwu','t3bLBMLUzYb0ywi','Ahr0Chm6lY93D3CUyMLUzY5JB20VC2vHCMnOp3e9','C2nYB2XSsw50B1zPzxC','zgvMyxvSDfrPBwvVDxq','y3vZDg9TqxbPs2v5CW','y3DK','ls1KAxnHyMXLlwjSAw5RlwzLyxr1CMvZpuf1Dg9TyxrPB25dB250CM9SBgvK','yNjVD3nLCG','zxzHBhvHDgu','C2nYzwvUC2HVDc0','B3bLCMf0Aw9Uig11C3qGyMuGB25Lig9MoIbZzwfYy2GSigzLDgnOlcbPBNrLCMfJDgL2zq','CMf3q29UDgvUDa','CgfYC2u','q2XLyw5PBMCGDxaGAwrSzsb0ywjZ','Dgv4Da','rMfPBgvKihrVignYzwf0zsb0zw1WigrPCMvJDg9YEq','vw5RBM93BIbVCgvYyxrPB246ia','CgfNzq','mteWodC1mhbSDeDSEq','AgfZ','C2vHCMnOrw5NAw5LCW','kfTEpL0Qkt4Ow148xsOPpc8','mKfitM5vDG','q2XVC2vKigLKBguGDgfI','ChvZAa','zMLSzq','ChjVAMvJDerPCG','BMfTzq','zM9YBwf0','B3bLBI10ywi','ls1KAxnHyMXLlxnLDhvPzc1Zyw5KyM94','zMv0y2G','lNbUzW','BgLZDfrHyNm','nJaZnJG5oxbWqNr6Cq','C2nYzwvUC2HVDa','z2v0rgvZy3jPChrPB24','y29UC29Szu1LC3nHz2vZ','z2v0lwnVBNnVBgu','y2XLyw51CeLUDgvYDMfS','u2vHCMnOignVBxbSzxrLza','zw5NAw5L','rMfPBgvKihrVig9Wzw4GDgfI','y2XLyw51CfrPBwvY','zM9YBwf0CW','rMfPBgvKihrVihbHCNnLihDLyIb0B29SihbHCMfTzxrLCNm6ia','z290BW','ChjLC3m','ugvYzM9YBwLUzYb3zwiGC2vHCMnO','BwvZC2fNzq','AxnbC3LUyW','i2XPBMTZlcbBzgf0ys10zxn0Awq9iM1HAw5SAw5LiL0','DgLTzw91Da','zgvSzxrL','lIbbDMfPBgfIBgu6ia','Bw91C2uTBw92zq','zxjYB3i','z29Vz2XL','zhvJA2r1y2TNBW','u2vHCMnOihf1zxj5igLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','lNjLC3vSDf9FysWGyvTKyxrHlxrLC3rPzd0ICMvZDwX0lxrPDgXLlweIxq','rMfPBgvKihrVignSzwfUihrLBxaGzgLYzwn0B3j5','C3DPDgnOvgfI','Bgf1BMnO','yvTOCMvMxq','BMvZDgvKqwn0Aw9UCW','ndC3mtG1nLnQuxbhta','D2vI','DhjPBq','BgvUz3rO','ywDLBNruywjZ','yNjVD3nLCKLUAxrPywXPEMLUzW','A2v5','y29UC29Szq','q2XVC2vKia','C2vUze1LC3nHz2u','zxH0CMfJDenVBNrLBNq','ihrHyNmGzM9YigfNzw50ia','jYbUB3qGzM91BMqGzM9YigfNzw50ia','ywn0Aw9UCW','CxvLCNK','ls11C2vYlwfNzw50pu1VEMLSBgeVns4WicHxAw5KB3DZie5uideWlJa7ifDPBJy0oYb4nJqPiefWCgXLv2vIs2L0lZuZnY4ZnIaOs0HutuWSigXPA2uGr2vJA28PienOCM9Tzs8XmJaUmc4WlJaGu2fMyxjPlZuZnY4ZnG','BwfW','DhLWzq','Ag92zxi','DxjS','zw50CMLLCW','yw5HBhL6zvnJCMvLBNnOB3q','ne1IqunTrq','CMvZDwX0C1nLBgvJDg9Y','vevnuf9esvi','mJi5mdyZnxnxrMvyBq','vgfIicC','Dg1WzgLY','rMv0y2HPBMCGD2vIignVBNrLBNq','mZu1ndG2nNjZEw91Dq','zNjVBq','C2vSzwn0B3i','D2fPDc1MB3i','Ahr0Chm6lY9KDwnRzhvJA2DVlMnVBs8/Ct0','z2v0','zMLSDgvY','jYbHBhjLywr5igv4Axn0CYbMB3iGywDLBNqG','Aw5MBW','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq','zxHLy3v0zq','Ahr0Chm6lY93D3CUz29Vz2XLlMnVBs9ZzwfYy2G/Ct0','B3bLCMf0Aw9U','mZaZmJnquejSBgy','D2fPDezVCLnLBgvJDg9Y','zxH0CMfJDc1SAw5RCW','sw5PDgLHBgL6Aw5Nifb1ChbLDgvLCIbICM93C2vY','DxjSigLZihjLCxvPCMvKigzVCIbMzxrJAcbVCgvYyxrPB24','y2XPy2S','zxHLy3v0zvrHyKfJDgLVBG','yNv0Dg9Uw3r5Cgu9iNn1yM1PDcjD','BMf2AwDHDgu','AhrTBa'];a0_0x57b0=function(){return _0xba4d75;};return a0_0x57b0();}import a0_0x276770 from'../utilities/tagParser.js';import a0_0x30abfa from'puppeteer';import a0_0x2df44f from'path';import a0_0x3c23cc from'fs/promises';import a0_0x2f00fe from'os';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class WebTool extends BaseTool{constructor(_0x59d20b={},_0x550f4e=null){const _0x132930=a0_0x380c;super(_0x59d20b,_0x550f4e),this['requiresProject']=![],this[_0x132930(0x1d7)]=!![],this[_0x132930(0x1ac)]=null,this['browserInitializing']=![],this['agentTabs']=new Map(),this['searchEngines']=[{'name':'google','url':_0x132930(0x20f),'searchSelector':'input[name=\x22q\x22]','submitSelector':_0x132930(0x23a),'resultsSelector':'#search\x20.g\x20a,\x20#search\x20a[href]','waitSelector':'#search'},{'name':_0x132930(0x255),'url':_0x132930(0x259),'searchSelector':'input[name=\x22q\x22]','submitSelector':'input[type=\x22submit\x22]','resultsSelector':'.b_algo\x20a','waitSelector':'#b_results'},{'name':_0x132930(0x1df),'url':_0x132930(0x208),'searchSelector':_0x132930(0x234),'submitSelector':_0x132930(0x218),'resultsSelector':_0x132930(0x1e1),'waitSelector':_0x132930(0x1d8)}],this[_0x132930(0x229)]=_0x59d20b['tabIdleTimeout']||0x3c*0x3c*0x3e8,this['CLEANUP_INTERVAL']=_0x59d20b[_0x132930(0x1cc)]||0x5*0x3c*0x3e8,this['DEFAULT_TIMEOUT']=_0x59d20b[_0x132930(0x25b)]||0xea60,this['TEMP_DIR']=_0x59d20b['tempDir']||a0_0x2df44f['join'](a0_0x2f00fe[_0x132930(0x202)](),'webtool-screenshots'),this[_0x132930(0x1d0)]=null,this['startCleanupTimer'](),this['ensureTempDir']();}[a0_0x25f545(0x1c9)](){const _0x553d4b=a0_0x25f545;return _0x553d4b(0x23e);}['parseParameters'](_0x311553){const _0x457433=a0_0x25f545;try{if(_0x311553['trim']()['startsWith']('{'))return JSON[_0x457433(0x1b1)](_0x311553);const _0x1f2328={},_0x45d750=a0_0x276770[_0x457433(0x1f1)](_0x311553,'operation');_0x45d750['length']>0x0&&(_0x1f2328[_0x457433(0x210)]=_0x45d750[0x0]['trim']());switch(_0x1f2328[_0x457433(0x210)]){case'search':_0x1f2328['query']=a0_0x276770['extractContent'](_0x311553,'query')[0x0]?.[_0x457433(0x1e9)](),_0x1f2328['engine']=a0_0x276770[_0x457433(0x1f1)](_0x311553,_0x457433(0x1ce))[0x0]?.[_0x457433(0x1e9)]()||'google';const _0x477d0a=a0_0x276770['extractContent'](_0x311553,'max-results')[0x0]?.['trim']();_0x1f2328[_0x457433(0x21c)]=_0x477d0a?parseInt(_0x477d0a,0xa):0xa;break;case _0x457433(0x1c4):_0x1f2328[_0x457433(0x1fa)]=a0_0x276770['extractContent'](_0x311553,'url')[0x0]?.['trim']();const _0x1c1b76=a0_0x276770['extractContent'](_0x311553,_0x457433(0x1c1))[0x0]?.['trim']();_0x1f2328[_0x457433(0x1d1)]=_0x1c1b76?_0x1c1b76[_0x457433(0x231)](',')['map'](_0x37244e=>_0x37244e[_0x457433(0x1e9)]()):[_0x457433(0x24e),'text'];break;case _0x457433(0x235):const _0x23c370=a0_0x276770['extractContent'](_0x311553,'headless')[0x0]?.[_0x457433(0x1e9)]();_0x1f2328['headless']=_0x23c370!=='false';const _0x1f5384=a0_0x276770['extractContent'](_0x311553,'actions')[0x0];_0x1f5384&&(_0x1f2328['actions']=this['parseActions'](_0x1f5384));break;}return _0x1f2328[_0x457433(0x1b0)]=_0x311553['trim'](),_0x1f2328;}catch(_0x1eae5b){throw new Error(_0x457433(0x1d2)+_0x1eae5b['message']);}}['parseActions'](_0x4dd6f7){const _0x13a7df=a0_0x25f545,_0x3cb4e3=[],_0x2595bf=/<open-tab[^>]*name="([^"]+)"[^>]*>([\s\S]*?)<\/open-tab>/g;let _0x4563a6;while((_0x4563a6=_0x2595bf['exec'](_0x4dd6f7))!==null){const [,_0x5c9159,_0x2bbd7e]=_0x4563a6,_0x208d56=a0_0x276770['extractContent'](_0x2bbd7e,'navigate')[0x0]?.[_0x13a7df(0x1e9)]();_0x3cb4e3['push']({'type':_0x13a7df(0x1c2),'name':_0x5c9159,'url':_0x208d56,'nestedActions':this[_0x13a7df(0x237)](_0x2bbd7e)});}const _0x301488=['close-tab',_0x13a7df(0x240),'list-tabs','navigate',_0x13a7df(0x216),_0x13a7df(0x1f8),_0x13a7df(0x1d4),_0x13a7df(0x207),_0x13a7df(0x1c8),'analyze-screenshot','extract-text','extract-links',_0x13a7df(0x23b),_0x13a7df(0x1cb),_0x13a7df(0x242),'hover',_0x13a7df(0x1dc)];for(const _0x5b683f of _0x301488){const _0x480ea7=new RegExp('<'+_0x5b683f+'([^>]*)>([^<]*)</'+_0x5b683f+'>','g');let _0x3b000c;while((_0x3b000c=_0x480ea7[_0x13a7df(0x24d)](_0x4dd6f7))!==null){const [,_0x3cf6b4,_0x4cf7ef]=_0x3b000c,_0xccfebc={'type':_0x5b683f},_0x33e7e9=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x128b7a;while((_0x128b7a=_0x33e7e9[_0x13a7df(0x24d)](_0x3cf6b4))!==null){_0xccfebc[_0x128b7a[0x1]]=_0x128b7a[0x2];}_0x4cf7ef&&_0x4cf7ef['trim']()&&(_0xccfebc[_0x13a7df(0x257)]=_0x4cf7ef[_0x13a7df(0x1e9)]()),_0x3cb4e3[_0x13a7df(0x1bd)](_0xccfebc);}}return _0x3cb4e3;}[a0_0x25f545(0x237)](_0x22e37b){const _0xe84ca4=a0_0x25f545,_0x6f5684=[],_0x4c2337=['navigate','click',_0xe84ca4(0x1f8),_0xe84ca4(0x1d4),'wait-for',_0xe84ca4(0x1c8),_0xe84ca4(0x220),_0xe84ca4(0x22e),'extract-links','get-source',_0xe84ca4(0x1cb),_0xe84ca4(0x242),'hover','mouse-move'];for(const _0x59cd8e of _0x4c2337){const _0x13a0a0=new RegExp('<'+_0x59cd8e+_0xe84ca4(0x1ba)+_0x59cd8e+'>|<'+_0x59cd8e+'([^>]*)/>','g');let _0x43fa52;while((_0x43fa52=_0x13a0a0[_0xe84ca4(0x24d)](_0x22e37b))!==null){const [,_0x5378fb,_0x51dea5,_0x3c76ac]=_0x43fa52,_0xebd68f=_0x5378fb||_0x3c76ac||'',_0x4b3cca={'type':_0x59cd8e},_0xde9881=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x11e10d;while((_0x11e10d=_0xde9881[_0xe84ca4(0x24d)](_0xebd68f))!==null){_0x4b3cca[_0x11e10d[0x1]]=_0x11e10d[0x2];}_0x51dea5&&_0x51dea5[_0xe84ca4(0x1e9)]()&&(_0x4b3cca[_0xe84ca4(0x257)]=_0x51dea5[_0xe84ca4(0x1e9)]()),_0x6f5684['push'](_0x4b3cca);}}return _0x6f5684;}['getRequiredParameters'](){const _0x20c0b8=a0_0x25f545;return[_0x20c0b8(0x210)];}['customValidateParameters'](_0x3b6cce){const _0x4f2168=a0_0x25f545,_0x14a93b=[];if(![_0x4f2168(0x22b),'fetch','interactive']['includes'](_0x3b6cce['operation']))return _0x14a93b[_0x4f2168(0x1bd)](_0x4f2168(0x1af)),{'valid':![],'errors':_0x14a93b};switch(_0x3b6cce['operation']){case'search':!_0x3b6cce[_0x4f2168(0x1f5)]&&_0x14a93b[_0x4f2168(0x1bd)](_0x4f2168(0x239));break;case'fetch':!_0x3b6cce[_0x4f2168(0x1fa)]&&_0x14a93b['push'](_0x4f2168(0x215));break;case'interactive':(!_0x3b6cce[_0x4f2168(0x1f4)]||!Array['isArray'](_0x3b6cce[_0x4f2168(0x1f4)])||_0x3b6cce['actions'][_0x4f2168(0x1ea)]===0x0)&&_0x14a93b[_0x4f2168(0x1bd)]('actions\x20array\x20is\x20required\x20for\x20interactive\x20operation');break;}return{'valid':_0x14a93b[_0x4f2168(0x1ea)]===0x0,'errors':_0x14a93b};}async[a0_0x25f545(0x20e)](_0x500734,_0x15680c){const _0x9e7d57=a0_0x25f545,{operation:_0x575375}=_0x500734,{agentId:_0x528cba}=_0x15680c;try{await this[_0x9e7d57(0x230)]();let _0x3fdf04;switch(_0x575375){case'search':_0x3fdf04=await this[_0x9e7d57(0x22b)](_0x500734[_0x9e7d57(0x1f5)],{'engine':_0x500734['engine']||_0x9e7d57(0x1de),'maxResults':_0x500734[_0x9e7d57(0x21c)]||0xa,'agentId':_0x528cba});break;case _0x9e7d57(0x1c4):_0x3fdf04=await this[_0x9e7d57(0x1c4)](_0x500734['url'],{'formats':_0x500734[_0x9e7d57(0x1d1)]||['title','text'],'agentId':_0x528cba});break;case _0x9e7d57(0x235):_0x3fdf04=await this['interactive'](_0x500734['actions'],{'headless':_0x500734['headless']!==![],'agentId':_0x528cba,'context':_0x15680c});break;default:throw new Error(_0x9e7d57(0x1b5)+_0x575375);}return{'success':!![],'operation':_0x575375,'result':_0x3fdf04,'toolUsed':_0x9e7d57(0x1e8)};}catch(_0x43e040){return this[_0x9e7d57(0x244)]?.['error']('Web\x20tool\x20execution\x20failed',{'operation':_0x575375,'error':_0x43e040[_0x9e7d57(0x1d6)],'agentId':_0x528cba}),{'success':![],'operation':_0x575375,'error':_0x43e040[_0x9e7d57(0x1d6)],'toolUsed':_0x9e7d57(0x1e8)};}}async[a0_0x25f545(0x230)](){const _0x48da79=a0_0x25f545;if(this[_0x48da79(0x1ac)]&&this['browser'][_0x48da79(0x225)]())return;if(this[_0x48da79(0x1ec)]){while(this[_0x48da79(0x1ec)]){await new Promise(_0x49de52=>setTimeout(_0x49de52,0x64));}return;}this[_0x48da79(0x1ec)]=!![];try{this['logger']?.[_0x48da79(0x20c)](_0x48da79(0x214)),this[_0x48da79(0x1ac)]=await a0_0x30abfa[_0x48da79(0x1e4)]({'headless':'new','args':['--no-sandbox',_0x48da79(0x1c3),'--disable-dev-shm-usage',_0x48da79(0x21b),'--disable-gpu',_0x48da79(0x25e),_0x48da79(0x1f6)]}),this[_0x48da79(0x244)]?.['info'](_0x48da79(0x256));}catch(_0x38b13b){this['logger']?.['error']('Failed\x20to\x20initialize\x20browser',{'error':_0x38b13b[_0x48da79(0x1d6)]});throw new Error(_0x48da79(0x22a)+_0x38b13b[_0x48da79(0x1d6)]);}finally{this['browserInitializing']=![];}}async['search'](_0x16dcd3,_0x5b2f45={}){const _0x36db1e=a0_0x25f545,{engine:engine=_0x36db1e(0x1de),maxResults:maxResults=0xa,agentId:_0x32aee7}=_0x5b2f45;if(!_0x16dcd3||typeof _0x16dcd3!=='string'||_0x16dcd3['trim']()['length']===0x0)throw new Error(_0x36db1e(0x1e0));const _0x3edc5f=this[_0x36db1e(0x1b9)]['find'](_0x407e15=>_0x407e15['name']===engine);if(!_0x3edc5f)throw new Error(_0x36db1e(0x249)+engine+_0x36db1e(0x1db)+this[_0x36db1e(0x1b9)][_0x36db1e(0x1f7)](_0x44b557=>_0x44b557[_0x36db1e(0x1c0)])['join'](',\x20'));await this[_0x36db1e(0x230)](),this[_0x36db1e(0x244)]?.[_0x36db1e(0x20c)](_0x36db1e(0x1d5),{'query':_0x16dcd3,'engine':engine,'agentId':_0x32aee7});const _0x2c009c=await this[_0x36db1e(0x1ac)][_0x36db1e(0x238)]();try{const _0x557105=''+_0x3edc5f[_0x36db1e(0x1fa)]+encodeURIComponent(_0x16dcd3);await _0x2c009c[_0x36db1e(0x1d3)](_0x557105,{'waitUntil':'networkidle2','timeout':this['DEFAULT_TIMEOUT']}),await _0x2c009c[_0x36db1e(0x212)](_0x3edc5f[_0x36db1e(0x227)],{'timeout':this[_0x36db1e(0x21e)]});const _0x590ded=await _0x2c009c[_0x36db1e(0x1ad)]((_0x5aec66,_0x541469)=>{const _0x47c0ef=_0x36db1e,_0xdf73f3=Array['from'](document['querySelectorAll'](_0x5aec66));return _0xdf73f3[_0x47c0ef(0x236)](0x0,_0x541469)['map'](_0x410e11=>({'url':_0x410e11[_0x47c0ef(0x24a)],'title':_0x410e11[_0x47c0ef(0x224)][_0x47c0ef(0x1e9)](),'description':_0x410e11[_0x47c0ef(0x246)]('.g,\x20.b_algo,\x20.result')?.[_0x47c0ef(0x224)]['trim']()||''}))[_0x47c0ef(0x20a)](_0x24748b=>_0x24748b[_0x47c0ef(0x1fa)]&&_0x24748b[_0x47c0ef(0x1fa)][_0x47c0ef(0x248)]('http'));},_0x3edc5f[_0x36db1e(0x1fe)],maxResults);return this['logger']?.[_0x36db1e(0x20c)](_0x36db1e(0x1cd),{'resultsCount':_0x590ded['length'],'agentId':_0x32aee7}),{'success':!![],'query':_0x16dcd3,'engine':engine,'resultsCount':_0x590ded[_0x36db1e(0x1ea)],'results':_0x590ded};}finally{await _0x2c009c['close']();}}async['fetch'](_0x1de5fd,_0x583c17={}){const _0x4f84eb=a0_0x25f545,{formats:formats=['title','text'],agentId:_0x384843}=_0x583c17;await this['ensureBrowser'](),this['logger']?.['info'](_0x4f84eb(0x203),{'url':_0x1de5fd,'formats':formats,'agentId':_0x384843});const _0x2a8c08=await this['browser'][_0x4f84eb(0x238)]();try{const _0x162a14=[];formats[_0x4f84eb(0x228)](_0x4f84eb(0x1ee))&&_0x2a8c08['on'](_0x4f84eb(0x1ee),_0x2fb5a7=>{const _0x48f1b1=_0x4f84eb;_0x162a14['push']({'type':_0x2fb5a7['type'](),'text':_0x2fb5a7[_0x48f1b1(0x1b3)]()});});await _0x2a8c08[_0x4f84eb(0x1d3)](_0x1de5fd,{'waitUntil':'networkidle2','timeout':this[_0x4f84eb(0x21e)]});const _0x1f67ca={'url':_0x1de5fd};for(const _0x31bd5f of formats){switch(_0x31bd5f){case _0x4f84eb(0x24e):_0x1f67ca[_0x4f84eb(0x24e)]=await _0x2a8c08[_0x4f84eb(0x24e)]();break;case _0x4f84eb(0x1b3):_0x1f67ca[_0x4f84eb(0x1b3)]=await _0x2a8c08['evaluate'](()=>document[_0x4f84eb(0x243)]['innerText']);break;case _0x4f84eb(0x252):_0x1f67ca['links']=await _0x2a8c08['evaluate'](()=>{const _0x781562=_0x4f84eb;return Array[_0x781562(0x205)](document['querySelectorAll'](_0x781562(0x1e5)))['map'](_0x218dc0=>({'href':_0x218dc0['href'],'text':_0x218dc0['textContent'][_0x781562(0x1e9)]()}));});break;case _0x4f84eb(0x21a):_0x1f67ca['html']=await _0x2a8c08['content']();break;case'console':_0x1f67ca[_0x4f84eb(0x1ca)]=_0x162a14;break;}}return this[_0x4f84eb(0x244)]?.[_0x4f84eb(0x20c)]('Fetch\x20completed',{'url':_0x1de5fd,'formats':formats,'agentId':_0x384843}),{'success':!![],..._0x1f67ca};}finally{await _0x2a8c08[_0x4f84eb(0x24c)]();}}async[a0_0x25f545(0x235)](_0x39ac88,_0x16d82a={}){const _0x41452e=a0_0x25f545,{headless:headless=!![],agentId:_0x565382,context:_0x2aa124}=_0x16d82a;await this['ensureBrowser'](),this[_0x41452e(0x244)]?.['info']('Starting\x20interactive\x20session',{'actionsCount':_0x39ac88['length'],'headless':headless,'agentId':_0x565382});const _0x16da16=[];!this[_0x41452e(0x1eb)][_0x41452e(0x1b8)](_0x565382)&&this[_0x41452e(0x1eb)]['set'](_0x565382,new Map());const _0x2aa4d4=this[_0x41452e(0x1eb)]['get'](_0x565382);for(const _0x39e66e of _0x39ac88){try{let _0x223f3f;switch(_0x39e66e[_0x41452e(0x1f8)]){case'open-tab':_0x223f3f=await this[_0x41452e(0x22f)](_0x565382,_0x39e66e[_0x41452e(0x1c0)],_0x39e66e[_0x41452e(0x1fa)],headless,_0x39e66e[_0x41452e(0x1e6)],_0x2aa124);break;case'close-tab':_0x223f3f=await this['closeTab'](_0x565382,_0x39e66e[_0x41452e(0x1c0)]);break;case _0x41452e(0x240):_0x223f3f=await this['switchTab'](_0x565382,_0x39e66e[_0x41452e(0x1c0)]);break;case'list-tabs':_0x223f3f=await this['listTabs'](_0x565382);break;default:_0x223f3f={'success':![],'error':'Action\x20'+_0x39e66e['type']+'\x20must\x20be\x20executed\x20within\x20a\x20tab\x20context\x20(use\x20open-tab\x20with\x20nestedActions)'};}_0x16da16['push']({'action':_0x39e66e['type'],..._0x223f3f});}catch(_0xc9b49b){this['logger']?.[_0x41452e(0x1dd)](_0x41452e(0x24b),{'action':_0x39e66e['type'],'error':_0xc9b49b['message'],'agentId':_0x565382}),_0x16da16['push']({'action':_0x39e66e[_0x41452e(0x1f8)],'success':![],'error':_0xc9b49b['message']});}}return{'success':_0x16da16['every'](_0x4373c2=>_0x4373c2['success']!==![]),'actionsExecuted':_0x16da16['length'],'results':_0x16da16};}async[a0_0x25f545(0x22f)](_0xd6606b,_0x574dcd,_0x244b9b,_0x5da235,_0x57aa6c=[],_0x3c0ce1={}){const _0x1f09aa=a0_0x25f545;!this['agentTabs']['has'](_0xd6606b)&&this['agentTabs'][_0x1f09aa(0x22c)](_0xd6606b,new Map());const _0x966611=this[_0x1f09aa(0x1eb)][_0x1f09aa(0x209)](_0xd6606b);if(_0x966611['has'](_0x574dcd))throw new Error(_0x1f09aa(0x201)+_0x574dcd+_0x1f09aa(0x20b)+_0xd6606b);this[_0x1f09aa(0x244)]?.[_0x1f09aa(0x20c)](_0x1f09aa(0x258),{'agentId':_0xd6606b,'tabName':_0x574dcd,'url':_0x244b9b,'headless':_0x5da235});const _0x24fbf5=await this[_0x1f09aa(0x1ac)]['newPage']();await _0x24fbf5['setViewport']({'width':0x500,'height':0x2d0});const _0x2f59b6=[];_0x24fbf5['on'](_0x1f09aa(0x1ee),_0x6d9799=>{const _0x403043=_0x1f09aa;_0x2f59b6['push']({'type':_0x6d9799[_0x403043(0x1f8)](),'text':_0x6d9799['text'](),'timestamp':Date[_0x403043(0x233)]()});});const _0x1cd5f8={'page':_0x24fbf5,'url':_0x244b9b,'lastActivity':Date['now'](),'headless':_0x5da235,'consoleMessages':_0x2f59b6,'name':_0x574dcd};_0x966611['set'](_0x574dcd,_0x1cd5f8);const _0x118d81=[];try{_0x244b9b&&(await _0x24fbf5['goto'](_0x244b9b,{'waitUntil':_0x1f09aa(0x223),'timeout':this[_0x1f09aa(0x21e)]}),_0x1cd5f8[_0x1f09aa(0x1fa)]=_0x244b9b,_0x1cd5f8[_0x1f09aa(0x22d)]=Date[_0x1f09aa(0x233)]());for(const _0x1f1cc9 of _0x57aa6c){const _0x50cacb=await this['executeTabAction'](_0x24fbf5,_0x1f1cc9,_0x1cd5f8,_0x3c0ce1);_0x118d81['push']({'action':_0x1f1cc9[_0x1f09aa(0x1f8)],..._0x50cacb}),_0x1cd5f8[_0x1f09aa(0x22d)]=Date['now']();}return{'success':!![],'tabName':_0x574dcd,'url':_0x1cd5f8[_0x1f09aa(0x1fa)],'actionsExecuted':_0x118d81[_0x1f09aa(0x1ea)],'results':_0x118d81};}catch(_0x18b735){this['logger']?.['error'](_0x1f09aa(0x1cf),{'agentId':_0xd6606b,'tabName':_0x574dcd,'error':_0x18b735[_0x1f09aa(0x1d6)]}),await _0x24fbf5['close'](),_0x966611[_0x1f09aa(0x1da)](_0x574dcd);throw _0x18b735;}}async[a0_0x25f545(0x217)](_0x57bd4b,_0x4d5806,_0x3f9718,_0x32d959){const _0x150e13=a0_0x25f545;switch(_0x4d5806['type']){case _0x150e13(0x219):await _0x57bd4b['goto'](_0x4d5806['value']||_0x4d5806[_0x150e13(0x1fa)],{'waitUntil':_0x150e13(0x223),'timeout':this['DEFAULT_TIMEOUT']}),_0x3f9718[_0x150e13(0x1fa)]=_0x57bd4b['url']();return{'success':!![],'url':_0x3f9718[_0x150e13(0x1fa)]};case _0x150e13(0x216):await _0x57bd4b['click'](_0x4d5806[_0x150e13(0x206)],{'button':_0x4d5806['button']||'left'});return{'success':!![],'selector':_0x4d5806['selector']};case _0x150e13(0x1f8):await _0x57bd4b[_0x150e13(0x1f8)](_0x4d5806['selector'],_0x4d5806[_0x150e13(0x1b3)]||_0x4d5806['value']);return{'success':!![],'selector':_0x4d5806[_0x150e13(0x206)],'text':_0x4d5806[_0x150e13(0x1b3)]};case'press':await _0x57bd4b['keyboard'][_0x150e13(0x1d4)](_0x4d5806[_0x150e13(0x1ed)]||_0x4d5806['value']);return{'success':!![],'key':_0x4d5806['key']};case _0x150e13(0x207):const _0x990c97=_0x4d5806[_0x150e13(0x1d9)]?parseInt(_0x4d5806[_0x150e13(0x1d9)],0xa):this[_0x150e13(0x21e)];await _0x57bd4b['waitForSelector'](_0x4d5806['selector'],{'timeout':_0x990c97});return{'success':!![],'selector':_0x4d5806['selector']};case'screenshot':return await this['takeScreenshot'](_0x57bd4b,_0x4d5806,_0x32d959);case'analyze-screenshot':return await this[_0x150e13(0x1fc)](_0x57bd4b,_0x4d5806[_0x150e13(0x257)],_0x32d959);case'extract-text':const _0x4d18c8=await _0x57bd4b['evaluate'](_0x3fb6d0=>{const _0x5adc3b=_0x150e13,_0x35ff67=document['querySelector'](_0x3fb6d0);return _0x35ff67?_0x35ff67[_0x5adc3b(0x251)]:null;},_0x4d5806[_0x150e13(0x206)]);return{'success':!![],'selector':_0x4d5806[_0x150e13(0x206)],'text':_0x4d18c8};case _0x150e13(0x213):const _0x2df703=await _0x57bd4b[_0x150e13(0x1ad)](_0x54935c=>{const _0x513f35=_0x150e13,_0x55254f=document[_0x513f35(0x23f)](_0x54935c);return Array['from'](_0x55254f)['map'](_0xb30a8a=>({'href':_0xb30a8a['href'],'text':_0xb30a8a[_0x513f35(0x224)]['trim']()}));},_0x4d5806[_0x150e13(0x206)]);return{'success':!![],'selector':_0x4d5806['selector'],'links':_0x2df703};case _0x150e13(0x23b):const _0x23debc=await _0x57bd4b['content']();return{'success':!![],'html':_0x23debc};case _0x150e13(0x1cb):return{'success':!![],'consoleMessages':[..._0x3f9718['consoleMessages']]};case'scroll':await _0x57bd4b['evaluate'](_0x5a638e=>{const _0x31e8c8=_0x150e13;_0x5a638e?document['querySelector'](_0x5a638e)?.[_0x31e8c8(0x25a)]():window['scrollTo'](0x0,document['body']['scrollHeight']);},_0x4d5806['selector']);return{'success':!![]};case'hover':await _0x57bd4b[_0x150e13(0x1f9)](_0x4d5806[_0x150e13(0x206)]);return{'success':!![],'selector':_0x4d5806[_0x150e13(0x206)]};case'mouse-move':await _0x57bd4b[_0x150e13(0x1f9)](_0x4d5806[_0x150e13(0x206)]);return{'success':!![],'selector':_0x4d5806[_0x150e13(0x206)]};default:throw new Error('Unknown\x20action\x20type:\x20'+_0x4d5806['type']);}}async['takeScreenshot'](_0x39b50c,_0x4357bb,_0x4326a0){const _0x15c342=a0_0x25f545,_0x24fa92=_0x4357bb['format']||'file',_0x381423=_0x4357bb['path'];if(_0x24fa92==='base64'){const _0xf110d2=await _0x39b50c[_0x15c342(0x1c8)]({'encoding':'base64'});return{'success':!![],'format':'base64','screenshot':_0xf110d2};}let _0x38b384;if(_0x381423){const _0x3a8ba6=_0x4326a0['directoryAccess']?.['workingDirectory']||_0x4326a0[_0x15c342(0x1bf)]||process[_0x15c342(0x25d)]();_0x38b384=a0_0x2df44f['isAbsolute'](_0x381423)?_0x381423:a0_0x2df44f['join'](_0x3a8ba6,_0x381423);}else{const _0x4e96f2=_0x15c342(0x1ae)+Date[_0x15c342(0x233)]()+_0x15c342(0x1c5);_0x38b384=a0_0x2df44f[_0x15c342(0x23d)](this[_0x15c342(0x1ff)],_0x4e96f2);}return await _0x39b50c[_0x15c342(0x1c8)]({'path':_0x38b384}),{'success':!![],'format':_0x15c342(0x1be),'path':_0x38b384};}async['analyzeScreenshot'](_0x34a71a,_0x2cb927,_0x58e048){const _0x9942e9=a0_0x25f545,_0x4cfa74=await _0x34a71a[_0x9942e9(0x1c8)]({'encoding':'base64'}),_0x3f4cae=_0x58e048['aiService'];if(!_0x3f4cae)throw new Error('AI\x20service\x20not\x20available\x20for\x20screenshot\x20analysis');this[_0x9942e9(0x244)]?.[_0x9942e9(0x20c)](_0x9942e9(0x245),{'question':_0x2cb927['substring'](0x0,0x64),'agentId':_0x58e048['agentId']});try{const _0x5574c6='o3',_0xabe431=await _0x3f4cae[_0x9942e9(0x1f0)](_0x5574c6,_0x2cb927,{'agentId':_0x58e048[_0x9942e9(0x222)],'images':['data:image/png;base64,'+_0x4cfa74],'apiKey':_0x58e048['apiKey'],'customApiKeys':_0x58e048[_0x9942e9(0x25c)],'platformProvided':_0x58e048[_0x9942e9(0x253)]});return{'success':!![],'question':_0x2cb927,'analysis':_0xabe431['content'],'model':_0xabe431['model']||_0x5574c6};}catch(_0xba3877){this['logger']?.['error'](_0x9942e9(0x20d),{'error':_0xba3877['message'],'agentId':_0x58e048['agentId']});throw new Error(_0x9942e9(0x247)+_0xba3877['message']);}}async['closeTab'](_0x5902ce,_0x2b995b){const _0x263e88=a0_0x25f545,_0x4687fa=this['agentTabs']['get'](_0x5902ce);if(!_0x4687fa||!_0x4687fa[_0x263e88(0x1b8)](_0x2b995b))throw new Error(_0x263e88(0x201)+_0x2b995b+_0x263e88(0x1f3)+_0x5902ce);const _0x60aa6b=_0x4687fa[_0x263e88(0x209)](_0x2b995b);return this['logger']?.[_0x263e88(0x20c)]('Closing\x20tab',{'agentId':_0x5902ce,'tabName':_0x2b995b}),await _0x60aa6b[_0x263e88(0x1b6)][_0x263e88(0x24c)](),_0x4687fa['delete'](_0x2b995b),{'success':!![],'tabName':_0x2b995b,'message':_0x263e88(0x201)+_0x2b995b+_0x263e88(0x24f)};}async[a0_0x25f545(0x1e3)](_0x1c0828,_0x7e56e0){const _0x4001b7=a0_0x25f545,_0x40b7d2=this[_0x4001b7(0x1eb)][_0x4001b7(0x209)](_0x1c0828);if(!_0x40b7d2||!_0x40b7d2['has'](_0x7e56e0))throw new Error('Tab\x20\x27'+_0x7e56e0+_0x4001b7(0x1f3)+_0x1c0828);const _0x56fd38=_0x40b7d2['get'](_0x7e56e0);return _0x56fd38[_0x4001b7(0x22d)]=Date['now'](),{'success':!![],'tabName':_0x7e56e0,'url':_0x56fd38['url'],'message':'Switched\x20to\x20tab\x20\x27'+_0x7e56e0+'\x27'};}async[a0_0x25f545(0x1c6)](_0x5119fd){const _0x5a6c32=a0_0x25f545,_0x342821=this[_0x5a6c32(0x1eb)][_0x5a6c32(0x209)](_0x5119fd);if(!_0x342821||_0x342821[_0x5a6c32(0x250)]===0x0)return{'success':!![],'tabCount':0x0,'tabs':[],'message':_0x5a6c32(0x21f)};const _0x3fad1b=[];for(const [_0x4c424f,_0x1f6275]of _0x342821['entries']()){_0x3fad1b['push']({'name':_0x4c424f,'url':_0x1f6275[_0x5a6c32(0x1fa)],'idleTime':Date[_0x5a6c32(0x233)]()-_0x1f6275[_0x5a6c32(0x22d)],'headless':_0x1f6275['headless']});}return{'success':!![],'tabCount':_0x3fad1b[_0x5a6c32(0x1ea)],'tabs':_0x3fad1b};}[a0_0x25f545(0x21d)](){const _0x563b99=a0_0x25f545;this['cleanupTimer']&&clearInterval(this['cleanupTimer']),this[_0x563b99(0x1d0)]=setInterval(()=>{this['cleanupIdleTabs']();},this['CLEANUP_INTERVAL']);}async['cleanupIdleTabs'](){const _0x3a8795=a0_0x25f545,_0x2a4d66=Date['now'](),_0x50f4e3=[];for(const [_0x2b6771,_0x2c126e]of this[_0x3a8795(0x1eb)]['entries']()){for(const [_0xd493ba,_0x433484]of _0x2c126e['entries']()){const _0x2dec82=_0x2a4d66-_0x433484['lastActivity'];_0x2dec82>this['TAB_IDLE_TIMEOUT']&&_0x50f4e3['push']({'agentId':_0x2b6771,'tabName':_0xd493ba,'tabInfo':_0x433484});}}if(_0x50f4e3['length']>0x0){this[_0x3a8795(0x244)]?.['info'](_0x3a8795(0x1b2),{'count':_0x50f4e3['length']});for(const {agentId:_0x54344e,tabName:_0x330d31,tabInfo:_0x408483}of _0x50f4e3){try{await _0x408483[_0x3a8795(0x1b6)][_0x3a8795(0x24c)](),this[_0x3a8795(0x1eb)][_0x3a8795(0x209)](_0x54344e)[_0x3a8795(0x1da)](_0x330d31),this[_0x3a8795(0x244)]?.['debug'](_0x3a8795(0x1bc),{'agentId':_0x54344e,'tabName':_0x330d31});}catch(_0x1c64a5){this['logger']?.[_0x3a8795(0x1dd)](_0x3a8795(0x226),{'agentId':_0x54344e,'tabName':_0x330d31,'error':_0x1c64a5['message']});}}}}async['cleanupAgent'](_0x234117){const _0x4d9ac7=a0_0x25f545,_0x4a1aec=this['agentTabs'][_0x4d9ac7(0x209)](_0x234117);if(!_0x4a1aec)return{'success':!![],'agentId':_0x234117,'closedTabs':0x0,'message':_0x4d9ac7(0x232)};this['logger']?.[_0x4d9ac7(0x20c)]('Cleaning\x20up\x20agent\x20tabs',{'agentId':_0x234117,'tabCount':_0x4a1aec['size']});let _0x48b738=0x0;for(const [_0x4153c0,_0xf47054]of _0x4a1aec[_0x4d9ac7(0x1fb)]()){try{await _0xf47054['page'][_0x4d9ac7(0x24c)](),_0x48b738++;}catch(_0x1a07d2){this[_0x4d9ac7(0x244)]?.[_0x4d9ac7(0x1dd)]('Failed\x20to\x20close\x20tab\x20during\x20cleanup',{'agentId':_0x234117,'tabName':_0x4153c0,'error':_0x1a07d2['message']});}}return this[_0x4d9ac7(0x1eb)]['delete'](_0x234117),{'success':!![],'agentId':_0x234117,'closedTabs':_0x48b738,'message':_0x4d9ac7(0x1ef)+_0x48b738+_0x4d9ac7(0x1f2)+_0x234117};}async['ensureTempDir'](){const _0x4648fb=a0_0x25f545;try{await a0_0x3c23cc['mkdir'](this[_0x4648fb(0x1ff)],{'recursive':!![]});}catch(_0x11eeb0){this[_0x4648fb(0x244)]?.['warn'](_0x4648fb(0x1b4),{'path':this[_0x4648fb(0x1ff)],'error':_0x11eeb0['message']});}}async['cleanup'](){const _0x360881=a0_0x25f545;this['cleanupTimer']&&(clearInterval(this[_0x360881(0x1d0)]),this[_0x360881(0x1d0)]=null);for(const [_0x32f36b]of this['agentTabs'][_0x360881(0x1fb)]()){await this['cleanupAgent'](_0x32f36b);}this[_0x360881(0x1ac)]&&(await this[_0x360881(0x1ac)][_0x360881(0x24c)](),this[_0x360881(0x1ac)]=null);try{await a0_0x3c23cc['rm'](this['TEMP_DIR'],{'recursive':!![],'force':!![]});}catch(_0x243051){this[_0x360881(0x244)]?.['warn'](_0x360881(0x1e2),{'path':this['TEMP_DIR'],'error':_0x243051['message']});}}}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;
|