@loxia-labs/loxia-autopilot-one 1.0.9 → 1.0.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/bin/cli.js +1 -1
- package/bin/loxia-terminal-v2.js +1 -1
- package/bin/loxia-terminal.js +1 -1
- package/bin/start-with-terminal.js +1 -1
- package/package.json +1 -1
- package/scripts/install-scanners.js +1 -1
- package/src/analyzers/CSSAnalyzer.js +1 -1
- package/src/analyzers/ConfigValidator.js +1 -1
- package/src/analyzers/ESLintAnalyzer.js +1 -1
- package/src/analyzers/JavaScriptAnalyzer.js +1 -1
- package/src/analyzers/PrettierFormatter.js +1 -1
- package/src/analyzers/PythonAnalyzer.js +1 -1
- package/src/analyzers/SecurityAnalyzer.js +1 -1
- package/src/analyzers/TypeScriptAnalyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/analyzer.js +1 -1
- package/src/analyzers/codeCloneDetector/detector.js +1 -1
- package/src/analyzers/codeCloneDetector/index.js +1 -1
- package/src/analyzers/codeCloneDetector/parser.js +1 -1
- package/src/analyzers/codeCloneDetector/reporter.js +1 -1
- package/src/analyzers/codeCloneDetector/scanner.js +1 -1
- package/src/core/agentPool.js +1 -1
- package/src/core/agentScheduler.js +1 -1
- package/src/core/contextManager.js +1 -1
- package/src/core/messageProcessor.js +1 -1
- package/src/core/orchestrator.js +1 -1
- package/src/core/stateManager.js +1 -1
- package/src/index.js +1 -1
- package/src/interfaces/cli.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/advancedFeatures.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agentControl.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/agents.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/components.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/connection.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/enhancements.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/imports.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/messages.test.js +1 -1
- package/src/interfaces/terminal/__tests__/smoke/tools.test.js +1 -1
- package/src/interfaces/terminal/api/apiClient.js +1 -1
- package/src/interfaces/terminal/api/messageRouter.js +1 -1
- package/src/interfaces/terminal/api/session.js +1 -1
- package/src/interfaces/terminal/api/websocket.js +1 -1
- package/src/interfaces/terminal/components/AgentCreator.js +1 -1
- package/src/interfaces/terminal/components/AgentEditor.js +1 -1
- package/src/interfaces/terminal/components/AgentSwitcher.js +1 -1
- package/src/interfaces/terminal/components/ErrorBoundary.js +1 -1
- package/src/interfaces/terminal/components/ErrorPanel.js +1 -1
- package/src/interfaces/terminal/components/Header.js +1 -1
- package/src/interfaces/terminal/components/HelpPanel.js +1 -1
- package/src/interfaces/terminal/components/InputBox.js +1 -1
- package/src/interfaces/terminal/components/Layout.js +1 -1
- package/src/interfaces/terminal/components/LoadingSpinner.js +1 -1
- package/src/interfaces/terminal/components/MessageList.js +1 -1
- package/src/interfaces/terminal/components/MultilineTextInput.js +1 -1
- package/src/interfaces/terminal/components/SearchPanel.js +1 -1
- package/src/interfaces/terminal/components/SettingsPanel.js +1 -1
- package/src/interfaces/terminal/components/StatusBar.js +1 -1
- package/src/interfaces/terminal/components/TextInput.js +1 -1
- package/src/interfaces/terminal/config/agentEditorConstants.js +1 -1
- package/src/interfaces/terminal/config/constants.js +1 -1
- package/src/interfaces/terminal/index.js +1 -1
- package/src/interfaces/terminal/state/useAgentControl.js +1 -1
- package/src/interfaces/terminal/state/useAgents.js +1 -1
- package/src/interfaces/terminal/state/useConnection.js +1 -1
- package/src/interfaces/terminal/state/useMessages.js +1 -1
- package/src/interfaces/terminal/state/useTools.js +1 -1
- package/src/interfaces/terminal/utils/debugLogger.js +1 -1
- package/src/interfaces/terminal/utils/settingsStorage.js +1 -1
- package/src/interfaces/terminal/utils/theme.js +1 -1
- package/src/interfaces/webServer.js +1 -1
- package/src/modules/fileExplorer/controller.js +1 -1
- package/src/modules/fileExplorer/index.js +1 -1
- package/src/modules/fileExplorer/middleware.js +1 -1
- package/src/modules/fileExplorer/routes.js +1 -1
- package/src/services/aiService.js +1 -1
- package/src/services/apiKeyManager.js +1 -1
- package/src/services/benchmarkService.js +1 -1
- package/src/services/budgetService.js +1 -1
- package/src/services/contextInjectionService.js +1 -1
- package/src/services/conversationCompactionService.js +1 -1
- package/src/services/errorHandler.js +1 -1
- package/src/services/fileAttachmentService.js +1 -1
- package/src/services/modelRouterService.js +1 -1
- package/src/services/modelsService.js +1 -1
- package/src/services/qualityInspector.js +1 -1
- package/src/services/tokenCountingService.js +1 -1
- package/src/tools/agentCommunicationTool.js +1 -1
- package/src/tools/agentDelayTool.js +1 -1
- package/src/tools/asyncToolManager.js +1 -1
- package/src/tools/baseTool.js +1 -1
- package/src/tools/browserTool.js +1 -1
- package/src/tools/cloneDetectionTool.js +1 -1
- package/src/tools/dependencyResolverTool.js +1 -1
- package/src/tools/fileContentReplaceTool.js +1 -1
- package/src/tools/fileSystemTool.js +1 -1
- package/src/tools/fileTreeTool.js +1 -1
- package/src/tools/imageTool.js +1 -1
- package/src/tools/importAnalyzerTool.js +1 -1
- package/src/tools/jobDoneTool.js +1 -1
- package/src/tools/seekTool.js +1 -1
- package/src/tools/staticAnalysisTool.js +1 -1
- package/src/tools/taskManagerTool.js +1 -1
- package/src/tools/terminalTool.js +1 -1
- package/src/tools/webTool.js +1 -1
- package/src/types/agent.js +1 -1
- package/src/types/contextReference.js +1 -1
- package/src/types/conversation.js +1 -1
- package/src/types/toolCommand.js +1 -1
- package/src/utilities/attachmentValidator.js +1 -1
- package/src/utilities/configManager.js +1 -1
- package/src/utilities/constants.js +1 -1
- package/src/utilities/directoryAccessManager.js +1 -1
- package/src/utilities/fileProcessor.js +1 -1
- package/src/utilities/logger.js +1 -1
- package/src/utilities/tagParser.js +1 -1
- package/src/utilities/toolConstants.js +1 -1
- package/web-ui/build/index.html +2 -2
- package/web-ui/build/static/{index-BzXbDs8z.js → index-C5X7qBNF.js} +63 -63
- package/web-ui/build/static/index-g2UFuTwG.css +1 -0
- package/web-ui/build/static/index-BmKxmRe3.css +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a0_0x738532=a0_0x19ff;(function(_0x6b9d08,_0x197fe6){const _0x95f3ae=a0_0x19ff,_0x220c87=_0x6b9d08();while(!![]){try{const _0x1e59bc=-parseInt(_0x95f3ae(0x1a4))/0x1*(parseInt(_0x95f3ae(0x1a0))/0x2)+-parseInt(_0x95f3ae(0x195))/0x3+parseInt(_0x95f3ae(0x1a3))/0x4*(parseInt(_0x95f3ae(0x199))/0x5)+-parseInt(_0x95f3ae(0x1a9))/0x6+-parseInt(_0x95f3ae(0x19c))/0x7+-parseInt(_0x95f3ae(0x19b))/0x8+parseInt(_0x95f3ae(0x19d))/0x9;if(_0x1e59bc===_0x197fe6)break;else _0x220c87['push'](_0x220c87['shift']());}catch(_0x28fcdd){_0x220c87['push'](_0x220c87['shift']());}}}(a0_0x20e4,0x7469f));const THEMES={'default':{'border':'blue','borderLoading':'yellow','primary':a0_0x738532(0x19e),'secondary':'cyan','success':a0_0x738532(0x198),'error':a0_0x738532(0x1a8),'warning':'yellow','info':a0_0x738532(0x1a2),'dim':a0_0x738532(0x1a1)},'light':{'border':'blue','borderLoading':a0_0x738532(0x196),'primary':a0_0x738532(0x197),'secondary':'blue','success':a0_0x738532(0x198),'error':'red','warning':'yellow','info':'cyan','dim':a0_0x738532(0x1a1)},'dark':{'border':a0_0x738532(0x19a),'borderLoading':'magenta','primary':'white','secondary':a0_0x738532(0x19a),'success':a0_0x738532(0x1a5),'error':'redBright','warning':a0_0x738532(0x19f),'info':'blueBright','dim':'gray'},'high-contrast':{'border':a0_0x738532(0x19e),'borderLoading':'yellow','primary':a0_0x738532(0x19e),'secondary':'cyan','success':a0_0x738532(0x1a5),'error':'redBright','warning':a0_0x738532(0x19f),'info':a0_0x738532(0x1a6),'dim':a0_0x738532(0x19e)}};export function getTheme(_0x4c0741='default'){const _0xefa3f3=a0_0x738532;return THEMES[_0x4c0741]||THEMES[_0xefa3f3(0x1a7)];}export function getThemeColor(_0x3c75ee,_0x29bb8d){const _0x50bc14=getTheme(_0x3c75ee);return _0x50bc14[_0x29bb8d]||_0x50bc14['primary'];}function a0_0x19ff(_0x319a3c,_0x4eb0df){_0x319a3c=_0x319a3c-0x195;const _0x20e429=a0_0x20e4();let _0x19ff08=_0x20e429[_0x319a3c];if(a0_0x19ff['xMyxvC']===undefined){var _0x13c0ce=function(_0x4822b5){const _0x3cc74d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c0741='',_0x3c75ee='';for(let _0x29bb8d=0x0,_0x50bc14,_0x27ef9b,_0x2ed7b6=0x0;_0x27ef9b=_0x4822b5['charAt'](_0x2ed7b6++);~_0x27ef9b&&(_0x50bc14=_0x29bb8d%0x4?_0x50bc14*0x40+_0x27ef9b:_0x27ef9b,_0x29bb8d++%0x4)?_0x4c0741+=String['fromCharCode'](0xff&_0x50bc14>>(-0x2*_0x29bb8d&0x6)):0x0){_0x27ef9b=_0x3cc74d['indexOf'](_0x27ef9b);}for(let _0x1cdf58=0x0,_0x486f24=_0x4c0741['length'];_0x1cdf58<_0x486f24;_0x1cdf58++){_0x3c75ee+='%'+('00'+_0x4c0741['charCodeAt'](_0x1cdf58)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3c75ee);};a0_0x19ff['BbYZaw']=_0x13c0ce,a0_0x19ff['dMZOto']={},a0_0x19ff['xMyxvC']=!![];}const _0x67da6e=_0x20e429[0x0],_0x244cc9=_0x319a3c+_0x67da6e,_0x15a6d1=a0_0x19ff['dMZOto'][_0x244cc9];return!_0x15a6d1?(_0x19ff08=a0_0x19ff['BbYZaw'](_0x19ff08),a0_0x19ff['dMZOto'][_0x244cc9]=_0x19ff08):_0x19ff08=_0x15a6d1,_0x19ff08;}export default{'getTheme':getTheme,'getThemeColor':getThemeColor};function a0_0x20e4(){const _0x40cc86=['y3LHBG','mZuYmdeWnfLbtxDlCa','ntqXnJa1ngrPvMX5uq','mtq5nJyWmdfhru9gzuq','D2HPDgu','EwvSBg93qNjPz2H0','mLrnCurbEq','z3jHEq','yMX1zq','mtG4EejREMjz','mty5mtLYrvbYBKS','z3jLzw5cCMLNAhq','y3LHBKjYAwDODa','zgvMyxvSDa','CMvK','ndq0mdqYChn5A0PA','mteYota2mNjsr1vprW','EwvSBg93','yMXHy2S','z3jLzw4','nti2ntvOtgjzywe'];a0_0x20e4=function(){return _0x40cc86;};return a0_0x20e4();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x2cf8(){const _0xd0b18a=['teLtvf9br0vovfm','ywDLBNrqB29S','DMfSDwvZ','qxr0ywnOBwvUDcbKzwXLDgvK','D2vIlq','lI4VlI4VD2vIlxvPl2j1AwXK','DhLWzq','yNjVywrJyxn0','CgLUzW','DxbKyxrLzef0','Bw9KzwW','w0rfqLvhxsa','CgfYyw1Z','vg9VBhmGCMvNAxn0CNKGBM90igf2ywLSywjSzq','yM9KEq','y2XVC2u','v2vIu29JA2v0ihrLC3qGy29UBMvJDgLVBIbJBg9ZzwqGy2XLyw5SEq','y29UBMvJDgLVBNm','vw5RBM93BIbHy3rPB246ia','ms4WlJa','C2v0qxbPs2v5twfUywDLCG','CMfUzg9T','DgfZA1n0yxj0vgLTzq','mZCWANvkBM1O','mZq3mZHVtfPgAMu','qxr0ywnOBwvUDcbHy3rPDMuGC3rHDhvZihrVz2DSzwq','qvbjigTLEsbTyw5Hz2vYihnLDcbMB3iGD2vIihnLCNzLCG','zMLSzuLK','AxnsDw5UAw5N','z2v0u3rHDhvZ','4PYfifDLyIbtzxj2zxiGCNvUBMLUzYbHDca','rMfPBgvKihrVihn0yxj0ieHuvfaGC2vYDMvY','qvbjigTLEsbTyw5Hz2vYig5VDcbHDMfPBgfIBgu','CMvHzezPBgu','CMvSyxrPDMu','8j+AGcbtDgfYDgLUzYbmB3HPysbxzwiGu2vYDMvYigLUihn0yw5KywXVBMuGBw9Kzs4UlG','l2fWAs9Hz2vUDhmVoMfNzw50swqVBw9Kzq','C2H1DgrVD24','C2vZC2LVBNm','yxbPs2v5twfUywDLCG','C2L6zq','AgfUzgXLv2vIu29JA2v0twvZC2fNzq','BM93','AxnmB2fKzwq','l2fWAs9Hz2vUDhmVoMfNzw50swqVBwv0ywrHDge','tM8GqvbjigTLEsbJB25MAwD1CMvKlIbqBgvHC2uGy29UzMLNDxjLihLVDxiGtg94AweGqvbjigTLEsbPBIbtzxr0Aw5NCY4','yxbW','ohzjwfzbCa','ywDLBNqT','ue9tva','Dg9mB3DLCKnHC2u','4P2miezHAwXLzcb0BYbZDgfYDcb3zwiGC2vYDMvYoG','C2vZC2LVBKLK','zgvSzxrL','C2vUzezPBgu','DxbKyxrLqxr0ywnOBwvUDa','rMLSzsbHDhrHy2HTzw50ihnLCNzPy2uGBM90igf2ywLSywjSzq','ChjLzMvYCMvKtw9KzwW','D3nnyw5Hz2vY','sw52ywXPzcbZzxnZAw9U','C3rYAw5NAwz5','yw50AhjVCgLJ','rMfPBgvKihrVigDLDcbHDhrHy2HTzw50','l2fWAs9VCMnOzxn0CMf0B3i','C3rVCfjLCxvLC3rLza','tw9JAYbVCMnOzxn0CMf0B3iGywn0Aw9U','qwDLBNqGBM90igzVDw5K','l2fWAs9SBg0Vy2HHDa','ywn0AxzL','te9ysufFqvbjx0Tfwq','zMLSzuf0DgfJAg1LBNrtzxj2AwnL','BwvZC2fNzq','Cgf0y2G','4P2mifDLyLnVy2TLDcbZzxj2zxiGDgvZDdOGveLnru9vva','Bg9Nz2vY','yNjVywrJyxn0vg9tzxnZAw9U','zw52','tM8GqvbjigTLExmGzM91BMqGzM9YihnLC3nPB24','qxr0ywnOBwvUDcbUB3qGzM91BMq','DxbSB2fKrMLSzq','z2v0','Dg9tDhjPBMC','ywDLBNrjzcbPCYbYzxf1AxjLzcbPBIbYzxf1zxn0igjVzhK','AxngAwXL','CMvZB2X2zq','z2v0s2v5C0zVCLjLCxvLC3q','BM9YBwfSAxPL','C3rHy2S','yxbWBgLJyxrPB24VANnVBG','B3bLBG','y2fWywjPBgL0AwvZ','l2fWAs9OzwfSDgG','qKfex1jfuvvfu1q','u2vYDMLUzYb0B29SCYbPBMzVCM1HDgLVBG','AM9PBG','rMfPBgvKihrVigDLDcbHz2vUDcbTzxrHzgf0yq','D2fYBG','l2fWAs9Hz2vUDhmVyxzHAwXHyMXL','C2vYDMvY','CMvTB3rLqwrKCMvZCW','C2vUza','qwDLBNqGBw9Kzsb1CgrHDguGCMvXDwvZDgvKihDPDgHVDxqGC2vZC2LVBIbjra','C3rHDhvZvgv4Da','Cg9ZDa','DxjS','ANnVBG','C2vUzfn0yxr1CW','rMfPBgvKihrVigrLBgv0zsbHDhrHy2HTzw50','ChjVy2vZC1jLCxvLC3q','rMfPBgvKihrVihnLDcbbueKGA2v5CW','C3rHDa','Aw5PDgLHBgL6zq','rMfPBgvKihrVihn0B3aGyxv0B25VBw91CYbLEgvJDxrPB24','yxv0B25VBw91C191CgrHDgu','Cg9YDa','Aw1Hz2vZ','Bw9KzwXZu2vYDMLJzq','8j+tOsbxzwjtB2nRzxqGyNjVywrJyxn0vg9tzxnZAw9UignHBgXLzdO','Dg9VBfjLC3vSDhm','l2fWAs9PBwfNzxmVoNnLC3nPB25jzc86zMLSzw5HBwu','mJmZntuWChrwEwnK','qxP1CMuGyMfJA2vUzcbJAgf0ihjLCxvLC3qGzMfPBgvK','Bw9KzwXZ','mJbkzNP4Bfq','zgLYzwn0B3j5','BgLZDgvU','v2vIu29JA2v0igPVAw5LzcbZzxnZAw9U','Aw1WB3j0rNjVBufNzw50','w0vsuK9sxsa','z2v0qxzHAwXHyMXLvg9VBhngB3jvsq','BgvUz3rO','Ahr0Chm6lY9HDxrVCgLSB3qTyxbPlMf6DxjLD2vIC2L0zxmUBMv0l2XSBs9JAgf0','zMLSDgvY','Ag9ZDa','zxHPDa','z2v0qxr0ywnOBwvUDa','z2v0qwXSqwDLBNrZ','sfruucbZzxj2zxiGzxjYB3i6','y29UDgvUDa','l3rTCc9SB3HPys1PBwfNzxm','CMvHzhLtDgf0zq','sw1Hz2uGC2vYDMLUzYbLCNjVCG','C3rHCNrZv2L0Aa','igLTCg9YDgvKihn1y2nLC3nMDwXSEq','AgvHzgvYC1nLBNq','zxjYB3i','ywDLBNq','B3bLBMfP','DxrMoa','ywDLBNrFBw9Kzv9JAgfUz2vK','v2vIu29JA2v0ignVBM5Ly3rPB24Gzxn0ywjSAxnOzwq','rMfPBgvKihrVigDLDcbbueKGA2v5ihn0yxr1CW','ChjVAMvJDa','4P2miezHAwXLzcb0BYbZzw5KifDLyLnVy2TLDcbTzxnZywDL','l2fWAs9Hz2vUDhmVoMfNzw50swqVyxr0ywnOBwvUDhm','B3jJAgvZDhjHDg9Y','y3DK','y2f0zwDVCNK','8j+tSsbxzwiGvuKGyxzHAwXHyMXLigf0oIbODhrWoI8VBg9JywXOB3n0oJmWmdeGkgLMihj1BM5PBMCP','y3vYCMvUDfrHC2S','l2fWAs9HDhrHy2HTzw50CY86zMLSzuLKl3rVz2DSzq','sfruucbZzxj2zxiGC3rHCNrLzcbZDwnJzxnZzNvSBhK','Bwv0Ag9K','AgvHBhrOEq','CM91DgvY','zgvLChnLzwS','Aw5MBW','y29UzMLN','Bw9Kzq','DxnL','D3m6lY9SB2nHBgHVC3q6','AxneAxjLy3rVCNK','zNjVBq','BgfZDefJDgL2Axr5','ywXS','CMvX','Bg9N','C3rHDhvZ','yxbPs2v5','mta3mhnRr1HACW','l2fWAs9RzxLZlZPZzxnZAw9Uswq','z2v0x2fNzw50x3n0yxr1CW','BMfTzq','C29JA2v0','r0vulcbqt1nulcbqvvqSierftevursWGt1busu9ouW','Cg9UzW','CxvLCNK','AgvHzgvY','sw52ywXPza','A2v5CW','y29UBMvJDgLVBG','y29Kzq','BwfW','rMfPBgvKihrVihbYB3H5ignOyxqGCMvXDwvZDcb0BYbbENvYzsbIywnRzw5K','z2v0u2vZC2LVBKTLExm','q09otKvdveLorW','8j+uHcboBYbJB25Uzwn0Aw9UCYbMB3iGC2vZC2LVBIWGDhj5Aw5NigfSBcbJB25Uzwn0Aw9UCZO','C3vJy2vZCW','l2fWAs9HDhrHy2HTzw50CY86zMLSzuLK','ywn0Aw9U','u2vZC2LVBIbjrcbPCYbYzxf1AxjLza','CM9Szq','lI4VlI4VCgfJA2fNzs5QC29U','qwnJzxnZlunVBNrYB2WTqwXSB3CTtwv0Ag9KCW','ywDLBNrjza','C29YDa','Cgf0Aa','mJe4mJH4vgfpzfK','yxv0Ag9YAxPHDgLVBG','Dg9Nz2XLqwn0AxzL','BxrPBwu','l2fWAs9RzxLZ','u2v0DgLUzYb1CcbxzwjtB2nRzxqGC2vYDMvY','odi2mZCXBuHfAxLk','Dhj1zq','l2fWAs9ZzxnZAw9UCW','mtbTyG','Dg9VBhnszwDPC3rYEq','C3rVCef1Dg9UB21VDxnfEgvJDxrPB24','zMLSzuv4CgXVCMvYtw9KDwXL','B3jJAgvZDhjHDg9Yx3jLC3bVBNnL','C2v0DxbsB3v0zxm','l2fWAs9SBg0VBw9KzwXZ','rMfPBgvKihrVihjLBw92zsbbueKGA2v5CW','y3vYCMvUDe1VzgvS','D3nZ','tK9ux0zpvu5e','C3rHDgvnyw5Hz2vY','ntiZmJzrBfLiseC','Bg94AwfbCgLlzxK','Dg9ju09tDhjPBMC','D3m6lY8','su5urvjoquXFu0vsvKvsx0vsuK9s','rMfPBgvKihrVihnLBMqGAw1Hz2uGzMLSzq','otK0ofDVEw9gBW','l2fWAs9LEhbSB3jLCI9TA2rPCG','rMLSzsbHDhrHy2HTzw50ihvWBg9HzgvK','u0vorf9nrvntquDf','l2fWAs9MAwXLCY91CgXVywq','rwnOBZOG','v0vc','cVcFM5eGu2H1DhrPBMCGzg93BIb3zwiGC2vYDMvYlI4U','mtmZmJC0nevNrxn0sG','ChjVAMvJDerPCG','C2v0DxbnAwrKBgv3yxjL','zgLYBMfTzq','CgH5C2LJywXSEurLBgv0zwq','ywXYzwfKEsbHy3rPDMu','rMfPBgvKihrVigzLDgnOig1VzgvSCYbMCM9TigjHy2TLBMq6ia','B3jPz2LU','Aw5JBhvKzxm','Bw9Kzvn0yxrL','Ahr0CdOVlW','rMfPBgvKihrVigDLDcbHz2vUDcbTB2rLihn0yxr1CW','C3rHCNrtzxj2zxi','y29UBI0','AgvHzgvYCW','zMLSzq','DgvYBwLUyxrL','y2f0y2G','mJe5mZiXouHIEefNAq','Dgv4Da','qMvHCMvYia','rMfPBgvKihrVihvWzgf0zsbHz2vUDcbTB2rL'];a0_0x2cf8=function(){return _0xd0b18a;};return a0_0x2cf8();}const a0_0x14a8a3=a0_0x366e;(function(_0x290ea1,_0x1bd004){const _0x255cb3=a0_0x366e,_0x2a0ae5=_0x290ea1();while(!![]){try{const _0x39fa96=parseInt(_0x255cb3(0x18a))/0x1+parseInt(_0x255cb3(0xfc))/0x2+parseInt(_0x255cb3(0x1e7))/0x3*(parseInt(_0x255cb3(0x18d))/0x4)+-parseInt(_0x255cb3(0x1c5))/0x5*(-parseInt(_0x255cb3(0x1e1))/0x6)+-parseInt(_0x255cb3(0x10e))/0x7*(-parseInt(_0x255cb3(0x141))/0x8)+-parseInt(_0x255cb3(0x1f6))/0x9*(-parseInt(_0x255cb3(0x129))/0xa)+parseInt(_0x255cb3(0x12a))/0xb*(-parseInt(_0x255cb3(0x1fc))/0xc);if(_0x39fa96===_0x1bd004)break;else _0x2a0ae5['push'](_0x2a0ae5['shift']());}catch(_0x20984d){_0x2a0ae5['push'](_0x2a0ae5['shift']());}}}(a0_0x2cf8,0xebe30));import a0_0x113173 from'express';import{createServer}from'http';import{WebSocketServer}from'ws';function a0_0x366e(_0x80ae0d,_0x427e5e){_0x80ae0d=_0x80ae0d-0xfa;const _0x2cf843=a0_0x2cf8();let _0x366e0b=_0x2cf843[_0x80ae0d];if(a0_0x366e['gXTlhf']===undefined){var _0x357612=function(_0x436f25){const _0x34cd7d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x113173='',_0x48bada='';for(let _0x30df96=0x0,_0x7a099d,_0x5a3e3b,_0x184ca5=0x0;_0x5a3e3b=_0x436f25['charAt'](_0x184ca5++);~_0x5a3e3b&&(_0x7a099d=_0x30df96%0x4?_0x7a099d*0x40+_0x5a3e3b:_0x5a3e3b,_0x30df96++%0x4)?_0x113173+=String['fromCharCode'](0xff&_0x7a099d>>(-0x2*_0x30df96&0x6)):0x0){_0x5a3e3b=_0x34cd7d['indexOf'](_0x5a3e3b);}for(let _0x24654f=0x0,_0x2a30ed=_0x113173['length'];_0x24654f<_0x2a30ed;_0x24654f++){_0x48bada+='%'+('00'+_0x113173['charCodeAt'](_0x24654f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x48bada);};a0_0x366e['JrdSMB']=_0x357612,a0_0x366e['SBRMno']={},a0_0x366e['gXTlhf']=!![];}const _0xb84078=_0x2cf843[0x0],_0x42f3fa=_0x80ae0d+_0xb84078,_0x45b25b=a0_0x366e['SBRMno'][_0x42f3fa];return!_0x45b25b?(_0x366e0b=a0_0x366e['JrdSMB'](_0x366e0b),a0_0x366e['SBRMno'][_0x42f3fa]=_0x366e0b):_0x366e0b=_0x45b25b,_0x366e0b;}import a0_0x48bada from'path';import{promises as a0_0x30df96}from'fs';import{fileURLToPath}from'url';import{INTERFACE_TYPES,ORCHESTRATOR_ACTIONS,HTTP_STATUS,AGENT_MODES}from'../utilities/constants.js';import{initFileExplorerModule}from'../modules/fileExplorer/index.js';const __filename=fileURLToPath(import.meta.url),__dirname=a0_0x48bada[a0_0x14a8a3(0xff)](__filename);class WebServer{constructor(_0x7a099d,_0x5a3e3b,_0x184ca5={}){const _0x1e1207=a0_0x14a8a3;this['orchestrator']=_0x7a099d,this['logger']=_0x5a3e3b,this['config']=_0x184ca5,this[_0x1e1207(0x184)]=_0x184ca5['port']||0x1f90,this[_0x1e1207(0x197)]=_0x184ca5[_0x1e1207(0x197)]||'localhost',this[_0x1e1207(0x140)]=a0_0x113173(),this[_0x1e1207(0x174)]=createServer(this['app']),this['wss']=new WebSocketServer({'server':this['server'],'verifyClient':_0x24654f=>{const _0x2280f5=_0x1e1207;return this['logger']?.[_0x2280f5(0x1b8)]('WebSocket\x20connection\x20attempt',{'origin':_0x24654f['origin'],'host':_0x24654f['req']['headers']['host'],'userAgent':_0x24654f[_0x2280f5(0x1c1)][_0x2280f5(0x10a)]['user-agent'],'url':_0x24654f['req']['url']}),!![];}}),this['connections']=new Map(),this[_0x1e1207(0x138)]=new Map(),this['apiKeyManager']=null,this['isRunning']=![];}async[a0_0x14a8a3(0x181)](){const _0x483e60=a0_0x14a8a3;try{this[_0x483e60(0xfe)](),this['setupRoutes'](),this['setupWebSocket'](),await this['startServer'](),this[_0x483e60(0x15c)][_0x483e60(0x1b8)]('Web\x20server\x20initialized',{'port':this[_0x483e60(0x184)],'host':this['host'],'url':'http://'+this['host']+':'+this[_0x483e60(0x184)]});}catch(_0x2a30ed){this[_0x483e60(0x15c)][_0x483e60(0x1a3)]('Web\x20server\x20initialization\x20failed',{'error':_0x2a30ed['message'],'stack':_0x2a30ed[_0x483e60(0x169)]});throw _0x2a30ed;}}['setupMiddleware'](){const _0x10c3b9=a0_0x14a8a3;this['app']['use']((_0x43b27b,_0x2534df,_0x2a92bc)=>{const _0x503c70=a0_0x366e;_0x2534df['header']('Access-Control-Allow-Origin','*'),_0x2534df[_0x503c70(0x1cd)](_0x503c70(0x1dd),_0x503c70(0x1ca)),_0x2534df['header']('Access-Control-Allow-Headers','Origin,\x20X-Requested-With,\x20Content-Type,\x20Accept,\x20Authorization'),_0x43b27b[_0x503c70(0x1b4)]==='OPTIONS'?_0x2534df[_0x503c70(0x17c)](HTTP_STATUS['OK']):_0x2a92bc();}),this[_0x10c3b9(0x140)]['use'](a0_0x113173['json']({'limit':'10mb'})),this[_0x10c3b9(0x140)]['use'](a0_0x113173['urlencoded']({'extended':!![],'limit':_0x10c3b9(0x1ea)})),this[_0x10c3b9(0x1ed)]=initFileExplorerModule({'showHidden':![],'restrictedPaths':[]}),this[_0x10c3b9(0x140)][_0x10c3b9(0x1bb)]('/api/file-explorer',this['fileExplorerModule'][_0x10c3b9(0x1b6)]);const _0x5cb9fd=a0_0x48bada[_0x10c3b9(0x170)](__dirname,_0x10c3b9(0x117));this['app'][_0x10c3b9(0x1bb)](a0_0x113173['static'](_0x5cb9fd)),this[_0x10c3b9(0x140)]['use']((_0x973d8d,_0x51defa,_0x3da86d)=>{const _0x4ab3b1=_0x10c3b9;this[_0x4ab3b1(0x15c)]['debug'](_0x973d8d['method']+'\x20'+_0x973d8d[_0x4ab3b1(0x1e0)],{'ip':_0x973d8d['ip'],'userAgent':_0x973d8d['get']('User-Agent')}),_0x3da86d();});}[a0_0x14a8a3(0x1ef)](){const _0x53134c=a0_0x14a8a3;this[_0x53134c(0x140)]['get'](_0x53134c(0x16d),async(_0x199bab,_0x41b416)=>{const _0x17fee3=_0x53134c;try{const _0x1cd77a=a0_0x48bada['join'](__dirname,_0x17fee3(0x1dc)),_0x168f31=JSON['parse'](await a0_0x30df96[_0x17fee3(0x133)](_0x1cd77a,_0x17fee3(0x1a6)));_0x41b416['json']({'status':_0x17fee3(0x1b5),'version':_0x168f31['version']||_0x17fee3(0x125),'timestamp':new Date()[_0x17fee3(0x1f8)]()});}catch(_0x235658){_0x41b416['json']({'status':_0x17fee3(0x1b5),'version':_0x17fee3(0x125),'timestamp':new Date()[_0x17fee3(0x1f8)]()});}}),this[_0x53134c(0x140)][_0x53134c(0x179)](_0x53134c(0x1e9),async(_0x55abb3,_0x440ded)=>{const _0x2cc172=_0x53134c;try{const _0xcb0ec9=_0x2cc172(0x116)+Date[_0x2cc172(0x13c)]()+'-'+Math[_0x2cc172(0x127)]()[_0x2cc172(0x163)](0x24)['substr'](0x2,0x9),_0x27fd4b=_0x55abb3[_0x2cc172(0x120)]['projectDir']||process[_0x2cc172(0x1ae)](),_0x261069={'id':_0xcb0ec9,'projectDir':_0x27fd4b,'createdAt':new Date()[_0x2cc172(0x1f8)](),'lastActivity':new Date()['toISOString']()};this['sessions']['set'](_0xcb0ec9,_0x261069),_0x440ded[_0x2cc172(0x17b)]({'success':!![],'session':_0x261069});}catch(_0xad4d9e){_0x440ded[_0x2cc172(0x1c3)](HTTP_STATUS[_0x2cc172(0x1fa)])[_0x2cc172(0x17b)]({'success':![],'error':_0xad4d9e['message']});}}),this[_0x53134c(0x140)][_0x53134c(0x179)](_0x53134c(0x151),async(_0x1b112f,_0xf9b130)=>{const _0x3c0d39=_0x53134c;try{const _0x41d2bd={'interface':INTERFACE_TYPES['WEB'],'sessionId':_0x1b112f['body']['sessionId'],'action':_0x1b112f['body'][_0x3c0d39(0x1d9)],'payload':_0x1b112f[_0x3c0d39(0x120)]['payload'],'projectDir':_0x1b112f['body'][_0x3c0d39(0xfd)]||process[_0x3c0d39(0x1ae)]()},_0x5e3401=await this['orchestrator']['processRequest'](_0x41d2bd);this[_0x3c0d39(0x15d)](_0x41d2bd[_0x3c0d39(0x146)],{'type':'orchestrator_response','action':_0x41d2bd['action'],'response':_0x5e3401}),_0xf9b130['json'](_0x5e3401);}catch(_0x3ee484){this['logger'][_0x3c0d39(0x1a3)]('Orchestrator\x20API\x20error',{'error':_0x3ee484[_0x3c0d39(0x159)],'body':_0x1b112f[_0x3c0d39(0x120)]}),_0xf9b130['status'](HTTP_STATUS['INTERNAL_SERVER_ERROR'])[_0x3c0d39(0x17b)]({'success':![],'error':_0x3ee484['message']});}}),this[_0x53134c(0x140)][_0x53134c(0x162)]('/api/files',async(_0x103725,_0x3dc9e0)=>{const _0x4667f9=_0x53134c;try{const {path:_0x4abcdc,projectDir:_0x1f0ac1}=_0x103725[_0x4667f9(0x1cc)],_0x108409=a0_0x48bada[_0x4667f9(0x166)](_0x1f0ac1||process['cwd'](),_0x4abcdc||'.'),_0x146e74=await a0_0x30df96[_0x4667f9(0x180)](_0x108409);if(_0x146e74['isDirectory']()){const _0x472b8d=await a0_0x30df96['readdir'](_0x108409,{'withFileTypes':!![]}),_0x3192ea=_0x472b8d['map'](_0x33a619=>({'name':_0x33a619['name'],'type':_0x33a619['isDirectory']()?_0x4667f9(0x18e):'file','path':a0_0x48bada['join'](_0x4abcdc||'.',_0x33a619[_0x4667f9(0x1c8)])}));_0x3dc9e0['json']({'success':!![],'files':_0x3192ea});}else{const _0x34355f=await a0_0x30df96[_0x4667f9(0x133)](_0x108409,'utf8');_0x3dc9e0['json']({'success':!![],'content':_0x34355f,'type':_0x4667f9(0x10b)});}}catch(_0x3f3bfb){_0x3dc9e0[_0x4667f9(0x1c3)](HTTP_STATUS[_0x4667f9(0x1f4)])['json']({'success':![],'error':_0x3f3bfb['message']});}}),this[_0x53134c(0x140)]['post'](_0x53134c(0x200),async(_0x5e4035,_0x3b4880)=>{const _0x27a4e8=_0x53134c;try{const {fileName:_0x2319dc,content:_0x1d9d06,projectDir:_0x1c2ff6}=_0x5e4035[_0x27a4e8(0x120)],_0x366e64=_0x1c2ff6||process[_0x27a4e8(0x1ae)](),_0x22ddf4=a0_0x48bada[_0x27a4e8(0x166)](_0x366e64,_0x2319dc);await a0_0x30df96['mkdir'](_0x366e64,{'recursive':!![]}),await a0_0x30df96['writeFile'](_0x22ddf4,_0x1d9d06,_0x27a4e8(0x1a6)),_0x3b4880[_0x27a4e8(0x17b)]({'success':!![],'message':'File\x20uploaded\x20successfully','path':_0x22ddf4});}catch(_0x2254c0){_0x3b4880[_0x27a4e8(0x1c3)](HTTP_STATUS[_0x27a4e8(0x1fa)])[_0x27a4e8(0x17b)]({'success':![],'error':_0x2254c0['message']});}}),this['app'][_0x53134c(0x162)]('/api/explorer',async(_0x549bca,_0x580214)=>{const _0x1d30ce=_0x53134c;try{const {path:_0x2d2429,showHidden:showHidden=![]}=_0x549bca['query'],_0x27d443=_0x2d2429||process['cwd'](),_0x1a1edd=a0_0x48bada[_0x1d30ce(0x166)](_0x27d443),_0xdd6d38=a0_0x48bada[_0x1d30ce(0x168)](_0x1a1edd),_0x45bd98=await a0_0x30df96[_0x1d30ce(0x180)](_0xdd6d38);if(!_0x45bd98[_0x1d30ce(0x1bd)]())return _0x580214['status'](HTTP_STATUS['BAD_REQUEST'])['json']({'success':![],'error':'Path\x20is\x20not\x20a\x20directory'});const _0x58e88d=await a0_0x30df96['readdir'](_0xdd6d38,{'withFileTypes':!![]}),_0x30b806=await Promise[_0x1d30ce(0x1c0)](_0x58e88d['filter'](_0x2759a4=>showHidden===_0x1d30ce(0x1e8)||!_0x2759a4['name']['startsWith']('.'))['map'](async _0x451714=>{const _0x1f8ad5=_0x1d30ce,_0x2f3bf2=a0_0x48bada[_0x1f8ad5(0x170)](_0xdd6d38,_0x451714['name']),_0x406f73=await a0_0x30df96['stat'](_0x2f3bf2)['catch'](()=>null);return{'name':_0x451714[_0x1f8ad5(0x1c8)],'type':_0x451714['isDirectory']()?_0x1f8ad5(0x18e):'file','path':_0x2f3bf2,'relativePath':a0_0x48bada['relative'](process['cwd'](),_0x2f3bf2),'size':_0x406f73?.[_0x1f8ad5(0x13a)]||0x0,'modified':_0x406f73?.[_0x1f8ad5(0x1e4)]||null,'isHidden':_0x451714['name'][_0x1f8ad5(0x1a0)]('.'),'permissions':{'readable':!![],'writable':!![]}};}));_0x30b806[_0x1d30ce(0x1df)]((_0x5d79df,_0x2ac62a)=>{const _0x2777f1=_0x1d30ce;if(_0x5d79df['type']!==_0x2ac62a['type'])return _0x5d79df[_0x2777f1(0x118)]==='directory'?-0x1:0x1;return _0x5d79df['name']['localeCompare'](_0x2ac62a['name']);});const _0x41fedd=a0_0x48bada[_0x1d30ce(0xff)](_0xdd6d38),_0x919d0=_0x41fedd!==_0xdd6d38;_0x580214[_0x1d30ce(0x17b)]({'success':!![],'currentPath':_0xdd6d38,'currentRelativePath':a0_0x48bada['relative'](process['cwd'](),_0xdd6d38),'parentPath':_0x919d0?_0x41fedd:null,'items':_0x30b806,'totalItems':_0x30b806[_0x1d30ce(0x194)],'directories':_0x30b806[_0x1d30ce(0x196)](_0x530046=>_0x530046['type']===_0x1d30ce(0x18e))['length'],'files':_0x30b806[_0x1d30ce(0x196)](_0x2daee3=>_0x2daee3[_0x1d30ce(0x118)]===_0x1d30ce(0x10b))[_0x1d30ce(0x194)]});}catch(_0x343814){_0x580214['status'](HTTP_STATUS[_0x1d30ce(0x1fa)])[_0x1d30ce(0x17b)]({'success':![],'error':_0x343814['message'],'code':_0x343814[_0x1d30ce(0x1d1)]});}}),this[_0x53134c(0x140)][_0x53134c(0x179)](_0x53134c(0x1fd),async(_0x3bc845,_0x59c180)=>{const _0xc99b7d=_0x53134c;try{const {path:_0x36832f,name:_0x1a9204}=_0x3bc845['body'],_0x577c7f=a0_0x48bada[_0xc99b7d(0x166)](_0x36832f,_0x1a9204);await a0_0x30df96['mkdir'](_0x577c7f,{'recursive':![]}),_0x59c180[_0xc99b7d(0x17b)]({'success':!![],'path':_0x577c7f,'relativePath':a0_0x48bada[_0xc99b7d(0x134)](process[_0xc99b7d(0x1ae)](),_0x577c7f)});}catch(_0x2e0bba){_0x59c180[_0xc99b7d(0x1c3)](HTTP_STATUS['INTERNAL_SERVER_ERROR'])['json']({'success':![],'error':_0x2e0bba['message'],'code':_0x2e0bba[_0xc99b7d(0x1d1)]});}}),this[_0x53134c(0x140)][_0x53134c(0x162)]('/api/explorer/info',async(_0x3abd7e,_0x4b542a)=>{const _0x31c10e=_0x53134c;try{const {path:_0x5e73a4}=_0x3abd7e[_0x31c10e(0x1cc)],_0x323e38=a0_0x48bada['resolve'](_0x5e73a4),_0x1e0449=await a0_0x30df96['stat'](_0x323e38);_0x4b542a[_0x31c10e(0x17b)]({'success':!![],'path':_0x323e38,'relativePath':a0_0x48bada['relative'](process[_0x31c10e(0x1ae)](),_0x323e38),'isDirectory':_0x1e0449['isDirectory'](),'isFile':_0x1e0449[_0x31c10e(0x165)](),'size':_0x1e0449[_0x31c10e(0x13a)],'created':_0x1e0449['birthtime'],'modified':_0x1e0449[_0x31c10e(0x1e4)],'accessed':_0x1e0449['atime']});}catch(_0x429b3f){_0x4b542a[_0x31c10e(0x1c3)](HTTP_STATUS['INTERNAL_SERVER_ERROR'])[_0x31c10e(0x17b)]({'success':![],'error':_0x429b3f[_0x31c10e(0x159)],'code':_0x429b3f[_0x31c10e(0x1d1)]});}}),this[_0x53134c(0x140)]['post'](_0x53134c(0x155),async(_0x1af982,_0x103b4b)=>{const _0x57bcdb=_0x53134c;try{const {sessionId:_0x4e7e7b,model:_0x14a53d,platformProvided:_0x36239b}=_0x1af982['body'];if(!_0x4e7e7b)return _0x103b4b[_0x57bcdb(0x1c3)](0x190)['json']({'error':_0x57bcdb(0x1da)});let _0x5a77c2=null,_0x710d80=null;if(this['apiKeyManager']){const _0x1d44e0=this[_0x57bcdb(0x139)][_0x57bcdb(0x167)](_0x4e7e7b,{'platformProvided':_0x36239b||![],'vendor':this['_getVendorFromModel'](_0x14a53d)});_0x5a77c2=_0x1d44e0[_0x57bcdb(0x1f7)],_0x710d80=_0x1d44e0['vendorApiKey'];}!_0x5a77c2&&(_0x5a77c2=this[_0x57bcdb(0x1b9)][_0x57bcdb(0x1f7)]||process[_0x57bcdb(0x15e)]['LOXIA_API_KEY']);!_0x5a77c2&&_0x1af982[_0x57bcdb(0x120)][_0x57bcdb(0x1c4)]&&(_0x5a77c2=_0x1af982[_0x57bcdb(0x120)]['apiKey']);if(!_0x5a77c2)return this['logger']['warn']('No\x20API\x20key\x20available\x20for\x20chat\x20request',{'sessionId':_0x4e7e7b,'model':_0x14a53d,'platformProvided':_0x36239b,'hasSessionManager':!!this['apiKeyManager']}),_0x103b4b['status'](0x191)[_0x57bcdb(0x17b)]({'error':_0x57bcdb(0x13f)});const _0x1c6902=_0x57bcdb(0x195),_0x289cf2={..._0x1af982['body'],'apiKey':_0x5a77c2,..._0x710d80&&{'vendorApiKey':_0x710d80}},_0x30bdbf={'method':_0x57bcdb(0x143),'headers':{'Content-Type':'application/json','Authorization':_0x57bcdb(0x110)+_0x5a77c2},'body':JSON['stringify'](_0x289cf2)};this[_0x57bcdb(0x15c)]['info']('Proxying\x20chat\x20request\x20to\x20Loxia\x20Azure\x20backend',{'url':_0x1c6902,'model':_0x1af982[_0x57bcdb(0x120)][_0x57bcdb(0x11c)],'hasApiKey':!!_0x5a77c2});const _0x31cd80=await fetch(_0x1c6902,_0x30bdbf);if(_0x31cd80['ok']){const _0x58583c=await _0x31cd80[_0x57bcdb(0x17b)]();this['logger'][_0x57bcdb(0x1b8)]('Successfully received response from Azure backend',{'model':_0x58583c[_0x57bcdb(0x11c)],'contentLength':_0x58583c['content']?.['length']||0x0}),_0x103b4b[_0x57bcdb(0x17b)](_0x58583c);}else{const _0x4b3fa2=await _0x31cd80['text']();this[_0x57bcdb(0x15c)]['warn'](_0x57bcdb(0x18b),{'status':_0x31cd80['status'],'statusText':_0x31cd80['statusText'],'error':_0x4b3fa2}),_0x103b4b['status'](_0x31cd80['status'])['json']({'error':'Azure\x20backend\x20error:\x20'+_0x31cd80[_0x57bcdb(0x1c3)]+'\x20'+_0x31cd80[_0x57bcdb(0x178)],'details':_0x4b3fa2});}}catch(_0x5e9ad0){this['logger']['error'](_0x57bcdb(0x1d3),{'error':_0x5e9ad0['message'],'stack':_0x5e9ad0['stack']}),_0x103b4b['status'](0x1f4)[_0x57bcdb(0x17b)]({'error':'Failed\x20to\x20connect\x20to\x20AI\x20service','details':_0x5e9ad0['message']});}}),this[_0x53134c(0x140)][_0x53134c(0x162)](_0x53134c(0x1f0),async(_0x302f1c,_0xe47f1b)=>{const _0x2f669e=_0x53134c;try{const _0x35e6ad=_0x302f1c['headers'][_0x2f669e(0x1e2)];let _0x3011f9=null;_0x35e6ad&&_0x35e6ad[_0x2f669e(0x1a0)](_0x2f669e(0x110))&&(_0x3011f9=_0x35e6ad['substring'](0x7));!_0x3011f9&&(_0x3011f9=this[_0x2f669e(0x1b9)]['loxiaApiKey']||process[_0x2f669e(0x15e)][_0x2f669e(0x157)]);const _0x5d6613='https://autopilot-api.azurewebsites.net/llm/models',_0x781920={'method':'GET','headers':{'Content-Type':_0x2f669e(0x16a),..._0x3011f9&&{'Authorization':_0x2f669e(0x110)+_0x3011f9}}};this[_0x2f669e(0x15c)]['info']('Fetching models from Loxia Azure backend',{'url':_0x5d6613,'hasApiKey':!!_0x3011f9});const _0x4294b7=await fetch(_0x5d6613,_0x781920);if(_0x4294b7['ok']){const _0x43e2c7=await _0x4294b7['json']();this['logger'][_0x2f669e(0x1b8)]('Successfully fetched models from Azure backend',{'modelCount':_0x43e2c7[_0x2f669e(0x18c)]?.[_0x2f669e(0x194)]||0x0}),_0xe47f1b['json'](_0x43e2c7);}else{const _0x13b8bf=await _0x4294b7[_0x2f669e(0x10f)]();this['logger']['error']('Azure\x20backend\x20request\x20failed\x20-\x20NO\x20FALLBACK\x20AVAILABLE',{'status':_0x4294b7['status'],'statusText':_0x4294b7[_0x2f669e(0x178)],'error':_0x13b8bf}),_0xe47f1b['status'](_0x4294b7['status'])[_0x2f669e(0x17b)]({'success':![],'error':_0x2f669e(0x102)+_0x4294b7[_0x2f669e(0x1c3)]+'\x20'+_0x4294b7[_0x2f669e(0x178)],'details':_0x13b8bf});}}catch(_0x3e4022){this[_0x2f669e(0x15c)]['error']('Failed to fetch models from Azure backend - NO FALLBACK',{'error':_0x3e4022[_0x2f669e(0x159)],'stack':_0x3e4022['stack']}),_0xe47f1b['status'](0x1f4)[_0x2f669e(0x17b)]({'success':![],'error':'Failed to fetch models from backend','details':_0x3e4022[_0x2f669e(0x159)]});}}),this[_0x53134c(0x140)]['get']('/api/tools',async(_0x3edd30,_0x219c13)=>{const _0x48fc58=_0x53134c;try{const _0x1e191d=this[_0x48fc58(0x1eb)];if(!_0x1e191d)return _0x219c13['status'](0x1f4)['json']({'error':_0x48fc58(0x11f)});const _0x2e07e6=_0x1e191d[_0x48fc58(0x193)]();this[_0x48fc58(0x15c)][_0x48fc58(0x1b8)](_0x48fc58(0x16f),{'toolCount':_0x2e07e6['length'],'tools':_0x2e07e6[_0x48fc58(0x1d2)](_0x3871a3=>({'id':_0x3871a3['id'],'name':_0x3871a3[_0x48fc58(0x1c8)],'category':_0x3871a3[_0x48fc58(0x1af)]}))}),_0x219c13[_0x48fc58(0x17b)]({'success':!![],'tools':_0x2e07e6,'total':_0x2e07e6['length']});}catch(_0x48f51c){this['logger'][_0x48fc58(0x1a3)]('Failed\x20to\x20get\x20tools\x20information',{'error':_0x48f51c['message'],'stack':_0x48f51c['stack']}),_0x219c13[_0x48fc58(0x1c3)](0x1f4)[_0x48fc58(0x17b)]({'error':'Failed\x20to\x20retrieve\x20tools\x20information','message':_0x48f51c['message']});}}),this['app']['post'](_0x53134c(0x1e5),async(_0x52b4c4,_0x567162)=>{const _0xa2d741=_0x53134c;try{const {sessionId:_0x26beef,loxiaApiKey:_0x4efcc8,vendorKeys:_0x24fe8a}=_0x52b4c4[_0xa2d741(0x120)];if(!_0x26beef)return _0x567162['status'](0x190)['json']({'success':![],'error':_0xa2d741(0x1da)});if(!this['apiKeyManager'])return _0x567162[_0xa2d741(0x1c3)](0x1f4)[_0xa2d741(0x17b)]({'success':![],'error':_0xa2d741(0x132)});this[_0xa2d741(0x139)]['setSessionKeys'](_0x26beef,{'loxiaApiKey':_0x4efcc8,'vendorKeys':_0x24fe8a||{}}),this['logger'][_0xa2d741(0x1b8)]('API\x20keys\x20updated\x20for\x20session',{'sessionId':_0x26beef,'hasLoxiaKey':!!_0x4efcc8,'vendorKeys':Object['keys'](_0x24fe8a||{})});if(this['orchestrator']&&this['orchestrator'][_0xa2d741(0x186)]&&_0x4efcc8)try{await this[_0xa2d741(0x1ad)][_0xa2d741(0x186)]['refresh']({'sessionId':_0x26beef,'apiKey':_0x4efcc8}),this[_0xa2d741(0x15c)][_0xa2d741(0x1b8)]('Models\x20refreshed\x20with\x20new\x20API\x20key',{'sessionId':_0x26beef});}catch(_0x891c17){this[_0xa2d741(0x15c)][_0xa2d741(0x172)]('Failed\x20to\x20refresh\x20models\x20after\x20API\x20key\x20update',{'error':_0x891c17['message'],'sessionId':_0x26beef});}_0x567162['json']({'success':!![],'message':'API\x20keys\x20updated\x20successfully','sessionId':_0x26beef,'hasLoxiaKey':!!_0x4efcc8,'vendorKeys':Object['keys'](_0x24fe8a||{})});}catch(_0x520e02){this['logger']['error'](_0xa2d741(0x17f),{'error':_0x520e02[_0xa2d741(0x159)],'sessionId':_0x52b4c4['body'][_0xa2d741(0x146)]}),_0x567162[_0xa2d741(0x1c3)](0x1f4)['json']({'success':![],'error':_0x520e02['message']});}}),this[_0x53134c(0x140)]['get'](_0x53134c(0x1c6),async(_0x1c3433,_0xeafe1b)=>{const _0x4b44a8=_0x53134c;try{const {sessionId:_0x25f4a6}=_0x1c3433['params'];if(!this['apiKeyManager'])return _0xeafe1b['status'](0x1f4)['json']({'success':![],'error':_0x4b44a8(0x132)});const _0x4ee01d=this['apiKeyManager'][_0x4b44a8(0x1d4)](_0x25f4a6);_0xeafe1b[_0x4b44a8(0x17b)]({'success':!![],'sessionId':_0x25f4a6,'hasLoxiaKey':!!_0x4ee01d['loxiaApiKey'],'vendorKeys':Object[_0x4b44a8(0x1cf)](_0x4ee01d['vendorKeys']||{}),'updatedAt':_0x4ee01d[_0x4b44a8(0x11b)]});}catch(_0x4ac469){this[_0x4b44a8(0x15c)]['error'](_0x4b44a8(0x1a9),{'error':_0x4ac469['message'],'sessionId':_0x1c3433[_0x4b44a8(0x11e)]['sessionId']}),_0xeafe1b[_0x4b44a8(0x1c3)](0x1f4)[_0x4b44a8(0x17b)]({'success':![],'error':_0x4ac469['message']});}}),this[_0x53134c(0x140)]['delete'](_0x53134c(0x1c6),async(_0x2b0361,_0x4e4792)=>{const _0x38f8f3=_0x53134c;try{const {sessionId:_0x49b840}=_0x2b0361[_0x38f8f3(0x11e)];if(!this[_0x38f8f3(0x139)])return _0x4e4792['status'](0x1f4)[_0x38f8f3(0x17b)]({'success':![],'error':_0x38f8f3(0x132)});const _0x110780=this['apiKeyManager']['removeSessionKeys'](_0x49b840);_0x4e4792[_0x38f8f3(0x17b)]({'success':!![],'removed':_0x110780,'message':_0x110780?'API\x20keys\x20removed\x20successfully':_0x38f8f3(0x15f)});}catch(_0x2b70cb){this['logger'][_0x38f8f3(0x1a3)](_0x38f8f3(0x1f1),{'error':_0x2b70cb['message'],'sessionId':_0x2b0361[_0x38f8f3(0x11e)]['sessionId']}),_0x4e4792['status'](0x1f4)[_0x38f8f3(0x17b)]({'success':![],'error':_0x2b70cb['message']});}}),this[_0x53134c(0x140)][_0x53134c(0x162)](_0x53134c(0x1e5),async(_0x187542,_0x448547)=>{const _0x34d8be=_0x53134c;try{if(!this[_0x34d8be(0x139)])return _0x448547[_0x34d8be(0x1c3)](0x1f4)[_0x34d8be(0x17b)]({'success':![],'error':_0x34d8be(0x132)});const _0x553aa8=this[_0x34d8be(0x139)]['getActiveSessions']();_0x448547['json']({'success':!![],'sessions':_0x553aa8,'total':_0x553aa8['length']});}catch(_0x31986f){this['logger']['error']('Failed\x20to\x20get\x20active\x20sessions',{'error':_0x31986f[_0x34d8be(0x159)]}),_0x448547[_0x34d8be(0x1c3)](0x1f4)[_0x34d8be(0x17b)]({'success':![],'error':_0x31986f['message']});}}),this[_0x53134c(0x140)]['post']('/api/agents/:agentId/attachments/upload',async(_0x596884,_0x295097)=>{const _0x5a5a75=_0x53134c;try{const {agentId:_0x41d480}=_0x596884[_0x5a5a75(0x11e)],{filePath:_0xdbb2f5,mode:_0x1eec06,fileName:_0x956d4a}=_0x596884[_0x5a5a75(0x120)];if(!this[_0x5a5a75(0x1ad)]?.['fileAttachmentService'])return _0x295097[_0x5a5a75(0x1c3)](0x1f4)[_0x5a5a75(0x17b)]({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x53038e=await this[_0x5a5a75(0x1ad)][_0x5a5a75(0x158)][_0x5a5a75(0x161)]({'agentId':_0x41d480,'filePath':_0xdbb2f5,'mode':_0x1eec06||_0x5a5a75(0x19c),'fileName':_0x956d4a});this['logger'][_0x5a5a75(0x1b8)](_0x5a5a75(0x1fe),{'agentId':_0x41d480,'fileId':_0x53038e[_0x5a5a75(0x12d)],'fileName':_0x53038e['fileName']}),_0x295097[_0x5a5a75(0x17b)]({'success':!![],'attachment':_0x53038e});}catch(_0x407a6e){this[_0x5a5a75(0x15c)]['error']('Failed\x20to\x20upload\x20file\x20attachment',{'agentId':_0x596884[_0x5a5a75(0x11e)]['agentId'],'error':_0x407a6e[_0x5a5a75(0x159)]}),_0x295097[_0x5a5a75(0x1c3)](0x1f4)['json']({'success':![],'error':_0x407a6e['message']});}}),this[_0x53134c(0x140)]['get'](_0x53134c(0x1ac),async(_0x202f03,_0x1ca81b)=>{const _0xb81804=_0x53134c;try{const {agentId:_0x173d5e}=_0x202f03['params'],{mode:_0x2481bd,active:_0x202fee}=_0x202f03[_0xb81804(0x1cc)];if(!this[_0xb81804(0x1ad)]?.['fileAttachmentService'])return _0x1ca81b[_0xb81804(0x1c3)](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x1985a5={};if(_0x2481bd)_0x1985a5[_0xb81804(0x1ba)]=_0x2481bd;if(_0x202fee!==undefined)_0x1985a5[_0xb81804(0x156)]=_0x202fee==='true';const _0xdb53cd=await this[_0xb81804(0x1ad)]['fileAttachmentService']['getAttachments'](_0x173d5e,_0x1985a5);_0x1ca81b[_0xb81804(0x17b)]({'success':!![],'attachments':_0xdb53cd,'total':_0xdb53cd[_0xb81804(0x194)]});}catch(_0x54a481){this['logger'][_0xb81804(0x1a3)]('Failed\x20to\x20get\x20attachments',{'agentId':_0x202f03[_0xb81804(0x11e)][_0xb81804(0x1de)],'error':_0x54a481['message']}),_0x1ca81b['status'](0x1f4)[_0xb81804(0x17b)]({'success':![],'error':_0x54a481['message']});}}),this[_0x53134c(0x140)][_0x53134c(0x162)]('/api/attachments/:fileId',async(_0x47cc15,_0x578701)=>{const _0x5b415a=_0x53134c;try{const {fileId:_0x2274ef}=_0x47cc15[_0x5b415a(0x11e)];if(!this[_0x5b415a(0x1ad)]?.['fileAttachmentService'])return _0x578701['status'](0x1f4)[_0x5b415a(0x17b)]({'success':![],'error':_0x5b415a(0x14a)});const _0x5dbaa1=await this[_0x5b415a(0x1ad)][_0x5b415a(0x158)][_0x5b415a(0x199)](_0x2274ef);if(!_0x5dbaa1)return _0x578701['status'](0x194)['json']({'success':![],'error':_0x5b415a(0x160)});_0x578701[_0x5b415a(0x17b)]({'success':!![],'attachment':_0x5dbaa1});}catch(_0x380994){this['logger'][_0x5b415a(0x1a3)](_0x5b415a(0x150),{'fileId':_0x47cc15['params'][_0x5b415a(0x12d)],'error':_0x380994[_0x5b415a(0x159)]}),_0x578701['status'](0x1f4)[_0x5b415a(0x17b)]({'success':![],'error':_0x380994['message']});}}),this['app'][_0x53134c(0x15a)](_0x53134c(0x1b2),async(_0x5ea830,_0x192ac6)=>{const _0x87b75f=_0x53134c;try{const {fileId:_0x39306b}=_0x5ea830['params'];if(!this[_0x87b75f(0x1ad)]?.[_0x87b75f(0x158)])return _0x192ac6['status'](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x2b7093=await this['orchestrator'][_0x87b75f(0x158)][_0x87b75f(0x1e3)](_0x39306b);this['logger']['info'](_0x87b75f(0x12b),{'fileId':_0x39306b,'active':_0x2b7093[_0x87b75f(0x156)]}),_0x192ac6['json']({'success':!![],'attachment':_0x2b7093});}catch(_0x36d1b2){this[_0x87b75f(0x15c)][_0x87b75f(0x1a3)]('Failed\x20to\x20toggle\x20attachment',{'fileId':_0x5ea830['params']['fileId'],'error':_0x36d1b2[_0x87b75f(0x159)]}),_0x192ac6['status'](0x1f4)[_0x87b75f(0x17b)]({'success':![],'error':_0x36d1b2[_0x87b75f(0x159)]});}}),this[_0x53134c(0x140)]['patch'](_0x53134c(0x1d8),async(_0xb8beeb,_0x550171)=>{const _0x24aa01=_0x53134c;try{const {fileId:_0x37e63b}=_0xb8beeb['params'],{mode:_0x73a439,active:_0x378258}=_0xb8beeb['body'];if(!this['orchestrator']?.[_0x24aa01(0x158)])return _0x550171['status'](0x1f4)[_0x24aa01(0x17b)]({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x663970={};if(_0x73a439!==undefined)_0x663970[_0x24aa01(0x1ba)]=_0x73a439;if(_0x378258!==undefined)_0x663970[_0x24aa01(0x156)]=_0x378258;const _0x56e8d6=await this['orchestrator']['fileAttachmentService'][_0x24aa01(0x149)](_0x37e63b,_0x663970);this[_0x24aa01(0x15c)][_0x24aa01(0x1b8)]('Attachment\x20updated',{'fileId':_0x37e63b,'updates':_0x663970}),_0x550171[_0x24aa01(0x17b)]({'success':!![],'attachment':_0x56e8d6});}catch(_0x482a27){this['logger'][_0x24aa01(0x1a3)]('Failed\x20to\x20update\x20attachment',{'fileId':_0xb8beeb[_0x24aa01(0x11e)][_0x24aa01(0x12d)],'error':_0x482a27['message']}),_0x550171[_0x24aa01(0x1c3)](0x1f4)['json']({'success':![],'error':_0x482a27['message']});}}),this['app'][_0x53134c(0x147)](_0x53134c(0x1d8),async(_0x5041f1,_0x58a658)=>{const _0x559847=_0x53134c;try{const {fileId:_0x2e7548}=_0x5041f1[_0x559847(0x11e)],{agentId:_0x5f3ce7}=_0x5041f1[_0x559847(0x1cc)];if(!_0x5f3ce7)return _0x58a658['status'](0x190)[_0x559847(0x17b)]({'success':![],'error':'agentId\x20query\x20parameter\x20is\x20required'});if(!this['orchestrator']?.['fileAttachmentService'])return _0x58a658['status'](0x1f4)[_0x559847(0x17b)]({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x3ec559=await this[_0x559847(0x1ad)][_0x559847(0x158)]['deleteAttachment'](_0x2e7548,_0x5f3ce7);this[_0x559847(0x15c)][_0x559847(0x1b8)](_0x559847(0x115),{'fileId':_0x2e7548,'agentId':_0x5f3ce7,'physicallyDeleted':_0x3ec559[_0x559847(0x100)]}),_0x58a658['json']({'success':!![],'message':_0x3ec559[_0x559847(0x100)]?'Attachment\x20deleted':'Reference\x20removed','physicallyDeleted':_0x3ec559[_0x559847(0x100)]});}catch(_0x337189){this['logger'][_0x559847(0x1a3)](_0x559847(0x17d),{'fileId':_0x5041f1[_0x559847(0x11e)]['fileId'],'error':_0x337189['message']}),_0x58a658['status'](0x1f4)['json']({'success':![],'error':_0x337189[_0x559847(0x159)]});}}),this['app']['post']('/api/attachments/:fileId/import',async(_0x121570,_0x3d1894)=>{const _0x5b0c82=_0x53134c;try{const {fileId:_0x2aecb2}=_0x121570[_0x5b0c82(0x11e)],{targetAgentId:_0x4743a8}=_0x121570['body'];if(!_0x4743a8)return _0x3d1894['status'](0x190)['json']({'success':![],'error':'targetAgentId\x20is\x20required'});if(!this['orchestrator']?.[_0x5b0c82(0x158)])return _0x3d1894['status'](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0xe6c272=await this['orchestrator'][_0x5b0c82(0x158)][_0x5b0c82(0x191)](_0x2aecb2,_0x4743a8);this['logger'][_0x5b0c82(0x1b8)]('Attachment imported',{'fileId':_0x2aecb2,'targetAgentId':_0x4743a8}),_0x3d1894[_0x5b0c82(0x17b)]({'success':!![],'attachment':_0xe6c272});}catch(_0x51737f){this['logger'][_0x5b0c82(0x1a3)]('Failed to import attachment',{'fileId':_0x121570['params']['fileId'],'error':_0x51737f[_0x5b0c82(0x159)]}),_0x3d1894['status'](0x1f4)['json']({'success':![],'error':_0x51737f['message']});}}),this[_0x53134c(0x140)][_0x53134c(0x162)]('/api/attachments/:fileId/preview',async(_0x32b4e6,_0x53138a)=>{const _0x36eefc=_0x53134c;try{const {fileId:_0x1a5c39}=_0x32b4e6[_0x36eefc(0x11e)];if(!this['orchestrator']?.['fileAttachmentService'])return _0x53138a['status'](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x1dae1d=await this[_0x36eefc(0x1ad)]['fileAttachmentService']['getAttachmentPreview'](_0x1a5c39);if(!_0x1dae1d)return _0x53138a['status'](0x194)[_0x36eefc(0x17b)]({'success':![],'error':_0x36eefc(0x160)});_0x53138a['json']({'success':!![],'preview':_0x1dae1d});}catch(_0x226461){this[_0x36eefc(0x15c)][_0x36eefc(0x1a3)]('Failed\x20to\x20get\x20attachment\x20preview',{'fileId':_0x32b4e6['params'][_0x36eefc(0x12d)],'error':_0x226461[_0x36eefc(0x159)]}),_0x53138a[_0x36eefc(0x1c3)](0x1f4)[_0x36eefc(0x17b)]({'success':![],'error':_0x226461[_0x36eefc(0x159)]});}}),this['app'][_0x53134c(0x162)](_0x53134c(0x189),async(_0x157943,_0x3f86af)=>{const _0x2afd08=_0x53134c;try{const {sessionId:_0x7c02f4,filename:_0x25b11e}=_0x157943[_0x2afd08(0x11e)],_0x1c2fbc=this['sessions']['get'](_0x7c02f4);if(!_0x1c2fbc)return _0x3f86af['status'](HTTP_STATUS['FORBIDDEN'])[_0x2afd08(0x17b)]({'success':![],'error':_0x2afd08(0x14d)});const _0x57a05e=a0_0x48bada['basename'](_0x25b11e);if(_0x57a05e!==_0x25b11e||_0x25b11e['includes']('..')||_0x25b11e['includes']('/')||_0x25b11e['includes']('\x5c'))return _0x3f86af['status'](HTTP_STATUS[_0x2afd08(0x16e)])['json']({'success':![],'error':'Invalid\x20filename'});let _0xfae216=null;const _0x2ca663=[a0_0x48bada[_0x2afd08(0x170)](_0x1c2fbc[_0x2afd08(0xfd)]||process['cwd'](),_0x2afd08(0x185),_0x57a05e),a0_0x48bada[_0x2afd08(0x170)](_0x2afd08(0x19d),_0x7c02f4,_0x57a05e),a0_0x48bada['join'](_0x2afd08(0x19d),_0x57a05e)];if(this['orchestrator']?.[_0x2afd08(0x113)])try{const _0x3bb32c=await this['orchestrator'][_0x2afd08(0x113)][_0x2afd08(0x19a)]();for(const _0x57d67d of _0x3bb32c){_0x57d67d['directoryAccess']?.['workingDirectory']&&_0x2ca663['push'](a0_0x48bada[_0x2afd08(0x170)](_0x57d67d['directoryAccess']['workingDirectory'],'images',_0x57a05e));}}catch(_0x59e345){this['logger'][_0x2afd08(0x172)]('Failed\x20to\x20get\x20agent\x20working\x20directories\x20for\x20image\x20search',{'error':_0x59e345['message']});}for(const _0x23d05a of _0x2ca663){try{const _0x547911=await a0_0x30df96[_0x2afd08(0x180)](_0x23d05a);if(_0x547911[_0x2afd08(0x165)]()){_0xfae216=_0x23d05a,this[_0x2afd08(0x15c)][_0x2afd08(0x1b8)]('Image\x20found',{'filename':_0x57a05e,'path':_0xfae216,'sessionId':_0x7c02f4});break;}}catch(_0x3c4d96){continue;}}if(!_0xfae216)return this[_0x2afd08(0x15c)]['warn']('Image\x20not\x20found\x20in\x20any\x20search\x20path',{'filename':_0x57a05e,'sessionId':_0x7c02f4,'searchPaths':_0x2ca663}),_0x3f86af['status'](HTTP_STATUS['NOT_FOUND'])[_0x2afd08(0x17b)]({'success':![],'error':'Image\x20not\x20found'});_0x3f86af[_0x2afd08(0x148)](_0xfae216,_0x55d89b=>{const _0x281a56=_0x2afd08;_0x55d89b?(this['logger'][_0x281a56(0x1a3)](_0x281a56(0x1fb),{'error':_0x55d89b['message'],'imagePath':_0xfae216,'filename':_0x57a05e}),!_0x3f86af[_0x281a56(0x1a2)]&&_0x3f86af[_0x281a56(0x1c3)](HTTP_STATUS['INTERNAL_SERVER_ERROR'])[_0x281a56(0x17b)]({'success':![],'error':'Failed\x20to\x20serve\x20image'})):this['logger']['info']('Image\x20served\x20successfully',{'filename':_0x57a05e,'path':_0xfae216,'sessionId':_0x7c02f4});});}catch(_0x5c1a03){this[_0x2afd08(0x15c)]['error'](_0x2afd08(0x19f),{'error':_0x5c1a03['message'],'sessionId':_0x157943['params']['sessionId'],'filename':_0x157943[_0x2afd08(0x11e)]['filename']}),_0x3f86af['status'](HTTP_STATUS['INTERNAL_SERVER_ERROR'])[_0x2afd08(0x17b)]({'success':![],'error':_0x5c1a03[_0x2afd08(0x159)]});}}),this[_0x53134c(0x140)]['post'](_0x53134c(0x136),async(_0x1bcb17,_0x5ce7b6)=>{const _0x3d5ab8=_0x53134c;try{const {agentId:_0x1987aa}=_0x1bcb17[_0x3d5ab8(0x11e)],{mode:_0xb446e6,lockMode:lockMode=![],sessionId:_0x412364}=_0x1bcb17[_0x3d5ab8(0x120)];if(!Object[_0x3d5ab8(0x114)](AGENT_MODES)[_0x3d5ab8(0x104)](_0xb446e6))return _0x5ce7b6['status'](0x190)[_0x3d5ab8(0x17b)]({'success':![],'error':'Invalid\x20mode.\x20Must\x20be\x20one\x20of:\x20'+Object[_0x3d5ab8(0x114)](AGENT_MODES)['join'](',\x20')});const _0x49cb2d=_0x412364||_0x1bcb17['sessionID'];!_0x49cb2d&&this[_0x3d5ab8(0x15c)][_0x3d5ab8(0x172)](_0x3d5ab8(0x177),{'agentId':_0x1987aa,'hasBodySessionId':!!_0x412364,'hasReqSessionId':!!_0x1bcb17['sessionID']});const _0x16be09={'interface':INTERFACE_TYPES[_0x3d5ab8(0xfa)],'sessionId':_0x49cb2d,'action':'update_agent','payload':{'agentId':_0x1987aa,'updates':{'mode':_0xb446e6}}},_0x24cb8d=await this[_0x3d5ab8(0x1ad)][_0x3d5ab8(0x17e)](_0x16be09);if(_0x24cb8d[_0x3d5ab8(0x1d7)]){const _0xa9515c=_0x24cb8d['data'];this[_0x3d5ab8(0x15c)][_0x3d5ab8(0x1b8)]('Agent\x20mode\x20updated:\x20'+_0x1987aa,{'newMode':_0xb446e6,'lockMode':lockMode,'finalMode':_0xa9515c?.[_0x3d5ab8(0x1ba)]}),this[_0x3d5ab8(0x15d)](_0x16be09[_0x3d5ab8(0x146)],{'type':_0x3d5ab8(0x1a7),'agentId':_0x1987aa,'mode':_0xa9515c?.[_0x3d5ab8(0x1ba)],'modeState':_0xa9515c?.['modeState']}),_0x5ce7b6[_0x3d5ab8(0x17b)]({'success':!![],'agent':_0xa9515c,'message':'Agent\x20mode\x20switched\x20to\x20'+_0xa9515c?.[_0x3d5ab8(0x1ba)]});}else _0x5ce7b6[_0x3d5ab8(0x1c3)](0x190)[_0x3d5ab8(0x17b)]({'success':![],'error':_0x24cb8d['error']||'Failed\x20to\x20update\x20agent\x20mode'});}catch(_0x22a82d){this['logger'][_0x3d5ab8(0x1a3)](_0x3d5ab8(0x111),{'agentId':_0x1bcb17['params']['agentId'],'error':_0x22a82d['message']}),_0x5ce7b6[_0x3d5ab8(0x1c3)](0x1f4)[_0x3d5ab8(0x17b)]({'success':![],'error':_0x22a82d[_0x3d5ab8(0x159)]});}}),this[_0x53134c(0x140)]['post']('/api/agents/:agentId/stop',async(_0x3bfa76,_0x1defac)=>{const _0x1c7fd9=_0x53134c;try{const {agentId:_0x5bf324}=_0x3bfa76['params'],_0x2fedb3=this['orchestrator']['messageProcessor'];if(!_0x2fedb3)return _0x1defac['status'](0x1f4)['json']({'success':![],'error':'Message\x20processor\x20not\x20available'});const _0x24fd4c=await _0x2fedb3[_0x1c7fd9(0x1ec)](_0x5bf324);this[_0x1c7fd9(0x15c)][_0x1c7fd9(0x1b8)]('Autonomous\x20execution\x20stop\x20requested:\x20'+_0x5bf324);const _0x3a795a=_0x3bfa76['sessionID']||_0x24fd4c['agent']?.[_0x1c7fd9(0x146)];_0x3a795a&&this['broadcastToSession'](_0x3a795a,{'type':_0x1c7fd9(0x1a7),'agentId':_0x5bf324,'mode':_0x24fd4c[_0x1c7fd9(0x1a4)]?.[_0x1c7fd9(0x1ba)],'modeState':_0x24fd4c['agent']?.[_0x1c7fd9(0x105)]}),_0x1defac['json'](_0x24fd4c);}catch(_0xfe924a){this['logger'][_0x1c7fd9(0x1a3)](_0x1c7fd9(0x182),{'agentId':_0x3bfa76['params']['agentId'],'error':_0xfe924a[_0x1c7fd9(0x159)]}),_0x1defac['status'](0x1f4)[_0x1c7fd9(0x17b)]({'success':![],'error':_0xfe924a[_0x1c7fd9(0x159)]});}}),this[_0x53134c(0x140)]['get']('/api/agents/:agentId/mode',async(_0xfc16ee,_0xbd73b4)=>{const _0x24ba94=_0x53134c;try{const {agentId:_0x34fae8}=_0xfc16ee['params'],_0x754952={'interface':INTERFACE_TYPES[_0x24ba94(0xfa)],'sessionId':_0xfc16ee['sessionID'],'action':_0x24ba94(0x1c7),'payload':{'agentId':_0x34fae8}},_0x6bb98f=await this[_0x24ba94(0x1ad)][_0x24ba94(0x17e)](_0x754952);_0x6bb98f[_0x24ba94(0x1d7)]&&_0x6bb98f['agent']?_0xbd73b4['json']({'success':!![],'mode':_0x6bb98f['agent'][_0x24ba94(0x1ba)],'modeState':_0x6bb98f[_0x24ba94(0x1a4)][_0x24ba94(0x105)],'currentTask':_0x6bb98f['agent'][_0x24ba94(0x1b1)],'iterationCount':_0x6bb98f[_0x24ba94(0x1a4)]['iterationCount'],'taskStartTime':_0x6bb98f[_0x24ba94(0x1a4)][_0x24ba94(0x128)],'stopRequested':_0x6bb98f['agent'][_0x24ba94(0x152)]}):_0xbd73b4[_0x24ba94(0x1c3)](0x194)[_0x24ba94(0x17b)]({'success':![],'error':_0x24ba94(0x154)});}catch(_0xf25727){this[_0x24ba94(0x15c)][_0x24ba94(0x1a3)](_0x24ba94(0x107),{'agentId':_0xfc16ee[_0x24ba94(0x11e)][_0x24ba94(0x1de)],'error':_0xf25727[_0x24ba94(0x159)]}),_0xbd73b4['status'](0x1f4)['json']({'success':![],'error':_0xf25727[_0x24ba94(0x159)]});}}),this['app'][_0x53134c(0x162)](_0x53134c(0x173),async(_0x53130b,_0xdc7d40)=>{const _0x522499=_0x53134c;try{const _0x5d84dd=this[_0x522499(0x1ad)][_0x522499(0x1b9)]['project']?.['directory']||process['cwd'](),_0x201bf2=await this['orchestrator']['stateManager']['getAllAvailableAgents'](_0x5d84dd,this[_0x522499(0x1ad)][_0x522499(0x113)]);_0xdc7d40[_0x522499(0x17b)]({'success':!![],'agents':_0x201bf2,'total':_0x201bf2['length'],'active':_0x201bf2['filter'](_0x197362=>_0x197362[_0x522499(0x13d)])['length'],'archived':_0x201bf2['filter'](_0x567ed4=>!_0x567ed4[_0x522499(0x13d)])[_0x522499(0x194)]});}catch(_0x297f66){this['logger']['error']('Failed\x20to\x20get\x20available\x20agents',{'error':_0x297f66[_0x522499(0x159)],'stack':_0x297f66['stack']}),_0xdc7d40[_0x522499(0x1c3)](0x1f4)[_0x522499(0x17b)]({'success':![],'error':_0x297f66[_0x522499(0x159)]});}}),this['app']['get'](_0x53134c(0x13e),async(_0x455c60,_0x38142e)=>{const _0x1e4eb1=_0x53134c;try{const {agentId:_0x8b7974}=_0x455c60[_0x1e4eb1(0x11e)],_0x37ca0a=this['orchestrator']['config'][_0x1e4eb1(0x1aa)]?.[_0x1e4eb1(0x18e)]||process[_0x1e4eb1(0x1ae)](),_0x14583d=await this['orchestrator'][_0x1e4eb1(0x1f5)]['getAgentMetadata'](_0x8b7974,_0x37ca0a);_0x38142e[_0x1e4eb1(0x17b)]({'success':!![],'metadata':_0x14583d});}catch(_0x57b06a){this['logger']['error'](_0x1e4eb1(0x171),{'agentId':_0x455c60['params']['agentId'],'error':_0x57b06a[_0x1e4eb1(0x159)]}),_0x38142e['status'](0x194)['json']({'success':![],'error':_0x57b06a[_0x1e4eb1(0x159)]});}}),this[_0x53134c(0x140)][_0x53134c(0x179)]('/api/agents/import',async(_0x329d51,_0x44258d)=>{const _0xaf342f=_0x53134c;try{const {agentId:_0x51d1be}=_0x329d51[_0xaf342f(0x120)];if(!_0x51d1be)return _0x44258d['status'](0x190)['json']({'success':![],'error':_0xaf342f(0x164)});const _0xeee4e5=this[_0xaf342f(0x1ad)]['config']['project']?.['directory']||process[_0xaf342f(0x1ae)](),_0x50fabd=await this['orchestrator']['stateManager']['importArchivedAgent'](_0x51d1be,_0xeee4e5,this[_0xaf342f(0x1ad)]['agentPool']);this[_0xaf342f(0x14c)]&&this[_0xaf342f(0x14c)][_0xaf342f(0x119)]({'type':'agent-imported','agent':{'id':_0x50fabd['id'],'name':_0x50fabd['name'],'status':_0x50fabd[_0xaf342f(0x1c3)],'capabilities':_0x50fabd[_0xaf342f(0x16c)],'model':_0x50fabd[_0xaf342f(0x1f2)]||_0x50fabd[_0xaf342f(0x14b)]}}),this['logger']['info']('Agent imported successfully',{'agentId':_0x50fabd['id'],'name':_0x50fabd['name']}),_0x44258d['json']({'success':!![],'agent':{'id':_0x50fabd['id'],'name':_0x50fabd['name'],'status':_0x50fabd[_0xaf342f(0x1c3)],'model':_0x50fabd[_0xaf342f(0x1f2)]||_0x50fabd['preferredModel'],'capabilities':_0x50fabd['capabilities'],'lastActivity':_0x50fabd[_0xaf342f(0x1bf)]},'message':'Agent\x20'+_0x50fabd[_0xaf342f(0x1c8)]+_0xaf342f(0x1a1)});}catch(_0x3cfc31){this[_0xaf342f(0x15c)][_0xaf342f(0x1a3)]('Failed to import agent',{'agentId':_0x329d51['body']['agentId'],'error':_0x3cfc31[_0xaf342f(0x159)],'stack':_0x3cfc31['stack']});const _0x3e5cc8=_0x3cfc31['message'][_0xaf342f(0x104)](_0xaf342f(0x101))?0x199:_0x3cfc31[_0xaf342f(0x159)]['includes']('not\x20found')?0x194:_0x3cfc31['message']['includes'](_0xaf342f(0x1ce))?0x190:0x1f4;_0x44258d[_0xaf342f(0x1c3)](_0x3e5cc8)[_0xaf342f(0x17b)]({'success':![],'error':_0x3cfc31[_0xaf342f(0x159)]});}}),this[_0x53134c(0x140)]['get']('*',(_0x48d0e9,_0xfbce2a)=>{const _0x2c1f45=_0x53134c,_0x2a2276=a0_0x48bada[_0x2c1f45(0x170)](__dirname,'../../web-ui/build/index.html');_0xfbce2a[_0x2c1f45(0x148)](_0x2a2276,_0x442c74=>{const _0x1300c7=_0x2c1f45;_0x442c74&&_0xfbce2a['status'](HTTP_STATUS['NOT_FOUND'])[_0x1300c7(0x176)]('Web\x20UI\x20not\x20built.\x20Run:\x20npm\x20run\x20build:ui');});});}['setupWebSocket'](){const _0x3fda88=a0_0x14a8a3;this['logger']['info'](_0x3fda88(0x1e6),{'port':this[_0x3fda88(0x184)],'host':this['host'],'wsServerExists':!!this[_0x3fda88(0x1f3)],'httpServerExists':!!this[_0x3fda88(0x174)]}),this['wss']['on'](_0x3fda88(0x1a3),_0x10e920=>{const _0x3c59b6=_0x3fda88;this['logger']['error']('WebSocket\x20server\x20error:',{'error':_0x10e920[_0x3c59b6(0x159)],'stack':_0x10e920[_0x3c59b6(0x169)],'port':this['port']});}),this['wss']['on']('listening',()=>{this['logger']['info']('WebSocket\x20server\x20is\x20now\x20listening',{'port':this['port'],'host':this['host']});}),this['wss']['on'](_0x3fda88(0x1d0),(_0x101d6e,_0xff6b82)=>{const _0x482fe3=_0x3fda88,_0x10e844=_0x482fe3(0x109)+Date['now']()+'-'+Math[_0x482fe3(0x127)]()['toString'](0x24)['substr'](0x2,0x9);this[_0x482fe3(0x15c)]['info'](_0x482fe3(0x1a8),{'connectionId':_0x10e844,'ip':_0xff6b82[_0x482fe3(0x1c9)][_0x482fe3(0x175)],'origin':_0xff6b82['headers'][_0x482fe3(0x103)],'host':_0xff6b82['headers'][_0x482fe3(0x197)],'userAgent':_0xff6b82[_0x482fe3(0x10a)]['user-agent'],'url':_0xff6b82[_0x482fe3(0x17a)]});const _0x34878c={'id':_0x10e844,'ws':_0x101d6e,'sessionId':null,'connectedAt':new Date()['toISOString'](),'lastActivity':new Date()[_0x482fe3(0x1f8)]()};this[_0x482fe3(0x123)]['set'](_0x10e844,_0x34878c),_0x101d6e['on']('message',async _0x2305ff=>{const _0x200342=_0x482fe3;try{const _0x189eeb=JSON['parse'](_0x2305ff['toString']());await this[_0x200342(0x13b)](_0x10e844,_0x189eeb);}catch(_0xf919a8){this['logger'][_0x200342(0x1a3)]('WebSocket\x20message\x20error',{'connectionId':_0x10e844,'error':_0xf919a8[_0x200342(0x159)]}),_0x101d6e['send'](JSON[_0x200342(0x14e)]({'type':'error','error':_0xf919a8[_0x200342(0x159)]}));}}),_0x101d6e['on']('close',()=>{this['logger']['info']('WebSocket\x20connection\x20closed',{'connectionId':_0x10e844}),this['connections']['delete'](_0x10e844);}),_0x101d6e['send'](JSON['stringify']({'type':'connected','connectionId':_0x10e844,'timestamp':new Date()[_0x482fe3(0x1f8)]()}));});}async['handleWebSocketMessage'](_0x518370,_0x1ccf26){const _0x28cf9f=a0_0x14a8a3,_0x537bba=this[_0x28cf9f(0x123)][_0x28cf9f(0x162)](_0x518370);if(!_0x537bba)return;_0x537bba[_0x28cf9f(0x1bf)]=new Date()[_0x28cf9f(0x1f8)]();switch(_0x1ccf26[_0x28cf9f(0x118)]){case'join_session':const _0x261c01=_0x1ccf26['sessionId'];_0x537bba['sessionId']=_0x261c01,this[_0x28cf9f(0x15c)]['info'](_0x28cf9f(0x190),{'connectionId':_0x518370,'sessionId':_0x261c01,'totalConnectionsForSession':Array['from'](this[_0x28cf9f(0x123)][_0x28cf9f(0x114)]())['filter'](_0x2399b5=>_0x2399b5[_0x28cf9f(0x146)]===_0x261c01)[_0x28cf9f(0x194)]}),_0x537bba['ws']['send'](JSON['stringify']({'type':'session_joined','sessionId':_0x261c01}));break;case _0x28cf9f(0x11a):_0x537bba['ws'][_0x28cf9f(0x176)](JSON[_0x28cf9f(0x14e)]({'type':_0x28cf9f(0x1cb),'timestamp':new Date()['toISOString']()}));break;case'orchestrator_request':try{const _0x26ca98={'interface':INTERFACE_TYPES[_0x28cf9f(0xfa)],'sessionId':_0x537bba['sessionId'],'action':_0x1ccf26[_0x28cf9f(0x1d9)],'payload':_0x1ccf26['payload'],'projectDir':_0x1ccf26['projectDir']||process[_0x28cf9f(0x1ae)]()},_0x1556ca=await this[_0x28cf9f(0x1ad)]['processRequest'](_0x26ca98);_0x537bba['ws']['send'](JSON['stringify']({'type':_0x28cf9f(0x1ee),'requestId':_0x1ccf26['requestId'],'response':_0x1556ca}));}catch(_0x1e22cf){_0x537bba['ws'][_0x28cf9f(0x176)](JSON[_0x28cf9f(0x14e)]({'type':_0x28cf9f(0x1a3),'requestId':_0x1ccf26['requestId'],'error':_0x1e22cf['message']}));}break;default:this[_0x28cf9f(0x15c)]['warn']('Unknown\x20WebSocket\x20message\x20type',{'connectionId':_0x518370,'type':_0x1ccf26[_0x28cf9f(0x118)]});}}[a0_0x14a8a3(0x15d)](_0x3bcc87,_0x3c5f5b){const _0xe7dcb2=a0_0x14a8a3,_0x47a3da=Array[_0xe7dcb2(0x1be)](this[_0xe7dcb2(0x123)][_0xe7dcb2(0x114)]())['filter'](_0x365969=>_0x365969[_0xe7dcb2(0x146)]===_0x3bcc87);let _0x1b3be0=[];_0x47a3da[_0xe7dcb2(0x194)]===0x0&&(_0x1b3be0=Array['from'](this['connections']['values']()),this['logger']?.['warn'](_0xe7dcb2(0x1d6),{'targetSessionId':_0x3bcc87,'totalConnections':this['connections']['size'],'allSessionIds':Array['from'](this['connections'][_0xe7dcb2(0x114)]())['map'](_0x3c4c02=>_0x3c4c02[_0xe7dcb2(0x146)])[_0xe7dcb2(0x196)](Boolean)}));const _0x5e5651=_0x47a3da['length']>0x0?_0x47a3da:_0x1b3be0;this[_0xe7dcb2(0x15c)]?.[_0xe7dcb2(0x1b8)](_0xe7dcb2(0x187),{'sessionId':_0x3bcc87,'messageType':_0x3c5f5b['type'],'agentId':_0x3c5f5b['agentId'],'totalConnections':this[_0xe7dcb2(0x123)][_0xe7dcb2(0x13a)],'sessionConnections':_0x47a3da[_0xe7dcb2(0x194)],'targetConnections':_0x5e5651[_0xe7dcb2(0x194)],'connectionIds':_0x5e5651['map'](_0x50193e=>_0x50193e['id']),'usingFallback':_0x47a3da[_0xe7dcb2(0x194)]===0x0,'messagePreview':_0x3c5f5b[_0xe7dcb2(0x118)]===_0xe7dcb2(0x183)&&_0x3c5f5b['message']?{'messageId':_0x3c5f5b[_0xe7dcb2(0x159)]['id'],'messageRole':_0x3c5f5b['message'][_0xe7dcb2(0x1db)],'contentLength':_0x3c5f5b['message']['content']?.['length'],'hasToolResults':!!_0x3c5f5b[_0xe7dcb2(0x159)][_0xe7dcb2(0x188)]}:undefined});for(const _0x197c7c of _0x5e5651){try{const _0x3205ec={..._0x3c5f5b,'timestamp':new Date()[_0xe7dcb2(0x1f8)]()};_0x197c7c['ws']['send'](JSON[_0xe7dcb2(0x14e)](_0x3205ec)),this[_0xe7dcb2(0x15c)]?.['info']('✅\x20WebSocket\x20message\x20sent\x20to\x20connection:',{'connectionId':_0x197c7c['id'],'messageType':_0x3c5f5b['type'],'agentId':_0x3c5f5b['agentId']});}catch(_0x2dde04){this[_0xe7dcb2(0x15c)][_0xe7dcb2(0x172)](_0xe7dcb2(0x1ab),{'connectionId':_0x197c7c['id'],'sessionId':_0x3bcc87,'messageType':_0x3c5f5b['type'],'error':_0x2dde04[_0xe7dcb2(0x159)]});}}}async['startServer'](){return new Promise((_0x3d01af,_0x4269ab)=>{const _0x1d2c12=a0_0x366e;this['server'][_0x1d2c12(0x18f)](this['port'],this[_0x1d2c12(0x197)],_0x50d2c7=>{const _0x5c00dc=_0x1d2c12;_0x50d2c7?(this['logger'][_0x5c00dc(0x1a3)](_0x5c00dc(0x131),{'error':_0x50d2c7['message'],'port':this[_0x5c00dc(0x184)],'host':this['host']}),_0x4269ab(_0x50d2c7)):(this['isRunning']=!![],this['logger'][_0x5c00dc(0x1b8)](_0x5c00dc(0x1b3),{'port':this[_0x5c00dc(0x184)],'host':this[_0x5c00dc(0x197)],'httpUrl':_0x5c00dc(0x106)+this['host']+':'+this[_0x5c00dc(0x184)],'wsUrl':_0x5c00dc(0x1f9)+this[_0x5c00dc(0x197)]+':'+this['port'],'wsServerAttached':!!this[_0x5c00dc(0x1f3)],'wsConnections':this['connections']['size']}),setTimeout(async()=>{await this['testWebSocketServer']();},0x3e8),_0x3d01af());}),this[_0x1d2c12(0x174)]['on']('error',_0x457d95=>{const _0x1f4a11=_0x1d2c12;this['logger'][_0x1f4a11(0x1a3)](_0x1f4a11(0x19b),{'error':_0x457d95[_0x1f4a11(0x159)],'stack':_0x457d95['stack'],'port':this[_0x1f4a11(0x184)]});});});}async['testWebSocketServer'](){const _0x51385b=a0_0x14a8a3;try{const {default:_0x78f7b3}=await import('ws'),_0x24fa69=new _0x78f7b3('ws://localhost:'+this['port']);_0x24fa69['on'](_0x51385b(0x16b),()=>{const _0x215949=_0x51385b;this[_0x215949(0x15c)]['info']('✅\x20WebSocket\x20server\x20test:\x20SUCCESSFUL',{'port':this[_0x215949(0x184)],'url':'ws://localhost:'+this['port']}),_0x24fa69['close']();}),_0x24fa69['on'](_0x51385b(0x1a3),_0x22cac1=>{const _0x3084d0=_0x51385b;this['logger'][_0x3084d0(0x1a3)]('❌\x20WebSocket\x20server\x20test:\x20FAILED',{'port':this[_0x3084d0(0x184)],'url':'ws://localhost:'+this['port'],'error':_0x22cac1[_0x3084d0(0x159)],'code':_0x22cac1[_0x3084d0(0x1d1)]});}),_0x24fa69['on'](_0x51385b(0x121),(_0x38a66f,_0x4e5a5a)=>{const _0x14c112=_0x51385b;_0x38a66f===0x3e8&&this[_0x14c112(0x15c)]['info'](_0x14c112(0x122));}),setTimeout(()=>{const _0x3aa44b=_0x51385b;_0x24fa69[_0x3aa44b(0x19e)]===_0x78f7b3[_0x3aa44b(0x1d5)]&&(this['logger'][_0x3aa44b(0x1a3)](_0x3aa44b(0x15b),{'port':this[_0x3aa44b(0x184)],'url':_0x3aa44b(0x1bc)+this[_0x3aa44b(0x184)],'readyState':_0x24fa69[_0x3aa44b(0x19e)]}),_0x24fa69[_0x3aa44b(0x10c)]());},0x1388);}catch(_0x151994){this['logger']['error']('❌\x20WebSocket\x20server\x20test:\x20EXCEPTION',{'error':_0x151994[_0x51385b(0x159)],'stack':_0x151994['stack']});}}[a0_0x14a8a3(0x126)](_0x57c284){const _0x338f41=a0_0x14a8a3;this[_0x338f41(0x139)]=_0x57c284,this['logger']?.[_0x338f41(0x1b8)](_0x338f41(0x12c),{'hasManager':!!_0x57c284});}['_getVendorFromModel'](_0x56a362){const _0x1e6b24=a0_0x14a8a3;if(!_0x56a362)return null;const _0x535121=_0x56a362[_0x1e6b24(0x144)]();if(_0x535121['includes']('anthropic')||_0x535121['includes']('claude'))return _0x1e6b24(0x14f);else{if(_0x535121['includes'](_0x1e6b24(0x1a5))||_0x535121['includes']('gpt'))return _0x1e6b24(0x1a5);else{if(_0x535121[_0x1e6b24(0x104)](_0x1e6b24(0x1b7)))return _0x1e6b24(0x1b7);else{if(_0x535121[_0x1e6b24(0x104)]('phi'))return'microsoft';}}}return null;}['getStatus'](){const _0x31f4b5=a0_0x14a8a3;return{'isRunning':this['isRunning'],'port':this['port'],'host':this['host'],'connections':this['connections'][_0x31f4b5(0x13a)],'sessions':this[_0x31f4b5(0x138)][_0x31f4b5(0x13a)],'url':'http://'+this[_0x31f4b5(0x197)]+':'+this[_0x31f4b5(0x184)]};}async[a0_0x14a8a3(0x137)](){const _0x1578f6=a0_0x14a8a3;if(!this[_0x1578f6(0x12e)])return;this[_0x1578f6(0x15c)][_0x1578f6(0x1b8)]('Shutting\x20down\x20web\x20server...');for(const _0xaaa80 of this['connections']['values']()){_0xaaa80['ws'][_0x1578f6(0x121)]();}return this['connections']['clear'](),this['wss']['close'](),new Promise(_0x8d574c=>{const _0x39376f=_0x1578f6;this[_0x39376f(0x174)][_0x39376f(0x121)](()=>{const _0x5de1d6=_0x39376f;this[_0x5de1d6(0x12e)]=![],this[_0x5de1d6(0x15c)]['info']('Web\x20server\x20shutdown\x20complete'),_0x8d574c();});});}}export default WebServer;if(import.meta.url==='file://'+process['argv'][0x1]){const simpleLogger={'info':(_0x21adf9,_0x4a1880)=>console[a0_0x14a8a3(0x1c2)]('[INFO]\x20'+_0x21adf9,_0x4a1880?JSON['stringify'](_0x4a1880,null,0x2):''),'error':(_0x485cc5,_0x4fe385)=>console[a0_0x14a8a3(0x1a3)](a0_0x14a8a3(0x192)+_0x485cc5,_0x4fe385?JSON[a0_0x14a8a3(0x14e)](_0x4fe385,null,0x2):''),'warn':(_0x4e4862,_0x3ba530)=>console['warn']('[WARN]\x20'+_0x4e4862,_0x3ba530?JSON['stringify'](_0x3ba530,null,0x2):''),'debug':(_0x3f3fbe,_0x4b439a)=>console['log'](a0_0x14a8a3(0x11d)+_0x3f3fbe,_0x4b439a?JSON[a0_0x14a8a3(0x14e)](_0x4b439a,null,0x2):'')},mockOrchestrator={'processAction':async(_0x2228bb,_0x19fdbf)=>{const _0xfe76e=a0_0x14a8a3;simpleLogger['info'](_0xfe76e(0x153),{'action':_0x2228bb,'data':_0x19fdbf});switch(_0x2228bb){case ORCHESTRATOR_ACTIONS[_0xfe76e(0x112)]:return{'success':!![],'data':[]};case ORCHESTRATOR_ACTIONS['CREATE_AGENT']:return{'success':!![],'data':{'id':_0xfe76e(0x142)+Date['now'](),'name':_0x19fdbf[_0xfe76e(0x1c8)]||'New\x20Agent','status':'active','model':_0x19fdbf['model']||'anthropic-sonnet','systemPrompt':_0x19fdbf['systemPrompt']||'You\x20are\x20a\x20helpful\x20AI\x20assistant.'}};case ORCHESTRATOR_ACTIONS[_0xfe76e(0x1ff)]:return{'success':!![],'data':{'message':{'id':'msg-'+Date['now'](),'content':_0xfe76e(0x201)+_0x19fdbf[_0xfe76e(0x159)],'timestamp':new Date()['toISOString']()}}};default:return{'success':![],'error':_0xfe76e(0x124)+_0x2228bb};}}},server=new WebServer(mockOrchestrator,simpleLogger,{'port':0x1f90,'host':'0.0.0.0'});console[a0_0x14a8a3(0x1c2)](a0_0x14a8a3(0x135)),server[a0_0x14a8a3(0x108)]()['then'](()=>{const _0xbf95d5=a0_0x14a8a3,_0x288781=server[_0xbf95d5(0x12f)]();console[_0xbf95d5(0x1c2)](_0xbf95d5(0x130)+_0x288781[_0xbf95d5(0x17a)]),console['log'](_0xbf95d5(0x1b0)),console['log']('🔧\x20API\x20available\x20at:\x20http://localhost:8080/api');})[a0_0x14a8a3(0x10d)](_0xe8549c=>{const _0xb0f16f=a0_0x14a8a3;console[_0xb0f16f(0x1a3)](_0xb0f16f(0x145),_0xe8549c['message']),process['exit'](0x1);}),process['on']('SIGINT',async()=>{const _0x448331=a0_0x14a8a3;console[_0x448331(0x1c2)](_0x448331(0xfb)),await server['shutdown'](),process[_0x448331(0x198)](0x0);});}
|
|
1
|
+
const a0_0x350b36=a0_0x30c0;(function(_0x55706c,_0x2d98b8){const _0x507203=a0_0x30c0,_0x320cf2=_0x55706c();while(!![]){try{const _0x2f37f6=-parseInt(_0x507203(0x169))/0x1*(-parseInt(_0x507203(0x104))/0x2)+parseInt(_0x507203(0x165))/0x3+-parseInt(_0x507203(0x121))/0x4*(-parseInt(_0x507203(0x14a))/0x5)+-parseInt(_0x507203(0x9b))/0x6+parseInt(_0x507203(0x143))/0x7*(-parseInt(_0x507203(0xeb))/0x8)+-parseInt(_0x507203(0xcf))/0x9+parseInt(_0x507203(0xad))/0xa*(-parseInt(_0x507203(0x10a))/0xb);if(_0x2f37f6===_0x2d98b8)break;else _0x320cf2['push'](_0x320cf2['shift']());}catch(_0x33aad7){_0x320cf2['push'](_0x320cf2['shift']());}}}(a0_0x1424,0x861d8));import a0_0x2fe689 from'express';import{createServer}from'http';import{WebSocketServer}from'ws';import a0_0x4a1d5d from'path';import{promises as a0_0x8343c3}from'fs';function a0_0x30c0(_0x326d61,_0x39ecbd){_0x326d61=_0x326d61-0x85;const _0x14243f=a0_0x1424();let _0x30c0c1=_0x14243f[_0x326d61];if(a0_0x30c0['UVzOIs']===undefined){var _0x4336fb=function(_0x1dd09a){const _0x48040a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2fe689='',_0x4a1d5d='';for(let _0x8343c3=0x0,_0x45d876,_0x28a61b,_0x1d0b81=0x0;_0x28a61b=_0x1dd09a['charAt'](_0x1d0b81++);~_0x28a61b&&(_0x45d876=_0x8343c3%0x4?_0x45d876*0x40+_0x28a61b:_0x28a61b,_0x8343c3++%0x4)?_0x2fe689+=String['fromCharCode'](0xff&_0x45d876>>(-0x2*_0x8343c3&0x6)):0x0){_0x28a61b=_0x48040a['indexOf'](_0x28a61b);}for(let _0x3fc8d4=0x0,_0x173c13=_0x2fe689['length'];_0x3fc8d4<_0x173c13;_0x3fc8d4++){_0x4a1d5d+='%'+('00'+_0x2fe689['charCodeAt'](_0x3fc8d4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4a1d5d);};a0_0x30c0['dKIFRn']=_0x4336fb,a0_0x30c0['qySiKM']={},a0_0x30c0['UVzOIs']=!![];}const _0x39700a=_0x14243f[0x0],_0x5e2aa2=_0x326d61+_0x39700a,_0x43ea7d=a0_0x30c0['qySiKM'][_0x5e2aa2];return!_0x43ea7d?(_0x30c0c1=a0_0x30c0['dKIFRn'](_0x30c0c1),a0_0x30c0['qySiKM'][_0x5e2aa2]=_0x30c0c1):_0x30c0c1=_0x43ea7d,_0x30c0c1;}import{fileURLToPath}from'url';import{INTERFACE_TYPES,ORCHESTRATOR_ACTIONS,HTTP_STATUS,AGENT_MODES}from'../utilities/constants.js';import{initFileExplorerModule}from'../modules/fileExplorer/index.js';const __filename=fileURLToPath(import.meta.url),__dirname=a0_0x4a1d5d[a0_0x350b36(0xfc)](__filename);function a0_0x1424(){const _0x22592a=['Dhj1zq','y2fWywjPBgL0AwvZ','l2fWAs9PBwfNzxmVoNnLC3nPB25jzc86zMLSzw5HBwu','BwvZC2fNzq','l2fWAs9ZzxnZAw9UCW','y2XVC2u','y29UzMLN','mtbTyG','rMfPBgvKihrVigDLDcbHDhrHy2HTzw50CW','zgLYzwn0B3j5qwnJzxnZ','Bw9Kzq','u2vYDMLUzYb0B29SCYbPBMzVCM1HDgLVBG','zgvIDwC','rMLSzsbHDhrHy2HTzw50ihnLCNzPy2uGBM90igf2ywLSywjSzq','zgLYBMfTzq','tMv3iefNzw50','Bg9N','u0vorf9nrvntquDf','l2fWAs9HDhrHy2HTzw50CY86zMLSzuLK','yxbW','rMfPBgvKihrVihnLBMqGAw1Hz2uGzMLSzq','z2v0qxr0ywnOBwvUDfbYzxzPzxC','mNnXBwX2sq','mc4WlJaUma','AgvHBhrOEq','su5urvjoquXFu0vsvKvsx0vsuK9s','CMvHzgrPCG','8j+tOsbxzwjtB2nRzxqGyNjVywrJyxn0vg9tzxnZAw9UignHBgXLzdO','mtfZzNLoEvO','DMvUzg9Ys2v5CW','qvbjigTLEsbTyw5Hz2vYihnLDcbMB3iGD2vIihnLCNzLCG','l2fWAs9Hz2vUDhmVoMfNzw50swqVBwv0ywrHDge','C2vUzfn0yxr1CW','twvZC2fNzsbWCM9JzxnZB3iGBM90igf2ywLSywjSzq','DxnL','BgLZDgvUAw5N','DMfSDwvZ','CgHP','Bw9Kzvn0yxrL','yM9KEq','rMfPBgvKihrVihnLCNzLigLTywDL','sw1Hz2uGC2vYDMLUzYbLCNjVCG','z2v0qwn0AxzLu2vZC2LVBNm','Bw9KzwXZu2vYDMLJzq','w1DbuK5Dia','C2vZC2LVBKLK','BxrPBwu','ChjVAMvJDa','AgfUzgXLv2vIu29JA2v0twvZC2fNzq','Ag9ZDa','rMfPBgvKihrVihjLBw92zsbbueKGA2v5CW','mZmXmZmYAMXIwKDy','rMfPBgvKihrVihn0B3aGyxv0B25VBw91CYbLEgvJDxrPB24','cVcFM5eGu2H1DhrPBMCGzg93BIb3zwiGC2vYDMvYlI4U','BxnNlq','ywDLBNrjzcbXDwvYEsbWyxjHBwv0zxiGAxmGCMvXDwLYzwq','z2v0qxr0ywnOBwvUDhm','zxjYB3i','C2vYDMvY','z2v0qwXSqwDLBNrZ','y29Kzq','CM9Szq','BM90igzVDw5K','BwfW','DxjSzw5JB2rLza','BgvUz3rO','CMvHzhLtDgf0zq','D3jPDgvgAwXL','Ahr0CdOVlW','l2fWAs9OzwfSDgG','l2fWAs9MAwXLCW','qvbjigTLExmGCMvTB3zLzcbZDwnJzxnZzNvSBhK','DgvYBwLUyxrL','AxnmB2fKzwq','l2fWAs9HDhrHy2HTzw50CY86zMLSzuLKl3bYzxzPzxC','C2v0DxbnAwrKBgv3yxjL','l2fWAs9VCMnOzxn0CMf0B3i','qxr0ywnOBwvUDcbKzwXLDgvK','l2fWAs9MAwXLlwv4CgXVCMvY','DxbKyxrLx2fNzw50','ms4WlJa','4PYfifDLyLnVy2TLDcbZzxj2zxiGDgvZDdOGu1vdq0vtu0zvta','Aw5JBhvKzxm','DgHLBG','v0vc','mtC1rxbOvK5f','CxvLCNK','y3vYCMvUDe1VzgvS','w0vsuK9sxsa','rMfPBgvKihrVigDLDcbHDhrHy2HTzw50','ChjVy2vZC1jLCxvLC3q','B3jJAgvZDhjHDg9Y','mZbxDw96BKi','Aw5MBW','BwTKAxi','rMfPBgvKihrVigDLDcbHz2vUDcb3B3jRAw5NigrPCMvJDg9YAwvZigzVCIbPBwfNzsbZzwfYy2G','CgLUzW','zMLSzw5HBwu','y2XHDwrL','yw50AhjVCgLJ','C3rHCNrZv2L0Aa','qxP1CMuGyMfJA2vUzcbLCNjVCJOG','ywDLBNrjza','yxbPs2v5','rMLSzsbHDhrHy2HTzw50ihvWBg9HzgvK','BwLJCM9ZB2z0','CM91DgvY','C3vIC3rY','tK9ux0zpvu5e','ChjVAMvJDerPCG','sw52ywXPzcbZzxnZAw9U','zMLSzu5HBwu','C3vJy2vZCW','CMvHzezPBgu','rMfPBgvKihrVigDLDcbHz2vUDcbTzxrHzgf0yq','v2vIihnLCNzLCIbPBML0AwfSAxPLza','l2fWAs9LEhbSB3jLCG','zgLYzwn0B3j5','CMvX','mtqWmJq0m2PnrwzOwG','4PYfifDLyIbtzxj2zxiGCNvUBMLUzYbHDca','l2fWAs9LEhbSB3jLCI9PBMzV','C2L6zq','odyWndK0tLLdtLHJ','zMLSzuLK','AgvHzgvY','DxnLCI1Hz2vUDa','8j+tSsbxzwiGvuKGyxzHAwXHyMXLigf0oIbODhrWoI8VBg9JywXOB3n0oJmWmdeGkgLMihj1BM5PBMCP','r0vu','DgvZDfDLyLnVy2TLDfnLCNzLCG','CMvZB2X2zq','uhjVEhLPBMCGy2HHDcbYzxf1zxn0ihrVieXVEgLHief6DxjLigjHy2TLBMq','y29UBMvJDgLVBNm','u2H1DhrPBMCGzg93BIb3zwiGC2vYDMvYlI4U','C2v0','z2v0s2v5C0zVCLjLCxvLC3q','u2v0DgLUzYb1CcbxzwjtB2nRzxqGC2vYDMvY','l2fWAs90B29SCW','Dg9VBfjLC3vSDhm','ywXYzwfKEsbHy3rPDMu','C3rHDhvZ','C3rHy2S','x2DLDfzLBMrVCKzYB21nB2rLBa','yxbPs2v5twfUywDLCG','C2vZC2LVBKLe','C3rHDa','rMfPBgvKihrVignVBM5Ly3qGDg8GquKGC2vYDMLJzq','l2fWAs9Hz2vUDhmVoMfNzw50swqVC3rVCa','D3m6lY8','zMLSzuf0DgfJAg1LBNrtzxj2AwnL','sw1Hz2uGBM90igzVDw5K','zMLSzuv4CgXVCMvYtw9KDwXL','4P2mifDLyLnVy2TLDcbZzxj2zxiGDgvZDdOGveLnru9vva','qvbjigTLExmGDxbKyxrLzcbMB3iGC2vZC2LVBG','tM8GqvbjigTLEsbJB25MAwD1CMvKlIbqBgvHC2uGy29UzMLNDxjLihLVDxiGtg94AweGqvbjigTLEsbPBIbtzxr0Aw5NCY4','Dgv4Da','AxneAxjLy3rVCNK','rMfPBgvKihrVigDLDcbHz2vUDcbTB2rLihn0yxr1CW','CgfYyw1Z','DhLWzq','C2H1DgrVD24','BM93','Dg9ju09tDhjPBMC','Bg9Nz2vY','z2v0','CMfUzg9T','CMvXDwvZDeLK','zMLSzq','ywn0AxzL','qxr0ywnOBwvUDcbUB3qGzM91BMq','CMvSyxrPDMu','yxv0B25VBw91C191CgrHDgu','t3jPz2LUlcbylvjLCxvLC3rLzc1xAxrOlcbdB250zw50lvr5CguSiefJy2vWDcWGqxv0Ag9YAxPHDgLVBG','ywXS','DMvUzg9YqxbPs2v5','l2fWAs9RzxLZlZPZzxnZAw9Uswq','qwnJzxnZlunVBNrYB2WTqwXSB3CTt3jPz2LU','mJm5mtG5nejvuLjovW','z2v0qxzHAwXHyMXLvg9VBhngB3jvsq','l2fWAs9RzxLZ','z2v0u3rHDhvZ','teLtvf9br0vovfm','q1jfqvrfx0fhru5u','BMfTzq','rMfPBgvKihrVihvWzgf0zsbHz2vUDcbTB2rL','C2v0u2vZC2LVBKTLExm','C29JA2v0','l2fWAs9Hz2vUDhmVoMfNzw50swqVyxr0ywnOBwvUDhm','zgvLChnLzwS','DMvYC2LVBG','ww91igfYzsbHigHLBhbMDwWGquKGyxnZAxn0yw50lG','C2vUza','Cg9ZDa','DxjS','D3nnyw5Hz2vY','ndyYmtbizMHYwwi','AM9PBG','yNjVywrJyxn0vg9tzxnZAw9U','rMfPBgvKihrVihnLDcbbueKGA2v5CW','qxr0ywnOBwvUDcb1CgrHDgvK','C2v0DxbsB3v0zxm','l3rTCc9SB3HPys1PBwfNzxm','D3m6lY9SB2nHBgHVC3q6','ywn0Aw9U','ywDLBNrqB29S','4P2mifDLyLnVy2TLDcbZzxj2zxiGDgvZDdOGrvHdrvbusu9o','y29UDgvUDa','C3rYAw5NAwz5','zgvSzxrL','Bw9KzwW','rMfPBgvKihrVihjLzNjLC2GGBw9KzwXZigfMDgvYiefqssbRzxKGDxbKyxrL','rMfPBgvKihrVihvWBg9HzcbMAwXLigf0DgfJAg1LBNq','qxv0B25VBw91CYbLEgvJDxrPB24GC3rVCcbYzxf1zxn0zwq6ia','Cg9YDa','Dg9tDhjPBMC','C2v0DxbxzwjtB2nRzxq','rMfPBgvKihrVihbYB3H5ignOyxqGCMvXDwvZDcb0BYbbENvYzsbIywnRzw5K','DxrMoa','zNjVBq','zMLSDgvY','Cg9UzW','DxbKyxrLzef0','C3rHDhvZvgv4Da','sw1Hz2uGBM90igzVDw5KigLUigfUEsbZzwfYy2GGCgf0Aa','AgvHzgvYCW','C3rHCNrtzxj2zxi','D2fYBG','qvbjigTLExmGDxbKyxrLzcbZDwnJzxnZzNvSBhK','B3bLBMfP','nJu5mZmYogPsr25hyW','rMfPBgvKihrVigDLDcbHDhrHy2HTzw50ihbYzxzPzxC','CgH5C2LJywXSEurLBgv0zwq','zgvSzxrLqxr0ywnOBwvUDa','yxbWBgLJyxrPB24VANnVBG','v2vIu29JA2v0ihnLCNzLCIbPCYbUB3CGBgLZDgvUAw5N','4PYfifDLyLnVy2TLDcbTzxnZywDLihnLBNqGDg8Gy29UBMvJDgLVBJO','qMvHCMvYia','ywDLBNq','Bg94AwfbCgLlzxK','y29UBI0','y2f0zwDVCNK','AxnsDw5UAw5N','ChvZAa','sfruucbZzxj2zxiGzxjYB3i6','sw52ywXPzcbTB2rLlIbnDxn0igjLig9UzsbVzJOG','vw5RBM93BIbxzwjtB2nRzxqGBwvZC2fNzsb0ExbL','Dg9VBhnszwDPC3rYEq','z2v0qwDLBNrnzxrHzgf0yq','D3nZ','C3LZDgvTuhjVBxb0','Cgf5Bg9Hza','ANnVBG','y3DK','AxngAwXL','C2vZC2LVBNm','l2fWAs9SBg0VBw9KzwXZ','qvbjigTLEsbTyw5Hz2vYig5VDcbHDMfPBgfIBgu','ndq3mJHwsuDVAu0','sw1Hz2uGC2vYDMvKihn1y2nLC3nMDwXSEq','DgfZA1n0yxj0vgLTzq'];a0_0x1424=function(){return _0x22592a;};return a0_0x1424();}class WebServer{constructor(_0x45d876,_0x28a61b,_0x1d0b81={}){const _0x11496d=a0_0x350b36;this['orchestrator']=_0x45d876,this[_0x11496d(0x8d)]=_0x28a61b,this['config']=_0x1d0b81,this[_0x11496d(0xbf)]=_0x1d0b81[_0x11496d(0xbf)]||0x1f90,this[_0x11496d(0x11f)]=_0x1d0b81[_0x11496d(0x11f)]||'localhost',this['app']=a0_0x2fe689(),this['server']=createServer(this['app']),this['wss']=new WebSocketServer({'server':this[_0x11496d(0x128)],'verifyClient':_0x3fc8d4=>{const _0x5c91bf=_0x11496d;return this[_0x5c91bf(0x8d)]?.['info']('WebSocket\x20connection\x20attempt',{'origin':_0x3fc8d4['origin'],'host':_0x3fc8d4[_0x5c91bf(0x164)]['headers']['host'],'userAgent':_0x3fc8d4[_0x5c91bf(0x164)]['headers'][_0x5c91bf(0x16c)],'url':_0x3fc8d4['req']['url']}),!![];}}),this['connections']=new Map(),this[_0x11496d(0xe8)]=new Map(),this['apiKeyManager']=null,this['isRunning']=![];}async['initialize'](){const _0xb7858d=a0_0x350b36;try{this[_0xb7858d(0x139)](),this[_0xb7858d(0xb2)](),this['setupWebSocket'](),await this[_0xb7858d(0xcb)](),this['logger']['info'](_0xb7858d(0x161),{'port':this['port'],'host':this[_0xb7858d(0x11f)],'url':'http://'+this[_0xb7858d(0x11f)]+':'+this['port']});}catch(_0x173c13){this[_0xb7858d(0x8d)][_0xb7858d(0x127)]('Web\x20server\x20initialization\x20failed',{'error':_0x173c13['message'],'stack':_0x173c13[_0xb7858d(0x17b)]});throw _0x173c13;}}['setupMiddleware'](){const _0x5eadfa=a0_0x350b36;this[_0x5eadfa(0x101)][_0x5eadfa(0x110)]((_0x24e858,_0x1ec241,_0x10784f)=>{const _0x105020=_0x5eadfa;_0x1ec241[_0x105020(0x16b)](_0x105020(0x9a),'*'),_0x1ec241['header']('Access-Control-Allow-Methods','GET,\x20POST,\x20PUT,\x20DELETE,\x20OPTIONS'),_0x1ec241['header']('Access-Control-Allow-Headers',_0x105020(0x96)),_0x24e858['method']==='OPTIONS'?_0x1ec241[_0x105020(0x10e)](HTTP_STATUS['OK']):_0x10784f();}),this[_0x5eadfa(0x101)][_0x5eadfa(0x110)](a0_0x2fe689[_0x5eadfa(0xe5)]({'limit':'10mb'})),this[_0x5eadfa(0x101)]['use'](a0_0x2fe689[_0x5eadfa(0x12e)]({'extended':!![],'limit':_0x5eadfa(0xf5)})),this[_0x5eadfa(0x185)]=initFileExplorerModule({'showHidden':![],'restrictedPaths':[]}),this['app']['use'](_0x5eadfa(0x13c),this['fileExplorerModule'][_0x5eadfa(0x158)]);const _0x50a37c=a0_0x4a1d5d[_0x5eadfa(0xae)](__dirname,'../../web-ui/build');this['app']['use'](a0_0x2fe689['static'](_0x50a37c)),this[_0x5eadfa(0x101)][_0x5eadfa(0x110)]((_0x48eb26,_0x38d93f,_0x708a52)=>{const _0x40d47b=_0x5eadfa;this[_0x40d47b(0x8d)][_0x40d47b(0xfa)](_0x48eb26['method']+'\x20'+_0x48eb26['path'],{'ip':_0x48eb26['ip'],'userAgent':_0x48eb26[_0x40d47b(0x8e)]('User-Agent')}),_0x708a52();});}[a0_0x350b36(0xb2)](){const _0x2a1d94=a0_0x350b36;this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)](_0x2a1d94(0x133),async(_0x22c98d,_0x2fcd5c)=>{const _0x4911b7=_0x2a1d94;try{const _0x639578=a0_0x4a1d5d[_0x4911b7(0xae)](__dirname,'../../package.json'),_0x41255a=JSON['parse'](await a0_0x8343c3[_0x4911b7(0x15f)](_0x639578,'utf8'));_0x2fcd5c['json']({'status':_0x4911b7(0x106),'version':_0x41255a[_0x4911b7(0xa7)]||'1.0.0','timestamp':new Date()['toISOString']()});}catch(_0x2cb3a8){_0x2fcd5c[_0x4911b7(0xe5)]({'status':_0x4911b7(0x106),'version':_0x4911b7(0x13e),'timestamp':new Date()['toISOString']()});}}),this['app']['post'](_0x2a1d94(0xf2),async(_0x2dc545,_0x2ffe1e)=>{const _0x381700=_0x2a1d94;try{const _0x3118c7='web-'+Date['now']()+'-'+Math[_0x381700(0x8f)]()['toString'](0x24)[_0x381700(0x159)](0x2,0x9),_0x33deff=_0x2dc545['body']['projectDir']||process['cwd'](),_0x210230={'id':_0x3118c7,'projectDir':_0x33deff,'createdAt':new Date()[_0x381700(0x8c)](),'lastActivity':new Date()[_0x381700(0x8c)]()};this['sessions']['set'](_0x3118c7,_0x210230),_0x2ffe1e['json']({'success':!![],'session':_0x210230});}catch(_0xddd554){_0x2ffe1e['status'](HTTP_STATUS[_0x381700(0x107)])[_0x381700(0xe5)]({'success':![],'error':_0xddd554[_0x381700(0xf1)]});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0xaa)](_0x2a1d94(0x13a),async(_0x2f0f05,_0x5937a6)=>{const _0x2dc0c8=_0x2a1d94;try{const _0x76f87b={'interface':INTERFACE_TYPES['WEB'],'sessionId':_0x2f0f05['body'][_0x2dc0c8(0x11b)],'action':_0x2f0f05['body']['action'],'payload':_0x2f0f05['body']['payload'],'projectDir':_0x2f0f05[_0x2dc0c8(0x115)][_0x2dc0c8(0x15b)]||process['cwd']()},_0x29d778=await this['orchestrator'][_0x2dc0c8(0x148)](_0x76f87b);this[_0x2dc0c8(0xaf)](_0x76f87b[_0x2dc0c8(0x11b)],{'type':'orchestrator_response','action':_0x76f87b[_0x2dc0c8(0xb5)],'response':_0x29d778}),_0x5937a6['json'](_0x29d778);}catch(_0x315baa){this['logger'][_0x2dc0c8(0x127)]('Orchestrator\x20API\x20error',{'error':_0x315baa[_0x2dc0c8(0xf1)],'body':_0x2f0f05['body']}),_0x5937a6[_0x2dc0c8(0x17a)](HTTP_STATUS[_0x2dc0c8(0x107)])[_0x2dc0c8(0xe5)]({'success':![],'error':_0x315baa['message']});}}),this['app']['get'](_0x2a1d94(0x134),async(_0x5efd51,_0x3cc331)=>{const _0x424803=_0x2a1d94;try{const {path:_0x5c3f2a,projectDir:_0x31c197}=_0x5efd51[_0x424803(0x144)],_0x2f8776=a0_0x4a1d5d[_0x424803(0x170)](_0x31c197||process[_0x424803(0xe6)](),_0x5c3f2a||'.'),_0x12ede8=await a0_0x8343c3['stat'](_0x2f8776);if(_0x12ede8['isDirectory']()){const _0x369d34=await a0_0x8343c3[_0x424803(0x108)](_0x2f8776,{'withFileTypes':!![]}),_0x2c3d8e=_0x369d34[_0x424803(0x12d)](_0x3ad9af=>({'name':_0x3ad9af[_0x424803(0xa1)],'type':_0x3ad9af['isDirectory']()?_0x424803(0x163):_0x424803(0x91),'path':a0_0x4a1d5d[_0x424803(0xae)](_0x5c3f2a||'.',_0x3ad9af['name'])}));_0x3cc331['json']({'success':!![],'files':_0x2c3d8e});}else{const _0x3fe65d=await a0_0x8343c3[_0x424803(0x15f)](_0x2f8776,_0x424803(0xc3));_0x3cc331['json']({'success':!![],'content':_0x3fe65d,'type':_0x424803(0x91)});}}catch(_0x57de6a){_0x3cc331[_0x424803(0x17a)](HTTP_STATUS['NOT_FOUND'])['json']({'success':![],'error':_0x57de6a['message']});}}),this[_0x2a1d94(0x101)]['post']('/api/files/upload',async(_0x193e2a,_0xd9549b)=>{const _0x4e4dfc=_0x2a1d94;try{const {fileName:_0x267efe,content:_0x52f9f1,projectDir:_0x313932}=_0x193e2a[_0x4e4dfc(0x115)],_0x5acd0a=_0x313932||process[_0x4e4dfc(0xe6)](),_0x5f3235=a0_0x4a1d5d['resolve'](_0x5acd0a,_0x267efe);await a0_0x8343c3[_0x4e4dfc(0x14c)](_0x5acd0a,{'recursive':!![]}),await a0_0x8343c3[_0x4e4dfc(0x131)](_0x5f3235,_0x52f9f1,'utf8'),_0xd9549b[_0x4e4dfc(0xe5)]({'success':!![],'message':'File\x20uploaded\x20successfully','path':_0x5f3235});}catch(_0x264c41){_0xd9549b[_0x4e4dfc(0x17a)](HTTP_STATUS[_0x4e4dfc(0x107)])[_0x4e4dfc(0xe5)]({'success':![],'error':_0x264c41[_0x4e4dfc(0xf1)]});}}),this['app']['get'](_0x2a1d94(0x162),async(_0x3be086,_0x5e5fb2)=>{const _0x51d0aa=_0x2a1d94;try{const {path:_0x4dd0e8,showHidden:showHidden=![]}=_0x3be086[_0x51d0aa(0x144)],_0x2304a2=_0x4dd0e8||process[_0x51d0aa(0xe6)](),_0xfc4c68=a0_0x4a1d5d['resolve'](_0x2304a2),_0x37708c=a0_0x4a1d5d['normalize'](_0xfc4c68),_0x45cc7c=await a0_0x8343c3[_0x51d0aa(0x17f)](_0x37708c);if(!_0x45cc7c['isDirectory']())return _0x5e5fb2['status'](HTTP_STATUS['BAD_REQUEST'])['json']({'success':![],'error':'Path\x20is\x20not\x20a\x20directory'});const _0x5a6def=await a0_0x8343c3['readdir'](_0x37708c,{'withFileTypes':!![]}),_0x2df1f4=await Promise[_0x51d0aa(0x97)](_0x5a6def['filter'](_0x223368=>showHidden===_0x51d0aa(0xee)||!_0x223368['name']['startsWith']('.'))[_0x51d0aa(0x12d)](async _0x551010=>{const _0x2b5c42=_0x51d0aa,_0x534c5b=a0_0x4a1d5d['join'](_0x37708c,_0x551010[_0x2b5c42(0xa1)]),_0x488853=await a0_0x8343c3[_0x2b5c42(0x17f)](_0x534c5b)['catch'](()=>null);return{'name':_0x551010[_0x2b5c42(0xa1)],'type':_0x551010[_0x2b5c42(0x86)]()?_0x2b5c42(0x163):_0x2b5c42(0x91),'path':_0x534c5b,'relativePath':a0_0x4a1d5d['relative'](process[_0x2b5c42(0xe6)](),_0x534c5b),'size':_0x488853?.[_0x2b5c42(0x168)]||0x0,'modified':_0x488853?.['mtime']||null,'isHidden':_0x551010['name'][_0x2b5c42(0x152)]('.'),'permissions':{'readable':!![],'writable':!![]}};}));_0x2df1f4['sort']((_0x4f9dd1,_0x486835)=>{const _0x404a1c=_0x51d0aa;if(_0x4f9dd1[_0x404a1c(0x89)]!==_0x486835['type'])return _0x4f9dd1['type']===_0x404a1c(0x163)?-0x1:0x1;return _0x4f9dd1[_0x404a1c(0xa1)]['localeCompare'](_0x486835['name']);});const _0x71b0f2=a0_0x4a1d5d[_0x51d0aa(0xfc)](_0x37708c),_0x5dfac8=_0x71b0f2!==_0x37708c;_0x5e5fb2['json']({'success':!![],'currentPath':_0x37708c,'currentRelativePath':a0_0x4a1d5d[_0x51d0aa(0x94)](process[_0x51d0aa(0xe6)](),_0x37708c),'parentPath':_0x5dfac8?_0x71b0f2:null,'items':_0x2df1f4,'totalItems':_0x2df1f4['length'],'directories':_0x2df1f4['filter'](_0x1fce79=>_0x1fce79['type']===_0x51d0aa(0x163))['length'],'files':_0x2df1f4[_0x51d0aa(0xc5)](_0x171746=>_0x171746['type']===_0x51d0aa(0x91))[_0x51d0aa(0x12f)]});}catch(_0x52560e){_0x5e5fb2[_0x51d0aa(0x17a)](HTTP_STATUS[_0x51d0aa(0x107)])[_0x51d0aa(0xe5)]({'success':![],'error':_0x52560e[_0x51d0aa(0xf1)],'code':_0x52560e[_0x51d0aa(0x12a)]});}}),this['app']['post']('/api/explorer/mkdir',async(_0x45cb63,_0x292db8)=>{const _0xc51b59=_0x2a1d94;try{const {path:_0x43570e,name:_0xa618dc}=_0x45cb63['body'],_0x4902c7=a0_0x4a1d5d['resolve'](_0x43570e,_0xa618dc);await a0_0x8343c3['mkdir'](_0x4902c7,{'recursive':![]}),_0x292db8[_0xc51b59(0xe5)]({'success':!![],'path':_0x4902c7,'relativePath':a0_0x4a1d5d[_0xc51b59(0x94)](process['cwd'](),_0x4902c7)});}catch(_0x671774){_0x292db8['status'](HTTP_STATUS['INTERNAL_SERVER_ERROR'])[_0xc51b59(0xe5)]({'success':![],'error':_0x671774[_0xc51b59(0xf1)],'code':_0x671774[_0xc51b59(0x12a)]});}}),this[_0x2a1d94(0x101)]['get'](_0x2a1d94(0x167),async(_0x4b779c,_0x312df5)=>{const _0x4a6922=_0x2a1d94;try{const {path:_0x380530}=_0x4b779c['query'],_0x5e6c85=a0_0x4a1d5d['resolve'](_0x380530),_0xc13d7=await a0_0x8343c3[_0x4a6922(0x17f)](_0x5e6c85);_0x312df5['json']({'success':!![],'path':_0x5e6c85,'relativePath':a0_0x4a1d5d[_0x4a6922(0x94)](process['cwd'](),_0x5e6c85),'isDirectory':_0xc13d7['isDirectory'](),'isFile':_0xc13d7[_0x4a6922(0xe7)](),'size':_0xc13d7['size'],'created':_0xc13d7['birthtime'],'modified':_0xc13d7[_0x4a6922(0x11c)],'accessed':_0xc13d7['atime']});}catch(_0x29c4d9){_0x312df5[_0x4a6922(0x17a)](HTTP_STATUS[_0x4a6922(0x107)])[_0x4a6922(0xe5)]({'success':![],'error':_0x29c4d9[_0x4a6922(0xf1)],'code':_0x29c4d9[_0x4a6922(0x12a)]});}}),this['app'][_0x2a1d94(0xaa)]('/api/llm/chat',async(_0x53d8dc,_0x39d30f)=>{const _0x136d33=_0x2a1d94;try{const {sessionId:_0x367236,model:_0x2711f3,platformProvided:_0x594c46}=_0x53d8dc['body'];if(!_0x367236)return _0x39d30f[_0x136d33(0x17a)](0x190)[_0x136d33(0xe5)]({'error':'Session\x20ID\x20is\x20required'});let _0x37c17c=null,_0x211588=null;if(this[_0x136d33(0x17d)]){const _0x21b64d=this[_0x136d33(0x17d)][_0x136d33(0x175)](_0x367236,{'platformProvided':_0x594c46||![],'vendor':this['_getVendorFromModel'](_0x2711f3)});_0x37c17c=_0x21b64d[_0x136d33(0xd8)],_0x211588=_0x21b64d[_0x136d33(0x98)];}!_0x37c17c&&(_0x37c17c=this[_0x136d33(0xf4)][_0x136d33(0xd8)]||process['env']['LOXIA_API_KEY']);!_0x37c17c&&_0x53d8dc['body'][_0x136d33(0x155)]&&(_0x37c17c=_0x53d8dc['body'][_0x136d33(0x155)]);if(!_0x37c17c)return this['logger'][_0x136d33(0xcc)]('No\x20API\x20key\x20available\x20for\x20chat\x20request',{'sessionId':_0x367236,'model':_0x2711f3,'platformProvided':_0x594c46,'hasSessionManager':!!this['apiKeyManager']}),_0x39d30f['status'](0x191)['json']({'error':_0x136d33(0x188)});const _0x4c8f60='https://autopilot-api.azurewebsites.net/llm/chat',_0x3ec8f4={..._0x53d8dc[_0x136d33(0x115)],'apiKey':_0x37c17c,..._0x211588&&{'vendorApiKey':_0x211588}},_0xf88897={'method':'POST','headers':{'Content-Type':_0x136d33(0xd3),'Authorization':_0x136d33(0xd6)+_0x37c17c},'body':JSON[_0x136d33(0xb9)](_0x3ec8f4)};this[_0x136d33(0x8d)][_0x136d33(0x14b)](_0x136d33(0x171),{'url':_0x4c8f60,'model':_0x53d8dc[_0x136d33(0x115)]['model'],'hasApiKey':!!_0x37c17c});const _0x1acabb=await fetch(_0x4c8f60,_0xf88897);if(_0x1acabb['ok']){const _0x2e2896=await _0x1acabb['json']();this[_0x136d33(0x8d)]['info']('Successfully received response from Azure backend',{'model':_0x2e2896['model'],'contentLength':_0x2e2896['content']?.['length']||0x0}),_0x39d30f['json'](_0x2e2896);}else{const _0x5a2c1a=await _0x1acabb[_0x136d33(0x85)]();this['logger'][_0x136d33(0xcc)]('Azure\x20backend\x20chat\x20request\x20failed',{'status':_0x1acabb[_0x136d33(0x17a)],'statusText':_0x1acabb[_0x136d33(0xc8)],'error':_0x5a2c1a}),_0x39d30f['status'](_0x1acabb['status'])['json']({'error':_0x136d33(0x153)+_0x1acabb['status']+'\x20'+_0x1acabb[_0x136d33(0xc8)],'details':_0x5a2c1a});}}catch(_0x2cb091){this[_0x136d33(0x8d)][_0x136d33(0x127)](_0x136d33(0xc2),{'error':_0x2cb091[_0x136d33(0xf1)],'stack':_0x2cb091[_0x136d33(0x17b)]}),_0x39d30f['status'](0x1f4)[_0x136d33(0xe5)]({'error':_0x136d33(0x180),'details':_0x2cb091['message']});}}),this['app']['get'](_0x2a1d94(0xe9),async(_0x4c7069,_0x3720f0)=>{const _0x4c80dd=_0x2a1d94;try{const _0x39712a=_0x4c7069['headers']['authorization'];let _0x46c561=null;_0x39712a&&_0x39712a['startsWith'](_0x4c80dd(0xd6))&&(_0x46c561=_0x39712a['substring'](0x7));!_0x46c561&&(_0x46c561=this['config']['loxiaApiKey']||process['env']['LOXIA_API_KEY']);const _0x2af68e='https://autopilot-api.azurewebsites.net/llm/models',_0x175542={'method':_0x4c80dd(0x16e),'headers':{'Content-Type':_0x4c80dd(0xd3),..._0x46c561&&{'Authorization':'Bearer\x20'+_0x46c561}}};this['logger']['info']('Fetching models from Loxia Azure backend',{'url':_0x2af68e,'hasApiKey':!!_0x46c561});const _0x535444=await fetch(_0x2af68e,_0x175542);if(_0x535444['ok']){const _0x43347a=await _0x535444[_0x4c80dd(0xe5)]();this[_0x4c80dd(0x8d)][_0x4c80dd(0x14b)]('Successfully fetched models from Azure backend',{'modelCount':_0x43347a['models']?.['length']||0x0}),_0x3720f0[_0x4c80dd(0xe5)](_0x43347a);}else{const _0x4e4a4f=await _0x535444['text']();this['logger'][_0x4c80dd(0x127)]('Azure\x20backend\x20request\x20failed\x20-\x20NO\x20FALLBACK\x20AVAILABLE',{'status':_0x535444[_0x4c80dd(0x17a)],'statusText':_0x535444['statusText'],'error':_0x4e4a4f}),_0x3720f0['status'](_0x535444[_0x4c80dd(0x17a)])['json']({'success':![],'error':'Failed\x20to\x20fetch\x20models\x20from\x20backend:\x20'+_0x535444['status']+'\x20'+_0x535444[_0x4c80dd(0xc8)],'details':_0x4e4a4f});}}catch(_0xed78a6){this['logger'][_0x4c80dd(0x127)]('Failed to fetch models from Azure backend - NO FALLBACK',{'error':_0xed78a6['message'],'stack':_0xed78a6['stack']}),_0x3720f0['status'](0x1f4)['json']({'success':![],'error':'Failed to fetch models from backend','details':_0xed78a6['message']});}}),this['app'][_0x2a1d94(0x8e)](_0x2a1d94(0x177),async(_0x150ac9,_0x3b4ee0)=>{const _0x5ab598=_0x2a1d94;try{const _0x34d593=this[_0x5ab598(0xe0)];if(!_0x34d593)return _0x3b4ee0['status'](0x1f4)[_0x5ab598(0xe5)]({'error':'Tools\x20registry\x20not\x20available'});const _0x1a537c=_0x34d593[_0x5ab598(0x9c)]();this['logger']['info'](_0x5ab598(0xf9),{'toolCount':_0x1a537c[_0x5ab598(0x12f)],'tools':_0x1a537c['map'](_0x1d76a6=>({'id':_0x1d76a6['id'],'name':_0x1d76a6[_0x5ab598(0xa1)],'category':_0x1d76a6[_0x5ab598(0xda)]}))}),_0x3b4ee0[_0x5ab598(0xe5)]({'success':!![],'tools':_0x1a537c,'total':_0x1a537c['length']});}catch(_0x3a5774){this[_0x5ab598(0x8d)]['error']('Failed\x20to\x20get\x20tools\x20information',{'error':_0x3a5774['message'],'stack':_0x3a5774['stack']}),_0x3b4ee0[_0x5ab598(0x17a)](0x1f4)[_0x5ab598(0xe5)]({'error':'Failed\x20to\x20retrieve\x20tools\x20information','message':_0x3a5774['message']});}}),this[_0x2a1d94(0x101)]['post'](_0x2a1d94(0x9d),async(_0x1ef68f,_0x273520)=>{const _0x544692=_0x2a1d94;try{const {sessionId:_0x5479e3,loxiaApiKey:_0x50777e,vendorKeys:_0xc0574a}=_0x1ef68f[_0x544692(0x115)];if(!_0x5479e3)return _0x273520[_0x544692(0x17a)](0x190)['json']({'success':![],'error':'Session\x20ID\x20is\x20required'});if(!this[_0x544692(0x17d)])return _0x273520['status'](0x1f4)['json']({'success':![],'error':'API\x20key\x20manager\x20not\x20available'});this[_0x544692(0x17d)][_0x544692(0xa3)](_0x5479e3,{'loxiaApiKey':_0x50777e,'vendorKeys':_0xc0574a||{}}),this['logger'][_0x544692(0x14b)](_0x544692(0x187),{'sessionId':_0x5479e3,'hasLoxiaKey':!!_0x50777e,'vendorKeys':Object['keys'](_0xc0574a||{})});if(this[_0x544692(0x149)]&&this['orchestrator'][_0x544692(0x119)]&&_0x50777e)try{await this['orchestrator']['modelsService']['refresh']({'sessionId':_0x5479e3,'apiKey':_0x50777e}),this['logger'][_0x544692(0x14b)]('Models\x20refreshed\x20with\x20new\x20API\x20key',{'sessionId':_0x5479e3});}catch(_0x442134){this['logger']['warn'](_0x544692(0xbc),{'error':_0x442134[_0x544692(0xf1)],'sessionId':_0x5479e3});}_0x273520[_0x544692(0xe5)]({'success':!![],'message':_0x544692(0xcd),'sessionId':_0x5479e3,'hasLoxiaKey':!!_0x50777e,'vendorKeys':Object['keys'](_0xc0574a||{})});}catch(_0x20bcab){this['logger']['error'](_0x544692(0xb0),{'error':_0x20bcab[_0x544692(0xf1)],'sessionId':_0x1ef68f['body'][_0x544692(0x11b)]}),_0x273520['status'](0x1f4)[_0x544692(0xe5)]({'success':![],'error':_0x20bcab['message']});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)](_0x2a1d94(0x99),async(_0x1d22e6,_0x5c567f)=>{const _0x388013=_0x2a1d94;try{const {sessionId:_0x1d40df}=_0x1d22e6[_0x388013(0x88)];if(!this['apiKeyManager'])return _0x5c567f['status'](0x1f4)[_0x388013(0xe5)]({'success':![],'error':'API\x20key\x20manager\x20not\x20available'});const _0x47e813=this[_0x388013(0x17d)]['getSessionKeys'](_0x1d40df);_0x5c567f['json']({'success':!![],'sessionId':_0x1d40df,'hasLoxiaKey':!!_0x47e813[_0x388013(0xd8)],'vendorKeys':Object['keys'](_0x47e813[_0x388013(0x10b)]||{}),'updatedAt':_0x47e813[_0x388013(0xc7)]});}catch(_0x270bde){this[_0x388013(0x8d)][_0x388013(0x127)]('Failed\x20to\x20get\x20API\x20key\x20status',{'error':_0x270bde['message'],'sessionId':_0x1d22e6['params'][_0x388013(0x11b)]}),_0x5c567f[_0x388013(0x17a)](0x1f4)['json']({'success':![],'error':_0x270bde['message']});}}),this['app'][_0x2a1d94(0xba)]('/api/keys/:sessionId',async(_0x579c9b,_0x233942)=>{const _0x138a6b=_0x2a1d94;try{const {sessionId:_0x3c7891}=_0x579c9b[_0x138a6b(0x88)];if(!this[_0x138a6b(0x17d)])return _0x233942[_0x138a6b(0x17a)](0x1f4)['json']({'success':![],'error':_0x138a6b(0xea)});const _0x4a9043=this[_0x138a6b(0x17d)]['removeSessionKeys'](_0x3c7891);_0x233942['json']({'success':!![],'removed':_0x4a9043,'message':_0x4a9043?_0x138a6b(0x135):'No\x20API\x20keys\x20found\x20for\x20session'});}catch(_0x3e045e){this['logger']['error'](_0x138a6b(0x120),{'error':_0x3e045e[_0x138a6b(0xf1)],'sessionId':_0x579c9b['params']['sessionId']}),_0x233942[_0x138a6b(0x17a)](0x1f4)[_0x138a6b(0xe5)]({'success':![],'error':_0x3e045e['message']});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)](_0x2a1d94(0x9d),async(_0x4de7b9,_0x5f5ad6)=>{const _0x20fdc0=_0x2a1d94;try{if(!this[_0x20fdc0(0x17d)])return _0x5f5ad6['status'](0x1f4)[_0x20fdc0(0xe5)]({'success':![],'error':'API\x20key\x20manager\x20not\x20available'});const _0x4ec2d5=this['apiKeyManager'][_0x20fdc0(0x118)]();_0x5f5ad6['json']({'success':!![],'sessions':_0x4ec2d5,'total':_0x4ec2d5['length']});}catch(_0x40d323){this[_0x20fdc0(0x8d)][_0x20fdc0(0x127)]('Failed\x20to\x20get\x20active\x20sessions',{'error':_0x40d323['message']}),_0x5f5ad6['status'](0x1f4)[_0x20fdc0(0xe5)]({'success':![],'error':_0x40d323['message']});}}),this[_0x2a1d94(0x101)]['post']('/api/agents/:agentId/attachments/upload',async(_0x4bfab1,_0x44e069)=>{const _0x41ab3d=_0x2a1d94;try{const {agentId:_0x151374}=_0x4bfab1['params'],{filePath:_0x25a606,mode:_0x3f6903,fileName:_0x5ac531}=_0x4bfab1['body'];if(!this[_0x41ab3d(0x149)]?.['fileAttachmentService'])return _0x44e069[_0x41ab3d(0x17a)](0x1f4)[_0x41ab3d(0xe5)]({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x59c262=await this[_0x41ab3d(0x149)][_0x41ab3d(0x183)]['uploadFile']({'agentId':_0x151374,'filePath':_0x25a606,'mode':_0x3f6903||_0x41ab3d(0xb8),'fileName':_0x5ac531});this[_0x41ab3d(0x8d)]['info'](_0x41ab3d(0x156),{'agentId':_0x151374,'fileId':_0x59c262[_0x41ab3d(0x16a)],'fileName':_0x59c262[_0x41ab3d(0x15d)]}),_0x44e069[_0x41ab3d(0xe5)]({'success':!![],'attachment':_0x59c262});}catch(_0x1fd6e5){this[_0x41ab3d(0x8d)]['error'](_0x41ab3d(0xbd),{'agentId':_0x4bfab1['params'][_0x41ab3d(0x154)],'error':_0x1fd6e5['message']}),_0x44e069[_0x41ab3d(0x17a)](0x1f4)[_0x41ab3d(0xe5)]({'success':![],'error':_0x1fd6e5['message']});}}),this['app']['get'](_0x2a1d94(0xa5),async(_0x222c2e,_0x411337)=>{const _0x2292e7=_0x2a1d94;try{const {agentId:_0x44c8b5}=_0x222c2e[_0x2292e7(0x88)],{mode:_0x4f2a02,active:_0x3d2023}=_0x222c2e[_0x2292e7(0x144)];if(!this[_0x2292e7(0x149)]?.[_0x2292e7(0x183)])return _0x411337['status'](0x1f4)[_0x2292e7(0xe5)]({'success':![],'error':_0x2292e7(0xfb)});const _0x316034={};if(_0x4f2a02)_0x316034['mode']=_0x4f2a02;if(_0x3d2023!==undefined)_0x316034[_0x2292e7(0x92)]=_0x3d2023==='true';const _0x447511=await this[_0x2292e7(0x149)][_0x2292e7(0x183)][_0x2292e7(0x126)](_0x44c8b5,_0x316034);_0x411337['json']({'success':!![],'attachments':_0x447511,'total':_0x447511[_0x2292e7(0x12f)]});}catch(_0x193c5e){this['logger']['error'](_0x2292e7(0xf6),{'agentId':_0x222c2e[_0x2292e7(0x88)]['agentId'],'error':_0x193c5e[_0x2292e7(0xf1)]}),_0x411337['status'](0x1f4)['json']({'success':![],'error':_0x193c5e[_0x2292e7(0xf1)]});}}),this[_0x2a1d94(0x101)]['get'](_0x2a1d94(0x100),async(_0x5904be,_0x2692eb)=>{const _0x122c66=_0x2a1d94;try{const {fileId:_0x3bf84a}=_0x5904be[_0x122c66(0x88)];if(!this[_0x122c66(0x149)]?.[_0x122c66(0x183)])return _0x2692eb['status'](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x127437=await this[_0x122c66(0x149)]['fileAttachmentService']['getAttachment'](_0x3bf84a);if(!_0x127437)return _0x2692eb['status'](0x194)['json']({'success':![],'error':_0x122c66(0x93)});_0x2692eb[_0x122c66(0xe5)]({'success':!![],'attachment':_0x127437});}catch(_0xbdffb2){this[_0x122c66(0x8d)]['error'](_0x122c66(0x147),{'fileId':_0x5904be['params'][_0x122c66(0x16a)],'error':_0xbdffb2['message']}),_0x2692eb[_0x122c66(0x17a)](0x1f4)['json']({'success':![],'error':_0xbdffb2['message']});}}),this[_0x2a1d94(0x101)]['patch']('/api/attachments/:fileId/toggle',async(_0x239a59,_0x3e0d7a)=>{const _0x56b2a1=_0x2a1d94;try{const {fileId:_0x441b01}=_0x239a59[_0x56b2a1(0x88)];if(!this[_0x56b2a1(0x149)]?.[_0x56b2a1(0x183)])return _0x3e0d7a['status'](0x1f4)['json']({'success':![],'error':_0x56b2a1(0xfb)});const _0x524d00=await this[_0x56b2a1(0x149)]['fileAttachmentService']['toggleActive'](_0x441b01);this[_0x56b2a1(0x8d)]['info']('Attachment\x20active\x20status\x20toggled',{'fileId':_0x441b01,'active':_0x524d00['active']}),_0x3e0d7a['json']({'success':!![],'attachment':_0x524d00});}catch(_0xe7473e){this[_0x56b2a1(0x8d)][_0x56b2a1(0x127)]('Failed\x20to\x20toggle\x20attachment',{'fileId':_0x239a59['params']['fileId'],'error':_0xe7473e[_0x56b2a1(0xf1)]}),_0x3e0d7a[_0x56b2a1(0x17a)](0x1f4)[_0x56b2a1(0xe5)]({'success':![],'error':_0xe7473e['message']});}}),this['app']['patch']('/api/attachments/:fileId',async(_0x22147a,_0x336222)=>{const _0x543cf1=_0x2a1d94;try{const {fileId:_0x8bd39e}=_0x22147a['params'],{mode:_0x4d97ce,active:_0x3285df}=_0x22147a['body'];if(!this['orchestrator']?.[_0x543cf1(0x183)])return _0x336222['status'](0x1f4)[_0x543cf1(0xe5)]({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x14440c={};if(_0x4d97ce!==undefined)_0x14440c['mode']=_0x4d97ce;if(_0x3285df!==undefined)_0x14440c[_0x543cf1(0x92)]=_0x3285df;const _0x4b9fc2=await this['orchestrator'][_0x543cf1(0x183)]['updateAttachment'](_0x8bd39e,_0x14440c);this[_0x543cf1(0x8d)][_0x543cf1(0x14b)](_0x543cf1(0xb1),{'fileId':_0x8bd39e,'updates':_0x14440c}),_0x336222['json']({'success':!![],'attachment':_0x4b9fc2});}catch(_0x2f4a9c){this['logger'][_0x543cf1(0x127)]('Failed\x20to\x20update\x20attachment',{'fileId':_0x22147a[_0x543cf1(0x88)][_0x543cf1(0x16a)],'error':_0x2f4a9c['message']}),_0x336222[_0x543cf1(0x17a)](0x1f4)[_0x543cf1(0xe5)]({'success':![],'error':_0x2f4a9c[_0x543cf1(0xf1)]});}}),this[_0x2a1d94(0x101)]['delete'](_0x2a1d94(0x100),async(_0x2c042b,_0x15a214)=>{const _0x10255a=_0x2a1d94;try{const {fileId:_0x9e7a1}=_0x2c042b['params'],{agentId:_0x5ad53a}=_0x2c042b[_0x10255a(0x144)];if(!_0x5ad53a)return _0x15a214['status'](0x190)['json']({'success':![],'error':_0x10255a(0x125)});if(!this['orchestrator']?.['fileAttachmentService'])return _0x15a214[_0x10255a(0x17a)](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x2c1484=await this['orchestrator'][_0x10255a(0x183)][_0x10255a(0xd2)](_0x9e7a1,_0x5ad53a);this[_0x10255a(0x8d)][_0x10255a(0x14b)](_0x10255a(0x13b),{'fileId':_0x9e7a1,'agentId':_0x5ad53a,'physicallyDeleted':_0x2c1484['physicallyDeleted']}),_0x15a214['json']({'success':!![],'message':_0x2c1484['physicallyDeleted']?'Attachment\x20deleted':'Reference\x20removed','physicallyDeleted':_0x2c1484[_0x10255a(0xd1)]});}catch(_0x2dc90c){this[_0x10255a(0x8d)]['error']('Failed\x20to\x20delete\x20attachment',{'fileId':_0x2c042b['params'][_0x10255a(0x16a)],'error':_0x2dc90c[_0x10255a(0xf1)]}),_0x15a214[_0x10255a(0x17a)](0x1f4)['json']({'success':![],'error':_0x2dc90c['message']});}}),this['app'][_0x2a1d94(0xaa)]('/api/attachments/:fileId/import',async(_0x53ac9f,_0x67c15e)=>{const _0x3413f6=_0x2a1d94;try{const {fileId:_0x25399a}=_0x53ac9f[_0x3413f6(0x88)],{targetAgentId:_0x2716af}=_0x53ac9f['body'];if(!_0x2716af)return _0x67c15e['status'](0x190)['json']({'success':![],'error':'targetAgentId\x20is\x20required'});if(!this['orchestrator']?.[_0x3413f6(0x183)])return _0x67c15e['status'](0x1f4)[_0x3413f6(0xe5)]({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x4ff145=await this['orchestrator']['fileAttachmentService']['importFromAgent'](_0x25399a,_0x2716af);this[_0x3413f6(0x8d)]['info']('Attachment imported',{'fileId':_0x25399a,'targetAgentId':_0x2716af}),_0x67c15e['json']({'success':!![],'attachment':_0x4ff145});}catch(_0x3c939f){this['logger'][_0x3413f6(0x127)]('Failed to import attachment',{'fileId':_0x53ac9f[_0x3413f6(0x88)][_0x3413f6(0x16a)],'error':_0x3c939f['message']}),_0x67c15e['status'](0x1f4)[_0x3413f6(0xe5)]({'success':![],'error':_0x3c939f['message']});}}),this['app'][_0x2a1d94(0x8e)](_0x2a1d94(0x138),async(_0x520a23,_0x42b986)=>{const _0xe27280=_0x2a1d94;try{const {fileId:_0x200d88}=_0x520a23[_0xe27280(0x88)];if(!this['orchestrator']?.['fileAttachmentService'])return _0x42b986['status'](0x1f4)['json']({'success':![],'error':'File\x20attachment\x20service\x20not\x20available'});const _0x4e86c2=await this['orchestrator'][_0xe27280(0x183)][_0xe27280(0x103)](_0x200d88);if(!_0x4e86c2)return _0x42b986['status'](0x194)[_0xe27280(0xe5)]({'success':![],'error':'Attachment\x20not\x20found'});_0x42b986['json']({'success':!![],'preview':_0x4e86c2});}catch(_0x4ab68d){this[_0xe27280(0x8d)][_0xe27280(0x127)](_0xe27280(0xd0),{'fileId':_0x520a23['params'][_0xe27280(0x16a)],'error':_0x4ab68d[_0xe27280(0xf1)]}),_0x42b986['status'](0x1f4)['json']({'success':![],'error':_0x4ab68d['message']});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)](_0x2a1d94(0xf0),async(_0x3123b6,_0x5ad017)=>{const _0x5275a2=_0x2a1d94;try{const {sessionId:_0x1f8f24,filename:_0x51bd2e}=_0x3123b6['params'],_0x34cb6f=this['sessions']['get'](_0x1f8f24);if(!_0x34cb6f)return _0x5ad017[_0x5275a2(0x17a)](HTTP_STATUS['FORBIDDEN'])['json']({'success':![],'error':_0x5275a2(0x15c)});const _0x3d2c71=a0_0x4a1d5d['basename'](_0x51bd2e);if(_0x3d2c71!==_0x51bd2e||_0x51bd2e['includes']('..')||_0x51bd2e['includes']('/')||_0x51bd2e[_0x5275a2(0x140)]('\x5c'))return _0x5ad017['status'](HTTP_STATUS['BAD_REQUEST'])['json']({'success':![],'error':'Invalid\x20filename'});let _0x27c235=null;const _0x19921e=[a0_0x4a1d5d[_0x5275a2(0xae)](_0x34cb6f[_0x5275a2(0x15b)]||process[_0x5275a2(0xe6)](),'images',_0x3d2c71),a0_0x4a1d5d['join']('/tmp/loxia-images',_0x1f8f24,_0x3d2c71),a0_0x4a1d5d['join'](_0x5275a2(0xb3),_0x3d2c71)];if(this['orchestrator']?.[_0x5275a2(0xb6)])try{const _0x2d1cd8=await this[_0x5275a2(0x149)]['agentPool'][_0x5275a2(0x129)]();for(const _0x33f310 of _0x2d1cd8){_0x33f310['directoryAccess']?.['workingDirectory']&&_0x19921e[_0x5275a2(0xdc)](a0_0x4a1d5d[_0x5275a2(0xae)](_0x33f310[_0x5275a2(0xf7)]['workingDirectory'],'images',_0x3d2c71));}}catch(_0x3f0c1a){this[_0x5275a2(0x8d)]['warn'](_0x5275a2(0x14d),{'error':_0x3f0c1a['message']});}for(const _0x116577 of _0x19921e){try{const _0x5cb0d8=await a0_0x8343c3[_0x5275a2(0x17f)](_0x116577);if(_0x5cb0d8['isFile']()){_0x27c235=_0x116577,this[_0x5275a2(0x8d)]['info']('Image\x20found',{'filename':_0x3d2c71,'path':_0x27c235,'sessionId':_0x1f8f24});break;}}catch(_0x1e610c){continue;}}if(!_0x27c235)return this[_0x5275a2(0x8d)]['warn'](_0x5275a2(0xc9),{'filename':_0x3d2c71,'sessionId':_0x1f8f24,'searchPaths':_0x19921e}),_0x5ad017['status'](HTTP_STATUS[_0x5275a2(0x15a)])['json']({'success':![],'error':_0x5275a2(0x184)});_0x5ad017['sendFile'](_0x27c235,_0x4c7cbb=>{const _0x48f38d=_0x5275a2;_0x4c7cbb?(this[_0x48f38d(0x8d)][_0x48f38d(0x127)](_0x48f38d(0x102),{'error':_0x4c7cbb['message'],'imagePath':_0x27c235,'filename':_0x3d2c71}),!_0x5ad017['headersSent']&&_0x5ad017['status'](HTTP_STATUS[_0x48f38d(0x107)])['json']({'success':![],'error':_0x48f38d(0x116)})):this['logger']['info'](_0x48f38d(0xec),{'filename':_0x3d2c71,'path':_0x27c235,'sessionId':_0x1f8f24});});}catch(_0x59c944){this[_0x5275a2(0x8d)][_0x5275a2(0x127)](_0x5275a2(0x117),{'error':_0x59c944['message'],'sessionId':_0x3123b6[_0x5275a2(0x88)][_0x5275a2(0x11b)],'filename':_0x3123b6[_0x5275a2(0x88)][_0x5275a2(0x14f)]}),_0x5ad017['status'](HTTP_STATUS[_0x5275a2(0x107)])[_0x5275a2(0xe5)]({'success':![],'error':_0x59c944['message']});}}),this['app']['post']('/api/agents/:agentId/mode',async(_0x4effbb,_0x327bb7)=>{const _0x1d45eb=_0x2a1d94;try{const {agentId:_0x4bc873}=_0x4effbb['params'],{mode:_0xb4799f,lockMode:lockMode=![],sessionId:_0x280859}=_0x4effbb[_0x1d45eb(0x115)];if(!Object[_0x1d45eb(0x112)](AGENT_MODES)[_0x1d45eb(0x140)](_0xb4799f))return _0x327bb7[_0x1d45eb(0x17a)](0x190)['json']({'success':![],'error':_0x1d45eb(0xde)+Object[_0x1d45eb(0x112)](AGENT_MODES)[_0x1d45eb(0xae)](',\x20')});const _0x188821=_0x280859||_0x4effbb['sessionID'];!_0x188821&&this['logger']['warn']('Agent\x20mode\x20update\x20requested\x20without\x20session\x20ID',{'agentId':_0x4bc873,'hasBodySessionId':!!_0x280859,'hasReqSessionId':!!_0x4effbb['sessionID']});const _0x34756b={'interface':INTERFACE_TYPES['WEB'],'sessionId':_0x188821,'action':_0x1d45eb(0x13d),'payload':{'agentId':_0x4bc873,'updates':{'mode':_0xb4799f}}},_0x39d267=await this['orchestrator'][_0x1d45eb(0x148)](_0x34756b);if(_0x39d267[_0x1d45eb(0x15e)]){const _0x380e86=_0x39d267['data'];this['logger']['info']('Agent\x20mode\x20updated:\x20'+_0x4bc873,{'newMode':_0xb4799f,'lockMode':lockMode,'finalMode':_0x380e86?.[_0x1d45eb(0xf8)]}),this[_0x1d45eb(0xaf)](_0x34756b[_0x1d45eb(0x11b)],{'type':'agent_mode_changed','agentId':_0x4bc873,'mode':_0x380e86?.[_0x1d45eb(0xf8)],'modeState':_0x380e86?.['modeState']}),_0x327bb7['json']({'success':!![],'agent':_0x380e86,'message':'Agent\x20mode\x20switched\x20to\x20'+_0x380e86?.[_0x1d45eb(0xf8)]});}else _0x327bb7['status'](0x190)[_0x1d45eb(0xe5)]({'success':![],'error':_0x39d267[_0x1d45eb(0x127)]||_0x1d45eb(0xa2)});}catch(_0x1307d0){this['logger'][_0x1d45eb(0x127)](_0x1d45eb(0xa2),{'agentId':_0x4effbb['params'][_0x1d45eb(0x154)],'error':_0x1307d0['message']}),_0x327bb7['status'](0x1f4)['json']({'success':![],'error':_0x1307d0['message']});}}),this['app'][_0x2a1d94(0xaa)](_0x2a1d94(0x181),async(_0x1beda0,_0x2550b9)=>{const _0x367248=_0x2a1d94;try{const {agentId:_0x4457e6}=_0x1beda0[_0x367248(0x88)],_0x252f68=this['orchestrator']['messageProcessor'];if(!_0x252f68)return _0x2550b9['status'](0x1f4)['json']({'success':![],'error':_0x367248(0x10f)});const _0x153477=await _0x252f68['stopAutonomousExecution'](_0x4457e6);this['logger']['info'](_0x367248(0xbe)+_0x4457e6);const _0x190ae7=_0x1beda0['sessionID']||_0x153477['agent']?.['sessionId'];_0x190ae7&&this['broadcastToSession'](_0x190ae7,{'type':'agent_mode_changed','agentId':_0x4457e6,'mode':_0x153477[_0x367248(0xd7)]?.[_0x367248(0xf8)],'modeState':_0x153477['agent']?.['modeState']}),_0x2550b9[_0x367248(0xe5)](_0x153477);}catch(_0x24ece1){this[_0x367248(0x8d)][_0x367248(0x127)](_0x367248(0x122),{'agentId':_0x1beda0[_0x367248(0x88)][_0x367248(0x154)],'error':_0x24ece1[_0x367248(0xf1)]}),_0x2550b9[_0x367248(0x17a)](0x1f4)[_0x367248(0xe5)]({'success':![],'error':_0x24ece1[_0x367248(0xf1)]});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)]('/api/agents/:agentId/mode',async(_0x1f835a,_0x4f6928)=>{const _0x406b7d=_0x2a1d94;try{const {agentId:_0x22ffc8}=_0x1f835a[_0x406b7d(0x88)],_0x74bd3={'interface':INTERFACE_TYPES[_0x406b7d(0x142)],'sessionId':_0x1f835a[_0x406b7d(0x17e)],'action':'get_agent_status','payload':{'agentId':_0x22ffc8}},_0x42ae20=await this[_0x406b7d(0x149)][_0x406b7d(0x148)](_0x74bd3);_0x42ae20[_0x406b7d(0x15e)]&&_0x42ae20[_0x406b7d(0xd7)]?_0x4f6928[_0x406b7d(0xe5)]({'success':!![],'mode':_0x42ae20[_0x406b7d(0xd7)]['mode'],'modeState':_0x42ae20[_0x406b7d(0xd7)][_0x406b7d(0x114)],'currentTask':_0x42ae20['agent']['currentTask'],'iterationCount':_0x42ae20['agent']['iterationCount'],'taskStartTime':_0x42ae20[_0x406b7d(0xd7)][_0x406b7d(0xed)],'stopRequested':_0x42ae20[_0x406b7d(0xd7)]['stopRequested']}):_0x4f6928['status'](0x194)['json']({'success':![],'error':'Agent\x20not\x20found'});}catch(_0x2f0a16){this[_0x406b7d(0x8d)][_0x406b7d(0x127)](_0x406b7d(0x87),{'agentId':_0x1f835a[_0x406b7d(0x88)][_0x406b7d(0x154)],'error':_0x2f0a16['message']}),_0x4f6928['status'](0x1f4)['json']({'success':![],'error':_0x2f0a16['message']});}}),this['app'][_0x2a1d94(0x8e)]('/api/agents/available',async(_0x36bc5c,_0x4e879b)=>{const _0x4fd95d=_0x2a1d94;try{const _0x2ab44c=this['orchestrator']['config']['project']?.['directory']||process['cwd'](),_0xc7577d=await this['orchestrator']['stateManager']['getAllAvailableAgents'](_0x2ab44c,this[_0x4fd95d(0x149)][_0x4fd95d(0xb6)]);_0x4e879b[_0x4fd95d(0xe5)]({'success':!![],'agents':_0xc7577d,'total':_0xc7577d[_0x4fd95d(0x12f)],'active':_0xc7577d[_0x4fd95d(0xc5)](_0x4f3da3=>_0x4f3da3[_0x4fd95d(0x137)])['length'],'archived':_0xc7577d[_0x4fd95d(0xc5)](_0x1e7997=>!_0x1e7997[_0x4fd95d(0x137)])['length']});}catch(_0x4d8b09){this[_0x4fd95d(0x8d)]['error']('Failed\x20to\x20get\x20available\x20agents',{'error':_0x4d8b09['message'],'stack':_0x4d8b09[_0x4fd95d(0x17b)]}),_0x4e879b[_0x4fd95d(0x17a)](0x1f4)['json']({'success':![],'error':_0x4d8b09[_0x4fd95d(0xf1)]});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)](_0x2a1d94(0x10d),async(_0x32b4d5,_0x13262a)=>{const _0x1b8d4b=_0x2a1d94;try{const {agentId:_0x61cfde}=_0x32b4d5['params'],_0x55462c=this['orchestrator']['config']['project']?.[_0x1b8d4b(0x163)]||process['cwd'](),_0x561352=await this['orchestrator']['stateManager'][_0x1b8d4b(0xe1)](_0x61cfde,_0x55462c);_0x13262a['json']({'success':!![],'metadata':_0x561352});}catch(_0x4366f2){this['logger'][_0x1b8d4b(0x127)](_0x1b8d4b(0x160),{'agentId':_0x32b4d5['params'][_0x1b8d4b(0x154)],'error':_0x4366f2[_0x1b8d4b(0xf1)]}),_0x13262a['status'](0x194)['json']({'success':![],'error':_0x4366f2[_0x1b8d4b(0xf1)]});}}),this[_0x2a1d94(0x101)]['post']('/api/agents/import',async(_0xb9314b,_0x432fae)=>{const _0xd2b39c=_0x2a1d94;try{const {agentId:_0x1ee4fb}=_0xb9314b['body'];if(!_0x1ee4fb)return _0x432fae['status'](0x190)[_0xd2b39c(0xe5)]({'success':![],'error':'agentId\x20is\x20required\x20in\x20request\x20body'});const _0x3abd00=this['orchestrator'][_0xd2b39c(0xf4)][_0xd2b39c(0x11d)]?.[_0xd2b39c(0x163)]||process['cwd'](),_0x2175ad=await this[_0xd2b39c(0x149)]['stateManager']['importArchivedAgent'](_0x1ee4fb,_0x3abd00,this['orchestrator']['agentPool']);this[_0xd2b39c(0xac)]&&this['wsManager']['broadcast']({'type':'agent-imported','agent':{'id':_0x2175ad['id'],'name':_0x2175ad[_0xd2b39c(0xa1)],'status':_0x2175ad['status'],'capabilities':_0x2175ad[_0xd2b39c(0xef)],'model':_0x2175ad['currentModel']||_0x2175ad['preferredModel']}}),this[_0xd2b39c(0x8d)][_0xd2b39c(0x14b)]('Agent imported successfully',{'agentId':_0x2175ad['id'],'name':_0x2175ad[_0xd2b39c(0xa1)]}),_0x432fae[_0xd2b39c(0xe5)]({'success':!![],'agent':{'id':_0x2175ad['id'],'name':_0x2175ad[_0xd2b39c(0xa1)],'status':_0x2175ad[_0xd2b39c(0x17a)],'model':_0x2175ad[_0xd2b39c(0x145)]||_0x2175ad['preferredModel'],'capabilities':_0x2175ad['capabilities'],'lastActivity':_0x2175ad['lastActivity']},'message':'Agent\x20'+_0x2175ad[_0xd2b39c(0xa1)]+'\x20imported\x20successfully'});}catch(_0x25e7f6){this['logger'][_0xd2b39c(0x127)]('Failed to import agent',{'agentId':_0xb9314b[_0xd2b39c(0x115)]['agentId'],'error':_0x25e7f6[_0xd2b39c(0xf1)],'stack':_0x25e7f6['stack']});const _0x3dd01d=_0x25e7f6['message'][_0xd2b39c(0x140)](_0xd2b39c(0x179))?0x199:_0x25e7f6[_0xd2b39c(0xf1)]['includes'](_0xd2b39c(0x12c))?0x194:_0x25e7f6[_0xd2b39c(0xf1)]['includes']('Invalid')?0x190:0x1f4;_0x432fae['status'](_0x3dd01d)[_0xd2b39c(0xe5)]({'success':![],'error':_0x25e7f6['message']});}}),this[_0x2a1d94(0x101)][_0x2a1d94(0x8e)]('*',(_0x1632fd,_0x14ca35)=>{const _0x5110c9=a0_0x4a1d5d['join'](__dirname,'../../web-ui/build/index.html');_0x14ca35['sendFile'](_0x5110c9,_0xf06aae=>{const _0x19ca5e=a0_0x30c0;_0xf06aae&&_0x14ca35[_0x19ca5e(0x17a)](HTTP_STATUS[_0x19ca5e(0x15a)])[_0x19ca5e(0xa9)]('Web\x20UI\x20not\x20built.\x20Run:\x20npm\x20run\x20build:ui');});});}[a0_0x350b36(0xc1)](){const _0x27790f=a0_0x350b36;this['logger'][_0x27790f(0x14b)](_0x27790f(0x176),{'port':this['port'],'host':this[_0x27790f(0x11f)],'wsServerExists':!!this[_0x27790f(0xe2)],'httpServerExists':!!this['server']}),this[_0x27790f(0xe2)]['on']('error',_0x147df6=>{const _0x3ab548=_0x27790f;this['logger']['error']('WebSocket\x20server\x20error:',{'error':_0x147df6[_0x3ab548(0xf1)],'stack':_0x147df6[_0x3ab548(0x17b)],'port':this[_0x3ab548(0xbf)]});}),this[_0x27790f(0xe2)]['on'](_0x27790f(0x111),()=>{const _0x540ae3=_0x27790f;this['logger']['info'](_0x540ae3(0xd4),{'port':this[_0x540ae3(0xbf)],'host':this[_0x540ae3(0x11f)]});}),this['wss']['on']('connection',(_0x34501e,_0xfc31cf)=>{const _0x33e63e=_0x27790f,_0x5d47b2=_0x33e63e(0xd9)+Date['now']()+'-'+Math[_0x33e63e(0x8f)]()[_0x33e63e(0xc0)](0x24)[_0x33e63e(0x159)](0x2,0x9);this[_0x33e63e(0x8d)]['info']('WebSocket\x20connection\x20established',{'connectionId':_0x5d47b2,'ip':_0xfc31cf[_0x33e63e(0xa4)]['remoteAddress'],'origin':_0xfc31cf[_0x33e63e(0xca)]['origin'],'host':_0xfc31cf[_0x33e63e(0xca)][_0x33e63e(0x11f)],'userAgent':_0xfc31cf['headers']['user-agent'],'url':_0xfc31cf['url']});const _0x5ea67a={'id':_0x5d47b2,'ws':_0x34501e,'sessionId':null,'connectedAt':new Date()[_0x33e63e(0x8c)](),'lastActivity':new Date()['toISOString']()};this['connections'][_0x33e63e(0x174)](_0x5d47b2,_0x5ea67a),_0x34501e['on']('message',async _0x340ae6=>{const _0x2e2c7d=_0x33e63e;try{const _0x161498=JSON['parse'](_0x340ae6[_0x2e2c7d(0xc0)]());await this[_0x2e2c7d(0x11e)](_0x5d47b2,_0x161498);}catch(_0x489941){this[_0x2e2c7d(0x8d)][_0x2e2c7d(0x127)]('WebSocket\x20message\x20error',{'connectionId':_0x5d47b2,'error':_0x489941[_0x2e2c7d(0xf1)]}),_0x34501e['send'](JSON[_0x2e2c7d(0xb9)]({'type':'error','error':_0x489941['message']}));}}),_0x34501e['on'](_0x33e63e(0xf3),()=>{const _0x430928=_0x33e63e;this[_0x430928(0x8d)]['info']('WebSocket\x20connection\x20closed',{'connectionId':_0x5d47b2}),this[_0x430928(0x172)]['delete'](_0x5d47b2);}),_0x34501e[_0x33e63e(0xa9)](JSON['stringify']({'type':'connected','connectionId':_0x5d47b2,'timestamp':new Date()[_0x33e63e(0x8c)]()}));});}async[a0_0x350b36(0x11e)](_0x3e6e88,_0x15c343){const _0x1f5e90=a0_0x350b36,_0x22329f=this['connections'][_0x1f5e90(0x8e)](_0x3e6e88);if(!_0x22329f)return;_0x22329f['lastActivity']=new Date()['toISOString']();switch(_0x15c343['type']){case'join_session':const _0x167fc9=_0x15c343[_0x1f5e90(0x11b)];_0x22329f[_0x1f5e90(0x11b)]=_0x167fc9,this['logger'][_0x1f5e90(0x14b)]('WebSocket\x20joined\x20session',{'connectionId':_0x3e6e88,'sessionId':_0x167fc9,'totalConnectionsForSession':Array['from'](this['connections']['values']())[_0x1f5e90(0xc5)](_0x33b6d1=>_0x33b6d1['sessionId']===_0x167fc9)[_0x1f5e90(0x12f)]}),_0x22329f['ws'][_0x1f5e90(0xa9)](JSON['stringify']({'type':'session_joined','sessionId':_0x167fc9}));break;case _0x1f5e90(0x14e):_0x22329f['ws'][_0x1f5e90(0xa9)](JSON[_0x1f5e90(0xb9)]({'type':_0x1f5e90(0xc6),'timestamp':new Date()['toISOString']()}));break;case'orchestrator_request':try{const _0x359fab={'interface':INTERFACE_TYPES['WEB'],'sessionId':_0x22329f[_0x1f5e90(0x11b)],'action':_0x15c343[_0x1f5e90(0xb5)],'payload':_0x15c343[_0x1f5e90(0xe4)],'projectDir':_0x15c343['projectDir']||process['cwd']()},_0x7d1e8d=await this['orchestrator'][_0x1f5e90(0x148)](_0x359fab);_0x22329f['ws']['send'](JSON[_0x1f5e90(0xb9)]({'type':'orchestrator_response','requestId':_0x15c343['requestId'],'response':_0x7d1e8d}));}catch(_0x2f808c){_0x22329f['ws'][_0x1f5e90(0xa9)](JSON['stringify']({'type':_0x1f5e90(0x127),'requestId':_0x15c343[_0x1f5e90(0x90)],'error':_0x2f808c['message']}));}break;default:this['logger'][_0x1f5e90(0xcc)](_0x1f5e90(0xdf),{'connectionId':_0x3e6e88,'type':_0x15c343['type']});}}[a0_0x350b36(0xaf)](_0x59ceb9,_0xc51bd8){const _0x5e07f9=a0_0x350b36,_0x977573=Array['from'](this['connections']['values']())['filter'](_0x164e8d=>_0x164e8d[_0x5e07f9(0x11b)]===_0x59ceb9);let _0x17d533=[];_0x977573[_0x5e07f9(0x12f)]===0x0&&(_0x17d533=Array['from'](this['connections'][_0x5e07f9(0x112)]()),this['logger']?.['warn']('🔄\x20No\x20connections\x20for\x20session,\x20trying\x20all\x20connections:',{'targetSessionId':_0x59ceb9,'totalConnections':this['connections'][_0x5e07f9(0x168)],'allSessionIds':Array[_0x5e07f9(0xc4)](this[_0x5e07f9(0x172)][_0x5e07f9(0x112)]())[_0x5e07f9(0x12d)](_0x2c8084=>_0x2c8084[_0x5e07f9(0x11b)])['filter'](Boolean)}));const _0x34d215=_0x977573['length']>0x0?_0x977573:_0x17d533;this[_0x5e07f9(0x8d)]?.['info'](_0x5e07f9(0x109),{'sessionId':_0x59ceb9,'messageType':_0xc51bd8[_0x5e07f9(0x89)],'agentId':_0xc51bd8['agentId'],'totalConnections':this[_0x5e07f9(0x172)]['size'],'sessionConnections':_0x977573['length'],'targetConnections':_0x34d215['length'],'connectionIds':_0x34d215['map'](_0x4ecaff=>_0x4ecaff['id']),'usingFallback':_0x977573[_0x5e07f9(0x12f)]===0x0,'messagePreview':_0xc51bd8['type']===_0x5e07f9(0x95)&&_0xc51bd8['message']?{'messageId':_0xc51bd8['message']['id'],'messageRole':_0xc51bd8['message'][_0x5e07f9(0x12b)],'contentLength':_0xc51bd8['message']['content']?.[_0x5e07f9(0x12f)],'hasToolResults':!!_0xc51bd8['message'][_0x5e07f9(0x178)]}:undefined});for(const _0x25fa94 of _0x34d215){try{const _0x1175aa={..._0xc51bd8,'timestamp':new Date()[_0x5e07f9(0x8c)]()};_0x25fa94['ws']['send'](JSON['stringify'](_0x1175aa)),this['logger']?.[_0x5e07f9(0x14b)](_0x5e07f9(0xd5),{'connectionId':_0x25fa94['id'],'messageType':_0xc51bd8['type'],'agentId':_0xc51bd8[_0x5e07f9(0x154)]});}catch(_0x244eaa){this[_0x5e07f9(0x8d)]['warn']('❌\x20Failed\x20to\x20send\x20WebSocket\x20message',{'connectionId':_0x25fa94['id'],'sessionId':_0x59ceb9,'messageType':_0xc51bd8['type'],'error':_0x244eaa[_0x5e07f9(0xf1)]});}}}async['startServer'](){return new Promise((_0x3fdf31,_0x307eda)=>{const _0x4bd237=a0_0x30c0;this['server']['listen'](this['port'],this['host'],_0x4e301a=>{const _0x432301=a0_0x30c0;_0x4e301a?(this[_0x432301(0x8d)]['error']('Failed\x20to\x20start\x20HTTP\x20server',{'error':_0x4e301a['message'],'port':this['port'],'host':this[_0x432301(0x11f)]}),_0x307eda(_0x4e301a)):(this['isRunning']=!![],this[_0x432301(0x8d)][_0x432301(0x14b)]('HTTP\x20server\x20started\x20successfully',{'port':this['port'],'host':this[_0x432301(0x11f)],'httpUrl':'http://'+this['host']+':'+this['port'],'wsUrl':_0x432301(0x182)+this[_0x432301(0x11f)]+':'+this[_0x432301(0xbf)],'wsServerAttached':!!this[_0x432301(0xe2)],'wsConnections':this[_0x432301(0x172)]['size']}),setTimeout(async()=>{await this['testWebSocketServer']();},0x3e8),_0x3fdf31());}),this[_0x4bd237(0x128)]['on']('error',_0x120115=>{const _0x3483b8=_0x4bd237;this[_0x3483b8(0x8d)][_0x3483b8(0x127)](_0x3483b8(0xdd),{'error':_0x120115[_0x3483b8(0xf1)],'stack':_0x120115['stack'],'port':this[_0x3483b8(0xbf)]});});});}async[a0_0x350b36(0x16f)](){const _0x5ab36f=a0_0x350b36;try{const {default:_0x34d1a3}=await import('ws'),_0x6bd449=new _0x34d1a3(_0x5ab36f(0xb4)+this[_0x5ab36f(0xbf)]);_0x6bd449['on']('open',()=>{const _0x266e23=_0x5ab36f;this[_0x266e23(0x8d)][_0x266e23(0x14b)](_0x266e23(0x13f),{'port':this[_0x266e23(0xbf)],'url':_0x266e23(0xb4)+this['port']}),_0x6bd449[_0x266e23(0xf3)]();}),_0x6bd449['on'](_0x5ab36f(0x127),_0x147fbe=>{const _0x38bd4a=_0x5ab36f;this['logger'][_0x38bd4a(0x127)]('❌\x20WebSocket\x20server\x20test:\x20FAILED',{'port':this['port'],'url':'ws://localhost:'+this[_0x38bd4a(0xbf)],'error':_0x147fbe['message'],'code':_0x147fbe[_0x38bd4a(0x12a)]});}),_0x6bd449['on']('close',(_0x220dec,_0x1787cc)=>{const _0x52cc19=_0x5ab36f;_0x220dec===0x3e8&&this[_0x52cc19(0x8d)]['info']('WebSocket\x20test\x20connection\x20closed\x20cleanly');}),setTimeout(()=>{const _0x47e432=_0x5ab36f;_0x6bd449['readyState']===_0x34d1a3['CONNECTING']&&(this[_0x47e432(0x8d)][_0x47e432(0x127)](_0x47e432(0x186),{'port':this[_0x47e432(0xbf)],'url':'ws://localhost:'+this['port'],'readyState':_0x6bd449[_0x47e432(0x130)]}),_0x6bd449[_0x47e432(0x136)]());},0x1388);}catch(_0x58f311){this['logger'][_0x5ab36f(0x127)](_0x5ab36f(0xb7),{'error':_0x58f311[_0x5ab36f(0xf1)],'stack':_0x58f311[_0x5ab36f(0x17b)]});}}['setApiKeyManager'](_0x1413fb){const _0x159255=a0_0x350b36;this['apiKeyManager']=_0x1413fb,this['logger']?.[_0x159255(0x14b)](_0x159255(0x10c),{'hasManager':!!_0x1413fb});}[a0_0x350b36(0x17c)](_0x3ff57d){const _0x5381d1=a0_0x350b36;if(!_0x3ff57d)return null;const _0x229ab5=_0x3ff57d['toLowerCase']();if(_0x229ab5['includes']('anthropic')||_0x229ab5['includes'](_0x5381d1(0x150)))return _0x5381d1(0x151);else{if(_0x229ab5[_0x5381d1(0x140)](_0x5381d1(0xce))||_0x229ab5['includes']('gpt'))return _0x5381d1(0xce);else{if(_0x229ab5['includes'](_0x5381d1(0xa6)))return'deepseek';else{if(_0x229ab5[_0x5381d1(0x140)](_0x5381d1(0x113)))return _0x5381d1(0x157);}}}return null;}['getStatus'](){const _0x213f3d=a0_0x350b36;return{'isRunning':this[_0x213f3d(0xdb)],'port':this[_0x213f3d(0xbf)],'host':this['host'],'connections':this[_0x213f3d(0x172)]['size'],'sessions':this[_0x213f3d(0xe8)][_0x213f3d(0x168)],'url':_0x213f3d(0x132)+this[_0x213f3d(0x11f)]+':'+this['port']};}async[a0_0x350b36(0x8a)](){const _0x821ca6=a0_0x350b36;if(!this[_0x821ca6(0xdb)])return;this['logger']['info'](_0x821ca6(0x173));for(const _0x6be829 of this[_0x821ca6(0x172)]['values']()){_0x6be829['ws'][_0x821ca6(0xf3)]();}return this['connections']['clear'](),this['wss']['close'](),new Promise(_0xb22277=>{const _0x4d3857=_0x821ca6;this[_0x4d3857(0x128)][_0x4d3857(0xf3)](()=>{const _0x277a2a=_0x4d3857;this['isRunning']=![],this[_0x277a2a(0x8d)][_0x277a2a(0x14b)]('Web\x20server\x20shutdown\x20complete'),_0xb22277();});});}}export default WebServer;if(import.meta.url==='file://'+process['argv'][0x1]){const simpleLogger={'info':(_0xa1265b,_0x456fbf)=>console[a0_0x350b36(0xfe)]('[INFO]\x20'+_0xa1265b,_0x456fbf?JSON[a0_0x350b36(0xb9)](_0x456fbf,null,0x2):''),'error':(_0x44cf99,_0x577b01)=>console[a0_0x350b36(0x127)](a0_0x350b36(0x146)+_0x44cf99,_0x577b01?JSON['stringify'](_0x577b01,null,0x2):''),'warn':(_0x443cec,_0x225ee5)=>console['warn'](a0_0x350b36(0x11a)+_0x443cec,_0x225ee5?JSON[a0_0x350b36(0xb9)](_0x225ee5,null,0x2):''),'debug':(_0x2a6b6c,_0x44a3e2)=>console['log']('[DEBUG]\x20'+_0x2a6b6c,_0x44a3e2?JSON[a0_0x350b36(0xb9)](_0x44a3e2,null,0x2):'')},mockOrchestrator={'processAction':async(_0x21954b,_0x2d2cb9)=>{const _0x35265e=a0_0x350b36;simpleLogger['info']('Mock\x20orchestrator\x20action',{'action':_0x21954b,'data':_0x2d2cb9});switch(_0x21954b){case ORCHESTRATOR_ACTIONS[_0x35265e(0x9f)]:return{'success':!![],'data':[]};case ORCHESTRATOR_ACTIONS[_0x35265e(0xa0)]:return{'success':!![],'data':{'id':'agent-'+Date[_0x35265e(0x8b)](),'name':_0x2d2cb9['name']||_0x35265e(0xfd),'status':_0x35265e(0x92),'model':_0x2d2cb9[_0x35265e(0xbb)]||'anthropic-sonnet','systemPrompt':_0x2d2cb9[_0x35265e(0xe3)]||_0x35265e(0xa8)}};case ORCHESTRATOR_ACTIONS[_0x35265e(0xff)]:return{'success':!![],'data':{'message':{'id':_0x35265e(0x124)+Date['now'](),'content':'Echo:\x20'+_0x2d2cb9['message'],'timestamp':new Date()['toISOString']()}}};default:return{'success':![],'error':'Unknown\x20action:\x20'+_0x21954b};}}},server=new WebServer(mockOrchestrator,simpleLogger,{'port':0x1f90,'host':a0_0x350b36(0x105)});console[a0_0x350b36(0xfe)]('🚀\x20Starting\x20Loxia\x20Web\x20Server\x20in\x20standalone\x20mode...'),server[a0_0x350b36(0xcb)]()[a0_0x350b36(0x141)](()=>{const _0x42eb9a=a0_0x350b36,_0x8ae68e=server[_0x42eb9a(0x9e)]();console[_0x42eb9a(0xfe)](_0x42eb9a(0x166)+_0x8ae68e[_0x42eb9a(0xab)]),console[_0x42eb9a(0xfe)](_0x42eb9a(0x16d)),console[_0x42eb9a(0xfe)]('🔧\x20API\x20available\x20at:\x20http://localhost:8080/api');})['catch'](_0xdb0813=>{const _0x564671=a0_0x350b36;console[_0x564671(0x127)]('❌\x20Failed\x20to\x20start\x20web\x20server:',_0xdb0813[_0x564671(0xf1)]),process['exit'](0x1);}),process['on']('SIGINT',async()=>{const _0x481ea6=a0_0x350b36;console[_0x481ea6(0xfe)](_0x481ea6(0x123)),await server['shutdown'](),process['exit'](0x0);});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a0_0x45d0b8=a0_0x4182;(function(_0x4892d4,_0x1d70ef){const _0x48ec86=a0_0x4182,_0x321761=_0x4892d4();while(!![]){try{const _0x52ef3e=-parseInt(_0x48ec86(0xe1))/0x1+parseInt(_0x48ec86(0xe6))/0x2+-parseInt(_0x48ec86(0xd4))/0x3+-parseInt(_0x48ec86(0xe9))/0x4*(parseInt(_0x48ec86(0xd8))/0x5)+-parseInt(_0x48ec86(0xd1))/0x6+parseInt(_0x48ec86(0xe7))/0x7*(parseInt(_0x48ec86(0xda))/0x8)+parseInt(_0x48ec86(0xe2))/0x9*(parseInt(_0x48ec86(0xc9))/0xa);if(_0x52ef3e===_0x1d70ef)break;else _0x321761['push'](_0x321761['shift']());}catch(_0x3609e4){_0x321761['push'](_0x321761['shift']());}}}(a0_0x2d98,0xb69a0));function a0_0x4182(_0x3da2ff,_0x3be707){_0x3da2ff=_0x3da2ff-0xbc;const _0x2d983d=a0_0x2d98();let _0x4182f9=_0x2d983d[_0x3da2ff];if(a0_0x4182['oKDlbi']===undefined){var _0x4ef9cd=function(_0x4f726a){const _0x389604='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4220a7='',_0x27fb1e='';for(let _0x509d18=0x0,_0x5522ae,_0x104c0c,_0x525464=0x0;_0x104c0c=_0x4f726a['charAt'](_0x525464++);~_0x104c0c&&(_0x5522ae=_0x509d18%0x4?_0x5522ae*0x40+_0x104c0c:_0x104c0c,_0x509d18++%0x4)?_0x4220a7+=String['fromCharCode'](0xff&_0x5522ae>>(-0x2*_0x509d18&0x6)):0x0){_0x104c0c=_0x389604['indexOf'](_0x104c0c);}for(let _0x487f23=0x0,_0x1967ae=_0x4220a7['length'];_0x487f23<_0x1967ae;_0x487f23++){_0x27fb1e+='%'+('00'+_0x4220a7['charCodeAt'](_0x487f23)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x27fb1e);};a0_0x4182['iTwJLY']=_0x4ef9cd,a0_0x4182['QKXEZn']={},a0_0x4182['oKDlbi']=!![];}const _0x1d07df=_0x2d983d[0x0],_0x68a514=_0x3da2ff+_0x1d07df,_0x407259=a0_0x4182['QKXEZn'][_0x68a514];return!_0x407259?(_0x4182f9=a0_0x4182['iTwJLY'](_0x4182f9),a0_0x4182['QKXEZn'][_0x68a514]=_0x4182f9):_0x4182f9=_0x407259,_0x4182f9;}import{promises as a0_0x4220a7}from'fs';import a0_0x27fb1e from'path';function a0_0x2d98(){const _0x175017=['C3rHDa','DhLWzq','mti4nZi1nKTdwgXlDq','nJaZyKHjBevA','BgvUz3rO','yNjVD3nLrgLYzwn0B3j5','Bg9JywXLq29TCgfYzq','mtq0otC2nNP2CNv5Ba','mZi0mwXPEMHzyW','AxntywzLugf0Aa','mtq4tuzos3ns','BwTKAxi','ugf0AcbUB3qGzM91BMqGB3iGAw5Hy2nLC3nPyMXL','zMLSDgvY','BxrPBwu','Dg9mB3DLCKnHC2u','Aw5JBhvKzxm','zMLSzq','y29Kzq','CgXHDgzVCM0','AgvHBhrOEq','sw52ywXPzcbMAwXLihbHDgG','C3rHCNrZv2L0Aa','AgvHBhrOq2HLy2S','y29UzMLN','mtGYmtyWCKrZwe1Q','rMfPBgvKihrVignYzwf0zsbKAxjLy3rVCNK','zxH0BMfTzq','z2v0rMLSzuLUzM8','Ag9TzwrPCG','zMLSzuv4CgXVCMvY','BwvZC2fNzq','z2v0rMLSzvn0yxrZ','ntC4mJiXog91wvn5sW','qwnJzxnZihrVihrOAxmGCgf0AcbPCYbYzxn0CMLJDgvK','AxngAwXL','nJKYmdy3uwDhyNft','C2HVDwXKsw5JBhvKzuL0zw0','C29Tzq','BMfTzq','mtGXmdbezxzsD0S','ugf0AcbPCYbUB3qGysbKAxjLy3rVCNK','mJq1mdrPqw1zvg8','AxneAxjLy3rVCNK','CMvZB2X2zq','zgLYzwn0B3j5','rMLSzsbUB3qGzM91BMq'];a0_0x2d98=function(){return _0x175017;};return a0_0x2d98();}import a0_0x509d18 from'os';class FileExplorerController{constructor(_0x5522ae={}){const _0x2775b2=a0_0x4182;this[_0x2775b2(0xc8)]={'showHidden':![],'allowedExtensions':[],'maxDepth':0x32,'restrictedPaths':[],..._0x5522ae};}async['getFileStats'](_0x104c0c){const _0x1ea2aa=a0_0x4182;try{const _0x525464=await a0_0x4220a7[_0x1ea2aa(0xdf)](_0x104c0c);return{'stats':_0x525464};}catch(_0x487f23){return{'stats':null,'error':_0x487f23 instanceof Error?_0x487f23['message']:'Unknown\x20error'};}}['isSafePath'](_0x1967ae){const _0x3321e9=a0_0x4182;try{const _0x46dbfe=a0_0x27fb1e[_0x3321e9(0xdc)](_0x1967ae);if(this[_0x3321e9(0xc8)]['restrictedPaths'][_0x3321e9(0xd6)](_0x35f839=>_0x46dbfe[_0x3321e9(0xc6)](a0_0x27fb1e['resolve'](_0x35f839))))return![];return!![];}catch(_0x1a7778){return![];}}['shouldIncludeItem'](_0x245411,_0x1c53c0){const _0x205210=a0_0x4182;if(!this[_0x205210(0xc8)]['showHidden']&&_0x245411['startsWith']('.'))return![];if(_0x1c53c0['isFile']()&&this[_0x205210(0xc8)]['allowedExtensions'][_0x205210(0xe3)]>0x0){const _0x3d3770=a0_0x27fb1e[_0x205210(0xcb)](_0x245411)[_0x205210(0xbf)]();if(!this[_0x205210(0xc8)]['allowedExtensions'][_0x205210(0xc0)](_0x3d3770))return![];}return!![];}async[a0_0x45d0b8(0xe4)](_0x39245a=process['cwd'](),_0x49df0a={}){const _0x5dc90e=a0_0x45d0b8;try{const _0x36d420=a0_0x27fb1e['resolve'](_0x39245a);if(!this[_0x5dc90e(0xe8)](_0x36d420))return{'success':![],'error':_0x5dc90e(0xd2)};const {stats:_0x13078f,error:_0x49c36f}=await this['getFileStats'](_0x36d420);if(_0x49c36f||!_0x13078f)return{'success':![],'error':_0x5dc90e(0xbc)};if(!_0x13078f['isDirectory']())return{'success':![],'error':_0x5dc90e(0xd9)};const _0x4486f6=await a0_0x4220a7['readdir'](_0x36d420),_0x1be8a4=[];for(const _0x31d05c of _0x4486f6){const _0x382700=a0_0x27fb1e['join'](_0x36d420,_0x31d05c),{stats:_0x1c5e34}=await this['getFileStats'](_0x382700);if(_0x1c5e34&&this[_0x5dc90e(0xd5)](_0x31d05c,_0x1c5e34)){const _0xc04618={'name':_0x31d05c,'path':_0x382700,'type':_0x1c5e34[_0x5dc90e(0xdb)]()?_0x5dc90e(0xdd):_0x5dc90e(0xc1),'size':_0x1c5e34['isFile']()?_0x1c5e34['size']:undefined,'lastModified':_0x1c5e34['mtime'],'extension':_0x1c5e34[_0x5dc90e(0xd3)]()?a0_0x27fb1e[_0x5dc90e(0xcb)](_0x31d05c)[_0x5dc90e(0xbf)]():undefined};_0x1be8a4['push'](_0xc04618);}}_0x1be8a4['sort']((_0x9a2a1d,_0x55d716)=>{const _0x3adaf5=_0x5dc90e;if(_0x9a2a1d['type']===_0x55d716[_0x3adaf5(0xe0)])return _0x9a2a1d[_0x3adaf5(0xd7)][_0x3adaf5(0xe5)](_0x55d716['name']);return _0x9a2a1d['type']==='directory'?-0x1:0x1;});const _0x5c8a37=a0_0x27fb1e['dirname'](_0x36d420),_0x2f3769=_0x5c8a37!==_0x36d420;return{'success':!![],'data':{'currentPath':_0x36d420,'parentPath':_0x2f3769?_0x5c8a37:null,'items':_0x1be8a4,'totalItems':_0x1be8a4['length'],'directories':_0x1be8a4['filter'](_0x17beb3=>_0x17beb3['type']==='directory')['length'],'files':_0x1be8a4[_0x5dc90e(0xbd)](_0x3d3a16=>_0x3d3a16['type']===_0x5dc90e(0xc1))['length']}};}catch(_0x55a133){return{'success':![],'error':_0x55a133 instanceof Error?_0x55a133['message']:'Server\x20error'};}}async[a0_0x45d0b8(0xcc)](_0x3fd579){const _0x28e5f3=a0_0x45d0b8;try{if(!_0x3fd579||!this[_0x28e5f3(0xe8)](_0x3fd579))return{'success':![],'error':_0x28e5f3(0xc5)};const {stats:_0x24152e,error:_0x518422}=await this[_0x28e5f3(0xd0)](_0x3fd579);if(_0x518422||!_0x24152e)return{'success':![],'error':_0x28e5f3(0xde)};const _0x54a793={'name':a0_0x27fb1e['basename'](_0x3fd579),'path':_0x3fd579,'type':_0x24152e[_0x28e5f3(0xdb)]()?'directory':'file','size':_0x24152e[_0x28e5f3(0xd3)]()?_0x24152e['size']:undefined,'lastModified':_0x24152e[_0x28e5f3(0xbe)],'extension':_0x24152e[_0x28e5f3(0xd3)]()?a0_0x27fb1e['extname'](_0x3fd579)['toLowerCase']():undefined};return{'success':!![],'data':_0x54a793};}catch(_0xb5986){return{'success':![],'error':_0xb5986 instanceof Error?_0xb5986[_0x28e5f3(0xcf)]:'Server\x20error'};}}['getCurrentWorkingDirectory'](){const _0xe1dfd6=a0_0x45d0b8;return{'success':!![],'data':{'cwd':process['cwd'](),'platform':process[_0xe1dfd6(0xc3)],'homedir':a0_0x509d18[_0xe1dfd6(0xcd)]()}};}async['createDirectory'](_0x2c1c71,_0x556547={}){const _0x269136=a0_0x45d0b8;try{if(!this['isSafePath'](_0x2c1c71))return{'success':![],'error':'Invalid\x20directory\x20path'};return await a0_0x4220a7[_0x269136(0xea)](_0x2c1c71,{'recursive':_0x556547['recursive']||![]}),{'success':!![],'data':{'path':_0x2c1c71,'relativePath':a0_0x27fb1e['relative'](process['cwd'](),_0x2c1c71)}};}catch(_0x298e68){return{'success':![],'error':_0x298e68 instanceof Error?_0x298e68[_0x269136(0xcf)]:_0x269136(0xca),'code':_0x298e68[_0x269136(0xc2)]};}}[a0_0x45d0b8(0xc7)](){const _0x1bc36c=a0_0x45d0b8;return{'success':!![],'data':{'status':_0x1bc36c(0xc4),'timestamp':new Date()['toISOString'](),'module':_0x1bc36c(0xce)}};}}export default FileExplorerController;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3d0c90,_0x14918c){const _0x43d242=a0_0x6c4f,_0xf44f5b=_0x3d0c90();while(!![]){try{const _0x38c317=-parseInt(_0x43d242(0x162))/0x1*(parseInt(_0x43d242(0x161))/0x2)+-parseInt(_0x43d242(0x158))/0x3*(parseInt(_0x43d242(0x15a))/0x4)+parseInt(_0x43d242(0x15e))/0x5+parseInt(_0x43d242(0x15d))/0x6*(-parseInt(_0x43d242(0x159))/0x7)+parseInt(_0x43d242(0x163))/0x8*(-parseInt(_0x43d242(0x160))/0x9)+-parseInt(_0x43d242(0x15c))/0xa*(parseInt(_0x43d242(0x15f))/0xb)+parseInt(_0x43d242(0x15b))/0xc;if(_0x38c317===_0x14918c)break;else _0xf44f5b['push'](_0xf44f5b['shift']());}catch(_0x52e616){_0xf44f5b['push'](_0xf44f5b['shift']());}}}(a0_0x3f64,0xb295d));import{createFileExplorerRouter,defaultConfig}from'./routes.js';import a0_0x2b46d6 from'./controller.js';function a0_0x6c4f(_0x14832d,_0x218d1d){_0x14832d=_0x14832d-0x158;const _0x3f6411=a0_0x3f64();let _0x6c4f6a=_0x3f6411[_0x14832d];if(a0_0x6c4f['kqsNZq']===undefined){var _0x424f06=function(_0x531f7e){const _0x595b19='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2b46d6='',_0x4d3bb3='';for(let _0x22dfa8=0x0,_0x389823,_0x72791c,_0x42eada=0x0;_0x72791c=_0x531f7e['charAt'](_0x42eada++);~_0x72791c&&(_0x389823=_0x22dfa8%0x4?_0x389823*0x40+_0x72791c:_0x72791c,_0x22dfa8++%0x4)?_0x2b46d6+=String['fromCharCode'](0xff&_0x389823>>(-0x2*_0x22dfa8&0x6)):0x0){_0x72791c=_0x595b19['indexOf'](_0x72791c);}for(let _0x241244=0x0,_0x16d589=_0x2b46d6['length'];_0x241244<_0x16d589;_0x241244++){_0x4d3bb3+='%'+('00'+_0x2b46d6['charCodeAt'](_0x241244)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4d3bb3);};a0_0x6c4f['PlIwDe']=_0x424f06,a0_0x6c4f['ZhBbxM']={},a0_0x6c4f['kqsNZq']=!![];}const _0x3e2dd5=_0x3f6411[0x0],_0x4e0056=_0x14832d+_0x3e2dd5,_0x5733ed=a0_0x6c4f['ZhBbxM'][_0x4e0056];return!_0x5733ed?(_0x6c4f6a=a0_0x6c4f['PlIwDe'](_0x6c4f6a),a0_0x6c4f['ZhBbxM'][_0x4e0056]=_0x6c4f6a):_0x6c4f6a=_0x5733ed,_0x6c4f6a;}export function initFileExplorerModule(_0x4d3bb3={}){const _0x22dfa8={...defaultConfig,..._0x4d3bb3},_0x389823=createFileExplorerRouter(_0x22dfa8),_0x72791c=new a0_0x2b46d6(_0x22dfa8);return{'router':_0x389823,'controller':_0x72791c,'config':_0x22dfa8};}export{default as FileExplorerController}from'./controller.js';export{createFileExplorerRouter,defaultConfig}from'./routes.js';export*from'./middleware.js';export default{'init':initFileExplorerModule,'Controller':a0_0x2b46d6,'createRouter':createFileExplorerRouter,'defaultConfig':defaultConfig};function a0_0x3f64(){const _0x1ac01e=['nJiYntC2mhznBxv6wa','mtfPDgzWque','mtm0mu9WA01pzW','nZeYote0zgztwhnV','mvbXBNjqqG','mZi4mdH3vhbiCNi','nJiZngflqxPzva','nJntCvLNuwq','mtq2og1ozuLQBG','ndmYnJe1otzJu0vPtMi','mta4mdqXotbzr2nbCwO','odCYmty2s1LvvhjO'];a0_0x3f64=function(){return _0x1ac01e;};return a0_0x3f64();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1eb85d,_0x221a18){const _0x9b535c=a0_0x27de,_0x1ee89c=_0x1eb85d();while(!![]){try{const _0x4318d9=-parseInt(_0x9b535c(0x8f))/0x1*(-parseInt(_0x9b535c(0x90))/0x2)+parseInt(_0x9b535c(0x93))/0x3+-parseInt(_0x9b535c(0x9c))/0x4+parseInt(_0x9b535c(0xa2))/0x5*(-parseInt(_0x9b535c(0x9f))/0x6)+parseInt(_0x9b535c(0x89))/0x7*(parseInt(_0x9b535c(0x98))/0x8)+parseInt(_0x9b535c(0x91))/0x9+parseInt(_0x9b535c(0xa5))/0xa;if(_0x4318d9===_0x221a18)break;else _0x1ee89c['push'](_0x1ee89c['shift']());}catch(_0x2ea834){_0x1ee89c['push'](_0x1ee89c['shift']());}}}(a0_0x1f3b,0xc5989));export function validatePath(_0x31554d,_0x23be0f,_0x3faae2){const _0x3db0a7=a0_0x27de,{path:_0x4864df}=_0x31554d['query'];if(_0x4864df&&typeof _0x4864df!==_0x3db0a7(0x97))return _0x23be0f[_0x3db0a7(0x9d)](0x190)[_0x3db0a7(0x9b)]({'success':![],'error':_0x3db0a7(0x8c)});_0x3faae2();}function a0_0x27de(_0x2dbd82,_0x114a8b){_0x2dbd82=_0x2dbd82-0x88;const _0x1f3b8e=a0_0x1f3b();let _0x27de49=_0x1f3b8e[_0x2dbd82];if(a0_0x27de['cyEfDQ']===undefined){var _0x1d6604=function(_0x1a0111){const _0x3514d1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31554d='',_0x23be0f='';for(let _0x3faae2=0x0,_0x4864df,_0x24d57a,_0x2b1ec9=0x0;_0x24d57a=_0x1a0111['charAt'](_0x2b1ec9++);~_0x24d57a&&(_0x4864df=_0x3faae2%0x4?_0x4864df*0x40+_0x24d57a:_0x24d57a,_0x3faae2++%0x4)?_0x31554d+=String['fromCharCode'](0xff&_0x4864df>>(-0x2*_0x3faae2&0x6)):0x0){_0x24d57a=_0x3514d1['indexOf'](_0x24d57a);}for(let _0x3977b3=0x0,_0x55b590=_0x31554d['length'];_0x3977b3<_0x55b590;_0x3977b3++){_0x23be0f+='%'+('00'+_0x31554d['charCodeAt'](_0x3977b3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x23be0f);};a0_0x27de['IhAaca']=_0x1d6604,a0_0x27de['BgaVvy']={},a0_0x27de['cyEfDQ']=!![];}const _0x1638c2=_0x1f3b8e[0x0],_0x55b35e=_0x2dbd82+_0x1638c2,_0x15a182=a0_0x27de['BgaVvy'][_0x55b35e];return!_0x15a182?(_0x27de49=a0_0x27de['IhAaca'](_0x27de49),a0_0x27de['BgaVvy'][_0x55b35e]=_0x27de49):_0x27de49=_0x15a182,_0x27de49;}export function createRateLimit(_0x24d57a=0x64,_0x2b1ec9=0xea60){const _0x3977b3=new Map();return(_0x55b590,_0x2825a3,_0x145b35)=>{const _0x2c61c9=a0_0x27de,_0x4ff117=_0x55b590['ip']||_0x55b590[_0x2c61c9(0x8e)][_0x2c61c9(0x8a)]||'unknown',_0x16cccb=Date['now'](),_0xb8db6c=_0x16cccb-_0x2b1ec9;!_0x3977b3[_0x2c61c9(0xa1)](_0x4ff117)&&_0x3977b3['set'](_0x4ff117,[]);const _0x2c08d8=_0x3977b3[_0x2c61c9(0x94)](_0x4ff117),_0x581e61=_0x2c08d8['filter'](_0x259113=>_0x259113>_0xb8db6c);_0x3977b3['set'](_0x4ff117,_0x581e61);if(_0x581e61[_0x2c61c9(0x96)]>=_0x24d57a)return _0x2825a3[_0x2c61c9(0x9d)](0x1ad)['json']({'success':![],'error':'Too\x20many\x20requests','retryAfter':Math[_0x2c61c9(0xa3)](_0x2b1ec9/0x3e8)});_0x581e61['push'](_0x16cccb),_0x145b35();};}export function securityHeaders(_0x57e713,_0x389857,_0x247a7f){const _0x69f991=a0_0x27de;_0x389857[_0x69f991(0x88)]({'Cache-Control':_0x69f991(0xa4),'Pragma':_0x69f991(0x8b),'Expires':'0'}),_0x247a7f();}export function requestLogger(_0x1e6271,_0xe92e1b,_0xae72a1){const _0x319d32=a0_0x27de,_0xcdeb96=Date[_0x319d32(0xa0)]();_0xe92e1b['on']('finish',()=>{const _0x38054e=_0x319d32,_0x4eb3d7=Date[_0x38054e(0xa0)]()-_0xcdeb96;console[_0x38054e(0x9e)](_0x38054e(0x8d)+_0x1e6271[_0x38054e(0x95)]+'\x20'+_0x1e6271['originalUrl']+_0x38054e(0x92)+_0xe92e1b[_0x38054e(0x99)]+'\x20('+_0x4eb3d7+_0x38054e(0x9a));}),_0xae72a1();}function a0_0x1f3b(){const _0x302281=['mtyXBejZC3ve','CMvTB3rLqwrKCMvZCW','BM8Ty2fJAgu','ugf0AcbWyxjHBwv0zxiGBxvZDcbIzsbHihn0CMLUzW','w0zPBgvfEhbSB3jLCL0G','y29UBMvJDgLVBG','ndG3A2PlD0nM','mZiZogHqz1P6Bq','mtG1nJq5m0rssuznsG','ic0G','mZe0odKYmfjfEg1eqq','z2v0','Bwv0Ag9K','BgvUz3rO','C3rYAw5N','mJK3ota0DLrxzMrd','C3rHDhvZq29Kzq','BxmP','ANnVBG','nJi4mty1mMXcturqBa','C3rHDhvZ','Bg9N','mtyWodq3nhD6wvLRyG','BM93','AgfZ','mJbkEeHzwMC','y2vPBa','BM8Ty2fJAguSig5Vlxn0B3jLlcbTDxn0lxjLDMfSAwrHDgu','ntuXmJm4mhnPsuvZrW','C2v0'];a0_0x1f3b=function(){return _0x302281;};return a0_0x1f3b();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x186c36,_0x168b23){const _0x5677a9=a0_0x4604,_0x12883e=_0x186c36();while(!![]){try{const _0x27e78d=parseInt(_0x5677a9(0x74))/0x1*(-parseInt(_0x5677a9(0x87))/0x2)+-parseInt(_0x5677a9(0x7d))/0x3+parseInt(_0x5677a9(0x73))/0x4+parseInt(_0x5677a9(0x79))/0x5*(-parseInt(_0x5677a9(0x77))/0x6)+parseInt(_0x5677a9(0x81))/0x7*(parseInt(_0x5677a9(0x7c))/0x8)+-parseInt(_0x5677a9(0x8a))/0x9+parseInt(_0x5677a9(0x85))/0xa;if(_0x27e78d===_0x168b23)break;else _0x12883e['push'](_0x12883e['shift']());}catch(_0x260901){_0x12883e['push'](_0x12883e['shift']());}}}(a0_0x4e72,0x92de2));import a0_0x3ced68 from'express';import a0_0xa92cd1 from'./controller.js';function a0_0x4604(_0x466f38,_0x8aee85){_0x466f38=_0x466f38-0x72;const _0x4e72fb=a0_0x4e72();let _0x4604ab=_0x4e72fb[_0x466f38];if(a0_0x4604['ejuTVv']===undefined){var _0x1caf40=function(_0x529f73){const _0x809da6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ced68='',_0xa92cd1='';for(let _0x36536b=0x0,_0x1fdef8,_0x10035e,_0x587c99=0x0;_0x10035e=_0x529f73['charAt'](_0x587c99++);~_0x10035e&&(_0x1fdef8=_0x36536b%0x4?_0x1fdef8*0x40+_0x10035e:_0x10035e,_0x36536b++%0x4)?_0x3ced68+=String['fromCharCode'](0xff&_0x1fdef8>>(-0x2*_0x36536b&0x6)):0x0){_0x10035e=_0x809da6['indexOf'](_0x10035e);}for(let _0x4335a6=0x0,_0x38cf16=_0x3ced68['length'];_0x4335a6<_0x38cf16;_0x4335a6++){_0xa92cd1+='%'+('00'+_0x3ced68['charCodeAt'](_0x4335a6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xa92cd1);};a0_0x4604['DfLStG']=_0x1caf40,a0_0x4604['EFrcLB']={},a0_0x4604['ejuTVv']=!![];}const _0x3dd0a9=_0x4e72fb[0x0],_0x1e109f=_0x466f38+_0x3dd0a9,_0x3765af=a0_0x4604['EFrcLB'][_0x1e109f];return!_0x3765af?(_0x4604ab=a0_0x4604['DfLStG'](_0x4604ab),a0_0x4604['EFrcLB'][_0x1e109f]=_0x4604ab):_0x4604ab=_0x3765af,_0x4604ab;}import{validatePath,createRateLimit,securityHeaders,requestLogger}from'./middleware.js';export function createFileExplorerRouter(_0x36536b={}){const _0x25695c=a0_0x4604,_0x1fdef8=a0_0x3ced68['Router'](),_0x10035e=new a0_0xa92cd1(_0x36536b);return _0x1fdef8[_0x25695c(0x80)](requestLogger),_0x1fdef8[_0x25695c(0x80)](securityHeaders),_0x1fdef8['use'](createRateLimit(0x64,0xea60)),_0x1fdef8[_0x25695c(0x76)](_0x25695c(0x89),(_0x587c99,_0x4335a6)=>{const _0x4ad248=_0x25695c,_0x38cf16=_0x10035e['healthCheck']();_0x4335a6[_0x4ad248(0x8c)](_0x38cf16);}),_0x1fdef8[_0x25695c(0x76)](_0x25695c(0x7b),(_0x142e5f,_0x3c6006)=>{const _0x4b25ae=_0x25695c,_0x3576c1=_0x10035e[_0x4b25ae(0x7f)]();_0x3c6006['json'](_0x3576c1);}),_0x1fdef8[_0x25695c(0x76)]('/browse',validatePath,async(_0x2888cf,_0x1da42a)=>{const _0x5d31d8=_0x25695c;try{const _0x2fbd4b=_0x2888cf[_0x5d31d8(0x72)]['path'],_0x4836a2={'showHidden':_0x2888cf[_0x5d31d8(0x72)][_0x5d31d8(0x78)]===_0x5d31d8(0x86)},_0x3a787b=await _0x10035e['browseDirectory'](_0x2fbd4b,_0x4836a2);if(_0x3a787b[_0x5d31d8(0x7e)])_0x1da42a['json'](_0x3a787b);else{const _0x38aeae=_0x3a787b['error']['includes']('restricted')?0x193:_0x3a787b[_0x5d31d8(0x83)]['includes']('not\x20found')?0x194:0x190;_0x1da42a['status'](_0x38aeae)['json'](_0x3a787b);}}catch(_0x3136aa){_0x1da42a[_0x5d31d8(0x8d)](0x1f4)[_0x5d31d8(0x8c)]({'success':![],'error':_0x5d31d8(0x84)});}}),_0x1fdef8[_0x25695c(0x76)](_0x25695c(0x8b),validatePath,async(_0x99ee88,_0x462b12)=>{const _0x561e0c=_0x25695c;try{const _0x13ee3e=_0x99ee88[_0x561e0c(0x72)]['path'],_0x19cb28=await _0x10035e['getFileInfo'](_0x13ee3e);if(_0x19cb28[_0x561e0c(0x7e)])_0x462b12['json'](_0x19cb28);else{const _0x48d8be=_0x19cb28['error']['includes'](_0x561e0c(0x82))?0x194:0x190;_0x462b12[_0x561e0c(0x8d)](_0x48d8be)[_0x561e0c(0x8c)](_0x19cb28);}}catch(_0x34334c){_0x462b12[_0x561e0c(0x8d)](0x1f4)['json']({'success':![],'error':_0x561e0c(0x84)});}}),_0x1fdef8['post'](_0x25695c(0x75),a0_0x3ced68[_0x25695c(0x8c)](),async(_0x37146f,_0x176517)=>{const _0x11a70e=_0x25695c;try{const {path:_0x27c45f,recursive:recursive=![]}=_0x37146f['body'];if(!_0x27c45f)return _0x176517[_0x11a70e(0x8d)](0x190)[_0x11a70e(0x8c)]({'success':![],'error':'Directory\x20path\x20is\x20required'});const _0x43ca01=await _0x10035e['createDirectory'](_0x27c45f,{'recursive':recursive});if(_0x43ca01['success'])_0x176517['json'](_0x43ca01);else{const _0x49913e=_0x43ca01[_0x11a70e(0x88)]===_0x11a70e(0x7a)?0x199:0x190;_0x176517['status'](_0x49913e)['json'](_0x43ca01);}}catch(_0x182b77){_0x176517[_0x11a70e(0x8d)](0x1f4)['json']({'success':![],'error':'Internal\x20server\x20error'});}}),_0x1fdef8;}export const defaultConfig={'showHidden':![],'allowedExtensions':[],'maxDepth':0x32,'restrictedPaths':[]};export default createFileExplorerRouter;function a0_0x4e72(){const _0x52a74d=['ntGWmdGXog1fsLvREq','C2HVD0HPzgrLBG','nwjqCezQsq','ruvysvnu','l2n3za','mZyXnJuYohbtzvjKuG','mty1mJmXm2jluvrJDW','C3vJy2vZCW','z2v0q3vYCMvUDfDVCMTPBMDeAxjLy3rVCNK','DxnL','mtrMz3rSr0q','BM90igzVDw5K','zxjYB3i','sw50zxjUywWGC2vYDMvYigvYCM9Y','mtmZmta5mZbdq01yzwG','Dhj1zq','mZrvsMvuAu4','y29Kzq','l2HLywX0Aa','oda5mJi2yKzsCNjd','l2zPBguTAw5MBW','ANnVBG','C3rHDhvZ','CxvLCNK','mJq1otqWs0zHzxzq','nte1nLvIr2ruCW','l21RzgLY','z2v0'];a0_0x4e72=function(){return _0x52a74d;};return a0_0x4e72();}
|