@loxia-labs/loxia-autopilot-one 1.0.9 → 1.0.11
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-BzXbDs8z.js → index-C5X7qBNF.js} +63 -63
- package/web-ui/build/static/index-g2UFuTwG.css +1 -0
- package/web-ui/build/static/index-BmKxmRe3.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2f90c3=a0_0x1f92;(function(_0x5b5f66,_0x1c9369){const _0x1e9d51=a0_0x1f92,_0x37afc7=_0x5b5f66();while(!![]){try{const _0xae25a4=parseInt(_0x1e9d51(0x103))/0x1+parseInt(_0x1e9d51(0x1d0))/0x2+-parseInt(_0x1e9d51(0x225))/0x3+parseInt(_0x1e9d51(0x133))/0x4+-parseInt(_0x1e9d51(0x13d))/0x5+-parseInt(_0x1e9d51(0x19b))/0x6+parseInt(_0x1e9d51(0x23f))/0x7;if(_0xae25a4===_0x1c9369)break;else _0x37afc7['push'](_0x37afc7['shift']());}catch(_0x14a93e){_0x37afc7['push'](_0x37afc7['shift']());}}}(a0_0x4bfa,0x5b5b6));import{BaseTool}from'./baseTool.js';import a0_0x43ba40 from'../utilities/tagParser.js';import a0_0x2b5068 from'../utilities/directoryAccessManager.js';function a0_0x4bfa(){const _0x3e3315=['DMfSAwrHDgvszwfKqwnJzxnZ','y3vYBa','zMLUzhn0CG','CgXHDgzVCM1qCM92AwrLza','y29TCgf0AwjSzq','q29UDgLUDwuGChjVBxb0','C3LZDgvTlwLUzM8','A2v5CW','CgLUzYaKmq','yMXVy2TLzenVBw1HBMrZ','C3rHDgu','y2XLyxjxB3jRAw5NrgLYzwn0B3j5','Dw5PEc1ZDhLSzs1WyxrOCW','DMfSDwvZ','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','ndm4nZiYmKHOsNLvzG','y2f0zwDVCNK','DhjHBNnSyxrL','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','uhjLC3mGyw55igTLEq','C2vUze1LC3nHz2u','r2v0luXVy2f0Aw9U','y29UDgLUDwu','zgLYic9Z','Dw5RBM93BG','C3vIC3rYAw5N','A2LSBa','zgLYic9H','vgvZDc1ozxrdB25Uzwn0Aw9U','yxbPs2v5','zgvS','q29TChjLC3mTqxjJAgL2zq','rM9YrwfJAc1pyMPLy3q','y29TBwfUzfrYywnRzxi','ihX8ia','DhjHBNnSyxrLq29TBwfUza','nZKXmJLZAuTzBNq','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSihbHCMfTzxrLCNm6ia','zxjYB3i','ywXSB3DLzenVBw1HBMrZ','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','EwvZlw5V','cI0GvgfYz2v0ifrLCM1PBMfSoIa','tw92zs1jDgvT','rMfPBgvKihrVignOyw5NzsbKAxjLy3rVCNKGDg8G','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','CMvIB290','yxjJAgL2zq','r2v0lunVBxb1DgvYsw5MBW','vxnPBMCGquKGDhjHBNnSyxrPB24','u2vSzwn0lvn0CMLUzW','C2nYAxb0lwv4zwn1Dgu','u0Lhs0Lmta','r2v0lunOAwXKsxrLBq','zgv0zwn0uhjVBxb0','y29TBwfUzenHDgvNB3j5','AM9PBG','y29UzMLKzw5Jzq','D29YA2LUz0rPCMvJDg9YAwvZ','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zgfYD2LU','ihWG','C3vJy2vZCW','y3vZDg9TqxbPs2v5CW','zM9Yic9M','r2v0lvbYB2nLC3m','y2XLyw51Cfn0ywXLq29TBwfUzhm','z2v0u3vWCg9YDgvKqwn0Aw9UCW','ChDK','cJiUifbYzxnLCNzLihrOzsbVCMLNAw5HBcbPBNrLBNqGyw5Kigz1BMn0Aw9UywXPDhKkmY4GsgfUzgXLigzPBguGCgf0AhmSihf1B3rPBMCSigfUzcbZEw50yxGGy29YCMvJDgX5cJqUieLMignYzwf0Aw5NigzPBgvZlcbLBNn1CMuGChjVCgvYigvUy29KAw5NigfUzcbSAw5LigvUzgLUz3mkns4GqwrKCMvZCYb0AguGC3bLy2LMAwmGy29TCgf0AwjPBgL0EsbPC3n1zxmGAwrLBNrPzMLLzcbHyM92zqO2lIbszxr1CM4Gt05mwsb0AguGDhjHBNnSyxrLzcbJB21Tyw5KlcbUB3rOAw5NigvSC2ukcLrsqu5ttefuruqGq09ntufordO','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPcqunlr1jpvu5eienptu1btKqGtufoquDftuvovcaOqwr2yw5JzwqPoGPgB3iGBg9UzY1YDw5UAw5NignVBw1HBMrZicHUCg0GAw5ZDgfSBcWGz2L0ig9WzxjHDgLVBNmSigj1AwXKCYKSihvZzsbIywnRz3jVDw5KignVBw1HBMqGDhjHy2TPBMC6cGOQkNn0yxj0qMfJA2DYB3vUzenVBw1HBMqOy29TBwfUzcWGD29YA2LUz0rPCIWGE2fNzw50swqSignVBNrLEhr9ksOQcI0Gu3rHCNrZignVBw1HBMqGAw4GyMfJA2DYB3vUzcb3AxrOihn0zgLUigTLChqGB3bLBGOTifjLDhvYBNmGy29TBwfUzeLKigzVCIb0CMfJA2LUzWOTie1HEca','Ahr0Cc1JBgLLBNq','C3rHCNruAw1L','C3rKzxjY','Bwf4q29TBwfUzefNzu1PBNv0zxm','BwfW','y29TBwfUza','zMLSzs1TB3zL','z2v0ugfYyw1LDgvYu2nOzw1H','zgvSicqX','D2fPDgLUz19MB3jFAw5WDxq','mJe3otq4meLJBhLPyW','Aw50zwDLCG','C3bLy2LMAwnjC3n1zxm','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','AgfSDa','CMf3q29UDgvUDa','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','oIbJB21Tyw5KigLZihjLCxvPCMvKigzVCIbYDw4Ty29TBwfUza','Dw5PDMvYC2fS','zgvZy3jPChrPB24','mtK4ntu5meTxtejsyq','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','y3vYBcaKmq','zgLYzwn0B3j5lwn1CNjLBNq','q29TBwfUzcbRAwXSzwqGC3vJy2vZC2z1BgX5','zxHPDa','DgfZA2XPC3q','C3rHCNrcywnRz3jVDw5Kq29TBwfUza','C2v0','zgvMia','vgvYBwLUywWGrevcvuC6ifvZAw5NigfNzw50ignVBMzPz3vYzwqGD29YA2LUzYbKAxjLy3rVCNK6','zxHLy3v0zq','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','y3DK','icyMia','ChjVy2vZCW','Dg9tDhjPBMC','zwnOBYaN','zwnOBYaI','BwfPBIGP','uMvTB3zLluL0zw0','y21K','Bg9N','C3rKB3v0','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','y2XLyw51Ca','CM0GlxjMic8','Dg9ju09tDhjPBMC','q3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEtOG','y3jLyxrLlwrPCMvJDg9YEq','AxneAxjLy3rVCNK','CM0Gjde','sw52B2TLlvjLC3rnzxrOB2q','ufnnB2r1BgvqyxrO','vgLTzw91DcbTDxn0igjLigjLDhDLzw4GmtaWmcbHBMqG','C3rHy2S','ChjVBxb0rgv0zwn0B3i','qMfJA2DYB3vUzcbJB21Tyw5Kihn0yxj0zwqGD2L0AcbjrdOG','ywX0zxjUyxrPDMvZ','rgLYzwn0B3j5ignOyw5NzsbIBg9JA2vKoIa','D2HPBguG','q29UzMLYBwf0Aw9UihbYB21WDa','Ahr0Ca','Cgf0DgvYBG','yNvPBhrPBG','zMLSzs1JCMvHDgu','D2HVyw1P','DgvZDa','Dg9mB3DLCKnHC2u','oIb0ExbLigLZihjLCxvPCMvK','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','Dg9VBhnszwDPC3rYEq','AxnbyNnVBhv0zq','quKGDhjHBNnSyxrPB24GzMfPBgvKlcbMywXSAw5NigjHy2SGDg8GC2LTCgXLihrYyw5ZBgf0Aw9U','z2v0q29TBwfUzfn0yxr1CW','BM93','BgfZDe91Dhb1DfrPBwu','ChjVy2vZCY1SAxn0','zwnOBYaIjdeIid4','ywDLBNrjza','zwnOBYa','zwnOBYaLvvnfuK5btuuL','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','zw52','Aw5KzxG','D3jPDgu','q2HHBMDLzcbKAxjLy3rVCNKGDg8G','DhjPBq','A2LSBgvK','ywrKvg9iAxn0B3j5','zgLYzwn0B3j5lwnYzwf0zq','igL0zw1ZigLUia','C29YDcaVDw5PCxvL','z2v0v29YA2LUz0rPCMvJDg9YEq','u0Lhvevstq','y29TBwfUzeHPC3rVCNK','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','y29TCgXLDgvK','BwvTB3j5lwLUzM8','CgLWzq','C2vSzwn0Aw9U','CMvWBgfJzq','y29UzMLYBwf0Aw9U','q29TBwfUzcbZCgf3BIbLCNjVCJOG','y29UDgvUDa','zwnOBW','AxndB21Tyw5Kq29TCgf0AwjSzvDPDgHuzxjTAw5HBa','zgv0zwn0zwruzxjTAw5HBa','y2f0','ywn0Aw9UCW','zgvIDwC','z3b0ltqTBwLUAq','q29TBwfUzcbJB21WyxrPyMLSAxr5igfUywX5C2LZ','zxHPDenVzgu','mJCYnty1nNzMzKnpCW','Bg9Nz2vY','zw5KvgLTzq','DgfZA2TPBgW','AxnbC3LUyW','AxnZDwvZ','Bwf4qMfJA2DYB3vUzenVBw1HBMrZugvYqwDLBNq','sw5WDxqGC2vUDcb0BYbIywnRz3jVDw5KignVBw1HBMq','BgLZDc1KAxjLy3rVCNK','yMfZAa','tgLZDgvKia','cI0Gq2f0zwDVCNK6ia','C2XPy2u','ig9Mia','y3aGjdeGjdi','AxntAw1WBgvdB21Tyw5K','ChjVBxb0rgv0zwn0zwq','DhLWzq','q2fUBM90ihnLBMqGAw5WDxqGDg8G','u3rVCc1qCM9JzxnZ','z2v0','zMfPBgvK','CMvSyxrPDMu','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','Dgv4Dc1Kzwr1Cgu','DhjHBNnSyxrLq29TBwfUzfDPDgHbsq','Dgv4Dc1WCM9JzxnZAw5N','zg93BMXVywq','y29TBwfUzfr5Cgu','zw5KC1DPDgG','BwvZC2fNzq','r2v0lunVBNrLBNq','CNvUBMLUzW','Bw92zsaKmsaKmG','cI0Gq29TCgf0AwjPBgL0EsbjC3n1zxm6ia','r2v0lvbYB2nLC3mGFcbtB3j0lu9IAMvJDcbdufu','zxH0CMfJDenVBNrLBNq','BwvUDq','zMLSzq','CMvHzgrPCG','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','vxnLCM5HBwuGChjVBxb0','Aw5MBW','z2vUzxjPyW','CgXHDgzVCM1uExbL','A2LSBenVBw1HBMq','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','Bw92zq','zMLSzs12Awv3Aw5N','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','C3rYAw5N','AxnbBgXVD2vKq29TBwfUza','D2LUmZi','nJm5mdq4re9IzuLw','qwnJzxnZigrLBMLLzdOG','Cg93zxjZAgvSBcaTyW','DxnLCM5HBwu','C291CMnLia','icHVCMLNAw5HBdOG','Dw5PEa','D2fYBG','DhLWzsaKmq','zgf0yq','BgLZDerPCMvJDg9YEq','y3jLyxrLrgLYzwn0B3j5','cLrLCM1PBMfSifrVB2W6iev4zwn1DguGC3LZDgvTignVBw1HBMrZigfUzcbTyw5Hz2uGDgvYBwLUywWGB3bLCMf0Aw9UCYbZywzLBhKUcGPjtvbpuLrbtLq6iezVCIbMAwXLigfUzcbKAxjLy3rVCNKGy3jLyxrPB24SihbYzwzLCIb1C2LUzYb0AguGrMLSzvn5C3rLBsb0B29SlGPszxnLCNzLihrOzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGB3bLCMf0Aw9UCYbSAwTLig5WBsWGz2L0lcbJDxjSlcbLDgmUcGPvu0fhrtOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kphj1BI1JB21Tyw5KpM5WBsbPBNn0ywXSigv4ChjLC3m8l3j1BI1JB21Tyw5KpGO8y2HHBMDLlwrPCMvJDg9YEt5WCM9Qzwn0l2jHy2TLBMq8l2nOyw5Nzs1KAxjLy3rVCNK+cLSVDg9VBf0kcKfmvevstKfusvzfiePtt04GrK9stufuoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSkicaGicaGiNr5CguIoIaICNvUlwnVBw1HBMqIlaOGicaGicaIy29TBwfUzci6icjUCg0GAw5ZDgfSBcbLEhbYzxnZiGOGicaGFsWkicaGihSkicaGicaGiNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiScIaGicaGicjKAxjLy3rVCNKIoIaIChjVAMvJDc9IywnRzw5KiGOGicaGFqOGif0kFqPGygakcLnvufbpuLrfrcbbq1rjt05toGOTihj1BI1JB21Tyw5KoIbfEgvJDxrLigeGy29TBwfUzcbPBIb0AguGy3vYCMvUDcbKAxjLy3rVCNKklsbJAgfUz2uTzgLYzwn0B3j5oIbdAgfUz2uGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEqOTigXPC3qTzgLYzwn0B3j5oIbmAxn0ignVBNrLBNrZig9Mign1CNjLBNqGB3iGC3bLy2LMAwvKigrPCMvJDg9YEqOTignYzwf0zs1KAxjLy3rVCNK6ienYzwf0zsbHig5LDYbKAxjLy3rVCNKGkhbYzwzLCIbgAwXLu3LZDgvTihrVB2WPcI0Gz2v0lxDVCMTPBMCTzgLYzwn0B3j5oIbhzxqGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEqOkuefsqu1fvevsuZOklsbJB21Tyw5KoIbuAguGy29TBwfUzcb0BYbLEgvJDxrLcI0GzgLYzwn0B3j5oIbeAxjLy3rVCNKGCgf0AcbMB3iGBMf2AwDHDgLVBI9VCgvYyxrPB25ZcI0GDgLTzw91DdOGt3b0Aw9UywWGDgLTzw91DcbPBIbTAwXSAxnLy29UzhmGkg1HEca','C2LTCgXL','CgXHDgzVCM0','DgLTzw91Da','zMLSzs1KzwXLDgu','Dgv4Dc1ZzwfYy2G','cI0Gu3vNz2vZDgvKiefSDgvYBMf0AxzLoIa','uhjLC3mGzw50zxi','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','r2v0lunVBNrLBNqGjde','B2jQzwn0','ignVBw1HBMrZigzVCIbHz2vUDca','uhjVBxb0igrLDgvJDgvKigLUihn0zgvYCG','u29YDc1pyMPLy3qGlvvUAxf1zq','D2LUzg93CY1JBwq','C3rHDa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','DgfZA2TPBgWGl2yGl2LT','Aw5JBhvKzxm','Bwf4qMfJA2DYB3vUzenVBw1HBMrZr2XVyMfS','q29TBwfUzcbMywLSzwqGD2L0AcbLEgL0ignVzguG','zgLY','tMv3luL0zw0Glvr5CguGrMLSzq','zxH0CMfJDfrYyw5ZBgf0zwrdB21Tyw5K','ChjVy2vZCY1RAwXS','C3rKB3v0qNvMzMvY','C3rHCNrZv2L0Aa','vhjHBNnSyxrLihrOAxmGy29TBwfUzcb0BYb3B3jRignVCNjLy3rSEsbPBIa','CgLK','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','ihn0ywXLignVBw1HBMrZ','sgL0igvUDgvY','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwq','uMvTB3zLluL0zw0Gjde','z2v0qwDLBNrdB21Tyw5KCW','Bwf0y2HLzfrLEhq','C3LZDgvTAw5MBW','y29WEq','rxHLy3v0Aw5NignVBw1HBMq6ia','Cg93zxjZAgvSBa','yxn5BMm','vxnPBMCGC2LTCgXLihrYyw5ZBgf0Aw9U','wwvZl05Vihf1zxn0Aw9U','AxncBg9JA2vKq29TBwfUza','ChvZAa','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','C3rKzxjYqNvMzMvY','lI4U','y29WEsaKmsaKmG','C29YDa','zMLSzs1SAxn0Aw5N','u2vSzwn0Aw9UihbYB21WDa','CMvHC29U','zMLSDgvY','CNvUlwnVBw1HBMq','AxntEw1IB2XPy0XPBMS','DgfZA2TPBgWGl1bjrcaKmq','AgvSCa','ywLtzxj2AwnL','zgLYzwn0B3j5','ugfZC3DVCMqGChjVBxb0','DhjHBNnSyxrLvg9cyxnO','D29YA2LUz0rPCMvJDg9YEq','CgfZC3DVCMq','u0HfteW','zw50CMLLCW','vw5RBM93BIbHy3rPB24GDhLWztOG','oGOkt1jjr0LoquWGq09ntufordOkygbGcG','C3bSAxq','qwn0Aw9Uia','Bw9YzsaRBG','tw92zs1jDgvTicqXicqY','BwvZC2fNzvbYB2nLC3nVCG','mtaZndaZmxnQEMzOrG','v2LUzg93CYbdB21Tyw5KifbYB21WDcaOy21KlMv4zsK','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','A2v5ChjLC3m','y2HHBMDLlwrPCMvJDg9YEq','CgvYBwLZC2LVBNm','lwnTzc0','BgvUz3rO','zNvUy3rPB24G','CgfYC2vqyxjHBwv0zxjZ','AxnbCNjHEq'];a0_0x4bfa=function(){return _0x3e3315;};return a0_0x4bfa();}import{spawn,exec}from'child_process';import a0_0x4480c0 from'path';import a0_0x22bd4a from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0x5a5245=a0_0x1f92;this['promptPatterns']=[{'pattern':/\(y\/n\)/i,'type':_0x5a5245(0x10a),'description':_0x5a5245(0x206)},{'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':_0x5a5245(0x10a),'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':_0x5a5245(0x235)},{'pattern':/proceed\?/i,'type':_0x5a5245(0xf5),'description':'Proceed\x20prompt'},{'pattern':/press any key to continue/i,'type':_0x5a5245(0x228),'description':_0x5a5245(0xf2)},{'pattern':/press enter to continue/i,'type':'keypress','description':_0x5a5245(0x1e3)},{'pattern':/hit enter to continue/i,'type':'keypress','description':_0x5a5245(0x1fb)},{'pattern':/password:/i,'type':_0x5a5245(0x21b),'description':'Password\x20prompt'},{'pattern':/enter password/i,'type':'password','description':_0x5a5245(0x218)},{'pattern':/passphrase:/i,'type':_0x5a5245(0x21b),'description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':_0x5a5245(0x1d3),'description':'Username\x20prompt'},{'pattern':/enter username/i,'type':_0x5a5245(0x1d3),'description':_0x5a5245(0x1c4)},{'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':'input','description':'Generic\x20input\x20prompt'},{'pattern':/are you sure\?/i,'type':'confirmation','description':_0x5a5245(0x166)},{'pattern':/do you want to/i,'type':_0x5a5245(0x18f),'description':_0x5a5245(0x166)},{'pattern':/would you like to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':_0x5a5245(0x18d),'description':_0x5a5245(0x20f)},{'pattern':/choose/i,'type':_0x5a5245(0x18d),'description':'Selection\x20prompt'},{'pattern':/\d+\)\s+\w+/g,'type':_0x5a5245(0x1c0),'description':'Menu\x20selection'}];}[a0_0x2f90c3(0x118)](_0x19b822,_0x95fdf=a0_0x2f90c3(0x154)){const _0x1068dd=a0_0x2f90c3;if(!_0x19b822||_0x19b822['trim']()['length']===0x0)return null;const _0x2f822c=_0x19b822['split']('\x0a'),_0xc1cb99=_0x2f822c[_0x1068dd(0x1a7)](-0x5)[_0x1068dd(0x11a)]('\x0a');for(const _0x13daa7 of this['promptPatterns']){const _0x3c8a0b=_0xc1cb99['match'](_0x13daa7[_0x1068dd(0x168)]);if(_0x3c8a0b)return{'detected':!![],'type':_0x13daa7['type'],'description':_0x13daa7[_0x1068dd(0x13c)],'matchedText':_0x3c8a0b[0x0],'matchIndex':_0x3c8a0b[_0x1068dd(0x17d)],'source':_0x95fdf,'fullContext':_0xc1cb99,'timestamp':Date['now']()};}const _0x46b268=_0x2f822c[_0x2f822c[_0x1068dd(0x22c)]-0x1]||'';if(_0x46b268[_0x1068dd(0x180)]()[_0x1068dd(0x22c)]>0x0){const _0x46b75b=/:\s*$/['test'](_0x46b268),_0x531714=/\?\s*$/[_0x1068dd(0x16c)](_0x46b268);if(_0x46b75b||_0x531714){const _0x241bc3=/\b(enter|type|provide|specify|input)\b/i['test'](_0x46b268);if(_0x241bc3)return{'detected':!![],'type':_0x1068dd(0x1c6),'description':'Generic\x20input\x20prompt\x20detected','matchedText':_0x46b268[_0x1068dd(0x180)](),'source':_0x95fdf,'fullContext':_0xc1cb99,'timestamp':Date['now'](),'confidence':0.7};}}return null;}['detectHang'](_0x37cf9c,_0x2f21ee=0x7530){const _0x3bf2b3=Date['now'](),_0x12b625=_0x3bf2b3-_0x37cf9c;return{'isHanging':_0x12b625>=_0x2f21ee,'timeSinceLastOutput':_0x12b625,'threshold':_0x2f21ee,'likelyWaiting':_0x12b625>=_0x2f21ee/0x2};}}function a0_0x1f92(_0x200f4a,_0x32f004){_0x200f4a=_0x200f4a-0xef;const _0x4bfa46=a0_0x4bfa();let _0x1f9255=_0x4bfa46[_0x200f4a];if(a0_0x1f92['iNSEkW']===undefined){var _0x29904d=function(_0x374d6e){const _0x1fcd00='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x43ba40='',_0x2b5068='';for(let _0x4480c0=0x0,_0x22bd4a,_0x19b822,_0x95fdf=0x0;_0x19b822=_0x374d6e['charAt'](_0x95fdf++);~_0x19b822&&(_0x22bd4a=_0x4480c0%0x4?_0x22bd4a*0x40+_0x19b822:_0x19b822,_0x4480c0++%0x4)?_0x43ba40+=String['fromCharCode'](0xff&_0x22bd4a>>(-0x2*_0x4480c0&0x6)):0x0){_0x19b822=_0x1fcd00['indexOf'](_0x19b822);}for(let _0x2f822c=0x0,_0xc1cb99=_0x43ba40['length'];_0x2f822c<_0xc1cb99;_0x2f822c++){_0x2b5068+='%'+('00'+_0x43ba40['charCodeAt'](_0x2f822c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b5068);};a0_0x1f92['NoNBRA']=_0x29904d,a0_0x1f92['zGbeta']={},a0_0x1f92['iNSEkW']=!![];}const _0x4b136e=_0x4bfa46[0x0],_0x294205=_0x200f4a+_0x4b136e,_0x23a475=a0_0x1f92['zGbeta'][_0x294205];return!_0x23a475?(_0x1f9255=a0_0x1f92['NoNBRA'](_0x1f9255),a0_0x1f92['zGbeta'][_0x294205]=_0x1f9255):_0x1f9255=_0x23a475,_0x1f9255;}class TerminalTool extends BaseTool{constructor(_0x4e6b3f={},_0x4137f9=null){const _0x55c0fb=a0_0x2f90c3;super(_0x4e6b3f,_0x4137f9),this['requiresProject']=![],this[_0x55c0fb(0x19f)]=![],this[_0x55c0fb(0x1df)]=_0x4e6b3f['timeout']||0x1d4c0,this['maxConcurrentOperations']=_0x4e6b3f['maxConcurrentOperations']||0x3,this[_0x55c0fb(0x11c)]=new Map(),this['commandHistory']=[],this[_0x55c0fb(0x108)]=_0x4e6b3f['allowedCommands']||null,this[_0x55c0fb(0x239)]=_0x4e6b3f['blockedCommands']||[_0x55c0fb(0x157),'format','del\x20/f\x20/q','shutdown',_0x55c0fb(0x110),_0x55c0fb(0x137)],this[_0x55c0fb(0x11d)]=new a0_0x2b5068(_0x4e6b3f,_0x4137f9),this[_0x55c0fb(0x161)]=new PromptDetector(),this['commandTracker']=new Map(),this['commandIdCounter']=0x0,this[_0x55c0fb(0x109)]=_0x4e6b3f[_0x55c0fb(0x1a1)]||0x5,this[_0x55c0fb(0x209)]=_0x4e6b3f[_0x55c0fb(0x1ef)]||0x14,this['MAX_COMMAND_AGE_MINUTES']=_0x4e6b3f[_0x55c0fb(0x12c)]||0x3c,this['detectedTerminal']=null,this[_0x55c0fb(0x1c7)]=null,this[_0x55c0fb(0x189)]();}['getDescription'](){const _0x480c4a=a0_0x2f90c3;return _0x480c4a(0x1dc)+this[_0x480c4a(0x1df)]+_0x480c4a(0x128)+this[_0x480c4a(0x109)]+'\x20per\x20agent,\x20'+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+'\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_0x2f90c3(0x22e)](_0x2b37d4){const _0x1e0728=a0_0x2f90c3;try{const _0x5f209e={},_0x18ebc7=a0_0x43ba40[_0x1e0728(0x1bf)](_0x2b37d4,_0x1e0728(0x212)),_0x242a70=a0_0x43ba40['extractContent'](_0x2b37d4,'change-directory'),_0x5b23f3=a0_0x43ba40[_0x1e0728(0x1bf)](_0x2b37d4,_0x1e0728(0x1a3)),_0x27ec65=a0_0x43ba40[_0x1e0728(0x1bf)](_0x2b37d4,_0x1e0728(0x15a)),_0x4629c1=a0_0x43ba40[_0x1e0728(0x1bf)](_0x2b37d4,'get-working-directory'),_0x1ddf58=a0_0x43ba40[_0x1e0728(0x1bf)](_0x2b37d4,_0x1e0728(0x1df)),_0x2f0fb5=a0_0x43ba40[_0x1e0728(0x1bf)](_0x2b37d4,'async'),_0x1b04a0=[];return _0x18ebc7['length']>0x0&&_0x1b04a0[_0x1e0728(0x208)]({'type':'run-command','command':_0x18ebc7[0x0][_0x1e0728(0x180)]()}),_0x242a70['length']>0x0&&_0x1b04a0[_0x1e0728(0x208)]({'type':'change-directory','directory':_0x242a70[0x0]['trim']()}),_0x5b23f3[_0x1e0728(0x22c)]>0x0&&_0x1b04a0['push']({'type':'list-directory','directory':_0x5b23f3[0x0][_0x1e0728(0x180)]()||'.'}),_0x27ec65[_0x1e0728(0x22c)]>0x0&&_0x1b04a0['push']({'type':_0x1e0728(0x15a),'directory':_0x27ec65[0x0]['trim']()}),_0x4629c1[_0x1e0728(0x22c)]>0x0&&_0x1b04a0['push']({'type':'get-working-directory'}),_0x5f209e['actions']=_0x1b04a0,_0x1ddf58['length']>0x0&&(_0x5f209e['timeout']=parseInt(_0x1ddf58[0x0],0xa)),_0x2f0fb5['length']>0x0&&(_0x5f209e[_0x1e0728(0x204)]=_0x2f0fb5[0x0][_0x1e0728(0x16d)]()==='true'),_0x5f209e[_0x1e0728(0x138)]=_0x2b37d4['trim'](),_0x5f209e;}catch(_0x271be6){throw new Error(_0x1e0728(0x106)+_0x271be6['message']);}}['getRequiredParameters'](){return['actions'];}[a0_0x2f90c3(0x1cc)](_0x2536d6){const _0x2ef2ca=a0_0x2f90c3,_0x562fd2=[];if(!_0x2536d6['actions']||!Array[_0x2ef2ca(0x22f)](_0x2536d6[_0x2ef2ca(0x196)])||_0x2536d6['actions'][_0x2ef2ca(0x22c)]===0x0)_0x562fd2[_0x2ef2ca(0x208)](_0x2ef2ca(0x13e));else for(const [_0x4f77e2,_0x5927f9]of _0x2536d6[_0x2ef2ca(0x196)][_0x2ef2ca(0x21d)]()){if(!_0x5927f9['type']){_0x562fd2[_0x2ef2ca(0x208)](_0x2ef2ca(0x221)+(_0x4f77e2+0x1)+_0x2ef2ca(0x16e));continue;}switch(_0x5927f9[_0x2ef2ca(0x1ac)]){case'run-command':if(!_0x5927f9[_0x2ef2ca(0x12e)]||!_0x5927f9[_0x2ef2ca(0x12e)]['trim']())_0x562fd2['push'](_0x2ef2ca(0x221)+(_0x4f77e2+0x1)+_0x2ef2ca(0x13a));else{if(this['isBlockedCommand'](_0x5927f9[_0x2ef2ca(0x12e)]))_0x562fd2[_0x2ef2ca(0x208)](_0x2ef2ca(0x221)+(_0x4f77e2+0x1)+':\x20command\x20is\x20blocked\x20for\x20security:\x20'+_0x5927f9['command']);else this[_0x2ef2ca(0x108)]&&!this[_0x2ef2ca(0x1ce)](_0x5927f9[_0x2ef2ca(0x12e)])&&_0x562fd2[_0x2ef2ca(0x208)]('Action\x20'+(_0x4f77e2+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x5927f9[_0x2ef2ca(0x12e)]);}break;case'change-directory':case _0x2ef2ca(0x1a3):case'create-directory':(!_0x5927f9[_0x2ef2ca(0x217)]||!_0x5927f9[_0x2ef2ca(0x217)][_0x2ef2ca(0x180)]())&&_0x562fd2['push']('Action\x20'+(_0x4f77e2+0x1)+_0x2ef2ca(0x139)+_0x5927f9['type']);break;case'get-working-directory':break;default:_0x562fd2[_0x2ef2ca(0x208)](_0x2ef2ca(0x221)+(_0x4f77e2+0x1)+_0x2ef2ca(0x1ec)+_0x5927f9['type']);}}return _0x2536d6['timeout']&&(_0x2536d6['timeout']<0x3e8||_0x2536d6['timeout']>this[_0x2ef2ca(0x1df)])&&_0x562fd2['push'](_0x2ef2ca(0x15f)+this['timeout']+'\x20milliseconds'),{'valid':_0x562fd2['length']===0x0,'errors':_0x562fd2};}async[a0_0x2f90c3(0x148)](_0x4f38e4,_0xf49aa8){const _0x39547e=a0_0x2f90c3,{actions:_0x39a12a,timeout:_0x3970bc,async:_0x47238f}=_0x4f38e4,{agentId:_0x20ca92,projectDir:_0x3d91a3,directoryAccess:_0x483975}=_0xf49aa8,_0x4b7e5d=_0x483975||this[_0x39547e(0x11d)]['createDirectoryAccess']({'workingDirectory':_0x3d91a3||process['cwd'](),'writeEnabledDirectories':[_0x3d91a3||process[_0x39547e(0x14a)]()],'restrictToProject':!![]});_0x483975&&_0x483975['workingDirectory']?console[_0x39547e(0x153)](_0x39547e(0x147),_0x483975['workingDirectory']):console[_0x39547e(0x153)](_0x39547e(0x155),_0x3d91a3||process['cwd']());const _0x2d82e5=_0x20ca92+'-'+(_0x3d91a3||'default');let _0x34459a=this[_0x39547e(0x11c)][_0x39547e(0x1af)](_0x2d82e5)||this['directoryAccessManager'][_0x39547e(0x186)](_0x4b7e5d);const _0xaa83fb=[];for(const _0xd5a110 of _0x39a12a){try{let _0x3326d5;switch(_0xd5a110[_0x39547e(0x1ac)]){case _0x39547e(0x212):_0x3326d5=await this['executeCommand'](_0xd5a110[_0x39547e(0x12e)],_0x34459a,{'timeout':_0x3970bc||this[_0x39547e(0x1df)],'async':_0x47238f||![],'agentId':_0x20ca92,'context':{'toolsRegistry':_0xf49aa8[_0x39547e(0x170)],'aiService':_0xf49aa8['aiService'],'apiKey':_0xf49aa8['apiKey'],'customApiKeys':_0xf49aa8['customApiKeys'],'platformProvided':_0xf49aa8[_0x39547e(0x233)]}});break;case _0x39547e(0x229):_0x3326d5=await this['changeDirectory'](_0xd5a110['directory'],_0x34459a,_0x4b7e5d),_0x34459a=_0x3326d5['newDirectory'],this['workingDirectories'][_0x39547e(0x145)](_0x2d82e5,_0x34459a);break;case'list-directory':_0x3326d5=await this['listDirectory'](_0xd5a110[_0x39547e(0x217)]==='.'?_0x34459a:_0xd5a110['directory']);break;case _0x39547e(0x15a):_0x3326d5=await this['createDirectory'](_0xd5a110['directory'],_0x34459a);break;case _0x39547e(0x1e4):_0x3326d5={'success':!![],'action':'get-working-directory','workingDirectory':_0x34459a,'message':_0x39547e(0x159)+_0x34459a};break;default:throw new Error(_0x39547e(0x21e)+_0xd5a110[_0x39547e(0x1ac)]);}_0xaa83fb[_0x39547e(0x208)](_0x3326d5),this['addToHistory'](_0xd5a110,_0x3326d5,_0x20ca92);}catch(_0x1777ea){const _0x481904={'success':![],'action':_0xd5a110['type'],'error':_0x1777ea[_0x39547e(0x1b9)],'command':_0xd5a110[_0x39547e(0x12e)]||_0xd5a110['directory'],'workingDirectory':_0x34459a};_0xaa83fb['push'](_0x481904),this[_0x39547e(0x182)](_0xd5a110,_0x481904,_0x20ca92);}}const _0x1a66df=_0xaa83fb['every'](_0x31c4a1=>_0x31c4a1['success']),_0x183dbb=_0xaa83fb['filter'](_0x1b2b09=>!_0x1b2b09[_0x39547e(0x120)]);return{'success':_0x1a66df,'actions':_0xaa83fb,'workingDirectory':_0x34459a,'executedActions':_0x39a12a[_0x39547e(0x22c)],'failedActions':_0x183dbb[_0x39547e(0x22c)],'toolUsed':'terminal','message':_0x1a66df?'All\x20'+_0x39a12a[_0x39547e(0x22c)]+'\x20actions\x20completed\x20successfully':_0x183dbb[_0x39547e(0x22c)]+_0x39547e(0x1a8)+_0x39a12a[_0x39547e(0x22c)]+'\x20actions\x20failed'};}async['executeCommand'](_0x180c4c,_0x120c56,_0x20e4fe={}){const _0x1d00a1=a0_0x2f90c3,{timeout:timeout=this[_0x1d00a1(0x1df)],async:_0x3f84f9=![],agentId:_0x3a0be9,context:_0x446228}=_0x20e4fe,_0x23a326=_0x180c4c;let _0x585ef9;try{_0x585ef9=await this[_0x1d00a1(0x102)](_0x180c4c,{'agentId':_0x3a0be9,'toolsRegistry':_0x446228?.['toolsRegistry'],'messageProcessor':_0x446228?.[_0x1d00a1(0x224)],'aiService':_0x446228?.['aiService'],'apiKey':_0x446228?.['apiKey'],'customApiKeys':_0x446228?.['customApiKeys'],'platformProvided':_0x446228?.['platformProvided']});}catch(_0x13ccf4){this[_0x1d00a1(0x19c)]?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x23a326,'error':_0x13ccf4[_0x1d00a1(0x1b9)]}),_0x585ef9=_0x180c4c;}return new Promise((_0x502eae,_0x29982e)=>{const _0x4d9086=_0x1d00a1,_0x5b324f=Date[_0x4d9086(0x174)]();this['logger']?.['info'](_0x4d9086(0x202)+_0x585ef9,{'originalCommand':_0x23a326,'translatedCommand':_0x585ef9,'terminal':this[_0x4d9086(0x194)],'workingDirectory':_0x120c56,'timeout':timeout,'agentId':_0x3a0be9});const _0x5c47ce=exec(_0x585ef9,{'cwd':_0x120c56,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x16b3d9,_0xc654e4,_0x38a553)=>{const _0x3179ee=_0x4d9086,_0x5b6633=Date[_0x3179ee(0x174)]()-_0x5b324f;if(_0x16b3d9){this[_0x3179ee(0x19c)]?.[_0x3179ee(0x107)]('Command\x20failed:\x20'+_0x585ef9,{'originalCommand':_0x23a326,'translatedCommand':_0x585ef9,'error':_0x16b3d9[_0x3179ee(0x1b9)],'workingDirectory':_0x120c56,'executionTime':_0x5b6633}),_0x502eae({'success':![],'action':'run-command','command':_0x23a326,'translatedCommand':_0x585ef9!==_0x23a326?_0x585ef9:undefined,'error':_0x16b3d9[_0x3179ee(0x1b9)],'stderr':_0x38a553['trim'](),'stdout':_0xc654e4[_0x3179ee(0x180)](),'exitCode':_0x16b3d9['code'],'executionTime':_0x5b6633,'workingDirectory':_0x120c56});return;}this['logger']?.['info']('Command\x20completed:\x20'+_0x585ef9,{'originalCommand':_0x23a326,'translatedCommand':_0x585ef9,'executionTime':_0x5b6633,'stdoutLength':_0xc654e4[_0x3179ee(0x22c)],'stderrLength':_0x38a553['length']}),_0x502eae({'success':!![],'action':'run-command','command':_0x23a326,'translatedCommand':_0x585ef9!==_0x23a326?_0x585ef9:undefined,'stdout':_0xc654e4['trim'](),'stderr':_0x38a553[_0x3179ee(0x180)](),'exitCode':0x0,'executionTime':_0x5b6633,'workingDirectory':_0x120c56,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x5b6633+'ms'});});setTimeout(()=>{const _0xd62888=_0x4d9086;!_0x5c47ce[_0xd62888(0x181)]&&(_0x5c47ce['kill']('SIGTERM'),_0x29982e(new Error('Command\x20timed\x20out\x20after\x20'+timeout+'ms:\x20'+_0x585ef9+_0xd62888(0x1d5)+_0x23a326+')')));},timeout);});}async['executeCommandWithSpawn'](_0x1c570a,_0x4fefde,_0x3c8306={}){const _0x15dd4c=a0_0x2f90c3,{timeout:timeout=this[_0x15dd4c(0x1df)],agentId:_0x39ef6d,context:_0x59109e}=_0x3c8306,_0x24d3ce=_0x1c570a;let _0xcc9d71;try{_0xcc9d71=await this[_0x15dd4c(0x102)](_0x1c570a,{'agentId':_0x39ef6d,'toolsRegistry':_0x59109e?.['toolsRegistry'],'messageProcessor':_0x59109e?.['messageProcessor'],'aiService':_0x59109e?.[_0x15dd4c(0x216)],'apiKey':_0x59109e?.['apiKey'],'customApiKeys':_0x59109e?.['customApiKeys'],'platformProvided':_0x59109e?.[_0x15dd4c(0x233)]});}catch(_0x16252a){this[_0x15dd4c(0x19c)]?.[_0x15dd4c(0x1d7)](_0x15dd4c(0x104),{'originalCommand':_0x24d3ce,'error':_0x16252a['message']}),_0xcc9d71=_0x1c570a;}return new Promise((_0x181f0c,_0xf4a77c)=>{const _0x37d6c6=_0x15dd4c,_0x8fc6b2=Date[_0x37d6c6(0x174)]();this['logger']?.[_0x37d6c6(0x1c5)]('Executing\x20command\x20with\x20spawn:\x20'+_0xcc9d71,{'originalCommand':_0x24d3ce,'translatedCommand':_0xcc9d71,'terminal':this['detectedTerminal'],'workingDirectory':_0x4fefde,'timeout':timeout,'agentId':_0x39ef6d});let _0x2a518d;if(this['detectedTerminal']==='cmd'||this[_0x37d6c6(0x194)]===_0x37d6c6(0x203)){const _0x5804cd=this[_0x37d6c6(0x194)]===_0x37d6c6(0x203)?'powershell':'cmd',_0x98d814=this[_0x37d6c6(0x194)]===_0x37d6c6(0x203)?['-Command',_0xcc9d71]:['/c',_0xcc9d71];_0x2a518d=spawn(_0x5804cd,_0x98d814,{'cwd':_0x4fefde,'env':{...process['env']},'windowsHide':!![]});}else _0x2a518d=spawn('sh',['-c',_0xcc9d71],{'cwd':_0x4fefde,'env':{...process['env']}});let _0x490e57='',_0x18a439='',_0xe66a32=![],_0x3e458a=null,_0x247bad=Date[_0x37d6c6(0x174)](),_0x59d2f2=null;const _0x278bdb=setTimeout(()=>{const _0x5d5261=_0x37d6c6;!_0x2a518d[_0x5d5261(0x181)]&&_0x3e458a===null&&(_0xe66a32=!![],this[_0x5d5261(0x19c)]?.['warn']('Command\x20timed\x20out,\x20killing\x20process:\x20'+_0xcc9d71,{'timeout':timeout,'agentId':_0x39ef6d}),_0x2a518d[_0x5d5261(0xf9)](_0x5d5261(0x187)),setTimeout(()=>{const _0x417cdb=_0x5d5261;!_0x2a518d[_0x417cdb(0x181)]&&_0x2a518d[_0x417cdb(0xf9)](_0x417cdb(0x116));},0x1388));},timeout);_0x2a518d['stdout']['on'](_0x37d6c6(0x1d9),_0x193689=>{const _0x475a19=_0x37d6c6,_0x4af641=_0x193689[_0x475a19(0x14d)]();_0x490e57+=_0x4af641,_0x247bad=Date['now'](),this[_0x475a19(0x19c)]?.['debug']('Command\x20output\x20chunk:\x20'+_0x4af641['substring'](0x0,0x64),{'agentId':_0x39ef6d,'command':_0x24d3ce[_0x475a19(0xf8)](0x0,0x32)});if(!_0x59d2f2){const _0x6e6612=this['promptDetector'][_0x475a19(0x118)](_0x490e57,_0x475a19(0x154));_0x6e6612&&(_0x59d2f2=_0x6e6612,this[_0x475a19(0x19c)]?.['info']('Prompt\x20detected\x20in\x20stdout',{'type':_0x6e6612['type'],'description':_0x6e6612[_0x475a19(0x13c)],'matchedText':_0x6e6612['matchedText'],'agentId':_0x39ef6d,'command':_0x24d3ce['substring'](0x0,0x32)}));}}),_0x2a518d['stderr']['on'](_0x37d6c6(0x1d9),_0x2ce165=>{const _0x4d0ed9=_0x37d6c6,_0x2330af=_0x2ce165['toString']();_0x18a439+=_0x2330af,_0x247bad=Date['now'](),this['logger']?.[_0x4d0ed9(0x197)]('Command\x20error\x20chunk:\x20'+_0x2330af['substring'](0x0,0x64),{'agentId':_0x39ef6d,'command':_0x24d3ce[_0x4d0ed9(0xf8)](0x0,0x32)});if(!_0x59d2f2){const _0xc11810=this[_0x4d0ed9(0x161)]['detectPrompt'](_0x18a439,'stderr');_0xc11810&&(_0x59d2f2=_0xc11810,this[_0x4d0ed9(0x19c)]?.[_0x4d0ed9(0x1c5)](_0x4d0ed9(0x1e8),{'type':_0xc11810['type'],'description':_0xc11810[_0x4d0ed9(0x13c)],'matchedText':_0xc11810[_0x4d0ed9(0x1ff)],'agentId':_0x39ef6d,'command':_0x24d3ce['substring'](0x0,0x32)}));}}),_0x2a518d['on'](_0x37d6c6(0x142),(_0x3541e6,_0x145126)=>{const _0x34744c=_0x37d6c6;clearTimeout(_0x278bdb),_0x3e458a=_0x3541e6;const _0x528003=Date['now']()-_0x8fc6b2,_0x1bc9dc=Date[_0x34744c(0x174)]()-_0x247bad;this['logger']?.[_0x34744c(0x1c5)]('Command\x20process\x20exited:\x20'+_0xcc9d71,{'exitCode':_0x3541e6,'signal':_0x145126,'executionTime':_0x528003,'timedOut':_0xe66a32,'stdoutLength':_0x490e57[_0x34744c(0x22c)],'stderrLength':_0x18a439[_0x34744c(0x22c)],'promptDetected':!!_0x59d2f2,'timeSinceLastOutput':_0x1bc9dc});const _0x363538={'action':_0x34744c(0x212),'command':_0x24d3ce,'translatedCommand':_0xcc9d71!==_0x24d3ce?_0xcc9d71:undefined,'stdout':_0x490e57['trim'](),'stderr':_0x18a439[_0x34744c(0x180)](),'exitCode':_0x3541e6,'executionTime':_0x528003,'workingDirectory':_0x4fefde,'promptDetected':!!_0x59d2f2,'promptInfo':_0x59d2f2||undefined,'lastOutputTime':_0x247bad,'timeSinceLastOutput':_0x1bc9dc};if(_0xe66a32){_0x181f0c({..._0x363538,'success':![],'error':_0x34744c(0x227)+timeout+'ms','exitCode':_0x3541e6||-0x1,'timedOut':!![]});return;}if(_0x3541e6!==0x0){this['logger']?.[_0x34744c(0x107)](_0x34744c(0x1f0)+_0x3541e6+':\x20'+_0xcc9d71,{'originalCommand':_0x24d3ce,'translatedCommand':_0xcc9d71,'exitCode':_0x3541e6,'stderr':_0x18a439['substring'](0x0,0xc8),'executionTime':_0x528003,'promptDetected':!!_0x59d2f2}),_0x181f0c({..._0x363538,'success':![],'error':'Command\x20exited\x20with\x20code\x20'+_0x3541e6});return;}this['logger']?.['info'](_0x34744c(0x105)+_0xcc9d71,{'originalCommand':_0x24d3ce,'executionTime':_0x528003,'stdoutLength':_0x490e57['length'],'stderrLength':_0x18a439['length'],'promptDetected':!!_0x59d2f2}),_0x181f0c({..._0x363538,'success':!![],'exitCode':0x0,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x528003+'ms'});}),_0x2a518d['on'](_0x37d6c6(0x107),_0x3c5ddc=>{const _0x5e7283=_0x37d6c6;clearTimeout(_0x278bdb);const _0x15aa1e=Date[_0x5e7283(0x174)]()-_0x8fc6b2,_0x184a4c=Date['now']()-_0x247bad;this[_0x5e7283(0x19c)]?.[_0x5e7283(0x107)](_0x5e7283(0x190)+_0xcc9d71,{'originalCommand':_0x24d3ce,'error':_0x3c5ddc['message'],'executionTime':_0x15aa1e,'promptDetected':!!_0x59d2f2}),_0x181f0c({'success':![],'action':'run-command','command':_0x24d3ce,'translatedCommand':_0xcc9d71!==_0x24d3ce?_0xcc9d71:undefined,'error':_0x3c5ddc[_0x5e7283(0x1b9)],'stderr':_0x18a439[_0x5e7283(0x180)](),'stdout':_0x490e57[_0x5e7283(0x180)](),'exitCode':-0x1,'executionTime':_0x15aa1e,'workingDirectory':_0x4fefde,'promptDetected':!!_0x59d2f2,'promptInfo':_0x59d2f2||undefined,'lastOutputTime':_0x247bad,'timeSinceLastOutput':_0x184a4c});});});}async['changeDirectory'](_0x5c61bc,_0x30ff6a,_0x21a3ae){const _0x5695e6=a0_0x2f90c3;try{let _0x2a0bf5;a0_0x4480c0[_0x5695e6(0x171)](_0x5c61bc)?_0x2a0bf5=_0x5c61bc:_0x2a0bf5=a0_0x4480c0['resolve'](_0x30ff6a,_0x5c61bc);const _0x2d484b=await a0_0x22bd4a[_0x5695e6(0x1eb)](_0x2a0bf5);if(!_0x2d484b[_0x5695e6(0x15b)]())throw new Error('Not\x20a\x20directory:\x20'+_0x2a0bf5);const _0x530bed=this[_0x5695e6(0x11d)][_0x5695e6(0x230)](_0x2a0bf5,_0x21a3ae);if(!_0x530bed['allowed']){this[_0x5695e6(0x19c)]?.['warn'](_0x5695e6(0x164)+_0x530bed[_0x5695e6(0x210)],{'targetDirectory':_0x2a0bf5,'reason':_0x530bed['reason'],'category':_0x530bed[_0x5695e6(0xef)]});throw new Error(_0x5695e6(0x1d1)+_0x530bed['reason']);}return{'success':!![],'action':_0x5695e6(0x229),'previousDirectory':_0x30ff6a,'newDirectory':_0x2a0bf5,'message':_0x5695e6(0x17f)+_0x2a0bf5};}catch(_0x596c2e){throw new Error(_0x5695e6(0x10d)+_0x5c61bc+':\x20'+_0x596c2e['message']);}}async[a0_0x2f90c3(0x1da)](_0x3a96c6){const _0x5b4c6a=a0_0x2f90c3;try{const _0x42facf=await a0_0x22bd4a[_0x5b4c6a(0x1c2)](_0x3a96c6,{'withFileTypes':!![]}),_0x15ea7d=_0x42facf[_0x5b4c6a(0x12d)](_0x170eae=>({'name':_0x170eae['name'],'type':_0x170eae[_0x5b4c6a(0x15b)]()?_0x5b4c6a(0x217):_0x5b4c6a(0x1c1),'isSymlink':_0x170eae[_0x5b4c6a(0x213)]()}));return{'success':!![],'action':'list-directory','directory':_0x3a96c6,'contents':_0x15ea7d,'totalItems':_0x15ea7d['length'],'directories':_0x15ea7d['filter'](_0x3c26e1=>_0x3c26e1[_0x5b4c6a(0x1ac)]==='directory')['length'],'files':_0x15ea7d[_0x5b4c6a(0x211)](_0x3fc544=>_0x3fc544['type']==='file')['length'],'message':_0x5b4c6a(0x1a5)+_0x15ea7d['length']+_0x5b4c6a(0x184)+_0x3a96c6};}catch(_0x5f024f){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x3a96c6+':\x20'+_0x5f024f[_0x5b4c6a(0x1b9)]);}}async[a0_0x2f90c3(0x1db)](_0x1ca892,_0xb980a4){const _0x173841=a0_0x2f90c3;try{let _0xb66a9a;return a0_0x4480c0[_0x173841(0x171)](_0x1ca892)?_0xb66a9a=_0x1ca892:_0xb66a9a=a0_0x4480c0['resolve'](_0xb980a4,_0x1ca892),await a0_0x22bd4a['mkdir'](_0xb66a9a,{'recursive':!![]}),{'success':!![],'action':_0x173841(0x15a),'directory':_0xb66a9a,'relativePath':a0_0x4480c0[_0x173841(0x1b1)](_0xb980a4,_0xb66a9a),'message':'Created\x20directory:\x20'+_0xb66a9a};}catch(_0x319316){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x1ca892+':\x20'+_0x319316['message']);}}[a0_0x2f90c3(0x207)](_0x53e372){const _0x5d4818=_0x53e372['toLowerCase']()['trim']();return this['blockedCommands']['some'](_0x332d3a=>{const _0x150643=a0_0x1f92,_0x50db35=_0x332d3a[_0x150643(0x16d)]();return _0x5d4818===_0x50db35||_0x5d4818['startsWith'](_0x50db35+'\x20');});}['isAllowedCommand'](_0x606c48){const _0x191e27=a0_0x2f90c3;if(!this[_0x191e27(0x108)])return!![];const _0x13f9b9=_0x606c48[_0x191e27(0x16d)]()[_0x191e27(0x180)](),_0x2e06e7=_0x13f9b9[_0x191e27(0x220)]('\x20')[0x0];return this['allowedCommands']['some'](_0x11143e=>_0x11143e[_0x191e27(0x16d)]()===_0x2e06e7||_0x13f9b9['startsWith'](_0x11143e['toLowerCase']()+'\x20'));}[a0_0x2f90c3(0x182)](_0x2f49c3,_0x3fc230,_0xf7cf66){const _0x4e60cd=a0_0x2f90c3,_0x410c9e={'timestamp':new Date()[_0x4e60cd(0x158)](),'agentId':_0xf7cf66,'action':_0x2f49c3['type'],'command':_0x2f49c3[_0x4e60cd(0x12e)]||_0x2f49c3['directory'],'success':_0x3fc230['success'],'executionTime':_0x3fc230['executionTime']||0x0,'workingDirectory':_0x3fc230[_0x4e60cd(0x21a)]};this['commandHistory']['push'](_0x410c9e),this['commandHistory']['length']>0x64&&(this[_0x4e60cd(0x188)]=this[_0x4e60cd(0x188)]['slice'](-0x64));}['getSupportedActions'](){const _0x171b8b=a0_0x2f90c3;return['run-command',_0x171b8b(0x229),'list-directory','create-directory','get-working-directory'];}[a0_0x2f90c3(0x130)](){const _0x1aa007=a0_0x2f90c3;return{'type':_0x1aa007(0x1e6),'properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x1aa007(0x1cd),'enum':this[_0x1aa007(0x125)]()},'command':{'type':'string'},'directory':{'type':'string'}},'required':[_0x1aa007(0x1ac)]}},'timeout':{'type':_0x1aa007(0x134),'minimum':0x3e8,'maximum':this[_0x1aa007(0x1df)]},'async':{'type':'boolean'}},'required':[_0x1aa007(0x196)]};}['getCommandHistory'](_0x4d75ca=null){const _0x44c185=a0_0x2f90c3;if(_0x4d75ca)return this['commandHistory'][_0x44c185(0x211)](_0xf4ad3c=>_0xf4ad3c['agentId']===_0x4d75ca);return[...this['commandHistory']];}[a0_0x2f90c3(0x23b)](_0x35ba0e){const _0x2f945f=a0_0x2f90c3;for(const [_0x423b83]of this[_0x2f945f(0x11c)]){_0x423b83[_0x2f945f(0x1f6)](_0x35ba0e+'-')&&this['workingDirectories']['delete'](_0x423b83);}}['getCurrentWorkingDirectory'](_0x4a2eca,_0x5c6d83=null){const _0x3f4262=a0_0x2f90c3,_0x4a4af1=_0x4a2eca+'-'+(_0x5c6d83||'default');return this[_0x3f4262(0x11c)]['get'](_0x4a4af1)||_0x5c6d83||process[_0x3f4262(0x14a)]();}[a0_0x2f90c3(0x189)](){const _0x680404=a0_0x2f90c3;this['platformType']=process[_0x680404(0x1de)];if(process['platform']===_0x680404(0x1cf)){if(process[_0x680404(0x17c)][_0x680404(0x15e)])this[_0x680404(0x194)]='powershell';else process[_0x680404(0x17c)][_0x680404(0x21c)]&&process[_0x680404(0x17c)]['SHELL'][_0x680404(0x1ee)](_0x680404(0x1a4))?this['detectedTerminal']='bash':this[_0x680404(0x194)]='cmd';}else process[_0x680404(0x1de)]===_0x680404(0x11e)?this['detectedTerminal']='bash':this['detectedTerminal']=_0x680404(0x1a4);this['logger']?.[_0x680404(0x1c5)]('Terminal\x20detected',{'platform':this['platformType'],'terminal':this['detectedTerminal'],'shell':process[_0x680404(0x17c)][_0x680404(0x21c)]});}async['translateCommand'](_0x3d224f,_0x4a2a23={}){const _0x116108=a0_0x2f90c3,_0x1124bc=_0x3d224f[_0x116108(0x180)](),_0x1e6d95=this['analyzeCommandCompatibility'](_0x1124bc);this[_0x116108(0x19c)]?.[_0x116108(0x1c5)](_0x116108(0x199),{'command':_0x1124bc,'detectedTerminal':_0x1e6d95['detectedTerminal'],'commandType':_0x1e6d95['commandType'],'commandCategory':_0x1e6d95[_0x116108(0x119)],'compatible':_0x1e6d95[_0x116108(0x234)],'issues':_0x1e6d95[_0x116108(0x135)],'suggestedAction':_0x1e6d95['suggestedAction'],'confidence':_0x1e6d95['confidence']});if(_0x1e6d95[_0x116108(0x234)])return _0x3d224f;let _0xf090fa=null;if(this['detectedTerminal']==='cmd')_0xf090fa=this['translateToWindowsCmd'](_0x1124bc);else{if(this[_0x116108(0x194)]==='powershell')_0xf090fa=this['translateToPowerShell'](_0x1124bc);else this[_0x116108(0x194)]==='bash'&&(_0xf090fa=this[_0x116108(0x219)](_0x1124bc));}if(_0xf090fa&&this['isSimpleCommand'](_0x1124bc))return this[_0x116108(0x19c)]?.[_0x116108(0x1c5)](_0x116108(0x205),{'original':_0x3d224f,'translated':_0xf090fa,'method':_0x116108(0x1dd)}),_0xf090fa;if(_0x4a2a23['aiService']||_0x4a2a23[_0x116108(0x170)]&&_0x4a2a23[_0x116108(0x178)]){this[_0x116108(0x19c)]?.['info']('Attempting\x20AI\x20translation\x20for\x20complex\x20command',{'command':_0x3d224f['substring'](0x0,0x64)+_0x116108(0x20b),'hasAiService':!!_0x4a2a23[_0x116108(0x216)],'hasToolsRegistry':!!_0x4a2a23['toolsRegistry'],'agentId':_0x4a2a23[_0x116108(0x178)]});try{const _0x262718=await this['translateCommandWithAI'](_0x3d224f,_0x4a2a23);if(_0x262718&&_0x262718[_0x116108(0x180)]()!==_0x3d224f['trim']())return this[_0x116108(0x19c)]?.[_0x116108(0x1c5)](_0x116108(0x113),{'original':_0x3d224f,'translated':_0x262718,'method':'ai'}),_0x262718;else this['logger']?.['warn']('AI\x20translation\x20returned\x20same\x20command',{'original':_0x3d224f,'translated':_0x262718});}catch(_0x2bd683){this[_0x116108(0x19c)]?.['warn'](_0x116108(0x172),{'original':_0x3d224f,'error':_0x2bd683[_0x116108(0x1b9)],'stack':_0x2bd683[_0x116108(0x160)]});}}else this[_0x116108(0x19c)]?.[_0x116108(0x1d7)]('AI\x20translation\x20not\x20available\x20-\x20missing\x20context',{'hasAiService':!!_0x4a2a23[_0x116108(0x216)],'hasToolsRegistry':!!_0x4a2a23['toolsRegistry'],'hasAgentId':!!_0x4a2a23[_0x116108(0x178)],'contextKeys':Object[_0x116108(0x237)](_0x4a2a23)});return _0xf090fa||_0x3d224f;}[a0_0x2f90c3(0x1aa)](_0x519ce8){const _0x5b36f4=a0_0x2f90c3,_0x19c250=_0x519ce8['toLowerCase']();if(_0x519ce8[_0x5b36f4(0x1ee)]('\x5cn')||_0x519ce8['includes']('\x5cr')||_0x519ce8['includes']('\x5ct'))return![];if(_0x519ce8[_0x5b36f4(0x1ee)]('\x0a')||_0x519ce8[_0x5b36f4(0x1ee)]('\x0d'))return![];if(_0x519ce8[_0x5b36f4(0x1ee)]('#include')||_0x519ce8[_0x5b36f4(0x1ee)]('printf')||_0x519ce8[_0x5b36f4(0x1ee)](_0x5b36f4(0x150)))return![];if(_0x519ce8['includes'](_0x5b36f4(0x146))||_0x519ce8['includes'](_0x5b36f4(0x22d))||_0x519ce8['includes']('class\x20'))return![];if(_0x519ce8[_0x5b36f4(0x1ee)]('echo\x20\x27')&&!_0x519ce8[_0x5b36f4(0x1ee)](_0x5b36f4(0x14f)))return![];const _0x277b49=_0x519ce8['match'](/'([^']*)'/);if(_0x277b49&&_0x277b49[0x1]['length']>0x32)return![];if(this[_0x5b36f4(0x194)]==='cmd'&&_0x519ce8[_0x5b36f4(0x1ee)]('>')&&_0x519ce8[_0x5b36f4(0x1ee)]('/')&&!_0x519ce8['includes']('\x5c'))return![];if(_0x519ce8[_0x5b36f4(0x1ee)](_0x5b36f4(0x14b))||_0x519ce8[_0x5b36f4(0x1ee)](_0x5b36f4(0x101))||_0x519ce8['includes'](';\x20'))return![];if(_0x519ce8['includes']('$(')||_0x519ce8['includes']('`')||_0x519ce8['includes']('{')||_0x519ce8[_0x5b36f4(0x1ee)]('['))return![];if(_0x19c250['includes']('for\x20')||_0x19c250['includes'](_0x5b36f4(0x165))||_0x19c250[_0x5b36f4(0x1ee)]('if\x20'))return![];if(_0x19c250['includes']('export ')||_0x19c250[_0x5b36f4(0x1ee)](_0x5b36f4(0x1d4)))return![];if(_0x519ce8[_0x5b36f4(0x1ee)](_0x5b36f4(0x11f))||_0x519ce8['includes']('\x20>\x20&'))return![];return!![];}async[a0_0x2f90c3(0x1b4)](_0x3c82c1,_0x413b01){const _0x406363=a0_0x2f90c3;let _0x51820d=_0x413b01[_0x406363(0x216)];if(!_0x51820d&&_0x413b01[_0x406363(0x170)]&&_0x413b01[_0x406363(0x178)]){const _0x217055=_0x413b01['messageProcessor'];_0x217055&&_0x217055[_0x406363(0x216)]&&(_0x51820d=_0x217055[_0x406363(0x216)]);}if(!_0x51820d)throw new Error(_0x406363(0x149));const _0xb35902=this[_0x406363(0x23e)](_0x3c82c1),_0x1aef92=_0x406363(0x198);try{const _0x320d61=await _0x51820d[_0x406363(0xf3)](_0x1aef92,_0xb35902,{'agentId':_0x413b01['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x413b01[_0x406363(0xfc)],'customApiKeys':_0x413b01['customApiKeys'],'platformProvided':_0x413b01['platformProvided']}),_0x338d79=this['extractTranslatedCommand'](_0x320d61[_0x406363(0x191)]);return this[_0x406363(0x19c)]?.['debug']('AI\x20command\x20translation\x20completed',{'original':_0x3c82c1,'translated':_0x338d79,'model':_0x1aef92,'terminal':this['detectedTerminal']}),_0x338d79;}catch(_0x2d8516){this['logger']?.['error'](_0x406363(0x1fc),{'command':_0x3c82c1,'terminal':this['detectedTerminal'],'error':_0x2d8516['message']});throw _0x2d8516;}}['buildTranslationPrompt'](_0x42631f){const _0x4b1597=a0_0x2f90c3,_0x5922ed={'cmd':_0x4b1597(0x226),'powershell':'Windows\x20PowerShell','bash':'Bash\x20shell\x20(Linux/Unix/macOS)'},_0x384125=_0x5922ed[this['detectedTerminal']]||this['detectedTerminal'],_0xd782fa=this['analyzeCommandCompatibility'](_0x42631f);let _0x5a4b53=_0x4b1597(0x1f7)+_0x384125+_0x4b1597(0x21f)+_0x42631f+'\x0a```\x0a\x0aCOMMAND\x20ANALYSIS:\x0a-\x20Command\x20Type:\x20'+_0xd782fa[_0x4b1597(0x1b7)]+_0x4b1597(0x1a6)+_0xd782fa['commandCategory']+_0x4b1597(0x10b)+_0x384125+_0x4b1597(0x1bd)+(_0xd782fa['specificIssues']['join'](',\x20')||'None\x20detected');return _0xd782fa[_0x4b1597(0x1b7)]==='unix'&&_0xd782fa[_0x4b1597(0x163)]&&_0xd782fa[_0x4b1597(0x163)][this['detectedTerminal']]&&(_0x5a4b53+=_0x4b1597(0x1e2)+_0xd782fa[_0x4b1597(0x163)][this['detectedTerminal']]),_0x5a4b53+='\x0a\x0aREQUIREMENTS:\x0a1.\x20Make\x20the\x20command\x20work\x20correctly\x20in\x20'+_0x384125+_0x4b1597(0x127),_0x5a4b53;}[a0_0x2f90c3(0x1f3)](_0x5b0728){const _0xdc09fa=a0_0x2f90c3;let _0x52dbb8=_0x5b0728['replace'](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x52dbb8=_0x52dbb8['replace'](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x4b56bf=_0x52dbb8['trim']()['split']('\x0a');return _0x4b56bf[_0xdc09fa(0x22c)]>0x1&&!_0x52dbb8['includes']('&&')&&!_0x52dbb8[_0xdc09fa(0x1ee)]('||')&&(_0x52dbb8=_0x4b56bf[0x0]['trim']()),_0x52dbb8[_0xdc09fa(0x180)]();}[a0_0x2f90c3(0x1f9)](_0x558f07){const _0x40519f=a0_0x2f90c3,_0x508dad=this['classifyCommand'](_0x558f07),_0x1b3467=this[_0x40519f(0x193)](_0x508dad,this[_0x40519f(0x194)]);return{'compatible':_0x1b3467,'detectedTerminal':this['detectedTerminal'],'commandType':_0x508dad[_0x40519f(0x1ac)],'commandCategory':_0x508dad[_0x40519f(0xef)],'specificIssues':_0x508dad[_0x40519f(0x1a0)],'suggestedAction':_0x1b3467?_0x40519f(0x148):_0x40519f(0xf0),'confidence':_0x508dad[_0x40519f(0x11b)]};}['isCommandCompatible'](_0x3f65b6){const _0x86be30=a0_0x2f90c3;return this[_0x86be30(0x1f9)](_0x3f65b6)[_0x86be30(0x234)];}['classifyCommand'](_0x2f0eec){const _0x48a475=a0_0x2f90c3,_0x4be9b0=_0x2f0eec['toLowerCase']()['trim'](),_0x3f896d=_0x4be9b0[_0x48a475(0x220)]('\x20')[0x0],_0x367150=[];let _0x48d98b=0.9;const _0x97d1a2={'ls':{'category':_0x48a475(0x20e),'alternatives':{'cmd':'dir','powershell':_0x48a475(0x117)}},'cat':{'category':'file-viewing','alternatives':{'cmd':_0x48a475(0x1ac),'powershell':'Get-Content'}},'grep':{'category':_0x48a475(0x1e1),'alternatives':{'cmd':_0x48a475(0x232),'powershell':_0x48a475(0x114)}},'find':{'category':'file-search','alternatives':{'cmd':_0x48a475(0xf6),'powershell':'Get-ChildItem\x20-Recurse'}},'head':{'category':'file-viewing','alternatives':{'cmd':'more','powershell':'Get-Content\x20-Head'}},'tail':{'category':_0x48a475(0x1cb),'alternatives':{'cmd':_0x48a475(0x222),'powershell':'Get-Content\x20-Tail'}},'wc':{'category':'text-analysis','alternatives':{'cmd':'find\x20/c','powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':_0x48a475(0x201),'powershell':'Copy-Item'}},'mv':{'category':'file-move','alternatives':{'cmd':_0x48a475(0x1ca),'powershell':_0x48a475(0x10c)}},'rm':{'category':'file-delete','alternatives':{'cmd':'del','powershell':_0x48a475(0x151)}},'mkdir':{'category':_0x48a475(0x183),'alternatives':{'cmd':'mkdir','powershell':'New-Item\x20-Type\x20Directory'}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':'rmdir','powershell':_0x48a475(0x151)}},'touch':{'category':_0x48a475(0x16a),'alternatives':{'cmd':'type\x20nul\x20>','powershell':_0x48a475(0x1f2)}},'chmod':{'category':_0x48a475(0x22a),'alternatives':{'cmd':'icacls','powershell':'Set-Acl'}},'chown':{'category':'ownership','alternatives':{'cmd':'takeown','powershell':'Set-Acl'}},'ps':{'category':_0x48a475(0x176),'alternatives':{'cmd':_0x48a475(0x143),'powershell':_0x48a475(0x123)}},'kill':{'category':_0x48a475(0x1f4),'alternatives':{'cmd':_0x48a475(0x19e),'powershell':'Stop-Process'}},'killall':{'category':'process-kill','alternatives':{'cmd':_0x48a475(0x1ed),'powershell':_0x48a475(0x1c9)}},'top':{'category':'process-monitor','alternatives':{'cmd':'tasklist','powershell':_0x48a475(0x1be)}},'wget':{'category':_0x48a475(0x1b6),'alternatives':{'cmd':_0x48a475(0x231),'powershell':'Invoke-WebRequest'}},'curl':{'category':_0x48a475(0x129),'alternatives':{'cmd':_0x48a475(0x231),'powershell':_0x48a475(0x15d)}},'ping':{'category':'network-test','alternatives':{'cmd':'ping','powershell':_0x48a475(0xfb)}},'awk':{'category':_0x48a475(0x1b5),'alternatives':{'cmd':_0x48a475(0x122),'powershell':_0x48a475(0xff)}},'sed':{'category':'text-edit','alternatives':{'cmd':_0x48a475(0x1d2),'powershell':'native'}},'sort':{'category':'text-sort','alternatives':{'cmd':_0x48a475(0x20d),'powershell':'Sort-Object'}},'uniq':{'category':_0x48a475(0x1b3),'alternatives':{'cmd':_0x48a475(0x185),'powershell':_0x48a475(0x1e9)}},'pwd':{'category':_0x48a475(0x140),'alternatives':{'cmd':'cd','powershell':_0x48a475(0xf4)}},'whoami':{'category':'user-info','alternatives':{'cmd':_0x48a475(0x17a),'powershell':_0x48a475(0x16b)}},'env':{'category':'environment','alternatives':{'cmd':'set','powershell':'Get-ChildItem\x20Env:'}},'export':{'category':'environment','alternatives':{'cmd':_0x48a475(0x145),'powershell':'$env:'}},'source':{'category':_0x48a475(0x115),'alternatives':{'cmd':'call','powershell':'.\x20'}},'tar':{'category':'archive','alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':_0x48a475(0x111),'alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0x48a475(0xfe)}},'unzip':{'category':'archive','alternatives':{'cmd':'powershell\x20Expand-Archive','powershell':'Expand-Archive'}},'df':{'category':'disk-info','alternatives':{'cmd':'fsutil\x20volume\x20diskfree','powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':'disk-usage','alternatives':{'cmd':'dir\x20/s','powershell':'Get-ChildItem\x20-Recurse\x20|\x20Measure-Object'}},'free':{'category':_0x48a475(0x18b),'alternatives':{'cmd':_0x48a475(0x200),'powershell':_0x48a475(0xf1)}},'uname':{'category':_0x48a475(0x236),'alternatives':{'cmd':_0x48a475(0x200),'powershell':_0x48a475(0x112)}}},_0x31f382={'dir':{'category':_0x48a475(0x20e),'alternatives':{'unix':'ls','powershell':'Get-ChildItem'}},'type':{'category':'file-viewing','alternatives':{'unix':_0x48a475(0x195),'powershell':_0x48a475(0x1ba)}},'copy':{'category':'file-copy','alternatives':{'unix':'cp','powershell':'Copy-Item'}},'move':{'category':_0x48a475(0x12f),'alternatives':{'unix':'mv','powershell':'Move-Item'}},'del':{'category':_0x48a475(0x1e0),'alternatives':{'unix':'rm','powershell':_0x48a475(0x151)}},'tasklist':{'category':'process-list','alternatives':{'unix':'ps','powershell':_0x48a475(0x123)}},'taskkill':{'category':_0x48a475(0x1f4),'alternatives':{'unix':'kill','powershell':_0x48a475(0x1ae)}},'findstr':{'category':_0x48a475(0x1e1),'alternatives':{'unix':'grep','powershell':'Select-String'}}},_0x246b82={'get-childitem':{'category':_0x48a475(0x20e),'alternatives':{'unix':'ls','cmd':'dir'}},'get-content':{'category':'file-viewing','alternatives':{'unix':_0x48a475(0x195),'cmd':'type'}},'copy-item':{'category':'file-copy','alternatives':{'unix':'cp','cmd':_0x48a475(0x201)}},'move-item':{'category':'file-move','alternatives':{'unix':'mv','cmd':_0x48a475(0x1ca)}},'remove-item':{'category':_0x48a475(0x1e0),'alternatives':{'unix':'rm','cmd':_0x48a475(0xfd)}},'get-process':{'category':_0x48a475(0x176),'alternatives':{'unix':'ps','cmd':_0x48a475(0x143)}},'stop-process':{'category':_0x48a475(0x1f4),'alternatives':{'unix':_0x48a475(0xf9),'cmd':_0x48a475(0x19e)}}};let _0xa96612='unknown',_0x482331=_0x48a475(0xf7),_0x221e47={};if(_0x97d1a2[_0x3f896d])_0xa96612=_0x48a475(0x1d6),_0x482331=_0x97d1a2[_0x3f896d]['category'],_0x221e47=_0x97d1a2[_0x3f896d]['alternatives'];else{if(_0x31f382[_0x3f896d])_0xa96612='windows-cmd',_0x482331=_0x31f382[_0x3f896d][_0x48a475(0xef)],_0x221e47=_0x31f382[_0x3f896d][_0x48a475(0x163)];else{if(_0x246b82[_0x3f896d])_0xa96612='powershell',_0x482331=_0x246b82[_0x3f896d][_0x48a475(0xef)],_0x221e47=_0x246b82[_0x3f896d][_0x48a475(0x163)];else{const _0xf44b84=[_0x48a475(0x192),'cd','exit',_0x48a475(0x215)];_0xf44b84['includes'](_0x3f896d)?(_0xa96612=_0x48a475(0x13b),_0x482331=_0x48a475(0x169)):(_0xa96612=_0x48a475(0xf7),_0x48d98b=0.3);}}}return _0x2f0eec[_0x48a475(0x1ee)]('\x27')&&!_0x2f0eec[_0x48a475(0x1ee)]('\x22')&&_0x367150['push']('single-quotes-problematic'),_0x2f0eec['includes']('/')&&!_0x2f0eec[_0x48a475(0x1ee)]('\x5c')&&!_0x2f0eec[_0x48a475(0x1ee)](_0x48a475(0x167))&&_0x2f0eec[_0x48a475(0x1ee)]('>')&&_0x367150['push'](_0x48a475(0x23c)),(_0x2f0eec[_0x48a475(0x1ee)]('\x5cn')||_0x2f0eec['includes']('\x5ct'))&&_0x367150['push']('escape-sequences'),(_0x2f0eec['includes'](_0x48a475(0x14b))||_0x2f0eec['includes'](_0x48a475(0x101))||_0x2f0eec['includes'](';'))&&_0x367150[_0x48a475(0x208)]('command-chaining'),{'type':_0xa96612,'category':_0x482331,'alternatives':_0x221e47,'issues':_0x367150,'confidence':_0x48d98b,'firstWord':_0x3f896d,'fullCommand':_0x2f0eec};}['isCommandCompatibleWithTerminal'](_0xe0fad2,_0x15dadb){const _0x1d4ba1=a0_0x2f90c3;switch(_0x15dadb){case _0x1d4ba1(0x152):if(_0xe0fad2[_0x1d4ba1(0x1ac)]===_0x1d4ba1(0x1d6))return![];if(_0xe0fad2[_0x1d4ba1(0x1a0)]['includes'](_0x1d4ba1(0x10e)))return![];if(_0xe0fad2[_0x1d4ba1(0x1a0)]['includes']('unix-style-paths'))return![];return _0xe0fad2[_0x1d4ba1(0x1ac)]===_0x1d4ba1(0x1ea)||_0xe0fad2['type']===_0x1d4ba1(0x13b);case'powershell':if(_0xe0fad2['type']===_0x1d4ba1(0x1d6)&&!_0xe0fad2['alternatives'][_0x1d4ba1(0x203)])return![];return!![];case _0x1d4ba1(0x1a4):if(_0xe0fad2['type']===_0x1d4ba1(0x1ea))return![];return _0xe0fad2['type']==='unix'||_0xe0fad2['type']===_0x1d4ba1(0x13b);default:return![];}}['translateToWindowsCmd'](_0x74b03d){const _0x3dcba6=a0_0x2f90c3;let _0x5a63b1=_0x74b03d;const _0x454f71=new Map([[/^ls\s*$/,'dir'],[/^ls\s+-la?$/,'dir'],[/^ls\s+-l$/,_0x3dcba6(0x1f1)],[/^ls\s+-a$/,_0x3dcba6(0xfa)],[/^cat\s+(.+)$/,_0x3dcba6(0x1d8)],[/^cp\s+(.+)\s+(.+)$/,_0x3dcba6(0x20c)],[/^mv\s+(.+)\s+(.+)$/,_0x3dcba6(0x1bc)],[/^rm\s+(.+)$/,_0x3dcba6(0x131)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,'rmdir\x20$1'],[/^ps\s*$/,'tasklist'],[/^kill\s+(.+)$/,_0x3dcba6(0x214)],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,'echo\x20%USERNAME%'],[/^ping\s+(.+)$/,_0x3dcba6(0x238)],[/^wget\s+(.+)$/,'curl\x20-O\x20$1'],[/^curl\s+(.+)$/,_0x3dcba6(0x13f)]]);for(const [_0x20f989,_0x54226c]of _0x454f71){if(_0x20f989['test'](_0x5a63b1)){_0x5a63b1=_0x5a63b1['replace'](_0x20f989,_0x54226c);break;}}_0x5a63b1=_0x5a63b1['replace'](/echo\s+'([^']+)'\s*>/g,_0x3dcba6(0x177)),_0x5a63b1=_0x5a63b1['replace'](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x5a63b1[_0x3dcba6(0x1ee)](_0x3dcba6(0x14e))&&_0x5a63b1['includes']('\x5cn')){const _0xd3241f=_0x5a63b1['match'](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0xd3241f){const _0x3da873=_0xd3241f[0x1][_0x3dcba6(0x18e)](/\\n/g,'\x0a'),_0x504942=_0xd3241f[0x2],_0x462d86=_0x3da873[_0x3dcba6(0x220)]('\x0a');_0x5a63b1='('+_0x462d86[_0x3dcba6(0x12d)](_0x4fb007=>_0x3dcba6(0x179)+_0x4fb007)['join']('\x20&\x20')+')\x20>\x20'+_0x504942;}}return this[_0x3dcba6(0x19c)]?.['info']('Command\x20translated\x20for\x20Windows\x20CMD',{'original':_0x74b03d,'translated':_0x5a63b1}),_0x5a63b1;}['translateToPowerShell'](_0x440054){const _0x5c8a6a=a0_0x2f90c3;let _0x11f029=_0x440054;const _0x88692d=new Map([[/^ls\s*$/,_0x5c8a6a(0x117)],[/^ls\s+-la?$/,'Get-ChildItem\x20-Force'],[/^cat\s+(.+)$/,_0x5c8a6a(0x1e5)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x5c8a6a(0x223)],[/^rm\s+(.+)$/,_0x5c8a6a(0x1fd)],[/^pwd\s*$/,_0x5c8a6a(0xf4)],[/^ps\s*$/,_0x5c8a6a(0x123)]]);for(const [_0x4794f7,_0x4869ae]of _0x88692d){if(_0x4794f7[_0x5c8a6a(0x16c)](_0x11f029)){_0x11f029=_0x11f029['replace'](_0x4794f7,_0x4869ae);break;}}return this[_0x5c8a6a(0x19c)]?.[_0x5c8a6a(0x1c5)](_0x5c8a6a(0x1b2),{'original':_0x440054,'translated':_0x11f029}),_0x11f029;}['translateToBash'](_0x1b8af7){const _0x214cca=a0_0x2f90c3;let _0x40354f=_0x1b8af7;const _0x420243=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,'ls\x20-a'],[/^type\s+(.+)$/,'cat\x20$1'],[/^copy\s+(.+)\s+(.+)$/,_0x214cca(0x1a9)],[/^move\s+(.+)\s+(.+)$/,'mv\x20$1\x20$2'],[/^del\s+(.+)$/,_0x214cca(0x15c)],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,_0x214cca(0x126)]]);for(const [_0x28ed0d,_0x936ab5]of _0x420243){if(_0x28ed0d['test'](_0x40354f)){_0x40354f=_0x40354f[_0x214cca(0x18e)](_0x28ed0d,_0x936ab5);break;}}return _0x40354f;}async[a0_0x2f90c3(0x156)](_0x58d30a){}async[a0_0x2f90c3(0x144)](_0x212226,_0x129bd4,_0x56e418={}){const _0x1fba53=a0_0x2f90c3,{agentId:_0x121bfe,context:_0x3b54ab}=_0x56e418;if(!_0x121bfe)throw new Error(_0x1fba53(0x16f));const _0x1f159e=this[_0x1fba53(0x1fe)](_0x121bfe),_0x58abdd=_0x1f159e['filter'](_0xce1b81=>_0xce1b81['state']===_0x1fba53(0x1bb)||_0xce1b81[_0x1fba53(0x23a)]==='waiting_for_input');if(_0x58abdd[_0x1fba53(0x22c)]>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error('Maximum\x20background\x20commands\x20per\x20agent\x20exceeded\x20('+this['MAX_BACKGROUND_COMMANDS_PER_AGENT']+')');const _0x29b3ff=Array['from'](this['commandTracker']['values']()),_0x31f72f=_0x29b3ff[_0x1fba53(0x211)](_0x3c7433=>_0x3c7433['state']===_0x1fba53(0x1bb)||_0x3c7433['state']===_0x1fba53(0x132));if(_0x31f72f[_0x1fba53(0x22c)]>=this['MAX_BACKGROUND_COMMANDS_GLOBAL'])throw new Error('Maximum\x20global\x20background\x20commands\x20exceeded\x20('+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0x4fd0f5=_0x121bfe+_0x1fba53(0x22b)+Date['now']()+'-'+ ++this['commandIdCounter'],_0x2bacfa=_0x212226;let _0x525742;try{_0x525742=await this[_0x1fba53(0x102)](_0x212226,{'agentId':_0x121bfe,'toolsRegistry':_0x3b54ab?.['toolsRegistry'],'messageProcessor':_0x3b54ab?.[_0x1fba53(0x224)],'aiService':_0x3b54ab?.['aiService'],'apiKey':_0x3b54ab?.['apiKey'],'customApiKeys':_0x3b54ab?.[_0x1fba53(0x121)],'platformProvided':_0x3b54ab?.['platformProvided']});}catch(_0x281dee){this[_0x1fba53(0x19c)]?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x2bacfa,'error':_0x281dee['message']}),_0x525742=_0x212226;}this['logger']?.['info'](_0x1fba53(0x136)+_0x525742,{'commandId':_0x4fd0f5,'agentId':_0x121bfe,'originalCommand':_0x2bacfa,'workingDirectory':_0x129bd4});let _0x35f9f0;if(this[_0x1fba53(0x194)]==='cmd'||this['detectedTerminal']===_0x1fba53(0x203)){const _0x4d0610=this['detectedTerminal']==='powershell'?_0x1fba53(0x203):'cmd',_0x25669f=this[_0x1fba53(0x194)]===_0x1fba53(0x203)?['-Command',_0x525742]:['/c',_0x525742];_0x35f9f0=spawn(_0x4d0610,_0x25669f,{'cwd':_0x129bd4,'env':{...process[_0x1fba53(0x17c)]},'windowsHide':!![],'stdio':['pipe','pipe','pipe']});}else _0x35f9f0=spawn('sh',['-c',_0x525742],{'cwd':_0x129bd4,'env':{...process['env']},'stdio':[_0x1fba53(0x18c),_0x1fba53(0x18c),'pipe']});const _0x32854c={'commandId':_0x4fd0f5,'agentId':_0x121bfe,'pid':_0x35f9f0['pid'],'command':_0x2bacfa,'translatedCommand':_0x525742,'workingDirectory':_0x129bd4,'startTime':new Date()['toISOString'](),'state':'running','exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date[_0x1fba53(0x174)](),'promptDetected':null,'process':_0x35f9f0};return this[_0x1fba53(0x100)][_0x1fba53(0x145)](_0x4fd0f5,_0x32854c),_0x35f9f0['stdout']['on'](_0x1fba53(0x1d9),_0x3d34c4=>{const _0x240d66=_0x1fba53,_0x5e9023=_0x3d34c4['toString']();_0x32854c['stdoutBuffer']+=_0x5e9023,_0x32854c['lastOutputTime']=Date[_0x240d66(0x174)]();if(!_0x32854c[_0x240d66(0x1ab)]){const _0x13ee61=this['promptDetector'][_0x240d66(0x118)](_0x32854c[_0x240d66(0x1f5)],'stdout');_0x13ee61&&(_0x32854c[_0x240d66(0x1ab)]=_0x13ee61,_0x32854c[_0x240d66(0x23a)]=_0x240d66(0x132),this[_0x240d66(0x19c)]?.['info'](_0x240d66(0x17b),{'commandId':_0x4fd0f5,'agentId':_0x121bfe,'type':_0x13ee61[_0x240d66(0x1ac)],'matchedText':_0x13ee61['matchedText']}));}}),_0x35f9f0[_0x1fba53(0x12b)]['on'](_0x1fba53(0x1d9),_0x154718=>{const _0x54f103=_0x1fba53,_0x49401d=_0x154718[_0x54f103(0x14d)]();_0x32854c[_0x54f103(0x20a)]+=_0x49401d,_0x32854c['lastOutputTime']=Date[_0x54f103(0x174)]();if(!_0x32854c[_0x54f103(0x1ab)]){const _0x116dce=this['promptDetector']['detectPrompt'](_0x32854c['stderrBuffer'],_0x54f103(0x12b));_0x116dce&&(_0x32854c[_0x54f103(0x1ab)]=_0x116dce,_0x32854c['state']='waiting_for_input',this['logger']?.[_0x54f103(0x1c5)]('Prompt\x20detected\x20in\x20background\x20command\x20stderr',{'commandId':_0x4fd0f5,'agentId':_0x121bfe,'type':_0x116dce[_0x54f103(0x1ac)],'matchedText':_0x116dce['matchedText']}));}}),_0x35f9f0['on'](_0x1fba53(0x142),(_0x1839f4,_0xb68bb7)=>{const _0x262d28=_0x1fba53;_0x32854c[_0x262d28(0x19a)]=_0x1839f4,_0x32854c[_0x262d28(0x23a)]=_0x1839f4===0x0?_0x262d28(0x18a):_0x262d28(0x1b0),_0x32854c['endTime']=new Date()['toISOString'](),this[_0x262d28(0x19c)]?.[_0x262d28(0x1c5)]('Background\x20command\x20exited',{'commandId':_0x4fd0f5,'agentId':_0x121bfe,'exitCode':_0x1839f4,'signal':_0xb68bb7,'state':_0x32854c[_0x262d28(0x23a)]});}),_0x35f9f0['on'](_0x1fba53(0x107),_0x2d1ee8=>{const _0x5de400=_0x1fba53;_0x32854c[_0x5de400(0x23a)]='failed',_0x32854c[_0x5de400(0x107)]=_0x2d1ee8[_0x5de400(0x1b9)],_0x32854c[_0x5de400(0x19d)]=new Date()['toISOString'](),this[_0x5de400(0x19c)]?.['error']('Background\x20command\x20error',{'commandId':_0x4fd0f5,'agentId':_0x121bfe,'error':_0x2d1ee8['message']});}),{'success':!![],'commandId':_0x4fd0f5,'pid':_0x35f9f0[_0x1fba53(0x1f8)],'command':_0x2bacfa,'translatedCommand':_0x525742,'workingDirectory':_0x129bd4,'message':_0x1fba53(0x162)+_0x4fd0f5};}['sendInput'](_0x4c4aa7,_0x552f30,_0x135f38){const _0x1624ab=a0_0x2f90c3,_0x14b789=this[_0x1624ab(0x1c3)](_0x4c4aa7,_0x135f38);if(_0x14b789[_0x1624ab(0x23a)]===_0x1624ab(0x18a)||_0x14b789[_0x1624ab(0x23a)]==='failed')throw new Error(_0x1624ab(0x1ad)+_0x14b789['state']+'\x20command');if(!_0x14b789['process']||_0x14b789[_0x1624ab(0x14c)]['killed'])throw new Error('Command\x20process\x20is\x20not\x20running');const _0x1928e2=_0x552f30[_0x1624ab(0x1b8)]('\x0a')?_0x552f30:_0x552f30+'\x0a';return _0x14b789[_0x1624ab(0x14c)]['stdin'][_0x1624ab(0x17e)](_0x1928e2),this[_0x1624ab(0x19c)]?.['info'](_0x1624ab(0x1a2),{'commandId':_0x4c4aa7,'agentId':_0x135f38,'inputLength':_0x552f30['length']}),_0x14b789[_0x1624ab(0x23a)]===_0x1624ab(0x132)&&(_0x14b789[_0x1624ab(0x23a)]=_0x1624ab(0x1bb),_0x14b789[_0x1624ab(0x1ab)]=null),{'success':!![],'commandId':_0x4c4aa7,'message':'Input\x20sent\x20successfully'};}[a0_0x2f90c3(0x173)](_0xe1d370,_0x16898c){const _0x43ed7e=a0_0x2f90c3,_0x3ff101=this[_0x43ed7e(0x1c3)](_0xe1d370,_0x16898c),_0x2b3a25=Date['now']()-_0x3ff101[_0x43ed7e(0x175)];return{'success':!![],'commandId':_0xe1d370,'pid':_0x3ff101['pid'],'command':_0x3ff101[_0x43ed7e(0x12e)],'state':_0x3ff101[_0x43ed7e(0x23a)],'exitCode':_0x3ff101['exitCode'],'startTime':_0x3ff101[_0x43ed7e(0x12a)],'endTime':_0x3ff101['endTime'],'workingDirectory':_0x3ff101['workingDirectory'],'stdout':_0x3ff101[_0x43ed7e(0x1f5)],'stderr':_0x3ff101[_0x43ed7e(0x20a)],'stdoutLength':_0x3ff101[_0x43ed7e(0x1f5)]['length'],'stderrLength':_0x3ff101['stderrBuffer']['length'],'lastOutputTime':_0x3ff101['lastOutputTime'],'timeSinceLastOutput':_0x2b3a25,'promptDetected':!!_0x3ff101[_0x43ed7e(0x1ab)],'promptInfo':_0x3ff101['promptDetected']||undefined};}[a0_0x2f90c3(0x1c8)](_0x59008f,_0xf7955e){const _0x59efcb=a0_0x2f90c3,_0x23ba14=this[_0x59efcb(0x1c3)](_0x59008f,_0xf7955e);if(_0x23ba14[_0x59efcb(0x23a)]==='completed'||_0x23ba14['state']==='failed')return{'success':!![],'commandId':_0x59008f,'message':_0x59efcb(0x10f),'state':_0x23ba14[_0x59efcb(0x23a)]};if(_0x23ba14['process']&&!_0x23ba14[_0x59efcb(0x14c)][_0x59efcb(0x181)])return _0x23ba14[_0x59efcb(0x14c)][_0x59efcb(0xf9)](_0x59efcb(0x187)),setTimeout(()=>{const _0x24414d=_0x59efcb;_0x23ba14['process']&&!_0x23ba14['process']['killed']&&_0x23ba14['process']['kill'](_0x24414d(0x116));},0x1388),this['logger']?.['info']('Background\x20command\x20killed',{'commandId':_0x59008f,'agentId':_0xf7955e}),{'success':!![],'commandId':_0x59008f,'message':_0x59efcb(0x141)};return{'success':![],'commandId':_0x59008f,'error':'Command\x20process\x20not\x20found\x20or\x20already\x20killed'};}['listAgentCommands'](_0x54392c){const _0x438e81=a0_0x2f90c3,_0x236c7d=this['getAgentCommands'](_0x54392c);return _0x236c7d['map'](_0x5b4a57=>({'commandId':_0x5b4a57['commandId'],'command':_0x5b4a57[_0x438e81(0x12e)],'state':_0x5b4a57['state'],'pid':_0x5b4a57['pid'],'exitCode':_0x5b4a57['exitCode'],'startTime':_0x5b4a57[_0x438e81(0x12a)],'endTime':_0x5b4a57['endTime'],'promptDetected':!!_0x5b4a57['promptDetected'],'timeSinceLastOutput':Date[_0x438e81(0x174)]()-_0x5b4a57['lastOutputTime']}));}['getAgentCommands'](_0x5c2e3d){const _0x4dc647=a0_0x2f90c3;return Array['from'](this[_0x4dc647(0x100)][_0x4dc647(0x23d)]())['filter'](_0x4e04fa=>_0x4e04fa[_0x4dc647(0x178)]===_0x5c2e3d);}['validateCommandOwnership'](_0x34216f,_0x1cc1ee){const _0x39495a=a0_0x2f90c3,_0x4295e9=this[_0x39495a(0x100)]['get'](_0x34216f);if(!_0x4295e9)throw new Error('Command\x20not\x20found:\x20'+_0x34216f);if(_0x4295e9[_0x39495a(0x178)]!==_0x1cc1ee)throw new Error('Access\x20denied:\x20Command\x20belongs\x20to\x20agent\x20'+_0x4295e9['agentId']);return _0x4295e9;}async['cleanupAgent'](_0x5289b5){const _0x14677f=a0_0x2f90c3,_0xe5271c=this[_0x14677f(0x1fe)](_0x5289b5);let _0x2953e6=0x0,_0x480df5=0x0;for(const _0xa04776 of _0xe5271c){_0xa04776[_0x14677f(0x14c)]&&!_0xa04776[_0x14677f(0x14c)][_0x14677f(0x181)]&&(_0xa04776['process'][_0x14677f(0xf9)](_0x14677f(0x187)),_0x2953e6++,setTimeout(()=>{const _0x547e76=_0x14677f;_0xa04776[_0x547e76(0x14c)]&&!_0xa04776[_0x547e76(0x14c)][_0x547e76(0x181)]&&_0xa04776[_0x547e76(0x14c)][_0x547e76(0xf9)](_0x547e76(0x116));},0xbb8)),this['commandTracker']['delete'](_0xa04776['commandId']),_0x480df5++;}return this[_0x14677f(0x19c)]?.[_0x14677f(0x1c5)]('Agent\x20commands\x20cleaned\x20up',{'agentId':_0x5289b5,'killedCount':_0x2953e6,'removedCount':_0x480df5}),{'success':!![],'agentId':_0x5289b5,'killedCount':_0x2953e6,'removedCount':_0x480df5,'message':'Cleaned\x20up\x20'+_0x480df5+_0x14677f(0x1e7)+_0x5289b5};}[a0_0x2f90c3(0x124)](){const _0x4afdf8=a0_0x2f90c3,_0x6239a4=Date['now']();let _0x154f1d=0x0;for(const [_0x22d85a,_0x3e412a]of this['commandTracker'][_0x4afdf8(0x21d)]()){if(_0x3e412a['state']!=='completed'&&_0x3e412a['state']!==_0x4afdf8(0x1b0))continue;const _0x2693c9=new Date(_0x3e412a[_0x4afdf8(0x12a)])['getTime'](),_0x2bf197=(_0x6239a4-_0x2693c9)/0x3e8/0x3c;_0x2bf197>this['MAX_COMMAND_AGE_MINUTES']&&(this[_0x4afdf8(0x100)]['delete'](_0x22d85a),_0x154f1d++);}return _0x154f1d>0x0&&this[_0x4afdf8(0x19c)]?.[_0x4afdf8(0x1c5)]('Stale\x20commands\x20cleaned\x20up',{'removedCount':_0x154f1d,'ageThresholdMinutes':this['MAX_COMMAND_AGE_MINUTES']}),{'success':!![],'removedCount':_0x154f1d,'message':'Cleaned\x20up\x20'+_0x154f1d+_0x4afdf8(0x1fa)};}}export default TerminalTool;
|
|
1
|
+
const a0_0x2ac257=a0_0xee52;(function(_0x24313b,_0x5bb5df){const _0x617813=a0_0xee52,_0x57c462=_0x24313b();while(!![]){try{const _0x509267=-parseInt(_0x617813(0x2aa))/0x1+-parseInt(_0x617813(0x232))/0x2*(parseInt(_0x617813(0x1d1))/0x3)+parseInt(_0x617813(0x1ae))/0x4+parseInt(_0x617813(0x19c))/0x5+-parseInt(_0x617813(0x1bf))/0x6*(-parseInt(_0x617813(0x2b3))/0x7)+parseInt(_0x617813(0x2b6))/0x8+-parseInt(_0x617813(0x292))/0x9;if(_0x509267===_0x5bb5df)break;else _0x57c462['push'](_0x57c462['shift']());}catch(_0x9cfde7){_0x57c462['push'](_0x57c462['shift']());}}}(a0_0x4aff,0xe4c32));function a0_0xee52(_0x355ac8,_0x53bf91){_0x355ac8=_0x355ac8-0x181;const _0x4affd1=a0_0x4aff();let _0xee527e=_0x4affd1[_0x355ac8];if(a0_0xee52['PtWLGo']===undefined){var _0xe20961=function(_0x97e0bf){const _0x1472b0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ba71a='',_0xc0a18d='';for(let _0x2071f3=0x0,_0x5f5a78,_0x21d7df,_0x561618=0x0;_0x21d7df=_0x97e0bf['charAt'](_0x561618++);~_0x21d7df&&(_0x5f5a78=_0x2071f3%0x4?_0x5f5a78*0x40+_0x21d7df:_0x21d7df,_0x2071f3++%0x4)?_0x3ba71a+=String['fromCharCode'](0xff&_0x5f5a78>>(-0x2*_0x2071f3&0x6)):0x0){_0x21d7df=_0x1472b0['indexOf'](_0x21d7df);}for(let _0x449c88=0x0,_0x59dd5e=_0x3ba71a['length'];_0x449c88<_0x59dd5e;_0x449c88++){_0xc0a18d+='%'+('00'+_0x3ba71a['charCodeAt'](_0x449c88)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc0a18d);};a0_0xee52['DanReq']=_0xe20961,a0_0xee52['WyChsH']={},a0_0xee52['PtWLGo']=!![];}const _0x453f3a=_0x4affd1[0x0],_0x24631c=_0x355ac8+_0x453f3a,_0x3a552e=a0_0xee52['WyChsH'][_0x24631c];return!_0x3a552e?(_0xee527e=a0_0xee52['DanReq'](_0xee527e),a0_0xee52['WyChsH'][_0x24631c]=_0xee527e):_0xee527e=_0x3a552e,_0xee527e;}import{BaseTool}from'./baseTool.js';import a0_0x3ba71a from'../utilities/tagParser.js';import a0_0xc0a18d from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';import a0_0x2071f3 from'path';import a0_0x5f5a78 from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0x83420d=a0_0xee52;this['promptPatterns']=[{'pattern':/\(y\/n\)/i,'type':_0x83420d(0x269),'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':_0x83420d(0x269),'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':_0x83420d(0x294),'description':'Continue\x20prompt'},{'pattern':/proceed\?/i,'type':'continue','description':_0x83420d(0x1f0)},{'pattern':/press any key to continue/i,'type':'keypress','description':'Press\x20any\x20key'},{'pattern':/press enter to continue/i,'type':_0x83420d(0x1c6),'description':_0x83420d(0x27a)},{'pattern':/hit enter to continue/i,'type':'keypress','description':_0x83420d(0x295)},{'pattern':/password:/i,'type':'password','description':'Password\x20prompt'},{'pattern':/enter password/i,'type':'password','description':_0x83420d(0x280)},{'pattern':/passphrase:/i,'type':_0x83420d(0x2c9),'description':_0x83420d(0x25a)},{'pattern':/username:/i,'type':_0x83420d(0x2a6),'description':'Username\x20prompt'},{'pattern':/enter username/i,'type':'username','description':'Username\x20prompt'},{'pattern':/enter\s+\w+:/i,'type':_0x83420d(0x1d3),'description':'Generic\x20input\x20prompt'},{'pattern':/please enter/i,'type':_0x83420d(0x1d3),'description':_0x83420d(0x204)},{'pattern':/input:/i,'type':_0x83420d(0x1d3),'description':'Generic\x20input\x20prompt'},{'pattern':/are you sure\?/i,'type':'confirmation','description':_0x83420d(0x272)},{'pattern':/do you want to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/would you like to/i,'type':'confirmation','description':_0x83420d(0x272)},{'pattern':/select an option/i,'type':'selection','description':'Selection\x20prompt'},{'pattern':/choose/i,'type':'selection','description':'Selection\x20prompt'},{'pattern':/\d+\)\s+\w+/g,'type':_0x83420d(0x274),'description':'Menu\x20selection'}];}[a0_0x2ac257(0x262)](_0x21d7df,_0x561618='stdout'){const _0x36ebb4=a0_0x2ac257;if(!_0x21d7df||_0x21d7df['trim']()[_0x36ebb4(0x1e2)]===0x0)return null;const _0x449c88=_0x21d7df['split']('\x0a'),_0x59dd5e=_0x449c88[_0x36ebb4(0x263)](-0x5)[_0x36ebb4(0x221)]('\x0a');for(const _0x3c616c of this['promptPatterns']){const _0x4effd6=_0x59dd5e['match'](_0x3c616c[_0x36ebb4(0x1f2)]);if(_0x4effd6)return{'detected':!![],'type':_0x3c616c['type'],'description':_0x3c616c[_0x36ebb4(0x1c3)],'matchedText':_0x4effd6[0x0],'matchIndex':_0x4effd6['index'],'source':_0x561618,'fullContext':_0x59dd5e,'timestamp':Date['now']()};}const _0x559dc4=_0x449c88[_0x449c88['length']-0x1]||'';if(_0x559dc4[_0x36ebb4(0x267)]()['length']>0x0){const _0x5b3097=/:\s*$/[_0x36ebb4(0x2c7)](_0x559dc4),_0x522787=/\?\s*$/['test'](_0x559dc4);if(_0x5b3097||_0x522787){const _0x17dc07=/\b(enter|type|provide|specify|input)\b/i[_0x36ebb4(0x2c7)](_0x559dc4);if(_0x17dc07)return{'detected':!![],'type':_0x36ebb4(0x185),'description':_0x36ebb4(0x235),'matchedText':_0x559dc4['trim'](),'source':_0x561618,'fullContext':_0x59dd5e,'timestamp':Date[_0x36ebb4(0x2a9)](),'confidence':0.7};}}return null;}[a0_0x2ac257(0x2a4)](_0xd511bc,_0x2ad48=0x7530){const _0x5c86f1=a0_0x2ac257,_0x539186=Date[_0x5c86f1(0x2a9)](),_0x1a20dc=_0x539186-_0xd511bc;return{'isHanging':_0x1a20dc>=_0x2ad48,'timeSinceLastOutput':_0x1a20dc,'threshold':_0x2ad48,'likelyWaiting':_0x1a20dc>=_0x2ad48/0x2};}}class TerminalTool extends BaseTool{constructor(_0x45adcc={},_0x363553=null){const _0x4bf029=a0_0x2ac257;super(_0x45adcc,_0x363553),this[_0x4bf029(0x20a)]=![],this['isAsync']=![],this[_0x4bf029(0x1d2)]=_0x45adcc['timeout']||0x1d4c0,this['maxConcurrentOperations']=_0x45adcc['maxConcurrentOperations']||0x3,this['workingDirectories']=new Map(),this[_0x4bf029(0x264)]=[],this['allowedCommands']=_0x45adcc['allowedCommands']||null,this[_0x4bf029(0x28b)]=_0x45adcc[_0x4bf029(0x28b)]||['rm\x20-rf\x20/','format','del\x20/f\x20/q','shutdown',_0x4bf029(0x2c2),_0x4bf029(0x2b7)],this['directoryAccessManager']=new a0_0xc0a18d(_0x45adcc,_0x363553),this['promptDetector']=new PromptDetector(),this['commandTracker']=new Map(),this['commandIdCounter']=0x0,this[_0x4bf029(0x1c2)]=_0x45adcc['maxBackgroundCommandsPerAgent']||0x5,this[_0x4bf029(0x21a)]=_0x45adcc['maxBackgroundCommandsGlobal']||0x14,this[_0x4bf029(0x225)]=_0x45adcc['maxCommandAgeMinutes']||0x3c,this['detectedTerminal']=null,this['platformType']=null,this[_0x4bf029(0x27f)]();}['getDescription'](){const _0x321273=a0_0x2ac257;return'\x0aTerminal\x20Tool:\x20Execute\x20system\x20commands\x20and\x20manage\x20terminal\x20operations\x20safely.\x0a\x0aIMPORTANT:\x20For\x20file\x20and\x20directory\x20creation,\x20prefer\x20using\x20the\x20FileSystem\x20tool.\x0aReserve\x20the\x20Terminal\x20tool\x20for\x20command-line\x20operations\x20like\x20npm,\x20git,\x20curl,\x20etc.\x0a\x0aUSAGE:\x0a[tool\x20id=\x22terminal\x22]\x0a<run-command>npm\x20install\x20express</run-command>\x0a<change-directory>project/backend</change-directory>\x0a[/tool]\x0a\x0aALTERNATIVE\x20JSON\x20FORMAT:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22run-command\x22,\x0a\x20\x20\x20\x20\x20\x20\x22command\x22:\x20\x22npm\x20install\x20express\x22\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22change-directory\x22,\x0a\x20\x20\x20\x20\x20\x20\x22directory\x22:\x20\x22project/backend\x22\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20run-command:\x20Execute\x20a\x20command\x20in\x20the\x20current\x20directory\x0a-\x20change-directory:\x20Change\x20current\x20working\x20directory\x0a-\x20list-directory:\x20List\x20contents\x20of\x20current\x20or\x20specified\x20directory\x0a-\x20create-directory:\x20Create\x20a\x20new\x20directory\x20(prefer\x20FileSystem\x20tool)\x0a-\x20get-working-directory:\x20Get\x20current\x20working\x20directory\x0a\x0aPARAMETERS:\x0a-\x20command:\x20The\x20command\x20to\x20execute\x0a-\x20directory:\x20Directory\x20path\x20for\x20navigation/operations\x0a-\x20timeout:\x20Optional\x20timeout\x20in\x20milliseconds\x20(max\x20'+this[_0x321273(0x1d2)]+_0x321273(0x207)+this[_0x321273(0x1c2)]+_0x321273(0x23c)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+_0x321273(0x2ce);}[a0_0x2ac257(0x29b)](_0x1c9f0e){const _0x30fd88=a0_0x2ac257;try{const _0x121579={},_0x33f396=a0_0x3ba71a[_0x30fd88(0x26a)](_0x1c9f0e,_0x30fd88(0x234)),_0x29a681=a0_0x3ba71a['extractContent'](_0x1c9f0e,'change-directory'),_0x1ee546=a0_0x3ba71a['extractContent'](_0x1c9f0e,_0x30fd88(0x253)),_0x3a15b7=a0_0x3ba71a[_0x30fd88(0x26a)](_0x1c9f0e,'create-directory'),_0x1c1a77=a0_0x3ba71a[_0x30fd88(0x26a)](_0x1c9f0e,_0x30fd88(0x1eb)),_0x3f173e=a0_0x3ba71a['extractContent'](_0x1c9f0e,'timeout'),_0x4b38a7=a0_0x3ba71a[_0x30fd88(0x26a)](_0x1c9f0e,'async'),_0x4c0e75=[];return _0x33f396['length']>0x0&&_0x4c0e75['push']({'type':'run-command','command':_0x33f396[0x0]['trim']()}),_0x29a681['length']>0x0&&_0x4c0e75['push']({'type':'change-directory','directory':_0x29a681[0x0]['trim']()}),_0x1ee546['length']>0x0&&_0x4c0e75['push']({'type':_0x30fd88(0x253),'directory':_0x1ee546[0x0][_0x30fd88(0x267)]()||'.'}),_0x3a15b7['length']>0x0&&_0x4c0e75['push']({'type':'create-directory','directory':_0x3a15b7[0x0]['trim']()}),_0x1c1a77['length']>0x0&&_0x4c0e75[_0x30fd88(0x2d2)]({'type':'get-working-directory'}),_0x121579['actions']=_0x4c0e75,_0x3f173e['length']>0x0&&(_0x121579[_0x30fd88(0x1d2)]=parseInt(_0x3f173e[0x0],0xa)),_0x4b38a7['length']>0x0&&(_0x121579[_0x30fd88(0x26d)]=_0x4b38a7[0x0]['toLowerCase']()===_0x30fd88(0x2bb)),_0x121579[_0x30fd88(0x297)]=_0x1c9f0e['trim'](),_0x121579;}catch(_0x1bf212){throw new Error(_0x30fd88(0x2a8)+_0x1bf212['message']);}}[a0_0x2ac257(0x1d6)](){return['actions'];}[a0_0x2ac257(0x2c0)](_0x5de73c){const _0x34900a=a0_0x2ac257,_0x112280=[];if(!_0x5de73c[_0x34900a(0x278)]||!Array['isArray'](_0x5de73c['actions'])||_0x5de73c['actions']['length']===0x0)_0x112280['push'](_0x34900a(0x260));else for(const [_0x2a2d68,_0x19cdbb]of _0x5de73c[_0x34900a(0x278)][_0x34900a(0x1f5)]()){if(!_0x19cdbb[_0x34900a(0x1a0)]){_0x112280[_0x34900a(0x2d2)]('Action\x20'+(_0x2a2d68+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x19cdbb['type']){case _0x34900a(0x234):if(!_0x19cdbb['command']||!_0x19cdbb['command'][_0x34900a(0x267)]())_0x112280[_0x34900a(0x2d2)](_0x34900a(0x205)+(_0x2a2d68+0x1)+_0x34900a(0x1c1));else{if(this['isBlockedCommand'](_0x19cdbb[_0x34900a(0x1ac)]))_0x112280['push']('Action\x20'+(_0x2a2d68+0x1)+_0x34900a(0x1ee)+_0x19cdbb[_0x34900a(0x1ac)]);else this[_0x34900a(0x256)]&&!this['isAllowedCommand'](_0x19cdbb['command'])&&_0x112280[_0x34900a(0x2d2)](_0x34900a(0x205)+(_0x2a2d68+0x1)+_0x34900a(0x20e)+_0x19cdbb['command']);}break;case _0x34900a(0x2c3):case _0x34900a(0x253):case'create-directory':(!_0x19cdbb['directory']||!_0x19cdbb['directory']['trim']())&&_0x112280['push']('Action\x20'+(_0x2a2d68+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x19cdbb['type']);break;case _0x34900a(0x1eb):break;default:_0x112280[_0x34900a(0x2d2)](_0x34900a(0x205)+(_0x2a2d68+0x1)+_0x34900a(0x227)+_0x19cdbb['type']);}}return _0x5de73c[_0x34900a(0x1d2)]&&(_0x5de73c[_0x34900a(0x1d2)]<0x3e8||_0x5de73c[_0x34900a(0x1d2)]>this['timeout'])&&_0x112280['push'](_0x34900a(0x251)+this[_0x34900a(0x1d2)]+_0x34900a(0x20b)),{'valid':_0x112280[_0x34900a(0x1e2)]===0x0,'errors':_0x112280};}async[a0_0x2ac257(0x2c6)](_0x35997f,_0x5240c0){const _0x37ad60=a0_0x2ac257,{actions:_0x336410,timeout:_0x452c5f,async:_0x3c42a5}=_0x35997f,{agentId:_0x1c64df,projectDir:_0x22a1fc,directoryAccess:_0xd9004d}=_0x5240c0,_0x2c20df=_0xd9004d||this[_0x37ad60(0x229)]['createDirectoryAccess']({'workingDirectory':_0x22a1fc||process[_0x37ad60(0x2c1)](),'writeEnabledDirectories':[_0x22a1fc||process[_0x37ad60(0x2c1)]()],'restrictToProject':!![]});_0xd9004d&&_0xd9004d['workingDirectory']?console['log']('Terminal\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0xd9004d['workingDirectory']):console[_0x37ad60(0x206)](_0x37ad60(0x190),_0x22a1fc||process['cwd']());const _0x4f73dc=_0x1c64df+'-'+(_0x22a1fc||'default');let _0x3ee2b2=this[_0x37ad60(0x25c)][_0x37ad60(0x18f)](_0x4f73dc)||this['directoryAccessManager'][_0x37ad60(0x2c8)](_0x2c20df);const _0x28c602=[];for(const _0x540d57 of _0x336410){try{let _0x1d3cf4;switch(_0x540d57[_0x37ad60(0x1a0)]){case'run-command':_0x1d3cf4=await this['executeCommand'](_0x540d57[_0x37ad60(0x1ac)],_0x3ee2b2,{'timeout':_0x452c5f||this['timeout'],'async':_0x3c42a5||![],'agentId':_0x1c64df,'context':{'toolsRegistry':_0x5240c0['toolsRegistry'],'aiService':_0x5240c0['aiService'],'apiKey':_0x5240c0['apiKey'],'customApiKeys':_0x5240c0['customApiKeys'],'platformProvided':_0x5240c0[_0x37ad60(0x270)]}});break;case'change-directory':_0x1d3cf4=await this['changeDirectory'](_0x540d57[_0x37ad60(0x213)],_0x3ee2b2,_0x2c20df),_0x3ee2b2=_0x1d3cf4['newDirectory'],this[_0x37ad60(0x25c)]['set'](_0x4f73dc,_0x3ee2b2);break;case'list-directory':_0x1d3cf4=await this['listDirectory'](_0x540d57[_0x37ad60(0x213)]==='.'?_0x3ee2b2:_0x540d57[_0x37ad60(0x213)]);break;case _0x37ad60(0x196):_0x1d3cf4=await this[_0x37ad60(0x242)](_0x540d57[_0x37ad60(0x213)],_0x3ee2b2);break;case _0x37ad60(0x1eb):_0x1d3cf4={'success':!![],'action':_0x37ad60(0x1eb),'workingDirectory':_0x3ee2b2,'message':_0x37ad60(0x1ef)+_0x3ee2b2};break;default:throw new Error(_0x37ad60(0x22c)+_0x540d57['type']);}_0x28c602['push'](_0x1d3cf4),this[_0x37ad60(0x1ba)](_0x540d57,_0x1d3cf4,_0x1c64df);}catch(_0x117ff4){const _0x4ddcc6={'success':![],'action':_0x540d57['type'],'error':_0x117ff4[_0x37ad60(0x254)],'command':_0x540d57['command']||_0x540d57[_0x37ad60(0x213)],'workingDirectory':_0x3ee2b2};_0x28c602['push'](_0x4ddcc6),this[_0x37ad60(0x1ba)](_0x540d57,_0x4ddcc6,_0x1c64df);}}const _0x2d4db4=_0x28c602['every'](_0x472f95=>_0x472f95[_0x37ad60(0x1e7)]),_0x332708=_0x28c602[_0x37ad60(0x244)](_0x4d21ac=>!_0x4d21ac[_0x37ad60(0x1e7)]);return{'success':_0x2d4db4,'actions':_0x28c602,'workingDirectory':_0x3ee2b2,'executedActions':_0x336410['length'],'failedActions':_0x332708[_0x37ad60(0x1e2)],'toolUsed':_0x37ad60(0x211),'message':_0x2d4db4?_0x37ad60(0x2bf)+_0x336410['length']+'\x20actions\x20completed\x20successfully':_0x332708['length']+_0x37ad60(0x199)+_0x336410[_0x37ad60(0x1e2)]+_0x37ad60(0x252)};}async['executeCommand'](_0x1002ce,_0x488a4c,_0x52f95e={}){const _0x1ed603=a0_0x2ac257,{timeout:timeout=this['timeout'],async:_0x3028f5=![],agentId:_0x2918de,context:_0x5d3cb5}=_0x52f95e,_0x1377ba=_0x1002ce;let _0x140fc5;try{_0x140fc5=await this['translateCommand'](_0x1002ce,{'agentId':_0x2918de,'toolsRegistry':_0x5d3cb5?.[_0x1ed603(0x2c5)],'messageProcessor':_0x5d3cb5?.[_0x1ed603(0x287)],'aiService':_0x5d3cb5?.[_0x1ed603(0x1e4)],'apiKey':_0x5d3cb5?.[_0x1ed603(0x189)],'customApiKeys':_0x5d3cb5?.[_0x1ed603(0x275)],'platformProvided':_0x5d3cb5?.['platformProvided']});}catch(_0x48c3a4){this[_0x1ed603(0x1ff)]?.['warn'](_0x1ed603(0x1e5),{'originalCommand':_0x1377ba,'error':_0x48c3a4['message']}),_0x140fc5=_0x1002ce;}return new Promise((_0x43499f,_0x5a0899)=>{const _0x3e1c05=_0x1ed603,_0x1f9e3f=Date[_0x3e1c05(0x2a9)]();this[_0x3e1c05(0x1ff)]?.[_0x3e1c05(0x25b)](_0x3e1c05(0x25f)+_0x140fc5,{'originalCommand':_0x1377ba,'translatedCommand':_0x140fc5,'terminal':this[_0x3e1c05(0x1dd)],'workingDirectory':_0x488a4c,'timeout':timeout,'agentId':_0x2918de});const _0x16b670=exec(_0x140fc5,{'cwd':_0x488a4c,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x484e9f,_0x446dda,_0x534dd0)=>{const _0x1cb93b=_0x3e1c05,_0x3968ba=Date[_0x1cb93b(0x2a9)]()-_0x1f9e3f;if(_0x484e9f){this[_0x1cb93b(0x1ff)]?.['error']('Command\x20failed:\x20'+_0x140fc5,{'originalCommand':_0x1377ba,'translatedCommand':_0x140fc5,'error':_0x484e9f['message'],'workingDirectory':_0x488a4c,'executionTime':_0x3968ba}),_0x43499f({'success':![],'action':_0x1cb93b(0x234),'command':_0x1377ba,'translatedCommand':_0x140fc5!==_0x1377ba?_0x140fc5:undefined,'error':_0x484e9f['message'],'stderr':_0x534dd0['trim'](),'stdout':_0x446dda['trim'](),'exitCode':_0x484e9f[_0x1cb93b(0x18b)],'executionTime':_0x3968ba,'workingDirectory':_0x488a4c});return;}this['logger']?.['info']('Command\x20completed:\x20'+_0x140fc5,{'originalCommand':_0x1377ba,'translatedCommand':_0x140fc5,'executionTime':_0x3968ba,'stdoutLength':_0x446dda['length'],'stderrLength':_0x534dd0[_0x1cb93b(0x1e2)]}),_0x43499f({'success':!![],'action':'run-command','command':_0x1377ba,'translatedCommand':_0x140fc5!==_0x1377ba?_0x140fc5:undefined,'stdout':_0x446dda[_0x1cb93b(0x267)](),'stderr':_0x534dd0[_0x1cb93b(0x267)](),'exitCode':0x0,'executionTime':_0x3968ba,'workingDirectory':_0x488a4c,'message':_0x1cb93b(0x22a)+_0x3968ba+'ms'});});setTimeout(()=>{const _0x282f29=_0x3e1c05;!_0x16b670['killed']&&(_0x16b670[_0x282f29(0x192)]('SIGTERM'),_0x5a0899(new Error('Command\x20timed\x20out\x20after\x20'+timeout+'ms:\x20'+_0x140fc5+'\x20(original:\x20'+_0x1377ba+')')));},timeout);});}async[a0_0x2ac257(0x238)](_0x15e7d8,_0x347aaa,_0x9f377c={}){const _0x46277e=a0_0x2ac257,{timeout:timeout=this[_0x46277e(0x1d2)],agentId:_0x386f0d,context:_0x4389a9}=_0x9f377c,_0x1b07f8=_0x15e7d8;let _0x4a5bab;try{_0x4a5bab=await this[_0x46277e(0x1ea)](_0x15e7d8,{'agentId':_0x386f0d,'toolsRegistry':_0x4389a9?.[_0x46277e(0x2c5)],'messageProcessor':_0x4389a9?.[_0x46277e(0x287)],'aiService':_0x4389a9?.['aiService'],'apiKey':_0x4389a9?.['apiKey'],'customApiKeys':_0x4389a9?.['customApiKeys'],'platformProvided':_0x4389a9?.['platformProvided']});}catch(_0x143505){this[_0x46277e(0x1ff)]?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x1b07f8,'error':_0x143505[_0x46277e(0x254)]}),_0x4a5bab=_0x15e7d8;}return new Promise((_0x55970e,_0x46b181)=>{const _0x5c5b1d=_0x46277e,_0x274f5a=Date[_0x5c5b1d(0x2a9)]();this[_0x5c5b1d(0x1ff)]?.[_0x5c5b1d(0x25b)]('Executing\x20command\x20with\x20spawn:\x20'+_0x4a5bab,{'originalCommand':_0x1b07f8,'translatedCommand':_0x4a5bab,'terminal':this['detectedTerminal'],'workingDirectory':_0x347aaa,'timeout':timeout,'agentId':_0x386f0d});let _0x33c928;if(this[_0x5c5b1d(0x1dd)]==='cmd'||this['detectedTerminal']===_0x5c5b1d(0x20f)){const _0x1388b8=this[_0x5c5b1d(0x1dd)]==='powershell'?_0x5c5b1d(0x20f):_0x5c5b1d(0x1b0),_0x230c50=this['detectedTerminal']===_0x5c5b1d(0x20f)?['-Command',_0x4a5bab]:['/c',_0x4a5bab];_0x33c928=spawn(_0x1388b8,_0x230c50,{'cwd':_0x347aaa,'env':{...process[_0x5c5b1d(0x228)]},'windowsHide':!![]});}else _0x33c928=spawn('sh',['-c',_0x4a5bab],{'cwd':_0x347aaa,'env':{...process[_0x5c5b1d(0x228)]}});let _0x87c7a1='',_0x531dc2='',_0x3f176b=![],_0x4e4312=null,_0x70e63a=Date[_0x5c5b1d(0x2a9)](),_0x3fef99=null;const _0x189ec9=setTimeout(()=>{const _0x52d880=_0x5c5b1d;!_0x33c928[_0x52d880(0x209)]&&_0x4e4312===null&&(_0x3f176b=!![],this['logger']?.[_0x52d880(0x27c)](_0x52d880(0x1d9)+_0x4a5bab,{'timeout':timeout,'agentId':_0x386f0d}),_0x33c928[_0x52d880(0x192)]('SIGTERM'),setTimeout(()=>{const _0x4f8a08=_0x52d880;!_0x33c928['killed']&&_0x33c928[_0x4f8a08(0x192)](_0x4f8a08(0x2b0));},0x1388));},timeout);_0x33c928['stdout']['on']('data',_0x8b736c=>{const _0x28eed8=_0x5c5b1d,_0x1caaff=_0x8b736c[_0x28eed8(0x21d)]();_0x87c7a1+=_0x1caaff,_0x70e63a=Date['now'](),this[_0x28eed8(0x1ff)]?.['debug']('Command\x20output\x20chunk:\x20'+_0x1caaff['substring'](0x0,0x64),{'agentId':_0x386f0d,'command':_0x1b07f8['substring'](0x0,0x32)});if(!_0x3fef99){const _0x1aa975=this['promptDetector']['detectPrompt'](_0x87c7a1,_0x28eed8(0x2b8));_0x1aa975&&(_0x3fef99=_0x1aa975,this['logger']?.[_0x28eed8(0x25b)](_0x28eed8(0x1d4),{'type':_0x1aa975[_0x28eed8(0x1a0)],'description':_0x1aa975[_0x28eed8(0x1c3)],'matchedText':_0x1aa975[_0x28eed8(0x248)],'agentId':_0x386f0d,'command':_0x1b07f8['substring'](0x0,0x32)}));}}),_0x33c928[_0x5c5b1d(0x266)]['on']('data',_0x45b67b=>{const _0x30a424=_0x5c5b1d,_0x5ecad5=_0x45b67b[_0x30a424(0x21d)]();_0x531dc2+=_0x5ecad5,_0x70e63a=Date['now'](),this['logger']?.[_0x30a424(0x286)](_0x30a424(0x2b2)+_0x5ecad5[_0x30a424(0x222)](0x0,0x64),{'agentId':_0x386f0d,'command':_0x1b07f8['substring'](0x0,0x32)});if(!_0x3fef99){const _0x32a5bd=this[_0x30a424(0x1bc)][_0x30a424(0x262)](_0x531dc2,_0x30a424(0x266));_0x32a5bd&&(_0x3fef99=_0x32a5bd,this[_0x30a424(0x1ff)]?.[_0x30a424(0x25b)]('Prompt\x20detected\x20in\x20stderr',{'type':_0x32a5bd['type'],'description':_0x32a5bd[_0x30a424(0x1c3)],'matchedText':_0x32a5bd[_0x30a424(0x248)],'agentId':_0x386f0d,'command':_0x1b07f8[_0x30a424(0x222)](0x0,0x32)}));}}),_0x33c928['on'](_0x5c5b1d(0x1b8),(_0x47afcc,_0x2260c8)=>{const _0x24a770=_0x5c5b1d;clearTimeout(_0x189ec9),_0x4e4312=_0x47afcc;const _0x467f3f=Date[_0x24a770(0x2a9)]()-_0x274f5a,_0x16eabd=Date[_0x24a770(0x2a9)]()-_0x70e63a;this[_0x24a770(0x1ff)]?.[_0x24a770(0x25b)](_0x24a770(0x24c)+_0x4a5bab,{'exitCode':_0x47afcc,'signal':_0x2260c8,'executionTime':_0x467f3f,'timedOut':_0x3f176b,'stdoutLength':_0x87c7a1['length'],'stderrLength':_0x531dc2[_0x24a770(0x1e2)],'promptDetected':!!_0x3fef99,'timeSinceLastOutput':_0x16eabd});const _0x4592d4={'action':'run-command','command':_0x1b07f8,'translatedCommand':_0x4a5bab!==_0x1b07f8?_0x4a5bab:undefined,'stdout':_0x87c7a1[_0x24a770(0x267)](),'stderr':_0x531dc2[_0x24a770(0x267)](),'exitCode':_0x47afcc,'executionTime':_0x467f3f,'workingDirectory':_0x347aaa,'promptDetected':!!_0x3fef99,'promptInfo':_0x3fef99||undefined,'lastOutputTime':_0x70e63a,'timeSinceLastOutput':_0x16eabd};if(_0x3f176b){_0x55970e({..._0x4592d4,'success':![],'error':'Command\x20timed\x20out\x20after\x20'+timeout+'ms','exitCode':_0x47afcc||-0x1,'timedOut':!![]});return;}if(_0x47afcc!==0x0){this['logger']?.['error'](_0x24a770(0x2ab)+_0x47afcc+':\x20'+_0x4a5bab,{'originalCommand':_0x1b07f8,'translatedCommand':_0x4a5bab,'exitCode':_0x47afcc,'stderr':_0x531dc2[_0x24a770(0x222)](0x0,0xc8),'executionTime':_0x467f3f,'promptDetected':!!_0x3fef99}),_0x55970e({..._0x4592d4,'success':![],'error':'Command\x20exited\x20with\x20code\x20'+_0x47afcc});return;}this['logger']?.['info'](_0x24a770(0x2a1)+_0x4a5bab,{'originalCommand':_0x1b07f8,'executionTime':_0x467f3f,'stdoutLength':_0x87c7a1['length'],'stderrLength':_0x531dc2['length'],'promptDetected':!!_0x3fef99}),_0x55970e({..._0x4592d4,'success':!![],'exitCode':0x0,'message':_0x24a770(0x22a)+_0x467f3f+'ms'});}),_0x33c928['on'](_0x5c5b1d(0x24d),_0x5762a9=>{const _0x21cfec=_0x5c5b1d;clearTimeout(_0x189ec9);const _0x3481de=Date[_0x21cfec(0x2a9)]()-_0x274f5a,_0x2935f6=Date[_0x21cfec(0x2a9)]()-_0x70e63a;this['logger']?.[_0x21cfec(0x24d)]('Command\x20spawn\x20error:\x20'+_0x4a5bab,{'originalCommand':_0x1b07f8,'error':_0x5762a9['message'],'executionTime':_0x3481de,'promptDetected':!!_0x3fef99}),_0x55970e({'success':![],'action':_0x21cfec(0x234),'command':_0x1b07f8,'translatedCommand':_0x4a5bab!==_0x1b07f8?_0x4a5bab:undefined,'error':_0x5762a9[_0x21cfec(0x254)],'stderr':_0x531dc2['trim'](),'stdout':_0x87c7a1['trim'](),'exitCode':-0x1,'executionTime':_0x3481de,'workingDirectory':_0x347aaa,'promptDetected':!!_0x3fef99,'promptInfo':_0x3fef99||undefined,'lastOutputTime':_0x70e63a,'timeSinceLastOutput':_0x2935f6});});});}async['changeDirectory'](_0x29452e,_0x4d19d7,_0x18521a){const _0x413f99=a0_0x2ac257;try{let _0x49ca87;a0_0x2071f3['isAbsolute'](_0x29452e)?_0x49ca87=_0x29452e:_0x49ca87=a0_0x2071f3[_0x413f99(0x1b7)](_0x4d19d7,_0x29452e);const _0x4f150d=await a0_0x5f5a78[_0x413f99(0x23b)](_0x49ca87);if(!_0x4f150d[_0x413f99(0x217)]())throw new Error('Not\x20a\x20directory:\x20'+_0x49ca87);const _0x40c0d6=this['directoryAccessManager']['validateReadAccess'](_0x49ca87,_0x18521a);if(!_0x40c0d6['allowed']){this[_0x413f99(0x1ff)]?.[_0x413f99(0x27c)]('Directory\x20change\x20blocked:\x20'+_0x40c0d6['reason'],{'targetDirectory':_0x49ca87,'reason':_0x40c0d6['reason'],'category':_0x40c0d6[_0x413f99(0x21e)]});throw new Error(_0x413f99(0x249)+_0x40c0d6[_0x413f99(0x299)]);}return{'success':!![],'action':_0x413f99(0x2c3),'previousDirectory':_0x4d19d7,'newDirectory':_0x49ca87,'message':_0x413f99(0x20d)+_0x49ca87};}catch(_0x441a8e){throw new Error(_0x413f99(0x231)+_0x29452e+':\x20'+_0x441a8e['message']);}}async['listDirectory'](_0xbe7841){const _0x179217=a0_0x2ac257;try{const _0x2e91aa=await a0_0x5f5a78['readdir'](_0xbe7841,{'withFileTypes':!![]}),_0x33fe84=_0x2e91aa['map'](_0xd667a9=>({'name':_0xd667a9[_0x179217(0x200)],'type':_0xd667a9['isDirectory']()?_0x179217(0x213):'file','isSymlink':_0xd667a9[_0x179217(0x1b3)]()}));return{'success':!![],'action':'list-directory','directory':_0xbe7841,'contents':_0x33fe84,'totalItems':_0x33fe84['length'],'directories':_0x33fe84[_0x179217(0x244)](_0x2fcd1b=>_0x2fcd1b['type']==='directory')[_0x179217(0x1e2)],'files':_0x33fe84['filter'](_0x37fc2d=>_0x37fc2d['type']==='file')['length'],'message':'Listed\x20'+_0x33fe84[_0x179217(0x1e2)]+_0x179217(0x2a7)+_0xbe7841};}catch(_0x40e1c1){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0xbe7841+':\x20'+_0x40e1c1[_0x179217(0x254)]);}}async['createDirectory'](_0x560619,_0xaf40af){const _0x310ffa=a0_0x2ac257;try{let _0x5e9a8c;return a0_0x2071f3['isAbsolute'](_0x560619)?_0x5e9a8c=_0x560619:_0x5e9a8c=a0_0x2071f3['resolve'](_0xaf40af,_0x560619),await a0_0x5f5a78[_0x310ffa(0x27d)](_0x5e9a8c,{'recursive':!![]}),{'success':!![],'action':_0x310ffa(0x196),'directory':_0x5e9a8c,'relativePath':a0_0x2071f3['relative'](_0xaf40af,_0x5e9a8c),'message':_0x310ffa(0x1b6)+_0x5e9a8c};}catch(_0x248185){throw new Error(_0x310ffa(0x1f3)+_0x560619+':\x20'+_0x248185['message']);}}['isBlockedCommand'](_0x327b6e){const _0x4d583a=a0_0x2ac257,_0x38bbfd=_0x327b6e['toLowerCase']()[_0x4d583a(0x267)]();return this[_0x4d583a(0x28b)][_0x4d583a(0x22f)](_0x567f31=>{const _0x1eed91=_0x4d583a,_0x27ee2c=_0x567f31['toLowerCase']();return _0x38bbfd===_0x27ee2c||_0x38bbfd[_0x1eed91(0x197)](_0x27ee2c+'\x20');});}[a0_0x2ac257(0x1a9)](_0x3e29e6){const _0x2dca85=a0_0x2ac257;if(!this[_0x2dca85(0x256)])return!![];const _0x36e476=_0x3e29e6['toLowerCase']()[_0x2dca85(0x267)](),_0x146fc0=_0x36e476[_0x2dca85(0x276)]('\x20')[0x0];return this['allowedCommands']['some'](_0x147aa8=>_0x147aa8[_0x2dca85(0x2d0)]()===_0x146fc0||_0x36e476['startsWith'](_0x147aa8[_0x2dca85(0x2d0)]()+'\x20'));}['addToHistory'](_0x44f25e,_0x554732,_0xbd6292){const _0x28323b=a0_0x2ac257,_0x3062b1={'timestamp':new Date()[_0x28323b(0x273)](),'agentId':_0xbd6292,'action':_0x44f25e[_0x28323b(0x1a0)],'command':_0x44f25e[_0x28323b(0x1ac)]||_0x44f25e[_0x28323b(0x213)],'success':_0x554732['success'],'executionTime':_0x554732[_0x28323b(0x198)]||0x0,'workingDirectory':_0x554732['workingDirectory']};this['commandHistory'][_0x28323b(0x2d2)](_0x3062b1),this['commandHistory'][_0x28323b(0x1e2)]>0x64&&(this['commandHistory']=this['commandHistory'][_0x28323b(0x263)](-0x64));}['getSupportedActions'](){const _0x4eb7ba=a0_0x2ac257;return['run-command',_0x4eb7ba(0x2c3),'list-directory','create-directory',_0x4eb7ba(0x1eb)];}['getParameterSchema'](){const _0x148a44=a0_0x2ac257;return{'type':'object','properties':{'actions':{'type':_0x148a44(0x2a5),'minItems':0x1,'items':{'type':_0x148a44(0x1da),'properties':{'type':{'type':_0x148a44(0x201),'enum':this[_0x148a44(0x1db)]()},'command':{'type':_0x148a44(0x201)},'directory':{'type':'string'}},'required':[_0x148a44(0x1a0)]}},'timeout':{'type':'integer','minimum':0x3e8,'maximum':this[_0x148a44(0x1d2)]},'async':{'type':_0x148a44(0x1a7)}},'required':['actions']};}['getCommandHistory'](_0x518df6=null){const _0x598959=a0_0x2ac257;if(_0x518df6)return this['commandHistory'][_0x598959(0x244)](_0x3dd560=>_0x3dd560[_0x598959(0x183)]===_0x518df6);return[...this['commandHistory']];}[a0_0x2ac257(0x2d3)](_0x149797){const _0x547657=a0_0x2ac257;for(const [_0x349b48]of this[_0x547657(0x25c)]){_0x349b48[_0x547657(0x197)](_0x149797+'-')&&this['workingDirectories'][_0x547657(0x1aa)](_0x349b48);}}[a0_0x2ac257(0x245)](_0x31934b,_0x25fd9b=null){const _0x4c6b1a=a0_0x2ac257,_0x4e1774=_0x31934b+'-'+(_0x25fd9b||'default');return this[_0x4c6b1a(0x25c)][_0x4c6b1a(0x18f)](_0x4e1774)||_0x25fd9b||process[_0x4c6b1a(0x2c1)]();}[a0_0x2ac257(0x27f)](){const _0x19343d=a0_0x2ac257;this[_0x19343d(0x184)]=process['platform'];if(process['platform']===_0x19343d(0x218)){if(process[_0x19343d(0x228)][_0x19343d(0x1a4)])this[_0x19343d(0x1dd)]='powershell';else process[_0x19343d(0x228)]['SHELL']&&process[_0x19343d(0x228)]['SHELL']['includes'](_0x19343d(0x188))?this[_0x19343d(0x1dd)]='bash':this['detectedTerminal']='cmd';}else process[_0x19343d(0x290)]==='darwin'?this[_0x19343d(0x1dd)]=_0x19343d(0x188):this[_0x19343d(0x1dd)]=_0x19343d(0x188);this[_0x19343d(0x1ff)]?.['info']('Terminal\x20detected',{'platform':this['platformType'],'terminal':this[_0x19343d(0x1dd)],'shell':process[_0x19343d(0x228)][_0x19343d(0x2b5)]});}async[a0_0x2ac257(0x1ea)](_0x485e6f,_0x25b008={}){const _0x16b984=a0_0x2ac257,_0x2dcc69=_0x485e6f[_0x16b984(0x267)](),_0x295c40=this['analyzeCommandCompatibility'](_0x2dcc69);this['logger']?.[_0x16b984(0x25b)]('Command\x20compatibility\x20analysis',{'command':_0x2dcc69,'detectedTerminal':_0x295c40['detectedTerminal'],'commandType':_0x295c40[_0x16b984(0x250)],'commandCategory':_0x295c40[_0x16b984(0x1fa)],'compatible':_0x295c40['compatible'],'issues':_0x295c40[_0x16b984(0x282)],'suggestedAction':_0x295c40[_0x16b984(0x18d)],'confidence':_0x295c40[_0x16b984(0x21c)]});if(_0x295c40['compatible'])return _0x485e6f;let _0x83f06=null;if(this[_0x16b984(0x1dd)]==='cmd')_0x83f06=this[_0x16b984(0x28f)](_0x2dcc69);else{if(this[_0x16b984(0x1dd)]==='powershell')_0x83f06=this['translateToPowerShell'](_0x2dcc69);else this[_0x16b984(0x1dd)]===_0x16b984(0x188)&&(_0x83f06=this['translateToBash'](_0x2dcc69));}if(_0x83f06&&this['isSimpleCommand'](_0x2dcc69))return this[_0x16b984(0x1ff)]?.['info']('Using\x20simple\x20translation',{'original':_0x485e6f,'translated':_0x83f06,'method':'simple'}),_0x83f06;if(_0x25b008['aiService']||_0x25b008['toolsRegistry']&&_0x25b008[_0x16b984(0x183)]){this['logger']?.[_0x16b984(0x25b)]('Attempting\x20AI\x20translation\x20for\x20complex\x20command',{'command':_0x485e6f[_0x16b984(0x222)](0x0,0x64)+'...','hasAiService':!!_0x25b008['aiService'],'hasToolsRegistry':!!_0x25b008['toolsRegistry'],'agentId':_0x25b008['agentId']});try{const _0x6114e8=await this['translateCommandWithAI'](_0x485e6f,_0x25b008);if(_0x6114e8&&_0x6114e8['trim']()!==_0x485e6f[_0x16b984(0x267)]())return this['logger']?.[_0x16b984(0x25b)]('Using\x20AI\x20translation',{'original':_0x485e6f,'translated':_0x6114e8,'method':'ai'}),_0x6114e8;else this[_0x16b984(0x1ff)]?.[_0x16b984(0x27c)](_0x16b984(0x285),{'original':_0x485e6f,'translated':_0x6114e8});}catch(_0x2720ee){this['logger']?.[_0x16b984(0x27c)]('AI\x20translation\x20failed,\x20falling\x20back\x20to\x20simple\x20translation',{'original':_0x485e6f,'error':_0x2720ee['message'],'stack':_0x2720ee[_0x16b984(0x223)]});}}else this['logger']?.[_0x16b984(0x27c)](_0x16b984(0x19d),{'hasAiService':!!_0x25b008[_0x16b984(0x1e4)],'hasToolsRegistry':!!_0x25b008['toolsRegistry'],'hasAgentId':!!_0x25b008[_0x16b984(0x183)],'contextKeys':Object[_0x16b984(0x1cd)](_0x25b008)});return _0x83f06||_0x485e6f;}[a0_0x2ac257(0x284)](_0x4d027f){const _0x1f4569=a0_0x2ac257,_0x429e47=_0x4d027f[_0x1f4569(0x2d0)]();if(_0x4d027f[_0x1f4569(0x1a6)]('\x5cn')||_0x4d027f[_0x1f4569(0x1a6)]('\x5cr')||_0x4d027f['includes']('\x5ct'))return![];if(_0x4d027f[_0x1f4569(0x1a6)]('\x0a')||_0x4d027f['includes']('\x0d'))return![];if(_0x4d027f[_0x1f4569(0x1a6)](_0x1f4569(0x24e))||_0x4d027f['includes']('printf')||_0x4d027f['includes']('main()'))return![];if(_0x4d027f[_0x1f4569(0x1a6)]('def\x20')||_0x4d027f[_0x1f4569(0x1a6)]('function\x20')||_0x4d027f['includes']('class\x20'))return![];if(_0x4d027f[_0x1f4569(0x1a6)](_0x1f4569(0x288))&&!_0x4d027f[_0x1f4569(0x1a6)](_0x1f4569(0x208)))return![];const _0x392346=_0x4d027f[_0x1f4569(0x219)](/'([^']*)'/);if(_0x392346&&_0x392346[0x1][_0x1f4569(0x1e2)]>0x32)return![];if(this[_0x1f4569(0x1dd)]===_0x1f4569(0x1b0)&&_0x4d027f[_0x1f4569(0x1a6)]('>')&&_0x4d027f[_0x1f4569(0x1a6)]('/')&&!_0x4d027f['includes']('\x5c'))return![];if(_0x4d027f[_0x1f4569(0x1a6)](_0x1f4569(0x25d))||_0x4d027f['includes']('\x20||\x20')||_0x4d027f[_0x1f4569(0x1a6)](';\x20'))return![];if(_0x4d027f[_0x1f4569(0x1a6)]('$(')||_0x4d027f[_0x1f4569(0x1a6)]('`')||_0x4d027f[_0x1f4569(0x1a6)]('{')||_0x4d027f['includes']('['))return![];if(_0x429e47['includes']('for\x20')||_0x429e47['includes'](_0x1f4569(0x296))||_0x429e47['includes'](_0x1f4569(0x2b9)))return![];if(_0x429e47[_0x1f4569(0x1a6)]('export ')||_0x429e47['includes'](_0x1f4569(0x2d4)))return![];if(_0x4d027f[_0x1f4569(0x1a6)](_0x1f4569(0x28a))||_0x4d027f['includes'](_0x1f4569(0x2ca)))return![];return!![];}async[a0_0x2ac257(0x23a)](_0x5b33e3,_0x21a076){const _0x1d54be=a0_0x2ac257;let _0x365046=_0x21a076['aiService'];if(!_0x365046&&_0x21a076[_0x1d54be(0x2c5)]&&_0x21a076['agentId']){const _0x31f780=_0x21a076['messageProcessor'];_0x31f780&&_0x31f780['aiService']&&(_0x365046=_0x31f780['aiService']);}if(!_0x365046)throw new Error(_0x1d54be(0x1f1));const _0x177b7f=this[_0x1d54be(0x29d)](_0x5b33e3),_0x2b30cf=_0x1d54be(0x19b);try{const _0x48759d=await _0x365046['sendMessage'](_0x2b30cf,_0x177b7f,{'agentId':_0x21a076['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x21a076[_0x1d54be(0x189)],'customApiKeys':_0x21a076['customApiKeys'],'platformProvided':_0x21a076['platformProvided']}),_0x3f37b6=this[_0x1d54be(0x291)](_0x48759d['content']);return this['logger']?.[_0x1d54be(0x286)]('AI\x20command\x20translation\x20completed',{'original':_0x5b33e3,'translated':_0x3f37b6,'model':_0x2b30cf,'terminal':this['detectedTerminal']}),_0x3f37b6;}catch(_0xee0c8b){this[_0x1d54be(0x1ff)]?.['error'](_0x1d54be(0x298),{'command':_0x5b33e3,'terminal':this[_0x1d54be(0x1dd)],'error':_0xee0c8b['message']});throw _0xee0c8b;}}[a0_0x2ac257(0x29d)](_0x59fec3){const _0x10891b=a0_0x2ac257,_0xa34238={'cmd':_0x10891b(0x1d0),'powershell':'Windows\x20PowerShell','bash':_0x10891b(0x27e)},_0x150fb5=_0xa34238[this['detectedTerminal']]||this['detectedTerminal'],_0x3b03f2=this['analyzeCommandCompatibility'](_0x59fec3);let _0x5ee4e8=_0x10891b(0x194)+_0x150fb5+':\x0a\x0aORIGINAL\x20COMMAND:\x0a```\x0a'+_0x59fec3+_0x10891b(0x1b4)+_0x3b03f2[_0x10891b(0x250)]+_0x10891b(0x236)+_0x3b03f2['commandCategory']+_0x10891b(0x26f)+_0x150fb5+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x3b03f2['specificIssues'][_0x10891b(0x221)](',\x20')||'None\x20detected');return _0x3b03f2[_0x10891b(0x250)]==='unix'&&_0x3b03f2['alternatives']&&_0x3b03f2['alternatives'][this[_0x10891b(0x1dd)]]&&(_0x5ee4e8+='\x0a-\x20Suggested\x20Alternative:\x20'+_0x3b03f2['alternatives'][this[_0x10891b(0x1dd)]]),_0x5ee4e8+='\x0a\x0aREQUIREMENTS:\x0a1.\x20Make\x20the\x20command\x20work\x20correctly\x20in\x20'+_0x150fb5+_0x10891b(0x19e),_0x5ee4e8;}[a0_0x2ac257(0x291)](_0xec973c){const _0x133e31=a0_0x2ac257;let _0x51d558=_0xec973c[_0x133e31(0x1e6)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x51d558=_0x51d558['replace'](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x155355=_0x51d558[_0x133e31(0x267)]()[_0x133e31(0x276)]('\x0a');return _0x155355[_0x133e31(0x1e2)]>0x1&&!_0x51d558['includes']('&&')&&!_0x51d558[_0x133e31(0x1a6)]('||')&&(_0x51d558=_0x155355[0x0]['trim']()),_0x51d558[_0x133e31(0x267)]();}['analyzeCommandCompatibility'](_0x51d890){const _0x572413=a0_0x2ac257,_0x58d0b1=this['classifyCommand'](_0x51d890),_0x3b9702=this['isCommandCompatibleWithTerminal'](_0x58d0b1,this[_0x572413(0x1dd)]);return{'compatible':_0x3b9702,'detectedTerminal':this['detectedTerminal'],'commandType':_0x58d0b1[_0x572413(0x1a0)],'commandCategory':_0x58d0b1['category'],'specificIssues':_0x58d0b1[_0x572413(0x215)],'suggestedAction':_0x3b9702?'execute':'translate','confidence':_0x58d0b1['confidence']};}[a0_0x2ac257(0x230)](_0x5ede54){return this['analyzeCommandCompatibility'](_0x5ede54)['compatible'];}['classifyCommand'](_0x513998){const _0x188abc=a0_0x2ac257,_0x19e892=_0x513998[_0x188abc(0x2d0)]()['trim'](),_0x38f7d0=_0x19e892[_0x188abc(0x276)]('\x20')[0x0],_0x51522b=[];let _0x3281df=0.9;const _0x2957ff={'ls':{'category':'file-listing','alternatives':{'cmd':_0x188abc(0x293),'powershell':'Get-ChildItem'}},'cat':{'category':'file-viewing','alternatives':{'cmd':_0x188abc(0x1a0),'powershell':'Get-Content'}},'grep':{'category':'text-search','alternatives':{'cmd':'findstr','powershell':_0x188abc(0x1a8)}},'find':{'category':'file-search','alternatives':{'cmd':_0x188abc(0x283),'powershell':_0x188abc(0x1cb)}},'head':{'category':_0x188abc(0x24f),'alternatives':{'cmd':_0x188abc(0x1f4),'powershell':_0x188abc(0x28e)}},'tail':{'category':_0x188abc(0x24f),'alternatives':{'cmd':'more\x20+n','powershell':_0x188abc(0x1d7)}},'wc':{'category':_0x188abc(0x1c7),'alternatives':{'cmd':_0x188abc(0x268),'powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':_0x188abc(0x240),'powershell':_0x188abc(0x1fb)}},'mv':{'category':'file-move','alternatives':{'cmd':_0x188abc(0x1be),'powershell':'Move-Item'}},'rm':{'category':_0x188abc(0x2cc),'alternatives':{'cmd':'del','powershell':'Remove-Item'}},'mkdir':{'category':'directory-create','alternatives':{'cmd':_0x188abc(0x27d),'powershell':_0x188abc(0x21f)}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':_0x188abc(0x186),'powershell':'Remove-Item'}},'touch':{'category':_0x188abc(0x1e1),'alternatives':{'cmd':'type\x20nul\x20>','powershell':'New-Item\x20-Type\x20File'}},'chmod':{'category':'permissions','alternatives':{'cmd':'icacls','powershell':_0x188abc(0x28d)}},'chown':{'category':_0x188abc(0x26e),'alternatives':{'cmd':_0x188abc(0x20c),'powershell':_0x188abc(0x28d)}},'ps':{'category':_0x188abc(0x1ca),'alternatives':{'cmd':'tasklist','powershell':_0x188abc(0x1df)}},'kill':{'category':'process-kill','alternatives':{'cmd':_0x188abc(0x259),'powershell':'Stop-Process'}},'killall':{'category':_0x188abc(0x1b2),'alternatives':{'cmd':_0x188abc(0x27b),'powershell':_0x188abc(0x2c4)}},'top':{'category':_0x188abc(0x239),'alternatives':{'cmd':'tasklist','powershell':'Get-Process\x20|\x20Sort-Object\x20CPU'}},'wget':{'category':'download','alternatives':{'cmd':'curl','powershell':_0x188abc(0x1bb)}},'curl':{'category':'http-client','alternatives':{'cmd':'curl','powershell':'Invoke-RestMethod'}},'ping':{'category':'network-test','alternatives':{'cmd':'ping','powershell':_0x188abc(0x216)}},'awk':{'category':_0x188abc(0x1a2),'alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':'text-edit','alternatives':{'cmd':'powershell\x20-c','powershell':_0x188abc(0x202)}},'sort':{'category':'text-sort','alternatives':{'cmd':'sort','powershell':'Sort-Object'}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':'sort\x20/unique','powershell':'Sort-Object\x20-Unique'}},'pwd':{'category':_0x188abc(0x21b),'alternatives':{'cmd':'cd','powershell':'Get-Location'}},'whoami':{'category':_0x188abc(0x271),'alternatives':{'cmd':'echo\x20%USERNAME%','powershell':_0x188abc(0x2a2)}},'env':{'category':_0x188abc(0x281),'alternatives':{'cmd':'set','powershell':_0x188abc(0x1a5)}},'export':{'category':_0x188abc(0x281),'alternatives':{'cmd':_0x188abc(0x1cf),'powershell':'$env:'}},'source':{'category':'script-execute','alternatives':{'cmd':_0x188abc(0x1ab),'powershell':'.\x20'}},'tar':{'category':_0x188abc(0x246),'alternatives':{'cmd':'7z','powershell':_0x188abc(0x1f9)}},'zip':{'category':'archive','alternatives':{'cmd':_0x188abc(0x279),'powershell':_0x188abc(0x1f9)}},'unzip':{'category':_0x188abc(0x246),'alternatives':{'cmd':_0x188abc(0x224),'powershell':_0x188abc(0x1af)}},'df':{'category':_0x188abc(0x195),'alternatives':{'cmd':'fsutil\x20volume\x20diskfree','powershell':_0x188abc(0x1e3)}},'du':{'category':_0x188abc(0x29c),'alternatives':{'cmd':'dir\x20/s','powershell':'Get-ChildItem\x20-Recurse\x20|\x20Measure-Object'}},'free':{'category':_0x188abc(0x1ad),'alternatives':{'cmd':'systeminfo','powershell':_0x188abc(0x1e8)}},'uname':{'category':'system-info','alternatives':{'cmd':_0x188abc(0x203),'powershell':_0x188abc(0x1e0)}}},_0x54cb6a={'dir':{'category':'file-listing','alternatives':{'unix':'ls','powershell':'Get-ChildItem'}},'type':{'category':_0x188abc(0x24f),'alternatives':{'unix':_0x188abc(0x241),'powershell':'Get-Content'}},'copy':{'category':'file-copy','alternatives':{'unix':'cp','powershell':_0x188abc(0x1fb)}},'move':{'category':_0x188abc(0x247),'alternatives':{'unix':'mv','powershell':_0x188abc(0x26b)}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':'Remove-Item'}},'tasklist':{'category':'process-list','alternatives':{'unix':'ps','powershell':_0x188abc(0x1df)}},'taskkill':{'category':'process-kill','alternatives':{'unix':_0x188abc(0x192),'powershell':'Stop-Process'}},'findstr':{'category':'text-search','alternatives':{'unix':'grep','powershell':_0x188abc(0x1a8)}}},_0x13eced={'get-childitem':{'category':_0x188abc(0x255),'alternatives':{'unix':'ls','cmd':_0x188abc(0x293)}},'get-content':{'category':_0x188abc(0x24f),'alternatives':{'unix':'cat','cmd':'type'}},'copy-item':{'category':_0x188abc(0x19f),'alternatives':{'unix':'cp','cmd':_0x188abc(0x240)}},'move-item':{'category':_0x188abc(0x247),'alternatives':{'unix':'mv','cmd':_0x188abc(0x1be)}},'remove-item':{'category':_0x188abc(0x2cc),'alternatives':{'unix':'rm','cmd':_0x188abc(0x2ae)}},'get-process':{'category':'process-list','alternatives':{'unix':'ps','cmd':'tasklist'}},'stop-process':{'category':'process-kill','alternatives':{'unix':'kill','cmd':'taskkill'}}};let _0x4527ac=_0x188abc(0x210),_0x643a62=_0x188abc(0x210),_0x534cdd={};if(_0x2957ff[_0x38f7d0])_0x4527ac=_0x188abc(0x220),_0x643a62=_0x2957ff[_0x38f7d0][_0x188abc(0x21e)],_0x534cdd=_0x2957ff[_0x38f7d0]['alternatives'];else{if(_0x54cb6a[_0x38f7d0])_0x4527ac='windows-cmd',_0x643a62=_0x54cb6a[_0x38f7d0]['category'],_0x534cdd=_0x54cb6a[_0x38f7d0]['alternatives'];else{if(_0x13eced[_0x38f7d0])_0x4527ac='powershell',_0x643a62=_0x13eced[_0x38f7d0]['category'],_0x534cdd=_0x13eced[_0x38f7d0]['alternatives'];else{const _0x8a8594=['echo','cd','exit',_0x188abc(0x19a)];_0x8a8594[_0x188abc(0x1a6)](_0x38f7d0)?(_0x4527ac='universal',_0x643a62=_0x188abc(0x1b1)):(_0x4527ac=_0x188abc(0x210),_0x3281df=0.3);}}}return _0x513998[_0x188abc(0x1a6)]('\x27')&&!_0x513998[_0x188abc(0x1a6)]('\x22')&&_0x51522b[_0x188abc(0x2d2)](_0x188abc(0x289)),_0x513998['includes']('/')&&!_0x513998['includes']('\x5c')&&!_0x513998['includes']('http')&&_0x513998[_0x188abc(0x1a6)]('>')&&_0x51522b[_0x188abc(0x2d2)](_0x188abc(0x28c)),(_0x513998[_0x188abc(0x1a6)]('\x5cn')||_0x513998[_0x188abc(0x1a6)]('\x5ct'))&&_0x51522b['push']('escape-sequences'),(_0x513998['includes'](_0x188abc(0x25d))||_0x513998[_0x188abc(0x1a6)]('\x20||\x20')||_0x513998[_0x188abc(0x1a6)](';'))&&_0x51522b[_0x188abc(0x2d2)](_0x188abc(0x26c)),{'type':_0x4527ac,'category':_0x643a62,'alternatives':_0x534cdd,'issues':_0x51522b,'confidence':_0x3281df,'firstWord':_0x38f7d0,'fullCommand':_0x513998};}['isCommandCompatibleWithTerminal'](_0x1e5b3e,_0x4fedaf){const _0x57d78d=a0_0x2ac257;switch(_0x4fedaf){case _0x57d78d(0x1b0):if(_0x1e5b3e['type']==='unix')return![];if(_0x1e5b3e['issues'][_0x57d78d(0x1a6)](_0x57d78d(0x289)))return![];if(_0x1e5b3e[_0x57d78d(0x215)]['includes']('unix-style-paths'))return![];return _0x1e5b3e[_0x57d78d(0x1a0)]==='windows-cmd'||_0x1e5b3e[_0x57d78d(0x1a0)]===_0x57d78d(0x1fe);case'powershell':if(_0x1e5b3e['type']===_0x57d78d(0x220)&&!_0x1e5b3e['alternatives']['powershell'])return![];return!![];case _0x57d78d(0x188):if(_0x1e5b3e['type']==='windows-cmd')return![];return _0x1e5b3e['type']==='unix'||_0x1e5b3e['type']===_0x57d78d(0x1fe);default:return![];}}['translateToWindowsCmd'](_0x56ccb5){const _0x1afa38=a0_0x2ac257;let _0x20ff78=_0x56ccb5;const _0x3cf76c=new Map([[/^ls\s*$/,'dir'],[/^ls\s+-la?$/,'dir'],[/^ls\s+-l$/,_0x1afa38(0x293)],[/^ls\s+-a$/,_0x1afa38(0x18a)],[/^cat\s+(.+)$/,_0x1afa38(0x2d1)],[/^cp\s+(.+)\s+(.+)$/,'copy\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x1afa38(0x18e)],[/^rm\s+(.+)$/,_0x1afa38(0x226)],[/^mkdir\s+(.+)$/,_0x1afa38(0x1d5)],[/^rmdir\s+(.+)$/,'rmdir\x20$1'],[/^ps\s*$/,_0x1afa38(0x2ad)],[/^kill\s+(.+)$/,_0x1afa38(0x29e)],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,_0x1afa38(0x1f7)],[/^ping\s+(.+)$/,'ping\x20$1'],[/^wget\s+(.+)$/,_0x1afa38(0x23e)],[/^curl\s+(.+)$/,_0x1afa38(0x2bd)]]);for(const [_0x4e7b4d,_0x2f4b87]of _0x3cf76c){if(_0x4e7b4d[_0x1afa38(0x2c7)](_0x20ff78)){_0x20ff78=_0x20ff78['replace'](_0x4e7b4d,_0x2f4b87);break;}}_0x20ff78=_0x20ff78[_0x1afa38(0x1e6)](/echo\s+'([^']+)'\s*>/g,_0x1afa38(0x277)),_0x20ff78=_0x20ff78['replace'](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x20ff78[_0x1afa38(0x1a6)]('echo\x20\x27')&&_0x20ff78['includes']('\x5cn')){const _0x33be60=_0x20ff78[_0x1afa38(0x219)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x33be60){const _0x11cc5d=_0x33be60[0x1]['replace'](/\\n/g,'\x0a'),_0x13c66e=_0x33be60[0x2],_0x161d36=_0x11cc5d[_0x1afa38(0x276)]('\x0a');_0x20ff78='('+_0x161d36['map'](_0xf1a913=>_0x1afa38(0x2be)+_0xf1a913)[_0x1afa38(0x221)](_0x1afa38(0x193))+_0x1afa38(0x1ed)+_0x13c66e;}}return this[_0x1afa38(0x1ff)]?.['info'](_0x1afa38(0x2ac),{'original':_0x56ccb5,'translated':_0x20ff78}),_0x20ff78;}['translateToPowerShell'](_0x4e1159){const _0x1881f6=a0_0x2ac257;let _0x353165=_0x4e1159;const _0x33b4fb=new Map([[/^ls\s*$/,_0x1881f6(0x2b1)],[/^ls\s+-la?$/,_0x1881f6(0x1f8)],[/^cat\s+(.+)$/,_0x1881f6(0x29a)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,'Move-Item\x20$1\x20$2'],[/^rm\s+(.+)$/,'Remove-Item\x20$1'],[/^pwd\s*$/,_0x1881f6(0x257)],[/^ps\s*$/,_0x1881f6(0x1df)]]);for(const [_0x5a5449,_0x151179]of _0x33b4fb){if(_0x5a5449['test'](_0x353165)){_0x353165=_0x353165['replace'](_0x5a5449,_0x151179);break;}}return this['logger']?.['info'](_0x1881f6(0x29f),{'original':_0x4e1159,'translated':_0x353165}),_0x353165;}['translateToBash'](_0x46c692){const _0x5c62f6=a0_0x2ac257;let _0x141116=_0x46c692;const _0x344cf7=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x5c62f6(0x2cb)],[/^type\s+(.+)$/,'cat\x20$1'],[/^copy\s+(.+)\s+(.+)$/,_0x5c62f6(0x1ce)],[/^move\s+(.+)\s+(.+)$/,_0x5c62f6(0x2ba)],[/^del\s+(.+)$/,'rm\x20$1'],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,_0x5c62f6(0x1de)]]);for(const [_0x556835,_0x8ed51d]of _0x344cf7){if(_0x556835[_0x5c62f6(0x2c7)](_0x141116)){_0x141116=_0x141116[_0x5c62f6(0x1e6)](_0x556835,_0x8ed51d);break;}}return _0x141116;}async['cleanup'](_0x4de3da){}async[a0_0x2ac257(0x261)](_0x3f2d68,_0x536cab,_0xd5c00e={}){const _0x37ad85=a0_0x2ac257,{agentId:_0xeea7d,context:_0x28d8e1}=_0xd5c00e;if(!_0xeea7d)throw new Error(_0x37ad85(0x2d5));const _0x4d007b=this['getAgentCommands'](_0xeea7d),_0x2575e8=_0x4d007b[_0x37ad85(0x244)](_0x9faa4d=>_0x9faa4d[_0x37ad85(0x2a3)]===_0x37ad85(0x2bc)||_0x9faa4d['state']===_0x37ad85(0x24a));if(_0x2575e8['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error(_0x37ad85(0x1ec)+this['MAX_BACKGROUND_COMMANDS_PER_AGENT']+')');const _0x320726=Array['from'](this['commandTracker']['values']()),_0x52a200=_0x320726['filter'](_0x1cbabd=>_0x1cbabd[_0x37ad85(0x2a3)]==='running'||_0x1cbabd['state']===_0x37ad85(0x24a));if(_0x52a200['length']>=this[_0x37ad85(0x21a)])throw new Error(_0x37ad85(0x212)+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0x2bbafe=_0xeea7d+'-cmd-'+Date[_0x37ad85(0x2a9)]()+'-'+ ++this[_0x37ad85(0x25e)],_0x391657=_0x3f2d68;let _0x49c2ab;try{_0x49c2ab=await this['translateCommand'](_0x3f2d68,{'agentId':_0xeea7d,'toolsRegistry':_0x28d8e1?.[_0x37ad85(0x2c5)],'messageProcessor':_0x28d8e1?.[_0x37ad85(0x287)],'aiService':_0x28d8e1?.['aiService'],'apiKey':_0x28d8e1?.['apiKey'],'customApiKeys':_0x28d8e1?.[_0x37ad85(0x275)],'platformProvided':_0x28d8e1?.[_0x37ad85(0x270)]});}catch(_0x32ad4c){this['logger']?.[_0x37ad85(0x27c)](_0x37ad85(0x1e5),{'originalCommand':_0x391657,'error':_0x32ad4c[_0x37ad85(0x254)]}),_0x49c2ab=_0x3f2d68;}this['logger']?.[_0x37ad85(0x25b)](_0x37ad85(0x22b)+_0x49c2ab,{'commandId':_0x2bbafe,'agentId':_0xeea7d,'originalCommand':_0x391657,'workingDirectory':_0x536cab});let _0x5dd87a;if(this['detectedTerminal']==='cmd'||this[_0x37ad85(0x1dd)]===_0x37ad85(0x20f)){const _0x500149=this[_0x37ad85(0x1dd)]===_0x37ad85(0x20f)?_0x37ad85(0x20f):_0x37ad85(0x1b0),_0x15a264=this[_0x37ad85(0x1dd)]===_0x37ad85(0x20f)?['-Command',_0x49c2ab]:['/c',_0x49c2ab];_0x5dd87a=spawn(_0x500149,_0x15a264,{'cwd':_0x536cab,'env':{...process['env']},'windowsHide':!![],'stdio':[_0x37ad85(0x1c8),'pipe',_0x37ad85(0x1c8)]});}else _0x5dd87a=spawn('sh',['-c',_0x49c2ab],{'cwd':_0x536cab,'env':{...process['env']},'stdio':['pipe','pipe',_0x37ad85(0x1c8)]});const _0x1e0ae9={'commandId':_0x2bbafe,'agentId':_0xeea7d,'pid':_0x5dd87a[_0x37ad85(0x2af)],'command':_0x391657,'translatedCommand':_0x49c2ab,'workingDirectory':_0x536cab,'startTime':new Date()[_0x37ad85(0x273)](),'state':_0x37ad85(0x2bc),'exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date['now'](),'promptDetected':null,'process':_0x5dd87a};return this['commandTracker'][_0x37ad85(0x1cf)](_0x2bbafe,_0x1e0ae9),_0x5dd87a[_0x37ad85(0x2b8)]['on']('data',_0x1418f1=>{const _0x41ab9f=_0x37ad85,_0x2f9a24=_0x1418f1['toString']();_0x1e0ae9[_0x41ab9f(0x2b4)]+=_0x2f9a24,_0x1e0ae9[_0x41ab9f(0x214)]=Date['now']();if(!_0x1e0ae9['promptDetected']){const _0x216c7e=this['promptDetector']['detectPrompt'](_0x1e0ae9['stdoutBuffer'],_0x41ab9f(0x2b8));_0x216c7e&&(_0x1e0ae9['promptDetected']=_0x216c7e,_0x1e0ae9[_0x41ab9f(0x2a3)]=_0x41ab9f(0x24a),this[_0x41ab9f(0x1ff)]?.[_0x41ab9f(0x25b)](_0x41ab9f(0x1fd),{'commandId':_0x2bbafe,'agentId':_0xeea7d,'type':_0x216c7e['type'],'matchedText':_0x216c7e['matchedText']}));}}),_0x5dd87a[_0x37ad85(0x266)]['on'](_0x37ad85(0x1d8),_0x9d0059=>{const _0x399ac4=_0x37ad85,_0x29a7e7=_0x9d0059[_0x399ac4(0x21d)]();_0x1e0ae9['stderrBuffer']+=_0x29a7e7,_0x1e0ae9['lastOutputTime']=Date['now']();if(!_0x1e0ae9[_0x399ac4(0x23f)]){const _0x34d01d=this[_0x399ac4(0x1bc)][_0x399ac4(0x262)](_0x1e0ae9['stderrBuffer'],'stderr');_0x34d01d&&(_0x1e0ae9['promptDetected']=_0x34d01d,_0x1e0ae9[_0x399ac4(0x2a3)]='waiting_for_input',this[_0x399ac4(0x1ff)]?.[_0x399ac4(0x25b)](_0x399ac4(0x2a0),{'commandId':_0x2bbafe,'agentId':_0xeea7d,'type':_0x34d01d['type'],'matchedText':_0x34d01d[_0x399ac4(0x248)]}));}}),_0x5dd87a['on'](_0x37ad85(0x1b8),(_0x2b4eec,_0x5d4e59)=>{const _0x332200=_0x37ad85;_0x1e0ae9[_0x332200(0x2cf)]=_0x2b4eec,_0x1e0ae9[_0x332200(0x2a3)]=_0x2b4eec===0x0?'completed':_0x332200(0x1f6),_0x1e0ae9[_0x332200(0x1a1)]=new Date()['toISOString'](),this[_0x332200(0x1ff)]?.['info']('Background\x20command\x20exited',{'commandId':_0x2bbafe,'agentId':_0xeea7d,'exitCode':_0x2b4eec,'signal':_0x5d4e59,'state':_0x1e0ae9[_0x332200(0x2a3)]});}),_0x5dd87a['on']('error',_0x25eb01=>{const _0x440702=_0x37ad85;_0x1e0ae9[_0x440702(0x2a3)]='failed',_0x1e0ae9[_0x440702(0x24d)]=_0x25eb01[_0x440702(0x254)],_0x1e0ae9['endTime']=new Date()['toISOString'](),this['logger']?.[_0x440702(0x24d)]('Background\x20command\x20error',{'commandId':_0x2bbafe,'agentId':_0xeea7d,'error':_0x25eb01['message']});}),{'success':!![],'commandId':_0x2bbafe,'pid':_0x5dd87a['pid'],'command':_0x391657,'translatedCommand':_0x49c2ab,'workingDirectory':_0x536cab,'message':'Background\x20command\x20started\x20with\x20ID:\x20'+_0x2bbafe};}[a0_0x2ac257(0x1cc)](_0x1acb39,_0x4f90e1,_0x582ba6){const _0x50a749=a0_0x2ac257,_0x38dd90=this[_0x50a749(0x1dc)](_0x1acb39,_0x582ba6);if(_0x38dd90['state']===_0x50a749(0x1fc)||_0x38dd90[_0x50a749(0x2a3)]===_0x50a749(0x1f6))throw new Error('Cannot\x20send\x20input\x20to\x20'+_0x38dd90[_0x50a749(0x2a3)]+_0x50a749(0x1b5));if(!_0x38dd90['process']||_0x38dd90['process']['killed'])throw new Error(_0x50a749(0x1c4));const _0x4665b4=_0x4f90e1[_0x50a749(0x24b)]('\x0a')?_0x4f90e1:_0x4f90e1+'\x0a';return _0x38dd90['process']['stdin']['write'](_0x4665b4),this[_0x50a749(0x1ff)]?.[_0x50a749(0x25b)](_0x50a749(0x22d),{'commandId':_0x1acb39,'agentId':_0x582ba6,'inputLength':_0x4f90e1['length']}),_0x38dd90['state']==='waiting_for_input'&&(_0x38dd90['state']='running',_0x38dd90[_0x50a749(0x23f)]=null),{'success':!![],'commandId':_0x1acb39,'message':_0x50a749(0x1c0)};}[a0_0x2ac257(0x1b9)](_0x2644d5,_0x405977){const _0x4b9c48=a0_0x2ac257,_0xbb9c19=this[_0x4b9c48(0x1dc)](_0x2644d5,_0x405977),_0x424735=Date[_0x4b9c48(0x2a9)]()-_0xbb9c19['lastOutputTime'];return{'success':!![],'commandId':_0x2644d5,'pid':_0xbb9c19[_0x4b9c48(0x2af)],'command':_0xbb9c19[_0x4b9c48(0x1ac)],'state':_0xbb9c19['state'],'exitCode':_0xbb9c19['exitCode'],'startTime':_0xbb9c19[_0x4b9c48(0x233)],'endTime':_0xbb9c19[_0x4b9c48(0x1a1)],'workingDirectory':_0xbb9c19[_0x4b9c48(0x258)],'stdout':_0xbb9c19['stdoutBuffer'],'stderr':_0xbb9c19['stderrBuffer'],'stdoutLength':_0xbb9c19[_0x4b9c48(0x2b4)][_0x4b9c48(0x1e2)],'stderrLength':_0xbb9c19['stderrBuffer'][_0x4b9c48(0x1e2)],'lastOutputTime':_0xbb9c19['lastOutputTime'],'timeSinceLastOutput':_0x424735,'promptDetected':!!_0xbb9c19[_0x4b9c48(0x23f)],'promptInfo':_0xbb9c19[_0x4b9c48(0x23f)]||undefined};}['killCommand'](_0x29d458,_0x342629){const _0x489c26=a0_0x2ac257,_0x38efef=this[_0x489c26(0x1dc)](_0x29d458,_0x342629);if(_0x38efef[_0x489c26(0x2a3)]===_0x489c26(0x1fc)||_0x38efef[_0x489c26(0x2a3)]===_0x489c26(0x1f6))return{'success':!![],'commandId':_0x29d458,'message':_0x489c26(0x22e),'state':_0x38efef[_0x489c26(0x2a3)]};if(_0x38efef['process']&&!_0x38efef[_0x489c26(0x23d)][_0x489c26(0x209)])return _0x38efef[_0x489c26(0x23d)]['kill'](_0x489c26(0x187)),setTimeout(()=>{const _0x15fb56=_0x489c26;_0x38efef[_0x15fb56(0x23d)]&&!_0x38efef[_0x15fb56(0x23d)]['killed']&&_0x38efef['process']['kill'](_0x15fb56(0x2b0));},0x1388),this['logger']?.['info'](_0x489c26(0x1e9),{'commandId':_0x29d458,'agentId':_0x342629}),{'success':!![],'commandId':_0x29d458,'message':_0x489c26(0x265)};return{'success':![],'commandId':_0x29d458,'error':'Command\x20process\x20not\x20found\x20or\x20already\x20killed'};}['listAgentCommands'](_0x2cbfc9){const _0x209d02=a0_0x2ac257,_0x20b27b=this[_0x209d02(0x1a3)](_0x2cbfc9);return _0x20b27b['map'](_0x27af6f=>({'commandId':_0x27af6f['commandId'],'command':_0x27af6f[_0x209d02(0x1ac)],'state':_0x27af6f[_0x209d02(0x2a3)],'pid':_0x27af6f[_0x209d02(0x2af)],'exitCode':_0x27af6f['exitCode'],'startTime':_0x27af6f[_0x209d02(0x233)],'endTime':_0x27af6f['endTime'],'promptDetected':!!_0x27af6f['promptDetected'],'timeSinceLastOutput':Date['now']()-_0x27af6f[_0x209d02(0x214)]}));}[a0_0x2ac257(0x1a3)](_0x2bd4d2){const _0x4d5ade=a0_0x2ac257;return Array['from'](this[_0x4d5ade(0x182)][_0x4d5ade(0x1bd)]())[_0x4d5ade(0x244)](_0x325813=>_0x325813[_0x4d5ade(0x183)]===_0x2bd4d2);}[a0_0x2ac257(0x1dc)](_0x58ea00,_0x144b97){const _0x25086a=a0_0x2ac257,_0x2ffa57=this[_0x25086a(0x182)][_0x25086a(0x18f)](_0x58ea00);if(!_0x2ffa57)throw new Error(_0x25086a(0x191)+_0x58ea00);if(_0x2ffa57[_0x25086a(0x183)]!==_0x144b97)throw new Error(_0x25086a(0x1c5)+_0x2ffa57['agentId']);return _0x2ffa57;}async[a0_0x2ac257(0x237)](_0x14aa89){const _0x3cec63=a0_0x2ac257,_0x22d2b7=this[_0x3cec63(0x1a3)](_0x14aa89);let _0x44f79f=0x0,_0x571ef4=0x0;for(const _0x254a5d of _0x22d2b7){_0x254a5d[_0x3cec63(0x23d)]&&!_0x254a5d[_0x3cec63(0x23d)][_0x3cec63(0x209)]&&(_0x254a5d['process']['kill'](_0x3cec63(0x187)),_0x44f79f++,setTimeout(()=>{const _0x171b42=_0x3cec63;_0x254a5d[_0x171b42(0x23d)]&&!_0x254a5d['process']['killed']&&_0x254a5d['process'][_0x171b42(0x192)]('SIGKILL');},0xbb8)),this['commandTracker'][_0x3cec63(0x1aa)](_0x254a5d['commandId']),_0x571ef4++;}return this[_0x3cec63(0x1ff)]?.['info'](_0x3cec63(0x2cd),{'agentId':_0x14aa89,'killedCount':_0x44f79f,'removedCount':_0x571ef4}),{'success':!![],'agentId':_0x14aa89,'killedCount':_0x44f79f,'removedCount':_0x571ef4,'message':_0x3cec63(0x181)+_0x571ef4+'\x20commands\x20for\x20agent\x20'+_0x14aa89};}[a0_0x2ac257(0x243)](){const _0x28e1bf=a0_0x2ac257,_0x366cc8=Date['now']();let _0x47b08a=0x0;for(const [_0x387d1b,_0x4fbe46]of this[_0x28e1bf(0x182)]['entries']()){if(_0x4fbe46['state']!=='completed'&&_0x4fbe46['state']!=='failed')continue;const _0x2b0be5=new Date(_0x4fbe46['startTime'])['getTime'](),_0xcac348=(_0x366cc8-_0x2b0be5)/0x3e8/0x3c;_0xcac348>this['MAX_COMMAND_AGE_MINUTES']&&(this[_0x28e1bf(0x182)][_0x28e1bf(0x1aa)](_0x387d1b),_0x47b08a++);}return _0x47b08a>0x0&&this[_0x28e1bf(0x1ff)]?.['info'](_0x28e1bf(0x1c9),{'removedCount':_0x47b08a,'ageThresholdMinutes':this['MAX_COMMAND_AGE_MINUTES']}),{'success':!![],'removedCount':_0x47b08a,'message':_0x28e1bf(0x181)+_0x47b08a+_0x28e1bf(0x18c)};}}export default TerminalTool;function a0_0x4aff(){const _0x474884=['ChjVy2vZCW','y3vYBcaTtYaKmq','ChjVBxb0rgv0zwn0zwq','y29WEq','y2f0','y3jLyxrLrgLYzwn0B3j5','y2XLyw51Cfn0ywXLq29TBwfUzhm','zMLSDgvY','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','yxjJAgL2zq','zMLSzs1TB3zL','Bwf0y2HLzfrLEhq','qwnJzxnZigrLBMLLzdOG','D2fPDgLUz19MB3jFAw5WDxq','zw5KC1DPDgG','q29TBwfUzcbWCM9JzxnZigv4AxrLzdOG','zxjYB3i','i2LUy2X1zgu','zMLSzs12Awv3Aw5N','y29TBwfUzfr5Cgu','vgLTzw91DcbTDxn0igjLigjLDhDLzw4GmtaWmcbHBMqG','igfJDgLVBNmGzMfPBgvK','BgLZDc1KAxjLy3rVCNK','BwvZC2fNzq','zMLSzs1SAxn0Aw5N','ywXSB3DLzenVBw1HBMrZ','r2v0luXVy2f0Aw9U','D29YA2LUz0rPCMvJDg9YEq','DgfZA2TPBgW','ugfZC3bOCMfZzsbWCM9TChq','Aw5MBW','D29YA2LUz0rPCMvJDg9YAwvZ','icyMia','y29TBwfUzeLKq291BNrLCG','rxHLy3v0Aw5NignVBw1HBMq6ia','qxqGBgvHC3qGB25LigfJDgLVBIbPCYbYzxf1AxjLza','C3rHCNrcywnRz3jVDw5Kq29TBwfUza','zgv0zwn0uhjVBxb0','C2XPy2u','y29TBwfUzeHPC3rVCNK','q29TBwfUzcbRAwXSzwqGC3vJy2vZC2z1BgX5','C3rKzxjY','DhjPBq','zMLUzcaVyW','EwvZlw5V','zxH0CMfJDenVBNrLBNq','tw92zs1jDgvT','y29TBwfUzc1JAgfPBMLUzW','yxn5BMm','B3DUzxjZAgLW','cI0GvgfYz2v0ifrLCM1PBMfSoIa','CgXHDgzVCM1qCM92AwrLza','DxnLCI1PBMzV','q29UzMLYBwf0Aw9UihbYB21WDa','Dg9ju09tDhjPBMC','BwvUDq','y3vZDg9TqxbPs2v5CW','C3bSAxq','zwnOBYaIjdeIid4','ywn0Aw9UCW','Cg93zxjZAgvSBcbdB21WCMvZCY1bCMnOAxzL','uhjLC3mGzw50zxi','DgfZA2TPBgWGl2yGl2LT','D2fYBG','BwTKAxi','qMfZAcbZAgvSBcaOtgLUDxGVvw5PEc9TywnpuYK','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','ugfZC3DVCMqGChjVBxb0','zw52AxjVBM1LBNq','C3bLy2LMAwnjC3n1zxm','zgLYic9Z','AxntAw1WBgvdB21Tyw5K','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','zgvIDwC','BwvZC2fNzvbYB2nLC3nVCG','zwnOBYaN','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','ihWG','yMXVy2TLzenVBw1HBMrZ','Dw5PEc1ZDhLSzs1WyxrOCW','u2v0lufJBa','r2v0lunVBNrLBNqGluHLywq','DhjHBNnSyxrLvg9xAw5KB3DZq21K','CgXHDgzVCM0','zxH0CMfJDfrYyw5ZBgf0zwrdB21Tyw5K','mtC0nZyXndzvuLftCfu','zgLY','y29UDgLUDwu','sgL0igvUDgvY','D2HPBguG','CMf3q29UDgvUDa','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwq','CMvHC29U','r2v0lunVBNrLBNqGjde','CgfYC2vqyxjHBwv0zxjZ','zgLZAY11C2fNzq','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','DgfZA2TPBgWGl1bjrcaKmq','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUzcbZDgrLCNi','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','D2HVyw1P','C3rHDgu','zgv0zwn0sgfUzW','yxjYyxK','DxnLCM5HBwu','igL0zw1ZigLUia','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSihbHCMfTzxrLCNm6ia','BM93','mte4nJi5ngLfC0HKqq','q29TBwfUzcbMywLSzwqGD2L0AcbLEgL0ignVzguG','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbxAw5KB3DZiennra','DgfZA2XPC3q','zgvS','CgLK','u0Lhs0Lmta','r2v0lunOAwXKsxrLBq','q29TBwfUzcbLCNjVCIbJAhvUAZOG','odi2qKzeu01r','C3rKB3v0qNvMzMvY','u0HfteW','mtaZmdG3nJHpDNzNEM4','AgfSDa','C3rKB3v0','AwyG','BxyGjdeGjdi','Dhj1zq','CNvUBMLUzW','y3vYBcaKmq','zwnOBYa','qwXSia','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','y3DK','CMvIB290','y2HHBMDLlwrPCMvJDg9YEq','r2v0lvbYB2nLC3mGFcbtDg9WlvbYB2nLC3m','Dg9VBhnszwDPC3rYEq','zxHLy3v0zq','DgvZDa','z2v0v29YA2LUz0rPCMvJDg9YEq','CgfZC3DVCMq','id4GjG','BhmGlwe','zMLSzs1KzwXLDgu','qwDLBNqGy29TBwfUzhmGy2XLyw5Lzcb1Ca','igDSB2jHBaOTief1Dg8Tzgv0zwn0CYbWCM9TChrZigfUzcb1CgrHDgvZihn0yxrLihrVicD3ywL0Aw5Nx2zVCL9PBNb1DcCkcIOQz2v0q29TBwfUzfn0yxr1CYHJB21Tyw5KswqSigfNzw50swqPkIOklsbhzxqGCMvHBc10Aw1Lihn0yxr1CZOGCNvUBMLUzYWGD2fPDgLUz19MB3jFAw5WDxqSignVBxbSzxrLzcWGzMfPBgvKcI0GuMv0DxjUCYbZDgrVDxqVC3rKzxjYigj1zMzLCNmSigv4AxqGy29KzsWGDgLTzxn0yw1WCWOTifnOB3DZihbYB21WDcbKzxrLy3rPB24GAw5MBYbPzIbPBNrLCMfJDgL2zsbWCM9TChqGzgv0zwn0zwqkcIOQC2vUzeLUChv0kgnVBw1HBMrjzcWGAw5WDxqSigfNzw50swqPkIOklsbtzw5KigLUChv0ihrVignVBw1HBMqNCYbZDgrPBIaOyw5ZD2vYCYbWCM9TChrZkqOTief1Dg9TyxrPy2fSBhKGywrKCYbUzxDSAw5LigLMig5VDcbWCMvZzw50cI0GvxbKyxrLCYbZDgf0zsbMCM9TicD3ywL0Aw5Nx2zVCL9PBNb1DcCGDg8Gj3j1BM5PBMCNcGOQkMTPBgXdB21Tyw5KkgnVBw1HBMrjzcWGywDLBNrjzcKQkGOTifrLCM1PBMf0zsbIywnRz3jVDw5KignVBw1HBMqGkfnjr1rfuK0G4OAsifnjr0TjteWPcI0Gu2fMzsb0BYbJywXSig9UigfSCMvHzhKTy29TCgXLDgvKignVBw1HBMrZcGOQkMXPC3rbz2vUDenVBw1HBMrZkgfNzw50swqPkIOklsbmAxn0igfSBcbJB21Tyw5KCYaOCNvUBMLUzYbHBMqGy29TCgXLDgvKksbMB3iGywDLBNqklsbvC2vMDwWGzM9Yig1VBML0B3jPBMCGBxvSDgLWBguGyMfJA2DYB3vUzcbWCM9JzxnZzxmkcKjbq0ThuK9vtKqGq09ntuforcbxt1jlrKXpvZOkms4Gu3rHCNq6ignVBNn0ihTJB21Tyw5Kswr9id0GyxDHAxqGDgvYBwLUywWUC3rHCNrcywnRz3jVDw5Kq29TBwfUzcGNBNbTigLUC3rHBgWNlcbKAxiSihTHz2vUDeLKFsKkmI4Gv2fPDdOGvxnLigfNzw50lwrLBgf5ihrVB2WGDg8GD2fPDcb3AgLSzsbJB21Tyw5Kihj1BNmkmY4Gq2HLy2S6ignVBNn0ihn0yxr1CYa9ihrLCM1PBMfSlMDLDenVBw1HBMrtDgf0DxmOy29TBwfUzeLKlcbHz2vUDeLKkqO0lIbjzIbWCM9TChqGzgv0zwn0zwq6ihrLCM1PBMfSlNnLBMrjBNb1DcHJB21Tyw5KswqSicD5jYWGywDLBNrjzcKkns4GvMvYAwz5oIbdAgvJAYbZDgf0DxmUC3rHDguGpt09icDJB21WBgv0zwqNicyMihn0yxr1CY5LEgL0q29Kzsa9pt0GmaOkrvHbtvbmrvm6cKjHC2LJignVBw1HBMqGzxHLy3v0Aw9UoGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8CNvUlwnVBw1HBMq+BNbTigLUC3rHBgW8l3j1BI1JB21Tyw5KpGPBl3rVB2XDcGPfEgvJDxrLign1CMWGy29TBwfUzdOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kphj1BI1JB21Tyw5KpMn1CMWGlxmGAhr0Chm6lY9HCgKUz2L0AhvIlMnVBs96zw48l3j1BI1JB21Tyw5KpGPBl3rVB2XDcGPdAgfUz2uGzgLYzwn0B3j5igfUzcbYDw4Gy29TBwfUzdOkw3rVB2WGAwq9iNrLCM1PBMfSiL0kpgnOyw5Nzs1KAxjLy3rVCNK+lI4VzNjVBNrLBMq8l2nOyw5Nzs1KAxjLy3rVCNK+cJXYDw4Ty29TBwfUzd5UCg0GCNvUigj1AwXKpc9YDw4Ty29TBwfUzd4kwY90B29SxqOkugfJA2fNzsbTyw5Hz2vTzw50oGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8CNvUlwnVBw1HBMq+CgLWigLUC3rHBgWGlxiGCMvXDwLYzw1LBNrZlNr4DdWVCNvUlwnVBw1HBMq+cLSVDg9VBf0kcKDPDcbVCgvYyxrPB25ZoGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8CNvUlwnVBw1HBMq+z2L0ihn0yxr1CZWVCNvUlwnVBw1HBMq+cLSVDg9VBf0kcLT0B29SigLKpsj0zxjTAw5HBcjDcJXYDw4Ty29TBwfUzd5NAxqGywrKic48l3j1BI1JB21Tyw5KpGO8CNvUlwnVBw1HBMq+z2L0ignVBw1PDcaTBsaIvxbKyxrLigzPBgvZiJWVCNvUlwnVBw1HBMq+cLSVDg9VBf0kcKrPCMvJDg9YEsbVCgvYyxrPB25ZicHPzIbgAwXLu3LZDgvTihrVB2WGDw5HDMfPBgfIBguPoGPBDg9VBcbPzd0IDgvYBwLUywWIxqO8y3jLyxrLlwrPCMvJDg9YEt5IywnRzw5Kpc9JCMvHDguTzgLYzwn0B3j5pGPBl3rVB2XDcGPtrunvuKLuwsbot1rfuZOklsbeyw5NzxjVDxmGy29TBwfUzhmGyxjLigjSB2nRzwqGzM9YihnHzMv0EqOTienVBw1HBMrZigv4zwn1DguGAw4GAxnVBgf0zwqGzw52AxjVBM1LBNqklsbpDxrWDxqGAxmGy2fWDhvYzwqGyw5KihjLDhvYBMvKihnHzMvSEqOTieXVBMCTCNvUBMLUzYbJB21Tyw5KCYbTyxKGDgLTzsbVDxqGlsb1C2uGywDLBNqTzgvSyxKGDg9VBcb0BYb3ywL0cGPcrvnuifbsqunusunfuZOklsbvC2uGrMLSzvn5C3rLBsb0B29SigzVCIbMAwXLl2rPCMvJDg9YEsbJCMvHDgLVBIbHBMqGBwfUywDLBwvUDaOTifvZzsbuzxjTAw5HBcb0B29SigzVCIbJB21Tyw5KlwXPBMuGDxrPBgL0AwvZicHUCg0SigDPDcWGy3vYBcWGz3jLCcWGzxrJlIKklsbbzNrLCIbZDgfYDgLUzYbSB25Nlxj1BM5PBMCGy29TBwfUzhmSihvZzsbHz2vUDc1KzwXHEsb0B29SihrVihbHDxnLignOzwnRAw5NcI0GqwX3yxLZignOzwnRignVBw1HBMqGB3v0Chv0ihrVihzLCMLMEsbZDwnJzxnZcGPdvvjsru5uierjuKvdve9swtOkvgHLihrVB2WGBwfPBNrHAw5ZigeGy3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEsbJB250zxH0ihbLCIbHz2vUDc4kvxnLignOyw5Nzs1KAxjLy3rVCNKGDg8GBMf2AwDHDguSigfUzcbZDwjZzxf1zw50ignVBw1HBMrZihDPBgWGzxHLy3v0zsbMCM9TihrOyxqGBg9JyxrPB24UcIaGica','zxHPDenVzgu','Dg9mB3DLCKnHC2u','DhLWzsaKmq','ChvZAa','y2XLyxjxB3jRAw5NrgLYzwn0B3j5','C291CMnLia','ywDLBNrjzcbPCYbYzxf1AxjLzcbMB3iGyMfJA2DYB3vUzcbJB21Tyw5KCW','q2XLyw5Lzcb1Cca','y29TBwfUzfrYywnRzxi','ywDLBNrjza','CgXHDgzVCM1uExbL','z2vUzxjPyW','CM1KAxi','u0Lhvevstq','yMfZAa','yxbPs2v5','zgLYic9H','y29Kzq','ihn0ywXLignVBw1HBMrZ','C3vNz2vZDgvKqwn0Aw9U','Bw92zsaKmsaKmG','z2v0','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','q29TBwfUzcbUB3qGzM91BMq6ia','A2LSBa','icyG','vhjHBNnSyxrLihrOAxmGy29TBwfUzcb0BYb3B3jRignVCNjLy3rSEsbPBIa','zgLZAY1PBMzV','y3jLyxrLlwrPCMvJDg9YEq','C3rHCNrZv2L0Aa','zxHLy3v0Aw9UvgLTzq','ig9Mia','AgvSCa','z3b0ltqTBwLUAq','odq0mdqWmgDnEM5yDa','quKGDhjHBNnSyxrPB24GBM90igf2ywLSywjSzsaTig1PC3nPBMCGy29UDgv4Da','cJiUifbYzxnLCNzLihrOzsbVCMLNAw5HBcbPBNrLBNqGyw5Kigz1BMn0Aw9UywXPDhKkmY4GsgfUzgXLigzPBguGCgf0AhmSihf1B3rPBMCSigfUzcbZEw50yxGGy29YCMvJDgX5cJqUieLMignYzwf0Aw5NigzPBgvZlcbLBNn1CMuGChjVCgvYigvUy29KAw5NigfUzcbSAw5LigvUzgLUz3mkns4GqwrKCMvZCYb0AguGC3bLy2LMAwmGy29TCgf0AwjPBgL0EsbPC3n1zxmGAwrLBNrPzMLLzcbHyM92zqO2lIbszxr1CM4Gt05mwsb0AguGDhjHBNnSyxrLzcbJB21Tyw5KlcbUB3rOAw5NigvSC2ukcLrsqu5ttefuruqGq09ntufordO','zMLSzs1JB3b5','DhLWzq','zw5KvgLTzq','Dgv4Dc1WCM9JzxnZAw5N','z2v0qwDLBNrdB21Tyw5KCW','ufnnB2r1BgvqyxrO','r2v0lunOAwXKsxrLBsbfBNy6','Aw5JBhvKzxm','yM9VBgvHBG','u2vSzwn0lvn0CMLUzW','AxnbBgXVD2vKq29TBwfUza','zgvSzxrL','y2fSBa','y29TBwfUza','BwvTB3j5lwLUzM8','nZi0odqXmLzYvLzZCG','rxHWyw5KlufYy2HPDMu','y21K','yNvPBhrPBG','ChjVy2vZCY1RAwXS','AxntEw1IB2XPy0XPBMS','cMbGyaOkq09ntuforcbbtKfmwvnjuZOklsbdB21Tyw5Kifr5Cgu6ia','ignVBw1HBMq','q3jLyxrLzcbKAxjLy3rVCNK6ia','CMvZB2X2zq','zxHPDa','z2v0q29TBwfUzfn0yxr1CW','ywrKvg9iAxn0B3j5','sw52B2TLlvDLyLjLCxvLC3q','ChjVBxb0rgv0zwn0B3i','DMfSDwvZ','Bw92zq','mtCZnJrzELLTsee','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','oIbJB21Tyw5KigLZihjLCxvPCMvKigzVCIbYDw4Ty29TBwfUza','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','zgvZy3jPChrPB24','q29TBwfUzcbWCM9JzxnZigLZig5VDcbYDw5UAw5N','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','A2v5ChjLC3m','Dgv4Dc1HBMfSExnPCW','CgLWzq','u3rHBguGy29TBwfUzhmGy2XLyw5Lzcb1Ca','ChjVy2vZCY1SAxn0','r2v0lunOAwXKsxrLBsaTuMvJDxjZzq','C2vUzeLUChv0','A2v5CW','y3aGjdeGjdi','C2v0','v2LUzg93CYbdB21Tyw5KifbYB21WDcaOy21KlMv4zsK','m3vZDfDswG','DgLTzw91Da','Aw5WDxq','uhjVBxb0igrLDgvJDgvKigLUihn0zg91Da','BwTKAxiGjde','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','r2v0lunVBNrLBNqGlvrHAwW','zgf0yq','q29TBwfUzcb0Aw1LzcbVDxqSigTPBgXPBMCGChjVy2vZCZOG','B2jQzwn0','z2v0u3vWCg9YDgvKqwn0Aw9UCW','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','zgv0zwn0zwruzxjTAw5HBa','ChDK','r2v0lvbYB2nLC3m','r2v0lunVBxb1DgvYsw5MBW','zMLSzs1JCMvHDgu','BgvUz3rO','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFtg9NAwnHBerPC2S','ywLtzxj2AwnL','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','CMvWBgfJzq','C3vJy2vZCW','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','qMfJA2DYB3vUzcbJB21Tyw5KigTPBgXLza','DhjHBNnSyxrLq29TBwfUza','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','twf4Aw11BsbIywnRz3jVDw5KignVBw1HBMrZihbLCIbHz2vUDcbLEgnLzwrLzcaO','ksa+ia','oIbJB21Tyw5KigLZigjSB2nRzwqGzM9YihnLy3vYAxr5oIa','q3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEtOG','uhjVy2vLzcbWCM9TChq','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbJB21Tyw5KihrYyw5ZBgf0Aw9U','Cgf0DgvYBG','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','Bw9Yzq','zw50CMLLCW','zMfPBgvK','zwnOBYaLvvnfuK5btuuL','r2v0lunOAwXKsxrLBsaTrM9Yy2u','q29TChjLC3mTqxjJAgL2zq','y29TBwfUzenHDgvNB3j5','q29WEs1jDgvT','y29TCgXLDgvK','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','Dw5PDMvYC2fS','Bg9Nz2vY','BMfTzq','C3rYAw5N','BMf0AxzL','C3LZDgvTAw5MBW','r2vUzxjPyYbPBNb1DcbWCM9TChq','qwn0Aw9Uia','Bg9N','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPcqunlr1jpvu5eienptu1btKqGtufoquDftuvovcaOqwr2yw5JzwqPoGPgB3iGBg9UzY1YDw5UAw5NignVBw1HBMrZicHUCg0GAw5ZDgfSBcWGz2L0ig9WzxjHDgLVBNmSigj1AwXKCYKSihvZzsbIywnRz3jVDw5KignVBw1HBMqGDhjHy2TPBMC6cGOQkNn0yxj0qMfJA2DYB3vUzenVBw1HBMqOy29TBwfUzcWGD29YA2LUz0rPCIWGE2fNzw50swqSignVBNrLEhr9ksOQcI0Gu3rHCNrZignVBw1HBMqGAw4GyMfJA2DYB3vUzcb3AxrOihn0zgLUigTLChqGB3bLBGOTifjLDhvYBNmGy29TBwfUzeLKigzVCIb0CMfJA2LUzWOTie1HEca','zwnOBYaI','A2LSBgvK','CMvXDwLYzxnqCM9Qzwn0','ig1PBgXPC2vJB25KCW','DgfRzw93BG','q2HHBMDLzcbKAxjLy3rVCNKGDg8G','oIbJB21Tyw5KigLZig5VDcbPBIbHBgXVD2vKigXPC3q6ia','Cg93zxjZAgvSBa','Dw5RBM93BG','DgvYBwLUywW','twf4Aw11BsbNBg9IywWGyMfJA2DYB3vUzcbJB21Tyw5KCYbLEgnLzwrLzcaO','zgLYzwn0B3j5','BgfZDe91Dhb1DfrPBwu','AxnZDwvZ','vgvZDc1ozxrdB25Uzwn0Aw9U','AxneAxjLy3rVCNK','D2LUmZi','Bwf0y2G','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','zgLYzwn0B3j5lwn1CNjLBNq','y29UzMLKzw5Jzq','Dg9tDhjPBMC','y2f0zwDVCNK','tMv3luL0zw0Glvr5CguGrgLYzwn0B3j5','Dw5PEa','AM9PBG','C3vIC3rYAw5N','C3rHy2S','Cg93zxjZAgvSBcbfEhbHBMqTqxjJAgL2zq','tufyx0nptu1btKrFquDfx01jtLvurvm','zgvSicqX','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','zw52','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','vw5RBM93BIbHy3rPB24GDhLWztOG','sw5WDxqGC2vUDcb0BYbIywnRz3jVDw5KignVBw1HBMq','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','C29Tzq','AxndB21Tyw5Kq29TCgf0AwjSzq','rMfPBgvKihrVignOyw5NzsbKAxjLy3rVCNKGDg8G','mJeZmdm0nM56zgXuCq','C3rHCNruAw1L','CNvUlwnVBw1HBMq','r2vUzxjPyYbPBNb1DcbWCM9TChqGzgv0zwn0zwq','cI0Gq2f0zwDVCNK6ia','y2XLyw51CefNzw50','zxHLy3v0zunVBw1HBMrxAxrOu3bHD24','ChjVy2vZCY1TB25PDg9Y','DhjHBNnSyxrLq29TBwfUzfDPDgHbsq','C3rHDa','ihbLCIbHz2vUDcWG'];a0_0x4aff=function(){return _0x474884;};return a0_0x4aff();}
|