apt-mcp-agent-setup 1.2.10 → 1.2.12
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 +5 -0
- package/bin/cli.js +1 -1
- package/bundle/NOTICES.md +0 -0
- package/bundle/core.enc +0 -0
- package/bundle/mcp-rules.enc +0 -0
- package/bundle/skills-aso.enc +0 -0
- package/bundle/skills-ba.enc +0 -0
- package/bundle/skills-base.enc +0 -0
- package/bundle/skills-be.enc +0 -0
- package/bundle/skills-design.enc +0 -0
- package/bundle/skills-fe.enc +0 -0
- package/bundle/skills-mobile.enc +0 -0
- package/bundle/skills-pm.enc +0 -0
- package/integrity-manifest.json +16 -16
- package/package.json +1 -1
- package/src/installer/global-setup.js +1 -1
- package/src/installer/platform-config.js +1 -1
- package/src/installer/prerequisites.js +1 -1
- package/src/installer/project-setup.js +1 -1
- package/src/installer/setup-wizard.js +1 -1
- package/src/license/crypto.js +1 -1
- package/src/license/fingerprint.js +1 -1
- package/src/license/terms.js +1 -1
- package/src/license/verify.js +1 -1
- package/src/presets/index.js +1 -1
- package/src/proxy/backends.js +1 -1
- package/src/proxy/router.config.js +1 -1
- package/src/proxy/router.js +1 -1
- package/src/proxy/server.js +1 -1
- package/src/templates/mcp-tools.md +3 -3
package/src/proxy/server.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x8b5636=_0x53a7;(function(_0x39520d,_0x58e174){const _0x1f11a5=_0x53a7,_0x1efcdc=_0x39520d();while(!![]){try{const _0x56563c=parseInt(_0x1f11a5(0x1c1))/0x1+parseInt(_0x1f11a5(0x161))/0x2+parseInt(_0x1f11a5(0x1e4))/0x3+-parseInt(_0x1f11a5(0x1aa))/0x4*(-parseInt(_0x1f11a5(0x1b6))/0x5)+parseInt(_0x1f11a5(0x19f))/0x6*(parseInt(_0x1f11a5(0x1e2))/0x7)+-parseInt(_0x1f11a5(0x19d))/0x8*(parseInt(_0x1f11a5(0x1b4))/0x9)+-parseInt(_0x1f11a5(0x1c7))/0xa*(parseInt(_0x1f11a5(0x1e0))/0xb);if(_0x56563c===_0x58e174)break;else _0x1efcdc['push'](_0x1efcdc['shift']());}catch(_0x3984de){_0x1efcdc['push'](_0x1efcdc['shift']());}}}(_0x33b0,0x699e1));const fs=require('fs'),path=require(_0x8b5636(0x200)),os=require('os'),http=require('http'),https=require(_0x8b5636(0x1c3)),{verifyLicense}=require('../license/verify.js'),{spawnBackends}=require('./backends.js'),{translateToolList,mapExposedToOriginal}=require(_0x8b5636(0x1a3));function httpRequest(_0x552a39,_0x1f2a5d={}){return new Promise((_0x4ac9a6,_0x2eb7b2)=>{const _0x40534d=_0x53a7;try{const _0x4620a1=new URL(_0x552a39),_0x12da12=_0x4620a1['protocol']===_0x40534d(0x18b)?https:http,_0x5d893d={'User-Agent':'Mozilla/5.0\x20(compatible;\x20Node/'+process[_0x40534d(0x16f)]+')',..._0x1f2a5d[_0x40534d(0x201)]},_0x2956ac=_0x5d893d;if(_0x1f2a5d[_0x40534d(0x1f1)]){const _0xa7ed06=typeof _0x1f2a5d[_0x40534d(0x1f1)]===_0x40534d(0x168)?_0x1f2a5d['body']:JSON['stringify'](_0x1f2a5d['body']);!_0x2956ac['Content-Length']&&!_0x2956ac[_0x40534d(0x188)]&&(_0x2956ac[_0x40534d(0x1f5)]=Buffer[_0x40534d(0x1b0)](_0xa7ed06));}const _0xde6f94={};_0xde6f94[_0x40534d(0x174)]=_0x1f2a5d[_0x40534d(0x174)]||_0x40534d(0x1bf),_0xde6f94[_0x40534d(0x1a2)]=_0x4620a1[_0x40534d(0x1a2)],_0xde6f94[_0x40534d(0x1b2)]=_0x4620a1['port']||(_0x4620a1[_0x40534d(0x1f6)]===_0x40534d(0x18b)?0x1bb:0x50),_0xde6f94[_0x40534d(0x200)]=_0x4620a1[_0x40534d(0x1e3)]+_0x4620a1['search'],_0xde6f94[_0x40534d(0x201)]=_0x2956ac;const _0x43da94=_0xde6f94,_0x44fd15=_0x12da12[_0x40534d(0x16a)](_0x43da94,_0x2ea9db=>{const _0x2ca63f=_0x40534d;let _0x5929ea='';_0x2ea9db['on'](_0x2ca63f(0x1cf),_0x3931e8=>{_0x5929ea+=_0x3931e8;}),_0x2ea9db['on'](_0x2ca63f(0x1fc),()=>{const _0xbdfd55=_0x2ca63f;_0x4ac9a6({'ok':_0x2ea9db[_0xbdfd55(0x1e7)]>=0xc8&&_0x2ea9db[_0xbdfd55(0x1e7)]<0x12c,'status':_0x2ea9db[_0xbdfd55(0x1e7)],'json':async()=>JSON[_0xbdfd55(0x167)](_0x5929ea),'text':async()=>_0x5929ea});});});_0x44fd15['on'](_0x40534d(0x1e1),_0x40bb18=>{_0x2eb7b2(_0x40bb18);}),_0x1f2a5d[_0x40534d(0x193)]&&(_0x1f2a5d[_0x40534d(0x193)]['aborted']?_0x44fd15[_0x40534d(0x179)](new Error(_0x40534d(0x1f2))):_0x1f2a5d[_0x40534d(0x193)][_0x40534d(0x1d8)](_0x40534d(0x1fa),()=>{const _0x25cd4b=_0x40534d;_0x44fd15[_0x25cd4b(0x179)](new Error(_0x25cd4b(0x1f2)));})),_0x1f2a5d[_0x40534d(0x1f1)]&&_0x44fd15[_0x40534d(0x1c0)](_0x1f2a5d[_0x40534d(0x1f1)]),_0x44fd15[_0x40534d(0x1fc)]();}catch(_0xf4f3db){_0x2eb7b2(_0xf4f3db);}});}class ProxyServer{constructor(_0x27ee6c={}){const _0x22b121=_0x8b5636;this['projectPath']=_0x27ee6c[_0x22b121(0x184)]||process[_0x22b121(0x1e6)](),this[_0x22b121(0x165)]=_0x27ee6c[_0x22b121(0x165)]||this[_0x22b121(0x1b3)](),this[_0x22b121(0x1c2)]=_0x27ee6c[_0x22b121(0x1c2)],this['publicKey']=_0x27ee6c[_0x22b121(0x1fe)]||_0x27ee6c[_0x22b121(0x1eb)],this[_0x22b121(0x177)]=null,this[_0x22b121(0x1ce)]='',this[_0x22b121(0x199)]=![],this[_0x22b121(0x1b5)]=_0x27ee6c[_0x22b121(0x1b5)]||process[_0x22b121(0x1b5)],this[_0x22b121(0x170)]=_0x27ee6c[_0x22b121(0x170)]||path[_0x22b121(0x176)](__dirname,'../..','integrity-manifest.json');}[_0x8b5636(0x1b3)](){const _0xbad7b7=_0x8b5636,_0x433e8b=path[_0xbad7b7(0x176)](os[_0xbad7b7(0x1b7)](),'.anhdh',_0xbad7b7(0x1e5));if(fs[_0xbad7b7(0x187)](_0x433e8b))return fs[_0xbad7b7(0x1ee)](_0x433e8b,_0xbad7b7(0x194))['trim']();return null;}async[_0x8b5636(0x1be)](){const _0x2d3482=_0x8b5636,_0x11cd58=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(_0x11cd58||!this['licenseKey'])return;const _0x61052=this[_0x2d3482(0x165)][_0x2d3482(0x163)]('.');if(_0x61052[_0x2d3482(0x16b)]!==0x3)return;let _0x4b8d3c;try{_0x4b8d3c=JSON[_0x2d3482(0x167)](Buffer[_0x2d3482(0x1cb)](_0x61052[0x1],'base64url')[_0x2d3482(0x17b)](_0x2d3482(0x194)));}catch(_0x57d12b){return;}if(!_0x4b8d3c||!_0x4b8d3c[_0x2d3482(0x198)])return;const _0x49dd3d=0x6*0x18*0xe10*0x3e8,_0x3b1d71=_0x4b8d3c[_0x2d3482(0x198)]-Date[_0x2d3482(0x1d6)]();if(_0x3b1d71<_0x49dd3d){console[_0x2d3482(0x1e1)](_0x2d3482(0x18f));const _0x1d35f6=process.env.MCP_ACTIVATION_URL||_0x2d3482(0x175),_0x36affd=_0x1d35f6+_0x2d3482(0x160),_0x3456cc=new AbortController(),_0x353e62=setTimeout(()=>_0x3456cc[_0x2d3482(0x1fa)](),0x1388);try{const _0x2f5b2d={};_0x2f5b2d[_0x2d3482(0x17a)]='application/json';const _0x2706f3={};_0x2706f3['token']=this['licenseKey'];const _0x11dc13=await httpRequest(_0x36affd,{'method':_0x2d3482(0x1d1),'headers':_0x2f5b2d,'body':JSON[_0x2d3482(0x1c8)](_0x2706f3),'signal':_0x3456cc[_0x2d3482(0x193)]});clearTimeout(_0x353e62);if(_0x11dc13[_0x2d3482(0x1f0)]===0x193){console['error'](_0x2d3482(0x1a7)),process[_0x2d3482(0x1d4)](0x1);return;}if(_0x11dc13[_0x2d3482(0x1f0)]===0x191){console[_0x2d3482(0x1e1)](_0x2d3482(0x1d3)),process['exit'](0x1);return;}if(!_0x11dc13['ok']){console['error'](_0x2d3482(0x19c)+_0x11dc13['status']+_0x2d3482(0x1ab));return;}const _0x5cee4a=await _0x11dc13[_0x2d3482(0x190)]();if(_0x5cee4a&&_0x5cee4a['token']){this['licenseKey']=_0x5cee4a[_0x2d3482(0x1af)];const _0x3d008b=path[_0x2d3482(0x176)](os[_0x2d3482(0x1b7)](),_0x2d3482(0x173),_0x2d3482(0x1e5));try{const _0x36e59c={};_0x36e59c[_0x2d3482(0x1de)]=!![],fs[_0x2d3482(0x1ae)](path[_0x2d3482(0x1c5)](_0x3d008b),_0x36e59c),fs['writeFileSync'](_0x3d008b,_0x5cee4a[_0x2d3482(0x1af)],_0x2d3482(0x194)),console[_0x2d3482(0x1e1)](_0x2d3482(0x1df));}catch(_0x34e9d1){console[_0x2d3482(0x1e1)](_0x2d3482(0x1d0),_0x34e9d1[_0x2d3482(0x1b1)]);}}}catch(_0x27e7c1){clearTimeout(_0x353e62),console['error']('[MCP\x20Agent]\x20Heartbeat\x20check\x20failed\x20or\x20timed\x20out:',_0x27e7c1[_0x2d3482(0x1b1)],_0x2d3482(0x1ab));}}}async[_0x8b5636(0x1d5)](){const _0x55ac57=_0x8b5636;console[_0x55ac57(0x1e1)](_0x55ac57(0x1f7)+this[_0x55ac57(0x184)]);if(!this[_0x55ac57(0x1fe)]){if(process.env.MCP_ADMIN_DIR){const _0x5b144a=path['join'](process.env.MCP_ADMIN_DIR,_0x55ac57(0x1a0));fs[_0x55ac57(0x187)](_0x5b144a)&&(this[_0x55ac57(0x1fe)]=fs[_0x55ac57(0x1ee)](_0x5b144a,_0x55ac57(0x194))['trim']());}if(!this['publicKey']){let _0x1a8493=__dirname;while(_0x1a8493){const _0x3e3d3c=path[_0x55ac57(0x176)](_0x1a8493,_0x55ac57(0x1e9),'master.public.pem');if(fs[_0x55ac57(0x187)](_0x3e3d3c)){this[_0x55ac57(0x1fe)]=fs[_0x55ac57(0x1ee)](_0x3e3d3c,_0x55ac57(0x194))['trim']();break;}const _0x44f189=path[_0x55ac57(0x1c5)](_0x1a8493);if(_0x44f189===_0x1a8493)break;_0x1a8493=_0x44f189;}}}const _0x3c0e47=this[_0x55ac57(0x170)],_0x5438df=!__dirname['replace'](/\\/g,'/')[_0x55ac57(0x163)]('/')[_0x55ac57(0x185)](_0x55ac57(0x16e)),_0x39d63e=process.env.MCP_SKIP_INTEGRITY_CHECK==='1'||_0x5438df&&!fs[_0x55ac57(0x187)](_0x3c0e47);if(!_0x39d63e){const _0x2005eb=require(_0x55ac57(0x164));if(!fs[_0x55ac57(0x187)](_0x3c0e47)){console[_0x55ac57(0x1e1)](_0x55ac57(0x1c6)),process[_0x55ac57(0x1d4)](0x1);return;}let _0xd47032;try{_0xd47032=JSON[_0x55ac57(0x167)](fs[_0x55ac57(0x1ee)](_0x3c0e47,'utf8'));}catch(_0x5a42bd){console[_0x55ac57(0x1e1)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20Failed\x20to\x20parse\x20integrity-manifest.json.\x20Exiting.'),process['exit'](0x1);return;}if(!_0xd47032[_0x55ac57(0x171)]||!_0xd47032[_0x55ac57(0x1ed)]){console[_0x55ac57(0x1e1)](_0x55ac57(0x1ff)),process[_0x55ac57(0x1d4)](0x1);return;}const _0x1e735b=this['publicKey']||require(_0x55ac57(0x189))[_0x55ac57(0x172)];try{const _0x58c206=JSON[_0x55ac57(0x1c8)](_0xd47032[_0x55ac57(0x171)]),_0x48c522=Buffer[_0x55ac57(0x1cb)](_0xd47032[_0x55ac57(0x1ed)],_0x55ac57(0x18c)),_0x57d5d0=_0x2005eb[_0x55ac57(0x1f3)](null,Buffer['from'](_0x58c206),_0x1e735b,_0x48c522);if(!_0x57d5d0){console[_0x55ac57(0x1e1)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20Invalid\x20signature.\x20Exiting.'),process[_0x55ac57(0x1d4)](0x1);return;}}catch(_0x1af7b3){console[_0x55ac57(0x1e1)](_0x55ac57(0x181)),process[_0x55ac57(0x1d4)](0x1);return;}const _0x1d8690=path[_0x55ac57(0x176)](__dirname,_0x55ac57(0x178));for(const [_0x4c04a9,_0x51176f]of Object[_0x55ac57(0x195)](_0xd47032[_0x55ac57(0x171)])){const _0x5dc5b2=path[_0x55ac57(0x176)](_0x1d8690,_0x4c04a9);if(!fs['existsSync'](_0x5dc5b2)){console['error'](_0x55ac57(0x1ef)+_0x4c04a9+_0x55ac57(0x197)),process[_0x55ac57(0x1d4)](0x1);return;}try{const _0x51c2bf=fs[_0x55ac57(0x1ee)](_0x5dc5b2),_0xff3b1b=_0x2005eb[_0x55ac57(0x17f)](_0x55ac57(0x19b))[_0x55ac57(0x18a)](_0x51c2bf)['digest']('hex');if(_0xff3b1b!==_0x51176f){console['error'](_0x55ac57(0x1ef)+_0x4c04a9+_0x55ac57(0x197)),process[_0x55ac57(0x1d4)](0x1);return;}}catch(_0x2e10ee){console[_0x55ac57(0x1e1)](_0x55ac57(0x1ef)+_0x4c04a9+'\x20modified.\x20Exiting.'),process['exit'](0x1);return;}}}const _0x7ea585=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(!_0x7ea585){if(!this['deviceId']){const {getFingerprint:_0x1b92e3}=require(_0x55ac57(0x1a4));this[_0x55ac57(0x1c2)]=_0x1b92e3();}const _0x4e7d25=verifyLicense(this['licenseKey'],this[_0x55ac57(0x1c2)],this[_0x55ac57(0x1fe)]);if(!_0x4e7d25[_0x55ac57(0x17c)]){if(_0x4e7d25[_0x55ac57(0x1ac)]===_0x55ac57(0x1da)){const _0x36ffe7=_0x4e7d25[_0x55ac57(0x1db)]||{},_0x36154f=_0x36ffe7[_0x55ac57(0x198)]?new Date(_0x36ffe7[_0x55ac57(0x198)])[_0x55ac57(0x1ad)]()['split']('T')[0x0]:'unknown';console['error'](_0x55ac57(0x19e)+_0x36154f+_0x55ac57(0x182));}else console[_0x55ac57(0x1e1)]('[MCP\x20Agent]\x20License\x20key\x20verification\x20failed:\x20'+_0x4e7d25[_0x55ac57(0x1ac)]+_0x55ac57(0x1a6));process[_0x55ac57(0x1d4)](0x1);return;}console[_0x55ac57(0x1e1)](_0x55ac57(0x1b9)+_0x4e7d25[_0x55ac57(0x1db)]['user']),await this['performHeartbeat'](),this[_0x55ac57(0x17d)]=setInterval(()=>{const _0x3830e7=_0x55ac57;this[_0x3830e7(0x1be)]()[_0x3830e7(0x1dd)](_0x4c1530=>{const _0x338440=_0x3830e7;console[_0x338440(0x1e1)]('[MCP\x20Agent]\x20Periodic\x20heartbeat\x20error:',_0x4c1530[_0x338440(0x1b1)]);});},0x18*0x3c*0x3c*0x3e8);}this[_0x55ac57(0x177)]=spawnBackends(this[_0x55ac57(0x184)]),this['running']=!![];for(const _0x4b2fcf of Object[_0x55ac57(0x1b8)](this['backends'])){_0x4b2fcf[_0x55ac57(0x1d5)]();}this['stdinListener']=_0x37c1f4=>{const _0x2bfee0=_0x55ac57;this[_0x2bfee0(0x1bc)](_0x37c1f4[_0x2bfee0(0x17b)]());},process[_0x55ac57(0x192)]['on']('data',this[_0x55ac57(0x18d)]);}[_0x8b5636(0x1bc)](_0x17bd9f){const _0x4e4330=_0x8b5636;this[_0x4e4330(0x1ce)]+=_0x17bd9f;const _0xd0bd89=this[_0x4e4330(0x1ce)]['split']('\x0a');this[_0x4e4330(0x1ce)]=_0xd0bd89[_0x4e4330(0x18e)]();for(const _0x1448f0 of _0xd0bd89){const _0x3b0ad1=_0x1448f0['trim']();if(!_0x3b0ad1)continue;try{const _0x37783c=JSON['parse'](_0x3b0ad1);this[_0x4e4330(0x1a9)](_0x37783c);}catch(_0x17df1c){console[_0x4e4330(0x1e1)](_0x4e4330(0x1d7),_0x1448f0,_0x17df1c[_0x4e4330(0x1b1)]);}}}async[_0x8b5636(0x1a9)](_0x2f6b59){const _0x5e0229=_0x8b5636,{id:_0x41cb6a,method:_0x39b90a,params:_0x23076f}=_0x2f6b59;if(!_0x39b90a)return;if(_0x39b90a===_0x5e0229(0x1cc)){Promise['all'](Object[_0x5e0229(0x1b8)](this[_0x5e0229(0x177)])[_0x5e0229(0x169)](_0x218d99=>_0x218d99['sendRequest'](_0x5e0229(0x1cc),_0x23076f)[_0x5e0229(0x1dd)](_0x39f8a7=>{const _0x2133ae=_0x5e0229;console[_0x2133ae(0x1e1)](_0x2133ae(0x17e)+(_0x218d99['displayName']||_0x218d99[_0x2133ae(0x1dc)])+':',_0x39f8a7[_0x2133ae(0x1b1)]);})));const _0xe836aa={};_0xe836aa[_0x5e0229(0x1c9)]=![];const _0x5db829={};_0x5db829['tools']=_0xe836aa;const _0x5bbb3a={};_0x5bbb3a[_0x5e0229(0x1dc)]=_0x5e0229(0x1f9),_0x5bbb3a['version']=_0x5e0229(0x202);const _0x548c66={};_0x548c66['protocolVersion']=_0x23076f[_0x5e0229(0x166)]||_0x5e0229(0x1d2),_0x548c66[_0x5e0229(0x1d9)]=_0x5db829,_0x548c66[_0x5e0229(0x183)]=_0x5bbb3a;const _0x36f913={};_0x36f913[_0x5e0229(0x16c)]=_0x5e0229(0x1a5),_0x36f913['id']=_0x41cb6a,_0x36f913[_0x5e0229(0x180)]=_0x548c66;const _0x1d84b6=_0x36f913;this[_0x5e0229(0x186)](_0x1d84b6);return;}if(_0x39b90a===_0x5e0229(0x1a8)){try{const _0x39eba6=Object[_0x5e0229(0x195)](this[_0x5e0229(0x177)])[_0x5e0229(0x169)](async([_0x279029,_0x5e8149])=>{const _0x3acdb4=_0x5e0229;try{const _0x4dc9ab=await _0x5e8149[_0x3acdb4(0x1ea)](_0x3acdb4(0x1a8)),_0x56952c=_0x4dc9ab&&_0x4dc9ab['result']&&_0x4dc9ab[_0x3acdb4(0x180)][_0x3acdb4(0x16d)]||[];return translateToolList(_0x56952c,_0x279029);}catch(_0x159470){return console[_0x3acdb4(0x1e1)](_0x3acdb4(0x1fd)+_0x279029+':',_0x159470['message']),[];}}),_0xbdffe=await Promise[_0x5e0229(0x1a1)](_0x39eba6),_0x358290=_0xbdffe['flat'](),_0x2825f7={};_0x2825f7[_0x5e0229(0x16d)]=_0x358290;const _0x3f7c0e={};_0x3f7c0e[_0x5e0229(0x16c)]=_0x5e0229(0x1a5),_0x3f7c0e['id']=_0x41cb6a,_0x3f7c0e[_0x5e0229(0x180)]=_0x2825f7;const _0x2377fa=_0x3f7c0e;this['writeToClient'](_0x2377fa);}catch(_0x2220f5){this[_0x5e0229(0x1bd)](_0x41cb6a,-0x7f5b,'Failed\x20to\x20query\x20tool\x20list:\x20'+_0x2220f5[_0x5e0229(0x1b1)]);}return;}if(_0x39b90a===_0x5e0229(0x1f4)){const _0x4f6458=_0x23076f[_0x5e0229(0x1dc)],_0x1194cb=mapExposedToOriginal(_0x4f6458);if(!_0x1194cb)return this[_0x5e0229(0x1bd)](_0x41cb6a,-0x7f59,_0x5e0229(0x162)+_0x4f6458);try{const _0x370385=this['backends'][_0x1194cb[_0x5e0229(0x1bb)]];if(!_0x370385)return this[_0x5e0229(0x1bd)](_0x41cb6a,-0x7f5b,'Target\x20backend\x20'+_0x1194cb[_0x5e0229(0x1bb)]+_0x5e0229(0x1cd));const _0x3be21b={..._0x23076f};_0x3be21b[_0x5e0229(0x1dc)]=_0x1194cb[_0x5e0229(0x1ec)];const _0x34daf={..._0x2f6b59};_0x34daf[_0x5e0229(0x196)]=_0x3be21b;const _0x291b6f=_0x34daf,_0x179b7d=await _0x370385[_0x5e0229(0x1f8)](_0x291b6f);this[_0x5e0229(0x186)](_0x179b7d);}catch(_0x4c49aa){this[_0x5e0229(0x1bd)](_0x41cb6a,-0x7f5b,_0x5e0229(0x19a)+_0x4c49aa[_0x5e0229(0x1b1)]);}return;}for(const _0x3a9c54 of Object[_0x5e0229(0x1b8)](this[_0x5e0229(0x177)])){_0x3a9c54[_0x5e0229(0x1ba)]&&_0x3a9c54['child']['stdin'][_0x5e0229(0x1c0)](JSON[_0x5e0229(0x1c8)](_0x2f6b59)+'\x0a');}}[_0x8b5636(0x186)](_0x3b1476){const _0x1925d6=_0x8b5636;this[_0x1925d6(0x1b5)]['write'](JSON[_0x1925d6(0x1c8)](_0x3b1476)+'\x0a');}['writeError'](_0x395385,_0x967c1d,_0x3a3184){const _0x86527d=_0x8b5636,_0x3f1a66={};_0x3f1a66['code']=_0x967c1d,_0x3f1a66[_0x86527d(0x1b1)]=_0x3a3184;const _0x6aad5d={};_0x6aad5d[_0x86527d(0x16c)]=_0x86527d(0x1a5),_0x6aad5d['id']=_0x395385,_0x6aad5d['error']=_0x3f1a66;const _0x285b2b=_0x6aad5d;this[_0x86527d(0x186)](_0x285b2b);}[_0x8b5636(0x203)](){const _0x1f1ec8=_0x8b5636;this[_0x1f1ec8(0x199)]=![];this[_0x1f1ec8(0x17d)]&&(clearInterval(this[_0x1f1ec8(0x17d)]),this[_0x1f1ec8(0x17d)]=null);this['stdinListener']&&(process[_0x1f1ec8(0x192)][_0x1f1ec8(0x1fb)](_0x1f1ec8(0x1cf),this['stdinListener']),this[_0x1f1ec8(0x18d)]=null,process['stdin']['pause']());if(this[_0x1f1ec8(0x177)])for(const _0x2641ba of Object[_0x1f1ec8(0x1b8)](this['backends'])){_0x2641ba['stop']();}}}function _0x53a7(_0xff7674,_0x15bfd6){_0xff7674=_0xff7674-0x160;const _0x33b010=_0x33b0();let _0x53a7f3=_0x33b010[_0xff7674];if(_0x53a7['SjoDYe']===undefined){var _0xe9ca02=function(_0x5c4119){const _0x5276f6='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x57a955='',_0x436bec='';for(let _0x56e2a8=0x0,_0x541723,_0x568ad7,_0x3dc97b=0x0;_0x568ad7=_0x5c4119['charAt'](_0x3dc97b++);~_0x568ad7&&(_0x541723=_0x56e2a8%0x4?_0x541723*0x40+_0x568ad7:_0x568ad7,_0x56e2a8++%0x4)?_0x57a955+=String['fromCharCode'](0xff&_0x541723>>(-0x2*_0x56e2a8&0x6)):0x0){_0x568ad7=_0x5276f6['indexOf'](_0x568ad7);}for(let _0x3a1b00=0x0,_0x525a09=_0x57a955['length'];_0x3a1b00<_0x525a09;_0x3a1b00++){_0x436bec+='%'+('00'+_0x57a955['charCodeAt'](_0x3a1b00)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x436bec);};_0x53a7['JMjKyn']=_0xe9ca02,_0x53a7['iLDQuh']={},_0x53a7['SjoDYe']=!![];}const _0x3e7154=_0x33b010[0x0],_0x57ebdc=_0xff7674+_0x3e7154,_0x464222=_0x53a7['iLDQuh'][_0x57ebdc];return!_0x464222?(_0x53a7f3=_0x53a7['JMjKyn'](_0x53a7f3),_0x53a7['iLDQuh'][_0x57ebdc]=_0x53a7f3):_0x53a7f3=_0x464222,_0x53a7f3;}const _0x2c839f={};_0x2c839f[_0x8b5636(0x1ca)]=ProxyServer,module[_0x8b5636(0x1e8)]=_0x2c839f;function _0x33b0(){const _0x3d940b=['CgfYC2u','C3rYAw5N','BwfW','CMvXDwvZDa','BgvUz3rO','ANnVBNjWyW','Dg9VBhm','zgLZDa','DMvYC2LVBG','Aw50zwDYAxr5twfUAwzLC3rqyxrO','zMLSzxm','ufjprfvdveLptL9qvujmsunFs0vz','lMfUAgrO','Bwv0Ag9K','Ahr0Chm6lY9Hz2vUDgTPDc5HBhbOyxrLy2HZlMfPl2fWAq','AM9PBG','yMfJA2vUzhm','lI4VlI4','zgvZDhjVEq','q29UDgvUDc1uExbL','Dg9tDhjPBMC','DMfSAwq','AgvHCNrIzwf0sw50zxj2ywW','w01ducbbz2vUDf0GrMfPBgvKihrVigLUAxrPywXPEMuGC2vYDMLJzsa','y3jLyxrLsgfZAa','CMvZDwX0','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGu2LNBMf0DxjLihzLCMLMAwnHDgLVBIbMywLSzwqUiev4AxrPBMCU','lIbszw5LDYbHDcbODhrWCZOVl2fUAgrOlMLVl3jLBMv3lIbfEgL0Aw5NlG','C2vYDMvYsw5MBW','ChjVAMvJDfbHDgG','Aw5JBhvKzxm','D3jPDgvuB0nSAwvUDa','zxHPC3rZu3LUyW','y29UDgvUDc1Szw5NDgG','lI4VBgLJzw5Zzs92zxjPzNKUANm','DxbKyxrL','Ahr0Chm6','yMfZzty0DxjS','C3rKAw5mAxn0zw5LCG','Cg9W','w01ducbbz2vUDf0GsgvHCNrIzwf0ignOzwnRoIb0B2TLBIbOyxmGBgvZCYb0AgfUidyGzgf5CYbYzw1HAw5PBMCUifjLzNjLC2HPBMCUlI4','ANnVBG','BwfPBG','C3rKAw4','C2LNBMfS','DxrMoa','zw50CMLLCW','CgfYyw1Z','ig1VzgLMAwvKlIbfEgL0Aw5NlG','zxHW','CNvUBMLUzW','vg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','C2HHmJu2','w01ducbbz2vUDf0GsgvHCNrIzwf0ihjLzNjLC2GGzMfPBgvKoIbtzxj2zxiGCMv0DxjUzwqG','nZuYyNnZuwvr','w01ducbbz2vUDf0GtgLJzw5ZzsbLEhbPCMvKig9Uia','nLffrgDqDq','BwfZDgvYlNb1yMXPyY5Wzw0','ywXS','Ag9ZDg5HBwu','lI9YB3v0zxiUANm','lI4VBgLJzw5Zzs9MAw5NzxjWCMLUDc5QCW','mI4W','lIbdB250ywn0ihn1ChbVCNqGyxqGC3vWCg9YDebHBMHKAc5PBY4GrxHPDgLUzY4','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGAgfZigjLzw4GCMv2B2TLzc4GrxHPDgLUzY4','Dg9VBhmVBgLZDa','AgfUzgXLq2XPzw50twvZC2fNzq','mtjItvfYC04','lIbdB250Aw51Aw5NihDPDgGGy2fJAgvKihrVA2vUlG','CMvHC29U','Dg9ju09tDhjPBMC','BwTKAxjtEw5J','Dg9Rzw4','yNL0zuXLBMD0Aa','BwvZC2fNzq','Cg9YDa','Bg9HzeXPy2vUC2vlzxK','mZa1ntvjC1fsyLq','C3rKB3v0','otmWnZK1wwD1tgPf','Ag9TzwrPCG','DMfSDwvZ','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGDMvYAwzPzwqGC3vJy2vZC2z1BgX5igzVCIb1C2vYoIa','y2HPBgq','yMfJA2vUza','AgfUzgXLq2XPzw50rgf0yq','D3jPDgvfCNjVCG','CgvYzM9YBuHLyxj0yMvHDa','r0vu','D3jPDgu','oduXmtGWAKPZv2DZ','zgv2AwnLswq','Ahr0Chm','rMfPBgvKihrVihn0yxj0ifbYB3H5u2vYDMvYoG','zgLYBMfTzq','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGAw50zwDYAxr5lw1HBMLMzxn0lMPZB24GBwLZC2LUzY4GrxHPDgLUzY4','mZe3meXlzKLiyq','C3rYAw5NAwz5','BgLZDenOyw5Nzwq','uhjVEhLtzxj2zxi','zNjVBq','Aw5PDgLHBgL6zq','igLZig5VDcbYDw5UAw5N','y2XPzw50qNvMzMvY','zgf0yq','w01ducbbz2vUDf0GrMfPBgvKihrVihnHDMuGCMvMCMvZAgvKigXPy2vUC2uGDg9Rzw4GDg8GzgLZAZO','ue9tva','mJaYnc0Xms0Wnq','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGzxHWAxjLzcbVCIbPBNzHBgLKlIbfEgL0Aw5NlG','zxHPDa','C3rHCNq','BM93','w01ducbbz2vUDf0GrMfPBgvKihrVihbHCNnLiePtt04TuLbdig1LC3nHz2uGzNjVBsbJBgLLBNq6','ywrKrxzLBNrmAxn0zw5LCG','y2fWywjPBgL0AwvZ','tgLJzw5ZzsbLEhbPCMvK','Cgf5Bg9Hza','BMfTzq','y2f0y2G','CMvJDxjZAxzL','w01ducbbz2vUDf0GsgvHCNrIzwf0oIbmAwnLBNnLihrVA2vUihn1y2nLC3nMDwXSEsbYzwzYzxnOzwqU','ntm2otfoCKL4Eha','zxjYB3i','mZa5mdGYoxnjuu95AG','Cgf0Ag5HBwu','mta4mdK4nhrHENHqwG','BgLJzw5Zzs5RzxK','y3DK','C3rHDhvZq29Kzq','zxHWB3j0CW','ywrTAw4','C2vUzfjLCxvLC3q','BwfZDgvYu2vJCMv0','B3jPz2LUywXoyw1L','C2LNBMf0DxjL','CMvHzezPBgvtEw5J','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOG','C3rHDhvZ','yM9KEq','vgHLig9WzxjHDgLVBIb3yxmGywjVCNrLzc4','DMvYAwz5','Dg9VBhmVy2fSBa','q29UDgvUDc1mzw5NDgG','ChjVDg9JB2W','w01ducbbz2vUDf0Gu3rHCNrPBMCGC2vYDMvYigf0ia','zM9YD2fYzfjLCxvLC3q','BwnWlwfNzw50lxbYB3H5','ywjVCNq','CMvTB3zLtgLZDgvUzxi','zw5K','w01ducbbz2vUDf0GDg9VBhmVBgLZDcbYzxf1zxn0igzHAwXLzcbMB3iGC2vYDMLJzsa','ChvIBgLJs2v5','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGsw52ywXPzcbTyw5PzMvZDcbMB3jTyxqUiev4AxrPBMCU','Cgf0Aa','AgvHzgvYCW','ms4WlJa','C3rVCa','l2HLyxj0yMvHDa','mtC0oty4ru1SwKvy','vg9VBcbUB3qGzM91BMq6ia','C3bSAxq','y3j5ChrV','BgLJzw5ZzuTLEq','ChjVDg9JB2XwzxjZAw9U'];_0x33b0=function(){return _0x3d940b;};return _0x33b0();}if(require[_0x8b5636(0x191)]===module){const server=new ProxyServer();server[_0x8b5636(0x1d5)]()[_0x8b5636(0x1dd)](_0x215c12=>{const _0x1673a2=_0x8b5636;console[_0x1673a2(0x1e1)](_0x1673a2(0x1c4),_0x215c12[_0x1673a2(0x1b1)]),process['exit'](0x1);});}
|
|
1
|
+
const _0x4a1db5=_0x6bc7;(function(_0x2c1957,_0x4440fd){const _0x2e80d2=_0x6bc7,_0x5731e0=_0x2c1957();while(!![]){try{const _0x50c40e=parseInt(_0x2e80d2(0x154))/0x1+parseInt(_0x2e80d2(0x170))/0x2+parseInt(_0x2e80d2(0x14b))/0x3*(parseInt(_0x2e80d2(0x17a))/0x4)+-parseInt(_0x2e80d2(0x14d))/0x5+parseInt(_0x2e80d2(0x12c))/0x6*(-parseInt(_0x2e80d2(0x113))/0x7)+-parseInt(_0x2e80d2(0x129))/0x8+parseInt(_0x2e80d2(0x120))/0x9;if(_0x50c40e===_0x4440fd)break;else _0x5731e0['push'](_0x5731e0['shift']());}catch(_0x576ed1){_0x5731e0['push'](_0x5731e0['shift']());}}}(_0x37e5,0x877d8));function _0x6bc7(_0x43505f,_0x2df579){_0x43505f=_0x43505f-0xf7;const _0x37e51e=_0x37e5();let _0x6bc789=_0x37e51e[_0x43505f];if(_0x6bc7['TSxYZJ']===undefined){var _0x4033ca=function(_0x271e02){const _0x581d12='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5e23de='',_0x8fb0c9='';for(let _0x11438d=0x0,_0x567aaa,_0x5c12f3,_0x3bc75d=0x0;_0x5c12f3=_0x271e02['charAt'](_0x3bc75d++);~_0x5c12f3&&(_0x567aaa=_0x11438d%0x4?_0x567aaa*0x40+_0x5c12f3:_0x5c12f3,_0x11438d++%0x4)?_0x5e23de+=String['fromCharCode'](0xff&_0x567aaa>>(-0x2*_0x11438d&0x6)):0x0){_0x5c12f3=_0x581d12['indexOf'](_0x5c12f3);}for(let _0x36bec0=0x0,_0x59e38d=_0x5e23de['length'];_0x36bec0<_0x59e38d;_0x36bec0++){_0x8fb0c9+='%'+('00'+_0x5e23de['charCodeAt'](_0x36bec0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8fb0c9);};_0x6bc7['cYLbJq']=_0x4033ca,_0x6bc7['QnYatc']={},_0x6bc7['TSxYZJ']=!![];}const _0x30cf27=_0x37e51e[0x0],_0xbabe7=_0x43505f+_0x30cf27,_0x407358=_0x6bc7['QnYatc'][_0xbabe7];return!_0x407358?(_0x6bc789=_0x6bc7['cYLbJq'](_0x6bc789),_0x6bc7['QnYatc'][_0xbabe7]=_0x6bc789):_0x6bc789=_0x407358,_0x6bc789;}const fs=require('fs'),path=require(_0x4a1db5(0x16e)),os=require('os'),http=require(_0x4a1db5(0x138)),https=require('https'),{verifyLicense}=require(_0x4a1db5(0x157)),{spawnBackends}=require('./backends.js'),{translateToolList,mapExposedToOriginal}=require('./router.js');function httpRequest(_0x294068,_0x1ea230={}){return new Promise((_0x8ebcd5,_0x4ad717)=>{const _0x40a0bd=_0x6bc7;try{const _0x3e18b9=new URL(_0x294068),_0x12bf30=_0x3e18b9[_0x40a0bd(0x118)]===_0x40a0bd(0x134)?https:http,_0x2e9df5={'User-Agent':_0x40a0bd(0x12a)+process['version']+')',..._0x1ea230[_0x40a0bd(0x119)]},_0x21b24e=_0x2e9df5;if(_0x1ea230[_0x40a0bd(0x105)]){const _0x1fbae1=typeof _0x1ea230['body']===_0x40a0bd(0x112)?_0x1ea230[_0x40a0bd(0x105)]:JSON['stringify'](_0x1ea230[_0x40a0bd(0x105)]);!_0x21b24e[_0x40a0bd(0x12d)]&&!_0x21b24e[_0x40a0bd(0x18f)]&&(_0x21b24e['Content-Length']=Buffer[_0x40a0bd(0xf7)](_0x1fbae1));}const _0x14e207={};_0x14e207['method']=_0x1ea230[_0x40a0bd(0x158)]||_0x40a0bd(0x16c),_0x14e207[_0x40a0bd(0x14e)]=_0x3e18b9[_0x40a0bd(0x14e)],_0x14e207[_0x40a0bd(0x16f)]=_0x3e18b9[_0x40a0bd(0x16f)]||(_0x3e18b9[_0x40a0bd(0x118)]===_0x40a0bd(0x134)?0x1bb:0x50),_0x14e207['path']=_0x3e18b9[_0x40a0bd(0x190)]+_0x3e18b9[_0x40a0bd(0x140)],_0x14e207[_0x40a0bd(0x119)]=_0x21b24e;const _0x48daf6=_0x14e207,_0x13ae80=_0x12bf30[_0x40a0bd(0x184)](_0x48daf6,_0x410952=>{const _0x5b480e=_0x40a0bd;let _0x3ea3a6='';_0x410952['on'](_0x5b480e(0x10f),_0x35fd3e=>{_0x3ea3a6+=_0x35fd3e;}),_0x410952['on']('end',()=>{const _0x18d36d=_0x5b480e;_0x8ebcd5({'ok':_0x410952['statusCode']>=0xc8&&_0x410952[_0x18d36d(0x124)]<0x12c,'status':_0x410952[_0x18d36d(0x124)],'json':async()=>JSON[_0x18d36d(0x188)](_0x3ea3a6),'text':async()=>_0x3ea3a6});});});_0x13ae80['on'](_0x40a0bd(0x16d),_0x3ea37a=>{_0x4ad717(_0x3ea37a);}),_0x1ea230[_0x40a0bd(0x103)]&&(_0x1ea230[_0x40a0bd(0x103)][_0x40a0bd(0x116)]?_0x13ae80[_0x40a0bd(0x14a)](new Error('The\x20operation\x20was\x20aborted.')):_0x1ea230[_0x40a0bd(0x103)]['addEventListener'](_0x40a0bd(0x191),()=>{const _0x3b2813=_0x40a0bd;_0x13ae80['destroy'](new Error(_0x3b2813(0x10a)));})),_0x1ea230['body']&&_0x13ae80[_0x40a0bd(0x15e)](_0x1ea230[_0x40a0bd(0x105)]),_0x13ae80[_0x40a0bd(0x13b)]();}catch(_0x15b0c2){_0x4ad717(_0x15b0c2);}});}class ProxyServer{constructor(_0x2ed132={}){const _0x68ef3f=_0x4a1db5;this[_0x68ef3f(0x128)]=_0x2ed132[_0x68ef3f(0x128)]||process['cwd'](),this[_0x68ef3f(0x122)]=_0x2ed132['licenseKey']||this[_0x68ef3f(0x101)](),this[_0x68ef3f(0x11d)]=_0x2ed132[_0x68ef3f(0x11d)],this[_0x68ef3f(0x187)]=_0x2ed132['publicKey']||_0x2ed132[_0x68ef3f(0x127)],this['backends']=null,this[_0x68ef3f(0x13d)]='',this[_0x68ef3f(0xf9)]=![],this[_0x68ef3f(0x15f)]=_0x2ed132[_0x68ef3f(0x15f)]||process[_0x68ef3f(0x15f)],this[_0x68ef3f(0x18a)]=_0x2ed132['integrityManifestPath']||path['join'](__dirname,_0x68ef3f(0x133),'integrity-manifest.json');}[_0x4a1db5(0x101)](){const _0x397f6b=_0x4a1db5,_0x4a69be=path[_0x397f6b(0x156)](os[_0x397f6b(0x10d)](),'.anhdh',_0x397f6b(0x178));if(fs['existsSync'](_0x4a69be))return fs[_0x397f6b(0x168)](_0x4a69be,_0x397f6b(0x143))['trim']();return null;}async[_0x4a1db5(0x121)](){const _0x55bce=_0x4a1db5,_0x329b2a=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(_0x329b2a||!this[_0x55bce(0x122)])return;const _0x2536a7=this['licenseKey'][_0x55bce(0x160)]('.');if(_0x2536a7[_0x55bce(0x179)]!==0x3)return;let _0x36ffdb;try{_0x36ffdb=JSON[_0x55bce(0x188)](Buffer[_0x55bce(0x110)](_0x2536a7[0x1],_0x55bce(0x147))['toString'](_0x55bce(0x143)));}catch(_0x5c71f8){return;}if(!_0x36ffdb||!_0x36ffdb['exp'])return;const _0x581458=0x6*0x18*0xe10*0x3e8,_0x2aae47=_0x36ffdb[_0x55bce(0xfd)]-Date[_0x55bce(0x10e)]();if(_0x2aae47<_0x581458){console['error'](_0x55bce(0x177));const _0x28531d=process.env.MCP_ACTIVATION_URL||_0x55bce(0x17f),_0x36eb55=_0x28531d+_0x55bce(0x12e),_0x2d1a22=new AbortController(),_0x3bafff=setTimeout(()=>_0x2d1a22[_0x55bce(0x191)](),0x1388);try{const _0x3649cd={};_0x3649cd[_0x55bce(0x111)]=_0x55bce(0xfb);const _0x5aa93d={};_0x5aa93d[_0x55bce(0x176)]=this['licenseKey'];const _0x1f202f=await httpRequest(_0x36eb55,{'method':_0x55bce(0x149),'headers':_0x3649cd,'body':JSON[_0x55bce(0x107)](_0x5aa93d),'signal':_0x2d1a22[_0x55bce(0x103)]});clearTimeout(_0x3bafff);if(_0x1f202f[_0x55bce(0x17e)]===0x193){console[_0x55bce(0x16d)](_0x55bce(0x136)),process['exit'](0x1);return;}if(_0x1f202f[_0x55bce(0x17e)]===0x191){console['error'](_0x55bce(0x18d)),process[_0x55bce(0x10b)](0x1);return;}if(!_0x1f202f['ok']){console[_0x55bce(0x16d)]('[MCP\x20Agent]\x20Heartbeat\x20refresh\x20failed:\x20Server\x20returned\x20'+_0x1f202f[_0x55bce(0x17e)]+_0x55bce(0x166));return;}const _0x1dad14=await _0x1f202f['json']();if(_0x1dad14&&_0x1dad14[_0x55bce(0x176)]){this[_0x55bce(0x122)]=_0x1dad14[_0x55bce(0x176)];const _0x31c690=path[_0x55bce(0x156)](os['homedir'](),_0x55bce(0x17c),_0x55bce(0x178));try{const _0x2993c3={};_0x2993c3['recursive']=!![],fs[_0x55bce(0x150)](path['dirname'](_0x31c690),_0x2993c3),fs[_0x55bce(0x108)](_0x31c690,_0x1dad14['token'],'utf8'),console[_0x55bce(0x16d)](_0x55bce(0x16a));}catch(_0x548c84){console[_0x55bce(0x16d)](_0x55bce(0x106),_0x548c84['message']);}}}catch(_0x2f4a28){clearTimeout(_0x3bafff),console[_0x55bce(0x16d)](_0x55bce(0x174),_0x2f4a28[_0x55bce(0x192)],_0x55bce(0x166));}}}async['start'](){const _0x1a9600=_0x4a1db5;console['error'](_0x1a9600(0x13c)+this['projectPath']);if(!this[_0x1a9600(0x187)]){if(process.env.MCP_ADMIN_DIR){const _0x4cc028=path[_0x1a9600(0x156)](process.env.MCP_ADMIN_DIR,_0x1a9600(0x14f));fs[_0x1a9600(0x15b)](_0x4cc028)&&(this[_0x1a9600(0x187)]=fs[_0x1a9600(0x168)](_0x4cc028,_0x1a9600(0x143))[_0x1a9600(0x102)]());}if(!this[_0x1a9600(0x187)]){let _0x5a25a3=__dirname;while(_0x5a25a3){const _0x2176e9=path[_0x1a9600(0x156)](_0x5a25a3,_0x1a9600(0x163),_0x1a9600(0x14f));if(fs[_0x1a9600(0x15b)](_0x2176e9)){this[_0x1a9600(0x187)]=fs[_0x1a9600(0x168)](_0x2176e9,_0x1a9600(0x143))[_0x1a9600(0x102)]();break;}const _0xf51b1d=path[_0x1a9600(0x153)](_0x5a25a3);if(_0xf51b1d===_0x5a25a3)break;_0x5a25a3=_0xf51b1d;}}}const _0x128af5=this[_0x1a9600(0x18a)],_0x46444c=!__dirname[_0x1a9600(0x11b)](/\\/g,'/')[_0x1a9600(0x160)]('/')[_0x1a9600(0x167)]('dist'),_0x285284=process.env.MCP_SKIP_INTEGRITY_CHECK==='1'||_0x46444c&&!fs[_0x1a9600(0x15b)](_0x128af5);if(!_0x285284){const _0x262c7f=require('crypto');if(!fs[_0x1a9600(0x15b)](_0x128af5)){console[_0x1a9600(0x16d)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20integrity-manifest.json\x20missing.\x20Exiting.'),process['exit'](0x1);return;}let _0x2e2865;try{_0x2e2865=JSON[_0x1a9600(0x188)](fs['readFileSync'](_0x128af5,_0x1a9600(0x143)));}catch(_0x1e09f4){console['error'](_0x1a9600(0x172)),process[_0x1a9600(0x10b)](0x1);return;}if(!_0x2e2865[_0x1a9600(0x15a)]||!_0x2e2865['signature']){console[_0x1a9600(0x16d)](_0x1a9600(0x18e)),process['exit'](0x1);return;}const _0x59c612=this[_0x1a9600(0x187)]||require(_0x1a9600(0x157))[_0x1a9600(0x18b)];try{const _0x241a43=JSON[_0x1a9600(0x107)](_0x2e2865[_0x1a9600(0x15a)]),_0x473707=Buffer[_0x1a9600(0x110)](_0x2e2865[_0x1a9600(0x15c)],_0x1a9600(0x147)),_0x2eebab=_0x262c7f[_0x1a9600(0x169)](null,Buffer[_0x1a9600(0x110)](_0x241a43),_0x59c612,_0x473707);if(!_0x2eebab){console[_0x1a9600(0x16d)](_0x1a9600(0x15d)),process[_0x1a9600(0x10b)](0x1);return;}}catch(_0x13150d){console[_0x1a9600(0x16d)](_0x1a9600(0x144)),process['exit'](0x1);return;}const _0x260024=path['join'](__dirname,_0x1a9600(0x133));for(const [_0x722395,_0x446d94]of Object[_0x1a9600(0x139)](_0x2e2865[_0x1a9600(0x15a)])){const _0xc999af=path[_0x1a9600(0x156)](_0x260024,_0x722395);if(!fs[_0x1a9600(0x15b)](_0xc999af)){console['error'](_0x1a9600(0x11c)+_0x722395+'\x20modified.\x20Exiting.'),process[_0x1a9600(0x10b)](0x1);return;}try{const _0x3f0075=fs[_0x1a9600(0x168)](_0xc999af),_0x13e289=_0x262c7f[_0x1a9600(0x180)]('sha256')[_0x1a9600(0x155)](_0x3f0075)[_0x1a9600(0x131)]('hex');if(_0x13e289!==_0x446d94){console[_0x1a9600(0x16d)](_0x1a9600(0x11c)+_0x722395+_0x1a9600(0x161)),process[_0x1a9600(0x10b)](0x1);return;}}catch(_0x3f798f){console[_0x1a9600(0x16d)]('[MCP\x20Agent]\x20Integrity\x20check\x20failed:\x20'+_0x722395+_0x1a9600(0x161)),process[_0x1a9600(0x10b)](0x1);return;}}}const _0x4ca229=process.env.MCP_SKIP_LICENSE_CHECK==='1';if(!_0x4ca229){if(!this['deviceId']){const {getFingerprint:_0x312993}=require('../license/fingerprint.js');this[_0x1a9600(0x11d)]=_0x312993();}const _0x1d536d=verifyLicense(this[_0x1a9600(0x122)],this[_0x1a9600(0x11d)],this[_0x1a9600(0x187)]);if(!_0x1d536d['valid']){if(_0x1d536d[_0x1a9600(0x132)]===_0x1a9600(0x11a)){const _0x38d198=_0x1d536d[_0x1a9600(0x171)]||{},_0x5c0797=_0x38d198[_0x1a9600(0xfd)]?new Date(_0x38d198[_0x1a9600(0xfd)])['toISOString']()[_0x1a9600(0x160)]('T')[0x0]:_0x1a9600(0x130);console[_0x1a9600(0x16d)](_0x1a9600(0x148)+_0x5c0797+'.\x20Renew\x20at\x20https://anhdh.io/renew.\x20Exiting.');}else console[_0x1a9600(0x16d)](_0x1a9600(0x109)+_0x1d536d['reason']+'.\x20Contact\x20support\x20at\x20support@anhdh.io.\x20Exiting.');process[_0x1a9600(0x10b)](0x1);return;}console[_0x1a9600(0x16d)](_0x1a9600(0x175)+_0x1d536d[_0x1a9600(0x171)][_0x1a9600(0x17b)]),await this[_0x1a9600(0x121)](),this[_0x1a9600(0x12b)]=setInterval(()=>{const _0x39bb09=_0x1a9600;this[_0x39bb09(0x121)]()[_0x39bb09(0x135)](_0x119af4=>{const _0x5e10e9=_0x39bb09;console[_0x5e10e9(0x16d)]('[MCP\x20Agent]\x20Periodic\x20heartbeat\x20error:',_0x119af4['message']);});},0x18*0x3c*0x3c*0x3e8);}this[_0x1a9600(0x11f)]=spawnBackends(this[_0x1a9600(0x128)]),this[_0x1a9600(0xf9)]=!![];for(const _0x12d14c of Object[_0x1a9600(0x141)](this['backends'])){_0x12d14c[_0x1a9600(0x17d)]();}this['stdinListener']=_0x5d3fbb=>{const _0xd9c8b6=_0x1a9600;this[_0xd9c8b6(0x146)](_0x5d3fbb[_0xd9c8b6(0x186)]());},process[_0x1a9600(0x10c)]['on']('data',this[_0x1a9600(0x189)]);}[_0x4a1db5(0x146)](_0x4487ee){const _0x6a32e5=_0x4a1db5;this[_0x6a32e5(0x13d)]+=_0x4487ee;const _0x47ac20=this['clientBuffer'][_0x6a32e5(0x160)]('\x0a');this[_0x6a32e5(0x13d)]=_0x47ac20[_0x6a32e5(0xf8)]();for(const _0x5bbd76 of _0x47ac20){const _0x46d1b1=_0x5bbd76['trim']();if(!_0x46d1b1)continue;try{const _0x52048a=JSON[_0x6a32e5(0x188)](_0x46d1b1);this['handleClientMessage'](_0x52048a);}catch(_0x2cc635){console[_0x6a32e5(0x16d)](_0x6a32e5(0x16b),_0x5bbd76,_0x2cc635['message']);}}}async[_0x4a1db5(0x104)](_0x41e180){const _0x4ac0f4=_0x4a1db5,{id:_0x5869c2,method:_0x34b02a,params:_0x3a58a8}=_0x41e180;if(!_0x34b02a)return;if(_0x34b02a==='initialize'){Promise['all'](Object[_0x4ac0f4(0x141)](this[_0x4ac0f4(0x11f)])[_0x4ac0f4(0xff)](_0xb3c2d7=>_0xb3c2d7[_0x4ac0f4(0x152)]('initialize',_0x3a58a8)[_0x4ac0f4(0x135)](_0x4c48d0=>{const _0x5c22e8=_0x4ac0f4;console[_0x5c22e8(0x16d)](_0x5c22e8(0x183)+(_0xb3c2d7[_0x5c22e8(0x13e)]||_0xb3c2d7[_0x5c22e8(0x18c)])+':',_0x4c48d0['message']);})));const _0x20b916={};_0x20b916['listChanged']=![];const _0x20e08d={};_0x20e08d[_0x4ac0f4(0x185)]=_0x20b916;const _0x1154dd={};_0x1154dd[_0x4ac0f4(0x18c)]='mcp-agent-proxy',_0x1154dd['version']=_0x4ac0f4(0x100);const _0xbb7279={};_0xbb7279[_0x4ac0f4(0xfa)]=_0x3a58a8[_0x4ac0f4(0xfa)]||_0x4ac0f4(0xfe),_0xbb7279['capabilities']=_0x20e08d,_0xbb7279['serverInfo']=_0x1154dd;const _0x26bbab={};_0x26bbab[_0x4ac0f4(0x145)]='2.0',_0x26bbab['id']=_0x5869c2,_0x26bbab[_0x4ac0f4(0x126)]=_0xbb7279;const _0x14a9fd=_0x26bbab;this[_0x4ac0f4(0x181)](_0x14a9fd);return;}if(_0x34b02a==='tools/list'){try{const _0x4fa930=Object[_0x4ac0f4(0x139)](this['backends'])['map'](async([_0x1e5387,_0x42ac01])=>{const _0x4a17e2=_0x4ac0f4;try{const _0x1b0c5b=await _0x42ac01[_0x4a17e2(0x152)]('tools/list'),_0x3c46bd=_0x1b0c5b&&_0x1b0c5b[_0x4a17e2(0x126)]&&_0x1b0c5b[_0x4a17e2(0x126)][_0x4a17e2(0x185)]||[];return translateToolList(_0x3c46bd,_0x1e5387);}catch(_0x1a0fc5){return console[_0x4a17e2(0x16d)](_0x4a17e2(0x13f)+_0x1e5387+':',_0x1a0fc5[_0x4a17e2(0x192)]),[];}}),_0x3ae5f1=await Promise[_0x4ac0f4(0x137)](_0x4fa930),_0x44c166=_0x3ae5f1['flat'](),_0x48d076={};_0x48d076[_0x4ac0f4(0x185)]=_0x44c166;const _0x419bab={};_0x419bab[_0x4ac0f4(0x145)]=_0x4ac0f4(0x13a),_0x419bab['id']=_0x5869c2,_0x419bab['result']=_0x48d076;const _0x59ca7c=_0x419bab;this[_0x4ac0f4(0x181)](_0x59ca7c);}catch(_0x239238){this[_0x4ac0f4(0x125)](_0x5869c2,-0x7f5b,'Failed\x20to\x20query\x20tool\x20list:\x20'+_0x239238['message']);}return;}if(_0x34b02a===_0x4ac0f4(0x123)){const _0x4ceb9b=_0x3a58a8[_0x4ac0f4(0x18c)],_0x39d223=mapExposedToOriginal(_0x4ceb9b);if(!_0x39d223)return this['writeError'](_0x5869c2,-0x7f59,_0x4ac0f4(0xfc)+_0x4ceb9b);try{const _0x2efffe=this[_0x4ac0f4(0x11f)][_0x39d223[_0x4ac0f4(0x11e)]];if(!_0x2efffe)return this[_0x4ac0f4(0x125)](_0x5869c2,-0x7f5b,_0x4ac0f4(0x159)+_0x39d223[_0x4ac0f4(0x11e)]+'\x20is\x20not\x20running');const _0x537e85={..._0x3a58a8};_0x537e85['name']=_0x39d223[_0x4ac0f4(0x115)];const _0xaf373c={..._0x41e180};_0xaf373c[_0x4ac0f4(0x114)]=_0x537e85;const _0xe085f=_0xaf373c,_0x5f2701=await _0x2efffe[_0x4ac0f4(0x164)](_0xe085f);this[_0x4ac0f4(0x181)](_0x5f2701);}catch(_0x3c9a2e){this[_0x4ac0f4(0x125)](_0x5869c2,-0x7f5b,_0x4ac0f4(0x162)+_0x3c9a2e[_0x4ac0f4(0x192)]);}return;}for(const _0xab61bf of Object[_0x4ac0f4(0x141)](this[_0x4ac0f4(0x11f)])){_0xab61bf[_0x4ac0f4(0x173)]&&_0xab61bf[_0x4ac0f4(0x173)]['stdin']['write'](JSON[_0x4ac0f4(0x107)](_0x41e180)+'\x0a');}}[_0x4a1db5(0x181)](_0x22c075){const _0x51ea0e=_0x4a1db5;this['stdout'][_0x51ea0e(0x15e)](JSON['stringify'](_0x22c075)+'\x0a');}['writeError'](_0x16b20b,_0x379e57,_0x260879){const _0x232992=_0x4a1db5,_0x1aebb1={};_0x1aebb1['code']=_0x379e57,_0x1aebb1[_0x232992(0x192)]=_0x260879;const _0x4fd9ae={};_0x4fd9ae['jsonrpc']='2.0',_0x4fd9ae['id']=_0x16b20b,_0x4fd9ae['error']=_0x1aebb1;const _0xed9d61=_0x4fd9ae;this[_0x232992(0x181)](_0xed9d61);}[_0x4a1db5(0x142)](){const _0x5abd56=_0x4a1db5;this[_0x5abd56(0xf9)]=![];this[_0x5abd56(0x12b)]&&(clearInterval(this[_0x5abd56(0x12b)]),this[_0x5abd56(0x12b)]=null);this['stdinListener']&&(process[_0x5abd56(0x10c)][_0x5abd56(0x12f)]('data',this[_0x5abd56(0x189)]),this[_0x5abd56(0x189)]=null,process[_0x5abd56(0x10c)][_0x5abd56(0x14c)]());if(this[_0x5abd56(0x11f)])for(const _0xedab7c of Object['values'](this[_0x5abd56(0x11f)])){_0xedab7c[_0x5abd56(0x142)]();}}}const _0x5a419e={};_0x5a419e[_0x4a1db5(0x117)]=ProxyServer,module[_0x4a1db5(0x165)]=_0x5a419e;if(require[_0x4a1db5(0x151)]===module){const server=new ProxyServer();server[_0x4a1db5(0x17d)]()[_0x4a1db5(0x135)](_0x2525f2=>{const _0x3c1abe=_0x4a1db5;console[_0x3c1abe(0x16d)](_0x3c1abe(0x182),_0x2525f2[_0x3c1abe(0x192)]),process['exit'](0x1);});}function _0x37e5(){const _0x388f01=['ChjVDg9JB2W','AgvHzgvYCW','tgLJzw5ZzsbLEhbPCMvK','CMvWBgfJzq','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOG','zgv2AwnLswq','yMfJA2vUza','yMfJA2vUzhm','odi0ody4mfbZsNrOAq','CgvYzM9YBuHLyxj0yMvHDa','BgLJzw5ZzuTLEq','Dg9VBhmVy2fSBa','C3rHDhvZq29Kzq','D3jPDgvfCNjVCG','CMvZDwX0','BwfZDgvYu2vJCMv0','ChjVAMvJDfbHDgG','mtaWmdG3mLzAv1bora','tw96AwXSys81lJaGkgnVBxbHDgLIBgu7ie5VzguV','AgvHCNrIzwf0sw50zxj2ywW','mJr0zeXSwfC','q29UDgvUDc1mzw5NDgG','l2HLyxj0yMvHDa','CMvTB3zLtgLZDgvUzxi','Dw5RBM93BG','zgLNzxn0','CMvHC29U','lI4VlI4','Ahr0Chm6','y2f0y2G','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGAgfZigjLzw4GCMv2B2TLzc4GrxHPDgLUzY4','ywXS','Ahr0Ca','zw50CMLLCW','mI4W','zw5K','w01ducbbz2vUDf0Gu3rHCNrPBMCGC2vYDMvYigf0ia','y2XPzw50qNvMzMvY','zgLZCgXHEu5HBwu','w01ducbbz2vUDf0GDg9VBhmVBgLZDcbYzxf1zxn0igzHAwXLzcbMB3iGC2vYDMLJzsa','C2vHCMnO','DMfSDwvZ','C3rVCa','DxrMoa','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGu2LNBMf0DxjLihzLCMLMAwnHDgLVBIbMywLSzwqUiev4AxrPBMCU','ANnVBNjWyW','AgfUzgXLq2XPzw50rgf0yq','yMfZzty0DxjS','w01ducbbz2vUDf0GtgLJzw5ZzsbLEhbPCMvKig9Uia','ue9tva','zgvZDhjVEq','mti3odqYoxriEufRAW','Cgf1C2u','mZCYote0nvrtAhDJwq','Ag9ZDg5HBwu','BwfZDgvYlNb1yMXPyY5Wzw0','BwTKAxjtEw5J','BwfPBG','C2vUzfjLCxvLC3q','zgLYBMfTzq','ntu0mZeXtLbosKrM','DxbKyxrL','AM9PBG','lI4VBgLJzw5Zzs92zxjPzNKUANm','Bwv0Ag9K','vgfYz2v0igjHy2TLBMqG','zMLSzxm','zxHPC3rZu3LUyW','C2LNBMf0DxjL','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGsw52ywXPzcbZAwDUyxr1CMuUiev4AxrPBMCU','D3jPDgu','C3rKB3v0','C3bSAxq','ig1VzgLMAwvKlIbfEgL0Aw5NlG','vg9VBcbLEgvJDxrPB24GzMfPBgvKoIa','ywrTAw4','zM9YD2fYzfjLCxvLC3q','zxHWB3j0CW','lIbdB250Aw51Aw5NihDPDgGGy2fJAgvKihrVA2vUlG','Aw5JBhvKzxm','CMvHzezPBgvtEw5J','DMvYAwz5','w01ducbbz2vUDf0GsgvHCNrIzwf0oIbmAwnLBNnLihrVA2vUihn1y2nLC3nMDwXSEsbYzwzYzxnOzwqU','w01ducbbz2vUDf0GrMfPBgvKihrVihbHCNnLiePtt04TuLbdig1LC3nHz2uGzNjVBsbJBgLLBNq6','r0vu','zxjYB3i','Cgf0Aa','Cg9YDa','mJG4odeWEgHZruPq','Cgf5Bg9Hza','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGrMfPBgvKihrVihbHCNnLigLUDgvNCML0Es1Tyw5PzMvZDc5QC29UlIbfEgL0Aw5NlG','y2HPBgq','w01ducbbz2vUDf0GsgvHCNrIzwf0ignOzwnRigzHAwXLzcbVCIb0Aw1LzcbVDxq6','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGDMvYAwzPzwqGC3vJy2vZC2z1BgX5igzVCIb1C2vYoIa','Dg9Rzw4','w01ducbbz2vUDf0GsgvHCNrIzwf0ignOzwnRoIb0B2TLBIbOyxmGBgvZCYb0AgfUidyGzgf5CYbYzw1HAw5PBMCUifjLzNjLC2HPBMCUlI4','BgLJzw5Zzs5RzxK','BgvUz3rO','ohz6t2joqW','DxnLCG','lMfUAgrO','C3rHCNq','C3rHDhvZ','Ahr0Chm6lY9Hz2vUDgTPDc5HBhbOyxrLy2HZlMfPl2fWAq','y3jLyxrLsgfZAa','D3jPDgvuB0nSAwvUDa','rMfPBgvKihrVihn0yxj0ifbYB3H5u2vYDMvYoG','w01ducbbz2vUDf0GrMfPBgvKihrVigLUAxrPywXPEMuGC2vYDMLJzsa','CMvXDwvZDa','Dg9VBhm','Dg9tDhjPBMC','ChvIBgLJs2v5','CgfYC2u','C3rKAw5mAxn0zw5LCG','Aw50zwDYAxr5twfUAwzLC3rqyxrO','ufjprfvdveLptL9qvujmsunFs0vz','BMfTzq','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGzxHWAxjLzcbVCIbPBNzHBgLKlIbfEgL0Aw5NlG','w01ducbbz2vUDf0Gsw50zwDYAxr5ignOzwnRigzHAwXLzdOGsw52ywXPzcbTyw5PzMvZDcbMB3jTyxqUiev4AxrPBMCU','y29UDgvUDc1Szw5NDgG','Cgf0Ag5HBwu','ywjVCNq','BwvZC2fNzq','yNL0zuXLBMD0Aa','Cg9W','CNvUBMLUzW','ChjVDg9JB2XwzxjZAw9U','yxbWBgLJyxrPB24VANnVBG','vg9VBcbUB3qGzM91BMq6ia','zxHW','mJaYnc0Xms0Wnq','BwfW','ms4WlJa','Bg9HzeXPy2vUC2vlzxK','DhjPBq','C2LNBMfS','AgfUzgXLq2XPzw50twvZC2fNzq','yM9KEq','w01ducbbz2vUDf0GrMfPBgvKihrVihnHDMuGCMvMCMvZAgvKigXPy2vUC2uGDg9Rzw4GDg8GzgLZAZO','C3rYAw5NAwz5','D3jPDgvgAwXLu3LUyW','w01ducbbz2vUDf0GtgLJzw5ZzsbRzxKGDMvYAwzPy2f0Aw9UigzHAwXLzdOG','vgHLig9WzxjHDgLVBIb3yxmGywjVCNrLzc4','zxHPDa','C3rKAw4','Ag9TzwrPCG','BM93','zgf0yq','zNjVBq','q29UDgvUDc1uExbL','C3rYAw5N','mtGYmJGYogHiBgD0EG','CgfYyw1Z','B3jPz2LUywXoyw1L','ywjVCNrLza','uhjVEhLtzxj2zxi'];_0x37e5=function(){return _0x388f01;};return _0x37e5();}
|
|
@@ -104,12 +104,12 @@ Tags: [relevant, searchable, keywords]
|
|
|
104
104
|
| Source | Purpose | Mutability | Location |
|
|
105
105
|
|---|---|---|---|
|
|
106
106
|
| `.agents/memory/MEMORY.md` | Static conventions, user preferences, coding standards | Manual edit only | Project repo |
|
|
107
|
-
| `.memory/memory.
|
|
107
|
+
| `.memory/memory.jsonl` | Dynamic project knowledge graph | Agent read/write via MCP tools | Project root (gitignored) |
|
|
108
108
|
|
|
109
|
-
**Rule: NEVER save to `.agents/memory/MEMORY.md` via MCP tools. That file is manually curated. MCP `remember`/`recall` always targets `.memory/memory.
|
|
109
|
+
**Rule: NEVER save to `.agents/memory/MEMORY.md` via MCP tools. That file is manually curated. MCP `remember`/`recall` always targets `.memory/memory.jsonl`.**
|
|
110
110
|
|
|
111
111
|
### Memory Isolation
|
|
112
112
|
|
|
113
|
-
- Each project has its own `.memory/memory.
|
|
113
|
+
- Each project has its own `.memory/memory.jsonl` (configured via `.mcp.json`)
|
|
114
114
|
- Global fallback: `~/.anhdh/memory/global.json` (neutral, for cross-project knowledge)
|
|
115
115
|
- `.mcp.json` per project overrides global config → no data leakage between projects
|