@ranger-testing/ranger-cli 2.5.4-alpha.a98f848-6 → 2.5.4-alpha.b2ba935-13

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 (82) hide show
  1. package/README.md +36 -14
  2. package/build/cli.js +1 -1
  3. package/build/commands/addEnv.js +1 -1
  4. package/build/commands/authEncrypt.js +1 -1
  5. package/build/commands/clean.js +1 -1
  6. package/build/commands/config.js +1 -1
  7. package/build/commands/env.js +1 -1
  8. package/build/commands/feature.js +1 -1
  9. package/build/commands/hook.js +1 -1
  10. package/build/commands/hooks/autoPrompt.js +1 -1
  11. package/build/commands/hooks/disable.js +1 -1
  12. package/build/commands/hooks/enable.js +1 -1
  13. package/build/commands/hooks/exitPlanMode.js +1 -1
  14. package/build/commands/hooks/index.js +1 -1
  15. package/build/commands/hooks/output.js +1 -1
  16. package/build/commands/hooks/planReminder.js +1 -1
  17. package/build/commands/hooks/planStart.js +1 -1
  18. package/build/commands/hooks/postEdit.js +1 -1
  19. package/build/commands/hooks/preCompact.js +1 -1
  20. package/build/commands/hooks/sessionEnd.js +1 -1
  21. package/build/commands/hooks/sessionStart.js +1 -1
  22. package/build/commands/hooks/stopHook.js +1 -1
  23. package/build/commands/index.js +1 -1
  24. package/build/commands/login.js +1 -1
  25. package/build/commands/mcpBootstrap.js +1 -1
  26. package/build/commands/migrateProfile.js +1 -1
  27. package/build/commands/setup/claude.js +1 -1
  28. package/build/commands/setup/opencode.js +1 -1
  29. package/build/commands/setupCi.js +1 -1
  30. package/build/commands/skillup.js +1 -1
  31. package/build/commands/start.js +1 -1
  32. package/build/commands/status.js +1 -1
  33. package/build/commands/update.js +1 -1
  34. package/build/commands/updateEnv.js +1 -1
  35. package/build/commands/useEnv.js +1 -1
  36. package/build/commands/utils/activeProfile.js +1 -1
  37. package/build/commands/utils/agentEnv.js +1 -1
  38. package/build/commands/utils/browserSessionsApi.js +1 -1
  39. package/build/commands/utils/claudeConfig.js +1 -1
  40. package/build/commands/utils/claudeOverrideSettings.js +1 -1
  41. package/build/commands/utils/claudePlugin.js +1 -1
  42. package/build/commands/utils/cloudProfile.js +1 -1
  43. package/build/commands/utils/cloudProfileSession.js +1 -1
  44. package/build/commands/utils/crypto.js +1 -1
  45. package/build/commands/utils/desirePathLog.js +1 -1
  46. package/build/commands/utils/deviceAuth.js +1 -1
  47. package/build/commands/utils/environment.js +1 -1
  48. package/build/commands/utils/featureApi.js +1 -1
  49. package/build/commands/utils/fixWebmDuration.js +1 -1
  50. package/build/commands/utils/gitTracked.js +1 -1
  51. package/build/commands/utils/keychain.js +1 -1
  52. package/build/commands/utils/legacyWarning.js +1 -0
  53. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  54. package/build/commands/utils/matchAuthEnvironment.js +1 -1
  55. package/build/commands/utils/mcpImageBase64.js +1 -1
  56. package/build/commands/utils/model.js +1 -1
  57. package/build/commands/utils/opencodeConfig.js +1 -1
  58. package/build/commands/utils/playwrightCli.js +1 -1
  59. package/build/commands/utils/profileMessages.js +1 -1
  60. package/build/commands/utils/profileSetupBanner.js +1 -1
  61. package/build/commands/utils/projectsConfig.js +1 -1
  62. package/build/commands/utils/rangerConfig.js +1 -1
  63. package/build/commands/utils/rangerRoot.js +1 -1
  64. package/build/commands/utils/resolveProfileContext.js +1 -1
  65. package/build/commands/utils/resolveProfileUrl.js +1 -1
  66. package/build/commands/utils/retry.js +1 -1
  67. package/build/commands/utils/sessionCache.js +1 -1
  68. package/build/commands/utils/settings.js +1 -1
  69. package/build/commands/utils/skillContent.js +1 -1
  70. package/build/commands/utils/skills.js +1 -1
  71. package/build/commands/utils/stitchWebmFiles.js +1 -1
  72. package/build/commands/utils/telemetry.js +1 -1
  73. package/build/commands/utils/tokenRefresh.js +1 -1
  74. package/build/commands/utils/traceSnapshotMapper.js +1 -1
  75. package/build/commands/utils/userApi.js +1 -1
  76. package/build/commands/utils/version.js +1 -1
  77. package/build/commands/verifyFeature.js +1 -1
  78. package/build/commands/verifyFeatureCli.js +1 -1
  79. package/build/skills/ranger/SKILL.md +24 -8
  80. package/build/skills/ranger/create.md +16 -3
  81. package/build/skills/ranger/verify.md +37 -18
  82. package/package.json +1 -1
