@loxia-labs/loxia-autopilot-one 1.0.6 → 1.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/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/web-ui/build/index.html +2 -2
- package/web-ui/build/static/index-BmKxmRe3.css +1 -0
- package/web-ui/build/static/{index-CX8ZfpGw.js → index-BzXbDs8z.js} +69 -69
- package/web-ui/build/static/index-Dwg_JrlO.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x591259=a0_0x1cd4;(function(_0x47bbca,_0x2cc781){const _0x12b6af=a0_0x1cd4,_0x2c3685=_0x47bbca();while(!![]){try{const _0x8705f6=-parseInt(_0x12b6af(0x24e))/0x1*(-parseInt(_0x12b6af(0x240))/0x2)+parseInt(_0x12b6af(0x2d1))/0x3*(parseInt(_0x12b6af(0x1ea))/0x4)+parseInt(_0x12b6af(0x1ba))/0x5+parseInt(_0x12b6af(0x1fe))/0x6*(parseInt(_0x12b6af(0x216))/0x7)+-parseInt(_0x12b6af(0x1cb))/0x8*(parseInt(_0x12b6af(0x203))/0x9)+parseInt(_0x12b6af(0x29e))/0xa+parseInt(_0x12b6af(0x2ce))/0xb*(-parseInt(_0x12b6af(0x1d3))/0xc);if(_0x8705f6===_0x2cc781)break;else _0x2c3685['push'](_0x2c3685['shift']());}catch(_0x4b9f6d){_0x2c3685['push'](_0x2c3685['shift']());}}}(a0_0x5963,0x32cce));function a0_0x5963(){const _0x4e4f20=['q29UzMLYBwf0Aw9UihbYB21WDa','r2v0lvbYB2nLC3mGFcbtB3j0lu9IAMvJDcbdufu','Dg9VBhnszwDPC3rYEq','Dw5PEc1ZDhLSzs1WyxrOCW','Dw5RBM93BG','C3rKB3v0','ywX0zxjUyxrPDMvZ','y29WEq','mZq2rLHWC055','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','y2f0','zxHLy3v0zunVBw1HBMrxAxrOu3bHD24','zw5KC1DPDgG','CgfYC2vqyxjHBwv0zxjZ','CNvUlwnVBw1HBMq','CgXHDgzVCM0','zNn1DgLSihzVBhvTzsbKAxnRzNjLzq','zgvSicqX','zgvIDwC','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','CgXHDgzVCM1uExbL','Dg9ju09tDhjPBMC','mJe5mwfHAKLZyG','u2vSzwn0lvn0CMLUzW','AwnHy2XZ','AM9PBG','ChjVBxb0rgv0zwn0zwq','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','z2v0v29YA2LUz0rPCMvJDg9YEq','u0HfteW','C3rKzxjY','quKGDhjHBNnSyxrPB24GBM90igf2ywLSywjSzsaTig1PC3nPBMCGy29UDgv4Da','tgLZDgvKia','DgLTzw91Da','y29Kzq','BwvZC2fNzq','C3rKzxjYqNvMzMvY','C3rHCNruAw1L','id4GjG','zxzLCNK','y29TBwfUzfr5Cgu','ChjVy2vZCW','oIb0ExbLigLZihjLCxvPCMvK','r2v0lunOAwXKsxrLBsaTuMvJDxjZzsb8ie1Lyxn1CMuTt2jQzwn0','BwTKAxi','z2vUzxjPyW','tw92zs1jDgvT','Dw5PDMvYC2fS','lwnTzc0','A2v5ChjLC3m','D2LUmZi','Dhj1zq','zwnOBYaN','D2fYBG','BM93','r2vUzxjPyYbPBNb1DcbWCM9TChqGzgv0zwn0zwq','ChjPBNrM','CMvHC29U','Bw92zq','uMvTB3zLluL0zw0Gjde','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','y29TBwfUzeLK','q2HHBMDLzcbKAxjLy3rVCNKGDg8G','C3rKB3v0qNvMzMvY','qxr0zw1WDgLUzYbbssb0CMfUC2XHDgLVBIbMB3iGy29TCgXLEcbJB21Tyw5K','r2v0lvbYB2nLC3m','uhjVBxb0igrLDgvJDgvKigLUihn0zgvYCG','zgLZAY1PBMzV','y2HHBMDLlwrPCMvJDg9YEq','zMLSzs1JB3b5','q29TBwfUzcb0Aw1LzcbVDxqSigTPBgXPBMCGChjVy2vZCZOG','q29TBwfUzcbWCM9JzxnZigLZig5VDcbYDw5UAw5N','uhjLC3mGyw55igTLEq','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','ChvZAa','vxnPBMCGquKGDhjHBNnSyxrPB24','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','zgv0zwn0zwruzxjTAw5HBa','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUzcbZDgrLCNi','qwnJzxnZigrLBMLLzdOG','zMfPBgvK','ywn0Aw9UCW','y3jLyxrLrgLYzwn0B3j5','C3bLy2LMAwnjC3n1zxm','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','q29TBwfUzcbWCM9JzxnZig5VDcbMB3vUzcbVCIbHBhjLywr5igTPBgXLza','Aw5JBhvKzxm','q29WEs1jDgvT','D29YA2LUz0rPCMvJDg9YAwvZ','CMvZB2X2zq','CMvWBgfJzq','y29UzMLKzw5Jzq','cI0GvgfYz2v0ifrLCM1PBMfSoIa','qMfJA2DYB3vUzcbJB21Tyw5Kigv4AxrLza','ChjVy2vZCY1SAxn0','zMLSzq','AxncBg9JA2vKq29TBwfUza','A2LSBgvK','y2XLyw51Ca','z2v0ugfYyw1LDgvYu2nOzw1H','yNvPBhrPBG','ntC5nZuWBMrgA1DN','zw50CMLLCW','CMvSyxrPDMu','y21K','y29UDgLUDwu','z2v0u3vWCg9YDgvKqwn0Aw9UCW','C3rYAw5N','CNvUBMLUzW','zw52','q29TBwfUzcbLEgL0zwqGD2L0AcbJB2rLia','cLrLCM1PBMfSifrVB2W6iev4zwn1DguGC3LZDgvTignVBw1HBMrZigfUzcbTyw5Hz2uGDgvYBwLUywWGB3bLCMf0Aw9UCYbZywzLBhKUcGPjtvbpuLrbtLq6iezVCIbMAwXLigfUzcbKAxjLy3rVCNKGy3jLyxrPB24SihbYzwzLCIb1C2LUzYb0AguGrMLSzvn5C3rLBsb0B29SlGPszxnLCNzLihrOzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGB3bLCMf0Aw9UCYbSAwTLig5WBsWGz2L0lcbJDxjSlcbLDgmUcGPvu0fhrtOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kphj1BI1JB21Tyw5KpM5WBsbPBNn0ywXSigv4ChjLC3m8l3j1BI1JB21Tyw5KpGO8y2HHBMDLlwrPCMvJDg9YEt5WCM9Qzwn0l2jHy2TLBMq8l2nOyw5Nzs1KAxjLy3rVCNK+cLSVDg9VBf0kcKfmvevstKfusvzfiePtt04GrK9stufuoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSkicaGicaGiNr5CguIoIaICNvUlwnVBw1HBMqIlaOGicaGicaIy29TBwfUzci6icjUCg0GAw5ZDgfSBcbLEhbYzxnZiGOGicaGFsWkicaGihSkicaGicaGiNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiScIaGicaGicjKAxjLy3rVCNKIoIaIChjVAMvJDc9IywnRzw5KiGOGicaGFqOGif0kFqPGygakcLnvufbpuLrfrcbbq1rjt05toGOTihj1BI1JB21Tyw5KoIbfEgvJDxrLigeGy29TBwfUzcbPBIb0AguGy3vYCMvUDcbKAxjLy3rVCNKklsbJAgfUz2uTzgLYzwn0B3j5oIbdAgfUz2uGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEqOTigXPC3qTzgLYzwn0B3j5oIbmAxn0ignVBNrLBNrZig9Mign1CNjLBNqGB3iGC3bLy2LMAwvKigrPCMvJDg9YEqOTignYzwf0zs1KAxjLy3rVCNK6ienYzwf0zsbHig5LDYbKAxjLy3rVCNKGkhbYzwzLCIbgAwXLu3LZDgvTihrVB2WPcI0Gz2v0lxDVCMTPBMCTzgLYzwn0B3j5oIbhzxqGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEqOkuefsqu1fvevsuZOklsbJB21Tyw5KoIbuAguGy29TBwfUzcb0BYbLEgvJDxrLcI0GzgLYzwn0B3j5oIbeAxjLy3rVCNKGCgf0AcbMB3iGBMf2AwDHDgLVBI9VCgvYyxrPB25ZcI0GDgLTzw91DdOGt3b0Aw9UywWGDgLTzw91DcbPBIbTAwXSAxnLy29UzhmGkg1HEca','yxbPs2v5','Ahr0Ca','ig1PBgXPC2vJB25KCW','y3jLyxrLlwrPCMvJDg9YEq','zMLUzcaVyW','DxnLCM5HBwu','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','r2v0lunOAwXKsxrLBq','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','C29Tzq','C3rHy2S','AxndB21Tyw5Kq29TCgf0AwjSzq','zMLUzhn0CG','y29TBwfUzc1JAgfPBMLUzW','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','zMLSzs12Awv3Aw5N','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','D2fPDgLUz19MB3jFAw5WDxq','uhjVy2vLzcbWCM9TChq','C29YDcaVDw5PCxvL','BgvUz3rO','Bwf0y2HLzfrLEhq','ufnnB2r1BgvqyxrO','twf4Aw11BsbNBg9IywWGyMfJA2DYB3vUzcbJB21Tyw5KCYbLEgnLzwrLzcaO','CgLWzq','y29TBwfUzfrYywnRzxi','A2LSBa','C2XPy2u','zMLSzs1SAxn0Aw5N','icyMia','zxHPDa','D2HPBguG','u0Lhs0Lmta','DhjHBNnSyxrLq29TBwfUzfDPDgHbsq','C3LZDgvTAw5MBW','z2v0rgvZy3jPChrPB24','Bwf4qMfJA2DYB3vUzenVBw1HBMrZugvYqwDLBNq','mteWwfrLwuTN','C3bSAxq','zgLY','ndjdBufssuy','Dw5PEa','q29TBwfUzcbLCNjVCIbJAhvUAZOG','y2f0zwDVCNK','z2v0qwDLBNrdB21Tyw5KCW','zxH0CMfJDfrYyw5ZBgf0zwrdB21Tyw5K','C3rHDgu','y29TCgf0AwjSzq','AxneAxjLy3rVCNK','DhLWzq','igL0zw1ZigLUia','Dgv4Dc1ZzwfYy2G','C3vIC3rYAw5N','AgfSDa','lunVBw1HBMq','C2vSzwn0Aw9U','cI0Gq2f0zwDVCNK6ia','CgvYBwLZC2LVBNm','zg93BMXVywq','ywrKvg9iAxn0B3j5','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbJB21WBgv0zwq','qMfZAcbZAgvSBcaOtgLUDxGVvw5PEc9TywnpuYK','Dg9tDhjPBMC','AxndB21Tyw5Kq29TCgf0AwjSzvDPDgHuzxjTAw5HBa','q3jLyxrLzcbKAxjLy3rVCNK6ia','oIbJB21Tyw5KigLZigjSB2nRzwqGzM9YihnLy3vYAxr5oIa','q2XLyw5Lzcb1Cca','vhjHBNnSyxrLihrOAxmGy29TBwfUzcb0BYb3B3jRignVCNjLy3rSEsbPBIa','DgvZDa','zMLSzs1TB3zL','zgLYic9H','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','C2LTCgXL','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','Aw5WDxq','DgfZA2TPBgWGl2yGl2LT','zxjYB3i','tufyx0nptu1btKrFquDfx01jtLvurvm','mtaZndGWmeTzCMXsvG','DhLWzsaKmq','y3DK','y29TBwfUzeLKq291BNrLCG','AwyG','r2v0lunVBNrLBNqGjde','CgLK','BwvZC2fNzvbYB2nLC3nVCG','y29TBwfUzeHPC3rVCNK','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','ChjVy2vZCY1RAwXS','Aw5MBW','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','zM9YBwf0','zgvSzxrL','zMLSDgvY','r2v0lunOAwXKsxrLBsaTuMvJDxjZzq','ndbPCLbVvLe','ywDLBNrjza','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','r2vUzxjPyYbPBNb1DcbWCM9TChq','y29TBwfUzenHDgvNB3j5','vgvYBwLUywWGzgv0zwn0zwq','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','y2XLyw51CefNzw50','mJK2ody4txzMzKTk','q29WEs1jDgvTicqXicqY','C3rHDa','ChjVBxb0ugf0DgvYBNm','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zgLYzwn0B3j5lwrLBgv0zq','icHVCMLNAw5HBdOG','q29TChjLC3mTqxjJAgL2zq','q29UDgLUDwuGChjVBxb0','DgfZA2TPBgW','ihWG','rgLYzwn0B3j5ignOyw5NzsbIBg9JA2vKoIa','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','igfJDgLVBNmGy29TCgXLDgvKihn1y2nLC3nMDwXSEq','q2fUBM90ihnLBMqGAw5WDxqGDg8G','y2XHC3nPzNLdB21Tyw5K','z2v0q29TBwfUzeHPC3rVCNK','DMfSAwrHDgvszwfKqwnJzxnZ','ywLtzxj2AwnL','AxntAw1WBgvdB21Tyw5K','q29TBwfUzcbVDxrWDxqGy2H1BMS6ia','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','odmYnhzmENjArW','ChjVBxb0rgv0zwn0B3i','D29YA2LUz0rPCMvJDg9YEq','quKGDhjHBNnSyxrPB24GzMfPBgvKlcbMywXSAw5NigjHy2SGDg8GC2LTCgXLihrYyw5ZBgf0Aw9U','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','zMLSzs1KzwXLDgu','tM9UzsbKzxrLy3rLza','zMLSzs1ZzwfYy2G','BgLZDc1KAxjLy3rVCNK','AxnZDwvZ','sgL0igvUDgvY','DhjPBq','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','lI4U','y29TBwfUza','zxHPDenVzgu','zxH0CMfJDenVBNrLBNq','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','yxjJAgL2zq','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','mtHYs0LVyKq','qwXSia','Dg9mB3DLCKnHC2u','zxHLy3v0zq','C2v0','ndeXntyXBwLosvDH','DgfZA2XPC3q','DhjHBNnSyxrLvg9cyxnO','rxHLy3v0Aw5NignVBw1HBMqGD2L0AcbZCgf3BJOG','zw5KvgLTzq','D2HVyw1P','uMvTB3zLluL0zw0','y3vZDg9TqxbPs2v5CW','A2LSBenVBw1HBMq','CMvHzgrPCG','vw5RBM93BIbHy3rPB24GDhLWztOG','y29UzMLYBwf0Aw9U','Cg93zxjZAgvSBa','qwn0Aw9Uia','u2vSzwn0Aw9UihbYB21WDa','Cg93zxjZAgvSBcaTyW','zwnOBYaIjdeIid4','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','y29UDgvUDa','mJu2nJLMAgPMzgO','BgfZDe91Dhb1DfrPBwu','Cg93zxjZAgvSBcbfEhbHBMqTqxjJAgL2zq','Bg9Nz2vY','yMXVy2TLzenVBw1HBMrZ','q29TBwfUzcbMywLSzwq6ia','DhjHBNnSyxrLvg9xAw5KB3DZq21K','zgvZy3jPChrPB24','BMf0AxzL','ihX8ia','z2v0','ChDK','cJiUifbYzxnLCNzLihrOzsbVCMLNAw5HBcbPBNrLBNqGyw5Kigz1BMn0Aw9UywXPDhKkmY4GsgfUzgXLigzPBguGCgf0AhmSihf1B3rPBMCSigfUzcbZEw50yxGGy29YCMvJDgX5cJqUieLMignYzwf0Aw5NigzPBgvZlcbLBNn1CMuGChjVCgvYigvUy29KAw5NigfUzcbSAw5LigvUzgLUz3mkns4GqwrKCMvZCYb0AguGC3bLy2LMAwmGy29TCgf0AwjPBgL0EsbPC3n1zxmGAwrLBNrPzMLLzcbHyM92zqO2lIbszxr1CM4Gt05mwsb0AguGDhjHBNnSyxrLzcbJB21Tyw5KlcbUB3rOAw5NigvSC2ukcLrsqu5ttefuruqGq09ntufordO','ywXSB3DLzenVBw1HBMrZ','q29TBwfUzcbMywLSzwqGD2L0AcbLEgL0ignVzguG','BgLZDefNzw50q29TBwfUzhm','AxnbyNnVBhv0zq','zgLYzwn0B3j5','Bw9Yzq','yMfZAa','i2LUy2X1zgu','u2v0lufJBa','C2nYAxb0lwv4zwn1Dgu','vgLTzw91DcbTDxn0igjLigjLDhDLzw4GmtaWmcbHBMqG','zMLSzs1JCMvHDgu','y2XLyxjxB3jRAw5NrgLYzwn0B3j5','r2v0luXVy2f0Aw9U','q3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEtOG','BhmGlwe','BwfW','r2v0lunVBNrLBNq','C3rHCNrZv2L0Aa','u0Lhvevstq','zxHLy3v0zunVBw1HBMq'];a0_0x5963=function(){return _0x4e4f20;};return a0_0x5963();}import{BaseTool}from'./baseTool.js';import a0_0x2821f1 from'../utilities/tagParser.js';import a0_0x3785f4 from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';import a0_0x3d852c from'path';import a0_0x3ca5dc from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';function a0_0x1cd4(_0xf39a63,_0x83b90){_0xf39a63=_0xf39a63-0x19f;const _0x59637e=a0_0x5963();let _0x1cd49c=_0x59637e[_0xf39a63];if(a0_0x1cd4['mDPCXZ']===undefined){var _0x11bfd6=function(_0x3d5183){const _0x54fbe0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2821f1='',_0x3785f4='';for(let _0x3d852c=0x0,_0x3ca5dc,_0x6154dd,_0x218021=0x0;_0x6154dd=_0x3d5183['charAt'](_0x218021++);~_0x6154dd&&(_0x3ca5dc=_0x3d852c%0x4?_0x3ca5dc*0x40+_0x6154dd:_0x6154dd,_0x3d852c++%0x4)?_0x2821f1+=String['fromCharCode'](0xff&_0x3ca5dc>>(-0x2*_0x3d852c&0x6)):0x0){_0x6154dd=_0x54fbe0['indexOf'](_0x6154dd);}for(let _0x43bc1e=0x0,_0x27a7de=_0x2821f1['length'];_0x43bc1e<_0x27a7de;_0x43bc1e++){_0x3785f4+='%'+('00'+_0x2821f1['charCodeAt'](_0x43bc1e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3785f4);};a0_0x1cd4['XiKsNl']=_0x11bfd6,a0_0x1cd4['QDwnoG']={},a0_0x1cd4['mDPCXZ']=!![];}const _0x230dbc=_0x59637e[0x0],_0x13b351=_0xf39a63+_0x230dbc,_0x592b10=a0_0x1cd4['QDwnoG'][_0x13b351];return!_0x592b10?(_0x1cd49c=a0_0x1cd4['XiKsNl'](_0x1cd49c),a0_0x1cd4['QDwnoG'][_0x13b351]=_0x1cd49c):_0x1cd49c=_0x592b10,_0x1cd49c;}class PromptDetector{constructor(){const _0x449bb2=a0_0x1cd4;this[_0x449bb2(0x1d6)]=[{'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':/\[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':_0x449bb2(0x2a2),'description':_0x449bb2(0x1db)},{'pattern':/proceed\?/i,'type':'continue','description':_0x449bb2(0x2bb)},{'pattern':/press any key to continue/i,'type':_0x449bb2(0x269),'description':_0x449bb2(0x280)},{'pattern':/press enter to continue/i,'type':_0x449bb2(0x269),'description':'Press\x20enter'},{'pattern':/hit enter to continue/i,'type':_0x449bb2(0x269),'description':_0x449bb2(0x1f4)},{'pattern':/password:/i,'type':'password','description':'Password\x20prompt'},{'pattern':/enter password/i,'type':'password','description':'Password\x20prompt'},{'pattern':/passphrase:/i,'type':'password','description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':_0x449bb2(0x2ae),'description':'Username\x20prompt'},{'pattern':/enter username/i,'type':_0x449bb2(0x2ae),'description':'Username\x20prompt'},{'pattern':/enter\s+\w+:/i,'type':_0x449bb2(0x1b6),'description':_0x449bb2(0x1ce)},{'pattern':/please enter/i,'type':_0x449bb2(0x1b6),'description':'Generic\x20input\x20prompt'},{'pattern':/input:/i,'type':_0x449bb2(0x1b6),'description':'Generic\x20input\x20prompt'},{'pattern':/are you sure\?/i,'type':'confirmation','description':_0x449bb2(0x238)},{'pattern':/do you want to/i,'type':_0x449bb2(0x20e),'description':'Confirmation\x20prompt'},{'pattern':/would you like to/i,'type':_0x449bb2(0x20e),'description':_0x449bb2(0x238)},{'pattern':/select an option/i,'type':_0x449bb2(0x1a3),'description':'Selection\x20prompt'},{'pattern':/choose/i,'type':_0x449bb2(0x1a3),'description':_0x449bb2(0x211)},{'pattern':/\d+\)\s+\w+/g,'type':'menu','description':'Menu\x20selection'}];}['detectPrompt'](_0x6154dd,_0x218021='stdout'){const _0x58dd57=a0_0x1cd4;if(!_0x6154dd||_0x6154dd[_0x58dd57(0x1f5)]()[_0x58dd57(0x2bd)]===0x0)return null;const _0x43bc1e=_0x6154dd['split']('\x0a'),_0x27a7de=_0x43bc1e[_0x58dd57(0x2c4)](-0x5)['join']('\x0a');for(const _0x18d3cc of this['promptPatterns']){const _0x4bcea1=_0x27a7de['match'](_0x18d3cc['pattern']);if(_0x4bcea1)return{'detected':!![],'type':_0x18d3cc['type'],'description':_0x18d3cc[_0x58dd57(0x21d)],'matchedText':_0x4bcea1[0x0],'matchIndex':_0x4bcea1['index'],'source':_0x218021,'fullContext':_0x27a7de,'timestamp':Date['now']()};}const _0x2eb13c=_0x43bc1e[_0x43bc1e[_0x58dd57(0x2bd)]-0x1]||'';if(_0x2eb13c[_0x58dd57(0x1f5)]()[_0x58dd57(0x2bd)]>0x0){const _0x19981d=/:\s*$/['test'](_0x2eb13c),_0x28a7e8=/\?\s*$/['test'](_0x2eb13c);if(_0x19981d||_0x28a7e8){const _0x59a834=/\b(enter|type|provide|specify|input)\b/i['test'](_0x2eb13c);if(_0x59a834)return{'detected':!![],'type':_0x58dd57(0x265),'description':_0x58dd57(0x26f),'matchedText':_0x2eb13c[_0x58dd57(0x1f5)](),'source':_0x218021,'fullContext':_0x27a7de,'timestamp':Date['now'](),'confidence':0.7};}}return null;}['detectHang'](_0x3b2c66,_0x5b9a47=0x7530){const _0x1840ff=a0_0x1cd4,_0x5039c2=Date[_0x1840ff(0x26e)](),_0xeda8cd=_0x5039c2-_0x3b2c66;return{'isHanging':_0xeda8cd>=_0x5b9a47,'timeSinceLastOutput':_0xeda8cd,'threshold':_0x5b9a47,'likelyWaiting':_0xeda8cd>=_0x5b9a47/0x2};}}class TerminalTool extends BaseTool{constructor(_0x476ee3={},_0x1bbc28=null){const _0x1d0fe0=a0_0x1cd4;super(_0x476ee3,_0x1bbc28),this['requiresProject']=![],this['isAsync']=![],this[_0x1d0fe0(0x259)]=_0x476ee3[_0x1d0fe0(0x259)]||0x1d4c0,this[_0x1d0fe0(0x1fd)]=_0x476ee3['maxConcurrentOperations']||0x3,this['workingDirectories']=new Map(),this['commandHistory']=[],this['allowedCommands']=_0x476ee3['allowedCommands']||null,this[_0x1d0fe0(0x21a)]=_0x476ee3[_0x1d0fe0(0x21a)]||['rm\x20-rf\x20/',_0x1d0fe0(0x1c7),'del\x20/f\x20/q','shutdown','reboot',_0x1d0fe0(0x1a1)],this['directoryAccessManager']=new a0_0x3785f4(_0x476ee3,_0x1bbc28),this[_0x1d0fe0(0x1eb)]=new PromptDetector(),this['commandTracker']=new Map(),this['commandIdCounter']=0x0,this['MAX_BACKGROUND_COMMANDS_PER_AGENT']=_0x476ee3[_0x1d0fe0(0x2cd)]||0x5,this['MAX_BACKGROUND_COMMANDS_GLOBAL']=_0x476ee3['maxBackgroundCommandsGlobal']||0x14,this['MAX_COMMAND_AGE_MINUTES']=_0x476ee3['maxCommandAgeMinutes']||0x3c,this[_0x1d0fe0(0x285)]=null,this[_0x1d0fe0(0x24c)]=null,this['initializeTerminalDetection']();}[a0_0x591259(0x2cc)](){const _0x125bff=a0_0x591259;return _0x125bff(0x2a8)+this['timeout']+'ms)\x0a-\x20async:\x20Whether\x20to\x20run\x20command\x20asynchronously\x20(true/false)\x0a\x0aBACKGROUND\x20COMMAND\x20MANAGEMENT\x20(Advanced):\x0aFor\x20long-running\x20commands\x20(npm\x20install,\x20git\x20operations,\x20builds),\x20use\x20background\x20command\x20tracking:\x0a\x0a**startBackgroundCommand(command,\x20workingDir,\x20{agentId,\x20context})**\x0a-\x20Starts\x20command\x20in\x20background\x20with\x20stdin\x20kept\x20open\x0a-\x20Returns\x20commandId\x20for\x20tracking\x0a-\x20Max\x20'+this['MAX_BACKGROUND_COMMANDS_PER_AGENT']+'\x20per\x20agent,\x20'+this[_0x125bff(0x2af)]+'\x20global\x0a-\x20Auto-detects\x20prompts\x20and\x20updates\x20state\x20to\x20\x27waiting_for_input\x27\x0a\x0a**getCommandStatus(commandId,\x20agentId)**\x0a-\x20Get\x20real-time\x20status:\x20running,\x20waiting_for_input,\x20completed,\x20failed\x0a-\x20Returns\x20stdout/stderr\x20buffers,\x20exit\x20code,\x20timestamps\x0a-\x20Shows\x20prompt\x20detection\x20info\x20if\x20interactive\x20prompt\x20detected\x0a\x0a**sendInput(commandId,\x20input,\x20agentId)**\x0a-\x20Send\x20input\x20to\x20command\x27s\x20stdin\x20(answers\x20prompts)\x0a-\x20Automatically\x20adds\x20newline\x20if\x20not\x20present\x0a-\x20Updates\x20state\x20from\x20\x27waiting_for_input\x27\x20to\x20\x27running\x27\x0a\x0a**killCommand(commandId,\x20agentId)**\x0a-\x20Terminate\x20background\x20command\x20(SIGTERM\x20→\x20SIGKILL)\x0a-\x20Safe\x20to\x20call\x20on\x20already-completed\x20commands\x0a\x0a**listAgentCommands(agentId)**\x0a-\x20List\x20all\x20commands\x20(running\x20and\x20completed)\x20for\x20agent\x0a-\x20Useful\x20for\x20monitoring\x20multiple\x20background\x20processes\x0a\x0aBACKGROUND\x20COMMAND\x20WORKFLOW:\x0a1.\x20Start:\x20const\x20{commandId}\x20=\x20await\x20terminal.startBackgroundCommand(\x27npm\x20install\x27,\x20dir,\x20{agentId})\x0a2.\x20Wait:\x20Use\x20agent-delay\x20tool\x20to\x20wait\x20while\x20command\x20runs\x0a3.\x20Check:\x20const\x20status\x20=\x20terminal.getCommandStatus(commandId,\x20agentId)\x0a4.\x20If\x20prompt\x20detected:\x20terminal.sendInput(commandId,\x20\x27y\x27,\x20agentId)\x0a5.\x20Verify:\x20Check\x20status.state\x20===\x20\x27completed\x27\x20&&\x20status.exitCode\x20===\x200\x0a\x0aEXAMPLES:\x0aBasic\x20command\x20execution:\x0a[tool\x20id=\x22terminal\x22]\x0a<run-command>npm\x20install</run-command>\x0a[/tool]\x0a\x0aExecute\x20curl\x20command:\x0a[tool\x20id=\x22terminal\x22]\x0a<run-command>curl\x20-s\x20https://api.github.com/zen</run-command>\x0a[/tool]\x0a\x0aChange\x20directory\x20and\x20run\x20command:\x0a[tool\x20id=\x22terminal\x22]\x0a<change-directory>../frontend</change-directory>\x0a<run-command>npm\x20run\x20build</run-command>\x0a[/tool]\x0a\x0aPackage\x20management:\x0a[tool\x20id=\x22terminal\x22]\x0a<run-command>pip\x20install\x20-r\x20requirements.txt</run-command>\x0a[/tool]\x0a\x0aGit\x20operations:\x0a[tool\x20id=\x22terminal\x22]\x0a<run-command>git\x20status</run-command>\x0a[/tool]\x0a\x0a[tool\x20id=\x22terminal\x22]\x0a<run-command>git\x20add\x20.</run-command>\x0a<run-command>git\x20commit\x20-m\x20\x22Update\x20files\x22</run-command>\x0a[/tool]\x0a\x0aDirectory\x20operations\x20(if\x20FileSystem\x20tool\x20unavailable):\x0a[tool\x20id=\x22terminal\x22]\x0a<create-directory>backend</create-directory>\x0a[/tool]\x0a\x0aSECURITY\x20NOTES:\x0a-\x20Dangerous\x20commands\x20are\x20blocked\x20for\x20safety\x0a-\x20Commands\x20execute\x20in\x20isolated\x20environment\x0a-\x20Output\x20is\x20captured\x20and\x20returned\x20safely\x0a-\x20Long-running\x20commands\x20may\x20time\x20out\x20-\x20use\x20agent-delay\x20tool\x20to\x20wait\x0a\x0aBEST\x20PRACTICES:\x0a-\x20Use\x20FileSystem\x20tool\x20for\x20file/directory\x20creation\x20and\x20management\x0a-\x20Use\x20Terminal\x20tool\x20for\x20command-line\x20utilities\x20(npm,\x20git,\x20curl,\x20grep,\x20etc.)\x0a-\x20After\x20starting\x20long-running\x20commands,\x20use\x20agent-delay\x20tool\x20to\x20pause\x20checking\x0a-\x20Always\x20check\x20command\x20output\x20to\x20verify\x20success\x0a\x0aCURRENT\x20DIRECTORY:\x0aThe\x20tool\x20maintains\x20a\x20current\x20working\x20directory\x20context\x20per\x20agent.\x0aUse\x20change-directory\x20to\x20navigate,\x20and\x20subsequent\x20commands\x20will\x20execute\x20from\x20that\x20location.\x0a\x20\x20\x20\x20';}[a0_0x591259(0x245)](_0x3f0269){const _0x5c8047=a0_0x591259;try{const _0x256bea={},_0x145f1b=a0_0x2821f1[_0x5c8047(0x1fa)](_0x3f0269,'run-command'),_0x194c1c=a0_0x2821f1['extractContent'](_0x3f0269,_0x5c8047(0x27c)),_0x19dc6b=a0_0x2821f1[_0x5c8047(0x1fa)](_0x3f0269,'list-directory'),_0x501655=a0_0x2821f1[_0x5c8047(0x1fa)](_0x3f0269,_0x5c8047(0x2ac)),_0x27eed3=a0_0x2821f1['extractContent'](_0x3f0269,'get-working-directory'),_0x3c9657=a0_0x2821f1['extractContent'](_0x3f0269,_0x5c8047(0x259)),_0x11f2a7=a0_0x2821f1[_0x5c8047(0x1fa)](_0x3f0269,'async'),_0x138454=[];return _0x145f1b['length']>0x0&&_0x138454['push']({'type':'run-command','command':_0x145f1b[0x0][_0x5c8047(0x1f5)]()}),_0x194c1c['length']>0x0&&_0x138454[_0x5c8047(0x282)]({'type':_0x5c8047(0x27c),'directory':_0x194c1c[0x0]['trim']()}),_0x19dc6b[_0x5c8047(0x2bd)]>0x0&&_0x138454['push']({'type':_0x5c8047(0x1f2),'directory':_0x19dc6b[0x0][_0x5c8047(0x1f5)]()||'.'}),_0x501655['length']>0x0&&_0x138454['push']({'type':'create-directory','directory':_0x501655[0x0]['trim']()}),_0x27eed3['length']>0x0&&_0x138454['push']({'type':_0x5c8047(0x1c6)}),_0x256bea['actions']=_0x138454,_0x3c9657['length']>0x0&&(_0x256bea['timeout']=parseInt(_0x3c9657[0x0],0xa)),_0x11f2a7['length']>0x0&&(_0x256bea['async']=_0x11f2a7[0x0]['toLowerCase']()===_0x5c8047(0x26b)),_0x256bea['rawContent']=_0x3f0269[_0x5c8047(0x1f5)](),_0x256bea;}catch(_0x162289){throw new Error('Failed\x20to\x20parse\x20terminal\x20parameters:\x20'+_0x162289['message']);}}['getRequiredParameters'](){const _0x3674da=a0_0x591259;return[_0x3674da(0x289)];}[a0_0x591259(0x24b)](_0x3c95a4){const _0x37d58a=a0_0x591259,_0x42be5a=[];if(!_0x3c95a4[_0x37d58a(0x289)]||!Array['isArray'](_0x3c95a4[_0x37d58a(0x289)])||_0x3c95a4['actions']['length']===0x0)_0x42be5a[_0x37d58a(0x282)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x5dcb0f,_0x3bb117]of _0x3c95a4[_0x37d58a(0x289)]['entries']()){if(!_0x3bb117['type']){_0x42be5a['push'](_0x37d58a(0x210)+(_0x5dcb0f+0x1)+_0x37d58a(0x262));continue;}switch(_0x3bb117[_0x37d58a(0x2da)]){case'run-command':if(!_0x3bb117[_0x37d58a(0x1f8)]||!_0x3bb117[_0x37d58a(0x1f8)]['trim']())_0x42be5a['push']('Action\x20'+(_0x5dcb0f+0x1)+':\x20command\x20is\x20required\x20for\x20run-command');else{if(this[_0x37d58a(0x299)](_0x3bb117[_0x37d58a(0x1f8)]))_0x42be5a['push'](_0x37d58a(0x210)+(_0x5dcb0f+0x1)+_0x37d58a(0x1ad)+_0x3bb117['command']);else this[_0x37d58a(0x223)]&&!this['isAllowedCommand'](_0x3bb117['command'])&&_0x42be5a['push']('Action\x20'+(_0x5dcb0f+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x3bb117['command']);}break;case _0x37d58a(0x27c):case'list-directory':case'create-directory':(!_0x3bb117['directory']||!_0x3bb117[_0x37d58a(0x227)][_0x37d58a(0x1f5)]())&&_0x42be5a['push']('Action\x20'+(_0x5dcb0f+0x1)+_0x37d58a(0x2b1)+_0x3bb117['type']);break;case _0x37d58a(0x1c6):break;default:_0x42be5a[_0x37d58a(0x282)]('Action\x20'+(_0x5dcb0f+0x1)+_0x37d58a(0x28d)+_0x3bb117[_0x37d58a(0x2da)]);}}return _0x3c95a4[_0x37d58a(0x259)]&&(_0x3c95a4['timeout']<0x3e8||_0x3c95a4['timeout']>this[_0x37d58a(0x259)])&&_0x42be5a['push'](_0x37d58a(0x22d)+this['timeout']+_0x37d58a(0x2ab)),{'valid':_0x42be5a[_0x37d58a(0x2bd)]===0x0,'errors':_0x42be5a};}async[a0_0x591259(0x201)](_0x50a3a9,_0x2f2eaa){const _0x1cdc3b=a0_0x591259,{actions:_0x4b71b2,timeout:_0x59d742,async:_0x30580d}=_0x50a3a9,{agentId:_0x17032f,projectDir:_0x4e18b5,directoryAccess:_0x1dbd56}=_0x2f2eaa,_0x4d91dc=_0x1dbd56||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x4e18b5||process[_0x1cdc3b(0x1bc)](),'writeEnabledDirectories':[_0x4e18b5||process[_0x1cdc3b(0x1bc)]()],'restrictToProject':!![]});_0x1dbd56&&_0x1dbd56['workingDirectory']?console['log']('Terminal\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x1dbd56[_0x1cdc3b(0x1ec)]):console['log'](_0x1cdc3b(0x284),_0x4e18b5||process['cwd']());const _0x305a2c=_0x17032f+'-'+(_0x4e18b5||'default');let _0x1ee8a4=this['workingDirectories'][_0x1cdc3b(0x220)](_0x305a2c)||this['directoryAccessManager'][_0x1cdc3b(0x254)](_0x4d91dc);const _0xfe51fe=[];for(const _0x154ca6 of _0x4b71b2){try{let _0x4026fb;switch(_0x154ca6['type']){case _0x1cdc3b(0x246):_0x4026fb=await this[_0x1cdc3b(0x237)](_0x154ca6['command'],_0x1ee8a4,{'timeout':_0x59d742||this['timeout'],'async':_0x30580d||![],'agentId':_0x17032f,'context':{'toolsRegistry':_0x2f2eaa[_0x1cdc3b(0x23a)],'aiService':_0x2f2eaa[_0x1cdc3b(0x1e5)],'apiKey':_0x2f2eaa[_0x1cdc3b(0x2a9)],'customApiKeys':_0x2f2eaa['customApiKeys'],'platformProvided':_0x2f2eaa['platformProvided']}});break;case _0x1cdc3b(0x27c):_0x4026fb=await this['changeDirectory'](_0x154ca6[_0x1cdc3b(0x227)],_0x1ee8a4,_0x4d91dc),_0x1ee8a4=_0x4026fb['newDirectory'],this['workingDirectories'][_0x1cdc3b(0x202)](_0x305a2c,_0x1ee8a4);break;case _0x1cdc3b(0x1f2):_0x4026fb=await this['listDirectory'](_0x154ca6['directory']==='.'?_0x1ee8a4:_0x154ca6['directory']);break;case _0x1cdc3b(0x2ac):_0x4026fb=await this[_0x1cdc3b(0x28a)](_0x154ca6['directory'],_0x1ee8a4);break;case _0x1cdc3b(0x1c6):_0x4026fb={'success':!![],'action':'get-working-directory','workingDirectory':_0x1ee8a4,'message':_0x1cdc3b(0x231)+_0x1ee8a4};break;default:throw new Error(_0x1cdc3b(0x20d)+_0x154ca6['type']);}_0xfe51fe[_0x1cdc3b(0x282)](_0x4026fb),this[_0x1cdc3b(0x1a7)](_0x154ca6,_0x4026fb,_0x17032f);}catch(_0x334e4c){const _0x51c9ed={'success':![],'action':_0x154ca6['type'],'error':_0x334e4c[_0x1cdc3b(0x25b)],'command':_0x154ca6[_0x1cdc3b(0x1f8)]||_0x154ca6['directory'],'workingDirectory':_0x1ee8a4};_0xfe51fe[_0x1cdc3b(0x282)](_0x51c9ed),this[_0x1cdc3b(0x1a7)](_0x154ca6,_0x51c9ed,_0x17032f);}}const _0x58c6ec=_0xfe51fe[_0x1cdc3b(0x25f)](_0x187277=>_0x187277['success']),_0xc364c9=_0xfe51fe['filter'](_0x259bd3=>!_0x259bd3['success']);return{'success':_0x58c6ec,'actions':_0xfe51fe,'workingDirectory':_0x1ee8a4,'executedActions':_0x4b71b2['length'],'failedActions':_0xc364c9['length'],'toolUsed':'terminal','message':_0x58c6ec?_0x1cdc3b(0x1ff)+_0x4b71b2['length']+_0x1cdc3b(0x1e0):_0xc364c9['length']+'\x20of\x20'+_0x4b71b2[_0x1cdc3b(0x2bd)]+'\x20actions\x20failed'};}async[a0_0x591259(0x237)](_0x3623f4,_0x124be4,_0x2a896b={}){const _0x5b8fd0=a0_0x591259,{timeout:timeout=this['timeout'],async:_0x50c6a9=![],agentId:_0x3e3ee2,context:_0x5f2a88}=_0x2a896b,_0x12e497=_0x3623f4;let _0x4ed753;try{_0x4ed753=await this['translateCommand'](_0x3623f4,{'agentId':_0x3e3ee2,'toolsRegistry':_0x5f2a88?.['toolsRegistry'],'messageProcessor':_0x5f2a88?.[_0x5b8fd0(0x1c1)],'aiService':_0x5f2a88?.['aiService'],'apiKey':_0x5f2a88?.[_0x5b8fd0(0x2a9)],'customApiKeys':_0x5f2a88?.['customApiKeys'],'platformProvided':_0x5f2a88?.['platformProvided']});}catch(_0x5332e3){this['logger']?.[_0x5b8fd0(0x26d)]('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x12e497,'error':_0x5332e3['message']}),_0x4ed753=_0x3623f4;}return new Promise((_0x4edf8d,_0x22532c)=>{const _0x21a2ba=_0x5b8fd0,_0x4dc7ce=Date[_0x21a2ba(0x26e)]();this[_0x21a2ba(0x219)]?.[_0x21a2ba(0x1c5)]('Executing\x20command:\x20'+_0x4ed753,{'originalCommand':_0x12e497,'translatedCommand':_0x4ed753,'terminal':this[_0x21a2ba(0x285)],'workingDirectory':_0x124be4,'timeout':timeout,'agentId':_0x3e3ee2});const _0x560eee=exec(_0x4ed753,{'cwd':_0x124be4,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process[_0x21a2ba(0x2a6)]}},(_0x1c6191,_0x595f75,_0x545477)=>{const _0x30ef94=_0x21a2ba,_0x24d265=Date[_0x30ef94(0x26e)]()-_0x4dc7ce;if(_0x1c6191){this[_0x30ef94(0x219)]?.['error'](_0x30ef94(0x21b)+_0x4ed753,{'originalCommand':_0x12e497,'translatedCommand':_0x4ed753,'error':_0x1c6191['message'],'workingDirectory':_0x124be4,'executionTime':_0x24d265}),_0x4edf8d({'success':![],'action':'run-command','command':_0x12e497,'translatedCommand':_0x4ed753!==_0x12e497?_0x4ed753:undefined,'error':_0x1c6191['message'],'stderr':_0x545477['trim'](),'stdout':_0x595f75[_0x30ef94(0x1f5)](),'exitCode':_0x1c6191[_0x30ef94(0x25a)],'executionTime':_0x24d265,'workingDirectory':_0x124be4});return;}this['logger']?.[_0x30ef94(0x1c5)]('Command\x20completed:\x20'+_0x4ed753,{'originalCommand':_0x12e497,'translatedCommand':_0x4ed753,'executionTime':_0x24d265,'stdoutLength':_0x595f75['length'],'stderrLength':_0x545477[_0x30ef94(0x2bd)]}),_0x4edf8d({'success':!![],'action':_0x30ef94(0x246),'command':_0x12e497,'translatedCommand':_0x4ed753!==_0x12e497?_0x4ed753:undefined,'stdout':_0x595f75[_0x30ef94(0x1f5)](),'stderr':_0x545477['trim'](),'exitCode':0x0,'executionTime':_0x24d265,'workingDirectory':_0x124be4,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x24d265+'ms'});});setTimeout(()=>{const _0x45aee9=_0x21a2ba;!_0x560eee[_0x45aee9(0x29a)]&&(_0x560eee['kill'](_0x45aee9(0x236)),_0x22532c(new Error('Command\x20timed\x20out\x20after\x20'+timeout+'ms:\x20'+_0x4ed753+_0x45aee9(0x1d9)+_0x12e497+')')));},timeout);});}async[a0_0x591259(0x243)](_0x5e2595,_0x15c956,_0xfbc179={}){const _0x2e2dbd=a0_0x591259,{timeout:timeout=this[_0x2e2dbd(0x259)],agentId:_0x382abb,context:_0x24507b}=_0xfbc179,_0x27f299=_0x5e2595;let _0x4c9cd4;try{_0x4c9cd4=await this['translateCommand'](_0x5e2595,{'agentId':_0x382abb,'toolsRegistry':_0x24507b?.['toolsRegistry'],'messageProcessor':_0x24507b?.['messageProcessor'],'aiService':_0x24507b?.[_0x2e2dbd(0x1e5)],'apiKey':_0x24507b?.[_0x2e2dbd(0x2a9)],'customApiKeys':_0x24507b?.['customApiKeys'],'platformProvided':_0x24507b?.['platformProvided']});}catch(_0x39c435){this['logger']?.[_0x2e2dbd(0x26d)]('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x27f299,'error':_0x39c435[_0x2e2dbd(0x25b)]}),_0x4c9cd4=_0x5e2595;}return new Promise((_0x442efa,_0x5de4a5)=>{const _0x3eada7=_0x2e2dbd,_0x2027ad=Date['now']();this['logger']?.[_0x3eada7(0x1c5)](_0x3eada7(0x206)+_0x4c9cd4,{'originalCommand':_0x27f299,'translatedCommand':_0x4c9cd4,'terminal':this['detectedTerminal'],'workingDirectory':_0x15c956,'timeout':timeout,'agentId':_0x382abb});let _0x437931;if(this[_0x3eada7(0x285)]===_0x3eada7(0x2a1)||this['detectedTerminal']==='powershell'){const _0x4bc5fd=this['detectedTerminal']==='powershell'?'powershell':_0x3eada7(0x2a1),_0x123ee3=this['detectedTerminal']===_0x3eada7(0x20f)?[_0x3eada7(0x1a2),_0x4c9cd4]:['/c',_0x4c9cd4];_0x437931=spawn(_0x4bc5fd,_0x123ee3,{'cwd':_0x15c956,'env':{...process['env']},'windowsHide':!![]});}else _0x437931=spawn('sh',['-c',_0x4c9cd4],{'cwd':_0x15c956,'env':{...process[_0x3eada7(0x2a6)]}});let _0x178f17='',_0x6cefc3='',_0x48228a=![],_0x23b61b=null,_0x41b673=Date[_0x3eada7(0x26e)](),_0x5ed09a=null;const _0x139cba=setTimeout(()=>{const _0xd8e7f7=_0x3eada7;!_0x437931[_0xd8e7f7(0x29a)]&&_0x23b61b===null&&(_0x48228a=!![],this[_0xd8e7f7(0x219)]?.['warn'](_0xd8e7f7(0x27e)+_0x4c9cd4,{'timeout':timeout,'agentId':_0x382abb}),_0x437931['kill']('SIGTERM'),setTimeout(()=>{!_0x437931['killed']&&_0x437931['kill']('SIGKILL');},0x1388));},timeout);_0x437931[_0x3eada7(0x23d)]['on']('data',_0x27d63e=>{const _0x352933=_0x3eada7,_0x3b872=_0x27d63e[_0x352933(0x1aa)]();_0x178f17+=_0x3b872,_0x41b673=Date['now'](),this[_0x352933(0x219)]?.['debug'](_0x352933(0x1e7)+_0x3b872[_0x352933(0x1a0)](0x0,0x64),{'agentId':_0x382abb,'command':_0x27f299['substring'](0x0,0x32)});if(!_0x5ed09a){const _0x20960f=this['promptDetector']['detectPrompt'](_0x178f17,'stdout');_0x20960f&&(_0x5ed09a=_0x20960f,this['logger']?.['info']('Prompt\x20detected\x20in\x20stdout',{'type':_0x20960f['type'],'description':_0x20960f[_0x352933(0x21d)],'matchedText':_0x20960f[_0x352933(0x2be)],'agentId':_0x382abb,'command':_0x27f299['substring'](0x0,0x32)}));}}),_0x437931[_0x3eada7(0x256)]['on']('data',_0x1c2493=>{const _0x97af51=_0x3eada7,_0x407dc5=_0x1c2493[_0x97af51(0x1aa)]();_0x6cefc3+=_0x407dc5,_0x41b673=Date['now'](),this['logger']?.[_0x97af51(0x24a)](_0x97af51(0x2d3)+_0x407dc5[_0x97af51(0x1a0)](0x0,0x64),{'agentId':_0x382abb,'command':_0x27f299['substring'](0x0,0x32)});if(!_0x5ed09a){const _0x20ecee=this[_0x97af51(0x1eb)]['detectPrompt'](_0x6cefc3,_0x97af51(0x256));_0x20ecee&&(_0x5ed09a=_0x20ecee,this['logger']?.[_0x97af51(0x1c5)](_0x97af51(0x27a),{'type':_0x20ecee[_0x97af51(0x2da)],'description':_0x20ecee['description'],'matchedText':_0x20ecee['matchedText'],'agentId':_0x382abb,'command':_0x27f299['substring'](0x0,0x32)}));}}),_0x437931['on']('exit',(_0x54bd7b,_0x241bce)=>{const _0x42cc79=_0x3eada7;clearTimeout(_0x139cba),_0x23b61b=_0x54bd7b;const _0x67ecf7=Date['now']()-_0x2027ad,_0x4df3b3=Date[_0x42cc79(0x26e)]()-_0x41b673;this['logger']?.['info']('Command\x20process\x20exited:\x20'+_0x4c9cd4,{'exitCode':_0x54bd7b,'signal':_0x241bce,'executionTime':_0x67ecf7,'timedOut':_0x48228a,'stdoutLength':_0x178f17[_0x42cc79(0x2bd)],'stderrLength':_0x6cefc3['length'],'promptDetected':!!_0x5ed09a,'timeSinceLastOutput':_0x4df3b3});const _0x3bc43c={'action':'run-command','command':_0x27f299,'translatedCommand':_0x4c9cd4!==_0x27f299?_0x4c9cd4:undefined,'stdout':_0x178f17['trim'](),'stderr':_0x6cefc3['trim'](),'exitCode':_0x54bd7b,'executionTime':_0x67ecf7,'workingDirectory':_0x15c956,'promptDetected':!!_0x5ed09a,'promptInfo':_0x5ed09a||undefined,'lastOutputTime':_0x41b673,'timeSinceLastOutput':_0x4df3b3};if(_0x48228a){_0x442efa({..._0x3bc43c,'success':![],'error':_0x42cc79(0x1fb)+timeout+'ms','exitCode':_0x54bd7b||-0x1,'timedOut':!![]});return;}if(_0x54bd7b!==0x0){this['logger']?.[_0x42cc79(0x1b8)](_0x42cc79(0x224)+_0x54bd7b+':\x20'+_0x4c9cd4,{'originalCommand':_0x27f299,'translatedCommand':_0x4c9cd4,'exitCode':_0x54bd7b,'stderr':_0x6cefc3[_0x42cc79(0x1a0)](0x0,0xc8),'executionTime':_0x67ecf7,'promptDetected':!!_0x5ed09a}),_0x442efa({..._0x3bc43c,'success':![],'error':_0x42cc79(0x2a7)+_0x54bd7b});return;}this['logger']?.['info'](_0x42cc79(0x214)+_0x4c9cd4,{'originalCommand':_0x27f299,'executionTime':_0x67ecf7,'stdoutLength':_0x178f17['length'],'stderrLength':_0x6cefc3[_0x42cc79(0x2bd)],'promptDetected':!!_0x5ed09a}),_0x442efa({..._0x3bc43c,'success':!![],'exitCode':0x0,'message':_0x42cc79(0x1f6)+_0x67ecf7+'ms'});}),_0x437931['on'](_0x3eada7(0x1b8),_0xfca530=>{const _0x23e396=_0x3eada7;clearTimeout(_0x139cba);const _0x4874ec=Date[_0x23e396(0x26e)]()-_0x2027ad,_0x2f9b8e=Date['now']()-_0x41b673;this[_0x23e396(0x219)]?.['error']('Command\x20spawn\x20error:\x20'+_0x4c9cd4,{'originalCommand':_0x27f299,'error':_0xfca530['message'],'executionTime':_0x4874ec,'promptDetected':!!_0x5ed09a}),_0x442efa({'success':![],'action':_0x23e396(0x246),'command':_0x27f299,'translatedCommand':_0x4c9cd4!==_0x27f299?_0x4c9cd4:undefined,'error':_0xfca530['message'],'stderr':_0x6cefc3[_0x23e396(0x1f5)](),'stdout':_0x178f17[_0x23e396(0x1f5)](),'exitCode':-0x1,'executionTime':_0x4874ec,'workingDirectory':_0x15c956,'promptDetected':!!_0x5ed09a,'promptInfo':_0x5ed09a||undefined,'lastOutputTime':_0x41b673,'timeSinceLastOutput':_0x2f9b8e});});});}async['changeDirectory'](_0x1fd51b,_0x45bfab,_0x396e29){const _0x18c985=a0_0x591259;try{let _0x207f12;a0_0x3d852c[_0x18c985(0x226)](_0x1fd51b)?_0x207f12=_0x1fd51b:_0x207f12=a0_0x3d852c[_0x18c985(0x292)](_0x45bfab,_0x1fd51b);const _0x3d5ff1=await a0_0x3ca5dc[_0x18c985(0x1d5)](_0x207f12);if(!_0x3d5ff1[_0x18c985(0x2d9)]())throw new Error('Not\x20a\x20directory:\x20'+_0x207f12);const _0x8494c3=this[_0x18c985(0x1d7)][_0x18c985(0x1e4)](_0x207f12,_0x396e29);if(!_0x8494c3['allowed']){this['logger']?.[_0x18c985(0x26d)](_0x18c985(0x1de)+_0x8494c3['reason'],{'targetDirectory':_0x207f12,'reason':_0x8494c3[_0x18c985(0x271)],'category':_0x8494c3['category']});throw new Error(_0x18c985(0x287)+_0x8494c3[_0x18c985(0x271)]);}return{'success':!![],'action':'change-directory','previousDirectory':_0x45bfab,'newDirectory':_0x207f12,'message':_0x18c985(0x276)+_0x207f12};}catch(_0x327030){throw new Error('Failed\x20to\x20change\x20directory\x20to\x20'+_0x1fd51b+':\x20'+_0x327030['message']);}}async['listDirectory'](_0x2d55d9){const _0x415d77=a0_0x591259;try{const _0xe317cf=await a0_0x3ca5dc[_0x415d77(0x20c)](_0x2d55d9,{'withFileTypes':!![]}),_0x3c0027=_0xe317cf['map'](_0x39ecba=>({'name':_0x39ecba['name'],'type':_0x39ecba[_0x415d77(0x2d9)]()?'directory':'file','isSymlink':_0x39ecba['isSymbolicLink']()}));return{'success':!![],'action':'list-directory','directory':_0x2d55d9,'contents':_0x3c0027,'totalItems':_0x3c0027['length'],'directories':_0x3c0027[_0x415d77(0x1c9)](_0x2bc60e=>_0x2bc60e['type']==='directory')[_0x415d77(0x2bd)],'files':_0x3c0027[_0x415d77(0x1c9)](_0x105448=>_0x105448[_0x415d77(0x2da)]===_0x415d77(0x298))['length'],'message':_0x415d77(0x258)+_0x3c0027['length']+_0x415d77(0x2db)+_0x2d55d9};}catch(_0x36bb86){throw new Error(_0x415d77(0x1e8)+_0x2d55d9+':\x20'+_0x36bb86['message']);}}async[a0_0x591259(0x28a)](_0x3982c8,_0x11ced2){const _0x235387=a0_0x591259;try{let _0x41d4bb;return a0_0x3d852c[_0x235387(0x226)](_0x3982c8)?_0x41d4bb=_0x3982c8:_0x41d4bb=a0_0x3d852c['resolve'](_0x11ced2,_0x3982c8),await a0_0x3ca5dc[_0x235387(0x264)](_0x41d4bb,{'recursive':!![]}),{'success':!![],'action':'create-directory','directory':_0x41d4bb,'relativePath':a0_0x3d852c[_0x235387(0x2a0)](_0x11ced2,_0x41d4bb),'message':_0x235387(0x1ac)+_0x41d4bb};}catch(_0x414d90){throw new Error(_0x235387(0x1df)+_0x3982c8+':\x20'+_0x414d90['message']);}}[a0_0x591259(0x299)](_0x2d5a0d){const _0x568111=a0_0x591259,_0x1226eb=_0x2d5a0d[_0x568111(0x200)]()['trim']();return this[_0x568111(0x21a)][_0x568111(0x2b2)](_0x3d8ca5=>{const _0x53dca2=_0x568111,_0x5339ad=_0x3d8ca5[_0x53dca2(0x200)]();return _0x1226eb===_0x5339ad||_0x1226eb[_0x53dca2(0x235)](_0x5339ad+'\x20');});}['isAllowedCommand'](_0x5b0116){const _0x52fde6=a0_0x591259;if(!this['allowedCommands'])return!![];const _0x4cefb3=_0x5b0116['toLowerCase']()[_0x52fde6(0x1f5)](),_0x19c30c=_0x4cefb3[_0x52fde6(0x2cf)]('\x20')[0x0];return this['allowedCommands']['some'](_0x306bc4=>_0x306bc4[_0x52fde6(0x200)]()===_0x19c30c||_0x4cefb3[_0x52fde6(0x235)](_0x306bc4[_0x52fde6(0x200)]()+'\x20'));}[a0_0x591259(0x1a7)](_0x4394f5,_0x27207d,_0x1884ab){const _0x34f4fa=a0_0x591259,_0x5a1cd6={'timestamp':new Date()[_0x34f4fa(0x24d)](),'agentId':_0x1884ab,'action':_0x4394f5['type'],'command':_0x4394f5[_0x34f4fa(0x1f8)]||_0x4394f5['directory'],'success':_0x27207d['success'],'executionTime':_0x27207d['executionTime']||0x0,'workingDirectory':_0x27207d[_0x34f4fa(0x1ec)]};this['commandHistory'][_0x34f4fa(0x282)](_0x5a1cd6),this['commandHistory']['length']>0x64&&(this[_0x34f4fa(0x1c2)]=this['commandHistory'][_0x34f4fa(0x2c4)](-0x64));}['getSupportedActions'](){return['run-command','change-directory','list-directory','create-directory','get-working-directory'];}[a0_0x591259(0x29c)](){const _0x4965e8=a0_0x591259;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this[_0x4965e8(0x2a3)]()},'command':{'type':_0x4965e8(0x2a4)},'directory':{'type':'string'}},'required':['type']}},'timeout':{'type':'integer','minimum':0x3e8,'maximum':this[_0x4965e8(0x259)]},'async':{'type':'boolean'}},'required':['actions']};}[a0_0x591259(0x1e3)](_0x52fd38=null){if(_0x52fd38)return this['commandHistory']['filter'](_0x111d8c=>_0x111d8c['agentId']===_0x52fd38);return[...this['commandHistory']];}[a0_0x591259(0x22f)](_0x46c5c2){const _0x47c0f9=a0_0x591259;for(const [_0x31a34f]of this['workingDirectories']){_0x31a34f['startsWith'](_0x46c5c2+'-')&&this['workingDirectories'][_0x47c0f9(0x1c8)](_0x31a34f);}}['getCurrentWorkingDirectory'](_0x3b4763,_0x4b563b=null){const _0x4935cb=a0_0x591259,_0x532e85=_0x3b4763+'-'+(_0x4b563b||'default');return this[_0x4935cb(0x291)]['get'](_0x532e85)||_0x4b563b||process[_0x4935cb(0x1bc)]();}[a0_0x591259(0x1d1)](){const _0xdcdf60=a0_0x591259;this['platformType']=process[_0xdcdf60(0x247)];if(process['platform']===_0xdcdf60(0x26a)){if(process['env'][_0xdcdf60(0x2bf)])this[_0xdcdf60(0x285)]=_0xdcdf60(0x20f);else process[_0xdcdf60(0x2a6)][_0xdcdf60(0x255)]&&process[_0xdcdf60(0x2a6)]['SHELL']['includes']('bash')?this[_0xdcdf60(0x285)]=_0xdcdf60(0x229):this[_0xdcdf60(0x285)]=_0xdcdf60(0x2a1);}else process[_0xdcdf60(0x247)]==='darwin'?this['detectedTerminal']='bash':this[_0xdcdf60(0x285)]='bash';this['logger']?.['info'](_0xdcdf60(0x1d0),{'platform':this[_0xdcdf60(0x24c)],'terminal':this[_0xdcdf60(0x285)],'shell':process['env']['SHELL']});}async['translateCommand'](_0x43218e,_0x1922f1={}){const _0x410664=a0_0x591259,_0x50d985=_0x43218e[_0x410664(0x1f5)](),_0x57b2e3=this[_0x410664(0x241)](_0x50d985);this[_0x410664(0x219)]?.[_0x410664(0x1c5)]('Command\x20compatibility\x20analysis',{'command':_0x50d985,'detectedTerminal':_0x57b2e3[_0x410664(0x285)],'commandType':_0x57b2e3['commandType'],'commandCategory':_0x57b2e3[_0x410664(0x1cf)],'compatible':_0x57b2e3[_0x410664(0x2d8)],'issues':_0x57b2e3['specificIssues'],'suggestedAction':_0x57b2e3['suggestedAction'],'confidence':_0x57b2e3[_0x410664(0x294)]});if(_0x57b2e3[_0x410664(0x2d8)])return _0x43218e;let _0xa08584=null;if(this[_0x410664(0x285)]==='cmd')_0xa08584=this[_0x410664(0x21c)](_0x50d985);else{if(this[_0x410664(0x285)]===_0x410664(0x20f))_0xa08584=this[_0x410664(0x1c3)](_0x50d985);else this[_0x410664(0x285)]===_0x410664(0x229)&&(_0xa08584=this[_0x410664(0x205)](_0x50d985));}if(_0xa08584&&this[_0x410664(0x1e6)](_0x50d985))return this['logger']?.[_0x410664(0x1c5)]('Using\x20simple\x20translation',{'original':_0x43218e,'translated':_0xa08584,'method':_0x410664(0x1b4)}),_0xa08584;if(_0x1922f1[_0x410664(0x1e5)]||_0x1922f1['toolsRegistry']&&_0x1922f1['agentId']){this['logger']?.[_0x410664(0x1c5)](_0x410664(0x278),{'command':_0x43218e[_0x410664(0x1a0)](0x0,0x64)+_0x410664(0x1f7),'hasAiService':!!_0x1922f1[_0x410664(0x1e5)],'hasToolsRegistry':!!_0x1922f1[_0x410664(0x23a)],'agentId':_0x1922f1[_0x410664(0x1cc)]});try{const _0x20fb22=await this[_0x410664(0x2ca)](_0x43218e,_0x1922f1);if(_0x20fb22&&_0x20fb22[_0x410664(0x1f5)]()!==_0x43218e['trim']())return this[_0x410664(0x219)]?.['info'](_0x410664(0x283),{'original':_0x43218e,'translated':_0x20fb22,'method':'ai'}),_0x20fb22;else this['logger']?.['warn']('AI\x20translation\x20returned\x20same\x20command',{'original':_0x43218e,'translated':_0x20fb22});}catch(_0x316702){this[_0x410664(0x219)]?.['warn'](_0x410664(0x1ed),{'original':_0x43218e,'error':_0x316702['message'],'stack':_0x316702[_0x410664(0x2b3)]});}}else this[_0x410664(0x219)]?.['warn'](_0x410664(0x257),{'hasAiService':!!_0x1922f1[_0x410664(0x1e5)],'hasToolsRegistry':!!_0x1922f1[_0x410664(0x23a)],'hasAgentId':!!_0x1922f1[_0x410664(0x1cc)],'contextKeys':Object['keys'](_0x1922f1)});return _0xa08584||_0x43218e;}[a0_0x591259(0x1e6)](_0x17bd20){const _0x4e6293=a0_0x591259,_0x6ed45d=_0x17bd20['toLowerCase']();if(_0x17bd20['includes']('\x5cn')||_0x17bd20['includes']('\x5cr')||_0x17bd20[_0x4e6293(0x28f)]('\x5ct'))return![];if(_0x17bd20[_0x4e6293(0x28f)]('\x0a')||_0x17bd20[_0x4e6293(0x28f)]('\x0d'))return![];if(_0x17bd20[_0x4e6293(0x28f)](_0x4e6293(0x22a))||_0x17bd20[_0x4e6293(0x28f)](_0x4e6293(0x270))||_0x17bd20['includes']('main()'))return![];if(_0x17bd20[_0x4e6293(0x28f)]('def\x20')||_0x17bd20[_0x4e6293(0x28f)]('function\x20')||_0x17bd20[_0x4e6293(0x28f)]('class\x20'))return![];if(_0x17bd20[_0x4e6293(0x28f)](_0x4e6293(0x26c))&&!_0x17bd20['includes']('echo\x20\x22'))return![];const _0x5ec20a=_0x17bd20['match'](/'([^']*)'/);if(_0x5ec20a&&_0x5ec20a[0x1][_0x4e6293(0x2bd)]>0x32)return![];if(this['detectedTerminal']==='cmd'&&_0x17bd20[_0x4e6293(0x28f)]('>')&&_0x17bd20['includes']('/')&&!_0x17bd20[_0x4e6293(0x28f)]('\x5c'))return![];if(_0x17bd20[_0x4e6293(0x28f)](_0x4e6293(0x2c6))||_0x17bd20[_0x4e6293(0x28f)](_0x4e6293(0x21f))||_0x17bd20[_0x4e6293(0x28f)](';\x20'))return![];if(_0x17bd20[_0x4e6293(0x28f)]('$(')||_0x17bd20[_0x4e6293(0x28f)]('`')||_0x17bd20[_0x4e6293(0x28f)]('{')||_0x17bd20[_0x4e6293(0x28f)]('['))return![];if(_0x6ed45d['includes']('for\x20')||_0x6ed45d['includes'](_0x4e6293(0x2c8))||_0x6ed45d['includes'](_0x4e6293(0x1be)))return![];if(_0x6ed45d['includes']('export ')||_0x6ed45d['includes']('source\x20'))return![];if(_0x17bd20['includes'](_0x4e6293(0x1dd))||_0x17bd20[_0x4e6293(0x28f)](_0x4e6293(0x25e)))return![];return!![];}async['translateCommandWithAI'](_0x30702e,_0x3ab687){const _0x2a0fe3=a0_0x591259;let _0x32da96=_0x3ab687[_0x2a0fe3(0x1e5)];if(!_0x32da96&&_0x3ab687['toolsRegistry']&&_0x3ab687['agentId']){const _0x57e385=_0x3ab687[_0x2a0fe3(0x1c1)];_0x57e385&&_0x57e385[_0x2a0fe3(0x1e5)]&&(_0x32da96=_0x57e385['aiService']);}if(!_0x32da96)throw new Error(_0x2a0fe3(0x274));const _0x217842=this['buildTranslationPrompt'](_0x30702e),_0xcbf02e='gpt-4-mini';try{const _0x5138ef=await _0x32da96['sendMessage'](_0xcbf02e,_0x217842,{'agentId':_0x3ab687[_0x2a0fe3(0x1cc)],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x3ab687[_0x2a0fe3(0x2a9)],'customApiKeys':_0x3ab687[_0x2a0fe3(0x20a)],'platformProvided':_0x3ab687['platformProvided']}),_0x4baffe=this['extractTranslatedCommand'](_0x5138ef[_0x2a0fe3(0x215)]);return this['logger']?.['debug'](_0x2a0fe3(0x1a8),{'original':_0x30702e,'translated':_0x4baffe,'model':_0xcbf02e,'terminal':this[_0x2a0fe3(0x285)]}),_0x4baffe;}catch(_0x5c9474){this[_0x2a0fe3(0x219)]?.[_0x2a0fe3(0x1b8)]('AI\x20command\x20translation\x20failed',{'command':_0x30702e,'terminal':this[_0x2a0fe3(0x285)],'error':_0x5c9474[_0x2a0fe3(0x25b)]});throw _0x5c9474;}}[a0_0x591259(0x281)](_0xc1809){const _0x481b8b=a0_0x591259,_0x4325f6={'cmd':'Windows\x20Command\x20Prompt\x20(cmd.exe)','powershell':'Windows\x20PowerShell','bash':_0x481b8b(0x1a9)},_0x5705ec=_0x4325f6[this[_0x481b8b(0x285)]]||this[_0x481b8b(0x285)],_0x5b42df=this[_0x481b8b(0x241)](_0xc1809);let _0x32f72b=_0x481b8b(0x1af)+_0x5705ec+':\x0a\x0aORIGINAL\x20COMMAND:\x0a```\x0a'+_0xc1809+'\x0a```\x0a\x0aCOMMAND\x20ANALYSIS:\x0a-\x20Command\x20Type:\x20'+_0x5b42df[_0x481b8b(0x260)]+_0x481b8b(0x1a4)+_0x5b42df['commandCategory']+_0x481b8b(0x295)+_0x5705ec+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x5b42df[_0x481b8b(0x28b)][_0x481b8b(0x251)](',\x20')||_0x481b8b(0x1f0));return _0x5b42df[_0x481b8b(0x260)]===_0x481b8b(0x2d2)&&_0x5b42df['alternatives']&&_0x5b42df[_0x481b8b(0x23e)][this['detectedTerminal']]&&(_0x32f72b+='\x0a-\x20Suggested\x20Alternative:\x20'+_0x5b42df['alternatives'][this['detectedTerminal']]),_0x32f72b+='\x0a\x0aREQUIREMENTS:\x0a1.\x20Make\x20the\x20command\x20work\x20correctly\x20in\x20'+_0x5705ec+_0x481b8b(0x222),_0x32f72b;}[a0_0x591259(0x2d6)](_0x45a848){const _0x8310f2=a0_0x591259;let _0x449d48=_0x45a848['replace'](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x449d48=_0x449d48[_0x8310f2(0x293)](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x867198=_0x449d48[_0x8310f2(0x1f5)]()['split']('\x0a');return _0x867198[_0x8310f2(0x2bd)]>0x1&&!_0x449d48[_0x8310f2(0x28f)]('&&')&&!_0x449d48[_0x8310f2(0x28f)]('||')&&(_0x449d48=_0x867198[0x0]['trim']()),_0x449d48[_0x8310f2(0x1f5)]();}[a0_0x591259(0x241)](_0x4fe17b){const _0x235e8f=a0_0x591259,_0x3fe6f5=this[_0x235e8f(0x1e2)](_0x4fe17b),_0x289aac=this['isCommandCompatibleWithTerminal'](_0x3fe6f5,this[_0x235e8f(0x285)]);return{'compatible':_0x289aac,'detectedTerminal':this[_0x235e8f(0x285)],'commandType':_0x3fe6f5['type'],'commandCategory':_0x3fe6f5['category'],'specificIssues':_0x3fe6f5['issues'],'suggestedAction':_0x289aac?_0x235e8f(0x201):'translate','confidence':_0x3fe6f5[_0x235e8f(0x294)]};}[a0_0x591259(0x2b4)](_0x1d8277){const _0x505cd5=a0_0x591259;return this['analyzeCommandCompatibility'](_0x1d8277)[_0x505cd5(0x2d8)];}['classifyCommand'](_0x331e8b){const _0xcb14fb=a0_0x591259,_0x5f4392=_0x331e8b['toLowerCase']()[_0xcb14fb(0x1f5)](),_0xf321f6=_0x5f4392['split']('\x20')[0x0],_0x580b72=[];let _0x19d215=0.9;const _0x157cd9={'ls':{'category':'file-listing','alternatives':{'cmd':_0xcb14fb(0x2d0),'powershell':_0xcb14fb(0x2b0)}},'cat':{'category':_0xcb14fb(0x2b8),'alternatives':{'cmd':'type','powershell':_0xcb14fb(0x234)}},'grep':{'category':_0xcb14fb(0x19f),'alternatives':{'cmd':_0xcb14fb(0x2b5),'powershell':'Select-String'}},'find':{'category':_0xcb14fb(0x1f1),'alternatives':{'cmd':'dir\x20/s','powershell':_0xcb14fb(0x1ca)}},'head':{'category':_0xcb14fb(0x2b8),'alternatives':{'cmd':_0xcb14fb(0x228),'powershell':'Get-Content\x20-Head'}},'tail':{'category':_0xcb14fb(0x2b8),'alternatives':{'cmd':'more\x20+n','powershell':'Get-Content\x20-Tail'}},'wc':{'category':'text-analysis','alternatives':{'cmd':_0xcb14fb(0x2ad),'powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':'copy','powershell':_0xcb14fb(0x290)}},'mv':{'category':_0xcb14fb(0x1b1),'alternatives':{'cmd':'move','powershell':_0xcb14fb(0x266)}},'rm':{'category':_0xcb14fb(0x1ef),'alternatives':{'cmd':'del','powershell':_0xcb14fb(0x209)}},'mkdir':{'category':'directory-create','alternatives':{'cmd':_0xcb14fb(0x264),'powershell':'New-Item\x20-Type\x20Directory'}},'rmdir':{'category':_0xcb14fb(0x1d8),'alternatives':{'cmd':'rmdir','powershell':'Remove-Item'}},'touch':{'category':_0xcb14fb(0x22e),'alternatives':{'cmd':'type\x20nul\x20>','powershell':'New-Item\x20-Type\x20File'}},'chmod':{'category':_0xcb14fb(0x1a5),'alternatives':{'cmd':_0xcb14fb(0x250),'powershell':_0xcb14fb(0x22b)}},'chown':{'category':'ownership','alternatives':{'cmd':'takeown','powershell':_0xcb14fb(0x22b)}},'ps':{'category':'process-list','alternatives':{'cmd':'tasklist','powershell':_0xcb14fb(0x279)}},'kill':{'category':'process-kill','alternatives':{'cmd':_0xcb14fb(0x1dc),'powershell':'Stop-Process'}},'killall':{'category':'process-kill','alternatives':{'cmd':_0xcb14fb(0x1b7),'powershell':_0xcb14fb(0x1b3)}},'top':{'category':'process-monitor','alternatives':{'cmd':'tasklist','powershell':_0xcb14fb(0x239)}},'wget':{'category':_0xcb14fb(0x1a6),'alternatives':{'cmd':'curl','powershell':'Invoke-WebRequest'}},'curl':{'category':'http-client','alternatives':{'cmd':'curl','powershell':'Invoke-RestMethod'}},'ping':{'category':'network-test','alternatives':{'cmd':'ping','powershell':'Test-NetConnection'}},'awk':{'category':'text-processing','alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':'text-edit','alternatives':{'cmd':_0xcb14fb(0x212),'powershell':_0xcb14fb(0x21e)}},'sort':{'category':'text-sort','alternatives':{'cmd':'sort','powershell':'Sort-Object'}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':_0xcb14fb(0x2bc),'powershell':'Sort-Object\x20-Unique'}},'pwd':{'category':'directory-current','alternatives':{'cmd':'cd','powershell':_0xcb14fb(0x230)}},'whoami':{'category':'user-info','alternatives':{'cmd':'echo\x20%USERNAME%','powershell':_0xcb14fb(0x208)}},'env':{'category':'environment','alternatives':{'cmd':'set','powershell':'Get-ChildItem\x20Env:'}},'export':{'category':'environment','alternatives':{'cmd':'set','powershell':'$env:'}},'source':{'category':_0xcb14fb(0x22c),'alternatives':{'cmd':'call','powershell':'.\x20'}},'tar':{'category':'archive','alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':_0xcb14fb(0x1fc),'alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0xcb14fb(0x1da)}},'unzip':{'category':'archive','alternatives':{'cmd':_0xcb14fb(0x218),'powershell':'Expand-Archive'}},'df':{'category':_0xcb14fb(0x27b),'alternatives':{'cmd':_0xcb14fb(0x248),'powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':'disk-usage','alternatives':{'cmd':'dir\x20/s','powershell':_0xcb14fb(0x263)}},'free':{'category':'memory-info','alternatives':{'cmd':'systeminfo','powershell':_0xcb14fb(0x1e9)}},'uname':{'category':'system-info','alternatives':{'cmd':_0xcb14fb(0x2cb),'powershell':'Get-ComputerInfo'}}},_0x490c93={'dir':{'category':_0xcb14fb(0x2c5),'alternatives':{'unix':'ls','powershell':'Get-ChildItem'}},'type':{'category':_0xcb14fb(0x2b8),'alternatives':{'unix':'cat','powershell':_0xcb14fb(0x234)}},'copy':{'category':_0xcb14fb(0x27d),'alternatives':{'unix':'cp','powershell':'Copy-Item'}},'move':{'category':_0xcb14fb(0x1b1),'alternatives':{'unix':'mv','powershell':'Move-Item'}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':'Remove-Item'}},'tasklist':{'category':_0xcb14fb(0x297),'alternatives':{'unix':'ps','powershell':_0xcb14fb(0x279)}},'taskkill':{'category':_0xcb14fb(0x1c4),'alternatives':{'unix':_0xcb14fb(0x2c3),'powershell':'Stop-Process'}},'findstr':{'category':_0xcb14fb(0x19f),'alternatives':{'unix':'grep','powershell':_0xcb14fb(0x24f)}}},_0x285d1a={'get-childitem':{'category':'file-listing','alternatives':{'unix':'ls','cmd':_0xcb14fb(0x2d0)}},'get-content':{'category':'file-viewing','alternatives':{'unix':_0xcb14fb(0x242),'cmd':_0xcb14fb(0x2da)}},'copy-item':{'category':_0xcb14fb(0x27d),'alternatives':{'unix':'cp','cmd':_0xcb14fb(0x23f)}},'move-item':{'category':'file-move','alternatives':{'unix':'mv','cmd':_0xcb14fb(0x272)}},'remove-item':{'category':'file-delete','alternatives':{'unix':'rm','cmd':'del'}},'get-process':{'category':_0xcb14fb(0x297),'alternatives':{'unix':'ps','cmd':_0xcb14fb(0x204)}},'stop-process':{'category':'process-kill','alternatives':{'unix':'kill','cmd':'taskkill'}}};let _0x50ecc4=_0xcb14fb(0x23c),_0x4d64f4='unknown',_0x53048d={};if(_0x157cd9[_0xf321f6])_0x50ecc4='unix',_0x4d64f4=_0x157cd9[_0xf321f6]['category'],_0x53048d=_0x157cd9[_0xf321f6][_0xcb14fb(0x23e)];else{if(_0x490c93[_0xf321f6])_0x50ecc4='windows-cmd',_0x4d64f4=_0x490c93[_0xf321f6]['category'],_0x53048d=_0x490c93[_0xf321f6][_0xcb14fb(0x23e)];else{if(_0x285d1a[_0xf321f6])_0x50ecc4=_0xcb14fb(0x20f),_0x4d64f4=_0x285d1a[_0xf321f6][_0xcb14fb(0x2d4)],_0x53048d=_0x285d1a[_0xf321f6][_0xcb14fb(0x23e)];else{const _0x2e08d5=['echo','cd',_0xcb14fb(0x2c7),'help'];_0x2e08d5['includes'](_0xf321f6)?(_0x50ecc4='universal',_0x4d64f4=_0xcb14fb(0x29d)):(_0x50ecc4=_0xcb14fb(0x23c),_0x19d215=0.3);}}}return _0x331e8b['includes']('\x27')&&!_0x331e8b[_0xcb14fb(0x28f)]('\x22')&&_0x580b72[_0xcb14fb(0x282)](_0xcb14fb(0x2b9)),_0x331e8b['includes']('/')&&!_0x331e8b[_0xcb14fb(0x28f)]('\x5c')&&!_0x331e8b[_0xcb14fb(0x28f)](_0xcb14fb(0x2aa))&&_0x331e8b[_0xcb14fb(0x28f)]('>')&&_0x580b72[_0xcb14fb(0x282)]('unix-style-paths'),(_0x331e8b['includes']('\x5cn')||_0x331e8b[_0xcb14fb(0x28f)]('\x5ct'))&&_0x580b72['push']('escape-sequences'),(_0x331e8b['includes']('\x20&&\x20')||_0x331e8b['includes']('\x20||\x20')||_0x331e8b['includes'](';'))&&_0x580b72['push'](_0xcb14fb(0x2b6)),{'type':_0x50ecc4,'category':_0x4d64f4,'alternatives':_0x53048d,'issues':_0x580b72,'confidence':_0x19d215,'firstWord':_0xf321f6,'fullCommand':_0x331e8b};}[a0_0x591259(0x1ab)](_0x8025fd,_0xd6a615){const _0x143bf4=a0_0x591259;switch(_0xd6a615){case _0x143bf4(0x2a1):if(_0x8025fd['type']==='unix')return![];if(_0x8025fd['issues'][_0x143bf4(0x28f)]('single-quotes-problematic'))return![];if(_0x8025fd[_0x143bf4(0x1f3)]['includes'](_0x143bf4(0x23b)))return![];return _0x8025fd['type']==='windows-cmd'||_0x8025fd[_0x143bf4(0x2da)]===_0x143bf4(0x267);case'powershell':if(_0x8025fd[_0x143bf4(0x2da)]===_0x143bf4(0x2d2)&&!_0x8025fd['alternatives']['powershell'])return![];return!![];case _0x143bf4(0x229):if(_0x8025fd[_0x143bf4(0x2da)]==='windows-cmd')return![];return _0x8025fd[_0x143bf4(0x2da)]===_0x143bf4(0x2d2)||_0x8025fd[_0x143bf4(0x2da)]===_0x143bf4(0x267);default:return![];}}['translateToWindowsCmd'](_0x53cbec){const _0x10a878=a0_0x591259;let _0x166ca2=_0x53cbec;const _0x1b3c3c=new Map([[/^ls\s*$/,'dir'],[/^ls\s+-la?$/,_0x10a878(0x2d0)],[/^ls\s+-l$/,_0x10a878(0x2d0)],[/^ls\s+-a$/,_0x10a878(0x1b2)],[/^cat\s+(.+)$/,_0x10a878(0x1bb)],[/^cp\s+(.+)\s+(.+)$/,'copy\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,'move\x20$1\x20$2'],[/^rm\s+(.+)$/,_0x10a878(0x249)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,'rmdir\x20$1'],[/^ps\s*$/,_0x10a878(0x204)],[/^kill\s+(.+)$/,'taskkill\x20/PID\x20$1'],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,'echo\x20%USERNAME%'],[/^ping\s+(.+)$/,'ping\x20$1'],[/^wget\s+(.+)$/,'curl\x20-O\x20$1'],[/^curl\s+(.+)$/,'curl\x20$1']]);for(const [_0x7ad5ff,_0x306d15]of _0x1b3c3c){if(_0x7ad5ff[_0x10a878(0x1b0)](_0x166ca2)){_0x166ca2=_0x166ca2['replace'](_0x7ad5ff,_0x306d15);break;}}_0x166ca2=_0x166ca2['replace'](/echo\s+'([^']+)'\s*>/g,_0x10a878(0x213)),_0x166ca2=_0x166ca2[_0x10a878(0x293)](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x166ca2['includes']('echo\x20\x27')&&_0x166ca2[_0x10a878(0x28f)]('\x5cn')){const _0x5d34cc=_0x166ca2['match'](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x5d34cc){const _0xebcff=_0x5d34cc[0x1][_0x10a878(0x293)](/\\n/g,'\x0a'),_0x3023b5=_0x5d34cc[0x2],_0x1acf4c=_0xebcff['split']('\x0a');_0x166ca2='('+_0x1acf4c[_0x10a878(0x233)](_0x2a8e9e=>'echo\x20'+_0x2a8e9e)['join']('\x20&\x20')+')\x20>\x20'+_0x3023b5;}}return this['logger']?.['info']('Command\x20translated\x20for\x20Windows\x20CMD',{'original':_0x53cbec,'translated':_0x166ca2}),_0x166ca2;}['translateToPowerShell'](_0x1bc148){const _0x3ff0fa=a0_0x591259;let _0x37554c=_0x1bc148;const _0xfed5f4=new Map([[/^ls\s*$/,'Get-ChildItem'],[/^ls\s+-la?$/,'Get-ChildItem\x20-Force'],[/^cat\s+(.+)$/,_0x3ff0fa(0x1bf)],[/^cp\s+(.+)\s+(.+)$/,_0x3ff0fa(0x1d4)],[/^mv\s+(.+)\s+(.+)$/,'Move-Item\x20$1\x20$2'],[/^rm\s+(.+)$/,_0x3ff0fa(0x273)],[/^pwd\s*$/,'Get-Location'],[/^ps\s*$/,'Get-Process']]);for(const [_0xe41201,_0x2915a7]of _0xfed5f4){if(_0xe41201['test'](_0x37554c)){_0x37554c=_0x37554c[_0x3ff0fa(0x293)](_0xe41201,_0x2915a7);break;}}return this['logger']?.[_0x3ff0fa(0x1c5)]('Command\x20translated\x20for\x20PowerShell',{'original':_0x1bc148,'translated':_0x37554c}),_0x37554c;}[a0_0x591259(0x205)](_0x413b82){const _0x361372=a0_0x591259;let _0xd6b74b=_0x413b82;const _0x118071=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x361372(0x232)],[/^type\s+(.+)$/,'cat\x20$1'],[/^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*$/,_0x361372(0x221)]]);for(const [_0x1a0050,_0x3e1eb0]of _0x118071){if(_0x1a0050[_0x361372(0x1b0)](_0xd6b74b)){_0xd6b74b=_0xd6b74b[_0x361372(0x293)](_0x1a0050,_0x3e1eb0);break;}}return _0xd6b74b;}async[a0_0x591259(0x29b)](_0x47bbbe){}async['startBackgroundCommand'](_0x1dd5f9,_0x5b49b4,_0x52ef4c={}){const _0x482bd5=a0_0x591259,{agentId:_0x11b678,context:_0x4879d5}=_0x52ef4c;if(!_0x11b678)throw new Error('agentId\x20is\x20required\x20for\x20background\x20commands');const _0x4fae7c=this['getAgentCommands'](_0x11b678),_0x735650=_0x4fae7c['filter'](_0x2e57dd=>_0x2e57dd[_0x482bd5(0x2d7)]==='running'||_0x2e57dd['state']==='waiting_for_input');if(_0x735650['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error('Maximum\x20background\x20commands\x20per\x20agent\x20exceeded\x20('+this[_0x482bd5(0x253)]+')');const _0x39d314=Array['from'](this[_0x482bd5(0x2c2)]['values']()),_0x5057f5=_0x39d314[_0x482bd5(0x1c9)](_0x540514=>_0x540514[_0x482bd5(0x2d7)]==='running'||_0x540514[_0x482bd5(0x2d7)]===_0x482bd5(0x2ba));if(_0x5057f5['length']>=this[_0x482bd5(0x2af)])throw new Error(_0x482bd5(0x2c0)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0xaa080b=_0x11b678+_0x482bd5(0x268)+Date['now']()+'-'+ ++this[_0x482bd5(0x1bd)],_0x141864=_0x1dd5f9;let _0x5b6551;try{_0x5b6551=await this['translateCommand'](_0x1dd5f9,{'agentId':_0x11b678,'toolsRegistry':_0x4879d5?.['toolsRegistry'],'messageProcessor':_0x4879d5?.['messageProcessor'],'aiService':_0x4879d5?.[_0x482bd5(0x1e5)],'apiKey':_0x4879d5?.['apiKey'],'customApiKeys':_0x4879d5?.['customApiKeys'],'platformProvided':_0x4879d5?.['platformProvided']});}catch(_0x47e966){this['logger']?.[_0x482bd5(0x26d)](_0x482bd5(0x1cd),{'originalCommand':_0x141864,'error':_0x47e966['message']}),_0x5b6551=_0x1dd5f9;}this['logger']?.[_0x482bd5(0x1c5)](_0x482bd5(0x1ee)+_0x5b6551,{'commandId':_0xaa080b,'agentId':_0x11b678,'originalCommand':_0x141864,'workingDirectory':_0x5b49b4});let _0x18e12e;if(this[_0x482bd5(0x285)]===_0x482bd5(0x2a1)||this['detectedTerminal']==='powershell'){const _0x5a2afd=this[_0x482bd5(0x285)]===_0x482bd5(0x20f)?_0x482bd5(0x20f):_0x482bd5(0x2a1),_0x342a4b=this['detectedTerminal']==='powershell'?['-Command',_0x5b6551]:['/c',_0x5b6551];_0x18e12e=spawn(_0x5a2afd,_0x342a4b,{'cwd':_0x5b49b4,'env':{...process['env']},'windowsHide':!![],'stdio':[_0x482bd5(0x2c1),_0x482bd5(0x2c1),'pipe']});}else _0x18e12e=spawn('sh',['-c',_0x5b6551],{'cwd':_0x5b49b4,'env':{...process[_0x482bd5(0x2a6)]},'stdio':['pipe',_0x482bd5(0x2c1),'pipe']});const _0x4eca06={'commandId':_0xaa080b,'agentId':_0x11b678,'pid':_0x18e12e[_0x482bd5(0x1c0)],'command':_0x141864,'translatedCommand':_0x5b6551,'workingDirectory':_0x5b49b4,'startTime':new Date()['toISOString'](),'state':_0x482bd5(0x2a5),'exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date[_0x482bd5(0x26e)](),'promptDetected':null,'process':_0x18e12e};return this[_0x482bd5(0x2c2)][_0x482bd5(0x202)](_0xaa080b,_0x4eca06),_0x18e12e['stdout']['on']('data',_0x39df8c=>{const _0x3756f9=_0x482bd5,_0x17b6fe=_0x39df8c[_0x3756f9(0x1aa)]();_0x4eca06[_0x3756f9(0x277)]+=_0x17b6fe,_0x4eca06[_0x3756f9(0x217)]=Date['now']();if(!_0x4eca06['promptDetected']){const _0xdf8f5c=this[_0x3756f9(0x1eb)]['detectPrompt'](_0x4eca06['stdoutBuffer'],_0x3756f9(0x23d));_0xdf8f5c&&(_0x4eca06[_0x3756f9(0x252)]=_0xdf8f5c,_0x4eca06[_0x3756f9(0x2d7)]=_0x3756f9(0x2ba),this[_0x3756f9(0x219)]?.[_0x3756f9(0x1c5)]('Prompt\x20detected\x20in\x20background\x20command',{'commandId':_0xaa080b,'agentId':_0x11b678,'type':_0xdf8f5c[_0x3756f9(0x2da)],'matchedText':_0xdf8f5c[_0x3756f9(0x2be)]}));}}),_0x18e12e['stderr']['on']('data',_0x3d0ed5=>{const _0x2ba347=_0x482bd5,_0x34688f=_0x3d0ed5['toString']();_0x4eca06[_0x2ba347(0x25c)]+=_0x34688f,_0x4eca06['lastOutputTime']=Date[_0x2ba347(0x26e)]();if(!_0x4eca06['promptDetected']){const _0x981e7f=this['promptDetector']['detectPrompt'](_0x4eca06['stderrBuffer'],'stderr');_0x981e7f&&(_0x4eca06[_0x2ba347(0x252)]=_0x981e7f,_0x4eca06['state']=_0x2ba347(0x2ba),this[_0x2ba347(0x219)]?.['info'](_0x2ba347(0x286),{'commandId':_0xaa080b,'agentId':_0x11b678,'type':_0x981e7f[_0x2ba347(0x2da)],'matchedText':_0x981e7f[_0x2ba347(0x2be)]}));}}),_0x18e12e['on'](_0x482bd5(0x2c7),(_0x3cbab2,_0x55f794)=>{const _0x24d335=_0x482bd5;_0x4eca06['exitCode']=_0x3cbab2,_0x4eca06['state']=_0x3cbab2===0x0?'completed':'failed',_0x4eca06['endTime']=new Date()['toISOString'](),this['logger']?.['info'](_0x24d335(0x296),{'commandId':_0xaa080b,'agentId':_0x11b678,'exitCode':_0x3cbab2,'signal':_0x55f794,'state':_0x4eca06[_0x24d335(0x2d7)]});}),_0x18e12e['on'](_0x482bd5(0x1b8),_0x536ca1=>{const _0x21ef1d=_0x482bd5;_0x4eca06['state']=_0x21ef1d(0x288),_0x4eca06[_0x21ef1d(0x1b8)]=_0x536ca1['message'],_0x4eca06[_0x21ef1d(0x207)]=new Date()[_0x21ef1d(0x24d)](),this['logger']?.[_0x21ef1d(0x1b8)]('Background\x20command\x20error',{'commandId':_0xaa080b,'agentId':_0x11b678,'error':_0x536ca1['message']});}),{'success':!![],'commandId':_0xaa080b,'pid':_0x18e12e['pid'],'command':_0x141864,'translatedCommand':_0x5b6551,'workingDirectory':_0x5b49b4,'message':'Background\x20command\x20started\x20with\x20ID:\x20'+_0xaa080b};}['sendInput'](_0xf68646,_0x49ce66,_0x4f49eb){const _0x20ea69=a0_0x591259,_0x21a15d=this['validateCommandOwnership'](_0xf68646,_0x4f49eb);if(_0x21a15d['state']==='completed'||_0x21a15d['state']===_0x20ea69(0x288))throw new Error(_0x20ea69(0x1e1)+_0x21a15d['state']+'\x20command');if(!_0x21a15d[_0x20ea69(0x261)]||_0x21a15d['process'][_0x20ea69(0x29a)])throw new Error(_0x20ea69(0x27f));const _0x570b6c=_0x49ce66[_0x20ea69(0x244)]('\x0a')?_0x49ce66:_0x49ce66+'\x0a';return _0x21a15d[_0x20ea69(0x261)]['stdin']['write'](_0x570b6c),this[_0x20ea69(0x219)]?.['info']('Input\x20sent\x20to\x20background\x20command',{'commandId':_0xf68646,'agentId':_0x4f49eb,'inputLength':_0x49ce66['length']}),_0x21a15d[_0x20ea69(0x2d7)]===_0x20ea69(0x2ba)&&(_0x21a15d['state']='running',_0x21a15d['promptDetected']=null),{'success':!![],'commandId':_0xf68646,'message':_0x20ea69(0x28c)};}['getCommandStatus'](_0xa55565,_0x3c4370){const _0x2299c5=a0_0x591259,_0x1eed0a=this[_0x2299c5(0x1b5)](_0xa55565,_0x3c4370),_0x275864=Date['now']()-_0x1eed0a[_0x2299c5(0x217)];return{'success':!![],'commandId':_0xa55565,'pid':_0x1eed0a[_0x2299c5(0x1c0)],'command':_0x1eed0a[_0x2299c5(0x1f8)],'state':_0x1eed0a[_0x2299c5(0x2d7)],'exitCode':_0x1eed0a['exitCode'],'startTime':_0x1eed0a['startTime'],'endTime':_0x1eed0a[_0x2299c5(0x207)],'workingDirectory':_0x1eed0a[_0x2299c5(0x1ec)],'stdout':_0x1eed0a['stdoutBuffer'],'stderr':_0x1eed0a['stderrBuffer'],'stdoutLength':_0x1eed0a['stdoutBuffer'][_0x2299c5(0x2bd)],'stderrLength':_0x1eed0a['stderrBuffer']['length'],'lastOutputTime':_0x1eed0a['lastOutputTime'],'timeSinceLastOutput':_0x275864,'promptDetected':!!_0x1eed0a['promptDetected'],'promptInfo':_0x1eed0a['promptDetected']||undefined};}[a0_0x591259(0x20b)](_0x1aee81,_0x233c17){const _0x2e5070=a0_0x591259,_0x463bad=this['validateCommandOwnership'](_0x1aee81,_0x233c17);if(_0x463bad['state']==='completed'||_0x463bad['state']===_0x2e5070(0x288))return{'success':!![],'commandId':_0x1aee81,'message':'Command\x20already\x20terminated','state':_0x463bad['state']};if(_0x463bad['process']&&!_0x463bad[_0x2e5070(0x261)][_0x2e5070(0x29a)])return _0x463bad['process'][_0x2e5070(0x2c3)](_0x2e5070(0x236)),setTimeout(()=>{const _0x281593=_0x2e5070;_0x463bad['process']&&!_0x463bad[_0x281593(0x261)][_0x281593(0x29a)]&&_0x463bad['process']['kill'](_0x281593(0x2c9));},0x1388),this['logger']?.['info']('Background\x20command\x20killed',{'commandId':_0x1aee81,'agentId':_0x233c17}),{'success':!![],'commandId':_0x1aee81,'message':'Command\x20killed\x20successfully'};return{'success':![],'commandId':_0x1aee81,'error':_0x2e5070(0x28e)};}[a0_0x591259(0x225)](_0x2f49b0){const _0x55b6eb=a0_0x591259,_0x38262f=this[_0x55b6eb(0x2d5)](_0x2f49b0);return _0x38262f['map'](_0x46a047=>({'commandId':_0x46a047[_0x55b6eb(0x275)],'command':_0x46a047[_0x55b6eb(0x1f8)],'state':_0x46a047['state'],'pid':_0x46a047[_0x55b6eb(0x1c0)],'exitCode':_0x46a047[_0x55b6eb(0x1f9)],'startTime':_0x46a047[_0x55b6eb(0x25d)],'endTime':_0x46a047['endTime'],'promptDetected':!!_0x46a047['promptDetected'],'timeSinceLastOutput':Date['now']()-_0x46a047['lastOutputTime']}));}['getAgentCommands'](_0x3c9703){const _0x2eb9db=a0_0x591259;return Array['from'](this[_0x2eb9db(0x2c2)]['values']())['filter'](_0x217afa=>_0x217afa[_0x2eb9db(0x1cc)]===_0x3c9703);}[a0_0x591259(0x1b5)](_0x1f3d52,_0x219aed){const _0x8d25f3=a0_0x591259,_0x5c3dc2=this['commandTracker']['get'](_0x1f3d52);if(!_0x5c3dc2)throw new Error('Command\x20not\x20found:\x20'+_0x1f3d52);if(_0x5c3dc2[_0x8d25f3(0x1cc)]!==_0x219aed)throw new Error(_0x8d25f3(0x2b7)+_0x5c3dc2[_0x8d25f3(0x1cc)]);return _0x5c3dc2;}async[a0_0x591259(0x1d2)](_0x2b7278){const _0x5b4bc8=a0_0x591259,_0x20c35f=this[_0x5b4bc8(0x2d5)](_0x2b7278);let _0x2fe01c=0x0,_0x4a7d65=0x0;for(const _0x566fc5 of _0x20c35f){_0x566fc5['process']&&!_0x566fc5[_0x5b4bc8(0x261)][_0x5b4bc8(0x29a)]&&(_0x566fc5[_0x5b4bc8(0x261)][_0x5b4bc8(0x2c3)]('SIGTERM'),_0x2fe01c++,setTimeout(()=>{const _0x136c73=_0x5b4bc8;_0x566fc5['process']&&!_0x566fc5[_0x136c73(0x261)]['killed']&&_0x566fc5[_0x136c73(0x261)]['kill']('SIGKILL');},0xbb8)),this['commandTracker'][_0x5b4bc8(0x1c8)](_0x566fc5[_0x5b4bc8(0x275)]),_0x4a7d65++;}return this['logger']?.['info']('Agent\x20commands\x20cleaned\x20up',{'agentId':_0x2b7278,'killedCount':_0x2fe01c,'removedCount':_0x4a7d65}),{'success':!![],'agentId':_0x2b7278,'killedCount':_0x2fe01c,'removedCount':_0x4a7d65,'message':'Cleaned\x20up\x20'+_0x4a7d65+'\x20commands\x20for\x20agent\x20'+_0x2b7278};}['cleanupStaleCommands'](){const _0x1f2466=a0_0x591259,_0x46296b=Date['now']();let _0x5ebc57=0x0;for(const [_0x2478a9,_0x52a95c]of this[_0x1f2466(0x2c2)][_0x1f2466(0x29f)]()){if(_0x52a95c['state']!=='completed'&&_0x52a95c[_0x1f2466(0x2d7)]!=='failed')continue;const _0x416f0b=new Date(_0x52a95c['startTime'])['getTime'](),_0x2aa230=(_0x46296b-_0x416f0b)/0x3e8/0x3c;_0x2aa230>this['MAX_COMMAND_AGE_MINUTES']&&(this[_0x1f2466(0x2c2)][_0x1f2466(0x1c8)](_0x2478a9),_0x5ebc57++);}return _0x5ebc57>0x0&&this['logger']?.[_0x1f2466(0x1c5)]('Stale\x20commands\x20cleaned\x20up',{'removedCount':_0x5ebc57,'ageThresholdMinutes':this[_0x1f2466(0x1b9)]}),{'success':!![],'removedCount':_0x5ebc57,'message':_0x1f2466(0x1ae)+_0x5ebc57+'\x20stale\x20commands'};}}export default TerminalTool;
|
|
1
|
+
const a0_0x31829f=a0_0x3b64;(function(_0x3de73e,_0x4c9570){const _0x354d9c=a0_0x3b64,_0x3dc44d=_0x3de73e();while(!![]){try{const _0x4475bb=parseInt(_0x354d9c(0x12b))/0x1*(-parseInt(_0x354d9c(0xc6))/0x2)+-parseInt(_0x354d9c(0x8b))/0x3+-parseInt(_0x354d9c(0x8e))/0x4*(-parseInt(_0x354d9c(0x179))/0x5)+-parseInt(_0x354d9c(0xa1))/0x6+-parseInt(_0x354d9c(0xfb))/0x7*(parseInt(_0x354d9c(0x93))/0x8)+parseInt(_0x354d9c(0x108))/0x9*(-parseInt(_0x354d9c(0xce))/0xa)+parseInt(_0x354d9c(0x184))/0xb*(parseInt(_0x354d9c(0x1b2))/0xc);if(_0x4475bb===_0x4c9570)break;else _0x3dc44d['push'](_0x3dc44d['shift']());}catch(_0x120466){_0x3dc44d['push'](_0x3dc44d['shift']());}}}(a0_0x3e42,0xbd483));import{BaseTool}from'./baseTool.js';import a0_0x1caa06 from'../utilities/tagParser.js';function a0_0x3b64(_0x1123b1,_0x3fee2a){_0x1123b1=_0x1123b1-0x69;const _0x3e4223=a0_0x3e42();let _0x3b6400=_0x3e4223[_0x1123b1];if(a0_0x3b64['ZDSinU']===undefined){var _0xb54fd7=function(_0x8dfbb){const _0x88b3ad='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1caa06='',_0x52354d='';for(let _0x3c00d4=0x0,_0x1ea389,_0x166908,_0x4ba957=0x0;_0x166908=_0x8dfbb['charAt'](_0x4ba957++);~_0x166908&&(_0x1ea389=_0x3c00d4%0x4?_0x1ea389*0x40+_0x166908:_0x166908,_0x3c00d4++%0x4)?_0x1caa06+=String['fromCharCode'](0xff&_0x1ea389>>(-0x2*_0x3c00d4&0x6)):0x0){_0x166908=_0x88b3ad['indexOf'](_0x166908);}for(let _0x53d87a=0x0,_0x3595c5=_0x1caa06['length'];_0x53d87a<_0x3595c5;_0x53d87a++){_0x52354d+='%'+('00'+_0x1caa06['charCodeAt'](_0x53d87a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x52354d);};a0_0x3b64['lEJITb']=_0xb54fd7,a0_0x3b64['AaPkOQ']={},a0_0x3b64['ZDSinU']=!![];}const _0x29bf50=_0x3e4223[0x0],_0x2784d8=_0x1123b1+_0x29bf50,_0x100167=a0_0x3b64['AaPkOQ'][_0x2784d8];return!_0x100167?(_0x3b6400=a0_0x3b64['lEJITb'](_0x3b6400),a0_0x3b64['AaPkOQ'][_0x2784d8]=_0x3b6400):_0x3b6400=_0x100167,_0x3b6400;}import a0_0x52354d from'../utilities/directoryAccessManager.js';function a0_0x3e42(){const _0x1e15b5=['igDSB2jHBaOTief1Dg8Tzgv0zwn0CYbWCM9TChrZigfUzcb1CgrHDgvZihn0yxrLihrVicD3ywL0Aw5Nx2zVCL9PBNb1DcCkcIOQz2v0q29TBwfUzfn0yxr1CYHJB21Tyw5KswqSigfNzw50swqPkIOklsbhzxqGCMvHBc10Aw1Lihn0yxr1CZOGCNvUBMLUzYWGD2fPDgLUz19MB3jFAw5WDxqSignVBxbSzxrLzcWGzMfPBgvKcI0GuMv0DxjUCYbZDgrVDxqVC3rKzxjYigj1zMzLCNmSigv4AxqGy29KzsWGDgLTzxn0yw1WCWOTifnOB3DZihbYB21WDcbKzxrLy3rPB24GAw5MBYbPzIbPBNrLCMfJDgL2zsbWCM9TChqGzgv0zwn0zwqkcIOQC2vUzeLUChv0kgnVBw1HBMrjzcWGAw5WDxqSigfNzw50swqPkIOklsbtzw5KigLUChv0ihrVignVBw1HBMqNCYbZDgrPBIaOyw5ZD2vYCYbWCM9TChrZkqOTief1Dg9TyxrPy2fSBhKGywrKCYbUzxDSAw5LigLMig5VDcbWCMvZzw50cI0GvxbKyxrLCYbZDgf0zsbMCM9TicD3ywL0Aw5Nx2zVCL9PBNb1DcCGDg8Gj3j1BM5PBMCNcGOQkMTPBgXdB21Tyw5KkgnVBw1HBMrjzcWGywDLBNrjzcKQkGOTifrLCM1PBMf0zsbIywnRz3jVDw5KignVBw1HBMqGkfnjr1rfuK0G4OAsifnjr0TjteWPcI0Gu2fMzsb0BYbJywXSig9UigfSCMvHzhKTy29TCgXLDgvKignVBw1HBMrZcGOQkMXPC3rbz2vUDenVBw1HBMrZkgfNzw50swqPkIOklsbmAxn0igfSBcbJB21Tyw5KCYaOCNvUBMLUzYbHBMqGy29TCgXLDgvKksbMB3iGywDLBNqklsbvC2vMDwWGzM9Yig1VBML0B3jPBMCGBxvSDgLWBguGyMfJA2DYB3vUzcbWCM9JzxnZzxmkcKjbq0ThuK9vtKqGq09ntuforcbxt1jlrKXpvZOkms4Gu3rHCNq6ignVBNn0ihTJB21Tyw5Kswr9id0GyxDHAxqGDgvYBwLUywWUC3rHCNrcywnRz3jVDw5Kq29TBwfUzcGNBNbTigLUC3rHBgWNlcbKAxiSihTHz2vUDeLKFsKkmI4Gv2fPDdOGvxnLigfNzw50lwrLBgf5ihrVB2WGDg8GD2fPDcb3AgLSzsbJB21Tyw5Kihj1BNmkmY4Gq2HLy2S6ignVBNn0ihn0yxr1CYa9ihrLCM1PBMfSlMDLDenVBw1HBMrtDgf0DxmOy29TBwfUzeLKlcbHz2vUDeLKkqO0lIbjzIbWCM9TChqGzgv0zwn0zwq6ihrLCM1PBMfSlNnLBMrjBNb1DcHJB21Tyw5KswqSicD5jYWGywDLBNrjzcKkns4GvMvYAwz5oIbdAgvJAYbZDgf0DxmUC3rHDguGpt09icDJB21WBgv0zwqNicyMihn0yxr1CY5LEgL0q29Kzsa9pt0GmaOkrvHbtvbmrvm6cKjHC2LJignVBw1HBMqGzxHLy3v0Aw9UoGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8CNvUlwnVBw1HBMq+BNbTigLUC3rHBgW8l3j1BI1JB21Tyw5KpGPBl3rVB2XDcGPfEgvJDxrLign1CMWGy29TBwfUzdOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kphj1BI1JB21Tyw5KpMn1CMWGlxmGAhr0Chm6lY9HCgKUz2L0AhvIlMnVBs96zw48l3j1BI1JB21Tyw5KpGPBl3rVB2XDcGPdAgfUz2uGzgLYzwn0B3j5igfUzcbYDw4Gy29TBwfUzdOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kpgnOyw5Nzs1KAxjLy3rVCNK+lI4VzNjVBNrLBMq8l2nOyw5Nzs1KAxjLy3rVCNK+cJXYDw4Ty29TBwfUzd5UCg0GCNvUigj1AwXKpc9YDw4Ty29TBwfUzd4kwY90B29SxqOkugfJA2fNzsbTyw5Hz2vTzw50oGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8CNvUlwnVBw1HBMq+CgLWigLUC3rHBgWGlxiGCMvXDwLYzw1LBNrZlNr4DdWVCNvUlwnVBw1HBMq+cLSVDg9VBf0kcKDPDcbVCgvYyxrPB25ZoGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8CNvUlwnVBw1HBMq+z2L0ihn0yxr1CZWVCNvUlwnVBw1HBMq+cLSVDg9VBf0kcLT0B29SigLKpsj0zxjTAw5HBcjDcJXYDw4Ty29TBwfUzd5NAxqGywrKic48l3j1BI1JB21Tyw5KpGO8CNvUlwnVBw1HBMq+z2L0ignVBw1PDcaTBsaIvxbKyxrLigzPBgvZiJWVCNvUlwnVBw1HBMq+cLSVDg9VBf0kcKrPCMvJDg9YEsbVCgvYyxrPB25ZicHPzIbgAwXLu3LZDgvTihrVB2WGDw5HDMfPBgfIBguPoGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8y3jLyxrLlwrPCMvJDg9YEt5IywnRzw5Kpc9JCMvHDguTzgLYzwn0B3j5pGPBl3rVB2XDcGPtrunvuKLuwsbot1rfuZOklsbeyw5NzxjVDxmGy29TBwfUzhmGyxjLigjSB2nRzwqGzM9YihnHzMv0EqOTienVBw1HBMrZigv4zwn1DguGAw4GAxnVBgf0zwqGzw52AxjVBM1LBNqklsbpDxrWDxqGAxmGy2fWDhvYzwqGyw5KihjLDhvYBMvKihnHzMvSEqOTieXVBMCTCNvUBMLUzYbJB21Tyw5KCYbTyxKGDgLTzsbVDxqGlsb1C2uGywDLBNqTzgvSyxKGDg9VBcb0BYb3ywL0cGPcrvnuifbsqunusunfuZOklsbvC2uGrMLSzvn5C3rLBsb0B29SigzVCIbMAwXLl2rPCMvJDg9YEsbJCMvHDgLVBIbHBMqGBwfUywDLBwvUDaOTifvZzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGDxrPBgL0AwvZicHUCg0SigDPDcWGy3vYBcWGz3jLCcWGzxrJlIKklsbbzNrLCIbZDgfYDgLUzYbSB25Nlxj1BM5PBMCGy29TBwfUzhmSihvZzsbHz2vUDc1KzwXHEsb0B29SihrVihbHDxnLignOzwnRAw5NcI0GqwX3yxLZignOzwnRignVBw1HBMqGB3v0Chv0ihrVihzLCMLMEsbZDwnJzxnZcGPdvvjsru5uierjuKvdve9swtOkvgHLihrVB2WGBwfPBNrHAw5ZigeGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEsbJB250zxH0ihbLCIbHz2vUDc4kvxnLignOyw5Nzs1KAxjLy3rVCNKGDg8GBMf2AwDHDguSigfUzcbZDwjZzxf1zw50ignVBw1HBMrZihDPBgWGzxHLy3v0zsbMCM9TihrOyxqGBg9JyxrPB24UcIaGica','rxHLy3v0Aw5NignVBw1HBMqGD2L0AcbZCgf3BJOG','zgvIDwC','BgfZDe91Dhb1DfrPBwu','u2vSzwn0Aw9UihbYB21WDa','zMfPBgvK','BgvUz3rO','zNvUy3rPB24G','y3vZDg9TqxbPs2v5CW','EwvZlw5V','BhmGlwe','r2v0lunVBNrLBNq','yMfZAa','lunVBw1HBMq','zMLSzs1KzwXLDgu','yxbPs2v5','CgfZC3DVCMq','r2v0lvbYB2nLC3m','C3rKzxjYqNvMzMvY','ig1PBgXPC2vJB25KCW','zw5KC1DPDgG','y29TBwfUzfr5Cgu','ndi0ota4owffs051tq','C2H1DgrVD24','zMLSzs1ZzwfYy2G','mJbiEgfkuum','twf4Aw11BsbIywnRz3jVDw5KignVBw1HBMrZihbLCIbHz2vUDcbLEgnLzwrLzcaO','qwn0Aw9Uia','z2v0ugfYyw1LDgvYu2nOzw1H','rxHWyw5KlufYy2HPDMu','nZjRwMzIsei','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','ChjPBNrM','Dw5PDMvYC2fS','y3vYBcaTtYaKmq','BwvZC2fNzvbYB2nLC3nVCG','ywDLBNrjza','zwnOBYaLvvnfuK5btuuL','zgvMia','zxHLy3v0zunVBw1HBMrxAxrOu3bHD24','A2LSBgvK','C3rKB3v0qNvMzMvY','Bw92zsaKmsaKmG','AxnZDwvZ','mJe2odm1mMDMANbfqq','y2XHC3mG','zxH0CMfJDenVBNrLBNq','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','zNn1DgLSihzVBhvTzsbKAxnRzNjLzq','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','D2HPBguG','BwfW','y2XLyw51Ca','Dg9VBhnszwDPC3rYEq','y3jLyxrLlwrPCMvJDg9YEq','y29TBwfUzeHPC3rVCNK','tgLZDgvKia','cLrLCM1PBMfSifrVB2W6iev4zwn1DguGC3LZDgvTignVBw1HBMrZigfUzcbTyw5Hz2uGDgvYBwLUywWGB3bLCMf0Aw9UCYbZywzLBhKUcGPjtvbpuLrbtLq6iezVCIbMAwXLigfUzcbKAxjLy3rVCNKGy3jLyxrPB24SihbYzwzLCIb1C2LUzYb0AguGrMLSzvn5C3rLBsb0B29SlGPszxnLCNzLihrOzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGB3bLCMf0Aw9UCYbSAwTLig5WBsWGz2L0lcbJDxjSlcbLDgmUcGPvu0fhrtOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kphj1BI1JB21Tyw5KpM5WBsbPBNn0ywXSigv4ChjLC3m8l3j1BI1JB21Tyw5KpGO8y2HHBMDLlwrPCMvJDg9YEt5WCM9Qzwn0l2jHy2TLBMq8l2nOyw5Nzs1KAxjLy3rVCNK+cLSVDg9VBf0kcKfmvevstKfusvzfiePtt04GrK9stufuoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSkicaGicaGiNr5CguIoIaICNvUlwnVBw1HBMqIlaOGicaGicaIy29TBwfUzci6icjUCg0GAw5ZDgfSBcbLEhbYzxnZiGOGicaGFsWkicaGihSkicaGicaGiNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiScIaGicaGicjKAxjLy3rVCNKIoIaIChjVAMvJDc9IywnRzw5KiGOGicaGFqOGif0kFqPGygakcLnvufbpuLrfrcbbq1rjt05toGOTihj1BI1JB21Tyw5KoIbfEgvJDxrLigeGy29TBwfUzcbPBIb0AguGy3vYCMvUDcbKAxjLy3rVCNKklsbJAgfUz2uTzgLYzwn0B3j5oIbdAgfUz2uGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEqOTigXPC3qTzgLYzwn0B3j5oIbmAxn0ignVBNrLBNrZig9Mign1CNjLBNqGB3iGC3bLy2LMAwvKigrPCMvJDg9YEqOTignYzwf0zs1KAxjLy3rVCNK6ienYzwf0zsbHig5LDYbKAxjLy3rVCNKGkhbYzwzLCIbgAwXLu3LZDgvTihrVB2WPcI0Gz2v0lxDVCMTPBMCTzgLYzwn0B3j5oIbhzxqGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEqOkuefsqu1fvevsuZOklsbJB21Tyw5KoIbuAguGy29TBwfUzcb0BYbLEgvJDxrLcI0GzgLYzwn0B3j5oIbeAxjLy3rVCNKGCgf0AcbMB3iGBMf2AwDHDgLVBI9VCgvYyxrPB25ZcI0GDgLTzw91DdOGt3b0Aw9UywWGDgLTzw91DcbPBIbTAwXSAxnLy29UzhmGkg1HEca','u3rVCc1qCM9JzxnZ','zxHLy3v0Aw9UvgLTzq','CgfYC2vqyxjHBwv0zxjZ','Bw92zq','ksa+ia','Dgv4Dc1HBMfSExnPCW','ChjVBxb0rgv0zwn0zwq','ignVBw1HBMrZigzVCIbHz2vUDca','z3b0ltqTBwLUAq','q29TBwfUzcbVDxrWDxqGy2H1BMS6ia','uhjVBxb0igrLDgvJDgvKigLUihn0zgvYCG','q29UzMLYBwf0Aw9UihbYB21WDa','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','CM0GlxjMic8','C3vIC3rYAw5N','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','CMvHzgrPCG','A2LSBenVBw1HBMq','y29Kzq','CMvZB2X2zq','id4GjG','zgv0zwn0sgfUzW','mJy2odqZohPLv0LwyW','AxndB21Tyw5Kq29TCgf0AwjSzq','ChjVy2vZCY1TB25PDg9Y','C3rYAw5N','y2f0icqX','BwTKAxi','y29TBwfUzeLK','uMvTB3zLluL0zw0','mJbgCLDsB0O','ChjVBxb0rgv0zwn0B3i','D29YA2LUz0rPCMvJDg9YEq','yxjJAgL2zq','ywLtzxj2AwnL','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','zMLSDgvY','cI0Gq2f0zwDVCNK6ia','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','BMf0AxzL','CM1KAxiGjde','r2v0lunVBNrLBNqGjde','zgvSicqX','zxzLCNK','C3vJy2vZCW','ChjVy2vZCY1RAwXS','r2vUzxjPyYbPBNb1DcbWCM9TChqGzgv0zwn0zwq','yM9VBgvHBG','zgv0zwn0uhjVBxb0','icyMia','DgfZA2XPC3q','y29TCgXLDgvK','y3DK','y29TBwfUza','ChjVy2vZCW','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','C3rKAw4','y29TBwfUzenHDgvNB3j5','DMfSDwvZ','cI0Gq29TCgf0AwjPBgL0EsbjC3n1zxm6ia','C2LTCgXL','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','Dw5PEa','CNvUlwnVBw1HBMq','zxHLy3v0zq','DxnLCI1PBMzV','cI0Gu3vNz2vZDgvKiefSDgvYBMf0AxzLoIa','zMLUzcaVyW','CgXHDgzVCM1qCM92AwrLza','ignVBw1HBMq','zgLZAY1PBMzV','DhjHBNnSyxrLvg9cyxnO','zgvZy3jPChrPB24','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFtg9NAwnHBerPC2S','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','nZu2ndiWswj4q05V','zgLY','r2v0lunOAwXKsxrLBsaTuMvJDxjZzsb8ie1Lyxn1CMuTt2jQzwn0','CMvWBgfJzq','vw5RBM93BIbHy3rPB24GDhLWztOG','zwnOBYaN','A2LSBa','ugfZC3DVCMqGChjVBxb0','zgLZAY11C2fNzq','zMLSzs1JB3b5','u29YDc1pyMPLy3q','D2LUzg93CY1JBwq','zwnOBYaI','odyYmZe3tLzeshP1','y29TCgf0AwjSzq','y2f0zwDVCNK','C2nYAxb0lwv4zwn1Dgu','qwnJzxnZigrLBMLLzdOG','y2XHC3nPzNLdB21Tyw5K','C3rHCNrZv2L0Aa','rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','BwfPBIGP','A2v5ChjLC3m','sgL0igvUDgvY','q29TBwfUzcbWCM9JzxnZigLZig5VDcbYDw5UAw5N','AM9PBG','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','DgfZA2TPBgW','u0Lhs0Lmta','quKGDhjHBNnSyxrPB24GzMfPBgvKlcbMywXSAw5NigjHy2SGDg8GC2LTCgXLihrYyw5ZBgf0Aw9U','y29UzMLKzw5Jzq','zw52','C3rKzxjY','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','CgLK','C2v0','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','q29UDgLUDwuGChjVBxb0','q29TBwfUzcbMywLSzwqGD2L0AcbLEgL0ignVzguG','CgXHDgzVCM1uExbL','AxnbyNnVBhv0zq','r2v0lvbYB2nLC3mGFcbtB3j0lu9IAMvJDcbdufu','y29TBwfUzeLKq291BNrLCG','CMf3q29UDgvUDa','AwnHy2XZ','Bg9Nz2vY','lI4U','y21K','mu1Hqvbhva','Dgv4Dc1ZzwfYy2G','C3bSAxq','r2v0luXVy2f0Aw9U','u29YDc1pyMPLy3qGlvvUAxf1zq','y29TBwfUzfrYywnRzxi','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPcqunlr1jpvu5eienptu1btKqGtufoquDftuvovcaOqwr2yw5JzwqPoGPgB3iGBg9UzY1YDw5UAw5NignVBw1HBMrZicHUCg0GAw5ZDgfSBcWGz2L0ig9WzxjHDgLVBNmSigj1AwXKCYKSihvZzsbIywnRz3jVDw5KignVBw1HBMqGDhjHy2TPBMC6cGOQkNn0yxj0qMfJA2DYB3vUzenVBw1HBMqOy29TBwfUzcWGD29YA2LUz0rPCIWGE2fNzw50swqSignVBNrLEhr9ksOQcI0Gu3rHCNrZignVBw1HBMqGAw4GyMfJA2DYB3vUzcb3AxrOihn0zgLUigTLChqGB3bLBGOTifjLDhvYBNmGy29TBwfUzeLKigzVCIb0CMfJA2LUzWOTie1HEca','CgLWzq','qxr0zw1WDgLUzYbbssb0CMfUC2XHDgLVBIbMB3iGy29TCgXLEcbJB21Tyw5K','ChjVBxb0ugf0DgvYBNm','C3rKB3v0','zxjYB3i','qwXSia','ywrKvg9iAxn0B3j5','CMvSyxrPDMu','zgLYzwn0B3j5','ChjVy2vZCY1SAxn0','Bwf4qMfJA2DYB3vUzenVBw1HBMrZr2XVyMfS','zgvSzxrL','Dgv4Dc1LzgL0','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','z2v0u3vWCg9YDgvKqwn0Aw9UCW','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwq','DhjHBNnSyxrLvg9xAw5KB3DZq21K','C291CMnLia','uhjVy2vLzcbWCM9TChq','y2XLyxjxB3jRAw5NrgLYzwn0B3j5','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zxHLy3v0zunVBw1HBMq','BM93','D2fPDgLUz19MB3jFAw5WDxq','C3rHCNruAw1L','y2XLyw51CefNzw50','BgLZDerPCMvJDg9YEq','C3rHDa','DxnLCM5HBwu','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','CNvUBMLUzW','sw52B2TLlvjLC3rnzxrOB2q','q29TChjLC3mTqxjJAgL2zq','Cg93zxjZAgvSBa','q29TBwfUzcbUB3qGzM91BMq6ia','zwnOBYaIjdeIid4','AxneAxjLy3rVCNK','ChvZAa','vgvYBwLUywWGzgv0zwn0zwq','rgLYzwn0B3j5ignOyw5NzsbIBg9JA2vKoIa','Aw5JBhvKzxm','u3rHBguGy29TBwfUzhmGy2XLyw5Lzcb1Ca','DhjHBNnSyxrLq29TBwfUzfDPDgHbsq','y3vYBa','CgLUzW','y2HHBMDLlwrPCMvJDg9YEq','zMLSzs1SAxn0Aw5N','zgLYic9Z','uhjVBxb0igrLDgvJDgvKigLUihn0zg91Da','DgvZDa','q29TBwfUzcbJB21WBgv0zwq6ia','u0Lhvevstq','y29UDgLUDwu','BMv0D29YAY10zxn0','B2jQzwn0','y29UDgvUDa','AgfSDa','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbxAw5KB3DZiennra','C3LZDgvTAw5MBW','Ahr0Cc1JBgLLBNq','qMfJA2DYB3vUzcbJB21Tyw5Kihn0yxj0zwqGD2L0AcbjrdOG','AxntAw1WBgvdB21Tyw5K','CgXHDgzVCM0','C3bLy2LMAwnjC3n1zxm','q29TBwfUzcbJB21WyxrPyMLSAxr5igfUywX5C2LZ','ywn0Aw9UCW','C2XPy2u','C29Tzq','Bwf0y2G','DhLWzq','z2v0qwDLBNrdB21Tyw5KCW','mZiWmdK1u0rwqKPq','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','DhjPBq','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','uhjLC3mGzw50zxi','zMLSzs12Awv3Aw5N','C3rHDgu','icyG','CM0Gjde','zxHPDenVzgu','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','mtm2nfDTAxfHCW','q29WEs1jDgvT','cI0GvgfYz2v0ifrLCM1PBMfSoIa','oIbJB21Tyw5KigLZig5VDcbPBIbHBgXVD2vKigXPC3q6ia','ywX0zxjUyxrPDMvZ','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','y29TBwfUzc1JAgfPBMLUzW','Dg9mB3DLCKnHC2u','AxntEw1IB2XPy0XPBMS','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','zgLYzwn0B3j5lwnYzwf0zq','oGOkt1jjr0LoquWGq09ntufordOkygbGcG','BMfTzq','CgLUzYaKmq','q29TBwfUzcbRAwXSzwqGC3vJy2vZC2z1BgX5','qwDLBNqGy29TBwfUzhmGy2XLyw5Lzcb1Ca','CgvYBwLZC2LVBNm','tw92zs1jDgvTicqXicqY','wwvZl05Vihf1zxn0Aw9U','A2v5CW','zw50CMLLCW','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','q29TBwfUzcbWCM9JzxnZig5VDcbMB3vUzcbVCIbHBhjLywr5igTPBgXLza','twvUDsbZzwXLy3rPB24','Bwf4q29TBwfUzefNzu1PBNv0zxm','zgv0zwn0zwruzxjTAw5HBa','AxncBg9JA2vKq29TBwfUza','Aw5WDxq','C2vUzeLUChv0','Dw5PEc1ZDhLSzs1WyxrOCW','Bg9N','zgLYic9H','qMfZAcbZAgvSBcaOtgLUDxGVvw5PEc9TywnpuYK','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','z2v0vgLTzq','BMv3rgLYzwn0B3j5','DgLTzw91Da','Dgv4Dc1Kzwr1Cgu','Dhj1zq','Dg9ju09tDhjPBMC','BwvZC2fNzq','Dw5RBM93BG','oIbJB21Tyw5KigLZigjSB2nRzwqGzM9YihnLy3vYAxr5oIa','r2v0lunOAwXKsxrLBq','zgvS','ndu3odCYy0ziChLo','zgLYzwn0B3j5lwrLBgv0zq','Dg9tDhjPBMC','y2XLyw51Cfn0ywXLq29TBwfUzhm','zM9YBwf0','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','CMvIB290','vxnLCM5HBwuGChjVBxb0','ChDK','BgLZDc1KAxjLy3rVCNK','D2fYBG','Aw5MBW','CMvHC29U','u2vSzwn0lvn0CMLUzW','Bwf0y2HLzfrLEhq','tufyx0nptu1btKrFquDfx01jtLvurvm','z2v0rgvZy3jPChrPB24','ihbLCIbHz2vUDcWG','y29UzMLYBwf0Aw9U','D29YA2LUz0rPCMvJDg9YAwvZ','DhjHBNnSyxrLq29TBwfUza','C2vSzwn0Aw9U','igL0zw1ZigLUia','zw5KvgLTzq'];a0_0x3e42=function(){return _0x1e15b5;};return a0_0x3e42();}import{spawn,exec}from'child_process';import a0_0x3c00d4 from'path';import a0_0x1ea389 from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0x5edf6b=a0_0x3b64;this[_0x5edf6b(0x134)]=[{'pattern':/\(y\/n\)/i,'type':'yes-no','description':_0x5edf6b(0x196)},{'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':_0x5edf6b(0x7e),'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':_0x5edf6b(0x120)},{'pattern':/proceed\?/i,'type':_0x5edf6b(0x166),'description':_0x5edf6b(0x144)},{'pattern':/press any key to continue/i,'type':_0x5edf6b(0x111),'description':'Press\x20any\x20key'},{'pattern':/press enter to continue/i,'type':_0x5edf6b(0x111),'description':_0x5edf6b(0x17d)},{'pattern':/hit enter to continue/i,'type':'keypress','description':_0x5edf6b(0x112)},{'pattern':/password:/i,'type':'password','description':'Password\x20prompt'},{'pattern':/enter password/i,'type':_0x5edf6b(0x85),'description':_0x5edf6b(0x102)},{'pattern':/passphrase:/i,'type':_0x5edf6b(0x85),'description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':_0x5edf6b(0x14e),'description':'Username\x20prompt'},{'pattern':/enter username/i,'type':_0x5edf6b(0x14e),'description':_0x5edf6b(0x1b9)},{'pattern':/enter\s+\w+:/i,'type':'input','description':'Generic\x20input\x20prompt'},{'pattern':/please enter/i,'type':'input','description':'Generic\x20input\x20prompt'},{'pattern':/input:/i,'type':_0x5edf6b(0x1a0),'description':'Generic\x20input\x20prompt'},{'pattern':/are you sure\?/i,'type':_0x5edf6b(0x6f),'description':_0x5edf6b(0xba)},{'pattern':/do you want to/i,'type':_0x5edf6b(0x6f),'description':'Confirmation\x20prompt'},{'pattern':/would you like to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':'selection','description':'Selection\x20prompt'},{'pattern':/choose/i,'type':_0x5edf6b(0x72),'description':_0x5edf6b(0x79)},{'pattern':/\d+\)\s+\w+/g,'type':'menu','description':_0x5edf6b(0x19c)}];}['detectPrompt'](_0x166908,_0x4ba957=a0_0x31829f(0x135)){const _0x249970=a0_0x31829f;if(!_0x166908||_0x166908['trim']()[_0x249970(0x7b)]===0x0)return null;const _0x53d87a=_0x166908['split']('\x0a'),_0x3595c5=_0x53d87a[_0x249970(0x174)](-0x5)[_0x249970(0x114)]('\x0a');for(const _0x4e549b of this['promptPatterns']){const _0x55aa40=_0x3595c5['match'](_0x4e549b['pattern']);if(_0x55aa40)return{'detected':!![],'type':_0x4e549b['type'],'description':_0x4e549b[_0x249970(0xf8)],'matchedText':_0x55aa40[0x0],'matchIndex':_0x55aa40['index'],'source':_0x4ba957,'fullContext':_0x3595c5,'timestamp':Date['now']()};}const _0x3112c4=_0x53d87a[_0x53d87a['length']-0x1]||'';if(_0x3112c4['trim']()[_0x249970(0x7b)]>0x0){const _0x16db94=/:\s*$/['test'](_0x3112c4),_0x1c3226=/\?\s*$/[_0x249970(0x163)](_0x3112c4);if(_0x16db94||_0x1c3226){const _0x264d1e=/\b(enter|type|provide|specify|input)\b/i['test'](_0x3112c4);if(_0x264d1e)return{'detected':!![],'type':'generic','description':_0x249970(0xde),'matchedText':_0x3112c4[_0x249970(0x17b)](),'source':_0x4ba957,'fullContext':_0x3595c5,'timestamp':Date[_0x249970(0x148)](),'confidence':0.7};}}return null;}[a0_0x31829f(0xc5)](_0x2d10c4,_0x3a2ee0=0x7530){const _0x4bf5fc=a0_0x31829f,_0x440ae8=Date[_0x4bf5fc(0x148)](),_0x308128=_0x440ae8-_0x2d10c4;return{'isHanging':_0x308128>=_0x3a2ee0,'timeSinceLastOutput':_0x308128,'threshold':_0x3a2ee0,'likelyWaiting':_0x308128>=_0x3a2ee0/0x2};}}class TerminalTool extends BaseTool{constructor(_0x41adbb={},_0x180a02=null){const _0x5c20d6=a0_0x31829f;super(_0x41adbb,_0x180a02),this['requiresProject']=![],this['isAsync']=![],this[_0x5c20d6(0x1a9)]=_0x41adbb[_0x5c20d6(0x1a9)]||0x1d4c0,this[_0x5c20d6(0x183)]=_0x41adbb['maxConcurrentOperations']||0x3,this[_0x5c20d6(0x70)]=new Map(),this['commandHistory']=[],this['allowedCommands']=_0x41adbb['allowedCommands']||null,this['blockedCommands']=_0x41adbb['blockedCommands']||[_0x5c20d6(0xbd),_0x5c20d6(0x1b6),'del\x20/f\x20/q',_0x5c20d6(0x8c),_0x5c20d6(0x1b8),_0x5c20d6(0x16a)],this[_0x5c20d6(0x146)]=new a0_0x52354d(_0x41adbb,_0x180a02),this[_0x5c20d6(0xcf)]=new PromptDetector(),this['commandTracker']=new Map(),this[_0x5c20d6(0x125)]=0x0,this['MAX_BACKGROUND_COMMANDS_PER_AGENT']=_0x41adbb['maxBackgroundCommandsPerAgent']||0x5,this['MAX_BACKGROUND_COMMANDS_GLOBAL']=_0x41adbb[_0x5c20d6(0x13c)]||0x14,this['MAX_COMMAND_AGE_MINUTES']=_0x41adbb[_0x5c20d6(0x19d)]||0x3c,this[_0x5c20d6(0x19e)]=null,this[_0x5c20d6(0x122)]=null,this[_0x5c20d6(0x13f)]();}[a0_0x31829f(0x6d)](){const _0x4cd8c8=a0_0x31829f;return _0x4cd8c8(0xae)+this[_0x4cd8c8(0x1a9)]+_0x4cd8c8(0x131)+this['MAX_BACKGROUND_COMMANDS_PER_AGENT']+_0x4cd8c8(0x6e)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+_0x4cd8c8(0x75);}[a0_0x31829f(0xb1)](_0x46ff09){const _0x424308=a0_0x31829f;try{const _0x27dadd={},_0x14fe7a=a0_0x1caa06[_0x424308(0xa3)](_0x46ff09,'run-command'),_0x5bca11=a0_0x1caa06[_0x424308(0xa3)](_0x46ff09,'change-directory'),_0x336750=a0_0x1caa06['extractContent'](_0x46ff09,_0x424308(0x1bb)),_0x195d04=a0_0x1caa06['extractContent'](_0x46ff09,_0x424308(0xab)),_0x57e9b2=a0_0x1caa06[_0x424308(0xa3)](_0x46ff09,'get-working-directory'),_0x376678=a0_0x1caa06['extractContent'](_0x46ff09,'timeout'),_0x2bffd7=a0_0x1caa06[_0x424308(0xa3)](_0x46ff09,'async'),_0x1fd50c=[];return _0x14fe7a[_0x424308(0x7b)]>0x0&&_0x1fd50c['push']({'type':'run-command','command':_0x14fe7a[0x0][_0x424308(0x17b)]()}),_0x5bca11['length']>0x0&&_0x1fd50c[_0x424308(0x157)]({'type':_0x424308(0x15f),'directory':_0x5bca11[0x0][_0x424308(0x17b)]()}),_0x336750[_0x424308(0x7b)]>0x0&&_0x1fd50c['push']({'type':'list-directory','directory':_0x336750[0x0]['trim']()||'.'}),_0x195d04['length']>0x0&&_0x1fd50c[_0x424308(0x157)]({'type':'create-directory','directory':_0x195d04[0x0]['trim']()}),_0x57e9b2['length']>0x0&&_0x1fd50c[_0x424308(0x157)]({'type':_0x424308(0xfa)}),_0x27dadd[_0x424308(0x173)]=_0x1fd50c,_0x376678['length']>0x0&&(_0x27dadd['timeout']=parseInt(_0x376678[0x0],0xa)),_0x2bffd7[_0x424308(0x7b)]>0x0&&(_0x27dadd['async']=_0x2bffd7[0x0][_0x424308(0x18b)]()===_0x424308(0x1ab)),_0x27dadd[_0x424308(0x126)]=_0x46ff09[_0x424308(0x17b)](),_0x27dadd;}catch(_0x1e1efa){throw new Error('Failed\x20to\x20parse\x20terminal\x20parameters:\x20'+_0x1e1efa['message']);}}['getRequiredParameters'](){const _0x4179b7=a0_0x31829f;return[_0x4179b7(0x173)];}[a0_0x31829f(0xbc)](_0x3209de){const _0x2af2fd=a0_0x31829f,_0x5a224a=[];if(!_0x3209de['actions']||!Array['isArray'](_0x3209de['actions'])||_0x3209de[_0x2af2fd(0x173)][_0x2af2fd(0x7b)]===0x0)_0x5a224a[_0x2af2fd(0x157)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x5910a2,_0x269de9]of _0x3209de['actions'][_0x2af2fd(0x198)]()){if(!_0x269de9['type']){_0x5a224a['push']('Action\x20'+(_0x5910a2+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x269de9['type']){case'run-command':if(!_0x269de9[_0x2af2fd(0xe5)]||!_0x269de9[_0x2af2fd(0xe5)]['trim']())_0x5a224a[_0x2af2fd(0x157)]('Action\x20'+(_0x5910a2+0x1)+':\x20command\x20is\x20required\x20for\x20run-command');else{if(this[_0x2af2fd(0x19f)](_0x269de9[_0x2af2fd(0xe5)]))_0x5a224a['push']('Action\x20'+(_0x5910a2+0x1)+_0x2af2fd(0x1af)+_0x269de9[_0x2af2fd(0xe5)]);else this['allowedCommands']&&!this['isAllowedCommand'](_0x269de9['command'])&&_0x5a224a['push'](_0x2af2fd(0x90)+(_0x5910a2+0x1)+_0x2af2fd(0x187)+_0x269de9['command']);}break;case'change-directory':case _0x2af2fd(0x1bb):case'create-directory':(!_0x269de9[_0x2af2fd(0x13a)]||!_0x269de9[_0x2af2fd(0x13a)][_0x2af2fd(0x17b)]())&&_0x5a224a[_0x2af2fd(0x157)]('Action\x20'+(_0x5910a2+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x269de9[_0x2af2fd(0x177)]);break;case'get-working-directory':break;default:_0x5a224a[_0x2af2fd(0x157)](_0x2af2fd(0x90)+(_0x5910a2+0x1)+_0x2af2fd(0xbf)+_0x269de9['type']);}}return _0x3209de['timeout']&&(_0x3209de[_0x2af2fd(0x1a9)]<0x3e8||_0x3209de['timeout']>this[_0x2af2fd(0x1a9)])&&_0x5a224a[_0x2af2fd(0x157)]('Timeout\x20must\x20be\x20between\x201000\x20and\x20'+this[_0x2af2fd(0x1a9)]+_0x2af2fd(0x88)),{'valid':_0x5a224a[_0x2af2fd(0x7b)]===0x0,'errors':_0x5a224a};}async['execute'](_0x5ed763,_0x25555a){const _0x46c99a=a0_0x31829f,{actions:_0x1ff118,timeout:_0x25b76c,async:_0x48e82d}=_0x5ed763,{agentId:_0x583302,projectDir:_0x2396e5,directoryAccess:_0x8db153}=_0x25555a,_0x531b29=_0x8db153||this['directoryAccessManager']['createDirectoryAccess']({'workingDirectory':_0x2396e5||process['cwd'](),'writeEnabledDirectories':[_0x2396e5||process['cwd']()],'restrictToProject':!![]});_0x8db153&&_0x8db153[_0x46c99a(0xd0)]?console[_0x46c99a(0x1a3)]('Terminal\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x8db153['workingDirectory']):console['log'](_0x46c99a(0x11c),_0x2396e5||process['cwd']());const _0x2100c4=_0x583302+'-'+(_0x2396e5||'default');let _0x1f3012=this['workingDirectories']['get'](_0x2100c4)||this['directoryAccessManager']['getWorkingDirectory'](_0x531b29);const _0x14001e=[];for(const _0x3e2aa2 of _0x1ff118){try{let _0x4b0a41;switch(_0x3e2aa2[_0x46c99a(0x177)]){case _0x46c99a(0xef):_0x4b0a41=await this[_0x46c99a(0x147)](_0x3e2aa2[_0x46c99a(0xe5)],_0x1f3012,{'timeout':_0x25b76c||this[_0x46c99a(0x1a9)],'async':_0x48e82d||![],'agentId':_0x583302,'context':{'toolsRegistry':_0x25555a[_0x46c99a(0xaa)],'aiService':_0x25555a['aiService'],'apiKey':_0x25555a['apiKey'],'customApiKeys':_0x25555a['customApiKeys'],'platformProvided':_0x25555a[_0x46c99a(0xf4)]}});break;case _0x46c99a(0x15f):_0x4b0a41=await this['changeDirectory'](_0x3e2aa2[_0x46c99a(0x13a)],_0x1f3012,_0x531b29),_0x1f3012=_0x4b0a41[_0x46c99a(0x1a8)],this['workingDirectories'][_0x46c99a(0x11e)](_0x2100c4,_0x1f3012);break;case'list-directory':_0x4b0a41=await this[_0x46c99a(0x14c)](_0x3e2aa2[_0x46c99a(0x13a)]==='.'?_0x1f3012:_0x3e2aa2['directory']);break;case'create-directory':_0x4b0a41=await this['createDirectory'](_0x3e2aa2['directory'],_0x1f3012);break;case _0x46c99a(0xfa):_0x4b0a41={'success':!![],'action':'get-working-directory','workingDirectory':_0x1f3012,'message':'Current\x20working\x20directory:\x20'+_0x1f3012};break;default:throw new Error(_0x46c99a(0xff)+_0x3e2aa2['type']);}_0x14001e[_0x46c99a(0x157)](_0x4b0a41),this[_0x46c99a(0x138)](_0x3e2aa2,_0x4b0a41,_0x583302);}catch(_0x219bf8){const _0x8becb1={'success':![],'action':_0x3e2aa2['type'],'error':_0x219bf8['message'],'command':_0x3e2aa2[_0x46c99a(0xe5)]||_0x3e2aa2[_0x46c99a(0x13a)],'workingDirectory':_0x1f3012};_0x14001e[_0x46c99a(0x157)](_0x8becb1),this[_0x46c99a(0x138)](_0x3e2aa2,_0x8becb1,_0x583302);}}const _0x363226=_0x14001e[_0x46c99a(0xdb)](_0x41654a=>_0x41654a['success']),_0x4a0fc9=_0x14001e['filter'](_0x1c1b03=>!_0x1c1b03[_0x46c99a(0xdc)]);return{'success':_0x363226,'actions':_0x14001e,'workingDirectory':_0x1f3012,'executedActions':_0x1ff118[_0x46c99a(0x7b)],'failedActions':_0x4a0fc9[_0x46c99a(0x7b)],'toolUsed':'terminal','message':_0x363226?_0x46c99a(0x137)+_0x1ff118['length']+'\x20actions\x20completed\x20successfully':_0x4a0fc9['length']+'\x20of\x20'+_0x1ff118['length']+'\x20actions\x20failed'};}async['executeCommand'](_0xaa975,_0x5c5e71,_0x17654d={}){const _0x1dfb3c=a0_0x31829f,{timeout:timeout=this[_0x1dfb3c(0x1a9)],async:_0x133992=![],agentId:_0x424eba,context:_0x4d6d44}=_0x17654d,_0x205461=_0xaa975;let _0x130492;try{_0x130492=await this['translateCommand'](_0xaa975,{'agentId':_0x424eba,'toolsRegistry':_0x4d6d44?.[_0x1dfb3c(0xaa)],'messageProcessor':_0x4d6d44?.['messageProcessor'],'aiService':_0x4d6d44?.[_0x1dfb3c(0xd2)],'apiKey':_0x4d6d44?.['apiKey'],'customApiKeys':_0x4d6d44?.[_0x1dfb3c(0x7d)],'platformProvided':_0x4d6d44?.['platformProvided']});}catch(_0x3bc764){this['logger']?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x205461,'error':_0x3bc764[_0x1dfb3c(0x1ad)]}),_0x130492=_0xaa975;}return new Promise((_0x5db311,_0x5437f9)=>{const _0x268c46=_0x1dfb3c,_0x42d97c=Date['now']();this['logger']?.[_0x268c46(0x1bd)]('Executing\x20command:\x20'+_0x130492,{'originalCommand':_0x205461,'translatedCommand':_0x130492,'terminal':this[_0x268c46(0x19e)],'workingDirectory':_0x5c5e71,'timeout':timeout,'agentId':_0x424eba});const _0x437b34=exec(_0x130492,{'cwd':_0x5c5e71,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x166280,_0x21ec59,_0x4f0122)=>{const _0x3040a5=_0x268c46,_0x189a9c=Date['now']()-_0x42d97c;if(_0x166280){this[_0x3040a5(0x128)]?.[_0x3040a5(0x136)]('Command\x20failed:\x20'+_0x130492,{'originalCommand':_0x205461,'translatedCommand':_0x130492,'error':_0x166280['message'],'workingDirectory':_0x5c5e71,'executionTime':_0x189a9c}),_0x5db311({'success':![],'action':'run-command','command':_0x205461,'translatedCommand':_0x130492!==_0x205461?_0x130492:undefined,'error':_0x166280[_0x3040a5(0x1ad)],'stderr':_0x4f0122['trim'](),'stdout':_0x21ec59[_0x3040a5(0x17b)](),'exitCode':_0x166280[_0x3040a5(0xc2)],'executionTime':_0x189a9c,'workingDirectory':_0x5c5e71});return;}this['logger']?.[_0x3040a5(0x1bd)](_0x3040a5(0x164)+_0x130492,{'originalCommand':_0x205461,'translatedCommand':_0x130492,'executionTime':_0x189a9c,'stdoutLength':_0x21ec59['length'],'stderrLength':_0x4f0122['length']}),_0x5db311({'success':!![],'action':'run-command','command':_0x205461,'translatedCommand':_0x130492!==_0x205461?_0x130492:undefined,'stdout':_0x21ec59[_0x3040a5(0x17b)](),'stderr':_0x4f0122['trim'](),'exitCode':0x0,'executionTime':_0x189a9c,'workingDirectory':_0x5c5e71,'message':_0x3040a5(0x199)+_0x189a9c+'ms'});});setTimeout(()=>{const _0x5eae25=_0x268c46;!_0x437b34[_0x5eae25(0x9d)]&&(_0x437b34['kill']('SIGTERM'),_0x5437f9(new Error(_0x5eae25(0x189)+timeout+'ms:\x20'+_0x130492+'\x20(original:\x20'+_0x205461+')')));},timeout);});}async[a0_0x31829f(0x9c)](_0x2f98c5,_0x42c227,_0x1bb948={}){const _0x344af3=a0_0x31829f,{timeout:timeout=this[_0x344af3(0x1a9)],agentId:_0x3d534f,context:_0x4eea37}=_0x1bb948,_0x2be04f=_0x2f98c5;let _0x286f6c;try{_0x286f6c=await this[_0x344af3(0x71)](_0x2f98c5,{'agentId':_0x3d534f,'toolsRegistry':_0x4eea37?.['toolsRegistry'],'messageProcessor':_0x4eea37?.[_0x344af3(0x98)],'aiService':_0x4eea37?.['aiService'],'apiKey':_0x4eea37?.['apiKey'],'customApiKeys':_0x4eea37?.['customApiKeys'],'platformProvided':_0x4eea37?.['platformProvided']});}catch(_0x45e525){this['logger']?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x2be04f,'error':_0x45e525['message']}),_0x286f6c=_0x2f98c5;}return new Promise((_0xb8a97,_0x1b0041)=>{const _0x38700b=_0x344af3,_0x1610ed=Date[_0x38700b(0x148)]();this['logger']?.[_0x38700b(0x1bd)](_0x38700b(0x76)+_0x286f6c,{'originalCommand':_0x2be04f,'translatedCommand':_0x286f6c,'terminal':this[_0x38700b(0x19e)],'workingDirectory':_0x42c227,'timeout':timeout,'agentId':_0x3d534f});let _0x3a7496;if(this[_0x38700b(0x19e)]==='cmd'||this[_0x38700b(0x19e)]===_0x38700b(0x153)){const _0x40da05=this['detectedTerminal']==='powershell'?_0x38700b(0x153):'cmd',_0x1fd2de=this[_0x38700b(0x19e)]===_0x38700b(0x153)?[_0x38700b(0x82),_0x286f6c]:['/c',_0x286f6c];_0x3a7496=spawn(_0x40da05,_0x1fd2de,{'cwd':_0x42c227,'env':{...process['env']},'windowsHide':!![]});}else _0x3a7496=spawn('sh',['-c',_0x286f6c],{'cwd':_0x42c227,'env':{...process[_0x38700b(0x11a)]}});let _0x46c810='',_0x288319='',_0x18889f=![],_0xa64ee7=null,_0x533d77=Date[_0x38700b(0x148)](),_0x135008=null;const _0x4c9087=setTimeout(()=>{const _0x35ecaa=_0x38700b;!_0x3a7496['killed']&&_0xa64ee7===null&&(_0x18889f=!![],this['logger']?.[_0x35ecaa(0x1bc)]('Command\x20timed\x20out,\x20killing\x20process:\x20'+_0x286f6c,{'timeout':timeout,'agentId':_0x3d534f}),_0x3a7496[_0x35ecaa(0x101)]('SIGTERM'),setTimeout(()=>{const _0x55db35=_0x35ecaa;!_0x3a7496[_0x55db35(0x9d)]&&_0x3a7496['kill'](_0x55db35(0x117));},0x1388));},timeout);_0x3a7496['stdout']['on']('data',_0x43d2ef=>{const _0x535352=_0x38700b,_0x28d29b=_0x43d2ef[_0x535352(0x1b4)]();_0x46c810+=_0x28d29b,_0x533d77=Date['now'](),this['logger']?.['debug'](_0x535352(0xb8)+_0x28d29b[_0x535352(0xbe)](0x0,0x64),{'agentId':_0x3d534f,'command':_0x2be04f['substring'](0x0,0x32)});if(!_0x135008){const _0x1204ae=this[_0x535352(0xcf)][_0x535352(0xe0)](_0x46c810,'stdout');_0x1204ae&&(_0x135008=_0x1204ae,this[_0x535352(0x128)]?.[_0x535352(0x1bd)](_0x535352(0x162),{'type':_0x1204ae['type'],'description':_0x1204ae[_0x535352(0xf8)],'matchedText':_0x1204ae['matchedText'],'agentId':_0x3d534f,'command':_0x2be04f['substring'](0x0,0x32)}));}}),_0x3a7496[_0x38700b(0x11b)]['on']('data',_0x4cfe35=>{const _0x5af932=_0x38700b,_0x53f8ba=_0x4cfe35[_0x5af932(0x1b4)]();_0x288319+=_0x53f8ba,_0x533d77=Date['now'](),this[_0x5af932(0x128)]?.[_0x5af932(0x77)]('Command\x20error\x20chunk:\x20'+_0x53f8ba[_0x5af932(0xbe)](0x0,0x64),{'agentId':_0x3d534f,'command':_0x2be04f[_0x5af932(0xbe)](0x0,0x32)});if(!_0x135008){const _0x4850a0=this['promptDetector']['detectPrompt'](_0x288319,'stderr');_0x4850a0&&(_0x135008=_0x4850a0,this['logger']?.['info'](_0x5af932(0xb9),{'type':_0x4850a0['type'],'description':_0x4850a0[_0x5af932(0xf8)],'matchedText':_0x4850a0[_0x5af932(0x6b)],'agentId':_0x3d534f,'command':_0x2be04f[_0x5af932(0xbe)](0x0,0x32)}));}}),_0x3a7496['on']('exit',(_0x58ec95,_0x33d047)=>{const _0x4b42fb=_0x38700b;clearTimeout(_0x4c9087),_0xa64ee7=_0x58ec95;const _0x9b6040=Date[_0x4b42fb(0x148)]()-_0x1610ed,_0x239f10=Date['now']()-_0x533d77;this[_0x4b42fb(0x128)]?.['info']('Command\x20process\x20exited:\x20'+_0x286f6c,{'exitCode':_0x58ec95,'signal':_0x33d047,'executionTime':_0x9b6040,'timedOut':_0x18889f,'stdoutLength':_0x46c810[_0x4b42fb(0x7b)],'stderrLength':_0x288319[_0x4b42fb(0x7b)],'promptDetected':!!_0x135008,'timeSinceLastOutput':_0x239f10});const _0x258fe0={'action':'run-command','command':_0x2be04f,'translatedCommand':_0x286f6c!==_0x2be04f?_0x286f6c:undefined,'stdout':_0x46c810[_0x4b42fb(0x17b)](),'stderr':_0x288319[_0x4b42fb(0x17b)](),'exitCode':_0x58ec95,'executionTime':_0x9b6040,'workingDirectory':_0x42c227,'promptDetected':!!_0x135008,'promptInfo':_0x135008||undefined,'lastOutputTime':_0x533d77,'timeSinceLastOutput':_0x239f10};if(_0x18889f){_0xb8a97({..._0x258fe0,'success':![],'error':_0x4b42fb(0x189)+timeout+'ms','exitCode':_0x58ec95||-0x1,'timedOut':!![]});return;}if(_0x58ec95!==0x0){this[_0x4b42fb(0x128)]?.['error'](_0x4b42fb(0x121)+_0x58ec95+':\x20'+_0x286f6c,{'originalCommand':_0x2be04f,'translatedCommand':_0x286f6c,'exitCode':_0x58ec95,'stderr':_0x288319[_0x4b42fb(0xbe)](0x0,0xc8),'executionTime':_0x9b6040,'promptDetected':!!_0x135008}),_0xb8a97({..._0x258fe0,'success':![],'error':'Command\x20exited\x20with\x20code\x20'+_0x58ec95});return;}this[_0x4b42fb(0x128)]?.['info'](_0x4b42fb(0x1b7)+_0x286f6c,{'originalCommand':_0x2be04f,'executionTime':_0x9b6040,'stdoutLength':_0x46c810['length'],'stderrLength':_0x288319['length'],'promptDetected':!!_0x135008}),_0xb8a97({..._0x258fe0,'success':!![],'exitCode':0x0,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x9b6040+'ms'});}),_0x3a7496['on']('error',_0xe0dcdf=>{const _0x13bbc1=_0x38700b;clearTimeout(_0x4c9087);const _0x30332d=Date['now']()-_0x1610ed,_0x16b126=Date[_0x13bbc1(0x148)]()-_0x533d77;this[_0x13bbc1(0x128)]?.['error']('Command\x20spawn\x20error:\x20'+_0x286f6c,{'originalCommand':_0x2be04f,'error':_0xe0dcdf['message'],'executionTime':_0x30332d,'promptDetected':!!_0x135008}),_0xb8a97({'success':![],'action':_0x13bbc1(0xef),'command':_0x2be04f,'translatedCommand':_0x286f6c!==_0x2be04f?_0x286f6c:undefined,'error':_0xe0dcdf['message'],'stderr':_0x288319['trim'](),'stdout':_0x46c810[_0x13bbc1(0x17b)](),'exitCode':-0x1,'executionTime':_0x30332d,'workingDirectory':_0x42c227,'promptDetected':!!_0x135008,'promptInfo':_0x135008||undefined,'lastOutputTime':_0x533d77,'timeSinceLastOutput':_0x16b126});});});}async['changeDirectory'](_0x1d41c2,_0x3e45a3,_0x582a4f){const _0x1d945b=a0_0x31829f;try{let _0x9c616b;a0_0x3c00d4['isAbsolute'](_0x1d41c2)?_0x9c616b=_0x1d41c2:_0x9c616b=a0_0x3c00d4[_0x1d945b(0xc3)](_0x3e45a3,_0x1d41c2);const _0x535498=await a0_0x1ea389[_0x1d945b(0x14d)](_0x9c616b);if(!_0x535498['isDirectory']())throw new Error('Not\x20a\x20directory:\x20'+_0x9c616b);const _0x530147=this['directoryAccessManager']['validateReadAccess'](_0x9c616b,_0x582a4f);if(!_0x530147['allowed']){this[_0x1d945b(0x128)]?.[_0x1d945b(0x1bc)](_0x1d945b(0x159)+_0x530147['reason'],{'targetDirectory':_0x9c616b,'reason':_0x530147[_0x1d945b(0x69)],'category':_0x530147['category']});throw new Error(_0x1d945b(0x10c)+_0x530147[_0x1d945b(0x69)]);}return{'success':!![],'action':'change-directory','previousDirectory':_0x3e45a3,'newDirectory':_0x9c616b,'message':'Changed\x20directory\x20to\x20'+_0x9c616b};}catch(_0x173958){throw new Error('Failed\x20to\x20change\x20directory\x20to\x20'+_0x1d41c2+':\x20'+_0x173958['message']);}}async[a0_0x31829f(0x14c)](_0x1c7a4a){const _0x119268=a0_0x31829f;try{const _0x273430=await a0_0x1ea389[_0x119268(0xc0)](_0x1c7a4a,{'withFileTypes':!![]}),_0x56d2ec=_0x273430['map'](_0x60c0d9=>({'name':_0x60c0d9[_0x119268(0x190)],'type':_0x60c0d9[_0x119268(0x156)]()?'directory':'file','isSymlink':_0x60c0d9[_0x119268(0x18c)]()}));return{'success':!![],'action':_0x119268(0x1bb),'directory':_0x1c7a4a,'contents':_0x56d2ec,'totalItems':_0x56d2ec[_0x119268(0x7b)],'directories':_0x56d2ec['filter'](_0x5c93a1=>_0x5c93a1['type']==='directory')['length'],'files':_0x56d2ec['filter'](_0x20a564=>_0x20a564[_0x119268(0x177)]==='file')['length'],'message':_0x119268(0xad)+_0x56d2ec['length']+_0x119268(0x73)+_0x1c7a4a};}catch(_0x4c8b27){throw new Error(_0x119268(0x10f)+_0x1c7a4a+':\x20'+_0x4c8b27[_0x119268(0x1ad)]);}}async['createDirectory'](_0x1c1a22,_0x5971b0){const _0x3bcd0e=a0_0x31829f;try{let _0x170fce;return a0_0x3c00d4[_0x3bcd0e(0x123)](_0x1c1a22)?_0x170fce=_0x1c1a22:_0x170fce=a0_0x3c00d4[_0x3bcd0e(0xc3)](_0x5971b0,_0x1c1a22),await a0_0x1ea389['mkdir'](_0x170fce,{'recursive':!![]}),{'success':!![],'action':'create-directory','directory':_0x170fce,'relativePath':a0_0x3c00d4[_0x3bcd0e(0x139)](_0x5971b0,_0x170fce),'message':'Created\x20directory:\x20'+_0x170fce};}catch(_0x574297){throw new Error(_0x3bcd0e(0x11f)+_0x1c1a22+':\x20'+_0x574297['message']);}}['isBlockedCommand'](_0x297d34){const _0x1ee30a=a0_0x31829f,_0x4bc594=_0x297d34['toLowerCase']()[_0x1ee30a(0x17b)]();return this['blockedCommands']['some'](_0x38db5f=>{const _0x41102c=_0x1ee30a,_0x3bf7f3=_0x38db5f[_0x41102c(0x18b)]();return _0x4bc594===_0x3bf7f3||_0x4bc594[_0x41102c(0x10e)](_0x3bf7f3+'\x20');});}['isAllowedCommand'](_0x131a41){const _0x5f2bab=a0_0x31829f;if(!this['allowedCommands'])return!![];const _0x320108=_0x131a41['toLowerCase']()[_0x5f2bab(0x17b)](),_0x2dfc15=_0x320108['split']('\x20')[0x0];return this['allowedCommands'][_0x5f2bab(0x175)](_0x1b7944=>_0x1b7944[_0x5f2bab(0x18b)]()===_0x2dfc15||_0x320108[_0x5f2bab(0x10e)](_0x1b7944['toLowerCase']()+'\x20'));}['addToHistory'](_0x581df9,_0x1b3c93,_0x75902c){const _0x43f5d6=a0_0x31829f,_0x592097={'timestamp':new Date()['toISOString'](),'agentId':_0x75902c,'action':_0x581df9['type'],'command':_0x581df9[_0x43f5d6(0xe5)]||_0x581df9['directory'],'success':_0x1b3c93[_0x43f5d6(0xdc)],'executionTime':_0x1b3c93[_0x43f5d6(0xb0)]||0x0,'workingDirectory':_0x1b3c93['workingDirectory']};this['commandHistory']['push'](_0x592097),this['commandHistory'][_0x43f5d6(0x7b)]>0x64&&(this[_0x43f5d6(0xac)]=this['commandHistory']['slice'](-0x64));}[a0_0x31829f(0x140)](){const _0x3234ad=a0_0x31829f;return['run-command',_0x3234ad(0x15f),'list-directory','create-directory','get-working-directory'];}[a0_0x31829f(0x91)](){const _0x13539b=a0_0x31829f;return{'type':_0x13539b(0x168),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x13539b(0xc9),'enum':this[_0x13539b(0x140)]()},'command':{'type':'string'},'directory':{'type':_0x13539b(0xc9)}},'required':['type']}},'timeout':{'type':'integer','minimum':0x3e8,'maximum':this['timeout']},'async':{'type':_0x13539b(0xdf)}},'required':[_0x13539b(0x173)]};}['getCommandHistory'](_0x43647f=null){const _0x5c3d10=a0_0x31829f;if(_0x43647f)return this['commandHistory'][_0x5c3d10(0xd4)](_0x5ad61b=>_0x5ad61b[_0x5c3d10(0x99)]===_0x43647f);return[...this['commandHistory']];}[a0_0x31829f(0x145)](_0x52ff24){const _0x38e5cc=a0_0x31829f;for(const [_0x5ece9a]of this['workingDirectories']){_0x5ece9a[_0x38e5cc(0x10e)](_0x52ff24+'-')&&this[_0x38e5cc(0x70)][_0x38e5cc(0x13d)](_0x5ece9a);}}[a0_0x31829f(0xed)](_0x3d3708,_0x5b681b=null){const _0x29b8b8=a0_0x31829f,_0x27dd5b=_0x3d3708+'-'+(_0x5b681b||'default');return this[_0x29b8b8(0x70)]['get'](_0x27dd5b)||_0x5b681b||process[_0x29b8b8(0xe4)]();}[a0_0x31829f(0x13f)](){const _0x3d8770=a0_0x31829f;this['platformType']=process['platform'];if(process['platform']==='win32'){if(process[_0x3d8770(0x11a)]['PSModulePath'])this[_0x3d8770(0x19e)]=_0x3d8770(0x153);else process['env']['SHELL']&&process[_0x3d8770(0x11a)]['SHELL']['includes'](_0x3d8770(0x81))?this['detectedTerminal']=_0x3d8770(0x81):this['detectedTerminal']='cmd';}else process[_0x3d8770(0x170)]==='darwin'?this[_0x3d8770(0x19e)]=_0x3d8770(0x81):this[_0x3d8770(0x19e)]='bash';this['logger']?.[_0x3d8770(0x1bd)](_0x3d8770(0x158),{'platform':this[_0x3d8770(0x122)],'terminal':this[_0x3d8770(0x19e)],'shell':process[_0x3d8770(0x11a)]['SHELL']});}async[a0_0x31829f(0x71)](_0x3b195d,_0x584d15={}){const _0xb6e0a7=a0_0x31829f,_0x1ea2b6=_0x3b195d['trim'](),_0x3620c0=this['analyzeCommandCompatibility'](_0x1ea2b6);this[_0xb6e0a7(0x128)]?.['info'](_0xb6e0a7(0x172),{'command':_0x1ea2b6,'detectedTerminal':_0x3620c0['detectedTerminal'],'commandType':_0x3620c0[_0xb6e0a7(0x8a)],'commandCategory':_0x3620c0[_0xb6e0a7(0xe9)],'compatible':_0x3620c0['compatible'],'issues':_0x3620c0['specificIssues'],'suggestedAction':_0x3620c0['suggestedAction'],'confidence':_0x3620c0['confidence']});if(_0x3620c0[_0xb6e0a7(0x109)])return _0x3b195d;let _0x9749df=null;if(this[_0xb6e0a7(0x19e)]==='cmd')_0x9749df=this[_0xb6e0a7(0x142)](_0x1ea2b6);else{if(this[_0xb6e0a7(0x19e)]==='powershell')_0x9749df=this[_0xb6e0a7(0x94)](_0x1ea2b6);else this[_0xb6e0a7(0x19e)]===_0xb6e0a7(0x81)&&(_0x9749df=this[_0xb6e0a7(0xf7)](_0x1ea2b6));}if(_0x9749df&&this[_0xb6e0a7(0x16f)](_0x1ea2b6))return this[_0xb6e0a7(0x128)]?.['info']('Using\x20simple\x20translation',{'original':_0x3b195d,'translated':_0x9749df,'method':_0xb6e0a7(0xec)}),_0x9749df;if(_0x584d15['aiService']||_0x584d15[_0xb6e0a7(0xaa)]&&_0x584d15[_0xb6e0a7(0x99)]){this[_0xb6e0a7(0x128)]?.['info'](_0xb6e0a7(0x133),{'command':_0x3b195d[_0xb6e0a7(0xbe)](0x0,0x64)+_0xb6e0a7(0x129),'hasAiService':!!_0x584d15[_0xb6e0a7(0xd2)],'hasToolsRegistry':!!_0x584d15['toolsRegistry'],'agentId':_0x584d15[_0xb6e0a7(0x99)]});try{const _0x129fc8=await this['translateCommandWithAI'](_0x3b195d,_0x584d15);if(_0x129fc8&&_0x129fc8[_0xb6e0a7(0x17b)]()!==_0x3b195d[_0xb6e0a7(0x17b)]())return this['logger']?.['info']('Using\x20AI\x20translation',{'original':_0x3b195d,'translated':_0x129fc8,'method':'ai'}),_0x129fc8;else this['logger']?.['warn'](_0xb6e0a7(0xbb),{'original':_0x3b195d,'translated':_0x129fc8});}catch(_0x4cc38e){this[_0xb6e0a7(0x128)]?.[_0xb6e0a7(0x1bc)](_0xb6e0a7(0x118),{'original':_0x3b195d,'error':_0x4cc38e['message'],'stack':_0x4cc38e['stack']});}}else this[_0xb6e0a7(0x128)]?.['warn']('AI\x20translation\x20not\x20available\x20-\x20missing\x20context',{'hasAiService':!!_0x584d15['aiService'],'hasToolsRegistry':!!_0x584d15[_0xb6e0a7(0xaa)],'hasAgentId':!!_0x584d15[_0xb6e0a7(0x99)],'contextKeys':Object[_0xb6e0a7(0x197)](_0x584d15)});return _0x9749df||_0x3b195d;}[a0_0x31829f(0x16f)](_0x1bc2c8){const _0x45d811=a0_0x31829f,_0x198744=_0x1bc2c8['toLowerCase']();if(_0x1bc2c8['includes']('\x5cn')||_0x1bc2c8['includes']('\x5cr')||_0x1bc2c8['includes']('\x5ct'))return![];if(_0x1bc2c8[_0x45d811(0x15a)]('\x0a')||_0x1bc2c8['includes']('\x0d'))return![];if(_0x1bc2c8['includes']('#include')||_0x1bc2c8['includes'](_0x45d811(0x95))||_0x1bc2c8['includes'](_0x45d811(0x110)))return![];if(_0x1bc2c8['includes'](_0x45d811(0x9b))||_0x1bc2c8['includes'](_0x45d811(0x7c))||_0x1bc2c8['includes'](_0x45d811(0xa2)))return![];if(_0x1bc2c8['includes'](_0x45d811(0x100))&&!_0x1bc2c8['includes'](_0x45d811(0x107)))return![];const _0x5f3de1=_0x1bc2c8['match'](/'([^']*)'/);if(_0x5f3de1&&_0x5f3de1[0x1]['length']>0x32)return![];if(this[_0x45d811(0x19e)]===_0x45d811(0x12a)&&_0x1bc2c8['includes']('>')&&_0x1bc2c8[_0x45d811(0x15a)]('/')&&!_0x1bc2c8['includes']('\x5c'))return![];if(_0x1bc2c8[_0x45d811(0x15a)]('\x20&&\x20')||_0x1bc2c8['includes']('\x20||\x20')||_0x1bc2c8['includes'](';\x20'))return![];if(_0x1bc2c8['includes']('$(')||_0x1bc2c8[_0x45d811(0x15a)]('`')||_0x1bc2c8['includes']('{')||_0x1bc2c8['includes']('['))return![];if(_0x198744['includes']('for\x20')||_0x198744[_0x45d811(0x15a)](_0x45d811(0xa7))||_0x198744['includes']('if\x20'))return![];if(_0x198744['includes']('export ')||_0x198744['includes'](_0x45d811(0x143)))return![];if(_0x1bc2c8['includes']('\x20|\x20')||_0x1bc2c8[_0x45d811(0x15a)](_0x45d811(0xc4)))return![];return!![];}async[a0_0x31829f(0x15c)](_0x42a0dc,_0x154fca){const _0x10d2ad=a0_0x31829f;let _0x43d1ea=_0x154fca[_0x10d2ad(0xd2)];if(!_0x43d1ea&&_0x154fca['toolsRegistry']&&_0x154fca['agentId']){const _0x1294f1=_0x154fca['messageProcessor'];_0x1294f1&&_0x1294f1['aiService']&&(_0x43d1ea=_0x1294f1['aiService']);}if(!_0x43d1ea)throw new Error(_0x10d2ad(0x14f));const _0x4c5d6a=this['buildTranslationPrompt'](_0x42a0dc),_0x1f429d=_0x10d2ad(0xb7);try{const _0x19ffd1=await _0x43d1ea['sendMessage'](_0x1f429d,_0x4c5d6a,{'agentId':_0x154fca['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x154fca[_0x10d2ad(0x84)],'customApiKeys':_0x154fca[_0x10d2ad(0x7d)],'platformProvided':_0x154fca['platformProvided']}),_0x4b4a34=this['extractTranslatedCommand'](_0x19ffd1[_0x10d2ad(0x169)]);return this['logger']?.[_0x10d2ad(0x77)]('AI\x20command\x20translation\x20completed',{'original':_0x42a0dc,'translated':_0x4b4a34,'model':_0x1f429d,'terminal':this[_0x10d2ad(0x19e)]}),_0x4b4a34;}catch(_0x1e62ef){this['logger']?.[_0x10d2ad(0x136)](_0x10d2ad(0x141),{'command':_0x42a0dc,'terminal':this[_0x10d2ad(0x19e)],'error':_0x1e62ef[_0x10d2ad(0x1ad)]});throw _0x1e62ef;}}[a0_0x31829f(0xd3)](_0x4d9a61){const _0x451dee=a0_0x31829f,_0x3b5cd1={'cmd':'Windows\x20Command\x20Prompt\x20(cmd.exe)','powershell':'Windows\x20PowerShell','bash':_0x451dee(0x1a5)},_0x491afc=_0x3b5cd1[this[_0x451dee(0x19e)]]||this['detectedTerminal'],_0xfd8ba9=this['analyzeCommandCompatibility'](_0x4d9a61);let _0x557072='Translate\x20this\x20command\x20to\x20work\x20correctly\x20in\x20'+_0x491afc+_0x451dee(0x18f)+_0x4d9a61+'\x0a```\x0a\x0aCOMMAND\x20ANALYSIS:\x0a-\x20Command\x20Type:\x20'+_0xfd8ba9[_0x451dee(0x8a)]+_0x451dee(0xd5)+_0xfd8ba9['commandCategory']+_0x451dee(0x186)+_0x491afc+_0x451dee(0xeb)+(_0xfd8ba9[_0x451dee(0x171)][_0x451dee(0x114)](',\x20')||'None\x20detected');return _0xfd8ba9['commandType']==='unix'&&_0xfd8ba9['alternatives']&&_0xfd8ba9['alternatives'][this[_0x451dee(0x19e)]]&&(_0x557072+=_0x451dee(0xf2)+_0xfd8ba9['alternatives'][this['detectedTerminal']]),_0x557072+='\x0a\x0aREQUIREMENTS:\x0a1.\x20Make\x20the\x20command\x20work\x20correctly\x20in\x20'+_0x491afc+'\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:',_0x557072;}['extractTranslatedCommand'](_0x2db8f2){const _0x2cd5eb=a0_0x31829f;let _0x519222=_0x2db8f2[_0x2cd5eb(0xfe)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x519222=_0x519222[_0x2cd5eb(0xfe)](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x4559cc=_0x519222[_0x2cd5eb(0x17b)]()['split']('\x0a');return _0x4559cc[_0x2cd5eb(0x7b)]>0x1&&!_0x519222[_0x2cd5eb(0x15a)]('&&')&&!_0x519222[_0x2cd5eb(0x15a)]('||')&&(_0x519222=_0x4559cc[0x0][_0x2cd5eb(0x17b)]()),_0x519222['trim']();}[a0_0x31829f(0x1a6)](_0x455fbb){const _0x57b58d=a0_0x31829f,_0x14dcea=this[_0x57b58d(0x10d)](_0x455fbb),_0x14451b=this['isCommandCompatibleWithTerminal'](_0x14dcea,this[_0x57b58d(0x19e)]);return{'compatible':_0x14451b,'detectedTerminal':this['detectedTerminal'],'commandType':_0x14dcea['type'],'commandCategory':_0x14dcea[_0x57b58d(0x10a)],'specificIssues':_0x14dcea[_0x57b58d(0xa0)],'suggestedAction':_0x14451b?_0x57b58d(0xf0):'translate','confidence':_0x14dcea[_0x57b58d(0x119)]};}[a0_0x31829f(0xc7)](_0x4f63bb){const _0x234557=a0_0x31829f;return this[_0x234557(0x1a6)](_0x4f63bb)['compatible'];}['classifyCommand'](_0xadcf88){const _0x180f94=a0_0x31829f,_0x572b35=_0xadcf88['toLowerCase']()[_0x180f94(0x17b)](),_0x231394=_0x572b35[_0x180f94(0x12d)]('\x20')[0x0],_0x3598e3=[];let _0xeb9830=0.9;const _0x57f97b={'ls':{'category':'file-listing','alternatives':{'cmd':'dir','powershell':_0x180f94(0x1b0)}},'cat':{'category':_0x180f94(0x17e),'alternatives':{'cmd':_0x180f94(0x177),'powershell':'Get-Content'}},'grep':{'category':_0x180f94(0x12c),'alternatives':{'cmd':'findstr','powershell':'Select-String'}},'find':{'category':_0x180f94(0x8d),'alternatives':{'cmd':_0x180f94(0x161),'powershell':'Get-ChildItem\x20-Recurse'}},'head':{'category':_0x180f94(0x17e),'alternatives':{'cmd':'more','powershell':'Get-Content\x20-Head'}},'tail':{'category':_0x180f94(0x17e),'alternatives':{'cmd':'more\x20+n','powershell':'Get-Content\x20-Tail'}},'wc':{'category':_0x180f94(0xb4),'alternatives':{'cmd':_0x180f94(0xf3),'powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':'copy','powershell':_0x180f94(0x185)}},'mv':{'category':'file-move','alternatives':{'cmd':_0x180f94(0xb2),'powershell':'Move-Item'}},'rm':{'category':'file-delete','alternatives':{'cmd':'del','powershell':_0x180f94(0xcd)}},'mkdir':{'category':_0x180f94(0x18e),'alternatives':{'cmd':_0x180f94(0xcb),'powershell':'New-Item\x20-Type\x20Directory'}},'rmdir':{'category':_0x180f94(0x1b3),'alternatives':{'cmd':'rmdir','powershell':'Remove-Item'}},'touch':{'category':'file-create','alternatives':{'cmd':'type\x20nul\x20>','powershell':'New-Item\x20-Type\x20File'}},'chmod':{'category':_0x180f94(0x194),'alternatives':{'cmd':_0x180f94(0x127),'powershell':'Set-Acl'}},'chown':{'category':'ownership','alternatives':{'cmd':'takeown','powershell':'Set-Acl'}},'ps':{'category':'process-list','alternatives':{'cmd':'tasklist','powershell':'Get-Process'}},'kill':{'category':'process-kill','alternatives':{'cmd':_0x180f94(0x116),'powershell':_0x180f94(0xaf)}},'killall':{'category':'process-kill','alternatives':{'cmd':'taskkill\x20/f\x20/im','powershell':_0x180f94(0x17a)}},'top':{'category':_0x180f94(0xc8),'alternatives':{'cmd':_0x180f94(0xe2),'powershell':_0x180f94(0x124)}},'wget':{'category':'download','alternatives':{'cmd':'curl','powershell':'Invoke-WebRequest'}},'curl':{'category':_0x180f94(0x16d),'alternatives':{'cmd':_0x180f94(0x15d),'powershell':_0x180f94(0x151)}},'ping':{'category':_0x180f94(0x167),'alternatives':{'cmd':_0x180f94(0x15e),'powershell':'Test-NetConnection'}},'awk':{'category':'text-processing','alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':_0x180f94(0x13e),'alternatives':{'cmd':'powershell\x20-c','powershell':_0x180f94(0xd7)}},'sort':{'category':'text-sort','alternatives':{'cmd':'sort','powershell':_0x180f94(0x105)}},'uniq':{'category':_0x180f94(0x1aa),'alternatives':{'cmd':'sort\x20/unique','powershell':_0x180f94(0x12f)}},'pwd':{'category':'directory-current','alternatives':{'cmd':'cd','powershell':'Get-Location'}},'whoami':{'category':_0x180f94(0xf1),'alternatives':{'cmd':_0x180f94(0x9a),'powershell':'whoami'}},'env':{'category':'environment','alternatives':{'cmd':'set','powershell':'Get-ChildItem\x20Env:'}},'export':{'category':'environment','alternatives':{'cmd':_0x180f94(0x11e),'powershell':'$env:'}},'source':{'category':_0x180f94(0x10b),'alternatives':{'cmd':'call','powershell':'.\x20'}},'tar':{'category':'archive','alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':_0x180f94(0xd1),'alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0x180f94(0x152)}},'unzip':{'category':'archive','alternatives':{'cmd':'powershell\x20Expand-Archive','powershell':_0x180f94(0x92)}},'df':{'category':_0x180f94(0xf6),'alternatives':{'cmd':_0x180f94(0xa5),'powershell':_0x180f94(0xf9)}},'du':{'category':_0x180f94(0x103),'alternatives':{'cmd':'dir\x20/s','powershell':_0x180f94(0xfd)}},'free':{'category':'memory-info','alternatives':{'cmd':_0x180f94(0x16c),'powershell':'Get-WmiObject\x20-Class\x20Win32_PhysicalMemory'}},'uname':{'category':'system-info','alternatives':{'cmd':'systeminfo','powershell':'Get-ComputerInfo'}}},_0x1670c3={'dir':{'category':_0x180f94(0x160),'alternatives':{'unix':'ls','powershell':_0x180f94(0x1b0)}},'type':{'category':_0x180f94(0x17e),'alternatives':{'unix':'cat','powershell':_0x180f94(0x80)}},'copy':{'category':_0x180f94(0x104),'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':'process-list','alternatives':{'unix':'ps','powershell':'Get-Process'}},'taskkill':{'category':_0x180f94(0xdd),'alternatives':{'unix':_0x180f94(0x101),'powershell':'Stop-Process'}},'findstr':{'category':'text-search','alternatives':{'unix':'grep','powershell':_0x180f94(0x6a)}}},_0x446996={'get-childitem':{'category':'file-listing','alternatives':{'unix':'ls','cmd':'dir'}},'get-content':{'category':'file-viewing','alternatives':{'unix':'cat','cmd':_0x180f94(0x177)}},'copy-item':{'category':_0x180f94(0x104),'alternatives':{'unix':'cp','cmd':'copy'}},'move-item':{'category':'file-move','alternatives':{'unix':'mv','cmd':_0x180f94(0xb2)}},'remove-item':{'category':_0x180f94(0x83),'alternatives':{'unix':'rm','cmd':_0x180f94(0x1b1)}},'get-process':{'category':_0x180f94(0x13b),'alternatives':{'unix':'ps','cmd':_0x180f94(0xe2)}},'stop-process':{'category':'process-kill','alternatives':{'unix':_0x180f94(0x101),'cmd':_0x180f94(0x116)}}};let _0x58dafb=_0x180f94(0x1ae),_0xf02a4=_0x180f94(0x1ae),_0x151eb8={};if(_0x57f97b[_0x231394])_0x58dafb=_0x180f94(0xee),_0xf02a4=_0x57f97b[_0x231394]['category'],_0x151eb8=_0x57f97b[_0x231394][_0x180f94(0x188)];else{if(_0x1670c3[_0x231394])_0x58dafb=_0x180f94(0x106),_0xf02a4=_0x1670c3[_0x231394]['category'],_0x151eb8=_0x1670c3[_0x231394][_0x180f94(0x188)];else{if(_0x446996[_0x231394])_0x58dafb='powershell',_0xf02a4=_0x446996[_0x231394]['category'],_0x151eb8=_0x446996[_0x231394][_0x180f94(0x188)];else{const _0xa6c2fc=['echo','cd','exit','help'];_0xa6c2fc[_0x180f94(0x15a)](_0x231394)?(_0x58dafb=_0x180f94(0x96),_0xf02a4='builtin'):(_0x58dafb=_0x180f94(0x1ae),_0xeb9830=0.3);}}}return _0xadcf88['includes']('\x27')&&!_0xadcf88[_0x180f94(0x15a)]('\x22')&&_0x3598e3['push'](_0x180f94(0xa6)),_0xadcf88['includes']('/')&&!_0xadcf88['includes']('\x5c')&&!_0xadcf88[_0x180f94(0x15a)]('http')&&_0xadcf88[_0x180f94(0x15a)]('>')&&_0x3598e3[_0x180f94(0x157)]('unix-style-paths'),(_0xadcf88[_0x180f94(0x15a)]('\x5cn')||_0xadcf88[_0x180f94(0x15a)]('\x5ct'))&&_0x3598e3[_0x180f94(0x157)]('escape-sequences'),(_0xadcf88[_0x180f94(0x15a)](_0x180f94(0xe1))||_0xadcf88['includes']('\x20||\x20')||_0xadcf88[_0x180f94(0x15a)](';'))&&_0x3598e3[_0x180f94(0x157)](_0x180f94(0x18a)),{'type':_0x58dafb,'category':_0xf02a4,'alternatives':_0x151eb8,'issues':_0x3598e3,'confidence':_0xeb9830,'firstWord':_0x231394,'fullCommand':_0xadcf88};}['isCommandCompatibleWithTerminal'](_0x3514ed,_0x292e03){const _0x32a4ac=a0_0x31829f;switch(_0x292e03){case'cmd':if(_0x3514ed['type']===_0x32a4ac(0xee))return![];if(_0x3514ed['issues'][_0x32a4ac(0x15a)]('single-quotes-problematic'))return![];if(_0x3514ed['issues'][_0x32a4ac(0x15a)](_0x32a4ac(0x1a2)))return![];return _0x3514ed[_0x32a4ac(0x177)]==='windows-cmd'||_0x3514ed['type']==='universal';case _0x32a4ac(0x153):if(_0x3514ed[_0x32a4ac(0x177)]==='unix'&&!_0x3514ed['alternatives']['powershell'])return![];return!![];case'bash':if(_0x3514ed['type']===_0x32a4ac(0x106))return![];return _0x3514ed['type']==='unix'||_0x3514ed['type']==='universal';default:return![];}}[a0_0x31829f(0x142)](_0x2dbb04){const _0x4003b2=a0_0x31829f;let _0x31179d=_0x2dbb04;const _0x4a5240=new Map([[/^ls\s*$/,_0x4003b2(0xfc)],[/^ls\s+-la?$/,'dir'],[/^ls\s+-l$/,'dir'],[/^ls\s+-a$/,_0x4003b2(0x1a4)],[/^cat\s+(.+)$/,'type\x20$1'],[/^cp\s+(.+)\s+(.+)$/,'copy\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x4003b2(0x9f)],[/^rm\s+(.+)$/,_0x4003b2(0xda)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,_0x4003b2(0xd8)],[/^ps\s*$/,_0x4003b2(0xe2)],[/^kill\s+(.+)$/,'taskkill\x20/PID\x20$1'],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,'echo\x20%USERNAME%'],[/^ping\s+(.+)$/,_0x4003b2(0x191)],[/^wget\s+(.+)$/,_0x4003b2(0x97)],[/^curl\s+(.+)$/,'curl\x20$1']]);for(const [_0x11bca7,_0xf8e4e4]of _0x4a5240){if(_0x11bca7[_0x4003b2(0x163)](_0x31179d)){_0x31179d=_0x31179d['replace'](_0x11bca7,_0xf8e4e4);break;}}_0x31179d=_0x31179d[_0x4003b2(0xfe)](/echo\s+'([^']+)'\s*>/g,_0x4003b2(0x155)),_0x31179d=_0x31179d[_0x4003b2(0xfe)](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x31179d['includes']('echo\x20\x27')&&_0x31179d['includes']('\x5cn')){const _0x1041d8=_0x31179d[_0x4003b2(0x176)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x1041d8){const _0x22a369=_0x1041d8[0x1]['replace'](/\\n/g,'\x0a'),_0x26b8cd=_0x1041d8[0x2],_0x1cac72=_0x22a369[_0x4003b2(0x12d)]('\x0a');_0x31179d='('+_0x1cac72[_0x4003b2(0xa8)](_0x509f48=>'echo\x20'+_0x509f48)['join'](_0x4003b2(0x180))+_0x4003b2(0xb3)+_0x26b8cd;}}return this['logger']?.[_0x4003b2(0x1bd)](_0x4003b2(0x16b),{'original':_0x2dbb04,'translated':_0x31179d}),_0x31179d;}['translateToPowerShell'](_0x1324ab){const _0x510503=a0_0x31829f;let _0x59c827=_0x1324ab;const _0x52b793=new Map([[/^ls\s*$/,'Get-ChildItem'],[/^ls\s+-la?$/,'Get-ChildItem\x20-Force'],[/^cat\s+(.+)$/,_0x510503(0xd9)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x510503(0x195)],[/^rm\s+(.+)$/,'Remove-Item\x20$1'],[/^pwd\s*$/,_0x510503(0x12e)],[/^ps\s*$/,_0x510503(0x86)]]);for(const [_0x10fad2,_0x4462a0]of _0x52b793){if(_0x10fad2[_0x510503(0x163)](_0x59c827)){_0x59c827=_0x59c827[_0x510503(0xfe)](_0x10fad2,_0x4462a0);break;}}return this['logger']?.['info']('Command\x20translated\x20for\x20PowerShell',{'original':_0x1324ab,'translated':_0x59c827}),_0x59c827;}[a0_0x31829f(0xf7)](_0xb0ea){const _0x358a29=a0_0x31829f;let _0x236c1e=_0xb0ea;const _0x17970b=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x358a29(0x7f)],[/^type\s+(.+)$/,_0x358a29(0xca)],[/^copy\s+(.+)\s+(.+)$/,'cp\x20$1\x20$2'],[/^move\s+(.+)\s+(.+)$/,'mv\x20$1\x20$2'],[/^del\s+(.+)$/,_0x358a29(0x181)],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,_0x358a29(0x1ba)]]);for(const [_0x21f5ea,_0x14d06e]of _0x17970b){if(_0x21f5ea['test'](_0x236c1e)){_0x236c1e=_0x236c1e[_0x358a29(0xfe)](_0x21f5ea,_0x14d06e);break;}}return _0x236c1e;}async[a0_0x31829f(0xa9)](_0xaa360e){}async['startBackgroundCommand'](_0x1d6f99,_0x44391e,_0x399370={}){const _0x3f4967=a0_0x31829f,{agentId:_0x1906ef,context:_0x53e704}=_0x399370;if(!_0x1906ef)throw new Error(_0x3f4967(0x18d));const _0x451b72=this['getAgentCommands'](_0x1906ef),_0x136143=_0x451b72[_0x3f4967(0xd4)](_0x1fe1d3=>_0x1fe1d3[_0x3f4967(0x17f)]==='running'||_0x1fe1d3[_0x3f4967(0x17f)]==='waiting_for_input');if(_0x136143['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error(_0x3f4967(0x8f)+this[_0x3f4967(0xa4)]+')');const _0x486607=Array['from'](this[_0x3f4967(0x130)][_0x3f4967(0xea)]()),_0x3fadf2=_0x486607['filter'](_0x4f8a9b=>_0x4f8a9b['state']==='running'||_0x4f8a9b['state']===_0x3f4967(0x149));if(_0x3fadf2[_0x3f4967(0x7b)]>=this['MAX_BACKGROUND_COMMANDS_GLOBAL'])throw new Error('Maximum\x20global\x20background\x20commands\x20exceeded\x20('+this[_0x3f4967(0x19a)]+')');const _0x864025=_0x1906ef+'-cmd-'+Date['now']()+'-'+ ++this['commandIdCounter'],_0x319bbd=_0x1d6f99;let _0x3a55a7;try{_0x3a55a7=await this[_0x3f4967(0x71)](_0x1d6f99,{'agentId':_0x1906ef,'toolsRegistry':_0x53e704?.['toolsRegistry'],'messageProcessor':_0x53e704?.['messageProcessor'],'aiService':_0x53e704?.[_0x3f4967(0xd2)],'apiKey':_0x53e704?.[_0x3f4967(0x84)],'customApiKeys':_0x53e704?.[_0x3f4967(0x7d)],'platformProvided':_0x53e704?.['platformProvided']});}catch(_0x29858e){this[_0x3f4967(0x128)]?.['warn'](_0x3f4967(0x17c),{'originalCommand':_0x319bbd,'error':_0x29858e['message']}),_0x3a55a7=_0x1d6f99;}this[_0x3f4967(0x128)]?.['info']('Starting\x20background\x20command:\x20'+_0x3a55a7,{'commandId':_0x864025,'agentId':_0x1906ef,'originalCommand':_0x319bbd,'workingDirectory':_0x44391e});let _0x1a7545;if(this['detectedTerminal']===_0x3f4967(0x12a)||this[_0x3f4967(0x19e)]===_0x3f4967(0x153)){const _0x33fdd1=this[_0x3f4967(0x19e)]==='powershell'?_0x3f4967(0x153):_0x3f4967(0x12a),_0x2ca071=this['detectedTerminal']===_0x3f4967(0x153)?[_0x3f4967(0x82),_0x3a55a7]:['/c',_0x3a55a7];_0x1a7545=spawn(_0x33fdd1,_0x2ca071,{'cwd':_0x44391e,'env':{...process[_0x3f4967(0x11a)]},'windowsHide':!![],'stdio':[_0x3f4967(0x132),'pipe',_0x3f4967(0x132)]});}else _0x1a7545=spawn('sh',['-c',_0x3a55a7],{'cwd':_0x44391e,'env':{...process['env']},'stdio':['pipe',_0x3f4967(0x132),'pipe']});const _0x593984={'commandId':_0x864025,'agentId':_0x1906ef,'pid':_0x1a7545['pid'],'command':_0x319bbd,'translatedCommand':_0x3a55a7,'workingDirectory':_0x44391e,'startTime':new Date()['toISOString'](),'state':_0x3f4967(0x150),'exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date['now'](),'promptDetected':null,'process':_0x1a7545};return this[_0x3f4967(0x130)][_0x3f4967(0x11e)](_0x864025,_0x593984),_0x1a7545[_0x3f4967(0x135)]['on']('data',_0x55e861=>{const _0x4b54d1=_0x3f4967,_0x4a7083=_0x55e861['toString']();_0x593984[_0x4b54d1(0x9e)]+=_0x4a7083,_0x593984['lastOutputTime']=Date['now']();if(!_0x593984['promptDetected']){const _0x2c06b6=this[_0x4b54d1(0xcf)]['detectPrompt'](_0x593984['stdoutBuffer'],'stdout');_0x2c06b6&&(_0x593984[_0x4b54d1(0xb5)]=_0x2c06b6,_0x593984['state']=_0x4b54d1(0x149),this['logger']?.[_0x4b54d1(0x1bd)]('Prompt\x20detected\x20in\x20background\x20command',{'commandId':_0x864025,'agentId':_0x1906ef,'type':_0x2c06b6[_0x4b54d1(0x177)],'matchedText':_0x2c06b6[_0x4b54d1(0x6b)]}));}}),_0x1a7545[_0x3f4967(0x11b)]['on']('data',_0x483c60=>{const _0x5661ce=_0x3f4967,_0x14e943=_0x483c60['toString']();_0x593984[_0x5661ce(0x87)]+=_0x14e943,_0x593984[_0x5661ce(0x78)]=Date['now']();if(!_0x593984[_0x5661ce(0xb5)]){const _0x43a7e8=this[_0x5661ce(0xcf)]['detectPrompt'](_0x593984[_0x5661ce(0x87)],_0x5661ce(0x11b));_0x43a7e8&&(_0x593984['promptDetected']=_0x43a7e8,_0x593984[_0x5661ce(0x17f)]=_0x5661ce(0x149),this[_0x5661ce(0x128)]?.[_0x5661ce(0x1bd)]('Prompt\x20detected\x20in\x20background\x20command\x20stderr',{'commandId':_0x864025,'agentId':_0x1906ef,'type':_0x43a7e8['type'],'matchedText':_0x43a7e8[_0x5661ce(0x6b)]}));}}),_0x1a7545['on']('exit',(_0x13ba2a,_0x7fc91b)=>{const _0x2ad3b0=_0x3f4967;_0x593984[_0x2ad3b0(0x182)]=_0x13ba2a,_0x593984[_0x2ad3b0(0x17f)]=_0x13ba2a===0x0?'completed':'failed',_0x593984[_0x2ad3b0(0x74)]=new Date()[_0x2ad3b0(0x1ac)](),this['logger']?.[_0x2ad3b0(0x1bd)]('Background\x20command\x20exited',{'commandId':_0x864025,'agentId':_0x1906ef,'exitCode':_0x13ba2a,'signal':_0x7fc91b,'state':_0x593984['state']});}),_0x1a7545['on'](_0x3f4967(0x136),_0x8cbaf1=>{const _0x5337cd=_0x3f4967;_0x593984[_0x5337cd(0x17f)]=_0x5337cd(0x7a),_0x593984['error']=_0x8cbaf1['message'],_0x593984[_0x5337cd(0x74)]=new Date()[_0x5337cd(0x1ac)](),this['logger']?.['error']('Background\x20command\x20error',{'commandId':_0x864025,'agentId':_0x1906ef,'error':_0x8cbaf1['message']});}),{'success':!![],'commandId':_0x864025,'pid':_0x1a7545[_0x3f4967(0x11d)],'command':_0x319bbd,'translatedCommand':_0x3a55a7,'workingDirectory':_0x44391e,'message':_0x3f4967(0x16e)+_0x864025};}[a0_0x31829f(0x1a1)](_0x149188,_0x50b41c,_0x40977a){const _0x421bcc=a0_0x31829f,_0x11efc5=this[_0x421bcc(0xe7)](_0x149188,_0x40977a);if(_0x11efc5['state']===_0x421bcc(0xe3)||_0x11efc5['state']==='failed')throw new Error('Cannot\x20send\x20input\x20to\x20'+_0x11efc5['state']+_0x421bcc(0xf5));if(!_0x11efc5[_0x421bcc(0xe6)]||_0x11efc5[_0x421bcc(0xe6)]['killed'])throw new Error(_0x421bcc(0x113));const _0xaeab53=_0x50b41c[_0x421bcc(0x89)]('\x0a')?_0x50b41c:_0x50b41c+'\x0a';return _0x11efc5['process'][_0x421bcc(0xe8)]['write'](_0xaeab53),this['logger']?.['info']('Input\x20sent\x20to\x20background\x20command',{'commandId':_0x149188,'agentId':_0x40977a,'inputLength':_0x50b41c[_0x421bcc(0x7b)]}),_0x11efc5[_0x421bcc(0x17f)]===_0x421bcc(0x149)&&(_0x11efc5['state']=_0x421bcc(0x150),_0x11efc5['promptDetected']=null),{'success':!![],'commandId':_0x149188,'message':'Input\x20sent\x20successfully'};}['getCommandStatus'](_0x1aae6a,_0x2ae010){const _0x1a477f=a0_0x31829f,_0x3f7993=this['validateCommandOwnership'](_0x1aae6a,_0x2ae010),_0x2f5611=Date['now']()-_0x3f7993[_0x1a477f(0x78)];return{'success':!![],'commandId':_0x1aae6a,'pid':_0x3f7993['pid'],'command':_0x3f7993['command'],'state':_0x3f7993['state'],'exitCode':_0x3f7993['exitCode'],'startTime':_0x3f7993['startTime'],'endTime':_0x3f7993[_0x1a477f(0x74)],'workingDirectory':_0x3f7993['workingDirectory'],'stdout':_0x3f7993['stdoutBuffer'],'stderr':_0x3f7993['stderrBuffer'],'stdoutLength':_0x3f7993[_0x1a477f(0x9e)][_0x1a477f(0x7b)],'stderrLength':_0x3f7993['stderrBuffer'][_0x1a477f(0x7b)],'lastOutputTime':_0x3f7993['lastOutputTime'],'timeSinceLastOutput':_0x2f5611,'promptDetected':!!_0x3f7993['promptDetected'],'promptInfo':_0x3f7993[_0x1a477f(0xb5)]||undefined};}[a0_0x31829f(0xc1)](_0x8409b,_0x3a3e6c){const _0x8b386=a0_0x31829f,_0x21670a=this[_0x8b386(0xe7)](_0x8409b,_0x3a3e6c);if(_0x21670a['state']==='completed'||_0x21670a['state']==='failed')return{'success':!![],'commandId':_0x8409b,'message':_0x8b386(0xd6),'state':_0x21670a[_0x8b386(0x17f)]};if(_0x21670a['process']&&!_0x21670a[_0x8b386(0xe6)][_0x8b386(0x9d)])return _0x21670a[_0x8b386(0xe6)]['kill']('SIGTERM'),setTimeout(()=>{const _0x36ac0d=_0x8b386;_0x21670a[_0x36ac0d(0xe6)]&&!_0x21670a[_0x36ac0d(0xe6)]['killed']&&_0x21670a['process']['kill']('SIGKILL');},0x1388),this['logger']?.['info']('Background\x20command\x20killed',{'commandId':_0x8409b,'agentId':_0x3a3e6c}),{'success':!![],'commandId':_0x8409b,'message':_0x8b386(0x192)};return{'success':![],'commandId':_0x8409b,'error':_0x8b386(0x19b)};}['listAgentCommands'](_0x29f7a9){const _0x55b4fd=a0_0x31829f,_0x3d1119=this[_0x55b4fd(0x178)](_0x29f7a9);return _0x3d1119[_0x55b4fd(0xa8)](_0x82e91c=>({'commandId':_0x82e91c[_0x55b4fd(0xcc)],'command':_0x82e91c[_0x55b4fd(0xe5)],'state':_0x82e91c['state'],'pid':_0x82e91c['pid'],'exitCode':_0x82e91c['exitCode'],'startTime':_0x82e91c[_0x55b4fd(0x14a)],'endTime':_0x82e91c['endTime'],'promptDetected':!!_0x82e91c[_0x55b4fd(0xb5)],'timeSinceLastOutput':Date[_0x55b4fd(0x148)]()-_0x82e91c['lastOutputTime']}));}[a0_0x31829f(0x178)](_0x5d328e){const _0x27a3dc=a0_0x31829f;return Array['from'](this[_0x27a3dc(0x130)]['values']())[_0x27a3dc(0xd4)](_0x3e69c9=>_0x3e69c9[_0x27a3dc(0x99)]===_0x5d328e);}['validateCommandOwnership'](_0x4d9dcb,_0x39b604){const _0x168e9d=a0_0x31829f,_0x32dedd=this[_0x168e9d(0x130)]['get'](_0x4d9dcb);if(!_0x32dedd)throw new Error(_0x168e9d(0x154)+_0x4d9dcb);if(_0x32dedd[_0x168e9d(0x99)]!==_0x39b604)throw new Error(_0x168e9d(0x115)+_0x32dedd['agentId']);return _0x32dedd;}async[a0_0x31829f(0x14b)](_0x282d31){const _0x186cc2=a0_0x31829f,_0x21f3d0=this['getAgentCommands'](_0x282d31);let _0x2e27dc=0x0,_0xcf21c=0x0;for(const _0x2ca312 of _0x21f3d0){_0x2ca312['process']&&!_0x2ca312[_0x186cc2(0xe6)][_0x186cc2(0x9d)]&&(_0x2ca312[_0x186cc2(0xe6)]['kill'](_0x186cc2(0x165)),_0x2e27dc++,setTimeout(()=>{const _0x543c60=_0x186cc2;_0x2ca312['process']&&!_0x2ca312[_0x543c60(0xe6)][_0x543c60(0x9d)]&&_0x2ca312['process'][_0x543c60(0x101)]('SIGKILL');},0xbb8)),this[_0x186cc2(0x130)]['delete'](_0x2ca312[_0x186cc2(0xcc)]),_0xcf21c++;}return this['logger']?.['info'](_0x186cc2(0x193),{'agentId':_0x282d31,'killedCount':_0x2e27dc,'removedCount':_0xcf21c}),{'success':!![],'agentId':_0x282d31,'killedCount':_0x2e27dc,'removedCount':_0xcf21c,'message':'Cleaned\x20up\x20'+_0xcf21c+_0x186cc2(0xb6)+_0x282d31};}[a0_0x31829f(0x1b5)](){const _0x4acf11=a0_0x31829f,_0x38aef5=Date[_0x4acf11(0x148)]();let _0x5763be=0x0;for(const [_0x429cf9,_0x54f794]of this[_0x4acf11(0x130)]['entries']()){if(_0x54f794[_0x4acf11(0x17f)]!==_0x4acf11(0xe3)&&_0x54f794['state']!=='failed')continue;const _0x22f970=new Date(_0x54f794['startTime'])[_0x4acf11(0x1a7)](),_0x528a4c=(_0x38aef5-_0x22f970)/0x3e8/0x3c;_0x528a4c>this[_0x4acf11(0x6c)]&&(this[_0x4acf11(0x130)][_0x4acf11(0x13d)](_0x429cf9),_0x5763be++);}return _0x5763be>0x0&&this['logger']?.[_0x4acf11(0x1bd)](_0x4acf11(0x15b),{'removedCount':_0x5763be,'ageThresholdMinutes':this[_0x4acf11(0x6c)]}),{'success':!![],'removedCount':_0x5763be,'message':'Cleaned\x20up\x20'+_0x5763be+'\x20stale\x20commands'};}}export default TerminalTool;
|