@loxia-labs/loxia-autopilot-one 1.0.12 → 1.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -3
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -2
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/agentActivityService.js +1 -0
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x29919e=a0_0x129e;(function(_0x3d540c,_0xa0b279){const _0x49af35=a0_0x129e,_0xf64a78=_0x3d540c();while(!![]){try{const _0x5cc7a1=parseInt(_0x49af35(0x16a))/0x1*(-parseInt(_0x49af35(0x26a))/0x2)+-parseInt(_0x49af35(0x27e))/0x3+-parseInt(_0x49af35(0x17f))/0x4+-parseInt(_0x49af35(0x2af))/0x5+parseInt(_0x49af35(0x28e))/0x6*(parseInt(_0x49af35(0x1bc))/0x7)+parseInt(_0x49af35(0x1e5))/0x8+parseInt(_0x49af35(0x2a1))/0x9;if(_0x5cc7a1===_0xa0b279)break;else _0xf64a78['push'](_0xf64a78['shift']());}catch(_0x5b2010){_0xf64a78['push'](_0xf64a78['shift']());}}}(a0_0x47fd,0xb2ab9));import{BaseTool}from'./baseTool.js';import a0_0x9b5b1f from'../utilities/tagParser.js';import a0_0x2ea814 from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';function a0_0x47fd(){const _0x465758=['ChjVy2vZCY1SAxn0','q29TBwfUzcbWCM9JzxnZigLZig5VDcbYDw5UAw5N','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','CgLUzW','Dw5PEc1ZDhLSzs1WyxrOCW','A2v5ChjLC3m','icyG','Dgv4Dc1LzgL0','r2v0lunOAwXKsxrLBsbfBNy6','twf4Aw11BsbNBg9IywWGyMfJA2DYB3vUzcbJB21Tyw5KCYbLEgnLzwrLzcaO','uhjLC3mGyw55igTLEq','zgLYzwn0B3j5lwn1CNjLBNq','uhjVy2vLzcbWCM9TChq','mtKZntG4mJbztNfmyM0','BMv3rgLYzwn0B3j5','AgfSDa','zgLYzwn0B3j5','q29UDgLUDwuGChjVBxb0','y29TBwfUzeLKq291BNrLCG','CgXHDgzVCM0','zxH0CMfJDenVBNrLBNq','zMLSzs12Awv3Aw5N','ufnnB2r1BgvqyxrO','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','zMLUzcaVyW','zMLSzs1KzwXLDgu','q2HHBMDLzcbKAxjLy3rVCNKGDg8G','nJaYnZe4nxbzDLP3wa','CNvUlwnVBw1HBMq','zgLZAY1PBMzV','lunVBw1HBMq','DhjHBNnSyxrLvg9cyxnO','Ahr0Ca','r2v0lunVBNrLBNqGlvrHAwW','y2f0','mxjLu0rNBq','y2XLyw51Cfn0ywXLq29TBwfUzhm','zMLSzs1JB3b5','Dg9ju09tDhjPBMC','CgXHDgzVCM1uExbL','ywn0Aw9UCW','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','CgLUzYaKmq','u3rHBguGy29TBwfUzhmGy2XLyw5Lzcb1Ca','id4GjG','C3vIC3rYAw5N','zw5KC1DPDgG','Aw50zwDLCG','BhmGlwe','ywX0zxjUyxrPDMvZ','y3vYBa','C3rHDgu','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','Aw5MBW','zwnOBW','ugfZC3DVCMqGChjVBxb0','mJG4mJaYohPMqxDusq','BgLZDefNzw50q29TBwfUzhm','CMvHC29U','DgfRzw93BG','z2v0vgLTzq','cI0Gq2f0zwDVCNK6ia','C2vUzeLUChv0','AxntAw1WBgvdB21Tyw5K','cI0GvgfYz2v0ifrLCM1PBMfSoIa','zMLUzhn0CG','CMvZB2X2zq','u0Lhvevstq','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','zw52','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','qwn0Aw9Uia','AxnbBgXVD2vKq29TBwfUza','y3vYBcaTtYaKmq','BM93','tMv3luL0zw0Glvr5CguGrMLSzq','zxzLCNK','ignVBw1HBMrZigzVCIbHz2vUDca','z3jLCa','CgLWzq','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUzcbZDgrLCNi','zg93BMXVywq','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','q29TBwfUzcbWCM9JzxnZig5VDcbMB3vUzcbVCIbHBhjLywr5igTPBgXLza','ihn0ywXLignVBw1HBMrZ','C3rHCNrcywnRz3jVDw5Kq29TBwfUza','AM9PBG','r2v0lunOAwXKsxrLBsaTuMvJDxjZzsb8ie1Lyxn1CMuTt2jQzwn0','u29YDc1pyMPLy3qGlvvUAxf1zq','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','yNvPBhrPBG','r2v0lunVBNrLBNq','AxnbCNjHEq','y3jLyxrLrgLYzwn0B3j5','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','ig1PBgXPC2vJB25KCW','BwfPBIGP','y3jLyxrLlwrPCMvJDg9YEq','q2XLyw5Lzcb1Cca','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','quKGDhjHBNnSyxrPB24GBM90igf2ywLSywjSzsaTig1PC3nPBMCGy29UDgv4Da','y2fSBa','DxnLCM5HBwu','CgfZC3DVCMq','Bwf4q29TBwfUzefNzu1PBNv0zxm','qMfJA2DYB3vUzcbJB21Tyw5KigvYCM9Y','Bg9N','ChjVy2vZCY1TB25PDg9Y','Bwf0y2G','Bw92zq','u29YDc1pyMPLy3q','DgfZA2TPBgW','CMvWBgfJzq','z2v0','zgLYic9H','Dg9mB3DLCKnHC2u','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPfwefnueXfuZOkcLj1BIbUCg0GAw5ZDgfSBdOkygbGANnVBGP7iNrVB2Xjzci6icj0zxjTAw5HBciSicjHy3rPB25ZiJOGw3SIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbPBNn0ywXSiN1DFqPGygakcKDPDcbVCgvYyxrPB25ZoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbZDgf0DxmIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbHzgqGlIj9laOGicaGEYj0ExbLiJOGiNj1BI1JB21Tyw5KiIWGiMnVBw1HBMqIoIaIz2L0ignVBw1PDcaTBsbCiLvWzgf0zsbMAwXLC1WIiN0kicbDcN0kygbGcGPdAgfUz2uGzgLYzwn0B3j5igfUzcbIDwLSzdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIlI4VzNjVBNrLBMqIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbYDw4GyNvPBgqIFqOGif0kFqPGygakcLnfq1vssvrzoGOTierHBMDLCM91CYbJB21Tyw5KCYbHCMuGyMXVy2TLzaOTienVBw1HBMrZigv4zwn1DguGAw4GAxnVBgf0zwqGzw52AxjVBM1LBNqklsbpDxrWDxqGAxmGy2fWDhvYzwqGyw5KihjLDhvYBMvKihnHzMvSEqOkqKvtvcbquKfdveLdrvm6cI0GvxnLiezPBgvtExn0zw0GDg9VBcbMB3iGzMLSzs9KAxjLy3rVCNKGB3bLCMf0Aw9UCWOTifvZzsbuzxjTAw5HBcbMB3iGq0Xjihv0AwXPDgLLCYaOBNbTlcbNAxqSign1CMWSigv0yY4PcI0Gq2HLy2SGy29TBwfUzcbVDxrWDxqGDg8GDMvYAwz5ihn1y2nLC3mkicaGia','mtKYmJm0zfvNDhrJ','y2XHC3nPzNLdB21Tyw5K','twvUDsbZzwXLy3rPB24','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','yMXVy2TLzenVBw1HBMrZ','rgLYzwn0B3j5ignOyw5NzsbIBg9JA2vKoIa','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','Cgf0DgvYBG','DgLTzw91Da','A2LSBa','zMfPBgvK','zw5KvgLTzq','z2v0q29TBwfUzfn0yxr1CW','zgv0zwn0zwruzxjTAw5HBa','zgvSicqX','C2vSzwn0Aw9U','y3vZDg9TqxbPs2v5CW','BwvZC2fNzvbYB2nLC3nVCG','q29TBwfUzcbUB3qGzM91BMq6ia','Bwf4qMfJA2DYB3vUzenVBw1HBMrZugvYqwDLBNq','ignVBw1HBMq','C3rKzxjYqNvMzMvY','C3rYAw5N','BgLZDc1KAxjLy3rVCNK','q29TBwfUzcbLEgL0zwqGD2L0AcbJB2rLia','Dg9tDhjPBMC','y21K','q29TBwfUzcbRAwXSzwqGC3vJy2vZC2z1BgX5','C2v0','D2fYBG','z2v0u3vWCg9YDgvKqwn0Aw9UCW','BgLZDerPCMvJDg9YEq','y29TBwfUzfr5Cgu','wwvZl05Vihf1zxn0Aw9U','AxnbC3LUyW','D29YA2LUz0rPCMvJDg9YEq','y2HHBMDLlwrPCMvJDg9YEq','Dhj1zq','zgLY','Bwf0y2HLzfrLEhq','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','mZG5mdi3mK1dA29XAa','BgvUz3rO','DhjHBNnSyxrLvg9xAw5KB3DZq21K','ChjVBxb0rgv0zwn0zwq','u0HfteW','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','zxHLy3v0Aw9UvgLTzq','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','uMvTB3zLluL0zw0','zMLSDgvY','DgfZA2XPC3q','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','zNn1DgLSihzVBhvTzsbKAxnRzNjLzq','D3jPDgu','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','q29TBwfUzcbWCM9JzxnZigv4AxrLzdOG','zwnOBYa','BwvZC2fNzq','D29YA2LUz0rPCMvJDg9YAwvZ','oIb0ExbLigLZihjLCxvPCMvK','C29YDcaVDw5PCxvL','r2v0lunOAwXKsxrLBsaTuMvJDxjZzq','ywDLBNrjza','Cg93zxjZAgvSBcaTyW','Aw5JBhvKzxm','CMvXDwLYzxnqCM9Qzwn0','BwTKAxi','C3vJy2vZCW','r2v0lunOAwXKsxrLBsaTrM9Yy2u','yxn5BMm','ChjVy2vZCW','sw52B2TLlvjLC3rnzxrOB2q','D2LUzg93CY1JBwq','AxncBg9JA2vKq29TBwfUza','rMfPBgvKihrVignOyw5NzsbKAxjLy3rVCNKGDg8G','zgvMia','zxjYB3i','zwnOBYaN','ChjVBxb0rgv0zwn0B3i','zMLSzq','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','C3rKzxjY','BMfTzq','Cg93zxjZAgvSBa','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','u2vSzwn0Aw9UihbYB21WDa','tMv3luL0zw0Glvr5CguGrgLYzwn0B3j5','CgLK','ywXSB3DLzenVBw1HBMrZ','AgvSCa','B2jQzwn0','vgvYBwLUywWGzgv0zwn0zwq','zgvS','C2LTCgXL','DxnLCI1PBMzV','y2HHBMDLrgLYzwn0B3j5','C3vNz2vZDgvKqwn0Aw9U','DhjHBNnSyxrLq29TBwfUza','CM1KAxiGjde','y29UzMLYBwf0Aw9U','zgvIDwC','zMLSzs1SAxn0Aw5N','uhjLC3mGzw50zxi','y29WEsaKmsaKmG','z2v0q29TBwfUzeHPC3rVCNK','zw50CMLLCW','zwnOBYaIjdeIid4','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','vxnPBMCGquKGDhjHBNnSyxrPB24','zgvZy3jPChrPB24','A2LSBgvK','q29TBwfUzcbZCgf3BIbLCNjVCJOG','tgLZDgvKia','CgvYBwLZC2LVBNm','Bw9YzsaRBG','DhjPBq','y2f0icqX','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','y29TCgXLDgvK','oIbJB21Tyw5KigLZihjLCxvPCMvKigzVCIbYDw4Ty29TBwfUza','BgfZDe91Dhb1DfrPBwu','rxHLy3v0Aw5NignVBw1HBMqGD2L0AcbZCgf3BJOG','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','vxnLCM5HBwuGChjVBxb0','uMvTB3zLluL0zw0Gjde','C3rHCNrZv2L0Aa','q29TBwfUzcbLCNjVCIbJAhvUAZOG','zwnOBYaLvvnfuK5btuuL','DMfSAwrHDgvszwfKqwnJzxnZ','yxjYyxK','y29TBwfUzeLK','D2HVyw1P','DhjHBNnSyxrL','C29Tzq','qMfJA2DYB3vUzcbJB21Tyw5Kihn0yxj0zwqGD2L0AcbjrdOG','zxHLy3v0zunVBw1HBMq','AxnZDwvZ','uhjVBxb0igrLDgvJDgvKigLUihn0zgvYCG','BwvTB3j5lwLUzM8','C3rKB3v0qNvMzMvY','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','q29TChjLC3mTqxjJAgL2zq','zgvSzxrL','y29TBwfUzeHPC3rVCNK','y29WEq','y29TBwfUza','Dw5RBM93BG','zw52AxjVBM1LBNq','q2fUBM90ihnLBMqGAw5WDxqGDg8G','DgvZDa','ChvZAa','zgf0yq','D2LUmZi','tw92zs1jDgvT','Bwf4qMfJA2DYB3vUzenVBw1HBMrZr2XVyMfS','r2vUzxjPyYbPBNb1DcbWCM9TChq','C291CMnLia','ChjVy2vZCY1RAwXS','CM0GlxjMic8','C3rKB3v0','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','zNvUy3rPB24G','y29TBwfUzenHDgvNB3j5','C3rKAw4','z2v0qwDLBNrdB21Tyw5KCW','D2fPDgLUz19MB3jFAw5WDxq','ywLtzxj2AwnL','u3rVCc1qCM9JzxnZ','zNjVBq','tM9UzsbKzxrLy3rLza','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','vgvYBwLUywWGrevcvuC6ifvZAw5NigfNzw50ignVBMzPz3vYzwqGD29YA2LUzYbKAxjLy3rVCNK6','DMfSDwvZ','mJiWnta3oe5dDK1tuG','Dw5PEa','AxneAxjLy3rVCNK','ywrKvg9iAxn0B3j5','zxHPDenVzgu','Bw92zsaKmsaKmG','Bg9Nz2vY','zgLYzwn0B3j5lwnYzwf0zq','DhLWzq','DhLWzsbUDwWGpG','qwXSia','Dg9VBhnszwDPC3rYEq','y2f0zwDVCNK','CgXHDgzVCM1qCM92AwrLza','AxndB21Tyw5Kq29TCgf0AwjSzvDPDgHuzxjTAw5HBa','q29UzMLYBwf0Aw9UihbYB21WDa','z3b0ltqTBwLUAq','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','vgvZDc1ozxrdB25Uzwn0Aw9U','Cg93zxjZAgvSBcbfEhbHBMqTqxjJAgL2zq','mJu1odi4C2zzBu1V','AxntEw1IB2XPy0XPBMS','r2v0lunOAwXKsxrLBq','Dw5PDMvYC2fS','BwfW','u0Lhs0Lmta','zgv0zwn0uhjVBxb0','i2LUy2X1zgu','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','cI0Gu3vNz2vZDgvKiefSDgvYBMf0AxzLoIa','yMfZAa','y2XLyw51Ca','C3bLy2LMAwnjC3n1zxm','ywXSB3DLza','y29UzMLKzw5Jzq','y3DK','mJy0ELnZA0fZ','qMfZAcbZAgvSBcaOtgLUDxGVvw5PEc9TywnpuYK','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','r2v0lvbYB2nLC3m','r2v0lunVBNrLBNqGjde','Aw5WDxq'];a0_0x47fd=function(){return _0x465758;};return a0_0x47fd();}import a0_0x262f4f from'path';import a0_0x52a9d4 from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0xad803b=a0_0x129e;this['promptPatterns']=[{'pattern':/\(y\/n\)/i,'type':'yes-no','description':_0xad803b(0x1dd)},{'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':'yes-no','description':'Yes/No\x20question'},{'pattern':/\[Y\/n\]/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\[y\/N\]/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/continue\?/i,'type':'continue','description':_0xad803b(0x2a5)},{'pattern':/proceed\?/i,'type':'continue','description':_0xad803b(0x2a0)},{'pattern':/press any key to continue/i,'type':_0xad803b(0x299),'description':_0xad803b(0x29e)},{'pattern':/press enter to continue/i,'type':'keypress','description':_0xad803b(0x223)},{'pattern':/hit enter to continue/i,'type':_0xad803b(0x299),'description':'Hit\x20enter'},{'pattern':/password:/i,'type':'password','description':_0xad803b(0x17e)},{'pattern':/enter password/i,'type':'password','description':_0xad803b(0x17e)},{'pattern':/passphrase:/i,'type':_0xad803b(0x1ae),'description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':_0xad803b(0x1ad),'description':_0xad803b(0x238)},{'pattern':/enter username/i,'type':'username','description':'Username\x20prompt'},{'pattern':/enter\s+\w+:/i,'type':'input','description':'Generic\x20input\x20prompt'},{'pattern':/please enter/i,'type':'input','description':_0xad803b(0x258)},{'pattern':/input:/i,'type':_0xad803b(0x293),'description':'Generic\x20input\x20prompt'},{'pattern':/are you sure\?/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/do you want to/i,'type':_0xad803b(0x220),'description':_0xad803b(0x279)},{'pattern':/would you like to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':_0xad803b(0x1cb),'description':_0xad803b(0x212)},{'pattern':/choose/i,'type':_0xad803b(0x1cb),'description':'Selection\x20prompt'},{'pattern':/\d+\)\s+\w+/g,'type':'menu','description':_0xad803b(0x1be)}];}[a0_0x29919e(0x284)](_0x3b7a43,_0x1f2d98='stdout'){const _0xabdd48=a0_0x29919e;if(!_0x3b7a43||_0x3b7a43['trim']()[_0xabdd48(0x1e6)]===0x0)return null;const _0x164c90=_0x3b7a43['split']('\x0a'),_0x68ae9c=_0x164c90['slice'](-0x5)[_0xabdd48(0x19d)]('\x0a');for(const _0x3cc769 of this['promptPatterns']){const _0x352f6b=_0x68ae9c['match'](_0x3cc769[_0xabdd48(0x1c3)]);if(_0x352f6b)return{'detected':!![],'type':_0x3cc769[_0xabdd48(0x272)],'description':_0x3cc769['description'],'matchedText':_0x352f6b[0x0],'matchIndex':_0x352f6b['index'],'source':_0x1f2d98,'fullContext':_0x68ae9c,'timestamp':Date[_0xabdd48(0x191)]()};}const _0x34603b=_0x164c90[_0x164c90['length']-0x1]||'';if(_0x34603b['trim']()['length']>0x0){const _0x3d1176=/:\s*$/['test'](_0x34603b),_0x4fbdfd=/\?\s*$/[_0xabdd48(0x252)](_0x34603b);if(_0x3d1176||_0x4fbdfd){const _0x5a5d5d=/\b(enter|type|provide|specify|input)\b/i[_0xabdd48(0x252)](_0x34603b);if(_0x5a5d5d)return{'detected':!![],'type':'generic','description':'Generic\x20input\x20prompt\x20detected','matchedText':_0x34603b[_0xabdd48(0x230)](),'source':_0x1f2d98,'fullContext':_0x68ae9c,'timestamp':Date['now'](),'confidence':0.7};}}return null;}['detectHang'](_0x11b78f,_0xce89c2=0x7530){const _0x3eb455=a0_0x29919e,_0x29d1bf=Date[_0x3eb455(0x191)](),_0x8be49d=_0x29d1bf-_0x11b78f;return{'isHanging':_0x8be49d>=_0xce89c2,'timeSinceLastOutput':_0x8be49d,'threshold':_0xce89c2,'likelyWaiting':_0x8be49d>=_0xce89c2/0x2};}}class TerminalTool extends BaseTool{constructor(_0x43dae2={},_0x2c4dc2=null){const _0x375045=a0_0x29919e;super(_0x43dae2,_0x2c4dc2),this[_0x375045(0x1fe)]=![],this[_0x375045(0x1de)]=![],this['timeout']=_0x43dae2['timeout']||0x1d4c0,this['maxConcurrentOperations']=_0x43dae2[_0x375045(0x199)]||0x3,this[_0x375045(0x1f7)]=new Map(),this[_0x375045(0x24c)]=[],this['allowedCommands']=_0x43dae2[_0x375045(0x215)]||null,this[_0x375045(0x1c0)]=_0x43dae2[_0x375045(0x1c0)]||[_0x375045(0x25b),'format','del\x20/f\x20/q','shutdown','reboot',_0x375045(0x2a3)],this[_0x375045(0x1a5)]=new a0_0x2ea814(_0x43dae2,_0x2c4dc2),this['promptDetector']=new PromptDetector(),this['commandTracker']=new Map(),this['commandIdCounter']=0x0,this['MAX_BACKGROUND_COMMANDS_PER_AGENT']=_0x43dae2[_0x375045(0x1cf)]||0x5,this['MAX_BACKGROUND_COMMANDS_GLOBAL']=_0x43dae2[_0x375045(0x257)]||0x14,this['MAX_COMMAND_AGE_MINUTES']=_0x43dae2[_0x375045(0x1af)]||0x3c,this['detectedTerminal']=null,this[_0x375045(0x16e)]=null,this[_0x375045(0x237)]();}['getDescription'](){const _0x5e5a3c=a0_0x29919e;return'\x0aTerminal\x20Tool:\x20Execute\x20system\x20commands\x20and\x20manage\x20terminal\x20operations\x20safely.\x0a\x0aIMPORTANT:\x20For\x20file\x20and\x20directory\x20creation,\x20prefer\x20using\x20the\x20FileSystem\x20tool.\x0aReserve\x20the\x20Terminal\x20tool\x20for\x20command-line\x20operations\x20like\x20npm,\x20git,\x20curl,\x20etc.\x0a\x0aUSAGE:\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\x22npm\x20install\x20express\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22change-directory\x22,\x20\x22directory\x22:\x20\x22project/backend\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20run-command:\x20Execute\x20a\x20command\x20(command)\x0a-\x20change-directory:\x20Change\x20working\x20directory\x20(directory)\x0a-\x20list-directory:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20create-directory:\x20Create\x20directory\x20(directory)\x20-\x20prefer\x20FileSystem\x20tool\x0a-\x20get-working-directory:\x20Get\x20current\x20directory\x0a\x0aPARAMETERS:\x0a-\x20command:\x20The\x20command\x20to\x20execute\x0a-\x20directory:\x20Directory\x20path\x20for\x20navigation/operations\x0a-\x20timeout:\x20Optional\x20timeout\x20in\x20milliseconds\x20(max\x20'+this[_0x5e5a3c(0x1c4)]+_0x5e5a3c(0x1bb);}['parseParameters'](_0x527975){const _0x542dd2=a0_0x29919e;try{const _0x51d994={},_0x213c8c=a0_0x9b5b1f['extractContent'](_0x527975,_0x542dd2(0x2b0)),_0x28fd87=a0_0x9b5b1f[_0x542dd2(0x2a8)](_0x527975,'change-directory'),_0x235b8c=a0_0x9b5b1f['extractContent'](_0x527975,'list-directory'),_0x1646f1=a0_0x9b5b1f[_0x542dd2(0x2a8)](_0x527975,_0x542dd2(0x1a8)),_0xeea3b9=a0_0x9b5b1f['extractContent'](_0x527975,_0x542dd2(0x1aa)),_0x221fed=a0_0x9b5b1f['extractContent'](_0x527975,'timeout'),_0x2fe1ba=a0_0x9b5b1f['extractContent'](_0x527975,'async'),_0x6b43ff=[];return _0x213c8c['length']>0x0&&_0x6b43ff[_0x542dd2(0x253)]({'type':_0x542dd2(0x2b0),'command':_0x213c8c[0x0][_0x542dd2(0x230)]()}),_0x28fd87['length']>0x0&&_0x6b43ff['push']({'type':_0x542dd2(0x1e0),'directory':_0x28fd87[0x0]['trim']()}),_0x235b8c['length']>0x0&&_0x6b43ff[_0x542dd2(0x253)]({'type':'list-directory','directory':_0x235b8c[0x0][_0x542dd2(0x230)]()||'.'}),_0x1646f1['length']>0x0&&_0x6b43ff[_0x542dd2(0x253)]({'type':_0x542dd2(0x1a8),'directory':_0x1646f1[0x0]['trim']()}),_0xeea3b9[_0x542dd2(0x1e6)]>0x0&&_0x6b43ff['push']({'type':_0x542dd2(0x1aa)}),_0x51d994[_0x542dd2(0x16f)]=_0x6b43ff,_0x221fed['length']>0x0&&(_0x51d994[_0x542dd2(0x1c4)]=parseInt(_0x221fed[0x0],0xa)),_0x2fe1ba[_0x542dd2(0x1e6)]>0x0&&(_0x51d994[_0x542dd2(0x202)]=_0x2fe1ba[0x0][_0x542dd2(0x1ba)]()===_0x542dd2(0x1e1)),_0x51d994['rawContent']=_0x527975[_0x542dd2(0x230)](),_0x51d994;}catch(_0x283482){throw new Error('Failed\x20to\x20parse\x20terminal\x20parameters:\x20'+_0x283482['message']);}}['getRequiredParameters'](){const _0x15caf2=a0_0x29919e;return[_0x15caf2(0x16f)];}['customValidateParameters'](_0x5c543b){const _0x509917=a0_0x29919e,_0x193b6b=[];if(!_0x5c543b['actions']||!Array[_0x509917(0x1a3)](_0x5c543b['actions'])||_0x5c543b[_0x509917(0x16f)]['length']===0x0)_0x193b6b['push']('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x2ac4c7,_0x2550ed]of _0x5c543b[_0x509917(0x16f)][_0x509917(0x226)]()){if(!_0x2550ed[_0x509917(0x272)]){_0x193b6b['push']('Action\x20'+(_0x2ac4c7+0x1)+_0x509917(0x1f8));continue;}switch(_0x2550ed[_0x509917(0x272)]){case'run-command':if(!_0x2550ed['command']||!_0x2550ed['command']['trim']())_0x193b6b[_0x509917(0x253)]('Action\x20'+(_0x2ac4c7+0x1)+_0x509917(0x234));else{if(this[_0x509917(0x206)](_0x2550ed['command']))_0x193b6b['push']('Action\x20'+(_0x2ac4c7+0x1)+':\x20command\x20is\x20blocked\x20for\x20security:\x20'+_0x2550ed[_0x509917(0x24e)]);else this['allowedCommands']&&!this['isAllowedCommand'](_0x2550ed[_0x509917(0x24e)])&&_0x193b6b[_0x509917(0x253)](_0x509917(0x18e)+(_0x2ac4c7+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x2550ed[_0x509917(0x24e)]);}break;case'change-directory':case _0x509917(0x1d3):case _0x509917(0x1a8):(!_0x2550ed[_0x509917(0x2a4)]||!_0x2550ed[_0x509917(0x2a4)][_0x509917(0x230)]())&&_0x193b6b['push']('Action\x20'+(_0x2ac4c7+0x1)+_0x509917(0x249)+_0x2550ed['type']);break;case _0x509917(0x1aa):break;default:_0x193b6b[_0x509917(0x253)](_0x509917(0x18e)+(_0x2ac4c7+0x1)+_0x509917(0x20d)+_0x2550ed['type']);}}return _0x5c543b['timeout']&&(_0x5c543b['timeout']<0x3e8||_0x5c543b[_0x509917(0x1c4)]>this[_0x509917(0x1c4)])&&_0x193b6b['push']('Timeout\x20must\x20be\x20between\x201000\x20and\x20'+this[_0x509917(0x1c4)]+_0x509917(0x1a6)),{'valid':_0x193b6b['length']===0x0,'errors':_0x193b6b};}async['execute'](_0x436a42,_0x3cf60f){const _0x2f63f9=a0_0x29919e,{actions:_0x1ad974,timeout:_0x70b49e,async:_0x54be9e}=_0x436a42,{agentId:_0x3d26a9,projectDir:_0x4734b0,directoryAccess:_0x5d8903}=_0x3cf60f,_0x2eab63=_0x5d8903||this[_0x2f63f9(0x1a5)]['createDirectoryAccess']({'workingDirectory':_0x4734b0||process[_0x2f63f9(0x28d)](),'writeEnabledDirectories':[_0x4734b0||process['cwd']()],'restrictToProject':!![]});_0x5d8903&&_0x5d8903['workingDirectory']?console[_0x2f63f9(0x1b1)](_0x2f63f9(0x268),_0x5d8903['workingDirectory']):console[_0x2f63f9(0x1b1)](_0x2f63f9(0x1f3),_0x4734b0||process['cwd']());const _0x25b5b6=_0x3d26a9+'-'+(_0x4734b0||'default');let _0x504097=this[_0x2f63f9(0x1f7)][_0x2f63f9(0x1b8)](_0x25b5b6)||this[_0x2f63f9(0x1a5)]['getWorkingDirectory'](_0x2eab63);const _0x53105d=[];for(const _0x16a6d1 of _0x1ad974){try{let _0x36119b;switch(_0x16a6d1['type']){case _0x2f63f9(0x2b0):_0x36119b=await this['executeCommand'](_0x16a6d1[_0x2f63f9(0x24e)],_0x504097,{'timeout':_0x70b49e||this['timeout'],'async':_0x54be9e||![],'agentId':_0x3d26a9,'context':{'toolsRegistry':_0x3cf60f['toolsRegistry'],'aiService':_0x3cf60f[_0x2f63f9(0x263)],'apiKey':_0x3cf60f['apiKey'],'customApiKeys':_0x3cf60f['customApiKeys'],'platformProvided':_0x3cf60f[_0x2f63f9(0x277)]}});break;case _0x2f63f9(0x1e0):_0x36119b=await this[_0x2f63f9(0x21c)](_0x16a6d1[_0x2f63f9(0x2a4)],_0x504097,_0x2eab63),_0x504097=_0x36119b[_0x2f63f9(0x2a2)],this['workingDirectories']['set'](_0x25b5b6,_0x504097);break;case _0x2f63f9(0x1d3):_0x36119b=await this[_0x2f63f9(0x1db)](_0x16a6d1['directory']==='.'?_0x504097:_0x16a6d1[_0x2f63f9(0x2a4)]);break;case _0x2f63f9(0x1a8):_0x36119b=await this[_0x2f63f9(0x1a4)](_0x16a6d1['directory'],_0x504097);break;case'get-working-directory':_0x36119b={'success':!![],'action':'get-working-directory','workingDirectory':_0x504097,'message':'Current\x20working\x20directory:\x20'+_0x504097};break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x16a6d1[_0x2f63f9(0x272)]);}_0x53105d['push'](_0x36119b),this['addToHistory'](_0x16a6d1,_0x36119b,_0x3d26a9);}catch(_0x22c93f){const _0x50857b={'success':![],'action':_0x16a6d1['type'],'error':_0x22c93f[_0x2f63f9(0x1f6)],'command':_0x16a6d1[_0x2f63f9(0x24e)]||_0x16a6d1[_0x2f63f9(0x2a4)],'workingDirectory':_0x504097};_0x53105d['push'](_0x50857b),this[_0x2f63f9(0x26d)](_0x16a6d1,_0x50857b,_0x3d26a9);}}const _0x3d2a53=_0x53105d[_0x2f63f9(0x193)](_0x2220f4=>_0x2220f4['success']),_0x3a4456=_0x53105d[_0x2f63f9(0x1ee)](_0x302653=>!_0x302653[_0x2f63f9(0x200)]);return{'success':_0x3d2a53,'actions':_0x53105d,'workingDirectory':_0x504097,'executedActions':_0x1ad974['length'],'failedActions':_0x3a4456[_0x2f63f9(0x1e6)],'toolUsed':'terminal','message':_0x3d2a53?_0x2f63f9(0x274)+_0x1ad974['length']+'\x20actions\x20completed\x20successfully':_0x3a4456['length']+'\x20of\x20'+_0x1ad974['length']+'\x20actions\x20failed'};}async[a0_0x29919e(0x244)](_0x510b7e,_0x4b95f4,_0x9a78b3={}){const _0x26f87f=a0_0x29919e,{timeout:timeout=this[_0x26f87f(0x1c4)],async:_0x40d67f=![],agentId:_0x151a9c,context:_0x56a3f9}=_0x9a78b3,_0x250608=_0x510b7e;let _0xfc766e;try{_0xfc766e=await this['translateCommand'](_0x510b7e,{'agentId':_0x151a9c,'toolsRegistry':_0x56a3f9?.['toolsRegistry'],'messageProcessor':_0x56a3f9?.['messageProcessor'],'aiService':_0x56a3f9?.[_0x26f87f(0x263)],'apiKey':_0x56a3f9?.['apiKey'],'customApiKeys':_0x56a3f9?.['customApiKeys'],'platformProvided':_0x56a3f9?.['platformProvided']});}catch(_0x16e8b9){this['logger']?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x250608,'error':_0x16e8b9[_0x26f87f(0x1f6)]}),_0xfc766e=_0x510b7e;}return new Promise((_0x47e2ad,_0x5c64e9)=>{const _0x2c7fb6=_0x26f87f,_0x222019=Date['now']();this['logger']?.['info']('Executing\x20command:\x20'+_0xfc766e,{'originalCommand':_0x250608,'translatedCommand':_0xfc766e,'terminal':this['detectedTerminal'],'workingDirectory':_0x4b95f4,'timeout':timeout,'agentId':_0x151a9c});const _0x532ba7=exec(_0xfc766e,{'cwd':_0x4b95f4,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process[_0x2c7fb6(0x18c)]}},(_0x2ffce8,_0x2bab62,_0x14660d)=>{const _0x2b012c=_0x2c7fb6,_0x51f7a5=Date['now']()-_0x222019;if(_0x2ffce8){this['logger']?.[_0x2b012c(0x209)]('Command\x20failed:\x20'+_0xfc766e,{'originalCommand':_0x250608,'translatedCommand':_0xfc766e,'error':_0x2ffce8['message'],'workingDirectory':_0x4b95f4,'executionTime':_0x51f7a5}),_0x47e2ad({'success':![],'action':'run-command','command':_0x250608,'translatedCommand':_0xfc766e!==_0x250608?_0xfc766e:undefined,'error':_0x2ffce8['message'],'stderr':_0x14660d['trim'](),'stdout':_0x2bab62[_0x2b012c(0x230)](),'exitCode':_0x2ffce8['code'],'executionTime':_0x51f7a5,'workingDirectory':_0x4b95f4});return;}this['logger']?.['info']('Command\x20completed:\x20'+_0xfc766e,{'originalCommand':_0x250608,'translatedCommand':_0xfc766e,'executionTime':_0x51f7a5,'stdoutLength':_0x2bab62['length'],'stderrLength':_0x14660d['length']}),_0x47e2ad({'success':!![],'action':_0x2b012c(0x2b0),'command':_0x250608,'translatedCommand':_0xfc766e!==_0x250608?_0xfc766e:undefined,'stdout':_0x2bab62[_0x2b012c(0x230)](),'stderr':_0x14660d[_0x2b012c(0x230)](),'exitCode':0x0,'executionTime':_0x51f7a5,'workingDirectory':_0x4b95f4,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x51f7a5+'ms'});});setTimeout(()=>{const _0x3c69eb=_0x2c7fb6;!_0x532ba7['killed']&&(_0x532ba7[_0x3c69eb(0x1c5)](_0x3c69eb(0x18a)),_0x5c64e9(new Error(_0x3c69eb(0x296)+timeout+'ms:\x20'+_0xfc766e+'\x20(original:\x20'+_0x250608+')')));},timeout);});}async['executeCommandWithSpawn'](_0x1c7799,_0x12cde1,_0x12a513={}){const _0xcbdf6f=a0_0x29919e,{timeout:timeout=this['timeout'],agentId:_0x2a5514,context:_0x110ec7}=_0x12a513,_0x5dd20b=_0x1c7799;let _0x329173;try{_0x329173=await this['translateCommand'](_0x1c7799,{'agentId':_0x2a5514,'toolsRegistry':_0x110ec7?.[_0xcbdf6f(0x275)],'messageProcessor':_0x110ec7?.[_0xcbdf6f(0x1cd)],'aiService':_0x110ec7?.[_0xcbdf6f(0x263)],'apiKey':_0x110ec7?.['apiKey'],'customApiKeys':_0x110ec7?.['customApiKeys'],'platformProvided':_0x110ec7?.[_0xcbdf6f(0x277)]});}catch(_0x3cd458){this['logger']?.['warn'](_0xcbdf6f(0x1ea),{'originalCommand':_0x5dd20b,'error':_0x3cd458[_0xcbdf6f(0x1f6)]}),_0x329173=_0x1c7799;}return new Promise((_0x2a1d42,_0x1fd3a5)=>{const _0xda1554=_0xcbdf6f,_0x4660e3=Date[_0xda1554(0x191)]();this['logger']?.['info'](_0xda1554(0x236)+_0x329173,{'originalCommand':_0x5dd20b,'translatedCommand':_0x329173,'terminal':this['detectedTerminal'],'workingDirectory':_0x12cde1,'timeout':timeout,'agentId':_0x2a5514});let _0x5d656b;if(this[_0xda1554(0x1c9)]==='cmd'||this['detectedTerminal']===_0xda1554(0x210)){const _0x53aa01=this[_0xda1554(0x1c9)]===_0xda1554(0x210)?'powershell':'cmd',_0xf726a6=this['detectedTerminal']==='powershell'?[_0xda1554(0x2b2),_0x329173]:['/c',_0x329173];_0x5d656b=spawn(_0x53aa01,_0xf726a6,{'cwd':_0x12cde1,'env':{...process['env']},'windowsHide':!![]});}else _0x5d656b=spawn('sh',['-c',_0x329173],{'cwd':_0x12cde1,'env':{...process[_0xda1554(0x18c)]}});let _0x1577f6='',_0x50a584='',_0x486300=![],_0x5c44c1=null,_0x3c2a15=Date['now'](),_0x1308a4=null;const _0x17cbed=setTimeout(()=>{const _0x52426d=_0xda1554;!_0x5d656b['killed']&&_0x5c44c1===null&&(_0x486300=!![],this['logger']?.[_0x52426d(0x1d9)]('Command\x20timed\x20out,\x20killing\x20process:\x20'+_0x329173,{'timeout':timeout,'agentId':_0x2a5514}),_0x5d656b['kill']('SIGTERM'),setTimeout(()=>{const _0x3bc0c0=_0x52426d;!_0x5d656b[_0x3bc0c0(0x22b)]&&_0x5d656b['kill']('SIGKILL');},0x1388));},timeout);_0x5d656b[_0xda1554(0x25c)]['on']('data',_0x11afd6=>{const _0x408a4d=_0xda1554,_0x3beabe=_0x11afd6[_0x408a4d(0x1d5)]();_0x1577f6+=_0x3beabe,_0x3c2a15=Date['now'](),this[_0x408a4d(0x270)]?.[_0x408a4d(0x221)]('Command\x20output\x20chunk:\x20'+_0x3beabe['substring'](0x0,0x64),{'agentId':_0x2a5514,'command':_0x5dd20b['substring'](0x0,0x32)});if(!_0x1308a4){const _0x29e8c7=this[_0x408a4d(0x20b)]['detectPrompt'](_0x1577f6,_0x408a4d(0x25c));_0x29e8c7&&(_0x1308a4=_0x29e8c7,this[_0x408a4d(0x270)]?.[_0x408a4d(0x17c)]('Prompt\x20detected\x20in\x20stdout',{'type':_0x29e8c7[_0x408a4d(0x272)],'description':_0x29e8c7['description'],'matchedText':_0x29e8c7[_0x408a4d(0x1e3)],'agentId':_0x2a5514,'command':_0x5dd20b[_0x408a4d(0x174)](0x0,0x32)}));}}),_0x5d656b['stderr']['on']('data',_0x38a9dc=>{const _0x512c45=_0xda1554,_0x29f9b5=_0x38a9dc['toString']();_0x50a584+=_0x29f9b5,_0x3c2a15=Date['now'](),this['logger']?.[_0x512c45(0x221)](_0x512c45(0x23b)+_0x29f9b5['substring'](0x0,0x64),{'agentId':_0x2a5514,'command':_0x5dd20b[_0x512c45(0x174)](0x0,0x32)});if(!_0x1308a4){const _0x5d01a7=this[_0x512c45(0x20b)]['detectPrompt'](_0x50a584,'stderr');_0x5d01a7&&(_0x1308a4=_0x5d01a7,this['logger']?.[_0x512c45(0x17c)](_0x512c45(0x246),{'type':_0x5d01a7[_0x512c45(0x272)],'description':_0x5d01a7[_0x512c45(0x22a)],'matchedText':_0x5d01a7['matchedText'],'agentId':_0x2a5514,'command':_0x5dd20b[_0x512c45(0x174)](0x0,0x32)}));}}),_0x5d656b['on']('exit',(_0x33fed0,_0x37101b)=>{const _0x41c25c=_0xda1554;clearTimeout(_0x17cbed),_0x5c44c1=_0x33fed0;const _0x4e13ac=Date['now']()-_0x4660e3,_0x206f21=Date[_0x41c25c(0x191)]()-_0x3c2a15;this[_0x41c25c(0x270)]?.['info'](_0x41c25c(0x1f4)+_0x329173,{'exitCode':_0x33fed0,'signal':_0x37101b,'executionTime':_0x4e13ac,'timedOut':_0x486300,'stdoutLength':_0x1577f6['length'],'stderrLength':_0x50a584['length'],'promptDetected':!!_0x1308a4,'timeSinceLastOutput':_0x206f21});const _0x495323={'action':_0x41c25c(0x2b0),'command':_0x5dd20b,'translatedCommand':_0x329173!==_0x5dd20b?_0x329173:undefined,'stdout':_0x1577f6['trim'](),'stderr':_0x50a584[_0x41c25c(0x230)](),'exitCode':_0x33fed0,'executionTime':_0x4e13ac,'workingDirectory':_0x12cde1,'promptDetected':!!_0x1308a4,'promptInfo':_0x1308a4||undefined,'lastOutputTime':_0x3c2a15,'timeSinceLastOutput':_0x206f21};if(_0x486300){_0x2a1d42({..._0x495323,'success':![],'error':'Command\x20timed\x20out\x20after\x20'+timeout+'ms','exitCode':_0x33fed0||-0x1,'timedOut':!![]});return;}if(_0x33fed0!==0x0){this['logger']?.[_0x41c25c(0x209)]('Command\x20failed\x20with\x20exit\x20code\x20'+_0x33fed0+':\x20'+_0x329173,{'originalCommand':_0x5dd20b,'translatedCommand':_0x329173,'exitCode':_0x33fed0,'stderr':_0x50a584[_0x41c25c(0x174)](0x0,0xc8),'executionTime':_0x4e13ac,'promptDetected':!!_0x1308a4}),_0x2a1d42({..._0x495323,'success':![],'error':_0x41c25c(0x1d4)+_0x33fed0});return;}this['logger']?.[_0x41c25c(0x17c)](_0x41c25c(0x1c2)+_0x329173,{'originalCommand':_0x5dd20b,'executionTime':_0x4e13ac,'stdoutLength':_0x1577f6[_0x41c25c(0x1e6)],'stderrLength':_0x50a584[_0x41c25c(0x1e6)],'promptDetected':!!_0x1308a4}),_0x2a1d42({..._0x495323,'success':!![],'exitCode':0x0,'message':_0x41c25c(0x228)+_0x4e13ac+'ms'});}),_0x5d656b['on'](_0xda1554(0x209),_0x34dfc2=>{const _0x4c6afe=_0xda1554;clearTimeout(_0x17cbed);const _0x3abadf=Date[_0x4c6afe(0x191)]()-_0x4660e3,_0x5f05b1=Date['now']()-_0x3c2a15;this['logger']?.['error'](_0x4c6afe(0x22c)+_0x329173,{'originalCommand':_0x5dd20b,'error':_0x34dfc2[_0x4c6afe(0x1f6)],'executionTime':_0x3abadf,'promptDetected':!!_0x1308a4}),_0x2a1d42({'success':![],'action':'run-command','command':_0x5dd20b,'translatedCommand':_0x329173!==_0x5dd20b?_0x329173:undefined,'error':_0x34dfc2['message'],'stderr':_0x50a584['trim'](),'stdout':_0x1577f6[_0x4c6afe(0x230)](),'exitCode':-0x1,'executionTime':_0x3abadf,'workingDirectory':_0x12cde1,'promptDetected':!!_0x1308a4,'promptInfo':_0x1308a4||undefined,'lastOutputTime':_0x3c2a15,'timeSinceLastOutput':_0x5f05b1});});});}async['changeDirectory'](_0x4da83f,_0x3455c9,_0x55015d){const _0x4ca15c=a0_0x29919e;try{let _0x565a3b;a0_0x262f4f['isAbsolute'](_0x4da83f)?_0x565a3b=_0x4da83f:_0x565a3b=a0_0x262f4f['resolve'](_0x3455c9,_0x4da83f);const _0x2a60f0=await a0_0x52a9d4['stat'](_0x565a3b);if(!_0x2a60f0[_0x4ca15c(0x26c)]())throw new Error('Not\x20a\x20directory:\x20'+_0x565a3b);const _0x197b19=this[_0x4ca15c(0x1a5)][_0x4ca15c(0x23d)](_0x565a3b,_0x55015d);if(!_0x197b19[_0x4ca15c(0x28b)]){this['logger']?.[_0x4ca15c(0x1d9)](_0x4ca15c(0x1c1)+_0x197b19[_0x4ca15c(0x181)],{'targetDirectory':_0x565a3b,'reason':_0x197b19[_0x4ca15c(0x181)],'category':_0x197b19['category']});throw new Error('Access\x20denied:\x20'+_0x197b19['reason']);}return{'success':!![],'action':'change-directory','previousDirectory':_0x3455c9,'newDirectory':_0x565a3b,'message':_0x4ca15c(0x2ae)+_0x565a3b};}catch(_0x441e56){throw new Error(_0x4ca15c(0x207)+_0x4da83f+':\x20'+_0x441e56[_0x4ca15c(0x1f6)]);}}async['listDirectory'](_0x29106a){const _0x18d051=a0_0x29919e;try{const _0x2a8ea8=await a0_0x52a9d4['readdir'](_0x29106a,{'withFileTypes':!![]}),_0x404b48=_0x2a8ea8[_0x18d051(0x282)](_0x3aa89c=>({'name':_0x3aa89c[_0x18d051(0x20f)],'type':_0x3aa89c[_0x18d051(0x26c)]()?_0x18d051(0x2a4):'file','isSymlink':_0x3aa89c[_0x18d051(0x27f)]()}));return{'success':!![],'action':_0x18d051(0x1d3),'directory':_0x29106a,'contents':_0x404b48,'totalItems':_0x404b48['length'],'directories':_0x404b48[_0x18d051(0x1ee)](_0x244388=>_0x244388[_0x18d051(0x272)]==='directory')['length'],'files':_0x404b48['filter'](_0x217179=>_0x217179[_0x18d051(0x272)]===_0x18d051(0x20c))['length'],'message':_0x18d051(0x22d)+_0x404b48[_0x18d051(0x1e6)]+'\x20items\x20in\x20'+_0x29106a};}catch(_0x3e7e37){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x29106a+':\x20'+_0x3e7e37[_0x18d051(0x1f6)]);}}async['createDirectory'](_0x461d6b,_0x11d5a0){const _0x320e78=a0_0x29919e;try{let _0x33b963;return a0_0x262f4f['isAbsolute'](_0x461d6b)?_0x33b963=_0x461d6b:_0x33b963=a0_0x262f4f[_0x320e78(0x189)](_0x11d5a0,_0x461d6b),await a0_0x52a9d4[_0x320e78(0x1ff)](_0x33b963,{'recursive':!![]}),{'success':!![],'action':'create-directory','directory':_0x33b963,'relativePath':a0_0x262f4f['relative'](_0x11d5a0,_0x33b963),'message':'Created\x20directory:\x20'+_0x33b963};}catch(_0x254ac9){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x461d6b+':\x20'+_0x254ac9['message']);}}[a0_0x29919e(0x206)](_0x3ae5e2){const _0x57aaeb=a0_0x29919e,_0x421931=_0x3ae5e2[_0x57aaeb(0x1ba)]()['trim']();return this[_0x57aaeb(0x1c0)]['some'](_0x4de788=>{const _0x135a57=_0x57aaeb,_0x6ffd06=_0x4de788[_0x135a57(0x1ba)]();return _0x421931===_0x6ffd06||_0x421931['startsWith'](_0x6ffd06+'\x20');});}[a0_0x29919e(0x18f)](_0x27e7d6){const _0x4e265c=a0_0x29919e;if(!this[_0x4e265c(0x215)])return!![];const _0x1e0d9a=_0x27e7d6[_0x4e265c(0x1ba)]()[_0x4e265c(0x230)](),_0x4140d6=_0x1e0d9a['split']('\x20')[0x0];return this['allowedCommands'][_0x4e265c(0x242)](_0xe39663=>_0xe39663['toLowerCase']()===_0x4140d6||_0x1e0d9a[_0x4e265c(0x23a)](_0xe39663['toLowerCase']()+'\x20'));}[a0_0x29919e(0x26d)](_0x477b9d,_0x13349a,_0x41fc87){const _0x1afcc0=a0_0x29919e,_0x589ffe={'timestamp':new Date()[_0x1afcc0(0x16d)](),'agentId':_0x41fc87,'action':_0x477b9d['type'],'command':_0x477b9d[_0x1afcc0(0x24e)]||_0x477b9d['directory'],'success':_0x13349a['success'],'executionTime':_0x13349a[_0x1afcc0(0x1eb)]||0x0,'workingDirectory':_0x13349a[_0x1afcc0(0x1df)]};this[_0x1afcc0(0x24c)][_0x1afcc0(0x253)](_0x589ffe),this[_0x1afcc0(0x24c)][_0x1afcc0(0x1e6)]>0x64&&(this['commandHistory']=this[_0x1afcc0(0x24c)]['slice'](-0x64));}[a0_0x29919e(0x1da)](){const _0x4b86d1=a0_0x29919e;return[_0x4b86d1(0x2b0),_0x4b86d1(0x1e0),'list-directory',_0x4b86d1(0x1a8),'get-working-directory'];}['getParameterSchema'](){const _0x5a27eb=a0_0x29919e;return{'type':'object','properties':{'actions':{'type':_0x5a27eb(0x23e),'minItems':0x1,'items':{'type':_0x5a27eb(0x217),'properties':{'type':{'type':_0x5a27eb(0x1d2),'enum':this['getSupportedActions']()},'command':{'type':'string'},'directory':{'type':'string'}},'required':[_0x5a27eb(0x272)]}},'timeout':{'type':_0x5a27eb(0x176),'minimum':0x3e8,'maximum':this['timeout']},'async':{'type':'boolean'}},'required':[_0x5a27eb(0x16f)]};}[a0_0x29919e(0x225)](_0x13a9bd=null){const _0x197073=a0_0x29919e;if(_0x13a9bd)return this['commandHistory']['filter'](_0x1b7f84=>_0x1b7f84[_0x197073(0x1fb)]===_0x13a9bd);return[...this['commandHistory']];}['clearWorkingDirectory'](_0x11ae0e){const _0x5918e6=a0_0x29919e;for(const [_0x22ada7]of this['workingDirectories']){_0x22ada7['startsWith'](_0x11ae0e+'-')&&this[_0x5918e6(0x1f7)][_0x5918e6(0x24b)](_0x22ada7);}}[a0_0x29919e(0x2ab)](_0x5597e5,_0x1d9ba4=null){const _0x1fcb14=a0_0x29919e,_0x17d5c5=_0x5597e5+'-'+(_0x1d9ba4||'default');return this[_0x1fcb14(0x1f7)][_0x1fcb14(0x1b8)](_0x17d5c5)||_0x1d9ba4||process[_0x1fcb14(0x28d)]();}['initializeTerminalDetection'](){const _0x226763=a0_0x29919e;this['platformType']=process['platform'];if(process['platform']===_0x226763(0x255)){if(process[_0x226763(0x18c)][_0x226763(0x2aa)])this['detectedTerminal']='powershell';else process['env']['SHELL']&&process[_0x226763(0x18c)][_0x226763(0x1e9)][_0x226763(0x1fd)](_0x226763(0x288))?this[_0x226763(0x1c9)]='bash':this['detectedTerminal']='cmd';}else process[_0x226763(0x2a7)]==='darwin'?this[_0x226763(0x1c9)]='bash':this['detectedTerminal']=_0x226763(0x288);this['logger']?.['info'](_0x226763(0x218),{'platform':this['platformType'],'terminal':this['detectedTerminal'],'shell':process[_0x226763(0x18c)][_0x226763(0x1e9)]});}async['translateCommand'](_0xd1035c,_0x43a31f={}){const _0x25b190=a0_0x29919e,_0x238cde=_0xd1035c[_0x25b190(0x230)](),_0x32c9b1=this[_0x25b190(0x1a0)](_0x238cde);this['logger']?.[_0x25b190(0x17c)]('Command\x20compatibility\x20analysis',{'command':_0x238cde,'detectedTerminal':_0x32c9b1['detectedTerminal'],'commandType':_0x32c9b1['commandType'],'commandCategory':_0x32c9b1[_0x25b190(0x25f)],'compatible':_0x32c9b1['compatible'],'issues':_0x32c9b1['specificIssues'],'suggestedAction':_0x32c9b1[_0x25b190(0x21d)],'confidence':_0x32c9b1['confidence']});if(_0x32c9b1['compatible'])return _0xd1035c;let _0x4ca481=null;if(this[_0x25b190(0x1c9)]==='cmd')_0x4ca481=this[_0x25b190(0x1e7)](_0x238cde);else{if(this[_0x25b190(0x1c9)]==='powershell')_0x4ca481=this[_0x25b190(0x232)](_0x238cde);else this[_0x25b190(0x1c9)]==='bash'&&(_0x4ca481=this[_0x25b190(0x166)](_0x238cde));}if(_0x4ca481&&this['isSimpleCommand'](_0x238cde))return this['logger']?.[_0x25b190(0x17c)]('Using\x20simple\x20translation',{'original':_0xd1035c,'translated':_0x4ca481,'method':_0x25b190(0x21a)}),_0x4ca481;if(_0x43a31f[_0x25b190(0x263)]||_0x43a31f['toolsRegistry']&&_0x43a31f['agentId']){this[_0x25b190(0x270)]?.[_0x25b190(0x17c)]('Attempting\x20AI\x20translation\x20for\x20complex\x20command',{'command':_0xd1035c[_0x25b190(0x174)](0x0,0x64)+'...','hasAiService':!!_0x43a31f[_0x25b190(0x263)],'hasToolsRegistry':!!_0x43a31f['toolsRegistry'],'agentId':_0x43a31f['agentId']});try{const _0x511d6a=await this['translateCommandWithAI'](_0xd1035c,_0x43a31f);if(_0x511d6a&&_0x511d6a[_0x25b190(0x230)]()!==_0xd1035c[_0x25b190(0x230)]())return this[_0x25b190(0x270)]?.['info'](_0x25b190(0x229),{'original':_0xd1035c,'translated':_0x511d6a,'method':'ai'}),_0x511d6a;else this[_0x25b190(0x270)]?.['warn'](_0x25b190(0x267),{'original':_0xd1035c,'translated':_0x511d6a});}catch(_0xa48637){this[_0x25b190(0x270)]?.[_0x25b190(0x1d9)]('AI\x20translation\x20failed,\x20falling\x20back\x20to\x20simple\x20translation',{'original':_0xd1035c,'error':_0xa48637['message'],'stack':_0xa48637['stack']});}}else this['logger']?.[_0x25b190(0x1d9)](_0x25b190(0x1ab),{'hasAiService':!!_0x43a31f[_0x25b190(0x263)],'hasToolsRegistry':!!_0x43a31f['toolsRegistry'],'hasAgentId':!!_0x43a31f[_0x25b190(0x1fb)],'contextKeys':Object['keys'](_0x43a31f)});return _0x4ca481||_0xd1035c;}[a0_0x29919e(0x186)](_0x395333){const _0x1dbf28=a0_0x29919e,_0x29aff8=_0x395333[_0x1dbf28(0x1ba)]();if(_0x395333[_0x1dbf28(0x1fd)]('\x5cn')||_0x395333[_0x1dbf28(0x1fd)]('\x5cr')||_0x395333['includes']('\x5ct'))return![];if(_0x395333[_0x1dbf28(0x1fd)]('\x0a')||_0x395333['includes']('\x0d'))return![];if(_0x395333['includes'](_0x1dbf28(0x285))||_0x395333[_0x1dbf28(0x1fd)]('printf')||_0x395333[_0x1dbf28(0x1fd)](_0x1dbf28(0x1a7)))return![];if(_0x395333[_0x1dbf28(0x1fd)](_0x1dbf28(0x208))||_0x395333['includes'](_0x1dbf28(0x25e))||_0x395333['includes']('class\x20'))return![];if(_0x395333[_0x1dbf28(0x1fd)](_0x1dbf28(0x20a))&&!_0x395333['includes']('echo\x20\x22'))return![];const _0x51d320=_0x395333['match'](/'([^']*)'/);if(_0x51d320&&_0x51d320[0x1]['length']>0x32)return![];if(this['detectedTerminal']==='cmd'&&_0x395333[_0x1dbf28(0x1fd)]('>')&&_0x395333[_0x1dbf28(0x1fd)]('/')&&!_0x395333[_0x1dbf28(0x1fd)]('\x5c'))return![];if(_0x395333['includes']('\x20&&\x20')||_0x395333[_0x1dbf28(0x1fd)]('\x20||\x20')||_0x395333[_0x1dbf28(0x1fd)](';\x20'))return![];if(_0x395333[_0x1dbf28(0x1fd)]('$(')||_0x395333[_0x1dbf28(0x1fd)]('`')||_0x395333[_0x1dbf28(0x1fd)]('{')||_0x395333['includes']('['))return![];if(_0x29aff8['includes']('for\x20')||_0x29aff8[_0x1dbf28(0x1fd)]('while\x20')||_0x29aff8['includes']('if\x20'))return![];if(_0x29aff8['includes']('export ')||_0x29aff8['includes'](_0x1dbf28(0x259)))return![];if(_0x395333[_0x1dbf28(0x1fd)]('\x20|\x20')||_0x395333[_0x1dbf28(0x1fd)](_0x1dbf28(0x173)))return![];return!![];}async['translateCommandWithAI'](_0x27bdb7,_0x3b4e78){const _0x35b78a=a0_0x29919e;let _0x1e5751=_0x3b4e78[_0x35b78a(0x263)];if(!_0x1e5751&&_0x3b4e78[_0x35b78a(0x275)]&&_0x3b4e78[_0x35b78a(0x1fb)]){const _0x5cd7c9=_0x3b4e78[_0x35b78a(0x1cd)];_0x5cd7c9&&_0x5cd7c9['aiService']&&(_0x1e5751=_0x5cd7c9['aiService']);}if(!_0x1e5751)throw new Error(_0x35b78a(0x25d));const _0x44b0db=this[_0x35b78a(0x1bf)](_0x27bdb7),_0x5e9bc0=_0x35b78a(0x27a);try{const _0x1ce80c=await _0x1e5751['sendMessage'](_0x5e9bc0,_0x44b0db,{'agentId':_0x3b4e78[_0x35b78a(0x1fb)],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x3b4e78['apiKey'],'customApiKeys':_0x3b4e78[_0x35b78a(0x1cc)],'platformProvided':_0x3b4e78['platformProvided']}),_0xe34f1b=this['extractTranslatedCommand'](_0x1ce80c['content']);return this[_0x35b78a(0x270)]?.[_0x35b78a(0x221)]('AI\x20command\x20translation\x20completed',{'original':_0x27bdb7,'translated':_0xe34f1b,'model':_0x5e9bc0,'terminal':this[_0x35b78a(0x1c9)]}),_0xe34f1b;}catch(_0x3224fb){this[_0x35b78a(0x270)]?.[_0x35b78a(0x209)]('AI\x20command\x20translation\x20failed',{'command':_0x27bdb7,'terminal':this['detectedTerminal'],'error':_0x3224fb['message']});throw _0x3224fb;}}[a0_0x29919e(0x1bf)](_0x4b1703){const _0x43a41d=a0_0x29919e,_0xfdb30e={'cmd':'Windows\x20Command\x20Prompt\x20(cmd.exe)','powershell':'Windows\x20PowerShell','bash':_0x43a41d(0x28f)},_0x10d34b=_0xfdb30e[this['detectedTerminal']]||this[_0x43a41d(0x1c9)],_0x53b60f=this[_0x43a41d(0x1a0)](_0x4b1703);let _0x706b0d='Translate\x20this\x20command\x20to\x20work\x20correctly\x20in\x20'+_0x10d34b+':\x0a\x0aORIGINAL\x20COMMAND:\x0a```\x0a'+_0x4b1703+'\x0a```\x0a\x0aCOMMAND\x20ANALYSIS:\x0a-\x20Command\x20Type:\x20'+_0x53b60f[_0x43a41d(0x1dc)]+_0x43a41d(0x184)+_0x53b60f['commandCategory']+_0x43a41d(0x187)+_0x10d34b+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x53b60f[_0x43a41d(0x28a)]['join'](',\x20')||_0x43a41d(0x266));return _0x53b60f[_0x43a41d(0x1dc)]===_0x43a41d(0x26b)&&_0x53b60f[_0x43a41d(0x178)]&&_0x53b60f[_0x43a41d(0x178)][this['detectedTerminal']]&&(_0x706b0d+=_0x43a41d(0x287)+_0x53b60f[_0x43a41d(0x178)][this['detectedTerminal']]),_0x706b0d+='\x0a\x0aREQUIREMENTS:\x0a1.\x20Make\x20the\x20command\x20work\x20correctly\x20in\x20'+_0x10d34b+'\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:',_0x706b0d;}['extractTranslatedCommand'](_0x1e09eb){const _0x127436=a0_0x29919e;let _0x369a14=_0x1e09eb['replace'](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x369a14=_0x369a14[_0x127436(0x1b7)](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x4995a5=_0x369a14[_0x127436(0x230)]()['split']('\x0a');return _0x4995a5['length']>0x1&&!_0x369a14[_0x127436(0x1fd)]('&&')&&!_0x369a14['includes']('||')&&(_0x369a14=_0x4995a5[0x0][_0x127436(0x230)]()),_0x369a14[_0x127436(0x230)]();}[a0_0x29919e(0x1a0)](_0x2c75b4){const _0x213744=a0_0x29919e,_0x293383=this[_0x213744(0x1bd)](_0x2c75b4),_0x2b3ff6=this[_0x213744(0x278)](_0x293383,this[_0x213744(0x1c9)]);return{'compatible':_0x2b3ff6,'detectedTerminal':this['detectedTerminal'],'commandType':_0x293383[_0x213744(0x272)],'commandCategory':_0x293383['category'],'specificIssues':_0x293383[_0x213744(0x245)],'suggestedAction':_0x2b3ff6?'execute':_0x213744(0x241),'confidence':_0x293383[_0x213744(0x28c)]};}['isCommandCompatible'](_0x2ab675){return this['analyzeCommandCompatibility'](_0x2ab675)['compatible'];}['classifyCommand'](_0x455f7f){const _0x4c746a=a0_0x29919e,_0x29ae8d=_0x455f7f['toLowerCase']()[_0x4c746a(0x230)](),_0xece924=_0x29ae8d['split']('\x20')[0x0],_0x12e459=[];let _0x2c3893=0.9;const _0x3ae0b0={'ls':{'category':'file-listing','alternatives':{'cmd':'dir','powershell':_0x4c746a(0x280)}},'cat':{'category':'file-viewing','alternatives':{'cmd':'type','powershell':'Get-Content'}},'grep':{'category':'text-search','alternatives':{'cmd':_0x4c746a(0x188),'powershell':'Select-String'}},'find':{'category':'file-search','alternatives':{'cmd':'dir\x20/s','powershell':_0x4c746a(0x1fa)}},'head':{'category':_0x4c746a(0x2a9),'alternatives':{'cmd':'more','powershell':'Get-Content\x20-Head'}},'tail':{'category':_0x4c746a(0x2a9),'alternatives':{'cmd':_0x4c746a(0x22f),'powershell':_0x4c746a(0x168)}},'wc':{'category':'text-analysis','alternatives':{'cmd':_0x4c746a(0x2ac),'powershell':'Measure-Object'}},'cp':{'category':_0x4c746a(0x16c),'alternatives':{'cmd':_0x4c746a(0x24d),'powershell':'Copy-Item'}},'mv':{'category':'file-move','alternatives':{'cmd':_0x4c746a(0x1b4),'powershell':_0x4c746a(0x256)}},'rm':{'category':_0x4c746a(0x2ad),'alternatives':{'cmd':_0x4c746a(0x219),'powershell':_0x4c746a(0x1ed)}},'mkdir':{'category':_0x4c746a(0x271),'alternatives':{'cmd':'mkdir','powershell':_0x4c746a(0x213)}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':'rmdir','powershell':_0x4c746a(0x1ed)}},'touch':{'category':'file-create','alternatives':{'cmd':_0x4c746a(0x273),'powershell':_0x4c746a(0x192)}},'chmod':{'category':_0x4c746a(0x22e),'alternatives':{'cmd':'icacls','powershell':'Set-Acl'}},'chown':{'category':'ownership','alternatives':{'cmd':_0x4c746a(0x182),'powershell':'Set-Acl'}},'ps':{'category':'process-list','alternatives':{'cmd':'tasklist','powershell':_0x4c746a(0x291)}},'kill':{'category':_0x4c746a(0x25a),'alternatives':{'cmd':_0x4c746a(0x1b6),'powershell':'Stop-Process'}},'killall':{'category':_0x4c746a(0x25a),'alternatives':{'cmd':'taskkill\x20/f\x20/im','powershell':_0x4c746a(0x1e4)}},'top':{'category':_0x4c746a(0x1b2),'alternatives':{'cmd':_0x4c746a(0x1ef),'powershell':'Get-Process\x20|\x20Sort-Object\x20CPU'}},'wget':{'category':_0x4c746a(0x198),'alternatives':{'cmd':'curl','powershell':'Invoke-WebRequest'}},'curl':{'category':'http-client','alternatives':{'cmd':_0x4c746a(0x179),'powershell':_0x4c746a(0x204)}},'ping':{'category':'network-test','alternatives':{'cmd':_0x4c746a(0x297),'powershell':_0x4c746a(0x27c)}},'awk':{'category':'text-processing','alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':_0x4c746a(0x29b),'alternatives':{'cmd':_0x4c746a(0x1fc),'powershell':'native'}},'sort':{'category':'text-sort','alternatives':{'cmd':'sort','powershell':_0x4c746a(0x1b5)}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':_0x4c746a(0x1f9),'powershell':_0x4c746a(0x19f)}},'pwd':{'category':_0x4c746a(0x29f),'alternatives':{'cmd':'cd','powershell':'Get-Location'}},'whoami':{'category':_0x4c746a(0x21b),'alternatives':{'cmd':'echo\x20%USERNAME%','powershell':_0x4c746a(0x240)}},'env':{'category':'environment','alternatives':{'cmd':'set','powershell':_0x4c746a(0x29c)}},'export':{'category':_0x4c746a(0x250),'alternatives':{'cmd':_0x4c746a(0x1d8),'powershell':'$env:'}},'source':{'category':'script-execute','alternatives':{'cmd':_0x4c746a(0x1ac),'powershell':'.\x20'}},'tar':{'category':'archive','alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':'archive','alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0x4c746a(0x24a)}},'unzip':{'category':'archive','alternatives':{'cmd':_0x4c746a(0x27d),'powershell':'Expand-Archive'}},'df':{'category':_0x4c746a(0x2b1),'alternatives':{'cmd':_0x4c746a(0x1f1),'powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':'disk-usage','alternatives':{'cmd':'dir\x20/s','powershell':_0x4c746a(0x19e)}},'free':{'category':_0x4c746a(0x247),'alternatives':{'cmd':'systeminfo','powershell':_0x4c746a(0x211)}},'uname':{'category':'system-info','alternatives':{'cmd':'systeminfo','powershell':'Get-ComputerInfo'}}},_0x29a323={'dir':{'category':_0x4c746a(0x222),'alternatives':{'unix':'ls','powershell':_0x4c746a(0x280)}},'type':{'category':_0x4c746a(0x2a9),'alternatives':{'unix':_0x4c746a(0x169),'powershell':_0x4c746a(0x1a2)}},'copy':{'category':'file-copy','alternatives':{'unix':'cp','powershell':'Copy-Item'}},'move':{'category':'file-move','alternatives':{'unix':'mv','powershell':'Move-Item'}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':'Remove-Item'}},'tasklist':{'category':_0x4c746a(0x294),'alternatives':{'unix':'ps','powershell':'Get-Process'}},'taskkill':{'category':_0x4c746a(0x25a),'alternatives':{'unix':_0x4c746a(0x1c5),'powershell':_0x4c746a(0x264)}},'findstr':{'category':'text-search','alternatives':{'unix':_0x4c746a(0x195),'powershell':'Select-String'}}},_0x1aef1e={'get-childitem':{'category':'file-listing','alternatives':{'unix':'ls','cmd':'dir'}},'get-content':{'category':'file-viewing','alternatives':{'unix':'cat','cmd':'type'}},'copy-item':{'category':_0x4c746a(0x16c),'alternatives':{'unix':'cp','cmd':_0x4c746a(0x24d)}},'move-item':{'category':'file-move','alternatives':{'unix':'mv','cmd':'move'}},'remove-item':{'category':'file-delete','alternatives':{'unix':'rm','cmd':_0x4c746a(0x219)}},'get-process':{'category':_0x4c746a(0x294),'alternatives':{'unix':'ps','cmd':_0x4c746a(0x1ef)}},'stop-process':{'category':_0x4c746a(0x25a),'alternatives':{'unix':'kill','cmd':'taskkill'}}};let _0x563763=_0x4c746a(0x24f),_0x5ca487='unknown',_0x258b00={};if(_0x3ae0b0[_0xece924])_0x563763=_0x4c746a(0x26b),_0x5ca487=_0x3ae0b0[_0xece924][_0x4c746a(0x276)],_0x258b00=_0x3ae0b0[_0xece924][_0x4c746a(0x178)];else{if(_0x29a323[_0xece924])_0x563763=_0x4c746a(0x205),_0x5ca487=_0x29a323[_0xece924][_0x4c746a(0x276)],_0x258b00=_0x29a323[_0xece924]['alternatives'];else{if(_0x1aef1e[_0xece924])_0x563763='powershell',_0x5ca487=_0x1aef1e[_0xece924]['category'],_0x258b00=_0x1aef1e[_0xece924]['alternatives'];else{const _0xb4750b=[_0x4c746a(0x17d),'cd','exit',_0x4c746a(0x216)];_0xb4750b[_0x4c746a(0x1fd)](_0xece924)?(_0x563763=_0x4c746a(0x281),_0x5ca487=_0x4c746a(0x1a1)):(_0x563763='unknown',_0x2c3893=0.3);}}}return _0x455f7f['includes']('\x27')&&!_0x455f7f['includes']('\x22')&&_0x12e459['push']('single-quotes-problematic'),_0x455f7f['includes']('/')&&!_0x455f7f[_0x4c746a(0x1fd)]('\x5c')&&!_0x455f7f[_0x4c746a(0x1fd)](_0x4c746a(0x167))&&_0x455f7f['includes']('>')&&_0x12e459['push'](_0x4c746a(0x298)),(_0x455f7f['includes']('\x5cn')||_0x455f7f[_0x4c746a(0x1fd)]('\x5ct'))&&_0x12e459[_0x4c746a(0x253)]('escape-sequences'),(_0x455f7f[_0x4c746a(0x1fd)]('\x20&&\x20')||_0x455f7f[_0x4c746a(0x1fd)]('\x20||\x20')||_0x455f7f['includes'](';'))&&_0x12e459['push']('command-chaining'),{'type':_0x563763,'category':_0x5ca487,'alternatives':_0x258b00,'issues':_0x12e459,'confidence':_0x2c3893,'firstWord':_0xece924,'fullCommand':_0x455f7f};}[a0_0x29919e(0x278)](_0x5ece5d,_0x51bd36){const _0x59712c=a0_0x29919e;switch(_0x51bd36){case _0x59712c(0x1d6):if(_0x5ece5d['type']===_0x59712c(0x26b))return![];if(_0x5ece5d[_0x59712c(0x245)][_0x59712c(0x1fd)]('single-quotes-problematic'))return![];if(_0x5ece5d['issues']['includes']('unix-style-paths'))return![];return _0x5ece5d[_0x59712c(0x272)]==='windows-cmd'||_0x5ece5d[_0x59712c(0x272)]==='universal';case'powershell':if(_0x5ece5d[_0x59712c(0x272)]===_0x59712c(0x26b)&&!_0x5ece5d[_0x59712c(0x178)]['powershell'])return![];return!![];case _0x59712c(0x288):if(_0x5ece5d[_0x59712c(0x272)]==='windows-cmd')return![];return _0x5ece5d['type']===_0x59712c(0x26b)||_0x5ece5d[_0x59712c(0x272)]===_0x59712c(0x281);default:return![];}}['translateToWindowsCmd'](_0x48903b){const _0x4813f9=a0_0x29919e;let _0x1d608b=_0x48903b;const _0x267b87=new Map([[/^ls\s*$/,'dir'],[/^ls\s+-la?$/,_0x4813f9(0x1e2)],[/^ls\s+-l$/,_0x4813f9(0x1e2)],[/^ls\s+-a$/,_0x4813f9(0x1b9)],[/^cat\s+(.+)$/,'type\x20$1'],[/^cp\s+(.+)\s+(.+)$/,_0x4813f9(0x224)],[/^mv\s+(.+)\s+(.+)$/,_0x4813f9(0x26f)],[/^rm\s+(.+)$/,_0x4813f9(0x1ca)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,_0x4813f9(0x21f)],[/^ps\s*$/,_0x4813f9(0x1ef)],[/^kill\s+(.+)$/,'taskkill\x20/PID\x20$1'],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,_0x4813f9(0x23c)],[/^ping\s+(.+)$/,_0x4813f9(0x171)],[/^wget\s+(.+)$/,_0x4813f9(0x190)],[/^curl\s+(.+)$/,'curl\x20$1']]);for(const [_0x4f1742,_0x991146]of _0x267b87){if(_0x4f1742[_0x4813f9(0x252)](_0x1d608b)){_0x1d608b=_0x1d608b['replace'](_0x4f1742,_0x991146);break;}}_0x1d608b=_0x1d608b[_0x4813f9(0x1b7)](/echo\s+'([^']+)'\s*>/g,_0x4813f9(0x227)),_0x1d608b=_0x1d608b['replace'](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x1d608b[_0x4813f9(0x1fd)]('echo\x20\x27')&&_0x1d608b[_0x4813f9(0x1fd)]('\x5cn')){const _0x2477e0=_0x1d608b[_0x4813f9(0x1b3)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x2477e0){const _0x3e938a=_0x2477e0[0x1][_0x4813f9(0x1b7)](/\\n/g,'\x0a'),_0x10c086=_0x2477e0[0x2],_0x2f8dad=_0x3e938a['split']('\x0a');_0x1d608b='('+_0x2f8dad['map'](_0x317198=>_0x4813f9(0x1f5)+_0x317198)['join'](_0x4813f9(0x29a))+')\x20>\x20'+_0x10c086;}}return this['logger']?.['info']('Command\x20translated\x20for\x20Windows\x20CMD',{'original':_0x48903b,'translated':_0x1d608b}),_0x1d608b;}['translateToPowerShell'](_0x465e61){const _0x3d3738=a0_0x29919e;let _0x40ba9b=_0x465e61;const _0x3b8159=new Map([[/^ls\s*$/,'Get-ChildItem'],[/^ls\s+-la?$/,_0x3d3738(0x201)],[/^cat\s+(.+)$/,_0x3d3738(0x292)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,'Move-Item\x20$1\x20$2'],[/^rm\s+(.+)$/,_0x3d3738(0x239)],[/^pwd\s*$/,'Get-Location'],[/^ps\s*$/,'Get-Process']]);for(const [_0x134517,_0xc9e485]of _0x3b8159){if(_0x134517[_0x3d3738(0x252)](_0x40ba9b)){_0x40ba9b=_0x40ba9b['replace'](_0x134517,_0xc9e485);break;}}return this[_0x3d3738(0x270)]?.['info'](_0x3d3738(0x1ec),{'original':_0x465e61,'translated':_0x40ba9b}),_0x40ba9b;}[a0_0x29919e(0x166)](_0x2a5b4f){const _0x2a9658=a0_0x29919e;let _0x42e6f8=_0x2a5b4f;const _0x36ced0=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x2a9658(0x177)],[/^type\s+(.+)$/,_0x2a9658(0x231)],[/^copy\s+(.+)\s+(.+)$/,'cp\x20$1\x20$2'],[/^move\s+(.+)\s+(.+)$/,'mv\x20$1\x20$2'],[/^del\s+(.+)$/,'rm\x20$1'],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,'pwd']]);for(const [_0x1ca8c5,_0xd6b79e]of _0x36ced0){if(_0x1ca8c5['test'](_0x42e6f8)){_0x42e6f8=_0x42e6f8['replace'](_0x1ca8c5,_0xd6b79e);break;}}return _0x42e6f8;}async[a0_0x29919e(0x289)](_0x1659bd){}async[a0_0x29919e(0x19c)](_0x3b88df,_0x356366,_0x16c88d={}){const _0x5a8e06=a0_0x29919e,{agentId:_0x36e42c,context:_0x102207}=_0x16c88d;if(!_0x36e42c)throw new Error(_0x5a8e06(0x290));const _0x465e78=this['getAgentCommands'](_0x36e42c),_0x133959=_0x465e78['filter'](_0x233490=>_0x233490[_0x5a8e06(0x17a)]==='running'||_0x233490[_0x5a8e06(0x17a)]===_0x5a8e06(0x262));if(_0x133959[_0x5a8e06(0x1e6)]>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error('Maximum\x20background\x20commands\x20per\x20agent\x20exceeded\x20('+this[_0x5a8e06(0x286)]+')');const _0x4c7fdf=Array[_0x5a8e06(0x265)](this['commandTracker'][_0x5a8e06(0x269)]()),_0x3ff3db=_0x4c7fdf[_0x5a8e06(0x1ee)](_0x1e4af9=>_0x1e4af9['state']==='running'||_0x1e4af9['state']==='waiting_for_input');if(_0x3ff3db[_0x5a8e06(0x1e6)]>=this[_0x5a8e06(0x27b)])throw new Error(_0x5a8e06(0x29d)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0x46dcba=_0x36e42c+'-cmd-'+Date[_0x5a8e06(0x191)]()+'-'+ ++this[_0x5a8e06(0x2a6)],_0x5c0bc6=_0x3b88df;let _0x23975f;try{_0x23975f=await this[_0x5a8e06(0x21e)](_0x3b88df,{'agentId':_0x36e42c,'toolsRegistry':_0x102207?.[_0x5a8e06(0x275)],'messageProcessor':_0x102207?.[_0x5a8e06(0x1cd)],'aiService':_0x102207?.['aiService'],'apiKey':_0x102207?.['apiKey'],'customApiKeys':_0x102207?.['customApiKeys'],'platformProvided':_0x102207?.['platformProvided']});}catch(_0x3b594b){this[_0x5a8e06(0x270)]?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x5c0bc6,'error':_0x3b594b['message']}),_0x23975f=_0x3b88df;}this[_0x5a8e06(0x270)]?.['info'](_0x5a8e06(0x17b)+_0x23975f,{'commandId':_0x46dcba,'agentId':_0x36e42c,'originalCommand':_0x5c0bc6,'workingDirectory':_0x356366});let _0x2ff5ea;if(this['detectedTerminal']===_0x5a8e06(0x1d6)||this[_0x5a8e06(0x1c9)]==='powershell'){const _0x2a401b=this[_0x5a8e06(0x1c9)]==='powershell'?_0x5a8e06(0x210):_0x5a8e06(0x1d6),_0x182c73=this['detectedTerminal']===_0x5a8e06(0x210)?['-Command',_0x23975f]:['/c',_0x23975f];_0x2ff5ea=spawn(_0x2a401b,_0x182c73,{'cwd':_0x356366,'env':{...process[_0x5a8e06(0x18c)]},'windowsHide':!![],'stdio':['pipe','pipe','pipe']});}else _0x2ff5ea=spawn('sh',['-c',_0x23975f],{'cwd':_0x356366,'env':{...process[_0x5a8e06(0x18c)]},'stdio':[_0x5a8e06(0x196),'pipe',_0x5a8e06(0x196)]});const _0x3cfdc1={'commandId':_0x46dcba,'agentId':_0x36e42c,'pid':_0x2ff5ea['pid'],'command':_0x5c0bc6,'translatedCommand':_0x23975f,'workingDirectory':_0x356366,'startTime':new Date()[_0x5a8e06(0x16d)](),'state':'running','exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date[_0x5a8e06(0x191)](),'promptDetected':null,'process':_0x2ff5ea};return this['commandTracker'][_0x5a8e06(0x1d8)](_0x46dcba,_0x3cfdc1),_0x2ff5ea['stdout']['on'](_0x5a8e06(0x254),_0x3f6a1e=>{const _0x47501d=_0x5a8e06,_0x287414=_0x3f6a1e['toString']();_0x3cfdc1[_0x47501d(0x248)]+=_0x287414,_0x3cfdc1['lastOutputTime']=Date['now']();if(!_0x3cfdc1['promptDetected']){const _0x51742f=this[_0x47501d(0x20b)][_0x47501d(0x284)](_0x3cfdc1[_0x47501d(0x248)],_0x47501d(0x25c));_0x51742f&&(_0x3cfdc1[_0x47501d(0x1e8)]=_0x51742f,_0x3cfdc1['state']=_0x47501d(0x262),this[_0x47501d(0x270)]?.[_0x47501d(0x17c)](_0x47501d(0x1f0),{'commandId':_0x46dcba,'agentId':_0x36e42c,'type':_0x51742f[_0x47501d(0x272)],'matchedText':_0x51742f['matchedText']}));}}),_0x2ff5ea[_0x5a8e06(0x20e)]['on']('data',_0x6b72d3=>{const _0x1ac35c=_0x5a8e06,_0x3034c7=_0x6b72d3[_0x1ac35c(0x1d5)]();_0x3cfdc1['stderrBuffer']+=_0x3034c7,_0x3cfdc1['lastOutputTime']=Date['now']();if(!_0x3cfdc1[_0x1ac35c(0x1e8)]){const _0x444e33=this[_0x1ac35c(0x20b)]['detectPrompt'](_0x3cfdc1[_0x1ac35c(0x1d1)],_0x1ac35c(0x20e));_0x444e33&&(_0x3cfdc1[_0x1ac35c(0x1e8)]=_0x444e33,_0x3cfdc1[_0x1ac35c(0x17a)]=_0x1ac35c(0x262),this[_0x1ac35c(0x270)]?.['info'](_0x1ac35c(0x197),{'commandId':_0x46dcba,'agentId':_0x36e42c,'type':_0x444e33[_0x1ac35c(0x272)],'matchedText':_0x444e33['matchedText']}));}}),_0x2ff5ea['on']('exit',(_0x3af818,_0x459af1)=>{const _0x363ff5=_0x5a8e06;_0x3cfdc1['exitCode']=_0x3af818,_0x3cfdc1[_0x363ff5(0x17a)]=_0x3af818===0x0?'completed':'failed',_0x3cfdc1['endTime']=new Date()['toISOString'](),this[_0x363ff5(0x270)]?.['info']('Background\x20command\x20exited',{'commandId':_0x46dcba,'agentId':_0x36e42c,'exitCode':_0x3af818,'signal':_0x459af1,'state':_0x3cfdc1[_0x363ff5(0x17a)]});}),_0x2ff5ea['on'](_0x5a8e06(0x209),_0x489b6c=>{const _0x20fbf8=_0x5a8e06;_0x3cfdc1[_0x20fbf8(0x17a)]=_0x20fbf8(0x1c6),_0x3cfdc1[_0x20fbf8(0x209)]=_0x489b6c['message'],_0x3cfdc1['endTime']=new Date()['toISOString'](),this['logger']?.[_0x20fbf8(0x209)](_0x20fbf8(0x1b0),{'commandId':_0x46dcba,'agentId':_0x36e42c,'error':_0x489b6c[_0x20fbf8(0x1f6)]});}),{'success':!![],'commandId':_0x46dcba,'pid':_0x2ff5ea[_0x5a8e06(0x214)],'command':_0x5c0bc6,'translatedCommand':_0x23975f,'workingDirectory':_0x356366,'message':_0x5a8e06(0x243)+_0x46dcba};}[a0_0x29919e(0x185)](_0x1df2c6,_0x4a7ab3,_0x44b83b){const _0x4c6535=a0_0x29919e,_0x2de7b3=this['validateCommandOwnership'](_0x1df2c6,_0x44b83b);if(_0x2de7b3['state']==='completed'||_0x2de7b3[_0x4c6535(0x17a)]==='failed')throw new Error(_0x4c6535(0x251)+_0x2de7b3[_0x4c6535(0x17a)]+_0x4c6535(0x1d0));if(!_0x2de7b3['process']||_0x2de7b3[_0x4c6535(0x203)][_0x4c6535(0x22b)])throw new Error(_0x4c6535(0x295));const _0x1bcbe9=_0x4a7ab3[_0x4c6535(0x175)]('\x0a')?_0x4a7ab3:_0x4a7ab3+'\x0a';return _0x2de7b3['process'][_0x4c6535(0x260)][_0x4c6535(0x1f2)](_0x1bcbe9),this[_0x4c6535(0x270)]?.['info']('Input\x20sent\x20to\x20background\x20command',{'commandId':_0x1df2c6,'agentId':_0x44b83b,'inputLength':_0x4a7ab3[_0x4c6535(0x1e6)]}),_0x2de7b3['state']==='waiting_for_input'&&(_0x2de7b3[_0x4c6535(0x17a)]='running',_0x2de7b3['promptDetected']=null),{'success':!![],'commandId':_0x1df2c6,'message':_0x4c6535(0x18d)};}[a0_0x29919e(0x1c8)](_0x466085,_0x5a8678){const _0x1af47b=a0_0x29919e,_0x222c55=this['validateCommandOwnership'](_0x466085,_0x5a8678),_0x150831=Date[_0x1af47b(0x191)]()-_0x222c55['lastOutputTime'];return{'success':!![],'commandId':_0x466085,'pid':_0x222c55[_0x1af47b(0x214)],'command':_0x222c55[_0x1af47b(0x24e)],'state':_0x222c55[_0x1af47b(0x17a)],'exitCode':_0x222c55['exitCode'],'startTime':_0x222c55['startTime'],'endTime':_0x222c55['endTime'],'workingDirectory':_0x222c55[_0x1af47b(0x1df)],'stdout':_0x222c55['stdoutBuffer'],'stderr':_0x222c55[_0x1af47b(0x1d1)],'stdoutLength':_0x222c55['stdoutBuffer'][_0x1af47b(0x1e6)],'stderrLength':_0x222c55['stderrBuffer']['length'],'lastOutputTime':_0x222c55[_0x1af47b(0x235)],'timeSinceLastOutput':_0x150831,'promptDetected':!!_0x222c55[_0x1af47b(0x1e8)],'promptInfo':_0x222c55['promptDetected']||undefined};}['killCommand'](_0x3d80c6,_0x16678f){const _0x41fb01=a0_0x29919e,_0x218d0c=this['validateCommandOwnership'](_0x3d80c6,_0x16678f);if(_0x218d0c[_0x41fb01(0x17a)]===_0x41fb01(0x233)||_0x218d0c['state']==='failed')return{'success':!![],'commandId':_0x3d80c6,'message':_0x41fb01(0x170),'state':_0x218d0c[_0x41fb01(0x17a)]};if(_0x218d0c['process']&&!_0x218d0c['process'][_0x41fb01(0x22b)])return _0x218d0c[_0x41fb01(0x203)]['kill'](_0x41fb01(0x18a)),setTimeout(()=>{const _0x58e357=_0x41fb01;_0x218d0c['process']&&!_0x218d0c['process']['killed']&&_0x218d0c[_0x58e357(0x203)]['kill']('SIGKILL');},0x1388),this['logger']?.['info']('Background\x20command\x20killed',{'commandId':_0x3d80c6,'agentId':_0x16678f}),{'success':!![],'commandId':_0x3d80c6,'message':_0x41fb01(0x1d7)};return{'success':![],'commandId':_0x3d80c6,'error':_0x41fb01(0x19a)};}[a0_0x29919e(0x180)](_0x25ee8f){const _0x9a8aed=a0_0x29919e,_0x40782e=this[_0x9a8aed(0x261)](_0x25ee8f);return _0x40782e[_0x9a8aed(0x282)](_0x964a5e=>({'commandId':_0x964a5e[_0x9a8aed(0x23f)],'command':_0x964a5e['command'],'state':_0x964a5e['state'],'pid':_0x964a5e['pid'],'exitCode':_0x964a5e[_0x9a8aed(0x26e)],'startTime':_0x964a5e['startTime'],'endTime':_0x964a5e[_0x9a8aed(0x1c7)],'promptDetected':!!_0x964a5e[_0x9a8aed(0x1e8)],'timeSinceLastOutput':Date[_0x9a8aed(0x191)]()-_0x964a5e['lastOutputTime']}));}[a0_0x29919e(0x261)](_0x5de2be){const _0x131ef5=a0_0x29919e;return Array['from'](this['commandTracker'][_0x131ef5(0x269)]())['filter'](_0x521888=>_0x521888['agentId']===_0x5de2be);}[a0_0x29919e(0x18b)](_0x4d5b43,_0x37e19c){const _0x273d43=a0_0x29919e,_0x4242f0=this['commandTracker']['get'](_0x4d5b43);if(!_0x4242f0)throw new Error(_0x273d43(0x1ce)+_0x4d5b43);if(_0x4242f0['agentId']!==_0x37e19c)throw new Error('Access\x20denied:\x20Command\x20belongs\x20to\x20agent\x20'+_0x4242f0[_0x273d43(0x1fb)]);return _0x4242f0;}async['cleanupAgent'](_0xdad9c4){const _0x2e3bf7=a0_0x29919e,_0x53e8be=this['getAgentCommands'](_0xdad9c4);let _0x428ab7=0x0,_0x22ccaf=0x0;for(const _0x19d60e of _0x53e8be){_0x19d60e['process']&&!_0x19d60e['process']['killed']&&(_0x19d60e[_0x2e3bf7(0x203)]['kill']('SIGTERM'),_0x428ab7++,setTimeout(()=>{const _0x198630=_0x2e3bf7;_0x19d60e[_0x198630(0x203)]&&!_0x19d60e[_0x198630(0x203)][_0x198630(0x22b)]&&_0x19d60e['process'][_0x198630(0x1c5)](_0x198630(0x283));},0xbb8)),this['commandTracker'][_0x2e3bf7(0x24b)](_0x19d60e['commandId']),_0x22ccaf++;}return this['logger']?.['info']('Agent\x20commands\x20cleaned\x20up',{'agentId':_0xdad9c4,'killedCount':_0x428ab7,'removedCount':_0x22ccaf}),{'success':!![],'agentId':_0xdad9c4,'killedCount':_0x428ab7,'removedCount':_0x22ccaf,'message':_0x2e3bf7(0x1a9)+_0x22ccaf+_0x2e3bf7(0x194)+_0xdad9c4};}[a0_0x29919e(0x16b)](){const _0x3e12cf=a0_0x29919e,_0x405235=Date[_0x3e12cf(0x191)]();let _0x1cf42a=0x0;for(const [_0x53ed44,_0x10c079]of this['commandTracker'][_0x3e12cf(0x226)]()){if(_0x10c079['state']!=='completed'&&_0x10c079[_0x3e12cf(0x17a)]!==_0x3e12cf(0x1c6))continue;const _0x1b03fd=new Date(_0x10c079['startTime'])[_0x3e12cf(0x183)](),_0x100e4a=(_0x405235-_0x1b03fd)/0x3e8/0x3c;_0x100e4a>this['MAX_COMMAND_AGE_MINUTES']&&(this['commandTracker']['delete'](_0x53ed44),_0x1cf42a++);}return _0x1cf42a>0x0&&this[_0x3e12cf(0x270)]?.[_0x3e12cf(0x17c)](_0x3e12cf(0x172),{'removedCount':_0x1cf42a,'ageThresholdMinutes':this['MAX_COMMAND_AGE_MINUTES']}),{'success':!![],'removedCount':_0x1cf42a,'message':_0x3e12cf(0x1a9)+_0x1cf42a+_0x3e12cf(0x19b)};}}function a0_0x129e(_0x58f284,_0x5b3e20){_0x58f284=_0x58f284-0x166;const _0x47fd53=a0_0x47fd();let _0x129ef5=_0x47fd53[_0x58f284];if(a0_0x129e['oCASHl']===undefined){var _0x4e2b80=function(_0x40c5e7){const _0x137777='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9b5b1f='',_0x2ea814='';for(let _0x262f4f=0x0,_0x52a9d4,_0x3b7a43,_0x1f2d98=0x0;_0x3b7a43=_0x40c5e7['charAt'](_0x1f2d98++);~_0x3b7a43&&(_0x52a9d4=_0x262f4f%0x4?_0x52a9d4*0x40+_0x3b7a43:_0x3b7a43,_0x262f4f++%0x4)?_0x9b5b1f+=String['fromCharCode'](0xff&_0x52a9d4>>(-0x2*_0x262f4f&0x6)):0x0){_0x3b7a43=_0x137777['indexOf'](_0x3b7a43);}for(let _0x164c90=0x0,_0x68ae9c=_0x9b5b1f['length'];_0x164c90<_0x68ae9c;_0x164c90++){_0x2ea814+='%'+('00'+_0x9b5b1f['charCodeAt'](_0x164c90)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ea814);};a0_0x129e['rFtWPy']=_0x4e2b80,a0_0x129e['ZjLUTS']={},a0_0x129e['oCASHl']=!![];}const _0xa9f241=_0x47fd53[0x0],_0x5648f2=_0x58f284+_0xa9f241,_0x1db5b4=a0_0x129e['ZjLUTS'][_0x5648f2];return!_0x1db5b4?(_0x129ef5=a0_0x129e['rFtWPy'](_0x129ef5),a0_0x129e['ZjLUTS'][_0x5648f2]=_0x129ef5):_0x129ef5=_0x1db5b4,_0x129ef5;}export default TerminalTool;
|
|
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;
|
package/src/tools/webTool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0xf405(_0x773fe3,_0x5e6c6a){_0x773fe3=_0x773fe3-0xcc;const _0x2336d4=a0_0x2336();let _0xf405e8=_0x2336d4[_0x773fe3];if(a0_0xf405['UUOXWS']===undefined){var _0x3d7915=function(_0x5ea1fb){const _0x26b1bc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20d816='',_0x53285c='';for(let _0x47fb79=0x0,_0x2222e7,_0x1605d0,_0x3c900d=0x0;_0x1605d0=_0x5ea1fb['charAt'](_0x3c900d++);~_0x1605d0&&(_0x2222e7=_0x47fb79%0x4?_0x2222e7*0x40+_0x1605d0:_0x1605d0,_0x47fb79++%0x4)?_0x20d816+=String['fromCharCode'](0xff&_0x2222e7>>(-0x2*_0x47fb79&0x6)):0x0){_0x1605d0=_0x26b1bc['indexOf'](_0x1605d0);}for(let _0x5732d0=0x0,_0x3bc33d=_0x20d816['length'];_0x5732d0<_0x3bc33d;_0x5732d0++){_0x53285c+='%'+('00'+_0x20d816['charCodeAt'](_0x5732d0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x53285c);};a0_0xf405['uIUUBU']=_0x3d7915,a0_0xf405['YhSpfy']={},a0_0xf405['UUOXWS']=!![];}const _0xf83ff8=_0x2336d4[0x0],_0x2327fb=_0x773fe3+_0xf83ff8,_0x4160bd=a0_0xf405['YhSpfy'][_0x2327fb];return!_0x4160bd?(_0xf405e8=a0_0xf405['uIUUBU'](_0xf405e8),a0_0xf405['YhSpfy'][_0x2327fb]=_0xf405e8):_0xf405e8=_0x4160bd,_0xf405e8;}const a0_0xe8309b=a0_0xf405;function a0_0x2336(){const _0x376bb2=['rMfPBgvKihrVignSB3nLihrHyIbKDxjPBMCGy2XLyw51Ca','BwfW','DhLWzq','ndCXndvMwuffsw0','y2XLyw51CeLKBgvuywjZ','BgvUz3rO','C3DPDgnOlxrHyG','D2fPDc1MB3i','zxH0CMfJDc10zxH0','ugvYzM9YBwLUzYb3zwiGC2vHCMnO','zgvSzxrL','revgqvvmvf9usu1ft1vu','z29Vz2XL','yM9KEq','z2v0','CgfNzq','y2XPy2S','yNv0Dg9U','y2XVC2vZDa','AhjLzG','Aw5JBhvKzxm','Ag92zxi','lMjFywXNBYbH','y2XLyw51CeLUDgvYDMfS','nJy4DNnptwD5','D2fPDezVCLnLBgvJDg9Y','ChjLC3m','CgfYC2vqyxjHBwv0zxjZ','z290BW','D29YA2LUz0rPCMvJDg9YEq','zw50CMLLCW','ls1KAxnHyMXLlwrLDI1ZAg0TDxnHz2u','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq','Dg1WzgLY','Dgv4Da','Ahr0Chm6lY93D3CUyMLUzY5JB20VC2vHCMnOp3e9','u2vHCMnOihf1zxj5igLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','BgfZDefJDgL2Axr5','CMvZDwX0C1nLBgvJDg9Y','zw5NAw5L','yNv0Dg9Uw3r5Cgu9iNn1yM1PDcjD','C2nYB2XSsgvPz2H0','BMv3ugfNzq','rMfPBgvKihrVignSzwfUihrLBxaGzgLYzwn0B3j5','zxjYB3i','u2vHCMnOignVBxbSzxrLza','i3nLyxjJAa','AxnbyNnVBhv0zq','C3rYAw5N','zM9YBwf0CW','u3rHCNrPBMCGAw50zxjHy3rPDMuGC2vZC2LVBG','AxnbCNjHEq','y2XVC2u','mtC2mJi0BurRq2DZ','rMfPBgvKihrVignYzwf0zsb0zw1WigrPCMvJDg9YEq','zM9YBwf0','ntaXntKWzwH1DMnr','ywn0Aw9UCW','jYbUB3qGzM91BMqGzM9YigfNzw50ia','vefcx0LetevFveLnru9vva','zxHLy3v0zq','vw5RBM93BIbZzwfYy2GGzw5NAw5LoIa','kfTEpL0Qkt4Ow148xsOPpc8','DgL0Bgu','C2vHCMnO','Ahr0Ca','qw5HBhL6Aw5NihnJCMvLBNnOB3qGD2L0Acbbsq','yNjVD3nLCG','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbZy3jLzw5ZAg90igfUywX5C2LZ','Ahr0Chm6lY9KDwnRzhvJA2DVlMnVBs8/Ct0','Bgf1BMnO','y3DK','zw5ZDxjLvgvTCerPCG','DgLTzw91Da','ndi2nJaWmfbHtMDMvW','nZjWuvvNv3O','y2XVC2uTDgfI','z2v0rgvZy3jPChrPB24','tM8GDgfICYb0BYbJBgvHBIb1Ca','zMv0y2G','C2vHCMnOrw5NAw5LCW','CxvLCNLtzwXLy3rVCKfSBa','ndy4mtCXnw5uyu1kza','Aw5WDxrBDhLWzt0IC3vIBwL0iL0','DMfSDwu','BMf2AwDHDgu','q2XLyw5PBMCGDxaGywDLBNqGDgfICW','vevnuf9esvi','AxndB25Uzwn0zwq','D2vI','C2nYzwvUC2HVDa','BwvZC2fNzq','B3bLCMf0Aw9U','y29UC29Szu1LC3nHz2vZ','zw5ZDxjLqNjVD3nLCG','y29UC29Szq','yw5HBhL6zs1Zy3jLzw5ZAg90','C2vSzwn0B3i','u3DPDgnOzwqGDg8GDgfIicC','AgfZ','A2v5','qwn0Aw9UigzHAwXLza','mti1nMTpt2DttG','Dgv4DenVBNrLBNq','ChvZAa','Bw9KzwW','y2XLyw51CefNzw50','zMLUza','CxvLCNK','C3vJy2vZCW','Aw5UzxjuzxH0','D2fYBG','zxHLy3v0zvrHyKfJDgLVBG','Bg9Nz2vY','rMfPBgvKihrVihbHCNnLihDLyIb0B29SihbHCMfTzxrLCNm6ia','D2fPDfnLBgvJDg9Y','zxH0CMfJDenVBNrLBNq','C2nYzwvUC2HVDc0','yNjVD3nLCKLUAxrPywXPEMLUzW','C2v0','ls1KAxnHyMXLlwjSAw5RlwzLyxr1CMvZpuf1Dg9TyxrPB25dB250CM9SBgvK','vgfIicC','C2nYB2XSvg8','zxH0CMfJDc1SAw5RCW','C3rHCNrdBgvHBNvWvgLTzxi','CgfYC2vby3rPB25Z','u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq6ia','Aw50zxjHy3rPDMu','AM9PBG','B3bLCMf0Aw9Uig11C3qGyMuGB25Lig9MoIbZzwfYy2GSigzLDgnOlcbPBNrLCMfJDgL2zq','ywn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLzcbMB3iGAw50zxjHy3rPDMuGB3bLCMf0Aw9U','lNbUzW','lIbbDMfPBgfIBgu6ia','ihrHyNmGzM9YigfNzw50ia','CgfYC2u','qwn0Aw9Uia','qNjVD3nLCIbPBML0AwfSAxPHDgLVBIbMywLSzwq6ia','C3vIC3rYAw5N','zgLYzwn0B3j5qwnJzxnZ','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','q2XLyw5PBMCGDxaGAwrSzsb0ywjZ','DhjPBq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','BM93','AhrTBa','y2XLyw51CfrPBwvY','C3rHCNrZv2L0Aa','otCYm0XgDLDlBq','ywDLBNrjza','ywDLBNruywjZ','C3DPDgnOvgfI','q2XVC2vKia','pNW8','yMfZzty0','lMCSic5Ix2fSz28Sic5Yzxn1Bhq','mteYntuXnwXfD1P1AW','y29UDgvUDa','BMfTzq','CxvLCNLtzwXLy3rVCG','z2v0lwnVBNnVBgu','BgLUA3m','BMvZDgvKqwn0Aw9UCW','BMv3','lNjLC3vSDf9FysWGyvTKyxrHlxrLC3rPzd0ICMvZDwX0lxrPDgXLlweIxq','Aw5MBW','ls1UBY1Zyw5KyM94','y3vZDg9TqxbPs2v5CW','C3bSAxq','tM8Gywn0AxzLihrHyNm','Aw5WDxrBBMfTzt0ICsjD','zxzHBhvHDgu','vw5RBM93BIbVCgvYyxrPB246ia','yw5HBhL6zvnJCMvLBNnOB3q','DxjS','AgvHzgXLC3m'];a0_0x2336=function(){return _0x376bb2;};return a0_0x2336();}(function(_0x2a75a2,_0x119f1b){const _0x8ed9a2=a0_0xf405,_0x4410b9=_0x2a75a2();while(!![]){try{const _0x318a7d=parseInt(_0x8ed9a2(0x119))/0x1+parseInt(_0x8ed9a2(0x162))/0x2+parseInt(_0x8ed9a2(0x111))/0x3*(-parseInt(_0x8ed9a2(0x145))/0x4)+parseInt(_0x8ed9a2(0xd0))/0x5+parseInt(_0x8ed9a2(0x177))/0x6+-parseInt(_0x8ed9a2(0x130))/0x7*(parseInt(_0x8ed9a2(0xe4))/0x8)+-parseInt(_0x8ed9a2(0x178))/0x9*(parseInt(_0x8ed9a2(0x165))/0xa);if(_0x318a7d===_0x119f1b)break;else _0x4410b9['push'](_0x4410b9['shift']());}catch(_0x8e9ff3){_0x4410b9['push'](_0x4410b9['shift']());}}}(a0_0x2336,0xd2380));import{BaseTool}from'./baseTool.js';import a0_0x20d816 from'../utilities/tagParser.js';import a0_0x53285c from'puppeteer';import a0_0x47fb79 from'path';import a0_0x2222e7 from'fs/promises';import a0_0x1605d0 from'os';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class WebTool extends BaseTool{constructor(_0x3c900d={},_0x5732d0=null){const _0x476c2e=a0_0xf405;super(_0x3c900d,_0x5732d0),this['requiresProject']=![],this['isAsync']=!![],this['browser']=null,this['browserInitializing']=![],this[_0x476c2e(0x113)]=new Map(),this[_0x476c2e(0xce)]=[{'name':'google','url':'https://www.google.com/search?q=','searchSelector':'input[name=\x22q\x22]','submitSelector':'input[type=\x22submit\x22],\x20button[type=\x22submit\x22]','resultsSelector':'#search\x20.g\x20a,\x20#search\x20a[href]','waitSelector':_0x476c2e(0x15b)},{'name':'bing','url':_0x476c2e(0x150),'searchSelector':_0x476c2e(0x127),'submitSelector':_0x476c2e(0xd1),'resultsSelector':_0x476c2e(0x143),'waitSelector':'#b_results'},{'name':'duckduckgo','url':_0x476c2e(0x172),'searchSelector':'input[name=\x22q\x22]','submitSelector':_0x476c2e(0x155),'resultsSelector':_0x476c2e(0x121),'waitSelector':'#links,\x20[data-testid=\x22mainline\x22]'}],this['TAB_IDLE_TIMEOUT']=_0x3c900d['tabIdleTimeout']||0x3c*0x3c*0x3e8,this['CLEANUP_INTERVAL']=_0x3c900d[_0x476c2e(0x144)]||0x5*0x3c*0x3e8,this[_0x476c2e(0x138)]=_0x3c900d['defaultTimeout']||0xea60,this[_0x476c2e(0xd5)]=_0x3c900d['tempDir']||a0_0x47fb79[_0x476c2e(0xfe)](a0_0x1605d0[_0x476c2e(0x14e)](),'webtool-screenshots'),this[_0x476c2e(0x10f)]=null,this[_0x476c2e(0xfa)](),this[_0x476c2e(0x175)]();}[a0_0xe8309b(0x17a)](){return'\x0aWeb\x20Tool:\x20Browse,\x20search,\x20and\x20automate\x20web\x20interactions\x20using\x20Puppeteer.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22search|fetch|interactive\x22,\x0a\x20\x20\x22parameters\x22:\x20{...}\x0a}\x0a```\x0a\x0aOPERATIONS:\x0a\x0a1.\x20SEARCH:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22search\x22,\x0a\x20\x20\x22query\x22:\x20\x22search\x20terms\x22,\x0a\x20\x20\x22engine\x22:\x20\x22google\x22,\x0a\x20\x20\x22maxResults\x22:\x2010\x0a}\x0a```\x0a\x0a2.\x20FETCH:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22fetch\x22,\x0a\x20\x20\x22url\x22:\x20\x22https://example.com\x22,\x0a\x20\x20\x22formats\x22:\x20[\x22title\x22,\x20\x22text\x22,\x20\x22links\x22]\x0a}\x0a```\x0a\x0a3.\x20INTERACTIVE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22interactive\x22,\x0a\x20\x20\x22headless\x22:\x20true,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22open-tab\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22main\x22,\x0a\x20\x20\x20\x20\x20\x20\x22url\x22:\x20\x22https://example.com\x22,\x0a\x20\x20\x20\x20\x20\x20\x22nestedActions\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22wait-for\x22,\x20\x22selector\x22:\x20\x22.content\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22click\x22,\x20\x22selector\x22:\x20\x22button.submit\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22screenshot\x22,\x20\x22format\x22:\x20\x22file\x22,\x20\x22path\x22:\x20\x22result.png\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22extract-text\x22,\x20\x22selector\x22:\x20\x22#content\x22}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22close-tab\x22,\x20\x22name\x22:\x20\x22main\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20open-tab,\x20close-tab,\x20switch-tab,\x20list-tabs\x0a-\x20navigate,\x20click,\x20type,\x20press\x0a-\x20wait-for,\x20screenshot,\x20analyze-screenshot\x0a-\x20extract-text,\x20extract-links,\x20get-source\x0a-\x20scroll,\x20hover\x0a\x0aEXAMPLES:\x0a\x0aSearch\x20Google:\x0a```json\x0a{\x22toolId\x22:\x20\x22web\x22,\x20\x22operation\x22:\x20\x22search\x22,\x20\x22query\x22:\x20\x22puppeteer\x20tutorial\x22,\x20\x22maxResults\x22:\x205}\x0a```\x0a\x0aFetch\x20page\x20content:\x0a```json\x0a{\x22toolId\x22:\x20\x22web\x22,\x20\x22operation\x22:\x20\x22fetch\x22,\x20\x22url\x22:\x20\x22https://example.com\x22,\x20\x22formats\x22:\x20[\x22text\x22,\x20\x22links\x22]}\x0a```\x0a\x0aAutomate\x20workflow:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22interactive\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22open-tab\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22search\x22,\x0a\x20\x20\x20\x20\x20\x20\x22url\x22:\x20\x22https://github.com/trending\x22,\x0a\x20\x20\x20\x20\x20\x20\x22nestedActions\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22wait-for\x22,\x20\x22selector\x22:\x20\x22.Box-row\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22extract-links\x22,\x20\x22selector\x22:\x20\x22.Box-row\x20a\x22}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Browser\x20isolated\x20per\x20agent\x0a-\x20Tabs\x20auto-close\x20after\x201\x20hour\x0a\x20\x20\x20\x20';}[a0_0xe8309b(0x148)](_0x3bc33d){const _0x14b7e3=a0_0xe8309b;try{if(_0x3bc33d[_0x14b7e3(0x10b)]()[_0x14b7e3(0x110)]('{'))return JSON[_0x14b7e3(0x104)](_0x3bc33d);const _0x4eee62={},_0x20b00f=a0_0x20d816[_0x14b7e3(0xf2)](_0x3bc33d,'operation');_0x20b00f['length']>0x0&&(_0x4eee62[_0x14b7e3(0xda)]=_0x20b00f[0x0][_0x14b7e3(0x10b)]());switch(_0x4eee62['operation']){case'search':_0x4eee62[_0x14b7e3(0xea)]=a0_0x20d816['extractContent'](_0x3bc33d,'query')[0x0]?.['trim'](),_0x4eee62[_0x14b7e3(0x154)]=a0_0x20d816[_0x14b7e3(0xf2)](_0x3bc33d,'engine')[0x0]?.['trim']()||'google';const _0x10a311=a0_0x20d816['extractContent'](_0x3bc33d,'max-results')[0x0]?.[_0x14b7e3(0x10b)]();_0x4eee62['maxResults']=_0x10a311?parseInt(_0x10a311,0xa):0xa;break;case _0x14b7e3(0xcd):_0x4eee62['url']=a0_0x20d816[_0x14b7e3(0xf2)](_0x3bc33d,'url')[0x0]?.[_0x14b7e3(0x10b)]();const _0x2119fe=a0_0x20d816[_0x14b7e3(0xf2)](_0x3bc33d,'format')[0x0]?.[_0x14b7e3(0x10b)]();_0x4eee62['formats']=_0x2119fe?_0x2119fe[_0x14b7e3(0x125)](',')['map'](_0x2eb06c=>_0x2eb06c['trim']()):[_0x14b7e3(0x16c),'text'];break;case _0x14b7e3(0xfd):const _0x1a67fd=a0_0x20d816['extractContent'](_0x3bc33d,_0x14b7e3(0x12c))[0x0]?.[_0x14b7e3(0x10b)]();_0x4eee62[_0x14b7e3(0x12c)]=_0x1a67fd!=='false';const _0x4ee148=a0_0x20d816[_0x14b7e3(0xf2)](_0x3bc33d,'actions')[0x0];_0x4ee148&&(_0x4eee62['actions']=this[_0x14b7e3(0xfb)](_0x4ee148));break;}return _0x4eee62['rawContent']=_0x3bc33d[_0x14b7e3(0x10b)](),_0x4eee62;}catch(_0x454ac5){throw new Error(_0x14b7e3(0xf0)+_0x454ac5['message']);}}[a0_0xe8309b(0xfb)](_0x9f405b){const _0x4e49b1=a0_0xe8309b,_0x28c342=[],_0xd4fdbb=/<open-tab[^>]*name="([^"]+)"[^>]*>([\s\S]*?)<\/open-tab>/g;let _0x197dc9;while((_0x197dc9=_0xd4fdbb['exec'](_0x9f405b))!==null){const [,_0xb329c0,_0x1fd48c]=_0x197dc9,_0x586674=a0_0x20d816['extractContent'](_0x1fd48c,_0x4e49b1(0xd3))[0x0]?.[_0x4e49b1(0x10b)]();_0x28c342[_0x4e49b1(0xe6)]({'type':'open-tab','name':_0xb329c0,'url':_0x586674,'nestedActions':this['parseNestedActions'](_0x1fd48c)});}const _0x3775e1=[_0x4e49b1(0x179),_0x4e49b1(0x133),'list-tabs','navigate','click','type',_0x4e49b1(0x147),'wait-for',_0x4e49b1(0xd8),_0x4e49b1(0xde),_0x4e49b1(0x135),_0x4e49b1(0xf9),'get-source',_0x4e49b1(0x11d),'scroll',_0x4e49b1(0x142),'mouse-move'];for(const _0x2cb906 of _0x3775e1){const _0x18b9b3=new RegExp('<'+_0x2cb906+_0x4e49b1(0x16b)+_0x2cb906+'>','g');let _0x3e27ee;while((_0x3e27ee=_0x18b9b3['exec'](_0x9f405b))!==null){const [,_0x14d59e,_0x59df37]=_0x3e27ee,_0x477a93={'type':_0x2cb906},_0x54e17c=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x438f11;while((_0x438f11=_0x54e17c['exec'](_0x14d59e))!==null){_0x477a93[_0x438f11[0x1]]=_0x438f11[0x2];}_0x59df37&&_0x59df37['trim']()&&(_0x477a93['value']=_0x59df37['trim']()),_0x28c342[_0x4e49b1(0xe6)](_0x477a93);}}return _0x28c342;}['parseNestedActions'](_0x563a4b){const _0x5c813=a0_0xe8309b,_0x248488=[],_0x33d13d=[_0x5c813(0xd3),_0x5c813(0x13d),'type',_0x5c813(0x147),_0x5c813(0x134),'screenshot',_0x5c813(0xde),'extract-text',_0x5c813(0xf9),'get-source','get-console','scroll','hover','mouse-move'];for(const _0x4a0316 of _0x33d13d){const _0x718d1b=new RegExp('<'+_0x4a0316+'([^>]*)>([^<]*)</'+_0x4a0316+_0x5c813(0x116)+_0x4a0316+'([^>]*)/>','g');let _0x877930;while((_0x877930=_0x718d1b['exec'](_0x563a4b))!==null){const [,_0x37dc75,_0x125f17,_0x4ce9a8]=_0x877930,_0x25cd2=_0x37dc75||_0x4ce9a8||'',_0x1958a3={'type':_0x4a0316},_0x194c02=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0xd6f8bd;while((_0xd6f8bd=_0x194c02['exec'](_0x25cd2))!==null){_0x1958a3[_0xd6f8bd[0x1]]=_0xd6f8bd[0x2];}_0x125f17&&_0x125f17[_0x5c813(0x10b)]()&&(_0x1958a3[_0x5c813(0xd2)]=_0x125f17[_0x5c813(0x10b)]()),_0x248488[_0x5c813(0xe6)](_0x1958a3);}}return _0x248488;}[a0_0xe8309b(0x109)](){return['operation'];}[a0_0xe8309b(0x10c)](_0x5dc55c){const _0x2a277f=a0_0xe8309b,_0x1ddd34=[];if(!['search','fetch','interactive']['includes'](_0x5dc55c[_0x2a277f(0xda)]))return _0x1ddd34['push'](_0x2a277f(0xff)),{'valid':![],'errors':_0x1ddd34};switch(_0x5dc55c[_0x2a277f(0xda)]){case _0x2a277f(0x16d):!_0x5dc55c['query']&&_0x1ddd34[_0x2a277f(0xe6)]('query\x20is\x20required\x20for\x20search\x20operation');break;case _0x2a277f(0xcd):!_0x5dc55c[_0x2a277f(0x12b)]&&_0x1ddd34['push']('url\x20is\x20required\x20for\x20fetch\x20operation');break;case'interactive':(!_0x5dc55c[_0x2a277f(0x166)]||!Array[_0x2a277f(0x160)](_0x5dc55c['actions'])||_0x5dc55c['actions']['length']===0x0)&&_0x1ddd34[_0x2a277f(0xe6)](_0x2a277f(0x100));break;}return{'valid':_0x1ddd34['length']===0x0,'errors':_0x1ddd34};}async[a0_0xe8309b(0x169)](_0x731bf4,_0x3b4acb){const _0x39de96=a0_0xe8309b,{operation:_0xe276c5}=_0x731bf4,{agentId:_0x4eb178}=_0x3b4acb;try{await this['ensureBrowser']();let _0x2ca7e2;switch(_0xe276c5){case _0x39de96(0x16d):_0x2ca7e2=await this[_0x39de96(0x16d)](_0x731bf4['query'],{'engine':_0x731bf4[_0x39de96(0x154)]||'google','maxResults':_0x731bf4['maxResults']||0xa,'agentId':_0x4eb178});break;case'fetch':_0x2ca7e2=await this['fetch'](_0x731bf4['url'],{'formats':_0x731bf4[_0x39de96(0x15e)]||[_0x39de96(0x16c),'text'],'agentId':_0x4eb178});break;case _0x39de96(0xfd):_0x2ca7e2=await this['interactive'](_0x731bf4['actions'],{'headless':_0x731bf4['headless']!==![],'agentId':_0x4eb178,'context':_0x3b4acb});break;default:throw new Error(_0x39de96(0x129)+_0xe276c5);}return{'success':!![],'operation':_0xe276c5,'result':_0x2ca7e2,'toolUsed':'web'};}catch(_0x5a733e){return this[_0x39de96(0xef)]?.[_0x39de96(0x159)]('Web\x20tool\x20execution\x20failed',{'operation':_0xe276c5,'error':_0x5a733e[_0x39de96(0xd9)],'agentId':_0x4eb178}),{'success':![],'operation':_0xe276c5,'error':_0x5a733e['message'],'toolUsed':_0x39de96(0xd7)};}}async[a0_0xe8309b(0xdc)](){const _0x12dedd=a0_0xe8309b;if(this['browser']&&this['browser'][_0x12dedd(0xd6)]())return;if(this[_0x12dedd(0xf4)]){while(this['browserInitializing']){await new Promise(_0x188b6e=>setTimeout(_0x188b6e,0x64));}return;}this['browserInitializing']=!![];try{this['logger']?.[_0x12dedd(0x122)]('Initializing\x20Puppeteer\x20browser'),this['browser']=await a0_0x53285c[_0x12dedd(0x173)]({'headless':_0x12dedd(0x120),'args':[_0x12dedd(0x123),'--disable-setuid-sandbox',_0x12dedd(0x14c),'--disable-accelerated-2d-canvas','--disable-gpu',_0x12dedd(0xf6),'--user-agent=Mozilla/5.0\x20(Windows\x20NT\x2010.0;\x20Win64;\x20x64)\x20AppleWebKit/537.36\x20(KHTML,\x20like\x20Gecko)\x20Chrome/120.0.0.0\x20Safari/537.36']}),this['logger']?.['info']('Puppeteer\x20browser\x20initialized\x20successfully');}catch(_0x3d11bc){this['logger']?.['error']('Failed\x20to\x20initialize\x20browser',{'error':_0x3d11bc['message']});throw new Error(_0x12dedd(0x106)+_0x3d11bc['message']);}finally{this['browserInitializing']=![];}}async[a0_0xe8309b(0x16d)](_0x2b8b9e,_0x397837={}){const _0x5e09f4=a0_0xe8309b,{engine:engine=_0x5e09f4(0x139),maxResults:maxResults=0xa,agentId:_0x5aca5c}=_0x397837;if(!_0x2b8b9e||typeof _0x2b8b9e!==_0x5e09f4(0x15d)||_0x2b8b9e[_0x5e09f4(0x10b)]()[_0x5e09f4(0x132)]===0x0)throw new Error(_0x5e09f4(0x151));const _0x162de3=this['searchEngines'][_0x5e09f4(0xe9)](_0x3f8976=>_0x3f8976['name']===engine);if(!_0x162de3)throw new Error(_0x5e09f4(0x16a)+engine+_0x5e09f4(0x102)+this[_0x5e09f4(0xce)]['map'](_0x548cec=>_0x548cec[_0x5e09f4(0x11b)])[_0x5e09f4(0xfe)](',\x20'));await this[_0x5e09f4(0xdc)](),this['logger']?.[_0x5e09f4(0x122)](_0x5e09f4(0x136),{'query':_0x2b8b9e,'engine':engine,'agentId':_0x5aca5c});const _0x428191=await this[_0x5e09f4(0x170)][_0x5e09f4(0x157)]();try{const _0x3ef14b=''+_0x162de3[_0x5e09f4(0x12b)]+encodeURIComponent(_0x2b8b9e);await _0x428191[_0x5e09f4(0x149)](_0x3ef14b,{'waitUntil':'networkidle2','timeout':this[_0x5e09f4(0x138)]}),await _0x428191['waitForSelector'](_0x162de3[_0x5e09f4(0xf1)],{'timeout':this[_0x5e09f4(0x138)]});const _0x362bb7=await _0x428191['evaluate']((_0x5a0737,_0x4f65c8)=>{const _0xc164ef=_0x5e09f4,_0x29ac4d=Array['from'](document[_0xc164ef(0xcf)](_0x5a0737));return _0x29ac4d['slice'](0x0,_0x4f65c8)['map'](_0x137985=>({'url':_0x137985['href'],'title':_0x137985['textContent'][_0xc164ef(0x10b)](),'description':_0x137985[_0xc164ef(0x13f)](_0xc164ef(0x118))?.[_0xc164ef(0xe5)]['trim']()||''}))['filter'](_0x378dc7=>_0x378dc7[_0xc164ef(0x12b)]&&_0x378dc7[_0xc164ef(0x12b)]['startsWith'](_0xc164ef(0x16e)));},_0x162de3[_0x5e09f4(0x153)],maxResults);return this['logger']?.[_0x5e09f4(0x122)](_0x5e09f4(0x15a),{'resultsCount':_0x362bb7[_0x5e09f4(0x132)],'agentId':_0x5aca5c}),{'success':!![],'query':_0x2b8b9e,'engine':engine,'resultsCount':_0x362bb7[_0x5e09f4(0x132)],'results':_0x362bb7};}finally{await _0x428191[_0x5e09f4(0x161)]();}}async[a0_0xe8309b(0xcd)](_0x545450,_0x34799a={}){const _0x4c857d=a0_0xe8309b,{formats:formats=['title',_0x4c857d(0x14f)],agentId:_0x6ac57f}=_0x34799a;await this[_0x4c857d(0xdc)](),this[_0x4c857d(0xef)]?.[_0x4c857d(0x122)]('Fetching\x20web\x20content',{'url':_0x545450,'formats':formats,'agentId':_0x6ac57f});const _0x21f172=await this['browser']['newPage']();try{const _0x25c830=[];formats[_0x4c857d(0x141)]('console')&&_0x21f172['on'](_0x4c857d(0xdd),_0x426f7=>{const _0x14c6a3=_0x4c857d;_0x25c830[_0x14c6a3(0xe6)]({'type':_0x426f7['type'](),'text':_0x426f7['text']()});});await _0x21f172[_0x4c857d(0x149)](_0x545450,{'waitUntil':'networkidle2','timeout':this[_0x4c857d(0x138)]});const _0x29e876={'url':_0x545450};for(const _0x33ba15 of formats){switch(_0x33ba15){case'title':_0x29e876['title']=await _0x21f172[_0x4c857d(0x16c)]();break;case'text':_0x29e876['text']=await _0x21f172['evaluate'](()=>document[_0x4c857d(0x13a)]['innerText']);break;case _0x4c857d(0x11e):_0x29e876['links']=await _0x21f172['evaluate'](()=>{const _0x5e31ea=_0x4c857d;return Array['from'](document['querySelectorAll']('a[href]'))[_0x5e31ea(0x12e)](_0x147a86=>({'href':_0x147a86['href'],'text':_0x147a86['textContent']['trim']()}));});break;case'html':_0x29e876[_0x4c857d(0x10e)]=await _0x21f172[_0x4c857d(0x11a)]();break;case _0x4c857d(0xdd):_0x29e876[_0x4c857d(0xdb)]=_0x25c830;break;}}return this[_0x4c857d(0xef)]?.['info']('Fetch\x20completed',{'url':_0x545450,'formats':formats,'agentId':_0x6ac57f}),{'success':!![],..._0x29e876};}finally{await _0x21f172['close']();}}async['interactive'](_0xb00992,_0x25e6fc={}){const _0x38aa0a=a0_0xe8309b,{headless:headless=!![],agentId:_0x40acf6,context:_0x4d98a7}=_0x25e6fc;await this['ensureBrowser'](),this['logger']?.['info'](_0x38aa0a(0x15f),{'actionsCount':_0xb00992['length'],'headless':headless,'agentId':_0x40acf6});const _0x3ca1b2=[];!this['agentTabs'][_0x38aa0a(0xe1)](_0x40acf6)&&this['agentTabs'][_0x38aa0a(0xf5)](_0x40acf6,new Map());const _0x3a640a=this['agentTabs'][_0x38aa0a(0x13b)](_0x40acf6);for(const _0x2a056d of _0xb00992){try{let _0x3725d9;switch(_0x2a056d[_0x38aa0a(0x12f)]){case'open-tab':_0x3725d9=await this['openTab'](_0x40acf6,_0x2a056d[_0x38aa0a(0x11b)],_0x2a056d['url'],headless,_0x2a056d[_0x38aa0a(0x11f)],_0x4d98a7);break;case'close-tab':_0x3725d9=await this['closeTab'](_0x40acf6,_0x2a056d[_0x38aa0a(0x11b)]);break;case _0x38aa0a(0x133):_0x3725d9=await this['switchTab'](_0x40acf6,_0x2a056d[_0x38aa0a(0x11b)]);break;case'list-tabs':_0x3725d9=await this['listTabs'](_0x40acf6);break;default:_0x3725d9={'success':![],'error':_0x38aa0a(0x105)+_0x2a056d[_0x38aa0a(0x12f)]+'\x20must\x20be\x20executed\x20within\x20a\x20tab\x20context\x20(use\x20open-tab\x20with\x20nestedActions)'};}_0x3ca1b2[_0x38aa0a(0xe6)]({'action':_0x2a056d['type'],..._0x3725d9});}catch(_0xcc954f){this['logger']?.['error'](_0x38aa0a(0xe3),{'action':_0x2a056d[_0x38aa0a(0x12f)],'error':_0xcc954f[_0x38aa0a(0xd9)],'agentId':_0x40acf6}),_0x3ca1b2[_0x38aa0a(0xe6)]({'action':_0x2a056d[_0x38aa0a(0x12f)],'success':![],'error':_0xcc954f[_0x38aa0a(0xd9)]});}}return{'success':_0x3ca1b2['every'](_0x59b7f4=>_0x59b7f4[_0x38aa0a(0xeb)]!==![]),'actionsExecuted':_0x3ca1b2['length'],'results':_0x3ca1b2};}async['openTab'](_0x4d63a8,_0x2bff41,_0x382afb,_0x34e28f,_0x4151b5=[],_0x26e041={}){const _0x2a98c8=a0_0xe8309b;!this['agentTabs']['has'](_0x4d63a8)&&this['agentTabs'][_0x2a98c8(0xf5)](_0x4d63a8,new Map());const _0x12f785=this['agentTabs']['get'](_0x4d63a8);if(_0x12f785['has'](_0x2bff41))throw new Error('Tab\x20\x27'+_0x2bff41+'\x27\x20already\x20exists\x20for\x20agent\x20'+_0x4d63a8);this[_0x2a98c8(0xef)]?.['info']('Opening\x20tab',{'agentId':_0x4d63a8,'tabName':_0x2bff41,'url':_0x382afb,'headless':_0x34e28f});const _0x11c601=await this[_0x2a98c8(0x170)][_0x2a98c8(0x157)]();await _0x11c601['setViewport']({'width':0x500,'height':0x2d0});const _0x1e2076=[];_0x11c601['on']('console',_0x2a626b=>{const _0xbfcb36=_0x2a98c8;_0x1e2076[_0xbfcb36(0xe6)]({'type':_0x2a626b['type'](),'text':_0x2a626b[_0xbfcb36(0x14f)](),'timestamp':Date['now']()});});const _0x20db84={'page':_0x11c601,'url':_0x382afb,'lastActivity':Date[_0x2a98c8(0x10d)](),'headless':_0x34e28f,'consoleMessages':_0x1e2076,'name':_0x2bff41};_0x12f785[_0x2a98c8(0xf5)](_0x2bff41,_0x20db84);const _0x2f2552=[];try{_0x382afb&&(await _0x11c601['goto'](_0x382afb,{'waitUntil':'networkidle2','timeout':this['DEFAULT_TIMEOUT']}),_0x20db84['url']=_0x382afb,_0x20db84['lastActivity']=Date['now']());for(const _0x382152 of _0x4151b5){const _0x4e7972=await this[_0x2a98c8(0xee)](_0x11c601,_0x382152,_0x20db84,_0x26e041);_0x2f2552['push']({'action':_0x382152[_0x2a98c8(0x12f)],..._0x4e7972}),_0x20db84[_0x2a98c8(0x152)]=Date['now']();}return{'success':!![],'tabName':_0x2bff41,'url':_0x20db84[_0x2a98c8(0x12b)],'actionsExecuted':_0x2f2552['length'],'results':_0x2f2552};}catch(_0x1c46ae){this['logger']?.['error']('Failed\x20to\x20open\x20tab',{'agentId':_0x4d63a8,'tabName':_0x2bff41,'error':_0x1c46ae[_0x2a98c8(0xd9)]}),await _0x11c601[_0x2a98c8(0x161)](),_0x12f785['delete'](_0x2bff41);throw _0x1c46ae;}}async[a0_0xe8309b(0xee)](_0x3ce477,_0x16ebaa,_0x101f64,_0x4048da){const _0x33433a=a0_0xe8309b;switch(_0x16ebaa['type']){case _0x33433a(0xd3):await _0x3ce477[_0x33433a(0x149)](_0x16ebaa[_0x33433a(0xd2)]||_0x16ebaa[_0x33433a(0x12b)],{'waitUntil':'networkidle2','timeout':this[_0x33433a(0x138)]}),_0x101f64[_0x33433a(0x12b)]=_0x3ce477[_0x33433a(0x12b)]();return{'success':!![],'url':_0x101f64[_0x33433a(0x12b)]};case'click':await _0x3ce477['click'](_0x16ebaa['selector'],{'button':_0x16ebaa[_0x33433a(0x13e)]||'left'});return{'success':!![],'selector':_0x16ebaa['selector']};case _0x33433a(0x12f):await _0x3ce477['type'](_0x16ebaa['selector'],_0x16ebaa[_0x33433a(0x14f)]||_0x16ebaa['value']);return{'success':!![],'selector':_0x16ebaa['selector'],'text':_0x16ebaa['text']};case'press':await _0x3ce477['keyboard'][_0x33433a(0x147)](_0x16ebaa['key']||_0x16ebaa[_0x33433a(0xd2)]);return{'success':!![],'key':_0x16ebaa[_0x33433a(0xe2)]};case _0x33433a(0x134):const _0x1e7c57=_0x16ebaa[_0x33433a(0x176)]?parseInt(_0x16ebaa['timeout'],0xa):this['DEFAULT_TIMEOUT'];await _0x3ce477[_0x33433a(0x146)](_0x16ebaa['selector'],{'timeout':_0x1e7c57});return{'success':!![],'selector':_0x16ebaa['selector']};case _0x33433a(0xd8):return await this['takeScreenshot'](_0x3ce477,_0x16ebaa,_0x4048da);case'analyze-screenshot':return await this[_0x33433a(0x12a)](_0x3ce477,_0x16ebaa['value'],_0x4048da);case _0x33433a(0x135):const _0x4ac2ba=await _0x3ce477['evaluate'](_0x389651=>{const _0x5e1826=_0x33433a,_0x328fcb=document[_0x5e1826(0x11c)](_0x389651);return _0x328fcb?_0x328fcb[_0x5e1826(0xec)]:null;},_0x16ebaa['selector']);return{'success':!![],'selector':_0x16ebaa['selector'],'text':_0x4ac2ba};case _0x33433a(0xf9):const _0x21a924=await _0x3ce477[_0x33433a(0x128)](_0xffe570=>{const _0x22e0fd=_0x33433a,_0x2cf46b=document[_0x22e0fd(0xcf)](_0xffe570);return Array['from'](_0x2cf46b)['map'](_0x17ec16=>({'href':_0x17ec16[_0x22e0fd(0x140)],'text':_0x17ec16['textContent'][_0x22e0fd(0x10b)]()}));},_0x16ebaa[_0x33433a(0xdf)]);return{'success':!![],'selector':_0x16ebaa['selector'],'links':_0x21a924};case'get-source':const _0x3faf74=await _0x3ce477[_0x33433a(0x11a)]();return{'success':!![],'html':_0x3faf74};case _0x33433a(0x11d):return{'success':!![],'consoleMessages':[..._0x101f64['consoleMessages']]};case'scroll':await _0x3ce477['evaluate'](_0x5cf22c=>{const _0x4d37da=_0x33433a;_0x5cf22c?document['querySelector'](_0x5cf22c)?.['scrollIntoView']():window[_0x4d37da(0xf8)](0x0,document[_0x4d37da(0x13a)][_0x4d37da(0x156)]);},_0x16ebaa[_0x33433a(0xdf)]);return{'success':!![]};case'hover':await _0x3ce477[_0x33433a(0x142)](_0x16ebaa['selector']);return{'success':!![],'selector':_0x16ebaa[_0x33433a(0xdf)]};case'mouse-move':await _0x3ce477['hover'](_0x16ebaa['selector']);return{'success':!![],'selector':_0x16ebaa[_0x33433a(0xdf)]};default:throw new Error('Unknown\x20action\x20type:\x20'+_0x16ebaa['type']);}}async['takeScreenshot'](_0x5e6cc1,_0x8e4198,_0x4af280){const _0x5dc2b6=a0_0xe8309b,_0x502f94=_0x8e4198[_0x5dc2b6(0x164)]||'file',_0x297b34=_0x8e4198['path'];if(_0x502f94==='base64'){const _0x1ac851=await _0x5e6cc1['screenshot']({'encoding':'base64'});return{'success':!![],'format':_0x5dc2b6(0x117),'screenshot':_0x1ac851};}let _0x5a8269;if(_0x297b34){const _0x28042b=_0x4af280[_0x5dc2b6(0x108)]?.[_0x5dc2b6(0x14a)]||_0x4af280['projectDir']||process[_0x5dc2b6(0x174)]();_0x5a8269=a0_0x47fb79[_0x5dc2b6(0x15c)](_0x297b34)?_0x297b34:a0_0x47fb79[_0x5dc2b6(0xfe)](_0x28042b,_0x297b34);}else{const _0x5ca6eb=_0x5dc2b6(0xf3)+Date[_0x5dc2b6(0x10d)]()+_0x5dc2b6(0x101);_0x5a8269=a0_0x47fb79[_0x5dc2b6(0xfe)](this['TEMP_DIR'],_0x5ca6eb);}return await _0x5e6cc1['screenshot']({'path':_0x5a8269}),{'success':!![],'format':'file','path':_0x5a8269};}async[a0_0xe8309b(0x12a)](_0x427cf3,_0x513869,_0x52dc0b){const _0x4bf43f=a0_0xe8309b,_0x370632=await _0x427cf3['screenshot']({'encoding':_0x4bf43f(0x117)}),_0x3ec614=_0x52dc0b['aiService'];if(!_0x3ec614)throw new Error(_0x4bf43f(0x171));this['logger']?.[_0x4bf43f(0x122)](_0x4bf43f(0x16f),{'question':_0x513869[_0x4bf43f(0x107)](0x0,0x64),'agentId':_0x52dc0b['agentId']});try{const _0x210bcd='o3',_0x53f78a=await _0x3ec614['sendMessage'](_0x210bcd,_0x513869,{'agentId':_0x52dc0b['agentId'],'images':['data:image/png;base64,'+_0x370632],'apiKey':_0x52dc0b['apiKey'],'customApiKeys':_0x52dc0b[_0x4bf43f(0x124)],'platformProvided':_0x52dc0b['platformProvided']});return{'success':!![],'question':_0x513869,'analysis':_0x53f78a[_0x4bf43f(0x11a)],'model':_0x53f78a[_0x4bf43f(0xe7)]||_0x210bcd};}catch(_0x4f47b7){this[_0x4bf43f(0xef)]?.[_0x4bf43f(0x159)](_0x4bf43f(0x14d),{'error':_0x4f47b7['message'],'agentId':_0x52dc0b[_0x4bf43f(0x112)]});throw new Error(_0x4bf43f(0xfc)+_0x4f47b7[_0x4bf43f(0xd9)]);}}async['closeTab'](_0x5422d8,_0x27c334){const _0x30b6eb=a0_0xe8309b,_0x5f0ab9=this[_0x30b6eb(0x113)][_0x30b6eb(0x13b)](_0x5422d8);if(!_0x5f0ab9||!_0x5f0ab9['has'](_0x27c334))throw new Error(_0x30b6eb(0xf7)+_0x27c334+_0x30b6eb(0x167)+_0x5422d8);const _0x4a9a75=_0x5f0ab9[_0x30b6eb(0x13b)](_0x27c334);return this[_0x30b6eb(0xef)]?.['info']('Closing\x20tab',{'agentId':_0x5422d8,'tabName':_0x27c334}),await _0x4a9a75['page'][_0x30b6eb(0x161)](),_0x5f0ab9[_0x30b6eb(0x137)](_0x27c334),{'success':!![],'tabName':_0x27c334,'message':_0x30b6eb(0xf7)+_0x27c334+'\x27\x20closed'};}async[a0_0xe8309b(0x114)](_0x25cef8,_0x4acb03){const _0x475908=a0_0xe8309b,_0x12e5ff=this[_0x475908(0x113)][_0x475908(0x13b)](_0x25cef8);if(!_0x12e5ff||!_0x12e5ff['has'](_0x4acb03))throw new Error('Tab\x20\x27'+_0x4acb03+'\x27\x20not\x20found\x20for\x20agent\x20'+_0x25cef8);const _0x24d661=_0x12e5ff['get'](_0x4acb03);return _0x24d661['lastActivity']=Date['now'](),{'success':!![],'tabName':_0x4acb03,'url':_0x24d661['url'],'message':_0x475908(0xe0)+_0x4acb03+'\x27'};}async['listTabs'](_0x5c0d37){const _0x1beb6a=a0_0xe8309b,_0x4009f0=this['agentTabs']['get'](_0x5c0d37);if(!_0x4009f0||_0x4009f0['size']===0x0)return{'success':!![],'tabCount':0x0,'tabs':[],'message':_0x1beb6a(0x126)};const _0x36833e=[];for(const [_0x494820,_0xaeb48d]of _0x4009f0[_0x1beb6a(0x14b)]()){_0x36833e['push']({'name':_0x494820,'url':_0xaeb48d['url'],'idleTime':Date[_0x1beb6a(0x10d)]()-_0xaeb48d['lastActivity'],'headless':_0xaeb48d['headless']});}return{'success':!![],'tabCount':_0x36833e['length'],'tabs':_0x36833e};}['startCleanupTimer'](){const _0x1a9c85=a0_0xe8309b;this[_0x1a9c85(0x10f)]&&clearInterval(this[_0x1a9c85(0x10f)]),this[_0x1a9c85(0x10f)]=setInterval(()=>{const _0x192acb=_0x1a9c85;this[_0x192acb(0x131)]();},this['CLEANUP_INTERVAL']);}async['cleanupIdleTabs'](){const _0x5f0d70=a0_0xe8309b,_0x429881=Date['now'](),_0x4a7dbc=[];for(const [_0x33697c,_0x3ec317]of this[_0x5f0d70(0x113)]['entries']()){for(const [_0x29b6b6,_0x1f0e9d]of _0x3ec317[_0x5f0d70(0x14b)]()){const _0x344f40=_0x429881-_0x1f0e9d[_0x5f0d70(0x152)];_0x344f40>this[_0x5f0d70(0x168)]&&_0x4a7dbc[_0x5f0d70(0xe6)]({'agentId':_0x33697c,'tabName':_0x29b6b6,'tabInfo':_0x1f0e9d});}}if(_0x4a7dbc['length']>0x0){this['logger']?.[_0x5f0d70(0x122)](_0x5f0d70(0x10a),{'count':_0x4a7dbc[_0x5f0d70(0x132)]});for(const {agentId:_0x2a8122,tabName:_0x186641,tabInfo:_0x211bc0}of _0x4a7dbc){try{await _0x211bc0['page']['close'](),this[_0x5f0d70(0x113)][_0x5f0d70(0x13b)](_0x2a8122)[_0x5f0d70(0x137)](_0x186641),this[_0x5f0d70(0xef)]?.['debug']('Closed\x20idle\x20tab',{'agentId':_0x2a8122,'tabName':_0x186641});}catch(_0x13be4f){this[_0x5f0d70(0xef)]?.[_0x5f0d70(0x159)]('Failed\x20to\x20close\x20idle\x20tab',{'agentId':_0x2a8122,'tabName':_0x186641,'error':_0x13be4f[_0x5f0d70(0xd9)]});}}}}async[a0_0xe8309b(0xe8)](_0x595313){const _0x50cd89=a0_0xe8309b,_0x2a940d=this[_0x50cd89(0x113)]['get'](_0x595313);if(!_0x2a940d)return{'success':!![],'agentId':_0x595313,'closedTabs':0x0,'message':_0x50cd89(0xcc)};this['logger']?.['info'](_0x50cd89(0xd4),{'agentId':_0x595313,'tabCount':_0x2a940d['size']});let _0x8888c=0x0;for(const [_0x4f1b11,_0x375499]of _0x2a940d[_0x50cd89(0x14b)]()){try{await _0x375499[_0x50cd89(0x13c)]['close'](),_0x8888c++;}catch(_0x4be095){this[_0x50cd89(0xef)]?.[_0x50cd89(0x159)](_0x50cd89(0x12d),{'agentId':_0x595313,'tabName':_0x4f1b11,'error':_0x4be095['message']});}}return this['agentTabs'][_0x50cd89(0x137)](_0x595313),{'success':!![],'agentId':_0x595313,'closedTabs':_0x8888c,'message':_0x50cd89(0x115)+_0x8888c+_0x50cd89(0x103)+_0x595313};}async[a0_0xe8309b(0x175)](){const _0x25d173=a0_0xe8309b;try{await a0_0x2222e7['mkdir'](this['TEMP_DIR'],{'recursive':!![]});}catch(_0x7171de){this['logger']?.[_0x25d173(0xed)](_0x25d173(0x163),{'path':this[_0x25d173(0xd5)],'error':_0x7171de[_0x25d173(0xd9)]});}}async['cleanup'](){const _0x136e39=a0_0xe8309b;this['cleanupTimer']&&(clearInterval(this['cleanupTimer']),this[_0x136e39(0x10f)]=null);for(const [_0x23cbb2]of this['agentTabs']['entries']()){await this['cleanupAgent'](_0x23cbb2);}this['browser']&&(await this['browser']['close'](),this['browser']=null);try{await a0_0x2222e7['rm'](this[_0x136e39(0xd5)],{'recursive':!![],'force':!![]});}catch(_0x5dcfc4){this['logger']?.['warn'](_0x136e39(0x158),{'path':this[_0x136e39(0xd5)],'error':_0x5dcfc4[_0x136e39(0xd9)]});}}}export default WebTool;
|
|
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;
|