@ranger-testing/ranger-cli 3.0.1-alpha.476607f-31 → 3.0.1-alpha.4fcf7f7-33
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/organizationEnvApi.js +1 -0
- 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/rangerwrightCli.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/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +1 -1
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0xfd60(){const _0x171fad=['organizationName','24052226CLMsCW','log','207BpAvwj','3LyTmaq','535430DckHHp','\x0a✅\x20Logged\x20in\x20to\x20','Login\x20failed:\x20','ghCEw','message','gqWpM','1okFfRF','4279616wPxyOk','852534rfByly','7FWpZCP','2694075DiWRtn','776814lULpTk','2158688zVERdF','fmCmQ'];_0xfd60=function(){return _0x171fad;};return _0xfd60();}(function(_0x100b33,_0x12b85c){const _0x3ed3f1=_0x27fc,_0x12f23a=_0x100b33();while(!![]){try{const _0x50b5b0=parseInt(_0x3ed3f1(0x1df))/0x1*(parseInt(_0x3ed3f1(0x1d1))/0x2)+parseInt(_0x3ed3f1(0x1d8))/0x3*(parseInt(_0x3ed3f1(0x1e0))/0x4)+parseInt(_0x3ed3f1(0x1d0))/0x5+-parseInt(_0x3ed3f1(0x1e1))/0x6+-parseInt(_0x3ed3f1(0x1cf))/0x7*(parseInt(_0x3ed3f1(0x1d2))/0x8)+-parseInt(_0x3ed3f1(0x1d7))/0x9*(-parseInt(_0x3ed3f1(0x1d9))/0xa)+-parseInt(_0x3ed3f1(0x1d5))/0xb;if(_0x50b5b0===_0x12b85c)break;else _0x12f23a['push'](_0x12f23a['shift']());}catch(_0xd93712){_0x12f23a['push'](_0x12f23a['shift']());}}}(_0xfd60,0x99d6c));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{getCurrentUser}from'./utils/userApi.js';function _0x27fc(_0x5b4315,_0x18ff71){_0x5b4315=_0x5b4315-0x1cf;const _0xfd6024=_0xfd60();let _0x27fc5c=_0xfd6024[_0x5b4315];return _0x27fc5c;}import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';import{isInteractive}from'./utils/cloudProfileSession.js';export async function login(){const _0x358a6e=_0x27fc,_0x4001e0={'gqWpM':function(_0x56385f){return _0x56385f();},'vLnju':'Re-authenticating\x20via\x20MCP\x20bootstrap...','UqTTb':'Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','ghCEw':function(_0x462b86,_0x1a477f){return _0x462b86(_0x1a477f);},'fmCmQ':'\x0a✅\x20API\x20key\x20stored\x20successfully'},_0x29f158=await _0x4001e0[_0x358a6e(0x1de)](getMcpAuthOrigin);if(_0x29f158){console[_0x358a6e(0x1d6)](_0x4001e0['vLnju']),await _0x4001e0['gqWpM'](mcpBootstrap);return;}if(!isInteractive())throw new Error(_0x4001e0['UqTTb']);try{const _0x221df1=await _0x4001e0[_0x358a6e(0x1de)](runDeviceAuthFlow),_0x4a021e=await _0x4001e0[_0x358a6e(0x1dc)](getCurrentUser,_0x221df1);_0x4a021e['success']?console['log'](_0x358a6e(0x1da)+_0x4a021e['user'][_0x358a6e(0x1d4)]):console[_0x358a6e(0x1d6)](_0x4001e0[_0x358a6e(0x1d3)]);}catch(_0xa43e27){throw new Error(_0x358a6e(0x1db)+(_0xa43e27 instanceof Error?_0xa43e27[_0x358a6e(0x1dd)]:_0xa43e27));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5a5d54=_0x3d82;(function(_0x52c2da,_0x51bdb3){const _0x1947a7=_0x3d82,_0x3af942=_0x52c2da();while(!![]){try{const _0xd7ea7f=-parseInt(_0x1947a7(0x1f4))/0x1+-parseInt(_0x1947a7(0x24c))/0x2*(-parseInt(_0x1947a7(0x1db))/0x3)+parseInt(_0x1947a7(0x1cd))/0x4*(parseInt(_0x1947a7(0x23d))/0x5)+-parseInt(_0x1947a7(0x22a))/0x6*(parseInt(_0x1947a7(0x1ca))/0x7)+parseInt(_0x1947a7(0x23a))/0x8+parseInt(_0x1947a7(0x213))/0x9+parseInt(_0x1947a7(0x1b9))/0xa;if(_0xd7ea7f===_0x51bdb3)break;else _0x3af942['push'](_0x3af942['shift']());}catch(_0x2cc061){_0x3af942['push'](_0x3af942['shift']());}}}(_0x4b0b,0x785bd));import{mkdir,writeFile,readFile}from'fs/promises';function _0x3d82(_0x4f241a,_0x4af27c){_0x4f241a=_0x4f241a-0x1b7;const _0x4b0b33=_0x4b0b();let _0x3d8283=_0x4b0b33[_0x4f241a];return _0x3d8283;}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',_0x5a5d54(0x22f)),AUTH_ORIGIN_PATH=join(homedir(),_0x5a5d54(0x24b),_0x5a5d54(0x229));export async function getMcpAuthOrigin(){const _0x129b36=_0x5a5d54,_0x52277a={'FmCvh':'utf-8'};try{const _0x1a65c1=(await readFile(AUTH_ORIGIN_PATH,_0x52277a[_0x129b36(0x1f2)]))[_0x129b36(0x209)]();return _0x1a65c1||null;}catch{return null;}}export async function mcpBootstrap(){const _0x245089=_0x5a5d54,_0x6e480a={'DSEpA':function(_0x29ffbe,_0x3d37e7){return _0x29ffbe+_0x3d37e7;},'NQxyE':_0x245089(0x1c8),'LRHsv':_0x245089(0x1d6)},_0x10f88e=getMcpAuthUrl();currentOrigin=_0x10f88e;const _0x145d2f=process['stdout'][_0x245089(0x1bc)]??![];console[_0x245089(0x201)](_0x245089(0x235)+_0x10f88e+'\x0a');const _0x2f4592=await tryUnauthenticated(_0x10f88e);let _0x111052=null;if(_0x2f4592==='proxied')_0x111052='';else{_0x111052=await loadCachedToken();if(!_0x111052){if(!_0x145d2f)throw new Error(_0x6e480a['DSEpA'](_0x6e480a['NQxyE'],_0x6e480a['LRHsv']));_0x111052=await oauthFlow(_0x10f88e);}}await callGetCliToken(_0x10f88e,_0x111052);}function _0x4b0b(){const _0x1c370d=['startsWith','clientSecret','structuredContent','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','result','code','POST','MCP\x20server\x20returned\x20HTTP\x20','7347915IdONCy','Bearer\x20','igSrp','IyFkG','expiresAt','status','sUYZo','text/html','type','1.0.0','WbRfr','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','ranger-cli','<html><body><h2>Authentication\x20failed</h2><p>','resource','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','YmSJY','\x0aUnexpected\x20response\x20structure:','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','sZwdC','writeHead','Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20','auth-origin.txt','60PAzhMO','KjQEs','vLrLy','S256','end','mcp-oauth-tokens.json','pfhnY','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','open','json','Token\x20exchange\x20failed:\x20','\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20','gatDy','Client\x20registration\x20failed:\x20','sha256','expires_in','961128jWUeqp','code_challenge','VrUMo','2125715iuNzFs','WwILT','Unknown\x20error','kDyeY','needs-oauth','OAuth\x20error:\x20','client_secret','fiAyj','access_token','jtMzC','Not\x20found','client_id','xJPRC','parse','.ranger','58620ntaZZF','ltVtN','text','rkYym','OAuthTimeoutError','523030oJjtAr','SFnDb','\x0aToken\x20written\x20to\x20','isTTY','gtysN','/callback','Initializing\x20MCP\x20session...','initialize','clientId','data:','get','2.0','eAwlK','then','IRQLK','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','authorization_code','624533rMcNvB','headers','UDSWA','4UfeWXX','VTjDJ','kmeXT','bSAwf','Exchanging\x20authorization\x20code...','application/x-www-form-urlencoded','NcuOL','GWmLs','ZzYOa','Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','IgwzH','tnZZb','refreshToken','stdout','51iCzlKi','http://localhost:','\x20done','SSRDo','udDvL','/.well-known/oauth-authorization-server','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a','toString','OsvSo','write','DRgIe','BdjHe','set','text/event-stream','MCP\x20initialize\x20failed:\x20','yrVwA','utf-8','content','stringify','darwin','refresh_token','auKyF','includes','FmCvh','wuCmJ','527113zVxRgz','application/json,\x20text/event-stream','notifications/initialized','refxl','XCuyC','authorization_endpoint','origin','url','Ranger\x20CLI','message','authorization_servers','error','EcjGO','log','token_endpoint','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','now','token','listen','searchParams','2025-03-26','trim','registration_endpoint'];_0x4b0b=function(){return _0x1c370d;};return _0x4b0b();}async function tryUnauthenticated(_0x5e843e){const _0x3bd43a=_0x5a5d54,_0x69c111={'XIzII':function(_0x466827,_0x2b8fb2,_0x1536c8){return _0x466827(_0x2b8fb2,_0x1536c8);},'YBFtl':_0x3bd43a(0x211),'DRgIe':_0x3bd43a(0x1c4),'fiAyj':_0x3bd43a(0x1c0),'AjaCb':_0x3bd43a(0x21c),'exOFo':'proxied','eQdKB':function(_0xeb02d9,_0x9e4fad){return _0xeb02d9===_0x9e4fad;},'WwILT':_0x3bd43a(0x241)},_0x3418e9=await _0x69c111['XIzII'](fetch,_0x5e843e,{'method':_0x69c111['YBFtl'],'headers':{'Content-Type':'application/json','Accept':_0x3bd43a(0x1f5)},'body':JSON['stringify']({'jsonrpc':_0x69c111[_0x3bd43a(0x1e5)],'id':0x1,'method':_0x69c111[_0x3bd43a(0x244)],'params':{'protocolVersion':_0x3bd43a(0x208),'capabilities':{},'clientInfo':{'name':_0x3bd43a(0x21f),'version':_0x69c111['AjaCb']}}})});if(_0x3418e9['ok'])return await _0x3418e9[_0x3bd43a(0x24e)](),_0x69c111['exOFo'];if(_0x69c111['eQdKB'](_0x3418e9['status'],0x191))return await _0x3418e9['text'](),_0x69c111[_0x3bd43a(0x23e)];const _0x2833e7=await _0x3418e9[_0x3bd43a(0x24e)]();throw new Error(_0x3bd43a(0x212)+_0x3418e9[_0x3bd43a(0x218)]+':\x20'+_0x2833e7);}class OAuthTimeoutError extends Error{constructor(_0x33bd14){const _0x400f7e=_0x5a5d54,_0x34fd93={'ltVtN':_0x400f7e(0x1b8)};super(_0x33bd14),this['name']=_0x34fd93[_0x400f7e(0x24d)];}}async function oauthFlow(_0x444bcd){const _0xa1c71e=_0x5a5d54,_0x31a262={'ZDgfq':function(_0x274bf0,_0x5ad544){return _0x274bf0(_0x5ad544);},'WbRfr':function(_0x479bdd,_0x5a8d2c){return _0x479bdd instanceof _0x5a8d2c;},'VrUMo':function(_0x154ae3){return _0x154ae3();},'CscER':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'};try{return await _0x31a262['ZDgfq'](oauthFlowAttempt,_0x444bcd);}catch(_0x5de107){if(_0x31a262[_0xa1c71e(0x21d)](_0x5de107,OAuthTimeoutError)&&await _0x31a262[_0xa1c71e(0x23c)](loadCachedClient))return console['log'](_0x31a262['CscER']),await clearCachedClient(),await oauthFlowAttempt(_0x444bcd);throw _0x5de107;}}async function oauthFlowAttempt(_0x1769db){const _0x4160a8=_0x5a5d54,_0x55f744={'IyFkG':'Discovering\x20authorization\x20server...','ZvNls':function(_0xa43ec9,_0x1497ac){return _0xa43ec9(_0x1497ac);},'fffoy':function(_0x2f8b39){return _0x2f8b39();},'refxl':'Registering\x20OAuth\x20client...','jtMzC':function(_0x5686ef,_0x2f6566,_0x5bf18d){return _0x5686ef(_0x2f6566,_0x5bf18d);},'StUgu':_0x4160a8(0x211),'pUkda':'application/json','AlbgV':_0x4160a8(0x1fc),'DjCTv':'authorization_code','xggmu':'none','ARjXq':'base64url','pbHRZ':'hex','chrIh':'response_type','inOrC':_0x4160a8(0x248),'sUYZo':'redirect_uri','udDvL':'code_challenge_method','SSRDo':_0x4160a8(0x22d),'wuCmJ':'state','rDCQH':'\x0aOpening\x20browser\x20for\x20authentication...','IgwzH':function(_0x4255e0,_0x1eb92c){return _0x4255e0(_0x1eb92c);},'NiSyO':function(_0x4d1fe5,_0x5257fe){return _0x4d1fe5(_0x5257fe);},'knlms':_0x4160a8(0x221),'BdjHe':_0x4160a8(0x1d2),'Ecghi':function(_0x369b81,_0x13aa95,_0x276c4f,_0x515eb9){return _0x369b81(_0x13aa95,_0x276c4f,_0x515eb9);}},_0x51d61e=_0x1769db['replace'](/\/mcp$/,'');process[_0x4160a8(0x1da)][_0x4160a8(0x1e4)](_0x55f744[_0x4160a8(0x216)]);const _0x13eaac=await _0x55f744['ZvNls'](fetch,_0x51d61e+'/.well-known/oauth-protected-resource');if(!_0x13eaac['ok'])throw new Error(_0x4160a8(0x231));const _0x350ff7=await _0x13eaac['json'](),_0x4dde37=_0x350ff7[_0x4160a8(0x1fe)]?.[0x0];if(!_0x4dde37)throw new Error(_0x4160a8(0x21e));console['log']('\x20'+_0x4dde37);const _0x481e08=await fetchAuthServerMetadata(_0x4dde37);let _0x34d94a,_0x30dfc4;const _0x321344=await _0x55f744['fffoy'](loadCachedClient);if(_0x321344)_0x34d94a=_0x321344[_0x4160a8(0x1c1)],_0x30dfc4=_0x321344[_0x4160a8(0x20c)];else{if(_0x481e08[_0x4160a8(0x20a)]){process['stdout']['write'](_0x55f744[_0x4160a8(0x1f7)]);const _0x5c3dae=await _0x55f744[_0x4160a8(0x246)](fetch,_0x481e08['registration_endpoint'],{'method':_0x55f744['StUgu'],'headers':{'Content-Type':_0x55f744['pUkda']},'body':JSON[_0x4160a8(0x1ed)]({'client_name':_0x55f744['AlbgV'],'redirect_uris':['http://localhost:'+CALLBACK_PORT+'/callback'],'grant_types':[_0x55f744['DjCTv'],_0x4160a8(0x1ef)],'response_types':[_0x4160a8(0x210)],'token_endpoint_auth_method':_0x55f744['xggmu']})});if(!_0x5c3dae['ok']){const _0x65e39b=await _0x5c3dae[_0x4160a8(0x24e)]();throw new Error(_0x4160a8(0x237)+_0x65e39b);}const _0x284ec4=await _0x5c3dae[_0x4160a8(0x233)]();_0x34d94a=_0x284ec4[_0x4160a8(0x248)],_0x30dfc4=_0x284ec4[_0x4160a8(0x243)],await saveCachedClient(_0x34d94a,_0x30dfc4),console[_0x4160a8(0x201)](_0x4160a8(0x1dd));}else throw new Error(_0x4160a8(0x203));}const _0xedad1e=randomBytes(0x20)[_0x4160a8(0x1e2)](_0x55f744['ARjXq']),_0x4c9f44=createHash(_0x4160a8(0x238))['update'](_0xedad1e)['digest'](_0x55f744['ARjXq']),_0x5b72d3=randomBytes(0x10)['toString'](_0x55f744['pbHRZ']),_0x1f3b8a=new URL(_0x481e08[_0x4160a8(0x1f9)]);_0x1f3b8a[_0x4160a8(0x207)]['set'](_0x55f744['chrIh'],'code'),_0x1f3b8a['searchParams'][_0x4160a8(0x1e7)](_0x55f744['inOrC'],_0x34d94a),_0x1f3b8a['searchParams'][_0x4160a8(0x1e7)](_0x55f744[_0x4160a8(0x219)],_0x4160a8(0x1dc)+CALLBACK_PORT+'/callback'),_0x1f3b8a[_0x4160a8(0x207)][_0x4160a8(0x1e7)](_0x4160a8(0x23b),_0x4c9f44),_0x1f3b8a['searchParams']['set'](_0x55f744[_0x4160a8(0x1df)],_0x55f744[_0x4160a8(0x1de)]),_0x1f3b8a[_0x4160a8(0x207)][_0x4160a8(0x1e7)](_0x55f744[_0x4160a8(0x1f3)],_0x5b72d3);_0x350ff7[_0x4160a8(0x221)]&&_0x1f3b8a[_0x4160a8(0x207)]['set'](_0x4160a8(0x221),_0x350ff7['resource']);console['log'](_0x55f744['rDCQH']),console[_0x4160a8(0x201)](_0x4160a8(0x1e1)+_0x1f3b8a[_0x4160a8(0x1e2)]()+'\x0a'),await _0x55f744[_0x4160a8(0x1d7)](openBrowser,_0x1f3b8a['toString']());const _0x2b87c2=await _0x55f744['NiSyO'](waitForCallback,_0x5b72d3);process[_0x4160a8(0x1da)]['write'](_0x4160a8(0x1d1));const _0x4c071a=new URLSearchParams({'grant_type':_0x4160a8(0x1c9),'code':_0x2b87c2,'redirect_uri':_0x4160a8(0x1dc)+CALLBACK_PORT+'/callback','client_id':_0x34d94a,'code_verifier':_0xedad1e});_0x30dfc4&&_0x4c071a[_0x4160a8(0x1e7)]('client_secret',_0x30dfc4);_0x350ff7['resource']&&_0x4c071a['set'](_0x55f744['knlms'],_0x350ff7[_0x4160a8(0x221)]);const _0x135e5b=await fetch(_0x481e08[_0x4160a8(0x202)],{'method':'POST','headers':{'Content-Type':_0x55f744[_0x4160a8(0x1e6)]},'body':_0x4c071a});if(!_0x135e5b['ok']){const _0x556db1=await _0x135e5b[_0x4160a8(0x24e)]();throw new Error(_0x4160a8(0x234)+_0x556db1);}const _0x43338a=await _0x135e5b['json']();return console['log']('\x20done'),await _0x55f744['Ecghi'](saveCachedToken,_0x43338a[_0x4160a8(0x245)],_0x43338a[_0x4160a8(0x1ef)],_0x43338a[_0x4160a8(0x239)]),_0x43338a[_0x4160a8(0x245)];}async function callGetCliToken(_0x3bce0d,_0x1a870e){const _0x2bbe7f=_0x5a5d54,_0x4fd8b5={'bSAwf':function(_0x17b102,_0x28827a,_0x55a9cf){return _0x17b102(_0x28827a,_0x55a9cf);},'gatDy':'application/json','yXCnY':_0x2bbe7f(0x1f5),'SFnDb':'Authorization','ZwLDL':'2.0','EcjGO':_0x2bbe7f(0x208),'igSrp':'ranger-cli','kmeXT':_0x2bbe7f(0x1dd),'uyuge':'Requesting\x20CLI\x20token...','NcuOL':function(_0x43b5f9,_0x5da20b){return _0x43b5f9(_0x5da20b);},'xJPRC':function(_0x4404cd,_0x28b3a7){return _0x4404cd(_0x28b3a7);},'eAwlK':_0x2bbe7f(0x224),'vLrLy':function(_0x5880b2,_0x5eaa13,_0x42bb08,_0x776091){return _0x5880b2(_0x5eaa13,_0x42bb08,_0x776091);},'NZrBH':function(_0x551cb7,_0x41ae8c,_0x478c27){return _0x551cb7(_0x41ae8c,_0x478c27);},'hBqSB':'auth-origin.txt','auKyF':_0x2bbe7f(0x222)},_0x36b0e5={'Content-Type':_0x4fd8b5[_0x2bbe7f(0x236)],'Accept':_0x4fd8b5['yXCnY']};_0x1a870e&&(_0x36b0e5[_0x4fd8b5[_0x2bbe7f(0x1ba)]]=_0x2bbe7f(0x214)+_0x1a870e);const _0xfdf1c9=async _0x136863=>{const _0x577189=_0x2bbe7f,_0x1c5467=await _0x4fd8b5[_0x577189(0x1d0)](fetch,_0x3bce0d,{'method':_0x577189(0x211),'headers':_0x36b0e5,'body':JSON[_0x577189(0x1ed)](_0x136863)});if(!_0x1c5467['ok']){const _0x5095c0=await _0x1c5467[_0x577189(0x24e)]();throw new Error('HTTP\x20'+_0x1c5467['status']+':\x20'+_0x5095c0);}return parseResponse(_0x1c5467);};process[_0x2bbe7f(0x1da)][_0x2bbe7f(0x1e4)](_0x2bbe7f(0x1bf));const _0x15fd7b=await _0xfdf1c9({'jsonrpc':_0x4fd8b5['ZwLDL'],'id':0x1,'method':'initialize','params':{'protocolVersion':_0x4fd8b5[_0x2bbe7f(0x200)],'capabilities':{},'clientInfo':{'name':_0x4fd8b5[_0x2bbe7f(0x215)],'version':_0x2bbe7f(0x21c)}}});if(_0x15fd7b[_0x2bbe7f(0x1ff)])throw new Error(_0x2bbe7f(0x1e9)+(_0x15fd7b['error']['message']??JSON['stringify'](_0x15fd7b['error'])));console[_0x2bbe7f(0x201)](_0x4fd8b5[_0x2bbe7f(0x1cf)]),await fetch(_0x3bce0d,{'method':'POST','headers':_0x36b0e5,'body':JSON['stringify']({'jsonrpc':'2.0','method':_0x2bbe7f(0x1f6)})})[_0x2bbe7f(0x1c6)](_0x55c42a=>_0x55c42a['text']()),process['stdout'][_0x2bbe7f(0x1e4)](_0x4fd8b5['uyuge']);const _0x1fbee4=await _0x4fd8b5[_0x2bbe7f(0x1d3)](_0xfdf1c9,{'jsonrpc':_0x4fd8b5['ZwLDL'],'id':0x2,'method':'tools/call','params':{'name':'get_cli_token','arguments':{}}});if(_0x1fbee4['error'])throw new Error('get_cli_token\x20failed:\x20'+(_0x1fbee4['error'][_0x2bbe7f(0x1fd)]??JSON[_0x2bbe7f(0x1ed)](_0x1fbee4['error'])));console[_0x2bbe7f(0x201)](_0x4fd8b5[_0x2bbe7f(0x1cf)]);const _0x25a256=_0x4fd8b5[_0x2bbe7f(0x249)](extractToken,_0x1fbee4[_0x2bbe7f(0x20f)]);if(!_0x25a256){console[_0x2bbe7f(0x1ff)](_0x4fd8b5[_0x2bbe7f(0x1c5)]),console['error'](JSON[_0x2bbe7f(0x1ed)](_0x1fbee4[_0x2bbe7f(0x20f)],null,0x2));throw new Error('Could\x20not\x20extract\x20token\x20from\x20MCP\x20response');}const _0x34485d=join(homedir(),_0x2bbe7f(0x24b)),_0x40a5c3=_0x4fd8b5[_0x2bbe7f(0x1d0)](join,_0x34485d,'refresh.txt');await mkdir(_0x34485d,{'recursive':!![]}),await writeFile(_0x40a5c3,_0x25a256,{'mode':0x180}),await _0x4fd8b5[_0x2bbe7f(0x22c)](writeFile,_0x4fd8b5['NZrBH'](join,_0x34485d,_0x4fd8b5['hBqSB']),_0x3bce0d,{'mode':0x180}),console[_0x2bbe7f(0x201)](_0x2bbe7f(0x1bb)+_0x40a5c3),console['log'](_0x4fd8b5[_0x2bbe7f(0x1f0)]);}async function fetchAuthServerMetadata(_0x40ec60){const _0x1b6ba7=_0x5a5d54,_0xc7e5b0={'gUuND':function(_0xc9eeac,_0x131f56){return _0xc9eeac(_0x131f56);}},_0x49c1b5=_0x40ec60+_0x1b6ba7(0x1e0),_0x2a16fd=await _0xc7e5b0['gUuND'](fetch,_0x49c1b5);if(!_0x2a16fd['ok'])throw new Error(_0x1b6ba7(0x228)+_0x49c1b5+':\x20'+_0x2a16fd[_0x1b6ba7(0x218)]);return _0x2a16fd['json']();}function waitForCallback(_0x23f693){const _0x3e54bf=_0x5a5d54,_0x2964cf={'dFvGM':_0x3e54bf(0x1ff),'VTjDJ':'error_description','NHtVe':_0x3e54bf(0x21a)};return new Promise((_0x32d1c3,_0x6a02f2)=>{const _0x2e80ad=_0x3e54bf,_0x424217={'ZUJkx':function(_0x39eb87,_0x5c7f20){return _0x39eb87(_0x5c7f20);},'YwmAH':'state','GWmLs':_0x2964cf['dFvGM'],'JoKCB':_0x2964cf[_0x2e80ad(0x1ce)],'tnZZb':_0x2964cf['NHtVe'],'DZsUa':function(_0x11b9f0,_0x38e9ea){return _0x11b9f0(_0x38e9ea);}},_0x43b7c3=()=>{_0x2bce09['closeAllConnections'](),_0x2bce09['close']();},_0x227942=setTimeout(()=>{const _0x163ea7=_0x2e80ad;_0x43b7c3(),_0x424217['ZUJkx'](_0x6a02f2,new OAuthTimeoutError(_0x163ea7(0x225)));},0x1d4c0),_0x2bce09=createServer((_0x3c3e40,_0x43c759)=>{const _0x241573=_0x2e80ad,_0x38f80a=new URL(_0x3c3e40[_0x241573(0x1fb)]??'/',_0x241573(0x1dc)+CALLBACK_PORT);if(_0x38f80a['pathname']!==_0x241573(0x1be)){_0x43c759[_0x241573(0x227)](0x194),_0x43c759['end'](_0x241573(0x247));return;}const _0x22acd0=_0x38f80a[_0x241573(0x207)][_0x241573(0x1c3)](_0x241573(0x210)),_0x4c6d13=_0x38f80a[_0x241573(0x207)][_0x241573(0x1c3)](_0x424217['YwmAH']),_0x4e2707=_0x38f80a[_0x241573(0x207)]['get'](_0x424217[_0x241573(0x1d4)]);if(_0x4e2707){const _0x4e8fd1=_0x38f80a['searchParams']['get'](_0x424217['JoKCB'])??_0x4e2707;_0x43c759['writeHead'](0xc8,{'Content-Type':_0x424217[_0x241573(0x1d8)]}),_0x43c759['end'](_0x241573(0x220)+_0x4e8fd1+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),_0x424217['ZUJkx'](clearTimeout,_0x227942),_0x43b7c3(),_0x424217['DZsUa'](_0x6a02f2,new Error(_0x241573(0x242)+_0x4e8fd1));return;}if(!_0x22acd0||_0x4c6d13!==_0x23f693){_0x43c759['writeHead'](0x190,{'Content-Type':_0x241573(0x21a)}),_0x43c759[_0x241573(0x22e)]('<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>');return;}_0x43c759[_0x241573(0x227)](0xc8,{'Content-Type':_0x424217[_0x241573(0x1d8)]}),_0x43c759['end']('<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>'),clearTimeout(_0x227942),_0x43b7c3(),_0x32d1c3(_0x22acd0);});_0x2bce09[_0x2e80ad(0x206)](CALLBACK_PORT,'127.0.0.1');});}async function openBrowser(_0x397c08){const _0x313747=_0x5a5d54,_0x438d8f={'YmSJY':function(_0x57d62b,_0x435ab7){return _0x57d62b===_0x435ab7;},'KjQEs':'start','sZwdC':function(_0x2d82ec,_0x266072){return _0x2d82ec(_0x266072);}},_0x3c519f=process['platform']===_0x313747(0x1ee)?_0x313747(0x232):_0x438d8f[_0x313747(0x223)](process['platform'],'win32')?_0x438d8f[_0x313747(0x22b)]:'xdg-open';_0x438d8f[_0x313747(0x226)](exec,_0x3c519f+'\x20\x22'+_0x397c08+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x28dcb6=_0x5a5d54,_0x32f8cb={'UDSWA':function(_0x5f4ce0,_0x2ca9dc){return _0x5f4ce0!==_0x2ca9dc;},'jxzsA':function(_0x54e9d9,_0x217bb8){return _0x54e9d9>_0x217bb8;}};try{const _0x156277=JSON['parse'](await readFile(TOKEN_CACHE_PATH,'utf-8'));if(_0x156277[_0x28dcb6(0x1fa)]&&_0x32f8cb[_0x28dcb6(0x1cc)](_0x156277['origin'],currentOrigin))return null;if(_0x156277['expiresAt']&&_0x32f8cb['jxzsA'](Date['now'](),_0x156277[_0x28dcb6(0x217)]))return null;return _0x156277['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x287265,_0x233c6b,_0xcc808d){const _0x207e1d=_0x5a5d54,_0x3e1229={'Jdmzv':function(_0x57587b,_0x171ee1){return _0x57587b+_0x171ee1;},'rkYym':function(_0x89b996,_0x1ebb43){return _0x89b996*_0x1ebb43;},'kDyeY':function(_0x2d740d,_0x57a7ab,_0x2c914c){return _0x2d740d(_0x57a7ab,_0x2c914c);},'yrVwA':function(_0x2b1094,_0x16a186,_0x5992a8,_0x447668){return _0x2b1094(_0x16a186,_0x5992a8,_0x447668);}},_0x1340c4=await loadCachedData(),_0x6e2b50={..._0x1340c4,'origin':currentOrigin,'accessToken':_0x287265,'refreshToken':_0x233c6b??_0x1340c4?.[_0x207e1d(0x1d9)],'expiresAt':_0xcc808d?_0x3e1229['Jdmzv'](Date[_0x207e1d(0x204)](),_0x3e1229[_0x207e1d(0x1b7)](_0xcc808d,0x3e8)):undefined};await mkdir(_0x3e1229[_0x207e1d(0x240)](join,homedir(),_0x207e1d(0x24b)),{'recursive':!![]}),await _0x3e1229[_0x207e1d(0x1ea)](writeFile,TOKEN_CACHE_PATH,JSON[_0x207e1d(0x1ed)](_0x6e2b50),{'mode':0x180});}async function loadCachedClient(){const _0x490df7=_0x5a5d54,_0x45b7ef={'pfhnY':function(_0x469d3b){return _0x469d3b();}},_0x266e1e=await _0x45b7ef[_0x490df7(0x230)](loadCachedData);if(_0x266e1e?.[_0x490df7(0x1fa)]&&_0x266e1e[_0x490df7(0x1fa)]!==currentOrigin)return null;return _0x266e1e?.['clientId']?{'clientId':_0x266e1e['clientId'],'clientSecret':_0x266e1e['clientSecret']}:null;}async function clearCachedClient(){const _0x489540=_0x5a5d54,_0x45741c=await loadCachedData();if(!_0x45741c)return;const {clientId:_0x1928c3,clientSecret:_0x3cc607,..._0x4dbe69}=_0x45741c;await writeFile(TOKEN_CACHE_PATH,JSON[_0x489540(0x1ed)](_0x4dbe69),{'mode':0x180});}async function saveCachedClient(_0x53f1d1,_0x1f243e){const _0x2f91b3=_0x5a5d54,_0x5c04ae={'ZzYOa':function(_0x49aaec){return _0x49aaec();},'OsvSo':_0x2f91b3(0x24b),'XCuyC':function(_0x32cb8e,_0x4b9b51,_0x16de05,_0xbd9230){return _0x32cb8e(_0x4b9b51,_0x16de05,_0xbd9230);}},_0x12272f=await _0x5c04ae[_0x2f91b3(0x1d5)](loadCachedData),_0xfc526d={..._0x12272f,'origin':currentOrigin,'accessToken':_0x12272f?.['accessToken']??'','clientId':_0x53f1d1,'clientSecret':_0x1f243e};await mkdir(join(homedir(),_0x5c04ae[_0x2f91b3(0x1e3)]),{'recursive':!![]}),await _0x5c04ae[_0x2f91b3(0x1f8)](writeFile,TOKEN_CACHE_PATH,JSON[_0x2f91b3(0x1ed)](_0xfc526d),{'mode':0x180});}async function loadCachedData(){const _0x4c1cce=_0x5a5d54,_0x4fd288={'gtysN':function(_0x585466,_0x5e5392,_0x1880a4){return _0x585466(_0x5e5392,_0x1880a4);},'wxWML':_0x4c1cce(0x1eb)};try{return JSON['parse'](await _0x4fd288[_0x4c1cce(0x1bd)](readFile,TOKEN_CACHE_PATH,_0x4fd288['wxWML']));}catch{return null;}}async function parseResponse(_0x18ce2f){const _0x279e62=_0x5a5d54,_0x43dfe6={'IRQLK':'content-type','UjtrP':_0x279e62(0x1e8),'soTHT':function(_0x39298e,_0x17e358){return _0x39298e!==_0x17e358;}},_0x245e27=_0x18ce2f[_0x279e62(0x1cb)]['get'](_0x43dfe6[_0x279e62(0x1c7)])??'';if(_0x245e27[_0x279e62(0x1f1)](_0x43dfe6['UjtrP'])){const _0x5061c6=await _0x18ce2f['text']();for(const _0x419864 of _0x5061c6['split']('\x0a')){const _0x36dc3e=_0x419864['trim']();if(_0x36dc3e[_0x279e62(0x20b)](_0x279e62(0x1c2))){const _0x37a414=_0x36dc3e['slice'](_0x279e62(0x1c2)['length'])[_0x279e62(0x209)]();if(!_0x37a414)continue;try{const _0x37f9b2=JSON['parse'](_0x37a414);if(_0x43dfe6['soTHT'](_0x37f9b2['id'],undefined)||_0x37f9b2['error'])return _0x37f9b2;}catch{}}}throw new Error(_0x279e62(0x20e));}return _0x18ce2f['json']();}function extractToken(_0x2a8319){const _0x341e22=_0x5a5d54,_0x2b2449={'YtipN':function(_0x5204da,_0x420b5f){return _0x5204da===_0x420b5f;},'jviau':'string','NrGKR':_0x341e22(0x23f)};if(!_0x2a8319)return null;const _0x1d4fd7=_0x2a8319[_0x341e22(0x20d)];if(_0x1d4fd7?.['token']&&_0x2b2449['YtipN'](typeof _0x1d4fd7['token'],_0x2b2449['jviau']))return _0x1d4fd7[_0x341e22(0x205)];if(_0x2a8319['isError']){const _0x2bb6c0=_0x2a8319[_0x341e22(0x1ec)];throw new Error('Server\x20returned\x20error:\x20'+(_0x2bb6c0?.[0x0]?.['text']??_0x2b2449['NrGKR']));}const _0x28ca9e=_0x2a8319['content'];if(_0x28ca9e)for(const _0x2e68fc of _0x28ca9e){if(_0x2b2449['YtipN'](_0x2e68fc[_0x341e22(0x21b)],'text')&&_0x2e68fc[_0x341e22(0x24e)]){try{const _0x7f3b69=JSON[_0x341e22(0x24a)](_0x2e68fc['text']);if(typeof _0x7f3b69?.['token']===_0x2b2449['jviau'])return _0x7f3b69[_0x341e22(0x205)];}catch{}const _0x3a3ac3=_0x2e68fc['text']['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x3a3ac3)return _0x3a3ac3[0x1];}}return null;}
|
|
1
|
+
const _0x1045e2=_0x53a5;(function(_0x2b436f,_0x460729){const _0x52f6dc=_0x53a5,_0x58a143=_0x2b436f();while(!![]){try{const _0x2dbd4a=parseInt(_0x52f6dc(0x120))/0x1+parseInt(_0x52f6dc(0xf9))/0x2*(-parseInt(_0x52f6dc(0xa0))/0x3)+-parseInt(_0x52f6dc(0x11c))/0x4+parseInt(_0x52f6dc(0xe6))/0x5*(-parseInt(_0x52f6dc(0xda))/0x6)+-parseInt(_0x52f6dc(0x95))/0x7*(parseInt(_0x52f6dc(0xac))/0x8)+-parseInt(_0x52f6dc(0x97))/0x9*(-parseInt(_0x52f6dc(0x9c))/0xa)+parseInt(_0x52f6dc(0xa6))/0xb;if(_0x2dbd4a===_0x460729)break;else _0x58a143['push'](_0x58a143['shift']());}catch(_0x54d775){_0x58a143['push'](_0x58a143['shift']());}}}(_0x3d40,0xe1518));import{mkdir,writeFile,readFile}from'fs/promises';function _0x53a5(_0x329da8,_0xfc0da8){_0x329da8=_0x329da8-0x94;const _0x3d40f0=_0x3d40();let _0x53a54a=_0x3d40f0[_0x329da8];return _0x53a54a;}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',_0x1045e2(0xed)),AUTH_ORIGIN_PATH=join(homedir(),_0x1045e2(0x10d),'auth-origin.txt');export async function getMcpAuthOrigin(){const _0x43f7d8=_0x1045e2,_0x2e2cc4={'kfIef':'utf-8','tpeDw':function(_0x5a575c,_0x415b05){return _0x5a575c||_0x415b05;}};try{const _0x2a1c94=(await readFile(AUTH_ORIGIN_PATH,_0x2e2cc4[_0x43f7d8(0xbf)]))['trim']();return _0x2e2cc4[_0x43f7d8(0xbd)](_0x2a1c94,null);}catch{return null;}}export async function mcpBootstrap(){const _0x5baec3=_0x1045e2,_0x1f0432={'jmKQq':function(_0x4adb46,_0x55ff14){return _0x4adb46(_0x55ff14);},'eiydO':function(_0x4f8496,_0x4a88b9){return _0x4f8496===_0x4a88b9;},'DdUBU':function(_0x16b36d){return _0x16b36d();},'YuvFI':function(_0x2ead16,_0x5f50c4){return _0x2ead16(_0x5f50c4);},'BBulL':function(_0x14d9e6,_0x5bef37,_0x49a482){return _0x14d9e6(_0x5bef37,_0x49a482);}},_0x686fb1=getMcpAuthUrl();currentOrigin=_0x686fb1;const _0x3dbd8a=process['stdout'][_0x5baec3(0xf2)]??![];console['log']('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x686fb1+'\x0a');const _0x233a46=await _0x1f0432[_0x5baec3(0xd4)](tryUnauthenticated,_0x686fb1);let _0x537919=null;if(_0x1f0432[_0x5baec3(0xd0)](_0x233a46,'proxied'))_0x537919='';else{_0x537919=await _0x1f0432['DdUBU'](loadCachedToken);if(!_0x537919){if(!_0x3dbd8a)throw new Error('MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a'+_0x5baec3(0x9d));_0x537919=await _0x1f0432[_0x5baec3(0x123)](oauthFlow,_0x686fb1);}}await _0x1f0432['BBulL'](callGetCliToken,_0x686fb1,_0x537919);}async function tryUnauthenticated(_0x2af8fc){const _0xc187c9=_0x1045e2,_0x48383b={'jndAH':function(_0x4b149e,_0x3d539f,_0x141391){return _0x4b149e(_0x3d539f,_0x141391);},'Hivlx':'application/json','Etobu':'application/json,\x20text/event-stream','BesHI':'2025-03-26','PLFcm':_0xc187c9(0xb7),'iGXYH':function(_0xc8bd79,_0x4335da){return _0xc8bd79===_0x4335da;},'cKVfc':'needs-oauth'},_0xe2cafb=await _0x48383b[_0xc187c9(0xb9)](fetch,_0x2af8fc,{'method':'POST','headers':{'Content-Type':_0x48383b['Hivlx'],'Accept':_0x48383b[_0xc187c9(0xa2)]},'body':JSON[_0xc187c9(0xd7)]({'jsonrpc':'2.0','id':0x1,'method':_0xc187c9(0xe8),'params':{'protocolVersion':_0x48383b[_0xc187c9(0xc6)],'capabilities':{},'clientInfo':{'name':_0xc187c9(0xe7),'version':_0x48383b[_0xc187c9(0x112)]}}})});if(_0xe2cafb['ok'])return await _0xe2cafb['text'](),'proxied';if(_0x48383b[_0xc187c9(0xd5)](_0xe2cafb[_0xc187c9(0xc7)],0x191))return await _0xe2cafb['text'](),_0x48383b['cKVfc'];const _0x4bc43c=await _0xe2cafb['text']();throw new Error(_0xc187c9(0x111)+_0xe2cafb[_0xc187c9(0xc7)]+':\x20'+_0x4bc43c);}class OAuthTimeoutError extends Error{constructor(_0x150866){super(_0x150866),this['name']='OAuthTimeoutError';}}function _0x3d40(){const _0x35ed69=['start','BXQpI','split','text/html','BesHI','status','UUrEm','dCzay','data:','\x0aUnexpected\x20response\x20structure:','listen','Server\x20returned\x20error:\x20','YAelJ','writeHead','eiydO','jaQmS','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','error','jmKQq','iGXYH','set','stringify','xdg-open','\x20done','6FfyEdx','Ranger\x20CLI','cNlOq','authorization_servers','refresh.txt','/callback','HTTP\x20','auth-origin.txt','BFggX','Not\x20found','xtjkp','open','4043615srzMQu','ranger-cli','initialize','dvrVW','DSBeM','uhscl','log','mcp-oauth-tokens.json','accessToken','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','/.well-known/oauth-authorization-server','xozfb','isTTY','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','HiQwe','BFGxP','cntMf','mxfmD','write','47594HQMRUg','2.0','client_id','YgGuS','type','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','origin','uTjUz','utf-8','update','startsWith','Exchanging\x20authorization\x20code...','jCQGa','OAuth\x20error:\x20','state','\x0aToken\x20written\x20to\x20','access_token','authorization_endpoint','token','searchParams','.ranger','Initializing\x20MCP\x20session...','cwIIz','code','MCP\x20server\x20returned\x20HTTP\x20','PLFcm','DQyTu','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a','end','content','qnUlX','get','PFpYZ','content-type','JYYRL','6614504Wdtvxr','toString','MbpdZ','application/json','1387738rWTkVv','bGIWo','parse','YuvFI','application/x-www-form-urlencoded','expiresAt','127.0.0.1','resource','UdPBl','OKYjH','result','base64url','clientId','qnekQ','3970365vAhrxE','dYwZN','15144606bUwkum','MLkpK','<html><body><h2>Authentication\x20failed</h2><p>','json','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','10zomiow','Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','message','HiecP','219YlDJcr','PqCGa','Etobu','eazvy','HLQHu','closeAllConnections','28810727ckUgkh','/.well-known/oauth-protected-resource','tools/call','vIvSG','S256','sha256','8IvgCom','text','slice','http://localhost:','nVmXO','includes','then','POST','vfwaG','PbfQw','close','1.0.0','IPjUk','jndAH','ZJrCo','authorization_code','Discovering\x20authorization\x20server...','tpeDw','hex','kfIef','length','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>'];_0x3d40=function(){return _0x35ed69;};return _0x3d40();}async function oauthFlow(_0x1e76af){const _0x39fb26=_0x1045e2,_0x15d254={'jFfNS':function(_0x46bedb,_0x519b1c){return _0x46bedb(_0x519b1c);},'xtjkp':function(_0x29a038,_0x1e5516){return _0x29a038 instanceof _0x1e5516;},'IPjUk':function(_0x14a4ed){return _0x14a4ed();}};try{return await _0x15d254['jFfNS'](oauthFlowAttempt,_0x1e76af);}catch(_0x49c8ce){if(_0x15d254[_0x39fb26(0xe4)](_0x49c8ce,OAuthTimeoutError)&&await _0x15d254[_0x39fb26(0xb8)](loadCachedClient))return console[_0x39fb26(0xec)]('\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'),await clearCachedClient(),await oauthFlowAttempt(_0x1e76af);throw _0x49c8ce;}}async function oauthFlowAttempt(_0x5bc01c){const _0x409a4c=_0x1045e2,_0x7cebca={'Uqdgv':_0x409a4c(0xbc),'gBPYz':_0x409a4c(0xfe),'Tuxrz':function(_0x57567d){return _0x57567d();},'PRItk':_0x409a4c(0xdb),'MfUQZ':'authorization_code','dCzay':_0x409a4c(0x110),'fDrMO':'none','UdPBl':_0x409a4c(0xd9),'jCQGa':function(_0x3c8eaf,_0x381b01){return _0x3c8eaf(_0x381b01);},'HGOnm':_0x409a4c(0xbe),'qnUlX':'response_type','vWCEo':'redirect_uri','eazvy':'resource','qWXsx':'\x0aOpening\x20browser\x20for\x20authentication...','PbfQw':function(_0x464c1e,_0x15d3b9){return _0x464c1e(_0x15d3b9);},'dYwZN':'client_secret','HiecP':function(_0x4dded6,_0x35bc1a,_0x2bdd34){return _0x4dded6(_0x35bc1a,_0x2bdd34);},'UUrEm':_0x409a4c(0x124)},_0x133e39=_0x5bc01c['replace'](/\/mcp$/,'');process['stdout']['write'](_0x7cebca['Uqdgv']);const _0x2a1ad6=await fetch(_0x133e39+_0x409a4c(0xa7));if(!_0x2a1ad6['ok'])throw new Error(_0x7cebca['gBPYz']);const _0x267a0c=await _0x2a1ad6[_0x409a4c(0x9a)](),_0xcaa24a=_0x267a0c[_0x409a4c(0xdd)]?.[0x0];if(!_0xcaa24a)throw new Error(_0x409a4c(0xf3));console[_0x409a4c(0xec)]('\x20'+_0xcaa24a);const _0x5b98c0=await fetchAuthServerMetadata(_0xcaa24a);let _0x2bc87f,_0x529d1f;const _0xdd37f1=await _0x7cebca['Tuxrz'](loadCachedClient);if(_0xdd37f1)_0x2bc87f=_0xdd37f1[_0x409a4c(0x12c)],_0x529d1f=_0xdd37f1['clientSecret'];else{if(_0x5b98c0['registration_endpoint']){process['stdout'][_0x409a4c(0xf8)]('Registering\x20OAuth\x20client...');const _0x47897c=await fetch(_0x5b98c0['registration_endpoint'],{'method':_0x409a4c(0xb3),'headers':{'Content-Type':_0x409a4c(0x11f)},'body':JSON['stringify']({'client_name':_0x7cebca['PRItk'],'redirect_uris':['http://localhost:'+CALLBACK_PORT+'/callback'],'grant_types':[_0x7cebca['MfUQZ'],'refresh_token'],'response_types':[_0x7cebca[_0x409a4c(0xc9)]],'token_endpoint_auth_method':_0x7cebca['fDrMO']})});if(!_0x47897c['ok']){const _0x58c822=await _0x47897c[_0x409a4c(0xad)]();throw new Error('Client\x20registration\x20failed:\x20'+_0x58c822);}const _0x1a4e9c=await _0x47897c['json']();_0x2bc87f=_0x1a4e9c[_0x409a4c(0xfb)],_0x529d1f=_0x1a4e9c['client_secret'],await saveCachedClient(_0x2bc87f,_0x529d1f),console['log'](_0x7cebca[_0x409a4c(0x128)]);}else throw new Error('Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found');}const _0x117137=_0x7cebca[_0x409a4c(0x105)](randomBytes,0x20)[_0x409a4c(0x11d)]('base64url'),_0x209158=_0x7cebca[_0x409a4c(0x105)](createHash,_0x409a4c(0xab))[_0x409a4c(0x102)](_0x117137)['digest'](_0x409a4c(0x12b)),_0x510ed0=randomBytes(0x10)['toString'](_0x7cebca['HGOnm']),_0x3ae28b=new URL(_0x5b98c0[_0x409a4c(0x10a)]);_0x3ae28b['searchParams']['set'](_0x7cebca[_0x409a4c(0x117)],'code'),_0x3ae28b[_0x409a4c(0x10c)][_0x409a4c(0xd6)]('client_id',_0x2bc87f),_0x3ae28b[_0x409a4c(0x10c)]['set'](_0x7cebca['vWCEo'],'http://localhost:'+CALLBACK_PORT+_0x409a4c(0xdf)),_0x3ae28b[_0x409a4c(0x10c)][_0x409a4c(0xd6)]('code_challenge',_0x209158),_0x3ae28b['searchParams'][_0x409a4c(0xd6)]('code_challenge_method',_0x409a4c(0xaa)),_0x3ae28b[_0x409a4c(0x10c)][_0x409a4c(0xd6)](_0x409a4c(0x107),_0x510ed0);_0x267a0c[_0x409a4c(0x127)]&&_0x3ae28b['searchParams'][_0x409a4c(0xd6)](_0x7cebca[_0x409a4c(0xa3)],_0x267a0c[_0x409a4c(0x127)]);console['log'](_0x7cebca['qWXsx']),console['log'](_0x409a4c(0x114)+_0x3ae28b[_0x409a4c(0x11d)]()+'\x0a'),await _0x7cebca[_0x409a4c(0xb5)](openBrowser,_0x3ae28b['toString']());const _0x2f01a4=await waitForCallback(_0x510ed0);process['stdout']['write'](_0x409a4c(0x104));const _0x1e615b=new URLSearchParams({'grant_type':_0x409a4c(0xbb),'code':_0x2f01a4,'redirect_uri':_0x409a4c(0xaf)+CALLBACK_PORT+'/callback','client_id':_0x2bc87f,'code_verifier':_0x117137});_0x529d1f&&_0x1e615b['set'](_0x7cebca[_0x409a4c(0x96)],_0x529d1f);_0x267a0c[_0x409a4c(0x127)]&&_0x1e615b[_0x409a4c(0xd6)](_0x7cebca[_0x409a4c(0xa3)],_0x267a0c['resource']);const _0x1de761=await _0x7cebca[_0x409a4c(0x9f)](fetch,_0x5b98c0['token_endpoint'],{'method':'POST','headers':{'Content-Type':_0x7cebca[_0x409a4c(0xc8)]},'body':_0x1e615b});if(!_0x1de761['ok']){const _0xdfa483=await _0x1de761['text']();throw new Error('Token\x20exchange\x20failed:\x20'+_0xdfa483);}const _0x31ba64=await _0x1de761['json']();return console['log']('\x20done'),await saveCachedToken(_0x31ba64[_0x409a4c(0x109)],_0x31ba64['refresh_token'],_0x31ba64['expires_in']),_0x31ba64['access_token'];}async function callGetCliToken(_0x557983,_0x537bac){const _0x1587ef=_0x1045e2,_0x2e8125={'bGIWo':'application/json,\x20text/event-stream','jaQmS':'Authorization','YAelJ':_0x1587ef(0x10e),'nllED':'2.0','EFNwe':_0x1587ef(0xe7),'vZtPN':'Requesting\x20CLI\x20token...','MnDem':function(_0x40a434,_0x5056c7){return _0x40a434(_0x5056c7);},'hKyoE':_0x1587ef(0xcb),'BFggX':_0x1587ef(0xef),'DaFDq':_0x1587ef(0x10d),'GZpeS':_0x1587ef(0xde),'PIfrO':function(_0x46510a,_0x3d712b,_0x16aef8){return _0x46510a(_0x3d712b,_0x16aef8);},'TgUzq':function(_0x2a2003,_0x2f0bf6,_0x521f1b,_0x4e8915){return _0x2a2003(_0x2f0bf6,_0x521f1b,_0x4e8915);},'HLQHu':function(_0xdea220,_0x178564,_0xe59ce9,_0x2e24fc){return _0xdea220(_0x178564,_0xe59ce9,_0x2e24fc);},'ZJrCo':function(_0x324091,_0xb983b7,_0x29b7c2){return _0x324091(_0xb983b7,_0x29b7c2);},'LsDnK':'Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a'},_0x398090={'Content-Type':'application/json','Accept':_0x2e8125[_0x1587ef(0x121)]};_0x537bac&&(_0x398090[_0x2e8125[_0x1587ef(0xd1)]]='Bearer\x20'+_0x537bac);const _0x18ba5a=async _0x5992fa=>{const _0x4586ed=_0x1587ef,_0x539ac4=await fetch(_0x557983,{'method':_0x4586ed(0xb3),'headers':_0x398090,'body':JSON['stringify'](_0x5992fa)});if(!_0x539ac4['ok']){const _0x27d779=await _0x539ac4[_0x4586ed(0xad)]();throw new Error(_0x4586ed(0xe0)+_0x539ac4[_0x4586ed(0xc7)]+':\x20'+_0x27d779);}return parseResponse(_0x539ac4);};process['stdout']['write'](_0x2e8125[_0x1587ef(0xce)]);const _0x45cb26=await _0x18ba5a({'jsonrpc':_0x2e8125['nllED'],'id':0x1,'method':_0x1587ef(0xe8),'params':{'protocolVersion':'2025-03-26','capabilities':{},'clientInfo':{'name':_0x2e8125['EFNwe'],'version':_0x1587ef(0xb7)}}});if(_0x45cb26[_0x1587ef(0xd3)])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x45cb26[_0x1587ef(0xd3)]['message']??JSON[_0x1587ef(0xd7)](_0x45cb26['error'])));console[_0x1587ef(0xec)](_0x1587ef(0xd9)),await fetch(_0x557983,{'method':_0x1587ef(0xb3),'headers':_0x398090,'body':JSON['stringify']({'jsonrpc':_0x2e8125['nllED'],'method':'notifications/initialized'})})[_0x1587ef(0xb2)](_0x1a02cf=>_0x1a02cf[_0x1587ef(0xad)]()),process['stdout']['write'](_0x2e8125['vZtPN']);const _0x25723c=await _0x2e8125['MnDem'](_0x18ba5a,{'jsonrpc':_0x1587ef(0xfa),'id':0x2,'method':_0x1587ef(0xa8),'params':{'name':'get_cli_token','arguments':{}}});if(_0x25723c[_0x1587ef(0xd3)])throw new Error('get_cli_token\x20failed:\x20'+(_0x25723c['error'][_0x1587ef(0x9e)]??JSON[_0x1587ef(0xd7)](_0x25723c['error'])));console['log'](_0x1587ef(0xd9));const _0x4c499f=extractToken(_0x25723c[_0x1587ef(0x12a)]);if(!_0x4c499f){console[_0x1587ef(0xd3)](_0x2e8125['hKyoE']),console['error'](JSON[_0x1587ef(0xd7)](_0x25723c['result'],null,0x2));throw new Error(_0x2e8125[_0x1587ef(0xe2)]);}const _0x3d139d=join(homedir(),_0x2e8125['DaFDq']),_0x1ae841=join(_0x3d139d,_0x2e8125['GZpeS']);await _0x2e8125['PIfrO'](mkdir,_0x3d139d,{'recursive':!![]}),await _0x2e8125['TgUzq'](writeFile,_0x1ae841,_0x4c499f,{'mode':0x180}),await _0x2e8125[_0x1587ef(0xa4)](writeFile,_0x2e8125[_0x1587ef(0xba)](join,_0x3d139d,_0x1587ef(0xe1)),_0x557983,{'mode':0x180}),console['log'](_0x1587ef(0x108)+_0x1ae841),console['log'](_0x2e8125['LsDnK']);}async function fetchAuthServerMetadata(_0x274435){const _0x3843d3=_0x1045e2,_0x5f1669=_0x274435+_0x3843d3(0xf0),_0x235566=await fetch(_0x5f1669);if(!_0x235566['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x5f1669+':\x20'+_0x235566['status']);return _0x235566[_0x3843d3(0x9a)]();}function waitForCallback(_0x15f879){const _0x2e337a=_0x1045e2,_0x4d2e2e={'BFGxP':function(_0xc93888,_0x58cb63){return _0xc93888!==_0x58cb63;},'HiQwe':_0x2e337a(0xd3),'DQyTu':function(_0x3527cb,_0x5c2240){return _0x3527cb!==_0x5c2240;},'JYYRL':function(_0x14c72b,_0x45d4a7){return _0x14c72b(_0x45d4a7);},'PEiXn':_0x2e337a(0x126)};return new Promise((_0x59e2a9,_0x2b4cbe)=>{const _0x433202=_0x2e337a,_0x20bf68={'MbpdZ':function(_0x44a2f7){return _0x44a2f7();},'uhscl':function(_0x4b6b1e,_0x1fac6d){return _0x4b6b1e(_0x1fac6d);},'BnYer':_0x433202(0x9b),'cNlOq':function(_0x2880bd,_0x5c0d1a){const _0x571a0e=_0x433202;return _0x4d2e2e[_0x571a0e(0xf5)](_0x2880bd,_0x5c0d1a);},'umMeI':_0x433202(0xe3),'qnekQ':_0x433202(0x110),'dvrVW':_0x433202(0x107),'mxfmD':_0x4d2e2e[_0x433202(0xf4)],'liuvX':'error_description','xozfb':_0x433202(0xc5),'OKYjH':function(_0xd370bd,_0x4d8f65){const _0x4243c4=_0x433202;return _0x4d2e2e[_0x4243c4(0x113)](_0xd370bd,_0x4d8f65);},'PqCGa':'<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','BXQpI':function(_0x2937ba,_0xf2cef8){const _0xb0950b=_0x433202;return _0x4d2e2e[_0xb0950b(0x11b)](_0x2937ba,_0xf2cef8);},'POWEP':function(_0x31535b,_0x53b4ed){return _0x4d2e2e['JYYRL'](_0x31535b,_0x53b4ed);}},_0x5109de=()=>{const _0x1e6302=_0x433202;_0x3971a5[_0x1e6302(0xa5)](),_0x3971a5[_0x1e6302(0xb6)]();},_0x3985a8=setTimeout(()=>{const _0x41b031=_0x433202;_0x20bf68['MbpdZ'](_0x5109de),_0x20bf68[_0x41b031(0xeb)](_0x2b4cbe,new OAuthTimeoutError(_0x20bf68['BnYer']));},0x1d4c0),_0x3971a5=_0x4d2e2e[_0x433202(0x11b)](createServer,(_0x2ec380,_0x3fbd2a)=>{const _0x40b9c0=_0x433202,_0x53115f=new URL(_0x2ec380['url']??'/',_0x40b9c0(0xaf)+CALLBACK_PORT);if(_0x20bf68[_0x40b9c0(0xdc)](_0x53115f['pathname'],'/callback')){_0x3fbd2a[_0x40b9c0(0xcf)](0x194),_0x3fbd2a[_0x40b9c0(0x115)](_0x20bf68['umMeI']);return;}const _0x4664d3=_0x53115f['searchParams']['get'](_0x20bf68[_0x40b9c0(0x94)]),_0xb7adbd=_0x53115f[_0x40b9c0(0x10c)][_0x40b9c0(0x118)](_0x20bf68[_0x40b9c0(0xe9)]),_0x233bb4=_0x53115f[_0x40b9c0(0x10c)]['get'](_0x20bf68[_0x40b9c0(0xf7)]);if(_0x233bb4){const _0x3af0a3=_0x53115f['searchParams']['get'](_0x20bf68['liuvX'])??_0x233bb4;_0x3fbd2a[_0x40b9c0(0xcf)](0xc8,{'Content-Type':_0x20bf68[_0x40b9c0(0xf1)]}),_0x3fbd2a['end'](_0x40b9c0(0x99)+_0x3af0a3+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),clearTimeout(_0x3985a8),_0x20bf68[_0x40b9c0(0x11e)](_0x5109de),_0x20bf68['uhscl'](_0x2b4cbe,new Error(_0x40b9c0(0x106)+_0x3af0a3));return;}if(!_0x4664d3||_0x20bf68[_0x40b9c0(0x129)](_0xb7adbd,_0x15f879)){_0x3fbd2a['writeHead'](0x190,{'Content-Type':_0x20bf68['xozfb']}),_0x3fbd2a[_0x40b9c0(0x115)](_0x20bf68[_0x40b9c0(0xa1)]);return;}_0x3fbd2a['writeHead'](0xc8,{'Content-Type':_0x20bf68[_0x40b9c0(0xf1)]}),_0x3fbd2a['end'](_0x40b9c0(0xc1)),_0x20bf68[_0x40b9c0(0xc3)](clearTimeout,_0x3985a8),_0x20bf68[_0x40b9c0(0x11e)](_0x5109de),_0x20bf68['POWEP'](_0x59e2a9,_0x4664d3);});_0x3971a5[_0x433202(0xcc)](CALLBACK_PORT,_0x4d2e2e['PEiXn']);});}async function openBrowser(_0x4d7f3d){const _0x48a8fb=_0x1045e2,_0x55f0e8={'qAVmJ':'darwin','pxMOg':_0x48a8fb(0xe5),'uTjUz':_0x48a8fb(0xc2)},_0xef2e54=process['platform']===_0x55f0e8['qAVmJ']?_0x55f0e8['pxMOg']:process['platform']==='win32'?_0x55f0e8[_0x48a8fb(0x100)]:_0x48a8fb(0xd8);exec(_0xef2e54+'\x20\x22'+_0x4d7f3d+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x1ab910=_0x1045e2,_0x4d8fa6={'nVmXO':function(_0x466fc3,_0x258e86){return _0x466fc3!==_0x258e86;},'hpQbs':function(_0x2824b2,_0x33ce2e){return _0x2824b2>_0x33ce2e;}};try{const _0x28fd94=JSON[_0x1ab910(0x122)](await readFile(TOKEN_CACHE_PATH,_0x1ab910(0x101)));if(_0x28fd94[_0x1ab910(0xff)]&&_0x4d8fa6[_0x1ab910(0xb0)](_0x28fd94[_0x1ab910(0xff)],currentOrigin))return null;if(_0x28fd94[_0x1ab910(0x125)]&&_0x4d8fa6['hpQbs'](Date['now'](),_0x28fd94['expiresAt']))return null;return _0x28fd94['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x1ab666,_0x5729d0,_0x3fafe3){const _0x51583b=_0x1045e2,_0x1c4abf={'HxkSb':function(_0x426620,_0x309434){return _0x426620*_0x309434;},'tltos':_0x51583b(0x10d)},_0x417c5c=await loadCachedData(),_0x120670={..._0x417c5c,'origin':currentOrigin,'accessToken':_0x1ab666,'refreshToken':_0x5729d0??_0x417c5c?.['refreshToken'],'expiresAt':_0x3fafe3?Date['now']()+_0x1c4abf['HxkSb'](_0x3fafe3,0x3e8):undefined};await mkdir(join(homedir(),_0x1c4abf['tltos']),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON[_0x51583b(0xd7)](_0x120670),{'mode':0x180});}async function loadCachedClient(){const _0x39be2b=_0x1045e2,_0x5b1dc8={'cunLp':function(_0x57a28d){return _0x57a28d();}},_0x3fe5f2=await _0x5b1dc8['cunLp'](loadCachedData);if(_0x3fe5f2?.['origin']&&_0x3fe5f2['origin']!==currentOrigin)return null;return _0x3fe5f2?.[_0x39be2b(0x12c)]?{'clientId':_0x3fe5f2[_0x39be2b(0x12c)],'clientSecret':_0x3fe5f2['clientSecret']}:null;}async function clearCachedClient(){const _0xbb505={'RyXsw':function(_0x3cbd3d,_0x3c9bf6,_0x1bdfd9,_0x5c4395){return _0x3cbd3d(_0x3c9bf6,_0x1bdfd9,_0x5c4395);}},_0x10d0cf=await loadCachedData();if(!_0x10d0cf)return;const {clientId:_0xfd0251,clientSecret:_0x26f3fe,..._0x2db53d}=_0x10d0cf;await _0xbb505['RyXsw'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x2db53d),{'mode':0x180});}async function saveCachedClient(_0x3f36ad,_0x162c9c){const _0x180b0a=_0x1045e2,_0x23b9d9={'GBtiF':function(_0xe0df25){return _0xe0df25();},'MLkpK':function(_0x55e4ba,_0x1c3d63,_0x16236a){return _0x55e4ba(_0x1c3d63,_0x16236a);},'cntMf':function(_0x8a0652,_0x4cefb3,_0x1d4e89,_0xecd131){return _0x8a0652(_0x4cefb3,_0x1d4e89,_0xecd131);}},_0x10ddc5=await _0x23b9d9['GBtiF'](loadCachedData),_0x4442bc={..._0x10ddc5,'origin':currentOrigin,'accessToken':_0x10ddc5?.[_0x180b0a(0xee)]??'','clientId':_0x3f36ad,'clientSecret':_0x162c9c};await mkdir(_0x23b9d9[_0x180b0a(0x98)](join,homedir(),'.ranger'),{'recursive':!![]}),await _0x23b9d9[_0x180b0a(0xf6)](writeFile,TOKEN_CACHE_PATH,JSON[_0x180b0a(0xd7)](_0x4442bc),{'mode':0x180});}async function loadCachedData(){const _0x4f9d89=_0x1045e2,_0x2a5788={'cwIIz':function(_0x5c326a,_0x4bd89b,_0x1eea0c){return _0x5c326a(_0x4bd89b,_0x1eea0c);},'vfwaG':'utf-8'};try{return JSON['parse'](await _0x2a5788[_0x4f9d89(0x10f)](readFile,TOKEN_CACHE_PATH,_0x2a5788[_0x4f9d89(0xb4)]));}catch{return null;}}async function parseResponse(_0x356d04){const _0x52dbc3=_0x1045e2,_0x5d8795={'yLibr':_0x52dbc3(0xca),'PFpYZ':function(_0x5a1594,_0x54f0c4){return _0x5a1594!==_0x54f0c4;}},_0x5609e6=_0x356d04['headers']['get'](_0x52dbc3(0x11a))??'';if(_0x5609e6[_0x52dbc3(0xb1)]('text/event-stream')){const _0x517684=await _0x356d04[_0x52dbc3(0xad)]();for(const _0x370e1b of _0x517684[_0x52dbc3(0xc4)]('\x0a')){const _0x1f4524=_0x370e1b['trim']();if(_0x1f4524[_0x52dbc3(0x103)]('data:')){const _0x542bdb=_0x1f4524[_0x52dbc3(0xae)](_0x5d8795['yLibr'][_0x52dbc3(0xc0)])['trim']();if(!_0x542bdb)continue;try{const _0x3bf80e=JSON['parse'](_0x542bdb);if(_0x5d8795[_0x52dbc3(0x119)](_0x3bf80e['id'],undefined)||_0x3bf80e['error'])return _0x3bf80e;}catch{}}}throw new Error(_0x52dbc3(0xd2));}return _0x356d04['json']();}function extractToken(_0x35d4f6){const _0x21a30a=_0x1045e2,_0x489437={'YgGuS':'Unknown\x20error','DSBeM':function(_0x3ff530,_0x126c85){return _0x3ff530===_0x126c85;},'vIvSG':'string'};if(!_0x35d4f6)return null;const _0x507304=_0x35d4f6['structuredContent'];if(_0x507304?.[_0x21a30a(0x10b)]&&typeof _0x507304[_0x21a30a(0x10b)]==='string')return _0x507304[_0x21a30a(0x10b)];if(_0x35d4f6['isError']){const _0x30e666=_0x35d4f6[_0x21a30a(0x116)];throw new Error(_0x21a30a(0xcd)+(_0x30e666?.[0x0]?.['text']??_0x489437[_0x21a30a(0xfc)]));}const _0x4f44ef=_0x35d4f6[_0x21a30a(0x116)];if(_0x4f44ef)for(const _0x5e6ccc of _0x4f44ef){if(_0x5e6ccc[_0x21a30a(0xfd)]==='text'&&_0x5e6ccc['text']){try{const _0x42cb39=JSON[_0x21a30a(0x122)](_0x5e6ccc[_0x21a30a(0xad)]);if(_0x489437[_0x21a30a(0xea)](typeof _0x42cb39?.['token'],_0x489437[_0x21a30a(0xa9)]))return _0x42cb39[_0x21a30a(0x10b)];}catch{}const _0x22009f=_0x5e6ccc['text']['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x22009f)return _0x22009f[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x1ddf27,_0x5cbb0e){var _0x4c27ca=_0xa916,_0x171984=_0x1ddf27();while(!![]){try{var _0x1eb000=parseInt(_0x4c27ca(0x152))/0x1+parseInt(_0x4c27ca(0x14c))/0x2*(parseInt(_0x4c27ca(0x150))/0x3)+parseInt(_0x4c27ca(0x159))/0x4+parseInt(_0x4c27ca(0x15a))/0x5*(parseInt(_0x4c27ca(0x14d))/0x6)+-parseInt(_0x4c27ca(0x155))/0x7+parseInt(_0x4c27ca(0x158))/0x8+-parseInt(_0x4c27ca(0x151))/0x9*(parseInt(_0x4c27ca(0x15b))/0xa);if(_0x1eb000===_0x5cbb0e)break;else _0x171984['push'](_0x171984['shift']());}catch(_0x89d282){_0x171984['push'](_0x171984['shift']());}}}(_0x42d9,0x82717));function _0xa916(_0x227a57,_0x646bd0){_0x227a57=_0x227a57-0x14b;var _0x42d90b=_0x42d9();var _0xa916e9=_0x42d90b[_0x227a57];return _0xa916e9;}function _0x42d9(){var _0x1b1276=['76NYLjUI','78bUWKQn','ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a','bZPfV','15735vkDZLo','27Dcdoth','967100aIdSZw','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','4106599qzONXw','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.','2563560RrgGGT','783852xSTxRd','265325dcSCRs','4172370ZPBwkJ','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','exit','yyKpQ','Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a'];_0x42d9=function(){return _0x1b1276;};return _0x42d9();}export async function migrateProfile(_0x56f371,_0x3f42d4){var _0x4b35ee=_0xa916,_0x1864fd={'bZPfV':function(_0x1294a6,_0x46371d){return _0x1294a6+_0x46371d;},'yyKpQ':_0x4b35ee(0x15c)};console['error'](_0x1864fd[_0x4b35ee(0x14f)](_0x1864fd[_0x4b35ee(0x14f)](_0x1864fd[_0x4b35ee(0x14f)](_0x4b35ee(0x14e)+'\x0a'+_0x4b35ee(0x156)+_0x4b35ee(0x153),'\x0a')+_0x1864fd[_0x4b35ee(0x15e)],_0x4b35ee(0x154))+'\x0a',_0x4b35ee(0x14b))+_0x4b35ee(0x157)),process[_0x4b35ee(0x15d)](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x57e080,_0x25fbab){const _0x338c99=_0x42be,_0x2ba900=_0x57e080();while(!![]){try{const _0x542310=parseInt(_0x338c99(0x1b1))/0x1+parseInt(_0x338c99(0x1c7))/0x2*(parseInt(_0x338c99(0x1af))/0x3)+-parseInt(_0x338c99(0x1b8))/0x4+-parseInt(_0x338c99(0x1c6))/0x5+parseInt(_0x338c99(0x1d6))/0x6*(-parseInt(_0x338c99(0x1d0))/0x7)+-parseInt(_0x338c99(0x1c2))/0x8+parseInt(_0x338c99(0x1c3))/0x9;if(_0x542310===_0x25fbab)break;else _0x2ba900['push'](_0x2ba900['shift']());}catch(_0x4066d8){_0x2ba900['push'](_0x2ba900['shift']());}}}(_0x557f,0x95c26));function _0x557f(){const _0x37920b=['error','1609000TClktn','10mPrXRi','plugin','ranger@trailhead','add','User\x20(available\x20in\x20all\x20your\x20projects)','gzfVH','NLfso','project','❌\x20Failed\x20to\x20install\x20plugin:','237230XPgMEn','PtURd','push','list','HFizk','prompt','180uHgNAZ','tZrBt','log','rbfPE','cgzUj','ezRIo','wantsSkillup','OZVsY','578763IstnZC','tHbQo','723179HqgvMi','✓\x20Marketplace\x20already\x20added','YQiFh','✓\x20Claude\x20Code\x20plugin\x20enabled','ranger-testing/trailhead','LdENS','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','4755244esftkr','--scope','Would\x20you\x20like\x20to\x20install\x20skills?','Fxzrz','pluginScope','ranger','\x0a📦\x20Claude\x20Code\x20Plugin\x0a','SKILL.md','success','hHilb','7816296zgvxJr','21869802vkxkQo','user'];_0x557f=function(){return _0x37920b;};return _0x557f();}import{join}from'path';import{existsSync}from'fs';import _0x29153c from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';function _0x42be(_0x314a4e,_0x4f985d){_0x314a4e=_0x314a4e-0x1ab;const _0x557fbb=_0x557f();let _0x42bea2=_0x557fbb[_0x314a4e];return _0x42bea2;}export async function ensureClaudePlugin(_0x1c5cfe){const _0x3d89c0=_0x42be,_0x45df68={'tZrBt':_0x3d89c0(0x1c9),'rvnUX':function(_0x9a6d57,_0x46cfad){return _0x9a6d57(_0x46cfad);},'HCFRy':'.claude','TNTdE':_0x3d89c0(0x1d3),'tWERV':'Where\x20should\x20the\x20plugin\x20be\x20installed?','WDjoY':_0x3d89c0(0x1cb),'NLfso':'user','ucLUW':'Project\x20(shared\x20with\x20team\x20via\x20git)','ezRIo':_0x3d89c0(0x1ce),'ITWme':function(_0x4d3d6c,_0x1af95d){return _0x4d3d6c(_0x1af95d);},'HFizk':'trailhead','beidT':_0x3d89c0(0x1ca),'LdENS':'\x0aYou\x20can\x20install\x20manually\x20with:','Zgjwp':'\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','KciIn':function(_0x1c9852,_0x4d3f17,_0x4a24f4){return _0x1c9852(_0x4d3f17,_0x4a24f4);},'PtMMF':_0x3d89c0(0x1c8),'hHilb':_0x3d89c0(0x1cf),'lIwSk':'✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','Ztaqb':'enable','Fxzrz':function(_0x290b86){return _0x290b86();},'PtURd':'⚠\x20Failed\x20to\x20enable\x20plugin:','tHbQo':_0x3d89c0(0x1b4)},_0x64465e=await isPluginInstalled(_0x45df68[_0x3d89c0(0x1d7)]);if(_0x64465e)return console['log']('✓\x20Claude\x20Code\x20plugin\x20already\x20installed'),![];const _0x519655=_0x45df68['rvnUX'](existsSync,join(getProjectRoot(),_0x45df68['HCFRy']));let _0x17a375;if(_0x1c5cfe)_0x17a375=_0x1c5cfe;else{if(_0x519655)_0x17a375=_0x3d89c0(0x1ce);else{console['log'](_0x3d89c0(0x1be));const _0x1de658=await _0x29153c[_0x3d89c0(0x1d5)]([{'type':_0x45df68['TNTdE'],'name':_0x3d89c0(0x1bc),'message':_0x45df68['tWERV'],'choices':[{'name':_0x45df68['WDjoY'],'value':_0x45df68['NLfso']},{'name':_0x45df68['ucLUW'],'value':_0x45df68[_0x3d89c0(0x1ac)]}],'default':_0x45df68[_0x3d89c0(0x1cd)]}]);_0x17a375=_0x1de658['pluginScope'];}}console[_0x3d89c0(0x1d8)]('\x0aInstalling\x20Claude\x20Code\x20plugin\x20('+_0x17a375+'\x20level)...\x0a');const _0x4d230d=await _0x45df68['ITWme'](isMarketplaceAdded,_0x45df68[_0x3d89c0(0x1d4)]);let _0x3f651f=_0x4d230d;if(_0x4d230d)console['log'](_0x3d89c0(0x1b2));else{const _0x57dea9=await runClaudeCommand(['plugin','marketplace',_0x45df68['beidT'],_0x3d89c0(0x1b5)]);!_0x57dea9['success']?(console['error']('❌\x20Failed\x20to\x20add\x20marketplace:',_0x57dea9['error']),console['log'](_0x45df68[_0x3d89c0(0x1b6)]),console[_0x3d89c0(0x1d8)](_0x45df68['Zgjwp']),console['log'](_0x3d89c0(0x1b7)+_0x17a375)):_0x3f651f=!![];}if(_0x3f651f){const _0x50904c=await _0x45df68['KciIn'](runClaudeCommand,[_0x45df68['PtMMF'],'install','ranger@trailhead',_0x3d89c0(0x1b9),_0x17a375],{'cwd':_0x17a375==='project'?getProjectRoot():undefined});if(!_0x50904c['success'])console['error'](_0x45df68[_0x3d89c0(0x1c1)],_0x50904c[_0x3d89c0(0x1c5)]),console[_0x3d89c0(0x1d8)](_0x45df68['LdENS']),console['log']('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x17a375);else{console['log'](_0x45df68['lIwSk']);const _0x167af0=['plugin',_0x45df68['Ztaqb'],_0x3d89c0(0x1c9)];_0x17a375===_0x45df68['ezRIo']&&_0x167af0[_0x3d89c0(0x1d2)]('--scope',_0x45df68['ezRIo']);const _0x14b9bf=await runClaudeCommand(_0x167af0,{'captureOutput':!![],'cwd':_0x17a375===_0x45df68['ezRIo']?_0x45df68[_0x3d89c0(0x1bb)](getProjectRoot):undefined}),_0x1c0f51=_0x14b9bf['output']?.['includes']('already\x20enabled');!_0x14b9bf[_0x3d89c0(0x1c0)]&&!_0x1c0f51?console[_0x3d89c0(0x1c5)](_0x45df68[_0x3d89c0(0x1d1)],_0x14b9bf['error']):console[_0x3d89c0(0x1d8)](_0x45df68[_0x3d89c0(0x1b0)]);}}return!![];}export async function ensureClaudeSkills(_0x2de3d1){const _0x162d0c=_0x42be,_0xd91004={'cgzUj':function(_0x52145c,_0x15d118){return _0x52145c(_0x15d118);},'gzfVH':function(_0x271b5f,_0x50b8b1,_0x24c874,_0x11ff05){return _0x271b5f(_0x50b8b1,_0x24c874,_0x11ff05);},'hyKqY':_0x162d0c(0x1c4),'zkoaA':'ranger','QHkNy':'SKILL.md','SICCi':function(_0x201b59,_0x2a5e8f,_0x370875,_0x450adc){return _0x201b59(_0x2a5e8f,_0x370875,_0x450adc);},'OZVsY':_0x162d0c(0x1ce),'xChYD':function(_0x75a615,_0x445e38){return _0x75a615||_0x445e38;},'rbfPE':function(_0x2018d6){return _0x2018d6();},'KLUjX':'.claude','YzqRU':function(_0xc0fede,_0x570b1d){return _0xc0fede(_0x570b1d);},'qWaLL':function(_0x35c8d6,_0xcabdd3){return _0x35c8d6(_0xcabdd3);},'YQiFh':_0x162d0c(0x1ad)},_0xca4ad4=_0xd91004[_0x162d0c(0x1ab)](existsSync,_0xd91004[_0x162d0c(0x1cc)](join,getSkillsDir(_0xd91004['hyKqY']),_0xd91004['zkoaA'],_0xd91004['QHkNy'])),_0x3ea076=_0xd91004['cgzUj'](existsSync,_0xd91004['SICCi'](join,getSkillsDir(_0xd91004['OZVsY']),_0x162d0c(0x1bd),_0x162d0c(0x1bf)));if(_0xd91004['xChYD'](_0xca4ad4,_0x3ea076))return console[_0x162d0c(0x1d8)]('✓\x20Ranger\x20skills\x20already\x20installed'),![];const _0x1a532e=existsSync(join(_0xd91004[_0x162d0c(0x1d9)](getProjectRoot),_0xd91004['KLUjX']));let _0x576a94=!![];if(_0x2de3d1)await _0xd91004['YzqRU'](skillup,{'autoInstall':_0x2de3d1,'suppressUsage':!![]});else{if(_0x1a532e)await _0xd91004['qWaLL'](skillup,{'autoInstall':_0xd91004[_0x162d0c(0x1ae)],'suppressUsage':!![]});else{const _0x1d3017=await _0x29153c['prompt']([{'type':'confirm','name':_0xd91004[_0x162d0c(0x1b3)],'message':_0x162d0c(0x1ba),'default':!![]}]);_0x576a94=_0x1d3017[_0x162d0c(0x1ad)],_0x576a94&&await _0xd91004['YzqRU'](skillup,{'suppressUsage':!![]});}}return _0x576a94;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x41f3c8,_0x1d59be){const _0x369f58=_0xedcd,_0x2e467b=_0x41f3c8();while(!![]){try{const _0x2bcb67=-parseInt(_0x369f58(0x1d8))/0x1*(parseInt(_0x369f58(0x1d0))/0x2)+-parseInt(_0x369f58(0x1d3))/0x3+-parseInt(_0x369f58(0x1dc))/0x4+-parseInt(_0x369f58(0x1ca))/0x5+parseInt(_0x369f58(0x1db))/0x6+-parseInt(_0x369f58(0x1d7))/0x7*(-parseInt(_0x369f58(0x1d4))/0x8)+parseInt(_0x369f58(0x1da))/0x9*(parseInt(_0x369f58(0x1c9))/0xa);if(_0x2bcb67===_0x1d59be)break;else _0x2e467b['push'](_0x2e467b['shift']());}catch(_0x4f375f){_0x2e467b['push'](_0x2e467b['shift']());}}}(_0x3750,0x83186));import{join}from'path';import{existsSync}from'fs';function _0xedcd(_0x419dc7,_0x127f94){_0x419dc7=_0x419dc7-0x1c4;const _0x37509f=_0x3750();let _0xedcdb6=_0x37509f[_0x419dc7];return _0xedcdb6;}import{mkdir,readFile,writeFile}from'fs/promises';import _0x3cfcea from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x2b53c8){const _0x3695bd=_0xedcd,_0x2f9de1={'LheNh':function(_0x465566,_0x299028){return _0x465566(_0x299028);},'PaEYj':function(_0x292153,_0x3858d5,_0x3cf6f5){return _0x292153(_0x3858d5,_0x3cf6f5);},'FkDVz':_0x3695bd(0x1ce),'ZWmoo':'list','mQtjk':_0x3695bd(0x1c6),'gHugN':_0x3695bd(0x1dd),'Yqzur':_0x3695bd(0x1d1),'TeTsp':function(_0x3584e3,_0x2600dd){return _0x3584e3(_0x2600dd);},'uMtsP':_0x3695bd(0x1cf),'JEprh':'https://opencode.ai/config.json','xEulk':_0x3695bd(0x1cb),'DwvOn':function(_0x13404d,_0x38b75d){return _0x13404d(_0x38b75d);},'gIQaB':_0x3695bd(0x1e2)},_0x58b1a8=_0x2f9de1['LheNh'](existsSync,_0x2f9de1['PaEYj'](join,getOpencodeConfigDir('project'),_0x3695bd(0x1cd)));let _0x2011b4;if(_0x2b53c8)_0x2011b4=_0x2b53c8;else{if(_0x58b1a8)_0x2011b4=_0x3695bd(0x1d1);else{console['log'](_0x2f9de1['FkDVz']);const _0x2de156=await _0x3cfcea['prompt']([{'type':_0x2f9de1[_0x3695bd(0x1d6)],'name':'pluginScope','message':_0x3695bd(0x1cc),'choices':[{'name':_0x2f9de1[_0x3695bd(0x1c7)],'value':_0x2f9de1[_0x3695bd(0x1df)]},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x2f9de1[_0x3695bd(0x1c5)]}],'default':_0x2f9de1['gHugN']}]);_0x2011b4=_0x2de156['pluginScope'];}}const _0x53b528=_0x2f9de1['PaEYj'](join,_0x2f9de1[_0x3695bd(0x1c4)](getOpencodeConfigDir,_0x2011b4),_0x3695bd(0x1cd)),_0x556064=_0x2f9de1['uMtsP'],_0x4abbf4=_0x2f9de1[_0x3695bd(0x1d9)];let _0x193ef1={};if(_0x2f9de1[_0x3695bd(0x1c8)](existsSync,_0x53b528))try{const _0x3b00d3=await readFile(_0x53b528,'utf-8');_0x193ef1=JSON['parse'](_0x3b00d3);}catch(_0x3cd005){return console['error'](_0x3695bd(0x1d2)),{'configured':![],'scope':_0x2011b4,'error':'Failed\x20to\x20read\x20opencode.json','details':_0x3cd005};}const _0x214202=Array['isArray'](_0x193ef1['plugin'])?_0x193ef1[_0x3695bd(0x1e0)]:[];if(_0x214202['includes'](_0x556064))return console['log'](_0x2f9de1['xEulk']),{'configured':![],'scope':_0x2011b4};return _0x193ef1[_0x3695bd(0x1de)]=_0x193ef1[_0x3695bd(0x1de)]||_0x4abbf4,_0x193ef1['plugin']=[..._0x214202,_0x556064],await mkdir(_0x2f9de1[_0x3695bd(0x1e1)](getOpencodeConfigDir,_0x2011b4),{'recursive':!![]}),await writeFile(_0x53b528,JSON['stringify'](_0x193ef1,null,0x2)+'\x0a'),console[_0x3695bd(0x1d5)](_0x2f9de1['gIQaB']),{'configured':!![],'scope':_0x2011b4};}function _0x3750(){const _0x1e2b3f=['gHugN','plugin','DwvOn','✓\x20OpenCode\x20plugin\x20configured','TeTsp','Yqzur','User\x20(available\x20in\x20all\x20your\x20projects)','mQtjk','LheNh','10EUPlYX','214840ysJvLp','✓\x20OpenCode\x20plugin\x20already\x20configured','Where\x20should\x20the\x20plugin\x20be\x20installed?','opencode.json','\x0a📦\x20OpenCode\x20Plugin\x0a','@ranger-testing/opencode-plugin','2bLHSFJ','project','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','1771878nAHbgL','8NdynHp','log','ZWmoo','4473266sWYSdh','175475fHHdPs','JEprh','14364603tsIeSQ','494040oBgcGX','3885640bKfXLS','user','$schema'];_0x3750=function(){return _0x1e2b3f;};return _0x3750();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x5f0a(_0xa54145,_0x24d9d9){_0xa54145=_0xa54145-0x7c;var _0x39d332=_0x39d3();var _0x5f0a20=_0x39d332[_0xa54145];return _0x5f0a20;}(function(_0x79ed49,_0x3603f5){var _0x169126=_0x5f0a,_0x17e08e=_0x79ed49();while(!![]){try{var _0x12336d=parseInt(_0x169126(0x89))/0x1*(-parseInt(_0x169126(0x84))/0x2)+parseInt(_0x169126(0x7f))/0x3+-parseInt(_0x169126(0x7d))/0x4+parseInt(_0x169126(0x8b))/0x5+parseInt(_0x169126(0x81))/0x6*(-parseInt(_0x169126(0x7c))/0x7)+-parseInt(_0x169126(0x85))/0x8*(-parseInt(_0x169126(0x8c))/0x9)+parseInt(_0x169126(0x87))/0xa;if(_0x12336d===_0x3603f5)break;else _0x17e08e['push'](_0x17e08e['shift']());}catch(_0x1b8c52){_0x17e08e['push'](_0x17e08e['shift']());}}}(_0x39d3,0x4dc76));export async function setupCi(_0xb14803,_0x3136b0,_0xa9b867){var _0x4d2d39=_0x5f0a,_0xaebc4b={'MyRUA':function(_0x5a38eb,_0x54ca3f){return _0x5a38eb+_0x54ca3f;},'bSgjy':function(_0x27f28c,_0x198485){return _0x27f28c+_0x198485;},'iRJzH':'ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','jOXMi':_0x4d2d39(0x82),'mCtTD':'\x20\x20ranger\x20profile\x20add\x20<name>\x0a','EsyJN':'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','RiLXt':'\x20\x20https://docs.ranger.net/main/concepts/profiles'};console[_0x4d2d39(0x86)](_0xaebc4b['MyRUA'](_0xaebc4b[_0x4d2d39(0x83)](_0xaebc4b[_0x4d2d39(0x83)](_0xaebc4b['bSgjy'](_0xaebc4b[_0x4d2d39(0x88)],'\x0a')+_0xaebc4b[_0x4d2d39(0x8a)]+_0xaebc4b['mCtTD'],'\x0a'),_0xaebc4b['EsyJN']),_0xaebc4b[_0x4d2d39(0x7e)])),process[_0x4d2d39(0x80)](0x1);}function _0x39d3(){var _0x28db73=['MyRUA','58ckRmIV','72nDVuQC','error','2676660zcJkCI','iRJzH','12170vCAhcU','jOXMi','1919335vFtuGM','410931dbqzfk','231308WCikpH','1651228qHhkVq','RiLXt','759489RKljEo','exit','42BjcmwS','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a'];_0x39d3=function(){return _0x28db73;};return _0x39d3();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x19c016,_0x1c33f4){const _0x36322e=_0x38bc,_0x39f3f7=_0x19c016();while(!![]){try{const _0x7a8524=-parseInt(_0x36322e(0x1d2))/0x1*(-parseInt(_0x36322e(0x1bc))/0x2)+-parseInt(_0x36322e(0x1d0))/0x3+parseInt(_0x36322e(0x1eb))/0x4*(-parseInt(_0x36322e(0x1c2))/0x5)+-parseInt(_0x36322e(0x1c4))/0x6*(-parseInt(_0x36322e(0x1e8))/0x7)+parseInt(_0x36322e(0x1df))/0x8*(parseInt(_0x36322e(0x1d9))/0x9)+parseInt(_0x36322e(0x1c1))/0xa+-parseInt(_0x36322e(0x1d4))/0xb*(parseInt(_0x36322e(0x1cf))/0xc);if(_0x7a8524===_0x1c33f4)break;else _0x39f3f7['push'](_0x39f3f7['shift']());}catch(_0x516340){_0x39f3f7['push'](_0x39f3f7['shift']());}}}(_0x4d74,0xd10a4));import{basename}from'path';import _0x2eb216 from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';function _0x4d74(){const _0x3ae615=['21txbMjc','VbDfR','\x20--opencode','232nWzunN','2oHoYhO','\x20successfully!\x0a','\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!','❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','\x20\x203.\x20Run:\x20ranger\x20skillup','10618280YiZybJ','80555dAztxJ','log','2310804umDJKu','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','Where\x20should\x20skills\x20be\x20installed?','✓\x20Found\x20API\x20token','NLCQK','platform','/.claude/skills/','opencode','project-level','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','348vXNkAw','2897838SpRtNS','message','1448254fiKxUg','HYVMP','491480bwxQyR','autoInstall','list','\x0a📦\x20Installing\x20skills...\x0a','user','1413mOVFxj','\x20<your-api-token>','stdout','wRmHb','project','\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','19712CpGlEo','installLevel','/skills/','FpyGQ','suppressUsage','\x20skill','LylRu','\x0a✅\x20Installed\x20','Hjlqt'];_0x4d74=function(){return _0x3ae615;};return _0x4d74();}import{getCurrentVersion}from'./utils/version.js';function _0x38bc(_0x2146a1,_0x208b10){_0x2146a1=_0x2146a1-0x1bc;const _0x4d7432=_0x4d74();let _0x38bc78=_0x4d7432[_0x2146a1];return _0x38bc78;}import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0x447031={}){const _0x3f5a99=_0x38bc,_0x19f446={'HYVMP':'claude','chKDB':_0x3f5a99(0x1bf),'VbDfR':'To\x20get\x20started:','Hjlqt':_0x3f5a99(0x1ce),'FpyGQ':function(_0x1d2e73,_0x51594c){return _0x1d2e73===_0x51594c;},'LylRu':'opencode','NLCQK':'\x20--opencode','vyfTT':_0x3f5a99(0x1c7),'jBGos':function(_0x45f0c6,_0x1f9a2e,_0x2b7e1b){return _0x45f0c6(_0x1f9a2e,_0x2b7e1b);},'pMWmp':_0x3f5a99(0x1cd),'ILula':function(_0x364b8e,_0x55dc1a){return _0x364b8e>_0x55dc1a;},'wRmHb':function(_0x2c9acb,_0x250c15){return _0x2c9acb===_0x250c15;}};console[_0x3f5a99(0x1c3)]('\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a');const _0x1d48fe=_0x447031[_0x3f5a99(0x1c9)]??_0x19f446[_0x3f5a99(0x1d3)],_0x403167=await getToken();if(!_0x403167){console[_0x3f5a99(0x1c3)](_0x19f446['chKDB']),console[_0x3f5a99(0x1c3)](_0x19f446[_0x3f5a99(0x1e9)]),console['log'](_0x19f446[_0x3f5a99(0x1e7)]),console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x19f446['FpyGQ'](_0x1d48fe,_0x19f446[_0x3f5a99(0x1e5)])?_0x3f5a99(0x1ea):'')+_0x3f5a99(0x1da)),console[_0x3f5a99(0x1c3)](_0x3f5a99(0x1c0)+(_0x19f446[_0x3f5a99(0x1e2)](_0x1d48fe,_0x3f5a99(0x1cb))?_0x19f446[_0x3f5a99(0x1c8)]:'')+'\x0a');return;}console['log'](_0x19f446['vyfTT']);const _0x47bbb2=getProjectRoot(),_0x327df4=basename(_0x47bbb2),_0x1153f2=_0x1d48fe===_0x19f446['LylRu']?getOpencodeConfigDir('user')+_0x3f5a99(0x1e1):getClaudeConfigDir()+'/skills/',_0x31ccdb=_0x1d48fe===_0x19f446['LylRu']?_0x47bbb2+'/.opencode/skills/':_0x47bbb2+_0x3f5a99(0x1ca),_0x22bb91=process['stdin']['isTTY']&&process[_0x3f5a99(0x1db)]['isTTY'];let _0x59dd43;if(_0x447031[_0x3f5a99(0x1d5)])_0x59dd43=_0x447031['autoInstall'];else{if(_0x22bb91){const _0x5d88b4=await _0x2eb216['prompt']([{'type':_0x3f5a99(0x1d6),'name':_0x3f5a99(0x1e0),'message':_0x3f5a99(0x1c6),'choices':[{'name':'All\x20projects\x20('+_0x1153f2+')','value':_0x3f5a99(0x1d8)},{'name':'This\x20project\x20only\x20('+_0x31ccdb+')','value':'project'}]}]);_0x59dd43=_0x5d88b4[_0x3f5a99(0x1e0)];}else _0x59dd43=_0x3f5a99(0x1dd),console[_0x3f5a99(0x1c3)]('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x31ccdb+')');}let _0x1a59ed=0x0;const _0x5581b1=getCurrentVersion();console[_0x3f5a99(0x1c3)](_0x3f5a99(0x1d7));try{const _0x203cba=await _0x19f446['jBGos'](installSkill,'ranger',{'cliVersion':_0x5581b1,'level':_0x59dd43,'platform':_0x1d48fe});_0x203cba&&_0x1a59ed++;}catch(_0xacc919){console['warn'](_0x19f446['pMWmp'],_0xacc919 instanceof Error?_0xacc919[_0x3f5a99(0x1d1)]:_0xacc919);}if(_0x19f446['ILula'](_0x1a59ed,0x0)){const _0x209e6b=_0x19f446[_0x3f5a99(0x1e2)](_0x59dd43,'user')?'user-level':_0x3f5a99(0x1cc);console['log'](_0x3f5a99(0x1e6)+_0x1a59ed+'\x20'+_0x209e6b+_0x3f5a99(0x1e4)+(_0x19f446['ILula'](_0x1a59ed,0x1)?'s':'')+_0x3f5a99(0x1bd)),!_0x447031[_0x3f5a99(0x1e3)]&&(console['log']('To\x20use:'),_0x19f446[_0x3f5a99(0x1dc)](_0x1d48fe,_0x19f446['LylRu'])?console[_0x3f5a99(0x1c3)](_0x3f5a99(0x1de)):console['log'](_0x3f5a99(0x1be)));}else console[_0x3f5a99(0x1c3)](_0x3f5a99(0x1c5));}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x1a29c5=_0x4806;(function(_0x5f0358,_0x3b4819){const _0x5d8a29=_0x4806,_0x4632f2=_0x5f0358();while(!![]){try{const _0x1a394f=-parseInt(_0x5d8a29(0x1e0))/0x1+parseInt(_0x5d8a29(0x1de))/0x2*(-parseInt(_0x5d8a29(0x1df))/0x3)+parseInt(_0x5d8a29(0x209))/0x4+parseInt(_0x5d8a29(0x1ba))/0x5*(parseInt(_0x5d8a29(0x205))/0x6)+-parseInt(_0x5d8a29(0x208))/0x7*(parseInt(_0x5d8a29(0x1fc))/0x8)+parseInt(_0x5d8a29(0x1d5))/0x9+-parseInt(_0x5d8a29(0x1cd))/0xa*(-parseInt(_0x5d8a29(0x1eb))/0xb);if(_0x1a394f===_0x3b4819)break;else _0x4632f2['push'](_0x4632f2['shift']());}catch(_0x138527){_0x4632f2['push'](_0x4632f2['shift']());}}}(_0x56b1,0xd4122));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x43e129 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 _0x4806(_0x18e08d,_0x559b1b){_0x18e08d=_0x18e08d-0x1b0;const _0x56b1ab=_0x56b1();let _0x480698=_0x56b1ab[_0x18e08d];return _0x480698;}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';function _0x56b1(){const _0x29172e=['✓\x20Created\x20.ranger/.gitignore','log','12ffdTJI','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','7mKIGwQ','4565432HKrURj','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','\x20now?','✓\x20Exported\x20credentials\x20for\x20CI','gMzzt','\x0a\x20\x20','playwright/package.json','ignore','BoUdj','trackPhaseStart','stdin','confirm','gAkLJ','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','1.58.2','success','yKiDd','ranger\x20setup\x20--scope=','plugin','skipped','env','ranger','AOFnp','\x0a⚠\x20Skipping\x20Chromium\x20installation.','organizationName','message','✓\x20Already\x20authenticated\x20to\x20','skipChromium','XDoOI','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','sRLfb','tOMxT','213865LvFazb','aVGMy','auth','RJgKu','user','executablePath','ready','RgYdd','ZTmiD','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','eLHBT','Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','chromium','BHpdh','Authentication\x20failed:\x20','yAxbZ','awZMo','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','yOGlM','2540EktdVS','zBvLQ','allowInsecureLocalhost','\x20install\x20chromium','EpOnu','bGWnl','close','\x0aInstalling\x20Chromium\x20browser...\x0a','1964169ZyrEeZ','KkHWe','method','exit','trackPhaseEnd','aLcrb','...','error','hqReZ','9928rWumAc','939twCybI','1321398tKKVRb','mQTtA','Sxlru','pAeef','url','skills','.gitignore','\x20and\x20prompt\x20the\x20coding','✓\x20Authenticated\x20to\x20','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','✓\x20Skipping\x20authentication\x20(--skip-auth)','119779iEsnmm','\x1b[0m','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','local','pHqfs','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','\x20(fallback\x20version)','USczp','TVwuJ','platform','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','Installation\x20failed\x20with\x20exit\x20code\x20','3737432qHldBW','\x20\x20npx\x20playwright@','scope','qwxod','install','existing_token','status'];_0x56b1=function(){return _0x29172e;};return _0x56b1();}const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x1a29c5(0x217);const bold=_0x7e923=>'\x1b[1m'+_0x7e923+_0x1a29c5(0x1ec);export function getPlaywrightVersion(){const _0x1c4620=_0x1a29c5;try{const _0x4fcff0=require['resolve'](_0x1c4620(0x20f)),_0x4e1332=require(_0x4fcff0);return _0x4e1332['version'];}catch{return null;}}export function installChromiumBinary(_0xcf6c4b,_0x593a20=![]){const _0xb45332=_0x1a29c5,_0x1a2723={'bGWnl':function(_0x5e0678,_0x1542ca){return _0x5e0678===_0x1542ca;},'cExwC':function(_0x12c34b,_0x1c0e56){return _0x12c34b(_0x1c0e56);},'YqCxx':function(_0x4fa4ba,_0x4921e4,_0x4682c5,_0x494d8a){return _0x4fa4ba(_0x4921e4,_0x4682c5,_0x494d8a);},'hqReZ':_0xb45332(0x210),'yAxbZ':'inherit','PzWAh':'win32','rpRqL':_0xb45332(0x1d3)};return new Promise((_0x1ac18d,_0x13018f)=>{const _0x2d0f10=_0xb45332,_0x3b2563={'DsPpu':function(_0x2acac7,_0x2c16ed){const _0x4650f4=_0x4806;return _0x1a2723[_0x4650f4(0x1d2)](_0x2acac7,_0x2c16ed);},'QZMxq':function(_0x6a5b52){return _0x6a5b52();},'Sxlru':function(_0x15490b,_0x4b71d3){return _0x1a2723['cExwC'](_0x15490b,_0x4b71d3);}},_0x10646c=['playwright@'+_0xcf6c4b,_0x2d0f10(0x200),..._0x593a20?['--with-deps']:[],_0x2d0f10(0x1c6)],_0x5e7eae=_0x1a2723['YqCxx'](spawn,'npx',_0x10646c,{'stdio':[_0x1a2723[_0x2d0f10(0x1dd)],_0x1a2723[_0x2d0f10(0x1c9)],_0x1a2723[_0x2d0f10(0x1c9)]],'shell':_0x1a2723[_0x2d0f10(0x1d2)](process[_0x2d0f10(0x1f6)],_0x1a2723['PzWAh'])});_0x5e7eae['on'](_0x1a2723['rpRqL'],_0x172641=>{const _0xc70489=_0x2d0f10;_0x3b2563['DsPpu'](_0x172641,0x0)?_0x3b2563['QZMxq'](_0x1ac18d):_0x3b2563[_0xc70489(0x1e2)](_0x13018f,new Error(_0xc70489(0x1fb)+_0x172641));}),_0x5e7eae['on']('error',_0x3e3413=>{_0x13018f(_0x3e3413);});});}export async function authenticate(_0x318e7f){const _0x6ef414=_0x1a29c5,_0x113698={'zBvLQ':function(_0x3a8515){return _0x3a8515();},'aLcrb':function(_0x4e8741,_0x4a898e){return _0x4e8741(_0x4a898e);},'Defoo':_0x6ef414(0x201),'IrvJl':function(_0x1cf39a){return _0x1cf39a();},'awZMo':'device_auth','XDoOI':'Validating\x20API\x20token...','pHqfs':_0x6ef414(0x20c)};if(!_0x318e7f){const _0x19b7ae=await _0x113698[_0x6ef414(0x1ce)](getToken);if(_0x19b7ae){const _0x409cfb=await _0x113698[_0x6ef414(0x1da)](getCurrentUser,_0x19b7ae);if(_0x409cfb[_0x6ef414(0x218)])return console[_0x6ef414(0x204)](_0x6ef414(0x1b4)+_0x409cfb[_0x6ef414(0x1be)][_0x6ef414(0x1b2)]),{'token':_0x19b7ae,'method':_0x113698['Defoo']};}try{_0x318e7f=await _0x113698['IrvJl'](runDeviceAuthFlow);}catch(_0x965ecb){throw new Error(_0x6ef414(0x1c8)+(_0x965ecb instanceof Error?_0x965ecb[_0x6ef414(0x1b3)]:_0x965ecb));}const _0x473fae=await getCurrentUser(_0x318e7f);if(!_0x473fae['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x473fae[_0x6ef414(0x1dc)]);return console[_0x6ef414(0x204)](_0x6ef414(0x1e8)+_0x473fae['user'][_0x6ef414(0x1b2)]),{'token':_0x318e7f,'method':_0x113698[_0x6ef414(0x1ca)]};}console[_0x6ef414(0x204)](_0x113698[_0x6ef414(0x1b6)]);const _0x49b489=await getCurrentUser(_0x318e7f);if(!_0x49b489[_0x6ef414(0x218)]){if(_0x49b489[_0x6ef414(0x202)])throw new Error('Authentication\x20failed:\x20'+_0x49b489[_0x6ef414(0x1dc)]+_0x6ef414(0x1fa));else throw new Error(_0x6ef414(0x1f9)+_0x49b489[_0x6ef414(0x1dc)]+_0x6ef414(0x1cb));}return console['log']('✓\x20Authenticated\x20to\x20'+_0x49b489[_0x6ef414(0x1be)][_0x6ef414(0x1b2)]),await _0x113698[_0x6ef414(0x1da)](storeToken,_0x318e7f),console[_0x6ef414(0x204)](process[_0x6ef414(0x21d)]['GITHUB_ENV']?_0x113698[_0x6ef414(0x1ef)]:'✓\x20Stored\x20credentials\x20locally'),{'token':_0x318e7f,'method':'provided_token'};}export async function ensureRangerDir(_0x13235e){const _0x54ebbc=_0x1a29c5,_0x5b23dd={'RJgKu':function(_0x316ae7){return _0x316ae7();}};void _0x13235e;const _0x1fb721=_0x5b23dd[_0x54ebbc(0x1bd)](getRangerHomeDir);return!existsSync(_0x1fb721)?(await mkdir(_0x1fb721,{'recursive':!![]}),console[_0x54ebbc(0x204)]('✓\x20Created\x20~/.ranger/\x20directory'),{'path':_0x1fb721,'installed':!![]}):(console[_0x54ebbc(0x204)]('✓\x20~/.ranger/\x20directory\x20already\x20exists'),{'path':_0x1fb721,'installed':![]});}export async function ensureChromium(_0x15f874=![]){const _0xd5b682=_0x1a29c5,_0x280ed2={'eIMzt':function(_0x473115,_0xf42191){return _0x473115(_0xf42191);},'aVGMy':function(_0x12bc5b,_0x3e3a6c){return _0x12bc5b??_0x3e3a6c;},'bTaVp':_0xd5b682(0x1d4),'qwxod':function(_0x14d90c,_0x420707){return _0x14d90c instanceof _0x420707;},'DgGed':'You\x20can\x20install\x20it\x20manually\x20by\x20running:','SAoVM':_0xd5b682(0x1b1),'mYUBd':_0xd5b682(0x206)};let _0x3552ab=![];try{const _0x95a991=chromium[_0xd5b682(0x1bf)]();_0x3552ab=_0x280ed2['eIMzt'](existsSync,_0x95a991);}catch{_0x3552ab=![];}if(_0x3552ab)return console[_0xd5b682(0x204)]('✓\x20Playwright\x20Chromium\x20browser\x20found'),![];const _0x1a4b7c=getPlaywrightVersion(),_0x71f482=_0x280ed2[_0xd5b682(0x1bb)](_0x1a4b7c,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x5014ab=!_0x1a4b7c,_0x5f2d8b=process[_0xd5b682(0x213)]['isTTY']&&process['stdout']['isTTY'];let _0xcb8641=!![];if(_0x5f2d8b){const {install:_0x2a9e73}=await _0x43e129['prompt']([{'type':_0xd5b682(0x214),'name':_0xd5b682(0x200),'message':_0x5014ab?_0xd5b682(0x1c5)+_0x71f482+_0xd5b682(0x20b):'The\x20required\x20version\x20('+_0x71f482+_0xd5b682(0x1f2),'default':!![]}]);_0xcb8641=_0x2a9e73;}else console[_0xd5b682(0x204)](_0xd5b682(0x20a)+_0x71f482+(_0x5014ab?_0xd5b682(0x1f3):'')+_0xd5b682(0x1db));if(_0xcb8641){console['log'](_0x280ed2['bTaVp']);try{await installChromiumBinary(_0x71f482,_0x15f874),console[_0xd5b682(0x204)](_0xd5b682(0x1e9));}catch(_0x348b80){console['error']('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x280ed2[_0xd5b682(0x1ff)](_0x348b80,Error)?_0x348b80['message']:_0x348b80),console['log'](_0x280ed2['DgGed']),console['log'](_0xd5b682(0x1fd)+_0x71f482+_0xd5b682(0x1d0));}}else console['log'](_0x280ed2['SAoVM']),console[_0xd5b682(0x204)](_0x280ed2['mYUBd']),console[_0xd5b682(0x204)](_0xd5b682(0x1fd)+_0x71f482+_0xd5b682(0x1d0));return!![];}export async function writeRangerGitignore(_0x101170){const _0x3aea95=_0x1a29c5,_0x3f1f56={'RgYdd':_0x3aea95(0x203)},_0xe4af82=join(_0x101170,_0x3aea95(0x1e6)),_0xb04a63='\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(_0xe4af82,_0xb04a63),console['log'](_0x3f1f56[_0x3aea95(0x1c1)]);}export async function ensureLocalEnv(_0x2df000,_0xc6dd3d){const _0x463da7=_0x1a29c5,_0x3aaea={'BoUdj':function(_0x2bc86e){return _0x2bc86e();},'BHpdh':function(_0x695b44,_0xb1249f){return _0x695b44!==_0xb1249f;},'UlnRf':'user','AOFnp':_0x463da7(0x207),'gMzzt':_0x463da7(0x1ee),'mQTtA':function(_0xd9d74a,_0x582719){return _0xd9d74a instanceof _0x582719;}};if(!_0x3aaea[_0x463da7(0x211)](findGitRoot)&&_0x3aaea[_0x463da7(0x1c7)](_0x2df000?.['scope'],_0x3aaea['UlnRf']))return console[_0x463da7(0x204)](_0x3aaea[_0x463da7(0x1b0)]),{'ready':![],'skipped':!![]};const _0x102caa=_0x2df000?.['scope']==='user'?_0x3aaea[_0x463da7(0x211)](getRangerHomeDir):undefined;if(findExistingEnv(_0x3aaea['gMzzt'],{'locations':[_0x3aaea['gMzzt']],'rangerDir':_0x102caa}))return console[_0x463da7(0x204)]('✓\x20Local\x20profile\x20already\x20exists'),{'ready':!![],'skipped':![]};try{return await addEnv(_0x3aaea[_0x463da7(0x20d)],{'url':_0x2df000?.[_0x463da7(0x1e4)],'force':_0x2df000?.['force'],'allowInsecureLocalhost':_0x2df000?.[_0x463da7(0x1cf)],'scope':_0x2df000?.['scope']},_0xc6dd3d),{'ready':!![],'skipped':![]};}catch(_0x400019){return console[_0x463da7(0x1dc)]('\x0a❌\x20Profile\x20setup\x20failed:',_0x3aaea[_0x463da7(0x1e1)](_0x400019,Error)?_0x400019[_0x463da7(0x1b3)]:_0x400019),{'ready':![],'skipped':![]};}}export async function start(_0x493c89,_0x198f7c,_0x5c60a5){const _0x39d7a6=_0x1a29c5,_0x29c2a0={'QQeJY':function(_0x38a83a,_0x93d73a){return _0x38a83a+_0x93d73a;},'GFvSN':_0x39d7a6(0x1be),'eLHBT':function(_0x5420b0,_0x35b454){return _0x5420b0(_0x35b454);},'CQIwr':function(_0x10a01a){return _0x10a01a();},'gAkLJ':_0x39d7a6(0x1bc),'Lruyw':'skipped','umCES':function(_0x1da641,_0x545276){return _0x1da641(_0x545276);},'yKiDd':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','EpOnu':'chromium','weBCa':function(_0x2f4faa,_0x4a36e5){return _0x2f4faa&&_0x4a36e5;},'WCWeC':_0x39d7a6(0x1e5),'KkHWe':_0x39d7a6(0x1f1),'xBhhz':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','USczp':'profile','tOMxT':function(_0x599f5b,_0x1522cf,_0x12cd1c){return _0x599f5b(_0x1522cf,_0x12cd1c);},'ZTmiD':function(_0x2d4847,_0x40bfbd){return _0x2d4847+_0x40bfbd;},'yOGlM':function(_0xcd4344,_0x19c8a5){return _0xcd4344+_0x19c8a5;},'TVwuJ':function(_0x2bc971,_0xe50c2e){return _0x2bc971(_0xe50c2e);},'YxEbk':'ranger\x20profile\x20add\x20<name>','uviXH':_0x39d7a6(0x1c3),'sRLfb':_0x39d7a6(0x1ed),'pAeef':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','ChHoz':function(_0x81c2a4,_0x20ba7f){return _0x81c2a4(_0x20ba7f);},'sekav':function(_0x541146,_0x5232e5){return _0x541146+_0x5232e5;}};console['log']('\x0a🚀\x20Ranger\x20Setup\x0a');_0x198f7c?.['scope']!==undefined&&_0x198f7c[_0x39d7a6(0x1fe)]!=='user'&&(console[_0x39d7a6(0x1dc)](_0x29c2a0['QQeJY'](_0x39d7a6(0x21a)+String(_0x198f7c[_0x39d7a6(0x1fe)])+'\x20is\x20no\x20longer\x20supported.\x20','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20')+'project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.'),process[_0x39d7a6(0x1d8)](0x1));_0x198f7c={..._0x198f7c,'scope':_0x29c2a0['GFvSN']};const _0x125915=!_0x29c2a0[_0x39d7a6(0x1c4)](existsSync,_0x29c2a0['CQIwr'](getRangerHomeDir));await ensureRangerDir(_0x29c2a0['GFvSN']);if(_0x198f7c?.['skipAuth'])console['log'](_0x39d7a6(0x1ea)),_0x5c60a5?.[_0x39d7a6(0x1d9)](_0x29c2a0[_0x39d7a6(0x215)],{'isFirstRun':_0x125915,'method':_0x29c2a0['Lruyw']});else{_0x5c60a5?.['trackPhaseStart'](_0x29c2a0['gAkLJ']);const _0xce8aed=await _0x29c2a0['umCES'](authenticate,_0x493c89);_0x5c60a5?.[_0x39d7a6(0x1d9)](_0x39d7a6(0x1bc),{'isFirstRun':_0x125915,'method':_0xce8aed[_0x39d7a6(0x1d7)]});}_0x5c60a5?.[_0x39d7a6(0x212)]('chromium');_0x198f7c?.['skipChromium']?console[_0x39d7a6(0x204)](_0x29c2a0[_0x39d7a6(0x219)]):await _0x29c2a0[_0x39d7a6(0x1c4)](ensureChromium,_0x198f7c?.['withDeps']);_0x5c60a5?.[_0x39d7a6(0x1d9)](_0x29c2a0[_0x39d7a6(0x1d1)],{'isFirstRun':_0x125915,'skipped':!!_0x198f7c?.[_0x39d7a6(0x1b5)]}),console[_0x39d7a6(0x204)]('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x22844b=_0x198f7c?.[_0x39d7a6(0x1fe)],_0x2b4f5d=_0x198f7c?.['opencode']??![];let _0x386b4f=null;_0x2b4f5d?(_0x5c60a5?.[_0x39d7a6(0x212)]('plugin'),_0x386b4f=await ensureOpencodePluginConfig(_0x22844b),_0x5c60a5?.['trackPhaseEnd'](_0x39d7a6(0x21b),{'isFirstRun':_0x125915,'opencode':!![]})):(_0x5c60a5?.['trackPhaseStart']('plugin'),await ensureClaudePlugin(_0x22844b),_0x5c60a5?.['trackPhaseEnd'](_0x39d7a6(0x21b),{'isFirstRun':_0x125915}));if(_0x29c2a0['weBCa'](_0x2b4f5d,_0x386b4f)){_0x5c60a5?.['trackPhaseStart'](_0x29c2a0['WCWeC']);try{await installSkill(_0x39d7a6(0x21e),{'level':_0x386b4f['scope'],'cliVersion':getCurrentVersion(),'platform':'opencode'}),_0x5c60a5?.['trackPhaseEnd'](_0x29c2a0['WCWeC'],{'isFirstRun':_0x125915,'opencode':!![]});}catch(_0x1e2140){console['warn'](_0x29c2a0[_0x39d7a6(0x1d6)],_0x1e2140 instanceof Error?_0x1e2140[_0x39d7a6(0x1b3)]:_0x1e2140),_0x5c60a5?.['trackPhaseEnd'](_0x29c2a0['WCWeC'],{'isFirstRun':_0x125915,'opencode':!![],'failed':!![]});}}else _0x5c60a5?.['trackPhaseStart'](_0x29c2a0['WCWeC']),await _0x29c2a0['umCES'](ensureClaudeSkills,_0x22844b),_0x5c60a5?.[_0x39d7a6(0x1d9)]('skills',{'isFirstRun':_0x125915});if(_0x198f7c?.['skipAuth'])console[_0x39d7a6(0x204)](_0x29c2a0['xBhhz']);else{if(_0x198f7c?.[_0x39d7a6(0x1e4)]){_0x5c60a5?.['trackPhaseStart'](_0x29c2a0[_0x39d7a6(0x1f4)]);const _0x46aec8=await _0x29c2a0[_0x39d7a6(0x1b9)](ensureLocalEnv,{'url':_0x198f7c[_0x39d7a6(0x1e4)],'force':_0x198f7c?.['force'],'allowInsecureLocalhost':_0x198f7c?.['allowInsecureLocalhost'],'scope':_0x29c2a0['GFvSN']},_0x5c60a5);_0x5c60a5?.['trackPhaseEnd'](_0x29c2a0[_0x39d7a6(0x1f4)],{'isFirstRun':_0x125915,'profileReady':_0x46aec8[_0x39d7a6(0x1c0)],'userSkipped':_0x46aec8[_0x39d7a6(0x21c)]});}else console['log'](_0x29c2a0['QQeJY'](_0x29c2a0[_0x39d7a6(0x1c2)](_0x29c2a0[_0x39d7a6(0x1cc)]('\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:',_0x39d7a6(0x20e)+_0x29c2a0[_0x39d7a6(0x1f5)](bold,_0x29c2a0['YxEbk'])),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)')+_0x39d7a6(0x1f0),_0x39d7a6(0x1b7)));}if(_0x2b4f5d)console['log'](_0x29c2a0['uviXH']),console['log'](_0x39d7a6(0x1f8)),console[_0x39d7a6(0x204)](_0x29c2a0[_0x39d7a6(0x1b8)]),console['log'](_0x29c2a0[_0x39d7a6(0x1e3)]);else{const _0x57645a=_0x29c2a0['ChHoz'](bold,'/ranger:enable');console[_0x39d7a6(0x204)](_0x29c2a0['sekav']('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x57645a+_0x39d7a6(0x1e7),_0x39d7a6(0x1f7))+_0x39d7a6(0x216)+'\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');}}
|
|
1
|
+
const _0x4334d3=_0x420e;(function(_0x1866c0,_0x14363e){const _0x213d59=_0x420e,_0x49f188=_0x1866c0();while(!![]){try{const _0xce2566=-parseInt(_0x213d59(0x184))/0x1+-parseInt(_0x213d59(0x19f))/0x2+-parseInt(_0x213d59(0x1a0))/0x3*(-parseInt(_0x213d59(0x18f))/0x4)+parseInt(_0x213d59(0x1be))/0x5*(-parseInt(_0x213d59(0x162))/0x6)+parseInt(_0x213d59(0x189))/0x7*(parseInt(_0x213d59(0x186))/0x8)+-parseInt(_0x213d59(0x18e))/0x9*(parseInt(_0x213d59(0x1c2))/0xa)+parseInt(_0x213d59(0x1ae))/0xb*(parseInt(_0x213d59(0x174))/0xc);if(_0xce2566===_0x14363e)break;else _0x49f188['push'](_0x49f188['shift']());}catch(_0x3fcd03){_0x49f188['push'](_0x49f188['shift']());}}}(_0x12c2,0xe40f7));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x5e5431 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';function _0x420e(_0x30b60f,_0x1b6b28){_0x30b60f=_0x30b60f-0x15e;const _0x12c296=_0x12c2();let _0x420e0b=_0x12c296[_0x30b60f];return _0x420e0b;}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);function _0x12c2(){const _0x57add2=['MMffS','985887GvATsB','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','968wTYecZ','auth','\x1b[1m','161KujIVT','KcdYb','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','warn','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','18jSTllf','6812EDpjJm','status','\x0a⚠\x20Skipping\x20Chromium\x20installation.','KWsBT','jCtTA','✓\x20Playwright\x20Chromium\x20browser\x20found','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','ranger','skills','KxTnr','VmMFL','device_auth','prompt','\x20\x20npx\x20playwright@','message','log','2811636LnQCnx','270lfLhRI','profile','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','skipChromium','ranger\x20profile\x20add\x20<name>','DNSFh',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','axBQc','Authentication\x20failed:\x20','jQPjB','You\x20can\x20install\x20it\x20manually\x20by\x20running:','\x0aInstalling\x20Chromium\x20browser...\x0a','success','11SPvcMn','ready','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','UFnEw','skipped','isTTY','qmFso','aNuKH','trackPhaseEnd','HMeUd','lVSuu','playwright@','allowInsecureLocalhost','organizationName','user','TTeUE','78530hCOoEL','install','version','\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)','1357270wWzZEU','✓\x20~/.ranger/\x20directory\x20already\x20exists','gfRjP','bUZzz','DQBPo','EtcYc','error','The\x20required\x20version\x20(','resolve','cbXOs','method','✓\x20Created\x20~/.ranger/\x20directory','276rsjMze','\x0aIn\x20Claude\x20Code,\x20run\x20','AJHsP','trackPhaseStart','ydmYV','--with-deps','\x0a❌\x20Profile\x20setup\x20failed:','\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','niSVi','plugin','\x0a🚀\x20Ranger\x20Setup\x0a','rTAJO','win32','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','scope','provided_token','ignore','opencode','49964604cpIHWB','ObyCq','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','iFeDF','oMPZz','ellKE','skipAuth','stdout','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','env','XRagW','✓\x20Local\x20profile\x20already\x20exists','\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'];_0x12c2=function(){return _0x57add2;};return _0x12c2();}export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.58.2';const bold=_0x40b679=>_0x4334d3(0x188)+_0x40b679+'\x1b[0m';export function getPlaywrightVersion(){const _0x511984=_0x4334d3;try{const _0x28591b=require[_0x511984(0x15e)]('playwright/package.json'),_0x520c77=require(_0x28591b);return _0x520c77[_0x511984(0x1c0)];}catch{return null;}}export function installChromiumBinary(_0x3fade4,_0x3b68a5=![]){const _0x36b9e5=_0x4334d3,_0x139960={'XPVQm':function(_0x11c5cf){return _0x11c5cf();},'qmFso':_0x36b9e5(0x167),'KcdYb':'chromium','DNSFh':function(_0x6ceb42,_0x67371f,_0x565fa1,_0x2a3435){return _0x6ceb42(_0x67371f,_0x565fa1,_0x2a3435);},'cbXOs':'npx','EtcYc':_0x36b9e5(0x172),'ZBxPi':'inherit','iFeDF':function(_0x4b1385,_0x49d188){return _0x4b1385===_0x49d188;},'ekAot':'close'};return new Promise((_0x5d1d60,_0x2f937b)=>{const _0x12f0fa=_0x36b9e5,_0x7f7f66={'AJHsP':function(_0x73d779){return _0x139960['XPVQm'](_0x73d779);},'atoDa':function(_0x22efed,_0x237c7d){return _0x22efed(_0x237c7d);},'nKBpB':function(_0x4ba7d0,_0x5bc3fb){return _0x4ba7d0(_0x5bc3fb);}},_0x5b3147=[_0x12f0fa(0x1b9)+_0x3fade4,'install',..._0x3b68a5?[_0x139960[_0x12f0fa(0x1b4)]]:[],_0x139960[_0x12f0fa(0x18a)]],_0x3e39b9=_0x139960[_0x12f0fa(0x1a6)](spawn,_0x139960[_0x12f0fa(0x15f)],_0x5b3147,{'stdio':[_0x139960[_0x12f0fa(0x1c7)],_0x139960['ZBxPi'],'inherit'],'shell':_0x139960[_0x12f0fa(0x178)](process['platform'],_0x12f0fa(0x16e))});_0x3e39b9['on'](_0x139960['ekAot'],_0x24d86e=>{const _0x18e49f=_0x12f0fa;_0x24d86e===0x0?_0x7f7f66[_0x18e49f(0x164)](_0x5d1d60):_0x7f7f66['atoDa'](_0x2f937b,new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x24d86e));}),_0x3e39b9['on'](_0x12f0fa(0x1c8),_0x41c81d=>{_0x7f7f66['nKBpB'](_0x2f937b,_0x41c81d);});});}export async function authenticate(_0x2febe7){const _0x57d150=_0x4334d3,_0x10cf52={'KyDcJ':function(_0x534b96){return _0x534b96();},'qTNvj':function(_0x71f665,_0x1f971d){return _0x71f665 instanceof _0x1f971d;},'JkImf':function(_0x418ea8,_0x5859bb){return _0x418ea8(_0x5859bb);},'KxTnr':_0x57d150(0x19a),'KLGgQ':function(_0x4baebf,_0x49d1d8){return _0x4baebf(_0x49d1d8);},'DQBPo':_0x57d150(0x171)};if(!_0x2febe7){const _0x4453cb=await _0x10cf52['KyDcJ'](getToken);if(_0x4453cb){const _0x15bdf7=await getCurrentUser(_0x4453cb);if(_0x15bdf7['success'])return console[_0x57d150(0x19e)]('✓\x20Already\x20authenticated\x20to\x20'+_0x15bdf7[_0x57d150(0x1bc)][_0x57d150(0x1bb)]),{'token':_0x4453cb,'method':'existing_token'};}try{_0x2febe7=await runDeviceAuthFlow();}catch(_0x49c0b1){throw new Error(_0x57d150(0x1a9)+(_0x10cf52['qTNvj'](_0x49c0b1,Error)?_0x49c0b1['message']:_0x49c0b1));}const _0x544c8f=await _0x10cf52['JkImf'](getCurrentUser,_0x2febe7);if(!_0x544c8f[_0x57d150(0x1ad)])throw new Error(_0x57d150(0x1a3)+_0x544c8f[_0x57d150(0x1c8)]);return console[_0x57d150(0x19e)]('✓\x20Authenticated\x20to\x20'+_0x544c8f[_0x57d150(0x1bc)][_0x57d150(0x1bb)]),{'token':_0x2febe7,'method':_0x10cf52[_0x57d150(0x198)]};}console[_0x57d150(0x19e)]('Validating\x20API\x20token...');const _0x3ca5cb=await _0x10cf52['KLGgQ'](getCurrentUser,_0x2febe7);if(!_0x3ca5cb[_0x57d150(0x1ad)]){if(_0x3ca5cb[_0x57d150(0x190)])throw new Error(_0x57d150(0x1a9)+_0x3ca5cb['error']+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error(_0x57d150(0x16f)+_0x3ca5cb['error']+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x57d150(0x19e)]('✓\x20Authenticated\x20to\x20'+_0x3ca5cb[_0x57d150(0x1bc)]['organizationName']),await storeToken(_0x2febe7),console[_0x57d150(0x19e)](process[_0x57d150(0x17f)]['GITHUB_ENV']?'✓\x20Exported\x20credentials\x20for\x20CI':'✓\x20Stored\x20credentials\x20locally'),{'token':_0x2febe7,'method':_0x10cf52[_0x57d150(0x1c6)]};}export async function ensureRangerDir(_0x54f272){const _0xd20d3e=_0x4334d3,_0x1688b7={'BJOkj':function(_0x13c9b3){return _0x13c9b3();},'OyWeQ':function(_0x517a18,_0x2181a7){return _0x517a18(_0x2181a7);},'rqUJD':_0xd20d3e(0x161)};void _0x54f272;const _0x16afce=_0x1688b7['BJOkj'](getRangerHomeDir);return!_0x1688b7['OyWeQ'](existsSync,_0x16afce)?(await mkdir(_0x16afce,{'recursive':!![]}),console[_0xd20d3e(0x19e)](_0x1688b7['rqUJD']),{'path':_0x16afce,'installed':!![]}):(console['log'](_0xd20d3e(0x1c3)),{'path':_0x16afce,'installed':![]});}export async function ensureChromium(_0x337960=![]){const _0x56db51=_0x4334d3,_0x22674f={'axBQc':_0x56db51(0x194),'IzDSf':function(_0x4ab83c){return _0x4ab83c();},'rTAJO':function(_0x13f63e,_0x5b6e31){return _0x13f63e??_0x5b6e31;},'wTefs':_0x56db51(0x1ac),'ebFQk':function(_0x2760a7,_0x114011,_0x377aa6){return _0x2760a7(_0x114011,_0x377aa6);},'VlBfY':_0x56db51(0x191)};let _0x95ef84=![];try{const _0x15fc3b=chromium['executablePath']();_0x95ef84=existsSync(_0x15fc3b);}catch{_0x95ef84=![];}if(_0x95ef84)return console[_0x56db51(0x19e)](_0x22674f[_0x56db51(0x1a8)]),![];const _0x285be2=_0x22674f['IzDSf'](getPlaywrightVersion),_0x13475e=_0x22674f[_0x56db51(0x16d)](_0x285be2,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x57c8fe=!_0x285be2,_0xd828ff=process['stdin']['isTTY']&&process[_0x56db51(0x17c)][_0x56db51(0x1b3)];let _0x3745c5=!![];if(_0xd828ff){const {install:_0xd191c3}=await _0x5e5431[_0x56db51(0x19b)]([{'type':'confirm','name':_0x56db51(0x1bf),'message':_0x57c8fe?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x13475e+'\x20now?':_0x56db51(0x1c9)+_0x13475e+_0x56db51(0x1a7),'default':!![]}]);_0x3745c5=_0xd191c3;}else console['log'](_0x56db51(0x17d)+_0x13475e+(_0x57c8fe?'\x20(fallback\x20version)':'')+'...');if(_0x3745c5){console['log'](_0x22674f['wTefs']);try{await _0x22674f['ebFQk'](installChromiumBinary,_0x13475e,_0x337960),console['log'](_0x56db51(0x185));}catch(_0x2608ab){console['error'](_0x56db51(0x1a2),_0x2608ab instanceof Error?_0x2608ab['message']:_0x2608ab),console['log'](_0x56db51(0x1ab)),console['log'](_0x56db51(0x19c)+_0x13475e+'\x20install\x20chromium');}}else console['log'](_0x22674f['VlBfY']),console['log']('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console['log']('\x20\x20npx\x20playwright@'+_0x13475e+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x4af2e1){const _0x3561e0=_0x4334d3,_0x539872={'TzsxJ':'.gitignore'},_0x549a6b=join(_0x4af2e1,_0x539872['TzsxJ']),_0x233f32=_0x3561e0(0x182);await writeFile(_0x549a6b,_0x233f32),console[_0x3561e0(0x19e)]('✓\x20Created\x20.ranger/.gitignore');}export async function ensureLocalEnv(_0x53a98f,_0x4c86a4){const _0x3b8306=_0x4334d3,_0x49abc2={'oMPZz':function(_0x370844){return _0x370844();},'HMeUd':_0x3b8306(0x1b0),'gBkzJ':function(_0xbffdcf,_0x1c9f8b){return _0xbffdcf===_0x1c9f8b;},'KWsBT':function(_0x5090d6,_0x3cb980,_0x516a32){return _0x5090d6(_0x3cb980,_0x516a32);},'lVSuu':'local','iYXtH':function(_0x108a68,_0x391b17){return _0x108a68 instanceof _0x391b17;}};if(!_0x49abc2[_0x3b8306(0x179)](findGitRoot)&&_0x53a98f?.['scope']!=='user')return console[_0x3b8306(0x19e)](_0x49abc2[_0x3b8306(0x1b7)]),{'ready':![],'skipped':!![]};const _0x527d14=_0x49abc2['gBkzJ'](_0x53a98f?.['scope'],_0x3b8306(0x1bc))?_0x49abc2['oMPZz'](getRangerHomeDir):undefined;if(_0x49abc2[_0x3b8306(0x192)](findExistingEnv,_0x49abc2[_0x3b8306(0x1b8)],{'locations':[_0x49abc2[_0x3b8306(0x1b8)]],'rangerDir':_0x527d14}))return console['log'](_0x3b8306(0x181)),{'ready':!![],'skipped':![]};try{return await addEnv(_0x49abc2['lVSuu'],{'url':_0x53a98f?.['url'],'force':_0x53a98f?.['force'],'allowInsecureLocalhost':_0x53a98f?.['allowInsecureLocalhost'],'scope':_0x53a98f?.['scope']},_0x4c86a4),{'ready':!![],'skipped':![]};}catch(_0x55727d){return console[_0x3b8306(0x1c8)](_0x3b8306(0x168),_0x49abc2['iYXtH'](_0x55727d,Error)?_0x55727d[_0x3b8306(0x19d)]:_0x55727d),{'ready':![],'skipped':![]};}}export async function start(_0x2c85e0,_0x219299,_0x1c791c){const _0x2bf9a6=_0x4334d3,_0x5ada64={'MMffS':_0x2bf9a6(0x16c),'VmMFL':function(_0x22e8d3,_0x1de6aa){return _0x22e8d3!==_0x1de6aa;},'UFnEw':function(_0x5d474,_0x5d5fcb){return _0x5d474+_0x5d5fcb;},'jCtTA':function(_0x38a2f4,_0x198c34){return _0x38a2f4(_0x198c34);},'bUZzz':function(_0x595884,_0x39097c){return _0x595884(_0x39097c);},'tKfGW':function(_0x4aa82d){return _0x4aa82d();},'XRagW':'user','aNuKH':'✓\x20Skipping\x20authentication\x20(--skip-auth)','IfszP':'skipped','ellKE':'chromium','GQige':'\x0a✅\x20Ranger\x20setup\x20complete!\x0a','TTeUE':'plugin','niSVi':function(_0x5547ac,_0x3ce585){return _0x5547ac(_0x3ce585);},'HAKaF':function(_0x38987e,_0x3ca778,_0x37936f){return _0x38987e(_0x3ca778,_0x37936f);},'ydmYV':_0x2bf9a6(0x173),'gfRjP':_0x2bf9a6(0x197),'mTFyO':_0x2bf9a6(0x17e),'ObyCq':_0x2bf9a6(0x169),'dgRLQ':'profile','jQPjB':function(_0x28c518,_0x5ed303){return _0x28c518(_0x5ed303);},'KaVbE':'verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'};console[_0x2bf9a6(0x19e)](_0x5ada64[_0x2bf9a6(0x183)]);_0x5ada64[_0x2bf9a6(0x199)](_0x219299?.[_0x2bf9a6(0x170)],undefined)&&_0x219299[_0x2bf9a6(0x170)]!=='user'&&(console[_0x2bf9a6(0x1c8)](_0x5ada64[_0x2bf9a6(0x1b1)]('ranger\x20setup\x20--scope='+_0x5ada64[_0x2bf9a6(0x193)](String,_0x219299[_0x2bf9a6(0x170)])+'\x20is\x20no\x20longer\x20supported.\x20','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20')+'project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.'),process['exit'](0x1));_0x219299={..._0x219299,'scope':_0x2bf9a6(0x1bc)};const _0x4e6bd0=!_0x5ada64['bUZzz'](existsSync,_0x5ada64['tKfGW'](getRangerHomeDir));await ensureRangerDir(_0x5ada64[_0x2bf9a6(0x180)]);if(_0x219299?.[_0x2bf9a6(0x17b)])console[_0x2bf9a6(0x19e)](_0x5ada64[_0x2bf9a6(0x1b5)]),_0x1c791c?.['trackPhaseEnd']('auth',{'isFirstRun':_0x4e6bd0,'method':_0x5ada64['IfszP']});else{_0x1c791c?.[_0x2bf9a6(0x165)](_0x2bf9a6(0x187));const _0x4ddaa4=await _0x5ada64[_0x2bf9a6(0x1c5)](authenticate,_0x2c85e0);_0x1c791c?.[_0x2bf9a6(0x1b6)](_0x2bf9a6(0x187),{'isFirstRun':_0x4e6bd0,'method':_0x4ddaa4[_0x2bf9a6(0x160)]});}_0x1c791c?.[_0x2bf9a6(0x165)](_0x5ada64['ellKE']);_0x219299?.[_0x2bf9a6(0x1a4)]?console['log']('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await ensureChromium(_0x219299?.['withDeps']);_0x1c791c?.['trackPhaseEnd'](_0x5ada64[_0x2bf9a6(0x17a)],{'isFirstRun':_0x4e6bd0,'skipped':!!_0x219299?.['skipChromium']}),console[_0x2bf9a6(0x19e)](_0x5ada64['GQige']);const _0x1fb3a9=_0x219299?.['scope'],_0x14e2b5=_0x219299?.['opencode']??![];let _0x319ad1=null;_0x14e2b5?(_0x1c791c?.['trackPhaseStart'](_0x5ada64['TTeUE']),_0x319ad1=await _0x5ada64[_0x2bf9a6(0x16a)](ensureOpencodePluginConfig,_0x1fb3a9),_0x1c791c?.['trackPhaseEnd'](_0x2bf9a6(0x16b),{'isFirstRun':_0x4e6bd0,'opencode':!![]})):(_0x1c791c?.['trackPhaseStart'](_0x5ada64[_0x2bf9a6(0x1bd)]),await ensureClaudePlugin(_0x1fb3a9),_0x1c791c?.['trackPhaseEnd']('plugin',{'isFirstRun':_0x4e6bd0}));if(_0x14e2b5&&_0x319ad1){_0x1c791c?.['trackPhaseStart'](_0x2bf9a6(0x197));try{await _0x5ada64['HAKaF'](installSkill,_0x2bf9a6(0x196),{'level':_0x319ad1['scope'],'cliVersion':getCurrentVersion(),'platform':_0x5ada64[_0x2bf9a6(0x166)]}),_0x1c791c?.['trackPhaseEnd'](_0x5ada64[_0x2bf9a6(0x1c4)],{'isFirstRun':_0x4e6bd0,'opencode':!![]});}catch(_0x1f3631){console[_0x2bf9a6(0x18c)](_0x5ada64['mTFyO'],_0x1f3631 instanceof Error?_0x1f3631['message']:_0x1f3631),_0x1c791c?.['trackPhaseEnd']('skills',{'isFirstRun':_0x4e6bd0,'opencode':!![],'failed':!![]});}}else _0x1c791c?.['trackPhaseStart'](_0x2bf9a6(0x197)),await ensureClaudeSkills(_0x1fb3a9),_0x1c791c?.['trackPhaseEnd'](_0x2bf9a6(0x197),{'isFirstRun':_0x4e6bd0});if(_0x219299?.[_0x2bf9a6(0x17b)])console[_0x2bf9a6(0x19e)](_0x5ada64[_0x2bf9a6(0x175)]);else{if(_0x219299?.['url']){_0x1c791c?.['trackPhaseStart'](_0x5ada64['dgRLQ']);const _0xbd72af=await ensureLocalEnv({'url':_0x219299['url'],'force':_0x219299?.['force'],'allowInsecureLocalhost':_0x219299?.[_0x2bf9a6(0x1ba)],'scope':_0x5ada64['XRagW']},_0x1c791c);_0x1c791c?.['trackPhaseEnd'](_0x2bf9a6(0x1a1),{'isFirstRun':_0x4e6bd0,'profileReady':_0xbd72af[_0x2bf9a6(0x1af)],'userSkipped':_0xbd72af[_0x2bf9a6(0x1b2)]});}else console['log'](_0x5ada64['UFnEw'](_0x2bf9a6(0x18b)+('\x0a\x20\x20'+_0x5ada64[_0x2bf9a6(0x1aa)](bold,_0x2bf9a6(0x1a5))),_0x2bf9a6(0x1c1))+_0x2bf9a6(0x176)+_0x2bf9a6(0x195));}if(_0x14e2b5)console[_0x2bf9a6(0x19e)]('\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)'),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console['log'](_0x2bf9a6(0x177)),console['log'](_0x5ada64['KaVbE']);else{const _0x357322=bold('/ranger:enable');console[_0x2bf9a6(0x19e)](_0x2bf9a6(0x163)+_0x357322+'\x20and\x20prompt\x20the\x20coding'+'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with'+'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'+_0x2bf9a6(0x18d));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x95941a=_0x4fcf;(function(_0xa3d105,_0x2be40d){const _0x26691e=_0x4fcf,_0x3c6010=_0xa3d105();while(!![]){try{const _0x29f305=-parseInt(_0x26691e(0x1ff))/0x1+parseInt(_0x26691e(0x1fa))/0x2+-parseInt(_0x26691e(0x1d7))/0x3*(parseInt(_0x26691e(0x1c1))/0x4)+parseInt(_0x26691e(0x1c3))/0x5*(-parseInt(_0x26691e(0x207))/0x6)+parseInt(_0x26691e(0x1dc))/0x7+parseInt(_0x26691e(0x1ec))/0x8+parseInt(_0x26691e(0x1f6))/0x9*(parseInt(_0x26691e(0x1d6))/0xa);if(_0x29f305===_0x2be40d)break;else _0x3c6010['push'](_0x3c6010['shift']());}catch(_0x55327f){_0x3c6010['push'](_0x3c6010['shift']());}}}(_0x2f95,0x56136));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';function _0x2f95(){const _0x2d8fe4=['\x0a---\x20OpenCode\x20Plugin\x20---','user','37143EybMjj','auth.json.enc','MBDzb','toString','309604KaJHJq','isArray','parse','match','MNkzf','325403UawBka','\x20\x20\x20\x20Auth:\x20','hasEncryptedAuth','\x20\x20Project-level:','pPuPc','name','feeOk','ihTKA','126042JxpVGd','\x0a---\x20Claude\x20Code\x20Plugin\x20---','env','Root:\x20','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','\x1b]8;;file://','isDirectory','ignore','JZGhz','NuOxs','sessionUpdatedAt','map','plugin','push','API\x20Token:\x20✗\x20Not\x20found','vVwLB','\x20cloud','API\x20URL:\x20','path','filter','utf-8','Version:\x20','Bkyog','includes','length','4gmCCXH','BIWfk','35KTFcTF','pWVuD','\x20\x20Run:\x20ranger\x20skillup','stdout','cached\x20(updated\x20','join','\x20[local]','\x20(up\x20to\x20date)','xwwUl','SKILL.md','\x20(latest:\x20','status','\x1b[1m','\x20\x20Run:\x20ranger\x20setup\x20[token]','settingsPath','log','data','\x20\x20\x20\x20','VglKe','640UxeTos','73335RHaGWR','\x20\x20Run:\x20ranger\x20update','\x0a\x20\x20No\x20active\x20profile\x20set','wHyKX','opencode-plugin','1140209fbCEka','not_installed','disabled','(not\x20found)','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','VKBvK','NxzxU','No\x20profiles\x20configured','\x20(active)','details','gAEvP','displayName','ceHLp','QOcZO','Oeffs','ZxHMZ','2141168KRAKmF','PXIfG','Organization:\x20','sUohW','pipe','\x20plugin(s)\x20configured','\x20[cloud]','not_configured'];_0x2f95=function(){return _0x2d8fe4;};return _0x2f95();}import{existsSync}from'fs';function _0x4fcf(_0x4ae98e,_0x26b1ef){_0x4ae98e=_0x4ae98e-0x1be;const _0x2f9571=_0x2f95();let _0x4fcf23=_0x2f9571[_0x4ae98e];return _0x4fcf23;}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=_0x401fcc=>_0x95941a(0x1cf)+_0x401fcc+'\x1b[0m',link=(_0x3e8d34,_0x108031)=>_0x95941a(0x20c)+_0x3e8d34+'\x07'+(_0x108031||_0x3e8d34)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x40b15c=_0x95941a,_0x4b1158={'zcPqy':function(_0x21efce,_0x343675){return _0x21efce!==_0x343675;},'feeOk':function(_0x2c256a,_0x5df0e4){return _0x2c256a(_0x5df0e4);},'MBDzb':function(_0x18f319,_0x16b88f){return _0x18f319>_0x16b88f;},'jPDWR':_0x40b15c(0x1f3),'YbbQs':'config','dPrdC':'pipe','Oeffs':_0x40b15c(0x1d3),'EfMNi':'error','vVwLB':'close'};return new Promise(_0x443a7b=>{const _0x2d3e76=_0x40b15c,_0x41297f={'MNkzf':'@ranger-testing/opencode-plugin'},_0xdd4418=spawn('opencode',['debug',_0x4b1158['YbbQs']],{'stdio':[_0x2d3e76(0x20e),_0x4b1158['dPrdC'],_0x2d3e76(0x1f0)]});let _0x1fe3ac='';_0xdd4418[_0x2d3e76(0x1c6)]?.['on']('data',_0x6bc8a2=>{_0x1fe3ac+=_0x6bc8a2['toString']();}),_0xdd4418['stderr']?.['on'](_0x4b1158[_0x2d3e76(0x1ea)],_0x4120a8=>{const _0x1b762f=_0x2d3e76;_0x1fe3ac+=_0x4120a8[_0x1b762f(0x1f9)]();}),_0xdd4418['on'](_0x4b1158['EfMNi'],()=>{const _0x2fd0eb=_0x2d3e76;_0x443a7b({'status':_0x2fd0eb(0x1dd)});}),_0xdd4418['on'](_0x4b1158[_0x2d3e76(0x216)],_0x27d49a=>{const _0x302066=_0x2d3e76;if(_0x4b1158['zcPqy'](_0x27d49a,0x0)){_0x4b1158['feeOk'](_0x443a7b,{'status':_0x302066(0x1dd)});return;}const _0x3b7770=_0x1fe3ac['trim']();let _0x3c41f7=null;if(_0x3b7770)try{_0x3c41f7=JSON['parse'](_0x3b7770);}catch{const _0x3a754b=_0x3b7770['match'](/\{[\s\S]*\}$/);if(_0x3a754b)try{_0x3c41f7=JSON[_0x302066(0x1fc)](_0x3a754b[0x0]);}catch{_0x3c41f7=null;}}const _0x2f77be=Array[_0x302066(0x1fb)](_0x3c41f7?.['plugin'])?_0x3c41f7?.[_0x302066(0x213)]:[],_0x57fdf0=_0x2f77be['some'](_0x1bf47e=>{const _0x27b1d1=_0x302066;if(typeof _0x1bf47e!=='string')return![];return _0x1bf47e[_0x27b1d1(0x1bf)](_0x41297f[_0x27b1d1(0x1fe)])||_0x1bf47e['includes'](_0x27b1d1(0x1db));});if(_0x57fdf0){_0x443a7b({'status':'configured','details':_0x4b1158[_0x302066(0x1f8)](_0x2f77be['length'],0x0)?_0x2f77be[_0x302066(0x1c0)]+_0x302066(0x1f1):undefined});return;}if(_0x2f77be[_0x302066(0x1c0)]>0x0){_0x443a7b({'status':'not_configured','details':_0x2f77be[_0x302066(0x1c0)]+_0x302066(0x1f1)});return;}_0x4b1158[_0x302066(0x205)](_0x443a7b,{'status':_0x4b1158['jPDWR']});});});}async function getSkillsFromDir(_0x293d0c,_0x381bb7){const _0x3860f5=_0x95941a,_0x2121b9={'Bkyog':function(_0x6517f0,_0x59baf7){return _0x6517f0(_0x59baf7);},'ectqJ':function(_0x108ac5,_0x232905,_0x480455){return _0x108ac5(_0x232905,_0x480455);}};if(!existsSync(_0x293d0c))return[];const _0x5a204c=[];try{const _0x4f5e3d=await readdir(_0x293d0c,{'withFileTypes':!![]});for(const _0x497a4e of _0x4f5e3d){if(_0x497a4e[_0x3860f5(0x20d)]()){const _0x48be69=join(_0x293d0c,_0x497a4e[_0x3860f5(0x204)],_0x3860f5(0x1cc));if(_0x2121b9[_0x3860f5(0x1be)](existsSync,_0x48be69)){let _0x37b6e2=_0x497a4e['name'];try{const _0x3e2a62=await _0x2121b9['ectqJ'](readFile,_0x48be69,_0x3860f5(0x21b)),_0x46fec8=_0x3e2a62[_0x3860f5(0x1fd)](/name:\s*(.+)/);_0x46fec8&&(_0x37b6e2=_0x46fec8[0x1]['trim']());}catch{}_0x5a204c[_0x3860f5(0x214)]({'name':_0x497a4e['name'],'displayName':_0x37b6e2,'path':_0x48be69,'level':_0x381bb7});}}}}catch{return[];}return _0x5a204c;}async function getInstalledSkills(){const _0x11f6ad={'BhlUC':function(_0x40d27d){return _0x40d27d();}},[_0x5c5cf6,_0x1b6c2b]=await Promise['all']([getSkillsFromDir(_0x11f6ad['BhlUC'](getProjectSkillsDir),'project'),getSkillsFromDir(getUserSkillsDir(),'user')]);return{'project':_0x5c5cf6,'user':_0x1b6c2b};}async function getEnvironments(){const _0x4872a9=_0x95941a,_0x211d12={'bXwAz':function(_0x484759,_0x6a3d2f,_0x345060){return _0x484759(_0x6a3d2f,_0x345060);},'BIWfk':'settings.json','ZxHMZ':function(_0x2bcea5,_0x185538){return _0x2bcea5(_0x185538);},'pPuPc':function(_0x4606df,_0x56538e){return _0x4606df===_0x56538e;},'NuOxs':function(_0x26bf03,_0x36c6cc){return _0x26bf03(_0x36c6cc);}},{envNames:_0x4348d5,activeEnv:_0x30ac41}=await getEnvNames(),_0x16655f=getRangerDir();if(!_0x211d12[_0x4872a9(0x210)](existsSync,_0x16655f))return{'envs':[],'activeEnv':null};const _0x55906f=_0x4348d5[_0x4872a9(0x212)](_0x588c06=>{const _0x24a220=_0x4872a9,_0x939db=getEnvDir(_0x588c06),_0x27119c=_0x211d12['bXwAz'](join,_0x939db,_0x211d12[_0x24a220(0x1c2)]),_0x57ab39=join(_0x939db,'auth.json'),_0x1d9b03=join(_0x939db,_0x24a220(0x1f7));return{'name':_0x588c06,'settingsPath':existsSync(_0x27119c)?_0x27119c:_0x24a220(0x1df),'hasPlaintextAuth':_0x211d12[_0x24a220(0x1eb)](existsSync,_0x57ab39),'hasEncryptedAuth':_0x211d12[_0x24a220(0x1eb)](existsSync,_0x1d9b03),'isActive':_0x211d12[_0x24a220(0x203)](_0x588c06,_0x30ac41)};});return{'envs':_0x55906f,'activeEnv':_0x30ac41};}export async function status(){const _0x19566b=_0x95941a,_0x3adcca={'nMxUZ':function(_0x397a0d){return _0x397a0d();},'gAEvP':function(_0x1a8b8a,_0x4ce5d1,_0x139668){return _0x1a8b8a(_0x4ce5d1,_0x139668);},'pWVuD':function(_0x4f3b32,_0x5afe18){return _0x4f3b32(_0x5afe18);},'PUGHt':function(_0x319012){return _0x319012();},'fZQOB':function(_0x948501){return _0x948501();},'JZGhz':function(_0x57cd27,_0x1b457b){return _0x57cd27===_0x1b457b;},'PXIfG':'configured','DodDX':_0x19566b(0x1f3),'wHyKX':'\x20\x20Run:\x20ranger\x20setup\x20--opencode','XDtaP':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','NxzxU':_0x19566b(0x208),'xwwUl':function(_0x30a65c,_0x4754de){return _0x30a65c(_0x4754de);},'vsuRb':'ranger@trailhead','DJfDg':'enabled','XxvQJ':_0x19566b(0x1de),'ceHLp':function(_0x5b4819,_0x2be909){return _0x5b4819(_0x2be909);},'zfYoj':'\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','swmhJ':function(_0x3c6543){return _0x3c6543();},'QOcZO':function(_0x415782,_0x41bf2b){return _0x415782+_0x41bf2b;},'VKBvK':'No\x20skills\x20installed','VglKe':function(_0x22fac6,_0x538a65){return _0x22fac6>_0x538a65;},'oFIJX':'\x20\x20User-level:','ihTKA':function(_0x4163a2){return _0x4163a2();},'MaKQJ':function(_0x5202da,_0x21bcd1){return _0x5202da>_0x21bcd1;},'lWYgu':'no\x20session','YaPJV':_0x19566b(0x1e4),'BqrNf':'encrypted','pCEMf':function(_0x7967e9,_0x540ee1){return _0x7967e9!==_0x540ee1;},'sUohW':function(_0x55334f,_0x514200){return _0x55334f(_0x514200);}};console[_0x19566b(0x1d2)]('\x0a📊\x20Ranger\x20Status\x0a');const _0x53c105=process['cwd'](),_0x565868=_0x3adcca['nMxUZ'](getRangerDir);if(!existsSync(_0x565868)){console[_0x19566b(0x1d2)](_0x19566b(0x20a)+_0x3adcca[_0x19566b(0x1e6)](link,_0x53c105,bold(basename(_0x53c105)))),console[_0x19566b(0x1d2)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x19566b(0x1d2)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console['log']('Root:\x20'+link(_0x53c105,_0x3adcca['pWVuD'](bold,basename(_0x53c105))));const _0x42c249=_0x3adcca['nMxUZ'](getCurrentVersion),_0x4086bb=getLatestVersion();if(_0x4086bb['version']&&_0x4086bb['version']!==_0x42c249)console[_0x19566b(0x1d2)](_0x19566b(0x21c)+_0x42c249+_0x19566b(0x1cd)+_0x4086bb['version']+')'),console['log'](_0x19566b(0x1d8));else _0x4086bb['version']?console[_0x19566b(0x1d2)](_0x19566b(0x21c)+_0x42c249+_0x19566b(0x1ca)):console[_0x19566b(0x1d2)]('Version:\x20'+_0x42c249);const _0x528224=await _0x3adcca['PUGHt'](getToken);if(_0x528224){const _0x1333c9=await getCurrentUser(_0x528224);_0x1333c9['success']?console[_0x19566b(0x1d2)](_0x19566b(0x1ee)+bold(_0x1333c9[_0x19566b(0x1f5)]['organizationName'])):(console['log']('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x19566b(0x1d2)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x19566b(0x1d2)](_0x19566b(0x215)),console['log'](_0x19566b(0x1d0));process[_0x19566b(0x209)]['DEBUG']&&(console[_0x19566b(0x1d2)]('API\x20Environment:\x20'+_0x3adcca['fZQOB'](getCurrentEnvironment)),console['log'](_0x19566b(0x218)+getApiBaseUrl()));console[_0x19566b(0x1d2)](_0x19566b(0x1f4));const _0x297250=await getOpencodePluginStatus();if(_0x3adcca[_0x19566b(0x20f)](_0x297250['status'],_0x3adcca[_0x19566b(0x1ed)]))console['log']('\x20\x20'+bold('@ranger-testing/opencode-plugin')+':\x20configured'),_0x297250['details']&&console[_0x19566b(0x1d2)]('\x20\x20'+_0x297250[_0x19566b(0x1e5)]);else _0x297250[_0x19566b(0x1ce)]===_0x3adcca['DodDX']?(console[_0x19566b(0x1d2)]('\x20\x20Not\x20configured'),_0x297250['details']&&console[_0x19566b(0x1d2)]('\x20\x20'+_0x297250[_0x19566b(0x1e5)]),console[_0x19566b(0x1d2)](_0x3adcca[_0x19566b(0x1da)])):console['log'](_0x3adcca['XDtaP']);console[_0x19566b(0x1d2)](_0x3adcca[_0x19566b(0x1e2)]);const _0x3b3e49=await _0x3adcca[_0x19566b(0x1cb)](getPluginInfo,_0x3adcca['vsuRb']);if(_0x3b3e49){const _0x2d5370=_0x3b3e49['scope']||'unknown',_0x283e32=_0x3b3e49['enabled']?_0x3adcca['DJfDg']:_0x3adcca['XxvQJ'];console['log']('\x20\x20'+_0x3adcca['ceHLp'](bold,'ranger@trailhead')+':\x20installed\x20('+_0x2d5370+',\x20'+_0x283e32+')');}else console[_0x19566b(0x1d2)]('\x20\x20Not\x20installed'),console[_0x19566b(0x1d2)](_0x3adcca['zfYoj']);console['log']('\x0a---\x20Skills\x20---');const {project:_0x36fe02,user:_0x294b5d}=await _0x3adcca['swmhJ'](getInstalledSkills),_0x3407c6=_0x36fe02[_0x19566b(0x21a)](_0x5200ca=>RANGER_MANAGED_SKILLS[_0x19566b(0x1bf)](_0x5200ca['name'])),_0x2a71d5=_0x294b5d['filter'](_0xc1b389=>RANGER_MANAGED_SKILLS[_0x19566b(0x1bf)](_0xc1b389[_0x19566b(0x204)])),_0x3eaaf2=_0x3adcca[_0x19566b(0x1e9)](_0x3407c6[_0x19566b(0x1c0)],_0x2a71d5['length']);if(_0x3eaaf2===0x0)console['log'](_0x3adcca[_0x19566b(0x1e1)]),console['log'](_0x19566b(0x1c5));else{if(_0x3adcca['VglKe'](_0x3407c6['length'],0x0)){console['log'](_0x19566b(0x202));for(const _0x9c4bba of _0x3407c6){console['log'](_0x19566b(0x1d4)+_0x3adcca[_0x19566b(0x1cb)](bold,_0x9c4bba[_0x19566b(0x1e7)])+':\x20'+link(_0x9c4bba['path'],_0x3adcca[_0x19566b(0x1c4)](basename,_0x9c4bba['path'])));}}if(_0x3adcca[_0x19566b(0x1d5)](_0x2a71d5[_0x19566b(0x1c0)],0x0)){console[_0x19566b(0x1d2)](_0x3adcca['oFIJX']);for(const _0x2c9833 of _0x2a71d5){console['log'](_0x19566b(0x1d4)+bold(_0x2c9833[_0x19566b(0x1e7)])+':\x20'+link(_0x2c9833[_0x19566b(0x219)],_0x3adcca[_0x19566b(0x1e8)](basename,_0x2c9833[_0x19566b(0x219)])));}}}console[_0x19566b(0x1d2)]('\x0a---\x20Profiles\x20---');const {envs:_0x119486,activeEnv:_0x274269}=await _0x3adcca[_0x19566b(0x206)](getEnvironments);let _0x4244bf=[];if(_0x528224)try{_0x4244bf=await listCloudProfiles();}catch{}const _0x3a9574=_0x119486['length']+_0x4244bf['length'];if(_0x3a9574===0x0)console[_0x19566b(0x1d2)](_0x19566b(0x1e3)),console[_0x19566b(0x1d2)](_0x19566b(0x20b));else{if(_0x3adcca['MaKQJ'](_0x3a9574,0x5)){const _0x41097c=[];_0x4244bf['length']>0x0&&_0x41097c[_0x19566b(0x214)](_0x4244bf[_0x19566b(0x1c0)]+_0x19566b(0x217)),_0x119486[_0x19566b(0x1c0)]>0x0&&_0x41097c[_0x19566b(0x214)](_0x119486['length']+'\x20local'),console['log'](_0x3a9574+'\x20profiles\x20configured\x20('+_0x41097c[_0x19566b(0x1c8)](',\x20')+')'),_0x274269&&console[_0x19566b(0x1d2)]('\x20\x20Active:\x20'+_0x3adcca[_0x19566b(0x1cb)](bold,_0x274269)),console['log'](_0x19566b(0x1e0));}else{for(const _0x19c096 of _0x4244bf){const _0x42a50c=_0x19c096['name']===_0x274269?_0x19566b(0x1e4):'';console[_0x19566b(0x1d2)]('\x20\x20'+bold(_0x19c096['name'])+_0x19566b(0x1f2)+_0x42a50c);const _0x274824=_0x19c096['sessionUpdatedAt']?_0x19566b(0x1c7)+_0x19c096[_0x19566b(0x211)]+')':_0x3adcca['lWYgu'];console[_0x19566b(0x1d2)]('\x20\x20\x20\x20Session:\x20'+_0x274824);}const _0x5bd110=new Set(_0x4244bf[_0x19566b(0x212)](_0x4e1241=>_0x4e1241[_0x19566b(0x204)]));for(const _0x551706 of _0x119486){if(_0x5bd110['has'](_0x551706[_0x19566b(0x204)]))continue;const _0x1ec307=_0x551706['isActive']?_0x3adcca['YaPJV']:'',_0x2d3ed1=_0x551706[_0x19566b(0x201)]?_0x3adcca['BqrNf']:_0x551706['hasPlaintextAuth']?'plaintext':'none';console['log']('\x20\x20'+_0x3adcca['ceHLp'](bold,_0x551706[_0x19566b(0x204)])+_0x19566b(0x1c9)+_0x1ec307),console[_0x19566b(0x1d2)](_0x19566b(0x200)+_0x2d3ed1),_0x3adcca['pCEMf'](_0x551706[_0x19566b(0x1d1)],'(not\x20found)')&&console['log']('\x20\x20\x20\x20Settings:\x20'+link(_0x551706[_0x19566b(0x1d1)],_0x3adcca[_0x19566b(0x1ef)](basename,_0x551706['settingsPath'])));}if(!_0x274269){console[_0x19566b(0x1d2)](_0x19566b(0x1d9));const _0x2aebe9=[..._0x4244bf[_0x19566b(0x212)](_0x5b437f=>_0x5b437f['name']),..._0x119486[_0x19566b(0x21a)](_0x27e75b=>!_0x5bd110['has'](_0x27e75b['name']))[_0x19566b(0x212)](_0x4e0432=>_0x4e0432[_0x19566b(0x204)])];console[_0x19566b(0x1d2)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x2aebe9['join'](',\x20')+')');}}}console[_0x19566b(0x1d2)]('');}
|
|
1
|
+
const _0x2e092f=_0x3e11;(function(_0x472d08,_0x5c9d22){const _0x33af2e=_0x3e11,_0x1d74a4=_0x472d08();while(!![]){try{const _0x8fd85d=-parseInt(_0x33af2e(0x222))/0x1*(parseInt(_0x33af2e(0x20a))/0x2)+parseInt(_0x33af2e(0x220))/0x3+parseInt(_0x33af2e(0x1e8))/0x4*(-parseInt(_0x33af2e(0x1f3))/0x5)+-parseInt(_0x33af2e(0x1e3))/0x6*(-parseInt(_0x33af2e(0x1cd))/0x7)+-parseInt(_0x33af2e(0x227))/0x8+-parseInt(_0x33af2e(0x1cc))/0x9+parseInt(_0x33af2e(0x1d1))/0xa;if(_0x8fd85d===_0x5c9d22)break;else _0x1d74a4['push'](_0x1d74a4['shift']());}catch(_0x11ab32){_0x1d74a4['push'](_0x1d74a4['shift']());}}}(_0x4090,0x4071f));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';function _0x4090(){const _0x11c2c7=['fldeW','\x20profiles\x20configured\x20(','ihERR','\x20\x20\x20\x20','apJQo','ETygv','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','EugiL','enabled','5AypAEy','cKBPY','\x0a---\x20OpenCode\x20Plugin\x20---','GeZMM','has','aHChf','map','hasPlaintextAuth','parse',':\x20installed\x20(','JBOrx','\x20\x20\x20\x20Session:\x20','KVtyY','RXwjd','API\x20Token:\x20✗\x20Not\x20found','\x1b]8;;file://','\x20\x20\x20\x20Auth:\x20','ZVleX','\x20\x20Not\x20configured','opencode','\x1b[1m','encrypted','\x1b]8;;\x07','38ikYxnl','plugin','scope','not_configured','env','\x20[cloud]','SKILL.md','AFKYS','name','KbjKm','\x0a\x20\x20No\x20active\x20profile\x20set',':\x20configured','join','BixgV','Version:\x20','debug','includes','oWXvs','TATls','no\x20session','sessionUpdatedAt','path','283434zLRezj','kdEeq','14217SRgZYX','displayName','stdout','hFGbW','version','2776440xmbazl','match','\x20(up\x20to\x20date)','toString','unOsT','settings.json','\x20\x20Run:\x20ranger\x20setup\x20--opencode','rcsIQ','fzTKn','nnCii','ZdaHH','3493224GzuWqQ','161FEfELQ','klVLF','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','status','11701350bcvHQe','pipe','push','tDAaf','sqvVm','\x20\x20Active:\x20','KnQwI','data','ANTlL','auth.json','aZSBs','Root:\x20','some','log','\x20\x20Project-level:','EZAWx','unknown','length','123990Wzglgq','not_installed','details','success','filter','1882508cVARcP','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)'];_0x4090=function(){return _0x11c2c7;};return _0x4090();}import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';function _0x3e11(_0x4f04fd,_0x25842e){_0x4f04fd=_0x4f04fd-0x1c2;const _0x409078=_0x4090();let _0x3e1198=_0x409078[_0x4f04fd];return _0x3e1198;}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=_0xcc90fe=>_0x2e092f(0x207)+_0xcc90fe+'\x1b[0m',link=(_0x4fee75,_0x2c314f)=>_0x2e092f(0x202)+_0x4fee75+'\x07'+(_0x2c314f||_0x4fee75)+_0x2e092f(0x209);async function getOpencodePluginStatus(){const _0x43087b=_0x2e092f,_0x519b60={'iqamL':function(_0xcb2dde,_0x55b3a6){return _0xcb2dde(_0x55b3a6);},'xulSC':_0x43087b(0x1e4),'Pznee':'opencode-plugin','unOsT':function(_0x56275a,_0x1d8888){return _0x56275a!==_0x1d8888;},'sqvVm':function(_0xc591ed,_0x31a488){return _0xc591ed(_0x31a488);},'fzTKn':'configured','ihERR':function(_0x2f7b54,_0x230fde){return _0x2f7b54>_0x230fde;},'Bezyd':function(_0x4fe4cb,_0x2bdcd4,_0x2421d8,_0x452461){return _0x4fe4cb(_0x2bdcd4,_0x2421d8,_0x452461);},'gqiqa':_0x43087b(0x206),'klVLF':_0x43087b(0x219),'oJFgp':'config','RXwjd':_0x43087b(0x1d2),'kdEeq':_0x43087b(0x1d8),'aHChf':'close'};return new Promise(_0x47f89f=>{const _0x2b1388=_0x43087b,_0x14b88b=_0x519b60['Bezyd'](spawn,_0x519b60['gqiqa'],[_0x519b60[_0x2b1388(0x1ce)],_0x519b60['oJFgp']],{'stdio':['ignore',_0x519b60[_0x2b1388(0x200)],_0x519b60['RXwjd']]});let _0x8d649d='';_0x14b88b[_0x2b1388(0x224)]?.['on'](_0x519b60[_0x2b1388(0x221)],_0x53b00d=>{_0x8d649d+=_0x53b00d['toString']();}),_0x14b88b['stderr']?.['on'](_0x2b1388(0x1d8),_0x18e649=>{const _0x491152=_0x2b1388;_0x8d649d+=_0x18e649[_0x491152(0x1c4)]();}),_0x14b88b['on']('error',()=>{_0x519b60['iqamL'](_0x47f89f,{'status':_0x519b60['xulSC']});}),_0x14b88b['on'](_0x519b60[_0x2b1388(0x1f8)],_0x2af241=>{const _0x2b4123=_0x2b1388,_0x5d480a={'cKBPY':'string','rIraO':_0x519b60['Pznee']};if(_0x519b60[_0x2b4123(0x1c5)](_0x2af241,0x0)){_0x519b60['sqvVm'](_0x47f89f,{'status':_0x519b60['xulSC']});return;}const _0x943a87=_0x8d649d['trim']();let _0x20aa4b=null;if(_0x943a87)try{_0x20aa4b=JSON[_0x2b4123(0x1fb)](_0x943a87);}catch{const _0x15291f=_0x943a87[_0x2b4123(0x1c2)](/\{[\s\S]*\}$/);if(_0x15291f)try{_0x20aa4b=JSON[_0x2b4123(0x1fb)](_0x15291f[0x0]);}catch{_0x20aa4b=null;}}const _0x37870e=Array['isArray'](_0x20aa4b?.['plugin'])?_0x20aa4b?.[_0x2b4123(0x20b)]:[],_0x549e15=_0x37870e[_0x2b4123(0x1dd)](_0x3082ce=>{const _0x1ccedd=_0x2b4123;if(typeof _0x3082ce!==_0x5d480a[_0x1ccedd(0x1f4)])return![];return _0x3082ce[_0x1ccedd(0x21a)]('@ranger-testing/opencode-plugin')||_0x3082ce[_0x1ccedd(0x21a)](_0x5d480a['rIraO']);});if(_0x549e15){_0x519b60['iqamL'](_0x47f89f,{'status':_0x519b60[_0x2b4123(0x1c9)],'details':_0x519b60[_0x2b4123(0x1ec)](_0x37870e[_0x2b4123(0x1e2)],0x0)?_0x37870e[_0x2b4123(0x1e2)]+'\x20plugin(s)\x20configured':undefined});return;}if(_0x37870e[_0x2b4123(0x1e2)]>0x0){_0x519b60[_0x2b4123(0x1d5)](_0x47f89f,{'status':_0x2b4123(0x20d),'details':_0x37870e[_0x2b4123(0x1e2)]+'\x20plugin(s)\x20configured'});return;}_0x47f89f({'status':_0x2b4123(0x20d)});});});}async function getSkillsFromDir(_0xdd61ce,_0x2f0268){const _0x36fe4c=_0x2e092f,_0x28f616={'ZdaHH':function(_0xe2ece7,_0x19a25d,_0x22d517){return _0xe2ece7(_0x19a25d,_0x22d517);},'BixgV':function(_0x3ee544,_0x2f2999,_0xfbf052,_0x6ad442){return _0x3ee544(_0x2f2999,_0xfbf052,_0x6ad442);},'PFneq':_0x36fe4c(0x210),'mQXTB':'utf-8'};if(!existsSync(_0xdd61ce))return[];const _0x3dc580=[];try{const _0x44a7de=await _0x28f616[_0x36fe4c(0x1cb)](readdir,_0xdd61ce,{'withFileTypes':!![]});for(const _0x123f38 of _0x44a7de){if(_0x123f38['isDirectory']()){const _0x4b8a98=_0x28f616[_0x36fe4c(0x217)](join,_0xdd61ce,_0x123f38[_0x36fe4c(0x212)],_0x28f616['PFneq']);if(existsSync(_0x4b8a98)){let _0x2dbd87=_0x123f38['name'];try{const _0x38be79=await _0x28f616['ZdaHH'](readFile,_0x4b8a98,_0x28f616['mQXTB']),_0x261687=_0x38be79['match'](/name:\s*(.+)/);_0x261687&&(_0x2dbd87=_0x261687[0x1]['trim']());}catch{}_0x3dc580[_0x36fe4c(0x1d3)]({'name':_0x123f38[_0x36fe4c(0x212)],'displayName':_0x2dbd87,'path':_0x4b8a98,'level':_0x2f0268});}}}}catch{return[];}return _0x3dc580;}async function getInstalledSkills(){const _0x44768f=_0x2e092f,_0x230b47={'ZbNft':function(_0x793f1b,_0x2a1b04,_0x4a2724){return _0x793f1b(_0x2a1b04,_0x4a2724);},'KVtyY':function(_0x7d6136){return _0x7d6136();},'rpjky':'user'},[_0x67e5ff,_0x4b1ee6]=await Promise['all']([_0x230b47['ZbNft'](getSkillsFromDir,_0x230b47[_0x44768f(0x1ff)](getProjectSkillsDir),'project'),getSkillsFromDir(getUserSkillsDir(),_0x230b47['rpjky'])]);return{'project':_0x67e5ff,'user':_0x4b1ee6};}async function getEnvironments(){const _0x242da7=_0x2e092f,_0x120045={'HPzwi':function(_0x103473,_0x431523){return _0x103473(_0x431523);},'tDAaf':function(_0x3b373e,_0x4640d6,_0x56bdb9){return _0x3b373e(_0x4640d6,_0x56bdb9);},'RwBnD':_0x242da7(0x1c6),'oJoUk':function(_0x2d5fb7,_0x7226e6,_0x25e72b){return _0x2d5fb7(_0x7226e6,_0x25e72b);},'CfWTH':function(_0x189275,_0x6aefe7,_0x2b78b1){return _0x189275(_0x6aefe7,_0x2b78b1);},'Rnsxu':function(_0x4c754d,_0x2b5008){return _0x4c754d(_0x2b5008);},'hpxYW':function(_0x2355c5,_0x5585f5){return _0x2355c5===_0x5585f5;}},{envNames:_0x3a06e0,activeEnv:_0x1e5220}=await getEnvNames(),_0xecba28=getRangerDir();if(!existsSync(_0xecba28))return{'envs':[],'activeEnv':null};const _0x1213d7=_0x3a06e0['map'](_0x399b95=>{const _0x3ef411=_0x242da7,_0x1b8b73=_0x120045['HPzwi'](getEnvDir,_0x399b95),_0x18fa21=_0x120045[_0x3ef411(0x1d4)](join,_0x1b8b73,_0x120045['RwBnD']),_0x29a8ef=_0x120045['oJoUk'](join,_0x1b8b73,_0x3ef411(0x1da)),_0x5c7668=_0x120045['CfWTH'](join,_0x1b8b73,'auth.json.enc');return{'name':_0x399b95,'settingsPath':existsSync(_0x18fa21)?_0x18fa21:'(not\x20found)','hasPlaintextAuth':existsSync(_0x29a8ef),'hasEncryptedAuth':_0x120045['Rnsxu'](existsSync,_0x5c7668),'isActive':_0x120045['hpxYW'](_0x399b95,_0x1e5220)};});return{'envs':_0x1213d7,'activeEnv':_0x1e5220};}export async function status(){const _0x564722=_0x2e092f,_0x3f8aec={'nnCii':function(_0x4b7448){return _0x4b7448();},'auDkP':function(_0x135397,_0x9d7fea,_0x2ed372){return _0x135397(_0x9d7fea,_0x2ed372);},'qslEK':function(_0x3a4da2,_0x5e71ab){return _0x3a4da2(_0x5e71ab);},'ETygv':function(_0x17ca7d){return _0x17ca7d();},'BWmgo':function(_0x56cd11,_0x572e8d){return _0x56cd11!==_0x572e8d;},'KbjKm':function(_0x2af9ed,_0x18aee1){return _0x2af9ed(_0x18aee1);},'jecbn':_0x564722(0x1f5),'bZrUe':function(_0x57591a,_0x36bdda){return _0x57591a===_0x36bdda;},'uEmGZ':'configured','hRvwY':function(_0x5a90f8,_0x2d4c4a){return _0x5a90f8(_0x2d4c4a);},'PZnPz':'@ranger-testing/opencode-plugin','fldeW':function(_0x435af6,_0x22e351){return _0x435af6===_0x22e351;},'EZAWx':_0x564722(0x20d),'FJOLi':_0x564722(0x1c7),'KOXDd':_0x564722(0x1f0),'OQKLY':'\x0a---\x20Claude\x20Code\x20Plugin\x20---','JBOrx':function(_0x41e6c0,_0x278d66){return _0x41e6c0(_0x278d66);},'EugiL':'ranger@trailhead','hFGbW':'disabled','KOIYZ':_0x564722(0x1e9),'ANTlL':function(_0x4ce6e2,_0x37e46f){return _0x4ce6e2===_0x37e46f;},'gjYva':'No\x20skills\x20installed','aZSBs':_0x564722(0x1df),'KnQwI':function(_0x2c9107,_0x17a486,_0x82ccdb){return _0x2c9107(_0x17a486,_0x82ccdb);},'FwxTp':'\x20\x20User-level:','aFuYX':function(_0x237e86,_0x2564c5){return _0x237e86(_0x2564c5);},'GeZMM':function(_0xabaf7d,_0x5b6bbe){return _0xabaf7d(_0x5b6bbe);},'AFKYS':function(_0x2e3edb,_0x2f0239){return _0x2e3edb+_0x2f0239;},'ZVleX':'No\x20profiles\x20configured','apJQo':function(_0x5e3635,_0x3de137){return _0x5e3635>_0x3de137;},'rwnpt':function(_0xbdda7c,_0x1f43a2){return _0xbdda7c===_0x1f43a2;},'TATls':'\x20(active)','sKHGN':'plaintext','rcsIQ':'none','oWXvs':function(_0x32902e,_0x5c3e06,_0x56428c){return _0x32902e(_0x5c3e06,_0x56428c);}};console[_0x564722(0x1de)]('\x0a📊\x20Ranger\x20Status\x0a');const _0x2002cb=process['cwd'](),_0x56ce92=_0x3f8aec[_0x564722(0x1ca)](getRangerDir);if(!existsSync(_0x56ce92)){console['log']('Root:\x20'+_0x3f8aec['auDkP'](link,_0x2002cb,bold(basename(_0x2002cb)))),console[_0x564722(0x1de)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console['log'](_0x564722(0x1dc)+link(_0x2002cb,bold(_0x3f8aec['qslEK'](basename,_0x2002cb))));const _0x3db430=getCurrentVersion(),_0x3869e3=_0x3f8aec[_0x564722(0x1ef)](getLatestVersion);if(_0x3869e3['version']&&_0x3f8aec['BWmgo'](_0x3869e3['version'],_0x3db430))console['log']('Version:\x20'+_0x3db430+'\x20(latest:\x20'+_0x3869e3[_0x564722(0x226)]+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x3869e3['version']?console[_0x564722(0x1de)](_0x564722(0x218)+_0x3db430+_0x564722(0x1c3)):console['log'](_0x564722(0x218)+_0x3db430);const _0x54f1f6=await _0x3f8aec['nnCii'](getToken);if(_0x54f1f6){const _0x452135=await _0x3f8aec[_0x564722(0x213)](getCurrentUser,_0x54f1f6);_0x452135[_0x564722(0x1e6)]?console[_0x564722(0x1de)]('Organization:\x20'+bold(_0x452135['user']['organizationName'])):(console['log']('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x564722(0x1de)](_0x564722(0x201)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process[_0x564722(0x20e)]['DEBUG']&&(console['log']('API\x20Environment:\x20'+getCurrentEnvironment()),console['log']('API\x20URL:\x20'+getApiBaseUrl()));console[_0x564722(0x1de)](_0x3f8aec['jecbn']);const _0x1ee901=await _0x3f8aec[_0x564722(0x1ef)](getOpencodePluginStatus);if(_0x3f8aec['bZrUe'](_0x1ee901[_0x564722(0x1d0)],_0x3f8aec['uEmGZ']))console[_0x564722(0x1de)]('\x20\x20'+_0x3f8aec['hRvwY'](bold,_0x3f8aec['PZnPz'])+_0x564722(0x215)),_0x1ee901['details']&&console[_0x564722(0x1de)]('\x20\x20'+_0x1ee901['details']);else _0x3f8aec[_0x564722(0x1ea)](_0x1ee901[_0x564722(0x1d0)],_0x3f8aec[_0x564722(0x1e0)])?(console[_0x564722(0x1de)](_0x564722(0x205)),_0x1ee901[_0x564722(0x1e5)]&&console[_0x564722(0x1de)]('\x20\x20'+_0x1ee901[_0x564722(0x1e5)]),console['log'](_0x3f8aec['FJOLi'])):console[_0x564722(0x1de)](_0x3f8aec['KOXDd']);console['log'](_0x3f8aec['OQKLY']);const _0x56b568=await _0x3f8aec[_0x564722(0x1fd)](getPluginInfo,_0x3f8aec[_0x564722(0x1f1)]);if(_0x56b568){const _0x6bc56=_0x56b568[_0x564722(0x20c)]||_0x564722(0x1e1),_0x2fb1bc=_0x56b568['enabled']?_0x564722(0x1f2):_0x3f8aec[_0x564722(0x225)];console[_0x564722(0x1de)]('\x20\x20'+bold('ranger@trailhead')+_0x564722(0x1fc)+_0x6bc56+',\x20'+_0x2fb1bc+')');}else console[_0x564722(0x1de)]('\x20\x20Not\x20installed'),console['log'](_0x3f8aec['KOIYZ']);console['log']('\x0a---\x20Skills\x20---');const {project:_0x2d9f8d,user:_0x2d5625}=await _0x3f8aec[_0x564722(0x1ef)](getInstalledSkills),_0x1bcf30=_0x2d9f8d[_0x564722(0x1e7)](_0x3675f3=>RANGER_MANAGED_SKILLS[_0x564722(0x21a)](_0x3675f3['name'])),_0x277624=_0x2d5625['filter'](_0x4252ac=>RANGER_MANAGED_SKILLS[_0x564722(0x21a)](_0x4252ac[_0x564722(0x212)])),_0xed8734=_0x1bcf30['length']+_0x277624[_0x564722(0x1e2)];if(_0x3f8aec[_0x564722(0x1d9)](_0xed8734,0x0))console[_0x564722(0x1de)](_0x3f8aec['gjYva']),console[_0x564722(0x1de)]('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x1bcf30[_0x564722(0x1e2)]>0x0){console[_0x564722(0x1de)](_0x3f8aec[_0x564722(0x1db)]);for(const _0x1ed47c of _0x1bcf30){console['log'](_0x564722(0x1ed)+bold(_0x1ed47c['displayName'])+':\x20'+_0x3f8aec[_0x564722(0x1d7)](link,_0x1ed47c['path'],_0x3f8aec[_0x564722(0x213)](basename,_0x1ed47c['path'])));}}if(_0x277624['length']>0x0){console[_0x564722(0x1de)](_0x3f8aec['FwxTp']);for(const _0x1d55fe of _0x277624){console[_0x564722(0x1de)]('\x20\x20\x20\x20'+_0x3f8aec['aFuYX'](bold,_0x1d55fe[_0x564722(0x223)])+':\x20'+link(_0x1d55fe[_0x564722(0x21f)],_0x3f8aec[_0x564722(0x1f6)](basename,_0x1d55fe[_0x564722(0x21f)])));}}}console['log']('\x0a---\x20Profiles\x20---');const {envs:_0x5145ed,activeEnv:_0x4b7935}=await getEnvironments();let _0x1e11ed=[];if(_0x54f1f6)try{_0x1e11ed=await _0x3f8aec['ETygv'](listCloudProfiles);}catch{}const _0x4142e5=_0x3f8aec[_0x564722(0x211)](_0x5145ed['length'],_0x1e11ed['length']);if(_0x4142e5===0x0)console[_0x564722(0x1de)](_0x3f8aec[_0x564722(0x204)]),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{if(_0x4142e5>0x5){const _0xc3db87=[];_0x1e11ed[_0x564722(0x1e2)]>0x0&&_0xc3db87[_0x564722(0x1d3)](_0x1e11ed[_0x564722(0x1e2)]+'\x20cloud'),_0x3f8aec[_0x564722(0x1ee)](_0x5145ed['length'],0x0)&&_0xc3db87['push'](_0x5145ed['length']+'\x20local'),console['log'](_0x4142e5+_0x564722(0x1eb)+_0xc3db87[_0x564722(0x216)](',\x20')+')'),_0x4b7935&&console['log'](_0x564722(0x1d6)+bold(_0x4b7935)),console['log'](_0x564722(0x1cf));}else{for(const _0x580066 of _0x1e11ed){const _0x54d11c=_0x3f8aec['rwnpt'](_0x580066[_0x564722(0x212)],_0x4b7935)?_0x3f8aec[_0x564722(0x21c)]:'';console[_0x564722(0x1de)]('\x20\x20'+bold(_0x580066['name'])+_0x564722(0x20f)+_0x54d11c);const _0x413768=_0x580066[_0x564722(0x21e)]?'cached\x20(updated\x20'+_0x580066['sessionUpdatedAt']+')':_0x564722(0x21d);console['log'](_0x564722(0x1fe)+_0x413768);}const _0x3c7e91=new Set(_0x1e11ed[_0x564722(0x1f9)](_0x3ef024=>_0x3ef024['name']));for(const _0x7a76f1 of _0x5145ed){if(_0x3c7e91[_0x564722(0x1f7)](_0x7a76f1[_0x564722(0x212)]))continue;const _0x4da245=_0x7a76f1['isActive']?_0x3f8aec[_0x564722(0x21c)]:'',_0x2a9500=_0x7a76f1['hasEncryptedAuth']?_0x564722(0x208):_0x7a76f1[_0x564722(0x1fa)]?_0x3f8aec['sKHGN']:_0x3f8aec[_0x564722(0x1c8)];console[_0x564722(0x1de)]('\x20\x20'+_0x3f8aec['JBOrx'](bold,_0x7a76f1[_0x564722(0x212)])+'\x20[local]'+_0x4da245),console['log'](_0x564722(0x203)+_0x2a9500),_0x7a76f1['settingsPath']!=='(not\x20found)'&&console[_0x564722(0x1de)]('\x20\x20\x20\x20Settings:\x20'+_0x3f8aec[_0x564722(0x21b)](link,_0x7a76f1['settingsPath'],basename(_0x7a76f1['settingsPath'])));}if(!_0x4b7935){console[_0x564722(0x1de)](_0x564722(0x214));const _0x223441=[..._0x1e11ed[_0x564722(0x1f9)](_0x41869e=>_0x41869e[_0x564722(0x212)]),..._0x5145ed[_0x564722(0x1e7)](_0x234133=>!_0x3c7e91[_0x564722(0x1f7)](_0x234133['name']))[_0x564722(0x1f9)](_0x3d3ca5=>_0x3d3ca5[_0x564722(0x212)])];console['log']('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x223441['join'](',\x20')+')');}}}console['log']('');}
|