apt-mcp-agent-setup 3.0.4 → 3.0.6

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.
Files changed (50) hide show
  1. package/bin/cli.js +1 -1
  2. package/bundle/NOTICES.md +0 -0
  3. package/bundle/core.enc +0 -0
  4. package/bundle/mcp-rules.enc +0 -0
  5. package/bundle/skills-aso.enc +0 -0
  6. package/bundle/skills-ba.enc +0 -0
  7. package/bundle/skills-base.enc +0 -0
  8. package/bundle/skills-be.enc +0 -0
  9. package/bundle/skills-design.enc +0 -0
  10. package/bundle/skills-fe.enc +0 -0
  11. package/bundle/skills-mobile.enc +0 -0
  12. package/bundle/skills-pm.enc +0 -0
  13. package/integrity-manifest.json +50 -45
  14. package/package.json +1 -1
  15. package/src/backends/codegraph-1.6.0.json +180 -0
  16. package/src/backends/index-store.js +1 -0
  17. package/src/backends/profiles.js +1 -0
  18. package/src/backends/review_graph.py +29 -0
  19. package/src/core/catalog.js +1 -1
  20. package/src/core/context-metrics.js +1 -1
  21. package/src/core/doctor.js +1 -1
  22. package/src/core/execution.js +1 -1
  23. package/src/core/hook-bridge.js +1 -1
  24. package/src/core/host-adapters.js +1 -1
  25. package/src/core/memory-store.js +1 -1
  26. package/src/core/model-routing.js +1 -1
  27. package/src/core/owned-lock.js +1 -1
  28. package/src/core/session.js +1 -1
  29. package/src/core/skill-names.js +1 -1
  30. package/src/core/workspace-path.js +1 -0
  31. package/src/installer/global-setup.js +1 -1
  32. package/src/installer/host-hooks.js +1 -1
  33. package/src/installer/managed-config.js +1 -1
  34. package/src/installer/platform-config.js +1 -1
  35. package/src/installer/prerequisites.js +1 -1
  36. package/src/installer/project-setup.js +1 -1
  37. package/src/installer/runtime-lock.js +1 -1
  38. package/src/installer/runtime-store.js +1 -1
  39. package/src/installer/setup-wizard.js +1 -1
  40. package/src/license/crypto.js +1 -1
  41. package/src/license/fingerprint.js +1 -1
  42. package/src/license/terms.js +1 -1
  43. package/src/license/verify.js +1 -1
  44. package/src/presets/index.js +1 -1
  45. package/src/proxy/backends.js +1 -1
  46. package/src/proxy/core-tools.js +1 -1
  47. package/src/proxy/pipeline.js +1 -1
  48. package/src/proxy/router.config.js +1 -1
  49. package/src/proxy/router.js +1 -1
  50. package/src/proxy/server.js +1 -1
