@ranger-testing/ranger-cli 3.0.0 → 3.0.1-alpha.55b593b-29
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/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/deleteProfile.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/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.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/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.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/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.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/tokenRefresh.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/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/package.json +2 -2
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4dcd4c,_0x429345){const _0x3fa9bd=_0xe585,_0xf4ed20=_0x4dcd4c();while(!![]){try{const _0x316990=-parseInt(_0x3fa9bd(0xd6))/0x1+parseInt(_0x3fa9bd(0xd7))/0x2+-parseInt(_0x3fa9bd(0xde))/0x3+-parseInt(_0x3fa9bd(0xd9))/0x4*(parseInt(_0x3fa9bd(0xd0))/0x5)+parseInt(_0x3fa9bd(0xd2))/0x6+parseInt(_0x3fa9bd(0xd4))/0x7*(-parseInt(_0x3fa9bd(0xdb))/0x8)+-parseInt(_0x3fa9bd(0xdd))/0x9*(-parseInt(_0x3fa9bd(0xd3))/0xa);if(_0x316990===_0x429345)break;else _0xf4ed20['push'](_0xf4ed20['shift']());}catch(_0xd968ad){_0xf4ed20['push'](_0xf4ed20['shift']());}}}(_0x4b30,0xcce0f));function _0xe585(_0x2355c6,_0xeb202d){_0x2355c6=_0x2355c6-0xce;const _0x4b30ac=_0x4b30();let _0xe585d4=_0x4b30ac[_0x2355c6];return _0xe585d4;}import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{getCurrentUser}from'./utils/userApi.js';import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';function _0x4b30(){const _0x1fc48c=['5190577conPtw','\x0a✅\x20API\x20key\x20stored\x20successfully','1472942NYwBmD','500602mCXcnn','log','8mloQQO','EDxWM','8ROGmGO','Re-authenticating\x20via\x20MCP\x20bootstrap...','42088131SIbnMq','3485181GYSRzZ','xkNxV','ZtWuR','2021810SKSeSq','message','583962iRApxw','10HJyTQF'];_0x4b30=function(){return _0x1fc48c;};return _0x4b30();}import{isInteractive}from'./utils/cloudProfileSession.js';export async function login(){const _0x2b5b84=_0xe585,_0x4e91d6={'FnZsI':_0x2b5b84(0xdc),'xkNxV':function(_0x300dd3){return _0x300dd3();},'ZtWuR':function(_0x1a706d){return _0x1a706d();},'EDxWM':function(_0x132d5f,_0x434732){return _0x132d5f(_0x434732);}},_0x2385ff=await getMcpAuthOrigin();if(_0x2385ff){console['log'](_0x4e91d6['FnZsI']),await _0x4e91d6[_0x2b5b84(0xce)](mcpBootstrap);return;}if(!_0x4e91d6[_0x2b5b84(0xce)](isInteractive))throw new Error('Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.');try{const _0x51c8b3=await _0x4e91d6[_0x2b5b84(0xcf)](runDeviceAuthFlow),_0x10aa89=await _0x4e91d6[_0x2b5b84(0xda)](getCurrentUser,_0x51c8b3);_0x10aa89['success']?console[_0x2b5b84(0xd8)]('\x0a✅\x20Logged\x20in\x20to\x20'+_0x10aa89['user']['organizationName']):console[_0x2b5b84(0xd8)](_0x2b5b84(0xd5));}catch(_0x26b305){throw new Error('Login\x20failed:\x20'+(_0x26b305 instanceof Error?_0x26b305[_0x2b5b84(0xd1)]:_0x26b305));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x51ab1e=_0x169f;function _0x169f(_0x250ef7,_0x4a1191){_0x250ef7=_0x250ef7-0x144;const _0x335a58=_0x335a();let _0x169f29=_0x335a58[_0x250ef7];return _0x169f29;}function _0x335a(){const _0x3fc26b=['NsBKc','refreshToken','yGlKo','bPeQU','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','77ggiWNh','jmlKx','authorization_servers','\x0aOpening\x20browser\x20for\x20authentication...','hex','toString','aZsKw','text/html','origin','get','slice','http://localhost:','2.0','RSiaH','authorization_code','dnbfw','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','clientId','qZxzN','qpMai','write','1095984WcGfVp','mcp-oauth-tokens.json','message','replace','auth-origin.txt','nsxld','response_type','ppnqC','/.well-known/oauth-authorization-server','Authorization','TMqrr','get_cli_token\x20failed:\x20','BDXPs','lbSXG','LqSaW','utf-8','\x0aUnexpected\x20response\x20structure:','isError','writeHead','Token\x20exchange\x20failed:\x20','accessToken','1924480pOZtSw','registration_endpoint','error','application/json','text','text/event-stream','PGhaQ','code','headers','error_description','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','parse','data:','Ranger\x20CLI','Discovering\x20authorization\x20server...','vExwN','OAuthTimeoutError','bVtgj','searchParams','/.well-known/oauth-protected-resource','token','close','CWQpb','stringify','AObse','1412832AfnUUf','trim','191892ayzuRR','Requesting\x20CLI\x20token...','code_challenge','SpAcX','expiresAt','stdout','DDHoK','refresh_token','.ranger','Initializing\x20MCP\x20session...','315208yuCfNH','ShgRM','get_cli_token','1.0.0','win32','redirect_uri','ifrSJ','tools/call','client_id','log','9794088YczFJx','JiqiZ','state','hSJGv','fYPcq','maBqd','<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','2025-03-26','zwtdY','CTtOM','VMiAS','xtkbM','ZsQxW','initialize','resource','dSaqS','isTTY','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','json','set','2XZLPmo','127.0.0.1','POST','JCLmM','split','structuredContent','XammJ','KHvPo','3613630DaCrmo','/callback','lSylx','QgPLD','LLuhh','end','proxied','status','now'];_0x335a=function(){return _0x3fc26b;};return _0x335a();}(function(_0x3ee9db,_0x264bb1){const _0x592560=_0x169f,_0x65c5de=_0x3ee9db();while(!![]){try{const _0x2fce73=-parseInt(_0x592560(0x161))/0x1*(-parseInt(_0x592560(0x189))/0x2)+parseInt(_0x592560(0x1b4))/0x3+-parseInt(_0x592560(0x146))/0x4+parseInt(_0x592560(0x191))/0x5+parseInt(_0x592560(0x15f))/0x6+parseInt(_0x592560(0x19f))/0x7*(parseInt(_0x592560(0x16b))/0x8)+-parseInt(_0x592560(0x175))/0x9;if(_0x2fce73===_0x264bb1)break;else _0x65c5de['push'](_0x65c5de['shift']());}catch(_0x51df8a){_0x65c5de['push'](_0x65c5de['shift']());}}}(_0x335a,0x5ca55));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';import{createServer}from'http';import{randomBytes,createHash}from'crypto';import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),_0x51ab1e(0x169),_0x51ab1e(0x1b5)),AUTH_ORIGIN_PATH=join(homedir(),_0x51ab1e(0x169),_0x51ab1e(0x1b8));export async function getMcpAuthOrigin(){const _0x1e2255=_0x51ab1e,_0x37c6f3={'ShgRM':function(_0x33ac12,_0x405f91,_0x1b546e){return _0x33ac12(_0x405f91,_0x1b546e);},'JCLmM':_0x1e2255(0x1c3)};try{const _0x5cfcfd=(await _0x37c6f3[_0x1e2255(0x16c)](readFile,AUTH_ORIGIN_PATH,_0x37c6f3[_0x1e2255(0x18c)]))['trim']();return _0x5cfcfd||null;}catch{return null;}}export async function mcpBootstrap(){const _0x4788c7=_0x51ab1e,_0x593839={'PGhaQ':function(_0x1dcecf,_0x145ea8){return _0x1dcecf(_0x145ea8);},'ppnqC':function(_0x21cd2f,_0x24344e){return _0x21cd2f===_0x24344e;},'fRlum':_0x4788c7(0x197),'gcxoJ':function(_0x278c51){return _0x278c51();},'jmlKx':function(_0x1a27ed,_0x5d31e7){return _0x1a27ed+_0x5d31e7;},'vExwN':'MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a'},_0x3c5133=getMcpAuthUrl();currentOrigin=_0x3c5133;const _0x4d2d62=process[_0x4788c7(0x166)][_0x4788c7(0x185)]??![];console['log']('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x3c5133+'\x0a');const _0x26dbb1=await _0x593839[_0x4788c7(0x14c)](tryUnauthenticated,_0x3c5133);let _0x407993=null;if(_0x593839[_0x4788c7(0x1bb)](_0x26dbb1,_0x593839['fRlum']))_0x407993='';else{_0x407993=await _0x593839['gcxoJ'](loadCachedToken);if(!_0x407993){if(!_0x4d2d62)throw new Error(_0x593839[_0x4788c7(0x1a0)](_0x593839[_0x4788c7(0x155)],'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.'));_0x407993=await oauthFlow(_0x3c5133);}}await callGetCliToken(_0x3c5133,_0x407993);}async function tryUnauthenticated(_0x56be17){const _0x4d66cc=_0x51ab1e,_0x36b439={'QgPLD':function(_0x5377ef,_0x473618,_0x249d21){return _0x5377ef(_0x473618,_0x249d21);},'XXZZo':_0x4d66cc(0x18b),'USAJF':'application/json','lSylx':'application/json,\x20text/event-stream','IxkQM':_0x4d66cc(0x1ab),'bVtgj':_0x4d66cc(0x182),'zwtdY':_0x4d66cc(0x16e),'fWijl':_0x4d66cc(0x197)},_0x447449=await _0x36b439[_0x4d66cc(0x194)](fetch,_0x56be17,{'method':_0x36b439['XXZZo'],'headers':{'Content-Type':_0x36b439['USAJF'],'Accept':_0x36b439[_0x4d66cc(0x193)]},'body':JSON[_0x4d66cc(0x15d)]({'jsonrpc':_0x36b439['IxkQM'],'id':0x1,'method':_0x36b439[_0x4d66cc(0x157)],'params':{'protocolVersion':_0x4d66cc(0x17c),'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x36b439[_0x4d66cc(0x17d)]}}})});if(_0x447449['ok'])return await _0x447449['text'](),_0x36b439['fWijl'];if(_0x447449[_0x4d66cc(0x198)]===0x191)return await _0x447449['text'](),'needs-oauth';const _0x584779=await _0x447449[_0x4d66cc(0x14a)]();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x447449['status']+':\x20'+_0x584779);}class OAuthTimeoutError extends Error{constructor(_0x8f9389){const _0xd0e039=_0x51ab1e,_0x59a5d9={'RLjlb':_0xd0e039(0x156)};super(_0x8f9389),this['name']=_0x59a5d9['RLjlb'];}}async function oauthFlow(_0x30d093){const _0x2c1246=_0x51ab1e,_0x43ddb9={'oShFH':function(_0x3a9233){return _0x3a9233();},'CTtOM':function(_0x4b9c8e,_0x54d254){return _0x4b9c8e(_0x54d254);}};try{return await oauthFlowAttempt(_0x30d093);}catch(_0x3e0667){if(_0x3e0667 instanceof OAuthTimeoutError&&await loadCachedClient())return console[_0x2c1246(0x174)]('\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'),await _0x43ddb9['oShFH'](clearCachedClient),await _0x43ddb9[_0x2c1246(0x17e)](oauthFlowAttempt,_0x30d093);throw _0x3e0667;}}async function oauthFlowAttempt(_0x3cf36d){const _0x239200=_0x51ab1e,_0x4a53ce={'GfwPw':_0x239200(0x154),'vysHU':'Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','UPnwX':'No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','mxqsq':function(_0x52c186,_0xa1953b){return _0x52c186(_0xa1953b);},'qUisR':_0x239200(0x153),'qZxzN':_0x239200(0x1ad),'VMiAS':'refresh_token','TZrpC':'\x20done','qpMai':_0x239200(0x186),'JiqiZ':function(_0x2d5558,_0x554d49){return _0x2d5558(_0x554d49);},'nsxld':'base64url','gaHhz':function(_0x411c8b,_0x447cf0){return _0x411c8b(_0x447cf0);},'AObse':'sha256','lbSXG':_0x239200(0x1a3),'KIfkt':_0x239200(0x1ba),'eIwlE':_0x239200(0x170),'RuLAN':_0x239200(0x163),'xtkbM':'code_challenge_method','rmGXN':'resource','REEqV':_0x239200(0x1a2),'Pslbr':function(_0x5838a1,_0x57d066){return _0x5838a1(_0x57d066);},'CgiSZ':'Exchanging\x20authorization\x20code...','VrHOh':'client_secret','yLwUN':function(_0x1b2bbe,_0x516f11,_0x416092){return _0x1b2bbe(_0x516f11,_0x416092);},'KHvPo':'application/x-www-form-urlencoded'},_0x5b7b5a=_0x3cf36d[_0x239200(0x1b7)](/\/mcp$/,'');process[_0x239200(0x166)]['write'](_0x4a53ce['GfwPw']);const _0x2a4e31=await fetch(_0x5b7b5a+_0x239200(0x159));if(!_0x2a4e31['ok'])throw new Error(_0x4a53ce['vysHU']);const _0x33aff0=await _0x2a4e31['json'](),_0x3bd0fe=_0x33aff0[_0x239200(0x1a1)]?.[0x0];if(!_0x3bd0fe)throw new Error(_0x4a53ce['UPnwX']);console[_0x239200(0x174)]('\x20'+_0x3bd0fe);const _0x4c819c=await _0x4a53ce['mxqsq'](fetchAuthServerMetadata,_0x3bd0fe);let _0x5eea4f,_0x5808e4;const _0x18d40d=await loadCachedClient();if(_0x18d40d)_0x5eea4f=_0x18d40d['clientId'],_0x5808e4=_0x18d40d['clientSecret'];else{if(_0x4c819c['registration_endpoint']){process['stdout'][_0x239200(0x1b3)]('Registering\x20OAuth\x20client...');const _0x572de2=await fetch(_0x4c819c[_0x239200(0x147)],{'method':'POST','headers':{'Content-Type':'application/json'},'body':JSON['stringify']({'client_name':_0x4a53ce['qUisR'],'redirect_uris':[_0x239200(0x1aa)+CALLBACK_PORT+'/callback'],'grant_types':[_0x4a53ce[_0x239200(0x1b1)],_0x4a53ce[_0x239200(0x17f)]],'response_types':['code'],'token_endpoint_auth_method':'none'})});if(!_0x572de2['ok']){const _0x27a376=await _0x572de2[_0x239200(0x14a)]();throw new Error('Client\x20registration\x20failed:\x20'+_0x27a376);}const _0x2de5dc=await _0x572de2[_0x239200(0x187)]();_0x5eea4f=_0x2de5dc[_0x239200(0x173)],_0x5808e4=_0x2de5dc['client_secret'],await saveCachedClient(_0x5eea4f,_0x5808e4),console[_0x239200(0x174)](_0x4a53ce['TZrpC']);}else throw new Error(_0x4a53ce[_0x239200(0x1b2)]);}const _0x26d080=_0x4a53ce[_0x239200(0x176)](randomBytes,0x20)['toString'](_0x4a53ce[_0x239200(0x1b9)]),_0x294d30=_0x4a53ce['gaHhz'](createHash,_0x4a53ce[_0x239200(0x15e)])['update'](_0x26d080)['digest'](_0x4a53ce[_0x239200(0x1b9)]),_0x48eaa1=_0x4a53ce['gaHhz'](randomBytes,0x10)[_0x239200(0x1a4)](_0x4a53ce[_0x239200(0x1c1)]),_0x55a200=new URL(_0x4c819c['authorization_endpoint']);_0x55a200['searchParams']['set'](_0x4a53ce['KIfkt'],_0x239200(0x14d)),_0x55a200['searchParams'][_0x239200(0x188)](_0x239200(0x173),_0x5eea4f),_0x55a200['searchParams'][_0x239200(0x188)](_0x4a53ce['eIwlE'],_0x239200(0x1aa)+CALLBACK_PORT+'/callback'),_0x55a200[_0x239200(0x158)][_0x239200(0x188)](_0x4a53ce['RuLAN'],_0x294d30),_0x55a200[_0x239200(0x158)][_0x239200(0x188)](_0x4a53ce[_0x239200(0x180)],'S256'),_0x55a200[_0x239200(0x158)]['set']('state',_0x48eaa1);_0x33aff0[_0x239200(0x183)]&&_0x55a200['searchParams'][_0x239200(0x188)](_0x4a53ce['rmGXN'],_0x33aff0['resource']);console[_0x239200(0x174)](_0x4a53ce['REEqV']),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0x55a200[_0x239200(0x1a4)]()+'\x0a'),await openBrowser(_0x55a200['toString']());const _0x34ec32=await _0x4a53ce['Pslbr'](waitForCallback,_0x48eaa1);process[_0x239200(0x166)][_0x239200(0x1b3)](_0x4a53ce['CgiSZ']);const _0x1d157c=new URLSearchParams({'grant_type':'authorization_code','code':_0x34ec32,'redirect_uri':'http://localhost:'+CALLBACK_PORT+'/callback','client_id':_0x5eea4f,'code_verifier':_0x26d080});_0x5808e4&&_0x1d157c[_0x239200(0x188)](_0x4a53ce['VrHOh'],_0x5808e4);_0x33aff0['resource']&&_0x1d157c[_0x239200(0x188)](_0x239200(0x183),_0x33aff0['resource']);const _0x377061=await _0x4a53ce['yLwUN'](fetch,_0x4c819c['token_endpoint'],{'method':'POST','headers':{'Content-Type':_0x4a53ce[_0x239200(0x190)]},'body':_0x1d157c});if(!_0x377061['ok']){const _0x310b99=await _0x377061['text']();throw new Error(_0x239200(0x144)+_0x310b99);}const _0x444d97=await _0x377061[_0x239200(0x187)]();return console['log']('\x20done'),await saveCachedToken(_0x444d97['access_token'],_0x444d97[_0x239200(0x168)],_0x444d97['expires_in']),_0x444d97['access_token'];}async function callGetCliToken(_0x4b50e1,_0x447bc0){const _0xd99194=_0x51ab1e,_0xd2b839={'bPeQU':_0xd99194(0x149),'wOEJQ':function(_0x3cf645,_0x5ee155){return _0x3cf645(_0x5ee155);},'DDHoK':'2025-03-26','Uqaef':'\x20done','aTdiI':function(_0x20b288,_0x5d4587,_0x4fbc15){return _0x20b288(_0x5d4587,_0x4fbc15);},'EBpZa':_0xd99194(0x18b),'yGlKo':'notifications/initialized','xunHG':_0xd99194(0x1c4),'waESQ':function(_0x44907e,_0x311bf9,_0x12db5b){return _0x44907e(_0x311bf9,_0x12db5b);},'fYPcq':function(_0xe4d316){return _0xe4d316();},'uomlz':'.ranger','maBqd':'auth-origin.txt'},_0xc5f668={'Content-Type':_0xd2b839[_0xd99194(0x19d)],'Accept':'application/json,\x20text/event-stream'};_0x447bc0&&(_0xc5f668[_0xd99194(0x1bd)]='Bearer\x20'+_0x447bc0);const _0x103914=async _0x1fd746=>{const _0x13a4d8=_0xd99194,_0xa6d39=await fetch(_0x4b50e1,{'method':_0x13a4d8(0x18b),'headers':_0xc5f668,'body':JSON[_0x13a4d8(0x15d)](_0x1fd746)});if(!_0xa6d39['ok']){const _0x1e73d7=await _0xa6d39['text']();throw new Error('HTTP\x20'+_0xa6d39[_0x13a4d8(0x198)]+':\x20'+_0x1e73d7);}return parseResponse(_0xa6d39);};process[_0xd99194(0x166)][_0xd99194(0x1b3)](_0xd99194(0x16a));const _0x1b81d8=await _0xd2b839['wOEJQ'](_0x103914,{'jsonrpc':'2.0','id':0x1,'method':'initialize','params':{'protocolVersion':_0xd2b839[_0xd99194(0x167)],'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0xd99194(0x16e)}}});if(_0x1b81d8['error'])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x1b81d8[_0xd99194(0x148)][_0xd99194(0x1b6)]??JSON[_0xd99194(0x15d)](_0x1b81d8[_0xd99194(0x148)])));console['log'](_0xd2b839['Uqaef']),await _0xd2b839['aTdiI'](fetch,_0x4b50e1,{'method':_0xd2b839['EBpZa'],'headers':_0xc5f668,'body':JSON[_0xd99194(0x15d)]({'jsonrpc':'2.0','method':_0xd2b839[_0xd99194(0x19c)]})})['then'](_0x2e1c7c=>_0x2e1c7c[_0xd99194(0x14a)]()),process['stdout']['write'](_0xd99194(0x162));const _0x25ef0d=await _0x103914({'jsonrpc':'2.0','id':0x2,'method':_0xd99194(0x172),'params':{'name':_0xd99194(0x16d),'arguments':{}}});if(_0x25ef0d['error'])throw new Error(_0xd99194(0x1bf)+(_0x25ef0d['error'][_0xd99194(0x1b6)]??JSON['stringify'](_0x25ef0d[_0xd99194(0x148)])));console[_0xd99194(0x174)](_0xd2b839['Uqaef']);const _0x251f89=extractToken(_0x25ef0d['result']);if(!_0x251f89){console[_0xd99194(0x148)](_0xd2b839['xunHG']),console[_0xd99194(0x148)](JSON['stringify'](_0x25ef0d['result'],null,0x2));throw new Error(_0xd99194(0x150));}const _0x5c0ee0=_0xd2b839['waESQ'](join,_0xd2b839[_0xd99194(0x179)](homedir),_0xd2b839['uomlz']),_0x50b2c4=join(_0x5c0ee0,'refresh.txt');await mkdir(_0x5c0ee0,{'recursive':!![]}),await writeFile(_0x50b2c4,_0x251f89,{'mode':0x180}),await writeFile(join(_0x5c0ee0,_0xd2b839[_0xd99194(0x17a)]),_0x4b50e1,{'mode':0x180}),console['log']('\x0aToken\x20written\x20to\x20'+_0x50b2c4),console[_0xd99194(0x174)]('Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a');}async function fetchAuthServerMetadata(_0x5ef744){const _0x5cb45a=_0x51ab1e,_0x370ff0={'aZsKw':function(_0x1a8c2b,_0x7eb08a){return _0x1a8c2b(_0x7eb08a);}},_0xa3cb7a=_0x5ef744+_0x5cb45a(0x1bc),_0x52aa4f=await _0x370ff0[_0x5cb45a(0x1a5)](fetch,_0xa3cb7a);if(!_0x52aa4f['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0xa3cb7a+':\x20'+_0x52aa4f[_0x5cb45a(0x198)]);return _0x52aa4f['json']();}function waitForCallback(_0x4a062a){const _0x47704a=_0x51ab1e,_0x347812={'ifrSJ':_0x47704a(0x1af),'SpAcX':'code','JslLw':_0x47704a(0x17b),'dSaqS':_0x47704a(0x19e)};return new Promise((_0xdcbe73,_0x1d10d0)=>{const _0x5a9753=_0x47704a,_0x4505bf={'xCjBv':_0x347812[_0x5a9753(0x171)],'DposO':function(_0x1170f2,_0x4d68bb){return _0x1170f2!==_0x4d68bb;},'DnPpi':_0x5a9753(0x192),'XammJ':_0x347812[_0x5a9753(0x164)],'BDXPs':_0x5a9753(0x1a6),'TMqrr':_0x347812['JslLw'],'pxoUp':_0x347812[_0x5a9753(0x184)],'LqSaW':function(_0x3be062,_0x2bc30b){return _0x3be062(_0x2bc30b);}},_0x17efba=()=>{const _0x37eb3c=_0x5a9753;_0x33d35c['closeAllConnections'](),_0x33d35c[_0x37eb3c(0x15b)]();},_0x36b1cd=setTimeout(()=>{_0x17efba(),_0x1d10d0(new OAuthTimeoutError(_0x4505bf['xCjBv']));},0x1d4c0),_0x33d35c=createServer((_0x4260e2,_0x284ef1)=>{const _0x2bf8e5=_0x5a9753,_0x418f2c=new URL(_0x4260e2['url']??'/',_0x2bf8e5(0x1aa)+CALLBACK_PORT);if(_0x4505bf['DposO'](_0x418f2c['pathname'],_0x4505bf['DnPpi'])){_0x284ef1[_0x2bf8e5(0x1c6)](0x194),_0x284ef1[_0x2bf8e5(0x196)]('Not\x20found');return;}const _0x57f0cf=_0x418f2c['searchParams']['get'](_0x4505bf[_0x2bf8e5(0x18f)]),_0x4d3c42=_0x418f2c['searchParams']['get'](_0x2bf8e5(0x177)),_0x2e047d=_0x418f2c[_0x2bf8e5(0x158)][_0x2bf8e5(0x1a8)]('error');if(_0x2e047d){const _0x4d2620=_0x418f2c['searchParams']['get'](_0x2bf8e5(0x14f))??_0x2e047d;_0x284ef1['writeHead'](0xc8,{'Content-Type':_0x4505bf[_0x2bf8e5(0x1c0)]}),_0x284ef1['end']('<html><body><h2>Authentication\x20failed</h2><p>'+_0x4d2620+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),clearTimeout(_0x36b1cd),_0x17efba(),_0x1d10d0(new Error('OAuth\x20error:\x20'+_0x4d2620));return;}if(!_0x57f0cf||_0x4d3c42!==_0x4a062a){_0x284ef1['writeHead'](0x190,{'Content-Type':_0x2bf8e5(0x1a6)}),_0x284ef1['end'](_0x4505bf[_0x2bf8e5(0x1be)]);return;}_0x284ef1[_0x2bf8e5(0x1c6)](0xc8,{'Content-Type':_0x4505bf['BDXPs']}),_0x284ef1[_0x2bf8e5(0x196)](_0x4505bf['pxoUp']),clearTimeout(_0x36b1cd),_0x17efba(),_0x4505bf[_0x2bf8e5(0x1c2)](_0xdcbe73,_0x57f0cf);});_0x33d35c['listen'](CALLBACK_PORT,_0x5a9753(0x18a));});}async function openBrowser(_0x5b1435){const _0x4d8bb6=_0x51ab1e,_0xfaf3ed={'sHLjt':function(_0x50edc8,_0x1b3aba){return _0x50edc8===_0x1b3aba;},'Vtezo':'darwin'},_0x47395d=_0xfaf3ed['sHLjt'](process['platform'],_0xfaf3ed['Vtezo'])?'open':process['platform']===_0x4d8bb6(0x16f)?'start':'xdg-open';exec(_0x47395d+'\x20\x22'+_0x5b1435+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x22460b=_0x51ab1e,_0xd1b6cf={'ZsQxW':function(_0x511678,_0xbc0ad){return _0x511678>_0xbc0ad;}};try{const _0x38200d=JSON['parse'](await readFile(TOKEN_CACHE_PATH,'utf-8'));if(_0x38200d[_0x22460b(0x1a7)]&&_0x38200d[_0x22460b(0x1a7)]!==currentOrigin)return null;if(_0x38200d[_0x22460b(0x165)]&&_0xd1b6cf[_0x22460b(0x181)](Date[_0x22460b(0x199)](),_0x38200d[_0x22460b(0x165)]))return null;return _0x38200d[_0x22460b(0x145)]??null;}catch{return null;}}async function saveCachedToken(_0x324d6b,_0x268955,_0x570f7c){const _0x3cad33=_0x51ab1e,_0x16db59={'dnbfw':function(_0x522a72){return _0x522a72();},'sQiPs':function(_0x1d81a5,_0x6a1c05){return _0x1d81a5*_0x6a1c05;},'YyvlL':function(_0x4ae8f0,_0x2a65a3,_0x2a2276){return _0x4ae8f0(_0x2a65a3,_0x2a2276);},'hSJGv':function(_0x1ab699,_0x295730,_0x4a6b9e,_0x351254){return _0x1ab699(_0x295730,_0x4a6b9e,_0x351254);}},_0x300c0f=await _0x16db59[_0x3cad33(0x1ae)](loadCachedData),_0x258f0a={..._0x300c0f,'origin':currentOrigin,'accessToken':_0x324d6b,'refreshToken':_0x268955??_0x300c0f?.[_0x3cad33(0x19b)],'expiresAt':_0x570f7c?Date['now']()+_0x16db59['sQiPs'](_0x570f7c,0x3e8):undefined};await _0x16db59['YyvlL'](mkdir,join(_0x16db59[_0x3cad33(0x1ae)](homedir),_0x3cad33(0x169)),{'recursive':!![]}),await _0x16db59[_0x3cad33(0x178)](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x258f0a),{'mode':0x180});}async function loadCachedClient(){const _0x2bf35b=_0x51ab1e,_0x1cb52d={'owSjD':function(_0x344929,_0x1dbde5){return _0x344929!==_0x1dbde5;}},_0x15cfec=await loadCachedData();if(_0x15cfec?.[_0x2bf35b(0x1a7)]&&_0x1cb52d['owSjD'](_0x15cfec[_0x2bf35b(0x1a7)],currentOrigin))return null;return _0x15cfec?.[_0x2bf35b(0x1b0)]?{'clientId':_0x15cfec[_0x2bf35b(0x1b0)],'clientSecret':_0x15cfec['clientSecret']}:null;}async function clearCachedClient(){const _0x93ed7e=_0x51ab1e,_0x1ba3e0={'LLuhh':function(_0xa01af2){return _0xa01af2();}},_0x3ecac6=await _0x1ba3e0[_0x93ed7e(0x195)](loadCachedData);if(!_0x3ecac6)return;const {clientId:_0x1d2c46,clientSecret:_0x5a7e4a,..._0xa24778}=_0x3ecac6;await writeFile(TOKEN_CACHE_PATH,JSON[_0x93ed7e(0x15d)](_0xa24778),{'mode':0x180});}async function saveCachedClient(_0x5d619b,_0x19294c){const _0x13c435=_0x51ab1e,_0x2632ac={'HuPDL':function(_0x10e37a){return _0x10e37a();},'AUoQv':function(_0xa2a339,_0x362ba9,_0x331ed9){return _0xa2a339(_0x362ba9,_0x331ed9);},'Ffvym':function(_0x205cf5,_0x3241ae,_0x3d66f7){return _0x205cf5(_0x3241ae,_0x3d66f7);},'liabH':'.ranger'},_0x76482e=await _0x2632ac['HuPDL'](loadCachedData),_0x41c9a9={..._0x76482e,'origin':currentOrigin,'accessToken':_0x76482e?.['accessToken']??'','clientId':_0x5d619b,'clientSecret':_0x19294c};await _0x2632ac['AUoQv'](mkdir,_0x2632ac['Ffvym'](join,_0x2632ac['HuPDL'](homedir),_0x2632ac['liabH']),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON[_0x13c435(0x15d)](_0x41c9a9),{'mode':0x180});}async function loadCachedData(){const _0x263e42=_0x51ab1e;try{return JSON[_0x263e42(0x151)](await readFile(TOKEN_CACHE_PATH,_0x263e42(0x1c3)));}catch{return null;}}async function parseResponse(_0x46c3c4){const _0x30721c=_0x51ab1e,_0x3c8aed={'vIUek':'content-type','CWQpb':_0x30721c(0x14b),'VhGes':function(_0x5daba1,_0x21b798){return _0x5daba1!==_0x21b798;}},_0x4054b3=_0x46c3c4[_0x30721c(0x14e)]['get'](_0x3c8aed['vIUek'])??'';if(_0x4054b3['includes'](_0x3c8aed[_0x30721c(0x15c)])){const _0x365118=await _0x46c3c4[_0x30721c(0x14a)]();for(const _0x20b011 of _0x365118[_0x30721c(0x18d)]('\x0a')){const _0x2b1615=_0x20b011[_0x30721c(0x160)]();if(_0x2b1615['startsWith'](_0x30721c(0x152))){const _0x3cd936=_0x2b1615[_0x30721c(0x1a9)](_0x30721c(0x152)['length'])['trim']();if(!_0x3cd936)continue;try{const _0x1589ec=JSON['parse'](_0x3cd936);if(_0x3c8aed['VhGes'](_0x1589ec['id'],undefined)||_0x1589ec['error'])return _0x1589ec;}catch{}}}throw new Error('No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream');}return _0x46c3c4['json']();}function extractToken(_0x27e93e){const _0x2d8f2f=_0x51ab1e,_0x47e574={'NsBKc':'string','hpQrX':'Unknown\x20error','RSiaH':_0x2d8f2f(0x14a)};if(!_0x27e93e)return null;const _0x40edbb=_0x27e93e[_0x2d8f2f(0x18e)];if(_0x40edbb?.['token']&&typeof _0x40edbb[_0x2d8f2f(0x15a)]===_0x47e574[_0x2d8f2f(0x19a)])return _0x40edbb['token'];if(_0x27e93e[_0x2d8f2f(0x1c5)]){const _0x30efcc=_0x27e93e['content'];throw new Error('Server\x20returned\x20error:\x20'+(_0x30efcc?.[0x0]?.['text']??_0x47e574['hpQrX']));}const _0x4cb2da=_0x27e93e['content'];if(_0x4cb2da)for(const _0x23487a of _0x4cb2da){if(_0x23487a['type']===_0x47e574[_0x2d8f2f(0x1ac)]&&_0x23487a[_0x2d8f2f(0x14a)]){try{const _0x5e987b=JSON[_0x2d8f2f(0x151)](_0x23487a['text']);if(typeof _0x5e987b?.[_0x2d8f2f(0x15a)]===_0x47e574['NsBKc'])return _0x5e987b['token'];}catch{}const _0x512ade=_0x23487a['text']['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x512ade)return _0x512ade[0x1];}}return null;}
|
|
1
|
+
const _0x167611=_0xc357;(function(_0x1a0429,_0x2c4fc4){const _0x3b00e7=_0xc357,_0x30fd7f=_0x1a0429();while(!![]){try{const _0x35d6ae=-parseInt(_0x3b00e7(0x1b4))/0x1*(parseInt(_0x3b00e7(0x1a0))/0x2)+-parseInt(_0x3b00e7(0x1a4))/0x3*(-parseInt(_0x3b00e7(0x1a6))/0x4)+parseInt(_0x3b00e7(0x19e))/0x5+parseInt(_0x3b00e7(0x1fd))/0x6+-parseInt(_0x3b00e7(0x1f3))/0x7+-parseInt(_0x3b00e7(0x1f8))/0x8+-parseInt(_0x3b00e7(0x1e9))/0x9;if(_0x35d6ae===_0x2c4fc4)break;else _0x30fd7f['push'](_0x30fd7f['shift']());}catch(_0x55ef0f){_0x30fd7f['push'](_0x30fd7f['shift']());}}}(_0x1f52,0x1cb3d));function _0xc357(_0x16a9cc,_0x15bed0){_0x16a9cc=_0x16a9cc-0x170;const _0x1f52a4=_0x1f52();let _0xc35712=_0x1f52a4[_0x16a9cc];return _0xc35712;}import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';import{createServer}from'http';import{randomBytes,createHash}from'crypto';import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),'.ranger',_0x167611(0x1f4)),AUTH_ORIGIN_PATH=join(homedir(),'.ranger','auth-origin.txt');export async function getMcpAuthOrigin(){const _0x4fa91d=_0x167611,_0x535611={'xllrC':function(_0x19538d,_0xd27be1,_0x3a5161){return _0x19538d(_0xd27be1,_0x3a5161);}};try{const _0x2a5529=(await _0x535611['xllrC'](readFile,AUTH_ORIGIN_PATH,'utf-8'))[_0x4fa91d(0x18f)]();return _0x2a5529||null;}catch{return null;}}export async function mcpBootstrap(){const _0x59fa4b=_0x167611,_0x2267cf={'QKFJI':function(_0x2baece){return _0x2baece();},'GhWiF':function(_0x1f3ed8,_0x1f43fa){return _0x1f3ed8+_0x1f43fa;},'gYmzG':_0x59fa4b(0x1d4),'TYqnv':'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','RohyG':function(_0x40b36c,_0x53a6eb,_0x4237e8){return _0x40b36c(_0x53a6eb,_0x4237e8);}},_0x323e7f=_0x2267cf[_0x59fa4b(0x1a3)](getMcpAuthUrl);currentOrigin=_0x323e7f;const _0x3d6c53=process['stdout']['isTTY']??![];console[_0x59fa4b(0x1db)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x323e7f+'\x0a');const _0x266b6d=await tryUnauthenticated(_0x323e7f);let _0x5150a9=null;if(_0x266b6d===_0x59fa4b(0x171))_0x5150a9='';else{_0x5150a9=await _0x2267cf['QKFJI'](loadCachedToken);if(!_0x5150a9){if(!_0x3d6c53)throw new Error(_0x2267cf[_0x59fa4b(0x1a1)](_0x2267cf['gYmzG'],_0x2267cf['TYqnv']));_0x5150a9=await oauthFlow(_0x323e7f);}}await _0x2267cf['RohyG'](callGetCliToken,_0x323e7f,_0x5150a9);}async function tryUnauthenticated(_0x191090){const _0x1c5fd2=_0x167611,_0x3441a6={'KyvhN':function(_0x5e3c49,_0xb69487,_0x374aec){return _0x5e3c49(_0xb69487,_0x374aec);},'JDiwu':_0x1c5fd2(0x1ab),'TFmyj':_0x1c5fd2(0x18c)},_0x1bd331=await _0x3441a6['KyvhN'](fetch,_0x191090,{'method':_0x1c5fd2(0x1ed),'headers':{'Content-Type':'application/json','Accept':_0x1c5fd2(0x1e7)},'body':JSON[_0x1c5fd2(0x17d)]({'jsonrpc':_0x3441a6['JDiwu'],'id':0x1,'method':'initialize','params':{'protocolVersion':_0x1c5fd2(0x1c4),'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x3441a6[_0x1c5fd2(0x17a)]}}})});if(_0x1bd331['ok'])return await _0x1bd331['text'](),'proxied';if(_0x1bd331[_0x1c5fd2(0x1be)]===0x191)return await _0x1bd331['text'](),'needs-oauth';const _0x52f080=await _0x1bd331['text']();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x1bd331[_0x1c5fd2(0x1be)]+':\x20'+_0x52f080);}class OAuthTimeoutError extends Error{constructor(_0x2f2cfc){const _0x5b968d=_0x167611,_0x4c08f2={'dgeUK':'OAuthTimeoutError'};super(_0x2f2cfc),this[_0x5b968d(0x1cc)]=_0x4c08f2[_0x5b968d(0x199)];}}async function oauthFlow(_0xa923e0){const _0x20cdb3=_0x167611,_0x26c762={'IrhmP':function(_0x4a832d,_0xcc88c9){return _0x4a832d(_0xcc88c9);},'nZYZU':function(_0x1be811,_0x1ca9e7){return _0x1be811 instanceof _0x1ca9e7;},'etgrm':function(_0x1dda9d){return _0x1dda9d();},'BFIrs':_0x20cdb3(0x1b7),'fxOxF':function(_0x30e220){return _0x30e220();},'odeOi':function(_0x15f765,_0x336609){return _0x15f765(_0x336609);}};try{return await _0x26c762[_0x20cdb3(0x1eb)](oauthFlowAttempt,_0xa923e0);}catch(_0x4c5110){if(_0x26c762['nZYZU'](_0x4c5110,OAuthTimeoutError)&&await _0x26c762[_0x20cdb3(0x1b6)](loadCachedClient))return console[_0x20cdb3(0x1db)](_0x26c762[_0x20cdb3(0x19a)]),await _0x26c762[_0x20cdb3(0x1f5)](clearCachedClient),await _0x26c762[_0x20cdb3(0x1e1)](oauthFlowAttempt,_0xa923e0);throw _0x4c5110;}}async function oauthFlowAttempt(_0x657dbb){const _0x40c16b=_0x167611,_0xfc1bcc={'TQuGt':function(_0x119623,_0x5c6024){return _0x119623(_0x5c6024);},'egccu':function(_0xe65e3a){return _0xe65e3a();},'WzASy':function(_0x2632d2,_0x90263f,_0x1bf04f){return _0x2632d2(_0x90263f,_0x1bf04f);},'gtGcg':_0x40c16b(0x1ed),'GwnhR':_0x40c16b(0x185),'AEmNz':'authorization_code','HtZPb':_0x40c16b(0x1c7),'RqPwt':_0x40c16b(0x1b2),'bdKhK':_0x40c16b(0x1b0),'FcVpS':'code','nWKgb':_0x40c16b(0x196),'bHEiZ':_0x40c16b(0x179),'PTXUW':'state','nCSNN':'\x0aOpening\x20browser\x20for\x20authentication...','nmzeM':function(_0x38c88a,_0x94c7f){return _0x38c88a(_0x94c7f);},'srfuJ':'Exchanging\x20authorization\x20code...','TLqUo':'client_secret','fTFtk':_0x40c16b(0x1d7),'dUSHq':function(_0x5212cc,_0x3ad5c9,_0x1294a6){return _0x5212cc(_0x3ad5c9,_0x1294a6);},'fDVar':'application/x-www-form-urlencoded'},_0x31a234=_0x657dbb['replace'](/\/mcp$/,'');process['stdout'][_0x40c16b(0x186)]('Discovering\x20authorization\x20server...');const _0xc5291e=await fetch(_0x31a234+_0x40c16b(0x1cf));if(!_0xc5291e['ok'])throw new Error(_0x40c16b(0x1ba));const _0x55b112=await _0xc5291e[_0x40c16b(0x1c6)](),_0x5ba901=_0x55b112[_0x40c16b(0x189)]?.[0x0];if(!_0x5ba901)throw new Error(_0x40c16b(0x193));console['log']('\x20'+_0x5ba901);const _0x55b859=await _0xfc1bcc[_0x40c16b(0x1dc)](fetchAuthServerMetadata,_0x5ba901);let _0x37dbb7,_0x5e184b;const _0x570c5a=await _0xfc1bcc['egccu'](loadCachedClient);if(_0x570c5a)_0x37dbb7=_0x570c5a['clientId'],_0x5e184b=_0x570c5a[_0x40c16b(0x1e2)];else{if(_0x55b859[_0x40c16b(0x1cd)]){process['stdout'][_0x40c16b(0x186)](_0x40c16b(0x1bb));const _0x1eac2e=await _0xfc1bcc[_0x40c16b(0x1d0)](fetch,_0x55b859[_0x40c16b(0x1cd)],{'method':_0xfc1bcc['gtGcg'],'headers':{'Content-Type':_0xfc1bcc['GwnhR']},'body':JSON['stringify']({'client_name':_0x40c16b(0x1d8),'redirect_uris':['http://localhost:'+CALLBACK_PORT+_0x40c16b(0x1bd)],'grant_types':[_0xfc1bcc['AEmNz'],'refresh_token'],'response_types':['code'],'token_endpoint_auth_method':'none'})});if(!_0x1eac2e['ok']){const _0xb092af=await _0x1eac2e[_0x40c16b(0x1ae)]();throw new Error(_0x40c16b(0x17e)+_0xb092af);}const _0x1324a0=await _0x1eac2e['json']();_0x37dbb7=_0x1324a0['client_id'],_0x5e184b=_0x1324a0['client_secret'],await saveCachedClient(_0x37dbb7,_0x5e184b),console[_0x40c16b(0x1db)](_0x40c16b(0x1b8));}else throw new Error('Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found');}const _0x1e0c91=randomBytes(0x20)[_0x40c16b(0x1e4)](_0xfc1bcc[_0x40c16b(0x1d1)]),_0x1cb69e=createHash(_0xfc1bcc[_0x40c16b(0x177)])[_0x40c16b(0x191)](_0x1e0c91)[_0x40c16b(0x1b9)](_0xfc1bcc['HtZPb']),_0x5bc873=randomBytes(0x10)[_0x40c16b(0x1e4)](_0xfc1bcc['bdKhK']),_0x3f7a09=new URL(_0x55b859[_0x40c16b(0x182)]);_0x3f7a09['searchParams']['set'](_0x40c16b(0x18a),_0xfc1bcc[_0x40c16b(0x1d6)]),_0x3f7a09['searchParams'][_0x40c16b(0x1a7)](_0xfc1bcc[_0x40c16b(0x1fc)],_0x37dbb7),_0x3f7a09[_0x40c16b(0x1b5)][_0x40c16b(0x1a7)](_0x40c16b(0x192),'http://localhost:'+CALLBACK_PORT+_0x40c16b(0x1bd)),_0x3f7a09['searchParams'][_0x40c16b(0x1a7)](_0xfc1bcc[_0x40c16b(0x170)],_0x1cb69e),_0x3f7a09[_0x40c16b(0x1b5)][_0x40c16b(0x1a7)]('code_challenge_method','S256'),_0x3f7a09[_0x40c16b(0x1b5)][_0x40c16b(0x1a7)](_0xfc1bcc['PTXUW'],_0x5bc873);_0x55b112[_0x40c16b(0x1d7)]&&_0x3f7a09[_0x40c16b(0x1b5)]['set'](_0x40c16b(0x1d7),_0x55b112['resource']);console['log'](_0xfc1bcc[_0x40c16b(0x1ef)]),console['log']('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0x3f7a09[_0x40c16b(0x1e4)]()+'\x0a'),await _0xfc1bcc['nmzeM'](openBrowser,_0x3f7a09['toString']());const _0xf521f6=await waitForCallback(_0x5bc873);process[_0x40c16b(0x1cb)][_0x40c16b(0x186)](_0xfc1bcc[_0x40c16b(0x1a2)]);const _0x61b791=new URLSearchParams({'grant_type':'authorization_code','code':_0xf521f6,'redirect_uri':'http://localhost:'+CALLBACK_PORT+'/callback','client_id':_0x37dbb7,'code_verifier':_0x1e0c91});_0x5e184b&&_0x61b791[_0x40c16b(0x1a7)](_0xfc1bcc[_0x40c16b(0x176)],_0x5e184b);_0x55b112['resource']&&_0x61b791['set'](_0xfc1bcc['fTFtk'],_0x55b112[_0x40c16b(0x1d7)]);const _0x556187=await _0xfc1bcc[_0x40c16b(0x1c2)](fetch,_0x55b859['token_endpoint'],{'method':_0x40c16b(0x1ed),'headers':{'Content-Type':_0xfc1bcc[_0x40c16b(0x1aa)]},'body':_0x61b791});if(!_0x556187['ok']){const _0x4180e8=await _0x556187['text']();throw new Error(_0x40c16b(0x1bc)+_0x4180e8);}const _0x17bce1=await _0x556187['json']();return console[_0x40c16b(0x1db)](_0x40c16b(0x1b8)),await saveCachedToken(_0x17bce1['access_token'],_0x17bce1[_0x40c16b(0x19c)],_0x17bce1['expires_in']),_0x17bce1['access_token'];}async function callGetCliToken(_0x3b978a,_0x203ff3){const _0x171af8=_0x167611,_0x49ff47={'cDhrD':function(_0x213f29,_0x104fe8,_0x4a1fab){return _0x213f29(_0x104fe8,_0x4a1fab);},'emfUU':'Authorization','IxmDS':_0x171af8(0x1ab),'DAQvV':'1.0.0','SfrUm':_0x171af8(0x1b8),'kNZdS':'notifications/initialized','EMytO':_0x171af8(0x1f1),'EDGWr':function(_0x450ac0,_0x5a9b86){return _0x450ac0(_0x5a9b86);},'gYKfC':'\x0aUnexpected\x20response\x20structure:','yrXJD':_0x171af8(0x1ce),'QngYK':function(_0x1f8e8e,_0x3e9bfd,_0x1d3c15){return _0x1f8e8e(_0x3e9bfd,_0x1d3c15);},'gOQVk':'refresh.txt'},_0x37811f={'Content-Type':_0x171af8(0x185),'Accept':_0x171af8(0x1e7)};_0x203ff3&&(_0x37811f[_0x49ff47['emfUU']]='Bearer\x20'+_0x203ff3);const _0x59df44=async _0x10a26e=>{const _0xf70a63=_0x171af8,_0x29a518=await _0x49ff47['cDhrD'](fetch,_0x3b978a,{'method':_0xf70a63(0x1ed),'headers':_0x37811f,'body':JSON[_0xf70a63(0x17d)](_0x10a26e)});if(!_0x29a518['ok']){const _0x5b9985=await _0x29a518[_0xf70a63(0x1ae)]();throw new Error('HTTP\x20'+_0x29a518[_0xf70a63(0x1be)]+':\x20'+_0x5b9985);}return parseResponse(_0x29a518);};process['stdout']['write']('Initializing\x20MCP\x20session...');const _0x56f480=await _0x59df44({'jsonrpc':_0x49ff47[_0x171af8(0x1e6)],'id':0x1,'method':'initialize','params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x49ff47['DAQvV']}}});if(_0x56f480['error'])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x56f480[_0x171af8(0x1f7)][_0x171af8(0x1c8)]??JSON[_0x171af8(0x17d)](_0x56f480['error'])));console['log'](_0x49ff47[_0x171af8(0x187)]),await fetch(_0x3b978a,{'method':'POST','headers':_0x37811f,'body':JSON['stringify']({'jsonrpc':_0x49ff47['IxmDS'],'method':_0x49ff47['kNZdS']})})[_0x171af8(0x188)](_0x35caee=>_0x35caee[_0x171af8(0x1ae)]()),process['stdout']['write'](_0x49ff47[_0x171af8(0x174)]);const _0x124395=await _0x49ff47[_0x171af8(0x184)](_0x59df44,{'jsonrpc':_0x49ff47[_0x171af8(0x1e6)],'id':0x2,'method':'tools/call','params':{'name':'get_cli_token','arguments':{}}});if(_0x124395['error'])throw new Error('get_cli_token\x20failed:\x20'+(_0x124395['error']['message']??JSON['stringify'](_0x124395[_0x171af8(0x1f7)])));console['log'](_0x171af8(0x1b8));const _0x340083=extractToken(_0x124395['result']);if(!_0x340083){console['error'](_0x49ff47['gYKfC']),console[_0x171af8(0x1f7)](JSON[_0x171af8(0x17d)](_0x124395[_0x171af8(0x1a8)],null,0x2));throw new Error(_0x171af8(0x198));}const _0x137735=join(homedir(),_0x49ff47['yrXJD']),_0x33aec8=_0x49ff47[_0x171af8(0x1c0)](join,_0x137735,_0x49ff47['gOQVk']);await _0x49ff47['cDhrD'](mkdir,_0x137735,{'recursive':!![]}),await writeFile(_0x33aec8,_0x340083,{'mode':0x180}),await writeFile(join(_0x137735,'auth-origin.txt'),_0x3b978a,{'mode':0x180}),console[_0x171af8(0x1db)](_0x171af8(0x1d3)+_0x33aec8),console[_0x171af8(0x1db)]('Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a');}async function fetchAuthServerMetadata(_0x44d26b){const _0x2ce0e4=_0x167611,_0x43625d=_0x44d26b+_0x2ce0e4(0x1d2),_0x2b35e0=await fetch(_0x43625d);if(!_0x2b35e0['ok'])throw new Error(_0x2ce0e4(0x19b)+_0x43625d+':\x20'+_0x2b35e0['status']);return _0x2b35e0[_0x2ce0e4(0x1c6)]();}function waitForCallback(_0x4a3e16){const _0x450abc={'ahHPM':function(_0x1e14e8){return _0x1e14e8();},'VQizo':'OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','aZISv':function(_0x3efb82,_0x264df1){return _0x3efb82!==_0x264df1;},'mGPSi':'Not\x20found','NCSeb':'code','MUbCK':'<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','siQYY':function(_0x5ad5bf,_0xcf5317){return _0x5ad5bf(_0xcf5317);},'JaDvx':'127.0.0.1'};return new Promise((_0x3e2d07,_0x130690)=>{const _0xe6fce9=_0xc357,_0x41eeab={'IcalL':function(_0x436e80,_0x384726){const _0x2fe7a0=_0xc357;return _0x450abc[_0x2fe7a0(0x1c5)](_0x436e80,_0x384726);},'JFVvC':_0x450abc['mGPSi'],'JgNUi':_0x450abc[_0xe6fce9(0x1f9)],'VMonD':_0xe6fce9(0x195),'Uswxr':'error_description','UFvFM':'text/html','EwYJa':function(_0x23ba05,_0x4390b3){return _0x23ba05(_0x4390b3);},'WVmXS':function(_0x3ae6f1,_0xcffb1d){return _0x3ae6f1!==_0xcffb1d;},'ENjUh':_0x450abc[_0xe6fce9(0x1de)]},_0x546778=()=>{const _0x17f6e6=_0xe6fce9;_0x35a076[_0x17f6e6(0x175)](),_0x35a076[_0x17f6e6(0x19d)]();},_0x1a37f9=setTimeout(()=>{const _0xfb38e9=_0xe6fce9;_0x450abc[_0xfb38e9(0x178)](_0x546778),_0x130690(new OAuthTimeoutError(_0x450abc['VQizo']));},0x1d4c0),_0x35a076=_0x450abc['siQYY'](createServer,(_0x4711eb,_0x1c3ad6)=>{const _0x5b8ea4=_0xe6fce9,_0x2ee4b5=new URL(_0x4711eb[_0x5b8ea4(0x172)]??'/',_0x5b8ea4(0x18b)+CALLBACK_PORT);if(_0x41eeab['IcalL'](_0x2ee4b5[_0x5b8ea4(0x1ec)],_0x5b8ea4(0x1bd))){_0x1c3ad6['writeHead'](0x194),_0x1c3ad6['end'](_0x41eeab['JFVvC']);return;}const _0x5a8ddf=_0x2ee4b5[_0x5b8ea4(0x1b5)][_0x5b8ea4(0x1ca)](_0x41eeab[_0x5b8ea4(0x1dd)]),_0x273cdb=_0x2ee4b5[_0x5b8ea4(0x1b5)]['get'](_0x41eeab[_0x5b8ea4(0x1a5)]),_0x1e3cb7=_0x2ee4b5[_0x5b8ea4(0x1b5)][_0x5b8ea4(0x1ca)]('error');if(_0x1e3cb7){const _0x386de4=_0x2ee4b5['searchParams'][_0x5b8ea4(0x1ca)](_0x41eeab[_0x5b8ea4(0x1d5)])??_0x1e3cb7;_0x1c3ad6['writeHead'](0xc8,{'Content-Type':_0x41eeab['UFvFM']}),_0x1c3ad6[_0x5b8ea4(0x1e8)](_0x5b8ea4(0x1b3)+_0x386de4+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),clearTimeout(_0x1a37f9),_0x546778(),_0x41eeab[_0x5b8ea4(0x18e)](_0x130690,new Error(_0x5b8ea4(0x173)+_0x386de4));return;}if(!_0x5a8ddf||_0x41eeab['WVmXS'](_0x273cdb,_0x4a3e16)){_0x1c3ad6[_0x5b8ea4(0x183)](0x190,{'Content-Type':_0x5b8ea4(0x17b)}),_0x1c3ad6['end']('<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>');return;}_0x1c3ad6[_0x5b8ea4(0x183)](0xc8,{'Content-Type':_0x41eeab['UFvFM']}),_0x1c3ad6[_0x5b8ea4(0x1e8)](_0x41eeab['ENjUh']),clearTimeout(_0x1a37f9),_0x546778(),_0x3e2d07(_0x5a8ddf);});_0x35a076['listen'](CALLBACK_PORT,_0x450abc[_0xe6fce9(0x1df)]);});}async function openBrowser(_0x3cfc6d){const _0x26fcb0=_0x167611,_0x26e8f2={'UUJaV':function(_0x2230d1,_0x1f4dfd){return _0x2230d1===_0x1f4dfd;},'wzdeZ':_0x26fcb0(0x1e5),'qEaQf':'open','dZEBm':'win32','zusNt':_0x26fcb0(0x1c3),'cQyMb':_0x26fcb0(0x1a9)},_0x12963b=_0x26e8f2['UUJaV'](process['platform'],_0x26e8f2[_0x26fcb0(0x1da)])?_0x26e8f2[_0x26fcb0(0x1ee)]:process['platform']===_0x26e8f2[_0x26fcb0(0x1ea)]?_0x26e8f2['zusNt']:_0x26e8f2[_0x26fcb0(0x1f6)];exec(_0x12963b+'\x20\x22'+_0x3cfc6d+'\x22');}let currentOrigin='';function _0x1f52(){const _0x34163d=['result','xdg-open','fDVar','2.0','expiresAt','slice','text','AjbIl','hex','string','sha256','<html><body><h2>Authentication\x20failed</h2><p>','2BRJEEi','searchParams','etgrm','\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a','\x20done','digest','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','Registering\x20OAuth\x20client...','Token\x20exchange\x20failed:\x20','/callback','status','accessToken','QngYK','HOlxl','dUSHq','start','2025-03-26','aZISv','json','base64url','message','uAoKv','get','stdout','name','registration_endpoint','.ranger','/.well-known/oauth-protected-resource','WzASy','HtZPb','/.well-known/oauth-authorization-server','\x0aToken\x20written\x20to\x20','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','Uswxr','FcVpS','resource','Ranger\x20CLI','ZFpGt','wzdeZ','log','TQuGt','JgNUi','MUbCK','JaDvx','MHHNW','odeOi','clientSecret','utf-8','toString','darwin','IxmDS','application/json,\x20text/event-stream','end','797211ZfKSAM','dZEBm','IrhmP','pathname','POST','qEaQf','nCSNN','jQTQv','Requesting\x20CLI\x20token...','ciRKO','519750umVaRw','mcp-oauth-tokens.json','fxOxF','cQyMb','error','1161048nNAGJg','NCSeb','parse','origin','nWKgb','1395306uhEBpU','bHEiZ','proxied','url','OAuth\x20error:\x20','EMytO','closeAllConnections','TLqUo','RqPwt','ahHPM','code_challenge','TFmyj','text/html','token','stringify','Client\x20registration\x20failed:\x20','refreshToken','data:','type','authorization_endpoint','writeHead','EDGWr','application/json','write','SfrUm','then','authorization_servers','response_type','http://localhost:','1.0.0','startsWith','EwYJa','trim','text/event-stream','update','redirect_uri','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','structuredContent','state','client_id','length','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','dgeUK','BFIrs','Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20','refresh_token','close','785655vMCUqB','evCda','134184CqiBbA','GhWiF','srfuJ','QKFJI','1131ZblCTb','VMonD','1804xIgDIf','set'];_0x1f52=function(){return _0x34163d;};return _0x1f52();}async function loadCachedToken(){const _0x324b68=_0x167611;try{const _0x3380d8=JSON['parse'](await readFile(TOKEN_CACHE_PATH,_0x324b68(0x1e3)));if(_0x3380d8['origin']&&_0x3380d8[_0x324b68(0x1fb)]!==currentOrigin)return null;if(_0x3380d8[_0x324b68(0x1ac)]&&Date['now']()>_0x3380d8['expiresAt'])return null;return _0x3380d8['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x31b1fc,_0xe064e8,_0x552f30){const _0x5e06fc=_0x167611,_0x4fb80c={'Tgppe':function(_0x143515){return _0x143515();},'DJjFW':function(_0x24d661,_0x483d96){return _0x24d661+_0x483d96;},'ciRKO':function(_0x46fa03,_0x44e234,_0x10bcc6){return _0x46fa03(_0x44e234,_0x10bcc6);},'MHHNW':_0x5e06fc(0x1ce)},_0x854761=await _0x4fb80c['Tgppe'](loadCachedData),_0x313337={..._0x854761,'origin':currentOrigin,'accessToken':_0x31b1fc,'refreshToken':_0xe064e8??_0x854761?.[_0x5e06fc(0x17f)],'expiresAt':_0x552f30?_0x4fb80c['DJjFW'](Date['now'](),_0x552f30*0x3e8):undefined};await _0x4fb80c[_0x5e06fc(0x1f2)](mkdir,join(homedir(),_0x4fb80c[_0x5e06fc(0x1e0)]),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON[_0x5e06fc(0x17d)](_0x313337),{'mode':0x180});}async function loadCachedClient(){const _0xef9581=_0x167611,_0x65b684=await loadCachedData();if(_0x65b684?.['origin']&&_0x65b684[_0xef9581(0x1fb)]!==currentOrigin)return null;return _0x65b684?.['clientId']?{'clientId':_0x65b684['clientId'],'clientSecret':_0x65b684[_0xef9581(0x1e2)]}:null;}async function clearCachedClient(){const _0x4a91e1=_0x167611,_0x1c264c={'ZFpGt':function(_0x5c3c97){return _0x5c3c97();}},_0x550c49=await _0x1c264c[_0x4a91e1(0x1d9)](loadCachedData);if(!_0x550c49)return;const {clientId:_0x112ddb,clientSecret:_0x4b7fc0,..._0x17c28f}=_0x550c49;await writeFile(TOKEN_CACHE_PATH,JSON[_0x4a91e1(0x17d)](_0x17c28f),{'mode':0x180});}async function saveCachedClient(_0x1afc73,_0x5065eb){const _0x564426=_0x167611,_0x1901db={'zmpTU':function(_0x1d4555){return _0x1d4555();},'evCda':function(_0x526c3a,_0x5883aa,_0x18420a){return _0x526c3a(_0x5883aa,_0x18420a);},'SSLuR':_0x564426(0x1ce)},_0x2db03b=await _0x1901db['zmpTU'](loadCachedData),_0x3e526a={..._0x2db03b,'origin':currentOrigin,'accessToken':_0x2db03b?.[_0x564426(0x1bf)]??'','clientId':_0x1afc73,'clientSecret':_0x5065eb};await _0x1901db[_0x564426(0x19f)](mkdir,join(homedir(),_0x1901db['SSLuR']),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x3e526a),{'mode':0x180});}async function loadCachedData(){try{return JSON['parse'](await readFile(TOKEN_CACHE_PATH,'utf-8'));}catch{return null;}}async function parseResponse(_0x53d8ff){const _0x3091af=_0x167611,_0x307d89={'uAoKv':'data:','jQTQv':function(_0x3a0013,_0x5d5ed4){return _0x3a0013!==_0x5d5ed4;},'AjbIl':'No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream'},_0x3bbf25=_0x53d8ff['headers'][_0x3091af(0x1ca)]('content-type')??'';if(_0x3bbf25['includes'](_0x3091af(0x190))){const _0x525c27=await _0x53d8ff['text']();for(const _0x23968d of _0x525c27['split']('\x0a')){const _0x1f45ee=_0x23968d['trim']();if(_0x1f45ee[_0x3091af(0x18d)](_0x307d89[_0x3091af(0x1c9)])){const _0x1b47fa=_0x1f45ee[_0x3091af(0x1ad)](_0x3091af(0x180)[_0x3091af(0x197)])[_0x3091af(0x18f)]();if(!_0x1b47fa)continue;try{const _0x346373=JSON['parse'](_0x1b47fa);if(_0x307d89[_0x3091af(0x1f0)](_0x346373['id'],undefined)||_0x346373[_0x3091af(0x1f7)])return _0x346373;}catch{}}}throw new Error(_0x307d89[_0x3091af(0x1af)]);}return _0x53d8ff['json']();}function extractToken(_0x1ccdf7){const _0x5ab146=_0x167611,_0x4ca5bb={'HOlxl':function(_0x2758f4,_0x248c9f){return _0x2758f4===_0x248c9f;},'GFjBu':function(_0x76ec0e,_0x1b0b9c){return _0x76ec0e===_0x1b0b9c;},'cBBMD':'text'};if(!_0x1ccdf7)return null;const _0x4cb31e=_0x1ccdf7[_0x5ab146(0x194)];if(_0x4cb31e?.['token']&&_0x4ca5bb[_0x5ab146(0x1c1)](typeof _0x4cb31e['token'],_0x5ab146(0x1b1)))return _0x4cb31e[_0x5ab146(0x17c)];if(_0x1ccdf7['isError']){const _0x580b0a=_0x1ccdf7['content'];throw new Error('Server\x20returned\x20error:\x20'+(_0x580b0a?.[0x0]?.['text']??'Unknown\x20error'));}const _0x1f48ea=_0x1ccdf7['content'];if(_0x1f48ea)for(const _0x5e50f0 of _0x1f48ea){if(_0x4ca5bb['GFjBu'](_0x5e50f0[_0x5ab146(0x181)],_0x4ca5bb['cBBMD'])&&_0x5e50f0[_0x5ab146(0x1ae)]){try{const _0x42da0e=JSON[_0x5ab146(0x1fa)](_0x5e50f0[_0x5ab146(0x1ae)]);if(_0x4ca5bb[_0x5ab146(0x1c1)](typeof _0x42da0e?.['token'],_0x5ab146(0x1b1)))return _0x42da0e[_0x5ab146(0x17c)];}catch{}const _0x20b3fc=_0x5e50f0['text']['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x20b3fc)return _0x20b3fc[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x25e018,_0x1b6b94){var _0x1e9209=_0x5362,_0x52a57a=_0x25e018();while(!![]){try{var _0x3665be=-parseInt(_0x1e9209(0xf4))/0x1+-parseInt(_0x1e9209(0xf5))/0x2*(parseInt(_0x1e9209(0x100))/0x3)+parseInt(_0x1e9209(0xfa))/0x4*(-parseInt(_0x1e9209(0xfe))/0x5)+-parseInt(_0x1e9209(0xf3))/0x6*(-parseInt(_0x1e9209(0xf1))/0x7)+parseInt(_0x1e9209(0xff))/0x8+parseInt(_0x1e9209(0xfb))/0x9*(parseInt(_0x1e9209(0xf7))/0xa)+-parseInt(_0x1e9209(0xf0))/0xb;if(_0x3665be===_0x1b6b94)break;else _0x52a57a['push'](_0x52a57a['shift']());}catch(_0x5cdc63){_0x52a57a['push'](_0x52a57a['shift']());}}}(_0x3411,0xd180a));function _0x3411(){var _0x394d8b=['2469891zAnSIy','JYbxD','ZMJdk','858891xAmizC','161182dKoRKa','error','402AvHkRM','1308308gBPJdh','2etHQFV','ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a','50EJlePI','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','fhfKk','64CUcIyR','787419zlmmhg','TgiGt','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','9360NAldnk','8940504qzCSeT'];_0x3411=function(){return _0x394d8b;};return _0x3411();}function _0x5362(_0x8ea19c,_0x568239){_0x8ea19c=_0x8ea19c-0xf0;var _0x3411e0=_0x3411();var _0x536277=_0x3411e0[_0x8ea19c];return _0x536277;}export async function migrateProfile(_0x2a20f3,_0x39286a){var _0x343797=_0x5362,_0x2b81d9={'fhfKk':function(_0x19425d,_0x3e96df){return _0x19425d+_0x3e96df;},'JYbxD':function(_0x2d4beb,_0x3e9261){return _0x2d4beb+_0x3e9261;},'TgiGt':function(_0x1ebac8,_0x38b161){return _0x1ebac8+_0x38b161;},'muQxz':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','uLyhn':'\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','ZMJdk':'Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a'};console[_0x343797(0xf2)](_0x2b81d9[_0x343797(0xf9)](_0x2b81d9[_0x343797(0x101)](_0x2b81d9[_0x343797(0x101)](_0x2b81d9[_0x343797(0xfc)](_0x343797(0xf6),'\x0a')+_0x343797(0xf8),_0x343797(0xfd))+'\x0a'+_0x2b81d9['muQxz'],_0x2b81d9['uLyhn'])+'\x0a',_0x2b81d9[_0x343797(0x102)])+'fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.'),process['exit'](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x12e903,_0x13709d){const _0x15a608=_0x5c38,_0x276638=_0x12e903();while(!![]){try{const _0x4490e8=parseInt(_0x15a608(0x134))/0x1+parseInt(_0x15a608(0x144))/0x2*(parseInt(_0x15a608(0x152))/0x3)+parseInt(_0x15a608(0x155))/0x4+parseInt(_0x15a608(0x150))/0x5*(parseInt(_0x15a608(0x14f))/0x6)+-parseInt(_0x15a608(0x142))/0x7*(-parseInt(_0x15a608(0x143))/0x8)+parseInt(_0x15a608(0x154))/0x9*(-parseInt(_0x15a608(0x12e))/0xa)+-parseInt(_0x15a608(0x127))/0xb;if(_0x4490e8===_0x13709d)break;else _0x276638['push'](_0x276638['shift']());}catch(_0x40a6e7){_0x276638['push'](_0x276638['shift']());}}}(_0x584a,0xb68ff));function _0x584a(){const _0x4a5c06=['11501829LMEEIQ','4078496UOhiVC','add','marketplace','success','enable','log','23405415hLbcnb','error','jVrMS','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','User\x20(available\x20in\x20all\x20your\x20projects)','kNdub','prompt','10gsgNQP','XnlEj','⚠\x20Failed\x20to\x20enable\x20plugin:','pluginScope','Where\x20should\x20the\x20plugin\x20be\x20installed?','NoEgq','1072611oHtOkV','❌\x20Failed\x20to\x20add\x20marketplace:','kHrBY','SKILL.md','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','\x0aYou\x20can\x20install\x20manually\x20with:','❌\x20Failed\x20to\x20install\x20plugin:','already\x20enabled','UDgZJ','rgSOQ','WgzFc','\x0a📦\x20Claude\x20Code\x20Plugin\x0a','IslbE','BGcPe','42917WSrFLM','592QhMxwt','1198832axIUCF','XncNV','ranger@trailhead','trailhead','plugin','wantsSkillup','✓\x20Ranger\x20skills\x20already\x20installed','yzOjV','XSebm','uUWBt','Would\x20you\x20like\x20to\x20install\x20skills?','22296TsqExm','550VxyYHA','--scope','6qGaONM','project'];_0x584a=function(){return _0x4a5c06;};return _0x584a();}import{join}from'path';import{existsSync}from'fs';import _0x59fc1f from'inquirer';import{skillup}from'../skillup.js';function _0x5c38(_0x30335c,_0x2c8f49){_0x30335c=_0x30335c-0x123;const _0x584acd=_0x584a();let _0x5c3877=_0x584acd[_0x30335c];return _0x5c3877;}import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x468cf5){const _0x49d1aa=_0x5c38,_0x108c9c={'yzOjV':function(_0x418706,_0x52ced1){return _0x418706(_0x52ced1);},'rgSOQ':_0x49d1aa(0x146),'eFcuL':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','aBkzy':function(_0x4e8de6,_0x490eb7,_0x30d451){return _0x4e8de6(_0x490eb7,_0x30d451);},'SlFsL':_0x49d1aa(0x131),'FdXje':_0x49d1aa(0x12b),'YHdUS':'user','IslbE':'project','kHrBY':_0x49d1aa(0x148),'VNBXE':_0x49d1aa(0x123),'aNkft':'ranger-testing/trailhead','BGcPe':function(_0x185ac4,_0xf097e6){return _0x185ac4===_0xf097e6;},'XSebm':_0x49d1aa(0x139),'XncNV':function(_0x184346,_0x17668b,_0x16ccba){return _0x184346(_0x17668b,_0x16ccba);},'kNdub':_0x49d1aa(0x13b)},_0x55f31e=await _0x108c9c[_0x49d1aa(0x14b)](isPluginInstalled,_0x108c9c[_0x49d1aa(0x13d)]);if(_0x55f31e)return console[_0x49d1aa(0x126)](_0x108c9c['eFcuL']),![];const _0x453a16=_0x108c9c[_0x49d1aa(0x14b)](existsSync,_0x108c9c['aBkzy'](join,getProjectRoot(),'.claude'));let _0x180547;if(_0x468cf5)_0x180547=_0x468cf5;else{if(_0x453a16)_0x180547='project';else{console[_0x49d1aa(0x126)](_0x49d1aa(0x13f));const _0x334341=await _0x59fc1f[_0x49d1aa(0x12d)]([{'type':'list','name':_0x108c9c['SlFsL'],'message':_0x49d1aa(0x132),'choices':[{'name':_0x108c9c['FdXje'],'value':_0x108c9c['YHdUS']},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x108c9c[_0x49d1aa(0x140)]}],'default':'user'}]);_0x180547=_0x334341['pluginScope'];}}console[_0x49d1aa(0x126)]('\x0aInstalling\x20Claude\x20Code\x20plugin\x20('+_0x180547+'\x20level)...\x0a');const _0x1c239c=await isMarketplaceAdded(_0x49d1aa(0x147));let _0x14c5db=_0x1c239c;if(_0x1c239c)console[_0x49d1aa(0x126)]('✓\x20Marketplace\x20already\x20added');else{const _0x2c0256=await runClaudeCommand([_0x108c9c[_0x49d1aa(0x136)],_0x108c9c['VNBXE'],_0x49d1aa(0x156),_0x108c9c['aNkft']]);!_0x2c0256[_0x49d1aa(0x124)]?(console['error'](_0x49d1aa(0x135),_0x2c0256['error']),console['log']('\x0aYou\x20can\x20install\x20manually\x20with:'),console['log']('\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead'),console[_0x49d1aa(0x126)]('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x180547)):_0x14c5db=!![];}if(_0x14c5db){const _0x52fddf=await runClaudeCommand([_0x108c9c[_0x49d1aa(0x136)],'install',_0x49d1aa(0x146),'--scope',_0x180547],{'cwd':_0x108c9c['BGcPe'](_0x180547,_0x49d1aa(0x153))?getProjectRoot():undefined});if(!_0x52fddf[_0x49d1aa(0x124)])console[_0x49d1aa(0x128)](_0x49d1aa(0x13a),_0x52fddf['error']),console['log'](_0x108c9c[_0x49d1aa(0x14c)]),console['log'](_0x49d1aa(0x12a)+_0x180547);else{console[_0x49d1aa(0x126)](_0x49d1aa(0x138));const _0x3726ae=['plugin',_0x49d1aa(0x125),_0x108c9c[_0x49d1aa(0x13d)]];_0x108c9c['BGcPe'](_0x180547,_0x49d1aa(0x153))&&_0x3726ae['push'](_0x49d1aa(0x151),_0x108c9c[_0x49d1aa(0x140)]);const _0x23d18a=await _0x108c9c[_0x49d1aa(0x145)](runClaudeCommand,_0x3726ae,{'captureOutput':!![],'cwd':_0x108c9c[_0x49d1aa(0x141)](_0x180547,_0x108c9c[_0x49d1aa(0x140)])?getProjectRoot():undefined}),_0x1dfed7=_0x23d18a['output']?.['includes'](_0x108c9c[_0x49d1aa(0x12c)]);!_0x23d18a['success']&&!_0x1dfed7?console[_0x49d1aa(0x128)](_0x49d1aa(0x130),_0x23d18a[_0x49d1aa(0x128)]):console[_0x49d1aa(0x126)]('✓\x20Claude\x20Code\x20plugin\x20enabled');}}return!![];}export async function ensureClaudeSkills(_0x43da82){const _0x44d00f=_0x5c38,_0x169a8f={'Fcapv':function(_0x1fdefd,_0xebd032,_0x3096cd,_0x5a96f5){return _0x1fdefd(_0xebd032,_0x3096cd,_0x5a96f5);},'uUWBt':function(_0x775da6,_0x4f580f){return _0x775da6(_0x4f580f);},'NoEgq':'user','jVrMS':'ranger','pMyFm':_0x44d00f(0x137),'rCiNP':function(_0x333d99,_0x451e90){return _0x333d99||_0x451e90;},'WgzFc':_0x44d00f(0x14a),'UDgZJ':'.claude','XnlEj':_0x44d00f(0x153),'GkYhL':_0x44d00f(0x14e)},_0x1f4009=existsSync(_0x169a8f['Fcapv'](join,_0x169a8f[_0x44d00f(0x14d)](getSkillsDir,_0x169a8f[_0x44d00f(0x133)]),_0x169a8f['jVrMS'],_0x169a8f['pMyFm'])),_0x430d06=_0x169a8f['uUWBt'](existsSync,_0x169a8f['Fcapv'](join,getSkillsDir('project'),_0x169a8f[_0x44d00f(0x129)],'SKILL.md'));if(_0x169a8f['rCiNP'](_0x1f4009,_0x430d06))return console['log'](_0x169a8f[_0x44d00f(0x13e)]),![];const _0x27b1f5=existsSync(join(getProjectRoot(),_0x169a8f[_0x44d00f(0x13c)]));let _0x4413d7=!![];if(_0x43da82)await skillup({'autoInstall':_0x43da82,'suppressUsage':!![]});else{if(_0x27b1f5)await skillup({'autoInstall':_0x169a8f[_0x44d00f(0x12f)],'suppressUsage':!![]});else{const _0x171cbc=await _0x59fc1f[_0x44d00f(0x12d)]([{'type':'confirm','name':'wantsSkillup','message':_0x169a8f['GkYhL'],'default':!![]}]);_0x4413d7=_0x171cbc[_0x44d00f(0x149)],_0x4413d7&&await skillup({'suppressUsage':!![]});}}return _0x4413d7;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3118c1,_0x427be7){const _0x51c6d9=_0x3f87,_0x3959b2=_0x3118c1();while(!![]){try{const _0xf336f7=-parseInt(_0x51c6d9(0x195))/0x1*(parseInt(_0x51c6d9(0x193))/0x2)+parseInt(_0x51c6d9(0x196))/0x3+-parseInt(_0x51c6d9(0x192))/0x4*(parseInt(_0x51c6d9(0x1a7))/0x5)+parseInt(_0x51c6d9(0x1aa))/0x6*(parseInt(_0x51c6d9(0x191))/0x7)+parseInt(_0x51c6d9(0x19a))/0x8*(parseInt(_0x51c6d9(0x1b1))/0x9)+-parseInt(_0x51c6d9(0x19f))/0xa+parseInt(_0x51c6d9(0x1a8))/0xb;if(_0xf336f7===_0x427be7)break;else _0x3959b2['push'](_0x3959b2['shift']());}catch(_0x25067b){_0x3959b2['push'](_0x3959b2['shift']());}}}(_0x4a1a,0x57950));function _0x4a1a(){const _0xa66c6e=['Project\x20(shared\x20with\x20team\x20via\x20git)','150410WkYjKy','8869883rvFQMv','plugin','516vqtJzW','maKpk','User\x20(available\x20in\x20all\x20your\x20projects)','OfAAG','Where\x20should\x20the\x20plugin\x20be\x20installed?','YZSBa','error','243zkKSWR','18368SCwjBD','84sUGAtr','1906RlFVgt','log','695gpwafe','763326oAwagM','✓\x20OpenCode\x20plugin\x20configured','@ranger-testing/opencode-plugin','$schema','200432MTreFi','cZXhF','pluginScope','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','PmzyL','3101240JLHWrn','nifui','https://opencode.ai/config.json','NzrHD','✓\x20OpenCode\x20plugin\x20already\x20configured','tGMSF','\x0a📦\x20OpenCode\x20Plugin\x0a'];_0x4a1a=function(){return _0xa66c6e;};return _0x4a1a();}import{join}from'path';import{existsSync}from'fs';function _0x3f87(_0x534249,_0x65aa62){_0x534249=_0x534249-0x191;const _0x4a1ab6=_0x4a1a();let _0x3f8727=_0x4a1ab6[_0x534249];return _0x3f8727;}import{mkdir,readFile,writeFile}from'fs/promises';import _0x16938f from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x4092e8){const _0x4ec179=_0x3f87,_0x15e6c2={'maKpk':function(_0x38da40,_0x92cc1,_0x1bae04){return _0x38da40(_0x92cc1,_0x1bae04);},'ZCRdi':'project','OfAAG':_0x4ec179(0x1a5),'PmzyL':'list','tGMSF':'user','cEAAE':_0x4ec179(0x1a6),'NzrHD':function(_0x198e7d,_0xc3b610){return _0x198e7d(_0xc3b610);},'YZSBa':'opencode.json','cZXhF':_0x4ec179(0x198),'nifui':'Failed\x20to\x20read\x20opencode.json','tBFtA':function(_0x48d6ab,_0x4fdd9c,_0x1e43c8){return _0x48d6ab(_0x4fdd9c,_0x1e43c8);}},_0x3e647e=existsSync(_0x15e6c2[_0x4ec179(0x1ab)](join,getOpencodeConfigDir(_0x15e6c2['ZCRdi']),'opencode.json'));let _0x56bd63;if(_0x4092e8)_0x56bd63=_0x4092e8;else{if(_0x3e647e)_0x56bd63=_0x15e6c2['ZCRdi'];else{console[_0x4ec179(0x194)](_0x15e6c2[_0x4ec179(0x1ad)]);const _0xe40903=await _0x16938f['prompt']([{'type':_0x15e6c2[_0x4ec179(0x19e)],'name':'pluginScope','message':_0x4ec179(0x1ae),'choices':[{'name':_0x4ec179(0x1ac),'value':_0x15e6c2[_0x4ec179(0x1a4)]},{'name':_0x15e6c2['cEAAE'],'value':_0x15e6c2['ZCRdi']}],'default':'user'}]);_0x56bd63=_0xe40903[_0x4ec179(0x19c)];}}const _0x1dbdff=join(_0x15e6c2[_0x4ec179(0x1a2)](getOpencodeConfigDir,_0x56bd63),_0x15e6c2[_0x4ec179(0x1af)]),_0x229277=_0x15e6c2[_0x4ec179(0x19b)],_0x3dc4de=_0x4ec179(0x1a1);let _0x3f16d3={};if(_0x15e6c2['NzrHD'](existsSync,_0x1dbdff))try{const _0x48dfa9=await readFile(_0x1dbdff,'utf-8');_0x3f16d3=JSON['parse'](_0x48dfa9);}catch(_0x115a00){return console[_0x4ec179(0x1b0)](_0x4ec179(0x19d)),{'configured':![],'scope':_0x56bd63,'error':_0x15e6c2[_0x4ec179(0x1a0)],'details':_0x115a00};}const _0x2ba6b8=Array['isArray'](_0x3f16d3[_0x4ec179(0x1a9)])?_0x3f16d3['plugin']:[];if(_0x2ba6b8['includes'](_0x229277))return console[_0x4ec179(0x194)](_0x4ec179(0x1a3)),{'configured':![],'scope':_0x56bd63};return _0x3f16d3[_0x4ec179(0x199)]=_0x3f16d3[_0x4ec179(0x199)]||_0x3dc4de,_0x3f16d3[_0x4ec179(0x1a9)]=[..._0x2ba6b8,_0x229277],await _0x15e6c2[_0x4ec179(0x1ab)](mkdir,getOpencodeConfigDir(_0x56bd63),{'recursive':!![]}),await _0x15e6c2['tBFtA'](writeFile,_0x1dbdff,JSON['stringify'](_0x3f16d3,null,0x2)+'\x0a'),console['log'](_0x4ec179(0x197)),{'configured':!![],'scope':_0x56bd63};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0xa151(){var _0x172adb=['HLDBI','error','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','36JaAYTv','1137bEXWcP','hQBJv','5490121SVIJQl','\x20\x20https://docs.ranger.net/main/concepts/profiles','556208tqfTUz','4248IZwDoa','9866380KhGAGw','1691361PIvmzv','773394aKjLDv','XLIox','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','633785WpqSDD','vwyVx','8wlMjEP'];_0xa151=function(){return _0x172adb;};return _0xa151();}function _0x4b7f(_0x1fa70c,_0x94e4cc){_0x1fa70c=_0x1fa70c-0x16c;var _0xa151f4=_0xa151();var _0x4b7fc4=_0xa151f4[_0x1fa70c];return _0x4b7fc4;}(function(_0x4ed0a4,_0x20dde7){var _0x170233=_0x4b7f,_0x5d3b62=_0x4ed0a4();while(!![]){try{var _0x4fc4d5=parseInt(_0x170233(0x17c))/0x1+-parseInt(_0x170233(0x178))/0x2+parseInt(_0x170233(0x174))/0x3*(parseInt(_0x170233(0x179))/0x4)+-parseInt(_0x170233(0x16d))/0x5*(parseInt(_0x170233(0x173))/0x6)+parseInt(_0x170233(0x176))/0x7*(-parseInt(_0x170233(0x16f))/0x8)+parseInt(_0x170233(0x17b))/0x9+parseInt(_0x170233(0x17a))/0xa;if(_0x4fc4d5===_0x20dde7)break;else _0x5d3b62['push'](_0x5d3b62['shift']());}catch(_0x49bb72){_0x5d3b62['push'](_0x5d3b62['shift']());}}}(_0xa151,0x80c96));export async function setupCi(_0x5063b7,_0x32a963,_0x2d780e){var _0x5f0292=_0x4b7f,_0xe7e311={'HLDBI':function(_0x2f5f5d,_0x3875a8){return _0x2f5f5d+_0x3875a8;},'hQBJv':function(_0x28591a,_0x421f24){return _0x28591a+_0x421f24;},'vwyVx':'ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','ZtzhY':_0x5f0292(0x172),'XLIox':'\x20\x20ranger\x20profile\x20add\x20<name>\x0a'};console[_0x5f0292(0x171)](_0xe7e311[_0x5f0292(0x170)](_0xe7e311[_0x5f0292(0x175)](_0xe7e311[_0x5f0292(0x170)](_0xe7e311[_0x5f0292(0x16e)],'\x0a'),_0xe7e311['ZtzhY'])+_0xe7e311[_0x5f0292(0x17d)],'\x0a')+_0x5f0292(0x16c)+_0x5f0292(0x177)),process['exit'](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x419ce9,_0x3819ca){const _0x2dafe7=_0x45d6,_0x63af03=_0x419ce9();while(!![]){try{const _0x38267d=parseInt(_0x2dafe7(0xb6))/0x1*(-parseInt(_0x2dafe7(0x98))/0x2)+-parseInt(_0x2dafe7(0xab))/0x3+parseInt(_0x2dafe7(0xb7))/0x4*(parseInt(_0x2dafe7(0xaa))/0x5)+-parseInt(_0x2dafe7(0xad))/0x6+-parseInt(_0x2dafe7(0xa5))/0x7*(parseInt(_0x2dafe7(0xa2))/0x8)+parseInt(_0x2dafe7(0xbb))/0x9+-parseInt(_0x2dafe7(0xb0))/0xa*(-parseInt(_0x2dafe7(0xb4))/0xb);if(_0x38267d===_0x3819ca)break;else _0x63af03['push'](_0x63af03['shift']());}catch(_0x1a1e74){_0x63af03['push'](_0x63af03['shift']());}}}(_0x1cff,0xbf7e1));function _0x45d6(_0x3e6c9b,_0xab0f68){_0x3e6c9b=_0x3e6c9b-0x97;const _0x1cffb5=_0x1cff();let _0x45d6e0=_0x1cffb5[_0x3e6c9b];return _0x45d6e0;}function _0x1cff(){const _0x38a1ad=['user-level','All\x20projects\x20(','warn','user','1376COVGlF','isTTY','/skills/','58373tOHLMP','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','autoInstall','\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','KAZvX','10nKaGRk','352782bsRbgr','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','9175314RfJmhU','split','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','80vfofcY','NrtVL','list','\x20\x203.\x20Run:\x20ranger\x20skillup','2437589NPssBF','/.claude/skills/','3Dtzlcp','1683104fQyNIU','Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20(','fVxRR','GpkUJ','13591593hXEXoN','log','stdout','172698sloQWg','project','\x20<your-api-token>','Where\x20should\x20skills\x20be\x20installed?','IWfCd','KDMlX'];_0x1cff=function(){return _0x38a1ad;};return _0x1cff();}import{basename}from'path';import _0x48f795 from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0xf83cfc={}){const _0x32f1cf=_0x45d6,_0x587a85={'KDMlX':_0x32f1cf(0xa8),'ZCjsl':function(_0x449f1c){return _0x449f1c();},'KAZvX':'opencode','rXGyY':'\x20--opencode','KNpNF':'❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','PQRoc':function(_0x5d35a0,_0x50b480){return _0x5d35a0===_0x50b480;},'fVxRR':'user','GpkUJ':function(_0x29c6f3,_0x1a86fa){return _0x29c6f3===_0x1a86fa;},'JCzwI':'installLevel','XnSmC':_0x32f1cf(0x9b),'NrtVL':'\x0a📦\x20Installing\x20skills...\x0a','HVpUT':'ranger','IWfCd':function(_0x2baad6,_0x52c9ec){return _0x2baad6 instanceof _0x52c9ec;},'gJAzA':function(_0x35f4de,_0x2944d8){return _0x35f4de>_0x2944d8;},'fiuCO':'\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','YsuCd':'\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!','fvhZp':_0x32f1cf(0xac)};console[_0x32f1cf(0xbc)](_0x587a85[_0x32f1cf(0x9d)]);const _0x28ce8f=_0xf83cfc['platform']??'claude',_0x21fa80=await _0x587a85['ZCjsl'](getToken);if(!_0x21fa80){const _0x2d8999='5|3|2|0|1|4'[_0x32f1cf(0xae)]('|');let _0x5041e1=0x0;while(!![]){switch(_0x2d8999[_0x5041e1++]){case'0':console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x28ce8f==='opencode'?'\x20--opencode':'')+_0x32f1cf(0x9a));continue;case'1':console[_0x32f1cf(0xbc)](_0x32f1cf(0xb3)+(_0x28ce8f===_0x587a85['KAZvX']?_0x587a85['rXGyY']:'')+'\x0a');continue;case'2':console['log'](_0x32f1cf(0xaf));continue;case'3':console['log']('To\x20get\x20started:');continue;case'4':return;case'5':console['log'](_0x587a85['KNpNF']);continue;}break;}}console['log']('✓\x20Found\x20API\x20token');const _0x5cf409=getProjectRoot(),_0x1bb42b=basename(_0x5cf409),_0x15705e=_0x587a85['PQRoc'](_0x28ce8f,_0x587a85['KAZvX'])?getOpencodeConfigDir(_0x587a85[_0x32f1cf(0xb9)])+'/skills/':getClaudeConfigDir()+_0x32f1cf(0xa4),_0x2a0ba6=_0x587a85[_0x32f1cf(0xba)](_0x28ce8f,_0x587a85[_0x32f1cf(0xa9)])?_0x5cf409+'/.opencode/skills/':_0x5cf409+_0x32f1cf(0xb5),_0x436743=process['stdin'][_0x32f1cf(0xa3)]&&process[_0x32f1cf(0x97)][_0x32f1cf(0xa3)];let _0x1c3600;if(_0xf83cfc[_0x32f1cf(0xa7)])_0x1c3600=_0xf83cfc['autoInstall'];else{if(_0x436743){const _0x49c81b=await _0x48f795['prompt']([{'type':_0x32f1cf(0xb2),'name':_0x587a85['JCzwI'],'message':_0x587a85['XnSmC'],'choices':[{'name':_0x32f1cf(0x9f)+_0x15705e+')','value':'user'},{'name':'This\x20project\x20only\x20('+_0x2a0ba6+')','value':'project'}]}]);_0x1c3600=_0x49c81b['installLevel'];}else _0x1c3600=_0x32f1cf(0x99),console['log'](_0x32f1cf(0xb8)+_0x2a0ba6+')');}let _0x178913=0x0;const _0x3ebb40=getCurrentVersion();console[_0x32f1cf(0xbc)](_0x587a85[_0x32f1cf(0xb1)]);try{const _0x1857e6=await installSkill(_0x587a85['HVpUT'],{'cliVersion':_0x3ebb40,'level':_0x1c3600,'platform':_0x28ce8f});_0x1857e6&&_0x178913++;}catch(_0xb61cfe){console[_0x32f1cf(0xa0)](_0x32f1cf(0xa6),_0x587a85[_0x32f1cf(0x9c)](_0xb61cfe,Error)?_0xb61cfe['message']:_0xb61cfe);}if(_0x178913>0x0){const _0x59d8a8=_0x1c3600===_0x32f1cf(0xa1)?_0x32f1cf(0x9e):'project-level';console[_0x32f1cf(0xbc)]('\x0a✅\x20Installed\x20'+_0x178913+'\x20'+_0x59d8a8+'\x20skill'+(_0x587a85['gJAzA'](_0x178913,0x1)?'s':'')+'\x20successfully!\x0a'),!_0xf83cfc['suppressUsage']&&(console['log']('To\x20use:'),_0x28ce8f==='opencode'?console[_0x32f1cf(0xbc)](_0x587a85['fiuCO']):console['log'](_0x587a85['YsuCd']));}else console[_0x32f1cf(0xbc)](_0x587a85['fvhZp']);}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x386fcf,_0x49f121){const _0x3546af=_0x52ae,_0xab571=_0x386fcf();while(!![]){try{const _0x2b2d18=-parseInt(_0x3546af(0x1fd))/0x1+parseInt(_0x3546af(0x20b))/0x2+-parseInt(_0x3546af(0x1f2))/0x3*(-parseInt(_0x3546af(0x239))/0x4)+parseInt(_0x3546af(0x226))/0x5*(-parseInt(_0x3546af(0x224))/0x6)+-parseInt(_0x3546af(0x218))/0x7*(parseInt(_0x3546af(0x22c))/0x8)+-parseInt(_0x3546af(0x228))/0x9+parseInt(_0x3546af(0x241))/0xa;if(_0x2b2d18===_0x49f121)break;else _0xab571['push'](_0xab571['shift']());}catch(_0x30d558){_0xab571['push'](_0xab571['shift']());}}}(_0x1922,0xd90d7));function _0x52ae(_0x5d52a8,_0x3d7ebc){_0x5d52a8=_0x5d52a8-0x1e9;const _0x19222c=_0x1922();let _0x52aebd=_0x19222c[_0x5d52a8];return _0x52aebd;}import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x3cf803 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';function _0x1922(){const _0x1baa1b=['4FnWsZC','ignore','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','success','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','✓\x20Exported\x20credentials\x20for\x20CI','user','39035840QWwfwN','bJULT','plugin','trackPhaseStart','url','...','hdtlU','SgdVE','stdin','install','platform','✓\x20Playwright\x20Chromium\x20browser\x20found','jupxC','\x0a⚠\x20Skipping\x20Chromium\x20installation.','force','skipChromium','qyGFJ','\x20(fallback\x20version)','318495iOthFb','✓\x20Stored\x20credentials\x20locally','trackPhaseEnd','--with-deps','JllgR','nhgFT','skills','rjjli','GITHUB_ENV','HBvAk','JmeHI','299911rqrSPh','withDeps','ttgQQ','device_auth','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','.gitignore','CvaPN','\x0aInstalling\x20Chromium\x20browser...\x0a','prompt','profile','npx','XDSKD','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','49992ofmfdn','\x20install\x20chromium','provided_token','log','\x0aIn\x20Claude\x20Code,\x20run\x20','chromium','\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','\x20is\x20no\x20longer\x20supported.\x20','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','skipped','✓\x20Local\x20profile\x20already\x20exists','NLCBV','175MrHFnV','Validating\x20API\x20token...','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','sgSgn','playwright@','existing_token','auth','✓\x20Already\x20authenticated\x20to\x20','Installation\x20failed\x20with\x20exit\x20code\x20','error','message','inherit','438jVedzk','SYxEt','82555lRdCKi','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','4468806JvPdhW','eaASL','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','dGaFo','366064JUqfyZ','✓\x20Authenticated\x20to\x20','✓\x20~/.ranger/\x20directory\x20already\x20exists','wiIQA','Authentication\x20failed:\x20','SJEVy','allowInsecureLocalhost','scope','bPPYw','organizationName','rBRUX','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','playwright/package.json'];_0x1922=function(){return _0x1baa1b;};return _0x1922();}import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.58.2';const bold=_0x484b70=>'\x1b[1m'+_0x484b70+'\x1b[0m';export function getPlaywrightVersion(){const _0x4709e6=_0x52ae;try{const _0x7ba15f=require['resolve'](_0x4709e6(0x238)),_0x5497c1=require(_0x7ba15f);return _0x5497c1['version'];}catch{return null;}}export function installChromiumBinary(_0x3badf5,_0x2cbd9a=![]){const _0x5659b6=_0x52ae,_0x1b3665={'lFguW':function(_0x2025bc,_0x4eaca5){return _0x2025bc(_0x4eaca5);},'OntZs':'chromium','zyRcd':function(_0x1f0839,_0x5917b0,_0x16200d,_0x30dd22){return _0x1f0839(_0x5917b0,_0x16200d,_0x30dd22);},'SJEVy':_0x5659b6(0x208)};return new Promise((_0x524451,_0x1b84e5)=>{const _0xb35000=_0x5659b6,_0x394b57={'GQziK':function(_0xa83af4,_0x54cff6){return _0xa83af4===_0x54cff6;},'ttgQQ':function(_0x3b77c1,_0x192be0){return _0x1b3665['lFguW'](_0x3b77c1,_0x192be0);}},_0x170ee3=[_0xb35000(0x21c)+_0x3badf5,'install',..._0x2cbd9a?[_0xb35000(0x1f5)]:[],_0x1b3665['OntZs']],_0x38c2e6=_0x1b3665['zyRcd'](spawn,_0x1b3665[_0xb35000(0x231)],_0x170ee3,{'stdio':[_0xb35000(0x23a),_0xb35000(0x223),_0xb35000(0x223)],'shell':process[_0xb35000(0x1ea)]==='win32'});_0x38c2e6['on']('close',_0x23c21c=>{const _0x2d30d9=_0xb35000;_0x394b57['GQziK'](_0x23c21c,0x0)?_0x524451():_0x1b84e5(new Error(_0x2d30d9(0x220)+_0x23c21c));}),_0x38c2e6['on'](_0xb35000(0x221),_0x44b8ef=>{const _0x57ddc6=_0xb35000;_0x394b57[_0x57ddc6(0x1ff)](_0x1b84e5,_0x44b8ef);});});}export async function authenticate(_0x4f69be){const _0x4f0525=_0x52ae,_0x45191a={'OdeCw':function(_0x26c84c,_0x4be85b){return _0x26c84c(_0x4be85b);},'RjXIn':_0x4f0525(0x21d),'DSaem':_0x4f0525(0x200),'rBRUX':_0x4f0525(0x23f)};if(!_0x4f69be){const _0x28140c=await getToken();if(_0x28140c){const _0x271b4c=await _0x45191a['OdeCw'](getCurrentUser,_0x28140c);if(_0x271b4c['success'])return console['log'](_0x4f0525(0x21f)+_0x271b4c['user']['organizationName']),{'token':_0x28140c,'method':_0x45191a['RjXIn']};}try{_0x4f69be=await runDeviceAuthFlow();}catch(_0x5776a5){throw new Error('Authentication\x20failed:\x20'+(_0x5776a5 instanceof Error?_0x5776a5[_0x4f0525(0x222)]:_0x5776a5));}const _0x44e3dd=await getCurrentUser(_0x4f69be);if(!_0x44e3dd[_0x4f0525(0x23d)])throw new Error(_0x4f0525(0x23b)+_0x44e3dd[_0x4f0525(0x221)]);return console[_0x4f0525(0x20e)](_0x4f0525(0x22d)+_0x44e3dd['user']['organizationName']),{'token':_0x4f69be,'method':_0x45191a['DSaem']};}console[_0x4f0525(0x20e)](_0x4f0525(0x219));const _0xaa58b3=await getCurrentUser(_0x4f69be);if(!_0xaa58b3[_0x4f0525(0x23d)]){if(_0xaa58b3['status'])throw new Error(_0x4f0525(0x230)+_0xaa58b3[_0x4f0525(0x221)]+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0xaa58b3[_0x4f0525(0x221)]+_0x4f0525(0x202));}return console[_0x4f0525(0x20e)](_0x4f0525(0x22d)+_0xaa58b3[_0x4f0525(0x240)][_0x4f0525(0x235)]),await storeToken(_0x4f69be),console[_0x4f0525(0x20e)](process['env'][_0x4f0525(0x1fa)]?_0x45191a[_0x4f0525(0x236)]:_0x4f0525(0x1f3)),{'token':_0x4f69be,'method':_0x4f0525(0x20d)};}export async function ensureRangerDir(_0x2b8d54){const _0x30e7cd=_0x52ae,_0x2ee54c={'cRPeA':function(_0x3a62c5){return _0x3a62c5();},'oULmb':function(_0x205307,_0xa132ef){return _0x205307(_0xa132ef);},'NTjUm':'✓\x20Created\x20~/.ranger/\x20directory','yULUX':_0x30e7cd(0x22e)};void _0x2b8d54;const _0x30bba9=_0x2ee54c['cRPeA'](getRangerHomeDir);return!_0x2ee54c['oULmb'](existsSync,_0x30bba9)?(await mkdir(_0x30bba9,{'recursive':!![]}),console['log'](_0x2ee54c['NTjUm']),{'path':_0x30bba9,'installed':!![]}):(console[_0x30e7cd(0x20e)](_0x2ee54c['yULUX']),{'path':_0x30bba9,'installed':![]});}export async function ensureChromium(_0x559740=![]){const _0x3ad034=_0x52ae,_0x2407e6={'KPIAZ':function(_0x39cef6,_0x278b31){return _0x39cef6(_0x278b31);},'sgSgn':_0x3ad034(0x1eb),'rulBF':function(_0xdf995e,_0x4c3d8a){return _0xdf995e??_0x4c3d8a;},'Bacgd':'confirm','rjjli':_0x3ad034(0x1f1),'jupxC':_0x3ad034(0x205),'zStOT':function(_0x278809,_0x58fc54){return _0x278809 instanceof _0x58fc54;}};let _0xc1fab8=![];try{const _0x2854c7=chromium['executablePath']();_0xc1fab8=_0x2407e6['KPIAZ'](existsSync,_0x2854c7);}catch{_0xc1fab8=![];}if(_0xc1fab8)return console[_0x3ad034(0x20e)](_0x2407e6[_0x3ad034(0x21b)]),![];const _0x51a6d5=getPlaywrightVersion(),_0x252040=_0x2407e6['rulBF'](_0x51a6d5,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x1ff5e4=!_0x51a6d5,_0x43c7a2=process[_0x3ad034(0x249)]['isTTY']&&process['stdout']['isTTY'];let _0x275239=!![];if(_0x43c7a2){const {install:_0x6600c}=await _0x3cf803[_0x3ad034(0x206)]([{'type':_0x2407e6['Bacgd'],'name':_0x3ad034(0x1e9),'message':_0x1ff5e4?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x252040+'\x20now?':'The\x20required\x20version\x20('+_0x252040+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x275239=_0x6600c;}else console['log'](_0x3ad034(0x23e)+_0x252040+(_0x1ff5e4?_0x2407e6[_0x3ad034(0x1f9)]:'')+_0x3ad034(0x246));if(_0x275239){console['log'](_0x2407e6[_0x3ad034(0x1ec)]);try{await installChromiumBinary(_0x252040,_0x559740),console['log']('\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully');}catch(_0x4b1de0){console[_0x3ad034(0x221)]('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x2407e6['zStOT'](_0x4b1de0,Error)?_0x4b1de0[_0x3ad034(0x222)]:_0x4b1de0),console['log']('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),console[_0x3ad034(0x20e)]('\x20\x20npx\x20playwright@'+_0x252040+_0x3ad034(0x20c));}}else console[_0x3ad034(0x20e)](_0x3ad034(0x1ed)),console[_0x3ad034(0x20e)]('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console['log']('\x20\x20npx\x20playwright@'+_0x252040+_0x3ad034(0x20c));return!![];}export async function writeRangerGitignore(_0x4c28bc){const _0x4bdbc5=_0x52ae,_0x5e5188={'JmeHI':_0x4bdbc5(0x203)},_0x3dde04=join(_0x4c28bc,_0x5e5188[_0x4bdbc5(0x1fc)]),_0x4eee2a='\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(_0x3dde04,_0x4eee2a),console['log']('✓\x20Created\x20.ranger/.gitignore');}export async function ensureLocalEnv(_0x23ceaa,_0x2397eb){const _0x5a6f5f=_0x52ae,_0x317835={'Ohzjn':_0x5a6f5f(0x240),'yyQIk':_0x5a6f5f(0x214),'QqybU':function(_0x369639,_0x3416a4){return _0x369639===_0x3416a4;},'BWFXQ':function(_0x32217b,_0x4337b7,_0x324618){return _0x32217b(_0x4337b7,_0x324618);},'xoLRE':'local','dUhJg':_0x5a6f5f(0x216),'dlIdL':'\x0a❌\x20Profile\x20setup\x20failed:','JllgR':function(_0x413bf,_0x310054){return _0x413bf instanceof _0x310054;}};if(!findGitRoot()&&_0x23ceaa?.['scope']!==_0x317835['Ohzjn'])return console[_0x5a6f5f(0x20e)](_0x317835['yyQIk']),{'ready':![],'skipped':!![]};const _0x7f0b2f=_0x317835['QqybU'](_0x23ceaa?.['scope'],_0x5a6f5f(0x240))?getRangerHomeDir():undefined;if(_0x317835['BWFXQ'](findExistingEnv,'local',{'locations':[_0x317835['xoLRE']],'rangerDir':_0x7f0b2f}))return console['log'](_0x317835['dUhJg']),{'ready':!![],'skipped':![]};try{return await addEnv(_0x317835['xoLRE'],{'url':_0x23ceaa?.[_0x5a6f5f(0x245)],'force':_0x23ceaa?.[_0x5a6f5f(0x1ee)],'allowInsecureLocalhost':_0x23ceaa?.['allowInsecureLocalhost'],'scope':_0x23ceaa?.['scope']},_0x2397eb),{'ready':!![],'skipped':![]};}catch(_0x116f25){return console['error'](_0x317835['dlIdL'],_0x317835[_0x5a6f5f(0x1f6)](_0x116f25,Error)?_0x116f25['message']:_0x116f25),{'ready':![],'skipped':![]};}}export async function start(_0xc8be1f,_0x18d355,_0x2f946b){const _0x1399e5=_0x52ae,_0x437273={'XDSKD':function(_0x20d5cf,_0x426689){return _0x20d5cf!==_0x426689;},'NLCBV':_0x1399e5(0x240),'uGRqO':function(_0x3c6da1,_0x50358a){return _0x3c6da1+_0x50358a;},'mpjrm':function(_0x273454,_0x3e55ca){return _0x273454(_0x3e55ca);},'bQCXo':function(_0x43ea2a){return _0x43ea2a();},'eaASL':function(_0x42d353,_0x4d6252){return _0x42d353(_0x4d6252);},'MXYGz':'✓\x20Skipping\x20authentication\x20(--skip-auth)','nhgFT':_0x1399e5(0x21e),'dGaFo':function(_0x685258,_0x188b84){return _0x685258(_0x188b84);},'hdtlU':'chromium','SYxEt':_0x1399e5(0x213),'cjCCJ':_0x1399e5(0x243),'bPPYw':_0x1399e5(0x1f8),'HBvAk':function(_0x2af99c,_0x3b9f65,_0x3d3ba3){return _0x2af99c(_0x3b9f65,_0x3d3ba3);},'qyGFJ':'opencode','CvaPN':function(_0x41ce08,_0x351dd3){return _0x41ce08(_0x351dd3);},'SgdVE':function(_0x4fd6dc,_0x268714){return _0x4fd6dc+_0x268714;},'bJULT':'ranger\x20profile\x20add\x20<name>','wiIQA':'with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'};console[_0x1399e5(0x20e)]('\x0a🚀\x20Ranger\x20Setup\x0a');_0x18d355?.['scope']!==undefined&&_0x437273[_0x1399e5(0x209)](_0x18d355[_0x1399e5(0x233)],_0x437273[_0x1399e5(0x217)])&&(console[_0x1399e5(0x221)](_0x437273['uGRqO']('ranger\x20setup\x20--scope='+_0x437273['mpjrm'](String,_0x18d355['scope'])+_0x1399e5(0x212)+'Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20',_0x1399e5(0x237))),process['exit'](0x1));_0x18d355={..._0x18d355,'scope':_0x437273[_0x1399e5(0x217)]};const _0x2b6bd5=!existsSync(_0x437273['bQCXo'](getRangerHomeDir));await _0x437273[_0x1399e5(0x229)](ensureRangerDir,_0x437273[_0x1399e5(0x217)]);if(_0x18d355?.['skipAuth'])console['log'](_0x437273['MXYGz']),_0x2f946b?.[_0x1399e5(0x1f4)](_0x437273[_0x1399e5(0x1f7)],{'isFirstRun':_0x2b6bd5,'method':'skipped'});else{_0x2f946b?.['trackPhaseStart'](_0x437273['nhgFT']);const _0x25f074=await authenticate(_0xc8be1f);_0x2f946b?.[_0x1399e5(0x1f4)]('auth',{'isFirstRun':_0x2b6bd5,'method':_0x25f074['method']});}_0x2f946b?.[_0x1399e5(0x244)](_0x1399e5(0x210));_0x18d355?.[_0x1399e5(0x1ef)]?console[_0x1399e5(0x20e)]('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await _0x437273[_0x1399e5(0x22b)](ensureChromium,_0x18d355?.[_0x1399e5(0x1fe)]);_0x2f946b?.['trackPhaseEnd'](_0x437273[_0x1399e5(0x247)],{'isFirstRun':_0x2b6bd5,'skipped':!!_0x18d355?.[_0x1399e5(0x1ef)]}),console['log'](_0x437273[_0x1399e5(0x225)]);const _0x5cd509=_0x18d355?.[_0x1399e5(0x233)],_0x4299f1=_0x18d355?.['opencode']??![];let _0x4dc786=null;_0x4299f1?(_0x2f946b?.[_0x1399e5(0x244)](_0x437273['cjCCJ']),_0x4dc786=await _0x437273['eaASL'](ensureOpencodePluginConfig,_0x5cd509),_0x2f946b?.['trackPhaseEnd'](_0x437273['cjCCJ'],{'isFirstRun':_0x2b6bd5,'opencode':!![]})):(_0x2f946b?.[_0x1399e5(0x244)]('plugin'),await ensureClaudePlugin(_0x5cd509),_0x2f946b?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x2b6bd5}));if(_0x4299f1&&_0x4dc786){_0x2f946b?.['trackPhaseStart'](_0x437273['bPPYw']);try{await _0x437273[_0x1399e5(0x1fb)](installSkill,'ranger',{'level':_0x4dc786['scope'],'cliVersion':getCurrentVersion(),'platform':_0x437273[_0x1399e5(0x1f0)]}),_0x2f946b?.['trackPhaseEnd'](_0x437273[_0x1399e5(0x234)],{'isFirstRun':_0x2b6bd5,'opencode':!![]});}catch(_0x3f5fff){console['warn'](_0x1399e5(0x22a),_0x3f5fff instanceof Error?_0x3f5fff[_0x1399e5(0x222)]:_0x3f5fff),_0x2f946b?.['trackPhaseEnd'](_0x1399e5(0x1f8),{'isFirstRun':_0x2b6bd5,'opencode':!![],'failed':!![]});}}else _0x2f946b?.[_0x1399e5(0x244)](_0x437273[_0x1399e5(0x234)]),await _0x437273[_0x1399e5(0x204)](ensureClaudeSkills,_0x5cd509),_0x2f946b?.[_0x1399e5(0x1f4)]('skills',{'isFirstRun':_0x2b6bd5});if(_0x18d355?.['skipAuth'])console[_0x1399e5(0x20e)](_0x1399e5(0x211));else{if(_0x18d355?.[_0x1399e5(0x245)]){_0x2f946b?.[_0x1399e5(0x244)](_0x1399e5(0x207));const _0x18b69a=await _0x437273[_0x1399e5(0x1fb)](ensureLocalEnv,{'url':_0x18d355[_0x1399e5(0x245)],'force':_0x18d355?.['force'],'allowInsecureLocalhost':_0x18d355?.[_0x1399e5(0x232)],'scope':'user'},_0x2f946b);_0x2f946b?.['trackPhaseEnd'](_0x1399e5(0x207),{'isFirstRun':_0x2b6bd5,'profileReady':_0x18b69a['ready'],'userSkipped':_0x18b69a[_0x1399e5(0x215)]});}else console['log'](_0x437273[_0x1399e5(0x248)](_0x437273[_0x1399e5(0x248)](_0x1399e5(0x20a)+('\x0a\x20\x20'+bold(_0x437273[_0x1399e5(0x242)]))+'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)',_0x1399e5(0x201)),'\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles'));}if(_0x4299f1)console['log'](_0x1399e5(0x227)),console[_0x1399e5(0x20e)]('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console['log'](_0x437273[_0x1399e5(0x22f)]),console[_0x1399e5(0x20e)]('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x3eb060=bold('/ranger:enable');console[_0x1399e5(0x20e)](_0x437273['uGRqO'](_0x1399e5(0x20f)+_0x3eb060+'\x20and\x20prompt\x20the\x20coding'+'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with',_0x1399e5(0x21a))+_0x1399e5(0x23c));}}
|
|
1
|
+
const _0x495eaa=_0x4e58;(function(_0x1096c5,_0x254947){const _0x428cd1=_0x4e58,_0xdc40b7=_0x1096c5();while(!![]){try{const _0x4044c0=-parseInt(_0x428cd1(0x120))/0x1*(parseInt(_0x428cd1(0x184))/0x2)+parseInt(_0x428cd1(0x13f))/0x3+parseInt(_0x428cd1(0x172))/0x4*(-parseInt(_0x428cd1(0x13d))/0x5)+-parseInt(_0x428cd1(0x166))/0x6+parseInt(_0x428cd1(0x11e))/0x7*(parseInt(_0x428cd1(0x117))/0x8)+parseInt(_0x428cd1(0x127))/0x9*(-parseInt(_0x428cd1(0x181))/0xa)+parseInt(_0x428cd1(0x15e))/0xb;if(_0x4044c0===_0x254947)break;else _0xdc40b7['push'](_0xdc40b7['shift']());}catch(_0x2351aa){_0xdc40b7['push'](_0xdc40b7['shift']());}}}(_0x49f7,0xd9f53));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x58c750 from'inquirer';function _0x49f7(){const _0xe61e49=['\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','10366txzqdC','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','\x0a\x20\x20','chromium','\x20\x20npx\x20playwright@','/ranger:enable','\x1b[1m','11299112oAvQYL','spjPB','plugin','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','tdIrX','MvWmb','skipAuth','7tlfaTr','UveQC','177HlcCEz','skills','ready','lXAcY','isTTY','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','playwright/package.json','795537kBnsYT','\x0aInstalling\x20Chromium\x20browser...\x0a','close','MPFiX','wGDAe','iQKcC','url','install','✓\x20Created\x20.ranger/.gitignore','lTxBQ','env','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','trackPhaseStart','success','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','local','rkDdc','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','\x20is\x20no\x20longer\x20supported.\x20','\x20now?','530955hfgZNm','prompt','4593852tCtTHC','\x20install\x20chromium','ItBrZ','STrTv','\x0a❌\x20Profile\x20setup\x20failed:','status','1.58.2','ukqbJ','✓\x20Already\x20authenticated\x20to\x20','tXlFl','Authentication\x20failed:\x20','AlmNH','pBctr','NvcKo','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','opencode','qKHmW','JPEJu','profile','aBwSM','BdRCU','yviHQ','Installation\x20failed\x20with\x20exit\x20code\x20','organizationName','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','VjSyx','force','error','playwright@','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','version','14692524YUCawM','cObjD','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','ranger','\x0a🚀\x20Ranger\x20Setup\x0a','\x20(fallback\x20version)','✓\x20Playwright\x20Chromium\x20browser\x20found','✓\x20Stored\x20credentials\x20locally','1655940mixkLY','device_auth','log','message','ZjrSd','inherit','scope','stdout','\x20and\x20prompt\x20the\x20coding','YKgvW','ranger\x20profile\x20add\x20<name>','egGQi','36dLEenG','✓\x20~/.ranger/\x20directory\x20already\x20exists','✓\x20Exported\x20credentials\x20for\x20CI','iyyjX','vZXqd','...','skipChromium','PkysS','bcuOD','withDeps','user','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','kdFiC','auth','trackPhaseEnd','140sBMKgm','exit'];_0x49f7=function(){return _0xe61e49;};return _0x49f7();}import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x495eaa(0x145);const bold=_0x145c9e=>_0x495eaa(0x18a)+_0x145c9e+'\x1b[0m';export function getPlaywrightVersion(){const _0x145eee=_0x495eaa;try{const _0x447c35=require['resolve'](_0x145eee(0x126)),_0x578053=require(_0x447c35);return _0x578053[_0x145eee(0x15d)];}catch{return null;}}export function installChromiumBinary(_0x50c628,_0x4c77d6=![]){const _0x49cc10=_0x495eaa,_0x4ca092={'STrTv':function(_0x3c3b27,_0x424561){return _0x3c3b27===_0x424561;},'MPFiX':function(_0x55a884){return _0x55a884();},'iQKcC':function(_0x56cca0,_0x51d98e){return _0x56cca0(_0x51d98e);},'ZjrSd':'--with-deps','UveQC':'npx','PFJwk':_0x49cc10(0x16b),'JCQSw':'win32','tSWbG':_0x49cc10(0x129),'yviHQ':'error'};return new Promise((_0x9a8c3d,_0x39d745)=>{const _0x3a490f=_0x49cc10,_0x4fc4fc=[_0x3a490f(0x15b)+_0x50c628,_0x3a490f(0x12e),..._0x4c77d6?[_0x4ca092[_0x3a490f(0x16a)]]:[],'chromium'],_0x410297=spawn(_0x4ca092[_0x3a490f(0x11f)],_0x4fc4fc,{'stdio':['ignore',_0x4ca092['PFJwk'],_0x3a490f(0x16b)],'shell':_0x4ca092[_0x3a490f(0x142)](process['platform'],_0x4ca092['JCQSw'])});_0x410297['on'](_0x4ca092['tSWbG'],_0x5d61f5=>{const _0x2e8cc6=_0x3a490f;_0x4ca092['STrTv'](_0x5d61f5,0x0)?_0x4ca092[_0x2e8cc6(0x12a)](_0x9a8c3d):_0x39d745(new Error(_0x2e8cc6(0x155)+_0x5d61f5));}),_0x410297['on'](_0x4ca092[_0x3a490f(0x154)],_0x505ef3=>{const _0x2c7fe0=_0x3a490f;_0x4ca092[_0x2c7fe0(0x12c)](_0x39d745,_0x505ef3);});});}export async function authenticate(_0x4138b0){const _0x514dc6=_0x495eaa,_0x198811={'vZXqd':function(_0x57f23c){return _0x57f23c();},'VjSyx':function(_0x1deefd,_0x24acc9){return _0x1deefd(_0x24acc9);},'NvcKo':function(_0x57ffde,_0x4e8e03){return _0x57ffde(_0x4e8e03);},'JPEJu':'Validating\x20API\x20token...','lXAcY':function(_0x2f9476,_0x46884f){return _0x2f9476(_0x46884f);},'AlmNH':_0x514dc6(0x174),'ClEvG':'provided_token'};if(!_0x4138b0){const _0x2f5610=await _0x198811[_0x514dc6(0x176)](getToken);if(_0x2f5610){const _0x2af553=await _0x198811[_0x514dc6(0x158)](getCurrentUser,_0x2f5610);if(_0x2af553['success'])return console['log'](_0x514dc6(0x147)+_0x2af553[_0x514dc6(0x17c)][_0x514dc6(0x156)]),{'token':_0x2f5610,'method':'existing_token'};}try{_0x4138b0=await _0x198811['vZXqd'](runDeviceAuthFlow);}catch(_0x44fb52){throw new Error(_0x514dc6(0x149)+(_0x44fb52 instanceof Error?_0x44fb52[_0x514dc6(0x169)]:_0x44fb52));}const _0x3c4f78=await _0x198811[_0x514dc6(0x14c)](getCurrentUser,_0x4138b0);if(!_0x3c4f78['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x3c4f78['error']);return console[_0x514dc6(0x168)]('✓\x20Authenticated\x20to\x20'+_0x3c4f78['user'][_0x514dc6(0x156)]),{'token':_0x4138b0,'method':_0x514dc6(0x167)};}console['log'](_0x198811[_0x514dc6(0x150)]);const _0x322a9f=await getCurrentUser(_0x4138b0);if(!_0x322a9f[_0x514dc6(0x135)]){if(_0x322a9f[_0x514dc6(0x144)])throw new Error(_0x514dc6(0x149)+_0x322a9f['error']+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error(_0x514dc6(0x14d)+_0x322a9f[_0x514dc6(0x15a)]+_0x514dc6(0x11a));}return console['log']('✓\x20Authenticated\x20to\x20'+_0x322a9f['user']['organizationName']),await _0x198811[_0x514dc6(0x123)](storeToken,_0x4138b0),console[_0x514dc6(0x168)](process[_0x514dc6(0x131)]['GITHUB_ENV']?_0x198811[_0x514dc6(0x14a)]:_0x514dc6(0x165)),{'token':_0x4138b0,'method':_0x198811['ClEvG']};}export async function ensureRangerDir(_0xcbe9b0){const _0x306028=_0x495eaa;void _0xcbe9b0;const _0xe89651=getRangerHomeDir();return!existsSync(_0xe89651)?(await mkdir(_0xe89651,{'recursive':!![]}),console[_0x306028(0x168)]('✓\x20Created\x20~/.ranger/\x20directory'),{'path':_0xe89651,'installed':!![]}):(console['log'](_0x306028(0x173)),{'path':_0xe89651,'installed':![]});}export async function ensureChromium(_0x10adce=![]){const _0x1cbd04=_0x495eaa,_0x3a2dcd={'EpoUC':function(_0xae7251,_0x24faf4){return _0xae7251(_0x24faf4);},'tokyU':function(_0x65d82f,_0x5d71c0){return _0x65d82f instanceof _0x5d71c0;},'qKHmW':_0x1cbd04(0x17d)};let _0x176167=![];try{const _0x4b3b35=chromium['executablePath']();_0x176167=_0x3a2dcd['EpoUC'](existsSync,_0x4b3b35);}catch{_0x176167=![];}if(_0x176167)return console[_0x1cbd04(0x168)](_0x1cbd04(0x164)),![];const _0x133ad=getPlaywrightVersion(),_0x13137c=_0x133ad??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x53f617=!_0x133ad,_0x3b8d3d=process['stdin']['isTTY']&&process[_0x1cbd04(0x16d)][_0x1cbd04(0x124)];let _0x21f872=!![];if(_0x3b8d3d){const {install:_0x11d642}=await _0x58c750[_0x1cbd04(0x13e)]([{'type':'confirm','name':_0x1cbd04(0x12e),'message':_0x53f617?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x13137c+_0x1cbd04(0x13c):'The\x20required\x20version\x20('+_0x13137c+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x21f872=_0x11d642;}else console['log'](_0x1cbd04(0x160)+_0x13137c+(_0x53f617?_0x1cbd04(0x163):'')+_0x1cbd04(0x177));if(_0x21f872){console['log'](_0x1cbd04(0x128));try{await installChromiumBinary(_0x13137c,_0x10adce),console[_0x1cbd04(0x168)]('\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully');}catch(_0xda6b4b){console[_0x1cbd04(0x15a)](_0x1cbd04(0x185),_0x3a2dcd['tokyU'](_0xda6b4b,Error)?_0xda6b4b['message']:_0xda6b4b),console[_0x1cbd04(0x168)]('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),console[_0x1cbd04(0x168)](_0x1cbd04(0x188)+_0x13137c+'\x20install\x20chromium');}}else console['log']('\x0a⚠\x20Skipping\x20Chromium\x20installation.'),console[_0x1cbd04(0x168)](_0x3a2dcd[_0x1cbd04(0x14f)]),console['log'](_0x1cbd04(0x188)+_0x13137c+_0x1cbd04(0x140));return!![];}export async function writeRangerGitignore(_0x53a727){const _0x15e6d5=_0x495eaa,_0x3fc7bd={'MAphD':'.gitignore','TLwZv':function(_0x5cf94e,_0x2476a4,_0x2d0927){return _0x5cf94e(_0x2476a4,_0x2d0927);}},_0x5b56e8=join(_0x53a727,_0x3fc7bd['MAphD']),_0x100e88='\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 _0x3fc7bd['TLwZv'](writeFile,_0x5b56e8,_0x100e88),console['log'](_0x15e6d5(0x12f));}export async function ensureLocalEnv(_0xb38072,_0x46c52b){const _0x356dc9=_0x495eaa,_0x2771e9={'lTxBQ':function(_0x440352,_0xd6e43a){return _0x440352!==_0xd6e43a;},'ItBrZ':_0x356dc9(0x136),'iSgiz':function(_0x45ff8d,_0xc39e29){return _0x45ff8d===_0xc39e29;},'pBctr':_0x356dc9(0x137),'PkysS':function(_0x2b2a9e,_0x22afe6,_0x31dba6,_0x45fece){return _0x2b2a9e(_0x22afe6,_0x31dba6,_0x45fece);},'wGDAe':function(_0x349fce,_0x5487ac){return _0x349fce instanceof _0x5487ac;}};if(!findGitRoot()&&_0x2771e9[_0x356dc9(0x130)](_0xb38072?.['scope'],'user'))return console[_0x356dc9(0x168)](_0x2771e9[_0x356dc9(0x141)]),{'ready':![],'skipped':!![]};const _0x1442b8=_0x2771e9['iSgiz'](_0xb38072?.[_0x356dc9(0x16c)],'user')?getRangerHomeDir():undefined;if(findExistingEnv(_0x2771e9[_0x356dc9(0x14b)],{'locations':['local'],'rangerDir':_0x1442b8}))return console['log']('✓\x20Local\x20profile\x20already\x20exists'),{'ready':!![],'skipped':![]};try{return await _0x2771e9[_0x356dc9(0x179)](addEnv,_0x356dc9(0x137),{'url':_0xb38072?.[_0x356dc9(0x12d)],'force':_0xb38072?.['force'],'allowInsecureLocalhost':_0xb38072?.['allowInsecureLocalhost'],'scope':_0xb38072?.[_0x356dc9(0x16c)]},_0x46c52b),{'ready':!![],'skipped':![]};}catch(_0x5aca1a){return console['error'](_0x356dc9(0x143),_0x2771e9[_0x356dc9(0x12b)](_0x5aca1a,Error)?_0x5aca1a['message']:_0x5aca1a),{'ready':![],'skipped':![]};}}function _0x4e58(_0x1d2573,_0xdb4642){_0x1d2573=_0x1d2573-0x117;const _0x49f79f=_0x49f7();let _0x4e5834=_0x49f79f[_0x1d2573];return _0x4e5834;}export async function start(_0x355b5f,_0x529c46,_0x2aec48){const _0x5df5eb=_0x495eaa,_0x366b53={'ukqbJ':function(_0x1cf83d,_0x3bbadb){return _0x1cf83d!==_0x3bbadb;},'koxfu':function(_0x3c46ac,_0x30d469){return _0x3c46ac!==_0x30d469;},'MvWmb':function(_0x46566d,_0x56a964){return _0x46566d+_0x56a964;},'cObjD':function(_0x538b2a,_0x52be04){return _0x538b2a(_0x52be04);},'bcuOD':'user','DiHsB':function(_0x3ef72c){return _0x3ef72c();},'iyyjX':'✓\x20Skipping\x20authentication\x20(--skip-auth)','TSrxV':'skipped','YKgvW':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','tdIrX':function(_0x197824,_0xa48d59){return _0x197824(_0xa48d59);},'egGQi':_0x5df5eb(0x119),'rdOAc':function(_0x372fe0,_0x4c789f,_0x3e274e){return _0x372fe0(_0x4c789f,_0x3e274e);},'aBwSM':_0x5df5eb(0x161),'kdFiC':_0x5df5eb(0x121),'tXlFl':function(_0x3a261b,_0xfb45ad){return _0x3a261b(_0xfb45ad);},'uymSh':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','rkDdc':'profile','BdRCU':function(_0x3ceb84,_0x4839f3){return _0x3ceb84+_0x4839f3;},'PMflN':'\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','spjPB':_0x5df5eb(0x125),'zRnxa':_0x5df5eb(0x157)};console[_0x5df5eb(0x168)](_0x5df5eb(0x162));_0x366b53[_0x5df5eb(0x146)](_0x529c46?.['scope'],undefined)&&_0x366b53['koxfu'](_0x529c46['scope'],'user')&&(console['error'](_0x366b53['MvWmb']('ranger\x20setup\x20--scope='+_0x366b53['cObjD'](String,_0x529c46['scope'])+_0x5df5eb(0x13b)+'Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20',_0x5df5eb(0x132))),process[_0x5df5eb(0x182)](0x1));_0x529c46={..._0x529c46,'scope':_0x366b53[_0x5df5eb(0x17a)]};const _0x5d7d44=!existsSync(_0x366b53['DiHsB'](getRangerHomeDir));await ensureRangerDir(_0x5df5eb(0x17c));if(_0x529c46?.[_0x5df5eb(0x11d)])console['log'](_0x366b53[_0x5df5eb(0x175)]),_0x2aec48?.[_0x5df5eb(0x180)](_0x5df5eb(0x17f),{'isFirstRun':_0x5d7d44,'method':_0x366b53['TSrxV']});else{_0x2aec48?.['trackPhaseStart']('auth');const _0x1b59ef=await authenticate(_0x355b5f);_0x2aec48?.['trackPhaseEnd'](_0x5df5eb(0x17f),{'isFirstRun':_0x5d7d44,'method':_0x1b59ef['method']});}_0x2aec48?.[_0x5df5eb(0x134)](_0x5df5eb(0x187));_0x529c46?.[_0x5df5eb(0x178)]?console['log'](_0x366b53[_0x5df5eb(0x16f)]):await ensureChromium(_0x529c46?.[_0x5df5eb(0x17b)]);_0x2aec48?.[_0x5df5eb(0x180)](_0x5df5eb(0x187),{'isFirstRun':_0x5d7d44,'skipped':!!_0x529c46?.['skipChromium']}),console['log']('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x113203=_0x529c46?.['scope'],_0x825adb=_0x529c46?.[_0x5df5eb(0x14e)]??![];let _0x46da60=null;_0x825adb?(_0x2aec48?.['trackPhaseStart']('plugin'),_0x46da60=await _0x366b53[_0x5df5eb(0x11b)](ensureOpencodePluginConfig,_0x113203),_0x2aec48?.['trackPhaseEnd'](_0x366b53[_0x5df5eb(0x171)],{'isFirstRun':_0x5d7d44,'opencode':!![]})):(_0x2aec48?.['trackPhaseStart'](_0x366b53[_0x5df5eb(0x171)]),await _0x366b53[_0x5df5eb(0x11b)](ensureClaudePlugin,_0x113203),_0x2aec48?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x5d7d44}));if(_0x825adb&&_0x46da60){_0x2aec48?.['trackPhaseStart']('skills');try{await _0x366b53['rdOAc'](installSkill,_0x366b53[_0x5df5eb(0x152)],{'level':_0x46da60['scope'],'cliVersion':getCurrentVersion(),'platform':'opencode'}),_0x2aec48?.['trackPhaseEnd'](_0x366b53[_0x5df5eb(0x17e)],{'isFirstRun':_0x5d7d44,'opencode':!![]});}catch(_0x43637c){console['warn'](_0x5df5eb(0x183),_0x43637c instanceof Error?_0x43637c[_0x5df5eb(0x169)]:_0x43637c),_0x2aec48?.['trackPhaseEnd'](_0x366b53['kdFiC'],{'isFirstRun':_0x5d7d44,'opencode':!![],'failed':!![]});}}else _0x2aec48?.[_0x5df5eb(0x134)](_0x366b53['kdFiC']),await _0x366b53[_0x5df5eb(0x148)](ensureClaudeSkills,_0x113203),_0x2aec48?.['trackPhaseEnd'](_0x5df5eb(0x121),{'isFirstRun':_0x5d7d44});if(_0x529c46?.[_0x5df5eb(0x11d)])console['log'](_0x366b53['uymSh']);else{if(_0x529c46?.[_0x5df5eb(0x12d)]){_0x2aec48?.[_0x5df5eb(0x134)](_0x5df5eb(0x151));const _0x486369=await ensureLocalEnv({'url':_0x529c46['url'],'force':_0x529c46?.[_0x5df5eb(0x159)],'allowInsecureLocalhost':_0x529c46?.['allowInsecureLocalhost'],'scope':_0x366b53[_0x5df5eb(0x17a)]},_0x2aec48);_0x2aec48?.[_0x5df5eb(0x180)](_0x366b53[_0x5df5eb(0x138)],{'isFirstRun':_0x5d7d44,'profileReady':_0x486369[_0x5df5eb(0x122)],'userSkipped':_0x486369['skipped']});}else console[_0x5df5eb(0x168)](_0x366b53['MvWmb'](_0x366b53['BdRCU'](_0x366b53[_0x5df5eb(0x11c)]('\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:'+(_0x5df5eb(0x186)+_0x366b53[_0x5df5eb(0x15f)](bold,_0x5df5eb(0x170))),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)'),'\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:'),_0x5df5eb(0x13a)));}if(_0x825adb)console['log'](_0x366b53['PMflN']),console[_0x5df5eb(0x168)](_0x366b53[_0x5df5eb(0x118)]),console['log']('with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),console[_0x5df5eb(0x168)](_0x366b53['zRnxa']);else{const _0x1ff80b=bold(_0x5df5eb(0x189));console['log'](_0x366b53[_0x5df5eb(0x153)]('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x1ff80b+_0x5df5eb(0x16e)+_0x5df5eb(0x133),_0x5df5eb(0x15c))+_0x5df5eb(0x139));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x22c896=_0x5ae1;(function(_0x1991cc,_0x3b201d){const _0x1c30c9=_0x5ae1,_0x236654=_0x1991cc();while(!![]){try{const _0x2d062c=parseInt(_0x1c30c9(0x1d1))/0x1*(parseInt(_0x1c30c9(0x1fc))/0x2)+-parseInt(_0x1c30c9(0x1d3))/0x3+parseInt(_0x1c30c9(0x1ed))/0x4+-parseInt(_0x1c30c9(0x1ea))/0x5*(parseInt(_0x1c30c9(0x1c9))/0x6)+-parseInt(_0x1c30c9(0x1da))/0x7+parseInt(_0x1c30c9(0x1f8))/0x8*(parseInt(_0x1c30c9(0x1df))/0x9)+parseInt(_0x1c30c9(0x213))/0xa*(parseInt(_0x1c30c9(0x20f))/0xb);if(_0x2d062c===_0x3b201d)break;else _0x236654['push'](_0x236654['shift']());}catch(_0x1e0b8f){_0x236654['push'](_0x236654['shift']());}}}(_0x55a9,0x9699e));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{listCloudProfiles}from'./utils/cloudProfile.js';import{getPluginInfo}from'./utils/claudePlugin.js';function _0x55a9(){const _0x148261=['\x0a---\x20Claude\x20Code\x20Plugin\x20---','\x20\x20\x20\x20Auth:\x20','1989204omjmkG','Root:\x20','KpLmb','env','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','\x0a---\x20Profiles\x20---','not_installed','\x1b[0m','opencode','isActive','dQITu','568wYnmVs','settingsPath','TpaGM','all','676HkLEDG','\x20\x20Project-level:','ranger@trailhead','utf-8','zEBqA','BddMO','HHdzm','auth.json','aiCBD','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','configured','isArray','IYKYc','jKNJp','TFMEz','sessionUpdatedAt','stdout','user',':\x20installed\x20(','814qwTNqv','plaintext','\x20\x20Run:\x20ranger\x20update','API\x20Environment:\x20','193580ffyaFx','\x20\x20Not\x20configured','@ranger-testing/opencode-plugin','\x1b[1m','iGWcT','log','uQhEM','zBvmT','\x20\x20Run:\x20ranger\x20skillup','map','success','not_configured','stderr','VKAew','cwd','\x20\x20Run:\x20ranger\x20setup\x20[token]','includes','\x0a---\x20OpenCode\x20Plugin\x20---','path','filter','plugin',':\x20configured','XMZrI','details','string','\x20(active)','\x0a---\x20Skills\x20---','53166koMWMY','has','\x1b]8;;\x07','\x20\x20\x20\x20Session:\x20','displayName','length','PNAeT','ppTez','1106EvYcUE','DEBUG','2677209upVBMt','DSoYt','\x20local','\x20\x20\x20\x20','\x20(up\x20to\x20date)','\x20\x20Run:\x20ranger\x20setup\x20--opencode','FmtHG','5647845guiSaW','enabled','\x20\x20\x20\x20Settings:\x20','API\x20Token:\x20✗\x20Not\x20found','\x20[local]','17307ufwKNU','name','bjAGv','ATzuv','Version:\x20','No\x20skills\x20installed','oUusb','RUaic','(not\x20found)','status','opencode-plugin','70lARCkd'];_0x55a9=function(){return _0x148261;};return _0x55a9();}import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x4b1001=>_0x22c896(0x216)+_0x4b1001+_0x22c896(0x1f4),link=(_0x4b90cb,_0xac0c2a)=>'\x1b]8;;file://'+_0x4b90cb+'\x07'+(_0xac0c2a||_0x4b90cb)+_0x22c896(0x1cb);async function getOpencodePluginStatus(){const _0x495190=_0x22c896,_0x1893b4={'BddMO':function(_0x229c47,_0x264bfd){return _0x229c47(_0x264bfd);},'dQITu':'configured','zBvmT':function(_0x27e28e,_0x3b837f){return _0x27e28e>_0x3b837f;},'XMZrI':_0x495190(0x22b),'cUeZo':_0x495190(0x215),'UJpek':'debug','LBEff':'config','TpaGM':'ignore','aiCBD':'pipe','QwPSf':'data','jKNJp':'close'};return new Promise(_0x1f61c5=>{const _0x56d5ff=_0x495190,_0x483cda={'bjAGv':_0x1893b4[_0x56d5ff(0x229)],'dOcPZ':_0x1893b4['cUeZo']},_0x1d55c2=spawn(_0x56d5ff(0x1f5),[_0x1893b4['UJpek'],_0x1893b4['LBEff']],{'stdio':[_0x1893b4[_0x56d5ff(0x1fa)],_0x1893b4[_0x56d5ff(0x204)],_0x1893b4['aiCBD']]});let _0x47e359='';_0x1d55c2[_0x56d5ff(0x20c)]?.['on'](_0x1893b4['QwPSf'],_0x558bb5=>{_0x47e359+=_0x558bb5['toString']();}),_0x1d55c2[_0x56d5ff(0x21f)]?.['on'](_0x1893b4['QwPSf'],_0x38a0d5=>{_0x47e359+=_0x38a0d5['toString']();}),_0x1d55c2['on']('error',()=>{const _0x470d34=_0x56d5ff;_0x1f61c5({'status':_0x470d34(0x1f3)});}),_0x1d55c2['on'](_0x1893b4[_0x56d5ff(0x209)],_0x5b6d19=>{const _0x45ecd4=_0x56d5ff;if(_0x5b6d19!==0x0){_0x1893b4[_0x45ecd4(0x201)](_0x1f61c5,{'status':_0x45ecd4(0x1f3)});return;}const _0x9af332=_0x47e359['trim']();let _0xc2663a=null;if(_0x9af332)try{_0xc2663a=JSON['parse'](_0x9af332);}catch{const _0x3b05cc=_0x9af332['match'](/\{[\s\S]*\}$/);if(_0x3b05cc)try{_0xc2663a=JSON['parse'](_0x3b05cc[0x0]);}catch{_0xc2663a=null;}}const _0x72ebcc=Array[_0x45ecd4(0x207)](_0xc2663a?.['plugin'])?_0xc2663a?.[_0x45ecd4(0x227)]:[],_0x32ac4c=_0x72ebcc['some'](_0x922f78=>{const _0x5c7bd2=_0x45ecd4;if(typeof _0x922f78!==_0x483cda[_0x5c7bd2(0x1e1)])return![];return _0x922f78[_0x5c7bd2(0x223)](_0x483cda['dOcPZ'])||_0x922f78['includes'](_0x5c7bd2(0x1e9));});if(_0x32ac4c){_0x1f61c5({'status':_0x1893b4[_0x45ecd4(0x1f7)],'details':_0x72ebcc[_0x45ecd4(0x1ce)]>0x0?_0x72ebcc[_0x45ecd4(0x1ce)]+'\x20plugin(s)\x20configured':undefined});return;}if(_0x1893b4[_0x45ecd4(0x21a)](_0x72ebcc[_0x45ecd4(0x1ce)],0x0)){_0x1f61c5({'status':_0x45ecd4(0x21e),'details':_0x72ebcc[_0x45ecd4(0x1ce)]+'\x20plugin(s)\x20configured'});return;}_0x1f61c5({'status':'not_configured'});});});}async function getSkillsFromDir(_0x55dc7e,_0x359032){const _0x97c20f=_0x22c896,_0x2e8343={'uQhEM':function(_0x1e93b8,_0xafb512){return _0x1e93b8(_0xafb512);},'FmtHG':function(_0x3ee7ab,_0x3b4e47,_0xc7154e,_0x305315){return _0x3ee7ab(_0x3b4e47,_0xc7154e,_0x305315);},'ATzuv':'SKILL.md','rlSyg':function(_0x4aeea2,_0x4c0cb8,_0x271a0c){return _0x4aeea2(_0x4c0cb8,_0x271a0c);}};if(!_0x2e8343[_0x97c20f(0x219)](existsSync,_0x55dc7e))return[];const _0x143130=[];try{const _0xa00f6e=await readdir(_0x55dc7e,{'withFileTypes':!![]});for(const _0x43211a of _0xa00f6e){if(_0x43211a['isDirectory']()){const _0x4d0657=_0x2e8343[_0x97c20f(0x1d9)](join,_0x55dc7e,_0x43211a['name'],_0x2e8343[_0x97c20f(0x1e2)]);if(_0x2e8343['uQhEM'](existsSync,_0x4d0657)){let _0x12f01a=_0x43211a[_0x97c20f(0x1e0)];try{const _0x3d95bb=await _0x2e8343['rlSyg'](readFile,_0x4d0657,_0x97c20f(0x1ff)),_0x89adbc=_0x3d95bb['match'](/name:\s*(.+)/);_0x89adbc&&(_0x12f01a=_0x89adbc[0x1]['trim']());}catch{}_0x143130['push']({'name':_0x43211a[_0x97c20f(0x1e0)],'displayName':_0x12f01a,'path':_0x4d0657,'level':_0x359032});}}}}catch{return[];}return _0x143130;}async function getInstalledSkills(){const _0xbae091=_0x22c896,[_0x5d2353,_0x49ba3a]=await Promise[_0xbae091(0x1fb)]([getSkillsFromDir(getProjectSkillsDir(),'project'),getSkillsFromDir(getUserSkillsDir(),_0xbae091(0x20d))]);return{'project':_0x5d2353,'user':_0x49ba3a};}async function getEnvironments(){const _0x17ac22=_0x22c896,_0x303309={'BDzhn':function(_0x4728fb,_0x72fd63,_0x4d0bd6){return _0x4728fb(_0x72fd63,_0x4d0bd6);},'viiGj':_0x17ac22(0x203),'mJBJm':function(_0x1fd0f9,_0x507dde,_0xaf28c2){return _0x1fd0f9(_0x507dde,_0xaf28c2);},'zYtpv':'auth.json.enc','KpLmb':function(_0x879e86,_0x1deb52){return _0x879e86===_0x1deb52;},'KaNtD':function(_0x2ae701){return _0x2ae701();}},{envNames:_0x513d03,activeEnv:_0x110eea}=await _0x303309['KaNtD'](getEnvNames),_0x4f6c19=getRangerDir();if(!existsSync(_0x4f6c19))return{'envs':[],'activeEnv':null};const _0x2f02c2=_0x513d03[_0x17ac22(0x21c)](_0x286ea6=>{const _0x21f478=_0x17ac22,_0x2b57b9=getEnvDir(_0x286ea6),_0x5775d5=_0x303309['BDzhn'](join,_0x2b57b9,'settings.json'),_0x2944a9=_0x303309['BDzhn'](join,_0x2b57b9,_0x303309['viiGj']),_0x5058fa=_0x303309['mJBJm'](join,_0x2b57b9,_0x303309['zYtpv']);return{'name':_0x286ea6,'settingsPath':existsSync(_0x5775d5)?_0x5775d5:_0x21f478(0x1e7),'hasPlaintextAuth':existsSync(_0x2944a9),'hasEncryptedAuth':existsSync(_0x5058fa),'isActive':_0x303309[_0x21f478(0x1ef)](_0x286ea6,_0x110eea)};});return{'envs':_0x2f02c2,'activeEnv':_0x110eea};}function _0x5ae1(_0xabb67c,_0x534fc3){_0xabb67c=_0xabb67c-0x1c8;const _0x55a9e1=_0x55a9();let _0x5ae1d9=_0x55a9e1[_0xabb67c];return _0x5ae1d9;}export async function status(){const _0xd57bae=_0x22c896,_0xfbb3f9={'zEBqA':function(_0x6ffe15,_0x42ff89,_0x5c22f5){return _0x6ffe15(_0x42ff89,_0x5c22f5);},'ppTez':function(_0x59d203,_0x1fda2d){return _0x59d203(_0x1fda2d);},'DSoYt':function(_0x2fa9fc){return _0x2fa9fc();},'VKAew':function(_0x33c960){return _0x33c960();},'PNAeT':function(_0x56c6b0,_0x28df6a){return _0x56c6b0===_0x28df6a;},'TDrnU':'not_configured','ECHKE':function(_0x1608d6,_0x578977){return _0x1608d6(_0x578977);},'PNUrm':_0xd57bae(0x1db),'gERIN':function(_0x35ddae,_0x3b7e63){return _0x35ddae(_0x3b7e63);},'uGmWQ':function(_0x29350c,_0x368fd1){return _0x29350c+_0x368fd1;},'RUaic':_0xd57bae(0x1e4),'cHLlj':function(_0xc763c1,_0x6008ca){return _0xc763c1(_0x6008ca);},'FzAmQ':function(_0x32cbc7,_0x453307,_0x23ae32){return _0x32cbc7(_0x453307,_0x23ae32);},'HHdzm':function(_0x3fd41b,_0x2d4e90){return _0x3fd41b===_0x2d4e90;},'WzlTu':'No\x20profiles\x20configured','IYKYc':function(_0x54a16f,_0x4305df){return _0x54a16f>_0x4305df;},'oUusb':function(_0x3e06be,_0x38c4e5){return _0x3e06be(_0x38c4e5);},'TFMEz':'no\x20session','NLQsp':'none','grYmo':function(_0x168ae6,_0x37a914){return _0x168ae6(_0x37a914);},'hlpJa':function(_0x4f3e29,_0x243409){return _0x4f3e29!==_0x243409;},'iGWcT':_0xd57bae(0x1e7),'QCLnZ':function(_0x506777,_0x50e71e,_0x12fb0e){return _0x506777(_0x50e71e,_0x12fb0e);}};console[_0xd57bae(0x218)]('\x0a📊\x20Ranger\x20Status\x0a');const _0x4d3fed=process[_0xd57bae(0x221)](),_0x287bfd=getRangerDir();if(!existsSync(_0x287bfd)){console[_0xd57bae(0x218)](_0xd57bae(0x1ee)+_0xfbb3f9[_0xd57bae(0x200)](link,_0x4d3fed,_0xfbb3f9['ppTez'](bold,_0xfbb3f9[_0xd57bae(0x1d0)](basename,_0x4d3fed)))),console[_0xd57bae(0x218)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console['log'](_0xd57bae(0x205));return;}console[_0xd57bae(0x218)](_0xd57bae(0x1ee)+link(_0x4d3fed,bold(basename(_0x4d3fed))));const _0x56b43a=_0xfbb3f9['DSoYt'](getCurrentVersion),_0xe6b411=_0xfbb3f9[_0xd57bae(0x220)](getLatestVersion);if(_0xe6b411['version']&&_0xe6b411['version']!==_0x56b43a)console['log']('Version:\x20'+_0x56b43a+'\x20(latest:\x20'+_0xe6b411['version']+')'),console[_0xd57bae(0x218)](_0xd57bae(0x211));else _0xe6b411['version']?console[_0xd57bae(0x218)](_0xd57bae(0x1e3)+_0x56b43a+_0xd57bae(0x1d7)):console[_0xd57bae(0x218)](_0xd57bae(0x1e3)+_0x56b43a);const _0x144b83=await getToken();if(_0x144b83){const _0x5b6fa6=await _0xfbb3f9[_0xd57bae(0x1d0)](getCurrentUser,_0x144b83);_0x5b6fa6[_0xd57bae(0x21d)]?console['log']('Organization:\x20'+_0xfbb3f9[_0xd57bae(0x1d0)](bold,_0x5b6fa6['user']['organizationName'])):(console[_0xd57bae(0x218)]('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0xd57bae(0x218)](_0xd57bae(0x222)));}else console[_0xd57bae(0x218)](_0xd57bae(0x1dd)),console[_0xd57bae(0x218)]('\x20\x20Run:\x20ranger\x20setup\x20[token]');process[_0xd57bae(0x1f0)][_0xd57bae(0x1d2)]&&(console['log'](_0xd57bae(0x212)+getCurrentEnvironment()),console[_0xd57bae(0x218)]('API\x20URL:\x20'+getApiBaseUrl()));console['log'](_0xd57bae(0x224));const _0x144168=await getOpencodePluginStatus();if(_0x144168[_0xd57bae(0x1e8)]===_0xd57bae(0x206))console['log']('\x20\x20'+_0xfbb3f9[_0xd57bae(0x1d0)](bold,_0xd57bae(0x215))+_0xd57bae(0x228)),_0x144168['details']&&console[_0xd57bae(0x218)]('\x20\x20'+_0x144168[_0xd57bae(0x22a)]);else _0xfbb3f9[_0xd57bae(0x1cf)](_0x144168['status'],_0xfbb3f9['TDrnU'])?(console['log'](_0xd57bae(0x214)),_0x144168['details']&&console['log']('\x20\x20'+_0x144168[_0xd57bae(0x22a)]),console['log'](_0xd57bae(0x1d8))):console[_0xd57bae(0x218)](_0xd57bae(0x1f1));console['log'](_0xd57bae(0x1eb));const _0x476c89=await _0xfbb3f9['ECHKE'](getPluginInfo,_0xd57bae(0x1fe));if(_0x476c89){const _0x2afc6b=_0x476c89['scope']||'unknown',_0x1cde91=_0x476c89[_0xd57bae(0x1db)]?_0xfbb3f9['PNUrm']:'disabled';console[_0xd57bae(0x218)]('\x20\x20'+_0xfbb3f9['gERIN'](bold,'ranger@trailhead')+_0xd57bae(0x20e)+_0x2afc6b+',\x20'+_0x1cde91+')');}else console['log']('\x20\x20Not\x20installed'),console[_0xd57bae(0x218)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)');console[_0xd57bae(0x218)](_0xd57bae(0x1c8));const {project:_0x87eb58,user:_0x58e8b1}=await getInstalledSkills(),_0x1be2c0=_0x87eb58['filter'](_0x5accbf=>RANGER_MANAGED_SKILLS['includes'](_0x5accbf[_0xd57bae(0x1e0)])),_0x561ec3=_0x58e8b1[_0xd57bae(0x226)](_0x13fdd1=>RANGER_MANAGED_SKILLS['includes'](_0x13fdd1['name'])),_0x57853d=_0xfbb3f9['uGmWQ'](_0x1be2c0['length'],_0x561ec3[_0xd57bae(0x1ce)]);if(_0x57853d===0x0)console['log'](_0xfbb3f9[_0xd57bae(0x1e6)]),console['log'](_0xd57bae(0x21b));else{if(_0x1be2c0['length']>0x0){console['log'](_0xd57bae(0x1fd));for(const _0x2923e8 of _0x1be2c0){console[_0xd57bae(0x218)](_0xd57bae(0x1d6)+_0xfbb3f9['cHLlj'](bold,_0x2923e8[_0xd57bae(0x1cd)])+':\x20'+link(_0x2923e8['path'],basename(_0x2923e8[_0xd57bae(0x225)])));}}if(_0x561ec3[_0xd57bae(0x1ce)]>0x0){console[_0xd57bae(0x218)]('\x20\x20User-level:');for(const _0x23a100 of _0x561ec3){console[_0xd57bae(0x218)]('\x20\x20\x20\x20'+bold(_0x23a100['displayName'])+':\x20'+_0xfbb3f9['FzAmQ'](link,_0x23a100['path'],_0xfbb3f9['cHLlj'](basename,_0x23a100['path'])));}}}console['log'](_0xd57bae(0x1f2));const {envs:_0xd0fd82,activeEnv:_0x320ffe}=await _0xfbb3f9[_0xd57bae(0x1d4)](getEnvironments);let _0xac0b21=[];if(_0x144b83)try{_0xac0b21=await listCloudProfiles();}catch{}const _0x39cff2=_0xd0fd82['length']+_0xac0b21[_0xd57bae(0x1ce)];if(_0xfbb3f9[_0xd57bae(0x202)](_0x39cff2,0x0))console['log'](_0xfbb3f9['WzlTu']),console[_0xd57bae(0x218)]('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{if(_0xfbb3f9[_0xd57bae(0x208)](_0x39cff2,0x5)){const _0x461f7b=[];_0xac0b21[_0xd57bae(0x1ce)]>0x0&&_0x461f7b['push'](_0xac0b21['length']+'\x20cloud'),_0xd0fd82[_0xd57bae(0x1ce)]>0x0&&_0x461f7b['push'](_0xd0fd82[_0xd57bae(0x1ce)]+_0xd57bae(0x1d5)),console['log'](_0x39cff2+'\x20profiles\x20configured\x20('+_0x461f7b['join'](',\x20')+')'),_0x320ffe&&console['log']('\x20\x20Active:\x20'+_0xfbb3f9[_0xd57bae(0x1e5)](bold,_0x320ffe)),console[_0xd57bae(0x218)]('\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)');}else{for(const _0x21c80b of _0xac0b21){const _0x3a53f1=_0xfbb3f9[_0xd57bae(0x1cf)](_0x21c80b['name'],_0x320ffe)?'\x20(active)':'';console[_0xd57bae(0x218)]('\x20\x20'+bold(_0x21c80b[_0xd57bae(0x1e0)])+'\x20[cloud]'+_0x3a53f1);const _0x25fc7a=_0x21c80b[_0xd57bae(0x20b)]?'cached\x20(updated\x20'+_0x21c80b[_0xd57bae(0x20b)]+')':_0xfbb3f9[_0xd57bae(0x20a)];console[_0xd57bae(0x218)](_0xd57bae(0x1cc)+_0x25fc7a);}const _0x596d34=new Set(_0xac0b21['map'](_0x335053=>_0x335053['name']));for(const _0x3ae49d of _0xd0fd82){if(_0x596d34[_0xd57bae(0x1ca)](_0x3ae49d['name']))continue;const _0x42e6df=_0x3ae49d[_0xd57bae(0x1f6)]?_0xd57bae(0x22c):'',_0x3ab753=_0x3ae49d['hasEncryptedAuth']?'encrypted':_0x3ae49d['hasPlaintextAuth']?_0xd57bae(0x210):_0xfbb3f9['NLQsp'];console[_0xd57bae(0x218)]('\x20\x20'+_0xfbb3f9['grYmo'](bold,_0x3ae49d['name'])+_0xd57bae(0x1de)+_0x42e6df),console['log'](_0xd57bae(0x1ec)+_0x3ab753),_0xfbb3f9['hlpJa'](_0x3ae49d[_0xd57bae(0x1f9)],_0xfbb3f9[_0xd57bae(0x217)])&&console[_0xd57bae(0x218)](_0xd57bae(0x1dc)+_0xfbb3f9['QCLnZ'](link,_0x3ae49d['settingsPath'],basename(_0x3ae49d['settingsPath'])));}if(!_0x320ffe){console['log']('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x2a0200=[..._0xac0b21[_0xd57bae(0x21c)](_0x4ebc4a=>_0x4ebc4a['name']),..._0xd0fd82[_0xd57bae(0x226)](_0x574140=>!_0x596d34[_0xd57bae(0x1ca)](_0x574140[_0xd57bae(0x1e0)]))['map'](_0x5d91f8=>_0x5d91f8['name'])];console[_0xd57bae(0x218)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x2a0200['join'](',\x20')+')');}}}console[_0xd57bae(0x218)]('');}
|
|
1
|
+
const _0x57321c=_0x319f;(function(_0xeda212,_0x468527){const _0x2b54ac=_0x319f,_0x4a9b5c=_0xeda212();while(!![]){try{const _0x5bcfca=parseInt(_0x2b54ac(0x1a9))/0x1+-parseInt(_0x2b54ac(0x17a))/0x2*(parseInt(_0x2b54ac(0x15a))/0x3)+parseInt(_0x2b54ac(0x1a4))/0x4+-parseInt(_0x2b54ac(0x182))/0x5*(parseInt(_0x2b54ac(0x1a5))/0x6)+-parseInt(_0x2b54ac(0x1b6))/0x7*(parseInt(_0x2b54ac(0x19d))/0x8)+-parseInt(_0x2b54ac(0x14e))/0x9+parseInt(_0x2b54ac(0x167))/0xa;if(_0x5bcfca===_0x468527)break;else _0x4a9b5c['push'](_0x4a9b5c['shift']());}catch(_0x3bb038){_0x4a9b5c['push'](_0x4a9b5c['shift']());}}}(_0x2016,0x54bfb));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{listCloudProfiles}from'./utils/cloudProfile.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x4c93fc=>_0x57321c(0x160)+_0x4c93fc+_0x57321c(0x1b0),link=(_0x51c408,_0x275487)=>'\x1b]8;;file://'+_0x51c408+'\x07'+(_0x275487||_0x51c408)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x247710=_0x57321c,_0x40d3fe={'DbOrv':'not_installed','UEYOc':_0x247710(0x18c),'dUYhV':'config','CyNVC':'ignore','TCWTk':_0x247710(0x173),'VVMws':_0x247710(0x1ba)};return new Promise(_0x474d63=>{const _0x79eedd=_0x247710,_0x245357={'ApfVB':_0x40d3fe['UEYOc'],'Iqycw':'opencode-plugin','JsQcx':function(_0x91d496,_0x9d0f09){return _0x91d496!==_0x9d0f09;},'YqaPd':function(_0x2e4ff9,_0x5205c7){return _0x2e4ff9(_0x5205c7);},'NeZqP':_0x40d3fe[_0x79eedd(0x161)],'QFSbr':function(_0x44d673,_0x9e6429){return _0x44d673(_0x9e6429);},'zSbOn':_0x79eedd(0x15e),'vQltA':'not_configured'},_0x1a49ec=spawn('opencode',[_0x79eedd(0x187),_0x40d3fe[_0x79eedd(0x14b)]],{'stdio':[_0x40d3fe[_0x79eedd(0x172)],_0x79eedd(0x14f),_0x79eedd(0x14f)]});let _0x1154c7='';_0x1a49ec[_0x79eedd(0x16a)]?.['on'](_0x40d3fe[_0x79eedd(0x152)],_0x5c7771=>{const _0xfed7d7=_0x79eedd;_0x1154c7+=_0x5c7771[_0xfed7d7(0x175)]();}),_0x1a49ec[_0x79eedd(0x193)]?.['on'](_0x79eedd(0x173),_0x38e3ef=>{_0x1154c7+=_0x38e3ef['toString']();}),_0x1a49ec['on']('error',()=>{_0x474d63({'status':_0x40d3fe['DbOrv']});}),_0x1a49ec['on'](_0x40d3fe[_0x79eedd(0x1ac)],_0x13c0d7=>{const _0x4ef0ec=_0x79eedd,_0xce9f3e={'hCyIc':_0x245357['ApfVB'],'Iganr':'@ranger-testing/opencode-plugin','ciXTv':_0x245357[_0x4ef0ec(0x192)]};if(_0x245357[_0x4ef0ec(0x19b)](_0x13c0d7,0x0)){_0x245357[_0x4ef0ec(0x151)](_0x474d63,{'status':_0x245357['NeZqP']});return;}const _0x104a33=_0x1154c7['trim']();let _0x55220c=null;if(_0x104a33)try{_0x55220c=JSON[_0x4ef0ec(0x196)](_0x104a33);}catch{const _0x4eabfb=_0x104a33['match'](/\{[\s\S]*\}$/);if(_0x4eabfb)try{_0x55220c=JSON['parse'](_0x4eabfb[0x0]);}catch{_0x55220c=null;}}const _0x5b8358=Array[_0x4ef0ec(0x166)](_0x55220c?.[_0x4ef0ec(0x188)])?_0x55220c?.[_0x4ef0ec(0x188)]:[],_0x42288f=_0x5b8358[_0x4ef0ec(0x17b)](_0x540203=>{const _0x532516=_0x4ef0ec;if(typeof _0x540203!==_0xce9f3e['hCyIc'])return![];return _0x540203[_0x532516(0x1b1)](_0xce9f3e['Iganr'])||_0x540203[_0x532516(0x1b1)](_0xce9f3e['ciXTv']);});if(_0x42288f){_0x245357['QFSbr'](_0x474d63,{'status':_0x245357[_0x4ef0ec(0x149)],'details':_0x5b8358['length']>0x0?_0x5b8358[_0x4ef0ec(0x14c)]+_0x4ef0ec(0x156):undefined});return;}if(_0x5b8358[_0x4ef0ec(0x14c)]>0x0){_0x245357[_0x4ef0ec(0x151)](_0x474d63,{'status':'not_configured','details':_0x5b8358['length']+'\x20plugin(s)\x20configured'});return;}_0x245357['YqaPd'](_0x474d63,{'status':_0x245357['vQltA']});});});}async function getSkillsFromDir(_0x589289,_0x3cb39c){const _0x26612d=_0x57321c,_0x5d77d9={'riIEP':function(_0x28b6ee,_0x287864){return _0x28b6ee(_0x287864);},'mIDlu':'SKILL.md','qrksZ':function(_0x2affab,_0x2c3889,_0x35e065){return _0x2affab(_0x2c3889,_0x35e065);},'dhCfb':_0x26612d(0x1b8)};if(!_0x5d77d9['riIEP'](existsSync,_0x589289))return[];const _0x191d45=[];try{const _0x337d48=await readdir(_0x589289,{'withFileTypes':!![]});for(const _0x3f43b5 of _0x337d48){if(_0x3f43b5[_0x26612d(0x1b9)]()){const _0x5c8ccc=join(_0x589289,_0x3f43b5[_0x26612d(0x19a)],_0x5d77d9[_0x26612d(0x169)]);if(existsSync(_0x5c8ccc)){let _0x51964d=_0x3f43b5[_0x26612d(0x19a)];try{const _0x57fa70=await _0x5d77d9['qrksZ'](readFile,_0x5c8ccc,_0x5d77d9['dhCfb']),_0x50fb13=_0x57fa70['match'](/name:\s*(.+)/);_0x50fb13&&(_0x51964d=_0x50fb13[0x1]['trim']());}catch{}_0x191d45[_0x26612d(0x158)]({'name':_0x3f43b5[_0x26612d(0x19a)],'displayName':_0x51964d,'path':_0x5c8ccc,'level':_0x3cb39c});}}}}catch{return[];}return _0x191d45;}function _0x2016(){const _0x4161ff=['\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','\x1b[0m','includes','sxRGC','\x20\x20Active:\x20','has','join','2174445BTnyOx','@ranger-testing/opencode-plugin','utf-8','isDirectory','close','zSbOn','settingsPath','dUYhV','length','vwCcL','152676vcIuuX','pipe','\x0a📊\x20Ranger\x20Status\x0a','YqaPd','TCWTk','scope','EoVoE','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','\x20plugin(s)\x20configured','\x20\x20Run:\x20ranger\x20skillup','push','tzZVy','15tmyYDG','WYgnz','auth.json.enc','FdOib','configured','QLAnF','\x1b[1m','DbOrv','\x20\x20Project-level:','unknown','none','log','isArray','3703070htkctJ','\x0a---\x20Claude\x20Code\x20Plugin\x20---','mIDlu','stdout','success','No\x20skills\x20installed','env','Organization:\x20','settings.json','displayName','disabled','CyNVC','data','IuCjl','toString','twfeA','\x20\x20Run:\x20ranger\x20setup\x20[token]','enabled','LJIBa','166438XbpbrK','some','ynCph','plaintext','details','\x20\x20\x20\x20Session:\x20','project','fdaDS','11345VAKErB','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','glFOx','lrMZV','RDAlh','debug','plugin','hasPlaintextAuth','cached\x20(updated\x20','rMqJs','string','rEvgj','rXbTt','Version:\x20','map','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','Iqycw','stderr','\x20\x20\x20\x20','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','parse','\x20(active)','\x20\x20Run:\x20ranger\x20update','\x20[cloud]','name','JsQcx','\x0a---\x20Profiles\x20---','8SuXEPk',':\x20installed\x20(','path','version','(not\x20found)','VfNsm','DEBUG','1835388NmcTdI','498EzFraT',':\x20configured','no\x20session','QsOnU','449998nEqDiZ','MUkOT','sessionUpdatedAt','VVMws','\x20\x20Not\x20configured','jpduX'];_0x2016=function(){return _0x4161ff;};return _0x2016();}function _0x319f(_0x1ffeb2,_0x6f4d50){_0x1ffeb2=_0x1ffeb2-0x149;const _0x20162f=_0x2016();let _0x319fd7=_0x20162f[_0x1ffeb2];return _0x319fd7;}async function getInstalledSkills(){const _0x356b08=_0x57321c,_0x530495={'rXbTt':function(_0x23e9db,_0x1a081f,_0x276f1c){return _0x23e9db(_0x1a081f,_0x276f1c);},'cUKMr':function(_0x386ebc){return _0x386ebc();},'RDAlh':_0x356b08(0x180)},[_0x42cd4c,_0x152064]=await Promise['all']([_0x530495[_0x356b08(0x18e)](getSkillsFromDir,_0x530495['cUKMr'](getProjectSkillsDir),_0x530495[_0x356b08(0x186)]),_0x530495[_0x356b08(0x18e)](getSkillsFromDir,getUserSkillsDir(),'user')]);return{'project':_0x42cd4c,'user':_0x152064};}async function getEnvironments(){const _0x1e1ee7=_0x57321c,_0x5c9145={'YjJvg':function(_0x5e0fb0,_0x30700c){return _0x5e0fb0(_0x30700c);},'XsRZM':function(_0x502f83,_0x114cc8,_0x14a798){return _0x502f83(_0x114cc8,_0x14a798);},'SHXdU':_0x1e1ee7(0x16f),'twfeA':'auth.json','rMqJs':function(_0x373bea,_0x222f5d){return _0x373bea(_0x222f5d);},'sxRGC':_0x1e1ee7(0x1a1),'RAUyx':function(_0x543050){return _0x543050();},'YDVvx':function(_0x26ccbd){return _0x26ccbd();}},{envNames:_0x3fae65,activeEnv:_0x45e024}=await _0x5c9145['RAUyx'](getEnvNames),_0x472b8b=_0x5c9145['YDVvx'](getRangerDir);if(!existsSync(_0x472b8b))return{'envs':[],'activeEnv':null};const _0x26436c=_0x3fae65[_0x1e1ee7(0x190)](_0x1fc3ec=>{const _0x1f1fd4=_0x1e1ee7,_0x3e15d8=_0x5c9145['YjJvg'](getEnvDir,_0x1fc3ec),_0x609caf=_0x5c9145['XsRZM'](join,_0x3e15d8,_0x5c9145['SHXdU']),_0x481e4e=join(_0x3e15d8,_0x5c9145[_0x1f1fd4(0x176)]),_0x313895=join(_0x3e15d8,_0x1f1fd4(0x15c));return{'name':_0x1fc3ec,'settingsPath':_0x5c9145['rMqJs'](existsSync,_0x609caf)?_0x609caf:_0x5c9145[_0x1f1fd4(0x1b2)],'hasPlaintextAuth':existsSync(_0x481e4e),'hasEncryptedAuth':_0x5c9145[_0x1f1fd4(0x18b)](existsSync,_0x313895),'isActive':_0x1fc3ec===_0x45e024};});return{'envs':_0x26436c,'activeEnv':_0x45e024};}export async function status(){const _0x55fda6=_0x57321c,_0x591b54={'tzZVy':_0x55fda6(0x150),'QLAnF':function(_0x55f0ce,_0x4e08f1){return _0x55f0ce(_0x4e08f1);},'aYkfz':function(_0x174fac,_0x4e1a10,_0x1bbd5a){return _0x174fac(_0x4e1a10,_0x1bbd5a);},'IuCjl':function(_0x752c5b,_0x550de5){return _0x752c5b(_0x550de5);},'rEvgj':function(_0x3019c4){return _0x3019c4();},'YnmPY':function(_0x3dea20){return _0x3dea20();},'vwCcL':function(_0x2c7816,_0x42a11d){return _0x2c7816(_0x42a11d);},'AXtop':_0x55fda6(0x15e),'lrMZV':function(_0x8aa4aa,_0x2e322d){return _0x8aa4aa===_0x2e322d;},'MUkOT':'not_configured','KdEzL':_0x55fda6(0x1ad),'VfNsm':function(_0x13daad,_0x3d8ebe){return _0x13daad(_0x3d8ebe);},'UcEvu':_0x55fda6(0x163),'glFOx':_0x55fda6(0x178),'kTkQL':_0x55fda6(0x171),'cPqBS':function(_0x3cc8e8,_0x3c7cf8){return _0x3cc8e8(_0x3c7cf8);},'Abrwp':'ranger@trailhead','WYgnz':'\x0a---\x20Skills\x20---','fdaDS':function(_0x336cbb){return _0x336cbb();},'QsOnU':function(_0x10c704,_0x23dd34){return _0x10c704+_0x23dd34;},'UCnbF':'\x20\x20User-level:','EoVoE':function(_0x4bfabd,_0x4c6305){return _0x4bfabd(_0x4c6305);},'TRaBI':_0x55fda6(0x19c),'FAlnt':function(_0x1727ad,_0x40206d){return _0x1727ad>_0x40206d;},'jpduX':function(_0x1eebee,_0x44da6a){return _0x1eebee>_0x44da6a;},'EBvJx':function(_0x150214,_0x47c57a){return _0x150214===_0x47c57a;},'FdOib':_0x55fda6(0x197),'ynCph':function(_0x1a4cb8,_0x1807d0){return _0x1a4cb8(_0x1807d0);},'LJIBa':_0x55fda6(0x1a7),'KdCyy':'encrypted','QJDXL':function(_0x2101fe,_0x21e074){return _0x2101fe!==_0x21e074;},'AIAeu':function(_0xe7c1f1,_0x14da02,_0x537d69){return _0xe7c1f1(_0x14da02,_0x537d69);}};console['log'](_0x591b54[_0x55fda6(0x159)]);const _0x2e9407=process['cwd'](),_0x10c73a=getRangerDir();if(!_0x591b54[_0x55fda6(0x15f)](existsSync,_0x10c73a)){console[_0x55fda6(0x165)]('Root:\x20'+_0x591b54['aYkfz'](link,_0x2e9407,_0x591b54['QLAnF'](bold,_0x591b54[_0x55fda6(0x174)](basename,_0x2e9407)))),console[_0x55fda6(0x165)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x55fda6(0x165)]('Root:\x20'+link(_0x2e9407,bold(_0x591b54['IuCjl'](basename,_0x2e9407))));const _0x99d13a=_0x591b54[_0x55fda6(0x18d)](getCurrentVersion),_0x41ea09=_0x591b54['YnmPY'](getLatestVersion);if(_0x41ea09[_0x55fda6(0x1a0)]&&_0x41ea09[_0x55fda6(0x1a0)]!==_0x99d13a)console['log'](_0x55fda6(0x18f)+_0x99d13a+'\x20(latest:\x20'+_0x41ea09['version']+')'),console[_0x55fda6(0x165)](_0x55fda6(0x198));else _0x41ea09['version']?console[_0x55fda6(0x165)]('Version:\x20'+_0x99d13a+'\x20(up\x20to\x20date)'):console['log'](_0x55fda6(0x18f)+_0x99d13a);const _0x53b499=await getToken();if(_0x53b499){const _0x26f69d=await _0x591b54[_0x55fda6(0x14d)](getCurrentUser,_0x53b499);_0x26f69d[_0x55fda6(0x16b)]?console[_0x55fda6(0x165)](_0x55fda6(0x16e)+bold(_0x26f69d['user']['organizationName'])):(console['log']('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x55fda6(0x165)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x55fda6(0x165)]('API\x20Token:\x20✗\x20Not\x20found'),console['log'](_0x55fda6(0x177));process[_0x55fda6(0x16d)][_0x55fda6(0x1a3)]&&(console[_0x55fda6(0x165)]('API\x20Environment:\x20'+_0x591b54['YnmPY'](getCurrentEnvironment)),console[_0x55fda6(0x165)]('API\x20URL:\x20'+getApiBaseUrl()));console[_0x55fda6(0x165)]('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x21a4a4=await _0x591b54[_0x55fda6(0x18d)](getOpencodePluginStatus);if(_0x21a4a4['status']===_0x591b54['AXtop'])console['log']('\x20\x20'+_0x591b54[_0x55fda6(0x15f)](bold,_0x55fda6(0x1b7))+_0x55fda6(0x1a6)),_0x21a4a4['details']&&console[_0x55fda6(0x165)]('\x20\x20'+_0x21a4a4[_0x55fda6(0x17e)]);else _0x591b54['lrMZV'](_0x21a4a4['status'],_0x591b54[_0x55fda6(0x1aa)])?(console[_0x55fda6(0x165)](_0x591b54['KdEzL']),_0x21a4a4['details']&&console['log']('\x20\x20'+_0x21a4a4[_0x55fda6(0x17e)]),console['log']('\x20\x20Run:\x20ranger\x20setup\x20--opencode')):console[_0x55fda6(0x165)](_0x55fda6(0x1af));console['log'](_0x55fda6(0x168));const _0x277245=await _0x591b54[_0x55fda6(0x1a2)](getPluginInfo,'ranger@trailhead');if(_0x277245){const _0x7067b8=_0x277245[_0x55fda6(0x153)]||_0x591b54['UcEvu'],_0x338efd=_0x277245[_0x55fda6(0x178)]?_0x591b54[_0x55fda6(0x184)]:_0x591b54['kTkQL'];console['log']('\x20\x20'+_0x591b54['cPqBS'](bold,_0x591b54['Abrwp'])+_0x55fda6(0x19e)+_0x7067b8+',\x20'+_0x338efd+')');}else console[_0x55fda6(0x165)]('\x20\x20Not\x20installed'),console[_0x55fda6(0x165)](_0x55fda6(0x183));console[_0x55fda6(0x165)](_0x591b54[_0x55fda6(0x15b)]);const {project:_0x529193,user:_0x570af5}=await _0x591b54[_0x55fda6(0x181)](getInstalledSkills),_0x712a0=_0x529193['filter'](_0x17d3f0=>RANGER_MANAGED_SKILLS['includes'](_0x17d3f0['name'])),_0x16d125=_0x570af5['filter'](_0x7cd5cf=>RANGER_MANAGED_SKILLS['includes'](_0x7cd5cf['name'])),_0x4811a6=_0x591b54[_0x55fda6(0x1a8)](_0x712a0['length'],_0x16d125['length']);if(_0x591b54['lrMZV'](_0x4811a6,0x0))console[_0x55fda6(0x165)](_0x55fda6(0x16c)),console[_0x55fda6(0x165)](_0x55fda6(0x157));else{if(_0x712a0[_0x55fda6(0x14c)]>0x0){console['log'](_0x55fda6(0x162));for(const _0x262572 of _0x712a0){console[_0x55fda6(0x165)](_0x55fda6(0x194)+_0x591b54[_0x55fda6(0x14d)](bold,_0x262572[_0x55fda6(0x170)])+':\x20'+link(_0x262572[_0x55fda6(0x19f)],basename(_0x262572[_0x55fda6(0x19f)])));}}if(_0x16d125['length']>0x0){console['log'](_0x591b54['UCnbF']);for(const _0x86ffbd of _0x16d125){console[_0x55fda6(0x165)](_0x55fda6(0x194)+bold(_0x86ffbd['displayName'])+':\x20'+link(_0x86ffbd['path'],_0x591b54[_0x55fda6(0x154)](basename,_0x86ffbd['path'])));}}}console['log'](_0x591b54['TRaBI']);const {envs:_0x571703,activeEnv:_0x1c785e}=await getEnvironments();let _0x5d4d68=[];if(_0x53b499)try{_0x5d4d68=await listCloudProfiles();}catch{}const _0x21490a=_0x591b54['QsOnU'](_0x571703[_0x55fda6(0x14c)],_0x5d4d68['length']);if(_0x591b54[_0x55fda6(0x185)](_0x21490a,0x0))console[_0x55fda6(0x165)]('No\x20profiles\x20configured'),console['log'](_0x55fda6(0x191));else{if(_0x591b54['FAlnt'](_0x21490a,0x5)){const _0x5fb437=[];_0x5d4d68[_0x55fda6(0x14c)]>0x0&&_0x5fb437['push'](_0x5d4d68[_0x55fda6(0x14c)]+'\x20cloud'),_0x591b54[_0x55fda6(0x1ae)](_0x571703[_0x55fda6(0x14c)],0x0)&&_0x5fb437['push'](_0x571703['length']+'\x20local'),console['log'](_0x21490a+'\x20profiles\x20configured\x20('+_0x5fb437[_0x55fda6(0x1b5)](',\x20')+')'),_0x1c785e&&console['log'](_0x55fda6(0x1b3)+bold(_0x1c785e)),console['log'](_0x55fda6(0x155));}else{for(const _0x441176 of _0x5d4d68){const _0x1eafb8=_0x591b54['EBvJx'](_0x441176[_0x55fda6(0x19a)],_0x1c785e)?_0x591b54[_0x55fda6(0x15d)]:'';console['log']('\x20\x20'+_0x591b54[_0x55fda6(0x17c)](bold,_0x441176['name'])+_0x55fda6(0x199)+_0x1eafb8);const _0x1290d0=_0x441176[_0x55fda6(0x1ab)]?_0x55fda6(0x18a)+_0x441176['sessionUpdatedAt']+')':_0x591b54[_0x55fda6(0x179)];console['log'](_0x55fda6(0x17f)+_0x1290d0);}const _0x41c059=new Set(_0x5d4d68['map'](_0x4b46d8=>_0x4b46d8[_0x55fda6(0x19a)]));for(const _0x3362fa of _0x571703){if(_0x41c059[_0x55fda6(0x1b4)](_0x3362fa[_0x55fda6(0x19a)]))continue;const _0x1cd9f5=_0x3362fa['isActive']?'\x20(active)':'',_0x251da9=_0x3362fa['hasEncryptedAuth']?_0x591b54['KdCyy']:_0x3362fa[_0x55fda6(0x189)]?_0x55fda6(0x17d):_0x55fda6(0x164);console['log']('\x20\x20'+bold(_0x3362fa[_0x55fda6(0x19a)])+'\x20[local]'+_0x1cd9f5),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x251da9),_0x591b54['QJDXL'](_0x3362fa[_0x55fda6(0x14a)],_0x55fda6(0x1a1))&&console['log']('\x20\x20\x20\x20Settings:\x20'+_0x591b54['AIAeu'](link,_0x3362fa['settingsPath'],basename(_0x3362fa[_0x55fda6(0x14a)])));}if(!_0x1c785e){console[_0x55fda6(0x165)]('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x9769d7=[..._0x5d4d68[_0x55fda6(0x190)](_0x58a840=>_0x58a840[_0x55fda6(0x19a)]),..._0x571703['filter'](_0x122bd5=>!_0x41c059[_0x55fda6(0x1b4)](_0x122bd5['name']))['map'](_0x7652be=>_0x7652be[_0x55fda6(0x19a)])];console[_0x55fda6(0x165)](_0x55fda6(0x195)+_0x9769d7[_0x55fda6(0x1b5)](',\x20')+')');}}}console['log']('');}
|