@loxia-labs/loxia-autopilot-one 1.0.18 → 1.0.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/agentActivityService.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/src/utilities/userDataDir.js +1 -1
- package/web-ui/build/index.html +1 -1
- package/web-ui/build/static/{index-DL2-PyNX.js → index-CcwO7jS4.js} +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x1793dc=a0_0x2283;(function(_0x148e93,_0x252ba7){const _0x541258=a0_0x2283,_0x509332=_0x148e93();while(!![]){try{const _0x319dcd=-parseInt(_0x541258(0x18e))/0x1+-parseInt(_0x541258(0xf8))/0x2+parseInt(_0x541258(0xfc))/0x3*(parseInt(_0x541258(0x19d))/0x4)+parseInt(_0x541258(0xc2))/0x5+-parseInt(_0x541258(0x1a3))/0x6*(parseInt(_0x541258(0x140))/0x7)+-parseInt(_0x541258(0x10d))/0x8+parseInt(_0x541258(0x10e))/0x9;if(_0x319dcd===_0x252ba7)break;else _0x509332['push'](_0x509332['shift']());}catch(_0x486a03){_0x509332['push'](_0x509332['shift']());}}}(a0_0x4c75,0x69ee5));import{BaseTool}from'./baseTool.js';import a0_0x22ee53 from'../utilities/tagParser.js';import a0_0x58a924 from'../utilities/directoryAccessManager.js';import{spawn,exec}from'child_process';function a0_0x2283(_0x4ea766,_0xeb3114){_0x4ea766=_0x4ea766-0xbf;const _0x4c756a=a0_0x4c75();let _0x22836d=_0x4c756a[_0x4ea766];if(a0_0x2283['ofixZe']===undefined){var _0x57e9be=function(_0x47007a){const _0x4bee94='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x22ee53='',_0x58a924='';for(let _0x42f169=0x0,_0x28de98,_0x15346d,_0x292e2d=0x0;_0x15346d=_0x47007a['charAt'](_0x292e2d++);~_0x15346d&&(_0x28de98=_0x42f169%0x4?_0x28de98*0x40+_0x15346d:_0x15346d,_0x42f169++%0x4)?_0x22ee53+=String['fromCharCode'](0xff&_0x28de98>>(-0x2*_0x42f169&0x6)):0x0){_0x15346d=_0x4bee94['indexOf'](_0x15346d);}for(let _0x53841a=0x0,_0x85d694=_0x22ee53['length'];_0x53841a<_0x85d694;_0x53841a++){_0x58a924+='%'+('00'+_0x22ee53['charCodeAt'](_0x53841a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x58a924);};a0_0x2283['GyQpMc']=_0x57e9be,a0_0x2283['tdLuwq']={},a0_0x2283['ofixZe']=!![];}const _0x50e443=_0x4c756a[0x0],_0x4ce94d=_0x4ea766+_0x50e443,_0x51ad0a=a0_0x2283['tdLuwq'][_0x4ce94d];return!_0x51ad0a?(_0x22836d=a0_0x2283['GyQpMc'](_0x22836d),a0_0x2283['tdLuwq'][_0x4ce94d]=_0x22836d):_0x22836d=_0x51ad0a,_0x22836d;}import a0_0x42f169 from'path';import a0_0x28de98 from'fs/promises';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0x1ef776=a0_0x2283;this[_0x1ef776(0xc4)]=[{'pattern':/\(y\/n\)/i,'type':_0x1ef776(0x11e),'description':_0x1ef776(0x18f)},{'pattern':/\(Y\/n\)/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\(y\/N\)/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/\[y\/n\]/i,'type':'yes-no','description':'Yes/No\x20question'},{'pattern':/\[Y\/n\]/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\[y\/N\]/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/continue\?/i,'type':'continue','description':'Continue\x20prompt'},{'pattern':/proceed\?/i,'type':'continue','description':_0x1ef776(0xda)},{'pattern':/press any key to continue/i,'type':_0x1ef776(0x1b4),'description':'Press\x20any\x20key'},{'pattern':/press enter to continue/i,'type':_0x1ef776(0x1b4),'description':'Press\x20enter'},{'pattern':/hit enter to continue/i,'type':'keypress','description':'Hit\x20enter'},{'pattern':/password:/i,'type':_0x1ef776(0x127),'description':'Password\x20prompt'},{'pattern':/enter password/i,'type':_0x1ef776(0x127),'description':_0x1ef776(0xe2)},{'pattern':/passphrase:/i,'type':'password','description':_0x1ef776(0x135)},{'pattern':/username:/i,'type':_0x1ef776(0x175),'description':'Username\x20prompt'},{'pattern':/enter username/i,'type':_0x1ef776(0x175),'description':_0x1ef776(0x162)},{'pattern':/enter\s+\w+:/i,'type':'input','description':_0x1ef776(0x1f6)},{'pattern':/please enter/i,'type':_0x1ef776(0x186),'description':'Generic\x20input\x20prompt'},{'pattern':/input:/i,'type':'input','description':_0x1ef776(0x1f6)},{'pattern':/are you sure\?/i,'type':'confirmation','description':_0x1ef776(0x1c4)},{'pattern':/do you want to/i,'type':_0x1ef776(0xe8),'description':'Confirmation\x20prompt'},{'pattern':/would you like to/i,'type':'confirmation','description':'Confirmation\x20prompt'},{'pattern':/select an option/i,'type':'selection','description':_0x1ef776(0x11a)},{'pattern':/choose/i,'type':'selection','description':'Selection\x20prompt'},{'pattern':/\d+\)\s+\w+/g,'type':'menu','description':'Menu\x20selection'}];}[a0_0x1793dc(0x1a6)](_0x15346d,_0x292e2d='stdout'){const _0x1cc66d=a0_0x1793dc;if(!_0x15346d||_0x15346d[_0x1cc66d(0x122)]()[_0x1cc66d(0xd7)]===0x0)return null;const _0x53841a=_0x15346d[_0x1cc66d(0x1bd)]('\x0a'),_0x85d694=_0x53841a[_0x1cc66d(0x182)](-0x5)['join']('\x0a');for(const _0x3b1d33 of this['promptPatterns']){const _0x47507e=_0x85d694[_0x1cc66d(0x170)](_0x3b1d33['pattern']);if(_0x47507e)return{'detected':!![],'type':_0x3b1d33[_0x1cc66d(0x112)],'description':_0x3b1d33[_0x1cc66d(0xfd)],'matchedText':_0x47507e[0x0],'matchIndex':_0x47507e[_0x1cc66d(0x1dd)],'source':_0x292e2d,'fullContext':_0x85d694,'timestamp':Date['now']()};}const _0x39a0e3=_0x53841a[_0x53841a[_0x1cc66d(0xd7)]-0x1]||'';if(_0x39a0e3['trim']()[_0x1cc66d(0xd7)]>0x0){const _0x274d9c=/:\s*$/['test'](_0x39a0e3),_0x19b991=/\?\s*$/[_0x1cc66d(0x17d)](_0x39a0e3);if(_0x274d9c||_0x19b991){const _0x1afb44=/\b(enter|type|provide|specify|input)\b/i['test'](_0x39a0e3);if(_0x1afb44)return{'detected':!![],'type':_0x1cc66d(0x176),'description':_0x1cc66d(0x172),'matchedText':_0x39a0e3['trim'](),'source':_0x292e2d,'fullContext':_0x85d694,'timestamp':Date['now'](),'confidence':0.7};}}return null;}['detectHang'](_0x3de363,_0x2a3788=0x7530){const _0x389f80=a0_0x1793dc,_0x3993d7=Date[_0x389f80(0x116)](),_0x33024a=_0x3993d7-_0x3de363;return{'isHanging':_0x33024a>=_0x2a3788,'timeSinceLastOutput':_0x33024a,'threshold':_0x2a3788,'likelyWaiting':_0x33024a>=_0x2a3788/0x2};}}class TerminalTool extends BaseTool{constructor(_0xe8929a={},_0x194f6e=null){const _0x34426b=a0_0x1793dc;super(_0xe8929a,_0x194f6e),this['requiresProject']=![],this[_0x34426b(0x123)]=![],this['timeout']=_0xe8929a[_0x34426b(0x16f)]||0x1d4c0,this[_0x34426b(0x163)]=_0xe8929a[_0x34426b(0x163)]||0x3,this['workingDirectories']=new Map(),this[_0x34426b(0x1e8)]=[],this['allowedCommands']=_0xe8929a[_0x34426b(0x1b7)]||null,this['blockedCommands']=_0xe8929a['blockedCommands']||['rm\x20-rf\x20/',_0x34426b(0x1a5),_0x34426b(0xe4),_0x34426b(0x1e1),_0x34426b(0x16a),_0x34426b(0x1cd)],this['directoryAccessManager']=new a0_0x58a924(_0xe8929a,_0x194f6e),this['promptDetector']=new PromptDetector(),this['commandTracker']=new Map(),this[_0x34426b(0xcc)]=0x0,this['MAX_BACKGROUND_COMMANDS_PER_AGENT']=_0xe8929a[_0x34426b(0x1bb)]||0x5,this['MAX_BACKGROUND_COMMANDS_GLOBAL']=_0xe8929a['maxBackgroundCommandsGlobal']||0x14,this[_0x34426b(0xfe)]=_0xe8929a[_0x34426b(0x15e)]||0x3c,this[_0x34426b(0xeb)]=null,this['platformType']=null,this[_0x34426b(0xdc)]();}['getDescription'](){const _0x1e27d3=a0_0x1793dc;return'\x0aTerminal\x20Tool:\x20Execute\x20system\x20commands\x20and\x20manage\x20terminal\x20operations\x20safely.\x0a\x0aIMPORTANT:\x20For\x20file\x20and\x20directory\x20creation,\x20prefer\x20using\x20the\x20FileSystem\x20tool.\x0aReserve\x20the\x20Terminal\x20tool\x20for\x20command-line\x20operations\x20like\x20npm,\x20git,\x20curl,\x20etc.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22npm\x20install\x20express\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22change-directory\x22,\x20\x22directory\x22:\x20\x22project/backend\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20run-command:\x20Execute\x20a\x20command\x20(command)\x0a-\x20change-directory:\x20Change\x20working\x20directory\x20(directory)\x0a-\x20list-directory:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20create-directory:\x20Create\x20directory\x20(directory)\x20-\x20prefer\x20FileSystem\x20tool\x0a-\x20get-working-directory:\x20Get\x20current\x20directory\x0a\x0aPARAMETERS:\x0a-\x20command:\x20The\x20command\x20to\x20execute\x0a-\x20directory:\x20Directory\x20path\x20for\x20navigation/operations\x0a-\x20timeout:\x20Optional\x20timeout\x20in\x20milliseconds\x20(max\x20'+this[_0x1e27d3(0x16f)]+'ms)\x0a-\x20async:\x20Whether\x20to\x20run\x20command\x20asynchronously\x20(true/false)\x0a\x0aEXAMPLES:\x0a\x0aRun\x20npm\x20install:\x0a```json\x0a{\x22toolId\x22:\x20\x22terminal\x22,\x20\x22actions\x22:\x20[{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22npm\x20install\x22}]}\x0a```\x0a\x0aGit\x20operations:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22git\x20status\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22git\x20add\x20.\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22git\x20commit\x20-m\x20\x5c\x22Update\x20files\x5c\x22\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aChange\x20directory\x20and\x20build:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22change-directory\x22,\x20\x22directory\x22:\x20\x22../frontend\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22npm\x20run\x20build\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Dangerous\x20commands\x20are\x20blocked\x0a-\x20Commands\x20execute\x20in\x20isolated\x20environment\x0a-\x20Output\x20is\x20captured\x20and\x20returned\x20safely\x0a\x0aBEST\x20PRACTICES:\x0a-\x20Use\x20FileSystem\x20tool\x20for\x20file/directory\x20operations\x0a-\x20Use\x20Terminal\x20for\x20CLI\x20utilities\x20(npm,\x20git,\x20curl,\x20etc.)\x0a-\x20Check\x20command\x20output\x20to\x20verify\x20success\x0a\x20\x20\x20\x20';}['parseParameters'](_0x5a5466){const _0x27504f=a0_0x1793dc;try{const _0x2c290b={},_0x4928cf=a0_0x22ee53[_0x27504f(0x1f1)](_0x5a5466,_0x27504f(0x107)),_0x13d0cc=a0_0x22ee53[_0x27504f(0x1f1)](_0x5a5466,_0x27504f(0xe1)),_0x57add0=a0_0x22ee53[_0x27504f(0x1f1)](_0x5a5466,'list-directory'),_0x2f0fba=a0_0x22ee53['extractContent'](_0x5a5466,_0x27504f(0x130)),_0x49f44c=a0_0x22ee53['extractContent'](_0x5a5466,_0x27504f(0x14c)),_0x3bc6cb=a0_0x22ee53[_0x27504f(0x1f1)](_0x5a5466,'timeout'),_0x269537=a0_0x22ee53['extractContent'](_0x5a5466,'async'),_0x2fc623=[];return _0x4928cf['length']>0x0&&_0x2fc623[_0x27504f(0x111)]({'type':_0x27504f(0x107),'command':_0x4928cf[0x0]['trim']()}),_0x13d0cc['length']>0x0&&_0x2fc623[_0x27504f(0x111)]({'type':_0x27504f(0xe1),'directory':_0x13d0cc[0x0]['trim']()}),_0x57add0['length']>0x0&&_0x2fc623[_0x27504f(0x111)]({'type':'list-directory','directory':_0x57add0[0x0]['trim']()||'.'}),_0x2f0fba[_0x27504f(0xd7)]>0x0&&_0x2fc623['push']({'type':'create-directory','directory':_0x2f0fba[0x0][_0x27504f(0x122)]()}),_0x49f44c['length']>0x0&&_0x2fc623[_0x27504f(0x111)]({'type':_0x27504f(0x14c)}),_0x2c290b[_0x27504f(0x1c9)]=_0x2fc623,_0x3bc6cb[_0x27504f(0xd7)]>0x0&&(_0x2c290b[_0x27504f(0x16f)]=parseInt(_0x3bc6cb[0x0],0xa)),_0x269537[_0x27504f(0xd7)]>0x0&&(_0x2c290b[_0x27504f(0x1ae)]=_0x269537[0x0]['toLowerCase']()===_0x27504f(0x136)),_0x2c290b[_0x27504f(0x13e)]=_0x5a5466[_0x27504f(0x122)](),_0x2c290b;}catch(_0x1ec1bf){throw new Error('Failed\x20to\x20parse\x20terminal\x20parameters:\x20'+_0x1ec1bf[_0x27504f(0x108)]);}}['getRequiredParameters'](){const _0x3ffc43=a0_0x1793dc;return[_0x3ffc43(0x1c9)];}[a0_0x1793dc(0x177)](_0x5e4f8f){const _0x221868=a0_0x1793dc,_0x41118a=[];if(!_0x5e4f8f[_0x221868(0x1c9)]||!Array['isArray'](_0x5e4f8f[_0x221868(0x1c9)])||_0x5e4f8f['actions'][_0x221868(0xd7)]===0x0)_0x41118a[_0x221868(0x111)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x6227c9,_0x2fa589]of _0x5e4f8f['actions'][_0x221868(0x1b8)]()){if(!_0x2fa589[_0x221868(0x112)]){_0x41118a[_0x221868(0x111)]('Action\x20'+(_0x6227c9+0x1)+':\x20type\x20is\x20required');continue;}switch(_0x2fa589['type']){case'run-command':if(!_0x2fa589['command']||!_0x2fa589[_0x221868(0x13f)][_0x221868(0x122)]())_0x41118a[_0x221868(0x111)](_0x221868(0x12a)+(_0x6227c9+0x1)+_0x221868(0x1e9));else{if(this['isBlockedCommand'](_0x2fa589[_0x221868(0x13f)]))_0x41118a['push']('Action\x20'+(_0x6227c9+0x1)+_0x221868(0xf5)+_0x2fa589['command']);else this['allowedCommands']&&!this['isAllowedCommand'](_0x2fa589[_0x221868(0x13f)])&&_0x41118a[_0x221868(0x111)](_0x221868(0x12a)+(_0x6227c9+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x2fa589['command']);}break;case _0x221868(0xe1):case _0x221868(0xec):case'create-directory':(!_0x2fa589['directory']||!_0x2fa589['directory'][_0x221868(0x122)]())&&_0x41118a['push']('Action\x20'+(_0x6227c9+0x1)+_0x221868(0x17e)+_0x2fa589[_0x221868(0x112)]);break;case'get-working-directory':break;default:_0x41118a['push']('Action\x20'+(_0x6227c9+0x1)+_0x221868(0x102)+_0x2fa589[_0x221868(0x112)]);}}return _0x5e4f8f[_0x221868(0x16f)]&&(_0x5e4f8f[_0x221868(0x16f)]<0x3e8||_0x5e4f8f['timeout']>this[_0x221868(0x16f)])&&_0x41118a['push'](_0x221868(0x1d0)+this['timeout']+_0x221868(0x1a2)),{'valid':_0x41118a[_0x221868(0xd7)]===0x0,'errors':_0x41118a};}async['execute'](_0x26cab7,_0x5d4e5d){const _0x3d73ee=a0_0x1793dc,{actions:_0x5c01fc,timeout:_0x77962d,async:_0xe94538}=_0x26cab7,{agentId:_0x1f89f8,projectDir:_0x55d02a,directoryAccess:_0x1cfdd0}=_0x5d4e5d,_0x2d837b=_0x1cfdd0||this[_0x3d73ee(0x1df)]['createDirectoryAccess']({'workingDirectory':_0x55d02a||process['cwd'](),'writeEnabledDirectories':[_0x55d02a||process[_0x3d73ee(0x1b1)]()],'restrictToProject':!![]});_0x1cfdd0&&_0x1cfdd0[_0x3d73ee(0x1b9)]?console[_0x3d73ee(0xe9)]('Terminal\x20DEBUG:\x20Using\x20agent\x20configured\x20working\x20directory:',_0x1cfdd0[_0x3d73ee(0x1b9)]):console[_0x3d73ee(0xe9)](_0x3d73ee(0x164),_0x55d02a||process[_0x3d73ee(0x1b1)]());const _0x5b673c=_0x1f89f8+'-'+(_0x55d02a||'default');let _0x5b4b12=this[_0x3d73ee(0x1f5)]['get'](_0x5b673c)||this[_0x3d73ee(0x1df)][_0x3d73ee(0x1dc)](_0x2d837b);const _0x2ee738=[];for(const _0x41bf28 of _0x5c01fc){try{let _0x5225df;switch(_0x41bf28['type']){case _0x3d73ee(0x107):_0x5225df=await this['executeCommand'](_0x41bf28['command'],_0x5b4b12,{'timeout':_0x77962d||this['timeout'],'async':_0xe94538||![],'agentId':_0x1f89f8,'context':{'toolsRegistry':_0x5d4e5d['toolsRegistry'],'aiService':_0x5d4e5d[_0x3d73ee(0x183)],'apiKey':_0x5d4e5d[_0x3d73ee(0x195)],'customApiKeys':_0x5d4e5d['customApiKeys'],'platformProvided':_0x5d4e5d[_0x3d73ee(0x15a)]}});break;case _0x3d73ee(0xe1):_0x5225df=await this['changeDirectory'](_0x41bf28['directory'],_0x5b4b12,_0x2d837b),_0x5b4b12=_0x5225df['newDirectory'],this[_0x3d73ee(0x1f5)][_0x3d73ee(0x16b)](_0x5b673c,_0x5b4b12);break;case _0x3d73ee(0xec):_0x5225df=await this['listDirectory'](_0x41bf28[_0x3d73ee(0x125)]==='.'?_0x5b4b12:_0x41bf28[_0x3d73ee(0x125)]);break;case _0x3d73ee(0x130):_0x5225df=await this[_0x3d73ee(0x146)](_0x41bf28[_0x3d73ee(0x125)],_0x5b4b12);break;case'get-working-directory':_0x5225df={'success':!![],'action':_0x3d73ee(0x14c),'workingDirectory':_0x5b4b12,'message':'Current\x20working\x20directory:\x20'+_0x5b4b12};break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x41bf28[_0x3d73ee(0x112)]);}_0x2ee738['push'](_0x5225df),this[_0x3d73ee(0x144)](_0x41bf28,_0x5225df,_0x1f89f8);}catch(_0x1c4a69){const _0x20e09d={'success':![],'action':_0x41bf28[_0x3d73ee(0x112)],'error':_0x1c4a69[_0x3d73ee(0x108)],'command':_0x41bf28[_0x3d73ee(0x13f)]||_0x41bf28['directory'],'workingDirectory':_0x5b4b12};_0x2ee738[_0x3d73ee(0x111)](_0x20e09d),this['addToHistory'](_0x41bf28,_0x20e09d,_0x1f89f8);}}const _0x404c3b=_0x2ee738['every'](_0x554bd5=>_0x554bd5[_0x3d73ee(0x1f8)]),_0x43e2d0=_0x2ee738[_0x3d73ee(0xce)](_0x51c997=>!_0x51c997['success']);return{'success':_0x404c3b,'actions':_0x2ee738,'workingDirectory':_0x5b4b12,'executedActions':_0x5c01fc[_0x3d73ee(0xd7)],'failedActions':_0x43e2d0['length'],'toolUsed':'terminal','message':_0x404c3b?_0x3d73ee(0x1d1)+_0x5c01fc['length']+'\x20actions\x20completed\x20successfully':_0x43e2d0['length']+_0x3d73ee(0x1d6)+_0x5c01fc[_0x3d73ee(0xd7)]+'\x20actions\x20failed'};}async[a0_0x1793dc(0x160)](_0x207cb2,_0x3082f6,_0x99f1e1={}){const _0x1c2e07=a0_0x1793dc,{timeout:timeout=this[_0x1c2e07(0x16f)],async:_0x94baa9=![],agentId:_0x2d4934,context:_0x187526}=_0x99f1e1,_0x5969db=_0x207cb2;let _0x47988e;try{_0x47988e=await this[_0x1c2e07(0x1e3)](_0x207cb2,{'agentId':_0x2d4934,'toolsRegistry':_0x187526?.[_0x1c2e07(0x1f3)],'messageProcessor':_0x187526?.['messageProcessor'],'aiService':_0x187526?.['aiService'],'apiKey':_0x187526?.[_0x1c2e07(0x195)],'customApiKeys':_0x187526?.[_0x1c2e07(0x1a8)],'platformProvided':_0x187526?.[_0x1c2e07(0x15a)]});}catch(_0x131d54){this[_0x1c2e07(0x198)]?.[_0x1c2e07(0x19f)](_0x1c2e07(0x1c1),{'originalCommand':_0x5969db,'error':_0x131d54['message']}),_0x47988e=_0x207cb2;}return new Promise((_0x4cd0db,_0x4d6d8f)=>{const _0x1d3ef0=_0x1c2e07,_0xd209fa=Date['now']();this['logger']?.[_0x1d3ef0(0x19a)](_0x1d3ef0(0x1f0)+_0x47988e,{'originalCommand':_0x5969db,'translatedCommand':_0x47988e,'terminal':this[_0x1d3ef0(0xeb)],'workingDirectory':_0x3082f6,'timeout':timeout,'agentId':_0x2d4934});const _0x2cbb1c=exec(_0x47988e,{'cwd':_0x3082f6,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process['env']}},(_0x40108a,_0x300112,_0x3b58d4)=>{const _0x12c07d=_0x1d3ef0,_0x4b96e5=Date['now']()-_0xd209fa;if(_0x40108a){this[_0x12c07d(0x198)]?.[_0x12c07d(0xd8)](_0x12c07d(0x178)+_0x47988e,{'originalCommand':_0x5969db,'translatedCommand':_0x47988e,'error':_0x40108a['message'],'workingDirectory':_0x3082f6,'executionTime':_0x4b96e5}),_0x4cd0db({'success':![],'action':_0x12c07d(0x107),'command':_0x5969db,'translatedCommand':_0x47988e!==_0x5969db?_0x47988e:undefined,'error':_0x40108a['message'],'stderr':_0x3b58d4[_0x12c07d(0x122)](),'stdout':_0x300112[_0x12c07d(0x122)](),'exitCode':_0x40108a[_0x12c07d(0x1a7)],'executionTime':_0x4b96e5,'workingDirectory':_0x3082f6});return;}this[_0x12c07d(0x198)]?.[_0x12c07d(0x19a)](_0x12c07d(0x14a)+_0x47988e,{'originalCommand':_0x5969db,'translatedCommand':_0x47988e,'executionTime':_0x4b96e5,'stdoutLength':_0x300112[_0x12c07d(0xd7)],'stderrLength':_0x3b58d4[_0x12c07d(0xd7)]}),_0x4cd0db({'success':!![],'action':_0x12c07d(0x107),'command':_0x5969db,'translatedCommand':_0x47988e!==_0x5969db?_0x47988e:undefined,'stdout':_0x300112[_0x12c07d(0x122)](),'stderr':_0x3b58d4['trim'](),'exitCode':0x0,'executionTime':_0x4b96e5,'workingDirectory':_0x3082f6,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x4b96e5+'ms'});});setTimeout(()=>{const _0x9e4b6b=_0x1d3ef0;!_0x2cbb1c['killed']&&(_0x2cbb1c[_0x9e4b6b(0xee)](_0x9e4b6b(0x139)),_0x4d6d8f(new Error('Command\x20timed\x20out\x20after\x20'+timeout+_0x9e4b6b(0x1ba)+_0x47988e+'\x20(original:\x20'+_0x5969db+')')));},timeout);});}async['executeCommandWithSpawn'](_0x293cc7,_0x4fc2c1,_0x1d23ba={}){const _0x5449b4=a0_0x1793dc,{timeout:timeout=this['timeout'],agentId:_0x2a2c1c,context:_0x178a2b}=_0x1d23ba,_0x502d72=_0x293cc7;let _0x1171ec;try{_0x1171ec=await this[_0x5449b4(0x1e3)](_0x293cc7,{'agentId':_0x2a2c1c,'toolsRegistry':_0x178a2b?.['toolsRegistry'],'messageProcessor':_0x178a2b?.['messageProcessor'],'aiService':_0x178a2b?.[_0x5449b4(0x183)],'apiKey':_0x178a2b?.['apiKey'],'customApiKeys':_0x178a2b?.[_0x5449b4(0x1a8)],'platformProvided':_0x178a2b?.[_0x5449b4(0x15a)]});}catch(_0x36d7e7){this['logger']?.['warn']('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x502d72,'error':_0x36d7e7['message']}),_0x1171ec=_0x293cc7;}return new Promise((_0x40eb4f,_0x1f6bb1)=>{const _0x36b97a=_0x5449b4,_0x4825c8=Date['now']();this[_0x36b97a(0x198)]?.[_0x36b97a(0x19a)]('Executing\x20command\x20with\x20spawn:\x20'+_0x1171ec,{'originalCommand':_0x502d72,'translatedCommand':_0x1171ec,'terminal':this['detectedTerminal'],'workingDirectory':_0x4fc2c1,'timeout':timeout,'agentId':_0x2a2c1c});let _0x557508;if(this[_0x36b97a(0xeb)]===_0x36b97a(0x18c)||this[_0x36b97a(0xeb)]===_0x36b97a(0x12b)){const _0x429fe4=this['detectedTerminal']==='powershell'?'powershell':'cmd',_0x47cc09=this['detectedTerminal']==='powershell'?[_0x36b97a(0x119),_0x1171ec]:['/c',_0x1171ec];_0x557508=spawn(_0x429fe4,_0x47cc09,{'cwd':_0x4fc2c1,'env':{...process['env']},'windowsHide':!![]});}else _0x557508=spawn('sh',['-c',_0x1171ec],{'cwd':_0x4fc2c1,'env':{...process[_0x36b97a(0x1e0)]}});let _0x14ee5e='',_0x582f95='',_0xc1e1f5=![],_0x5928ea=null,_0x5002bc=Date[_0x36b97a(0x116)](),_0x34e082=null;const _0x1dfd31=setTimeout(()=>{const _0x4d821f=_0x36b97a;!_0x557508['killed']&&_0x5928ea===null&&(_0xc1e1f5=!![],this[_0x4d821f(0x198)]?.[_0x4d821f(0x19f)](_0x4d821f(0xf2)+_0x1171ec,{'timeout':timeout,'agentId':_0x2a2c1c}),_0x557508['kill'](_0x4d821f(0x139)),setTimeout(()=>{const _0x1d895c=_0x4d821f;!_0x557508[_0x1d895c(0xf1)]&&_0x557508['kill'](_0x1d895c(0x147));},0x1388));},timeout);_0x557508[_0x36b97a(0x1ed)]['on']('data',_0x227132=>{const _0x81ce4a=_0x36b97a,_0xf9db4e=_0x227132['toString']();_0x14ee5e+=_0xf9db4e,_0x5002bc=Date['now'](),this[_0x81ce4a(0x198)]?.['debug'](_0x81ce4a(0x1ee)+_0xf9db4e['substring'](0x0,0x64),{'agentId':_0x2a2c1c,'command':_0x502d72[_0x81ce4a(0x1de)](0x0,0x32)});if(!_0x34e082){const _0xedb797=this['promptDetector'][_0x81ce4a(0x1a6)](_0x14ee5e,_0x81ce4a(0x1ed));_0xedb797&&(_0x34e082=_0xedb797,this['logger']?.['info'](_0x81ce4a(0x159),{'type':_0xedb797[_0x81ce4a(0x112)],'description':_0xedb797['description'],'matchedText':_0xedb797['matchedText'],'agentId':_0x2a2c1c,'command':_0x502d72[_0x81ce4a(0x1de)](0x0,0x32)}));}}),_0x557508[_0x36b97a(0x1b6)]['on']('data',_0x7a0571=>{const _0x5976f9=_0x36b97a,_0x22143d=_0x7a0571[_0x5976f9(0x1b3)]();_0x582f95+=_0x22143d,_0x5002bc=Date[_0x5976f9(0x116)](),this['logger']?.['debug'](_0x5976f9(0x11c)+_0x22143d[_0x5976f9(0x1de)](0x0,0x64),{'agentId':_0x2a2c1c,'command':_0x502d72['substring'](0x0,0x32)});if(!_0x34e082){const _0x256dc3=this['promptDetector']['detectPrompt'](_0x582f95,'stderr');_0x256dc3&&(_0x34e082=_0x256dc3,this[_0x5976f9(0x198)]?.['info']('Prompt\x20detected\x20in\x20stderr',{'type':_0x256dc3[_0x5976f9(0x112)],'description':_0x256dc3['description'],'matchedText':_0x256dc3[_0x5976f9(0x1ad)],'agentId':_0x2a2c1c,'command':_0x502d72['substring'](0x0,0x32)}));}}),_0x557508['on'](_0x36b97a(0x1c3),(_0x843d41,_0x5afae3)=>{const _0x32da2b=_0x36b97a;clearTimeout(_0x1dfd31),_0x5928ea=_0x843d41;const _0x1e05a0=Date['now']()-_0x4825c8,_0x5a2215=Date[_0x32da2b(0x116)]()-_0x5002bc;this['logger']?.['info'](_0x32da2b(0x1ea)+_0x1171ec,{'exitCode':_0x843d41,'signal':_0x5afae3,'executionTime':_0x1e05a0,'timedOut':_0xc1e1f5,'stdoutLength':_0x14ee5e[_0x32da2b(0xd7)],'stderrLength':_0x582f95[_0x32da2b(0xd7)],'promptDetected':!!_0x34e082,'timeSinceLastOutput':_0x5a2215});const _0x1d0b80={'action':_0x32da2b(0x107),'command':_0x502d72,'translatedCommand':_0x1171ec!==_0x502d72?_0x1171ec:undefined,'stdout':_0x14ee5e['trim'](),'stderr':_0x582f95['trim'](),'exitCode':_0x843d41,'executionTime':_0x1e05a0,'workingDirectory':_0x4fc2c1,'promptDetected':!!_0x34e082,'promptInfo':_0x34e082||undefined,'lastOutputTime':_0x5002bc,'timeSinceLastOutput':_0x5a2215};if(_0xc1e1f5){_0x40eb4f({..._0x1d0b80,'success':![],'error':_0x32da2b(0x15c)+timeout+'ms','exitCode':_0x843d41||-0x1,'timedOut':!![]});return;}if(_0x843d41!==0x0){this['logger']?.[_0x32da2b(0xd8)](_0x32da2b(0x161)+_0x843d41+':\x20'+_0x1171ec,{'originalCommand':_0x502d72,'translatedCommand':_0x1171ec,'exitCode':_0x843d41,'stderr':_0x582f95[_0x32da2b(0x1de)](0x0,0xc8),'executionTime':_0x1e05a0,'promptDetected':!!_0x34e082}),_0x40eb4f({..._0x1d0b80,'success':![],'error':_0x32da2b(0x12c)+_0x843d41});return;}this[_0x32da2b(0x198)]?.['info']('Command\x20completed\x20successfully:\x20'+_0x1171ec,{'originalCommand':_0x502d72,'executionTime':_0x1e05a0,'stdoutLength':_0x14ee5e['length'],'stderrLength':_0x582f95['length'],'promptDetected':!!_0x34e082}),_0x40eb4f({..._0x1d0b80,'success':!![],'exitCode':0x0,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x1e05a0+'ms'});}),_0x557508['on'](_0x36b97a(0xd8),_0xf4e1ce=>{const _0x1e7a6b=_0x36b97a;clearTimeout(_0x1dfd31);const _0x922853=Date[_0x1e7a6b(0x116)]()-_0x4825c8,_0x126724=Date['now']()-_0x5002bc;this[_0x1e7a6b(0x198)]?.[_0x1e7a6b(0xd8)](_0x1e7a6b(0xf6)+_0x1171ec,{'originalCommand':_0x502d72,'error':_0xf4e1ce[_0x1e7a6b(0x108)],'executionTime':_0x922853,'promptDetected':!!_0x34e082}),_0x40eb4f({'success':![],'action':_0x1e7a6b(0x107),'command':_0x502d72,'translatedCommand':_0x1171ec!==_0x502d72?_0x1171ec:undefined,'error':_0xf4e1ce['message'],'stderr':_0x582f95['trim'](),'stdout':_0x14ee5e[_0x1e7a6b(0x122)](),'exitCode':-0x1,'executionTime':_0x922853,'workingDirectory':_0x4fc2c1,'promptDetected':!!_0x34e082,'promptInfo':_0x34e082||undefined,'lastOutputTime':_0x5002bc,'timeSinceLastOutput':_0x126724});});});}async['changeDirectory'](_0x13563e,_0x39332f,_0x51ac5e){const _0x3796eb=a0_0x1793dc;try{let _0x56f469;a0_0x42f169[_0x3796eb(0x15d)](_0x13563e)?_0x56f469=_0x13563e:_0x56f469=a0_0x42f169['resolve'](_0x39332f,_0x13563e);const _0x515962=await a0_0x28de98['stat'](_0x56f469);if(!_0x515962['isDirectory']())throw new Error('Not\x20a\x20directory:\x20'+_0x56f469);const _0x21db25=this['directoryAccessManager']['validateReadAccess'](_0x56f469,_0x51ac5e);if(!_0x21db25['allowed']){this[_0x3796eb(0x198)]?.['warn'](_0x3796eb(0x184)+_0x21db25[_0x3796eb(0xe3)],{'targetDirectory':_0x56f469,'reason':_0x21db25['reason'],'category':_0x21db25[_0x3796eb(0x13c)]});throw new Error(_0x3796eb(0x179)+_0x21db25[_0x3796eb(0xe3)]);}return{'success':!![],'action':'change-directory','previousDirectory':_0x39332f,'newDirectory':_0x56f469,'message':_0x3796eb(0x13d)+_0x56f469};}catch(_0x15708b){throw new Error(_0x3796eb(0x19c)+_0x13563e+':\x20'+_0x15708b['message']);}}async[a0_0x1793dc(0xd1)](_0x24c300){const _0x133f12=a0_0x1793dc;try{const _0x4f9517=await a0_0x28de98['readdir'](_0x24c300,{'withFileTypes':!![]}),_0x184070=_0x4f9517[_0x133f12(0x165)](_0x3d520b=>({'name':_0x3d520b[_0x133f12(0x11b)],'type':_0x3d520b[_0x133f12(0x11f)]()?_0x133f12(0x125):'file','isSymlink':_0x3d520b[_0x133f12(0x173)]()}));return{'success':!![],'action':'list-directory','directory':_0x24c300,'contents':_0x184070,'totalItems':_0x184070[_0x133f12(0xd7)],'directories':_0x184070['filter'](_0x221418=>_0x221418[_0x133f12(0x112)]===_0x133f12(0x125))['length'],'files':_0x184070[_0x133f12(0xce)](_0x75383d=>_0x75383d[_0x133f12(0x112)]===_0x133f12(0xed))['length'],'message':'Listed\x20'+_0x184070[_0x133f12(0xd7)]+'\x20items\x20in\x20'+_0x24c300};}catch(_0x370aa8){throw new Error(_0x133f12(0x156)+_0x24c300+':\x20'+_0x370aa8[_0x133f12(0x108)]);}}async['createDirectory'](_0x5c75e1,_0x2a9bf0){const _0x56567d=a0_0x1793dc;try{let _0x1c6839;return a0_0x42f169[_0x56567d(0x15d)](_0x5c75e1)?_0x1c6839=_0x5c75e1:_0x1c6839=a0_0x42f169['resolve'](_0x2a9bf0,_0x5c75e1),await a0_0x28de98['mkdir'](_0x1c6839,{'recursive':!![]}),{'success':!![],'action':_0x56567d(0x130),'directory':_0x1c6839,'relativePath':a0_0x42f169['relative'](_0x2a9bf0,_0x1c6839),'message':_0x56567d(0x196)+_0x1c6839};}catch(_0x1d6504){throw new Error(_0x56567d(0x1eb)+_0x5c75e1+':\x20'+_0x1d6504['message']);}}[a0_0x1793dc(0xf3)](_0x2e230f){const _0x25700f=a0_0x1793dc,_0x528bb6=_0x2e230f[_0x25700f(0x101)]()[_0x25700f(0x122)]();return this['blockedCommands'][_0x25700f(0x166)](_0x5e86a1=>{const _0x220346=_0x25700f,_0x29ddc3=_0x5e86a1[_0x220346(0x101)]();return _0x528bb6===_0x29ddc3||_0x528bb6[_0x220346(0x191)](_0x29ddc3+'\x20');});}['isAllowedCommand'](_0x1b9981){const _0x47f5bd=a0_0x1793dc;if(!this['allowedCommands'])return!![];const _0x3ed093=_0x1b9981[_0x47f5bd(0x101)]()[_0x47f5bd(0x122)](),_0x250d6c=_0x3ed093[_0x47f5bd(0x1bd)]('\x20')[0x0];return this['allowedCommands'][_0x47f5bd(0x166)](_0x4e445e=>_0x4e445e[_0x47f5bd(0x101)]()===_0x250d6c||_0x3ed093[_0x47f5bd(0x191)](_0x4e445e['toLowerCase']()+'\x20'));}['addToHistory'](_0xfb80b5,_0x552172,_0x23f683){const _0x47e2b4=a0_0x1793dc,_0x5331eb={'timestamp':new Date()[_0x47e2b4(0x106)](),'agentId':_0x23f683,'action':_0xfb80b5[_0x47e2b4(0x112)],'command':_0xfb80b5['command']||_0xfb80b5['directory'],'success':_0x552172[_0x47e2b4(0x1f8)],'executionTime':_0x552172['executionTime']||0x0,'workingDirectory':_0x552172['workingDirectory']};this[_0x47e2b4(0x1e8)][_0x47e2b4(0x111)](_0x5331eb),this[_0x47e2b4(0x1e8)]['length']>0x64&&(this[_0x47e2b4(0x1e8)]=this[_0x47e2b4(0x1e8)][_0x47e2b4(0x182)](-0x64));}[a0_0x1793dc(0x10b)](){const _0x2a10dd=a0_0x1793dc;return['run-command',_0x2a10dd(0xe1),'list-directory','create-directory','get-working-directory'];}['getParameterSchema'](){const _0x53630c=a0_0x1793dc;return{'type':'object','properties':{'actions':{'type':'array','minItems':0x1,'items':{'type':'object','properties':{'type':{'type':_0x53630c(0x1e6),'enum':this[_0x53630c(0x10b)]()},'command':{'type':'string'},'directory':{'type':'string'}},'required':['type']}},'timeout':{'type':'integer','minimum':0x3e8,'maximum':this['timeout']},'async':{'type':'boolean'}},'required':[_0x53630c(0x1c9)]};}['getCommandHistory'](_0x2c9b6e=null){const _0x2232db=a0_0x1793dc;if(_0x2c9b6e)return this['commandHistory'][_0x2232db(0xce)](_0x36fbe9=>_0x36fbe9['agentId']===_0x2c9b6e);return[...this['commandHistory']];}['clearWorkingDirectory'](_0x530bf7){const _0x420fa3=a0_0x1793dc;for(const [_0x39a987]of this['workingDirectories']){_0x39a987[_0x420fa3(0x191)](_0x530bf7+'-')&&this[_0x420fa3(0x1f5)][_0x420fa3(0xd4)](_0x39a987);}}[a0_0x1793dc(0x152)](_0x165b05,_0x59b73f=null){const _0x3f119b=a0_0x1793dc,_0x54bc85=_0x165b05+'-'+(_0x59b73f||'default');return this[_0x3f119b(0x1f5)]['get'](_0x54bc85)||_0x59b73f||process['cwd']();}[a0_0x1793dc(0xdc)](){const _0x3d1c17=a0_0x1793dc;this[_0x3d1c17(0x1e2)]=process['platform'];if(process['platform']==='win32'){if(process['env']['PSModulePath'])this[_0x3d1c17(0xeb)]='powershell';else process[_0x3d1c17(0x1e0)][_0x3d1c17(0x1c2)]&&process[_0x3d1c17(0x1e0)]['SHELL'][_0x3d1c17(0x1d8)]('bash')?this[_0x3d1c17(0xeb)]=_0x3d1c17(0x171):this['detectedTerminal']='cmd';}else process['platform']===_0x3d1c17(0x1aa)?this[_0x3d1c17(0xeb)]=_0x3d1c17(0x171):this[_0x3d1c17(0xeb)]=_0x3d1c17(0x171);this['logger']?.[_0x3d1c17(0x19a)]('Terminal\x20detected',{'platform':this[_0x3d1c17(0x1e2)],'terminal':this['detectedTerminal'],'shell':process['env'][_0x3d1c17(0x1c2)]});}async['translateCommand'](_0xfce343,_0x5674ef={}){const _0x4fda14=a0_0x1793dc,_0x8322b=_0xfce343['trim'](),_0x8d41f4=this['analyzeCommandCompatibility'](_0x8322b);this['logger']?.['info'](_0x4fda14(0xfa),{'command':_0x8322b,'detectedTerminal':_0x8d41f4[_0x4fda14(0xeb)],'commandType':_0x8d41f4['commandType'],'commandCategory':_0x8d41f4['commandCategory'],'compatible':_0x8d41f4['compatible'],'issues':_0x8d41f4[_0x4fda14(0x1e5)],'suggestedAction':_0x8d41f4[_0x4fda14(0x137)],'confidence':_0x8d41f4['confidence']});if(_0x8d41f4['compatible'])return _0xfce343;let _0x48a573=null;if(this[_0x4fda14(0xeb)]===_0x4fda14(0x18c))_0x48a573=this['translateToWindowsCmd'](_0x8322b);else{if(this['detectedTerminal']==='powershell')_0x48a573=this['translateToPowerShell'](_0x8322b);else this[_0x4fda14(0xeb)]==='bash'&&(_0x48a573=this[_0x4fda14(0x153)](_0x8322b));}if(_0x48a573&&this[_0x4fda14(0x14b)](_0x8322b))return this[_0x4fda14(0x198)]?.[_0x4fda14(0x19a)]('Using\x20simple\x20translation',{'original':_0xfce343,'translated':_0x48a573,'method':_0x4fda14(0xd3)}),_0x48a573;if(_0x5674ef['aiService']||_0x5674ef['toolsRegistry']&&_0x5674ef[_0x4fda14(0x181)]){this[_0x4fda14(0x198)]?.['info'](_0x4fda14(0x12d),{'command':_0xfce343['substring'](0x0,0x64)+_0x4fda14(0x15b),'hasAiService':!!_0x5674ef[_0x4fda14(0x183)],'hasToolsRegistry':!!_0x5674ef[_0x4fda14(0x1f3)],'agentId':_0x5674ef[_0x4fda14(0x181)]});try{const _0x18cc0b=await this['translateCommandWithAI'](_0xfce343,_0x5674ef);if(_0x18cc0b&&_0x18cc0b[_0x4fda14(0x122)]()!==_0xfce343['trim']())return this[_0x4fda14(0x198)]?.['info']('Using\x20AI\x20translation',{'original':_0xfce343,'translated':_0x18cc0b,'method':'ai'}),_0x18cc0b;else this['logger']?.[_0x4fda14(0x19f)](_0x4fda14(0x185),{'original':_0xfce343,'translated':_0x18cc0b});}catch(_0x2bf2d0){this[_0x4fda14(0x198)]?.['warn']('AI\x20translation\x20failed,\x20falling\x20back\x20to\x20simple\x20translation',{'original':_0xfce343,'error':_0x2bf2d0[_0x4fda14(0x108)],'stack':_0x2bf2d0[_0x4fda14(0x117)]});}}else this['logger']?.[_0x4fda14(0x19f)]('AI\x20translation\x20not\x20available\x20-\x20missing\x20context',{'hasAiService':!!_0x5674ef[_0x4fda14(0x183)],'hasToolsRegistry':!!_0x5674ef['toolsRegistry'],'hasAgentId':!!_0x5674ef['agentId'],'contextKeys':Object[_0x4fda14(0x15f)](_0x5674ef)});return _0x48a573||_0xfce343;}[a0_0x1793dc(0x14b)](_0x80d28d){const _0x3f99d2=a0_0x1793dc,_0x2089da=_0x80d28d['toLowerCase']();if(_0x80d28d['includes']('\x5cn')||_0x80d28d['includes']('\x5cr')||_0x80d28d['includes']('\x5ct'))return![];if(_0x80d28d[_0x3f99d2(0x1d8)]('\x0a')||_0x80d28d[_0x3f99d2(0x1d8)]('\x0d'))return![];if(_0x80d28d[_0x3f99d2(0x1d8)]('#include')||_0x80d28d[_0x3f99d2(0x1d8)]('printf')||_0x80d28d[_0x3f99d2(0x1d8)](_0x3f99d2(0x143)))return![];if(_0x80d28d[_0x3f99d2(0x1d8)](_0x3f99d2(0x169))||_0x80d28d[_0x3f99d2(0x1d8)]('function\x20')||_0x80d28d[_0x3f99d2(0x1d8)]('class\x20'))return![];if(_0x80d28d[_0x3f99d2(0x1d8)](_0x3f99d2(0x14f))&&!_0x80d28d[_0x3f99d2(0x1d8)]('echo\x20\x22'))return![];const _0x2ff6d4=_0x80d28d[_0x3f99d2(0x170)](/'([^']*)'/);if(_0x2ff6d4&&_0x2ff6d4[0x1][_0x3f99d2(0xd7)]>0x32)return![];if(this['detectedTerminal']==='cmd'&&_0x80d28d[_0x3f99d2(0x1d8)]('>')&&_0x80d28d['includes']('/')&&!_0x80d28d[_0x3f99d2(0x1d8)]('\x5c'))return![];if(_0x80d28d['includes'](_0x3f99d2(0xff))||_0x80d28d['includes'](_0x3f99d2(0xd2))||_0x80d28d[_0x3f99d2(0x1d8)](';\x20'))return![];if(_0x80d28d[_0x3f99d2(0x1d8)]('$(')||_0x80d28d['includes']('`')||_0x80d28d[_0x3f99d2(0x1d8)]('{')||_0x80d28d['includes']('['))return![];if(_0x2089da['includes']('for\x20')||_0x2089da['includes'](_0x3f99d2(0x100))||_0x2089da['includes'](_0x3f99d2(0x151)))return![];if(_0x2089da[_0x3f99d2(0x1d8)]('export ')||_0x2089da[_0x3f99d2(0x1d8)](_0x3f99d2(0xe6)))return![];if(_0x80d28d['includes'](_0x3f99d2(0xe5))||_0x80d28d['includes']('\x20>\x20&'))return![];return!![];}async['translateCommandWithAI'](_0x2d36b3,_0x16784d){const _0x4d046b=a0_0x1793dc;let _0x3a0c9c=_0x16784d[_0x4d046b(0x183)];if(!_0x3a0c9c&&_0x16784d[_0x4d046b(0x1f3)]&&_0x16784d['agentId']){const _0x38d25f=_0x16784d[_0x4d046b(0x133)];_0x38d25f&&_0x38d25f[_0x4d046b(0x183)]&&(_0x3a0c9c=_0x38d25f[_0x4d046b(0x183)]);}if(!_0x3a0c9c)throw new Error('AI\x20service\x20not\x20available\x20for\x20command\x20translation');const _0x40ddb4=this[_0x4d046b(0xcb)](_0x2d36b3),_0x254ffb='gpt-4-mini';try{const _0x437640=await _0x3a0c9c['sendMessage'](_0x254ffb,_0x40ddb4,{'agentId':_0x16784d['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x16784d['apiKey'],'customApiKeys':_0x16784d['customApiKeys'],'platformProvided':_0x16784d[_0x4d046b(0x15a)]}),_0xa19fd0=this['extractTranslatedCommand'](_0x437640['content']);return this['logger']?.['debug'](_0x4d046b(0x168),{'original':_0x2d36b3,'translated':_0xa19fd0,'model':_0x254ffb,'terminal':this['detectedTerminal']}),_0xa19fd0;}catch(_0x2f6216){this[_0x4d046b(0x198)]?.['error']('AI\x20command\x20translation\x20failed',{'command':_0x2d36b3,'terminal':this['detectedTerminal'],'error':_0x2f6216[_0x4d046b(0x108)]});throw _0x2f6216;}}[a0_0x1793dc(0xcb)](_0x21122f){const _0x3e330b=a0_0x1793dc,_0x55259c={'cmd':_0x3e330b(0x1bc),'powershell':'Windows\x20PowerShell','bash':'Bash\x20shell\x20(Linux/Unix/macOS)'},_0x1f246d=_0x55259c[this['detectedTerminal']]||this[_0x3e330b(0xeb)],_0x5847bc=this[_0x3e330b(0xdf)](_0x21122f);let _0x1f4341='Translate\x20this\x20command\x20to\x20work\x20correctly\x20in\x20'+_0x1f246d+_0x3e330b(0xdb)+_0x21122f+_0x3e330b(0x189)+_0x5847bc['commandType']+_0x3e330b(0x1e4)+_0x5847bc['commandCategory']+_0x3e330b(0x158)+_0x1f246d+_0x3e330b(0xdd)+(_0x5847bc['specificIssues'][_0x3e330b(0x197)](',\x20')||_0x3e330b(0x131));return _0x5847bc['commandType']==='unix'&&_0x5847bc[_0x3e330b(0xf9)]&&_0x5847bc[_0x3e330b(0xf9)][this['detectedTerminal']]&&(_0x1f4341+=_0x3e330b(0x10c)+_0x5847bc[_0x3e330b(0xf9)][this[_0x3e330b(0xeb)]]),_0x1f4341+=_0x3e330b(0x113)+_0x1f246d+'\x0a2.\x20Preserve\x20the\x20original\x20intent\x20and\x20functionality\x0a3.\x20Handle\x20file\x20paths,\x20quoting,\x20and\x20syntax\x20correctly\x0a4.\x20If\x20creating\x20files,\x20ensure\x20proper\x20encoding\x20and\x20line\x20endings\x0a5.\x20Address\x20the\x20specific\x20compatibility\x20issues\x20identified\x20above\x0a6.\x20Return\x20ONLY\x20the\x20translated\x20command,\x20nothing\x20else\x0a\x0aTRANSLATED\x20COMMAND:',_0x1f4341;}[a0_0x1793dc(0x105)](_0x2ec719){const _0x46c9aa=a0_0x1793dc;let _0x5aeb04=_0x2ec719[_0x46c9aa(0x141)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x5aeb04=_0x5aeb04['replace'](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x54f3a6=_0x5aeb04[_0x46c9aa(0x122)]()['split']('\x0a');return _0x54f3a6[_0x46c9aa(0xd7)]>0x1&&!_0x5aeb04['includes']('&&')&&!_0x5aeb04[_0x46c9aa(0x1d8)]('||')&&(_0x5aeb04=_0x54f3a6[0x0]['trim']()),_0x5aeb04['trim']();}['analyzeCommandCompatibility'](_0x9f1c5d){const _0x5ab217=a0_0x1793dc,_0x2c4050=this[_0x5ab217(0x174)](_0x9f1c5d),_0x1792ca=this[_0x5ab217(0xc5)](_0x2c4050,this['detectedTerminal']);return{'compatible':_0x1792ca,'detectedTerminal':this['detectedTerminal'],'commandType':_0x2c4050['type'],'commandCategory':_0x2c4050['category'],'specificIssues':_0x2c4050['issues'],'suggestedAction':_0x1792ca?_0x5ab217(0x157):'translate','confidence':_0x2c4050['confidence']};}[a0_0x1793dc(0x118)](_0x2a43fb){const _0x30290d=a0_0x1793dc;return this[_0x30290d(0xdf)](_0x2a43fb)[_0x30290d(0x1d5)];}['classifyCommand'](_0x244eeb){const _0x246b1a=a0_0x1793dc,_0xd65f91=_0x244eeb[_0x246b1a(0x101)]()[_0x246b1a(0x122)](),_0x45721f=_0xd65f91[_0x246b1a(0x1bd)]('\x20')[0x0],_0x3917ce=[];let _0x48f5a3=0.9;const _0x480a49={'ls':{'category':_0x246b1a(0xf7),'alternatives':{'cmd':_0x246b1a(0x1ca),'powershell':'Get-ChildItem'}},'cat':{'category':_0x246b1a(0x132),'alternatives':{'cmd':'type','powershell':'Get-Content'}},'grep':{'category':_0x246b1a(0x148),'alternatives':{'cmd':'findstr','powershell':'Select-String'}},'find':{'category':'file-search','alternatives':{'cmd':_0x246b1a(0x1ce),'powershell':'Get-ChildItem\x20-Recurse'}},'head':{'category':'file-viewing','alternatives':{'cmd':_0x246b1a(0xc6),'powershell':_0x246b1a(0x1b5)}},'tail':{'category':_0x246b1a(0x132),'alternatives':{'cmd':'more\x20+n','powershell':_0x246b1a(0xe0)}},'wc':{'category':'text-analysis','alternatives':{'cmd':'find\x20/c','powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':'copy','powershell':_0x246b1a(0x199)}},'mv':{'category':'file-move','alternatives':{'cmd':'move','powershell':'Move-Item'}},'rm':{'category':'file-delete','alternatives':{'cmd':'del','powershell':_0x246b1a(0xc8)}},'mkdir':{'category':_0x246b1a(0x19e),'alternatives':{'cmd':'mkdir','powershell':'New-Item\x20-Type\x20Directory'}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':'rmdir','powershell':'Remove-Item'}},'touch':{'category':_0x246b1a(0x1ac),'alternatives':{'cmd':'type\x20nul\x20>','powershell':_0x246b1a(0xc9)}},'chmod':{'category':_0x246b1a(0x155),'alternatives':{'cmd':_0x246b1a(0x138),'powershell':'Set-Acl'}},'chown':{'category':'ownership','alternatives':{'cmd':_0x246b1a(0x114),'powershell':'Set-Acl'}},'ps':{'category':'process-list','alternatives':{'cmd':'tasklist','powershell':_0x246b1a(0x1e7)}},'kill':{'category':'process-kill','alternatives':{'cmd':_0x246b1a(0x1d2),'powershell':'Stop-Process'}},'killall':{'category':'process-kill','alternatives':{'cmd':'taskkill\x20/f\x20/im','powershell':'Get-Process\x20|\x20Stop-Process'}},'top':{'category':'process-monitor','alternatives':{'cmd':_0x246b1a(0xc1),'powershell':'Get-Process\x20|\x20Sort-Object\x20CPU'}},'wget':{'category':_0x246b1a(0x1d7),'alternatives':{'cmd':'curl','powershell':_0x246b1a(0xf4)}},'curl':{'category':_0x246b1a(0x1d4),'alternatives':{'cmd':_0x246b1a(0x1fa),'powershell':'Invoke-RestMethod'}},'ping':{'category':'network-test','alternatives':{'cmd':'ping','powershell':_0x246b1a(0x1be)}},'awk':{'category':_0x246b1a(0x14d),'alternatives':{'cmd':_0x246b1a(0x1c8),'powershell':_0x246b1a(0x1a9)}},'sed':{'category':'text-edit','alternatives':{'cmd':_0x246b1a(0x193),'powershell':_0x246b1a(0x192)}},'sort':{'category':_0x246b1a(0x1d9),'alternatives':{'cmd':_0x246b1a(0xd6),'powershell':'Sort-Object'}},'uniq':{'category':'text-dedupe','alternatives':{'cmd':'sort\x20/unique','powershell':_0x246b1a(0x1c6)}},'pwd':{'category':'directory-current','alternatives':{'cmd':'cd','powershell':_0x246b1a(0x188)}},'whoami':{'category':'user-info','alternatives':{'cmd':'echo\x20%USERNAME%','powershell':'whoami'}},'env':{'category':'environment','alternatives':{'cmd':'set','powershell':'Get-ChildItem\x20Env:'}},'export':{'category':'environment','alternatives':{'cmd':_0x246b1a(0x16b),'powershell':'$env:'}},'source':{'category':_0x246b1a(0xbf),'alternatives':{'cmd':_0x246b1a(0xcd),'powershell':'.\x20'}},'tar':{'category':'archive','alternatives':{'cmd':'7z','powershell':_0x246b1a(0xf0)}},'zip':{'category':_0x246b1a(0x104),'alternatives':{'cmd':'powershell\x20Compress-Archive','powershell':_0x246b1a(0xf0)}},'unzip':{'category':_0x246b1a(0x104),'alternatives':{'cmd':_0x246b1a(0x12f),'powershell':_0x246b1a(0x1d3)}},'df':{'category':_0x246b1a(0x1f9),'alternatives':{'cmd':'fsutil\x20volume\x20diskfree','powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':'disk-usage','alternatives':{'cmd':_0x246b1a(0x1ce),'powershell':'Get-ChildItem\x20-Recurse\x20|\x20Measure-Object'}},'free':{'category':_0x246b1a(0x150),'alternatives':{'cmd':_0x246b1a(0xe7),'powershell':_0x246b1a(0x19b)}},'uname':{'category':'system-info','alternatives':{'cmd':_0x246b1a(0xe7),'powershell':_0x246b1a(0x142)}}},_0x37edf0={'dir':{'category':_0x246b1a(0xf7),'alternatives':{'unix':'ls','powershell':'Get-ChildItem'}},'type':{'category':_0x246b1a(0x132),'alternatives':{'unix':_0x246b1a(0xd0),'powershell':'Get-Content'}},'copy':{'category':'file-copy','alternatives':{'unix':'cp','powershell':_0x246b1a(0x199)}},'move':{'category':'file-move','alternatives':{'unix':'mv','powershell':'Move-Item'}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':'Remove-Item'}},'tasklist':{'category':'process-list','alternatives':{'unix':'ps','powershell':_0x246b1a(0x1e7)}},'taskkill':{'category':_0x246b1a(0xea),'alternatives':{'unix':_0x246b1a(0xee),'powershell':_0x246b1a(0x190)}},'findstr':{'category':_0x246b1a(0x148),'alternatives':{'unix':'grep','powershell':'Select-String'}}},_0x43b9d0={'get-childitem':{'category':'file-listing','alternatives':{'unix':'ls','cmd':_0x246b1a(0x1ca)}},'get-content':{'category':_0x246b1a(0x132),'alternatives':{'unix':_0x246b1a(0xd0),'cmd':'type'}},'copy-item':{'category':_0x246b1a(0xc3),'alternatives':{'unix':'cp','cmd':_0x246b1a(0xd9)}},'move-item':{'category':_0x246b1a(0x1b2),'alternatives':{'unix':'mv','cmd':'move'}},'remove-item':{'category':'file-delete','alternatives':{'unix':'rm','cmd':_0x246b1a(0x1c5)}},'get-process':{'category':'process-list','alternatives':{'unix':'ps','cmd':'tasklist'}},'stop-process':{'category':_0x246b1a(0xea),'alternatives':{'unix':'kill','cmd':_0x246b1a(0x1d2)}}};let _0x5109a1=_0x246b1a(0x1da),_0x4cdfb5='unknown',_0x4c3fb4={};if(_0x480a49[_0x45721f])_0x5109a1='unix',_0x4cdfb5=_0x480a49[_0x45721f][_0x246b1a(0x13c)],_0x4c3fb4=_0x480a49[_0x45721f]['alternatives'];else{if(_0x37edf0[_0x45721f])_0x5109a1='windows-cmd',_0x4cdfb5=_0x37edf0[_0x45721f][_0x246b1a(0x13c)],_0x4c3fb4=_0x37edf0[_0x45721f]['alternatives'];else{if(_0x43b9d0[_0x45721f])_0x5109a1='powershell',_0x4cdfb5=_0x43b9d0[_0x45721f]['category'],_0x4c3fb4=_0x43b9d0[_0x45721f]['alternatives'];else{const _0x76abfb=[_0x246b1a(0x17c),'cd',_0x246b1a(0x1c3),_0x246b1a(0x17b)];_0x76abfb['includes'](_0x45721f)?(_0x5109a1='universal',_0x4cdfb5=_0x246b1a(0x180)):(_0x5109a1='unknown',_0x48f5a3=0.3);}}}return _0x244eeb[_0x246b1a(0x1d8)]('\x27')&&!_0x244eeb[_0x246b1a(0x1d8)]('\x22')&&_0x3917ce[_0x246b1a(0x111)]('single-quotes-problematic'),_0x244eeb['includes']('/')&&!_0x244eeb['includes']('\x5c')&&!_0x244eeb['includes']('http')&&_0x244eeb[_0x246b1a(0x1d8)]('>')&&_0x3917ce['push']('unix-style-paths'),(_0x244eeb['includes']('\x5cn')||_0x244eeb[_0x246b1a(0x1d8)]('\x5ct'))&&_0x3917ce[_0x246b1a(0x111)](_0x246b1a(0x187)),(_0x244eeb['includes']('\x20&&\x20')||_0x244eeb[_0x246b1a(0x1d8)](_0x246b1a(0xd2))||_0x244eeb[_0x246b1a(0x1d8)](';'))&&_0x3917ce[_0x246b1a(0x111)]('command-chaining'),{'type':_0x5109a1,'category':_0x4cdfb5,'alternatives':_0x4c3fb4,'issues':_0x3917ce,'confidence':_0x48f5a3,'firstWord':_0x45721f,'fullCommand':_0x244eeb};}['isCommandCompatibleWithTerminal'](_0x2ffdc6,_0x50bc2a){const _0x21c136=a0_0x1793dc;switch(_0x50bc2a){case _0x21c136(0x18c):if(_0x2ffdc6[_0x21c136(0x112)]===_0x21c136(0x1c0))return![];if(_0x2ffdc6['issues'][_0x21c136(0x1d8)]('single-quotes-problematic'))return![];if(_0x2ffdc6['issues']['includes'](_0x21c136(0xc0)))return![];return _0x2ffdc6['type']==='windows-cmd'||_0x2ffdc6['type']===_0x21c136(0x149);case'powershell':if(_0x2ffdc6[_0x21c136(0x112)]===_0x21c136(0x1c0)&&!_0x2ffdc6['alternatives'][_0x21c136(0x12b)])return![];return!![];case _0x21c136(0x171):if(_0x2ffdc6[_0x21c136(0x112)]==='windows-cmd')return![];return _0x2ffdc6[_0x21c136(0x112)]==='unix'||_0x2ffdc6[_0x21c136(0x112)]===_0x21c136(0x149);default:return![];}}[a0_0x1793dc(0x10a)](_0xbc5566){const _0x14e8e3=a0_0x1793dc;let _0x17c9cf=_0xbc5566;const _0x6e6a30=new Map([[/^ls\s*$/,_0x14e8e3(0x1ca)],[/^ls\s+-la?$/,_0x14e8e3(0x1ca)],[/^ls\s+-l$/,_0x14e8e3(0x1ca)],[/^ls\s+-a$/,_0x14e8e3(0x16e)],[/^cat\s+(.+)$/,'type\x20$1'],[/^cp\s+(.+)\s+(.+)$/,'copy\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0x14e8e3(0x1cb)],[/^rm\s+(.+)$/,_0x14e8e3(0x1cc)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,_0x14e8e3(0x167)],[/^ps\s*$/,'tasklist'],[/^kill\s+(.+)$/,_0x14e8e3(0xef)],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,_0x14e8e3(0x18a)],[/^ping\s+(.+)$/,'ping\x20$1'],[/^wget\s+(.+)$/,'curl\x20-O\x20$1'],[/^curl\s+(.+)$/,_0x14e8e3(0xca)]]);for(const [_0xd48a6,_0x286e62]of _0x6e6a30){if(_0xd48a6['test'](_0x17c9cf)){_0x17c9cf=_0x17c9cf[_0x14e8e3(0x141)](_0xd48a6,_0x286e62);break;}}_0x17c9cf=_0x17c9cf[_0x14e8e3(0x141)](/echo\s+'([^']+)'\s*>/g,'echo\x20\x22$1\x22\x20>'),_0x17c9cf=_0x17c9cf['replace'](/echo\s+'([^']+)'$/g,'echo\x20\x22$1\x22');if(_0x17c9cf['includes'](_0x14e8e3(0x14f))&&_0x17c9cf[_0x14e8e3(0x1d8)]('\x5cn')){const _0x29f1cf=_0x17c9cf[_0x14e8e3(0x170)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x29f1cf){const _0x53b653=_0x29f1cf[0x1][_0x14e8e3(0x141)](/\\n/g,'\x0a'),_0x13a70c=_0x29f1cf[0x2],_0x5568d8=_0x53b653[_0x14e8e3(0x1bd)]('\x0a');_0x17c9cf='('+_0x5568d8['map'](_0xeb82a5=>'echo\x20'+_0xeb82a5)['join'](_0x14e8e3(0x16d))+')\x20>\x20'+_0x13a70c;}}return this[_0x14e8e3(0x198)]?.[_0x14e8e3(0x19a)](_0x14e8e3(0x1f2),{'original':_0xbc5566,'translated':_0x17c9cf}),_0x17c9cf;}['translateToPowerShell'](_0x342ba0){const _0x36f398=a0_0x1793dc;let _0x170e3c=_0x342ba0;const _0x161a89=new Map([[/^ls\s*$/,'Get-ChildItem'],[/^ls\s+-la?$/,_0x36f398(0x1b0)],[/^cat\s+(.+)$/,'Get-Content\x20$1'],[/^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*$/,'Get-Location'],[/^ps\s*$/,'Get-Process']]);for(const [_0x390185,_0x4d3f59]of _0x161a89){if(_0x390185['test'](_0x170e3c)){_0x170e3c=_0x170e3c[_0x36f398(0x141)](_0x390185,_0x4d3f59);break;}}return this[_0x36f398(0x198)]?.[_0x36f398(0x19a)](_0x36f398(0x12e),{'original':_0x342ba0,'translated':_0x170e3c}),_0x170e3c;}[a0_0x1793dc(0x153)](_0x27ca79){const _0x2bd965=a0_0x1793dc;let _0x5175ed=_0x27ca79;const _0x169201=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0x2bd965(0x1af)],[/^type\s+(.+)$/,_0x2bd965(0x145)],[/^copy\s+(.+)\s+(.+)$/,'cp\x20$1\x20$2'],[/^move\s+(.+)\s+(.+)$/,'mv\x20$1\x20$2'],[/^del\s+(.+)$/,_0x2bd965(0x13b)],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,'pwd']]);for(const [_0x422569,_0x59d963]of _0x169201){if(_0x422569['test'](_0x5175ed)){_0x5175ed=_0x5175ed[_0x2bd965(0x141)](_0x422569,_0x59d963);break;}}return _0x5175ed;}async[a0_0x1793dc(0x14e)](_0x4ed9f7){}async[a0_0x1793dc(0x110)](_0x5d77ec,_0x30cd44,_0x368171={}){const _0x203b54=a0_0x1793dc,{agentId:_0xd70c90,context:_0x702f39}=_0x368171;if(!_0xd70c90)throw new Error('agentId\x20is\x20required\x20for\x20background\x20commands');const _0x151526=this[_0x203b54(0x115)](_0xd70c90),_0x2c1aee=_0x151526[_0x203b54(0xce)](_0x2f06e1=>_0x2f06e1['state']==='running'||_0x2f06e1[_0x203b54(0x1a4)]==='waiting_for_input');if(_0x2c1aee['length']>=this['MAX_BACKGROUND_COMMANDS_PER_AGENT'])throw new Error(_0x203b54(0x1c7)+this[_0x203b54(0x1ab)]+')');const _0x21bcad=Array['from'](this['commandTracker']['values']()),_0x18bbb6=_0x21bcad['filter'](_0xf1733f=>_0xf1733f[_0x203b54(0x1a4)]==='running'||_0xf1733f[_0x203b54(0x1a4)]===_0x203b54(0xde));if(_0x18bbb6[_0x203b54(0xd7)]>=this['MAX_BACKGROUND_COMMANDS_GLOBAL'])throw new Error('Maximum\x20global\x20background\x20commands\x20exceeded\x20('+this[_0x203b54(0x128)]+')');const _0x1375af=_0xd70c90+_0x203b54(0x121)+Date['now']()+'-'+ ++this[_0x203b54(0xcc)],_0x3ae91c=_0x5d77ec;let _0x15af8d;try{_0x15af8d=await this[_0x203b54(0x1e3)](_0x5d77ec,{'agentId':_0xd70c90,'toolsRegistry':_0x702f39?.['toolsRegistry'],'messageProcessor':_0x702f39?.['messageProcessor'],'aiService':_0x702f39?.[_0x203b54(0x183)],'apiKey':_0x702f39?.['apiKey'],'customApiKeys':_0x702f39?.['customApiKeys'],'platformProvided':_0x702f39?.['platformProvided']});}catch(_0x5bd3ba){this[_0x203b54(0x198)]?.[_0x203b54(0x19f)]('Command\x20translation\x20failed,\x20using\x20original\x20command',{'originalCommand':_0x3ae91c,'error':_0x5bd3ba['message']}),_0x15af8d=_0x5d77ec;}this['logger']?.[_0x203b54(0x19a)](_0x203b54(0x103)+_0x15af8d,{'commandId':_0x1375af,'agentId':_0xd70c90,'originalCommand':_0x3ae91c,'workingDirectory':_0x30cd44});let _0x2c7af0;if(this['detectedTerminal']===_0x203b54(0x18c)||this[_0x203b54(0xeb)]==='powershell'){const _0x25012=this[_0x203b54(0xeb)]===_0x203b54(0x12b)?'powershell':'cmd',_0x3b43c7=this[_0x203b54(0xeb)]===_0x203b54(0x12b)?[_0x203b54(0x119),_0x15af8d]:['/c',_0x15af8d];_0x2c7af0=spawn(_0x25012,_0x3b43c7,{'cwd':_0x30cd44,'env':{...process['env']},'windowsHide':!![],'stdio':['pipe','pipe','pipe']});}else _0x2c7af0=spawn('sh',['-c',_0x15af8d],{'cwd':_0x30cd44,'env':{...process[_0x203b54(0x1e0)]},'stdio':['pipe','pipe',_0x203b54(0xfb)]});const _0x57fe1d={'commandId':_0x1375af,'agentId':_0xd70c90,'pid':_0x2c7af0['pid'],'command':_0x3ae91c,'translatedCommand':_0x15af8d,'workingDirectory':_0x30cd44,'startTime':new Date()[_0x203b54(0x106)](),'state':_0x203b54(0x134),'exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date['now'](),'promptDetected':null,'process':_0x2c7af0};return this['commandTracker'][_0x203b54(0x16b)](_0x1375af,_0x57fe1d),_0x2c7af0[_0x203b54(0x1ed)]['on'](_0x203b54(0x120),_0x4982e1=>{const _0x1676a7=_0x203b54,_0x56cb27=_0x4982e1['toString']();_0x57fe1d['stdoutBuffer']+=_0x56cb27,_0x57fe1d[_0x1676a7(0x124)]=Date[_0x1676a7(0x116)]();if(!_0x57fe1d[_0x1676a7(0x1a1)]){const _0x1334db=this['promptDetector'][_0x1676a7(0x1a6)](_0x57fe1d[_0x1676a7(0x1f7)],_0x1676a7(0x1ed));_0x1334db&&(_0x57fe1d[_0x1676a7(0x1a1)]=_0x1334db,_0x57fe1d[_0x1676a7(0x1a4)]=_0x1676a7(0xde),this['logger']?.[_0x1676a7(0x19a)]('Prompt\x20detected\x20in\x20background\x20command',{'commandId':_0x1375af,'agentId':_0xd70c90,'type':_0x1334db['type'],'matchedText':_0x1334db[_0x1676a7(0x1ad)]}));}}),_0x2c7af0['stderr']['on'](_0x203b54(0x120),_0x18c437=>{const _0x2b1d0f=_0x203b54,_0x2a8320=_0x18c437['toString']();_0x57fe1d['stderrBuffer']+=_0x2a8320,_0x57fe1d['lastOutputTime']=Date[_0x2b1d0f(0x116)]();if(!_0x57fe1d[_0x2b1d0f(0x1a1)]){const _0x3508df=this[_0x2b1d0f(0x154)]['detectPrompt'](_0x57fe1d[_0x2b1d0f(0x1ec)],'stderr');_0x3508df&&(_0x57fe1d['promptDetected']=_0x3508df,_0x57fe1d['state']=_0x2b1d0f(0xde),this[_0x2b1d0f(0x198)]?.['info']('Prompt\x20detected\x20in\x20background\x20command\x20stderr',{'commandId':_0x1375af,'agentId':_0xd70c90,'type':_0x3508df[_0x2b1d0f(0x112)],'matchedText':_0x3508df['matchedText']}));}}),_0x2c7af0['on'](_0x203b54(0x1c3),(_0x328927,_0x2f4bf4)=>{const _0x32ef42=_0x203b54;_0x57fe1d[_0x32ef42(0x1bf)]=_0x328927,_0x57fe1d['state']=_0x328927===0x0?_0x32ef42(0x17f):'failed',_0x57fe1d[_0x32ef42(0x129)]=new Date()[_0x32ef42(0x106)](),this[_0x32ef42(0x198)]?.[_0x32ef42(0x19a)]('Background\x20command\x20exited',{'commandId':_0x1375af,'agentId':_0xd70c90,'exitCode':_0x328927,'signal':_0x2f4bf4,'state':_0x57fe1d[_0x32ef42(0x1a4)]});}),_0x2c7af0['on'](_0x203b54(0xd8),_0x85f495=>{const _0xc60a2a=_0x203b54;_0x57fe1d['state']='failed',_0x57fe1d[_0xc60a2a(0xd8)]=_0x85f495[_0xc60a2a(0x108)],_0x57fe1d[_0xc60a2a(0x129)]=new Date()['toISOString'](),this['logger']?.[_0xc60a2a(0xd8)]('Background\x20command\x20error',{'commandId':_0x1375af,'agentId':_0xd70c90,'error':_0x85f495[_0xc60a2a(0x108)]});}),{'success':!![],'commandId':_0x1375af,'pid':_0x2c7af0[_0x203b54(0x1cf)],'command':_0x3ae91c,'translatedCommand':_0x15af8d,'workingDirectory':_0x30cd44,'message':'Background\x20command\x20started\x20with\x20ID:\x20'+_0x1375af};}['sendInput'](_0x2fe90e,_0x1191c4,_0x377f76){const _0x5a06c2=a0_0x1793dc,_0xbbd3f6=this[_0x5a06c2(0x18b)](_0x2fe90e,_0x377f76);if(_0xbbd3f6[_0x5a06c2(0x1a4)]===_0x5a06c2(0x17f)||_0xbbd3f6['state']==='failed')throw new Error('Cannot\x20send\x20input\x20to\x20'+_0xbbd3f6[_0x5a06c2(0x1a4)]+_0x5a06c2(0x1db));if(!_0xbbd3f6[_0x5a06c2(0x18d)]||_0xbbd3f6[_0x5a06c2(0x18d)][_0x5a06c2(0xf1)])throw new Error(_0x5a06c2(0x109));const _0x44405b=_0x1191c4[_0x5a06c2(0x13a)]('\x0a')?_0x1191c4:_0x1191c4+'\x0a';return _0xbbd3f6['process']['stdin']['write'](_0x44405b),this['logger']?.['info']('Input\x20sent\x20to\x20background\x20command',{'commandId':_0x2fe90e,'agentId':_0x377f76,'inputLength':_0x1191c4[_0x5a06c2(0xd7)]}),_0xbbd3f6['state']==='waiting_for_input'&&(_0xbbd3f6['state']=_0x5a06c2(0x134),_0xbbd3f6[_0x5a06c2(0x1a1)]=null),{'success':!![],'commandId':_0x2fe90e,'message':'Input\x20sent\x20successfully'};}[a0_0x1793dc(0x16c)](_0x2c9ea9,_0x1ec6d2){const _0xd996c0=a0_0x1793dc,_0x1a5be1=this[_0xd996c0(0x18b)](_0x2c9ea9,_0x1ec6d2),_0xf8dec9=Date[_0xd996c0(0x116)]()-_0x1a5be1[_0xd996c0(0x124)];return{'success':!![],'commandId':_0x2c9ea9,'pid':_0x1a5be1[_0xd996c0(0x1cf)],'command':_0x1a5be1['command'],'state':_0x1a5be1['state'],'exitCode':_0x1a5be1[_0xd996c0(0x1bf)],'startTime':_0x1a5be1[_0xd996c0(0x1ef)],'endTime':_0x1a5be1['endTime'],'workingDirectory':_0x1a5be1[_0xd996c0(0x1b9)],'stdout':_0x1a5be1['stdoutBuffer'],'stderr':_0x1a5be1['stderrBuffer'],'stdoutLength':_0x1a5be1[_0xd996c0(0x1f7)][_0xd996c0(0xd7)],'stderrLength':_0x1a5be1['stderrBuffer'][_0xd996c0(0xd7)],'lastOutputTime':_0x1a5be1['lastOutputTime'],'timeSinceLastOutput':_0xf8dec9,'promptDetected':!!_0x1a5be1[_0xd996c0(0x1a1)],'promptInfo':_0x1a5be1[_0xd996c0(0x1a1)]||undefined};}['killCommand'](_0x112a67,_0x20bf70){const _0x58f283=a0_0x1793dc,_0x34d045=this['validateCommandOwnership'](_0x112a67,_0x20bf70);if(_0x34d045[_0x58f283(0x1a4)]==='completed'||_0x34d045['state']==='failed')return{'success':!![],'commandId':_0x112a67,'message':'Command\x20already\x20terminated','state':_0x34d045[_0x58f283(0x1a4)]};if(_0x34d045[_0x58f283(0x18d)]&&!_0x34d045[_0x58f283(0x18d)]['killed'])return _0x34d045['process']['kill']('SIGTERM'),setTimeout(()=>{const _0x4c6b1f=_0x58f283;_0x34d045[_0x4c6b1f(0x18d)]&&!_0x34d045['process'][_0x4c6b1f(0xf1)]&&_0x34d045['process']['kill']('SIGKILL');},0x1388),this['logger']?.[_0x58f283(0x19a)]('Background\x20command\x20killed',{'commandId':_0x112a67,'agentId':_0x20bf70}),{'success':!![],'commandId':_0x112a67,'message':'Command\x20killed\x20successfully'};return{'success':![],'commandId':_0x112a67,'error':'Command\x20process\x20not\x20found\x20or\x20already\x20killed'};}[a0_0x1793dc(0xd5)](_0x1b033c){const _0xcc5f3b=a0_0x1793dc,_0x3b04df=this[_0xcc5f3b(0x115)](_0x1b033c);return _0x3b04df[_0xcc5f3b(0x165)](_0x39a2d2=>({'commandId':_0x39a2d2['commandId'],'command':_0x39a2d2[_0xcc5f3b(0x13f)],'state':_0x39a2d2[_0xcc5f3b(0x1a4)],'pid':_0x39a2d2['pid'],'exitCode':_0x39a2d2['exitCode'],'startTime':_0x39a2d2['startTime'],'endTime':_0x39a2d2['endTime'],'promptDetected':!!_0x39a2d2['promptDetected'],'timeSinceLastOutput':Date['now']()-_0x39a2d2[_0xcc5f3b(0x124)]}));}[a0_0x1793dc(0x115)](_0x4a9894){const _0x40c264=a0_0x1793dc;return Array['from'](this['commandTracker'][_0x40c264(0x11d)]())[_0x40c264(0xce)](_0x1e6023=>_0x1e6023[_0x40c264(0x181)]===_0x4a9894);}['validateCommandOwnership'](_0xe705f0,_0x3a6885){const _0xf32bf3=a0_0x1793dc,_0x3c0891=this[_0xf32bf3(0x1a0)]['get'](_0xe705f0);if(!_0x3c0891)throw new Error(_0xf32bf3(0x10f)+_0xe705f0);if(_0x3c0891[_0xf32bf3(0x181)]!==_0x3a6885)throw new Error(_0xf32bf3(0x126)+_0x3c0891['agentId']);return _0x3c0891;}async['cleanupAgent'](_0xd4443){const _0x80eb24=a0_0x1793dc,_0x42ac63=this['getAgentCommands'](_0xd4443);let _0x10a34f=0x0,_0x5e9b5c=0x0;for(const _0x11f801 of _0x42ac63){_0x11f801[_0x80eb24(0x18d)]&&!_0x11f801[_0x80eb24(0x18d)]['killed']&&(_0x11f801['process']['kill'](_0x80eb24(0x139)),_0x10a34f++,setTimeout(()=>{const _0x3ea702=_0x80eb24;_0x11f801[_0x3ea702(0x18d)]&&!_0x11f801['process'][_0x3ea702(0xf1)]&&_0x11f801[_0x3ea702(0x18d)][_0x3ea702(0xee)](_0x3ea702(0x147));},0xbb8)),this[_0x80eb24(0x1a0)][_0x80eb24(0xd4)](_0x11f801[_0x80eb24(0xcf)]),_0x5e9b5c++;}return this['logger']?.[_0x80eb24(0x19a)]('Agent\x20commands\x20cleaned\x20up',{'agentId':_0xd4443,'killedCount':_0x10a34f,'removedCount':_0x5e9b5c}),{'success':!![],'agentId':_0xd4443,'killedCount':_0x10a34f,'removedCount':_0x5e9b5c,'message':'Cleaned\x20up\x20'+_0x5e9b5c+'\x20commands\x20for\x20agent\x20'+_0xd4443};}[a0_0x1793dc(0x1f4)](){const _0x3a527c=a0_0x1793dc,_0x2eb2c3=Date[_0x3a527c(0x116)]();let _0x35d63c=0x0;for(const [_0x551d40,_0x94e58d]of this[_0x3a527c(0x1a0)][_0x3a527c(0x1b8)]()){if(_0x94e58d[_0x3a527c(0x1a4)]!=='completed'&&_0x94e58d[_0x3a527c(0x1a4)]!==_0x3a527c(0xc7))continue;const _0x37499b=new Date(_0x94e58d['startTime'])[_0x3a527c(0x17a)](),_0x3f3e80=(_0x2eb2c3-_0x37499b)/0x3e8/0x3c;_0x3f3e80>this['MAX_COMMAND_AGE_MINUTES']&&(this[_0x3a527c(0x1a0)][_0x3a527c(0xd4)](_0x551d40),_0x35d63c++);}return _0x35d63c>0x0&&this[_0x3a527c(0x198)]?.[_0x3a527c(0x19a)]('Stale\x20commands\x20cleaned\x20up',{'removedCount':_0x35d63c,'ageThresholdMinutes':this[_0x3a527c(0xfe)]}),{'success':!![],'removedCount':_0x35d63c,'message':_0x3a527c(0x194)+_0x35d63c+'\x20stale\x20commands'};}}export default TerminalTool;function a0_0x4c75(){const _0x41d306=['rMfPBgvKihrVigXPC3qGzgLYzwn0B3j5ia','zxHLy3v0zq','cI0GvgfYz2v0ifrLCM1PBMfSoIa','uhjVBxb0igrLDgvJDgvKigLUihn0zg91Da','CgXHDgzVCM1qCM92AwrLza','lI4U','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','AxnbyNnVBhv0zq','Bwf4q29TBwfUzefNzu1PBNv0zxm','A2v5CW','zxHLy3v0zunVBw1HBMq','q29TBwfUzcbMywLSzwqGD2L0AcbLEgL0ignVzguG','vxnLCM5HBwuGChjVBxb0','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','BwfW','C29Tzq','CM1KAxiGjde','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbJB21WBgv0zwq','zgvMia','CMvIB290','C2v0','z2v0q29TBwfUzfn0yxr1CW','icyG','zgLYic9H','DgLTzw91Da','Bwf0y2G','yMfZAa','r2vUzxjPyYbPBNb1DcbWCM9TChqGzgv0zwn0zwq','AxntEw1IB2XPy0XPBMS','y2XHC3nPzNLdB21Tyw5K','DxnLCM5HBwu','z2vUzxjPyW','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','q29TBwfUzcbMywLSzwq6ia','qwnJzxnZigrLBMLLzdOG','z2v0vgLTzq','AgvSCa','zwnOBW','DgvZDa','oIbKAxjLy3rVCNKGAxmGCMvXDwLYzwqGzM9Yia','y29TCgXLDgvK','yNvPBhrPBG','ywDLBNrjza','C2XPy2u','ywLtzxj2AwnL','rgLYzwn0B3j5ignOyw5NzsbIBg9JA2vKoIa','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','Aw5WDxq','zxnJyxbLlxnLCxvLBMnLCW','r2v0luXVy2f0Aw9U','cMbGyaOkq09ntuforcbbtKfmwvnjuZOklsbdB21Tyw5Kifr5Cgu6ia','zwnOBYaLvvnfuK5btuuL','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','y21K','ChjVy2vZCW','nJGXnZG1r2vyEu9w','wwvZl05Vihf1zxn0Aw9U','u3rVCc1qCM9JzxnZ','C3rHCNrZv2L0Aa','BMf0AxzL','Cg93zxjZAgvSBcaTyW','q2XLyw5Lzcb1Cca','yxbPs2v5','q3jLyxrLzcbKAxjLy3rVCNK6ia','AM9PBG','Bg9Nz2vY','q29WEs1jDgvT','Aw5MBW','r2v0lvDTAu9IAMvJDcaTq2XHC3mGv2LUmZjFugH5C2LJywXnzw1VCNK','rMfPBgvKihrVignOyw5NzsbKAxjLy3rVCNKGDg8G','mty3oda0ofnnq29Lzq','zgLYzwn0B3j5lwnYzwf0zq','D2fYBG','y29TBwfUzfrYywnRzxi','ChjVBxb0rgv0zwn0zwq','ig1PBgXPC2vJB25KCW','mta4ndjiCvzrsva','C3rHDgu','zM9YBwf0','zgv0zwn0uhjVBxb0','y29Kzq','y3vZDg9TqxbPs2v5CW','rM9YrwfJAc1pyMPLy3q','zgfYD2LU','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','zMLSzs1JCMvHDgu','Bwf0y2HLzfrLEhq','yxn5BMm','BhmGlwe','r2v0lunOAwXKsxrLBsaTrM9Yy2u','y3DK','zMLSzs1TB3zL','Dg9tDhjPBMC','A2v5ChjLC3m','r2v0lunVBNrLBNqGluHLywq','C3rKzxjY','ywXSB3DLzenVBw1HBMrZ','zw50CMLLCW','D29YA2LUz0rPCMvJDg9YEq','Bxm6ia','Bwf4qMfJA2DYB3vUzenVBw1HBMrZugvYqwDLBNq','v2LUzg93CYbdB21Tyw5KifbYB21WDcaOy21KlMv4zsK','C3bSAxq','vgvZDc1ozxrdB25Uzwn0Aw9U','zxHPDenVzgu','Dw5PEa','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','u0HfteW','zxHPDa','q29UzMLYBwf0Aw9UihbYB21WDa','zgvS','u29YDc1pyMPLy3qGlvvUAxf1zq','twf4Aw11BsbIywnRz3jVDw5KignVBw1HBMrZihbLCIbHz2vUDcbLEgnLzwrLzcaO','zM9Yic9M','ywn0Aw9UCW','zgLY','Bw92zsaKmsaKmG','zgvSicqX','AgfSDa','zgLYic9Z','CgLK','vgLTzw91DcbTDxn0igjLigjLDhDLzw4GmtaWmcbHBMqG','qwXSia','DgfZA2TPBgW','rxHWyw5KlufYy2HPDMu','Ahr0Cc1JBgLLBNq','y29TCgf0AwjSzq','ig9Mia','zg93BMXVywq','Aw5JBhvKzxm','Dgv4Dc1ZB3j0','Dw5RBM93BG','ignVBw1HBMq','z2v0v29YA2LUz0rPCMvJDg9YEq','Aw5KzxG','C3vIC3rYAw5N','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','zw52','C2H1DgrVD24','CgXHDgzVCM1uExbL','DhjHBNnSyxrLq29TBwfUza','cI0Gq2f0zwDVCNK6ia','C3bLy2LMAwnjC3n1zxm','C3rYAw5N','r2v0lvbYB2nLC3m','y29TBwfUzeHPC3rVCNK','oIbJB21Tyw5KigLZihjLCxvPCMvKigzVCIbYDw4Ty29TBwfUza','q29TBwfUzcbWCM9JzxnZigv4AxrLzdOG','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNKG','C3rKzxjYqNvMzMvY','C3rKB3v0','q29TBwfUzcbVDxrWDxqGy2H1BMS6ia','C3rHCNruAw1L','rxHLy3v0Aw5NignVBw1HBMq6ia','zxH0CMfJDenVBNrLBNq','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbxAw5KB3DZiennra','Dg9VBhnszwDPC3rYEq','y2XLyw51Cfn0ywXLq29TBwfUzhm','D29YA2LUz0rPCMvJDg9YAwvZ','r2vUzxjPyYbPBNb1DcbWCM9TChq','C3rKB3v0qNvMzMvY','C3vJy2vZCW','zgLZAY1PBMzV','y3vYBa','C2nYAxb0lwv4zwn1Dgu','Dw5PEc1ZDhLSzs1WyxrOCW','DgfZA2XPC3q','mZq1nJaWtg94t0PS','zMLSzs1JB3b5','ChjVBxb0ugf0DgvYBNm','AxndB21Tyw5Kq29TCgf0AwjSzvDPDgHuzxjTAw5HBa','Bw9Yzq','zMfPBgvK','uMvTB3zLluL0zw0','tMv3luL0zw0Glvr5CguGrMLSzq','y3vYBcaKmq','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','y29TBwfUzeLKq291BNrLCG','y2fSBa','zMLSDgvY','y29TBwfUzeLK','y2f0','BgLZDerPCMvJDg9YEq','ihX8ia','C2LTCgXL','zgvSzxrL','BgLZDefNzw50q29TBwfUzhm','C29YDa','BgvUz3rO','zxjYB3i','y29WEq','uhjVy2vLzcbWCM9TChq','oGOkt1jjr0LoquWGq09ntufordOkygbGcG','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','cI0Gq29TCgf0AwjPBgL0EsbjC3n1zxm6ia','D2fPDgLUz19MB3jFAw5WDxq','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','r2v0lunVBNrLBNqGlvrHAwW','y2HHBMDLlwrPCMvJDg9YEq','ugfZC3DVCMqGChjVBxb0','CMvHC29U','zgvSic9Mic9X','ihWG','C291CMnLia','C3LZDgvTAw5MBW','y29UzMLYBwf0Aw9U','Bg9N','ChjVy2vZCY1RAwXS','zgv0zwn0zwruzxjTAw5HBa','BgLZDc1KAxjLy3rVCNK','zMLSzq','A2LSBa','DgfZA2TPBgWGl1bjrcaKmq','q29TChjLC3mTqxjJAgL2zq','A2LSBgvK','q29TBwfUzcb0Aw1LzcbVDxqSigTPBgXPBMCGChjVy2vZCZOG','AxncBg9JA2vKq29TBwfUza','sw52B2TLlvDLyLjLCxvLC3q','oIbJB21Tyw5KigLZigjSB2nRzwqGzM9YihnLy3vYAxr5oIa','q29TBwfUzcbZCgf3BIbLCNjVCJOG','zMLSzs1SAxn0Aw5N','mtq1mZC2mK56CurwBG','ywX0zxjUyxrPDMvZ','q29TBwfUzcbJB21WyxrPyMLSAxr5igfUywX5C2LZ','CgLWzq','m3PbuvvzqW','zgvZy3jPChrPB24','tufyx0nptu1btKrFquDfx01jtLvurvm','icyMia','D2HPBguG','Dg9mB3DLCKnHC2u','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','yxjJAgL2zq','zxH0CMfJDfrYyw5ZBgf0zwrdB21Tyw5K','Dg9ju09tDhjPBMC','CNvUlwnVBw1HBMq','BwvZC2fNzq','q29TBwfUzcbWCM9JzxnZigLZig5VDcbYDw5UAw5N','DhjHBNnSyxrLvg9xAw5KB3DZq21K','z2v0u3vWCg9YDgvKqwn0Aw9UCW','cI0Gu3vNz2vZDgvKiefSDgvYBMf0AxzLoIa','ndG1nZm2sgDNvffT','mtyYnJa4nJDTEezrCMG','q29TBwfUzcbUB3qGzM91BMq6ia','C3rHCNrcywnRz3jVDw5Kq29TBwfUza','ChvZAa','DhLWzq','cGPsrvfvsvjftuvovfm6cJeUie1HA2uGDgHLignVBw1HBMqGD29YAYbJB3jYzwn0BhKGAw4G','DgfRzw93BG','z2v0qwDLBNrdB21Tyw5KCW','BM93','C3rHy2S','AxndB21Tyw5Kq29TCgf0AwjSzq','lunVBw1HBMq','u2vSzwn0Aw9UihbYB21WDa','BMfTzq','q29TBwfUzcbLCNjVCIbJAhvUAZOG','DMfSDwvZ','EwvZlw5V','AxneAxjLy3rVCNK','zgf0yq','lwnTzc0','DhjPBq','AxnbC3LUyW','BgfZDe91Dhb1DfrPBwu','zgLYzwn0B3j5','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','CgfZC3DVCMq','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','zw5KvgLTzq','qwn0Aw9Uia','Cg93zxjZAgvSBa','q29TBwfUzcbLEgL0zwqGD2L0AcbJB2rLia','qxr0zw1WDgLUzYbbssb0CMfUC2XHDgLVBIbMB3iGy29TCgXLEcbJB21Tyw5K','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','Cg93zxjZAgvSBcbfEhbHBMqTqxjJAgL2zq','y3jLyxrLlwrPCMvJDg9YEq','tM9UzsbKzxrLy3rLza','zMLSzs12Awv3Aw5N','BwvZC2fNzvbYB2nLC3nVCG','CNvUBMLUzW','ugfZC3bOCMfZzsbWCM9TChq','Dhj1zq','C3vNz2vZDgvKqwn0Aw9U','AwnHy2XZ','u0Lhvevstq','zw5KC1DPDgG','CM0Gjde','y2f0zwDVCNK','q2HHBMDLzcbKAxjLy3rVCNKGDg8G','CMf3q29UDgvUDa','y29TBwfUza','mtuXou5Sre5HDa','CMvWBgfJzq','r2v0lunVBxb1DgvYsw5MBW','BwfPBIGP','ywrKvg9iAxn0B3j5','y2f0icqX','y3jLyxrLrgLYzwn0B3j5','u0Lhs0Lmta','Dgv4Dc1ZzwfYy2G','Dw5PDMvYC2fS','q29TBwfUzcbJB21WBgv0zwq6ia','AxntAw1WBgvdB21Tyw5K','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','Dgv4Dc1WCM9JzxnZAw5N','y2XLyw51Ca','zwnOBYaN','BwvTB3j5lwLUzM8','AwyG','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','DhjHBNnSyxrLvg9cyxnO','ChjVBxb0rgv0zwn0B3i','CgvYBwLZC2LVBNm'];a0_0x4c75=function(){return _0x41d306;};return a0_0x4c75();}
|
|
1
|
+
const a0_0x1c8215=a0_0x3998;(function(_0xb61ffc,_0x53f31f){const _0x204766=a0_0x3998,_0x482e3e=_0xb61ffc();while(!![]){try{const _0x2e573f=parseInt(_0x204766(0x194))/0x1+parseInt(_0x204766(0x151))/0x2*(parseInt(_0x204766(0x1bb))/0x3)+parseInt(_0x204766(0x100))/0x4+-parseInt(_0x204766(0xf9))/0x5*(-parseInt(_0x204766(0x10c))/0x6)+parseInt(_0x204766(0xf8))/0x7+-parseInt(_0x204766(0x1f9))/0x8*(parseInt(_0x204766(0x14f))/0x9)+-parseInt(_0x204766(0x1ec))/0xa;if(_0x2e573f===_0x53f31f)break;else _0x482e3e['push'](_0x482e3e['shift']());}catch(_0x57ca86){_0x482e3e['push'](_0x482e3e['shift']());}}}(a0_0x1c4b,0x4195a));import{BaseTool}from'./baseTool.js';import a0_0x3859ce from'../utilities/tagParser.js';import a0_0x1757fe from'../utilities/directoryAccessManager.js';function a0_0x1c4b(){const _0x351034=['C3rHDa','oIb1BMTUB3DUigfJDgLVBIb0ExbLoIa','zNn1DgLSihzVBhvTzsbKAxnRzNjLzq','zgLY','Aw5PDgLHBgL6zvrLCM1PBMfSrgv0zwn0Aw9U','q3vYCMvUDcb3B3jRAw5NigrPCMvJDg9YEtOG','D3jPDgu','zxjYB3i','ChjVy2vZCY1RAwXS','zgLZAY1PBMzV','y29TBwfUzfr5Cgu','i2LUy2X1zgu','ChjVy2vZCW','AgfSDa','icyG','zgvS','C3bLy2LMAwnjC3n1zxm','z2v0vgLTzq','CNvUlwnVBw1HBMq','D2HPBguG','zgvIDwC','CgXHDgzVCM0','r2v0lunOAwXKsxrLBq','Cgf0DgvYBG','C3rHDgu','mZuXndm0m0HMB1PPCG','nxzUz3byBa','C3LZDgvTlwLUzM8','Dgv4Dc1ZzwfYy2G','zMLUzhn0CG','z2v0q29TBwfUzeHPC3rVCNK','BwvZC2fNzq','r2v0luXVy2f0Aw9U','otyXndG4uevAEMPZ','AxnZDwvZ','q29WEs1jDgvT','lwnTzc0','quKGy29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwq','ufnnB2r1BgvqyxrO','vhjHBNnSyxrLihrOAxmGy29TBwfUzcb0BYb3B3jRignVCNjLy3rSEsbPBIa','zwnOBYaI','EwvZlw5V','y29TBwfUzfrYywnRzxi','CgXHDgzVCM1qCM92AwrLza','BM93','ntK3mdm2qw1Rrvj3','BgvUz3rO','zMLSzs1JB3b5','C3rKB3v0qNvMzMvY','Aw5JBhvKzxm','uMvTB3zLluL0zw0Gjde','yMXVy2TLzenVBw1HBMrZ','CMf3q29UDgvUDa','z2v0lxDVCMTPBMCTzgLYzwn0B3j5','rxHLy3v0Aw5NignVBw1HBMq6ia','zMLSDgvY','Cg93zxjZAgvSBcbfEhbHBMqTqxjJAgL2zq','AgvSCa','q29TChjLC3mTqxjJAgL2zq','BhmGlwe','zMLUzcaVyW','uhjLC3mGyw55igTLEq','y2HHBMDLrgLYzwn0B3j5','BgLZDc1KAxjLy3rVCNK','D29YA2LUz0rPCMvJDg9YAwvZ','y2XLyw51CefNzw50','DgLTzw91Da','r2v0lunVBNrLBNqGlvrHAwW','Bwf4q29TBwfUzefNzu1PBNv0zxm','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','zwnOBYa','C2XPy2u','ywrKvg9iAxn0B3j5','vxnLCM5HBwuGChjVBxb0','Dg9mB3DLCKnHC2u','oIbJB21Tyw5KigLZihjLCxvPCMvKigzVCIbYDw4Ty29TBwfUza','BwfPBIGP','y29UzMLYBwf0Aw9U','zgv0zwn0zwruzxjTAw5HBa','DhjHBNnSyxrLq29TBwfUza','igL0zw1ZigLUia','qwnJzxnZigrLBMLLzdOGq29TBwfUzcbIzwXVBMDZihrVigfNzw50ia','vgvYBwLUywWGrevcvuC6ifvZAw5NigzHBgXIywnRihDVCMTPBMCGzgLYzwn0B3j5oG','sw5WDxqGC2vUDcbZDwnJzxnZzNvSBhK','zMLSzs1SAxn0Aw5N','y2XLyw51Ca','C2vSzwn0Aw9U','CMvHC29U','Dg9VBhnszwDPC3rYEq','ksa+ia','ChDK','zxHLy3v0zunVBw1HBMrxAxrOu3bHD24','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbqB3DLCLnOzwXS','sgL0igvUDgvY','ihX8ia','qwn0Aw9Uia','z2v0q29TBwfUzfn0yxr1CW','yxn5BMm','zgLYic9Z','q2HHBMDLzcbKAxjLy3rVCNKGDg8G','D2fPDgLUz19MB3jFAw5WDxq','quKGDhjHBNnSyxrPB24GBM90igf2ywLSywjSzsaTig1PC3nPBMCGy29UDgv4Da','BwvUDq','BwfW','A2LSBgvK','zMLSzs12Awv3Aw5N','tMv3luL0zw0Glvr5CguGrgLYzwn0B3j5','C3rKzxjY','ig1PBgXPC2vJB25KCW','zMLSzs1JCMvHDgu','yxjYyxK','z2v0v29YA2LUz0rPCMvJDg9YEq','nJCWntyZquHwDK9o','DgfZA2XPC3q','mZq0wKH1wKTv','zgvSicqX','DgfZA2TPBgW','y29TBwfUza','q29TBwfUzcb0CMfUC2XHDgvKigzVCIbxAw5KB3DZiennra','DhjHBNnSyxrLvg9qB3DLCLnOzwXS','y3jLyxrLrgLYzwn0B3j5','y3vZDg9TqxbPs2v5CW','zgv0zwn0uhjVBxb0','Aw5KzxG','Dgv4Dc1LzgL0','q29TBwfUzcbLEgvJDxrLzcbZDwnJzxnZzNvSBhKGAw4G','q29TBwfUzcbWCM9JzxnZigv4AxrLzdOG','Dg9tDhjPBMC','zgLZAY11C2fNzq','u2v0lufJBa','r2v0lunOAwXKsxrLBsbfBNy6','tufyx0jbq0ThuK9vtKrFq09ntuforfnFr0XpqKfm','q29TBwfUzcbWCM9JzxnZig5VDcbMB3vUzcbVCIbHBhjLywr5igTPBgXLza','Bw92zq','ywn0Aw9UCW','y29TBwfUzeHPC3rVCNK','zxHPDa','y29Kzq','y21K','z2v0u3vWCg9YDgvKqwn0Aw9UCW','BgfZDe91Dhb1DfrPBwu','CMvXDwLYzxnqCM9Qzwn0','y29TCgf0AwjSzq','Aw5WDxq','Bw92zsaKmsaKmG','DhjHBNnSyxrLvg9cyxnO','CgLK','ChvZAa','C29Tzq','DgfZA2TPBgWGl1bjrcaKmq','oIb0ExbLigLZihjLCxvPCMvK','A2LSBa','yw5HBhL6zunVBw1HBMrdB21WyxrPyMLSAxr5','icHVCMLNAw5HBdOG','y2HHBMDLlwrPCMvJDg9YEq','u0Lhs0Lmta','ywXSB3DLzenVBw1HBMrZ','uMvTB3zLluL0zw0','z2v0ugfYyw1LDgvYu2nOzw1H','u2vSzwn0Aw9UihbYB21WDa','Dw5PEa','r2v0lunVBNrLBNqGluHLywq','ig9Mia','zgfYD2LU','ChjVBxb0ugf0DgvYBNm','u3rHBguGy29TBwfUzhmGy2XLyw5Lzcb1Ca','twf4Aw11BsbIywnRz3jVDw5KignVBw1HBMrZihbLCIbHz2vUDcbLEgnLzwrLzcaO','Ahr0Ca','y3DK','Bwf0y2HLzfrLEhq','qMfZAcbZAgvSBcaOtgLUDxGVvw5PEc9TywnpuYK','zxnJyxbLlxnLCxvLBMnLCW','ywDLBNrjza','q29TBwfUzcb0CMfUC2XHDgLVBIbMywLSzwqSihvZAw5Nig9YAwDPBMfSignVBw1HBMq','ChjVBxb0rgv0zwn0B3i','zgLYzwn0B3j5','BwTKAxi','v2LUzg93CYbqB3DLCLnOzwXS','y2f0','zw52','u0HfteW','ndCXmJe5sLDMshHn','BMv3rgLYzwn0B3j5','u0Lhvevstq','qwDLBNqGy29TBwfUzhmGy2XLyw5Lzcb1Ca','q29UzMLYBwf0Aw9UihbYB21WDa','tufyx0jbq0ThuK9vtKrFq09ntuforfnFuevsx0fhru5u','CMvSyxrPDMu','AxnbyNnVBhv0zq','r2v0lvbYB2nLC3m','zxH0CMfJDenVBNrLBNq','D2fYBG','C3rYAw5N','zwnOBYaIjdeI','q29TBwfUzcbJB21WyxrPyMLSAxr5igfUywX5C2LZ','zw50CMLLCW','cMbGyaOkq09ntuforcbbtKfmwvnjuZOklsbdB21Tyw5Kifr5Cgu6ia','zMfPBgvK','u3rHCNrPBMCGyMfJA2DYB3vUzcbJB21Tyw5KoIa','rxHWyw5KlufYy2HPDMu','AxndB21Tyw5Kq29TCgf0AwjSzvDPDgHuzxjTAw5HBa','DhLWzq','AwyG','yNvPBgruCMfUC2XHDgLVBLbYB21WDa','zw5KvgLTzq','C3rKB3v0','C3vJy2vZCW','uhjVBxb0igrLDgvJDgvKigLUigjHy2TNCM91BMqGy29TBwfUza','u3rVCc1qCM9JzxnZ','B3DUzxjZAgLW','q29TBwfUzcbJB21WBgv0zwq6ia','ChjVBxb0rgv0zwn0zwq','rMfPBgvKihrVihbHCNnLihrLCM1PBMfSihbHCMfTzxrLCNm6ia','ywX0zxjUyxrPDMvZ','C3rKAw4','y2XHC3mG','jgvUDJO','lunVBw1HBMq','DhLWzsaKmq','C3rHCNruAw1L','nJy2m1HHvKziva','rxHLy3v0Aw5NignVBw1HBMqGD2L0AcbZCgf3BJOG','r2v0lunVBNrLBNqGjde','y29TBwfUzeLK','Aw5MBW','zgf0yq','Dg9ju09tDhjPBMC','C2v0','AxncBg9JA2vKq29TBwfUza','y3jLyxrLlwrPCMvJDg9YEq','quKGDhjHBNnSyxrPB24GCMv0DxjUzwqGC2fTzsbJB21Tyw5K','q29TBwfUzcbHBhjLywr5ihrLCM1PBMf0zwq','DgfZA2TPBgWGl2yGl2LT','y29WEq','DgfRzw93BG','ignVBw1HBMrZigzVCIbHz2vUDca','q29TBwfUzcb0Aw1LzcbVDxqGywz0zxiG','y2f0zwDVCNK','CgXHDgzVCM1uExbL','Cg93zxjZAgvSBcbdB21WCMvZCY1bCMnOAxzL','AxnbCNjHEq','C3LZDgvTAw5MBW','uhjVy2vLzcbWCM9TChq','C3rHCNrZv2L0Aa','ihWG','zNjVBq','z2v0qwDLBNrdB21Tyw5KCW','DhjHBNnSyxrLvg9xAw5KB3DZq21K','vgvYBwLUywWGrevcvuC6ifvZAw5NigfNzw50ignVBMzPz3vYzwqGD29YA2LUzYbKAxjLy3rVCNK6','y29TCgXLDgvK','yMfZAa','Dgv4Dc1WCM9JzxnZAw5N','BMf0AxzL','cJiUifbYzxnLCNzLihrOzsbVCMLNAw5HBcbPBNrLBNqGyw5Kigz1BMn0Aw9UywXPDhKkmY4GsgfUzgXLigzPBguGCgf0AhmSihf1B3rPBMCSigfUzcbZEw50yxGGy29YCMvJDgX5cJqUieLMignYzwf0Aw5NigzPBgvZlcbLBNn1CMuGChjVCgvYigvUy29KAw5NigfUzcbSAw5LigvUzgLUz3mkns4GqwrKCMvZCYb0AguGC3bLy2LMAwmGy29TCgf0AwjPBgL0EsbPC3n1zxmGAwrLBNrPzMLLzcbHyM92zqO2lIbszxr1CM4Gt05mwsb0AguGDhjHBNnSyxrLzcbJB21Tyw5KlcbUB3rOAw5NigvSC2ukcLrsqu5ttefuruqGq09ntufordO','zgvSzxrL','zgvZy3jPChrPB24','zMLSzq','C2vUze1LC3nHz2u','CgLWzq','AM9PBG','CgfZC3DVCMq','BwvZC2fNzvbYB2nLC3nVCG','yxjJAgL2zq','y29TBwfUzeLKq291BNrLCG','BwvTB3j5lwLUzM8','C3rKzxjYqNvMzMvY','ywLtzxj2AwnL','Bg9Nz2vY','DMfSAwrHDgvdB21Tyw5Kt3DUzxjZAgLW','mtiWmZaWmZbIB2nJDvO','q29TBwfUzcbRAwXSzwqGC3vJy2vZC2z1BgX5','BgLZDefNzw50q29TBwfUzhm','DgvZDa','ugfZC3DVCMqGChjVBxb0','zM9YBwf0','BxmPcI0Gyxn5BMm6ifDOzxrOzxiGDg8GCNvUignVBw1HBMqGyxn5BMnOCM9UB3vZBhKGkhrYDwuVzMfSC2uPcGPfwefnueXfuZOkcLj1BIbUCg0GAw5ZDgfSBdOkygbGANnVBGP7iNrVB2Xjzci6icj0zxjTAw5HBciSicjHy3rPB25ZiJOGw3SIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbPBNn0ywXSiN1DFqPGygakcKDPDcbVCgvYyxrPB25ZoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNrLCM1PBMfSiIWkicaIywn0Aw9UCYi6ifSkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbZDgf0DxmIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiMDPDcbHzgqGlIj9laOGicaGEYj0ExbLiJOGiNj1BI1JB21Tyw5KiIWGiMnVBw1HBMqIoIaIz2L0ignVBw1PDcaTBsbCiLvWzgf0zsbMAwXLC1WIiN0kicbDcN0kygbGcGPdAgfUz2uGzgLYzwn0B3j5igfUzcbIDwLSzdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj0zxjTAw5HBciScIaGiMfJDgLVBNmIoIbBcIaGicb7iNr5CguIoIaIy2HHBMDLlwrPCMvJDg9YEsiSicjKAxjLy3rVCNKIoIaIlI4VzNjVBNrLBMqIFsWkicaGihSIDhLWzsi6icjYDw4Ty29TBwfUzciSicjJB21Tyw5KiJOGiM5WBsbYDw4GyNvPBgqIFqOGif0kFqPGygakcLnfq1vssvrzoGOTierHBMDLCM91CYbJB21Tyw5KCYbHCMuGyMXVy2TLzaOTienVBw1HBMrZigv4zwn1DguGAw4GAxnVBgf0zwqGzw52AxjVBM1LBNqklsbpDxrWDxqGAxmGy2fWDhvYzwqGyw5KihjLDhvYBMvKihnHzMvSEqOkqKvtvcbquKfdveLdrvm6cI0GvxnLiezPBgvtExn0zw0GDg9VBcbMB3iGzMLSzs9KAxjLy3rVCNKGB3bLCMf0Aw9UCWOTifvZzsbuzxjTAw5HBcbMB3iGq0Xjihv0AwXPDgLLCYaOBNbTlcbNAxqSign1CMWSigv0yY4PcI0Gq2HLy2SGy29TBwfUzcbVDxrWDxqGDg8GDMvYAwz5ihn1y2nLC3mkicaGia','vgvYBwLUywWGzgv0zwn0zwq','CMvWBgfJzq','y29TBwfUzenHDgvNB3j5','C3vIC3rYAw5N','q29TBwfUzcbJB21WBgv0zwqGC3vJy2vZC2z1BgX5oIa','oIbJB21Tyw5KigLZigjSB2nRzwqGzM9YihnLy3vYAxr5oIa','mJrxuvvby2O','icyMia','zw5KC1DPDgG','z2v0','zxHLy3v0Aw9UvgLTzq','CgfYC2vqyxjHBwv0zxjZ','A2v5ChjLC3m','zgLYzwn0B3j5qwnJzxnZtwfUywDLCG','Bwf4q29Uy3vYCMvUDe9WzxjHDgLVBNm','Dw5PDMvYC2fS','CgLUzYaKmq','ChjVy2vZCY1TB25PDg9Y','yxbPs2v5','C2LUz2XLlxf1B3rLCY1WCM9IBgvTyxrPyW','AxneAxjLy3rVCNK','Dw5RBM93BG','CMvZB2X2zq','CgLUzW','DhjPBq','u29YDc1pyMPLy3qGlvvUAxf1zq','AxntAw1WBgvdB21Tyw5K','z3jLCa','D2LUzg93CY1JBwq','zMLSzs1TB3zL','Dw5PEc1ZDhLSzs1WyxrOCW','r2vUzxjPyYbPBNb1DcbWCM9TChq','CgvYBwLZC2LVBNm','zxHPDenVzgu','tufyx0nptu1btKrFquDfx01jtLvurvm','q29TBwfUzcb0Aw1LzcbVDxqSigTPBgXPBMCGChjVy2vZCZOG','y29UzMLKzw5Jzq','Cg93zxjZAgvSBa','Dgv4Dc1ZB3j0','Dgv4Dc1Kzwr1Cgu','zwnOBYaN','Bwf0y2G','C2vUzeLUChv0','y2XLyw51Cfn0ywXLq29TBwfUzhm','q29TBwfUzcbLEgL0zwqGD2L0AcbJB2rLia','tM9UzsbKzxrLy3rLza','cI0Gu3vNz2vZDgvKiefSDgvYBMf0AxzLoIa','igfJDgLVBNmGy29TCgXLDgvKihn1y2nLC3nMDwXSEq','z2vUzxjPyW','D29YA2LUz0rPCMvJDg9YEq','zgvSic9Mic9X','y3jLyxrLrgLYzwn0B3j5qwnJzxnZ'];a0_0x1c4b=function(){return _0x351034;};return a0_0x1c4b();}import{spawn,exec}from'child_process';import a0_0x1f0365 from'path';import a0_0x19c700 from'fs/promises';function a0_0x3998(_0x4b1590,_0xa924a0){_0x4b1590=_0x4b1590-0xf7;const _0x1c4b61=a0_0x1c4b();let _0x399812=_0x1c4b61[_0x4b1590];if(a0_0x3998['dlOgbP']===undefined){var _0x12c83a=function(_0x474438){const _0x4590b8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3859ce='',_0x1757fe='';for(let _0x1f0365=0x0,_0x19c700,_0x503d8f,_0x2b1c16=0x0;_0x503d8f=_0x474438['charAt'](_0x2b1c16++);~_0x503d8f&&(_0x19c700=_0x1f0365%0x4?_0x19c700*0x40+_0x503d8f:_0x503d8f,_0x1f0365++%0x4)?_0x3859ce+=String['fromCharCode'](0xff&_0x19c700>>(-0x2*_0x1f0365&0x6)):0x0){_0x503d8f=_0x4590b8['indexOf'](_0x503d8f);}for(let _0x49ecad=0x0,_0x343127=_0x3859ce['length'];_0x49ecad<_0x343127;_0x49ecad++){_0x1757fe+='%'+('00'+_0x3859ce['charCodeAt'](_0x49ecad)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1757fe);};a0_0x3998['AiqRgA']=_0x12c83a,a0_0x3998['NvnCsr']={},a0_0x3998['dlOgbP']=!![];}const _0x564d14=_0x1c4b61[0x0],_0x33cb15=_0x4b1590+_0x564d14,_0x30f16a=a0_0x3998['NvnCsr'][_0x33cb15];return!_0x30f16a?(_0x399812=a0_0x3998['AiqRgA'](_0x399812),a0_0x3998['NvnCsr'][_0x33cb15]=_0x399812):_0x399812=_0x30f16a,_0x399812;}import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class PromptDetector{constructor(){const _0x49fffa=a0_0x3998;this['promptPatterns']=[{'pattern':/\(y\/n\)/i,'type':'yes-no','description':'Yes/No\x20question'},{'pattern':/\(Y\/n\)/i,'type':'yes-no-default-yes','description':'Yes/No (default Yes)'},{'pattern':/\(y\/N\)/i,'type':'yes-no-default-no','description':'Yes/No (default No)'},{'pattern':/\[y\/n\]/i,'type':_0x49fffa(0x108),'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':'Continue\x20prompt'},{'pattern':/proceed\?/i,'type':'continue','description':_0x49fffa(0x1d1)},{'pattern':/press any key to continue/i,'type':'keypress','description':_0x49fffa(0x11c)},{'pattern':/press enter to continue/i,'type':_0x49fffa(0x1ff),'description':'Press\x20enter'},{'pattern':/hit enter to continue/i,'type':_0x49fffa(0x1ff),'description':_0x49fffa(0x13c)},{'pattern':/password:/i,'type':'password','description':_0x49fffa(0x1f0)},{'pattern':/enter password/i,'type':_0x49fffa(0x1e3),'description':'Password\x20prompt'},{'pattern':/passphrase:/i,'type':'password','description':'Passphrase\x20prompt'},{'pattern':/username:/i,'type':'username','description':_0x49fffa(0x128)},{'pattern':/enter username/i,'type':'username','description':_0x49fffa(0x128)},{'pattern':/enter\s+\w+:/i,'type':_0x49fffa(0x16e),'description':_0x49fffa(0x212)},{'pattern':/please enter/i,'type':_0x49fffa(0x16e),'description':_0x49fffa(0x212)},{'pattern':/input:/i,'type':_0x49fffa(0x16e),'description':'Generic\x20input\x20prompt'},{'pattern':/are you sure\?/i,'type':_0x49fffa(0x12c),'description':_0x49fffa(0x198)},{'pattern':/do you want to/i,'type':_0x49fffa(0x12c),'description':'Confirmation\x20prompt'},{'pattern':/would you like to/i,'type':'confirmation','description':_0x49fffa(0x198)},{'pattern':/select an option/i,'type':'selection','description':_0x49fffa(0x17e)},{'pattern':/choose/i,'type':_0x49fffa(0x135),'description':_0x49fffa(0x17e)},{'pattern':/\d+\)\s+\w+/g,'type':_0x49fffa(0x145),'description':'Menu\x20selection'}];}[a0_0x1c8215(0x159)](_0x503d8f,_0x2b1c16=a0_0x1c8215(0x1ac)){const _0x43d233=a0_0x1c8215;if(!_0x503d8f||_0x503d8f['trim']()[_0x43d233(0x10d)]===0x0)return null;const _0x49ecad=_0x503d8f['split']('\x0a'),_0x343127=_0x49ecad[_0x43d233(0x126)](-0x5)['join']('\x0a');for(const _0x4f9326 of this[_0x43d233(0x183)]){const _0x87929e=_0x343127['match'](_0x4f9326[_0x43d233(0x23e)]);if(_0x87929e)return{'detected':!![],'type':_0x4f9326['type'],'description':_0x4f9326[_0x43d233(0x1de)],'matchedText':_0x87929e[0x0],'matchIndex':_0x87929e[_0x43d233(0x15a)],'source':_0x2b1c16,'fullContext':_0x343127,'timestamp':Date[_0x43d233(0x10b)]()};}const _0x59cf4e=_0x49ecad[_0x49ecad[_0x43d233(0x10d)]-0x1]||'';if(_0x59cf4e[_0x43d233(0x20b)]()['length']>0x0){const _0x4b5604=/:\s*$/[_0x43d233(0x1ef)](_0x59cf4e),_0x36d7e3=/\?\s*$/[_0x43d233(0x1ef)](_0x59cf4e);if(_0x4b5604||_0x36d7e3){const _0x2988ca=/\b(enter|type|provide|specify|input)\b/i['test'](_0x59cf4e);if(_0x2988ca)return{'detected':!![],'type':_0x43d233(0x223),'description':'Generic\x20input\x20prompt\x20detected','matchedText':_0x59cf4e[_0x43d233(0x20b)](),'source':_0x2b1c16,'fullContext':_0x343127,'timestamp':Date[_0x43d233(0x10b)](),'confidence':0.7};}}return null;}['detectHang'](_0x40bfa0,_0x3ca602=0x7530){const _0x4a8075=Date['now'](),_0x3c8e5d=_0x4a8075-_0x40bfa0;return{'isHanging':_0x3c8e5d>=_0x3ca602,'timeSinceLastOutput':_0x3c8e5d,'threshold':_0x3ca602,'likelyWaiting':_0x3c8e5d>=_0x3ca602/0x2};}}class TerminalTool extends BaseTool{constructor(_0x339424={},_0x74ec50=null){const _0x2fcc74=a0_0x1c8215;super(_0x339424,_0x74ec50),this[_0x2fcc74(0x16c)]=![],this['isAsync']=![],this['timeout']=_0x339424['timeout']||0x1d4c0,this[_0x2fcc74(0x201)]=_0x339424['maxConcurrentOperations']||0x3,this['workingDirectories']=new Map(),this[_0x2fcc74(0x166)]=[],this['allowedCommands']=_0x339424[_0x2fcc74(0x17b)]||null,this[_0x2fcc74(0x112)]=_0x339424['blockedCommands']||['rm\x20-rf\x20/',_0x2fcc74(0x1f1),_0x2fcc74(0x225),'shutdown','reboot',_0x2fcc74(0x234)],this['directoryAccessManager']=new a0_0x1757fe(_0x339424,_0x74ec50),this[_0x2fcc74(0x18d)]=new PromptDetector(),this[_0x2fcc74(0x109)]=new Map(),this[_0x2fcc74(0x1e6)]=0x0,this['MAX_BACKGROUND_COMMANDS_PER_AGENT']=_0x339424['maxBackgroundCommandsPerAgent']||0x5,this[_0x2fcc74(0x162)]=_0x339424['maxBackgroundCommandsGlobal']||0x14,this['MAX_COMMAND_AGE_MINUTES']=_0x339424[_0x2fcc74(0x123)]||0x3c,this[_0x2fcc74(0x12d)]=null,this[_0x2fcc74(0x1cd)]=null,this[_0x2fcc74(0x22b)]();}['getDescription'](){const _0x5f0c3e=a0_0x1c8215;return'\x0aTerminal\x20Tool:\x20Execute\x20system\x20commands\x20and\x20manage\x20terminal\x20operations\x20safely.\x0a\x0aIMPORTANT:\x20For\x20file\x20and\x20directory\x20creation,\x20prefer\x20using\x20the\x20FileSystem\x20tool.\x0aReserve\x20the\x20Terminal\x20tool\x20for\x20command-line\x20operations\x20like\x20npm,\x20git,\x20curl,\x20etc.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22terminal\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22run-command\x22,\x20\x22command\x22:\x20\x22npm\x20install\x20express\x22},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22change-directory\x22,\x20\x22directory\x22:\x20\x22project/backend\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20run-command:\x20Execute\x20a\x20command\x20(command)\x0a-\x20change-directory:\x20Change\x20working\x20directory\x20(directory)\x0a-\x20list-directory:\x20List\x20directory\x20contents\x20(directory)\x0a-\x20create-directory:\x20Create\x20directory\x20(directory)\x20-\x20prefer\x20FileSystem\x20tool\x0a-\x20get-working-directory:\x20Get\x20current\x20directory\x0a\x0aPARAMETERS:\x0a-\x20command:\x20The\x20command\x20to\x20execute\x0a-\x20directory:\x20Directory\x20path\x20for\x20navigation/operations\x0a-\x20timeout:\x20Optional\x20timeout\x20in\x20milliseconds\x20(max\x20'+this['timeout']+_0x5f0c3e(0x1f2);}[a0_0x1c8215(0x1fe)](_0x10af6f){const _0x327c5a=a0_0x1c8215;try{const _0x2a50de={},_0x2e89be=a0_0x3859ce['extractContent'](_0x10af6f,'run-command'),_0x265320=a0_0x3859ce[_0x327c5a(0x19d)](_0x10af6f,'change-directory'),_0x4a2e78=a0_0x3859ce['extractContent'](_0x10af6f,'list-directory'),_0x27fd57=a0_0x3859ce['extractContent'](_0x10af6f,'create-directory'),_0x36d323=a0_0x3859ce['extractContent'](_0x10af6f,'get-working-directory'),_0x4c819c=a0_0x3859ce['extractContent'](_0x10af6f,_0x327c5a(0x121)),_0x4574d5=a0_0x3859ce[_0x327c5a(0x19d)](_0x10af6f,'async'),_0x43eaa2=[];return _0x2e89be['length']>0x0&&_0x43eaa2['push']({'type':_0x327c5a(0x239),'command':_0x2e89be[0x0]['trim']()}),_0x265320['length']>0x0&&_0x43eaa2[_0x327c5a(0x172)]({'type':'change-directory','directory':_0x265320[0x0][_0x327c5a(0x20b)]()}),_0x4a2e78[_0x327c5a(0x10d)]>0x0&&_0x43eaa2['push']({'type':_0x327c5a(0x11e),'directory':_0x4a2e78[0x0]['trim']()||'.'}),_0x27fd57[_0x327c5a(0x10d)]>0x0&&_0x43eaa2['push']({'type':'create-directory','directory':_0x27fd57[0x0][_0x327c5a(0x20b)]()}),_0x36d323[_0x327c5a(0x10d)]>0x0&&_0x43eaa2[_0x327c5a(0x172)]({'type':_0x327c5a(0x114)}),_0x2a50de['actions']=_0x43eaa2,_0x4c819c['length']>0x0&&(_0x2a50de[_0x327c5a(0x121)]=parseInt(_0x4c819c[0x0],0xa)),_0x4574d5[_0x327c5a(0x10d)]>0x0&&(_0x2a50de[_0x327c5a(0x140)]=_0x4574d5[0x0][_0x327c5a(0x129)]()==='true'),_0x2a50de[_0x327c5a(0x113)]=_0x10af6f[_0x327c5a(0x20b)](),_0x2a50de;}catch(_0xfb2ed9){throw new Error(_0x327c5a(0x1b3)+_0xfb2ed9[_0x327c5a(0xfe)]);}}['getRequiredParameters'](){const _0x5e67fa=a0_0x1c8215;return[_0x5e67fa(0x165)];}['customValidateParameters'](_0xb5a985){const _0x318fb2=a0_0x1c8215,_0x321f2d=[];if(!_0xb5a985['actions']||!Array[_0x318fb2(0x1cf)](_0xb5a985['actions'])||_0xb5a985[_0x318fb2(0x165)]['length']===0x0)_0x321f2d[_0x318fb2(0x172)]('At\x20least\x20one\x20action\x20is\x20required');else for(const [_0x3c73cb,_0x4e9ac2]of _0xb5a985['actions']['entries']()){if(!_0x4e9ac2[_0x318fb2(0x1a8)]){_0x321f2d['push'](_0x318fb2(0x13e)+(_0x3c73cb+0x1)+_0x318fb2(0x175));continue;}switch(_0x4e9ac2[_0x318fb2(0x1a8)]){case _0x318fb2(0x239):if(!_0x4e9ac2['command']||!_0x4e9ac2[_0x318fb2(0x154)]['trim']())_0x321f2d[_0x318fb2(0x172)](_0x318fb2(0x13e)+(_0x3c73cb+0x1)+_0x318fb2(0x12a));else{if(this[_0x318fb2(0x1c3)](_0x4e9ac2['command']))_0x321f2d['push'](_0x318fb2(0x13e)+(_0x3c73cb+0x1)+_0x318fb2(0x1f8)+_0x4e9ac2['command']);else this[_0x318fb2(0x17b)]&&!this['isAllowedCommand'](_0x4e9ac2[_0x318fb2(0x154)])&&_0x321f2d[_0x318fb2(0x172)]('Action\x20'+(_0x3c73cb+0x1)+':\x20command\x20is\x20not\x20in\x20allowed\x20list:\x20'+_0x4e9ac2[_0x318fb2(0x154)]);}break;case _0x318fb2(0x179):case _0x318fb2(0x11e):case'create-directory':(!_0x4e9ac2['directory']||!_0x4e9ac2[_0x318fb2(0x18e)][_0x318fb2(0x20b)]())&&_0x321f2d['push']('Action\x20'+(_0x3c73cb+0x1)+':\x20directory\x20is\x20required\x20for\x20'+_0x4e9ac2['type']);break;case _0x318fb2(0x114):break;default:_0x321f2d['push'](_0x318fb2(0x13e)+(_0x3c73cb+0x1)+_0x318fb2(0x228)+_0x4e9ac2[_0x318fb2(0x1a8)]);}}return _0xb5a985[_0x318fb2(0x121)]&&(_0xb5a985[_0x318fb2(0x121)]<0x3e8||_0xb5a985['timeout']>this['timeout'])&&_0x321f2d['push']('Timeout\x20must\x20be\x20between\x201000\x20and\x20'+this[_0x318fb2(0x121)]+_0x318fb2(0x14b)),{'valid':_0x321f2d['length']===0x0,'errors':_0x321f2d};}async['execute'](_0x518163,_0x51f808){const _0x911077=a0_0x1c8215,{actions:_0x5a0ec7,timeout:_0x5e708d,async:_0xfb9bb4}=_0x518163,{agentId:_0x49df7f,projectDir:_0x27226a,directoryAccess:_0x17ac88}=_0x51f808,_0x5e1f38=_0x17ac88||this['directoryAccessManager'][_0x911077(0x226)]({'workingDirectory':_0x27226a||process['cwd'](),'writeEnabledDirectories':[_0x27226a||process['cwd']()],'restrictToProject':!![]});_0x17ac88&&_0x17ac88[_0x911077(0x224)]?console['log'](_0x911077(0x1d7),_0x17ac88['workingDirectory']):console['log'](_0x911077(0x131),_0x27226a||process[_0x911077(0x187)]());const _0x6e95f7=_0x49df7f+'-'+(_0x27226a||'default');let _0xa7758b=this[_0x911077(0x11f)][_0x911077(0x1fc)](_0x6e95f7)||this[_0x911077(0x200)][_0x911077(0x14e)](_0x5e1f38);const _0x15d9cb=[];for(const _0x256a69 of _0x5a0ec7){try{let _0x219a4e;switch(_0x256a69[_0x911077(0x1a8)]){case'run-command':_0x219a4e=await this['executeCommand'](_0x256a69[_0x911077(0x154)],_0xa7758b,{'timeout':_0x5e708d||this['timeout'],'async':_0xfb9bb4||![],'agentId':_0x49df7f,'context':{'toolsRegistry':_0x51f808[_0x911077(0x137)],'aiService':_0x51f808['aiService'],'apiKey':_0x51f808['apiKey'],'customApiKeys':_0x51f808['customApiKeys'],'platformProvided':_0x51f808[_0x911077(0x10a)]}});break;case'change-directory':_0x219a4e=await this['changeDirectory'](_0x256a69['directory'],_0xa7758b,_0x5e1f38),_0xa7758b=_0x219a4e[_0x911077(0x195)],this['workingDirectories'][_0x911077(0x1c2)](_0x6e95f7,_0xa7758b);break;case _0x911077(0x11e):_0x219a4e=await this['listDirectory'](_0x256a69['directory']==='.'?_0xa7758b:_0x256a69[_0x911077(0x18e)]);break;case _0x911077(0x1c4):_0x219a4e=await this[_0x911077(0x157)](_0x256a69[_0x911077(0x18e)],_0xa7758b);break;case _0x911077(0x114):_0x219a4e={'success':!![],'action':_0x911077(0x114),'workingDirectory':_0xa7758b,'message':_0x911077(0x22c)+_0xa7758b};break;default:throw new Error('Unknown\x20action\x20type:\x20'+_0x256a69[_0x911077(0x1a8)]);}_0x15d9cb[_0x911077(0x172)](_0x219a4e),this[_0x911077(0x127)](_0x256a69,_0x219a4e,_0x49df7f);}catch(_0x39f6be){const _0x38f6ad={'success':![],'action':_0x256a69[_0x911077(0x1a8)],'error':_0x39f6be[_0x911077(0xfe)],'command':_0x256a69['command']||_0x256a69['directory'],'workingDirectory':_0xa7758b};_0x15d9cb[_0x911077(0x172)](_0x38f6ad),this['addToHistory'](_0x256a69,_0x38f6ad,_0x49df7f);}}const _0x101e8b=_0x15d9cb['every'](_0x1bef1d=>_0x1bef1d[_0x911077(0x1ad)]),_0x484ad2=_0x15d9cb[_0x911077(0x116)](_0x3acbaf=>!_0x3acbaf[_0x911077(0x1ad)]);return{'success':_0x101e8b,'actions':_0x15d9cb,'workingDirectory':_0xa7758b,'executedActions':_0x5a0ec7['length'],'failedActions':_0x484ad2[_0x911077(0x10d)],'toolUsed':'terminal','message':_0x101e8b?'All\x20'+_0x5a0ec7[_0x911077(0x10d)]+_0x911077(0x222):_0x484ad2[_0x911077(0x10d)]+_0x911077(0x181)+_0x5a0ec7[_0x911077(0x10d)]+'\x20actions\x20failed'};}async['executeCommand'](_0x2e1dd2,_0x55eb47,_0x5c59e5={}){const _0xeb88af=a0_0x1c8215,{timeout:timeout=this['timeout'],async:_0x413e59=![],agentId:_0x1c610f,context:_0x2deba6}=_0x5c59e5,_0x59928d=_0x2e1dd2;let _0x58ea7f;try{_0x58ea7f=await this[_0xeb88af(0x12e)](_0x2e1dd2,{'agentId':_0x1c610f,'toolsRegistry':_0x2deba6?.['toolsRegistry'],'messageProcessor':_0x2deba6?.[_0xeb88af(0x1e4)],'aiService':_0x2deba6?.[_0xeb88af(0x1e9)],'apiKey':_0x2deba6?.[_0xeb88af(0x205)],'customApiKeys':_0x2deba6?.['customApiKeys'],'platformProvided':_0x2deba6?.['platformProvided']});}catch(_0x54969a){this['logger']?.[_0xeb88af(0x19e)](_0xeb88af(0x18c),{'originalCommand':_0x59928d,'error':_0x54969a['message']}),_0x58ea7f=_0x2e1dd2;}return new Promise((_0xfb890f,_0x5ab35b)=>{const _0x427e8e=_0xeb88af,_0x5ec90c=Date['now']();this[_0x427e8e(0x1ea)]?.['info'](_0x427e8e(0x115)+_0x58ea7f,{'originalCommand':_0x59928d,'translatedCommand':_0x58ea7f,'terminal':this['detectedTerminal'],'workingDirectory':_0x55eb47,'timeout':timeout,'agentId':_0x1c610f});const _0x18abd5=exec(_0x58ea7f,{'cwd':_0x55eb47,'timeout':timeout,'maxBuffer':0x400*0x400,'env':{...process[_0x427e8e(0x192)]}},(_0xdca507,_0x563351,_0x4d6295)=>{const _0x370f38=_0x427e8e,_0x2d3f79=Date['now']()-_0x5ec90c;if(_0xdca507){this[_0x370f38(0x1ea)]?.[_0x370f38(0x22e)]('Command\x20failed:\x20'+_0x58ea7f,{'originalCommand':_0x59928d,'translatedCommand':_0x58ea7f,'error':_0xdca507[_0x370f38(0xfe)],'workingDirectory':_0x55eb47,'executionTime':_0x2d3f79}),_0xfb890f({'success':![],'action':_0x370f38(0x239),'command':_0x59928d,'translatedCommand':_0x58ea7f!==_0x59928d?_0x58ea7f:undefined,'error':_0xdca507[_0x370f38(0xfe)],'stderr':_0x4d6295[_0x370f38(0x20b)](),'stdout':_0x563351['trim'](),'exitCode':_0xdca507[_0x370f38(0x168)],'executionTime':_0x2d3f79,'workingDirectory':_0x55eb47});return;}this['logger']?.[_0x370f38(0x1bf)](_0x370f38(0x1b1)+_0x58ea7f,{'originalCommand':_0x59928d,'translatedCommand':_0x58ea7f,'executionTime':_0x2d3f79,'stdoutLength':_0x563351[_0x370f38(0x10d)],'stderrLength':_0x4d6295[_0x370f38(0x10d)]}),_0xfb890f({'success':!![],'action':'run-command','command':_0x59928d,'translatedCommand':_0x58ea7f!==_0x59928d?_0x58ea7f:undefined,'stdout':_0x563351[_0x370f38(0x20b)](),'stderr':_0x4d6295[_0x370f38(0x20b)](),'exitCode':0x0,'executionTime':_0x2d3f79,'workingDirectory':_0x55eb47,'message':_0x370f38(0x15c)+_0x2d3f79+'ms'});});setTimeout(()=>{const _0x1c879f=_0x427e8e;!_0x18abd5['killed']&&(_0x18abd5[_0x1c879f(0x176)]('SIGTERM'),_0x5ab35b(new Error('Command\x20timed\x20out\x20after\x20'+timeout+'ms:\x20'+_0x58ea7f+_0x1c879f(0x178)+_0x59928d+')')));},timeout);});}async[a0_0x1c8215(0x13a)](_0x55de18,_0x4f80e5,_0x133e39={}){const _0x56520c=a0_0x1c8215,{timeout:timeout=this['timeout'],agentId:_0x216526,context:_0x35d045}=_0x133e39,_0xcc6d51=_0x55de18;let _0x24987f;try{_0x24987f=await this['translateCommand'](_0x55de18,{'agentId':_0x216526,'toolsRegistry':_0x35d045?.['toolsRegistry'],'messageProcessor':_0x35d045?.['messageProcessor'],'aiService':_0x35d045?.[_0x56520c(0x1e9)],'apiKey':_0x35d045?.['apiKey'],'customApiKeys':_0x35d045?.['customApiKeys'],'platformProvided':_0x35d045?.[_0x56520c(0x10a)]});}catch(_0x419065){this[_0x56520c(0x1ea)]?.[_0x56520c(0x19e)](_0x56520c(0x18c),{'originalCommand':_0xcc6d51,'error':_0x419065['message']}),_0x24987f=_0x55de18;}return new Promise((_0x2a011b,_0x16027c)=>{const _0x12fc2f=_0x56520c,_0xd56192=Date['now']();this[_0x12fc2f(0x1ea)]?.[_0x12fc2f(0x1bf)](_0x12fc2f(0x1bc)+_0x24987f,{'originalCommand':_0xcc6d51,'translatedCommand':_0x24987f,'terminal':this['detectedTerminal'],'workingDirectory':_0x4f80e5,'timeout':timeout,'agentId':_0x216526});let _0x480188;if(this['detectedTerminal']==='cmd'||this[_0x12fc2f(0x12d)]==='powershell'){const _0x1e215d=this[_0x12fc2f(0x12d)]===_0x12fc2f(0x218)?_0x12fc2f(0x218):_0x12fc2f(0x169),_0x462d4b=this[_0x12fc2f(0x12d)]===_0x12fc2f(0x218)?[_0x12fc2f(0x1b8),_0x24987f]:['/c',_0x24987f];_0x480188=spawn(_0x1e215d,_0x462d4b,{'cwd':_0x4f80e5,'env':{...process['env']},'windowsHide':!![]});}else _0x480188=spawn('sh',['-c',_0x24987f],{'cwd':_0x4f80e5,'env':{...process[_0x12fc2f(0x192)]}});let _0x4a24eb='',_0x4ddd42='',_0x1fbbf0=![],_0x2db513=null,_0x5b7a6d=Date['now'](),_0x4ab817=null;const _0x3f5251=setTimeout(()=>{const _0x44a146=_0x12fc2f;!_0x480188[_0x44a146(0x147)]&&_0x2db513===null&&(_0x1fbbf0=!![],this['logger']?.[_0x44a146(0x19e)](_0x44a146(0x216)+_0x24987f,{'timeout':timeout,'agentId':_0x216526}),_0x480188[_0x44a146(0x176)]('SIGTERM'),setTimeout(()=>{const _0x198497=_0x44a146;!_0x480188['killed']&&_0x480188['kill'](_0x198497(0x17a));},0x1388));},timeout);_0x480188['stdout']['on']('data',_0x49c13f=>{const _0x2ac975=_0x12fc2f,_0x528c00=_0x49c13f['toString']();_0x4a24eb+=_0x528c00,_0x5b7a6d=Date[_0x2ac975(0x10b)](),this['logger']?.[_0x2ac975(0x23b)]('Command\x20output\x20chunk:\x20'+_0x528c00[_0x2ac975(0x1f6)](0x0,0x64),{'agentId':_0x216526,'command':_0xcc6d51[_0x2ac975(0x1f6)](0x0,0x32)});if(!_0x4ab817){const _0x4cb966=this['promptDetector']['detectPrompt'](_0x4a24eb,'stdout');_0x4cb966&&(_0x4ab817=_0x4cb966,this[_0x2ac975(0x1ea)]?.[_0x2ac975(0x1bf)]('Prompt\x20detected\x20in\x20stdout',{'type':_0x4cb966[_0x2ac975(0x1a8)],'description':_0x4cb966['description'],'matchedText':_0x4cb966[_0x2ac975(0x188)],'agentId':_0x216526,'command':_0xcc6d51[_0x2ac975(0x1f6)](0x0,0x32)}));}}),_0x480188['stderr']['on'](_0x12fc2f(0x1c0),_0x2f51da=>{const _0x14a2a8=_0x12fc2f,_0x28e3b6=_0x2f51da[_0x14a2a8(0x15e)]();_0x4ddd42+=_0x28e3b6,_0x5b7a6d=Date[_0x14a2a8(0x10b)](),this[_0x14a2a8(0x1ea)]?.[_0x14a2a8(0x23b)]('Command\x20error\x20chunk:\x20'+_0x28e3b6['substring'](0x0,0x64),{'agentId':_0x216526,'command':_0xcc6d51[_0x14a2a8(0x1f6)](0x0,0x32)});if(!_0x4ab817){const _0x3fe0a7=this['promptDetector']['detectPrompt'](_0x4ddd42,_0x14a2a8(0x14a));_0x3fe0a7&&(_0x4ab817=_0x3fe0a7,this[_0x14a2a8(0x1ea)]?.[_0x14a2a8(0x1bf)]('Prompt\x20detected\x20in\x20stderr',{'type':_0x3fe0a7['type'],'description':_0x3fe0a7['description'],'matchedText':_0x3fe0a7['matchedText'],'agentId':_0x216526,'command':_0xcc6d51[_0x14a2a8(0x1f6)](0x0,0x32)}));}}),_0x480188['on'](_0x12fc2f(0x167),(_0x5d02ac,_0x446131)=>{const _0x5b41ec=_0x12fc2f;clearTimeout(_0x3f5251),_0x2db513=_0x5d02ac;const _0x5c3866=Date[_0x5b41ec(0x10b)]()-_0xd56192,_0x2b75b9=Date['now']()-_0x5b7a6d;this[_0x5b41ec(0x1ea)]?.['info'](_0x5b41ec(0x15d)+_0x24987f,{'exitCode':_0x5d02ac,'signal':_0x446131,'executionTime':_0x5c3866,'timedOut':_0x1fbbf0,'stdoutLength':_0x4a24eb[_0x5b41ec(0x10d)],'stderrLength':_0x4ddd42[_0x5b41ec(0x10d)],'promptDetected':!!_0x4ab817,'timeSinceLastOutput':_0x2b75b9});const _0x4b34e7={'action':'run-command','command':_0xcc6d51,'translatedCommand':_0x24987f!==_0xcc6d51?_0x24987f:undefined,'stdout':_0x4a24eb[_0x5b41ec(0x20b)](),'stderr':_0x4ddd42[_0x5b41ec(0x20b)](),'exitCode':_0x5d02ac,'executionTime':_0x5c3866,'workingDirectory':_0x4f80e5,'promptDetected':!!_0x4ab817,'promptInfo':_0x4ab817||undefined,'lastOutputTime':_0x5b7a6d,'timeSinceLastOutput':_0x2b75b9};if(_0x1fbbf0){_0x2a011b({..._0x4b34e7,'success':![],'error':_0x5b41ec(0x1cb)+timeout+'ms','exitCode':_0x5d02ac||-0x1,'timedOut':!![]});return;}if(_0x5d02ac!==0x0){this[_0x5b41ec(0x1ea)]?.[_0x5b41ec(0x22e)]('Command\x20failed\x20with\x20exit\x20code\x20'+_0x5d02ac+':\x20'+_0x24987f,{'originalCommand':_0xcc6d51,'translatedCommand':_0x24987f,'exitCode':_0x5d02ac,'stderr':_0x4ddd42['substring'](0x0,0xc8),'executionTime':_0x5c3866,'promptDetected':!!_0x4ab817}),_0x2a011b({..._0x4b34e7,'success':![],'error':_0x5b41ec(0x21f)+_0x5d02ac});return;}this[_0x5b41ec(0x1ea)]?.['info'](_0x5b41ec(0x1f7)+_0x24987f,{'originalCommand':_0xcc6d51,'executionTime':_0x5c3866,'stdoutLength':_0x4a24eb['length'],'stderrLength':_0x4ddd42[_0x5b41ec(0x10d)],'promptDetected':!!_0x4ab817}),_0x2a011b({..._0x4b34e7,'success':!![],'exitCode':0x0,'message':'Command\x20executed\x20successfully\x20in\x20'+_0x5c3866+'ms'});}),_0x480188['on'](_0x12fc2f(0x22e),_0x49c760=>{const _0x1e9817=_0x12fc2f;clearTimeout(_0x3f5251);const _0x5ba437=Date[_0x1e9817(0x10b)]()-_0xd56192,_0x9a1c6b=Date[_0x1e9817(0x10b)]()-_0x5b7a6d;this[_0x1e9817(0x1ea)]?.['error']('Command\x20spawn\x20error:\x20'+_0x24987f,{'originalCommand':_0xcc6d51,'error':_0x49c760[_0x1e9817(0xfe)],'executionTime':_0x5ba437,'promptDetected':!!_0x4ab817}),_0x2a011b({'success':![],'action':_0x1e9817(0x239),'command':_0xcc6d51,'translatedCommand':_0x24987f!==_0xcc6d51?_0x24987f:undefined,'error':_0x49c760['message'],'stderr':_0x4ddd42[_0x1e9817(0x20b)](),'stdout':_0x4a24eb['trim'](),'exitCode':-0x1,'executionTime':_0x5ba437,'workingDirectory':_0x4f80e5,'promptDetected':!!_0x4ab817,'promptInfo':_0x4ab817||undefined,'lastOutputTime':_0x5b7a6d,'timeSinceLastOutput':_0x9a1c6b});});});}async[a0_0x1c8215(0x11d)](_0x4f5f7c,_0x26101d,_0xa17aea){const _0x1c16be=a0_0x1c8215;try{let _0x478641;a0_0x1f0365[_0x1c16be(0x19b)](_0x4f5f7c)?_0x478641=_0x4f5f7c:_0x478641=a0_0x1f0365[_0x1c16be(0x209)](_0x26101d,_0x4f5f7c);const _0x58d8e9=await a0_0x19c700[_0x1c16be(0x227)](_0x478641);if(!_0x58d8e9['isDirectory']())throw new Error('Not\x20a\x20directory:\x20'+_0x478641);const _0x40a11b=this['directoryAccessManager']['validateReadAccess'](_0x478641,_0xa17aea);if(!_0x40a11b['allowed']){this[_0x1c16be(0x1ea)]?.[_0x1c16be(0x19e)]('Directory\x20change\x20blocked:\x20'+_0x40a11b['reason'],{'targetDirectory':_0x478641,'reason':_0x40a11b[_0x1c16be(0x136)],'category':_0x40a11b['category']});throw new Error('Access\x20denied:\x20'+_0x40a11b['reason']);}return{'success':!![],'action':'change-directory','previousDirectory':_0x26101d,'newDirectory':_0x478641,'message':_0x1c16be(0x142)+_0x478641};}catch(_0x14f93a){throw new Error('Failed\x20to\x20change\x20directory\x20to\x20'+_0x4f5f7c+':\x20'+_0x14f93a['message']);}}async['listDirectory'](_0x2d7b8d){const _0x3d1ba7=a0_0x1c8215;try{const _0x134d78=await a0_0x19c700['readdir'](_0x2d7b8d,{'withFileTypes':!![]}),_0x1f5c20=_0x134d78['map'](_0x339ab3=>({'name':_0x339ab3['name'],'type':_0x339ab3[_0x3d1ba7(0x207)]()?_0x3d1ba7(0x18e):'file','isSymlink':_0x339ab3['isSymbolicLink']()}));return{'success':!![],'action':_0x3d1ba7(0x11e),'directory':_0x2d7b8d,'contents':_0x1f5c20,'totalItems':_0x1f5c20['length'],'directories':_0x1f5c20[_0x3d1ba7(0x116)](_0xff1693=>_0xff1693[_0x3d1ba7(0x1a8)]===_0x3d1ba7(0x18e))['length'],'files':_0x1f5c20['filter'](_0x497979=>_0x497979[_0x3d1ba7(0x1a8)]===_0x3d1ba7(0x1df))[_0x3d1ba7(0x10d)],'message':'Listed\x20'+_0x1f5c20['length']+_0x3d1ba7(0x12f)+_0x2d7b8d};}catch(_0x4978ed){throw new Error('Failed\x20to\x20list\x20directory\x20'+_0x2d7b8d+':\x20'+_0x4978ed['message']);}}async['createDirectory'](_0x22eae4,_0x1f5933){const _0x23bbf3=a0_0x1c8215;try{let _0x1ffdb7;return a0_0x1f0365[_0x23bbf3(0x19b)](_0x22eae4)?_0x1ffdb7=_0x22eae4:_0x1ffdb7=a0_0x1f0365[_0x23bbf3(0x209)](_0x1f5933,_0x22eae4),await a0_0x19c700[_0x23bbf3(0x18f)](_0x1ffdb7,{'recursive':!![]}),{'success':!![],'action':'create-directory','directory':_0x1ffdb7,'relativePath':a0_0x1f0365[_0x23bbf3(0x19a)](_0x1f5933,_0x1ffdb7),'message':'Created\x20directory:\x20'+_0x1ffdb7};}catch(_0x47d6bf){throw new Error('Failed\x20to\x20create\x20directory\x20'+_0x22eae4+':\x20'+_0x47d6bf['message']);}}['isBlockedCommand'](_0x109661){const _0x44a61c=a0_0x1c8215,_0x333b6d=_0x109661[_0x44a61c(0x129)]()[_0x44a61c(0x20b)]();return this[_0x44a61c(0x112)][_0x44a61c(0x173)](_0x574af8=>{const _0x454bfa=_0x44a61c,_0x1dfb13=_0x574af8[_0x454bfa(0x129)]();return _0x333b6d===_0x1dfb13||_0x333b6d['startsWith'](_0x1dfb13+'\x20');});}['isAllowedCommand'](_0x17e3a0){const _0x1ca3d3=a0_0x1c8215;if(!this['allowedCommands'])return!![];const _0x1ff900=_0x17e3a0[_0x1ca3d3(0x129)]()['trim'](),_0x5ebc5=_0x1ff900['split']('\x20')[0x0];return this['allowedCommands'][_0x1ca3d3(0x173)](_0x15ef0d=>_0x15ef0d[_0x1ca3d3(0x129)]()===_0x5ebc5||_0x1ff900['startsWith'](_0x15ef0d[_0x1ca3d3(0x129)]()+'\x20'));}[a0_0x1c8215(0x127)](_0x568b7c,_0x176db7,_0x3a4b0f){const _0x52d229=a0_0x1c8215,_0x697474={'timestamp':new Date()['toISOString'](),'agentId':_0x3a4b0f,'action':_0x568b7c[_0x52d229(0x1a8)],'command':_0x568b7c['command']||_0x568b7c['directory'],'success':_0x176db7[_0x52d229(0x1ad)],'executionTime':_0x176db7[_0x52d229(0x1fd)]||0x0,'workingDirectory':_0x176db7[_0x52d229(0x224)]};this[_0x52d229(0x166)]['push'](_0x697474),this[_0x52d229(0x166)]['length']>0x64&&(this['commandHistory']=this['commandHistory'][_0x52d229(0x126)](-0x64));}[a0_0x1c8215(0x16a)](){const _0x414ffe=a0_0x1c8215;return[_0x414ffe(0x239),'change-directory','list-directory','create-directory','get-working-directory'];}[a0_0x1c8215(0x17d)](){const _0x234929=a0_0x1c8215;return{'type':'object','properties':{'actions':{'type':_0x234929(0x14d),'minItems':0x1,'items':{'type':'object','properties':{'type':{'type':'string','enum':this['getSupportedActions']()},'command':{'type':_0x234929(0x19f)},'directory':{'type':_0x234929(0x19f)}},'required':['type']}},'timeout':{'type':'integer','minimum':0x3e8,'maximum':this['timeout']},'async':{'type':'boolean'}},'required':[_0x234929(0x165)]};}[a0_0x1c8215(0xfd)](_0x39b78e=null){const _0x327a42=a0_0x1c8215;if(_0x39b78e)return this[_0x327a42(0x166)][_0x327a42(0x116)](_0x176dc5=>_0x176dc5[_0x327a42(0x18b)]===_0x39b78e);return[...this['commandHistory']];}['clearWorkingDirectory'](_0x40f863){const _0x88a834=a0_0x1c8215;for(const [_0x15d3e4]of this[_0x88a834(0x11f)]){_0x15d3e4[_0x88a834(0x1d2)](_0x40f863+'-')&&this['workingDirectories'][_0x88a834(0x1dd)](_0x15d3e4);}}[a0_0x1c8215(0x124)](_0x5f043c,_0x57e3ef=null){const _0x146a21=a0_0x1c8215,_0x3c648b=_0x5f043c+'-'+(_0x57e3ef||'default');return this[_0x146a21(0x11f)][_0x146a21(0x1fc)](_0x3c648b)||_0x57e3ef||process[_0x146a21(0x187)]();}[a0_0x1c8215(0x22b)](){const _0x411f5c=a0_0x1c8215;this['platformType']=process['platform'];if(process[_0x411f5c(0x23c)]==='win32'){if(process['env'][_0x411f5c(0x105)])this['detectedTerminal']='powershell';else process[_0x411f5c(0x192)][_0x411f5c(0x193)]&&process['env']['SHELL'][_0x411f5c(0x110)]('bash')?this['detectedTerminal']=_0x411f5c(0x1d9):this['detectedTerminal']=_0x411f5c(0x169);}else process[_0x411f5c(0x23c)]===_0x411f5c(0x182)?this[_0x411f5c(0x12d)]=_0x411f5c(0x1d9):this['detectedTerminal']=_0x411f5c(0x1d9);this['logger']?.[_0x411f5c(0x1bf)](_0x411f5c(0x1f3),{'platform':this[_0x411f5c(0x1cd)],'terminal':this['detectedTerminal'],'shell':process[_0x411f5c(0x192)]['SHELL']});}async[a0_0x1c8215(0x12e)](_0x83dff5,_0x15aada={}){const _0x4d4e83=a0_0x1c8215,_0x3e210e=_0x83dff5[_0x4d4e83(0x20b)](),_0x5e88dd=this[_0x4d4e83(0x177)](_0x3e210e);this['logger']?.['info'](_0x4d4e83(0x1a1),{'command':_0x3e210e,'detectedTerminal':_0x5e88dd['detectedTerminal'],'commandType':_0x5e88dd['commandType'],'commandCategory':_0x5e88dd[_0x4d4e83(0x1f5)],'compatible':_0x5e88dd[_0x4d4e83(0x16d)],'issues':_0x5e88dd[_0x4d4e83(0x237)],'suggestedAction':_0x5e88dd['suggestedAction'],'confidence':_0x5e88dd[_0x4d4e83(0x217)]});if(_0x5e88dd['compatible'])return _0x83dff5;let _0x4c6ee6=null;if(this[_0x4d4e83(0x12d)]===_0x4d4e83(0x169))_0x4c6ee6=this[_0x4d4e83(0x1d6)](_0x3e210e);else{if(this[_0x4d4e83(0x12d)]===_0x4d4e83(0x218))_0x4c6ee6=this[_0x4d4e83(0x156)](_0x3e210e);else this[_0x4d4e83(0x12d)]==='bash'&&(_0x4c6ee6=this[_0x4d4e83(0x170)](_0x3e210e));}if(_0x4c6ee6&&this[_0x4d4e83(0x20d)](_0x3e210e))return this[_0x4d4e83(0x1ea)]?.[_0x4d4e83(0x1bf)]('Using\x20simple\x20translation',{'original':_0x83dff5,'translated':_0x4c6ee6,'method':'simple'}),_0x4c6ee6;if(_0x15aada[_0x4d4e83(0x1e9)]||_0x15aada['toolsRegistry']&&_0x15aada[_0x4d4e83(0x18b)]){this[_0x4d4e83(0x1ea)]?.[_0x4d4e83(0x1bf)]('Attempting\x20AI\x20translation\x20for\x20complex\x20command',{'command':_0x83dff5[_0x4d4e83(0x1f6)](0x0,0x64)+'...','hasAiService':!!_0x15aada[_0x4d4e83(0x1e9)],'hasToolsRegistry':!!_0x15aada[_0x4d4e83(0x137)],'agentId':_0x15aada[_0x4d4e83(0x18b)]});try{const _0x49427d=await this['translateCommandWithAI'](_0x83dff5,_0x15aada);if(_0x49427d&&_0x49427d['trim']()!==_0x83dff5[_0x4d4e83(0x20b)]())return this[_0x4d4e83(0x1ea)]?.[_0x4d4e83(0x1bf)]('Using\x20AI\x20translation',{'original':_0x83dff5,'translated':_0x49427d,'method':'ai'}),_0x49427d;else this['logger']?.['warn'](_0x4d4e83(0x1c5),{'original':_0x83dff5,'translated':_0x49427d});}catch(_0x134af1){this[_0x4d4e83(0x1ea)]?.['warn']('AI\x20translation\x20failed,\x20falling\x20back\x20to\x20simple\x20translation',{'original':_0x83dff5,'error':_0x134af1[_0x4d4e83(0xfe)],'stack':_0x134af1['stack']});}}else this[_0x4d4e83(0x1ea)]?.['warn'](_0x4d4e83(0x144),{'hasAiService':!!_0x15aada['aiService'],'hasToolsRegistry':!!_0x15aada[_0x4d4e83(0x137)],'hasAgentId':!!_0x15aada[_0x4d4e83(0x18b)],'contextKeys':Object['keys'](_0x15aada)});return _0x4c6ee6||_0x83dff5;}['isSimpleCommand'](_0x407bac){const _0x95d044=a0_0x1c8215,_0x44fc5a=_0x407bac[_0x95d044(0x129)]();if(_0x407bac[_0x95d044(0x110)]('\x5cn')||_0x407bac[_0x95d044(0x110)]('\x5cr')||_0x407bac['includes']('\x5ct'))return![];if(_0x407bac[_0x95d044(0x110)]('\x0a')||_0x407bac['includes']('\x0d'))return![];if(_0x407bac[_0x95d044(0x110)](_0x95d044(0x232))||_0x407bac['includes']('printf')||_0x407bac[_0x95d044(0x110)](_0x95d044(0x12b)))return![];if(_0x407bac[_0x95d044(0x110)]('def\x20')||_0x407bac['includes']('function\x20')||_0x407bac['includes'](_0x95d044(0x1b6)))return![];if(_0x407bac[_0x95d044(0x110)](_0x95d044(0x21b))&&!_0x407bac[_0x95d044(0x110)](_0x95d044(0x107)))return![];const _0x7e9641=_0x407bac['match'](/'([^']*)'/);if(_0x7e9641&&_0x7e9641[0x1][_0x95d044(0x10d)]>0x32)return![];if(this['detectedTerminal']===_0x95d044(0x169)&&_0x407bac['includes']('>')&&_0x407bac[_0x95d044(0x110)]('/')&&!_0x407bac['includes']('\x5c'))return![];if(_0x407bac[_0x95d044(0x110)]('\x20&&\x20')||_0x407bac[_0x95d044(0x110)](_0x95d044(0x13d))||_0x407bac[_0x95d044(0x110)](';\x20'))return![];if(_0x407bac['includes']('$(')||_0x407bac['includes']('`')||_0x407bac['includes']('{')||_0x407bac[_0x95d044(0x110)]('['))return![];if(_0x44fc5a['includes']('for\x20')||_0x44fc5a[_0x95d044(0x110)](_0x95d044(0x23a))||_0x44fc5a[_0x95d044(0x110)](_0x95d044(0x1a9)))return![];if(_0x44fc5a['includes']('export ')||_0x44fc5a[_0x95d044(0x110)]('source\x20'))return![];if(_0x407bac[_0x95d044(0x110)](_0x95d044(0x1d3))||_0x407bac['includes']('\x20>\x20&'))return![];return!![];}async['translateCommandWithAI'](_0x3cac15,_0x576b09){const _0x5b58b4=a0_0x1c8215;let _0x4cedbe=_0x576b09[_0x5b58b4(0x1e9)];if(!_0x4cedbe&&_0x576b09['toolsRegistry']&&_0x576b09['agentId']){const _0x1b592f=_0x576b09[_0x5b58b4(0x1e4)];_0x1b592f&&_0x1b592f['aiService']&&(_0x4cedbe=_0x1b592f['aiService']);}if(!_0x4cedbe)throw new Error('AI\x20service\x20not\x20available\x20for\x20command\x20translation');const _0x337d44=this['buildTranslationPrompt'](_0x3cac15),_0x10c70a='gpt-4-mini';try{const _0x546e86=await _0x4cedbe[_0x5b58b4(0x1e0)](_0x10c70a,_0x337d44,{'agentId':_0x576b09['agentId'],'temperature':0.1,'maxTokens':0xc8,'apiKey':_0x576b09['apiKey'],'customApiKeys':_0x576b09[_0x5b58b4(0x158)],'platformProvided':_0x576b09[_0x5b58b4(0x10a)]}),_0x3b184d=this['extractTranslatedCommand'](_0x546e86['content']);return this['logger']?.['debug']('AI\x20command\x20translation\x20completed',{'original':_0x3cac15,'translated':_0x3b184d,'model':_0x10c70a,'terminal':this['detectedTerminal']}),_0x3b184d;}catch(_0x335c7a){this[_0x5b58b4(0x1ea)]?.['error'](_0x5b58b4(0x104),{'command':_0x3cac15,'terminal':this['detectedTerminal'],'error':_0x335c7a['message']});throw _0x335c7a;}}[a0_0x1c8215(0x1aa)](_0x2d8750){const _0x310d96=a0_0x1c8215,_0x25c060={'cmd':'Windows\x20Command\x20Prompt\x20(cmd.exe)','powershell':_0x310d96(0x190),'bash':_0x310d96(0x189)},_0x38d91f=_0x25c060[this[_0x310d96(0x12d)]]||this['detectedTerminal'],_0x22fd33=this[_0x310d96(0x177)](_0x2d8750);let _0x322976=_0x310d96(0x106)+_0x38d91f+':\x0a\x0aORIGINAL\x20COMMAND:\x0a```\x0a'+_0x2d8750+_0x310d96(0x1a3)+_0x22fd33['commandType']+'\x0a-\x20Category:\x20'+_0x22fd33[_0x310d96(0x1f5)]+'\x0a-\x20Target\x20Terminal:\x20'+_0x38d91f+'\x0a-\x20Compatibility\x20Issues:\x20'+(_0x22fd33[_0x310d96(0x237)][_0x310d96(0x1e2)](',\x20')||_0x310d96(0x220));return _0x22fd33[_0x310d96(0x231)]==='unix'&&_0x22fd33['alternatives']&&_0x22fd33['alternatives'][this[_0x310d96(0x12d)]]&&(_0x322976+=_0x310d96(0x221)+_0x22fd33[_0x310d96(0x1b4)][this[_0x310d96(0x12d)]]),_0x322976+='\x0a\x0aREQUIREMENTS:\x0a1.\x20Make\x20the\x20command\x20work\x20correctly\x20in\x20'+_0x38d91f+_0x310d96(0x1dc),_0x322976;}['extractTranslatedCommand'](_0x19255c){const _0x522108=a0_0x1c8215;let _0x55a1a0=_0x19255c[_0x522108(0x1f4)](/```[a-z]*\n?(.*?)\n?```/s,'$1');_0x55a1a0=_0x55a1a0[_0x522108(0x1f4)](/^(TRANSLATED COMMAND:|Command:|Result:)\s*/i,'');const _0x253fef=_0x55a1a0['trim']()['split']('\x0a');return _0x253fef[_0x522108(0x10d)]>0x1&&!_0x55a1a0['includes']('&&')&&!_0x55a1a0['includes']('||')&&(_0x55a1a0=_0x253fef[0x0][_0x522108(0x20b)]()),_0x55a1a0['trim']();}['analyzeCommandCompatibility'](_0x58346a){const _0xca8299=a0_0x1c8215,_0x5cf67b=this['classifyCommand'](_0x58346a),_0x49d99c=this[_0xca8299(0x1a7)](_0x5cf67b,this['detectedTerminal']);return{'compatible':_0x49d99c,'detectedTerminal':this[_0xca8299(0x12d)],'commandType':_0x5cf67b[_0xca8299(0x1a8)],'commandCategory':_0x5cf67b['category'],'specificIssues':_0x5cf67b[_0xca8299(0x101)],'suggestedAction':_0x49d99c?'execute':'translate','confidence':_0x5cf67b['confidence']};}['isCommandCompatible'](_0x33ea22){const _0x299209=a0_0x1c8215;return this[_0x299209(0x177)](_0x33ea22)[_0x299209(0x16d)];}['classifyCommand'](_0x52fc5){const _0x52a89d=a0_0x1c8215,_0x29ea7d=_0x52fc5[_0x52a89d(0x129)]()['trim'](),_0x42386f=_0x29ea7d['split']('\x20')[0x0],_0x34bc9a=[];let _0x452fb5=0.9;const _0x1a0794={'ls':{'category':'file-listing','alternatives':{'cmd':'dir','powershell':_0x52a89d(0x23d)}},'cat':{'category':_0x52a89d(0x148),'alternatives':{'cmd':_0x52a89d(0x1a8),'powershell':'Get-Content'}},'grep':{'category':_0x52a89d(0xfb),'alternatives':{'cmd':_0x52a89d(0xfc),'powershell':'Select-String'}},'find':{'category':'file-search','alternatives':{'cmd':_0x52a89d(0x141),'powershell':'Get-ChildItem\x20-Recurse'}},'head':{'category':_0x52a89d(0x148),'alternatives':{'cmd':'more','powershell':_0x52a89d(0x180)}},'tail':{'category':_0x52a89d(0x148),'alternatives':{'cmd':'more\x20+n','powershell':_0x52a89d(0x122)}},'wc':{'category':'text-analysis','alternatives':{'cmd':_0x52a89d(0x11b),'powershell':'Measure-Object'}},'cp':{'category':'file-copy','alternatives':{'cmd':_0x52a89d(0x1c8),'powershell':'Copy-Item'}},'mv':{'category':'file-move','alternatives':{'cmd':'move','powershell':'Move-Item'}},'rm':{'category':'file-delete','alternatives':{'cmd':_0x52a89d(0x236),'powershell':'Remove-Item'}},'mkdir':{'category':'directory-create','alternatives':{'cmd':'mkdir','powershell':_0x52a89d(0x149)}},'rmdir':{'category':'directory-delete','alternatives':{'cmd':'rmdir','powershell':'Remove-Item'}},'touch':{'category':_0x52a89d(0x14c),'alternatives':{'cmd':'type\x20nul\x20>','powershell':'New-Item\x20-Type\x20File'}},'chmod':{'category':_0x52a89d(0x213),'alternatives':{'cmd':'icacls','powershell':_0x52a89d(0x160)}},'chown':{'category':_0x52a89d(0x1b0),'alternatives':{'cmd':_0x52a89d(0x1c9),'powershell':'Set-Acl'}},'ps':{'category':'process-list','alternatives':{'cmd':_0x52a89d(0x150),'powershell':_0x52a89d(0x19c)}},'kill':{'category':_0x52a89d(0x22f),'alternatives':{'cmd':'taskkill','powershell':'Stop-Process'}},'killall':{'category':'process-kill','alternatives':{'cmd':_0x52a89d(0x1c7),'powershell':'Get-Process\x20|\x20Stop-Process'}},'top':{'category':_0x52a89d(0x204),'alternatives':{'cmd':_0x52a89d(0x150),'powershell':'Get-Process\x20|\x20Sort-Object\x20CPU'}},'wget':{'category':'download','alternatives':{'cmd':'curl','powershell':'Invoke-WebRequest'}},'curl':{'category':'http-client','alternatives':{'cmd':'curl','powershell':'Invoke-RestMethod'}},'ping':{'category':'network-test','alternatives':{'cmd':_0x52a89d(0x20a),'powershell':'Test-NetConnection'}},'awk':{'category':_0x52a89d(0x1da),'alternatives':{'cmd':'for\x20/f','powershell':'ForEach-Object'}},'sed':{'category':_0x52a89d(0x15b),'alternatives':{'cmd':'powershell\x20-c','powershell':_0x52a89d(0x1db)}},'sort':{'category':_0x52a89d(0x219),'alternatives':{'cmd':'sort','powershell':'Sort-Object'}},'uniq':{'category':_0x52a89d(0x21a),'alternatives':{'cmd':'sort\x20/unique','powershell':_0x52a89d(0x20c)}},'pwd':{'category':'directory-current','alternatives':{'cmd':'cd','powershell':_0x52a89d(0xff)}},'whoami':{'category':'user-info','alternatives':{'cmd':'echo\x20%USERNAME%','powershell':'whoami'}},'env':{'category':'environment','alternatives':{'cmd':_0x52a89d(0x1c2),'powershell':_0x52a89d(0x161)}},'export':{'category':'environment','alternatives':{'cmd':'set','powershell':_0x52a89d(0x1b7)}},'source':{'category':'script-execute','alternatives':{'cmd':'call','powershell':'.\x20'}},'tar':{'category':_0x52a89d(0x1e5),'alternatives':{'cmd':'7z','powershell':'Compress-Archive'}},'zip':{'category':'archive','alternatives':{'cmd':_0x52a89d(0x1ce),'powershell':_0x52a89d(0x119)}},'unzip':{'category':_0x52a89d(0x1e5),'alternatives':{'cmd':_0x52a89d(0x117),'powershell':_0x52a89d(0x1a6)}},'df':{'category':_0x52a89d(0x230),'alternatives':{'cmd':_0x52a89d(0x229),'powershell':'Get-WmiObject\x20-Class\x20Win32_LogicalDisk'}},'du':{'category':_0x52a89d(0x15f),'alternatives':{'cmd':_0x52a89d(0x141),'powershell':'Get-ChildItem\x20-Recurse\x20|\x20Measure-Object'}},'free':{'category':_0x52a89d(0x1e7),'alternatives':{'cmd':_0x52a89d(0x1d0),'powershell':'Get-WmiObject\x20-Class\x20Win32_PhysicalMemory'}},'uname':{'category':_0x52a89d(0xfa),'alternatives':{'cmd':_0x52a89d(0x1d0),'powershell':'Get-ComputerInfo'}}},_0x5e91f2={'dir':{'category':_0x52a89d(0x133),'alternatives':{'unix':'ls','powershell':_0x52a89d(0x23d)}},'type':{'category':'file-viewing','alternatives':{'unix':'cat','powershell':'Get-Content'}},'copy':{'category':'file-copy','alternatives':{'unix':'cp','powershell':_0x52a89d(0x102)}},'move':{'category':'file-move','alternatives':{'unix':'mv','powershell':'Move-Item'}},'del':{'category':'file-delete','alternatives':{'unix':'rm','powershell':_0x52a89d(0x17c)}},'tasklist':{'category':'process-list','alternatives':{'unix':'ps','powershell':_0x52a89d(0x19c)}},'taskkill':{'category':_0x52a89d(0x22f),'alternatives':{'unix':_0x52a89d(0x176),'powershell':_0x52a89d(0x1af)}},'findstr':{'category':_0x52a89d(0xfb),'alternatives':{'unix':_0x52a89d(0x20e),'powershell':'Select-String'}}},_0x4f0ad0={'get-childitem':{'category':'file-listing','alternatives':{'unix':'ls','cmd':'dir'}},'get-content':{'category':'file-viewing','alternatives':{'unix':_0x52a89d(0x191),'cmd':'type'}},'copy-item':{'category':_0x52a89d(0x10e),'alternatives':{'unix':'cp','cmd':'copy'}},'move-item':{'category':_0x52a89d(0x210),'alternatives':{'unix':'mv','cmd':_0x52a89d(0x164)}},'remove-item':{'category':'file-delete','alternatives':{'unix':'rm','cmd':_0x52a89d(0x236)}},'get-process':{'category':'process-list','alternatives':{'unix':'ps','cmd':'tasklist'}},'stop-process':{'category':_0x52a89d(0x22f),'alternatives':{'unix':_0x52a89d(0x176),'cmd':_0x52a89d(0x153)}}};let _0x5ae579=_0x52a89d(0x208),_0x5d2558='unknown',_0x488a0e={};if(_0x1a0794[_0x42386f])_0x5ae579='unix',_0x5d2558=_0x1a0794[_0x42386f][_0x52a89d(0x1cc)],_0x488a0e=_0x1a0794[_0x42386f]['alternatives'];else{if(_0x5e91f2[_0x42386f])_0x5ae579=_0x52a89d(0x20f),_0x5d2558=_0x5e91f2[_0x42386f][_0x52a89d(0x1cc)],_0x488a0e=_0x5e91f2[_0x42386f][_0x52a89d(0x1b4)];else{if(_0x4f0ad0[_0x42386f])_0x5ae579=_0x52a89d(0x218),_0x5d2558=_0x4f0ad0[_0x42386f]['category'],_0x488a0e=_0x4f0ad0[_0x42386f][_0x52a89d(0x1b4)];else{const _0x2c3695=['echo','cd','exit',_0x52a89d(0x118)];_0x2c3695['includes'](_0x42386f)?(_0x5ae579='universal',_0x5d2558='builtin'):(_0x5ae579='unknown',_0x452fb5=0.3);}}}return _0x52fc5[_0x52a89d(0x110)]('\x27')&&!_0x52fc5[_0x52a89d(0x110)]('\x22')&&_0x34bc9a[_0x52a89d(0x172)](_0x52a89d(0x206)),_0x52fc5[_0x52a89d(0x110)]('/')&&!_0x52fc5['includes']('\x5c')&&!_0x52fc5[_0x52a89d(0x110)](_0x52a89d(0x186))&&_0x52fc5[_0x52a89d(0x110)]('>')&&_0x34bc9a['push'](_0x52a89d(0x211)),(_0x52fc5[_0x52a89d(0x110)]('\x5cn')||_0x52fc5[_0x52a89d(0x110)]('\x5ct'))&&_0x34bc9a['push'](_0x52a89d(0x18a)),(_0x52fc5['includes'](_0x52a89d(0x1fa))||_0x52fc5[_0x52a89d(0x110)]('\x20||\x20')||_0x52fc5['includes'](';'))&&_0x34bc9a['push']('command-chaining'),{'type':_0x5ae579,'category':_0x5d2558,'alternatives':_0x488a0e,'issues':_0x34bc9a,'confidence':_0x452fb5,'firstWord':_0x42386f,'fullCommand':_0x52fc5};}[a0_0x1c8215(0x1a7)](_0x5ba3e6,_0x1119ff){const _0x3ccf51=a0_0x1c8215;switch(_0x1119ff){case _0x3ccf51(0x169):if(_0x5ba3e6['type']===_0x3ccf51(0x17f))return![];if(_0x5ba3e6[_0x3ccf51(0x101)]['includes']('single-quotes-problematic'))return![];if(_0x5ba3e6[_0x3ccf51(0x101)]['includes']('unix-style-paths'))return![];return _0x5ba3e6['type']==='windows-cmd'||_0x5ba3e6['type']==='universal';case _0x3ccf51(0x218):if(_0x5ba3e6['type']==='unix'&&!_0x5ba3e6['alternatives']['powershell'])return![];return!![];case'bash':if(_0x5ba3e6['type']===_0x3ccf51(0x20f))return![];return _0x5ba3e6[_0x3ccf51(0x1a8)]==='unix'||_0x5ba3e6['type']===_0x3ccf51(0x202);default:return![];}}[a0_0x1c8215(0x1d6)](_0x5ecbf4){const _0xd060ee=a0_0x1c8215;let _0xd13c67=_0x5ecbf4;const _0x35d836=new Map([[/^ls\s*$/,_0xd060ee(0x22a)],[/^ls\s+-la?$/,'dir'],[/^ls\s+-l$/,_0xd060ee(0x22a)],[/^ls\s+-a$/,'dir\x20/a'],[/^cat\s+(.+)$/,_0xd060ee(0x1b9)],[/^cp\s+(.+)\s+(.+)$/,'copy\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,_0xd060ee(0x16f)],[/^rm\s+(.+)$/,_0xd060ee(0x152)],[/^mkdir\s+(.+)$/,'mkdir\x20$1'],[/^rmdir\s+(.+)$/,'rmdir\x20$1'],[/^ps\s*$/,_0xd060ee(0x150)],[/^kill\s+(.+)$/,_0xd060ee(0x174)],[/^pwd\s*$/,'cd'],[/^whoami\s*$/,'echo\x20%USERNAME%'],[/^ping\s+(.+)$/,_0xd060ee(0x203)],[/^wget\s+(.+)$/,'curl\x20-O\x20$1'],[/^curl\s+(.+)$/,'curl\x20$1']]);for(const [_0x399845,_0x13ed66]of _0x35d836){if(_0x399845['test'](_0xd13c67)){_0xd13c67=_0xd13c67[_0xd060ee(0x1f4)](_0x399845,_0x13ed66);break;}}_0xd13c67=_0xd13c67['replace'](/echo\s+'([^']+)'\s*>/g,'echo\x20\x22$1\x22\x20>'),_0xd13c67=_0xd13c67['replace'](/echo\s+'([^']+)'$/g,_0xd060ee(0x1a0));if(_0xd13c67[_0xd060ee(0x110)](_0xd060ee(0x21b))&&_0xd13c67['includes']('\x5cn')){const _0x2efd1b=_0xd13c67[_0xd060ee(0x21c)](/echo\s+'(.+?)'\s*>\s*(.+)$/);if(_0x2efd1b){const _0x3a4069=_0x2efd1b[0x1]['replace'](/\\n/g,'\x0a'),_0x28a41a=_0x2efd1b[0x2],_0x3b01a9=_0x3a4069['split']('\x0a');_0xd13c67='('+_0x3b01a9[_0xd060ee(0x146)](_0x21d962=>_0xd060ee(0x125)+_0x21d962)['join'](_0xd060ee(0x235))+_0xd060ee(0x138)+_0x28a41a;}}return this['logger']?.[_0xd060ee(0x1bf)](_0xd060ee(0x155),{'original':_0x5ecbf4,'translated':_0xd13c67}),_0xd13c67;}['translateToPowerShell'](_0x1940de){const _0x37d789=a0_0x1c8215;let _0x3164db=_0x1940de;const _0x247be6=new Map([[/^ls\s*$/,_0x37d789(0x23d)],[/^ls\s+-la?$/,'Get-ChildItem\x20-Force'],[/^cat\s+(.+)$/,_0x37d789(0x1bd)],[/^cp\s+(.+)\s+(.+)$/,'Copy-Item\x20$1\x20$2'],[/^mv\s+(.+)\s+(.+)$/,'Move-Item\x20$1\x20$2'],[/^rm\s+(.+)$/,_0x37d789(0x111)],[/^pwd\s*$/,'Get-Location'],[/^ps\s*$/,'Get-Process']]);for(const [_0x1a2b72,_0x1132a0]of _0x247be6){if(_0x1a2b72['test'](_0x3164db)){_0x3164db=_0x3164db['replace'](_0x1a2b72,_0x1132a0);break;}}return this['logger']?.['info'](_0x37d789(0x13b),{'original':_0x1940de,'translated':_0x3164db}),_0x3164db;}[a0_0x1c8215(0x170)](_0x144243){const _0xc100af=a0_0x1c8215;let _0x50836f=_0x144243;const _0x47f89b=new Map([[/^dir\s*$/,'ls'],[/^dir\s+\/a$/,_0xc100af(0x11a)],[/^type\s+(.+)$/,'cat\x20$1'],[/^copy\s+(.+)\s+(.+)$/,'cp\x20$1\x20$2'],[/^move\s+(.+)\s+(.+)$/,'mv\x20$1\x20$2'],[/^del\s+(.+)$/,'rm\x20$1'],[/^tasklist\s*$/,'ps'],[/^cd\s*$/,_0xc100af(0x139)]]);for(const [_0x4c9b27,_0x316b9b]of _0x47f89b){if(_0x4c9b27[_0xc100af(0x1ef)](_0x50836f)){_0x50836f=_0x50836f['replace'](_0x4c9b27,_0x316b9b);break;}}return _0x50836f;}async[a0_0x1c8215(0x134)](_0x320909){}async['startBackgroundCommand'](_0x25ec77,_0x74f534,_0x40c033={}){const _0x412a67=a0_0x1c8215,{agentId:_0x584f9b,context:_0x360da6}=_0x40c033;if(!_0x584f9b)throw new Error('agentId\x20is\x20required\x20for\x20background\x20commands');const _0x4c5f95=this[_0x412a67(0x1d5)](_0x584f9b),_0x4edd61=_0x4c5f95['filter'](_0x21d9a0=>_0x21d9a0['state']==='running'||_0x21d9a0[_0x412a67(0xf7)]===_0x412a67(0x143));if(_0x4edd61[_0x412a67(0x10d)]>=this[_0x412a67(0x199)])throw new Error(_0x412a67(0x185)+this['MAX_BACKGROUND_COMMANDS_PER_AGENT']+')');const _0x1d91a6=Array[_0x412a67(0x1d4)](this['commandTracker']['values']()),_0x25428a=_0x1d91a6[_0x412a67(0x116)](_0x509731=>_0x509731[_0x412a67(0xf7)]==='running'||_0x509731[_0x412a67(0xf7)]===_0x412a67(0x143));if(_0x25428a[_0x412a67(0x10d)]>=this[_0x412a67(0x162)])throw new Error('Maximum\x20global\x20background\x20commands\x20exceeded\x20('+this['MAX_BACKGROUND_COMMANDS_GLOBAL']+')');const _0x2b4bfc=_0x584f9b+_0x412a67(0x103)+Date['now']()+'-'+ ++this[_0x412a67(0x1e6)],_0x4bd53f=_0x25ec77;let _0x3d4532;try{_0x3d4532=await this[_0x412a67(0x12e)](_0x25ec77,{'agentId':_0x584f9b,'toolsRegistry':_0x360da6?.[_0x412a67(0x137)],'messageProcessor':_0x360da6?.[_0x412a67(0x1e4)],'aiService':_0x360da6?.['aiService'],'apiKey':_0x360da6?.[_0x412a67(0x205)],'customApiKeys':_0x360da6?.['customApiKeys'],'platformProvided':_0x360da6?.['platformProvided']});}catch(_0x566a64){this[_0x412a67(0x1ea)]?.[_0x412a67(0x19e)](_0x412a67(0x18c),{'originalCommand':_0x4bd53f,'error':_0x566a64[_0x412a67(0xfe)]}),_0x3d4532=_0x25ec77;}this['logger']?.['info'](_0x412a67(0x1a5)+_0x3d4532,{'commandId':_0x2b4bfc,'agentId':_0x584f9b,'originalCommand':_0x4bd53f,'workingDirectory':_0x74f534});let _0x9b1249;if(this[_0x412a67(0x12d)]==='cmd'||this[_0x412a67(0x12d)]==='powershell'){const _0x543eac=this[_0x412a67(0x12d)]===_0x412a67(0x218)?'powershell':_0x412a67(0x169),_0x5e4777=this[_0x412a67(0x12d)]===_0x412a67(0x218)?['-Command',_0x3d4532]:['/c',_0x3d4532];_0x9b1249=spawn(_0x543eac,_0x5e4777,{'cwd':_0x74f534,'env':{...process['env']},'windowsHide':!![],'stdio':['pipe',_0x412a67(0x1e1),_0x412a67(0x1e1)]});}else _0x9b1249=spawn('sh',['-c',_0x3d4532],{'cwd':_0x74f534,'env':{...process[_0x412a67(0x192)]},'stdio':['pipe','pipe',_0x412a67(0x1e1)]});const _0x25c9f8={'commandId':_0x2b4bfc,'agentId':_0x584f9b,'pid':_0x9b1249['pid'],'command':_0x4bd53f,'translatedCommand':_0x3d4532,'workingDirectory':_0x74f534,'startTime':new Date()['toISOString'](),'state':'running','exitCode':null,'stdoutBuffer':'','stderrBuffer':'','lastOutputTime':Date[_0x412a67(0x10b)](),'promptDetected':null,'process':_0x9b1249};return this['commandTracker'][_0x412a67(0x1c2)](_0x2b4bfc,_0x25c9f8),_0x9b1249['stdout']['on'](_0x412a67(0x1c0),_0x412ff2=>{const _0x255b11=_0x412a67,_0x574bd7=_0x412ff2[_0x255b11(0x15e)]();_0x25c9f8[_0x255b11(0x10f)]+=_0x574bd7,_0x25c9f8[_0x255b11(0x16b)]=Date[_0x255b11(0x10b)]();if(!_0x25c9f8[_0x255b11(0x1b2)]){const _0x5be28a=this['promptDetector'][_0x255b11(0x159)](_0x25c9f8['stdoutBuffer'],_0x255b11(0x1ac));_0x5be28a&&(_0x25c9f8['promptDetected']=_0x5be28a,_0x25c9f8[_0x255b11(0xf7)]=_0x255b11(0x143),this['logger']?.['info'](_0x255b11(0x1ae),{'commandId':_0x2b4bfc,'agentId':_0x584f9b,'type':_0x5be28a[_0x255b11(0x1a8)],'matchedText':_0x5be28a[_0x255b11(0x188)]}));}}),_0x9b1249['stderr']['on']('data',_0x1f92d2=>{const _0x1d66d8=_0x412a67,_0xa9a907=_0x1f92d2[_0x1d66d8(0x15e)]();_0x25c9f8[_0x1d66d8(0x1e8)]+=_0xa9a907,_0x25c9f8[_0x1d66d8(0x16b)]=Date[_0x1d66d8(0x10b)]();if(!_0x25c9f8['promptDetected']){const _0x48ad1e=this[_0x1d66d8(0x18d)][_0x1d66d8(0x159)](_0x25c9f8[_0x1d66d8(0x1e8)],'stderr');_0x48ad1e&&(_0x25c9f8['promptDetected']=_0x48ad1e,_0x25c9f8[_0x1d66d8(0xf7)]=_0x1d66d8(0x143),this[_0x1d66d8(0x1ea)]?.['info']('Prompt\x20detected\x20in\x20background\x20command\x20stderr',{'commandId':_0x2b4bfc,'agentId':_0x584f9b,'type':_0x48ad1e[_0x1d66d8(0x1a8)],'matchedText':_0x48ad1e[_0x1d66d8(0x188)]}));}}),_0x9b1249['on'](_0x412a67(0x167),(_0xe81b2b,_0x3c12d8)=>{const _0x371edb=_0x412a67;_0x25c9f8[_0x371edb(0x214)]=_0xe81b2b,_0x25c9f8['state']=_0xe81b2b===0x0?'completed':'failed',_0x25c9f8['endTime']=new Date()[_0x371edb(0x1c1)](),this[_0x371edb(0x1ea)]?.[_0x371edb(0x1bf)]('Background\x20command\x20exited',{'commandId':_0x2b4bfc,'agentId':_0x584f9b,'exitCode':_0xe81b2b,'signal':_0x3c12d8,'state':_0x25c9f8['state']});}),_0x9b1249['on'](_0x412a67(0x22e),_0x14291c=>{const _0x56ecd9=_0x412a67;_0x25c9f8['state']=_0x56ecd9(0x1a4),_0x25c9f8[_0x56ecd9(0x22e)]=_0x14291c[_0x56ecd9(0xfe)],_0x25c9f8[_0x56ecd9(0x1ab)]=new Date()[_0x56ecd9(0x1c1)](),this['logger']?.['error']('Background\x20command\x20error',{'commandId':_0x2b4bfc,'agentId':_0x584f9b,'error':_0x14291c[_0x56ecd9(0xfe)]});}),{'success':!![],'commandId':_0x2b4bfc,'pid':_0x9b1249[_0x412a67(0x171)],'command':_0x4bd53f,'translatedCommand':_0x3d4532,'workingDirectory':_0x74f534,'message':'Background\x20command\x20started\x20with\x20ID:\x20'+_0x2b4bfc};}[a0_0x1c8215(0x21d)](_0x12e2d2,_0x578c90,_0x356593){const _0x3d09af=a0_0x1c8215,_0x110896=this['validateCommandOwnership'](_0x12e2d2,_0x356593);if(_0x110896[_0x3d09af(0xf7)]===_0x3d09af(0x1d8)||_0x110896['state']===_0x3d09af(0x1a4))throw new Error('Cannot\x20send\x20input\x20to\x20'+_0x110896[_0x3d09af(0xf7)]+'\x20command');if(!_0x110896[_0x3d09af(0x233)]||_0x110896[_0x3d09af(0x233)]['killed'])throw new Error('Command\x20process\x20is\x20not\x20running');const _0x215140=_0x578c90[_0x3d09af(0x1fb)]('\x0a')?_0x578c90:_0x578c90+'\x0a';return _0x110896['process'][_0x3d09af(0x1b5)][_0x3d09af(0x22d)](_0x215140),this['logger']?.[_0x3d09af(0x1bf)]('Input\x20sent\x20to\x20background\x20command',{'commandId':_0x12e2d2,'agentId':_0x356593,'inputLength':_0x578c90['length']}),_0x110896[_0x3d09af(0xf7)]==='waiting_for_input'&&(_0x110896[_0x3d09af(0xf7)]='running',_0x110896['promptDetected']=null),{'success':!![],'commandId':_0x12e2d2,'message':_0x3d09af(0x132)};}[a0_0x1c8215(0x13f)](_0xdc9b0,_0xb31faa){const _0x4e0256=a0_0x1c8215,_0x497b73=this[_0x4e0256(0x1eb)](_0xdc9b0,_0xb31faa),_0x4dddb2=Date[_0x4e0256(0x10b)]()-_0x497b73[_0x4e0256(0x16b)];return{'success':!![],'commandId':_0xdc9b0,'pid':_0x497b73['pid'],'command':_0x497b73[_0x4e0256(0x154)],'state':_0x497b73[_0x4e0256(0xf7)],'exitCode':_0x497b73['exitCode'],'startTime':_0x497b73[_0x4e0256(0x1ba)],'endTime':_0x497b73[_0x4e0256(0x1ab)],'workingDirectory':_0x497b73[_0x4e0256(0x224)],'stdout':_0x497b73['stdoutBuffer'],'stderr':_0x497b73['stderrBuffer'],'stdoutLength':_0x497b73['stdoutBuffer'][_0x4e0256(0x10d)],'stderrLength':_0x497b73[_0x4e0256(0x1e8)][_0x4e0256(0x10d)],'lastOutputTime':_0x497b73['lastOutputTime'],'timeSinceLastOutput':_0x4dddb2,'promptDetected':!!_0x497b73[_0x4e0256(0x1b2)],'promptInfo':_0x497b73[_0x4e0256(0x1b2)]||undefined};}['killCommand'](_0x3ed522,_0x974af3){const _0x323780=a0_0x1c8215,_0x5d67e6=this['validateCommandOwnership'](_0x3ed522,_0x974af3);if(_0x5d67e6['state']==='completed'||_0x5d67e6[_0x323780(0xf7)]===_0x323780(0x1a4))return{'success':!![],'commandId':_0x3ed522,'message':_0x323780(0x1c6),'state':_0x5d67e6[_0x323780(0xf7)]};if(_0x5d67e6[_0x323780(0x233)]&&!_0x5d67e6['process'][_0x323780(0x147)])return _0x5d67e6[_0x323780(0x233)][_0x323780(0x176)](_0x323780(0x196)),setTimeout(()=>{const _0x356699=_0x323780;_0x5d67e6['process']&&!_0x5d67e6['process']['killed']&&_0x5d67e6[_0x356699(0x233)][_0x356699(0x176)]('SIGKILL');},0x1388),this['logger']?.[_0x323780(0x1bf)]('Background\x20command\x20killed',{'commandId':_0x3ed522,'agentId':_0x974af3}),{'success':!![],'commandId':_0x3ed522,'message':_0x323780(0x1ed)};return{'success':![],'commandId':_0x3ed522,'error':_0x323780(0x163)};}[a0_0x1c8215(0x1ee)](_0x59359a){const _0x1ed793=a0_0x1c8215,_0x1c46a7=this[_0x1ed793(0x1d5)](_0x59359a);return _0x1c46a7[_0x1ed793(0x146)](_0x473bc1=>({'commandId':_0x473bc1[_0x1ed793(0x1be)],'command':_0x473bc1[_0x1ed793(0x154)],'state':_0x473bc1['state'],'pid':_0x473bc1[_0x1ed793(0x171)],'exitCode':_0x473bc1[_0x1ed793(0x214)],'startTime':_0x473bc1['startTime'],'endTime':_0x473bc1['endTime'],'promptDetected':!!_0x473bc1[_0x1ed793(0x1b2)],'timeSinceLastOutput':Date[_0x1ed793(0x10b)]()-_0x473bc1[_0x1ed793(0x16b)]}));}['getAgentCommands'](_0xe57249){const _0x1a6841=a0_0x1c8215;return Array[_0x1a6841(0x1d4)](this['commandTracker']['values']())['filter'](_0x17c975=>_0x17c975[_0x1a6841(0x18b)]===_0xe57249);}[a0_0x1c8215(0x1eb)](_0x9d1e36,_0x26ed3a){const _0x249ca1=a0_0x1c8215,_0x4b3de5=this['commandTracker']['get'](_0x9d1e36);if(!_0x4b3de5)throw new Error('Command\x20not\x20found:\x20'+_0x9d1e36);if(_0x4b3de5[_0x249ca1(0x18b)]!==_0x26ed3a)throw new Error(_0x249ca1(0x130)+_0x4b3de5['agentId']);return _0x4b3de5;}async[a0_0x1c8215(0x120)](_0x45afd3){const _0x42874d=a0_0x1c8215,_0x40c906=this[_0x42874d(0x1d5)](_0x45afd3);let _0x27021b=0x0,_0x4feef8=0x0;for(const _0x5467c9 of _0x40c906){_0x5467c9[_0x42874d(0x233)]&&!_0x5467c9['process']['killed']&&(_0x5467c9[_0x42874d(0x233)][_0x42874d(0x176)]('SIGTERM'),_0x27021b++,setTimeout(()=>{const _0x422f86=_0x42874d;_0x5467c9['process']&&!_0x5467c9['process'][_0x422f86(0x147)]&&_0x5467c9[_0x422f86(0x233)]['kill'](_0x422f86(0x17a));},0xbb8)),this[_0x42874d(0x109)]['delete'](_0x5467c9[_0x42874d(0x1be)]),_0x4feef8++;}return this['logger']?.['info'](_0x42874d(0x197),{'agentId':_0x45afd3,'killedCount':_0x27021b,'removedCount':_0x4feef8}),{'success':!![],'agentId':_0x45afd3,'killedCount':_0x27021b,'removedCount':_0x4feef8,'message':'Cleaned\x20up\x20'+_0x4feef8+_0x42874d(0x1ca)+_0x45afd3};}[a0_0x1c8215(0x21e)](){const _0x658173=a0_0x1c8215,_0x109abe=Date[_0x658173(0x10b)]();let _0x4f08d0=0x0;for(const [_0x4d40cc,_0x1c00c5]of this[_0x658173(0x109)][_0x658173(0x1a2)]()){if(_0x1c00c5['state']!==_0x658173(0x1d8)&&_0x1c00c5['state']!==_0x658173(0x1a4))continue;const _0xa6f5cf=new Date(_0x1c00c5['startTime'])[_0x658173(0x238)](),_0x4aa5ce=(_0x109abe-_0xa6f5cf)/0x3e8/0x3c;_0x4aa5ce>this[_0x658173(0x215)]&&(this[_0x658173(0x109)][_0x658173(0x1dd)](_0x4d40cc),_0x4f08d0++);}return _0x4f08d0>0x0&&this['logger']?.[_0x658173(0x1bf)](_0x658173(0x184),{'removedCount':_0x4f08d0,'ageThresholdMinutes':this[_0x658173(0x215)]}),{'success':!![],'removedCount':_0x4f08d0,'message':'Cleaned\x20up\x20'+_0x4f08d0+'\x20stale\x20commands'};}}export default TerminalTool;
|
package/src/tools/webTool.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x3b0521=a0_0x55c6;function a0_0x384d(){const _0x5d64c4=['yNjVD3nLCG','C2XPy2u','z2v0lxnVDxjJzq','DgLTzw91Da','AgfZ','AxndB25Uzwn0zwq','CMvXDwLYzxnqCM9Qzwn0','vgfIicC','yM9KEq','y29UC29Szu1LC3nHz2vZ','AhjLzG','DgL0Bgu','Dgv4DenVBNrLBNq','DxjSigLZihjLCxvPCMvKigzVCIbMzxrJAcbVCgvYyxrPB24','D2fPDc1MB3i','zxHLyW','i2XPBMTZlcbBzgf0ys10zxn0Awq9iM1HAw5SAw5LiL0','C3rHCNrZv2L0Aa','yNjVD3nLCKLUAxrPywXPEMLUzW','ls1KAxnHyMXLlwfJy2vSzxjHDgvKltjKlwnHBNzHCW','u3DPDgnOzwqGDg8GDgfIicC','CxvLCNKGAxmGCMvXDwLYzwqGzM9YihnLyxjJAcbVCgvYyxrPB24','zgLYzwn0B3j5qwnJzxnZ','Aw5UzxjuzxH0','zNjVBq','mJK2nZe1nu1lzxrPDW','u2vHCMnOihf1zxj5igLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','nZy0mtK3DgLQz2XX','q2XVC2vKigLKBguGDgfI','D2fPDezVCLnLBgvJDg9Y','BMv0D29YA2LKBguY','BMf2AwDHDgu','y2XLyw51CfrPBwvY','y2XVC2u','C3DPDgnOvgfI','y2XPy2S','C2L6zq','C2vSzwn0B3i','ChvZAa','y2XVC2vuywi','DgfRzvnJCMvLBNnOB3q','CgfYC2vby3rPB25Z','C2nYzwvUC2HVDa','ywn0Aw9UCW','jYbHBhjLywr5igv4Axn0CYbMB3iGywDLBNqG','DgfIswrSzvrPBwvVDxq','zxjYB3i','zw5ZDxjLvgvTCerPCG','D2vI','B3bLBI10ywi','z2v0lwnVBNnVBgu','D2fYBG','zxH0CMfJDenVBNrLBNq','qNjVD3nLCIbPBML0AwfSAxPHDgLVBIbMywLSzwq6ia','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','z290BW','CxvLCNLtzwXLy3rVCG','BgvUz3rO','Aw5MBW','z2v0','yvTOCMvMxq','ls1KAxnHyMXLlxnLDhvPzc1Zyw5KyM94','ls11C2vYlwfNzw50pu1VEMLSBgeVns4WicHxAw5KB3DZie5uideWlJa7ifDPBJy0oYb4nJqPiefWCgXLv2vIs2L0lZuZnY4ZnIaOs0HutuWSigXPA2uGr2vJA28PienOCM9Tzs8XmJaUmc4WlJaGu2fMyxjPlZuZnY4ZnG','BM93','DhjPBq','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbZy3jLzw5ZAg90igfUywX5C2LZ','z29Vz2XL','CMvZDwX0C1nLBgvJDg9Y','yMLUzW','ls1UBY1Zyw5KyM94','zxH0CMfJDc1SAw5RCW','AgvHzgXLC3m','zMLSDgvY','C2vHCMnO','ig11C3qGyMuGzxHLy3v0zwqGD2L0AgLUigeGDgfIignVBNrLEhqGkhvZzsbVCgvUlxrHyIb3AxrOig5LC3rLzefJDgLVBNmP','C3rHCNrdBgvHBNvWvgLTzxi','vevnuf9esvi','y2XVC2vZDa','C2nYB2XSsw50B1zPzxC','kfTEpL0Qks8+','BwfW','mJK2ndmZmZbiyLbIr0q','zw5NAw5L','BMfTzq','ywDLBNruywjZ','vw5RBM93BIbHy3rPB24GDhLWztOG','Bw9KzwW','y29UDgvUDa','zMv0y2G','zgvSzxrL','zw50CMLLCW','A2v5','mtCYnZyYoej3yK1HCG','Ag92zxi','Dgv4Da','zM9YBwf0CW','Bw91C2uTBw92zq','nte2nZyXnMfqse52Eq','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','Aw5WDxrBBMfTzt0ICsjD','CMf3q29UDgvUDa','mZmWEwXKsufX','zxHLy3v0zvrHyKfJDgLVBG','Bg9Nz2vY','y2XLyw51CeLKBgvuywjZ','C3DPDgnOlxrHyG','qw5HBhL6Aw5NihnJCMvLBNnOB3qGD2L0Acbbsq','lNbUzW','rMfPBgvKihrVigLUAxrPywXPEMuGyNjVD3nLCG','otiXoda3C1PQuNDn','C2v0vMLLD3bVCNq','rMfPBgvKihrVignYzwf0zsb0zw1WigrPCMvJDg9YEq','y29UC29Szq','yw5HBhL6zvnJCMvLBNnOB3q','jYbUB3qGzM91BMqGzM9YigfNzw50ia','q0Xfqu5vuf9jtLrfuLzbta','C2vHCMnOrw5NAw5LCW','revgqvvmvf9usu1ft1vu','DhLWzq','Aw50zxjHy3rPDMu','q2XVC2vKia','Ahr0Chm6lY93D3CUz29Vz2XLlMnVBs9ZzwfYy2G/Ct0','ywLtzxj2AwnL','y2XLyw51CeLUDgvYDMfS','Bgf1BMnO','C2v0','yxbPs2v5','ntq1nurXwLjIDa','Aw5JBhvKzxm','AM9PBG','BgfZDefJDgL2Axr5','CgfYC2u','nNveu3HMvG','Bwf4lxjLC3vSDhm','zw5ZDxjLqNjVD3nLCG','ChjLC3m','vw5RBM93BIbVCgvYyxrPB246ia','DMfSDwu','B3bLCMf0Aw9U','mta0v2vUrfHb','CxvLCNLtzwXLy3rVCKfSBa','ywn0Aw9UCYbHCNjHEsbPCYbYzxf1AxjLzcbMB3iGAw50zxjHy3rPDMuGB3bLCMf0Aw9U','BgLZDc10ywjZ','i2jFCMvZDwX0CW','zxH0CMfJDc10zxH0','C3rYAw5N','uhvWCgv0zwvYigjYB3DZzxiGAw5PDgLHBgL6zwqGC3vJy2vZC2z1BgX5','zxHLy3v0zq','DxjS','C3vIC3rYAw5N','z2v0rgvZy3jPChrPB24','CgfYC2vozxn0zwrby3rPB25Z','vefcx0LetevFveLnru9vva','CgfNzq','y2XLyw51CefNzw50','Aw5WDxrBDhLWzt0IC3vIBwL0iL0','AxnbC3LUyW','ywDLBNrjza','lIbbDMfPBgfIBgu6ia','ls1KAxnHyMXLlwjSAw5RlwzLyxr1CMvZpuf1Dg9TyxrPB25dB250CM9SBgvK','BMv3ugfNzq','AhrTBa','ihrHyNmGzM9YigfNzw50ia','CxvLCNK','yMfZzty0','zxzHBhvHDgu','BwvZC2fNzq','D2fPDfnLBgvJDg9Y','lMCSic5Ix2fSz28Sic5Yzxn1Bhq'];a0_0x384d=function(){return _0x5d64c4;};return a0_0x384d();}(function(_0x4c71d4,_0x53417a){const _0x10bbb4=a0_0x55c6,_0x5abf28=_0x4c71d4();while(!![]){try{const _0x20201c=parseInt(_0x10bbb4(0x191))/0x1*(parseInt(_0x10bbb4(0x220))/0x2)+-parseInt(_0x10bbb4(0x217))/0x3+parseInt(_0x10bbb4(0x21c))/0x4+parseInt(_0x10bbb4(0x1d4))/0x5*(parseInt(_0x10bbb4(0x196))/0x6)+parseInt(_0x10bbb4(0x1d6))/0x7+-parseInt(_0x10bbb4(0x19d))/0x8*(-parseInt(_0x10bbb4(0x228))/0x9)+-parseInt(_0x10bbb4(0x20c))/0xa;if(_0x20201c===_0x53417a)break;else _0x5abf28['push'](_0x5abf28['shift']());}catch(_0x4e08e6){_0x5abf28['push'](_0x5abf28['shift']());}}}(a0_0x384d,0xa772f));import{BaseTool}from'./baseTool.js';import a0_0x19dc5b from'../utilities/tagParser.js';import a0_0x539b53 from'puppeteer';import a0_0x4eaec9 from'path';import a0_0x4082ba from'fs/promises';import a0_0x371d06 from'os';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class WebTool extends BaseTool{constructor(_0x2ae2fa={},_0x2a5bec=null){const _0x17ad7d=a0_0x55c6;super(_0x2ae2fa,_0x2a5bec),this[_0x17ad7d(0x1c1)]=![],this[_0x17ad7d(0x1ae)]=!![],this[_0x17ad7d(0x1bb)]=null,this[_0x17ad7d(0x1cd)]=![],this['agentTabs']=new Map(),this[_0x17ad7d(0x186)]=[{'name':'google','url':_0x17ad7d(0x18b),'searchSelector':'input[name=\x22q\x22]','submitSelector':'input[type=\x22submit\x22],\x20button[type=\x22submit\x22]','resultsSelector':'#search\x20.g\x20a,\x20#search\x20a[href]','waitSelector':'#search'},{'name':_0x17ad7d(0x1ff),'url':'https://www.bing.com/search?q=','searchSelector':_0x17ad7d(0x21e),'submitSelector':_0x17ad7d(0x1ad),'resultsSelector':'.b_algo\x20a','waitSelector':_0x17ad7d(0x1a1)},{'name':'duckduckgo','url':'https://duckduckgo.com/?q=','searchSelector':'input[name=\x22q\x22]','submitSelector':'button[type=\x22submit\x22]','resultsSelector':'.result__a,\x20a[data-testid=\x22result-title-a\x22]','waitSelector':_0x17ad7d(0x1cb)}],this['TAB_IDLE_TIMEOUT']=_0x2ae2fa[_0x17ad7d(0x1e8)]||0x3c*0x3c*0x3e8,this[_0x17ad7d(0x185)]=_0x2ae2fa[_0x17ad7d(0x18d)]||0x5*0x3c*0x3e8,this[_0x17ad7d(0x187)]=_0x2ae2fa['defaultTimeout']||0xea60,this['TEMP_DIR']=_0x2ae2fa['tempDir']||a0_0x4eaec9[_0x17ad7d(0x193)](a0_0x371d06['tmpdir'](),'webtool-screenshots'),this['cleanupTimer']=null,this[_0x17ad7d(0x206)](),this[_0x17ad7d(0x1ea)]();}[a0_0x3b0521(0x1a8)](){return'\x0aWeb\x20Tool:\x20Browse,\x20search,\x20and\x20automate\x20web\x20interactions\x20using\x20Puppeteer.\x0a\x0aUSAGE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22search|fetch|interactive\x22,\x0a\x20\x20\x22parameters\x22:\x20{...}\x0a}\x0a```\x0a\x0aOPERATIONS:\x0a\x0a1.\x20SEARCH:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22search\x22,\x0a\x20\x20\x22query\x22:\x20\x22search\x20terms\x22,\x0a\x20\x20\x22engine\x22:\x20\x22google\x22,\x0a\x20\x20\x22maxResults\x22:\x2010\x0a}\x0a```\x0a\x0a2.\x20FETCH:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22fetch\x22,\x0a\x20\x20\x22url\x22:\x20\x22https://example.com\x22,\x0a\x20\x20\x22formats\x22:\x20[\x22title\x22,\x20\x22text\x22,\x20\x22links\x22]\x0a}\x0a```\x0a\x0a3.\x20INTERACTIVE:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22interactive\x22,\x0a\x20\x20\x22headless\x22:\x20true,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22open-tab\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22main\x22,\x0a\x20\x20\x20\x20\x20\x20\x22url\x22:\x20\x22https://example.com\x22,\x0a\x20\x20\x20\x20\x20\x20\x22nestedActions\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22wait-for\x22,\x20\x22selector\x22:\x20\x22.content\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22click\x22,\x20\x22selector\x22:\x20\x22button.submit\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22screenshot\x22,\x20\x22format\x22:\x20\x22file\x22,\x20\x22path\x22:\x20\x22result.png\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22extract-text\x22,\x20\x22selector\x22:\x20\x22#content\x22}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20},\x0a\x20\x20\x20\x20{\x22type\x22:\x20\x22close-tab\x22,\x20\x22name\x22:\x20\x22main\x22}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSUPPORTED\x20ACTIONS:\x0a-\x20open-tab,\x20close-tab,\x20switch-tab,\x20list-tabs\x0a-\x20navigate,\x20click,\x20type,\x20press\x0a-\x20wait-for,\x20screenshot,\x20analyze-screenshot\x0a-\x20extract-text,\x20extract-links,\x20get-source\x0a-\x20scroll,\x20hover\x0a\x0aEXAMPLES:\x0a\x0aSearch\x20Google:\x0a```json\x0a{\x22toolId\x22:\x20\x22web\x22,\x20\x22operation\x22:\x20\x22search\x22,\x20\x22query\x22:\x20\x22puppeteer\x20tutorial\x22,\x20\x22maxResults\x22:\x205}\x0a```\x0a\x0aFetch\x20page\x20content:\x0a```json\x0a{\x22toolId\x22:\x20\x22web\x22,\x20\x22operation\x22:\x20\x22fetch\x22,\x20\x22url\x22:\x20\x22https://example.com\x22,\x20\x22formats\x22:\x20[\x22text\x22,\x20\x22links\x22]}\x0a```\x0a\x0aAutomate\x20workflow:\x0a```json\x0a{\x0a\x20\x20\x22toolId\x22:\x20\x22web\x22,\x0a\x20\x20\x22operation\x22:\x20\x22interactive\x22,\x0a\x20\x20\x22actions\x22:\x20[\x0a\x20\x20\x20\x20{\x0a\x20\x20\x20\x20\x20\x20\x22type\x22:\x20\x22open-tab\x22,\x0a\x20\x20\x20\x20\x20\x20\x22name\x22:\x20\x22search\x22,\x0a\x20\x20\x20\x20\x20\x20\x22url\x22:\x20\x22https://github.com/trending\x22,\x0a\x20\x20\x20\x20\x20\x20\x22nestedActions\x22:\x20[\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22wait-for\x22,\x20\x22selector\x22:\x20\x22.Box-row\x22},\x0a\x20\x20\x20\x20\x20\x20\x20\x20{\x22type\x22:\x20\x22extract-links\x22,\x20\x22selector\x22:\x20\x22.Box-row\x20a\x22}\x0a\x20\x20\x20\x20\x20\x20]\x0a\x20\x20\x20\x20}\x0a\x20\x20]\x0a}\x0a```\x0a\x0aSECURITY:\x0a-\x20Browser\x20isolated\x20per\x20agent\x0a-\x20Tabs\x20auto-close\x20after\x201\x20hour\x0a\x20\x20\x20\x20';}['parseParameters'](_0x16575f){const _0x1d429b=a0_0x3b0521;try{if(_0x16575f[_0x1d429b(0x1fb)]()[_0x1d429b(0x1cc)]('{'))return JSON[_0x1d429b(0x195)](_0x16575f);const _0x4eddaa={},_0x336a27=a0_0x19dc5b['extractContent'](_0x16575f,'operation');_0x336a27['length']>0x0&&(_0x4eddaa[_0x1d429b(0x19c)]=_0x336a27[0x0]['trim']());switch(_0x4eddaa['operation']){case'search':_0x4eddaa['query']=a0_0x19dc5b['extractContent'](_0x16575f,'query')[0x0]?.['trim'](),_0x4eddaa['engine']=a0_0x19dc5b['extractContent'](_0x16575f,_0x1d429b(0x20d))[0x0]?.[_0x1d429b(0x1fb)]()||_0x1d429b(0x1fd);const _0xe24158=a0_0x19dc5b['extractContent'](_0x16575f,_0x1d429b(0x197))[0x0]?.[_0x1d429b(0x1fb)]();_0x4eddaa['maxResults']=_0xe24158?parseInt(_0xe24158,0xa):0xa;break;case'fetch':_0x4eddaa['url']=a0_0x19dc5b[_0x1d429b(0x1ef)](_0x16575f,_0x1d429b(0x1a6))[0x0]?.['trim']();const _0x409963=a0_0x19dc5b[_0x1d429b(0x1ef)](_0x16575f,'format')[0x0]?.[_0x1d429b(0x1fb)]();_0x4eddaa[_0x1d429b(0x21a)]=_0x409963?_0x409963['split'](',')[_0x1d429b(0x20b)](_0xb16f95=>_0xb16f95['trim']()):['title','text'];break;case'interactive':const _0x159967=a0_0x19dc5b[_0x1d429b(0x1ef)](_0x16575f,'headless')[0x0]?.['trim']();_0x4eddaa[_0x1d429b(0x202)]=_0x159967!=='false';const _0xc13069=a0_0x19dc5b[_0x1d429b(0x1ef)](_0x16575f,'actions')[0x0];_0xc13069&&(_0x4eddaa[_0x1d429b(0x1e6)]=this[_0x1d429b(0x1e4)](_0xc13069));break;}return _0x4eddaa[_0x1d429b(0x21f)]=_0x16575f[_0x1d429b(0x1fb)](),_0x4eddaa;}catch(_0x4d2f05){throw new Error('Failed\x20to\x20parse\x20web\x20tool\x20parameters:\x20'+_0x4d2f05['message']);}}[a0_0x3b0521(0x1e4)](_0x4429f5){const _0x13d693=a0_0x3b0521,_0x4a3085=[],_0x3e4884=/<open-tab[^>]*name="([^"]+)"[^>]*>([\s\S]*?)<\/open-tab>/g;let _0x4501;while((_0x4501=_0x3e4884['exec'](_0x4429f5))!==null){const [,_0x2517bb,_0xdd3655]=_0x4501,_0x474be1=a0_0x19dc5b[_0x13d693(0x1ef)](_0xdd3655,_0x13d693(0x1da))[0x0]?.['trim']();_0x4a3085['push']({'type':_0x13d693(0x1ec),'name':_0x2517bb,'url':_0x474be1,'nestedActions':this[_0x13d693(0x1a9)](_0xdd3655)});}const _0x57d665=['close-tab',_0x13d693(0x224),'list-tabs','navigate',_0x13d693(0x1de),'type','press','wait-for',_0x13d693(0x1e5),'analyze-screenshot',_0x13d693(0x1a2),_0x13d693(0x201),_0x13d693(0x1bd),_0x13d693(0x1ed),'scroll','hover',_0x13d693(0x21b)];for(const _0x46a2d7 of _0x57d665){const _0x7ec2c7=new RegExp('<'+_0x46a2d7+'([^>]*)>([^<]*)</'+_0x46a2d7+'>','g');let _0x1f11fd;while((_0x1f11fd=_0x7ec2c7[_0x13d693(0x1ca)](_0x4429f5))!==null){const [,_0x20d041,_0x3285e4]=_0x1f11fd,_0x2c3f69={'type':_0x46a2d7},_0x311a2b=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x1f9ea0;while((_0x1f9ea0=_0x311a2b[_0x13d693(0x1ca)](_0x20d041))!==null){_0x2c3f69[_0x1f9ea0[0x1]]=_0x1f9ea0[0x2];}_0x3285e4&&_0x3285e4[_0x13d693(0x1fb)]()&&(_0x2c3f69[_0x13d693(0x19b)]=_0x3285e4['trim']()),_0x4a3085[_0x13d693(0x1e1)](_0x2c3f69);}}return _0x4a3085;}[a0_0x3b0521(0x1a9)](_0x511532){const _0x40615d=a0_0x3b0521,_0x2e9c75=[],_0x28c961=[_0x40615d(0x1da),'click','type',_0x40615d(0x199),'wait-for','screenshot','analyze-screenshot','extract-text','extract-links','get-source',_0x40615d(0x1ed),'scroll',_0x40615d(0x218),_0x40615d(0x21b)];for(const _0x1f005d of _0x28c961){const _0x9bd8c1=new RegExp('<'+_0x1f005d+'([^>]*)>([^<]*)</'+_0x1f005d+'>|<'+_0x1f005d+_0x40615d(0x20a),'g');let _0x2e8b37;while((_0x2e8b37=_0x9bd8c1[_0x40615d(0x1ca)](_0x511532))!==null){const [,_0x1c7b91,_0x469faa,_0x4806f8]=_0x2e8b37,_0x278c8c=_0x1c7b91||_0x4806f8||'',_0x216652={'type':_0x1f005d},_0x56be3b=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x1d89a6;while((_0x1d89a6=_0x56be3b[_0x40615d(0x1ca)](_0x278c8c))!==null){_0x216652[_0x1d89a6[0x1]]=_0x1d89a6[0x2];}_0x469faa&&_0x469faa['trim']()&&(_0x216652['value']=_0x469faa[_0x40615d(0x1fb)]()),_0x2e9c75['push'](_0x216652);}}return _0x2e9c75;}[a0_0x3b0521(0x1f1)](){const _0x1d1347=a0_0x3b0521;return[_0x1d1347(0x19c)];}[a0_0x3b0521(0x21d)](_0x437e4c){const _0x4d4ca0=a0_0x3b0521,_0x586e7f=[];if(![_0x4d4ca0(0x204),_0x4d4ca0(0x213),'interactive'][_0x4d4ca0(0x192)](_0x437e4c[_0x4d4ca0(0x19c)]))return _0x586e7f['push']('operation\x20must\x20be\x20one\x20of:\x20search,\x20fetch,\x20interactive'),{'valid':![],'errors':_0x586e7f};switch(_0x437e4c['operation']){case'search':!_0x437e4c[_0x4d4ca0(0x1b5)]&&_0x586e7f['push'](_0x4d4ca0(0x1d0));break;case'fetch':!_0x437e4c[_0x4d4ca0(0x1a6)]&&_0x586e7f[_0x4d4ca0(0x1e1)](_0x4d4ca0(0x1c8));break;case _0x4d4ca0(0x189):(!_0x437e4c[_0x4d4ca0(0x1e6)]||!Array['isArray'](_0x437e4c[_0x4d4ca0(0x1e6)])||_0x437e4c[_0x4d4ca0(0x1e6)]['length']===0x0)&&_0x586e7f['push'](_0x4d4ca0(0x19f));break;}return{'valid':_0x586e7f[_0x4d4ca0(0x1f4)]===0x0,'errors':_0x586e7f};}async[a0_0x3b0521(0x1a5)](_0x185fe7,_0x2a8926){const _0x171955=a0_0x3b0521,_0x11e2f2={};for(const [_0x1f5e59,_0x5a2371]of Object[_0x171955(0x215)](_0x185fe7)){_0x5a2371&&typeof _0x5a2371==='object'&&'value'in _0x5a2371?_0x11e2f2[_0x1f5e59]=_0x5a2371[_0x171955(0x19b)]:_0x11e2f2[_0x1f5e59]=_0x5a2371;}_0x185fe7=_0x11e2f2;const {operation:_0x3f6426}=_0x185fe7,{agentId:_0x27b7a2}=_0x2a8926;try{await this[_0x171955(0x198)]();let _0x5a4004;switch(_0x3f6426){case'search':_0x5a4004=await this['search'](_0x185fe7[_0x171955(0x1b5)],{'engine':_0x185fe7['engine']||'google','maxResults':_0x185fe7['maxResults']||0xa,'agentId':_0x27b7a2});break;case _0x171955(0x213):_0x5a4004=await this['fetch'](_0x185fe7[_0x171955(0x1a6)],{'formats':_0x185fe7[_0x171955(0x21a)]||['title',_0x171955(0x219)],'agentId':_0x27b7a2});break;case'interactive':_0x5a4004=await this[_0x171955(0x189)](_0x185fe7['actions'],{'headless':_0x185fe7['headless']!==![],'agentId':_0x27b7a2,'context':_0x2a8926});break;default:throw new Error(_0x171955(0x19a)+_0x3f6426);}return{'success':!![],'operation':_0x3f6426,'result':_0x5a4004,'toolUsed':_0x171955(0x1eb)};}catch(_0x43d8f4){return this[_0x171955(0x222)]?.['error']('Web\x20tool\x20execution\x20failed',{'operation':_0x3f6426,'error':_0x43d8f4['message'],'agentId':_0x27b7a2}),{'success':![],'operation':_0x3f6426,'error':_0x43d8f4[_0x171955(0x1b8)],'toolUsed':_0x171955(0x1eb)};}}async[a0_0x3b0521(0x198)](){const _0x5db2e8=a0_0x3b0521;if(this[_0x5db2e8(0x1bb)]&&this[_0x5db2e8(0x1bb)][_0x5db2e8(0x1c0)]())return;if(this['browserInitializing']){while(this[_0x5db2e8(0x1cd)]){await new Promise(_0x5ba894=>setTimeout(_0x5ba894,0x64));}return;}this[_0x5db2e8(0x1cd)]=!![];try{this['logger']?.[_0x5db2e8(0x1f5)]('Initializing\x20Puppeteer\x20browser'),this['browser']=await a0_0x539b53[_0x5db2e8(0x18e)]({'headless':'new','args':[_0x5db2e8(0x200),_0x5db2e8(0x1f8),'--disable-dev-shm-usage',_0x5db2e8(0x1ce),'--disable-gpu',_0x5db2e8(0x1b1),_0x5db2e8(0x1f9)]}),this[_0x5db2e8(0x222)]?.['info'](_0x5db2e8(0x1a4));}catch(_0x2c55cb){this[_0x5db2e8(0x222)]?.['error'](_0x5db2e8(0x227),{'error':_0x2c55cb[_0x5db2e8(0x1b8)]});throw new Error(_0x5db2e8(0x1f0)+_0x2c55cb[_0x5db2e8(0x1b8)]);}finally{this['browserInitializing']=![];}}async[a0_0x3b0521(0x204)](_0x40a538,_0x5347d4={}){const _0x49bdb8=a0_0x3b0521,{engine:engine='google',maxResults:maxResults=0xa,agentId:_0x4b4206}=_0x5347d4;if(!_0x40a538||typeof _0x40a538!==_0x49bdb8(0x1a3)||_0x40a538[_0x49bdb8(0x1fb)]()[_0x49bdb8(0x1f4)]===0x0)throw new Error(_0x49bdb8(0x1d5));const _0x5c4d2e=this['searchEngines']['find'](_0x1effdc=>_0x1effdc['name']===engine);if(!_0x5c4d2e)throw new Error('Unknown\x20search\x20engine:\x20'+engine+_0x49bdb8(0x1b0)+this[_0x49bdb8(0x186)]['map'](_0x136a2e=>_0x136a2e['name'])[_0x49bdb8(0x193)](',\x20'));await this['ensureBrowser'](),this[_0x49bdb8(0x222)]?.[_0x49bdb8(0x1f5)]('Performing\x20web\x20search',{'query':_0x40a538,'engine':engine,'agentId':_0x4b4206});const _0x5989bb=await this[_0x49bdb8(0x1bb)][_0x49bdb8(0x1b2)]();try{const _0x4bf77e=''+_0x5c4d2e['url']+encodeURIComponent(_0x40a538);await _0x5989bb['goto'](_0x4bf77e,{'waitUntil':_0x49bdb8(0x1d9),'timeout':this[_0x49bdb8(0x187)]}),await _0x5989bb[_0x49bdb8(0x1d8)](_0x5c4d2e[_0x49bdb8(0x1b9)],{'timeout':this[_0x49bdb8(0x187)]});const _0x53a685=await _0x5989bb[_0x49bdb8(0x1b7)]((_0x6decbb,_0x335f77)=>{const _0x1961de=_0x49bdb8,_0x3d6a10=Array[_0x1961de(0x1d3)](document[_0x1961de(0x19e)](_0x6decbb));return _0x3d6a10[_0x1961de(0x1bc)](0x0,_0x335f77)[_0x1961de(0x20b)](_0x4b087f=>({'url':_0x4b087f['href'],'title':_0x4b087f[_0x1961de(0x1c7)]['trim'](),'description':_0x4b087f[_0x1961de(0x208)](_0x1961de(0x1ba))?.[_0x1961de(0x1c7)]['trim']()||''}))[_0x1961de(0x203)](_0xb307b8=>_0xb307b8[_0x1961de(0x1a6)]&&_0xb307b8[_0x1961de(0x1a6)][_0x1961de(0x1cc)]('http'));},_0x5c4d2e[_0x49bdb8(0x1fe)],maxResults);return this[_0x49bdb8(0x222)]?.[_0x49bdb8(0x1f5)]('Search\x20completed',{'resultsCount':_0x53a685['length'],'agentId':_0x4b4206}),{'success':!![],'query':_0x40a538,'engine':engine,'resultsCount':_0x53a685['length'],'results':_0x53a685};}finally{await _0x5989bb['close']();}}async['fetch'](_0x17f2ed,_0x29b9f2={}){const _0x45fab8=a0_0x3b0521,{formats:formats=['title',_0x45fab8(0x219)],agentId:_0x589e88}=_0x29b9f2;await this['ensureBrowser'](),this['logger']?.['info']('Fetching\x20web\x20content',{'url':_0x17f2ed,'formats':formats,'agentId':_0x589e88});const _0x53f58e=await this[_0x45fab8(0x1bb)][_0x45fab8(0x1b2)]();try{const _0x27b4c0=[];formats['includes'](_0x45fab8(0x182))&&_0x53f58e['on']('console',_0x101e4f=>{const _0x571222=_0x45fab8;_0x27b4c0['push']({'type':_0x101e4f[_0x571222(0x188)](),'text':_0x101e4f['text']()});});await _0x53f58e['goto'](_0x17f2ed,{'waitUntil':_0x45fab8(0x1d9),'timeout':this[_0x45fab8(0x187)]});const _0x5348db={'url':_0x17f2ed};for(const _0x37f14e of formats){switch(_0x37f14e){case'title':_0x5348db['title']=await _0x53f58e[_0x45fab8(0x1c6)]();break;case'text':_0x5348db['text']=await _0x53f58e[_0x45fab8(0x1b7)](()=>document[_0x45fab8(0x1c3)][_0x45fab8(0x1d2)]);break;case'links':_0x5348db['links']=await _0x53f58e['evaluate'](()=>{const _0x10f0c0=_0x45fab8;return Array['from'](document[_0x10f0c0(0x19e)](_0x10f0c0(0x1f7)))['map'](_0x45d0ee=>({'href':_0x45d0ee['href'],'text':_0x45d0ee['textContent'][_0x10f0c0(0x1fb)]()}));});break;case _0x45fab8(0x1b3):_0x5348db['html']=await _0x53f58e[_0x45fab8(0x212)]();break;case _0x45fab8(0x182):_0x5348db[_0x45fab8(0x1c4)]=_0x27b4c0;break;}}return this[_0x45fab8(0x222)]?.[_0x45fab8(0x1f5)]('Fetch\x20completed',{'url':_0x17f2ed,'formats':formats,'agentId':_0x589e88}),{'success':!![],..._0x5348db};}finally{await _0x53f58e[_0x45fab8(0x1dc)]();}}async['interactive'](_0x4f8d32,_0x2fbf2b={}){const _0x2db422=a0_0x3b0521,{headless:headless=!![],agentId:_0x1017c1,context:_0x389eb4}=_0x2fbf2b;await this['ensureBrowser'](),this[_0x2db422(0x222)]?.[_0x2db422(0x1f5)]('Starting\x20interactive\x20session',{'actionsCount':_0x4f8d32[_0x2db422(0x1f4)],'headless':headless,'agentId':_0x1017c1});const _0x148127=[];!this['agentTabs'][_0x2db422(0x1bf)](_0x1017c1)&&this[_0x2db422(0x20f)][_0x2db422(0x18f)](_0x1017c1,new Map());const _0x1a8908=this[_0x2db422(0x20f)]['get'](_0x1017c1);for(const _0x5aa6b0 of _0x4f8d32){try{let _0x393324;switch(_0x5aa6b0['type']){case _0x2db422(0x1ec):_0x393324=await this['openTab'](_0x1017c1,_0x5aa6b0['name'],_0x5aa6b0['url'],headless,_0x5aa6b0['nestedActions'],_0x389eb4);break;case'close-tab':_0x393324=await this[_0x2db422(0x1e2)](_0x1017c1,_0x5aa6b0[_0x2db422(0x20e)]);break;case _0x2db422(0x224):_0x393324=await this[_0x2db422(0x1dd)](_0x1017c1,_0x5aa6b0[_0x2db422(0x20e)]);break;case _0x2db422(0x1a0):_0x393324=await this['listTabs'](_0x1017c1);break;default:_0x393324={'success':![],'error':'Action\x20'+_0x5aa6b0['type']+_0x2db422(0x205)};}_0x148127[_0x2db422(0x1e1)]({'action':_0x5aa6b0[_0x2db422(0x188)],..._0x393324});}catch(_0x149030){this[_0x2db422(0x222)]?.['error']('Action\x20failed',{'action':_0x5aa6b0[_0x2db422(0x188)],'error':_0x149030[_0x2db422(0x1b8)],'agentId':_0x1017c1}),_0x148127['push']({'action':_0x5aa6b0[_0x2db422(0x188)],'success':![],'error':_0x149030[_0x2db422(0x1b8)]});}}return{'success':_0x148127['every'](_0x246051=>_0x246051['success']!==![]),'actionsExecuted':_0x148127[_0x2db422(0x1f4)],'results':_0x148127};}async['openTab'](_0x1291cf,_0x1413e5,_0x54581a,_0xdd4d4c,_0x262ac1=[],_0x4c7b41={}){const _0x23d7a8=a0_0x3b0521;!this[_0x23d7a8(0x20f)][_0x23d7a8(0x1bf)](_0x1291cf)&&this['agentTabs'][_0x23d7a8(0x18f)](_0x1291cf,new Map());const _0x3b8b11=this['agentTabs']['get'](_0x1291cf);if(_0x3b8b11['has'](_0x1413e5))throw new Error('Tab\x20\x27'+_0x1413e5+_0x23d7a8(0x1e7)+_0x1291cf);this[_0x23d7a8(0x222)]?.[_0x23d7a8(0x1f5)]('Opening\x20tab',{'agentId':_0x1291cf,'tabName':_0x1413e5,'url':_0x54581a,'headless':_0xdd4d4c});const _0xbb3bf9=await this[_0x23d7a8(0x1bb)][_0x23d7a8(0x1b2)]();await _0xbb3bf9[_0x23d7a8(0x229)]({'width':0x500,'height':0x2d0});const _0x3b9573=[];_0xbb3bf9['on']('console',_0x314052=>{_0x3b9573['push']({'type':_0x314052['type'](),'text':_0x314052['text'](),'timestamp':Date['now']()});});const _0xd921d7={'page':_0xbb3bf9,'url':_0x54581a,'lastActivity':Date['now'](),'headless':_0xdd4d4c,'consoleMessages':_0x3b9573,'name':_0x1413e5};_0x3b8b11['set'](_0x1413e5,_0xd921d7);const _0x542cd9=[];try{_0x54581a&&(await _0xbb3bf9['goto'](_0x54581a,{'waitUntil':_0x23d7a8(0x1d9),'timeout':this['DEFAULT_TIMEOUT']}),_0xd921d7[_0x23d7a8(0x1a6)]=_0x54581a,_0xd921d7[_0x23d7a8(0x194)]=Date['now']());for(const _0x6204ae of _0x262ac1){const _0x48503c=await this[_0x23d7a8(0x221)](_0xbb3bf9,_0x6204ae,_0xd921d7,_0x4c7b41);_0x542cd9[_0x23d7a8(0x1e1)]({'action':_0x6204ae[_0x23d7a8(0x188)],..._0x48503c}),_0xd921d7['lastActivity']=Date[_0x23d7a8(0x1fa)]();}return{'success':!![],'tabName':_0x1413e5,'url':_0xd921d7['url'],'actionsExecuted':_0x542cd9['length'],'results':_0x542cd9};}catch(_0xd47e5d){this[_0x23d7a8(0x222)]?.[_0x23d7a8(0x1e9)]('Failed\x20to\x20open\x20tab',{'agentId':_0x1291cf,'tabName':_0x1413e5,'error':_0xd47e5d['message']}),await _0xbb3bf9['close'](),_0x3b8b11[_0x23d7a8(0x214)](_0x1413e5);throw _0xd47e5d;}}async['executeTabAction'](_0x2da5b1,_0x526a21,_0x1db064,_0x7a1d50){const _0x4a1d9e=a0_0x3b0521;switch(_0x526a21['type']){case'navigate':await _0x2da5b1[_0x4a1d9e(0x1f2)](_0x526a21['value']||_0x526a21['url'],{'waitUntil':'networkidle2','timeout':this[_0x4a1d9e(0x187)]}),_0x1db064['url']=_0x2da5b1['url']();return{'success':!![],'url':_0x1db064['url']};case _0x4a1d9e(0x1de):await _0x2da5b1['click'](_0x526a21['selector'],{'button':_0x526a21['button']||'left'});return{'success':!![],'selector':_0x526a21['selector']};case'type':await _0x2da5b1['type'](_0x526a21[_0x4a1d9e(0x1e0)],_0x526a21['text']||_0x526a21[_0x4a1d9e(0x19b)]);return{'success':!![],'selector':_0x526a21['selector'],'text':_0x526a21['text']};case'press':await _0x2da5b1['keyboard'][_0x4a1d9e(0x199)](_0x526a21[_0x4a1d9e(0x216)]||_0x526a21[_0x4a1d9e(0x19b)]);return{'success':!![],'key':_0x526a21['key']};case _0x4a1d9e(0x1c9):const _0x11d863=_0x526a21[_0x4a1d9e(0x1be)]?parseInt(_0x526a21['timeout'],0xa):this[_0x4a1d9e(0x187)];await _0x2da5b1['waitForSelector'](_0x526a21['selector'],{'timeout':_0x11d863});return{'success':!![],'selector':_0x526a21['selector']};case'screenshot':return await this[_0x4a1d9e(0x1e3)](_0x2da5b1,_0x526a21,_0x7a1d50);case'analyze-screenshot':return await this['analyzeScreenshot'](_0x2da5b1,_0x526a21[_0x4a1d9e(0x19b)],_0x7a1d50);case _0x4a1d9e(0x1a2):const _0x224561=await _0x2da5b1[_0x4a1d9e(0x1b7)](_0xa245e3=>{const _0x4f4128=_0x4a1d9e,_0x2aecf4=document['querySelector'](_0xa245e3);return _0x2aecf4?_0x2aecf4[_0x4f4128(0x1d2)]:null;},_0x526a21[_0x4a1d9e(0x1e0)]);return{'success':!![],'selector':_0x526a21[_0x4a1d9e(0x1e0)],'text':_0x224561};case _0x4a1d9e(0x201):const _0x386e9a=await _0x2da5b1['evaluate'](_0x40a72d=>{const _0x400604=_0x4a1d9e,_0x4ed0c9=document[_0x400604(0x19e)](_0x40a72d);return Array['from'](_0x4ed0c9)[_0x400604(0x20b)](_0x1951ef=>({'href':_0x1951ef[_0x400604(0x1c5)],'text':_0x1951ef[_0x400604(0x1c7)]['trim']()}));},_0x526a21[_0x4a1d9e(0x1e0)]);return{'success':!![],'selector':_0x526a21['selector'],'links':_0x386e9a};case _0x4a1d9e(0x1bd):const _0x497c7e=await _0x2da5b1[_0x4a1d9e(0x212)]();return{'success':!![],'html':_0x497c7e};case _0x4a1d9e(0x1ed):return{'success':!![],'consoleMessages':[..._0x1db064['consoleMessages']]};case'scroll':await _0x2da5b1[_0x4a1d9e(0x1b7)](_0x321573=>{const _0x2925d1=_0x4a1d9e;_0x321573?document[_0x2925d1(0x1f3)](_0x321573)?.[_0x2925d1(0x209)]():window['scrollTo'](0x0,document['body']['scrollHeight']);},_0x526a21['selector']);return{'success':!![]};case _0x4a1d9e(0x218):await _0x2da5b1['hover'](_0x526a21[_0x4a1d9e(0x1e0)]);return{'success':!![],'selector':_0x526a21[_0x4a1d9e(0x1e0)]};case _0x4a1d9e(0x21b):await _0x2da5b1[_0x4a1d9e(0x218)](_0x526a21[_0x4a1d9e(0x1e0)]);return{'success':!![],'selector':_0x526a21['selector']};default:throw new Error(_0x4a1d9e(0x210)+_0x526a21['type']);}}async[a0_0x3b0521(0x1e3)](_0xdc267c,_0x17501c,_0x32bee4){const _0x5d929b=a0_0x3b0521,_0x1cb128=_0x17501c['format']||'file',_0x484b37=_0x17501c['path'];if(_0x1cb128==='base64'){const _0x5cb2d7=await _0xdc267c['screenshot']({'encoding':'base64'});return{'success':!![],'format':_0x5d929b(0x1b6),'screenshot':_0x5cb2d7};}let _0xd2d181;if(_0x484b37){const _0x518fd9=_0x32bee4[_0x5d929b(0x1d1)]?.['workingDirectory']||_0x32bee4['projectDir']||process['cwd']();_0xd2d181=a0_0x4eaec9['isAbsolute'](_0x484b37)?_0x484b37:a0_0x4eaec9[_0x5d929b(0x193)](_0x518fd9,_0x484b37);}else{const _0x26deee='screenshot-'+Date[_0x5d929b(0x1fa)]()+_0x5d929b(0x226);_0xd2d181=a0_0x4eaec9[_0x5d929b(0x193)](this['TEMP_DIR'],_0x26deee);}return await _0xdc267c['screenshot']({'path':_0xd2d181}),{'success':!![],'format':'file','path':_0xd2d181};}async[a0_0x3b0521(0x183)](_0x459d93,_0x2ea547,_0x58fa51){const _0x8b48ed=a0_0x3b0521,_0x4cf0ec=await _0x459d93['screenshot']({'encoding':'base64'}),_0x121888=_0x58fa51[_0x8b48ed(0x18c)];if(!_0x121888)throw new Error(_0x8b48ed(0x1fc));this[_0x8b48ed(0x222)]?.[_0x8b48ed(0x1f5)](_0x8b48ed(0x225),{'question':_0x2ea547[_0x8b48ed(0x1a7)](0x0,0x64),'agentId':_0x58fa51['agentId']});try{const _0x3e16d5='o3',_0x5e729c=await _0x121888['sendMessage'](_0x3e16d5,_0x2ea547,{'agentId':_0x58fa51[_0x8b48ed(0x1af)],'images':['data:image/png;base64,'+_0x4cf0ec],'apiKey':_0x58fa51[_0x8b48ed(0x190)],'customApiKeys':_0x58fa51['customApiKeys'],'platformProvided':_0x58fa51['platformProvided']});return{'success':!![],'question':_0x2ea547,'analysis':_0x5e729c[_0x8b48ed(0x212)],'model':_0x5e729c[_0x8b48ed(0x211)]||_0x3e16d5};}catch(_0x1a828d){this[_0x8b48ed(0x222)]?.[_0x8b48ed(0x1e9)]('Screenshot\x20analysis\x20failed',{'error':_0x1a828d['message'],'agentId':_0x58fa51['agentId']});throw new Error('Screenshot\x20analysis\x20failed:\x20'+_0x1a828d['message']);}}async[a0_0x3b0521(0x1e2)](_0x2a130d,_0x28be3d){const _0xcb6b92=a0_0x3b0521,_0x3f98dd=this['agentTabs'][_0xcb6b92(0x1f6)](_0x2a130d);if(!_0x3f98dd||!_0x3f98dd['has'](_0x28be3d))throw new Error(_0xcb6b92(0x1c2)+_0x28be3d+_0xcb6b92(0x184)+_0x2a130d);const _0x14ba86=_0x3f98dd['get'](_0x28be3d);return this[_0xcb6b92(0x222)]?.['info']('Closing\x20tab',{'agentId':_0x2a130d,'tabName':_0x28be3d}),await _0x14ba86[_0xcb6b92(0x1ab)][_0xcb6b92(0x1dc)](),_0x3f98dd[_0xcb6b92(0x214)](_0x28be3d),{'success':!![],'tabName':_0x28be3d,'message':_0xcb6b92(0x1c2)+_0x28be3d+'\x27\x20closed'};}async[a0_0x3b0521(0x1dd)](_0x5b9829,_0x4298d8){const _0x45e0a8=a0_0x3b0521,_0x99a53e=this[_0x45e0a8(0x20f)]['get'](_0x5b9829);if(!_0x99a53e||!_0x99a53e['has'](_0x4298d8))throw new Error('Tab\x20\x27'+_0x4298d8+_0x45e0a8(0x184)+_0x5b9829);const _0x2cc991=_0x99a53e[_0x45e0a8(0x1f6)](_0x4298d8);return _0x2cc991[_0x45e0a8(0x194)]=Date[_0x45e0a8(0x1fa)](),{'success':!![],'tabName':_0x4298d8,'url':_0x2cc991['url'],'message':_0x45e0a8(0x1cf)+_0x4298d8+'\x27'};}async['listTabs'](_0x38c623){const _0x402ff3=a0_0x3b0521,_0x44f7ed=this[_0x402ff3(0x20f)]['get'](_0x38c623);if(!_0x44f7ed||_0x44f7ed[_0x402ff3(0x1df)]===0x0)return{'success':!![],'tabCount':0x0,'tabs':[],'message':'No\x20active\x20tabs'};const _0x13cf94=[];for(const [_0x4652c5,_0xc75b1a]of _0x44f7ed['entries']()){_0x13cf94[_0x402ff3(0x1e1)]({'name':_0x4652c5,'url':_0xc75b1a[_0x402ff3(0x1a6)],'idleTime':Date['now']()-_0xc75b1a['lastActivity'],'headless':_0xc75b1a['headless']});}return{'success':!![],'tabCount':_0x13cf94[_0x402ff3(0x1f4)],'tabs':_0x13cf94};}[a0_0x3b0521(0x206)](){const _0x12fbaf=a0_0x3b0521;this[_0x12fbaf(0x1db)]&&clearInterval(this[_0x12fbaf(0x1db)]),this['cleanupTimer']=setInterval(()=>{const _0x51bd39=_0x12fbaf;this[_0x51bd39(0x223)]();},this[_0x12fbaf(0x185)]);}async[a0_0x3b0521(0x223)](){const _0x31ae05=a0_0x3b0521,_0x5518ff=Date[_0x31ae05(0x1fa)](),_0x418ada=[];for(const [_0x4ed26c,_0x6d2ba2]of this['agentTabs']['entries']()){for(const [_0xd0e9c9,_0x14d6b6]of _0x6d2ba2['entries']()){const _0x308520=_0x5518ff-_0x14d6b6['lastActivity'];_0x308520>this[_0x31ae05(0x1aa)]&&_0x418ada['push']({'agentId':_0x4ed26c,'tabName':_0xd0e9c9,'tabInfo':_0x14d6b6});}}if(_0x418ada[_0x31ae05(0x1f4)]>0x0){this[_0x31ae05(0x222)]?.['info']('Cleaning\x20up\x20idle\x20tabs',{'count':_0x418ada[_0x31ae05(0x1f4)]});for(const {agentId:_0x543ace,tabName:_0x42fdc5,tabInfo:_0x5a0e62}of _0x418ada){try{await _0x5a0e62[_0x31ae05(0x1ab)][_0x31ae05(0x1dc)](),this[_0x31ae05(0x20f)]['get'](_0x543ace)[_0x31ae05(0x214)](_0x42fdc5),this['logger']?.['debug'](_0x31ae05(0x1d7),{'agentId':_0x543ace,'tabName':_0x42fdc5});}catch(_0x849c9a){this['logger']?.['error']('Failed\x20to\x20close\x20idle\x20tab',{'agentId':_0x543ace,'tabName':_0x42fdc5,'error':_0x849c9a[_0x31ae05(0x1b8)]});}}}}async[a0_0x3b0521(0x1ac)](_0x4437f1){const _0x5545d0=a0_0x3b0521,_0xb91e82=this[_0x5545d0(0x20f)]['get'](_0x4437f1);if(!_0xb91e82)return{'success':!![],'agentId':_0x4437f1,'closedTabs':0x0,'message':'No\x20tabs\x20to\x20clean\x20up'};this[_0x5545d0(0x222)]?.['info']('Cleaning\x20up\x20agent\x20tabs',{'agentId':_0x4437f1,'tabCount':_0xb91e82[_0x5545d0(0x1df)]});let _0x13e484=0x0;for(const [_0x19b4ff,_0x236e41]of _0xb91e82[_0x5545d0(0x215)]()){try{await _0x236e41[_0x5545d0(0x1ab)][_0x5545d0(0x1dc)](),_0x13e484++;}catch(_0x29a9aa){this[_0x5545d0(0x222)]?.['error']('Failed\x20to\x20close\x20tab\x20during\x20cleanup',{'agentId':_0x4437f1,'tabName':_0x19b4ff,'error':_0x29a9aa['message']});}}return this['agentTabs'][_0x5545d0(0x214)](_0x4437f1),{'success':!![],'agentId':_0x4437f1,'closedTabs':_0x13e484,'message':_0x5545d0(0x18a)+_0x13e484+_0x5545d0(0x1b4)+_0x4437f1};}async[a0_0x3b0521(0x1ea)](){const _0x163db9=a0_0x3b0521;try{await a0_0x4082ba['mkdir'](this['TEMP_DIR'],{'recursive':!![]});}catch(_0x5287ec){this[_0x163db9(0x222)]?.['warn'](_0x163db9(0x181),{'path':this['TEMP_DIR'],'error':_0x5287ec['message']});}}async['cleanup'](){const _0x4f9d83=a0_0x3b0521;this[_0x4f9d83(0x1db)]&&(clearInterval(this['cleanupTimer']),this[_0x4f9d83(0x1db)]=null);for(const [_0x2e8d1e]of this[_0x4f9d83(0x20f)]['entries']()){await this[_0x4f9d83(0x1ac)](_0x2e8d1e);}this['browser']&&(await this[_0x4f9d83(0x1bb)][_0x4f9d83(0x1dc)](),this['browser']=null);try{await a0_0x4082ba['rm'](this[_0x4f9d83(0x207)],{'recursive':!![],'force':!![]});}catch(_0x213f9a){this[_0x4f9d83(0x222)]?.[_0x4f9d83(0x1ee)]('Failed\x20to\x20clean\x20temp\x20directory',{'path':this[_0x4f9d83(0x207)],'error':_0x213f9a['message']});}}}function a0_0x55c6(_0x397acd,_0x22e7ac){_0x397acd=_0x397acd-0x181;const _0x384d03=a0_0x384d();let _0x55c6cb=_0x384d03[_0x397acd];if(a0_0x55c6['GhevBZ']===undefined){var _0x2b7b7b=function(_0x7df2c7){const _0x1a70a1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x19dc5b='',_0x539b53='';for(let _0x4eaec9=0x0,_0x4082ba,_0x371d06,_0x2ae2fa=0x0;_0x371d06=_0x7df2c7['charAt'](_0x2ae2fa++);~_0x371d06&&(_0x4082ba=_0x4eaec9%0x4?_0x4082ba*0x40+_0x371d06:_0x371d06,_0x4eaec9++%0x4)?_0x19dc5b+=String['fromCharCode'](0xff&_0x4082ba>>(-0x2*_0x4eaec9&0x6)):0x0){_0x371d06=_0x1a70a1['indexOf'](_0x371d06);}for(let _0x2a5bec=0x0,_0x16575f=_0x19dc5b['length'];_0x2a5bec<_0x16575f;_0x2a5bec++){_0x539b53+='%'+('00'+_0x19dc5b['charCodeAt'](_0x2a5bec)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x539b53);};a0_0x55c6['mRNFKx']=_0x2b7b7b,a0_0x55c6['TvnQcH']={},a0_0x55c6['GhevBZ']=!![];}const _0x4f2851=_0x384d03[0x0],_0x2e42d3=_0x397acd+_0x4f2851,_0x35bb37=a0_0x55c6['TvnQcH'][_0x2e42d3];return!_0x35bb37?(_0x55c6cb=a0_0x55c6['mRNFKx'](_0x55c6cb),a0_0x55c6['TvnQcH'][_0x2e42d3]=_0x55c6cb):_0x55c6cb=_0x35bb37,_0x55c6cb;}export default WebTool;
|
|
1
|
+
const a0_0x5054aa=a0_0x31cd;(function(_0x21cb33,_0x32a2b9){const _0x5e8eed=a0_0x31cd,_0x3b3e43=_0x21cb33();while(!![]){try{const _0x40b5e2=parseInt(_0x5e8eed(0x11a))/0x1*(parseInt(_0x5e8eed(0x103))/0x2)+parseInt(_0x5e8eed(0xd6))/0x3+-parseInt(_0x5e8eed(0xba))/0x4+parseInt(_0x5e8eed(0xa9))/0x5*(parseInt(_0x5e8eed(0x80))/0x6)+-parseInt(_0x5e8eed(0x118))/0x7*(-parseInt(_0x5e8eed(0x77))/0x8)+parseInt(_0x5e8eed(0x8c))/0x9*(parseInt(_0x5e8eed(0x11c))/0xa)+-parseInt(_0x5e8eed(0xb4))/0xb;if(_0x40b5e2===_0x32a2b9)break;else _0x3b3e43['push'](_0x3b3e43['shift']());}catch(_0x54a7c5){_0x3b3e43['push'](_0x3b3e43['shift']());}}}(a0_0x2bc2,0xa75f5));import{BaseTool}from'./baseTool.js';import a0_0xe7685 from'../utilities/tagParser.js';import a0_0xcd8043 from'puppeteer';import a0_0x12fbd9 from'path';import a0_0x50450b from'fs/promises';import a0_0x504c7e from'os';import{TOOL_STATUS,SYSTEM_DEFAULTS}from'../utilities/constants.js';class WebTool extends BaseTool{constructor(_0x5cfbb5={},_0x143eed=null){const _0x191da1=a0_0x31cd;super(_0x5cfbb5,_0x143eed),this['requiresProject']=![],this[_0x191da1(0x76)]=!![],this[_0x191da1(0x8e)]=null,this['browserInitializing']=![],this[_0x191da1(0xcf)]=new Map(),this['searchEngines']=[{'name':_0x191da1(0x96),'url':'https://www.google.com/search?q=','searchSelector':_0x191da1(0xff),'submitSelector':'input[type=\x22submit\x22],\x20button[type=\x22submit\x22]','resultsSelector':_0x191da1(0x117),'waitSelector':'#search'},{'name':'bing','url':'https://www.bing.com/search?q=','searchSelector':'input[name=\x22q\x22]','submitSelector':_0x191da1(0xfd),'resultsSelector':'.b_algo\x20a','waitSelector':_0x191da1(0xe9)},{'name':_0x191da1(0xfc),'url':_0x191da1(0xea),'searchSelector':'input[name=\x22q\x22]','submitSelector':_0x191da1(0x9a),'resultsSelector':_0x191da1(0xa1),'waitSelector':'#links,\x20[data-testid=\x22mainline\x22]'}],this['TAB_IDLE_TIMEOUT']=_0x5cfbb5[_0x191da1(0xa0)]||0x3c*0x3c*0x3e8,this['CLEANUP_INTERVAL']=_0x5cfbb5[_0x191da1(0xf3)]||0x5*0x3c*0x3e8,this[_0x191da1(0x107)]=_0x5cfbb5['defaultTimeout']||0xea60,this['TEMP_DIR']=_0x5cfbb5[_0x191da1(0xb0)]||a0_0x12fbd9['join'](a0_0x504c7e[_0x191da1(0x91)](),_0x191da1(0xf2)),this[_0x191da1(0x98)]=null,this['startCleanupTimer'](),this[_0x191da1(0x102)]();}[a0_0x5054aa(0xb9)](){const _0x335713=a0_0x5054aa;return _0x335713(0xcc);}[a0_0x5054aa(0xb1)](_0x3c611d){const _0x3a41a0=a0_0x5054aa;try{if(_0x3c611d['trim']()[_0x3a41a0(0xaa)]('{'))return JSON[_0x3a41a0(0x9d)](_0x3c611d);const _0xba7917={},_0x405dd3=a0_0xe7685['extractContent'](_0x3c611d,_0x3a41a0(0xc8));_0x405dd3[_0x3a41a0(0xef)]>0x0&&(_0xba7917['operation']=_0x405dd3[0x0]['trim']());switch(_0xba7917[_0x3a41a0(0xc8)]){case _0x3a41a0(0x87):_0xba7917[_0x3a41a0(0xd2)]=a0_0xe7685['extractContent'](_0x3c611d,'query')[0x0]?.['trim'](),_0xba7917[_0x3a41a0(0x89)]=a0_0xe7685['extractContent'](_0x3c611d,'engine')[0x0]?.[_0x3a41a0(0xdb)]()||_0x3a41a0(0x96);const _0x50337f=a0_0xe7685[_0x3a41a0(0x7b)](_0x3c611d,_0x3a41a0(0x81))[0x0]?.['trim']();_0xba7917['maxResults']=_0x50337f?parseInt(_0x50337f,0xa):0xa;break;case'fetch':_0xba7917['url']=a0_0xe7685[_0x3a41a0(0x7b)](_0x3c611d,_0x3a41a0(0x7f))[0x0]?.['trim']();const _0x56c820=a0_0xe7685[_0x3a41a0(0x7b)](_0x3c611d,'format')[0x0]?.['trim']();_0xba7917[_0x3a41a0(0xdc)]=_0x56c820?_0x56c820['split'](',')['map'](_0x3fba27=>_0x3fba27['trim']()):[_0x3a41a0(0xbc),'text'];break;case _0x3a41a0(0xc0):const _0x3f1c0e=a0_0xe7685[_0x3a41a0(0x7b)](_0x3c611d,_0x3a41a0(0x71))[0x0]?.['trim']();_0xba7917[_0x3a41a0(0x71)]=_0x3f1c0e!==_0x3a41a0(0x9f);const _0x1d2ce7=a0_0xe7685['extractContent'](_0x3c611d,'actions')[0x0];_0x1d2ce7&&(_0xba7917['actions']=this[_0x3a41a0(0x10b)](_0x1d2ce7));break;}return _0xba7917[_0x3a41a0(0xfa)]=_0x3c611d[_0x3a41a0(0xdb)](),_0xba7917;}catch(_0x13a21a){throw new Error('Failed\x20to\x20parse\x20web\x20tool\x20parameters:\x20'+_0x13a21a[_0x3a41a0(0x84)]);}}['parseActions'](_0x50ae9b){const _0x3c87a3=a0_0x5054aa,_0x1c5bbb=[],_0x46c7b1=/<open-tab[^>]*name="([^"]+)"[^>]*>([\s\S]*?)<\/open-tab>/g;let _0x35eb7d;while((_0x35eb7d=_0x46c7b1[_0x3c87a3(0xf0)](_0x50ae9b))!==null){const [,_0x190a50,_0x1701eb]=_0x35eb7d,_0x199c3d=a0_0xe7685['extractContent'](_0x1701eb,_0x3c87a3(0xc9))[0x0]?.[_0x3c87a3(0xdb)]();_0x1c5bbb[_0x3c87a3(0x79)]({'type':'open-tab','name':_0x190a50,'url':_0x199c3d,'nestedActions':this[_0x3c87a3(0xca)](_0x1701eb)});}const _0x20f650=[_0x3c87a3(0xc5),_0x3c87a3(0xda),'list-tabs','navigate','click',_0x3c87a3(0x74),'press','wait-for',_0x3c87a3(0xc6),_0x3c87a3(0x112),'extract-text','extract-links','get-source','get-console',_0x3c87a3(0x9b),_0x3c87a3(0xb7),_0x3c87a3(0xf9)];for(const _0x5955df of _0x20f650){const _0x259b34=new RegExp('<'+_0x5955df+_0x3c87a3(0x82)+_0x5955df+'>','g');let _0x5f133d;while((_0x5f133d=_0x259b34['exec'](_0x50ae9b))!==null){const [,_0x195a2d,_0x2d55e8]=_0x5f133d,_0x42eac5={'type':_0x5955df},_0x1bd710=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x21b49f;while((_0x21b49f=_0x1bd710[_0x3c87a3(0xf0)](_0x195a2d))!==null){_0x42eac5[_0x21b49f[0x1]]=_0x21b49f[0x2];}_0x2d55e8&&_0x2d55e8[_0x3c87a3(0xdb)]()&&(_0x42eac5['value']=_0x2d55e8[_0x3c87a3(0xdb)]()),_0x1c5bbb['push'](_0x42eac5);}}return _0x1c5bbb;}[a0_0x5054aa(0xca)](_0x306bee){const _0x14d436=a0_0x5054aa,_0x398328=[],_0x593862=[_0x14d436(0xc9),'click','type',_0x14d436(0x90),'wait-for','screenshot',_0x14d436(0x112),'extract-text',_0x14d436(0x11b),'get-source','get-console','scroll','hover',_0x14d436(0xf9)];for(const _0x433704 of _0x593862){const _0x5f5ae2=new RegExp('<'+_0x433704+_0x14d436(0x82)+_0x433704+'>|<'+_0x433704+'([^>]*)/>','g');let _0x1b44b8;while((_0x1b44b8=_0x5f5ae2['exec'](_0x306bee))!==null){const [,_0x48de5d,_0x2c4b5c,_0x120c12]=_0x1b44b8,_0x55f003=_0x48de5d||_0x120c12||'',_0x5a6c0f={'type':_0x433704},_0x5a9fc6=/(\w+(?:-\w+)*)="([^"]*)"/g;let _0x4e0a44;while((_0x4e0a44=_0x5a9fc6[_0x14d436(0xf0)](_0x55f003))!==null){_0x5a6c0f[_0x4e0a44[0x1]]=_0x4e0a44[0x2];}_0x2c4b5c&&_0x2c4b5c['trim']()&&(_0x5a6c0f['value']=_0x2c4b5c['trim']()),_0x398328['push'](_0x5a6c0f);}}return _0x398328;}[a0_0x5054aa(0x9c)](){return['operation'];}[a0_0x5054aa(0x11e)](_0x1fbab4){const _0x1be422=a0_0x5054aa,_0x16aa1d=[];if(![_0x1be422(0x87),_0x1be422(0xcb),'interactive']['includes'](_0x1fbab4['operation']))return _0x16aa1d[_0x1be422(0x79)]('operation\x20must\x20be\x20one\x20of:\x20search,\x20fetch,\x20interactive'),{'valid':![],'errors':_0x16aa1d};switch(_0x1fbab4[_0x1be422(0xc8)]){case _0x1be422(0x87):!_0x1fbab4['query']&&_0x16aa1d['push'](_0x1be422(0x78));break;case _0x1be422(0xcb):!_0x1fbab4['url']&&_0x16aa1d[_0x1be422(0x79)](_0x1be422(0xe6));break;case _0x1be422(0xc0):(!_0x1fbab4['actions']||!Array[_0x1be422(0xa4)](_0x1fbab4[_0x1be422(0x10f)])||_0x1fbab4[_0x1be422(0x10f)][_0x1be422(0xef)]===0x0)&&_0x16aa1d[_0x1be422(0x79)]('actions\x20array\x20is\x20required\x20for\x20interactive\x20operation');break;}return{'valid':_0x16aa1d['length']===0x0,'errors':_0x16aa1d};}async['execute'](_0x481dde,_0xde809d){const _0x1a8cbd=a0_0x5054aa,_0x5f4c74={};for(const [_0x178645,_0x2d6d34]of Object[_0x1a8cbd(0xac)](_0x481dde)){_0x2d6d34&&typeof _0x2d6d34==='object'&&_0x1a8cbd(0xb8)in _0x2d6d34?_0x5f4c74[_0x178645]=_0x2d6d34[_0x1a8cbd(0xb8)]:_0x5f4c74[_0x178645]=_0x2d6d34;}_0x481dde=_0x5f4c74;const {operation:_0x57a36e}=_0x481dde,{agentId:_0x2fbd51}=_0xde809d;try{await this['ensureBrowser']();let _0x209d4e;switch(_0x57a36e){case _0x1a8cbd(0x87):_0x209d4e=await this[_0x1a8cbd(0x87)](_0x481dde['query'],{'engine':_0x481dde['engine']||_0x1a8cbd(0x96),'maxResults':_0x481dde['maxResults']||0xa,'agentId':_0x2fbd51});break;case'fetch':_0x209d4e=await this['fetch'](_0x481dde[_0x1a8cbd(0x7f)],{'formats':_0x481dde['formats']||[_0x1a8cbd(0xbc),'text'],'agentId':_0x2fbd51});break;case _0x1a8cbd(0xc0):_0x209d4e=await this[_0x1a8cbd(0xc0)](_0x481dde[_0x1a8cbd(0x10f)],{'headless':_0x481dde['headless']!==![],'agentId':_0x2fbd51,'context':_0xde809d});break;default:throw new Error(_0x1a8cbd(0x110)+_0x57a36e);}return{'success':!![],'operation':_0x57a36e,'result':_0x209d4e,'toolUsed':_0x1a8cbd(0xc1)};}catch(_0x2c1542){return this['logger']?.[_0x1a8cbd(0xe3)](_0x1a8cbd(0xf7),{'operation':_0x57a36e,'error':_0x2c1542['message'],'agentId':_0x2fbd51}),{'success':![],'operation':_0x57a36e,'error':_0x2c1542[_0x1a8cbd(0x84)],'toolUsed':_0x1a8cbd(0xc1)};}}async['ensureBrowser'](){const _0x2380ef=a0_0x5054aa;if(this[_0x2380ef(0x8e)]&&this[_0x2380ef(0x8e)][_0x2380ef(0xcd)]())return;if(this['browserInitializing']){while(this['browserInitializing']){await new Promise(_0x911ca9=>setTimeout(_0x911ca9,0x64));}return;}this['browserInitializing']=!![];try{this[_0x2380ef(0xd3)]?.['info'](_0x2380ef(0xd0)),this[_0x2380ef(0x8e)]=await a0_0xcd8043[_0x2380ef(0xc4)]({'headless':_0x2380ef(0xb6),'args':[_0x2380ef(0x86),_0x2380ef(0xe2),_0x2380ef(0x99),'--disable-accelerated-2d-canvas',_0x2380ef(0x106),'--disable-blink-features=AutomationControlled','--user-agent=Mozilla/5.0\x20(Windows\x20NT\x2010.0;\x20Win64;\x20x64)\x20AppleWebKit/537.36\x20(KHTML,\x20like\x20Gecko)\x20Chrome/120.0.0.0\x20Safari/537.36']}),this[_0x2380ef(0xd3)]?.[_0x2380ef(0x8a)](_0x2380ef(0x10d));}catch(_0x318b5c){this[_0x2380ef(0xd3)]?.['error'](_0x2380ef(0x108),{'error':_0x318b5c[_0x2380ef(0x84)]});throw new Error('Browser\x20initialization\x20failed:\x20'+_0x318b5c[_0x2380ef(0x84)]);}finally{this[_0x2380ef(0xe0)]=![];}}async[a0_0x5054aa(0x87)](_0x3eace7,_0x29a1f3={}){const _0x51a1f8=a0_0x5054aa,{engine:engine=_0x51a1f8(0x96),maxResults:maxResults=0xa,agentId:_0x13bdb2}=_0x29a1f3;if(!_0x3eace7||typeof _0x3eace7!=='string'||_0x3eace7['trim']()['length']===0x0)throw new Error(_0x51a1f8(0xce));const _0xc85b7e=this['searchEngines'][_0x51a1f8(0xfb)](_0x3e9918=>_0x3e9918[_0x51a1f8(0xbe)]===engine);if(!_0xc85b7e)throw new Error('Unknown\x20search\x20engine:\x20'+engine+'.\x20Available:\x20'+this[_0x51a1f8(0xf5)]['map'](_0x342775=>_0x342775['name'])['join'](',\x20'));await this['ensureBrowser'](),this['logger']?.['info']('Performing\x20web\x20search',{'query':_0x3eace7,'engine':engine,'agentId':_0x13bdb2});const _0x1acf62=await this['browser']['newPage']();try{const _0x38dce8=''+_0xc85b7e['url']+encodeURIComponent(_0x3eace7);await _0x1acf62[_0x51a1f8(0x85)](_0x38dce8,{'waitUntil':_0x51a1f8(0x72),'timeout':this[_0x51a1f8(0x107)]}),await _0x1acf62[_0x51a1f8(0xec)](_0xc85b7e[_0x51a1f8(0xe5)],{'timeout':this[_0x51a1f8(0x107)]});const _0xc617c=await _0x1acf62['evaluate']((_0x2b3bd6,_0x284cf3)=>{const _0x5c61da=_0x51a1f8,_0x115341=Array['from'](document[_0x5c61da(0x10c)](_0x2b3bd6));return _0x115341[_0x5c61da(0x9e)](0x0,_0x284cf3)[_0x5c61da(0x11f)](_0x57fa30=>({'url':_0x57fa30[_0x5c61da(0x93)],'title':_0x57fa30[_0x5c61da(0x114)][_0x5c61da(0xdb)](),'description':_0x57fa30['closest'](_0x5c61da(0xa7))?.[_0x5c61da(0x114)][_0x5c61da(0xdb)]()||''}))[_0x5c61da(0x7c)](_0x5b780b=>_0x5b780b[_0x5c61da(0x7f)]&&_0x5b780b['url'][_0x5c61da(0xaa)]('http'));},_0xc85b7e[_0x51a1f8(0xa8)],maxResults);return this[_0x51a1f8(0xd3)]?.['info']('Search\x20completed',{'resultsCount':_0xc617c['length'],'agentId':_0x13bdb2}),{'success':!![],'query':_0x3eace7,'engine':engine,'resultsCount':_0xc617c['length'],'results':_0xc617c};}finally{await _0x1acf62[_0x51a1f8(0xf6)]();}}async['fetch'](_0x2da650,_0x1a6f7e={}){const _0x32cea4=a0_0x5054aa,{formats:formats=['title','text'],agentId:_0x63d1b9}=_0x1a6f7e;await this['ensureBrowser'](),this[_0x32cea4(0xd3)]?.[_0x32cea4(0x8a)]('Fetching\x20web\x20content',{'url':_0x2da650,'formats':formats,'agentId':_0x63d1b9});const _0x1dfbd4=await this['browser']['newPage']();try{const _0x47a05b=[];formats['includes'](_0x32cea4(0x8f))&&_0x1dfbd4['on']('console',_0x17ea79=>{const _0x1ed79b=_0x32cea4;_0x47a05b[_0x1ed79b(0x79)]({'type':_0x17ea79[_0x1ed79b(0x74)](),'text':_0x17ea79['text']()});});await _0x1dfbd4['goto'](_0x2da650,{'waitUntil':_0x32cea4(0x72),'timeout':this['DEFAULT_TIMEOUT']});const _0xd8abbe={'url':_0x2da650};for(const _0x44eaeb of formats){switch(_0x44eaeb){case _0x32cea4(0xbc):_0xd8abbe[_0x32cea4(0xbc)]=await _0x1dfbd4[_0x32cea4(0xbc)]();break;case'text':_0xd8abbe[_0x32cea4(0xa6)]=await _0x1dfbd4['evaluate'](()=>document['body'][_0x32cea4(0xab)]);break;case _0x32cea4(0x113):_0xd8abbe['links']=await _0x1dfbd4[_0x32cea4(0xae)](()=>{const _0x326888=_0x32cea4;return Array['from'](document[_0x326888(0x10c)]('a[href]'))[_0x326888(0x11f)](_0x27d338=>({'href':_0x27d338[_0x326888(0x93)],'text':_0x27d338['textContent'][_0x326888(0xdb)]()}));});break;case'html':_0xd8abbe['html']=await _0x1dfbd4['content']();break;case _0x32cea4(0x8f):_0xd8abbe[_0x32cea4(0x73)]=_0x47a05b;break;}}return this['logger']?.[_0x32cea4(0x8a)](_0x32cea4(0x94),{'url':_0x2da650,'formats':formats,'agentId':_0x63d1b9}),{'success':!![],..._0xd8abbe};}finally{await _0x1dfbd4[_0x32cea4(0xf6)]();}}async['interactive'](_0x3bae32,_0x229cd8={}){const _0x3b8d75=a0_0x5054aa,{headless:headless=!![],agentId:_0x47c5cf,context:_0x1be36e}=_0x229cd8;await this['ensureBrowser'](),this[_0x3b8d75(0xd3)]?.[_0x3b8d75(0x8a)]('Starting\x20interactive\x20session',{'actionsCount':_0x3bae32['length'],'headless':headless,'agentId':_0x47c5cf});const _0x38a9b1=[];!this[_0x3b8d75(0xcf)][_0x3b8d75(0xd9)](_0x47c5cf)&&this['agentTabs'][_0x3b8d75(0x7e)](_0x47c5cf,new Map());const _0x177a7d=this[_0x3b8d75(0xcf)]['get'](_0x47c5cf);for(const _0x5dac29 of _0x3bae32){try{let _0x25363a;switch(_0x5dac29[_0x3b8d75(0x74)]){case _0x3b8d75(0x8d):_0x25363a=await this[_0x3b8d75(0x10a)](_0x47c5cf,_0x5dac29[_0x3b8d75(0xbe)],_0x5dac29['url'],headless,_0x5dac29[_0x3b8d75(0xdd)],_0x1be36e);break;case'close-tab':_0x25363a=await this['closeTab'](_0x47c5cf,_0x5dac29[_0x3b8d75(0xbe)]);break;case'switch-tab':_0x25363a=await this[_0x3b8d75(0xc3)](_0x47c5cf,_0x5dac29[_0x3b8d75(0xbe)]);break;case'list-tabs':_0x25363a=await this['listTabs'](_0x47c5cf);break;default:_0x25363a={'success':![],'error':_0x3b8d75(0xe4)+_0x5dac29[_0x3b8d75(0x74)]+_0x3b8d75(0xb2)};}_0x38a9b1[_0x3b8d75(0x79)]({'action':_0x5dac29[_0x3b8d75(0x74)],..._0x25363a});}catch(_0x568f41){this[_0x3b8d75(0xd3)]?.['error'](_0x3b8d75(0x119),{'action':_0x5dac29['type'],'error':_0x568f41['message'],'agentId':_0x47c5cf}),_0x38a9b1[_0x3b8d75(0x79)]({'action':_0x5dac29['type'],'success':![],'error':_0x568f41['message']});}}return{'success':_0x38a9b1[_0x3b8d75(0xde)](_0x4f9418=>_0x4f9418['success']!==![]),'actionsExecuted':_0x38a9b1[_0x3b8d75(0xef)],'results':_0x38a9b1};}async[a0_0x5054aa(0x10a)](_0x481ee0,_0x1aba07,_0x2f9b12,_0x3f3e32,_0x110982=[],_0x4630cc={}){const _0x321d82=a0_0x5054aa;!this[_0x321d82(0xcf)]['has'](_0x481ee0)&&this[_0x321d82(0xcf)][_0x321d82(0x7e)](_0x481ee0,new Map());const _0x40dcc5=this[_0x321d82(0xcf)]['get'](_0x481ee0);if(_0x40dcc5['has'](_0x1aba07))throw new Error('Tab\x20\x27'+_0x1aba07+'\x27\x20already\x20exists\x20for\x20agent\x20'+_0x481ee0);this[_0x321d82(0xd3)]?.[_0x321d82(0x8a)]('Opening\x20tab',{'agentId':_0x481ee0,'tabName':_0x1aba07,'url':_0x2f9b12,'headless':_0x3f3e32});const _0x4d7bb5=await this[_0x321d82(0x8e)][_0x321d82(0x105)]();await _0x4d7bb5['setViewport']({'width':0x500,'height':0x2d0});const _0x580da1=[];_0x4d7bb5['on'](_0x321d82(0x8f),_0x3329b4=>{const _0x467b74=_0x321d82;_0x580da1['push']({'type':_0x3329b4[_0x467b74(0x74)](),'text':_0x3329b4[_0x467b74(0xa6)](),'timestamp':Date['now']()});});const _0x2e6e49={'page':_0x4d7bb5,'url':_0x2f9b12,'lastActivity':Date[_0x321d82(0x101)](),'headless':_0x3f3e32,'consoleMessages':_0x580da1,'name':_0x1aba07};_0x40dcc5[_0x321d82(0x7e)](_0x1aba07,_0x2e6e49);const _0x4b4e2d=[];try{_0x2f9b12&&(await _0x4d7bb5[_0x321d82(0x85)](_0x2f9b12,{'waitUntil':_0x321d82(0x72),'timeout':this[_0x321d82(0x107)]}),_0x2e6e49[_0x321d82(0x7f)]=_0x2f9b12,_0x2e6e49[_0x321d82(0xad)]=Date[_0x321d82(0x101)]());for(const _0x1b9012 of _0x110982){const _0x2aee77=await this['executeTabAction'](_0x4d7bb5,_0x1b9012,_0x2e6e49,_0x4630cc);_0x4b4e2d[_0x321d82(0x79)]({'action':_0x1b9012['type'],..._0x2aee77}),_0x2e6e49[_0x321d82(0xad)]=Date[_0x321d82(0x101)]();}return{'success':!![],'tabName':_0x1aba07,'url':_0x2e6e49['url'],'actionsExecuted':_0x4b4e2d['length'],'results':_0x4b4e2d};}catch(_0x5ad2cd){this['logger']?.['error'](_0x321d82(0x75),{'agentId':_0x481ee0,'tabName':_0x1aba07,'error':_0x5ad2cd[_0x321d82(0x84)]}),await _0x4d7bb5['close'](),_0x40dcc5[_0x321d82(0xdf)](_0x1aba07);throw _0x5ad2cd;}}async[a0_0x5054aa(0xc7)](_0xcdf450,_0x3442ac,_0xd67b4f,_0x3e41b5){const _0x5a45bc=a0_0x5054aa;switch(_0x3442ac['type']){case _0x5a45bc(0xc9):await _0xcdf450[_0x5a45bc(0x85)](_0x3442ac['value']||_0x3442ac[_0x5a45bc(0x7f)],{'waitUntil':'networkidle2','timeout':this['DEFAULT_TIMEOUT']}),_0xd67b4f[_0x5a45bc(0x7f)]=_0xcdf450['url']();return{'success':!![],'url':_0xd67b4f[_0x5a45bc(0x7f)]};case'click':await _0xcdf450['click'](_0x3442ac[_0x5a45bc(0xe8)],{'button':_0x3442ac[_0x5a45bc(0xd1)]||'left'});return{'success':!![],'selector':_0x3442ac['selector']};case _0x5a45bc(0x74):await _0xcdf450['type'](_0x3442ac['selector'],_0x3442ac[_0x5a45bc(0xa6)]||_0x3442ac['value']);return{'success':!![],'selector':_0x3442ac[_0x5a45bc(0xe8)],'text':_0x3442ac[_0x5a45bc(0xa6)]};case _0x5a45bc(0x90):await _0xcdf450['keyboard'][_0x5a45bc(0x90)](_0x3442ac[_0x5a45bc(0xd8)]||_0x3442ac[_0x5a45bc(0xb8)]);return{'success':!![],'key':_0x3442ac['key']};case _0x5a45bc(0x95):const _0x4b6ec9=_0x3442ac['timeout']?parseInt(_0x3442ac[_0x5a45bc(0x10e)],0xa):this['DEFAULT_TIMEOUT'];await _0xcdf450[_0x5a45bc(0xec)](_0x3442ac['selector'],{'timeout':_0x4b6ec9});return{'success':!![],'selector':_0x3442ac[_0x5a45bc(0xe8)]};case _0x5a45bc(0xc6):return await this[_0x5a45bc(0xc2)](_0xcdf450,_0x3442ac,_0x3e41b5);case'analyze-screenshot':return await this[_0x5a45bc(0x111)](_0xcdf450,_0x3442ac[_0x5a45bc(0xb8)],_0x3e41b5);case _0x5a45bc(0xbf):const _0x43adf6=await _0xcdf450[_0x5a45bc(0xae)](_0x49505a=>{const _0x5d40f0=_0x5a45bc,_0x168ff0=document[_0x5d40f0(0x83)](_0x49505a);return _0x168ff0?_0x168ff0[_0x5d40f0(0xab)]:null;},_0x3442ac[_0x5a45bc(0xe8)]);return{'success':!![],'selector':_0x3442ac[_0x5a45bc(0xe8)],'text':_0x43adf6};case'extract-links':const _0x43d07d=await _0xcdf450['evaluate'](_0x3ca345=>{const _0xc38655=_0x5a45bc,_0x1e2c84=document['querySelectorAll'](_0x3ca345);return Array['from'](_0x1e2c84)[_0xc38655(0x11f)](_0x396129=>({'href':_0x396129['href'],'text':_0x396129[_0xc38655(0x114)][_0xc38655(0xdb)]()}));},_0x3442ac[_0x5a45bc(0xe8)]);return{'success':!![],'selector':_0x3442ac['selector'],'links':_0x43d07d};case _0x5a45bc(0xf1):const _0x5882c9=await _0xcdf450[_0x5a45bc(0xf8)]();return{'success':!![],'html':_0x5882c9};case _0x5a45bc(0xb3):return{'success':!![],'consoleMessages':[..._0xd67b4f['consoleMessages']]};case'scroll':await _0xcdf450['evaluate'](_0x4aa5df=>{const _0xeb991a=_0x5a45bc;_0x4aa5df?document['querySelector'](_0x4aa5df)?.['scrollIntoView']():window['scrollTo'](0x0,document['body'][_0xeb991a(0x121)]);},_0x3442ac[_0x5a45bc(0xe8)]);return{'success':!![]};case _0x5a45bc(0xb7):await _0xcdf450['hover'](_0x3442ac['selector']);return{'success':!![],'selector':_0x3442ac[_0x5a45bc(0xe8)]};case _0x5a45bc(0xf9):await _0xcdf450[_0x5a45bc(0xb7)](_0x3442ac[_0x5a45bc(0xe8)]);return{'success':!![],'selector':_0x3442ac['selector']};default:throw new Error(_0x5a45bc(0xa2)+_0x3442ac[_0x5a45bc(0x74)]);}}async['takeScreenshot'](_0x306083,_0x175730,_0x3dfcae){const _0x3f3c7d=a0_0x5054aa,_0x56bb0c=_0x175730['format']||'file',_0x33f357=_0x175730[_0x3f3c7d(0x11d)];if(_0x56bb0c===_0x3f3c7d(0xeb)){const _0x5d408d=await _0x306083['screenshot']({'encoding':'base64'});return{'success':!![],'format':'base64','screenshot':_0x5d408d};}let _0x50f284;if(_0x33f357){const _0x5e9f3c=_0x3dfcae['directoryAccess']?.[_0x3f3c7d(0x88)]||_0x3dfcae[_0x3f3c7d(0x120)]||process['cwd']();_0x50f284=a0_0x12fbd9[_0x3f3c7d(0x109)](_0x33f357)?_0x33f357:a0_0x12fbd9['join'](_0x5e9f3c,_0x33f357);}else{const _0x7bbdb1=_0x3f3c7d(0xe7)+Date['now']()+'.png';_0x50f284=a0_0x12fbd9[_0x3f3c7d(0xd5)](this['TEMP_DIR'],_0x7bbdb1);}return await _0x306083['screenshot']({'path':_0x50f284}),{'success':!![],'format':'file','path':_0x50f284};}async[a0_0x5054aa(0x111)](_0x29a634,_0x2f6e59,_0xa152a2){const _0x464107=a0_0x5054aa,_0x370bc0=await _0x29a634[_0x464107(0xc6)]({'encoding':_0x464107(0xeb)}),_0x1fddc2=_0xa152a2[_0x464107(0xb5)];if(!_0x1fddc2)throw new Error(_0x464107(0x115));this['logger']?.[_0x464107(0x8a)]('Analyzing\x20screenshot\x20with\x20AI',{'question':_0x2f6e59[_0x464107(0xaf)](0x0,0x64),'agentId':_0xa152a2['agentId']});try{const _0x2132d4='o3',_0x24ca4b=await _0x1fddc2[_0x464107(0xbb)](_0x2132d4,_0x2f6e59,{'agentId':_0xa152a2[_0x464107(0xf4)],'images':['data:image/png;base64,'+_0x370bc0],'apiKey':_0xa152a2['apiKey'],'customApiKeys':_0xa152a2[_0x464107(0x104)],'platformProvided':_0xa152a2['platformProvided']});return{'success':!![],'question':_0x2f6e59,'analysis':_0x24ca4b['content'],'model':_0x24ca4b['model']||_0x2132d4};}catch(_0x5c73ef){this[_0x464107(0xd3)]?.[_0x464107(0xe3)](_0x464107(0xbd),{'error':_0x5c73ef[_0x464107(0x84)],'agentId':_0xa152a2[_0x464107(0xf4)]});throw new Error('Screenshot\x20analysis\x20failed:\x20'+_0x5c73ef['message']);}}async['closeTab'](_0x246503,_0x5a3a6f){const _0x47b05a=a0_0x5054aa,_0x4841b7=this['agentTabs'][_0x47b05a(0x7d)](_0x246503);if(!_0x4841b7||!_0x4841b7[_0x47b05a(0xd9)](_0x5a3a6f))throw new Error('Tab\x20\x27'+_0x5a3a6f+_0x47b05a(0x116)+_0x246503);const _0x3239b9=_0x4841b7[_0x47b05a(0x7d)](_0x5a3a6f);return this['logger']?.['info']('Closing\x20tab',{'agentId':_0x246503,'tabName':_0x5a3a6f}),await _0x3239b9[_0x47b05a(0xd7)]['close'](),_0x4841b7['delete'](_0x5a3a6f),{'success':!![],'tabName':_0x5a3a6f,'message':_0x47b05a(0x8b)+_0x5a3a6f+'\x27\x20closed'};}async['switchTab'](_0x241aae,_0x40e9ff){const _0x360613=a0_0x5054aa,_0x5a8c03=this['agentTabs'][_0x360613(0x7d)](_0x241aae);if(!_0x5a8c03||!_0x5a8c03[_0x360613(0xd9)](_0x40e9ff))throw new Error('Tab\x20\x27'+_0x40e9ff+'\x27\x20not\x20found\x20for\x20agent\x20'+_0x241aae);const _0x36f006=_0x5a8c03[_0x360613(0x7d)](_0x40e9ff);return _0x36f006[_0x360613(0xad)]=Date[_0x360613(0x101)](),{'success':!![],'tabName':_0x40e9ff,'url':_0x36f006[_0x360613(0x7f)],'message':'Switched\x20to\x20tab\x20\x27'+_0x40e9ff+'\x27'};}async[a0_0x5054aa(0xa3)](_0x2d2194){const _0x18b767=a0_0x5054aa,_0x37347d=this[_0x18b767(0xcf)]['get'](_0x2d2194);if(!_0x37347d||_0x37347d[_0x18b767(0xfe)]===0x0)return{'success':!![],'tabCount':0x0,'tabs':[],'message':_0x18b767(0x7a)};const _0x3c9897=[];for(const [_0x5bb673,_0x3951a9]of _0x37347d[_0x18b767(0xac)]()){_0x3c9897[_0x18b767(0x79)]({'name':_0x5bb673,'url':_0x3951a9['url'],'idleTime':Date['now']()-_0x3951a9[_0x18b767(0xad)],'headless':_0x3951a9['headless']});}return{'success':!![],'tabCount':_0x3c9897[_0x18b767(0xef)],'tabs':_0x3c9897};}['startCleanupTimer'](){const _0x1313fd=a0_0x5054aa;this[_0x1313fd(0x98)]&&clearInterval(this[_0x1313fd(0x98)]),this['cleanupTimer']=setInterval(()=>{this['cleanupIdleTabs']();},this[_0x1313fd(0xe1)]);}async['cleanupIdleTabs'](){const _0x43b578=a0_0x5054aa,_0x187f42=Date['now'](),_0x515eae=[];for(const [_0x363922,_0x44270e]of this[_0x43b578(0xcf)]['entries']()){for(const [_0x1d26f5,_0x1a96ef]of _0x44270e[_0x43b578(0xac)]()){const _0x186bc7=_0x187f42-_0x1a96ef['lastActivity'];_0x186bc7>this['TAB_IDLE_TIMEOUT']&&_0x515eae['push']({'agentId':_0x363922,'tabName':_0x1d26f5,'tabInfo':_0x1a96ef});}}if(_0x515eae['length']>0x0){this['logger']?.['info'](_0x43b578(0x92),{'count':_0x515eae['length']});for(const {agentId:_0x36614d,tabName:_0x2875cd,tabInfo:_0x329042}of _0x515eae){try{await _0x329042[_0x43b578(0xd7)][_0x43b578(0xf6)](),this[_0x43b578(0xcf)]['get'](_0x36614d)[_0x43b578(0xdf)](_0x2875cd),this['logger']?.[_0x43b578(0x100)](_0x43b578(0xa5),{'agentId':_0x36614d,'tabName':_0x2875cd});}catch(_0xee0b86){this[_0x43b578(0xd3)]?.['error']('Failed\x20to\x20close\x20idle\x20tab',{'agentId':_0x36614d,'tabName':_0x2875cd,'error':_0xee0b86[_0x43b578(0x84)]});}}}}async['cleanupAgent'](_0x10fb61){const _0x1c9322=a0_0x5054aa,_0x4e4602=this[_0x1c9322(0xcf)][_0x1c9322(0x7d)](_0x10fb61);if(!_0x4e4602)return{'success':!![],'agentId':_0x10fb61,'closedTabs':0x0,'message':'No\x20tabs\x20to\x20clean\x20up'};this['logger']?.[_0x1c9322(0x8a)]('Cleaning\x20up\x20agent\x20tabs',{'agentId':_0x10fb61,'tabCount':_0x4e4602['size']});let _0x1b7ab7=0x0;for(const [_0x35130d,_0x18808a]of _0x4e4602['entries']()){try{await _0x18808a[_0x1c9322(0xd7)][_0x1c9322(0xf6)](),_0x1b7ab7++;}catch(_0x3b45a3){this['logger']?.[_0x1c9322(0xe3)](_0x1c9322(0x97),{'agentId':_0x10fb61,'tabName':_0x35130d,'error':_0x3b45a3['message']});}}return this['agentTabs']['delete'](_0x10fb61),{'success':!![],'agentId':_0x10fb61,'closedTabs':_0x1b7ab7,'message':'Closed\x20'+_0x1b7ab7+'\x20tabs\x20for\x20agent\x20'+_0x10fb61};}async['ensureTempDir'](){const _0x2f7ad4=a0_0x5054aa;try{await a0_0x50450b['mkdir'](this['TEMP_DIR'],{'recursive':!![]});}catch(_0x1b3280){this[_0x2f7ad4(0xd3)]?.['warn']('Failed\x20to\x20create\x20temp\x20directory',{'path':this[_0x2f7ad4(0xd4)],'error':_0x1b3280[_0x2f7ad4(0x84)]});}}async[a0_0x5054aa(0xee)](){const _0x3758fe=a0_0x5054aa;this[_0x3758fe(0x98)]&&(clearInterval(this[_0x3758fe(0x98)]),this['cleanupTimer']=null);for(const [_0x40c8d9]of this['agentTabs'][_0x3758fe(0xac)]()){await this['cleanupAgent'](_0x40c8d9);}this['browser']&&(await this['browser']['close'](),this['browser']=null);try{await a0_0x50450b['rm'](this['TEMP_DIR'],{'recursive':!![],'force':!![]});}catch(_0x247411){this['logger']?.[_0x3758fe(0xed)]('Failed\x20to\x20clean\x20temp\x20directory',{'path':this[_0x3758fe(0xd4)],'error':_0x247411['message']});}}}function a0_0x31cd(_0x5917fc,_0x2c66bc){_0x5917fc=_0x5917fc-0x71;const _0x2bc2da=a0_0x2bc2();let _0x31cd0c=_0x2bc2da[_0x5917fc];if(a0_0x31cd['JuhMFm']===undefined){var _0x381550=function(_0xc2a31b){const _0x4e895d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xe7685='',_0xcd8043='';for(let _0x12fbd9=0x0,_0x50450b,_0x504c7e,_0x5cfbb5=0x0;_0x504c7e=_0xc2a31b['charAt'](_0x5cfbb5++);~_0x504c7e&&(_0x50450b=_0x12fbd9%0x4?_0x50450b*0x40+_0x504c7e:_0x504c7e,_0x12fbd9++%0x4)?_0xe7685+=String['fromCharCode'](0xff&_0x50450b>>(-0x2*_0x12fbd9&0x6)):0x0){_0x504c7e=_0x4e895d['indexOf'](_0x504c7e);}for(let _0x143eed=0x0,_0x3c611d=_0xe7685['length'];_0x143eed<_0x3c611d;_0x143eed++){_0xcd8043+='%'+('00'+_0xe7685['charCodeAt'](_0x143eed)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xcd8043);};a0_0x31cd['OWxCXR']=_0x381550,a0_0x31cd['TcSrab']={},a0_0x31cd['JuhMFm']=!![];}const _0x211153=_0x2bc2da[0x0],_0x3358b7=_0x5917fc+_0x211153,_0x791c39=a0_0x31cd['TcSrab'][_0x3358b7];return!_0x791c39?(_0x31cd0c=a0_0x31cd['OWxCXR'](_0x31cd0c),a0_0x31cd['TcSrab'][_0x3358b7]=_0x31cd0c):_0x31cd0c=_0x791c39,_0x31cd0c;}export default WebTool;function a0_0x2bc2(){const _0x263d35=['u2nYzwvUC2HVDcbHBMfSExnPCYbMywLSzwq','BMfTzq','zxH0CMfJDc10zxH0','Aw50zxjHy3rPDMu','D2vI','DgfRzvnJCMvLBNnOB3q','C3DPDgnOvgfI','Bgf1BMnO','y2XVC2uTDgfI','C2nYzwvUC2HVDa','zxHLy3v0zvrHyKfJDgLVBG','B3bLCMf0Aw9U','BMf2AwDHDgu','CgfYC2vozxn0zwrby3rPB25Z','zMv0y2G','cLDLyIbuB29SoIbcCM93C2uSihnLyxjJAcWGyw5Kigf1Dg9TyxrLihDLyIbPBNrLCMfJDgLVBNmGDxnPBMCGuhvWCgv0zwvYlGOkvvnbr0u6cMbGygPZB24kEWOGicj0B29SswqIoIaID2vIiIWkicaIB3bLCMf0Aw9UiJOGiNnLyxjJAhXMzxrJAhXPBNrLCMfJDgL2zsiScIaGiNbHCMfTzxrLCNmIoIb7lI4UFqP9cMbGyaOkt1bfuKfusu9ouZOkcJeUifnfqvjdsdOkygbGANnVBGP7cIaGiNrVB2Xjzci6icj3zwiIlaOGicjVCgvYyxrPB24IoIaIC2vHCMnOiIWkicaICxvLCNKIoIaIC2vHCMnOihrLCM1ZiIWkicaIzw5NAw5LiJOGiMDVB2DSzsiScIaGiM1HEfjLC3vSDhmIoIaXmaP9cMbGyaOkmI4GrKvuq0G6cMbGygPZB24kEWOGicj0B29SswqIoIaID2vIiIWkicaIB3bLCMf0Aw9UiJOGiMzLDgnOiIWkicaIDxjSiJOGiMH0DhbZoI8VzxHHBxbSzs5JB20IlaOGicjMB3jTyxrZiJOGwYj0AxrSzsiSicj0zxH0iIWGiMXPBMTZiL0kFqPGygakcJmUieLovevsqunusvzfoGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNDLyIiScIaGiM9WzxjHDgLVBIi6icjPBNrLCMfJDgL2zsiScIaGiMHLywrSzxnZiJOGDhj1zsWkicaIywn0Aw9UCYi6ifSkicaGihSkicaGicaGiNr5CguIoIaIB3bLBI10ywiIlaOGicaGicaIBMfTzsi6icjTywLUiIWkicaGicaGiNvYBci6icjODhrWCZOVl2v4yw1WBguUy29TiIWkicaGicaGiM5LC3rLzefJDgLVBNmIoIbBcIaGicaGicaGEYj0ExbLiJOGiNDHAxqTzM9YiIWGiNnLBgvJDg9YiJOGiI5JB250zw50iN0ScIaGicaGicaGEYj0ExbLiJOGiMnSAwnRiIWGiNnLBgvJDg9YiJOGiMj1DhrVBI5ZDwjTAxqIFsWkicaGicaGicb7iNr5CguIoIaIC2nYzwvUC2HVDciSicjMB3jTyxqIoIaIzMLSzsiSicjWyxrOiJOGiNjLC3vSDc5WBMCIFsWkicaGicaGicb7iNr5CguIoIaIzxH0CMfJDc10zxH0iIWGiNnLBgvJDg9YiJOGiInJB250zw50iN0kicaGicaGxqOGicaGFsWkicaGihSIDhLWzsi6icjJBg9Zzs10ywiIlcaIBMfTzsi6icjTywLUiN0kicbDcN0kygbGcGPtvvbqt1juruqGqunusu9ouZOklsbVCgvUlxrHyIWGy2XVC2uTDgfIlcbZD2L0y2GTDgfIlcbSAxn0lxrHyNmklsbUyxzPz2f0zsWGy2XPy2SSihr5CguSihbYzxnZcI0GD2fPDc1MB3iSihnJCMvLBNnOB3qSigfUywX5EMuTC2nYzwvUC2HVDaOTigv4DhjHy3qTDgv4DcWGzxH0CMfJDc1SAw5RCYWGz2v0lxnVDxjJzqOTihnJCM9SBcWGAg92zxikcKvyqu1qtevtoGOku2vHCMnOieDVB2DSztOkygbGANnVBGP7iNrVB2Xjzci6icj3zwiIlcaIB3bLCMf0Aw9UiJOGiNnLyxjJAciSicjXDwvYEsi6icjWDxbWzxrLzxiGDhv0B3jPywWIlcaIBwf4uMvZDwX0CYi6idv9cMbGyaOkrMv0y2GGCgfNzsbJB250zw50oGPGygbQC29UcNSIDg9VBeLKiJOGiNDLyIiSicjVCgvYyxrPB24IoIaIzMv0y2GIlcaIDxjSiJOGiMH0DhbZoI8VzxHHBxbSzs5JB20IlcaIzM9YBwf0CYi6ifSIDgv4DciSicjSAw5RCYjDFqPGygakcKf1Dg9TyxrLihDVCMTMBg93oGPGygbQC29UcNSkicaIDg9VBeLKiJOGiNDLyIiScIaGiM9WzxjHDgLVBIi6icjPBNrLCMfJDgL2zsiScIaGiMfJDgLVBNmIoIbBcIaGicb7cIaGicaGicj0ExbLiJOGiM9Wzw4TDgfIiIWkicaGicaGiM5HBwuIoIaIC2vHCMnOiIWkicaGicaGiNvYBci6icjODhrWCZOVl2DPDgH1yI5JB20VDhjLBMrPBMCIlaOGicaGicaIBMvZDgvKqwn0Aw9UCYi6ifSkicaGicaGicb7iNr5CguIoIaID2fPDc1MB3iIlcaIC2vSzwn0B3iIoIaIlKjVEc1YB3CIFsWkicaGicaGicb7iNr5CguIoIaIzxH0CMfJDc1SAw5RCYiSicjZzwXLy3rVCIi6iciUqM94lxjVDYbHiN0kicaGicaGxqOGicaGFqOGif0kFqPGygakcLnfq1vssvrzoGOTiejYB3DZzxiGAxnVBgf0zwqGCgvYigfNzw50cI0GvgfICYbHDxrVlwnSB3nLigfMDgvYideGAg91CGOGicaG','AxndB25Uzwn0zwq','u2vHCMnOihf1zxj5igLZihjLCxvPCMvKigfUzcbTDxn0igjLigeGBM9UlwvTChr5ihn0CMLUzW','ywDLBNruywjZ','sw5PDgLHBgL6Aw5Nifb1ChbLDgvLCIbICM93C2vY','yNv0Dg9U','CxvLCNK','Bg9Nz2vY','vevnuf9esvi','AM9PBG','mtG1mte1me1KBujsCa','CgfNzq','A2v5','AgfZ','C3DPDgnOlxrHyG','DhjPBq','zM9YBwf0CW','BMvZDgvKqwn0Aw9UCW','zxzLCNK','zgvSzxrL','yNjVD3nLCKLUAxrPywXPEMLUzW','q0Xfqu5vuf9jtLrfuLzbta','ls1KAxnHyMXLlxnLDhvPzc1Zyw5KyM94','zxjYB3i','qwn0Aw9Uia','D2fPDfnLBgvJDg9Y','DxjSigLZihjLCxvPCMvKigzVCIbMzxrJAcbVCgvYyxrPB24','C2nYzwvUC2HVDc0','C2vSzwn0B3i','i2jFCMvZDwX0CW','Ahr0Chm6lY9KDwnRzhvJA2DVlMnVBs8/Ct0','yMfZzty0','D2fPDezVCLnLBgvJDg9Y','D2fYBG','y2XLyw51Ca','BgvUz3rO','zxHLyW','z2v0lxnVDxjJzq','D2vIDg9VBc1Zy3jLzw5ZAg90CW','y2XLyw51CeLUDgvYDMfS','ywDLBNrjza','C2vHCMnOrw5NAw5LCW','y2XVC2u','v2vIihrVB2WGzxHLy3v0Aw9UigzHAwXLza','y29UDgvUDa','Bw91C2uTBw92zq','CMf3q29UDgvUDa','zMLUza','zhvJA2r1y2TNBW','Aw5WDxrBDhLWzt0IC3vIBwL0iL0','C2L6zq','Aw5WDxrBBMfTzt0ICsjD','zgvIDwC','BM93','zw5ZDxjLvgvTCerPCG','mNf0rfzsAG','y3vZDg9TqxbPs2v5CW','BMv3ugfNzq','ls1KAxnHyMXLlwDWDq','revgqvvmvf9usu1ft1vu','rMfPBgvKihrVigLUAxrPywXPEMuGyNjVD3nLCG','AxnbyNnVBhv0zq','B3bLBLrHyG','CgfYC2vby3rPB25Z','CxvLCNLtzwXLy3rVCKfSBa','uhvWCgv0zwvYigjYB3DZzxiGAw5PDgLHBgL6zwqGC3vJy2vZC2z1BgX5','DgLTzw91Da','ywn0Aw9UCW','vw5RBM93BIbVCgvYyxrPB246ia','yw5HBhL6zvnJCMvLBNnOB3q','yw5HBhL6zs1Zy3jLzw5ZAg90','BgLUA3m','Dgv4DenVBNrLBNq','quKGC2vYDMLJzsbUB3qGyxzHAwXHyMXLigzVCIbZy3jLzw5ZAg90igfUywX5C2LZ','jYbUB3qGzM91BMqGzM9YigfNzw50ia','i3nLyxjJAcaUzYbHlcaJC2vHCMnOigfBAhjLzL0','mta5nZuZrhj5terb','qwn0Aw9UigzHAwXLza','nJm4nJG5y2v3sg9d','zxH0CMfJDc1SAw5RCW','mZK3mJqYmgDICgTnua','Cgf0Aa','y3vZDg9TvMfSAwrHDgvqyxjHBwv0zxjZ','BwfW','ChjVAMvJDerPCG','C2nYB2XSsgvPz2H0','AgvHzgXLC3m','BMv0D29YA2LKBguY','y29UC29Szu1LC3nHz2vZ','DhLWzq','rMfPBgvKihrVig9Wzw4GDgfI','AxnbC3LUyW','ntuYtwLYzfL4','CxvLCNKGAxmGCMvXDwLYzwqGzM9YihnLyxjJAcbVCgvYyxrPB24','ChvZAa','tM8Gywn0AxzLihrHyNm','zxH0CMfJDenVBNrLBNq','zMLSDgvY','z2v0','C2v0','DxjS','otCZmLzwEfbquq','Bwf4lxjLC3vSDhm','kfTEpL0Qkt4Ow148xsOPpc8','CxvLCNLtzwXLy3rVCG','BwvZC2fNzq','z290BW','ls1UBY1Zyw5KyM94','C2vHCMnO','D29YA2LUz0rPCMvJDg9YEq','zw5NAw5L','Aw5MBW','vgfIicC','ownpqMvevq','B3bLBI10ywi','yNjVD3nLCG','y29UC29Szq','ChjLC3m','Dg1WzgLY','q2XLyw5PBMCGDxaGAwrSzsb0ywjZ','AhjLzG','rMv0y2GGy29TCgXLDgvK','D2fPDc1MB3i','z29Vz2XL','rMfPBgvKihrVignSB3nLihrHyIbKDxjPBMCGy2XLyw51Ca','y2XLyw51CfrPBwvY','ls1KAxnHyMXLlwrLDI1ZAg0TDxnHz2u','yNv0Dg9Uw3r5Cgu9iNn1yM1PDcjD','C2nYB2XS','z2v0uMvXDwLYzwrqyxjHBwv0zxjZ','CgfYC2u','C2XPy2u','zMfSC2u','DgfIswrSzvrPBwvVDxq','lNjLC3vSDf9FysWGyvTKyxrHlxrLC3rPzd0ICMvZDwX0lxrPDgXLlweIxq','vw5RBM93BIbHy3rPB24GDhLWztOG','BgLZDfrHyNm','AxnbCNjHEq','q2XVC2vKigLKBguGDgfI','Dgv4Da','lMCSic5Ix2fSz28Sic5Yzxn1Bhq','CMvZDwX0C1nLBgvJDg9Y','ndv2suDtwhO','C3rHCNrZv2L0Aa','Aw5UzxjuzxH0','zw50CMLLCW','BgfZDefJDgL2Axr5','zxzHBhvHDgu','C3vIC3rYAw5N','DgvTCerPCG','CgfYC2vqyxjHBwv0zxjZ','ig11C3qGyMuGzxHLy3v0zwqGD2L0AgLUigeGDgfIignVBNrLEhqGkhvZzsbVCgvUlxrHyIb3AxrOig5LC3rLzefJDgLVBNmP','z2v0lwnVBNnVBgu','mtmZmtuZmZvfrgfuBNq','ywLtzxj2AwnL','BMv3','Ag92zxi','DMfSDwu','z2v0rgvZy3jPChrPB24','mZqXmZu1mK5VCMzprq','C2vUze1LC3nHz2u','DgL0Bgu'];a0_0x2bc2=function(){return _0x263d35;};return a0_0x2bc2();}
|