@ranger-testing/ranger-cli 2.2.1 → 2.2.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/featureReportGenerator.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/git.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/reportGenerator.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyInBrowser.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const _0x989d74=_0x2c87;function _0x3293(){const _0xd50f2a=['source','2978956acmKew','\x20(Branch:\x20','KIDaP','=================================================================\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20🚨\x20RANGER\x20IS\x20ACTIVE\x20🚨\x0a=================================================================\x0a\x0aThis\x20session\x20has\x20Ranger\x20ENABLED.\x20Before\x20doing\x20ANYTHING\x20else:\x0a\x0a1.\x20**READ\x20the\x20/ranger\x20skill\x20FIRST**\x20-\x20Run\x20the\x20skill\x20to\x20understand\x20the\x20required\x20workflow\x20for\x20UI\x20features\x0a\x0a2.\x20**Check\x20for\x20existing\x20feature\x20reviews**\x20-\x20Run\x20`ranger\x20list`\x20to\x20see\x20if\x20there\x27s\x20an\x20in-progress\x20feature\x20review\x20to\x20resume\x0a\x0a3.\x20**For\x20ANY\x20UI\x20work**:\x20You\x20MUST\x20either:\x0a\x20\x20\x20-\x20Resume\x20an\x20existing\x20feature\x20review:\x20`ranger\x20resume\x20<id>`\x0a\x20\x20\x20-\x20Create\x20a\x20new\x20feature\x20review:\x20`ranger\x20create\x20\x22<name>\x22\x20-d\x20\x22<desc>\x22\x20-c\x20\x22<scenario>\x22`\x0a\x0a4.\x20**If\x20resuming\x20a\x20feature\x20review\x20with\x20reviewer\x20comments**:\x20Run\x20`ranger\x20get-review`\x20to\x20see\x20what\x20reviewers\x20want\x20fixed\x20before\x20making\x20code\x20changes\x0a\x0a=================================================================','357933vRGbKs','16fqSBbN','CLAUDE_ENV_FILE','export\x20CLAUDE_SESSION_ID=\x22','trackCommandEnd','3366748GWcQRE','628765iJyrFm','JLruD','14049497oAKkMC','PAQsH','stringify','8907561HJCSiu','session_id','186849YBTioa','78qTcyAC','fUWQG','stdin','xLIae','log','SessionStart','trackCommandStart','10yQHKLn','parse','44zhwOCz'];_0x3293=function(){return _0xd50f2a;};return _0x3293();}function _0x2c87(_0x44d1ad,_0x1305a8){_0x44d1ad=_0x44d1ad-0x14f;const _0x329313=_0x3293();let _0x2c8714=_0x329313[_0x44d1ad];return _0x2c8714;}(function(_0x208080,_0x23ea8b){const _0x4e364c=_0x2c87,_0x5fa0aa=_0x208080();while(!![]){try{const _0x51a8dd=-parseInt(_0x4e364c(0x152))/0x1+parseInt(_0x4e364c(0x15e))/0x2+parseInt(_0x4e364c(0x162))/0x3*(-parseInt(_0x4e364c(0x15c))/0x4)+-parseInt(_0x4e364c(0x168))/0x5*(-parseInt(_0x4e364c(0x153))/0x6)+parseInt(_0x4e364c(0x167))/0x7*(-parseInt(_0x4e364c(0x163))/0x8)+-parseInt(_0x4e364c(0x150))/0x9+parseInt(_0x4e364c(0x15a))/0xa*(parseInt(_0x4e364c(0x16a))/0xb);if(_0x51a8dd===_0x23ea8b)break;else _0x5fa0aa['push'](_0x5fa0aa['shift']());}catch(_0x1210bf){_0x5fa0aa['push'](_0x5fa0aa['shift']());}}}(_0x3293,0xe8127));import{appendFile}from'fs/promises';import{initBranchTracking,shouldAutoEnableAfterClear,autoEnableAfterClear,isSessionEnabled,getCurrentBranch}from'../utils/sessionCache.js';import{createTelemetryCollector}from'../utils/telemetry.js';const RANGER_AUTO_ENABLED_PROMPT=_0x989d74(0x161);export async function sessionStart(_0x42ab16){const _0x5bedf6=_0x989d74,_0x1dd07c={'gUHUU':_0x5bedf6(0x15d),'JLruD':function(_0x3de4a5,_0xc8c37d){return _0x3de4a5(_0xc8c37d);},'fUWQG':function(_0x48aaf4,_0x5daa30){return _0x48aaf4!==_0x5daa30;},'PAQsH':'main','CZsTz':'master','xLIae':_0x5bedf6(0x158),'KIDaP':function(_0x5f38c4,_0x46dbe0){return _0x5f38c4+_0x46dbe0;}};let _0x4f2537=_0x42ab16||'',_0x1d190d;if(!_0x42ab16){let _0x3e61cc='';for await(const _0x937c74 of process[_0x5bedf6(0x155)]){_0x3e61cc+=_0x937c74;}try{const _0x3465a3=JSON[_0x5bedf6(0x15b)](_0x3e61cc);_0x4f2537=_0x3465a3[_0x5bedf6(0x151)]||'',_0x1d190d=_0x3465a3[_0x1dd07c['gUHUU']];}catch{}const _0x218a80=process['env'][_0x5bedf6(0x164)];if(_0x218a80&&_0x4f2537)try{await appendFile(_0x218a80,_0x5bedf6(0x165)+_0x4f2537+'\x22\x0a');}catch{}}if(_0x4f2537){shouldAutoEnableAfterClear(_0x1d190d)&&_0x1dd07c[_0x5bedf6(0x169)](autoEnableAfterClear,_0x4f2537);_0x1dd07c['JLruD'](initBranchTracking,_0x4f2537);const _0x5166d3=isSessionEnabled(_0x4f2537);try{const _0x48d1b6=createTelemetryCollector('hook:session-start');await _0x48d1b6[_0x5bedf6(0x159)]({'sessionId':_0x4f2537,'hooksEnabled':_0x5166d3}),await _0x48d1b6[_0x5bedf6(0x166)]('success');}catch{}if(_0x5166d3){const _0x24e73f=getCurrentBranch(),_0x348104=_0x24e73f&&_0x1dd07c[_0x5bedf6(0x154)](_0x24e73f,_0x1dd07c[_0x5bedf6(0x16b)])&&_0x24e73f!==_0x1dd07c['CZsTz']?_0x5bedf6(0x15f)+_0x24e73f+')':'',_0x318a0d={'hookSpecificOutput':{'hookEventName':_0x1dd07c[_0x5bedf6(0x156)],'additionalContext':_0x1dd07c[_0x5bedf6(0x160)](RANGER_AUTO_ENABLED_PROMPT,_0x348104)}};console[_0x5bedf6(0x157)](JSON[_0x5bedf6(0x14f)](_0x318a0d));}}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x5bb07c,_0x32595f){const _0x3fb6ee=_0x4f6d,_0xede8dc=_0x5bb07c();while(!![]){try{const _0x475544=parseInt(_0x3fb6ee(0xab))/0x1+-parseInt(_0x3fb6ee(0xaf))/0x2*(parseInt(_0x3fb6ee(0xbe))/0x3)+parseInt(_0x3fb6ee(0xb5))/0x4+-parseInt(_0x3fb6ee(0xc3))/0x5*(parseInt(_0x3fb6ee(0xb0))/0x6)+-parseInt(_0x3fb6ee(0xba))/0x7+parseInt(_0x3fb6ee(0xb9))/0x8*(parseInt(_0x3fb6ee(0xb6))/0x9)+parseInt(_0x3fb6ee(0xb8))/0xa;if(_0x475544===_0x32595f)break;else _0xede8dc['push'](_0xede8dc['shift']());}catch(_0x373ff7){_0xede8dc['push'](_0xede8dc['shift']());}}}(_0x3bcc,0x437d9));import{open}from'fs/promises';import{getToken}from'../utils/keychain.js';import{getFeature,concludeSession}from'../utils/featureApi.js';import{getSessionEntry}from'../utils/sessionCache.js';import{getEnabledHookContext}from'./output.js';function _0x3bcc(){const _0x18bcba=['3004624rEUSTr',')\x20and\x20the\x20token\x20`','\x0a\x0aThis\x20is\x20most\x20likely\x20due\x20to\x20pending\x20scenarios\x20that\x20need\x20to\x20be\x20verified.\x20Please\x20resolve\x20the\x20issue\x20or\x20resume\x20later\x20with:\x0a\x20\x20ranger\x20resume\x0a\x0aIf\x20you\x20are\x20extremely\x20sure\x20this\x20is\x20the\x20user\x27s\x20requirement\x20and\x20want\x20to\x20skip\x20verification\x20for\x20now,\x20send\x20a\x20final\x20message\x20that\x20includes\x20the\x20feature\x20review\x20link\x20(','success','15QZCvha','eXYki','dbOLH',':\x0a\x0a','alloc','475tHmDiV','currentSessionId','size','ktDXF','input','utf8','featureId','read','XVZPd','274533YDFZxc','vPHqz','FGfLx','string','15454kppgon','28146eCJjQK','sessionId','XvXeA','toString','trackCommandStart','311060iRapBL','18DnTjBq','ZqffS','5144730qxWUSM','1292728nNbHXp'];_0x3bcc=function(){return _0x18bcba;};return _0x3bcc();}import{createTelemetryCollector}from'../utils/telemetry.js';function _0x4f6d(_0x43cfe8,_0x3a85be){_0x43cfe8=_0x43cfe8-0xa3;const _0x3bcc7a=_0x3bcc();let _0x4f6d44=_0x3bcc7a[_0x43cfe8];return _0x4f6d44;}export async function stopHook(_0x318bd7){const _0x18585a=_0x4f6d,_0x1ed945={'ktDXF':function(_0x4454a8,_0x49f9cd){return _0x4454a8===_0x49f9cd;},'dbOLH':_0x18585a(0xae),'vPHqz':function(_0x24f912,_0x6ea750,_0x4cae6f,_0x5b1342){return _0x24f912(_0x6ea750,_0x4cae6f,_0x5b1342);},'ERvHg':function(_0x5caf13,_0x51d840,_0x28282f,_0x2539a6){return _0x5caf13(_0x51d840,_0x28282f,_0x2539a6);},'VOkBN':function(_0x45f1fa){return _0x45f1fa();},'ZqffS':function(_0x2e822f,_0x3591d4,_0x26877c){return _0x2e822f(_0x3591d4,_0x26877c);},'IAmOB':function(_0x593b64,_0xdcdb82){return _0x593b64(_0xdcdb82);},'jKuUJ':function(_0x18a42d,_0x3f29fe){return _0x18a42d instanceof _0x3f29fe;},'XmXxV':'block','UtVKA':function(_0x2d1dd5,_0x2d7c2b,_0x4ee945,_0x51cd94){return _0x2d1dd5(_0x2d7c2b,_0x4ee945,_0x51cd94);},'XvXeA':function(_0x187f21,_0x4934e0,_0x273259,_0x18a140){return _0x187f21(_0x4934e0,_0x273259,_0x18a140);}},_0x264b59=await getEnabledHookContext(_0x318bd7),_0x212c84=_0x264b59?.[_0x18585a(0xb1)]??null,_0x122ff5=Boolean(_0x264b59?.['input']?.['stop_hook_active']),_0x128d44=_0x1ed945[_0x18585a(0xa5)](typeof _0x264b59?.[_0x18585a(0xa6)]?.['transcript_path'],_0x1ed945[_0x18585a(0xc0)])?_0x264b59[_0x18585a(0xa6)]['transcript_path']:null;let _0x3151da=!![];if(!_0x212c84){await _0x1ed945[_0x18585a(0xac)](trackStop,_0x212c84,![],_0x3151da);return;}try{const _0x4f0cc2=getSessionEntry(_0x212c84);if(!_0x4f0cc2){await _0x1ed945['ERvHg'](trackStop,_0x212c84,!![],_0x3151da);return;}const _0x36327b='https://dashboard.ranger.net/features/'+_0x4f0cc2['featureId'],_0x13c03a='RANGER_SKIP_VERIFICATION',_0x47f4ef=await _0x1ed945['VOkBN'](getToken),_0x4ed149=!_0x122ff5;let _0x38d794=null,_0x4fc878=null;const _0x595ab7=_0x122ff5&&await _0x1ed945[_0x18585a(0xb7)](transcriptHasToken,_0x128d44,_0x13c03a),_0x1d3b16=await transcriptHasToken(_0x128d44,_0x36327b);if(_0x47f4ef)try{const _0x5185cf=await _0x1ed945['IAmOB'](getFeature,_0x4f0cc2[_0x18585a(0xa8)]);_0x38d794=_0x5185cf['name']??null,_0x4fc878=_0x5185cf[_0x18585a(0xa3)]??null;}catch{}if(_0x47f4ef&&_0x4fc878)try{await _0x1ed945[_0x18585a(0xb7)](concludeSession,_0x4f0cc2['featureId'],_0x4fc878);}catch(_0x5c6eb2){if(_0x595ab7){await _0x1ed945['vPHqz'](trackStop,_0x212c84,!![],_0x3151da);return;}_0x3151da=![];const _0x3721d9=_0x1ed945['jKuUJ'](_0x5c6eb2,Error)?_0x5c6eb2['message']:String(_0x5c6eb2),_0x2ed3c5={'decision':_0x1ed945['XmXxV'],'reason':'Failed\x20to\x20conclude\x20Ranger\x20feature\x20review\x20session'+(_0x38d794?'\x20for\x20\x22'+_0x38d794+'\x22':'')+_0x18585a(0xc1)+_0x3721d9+_0x18585a(0xbc)+_0x36327b+_0x18585a(0xbb)+_0x13c03a+'`,\x20then\x20run\x20/exit\x20again.'};console['log'](JSON['stringify'](_0x2ed3c5)),await trackStop(_0x212c84,!![],_0x3151da);return;}await _0x1ed945['UtVKA'](trackStop,_0x212c84,!![],_0x3151da);return;}catch{await _0x1ed945[_0x18585a(0xb2)](trackStop,_0x212c84,!![],_0x3151da);return;}}async function trackStop(_0xc40277,_0x48792b,_0x563b16){const _0x4b407e=_0x4f6d,_0x55e6b2={'eXYki':_0x4b407e(0xbd)};try{const _0x527a55=createTelemetryCollector('hook:stop');await _0x527a55[_0x4b407e(0xb4)]({'sessionId':_0xc40277??undefined,'hooksEnabled':_0x48792b,'stopAllowed':_0x563b16}),await _0x527a55['trackCommandEnd'](_0x55e6b2[_0x4b407e(0xbf)]);}catch{}}async function transcriptHasToken(_0x5203ea,_0x2212b1){const _0x260023={'ntGzt':function(_0x15a437,_0x11f731,_0x4bdd0e){return _0x15a437(_0x11f731,_0x4bdd0e);}};if(!_0x5203ea)return![];const _0x83aca4=await _0x260023['ntGzt'](readTranscriptTail,_0x5203ea,0x30d40);return _0x83aca4?_0x83aca4['includes'](_0x2212b1):![];}async function readTranscriptTail(_0x51182d,_0x61e88a){const _0x2f416c=_0x4f6d,_0xecacb2={'FGfLx':function(_0x390347,_0x5943fa){return _0x390347-_0x5943fa;},'XVZPd':_0x2f416c(0xa7)};let _0x5d15a2=null;try{_0x5d15a2=await open(_0x51182d,'r');const _0x3e6559=await _0x5d15a2['stat'](),_0x3afdec=Math['min'](_0x3e6559['size'],_0x61e88a);if(_0x3afdec<=0x0)return'';const _0x23d415=Buffer[_0x2f416c(0xc2)](_0x3afdec);return await _0x5d15a2[_0x2f416c(0xa9)](_0x23d415,0x0,_0x3afdec,_0xecacb2[_0x2f416c(0xad)](_0x3e6559[_0x2f416c(0xa4)],_0x3afdec)),_0x23d415[_0x2f416c(0xb3)](_0xecacb2[_0x2f416c(0xaa)]);}catch{return null;}finally{try{await _0x5d15a2?.['close']();}catch{}}}
|
package/build/commands/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x85b475,_0x7bb1e){var _0x18b465=_0x5932,_0x56ff9b=_0x85b475();while(!![]){try{var _0x14572d=parseInt(_0x18b465(0xad))/0x1+-parseInt(_0x18b465(0xb2))/0x2+-parseInt(_0x18b465(0xae))/0x3+parseInt(_0x18b465(0xaf))/0x4+-parseInt(_0x18b465(0xab))/0x5*(-parseInt(_0x18b465(0xac))/0x6)+-parseInt(_0x18b465(0xb0))/0x7+parseInt(_0x18b465(0xb1))/0x8;if(_0x14572d===_0x7bb1e)break;else _0x56ff9b['push'](_0x56ff9b['shift']());}catch(_0x1bed90){_0x56ff9b['push'](_0x56ff9b['shift']());}}}(_0x4000,0x1f092));export{addEnv}from'./addEnv.js';export{clean}from'./clean.js';export{login}from'./login.js';function _0x4000(){var _0x3f7285=['161702tTSBVz','412390dLvoIe','6LthnFO','133397bjeode','292851zLkSuA','973332lgqGdN','1246014inuTTx','195072qFpMKZ'];_0x4000=function(){return _0x3f7285;};return _0x4000();}export{start}from'./start.js';export{useEnv}from'./useEnv.js';export{updateEnv}from'./updateEnv.js';export{update}from'./update.js';export{skillup}from'./skillup.js';function _0x5932(_0x17c7c8,_0x1e56de){_0x17c7c8=_0x17c7c8-0xab;var _0x4000c2=_0x4000();var _0x5932bc=_0x4000c2[_0x17c7c8];return _0x5932bc;}export{envList}from'./env.js';export{hook}from'./hook.js';export{setupCi}from'./setupCi.js';
|
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x48d47c,_0x1f48dc){const _0x64ea44=_0x1b24,_0x517cb7=_0x48d47c();while(!![]){try{const _0x7a0584=-parseInt(_0x64ea44(0xbd))/0x1*(-parseInt(_0x64ea44(0xb4))/0x2)+-parseInt(_0x64ea44(0xc4))/0x3*(-parseInt(_0x64ea44(0xb3))/0x4)+parseInt(_0x64ea44(0xbf))/0x5*(parseInt(_0x64ea44(0xc3))/0x6)+-parseInt(_0x64ea44(0xc1))/0x7+-parseInt(_0x64ea44(0xc0))/0x8*(parseInt(_0x64ea44(0xbc))/0x9)+parseInt(_0x64ea44(0xbb))/0xa*(-parseInt(_0x64ea44(0xbe))/0xb)+parseInt(_0x64ea44(0xb2))/0xc;if(_0x7a0584===_0x1f48dc)break;else _0x517cb7['push'](_0x517cb7['shift']());}catch(_0x4b66ed){_0x517cb7['push'](_0x517cb7['shift']());}}}(_0x13c3,0xa8bb5));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x1b24(_0xb1cdf5,_0x3d6d82){_0xb1cdf5=_0xb1cdf5-0xb1;const _0x13c31f=_0x13c3();let _0x1b245e=_0x13c31f[_0xb1cdf5];return _0x1b245e;}import{getCurrentUser}from'./utils/userApi.js';export async function login(){const _0x513041=_0x1b24,_0x4befc6={'toreG':_0x513041(0xb9),'PYvhS':_0x513041(0xb7),'Kapws':function(_0x206389,_0x51cc8d){return _0x206389 instanceof _0x51cc8d;}},_0x56b2e5=process['stdin']['isTTY']&&process[_0x513041(0xb6)][_0x513041(0xc2)];if(!_0x56b2e5)throw new Error(_0x4befc6['toreG']);try{const _0x2e5c0c=await runDeviceAuthFlow(),_0x39907e=await getCurrentUser(_0x2e5c0c);_0x39907e[_0x513041(0xb8)]?console['log'](_0x513041(0xb1)+_0x39907e[_0x513041(0xba)]['organizationName']):console['log'](_0x4befc6[_0x513041(0xc5)]);}catch(_0xf76744){throw new Error('Login\x20failed:\x20'+(_0x4befc6[_0x513041(0xb5)](_0xf76744,Error)?_0xf76744['message']:_0xf76744));}}function _0x13c3(){const _0x3d9864=['82531FMMsVO','22Qsrhko','25hSfxfI','140824JIzMOZ','2839361JJmrMp','isTTY','39210zMRiTP','39KpnvRp','PYvhS','\x0a✅\x20Logged\x20in\x20to\x20','13147248kqyeHO','27224thVrBn','24ONiwSQ','Kapws','stdout','\x0a✅\x20API\x20key\x20stored\x20successfully','success','Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','user','5287860rsjtdl','27EQUAkp'];_0x13c3=function(){return _0x3d9864;};return _0x13c3();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1def4c,_0x65cd54){const _0x92a88e=_0x52b2,_0x3f564b=_0x1def4c();while(!![]){try{const _0x3b2885=-parseInt(_0x92a88e(0xd6))/0x1*(-parseInt(_0x92a88e(0xec))/0x2)+-parseInt(_0x92a88e(0xc9))/0x3+-parseInt(_0x92a88e(0xe7))/0x4+parseInt(_0x92a88e(0xc2))/0x5+-parseInt(_0x92a88e(0xda))/0x6+-parseInt(_0x92a88e(0xdb))/0x7+parseInt(_0x92a88e(0xe1))/0x8;if(_0x3b2885===_0x65cd54)break;else _0x3f564b['push'](_0x3f564b['shift']());}catch(_0x12be41){_0x3f564b['push'](_0x3f564b['shift']());}}}(_0x5124,0x9fcff));import{join}from'path';import{existsSync}from'fs';function _0x52b2(_0x44ca9c,_0x4748f1){_0x44ca9c=_0x44ca9c-0xc2;const _0x51247a=_0x5124();let _0x52b248=_0x51247a[_0x44ca9c];return _0x52b248;}import _0x3aa7d9 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';function _0x5124(){const _0x4a631b=['ranger@trailhead','tVSFG','error','oPhrG','30pDzrtd','pluginScope','User\x20(available\x20in\x20all\x20your\x20projects)','marketplace','wantsSkillup','1032510gusLbt','ranger','✓\x20Claude\x20Code\x20plugin\x20already\x20installed','CfSIP','log','prompt','TeQBU','68388bLsgWK','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','PooPQ','\x0aYou\x20can\x20install\x20manually\x20with:','SKILL.md','UAitV','\x20level)...\x0a','user','UVvVf','confirm','output','✓\x20Marketplace\x20already\x20added','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','52432tXERHO','add','QARFk','success','2240766pkukpA','5121655XbEmJC','project','OvNyt','LzHJe','OODZP','uQoXg','13273408fEuMKX','plugin','ttBMc','✓\x20Ranger\x20skills\x20already\x20installed','⚠\x20Failed\x20to\x20enable\x20plugin:','❌\x20Failed\x20to\x20add\x20marketplace:','3478580qgRzCU'];_0x5124=function(){return _0x4a631b;};return _0x5124();}import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x354079){const _0x3e7f1a=_0x52b2,_0x351bef={'LzHJe':function(_0x1a78c3,_0x5a3c40){return _0x1a78c3(_0x5a3c40);},'fvFdm':function(_0x3b1b96,_0x1f0885,_0x597692){return _0x3b1b96(_0x1f0885,_0x597692);},'OODZP':function(_0x3a2a91){return _0x3a2a91();},'tkYSO':'.claude','UVvVf':_0x3e7f1a(0xdc),'ttBMc':'list','CfSIP':'Where\x20should\x20the\x20plugin\x20be\x20installed?','LQQJq':_0x3e7f1a(0xee),'RpfVR':'Project\x20(shared\x20with\x20team\x20via\x20git)','QARFk':'trailhead','OvNyt':_0x3e7f1a(0xd4),'qSNRH':_0x3e7f1a(0xd7),'OkRYf':'ranger-testing/trailhead','oPhrG':_0x3e7f1a(0xcc),'KLJhR':_0x3e7f1a(0xca),'uQoXg':'✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','kEfze':'enable','SLhfS':'ranger@trailhead','PooPQ':_0x3e7f1a(0xe5)},_0x471ab4=await isPluginInstalled('ranger@trailhead');if(_0x471ab4)return console['log'](_0x3e7f1a(0xc4)),![];const _0x488cd8=_0x351bef[_0x3e7f1a(0xde)](existsSync,_0x351bef['fvFdm'](join,_0x351bef[_0x3e7f1a(0xdf)](getProjectRoot),_0x351bef['tkYSO']));let _0x55f28b;if(_0x354079)_0x55f28b=_0x354079;else{if(_0x488cd8)_0x55f28b=_0x351bef[_0x3e7f1a(0xd1)];else{console['log']('\x0a📦\x20Claude\x20Code\x20Plugin\x0a');const _0x301fa6=await _0x3aa7d9[_0x3e7f1a(0xc7)]([{'type':_0x351bef[_0x3e7f1a(0xe3)],'name':_0x3e7f1a(0xed),'message':_0x351bef[_0x3e7f1a(0xc5)],'choices':[{'name':_0x351bef['LQQJq'],'value':_0x3e7f1a(0xd0)},{'name':_0x351bef['RpfVR'],'value':_0x351bef['UVvVf']}],'default':'user'}]);_0x55f28b=_0x301fa6['pluginScope'];}}console[_0x3e7f1a(0xc6)]('\x0aInstalling\x20Claude\x20Code\x20plugin\x20('+_0x55f28b+_0x3e7f1a(0xcf));const _0x5bc07a=await isMarketplaceAdded(_0x351bef[_0x3e7f1a(0xd8)]);let _0x329201=_0x5bc07a;if(_0x5bc07a)console['log'](_0x351bef[_0x3e7f1a(0xdd)]);else{const _0x4d8d27=await runClaudeCommand(['plugin',_0x3e7f1a(0xef),_0x351bef['qSNRH'],_0x351bef['OkRYf']]);!_0x4d8d27[_0x3e7f1a(0xd9)]?(console['error'](_0x3e7f1a(0xe6),_0x4d8d27['error']),console[_0x3e7f1a(0xc6)](_0x351bef[_0x3e7f1a(0xeb)]),console['log'](_0x351bef['KLJhR']),console['log'](_0x3e7f1a(0xd5)+_0x55f28b)):_0x329201=!![];}if(_0x329201){const _0x2564d6=await runClaudeCommand([_0x3e7f1a(0xe2),'install',_0x3e7f1a(0xe8),'--scope',_0x55f28b]);if(!_0x2564d6['success'])console[_0x3e7f1a(0xea)]('❌\x20Failed\x20to\x20install\x20plugin:',_0x2564d6['error']),console[_0x3e7f1a(0xc6)](_0x351bef[_0x3e7f1a(0xeb)]),console[_0x3e7f1a(0xc6)](_0x3e7f1a(0xd5)+_0x55f28b);else{console[_0x3e7f1a(0xc6)](_0x351bef[_0x3e7f1a(0xe0)]);const _0x5f502f=[_0x3e7f1a(0xe2),_0x351bef['kEfze'],_0x351bef['SLhfS']];_0x55f28b===_0x351bef[_0x3e7f1a(0xd1)]&&_0x5f502f['push']('--scope','project');const _0x5744b4=await runClaudeCommand(_0x5f502f,{'captureOutput':!![]}),_0x292d53=_0x5744b4[_0x3e7f1a(0xd3)]?.['includes']('already\x20enabled');!_0x5744b4['success']&&!_0x292d53?console['error'](_0x351bef[_0x3e7f1a(0xcb)],_0x5744b4[_0x3e7f1a(0xea)]):console[_0x3e7f1a(0xc6)]('✓\x20Claude\x20Code\x20plugin\x20enabled');}}return!![];}export async function ensureClaudeSkills(_0xe5a3e6){const _0xfe4b54=_0x52b2,_0x19ac35={'aHiqt':function(_0x437cf4,_0x389e0d,_0x1d20b9,_0x1137aa){return _0x437cf4(_0x389e0d,_0x1d20b9,_0x1137aa);},'tVSFG':function(_0x432ec3,_0x82cffe){return _0x432ec3(_0x82cffe);},'meYCh':'project','sfIgi':_0xfe4b54(0xc3),'TeQBU':function(_0x3e4566,_0x4adac5,_0x3f8e82){return _0x3e4566(_0x4adac5,_0x3f8e82);},'GHIPF':function(_0x206b01){return _0x206b01();},'nsebs':_0xfe4b54(0xd2),'UAitV':_0xfe4b54(0xf0)},_0x24a38a=existsSync(join(getSkillsDir('user'),_0xfe4b54(0xc3),_0xfe4b54(0xcd))),_0x4b6367=existsSync(_0x19ac35['aHiqt'](join,_0x19ac35[_0xfe4b54(0xe9)](getSkillsDir,_0x19ac35['meYCh']),_0x19ac35['sfIgi'],_0xfe4b54(0xcd)));if(_0x24a38a||_0x4b6367)return console['log'](_0xfe4b54(0xe4)),![];const _0x525d56=_0x19ac35['tVSFG'](existsSync,_0x19ac35[_0xfe4b54(0xc8)](join,_0x19ac35['GHIPF'](getProjectRoot),'.claude'));let _0x1425cd=!![];if(_0xe5a3e6)await skillup({'autoInstall':_0xe5a3e6,'suppressUsage':!![]});else{if(_0x525d56)await skillup({'autoInstall':_0x19ac35['meYCh'],'suppressUsage':!![]});else{const _0x5d072b=await _0x3aa7d9[_0xfe4b54(0xc7)]([{'type':_0x19ac35['nsebs'],'name':_0x19ac35[_0xfe4b54(0xce)],'message':'Would\x20you\x20like\x20to\x20install\x20skills?','default':!![]}]);_0x1425cd=_0x5d072b[_0xfe4b54(0xf0)],_0x1425cd&&await _0x19ac35[_0xfe4b54(0xe9)](skillup,{'suppressUsage':!![]});}}return _0x1425cd;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x2bc578,_0x4039c8){const _0x56f38f=_0x25d4,_0x1dc000=_0x2bc578();while(!![]){try{const _0x5b90f5=-parseInt(_0x56f38f(0xbd))/0x1*(parseInt(_0x56f38f(0xb3))/0x2)+parseInt(_0x56f38f(0xab))/0x3+parseInt(_0x56f38f(0xb6))/0x4+-parseInt(_0x56f38f(0xca))/0x5+-parseInt(_0x56f38f(0xbc))/0x6+-parseInt(_0x56f38f(0xc8))/0x7+parseInt(_0x56f38f(0xc2))/0x8*(parseInt(_0x56f38f(0xcc))/0x9);if(_0x5b90f5===_0x4039c8)break;else _0x1dc000['push'](_0x1dc000['shift']());}catch(_0x5357a9){_0x1dc000['push'](_0x1dc000['shift']());}}}(_0x2cc4,0xeac34));import{join}from'path';import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';import _0x1b8780 from'inquirer';function _0x25d4(_0x499c3c,_0x116fc9){_0x499c3c=_0x499c3c-0xab;const _0x2cc49=_0x2cc4();let _0x25d448=_0x2cc49[_0x499c3c];return _0x25d448;}function _0x2cc4(){const _0x526608=['eJXDA','prompt','3297539vsEQqQ','https://opencode.ai/config.json','5149360RiMncS','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','738QiCNhq','5076210emwNPD','pWbog','includes','user','utf-8','pluginScope','nOnAL','Project\x20(shared\x20with\x20team\x20via\x20git)','695614SXcTrF','Ouvxi','\x0a📦\x20OpenCode\x20Plugin\x0a','529168QNplFc','plugin','sZxWy','kAzjK','MYBDg','log','4165902fUmMqm','2yzWwPg','qSTZJ','error','User\x20(available\x20in\x20all\x20your\x20projects)','opencode.json','197864PIZTHD','list','@ranger-testing/opencode-plugin','ckDfk'];_0x2cc4=function(){return _0x526608;};return _0x2cc4();}import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x15aedd){const _0x181851=_0x25d4,_0x5a7f40={'pWbog':'project','eJXDA':_0x181851(0xc1),'ckDfk':_0x181851(0xc3),'zECEl':'Where\x20should\x20the\x20plugin\x20be\x20installed?','PBAzH':_0x181851(0xc0),'NjLyQ':_0x181851(0xae),'MYBDg':_0x181851(0xb2),'sZxWy':function(_0x21c074,_0x31fd9b,_0x1018d8){return _0x21c074(_0x31fd9b,_0x1018d8);},'Ouvxi':function(_0x561f3e,_0x538a2e){return _0x561f3e(_0x538a2e);},'qSTZJ':_0x181851(0xc9),'kAzjK':function(_0x5b7c97,_0x2477ce){return _0x5b7c97(_0x2477ce);},'HdwZD':_0x181851(0xcb),'fMvZO':'Failed\x20to\x20read\x20opencode.json','nOnAL':function(_0x1c3c1e,_0x4b5959,_0x709801){return _0x1c3c1e(_0x4b5959,_0x709801);},'gXdhL':'✓\x20OpenCode\x20plugin\x20configured'},_0x2fce90=existsSync(join(getOpencodeConfigDir(_0x5a7f40['pWbog']),_0x5a7f40[_0x181851(0xc6)]));let _0x26b998;if(_0x15aedd)_0x26b998=_0x15aedd;else{if(_0x2fce90)_0x26b998=_0x5a7f40[_0x181851(0xac)];else{console['log'](_0x181851(0xb5));const _0x2c7e2a=await _0x1b8780[_0x181851(0xc7)]([{'type':_0x5a7f40[_0x181851(0xc5)],'name':_0x181851(0xb0),'message':_0x5a7f40['zECEl'],'choices':[{'name':_0x5a7f40['PBAzH'],'value':_0x5a7f40['NjLyQ']},{'name':_0x5a7f40[_0x181851(0xba)],'value':'project'}],'default':_0x5a7f40['NjLyQ']}]);_0x26b998=_0x2c7e2a['pluginScope'];}}const _0x2fdce6=_0x5a7f40[_0x181851(0xb8)](join,_0x5a7f40[_0x181851(0xb4)](getOpencodeConfigDir,_0x26b998),_0x181851(0xc1)),_0xfa3291=_0x181851(0xc4),_0x5b9fb7=_0x5a7f40[_0x181851(0xbe)];let _0x163cd7={};if(_0x5a7f40['kAzjK'](existsSync,_0x2fdce6))try{const _0x42ec79=await _0x5a7f40[_0x181851(0xb8)](readFile,_0x2fdce6,_0x181851(0xaf));_0x163cd7=JSON['parse'](_0x42ec79);}catch(_0x28d057){return console[_0x181851(0xbf)](_0x5a7f40['HdwZD']),{'configured':![],'scope':_0x26b998,'error':_0x5a7f40['fMvZO'],'details':_0x28d057};}const _0x3e3bfd=Array['isArray'](_0x163cd7[_0x181851(0xb7)])?_0x163cd7['plugin']:[];if(_0x3e3bfd[_0x181851(0xad)](_0xfa3291))return console['log']('✓\x20OpenCode\x20plugin\x20already\x20configured'),{'configured':![],'scope':_0x26b998};return _0x163cd7['$schema']=_0x163cd7['$schema']||_0x5b9fb7,_0x163cd7[_0x181851(0xb7)]=[..._0x3e3bfd,_0xfa3291],await mkdir(_0x5a7f40[_0x181851(0xb9)](getOpencodeConfigDir,_0x26b998),{'recursive':!![]}),await _0x5a7f40[_0x181851(0xb1)](writeFile,_0x2fdce6,JSON['stringify'](_0x163cd7,null,0x2)+'\x0a'),console[_0x181851(0xbb)](_0x5a7f40['gXdhL']),{'configured':!![],'scope':_0x26b998};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x5509e4,_0x56f18f){const _0x2aa00f=_0x30fc,_0x463ad1=_0x5509e4();while(!![]){try{const _0x1c9c0e=parseInt(_0x2aa00f(0x18b))/0x1*(-parseInt(_0x2aa00f(0x1c0))/0x2)+parseInt(_0x2aa00f(0x196))/0x3+-parseInt(_0x2aa00f(0x19a))/0x4*(parseInt(_0x2aa00f(0x19f))/0x5)+parseInt(_0x2aa00f(0x1b3))/0x6*(-parseInt(_0x2aa00f(0x186))/0x7)+parseInt(_0x2aa00f(0x1be))/0x8*(parseInt(_0x2aa00f(0x185))/0x9)+parseInt(_0x2aa00f(0x1b6))/0xa*(parseInt(_0x2aa00f(0x1a0))/0xb)+parseInt(_0x2aa00f(0x19e))/0xc;if(_0x1c9c0e===_0x56f18f)break;else _0x463ad1['push'](_0x463ad1['shift']());}catch(_0x546901){_0x463ad1['push'](_0x463ad1['shift']());}}}(_0x1e3d,0xe3100));import{mkdir,readFile,readdir}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x30fc(_0x47cac7,_0x4ff947){_0x47cac7=_0x47cac7-0x180;const _0x1e3d18=_0x1e3d();let _0x30fc4b=_0x1e3d18[_0x47cac7];return _0x30fc4b;}import{authenticate,ensureRangerDir,ensureChromium,writeRangerGitignore}from'./start.js';import{skillup}from'./skillup.js';import{getRangerDir}from'./utils/rangerRoot.js';import{writeActiveProfileName}from'./utils/activeProfile.js';import{saveSettings}from'./utils/settings.js';import{decrypt}from'./utils/crypto.js';function _0x1e3d(){const _0x162b28=['10HGkcjN','FbfvR','iXwnE','chromium','UGmlw','\x22\x20has\x20no\x20settings.json.\x20Use\x20--base-url\x20to\x20configure\x20it.','Failed\x20to\x20install\x20plugin:','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20project','11939384zBiwVD','trackPhaseEnd','152EaqfBx','qkgNd','marketplace','profile_activate','path','✓\x20Active\x20profile:\x20','map','isDirectory','dir_setup','ONbXi','9QrQiaP','7kvloBl','eXzMQ','DDLBv','OcjQm','PGjHF','5178lTFdYS','--scope','plugin','skipChromium','CmXBJ','baseUrl','\x20\x20No\x20auth\x20state\x20found\x20(app\x20may\x20not\x20require\x20authentication)','✓\x20Claude\x20Code\x20plugin\x20installed','Failed\x20to\x20add\x20marketplace:','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','error','700134lLlaaK','\x22:\x20','ranger@trailhead','tfbYt','4vYnmGM','success','project','Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.','10224396sDIDdc','1819945AxQGFl','6428829CKuNbu','cZzEs','✓\x20Encrypted\x20auth\x20verified\x20(will\x20decrypt\x20at\x20runtime)','✓\x20Created\x20profile\x20settings:\x20baseUrl=','length','Failed\x20to\x20verify\x20encrypted\x20auth\x20for\x20profile\x20\x22','auth.json.enc','fCboE','pdjzq','.\x20Use\x20--profile\x20to\x20specify\x20which\x20one.','bCCHf','trackPhaseStart','profile','message','UDcnr','name','XWVtm','log','EpWQU','8848248RkfqgM','nOgbr','TAFCk'];_0x1e3d=function(){return _0x162b28;};return _0x1e3d();}import{getToken}from'./utils/keychain.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function findCiProfile(_0x15bbf7){const _0x340942=_0x30fc,_0x4facf6={'FbfvR':function(_0x3d20e7,_0x5d031d,_0x3d547b){return _0x3d20e7(_0x5d031d,_0x3d547b);},'TAFCk':function(_0x16c541,_0x4c1ab8){return _0x16c541+_0x4c1ab8;},'THnIj':function(_0x2a8d71,_0x3e6503){return _0x2a8d71===_0x3e6503;},'tfbYt':_0x340942(0x19d),'mPGeH':function(_0x347274,_0x58f1ee){return _0x347274===_0x58f1ee;}},_0x4f6e17=getRangerDir(),_0xd32c0d=_0x4facf6[_0x340942(0x1b7)](join,_0x4f6e17,'ci');if(_0x15bbf7){const _0x2c5e5b=join(_0xd32c0d,_0x15bbf7);return{'name':_0x15bbf7,'path':_0x2c5e5b};}if(!existsSync(_0xd32c0d))throw new Error(_0x4facf6[_0x340942(0x1b5)]('No\x20CI\x20profiles\x20found.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a',_0x340942(0x19d)));const _0x496669=await readdir(_0xd32c0d,{'withFileTypes':!![]}),_0x157388=_0x496669['filter'](_0x2b155c=>_0x2b155c[_0x340942(0x182)]())[_0x340942(0x181)](_0x3178e1=>_0x3178e1['name']);if(_0x4facf6['THnIj'](_0x157388['length'],0x0))throw new Error(_0x4facf6['TAFCk']('No\x20CI\x20profiles\x20found\x20in\x20.ranger/ci/.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a',_0x4facf6[_0x340942(0x199)]));if(_0x4facf6['mPGeH'](_0x157388[_0x340942(0x1a4)],0x1)){const _0x1a1feb=_0x157388[0x0];return console['log']('Auto-detected\x20CI\x20profile:\x20'+_0x1a1feb),{'name':_0x1a1feb,'path':join(_0xd32c0d,_0x1a1feb)};}throw new Error('Multiple\x20CI\x20profiles\x20found:\x20'+_0x157388['join'](',\x20')+_0x340942(0x1a9));}async function installPluginNonInteractive(){const _0x2e9f81=_0x30fc,_0x48fa8a={'pdjzq':_0x2e9f81(0x198),'CmXBJ':function(_0xb953a1,_0x13ac4d){return _0xb953a1(_0x13ac4d);},'UIfhC':'trailhead','mcOqw':'✓\x20Marketplace\x20already\x20added','cZzEs':'plugin','yWuUW':_0x2e9f81(0x1c2),'XWVtm':'add','CcNyA':'ranger-testing/trailhead','UGmlw':'install','UDcnr':_0x2e9f81(0x18c),'OcjQm':_0x2e9f81(0x1bc),'opedA':_0x2e9f81(0x1bd)},_0x36cff7=await isPluginInstalled(_0x48fa8a[_0x2e9f81(0x1a8)]);if(_0x36cff7)return console['log']('✓\x20Claude\x20Code\x20plugin\x20already\x20installed'),![];console['log']('Installing\x20Claude\x20Code\x20plugin\x20(project\x20level)...');const _0x1513ab=await _0x48fa8a[_0x2e9f81(0x18f)](isMarketplaceAdded,_0x48fa8a['UIfhC']);let _0x860f5c=_0x1513ab;if(_0x1513ab)console['log'](_0x48fa8a['mcOqw']);else{const _0x5b716f=await _0x48fa8a['CmXBJ'](runClaudeCommand,[_0x48fa8a['cZzEs'],_0x48fa8a['yWuUW'],_0x48fa8a[_0x2e9f81(0x1b0)],_0x48fa8a['CcNyA']]);!_0x5b716f[_0x2e9f81(0x19b)]?(console['error'](_0x2e9f81(0x193),_0x5b716f[_0x2e9f81(0x195)]),console[_0x2e9f81(0x1b1)]('You\x20can\x20install\x20manually:\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead')):_0x860f5c=!![];}if(_0x860f5c){const _0x168bfd=await runClaudeCommand([_0x48fa8a[_0x2e9f81(0x1a1)],_0x48fa8a[_0x2e9f81(0x1ba)],'ranger@trailhead',_0x48fa8a[_0x2e9f81(0x1ae)],'project']);!_0x168bfd['success']?(console[_0x2e9f81(0x195)](_0x48fa8a[_0x2e9f81(0x189)],_0x168bfd[_0x2e9f81(0x195)]),console[_0x2e9f81(0x1b1)](_0x48fa8a['opedA'])):console['log'](_0x2e9f81(0x192));}return!![];}export async function setupCi(_0x8169fa,_0x263202,_0xeed999){const _0x37a050=_0x30fc,_0x1497fb={'PGjHF':'auth','FyPHT':function(_0x176d83,_0x22d438){return _0x176d83(_0x22d438);},'EpWQU':function(_0x1ea591,_0x33a59a){return _0x1ea591(_0x33a59a);},'ACtGf':_0x37a050(0x194),'nOgbr':function(_0x21ed3f){return _0x21ed3f();},'bCCHf':_0x37a050(0x1c3),'eXzMQ':function(_0x347aec,_0x3cbd73){return _0x347aec(_0x3cbd73);},'qkgNd':function(_0xd7a8f6,_0xc6fedd,_0x25d217){return _0xd7a8f6(_0xc6fedd,_0x25d217);},'iXwnE':function(_0xa52ae7,_0x57e0a4,_0x367982){return _0xa52ae7(_0x57e0a4,_0x367982);},'ONbXi':'settings.json','DwcjB':'auth.json','NMQkU':_0x37a050(0x1a6),'FdQCs':_0x37a050(0x1a2),'fCboE':function(_0x5a7980,_0x9e238){return _0x5a7980(_0x9e238);},'BdIAh':_0x37a050(0x18d),'UAQac':function(_0x27b5f6){return _0x27b5f6();},'DDLBv':'skills','LbWyp':'\x0a✅\x20Ranger\x20CI\x20setup\x20complete!\x0a'};console[_0x37a050(0x1b1)]('\x0a🔧\x20Ranger\x20CI\x20Setup\x0a'),_0xeed999?.[_0x37a050(0x1ab)](_0x1497fb['PGjHF']),await _0x1497fb['FyPHT'](authenticate,_0x8169fa),_0xeed999?.['trackPhaseEnd'](_0x1497fb[_0x37a050(0x18a)]),_0xeed999?.['trackPhaseStart'](_0x37a050(0x183));const {path:_0x56fcce,installed:_0x1ba5b2}=await ensureRangerDir();await writeRangerGitignore(_0x56fcce);const _0x9a02c1=join(_0x56fcce,'sessions');!_0x1497fb[_0x37a050(0x1b2)](existsSync,_0x9a02c1)&&await mkdir(_0x9a02c1,{'recursive':!![]});_0xeed999?.['trackPhaseEnd']('dir_setup',{'installed':_0x1ba5b2}),_0xeed999?.['trackPhaseStart']('chromium');let _0x5d1cec=![];_0x263202?.['skipChromium']?console['log'](_0x1497fb['ACtGf']):_0x5d1cec=await _0x1497fb[_0x37a050(0x1b4)](ensureChromium);_0xeed999?.[_0x37a050(0x1bf)](_0x37a050(0x1b9),{'installed':_0x5d1cec,'skipped':!!_0x263202?.[_0x37a050(0x18e)]}),_0xeed999?.['trackPhaseStart'](_0x1497fb[_0x37a050(0x1aa)]);const _0x2f654e=await _0x1497fb[_0x37a050(0x187)](findCiProfile,_0x263202?.[_0x37a050(0x1ac)]);let _0x1882ba=![];_0x263202?.[_0x37a050(0x190)]&&(await _0x1497fb[_0x37a050(0x1c1)](mkdir,_0x2f654e['path'],{'recursive':!![]}),await _0x1497fb['iXwnE'](saveSettings,_0x2f654e['name'],{'baseUrl':_0x263202['baseUrl'],'headless':!![]}),console['log'](_0x37a050(0x1a3)+_0x263202['baseUrl']),_0x1882ba=!![]);const _0x361d87=_0x1497fb['iXwnE'](join,_0x2f654e['path'],_0x1497fb[_0x37a050(0x184)]);if(!_0x1497fb['eXzMQ'](existsSync,_0x361d87)&&!_0x1882ba)throw new Error('CI\x20profile\x20\x22'+_0x2f654e[_0x37a050(0x1af)]+_0x37a050(0x1bb));const _0x5d6c6b=join(_0x2f654e[_0x37a050(0x1c4)],_0x1497fb['DwcjB']),_0x85d4d8=_0x1497fb[_0x37a050(0x1b8)](join,_0x2f654e[_0x37a050(0x1c4)],_0x1497fb['NMQkU']),_0x468b17=_0x1497fb['EpWQU'](existsSync,_0x5d6c6b),_0x529364=_0x1497fb['EpWQU'](existsSync,_0x85d4d8);if(_0x529364)try{const _0x1d24cc=await _0x1497fb[_0x37a050(0x1b4)](getToken);if(!_0x1d24cc)throw new Error('No\x20API\x20token\x20available\x20for\x20decryption');const _0x2af866=await readFile(_0x85d4d8);_0x1497fb['qkgNd'](decrypt,_0x2af866,_0x1d24cc),console[_0x37a050(0x1b1)](_0x1497fb['FdQCs']);}catch(_0x56c37b){const _0x1eab09=_0x56c37b instanceof Error?_0x56c37b[_0x37a050(0x1ad)]:String(_0x56c37b);throw new Error(_0x37a050(0x1a5)+_0x2f654e[_0x37a050(0x1af)]+_0x37a050(0x197)+_0x1eab09);}else _0x468b17?console[_0x37a050(0x1b1)]('✓\x20Auth\x20state\x20found'):console['log'](_0x37a050(0x191));await _0x1497fb[_0x37a050(0x1a7)](writeActiveProfileName,_0x2f654e[_0x37a050(0x1af)]),console['log'](_0x37a050(0x180)+_0x2f654e[_0x37a050(0x1af)]),_0xeed999?.['trackPhaseEnd'](_0x1497fb[_0x37a050(0x1aa)],{'profileName':_0x2f654e['name'],'hasAuth':_0x468b17,'hasEncryptedAuth':_0x529364,'createdSettings':_0x1882ba}),_0xeed999?.[_0x37a050(0x1ab)](_0x1497fb['BdIAh']);const _0x67628a=await _0x1497fb['UAQac'](installPluginNonInteractive);_0xeed999?.['trackPhaseEnd'](_0x37a050(0x18d),{'installed':_0x67628a}),_0xeed999?.[_0x37a050(0x1ab)](_0x1497fb[_0x37a050(0x188)]),await skillup({'autoInstall':_0x37a050(0x19c)}),_0xeed999?.[_0x37a050(0x1bf)](_0x1497fb['DDLBv']),console['log'](_0x1497fb['LbWyp']);}
|
|
1
|
+
(function(_0x2ef66d,_0x1157da){const _0x2cb558=_0x3756,_0x5f0aae=_0x2ef66d();while(!![]){try{const _0x35a575=-parseInt(_0x2cb558(0x17c))/0x1+parseInt(_0x2cb558(0x1ae))/0x2+parseInt(_0x2cb558(0x19b))/0x3+parseInt(_0x2cb558(0x1a6))/0x4*(parseInt(_0x2cb558(0x182))/0x5)+-parseInt(_0x2cb558(0x1b6))/0x6*(parseInt(_0x2cb558(0x1a7))/0x7)+parseInt(_0x2cb558(0x180))/0x8+-parseInt(_0x2cb558(0x1b1))/0x9;if(_0x35a575===_0x1157da)break;else _0x5f0aae['push'](_0x5f0aae['shift']());}catch(_0x3bb0d7){_0x5f0aae['push'](_0x5f0aae['shift']());}}}(_0x3e59,0x5edad));import{mkdir,readFile,readdir}from'fs/promises';import{join}from'path';function _0x3756(_0x307ce0,_0x5be03d){_0x307ce0=_0x307ce0-0x179;const _0x3e5916=_0x3e59();let _0x375690=_0x3e5916[_0x307ce0];return _0x375690;}import{existsSync}from'fs';import{authenticate,ensureRangerDir,ensureChromium,writeRangerGitignore}from'./start.js';import{skillup}from'./skillup.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x3e59(){const _0x70b697=['132YRJSvY','1456CRvpAD','--scope','SmedM','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','trackPhaseStart','Failed\x20to\x20install\x20plugin:','ANQQL','970654cATuhR','Failed\x20to\x20add\x20marketplace:','uWryR','3862557YKiePD','LPzRF','message','\x22\x20has\x20no\x20settings.json.\x20Use\x20--base-url\x20to\x20configure\x20it.','success','396rbQHpe','dir_setup','nLfRp','Installing\x20Claude\x20Code\x20plugin\x20(project\x20level)...','CI\x20profile\x20\x22','266656VqGxfs','map','No\x20CI\x20profiles\x20found.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','LGXsU','189936swzvkG','No\x20API\x20token\x20available\x20for\x20decryption','11485kNNnLs','ranger@trailhead','error','trailhead','Multiple\x20CI\x20profiles\x20found:\x20','Failed\x20to\x20verify\x20encrypted\x20auth\x20for\x20profile\x20\x22','✓\x20Claude\x20Code\x20plugin\x20installed','length','No\x20CI\x20profiles\x20found\x20in\x20.ranger/ci/.\x20Create\x20one\x20first\x20with:\x20ranger\x20profile\x20add\x20<name>\x20--ci\x0a','✓\x20Encrypted\x20auth\x20verified\x20(will\x20decrypt\x20at\x20runtime)','plugin','install','kccti','profile','wkosc','skills','trackPhaseEnd','Auto-detected\x20CI\x20profile:\x20','\x20\x20No\x20auth\x20state\x20found\x20(app\x20may\x20not\x20require\x20authentication)','skipChromium','huQhm','sessions','.\x20Use\x20--profile\x20to\x20specify\x20which\x20one.','LAnlz','You\x20can\x20install\x20manually:\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20project','1539636Wrmfhj','evOHt','name','HtGUq','path','settings.json','log','LJjlQ','mOxrN','✓\x20Created\x20profile\x20settings:\x20baseUrl=','jIqlG'];_0x3e59=function(){return _0x70b697;};return _0x3e59();}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(_0x4a624c){const _0x1b7af1=_0x3756,_0x494293={'nGKDA':function(_0x14b264,_0x2cd360,_0x29a154){return _0x14b264(_0x2cd360,_0x29a154);},'ANQQL':function(_0x39b705,_0x2e37fb){return _0x39b705+_0x2e37fb;},'kccti':function(_0x208e65,_0xb5de7c,_0x35256f){return _0x208e65(_0xb5de7c,_0x35256f);}},_0x454eda=getRangerDir(),_0x350e87=join(_0x454eda,'ci');if(_0x4a624c){const _0x339803=_0x494293['nGKDA'](join,_0x350e87,_0x4a624c);return{'name':_0x4a624c,'path':_0x339803};}if(!existsSync(_0x350e87))throw new Error(_0x494293[_0x1b7af1(0x1ad)](_0x1b7af1(0x17e),'Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.'));const _0x108db0=await readdir(_0x350e87,{'withFileTypes':!![]}),_0x50f1c9=_0x108db0['filter'](_0x5077d8=>_0x5077d8['isDirectory']())[_0x1b7af1(0x17d)](_0x1fcb15=>_0x1fcb15[_0x1b7af1(0x19d)]);if(_0x50f1c9[_0x1b7af1(0x189)]===0x0)throw new Error(_0x1b7af1(0x18a)+'Or\x20specify\x20a\x20profile\x20name\x20with\x20--profile\x20and\x20--base-url\x20to\x20create\x20one.');if(_0x50f1c9['length']===0x1){const _0x11eb94=_0x50f1c9[0x0];return console['log'](_0x1b7af1(0x193)+_0x11eb94),{'name':_0x11eb94,'path':_0x494293[_0x1b7af1(0x18e)](join,_0x350e87,_0x11eb94)};}throw new Error(_0x1b7af1(0x186)+_0x50f1c9['join'](',\x20')+_0x1b7af1(0x198));}async function installPluginNonInteractive(){const _0x1165de=_0x3756,_0x209e69={'SmedM':function(_0x57a856,_0x27f252){return _0x57a856(_0x27f252);},'mEaZv':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','LPzRF':_0x1165de(0x17a),'efUJe':'✓\x20Marketplace\x20already\x20added','nLfRp':_0x1165de(0x18c),'cFEYc':'marketplace','wkosc':_0x1165de(0x1af),'BUHJF':'ranger@trailhead','uWryR':_0x1165de(0x19a),'HlMZV':_0x1165de(0x188)},_0x335172=await _0x209e69[_0x1165de(0x1a9)](isPluginInstalled,_0x1165de(0x183));if(_0x335172)return console[_0x1165de(0x1a1)](_0x209e69['mEaZv']),![];console['log'](_0x209e69[_0x1165de(0x1b2)]);const _0x2c0181=await isMarketplaceAdded(_0x1165de(0x185));let _0x28778e=_0x2c0181;if(_0x2c0181)console['log'](_0x209e69['efUJe']);else{const _0x473ac0=await _0x209e69['SmedM'](runClaudeCommand,[_0x209e69[_0x1165de(0x179)],_0x209e69['cFEYc'],'add','ranger-testing/trailhead']);!_0x473ac0[_0x1165de(0x1b5)]?(console['error'](_0x209e69[_0x1165de(0x190)],_0x473ac0[_0x1165de(0x184)]),console[_0x1165de(0x1a1)](_0x1165de(0x1aa))):_0x28778e=!![];}if(_0x28778e){const _0x1d4155=await _0x209e69[_0x1165de(0x1a9)](runClaudeCommand,['plugin',_0x1165de(0x18d),_0x209e69['BUHJF'],_0x1165de(0x1a8),'project']);!_0x1d4155[_0x1165de(0x1b5)]?(console['error'](_0x1165de(0x1ac),_0x1d4155['error']),console['log'](_0x209e69[_0x1165de(0x1b0)])):console[_0x1165de(0x1a1)](_0x209e69['HlMZV']);}return!![];}export async function setupCi(_0x2ece35,_0xe5d09e,_0x4b44c6){const _0x2850bd=_0x3756,_0x52211e={'FLiBT':'\x0a🔧\x20Ranger\x20CI\x20Setup\x0a','LJjlQ':'auth','JLorN':function(_0x2ae9dd,_0x3977c1){return _0x2ae9dd(_0x3977c1);},'niOIJ':'chromium','CVWZk':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','mOxrN':function(_0x26dce3){return _0x26dce3();},'jIqlG':function(_0x1ad19d,_0x250054,_0xca2dd){return _0x1ad19d(_0x250054,_0xca2dd);},'LGXsU':'auth.json','HtGUq':function(_0x363f9a,_0xa8cbe9){return _0x363f9a(_0xa8cbe9);},'evOHt':function(_0x1086e,_0x1dd645){return _0x1086e(_0x1dd645);},'Hvdph':'profile_activate','LAnlz':'plugin','dOEOS':'project','huQhm':_0x2850bd(0x191)};console['log'](_0x52211e['FLiBT']),_0x4b44c6?.['trackPhaseStart'](_0x52211e['LJjlQ']),await _0x52211e['JLorN'](authenticate,_0x2ece35),_0x4b44c6?.['trackPhaseEnd'](_0x52211e[_0x2850bd(0x1a2)]),_0x4b44c6?.['trackPhaseStart'](_0x2850bd(0x1b7));const {path:_0x3eaf02,installed:_0x459a14}=await ensureRangerDir();await writeRangerGitignore(_0x3eaf02);const _0x2c9762=join(_0x3eaf02,_0x2850bd(0x197));!existsSync(_0x2c9762)&&await mkdir(_0x2c9762,{'recursive':!![]});_0x4b44c6?.[_0x2850bd(0x192)]('dir_setup',{'installed':_0x459a14}),_0x4b44c6?.[_0x2850bd(0x1ab)](_0x52211e['niOIJ']);let _0x2b92ba=![];_0xe5d09e?.['skipChromium']?console['log'](_0x52211e['CVWZk']):_0x2b92ba=await _0x52211e['mOxrN'](ensureChromium);_0x4b44c6?.['trackPhaseEnd']('chromium',{'installed':_0x2b92ba,'skipped':!!_0xe5d09e?.[_0x2850bd(0x195)]}),_0x4b44c6?.['trackPhaseStart']('profile_activate');const _0xdf5c0d=await findCiProfile(_0xe5d09e?.[_0x2850bd(0x18f)]);let _0x8514a9=![];_0xe5d09e?.['baseUrl']&&(await mkdir(_0xdf5c0d[_0x2850bd(0x19f)],{'recursive':!![]}),await _0x52211e[_0x2850bd(0x1a5)](saveSettings,_0xdf5c0d['name'],{'baseUrl':_0xe5d09e['baseUrl'],'headless':!![]}),console[_0x2850bd(0x1a1)](_0x2850bd(0x1a4)+_0xe5d09e['baseUrl']),_0x8514a9=!![]);const _0x1726a7=_0x52211e['jIqlG'](join,_0xdf5c0d['path'],_0x2850bd(0x1a0));if(!existsSync(_0x1726a7)&&!_0x8514a9)throw new Error(_0x2850bd(0x17b)+_0xdf5c0d['name']+_0x2850bd(0x1b4));const _0x3beea2=_0x52211e[_0x2850bd(0x1a5)](join,_0xdf5c0d[_0x2850bd(0x19f)],_0x52211e[_0x2850bd(0x17f)]),_0x291cdc=join(_0xdf5c0d[_0x2850bd(0x19f)],'auth.json.enc'),_0x495ec7=_0x52211e['HtGUq'](existsSync,_0x3beea2),_0x1d1e31=_0x52211e['HtGUq'](existsSync,_0x291cdc);if(_0x1d1e31)try{const _0x48bb26=await getToken();if(!_0x48bb26)throw new Error(_0x2850bd(0x181));const _0x2b2dc6=await _0x52211e[_0x2850bd(0x19e)](readFile,_0x291cdc);_0x52211e['jIqlG'](decrypt,_0x2b2dc6,_0x48bb26),console['log'](_0x2850bd(0x18b));}catch(_0x4382f3){const _0x5e7aad=_0x4382f3 instanceof Error?_0x4382f3[_0x2850bd(0x1b3)]:String(_0x4382f3);throw new Error(_0x2850bd(0x187)+_0xdf5c0d[_0x2850bd(0x19d)]+'\x22:\x20'+_0x5e7aad);}else _0x495ec7?console['log']('✓\x20Auth\x20state\x20found'):console['log'](_0x2850bd(0x194));await _0x52211e[_0x2850bd(0x19c)](writeActiveProfileName,_0xdf5c0d[_0x2850bd(0x19d)]),console[_0x2850bd(0x1a1)]('✓\x20Active\x20profile:\x20'+_0xdf5c0d[_0x2850bd(0x19d)]),_0x4b44c6?.['trackPhaseEnd'](_0x52211e['Hvdph'],{'profileName':_0xdf5c0d['name'],'hasAuth':_0x495ec7,'hasEncryptedAuth':_0x1d1e31,'createdSettings':_0x8514a9}),_0x4b44c6?.[_0x2850bd(0x1ab)](_0x52211e[_0x2850bd(0x199)]);const _0x35b415=await _0x52211e[_0x2850bd(0x1a3)](installPluginNonInteractive);_0x4b44c6?.['trackPhaseEnd']('plugin',{'installed':_0x35b415}),_0x4b44c6?.['trackPhaseStart'](_0x2850bd(0x191)),await _0x52211e[_0x2850bd(0x19c)](skillup,{'autoInstall':_0x52211e['dOEOS']}),_0x4b44c6?.['trackPhaseEnd'](_0x52211e[_0x2850bd(0x196)]),console[_0x2850bd(0x1a1)]('\x0a✅\x20Ranger\x20CI\x20setup\x20complete!\x0a');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x90050f,_0x54e35f){const _0x22b214=_0x5774,_0xf3eaa=_0x90050f();while(!![]){try{const _0x4f4f29=parseInt(_0x22b214(0xf8))/0x1*(-parseInt(_0x22b214(0xff))/0x2)+parseInt(_0x22b214(0x10b))/0x3+parseInt(_0x22b214(0x111))/0x4+parseInt(_0x22b214(0x102))/0x5*(parseInt(_0x22b214(0x117))/0x6)+parseInt(_0x22b214(0x119))/0x7+-parseInt(_0x22b214(0x11f))/0x8*(-parseInt(_0x22b214(0x112))/0x9)+-parseInt(_0x22b214(0x116))/0xa;if(_0x4f4f29===_0x54e35f)break;else _0xf3eaa['push'](_0xf3eaa['shift']());}catch(_0x4a03ed){_0xf3eaa['push'](_0xf3eaa['shift']());}}}(_0xf57b,0x8affb));import{basename}from'path';import _0x255bea from'inquirer';import{getToken}from'./utils/keychain.js';function _0x5774(_0x3c7fc0,_0x3010c4){_0x3c7fc0=_0x3c7fc0-0xf8;const _0xf57bf3=_0xf57b();let _0x5774ef=_0xf57bf3[_0x3c7fc0];return _0x5774ef;}import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';function _0xf57b(){const _0x13b555=['stdout','UedYS','/.opencode/skills/','stdin','sCAqF','suppressUsage','wGJjJ','mzLmh','2334606oRWkPN','IDGJj','To\x20get\x20started:','log','\x20\x203.\x20Run:\x20ranger\x20skillup','/skills/','995740obBDvn','45sbZUDt','claude','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','isTTY','29965180hzVCrp','12HSVkdo','UBkUt','7908383nboPCY','\x20--opencode','opencode','\x20skill','This\x20project\x20only\x20(','\x0a✅\x20Installed\x20','1710664jraYJS','8JgBfRD','ranger','\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','godSU','autoInstall','All\x20projects\x20(','installLevel','68358iyotLa','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','message','1533045UZGMHr'];_0xf57b=function(){return _0x13b555;};return _0xf57b();}export async function skillup(_0x1a97ee={}){const _0x3a2d91=_0x5774,_0x42e38c={'dlPdv':function(_0x1aa513){return _0x1aa513();},'mqfws':'❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','IDGJj':function(_0x3e2ced,_0x585a3f){return _0x3e2ced===_0x585a3f;},'wGJjJ':'opencode','JZZqU':function(_0xece3db){return _0xece3db();},'igauI':'user','sCAqF':function(_0x1052d0){return _0x1052d0();},'harjZ':'list','UedYS':'Where\x20should\x20skills\x20be\x20installed?','UBkUt':'project','BaItr':'\x0a📦\x20Installing\x20skills...\x0a','GPAWN':function(_0x4ff6df,_0x519c4c){return _0x4ff6df instanceof _0x519c4c;},'mzLmh':'user-level','godSU':'project-level','jraSB':function(_0x2d7817,_0x5dd571){return _0x2d7817>_0x5dd571;},'NNtQq':'To\x20use:','EtRgi':_0x3a2d91(0xfa)};console['log']('\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a');const _0x2ffc87=_0x1a97ee['platform']??_0x3a2d91(0x113),_0x163273=await _0x42e38c['dlPdv'](getToken);if(!_0x163273){console[_0x3a2d91(0x10e)](_0x42e38c['mqfws']),console['log'](_0x3a2d91(0x10d)),console['log'](_0x3a2d91(0x114)),console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x2ffc87===_0x3a2d91(0x11b)?_0x3a2d91(0x11a):'')+'\x20<your-api-token>'),console['log'](_0x3a2d91(0x10f)+(_0x42e38c['IDGJj'](_0x2ffc87,_0x42e38c['wGJjJ'])?_0x3a2d91(0x11a):'')+'\x0a');return;}console[_0x3a2d91(0x10e)]('✓\x20Found\x20API\x20token');const _0xd78b4a=_0x42e38c['JZZqU'](getProjectRoot),_0x405642=basename(_0xd78b4a),_0x385395=_0x42e38c[_0x3a2d91(0x10c)](_0x2ffc87,_0x42e38c[_0x3a2d91(0x109)])?getOpencodeConfigDir(_0x42e38c['igauI'])+'/skills/':_0x42e38c[_0x3a2d91(0x107)](getClaudeConfigDir)+_0x3a2d91(0x110),_0x421b14=_0x2ffc87==='opencode'?_0xd78b4a+_0x3a2d91(0x105):_0xd78b4a+'/.claude/skills/',_0x2642de=process[_0x3a2d91(0x106)][_0x3a2d91(0x115)]&&process[_0x3a2d91(0x103)]['isTTY'];let _0x59792b;if(_0x1a97ee['autoInstall'])_0x59792b=_0x1a97ee[_0x3a2d91(0xfc)];else{if(_0x2642de){const _0x33713e=await _0x255bea['prompt']([{'type':_0x42e38c['harjZ'],'name':_0x3a2d91(0xfe),'message':_0x42e38c[_0x3a2d91(0x104)],'choices':[{'name':_0x3a2d91(0xfd)+_0x385395+')','value':'user'},{'name':_0x3a2d91(0x11d)+_0x421b14+')','value':_0x42e38c[_0x3a2d91(0x118)]}]}]);_0x59792b=_0x33713e[_0x3a2d91(0xfe)];}else _0x59792b='project',console['log']('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x421b14+')');}let _0x230595=0x0;const _0x305ac0=getCurrentVersion();console[_0x3a2d91(0x10e)](_0x42e38c['BaItr']);try{const _0x36e5ab=await installSkill(_0x3a2d91(0xf9),{'cliVersion':_0x305ac0,'level':_0x59792b,'platform':_0x2ffc87});_0x36e5ab&&_0x230595++;}catch(_0x3cccaf){console['warn'](_0x3a2d91(0x100),_0x42e38c['GPAWN'](_0x3cccaf,Error)?_0x3cccaf[_0x3a2d91(0x101)]:_0x3cccaf);}if(_0x230595>0x0){const _0x4afb2c=_0x42e38c['IDGJj'](_0x59792b,_0x42e38c['igauI'])?_0x42e38c[_0x3a2d91(0x10a)]:_0x42e38c[_0x3a2d91(0xfb)];console[_0x3a2d91(0x10e)](_0x3a2d91(0x11e)+_0x230595+'\x20'+_0x4afb2c+_0x3a2d91(0x11c)+(_0x42e38c['jraSB'](_0x230595,0x1)?'s':'')+'\x20successfully!\x0a'),!_0x1a97ee[_0x3a2d91(0x108)]&&(console[_0x3a2d91(0x10e)](_0x42e38c['NNtQq']),_0x2ffc87===_0x42e38c[_0x3a2d91(0x109)]?console['log'](_0x42e38c['EtRgi']):console[_0x3a2d91(0x10e)]('\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['log']('\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a');}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3d8847=_0x3964;(function(_0xc4bd74,_0x4be60d){const _0x58ef41=_0x3964,_0x2a1871=_0xc4bd74();while(!![]){try{const _0x2a588=parseInt(_0x58ef41(0x1c1))/0x1+-parseInt(_0x58ef41(0x1ba))/0x2+-parseInt(_0x58ef41(0x1ff))/0x3*(parseInt(_0x58ef41(0x1eb))/0x4)+parseInt(_0x58ef41(0x212))/0x5+-parseInt(_0x58ef41(0x1db))/0x6+parseInt(_0x58ef41(0x1d9))/0x7*(-parseInt(_0x58ef41(0x1c5))/0x8)+parseInt(_0x58ef41(0x1bb))/0x9*(parseInt(_0x58ef41(0x1f4))/0xa);if(_0x2a588===_0x4be60d)break;else _0x2a1871['push'](_0x2a1871['shift']());}catch(_0x4d5ba7){_0x2a1871['push'](_0x2a1871['shift']());}}}(_0x1fa8,0x9cfbe));function _0x1fa8(){const _0x392d83=['You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','version','use\x20until\x20the\x20session\x20expires.\x0a','wantsProfile','vNDJx','228FxZLVr','\x1b[1m','skipChromium','CUipJ','playwright/package.json','...','profile','\x0a🚀\x20Ranger\x20Setup\x0a','message','320590lfArbo','CKuFN','chromium',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','hjhyk','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','Make\x20sure\x20your\x20app\x20is\x20running\x20before\x20you\x20start.\x0a','\x0a✅\x20You\x27re\x20ready\x20to\x20start\x20using\x20Ranger\x20Feature\x20Review.','\x0aIn\x20order\x20for\x20Ranger\x20to\x20verify\x20your\x20work,\x20you\x27ll\x20need\x20to\x20set\x20up\x20a\x20profile\x20later\x20with:','skills','\x20install\x20chromium','32931QwYvGa','prompt','Non-interactive\x20mode:\x20No\x20--scope\x20provided,\x20defaulting\x20to\x20user.','success','opencode','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','stdin','FabJW','provided_token','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','QshMG','kJUcT','\x20\x20npx\x20playwright@','cLNge','BMxvW','GITHUB_ENV','trackPhaseEnd','ranger\x20profile\x20add\x20local','zsrKj','783265qCRiYt','git_check','No\x20git\x20repository\x20found.\x20Please\x20run\x20`ranger\x20setup`\x20from\x20inside\x20your\x20project\x20directory.','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','weQDf','platform','pKrUQ','1869640cTZLhE','918KBbcvX','user','log','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','PSCUW','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','126754geNplB','inherit','✓\x20Authenticated\x20to\x20','\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','4774424reqDqf','organizationName','wrwDD','Qhmhz','EvXis','ADxrv','dWjPn','KPcJm','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','confirm','KVYXq','You\x27ll\x20need\x20the\x20app\x20to\x20be\x20running\x20to\x20set\x20up\x20the\x20profile.','stdout','MBxYj','url','The\x20required\x20version\x20(','RALdc','isTTY','zBaEG','SpONt','14ZlAaCq','vtlhL','937824OPCPOv','✓\x20Local\x20profile\x20already\x20exists','trackPhaseStart','JlFlS','error','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','\x0a⚠\x20Skipping\x20Chromium\x20installation.','sAINj','Non-interactive\x20mode:\x20Skipping\x20profile\x20setup.\x20To\x20set\x20up\x20a\x20profile,\x20pass\x20--url\x20or\x20run\x20later:','local','status'];_0x1fa8=function(){return _0x392d83;};return _0x1fa8();}import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x203896 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,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';function _0x3964(_0x11e137,_0x10de83){_0x11e137=_0x11e137-0x1ba;const _0x1fa82a=_0x1fa8();let _0x3964b4=_0x1fa82a[_0x11e137];return _0x3964b4;}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),bold=_0x15ecea=>_0x3d8847(0x1ec)+_0x15ecea+'\x1b[0m';function getPlaywrightVersion(){const _0x4fe3e5=_0x3d8847,_0x1259a1={'lzkGJ':_0x4fe3e5(0x1ef),'FabJW':function(_0x12b54c,_0x436a84){return _0x12b54c(_0x436a84);}};try{const _0x3e0d8d=require['resolve'](_0x1259a1['lzkGJ']),_0x9ec973=_0x1259a1[_0x4fe3e5(0x206)](require,_0x3e0d8d);return _0x9ec973[_0x4fe3e5(0x1e7)];}catch{return null;}}function installChromiumBinary(_0x196cc6){const _0x299e3a={'ADxrv':function(_0xbec47e,_0x2ce441){return _0xbec47e(_0x2ce441);},'CUipJ':'playwright','IEmFP':'install','LDvDD':'error'};return new Promise((_0x245b61,_0x3f4e41)=>{const _0x4c9227=_0x3964,_0x192d24={'RALdc':function(_0x38d06d,_0x4eb913){const _0x318f54=_0x3964;return _0x299e3a[_0x318f54(0x1ca)](_0x38d06d,_0x4eb913);}},_0x319a17=_0x196cc6?['playwright@'+_0x196cc6,'install','chromium']:[_0x299e3a[_0x4c9227(0x1ee)],_0x299e3a['IEmFP'],_0x4c9227(0x1f6)],_0x1ca8bc=spawn('npx',_0x319a17,{'stdio':_0x4c9227(0x1c2),'shell':process[_0x4c9227(0x217)]==='win32'});_0x1ca8bc['on']('close',_0x58c725=>{const _0x293fff=_0x4c9227;_0x58c725===0x0?_0x245b61():_0x192d24[_0x293fff(0x1d5)](_0x3f4e41,new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x58c725));}),_0x1ca8bc['on'](_0x299e3a['LDvDD'],_0x4a80bd=>{const _0x50ac70=_0x4c9227;_0x192d24[_0x50ac70(0x1d5)](_0x3f4e41,_0x4a80bd);});});}export async function authenticate(_0x51f433){const _0x40db14=_0x3d8847,_0x5e43d1={'aIkre':function(_0x3165d7){return _0x3165d7();},'bkaTj':'existing_token','ZbiKf':function(_0xfd5175,_0x51ef5f){return _0xfd5175 instanceof _0x51ef5f;},'xSkpm':function(_0x2fb162,_0x1bd29f){return _0x2fb162(_0x1bd29f);}};if(!_0x51f433){const _0x347daa=await _0x5e43d1['aIkre'](getToken);if(_0x347daa){const _0x278dc3=await getCurrentUser(_0x347daa);if(_0x278dc3[_0x40db14(0x202)])return console[_0x40db14(0x1bd)]('✓\x20Already\x20authenticated\x20to\x20'+_0x278dc3[_0x40db14(0x1bc)][_0x40db14(0x1c6)]),{'token':_0x347daa,'method':_0x5e43d1['bkaTj']};}try{_0x51f433=await runDeviceAuthFlow();}catch(_0x3e3cee){throw new Error('Authentication\x20failed:\x20'+(_0x5e43d1['ZbiKf'](_0x3e3cee,Error)?_0x3e3cee['message']:_0x3e3cee));}const _0x1511e9=await getCurrentUser(_0x51f433);if(!_0x1511e9[_0x40db14(0x202)])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x1511e9[_0x40db14(0x1df)]);return console[_0x40db14(0x1bd)](_0x40db14(0x1c3)+_0x1511e9['user'][_0x40db14(0x1c6)]),{'token':_0x51f433,'method':'device_auth'};}console['log']('Validating\x20API\x20token...');const _0x55dda0=await getCurrentUser(_0x51f433);if(!_0x55dda0['success']){if(_0x55dda0[_0x40db14(0x1e5)])throw new Error('Authentication\x20failed:\x20'+_0x55dda0['error']+_0x40db14(0x1cd));else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x55dda0[_0x40db14(0x1df)]+_0x40db14(0x215));}return console[_0x40db14(0x1bd)]('✓\x20Authenticated\x20to\x20'+_0x55dda0[_0x40db14(0x1bc)][_0x40db14(0x1c6)]),await _0x5e43d1['xSkpm'](storeToken,_0x51f433),console['log'](process['env'][_0x40db14(0x20e)]?'✓\x20Exported\x20credentials\x20for\x20CI':'✓\x20Stored\x20credentials\x20locally'),{'token':_0x51f433,'method':_0x40db14(0x207)};}export async function ensureRangerDir(){const _0x17ea92=_0x3d8847,_0x3a5f78={'EvXis':function(_0x141e68){return _0x141e68();},'HpQYP':function(_0x50e30b,_0x2d4162,_0x38fc50){return _0x50e30b(_0x2d4162,_0x38fc50);},'dWjPn':'.ranger','WGNYo':function(_0x4c7099,_0x370fd6,_0x3cbeaa){return _0x4c7099(_0x370fd6,_0x3cbeaa);},'dBfdS':'✓\x20Created\x20.ranger/\x20directory'},_0x4697ef=_0x3a5f78[_0x17ea92(0x1c9)](findGitRoot),_0x44a208=_0x4697ef?_0x3a5f78['HpQYP'](join,_0x4697ef,_0x3a5f78[_0x17ea92(0x1cb)]):getRangerDir();return!existsSync(_0x44a208)?(await _0x3a5f78['WGNYo'](mkdir,_0x44a208,{'recursive':!![]}),console[_0x17ea92(0x1bd)](_0x3a5f78['dBfdS']),{'path':_0x44a208,'installed':!![]}):(console['log']('✓\x20.ranger/\x20directory\x20already\x20exists'),{'path':_0x44a208,'installed':![]});}export async function ensureChromium(){const _0x4c3437=_0x3d8847,_0x289c7b={'vmAHw':function(_0x1fd2a7,_0x5df1b0){return _0x1fd2a7(_0x5df1b0);},'RfMUu':'✓\x20Playwright\x20Chromium\x20browser\x20found','SpONt':function(_0x38bbb6){return _0x38bbb6();},'JlFlS':'install','NrQbB':'The\x20required\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','HVWdT':'\x0aInstalling\x20Chromium\x20browser...\x0a','gGqIX':_0x4c3437(0x1f9),'vwPST':_0x4c3437(0x204)};let _0x1ca680=![];try{const _0x75c3c7=chromium['executablePath']();_0x1ca680=_0x289c7b['vmAHw'](existsSync,_0x75c3c7);}catch{_0x1ca680=![];}if(_0x1ca680)return console[_0x4c3437(0x1bd)](_0x289c7b['RfMUu']),![];const _0x505196=_0x289c7b[_0x4c3437(0x1d8)](getPlaywrightVersion),_0x15a980=process[_0x4c3437(0x205)]['isTTY']&&process[_0x4c3437(0x1d1)][_0x4c3437(0x1d6)];let _0x206244=!![];if(_0x15a980){const {install:_0x11761f}=await _0x203896['prompt']([{'type':_0x4c3437(0x1ce),'name':_0x289c7b[_0x4c3437(0x1de)],'message':_0x505196?_0x4c3437(0x1d4)+_0x505196+_0x4c3437(0x1f7):_0x289c7b['NrQbB'],'default':!![]}]);_0x206244=_0x11761f;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium'+(_0x505196?'\x20'+_0x505196:'')+_0x4c3437(0x1f0));if(_0x206244){console['log'](_0x289c7b['HVWdT']);try{await installChromiumBinary(_0x505196),console[_0x4c3437(0x1bd)](_0x289c7b['gGqIX']);}catch(_0x22764a){console['error'](_0x289c7b['vwPST'],_0x22764a instanceof Error?_0x22764a['message']:_0x22764a),console['log']('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),_0x505196?console[_0x4c3437(0x1bd)](_0x4c3437(0x20b)+_0x505196+'\x20install\x20chromium'):console['log']('\x20\x20npx\x20playwright\x20install\x20chromium');}}else console['log'](_0x4c3437(0x1e1)),console['log'](_0x4c3437(0x1e6)),_0x505196?console[_0x4c3437(0x1bd)]('\x20\x20npx\x20playwright@'+_0x505196+_0x4c3437(0x1fe)):console[_0x4c3437(0x1bd)]('\x20\x20npx\x20playwright\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x1c6725){const _0x40db52=_0x3d8847,_0x5c90b4={'weQDf':'.gitignore','pKrUQ':'✓\x20Created\x20.ranger/.gitignore'},_0x25aab8=join(_0x1c6725,_0x5c90b4[_0x40db52(0x216)]),_0x52d9c5=_0x40db52(0x1c4);await writeFile(_0x25aab8,_0x52d9c5),console['log'](_0x5c90b4[_0x40db52(0x218)]);}function printProfileSetupLaterInstructions(){const _0x5b6af7=_0x3d8847,_0x5f2cc4={'sAINj':function(_0x955c12,_0x15bc38){return _0x955c12(_0x15bc38);},'jUXbD':'ranger\x20profile\x20add\x20local','TmSak':_0x5b6af7(0x1fa)};console['log'](_0x5b6af7(0x1fc)),console[_0x5b6af7(0x1bd)]('\x20\x20'+_0x5f2cc4[_0x5b6af7(0x1e2)](bold,_0x5f2cc4['jUXbD'])),console[_0x5b6af7(0x1bd)](_0x5f2cc4['TmSak']);}async function ensureLocalEnv(_0x5ac247,_0x418aac){const _0x16fb08=_0x3d8847,_0x3df16b={'kFDqO':function(_0x24cab4,_0x6b4923,_0x432347){return _0x24cab4(_0x6b4923,_0x432347);},'PSCUW':_0x16fb08(0x1e4),'YIDMI':_0x16fb08(0x1dc),'cLNge':'\x0aA\x20profile\x20gives\x20Ranger\x27s\x20browser\x20agent\x20information\x20about\x20how','kJUcT':'to\x20access\x20your\x20app.\x20If\x20the\x20part\x20of\x20your\x20app\x20you\x20want\x20to\x20test\x20is\x20behind','XrSYP':'auth,\x20you\x20can\x20log\x20in\x20and\x20we\x27ll\x20save\x20the\x20session\x20state\x20for\x20Ranger\x20to','yuIpu':_0x16fb08(0x1e8),'Qhmhz':_0x16fb08(0x1e9),'KPcJm':'Would\x20you\x20like\x20to\x20set\x20up\x20the\x20profile\x20now?','KVYXq':function(_0x40a088,_0x2cf8ee,_0x2a7eae,_0x722d9b){return _0x40a088(_0x2cf8ee,_0x2a7eae,_0x722d9b);},'ZRXdF':'\x0a❌\x20Profile\x20setup\x20failed:','zVWnC':function(_0x4a8a9e,_0x59217c){return _0x4a8a9e instanceof _0x59217c;},'wrwDD':function(_0x5b0b72){return _0x5b0b72();}};if(!findGitRoot())return console[_0x16fb08(0x1bd)]('⚠\x20No\x20git\x20repository\x20found.\x20Run\x20`ranger\x20profile\x20add\x20local`\x20from\x20your\x20project\x20directory.'),{'ready':![],'skipped':!![]};if(_0x3df16b['kFDqO'](findExistingEnv,_0x16fb08(0x1e4),{'locations':[_0x3df16b[_0x16fb08(0x1bf)]]}))return console['log'](_0x3df16b['YIDMI']),{'ready':!![],'skipped':![]};const _0x27dbd0=process[_0x16fb08(0x205)]['isTTY']&&process['stdout']['isTTY'];if(_0x27dbd0&&!_0x5ac247?.['url']){console['log'](_0x3df16b[_0x16fb08(0x20c)]),console[_0x16fb08(0x1bd)](_0x3df16b[_0x16fb08(0x20a)]),console['log'](_0x3df16b['XrSYP']),console['log'](_0x3df16b['yuIpu']),console['log'](_0x16fb08(0x1d0));const {wantsProfile:_0x24c91b}=await _0x203896[_0x16fb08(0x200)]([{'type':_0x16fb08(0x1ce),'name':_0x3df16b[_0x16fb08(0x1c8)],'message':_0x3df16b[_0x16fb08(0x1cc)],'default':!![]}]);if(!_0x24c91b)return printProfileSetupLaterInstructions(),{'ready':![],'skipped':!![]};}try{return await _0x3df16b[_0x16fb08(0x1cf)](addEnv,_0x3df16b[_0x16fb08(0x1bf)],{'url':_0x5ac247?.[_0x16fb08(0x1d3)],'force':_0x5ac247?.['force']},_0x418aac),{'ready':!![],'skipped':![]};}catch(_0x1369c6){return console['error'](_0x3df16b['ZRXdF'],_0x3df16b['zVWnC'](_0x1369c6,Error)?_0x1369c6['message']:_0x1369c6),_0x3df16b[_0x16fb08(0x1c7)](printProfileSetupLaterInstructions),{'ready':![],'skipped':![]};}}export async function start(_0x33ccc3,_0x1c5a7d,_0x484ca7){const _0x4628fb=_0x3d8847,_0x30a2c={'hjhyk':_0x4628fb(0x1f2),'zsrKj':_0x4628fb(0x1bc),'SNwmy':'git_check','vtlhL':_0x4628fb(0x214),'QshMG':'auth','ZMjkz':'chromium','CGxzd':function(_0x239cc4,_0x5eda6e){return _0x239cc4(_0x5eda6e);},'boepf':_0x4628fb(0x1c0),'vNDJx':'plugin','MBxYj':function(_0x401517,_0x323439){return _0x401517(_0x323439);},'WXWRf':function(_0x3790ea,_0x33da42,_0x431c23){return _0x3790ea(_0x33da42,_0x431c23);},'DVLRZ':function(_0x2ea9f9){return _0x2ea9f9();},'OyMrr':_0x4628fb(0x203),'zBaEG':'\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','FeCUY':function(_0x35eb55,_0x1838c4){return _0x35eb55 instanceof _0x1838c4;},'CKuFN':_0x4628fb(0x210),'gvaIJ':'\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','RjVLD':function(_0xc21e0c,_0x352161){return _0xc21e0c(_0x352161);},'BMxvW':function(_0x2df28b,_0x25456e){return _0x2df28b+_0x25456e;}};console[_0x4628fb(0x1bd)](_0x30a2c[_0x4628fb(0x1f8)]);const _0x528694=process['stdin'][_0x4628fb(0x1d6)]&&process['stdout']['isTTY'];!_0x528694&&!_0x1c5a7d?.['scope']&&(console[_0x4628fb(0x1bd)](_0x4628fb(0x201)),_0x1c5a7d={..._0x1c5a7d,'scope':_0x30a2c[_0x4628fb(0x211)]});_0x484ca7?.['trackPhaseStart'](_0x4628fb(0x213));if(!findGitRoot()){await _0x484ca7?.['trackPhaseError'](_0x30a2c['SNwmy'],new Error('No\x20git\x20repository\x20found'));throw new Error(_0x30a2c[_0x4628fb(0x1da)]);}_0x484ca7?.['trackPhaseEnd']('git_check');const _0x45883f=!existsSync(getRangerDir()),{path:_0x54ad49}=await ensureRangerDir();_0x484ca7?.[_0x4628fb(0x1dd)](_0x30a2c[_0x4628fb(0x209)]);const _0x20a4eb=await authenticate(_0x33ccc3);_0x484ca7?.[_0x4628fb(0x20f)]('auth',{'isFirstRun':_0x45883f,'method':_0x20a4eb['method']}),_0x484ca7?.['trackPhaseStart']('chromium');_0x1c5a7d?.['skipChromium']?console[_0x4628fb(0x1bd)](_0x4628fb(0x208)):await ensureChromium();_0x484ca7?.['trackPhaseEnd'](_0x30a2c['ZMjkz'],{'isFirstRun':_0x45883f,'skipped':!!_0x1c5a7d?.[_0x4628fb(0x1ed)]}),await _0x30a2c['CGxzd'](writeRangerGitignore,_0x54ad49),console[_0x4628fb(0x1bd)](_0x30a2c['boepf']);const _0x524044=_0x1c5a7d?.['scope'],_0x354dd3=_0x1c5a7d?.['opencode']??![];let _0x309a7d=null;_0x354dd3?(_0x484ca7?.['trackPhaseStart'](_0x30a2c[_0x4628fb(0x1ea)]),_0x309a7d=await ensureOpencodePluginConfig(_0x524044),_0x484ca7?.[_0x4628fb(0x20f)](_0x30a2c['vNDJx'],{'isFirstRun':_0x45883f,'opencode':!![]})):(_0x484ca7?.['trackPhaseStart']('plugin'),await _0x30a2c[_0x4628fb(0x1d2)](ensureClaudePlugin,_0x524044),_0x484ca7?.[_0x4628fb(0x20f)](_0x30a2c[_0x4628fb(0x1ea)],{'isFirstRun':_0x45883f}));if(_0x354dd3&&_0x309a7d){_0x484ca7?.['trackPhaseStart']('skills');try{await _0x30a2c['WXWRf'](installSkill,'ranger',{'level':_0x309a7d['scope'],'cliVersion':_0x30a2c['DVLRZ'](getCurrentVersion),'platform':_0x30a2c['OyMrr']}),_0x484ca7?.['trackPhaseEnd']('skills',{'isFirstRun':_0x45883f,'opencode':!![]});}catch(_0xb9288c){console['warn'](_0x30a2c[_0x4628fb(0x1d7)],_0x30a2c['FeCUY'](_0xb9288c,Error)?_0xb9288c[_0x4628fb(0x1f3)]:_0xb9288c),_0x484ca7?.[_0x4628fb(0x20f)]('skills',{'isFirstRun':_0x45883f,'opencode':!![],'failed':!![]});}}else _0x484ca7?.['trackPhaseStart'](_0x4628fb(0x1fd)),await ensureClaudeSkills(_0x524044),_0x484ca7?.[_0x4628fb(0x20f)]('skills',{'isFirstRun':_0x45883f});if(!_0x528694&&!_0x1c5a7d?.[_0x4628fb(0x1d3)])console[_0x4628fb(0x1bd)](_0x4628fb(0x1e3)),console[_0x4628fb(0x1bd)]('\x20\x20'+_0x30a2c[_0x4628fb(0x1d2)](bold,_0x30a2c[_0x4628fb(0x1f5)])+'\x0a');else{_0x484ca7?.[_0x4628fb(0x1dd)](_0x4628fb(0x1f1));const _0x1cba2f=await ensureLocalEnv({'url':_0x1c5a7d?.['url'],'force':_0x1c5a7d?.['force']},_0x484ca7);_0x484ca7?.[_0x4628fb(0x20f)]('profile',{'isFirstRun':_0x45883f,'profileReady':_0x1cba2f['ready'],'userSkipped':_0x1cba2f['skipped']}),_0x1cba2f['ready']&&console[_0x4628fb(0x1bd)](_0x4628fb(0x1fb));}if(_0x354dd3)console[_0x4628fb(0x1bd)](_0x30a2c['gvaIJ']),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console[_0x4628fb(0x1bd)]('with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),console[_0x4628fb(0x1bd)]('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x190dee=_0x30a2c['RjVLD'](bold,'/ranger:enable');console[_0x4628fb(0x1bd)](_0x30a2c[_0x4628fb(0x20d)]('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x190dee+'\x20and\x20prompt\x20the\x20coding',_0x4628fb(0x1be))+_0x4628fb(0x1e0)+'\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');}}
|
|
1
|
+
(function(_0x23facb,_0x214378){const _0x270521=_0x4a83,_0xe518bc=_0x23facb();while(!![]){try{const _0x46e86b=-parseInt(_0x270521(0x161))/0x1*(-parseInt(_0x270521(0x148))/0x2)+parseInt(_0x270521(0x186))/0x3*(-parseInt(_0x270521(0x185))/0x4)+parseInt(_0x270521(0x149))/0x5+-parseInt(_0x270521(0x137))/0x6+parseInt(_0x270521(0x162))/0x7+-parseInt(_0x270521(0x176))/0x8*(parseInt(_0x270521(0x187))/0x9)+parseInt(_0x270521(0x155))/0xa*(parseInt(_0x270521(0x156))/0xb);if(_0x46e86b===_0x214378)break;else _0xe518bc['push'](_0xe518bc['shift']());}catch(_0x3cb42c){_0xe518bc['push'](_0xe518bc['shift']());}}}(_0x2e14,0xa7b96));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';function _0x2e14(){const _0x445781=['zBDIj','message','url','5556942oJZqLz','\x20install\x20chromium','MBEsK','scope','git_check','/ranger:enable','\x20\x20npx\x20playwright\x20install\x20chromium','HmVUJ','EFLxQ','Make\x20sure\x20your\x20app\x20is\x20running\x20before\x20you\x20start.\x0a','Installation\x20failed\x20with\x20exit\x20code\x20','UdbEb','user','trackPhaseStart','✓\x20Authenticated\x20to\x20','rgJED','plugin','207222lYeAhx','3028800StQPHL','npx','ULYfa','opencode','fWRgW','pqTRa','inherit','isTTY','\x0a✅\x20You\x27re\x20ready\x20to\x20start\x20using\x20Ranger\x20Feature\x20Review.','InMFu','Non-interactive\x20mode:\x20No\x20--scope\x20provided,\x20defaulting\x20to\x20user.','✓\x20Playwright\x20Chromium\x20browser\x20found','178270qhxczz','66eckAHA','GITHUB_ENV','confirm','log','win32','PMuLa','Bexiq','device_auth','BRFGU','HILgr','\x0a⚠\x20Skipping\x20Chromium\x20installation.','7EgEQiz','5854870Qbptkq','IzQjy','vtnfR','stdout','yRimP','✓\x20Stored\x20credentials\x20locally','LhNBH','.gitignore','skipChromium','local','JRFkl','DBVLb','XnnAC','dZqkW','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','skills','install','tWWhK','bRgev','\x0a🚀\x20Ranger\x20Setup\x0a','1616HnyiaU','prompt','YphFp','SDsvz','No\x20git\x20repository\x20found','\x20\x20npx\x20playwright@','EsztW','ranger\x20profile\x20add\x20local','Authentication\x20failed:\x20','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','chromium','\x0aA\x20profile\x20gives\x20Ranger\x27s\x20browser\x20agent\x20information\x20about\x20how','✓\x20Created\x20.ranger/\x20directory','wantsProfile','existing_token','112972sqRSXK','24xnXmJp','19395cKaxwk','.ranger','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','error','...','The\x20required\x20version\x20(','XNJQh','profile','thcgE','auth','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','ready','success','VzRyu','organizationName','warn','\x0aIn\x20Claude\x20Code,\x20run\x20','tDyXD','llLPU','You\x27ll\x20need\x20the\x20app\x20to\x20be\x20running\x20to\x20set\x20up\x20the\x20profile.','trackPhaseEnd','✓\x20Already\x20authenticated\x20to\x20'];_0x2e14=function(){return _0x445781;};return _0x2e14();}import{createRequire}from'module';import{spawn}from'child_process';import _0x487077 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,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),bold=_0x52f9db=>'\x1b[1m'+_0x52f9db+'\x1b[0m';function getPlaywrightVersion(){const _0x36cd73={'OcrDd':'playwright/package.json'};try{const _0x2bab2d=require['resolve'](_0x36cd73['OcrDd']),_0x2c8e74=require(_0x2bab2d);return _0x2c8e74['version'];}catch{return null;}}function installChromiumBinary(_0x2bcaea){const _0x3ce55f=_0x4a83,_0x19a90b={'EsztW':function(_0x56f5eb,_0x2f6eb8){return _0x56f5eb(_0x2f6eb8);},'MvbZh':_0x3ce55f(0x172),'niJOm':'playwright','zBDIj':'chromium','ACASe':function(_0x4bd724,_0x48b0a0,_0x4f73a2,_0x42e752){return _0x4bd724(_0x48b0a0,_0x4f73a2,_0x42e752);},'MBEsK':_0x3ce55f(0x14a),'bIhwK':_0x3ce55f(0x15a),'JRFkl':'close','HmVUJ':'error'};return new Promise((_0x166053,_0x245bc0)=>{const _0x1ce8ad=_0x3ce55f,_0x52f44d=_0x2bcaea?['playwright@'+_0x2bcaea,_0x19a90b['MvbZh'],_0x1ce8ad(0x180)]:[_0x19a90b['niJOm'],_0x1ce8ad(0x172),_0x19a90b[_0x1ce8ad(0x19d)]],_0x4af290=_0x19a90b['ACASe'](spawn,_0x19a90b[_0x1ce8ad(0x139)],_0x52f44d,{'stdio':_0x1ce8ad(0x14f),'shell':process['platform']===_0x19a90b['bIhwK']});_0x4af290['on'](_0x19a90b[_0x1ce8ad(0x16c)],_0x4f0e5f=>{const _0x126128=_0x1ce8ad;_0x4f0e5f===0x0?_0x166053():_0x19a90b[_0x126128(0x17c)](_0x245bc0,new Error(_0x126128(0x141)+_0x4f0e5f));}),_0x4af290['on'](_0x19a90b[_0x1ce8ad(0x13e)],_0x17f71a=>{_0x245bc0(_0x17f71a);});});}export async function authenticate(_0xa3e8c6){const _0x5d72b2=_0x4a83,_0x5bb33c={'yRimP':function(_0x333774){return _0x333774();},'dZqkW':function(_0x75a633,_0x5bc536){return _0x75a633 instanceof _0x5bc536;},'VzRyu':function(_0x16cca9,_0x532334){return _0x16cca9(_0x532334);},'DBVLb':'✓\x20Exported\x20credentials\x20for\x20CI','SDsvz':_0x5d72b2(0x167)};if(!_0xa3e8c6){const _0x300025=await _0x5bb33c[_0x5d72b2(0x166)](getToken);if(_0x300025){const _0x459fdb=await getCurrentUser(_0x300025);if(_0x459fdb['success'])return console['log'](_0x5d72b2(0x19c)+_0x459fdb['user'][_0x5d72b2(0x195)]),{'token':_0x300025,'method':_0x5d72b2(0x184)};}try{_0xa3e8c6=await runDeviceAuthFlow();}catch(_0x5254f0){throw new Error('Authentication\x20failed:\x20'+(_0x5bb33c[_0x5d72b2(0x16f)](_0x5254f0,Error)?_0x5254f0[_0x5d72b2(0x135)]:_0x5254f0));}const _0x2415b3=await getCurrentUser(_0xa3e8c6);if(!_0x2415b3[_0x5d72b2(0x193)])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x2415b3[_0x5d72b2(0x18a)]);return console['log'](_0x5d72b2(0x145)+_0x2415b3['user']['organizationName']),{'token':_0xa3e8c6,'method':_0x5d72b2(0x15d)};}console['log']('Validating\x20API\x20token...');const _0x3f40b8=await getCurrentUser(_0xa3e8c6);if(!_0x3f40b8['success']){if(_0x3f40b8['status'])throw new Error(_0x5d72b2(0x17e)+_0x3f40b8['error']+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error(_0x5d72b2(0x191)+_0x3f40b8[_0x5d72b2(0x18a)]+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x5d72b2(0x159)](_0x5d72b2(0x145)+_0x3f40b8[_0x5d72b2(0x143)][_0x5d72b2(0x195)]),await _0x5bb33c[_0x5d72b2(0x194)](storeToken,_0xa3e8c6),console['log'](process['env'][_0x5d72b2(0x157)]?_0x5bb33c[_0x5d72b2(0x16d)]:_0x5bb33c[_0x5d72b2(0x179)]),{'token':_0xa3e8c6,'method':'provided_token'};}export async function ensureRangerDir(){const _0x5c899e=_0x4a83,_0xe5ae2e={'YphFp':function(_0x216baa){return _0x216baa();},'tWWhK':function(_0xaaa207,_0x183b65,_0xb9b789){return _0xaaa207(_0x183b65,_0xb9b789);},'gZPnY':_0x5c899e(0x188),'oeCYx':_0x5c899e(0x182)},_0x2e0346=_0xe5ae2e['YphFp'](findGitRoot),_0x1c7d97=_0x2e0346?_0xe5ae2e[_0x5c899e(0x173)](join,_0x2e0346,_0xe5ae2e['gZPnY']):_0xe5ae2e[_0x5c899e(0x178)](getRangerDir);return!existsSync(_0x1c7d97)?(await mkdir(_0x1c7d97,{'recursive':!![]}),console[_0x5c899e(0x159)](_0xe5ae2e['oeCYx']),{'path':_0x1c7d97,'installed':!![]}):(console[_0x5c899e(0x159)]('✓\x20.ranger/\x20directory\x20already\x20exists'),{'path':_0x1c7d97,'installed':![]});}export async function ensureChromium(){const _0x3cbee4=_0x4a83,_0x453384={'zliNC':_0x3cbee4(0x154),'UdbEb':function(_0x319fa9){return _0x319fa9();},'HILgr':_0x3cbee4(0x158),'IzQjy':_0x3cbee4(0x172),'nZwks':'The\x20required\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','SGRCy':function(_0x5e56c6,_0x493d92){return _0x5e56c6 instanceof _0x493d92;},'hzHHy':_0x3cbee4(0x160),'aUOzr':'\x20\x20npx\x20playwright\x20install\x20chromium'};let _0xd52b65=![];try{const _0x206ca6=chromium['executablePath']();_0xd52b65=existsSync(_0x206ca6);}catch{_0xd52b65=![];}if(_0xd52b65)return console[_0x3cbee4(0x159)](_0x453384['zliNC']),![];const _0x48aab5=_0x453384[_0x3cbee4(0x142)](getPlaywrightVersion),_0x498f56=process['stdin']['isTTY']&&process[_0x3cbee4(0x165)]['isTTY'];let _0x1236ee=!![];if(_0x498f56){const {install:_0xf3dcd0}=await _0x487077[_0x3cbee4(0x177)]([{'type':_0x453384[_0x3cbee4(0x15f)],'name':_0x453384[_0x3cbee4(0x163)],'message':_0x48aab5?_0x3cbee4(0x18c)+_0x48aab5+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?':_0x453384['nZwks'],'default':!![]}]);_0x1236ee=_0xf3dcd0;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium'+(_0x48aab5?'\x20'+_0x48aab5:'')+_0x3cbee4(0x18b));if(_0x1236ee){console['log']('\x0aInstalling\x20Chromium\x20browser...\x0a');try{await installChromiumBinary(_0x48aab5),console['log']('\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully');}catch(_0x6ad0af){console[_0x3cbee4(0x18a)]('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x453384['SGRCy'](_0x6ad0af,Error)?_0x6ad0af[_0x3cbee4(0x135)]:_0x6ad0af),console['log']('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),_0x48aab5?console[_0x3cbee4(0x159)]('\x20\x20npx\x20playwright@'+_0x48aab5+_0x3cbee4(0x138)):console[_0x3cbee4(0x159)](_0x3cbee4(0x13d));}}else console[_0x3cbee4(0x159)](_0x453384['hzHHy']),console[_0x3cbee4(0x159)]('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),_0x48aab5?console[_0x3cbee4(0x159)](_0x3cbee4(0x17b)+_0x48aab5+'\x20install\x20chromium'):console['log'](_0x453384['aUOzr']);return!![];}function _0x4a83(_0x2b7fbd,_0x849587){_0x2b7fbd=_0x2b7fbd-0x135;const _0x2e14b8=_0x2e14();let _0x4a8395=_0x2e14b8[_0x2b7fbd];return _0x4a8395;}export async function writeRangerGitignore(_0x353b7e){const _0x2030e7=_0x4a83,_0x315ab5={'BRFGU':'✓\x20Created\x20.ranger/.gitignore'},_0x308d84=join(_0x353b7e,_0x2030e7(0x169)),_0x369598='\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(_0x308d84,_0x369598),console['log'](_0x315ab5[_0x2030e7(0x15e)]);}function printProfileSetupLaterInstructions(){const _0x1789b4=_0x4a83,_0x4ac4a1={'PMuLa':'ranger\x20profile\x20add\x20local','NRdJd':_0x1789b4(0x140)};console['log']('\x0aIn\x20order\x20for\x20Ranger\x20to\x20verify\x20your\x20work,\x20you\x27ll\x20need\x20to\x20set\x20up\x20a\x20profile\x20later\x20with:'),console[_0x1789b4(0x159)]('\x20\x20'+bold(_0x4ac4a1[_0x1789b4(0x15b)])),console[_0x1789b4(0x159)](_0x4ac4a1['NRdJd']);}async function ensureLocalEnv(_0x1b8b20,_0x3938d1){const _0x250f83=_0x4a83,_0x37281d={'qPAkH':function(_0x16d8ff){return _0x16d8ff();},'NrmJe':function(_0x932d02,_0x1aeaa7,_0x2b084a){return _0x932d02(_0x1aeaa7,_0x2b084a);},'bRgev':_0x250f83(0x181),'FYwmG':_0x250f83(0x158),'vtnfR':_0x250f83(0x183),'tDyXD':function(_0x48519c,_0x350499,_0xcb55b2,_0x255505){return _0x48519c(_0x350499,_0xcb55b2,_0x255505);},'pnALX':function(_0x2e88da,_0xf3a0b0){return _0x2e88da instanceof _0xf3a0b0;},'XnnAC':function(_0x42cde1){return _0x42cde1();}};if(!_0x37281d['qPAkH'](findGitRoot))return console[_0x250f83(0x159)]('⚠\x20No\x20git\x20repository\x20found.\x20Run\x20`ranger\x20profile\x20add\x20local`\x20from\x20your\x20project\x20directory.'),{'ready':![],'skipped':!![]};if(_0x37281d['NrmJe'](findExistingEnv,'local',{'locations':[_0x250f83(0x16b)]}))return console[_0x250f83(0x159)]('✓\x20Local\x20profile\x20already\x20exists'),{'ready':!![],'skipped':![]};const _0x19894d=process['stdin']['isTTY']&&process['stdout'][_0x250f83(0x150)];if(_0x19894d&&!_0x1b8b20?.['url']){console['log'](_0x37281d[_0x250f83(0x174)]),console['log']('to\x20access\x20your\x20app.\x20If\x20the\x20part\x20of\x20your\x20app\x20you\x20want\x20to\x20test\x20is\x20behind'),console[_0x250f83(0x159)]('auth,\x20you\x20can\x20log\x20in\x20and\x20we\x27ll\x20save\x20the\x20session\x20state\x20for\x20Ranger\x20to'),console[_0x250f83(0x159)]('use\x20until\x20the\x20session\x20expires.\x0a'),console[_0x250f83(0x159)](_0x250f83(0x19a));const {wantsProfile:_0x3ec2da}=await _0x487077[_0x250f83(0x177)]([{'type':_0x37281d['FYwmG'],'name':_0x37281d[_0x250f83(0x164)],'message':'Would\x20you\x20like\x20to\x20set\x20up\x20the\x20profile\x20now?','default':!![]}]);if(!_0x3ec2da)return printProfileSetupLaterInstructions(),{'ready':![],'skipped':!![]};}try{return await _0x37281d[_0x250f83(0x198)](addEnv,_0x250f83(0x16b),{'url':_0x1b8b20?.[_0x250f83(0x136)],'force':_0x1b8b20?.['force'],'allowInsecureLocalhost':_0x1b8b20?.['allowInsecureLocalhost']},_0x3938d1),{'ready':!![],'skipped':![]};}catch(_0xac54d7){return console[_0x250f83(0x18a)]('\x0a❌\x20Profile\x20setup\x20failed:',_0x37281d['pnALX'](_0xac54d7,Error)?_0xac54d7['message']:_0xac54d7),_0x37281d[_0x250f83(0x16e)](printProfileSetupLaterInstructions),{'ready':![],'skipped':![]};}}export async function start(_0x4a8f8b,_0x38ae00,_0x1f7ce8){const _0x2828de=_0x4a83,_0x24d0e8={'EFLxQ':function(_0x31fc88){return _0x31fc88();},'XNJQh':function(_0x313e84){return _0x313e84();},'llLPU':_0x2828de(0x190),'fHDtj':'chromium','LhNBH':'plugin','thcgE':function(_0x57ea1e,_0x4f2d3b){return _0x57ea1e(_0x4f2d3b);},'CWlTN':function(_0x528bc9,_0x1f9a21){return _0x528bc9&&_0x1f9a21;},'AJIyT':_0x2828de(0x14c),'sjAVt':_0x2828de(0x171),'rgJED':'profile','XZVQW':_0x2828de(0x170),'fWRgW':'and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','Bexiq':'with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','ULYfa':_0x2828de(0x17f),'InMFu':function(_0x568449,_0x3d2d79){return _0x568449(_0x3d2d79);},'pqTRa':function(_0x3c67b0,_0x55909e){return _0x3c67b0+_0x55909e;},'VpQbd':function(_0x55c90b,_0x20eb77){return _0x55c90b+_0x20eb77;}};console['log'](_0x2828de(0x175));const _0x48f95f=process['stdin']['isTTY']&&process[_0x2828de(0x165)][_0x2828de(0x150)];!_0x48f95f&&!_0x38ae00?.[_0x2828de(0x13a)]&&(console['log'](_0x2828de(0x153)),_0x38ae00={..._0x38ae00,'scope':_0x2828de(0x143)});_0x1f7ce8?.[_0x2828de(0x144)]('git_check');if(!_0x24d0e8[_0x2828de(0x13f)](findGitRoot)){await _0x1f7ce8?.['trackPhaseError'](_0x2828de(0x13b),new Error(_0x2828de(0x17a)));throw new Error('No\x20git\x20repository\x20found.\x20Please\x20run\x20`ranger\x20setup`\x20from\x20inside\x20your\x20project\x20directory.');}_0x1f7ce8?.[_0x2828de(0x19b)]('git_check');const _0x3cf883=!existsSync(_0x24d0e8[_0x2828de(0x18d)](getRangerDir)),{path:_0xa67a9}=await ensureRangerDir();_0x1f7ce8?.[_0x2828de(0x144)](_0x24d0e8[_0x2828de(0x199)]);const _0x578351=await authenticate(_0x4a8f8b);_0x1f7ce8?.[_0x2828de(0x19b)](_0x24d0e8[_0x2828de(0x199)],{'isFirstRun':_0x3cf883,'method':_0x578351['method']}),_0x1f7ce8?.[_0x2828de(0x144)](_0x2828de(0x180));_0x38ae00?.['skipChromium']?console['log'](_0x2828de(0x189)):await ensureChromium();_0x1f7ce8?.[_0x2828de(0x19b)](_0x24d0e8['fHDtj'],{'isFirstRun':_0x3cf883,'skipped':!!_0x38ae00?.[_0x2828de(0x16a)]}),await writeRangerGitignore(_0xa67a9),console[_0x2828de(0x159)]('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x44ce8a=_0x38ae00?.['scope'],_0x3d9da6=_0x38ae00?.['opencode']??![];let _0x5760c1=null;_0x3d9da6?(_0x1f7ce8?.[_0x2828de(0x144)](_0x24d0e8[_0x2828de(0x168)]),_0x5760c1=await ensureOpencodePluginConfig(_0x44ce8a),_0x1f7ce8?.['trackPhaseEnd'](_0x24d0e8[_0x2828de(0x168)],{'isFirstRun':_0x3cf883,'opencode':!![]})):(_0x1f7ce8?.['trackPhaseStart'](_0x2828de(0x147)),await _0x24d0e8[_0x2828de(0x18f)](ensureClaudePlugin,_0x44ce8a),_0x1f7ce8?.[_0x2828de(0x19b)](_0x24d0e8['LhNBH'],{'isFirstRun':_0x3cf883}));if(_0x24d0e8['CWlTN'](_0x3d9da6,_0x5760c1)){_0x1f7ce8?.[_0x2828de(0x144)](_0x2828de(0x171));try{await installSkill('ranger',{'level':_0x5760c1['scope'],'cliVersion':getCurrentVersion(),'platform':_0x24d0e8['AJIyT']}),_0x1f7ce8?.[_0x2828de(0x19b)](_0x2828de(0x171),{'isFirstRun':_0x3cf883,'opencode':!![]});}catch(_0x1f5025){console[_0x2828de(0x196)]('\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',_0x1f5025 instanceof Error?_0x1f5025['message']:_0x1f5025),_0x1f7ce8?.['trackPhaseEnd'](_0x24d0e8['sjAVt'],{'isFirstRun':_0x3cf883,'opencode':!![],'failed':!![]});}}else _0x1f7ce8?.[_0x2828de(0x144)]('skills'),await ensureClaudeSkills(_0x44ce8a),_0x1f7ce8?.['trackPhaseEnd'](_0x24d0e8['sjAVt'],{'isFirstRun':_0x3cf883});if(!_0x48f95f&&!_0x38ae00?.[_0x2828de(0x136)])console['log']('Non-interactive\x20mode:\x20Skipping\x20profile\x20setup.\x20To\x20set\x20up\x20a\x20profile,\x20pass\x20--url\x20or\x20run\x20later:'),console['log']('\x20\x20'+bold(_0x2828de(0x17d))+'\x0a');else{_0x1f7ce8?.[_0x2828de(0x144)](_0x2828de(0x18e));const _0x453cb7=await ensureLocalEnv({'url':_0x38ae00?.['url'],'force':_0x38ae00?.['force'],'allowInsecureLocalhost':_0x38ae00?.['allowInsecureLocalhost']},_0x1f7ce8);_0x1f7ce8?.['trackPhaseEnd'](_0x24d0e8[_0x2828de(0x146)],{'isFirstRun':_0x3cf883,'profileReady':_0x453cb7[_0x2828de(0x192)],'userSkipped':_0x453cb7['skipped']}),_0x453cb7['ready']&&console['log'](_0x2828de(0x151));}if(_0x3d9da6)console['log'](_0x24d0e8['XZVQW']),console[_0x2828de(0x159)](_0x24d0e8[_0x2828de(0x14d)]),console[_0x2828de(0x159)](_0x24d0e8[_0x2828de(0x15c)]),console['log'](_0x24d0e8[_0x2828de(0x14b)]);else{const _0xcbad3=_0x24d0e8[_0x2828de(0x152)](bold,_0x2828de(0x13c));console[_0x2828de(0x159)](_0x24d0e8[_0x2828de(0x14e)](_0x24d0e8['VpQbd'](_0x2828de(0x197)+_0xcbad3+'\x20and\x20prompt\x20the\x20coding','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with')+'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x864f41=_0xd2ef;(function(_0x51f4ec,_0x2d9688){const _0x43f902=_0xd2ef,_0x2dd57b=_0x51f4ec();while(!![]){try{const _0x29ce51=parseInt(_0x43f902(0x105))/0x1*(-parseInt(_0x43f902(0x101))/0x2)+parseInt(_0x43f902(0xef))/0x3+parseInt(_0x43f902(0x117))/0x4+parseInt(_0x43f902(0xf5))/0x5*(parseInt(_0x43f902(0x111))/0x6)+-parseInt(_0x43f902(0xd5))/0x7*(parseInt(_0x43f902(0xdd))/0x8)+-parseInt(_0x43f902(0xc5))/0x9+parseInt(_0x43f902(0xc7))/0xa;if(_0x29ce51===_0x2d9688)break;else _0x2dd57b['push'](_0x2dd57b['shift']());}catch(_0x43c965){_0x2dd57b['push'](_0x2dd57b['shift']());}}}(_0x1b8b,0x22dba));import{readFile,readdir}from'fs/promises';function _0x1b8b(){const _0x5d6ac5=['filter','ranger@trailhead','encrypted','2BhCmlZ','\x20\x20\x20\x20Settings:\x20','map','name','207737ZJYQdm','configured','scope','\x20\x20\x20\x20Auth:\x20','ZmheL','API\x20URL:\x20','\x0a---\x20Profiles\x20---','(not\x20found)','settings.json','plugin','xdlYF','pNECd','1049358HTtiRa','kfYLD','NRWAk','\x20\x20Run:\x20ranger\x20setup\x20[token]','\x20(up\x20to\x20date)','enabled','678328KMWqzD','GeRBj','wKlZr','unknown','stderr','parse','\x1b]8;;\x07','uRett','\x20\x20Run:\x20ranger\x20setup\x20--opencode','isArray','auth.json','\x20\x20\x20\x20','length','\x20\x20Not\x20installed','displayName','\x1b[1m','PdHYF','@ranger-testing/opencode-plugin','XzDrZ','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','not_installed','1420686GMdxFf','details','1187200lomnZN','No\x20skills\x20installed','includes','status','dHkdY','API\x20Token:\x20✗\x20Not\x20found','SbHZM','yZfaw','cnlpU','\x1b[0m','zxBBH','API\x20Environment:\x20','PLigX','some','811671tYnzVz','Ajwnd','match','mITLE','CzTFV','trim','Cjjbb','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','8fLFona','tRoSE','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','user','none','join','JlCBl','version','XXBvU','path','not_configured','SKILL.md','config','No\x20profiles\x20configured','log','opencode','fvnpZ','organizationName','483381IPHtGz','\x1b]8;;file://','env','\x20\x20Not\x20configured','settingsPath','Alpdw','5GZVXkd','data','\x20(latest:\x20','\x20(active)','toString','Version:\x20','kVboJ','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','all'];_0x1b8b=function(){return _0x5d6ac5;};return _0x1b8b();}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';const bold=_0x57e58d=>_0x864f41(0xbf)+_0x57e58d+_0x864f41(0xd0),link=(_0x3382c7,_0x42c93b)=>_0x864f41(0xf0)+_0x3382c7+'\x07'+(_0x42c93b||_0x3382c7)+_0x864f41(0xb6);async function getOpencodePluginStatus(){const _0x1ebac8=_0x864f41,_0x4bb82b={'fdcoF':_0x1ebac8(0xc4),'WeeMu':_0x1ebac8(0x106),'yZfaw':function(_0x3e63b1,_0x210685,_0x34d485,_0x4cb07d){return _0x3e63b1(_0x210685,_0x34d485,_0x4cb07d);},'NRWAk':_0x1ebac8(0xec),'XsysX':'pipe','GeRBj':_0x1ebac8(0xf6),'pNECd':'close'};return new Promise(_0x361b1c=>{const _0x322688=_0x1ebac8,_0x2b3aa5={'BXlXb':_0x4bb82b['fdcoF'],'uRett':function(_0x29c466,_0x46af45){return _0x29c466(_0x46af45);},'FQWCZ':_0x4bb82b['WeeMu'],'aUjjY':'not_configured'},_0x486de7=_0x4bb82b[_0x322688(0xce)](spawn,_0x4bb82b[_0x322688(0x113)],['debug',_0x322688(0xe9)],{'stdio':['ignore',_0x4bb82b['XsysX'],_0x4bb82b['XsysX']]});let _0x50b2ab='';_0x486de7['stdout']?.['on'](_0x4bb82b['GeRBj'],_0x4246f9=>{const _0x524b0a=_0x322688;_0x50b2ab+=_0x4246f9[_0x524b0a(0xf9)]();}),_0x486de7[_0x322688(0x11b)]?.['on'](_0x4bb82b[_0x322688(0x118)],_0x365d16=>{const _0x127019=_0x322688;_0x50b2ab+=_0x365d16[_0x127019(0xf9)]();}),_0x486de7['on']('error',()=>{_0x361b1c({'status':'not_installed'});}),_0x486de7['on'](_0x4bb82b[_0x322688(0x110)],_0x805f4d=>{const _0x22a049=_0x322688,_0x1f3972={'iCAfP':function(_0x37f55d,_0x5d3467){return _0x37f55d!==_0x5d3467;}};if(_0x805f4d!==0x0){_0x361b1c({'status':_0x2b3aa5['BXlXb']});return;}const _0x3985ad=_0x50b2ab[_0x22a049(0xda)]();let _0x4ec07c=null;if(_0x3985ad)try{_0x4ec07c=JSON['parse'](_0x3985ad);}catch{const _0x39df90=_0x3985ad[_0x22a049(0xd7)](/\{[\s\S]*\}$/);if(_0x39df90)try{_0x4ec07c=JSON[_0x22a049(0x11c)](_0x39df90[0x0]);}catch{_0x4ec07c=null;}}const _0x5788f3=Array[_0x22a049(0xb9)](_0x4ec07c?.[_0x22a049(0x10e)])?_0x4ec07c?.[_0x22a049(0x10e)]:[],_0x145878=_0x5788f3[_0x22a049(0xd4)](_0x2ecca5=>{const _0x294ec5=_0x22a049;if(_0x1f3972['iCAfP'](typeof _0x2ecca5,'string'))return![];return _0x2ecca5['includes'](_0x294ec5(0xc1))||_0x2ecca5[_0x294ec5(0xc9)]('opencode-plugin');});if(_0x145878){_0x2b3aa5['uRett'](_0x361b1c,{'status':_0x2b3aa5['FQWCZ'],'details':_0x5788f3[_0x22a049(0xbc)]>0x0?_0x5788f3['length']+'\x20plugin(s)\x20configured':undefined});return;}if(_0x5788f3['length']>0x0){_0x2b3aa5[_0x22a049(0xb7)](_0x361b1c,{'status':'not_configured','details':_0x5788f3['length']+'\x20plugin(s)\x20configured'});return;}_0x2b3aa5[_0x22a049(0xb7)](_0x361b1c,{'status':_0x2b3aa5['aUjjY']});});});}async function getSkillsFromDir(_0x5200e5,_0x40c888){const _0x189360=_0x864f41,_0x3ead6b={'cnlpU':function(_0x1b3f88,_0x5eed0d,_0x13a3bd){return _0x1b3f88(_0x5eed0d,_0x13a3bd);},'Ajwnd':function(_0xf6d8c3,_0x2b9cbf,_0x36528b,_0x146a98){return _0xf6d8c3(_0x2b9cbf,_0x36528b,_0x146a98);},'vVObB':_0x189360(0xe8),'fvnpZ':function(_0x183545,_0x138d69){return _0x183545(_0x138d69);},'BULax':'utf-8'};if(!existsSync(_0x5200e5))return[];const _0x174ada=[];try{const _0x47e0be=await _0x3ead6b[_0x189360(0xcf)](readdir,_0x5200e5,{'withFileTypes':!![]});for(const _0x1702a6 of _0x47e0be){if(_0x1702a6['isDirectory']()){const _0x2f6eec=_0x3ead6b[_0x189360(0xd6)](join,_0x5200e5,_0x1702a6[_0x189360(0x104)],_0x3ead6b['vVObB']);if(_0x3ead6b[_0x189360(0xed)](existsSync,_0x2f6eec)){let _0x5ca859=_0x1702a6[_0x189360(0x104)];try{const _0x405706=await _0x3ead6b[_0x189360(0xcf)](readFile,_0x2f6eec,_0x3ead6b['BULax']),_0x3e8578=_0x405706[_0x189360(0xd7)](/name:\s*(.+)/);_0x3e8578&&(_0x5ca859=_0x3e8578[0x1]['trim']());}catch{}_0x174ada['push']({'name':_0x1702a6[_0x189360(0x104)],'displayName':_0x5ca859,'path':_0x2f6eec,'level':_0x40c888});}}}}catch{return[];}return _0x174ada;}function _0xd2ef(_0x195ae2,_0x40405b){_0x195ae2=_0x195ae2-0xb6;const _0x1b8b35=_0x1b8b();let _0xd2efb7=_0x1b8b35[_0x195ae2];return _0xd2efb7;}async function getInstalledSkills(){const _0x5e4d5a=_0x864f41,_0x3c553a={'JmUHX':function(_0x466b82,_0x32cf6d,_0x4f5fb2){return _0x466b82(_0x32cf6d,_0x4f5fb2);},'PdHYF':function(_0x3cb3c5){return _0x3cb3c5();},'JbNCS':'project'},[_0x56cd66,_0x1e8e88]=await Promise[_0x5e4d5a(0xfd)]([_0x3c553a['JmUHX'](getSkillsFromDir,_0x3c553a[_0x5e4d5a(0xc0)](getProjectSkillsDir),_0x3c553a['JbNCS']),getSkillsFromDir(getUserSkillsDir(),_0x5e4d5a(0xe0))]);return{'project':_0x56cd66,'user':_0x1e8e88};}async function getEnvironments(){const _0x26d7c4=_0x864f41,_0x43ddb2={'tRoSE':function(_0x5d5319,_0x40f316,_0x27f300){return _0x5d5319(_0x40f316,_0x27f300);},'JlCBl':_0x26d7c4(0xba),'dHkdY':'auth.json.enc','OdaVy':function(_0x2d818e,_0x22d7a8){return _0x2d818e(_0x22d7a8);},'zxBBH':function(_0x46a752,_0x3cd70f){return _0x46a752(_0x3cd70f);},'ByXXv':function(_0x9fd108,_0x22d2da){return _0x9fd108===_0x22d2da;}},{envNames:_0x27d753,activeEnv:_0x519826}=await getEnvNames(),_0x2a9adc=getRangerDir();if(!_0x43ddb2[_0x26d7c4(0xd1)](existsSync,_0x2a9adc))return{'envs':[],'activeEnv':null};const _0x2fd23b=_0x27d753[_0x26d7c4(0x103)](_0x35d08e=>{const _0x2c07da=_0x26d7c4,_0xa54cad=getEnvDir(_0x35d08e),_0x5b6c2f=_0x43ddb2[_0x2c07da(0xde)](join,_0xa54cad,_0x2c07da(0x10d)),_0xc47d7b=join(_0xa54cad,_0x43ddb2[_0x2c07da(0xe3)]),_0x2b5d3b=join(_0xa54cad,_0x43ddb2[_0x2c07da(0xcb)]);return{'name':_0x35d08e,'settingsPath':_0x43ddb2['OdaVy'](existsSync,_0x5b6c2f)?_0x5b6c2f:'(not\x20found)','hasPlaintextAuth':_0x43ddb2['zxBBH'](existsSync,_0xc47d7b),'hasEncryptedAuth':existsSync(_0x2b5d3b),'isActive':_0x43ddb2['ByXXv'](_0x35d08e,_0x519826)};});return{'envs':_0x2fd23b,'activeEnv':_0x519826};}export async function status(){const _0x5920bc=_0x864f41,_0x537f36={'iGDqC':'\x0a📊\x20Ranger\x20Status\x0a','SbHZM':function(_0x22d882,_0x2d9e9f,_0x40b132){return _0x22d882(_0x2d9e9f,_0x40b132);},'wKlZr':function(_0x7568a5,_0x1b8479){return _0x7568a5(_0x1b8479);},'Cjjbb':function(_0x122a87,_0x4a1847){return _0x122a87(_0x4a1847);},'mITLE':function(_0x1e3f56){return _0x1e3f56();},'kVboJ':function(_0x587fe1,_0x5b9c87){return _0x587fe1===_0x5b9c87;},'PLigX':_0x5920bc(0xb8),'kfYLD':'\x0a---\x20Claude\x20Code\x20Plugin\x20---','qMRbZ':_0x5920bc(0xff),'qNlaZ':_0x5920bc(0x11a),'ZmheL':_0x5920bc(0xbd),'CsCBe':_0x5920bc(0xfc),'lnRmh':'\x0a---\x20Skills\x20---','XXBvU':function(_0x272d43,_0x5d6163){return _0x272d43+_0x5d6163;},'CzTFV':function(_0x479fa7,_0x46756a){return _0x479fa7>_0x46756a;},'OtwNP':'\x20\x20Project-level:','hMqFd':function(_0x351d6d,_0x1ad13d,_0x54165a){return _0x351d6d(_0x1ad13d,_0x54165a);},'NBwES':function(_0x218f97,_0xfde96f){return _0x218f97(_0xfde96f);},'xdlYF':function(_0x390118,_0x8913b0){return _0x390118(_0x8913b0);},'XzDrZ':function(_0x2da7bc,_0x33b50d,_0x198a14){return _0x2da7bc(_0x33b50d,_0x198a14);},'Alpdw':_0x5920bc(0xf8),'FEAqV':'plaintext','XRXQd':_0x5920bc(0xe1)};console['log'](_0x537f36['iGDqC']);const _0x50afe6=process['cwd'](),_0xad5cf2=getRangerDir();if(!existsSync(_0xad5cf2)){console[_0x5920bc(0xeb)]('Root:\x20'+_0x537f36[_0x5920bc(0xcd)](link,_0x50afe6,_0x537f36['wKlZr'](bold,_0x537f36['wKlZr'](basename,_0x50afe6)))),console['log'](_0x5920bc(0xdf)),console['log'](_0x5920bc(0xdc));return;}console[_0x5920bc(0xeb)]('Root:\x20'+link(_0x50afe6,_0x537f36[_0x5920bc(0xdb)](bold,_0x537f36[_0x5920bc(0x119)](basename,_0x50afe6))));const _0x68b94b=getCurrentVersion(),_0xadde05=_0x537f36['mITLE'](getLatestVersion);if(_0xadde05[_0x5920bc(0xe4)]&&_0xadde05['version']!==_0x68b94b)console[_0x5920bc(0xeb)](_0x5920bc(0xfa)+_0x68b94b+_0x5920bc(0xf7)+_0xadde05[_0x5920bc(0xe4)]+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0xadde05['version']?console['log'](_0x5920bc(0xfa)+_0x68b94b+_0x5920bc(0x115)):console[_0x5920bc(0xeb)]('Version:\x20'+_0x68b94b);const _0x5d284b=await _0x537f36['mITLE'](getToken);if(_0x5d284b){const _0x120163=await getCurrentUser(_0x5d284b);_0x120163['success']?console['log']('Organization:\x20'+_0x537f36[_0x5920bc(0x119)](bold,_0x120163[_0x5920bc(0xe0)][_0x5920bc(0xee)])):(console[_0x5920bc(0xeb)]('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x5920bc(0xeb)](_0x5920bc(0x114)));}else console['log'](_0x5920bc(0xcc)),console[_0x5920bc(0xeb)](_0x5920bc(0x114));process[_0x5920bc(0xf1)]['DEBUG']&&(console['log'](_0x5920bc(0xd2)+getCurrentEnvironment()),console[_0x5920bc(0xeb)](_0x5920bc(0x10a)+getApiBaseUrl()));console[_0x5920bc(0xeb)]('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x4fae93=await _0x537f36[_0x5920bc(0xd8)](getOpencodePluginStatus);if(_0x537f36[_0x5920bc(0xfb)](_0x4fae93[_0x5920bc(0xca)],'configured'))console['log']('\x20\x20'+_0x537f36['Cjjbb'](bold,_0x5920bc(0xc1))+':\x20configured'),_0x4fae93[_0x5920bc(0xc6)]&&console['log']('\x20\x20'+_0x4fae93[_0x5920bc(0xc6)]);else _0x4fae93[_0x5920bc(0xca)]===_0x5920bc(0xe7)?(console['log'](_0x5920bc(0xf2)),_0x4fae93[_0x5920bc(0xc6)]&&console['log']('\x20\x20'+_0x4fae93[_0x5920bc(0xc6)]),console[_0x5920bc(0xeb)](_0x537f36[_0x5920bc(0xd3)])):console[_0x5920bc(0xeb)]('\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available');console[_0x5920bc(0xeb)](_0x537f36[_0x5920bc(0x112)]);const _0x100738=await getPluginInfo(_0x537f36['qMRbZ']);if(_0x100738){const _0x3540e3=_0x100738[_0x5920bc(0x107)]||_0x537f36['qNlaZ'],_0x53f99a=_0x100738['enabled']?_0x5920bc(0x116):'disabled';console['log']('\x20\x20'+bold(_0x5920bc(0xff))+':\x20installed\x20('+_0x3540e3+',\x20'+_0x53f99a+')');}else console['log'](_0x537f36[_0x5920bc(0x109)]),console['log'](_0x537f36['CsCBe']);console[_0x5920bc(0xeb)](_0x537f36['lnRmh']);const {project:_0x2ac442,user:_0x3a3f6c}=await _0x537f36[_0x5920bc(0xd8)](getInstalledSkills),_0x355c8d=_0x2ac442['filter'](_0xe30940=>RANGER_MANAGED_SKILLS['includes'](_0xe30940[_0x5920bc(0x104)])),_0x4c505d=_0x3a3f6c[_0x5920bc(0xfe)](_0x304f2e=>RANGER_MANAGED_SKILLS['includes'](_0x304f2e['name'])),_0x80b1cb=_0x537f36[_0x5920bc(0xe5)](_0x355c8d[_0x5920bc(0xbc)],_0x4c505d['length']);if(_0x80b1cb===0x0)console[_0x5920bc(0xeb)](_0x5920bc(0xc8)),console['log']('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x537f36[_0x5920bc(0xd9)](_0x355c8d['length'],0x0)){console['log'](_0x537f36['OtwNP']);for(const _0x55e774 of _0x355c8d){console['log'](_0x5920bc(0xbb)+bold(_0x55e774[_0x5920bc(0xbe)])+':\x20'+_0x537f36['hMqFd'](link,_0x55e774[_0x5920bc(0xe6)],_0x537f36['NBwES'](basename,_0x55e774['path'])));}}if(_0x4c505d['length']>0x0){console[_0x5920bc(0xeb)]('\x20\x20User-level:');for(const _0x3e9586 of _0x4c505d){console[_0x5920bc(0xeb)](_0x5920bc(0xbb)+_0x537f36[_0x5920bc(0x10f)](bold,_0x3e9586[_0x5920bc(0xbe)])+':\x20'+_0x537f36[_0x5920bc(0xc2)](link,_0x3e9586[_0x5920bc(0xe6)],basename(_0x3e9586[_0x5920bc(0xe6)])));}}}console['log'](_0x5920bc(0x10b));const {envs:_0x5cbec3,activeEnv:_0xfd9a3e}=await _0x537f36[_0x5920bc(0xd8)](getEnvironments);if(_0x5cbec3['length']===0x0)console[_0x5920bc(0xeb)](_0x5920bc(0xea)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{for(const _0x2f660a of _0x5cbec3){const _0x35baa3=_0x2f660a['isActive']?_0x537f36[_0x5920bc(0xf4)]:'',_0x46edc5=_0x2f660a['hasEncryptedAuth']?_0x5920bc(0x100):_0x2f660a['hasPlaintextAuth']?_0x537f36['FEAqV']:_0x537f36['XRXQd'];console[_0x5920bc(0xeb)]('\x20\x20'+bold(_0x2f660a[_0x5920bc(0x104)])+_0x35baa3),console['log'](_0x5920bc(0x108)+_0x46edc5),_0x2f660a[_0x5920bc(0xf3)]!==_0x5920bc(0x10c)&&console['log'](_0x5920bc(0x102)+_0x537f36['XzDrZ'](link,_0x2f660a[_0x5920bc(0xf3)],basename(_0x2f660a[_0x5920bc(0xf3)])));}!_0xfd9a3e&&(console['log']('\x0a\x20\x20No\x20active\x20profile\x20set'),console['log'](_0x5920bc(0xc3)+_0x5cbec3['map'](_0x1f2b48=>_0x1f2b48[_0x5920bc(0x104)])[_0x5920bc(0xe2)](',\x20')+')'));}console['log']('');}
|
|
1
|
+
const _0x5f05c2=_0x525d;(function(_0x184d69,_0x31e93f){const _0x4f2521=_0x525d,_0x299ee7=_0x184d69();while(!![]){try{const _0x3f091b=-parseInt(_0x4f2521(0xb2))/0x1*(parseInt(_0x4f2521(0xc9))/0x2)+-parseInt(_0x4f2521(0xb6))/0x3*(parseInt(_0x4f2521(0xc8))/0x4)+-parseInt(_0x4f2521(0xea))/0x5*(parseInt(_0x4f2521(0xd9))/0x6)+parseInt(_0x4f2521(0xb4))/0x7+-parseInt(_0x4f2521(0xbf))/0x8+-parseInt(_0x4f2521(0xf6))/0x9*(parseInt(_0x4f2521(0xe0))/0xa)+-parseInt(_0x4f2521(0xed))/0xb*(-parseInt(_0x4f2521(0xe7))/0xc);if(_0x3f091b===_0x31e93f)break;else _0x299ee7['push'](_0x299ee7['shift']());}catch(_0x27aa87){_0x299ee7['push'](_0x299ee7['shift']());}}}(_0x45a7,0x9ddcb));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';function _0x45a7(){const _0xa03319=['success','not_installed','16467CrvDdb','yoDjX','configured','hasEncryptedAuth','plugin','WdzPc','user','oyboU','isArray','3510UduSxW','settingsPath','utf-8','project','toString','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','yLTfV','qgLdC','includes','path','OPMuq','cmsSP','version','qWwNV','ITVGG','opencode','match','\x0a\x20\x20No\x20active\x20profile\x20set','\x0a---\x20Skills\x20---','xofFV','foiIf','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','Version:\x20','LsSmR','map','status','akLOb','1155223maQEYV','Ycodx','3371823TUPXVx','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','84fkDmeo','rqkiw','\x20\x20Run:\x20ranger\x20setup\x20--opencode','organizationName','data','enabled','rlytr','cwd','Organization:\x20','9635288nKtXcb','zEhGa','join','API\x20Environment:\x20','\x1b[1m','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','\x20\x20Run:\x20ranger\x20skillup','\x20(latest:\x20','JTBhm','77084ptEgiH','2UDwuaR','hBRWG','NPgCf','DEBUG','isDirectory','\x20plugin(s)\x20configured','stdout','settings.json','log','close','truzZ','\x20(up\x20to\x20date)','ranger@trailhead','LYuYT','details','No\x20skills\x20installed','3294174mupuMn','name','SKILL.md','config','\x1b]8;;\x07','ZAYth','length','22710RagACD','pipe','auth.json','\x20\x20\x20\x20','unknown','\x20\x20Not\x20configured','\x20\x20\x20\x20Auth:\x20','40464hZEDwN','bYqZt','filter','10qIqjom'];_0x45a7=function(){return _0xa03319;};return _0x45a7();}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';const bold=_0xadd756=>_0x5f05c2(0xc3)+_0xadd756+'\x1b[0m',link=(_0x452256,_0x4ad44a)=>'\x1b]8;;file://'+_0x452256+'\x07'+(_0x4ad44a||_0x452256)+_0x5f05c2(0xdd);function _0x525d(_0x49e10d,_0x5495af){_0x49e10d=_0x49e10d-0xad;const _0x45a79b=_0x45a7();let _0x525d7f=_0x45a79b[_0x49e10d];return _0x525d7f;}async function getOpencodePluginStatus(){const _0xfd93a6=_0x5f05c2,_0xee045e={'rqkiw':_0xfd93a6(0xec),'Ycodx':function(_0x4b1356,_0x455641){return _0x4b1356(_0x455641);},'GeCQf':_0xfd93a6(0xef),'cmsSP':function(_0x1787f2,_0x466dd0){return _0x1787f2>_0x466dd0;},'RbGhJ':function(_0x1f4e17,_0x555c39){return _0x1f4e17(_0x555c39);},'EjFIp':function(_0x50df1f,_0x2e2156){return _0x50df1f(_0x2e2156);},'foiIf':'string','OPMuq':_0xfd93a6(0x105),'jFZdA':'pipe','ziEaa':'error','WdzPc':_0xfd93a6(0xd2)};return new Promise(_0x52e2d8=>{const _0x4742bc=_0xfd93a6,_0x2f3d92={'ZYiyI':function(_0x153935,_0x26447e){return _0x153935!==_0x26447e;},'yoDjX':_0xee045e[_0x4742bc(0x10a)],'yLTfV':'opencode-plugin'},_0x8f4292=spawn(_0xee045e[_0x4742bc(0x100)],['debug',_0x4742bc(0xdc)],{'stdio':['ignore',_0xee045e['jFZdA'],_0x4742bc(0xe1)]});let _0x2f90b9='';_0x8f4292[_0x4742bc(0xcf)]?.['on'](_0x4742bc(0xba),_0x24d3ea=>{_0x2f90b9+=_0x24d3ea['toString']();}),_0x8f4292['stderr']?.['on'](_0x4742bc(0xba),_0x39fa1d=>{const _0x50d6fe=_0x4742bc;_0x2f90b9+=_0x39fa1d[_0x50d6fe(0xfa)]();}),_0x8f4292['on'](_0xee045e['ziEaa'],()=>{const _0x5ad38c=_0x4742bc;_0x52e2d8({'status':_0xee045e[_0x5ad38c(0xb7)]});}),_0x8f4292['on'](_0xee045e[_0x4742bc(0xf2)],_0x22fc18=>{const _0xa03ebf=_0x4742bc;if(_0x22fc18!==0x0){_0xee045e[_0xa03ebf(0xb3)](_0x52e2d8,{'status':_0xee045e[_0xa03ebf(0xb7)]});return;}const _0x3f5336=_0x2f90b9['trim']();let _0x460f26=null;if(_0x3f5336)try{_0x460f26=JSON['parse'](_0x3f5336);}catch{const _0x4653d7=_0x3f5336['match'](/\{[\s\S]*\}$/);if(_0x4653d7)try{_0x460f26=JSON['parse'](_0x4653d7[0x0]);}catch{_0x460f26=null;}}const _0x44fec4=Array[_0xa03ebf(0xf5)](_0x460f26?.['plugin'])?_0x460f26?.[_0xa03ebf(0xf1)]:[],_0x4f9546=_0x44fec4['some'](_0x41ff9a=>{const _0x4427cf=_0xa03ebf;if(_0x2f3d92['ZYiyI'](typeof _0x41ff9a,_0x2f3d92[_0x4427cf(0xee)]))return![];return _0x41ff9a[_0x4427cf(0xfe)]('@ranger-testing/opencode-plugin')||_0x41ff9a['includes'](_0x2f3d92[_0x4427cf(0xfc)]);});if(_0x4f9546){_0x52e2d8({'status':_0xee045e['GeCQf'],'details':_0x44fec4['length']>0x0?_0x44fec4['length']+_0xa03ebf(0xce):undefined});return;}if(_0xee045e[_0xa03ebf(0x101)](_0x44fec4[_0xa03ebf(0xdf)],0x0)){_0xee045e['RbGhJ'](_0x52e2d8,{'status':'not_configured','details':_0x44fec4['length']+_0xa03ebf(0xce)});return;}_0xee045e['EjFIp'](_0x52e2d8,{'status':'not_configured'});});});}async function getSkillsFromDir(_0x208586,_0x3d6c96){const _0x20718c=_0x5f05c2,_0x279570={'qWwNV':function(_0xc97f33,_0x128a59,_0x1b2d5f){return _0xc97f33(_0x128a59,_0x1b2d5f);},'ZAYth':_0x20718c(0xdb),'ITVGG':function(_0x73dee0,_0x7fd1bd){return _0x73dee0(_0x7fd1bd);},'sdJBg':function(_0x1e8a6f,_0x140f2b,_0x515713){return _0x1e8a6f(_0x140f2b,_0x515713);}};if(!existsSync(_0x208586))return[];const _0x4751f3=[];try{const _0x43c8bb=await _0x279570[_0x20718c(0x103)](readdir,_0x208586,{'withFileTypes':!![]});for(const _0x41eb5f of _0x43c8bb){if(_0x41eb5f[_0x20718c(0xcd)]()){const _0x5afb2d=join(_0x208586,_0x41eb5f['name'],_0x279570[_0x20718c(0xde)]);if(_0x279570[_0x20718c(0x104)](existsSync,_0x5afb2d)){let _0x4a76a4=_0x41eb5f[_0x20718c(0xda)];try{const _0x27f24b=await _0x279570['sdJBg'](readFile,_0x5afb2d,_0x20718c(0xf8)),_0x5348fd=_0x27f24b[_0x20718c(0x106)](/name:\s*(.+)/);_0x5348fd&&(_0x4a76a4=_0x5348fd[0x1]['trim']());}catch{}_0x4751f3['push']({'name':_0x41eb5f[_0x20718c(0xda)],'displayName':_0x4a76a4,'path':_0x5afb2d,'level':_0x3d6c96});}}}}catch{return[];}return _0x4751f3;}async function getInstalledSkills(){const _0x2f240b=_0x5f05c2,_0x5b89c4={'hJaJs':function(_0x2e058c,_0x2c142b,_0x5beda1){return _0x2e058c(_0x2c142b,_0x5beda1);},'LYuYT':function(_0x196be1){return _0x196be1();},'JyrDp':function(_0x42c4ee,_0x2a33fe,_0x10c1f0){return _0x42c4ee(_0x2a33fe,_0x10c1f0);},'oyboU':'user'},[_0x80f439,_0x2b4aee]=await Promise['all']([_0x5b89c4['hJaJs'](getSkillsFromDir,_0x5b89c4[_0x2f240b(0xd6)](getProjectSkillsDir),_0x2f240b(0xf9)),_0x5b89c4['JyrDp'](getSkillsFromDir,getUserSkillsDir(),_0x5b89c4[_0x2f240b(0xf4)])]);return{'project':_0x80f439,'user':_0x2b4aee};}async function getEnvironments(){const _0x4a66e1=_0x5f05c2,_0x4affa1={'qgLdC':function(_0x20ddf0,_0x37a7fb){return _0x20ddf0(_0x37a7fb);},'NPgCf':_0x4a66e1(0xd0),'MemJP':function(_0x1dde42,_0x456327,_0x24d96a){return _0x1dde42(_0x456327,_0x24d96a);},'cptpx':'auth.json.enc','rlytr':function(_0x5e71fb,_0x4a40ee){return _0x5e71fb(_0x4a40ee);},'zRWNo':function(_0x153e44,_0x39933a){return _0x153e44===_0x39933a;}},{envNames:_0x43a498,activeEnv:_0xcc0b46}=await getEnvNames(),_0x352911=getRangerDir();if(!_0x4affa1['rlytr'](existsSync,_0x352911))return{'envs':[],'activeEnv':null};const _0x2d9320=_0x43a498['map'](_0x305e19=>{const _0x472552=_0x4a66e1,_0x3dfbb7=_0x4affa1[_0x472552(0xfd)](getEnvDir,_0x305e19),_0x5b06f1=join(_0x3dfbb7,_0x4affa1[_0x472552(0xcb)]),_0x57d2c8=join(_0x3dfbb7,_0x472552(0xe2)),_0x4a1289=_0x4affa1['MemJP'](join,_0x3dfbb7,_0x4affa1['cptpx']);return{'name':_0x305e19,'settingsPath':existsSync(_0x5b06f1)?_0x5b06f1:'(not\x20found)','hasPlaintextAuth':_0x4affa1[_0x472552(0xbc)](existsSync,_0x57d2c8),'hasEncryptedAuth':existsSync(_0x4a1289),'isActive':_0x4affa1['zRWNo'](_0x305e19,_0xcc0b46)};});return{'envs':_0x2d9320,'activeEnv':_0xcc0b46};}export async function status(){const _0x24a5f8=_0x5f05c2,_0x2fb1ab={'GQjGd':'\x0a📊\x20Ranger\x20Status\x0a','zEhGa':function(_0x5b5d7e){return _0x5b5d7e();},'bYqZt':function(_0x3a6f15,_0x31a412,_0x116f94){return _0x3a6f15(_0x31a412,_0x116f94);},'YoXpH':function(_0x3f2910,_0x267ddc){return _0x3f2910(_0x267ddc);},'giUSK':function(_0x175e0e,_0x5d5c53){return _0x175e0e(_0x5d5c53);},'LsSmR':function(_0x40b51d){return _0x40b51d();},'xofFV':function(_0x3dbcf8){return _0x3dbcf8();},'USyPn':function(_0x36843c,_0x2a690a){return _0x36843c(_0x2a690a);},'UcTlc':'not_configured','tXmzK':_0x24a5f8(0xe5),'DAUhv':_0x24a5f8(0x10b),'SvaAD':'\x0a---\x20Claude\x20Code\x20Plugin\x20---','akLOb':'enabled','djVyM':function(_0x11e220,_0x4b09af){return _0x11e220(_0x4b09af);},'hBRWG':_0x24a5f8(0xfb),'YHOKc':_0x24a5f8(0x108),'VJiuA':_0x24a5f8(0xd8),'HvFOt':function(_0x22a543,_0x1890b2){return _0x22a543>_0x1890b2;},'iavjA':'\x20\x20Project-level:','vDXwv':function(_0x521c07,_0x2940f9){return _0x521c07(_0x2940f9);},'JTBhm':'\x0a---\x20Profiles\x20---','EMEmL':function(_0x37ce60){return _0x37ce60();},'ayaEK':function(_0x495766,_0x1f87c6){return _0x495766===_0x1f87c6;},'truzZ':'No\x20profiles\x20configured','dYshm':'plaintext','uRbrB':'none'};console['log'](_0x2fb1ab['GQjGd']);const _0x2f8897=process[_0x24a5f8(0xbd)](),_0x1c2a72=_0x2fb1ab[_0x24a5f8(0xc0)](getRangerDir);if(!existsSync(_0x1c2a72)){console['log']('Root:\x20'+link(_0x2f8897,bold(basename(_0x2f8897)))),console['log']('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x24a5f8(0xd1)](_0x24a5f8(0xb5));return;}console[_0x24a5f8(0xd1)]('Root:\x20'+_0x2fb1ab[_0x24a5f8(0xe8)](link,_0x2f8897,_0x2fb1ab['YoXpH'](bold,_0x2fb1ab['giUSK'](basename,_0x2f8897))));const _0x1f9588=getCurrentVersion(),_0x46090c=_0x2fb1ab[_0x24a5f8(0xae)](getLatestVersion);if(_0x46090c['version']&&_0x46090c['version']!==_0x1f9588)console[_0x24a5f8(0xd1)]('Version:\x20'+_0x1f9588+_0x24a5f8(0xc6)+_0x46090c[_0x24a5f8(0x102)]+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x46090c['version']?console[_0x24a5f8(0xd1)](_0x24a5f8(0xad)+_0x1f9588+_0x24a5f8(0xd4)):console['log'](_0x24a5f8(0xad)+_0x1f9588);const _0x221f90=await getToken();if(_0x221f90){const _0x43b31f=await getCurrentUser(_0x221f90);_0x43b31f[_0x24a5f8(0xeb)]?console[_0x24a5f8(0xd1)](_0x24a5f8(0xbe)+bold(_0x43b31f[_0x24a5f8(0xf3)][_0x24a5f8(0xb9)])):(console[_0x24a5f8(0xd1)]('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x24a5f8(0xd1)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x24a5f8(0xd1)]('API\x20Token:\x20✗\x20Not\x20found'),console[_0x24a5f8(0xd1)]('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env'][_0x24a5f8(0xcc)]&&(console[_0x24a5f8(0xd1)](_0x24a5f8(0xc2)+_0x2fb1ab[_0x24a5f8(0x109)](getCurrentEnvironment)),console['log']('API\x20URL:\x20'+getApiBaseUrl()));console[_0x24a5f8(0xd1)]('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x1c2ea7=await getOpencodePluginStatus();if(_0x1c2ea7['status']==='configured')console['log']('\x20\x20'+_0x2fb1ab['USyPn'](bold,'@ranger-testing/opencode-plugin')+':\x20configured'),_0x1c2ea7['details']&&console[_0x24a5f8(0xd1)]('\x20\x20'+_0x1c2ea7['details']);else _0x1c2ea7[_0x24a5f8(0xb0)]===_0x2fb1ab['UcTlc']?(console[_0x24a5f8(0xd1)](_0x2fb1ab['tXmzK']),_0x1c2ea7[_0x24a5f8(0xd7)]&&console[_0x24a5f8(0xd1)]('\x20\x20'+_0x1c2ea7[_0x24a5f8(0xd7)]),console[_0x24a5f8(0xd1)](_0x24a5f8(0xb8))):console['log'](_0x2fb1ab['DAUhv']);console[_0x24a5f8(0xd1)](_0x2fb1ab['SvaAD']);const _0x207aaa=await getPluginInfo(_0x24a5f8(0xd5));if(_0x207aaa){const _0x3e3eb8=_0x207aaa['scope']||_0x24a5f8(0xe4),_0x1303cd=_0x207aaa[_0x24a5f8(0xbb)]?_0x2fb1ab[_0x24a5f8(0xb1)]:'disabled';console['log']('\x20\x20'+_0x2fb1ab['djVyM'](bold,_0x24a5f8(0xd5))+':\x20installed\x20('+_0x3e3eb8+',\x20'+_0x1303cd+')');}else console[_0x24a5f8(0xd1)]('\x20\x20Not\x20installed'),console['log'](_0x2fb1ab[_0x24a5f8(0xca)]);console[_0x24a5f8(0xd1)](_0x2fb1ab['YHOKc']);const {project:_0x112e17,user:_0x448ce6}=await _0x2fb1ab[_0x24a5f8(0xae)](getInstalledSkills),_0x37569f=_0x112e17['filter'](_0x10643c=>RANGER_MANAGED_SKILLS['includes'](_0x10643c['name'])),_0x1b2b31=_0x448ce6[_0x24a5f8(0xe9)](_0x21bd97=>RANGER_MANAGED_SKILLS['includes'](_0x21bd97['name'])),_0x4611e3=_0x37569f[_0x24a5f8(0xdf)]+_0x1b2b31['length'];if(_0x4611e3===0x0)console[_0x24a5f8(0xd1)](_0x2fb1ab['VJiuA']),console[_0x24a5f8(0xd1)](_0x24a5f8(0xc5));else{if(_0x2fb1ab['HvFOt'](_0x37569f[_0x24a5f8(0xdf)],0x0)){console['log'](_0x2fb1ab['iavjA']);for(const _0x14b935 of _0x37569f){console[_0x24a5f8(0xd1)](_0x24a5f8(0xe3)+_0x2fb1ab['giUSK'](bold,_0x14b935['displayName'])+':\x20'+link(_0x14b935[_0x24a5f8(0xff)],basename(_0x14b935[_0x24a5f8(0xff)])));}}if(_0x1b2b31[_0x24a5f8(0xdf)]>0x0){console['log']('\x20\x20User-level:');for(const _0x209a7d of _0x1b2b31){console['log'](_0x24a5f8(0xe3)+_0x2fb1ab['vDXwv'](bold,_0x209a7d['displayName'])+':\x20'+_0x2fb1ab['bYqZt'](link,_0x209a7d[_0x24a5f8(0xff)],basename(_0x209a7d['path'])));}}}console[_0x24a5f8(0xd1)](_0x2fb1ab[_0x24a5f8(0xc7)]);const {envs:_0x3a0bc4,activeEnv:_0xb6eed}=await _0x2fb1ab['EMEmL'](getEnvironments);if(_0x2fb1ab['ayaEK'](_0x3a0bc4['length'],0x0))console['log'](_0x2fb1ab[_0x24a5f8(0xd3)]),console[_0x24a5f8(0xd1)]('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{for(const _0x3df08f of _0x3a0bc4){const _0x1fb9f6=_0x3df08f['isActive']?'\x20(active)':'',_0x3158f5=_0x3df08f[_0x24a5f8(0xf0)]?'encrypted':_0x3df08f['hasPlaintextAuth']?_0x2fb1ab['dYshm']:_0x2fb1ab['uRbrB'];console['log']('\x20\x20'+bold(_0x3df08f['name'])+_0x1fb9f6),console[_0x24a5f8(0xd1)](_0x24a5f8(0xe6)+_0x3158f5),_0x3df08f['settingsPath']!=='(not\x20found)'&&console[_0x24a5f8(0xd1)]('\x20\x20\x20\x20Settings:\x20'+link(_0x3df08f['settingsPath'],basename(_0x3df08f[_0x24a5f8(0xf7)])));}!_0xb6eed&&(console['log'](_0x24a5f8(0x107)),console['log'](_0x24a5f8(0xc4)+_0x3a0bc4[_0x24a5f8(0xaf)](_0x1cd941=>_0x1cd941[_0x24a5f8(0xda)])[_0x24a5f8(0xc1)](',\x20')+')'));}console['log']('');}
|
package/build/commands/update.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function _0xb726(_0x8c1f97,_0x2469f4){_0x8c1f97=_0x8c1f97-0xb2;const _0x3d9a0e=_0x3d9a();let _0xb72628=_0x3d9a0e[_0x8c1f97];return _0xb72628;}(function(_0x17d54e,_0x459836){const _0xb607df=_0xb726,_0x21004d=_0x17d54e();while(!![]){try{const _0xe3d24e=parseInt(_0xb607df(0xcd))/0x1*(-parseInt(_0xb607df(0xc3))/0x2)+-parseInt(_0xb607df(0xc1))/0x3*(-parseInt(_0xb607df(0xc9))/0x4)+parseInt(_0xb607df(0xbd))/0x5+parseInt(_0xb607df(0xeb))/0x6*(parseInt(_0xb607df(0xcf))/0x7)+parseInt(_0xb607df(0xd9))/0x8*(parseInt(_0xb607df(0xb2))/0x9)+-parseInt(_0xb607df(0xca))/0xa+parseInt(_0xb607df(0xee))/0xb*(-parseInt(_0xb607df(0xd6))/0xc);if(_0xe3d24e===_0x459836)break;else _0x21004d['push'](_0x21004d['shift']());}catch(_0xca043c){_0x21004d['push'](_0x21004d['shift']());}}}(_0x3d9a,0xb9e61));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';import{join}from'path';import{migrateActiveProfileFile}from'./utils/activeProfile.js';import{getRangerDir}from'./utils/rangerRoot.js';import{isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function runInstall(){const _0x1c9551={'bXaJq':function(_0x26fb08,_0x40aa86){return _0x26fb08(_0x40aa86);},'nDmMx':'close','IRjVM':'error'};return new Promise(_0x1e2262=>{const _0x114d06=_0xb726,_0x2be373={'REhhr':function(_0x45e2a5,_0x226327){return _0x1c9551['bXaJq'](_0x45e2a5,_0x226327);},'Mpbyl':function(_0x405225,_0x53b64f){return _0x405225===_0x53b64f;}};console[_0x114d06(0xe0)]('\x0aInstalling\x20'+PACKAGE_NAME+'@latest...\x0a');const _0x5e0666=spawn('npm',['install','-g',PACKAGE_NAME+'@latest'],{'stdio':_0x114d06(0xd4),'shell':process['platform']===_0x114d06(0xbe)});_0x5e0666['on'](_0x1c9551['nDmMx'],_0x16f32c=>{const _0x584750=_0x114d06;_0x2be373[_0x584750(0xdc)](_0x1e2262,_0x2be373['Mpbyl'](_0x16f32c,0x0));}),_0x5e0666['on'](_0x1c9551[_0x114d06(0xe7)],()=>{const _0x2b4d18=_0x114d06;_0x2be373[_0x2b4d18(0xdc)](_0x1e2262,![]);});});}async function updateClaudeMarketplace(){const _0x2b5fd5=_0xb726,_0x501001={'uHXNP':function(_0x4153b5,_0x1c041b,_0x550c0f,_0x3f3e9d){return _0x4153b5(_0x1c041b,_0x550c0f,_0x3f3e9d);},'uAKmP':'update','unBjd':function(_0x3513d0,_0x40557f){return _0x3513d0===_0x40557f;},'Dcqkk':'win32','OCZmv':_0x2b5fd5(0xf1)};return new Promise(_0x5cc9f9=>{const _0x5ea622=_0x2b5fd5,_0x18f539=_0x501001[_0x5ea622(0xda)](spawn,'claude',[_0x5ea622(0xf0),_0x5ea622(0xe9),_0x501001[_0x5ea622(0xc0)],_0x5ea622(0xef)],{'stdio':_0x5ea622(0xd3),'shell':_0x501001[_0x5ea622(0xc6)](process['platform'],_0x501001['Dcqkk'])});_0x18f539['on'](_0x501001[_0x5ea622(0xc5)],_0x44230f=>{_0x5cc9f9(_0x44230f===0x0);}),_0x18f539['on']('error',()=>{_0x5cc9f9(![]);});});}async function updateClaudePlugin(_0x18e0a5){const _0x41ded5=_0xb726,_0x402568={'jbrBI':function(_0x585df2,_0x33545a){return _0x585df2(_0x33545a);},'WeoZC':'plugin','zPhbV':'--scope','tEYJh':function(_0x2f1f75,_0x3c39a3){return _0x2f1f75===_0x3c39a3;},'ReFxg':_0x41ded5(0xbe),'EaOeF':'close','AkNil':_0x41ded5(0xd2)};return new Promise(_0x20afae=>{const _0x507dd1=_0x41ded5,_0x5c2504=[_0x402568[_0x507dd1(0xe4)],'update','ranger@trailhead'];_0x18e0a5&&_0x5c2504[_0x507dd1(0xb7)](_0x402568['zPhbV'],_0x18e0a5);const _0x433a21=spawn('claude',_0x5c2504,{'stdio':_0x507dd1(0xd3),'shell':_0x402568[_0x507dd1(0xd5)](process['platform'],_0x402568['ReFxg'])});_0x433a21['on'](_0x402568['EaOeF'],_0x44ffe9=>{_0x20afae(_0x44ffe9===0x0);}),_0x433a21['on'](_0x402568[_0x507dd1(0xb9)],()=>{const _0x4a7caa=_0x507dd1;_0x402568[_0x4a7caa(0xe2)](_0x20afae,![]);});});}function _0x3d9a(){const _0x5e3c93=['version','\x20\x20Failed\x20to\x20reinstall\x20','68qsMqTJ','10378850UCfuIK','utf-8','Update\x20failed.','3tsKuwZ','cOkWF','297423NgUFjp','project','Attempting\x20install\x20anyway...','error','pipe','inherit','tEYJh','2923932pSMADq','Update\x20failed:\x20','\x0aReinstalling\x20','304UudHXR','uHXNP','.gitignore','REhhr','cEgZf','splice','\x0aCould\x20not\x20check\x20latest\x20version:\x20','log','rRCUu','jbrBI','active-profile.txt','WeoZC','Claude\x20plugin\x20updated\x20(project\x20scope).','mbRTQ','IRjVM','warn','marketplace','findIndex','186hihJud','bqndd','dDFWj','55FvcVNW','trailhead','plugin','close','240489nFNDPv','opencode','oEBJB','\x0aNo\x20ranger-managed\x20skills\x20found\x20to\x20reinstall.','ylTBk','push','cPSbS','AkNil','aDHoA','trim','claude','5056640uNpFSA','win32','\x0aSuccessfully\x20installed\x20latest\x20version.','uAKmP','62607Phapsk','uuqHC','454018BbjDQK','cMaXR','OCZmv','unBjd'];_0x3d9a=function(){return _0x5e3c93;};return _0x3d9a();}function isSkillInstalled(_0x39de85,_0x40c08a,_0x595352){const _0x147864=_0xb726,_0x4170fc={'AlESd':'opencode','HimdI':function(_0x3458cc,_0x1b26ce){return _0x3458cc(_0x1b26ce);},'mbRTQ':function(_0x59e203,_0x4bfc09){return _0x59e203(_0x4bfc09);}},_0x2a1a3a=_0x595352===_0x4170fc['AlESd']?_0x4170fc['HimdI'](getOpencodeSkillsDir,_0x40c08a):_0x4170fc['HimdI'](getSkillsDir,_0x40c08a),_0x284a0b=join(_0x2a1a3a,_0x39de85);return _0x4170fc[_0x147864(0xe6)](existsSync,_0x284a0b);}async function reinstallSkills(_0x1221b5){const _0x1b10f6=_0xb726,_0x491b61={'LUmZM':_0x1b10f6(0xbc),'ylTBk':_0x1b10f6(0xb3),'rVzvn':_0x1b10f6(0xb5),'rRCUu':function(_0x585ba6,_0x39d8e5,_0x385261){return _0x585ba6(_0x39d8e5,_0x385261);}},_0x4420a5=['project','user'],_0x35228c=[];for(const _0x41acf9 of _0x4420a5){for(const _0x1165cb of RANGER_MANAGED_SKILLS){isSkillInstalled(_0x1165cb,_0x41acf9,_0x491b61['LUmZM'])&&_0x35228c[_0x1b10f6(0xb7)]({'skillName':_0x1165cb,'level':_0x41acf9,'platform':_0x491b61['LUmZM']}),isSkillInstalled(_0x1165cb,_0x41acf9,_0x491b61[_0x1b10f6(0xb6)])&&_0x35228c[_0x1b10f6(0xb7)]({'skillName':_0x1165cb,'level':_0x41acf9,'platform':'opencode'});}}for(const _0x48b5e0 of _0x4420a5){for(const _0x2f9398 of DEPRECATED_SKILLS){await removeSkill(_0x2f9398,_0x48b5e0);}}if(_0x35228c['length']===0x0){console['log'](_0x491b61['rVzvn']);return;}console[_0x1b10f6(0xe0)](_0x1b10f6(0xd8)+_0x35228c['length']+'\x20ranger-managed\x20skill(s)...');for(const {skillName:_0x2e75ae,level:_0xd62cd5,platform:_0x40c699}of _0x35228c){try{await _0x491b61[_0x1b10f6(0xe1)](installSkill,_0x2e75ae,{'level':_0xd62cd5,'cliVersion':_0x1221b5,'platform':_0x40c699});}catch(_0x49e6d3){console['warn'](_0x1b10f6(0xc8)+_0x40c699+'\x20'+_0xd62cd5+'\x20skill\x20'+_0x2e75ae+':',_0x49e6d3);}}}async function ensureActiveProfileGitignored(){const _0x5b3d95=_0xb726,_0x43f685={'cOkWF':function(_0x233f6f,_0x16ae32,_0x3fef19){return _0x233f6f(_0x16ae32,_0x3fef19);},'RbplD':function(_0x233db0){return _0x233db0();},'bqndd':function(_0x5abb03,_0x355991){return _0x5abb03(_0x355991);},'dDFWj':function(_0x2bf6ce,_0xf0424f,_0x4bf164){return _0x2bf6ce(_0xf0424f,_0x4bf164);},'VwfMQ':'active-profile.txt','qBxYX':function(_0x36fa67,_0x4325a0,_0xe05c1b,_0x2b8c7c){return _0x36fa67(_0x4325a0,_0xe05c1b,_0x2b8c7c);},'aDHoA':_0x5b3d95(0xcb)},_0x2b2d28=_0x43f685[_0x5b3d95(0xce)](join,_0x43f685['RbplD'](getRangerDir),_0x5b3d95(0xdb));if(!_0x43f685[_0x5b3d95(0xec)](existsSync,_0x2b2d28))return![];let _0x347775='';try{_0x347775=await _0x43f685[_0x5b3d95(0xed)](readFile,_0x2b2d28,_0x5b3d95(0xcb));}catch{return![];}const _0x15c97d=_0x347775['split'](/\r?\n/);if(_0x15c97d['some'](_0x56f497=>_0x56f497[_0x5b3d95(0xbb)]()===_0x5b3d95(0xe3)))return![];let _0xb915cd=_0x15c97d[_0x5b3d95(0xea)](_0x381d94=>_0x381d94[_0x5b3d95(0xbb)]()==='active-feature.txt');_0xb915cd===-0x1&&(_0xb915cd=_0x15c97d['length']);_0x15c97d[_0x5b3d95(0xde)](_0xb915cd,0x0,_0x43f685['VwfMQ']);let _0x320c59=_0x15c97d['join']('\x0a');!_0x320c59['endsWith']('\x0a')&&(_0x320c59+='\x0a');try{await _0x43f685['qBxYX'](writeFile,_0x2b2d28,_0x320c59,_0x43f685[_0x5b3d95(0xba)]);}catch{return![];}return!![];}export async function update(){const _0x11972b=_0xb726,_0x2062a9={'PdGPW':function(_0x58ca8d){return _0x58ca8d();},'uuqHC':'Checking\x20for\x20updates...','cMaXR':_0x11972b(0xbf),'TOYiA':'\x0aYou\x20are\x20already\x20on\x20the\x20latest\x20version.','RfHnO':function(_0x11ed8c,_0x1703ba){return _0x11ed8c<_0x1703ba;},'faesG':_0x11972b(0xcc),'JPhNe':function(_0x56245e,_0x15f7ae){return _0x56245e(_0x15f7ae);},'Odasv':'trailhead','SLvJR':function(_0x2d07cf,_0x3d05ba){return _0x2d07cf(_0x3d05ba);},'WALrS':'ranger@trailhead','oEBJB':'\x0aClaude\x20marketplace\x20updated\x20(trailhead).','cEgZf':function(_0xb79491){return _0xb79491();},'hXtqy':'✓\x20Migrated\x20active\x20profile\x20file','cPSbS':'\x0a✅\x20Update\x20complete!'},_0x2ac606=_0x2062a9['PdGPW'](getCurrentVersion);console[_0x11972b(0xe0)]('\x0aCurrent\x20version:\x20'+_0x2ac606),console[_0x11972b(0xe0)](_0x2062a9[_0x11972b(0xc2)]);const _0x2bf303=_0x2062a9['PdGPW'](getLatestVersion);let _0x5ea062=_0x2ac606;if(!_0x2bf303[_0x11972b(0xc7)]){console[_0x11972b(0xe8)](_0x11972b(0xdf)+_0x2bf303['error']),console[_0x11972b(0xe0)](_0x11972b(0xd1));const _0xeb0c2=await runInstall();if(_0xeb0c2)console[_0x11972b(0xe0)](_0x2062a9[_0x11972b(0xc4)]),_0x5ea062=getCurrentVersion();else throw new Error(_0x11972b(0xd7)+_0x2bf303['error']);}else{const _0x3342f3=_0x2bf303[_0x11972b(0xc7)];console['log']('Latest\x20version:\x20\x20'+_0x3342f3);const _0x4a85c9=compareVersions(_0x2ac606,_0x3342f3);if(_0x4a85c9===0x0)console[_0x11972b(0xe0)](_0x2062a9['TOYiA']);else{if(_0x2062a9['RfHnO'](_0x4a85c9,0x0))console['log']('\x0aYour\x20version\x20('+_0x2ac606+')\x20is\x20newer\x20than\x20the\x20published\x20version\x20('+_0x3342f3+').');else{const _0x3ef328=await runInstall();if(_0x3ef328)console[_0x11972b(0xe0)]('\x0aSuccessfully\x20updated\x20to\x20version\x20'+_0x3342f3),_0x5ea062=_0x3342f3;else throw new Error(_0x2062a9['faesG']);}}}await _0x2062a9['JPhNe'](reinstallSkills,_0x5ea062);const _0x523df1=await isMarketplaceAdded(_0x2062a9['Odasv']),_0xa34518=await _0x2062a9['SLvJR'](isPluginInstalled,_0x2062a9['WALrS']);if(_0x523df1){const _0x1148d9=await updateClaudeMarketplace();_0x1148d9&&console[_0x11972b(0xe0)](_0x2062a9[_0x11972b(0xb4)]);}if(_0xa34518){const _0x4a9aff=await _0x2062a9[_0x11972b(0xdd)](updateClaudePlugin);_0x4a9aff&&console[_0x11972b(0xe0)]('\x0aClaude\x20plugin\x20updated\x20(user\x20scope).');const _0x47a754=await updateClaudePlugin(_0x11972b(0xd0));_0x47a754&&console['log']((_0x4a9aff?'':'\x0a')+_0x11972b(0xe5));}const _0x9e8cca=await migrateActiveProfileFile();_0x9e8cca&&console[_0x11972b(0xe0)](_0x2062a9['hXtqy']);const _0x4aa58e=await ensureActiveProfileGitignored();console['log'](_0x2062a9[_0x11972b(0xb8)]);}
|
|
1
|
+
(function(_0x2f1267,_0xe670ab){const _0xc3f6e5=_0x37a6,_0x5b2f1d=_0x2f1267();while(!![]){try{const _0x5bd3c4=-parseInt(_0xc3f6e5(0x1d0))/0x1+parseInt(_0xc3f6e5(0x1d8))/0x2*(-parseInt(_0xc3f6e5(0x1fb))/0x3)+-parseInt(_0xc3f6e5(0x1ea))/0x4*(-parseInt(_0xc3f6e5(0x1fa))/0x5)+-parseInt(_0xc3f6e5(0x1f5))/0x6*(-parseInt(_0xc3f6e5(0x1f8))/0x7)+parseInt(_0xc3f6e5(0x1e4))/0x8+parseInt(_0xc3f6e5(0x1e2))/0x9+parseInt(_0xc3f6e5(0x1f2))/0xa;if(_0x5bd3c4===_0xe670ab)break;else _0x5b2f1d['push'](_0x5b2f1d['shift']());}catch(_0x65cd5){_0x5b2f1d['push'](_0x5b2f1d['shift']());}}}(_0x7dcc,0x63c28));import{spawn}from'child_process';function _0x7dcc(){const _0x30204b=['wNdKI','utf-8','opencode','UsIJO','inherit','TKrHc','\x0aNo\x20ranger-managed\x20skills\x20found\x20to\x20reinstall.','active-profile.txt','length','findIndex','push','error','TdZuI','trailhead','\x0aYour\x20version\x20(','sJBag','trim','splice','afWdE','360147OKfvbb','\x20\x20Failed\x20to\x20reinstall\x20','\x0aSuccessfully\x20installed\x20latest\x20version.','\x0aInstalling\x20','CPYNh','\x0aClaude\x20marketplace\x20updated\x20(trailhead).','\x0aClaude\x20plugin\x20updated\x20(user\x20scope).','ranger@trailhead','6BgkqIh','update','pipe','install','GBrPl','yadhG','plcrO','@latest...\x0a','hYqwl','--scope','3406320SVGJjp','SjdvC','3453920ZzKVPH','.gitignore','lnKCx','Uqvkc','OvUCF','win32','1820CrsUIe','endsWith','SVlkE','Update\x20failed.','Attempting\x20install\x20anyway...','claude','PLhRC','project','1515620FBTrQR','YDbhH','close','267882uBuATN','join','warn','35UFNLgO','\x0aYou\x20are\x20already\x20on\x20the\x20latest\x20version.','4145DwybSf','793449obiEjO','PnPlN','log','hLCVe','Update\x20failed:\x20','DAcoe'];_0x7dcc=function(){return _0x30204b;};return _0x7dcc();}import{existsSync}from'fs';import{readFile,writeFile}from'fs/promises';function _0x37a6(_0x5a492c,_0x363d00){_0x5a492c=_0x5a492c-0x1c6;const _0x7dcce3=_0x7dcc();let _0x37a64c=_0x7dcce3[_0x5a492c];return _0x37a64c;}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';import{join}from'path';import{migrateActiveProfileFile}from'./utils/activeProfile.js';import{getRangerDir}from'./utils/rangerRoot.js';import{isMarketplaceAdded,isPluginInstalled}from'./utils/claudePlugin.js';async function runInstall(){const _0x4a8373=_0x37a6,_0x5cc5e1={'wNdKI':function(_0xd3f483,_0xe723f6){return _0xd3f483(_0xe723f6);},'SVlkE':'npm','Uqvkc':_0x4a8373(0x1f4)};return new Promise(_0x11bbff=>{const _0x217e62=_0x4a8373;console['log'](_0x217e62(0x1d3)+PACKAGE_NAME+_0x217e62(0x1df));const _0x416b05=spawn(_0x5cc5e1[_0x217e62(0x1ec)],[_0x217e62(0x1db),'-g',PACKAGE_NAME+'@latest'],{'stdio':_0x217e62(0x205),'shell':process['platform']===_0x217e62(0x1e9)});_0x416b05['on'](_0x5cc5e1[_0x217e62(0x1e7)],_0x2af172=>{_0x11bbff(_0x2af172===0x0);}),_0x416b05['on'](_0x217e62(0x1c8),()=>{const _0x1c42cc=_0x217e62;_0x5cc5e1[_0x1c42cc(0x201)](_0x11bbff,![]);});});}async function updateClaudeMarketplace(){const _0x1f0880=_0x37a6,_0x55336d={'YjnGR':function(_0x2c5ccb,_0x49d47a,_0x54d214,_0x538f70){return _0x2c5ccb(_0x49d47a,_0x54d214,_0x538f70);},'uXhFY':_0x1f0880(0x1d9),'NBUvg':function(_0x132e60,_0x1a669d){return _0x132e60===_0x1a669d;},'TKrHc':'close'};return new Promise(_0x37b685=>{const _0x55a557=_0x1f0880,_0x381351=_0x55336d['YjnGR'](spawn,_0x55a557(0x1ef),['plugin','marketplace',_0x55336d['uXhFY'],_0x55a557(0x1ca)],{'stdio':'pipe','shell':_0x55336d['NBUvg'](process['platform'],_0x55a557(0x1e9))});_0x381351['on'](_0x55336d[_0x55a557(0x206)],_0x470da8=>{_0x37b685(_0x470da8===0x0);}),_0x381351['on']('error',()=>{_0x37b685(![]);});});}async function updateClaudePlugin(_0xfc1f15){const _0x4de75e={'mxwyH':'plugin','TdZuI':'update'};return new Promise(_0x357ae7=>{const _0x1121ed=_0x37a6,_0x2c73d9={'beDrH':function(_0x5ddbb5,_0x285393){return _0x5ddbb5(_0x285393);},'plcrO':function(_0x49c4aa,_0x4c3d4c){return _0x49c4aa===_0x4c3d4c;}},_0x294f2a=[_0x4de75e['mxwyH'],_0x4de75e[_0x1121ed(0x1c9)],_0x1121ed(0x1d7)];_0xfc1f15&&_0x294f2a[_0x1121ed(0x1c7)](_0x1121ed(0x1e1),_0xfc1f15);const _0x273be7=spawn(_0x1121ed(0x1ef),_0x294f2a,{'stdio':_0x1121ed(0x1da),'shell':process['platform']===_0x1121ed(0x1e9)});_0x273be7['on'](_0x1121ed(0x1f4),_0x32c159=>{const _0x3994cd=_0x1121ed;_0x2c73d9['beDrH'](_0x357ae7,_0x2c73d9[_0x3994cd(0x1de)](_0x32c159,0x0));}),_0x273be7['on'](_0x1121ed(0x1c8),()=>{_0x357ae7(![]);});});}function isSkillInstalled(_0x33801b,_0x52df1b,_0x5247f1){const _0x139e94=_0x37a6,_0x3e9b41={'cqspO':function(_0x30bd96,_0xb080df){return _0x30bd96===_0xb080df;},'bkXXL':_0x139e94(0x203),'OvUCF':function(_0x40ef18,_0x3406c2){return _0x40ef18(_0x3406c2);},'KKxRE':function(_0x2942ba,_0x44ac6f){return _0x2942ba(_0x44ac6f);},'qFODT':function(_0xf0b61d,_0x2612db,_0x3afb10){return _0xf0b61d(_0x2612db,_0x3afb10);},'YDbhH':function(_0x3e2ecc,_0x3e4629){return _0x3e2ecc(_0x3e4629);}},_0x17978c=_0x3e9b41['cqspO'](_0x5247f1,_0x3e9b41['bkXXL'])?_0x3e9b41[_0x139e94(0x1e8)](getOpencodeSkillsDir,_0x52df1b):_0x3e9b41['KKxRE'](getSkillsDir,_0x52df1b),_0x7bee16=_0x3e9b41['qFODT'](join,_0x17978c,_0x33801b);return _0x3e9b41[_0x139e94(0x1f3)](existsSync,_0x7bee16);}async function reinstallSkills(_0x49e47e){const _0x481379=_0x37a6,_0x83384c={'sdWFb':'project','TajbV':'user','GBrPl':_0x481379(0x1ef),'sJBag':function(_0x20fc59,_0x16c4f2,_0x2204c6){return _0x20fc59(_0x16c4f2,_0x2204c6);}},_0x1270b6=[_0x83384c['sdWFb'],_0x83384c['TajbV']],_0x4292e5=[];for(const _0xba38ea of _0x1270b6){for(const _0x3469ce of RANGER_MANAGED_SKILLS){isSkillInstalled(_0x3469ce,_0xba38ea,_0x83384c[_0x481379(0x1dc)])&&_0x4292e5['push']({'skillName':_0x3469ce,'level':_0xba38ea,'platform':_0x481379(0x1ef)}),isSkillInstalled(_0x3469ce,_0xba38ea,'opencode')&&_0x4292e5['push']({'skillName':_0x3469ce,'level':_0xba38ea,'platform':'opencode'});}}for(const _0xa2c86c of _0x1270b6){for(const _0x133416 of DEPRECATED_SKILLS){await _0x83384c[_0x481379(0x1cc)](removeSkill,_0x133416,_0xa2c86c);}}if(_0x4292e5[_0x481379(0x209)]===0x0){console['log'](_0x481379(0x207));return;}console['log']('\x0aReinstalling\x20'+_0x4292e5[_0x481379(0x209)]+'\x20ranger-managed\x20skill(s)...');for(const {skillName:_0x595481,level:_0x7c218a,platform:_0x262651}of _0x4292e5){try{await installSkill(_0x595481,{'level':_0x7c218a,'cliVersion':_0x49e47e,'platform':_0x262651});}catch(_0x47b464){console[_0x481379(0x1f7)](_0x481379(0x1d1)+_0x262651+'\x20'+_0x7c218a+'\x20skill\x20'+_0x595481+':',_0x47b464);}}}async function ensureActiveProfileGitignored(){const _0x183c8a=_0x37a6,_0x25ccfb={'SjdvC':function(_0x7183ef,_0xbfb83c,_0x329c93){return _0x7183ef(_0xbfb83c,_0x329c93);},'qKQgv':function(_0x1257a0){return _0x1257a0();},'HIIXi':_0x183c8a(0x1e5),'UWUYu':function(_0x77852d,_0x58533c,_0x16cf25){return _0x77852d(_0x58533c,_0x16cf25);},'PLhRC':_0x183c8a(0x202),'FlQXO':function(_0xa76d88,_0x3c3fa7,_0xd01ce0,_0xc13dec){return _0xa76d88(_0x3c3fa7,_0xd01ce0,_0xc13dec);}},_0x5924a8=_0x25ccfb[_0x183c8a(0x1e3)](join,_0x25ccfb['qKQgv'](getRangerDir),_0x25ccfb['HIIXi']);if(!existsSync(_0x5924a8))return![];let _0x474173='';try{_0x474173=await _0x25ccfb['UWUYu'](readFile,_0x5924a8,_0x25ccfb[_0x183c8a(0x1f0)]);}catch{return![];}const _0x2da503=_0x474173['split'](/\r?\n/);if(_0x2da503['some'](_0x4b8383=>_0x4b8383[_0x183c8a(0x1cd)]()===_0x183c8a(0x208)))return![];let _0xd37106=_0x2da503[_0x183c8a(0x1c6)](_0x1d5a66=>_0x1d5a66[_0x183c8a(0x1cd)]()==='active-feature.txt');_0xd37106===-0x1&&(_0xd37106=_0x2da503['length']);_0x2da503[_0x183c8a(0x1ce)](_0xd37106,0x0,'active-profile.txt');let _0x14e77c=_0x2da503[_0x183c8a(0x1f6)]('\x0a');!_0x14e77c[_0x183c8a(0x1eb)]('\x0a')&&(_0x14e77c+='\x0a');try{await _0x25ccfb['FlQXO'](writeFile,_0x5924a8,_0x14e77c,_0x25ccfb['PLhRC']);}catch{return![];}return!![];}export async function update(){const _0x59b2b3=_0x37a6,_0x336f69={'PnPlN':_0x59b2b3(0x1ee),'hYqwl':_0x59b2b3(0x1d2),'JXEJL':function(_0x3c332d){return _0x3c332d();},'CGgHe':function(_0x2194fa,_0x1e03a1){return _0x2194fa===_0x1e03a1;},'yadhG':_0x59b2b3(0x1f9),'UsIJO':function(_0x41bd9a){return _0x41bd9a();},'lnKCx':_0x59b2b3(0x1ed),'hLCVe':function(_0x5b6341,_0x64e0f1){return _0x5b6341(_0x64e0f1);},'rwlfS':'trailhead','CPYNh':_0x59b2b3(0x1d5),'Gcxbw':_0x59b2b3(0x1d6),'afWdE':_0x59b2b3(0x1f1),'DAcoe':'✓\x20Migrated\x20active\x20profile\x20file'},_0x48014e=getCurrentVersion();console['log']('\x0aCurrent\x20version:\x20'+_0x48014e),console['log']('Checking\x20for\x20updates...');const _0x3de318=getLatestVersion();let _0x4c1e1d=_0x48014e;if(!_0x3de318['version']){console['warn']('\x0aCould\x20not\x20check\x20latest\x20version:\x20'+_0x3de318[_0x59b2b3(0x1c8)]),console['log'](_0x336f69[_0x59b2b3(0x1fc)]);const _0x490f32=await runInstall();if(_0x490f32)console[_0x59b2b3(0x1fd)](_0x336f69[_0x59b2b3(0x1e0)]),_0x4c1e1d=_0x336f69['JXEJL'](getCurrentVersion);else throw new Error(_0x59b2b3(0x1ff)+_0x3de318['error']);}else{const _0x5742b1=_0x3de318['version'];console[_0x59b2b3(0x1fd)]('Latest\x20version:\x20\x20'+_0x5742b1);const _0x47e68d=compareVersions(_0x48014e,_0x5742b1);if(_0x336f69['CGgHe'](_0x47e68d,0x0))console[_0x59b2b3(0x1fd)](_0x336f69[_0x59b2b3(0x1dd)]);else{if(_0x47e68d<0x0)console['log'](_0x59b2b3(0x1cb)+_0x48014e+')\x20is\x20newer\x20than\x20the\x20published\x20version\x20('+_0x5742b1+').');else{const _0x5e3d42=await _0x336f69['UsIJO'](runInstall);if(_0x5e3d42)console['log']('\x0aSuccessfully\x20updated\x20to\x20version\x20'+_0x5742b1),_0x4c1e1d=_0x5742b1;else throw new Error(_0x336f69[_0x59b2b3(0x1e6)]);}}}await _0x336f69['hLCVe'](reinstallSkills,_0x4c1e1d);const _0x374f36=await _0x336f69[_0x59b2b3(0x1fe)](isMarketplaceAdded,_0x336f69['rwlfS']),_0x267fbd=await isPluginInstalled('ranger@trailhead');if(_0x374f36){const _0x1035fc=await _0x336f69[_0x59b2b3(0x204)](updateClaudeMarketplace);_0x1035fc&&console[_0x59b2b3(0x1fd)](_0x336f69[_0x59b2b3(0x1d4)]);}if(_0x267fbd){const _0x383393=await updateClaudePlugin();_0x383393&&console['log'](_0x336f69['Gcxbw']);const _0x1faa33=await updateClaudePlugin(_0x336f69[_0x59b2b3(0x1cf)]);_0x1faa33&&console[_0x59b2b3(0x1fd)]((_0x383393?'':'\x0a')+'Claude\x20plugin\x20updated\x20(project\x20scope).');}const _0x84f70d=await migrateActiveProfileFile();_0x84f70d&&console['log'](_0x336f69[_0x59b2b3(0x200)]);const _0x55a471=await ensureActiveProfileGitignored();console['log']('\x0a✅\x20Update\x20complete!');}
|