apt-mcp-agent-setup 1.2.35 → 1.2.37

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.
@@ -1 +1 @@
1
- const _0x20a97d=_0x4397;(function(_0x4080ab,_0x41b880){const _0x14cb6c=_0x4397,_0x6243d3=_0x4080ab();while(!![]){try{const _0x3033b7=-parseInt(_0x14cb6c(0x11e))/0x1+-parseInt(_0x14cb6c(0x11b))/0x2+-parseInt(_0x14cb6c(0x10e))/0x3+-parseInt(_0x14cb6c(0x117))/0x4+parseInt(_0x14cb6c(0x11d))/0x5*(-parseInt(_0x14cb6c(0x113))/0x6)+-parseInt(_0x14cb6c(0x119))/0x7+-parseInt(_0x14cb6c(0x11f))/0x8*(-parseInt(_0x14cb6c(0x112))/0x9);if(_0x3033b7===_0x41b880)break;else _0x6243d3['push'](_0x6243d3['shift']());}catch(_0x309f86){_0x6243d3['push'](_0x6243d3['shift']());}}}(_0x46c7,0xaf458));const TOOL_MAPPING=require(_0x20a97d(0x116)),ORIGINAL_TO_EXPOSED={};for(const [exposed,info]of Object['entries'](TOOL_MAPPING)){ORIGINAL_TO_EXPOSED[info[_0x20a97d(0x114)]+':'+info[_0x20a97d(0x11c)]]=exposed;}function translateToolList(_0xe0c934,_0x1a3aa5=null){const _0x186eb0=_0x20a97d,_0x1e9bd1=[];for(const _0x1a7f5a of _0xe0c934){let _0x25079c=null;if(_0x1a3aa5)_0x25079c=ORIGINAL_TO_EXPOSED[_0x1a3aa5+':'+_0x1a7f5a[_0x186eb0(0x110)]];else for(const [_0x544824,_0x2efd36]of Object[_0x186eb0(0x111)](TOOL_MAPPING)){if(_0x2efd36[_0x186eb0(0x11c)]===_0x1a7f5a['name']){_0x25079c=_0x544824;break;}}if(_0x25079c){const _0x348173={..._0x1a7f5a};_0x348173['name']=_0x25079c,_0x1e9bd1[_0x186eb0(0x118)](_0x348173);}}return _0x1e9bd1;}function _0x4397(_0x319207,_0x5bacf4){_0x319207=_0x319207-0x10e;const _0x46c7aa=_0x46c7();let _0x439704=_0x46c7aa[_0x319207];if(_0x4397['KZBdfr']===undefined){var _0x10bb17=function(_0x2132d7){const _0x2527c9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d3f1c='',_0x478292='';for(let _0xe0c934=0x0,_0x1a3aa5,_0x1e9bd1,_0x1a7f5a=0x0;_0x1e9bd1=_0x2132d7['charAt'](_0x1a7f5a++);~_0x1e9bd1&&(_0x1a3aa5=_0xe0c934%0x4?_0x1a3aa5*0x40+_0x1e9bd1:_0x1e9bd1,_0xe0c934++%0x4)?_0x2d3f1c+=String['fromCharCode'](0xff&_0x1a3aa5>>(-0x2*_0xe0c934&0x6)):0x0){_0x1e9bd1=_0x2527c9['indexOf'](_0x1e9bd1);}for(let _0x25079c=0x0,_0x544824=_0x2d3f1c['length'];_0x25079c<_0x544824;_0x25079c++){_0x478292+='%'+('00'+_0x2d3f1c['charCodeAt'](_0x25079c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x478292);};_0x4397['iQseUH']=_0x10bb17,_0x4397['GOtIem']={},_0x4397['KZBdfr']=!![];}const _0x3296ca=_0x46c7aa[0x0],_0x4e438a=_0x319207+_0x3296ca,_0x55da2f=_0x4397['GOtIem'][_0x4e438a];return!_0x55da2f?(_0x439704=_0x4397['iQseUH'](_0x439704),_0x4397['GOtIem'][_0x4e438a]=_0x439704):_0x439704=_0x55da2f,_0x439704;}function mapExposedToOriginal(_0x22eeee){return TOOL_MAPPING[_0x22eeee]||null;}function _0x46c7(){const _0x1fb652=['zw50CMLLCW','mZzRBuveq2S','mtjYt1fkt1K','yMfJA2vUza','ve9ptf9nqvbqsu5h','lI9YB3v0zxiUy29UzMLNlMPZ','mJm5mdyYmgTiuuHbEG','ChvZAa','otC4nteXohnszhHcAa','BwfWrxHWB3nLzfrVt3jPz2LUywW','mJyXndq5nK5SEM9VyG','B3jPz2LUywXoyw1L','mZaYndK4nxH5qxLpAq','mti5nte0nw9mAxP1yG','mtm1nJCYodbqqwTot3G','nZCZndm2u3zUBeTm','DhjHBNnSyxrLvg9VBeXPC3q','BMfTzq'];_0x46c7=function(){return _0x1fb652;};return _0x46c7();}const _0x478292={};_0x478292[_0x20a97d(0x115)]=TOOL_MAPPING,_0x478292[_0x20a97d(0x10f)]=translateToolList,_0x478292[_0x20a97d(0x11a)]=mapExposedToOriginal,module['exports']=_0x478292;
1
+ const _0x74ab1f=_0x22f0;function _0x22f0(_0x53fa7a,_0x4bc85b){_0x53fa7a=_0x53fa7a-0xb6;const _0x1e9ebd=_0x1e9e();let _0x22f054=_0x1e9ebd[_0x53fa7a];if(_0x22f0['lyUfyx']===undefined){var _0x2ae4eb=function(_0x139dcb){const _0x2300fa='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1f54d6='',_0x3b29da='';for(let _0x163b4b=0x0,_0x250991,_0x40bdfa,_0x3c612b=0x0;_0x40bdfa=_0x139dcb['charAt'](_0x3c612b++);~_0x40bdfa&&(_0x250991=_0x163b4b%0x4?_0x250991*0x40+_0x40bdfa:_0x40bdfa,_0x163b4b++%0x4)?_0x1f54d6+=String['fromCharCode'](0xff&_0x250991>>(-0x2*_0x163b4b&0x6)):0x0){_0x40bdfa=_0x2300fa['indexOf'](_0x40bdfa);}for(let _0x2a2a49=0x0,_0x43782e=_0x1f54d6['length'];_0x2a2a49<_0x43782e;_0x2a2a49++){_0x3b29da+='%'+('00'+_0x1f54d6['charCodeAt'](_0x2a2a49)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b29da);};_0x22f0['OKkRib']=_0x2ae4eb,_0x22f0['kRcCpW']={},_0x22f0['lyUfyx']=!![];}const _0x1a7f0c=_0x1e9ebd[0x0],_0x5258fc=_0x53fa7a+_0x1a7f0c,_0xb55a32=_0x22f0['kRcCpW'][_0x5258fc];return!_0xb55a32?(_0x22f054=_0x22f0['OKkRib'](_0x22f054),_0x22f0['kRcCpW'][_0x5258fc]=_0x22f054):_0x22f054=_0xb55a32,_0x22f054;}(function(_0x3701fb,_0x32fc71){const _0x453947=_0x22f0,_0x39ecb6=_0x3701fb();while(!![]){try{const _0x347475=-parseInt(_0x453947(0xc4))/0x1*(-parseInt(_0x453947(0xb9))/0x2)+parseInt(_0x453947(0xc0))/0x3+parseInt(_0x453947(0xbc))/0x4*(-parseInt(_0x453947(0xc6))/0x5)+-parseInt(_0x453947(0xbf))/0x6+parseInt(_0x453947(0xc5))/0x7+parseInt(_0x453947(0xbb))/0x8+-parseInt(_0x453947(0xbd))/0x9;if(_0x347475===_0x32fc71)break;else _0x39ecb6['push'](_0x39ecb6['shift']());}catch(_0x41b796){_0x39ecb6['push'](_0x39ecb6['shift']());}}}(_0x1e9e,0x346fe));function _0x1e9e(){const _0x2d852c=['mZmZnJq3mNfTywr3qq','mtC0mti0zursue14','nJa4ntKYnNLPDwTIEG','DhjHBNnSyxrLvg9VBeXPC3q','otK4mZK0r0rSy05q','mJC3mJG0EurpBwfT','ChvZAa','BMfTzq','zw50CMLLCW','mu90CMr6yG','mJu4ntC5m3n3r1nWrq','mtbVvfLeB04','B3jPz2LUywXoyw1L','lI9YB3v0zxiUy29UzMLNlMPZ','yMfJA2vUza','ntmXmtqYu2niuLvg','zxHWB3j0CW'];_0x1e9e=function(){return _0x2d852c;};return _0x1e9e();}const TOOL_MAPPING=require(_0x74ab1f(0xb7)),ORIGINAL_TO_EXPOSED={};for(const [exposed,info]of Object[_0x74ab1f(0xc3)](TOOL_MAPPING)){ORIGINAL_TO_EXPOSED[info[_0x74ab1f(0xb8)]+':'+info[_0x74ab1f(0xb6)]]=exposed;}function translateToolList(_0x163b4b,_0x250991=null){const _0x406d0c=_0x74ab1f,_0x40bdfa=[];for(const _0x3c612b of _0x163b4b){let _0x2a2a49=null;if(_0x250991)_0x2a2a49=ORIGINAL_TO_EXPOSED[_0x250991+':'+_0x3c612b[_0x406d0c(0xc2)]];else for(const [_0x43782e,_0x4fe01f]of Object[_0x406d0c(0xc3)](TOOL_MAPPING)){if(_0x4fe01f[_0x406d0c(0xb6)]===_0x3c612b[_0x406d0c(0xc2)]){_0x2a2a49=_0x43782e;break;}}if(_0x2a2a49){const _0xaceb26={..._0x3c612b};_0xaceb26[_0x406d0c(0xc2)]=_0x2a2a49,_0x40bdfa[_0x406d0c(0xc1)](_0xaceb26);}}return _0x40bdfa;}function mapExposedToOriginal(_0x261327){return TOOL_MAPPING[_0x261327]||null;}const _0x3b29da={};_0x3b29da['TOOL_MAPPING']=TOOL_MAPPING,_0x3b29da[_0x74ab1f(0xbe)]=translateToolList,_0x3b29da['mapExposedToOriginal']=mapExposedToOriginal,module[_0x74ab1f(0xba)]=_0x3b29da;
@@ -1 +1 @@
1
- function _0x45dc(){const _0x4abbf0=['ig1VzgLMAwvKlIbfEgL0Aw5NlG','zxHWB3j0CW','C3bSAxq','C3rKAw5mAxn0zw5LCG','CgfYyw1Z','CM9VDfvYAq','l2HLyxj0yMvHDa','BwnWx2fNzw50x2HLywX0Aa','yxb0lw1JCc1Hz2vUDa','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOG','Cg9W','Cgf1C2u','y2fWywjPBgL0AwvZ','Agv4','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGAw50zwDYAxr5lw1HBMLMzxn0lMPZB24GBwLZC2LUzY4GrxHPDgLUzY4','rMfPBgvKihrVihn0yxj0ifbYB3H5u2vYDMvYoG','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGsw52ywXPzcbTyw5PzMvZDcbMB3jTyxqUiev4AxrPBMCU','CMvXDwLYzwq','lI4VBgLJzw5Zzs9MAw5NzxjWCMLUDc5QCW','zgvZDhjVEq','zgvZy3jPChrPB24','ihrVia','Dg9VBhmVBgLZDa','vg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','yMfJA2vUza','D2LUmZi','ihrVB2XZigf2ywLSywjSzs4GqMfJA2vUzhm6ia','rMfPBgvKihrVihf1zxj5ihrVB2WGBgLZDdOG','z2v0qMfJA2vUzeHLywX0Afn1Bw1HCNK','Cg9YDa','Aw5PDgLHBgL6zq','Dw5RBM93BG','w01ducbbz2vUDf0GugvYAw9KAwmGAgvHCNrIzwf0igvYCM9YoG','zM9YD2fYzfjLCxvLC3q','C3rYAw5N','Dg9VBhmVy2fSBa','C2LNBMf0DxjL','lIbdB250Aw51Aw5NihDPDgGGy2fJAgvKihrVA2vUlG','zw50CMLLCW','BM9YBwfSAxPL','D3jPDgu','y3jLyxrLsgfZAa','C3rHCNq','y2HPBgq','C3rKAw4','yM9KEq','zxHW','vgfYz2v0igjHy2TLBMqG','B2jQzwn0','BM93','vgHLig9WzxjHDgLVBIb3yxmGywjVCNrLzc4','ndiZmJC4mtnOqufNqLK','CMvTB3zLtgLZDgvUzxi','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGrMfPBgvKihrVihbHCNnLigLUDgvNCML0Es1Tyw5PzMvZDc5QC29UlIbfEgL0Aw5NlG','mI4W','y29Kzq','D3jPDgvuB0nSAwvUDa','AgvHCNrIzwf0sw50zxj2ywW','w01ducbbz2vUDf0GDg9VBhmVBgLZDdOG','uMv0DxjUCYb0AguGAgvHBhrOihn0yxr1CYbVzIbHBgWGtunqiefNzw50igjHy2TLBMqGC2vYDMLJzxmUifvZzsb0AgLZihrVigrPywDUB3nLignVBM5Ly3rPDML0EsbPC3n1zxmU','C2vUzfjLCxvLC3q','w01ducbbz2vUDf0GrMfPBgvKihrVigLUAxrPywXPEMuGC2vYDMLJzsa','C3rKB3v0','zgLNzxn0','Cgf0Ag5HBwu','Dg9ju09tDhjPBMC','ywrTAw4','CMvHBhbHDgHtEw5J','C3rHDfn5BMm','DxnLCG','DhLWzq','ChjVDg9JB2W','yNL0zuXLBMD0Aa','C2LNBMfS','q29UDgvUDc1mzw5NDgG','BMfTzq','mJeXnta3mNHmqwXdsa','ChvIBgLJs2v5','CgXHDgzVCM0','m3rqzfH2EG','y2XPzw50qNvMzMvY','mtmYntbkCwHbCLe','AxneAxjLy3rVCNK','C3rHDhvZ','Aw5WDxrty2HLBwe','ywXS','Dg9tDhjPBMC','CMvHC29U','zMLSzxm','Bg9HzeXPy2vUC2vlzxK','C2vHCMnO','y3DK','CgvYzM9YBuHLyxj0yMvHDa','CNvUBMLUzW','ue9tva','w01ducbbz2vUDf0GrMfPBgvKihrVihbHCNnLiePtt04TuLbdig1LC3nHz2uGzNjVBsbJBgLLBNq6','C3rHCNrZv2L0Aa','nty4BNHTENbO','w01ducbbz2vUDf0Gu3DPDgnOAw5NihbYB2PLy3qGCgf0AcbMCM9Tia','lI4VBgLJzw5Zzs92zxjPzNKUANm','zgLYBMfTzq','q29UDgvUDc1uExbL','BwvZC2fNzq','CMv0CNLPBMC','igLZig5VDcbYDw5UAw5N','lIbdB250ywn0ihn1ChbVCNqGyxqGC3vWCg9YDebHBMHKAc5PBY4GrxHPDgLUzY4','w01ducbbz2vUDf0GtgLJzw5ZzsbLEhbPCMvKig9Uia','DMfSDwvZ','zMLSztOVlW','Dgv4Da','Dg9Rzw4','lI9IywnRzw5KCY5QCW','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGDMvYAwzPy2f0Aw9UigzHAwXLzdOG','BwfZDgvYlNb1yMXPyY5Wzw0','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGDMvYAwzPzwqGC3vJy2vZC2z1BgX5igzVCIb1C2vYoIa','CMvHzezPBgvtEw5J','zgLZCgXHEu5HBwu','zgv2AwnLswq','CM9VDfbHDgG','lMfUAgrO','mte5mteYrufyq2Xu','zMXHDa','ChjVAMvJDfbHDgG','DhjPBq','C3rVCa','yMfJA2vUzhm','ywjVCNq','DxrMoa','AgfUzgXLq2XPzw50rgf0yq','AM9PBG','zMLSztO','CMvZDwX0','zgf0yq','DMfSAwq','tw96AwXSys81lJaGkgnVBxbHDgLIBgu7ie5VzguV','C2HHmJu2','DMvYAwz5','lI4VlI4','BwfW','D3jPDgvfCNjVCG','ChjVDg9JB2XwzxjZAw9U','C3rHDhvZq29Kzq','Aw50zwDYAxr5twfUAwzLC3rqyxrO','BM9Uzq','C2XPy2u','ufjprfvdveLptL9qvujmsunFs0vz','zxHPC3rZu3LUyW','C3rYAw5NAwz5','yMfZzty0DxjS','lMfNzw50CW','CMvXDwvZDa','BgLZDenOyw5Nzwq','ChvZAa','ANnVBG','w01ducbbz2vUDf0GDg9VBhmVBgLZDcbYzxf1zxn0igzHAwXLzcbMB3iGC2vYDMLJzsa','CMvWBgfJzq','AgvHzgvYCW','CMvZB2X2zq','Ahr0Chm6','Ahr0Chm','mJyZmdmWq0DuqK1e','Ahr0Chm6lY9Hz2vUDgTPDc5HBhbOyxrLy2HZlMfPl2fWAq','DMvYC2LVBG','zw5K','BgvUz3rO','mtiZwezJAxjk','tgLJzw5ZzsbLEhbPCMvK','Bwv0Ag9K','ms4WlJa','zxHPDa','y3jHC2HLza','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGAgfZigjLzw4GCMv2B2TLzc4GrxHPDgLUzY4','BgLJzw5Zzs5RzxK','BwfPBG','D3jPDgvgAwXLu3LUyW','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGu2LNBMf0DxjLihzLCMLMAwnHDgLVBIbMywLSzwqUiev4AxrPBMCU','ndG2otu2mgjeyxPMua','Ag9TzwrPCG','ANnVBNjWyW','w01ducbbz2vUDf0Gu3rHCNrPBMCGC2vYDMvYigf0ia','zxjYB3i','ouDLqxDKua','Ag9ZDg5HBwu','C3rHDgu','y2f0y2G','zNjVBq','nte0nti0rK16C2LS','CgfYC2u','Ahr0Ca','BgLJzw5ZzuTLEq'];_0x45dc=function(){return _0x4abbf0;};return _0x45dc();}const _0x33d2b9=_0xf6e4;(function(_0x38cf78,_0x19cf6d){const _0x220ae2=_0xf6e4,_0xa0b986=_0x38cf78();while(!![]){try{const _0x4831ac=parseInt(_0x220ae2(0x226))/0x1*(-parseInt(_0x220ae2(0x290))/0x2)+parseInt(_0x220ae2(0x28e))/0x3*(parseInt(_0x220ae2(0x23b))/0x4)+-parseInt(_0x220ae2(0x231))/0x5+-parseInt(_0x220ae2(0x28b))/0x6+parseInt(_0x220ae2(0x1f9))/0x7*(-parseInt(_0x220ae2(0x2a0))/0x8)+parseInt(_0x220ae2(0x236))/0x9*(parseInt(_0x220ae2(0x221))/0xa)+parseInt(_0x220ae2(0x272))/0xb;if(_0x4831ac===_0x19cf6d)break;else _0xa0b986['push'](_0xa0b986['shift']());}catch(_0x3d2158){_0xa0b986['push'](_0xa0b986['shift']());}}}(_0x45dc,0x9f8aa));const fs=require('fs'),path=require('path'),os=require('os'),http=require(_0x33d2b9(0x23d)),https=require(_0x33d2b9(0x220)),{verifyLicense}=require(_0x33d2b9(0x2a2)),{spawnBackends}=require(_0x33d2b9(0x1f0)),{translateToolList,mapExposedToOriginal}=require('./router.js');function uriToPath(_0x4ed037){const _0x2fed29=_0x33d2b9;if(!_0x4ed037)return null;try{const _0x263dcb=new URL(_0x4ed037);if(_0x263dcb['protocol']===_0x2fed29(0x203)){let _0x576d10=decodeURIComponent(_0x263dcb[_0x2fed29(0x27f)]);return process[_0x2fed29(0x28d)]===_0x2fed29(0x258)&&_0x576d10['startsWith']('/')&&_0x576d10[_0x2fed29(0x211)](0x2,0x3)===':'&&(_0x576d10=_0x576d10[_0x2fed29(0x211)](0x1)),path[_0x2fed29(0x266)](_0x576d10);}}catch(_0x23ffb1){if(_0x4ed037['startsWith'](_0x2fed29(0x2ab))){let _0x1b3901=_0x4ed037[_0x2fed29(0x211)](0x7);return process[_0x2fed29(0x28d)]==='win32'&&_0x1b3901[_0x2fed29(0x29f)]('/')&&_0x1b3901[_0x2fed29(0x211)](0x2,0x3)===':'&&(_0x1b3901=_0x1b3901[_0x2fed29(0x211)](0x1)),path[_0x2fed29(0x266)](decodeURIComponent(_0x1b3901));}}return null;}function findProjectRoot(_0x48c4e4){const _0x34b8ea=_0x33d2b9;if(!_0x48c4e4)return _0x48c4e4;let _0x4ef421=_0x48c4e4;while(_0x4ef421){const _0x3cc3b6=path['join'](_0x4ef421,_0x34b8ea(0x216));if(fs['existsSync'](_0x3cc3b6)&&fs[_0x34b8ea(0x283)](_0x3cc3b6)[_0x34b8ea(0x291)]())return _0x4ef421;const _0x231ad6=path['dirname'](_0x4ef421);if(_0x231ad6===_0x4ef421)break;_0x4ef421=_0x231ad6;}return _0x48c4e4;}function _0xf6e4(_0x25aeb0,_0x359d40){_0x25aeb0=_0x25aeb0-0x1f0;const _0x45dc5c=_0x45dc();let _0xf6e4ef=_0x45dc5c[_0x25aeb0];if(_0xf6e4['AxaRnT']===undefined){var _0x1b5b7a=function(_0x40f27e){const _0xbfd7b7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x346d9e='',_0x2406dc='';for(let _0x242cac=0x0,_0x2bef73,_0x5916ea,_0x33cc4c=0x0;_0x5916ea=_0x40f27e['charAt'](_0x33cc4c++);~_0x5916ea&&(_0x2bef73=_0x242cac%0x4?_0x2bef73*0x40+_0x5916ea:_0x5916ea,_0x242cac++%0x4)?_0x346d9e+=String['fromCharCode'](0xff&_0x2bef73>>(-0x2*_0x242cac&0x6)):0x0){_0x5916ea=_0xbfd7b7['indexOf'](_0x5916ea);}for(let _0x42839a=0x0,_0x50c45a=_0x346d9e['length'];_0x42839a<_0x50c45a;_0x42839a++){_0x2406dc+='%'+('00'+_0x346d9e['charCodeAt'](_0x42839a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2406dc);};_0xf6e4['udANYs']=_0x1b5b7a,_0xf6e4['WREmpM']={},_0xf6e4['AxaRnT']=!![];}const _0x65494a=_0x45dc5c[0x0],_0x53b50d=_0x25aeb0+_0x65494a,_0x39fbe2=_0xf6e4['WREmpM'][_0x53b50d];return!_0x39fbe2?(_0xf6e4ef=_0xf6e4['udANYs'](_0xf6e4ef),_0xf6e4['WREmpM'][_0x53b50d]=_0xf6e4ef):_0xf6e4ef=_0x39fbe2,_0xf6e4ef;}function httpRequest(_0x26226d,_0x454c3a={}){return new Promise((_0x592717,_0x58a13b)=>{const _0x3b8610=_0xf6e4;try{const _0x2857ea=new URL(_0x26226d),_0x343b48=_0x2857ea[_0x3b8610(0x286)]===_0x3b8610(0x21f)?https:http,_0x264e8e={'User-Agent':_0x3b8610(0x207)+process[_0x3b8610(0x223)]+')',..._0x454c3a[_0x3b8610(0x21d)]},_0x90e416=_0x264e8e;if(_0x454c3a['body']){const _0x3bd938=typeof _0x454c3a[_0x3b8610(0x26c)]===_0x3b8610(0x261)?_0x454c3a[_0x3b8610(0x26c)]:JSON[_0x3b8610(0x214)](_0x454c3a[_0x3b8610(0x26c)]);!_0x90e416[_0x3b8610(0x289)]&&!_0x90e416['content-length']&&(_0x90e416[_0x3b8610(0x289)]=Buffer[_0x3b8610(0x287)](_0x3bd938));}const _0x40a288={};_0x40a288['method']=_0x454c3a[_0x3b8610(0x228)]||'GET',_0x40a288[_0x3b8610(0x237)]=_0x2857ea[_0x3b8610(0x237)],_0x40a288[_0x3b8610(0x25c)]=_0x2857ea['port']||(_0x2857ea[_0x3b8610(0x286)]===_0x3b8610(0x21f)?0x1bb:0x50),_0x40a288['path']=_0x2857ea['pathname']+_0x2857ea[_0x3b8610(0x299)],_0x40a288['headers']=_0x90e416;const _0x9070b9=_0x40a288,_0xd7ebd4=_0x343b48[_0x3b8610(0x217)](_0x9070b9,_0x824917=>{const _0x1c048c=_0x3b8610;let _0x1e6bff='';_0x824917['on'](_0x1c048c(0x205),_0x197676=>{_0x1e6bff+=_0x197676;}),_0x824917['on'](_0x1c048c(0x224),()=>{const _0xa037d6=_0x1c048c;_0x592717({'ok':_0x824917[_0xa037d6(0x20e)]>=0xc8&&_0x824917['statusCode']<0x12c,'status':_0x824917[_0xa037d6(0x20e)],'json':async()=>JSON['parse'](_0x1e6bff),'text':async()=>_0x1e6bff});});});_0xd7ebd4['on']('error',_0x5f0a37=>{_0x58a13b(_0x5f0a37);}),_0x454c3a['signal']&&(_0x454c3a[_0x3b8610(0x288)]['aborted']?_0xd7ebd4[_0x3b8610(0x252)](new Error(_0x3b8610(0x271))):_0x454c3a['signal']['addEventListener'](_0x3b8610(0x1ff),()=>{const _0x3be2a4=_0x3b8610;_0xd7ebd4[_0x3be2a4(0x252)](new Error('The\x20operation\x20was\x20aborted.'));})),_0x454c3a[_0x3b8610(0x26c)]&&_0xd7ebd4[_0x3b8610(0x267)](_0x454c3a[_0x3b8610(0x26c)]),_0xd7ebd4[_0x3b8610(0x224)]();}catch(_0x4f02d6){_0x58a13b(_0x4f02d6);}});}class ProxyServer{constructor(_0x3aaefa={}){const _0x1522aa=_0x33d2b9;let _0x5414c1=_0x3aaefa[_0x1522aa(0x1fb)]||process[_0x1522aa(0x29a)]();try{_0x5414c1=fs[_0x1522aa(0x282)](_0x5414c1);}catch(_0xc7326){_0x5414c1=path[_0x1522aa(0x21e)](_0x5414c1);}_0x5414c1=findProjectRoot(_0x5414c1),this[_0x1522aa(0x1fb)]=_0x5414c1,this['licenseKey']=_0x3aaefa[_0x1522aa(0x23e)]||this[_0x1522aa(0x298)](),this[_0x1522aa(0x1f6)]=_0x3aaefa[_0x1522aa(0x1f6)],this[_0x1522aa(0x28c)]=_0x3aaefa[_0x1522aa(0x28c)]||_0x3aaefa['masterSecret'],this[_0x1522aa(0x1fe)]=null,this[_0x1522aa(0x28f)]='',this[_0x1522aa(0x29c)]=![],this[_0x1522aa(0x27d)]=_0x3aaefa['stdout']||process[_0x1522aa(0x27d)],this[_0x1522aa(0x20f)]=_0x3aaefa[_0x1522aa(0x20f)]||path[_0x1522aa(0x202)](__dirname,_0x1522aa(0x20a),'integrity-manifest.json');}['loadLicenseKey'](){const _0x1a62be=_0x33d2b9,_0x3a46c2=path[_0x1a62be(0x202)](os[_0x1a62be(0x232)](),_0x1a62be(0x1f8),_0x1a62be(0x22d));if(fs[_0x1a62be(0x213)](_0x3a46c2))return fs[_0x1a62be(0x1f4)](_0x3a46c2,_0x1a62be(0x200))[_0x1a62be(0x1fc)]();return null;}async[_0x33d2b9(0x29b)](){const _0x145d1d=_0x33d2b9,_0x4574ff=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(_0x4574ff||!this[_0x145d1d(0x23e)])return;const _0x4d3c1e=this[_0x145d1d(0x23e)]['split']('.');if(_0x4d3c1e[_0x145d1d(0x225)]!==0x3)return;let _0x46765f;try{_0x46765f=JSON[_0x145d1d(0x23c)](Buffer[_0x145d1d(0x23a)](_0x4d3c1e[0x1],_0x145d1d(0x215))[_0x145d1d(0x295)]('utf8'));}catch(_0x4a4047){return;}if(!_0x46765f||!_0x46765f[_0x145d1d(0x26d)])return;const _0x10236e=0x6*0x18*0xe10*0x3e8,_0x42f473=_0x46765f[_0x145d1d(0x26d)]-Date[_0x145d1d(0x270)]();if(_0x42f473<_0x10236e){console['error']('[MCP\x20Agent]\x20Heartbeat\x20check:\x20token\x20has\x20less\x20than\x206\x20days\x20remaining.\x20Refreshing...');const _0x5b4425=process.env.MCP_ACTIVATION_URL||_0x145d1d(0x222),_0x927cdf=_0x5b4425+_0x145d1d(0x245),_0x3dd500=new AbortController(),_0x4a95a9=setTimeout(()=>_0x3dd500[_0x145d1d(0x1ff)](),0x1388);try{const _0x1c10c0={};_0x1c10c0[_0x145d1d(0x2a4)]='application/json';const _0x43b6d0={};_0x43b6d0['token']=this[_0x145d1d(0x23e)];const _0x5f39c0=await httpRequest(_0x927cdf,{'method':_0x145d1d(0x29d),'headers':_0x1c10c0,'body':JSON['stringify'](_0x43b6d0),'signal':_0x3dd500['signal']});clearTimeout(_0x4a95a9);if(_0x5f39c0[_0x145d1d(0x292)]===0x193){console['error'](_0x145d1d(0x22c)),process[_0x145d1d(0x22a)](0x1);return;}if(_0x5f39c0[_0x145d1d(0x292)]===0x191){console[_0x145d1d(0x235)]('[MCP\x20Agent]\x20License\x20key\x20expired\x20or\x20invalid.\x20Exiting.'),process['exit'](0x1);return;}if(!_0x5f39c0['ok']){console[_0x145d1d(0x235)]('[MCP\x20Agent]\x20Heartbeat\x20refresh\x20failed:\x20Server\x20returned\x20'+_0x5f39c0[_0x145d1d(0x292)]+_0x145d1d(0x264));return;}const _0x169e29=await _0x5f39c0[_0x145d1d(0x21a)]();if(_0x169e29&&_0x169e29[_0x145d1d(0x2ad)]){this[_0x145d1d(0x23e)]=_0x169e29[_0x145d1d(0x2ad)];const _0x3f7971=path[_0x145d1d(0x202)](os[_0x145d1d(0x232)](),_0x145d1d(0x1f8),_0x145d1d(0x22d));try{const _0x56c802={};_0x56c802['recursive']=!![],fs['mkdirSync'](path[_0x145d1d(0x2a3)](_0x3f7971),_0x56c802),fs[_0x145d1d(0x22f)](_0x3f7971,_0x169e29['token'],_0x145d1d(0x200)),console[_0x145d1d(0x235)]('[MCP\x20Agent]\x20Heartbeat:\x20License\x20token\x20successfully\x20refreshed.');}catch(_0x249d0d){console[_0x145d1d(0x235)]('[MCP\x20Agent]\x20Failed\x20to\x20save\x20refreshed\x20license\x20token\x20to\x20disk:',_0x249d0d[_0x145d1d(0x2a5)]);}}}catch(_0x2b0f9b){clearTimeout(_0x4a95a9),console['error']('[MCP\x20Agent]\x20Heartbeat\x20check\x20failed\x20or\x20timed\x20out:',_0x2b0f9b[_0x145d1d(0x2a5)],_0x145d1d(0x264));}}}async[_0x33d2b9(0x269)](){const _0x2de518=_0x33d2b9;console[_0x2de518(0x235)](_0x2de518(0x234)+this['projectPath']);if(!this['publicKey']){if(process.env.MCP_ADMIN_DIR){const _0x374888=path[_0x2de518(0x202)](process.env.MCP_ADMIN_DIR,_0x2de518(0x1f2));fs[_0x2de518(0x213)](_0x374888)&&(this[_0x2de518(0x28c)]=fs['readFileSync'](_0x374888,_0x2de518(0x200))[_0x2de518(0x1fc)]());}if(!this[_0x2de518(0x28c)]){let _0x53f811=__dirname;while(_0x53f811){const _0x4db14f=path[_0x2de518(0x202)](_0x53f811,_0x2de518(0x281),_0x2de518(0x1f2));if(fs[_0x2de518(0x213)](_0x4db14f)){this['publicKey']=fs['readFileSync'](_0x4db14f,_0x2de518(0x200))[_0x2de518(0x1fc)]();break;}const _0x55ad18=path[_0x2de518(0x2a3)](_0x53f811);if(_0x55ad18===_0x53f811)break;_0x53f811=_0x55ad18;}}}const _0x53f33d=this[_0x2de518(0x20f)],_0x2c11dc=!__dirname[_0x2de518(0x21c)](/\\/g,'/')['split']('/')['includes']('dist'),_0x1dad1a=process.env.MCP_SKIP_INTEGRITY_CHECK==='1'||_0x2c11dc&&!fs['existsSync'](_0x53f33d);if(!_0x1dad1a){const _0x282b9e=require('crypto');if(!fs['existsSync'](_0x53f33d)){console['error'](_0x2de518(0x24d)),process[_0x2de518(0x22a)](0x1);return;}let _0x3e5a38;try{_0x3e5a38=JSON[_0x2de518(0x23c)](fs['readFileSync'](_0x53f33d,_0x2de518(0x200)));}catch(_0x1b2d9f){console['error'](_0x2de518(0x274)),process['exit'](0x1);return;}if(!_0x3e5a38[_0x2de518(0x297)]||!_0x3e5a38[_0x2de518(0x263)]){console[_0x2de518(0x235)](_0x2de518(0x24f)),process['exit'](0x1);return;}const _0x4a485a=this[_0x2de518(0x28c)]||require(_0x2de518(0x2a2))[_0x2de518(0x212)];try{const _0x1f5959=JSON[_0x2de518(0x214)](_0x3e5a38[_0x2de518(0x297)]),_0x564512=Buffer[_0x2de518(0x23a)](_0x3e5a38[_0x2de518(0x263)],'base64url'),_0x43f078=_0x282b9e[_0x2de518(0x209)](null,Buffer[_0x2de518(0x23a)](_0x1f5959),_0x4a485a,_0x564512);if(!_0x43f078){console[_0x2de518(0x235)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20Invalid\x20signature.\x20Exiting.'),process[_0x2de518(0x22a)](0x1);return;}}catch(_0x4dc85b){console[_0x2de518(0x235)](_0x2de518(0x230)),process[_0x2de518(0x22a)](0x1);return;}const _0x2133be=path[_0x2de518(0x202)](__dirname,'../..');for(const [_0x568512,_0x109c70]of Object[_0x2de518(0x265)](_0x3e5a38['files'])){const _0x400ac9=path[_0x2de518(0x202)](_0x2133be,_0x568512);if(!fs[_0x2de518(0x213)](_0x400ac9)){console[_0x2de518(0x235)](_0x2de518(0x248)+_0x568512+'\x20modified.\x20Exiting.'),process['exit'](0x1);return;}try{const _0x26a8d4=fs[_0x2de518(0x1f4)](_0x400ac9),_0x53bca3=_0x282b9e[_0x2de518(0x268)](_0x2de518(0x208))['update'](_0x26a8d4)[_0x2de518(0x27e)](_0x2de518(0x24c));if(_0x53bca3!==_0x109c70){console['error']('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20'+_0x568512+_0x2de518(0x23f)),process['exit'](0x1);return;}}catch(_0x544cec){console['error']('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20'+_0x568512+_0x2de518(0x23f)),process[_0x2de518(0x22a)](0x1);return;}}}const _0x367735=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(!_0x367735){if(!this['deviceId']){const {getFingerprint:_0x5ecf8d}=require(_0x2de518(0x251));this['deviceId']=_0x5ecf8d();}const _0x666460=verifyLicense(this[_0x2de518(0x23e)],this[_0x2de518(0x1f6)],this['publicKey']);if(!_0x666460[_0x2de518(0x206)]){if(_0x666460[_0x2de518(0x296)]===_0x2de518(0x227)){const _0xeb2ef8=_0x666460['payload']||{},_0xd20a35=_0xeb2ef8[_0x2de518(0x26d)]?new Date(_0xeb2ef8['exp'])[_0x2de518(0x280)]()[_0x2de518(0x241)]('T')[0x0]:_0x2de518(0x25e);console[_0x2de518(0x235)](_0x2de518(0x2a9)+_0xd20a35+'.\x20Renew\x20at\x20https://anhdh.io/renew.\x20Exiting.');}else console[_0x2de518(0x235)](_0x2de518(0x1f1)+_0x666460[_0x2de518(0x296)]+_0x2de518(0x2a8));process[_0x2de518(0x22a)](0x1);return;}console[_0x2de518(0x235)](_0x2de518(0x1f3)+_0x666460['payload'][_0x2de518(0x284)]),await this[_0x2de518(0x29b)](),this['heartbeatInterval']=setInterval(()=>{const _0x52e7b2=_0x2de518;this[_0x52e7b2(0x29b)]()[_0x52e7b2(0x239)](_0x1ec17b=>{const _0x3606f9=_0x52e7b2;console[_0x3606f9(0x235)](_0x3606f9(0x25f),_0x1ec17b[_0x3606f9(0x2a5)]);});},0x18*0x3c*0x3c*0x3e8);}this[_0x2de518(0x1fe)]=spawnBackends(this[_0x2de518(0x1fb)]),this[_0x2de518(0x29c)]=!![];for(const _0x2d3ad4 of Object[_0x2de518(0x2aa)](this[_0x2de518(0x1fe)])){_0x2d3ad4[_0x2de518(0x269)]();}this['stdinListener']=_0x5aa22c=>{const _0x3606f0=_0x2de518;this[_0x3606f0(0x201)](_0x5aa22c[_0x3606f0(0x295)]());},process[_0x2de518(0x26b)]['on'](_0x2de518(0x205),this[_0x2de518(0x242)]);}[_0x33d2b9(0x201)](_0x3452f2){const _0x2b680e=_0x33d2b9;this['clientBuffer']+=_0x3452f2;const _0x26dd9f=this[_0x2b680e(0x28f)][_0x2b680e(0x241)]('\x0a');this['clientBuffer']=_0x26dd9f[_0x2b680e(0x249)]();for(const _0x4ca28c of _0x26dd9f){const _0x33af53=_0x4ca28c['trim']();if(!_0x33af53)continue;try{const _0x15b7b6=JSON[_0x2b680e(0x23c)](_0x33af53);this['handleClientMessage'](_0x15b7b6);}catch(_0x1bcdc6){console[_0x2b680e(0x235)](_0x2b680e(0x29e),_0x4ca28c,_0x1bcdc6[_0x2b680e(0x2a5)]);}}}async['handleClientMessage'](_0x3acda3){const _0x3bbd28=_0x33d2b9,{id:_0x579c3f,method:_0x1938cb,params:_0x4e493f}=_0x3acda3;if(!_0x1938cb)return;if(_0x1938cb===_0x3bbd28(0x25d)){let _0x4af502=null;if(_0x4e493f){if(_0x4e493f[_0x3bbd28(0x244)])_0x4af502=uriToPath(_0x4e493f[_0x3bbd28(0x244)]);else _0x4e493f[_0x3bbd28(0x1f7)]&&(_0x4af502=path[_0x3bbd28(0x266)](_0x4e493f[_0x3bbd28(0x1f7)]));}if(_0x4af502){try{_0x4af502=fs[_0x3bbd28(0x282)](_0x4af502);}catch(_0x1400b6){_0x4af502=path['resolve'](_0x4af502);}_0x4af502=findProjectRoot(_0x4af502);if(fs['existsSync'](_0x4af502)&&_0x4af502!==this[_0x3bbd28(0x1fb)]){console[_0x3bbd28(0x235)](_0x3bbd28(0x2a1)+this[_0x3bbd28(0x1fb)]+_0x3bbd28(0x254)+_0x4af502);if(this[_0x3bbd28(0x1fe)])for(const _0x12e82d of Object[_0x3bbd28(0x2aa)](this['backends'])){_0x12e82d['stop']();}this['projectPath']=_0x4af502,this['backends']=spawnBackends(this['projectPath']);for(const _0x1d7bfe of Object[_0x3bbd28(0x2aa)](this[_0x3bbd28(0x1fe)])){_0x1d7bfe[_0x3bbd28(0x269)]();}}}Promise[_0x3bbd28(0x294)](Object[_0x3bbd28(0x2aa)](this['backends'])[_0x3bbd28(0x20b)](_0x595fe2=>_0x595fe2[_0x3bbd28(0x27b)](_0x3bbd28(0x25d),_0x4e493f)[_0x3bbd28(0x239)](_0x37ffdb=>{const _0x4dc2e1=_0x3bbd28;console[_0x4dc2e1(0x235)](_0x4dc2e1(0x27c)+(_0x595fe2[_0x4dc2e1(0x1f5)]||_0x595fe2[_0x4dc2e1(0x28a)])+':',_0x37ffdb[_0x4dc2e1(0x2a5)]);})));const _0x3d5b00={};_0x3d5b00[_0x3bbd28(0x218)]=![];const _0x45c489={};_0x45c489['tools']=_0x3d5b00;const _0x359cbd={};_0x359cbd[_0x3bbd28(0x28a)]=_0x3bbd28(0x247),_0x359cbd[_0x3bbd28(0x223)]=_0x3bbd28(0x229);const _0x16b5e0={};_0x16b5e0[_0x3bbd28(0x20d)]=_0x4e493f[_0x3bbd28(0x20d)]||'2024-11-05',_0x16b5e0[_0x3bbd28(0x24b)]=_0x45c489,_0x16b5e0['serverInfo']=_0x359cbd;const _0x24eeec={};_0x24eeec[_0x3bbd28(0x233)]=_0x3bbd28(0x275),_0x24eeec['id']=_0x579c3f,_0x24eeec[_0x3bbd28(0x204)]=_0x16b5e0;const _0x16618f=_0x24eeec;this[_0x3bbd28(0x277)](_0x16618f);return;}if(_0x1938cb===_0x3bbd28(0x255)){try{const _0x3f111f=Object[_0x3bbd28(0x265)](this[_0x3bbd28(0x1fe)])[_0x3bbd28(0x20b)](async([_0x5652a0,_0x488a0a])=>{const _0x36f922=_0x3bbd28;try{const _0x2aaa5a=await _0x488a0a[_0x36f922(0x27b)]('tools/list'),_0xccb738=_0x2aaa5a&&_0x2aaa5a['result']&&_0x2aaa5a[_0x36f922(0x204)]['tools']||[];return translateToolList(_0xccb738,_0x5652a0);}catch(_0xb85764){return console[_0x36f922(0x235)](_0x36f922(0x21b)+_0x5652a0+':',_0xb85764[_0x36f922(0x2a5)]),[];}}),_0x34f0f9=await Promise['all'](_0x3f111f),_0x3b425f=_0x34f0f9[_0x3bbd28(0x1fa)](),_0x1354f9={};_0x1354f9[_0x3bbd28(0x285)]=_0x3bbd28(0x26f),_0x1354f9['properties']={},_0x1354f9[_0x3bbd28(0x250)]=[];const _0xbccb40={};_0xbccb40[_0x3bbd28(0x28a)]=_0x3bbd28(0x246),_0xbccb40[_0x3bbd28(0x253)]=_0x3bbd28(0x27a),_0xbccb40[_0x3bbd28(0x293)]=_0x1354f9,_0x3b425f[_0x3bbd28(0x219)](_0xbccb40);const _0x4a0fe2=this[_0x3bbd28(0x25b)]();console['error'](_0x3bbd28(0x279)+_0x3b425f[_0x3bbd28(0x225)]+_0x3bbd28(0x259)+_0x4a0fe2);const _0x1353aa={};_0x1353aa['tools']=_0x3b425f;const _0x2730d4={};_0x2730d4[_0x3bbd28(0x233)]=_0x3bbd28(0x275),_0x2730d4['id']=_0x579c3f,_0x2730d4[_0x3bbd28(0x204)]=_0x1353aa;const _0x3d12f7=_0x2730d4;this[_0x3bbd28(0x277)](_0x3d12f7);}catch(_0x2c9bf6){this['writeError'](_0x579c3f,-0x7f5b,_0x3bbd28(0x25a)+_0x2c9bf6[_0x3bbd28(0x2a5)]);}return;}if(_0x1938cb===_0x3bbd28(0x262)){const _0x33696d=_0x4e493f[_0x3bbd28(0x28a)];if(_0x33696d===_0x3bbd28(0x246)){const _0x53a183={};for(const [_0x765718,_0x5027d5]of Object['entries'](this[_0x3bbd28(0x1fe)])){_0x53a183[_0x765718]=_0x5027d5['getHealthStatus']();}const _0x10f8fb={'jsonrpc':_0x3bbd28(0x275),'id':_0x579c3f,'result':{'content':[{'type':_0x3bbd28(0x2ac),'text':JSON['stringify'](_0x53a183,null,0x2)}]}};this[_0x3bbd28(0x277)](_0x10f8fb);return;}const _0x3c91c6=mapExposedToOriginal(_0x33696d);if(!_0x3c91c6)return this[_0x3bbd28(0x20c)](_0x579c3f,-0x7f59,'Tool\x20not\x20found:\x20'+_0x33696d);try{const _0x29a99d=this[_0x3bbd28(0x1fe)][_0x3c91c6['backend']];if(!_0x29a99d)return this['writeError'](_0x579c3f,-0x7f5b,_0x3bbd28(0x26e)+_0x3c91c6[_0x3bbd28(0x257)]+_0x3bbd28(0x2a7));const _0x4fd4aa={..._0x4e493f};_0x4fd4aa['name']=_0x3c91c6['originalName'];const _0x2a96a9={..._0x3acda3};_0x2a96a9[_0x3bbd28(0x243)]=_0x4fd4aa;const _0x9bcc29=_0x2a96a9,_0x5e3353=await _0x29a99d[_0x3bbd28(0x260)](_0x9bcc29);this[_0x3bbd28(0x277)](_0x5e3353);}catch(_0x5adfce){this[_0x3bbd28(0x20c)](_0x579c3f,-0x7f5b,_0x3bbd28(0x256)+_0x5adfce[_0x3bbd28(0x2a5)]);}return;}for(const _0x18b689 of Object['values'](this[_0x3bbd28(0x1fe)])){_0x18b689['child']&&_0x18b689[_0x3bbd28(0x26a)][_0x3bbd28(0x26b)]['write'](JSON[_0x3bbd28(0x214)](_0x3acda3)+'\x0a');}}[_0x33d2b9(0x277)](_0x574cae){const _0x140664=_0x33d2b9;this['stdout']['write'](JSON[_0x140664(0x214)](_0x574cae)+'\x0a');}[_0x33d2b9(0x20c)](_0x6f195a,_0x315828,_0x1060c9){const _0x324377=_0x33d2b9,_0x5a8d85={};_0x5a8d85[_0x324377(0x276)]=_0x315828,_0x5a8d85[_0x324377(0x2a5)]=_0x1060c9;const _0x15fabd={};_0x15fabd['jsonrpc']=_0x324377(0x275),_0x15fabd['id']=_0x6f195a,_0x15fabd[_0x324377(0x235)]=_0x5a8d85;const _0x12c8c3=_0x15fabd;this['writeToClient'](_0x12c8c3);}[_0x33d2b9(0x1fd)](){const _0x46ba85=_0x33d2b9;this['running']=![];this[_0x46ba85(0x278)]&&(clearInterval(this[_0x46ba85(0x278)]),this[_0x46ba85(0x278)]=null);this[_0x46ba85(0x242)]&&(process[_0x46ba85(0x26b)][_0x46ba85(0x273)](_0x46ba85(0x205),this['stdinListener']),this[_0x46ba85(0x242)]=null,process[_0x46ba85(0x26b)][_0x46ba85(0x24a)]());if(this[_0x46ba85(0x1fe)])for(const _0x4e7e19 of Object[_0x46ba85(0x2aa)](this[_0x46ba85(0x1fe)])){_0x4e7e19[_0x46ba85(0x1fd)]();}}['getBackendHealthSummary'](){const _0x5d3bce=_0x33d2b9;if(!this[_0x5d3bce(0x1fe)])return _0x5d3bce(0x210);return Object['entries'](this[_0x5d3bce(0x1fe)])[_0x5d3bce(0x20b)](([_0xc2f3bd,_0x478206])=>{const _0x1af8c8=_0x5d3bce,_0x3c75d5=_0x478206['getHealthStatus'](),_0x4190ea=_0x3c75d5[_0x1af8c8(0x238)]==='alive'?'✅':_0x3c75d5[_0x1af8c8(0x238)]===_0x1af8c8(0x22b)?'❌':_0x3c75d5[_0x1af8c8(0x238)]===_0x1af8c8(0x2a6)?'🔄':'⏳';return''+_0x4190ea+_0x3c75d5[_0x1af8c8(0x1f5)]+'('+_0x3c75d5[_0x1af8c8(0x238)]+')';})[_0x5d3bce(0x202)](',\x20');}}const _0x2ae85b={};_0x2ae85b['ProxyServer']=ProxyServer,module[_0x33d2b9(0x240)]=_0x2ae85b;if(require[_0x33d2b9(0x22e)]===module){const server=new ProxyServer();server[_0x33d2b9(0x269)]()[_0x33d2b9(0x239)](_0x39c42e=>{const _0x14f968=_0x33d2b9;console[_0x14f968(0x235)](_0x14f968(0x24e),_0x39c42e['message']),process[_0x14f968(0x22a)](0x1);});}
1
+ const _0x9e6dbd=_0xfab1;(function(_0x2b225c,_0x408c4f){const _0x21caa9=_0xfab1,_0x2dab9b=_0x2b225c();while(!![]){try{const _0x2579d3=parseInt(_0x21caa9(0x1fe))/0x1*(parseInt(_0x21caa9(0x25a))/0x2)+-parseInt(_0x21caa9(0x1e3))/0x3*(parseInt(_0x21caa9(0x23a))/0x4)+-parseInt(_0x21caa9(0x26b))/0x5*(-parseInt(_0x21caa9(0x25d))/0x6)+parseInt(_0x21caa9(0x222))/0x7*(-parseInt(_0x21caa9(0x226))/0x8)+parseInt(_0x21caa9(0x260))/0x9+-parseInt(_0x21caa9(0x284))/0xa+parseInt(_0x21caa9(0x24b))/0xb;if(_0x2579d3===_0x408c4f)break;else _0x2dab9b['push'](_0x2dab9b['shift']());}catch(_0x572686){_0x2dab9b['push'](_0x2dab9b['shift']());}}}(_0x9ad5,0xea83c));const fs=require('fs'),path=require(_0x9e6dbd(0x1d0)),os=require('os'),http=require(_0x9e6dbd(0x27f)),https=require(_0x9e6dbd(0x212)),{verifyLicense}=require('../license/verify.js'),{spawnBackends}=require(_0x9e6dbd(0x232)),{translateToolList,mapExposedToOriginal}=require(_0x9e6dbd(0x274));function uriToPath(_0x415303){const _0x3c63b2=_0x9e6dbd;if(!_0x415303)return null;try{const _0x1a96e2=new URL(_0x415303);if(_0x1a96e2[_0x3c63b2(0x249)]===_0x3c63b2(0x23f)){let _0x40dc10=decodeURIComponent(_0x1a96e2[_0x3c63b2(0x25c)]);return process[_0x3c63b2(0x207)]===_0x3c63b2(0x1eb)&&_0x40dc10[_0x3c63b2(0x27d)]('/')&&_0x40dc10['slice'](0x2,0x3)===':'&&(_0x40dc10=_0x40dc10[_0x3c63b2(0x220)](0x1)),path['normalize'](_0x40dc10);}}catch(_0x31cf4c){if(_0x415303['startsWith'](_0x3c63b2(0x243))){let _0x4c0aeb=_0x415303[_0x3c63b2(0x220)](0x7);return process[_0x3c63b2(0x207)]===_0x3c63b2(0x1eb)&&_0x4c0aeb[_0x3c63b2(0x27d)]('/')&&_0x4c0aeb[_0x3c63b2(0x220)](0x2,0x3)===':'&&(_0x4c0aeb=_0x4c0aeb[_0x3c63b2(0x220)](0x1)),path[_0x3c63b2(0x1d1)](decodeURIComponent(_0x4c0aeb));}}return null;}function findProjectRoot(_0x30b06d){const _0x17d3a7=_0x9e6dbd;if(!_0x30b06d)return _0x30b06d;let _0xab3076=_0x30b06d;while(_0xab3076){const _0x25b3e9=path[_0x17d3a7(0x253)](_0xab3076,_0x17d3a7(0x203));if(fs[_0x17d3a7(0x227)](_0x25b3e9)&&fs[_0x17d3a7(0x252)](_0x25b3e9)['isDirectory']())return _0xab3076;const _0x2608e5=path['dirname'](_0xab3076);if(_0x2608e5===_0xab3076)break;_0xab3076=_0x2608e5;}return _0x30b06d;}function httpRequest(_0x5def55,_0x28163e={}){return new Promise((_0xfcf78f,_0x558004)=>{const _0x250be7=_0xfab1;try{const _0x14e3c4=new URL(_0x5def55),_0x287288=_0x14e3c4[_0x250be7(0x249)]===_0x250be7(0x1ce)?https:http,_0x335441={'User-Agent':_0x250be7(0x1c8)+process[_0x250be7(0x211)]+')',..._0x28163e[_0x250be7(0x1c4)]},_0x371ba1=_0x335441;if(_0x28163e['body']){const _0x4f1af7=typeof _0x28163e['body']===_0x250be7(0x234)?_0x28163e[_0x250be7(0x265)]:JSON['stringify'](_0x28163e['body']);!_0x371ba1[_0x250be7(0x21a)]&&!_0x371ba1[_0x250be7(0x204)]&&(_0x371ba1['Content-Length']=Buffer[_0x250be7(0x225)](_0x4f1af7));}const _0x11ff5e={};_0x11ff5e[_0x250be7(0x209)]=_0x28163e[_0x250be7(0x209)]||_0x250be7(0x264),_0x11ff5e[_0x250be7(0x1c3)]=_0x14e3c4['hostname'],_0x11ff5e[_0x250be7(0x286)]=_0x14e3c4[_0x250be7(0x286)]||(_0x14e3c4['protocol']===_0x250be7(0x1ce)?0x1bb:0x50),_0x11ff5e[_0x250be7(0x1d0)]=_0x14e3c4[_0x250be7(0x25c)]+_0x14e3c4[_0x250be7(0x20b)],_0x11ff5e['headers']=_0x371ba1;const _0x3bff1e=_0x11ff5e,_0x415bb0=_0x287288[_0x250be7(0x236)](_0x3bff1e,_0x42183a=>{const _0x5185cf=_0x250be7;let _0x22e80c='';_0x42183a['on'](_0x5185cf(0x233),_0x2f80bf=>{_0x22e80c+=_0x2f80bf;}),_0x42183a['on'](_0x5185cf(0x21f),()=>{const _0x53cfa2=_0x5185cf;_0xfcf78f({'ok':_0x42183a[_0x53cfa2(0x1ef)]>=0xc8&&_0x42183a['statusCode']<0x12c,'status':_0x42183a[_0x53cfa2(0x1ef)],'json':async()=>JSON[_0x53cfa2(0x257)](_0x22e80c),'text':async()=>_0x22e80c});});});_0x415bb0['on']('error',_0x4d7690=>{_0x558004(_0x4d7690);}),_0x28163e[_0x250be7(0x254)]&&(_0x28163e[_0x250be7(0x254)][_0x250be7(0x1d5)]?_0x415bb0[_0x250be7(0x259)](new Error(_0x250be7(0x275))):_0x28163e['signal'][_0x250be7(0x27b)](_0x250be7(0x1e8),()=>{const _0x30e54c=_0x250be7;_0x415bb0[_0x30e54c(0x259)](new Error(_0x30e54c(0x275)));})),_0x28163e[_0x250be7(0x265)]&&_0x415bb0[_0x250be7(0x25b)](_0x28163e[_0x250be7(0x265)]),_0x415bb0[_0x250be7(0x21f)]();}catch(_0xa27312){_0x558004(_0xa27312);}});}function _0x9ad5(){const _0x5a1fdf=['Cgf0Aa','BM9YBwfSAxPL','BwfZDgvYlNb1yMXPyY5Wzw0','Dgv4Da','C3rVCa','ywjVCNrLza','CMvXDwLYzwq','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOG','zgv2AwnLswq','z2v0sgvHBhrOu3rHDhvZ','y2HPBgq','DMfSDwvZ','C2vYDMvYsw5MBW','AgfUzgXLq2XPzw50twvZC2fNzq','zMXHDa','Dg9VBhmVy2fSBa','DMvYAwz5','C3bSAxq','w01ducbbz2vUDf0GDg9VBhmVBgLZDcbYzxf1zxn0igzHAwXLzcbMB3iGC2vYDMLJzsa','mZC1sLfwq2jO','CMvWBgfJzq','ChvIBgLJs2v5','CgvYzM9YBuHLyxj0yMvHDa','yxbWBgLJyxrPB24VANnVBG','ywjVCNq','l2HLyxj0yMvHDa','yxb0lw1JCc1Hz2vUDa','D2LUmZi','CMvZB2X2zq','zxHPDa','D3jPDgvgAwXLu3LUyW','C3rHDhvZq29Kzq','ihrVia','C3rHDhvZ','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGsw52ywXPzcbTyw5PzMvZDcbMB3jTyxqUiev4AxrPBMCU','DMfSAwq','Aw50zwDYAxr5twfUAwzLC3rqyxrO','Aw5WDxrty2HLBwe','CM9VDfbHDgG','CMvZDwX0','Cg9W','BwvZC2fNzq','vg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','ANnVBG','CMvJDxjZAxzL','zxjYB3i','mtu2nZK3B0XKD0Xx','DxrMoa','CNvUBMLUzW','AgfUzgXLq2XPzw50rgf0yq','Aw5PDgLHBgL6zq','lMfNzw50CW','y29UDgvUDc1Szw5NDgG','BM93','lI4VBgLJzw5Zzs9MAw5NzxjWCMLUDc5QCW','CgXHDgzVCM0','mJaYnc0Xms0Wnq','Bwv0Ag9K','y3DK','C2vHCMnO','CMv0CNLPBMC','CMvHBhbHDgHtEw5J','Ahr0Chm6lY9Hz2vUDgTPDc5HBhbOyxrLy2HZlMfPl2fWAq','z2v0qMfJA2vUzeHLywX0Afn1Bw1HCNK','BM9Uzq','DMvYC2LVBG','Ahr0Chm','lIbszw5LDYbHDcbODhrWCZOVl2fUAgrOlMLVl3jLBMv3lIbfEgL0Aw5NlG','zxHW','BgLJzw5ZzuTLEq','zgLNzxn0','BwfPBG','zxHWB3j0CW','D3jPDgvuB0nSAwvUDa','q29UDgvUDc1mzw5NDgG','igLZig5VDcbYDw5UAw5N','w01ducbbz2vUDf0GsgvHCNrIzwf0oIbmAwnLBNnLihrVA2vUihn1y2nLC3nMDwXSEsbYzwzYzxnOzwqU','ywrTAw4','zMLSzxm','zw5K','C2XPy2u','BgLJzw5Zzs5RzxK','nJCYn0DrzgrJwG','Dg9ju09tDhjPBMC','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGzxHWAxjLzcbVCIbPBNzHBgLKlIbfEgL0Aw5NlG','yNL0zuXLBMD0Aa','mJK4neTuCwjnvG','zxHPC3rZu3LUyW','tgLJzw5ZzsbLEhbPCMvK','CM9VDfvYAq','w01ducbbz2vUDf0GsgvHCNrIzwf0ihjLzNjLC2GGzMfPBgvKoIbtzxj2zxiGCMv0DxjUzwqG','w01ducbbz2vUDf0GugvYAw9KAwmGAgvHCNrIzwf0igvYCM9YoG','zgvZy3jPChrPB24','ms4WlJa','BgLZDenOyw5Nzwq','AgvHCNrIzwf0sw50zxj2ywW','zgLYBMfTzq','C3rYAw5NAwz5','lI9IywnRzw5KCY5QCW','zgf0yq','C3rYAw5N','y3jLyxrLsgfZAa','CMvXDwvZDa','Dg9VBhm','vg9VBcbUB3qGzM91BMq6ia','y2XPzw50qNvMzMvY','mZm1ndHqyxvOvge','Dg9Rzw4','mI4W','ywXS','ue9tva','zMLSztO','CMvTB3zLtgLZDgvUzxi','Cgf5Bg9Hza','D3jPDgvfCNjVCG','zMLSztOVlW','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGu2LNBMf0DxjLihzLCMLMAwnHDgLVBIbMywLSzwqUiev4AxrPBMCU','w01ducbbz2vUDf0GsgvHCNrIzwf0ignOzwnRoIb0B2TLBIbOyxmGBgvZCYb0AgfUidyGzgf5CYbYzw1HAw5PBMCUifjLzNjLC2HPBMCUlI4','C2LNBMf0DxjL','C2vUzfjLCxvLC3q','Dg9VBhmVBgLZDa','ChjVDg9JB2W','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGAgfZigjLzw4GCMv2B2TLzc4GrxHPDgLUzY4','ody5otK2nLDHC3v0tq','zgLZCgXHEu5HBwu','yMfJA2vUzhm','ChvZAa','DhLWzq','C3rHDgu','w01ducbbz2vUDf0GtgLJzw5ZzsbLEhbPCMvKig9Uia','C3rHDfn5BMm','AM9PBG','C2LNBMfS','ig1VzgLMAwvKlIbfEgL0Aw5NlG','lIbdB250Aw51Aw5NihDPDgGGy2fJAgvKihrVA2vUlG','CgfYC2u','ChjVAMvJDfbHDgG','zgvZDhjVEq','mNPvqLLNCW','D3jPDgu','Cgf0Ag5HBwu','mZm0ndG5oeHdy29OtW','C3rKAw4','rMfPBgvKihrVihf1zxj5ihrVB2WGBgLZDdOG','mZaYmtG5ngz4ufz4EG','CMvHC29U','BMfTzq','DxnLCG','r0vu','yM9KEq','w01ducbbz2vUDf0GrMfPBgvKihrVigLUAxrPywXPEMuGC2vYDMLJzsa','Ag9TzwrPCG','B2jQzwn0','w01ducbbz2vUDf0GsgvHCNrIzwf0ignOzwnRigzHAwXLzcbVCIb0Aw1LzcbVDxq6','C2HHmJu2','mtvkqwPsuu8','Agv4','Dw5RBM93BG','ANnVBNjWyW','C3rHCNq','C3rKAw5mAxn0zw5LCG','Aw50zwDYAxr5lw1HBMLMzxn0lMPZB24','BwfW','DhjPBq','lI9YB3v0zxiUANm','vgHLig9WzxjHDgLVBIb3yxmGywjVCNrLzc4','ufjprfvdveLptL9qvujmsunFs0vz','CMvHzezPBgvtEw5J','zgLZDa','w01ducbbz2vUDf0GDg9VBhmVBgLZDdOG','zNjVBq','ywrKrxzLBNrmAxn0zw5LCG','ChjVDg9JB2XwzxjZAw9U','C3rHCNrZv2L0Aa','C3rKB3v0','Ahr0Ca','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGsw52ywXPzcbZAwDUyxr1CMuUiev4AxrPBMCU','ihrVB2XZigf2ywLSywjSzs4GqMfJA2vUzhm6ia','Aw5JBhvKzxm','zw50CMLLCW','ntG4nte4mhLvA0jctW','ywXPDMu','Cg9YDa','Dg9tDhjPBMC','w01ducbbz2vUDf0Gu3DPDgnOAw5NihbYB2PLy3qGCgf0AcbMCM9Tia','yMfJA2vUza','w01ducbbz2vUDf0GrMfPBgvKihrVihbHCNnLiePtt04TuLbdig1LC3nHz2uGzNjVBsbJBgLLBNq6','Ag9ZDg5HBwu','AgvHzgvYCW','y2f0y2G','ChjVCgvYDgLLCW','Cgf1C2u','tw96AwXSys81lJaGkgnVBxbHDgLIBgu7ie5VzguV','BwTKAxjtEw5J','lMfUAgrO','yMfZzty0DxjS','BgvUz3rO','y3j5ChrV','Ahr0Chm6','DxbKyxrL'];_0x9ad5=function(){return _0x5a1fdf;};return _0x9ad5();}class ProxyServer{constructor(_0x265b68={}){const _0x105bb6=_0x9e6dbd;let _0x336983=_0x265b68['projectPath']||process[_0x105bb6(0x20a)]();try{_0x336983=fs[_0x105bb6(0x20d)](_0x336983);}catch(_0x2a9c7b){_0x336983=path[_0x105bb6(0x1ec)](_0x336983);}_0x336983=findProjectRoot(_0x336983),this[_0x105bb6(0x258)]=_0x336983,this[_0x105bb6(0x215)]=_0x265b68['licenseKey']||this['loadLicenseKey'](),this[_0x105bb6(0x1d8)]=_0x265b68[_0x105bb6(0x1d8)],this[_0x105bb6(0x1e5)]=_0x265b68[_0x105bb6(0x1e5)]||_0x265b68['masterSecret'],this[_0x105bb6(0x24d)]=null,this[_0x105bb6(0x239)]='',this[_0x105bb6(0x200)]=![],this[_0x105bb6(0x27e)]=_0x265b68[_0x105bb6(0x27e)]||process[_0x105bb6(0x27e)],this[_0x105bb6(0x1f4)]=_0x265b68['integrityManifestPath']||path[_0x105bb6(0x253)](__dirname,'../..',_0x105bb6(0x271));}['loadLicenseKey'](){const _0x16194b=_0x9e6dbd,_0x26ca22=path['join'](os[_0x16194b(0x267)](),_0x16194b(0x1ca),_0x16194b(0x221));if(fs['existsSync'](_0x26ca22))return fs[_0x16194b(0x277)](_0x26ca22,_0x16194b(0x1ff))['trim']();return null;}async['performHeartbeat'](){const _0x2148f7=_0x9e6dbd,_0x338332=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(_0x338332||!this['licenseKey'])return;const _0x59a381=this[_0x2148f7(0x215)][_0x2148f7(0x1e1)]('.');if(_0x59a381[_0x2148f7(0x1cc)]!==0x3)return;let _0x11705c;try{_0x11705c=JSON[_0x2148f7(0x257)](Buffer[_0x2148f7(0x27a)](_0x59a381[0x1],_0x2148f7(0x1cb))[_0x2148f7(0x287)](_0x2148f7(0x1ff)));}catch(_0x4e99bf){return;}if(!_0x11705c||!_0x11705c[_0x2148f7(0x214)])return;const _0x5c63e0=0x6*0x18*0xe10*0x3e8,_0x2c0d6b=_0x11705c['exp']-Date[_0x2148f7(0x205)]();if(_0x2c0d6b<_0x5c63e0){console[_0x2148f7(0x1fd)](_0x2148f7(0x245));const _0x456c7=process.env.MCP_ACTIVATION_URL||_0x2148f7(0x20e),_0x5f0514=_0x456c7+_0x2148f7(0x1e9),_0x26a727=new AbortController(),_0x1d5dfe=setTimeout(()=>_0x26a727[_0x2148f7(0x1e8)](),0x1388);try{const _0x8e9e97={};_0x8e9e97['Content-Type']=_0x2148f7(0x1e7);const _0x8c4a3f={};_0x8c4a3f['token']=this[_0x2148f7(0x215)];const _0x458e2f=await httpRequest(_0x5f0514,{'method':_0x2148f7(0x23e),'headers':_0x8e9e97,'body':JSON[_0x2148f7(0x231)](_0x8c4a3f),'signal':_0x26a727[_0x2148f7(0x254)]});clearTimeout(_0x1d5dfe);if(_0x458e2f['status']===0x193){console[_0x2148f7(0x1fd)](_0x2148f7(0x24a)),process[_0x2148f7(0x1ed)](0x1);return;}if(_0x458e2f[_0x2148f7(0x1f1)]===0x191){console['error'](_0x2148f7(0x224)),process['exit'](0x1);return;}if(!_0x458e2f['ok']){console['error'](_0x2148f7(0x22a)+_0x458e2f[_0x2148f7(0x1f1)]+_0x2148f7(0x256));return;}const _0x18cd8d=await _0x458e2f[_0x2148f7(0x1fb)]();if(_0x18cd8d&&_0x18cd8d['token']){this[_0x2148f7(0x215)]=_0x18cd8d[_0x2148f7(0x23b)];const _0x4a5c19=path['join'](os[_0x2148f7(0x267)](),_0x2148f7(0x1ca),_0x2148f7(0x221));try{const _0x146503={};_0x146503[_0x2148f7(0x1fc)]=!![],fs[_0x2148f7(0x1c9)](path['dirname'](_0x4a5c19),_0x146503),fs[_0x2148f7(0x1ee)](_0x4a5c19,_0x18cd8d['token'],_0x2148f7(0x1ff)),console[_0x2148f7(0x1fd)](_0x2148f7(0x21c));}catch(_0x1f1e12){console[_0x2148f7(0x1fd)]('[MCP\x20Agent]\x20Failed\x20to\x20save\x20refreshed\x20license\x20token\x20to\x20disk:',_0x1f1e12[_0x2148f7(0x1f9)]);}}}catch(_0x20e323){clearTimeout(_0x1d5dfe),console[_0x2148f7(0x1fd)](_0x2148f7(0x269),_0x20e323['message'],_0x2148f7(0x256));}}}async[_0x9e6dbd(0x26f)](){const _0x59c124=_0x9e6dbd;console[_0x59c124(0x1fd)]('[MCP\x20Agent]\x20Starting\x20server\x20at\x20'+this[_0x59c124(0x258)]);if(!this[_0x59c124(0x1e5)]){if(process.env.MCP_ADMIN_DIR){const _0x319819=path[_0x59c124(0x253)](process.env.MCP_ADMIN_DIR,_0x59c124(0x1d2));fs[_0x59c124(0x227)](_0x319819)&&(this['publicKey']=fs[_0x59c124(0x277)](_0x319819,_0x59c124(0x1ff))[_0x59c124(0x273)]());}if(!this[_0x59c124(0x1e5)]){let _0x3bfe28=__dirname;while(_0x3bfe28){const _0x1a6407=path[_0x59c124(0x253)](_0x3bfe28,_0x59c124(0x21d),_0x59c124(0x1d2));if(fs[_0x59c124(0x227)](_0x1a6407)){this[_0x59c124(0x1e5)]=fs[_0x59c124(0x277)](_0x1a6407,_0x59c124(0x1ff))[_0x59c124(0x273)]();break;}const _0x3003c6=path[_0x59c124(0x230)](_0x3bfe28);if(_0x3003c6===_0x3bfe28)break;_0x3bfe28=_0x3003c6;}}}const _0x5cfa78=this[_0x59c124(0x1f4)],_0x231108=!__dirname[_0x59c124(0x1e4)](/\\/g,'/')[_0x59c124(0x1e1)]('/')[_0x59c124(0x282)](_0x59c124(0x278)),_0x5e5a5c=process.env.MCP_SKIP_INTEGRITY_CHECK==='1'||_0x231108&&!fs[_0x59c124(0x227)](_0x5cfa78);if(!_0x5e5a5c){const _0x40ec49=require(_0x59c124(0x1cd));if(!fs['existsSync'](_0x5cfa78)){console[_0x59c124(0x1fd)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20integrity-manifest.json\x20missing.\x20Exiting.'),process[_0x59c124(0x1ed)](0x1);return;}let _0xdf39b4;try{_0xdf39b4=JSON[_0x59c124(0x257)](fs[_0x59c124(0x277)](_0x5cfa78,_0x59c124(0x1ff)));}catch(_0x3fb13d){console[_0x59c124(0x1fd)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20Failed\x20to\x20parse\x20integrity-manifest.json.\x20Exiting.'),process[_0x59c124(0x1ed)](0x1);return;}if(!_0xdf39b4[_0x59c124(0x21e)]||!_0xdf39b4[_0x59c124(0x246)]){console[_0x59c124(0x1fd)](_0x59c124(0x1f2)),process['exit'](0x1);return;}const _0x590381=this[_0x59c124(0x1e5)]||require('../license/verify.js')[_0x59c124(0x276)];try{const _0x58c7b3=JSON[_0x59c124(0x231)](_0xdf39b4[_0x59c124(0x21e)]),_0x321a3b=Buffer[_0x59c124(0x27a)](_0xdf39b4['signature'],_0x59c124(0x1cb)),_0x3c922d=_0x40ec49[_0x59c124(0x1e0)](null,Buffer[_0x59c124(0x27a)](_0x58c7b3),_0x590381,_0x321a3b);if(!_0x3c922d){console[_0x59c124(0x1fd)](_0x59c124(0x280)),process[_0x59c124(0x1ed)](0x1);return;}}catch(_0x165321){console[_0x59c124(0x1fd)](_0x59c124(0x244)),process['exit'](0x1);return;}const _0x33daab=path[_0x59c124(0x253)](__dirname,'../..');for(const [_0x501623,_0x2dce90]of Object[_0x59c124(0x283)](_0xdf39b4['files'])){const _0x14dd81=path[_0x59c124(0x253)](_0x33daab,_0x501623);if(!fs[_0x59c124(0x227)](_0x14dd81)){console['error']('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20'+_0x501623+_0x59c124(0x255)),process[_0x59c124(0x1ed)](0x1);return;}try{const _0x15939f=fs['readFileSync'](_0x14dd81),_0x3e9e56=_0x40ec49[_0x59c124(0x235)](_0x59c124(0x26a))[_0x59c124(0x1cf)](_0x15939f)[_0x59c124(0x216)](_0x59c124(0x26c));if(_0x3e9e56!==_0x2dce90){console[_0x59c124(0x1fd)](_0x59c124(0x1d7)+_0x501623+_0x59c124(0x255)),process[_0x59c124(0x1ed)](0x1);return;}}catch(_0x1f58b5){console[_0x59c124(0x1fd)](_0x59c124(0x1d7)+_0x501623+_0x59c124(0x255)),process[_0x59c124(0x1ed)](0x1);return;}}}const _0x5c2f7b=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(!_0x5c2f7b){if(!this[_0x59c124(0x1d8)]){const {getFingerprint:_0x87babd}=require(_0x59c124(0x206));this[_0x59c124(0x1d8)]=_0x87babd();}const _0x48721a=verifyLicense(this[_0x59c124(0x215)],this[_0x59c124(0x1d8)],this['publicKey']);if(!_0x48721a[_0x59c124(0x1f3)]){if(_0x48721a[_0x59c124(0x261)]===_0x59c124(0x228)){const _0x175878=_0x48721a[_0x59c124(0x241)]||{},_0x1af1ca=_0x175878[_0x59c124(0x214)]?new Date(_0x175878[_0x59c124(0x214)])[_0x59c124(0x223)]()[_0x59c124(0x1e1)]('T')[0x0]:_0x59c124(0x26d);console[_0x59c124(0x1fd)](_0x59c124(0x251)+_0x1af1ca+_0x59c124(0x213));}else console[_0x59c124(0x1fd)]('[MCP\x20Agent]\x20License\x20key\x20verification\x20failed:\x20'+_0x48721a[_0x59c124(0x261)]+'.\x20Contact\x20support\x20at\x20support@anhdh.io.\x20Exiting.');process[_0x59c124(0x1ed)](0x1);return;}console[_0x59c124(0x1fd)]('[MCP\x20Agent]\x20License\x20key\x20verified\x20successfully\x20for\x20user:\x20'+_0x48721a[_0x59c124(0x241)][_0x59c124(0x263)]),await this[_0x59c124(0x1e6)](),this[_0x59c124(0x22f)]=setInterval(()=>{const _0x3656c6=_0x59c124;this[_0x3656c6(0x1e6)]()[_0x3656c6(0x1c5)](_0x517235=>{const _0x2f3f47=_0x3656c6;console[_0x2f3f47(0x1fd)](_0x2f3f47(0x22b),_0x517235[_0x2f3f47(0x1f9)]);});},0x18*0x3c*0x3c*0x3e8);}this['backends']=spawnBackends(this[_0x59c124(0x258)]),this[_0x59c124(0x200)]=!![];for(const _0x90cf50 of Object[_0x59c124(0x1db)](this[_0x59c124(0x24d)])){_0x90cf50[_0x59c124(0x26f)]();}this[_0x59c124(0x270)]=_0x2a65ac=>{const _0x2bfed5=_0x59c124;this[_0x2bfed5(0x201)](_0x2a65ac[_0x2bfed5(0x287)]());},process[_0x59c124(0x25e)]['on'](_0x59c124(0x233),this[_0x59c124(0x270)]);}[_0x9e6dbd(0x201)](_0x553477){const _0x2f11d9=_0x9e6dbd;this['clientBuffer']+=_0x553477;const _0x59ef56=this['clientBuffer'][_0x2f11d9(0x1e1)]('\x0a');this[_0x2f11d9(0x239)]=_0x59ef56[_0x2f11d9(0x1f8)]();for(const _0x49dc47 of _0x59ef56){const _0x17e923=_0x49dc47['trim']();if(!_0x17e923)continue;try{const _0x4d7c97=JSON[_0x2f11d9(0x257)](_0x17e923);this[_0x2f11d9(0x1dd)](_0x4d7c97);}catch(_0x32b5e4){console['error'](_0x2f11d9(0x1c2),_0x49dc47,_0x32b5e4[_0x2f11d9(0x1f9)]);}}}async[_0x9e6dbd(0x1dd)](_0x4beae7){const _0x219147=_0x9e6dbd,{id:_0x421df6,method:_0xb11096,params:_0x4f5a8e}=_0x4beae7;if(!_0xb11096)return;if(_0xb11096===_0x219147(0x202)){let _0x2cf8a7=null;if(_0x4f5a8e){if(_0x4f5a8e[_0x219147(0x229)])_0x2cf8a7=uriToPath(_0x4f5a8e[_0x219147(0x229)]);else _0x4f5a8e[_0x219147(0x1f6)]&&(_0x2cf8a7=path[_0x219147(0x1d1)](_0x4f5a8e[_0x219147(0x1f6)]));}if(_0x2cf8a7){try{_0x2cf8a7=fs['realpathSync'](_0x2cf8a7);}catch(_0x2e8c66){_0x2cf8a7=path['resolve'](_0x2cf8a7);}_0x2cf8a7=findProjectRoot(_0x2cf8a7);if(fs['existsSync'](_0x2cf8a7)&&_0x2cf8a7!==this[_0x219147(0x258)]){console[_0x219147(0x1fd)](_0x219147(0x288)+this[_0x219147(0x258)]+_0x219147(0x1f0)+_0x2cf8a7);if(this[_0x219147(0x24d)])for(const _0x2c74ae of Object[_0x219147(0x1db)](this[_0x219147(0x24d)])){_0x2c74ae[_0x219147(0x1d4)]();}this[_0x219147(0x258)]=_0x2cf8a7,this[_0x219147(0x24d)]=spawnBackends(this[_0x219147(0x258)]);for(const _0x55df42 of Object[_0x219147(0x1db)](this[_0x219147(0x24d)])){_0x55df42[_0x219147(0x26f)]();}}}Promise[_0x219147(0x23d)](Object[_0x219147(0x1db)](this['backends'])[_0x219147(0x272)](_0x89ac5e=>_0x89ac5e[_0x219147(0x247)]('initialize',_0x4f5a8e)[_0x219147(0x1c5)](_0x9753bd=>{const _0x357a9b=_0x219147;console[_0x357a9b(0x1fd)](_0x357a9b(0x266)+(_0x89ac5e[_0x357a9b(0x24c)]||_0x89ac5e[_0x357a9b(0x262)])+':',_0x9753bd[_0x357a9b(0x1f9)]);})));const _0x2f90bd={};_0x2f90bd[_0x219147(0x22e)]=![];const _0x68b9ab={};_0x68b9ab['tools']=_0x2f90bd;const _0x995b58={};_0x995b58['name']=_0x219147(0x1ea),_0x995b58[_0x219147(0x211)]=_0x219147(0x22d);const _0x335ab5={};_0x335ab5[_0x219147(0x27c)]=_0x4f5a8e[_0x219147(0x27c)]||_0x219147(0x208),_0x335ab5['capabilities']=_0x68b9ab,_0x335ab5[_0x219147(0x1dc)]=_0x995b58;const _0x497c8f={};_0x497c8f[_0x219147(0x26e)]=_0x219147(0x23c),_0x497c8f['id']=_0x421df6,_0x497c8f[_0x219147(0x1f7)]=_0x335ab5;const _0x4d4b12=_0x497c8f;this[_0x219147(0x219)](_0x4d4b12);return;}if(_0xb11096===_0x219147(0x248)){try{const _0x5924d8=Object['entries'](this[_0x219147(0x24d)])[_0x219147(0x272)](async([_0x15e242,_0x11bae1])=>{const _0x3d40a2=_0x219147;try{const _0x12bbb6=await _0x11bae1[_0x3d40a2(0x247)]('tools/list'),_0x4f84fc=_0x12bbb6&&_0x12bbb6[_0x3d40a2(0x1f7)]&&_0x12bbb6[_0x3d40a2(0x1f7)]['tools']||[];return translateToolList(_0x4f84fc,_0x15e242);}catch(_0x49f4a1){return console[_0x3d40a2(0x1fd)](_0x3d40a2(0x1e2)+_0x15e242+':',_0x49f4a1[_0x3d40a2(0x1f9)]),[];}}),_0x46d16a=await Promise['all'](_0x5924d8),_0x1d2ac2=_0x46d16a[_0x219147(0x1de)](),_0x31e8e7={};_0x31e8e7[_0x219147(0x24f)]=_0x219147(0x268),_0x31e8e7[_0x219147(0x1c6)]={},_0x31e8e7[_0x219147(0x1d6)]=[];const _0x4d6f99={};_0x4d6f99[_0x219147(0x262)]='mcp_agent_health',_0x4d6f99[_0x219147(0x22c)]='Returns\x20the\x20health\x20status\x20of\x20all\x20MCP\x20Agent\x20backend\x20services.\x20Use\x20this\x20to\x20diagnose\x20connectivity\x20issues.',_0x4d6f99[_0x219147(0x1f5)]=_0x31e8e7,_0x1d2ac2[_0x219147(0x24e)](_0x4d6f99);const _0x4b96ee=this[_0x219147(0x20f)]();console[_0x219147(0x1fd)](_0x219147(0x279)+_0x1d2ac2[_0x219147(0x1cc)]+_0x219147(0x281)+_0x4b96ee);const _0x17f0c6={};_0x17f0c6[_0x219147(0x237)]=_0x1d2ac2;const _0x2ef8db={};_0x2ef8db['jsonrpc']='2.0',_0x2ef8db['id']=_0x421df6,_0x2ef8db['result']=_0x17f0c6;const _0x89cb34=_0x2ef8db;this['writeToClient'](_0x89cb34);}catch(_0x29a69d){this[_0x219147(0x242)](_0x421df6,-0x7f5b,_0x219147(0x25f)+_0x29a69d[_0x219147(0x1f9)]);}return;}if(_0xb11096===_0x219147(0x1df)){const _0x14a6cf=_0x4f5a8e[_0x219147(0x262)];if(_0x14a6cf==='mcp_agent_health'){const _0x574ece={};for(const [_0xad8bef,_0x967198]of Object[_0x219147(0x283)](this[_0x219147(0x24d)])){_0x574ece[_0xad8bef]=_0x967198['getHealthStatus']();}const _0x57cfe2={'jsonrpc':_0x219147(0x23c),'id':_0x421df6,'result':{'content':[{'type':_0x219147(0x1d3),'text':JSON[_0x219147(0x231)](_0x574ece,null,0x2)}]}};this['writeToClient'](_0x57cfe2);return;}const _0x4489f9=mapExposedToOriginal(_0x14a6cf);if(!_0x4489f9)return this['writeError'](_0x421df6,-0x7f59,_0x219147(0x238)+_0x14a6cf);try{const _0x2e4afc=this[_0x219147(0x24d)][_0x4489f9[_0x219147(0x1c1)]];if(!_0x2e4afc)return this[_0x219147(0x242)](_0x421df6,-0x7f5b,'Target\x20backend\x20'+_0x4489f9[_0x219147(0x1c1)]+_0x219147(0x21b));const _0x3a8ce9={..._0x4f5a8e};_0x3a8ce9[_0x219147(0x262)]=_0x4489f9['originalName'];const _0xf4d51d={..._0x4beae7};_0xf4d51d['params']=_0x3a8ce9;const _0x4a1a85=_0xf4d51d,_0x4aa109=await _0x2e4afc['forwardRequest'](_0x4a1a85);this['writeToClient'](_0x4aa109);}catch(_0x6624c9){this[_0x219147(0x242)](_0x421df6,-0x7f5b,_0x219147(0x1fa)+_0x6624c9[_0x219147(0x1f9)]);}return;}for(const _0x39491f of Object['values'](this['backends'])){_0x39491f[_0x219147(0x1da)]&&_0x39491f['child'][_0x219147(0x25e)][_0x219147(0x25b)](JSON[_0x219147(0x231)](_0x4beae7)+'\x0a');}}[_0x9e6dbd(0x219)](_0x41363e){const _0x3c0b2c=_0x9e6dbd;this[_0x3c0b2c(0x27e)][_0x3c0b2c(0x25b)](JSON[_0x3c0b2c(0x231)](_0x41363e)+'\x0a');}[_0x9e6dbd(0x242)](_0x2fead3,_0xdaa4a9,_0x1f1725){const _0x532f7e=_0x9e6dbd,_0x4df356={};_0x4df356['code']=_0xdaa4a9,_0x4df356[_0x532f7e(0x1f9)]=_0x1f1725;const _0x1941a7={};_0x1941a7[_0x532f7e(0x26e)]=_0x532f7e(0x23c),_0x1941a7['id']=_0x2fead3,_0x1941a7[_0x532f7e(0x1fd)]=_0x4df356;const _0x42f4c1=_0x1941a7;this[_0x532f7e(0x219)](_0x42f4c1);}[_0x9e6dbd(0x1d4)](){const _0xa48657=_0x9e6dbd;this[_0xa48657(0x200)]=![];this[_0xa48657(0x22f)]&&(clearInterval(this['heartbeatInterval']),this[_0xa48657(0x22f)]=null);this[_0xa48657(0x270)]&&(process[_0xa48657(0x25e)][_0xa48657(0x240)](_0xa48657(0x233),this[_0xa48657(0x270)]),this[_0xa48657(0x270)]=null,process[_0xa48657(0x25e)][_0xa48657(0x1c7)]());if(this['backends'])for(const _0x54687b of Object[_0xa48657(0x1db)](this[_0xa48657(0x24d)])){_0x54687b[_0xa48657(0x1d4)]();}}[_0x9e6dbd(0x20f)](){const _0x4637ee=_0x9e6dbd;if(!this[_0x4637ee(0x24d)])return _0x4637ee(0x210);return Object['entries'](this[_0x4637ee(0x24d)])['map'](([_0x52552a,_0x523c57])=>{const _0x4bb42f=_0x4637ee,_0x45e3e3=_0x523c57[_0x4bb42f(0x1d9)](),_0x4b2588=_0x45e3e3[_0x4bb42f(0x250)]===_0x4bb42f(0x285)?'✅':_0x45e3e3['state']==='crashed'?'❌':_0x45e3e3[_0x4bb42f(0x250)]===_0x4bb42f(0x20c)?'🔄':'⏳';return''+_0x4b2588+_0x45e3e3[_0x4bb42f(0x24c)]+'('+_0x45e3e3['state']+')';})[_0x4637ee(0x253)](',\x20');}}const _0x3ab55c={};function _0xfab1(_0x33d670,_0x517329){_0x33d670=_0x33d670-0x1c1;const _0x9ad58=_0x9ad5();let _0xfab123=_0x9ad58[_0x33d670];if(_0xfab1['nNWTRc']===undefined){var _0xb6df80=function(_0x3c61d0){const _0x21fc89='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x230c05='',_0x5137c6='';for(let _0x462270=0x0,_0x169b24,_0x470665,_0x22e528=0x0;_0x470665=_0x3c61d0['charAt'](_0x22e528++);~_0x470665&&(_0x169b24=_0x462270%0x4?_0x169b24*0x40+_0x470665:_0x470665,_0x462270++%0x4)?_0x230c05+=String['fromCharCode'](0xff&_0x169b24>>(-0x2*_0x462270&0x6)):0x0){_0x470665=_0x21fc89['indexOf'](_0x470665);}for(let _0x30df83=0x0,_0x2571e4=_0x230c05['length'];_0x30df83<_0x2571e4;_0x30df83++){_0x5137c6+='%'+('00'+_0x230c05['charCodeAt'](_0x30df83)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5137c6);};_0xfab1['JSAQjm']=_0xb6df80,_0xfab1['rvobgV']={},_0xfab1['nNWTRc']=!![];}const _0x7c1042=_0x9ad58[0x0],_0x42219d=_0x33d670+_0x7c1042,_0x46e611=_0xfab1['rvobgV'][_0x42219d];return!_0x46e611?(_0xfab123=_0xfab1['JSAQjm'](_0xfab123),_0xfab1['rvobgV'][_0x42219d]=_0xfab123):_0xfab123=_0x46e611,_0xfab123;}_0x3ab55c['ProxyServer']=ProxyServer,module[_0x9e6dbd(0x218)]=_0x3ab55c;if(require[_0x9e6dbd(0x217)]===module){const server=new ProxyServer();server[_0x9e6dbd(0x26f)]()[_0x9e6dbd(0x1c5)](_0x3d8583=>{const _0x2eec5f=_0x9e6dbd;console[_0x2eec5f(0x1fd)]('Failed\x20to\x20start\x20ProxyServer:',_0x3d8583[_0x2eec5f(0x1f9)]),process['exit'](0x1);});}
@@ -85,6 +85,19 @@ Optional design tool integration for FE/mobile. See `docs/agents/design-config.m
85
85
  - Figma: `design-read-figma` (extract layout/styles), `design-get-figma-images` (download assets)
86
86
  - Stitch: `design-stitch-generate` (create screen), `design-stitch-get-code` (pull code), `design-stitch-get-dna` (design tokens)
87
87
 
88
+ ### Google Drive tools
89
+
90
+ Google Drive addon enables online document collaboration. See `docs/agents/gdrive-config.md`.
91
+
92
+ **Quick reference:**
93
+ - Search files: `gdrive-search`
94
+ - List folder: `gdrive-list-folder`
95
+ - Upload file: `gdrive-upload-file` (supports auto-convert .xlsx→Sheets, .docx→Docs)
96
+ - Read sheet: `gdrive-read-sheet`
97
+ - Update sheet: `gdrive-update-sheet-cell`
98
+ - Read doc: `gdrive-read-doc`
99
+ - Share file: `gdrive-share-file`
100
+
88
101
  ### ASO tools
89
102
 
90
103
  ASO preset integrates all 40 ASO skills under `.agents/skills/aso-*`.
@@ -0,0 +1,57 @@
1
+ # Google Drive Configuration
2
+
3
+ QC, BA, and PM presets can connect to Google Drive to enable online document generation and live collaboration.
4
+
5
+ ## Setup Steps
6
+
7
+ ### 1. Create a Google Cloud Project
8
+ - Go to the [Google Cloud Console](https://console.cloud.google.com).
9
+ - Create a new project (e.g. "Bank Project MCP Client").
10
+ - Under "APIs & Services" > "Library", search for and enable:
11
+ - **Google Drive API**
12
+ - **Google Sheets API**
13
+ - **Google Docs API**
14
+
15
+ ### 2. Configure OAuth Consent Screen
16
+ - Go to "OAuth consent screen".
17
+ - Choose "External" (or "Internal" if using Workspace).
18
+ - Add your test user email addresses.
19
+ - Add scopes:
20
+ - `../auth/drive`
21
+ - `../auth/spreadsheets`
22
+ - `../auth/documents`
23
+
24
+ ### 3. Create Desktop Credentials
25
+ - Go to "Credentials" > "+ Create Credentials" > "OAuth client ID".
26
+ - Select **Desktop app** as the application type.
27
+ - Click "Create" and download the JSON credentials file.
28
+ - Save the file to your machine (e.g. `C:\Users\admin\google-oauth.json`).
29
+
30
+ ### 4. Authenticate Locally
31
+ Run the authorization CLI to link your account:
32
+ ```bash
33
+ npx @piotr-agier/google-drive-mcp auth
34
+ ```
35
+ This will open your browser and prompt you to log in to your Google Account. Once authenticated, a token file `tokens.json` will be saved to your local config directory (e.g. `~/.config/google-drive-mcp/tokens.json`).
36
+
37
+ ### 5. Add Environment Variables
38
+ Add the following to your active `.env` file in the project workspace:
39
+ ```bash
40
+ GOOGLE_DRIVE_OAUTH_PATH="C:/Users/admin/google-oauth.json"
41
+ GOOGLE_DRIVE_TOKEN_PATH="C:/Users/admin/.config/google-drive-mcp/tokens.json"
42
+ GOOGLE_DRIVE_FOLDER_ID="1A2B3C4D5E6F7G8H9I0J" # Optional default folder ID
43
+ ```
44
+
45
+ ---
46
+
47
+ ## Tool Reference
48
+
49
+ The following tools will be made available when the `google-drive` preset addon is enabled:
50
+
51
+ | Tool | Action | Description |
52
+ |---|---|---|
53
+ | `gdrive-search` | Search files | Search files across your Google Drive |
54
+ | `gdrive-list-folder` | List contents | List files and subfolders in a folder |
55
+ | `gdrive-upload-file` | Upload file | Upload local `.xlsx` or `.docx` and auto-convert to Sheets/Docs |
56
+ | `gdrive-update-sheet-cell` | Update cell | Modify a specific cell in a Google Sheet |
57
+ | `gdrive-share-file` | Share file | Share a document with a user email address |
@@ -37,6 +37,16 @@
37
37
  | Connect two related concepts | `link_knowledge` | Build relationship graph |
38
38
  | Remove outdated information | `forget` | Keep knowledge graph clean |
39
39
 
40
+ ### Google Drive & Online Documents
41
+
42
+ | Situation | Use Tool | Why |
43
+ |---|---|---|
44
+ | Search files on project Drive | `gdrive-search` | Find specs, testcases, sheets |
45
+ | List files inside folder | `gdrive-list-folder` | Browse project folder structure |
46
+ | Upload specs/testcase (xlsx/docx) | `gdrive-upload-file` | Set `convertToGoogleFormat: true` to auto-convert to Sheets/Docs |
47
+ | Update specific row/cell in Sheets | `gdrive-update-sheet-cell` | Modify cells for real-time QC collaboration |
48
+ | Share sheet/doc with bank stakeholder | `gdrive-share-file` | Invite collaborators (editor/viewer) |
49
+
40
50
  ---
41
51
 
42
52
  ## 🔄 Index Management — When to Rebuild