@@ -1 +1 @@
1
- function _0x1cd7(_0x15ba47,_0x488b78){_0x15ba47=_0x15ba47-0x65;const _0x3a79bd=_0x3a79();let _0x1cd7fd=_0x3a79bd[_0x15ba47];return _0x1cd7fd;}(function(_0xdf3985,_0x5bb67f){const _0x58cd07=_0x1cd7,_0x55c482=_0xdf3985();while(!![]){try{const _0x5a84b1=parseInt(_0x58cd07(0x80))/0x1*(parseInt(_0x58cd07(0x96))/0x2)+parseInt(_0x58cd07(0x6d))/0x3*(parseInt(_0x58cd07(0x7d))/0x4)+parseInt(_0x58cd07(0x68))/0x5+parseInt(_0x58cd07(0x6f))/0x6*(parseInt(_0x58cd07(0x78))/0x7)+parseInt(_0x58cd07(0x86))/0x8+parseInt(_0x58cd07(0x7a))/0x9+-parseInt(_0x58cd07(0x6e))/0xa;if(_0x5a84b1===_0x5bb67f)break;else _0x55c482['push'](_0x55c482['shift']());}catch(_0x94d95b){_0x55c482['push'](_0x55c482['shift']());}}}(_0x3a79,0x2769e));function _0x3a79(){const _0x48e820=['ENLvA','output','error','hISfL','145576SJVrQD','add','❌\x20Failed\x20to\x20add\x20marketplace:','BTBOJ','prompt','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','cGEyx','ranger','wantsSkillup','Project\x20(shared\x20with\x20team\x20via\x20git)','Hdrtp','LqQkc','marketplace','project','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','BNLBZ','591340OopAkF','sbAla','umoAM','XkXqP','✓\x20Marketplace\x20already\x20added','plugin','BSfFx','AtVpg','includes','SKILL.md','success','1170285gaPtwc','✓\x20Ranger\x20skills\x20already\x20installed','✓\x20Claude\x20Code\x20plugin\x20enabled','already\x20enabled','NYOjQ','45xtMwRE','7648390cpCYGj','12HaRjWF','ASdHN','qcOwW','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','ranger@trailhead','✓\x20Claude\x20Code\x20plugin\x20already\x20installed','OSskZ','bOuhB','qZiqK','870373pazTqP','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','797445xmOnVe','user','Would\x20you\x20like\x20to\x20install\x20skills?','10952XenOVe','log','ranger-testing/trailhead','1UuQGMO','push'];_0x3a79=function(){return _0x48e820;};return _0x3a79();}import{join}from'path';import{existsSync}from'fs';import _0x1c47b4 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x2e6c8a){const _0x945853=_0x1cd7,_0x4eb91d={'vaisJ':function(_0x4e74e5,_0x4c39fb){return _0x4e74e5(_0x4c39fb);},'umoAM':_0x945853(0x73),'OSskZ':_0x945853(0x74),'uUYTw':function(_0x301b75){return _0x301b75();},'hISfL':'.claude','XkXqP':'\x0a📦\x20Claude\x20Code\x20Plugin\x0a','FBacQ':'Where\x20should\x20the\x20plugin\x20be\x20installed?','sbAla':_0x945853(0x7b),'AtVpg':'trailhead','uRfCT':_0x945853(0x92),'ynZTI':'install','Hdrtp':'❌\x20Failed\x20to\x20install\x20plugin:','BNLBZ':'\x0aYou\x20can\x20install\x20manually\x20with:','QnfrO':_0x945853(0x79),'xtFeK':'enable','BSfFx':'project','qKiPB':'--scope','cGEyx':function(_0x196c0a,_0x512a67,_0x20cd25){return _0x196c0a(_0x512a67,_0x20cd25);},'NYOjQ':_0x945853(0x6b),'NPLDE':'⚠\x20Failed\x20to\x20enable\x20plugin:'},_0x327489=await _0x4eb91d['vaisJ'](isPluginInstalled,_0x4eb91d[_0x945853(0x98)]);if(_0x327489)return console[_0x945853(0x7e)](_0x4eb91d[_0x945853(0x75)]),![];const _0x5ecb7b=existsSync(join(_0x4eb91d['uUYTw'](getProjectRoot),_0x4eb91d[_0x945853(0x85)]));let _0x1d5f67;if(_0x2e6c8a)_0x1d5f67=_0x2e6c8a;else{if(_0x5ecb7b)_0x1d5f67=_0x945853(0x93);else{console['log'](_0x4eb91d[_0x945853(0x99)]);const _0xe76e59=await _0x1c47b4['prompt']([{'type':'list','name':'pluginScope','message':_0x4eb91d['FBacQ'],'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':_0x4eb91d[_0x945853(0x97)]},{'name':_0x945853(0x8f),'value':_0x945853(0x93)}],'default':_0x4eb91d['sbAla']}]);_0x1d5f67=_0xe76e59['pluginScope'];}}console['log'](_0x945853(0x72)+_0x1d5f67+'\x20level)...\x0a');const _0x35cd2d=await isMarketplaceAdded(_0x4eb91d[_0x945853(0x9d)]);let _0x3d3578=_0x35cd2d;if(_0x35cd2d)console['log'](_0x945853(0x9a));else{const _0x475ad9=await runClaudeCommand(['plugin',_0x4eb91d['uRfCT'],_0x945853(0x87),_0x945853(0x7f)]);!_0x475ad9['success']?(console[_0x945853(0x84)](_0x945853(0x88),_0x475ad9[_0x945853(0x84)]),console['log']('\x0aYou\x20can\x20install\x20manually\x20with:'),console[_0x945853(0x7e)](_0x945853(0x94)),console[_0x945853(0x7e)](_0x945853(0x8b)+_0x1d5f67)):_0x3d3578=!![];}if(_0x3d3578){const _0x5b5772=await runClaudeCommand([_0x945853(0x9b),_0x4eb91d['ynZTI'],_0x4eb91d[_0x945853(0x98)],'--scope',_0x1d5f67]);if(!_0x5b5772[_0x945853(0x67)])console[_0x945853(0x84)](_0x4eb91d[_0x945853(0x90)],_0x5b5772[_0x945853(0x84)]),console['log'](_0x4eb91d[_0x945853(0x95)]),console[_0x945853(0x7e)]('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x1d5f67);else{console[_0x945853(0x7e)](_0x4eb91d['QnfrO']);const _0x82e564=[_0x945853(0x9b),_0x4eb91d['xtFeK'],_0x945853(0x73)];_0x1d5f67===_0x4eb91d['BSfFx']&&_0x82e564[_0x945853(0x81)](_0x4eb91d['qKiPB'],_0x4eb91d[_0x945853(0x9c)]);const _0x342f4d=await _0x4eb91d[_0x945853(0x8c)](runClaudeCommand,_0x82e564,{'captureOutput':!![]}),_0x2d040c=_0x342f4d[_0x945853(0x83)]?.[_0x945853(0x65)](_0x4eb91d[_0x945853(0x6c)]);!_0x342f4d['success']&&!_0x2d040c?console['error'](_0x4eb91d['NPLDE'],_0x342f4d['error']):console[_0x945853(0x7e)](_0x945853(0x6a));}}return!![];}export async function ensureClaudeSkills(_0x44d371){const _0x2423a8=_0x1cd7,_0x567dc6={'GLAbi':function(_0x50597e,_0x4dced1){return _0x50597e(_0x4dced1);},'ENLvA':_0x2423a8(0x7b),'jtpzg':'SKILL.md','ASdHN':function(_0x3bb66f,_0x33845a,_0x4d3ba9,_0x3dc35d){return _0x3bb66f(_0x33845a,_0x4d3ba9,_0x3dc35d);},'bOuhB':function(_0x8ae42,_0xb23d4f){return _0x8ae42(_0xb23d4f);},'OkVaO':_0x2423a8(0x93),'yXJZY':'ranger','qZiqK':function(_0x20aefe,_0x4952f6){return _0x20aefe||_0x4952f6;},'LqQkc':_0x2423a8(0x69),'mxVBt':function(_0x14ecca,_0x5097b9){return _0x14ecca(_0x5097b9);},'xNDAw':function(_0x4a45ac,_0x5a67f2,_0x5b2a0f){return _0x4a45ac(_0x5a67f2,_0x5b2a0f);},'qcOwW':'.claude','BTBOJ':'confirm','uofjK':_0x2423a8(0x8e),'oHceY':function(_0xe5166b,_0x4cfbc0){return _0xe5166b(_0x4cfbc0);}},_0x3dfdde=_0x567dc6['GLAbi'](existsSync,join(getSkillsDir(_0x567dc6[_0x2423a8(0x82)]),_0x2423a8(0x8d),_0x567dc6['jtpzg'])),_0x3c5d9e=existsSync(_0x567dc6[_0x2423a8(0x70)](join,_0x567dc6[_0x2423a8(0x76)](getSkillsDir,_0x567dc6['OkVaO']),_0x567dc6['yXJZY'],_0x2423a8(0x66)));if(_0x567dc6[_0x2423a8(0x77)](_0x3dfdde,_0x3c5d9e))return console['log'](_0x567dc6[_0x2423a8(0x91)]),![];const _0x4d1ba4=_0x567dc6['mxVBt'](existsSync,_0x567dc6['xNDAw'](join,getProjectRoot(),_0x567dc6[_0x2423a8(0x71)]));let _0x515b9c=!![];if(_0x44d371)await skillup({'autoInstall':_0x44d371,'suppressUsage':!![]});else{if(_0x4d1ba4)await skillup({'autoInstall':_0x567dc6['OkVaO'],'suppressUsage':!![]});else{const _0x4d0fd1=await _0x1c47b4[_0x2423a8(0x8a)]([{'type':_0x567dc6[_0x2423a8(0x89)],'name':_0x567dc6['uofjK'],'message':_0x2423a8(0x7c),'default':!![]}]);_0x515b9c=_0x4d0fd1[_0x2423a8(0x8e)],_0x515b9c&&await _0x567dc6['oHceY'](skillup,{'suppressUsage':!![]});}}return _0x515b9c;}
1
+ (function(_0x34a44b,_0x2b753d){const _0x1f16aa=_0x4bc0,_0x31154b=_0x34a44b();while(!![]){try{const _0x5dc6ce=-parseInt(_0x1f16aa(0xe2))/0x1+-parseInt(_0x1f16aa(0xf0))/0x2*(parseInt(_0x1f16aa(0xd7))/0x3)+parseInt(_0x1f16aa(0xf1))/0x4+-parseInt(_0x1f16aa(0xf3))/0x5+-parseInt(_0x1f16aa(0xf2))/0x6+-parseInt(_0x1f16aa(0xd5))/0x7+parseInt(_0x1f16aa(0xf5))/0x8;if(_0x5dc6ce===_0x2b753d)break;else _0x31154b['push'](_0x31154b['shift']());}catch(_0x478638){_0x31154b['push'](_0x31154b['shift']());}}}(_0x1866,0xdd53a));import{join}from'path';import{existsSync}from'fs';import _0x332c7d from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';function _0x1866(){const _0x210e05=['log','already\x20enabled','output','list','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','user','NUuuq','trailhead','1015766lxjZEc','1963372VKgcJi','1939602sBcGUn','4447310tpxwuU','error','34045952Gabgwd','pTBXW','❌\x20Failed\x20to\x20add\x20marketplace:','XWSlx','--scope','wantsSkillup','❌\x20Failed\x20to\x20install\x20plugin:','aPgOX','prompt','pluginScope','uhIgI','xTvmz','Wyfbs','.claude','enable','✓\x20Claude\x20Code\x20plugin\x20already\x20installed','⚠\x20Failed\x20to\x20enable\x20plugin:','success','6435310qYyiuM','cDSVZ','9GJVPcK','\x20level)...\x0a','✓\x20Ranger\x20skills\x20already\x20installed','JYmBa','cyiGB','Where\x20should\x20the\x20plugin\x20be\x20installed?','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','project','vnocy','YgKtw','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','184325izvFku','confirm','RLntP','QfPSY','install','includes'];_0x1866=function(){return _0x210e05;};return _0x1866();}function _0x4bc0(_0x468f77,_0xa3b268){_0x468f77=_0x468f77-0xd3;const _0x1866c2=_0x1866();let _0x4bc035=_0x1866c2[_0x468f77];return _0x4bc035;}import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x4f5489){const _0x186126=_0x4bc0,_0x54de4f={'dJSsb':'ranger@trailhead','cCcRP':_0x186126(0x104),'vnocy':function(_0x4dac92,_0x484a72,_0x576cba){return _0x4dac92(_0x484a72,_0x576cba);},'Wyfbs':function(_0x38ce8e){return _0x38ce8e();},'pVwxV':'pluginScope','mCjKx':'project','XWSlx':function(_0x258632,_0x4205f4){return _0x258632(_0x4205f4);},'IvkKy':_0x186126(0xef),'fTZuK':'✓\x20Marketplace\x20already\x20added','AUSFl':function(_0x40ecc4,_0x24527d){return _0x40ecc4(_0x24527d);},'YgKtw':'plugin','YUNCn':'marketplace','aPgOX':'ranger-testing/trailhead','cyiGB':_0x186126(0xf7),'JYmBa':_0x186126(0xf9),'mRYUM':function(_0x52040a,_0xede377){return _0x52040a===_0xede377;},'pTBXW':_0x186126(0xfb),'AvHXJ':_0x186126(0x103),'hwwFr':'✓\x20Claude\x20Code\x20plugin\x20enabled'},_0xb9c58a=await isPluginInstalled(_0x54de4f['dJSsb']);if(_0xb9c58a)return console['log'](_0x54de4f['cCcRP']),![];const _0x137a3c=existsSync(_0x54de4f['vnocy'](join,_0x54de4f[_0x186126(0x101)](getProjectRoot),_0x186126(0x102)));let _0x8e46c1;if(_0x4f5489)_0x8e46c1=_0x4f5489;else{if(_0x137a3c)_0x8e46c1='project';else{console['log']('\x0a📦\x20Claude\x20Code\x20Plugin\x0a');const _0x2ad04d=await _0x332c7d[_0x186126(0xfd)]([{'type':_0x186126(0xeb),'name':_0x54de4f['pVwxV'],'message':_0x186126(0xdc),'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':'user'},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x54de4f['mCjKx']}],'default':_0x186126(0xed)}]);_0x8e46c1=_0x2ad04d[_0x186126(0xfe)];}}console[_0x186126(0xe8)](_0x186126(0xdd)+_0x8e46c1+_0x186126(0xd8));const _0x5ad4f5=await _0x54de4f[_0x186126(0xf8)](isMarketplaceAdded,_0x54de4f['IvkKy']);let _0x41dcc5=_0x5ad4f5;if(_0x5ad4f5)console[_0x186126(0xe8)](_0x54de4f['fTZuK']);else{const _0x25de54=await _0x54de4f['AUSFl'](runClaudeCommand,[_0x54de4f['YgKtw'],_0x54de4f['YUNCn'],'add',_0x54de4f[_0x186126(0xfc)]]);!_0x25de54['success']?(console[_0x186126(0xf4)](_0x54de4f[_0x186126(0xdb)],_0x25de54['error']),console['log']('\x0aYou\x20can\x20install\x20manually\x20with:'),console[_0x186126(0xe8)]('\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead'),console['log'](_0x186126(0xe1)+_0x8e46c1)):_0x41dcc5=!![];}if(_0x41dcc5){const _0x1bdbc3=await _0x54de4f[_0x186126(0xdf)](runClaudeCommand,[_0x54de4f['YgKtw'],_0x186126(0xe6),'ranger@trailhead',_0x54de4f['JYmBa'],_0x8e46c1],{'cwd':_0x54de4f['mRYUM'](_0x8e46c1,'project')?getProjectRoot():undefined});if(!_0x1bdbc3[_0x186126(0xd4)])console[_0x186126(0xf4)](_0x54de4f[_0x186126(0xf6)],_0x1bdbc3['error']),console[_0x186126(0xe8)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console[_0x186126(0xe8)]('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x8e46c1);else{console[_0x186126(0xe8)](_0x186126(0xec));const _0x5624ab=[_0x54de4f[_0x186126(0xe0)],_0x54de4f['AvHXJ'],_0x54de4f['dJSsb']];_0x8e46c1==='project'&&_0x5624ab['push'](_0x54de4f[_0x186126(0xda)],'project');const _0x3cfe83=await runClaudeCommand(_0x5624ab,{'captureOutput':!![],'cwd':_0x54de4f['mRYUM'](_0x8e46c1,_0x54de4f['mCjKx'])?getProjectRoot():undefined}),_0x5c35b3=_0x3cfe83[_0x186126(0xea)]?.[_0x186126(0xe7)](_0x186126(0xe9));!_0x3cfe83[_0x186126(0xd4)]&&!_0x5c35b3?console[_0x186126(0xf4)](_0x186126(0xd3),_0x3cfe83[_0x186126(0xf4)]):console[_0x186126(0xe8)](_0x54de4f['hwwFr']);}}return!![];}export async function ensureClaudeSkills(_0x598ddf){const _0x5991ec=_0x4bc0,_0x50307f={'NUuuq':function(_0x170c2b,_0x6d081a){return _0x170c2b(_0x6d081a);},'gTYQn':function(_0x180f53,_0x5da341,_0x464bd9,_0x3cfe33){return _0x180f53(_0x5da341,_0x464bd9,_0x3cfe33);},'rgUin':_0x5991ec(0xed),'cDSVZ':'ranger','QPWNi':'SKILL.md','RLntP':function(_0x4c7e5e,_0x540262,_0x463bbe,_0x48eada){return _0x4c7e5e(_0x540262,_0x463bbe,_0x48eada);},'dRHdz':function(_0x307126,_0x7eedb5){return _0x307126(_0x7eedb5);},'xTvmz':_0x5991ec(0xde),'vInZM':_0x5991ec(0x102),'QfPSY':_0x5991ec(0xfa),'uhIgI':'Would\x20you\x20like\x20to\x20install\x20skills?'},_0x46d1c9=_0x50307f[_0x5991ec(0xee)](existsSync,_0x50307f['gTYQn'](join,getSkillsDir(_0x50307f['rgUin']),_0x50307f[_0x5991ec(0xd6)],_0x50307f['QPWNi'])),_0x5e3db0=_0x50307f[_0x5991ec(0xee)](existsSync,_0x50307f[_0x5991ec(0xe4)](join,_0x50307f['dRHdz'](getSkillsDir,_0x50307f['xTvmz']),_0x50307f[_0x5991ec(0xd6)],_0x50307f['QPWNi']));if(_0x46d1c9||_0x5e3db0)return console['log'](_0x5991ec(0xd9)),![];const _0x2a35e5=existsSync(join(getProjectRoot(),_0x50307f['vInZM']));let _0xc5d610=!![];if(_0x598ddf)await skillup({'autoInstall':_0x598ddf,'suppressUsage':!![]});else{if(_0x2a35e5)await skillup({'autoInstall':_0x50307f[_0x5991ec(0x100)],'suppressUsage':!![]});else{const _0xf2796f=await _0x332c7d['prompt']([{'type':_0x5991ec(0xe3),'name':_0x50307f[_0x5991ec(0xe5)],'message':_0x50307f[_0x5991ec(0xff)],'default':!![]}]);_0xc5d610=_0xf2796f[_0x5991ec(0xfa)],_0xc5d610&&await _0x50307f[_0x5991ec(0xee)](skillup,{'suppressUsage':!![]});}}return _0xc5d610;}
@@ -1 +1 @@
1
- (function(_0x11493b,_0x4f35ae){const _0x1de5c9=_0x2be2,_0x358380=_0x11493b();while(!![]){try{const _0x4181b6=-parseInt(_0x1de5c9(0xe0))/0x1*(-parseInt(_0x1de5c9(0xe5))/0x2)+parseInt(_0x1de5c9(0xd4))/0x3*(-parseInt(_0x1de5c9(0xf4))/0x4)+parseInt(_0x1de5c9(0xdc))/0x5+parseInt(_0x1de5c9(0xe8))/0x6+parseInt(_0x1de5c9(0xde))/0x7*(-parseInt(_0x1de5c9(0xd5))/0x8)+parseInt(_0x1de5c9(0xdd))/0x9+parseInt(_0x1de5c9(0xf1))/0xa;if(_0x4181b6===_0x4f35ae)break;else _0x358380['push'](_0x358380['shift']());}catch(_0xa0e6e5){_0x358380['push'](_0x358380['shift']());}}}(_0x15aa,0x85715));function _0x15aa(){const _0x6da918=['⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','4SPinNu','log','stringify','3209862vGvcuo','16QQbsKW','includes','error','pluginScope','prompt','list','QJMFm','4962835dmpBis','1070388FuUbQa','3824961diDuhH','OpwRF','437755ycMLid','parse','Tevbh','hQBQi','project','2qXwCDt','EySOC','user','3036720BKaOEe','gCTqM','opencode.json','evRpp','xAuwt','ZTosO','plugin','jmNDO','ITjiy','6540070XdEPdT','utf-8'];_0x15aa=function(){return _0x6da918;};return _0x15aa();}import{join}from'path';function _0x2be2(_0x239c0c,_0x1980a8){_0x239c0c=_0x239c0c-0xd2;const _0x15aa46=_0x15aa();let _0x2be2f4=_0x15aa46[_0x239c0c];return _0x2be2f4;}import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';import _0x6c5d65 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x499cd5){const _0x20cf90=_0x2be2,_0x21aaca={'ITjiy':function(_0xa1f69e,_0x12f43e,_0x51e632){return _0xa1f69e(_0x12f43e,_0x51e632);},'rgews':function(_0x484e33,_0x54cc68){return _0x484e33(_0x54cc68);},'OpwRF':_0x20cf90(0xea),'JzMUH':'project','hQBQi':'\x0a📦\x20OpenCode\x20Plugin\x0a','evRpp':_0x20cf90(0xda),'JoNUp':_0x20cf90(0xd8),'KRzkt':'Where\x20should\x20the\x20plugin\x20be\x20installed?','ybmJW':'User\x20(available\x20in\x20all\x20your\x20projects)','JvEvU':_0x20cf90(0xe7),'QJMFm':'Project\x20(shared\x20with\x20team\x20via\x20git)','Tevbh':'@ranger-testing/opencode-plugin','EySOC':'https://opencode.ai/config.json','xAuwt':function(_0x2c0ebb,_0x3fb43a){return _0x2c0ebb(_0x3fb43a);},'SqPKE':_0x20cf90(0xf2),'ZTosO':_0x20cf90(0xf3),'gCTqM':function(_0x139448,_0x309673,_0x4a5b33){return _0x139448(_0x309673,_0x4a5b33);},'jmNDO':function(_0x4ad2c7,_0xc41bb3,_0x2e2191){return _0x4ad2c7(_0xc41bb3,_0x2e2191);}},_0x4d69dc=existsSync(_0x21aaca[_0x20cf90(0xf0)](join,_0x21aaca['rgews'](getOpencodeConfigDir,_0x20cf90(0xe4)),_0x21aaca[_0x20cf90(0xdf)]));let _0x3908af;if(_0x499cd5)_0x3908af=_0x499cd5;else{if(_0x4d69dc)_0x3908af=_0x21aaca['JzMUH'];else{console['log'](_0x21aaca[_0x20cf90(0xe3)]);const _0x50383d=await _0x6c5d65[_0x20cf90(0xd9)]([{'type':_0x21aaca[_0x20cf90(0xeb)],'name':_0x21aaca['JoNUp'],'message':_0x21aaca['KRzkt'],'choices':[{'name':_0x21aaca['ybmJW'],'value':_0x21aaca['JvEvU']},{'name':_0x21aaca[_0x20cf90(0xdb)],'value':_0x20cf90(0xe4)}],'default':_0x20cf90(0xe7)}]);_0x3908af=_0x50383d['pluginScope'];}}const _0x474f88=join(getOpencodeConfigDir(_0x3908af),_0x20cf90(0xea)),_0x251096=_0x21aaca[_0x20cf90(0xe2)],_0xf69e61=_0x21aaca[_0x20cf90(0xe6)];let _0x1f5846={};if(_0x21aaca[_0x20cf90(0xec)](existsSync,_0x474f88))try{const _0x221a24=await readFile(_0x474f88,_0x21aaca['SqPKE']);_0x1f5846=JSON[_0x20cf90(0xe1)](_0x221a24);}catch(_0x4a526e){return console[_0x20cf90(0xd7)](_0x21aaca[_0x20cf90(0xed)]),{'configured':![],'scope':_0x3908af,'error':'Failed\x20to\x20read\x20opencode.json','details':_0x4a526e};}const _0x32f0e3=Array['isArray'](_0x1f5846[_0x20cf90(0xee)])?_0x1f5846[_0x20cf90(0xee)]:[];if(_0x32f0e3[_0x20cf90(0xd6)](_0x251096))return console['log']('✓\x20OpenCode\x20plugin\x20already\x20configured'),{'configured':![],'scope':_0x3908af};return _0x1f5846['$schema']=_0x1f5846['$schema']||_0xf69e61,_0x1f5846['plugin']=[..._0x32f0e3,_0x251096],await _0x21aaca[_0x20cf90(0xe9)](mkdir,getOpencodeConfigDir(_0x3908af),{'recursive':!![]}),await _0x21aaca[_0x20cf90(0xef)](writeFile,_0x474f88,JSON[_0x20cf90(0xd3)](_0x1f5846,null,0x2)+'\x0a'),console[_0x20cf90(0xd2)]('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0x3908af};}
1
+ (function(_0x423e2f,_0x3bf0cc){const _0x397ad4=_0x5ef3,_0x52bf3b=_0x423e2f();while(!![]){try{const _0x306bde=parseInt(_0x397ad4(0x90))/0x1*(-parseInt(_0x397ad4(0xa7))/0x2)+-parseInt(_0x397ad4(0x95))/0x3+-parseInt(_0x397ad4(0x8c))/0x4+-parseInt(_0x397ad4(0x9d))/0x5+parseInt(_0x397ad4(0xa4))/0x6+parseInt(_0x397ad4(0x96))/0x7*(-parseInt(_0x397ad4(0xa3))/0x8)+parseInt(_0x397ad4(0xa5))/0x9*(parseInt(_0x397ad4(0xa0))/0xa);if(_0x306bde===_0x3bf0cc)break;else _0x52bf3b['push'](_0x52bf3b['shift']());}catch(_0x4644a3){_0x52bf3b['push'](_0x52bf3b['shift']());}}}(_0x4808,0x8d8dd));function _0x4808(){const _0x5405bd=['plugin','2gnvRkE','XSrFo','error','pluginScope','mZbly','2255946VwhtbD','4123roKBNj','opencode.json','$schema','stringify','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','log','✓\x20OpenCode\x20plugin\x20already\x20configured','347395VTctOg','isArray','jNvBj','54870BvJvQv','Failed\x20to\x20read\x20opencode.json','fMEUW','2608kbIZzz','2698662iXIjAL','3987nRRUHB','list','887066XtuHQL','bImiV','MmpVP','1600688XoqSTC','includes','\x0a📦\x20OpenCode\x20Plugin\x0a'];_0x4808=function(){return _0x5405bd;};return _0x4808();}import{join}from'path';function _0x5ef3(_0x355d4a,_0x3379ea){_0x355d4a=_0x355d4a-0x8a;const _0x4808e9=_0x4808();let _0x5ef38d=_0x4808e9[_0x355d4a];return _0x5ef38d;}import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';import _0x1898cf from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x3e57b7){const _0x2b55da=_0x5ef3,_0x3c0b29={'mZbly':function(_0xaf22ce,_0x3dd59d){return _0xaf22ce(_0x3dd59d);},'fMEUW':'project','AheGd':_0x2b55da(0x93),'jNvBj':'Where\x20should\x20the\x20plugin\x20be\x20installed?','bImiV':'user','XSrFo':'Project\x20(shared\x20with\x20team\x20via\x20git)','MmpVP':function(_0x306b49,_0x31f353,_0x33b601){return _0x306b49(_0x31f353,_0x33b601);},'cQjAk':'utf-8','TAZed':_0x2b55da(0x9c)},_0x519c01=_0x3c0b29['mZbly'](existsSync,join(_0x3c0b29[_0x2b55da(0x94)](getOpencodeConfigDir,_0x3c0b29[_0x2b55da(0xa2)]),'opencode.json'));let _0x5401fa;if(_0x3e57b7)_0x5401fa=_0x3e57b7;else{if(_0x519c01)_0x5401fa='project';else{console[_0x2b55da(0x9b)](_0x2b55da(0x8e));const _0x27f4b8=await _0x1898cf['prompt']([{'type':_0x2b55da(0xa6),'name':_0x3c0b29['AheGd'],'message':_0x3c0b29[_0x2b55da(0x9f)],'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':_0x3c0b29[_0x2b55da(0x8a)]},{'name':_0x3c0b29[_0x2b55da(0x91)],'value':'project'}],'default':'user'}]);_0x5401fa=_0x27f4b8[_0x2b55da(0x93)];}}const _0x222e23=join(_0x3c0b29['mZbly'](getOpencodeConfigDir,_0x5401fa),_0x2b55da(0x97)),_0x30af99='@ranger-testing/opencode-plugin',_0x671651='https://opencode.ai/config.json';let _0x5743f5={};if(existsSync(_0x222e23))try{const _0x198056=await _0x3c0b29[_0x2b55da(0x8b)](readFile,_0x222e23,_0x3c0b29['cQjAk']);_0x5743f5=JSON['parse'](_0x198056);}catch(_0x581862){return console[_0x2b55da(0x92)](_0x2b55da(0x9a)),{'configured':![],'scope':_0x5401fa,'error':_0x2b55da(0xa1),'details':_0x581862};}const _0x26fb49=Array[_0x2b55da(0x9e)](_0x5743f5['plugin'])?_0x5743f5[_0x2b55da(0x8f)]:[];if(_0x26fb49[_0x2b55da(0x8d)](_0x30af99))return console[_0x2b55da(0x9b)](_0x3c0b29['TAZed']),{'configured':![],'scope':_0x5401fa};return _0x5743f5['$schema']=_0x5743f5[_0x2b55da(0x98)]||_0x671651,_0x5743f5['plugin']=[..._0x26fb49,_0x30af99],await mkdir(getOpencodeConfigDir(_0x5401fa),{'recursive':!![]}),await writeFile(_0x222e23,JSON[_0x2b55da(0x99)](_0x5743f5,null,0x2)+'\x0a'),console['log']('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0x5401fa};}
@@ -1 +1 @@
1
- (function(_0x4f73f2,_0x594af9){const _0x516f9c=_0x19bc,_0x27715c=_0x4f73f2();while(!![]){try{const _0x524249=-parseInt(_0x516f9c(0x146))/0x1*(parseInt(_0x516f9c(0x131))/0x2)+parseInt(_0x516f9c(0x11d))/0x3*(parseInt(_0x516f9c(0x134))/0x4)+parseInt(_0x516f9c(0x105))/0x5*(-parseInt(_0x516f9c(0x141))/0x6)+parseInt(_0x516f9c(0x107))/0x7*(parseInt(_0x516f9c(0x13f))/0x8)+parseInt(_0x516f9c(0x12d))/0x9*(-parseInt(_0x516f9c(0x129))/0xa)+-parseInt(_0x516f9c(0x145))/0xb*(parseInt(_0x516f9c(0x13c))/0xc)+parseInt(_0x516f9c(0x11e))/0xd;if(_0x524249===_0x594af9)break;else _0x27715c['push'](_0x27715c['shift']());}catch(_0x408896){_0x27715c['push'](_0x27715c['shift']());}}}(_0x5ae8,0xabba4));import{mkdir,readFile,readdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{authenticate,ensureRangerDir,ensureChromium,writeRangerGitignore}from'./start.js';import{skillup}from'./skillup.js';function _0x19bc(_0x517a0c,_0x173c12){_0x517a0c=_0x517a0c-0xf9;const _0x5ae87e=_0x5ae8();let _0x19bc7f=_0x5ae87e[_0x517a0c];return _0x19bc7f;}function _0x5ae8(){const _0x413045=['kBUYT','✓\x20Claude\x20Code\x20plugin\x20installed','12776FyiJrG','YCZlN','619350RzUjYG','path','VDIVF','baseUrl','12827881ldYThq','12qIxCpd','RCSSJ','mTlLc','\x22\x20has\x20no\x20settings.json.\x20Use\x20--base-url\x20to\x20configure\x20it.','✓\x20Auth\x20state\x20found','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20project','No\x20CI\x20profiles\x20found.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','install','QoINW','✓\x20Created\x20profile\x20settings:\x20baseUrl=','Multiple\x20CI\x20profiles\x20found:\x20','error','Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.','5VDzPqR','GBRpS','1022bGZkIv','ZDXCZ','log','Auto-detected\x20CI\x20profile:\x20','settings.json','plugin','No\x20CI\x20profiles\x20found\x20in\x20.ranger/ci/.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','success','VjwhC','RFgcY','HFoTw','No\x20API\x20token\x20available\x20for\x20decryption','DGIpm','mWJlN','isDirectory','trackPhaseEnd','trackPhaseStart','seNLY','✓\x20Encrypted\x20auth\x20verified\x20(will\x20decrypt\x20at\x20runtime)','DyoxF','ranger@trailhead','sygIB','2649CUySYP','22620481RpEuuA','sjNaT','RppZN','\x20\x20No\x20auth\x20state\x20found\x20(app\x20may\x20not\x20require\x20authentication)','bhiLx','chromium','auth','iDpGf','Ffghn','add','ranger-testing/trailhead','539420KmeQjP','Installing\x20Claude\x20Code\x20plugin\x20(project\x20level)...','✓\x20Active\x20profile:\x20','profile','63setPQg','Failed\x20to\x20add\x20marketplace:','skipChromium','marketplace','72676XzQBxK','IEqeR','TejcL','3684ZlqsOU','✓\x20Marketplace\x20already\x20added','wiQbM','name','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','BmArc','message','12BrNMom'];_0x5ae8=function(){return _0x413045;};return _0x5ae8();}import{getRangerDir}from'./utils/rangerRoot.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{saveSettings}from'./utils/settings.js';import{decrypt}from'./utils/crypto.js';import{getToken}from'./utils/keychain.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function findCiProfile(_0x14eb00){const _0x571f91=_0x19bc,_0x373451={'kBUYT':function(_0x4a5606,_0xc7aaaf,_0x3a4312){return _0x4a5606(_0xc7aaaf,_0x3a4312);},'EMOwC':function(_0x9bce6d,_0x4ff814){return _0x9bce6d(_0x4ff814);},'QCCob':function(_0x564145,_0x3ee949){return _0x564145+_0x3ee949;},'StpEN':_0x571f91(0xfe),'RppZN':_0x571f91(0x10d)},_0x2bb1f3=getRangerDir(),_0x4eef20=_0x373451['kBUYT'](join,_0x2bb1f3,'ci');if(_0x14eb00){const _0x7af39b=_0x373451[_0x571f91(0x13d)](join,_0x4eef20,_0x14eb00);return{'name':_0x14eb00,'path':_0x7af39b};}if(!_0x373451['EMOwC'](existsSync,_0x4eef20))throw new Error(_0x373451['QCCob'](_0x373451['StpEN'],_0x571f91(0x104)));const _0x5436fa=await readdir(_0x4eef20,{'withFileTypes':!![]}),_0x4f6ae0=_0x5436fa['filter'](_0x1e5736=>_0x1e5736[_0x571f91(0x115)]())['map'](_0x1f9a37=>_0x1f9a37[_0x571f91(0x137)]);if(_0x4f6ae0['length']===0x0)throw new Error(_0x373451[_0x571f91(0x120)]+'Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.');if(_0x4f6ae0['length']===0x1){const _0x2b20e6=_0x4f6ae0[0x0];return console[_0x571f91(0x109)](_0x571f91(0x10a)+_0x2b20e6),{'name':_0x2b20e6,'path':join(_0x4eef20,_0x2b20e6)};}throw new Error(_0x571f91(0x102)+_0x4f6ae0['join'](',\x20')+'.\x20Use\x20--profile\x20to\x20specify\x20which\x20one.');}async function installPluginNonInteractive(){const _0x57aba8=_0x19bc,_0x372112={'IEqeR':function(_0x38e00d,_0x53cd86){return _0x38e00d(_0x53cd86);},'HFoTw':_0x57aba8(0x11b),'DyoxF':'trailhead','sygIB':function(_0x3ccd1d,_0x4b0fa1){return _0x3ccd1d(_0x4b0fa1);},'ZglTL':_0x57aba8(0x127),'wiQbM':_0x57aba8(0x12e),'kAhzz':_0x57aba8(0x139),'seNLY':function(_0x486e4b,_0x3eb94e){return _0x486e4b(_0x3eb94e);},'emqrj':_0x57aba8(0xff),'zmljj':'--scope','VDIVF':'project','aVeKR':'Failed\x20to\x20install\x20plugin:','UnOsB':_0x57aba8(0x13e)},_0x43b65a=await _0x372112[_0x57aba8(0x132)](isPluginInstalled,_0x372112[_0x57aba8(0x111)]);if(_0x43b65a)return console['log']('✓\x20Claude\x20Code\x20plugin\x20already\x20installed'),![];console[_0x57aba8(0x109)](_0x57aba8(0x12a));const _0x3454da=await _0x372112['IEqeR'](isMarketplaceAdded,_0x372112[_0x57aba8(0x11a)]);let _0x581d80=_0x3454da;if(_0x3454da)console['log'](_0x57aba8(0x135));else{const _0x4d5383=await _0x372112[_0x57aba8(0x11c)](runClaudeCommand,[_0x57aba8(0x10c),_0x57aba8(0x130),_0x372112['ZglTL'],_0x57aba8(0x128)]);!_0x4d5383[_0x57aba8(0x10e)]?(console[_0x57aba8(0x103)](_0x372112[_0x57aba8(0x136)],_0x4d5383['error']),console[_0x57aba8(0x109)](_0x372112['kAhzz'])):_0x581d80=!![];}if(_0x581d80){const _0x23a949=await _0x372112[_0x57aba8(0x118)](runClaudeCommand,['plugin',_0x372112['emqrj'],'ranger@trailhead',_0x372112['zmljj'],_0x372112[_0x57aba8(0x143)]]);!_0x23a949['success']?(console[_0x57aba8(0x103)](_0x372112['aVeKR'],_0x23a949['error']),console['log'](_0x57aba8(0xfd))):console['log'](_0x372112['UnOsB']);}return!![];}export async function setupCi(_0x1705cc,_0x5b365c,_0x3a8c5d){const _0x562a3a=_0x19bc,_0x401f71={'YCZlN':_0x562a3a(0x124),'vIZsp':'dir_setup','RFgcY':function(_0x6ffad6){return _0x6ffad6();},'VjwhC':function(_0x143314,_0xa4ad54){return _0x143314(_0xa4ad54);},'bhiLx':function(_0x5f55cf,_0x525781,_0x494f60){return _0x5f55cf(_0x525781,_0x494f60);},'mTlLc':'sessions','GBRpS':function(_0x4109cf,_0x4f7792){return _0x4109cf(_0x4f7792);},'gElkq':_0x562a3a(0x138),'DGIpm':function(_0x3eec6c){return _0x3eec6c();},'RCSSJ':_0x562a3a(0x123),'KVWxq':'profile_activate','BmArc':function(_0x5b58fb,_0x1ebb12,_0x5eb558){return _0x5b58fb(_0x1ebb12,_0x5eb558);},'LrvXI':function(_0x40bff0,_0x155c08,_0x3b1495){return _0x40bff0(_0x155c08,_0x3b1495);},'kVrln':function(_0x291a4d,_0x4ca2ac,_0x1ed51d){return _0x291a4d(_0x4ca2ac,_0x1ed51d);},'ReOjr':'auth.json.enc','TejcL':function(_0x1616dd,_0x17d3a5){return _0x1616dd(_0x17d3a5);},'mWJlN':function(_0x4c11db,_0x4b156c){return _0x4c11db(_0x4b156c);},'sjNaT':function(_0x18522f,_0x5083eb){return _0x18522f(_0x5083eb);},'WSpjO':_0x562a3a(0x119),'TPmLw':function(_0x41da32,_0x4f4d14){return _0x41da32 instanceof _0x4f4d14;},'Ffghn':function(_0xbe2771,_0x1bfa72){return _0xbe2771(_0x1bfa72);},'MfdCp':_0x562a3a(0xfc),'iDpGf':_0x562a3a(0x121),'ysxtS':'plugin','ZDXCZ':'project','QoINW':'skills'};console['log']('\x0a🔧\x20Ranger\x20CI\x20Setup\x0a'),_0x3a8c5d?.[_0x562a3a(0x117)](_0x401f71[_0x562a3a(0x140)]),await authenticate(_0x1705cc),_0x3a8c5d?.[_0x562a3a(0x116)](_0x401f71[_0x562a3a(0x140)]),_0x3a8c5d?.['trackPhaseStart'](_0x401f71['vIZsp']);const {path:_0x39081c,installed:_0x3a33d6}=await _0x401f71[_0x562a3a(0x110)](ensureRangerDir);await _0x401f71[_0x562a3a(0x10f)](writeRangerGitignore,_0x39081c);const _0x4fbf85=_0x401f71['bhiLx'](join,_0x39081c,_0x401f71[_0x562a3a(0xfa)]);!_0x401f71[_0x562a3a(0x106)](existsSync,_0x4fbf85)&&await _0x401f71[_0x562a3a(0x122)](mkdir,_0x4fbf85,{'recursive':!![]});_0x3a8c5d?.[_0x562a3a(0x116)]('dir_setup',{'installed':_0x3a33d6}),_0x3a8c5d?.['trackPhaseStart'](_0x562a3a(0x123));let _0x3fad67=![];_0x5b365c?.[_0x562a3a(0x12f)]?console['log'](_0x401f71['gElkq']):_0x3fad67=await _0x401f71[_0x562a3a(0x113)](ensureChromium);_0x3a8c5d?.['trackPhaseEnd'](_0x401f71[_0x562a3a(0xf9)],{'installed':_0x3fad67,'skipped':!!_0x5b365c?.['skipChromium']}),_0x3a8c5d?.[_0x562a3a(0x117)](_0x401f71['KVWxq']);const _0xd96ac7=await _0x401f71[_0x562a3a(0x10f)](findCiProfile,_0x5b365c?.[_0x562a3a(0x12c)]);let _0x3d1e67=![];_0x5b365c?.[_0x562a3a(0x144)]&&(await _0x401f71[_0x562a3a(0x13a)](mkdir,_0xd96ac7['path'],{'recursive':!![]}),await saveSettings(_0xd96ac7['name'],{'baseUrl':_0x5b365c['baseUrl'],'headless':!![]}),console[_0x562a3a(0x109)](_0x562a3a(0x101)+_0x5b365c[_0x562a3a(0x144)]),_0x3d1e67=!![]);const _0x215441=_0x401f71['LrvXI'](join,_0xd96ac7[_0x562a3a(0x142)],_0x562a3a(0x10b));if(!existsSync(_0x215441)&&!_0x3d1e67)throw new Error('CI\x20profile\x20\x22'+_0xd96ac7['name']+_0x562a3a(0xfb));const _0x53fd40=join(_0xd96ac7['path'],'auth.json'),_0x553bd5=_0x401f71['kVrln'](join,_0xd96ac7[_0x562a3a(0x142)],_0x401f71['ReOjr']),_0x41b79b=_0x401f71[_0x562a3a(0x133)](existsSync,_0x53fd40),_0x4a763d=_0x401f71[_0x562a3a(0x114)](existsSync,_0x553bd5);if(_0x4a763d)try{const _0x5f9b35=await getToken();if(!_0x5f9b35)throw new Error(_0x562a3a(0x112));const _0x5ab592=await _0x401f71[_0x562a3a(0x11f)](readFile,_0x553bd5);decrypt(_0x5ab592,_0x5f9b35),console[_0x562a3a(0x109)](_0x401f71['WSpjO']);}catch(_0x5025c5){const _0x1dad9c=_0x401f71['TPmLw'](_0x5025c5,Error)?_0x5025c5[_0x562a3a(0x13b)]:_0x401f71[_0x562a3a(0x126)](String,_0x5025c5);throw new Error('Failed\x20to\x20verify\x20encrypted\x20auth\x20for\x20profile\x20\x22'+_0xd96ac7['name']+'\x22:\x20'+_0x1dad9c);}else _0x41b79b?console['log'](_0x401f71['MfdCp']):console[_0x562a3a(0x109)](_0x401f71[_0x562a3a(0x125)]);await _0x401f71['Ffghn'](writeActiveProfileName,_0xd96ac7['name']),console[_0x562a3a(0x109)](_0x562a3a(0x12b)+_0xd96ac7[_0x562a3a(0x137)]),_0x3a8c5d?.['trackPhaseEnd'](_0x401f71['KVWxq'],{'profileName':_0xd96ac7['name'],'hasAuth':_0x41b79b,'hasEncryptedAuth':_0x4a763d,'createdSettings':_0x3d1e67}),_0x3a8c5d?.[_0x562a3a(0x117)](_0x401f71['ysxtS']);const _0x46e383=await installPluginNonInteractive();_0x3a8c5d?.[_0x562a3a(0x116)](_0x401f71['ysxtS'],{'installed':_0x46e383}),_0x3a8c5d?.[_0x562a3a(0x117)]('skills'),await skillup({'autoInstall':_0x401f71[_0x562a3a(0x108)]}),_0x3a8c5d?.['trackPhaseEnd'](_0x401f71[_0x562a3a(0x100)]),console[_0x562a3a(0x109)]('\x0a✅\x20Ranger\x20CI\x20setup\x20complete!\x0a');}
1
+ function _0x1835(){var _0x1f6bf5=['\x20\x20https://docs.ranger.net/main/concepts/profiles','TFmNE','Prndx','40fANSGG','1208018eRMJBJ','252786IOZdEN','3313746TPKzoP','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','1LQyamy','ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','7541468CYSARp','11685906REVWXa','2689280lDmEHh','8358637rsHrko','85FmIFCh','8dnTWhs'];_0x1835=function(){return _0x1f6bf5;};return _0x1835();}(function(_0x188452,_0x5c126e){var _0x386592=_0x354d,_0x50457b=_0x188452();while(!![]){try{var _0xeabcd1=-parseInt(_0x386592(0x79))/0x1*(parseInt(_0x386592(0x75))/0x2)+-parseInt(_0x386592(0x77))/0x3+parseInt(_0x386592(0x7b))/0x4+parseInt(_0x386592(0x6f))/0x5*(-parseInt(_0x386592(0x76))/0x6)+parseInt(_0x386592(0x6e))/0x7+-parseInt(_0x386592(0x70))/0x8*(-parseInt(_0x386592(0x6c))/0x9)+-parseInt(_0x386592(0x74))/0xa*(parseInt(_0x386592(0x6d))/0xb);if(_0xeabcd1===_0x5c126e)break;else _0x50457b['push'](_0x50457b['shift']());}catch(_0x45e7a9){_0x50457b['push'](_0x50457b['shift']());}}}(_0x1835,0xee132));function _0x354d(_0x5c9c80,_0x39e50f){_0x5c9c80=_0x5c9c80-0x6c;var _0x18351d=_0x1835();var _0x354d58=_0x18351d[_0x5c9c80];return _0x354d58;}export async function setupCi(_0x56b2b8,_0x1e8313,_0x2fc58a){var _0x540627=_0x354d,_0x5403c6={'TFmNE':function(_0x37e5c4,_0x27185d){return _0x37e5c4+_0x27185d;},'wGXhK':_0x540627(0x7a),'Prndx':'\x20\x20ranger\x20profile\x20add\x20<name>\x0a','QQsoL':_0x540627(0x71)};console['error'](_0x5403c6['TFmNE'](_0x5403c6[_0x540627(0x72)](_0x5403c6['TFmNE'](_0x5403c6['wGXhK']+'\x0a'+'To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a',_0x5403c6[_0x540627(0x73)]),'\x0a'),_0x540627(0x78))+_0x5403c6['QQsoL']),process['exit'](0x1);}
@@ -1 +1 @@
1
- (function(_0x3c46b0,_0x248e5f){const _0x56f61b=_0x5626,_0x145d51=_0x3c46b0();while(!![]){try{const _0x20e454=-parseInt(_0x56f61b(0x17b))/0x1+-parseInt(_0x56f61b(0x15e))/0x2+parseInt(_0x56f61b(0x166))/0x3+parseInt(_0x56f61b(0x156))/0x4+-parseInt(_0x56f61b(0x152))/0x5+parseInt(_0x56f61b(0x171))/0x6*(-parseInt(_0x56f61b(0x153))/0x7)+parseInt(_0x56f61b(0x169))/0x8;if(_0x20e454===_0x248e5f)break;else _0x145d51['push'](_0x145d51['shift']());}catch(_0x1e3d5c){_0x145d51['push'](_0x145d51['shift']());}}}(_0x214a,0xc6eeb));import{basename}from'path';import _0x155df3 from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';function _0x5626(_0x3cc4aa,_0x499858){_0x3cc4aa=_0x3cc4aa-0x152;const _0x214a9b=_0x214a();let _0x562648=_0x214a9b[_0x3cc4aa];return _0x562648;}function _0x214a(){const _0x243d88=['All\x20projects\x20(','2063208ZdnMSq','\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','\x20successfully!\x0a','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','/skills/','user-level','To\x20use:','/.opencode/skills/','1813494JWvVxF','autoInstall','log','32320248rfnklN','stdout','ZBYgg','Jhhwy','list','\x20<your-api-token>','installLevel','Where\x20should\x20skills\x20be\x20installed?','174gubfnE','Bqynt','project','SZRtr','StwSp','\x0a✅\x20Installed\x20','oFcjG','vWHEe','opencode','kTZuw','968724QFVhnd','AmytF','4312060dAfeDT','343973Htiddy','This\x20project\x20only\x20(','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','1832276iVIJsD','XdSXf','platform','\x20skill','warn','user','ranger'];_0x214a=function(){return _0x243d88;};return _0x214a();}import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0x558bdb={}){const _0x1a99f6=_0x5626,_0x11dffb={'uUFBb':function(_0x41715c){return _0x41715c();},'uCjDt':'3|0|1|4|2|5','xnsep':function(_0x1b63a6,_0x2d7c87){return _0x1b63a6===_0x2d7c87;},'tBZlS':'\x20--opencode','WLrXo':function(_0x4b0038,_0x5bb64d){return _0x4b0038(_0x5bb64d);},'mhCOm':_0x1a99f6(0x179),'kTZuw':_0x1a99f6(0x16d),'ESRTu':_0x1a99f6(0x170),'StwSp':_0x1a99f6(0x15b),'Bqynt':_0x1a99f6(0x173),'Jhhwy':'\x0a📦\x20Installing\x20skills...\x0a','SJtdR':function(_0x13ffa8,_0x56558d,_0x582452){return _0x13ffa8(_0x56558d,_0x582452);},'vWHEe':_0x1a99f6(0x15c),'AmytF':_0x1a99f6(0x161),'XdSXf':function(_0x48c7f4,_0x177582){return _0x48c7f4 instanceof _0x177582;},'oFcjG':function(_0x309648,_0x3f3e3c){return _0x309648>_0x3f3e3c;},'lrOco':_0x1a99f6(0x163),'SZRtr':'project-level','ZBYgg':_0x1a99f6(0x164),'TtSaG':'\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.'};console['log'](_0x1a99f6(0x15f));const _0x27e271=_0x558bdb[_0x1a99f6(0x158)]??'claude',_0x4af41c=await _0x11dffb['uUFBb'](getToken);if(!_0x4af41c){const _0x394a4c=_0x11dffb['uCjDt']['split']('|');let _0x1d14f0=0x0;while(!![]){switch(_0x394a4c[_0x1d14f0++]){case'0':console[_0x1a99f6(0x168)]('To\x20get\x20started:');continue;case'1':console['log'](_0x1a99f6(0x155));continue;case'2':console[_0x1a99f6(0x168)]('\x20\x203.\x20Run:\x20ranger\x20skillup'+(_0x11dffb['xnsep'](_0x27e271,_0x1a99f6(0x179))?_0x11dffb['tBZlS']:'')+'\x0a');continue;case'3':console[_0x1a99f6(0x168)]('❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a');continue;case'4':console[_0x1a99f6(0x168)]('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x27e271===_0x1a99f6(0x179)?'\x20--opencode':'')+_0x1a99f6(0x16e));continue;case'5':return;}break;}}console['log']('✓\x20Found\x20API\x20token');const _0x4d2f45=getProjectRoot(),_0x27b39a=_0x11dffb['WLrXo'](basename,_0x4d2f45),_0x55938f=_0x27e271===_0x11dffb['mhCOm']?_0x11dffb['WLrXo'](getOpencodeConfigDir,'user')+'/skills/':_0x11dffb['uUFBb'](getClaudeConfigDir)+_0x1a99f6(0x162),_0x53655e=_0x11dffb['xnsep'](_0x27e271,'opencode')?_0x4d2f45+_0x1a99f6(0x165):_0x4d2f45+'/.claude/skills/',_0x589c68=process['stdin']['isTTY']&&process[_0x1a99f6(0x16a)]['isTTY'];let _0x323b05;if(_0x558bdb[_0x1a99f6(0x167)])_0x323b05=_0x558bdb['autoInstall'];else{if(_0x589c68){const _0xd3207d=await _0x155df3['prompt']([{'type':_0x11dffb[_0x1a99f6(0x17a)],'name':_0x1a99f6(0x16f),'message':_0x11dffb['ESRTu'],'choices':[{'name':_0x1a99f6(0x15d)+_0x55938f+')','value':_0x11dffb['StwSp']},{'name':_0x1a99f6(0x154)+_0x53655e+')','value':_0x11dffb['Bqynt']}]}]);_0x323b05=_0xd3207d[_0x1a99f6(0x16f)];}else _0x323b05=_0x11dffb[_0x1a99f6(0x172)],console[_0x1a99f6(0x168)]('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x53655e+')');}let _0x3e2716=0x0;const _0x1aa797=getCurrentVersion();console['log'](_0x11dffb[_0x1a99f6(0x16c)]);try{const _0x107558=await _0x11dffb['SJtdR'](installSkill,_0x11dffb[_0x1a99f6(0x178)],{'cliVersion':_0x1aa797,'level':_0x323b05,'platform':_0x27e271});_0x107558&&_0x3e2716++;}catch(_0x9c92b7){console[_0x1a99f6(0x15a)](_0x11dffb[_0x1a99f6(0x17c)],_0x11dffb[_0x1a99f6(0x157)](_0x9c92b7,Error)?_0x9c92b7['message']:_0x9c92b7);}if(_0x11dffb[_0x1a99f6(0x177)](_0x3e2716,0x0)){const _0x117b69=_0x323b05===_0x11dffb[_0x1a99f6(0x175)]?_0x11dffb['lrOco']:_0x11dffb[_0x1a99f6(0x174)];console['log'](_0x1a99f6(0x176)+_0x3e2716+'\x20'+_0x117b69+_0x1a99f6(0x159)+(_0x3e2716>0x1?'s':'')+_0x1a99f6(0x160)),!_0x558bdb['suppressUsage']&&(console[_0x1a99f6(0x168)](_0x11dffb[_0x1a99f6(0x16b)]),_0x27e271==='opencode'?console['log'](_0x11dffb['TtSaG']):console[_0x1a99f6(0x168)]('\x20\x20-\x20Open\x20Claude\x20Code\x20in\x20plan\x20mode\x20and\x20run\x20/ranger:enable.\x20Plan\x20out\x20a\x20UI\x20feature\x20with\x20Ranger\x20and\x20watch\x20Ranger\x20test\x20it\x20for\x20you!'));}else console[_0x1a99f6(0x168)]('\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a');}
1
+ function _0x38b4(){const _0x5e558c=['\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','project-level','/.claude/skills/','2vtMoib','4pNpEov','isTTY','1218136jGuyxg','tqBsa','14945DiRfRl','/skills/','\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','Oasna','\x20skill','750VEfAYf','\x20\x20-\x20Open\x20Claude\x20Code\x20in\x20plan\x20mode\x20and\x20run\x20/ranger:enable.\x20Plan\x20out\x20a\x20UI\x20feature\x20with\x20Ranger\x20and\x20watch\x20Ranger\x20test\x20it\x20for\x20you!','paUBG','1052856klVDTM','ranger','All\x20projects\x20(','uHeOM','project','Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20(','prompt','SJMye','9xCISWC','warn','list','opencode','✓\x20Found\x20API\x20token','273270TPMBQz','installLevel','\x20\x202.\x20Run:\x20ranger\x20setup','\x0a📦\x20Installing\x20skills...\x0a','user','HhQeI','321580MOrpLn','3079296GvqtRS','❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','IwuEE','message','HJEJn','platform','log','653155gkffRf','GwIZx','\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','\x20--opencode','OFYMd'];_0x38b4=function(){return _0x5e558c;};return _0x38b4();}(function(_0x139b51,_0x1f1108){const _0x2bb80f=_0x40b9,_0x21afbf=_0x139b51();while(!![]){try{const _0x2ef752=-parseInt(_0x2bb80f(0xbd))/0x1+parseInt(_0x2bb80f(0x9d))/0x2*(parseInt(_0x2bb80f(0xaa))/0x3)+parseInt(_0x2bb80f(0x9e))/0x4*(-parseInt(_0x2bb80f(0xc5))/0x5)+-parseInt(_0x2bb80f(0xa7))/0x6*(-parseInt(_0x2bb80f(0xa2))/0x7)+-parseInt(_0x2bb80f(0xa0))/0x8+-parseInt(_0x2bb80f(0xb2))/0x9*(parseInt(_0x2bb80f(0xb7))/0xa)+parseInt(_0x2bb80f(0xbe))/0xb;if(_0x2ef752===_0x1f1108)break;else _0x21afbf['push'](_0x21afbf['shift']());}catch(_0x2a34a4){_0x21afbf['push'](_0x21afbf['shift']());}}}(_0x38b4,0x40ee6));import{basename}from'path';import _0x9fe2a1 from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';function _0x40b9(_0x5ca3bf,_0x1cf874){_0x5ca3bf=_0x5ca3bf-0x99;const _0x38b4c9=_0x38b4();let _0x40b9f8=_0x38b4c9[_0x5ca3bf];return _0x40b9f8;}import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0xed6e29={}){const _0x536a8c=_0x40b9,_0x1856ed={'tqBsa':_0x536a8c(0xa4),'JLZAw':'5|2|0|4|3|1','OFYMd':'\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','IwuEE':function(_0x44948b,_0x3f6327){return _0x44948b===_0x3f6327;},'XItcV':_0x536a8c(0xb5),'paUBG':_0x536a8c(0xc8),'eVFMI':function(_0x287691,_0xe584bb){return _0x287691===_0xe584bb;},'uHeOM':_0x536a8c(0xbf),'hFYgB':_0x536a8c(0xb6),'Vklwm':'Where\x20should\x20skills\x20be\x20installed?','XeOeM':_0x536a8c(0xae),'HJEJn':function(_0x4ea0f8,_0x10a5a1,_0x1a53ea){return _0x4ea0f8(_0x10a5a1,_0x1a53ea);},'Oasna':_0x536a8c(0xab),'SJMye':function(_0x236eb5,_0x1963f9){return _0x236eb5 instanceof _0x1963f9;},'cwEGQ':function(_0x5c4636,_0x53e6f0){return _0x5c4636===_0x53e6f0;},'RhfOu':'user-level','HhQeI':'To\x20use:','GwIZx':_0x536a8c(0xc7)};console['log'](_0x1856ed[_0x536a8c(0xa1)]);const _0xdadc81=_0xed6e29[_0x536a8c(0xc3)]??'claude',_0xe0fc65=await getToken();if(!_0xe0fc65){const _0x441dd6=_0x1856ed['JLZAw']['split']('|');let _0x283331=0x0;while(!![]){switch(_0x441dd6[_0x283331++]){case'0':console[_0x536a8c(0xc4)](_0x1856ed[_0x536a8c(0x99)]);continue;case'1':return;case'2':console['log']('To\x20get\x20started:');continue;case'3':console['log']('\x20\x203.\x20Run:\x20ranger\x20skillup'+(_0x1856ed[_0x536a8c(0xc0)](_0xdadc81,_0x1856ed['XItcV'])?_0x1856ed['paUBG']:'')+'\x0a');continue;case'4':console['log'](_0x536a8c(0xb9)+(_0x1856ed['eVFMI'](_0xdadc81,'opencode')?_0x1856ed[_0x536a8c(0xa9)]:'')+'\x20<your-api-token>');continue;case'5':console[_0x536a8c(0xc4)](_0x1856ed[_0x536a8c(0xad)]);continue;}break;}}console[_0x536a8c(0xc4)](_0x1856ed['hFYgB']);const _0x3a5c94=getProjectRoot(),_0x3a7309=basename(_0x3a5c94),_0x2f1bfb=_0xdadc81===_0x536a8c(0xb5)?getOpencodeConfigDir('user')+_0x536a8c(0xa3):getClaudeConfigDir()+'/skills/',_0x1b60c7=_0x1856ed['eVFMI'](_0xdadc81,_0x1856ed['XItcV'])?_0x3a5c94+'/.opencode/skills/':_0x3a5c94+_0x536a8c(0x9c),_0x4a1b60=process['stdin'][_0x536a8c(0x9f)]&&process['stdout']['isTTY'];let _0x52bb51;if(_0xed6e29['autoInstall'])_0x52bb51=_0xed6e29['autoInstall'];else{if(_0x4a1b60){const _0x2cf6a9=await _0x9fe2a1[_0x536a8c(0xb0)]([{'type':_0x536a8c(0xb4),'name':_0x536a8c(0xb8),'message':_0x1856ed['Vklwm'],'choices':[{'name':_0x536a8c(0xac)+_0x2f1bfb+')','value':'user'},{'name':'This\x20project\x20only\x20('+_0x1b60c7+')','value':_0x1856ed['XeOeM']}]}]);_0x52bb51=_0x2cf6a9[_0x536a8c(0xb8)];}else _0x52bb51=_0x536a8c(0xae),console['log'](_0x536a8c(0xaf)+_0x1b60c7+')');}let _0x518061=0x0;const _0x48cf2f=getCurrentVersion();console[_0x536a8c(0xc4)](_0x536a8c(0xba));try{const _0x156286=await _0x1856ed[_0x536a8c(0xc2)](installSkill,_0x1856ed[_0x536a8c(0xa5)],{'cliVersion':_0x48cf2f,'level':_0x52bb51,'platform':_0xdadc81});_0x156286&&_0x518061++;}catch(_0xa00797){console[_0x536a8c(0xb3)]('\x20\x20Failed\x20to\x20install\x20ranger\x20skill:',_0x1856ed[_0x536a8c(0xb1)](_0xa00797,Error)?_0xa00797[_0x536a8c(0xc1)]:_0xa00797);}if(_0x518061>0x0){const _0x206921=_0x1856ed['cwEGQ'](_0x52bb51,_0x536a8c(0xbb))?_0x1856ed['RhfOu']:_0x536a8c(0x9b);console['log']('\x0a✅\x20Installed\x20'+_0x518061+'\x20'+_0x206921+_0x536a8c(0xa6)+(_0x518061>0x1?'s':'')+'\x20successfully!\x0a'),!_0xed6e29['suppressUsage']&&(console['log'](_0x1856ed[_0x536a8c(0xbc)]),_0x1856ed['IwuEE'](_0xdadc81,_0x536a8c(0xb5))?console['log'](_0x1856ed[_0x536a8c(0xc6)]):console[_0x536a8c(0xc4)](_0x536a8c(0xa8)));}else console['log'](_0x536a8c(0x9a));}
@@ -1 +1 @@
1
- const _0x6622a8=_0x4fe4;(function(_0x212ebb,_0x44dad2){const _0x1c7b7b=_0x4fe4,_0x4defaf=_0x212ebb();while(!![]){try{const _0x56f30c=parseInt(_0x1c7b7b(0x148))/0x1*(-parseInt(_0x1c7b7b(0x153))/0x2)+-parseInt(_0x1c7b7b(0xf4))/0x3+parseInt(_0x1c7b7b(0x125))/0x4*(-parseInt(_0x1c7b7b(0x12d))/0x5)+parseInt(_0x1c7b7b(0x101))/0x6*(-parseInt(_0x1c7b7b(0x13b))/0x7)+parseInt(_0x1c7b7b(0x12e))/0x8+parseInt(_0x1c7b7b(0x145))/0x9+parseInt(_0x1c7b7b(0x147))/0xa;if(_0x56f30c===_0x44dad2)break;else _0x4defaf['push'](_0x4defaf['shift']());}catch(_0x3a822a){_0x4defaf['push'](_0x4defaf['shift']());}}}(_0x2e8e,0x30706));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x1b6e77 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerDir,getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';function _0x2e8e(){const _0x16ea15=['git_check','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','kWTjS','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','existing_token','pEPnC','profile','XWnuI','jRAYq','force','No\x20git\x20repository\x20found','✓\x20Playwright\x20Chromium\x20browser\x20found','✓\x20Stored\x20credentials\x20locally','\x20and\x20','Installation\x20failed\x20with\x20exit\x20code\x20','229284LyzUDB',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','isTTY','\x20install\x20chromium','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','jKDHA','Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','You\x20can\x20install\x20it\x20manually\x20by\x20running:','digBI','install','MoqfW','stdout','local','42540XPUiTs','confirm','PNpPM','✓\x20Already\x20authenticated\x20to\x20','LtTBK','aOlod','AZZLA','log','organizationName','1.58.2','JHsTa','Authentication\x20failed:\x20','\x0aInstalling\x20Chromium\x20browser...\x0a','stdin','user','close','trackPhaseStart','GDVSL','✓\x20Local\x20profile\x20already\x20exists','iZSIL','evIkM','stMAt','opencode','resolve','\x0aIn\x20Claude\x20Code,\x20run\x20','skipChromium','ranger','\x20now?','playwright@','skipped','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','LSLzH','\x20(fallback\x20version)','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','✓\x20Authenticated\x20to\x20','scope','12236aUWblM','sNsKE','RANGER_TEST_USERNAME','zZfja','\x20for\x20explicit\x20profile\x20management).','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','PmotB','GkNit','405xJaNSJ','2248824CIQumc','iAgWs','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','✓\x20Created\x20.ranger/.gitignore','provided_token','\x0a❌\x20Profile\x20setup\x20failed:','✓\x20Exported\x20credentials\x20for\x20CI','error','ranger\x20profile\x20add','pgNJa','version','eEQfd','plugin','154UmVWhO','iQjUG','Zvyls','\x20directory\x20already\x20exists','ready','message','\x20and\x20prompt\x20the\x20coding','success','auth','RANGER_TEST_PASSWORD','2438820dGWGMd','\x0a🚀\x20Ranger\x20Setup\x0a','3020590SDVcyp','175549HfSjHu','JsBxH','inherit','\x20directory','url','trackPhaseEnd','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','tdkml','✓\x20Skipping\x20authentication\x20(--skip-auth)','--with-deps','✓\x20Created\x20','2PceoOH','ignore','platform','VficC','NofEv','mwPQa'];_0x2e8e=function(){return _0x16ea15;};return _0x2e8e();}import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x6622a8(0x10a);function _0x4fe4(_0x399a76,_0xf64eec){_0x399a76=_0x399a76-0xe8;const _0x2e8efe=_0x2e8e();let _0x4fe4b3=_0x2e8efe[_0x399a76];return _0x4fe4b3;}const bold=_0x153ffa=>'\x1b[1m'+_0x153ffa+'\x1b[0m';export function getPlaywrightVersion(){const _0xca4257=_0x6622a8,_0x801f30={'cBWnq':function(_0x8f1e48,_0x3ae8c6){return _0x8f1e48(_0x3ae8c6);}};try{const _0x11f3e1=require[_0xca4257(0x118)]('playwright/package.json'),_0xfaf32f=_0x801f30['cBWnq'](require,_0x11f3e1);return _0xfaf32f[_0xca4257(0x138)];}catch{return null;}}export function installChromiumBinary(_0x56c5a4,_0x57f2e0=![]){const _0x126d36=_0x6622a8,_0x4b31c7={'sNsKE':function(_0x29baeb,_0x102b2f){return _0x29baeb(_0x102b2f);},'GkNit':_0x126d36(0x151),'zZfja':'chromium','LSLzH':_0x126d36(0x154),'stMAt':_0x126d36(0x14a),'vDSEq':function(_0x4a07ac,_0x5a5ae7){return _0x4a07ac===_0x5a5ae7;},'QqtqD':_0x126d36(0x110),'XWnuI':_0x126d36(0x135)};return new Promise((_0x3b892f,_0x1fa3c2)=>{const _0x516d54=_0x126d36,_0x3e015d={'NUMpV':function(_0x2ede39,_0x2b849f){return _0x2ede39===_0x2b849f;},'wGxoE':function(_0xbc3931){return _0xbc3931();},'ogZXv':function(_0x146ffc,_0x300006){return _0x146ffc(_0x300006);},'MkvVd':function(_0x4c4fa9,_0x4b5f5c){const _0x28663a=_0x4fe4;return _0x4b31c7[_0x28663a(0x126)](_0x4c4fa9,_0x4b5f5c);}},_0x55842e=[_0x516d54(0x11d)+_0x56c5a4,_0x516d54(0xfd),..._0x57f2e0?[_0x4b31c7[_0x516d54(0x12c)]]:[],_0x4b31c7[_0x516d54(0x128)]],_0x3a6be3=spawn('npx',_0x55842e,{'stdio':[_0x4b31c7[_0x516d54(0x120)],_0x4b31c7['stMAt'],_0x4b31c7[_0x516d54(0x116)]],'shell':_0x4b31c7['vDSEq'](process[_0x516d54(0x155)],'win32')});_0x3a6be3['on'](_0x4b31c7['QqtqD'],_0x5d7b7d=>{const _0x39aa79=_0x516d54;_0x3e015d['NUMpV'](_0x5d7b7d,0x0)?_0x3e015d['wGxoE'](_0x3b892f):_0x3e015d['ogZXv'](_0x1fa3c2,new Error(_0x39aa79(0xf3)+_0x5d7b7d));}),_0x3a6be3['on'](_0x4b31c7[_0x516d54(0xec)],_0x129116=>{_0x3e015d['MkvVd'](_0x1fa3c2,_0x129116);});});}export async function authenticate(_0x1e3f87){const _0x28b03a=_0x6622a8,_0x5c45cd={'lbakf':function(_0x41fa74){return _0x41fa74();},'JsBxH':function(_0x2b75b1,_0x5ebf7b){return _0x2b75b1(_0x5ebf7b);},'xQYxj':function(_0x59637a,_0x5be6de){return _0x59637a(_0x5be6de);},'zNDdr':_0x28b03a(0xf1),'evIkM':_0x28b03a(0x132)};if(!_0x1e3f87){const _0x437d57=await _0x5c45cd['lbakf'](getToken);if(_0x437d57){const _0x3c1712=await getCurrentUser(_0x437d57);if(_0x3c1712['success'])return console['log'](_0x28b03a(0x104)+_0x3c1712['user']['organizationName']),{'token':_0x437d57,'method':_0x28b03a(0xe9)};}try{_0x1e3f87=await _0x5c45cd['lbakf'](runDeviceAuthFlow);}catch(_0x3cddef){throw new Error(_0x28b03a(0x10c)+(_0x3cddef instanceof Error?_0x3cddef['message']:_0x3cddef));}const _0x19fafc=await _0x5c45cd[_0x28b03a(0x149)](getCurrentUser,_0x1e3f87);if(!_0x19fafc['success'])throw new Error(_0x28b03a(0x122)+_0x19fafc[_0x28b03a(0x135)]);return console[_0x28b03a(0x108)]('✓\x20Authenticated\x20to\x20'+_0x19fafc['user'][_0x28b03a(0x109)]),{'token':_0x1e3f87,'method':'device_auth'};}console[_0x28b03a(0x108)]('Validating\x20API\x20token...');const _0x254cb5=await getCurrentUser(_0x1e3f87);if(!_0x254cb5[_0x28b03a(0x142)]){if(_0x254cb5['status'])throw new Error(_0x28b03a(0x10c)+_0x254cb5[_0x28b03a(0x135)]+_0x28b03a(0x130));else throw new Error(_0x28b03a(0x11f)+_0x254cb5[_0x28b03a(0x135)]+_0x28b03a(0x14e));}return console['log'](_0x28b03a(0x123)+_0x254cb5['user'][_0x28b03a(0x109)]),await _0x5c45cd['xQYxj'](storeToken,_0x1e3f87),console[_0x28b03a(0x108)](process['env']['GITHUB_ENV']?_0x28b03a(0x134):_0x5c45cd['zNDdr']),{'token':_0x1e3f87,'method':_0x5c45cd[_0x28b03a(0x115)]};}export async function ensureRangerDir(_0x340617){const _0x5c741a=_0x6622a8,_0x4f5ec7={'FUEqf':'user','fmoqg':'~/.ranger/','PmotB':function(_0x5566e1,_0x2a3264){return _0x5566e1===_0x2a3264;},'iXoBy':function(_0x30b01f){return _0x30b01f();},'lektr':function(_0x4f0f83,_0x3ae4ab,_0x20c723){return _0x4f0f83(_0x3ae4ab,_0x20c723);}};let _0x1ad234;const _0x2e3088=_0x340617===_0x4f5ec7['FUEqf']?_0x4f5ec7['fmoqg']:'.ranger/';if(_0x4f5ec7[_0x5c741a(0x12b)](_0x340617,_0x4f5ec7['FUEqf']))_0x1ad234=_0x4f5ec7['iXoBy'](getRangerHomeDir);else{const _0x2fb6df=findGitRoot();_0x1ad234=_0x2fb6df?_0x4f5ec7['lektr'](join,_0x2fb6df,'.ranger'):getRangerDir();}return!existsSync(_0x1ad234)?(await mkdir(_0x1ad234,{'recursive':!![]}),console['log'](_0x5c741a(0x152)+_0x2e3088+_0x5c741a(0x14b)),{'path':_0x1ad234,'installed':!![]}):(console['log']('✓\x20'+_0x2e3088+_0x5c741a(0x13e)),{'path':_0x1ad234,'installed':![]});}export async function ensureChromium(_0x39d312=![]){const _0x551c75=_0x6622a8,_0x3c7d9a={'GDVSL':_0x551c75(0xf0),'jRAYq':function(_0x3fb99e){return _0x3fb99e();},'DVSgA':function(_0x93d61e,_0x475db9){return _0x93d61e??_0x475db9;},'aOlod':function(_0x352848,_0x4f7514,_0x5d952a){return _0x352848(_0x4f7514,_0x5d952a);},'JHsTa':function(_0x3d8a68,_0x21e778){return _0x3d8a68 instanceof _0x21e778;},'Svcst':_0x551c75(0xfb)};let _0x33870e=![];try{const _0x5a9fa2=chromium['executablePath']();_0x33870e=existsSync(_0x5a9fa2);}catch{_0x33870e=![];}if(_0x33870e)return console['log'](_0x3c7d9a[_0x551c75(0x112)]),![];const _0x382284=_0x3c7d9a[_0x551c75(0xed)](getPlaywrightVersion),_0x4416a6=_0x3c7d9a['DVSgA'](_0x382284,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x42f2de=!_0x382284,_0x566520=process['stdin'][_0x551c75(0xf6)]&&process['stdout'][_0x551c75(0xf6)];let _0x5edfcf=!![];if(_0x566520){const {install:_0x5d06dc}=await _0x1b6e77['prompt']([{'type':_0x551c75(0x102),'name':'install','message':_0x42f2de?_0x551c75(0xfa)+_0x4416a6+_0x551c75(0x11c):'The\x20required\x20version\x20('+_0x4416a6+_0x551c75(0xf5),'default':!![]}]);_0x5edfcf=_0x5d06dc;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x4416a6+(_0x42f2de?_0x551c75(0x121):'')+'...');if(_0x5edfcf){console['log'](_0x551c75(0x10d));try{await _0x3c7d9a[_0x551c75(0x106)](installChromiumBinary,_0x4416a6,_0x39d312),console[_0x551c75(0x108)]('\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully');}catch(_0x5b74ce){console[_0x551c75(0x135)]('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x3c7d9a[_0x551c75(0x10b)](_0x5b74ce,Error)?_0x5b74ce['message']:_0x5b74ce),console['log'](_0x3c7d9a['Svcst']),console['log']('\x20\x20npx\x20playwright@'+_0x4416a6+_0x551c75(0xf7));}}else console['log']('\x0a⚠\x20Skipping\x20Chromium\x20installation.'),console[_0x551c75(0x108)]('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console['log']('\x20\x20npx\x20playwright@'+_0x4416a6+_0x551c75(0xf7));return!![];}export async function writeRangerGitignore(_0x18e037){const _0x41ec17=_0x6622a8,_0x423e80={'jKDHA':'.gitignore','pEPnC':_0x41ec17(0x131)},_0x21e76f=join(_0x18e037,_0x423e80[_0x41ec17(0xf9)]),_0x4b1f4b='\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a';await writeFile(_0x21e76f,_0x4b1f4b),console['log'](_0x423e80[_0x41ec17(0xea)]);}export async function ensureLocalEnv(_0x2ed23a,_0x1fc1be){const _0x1d1b89=_0x6622a8,_0x43017b={'IzQeI':function(_0x491be6){return _0x491be6();},'AZZLA':function(_0x498fe0,_0x2a717a){return _0x498fe0!==_0x2a717a;},'gesqr':'user','mNucx':function(_0x2de94c,_0x4b9eb8){return _0x2de94c===_0x4b9eb8;},'lkcSx':_0x1d1b89(0x100),'piGXx':function(_0x57ea2c,_0x258826){return _0x57ea2c instanceof _0x258826;}};if(!_0x43017b['IzQeI'](findGitRoot)&&_0x43017b[_0x1d1b89(0x107)](_0x2ed23a?.['scope'],_0x43017b['gesqr']))return console['log']('⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.'),{'ready':![],'skipped':!![]};const _0x58fdaf=_0x43017b['mNucx'](_0x2ed23a?.['scope'],_0x43017b['gesqr'])?getRangerHomeDir():undefined;if(findExistingEnv(_0x43017b['lkcSx'],{'locations':['local'],'rangerDir':_0x58fdaf}))return console[_0x1d1b89(0x108)](_0x1d1b89(0x113)),{'ready':!![],'skipped':![]};try{return await addEnv('local',{'url':_0x2ed23a?.[_0x1d1b89(0x14c)],'force':_0x2ed23a?.['force'],'allowInsecureLocalhost':_0x2ed23a?.['allowInsecureLocalhost'],'scope':_0x2ed23a?.[_0x1d1b89(0x124)]},_0x1fc1be),{'ready':!![],'skipped':![]};}catch(_0x2a00a1){return console[_0x1d1b89(0x135)](_0x1d1b89(0x133),_0x43017b['piGXx'](_0x2a00a1,Error)?_0x2a00a1[_0x1d1b89(0x140)]:_0x2a00a1),{'ready':![],'skipped':![]};}}export async function start(_0x39f48b,_0x35d168,_0x2273dd){const _0x971fad=_0x6622a8,_0x4a1899={'SnwcM':function(_0x1b9b13,_0x25fd4b){return _0x1b9b13===_0x25fd4b;},'MoqfW':_0x971fad(0x10f),'kWTjS':'git_check','jzRSB':'No\x20git\x20repository\x20found\x20for\x20--scope\x20project.\x20Re-run\x20without\x20`--scope\x20project`\x20to\x20install\x20at\x20user\x20scope.','eEQfd':function(_0x247124,_0x18e320){return _0x247124(_0x18e320);},'VficC':function(_0x3650a0){return _0x3650a0();},'wjZcL':function(_0x5d62a2,_0x32833c){return _0x5d62a2(_0x32833c);},'Zvyls':_0x971fad(0x11e),'digBI':_0x971fad(0x143),'rupXZ':'chromium','iAgWs':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','gSArs':function(_0x46da5a,_0x1a9596){return _0x46da5a(_0x1a9596);},'tdkml':'plugin','PNpPM':function(_0x2d898e,_0x5ee69a){return _0x2d898e(_0x5ee69a);},'lEwet':function(_0x856731,_0x542097){return _0x856731(_0x542097);},'NofEv':function(_0x3eddc3,_0x33e9ad){return _0x3eddc3&&_0x33e9ad;},'iQjUG':function(_0xfd7791,_0x1c0b7f,_0x5b5161){return _0xfd7791(_0x1c0b7f,_0x5b5161);},'EyMxr':_0x971fad(0x11b),'bGIoM':'opencode','izJwH':function(_0x24440,_0x2d6fcd){return _0x24440 instanceof _0x2d6fcd;},'UkUiH':'skills','LtTBK':function(_0x16ba41,_0x2afc2d){return _0x16ba41(_0x2afc2d);},'Yehxc':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','mwPQa':function(_0x47caa0,_0x30c58f){return _0x47caa0(_0x30c58f);},'tGAKl':_0x971fad(0x127),'iZSIL':_0x971fad(0x144),'iaHll':function(_0x4770ae,_0x18ed69){return _0x4770ae(_0x18ed69);},'wsXir':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','vWLHB':'/ranger:enable','pgNJa':function(_0x5afb3e,_0x463ea5){return _0x5afb3e+_0x463ea5;}};console[_0x971fad(0x108)](_0x971fad(0x146));const _0x590546=process[_0x971fad(0x10e)][_0x971fad(0xf6)]&&process[_0x971fad(0xff)][_0x971fad(0xf6)];!_0x35d168?.[_0x971fad(0x124)]&&(_0x35d168={..._0x35d168,'scope':_0x971fad(0x10f)});const _0x262da2=_0x4a1899['SnwcM'](_0x35d168?.[_0x971fad(0x124)],_0x4a1899[_0x971fad(0xfe)]);_0x2273dd?.['trackPhaseStart'](_0x4a1899[_0x971fad(0x15b)]);if(!_0x262da2&&!findGitRoot()){await _0x2273dd?.['trackPhaseError']('git_check',new Error(_0x971fad(0xef)));throw new Error(_0x4a1899['jzRSB']);}_0x2273dd?.[_0x971fad(0x14d)](_0x971fad(0x159));const _0x3edff8=_0x262da2?!_0x4a1899[_0x971fad(0x139)](existsSync,_0x4a1899[_0x971fad(0x156)](getRangerHomeDir)):!_0x4a1899['wjZcL'](existsSync,getRangerDir()),{path:_0x1a8593}=await ensureRangerDir(_0x262da2?'user':undefined);if(_0x35d168?.['skipAuth'])console[_0x971fad(0x108)](_0x971fad(0x150)),_0x2273dd?.[_0x971fad(0x14d)]('auth',{'isFirstRun':_0x3edff8,'method':_0x4a1899[_0x971fad(0x13d)]});else{_0x2273dd?.['trackPhaseStart'](_0x4a1899['digBI']);const _0x136bc3=await authenticate(_0x39f48b);_0x2273dd?.['trackPhaseEnd'](_0x4a1899[_0x971fad(0xfc)],{'isFirstRun':_0x3edff8,'method':_0x136bc3['method']});}_0x2273dd?.[_0x971fad(0x111)](_0x4a1899['rupXZ']);_0x35d168?.[_0x971fad(0x11a)]?console['log'](_0x4a1899[_0x971fad(0x12f)]):await _0x4a1899['wjZcL'](ensureChromium,_0x35d168?.['withDeps']);_0x2273dd?.['trackPhaseEnd']('chromium',{'isFirstRun':_0x3edff8,'skipped':!!_0x35d168?.[_0x971fad(0x11a)]});!_0x262da2&&await _0x4a1899['gSArs'](writeRangerGitignore,_0x1a8593);console[_0x971fad(0x108)](_0x971fad(0x15a));const _0x1de66d=_0x35d168?.['scope'],_0x9e002a=_0x35d168?.[_0x971fad(0x117)]??![];let _0x5a9486=null;_0x9e002a?(_0x2273dd?.['trackPhaseStart'](_0x4a1899[_0x971fad(0x14f)]),_0x5a9486=await _0x4a1899[_0x971fad(0x103)](ensureOpencodePluginConfig,_0x1de66d),_0x2273dd?.['trackPhaseEnd'](_0x4a1899[_0x971fad(0x14f)],{'isFirstRun':_0x3edff8,'opencode':!![]})):(_0x2273dd?.[_0x971fad(0x111)](_0x971fad(0x13a)),await _0x4a1899['lEwet'](ensureClaudePlugin,_0x1de66d),_0x2273dd?.[_0x971fad(0x14d)](_0x4a1899[_0x971fad(0x14f)],{'isFirstRun':_0x3edff8}));if(_0x4a1899[_0x971fad(0x157)](_0x9e002a,_0x5a9486)){_0x2273dd?.[_0x971fad(0x111)]('skills');try{await _0x4a1899[_0x971fad(0x13c)](installSkill,_0x4a1899['EyMxr'],{'level':_0x5a9486['scope'],'cliVersion':getCurrentVersion(),'platform':_0x4a1899['bGIoM']}),_0x2273dd?.['trackPhaseEnd']('skills',{'isFirstRun':_0x3edff8,'opencode':!![]});}catch(_0x54a5b7){console['warn']('\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',_0x4a1899['izJwH'](_0x54a5b7,Error)?_0x54a5b7['message']:_0x54a5b7),_0x2273dd?.['trackPhaseEnd'](_0x4a1899['UkUiH'],{'isFirstRun':_0x3edff8,'opencode':!![],'failed':!![]});}}else _0x2273dd?.['trackPhaseStart'](_0x4a1899['UkUiH']),await _0x4a1899[_0x971fad(0x105)](ensureClaudeSkills,_0x1de66d),_0x2273dd?.[_0x971fad(0x14d)](_0x4a1899['UkUiH'],{'isFirstRun':_0x3edff8});if(_0x35d168?.['skipAuth'])console[_0x971fad(0x108)](_0x4a1899['Yehxc']);else{if(_0x35d168?.['url']){_0x2273dd?.['trackPhaseStart']('profile');const _0x3c30c2=await ensureLocalEnv({'url':_0x35d168['url'],'force':_0x35d168?.[_0x971fad(0xee)],'allowInsecureLocalhost':_0x35d168?.['allowInsecureLocalhost'],'scope':_0x4a1899['SnwcM'](_0x35d168?.[_0x971fad(0x124)],_0x4a1899['MoqfW'])?_0x4a1899['MoqfW']:undefined},_0x2273dd);_0x2273dd?.['trackPhaseEnd'](_0x971fad(0xeb),{'isFirstRun':_0x3edff8,'profileReady':_0x3c30c2[_0x971fad(0x13f)],'userSkipped':_0x3c30c2['skipped']});}else console[_0x971fad(0x108)]('\x0aTo\x20verify\x20with\x20a\x20browser:\x20set\x20'+_0x4a1899[_0x971fad(0x158)](bold,_0x4a1899['tGAKl'])+_0x971fad(0xf2)+bold(_0x4a1899[_0x971fad(0x114)])),console['log']('\x20\x20(or\x20use\x20'+_0x4a1899['iaHll'](bold,_0x971fad(0x136))+_0x971fad(0x129));}if(_0x9e002a)console['log'](_0x971fad(0x12a)),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console['log']('with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),console['log'](_0x4a1899['wsXir']);else{const _0x48e077=bold(_0x4a1899['vWLHB']);console[_0x971fad(0x108)](_0x4a1899[_0x971fad(0x137)](_0x971fad(0x119)+_0x48e077+_0x971fad(0x141)+_0x971fad(0xf8),'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser')+_0x971fad(0xe8));}}
1
+ const _0xef9ad6=_0x2f46;(function(_0x492837,_0x55116d){const _0x2ddb7b=_0x2f46,_0x331e33=_0x492837();while(!![]){try{const _0x143f5a=-parseInt(_0x2ddb7b(0x14d))/0x1*(-parseInt(_0x2ddb7b(0x180))/0x2)+-parseInt(_0x2ddb7b(0x16a))/0x3+-parseInt(_0x2ddb7b(0x1a5))/0x4+parseInt(_0x2ddb7b(0x157))/0x5*(parseInt(_0x2ddb7b(0x1a1))/0x6)+parseInt(_0x2ddb7b(0x18f))/0x7+parseInt(_0x2ddb7b(0x15f))/0x8+-parseInt(_0x2ddb7b(0x1b0))/0x9*(-parseInt(_0x2ddb7b(0x197))/0xa);if(_0x143f5a===_0x55116d)break;else _0x331e33['push'](_0x331e33['shift']());}catch(_0x6527ca){_0x331e33['push'](_0x331e33['shift']());}}}(_0x2f79,0x1b54d));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';function _0x2f46(_0x174d0e,_0x1247b9){_0x174d0e=_0x174d0e-0x140;const _0x2f7989=_0x2f79();let _0x2f46a3=_0x2f7989[_0x174d0e];return _0x2f46a3;}import _0x18405f from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';function _0x2f79(){const _0xcd604=['Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','stdout','ceDOT','XKufc','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','40vLPtAO','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','\x0aIn\x20Claude\x20Code,\x20run\x20','skipped','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','1.58.2','IDgXu','RANGER_TEST_PASSWORD','xbqZY','ready','6wSzmeR','url','SxGCG','\x20install\x20chromium','432588bdmeRY','status','version','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','skipAuth','cMZJe','\x20\x20(or\x20use\x20','user','YKVrv','✓\x20~/.ranger/\x20directory\x20already\x20exists','executablePath','299799RQrnXc','existing_token','UIiPY','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','gwqir','EoDtw','JKoir','/ranger:enable','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','plugin','isTTY','yXigd','QyDjm','message','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','3848XCMBRA','GITHUB_ENV','confirm','win32','wZjei','skipChromium','playwright/package.json','success','device_auth','KoThL','36565zWBery','fiewP','YBuuW','BkePq','resolve','\x1b[1m','scope','allowInsecureLocalhost','159056eVWvGy',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','✓\x20Created\x20~/.ranger/\x20directory','trackPhaseStart','inherit','log','QKfUy','ujDKw','\x20when\x20the\x20org\x27s\x20login','pdDGO','trackPhaseEnd','250977IigCmq','\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','pKqQN','MtYQi','AdMMe','✓\x20Already\x20authenticated\x20to\x20','warn','withDeps','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','yJhPY','skills','DvKve','close','CHjjc','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','✓\x20Created\x20.ranger/.gitignore','cfHAc','nCezB','XYMIr','ztbOg','opencode','✓\x20Playwright\x20Chromium\x20browser\x20found','16lSlAek','EZJES','You\x20can\x20install\x20it\x20manually\x20by\x20running:','organizationName','\x20\x20npx\x20playwright@','Authentication\x20failed:\x20','\x0a❌\x20Profile\x20setup\x20failed:','platform','whXQM','ranger\x20profile\x20add','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','\x0aTo\x20verify\x20with\x20a\x20browser,\x20set\x20','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','ranger\x20setup\x20--scope=','error','787724UcNDnY','Installation\x20failed\x20with\x20exit\x20code\x20','exit'];_0x2f79=function(){return _0xcd604;};return _0x2f79();}import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0xef9ad6(0x19c);const bold=_0x4dd745=>_0xef9ad6(0x15c)+_0x4dd745+'\x1b[0m';export function getPlaywrightVersion(){const _0x530456=_0xef9ad6,_0x3c405a={'whXQM':function(_0x26eddc,_0x96563a){return _0x26eddc(_0x96563a);}};try{const _0x57c4b1=require[_0x530456(0x15b)](_0x530456(0x153)),_0x559132=_0x3c405a[_0x530456(0x188)](require,_0x57c4b1);return _0x559132[_0x530456(0x1a7)];}catch{return null;}}export function installChromiumBinary(_0x2d4c2e,_0x570e35=![]){const _0xe9a9f7=_0xef9ad6,_0x2788cc={'fiewP':function(_0x2527ff){return _0x2527ff();},'sjfAQ':'--with-deps','xbqZY':'ignore','cMZJe':_0xe9a9f7(0x163),'EoDtw':function(_0x14ec92,_0x3eb50f){return _0x14ec92===_0x3eb50f;}};return new Promise((_0x38bba8,_0x4cfa14)=>{const _0x26a840=_0xe9a9f7,_0x19be94={'yJhPY':function(_0x27bd81,_0x8c2e5a){return _0x27bd81(_0x8c2e5a);}},_0x56a59c=['playwright@'+_0x2d4c2e,'install',..._0x570e35?[_0x2788cc['sjfAQ']]:[],'chromium'],_0x125dbc=spawn('npx',_0x56a59c,{'stdio':[_0x2788cc[_0x26a840(0x19f)],_0x2788cc[_0x26a840(0x1aa)],_0x2788cc['cMZJe']],'shell':_0x2788cc[_0x26a840(0x143)](process[_0x26a840(0x187)],_0x26a840(0x150))});_0x125dbc['on'](_0x26a840(0x176),_0x4166bc=>{const _0x3e4731=_0x26a840;_0x4166bc===0x0?_0x2788cc[_0x3e4731(0x158)](_0x38bba8):_0x4cfa14(new Error(_0x3e4731(0x190)+_0x4166bc));}),_0x125dbc['on'](_0x26a840(0x18e),_0x300f9a=>{const _0x55bbe7=_0x26a840;_0x19be94[_0x55bbe7(0x173)](_0x4cfa14,_0x300f9a);});});}export async function authenticate(_0x133a62){const _0x5d871f=_0xef9ad6,_0x370571={'hwvUE':_0x5d871f(0x1b1),'CHjjc':_0x5d871f(0x155),'QqYPS':'Validating\x20API\x20token...','ujDKw':function(_0x2d505f,_0x12db6f){return _0x2d505f(_0x12db6f);},'IDgXu':'✓\x20Exported\x20credentials\x20for\x20CI','fcTOn':'✓\x20Stored\x20credentials\x20locally'};if(!_0x133a62){const _0x262f35=await getToken();if(_0x262f35){const _0x5730a6=await getCurrentUser(_0x262f35);if(_0x5730a6[_0x5d871f(0x154)])return console[_0x5d871f(0x164)](_0x5d871f(0x16f)+_0x5730a6[_0x5d871f(0x1ac)][_0x5d871f(0x183)]),{'token':_0x262f35,'method':_0x370571['hwvUE']};}try{_0x133a62=await runDeviceAuthFlow();}catch(_0xe5db6c){throw new Error('Authentication\x20failed:\x20'+(_0xe5db6c instanceof Error?_0xe5db6c[_0x5d871f(0x14b)]:_0xe5db6c));}const _0x455c68=await getCurrentUser(_0x133a62);if(!_0x455c68[_0x5d871f(0x154)])throw new Error(_0x5d871f(0x192)+_0x455c68[_0x5d871f(0x18e)]);return console['log']('✓\x20Authenticated\x20to\x20'+_0x455c68[_0x5d871f(0x1ac)]['organizationName']),{'token':_0x133a62,'method':_0x370571[_0x5d871f(0x177)]};}console['log'](_0x370571['QqYPS']);const _0x30997f=await getCurrentUser(_0x133a62);if(!_0x30997f['success']){if(_0x30997f[_0x5d871f(0x1a6)])throw new Error(_0x5d871f(0x185)+_0x30997f['error']+_0x5d871f(0x196));else throw new Error(_0x5d871f(0x14c)+_0x30997f[_0x5d871f(0x18e)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console['log']('✓\x20Authenticated\x20to\x20'+_0x30997f['user'][_0x5d871f(0x183)]),await _0x370571[_0x5d871f(0x166)](storeToken,_0x133a62),console['log'](process['env'][_0x5d871f(0x14e)]?_0x370571[_0x5d871f(0x19d)]:_0x370571['fcTOn']),{'token':_0x133a62,'method':'provided_token'};}export async function ensureRangerDir(_0x363e4b){const _0x2fee4f=_0xef9ad6,_0x2683a2={'MwrKv':function(_0x24f72e){return _0x24f72e();},'HrPYe':function(_0x469ecf,_0x4655f9){return _0x469ecf(_0x4655f9);},'Jayib':_0x2fee4f(0x161),'PNFfD':_0x2fee4f(0x1ae)};void _0x363e4b;const _0x2acc09=_0x2683a2['MwrKv'](getRangerHomeDir);return!_0x2683a2['HrPYe'](existsSync,_0x2acc09)?(await mkdir(_0x2acc09,{'recursive':!![]}),console['log'](_0x2683a2['Jayib']),{'path':_0x2acc09,'installed':!![]}):(console['log'](_0x2683a2['PNFfD']),{'path':_0x2acc09,'installed':![]});}export async function ensureChromium(_0x45d73b=![]){const _0x4e7b26=_0xef9ad6,_0x57dcde={'grCrU':function(_0x51c3d0,_0x4c7709){return _0x51c3d0(_0x4c7709);},'VdlZB':_0x4e7b26(0x17f),'QyDjm':'\x0aInstalling\x20Chromium\x20browser...\x0a','wZjei':'\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','RoXFq':'\x0a❌\x20Failed\x20to\x20install\x20Chromium:','AdMMe':_0x4e7b26(0x182),'yFyXj':'\x0a⚠\x20Skipping\x20Chromium\x20installation.','DZqmX':_0x4e7b26(0x178)};let _0x28ebbf=![];try{const _0x27e16b=chromium[_0x4e7b26(0x1af)]();_0x28ebbf=_0x57dcde['grCrU'](existsSync,_0x27e16b);}catch{_0x28ebbf=![];}if(_0x28ebbf)return console['log'](_0x57dcde['VdlZB']),![];const _0x5ebe96=getPlaywrightVersion(),_0x3d9ed6=_0x5ebe96??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x1c09f5=!_0x5ebe96,_0x10a463=process['stdin']['isTTY']&&process[_0x4e7b26(0x193)][_0x4e7b26(0x148)];let _0x4501a3=!![];if(_0x10a463){const {install:_0x40e882}=await _0x18405f['prompt']([{'type':_0x4e7b26(0x14f),'name':'install','message':_0x1c09f5?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x3d9ed6+'\x20now?':'The\x20required\x20version\x20('+_0x3d9ed6+_0x4e7b26(0x160),'default':!![]}]);_0x4501a3=_0x40e882;}else console[_0x4e7b26(0x164)]('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x3d9ed6+(_0x1c09f5?'\x20(fallback\x20version)':'')+'...');if(_0x4501a3){console[_0x4e7b26(0x164)](_0x57dcde[_0x4e7b26(0x14a)]);try{await installChromiumBinary(_0x3d9ed6,_0x45d73b),console[_0x4e7b26(0x164)](_0x57dcde[_0x4e7b26(0x151)]);}catch(_0x2fbc13){console['error'](_0x57dcde['RoXFq'],_0x2fbc13 instanceof Error?_0x2fbc13['message']:_0x2fbc13),console[_0x4e7b26(0x164)](_0x57dcde[_0x4e7b26(0x16e)]),console['log'](_0x4e7b26(0x184)+_0x3d9ed6+'\x20install\x20chromium');}}else console['log'](_0x57dcde['yFyXj']),console['log'](_0x57dcde['DZqmX']),console['log'](_0x4e7b26(0x184)+_0x3d9ed6+_0x4e7b26(0x1a4));return!![];}export async function writeRangerGitignore(_0x12c12f){const _0x4116cd=_0xef9ad6,_0x375468={'yPRCu':'.gitignore','YBuuW':_0x4116cd(0x179)},_0x149473=join(_0x12c12f,_0x375468['yPRCu']),_0x264b27='\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a';await writeFile(_0x149473,_0x264b27),console[_0x4116cd(0x164)](_0x375468[_0x4116cd(0x159)]);}export async function ensureLocalEnv(_0x251e4e,_0x2e9802){const _0x26a635=_0xef9ad6,_0x533253={'HtJCA':function(_0x2ea9ac){return _0x2ea9ac();},'DCJVB':'user','BiUII':function(_0x2ea266,_0x489cc5){return _0x2ea266===_0x489cc5;},'ceDOT':function(_0x2b3bc6){return _0x2b3bc6();},'QoIvh':function(_0x2016e9,_0x509423,_0x11341c){return _0x2016e9(_0x509423,_0x11341c);},'HlDQc':'local','xdMZm':'✓\x20Local\x20profile\x20already\x20exists','pKqQN':function(_0x425c69,_0x1d7e8e,_0x5abf6d,_0x3aa00e){return _0x425c69(_0x1d7e8e,_0x5abf6d,_0x3aa00e);},'QKfUy':function(_0x4656a7,_0x1b9185){return _0x4656a7 instanceof _0x1b9185;}};if(!_0x533253['HtJCA'](findGitRoot)&&_0x251e4e?.[_0x26a635(0x15d)]!==_0x533253['DCJVB'])return console['log'](_0x26a635(0x19b)),{'ready':![],'skipped':!![]};const _0x3c05d7=_0x533253['BiUII'](_0x251e4e?.['scope'],_0x26a635(0x1ac))?_0x533253[_0x26a635(0x194)](getRangerHomeDir):undefined;if(_0x533253['QoIvh'](findExistingEnv,'local',{'locations':[_0x533253['HlDQc']],'rangerDir':_0x3c05d7}))return console['log'](_0x533253['xdMZm']),{'ready':!![],'skipped':![]};try{return await _0x533253[_0x26a635(0x16c)](addEnv,'local',{'url':_0x251e4e?.[_0x26a635(0x1a2)],'force':_0x251e4e?.['force'],'allowInsecureLocalhost':_0x251e4e?.[_0x26a635(0x15e)],'scope':_0x251e4e?.['scope']},_0x2e9802),{'ready':!![],'skipped':![]};}catch(_0x100be2){return console[_0x26a635(0x18e)](_0x26a635(0x186),_0x533253[_0x26a635(0x165)](_0x100be2,Error)?_0x100be2[_0x26a635(0x14b)]:_0x100be2),{'ready':![],'skipped':![]};}}export async function start(_0x49fa31,_0x1dd852,_0x891463){const _0x29296d=_0xef9ad6,_0x3b4dfc={'UIiPY':'\x0a🚀\x20Ranger\x20Setup\x0a','DvKve':function(_0x1dc5f9,_0x822e1b){return _0x1dc5f9!==_0x822e1b;},'XYMIr':'user','YKVrv':function(_0x588863,_0xb05362){return _0x588863+_0xb05362;},'MtYQi':function(_0x40df7a,_0x26cfcb){return _0x40df7a(_0x26cfcb);},'pdDGO':function(_0x209f6a,_0x2ca86e){return _0x209f6a(_0x2ca86e);},'Oxldy':'✓\x20Skipping\x20authentication\x20(--skip-auth)','BkePq':'auth','xEPch':_0x29296d(0x19a),'yXigd':_0x29296d(0x147),'mjoCh':function(_0x13b816,_0x396c6f){return _0x13b816&&_0x396c6f;},'cfHAc':'skills','ztbOg':function(_0x422ca9,_0x462419,_0x4f4144){return _0x422ca9(_0x462419,_0x4f4144);},'nCezB':'ranger','FxRVg':'opencode','HXDUq':'\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','zELtH':function(_0x16be15,_0x10fcf3){return _0x16be15 instanceof _0x10fcf3;},'SgTmo':function(_0x496fb4,_0x536263){return _0x496fb4(_0x536263);},'XKufc':'profile','Ifoos':function(_0x4ac012,_0x71ac99,_0x46f51f){return _0x4ac012(_0x71ac99,_0x46f51f);},'gwqir':_0x29296d(0x19e),'KoThL':function(_0x44d35d,_0x35efd5){return _0x44d35d(_0x35efd5);},'JKoir':_0x29296d(0x189),'SxGCG':_0x29296d(0x146),'TRgRK':_0x29296d(0x141),'EZJES':_0x29296d(0x1a8),'dphRD':function(_0x4ffabe,_0x2c0b54){return _0x4ffabe+_0x2c0b54;},'Wgtyc':function(_0x3b0d53,_0x45814c){return _0x3b0d53+_0x45814c;}};console[_0x29296d(0x164)](_0x3b4dfc[_0x29296d(0x140)]);_0x3b4dfc[_0x29296d(0x175)](_0x1dd852?.['scope'],undefined)&&_0x3b4dfc['DvKve'](_0x1dd852[_0x29296d(0x15d)],_0x3b4dfc[_0x29296d(0x17c)])&&(console[_0x29296d(0x18e)](_0x3b4dfc['YKVrv'](_0x29296d(0x18d)+_0x3b4dfc[_0x29296d(0x16d)](String,_0x1dd852[_0x29296d(0x15d)])+'\x20is\x20no\x20longer\x20supported.\x20'+_0x29296d(0x198),_0x29296d(0x18c))),process[_0x29296d(0x191)](0x1));_0x1dd852={..._0x1dd852,'scope':'user'};const _0x1df1c3=!existsSync(getRangerHomeDir());await _0x3b4dfc['pdDGO'](ensureRangerDir,_0x3b4dfc['XYMIr']);if(_0x1dd852?.[_0x29296d(0x1a9)])console['log'](_0x3b4dfc['Oxldy']),_0x891463?.['trackPhaseEnd'](_0x3b4dfc['BkePq'],{'isFirstRun':_0x1df1c3,'method':_0x3b4dfc['xEPch']});else{_0x891463?.[_0x29296d(0x162)](_0x3b4dfc[_0x29296d(0x15a)]);const _0x56bc5c=await authenticate(_0x49fa31);_0x891463?.[_0x29296d(0x169)](_0x3b4dfc[_0x29296d(0x15a)],{'isFirstRun':_0x1df1c3,'method':_0x56bc5c['method']});}_0x891463?.['trackPhaseStart']('chromium');_0x1dd852?.[_0x29296d(0x152)]?console['log']('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await _0x3b4dfc[_0x29296d(0x16d)](ensureChromium,_0x1dd852?.[_0x29296d(0x171)]);_0x891463?.[_0x29296d(0x169)]('chromium',{'isFirstRun':_0x1df1c3,'skipped':!!_0x1dd852?.['skipChromium']}),console[_0x29296d(0x164)]('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x46af19=_0x1dd852?.[_0x29296d(0x15d)],_0x4383e9=_0x1dd852?.[_0x29296d(0x17e)]??![];let _0x2fe183=null;_0x4383e9?(_0x891463?.['trackPhaseStart']('plugin'),_0x2fe183=await _0x3b4dfc[_0x29296d(0x168)](ensureOpencodePluginConfig,_0x46af19),_0x891463?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x1df1c3,'opencode':!![]})):(_0x891463?.[_0x29296d(0x162)](_0x3b4dfc[_0x29296d(0x149)]),await ensureClaudePlugin(_0x46af19),_0x891463?.['trackPhaseEnd'](_0x3b4dfc[_0x29296d(0x149)],{'isFirstRun':_0x1df1c3}));if(_0x3b4dfc['mjoCh'](_0x4383e9,_0x2fe183)){_0x891463?.['trackPhaseStart'](_0x3b4dfc[_0x29296d(0x17a)]);try{await _0x3b4dfc[_0x29296d(0x17d)](installSkill,_0x3b4dfc[_0x29296d(0x17b)],{'level':_0x2fe183[_0x29296d(0x15d)],'cliVersion':getCurrentVersion(),'platform':_0x3b4dfc['FxRVg']}),_0x891463?.[_0x29296d(0x169)](_0x3b4dfc['cfHAc'],{'isFirstRun':_0x1df1c3,'opencode':!![]});}catch(_0x27267a){console[_0x29296d(0x170)](_0x3b4dfc['HXDUq'],_0x3b4dfc['zELtH'](_0x27267a,Error)?_0x27267a['message']:_0x27267a),_0x891463?.[_0x29296d(0x169)](_0x29296d(0x174),{'isFirstRun':_0x1df1c3,'opencode':!![],'failed':!![]});}}else _0x891463?.[_0x29296d(0x162)](_0x3b4dfc['cfHAc']),await _0x3b4dfc['SgTmo'](ensureClaudeSkills,_0x46af19),_0x891463?.['trackPhaseEnd'](_0x3b4dfc[_0x29296d(0x17a)],{'isFirstRun':_0x1df1c3});if(_0x1dd852?.[_0x29296d(0x1a9)])console['log'](_0x29296d(0x16b));else{if(_0x1dd852?.[_0x29296d(0x1a2)]){_0x891463?.['trackPhaseStart'](_0x3b4dfc['XKufc']);const _0x2afeaa=await _0x3b4dfc['Ifoos'](ensureLocalEnv,{'url':_0x1dd852['url'],'force':_0x1dd852?.['force'],'allowInsecureLocalhost':_0x1dd852?.[_0x29296d(0x15e)],'scope':_0x3b4dfc[_0x29296d(0x17c)]},_0x891463);_0x891463?.['trackPhaseEnd'](_0x3b4dfc[_0x29296d(0x195)],{'isFirstRun':_0x1df1c3,'profileReady':_0x2afeaa[_0x29296d(0x1a0)],'userSkipped':_0x2afeaa[_0x29296d(0x19a)]});}else console['log'](_0x3b4dfc[_0x29296d(0x1ad)](_0x3b4dfc['YKVrv'](_0x29296d(0x18b)+bold('RANGER_TEST_USERNAME')+'\x20','(and\x20'+_0x3b4dfc[_0x29296d(0x168)](bold,_0x3b4dfc[_0x29296d(0x142)])+_0x29296d(0x167))+'\x0a\x20\x20config\x20uses\x20username+password).\x20Orgs\x20on\x20SSO/SAML/OAuth','\x20may\x20need\x20a\x20one-time\x20headed\x20login\x20instead\x20—')+'\x0a\x20\x20your\x20org\x27s\x20auth\x20config\x20drives\x20which\x20flow\x20runs.'),console[_0x29296d(0x164)](_0x29296d(0x1ab)+_0x3b4dfc[_0x29296d(0x156)](bold,_0x3b4dfc[_0x29296d(0x144)])+'\x20for\x20explicit\x20profile\x20management).');}if(_0x4383e9)console[_0x29296d(0x164)]('\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)'),console[_0x29296d(0x164)](_0x3b4dfc[_0x29296d(0x1a3)]),console['log'](_0x3b4dfc['TRgRK']),console['log'](_0x3b4dfc[_0x29296d(0x181)]);else{const _0x5a1d83=bold(_0x29296d(0x145));console[_0x29296d(0x164)](_0x3b4dfc['dphRD'](_0x3b4dfc['Wgtyc'](_0x29296d(0x199)+_0x5a1d83+'\x20and\x20prompt\x20the\x20coding',_0x29296d(0x172))+'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser',_0x29296d(0x18a)));}}
@@ -1 +1 @@
1
- const _0x453ebe=_0x4aca;(function(_0x3a5527,_0x1d1e62){const _0x5cc3ee=_0x4aca,_0x323db9=_0x3a5527();while(!![]){try{const _0x4e77a6=parseInt(_0x5cc3ee(0xbb))/0x1+parseInt(_0x5cc3ee(0x107))/0x2+-parseInt(_0x5cc3ee(0xdd))/0x3+parseInt(_0x5cc3ee(0x101))/0x4+parseInt(_0x5cc3ee(0xd3))/0x5+parseInt(_0x5cc3ee(0xd9))/0x6*(-parseInt(_0x5cc3ee(0xc4))/0x7)+parseInt(_0x5cc3ee(0xcd))/0x8*(-parseInt(_0x5cc3ee(0xe9))/0x9);if(_0x4e77a6===_0x1d1e62)break;else _0x323db9['push'](_0x323db9['shift']());}catch(_0x22c75b){_0x323db9['push'](_0x323db9['shift']());}}}(_0x2f59,0xf04b2));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';function _0x2f59(){const _0x2371ec=['trim','zYEfR','unknown','yNBiV','toString','\x20(up\x20to\x20date)','nFwOZ','RBSlL','settingsPath','log','\x1b]8;;file://','No\x20skills\x20installed','(not\x20found)','\x20\x20Not\x20installed','nctLs','pipe','1084080OsAlCu','cHIYO','qEiEg','Root:\x20','name','opencode-plugin','rsAOz','UAbRN','DEBUG','7ApgGKh','length','\x20\x20\x20\x20','\x20(latest:\x20','@ranger-testing/opencode-plugin','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','project','map','5352352osredb','cARit','scope','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','\x20\x20\x20\x20Settings:\x20','BUOAM','2441460mMyPMS','mYmfT','NnZbA','sIVRu','version','enabled','10667550Fzhyql','status','\x0a📊\x20Ranger\x20Status\x0a','displayName','4327206umyFhO','includes',':\x20installed\x20(','QBhHZ','isDirectory','\x0a---\x20Skills\x20---','opencode','jRiIj','\x20\x20Run:\x20ranger\x20setup\x20[token]','\x0a---\x20Claude\x20Code\x20Plugin\x20---','some','data','9doetkp','uaFli','SwhuC','details','zmynt','parse','pqwaI','string','YzkSz','ztUrK','error','hasPlaintextAuth','heklD','not_configured','DsvnW','ObaEU','KngBs','disabled','\x20\x20Not\x20configured','settings.json','path','SKILL.md','\x20\x20Project-level:','API\x20Token:\x20✗\x20Not\x20found','7558428jkTPJr','ranger@trailhead','yvNVw','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','WCwUF','stdout','2823268gbtWsV','auth.json','dLgkl','configured','Version:\x20'];_0x2f59=function(){return _0x2371ec;};return _0x2f59();}import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';function _0x4aca(_0x57adf9,_0x464992){_0x57adf9=_0x57adf9-0xad;const _0x2f593e=_0x2f59();let _0x4acae6=_0x2f593e[_0x57adf9];return _0x4acae6;}import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x39c9b9=>'\x1b[1m'+_0x39c9b9+'\x1b[0m',link=(_0x2d9dc8,_0x56d9f5)=>_0x453ebe(0xb5)+_0x2d9dc8+'\x07'+(_0x56d9f5||_0x2d9dc8)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x55e3e4=_0x453ebe,_0x1303aa={'jRiIj':function(_0x580063,_0x7c05bb){return _0x580063(_0x7c05bb);},'pQkvb':'not_installed','UAbRN':_0x55e3e4(0x10a),'BuXNE':'@ranger-testing/opencode-plugin','zmynt':'debug','rsAOz':'config','gePsV':'pipe','zYEfR':'data','XmsbV':_0x55e3e4(0xf3)};return new Promise(_0x50b342=>{const _0x372b47=_0x55e3e4,_0x5db70f={'tEPFN':_0x1303aa['BuXNE']},_0x47d5c0=spawn(_0x372b47(0xe3),[_0x1303aa[_0x372b47(0xed)],_0x1303aa[_0x372b47(0xc1)]],{'stdio':['ignore',_0x372b47(0xba),_0x1303aa['gePsV']]});let _0x50314d='';_0x47d5c0[_0x372b47(0x106)]?.['on'](_0x372b47(0xe8),_0x16d7b8=>{const _0x3e9cd4=_0x372b47;_0x50314d+=_0x16d7b8[_0x3e9cd4(0xaf)]();}),_0x47d5c0['stderr']?.['on'](_0x1303aa[_0x372b47(0x10d)],_0x1d9369=>{const _0x4cac60=_0x372b47;_0x50314d+=_0x1d9369[_0x4cac60(0xaf)]();}),_0x47d5c0['on'](_0x1303aa['XmsbV'],()=>{_0x50b342({'status':'not_installed'});}),_0x47d5c0['on']('close',_0xd16955=>{const _0x113a9b=_0x372b47;if(_0xd16955!==0x0){_0x1303aa[_0x113a9b(0xe4)](_0x50b342,{'status':_0x1303aa['pQkvb']});return;}const _0x1fd650=_0x50314d[_0x113a9b(0x10c)]();let _0x230953=null;if(_0x1fd650)try{_0x230953=JSON[_0x113a9b(0xee)](_0x1fd650);}catch{const _0x290486=_0x1fd650['match'](/\{[\s\S]*\}$/);if(_0x290486)try{_0x230953=JSON['parse'](_0x290486[0x0]);}catch{_0x230953=null;}}const _0x41417f=Array['isArray'](_0x230953?.['plugin'])?_0x230953?.['plugin']:[],_0x5ef006=_0x41417f[_0x113a9b(0xe7)](_0x5a0946=>{const _0x46c6c6=_0x113a9b;if(typeof _0x5a0946!==_0x46c6c6(0xf0))return![];return _0x5a0946[_0x46c6c6(0xde)](_0x5db70f['tEPFN'])||_0x5a0946[_0x46c6c6(0xde)](_0x46c6c6(0xc0));});if(_0x5ef006){_0x1303aa['jRiIj'](_0x50b342,{'status':_0x1303aa[_0x113a9b(0xc2)],'details':_0x41417f[_0x113a9b(0xc5)]>0x0?_0x41417f['length']+'\x20plugin(s)\x20configured':undefined});return;}if(_0x41417f[_0x113a9b(0xc5)]>0x0){_0x50b342({'status':_0x113a9b(0xf6),'details':_0x41417f[_0x113a9b(0xc5)]+'\x20plugin(s)\x20configured'});return;}_0x1303aa['jRiIj'](_0x50b342,{'status':'not_configured'});});});}async function getSkillsFromDir(_0xdc7fe5,_0x1a53b6){const _0x50a75c=_0x453ebe,_0x5d393b={'BUOAM':function(_0x5459db,_0x9c3bc5,_0x1687c8){return _0x5459db(_0x9c3bc5,_0x1687c8);},'ObaEU':function(_0x492722,_0x1867e6,_0x34bdae,_0x420a94){return _0x492722(_0x1867e6,_0x34bdae,_0x420a94);}};if(!existsSync(_0xdc7fe5))return[];const _0xe6ca40=[];try{const _0x5e37d8=await _0x5d393b[_0x50a75c(0xd2)](readdir,_0xdc7fe5,{'withFileTypes':!![]});for(const _0x22c3ba of _0x5e37d8){if(_0x22c3ba[_0x50a75c(0xe1)]()){const _0x306274=_0x5d393b[_0x50a75c(0xf8)](join,_0xdc7fe5,_0x22c3ba['name'],_0x50a75c(0xfe));if(existsSync(_0x306274)){let _0x51737d=_0x22c3ba['name'];try{const _0x21d7b7=await readFile(_0x306274,'utf-8'),_0x4a37c2=_0x21d7b7['match'](/name:\s*(.+)/);_0x4a37c2&&(_0x51737d=_0x4a37c2[0x1]['trim']());}catch{}_0xe6ca40['push']({'name':_0x22c3ba[_0x50a75c(0xbf)],'displayName':_0x51737d,'path':_0x306274,'level':_0x1a53b6});}}}}catch{return[];}return _0xe6ca40;}async function getInstalledSkills(){const _0x37f52e=_0x453ebe,_0x24fb8a={'yvNVw':function(_0x4769b3){return _0x4769b3();},'iaWmr':function(_0x31bfff,_0x280b5f,_0x28325c){return _0x31bfff(_0x280b5f,_0x28325c);},'WCwUF':'user'},[_0x4fc26f,_0x13870e]=await Promise['all']([getSkillsFromDir(_0x24fb8a[_0x37f52e(0x103)](getProjectSkillsDir),_0x37f52e(0xcb)),_0x24fb8a['iaWmr'](getSkillsFromDir,_0x24fb8a['yvNVw'](getUserSkillsDir),_0x24fb8a[_0x37f52e(0x105)])]);return{'project':_0x4fc26f,'user':_0x13870e};}async function getEnvironments(){const _0x2913b4=_0x453ebe,_0x1591a0={'cARit':function(_0x4c10ed,_0x424f7c,_0x1a2b18){return _0x4c10ed(_0x424f7c,_0x1a2b18);},'ztUrK':'auth.json.enc','BbREL':'(not\x20found)','KngBs':function(_0x3dae6b,_0x59bb78){return _0x3dae6b(_0x59bb78);},'RBSlL':function(_0x253f24,_0xcba3d8){return _0x253f24===_0xcba3d8;},'qEiEg':function(_0x5146b7){return _0x5146b7();},'zalWp':function(_0x1021ff,_0x242cc5){return _0x1021ff(_0x242cc5);}},{envNames:_0x28a877,activeEnv:_0x423964}=await _0x1591a0[_0x2913b4(0xbd)](getEnvNames),_0x51c7e9=_0x1591a0['qEiEg'](getRangerDir);if(!_0x1591a0['zalWp'](existsSync,_0x51c7e9))return{'envs':[],'activeEnv':null};const _0x4ddb4e=_0x28a877['map'](_0x4b50e0=>{const _0x3d9c6b=_0x2913b4,_0xd56ea8=getEnvDir(_0x4b50e0),_0x3b6f2f=join(_0xd56ea8,_0x3d9c6b(0xfc)),_0x413822=_0x1591a0[_0x3d9c6b(0xce)](join,_0xd56ea8,_0x3d9c6b(0x108)),_0x221e18=_0x1591a0[_0x3d9c6b(0xce)](join,_0xd56ea8,_0x1591a0[_0x3d9c6b(0xf2)]);return{'name':_0x4b50e0,'settingsPath':existsSync(_0x3b6f2f)?_0x3b6f2f:_0x1591a0['BbREL'],'hasPlaintextAuth':_0x1591a0[_0x3d9c6b(0xf9)](existsSync,_0x413822),'hasEncryptedAuth':_0x1591a0[_0x3d9c6b(0xf9)](existsSync,_0x221e18),'isActive':_0x1591a0[_0x3d9c6b(0xb2)](_0x4b50e0,_0x423964)};});return{'envs':_0x4ddb4e,'activeEnv':_0x423964};}export async function status(){const _0x565cd3=_0x453ebe,_0x33cec9={'heklD':function(_0x3ad9c1,_0x13832b){return _0x3ad9c1(_0x13832b);},'QBhHZ':function(_0x535d3c,_0x3e05e0,_0x17276a){return _0x535d3c(_0x3e05e0,_0x17276a);},'nFwOZ':function(_0x34db12){return _0x34db12();},'mXvvq':function(_0x3e053a){return _0x3e053a();},'yNBiV':function(_0x4f7df2){return _0x4f7df2();},'uaFli':'\x0a---\x20OpenCode\x20Plugin\x20---','mYmfT':function(_0xd92116,_0x4fe7f9){return _0xd92116===_0x4fe7f9;},'YzkSz':'configured','xrkEn':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','dLgkl':_0x565cd3(0x102),'nctLs':_0x565cd3(0xfa),'hWALT':_0x565cd3(0xb6),'SwhuC':function(_0x349fb2,_0x201f41,_0x549435){return _0x349fb2(_0x201f41,_0x549435);},'cHIYO':'No\x20profiles\x20configured','bxvwB':'\x20(active)','NnZbA':'encrypted','pqwaI':'plaintext','DsvnW':function(_0x2375db,_0x30d52c){return _0x2375db(_0x30d52c);},'sIVRu':function(_0x47c46e,_0x12127b){return _0x47c46e!==_0x12127b;}};console['log'](_0x565cd3(0xdb));const _0x20b277=process['cwd'](),_0x1f7a1b=getRangerDir();if(!existsSync(_0x1f7a1b)){console['log'](_0x565cd3(0xbe)+link(_0x20b277,_0x33cec9[_0x565cd3(0xf5)](bold,basename(_0x20b277)))),console[_0x565cd3(0xb4)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console['log'](_0x565cd3(0xc9));return;}console[_0x565cd3(0xb4)](_0x565cd3(0xbe)+_0x33cec9[_0x565cd3(0xe0)](link,_0x20b277,_0x33cec9[_0x565cd3(0xf5)](bold,_0x33cec9['heklD'](basename,_0x20b277))));const _0x106bb6=getCurrentVersion(),_0x50a8e1=_0x33cec9[_0x565cd3(0xb1)](getLatestVersion);if(_0x50a8e1[_0x565cd3(0xd7)]&&_0x50a8e1['version']!==_0x106bb6)console[_0x565cd3(0xb4)](_0x565cd3(0x10b)+_0x106bb6+_0x565cd3(0xc7)+_0x50a8e1[_0x565cd3(0xd7)]+')'),console[_0x565cd3(0xb4)]('\x20\x20Run:\x20ranger\x20update');else _0x50a8e1[_0x565cd3(0xd7)]?console[_0x565cd3(0xb4)]('Version:\x20'+_0x106bb6+_0x565cd3(0xb0)):console['log'](_0x565cd3(0x10b)+_0x106bb6);const _0x100044=await getToken();if(_0x100044){const _0x129765=await _0x33cec9[_0x565cd3(0xf5)](getCurrentUser,_0x100044);_0x129765['success']?console[_0x565cd3(0xb4)]('Organization:\x20'+_0x33cec9[_0x565cd3(0xf5)](bold,_0x129765['user']['organizationName'])):(console['log'](_0x565cd3(0xd0)),console['log'](_0x565cd3(0xe5)));}else console['log'](_0x565cd3(0x100)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env'][_0x565cd3(0xc3)]&&(console[_0x565cd3(0xb4)]('API\x20Environment:\x20'+_0x33cec9['mXvvq'](getCurrentEnvironment)),console['log']('API\x20URL:\x20'+_0x33cec9[_0x565cd3(0xae)](getApiBaseUrl)));console[_0x565cd3(0xb4)](_0x33cec9[_0x565cd3(0xea)]);const _0x312807=await getOpencodePluginStatus();if(_0x33cec9['mYmfT'](_0x312807[_0x565cd3(0xda)],_0x33cec9[_0x565cd3(0xf1)]))console[_0x565cd3(0xb4)]('\x20\x20'+_0x33cec9['heklD'](bold,_0x565cd3(0xc8))+':\x20configured'),_0x312807[_0x565cd3(0xec)]&&console[_0x565cd3(0xb4)]('\x20\x20'+_0x312807[_0x565cd3(0xec)]);else _0x33cec9[_0x565cd3(0xd4)](_0x312807['status'],'not_configured')?(console['log'](_0x565cd3(0xfb)),_0x312807[_0x565cd3(0xec)]&&console['log']('\x20\x20'+_0x312807['details']),console[_0x565cd3(0xb4)]('\x20\x20Run:\x20ranger\x20setup\x20--opencode')):console[_0x565cd3(0xb4)](_0x33cec9['xrkEn']);console['log'](_0x565cd3(0xe6));const _0x49ef6d=await getPluginInfo(_0x33cec9[_0x565cd3(0x109)]);if(_0x49ef6d){const _0x23af4a=_0x49ef6d[_0x565cd3(0xcf)]||_0x565cd3(0xad),_0x379936=_0x49ef6d[_0x565cd3(0xd8)]?_0x565cd3(0xd8):_0x33cec9[_0x565cd3(0xb9)];console['log']('\x20\x20'+bold(_0x33cec9[_0x565cd3(0x109)])+_0x565cd3(0xdf)+_0x23af4a+',\x20'+_0x379936+')');}else console['log'](_0x565cd3(0xb8)),console['log'](_0x565cd3(0x104));console['log'](_0x565cd3(0xe2));const {project:_0x3e351f,user:_0xf5dce1}=await _0x33cec9[_0x565cd3(0xb1)](getInstalledSkills),_0x3c4fa3=_0x3e351f['filter'](_0x42deb3=>RANGER_MANAGED_SKILLS[_0x565cd3(0xde)](_0x42deb3['name'])),_0x2a1454=_0xf5dce1['filter'](_0xbdf40=>RANGER_MANAGED_SKILLS['includes'](_0xbdf40[_0x565cd3(0xbf)])),_0x1e06e3=_0x3c4fa3[_0x565cd3(0xc5)]+_0x2a1454[_0x565cd3(0xc5)];if(_0x33cec9[_0x565cd3(0xd4)](_0x1e06e3,0x0))console[_0x565cd3(0xb4)](_0x33cec9['hWALT']),console[_0x565cd3(0xb4)]('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x3c4fa3['length']>0x0){console['log'](_0x565cd3(0xff));for(const _0x5d0eda of _0x3c4fa3){console[_0x565cd3(0xb4)](_0x565cd3(0xc6)+bold(_0x5d0eda[_0x565cd3(0xdc)])+':\x20'+link(_0x5d0eda['path'],_0x33cec9['heklD'](basename,_0x5d0eda[_0x565cd3(0xfd)])));}}if(_0x2a1454['length']>0x0){console[_0x565cd3(0xb4)]('\x20\x20User-level:');for(const _0x1b9944 of _0x2a1454){console[_0x565cd3(0xb4)]('\x20\x20\x20\x20'+_0x33cec9[_0x565cd3(0xf5)](bold,_0x1b9944[_0x565cd3(0xdc)])+':\x20'+_0x33cec9[_0x565cd3(0xeb)](link,_0x1b9944[_0x565cd3(0xfd)],_0x33cec9['heklD'](basename,_0x1b9944['path'])));}}}console['log']('\x0a---\x20Profiles\x20---');const {envs:_0x1965b8,activeEnv:_0x42b65e}=await _0x33cec9[_0x565cd3(0xae)](getEnvironments);if(_0x1965b8['length']===0x0)console[_0x565cd3(0xb4)](_0x33cec9[_0x565cd3(0xbc)]),console[_0x565cd3(0xb4)]('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{for(const _0x3b2d64 of _0x1965b8){const _0x155a78=_0x3b2d64['isActive']?_0x33cec9['bxvwB']:'',_0x438156=_0x3b2d64['hasEncryptedAuth']?_0x33cec9[_0x565cd3(0xd5)]:_0x3b2d64[_0x565cd3(0xf4)]?_0x33cec9[_0x565cd3(0xef)]:'none';console[_0x565cd3(0xb4)]('\x20\x20'+_0x33cec9[_0x565cd3(0xf7)](bold,_0x3b2d64[_0x565cd3(0xbf)])+_0x155a78),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x438156),_0x33cec9[_0x565cd3(0xd6)](_0x3b2d64['settingsPath'],_0x565cd3(0xb7))&&console[_0x565cd3(0xb4)](_0x565cd3(0xd1)+link(_0x3b2d64[_0x565cd3(0xb3)],_0x33cec9['heklD'](basename,_0x3b2d64['settingsPath'])));}!_0x42b65e&&(console[_0x565cd3(0xb4)]('\x0a\x20\x20No\x20active\x20profile\x20set'),console['log'](_0x565cd3(0xca)+_0x1965b8[_0x565cd3(0xcc)](_0x233e93=>_0x233e93[_0x565cd3(0xbf)])['join'](',\x20')+')'));}console[_0x565cd3(0xb4)]('');}
1
+ const _0x5a5d42=_0x2fca;(function(_0x4b5dca,_0x715065){const _0x2e32fe=_0x2fca,_0x222539=_0x4b5dca();while(!![]){try{const _0x826251=-parseInt(_0x2e32fe(0x1ad))/0x1*(parseInt(_0x2e32fe(0x198))/0x2)+parseInt(_0x2e32fe(0x18c))/0x3+-parseInt(_0x2e32fe(0x1c0))/0x4*(-parseInt(_0x2e32fe(0x18d))/0x5)+parseInt(_0x2e32fe(0x19f))/0x6*(-parseInt(_0x2e32fe(0x1b1))/0x7)+-parseInt(_0x2e32fe(0x1a5))/0x8+parseInt(_0x2e32fe(0x1c3))/0x9+-parseInt(_0x2e32fe(0x171))/0xa*(-parseInt(_0x2e32fe(0x197))/0xb);if(_0x826251===_0x715065)break;else _0x222539['push'](_0x222539['shift']());}catch(_0x4a148c){_0x222539['push'](_0x222539['shift']());}}}(_0x2a16,0xb1aed));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';function _0x2fca(_0x15822f,_0x5362f3){_0x15822f=_0x15822f-0x16d;const _0x2a1601=_0x2a16();let _0x2fca55=_0x2a1601[_0x15822f];return _0x2fca55;}const bold=_0x4e596f=>'\x1b[1m'+_0x4e596f+'\x1b[0m',link=(_0x2d47f9,_0x437f9e)=>'\x1b]8;;file://'+_0x2d47f9+'\x07'+(_0x437f9e||_0x2d47f9)+_0x5a5d42(0x1bf);async function getOpencodePluginStatus(){const _0xdd906f=_0x5a5d42,_0xeaf9d2={'sNkzt':function(_0x25c6c2,_0x2ac70e){return _0x25c6c2(_0x2ac70e);},'oeeVx':'not_installed','kkOYY':_0xdd906f(0x1ab),'Dmmnm':function(_0x5afcf8,_0x592f55){return _0x5afcf8>_0x592f55;},'XFTZc':'not_configured','FDaHz':function(_0x3dbe8a,_0xb02239){return _0x3dbe8a(_0xb02239);},'OoLQX':'string','ltkqR':function(_0x10fca2,_0x57c0f7,_0x5bee97,_0x18741d){return _0x10fca2(_0x57c0f7,_0x5bee97,_0x18741d);},'JtqLd':'debug','ChnUd':_0xdd906f(0x1ce),'PCyGb':_0xdd906f(0x18e),'dCjqm':_0xdd906f(0x176),'fjHMI':'error','OBFwQ':'close'};return new Promise(_0x15dead=>{const _0x23f6ce=_0xdd906f,_0x3fd8ea={'yrdMA':_0xeaf9d2['OoLQX'],'URVmP':'opencode-plugin'},_0x2d6f00=_0xeaf9d2[_0x23f6ce(0x1b4)](spawn,_0x23f6ce(0x17c),[_0xeaf9d2['JtqLd'],_0xeaf9d2[_0x23f6ce(0x1c7)]],{'stdio':[_0xeaf9d2['PCyGb'],_0xeaf9d2[_0x23f6ce(0x18f)],_0x23f6ce(0x176)]});let _0xb16422='';_0x2d6f00['stdout']?.['on'](_0x23f6ce(0x1b6),_0x1cd2a0=>{const _0x4e67bb=_0x23f6ce;_0xb16422+=_0x1cd2a0[_0x4e67bb(0x1ca)]();}),_0x2d6f00['stderr']?.['on'](_0x23f6ce(0x1b6),_0x39143a=>{_0xb16422+=_0x39143a['toString']();}),_0x2d6f00['on'](_0xeaf9d2['fjHMI'],()=>{const _0x38c0b4=_0x23f6ce;_0xeaf9d2['sNkzt'](_0x15dead,{'status':_0xeaf9d2[_0x38c0b4(0x190)]});}),_0x2d6f00['on'](_0xeaf9d2[_0x23f6ce(0x184)],_0x34e4f9=>{const _0x28876a=_0x23f6ce;if(_0x34e4f9!==0x0){_0xeaf9d2['sNkzt'](_0x15dead,{'status':_0xeaf9d2['oeeVx']});return;}const _0x27cddd=_0xb16422[_0x28876a(0x1c8)]();let _0x4920ab=null;if(_0x27cddd)try{_0x4920ab=JSON['parse'](_0x27cddd);}catch{const _0xc2f076=_0x27cddd['match'](/\{[\s\S]*\}$/);if(_0xc2f076)try{_0x4920ab=JSON['parse'](_0xc2f076[0x0]);}catch{_0x4920ab=null;}}const _0x131ffb=Array['isArray'](_0x4920ab?.['plugin'])?_0x4920ab?.['plugin']:[],_0x22e443=_0x131ffb['some'](_0x84712e=>{const _0x1000e0=_0x28876a;if(typeof _0x84712e!==_0x3fd8ea[_0x1000e0(0x1c1)])return![];return _0x84712e[_0x1000e0(0x174)](_0x1000e0(0x1bc))||_0x84712e['includes'](_0x3fd8ea['URVmP']);});if(_0x22e443){_0xeaf9d2['sNkzt'](_0x15dead,{'status':_0xeaf9d2['kkOYY'],'details':_0xeaf9d2[_0x28876a(0x1a3)](_0x131ffb[_0x28876a(0x17e)],0x0)?_0x131ffb['length']+'\x20plugin(s)\x20configured':undefined});return;}if(_0x131ffb[_0x28876a(0x17e)]>0x0){_0xeaf9d2['sNkzt'](_0x15dead,{'status':_0xeaf9d2['XFTZc'],'details':_0x131ffb['length']+_0x28876a(0x1c6)});return;}_0xeaf9d2['FDaHz'](_0x15dead,{'status':_0xeaf9d2['XFTZc']});});});}async function getSkillsFromDir(_0x5872be,_0x16dd44){const _0x62c79a=_0x5a5d42,_0x24636e={'JBrEU':function(_0x12d79a,_0x285df1,_0x40b7db){return _0x12d79a(_0x285df1,_0x40b7db);}};if(!existsSync(_0x5872be))return[];const _0x3194fc=[];try{const _0x2fa6d1=await readdir(_0x5872be,{'withFileTypes':!![]});for(const _0x25e348 of _0x2fa6d1){if(_0x25e348['isDirectory']()){const _0x32ea26=join(_0x5872be,_0x25e348['name'],_0x62c79a(0x182));if(existsSync(_0x32ea26)){let _0x196461=_0x25e348['name'];try{const _0x5e689f=await _0x24636e[_0x62c79a(0x19b)](readFile,_0x32ea26,_0x62c79a(0x192)),_0x2b67e8=_0x5e689f[_0x62c79a(0x19d)](/name:\s*(.+)/);_0x2b67e8&&(_0x196461=_0x2b67e8[0x1]['trim']());}catch{}_0x3194fc[_0x62c79a(0x193)]({'name':_0x25e348['name'],'displayName':_0x196461,'path':_0x32ea26,'level':_0x16dd44});}}}}catch{return[];}return _0x3194fc;}function _0x2a16(){const _0x7e929d=['NpnoV','JBrEU','API\x20Environment:\x20','match','env','3624VNGAkS','\x20\x20Run:\x20ranger\x20setup\x20--opencode','settingsPath','path','Dmmnm','map','6276600CepJdF','OHhVX','organizationName','VDlYI','SEkXb','\x0a📊\x20Ranger\x20Status\x0a','configured','log','289763rllVwm','\x20(up\x20to\x20date)','hasPlaintextAuth','details','7672FSVBjm','name','ranger@trailhead','ltkqR','PyMPG','data','RrLZi','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','project','\x20\x20\x20\x20Settings:\x20','not_configured','@ranger-testing/opencode-plugin','filter','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','\x1b]8;;\x07','92Ukihhx','yrdMA','\x20\x20Not\x20configured','2729781BEUZRj','jEhiG','rLYpU','\x20plugin(s)\x20configured','ChnUd','trim','auth.json.enc','toString','XelSQ','none','DEBUG','config','user','(not\x20found)',':\x20configured','RSyGN','10672510vDJDuD','KJrhs','No\x20profiles\x20configured','includes','IaySl','pipe','\x20\x20\x20\x20','Root:\x20','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','\x20(latest:\x20','enabled','opencode','all','length','cedDO','\x0a---\x20OpenCode\x20Plugin\x20---','zentB','SKILL.md','settings.json','OBFwQ','Version:\x20','version','Lqzrp','displayName','\x20\x20Run:\x20ranger\x20setup\x20[token]','hasEncryptedAuth','cwd','3917232VYFxPH','79855JXDlVB','ignore','dCjqm','oeeVx','auth.json','utf-8','push','Wusvf','\x20\x20\x20\x20Auth:\x20','zlVEv','11oDvXjJ','6oCGCJj','\x20(active)'];_0x2a16=function(){return _0x7e929d;};return _0x2a16();}async function getInstalledSkills(){const _0x3fef9c=_0x5a5d42,_0x1014f3={'XelSQ':_0x3fef9c(0x1b9),'Wusvf':function(_0x5de053,_0x39b475,_0x126f0e){return _0x5de053(_0x39b475,_0x126f0e);},'MlIOC':function(_0x683ab9){return _0x683ab9();},'XLtky':_0x3fef9c(0x16d)},[_0x422b8e,_0x4a3e31]=await Promise[_0x3fef9c(0x17d)]([getSkillsFromDir(getProjectSkillsDir(),_0x1014f3[_0x3fef9c(0x1cb)]),_0x1014f3[_0x3fef9c(0x194)](getSkillsFromDir,_0x1014f3['MlIOC'](getUserSkillsDir),_0x1014f3['XLtky'])]);return{'project':_0x422b8e,'user':_0x4a3e31};}async function getEnvironments(){const _0x5d9b4d=_0x5a5d42,_0x300f09={'zlVEv':function(_0x3ee428,_0x5debb0){return _0x3ee428(_0x5debb0);},'HgOSw':function(_0x1ddbe7,_0x32a104,_0x59ed52){return _0x1ddbe7(_0x32a104,_0x59ed52);},'jEhiG':_0x5d9b4d(0x191),'CVKvj':function(_0x30428e,_0x1815d1){return _0x30428e===_0x1815d1;},'NpnoV':function(_0x2eb698){return _0x2eb698();}},{envNames:_0x2ed1e1,activeEnv:_0x456738}=await getEnvNames(),_0x5501d5=_0x300f09[_0x5d9b4d(0x19a)](getRangerDir);if(!existsSync(_0x5501d5))return{'envs':[],'activeEnv':null};const _0x46b0ed=_0x2ed1e1[_0x5d9b4d(0x1a4)](_0x29e0f6=>{const _0x364e24=_0x5d9b4d,_0x4b7275=_0x300f09[_0x364e24(0x196)](getEnvDir,_0x29e0f6),_0x516cb1=join(_0x4b7275,_0x364e24(0x183)),_0xc834e1=_0x300f09['HgOSw'](join,_0x4b7275,_0x300f09[_0x364e24(0x1c4)]),_0x59b308=_0x300f09['HgOSw'](join,_0x4b7275,_0x364e24(0x1c9));return{'name':_0x29e0f6,'settingsPath':_0x300f09[_0x364e24(0x196)](existsSync,_0x516cb1)?_0x516cb1:_0x364e24(0x16e),'hasPlaintextAuth':existsSync(_0xc834e1),'hasEncryptedAuth':existsSync(_0x59b308),'isActive':_0x300f09['CVKvj'](_0x29e0f6,_0x456738)};});return{'envs':_0x46b0ed,'activeEnv':_0x456738};}export async function status(){const _0x1c18a0=_0x5a5d42,_0x5703d5={'XkIkJ':_0x1c18a0(0x1aa),'zentB':function(_0x50cf09,_0x375eed,_0x163d57){return _0x50cf09(_0x375eed,_0x163d57);},'dlSAt':function(_0x38e67b,_0x21188b){return _0x38e67b(_0x21188b);},'VDlYI':function(_0x9fcb9b){return _0x9fcb9b();},'RrLZi':function(_0x1920c1,_0x565476){return _0x1920c1===_0x565476;},'AmIny':'configured','PTWTp':_0x1c18a0(0x1bc),'SEkXb':_0x1c18a0(0x1bb),'Fxzfz':_0x1c18a0(0x1a0),'ZyDON':_0x1c18a0(0x1b3),'OHhVX':function(_0x4b28c7,_0x3daa79){return _0x4b28c7(_0x3daa79);},'WLYGk':_0x1c18a0(0x1be),'VFzde':function(_0x5a98c4,_0x18cd97){return _0x5a98c4+_0x18cd97;},'PyMPG':'No\x20skills\x20installed','RSyGN':function(_0x351822,_0x419432){return _0x351822>_0x419432;},'WlJQY':'\x20\x20Project-level:','Lqzrp':'\x20\x20User-level:','znvNy':function(_0x2fa884,_0x4a57f3){return _0x2fa884(_0x4a57f3);},'rLYpU':_0x1c18a0(0x199),'IaySl':'plaintext','lzZGY':_0x1c18a0(0x1cc),'tBmtw':function(_0x24d4c0,_0x5086ac){return _0x24d4c0(_0x5086ac);},'cedDO':function(_0x167d3c,_0x3a80c8){return _0x167d3c!==_0x3a80c8;},'KJrhs':'(not\x20found)'};console['log'](_0x5703d5['XkIkJ']);const _0x1c751d=process[_0x1c18a0(0x18b)](),_0x22255d=getRangerDir();if(!existsSync(_0x22255d)){console[_0x1c18a0(0x1ac)]('Root:\x20'+link(_0x1c751d,bold(basename(_0x1c751d)))),console[_0x1c18a0(0x1ac)](_0x1c18a0(0x179)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console['log'](_0x1c18a0(0x178)+_0x5703d5['zentB'](link,_0x1c751d,bold(_0x5703d5['dlSAt'](basename,_0x1c751d))));const _0x324a5d=getCurrentVersion(),_0x64338f=getLatestVersion();if(_0x64338f['version']&&_0x64338f['version']!==_0x324a5d)console['log']('Version:\x20'+_0x324a5d+_0x1c18a0(0x17a)+_0x64338f[_0x1c18a0(0x186)]+')'),console[_0x1c18a0(0x1ac)]('\x20\x20Run:\x20ranger\x20update');else _0x64338f[_0x1c18a0(0x186)]?console[_0x1c18a0(0x1ac)]('Version:\x20'+_0x324a5d+_0x1c18a0(0x1ae)):console['log'](_0x1c18a0(0x185)+_0x324a5d);const _0x19a246=await getToken();if(_0x19a246){const _0x5bbf7b=await getCurrentUser(_0x19a246);_0x5bbf7b['success']?console['log']('Organization:\x20'+bold(_0x5bbf7b['user'][_0x1c18a0(0x1a7)])):(console[_0x1c18a0(0x1ac)](_0x1c18a0(0x1b8)),console[_0x1c18a0(0x1ac)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x1c18a0(0x1ac)]('API\x20Token:\x20✗\x20Not\x20found'),console['log'](_0x1c18a0(0x189));process[_0x1c18a0(0x19e)][_0x1c18a0(0x1cd)]&&(console['log'](_0x1c18a0(0x19c)+getCurrentEnvironment()),console[_0x1c18a0(0x1ac)]('API\x20URL:\x20'+_0x5703d5['VDlYI'](getApiBaseUrl)));console['log'](_0x1c18a0(0x180));const _0x57abe3=await getOpencodePluginStatus();if(_0x5703d5['RrLZi'](_0x57abe3['status'],_0x5703d5['AmIny']))console[_0x1c18a0(0x1ac)]('\x20\x20'+bold(_0x5703d5['PTWTp'])+_0x1c18a0(0x16f)),_0x57abe3[_0x1c18a0(0x1b0)]&&console[_0x1c18a0(0x1ac)]('\x20\x20'+_0x57abe3[_0x1c18a0(0x1b0)]);else _0x5703d5['RrLZi'](_0x57abe3['status'],_0x5703d5[_0x1c18a0(0x1a9)])?(console['log'](_0x1c18a0(0x1c2)),_0x57abe3['details']&&console['log']('\x20\x20'+_0x57abe3['details']),console['log'](_0x5703d5['Fxzfz'])):console['log']('\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available');console['log']('\x0a---\x20Claude\x20Code\x20Plugin\x20---');const _0x59a33b=await getPluginInfo(_0x5703d5['ZyDON']);if(_0x59a33b){const _0x5c73e3=_0x59a33b['scope']||'unknown',_0x53233d=_0x59a33b[_0x1c18a0(0x17b)]?'enabled':'disabled';console['log']('\x20\x20'+_0x5703d5[_0x1c18a0(0x1a6)](bold,_0x1c18a0(0x1b3))+':\x20installed\x20('+_0x5c73e3+',\x20'+_0x53233d+')');}else console['log']('\x20\x20Not\x20installed'),console['log'](_0x5703d5['WLYGk']);console['log']('\x0a---\x20Skills\x20---');const {project:_0x413c10,user:_0x374082}=await _0x5703d5['VDlYI'](getInstalledSkills),_0x4345f2=_0x413c10[_0x1c18a0(0x1bd)](_0xcefe1a=>RANGER_MANAGED_SKILLS[_0x1c18a0(0x174)](_0xcefe1a[_0x1c18a0(0x1b2)])),_0x2c893c=_0x374082[_0x1c18a0(0x1bd)](_0x1ae0d0=>RANGER_MANAGED_SKILLS['includes'](_0x1ae0d0['name'])),_0x189a4d=_0x5703d5['VFzde'](_0x4345f2[_0x1c18a0(0x17e)],_0x2c893c[_0x1c18a0(0x17e)]);if(_0x5703d5[_0x1c18a0(0x1b7)](_0x189a4d,0x0))console[_0x1c18a0(0x1ac)](_0x5703d5[_0x1c18a0(0x1b5)]),console[_0x1c18a0(0x1ac)]('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x5703d5[_0x1c18a0(0x170)](_0x4345f2[_0x1c18a0(0x17e)],0x0)){console['log'](_0x5703d5['WlJQY']);for(const _0x490a0d of _0x4345f2){console['log']('\x20\x20\x20\x20'+bold(_0x490a0d[_0x1c18a0(0x188)])+':\x20'+link(_0x490a0d['path'],basename(_0x490a0d[_0x1c18a0(0x1a2)])));}}if(_0x2c893c['length']>0x0){console[_0x1c18a0(0x1ac)](_0x5703d5[_0x1c18a0(0x187)]);for(const _0x38da4f of _0x2c893c){console[_0x1c18a0(0x1ac)](_0x1c18a0(0x177)+_0x5703d5['OHhVX'](bold,_0x38da4f[_0x1c18a0(0x188)])+':\x20'+_0x5703d5[_0x1c18a0(0x181)](link,_0x38da4f['path'],_0x5703d5['znvNy'](basename,_0x38da4f[_0x1c18a0(0x1a2)])));}}}console['log']('\x0a---\x20Profiles\x20---');const {envs:_0x2d9753,activeEnv:_0x272931}=await _0x5703d5[_0x1c18a0(0x1a8)](getEnvironments);if(_0x2d9753['length']===0x0)console['log'](_0x1c18a0(0x173)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{for(const _0x282273 of _0x2d9753){const _0x252520=_0x282273['isActive']?_0x5703d5[_0x1c18a0(0x1c5)]:'',_0x2c9aa8=_0x282273[_0x1c18a0(0x18a)]?'encrypted':_0x282273[_0x1c18a0(0x1af)]?_0x5703d5[_0x1c18a0(0x175)]:_0x5703d5['lzZGY'];console['log']('\x20\x20'+_0x5703d5['tBmtw'](bold,_0x282273['name'])+_0x252520),console['log'](_0x1c18a0(0x195)+_0x2c9aa8),_0x5703d5[_0x1c18a0(0x17f)](_0x282273['settingsPath'],_0x5703d5[_0x1c18a0(0x172)])&&console['log'](_0x1c18a0(0x1ba)+_0x5703d5[_0x1c18a0(0x181)](link,_0x282273[_0x1c18a0(0x1a1)],basename(_0x282273['settingsPath'])));}!_0x272931&&(console['log']('\x0a\x20\x20No\x20active\x20profile\x20set'),console[_0x1c18a0(0x1ac)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x2d9753['map'](_0x3b83f7=>_0x3b83f7['name'])['join'](',\x20')+')'));}console[_0x1c18a0(0x1ac)]('');}
@@ -1 +1 @@
1
- (function(_0x178ce8,_0x4cda46){const _0x5e68d8=_0x486a,_0x566567=_0x178ce8();while(!![]){try{const _0x4c042e=-parseInt(_0x5e68d8(0xfa))/0x1*(-parseInt(_0x5e68d8(0xd2))/0x2)+parseInt(_0x5e68d8(0xfe))/0x3+-parseInt(_0x5e68d8(0x10f))/0x4*(-parseInt(_0x5e68d8(0x10b))/0x5)+parseInt(_0x5e68d8(0xd3))/0x6*(-parseInt(_0x5e68d8(0xec))/0x7)+-parseInt(_0x5e68d8(0x102))/0x8*(parseInt(_0x5e68d8(0xde))/0x9)+parseInt(_0x5e68d8(0xf0))/0xa*(parseInt(_0x5e68d8(0xf5))/0xb)+-parseInt(_0x5e68d8(0xf3))/0xc;if(_0x4c042e===_0x4cda46)break;else _0x566567['push'](_0x566567['shift']());}catch(_0x4af16d){_0x566567['push'](_0x566567['shift']());}}}(_0x4e1e,0xd64a8));import{spawn}from'child_process';import{existsSync}from'fs';import{readFile,writeFile}from'fs/promises';import{installSkill,removeSkill,RANGER_MANAGED_SKILLS,DEPRECATED_SKILLS}from'./utils/skills.js';import{PACKAGE_NAME,getCurrentVersion,getLatestVersion,compareVersions}from'./utils/version.js';import{getSkillsDir}from'./utils/claudeConfig.js';import{getOpencodeSkillsDir}from'./utils/opencodeConfig.js';function _0x486a(_0x5d8b9f,_0x2134e6){_0x5d8b9f=_0x5d8b9f-0xca;const _0x4e1ef7=_0x4e1e();let _0x486a95=_0x4e1ef7[_0x5d8b9f];return _0x486a95;}import{join}from'path';import{migrateActiveProfileFile}from'./utils/activeProfile.js';function _0x4e1e(){const _0x3f125c=['utf-8','trailhead','\x0aCurrent\x20version:\x20','1328oZeBVS','\x20skill\x20','findIndex','wJItS','error','Irklv','ranger@trailhead','Update\x20failed:\x20','\x0aCould\x20not\x20check\x20latest\x20version:\x20','\x0aClaude\x20plugin\x20updated\x20(project\x20scope).','push','TwecU','iOYvT','project','lCseI','\x20ranger-managed\x20skill(s)...','Prerelease\x20channel\x20detected\x20(@','nKbFz','trim','log','update','\x20scope\x20(timed\x20out,\x20failed\x20to\x20start,\x20or\x20exited\x20with\x20a\x20non-zero\x20status).','4rnCtZl','13092BEUBXr','\x0aClaude\x20marketplace\x20updated\x20(trailhead).','yIGMD','win32','\x0aReinstalling\x20','ZneEt','kAxHB','Claude\x20marketplace\x20update\x20command\x20failed\x20(timed\x20out,\x20failed\x20to\x20start,\x20or\x20exited\x20with\x20a\x20non-zero\x20status).','pHilC','adLzK','kill','68247xuaYwv','DVkdK','\x0aYou\x20are\x20already\x20on\x20the\x20latest\x20version.','Latest\x20version:\x20\x20','xdeCI','KSrNE','✓\x20Migrated\x20active\x20profile\x20file','txhhc','plugin','Update\x20failed\x20for\x20@','aSZsL','inherit','ignore','opencode','917ATKfjQ','warn','npm','Checking\x20for\x20updates...','14681310VLPnCM','user','Claude\x20plugin\x20update\x20failed\x20for\x20','28497864MPSLpi','mtPSF','11qqJhEh','active-profile.txt','latest','\x0aNo\x20ranger-managed\x20skills\x20found\x20to\x20reinstall.','cIxqE','185951uQiYMs','mZVTf','dBMdP','length','1667214SiKTQr','kFncy','unref','stdio','584JUCoIT','\x20—\x20reinstalling\x20@','endsWith','claude','SJknJ','HvMln','kkRHV','version','hwKuY','25545KCdhfR'];_0x4e1e=function(){return _0x3f125c;};return _0x4e1e();}import{getRangerDir}from'./utils/rangerRoot.js';import{getPluginInfo,isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';const CLAUDE_COMMAND_TIMEOUT_MS=0x1d4c0;async function runCommand(_0x46e086,_0x1cd8c8,_0x209918){const _0x1eaecf=_0x486a,_0x158e09={'wJItS':function(_0x181222,_0x536ee8,_0x3775bc,_0x309e3b){return _0x181222(_0x536ee8,_0x3775bc,_0x309e3b);},'dWmOG':'inherit','HvMln':_0x1eaecf(0xd6),'cIxqE':'close','WKGjz':_0x1eaecf(0x113)};return new Promise(_0x5bc3ff=>{const _0x4f729c=_0x1eaecf,_0xa748a5={'tiwZm':function(_0x46790c,_0x37113a){return _0x46790c(_0x37113a);},'TkaOy':function(_0x35f5a4,_0x1089f1){return _0x35f5a4(_0x1089f1);},'fyZhc':function(_0x5ee81d,_0x4cf5d4){return _0x5ee81d(_0x4cf5d4);}};let _0x4dd37f=![],_0x1708a7;const _0x2ce883=_0x58f1a2=>{if(_0x4dd37f)return;_0x4dd37f=!![],_0x1708a7&&_0xa748a5['tiwZm'](clearTimeout,_0x1708a7),_0xa748a5['TkaOy'](_0x5bc3ff,_0x58f1a2);},_0x435a63=_0x158e09[_0x4f729c(0x112)](spawn,_0x46e086,_0x1cd8c8,{'stdio':[_0x4f729c(0xea),_0x209918?.['stdio']??_0x4f729c(0xe9),_0x209918?.[_0x4f729c(0x101)]??_0x158e09['dWmOG']],'shell':process['platform']===_0x158e09[_0x4f729c(0x107)]});_0x1708a7=_0x209918?.['timeoutMs']?setTimeout(()=>{const _0x513c69=_0x4f729c;_0x435a63[_0x513c69(0xdd)](),_0x435a63[_0x513c69(0x100)](),_0xa748a5['fyZhc'](_0x2ce883,![]);},_0x209918['timeoutMs']):undefined,_0x435a63['on'](_0x158e09[_0x4f729c(0xf9)],_0x56e5c7=>{_0xa748a5['fyZhc'](_0x2ce883,_0x56e5c7===0x0);}),_0x435a63['on'](_0x158e09['WKGjz'],()=>{_0x2ce883(![]);});});}export function resolveDistTag(_0xb78637){const _0x24f2bd={'qlDqq':'beta'};if(/-alpha\./i['test'](_0xb78637))return'alpha';if(/-beta\./i['test'](_0xb78637))return _0x24f2bd['qlDqq'];if(/-rc\./i['test'](_0xb78637))return'rc';return'latest';}async function runInstall(_0x3c14e1='latest'){const _0x3f4723={'dddAm':'install','mZVTf':'error'};return new Promise(_0x5e4c0b=>{const _0x24e3b7=_0x486a,_0x225235={'aSZsL':function(_0x485380,_0x24b3f3){return _0x485380===_0x24b3f3;}};console[_0x24e3b7(0xcf)]('\x0aInstalling\x20'+PACKAGE_NAME+'@'+_0x3c14e1+'...\x0a');const _0x1fbb18=spawn(_0x24e3b7(0xee),[_0x3f4723['dddAm'],'-g',PACKAGE_NAME+'@'+_0x3c14e1],{'stdio':[_0x24e3b7(0xea),_0x24e3b7(0xe9),_0x24e3b7(0xe9)],'shell':process['platform']==='win32'});_0x1fbb18['on']('close',_0x2f2396=>{const _0x1fda6e=_0x24e3b7;_0x5e4c0b(_0x225235[_0x1fda6e(0xe8)](_0x2f2396,0x0));}),_0x1fbb18['on'](_0x3f4723[_0x24e3b7(0xfb)],()=>{_0x5e4c0b(![]);});});}async function updateClaudeMarketplace(){const _0x175633=_0x486a,_0xd46ad5={'pHilC':_0x175633(0x105),'IusUL':'marketplace','mDMrY':'update','TwecU':_0x175633(0x10d)},_0x31629f=await runCommand(_0xd46ad5[_0x175633(0xdb)],['plugin',_0xd46ad5['IusUL'],_0xd46ad5['mDMrY'],_0xd46ad5[_0x175633(0x11a)]],{'timeoutMs':CLAUDE_COMMAND_TIMEOUT_MS});if(!_0x31629f)throw new Error(_0x175633(0xda));}async function updateClaudePlugin(_0x3de81c){const _0x4ed112=_0x486a,_0x54a5fd={'xSWkB':_0x4ed112(0xe6),'ZneEt':function(_0x2831cb,_0x17d820){return _0x2831cb??_0x17d820;}},_0x52ab59=[_0x54a5fd['xSWkB'],_0x4ed112(0xd0),_0x4ed112(0x115)];_0x3de81c&&_0x52ab59['push']('--scope',_0x3de81c);const _0x9ca751=await runCommand(_0x4ed112(0x105),_0x52ab59,{'timeoutMs':CLAUDE_COMMAND_TIMEOUT_MS});if(!_0x9ca751){const _0xae5670=_0x54a5fd[_0x4ed112(0xd8)](_0x3de81c,'user');throw new Error(_0x4ed112(0xf2)+_0xae5670+_0x4ed112(0xd1));}}function isSkillInstalled(_0x3699e5,_0x599606,_0xb97050){const _0x58a260=_0x486a,_0x23d230={'txhhc':'opencode','jrcYX':function(_0x2f87a8,_0x4f9264,_0x33b823){return _0x2f87a8(_0x4f9264,_0x33b823);},'iOYvT':function(_0x238989,_0x282724){return _0x238989(_0x282724);}},_0x423a53=_0xb97050===_0x23d230[_0x58a260(0xe5)]?getOpencodeSkillsDir(_0x599606):getSkillsDir(_0x599606),_0x4a3f95=_0x23d230['jrcYX'](join,_0x423a53,_0x3699e5);return _0x23d230[_0x58a260(0x11b)](existsSync,_0x4a3f95);}async function reinstallSkills(_0x5311f4){const _0x5b5e0f=_0x486a,_0x4f372e={'kkRHV':_0x5b5e0f(0xf1),'kAxHB':function(_0x4cb474,_0x212124,_0x25d61c,_0x5843df){return _0x4cb474(_0x212124,_0x25d61c,_0x5843df);},'adLzK':'claude','xdeCI':function(_0x37e022,_0x4e98bb,_0x7bc151){return _0x37e022(_0x4e98bb,_0x7bc151);},'klXxl':function(_0x3cdcdb,_0x1ec8e4){return _0x3cdcdb===_0x1ec8e4;},'rfqmL':function(_0x6e69c8,_0x13be5c,_0x3d823f){return _0x6e69c8(_0x13be5c,_0x3d823f);}},_0x3d41f8=[_0x5b5e0f(0x11c),_0x4f372e[_0x5b5e0f(0x108)]],_0x591e5e=[];for(const _0x3cca8d of _0x3d41f8){for(const _0x2a69fc of RANGER_MANAGED_SKILLS){_0x4f372e['kAxHB'](isSkillInstalled,_0x2a69fc,_0x3cca8d,_0x4f372e[_0x5b5e0f(0xdc)])&&_0x591e5e[_0x5b5e0f(0x119)]({'skillName':_0x2a69fc,'level':_0x3cca8d,'platform':_0x4f372e['adLzK']}),_0x4f372e[_0x5b5e0f(0xd9)](isSkillInstalled,_0x2a69fc,_0x3cca8d,'opencode')&&_0x591e5e['push']({'skillName':_0x2a69fc,'level':_0x3cca8d,'platform':_0x5b5e0f(0xeb)});}}for(const _0x1ce893 of _0x3d41f8){for(const _0xdc9135 of DEPRECATED_SKILLS){await _0x4f372e[_0x5b5e0f(0xe2)](removeSkill,_0xdc9135,_0x1ce893);}}if(_0x4f372e['klXxl'](_0x591e5e[_0x5b5e0f(0xfd)],0x0)){console[_0x5b5e0f(0xcf)](_0x5b5e0f(0xf8));return;}console['log'](_0x5b5e0f(0xd7)+_0x591e5e[_0x5b5e0f(0xfd)]+_0x5b5e0f(0xcb));for(const {skillName:_0x559c08,level:_0x42763c,platform:_0x219827}of _0x591e5e){try{await _0x4f372e['rfqmL'](installSkill,_0x559c08,{'level':_0x42763c,'cliVersion':_0x5311f4,'platform':_0x219827});}catch(_0x2346f9){console[_0x5b5e0f(0xed)]('\x20\x20Failed\x20to\x20reinstall\x20'+_0x219827+'\x20'+_0x42763c+_0x5b5e0f(0x110)+_0x559c08+':',_0x2346f9);}}}async function ensureActiveProfileGitignored(){const _0x536cea=_0x486a,_0x58234c={'hwKuY':function(_0xedfc87){return _0xedfc87();},'zNFLb':'.gitignore','qnquX':function(_0x49d723,_0x43a1c2,_0x4befd7){return _0x49d723(_0x43a1c2,_0x4befd7);},'AUDcC':function(_0x401508,_0x262269,_0x51fc6e,_0x58bf0b){return _0x401508(_0x262269,_0x51fc6e,_0x58bf0b);},'DVkdK':_0x536cea(0x10c)},_0x3435b5=join(_0x58234c[_0x536cea(0x10a)](getRangerDir),_0x58234c['zNFLb']);if(!existsSync(_0x3435b5))return![];let _0x2986e6='';try{_0x2986e6=await _0x58234c['qnquX'](readFile,_0x3435b5,_0x536cea(0x10c));}catch{return![];}const _0x151fbe=_0x2986e6['split'](/\r?\n/);if(_0x151fbe['some'](_0x598d66=>_0x598d66[_0x536cea(0xce)]()===_0x536cea(0xf6)))return![];let _0x59d0f0=_0x151fbe[_0x536cea(0x111)](_0x4f630b=>_0x4f630b['trim']()==='active-feature.txt');_0x59d0f0===-0x1&&(_0x59d0f0=_0x151fbe[_0x536cea(0xfd)]);_0x151fbe['splice'](_0x59d0f0,0x0,_0x536cea(0xf6));let _0x435d62=_0x151fbe['join']('\x0a');!_0x435d62[_0x536cea(0x104)]('\x0a')&&(_0x435d62+='\x0a');try{await _0x58234c['AUDcC'](writeFile,_0x3435b5,_0x435d62,_0x58234c[_0x536cea(0xdf)]);}catch{return![];}return!![];}export async function update(){const _0x469877=_0x486a,_0x580400={'SJknJ':function(_0x22c7fc){return _0x22c7fc();},'lCseI':function(_0xceb1ae,_0xe37450){return _0xceb1ae(_0xe37450);},'nKbFz':_0x469877(0xf7),'lTijl':_0x469877(0xe4),'YRvGF':'\x0a✅\x20Update\x20complete!','Irklv':'Attempting\x20install\x20anyway...','mtPSF':function(_0x4a25ba){return _0x4a25ba();},'KSrNE':'\x0aSuccessfully\x20installed\x20latest\x20version.','GWdXY':function(_0x5a100e){return _0x5a100e();},'dBMdP':_0x469877(0xe0),'kFncy':function(_0x4a7032,_0x3b4f89){return _0x4a7032<_0x3b4f89;},'yIGMD':'Update\x20failed.','HucyM':_0x469877(0x115),'AsSiO':_0x469877(0xd4),'pZKSj':function(_0x45e4a2,_0x4221fb){return _0x45e4a2===_0x4221fb;},'XNfJk':_0x469877(0x11c)},_0x3965a7=_0x580400['SJknJ'](getCurrentVersion);console['log'](_0x469877(0x10e)+_0x3965a7);const _0x3f0540=_0x580400[_0x469877(0xca)](resolveDistTag,_0x3965a7);if(_0x3f0540!==_0x580400[_0x469877(0xcd)]){console[_0x469877(0xcf)](_0x469877(0xcc)+_0x3f0540+').\x20Staying\x20on\x20'+_0x3f0540+_0x469877(0x103)+_0x3f0540+'...');const _0x1346f8=await runInstall(_0x3f0540);if(!_0x1346f8)throw new Error(_0x469877(0xe7)+_0x3f0540+'\x20channel.');const _0x5bf39a=_0x580400['SJknJ'](getCurrentVersion);console[_0x469877(0xcf)]('\x0aSuccessfully\x20installed\x20'+PACKAGE_NAME+'@'+_0x3f0540+'.'),await _0x580400[_0x469877(0xca)](reinstallSkills,_0x5bf39a);const _0x29a751=await _0x580400['SJknJ'](migrateActiveProfileFile);_0x29a751&&console[_0x469877(0xcf)](_0x580400['lTijl']);await ensureActiveProfileGitignored(),console['log'](_0x580400['YRvGF']);return;}console[_0x469877(0xcf)](_0x469877(0xef));const _0x5f133e=getLatestVersion();let _0x388d65=_0x3965a7;if(!_0x5f133e[_0x469877(0x109)]){console['warn'](_0x469877(0x117)+_0x5f133e['error']),console['log'](_0x580400[_0x469877(0x114)]);const _0x13dc97=await _0x580400['mtPSF'](runInstall);if(_0x13dc97)console[_0x469877(0xcf)](_0x580400[_0x469877(0xe3)]),_0x388d65=_0x580400['GWdXY'](getCurrentVersion);else throw new Error(_0x469877(0x116)+_0x5f133e['error']);}else{const _0xd2560d=_0x5f133e['version'];console['log'](_0x469877(0xe1)+_0xd2560d);const _0x43809d=compareVersions(_0x3965a7,_0xd2560d);if(_0x43809d===0x0)console['log'](_0x580400[_0x469877(0xfc)]);else{if(_0x580400[_0x469877(0xff)](_0x43809d,0x0))console['log']('\x0aYour\x20version\x20('+_0x3965a7+')\x20is\x20newer\x20than\x20the\x20published\x20version\x20('+_0xd2560d+').');else{const _0x2f99a8=await _0x580400[_0x469877(0x106)](runInstall);if(_0x2f99a8)console['log']('\x0aSuccessfully\x20updated\x20to\x20version\x20'+_0xd2560d),_0x388d65=_0xd2560d;else throw new Error(_0x580400[_0x469877(0xd5)]);}}}await reinstallSkills(_0x388d65);const _0x294d3c=await isMarketplaceAdded(_0x469877(0x10d)),_0x1b3772=await isPluginInstalled(_0x580400['HucyM']);_0x294d3c&&(await updateClaudeMarketplace(),console[_0x469877(0xcf)](_0x580400['AsSiO']));if(_0x1b3772){const _0x5f152f=await getPluginInfo(_0x580400['HucyM']);_0x580400['pZKSj'](_0x5f152f?.['scope'],_0x580400['XNfJk'])?(await _0x580400['lCseI'](updateClaudePlugin,_0x469877(0x11c)),console[_0x469877(0xcf)](_0x469877(0x118))):(await updateClaudePlugin(),console['log']('\x0aClaude\x20plugin\x20updated\x20(user\x20scope).'));}const _0x3b0419=await _0x580400[_0x469877(0xf4)](migrateActiveProfileFile);_0x3b0419&&console['log'](_0x580400['lTijl']);const _0x301ebc=await _0x580400['GWdXY'](ensureActiveProfileGitignored);console[_0x469877(0xcf)]('\x0a✅\x20Update\x20complete!');}
1
+ const _0x47a9a2=_0xfe66;(function(_0x25a893,_0x5bd928){const _0x5a6875=_0xfe66,_0x20084c=_0x25a893();while(!![]){try{const _0xab1097=-parseInt(_0x5a6875(0x8d))/0x1*(parseInt(_0x5a6875(0x77))/0x2)+parseInt(_0x5a6875(0x80))/0x3+-parseInt(_0x5a6875(0x9f))/0x4*(-parseInt(_0x5a6875(0x9b))/0x5)+-parseInt(_0x5a6875(0xb7))/0x6*(parseInt(_0x5a6875(0x8a))/0x7)+parseInt(_0x5a6875(0xb8))/0x8*(-parseInt(_0x5a6875(0x96))/0x9)+-parseInt(_0x5a6875(0x7a))/0xa+parseInt(_0x5a6875(0x7c))/0xb;if(_0xab1097===_0x5bd928)break;else _0x20084c['push'](_0x20084c['shift']());}catch(_0x16377d){_0x20084c['push'](_0x20084c['shift']());}}}(_0x4c95,0x63d97));import{spawn}from'child_process';import{existsSync}from'fs';import{readFile,writeFile}from'fs/promises';import{installSkill,removeSkill,RANGER_MANAGED_SKILLS,DEPRECATED_SKILLS}from'./utils/skills.js';import{PACKAGE_NAME,getCurrentVersion,getLatestVersion,compareVersions}from'./utils/version.js';import{getProjectRoot,getSkillsDir}from'./utils/claudeConfig.js';import{getOpencodeSkillsDir}from'./utils/opencodeConfig.js';import{join}from'path';import{getRangerDir}from'./utils/rangerRoot.js';function _0xfe66(_0x485fad,_0xf43a2d){_0x485fad=_0x485fad-0x6d;const _0x4c9515=_0x4c95();let _0xfe6688=_0x4c9515[_0x485fad];return _0xfe6688;}import{getPluginInfo,isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';const CLAUDE_COMMAND_TIMEOUT_MS=0x1d4c0;async function runCommand(_0x25e701,_0x17719f,_0x59949f){const _0x18c876=_0xfe66,_0x19f81f={'AgzEi':function(_0x16ccdd,_0xcd63e2){return _0x16ccdd(_0xcd63e2);},'AkVWn':'inherit','IURYo':_0x18c876(0x93)};return new Promise(_0x2529c3=>{const _0x2d835a=_0x18c876;let _0x536286=![],_0x25f048;const _0x3aad60=_0x4a7284=>{if(_0x536286)return;_0x536286=!![],_0x25f048&&clearTimeout(_0x25f048),_0x2529c3(_0x4a7284);},_0xe4d353=spawn(_0x25e701,_0x17719f,{'stdio':[_0x2d835a(0xb3),_0x59949f?.[_0x2d835a(0xa3)]??_0x2d835a(0x97),_0x59949f?.[_0x2d835a(0xa3)]??_0x19f81f[_0x2d835a(0x6e)]],'cwd':_0x59949f?.[_0x2d835a(0x81)],'shell':process[_0x2d835a(0x79)]==='win32'});_0x25f048=_0x59949f?.[_0x2d835a(0xa4)]?setTimeout(()=>{const _0x5dcfd0=_0x2d835a;_0xe4d353[_0x5dcfd0(0xa5)](),_0xe4d353['unref'](),_0x3aad60(![]);},_0x59949f['timeoutMs']):undefined,_0xe4d353['on'](_0x2d835a(0x75),_0x4c1d4b=>{_0x19f81f['AgzEi'](_0x3aad60,_0x4c1d4b===0x0);}),_0xe4d353['on'](_0x19f81f['IURYo'],()=>{_0x3aad60(![]);});});}export function resolveDistTag(_0x65026a){const _0x2db7dd=_0xfe66,_0x1b09bd={'ckWOA':_0x2db7dd(0xb5),'ZfEOL':_0x2db7dd(0x71)};if(/-alpha\./i[_0x2db7dd(0x6f)](_0x65026a))return _0x2db7dd(0xb1);if(/-beta\./i['test'](_0x65026a))return _0x1b09bd[_0x2db7dd(0x8b)];if(/-rc\./i[_0x2db7dd(0x6f)](_0x65026a))return'rc';return _0x1b09bd['ZfEOL'];}function _0x4c95(){const _0x3ea18c=['4735014CBrHFu','271784MVvJFK','\x20channel.','opencode','.gitignore','project','wqwVg','gJtfG','active-feature.txt','AkVWn','test','UBepH','latest','log','SNqhN','\x20\x20Failed\x20to\x20reinstall\x20','close','split','46paaftI','Update\x20failed\x20for\x20@','platform','3567050UEloBA','plugin','17440093MyWPay','local','\x0aYou\x20are\x20already\x20on\x20the\x20latest\x20version.','ViIUZ','454032xOATEu','cwd','\x0aClaude\x20marketplace\x20updated\x20(trailhead).','push','active-profile.txt','\x0a✅\x20Update\x20complete!','\x20ranger-managed\x20skill(s)...','\x0aCurrent\x20version:\x20','\x0aClaude\x20plugin\x20updated\x20(user\x20scope).','trim','7LPOMWs','ckWOA','\x0aNo\x20ranger-managed\x20skills\x20found\x20to\x20reinstall.','3813yuwUMq','length','\x0aReinstalling\x20','scope','kYCuP','npm','error','fmirl','findIndex','198uGVKwl','inherit','ranger@trailhead','claude','\x0aSuccessfully\x20updated\x20to\x20version\x20','25XtltSe','\x20scope\x20(timed\x20out,\x20failed\x20to\x20start,\x20or\x20exited\x20with\x20a\x20non-zero\x20status).','trailhead','user','522524BaORYt','aqJWb','Checking\x20for\x20updates...','iMQxv','stdio','timeoutMs','kill','win32','HAsYB','cACuv','fUuYN','Latest\x20version:\x20\x20','endsWith','wryWU','qLsTA','ylycf','YXKBQ','imXCk','alpha','\x0aClaude\x20plugin\x20updated\x20(project\x20scope).','ignore','splice','beta','xRmXm'];_0x4c95=function(){return _0x3ea18c;};return _0x4c95();}async function runInstall(_0x2f1da9=_0x47a9a2(0x71)){const _0x107059=_0x47a9a2,_0x3ae029={'XsFvd':function(_0x3dad71,_0x875bd3){return _0x3dad71(_0x875bd3);},'HAsYB':_0x107059(0x92),'ynHgl':'install','RWfKv':'ignore','xRmXm':_0x107059(0xa6)};return new Promise(_0x3ca12b=>{const _0x30adf5=_0x107059;console['log']('\x0aInstalling\x20'+PACKAGE_NAME+'@'+_0x2f1da9+'...\x0a');const _0x22f299=spawn(_0x3ae029[_0x30adf5(0xa7)],[_0x3ae029['ynHgl'],'-g',PACKAGE_NAME+'@'+_0x2f1da9],{'stdio':[_0x3ae029['RWfKv'],'inherit','inherit'],'shell':process[_0x30adf5(0x79)]===_0x3ae029[_0x30adf5(0xb6)]});_0x22f299['on']('close',_0x3e2ab2=>{_0x3ae029['XsFvd'](_0x3ca12b,_0x3e2ab2===0x0);}),_0x22f299['on']('error',()=>{_0x3ca12b(![]);});});}async function updateClaudeMarketplace(){const _0x37211b=_0x47a9a2,_0x9f060={'wVmKC':_0x37211b(0x99),'ruydY':_0x37211b(0x7b),'IxCpt':'marketplace','ZWksM':'update','gJtfG':_0x37211b(0x9d),'NTJYy':'Claude\x20marketplace\x20update\x20command\x20failed\x20(timed\x20out,\x20failed\x20to\x20start,\x20or\x20exited\x20with\x20a\x20non-zero\x20status).'},_0x894fd3=await runCommand(_0x9f060['wVmKC'],[_0x9f060['ruydY'],_0x9f060['IxCpt'],_0x9f060['ZWksM'],_0x9f060[_0x37211b(0xbe)]],{'timeoutMs':CLAUDE_COMMAND_TIMEOUT_MS});if(!_0x894fd3)throw new Error(_0x9f060['NTJYy']);}async function updateClaudePlugin(_0x358d67=_0x47a9a2(0x9e)){const _0x114ebd=_0x47a9a2,_0x41dcc0={'fmirl':'plugin','BBZls':'update','qLsTA':function(_0x4e4400,_0x1209f2){return _0x4e4400!==_0x1209f2;},'fUuYN':_0x114ebd(0x9e),'nlCyX':'--scope','wryWU':function(_0x48dfc3,_0x10413a,_0x333bb8,_0x49ffdb){return _0x48dfc3(_0x10413a,_0x333bb8,_0x49ffdb);},'kYCuP':_0x114ebd(0xbc),'aqJWb':function(_0x2c6168){return _0x2c6168();}},_0x5816d4=[_0x41dcc0[_0x114ebd(0x94)],_0x41dcc0['BBZls'],'ranger@trailhead'];_0x41dcc0[_0x114ebd(0xad)](_0x358d67,_0x41dcc0[_0x114ebd(0xa9)])&&_0x5816d4[_0x114ebd(0x83)](_0x41dcc0['nlCyX'],_0x358d67);const _0x5be6c9=await _0x41dcc0[_0x114ebd(0xac)](runCommand,_0x114ebd(0x99),_0x5816d4,{'timeoutMs':CLAUDE_COMMAND_TIMEOUT_MS,'cwd':_0x358d67===_0x41dcc0[_0x114ebd(0x91)]||_0x358d67===_0x114ebd(0x7d)?_0x41dcc0[_0x114ebd(0xa0)](getProjectRoot):undefined});if(!_0x5be6c9)throw new Error('Claude\x20plugin\x20update\x20failed\x20for\x20'+_0x358d67+_0x114ebd(0x9c));}function isSkillInstalled(_0x1cbc94,_0x2d5f68,_0x106de3){const _0x3f50dc=_0x47a9a2,_0x654663={'tNPgz':function(_0x48982a,_0x9af21f){return _0x48982a===_0x9af21f;},'ViIUZ':'opencode','ELYhL':function(_0x17b1ed,_0x4f256c){return _0x17b1ed(_0x4f256c);},'owpMi':function(_0x1c8d31,_0xdc638f){return _0x1c8d31(_0xdc638f);}},_0x35d30e=_0x654663['tNPgz'](_0x106de3,_0x654663[_0x3f50dc(0x7f)])?_0x654663['ELYhL'](getOpencodeSkillsDir,_0x2d5f68):_0x654663['owpMi'](getSkillsDir,_0x2d5f68),_0x43866e=join(_0x35d30e,_0x1cbc94);return existsSync(_0x43866e);}async function reinstallSkills(_0x49bfa2){const _0x2a384f=_0x47a9a2,_0x235368={'HHSmv':'user','cACuv':function(_0x3fbee7,_0x2b7a3f,_0x22d62b){return _0x3fbee7(_0x2b7a3f,_0x22d62b);}},_0x521094=[_0x2a384f(0xbc),_0x235368['HHSmv']],_0x4aa3aa=[];for(const _0x5e755c of _0x521094){for(const _0x2df40c of RANGER_MANAGED_SKILLS){isSkillInstalled(_0x2df40c,_0x5e755c,_0x2a384f(0x99))&&_0x4aa3aa['push']({'skillName':_0x2df40c,'level':_0x5e755c,'platform':'claude'}),isSkillInstalled(_0x2df40c,_0x5e755c,'opencode')&&_0x4aa3aa['push']({'skillName':_0x2df40c,'level':_0x5e755c,'platform':_0x2a384f(0xba)});}}for(const _0x2fc5c of _0x521094){for(const _0x254266 of DEPRECATED_SKILLS){await removeSkill(_0x254266,_0x2fc5c);}}if(_0x4aa3aa[_0x2a384f(0x8e)]===0x0){console['log'](_0x2a384f(0x8c));return;}console['log'](_0x2a384f(0x8f)+_0x4aa3aa['length']+_0x2a384f(0x86));for(const {skillName:_0x4fb7d0,level:_0xb73c39,platform:_0x404cee}of _0x4aa3aa){try{await _0x235368[_0x2a384f(0xa8)](installSkill,_0x4fb7d0,{'level':_0xb73c39,'cliVersion':_0x49bfa2,'platform':_0x404cee});}catch(_0x297ff2){console['warn'](_0x2a384f(0x74)+_0x404cee+'\x20'+_0xb73c39+'\x20skill\x20'+_0x4fb7d0+':',_0x297ff2);}}}async function ensureActiveProfileGitignored(){const _0x8a69a4=_0x47a9a2,_0x390fa4={'gEeNb':function(_0x140f7d,_0xf9d418,_0x3290e7){return _0x140f7d(_0xf9d418,_0x3290e7);},'hAnwT':function(_0x5201f7){return _0x5201f7();},'rGLlb':function(_0x137f00,_0x50aa1b){return _0x137f00(_0x50aa1b);},'hOFhH':function(_0x589d60,_0x5c7db8,_0x5054f4){return _0x589d60(_0x5c7db8,_0x5054f4);},'CleGJ':function(_0x40c2d0,_0x29bb8c,_0x3b3e82,_0x188292){return _0x40c2d0(_0x29bb8c,_0x3b3e82,_0x188292);},'YXKBQ':'utf-8'},_0x516f83=_0x390fa4['gEeNb'](join,_0x390fa4['hAnwT'](getRangerDir),_0x8a69a4(0xbb));if(!_0x390fa4['rGLlb'](existsSync,_0x516f83))return![];let _0x99829b='';try{_0x99829b=await _0x390fa4['hOFhH'](readFile,_0x516f83,'utf-8');}catch{return![];}const _0x33fe41=_0x99829b[_0x8a69a4(0x76)](/\r?\n/);if(_0x33fe41['some'](_0x1960ca=>_0x1960ca['trim']()===_0x8a69a4(0x84)))return![];let _0x4c198a=_0x33fe41[_0x8a69a4(0x95)](_0x8af685=>_0x8af685[_0x8a69a4(0x89)]()===_0x8a69a4(0x6d));_0x4c198a===-0x1&&(_0x4c198a=_0x33fe41[_0x8a69a4(0x8e)]);_0x33fe41[_0x8a69a4(0xb4)](_0x4c198a,0x0,'active-profile.txt');let _0x3826e2=_0x33fe41['join']('\x0a');!_0x3826e2[_0x8a69a4(0xab)]('\x0a')&&(_0x3826e2+='\x0a');try{await _0x390fa4['CleGJ'](writeFile,_0x516f83,_0x3826e2,_0x390fa4[_0x8a69a4(0xaf)]);}catch{return![];}return!![];}export async function update(){const _0x56bcb1=_0x47a9a2,_0x2b0375={'Xslbg':function(_0x56d9b0,_0x7d5640){return _0x56d9b0!==_0x7d5640;},'imXCk':function(_0x5287db){return _0x5287db();},'COMHl':function(_0x440e11,_0x4c5283){return _0x440e11(_0x4c5283);},'jgSvV':function(_0x10e3e5){return _0x10e3e5();},'tVaED':function(_0x16c724){return _0x16c724();},'iMQxv':function(_0x2eed6c,_0x1b6e15){return _0x2eed6c<_0x1b6e15;},'vWWXK':function(_0x683de){return _0x683de();},'Ehxjs':_0x56bcb1(0x98),'krOep':function(_0x50f2aa){return _0x50f2aa();},'ylycf':_0x56bcb1(0x82),'DecVq':_0x56bcb1(0x9e),'xzUOC':function(_0x20e874,_0x44df06){return _0x20e874===_0x44df06;},'SNqhN':_0x56bcb1(0xbc),'SgUIf':_0x56bcb1(0xb2),'wqwVg':function(_0x56f6be,_0x2e7f63){return _0x56f6be===_0x2e7f63;},'Couhr':_0x56bcb1(0x7d),'UBepH':function(_0x38da77){return _0x38da77();}},_0x310854=getCurrentVersion();console['log'](_0x56bcb1(0x87)+_0x310854);const _0x15cc31=resolveDistTag(_0x310854);if(_0x2b0375['Xslbg'](_0x15cc31,_0x56bcb1(0x71))){console[_0x56bcb1(0x72)]('Prerelease\x20channel\x20detected\x20(@'+_0x15cc31+').\x20Staying\x20on\x20'+_0x15cc31+'\x20—\x20reinstalling\x20@'+_0x15cc31+'...');const _0x37b1b2=await runInstall(_0x15cc31);if(!_0x37b1b2)throw new Error(_0x56bcb1(0x78)+_0x15cc31+_0x56bcb1(0xb9));const _0x989306=_0x2b0375[_0x56bcb1(0xb0)](getCurrentVersion);console[_0x56bcb1(0x72)]('\x0aSuccessfully\x20installed\x20'+PACKAGE_NAME+'@'+_0x15cc31+'.'),await _0x2b0375['COMHl'](reinstallSkills,_0x989306),await _0x2b0375['jgSvV'](ensureActiveProfileGitignored),console[_0x56bcb1(0x72)](_0x56bcb1(0x85));return;}console[_0x56bcb1(0x72)](_0x56bcb1(0xa1));const _0x20fcdf=getLatestVersion();let _0x666964=_0x310854;if(!_0x20fcdf['version']){console['warn']('\x0aCould\x20not\x20check\x20latest\x20version:\x20'+_0x20fcdf[_0x56bcb1(0x93)]),console['log']('Attempting\x20install\x20anyway...');const _0x25de54=await runInstall();if(_0x25de54)console[_0x56bcb1(0x72)]('\x0aSuccessfully\x20installed\x20latest\x20version.'),_0x666964=_0x2b0375['tVaED'](getCurrentVersion);else throw new Error('Update\x20failed:\x20'+_0x20fcdf[_0x56bcb1(0x93)]);}else{const _0x117392=_0x20fcdf['version'];console[_0x56bcb1(0x72)](_0x56bcb1(0xaa)+_0x117392);const _0x291132=compareVersions(_0x310854,_0x117392);if(_0x291132===0x0)console[_0x56bcb1(0x72)](_0x56bcb1(0x7e));else{if(_0x2b0375[_0x56bcb1(0xa2)](_0x291132,0x0))console['log']('\x0aYour\x20version\x20('+_0x310854+')\x20is\x20newer\x20than\x20the\x20published\x20version\x20('+_0x117392+').');else{const _0x2562c6=await _0x2b0375['vWWXK'](runInstall);if(_0x2562c6)console['log'](_0x56bcb1(0x9a)+_0x117392),_0x666964=_0x117392;else throw new Error('Update\x20failed.');}}}await _0x2b0375['COMHl'](reinstallSkills,_0x666964);const _0x28041a=await isMarketplaceAdded('trailhead'),_0x19e0ff=await isPluginInstalled(_0x2b0375['Ehxjs']);_0x28041a&&(await _0x2b0375['krOep'](updateClaudeMarketplace),console['log'](_0x2b0375[_0x56bcb1(0xae)]));if(_0x19e0ff){const _0x16ca5f=await getPluginInfo(_0x2b0375['Ehxjs']),_0x26cd8f=_0x16ca5f?.[_0x56bcb1(0x90)]??_0x2b0375['DecVq'];await updateClaudePlugin(_0x26cd8f);if(_0x2b0375['xzUOC'](_0x26cd8f,_0x2b0375[_0x56bcb1(0x73)]))console[_0x56bcb1(0x72)](_0x2b0375['SgUIf']);else _0x2b0375[_0x56bcb1(0xbd)](_0x26cd8f,_0x2b0375['Couhr'])?console['log']('\x0aClaude\x20plugin\x20updated\x20(local\x20scope).'):console['log'](_0x56bcb1(0x88));}const _0x22f67e=await _0x2b0375[_0x56bcb1(0x70)](ensureActiveProfileGitignored);console[_0x56bcb1(0x72)]('\x0a✅\x20Update\x20complete!');}
@@ -1 +1 @@
1
- (function(_0x1328e2,_0x386ffd){const _0x59620b=_0x1224,_0x2b61d3=_0x1328e2();while(!![]){try{const _0x19c3d4=parseInt(_0x59620b(0xb7))/0x1*(parseInt(_0x59620b(0x94))/0x2)+-parseInt(_0x59620b(0xa0))/0x3+-parseInt(_0x59620b(0x9a))/0x4+-parseInt(_0x59620b(0x97))/0x5+parseInt(_0x59620b(0xb5))/0x6*(-parseInt(_0x59620b(0x9c))/0x7)+parseInt(_0x59620b(0x96))/0x8+parseInt(_0x59620b(0xad))/0x9;if(_0x19c3d4===_0x386ffd)break;else _0x2b61d3['push'](_0x2b61d3['shift']());}catch(_0x36cf3e){_0x2b61d3['push'](_0x2b61d3['shift']());}}}(_0x14a8,0x55126));import{writeFile,readFile,unlink}from'fs/promises';function _0x14a8(){const _0x3ff3eb=['\x20\x20\x20When\x20you\x20are\x20done,\x20close\x20the\x20browser.\x0a','qEHsE','2705848yUprfd','\x0a📋\x20Authentication\x20Update','939533GBIHIo','stdin','Saving\x20authentication\x20state...','stdout','119724pOljyK','extraHTTPHeaders','close','LTlLi','AsODj','obcMD','\x0aThe\x20browser\x20closed\x20unexpectedly\x20before\x20authentication\x20could\x20be\x20saved.','Browser\x20closed\x20before\x20authentication\x20was\x20saved.','OOUiE','Enable\x20safe\x20mode\x20and\x20try\x20again:\x20ranger\x20profile\x20config\x20set\x20','isTTY','DoqVS','catch','10477575tOzNLW','allowInsecureLocalhost','.\x20Run\x20first:\x20ranger\x20profile\x20add\x20','bxqWI','\x20\x20Run\x20ranger\x20setup\x20in\x20CI\x20to\x20decrypt\x20at\x20runtime.','aEmFl','string','\x20safeMode\x20true\x0a','30vgRnrN','trackPhaseEnd','3fpqquP','\x20\x20\x20Update\x20your\x20authentication\x20as\x20needed.','utf-8','✓\x20Auth\x20state\x20saved\x20to:\x20','log','browser','MGZhD','Rwrme','auth.json','QFzyp','baseUrl','.enc','✓\x20Updated\x20config:\x20','config_write','contextOptions','\x22\x20not\x20found.\x20Run\x20first:\x20ranger\x20profile\x20add\x20','210558PHHBFR','setupHeaders','4566424RbbBAB','1574480IlukAX'];_0x14a8=function(){return _0x3ff3eb;};return _0x14a8();}import{join}from'path';import{existsSync}from'fs';import{chromium}from'playwright';import{encrypt}from'./utils/crypto.js';function _0x1224(_0x95fef5,_0x1ea8e8){_0x95fef5=_0x95fef5-0x8c;const _0x14a870=_0x14a8();let _0x12241a=_0x14a870[_0x95fef5];return _0x12241a;}import{getToken}from'./utils/keychain.js';import{buildBrowserOptionsFromSettings,getEnvDir,isEnvCi,resolveEnvVars}from'./utils/settings.js';import{addProfileSetupBanner}from'./utils/profileSetupBanner.js';export async function updateEnv(_0x4db6a5,_0x4198cf,_0x2651cb){const _0x36bbbb=_0x1224,_0x5498f8={'OOUiE':'close','bxqWI':function(_0x49aa55,_0x383da6){return _0x49aa55(_0x383da6);},'DoqVS':function(_0x28d1cb,_0x517657,_0x3d9f2f){return _0x28d1cb(_0x517657,_0x3d9f2f);},'ReGkj':function(_0x5d796e,_0x2e2ef9){return _0x5d796e+_0x2e2ef9;},'obcMD':_0x36bbbb(0x8f),'qEHsE':function(_0x24a13a,_0x28f8fa){return _0x24a13a(_0x28f8fa);},'JJVYw':function(_0x416609,_0x18a113){return _0x416609===_0x18a113;},'MGZhD':_0x36bbbb(0x9b),'hEHlk':function(_0x52e2de,_0x1c4411,_0x2df013){return _0x52e2de(_0x1c4411,_0x2df013);},'AsODj':function(_0xed8e7e,_0x264456){return _0xed8e7e||_0x264456;},'aEmFl':'utf-8','QFzyp':function(_0x252cae){return _0x252cae();},'XuqPp':function(_0x51f8b7,_0x3c3d7c,_0x31a523){return _0x51f8b7(_0x3c3d7c,_0x31a523);},'CuViZ':'\x20\x20You\x20can\x20safely\x20commit\x20this\x20file\x20to\x20git.','Rwrme':function(_0x5ee3e8,_0x21b83d){return _0x5ee3e8===_0x21b83d;},'LTlLi':function(_0x20fc4d,_0x18501a,_0x38acf7){return _0x20fc4d(_0x18501a,_0x38acf7);}},_0x43c2dd=_0x5498f8['bxqWI'](getEnvDir,_0x4db6a5),_0x1a07a5=_0x5498f8[_0x36bbbb(0xab)](join,_0x43c2dd,'settings.json'),_0x3377b7=join(_0x43c2dd,_0x36bbbb(0x8c)),_0x31c1d8=_0x5498f8['ReGkj'](_0x3377b7,_0x5498f8[_0x36bbbb(0xa5)]),_0x2d4edf=process[_0x36bbbb(0x9d)][_0x36bbbb(0xaa)]&&process[_0x36bbbb(0x9f)][_0x36bbbb(0xaa)];if(!_0x2d4edf)throw new Error('Non-interactive\x20mode\x20detected.\x0aThe\x20\x22ranger\x20profile\x20update\x22\x20command\x20requires\x20interactive\x20browser\x20authentication\x20and\x20cannot\x20be\x20run\x20in\x20non-TTY\x20environments\x20(CI,\x20scripts,\x20Claude\x20Code).\x0aTo\x20update\x20profile\x20authentication:\x0a\x20\x201.\x20Run\x20\x22ranger\x20profile\x20update\x20<name>\x22\x20in\x20an\x20interactive\x20terminal\x0a\x20\x202.\x20Commit\x20the\x20updated\x20encrypted\x20auth\x20file\x20to\x20git');if(!existsSync(_0x43c2dd))throw new Error('Profile\x20\x22'+_0x4db6a5+_0x36bbbb(0x93)+_0x4db6a5);if(!_0x5498f8[_0x36bbbb(0xb0)](existsSync,_0x1a07a5))throw new Error('Config\x20not\x20found\x20at\x20'+_0x1a07a5+_0x36bbbb(0xaf)+_0x4db6a5);const _0xa72a98=await readFile(_0x1a07a5,_0x36bbbb(0xb9)),_0xac843e=JSON['parse'](_0xa72a98),_0xd6f119=_0x5498f8[_0x36bbbb(0x99)](resolveEnvVars,_0xac843e),_0x422344=_0x5498f8['JJVYw'](typeof _0xd6f119['baseUrl'],_0x36bbbb(0xb3))?_0xd6f119[_0x36bbbb(0x8e)]:undefined,_0xe2d070=_0x5498f8[_0x36bbbb(0x99)](existsSync,_0x3377b7),_0x27ea86=_0x5498f8[_0x36bbbb(0x99)](isEnvCi,_0x4db6a5);_0x4198cf?.['trackPhaseStart']('browser_auth'),console['log'](_0x5498f8[_0x36bbbb(0xbd)]),console[_0x36bbbb(0xbb)]('\x20\x20\x20A\x20browser\x20will\x20open\x20with\x20your\x20existing\x20session\x20(if\x20any).'),console['log'](_0x36bbbb(0xb8)),console['log'](_0x36bbbb(0x98));const {launchOptions:_0x20b92a,contextOptions:_0x1b89c0}=_0x5498f8['hEHlk'](buildBrowserOptionsFromSettings,_0xd6f119,{'headless':![],'storageStatePath':_0xe2d070?_0x3377b7:undefined});_0xd6f119[_0x36bbbb(0x95)]&&(_0x1b89c0['extraHTTPHeaders']={..._0x1b89c0[_0x36bbbb(0xa1)],..._0xd6f119['setupHeaders']});const _0x244ae2=await chromium['launch'](_0x20b92a);let _0x11bedd=null;try{_0x11bedd=await _0x244ae2['newContext'](_0x1b89c0),await addProfileSetupBanner(_0x11bedd);const _0x2a77f1=await _0x11bedd['newPage']();await _0x2a77f1['goto'](_0x5498f8[_0x36bbbb(0xa4)](_0x422344,'about:blank'));let _0x491784=![];await new Promise(_0xa012ad=>{const _0x5bd426=_0x36bbbb;_0x2a77f1['on'](_0x5498f8[_0x5bd426(0xa8)],async()=>{const _0x56c941=_0x5bd426;try{console['log'](_0x56c941(0x9e)),await _0x11bedd?.['storageState']({'path':_0x3377b7}),_0x491784=!![];}catch{}_0xa012ad();});});if(!_0x491784){console['log'](_0x36bbbb(0xa6));!_0xd6f119['safeMode']&&(console['log']('This\x20can\x20happen\x20due\x20to\x20a\x20browser\x20compatibility\x20issue\x20on\x20some\x20systems.\x0a'),console['log'](_0x36bbbb(0xa9)+_0x4db6a5+_0x36bbbb(0xb4)));throw new Error(_0x36bbbb(0xa7));}}finally{_0x11bedd&&await _0x11bedd['close']()['catch'](()=>{}),await _0x244ae2[_0x36bbbb(0xa2)]()[_0x36bbbb(0xac)](()=>{});}if(_0x27ea86){const _0x80c29c=await readFile(_0x3377b7,_0x5498f8[_0x36bbbb(0xb2)]),_0x280a60=await _0x5498f8[_0x36bbbb(0x8d)](getToken);if(!_0x280a60)console['error']('\x20\x20Could\x20not\x20encrypt:\x20No\x20API\x20token\x20found.\x20Run:\x20ranger\x20setup\x20[token]'),console['log'](_0x36bbbb(0xba)+_0x3377b7);else{const _0x576d79=encrypt(_0x80c29c,_0x280a60);await _0x5498f8['XuqPp'](writeFile,_0x31c1d8,_0x576d79),await unlink(_0x3377b7),console['log']('✓\x20Encrypted\x20auth\x20saved\x20to:\x20'+_0x31c1d8),console['log'](_0x5498f8['CuViZ']),console['log'](_0x36bbbb(0xb1));}}else console[_0x36bbbb(0xbb)](_0x36bbbb(0xba)+_0x3377b7);_0x4198cf?.[_0x36bbbb(0xb6)]('browser_auth'),_0x4198cf?.['trackPhaseStart'](_0x36bbbb(0x91)),_0xac843e[_0x36bbbb(0xbc)]=_0xac843e[_0x36bbbb(0xbc)]||{},_0xac843e['browser']['contextOptions']=_0xac843e['browser'][_0x36bbbb(0x92)]||{},_0xac843e['browser']['contextOptions']['storageState']=_0x3377b7,_0x5498f8[_0x36bbbb(0xbe)](_0x2651cb?.[_0x36bbbb(0xae)],!![])&&(_0xac843e['allowInsecureLocalhost']=!![]),await _0x5498f8[_0x36bbbb(0xa3)](writeFile,_0x1a07a5,JSON['stringify'](_0xac843e,null,0x2)),console['log'](_0x36bbbb(0x90)+_0x1a07a5),_0x4198cf?.[_0x36bbbb(0xb6)]('config_write'),console['log']('\x0a✅\x20Profile\x20\x22'+_0x4db6a5+'\x22\x20authentication\x20updated');}
1
+ function _0x28d2(_0x193bbf,_0x3c84f7){_0x193bbf=_0x193bbf-0xbb;var _0x3689c8=_0x3689();var _0x28d283=_0x3689c8[_0x193bbf];return _0x28d283;}(function(_0x4ebd35,_0x3d8d80){var _0x35b417=_0x28d2,_0x424e55=_0x4ebd35();while(!![]){try{var _0x58537e=parseInt(_0x35b417(0xbb))/0x1+-parseInt(_0x35b417(0xbd))/0x2+-parseInt(_0x35b417(0xbc))/0x3+-parseInt(_0x35b417(0xc5))/0x4+parseInt(_0x35b417(0xc3))/0x5*(parseInt(_0x35b417(0xbf))/0x6)+parseInt(_0x35b417(0xc1))/0x7*(-parseInt(_0x35b417(0xc7))/0x8)+parseInt(_0x35b417(0xc6))/0x9;if(_0x58537e===_0x3d8d80)break;else _0x424e55['push'](_0x424e55['shift']());}catch(_0x39d1d5){_0x424e55['push'](_0x424e55['shift']());}}}(_0x3689,0xea8da));export async function updateEnv(_0x5a268d,_0x33347d,_0x4ae58f){var _0x1c0db2=_0x28d2,_0x1c47ec={'ikISY':function(_0x543dd4,_0x3c2ffd){return _0x543dd4+_0x3c2ffd;},'WqnJd':_0x1c0db2(0xc9),'bCKuh':'\x20\x20ranger\x20profile\x20add\x20<name>\x0a','qaRFk':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','WcnJn':'\x20\x20https://docs.ranger.net/main/concepts/profiles'};console['error'](_0x1c47ec[_0x1c0db2(0xbe)](_0x1c47ec['ikISY'](_0x1c47ec[_0x1c0db2(0xc0)]+'re-run\x20the\x20same\x20setup\x20that\x20created\x20the\x20profile:\x0a'+'\x0a',_0x1c47ec[_0x1c0db2(0xc2)]),'\x0a')+_0x1c47ec['qaRFk']+_0x1c47ec[_0x1c0db2(0xc4)]),process[_0x1c0db2(0xc8)](0x1);}function _0x3689(){var _0x28a10d=['bCKuh','5DMtUSR','WcnJn','4118444WqgpTg','22846914mAwMxm','8961152jTrEXX','exit','ranger\x20profile\x20update\x20is\x20no\x20longer\x20supported.\x20To\x20refresh\x20authentication,\x0a','329856kIKZex','3105351MmUdjX','408734zAxods','ikISY','8889402cvZVOD','WqnJd','7BNjsXd'];_0x3689=function(){return _0x28a10d;};return _0x3689();}
@@ -1 +1 @@
1
- (function(_0x55d682,_0x460ed9){const _0x11ed25=_0x3326,_0x49cbeb=_0x55d682();while(!![]){try{const _0x3c4acb=parseInt(_0x11ed25(0x1be))/0x1+-parseInt(_0x11ed25(0x1bf))/0x2*(parseInt(_0x11ed25(0x1ad))/0x3)+parseInt(_0x11ed25(0x1b0))/0x4+parseInt(_0x11ed25(0x1c1))/0x5+parseInt(_0x11ed25(0x1af))/0x6+-parseInt(_0x11ed25(0x1b3))/0x7+-parseInt(_0x11ed25(0x1b6))/0x8*(-parseInt(_0x11ed25(0x1ae))/0x9);if(_0x3c4acb===_0x460ed9)break;else _0x49cbeb['push'](_0x49cbeb['shift']());}catch(_0x30a257){_0x49cbeb['push'](_0x49cbeb['shift']());}}}(_0x5079,0x50c99));import{join}from'path';import{existsSync}from'fs';function _0x5079(){const _0xfdc461=['28884KSwdVI','194fasCDu','Profile\x20\x22','334025UKVwjm','profile\x20\x22','14151WZMNjW','9mudmLd','2461392TwjWIn','1142040YBtepa','settings.json','GcybS','3183327HrvYXf','`ranger\x20profile\x20add\x20','status','3614272UBWoBp','cHVyH','EenRo','log','\x22\x20not\x20found\x20locally\x20or\x20in\x20the\x20cloud.\x20','\x0a✓\x20Now\x20using\x20profile\x20\x22','cloud\x20','Run\x20`ranger\x20profile\x20ls`\x20to\x20see\x20available\x20profiles,\x20or\x20'];_0x5079=function(){return _0xfdc461;};return _0x5079();}import{getEnvDir}from'./utils/settings.js';function _0x3326(_0x30ca74,_0x48c789){_0x30ca74=_0x30ca74-0x1ad;const _0x507979=_0x5079();let _0x3326b6=_0x507979[_0x30ca74];return _0x3326b6;}import{writeActiveProfileName}from'./utils/activeProfile.js';import{ApiError,fetchCloudProfile}from'./utils/cloudProfile.js';export async function useEnv(_0x10fc30){const _0x564960=_0x3326,_0x402ac9={'GcybS':function(_0x472c96,_0x122e51){return _0x472c96(_0x122e51);},'EenRo':function(_0xe9a7f2,_0x46dc50){return _0xe9a7f2(_0x46dc50);},'AerUe':function(_0xd8d09f,_0x382a5c){return _0xd8d09f(_0x382a5c);},'jqvQn':function(_0x3a538e,_0x5b6408){return _0x3a538e===_0x5b6408;},'PFPvy':function(_0x1b712b,_0x21fe4f){return _0x1b712b+_0x21fe4f;},'cHVyH':_0x564960(0x1bc)},_0x4aef92=_0x402ac9[_0x564960(0x1b2)](getEnvDir,_0x10fc30),_0x4b07c3=join(_0x4aef92,_0x564960(0x1b1)),_0x5f0b4b=_0x402ac9[_0x564960(0x1b8)](existsSync,_0x4aef92)&&_0x402ac9['AerUe'](existsSync,_0x4b07c3);if(_0x5f0b4b){await writeActiveProfileName(_0x10fc30),console['log'](_0x564960(0x1bb)+_0x10fc30+'\x22');return;}let _0x5a613d=null,_0x44a75a=![];try{_0x5a613d=await fetchCloudProfile(_0x10fc30);if(!_0x5a613d)_0x44a75a=!![];}catch(_0x293a1c){_0x293a1c instanceof ApiError&&_0x402ac9['jqvQn'](_0x293a1c[_0x564960(0x1b5)],0x194)&&(_0x44a75a=!![]);}if(_0x44a75a)throw new Error(_0x402ac9['PFPvy'](_0x564960(0x1c0)+_0x10fc30+_0x564960(0x1ba),_0x564960(0x1bd))+(_0x564960(0x1b4)+_0x10fc30+'`\x20to\x20create\x20one.'));await writeActiveProfileName(_0x10fc30),console[_0x564960(0x1b9)]('\x0a✓\x20Now\x20using\x20'+(_0x5a613d?_0x402ac9[_0x564960(0x1b7)]:'')+_0x564960(0x1c2)+_0x10fc30+'\x22');}
1
+ (function(_0x17f6f6,_0x3bd156){const _0x76db46=_0x2427,_0x1bd0f7=_0x17f6f6();while(!![]){try{const _0x1cab15=parseInt(_0x76db46(0x17d))/0x1*(-parseInt(_0x76db46(0x179))/0x2)+parseInt(_0x76db46(0x176))/0x3*(parseInt(_0x76db46(0x184))/0x4)+-parseInt(_0x76db46(0x17f))/0x5*(-parseInt(_0x76db46(0x178))/0x6)+parseInt(_0x76db46(0x186))/0x7*(parseInt(_0x76db46(0x183))/0x8)+-parseInt(_0x76db46(0x17e))/0x9*(parseInt(_0x76db46(0x17b))/0xa)+parseInt(_0x76db46(0x185))/0xb+-parseInt(_0x76db46(0x180))/0xc;if(_0x1cab15===_0x3bd156)break;else _0x1bd0f7['push'](_0x1bd0f7['shift']());}catch(_0x2bf4f1){_0x1bd0f7['push'](_0x1bd0f7['shift']());}}}(_0x1820,0x5c408));import{join}from'path';import{existsSync}from'fs';function _0x1820(){const _0x4e3b0a=['GJzBt','40KkitDk','102356ODVneU','4172487feyytp','728371GwNdnA','log','\x22\x20not\x20found\x20locally\x20or\x20in\x20the\x20cloud.\x20','87ZBJkMs','Profile\x20\x22','31818vNAryu','6PsvXfP','\x0a✓\x20Now\x20using\x20profile\x20\x22','372020qiFYjq','tLqta','73162oTuvDF','45pvUuLj','240nGCDei','13354164shaCSd','XoqKN'];_0x1820=function(){return _0x4e3b0a;};return _0x1820();}function _0x2427(_0x5a6dcf,_0x25cdfc){_0x5a6dcf=_0x5a6dcf-0x174;const _0x1820d3=_0x1820();let _0x242798=_0x1820d3[_0x5a6dcf];return _0x242798;}import{getEnvDir}from'./utils/settings.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{ApiError,fetchCloudProfile}from'./utils/cloudProfile.js';export async function useEnv(_0x29cc36){const _0x515ad8=_0x2427,_0x2de98a={'XoqKN':function(_0x3d5534,_0x4ccc23){return _0x3d5534(_0x4ccc23);},'tLqta':function(_0x1fc2f4,_0x225d9c,_0x5984a2){return _0x1fc2f4(_0x225d9c,_0x5984a2);},'cOLEm':function(_0x149cdd,_0x562d62){return _0x149cdd instanceof _0x562d62;},'GJzBt':function(_0x1cc087,_0x113d44){return _0x1cc087+_0x113d44;}},_0x18378e=_0x2de98a[_0x515ad8(0x181)](getEnvDir,_0x29cc36),_0x28cacd=_0x2de98a[_0x515ad8(0x17c)](join,_0x18378e,'settings.json'),_0x2fd1e1=existsSync(_0x18378e)&&existsSync(_0x28cacd);if(_0x2fd1e1){await writeActiveProfileName(_0x29cc36),console[_0x515ad8(0x174)](_0x515ad8(0x17a)+_0x29cc36+'\x22');return;}let _0x2efb99=null,_0x28e06c=![];try{_0x2efb99=await fetchCloudProfile(_0x29cc36);if(!_0x2efb99)_0x28e06c=!![];}catch(_0x4e6add){_0x2de98a['cOLEm'](_0x4e6add,ApiError)&&_0x4e6add['status']===0x194&&(_0x28e06c=!![]);}if(_0x28e06c)throw new Error(_0x2de98a[_0x515ad8(0x182)](_0x515ad8(0x177)+_0x29cc36+_0x515ad8(0x175)+'Run\x20`ranger\x20profile\x20ls`\x20to\x20see\x20available\x20profiles,\x20or\x20','`ranger\x20profile\x20add\x20'+_0x29cc36+'`\x20to\x20create\x20one.'));await writeActiveProfileName(_0x29cc36),console[_0x515ad8(0x174)]('\x0a✓\x20Now\x20using\x20profile\x20\x22'+_0x29cc36+'\x22');}
@@ -1 +1 @@
1
- (function(_0xe86462,_0x35d1ab){const _0x32c3c8=_0x176d,_0x589bcf=_0xe86462();while(!![]){try{const _0x29ce33=-parseInt(_0x32c3c8(0x15a))/0x1*(parseInt(_0x32c3c8(0x151))/0x2)+-parseInt(_0x32c3c8(0x163))/0x3*(parseInt(_0x32c3c8(0x15c))/0x4)+-parseInt(_0x32c3c8(0x159))/0x5*(parseInt(_0x32c3c8(0x15f))/0x6)+parseInt(_0x32c3c8(0x15d))/0x7*(parseInt(_0x32c3c8(0x157))/0x8)+-parseInt(_0x32c3c8(0x156))/0x9+parseInt(_0x32c3c8(0x150))/0xa*(parseInt(_0x32c3c8(0x161))/0xb)+parseInt(_0x32c3c8(0x166))/0xc*(parseInt(_0x32c3c8(0x162))/0xd);if(_0x29ce33===_0x35d1ab)break;else _0x589bcf['push'](_0x589bcf['shift']());}catch(_0x7edae2){_0x589bcf['push'](_0x589bcf['shift']());}}}(_0x15dc,0x36605));import{existsSync}from'fs';import{mkdir,readFile,rename,unlink,writeFile}from'fs/promises';import{join}from'path';import{getRangerDir,getRangerHomeDir}from'./rangerRoot.js';const ACTIVE_PROFILE_FILE='active-profile.txt',LEGACY_ACTIVE_ENV_FILE='active-env.txt';function getActiveProfilePath(){const _0xb68163=_0x176d,_0x3b42fd={'mUtQJ':function(_0x1e4c65,_0x234f4d,_0x167c58){return _0x1e4c65(_0x234f4d,_0x167c58);},'eAmVb':function(_0x46a8cc){return _0x46a8cc();},'KHHTa':function(_0x2931e0,_0x2361b1){return _0x2931e0(_0x2361b1);},'VusDz':function(_0x146e9d){return _0x146e9d();}},_0x102374=_0x3b42fd['mUtQJ'](join,_0x3b42fd['eAmVb'](getRangerDir),ACTIVE_PROFILE_FILE);if(_0x3b42fd[_0xb68163(0x15b)](existsSync,_0x102374))return _0x102374;return join(_0x3b42fd[_0xb68163(0x15e)](getRangerHomeDir),ACTIVE_PROFILE_FILE);}function _0x176d(_0x469da7,_0x276204){_0x469da7=_0x469da7-0x14f;const _0x15dc3c=_0x15dc();let _0x176d39=_0x15dc3c[_0x469da7];return _0x176d39;}function getLegacyActiveEnvPath(){const _0x5b2dfd=_0x176d,_0x48a36f={'fcuBf':function(_0x3de72e){return _0x3de72e();},'rUYeg':function(_0x4ff0d8,_0xc13f92,_0x500a03){return _0x4ff0d8(_0xc13f92,_0x500a03);}},_0x254462=join(_0x48a36f['fcuBf'](getRangerDir),LEGACY_ACTIVE_ENV_FILE);if(existsSync(_0x254462))return _0x254462;return _0x48a36f[_0x5b2dfd(0x158)](join,getRangerHomeDir(),LEGACY_ACTIVE_ENV_FILE);}function getActiveProfileWritePath(){const _0x21b26b=_0x176d,_0x298baf={'dzGZc':function(_0x431e10){return _0x431e10();},'fXUbC':function(_0x20a6a6){return _0x20a6a6();},'wocKB':function(_0x20af4c,_0x4a738d,_0x4ed090){return _0x20af4c(_0x4a738d,_0x4ed090);}},_0x26badf=_0x298baf[_0x21b26b(0x167)](getRangerDir);if(existsSync(_0x26badf))return{'path':join(_0x26badf,ACTIVE_PROFILE_FILE),'dir':_0x26badf,'isUserScope':![]};const _0x36baa2=_0x298baf[_0x21b26b(0x154)](getRangerHomeDir);return{'path':_0x298baf['wocKB'](join,_0x36baa2,ACTIVE_PROFILE_FILE),'dir':_0x36baa2,'isUserScope':!![]};}async function migrateLegacyActiveEnv(){const _0x44baf4=_0x176d,_0x238fbf={'xXfpv':function(_0x1a2cba){return _0x1a2cba();},'yWuRZ':function(_0x570894,_0x332a0b,_0x483c07){return _0x570894(_0x332a0b,_0x483c07);},'BqXKX':function(_0x2d0533){return _0x2d0533();},'cLAdu':function(_0x404d5e,_0x4e2a34,_0x5b2b89){return _0x404d5e(_0x4e2a34,_0x5b2b89);},'XXRWC':function(_0x36167d,_0x920b9b){return _0x36167d(_0x920b9b);}},_0x4a7b9b=_0x238fbf[_0x44baf4(0x155)](getLegacyActiveEnvPath);if(!existsSync(_0x4a7b9b))return null;let _0x54f45a=null;try{_0x54f45a=(await _0x238fbf['yWuRZ'](readFile,_0x4a7b9b,_0x44baf4(0x160)))['trim']()||null;}catch{_0x54f45a=null;}if(!_0x54f45a)return null;const {path:_0x24497a,dir:_0x282b48}=_0x238fbf['BqXKX'](getActiveProfileWritePath);try{await rename(_0x4a7b9b,_0x24497a);}catch{try{await _0x238fbf[_0x44baf4(0x165)](mkdir,_0x282b48,{'recursive':!![]}),await writeFile(_0x24497a,_0x54f45a,'utf-8'),await _0x238fbf[_0x44baf4(0x152)](unlink,_0x4a7b9b);}catch{}}return _0x54f45a;}export async function readActiveProfileName(){const _0x3ca9a3=_0x176d,_0x3e7978={'zhOVx':function(_0x39bed1){return _0x39bed1();},'LJxQZ':function(_0x15ac7a,_0x5b116c){return _0x15ac7a(_0x5b116c);},'ZfmFm':function(_0x528bf2,_0x4fc18e,_0x55709a){return _0x528bf2(_0x4fc18e,_0x55709a);},'PuMdO':'utf-8'},_0x4ef4e3=_0x3e7978['zhOVx'](getActiveProfilePath);if(_0x3e7978['LJxQZ'](existsSync,_0x4ef4e3))try{return(await _0x3e7978[_0x3ca9a3(0x14f)](readFile,_0x4ef4e3,_0x3e7978[_0x3ca9a3(0x164)]))['trim']()||null;}catch{return null;}return await migrateLegacyActiveEnv();}export async function writeActiveProfileName(_0x1ab8a8){const _0x4bd967=_0x176d,_0x41f8dd={'Vqoqy':function(_0x26b8eb,_0x4ca979,_0x468a2a,_0x63b8ca){return _0x26b8eb(_0x4ca979,_0x468a2a,_0x63b8ca);},'XRPYz':_0x4bd967(0x160),'eSaVp':function(_0x3f2e30,_0x26d8db){return _0x3f2e30(_0x26d8db);},'DuKiT':function(_0x5b078c,_0x3da3dc){return _0x5b078c(_0x3da3dc);}},{path:_0x2accb9,dir:_0x5af403}=getActiveProfileWritePath();await mkdir(_0x5af403,{'recursive':!![]}),await _0x41f8dd[_0x4bd967(0x168)](writeFile,_0x2accb9,_0x1ab8a8,_0x41f8dd['XRPYz']);const _0x395116=getLegacyActiveEnvPath();if(_0x41f8dd[_0x4bd967(0x153)](existsSync,_0x395116))try{await _0x41f8dd['DuKiT'](unlink,_0x395116);}catch{}}export async function migrateActiveProfileFile(){const _0x59d6a8={'wWFtv':function(_0x9b069f){return _0x9b069f();}},_0x5475c0=await _0x59d6a8['wWFtv'](migrateLegacyActiveEnv);return _0x5475c0!==null;}function _0x15dc(){const _0x21df11=['7CySQcj','VusDz','702xEnjSH','utf-8','40843McIjAv','13qKinHM','6726FeIQUg','PuMdO','cLAdu','5844036IUHRpY','dzGZc','Vqoqy','ZfmFm','100fDnUuV','108020LgADpD','XXRWC','eSaVp','fXUbC','xXfpv','1711188aJtLgj','1845416YLcNrF','rUYeg','895EtDCWD','2LUPqDP','KHHTa','380raeROk'];_0x15dc=function(){return _0x21df11;};return _0x15dc();}
1
+ (function(_0x1575ad,_0x496f09){const _0x581988=_0x5f2c,_0x571a87=_0x1575ad();while(!![]){try{const _0x148137=parseInt(_0x581988(0x1a3))/0x1*(-parseInt(_0x581988(0x1ad))/0x2)+-parseInt(_0x581988(0x1ab))/0x3+-parseInt(_0x581988(0x1a9))/0x4+parseInt(_0x581988(0x1b0))/0x5+-parseInt(_0x581988(0x1a7))/0x6+parseInt(_0x581988(0x1a5))/0x7+parseInt(_0x581988(0x1ac))/0x8;if(_0x148137===_0x496f09)break;else _0x571a87['push'](_0x571a87['shift']());}catch(_0x38af0c){_0x571a87['push'](_0x571a87['shift']());}}}(_0x7d80,0xb9d3b));import{existsSync}from'fs';import{readFile}from'fs/promises';import{join}from'path';import{getRangerDir,getRangerHomeDir}from'./rangerRoot.js';import{readLastProfile,writeLastProfile}from'./projectsConfig.js';const LEGACY_ACTIVE_PROFILE_FILE='active-profile.txt',LEGACY_ACTIVE_ENV_FILE='active-env.txt';function readLegacyActiveProfileFile(){const _0xff8557=_0x5f2c,_0x163ef0={'EsrzN':function(_0x337801,_0x12d652,_0x21e656){return _0x337801(_0x12d652,_0x21e656);},'Hwhgm':function(_0x387412){return _0x387412();},'tPHyX':function(_0x5e540d,_0x14d6cc){return _0x5e540d(_0x14d6cc);}},_0x38c377=[_0x163ef0[_0xff8557(0x1a8)](join,getRangerDir(),LEGACY_ACTIVE_PROFILE_FILE),join(_0x163ef0[_0xff8557(0x1ae)](getRangerHomeDir),LEGACY_ACTIVE_PROFILE_FILE),join(_0x163ef0['Hwhgm'](getRangerDir),LEGACY_ACTIVE_ENV_FILE),join(_0x163ef0['Hwhgm'](getRangerHomeDir),LEGACY_ACTIVE_ENV_FILE)];for(const _0x35a485 of _0x38c377){if(_0x163ef0[_0xff8557(0x1a2)](existsSync,_0x35a485))return _0x35a485;}return null;}export async function readActiveProfileName(){const _0x46fc1a=_0x5f2c,_0x4433a6={'folVd':function(_0x4f4021){return _0x4f4021();},'hJyVl':function(_0x2346c8,_0x2ab41b,_0x3e7cec){return _0x2346c8(_0x2ab41b,_0x3e7cec);},'uhaaG':_0x46fc1a(0x1a4)},_0x432b6e=readLastProfile(process[_0x46fc1a(0x1a6)]());if(_0x432b6e)return _0x432b6e;const _0x2fe251=_0x4433a6['folVd'](readLegacyActiveProfileFile);if(!_0x2fe251)return null;try{return(await _0x4433a6['hJyVl'](readFile,_0x2fe251,_0x4433a6[_0x46fc1a(0x1aa)]))[_0x46fc1a(0x1af)]()||null;}catch{return null;}}export async function writeActiveProfileName(_0x36a1e5){const _0x13fb36=_0x5f2c,_0x160b65={'xZNXl':function(_0x457e55,_0x26df24,_0x467f94){return _0x457e55(_0x26df24,_0x467f94);}};_0x160b65[_0x13fb36(0x1a1)](writeLastProfile,process['cwd'](),_0x36a1e5);}function _0x5f2c(_0x1d1896,_0x24bf16){_0x1d1896=_0x1d1896-0x1a1;const _0x7d80d9=_0x7d80();let _0x5f2c27=_0x7d80d9[_0x1d1896];return _0x5f2c27;}function _0x7d80(){const _0x26e932=['xZNXl','tPHyX','597778WQBTdZ','utf-8','305963QgjwPJ','cwd','3767208MOVtKR','EsrzN','2691344QLMxJo','uhaaG','3610863lQzFUy','20229392KGDFiQ','2bZcVMh','Hwhgm','trim','6454335CKShCp'];_0x7d80=function(){return _0x26e932;};return _0x7d80();}