package/bin/cli.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const _0x49bcf4=_0x307f;(function(_0x58597d,_0x5229d2){const _0x381670=_0x307f,_0x2c0c3a=_0x58597d();while(!![]){try{const _0x3897c3=-parseInt(_0x381670(0x213))/0x1*(-parseInt(_0x381670(0x21a))/0x2)+-parseInt(_0x381670(0x1cb))/0x3*(parseInt(_0x381670(0x163))/0x4)+parseInt(_0x381670(0x17f))/0x5*(parseInt(_0x381670(0x1de))/0x6)+-parseInt(_0x381670(0x169))/0x7*(parseInt(_0x381670(0x1c6))/0x8)+-parseInt(_0x381670(0x189))/0x9*(parseInt(_0x381670(0x194))/0xa)+parseInt(_0x381670(0x1a1))/0xb+-parseInt(_0x381670(0x1c4))/0xc*(-parseInt(_0x381670(0x191))/0xd);if(_0x3897c3===_0x5229d2)break;else _0x2c0c3a['push'](_0x2c0c3a['shift']());}catch(_0x2b41a7){_0x2c0c3a['push'](_0x2c0c3a['shift']());}}}(_0x2311,0x280bd));const fs=require('fs'),path=require(_0x49bcf4(0x20e)),os=require('os'),readline=require(_0x49bcf4(0x1c2)),http=require(_0x49bcf4(0x158)),https=require(_0x49bcf4(0x1d3)),{getFingerprint}=require('../src/license/fingerprint.js'),{verifyLicense}=require(_0x49bcf4(0x1c7)),{checkPrerequisites}=require(_0x49bcf4(0x1b8)),{installGlobalTools}=require('../src/installer/global-setup.js'),{deployProject,ensureStitchAuthentication}=require(_0x49bcf4(0x16d)),{configureIDE,configureMultipleIDEs,detectInstalledIDEs}=require(_0x49bcf4(0x1fb)),{runSetupWizard}=require(_0x49bcf4(0x185));function runtimeLauncher(_0x4fb22c){const _0x22039c=_0x49bcf4,_0x52f34c=path[_0x22039c(0x202)](__dirname,'..');if(!fs[_0x22039c(0x1a9)](path[_0x22039c(0x209)](_0x52f34c,_0x22039c(0x1c9))))return console['warn']('Development\x20checkout:\x20automatic\x20runtime\x20updates\x20require\x20a\x20signed\x20package.'),path[_0x22039c(0x209)](_0x52f34c,_0x22039c(0x1b4));const _0x5f286b={};return _0x5f286b['publicKey']=_0x4fb22c,require('../src/installer/runtime-store')['installRuntime'](_0x52f34c,_0x5f286b)[_0x22039c(0x199)];}function parseArgs(){const _0x48e117=_0x49bcf4,_0x3b04c7=process[_0x48e117(0x159)]['slice'](0x2),_0x1792d0=_0x3b04c7[0x0],_0x2b70fb={};for(let _0x49db9f=0x1;_0x49db9f<_0x3b04c7[_0x48e117(0x15d)];_0x49db9f++){if(_0x3b04c7[_0x49db9f]===_0x48e117(0x1b3)||_0x3b04c7[_0x49db9f]==='-k')_0x2b70fb[_0x48e117(0x1bb)]=_0x3b04c7[_0x49db9f+0x1],_0x49db9f++;else{if(_0x3b04c7[_0x49db9f]==='--preset'||_0x3b04c7[_0x49db9f]==='-p')_0x2b70fb[_0x48e117(0x167)]=_0x3b04c7[_0x49db9f+0x1],_0x49db9f++;else{if(_0x3b04c7[_0x49db9f]===_0x48e117(0x172))_0x2b70fb[_0x48e117(0x216)]=_0x3b04c7[_0x49db9f+0x1],_0x49db9f++;else _0x3b04c7[_0x49db9f]===_0x48e117(0x1e4)&&(_0x2b70fb[_0x48e117(0x1d9)]=!![]);}}}const _0x2428f3={};return _0x2428f3[_0x48e117(0x1a4)]=_0x1792d0,_0x2428f3[_0x48e117(0x18f)]=_0x2b70fb,_0x2428f3;}function getPublicKey(){const _0x4e8b20=_0x49bcf4;if(process.env.MCP_ADMIN_DIR){const _0x28a527=path['join'](process.env.MCP_ADMIN_DIR,_0x4e8b20(0x219));if(fs['existsSync'](_0x28a527))return fs[_0x4e8b20(0x208)](_0x28a527,'utf8')['trim']();}let _0x4374bc=path[_0x4e8b20(0x209)](__dirname,_0x4e8b20(0x171));if(fs[_0x4e8b20(0x1a9)](_0x4374bc))return fs[_0x4e8b20(0x208)](_0x4374bc,_0x4e8b20(0x212))[_0x4e8b20(0x20f)]();_0x4374bc=path[_0x4e8b20(0x209)](__dirname,'../../admin/master.public.pem');if(fs[_0x4e8b20(0x1a9)](_0x4374bc))return fs[_0x4e8b20(0x208)](_0x4374bc,_0x4e8b20(0x212))[_0x4e8b20(0x20f)]();return null;}function handleInit(){const _0x164639=_0x49bcf4,_0x543265=getFingerprint();console[_0x164639(0x1ce)](_0x164639(0x16b)+_0x543265);}function handleStatus(){const _0x309846=_0x49bcf4,_0x35b307=path[_0x309846(0x209)](os[_0x309846(0x1ab)](),_0x309846(0x1a6),'license.key');let _0x41bd22;try{_0x41bd22=fs[_0x309846(0x208)](_0x35b307,_0x309846(0x212))[_0x309846(0x20f)]();}catch(_0x5c94c9){console[_0x309846(0x18c)](_0x309846(0x16a)),process['exit'](0x1);return;}const _0x2f3ac0=getFingerprint(),_0x8e9781=getPublicKey(),_0xb0ecab=verifyLicense(_0x41bd22,_0x2f3ac0,_0x8e9781);!_0xb0ecab['valid']&&(console[_0x309846(0x18c)]('License\x20key\x20verification\x20failed:\x20'+_0xb0ecab['reason']),process[_0x309846(0x1cc)](0x1));const _0x190a05=_0xb0ecab['payload'];console[_0x309846(0x1ce)](_0x309846(0x1dd)),console[_0x309846(0x1ce)]('================================'),console[_0x309846(0x1ce)](_0x309846(0x1a5)),console[_0x309846(0x1ce)](_0x309846(0x200)+_0x190a05[_0x309846(0x1ef)]),console['log'](_0x309846(0x1b5)+_0x190a05[_0x309846(0x167)]),console[_0x309846(0x1ce)](_0x309846(0x1e0)+_0x190a05['device']),console[_0x309846(0x1ce)](_0x309846(0x1fd)+new Date(_0x190a05['exp'])[_0x309846(0x1db)]());}function extractKeyId(_0x3c3de4){const _0x5728fc=_0x49bcf4;try{const _0xe5b413=_0x3c3de4[_0x5728fc(0x1ca)]('.'),_0x10fe30=JSON[_0x5728fc(0x19e)](Buffer[_0x5728fc(0x1e8)](_0xe5b413[0x1],_0x5728fc(0x182))['toString']('utf8'));return _0x10fe30[_0x5728fc(0x1ed)]||_0x10fe30[_0x5728fc(0x1ac)];}catch(_0x524b4e){return null;}}function httpRequest(_0x50fb6a,_0x544050={}){return new Promise((_0x47be91,_0x1187fd)=>{const _0xba725=_0x307f;try{const _0x5500ea=new URL(_0x50fb6a),_0x280b4f=_0x5500ea[_0xba725(0x17e)]===_0xba725(0x196)?https:http,_0x170fdc={'User-Agent':_0xba725(0x210)+process['version']+')',..._0x544050[_0xba725(0x1ba)]},_0x4a6337=_0x170fdc;if(_0x544050['body']){const _0xc0ba38=typeof _0x544050[_0xba725(0x162)]===_0xba725(0x1d8)?_0x544050[_0xba725(0x162)]:JSON['stringify'](_0x544050['body']);!_0x4a6337[_0xba725(0x19d)]&&!_0x4a6337[_0xba725(0x17b)]&&(_0x4a6337['Content-Length']=Buffer[_0xba725(0x20d)](_0xc0ba38));}const _0x199091={};_0x199091['method']=_0x544050['method']||'GET',_0x199091['hostname']=_0x5500ea['hostname'],_0x199091[_0xba725(0x192)]=_0x5500ea[_0xba725(0x192)]||(_0x5500ea[_0xba725(0x17e)]==='https:'?0x1bb:0x50),_0x199091['path']=_0x5500ea[_0xba725(0x1cf)]+_0x5500ea[_0xba725(0x1e2)],_0x199091[_0xba725(0x1ba)]=_0x4a6337;const _0x2301a2=_0x199091,_0xb6faf7=_0x280b4f['request'](_0x2301a2,_0x86cfb3=>{const _0x4bd2a8=_0xba725;let _0x580dbb='';_0x86cfb3['on'](_0x4bd2a8(0x1b1),_0x467ae6=>{_0x580dbb+=_0x467ae6;}),_0x86cfb3['on']('end',()=>{const _0x119e3b=_0x4bd2a8;_0x47be91({'ok':_0x86cfb3[_0x119e3b(0x170)]>=0xc8&&_0x86cfb3[_0x119e3b(0x170)]<0x12c,'status':_0x86cfb3[_0x119e3b(0x170)],'json':async()=>JSON[_0x119e3b(0x19e)](_0x580dbb),'text':async()=>_0x580dbb});});});_0xb6faf7['on']('error',_0x39f904=>{_0x1187fd(_0x39f904);}),_0x544050['body']&&_0xb6faf7['write'](_0x544050[_0xba725(0x162)]),_0xb6faf7[_0xba725(0x1f7)]();}catch(_0xbf7636){_0x1187fd(_0xbf7636);}});}async function activateLicense(_0x3c4655,_0x1dbb99){const _0x427e3f=_0x49bcf4,_0x79cba4=extractKeyId(_0x3c4655);if(!_0x79cba4)throw new Error('Invalid\x20license\x20key\x20format');const _0x3ee826=process.env.MCP_ACTIVATION_URL||'https://agentkit.alphatechs.ai/api',_0x4715e1=_0x3ee826+'/activate',_0x47e70b={};_0x47e70b[_0x427e3f(0x207)]=_0x427e3f(0x175);const _0x5a3322={};_0x5a3322['key_id']=_0x79cba4,_0x5a3322[_0x427e3f(0x180)]=_0x1dbb99;const _0x59bf81=await httpRequest(_0x4715e1,{'method':_0x427e3f(0x1ad),'headers':_0x47e70b,'body':JSON[_0x427e3f(0x205)](_0x5a3322)});if(!_0x59bf81['ok']){let _0x3f4fcb=_0x427e3f(0x1df)+_0x59bf81[_0x427e3f(0x1ec)];try{const _0x5a32d4=await _0x59bf81[_0x427e3f(0x201)]();if(_0x5a32d4&&_0x5a32d4[_0x427e3f(0x18c)])_0x3f4fcb=_0x5a32d4['error'];}catch(_0x49f339){}throw new Error(_0x3f4fcb);}const _0x4a2b56=await _0x59bf81[_0x427e3f(0x201)]();if(!_0x4a2b56||!_0x4a2b56['token'])throw new Error('Server\x20response\x20missing\x20token');return _0x4a2b56[_0x427e3f(0x15f)];}async function handleActivate(_0x5427df){const _0x58e76c=_0x49bcf4,_0x5c29c8=_0x5427df['key'];!_0x5c29c8&&(console[_0x58e76c(0x18c)]('Error:\x20Missing\x20required\x20argument\x20--key'),console[_0x58e76c(0x1ce)](_0x58e76c(0x1fa)),console[_0x58e76c(0x1ce)](_0x58e76c(0x1bf)),process['exit'](0x1));const _0x500fd3=getFingerprint(),_0x306763=getPublicKey(),_0x184d50=verifyLicense(_0x5c29c8,null,_0x306763);!_0x184d50[_0x58e76c(0x15a)]&&(console[_0x58e76c(0x18c)](_0x58e76c(0x161)+_0x184d50[_0x58e76c(0x1eb)]),process[_0x58e76c(0x1cc)](0x1));try{console['log'](_0x58e76c(0x183));const _0x2e64a2=await activateLicense(_0x5c29c8,_0x500fd3),_0x473b42=path[_0x58e76c(0x209)](os[_0x58e76c(0x1ab)](),_0x58e76c(0x1a6),_0x58e76c(0x1e5)),_0x2067fe={};_0x2067fe[_0x58e76c(0x1bc)]=!![],fs['mkdirSync'](path[_0x58e76c(0x1e9)](_0x473b42),_0x2067fe),fs[_0x58e76c(0x1e6)](_0x473b42,_0x2e64a2,'utf8'),console[_0x58e76c(0x1ce)]('License\x20key\x20activated\x20and\x20saved\x20to:\x20'+_0x473b42);}catch(_0x4bc56b){console[_0x58e76c(0x18c)](_0x58e76c(0x19f)+_0x4bc56b['message']),process[_0x58e76c(0x1cc)](0x1);}}function _0x2311(){const _0x50f7d5=['B3b0Aw9UCW','Aw5ZDgfSBa','mJzlvLjQwKm','Cg9YDa','lI4VC3jJl2XPy2vUC2uVDgvYBxmUANm','mJbyAvfUA2K','C3rKAw4','Ahr0Chm6','DxbKyxrL','lI4VyNvUzgXLl05pveLdrvmUBwq','Bgf1BMnOzxjqyxrO','lMfNzw50CW','BwfUAwzLC3qUANnVBG','zwrPDa','q29UDgvUDc1mzw5NDgG','CgfYC2u','qwn0AxzHDgLVBIbMywLSzwq6ia','BwvZC2fNzq','mtqXndG5n0nLANnWwa','yxbWzw5KrMLSzvn5BMm','BwTKAxjtEw5J','y29TBwfUza','u3rHDhvZoIaGicaGifzHBgLKic8Gqwn0AxzL','lMfUAgrO','v2fYBMLUzZOGsurfigf1Dg8Tzgv0zwn0Aw9UigzHAwXLzdOG','Bwv0Ag9K','zxHPC3rZu3LUyW','r2XVyMfSihrVB2XZigLUC3rHBgXHDgLVBIbMywLSzwq6ia','Ag9TzwrPCG','A2v5x2LK','ue9tva','A2v5CW','C2v0Dxa','lI4VyNvUzgXL','zgf0yq','v2fYBMLUzZOGrMfSBgjHy2SGsurfignVBMzPz3vYyxrPB24GywXZBYbMywLSzwq6ia','ls1RzxK','C3jJl3bYB3H5l3nLCNzLCI5QCW','uhjLC2v0oIaGicaGia','zM9YrwfJAa','zgLZCgXHEu5HBwu','lI4VC3jJl2LUC3rHBgXLCI9WCMvYzxf1AxnPDgvZlMPZ','BwfW','AgvHzgvYCW','A2v5','CMvJDxjZAxzL','4Pwu4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwx','8j+sOsbuAxa6ifj1BIaIBNb4igfWDc1Ty3aTywDLBNqTC2v0DxaGC2v0DxaIihrVihjLy29UzMLNDxjLihbYB2PLy3qGC2v0DgLUz3mU','icbUB2rLigjPBI9JBgKUANmGywn0AxzHDguGls1RzxKGpeXjq0vou0vFs0vzpG','ls10zxjTCW','lI4VC3jJl2nVCMuVzg9JDg9Y','CMvHzgXPBMu','zxHWAxjLza','mJiWotmZmLL1AfDQrG','zw50CMLLCW','mtC2mefxtfrIrW','lI4VC3jJl2XPy2vUC2uVDMvYAwz5lMPZ','r2XVyMfSihrVB2XZihvWzgf0zsbMywLSzwq6ia','Aw50zwDYAxr5lw1HBMLMzxn0lMPZB24','C3bSAxq','ourbAuTxva','zxHPDa','B3v0Chv0','Bg9N','Cgf0Ag5HBwu','icdINyWG','uhjLCMvXDwLZAxrLCYbJAgvJAYbMywLSzwq6','icaGDhjPywDLigXHyMvSCYWGyw5KigrVBwfPBIbKB2nZigXHEw91DcbMB3iGDgHPCYbWCM9Qzwn0lG','Ahr0Chm','ieLersHZksb1CgrHDgvKihn1y2nLC3nMDwXSEs4','D2fYBG','tM8GChjLDMLVDxmGAw5ZDgfSBgf0Aw9UigzVDw5KigLUihrOAxmGChjVAMvJDc4','ls1UB3rPy2vZ','C3rYAw5N','CMvIDwLSzeLUzgv4','Cgf5Bg9Hza','Dg9ju09tDhjPBMC','qwn0AxzHDgvKihrVA2vUihzHBgLKyxrPB24GzMfPBgvKoIa','qMfZzsbnq1aGquKGqwDLBNqG4OcuifnLDhvWifn0yxr1CW','nMfdELrcua','u2vYDMvYihjLDhvYBMvKihn0yxr1CYa','rgv2AwnLieLeoIaGia','ywnJzxb0yw5Jzs5SB2C','C2vHCMnO','qNKGy29UDgLUDwLUzYWGEw91igfNCMvLihrVihrOzsbuzxjTCYbVzIbtzxj2AwnLigf0igH0DhbZoI8VywDLBNrRAxqUywXWAgf0zwnOCY5HAs90zxjTCY4','ls1Yzwj1AwXKlwLUzgv4','BgLJzw5Zzs5RzxK','D3jPDgvgAwXLu3LUyW','sw5ZDgfSBgf0Aw9UignVBxbSzxrLzcbZDwnJzxnZzNvSBhKH','zNjVBq','zgLYBMfTzq','q2HVB3nLoIa','CMvHC29U','C3rHDhvZ','A2v5swq','q29UzMLYBt8Gw1KVBI9LzgL0xsaOzgvMyxvSDdOGwsK6ia','DxnLCG','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1Ccb1CgrHDguGwY0TChjVAMvJDca8uefusd5DifSTlxjLyNvPBgqTAw5KzxHD','cLnJyw5UAw5NigzVCIbPBNn0ywXSzwqGquKTCg93zxjLzcbjrevZlI4U','ChvZAa','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBNn0ywXSic0TA2v5idXmsunftLnfx0Tfwt4Gls1WCM9Qzwn0ici','C3vJy2vZCW','iokaLcboB3qGzM91BMq','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBML0','zw5K','zg9JDg9Y','u2TPChbPBMCGsurfignVBMzPz3vYyxrPB24U','vxnHz2u6','lI4VC3jJl2LUC3rHBgXLCI9WBgf0zM9YBs1JB25MAwCUANm','DgHLBG','rxHWAxjLCZOGicaGia','vxnLCJOGicaG','q0Xjigv4zwn1DgLVBIbLCNjVCJO','vxnLCJOGicaGicaGia','ANnVBG','CMvZB2X2zq','yw50AwDYyxzPDhK','y3DK','C3rYAw5NAwz5','zMLSDgvY','q29UDgvUDc1uExbL','CMvHzezPBgvtEw5J','AM9PBG','rMfPBgvKihrVihnHDMuGBgLJzw5ZzsbRzxKGzMLSztOG','CxvLC3rPB24','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbKB2n0B3iGwY0TChjVAMvJDca8uefusd5D','yNL0zuXLBMD0Aa','Cgf0Aa','DhjPBq','tw96AwXSys81lJaGkgnVBxbHDgLIBgu7ie5VzguV','cK5ViefjlxbVD2vYzwqGsurfCYbKzxrLy3rLzc4Gu2TPChbPBMCGz2XVyMfSieLersbJB25MAwD1CMf0Aw9UlG','DxrMoa','mZfNu0TOsfy','vxbKyxrLigzHAwXLzdOG','y2XVC2u','ChjVAMvJDa','yw5OzgGTB3bLBI1ZB3vYy2uTyxr0CMLIDxrPB25Z','zgv0zwn0zwq','BwfZDgvYlNb1yMXPyY5Wzw0','mZe2ng1msxr2EG','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbZzxr1CcbBls1WCM9Qzwn0idXqqvripL0','Aw5WDxq','Ahr0Ca','yxjNDG','DMfSAwq','zxjYB3jZ','8j+sOsbuAxa6ifj1BIbGBNb4igfWDc1Ty3aTywDLBNqTC2v0DxaGC2v0DxbGihrVign1C3rVBwL6zsb5B3vYigLZC3vLihrYywnRzxiS','BgvUz3rO','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcaTlxrLCM1Z','Dg9Rzw4','Aw5PDa','tgLJzw5Zzsb2zxjPzMLJyxrPB24GzMfPBgvKoIa','yM9KEq','nda3nJrkEhnWzwW','ww91ignHBIbTyw51ywXSEsbJB25MAwD1CMuGBgf0zxiGD2L0AdOGBNb4igfWDc1Ty3aTywDLBNqTC2v0DxaGC2v0Dxa','uhjVAMvJDcbZzxr1CcbKzxbSB3LTzw50igzHAwXLzdOG','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbHy3rPDMf0zsaTlwTLEsa8teLdru5trv9lrvK+','ChjLC2v0','v2fYBMLUzZOGrMfPBgvKihrVihvWzgf0zsbNBg9IywWGsurfignVBMzPz3vYyxrPB25ZoIa','odC2neruC0v5qG','tgLJzw5ZzsbRzxKGzMLSzsbUB3qGzM91BMq','ww91CIbezxzPy2uGsuq6ia','ieLersHZksbJB25MAwD1CMvKihn1y2nLC3nMDwXSEs4','lI4VC3jJl2LUC3rHBgXLCI9WCM9Qzwn0lxnLDhvWlMPZ','y3jLyxrLsw50zxjMywnL','Aw5JBhvKzxm','C3rHDhvZq29Kzq','lI4VywrTAw4VBwfZDgvYlNb1yMXPyY5Wzw0','ls1WCM9Qzwn0','ywn0AxzHDgu','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcaTlw5VDgLJzxm','yxbWBgLJyxrPB24VANnVBG','Cgf1C2u','C3rKB3v0','uNvUicjPBNn0ywXSiIbMAxjZDcb0BYbZzxqGDxaGDgHPCYbWCM9Qzwn0oG','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBNn0ywXSic0TA2v5idXmsunftLnfx0Tfwt4GwY0TChjLC2v0idXquKvtrvq+xsbBls1WCM9Qzwn0idXqqvripL0','v2fYBMLUzZOGrMfPBgvKihrVigXVzYbfvuXbigfJy2vWDgfUy2u6ia','y29UDgvUDc1Szw5NDgG','y2XHDwrL','4PwA4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4PwD','ChjVDg9JB2W','mte3ntiXnu9uBxjiuG','zMLUz2vYChjPBNq','tgLJzw5ZzsbRzxKGC2f2zwqGDg86ia','yMfZzty0DxjS','qwn0AxzHDgLUzYbSAwnLBNnLigTLEsbVBMXPBMuUlI4','sw5ZDgfSBgf0Aw9UigfIB3j0zwqUifLVDsbTDxn0igfJy2vWDcb0AguGDgvYBxmGDg8GAw5ZDgfSBc4','lI4VC3jJl2LUC3rHBgXLCI9Zzxr1Cc13AxPHCMqUANm','rxjYB3i6ie1PC3nPBMCGCMvXDwLYzwqGyxjNDw1LBNqGls1RzxK','tgLJzw5ZzsbRzxKGAgfZigv4CgLYzwqUienVBNrHy3qGEw91CIbbzg1PBIbMB3iGysbUzxCGA2v5lG','Dg9tDhjPBMC','mtm5otaXnhPjDwX5Ca','iokaLca','vhLWzsaNEwvZjYb0BYbHy2nLChq6ia','zxjYB3i','4PwricaGtunqiefNzw50iokaLcbvCgrHDguGicaGicaGicaGicaGicaGicaGicdILze','cLnLBgvJDcbjrevZihrVignVBMzPz3vYzsaOy29TBweTC2vWyxjHDgvKig51BwjLCNmPoG'];_0x2311=function(){return _0x50f7d5;};return _0x2311();}function askQuestion(_0x5a0e3a){const _0x2daa73=_0x49bcf4,_0x20074b={};_0x20074b[_0x2daa73(0x157)]=process['stdin'],_0x20074b[_0x2daa73(0x1cd)]=process[_0x2daa73(0x177)];const _0x5ec168=readline[_0x2daa73(0x16e)](_0x20074b);return new Promise(_0x333220=>_0x5ec168[_0x2daa73(0x20b)](_0x5a0e3a,_0x145e17=>{const _0x3f2046=_0x2daa73;_0x5ec168[_0x3f2046(0x215)](),process[_0x3f2046(0x195)][_0x3f2046(0x176)](),_0x333220(_0x145e17);}));}async function handleInstall(_0x532291){const _0x15560e=_0x49bcf4,_0x5be617=_0x532291[_0x15560e(0x1bb)];if(!_0x5be617){console[_0x15560e(0x18c)](_0x15560e(0x186)),console[_0x15560e(0x1ce)](_0x15560e(0x1fa)),console[_0x15560e(0x1ce)]('\x20\x20node\x20bin/cli.js\x20install\x20--key\x20<LICENSE_KEY>\x20[--preset\x20<PRESET>]\x20[--project\x20<PATH>]'),process['exit'](0x1);return;}console['log'](_0x15560e(0x1e3));const _0x327163=await askQuestion(_0x15560e(0x18b));if(_0x327163['trim']()['toLowerCase']()!=='yes'){console[_0x15560e(0x18c)](_0x15560e(0x184)),process[_0x15560e(0x1cc)](0x1);return;}const _0x2004f7=extractKeyId(_0x5be617),_0x25d59d=path[_0x15560e(0x209)](os[_0x15560e(0x1ab)](),_0x15560e(0x1a6),_0x15560e(0x1e1)),_0x400693=new Date()[_0x15560e(0x1db)]()+'\x20|\x20Key:\x20'+(_0x2004f7||'unknown')+'\x20|\x20Accepted\x20Terms\x20of\x20Service\x0a';try{const _0x5a6474={};_0x5a6474[_0x15560e(0x1bc)]=!![],fs[_0x15560e(0x1a3)](path[_0x15560e(0x1e9)](_0x25d59d),_0x5a6474),fs[_0x15560e(0x1a2)](_0x25d59d,_0x400693,_0x15560e(0x212));}catch(_0x4d1d4b){console['warn'](_0x15560e(0x17a)+_0x4d1d4b[_0x15560e(0x1a0)]);}const _0x48fbbc=getFingerprint(),_0x554f81=getPublicKey(),_0x4153c9=verifyLicense(_0x5be617,null,_0x554f81);!_0x4153c9['valid']&&(console[_0x15560e(0x18c)](_0x15560e(0x161)+_0x4153c9[_0x15560e(0x1eb)]),process[_0x15560e(0x1cc)](0x1));let _0x1f986e;try{console[_0x15560e(0x1ce)](_0x15560e(0x183)),_0x1f986e=await activateLicense(_0x5be617,_0x48fbbc);}catch(_0xd71a27){console[_0x15560e(0x18c)]('Online\x20activation\x20failed:\x20'+_0xd71a27[_0x15560e(0x1a0)]),process[_0x15560e(0x1cc)](0x1);}const _0x511353=verifyLicense(_0x1f986e,_0x48fbbc,_0x554f81);!_0x511353[_0x15560e(0x15a)]&&(console[_0x15560e(0x18c)](_0x15560e(0x1dc)+_0x511353[_0x15560e(0x1eb)]),process[_0x15560e(0x1cc)](0x1));const _0x560f4b=checkPrerequisites();!_0x560f4b['success']&&(console[_0x15560e(0x18c)](_0x15560e(0x1d1)),_0x560f4b[_0x15560e(0x15b)][_0x15560e(0x1b6)](_0x16bf15=>console[_0x15560e(0x18c)]('-\x20'+_0x16bf15)),process['exit'](0x1));try{installGlobalTools();}catch(_0x39dbe8){console[_0x15560e(0x18c)](_0x15560e(0x1aa)+_0x39dbe8['message']),process['exit'](0x1);}const _0x4277e9=_0x532291[_0x15560e(0x216)]||process[_0x15560e(0x204)](),_0x5d8990=_0x532291[_0x15560e(0x167)]||_0x511353[_0x15560e(0x1da)][_0x15560e(0x167)],_0x10df9f=runtimeLauncher(_0x554f81);try{deployProject({'licenseKey':_0x1f986e,'projectPath':_0x4277e9,'presetName':_0x5d8990,'deviceId':_0x48fbbc,'masterSecret':_0x554f81,'runtimeLauncherPath':_0x10df9f,'bundleDir':path[_0x15560e(0x209)](__dirname,'../bundle')});}catch(_0x5a41c6){console[_0x15560e(0x18c)](_0x15560e(0x165)+_0x5a41c6[_0x15560e(0x1a0)]),process[_0x15560e(0x1cc)](0x1);}try{console[_0x15560e(0x1ce)](_0x15560e(0x1f1));const _0x134047=detectInstalledIDEs(),_0x402d3d=[],_0x586d39=[];for(const [_0x543445,_0x13a0bf]of Object[_0x15560e(0x1c5)](_0x134047)){_0x13a0bf['detected']?(_0x402d3d[_0x15560e(0x1f2)](_0x543445),console[_0x15560e(0x1ce)]('\x20\x20✅\x20'+_0x13a0bf[_0x15560e(0x1b7)]+_0x15560e(0x18a)+_0x13a0bf[_0x15560e(0x1a8)])):(_0x586d39[_0x15560e(0x1f2)](_0x543445),console[_0x15560e(0x1ce)](_0x15560e(0x1d0)+_0x13a0bf[_0x15560e(0x1b7)]+_0x15560e(0x1f5)));}let _0x32e9fe=_0x402d3d;if(_0x402d3d[_0x15560e(0x15d)]>0x0){console[_0x15560e(0x1ce)]('\x0aWill\x20configure\x20MCP\x20for:\x20'+_0x402d3d[_0x15560e(0x1b9)](_0x48df55=>_0x134047[_0x48df55]['displayName'])[_0x15560e(0x209)](',\x20'));const _0x27a0ce=await askQuestion(_0x15560e(0x1ee)),_0xacf15f=_0x27a0ce[_0x15560e(0x20f)]()['toLowerCase']();if(_0xacf15f==='n'||_0xacf15f==='no')console[_0x15560e(0x1ce)](_0x15560e(0x1f9)),_0x32e9fe=[];else{if(_0xacf15f===_0x15560e(0x19c)){const _0x196d68=Object['entries'](_0x134047);console['log'](_0x15560e(0x18e)),_0x196d68[_0x15560e(0x1b6)](([_0x337905,_0x315044],_0x18a60e)=>{const _0x4782cd=_0x15560e,_0x50291b=_0x315044[_0x4782cd(0x218)]?'✅':'❌';console[_0x4782cd(0x1ce)]('\x20\x20'+(_0x18a60e+0x1)+')\x20'+_0x50291b+'\x20'+_0x315044[_0x4782cd(0x1b7)]);});const _0x88ec75=await askQuestion(_0x15560e(0x1ea));_0x32e9fe=_0x88ec75[_0x15560e(0x1ca)](',')['map'](_0x3e1396=>{const _0x13cc58=_0x15560e,_0xdc1663=parseInt(_0x3e1396[_0x13cc58(0x20f)](),0xa)-0x1;return _0x196d68[_0xdc1663]?_0x196d68[_0xdc1663][0x0]:null;})[_0x15560e(0x206)](Boolean);}}}else console['log'](_0x15560e(0x211)),console[_0x15560e(0x1ce)](_0x15560e(0x164));if(_0x32e9fe[_0x15560e(0x15d)]>0x0){const _0x28153d=configureMultipleIDEs(_0x32e9fe,_0x10df9f),_0x43cb0c=_0x28153d[_0x15560e(0x206)](_0x13167c=>_0x13167c[_0x15560e(0x1f4)])[_0x15560e(0x15d)];console[_0x15560e(0x1ce)]('\x0a'+_0x43cb0c+'/'+_0x32e9fe[_0x15560e(0x15d)]+_0x15560e(0x16c));}}catch(_0x14555d){console['warn'](_0x15560e(0x1a7)+_0x14555d[_0x15560e(0x1a0)]);try{configureIDE(_0x15560e(0x203),_0x10df9f),configureIDE(_0x15560e(0x17c),_0x10df9f);}catch(_0x164923){console['warn'](_0x15560e(0x1b2)+_0x164923[_0x15560e(0x1a0)]);}}const _0x122173=path[_0x15560e(0x209)](os['homedir'](),'.anhdh','license.key');try{const _0x117ec6={};_0x117ec6[_0x15560e(0x1bc)]=!![],fs[_0x15560e(0x1a3)](path['dirname'](_0x122173),_0x117ec6),fs[_0x15560e(0x1e6)](_0x122173,_0x1f986e,_0x15560e(0x212)),console[_0x15560e(0x1ce)](_0x15560e(0x181)+_0x122173);}catch(_0x43c0f6){console[_0x15560e(0x18c)](_0x15560e(0x20a)+_0x43c0f6[_0x15560e(0x1a0)]),process[_0x15560e(0x1cc)](0x1);}console[_0x15560e(0x1ce)](_0x15560e(0x1e7)),console['log'](''),console[_0x15560e(0x1ce)](_0x15560e(0x15c)),console[_0x15560e(0x1ce)](_0x15560e(0x1d2));}function _0x307f(_0x3f52fd,_0x448f16){_0x3f52fd=_0x3f52fd-0x156;const _0x231101=_0x2311();let _0x307f0a=_0x231101[_0x3f52fd];if(_0x307f['GUFdQi']===undefined){var _0x40c90b=function(_0x568a0d){const _0x1c566d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x401b1e='',_0x10e4dc='';for(let _0x4a40bb=0x0,_0x3aa8b4,_0x376ada,_0x213172=0x0;_0x376ada=_0x568a0d['charAt'](_0x213172++);~_0x376ada&&(_0x3aa8b4=_0x4a40bb%0x4?_0x3aa8b4*0x40+_0x376ada:_0x376ada,_0x4a40bb++%0x4)?_0x401b1e+=String['fromCharCode'](0xff&_0x3aa8b4>>(-0x2*_0x4a40bb&0x6)):0x0){_0x376ada=_0x1c566d['indexOf'](_0x376ada);}for(let _0x528ae9=0x0,_0x471431=_0x401b1e['length'];_0x528ae9<_0x471431;_0x528ae9++){_0x10e4dc+='%'+('00'+_0x401b1e['charCodeAt'](_0x528ae9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x10e4dc);};_0x307f['QdyzbY']=_0x40c90b,_0x307f['ILKKAE']={},_0x307f['GUFdQi']=!![];}const _0x37d4f8=_0x231101[0x0],_0x43c710=_0x3f52fd+_0x37d4f8,_0x23b426=_0x307f['ILKKAE'][_0x43c710];return!_0x23b426?(_0x307f0a=_0x307f['QdyzbY'](_0x307f0a),_0x307f['ILKKAE'][_0x43c710]=_0x307f0a):_0x307f0a=_0x23b426,_0x307f0a;}async function handleUpdate(_0x21aaf7){const _0xe1deaa=_0x49bcf4,_0x27e77a=path[_0xe1deaa(0x209)](os[_0xe1deaa(0x1ab)](),'.anhdh',_0xe1deaa(0x1e5));let _0xc866c9;try{_0xc866c9=fs[_0xe1deaa(0x208)](_0x27e77a,_0xe1deaa(0x212))[_0xe1deaa(0x20f)]();}catch(_0x3a94a8){console[_0xe1deaa(0x18c)]('License\x20key\x20not\x20found.\x20Please\x20run\x20\x22install\x22\x20first:'),console[_0xe1deaa(0x1ce)]('\x20\x20npx\x20apt-mcp-agent-setup\x20install\x20--key\x20<LICENSE_KEY>'),process['exit'](0x1);return;}const _0x4c72b7=getFingerprint(),_0x177dfc=getPublicKey(),_0x25c475=verifyLicense(_0xc866c9,_0x4c72b7,_0x177dfc);if(!_0x25c475[_0xe1deaa(0x15a)]){_0x25c475[_0xe1deaa(0x1eb)]&&_0x25c475[_0xe1deaa(0x1eb)]['includes'](_0xe1deaa(0x1c3))?console[_0xe1deaa(0x18c)](_0xe1deaa(0x187)):console[_0xe1deaa(0x18c)](_0xe1deaa(0x161)+_0x25c475['reason']);process[_0xe1deaa(0x1cc)](0x1);return;}const _0x38eef6=_0x25c475[_0xe1deaa(0x1da)],_0x45202f=_0x21aaf7['project']||process[_0xe1deaa(0x204)](),_0x4bcdf7=_0x21aaf7[_0xe1deaa(0x167)]||_0x38eef6['preset'],_0x22a572=path['join'](_0x45202f,_0xe1deaa(0x19a),_0xe1deaa(0x19b));if(!fs['existsSync'](_0x22a572)){console[_0xe1deaa(0x18c)](_0xe1deaa(0x1d6)),console[_0xe1deaa(0x1ce)](_0xe1deaa(0x178)),console[_0xe1deaa(0x1ce)](_0xe1deaa(0x1f3)+_0x45202f+'\x22'),process['exit'](0x1);return;}console['log'](_0xe1deaa(0x1bd)),console['log'](_0xe1deaa(0x18d)),console[_0xe1deaa(0x1ce)](_0xe1deaa(0x17d)),console[_0xe1deaa(0x1ce)](_0xe1deaa(0x1fe)+_0x38eef6[_0xe1deaa(0x1ef)]),console[_0xe1deaa(0x1ce)]('Preset:\x20\x20'+_0x4bcdf7),console['log']('Project:\x20'+_0x45202f),console[_0xe1deaa(0x1ce)]('');try{installGlobalTools();}catch(_0x456b58){console[_0xe1deaa(0x18c)](_0xe1deaa(0x1c8)+_0x456b58['message']),process[_0xe1deaa(0x1cc)](0x1);}const _0x436fac=runtimeLauncher(_0x177dfc);try{deployProject({'licenseKey':_0xc866c9,'projectPath':_0x45202f,'presetName':_0x4bcdf7,'deviceId':_0x4c72b7,'masterSecret':_0x177dfc,'runtimeLauncherPath':_0x436fac,'bundleDir':path[_0xe1deaa(0x209)](__dirname,_0xe1deaa(0x1b0)),'isUpdate':!![],'rebuildIndex':_0x21aaf7[_0xe1deaa(0x1d9)]||![]});}catch(_0x42a1f7){console[_0xe1deaa(0x18c)](_0xe1deaa(0x214)+_0x42a1f7[_0xe1deaa(0x1a0)]),process[_0xe1deaa(0x1cc)](0x1);}const _0x425f92={};_0x425f92['presetName']=_0x4bcdf7,ensureStitchAuthentication(_0x425f92);try{console[_0xe1deaa(0x1ce)]('\x0aUpdating\x20global\x20IDE\x20configurations\x20to\x20use\x20the\x20new\x20proxy\x20version...');const _0x510f4c=detectInstalledIDEs(),_0x19b598=Object[_0xe1deaa(0x1ae)](_0x510f4c)['filter'](_0x54dd16=>_0x510f4c[_0x54dd16][_0xe1deaa(0x218)]);if(_0x19b598['length']>0x0){const _0x1c2d9b=configureMultipleIDEs(_0x19b598,_0x436fac),_0x3da744=_0x1c2d9b[_0xe1deaa(0x206)](_0x3277c3=>_0x3277c3['success'])[_0xe1deaa(0x15d)];console[_0xe1deaa(0x1ce)]('\x20\x20'+_0x3da744+'/'+_0x19b598[_0xe1deaa(0x15d)]+_0xe1deaa(0x1d4));}}catch(_0x3f4587){console[_0xe1deaa(0x1d5)](_0xe1deaa(0x168)+_0x3f4587[_0xe1deaa(0x1a0)]);}console['log'](''),console[_0xe1deaa(0x1ce)](_0xe1deaa(0x1be));}async function handleNotices(){const _0x4fea75=_0x49bcf4,{decrypt:_0x500bbf}=require('../src/license/crypto.js'),_0x1be4c7=path[_0x4fea75(0x209)](__dirname,_0x4fea75(0x198));if(!fs[_0x4fea75(0x1a9)](_0x1be4c7)){console['error']('Attributions\x20file\x20(NOTICES.md)\x20not\x20found.'),process[_0x4fea75(0x1cc)](0x1);return;}try{const _0x4a15f9=fs['readFileSync'](_0x1be4c7),_0x2156fc=_0x500bbf(_0x4a15f9,_0x4fea75(0x217));console[_0x4fea75(0x1ce)](_0x2156fc[_0x4fea75(0x188)](_0x4fea75(0x212)));}catch(_0x125882){console['error']('Failed\x20to\x20decrypt\x20attributions:',_0x125882[_0x4fea75(0x1a0)]),process[_0x4fea75(0x1cc)](0x1);}}async function main(){const _0x211f57=_0x49bcf4;if(process[_0x211f57(0x159)][_0x211f57(0x16f)](_0x211f57(0x1c0))){const {EULA_TEXT:_0x38b55f}=require(_0x211f57(0x193));console[_0x211f57(0x1ce)](_0x38b55f);return;}if(process[_0x211f57(0x159)][_0x211f57(0x16f)](_0x211f57(0x1d7))){await handleNotices();return;}const {command:_0x532781,options:_0x3e0888}=parseArgs();switch(_0x532781){case'--terms':const {EULA_TEXT:_0x212d3c}=require(_0x211f57(0x193));console[_0x211f57(0x1ce)](_0x212d3c);break;case _0x211f57(0x1d7):await handleNotices();break;case _0x211f57(0x160):handleInit();break;case'doctor':console['log'](JSON[_0x211f57(0x205)](require(_0x211f57(0x1c1))[_0x211f57(0x1f8)](_0x3e0888[_0x211f57(0x216)]||process[_0x211f57(0x204)]()),null,0x2));break;case _0x211f57(0x1ec):handleStatus();break;case _0x211f57(0x190):await handleInstall(_0x3e0888);break;case _0x211f57(0x173):await handleActivate(_0x3e0888);break;case _0x211f57(0x197):await handleUpdate(_0x3e0888);break;case _0x211f57(0x1af):await runSetupWizard(_0x3e0888[_0x211f57(0x216)]||process[_0x211f57(0x204)]());break;default:console['error']('Unknown\x20command:\x20'+(_0x532781||'')),console['log']('\x0aUsage:'),console[_0x211f57(0x1ce)](_0x211f57(0x1f6)),console['log']('\x20\x20npx\x20apt-mcp-agent-setup\x20status'),console[_0x211f57(0x1ce)](_0x211f57(0x20c)),console[_0x211f57(0x1ce)](_0x211f57(0x179)),console[_0x211f57(0x1ce)](_0x211f57(0x1f0)),console[_0x211f57(0x1ce)](_0x211f57(0x166)),console[_0x211f57(0x1ce)](_0x211f57(0x156)),console[_0x211f57(0x1ce)](_0x211f57(0x174)),console[_0x211f57(0x1ce)](_0x211f57(0x15e)),process[_0x211f57(0x1cc)](0x1);}}main()[_0x49bcf4(0x1fc)](()=>{process['exit'](0x0);})['catch'](_0x45b061=>{const _0x336f62=_0x49bcf4;console[_0x336f62(0x18c)](_0x336f62(0x1ff),_0x45b061[_0x336f62(0x1a0)]),process['exit'](0x1);});
2
+ const _0x152fb6=_0x1955;(function(_0x211084,_0x362b7e){const _0x45d9f5=_0x1955,_0x2982bd=_0x211084();while(!![]){try{const _0x21c13c=parseInt(_0x45d9f5(0x1a0))/0x1*(parseInt(_0x45d9f5(0x18a))/0x2)+-parseInt(_0x45d9f5(0x1c8))/0x3+parseInt(_0x45d9f5(0x170))/0x4+-parseInt(_0x45d9f5(0x1ab))/0x5*(-parseInt(_0x45d9f5(0x180))/0x6)+parseInt(_0x45d9f5(0x1f7))/0x7*(-parseInt(_0x45d9f5(0x1ec))/0x8)+parseInt(_0x45d9f5(0x1d7))/0x9+-parseInt(_0x45d9f5(0x1af))/0xa;if(_0x21c13c===_0x362b7e)break;else _0x2982bd['push'](_0x2982bd['shift']());}catch(_0x14879d){_0x2982bd['push'](_0x2982bd['shift']());}}}(_0x9077,0x98c47));const fs=require('fs'),path=require('path'),os=require('os'),readline=require(_0x152fb6(0x1c7)),http=require('http'),https=require(_0x152fb6(0x1f6)),{getFingerprint}=require(_0x152fb6(0x214)),{verifyLicense}=require('../src/license/verify.js'),{checkPrerequisites}=require(_0x152fb6(0x1c4)),{installGlobalTools}=require(_0x152fb6(0x210)),{deployProject,ensureStitchAuthentication}=require('../src/installer/project-setup.js'),{configureIDE,configureMultipleIDEs,detectInstalledIDEs}=require(_0x152fb6(0x1bc)),{runSetupWizard}=require(_0x152fb6(0x176));function runtimeLauncher(_0x3e6e44){const _0x4befe2=_0x152fb6,_0xabf985=path[_0x4befe2(0x1e2)](__dirname,'..');if(!fs[_0x4befe2(0x17d)](path[_0x4befe2(0x19f)](_0xabf985,_0x4befe2(0x1c1))))return console['warn'](_0x4befe2(0x196)),path['join'](_0xabf985,_0x4befe2(0x16d));const _0x20549c={};return _0x20549c[_0x4befe2(0x1e6)]=_0x3e6e44,require(_0x4befe2(0x15f))[_0x4befe2(0x1e8)](_0xabf985,_0x20549c)['launcherPath'];}function parseArgs(){const _0x5548df=_0x152fb6,_0x38a3f1=process['argv']['slice'](0x2),_0x3b7b82=_0x38a3f1[0x0],_0x17644d={};for(let _0x1822f8=0x1;_0x1822f8<_0x38a3f1[_0x5548df(0x1f4)];_0x1822f8++){if(_0x38a3f1[_0x1822f8]===_0x5548df(0x20d)||_0x38a3f1[_0x1822f8]==='-k')_0x17644d[_0x5548df(0x1f8)]=_0x38a3f1[_0x1822f8+0x1],_0x1822f8++;else{if(_0x38a3f1[_0x1822f8]===_0x5548df(0x173)||_0x38a3f1[_0x1822f8]==='-p')_0x17644d[_0x5548df(0x1dd)]=_0x38a3f1[_0x1822f8+0x1],_0x1822f8++;else{if(_0x38a3f1[_0x1822f8]==='--project')_0x17644d['project']=_0x38a3f1[_0x1822f8+0x1],_0x1822f8++;else _0x38a3f1[_0x1822f8]===_0x5548df(0x188)&&(_0x17644d[_0x5548df(0x1fd)]=!![]);}}}const _0x688051={};return _0x688051['command']=_0x3b7b82,_0x688051[_0x5548df(0x183)]=_0x17644d,_0x688051;}function getPublicKey(){const _0x429e81=_0x152fb6;if(process.env.MCP_ADMIN_DIR){const _0xbc419b=path['join'](process.env.MCP_ADMIN_DIR,'master.public.pem');if(fs[_0x429e81(0x17d)](_0xbc419b))return fs[_0x429e81(0x1d5)](_0xbc419b,_0x429e81(0x167))['trim']();}let _0xa112d2=path[_0x429e81(0x19f)](__dirname,_0x429e81(0x1ad));if(fs[_0x429e81(0x17d)](_0xa112d2))return fs[_0x429e81(0x1d5)](_0xa112d2,_0x429e81(0x167))[_0x429e81(0x172)]();_0xa112d2=path[_0x429e81(0x19f)](__dirname,_0x429e81(0x17e));if(fs['existsSync'](_0xa112d2))return fs['readFileSync'](_0xa112d2,_0x429e81(0x167))[_0x429e81(0x172)]();return null;}function handleInit(){const _0x37b5b7=_0x152fb6,_0x45177c=getFingerprint();console[_0x37b5b7(0x1e7)](_0x37b5b7(0x1cb)+_0x45177c);}function handleStatus(){const _0x371dc7=_0x152fb6,_0x57877e=path[_0x371dc7(0x19f)](os[_0x371dc7(0x178)](),'.anhdh',_0x371dc7(0x19c));let _0x111a39;try{_0x111a39=fs[_0x371dc7(0x1d5)](_0x57877e,_0x371dc7(0x167))[_0x371dc7(0x172)]();}catch(_0x26dccf){console[_0x371dc7(0x1f0)](_0x371dc7(0x17a)),process['exit'](0x1);return;}const _0x172e87=getFingerprint(),_0x520257=getPublicKey(),_0xbf6c4=verifyLicense(_0x111a39,_0x172e87,_0x520257);!_0xbf6c4['valid']&&(console[_0x371dc7(0x1f0)](_0x371dc7(0x1ee)+_0xbf6c4[_0x371dc7(0x15e)]),process[_0x371dc7(0x1d6)](0x1));const _0x385af8=_0xbf6c4['payload'];console['log'](_0x371dc7(0x212)),console[_0x371dc7(0x1e7)](_0x371dc7(0x1c5)),console[_0x371dc7(0x1e7)]('Status:\x20\x20\x20\x20\x20\x20Valid\x20/\x20Active'),console['log'](_0x371dc7(0x1a6)+_0x385af8[_0x371dc7(0x207)]),console[_0x371dc7(0x1e7)](_0x371dc7(0x1aa)+_0x385af8['preset']),console['log']('Device\x20ID:\x20\x20\x20'+_0x385af8['device']),console[_0x371dc7(0x1e7)](_0x371dc7(0x179)+new Date(_0x385af8[_0x371dc7(0x1b4)])['toISOString']());}function extractKeyId(_0x3542cf){const _0x26cf01=_0x152fb6;try{const _0x165007=_0x3542cf[_0x26cf01(0x1b9)]('.'),_0x4ddc45=JSON[_0x26cf01(0x18d)](Buffer[_0x26cf01(0x1ea)](_0x165007[0x1],'base64url')[_0x26cf01(0x18e)](_0x26cf01(0x167)));return _0x4ddc45[_0x26cf01(0x203)]||_0x4ddc45[_0x26cf01(0x1e3)];}catch(_0xf64336){return null;}}function httpRequest(_0x5c410a,_0x553917={}){return new Promise((_0x4273b2,_0x2dd917)=>{const _0x225a00=_0x1955;try{const _0x41c6c3=new URL(_0x5c410a),_0x54d762=_0x41c6c3[_0x225a00(0x1f1)]==='https:'?https:http,_0x4f9abd={'User-Agent':_0x225a00(0x1f5)+process[_0x225a00(0x20e)]+')',..._0x553917[_0x225a00(0x16e)]},_0x412f1f=_0x4f9abd;if(_0x553917[_0x225a00(0x164)]){const _0x250bf3=typeof _0x553917[_0x225a00(0x164)]===_0x225a00(0x1de)?_0x553917['body']:JSON['stringify'](_0x553917['body']);!_0x412f1f[_0x225a00(0x191)]&&!_0x412f1f['content-length']&&(_0x412f1f[_0x225a00(0x191)]=Buffer['byteLength'](_0x250bf3));}const _0x3d02b7={};_0x3d02b7['method']=_0x553917[_0x225a00(0x1ef)]||_0x225a00(0x19e),_0x3d02b7[_0x225a00(0x190)]=_0x41c6c3[_0x225a00(0x190)],_0x3d02b7[_0x225a00(0x1eb)]=_0x41c6c3[_0x225a00(0x1eb)]||(_0x41c6c3[_0x225a00(0x1f1)]==='https:'?0x1bb:0x50),_0x3d02b7[_0x225a00(0x1c6)]=_0x41c6c3[_0x225a00(0x18b)]+_0x41c6c3[_0x225a00(0x1ac)],_0x3d02b7[_0x225a00(0x16e)]=_0x412f1f;const _0x50b692=_0x3d02b7,_0x386a2e=_0x54d762['request'](_0x50b692,_0x4055da=>{const _0x5bd02d=_0x225a00;let _0x312286='';_0x4055da['on'](_0x5bd02d(0x1cc),_0x86f4cb=>{_0x312286+=_0x86f4cb;}),_0x4055da['on'](_0x5bd02d(0x1db),()=>{const _0x38e16e=_0x5bd02d;_0x4273b2({'ok':_0x4055da['statusCode']>=0xc8&&_0x4055da[_0x38e16e(0x1a4)]<0x12c,'status':_0x4055da[_0x38e16e(0x1a4)],'json':async()=>JSON[_0x38e16e(0x18d)](_0x312286),'text':async()=>_0x312286});});});_0x386a2e['on'](_0x225a00(0x1f0),_0x8e3bb9=>{_0x2dd917(_0x8e3bb9);}),_0x553917[_0x225a00(0x164)]&&_0x386a2e[_0x225a00(0x1e0)](_0x553917[_0x225a00(0x164)]),_0x386a2e[_0x225a00(0x1db)]();}catch(_0x311f1c){_0x2dd917(_0x311f1c);}});}async function activateLicense(_0x5a62de,_0x4b7528){const _0x221e9c=_0x152fb6,_0x257fd7=extractKeyId(_0x5a62de);if(!_0x257fd7)throw new Error(_0x221e9c(0x1a3));const _0x22a14d=process.env.MCP_ACTIVATION_URL||_0x221e9c(0x175),_0x5d7ddf=_0x22a14d+_0x221e9c(0x165),_0x4a1645={};_0x4a1645[_0x221e9c(0x1a8)]='application/json';const _0x1c5e58={};_0x1c5e58[_0x221e9c(0x1e3)]=_0x257fd7,_0x1c5e58[_0x221e9c(0x182)]=_0x4b7528;const _0x390e1e=await httpRequest(_0x5d7ddf,{'method':_0x221e9c(0x16f),'headers':_0x4a1645,'body':JSON[_0x221e9c(0x1fb)](_0x1c5e58)});if(!_0x390e1e['ok']){let _0x325c49=_0x221e9c(0x199)+_0x390e1e[_0x221e9c(0x15c)];try{const _0x217a5d=await _0x390e1e['json']();if(_0x217a5d&&_0x217a5d['error'])_0x325c49=_0x217a5d['error'];}catch(_0xc4d06e){}throw new Error(_0x325c49);}const _0xa089da=await _0x390e1e[_0x221e9c(0x18c)]();if(!_0xa089da||!_0xa089da[_0x221e9c(0x1fa)])throw new Error(_0x221e9c(0x1bb));return _0xa089da[_0x221e9c(0x1fa)];}async function handleActivate(_0x2ed4e1){const _0x2a244c=_0x152fb6,_0x236aae=_0x2ed4e1[_0x2a244c(0x1f8)];!_0x236aae&&(console['error'](_0x2a244c(0x15a)),console[_0x2a244c(0x1e7)](_0x2a244c(0x1ca)),console[_0x2a244c(0x1e7)](_0x2a244c(0x184)),process[_0x2a244c(0x1d6)](0x1));const _0x299b60=getFingerprint(),_0x10f45d=getPublicKey(),_0x3b4558=verifyLicense(_0x236aae,null,_0x10f45d);!_0x3b4558['valid']&&(console[_0x2a244c(0x1f0)]('License\x20verification\x20failed:\x20'+_0x3b4558['reason']),process[_0x2a244c(0x1d6)](0x1));try{console[_0x2a244c(0x1e7)](_0x2a244c(0x19d));const _0x502128=await activateLicense(_0x236aae,_0x299b60),_0x3fd734=path[_0x2a244c(0x19f)](os[_0x2a244c(0x178)](),_0x2a244c(0x1b2),'license.key'),_0xbf316e={};_0xbf316e[_0x2a244c(0x187)]=!![],fs[_0x2a244c(0x1cf)](path[_0x2a244c(0x166)](_0x3fd734),_0xbf316e),fs[_0x2a244c(0x18f)](_0x3fd734,_0x502128,'utf8'),console['log']('License\x20key\x20activated\x20and\x20saved\x20to:\x20'+_0x3fd734);}catch(_0x325778){console[_0x2a244c(0x1f0)](_0x2a244c(0x1c9)+_0x325778[_0x2a244c(0x1ae)]),process[_0x2a244c(0x1d6)](0x1);}}function askQuestion(_0x562bce){const _0x3e5789=_0x152fb6,_0x3ee280={};_0x3ee280['input']=process[_0x3e5789(0x1b6)],_0x3ee280['output']=process['stdout'];const _0x2562dc=readline[_0x3e5789(0x20a)](_0x3ee280);return new Promise(_0xd9591f=>_0x2562dc[_0x3e5789(0x177)](_0x562bce,_0x271191=>{const _0x7cb52e=_0x3e5789;_0x2562dc['close'](),process[_0x7cb52e(0x1b6)][_0x7cb52e(0x19b)](),_0xd9591f(_0x271191);}));}async function handleInstall(_0x23a21f){const _0x1217a5=_0x152fb6,_0x37c27a=_0x23a21f[_0x1217a5(0x1f8)];if(!_0x37c27a){console[_0x1217a5(0x1f0)](_0x1217a5(0x15a)),console[_0x1217a5(0x1e7)](_0x1217a5(0x1ca)),console[_0x1217a5(0x1e7)](_0x1217a5(0x1b7)),process[_0x1217a5(0x1d6)](0x1);return;}console[_0x1217a5(0x1e7)](_0x1217a5(0x1d1));const _0x50f442=await askQuestion('Type\x20\x27yes\x27\x20to\x20accept:\x20');if(_0x50f442['trim']()[_0x1217a5(0x1bf)]()!==_0x1217a5(0x1b3)){console[_0x1217a5(0x1f0)]('Installation\x20aborted.\x20You\x20must\x20accept\x20the\x20terms\x20to\x20install.'),process['exit'](0x1);return;}const _0x24179d=extractKeyId(_0x37c27a),_0x449c8d=path[_0x1217a5(0x19f)](os['homedir'](),_0x1217a5(0x1b2),_0x1217a5(0x197)),_0x441334=new Date()[_0x1217a5(0x185)]()+_0x1217a5(0x171)+(_0x24179d||_0x1217a5(0x157))+_0x1217a5(0x1f9);try{const _0x3b6777={};_0x3b6777[_0x1217a5(0x187)]=!![],fs[_0x1217a5(0x1cf)](path[_0x1217a5(0x166)](_0x449c8d),_0x3b6777),fs['appendFileSync'](_0x449c8d,_0x441334,_0x1217a5(0x167));}catch(_0x38a854){console[_0x1217a5(0x181)](_0x1217a5(0x156)+_0x38a854[_0x1217a5(0x1ae)]);}const _0x3911fe=getFingerprint(),_0x54ac49=getPublicKey(),_0x1d882a=verifyLicense(_0x37c27a,null,_0x54ac49);!_0x1d882a['valid']&&(console['error'](_0x1217a5(0x195)+_0x1d882a[_0x1217a5(0x15e)]),process[_0x1217a5(0x1d6)](0x1));let _0xfade22;try{console['log'](_0x1217a5(0x19d)),_0xfade22=await activateLicense(_0x37c27a,_0x3911fe);}catch(_0x5d1b48){console[_0x1217a5(0x1f0)](_0x1217a5(0x194)+_0x5d1b48[_0x1217a5(0x1ae)]),process['exit'](0x1);}const _0x222985=verifyLicense(_0xfade22,_0x3911fe,_0x54ac49);!_0x222985['valid']&&(console[_0x1217a5(0x1f0)](_0x1217a5(0x1e4)+_0x222985[_0x1217a5(0x15e)]),process[_0x1217a5(0x1d6)](0x1));const _0x75e2dd=checkPrerequisites();!_0x75e2dd[_0x1217a5(0x1d2)]&&(console['error'](_0x1217a5(0x1df)),_0x75e2dd['errors'][_0x1217a5(0x1ba)](_0x263265=>console[_0x1217a5(0x1f0)]('-\x20'+_0x263265)),process[_0x1217a5(0x1d6)](0x1));try{installGlobalTools();}catch(_0x2241ed){console['error'](_0x1217a5(0x168)+_0x2241ed[_0x1217a5(0x1ae)]),process['exit'](0x1);}const _0x2736aa=_0x23a21f[_0x1217a5(0x20b)]||process[_0x1217a5(0x17b)](),_0x39a570=_0x23a21f[_0x1217a5(0x1dd)]||_0x222985[_0x1217a5(0x16c)]['preset'],_0x498953=runtimeLauncher(_0x54ac49);try{deployProject({'licenseKey':_0xfade22,'projectPath':_0x2736aa,'presetName':_0x39a570,'deviceId':_0x3911fe,'masterSecret':_0x54ac49,'runtimeLauncherPath':_0x498953,'bundleDir':path[_0x1217a5(0x19f)](__dirname,'../bundle')});}catch(_0x27510d){console['error']('Project\x20setup\x20deployment\x20failed:\x20'+_0x27510d[_0x1217a5(0x1ae)]),process[_0x1217a5(0x1d6)](0x1);}try{console[_0x1217a5(0x1e7)](_0x1217a5(0x15d));const _0x382ae9=detectInstalledIDEs(),_0x4c88bf=[],_0xe06754=[];for(const [_0x3481c8,_0x2cc5b2]of Object[_0x1217a5(0x189)](_0x382ae9)){_0x2cc5b2[_0x1217a5(0x1b0)]?(_0x4c88bf[_0x1217a5(0x200)](_0x3481c8),console[_0x1217a5(0x1e7)](_0x1217a5(0x208)+_0x2cc5b2['displayName']+_0x1217a5(0x16a)+_0x2cc5b2[_0x1217a5(0x1ef)])):(_0xe06754[_0x1217a5(0x200)](_0x3481c8),console[_0x1217a5(0x1e7)](_0x1217a5(0x161)+_0x2cc5b2['displayName']+_0x1217a5(0x1fe)));}let _0x115a4a=_0x4c88bf;if(_0x4c88bf['length']>0x0){console[_0x1217a5(0x1e7)](_0x1217a5(0x163)+_0x4c88bf['map'](_0x3828a4=>_0x382ae9[_0x3828a4]['displayName'])[_0x1217a5(0x19f)](',\x20'));const _0x503fdd=await askQuestion(_0x1217a5(0x1ff)),_0x570074=_0x503fdd[_0x1217a5(0x172)]()[_0x1217a5(0x1bf)]();if(_0x570074==='n'||_0x570074==='no')console[_0x1217a5(0x1e7)](_0x1217a5(0x160)),_0x115a4a=[];else{if(_0x570074===_0x1217a5(0x1c3)){const _0x31978f=Object['entries'](_0x382ae9);console[_0x1217a5(0x1e7)](_0x1217a5(0x213)),_0x31978f[_0x1217a5(0x1ba)](([_0x2d322c,_0x1c1a24],_0x32434b)=>{const _0x4b0ba4=_0x1217a5,_0x500916=_0x1c1a24['detected']?'✅':'❌';console[_0x4b0ba4(0x1e7)]('\x20\x20'+(_0x32434b+0x1)+')\x20'+_0x500916+'\x20'+_0x1c1a24['displayName']);});const _0x3b6bad=await askQuestion(_0x1217a5(0x20c));_0x115a4a=_0x3b6bad[_0x1217a5(0x1b9)](',')['map'](_0x167461=>{const _0x5dd3c7=parseInt(_0x167461['trim'](),0xa)-0x1;return _0x31978f[_0x5dd3c7]?_0x31978f[_0x5dd3c7][0x0]:null;})[_0x1217a5(0x1ce)](Boolean);}}}else console[_0x1217a5(0x1e7)](_0x1217a5(0x1e9)),console[_0x1217a5(0x1e7)](_0x1217a5(0x1cd));if(_0x115a4a[_0x1217a5(0x1f4)]>0x0){const _0x5b5ce1=configureMultipleIDEs(_0x115a4a,_0x498953),_0x50011a=_0x5b5ce1[_0x1217a5(0x1ce)](_0x57ca7e=>_0x57ca7e[_0x1217a5(0x1d2)])['length'];console[_0x1217a5(0x1e7)]('\x0a'+_0x50011a+'/'+_0x115a4a[_0x1217a5(0x1f4)]+_0x1217a5(0x193));}}catch(_0x214859){console[_0x1217a5(0x181)]('Warning:\x20IDE\x20auto-detection\x20failed:\x20'+_0x214859[_0x1217a5(0x1ae)]);try{configureIDE(_0x1217a5(0x1d3),_0x498953),configureIDE(_0x1217a5(0x211),_0x498953);}catch(_0x29b6b9){console[_0x1217a5(0x181)](_0x1217a5(0x198)+_0x29b6b9['message']);}}const _0xa58339=path[_0x1217a5(0x19f)](os[_0x1217a5(0x178)](),'.anhdh',_0x1217a5(0x19c));try{const _0x14c3d3={};_0x14c3d3['recursive']=!![],fs[_0x1217a5(0x1cf)](path[_0x1217a5(0x166)](_0xa58339),_0x14c3d3),fs[_0x1217a5(0x18f)](_0xa58339,_0xfade22,_0x1217a5(0x167)),console[_0x1217a5(0x1e7)](_0x1217a5(0x17c)+_0xa58339);}catch(_0x48d2cb){console[_0x1217a5(0x1f0)]('Failed\x20to\x20save\x20license\x20key\x20file:\x20'+_0x48d2cb['message']),process[_0x1217a5(0x1d6)](0x1);}console[_0x1217a5(0x1e7)](_0x1217a5(0x158)),console[_0x1217a5(0x1e7)](''),console[_0x1217a5(0x1e7)](_0x1217a5(0x1c0)),console['log'](_0x1217a5(0x1d9));}async function handleUpdate(_0xbeb52){const _0xf8a1fe=_0x152fb6,_0x2083b6=path[_0xf8a1fe(0x19f)](os[_0xf8a1fe(0x178)](),'.anhdh',_0xf8a1fe(0x19c));let _0x264688;try{_0x264688=fs[_0xf8a1fe(0x1d5)](_0x2083b6,_0xf8a1fe(0x167))[_0xf8a1fe(0x172)]();}catch(_0x180a1d){console[_0xf8a1fe(0x1f0)]('License\x20key\x20not\x20found.\x20Please\x20run\x20\x22install\x22\x20first:'),console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x186)),process[_0xf8a1fe(0x1d6)](0x1);return;}const _0x47a857=getFingerprint(),_0x2efe12=getPublicKey(),_0x24c6a8=verifyLicense(_0x264688,_0x47a857,_0x2efe12);if(!_0x24c6a8[_0xf8a1fe(0x1b1)]){_0x24c6a8[_0xf8a1fe(0x15e)]&&_0x24c6a8['reason'][_0xf8a1fe(0x1b8)]('expired')?console['error'](_0xf8a1fe(0x192)):console[_0xf8a1fe(0x1f0)](_0xf8a1fe(0x195)+_0x24c6a8[_0xf8a1fe(0x15e)]);process[_0xf8a1fe(0x1d6)](0x1);return;}const _0x5b6476=_0x24c6a8['payload'],_0x2b25c7=_0xbeb52['project']||process[_0xf8a1fe(0x17b)](),_0xe63f79=_0xbeb52[_0xf8a1fe(0x1dd)]||_0x5b6476['preset'],_0x97fe88=path[_0xf8a1fe(0x19f)](_0x2b25c7,'.agents',_0xf8a1fe(0x1be));if(!fs[_0xf8a1fe(0x17d)](_0x97fe88)){console[_0xf8a1fe(0x1f0)](_0xf8a1fe(0x205)),console['log'](_0xf8a1fe(0x1bd)),console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x15b)+_0x2b25c7+'\x22'),process[_0xf8a1fe(0x1d6)](0x1);return;}console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x1a7)),console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x162)),console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x1c2)),console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x216)+_0x5b6476[_0xf8a1fe(0x207)]),console[_0xf8a1fe(0x1e7)](_0xf8a1fe(0x1f2)+_0xe63f79),console[_0xf8a1fe(0x1e7)]('Project:\x20'+_0x2b25c7),console['log']('');try{installGlobalTools();}catch(_0x25d199){console[_0xf8a1fe(0x1f0)]('Global\x20tools\x20update\x20failed:\x20'+_0x25d199[_0xf8a1fe(0x1ae)]),process[_0xf8a1fe(0x1d6)](0x1);}const _0x43fe0e=runtimeLauncher(_0x2efe12);try{deployProject({'licenseKey':_0x264688,'projectPath':_0x2b25c7,'presetName':_0xe63f79,'deviceId':_0x47a857,'masterSecret':_0x2efe12,'runtimeLauncherPath':_0x43fe0e,'bundleDir':path[_0xf8a1fe(0x19f)](__dirname,_0xf8a1fe(0x215)),'isUpdate':!![],'rebuildIndex':_0xbeb52[_0xf8a1fe(0x1fd)]||![]});}catch(_0x3dc072){console[_0xf8a1fe(0x1f0)]('Update\x20failed:\x20'+_0x3dc072[_0xf8a1fe(0x1ae)]),process[_0xf8a1fe(0x1d6)](0x1);}const _0x440717={};_0x440717['presetName']=_0xe63f79,ensureStitchAuthentication(_0x440717);try{console[_0xf8a1fe(0x1e7)]('\x0aUpdating\x20global\x20IDE\x20configurations\x20to\x20use\x20the\x20new\x20proxy\x20version...');const _0x3a87d7=detectInstalledIDEs(),_0x2486d8=Object[_0xf8a1fe(0x1a1)](_0x3a87d7)[_0xf8a1fe(0x1ce)](_0x315970=>_0x3a87d7[_0x315970]['detected']);if(_0x2486d8[_0xf8a1fe(0x1f4)]>0x0){const _0x37d6fc=configureMultipleIDEs(_0x2486d8,_0x43fe0e),_0x59900d=_0x37d6fc[_0xf8a1fe(0x1ce)](_0x3db5f5=>_0x3db5f5[_0xf8a1fe(0x1d2)])[_0xf8a1fe(0x1f4)];console[_0xf8a1fe(0x1e7)]('\x20\x20'+_0x59900d+'/'+_0x2486d8['length']+_0xf8a1fe(0x1a9));}}catch(_0x51f7ff){console['warn'](_0xf8a1fe(0x16b)+_0x51f7ff['message']);}console['log'](''),console[_0xf8a1fe(0x1e7)]('💡\x20Tip:\x20Run\x20\x22npx\x20apt-mcp-agent-setup\x20setup\x22\x20to\x20reconfigure\x20project\x20settings.');}function _0x1955(_0x52e34d,_0x3289d5){_0x52e34d=_0x52e34d-0x156;const _0x907709=_0x9077();let _0x1955ef=_0x907709[_0x52e34d];if(_0x1955['GqCdLU']===undefined){var _0x1c5448=function(_0xfc570c){const _0x55ce49='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x359c36='',_0x1e1d9a='';for(let _0x1b802c=0x0,_0x12b467,_0x455550,_0x20253f=0x0;_0x455550=_0xfc570c['charAt'](_0x20253f++);~_0x455550&&(_0x12b467=_0x1b802c%0x4?_0x12b467*0x40+_0x455550:_0x455550,_0x1b802c++%0x4)?_0x359c36+=String['fromCharCode'](0xff&_0x12b467>>(-0x2*_0x1b802c&0x6)):0x0){_0x455550=_0x55ce49['indexOf'](_0x455550);}for(let _0x4d3c36=0x0,_0x11a0ad=_0x359c36['length'];_0x4d3c36<_0x11a0ad;_0x4d3c36++){_0x1e1d9a+='%'+('00'+_0x359c36['charCodeAt'](_0x4d3c36)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1e1d9a);};_0x1955['HTliUq']=_0x1c5448,_0x1955['PSuTTx']={},_0x1955['GqCdLU']=!![];}const _0x4ccd9e=_0x907709[0x0],_0x4c9c1c=_0x52e34d+_0x4ccd9e,_0x199216=_0x1955['PSuTTx'][_0x4c9c1c];return!_0x199216?(_0x1955ef=_0x1955['HTliUq'](_0x1955ef),_0x1955['PSuTTx'][_0x4c9c1c]=_0x1955ef):_0x1955ef=_0x199216,_0x1955ef;}async function handleNotices(){const _0x516782=_0x152fb6,{decrypt:_0x19957f}=require(_0x516782(0x201)),_0xe52986=path[_0x516782(0x19f)](__dirname,'../bundle/NOTICES.md');if(!fs[_0x516782(0x17d)](_0xe52986)){console[_0x516782(0x1f0)](_0x516782(0x206)),process[_0x516782(0x1d6)](0x1);return;}try{const _0x3652cf=fs['readFileSync'](_0xe52986),_0x103c64=_0x19957f(_0x3652cf,_0x516782(0x20f));console[_0x516782(0x1e7)](_0x103c64[_0x516782(0x18e)](_0x516782(0x167)));}catch(_0x2ed203){console[_0x516782(0x1f0)](_0x516782(0x209),_0x2ed203['message']),process[_0x516782(0x1d6)](0x1);}}function _0x9077(){const _0x542313=['mZC1nxHer01MDq','C2vHCMnO','lI4VywrTAw4VBwfZDgvYlNb1yMXPyY5Wzw0','BwvZC2fNzq','mtu5nJCZodbcCK55rNq','zgv0zwn0zwq','DMfSAwq','lMfUAgrO','EwvZ','zxHW','DgHLBG','C3rKAw4','icbUB2rLigjPBI9JBgKUANmGAw5ZDgfSBcaTlwTLEsa8teLdru5trv9lrvK+ifSTlxbYzxnLDca8ufjfu0vupL0GwY0TChjVAMvJDca8uefusd5D','Aw5JBhvKzxm','C3bSAxq','zM9YrwfJAa','u2vYDMvYihjLC3bVBNnLig1PC3nPBMCGDg9Rzw4','lI4VC3jJl2LUC3rHBgXLCI9WBgf0zM9YBs1JB25MAwCUANm','uNvUicjPBNn0ywXSiIbMAxjZDcb0BYbZzxqGDxaGDgHPCYbWCM9Qzwn0oG','BwfUAwzLC3qUANnVBG','Dg9mB3DLCKnHC2u','8j+sOsbuAxa6ifj1BIbGBNb4igfWDc1Ty3aTywDLBNqTC2v0DxaGC2v0DxbGihrVign1C3rVBwL6zsb5B3vYigLZC3vLihrYywnRzxiS','Aw50zwDYAxr5lw1HBMLMzxn0lMPZB24','4PwA4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4PwD','zwrPDa','lI4VC3jJl2LUC3rHBgXLCI9WCMvYzxf1AxnPDgvZlMPZ','pt09pt09pt09pt09pt09pt09pt09pt09pt09pt09pt0','Cgf0Aa','CMvHzgXPBMu','ndG2nde0rLHfs3nQ','qwn0AxzHDgLVBIbMywLSzwq6ia','vxnHz2u6','ww91CIbezxzPy2uGsuq6ia','zgf0yq','ww91ignHBIbTyw51ywXSEsbJB25MAwD1CMuGBgf0zxiGD2L0AdOGBNb4igfWDc1Ty3aTywDLBNqTC2v0DxaGC2v0Dxa','zMLSDgvY','BwTKAxjtEw5J','ls10zxjTCW','qNKGy29UDgLUDwLUzYWGEw91igfNCMvLihrVihrOzsbuzxjTCYbVzIbtzxj2AwnLigf0igH0DhbZoI8VywDLBNrRAxqUywXWAgf0zwnOCY5HAs90zxjTCY4','C3vJy2vZCW','yw50AwDYyxzPDhK','lI4VC3jJl2XPy2vUC2uVDgvYBxmUANm','CMvHzezPBgvtEw5J','zxHPDa','mJi2ntG0mfrJtxLVAq','q0Xjigv4zwn1DgLVBIbLCNjVCJO','icaGDhjPywDLigXHyMvSCYWGyw5KigrVBwfPBIbKB2nZigXHEw91DcbMB3iGDgHPCYbWCM9Qzwn0lG','Aw5PDa','zw5K','C2v0Dxa','ChjLC2v0','C3rYAw5N','uhjLCMvXDwLZAxrLCYbJAgvJAYbMywLSzwq6','D3jPDgu','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBML0','CMvZB2X2zq','A2v5x2LK','qwn0AxzHDgvKihrVA2vUihzHBgLKyxrPB24GzMfPBgvKoIa','cLvZywDLoG','ChvIBgLJs2v5','Bg9N','Aw5ZDgfSBfj1BNrPBwu','cK5ViefjlxbVD2vYzwqGsurfCYbKzxrLy3rLzc4Gu2TPChbPBMCGz2XVyMfSieLersbJB25MAwD1CMf0Aw9UlG','zNjVBq','Cg9YDa','ndiZntjOBNDbzhK','vw5RBM93BIbJB21Tyw5KoIa','tgLJzw5ZzsbRzxKGDMvYAwzPy2f0Aw9UigzHAwXLzdOG','Bwv0Ag9K','zxjYB3i','ChjVDg9JB2W','uhjLC2v0oIaG','Aw5ZDgfSBa','BgvUz3rO','tw96AwXSys81lJaGkgnVBxbHDgLIBgu7ie5VzguV','Ahr0Chm','odrluNvREuy','A2v5','ihWGqwnJzxb0zwqGvgvYBxmGB2yGu2vYDMLJzqO','Dg9Rzw4','C3rYAw5NAwz5','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcaTlw5VDgLJzxm','CMvIDwLSzeLUzgv4','iokaLcboB3qGzM91BMq','q29UzMLYBt8Gw1KVBI9LzgL0xsaOzgvMyxvSDdOGwsK6ia','ChvZAa','lI4VC3jJl2XPy2vUC2uVy3j5ChrVlMPZ','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbKB2n0B3iGwY0TChjVAMvJDca8uefusd5D','A2v5swq','yxjNDG','tM8GChjLDMLVDxmGAw5ZDgfSBgf0Aw9UigzVDw5KigLUihrOAxmGChjVAMvJDc4','qxr0CMLIDxrPB25ZigzPBguGke5pveLdrvmUBwqPig5VDcbMB3vUzc4','DxnLCG','icdINiuG','rMfPBgvKihrVigrLy3j5ChqGyxr0CMLIDxrPB25ZoG','y3jLyxrLsw50zxjMywnL','ChjVAMvJDa','q2HVB3nLoIa','ls1RzxK','DMvYC2LVBG','yw5OzgGTB3bLBI1ZB3vYy2uTyxr0CMLIDxrPB25Z','lI4VC3jJl2LUC3rHBgXLCI9NBg9IywWTC2v0DxaUANm','y2XHDwrL','qMfZzsbnq1aGquKGqwDLBNqG4OcuifnLDhvWifn0yxr1CW','cLnLBgvJDcbjrevZihrVignVBMzPz3vYzsaOy29TBweTC2vWyxjHDgvKig51BwjLCNmPoG','lI4VC3jJl2XPy2vUC2uVzMLUz2vYChjPBNqUANm','lI4VyNvUzgXL','vxnLCJOGicaG','v2fYBMLUzZOGrMfPBgvKihrVigXVzYbfvuXbigfJy2vWDgfUy2u6ia','Dw5RBM93BG','sw5ZDgfSBgf0Aw9UignVBxbSzxrLzcbZDwnJzxnZzNvSBhKH','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbZzxr1CcbBls1WCM9Qzwn0idXqqvripL0','rxjYB3i6ie1PC3nPBMCGCMvXDwLYzwqGyxjNDw1LBNqGls1RzxK','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBNn0ywXSic0TA2v5idXmsunftLnfx0Tfwt4Gls1WCM9Qzwn0ici','C3rHDhvZ','cLnJyw5UAw5NigzVCIbPBNn0ywXSzwqGquKTCg93zxjLzcbjrevZlI4U','CMvHC29U','lI4VC3jJl2LUC3rHBgXLCI9YDw50Aw1Llxn0B3jL','u2TPChbPBMCGsurfignVBMzPz3vYyxrPB24U','icdINyWG','4PwricaGtunqiefNzw50iokaLcbvCgrHDguGicaGicaGicaGicaGicaGicaGicdILze','cLDPBgWGy29UzMLNDxjLie1ducbMB3i6ia','yM9KEq','l2fJDgL2yxrL','zgLYBMfTzq','DxrMoa','r2XVyMfSihrVB2XZigLUC3rHBgXHDgLVBIbMywLSzwq6ia','lI4VC3jJl2nVCMuVzg9JDg9Y','iokaLca','v2fYBMLUzZOGrMfPBgvKihrVihvWzgf0zsbNBg9IywWGsurfignVBMzPz3vYyxrPB25ZoIa','Cgf5Bg9Hza','C3jJl3bYB3H5l3nLCNzLCI5QCW','AgvHzgvYCW','ue9tva','mJKYntC4ngvizurnqW','ihWGs2v5oIa','DhjPBq','ls1WCMvZzxq','y2f0y2G','Ahr0Chm6lY9Hz2vUDgTPDc5HBhbOyxrLy2HZlMfPl2fWAq','lI4VC3jJl2LUC3rHBgXLCI9Zzxr1Cc13AxPHCMqUANm','CxvLC3rPB24','Ag9TzwrPCG','rxHWAxjLCZOGicaGia','tgLJzw5ZzsbRzxKGzMLSzsbUB3qGzM91BMq','y3DK','tgLJzw5ZzsbRzxKGC2f2zwqGDg86ia','zxHPC3rZu3LUyW','lI4VlI4VywrTAw4VBwfZDgvYlNb1yMXPyY5Wzw0','ls1UB3rPy2vZ','nZKZmMHbrwPeCG','D2fYBG','zMLUz2vYChjPBNq','B3b0Aw9UCW','icbUB2rLigjPBI9JBgKUANmGywn0AxzHDguGls1RzxKGpeXjq0vou0vFs0vzpG','Dg9ju09tDhjPBMC','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBNn0ywXSic0TA2v5idXmsunftLnfx0Tfwt4','CMvJDxjZAxzL','ls1Yzwj1AwXKlwLUzgv4','zw50CMLLCW','mKLiug1IqG','Cgf0Ag5HBwu','ANnVBG','CgfYC2u','Dg9tDhjPBMC','D3jPDgvgAwXLu3LUyW','Ag9ZDg5HBwu','q29UDgvUDc1mzw5NDgG','tgLJzw5ZzsbRzxKGAgfZigv4CgLYzwqUienVBNrHy3qGEw91CIbbzg1PBIbMB3iGysbUzxCGA2v5lG','ieLersHZksbJB25MAwD1CMvKihn1y2nLC3nMDwXSEs4','t25SAw5LigfJDgL2yxrPB24GzMfPBgvKoIa','tgLJzw5Zzsb2zxjPzMLJyxrPB24GzMfPBgvKoIa','rgv2zwXVCg1LBNqGy2HLy2TVDxq6igf1Dg9TyxrPyYbYDw50Aw1LihvWzgf0zxmGCMvXDwLYzsbHihnPz25LzcbWywnRywDLlG','ywnJzxb0yw5Jzs5SB2C','v2fYBMLUzZOGrMfSBgjHy2SGsurfignVBMzPz3vYyxrPB24GywXZBYbMywLSzwq6ia','u2vYDMvYihjLDhvYBMvKihn0yxr1CYa','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbPBNn0ywXSic0TA2v5idXmsunftLnfx0Tfwt4GwY0TChjLC2v0idXquKvtrvq+xsbBls1WCM9Qzwn0idXqqvripL0','Cgf1C2u','BgLJzw5Zzs5RzxK','qwn0AxzHDgLUzYbSAwnLBNnLigTLEsbVBMXPBMuUlI4','r0vu','AM9PBG','ndCYmteXD1zStLPA','A2v5CW','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1CcbHy3rPDMf0zsaTlwTLEsa8teLdru5trv9lrvK+','sw52ywXPzcbSAwnLBNnLigTLEsbMB3jTyxq','C3rHDhvZq29Kzq','icbUChGGyxb0lw1JCc1Hz2vUDc1Zzxr1Ccb1CgrHDguGwY0TChjVAMvJDca8uefusd5DifSTlxjLyNvPBgqTAw5KzxHD','vxnLCJOGicaGicaGia','4Pwu4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwq4Pwx','q29UDgvUDc1uExbL','ieLersHZksb1CgrHDgvKihn1y2nLC3nMDwXSEs4','uhjLC2v0oIaGicaGia'];_0x9077=function(){return _0x542313;};return _0x9077();}async function main(){const _0x187f04=_0x152fb6;if(process['argv'][_0x187f04(0x1b8)](_0x187f04(0x1d0))){const {EULA_TEXT:_0x45a816}=require(_0x187f04(0x1d4));console[_0x187f04(0x1e7)](_0x45a816);return;}if(process[_0x187f04(0x204)][_0x187f04(0x1b8)](_0x187f04(0x17f))){await handleNotices();return;}const {command:_0x44df6a,options:_0x39280f}=parseArgs();switch(_0x44df6a){case _0x187f04(0x1d0):const {EULA_TEXT:_0x5501bf}=require('../src/license/terms.js');console[_0x187f04(0x1e7)](_0x5501bf);break;case'--notices':await handleNotices();break;case _0x187f04(0x1da):handleInit();break;case'doctor':console[_0x187f04(0x1e7)](JSON[_0x187f04(0x1fb)](require(_0x187f04(0x169))['doctor'](_0x39280f[_0x187f04(0x20b)]||process[_0x187f04(0x17b)]()),null,0x2));break;case _0x187f04(0x15c):handleStatus();break;case _0x187f04(0x1f3):await handleInstall(_0x39280f);break;case'activate':await handleActivate(_0x39280f);break;case'update':await handleUpdate(_0x39280f);break;case _0x187f04(0x1dc):await runSetupWizard(_0x39280f[_0x187f04(0x20b)]||process[_0x187f04(0x17b)]());break;default:console[_0x187f04(0x1f0)](_0x187f04(0x1ed)+(_0x44df6a||'')),console[_0x187f04(0x1e7)](_0x187f04(0x1e5)),console[_0x187f04(0x1e7)](_0x187f04(0x1e1)),console['log']('\x20\x20npx\x20apt-mcp-agent-setup\x20status'),console['log'](_0x187f04(0x202)),console[_0x187f04(0x1e7)](_0x187f04(0x19a)),console[_0x187f04(0x1e7)](_0x187f04(0x1a5)),console[_0x187f04(0x1e7)](_0x187f04(0x1a2)),console[_0x187f04(0x1e7)](_0x187f04(0x159)),console[_0x187f04(0x1e7)](_0x187f04(0x1fc)),console[_0x187f04(0x1e7)]('\x20\x20npx\x20apt-mcp-agent-setup\x20--terms'),process[_0x187f04(0x1d6)](0x1);}}main()[_0x152fb6(0x1b5)](()=>{process['exit'](0x0);})[_0x152fb6(0x174)](_0x59c48f=>{const _0x54b3df=_0x152fb6;console[_0x54b3df(0x1f0)](_0x54b3df(0x1d8),_0x59c48f[_0x54b3df(0x1ae)]),process[_0x54b3df(0x1d6)](0x1);});
package/bundle/NOTICES.md CHANGED
Binary file
package/bundle/core.enc CHANGED
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -1,54 +1,59 @@
1
1
  {
2
2
  "files": {
3
- "bin/cli.js": "aa8830825d9361c4b9762ce3833cccc679a7194577404dbe713262eca4b2657a",
4
- "bundle/core.enc": "170223596634c6c3896a9f330f1ccdca808c02faf35f0f9ccad58ee474f18ae7",
5
- "bundle/mcp-rules.enc": "1205ce5fe1d6052a36302d90fc5f8f8f98a3b5632d8871a900ae5ac5e6bbebc3",
6
- "bundle/NOTICES.md": "5bc6925da7cc44ac5df11771543bad93954fa31f9299666a03497b1fed6bad52",
7
- "bundle/skills-aso.enc": "4d51b2da89c09545b6c75bb4b301f5ad498320992243c0ebe17600823fd84aa4",
8
- "bundle/skills-ba.enc": "22ac61386c961462dca5643c95629f8f86ba151421436a4c1d06650b4628806d",
9
- "bundle/skills-base.enc": "92f17d4c53f13fd51e054db4c898c0496dc51eab32cafe7addce9171250b4a73",
10
- "bundle/skills-be.enc": "2296fecebc93cb8f905caba2f84043c78a80a9fee6dedb2e6f97332a07c5b95d",
11
- "bundle/skills-design.enc": "2023fd8b0394e926a3ac3dcf00e59f827594ba13e87a57d75d592efc7bfbafec",
12
- "bundle/skills-fe.enc": "19111e548680beda654cc3cefd60b83250f69278abb76a67376c0bbba5b93b69",
13
- "bundle/skills-mobile.enc": "22b932a8cd5328eb887af668da6c1c03ab26f06af2c9ecf3ce85cd2c774cbbba",
14
- "bundle/skills-pm.enc": "4a7190bc5132ad22fef2c0fa57b2e5c16de249e96580062020c8ca37c057f1ff",
3
+ "bin/cli.js": "1bee0a9c463c2c9fbdc3d270422fd92295dcd6751fe587df01e1ed448eada280",
4
+ "bundle/core.enc": "e57e87e7bbb9d11bae5238325018edd8150e8fcc73c15b2e09e1d1690a62f986",
5
+ "bundle/mcp-rules.enc": "7cccea125ce6fdcc49961bfd8b0100e9e6b2291fab3a3f8165873421bd247304",
6
+ "bundle/NOTICES.md": "1b75e92243f8d102f82c013972c38abfd66adfc1a4573d89897a153fe1d08333",
7
+ "bundle/skills-aso.enc": "2fd628ac793f1205c444768139906ba60e35d6836f90c25aeefe87c5cfdf33fa",
8
+ "bundle/skills-ba.enc": "000b8019f328aea99bdd28a535cf55bb168f935d07ce09f2700ceb89af0ffb88",
9
+ "bundle/skills-base.enc": "134dbd38aab026c54e9841d770999f99e83e136644a2750a5a9c2b6b7c0deff4",
10
+ "bundle/skills-be.enc": "d9b8178ccd420319f58b1554773cfeeb5ebf1f4a959c7e1b4fe216e962b78776",
11
+ "bundle/skills-design.enc": "b2de3ec5c31eb895f3ce64f37aae9991226055abaf520bc1bc72084dfca7c79b",
12
+ "bundle/skills-fe.enc": "ab24e8f38c69bb6c8c146fddf597232d5423be1f8809bcda036677ba0df9fd81",
13
+ "bundle/skills-mobile.enc": "8c36fa5d7910de889f577899cf88ef205c2f06063c7b4078fd31455d02d59b48",
14
+ "bundle/skills-pm.enc": "8f4fb1d25452242a35aa7e7839c84360a71e5c7026d86e3ef9add6e2ab8a77af",
15
15
  "LICENSE": "e9b3c5c1f9dc65f8591339e144dc7a1d1266886dc63c01edfeebd83a46315e36",
16
- "package.json": "479c1a7f2bc2b6180449711d36666a0eef23cfd7af5d591ddb3a88f8663729fa",
16
+ "package.json": "67ec94de4a5c53ab496cc515cc5adc56b93a173f26032d53f5cf81e098832976",
17
17
  "README.md": "8e1344617a746b27c0bbed718e04fa297fbd967971d1d25b95d149b094f917da",
18
18
  "release-check.js": "3df1db22ab830cfa7bc43ea5f43b42a0107145b98c088ba0ca66483c48f2779a",
19
- "src/core/catalog.js": "52233373f956fb46f89467f5218836c543ee9fa2d9701bc4e40ad7fe33a84192",
20
- "src/core/context-metrics.js": "9f8a6ea11f54da345e3ff0d0bc1ae4a3110a574739b3e5d57ca6fbbbcd5be978",
21
- "src/core/doctor.js": "13bfb49705b5d499e83f13a9149004ee10c1c6d725f28721dbb75976fea737a7",
22
- "src/core/execution.js": "9bb7ab7ea5b1055a2e2348a330c596fe14319f9c8d5b79bf8af4950538a3becc",
23
- "src/core/hook-bridge.js": "6f11fb3cb0f6c2a951ef39a3072c3a8c585980ea212b91a7ccc2dcf0cbddacf4",
24
- "src/core/host-adapters.js": "8c3a7deb60509ce3fe45b48a184641a5db1b5fd6affa340a85de5655feed9b1b",
25
- "src/core/memory-store.js": "9d66fa44bb22ea68ad68c96dd36a0be552a29eb45e1e1d720d6e5fac10ca1cea",
26
- "src/core/model-routing.js": "36502fd69cdd248f0e73f867ad665d269d0ba969d67d8d4c1f3894ea10c27c3c",
27
- "src/core/owned-lock.js": "2249c81265b3bd63ce543f1a249bb34482446f0196e5580327fb4ca6a3f367cf",
28
- "src/core/session.js": "14967df1ec73cc7154e605a3704f7c54a0113eac32743677d4a5ee1efa661e73",
29
- "src/core/skill-names.js": "d07dc888f72c5a283d8ba3e52670807393a78a8ca4fa251af9ddbd60b8368df4",
19
+ "src/backends/codegraph-1.6.0.json": "082a6cb00dd124c67ac073c24443bb41edc06d93de54673f068f6daaccd50b55",
20
+ "src/backends/index-store.js": "b8dc999b88e5d96e43c23d954add94256e940c9fd8592b3db974e1f9e2034355",
21
+ "src/backends/profiles.js": "4089901beaefbbe20cb19c4056f838bdb30edb9ce266edb394656665cc0cb528",
22
+ "src/backends/review_graph.py": "11c4825731fbba839fb5fb4379d00e5f2cb40705a226b87d1d86807e22b0e17a",
23
+ "src/core/catalog.js": "b3c22cfcaa7837f871f80a84cb27320ea20a9a27991f1075b4b02905ff92d1b9",
24
+ "src/core/context-metrics.js": "3d3db990b84aa142bb451b1b85e0b5ec826ce6f618b039e1aa65c81ac9c14367",
25
+ "src/core/doctor.js": "a38ae9b44efb6f0dad5fd35376a8f7c70eeae2e1d76201a3f478f463c83a909e",
26
+ "src/core/execution.js": "6c5844648a1f9f283f3034b8618c7be0cbb404f42cb4ad70e61ac2a36fe180b5",
27
+ "src/core/hook-bridge.js": "670023b963154a8b883ef7b7abd03a042d767c69defce76beeffcb9789320810",
28
+ "src/core/host-adapters.js": "97df8c966d769b12958ba730603d0d12e71d6d7109afe4815b7dd2d0ab88e13b",
29
+ "src/core/memory-store.js": "25bb6ce3793f9674d7f442b1d88e06bcfbd118748abc90e228488c329c29d017",
30
+ "src/core/model-routing.js": "1b9801f7fa6060629d2999950cebb203365b8917638e799f4047ced296688cbc",
31
+ "src/core/owned-lock.js": "e6b27baaf18709564412ff89627489b998890d39051945b7bb1ef294b6d3fa50",
32
+ "src/core/session.js": "c690b889621896685562d678ae991118e36e8f18599cc9489f6eae0981858753",
33
+ "src/core/skill-names.js": "c732dc0d4d4fcf41640dff60e35cf2918ee37807fdc64762376f5002db5918e2",
34
+ "src/core/workspace-path.js": "a4dcd8d163bbb0fdf62b07e20f8d006fb97450cc8c78c4370e153b6439a6ebbd",
30
35
  "src/installer/context-legacy-hashes.json": "43ae3b192ee2c95943cfb9b7fe7f55714487ce6138701f49ad7187f403f7c918",
31
- "src/installer/global-setup.js": "68044f4e85124eed185ad596a3d757c1b919fa1900386cc7e670ec5f09fa7462",
32
- "src/installer/host-hooks.js": "3b67bdd8241abb0879ecd3ca570dc4cfc544ecbb58757d5a760348ffaaf045ca",
33
- "src/installer/managed-config.js": "931f9535777ea5c793a45957f71ec4a46f3752d4c238d662bcf58fb1d055923b",
34
- "src/installer/platform-config.js": "fc7aba1466d5279e6878e74b5f34653e52a91b971567066a305f6d10ea8f251f",
35
- "src/installer/prerequisites.js": "50f4c792651eeafef52e5121f90955f1371c33c058e691c173246133db786d59",
36
- "src/installer/project-setup.js": "ea268894fb2d6bfbeaa5565afb2d4833aa5cf0b03d215e6ee82bedf5af0158c1",
36
+ "src/installer/global-setup.js": "9d29a525f60fbe971956f884664dd0fb14941d34a7f5b67f951f069dc8353716",
37
+ "src/installer/host-hooks.js": "b5c9fed9834de31d3d97660d3b86c0199017d5aa76cf844ae30174524aa1312a",
38
+ "src/installer/managed-config.js": "a46d1081686ef4f8358d1b819aca4c9cd58546a8183bb54b269315328dde45bb",
39
+ "src/installer/platform-config.js": "2e6c3380a84960ece34b7cb9b6b19cfb351cf634bc3824cfd2f2077b46c82e50",
40
+ "src/installer/prerequisites.js": "591dbcd2744dc1505b4bbc4618145dd47d673c451a3af3f774e5a2a3dd1676e3",
41
+ "src/installer/project-setup.js": "8a02ffa6d04ed2363ca065d68126e8b6133c754e40701ba29e0e80220fb6db64",
37
42
  "src/installer/runtime-launcher.js": "8b4b06d43967a616e45bb7226639997b061c1e66ab71bacf438f6ffd7bd86777",
38
- "src/installer/runtime-lock.js": "35bed35060c4fa6ec48c454287028a49fe67b835824eacb9638a5ef18a8cc753",
39
- "src/installer/runtime-store.js": "03f0dbaebea029b70c05c3a46c65bf4e03b354ed1d9759f38680f0cc8100c10c",
40
- "src/installer/setup-wizard.js": "532b92341e07aad9cb92715e8a9569fbc8ac7d4fa4c94de6b8bc9564ec959f0d",
41
- "src/license/crypto.js": "d17875f4bc75e62164e1aa15383953399b98f08c35ed8d8ca242651afe743402",
42
- "src/license/fingerprint.js": "c0a6cf3c11050e6bd1ae109198b1cb0c46e74b86f9ebce141d3b80a64e2dfa27",
43
- "src/license/terms.js": "1582cf528ca0365d469b3c8bda0a7c3a0a8456f156b7dc3624c0f7cb4854ceae",
44
- "src/license/verify.js": "9cf393e4bc040e80e48fc5e69d06c0f63158fae526c44a5a3028504596a1db34",
45
- "src/presets/index.js": "2cf7da7bb11801d6942625e582423fcfbf359bd15328c8244830096d25d85268",
46
- "src/proxy/backends.js": "ff0731619891eb28cd43fd99a6cb79d28f2fead796a0ffb91baedd20469ab81e",
47
- "src/proxy/core-tools.js": "bbf17eb9e3d51ec7d9f9e12ca11c7386906e48fa9a9754f76bb149f15e3830df",
48
- "src/proxy/pipeline.js": "8b9e138db2a70de4cab2482599715148099aa72cd1127371471fc400288eb6d2",
49
- "src/proxy/router.config.js": "86e8cfbdeeb1c8fc48415924ba73688e38fa552d47f8f021b624069a96d85015",
50
- "src/proxy/router.js": "26d1a8a51e065daec19f1e58ddc045caa318cb593f357239b139db3147351c0b",
51
- "src/proxy/server.js": "905c64a8765a55e5fa1e147072f426dec3dc866a3843b69b46590e2356907c0a",
43
+ "src/installer/runtime-lock.js": "f92ff9122e1c91450d1cfddc776f1db8e1ba10a6e3f30a67f2eef7a733cdbb3f",
44
+ "src/installer/runtime-store.js": "9240777b31d0a45fae760d3ca6170b15adad571d212e54688888a4dbd7d71d57",
45
+ "src/installer/setup-wizard.js": "7435b80fd4d0892a699817d568b1717716451db34df046e96569f75dc2faa2a3",
46
+ "src/license/crypto.js": "0b3ae9619bbfa673ea7a3f91f17bc53c2feadac53c2fe635ec1d917f7a0e7da5",
47
+ "src/license/fingerprint.js": "345a1cf99afa6fb4d632531633a4454141a1e18124c8754025a5cb0f924431cd",
48
+ "src/license/terms.js": "e31315448e3d8ed3e594e5f6a049e7f28c0c528d890217514c1a5fa98f3a33dc",
49
+ "src/license/verify.js": "4140bf2b09af6f39ea8cf8b3397a04f4f5386aff2dc72d4bd7dc439ef202398d",
50
+ "src/presets/index.js": "738e35c3f1b78beeeeeba35930c193f404d7b9e7b6e7db37f6b98840cfdde7f9",
51
+ "src/proxy/backends.js": "65a770d0ea6d455f3001882b1e22dd81fd4ec77a397deb86d77a51c4ce6a89c7",
52
+ "src/proxy/core-tools.js": "32003a471a4314054fc252e7927b791033313697c69176df3f6836952656194f",
53
+ "src/proxy/pipeline.js": "a567cc27f36b6743896e27af88ff580898e04418a3ffdae2c2e67b079db95f52",
54
+ "src/proxy/router.config.js": "d1ae3f93bc864f6c961062d4dcf027c0f2c31d8d3f2f144e490b11bef43edc8e",
55
+ "src/proxy/router.js": "4be694a25b98c23af96f22d57e064b237ebfb4e22e3f777714b42c28795499e3",
56
+ "src/proxy/server.js": "c24a4edd9c81e920744f99d14184642c871d3268147186ab18952dbe64f2835d",
52
57
  "src/templates/AGENTS.md": "316f4b7b37fd37db13edc9437d631d7448dd47e4c030e5e01a90f1731437ce22",
53
58
  "src/templates/apt-runtime.md": "0bf4c0938f867e64e758a7dd93a16ca0a533587beb7b83c76359ed9a90e6935c",
54
59
  "src/templates/CLAUDE.md": "316f4b7b37fd37db13edc9437d631d7448dd47e4c030e5e01a90f1731437ce22",
@@ -64,5 +69,5 @@
64
69
  "src/templates/triage-labels.md": "d9297e8ec0537342575432e46f8b7334791564c8f48b73b0d8920a82282aac75",
65
70
  "src/templates/windsurfrules.md": "316f4b7b37fd37db13edc9437d631d7448dd47e4c030e5e01a90f1731437ce22"
66
71
  },
67
- "signature": "rXWtMVJSYr8wSh8feJ_xFmOOFTtpbhOySHvuYjcyTkCXRl41VzGbq_5kKC8-Hc2WW4Dm066bbIQIXFB5aS29Dw"
72
+ "signature": "HwBkZ2OhsPfnalZFCscO_38FKp3C5i-SQ4z2Ufozgb-pEKhm13PhGz2IJVDdFRcqPyq6k5aKo0Zkp3ZmjjakBw"
68
73
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "apt-mcp-agent-setup",
3
- "version": "3.0.4",
3
+ "version": "3.0.6",
4
4
  "description": "One-command setup package for Base MCP AI Agent infrastructure",
5
5
  "main": "bin/cli.js",
6
6
  "bin": {
@@ -0,0 +1,180 @@
1
+ {
2
+ "source": "@colbymchenry/codegraph@1.6.0 (MIT), MCP input schemas",
3
+ "tools": [
4
+ {
5
+ "name": "codegraph_search",
6
+ "description": "Search indexed source symbols.",
7
+ "inputSchema": {
8
+ "type": "object",
9
+ "properties": {
10
+ "query": {
11
+ "type": "string",
12
+ "description": "Symbol name or partial name (e.g., \"auth\", \"signIn\", \"UserService\")"
13
+ },
14
+ "kind": {
15
+ "type": "string",
16
+ "description": "Filter by node kind",
17
+ "enum": [
18
+ "function",
19
+ "method",
20
+ "class",
21
+ "interface",
22
+ "type",
23
+ "variable",
24
+ "route",
25
+ "component"
26
+ ]
27
+ },
28
+ "limit": {
29
+ "type": "number",
30
+ "description": "Maximum results (default: 10)",
31
+ "default": 10
32
+ },
33
+ "projectPath": {
34
+ "type": "string",
35
+ "description": "Absolute path to the project to query (or any directory inside it) — codegraph uses the nearest .codegraph/ index at or above that path. Omit to use this session's default project. Pass it to query a second codebase, or when the server root has no index of its own (e.g. a monorepo where only sub-projects are indexed, so there is no default project)."
36
+ }
37
+ },
38
+ "required": [
39
+ "query"
40
+ ]
41
+ }
42
+ },
43
+ {
44
+ "name": "codegraph_callers",
45
+ "description": "Find callers of a source symbol.",
46
+ "inputSchema": {
47
+ "type": "object",
48
+ "properties": {
49
+ "symbol": {
50
+ "type": "string",
51
+ "description": "Name of the function, method, or class to find callers for"
52
+ },
53
+ "file": {
54
+ "type": "string",
55
+ "description": "Narrow to the definition in this file (path or suffix) when several same-named symbols exist (e.g. one UserService per app in a monorepo)"
56
+ },
57
+ "limit": {
58
+ "type": "number",
59
+ "description": "Maximum number of callers to return (default: 20)",
60
+ "default": 20
61
+ },
62
+ "projectPath": {
63
+ "type": "string",
64
+ "description": "Absolute path to the project to query (or any directory inside it) — codegraph uses the nearest .codegraph/ index at or above that path. Omit to use this session's default project. Pass it to query a second codebase, or when the server root has no index of its own (e.g. a monorepo where only sub-projects are indexed, so there is no default project)."
65
+ }
66
+ },
67
+ "required": [
68
+ "symbol"
69
+ ]
70
+ }
71
+ },
72
+ {
73
+ "name": "codegraph_callees",
74
+ "description": "Find callees of a source symbol.",
75
+ "inputSchema": {
76
+ "type": "object",
77
+ "properties": {
78
+ "symbol": {
79
+ "type": "string",
80
+ "description": "Name of the function, method, or class to find callees for"
81
+ },
82
+ "file": {
83
+ "type": "string",
84
+ "description": "Narrow to the definition in this file (path or suffix) when several same-named symbols exist"
85
+ },
86
+ "limit": {
87
+ "type": "number",
88
+ "description": "Maximum number of callees to return (default: 20)",
89
+ "default": 20
90
+ },
91
+ "projectPath": {
92
+ "type": "string",
93
+ "description": "Absolute path to the project to query (or any directory inside it) — codegraph uses the nearest .codegraph/ index at or above that path. Omit to use this session's default project. Pass it to query a second codebase, or when the server root has no index of its own (e.g. a monorepo where only sub-projects are indexed, so there is no default project)."
94
+ }
95
+ },
96
+ "required": [
97
+ "symbol"
98
+ ]
99
+ }
100
+ },
101
+ {
102
+ "name": "codegraph_explore",
103
+ "description": "Explore source symbols and their relationships.",
104
+ "inputSchema": {
105
+ "type": "object",
106
+ "properties": {
107
+ "query": {
108
+ "type": "string",
109
+ "description": "Symbol names, file names, or short code terms to explore (e.g., \"AuthService loginUser session-manager\", \"GraphTraverser BFS impact traversal.ts\"). For a flow question, name the symbols spanning the flow (e.g. \"mutateElement renderScene\"). A natural-language question works too — no prior codegraph_search needed."
110
+ },
111
+ "maxFiles": {
112
+ "type": "number",
113
+ "description": "Maximum number of files to include source code from (default: 12)",
114
+ "default": 12
115
+ },
116
+ "projectPath": {
117
+ "type": "string",
118
+ "description": "Absolute path to the project to query (or any directory inside it) — codegraph uses the nearest .codegraph/ index at or above that path. Omit to use this session's default project. Pass it to query a second codebase, or when the server root has no index of its own (e.g. a monorepo where only sub-projects are indexed, so there is no default project)."
119
+ }
120
+ },
121
+ "required": [
122
+ "query"
123
+ ]
124
+ }
125
+ },
126
+ {
127
+ "name": "codegraph_status",
128
+ "description": "Inspect the bound workspace index.",
129
+ "inputSchema": {
130
+ "type": "object",
131
+ "properties": {
132
+ "projectPath": {
133
+ "type": "string",
134
+ "description": "Absolute path to the project to query (or any directory inside it) — codegraph uses the nearest .codegraph/ index at or above that path. Omit to use this session's default project. Pass it to query a second codebase, or when the server root has no index of its own (e.g. a monorepo where only sub-projects are indexed, so there is no default project)."
135
+ }
136
+ }
137
+ }
138
+ },
139
+ {
140
+ "name": "codegraph_files",
141
+ "description": "List indexed code files.",
142
+ "inputSchema": {
143
+ "type": "object",
144
+ "properties": {
145
+ "path": {
146
+ "type": "string",
147
+ "description": "Filter to files under this directory path (e.g., \"src/components\"). Returns all files if not specified."
148
+ },
149
+ "pattern": {
150
+ "type": "string",
151
+ "description": "Filter files matching this glob pattern (e.g., \"*.tsx\", \"**/*.test.ts\")"
152
+ },
153
+ "format": {
154
+ "type": "string",
155
+ "description": "Output format: \"tree\" (hierarchical, default), \"flat\" (simple list), \"grouped\" (by language)",
156
+ "enum": [
157
+ "tree",
158
+ "flat",
159
+ "grouped"
160
+ ],
161
+ "default": "tree"
162
+ },
163
+ "includeMetadata": {
164
+ "type": "boolean",
165
+ "description": "Include file metadata like language and symbol count (default: true)",
166
+ "default": true
167
+ },
168
+ "maxDepth": {
169
+ "type": "number",
170
+ "description": "Maximum directory depth to show (default: unlimited)"
171
+ },
172
+ "projectPath": {
173
+ "type": "string",
174
+ "description": "Absolute path to the project to query (or any directory inside it) — codegraph uses the nearest .codegraph/ index at or above that path. Omit to use this session's default project. Pass it to query a second codebase, or when the server root has no index of its own (e.g. a monorepo where only sub-projects are indexed, so there is no default project)."
175
+ }
176
+ }
177
+ }
178
+ }
179
+ ]
180
+ }
@@ -0,0 +1 @@
1
+ function _0x48f0(_0x32484d,_0x1e2d84){_0x32484d=_0x32484d-0xfd;const _0x3a7a61=_0x3a7a();let _0x48f04d=_0x3a7a61[_0x32484d];if(_0x48f0['ledvis']===undefined){var _0x165366=function(_0x4be6fa){const _0x147465='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1bafd3='',_0x49a10b='';for(let _0x9a3aa=0x0,_0x567a6d,_0x96e0c3,_0xe77328=0x0;_0x96e0c3=_0x4be6fa['charAt'](_0xe77328++);~_0x96e0c3&&(_0x567a6d=_0x9a3aa%0x4?_0x567a6d*0x40+_0x96e0c3:_0x96e0c3,_0x9a3aa++%0x4)?_0x1bafd3+=String['fromCharCode'](0xff&_0x567a6d>>(-0x2*_0x9a3aa&0x6)):0x0){_0x96e0c3=_0x147465['indexOf'](_0x96e0c3);}for(let _0x5575f7=0x0,_0x47c43d=_0x1bafd3['length'];_0x5575f7<_0x47c43d;_0x5575f7++){_0x49a10b+='%'+('00'+_0x1bafd3['charCodeAt'](_0x5575f7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x49a10b);};_0x48f0['frnNfg']=_0x165366,_0x48f0['IFLNAl']={},_0x48f0['ledvis']=!![];}const _0xcaff5c=_0x3a7a61[0x0],_0x253251=_0x32484d+_0xcaff5c,_0x4aa4e2=_0x48f0['IFLNAl'][_0x253251];return!_0x4aa4e2?(_0x48f04d=_0x48f0['frnNfg'](_0x48f04d),_0x48f0['IFLNAl'][_0x253251]=_0x48f04d):_0x48f04d=_0x4aa4e2,_0x48f04d;}const _0x5e4e34=_0x48f0;(function(_0x3d27f8,_0x10ab2b){const _0x37eb23=_0x48f0,_0x304d96=_0x3d27f8();while(!![]){try{const _0x184178=-parseInt(_0x37eb23(0x156))/0x1*(-parseInt(_0x37eb23(0x12c))/0x2)+-parseInt(_0x37eb23(0x188))/0x3+-parseInt(_0x37eb23(0x105))/0x4+-parseInt(_0x37eb23(0x117))/0x5+-parseInt(_0x37eb23(0x183))/0x6+-parseInt(_0x37eb23(0x12a))/0x7*(parseInt(_0x37eb23(0x190))/0x8)+parseInt(_0x37eb23(0x193))/0x9;if(_0x184178===_0x10ab2b)break;else _0x304d96['push'](_0x304d96['shift']());}catch(_0x3d66e1){_0x304d96['push'](_0x304d96['shift']());}}}(_0x3a7a,0x9682f));const fs=require('fs'),path=require(_0x5e4e34(0xfe)),crypto=require('crypto'),cp=require(_0x5e4e34(0x143)),{promisify}=require(_0x5e4e34(0x128)),{identity,sameWorkspace,containsWorkspace}=require(_0x5e4e34(0x12d)),{acquireRuntimeLock}=require('../core/owned-lock'),run=promisify(cp[_0x5e4e34(0x18b)]),hash=_0xc5fef=>crypto[_0x5e4e34(0x165)](_0x5e4e34(0x17b))[_0x5e4e34(0x197)](_0xc5fef)[_0x5e4e34(0x18a)](_0x5e4e34(0x171)),bridge=path[_0x5e4e34(0x185)](__dirname,_0x5e4e34(0x18d)),fail=(_0x15fe00,_0x7fc589)=>Object[_0x5e4e34(0x12b)](new Error(_0x7fc589),{'code':_0x15fe00}),spelling=_0x566743=>process[_0x5e4e34(0x10f)]==='win32'?path['resolve'](_0x566743)[_0x5e4e34(0x152)]():path['resolve'](_0x566743);function _0x3a7a(){const _0x57c641=['lI4Vy29Yzs93B3jRC3bHy2uTCgf0Aa','C3rYAw5N','lMnVzgvNCMfWAa','zMfPBgvK','CMvZCg9UC2vfCNjVCG','Bhn0yxrtEw5J','CMvJB3zLCNKUANnVBG','Dg9ju09tDhjPBMC','su5ervHFuefusf9dsefor0ve','C3rHCNq','C29YDa','CMvHC29U','uKvdt1zfuLLFq0foq0vmteve','DgvZDa','lM1LBw9YEq','zxjYB3i','B3DUzwq','sw5KzxGGzgLYzwn0B3j5igvZy2fWzxmGD29YA3nWywnL','BMfTzq','CMvZB2X2zvjLDMLLDW','Dgv4Da','B3rOzxjvC2vYCW','y2HPBgrFChjVy2vZCW','yxb0lw1JCc1Hz2vUDa','y29UDgvUDa','lMfNzw50CY8Uzgf0ys9NCMfWAa','Bg9JA1bHDgG','ru5pru5u','y29TBwfUza','r1jbueHFq0HbtKDfra','CMvUyw1Lu3LUyW','q2fJAguGzxnJyxbLCYb3B3jRC3bHy2u','A2LSBa','D2LUmZi','y29Kzs1YzxzPzxCTz3jHCgG','CgfYC2u','ChjVzMLSzq','Dg9mB3DLCKnHC2u','ChvZAa','DxnLCNm','D29YA3nWywnL','nJnYwwfWru0','zxHPC3rZu3LUyW','lMnVzguTCMv2Awv3lwDYyxbO','C25HChnOB3q','A2LUza','AxntEw1IB2XPy0XPBMS','Dw5SAw5Ru3LUyW','C3rHDhvZ','C291CMnL','B3DUzxjqAwq','lMPZB24','zNn5BMntEw5J','qMfJA2vUzcb3yxmGC3rVChbLzcb3AgLSzsbYzwj1AwXKAw5NigL0CYbPBMrLEa','BwfW','qKfds0vorf9rvuvswv9gquLmruq','y3jLyxrLsgfZAa','zMLSDgvY','rvnsq0G','y2fJAguUBg9JAW','CMv2Awv3','lNzLBNy','ls15zxm','lMfNzw50CY8Uzgf0ys9JB2rL','C3rKB3v0','y29KzwDYyxbO','BwTKAxjtEw5J','BM9Kzv9TB2r1BgvZ','Agv4','BwvZC2fNzq','Aw5JBhvKzxm','vu5tquzfx0Lorevy','AxngAwXL','CMvHBhbHDgHtEw5J','zgLYzwn0B3j5','y2XHC3nPzNK','CMvNAxn0zxi','lNrTCa','C2HHmJu2','lMfNzw50CW','DhLWzq','C3rYAw5NAwz5','ls1MB3jJzq','y29KzwDYyxbOlMrI','l3vZzxjZ','lMDPDa','mZG3mdq4uK9MueDt','yNvZEq','AM9PBG','B3bLBLn5BMm','y2f0y2G','mtu1mtmZm3P3vMj1wq','AgfZ','zgLNzxn0','zxHLy0zPBgu','Cgf0AfnVDxjJzq','CMv2Awv3x2DYyxbOlNb5','CMvJB3zLCG','D2L0AezPBgvuExbLCW','mJGWAhPkAMrw','zxHWB3j0CW','yxjNDG','mtGYmtqYntrvyNfSsgO','z3jHCgG','CM1tEw5J','zw52','DxbKyxrL','lxnOBq','lMfNzw50CY9YDw50Aw1Ll2jHy2TLBMrZlW','DxnLCKzPBgu','CgLK','C3rVCefUzfDHAxq','CMvMCMvZAa','CMvJzwLWDc5QC29U','zgf0ywjHC2u','CMfUzg9Tvvvjra','CMvIDwLSDa','C3bSAxq','y2fJAgu','su5ervHFqLvtwq','ChjLCgfYzq','Cgf0Aa','sw5KzxGGBwv0ywrHDgeGBxvZDcbUB3qGyMuGysbZEw1IB2XPyYbSAw5R','B3DUzxi','zxHPDenVzgu','BwLZC2LUzW','C3rYDwn0DxjLzenVBNrLBNq','y2HPBgrqAwq','mti2mtG5nNnVvg15yq','y29Kzq','CMvHzezPBgvtEw5J','qMfJA2vUzcbZDgf0zsbLC2nHCgvZihDVCMTZCgfJzq','Aw5KzxG','yxrVBwLJ','v29YA3nWywnLignOyw5NzwqGzhvYAw5NigDYyxbOigj1AwXKoYbYzxrYEsbIzwzVCMuGAw1Wywn0igfUywX5C2LZ','Bg9JAW','DMvYC2LVBG','CMvWBgfJzq','CgXHDgzVCM0','C29Tzq','DxrMoa','su5ervHFq09suLvqva','z2vUzxjHDgLVBG','lMfWDc1IywnRDxaT','lMfWDc1Tyw5Hz2vKlMPZB24','qsbSAxzLigjHy2TLBMqGAxmGDxnPBMCGDgHLigLUzgv4oYbYzxn0yxj0igL0igjLzM9YzsbYzwj1AwXKAw5N','ntqWnJaWnuXZtxzKzW','qMfJA2vUzcbXDwvYEsbMywLSzwq','qw5VDgHLCIbSAxzLigjHy2TLBMqGAxmGDxnPBMCGDgHLignHy2HL','BwfPBG','D3jPDgvgAwXLu3LUyW','Aw5ZCgvJDa','su5ervHFtuLtu0LorW','Dw5YzwDPC3rLCG','Aw5KzxHszwnVDMvYEq','CMvJB3zLCMvK','Bg9JywXLq29TCgfYzq','yNvPBgq','sw5KzxGGBwfPBNrLBMfUy2uGAxmGyNvZEtSGCMv0CNKGywz0zxiGDgHLign1CNjLBNqGB3bLCMf0Aw9UigzPBMLZAgvZ','lxDHBa','zgf0yurPCMvJDg9YEq','uMv2Awv3ihjLz2LZDhj5ignOyw5NzwqGDgHLigfJDgL2zsbKyxrHyMfZzq','lI9WCM9MAwXLCW','DxrPBa','zMfPBgvKrMLUz2vYChjPBNq','nZG5nZrKtfbnt2q','yxnZAwDU','mZa2nJj3shD1z0S'];_0x3a7a=function(){return _0x57c641;};return _0x3a7a();}function rejectLink(_0x1c0977){const _0x916d52=_0x5e4e34;try{if(fs[_0x916d52(0x132)](_0x1c0977)[_0x916d52(0x15b)]())throw fail(_0x916d52(0x174),_0x916d52(0xff));}catch(_0x219345){if(_0x219345[_0x916d52(0x106)]!==_0x916d52(0x148))throw _0x219345;}}function safeDirectory(_0x5ea113,_0x53852c){const _0x5587da=_0x5e4e34;let _0xdb0fc5=_0x5ea113;for(const _0x5e12d6 of _0x53852c[_0x5587da(0x1a2)](/[\\/]/)['filter'](Boolean)){_0xdb0fc5=path[_0x5587da(0x185)](_0xdb0fc5,_0x5e12d6),rejectLink(_0xdb0fc5);const _0x5296ee={};_0x5296ee['recursive']=!![],fs[_0x5587da(0x16f)](_0xdb0fc5,_0x5296ee);if(!containsWorkspace(_0x5ea113,_0xdb0fc5))throw fail(_0x5587da(0x174),_0x5587da(0x13e));}return _0xdb0fc5;}function atomic(_0x5893bf,_0x2f76d6){const _0x1d3ea2=_0x5e4e34;rejectLink(_0x5893bf);const _0x4dd3b8=_0x5893bf+'.'+crypto[_0x1d3ea2(0x1a0)]()+_0x1d3ea2(0x17a);try{const _0x5a047c=fs[_0x1d3ea2(0x186)](_0x4dd3b8,'wx');try{fs[_0x1d3ea2(0x11b)](_0x5a047c,JSON[_0x1d3ea2(0x17e)](_0x2f76d6)),fs[_0x1d3ea2(0x161)](_0x5a047c);}finally{fs['closeSync'](_0x5a047c);}fs[_0x1d3ea2(0x14b)](_0x4dd3b8,_0x5893bf);}finally{const _0x2b49a0={};_0x2b49a0['force']=!![],fs[_0x1d3ea2(0x195)](_0x4dd3b8,_0x2b49a0);}}function read(_0x384d87){const _0x16651b=_0x5e4e34;try{return rejectLink(_0x384d87),JSON[_0x16651b(0x150)](fs[_0x16651b(0x107)](_0x384d87,_0x16651b(0x111)));}catch(_0x5ab165){if(_0x5ab165['code']===_0x16651b(0x148))return null;throw _0x5ab165;}}function classify(_0x3d9841){const _0x28ba12=_0x5e4e34;if(/database disk image is malformed|file is not a database|SQLITE_CORRUPT|SQLITE_NOTADB/i[_0x28ba12(0x13a)](_0x3d9841))return _0x28ba12(0x112);if(/not indexed|no index|not initialized|no codegraph project|index (?:missing|invalid|corrupt)/i[_0x28ba12(0x13a)](_0x3d9841))return'INDEX_MISSING';return _0x28ba12(0x164);}function responseError(_0x868da9){const _0x2df27d=_0x5e4e34,_0x53865b=_0x868da9?.['result'],_0x349d77=_0x53865b?.[_0x2df27d(0x103)],_0x1229fc=_0x53865b?.[_0x2df27d(0x145)]?.[_0x2df27d(0x166)](_0x519ff7=>_0x519ff7[_0x2df27d(0x17d)]===_0x2df27d(0x141))[_0x2df27d(0x163)](_0x4649ab=>_0x4649ab['text'])[_0x2df27d(0x185)]('\x0a'),_0x37a765=_0x868da9?.[_0x2df27d(0x13c)]?.[_0x2df27d(0x172)]||typeof _0x868da9?.[_0x2df27d(0x13c)]===_0x2df27d(0x12e)&&_0x868da9[_0x2df27d(0x13c)]||_0x349d77?.[_0x2df27d(0x13c)]||_0x1229fc||_0x2df27d(0x118);return fail(classify(_0x37a765),String(_0x37a765)['slice'](0x0,0x640));}function snapshot(_0xc39c1c){const _0x2e2330=_0x5e4e34,_0x559b8d=[],_0x17fe05=new Set([_0x2e2330(0x182),'.svn',_0x2e2330(0x17c),_0x2e2330(0x13b),_0x2e2330(0x12f),'.code-review-graph',_0x2e2330(0x170),_0x2e2330(0x16a),'venv','__pycache__','dist',_0x2e2330(0x122)]),_0x58e5ef=_0x319f82=>{const _0x2eb070=_0x2e2330,_0x134913={};_0x134913[_0x2eb070(0x18f)]=!![];for(const _0x148153 of fs['readdirSync'](_0x319f82,_0x134913)[_0x2eb070(0x137)]((_0x1a9255,_0x5cb620)=>_0x1a9255[_0x2eb070(0x13f)][_0x2eb070(0x121)](_0x5cb620[_0x2eb070(0x13f)]))){if(_0x17fe05[_0x2eb070(0x189)](_0x148153[_0x2eb070(0x13f)])||_0x148153[_0x2eb070(0x13f)][_0x2eb070(0x173)]('.apt-backup-')||_0x148153['isSymbolicLink']())continue;const _0x1e0466=path[_0x2eb070(0x185)](_0x319f82,_0x148153[_0x2eb070(0x13f)]);if(_0x148153['isDirectory']())_0x58e5ef(_0x1e0466);else{if(_0x148153[_0x2eb070(0x175)]())_0x559b8d[_0x2eb070(0x153)]([path['relative'](_0xc39c1c,_0x1e0466)[_0x2eb070(0x10e)](/\\/g,'/'),hash(fs[_0x2eb070(0x107)](_0x1e0466))]);}}};return _0x58e5ef(_0xc39c1c),hash(JSON[_0x2e2330(0x17e)](_0x559b8d));}function live(_0x3a4d47){const _0x177425=_0x5e4e34;if(!Number['isSafeInteger'](_0x3a4d47)||_0x3a4d47<=0x0)return![];try{return process[_0x177425(0x14d)](_0x3a4d47,0x0),!![];}catch(_0x2dd809){return _0x2dd809['code']!==_0x177425(0x167);}}class IndexStore{constructor(_0x28931a,_0x1c4162,_0x4a102d){const _0x578beb=_0x5e4e34;this[_0x578beb(0x15a)]=_0x28931a,this['workspace']=fs[_0x578beb(0x176)](_0x1c4162),this[_0x578beb(0x151)]=_0x4a102d,this[_0x578beb(0x177)]=safeDirectory(this['workspace'],_0x578beb(0x199)+_0x28931a);if(!containsWorkspace(this[_0x578beb(0x155)],this[_0x578beb(0x177)]))throw fail(_0x578beb(0x174),_0x578beb(0x108));this['lockPath']=path['join'](this['directory'],_0x578beb(0x168)),this[_0x578beb(0x154)]=safeDirectory(this[_0x578beb(0x155)],_0x578beb(0x199)+_0x28931a+_0x578beb(0x181)),this['userFile']=path[_0x578beb(0x185)](this[_0x578beb(0x154)],crypto[_0x578beb(0x1a0)]()+_0x578beb(0x160));if(_0x28931a===_0x578beb(0x14f)){const _0x4ffca4=path[_0x578beb(0x185)](this['workspace'],_0x578beb(0x158));if(!fs[_0x578beb(0x157)](_0x4ffca4))fs[_0x578beb(0x16f)](_0x4ffca4);this[_0x578beb(0x196)]={'CRG_DATA_DIR':path[_0x578beb(0x185)](this[_0x578beb(0x155)],_0x578beb(0x17c),'.data',_0x578beb(0x194))};const _0x41a56c=this[_0x578beb(0x140)]();this[_0x578beb(0x1a3)]=_0x41a56c[_0x578beb(0x125)],this[_0x578beb(0x19f)]=_0x41a56c['database'],this[_0x578beb(0x18c)]=_0x41a56c[_0x578beb(0x15e)];}else this['env']=_0x4a102d[_0x578beb(0x196)]||{},this['cache']=path[_0x578beb(0x185)](this[_0x578beb(0x155)],'.codegraph'),this['database']=path[_0x578beb(0x185)](this['cache'],_0x578beb(0x180));const _0x44b756=this['lock']();try{this[_0x578beb(0xfd)]();}finally{_0x44b756();}}[_0x5e4e34(0x140)](){const _0x489e6c=_0x5e4e34,_0xf068bf=cp['execFileSync'](this[_0x489e6c(0x151)][_0x489e6c(0x149)],[bridge,_0x489e6c(0x11c),this['workspace']],{'env':{...process.env,...this[_0x489e6c(0x196)]},'windowsHide':!![],'encoding':_0x489e6c(0x111),'timeout':0x3a98});return JSON[_0x489e6c(0x150)](_0xf068bf);}[_0x5e4e34(0xfd)](){const _0x53ad21=_0x5e4e34,_0x21234c=this[_0x53ad21(0x15a)]===_0x53ad21(0x16e)?path[_0x53ad21(0x185)](this[_0x53ad21(0x155)],'.codegraph'):path[_0x53ad21(0x185)](this[_0x53ad21(0x155)],_0x53ad21(0x17c),'.data',_0x53ad21(0x194)),_0x58b917=fs['existsSync'](this[_0x53ad21(0x1a3)]);if(!_0x58b917&&spelling(this[_0x53ad21(0x1a3)])===spelling(_0x21234c)){safeDirectory(this[_0x53ad21(0x155)],path['relative'](this[_0x53ad21(0x155)],this[_0x53ad21(0x1a3)]));if(!containsWorkspace(this['workspace'],this['cache']))throw fail(_0x53ad21(0x174),_0x53ad21(0x14c));atomic(path[_0x53ad21(0x185)](this['cache'],'.apt-managed.json'),{'owner':_0x53ad21(0x144),'workspace':this[_0x53ad21(0x155)],'kind':this[_0x53ad21(0x15a)]});}}[_0x5e4e34(0x13d)](){const _0x58ea6b=_0x5e4e34;try{const _0x568856=read(path[_0x58ea6b(0x185)](this[_0x58ea6b(0x1a3)],'.apt-managed.json'));for(const _0x107ca3 of['',_0x58ea6b(0x124),_0x58ea6b(0x198)])rejectLink(this[_0x58ea6b(0x19f)]+_0x107ca3);const _0x42b4eb=identity(this[_0x58ea6b(0x1a3)]),_0x23e113=this[_0x58ea6b(0x15a)]===_0x58ea6b(0x16e)?[_0x58ea6b(0x12f),_0x58ea6b(0x16c)]:[_0x58ea6b(0x146)];return _0x568856?.[_0x58ea6b(0x100)]===_0x58ea6b(0x144)&&sameWorkspace(_0x568856[_0x58ea6b(0x155)],this['workspace'])&&_0x23e113[_0x58ea6b(0x110)](_0x45a149=>{const _0x203b74=_0x58ea6b,_0x3bb93f=path['resolve'](this[_0x203b74(0x155)],_0x45a149);return _0x42b4eb===(process['platform']===_0x203b74(0x14e)?_0x3bb93f[_0x203b74(0x152)]():_0x3bb93f);});}catch{return![];}}[_0x5e4e34(0x10c)](){const _0x122500=_0x5e4e34;rejectLink(this[_0x122500(0x147)]);const _0x43a99d=acquireRuntimeLock(this['lockPath']);if(!_0x43a99d)throw fail('INDEX_BUSY',_0x122500(0x123));return _0x43a99d;}[_0x5e4e34(0x179)](_0x4e3389=null,_0x2536a0=![]){const _0x5dfb57=_0x5e4e34,_0x74fff5=_0x2536a0?null:this[_0x5dfb57(0x10c)]();try{atomic(this['userFile'],{'ownerPid':process[_0x5dfb57(0x19b)],'childPid':_0x4e3389,'workspace':this['workspace']});}finally{_0x74fff5?.();}}[_0x5e4e34(0x11e)](){const _0x2498c1=_0x5e4e34,_0x3c27d9={};_0x3c27d9['force']=!![],fs[_0x2498c1(0x195)](this[_0x2498c1(0x19a)],_0x3c27d9);}[_0x5e4e34(0x142)](){const _0x333894=_0x5e4e34;return fs['readdirSync'](this[_0x333894(0x154)])[_0x333894(0x166)](_0x28f487=>_0x28f487['endsWith']('.json'))[_0x333894(0x110)](_0xd76ef4=>{const _0x49471c=_0x333894,_0x150bfa=path[_0x49471c(0x185)](this[_0x49471c(0x154)],_0xd76ef4);if(_0x150bfa===this['userFile'])return![];const _0x3a48f4=read(_0x150bfa);if(!_0x3a48f4||live(_0x3a48f4[_0x49471c(0x15f)])||live(_0x3a48f4[_0x49471c(0x104)]))return!![];return fs[_0x49471c(0x15c)](_0x150bfa),![];});}async[_0x5e4e34(0x122)](){const _0xc220c2=_0x5e4e34;if(this[_0xc220c2(0x15a)]==='codegraph'){const _0xd4ebd4=fs[_0xc220c2(0x157)](this[_0xc220c2(0x19f)]);await run(this[_0xc220c2(0x151)][_0xc220c2(0x149)],[...this[_0xc220c2(0x151)]['args'],_0xd4ebd4?_0xc220c2(0x109):'init',this[_0xc220c2(0x155)],_0xd4ebd4?_0xc220c2(0x17f):_0xc220c2(0x16b)],{'cwd':this[_0xc220c2(0x155)],'env':{...process.env,...this[_0xc220c2(0x196)]},'windowsHide':!![],'timeout':0x1d4c0,'maxBuffer':0x4*0x400*0x400});return;}const _0x155ba8=this[_0xc220c2(0x140)]();if(path['resolve'](_0x155ba8['database'])!==path['resolve'](this[_0xc220c2(0x19f)]))throw fail(_0xc220c2(0x135),_0xc220c2(0x126));const _0x10777f=snapshot(this['workspace']);try{const _0x1db979=await run(this[_0xc220c2(0x151)][_0xc220c2(0x149)],[bridge,_0xc220c2(0x122),this[_0xc220c2(0x155)]],{'cwd':this[_0xc220c2(0x155)],'env':{...process.env,...this[_0xc220c2(0x196)]},'windowsHide':!![],'timeout':0x1d4c0,'maxBuffer':0x4*0x400*0x400});JSON[_0xc220c2(0x150)](_0x1db979[_0xc220c2(0x16d)]);}catch(_0x59cc9d){let _0x529349=_0x59cc9d[_0xc220c2(0x172)];try{_0x529349=JSON[_0xc220c2(0x150)](_0x59cc9d['stdout'])[_0xc220c2(0x13c)]||_0x529349;}catch{}throw fail(classify(_0x529349),_0x529349);}if(_0x10777f!==snapshot(this['workspace']))throw fail(_0xc220c2(0x14a),_0xc220c2(0x10b));atomic(path[_0xc220c2(0x185)](this['directory'],_0xc220c2(0x19e)),{'workspace':this[_0xc220c2(0x155)],'snapshot':_0x10777f,'version':this[_0xc220c2(0x151)][_0xc220c2(0x10d)],'database':this['database'],'builtAt':new Date()['toISOString']()});}async[_0x5e4e34(0x19d)](){const _0x37297b=_0x5e4e34,_0x5cc1d9=this[_0x37297b(0x10c)]();try{const _0x5638f3=read(path[_0x37297b(0x185)](this[_0x37297b(0x177)],_0x37297b(0x19e)));if(!_0x5638f3||_0x5638f3['version']!==this[_0x37297b(0x151)][_0x37297b(0x10d)]||_0x5638f3['database']!==this['database']||!fs[_0x37297b(0x157)](this[_0x37297b(0x19f)])||_0x5638f3[_0x37297b(0x159)]!==snapshot(this[_0x37297b(0x155)]))await this['build']();return read(path[_0x37297b(0x185)](this[_0x37297b(0x177)],_0x37297b(0x19e)));}finally{_0x5cc1d9();}}async[_0x5e4e34(0x18e)](_0x4a09d4,_0x16bdad){const _0x5e7905=_0x5e4e34;if(![_0x5e7905(0x11d),_0x5e7905(0x112)][_0x5e7905(0x173)](_0x16bdad['code'])||!this['owned']())return![];let _0x5801fb;try{_0x5801fb=this[_0x5e7905(0x10c)]();}catch(_0x9fc7b7){const _0x21479c={};return _0x21479c[_0x5e7905(0x15d)]='busy',_0x21479c[_0x5e7905(0x138)]=_0x9fc7b7[_0x5e7905(0x172)],_0x4a09d4['indexRecovery']=_0x21479c,![];}const _0x5b2d05=path[_0x5e7905(0x185)](this[_0x5e7905(0x177)],_0x5e7905(0x133));try{if(this[_0x5e7905(0x15a)]===_0x5e7905(0x14f)&&spelling(this[_0x5e7905(0x140)]()['database'])!==spelling(this['database']))throw fail('INDEX_PATH_CHANGED',_0x5e7905(0x126));if(this[_0x5e7905(0x142)]()){const _0x4c318a={};return _0x4c318a[_0x5e7905(0x15d)]=_0x5e7905(0x184),_0x4c318a['reason']=_0x5e7905(0x119),_0x4a09d4[_0x5e7905(0x11f)]=_0x4c318a,![];}const _0x330d71=hash(fs[_0x5e7905(0x157)](this[_0x5e7905(0x19f)])?fs[_0x5e7905(0x107)](this[_0x5e7905(0x19f)]):_0x5e7905(0x102)),_0x29bbda=read(_0x5b2d05);if(_0x29bbda&&_0x29bbda[_0x5e7905(0x15d)]!==_0x5e7905(0x120)&&(_0x29bbda['fingerprint']===_0x330d71||_0x29bbda[_0x5e7905(0x129)]===_0x330d71))return _0x4a09d4['indexRecovery']=_0x29bbda,![];const _0x18c908=fs[_0x5e7905(0x176)](this['cache']),_0x4db45a=_0x18c908+_0x5e7905(0x114)+crypto['randomUUID'](),_0x117ce7=read(path[_0x5e7905(0x185)](_0x18c908,_0x5e7905(0x115))),_0x38b80a={'status':'recovering','fingerprint':_0x330d71,'backup':_0x4db45a,'workspace':this['workspace'],'at':new Date()[_0x5e7905(0x134)]()};atomic(_0x5b2d05,_0x38b80a),_0x4a09d4[_0x5e7905(0x11f)]=_0x38b80a;const _0x1a414f=_0x4a09d4[_0x5e7905(0x113)]===undefined?undefined:_0x4a09d4['generation']+0x1;await _0x4a09d4[_0x5e7905(0x19c)]();if(_0x4a09d4[_0x5e7905(0x113)]!==_0x1a414f)throw fail(_0x5e7905(0x139),'Backend\x20was\x20stopped\x20during\x20recovery');if(!this[_0x5e7905(0x13d)]())throw fail(_0x5e7905(0x174),'Cache\x20ownership\x20changed\x20before\x20recovery');fs[_0x5e7905(0x14b)](_0x18c908,_0x4db45a),fs[_0x5e7905(0x16f)](_0x18c908),atomic(path[_0x5e7905(0x185)](_0x18c908,_0x5e7905(0x115)),_0x117ce7),await this[_0x5e7905(0x122)]();if(_0x4a09d4['generation']!==_0x1a414f)throw fail(_0x5e7905(0x139),_0x5e7905(0x162));_0x4a09d4[_0x5e7905(0x136)](![],!![]);const _0x527c53={..._0x38b80a};return _0x527c53[_0x5e7905(0x15d)]=_0x5e7905(0x1a1),_0x4a09d4['indexRecovery']=_0x527c53,atomic(_0x5b2d05,_0x4a09d4[_0x5e7905(0x11f)]),!![];}catch(_0xad68c1){const _0x5884d4=hash(fs[_0x5e7905(0x157)](this[_0x5e7905(0x19f)])?fs['readFileSync'](this['database']):_0x5e7905(0x102));return _0x4a09d4[_0x5e7905(0x11f)]={..._0x4a09d4[_0x5e7905(0x11f)]||{},'status':_0x5e7905(0x130),'failedFingerprint':_0x5884d4,'reason':_0xad68c1[_0x5e7905(0x172)]},atomic(_0x5b2d05,_0x4a09d4['indexRecovery']),![];}finally{_0x5801fb();}}[_0x5e4e34(0x120)](_0x4d4b1b){const _0x2f93f9=_0x5e4e34;_0x4d4b1b[_0x2f93f9(0x11f)]={..._0x4d4b1b[_0x2f93f9(0x11f)],'status':_0x2f93f9(0x120)},atomic(path[_0x2f93f9(0x185)](this[_0x2f93f9(0x177)],_0x2f93f9(0x133)),_0x4d4b1b[_0x2f93f9(0x11f)]);}}const _0x47c43d={};_0x47c43d['IndexStore']=IndexStore,_0x47c43d['snapshot']=snapshot,_0x47c43d[_0x5e4e34(0x131)]=responseError,_0x47c43d[_0x5e4e34(0x178)]=classify,_0x47c43d[_0x5e4e34(0x10a)]=atomic,module[_0x5e4e34(0x191)]=_0x47c43d;require[_0x5e4e34(0x11a)]===module&&(async()=>{const _0x2aa09c=_0x5e4e34,_0x590469=require(_0x2aa09c(0x127));for(const [_0x10d7ff,_0x2a2a68]of[[_0x2aa09c(0x16e),_0x590469[_0x2aa09c(0x16e)]],['code-review-graph',_0x590469[_0x2aa09c(0x169)]]]){const _0x176257=new IndexStore(_0x10d7ff,process[_0x2aa09c(0x192)][0x2],_0x2a2a68()),_0x109689=_0x176257[_0x2aa09c(0x10c)]();try{if(_0x176257[_0x2aa09c(0x142)]())throw fail(_0x2aa09c(0x1a4),_0x2aa09c(0x116));await _0x176257[_0x2aa09c(0x122)]();}finally{_0x109689();}}})()[_0x5e4e34(0x187)](_0x8c4fb0=>{const _0x1ce01a=_0x5e4e34;console[_0x1ce01a(0x13c)](_0x8c4fb0[_0x1ce01a(0x172)]),process[_0x1ce01a(0x101)]=0x1;});
@@ -0,0 +1 @@
1
+ const _0x5cebaa=_0x67f1;(function(_0x49fae0,_0x324ed1){const _0x457a3f=_0x67f1,_0x20cc42=_0x49fae0();while(!![]){try{const _0x2b0cc0=parseInt(_0x457a3f(0xb9))/0x1+parseInt(_0x457a3f(0xbc))/0x2*(parseInt(_0x457a3f(0x80))/0x3)+parseInt(_0x457a3f(0x83))/0x4*(parseInt(_0x457a3f(0xa2))/0x5)+-parseInt(_0x457a3f(0xb7))/0x6+-parseInt(_0x457a3f(0x9f))/0x7+-parseInt(_0x457a3f(0x8d))/0x8+parseInt(_0x457a3f(0x7f))/0x9;if(_0x2b0cc0===_0x324ed1)break;else _0x20cc42['push'](_0x20cc42['shift']());}catch(_0xffa84c){_0x20cc42['push'](_0x20cc42['shift']());}}}(_0x3b5b,0x3fefb));const fs=require('fs'),path=require(_0x5cebaa(0x9e)),os=require('os'),cp=require('child_process'),CODEGRAPH_VERSION='1.6.0',_0xcee3c8={};_0xcee3c8[_0x5cebaa(0xc9)]='2.3.6',_0xcee3c8['fastmcp']=_0x5cebaa(0x8e),_0xcee3c8[_0x5cebaa(0xac)]=_0x5cebaa(0x82);const REVIEW_VERSIONS=Object[_0x5cebaa(0x85)](_0xcee3c8),PROFILE='codegraph-'+CODEGRAPH_VERSION+_0x5cebaa(0x99),root=()=>process.env.APT_BACKEND_ROOT||path[_0x5cebaa(0x9d)](os[_0x5cebaa(0xc1)](),_0x5cebaa(0x8a),_0x5cebaa(0xa8)),pythonAt=_0x21851f=>path[_0x5cebaa(0x9d)](_0x21851f,process[_0x5cebaa(0xc5)]===_0x5cebaa(0xab)?_0x5cebaa(0xa7):'bin/python'),reviewHome=()=>path[_0x5cebaa(0x9d)](root(),_0x5cebaa(0x87)),codeHome=()=>path[_0x5cebaa(0x9d)](root(),_0x5cebaa(0xb1)+CODEGRAPH_VERSION),run=(_0x1cd7bf,_0x25c0fc,_0x366cfd={})=>cp['execFileSync'](_0x1cd7bf,_0x25c0fc,{'windowsHide':!![],'encoding':'utf8','timeout':0x1d4c0,'stdio':_0x5cebaa(0xaf),..._0x366cfd}),npmCli=()=>process.env.npm_execpath||path[_0x5cebaa(0x9d)](path[_0x5cebaa(0x91)](process[_0x5cebaa(0xc8)]),_0x5cebaa(0x95));function codegraph(){const _0x2c7397=_0x5cebaa,_0x2ab0f9=path[_0x2c7397(0x9d)](codeHome(),'node_modules/@colbymchenry/codegraph'),_0x1a0614=JSON[_0x2c7397(0x92)](fs[_0x2c7397(0x89)](path[_0x2c7397(0x9d)](_0x2ab0f9,'package.json'),_0x2c7397(0x7e)));if(_0x1a0614[_0x2c7397(0x7c)]!==CODEGRAPH_VERSION)throw new Error(_0x2c7397(0xa9));const _0x2080d5=path[_0x2c7397(0x9d)](codeHome(),_0x2c7397(0xad)+process[_0x2c7397(0xc5)]+'-'+process[_0x2c7397(0xb3)]),_0x144664=JSON[_0x2c7397(0x92)](fs[_0x2c7397(0x89)](path[_0x2c7397(0x9d)](_0x2080d5,_0x2c7397(0xc2)),'utf8')),_0x409388=path[_0x2c7397(0x9d)](_0x2080d5,process[_0x2c7397(0xc5)]===_0x2c7397(0xab)?'node.exe':_0x2c7397(0xa1)),_0x1f713b=path[_0x2c7397(0x9d)](_0x2080d5,'lib/dist/bin/codegraph.js');if(_0x144664[_0x2c7397(0x7c)]!==CODEGRAPH_VERSION||!fs[_0x2c7397(0x96)](_0x409388)||!fs[_0x2c7397(0x96)](_0x1f713b))throw new Error('CodeGraph\x20platform\x20profile\x20is\x20incomplete');const _0x1e9bd7={};_0x1e9bd7['CODEGRAPH_MCP_TOOLS']=_0x2c7397(0xaa),_0x1e9bd7[_0x2c7397(0xc4)]='1';const _0x1394b2={};return _0x1394b2[_0x2c7397(0x94)]=_0x409388,_0x1394b2[_0x2c7397(0xa0)]=['--liftoff-only',_0x2c7397(0xc3),_0x1f713b],_0x1394b2[_0x2c7397(0x7c)]=CODEGRAPH_VERSION,_0x1394b2[_0x2c7397(0x93)]=_0x1e9bd7,_0x1394b2;}function review(){const _0x25a902=_0x5cebaa,_0x3cdfc2=pythonAt(reviewHome()),_0x14746d=JSON[_0x25a902(0x92)](run(_0x3cdfc2,['-c','import\x20json,importlib.metadata\x20as\x20m;print(json.dumps({k:m.version(k)\x20for\x20k\x20in\x20[\x22code-review-graph\x22,\x22fastmcp\x22,\x22mcp\x22]}))']));if(Object[_0x25a902(0x81)](REVIEW_VERSIONS)['some'](([_0x19c15e,_0x11b577])=>_0x14746d[_0x19c15e]!==_0x11b577))throw new Error(_0x25a902(0xb4));const _0x34202a={};return _0x34202a['command']=_0x3cdfc2,_0x34202a[_0x25a902(0xa0)]=['-m',_0x25a902(0xc7),_0x25a902(0xae)],_0x34202a[_0x25a902(0x7c)]=REVIEW_VERSIONS[_0x25a902(0xc9)],_0x34202a[_0x25a902(0x98)]=_0x14746d,_0x34202a;}function inspect(){const _0x16bd2e=_0x5cebaa;return Object['fromEntries']([[_0x16bd2e(0xcd),codegraph],[_0x16bd2e(0xc9),review]][_0x16bd2e(0x9b)](([_0x5eb4ae,_0x5247f2])=>{const _0x3266bd=_0x16bd2e;try{return[_0x5eb4ae,{'configured':!![],..._0x5247f2()}];}catch(_0xa7e4cb){const _0x4bd1e0={};return _0x4bd1e0[_0x3266bd(0x9a)]=![],_0x4bd1e0['configurationError']=_0x3266bd(0xa3)+PROFILE+':\x20'+_0xa7e4cb[_0x3266bd(0x8b)],[_0x5eb4ae,_0x4bd1e0];}}));}function install(){const _0x1bbf53=_0x5cebaa,_0x5941e0={};_0x5941e0[_0x1bbf53(0x8f)]=!![],fs['mkdirSync'](root(),_0x5941e0);const _0x2e152a=require('../core/owned-lock')[_0x1bbf53(0xb6)](path[_0x1bbf53(0x9d)](root(),_0x1bbf53(0xbf)));if(!_0x2e152a)throw new Error('Backend\x20profile\x20installation\x20is\x20busy');try{try{codegraph();}catch{const _0x4dafa2={};_0x4dafa2['recursive']=!![],fs['mkdirSync'](codeHome(),_0x4dafa2);const _0x5a4726={};_0x5a4726[_0x1bbf53(0x97)]=0x493e0,run(process[_0x1bbf53(0xc8)],[npmCli(),_0x1bbf53(0xba),_0x1bbf53(0xce),codeHome(),_0x1bbf53(0xb0),_0x1bbf53(0xca),_0x1bbf53(0xb5),'@colbymchenry/codegraph@'+CODEGRAPH_VERSION],_0x5a4726);}try{review();}catch{if(!fs['existsSync'](pythonAt(reviewHome()))){let _0x27856d;for(const _0x1611d0 of[_0x1bbf53(0x8c),'python','py']){try{run(_0x1611d0,[_0x1bbf53(0xb2)]),_0x27856d=_0x1611d0;break;}catch{}}if(!_0x27856d)throw new Error(_0x1bbf53(0xbd));run(_0x27856d,['-m','venv',reviewHome()]);}const _0x55b7ac={};_0x55b7ac[_0x1bbf53(0x97)]=0x493e0,run(pythonAt(reviewHome()),['-m',_0x1bbf53(0xbe),'install',...Object[_0x1bbf53(0x81)](REVIEW_VERSIONS)[_0x1bbf53(0x9b)](([_0x456c1f,_0x13fc1c])=>_0x456c1f+'=='+_0x13fc1c)],_0x55b7ac);}return{'profile':PROFILE,'codegraph':codegraph(),'review':review()};}finally{_0x2e152a();}}const codeTools=require(_0x5cebaa(0x86))[_0x5cebaa(0x88)];function compatibleTools(_0x28f438,_0x451a24){const _0x20c510=_0x5cebaa;if(_0x28f438[_0x20c510(0xcc)]!=='codegraph'||_0x28f438['options'][_0x20c510(0xb8)]||_0x28f438[_0x20c510(0xc0)]?.[_0x20c510(0xbb)]?.[_0x20c510(0x9c)]?.['version']!==CODEGRAPH_VERSION)return _0x451a24;const _0x51aa6a=new Map(_0x451a24[_0x20c510(0x9b)](_0x2d98a0=>[_0x2d98a0[_0x20c510(0xcc)],_0x2d98a0]));for(const _0x5ec90b of codeTools)if(!_0x51aa6a['has'](_0x5ec90b[_0x20c510(0xcc)]))_0x51aa6a[_0x20c510(0x7d)](_0x5ec90b[_0x20c510(0xcc)],_0x5ec90b);return[..._0x51aa6a['values']()];}const _0x15f6e6={};function _0x67f1(_0x3426bb,_0x2f3c66){_0x3426bb=_0x3426bb-0x7c;const _0x3b5b45=_0x3b5b();let _0x67f13a=_0x3b5b45[_0x3426bb];if(_0x67f1['AqeQXl']===undefined){var _0x21bf40=function(_0x5e37d0){const _0x24099c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xcee3c8='',_0x16e176='';for(let _0x215685=0x0,_0x4e47b4,_0x4c3d33,_0x86b5e7=0x0;_0x4c3d33=_0x5e37d0['charAt'](_0x86b5e7++);~_0x4c3d33&&(_0x4e47b4=_0x215685%0x4?_0x4e47b4*0x40+_0x4c3d33:_0x4c3d33,_0x215685++%0x4)?_0xcee3c8+=String['fromCharCode'](0xff&_0x4e47b4>>(-0x2*_0x215685&0x6)):0x0){_0x4c3d33=_0x24099c['indexOf'](_0x4c3d33);}for(let _0x468bb5=0x0,_0x37ba10=_0xcee3c8['length'];_0x468bb5<_0x37ba10;_0x468bb5++){_0x16e176+='%'+('00'+_0xcee3c8['charCodeAt'](_0x468bb5)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x16e176);};_0x67f1['iGGCHh']=_0x21bf40,_0x67f1['UYHFDe']={},_0x67f1['AqeQXl']=!![];}const _0x2fadcf=_0x3b5b45[0x0],_0x5e1036=_0x3426bb+_0x2fadcf,_0x3391bc=_0x67f1['UYHFDe'][_0x5e1036];return!_0x3391bc?(_0x67f13a=_0x67f1['iGGCHh'](_0x67f13a),_0x67f1['UYHFDe'][_0x5e1036]=_0x67f13a):_0x67f13a=_0x3391bc,_0x67f13a;}_0x15f6e6[_0x5cebaa(0xc6)]=PROFILE,_0x15f6e6[_0x5cebaa(0x90)]=CODEGRAPH_VERSION,_0x15f6e6[_0x5cebaa(0xa4)]=REVIEW_VERSIONS,_0x15f6e6[_0x5cebaa(0xcd)]=codegraph,_0x15f6e6[_0x5cebaa(0xcb)]=review,_0x15f6e6['inspect']=inspect,_0x15f6e6[_0x5cebaa(0xba)]=install,_0x15f6e6[_0x5cebaa(0xa5)]=compatibleTools,_0x15f6e6[_0x5cebaa(0xa6)]=codeTools,module[_0x5cebaa(0x84)]=_0x15f6e6;function _0x3b5b(){const _0x214a6a=['DMvYC2LVBNm','lxjLDMLLDY0YlJmUnI1Myxn0BwnWltmUnc4Ylw1JCc0XlJi4lJe','y29UzMLNDxjLza','BwfW','C2vYDMvYsw5MBW','AM9PBG','Cgf0Aa','mZa4mdm0m1rwrMHtDG','yxjNCW','BM9Kzq','mZbOyMvnEhO','uNvUiefqvcbPBNn0ywXSl3vWzgf0zsb0BYbWCM92AxnPB24G','uKvwsuvxx1zfuLnjt05t','y29TCgf0AwjSzvrVB2XZ','y29KzvrVB2XZ','u2nYAxb0CY9WExrOB24UzxHL','yMfJA2vUzhm','q29KzuDYyxbOihbYB2zPBguGDMvYC2LVBIbTAxnTyxrJAa','zxHWBg9YzsXZzwfYy2GSy2fSBgvYCYXJywXSzwvZlgzPBgvZlhn0yxr1CW','D2LUmZi','BwnW','BM9Kzv9TB2r1BgvZl0bJB2XIEw1JAgvUCNKVy29KzwDYyxbOlq','C2vYDMu','CgLWzq','ls1UBY1HDwrPDa','y29KzwDYyxbOlq','ls12zxjZAw9U','yxjJAa','uMv2Awv3ifb5DgHVBIbWCM9MAwXLihzLCNnPB24GBwLZBwf0y2G','ls1WywnRywDLlwXVy2S9zMfSC2u','ywnXDwLYzvj1BNrPBwvmB2nR','mJuXmtmXofHVB0TtyG','y3vZDg9Tq29TBwfUza','ndyWmJq2q0nTs1bO','Aw5ZDgfSBa','CMvZDwX0','nduZmNPbC2TXqq','uhL0Ag9UigLZihjLCxvPCMvKihrVigLUC3rHBgWGDgHLihjLDMLLDYbIywnRzw5K','CgLW','Aw5ZDgfSBc5SB2nR','Aw5PDgLHBgL6zvjLC3bVBNnL','Ag9TzwrPCG','CgfJA2fNzs5QC29U','ls1KAxnHyMXLlxDHCM5PBMC9rxHWzxjPBwvUDgfSv2fYBMLUzW','q09eruDsqvbix05px0rbru1ptG','CgXHDgzVCM0','ufjprKLmrq','y29Kzv9YzxzPzxDFz3jHCgG','zxHLy1bHDgG','y29Kzs1YzxzPzxCTz3jHCgG','ls1UBY1MDw5K','CMv2Awv3','BMfTzq','y29KzwDYyxbO','ls1WCMvMAxG','DMvYC2LVBG','C2v0','DxrMoa','nZu0ntmYmwrRCKz5Cq','mty1yML4vgr6','zw50CMLLCW','ms4Yoc4X','mtm2nZi4qMXIqurY','zxHWB3j0CW','zNjLzxPL','lI9JB2rLz3jHCgGTms42lJaUANnVBG','CMv2Awv3ltiUmY42lwzHC3rTy3aTmY40lJiTBwnWlteUmJGUmq','Dg9VBhm','CMvHzezPBgvtEw5J','lMfUAgrO','BwvZC2fNzq','ChL0Ag9UmW','nda2mJGXnKPvC05kqG','mY40lJi','CMvJDxjZAxzL','q09eruDsqvbix1zfuLnjt04','zgLYBMfTzq','CgfYC2u','zw52','y29TBwfUza','BM9Kzv9TB2r1BgvZl25WBs9IAw4VBNbTlwnSAs5QCW','zxHPC3rZu3LUyW','DgLTzw91Da'];_0x3b5b=function(){return _0x214a6a;};return _0x3b5b();}
@@ -0,0 +1,29 @@
1
+ """Version-pinned bridge. JSON only on stdout; never rewrites the global registry."""
2
+ import json
3
+ import os
4
+ import sys
5
+ from pathlib import Path
6
+
7
+
8
+ def main():
9
+ operation, workspace = sys.argv[1:3]
10
+ root = Path(workspace).resolve(strict=True)
11
+ from code_review_graph.registry import Registry
12
+ registered = Registry().get_data_dir_for_repo(str(root))
13
+ data = Path(registered or os.environ.get("CRG_DATA_DIR") or root / ".code-review-graph").resolve()
14
+ if operation == "inspect":
15
+ return {"workspace": str(root), "dataDirectory": str(data), "database": str(data / "graph.db"), "source": "registry" if registered else "environment"}
16
+ from code_review_graph.tools.build import build_or_update_graph
17
+ result = build_or_update_graph(repo_root=str(root), full_rebuild=True, postprocess="full")
18
+ if result.get("status") != "ok":
19
+ raise RuntimeError(result.get("error") or result.get("summary") or "Graph build failed")
20
+ if result.get("errors"):
21
+ raise RuntimeError("Graph build has parsing errors: " + str(result["errors"])[:1000])
22
+ return result
23
+
24
+
25
+ try:
26
+ print(json.dumps(main()))
27
+ except Exception as error:
28
+ print(json.dumps({"error": str(error), "type": type(error).__name__}))
29
+ sys.exit(1)