@ranger-testing/ranger-cli 3.1.1-alpha.b22d278-38 → 3.1.2-alpha.059c7a3-40
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 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/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/tunnelClient.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 _0x20c0(){const _0x4a3dd8=['CnkFa','Re-authenticating\x20via\x20MCP\x20bootstrap...','message','668872CzbRiB','log','489444PKLkQq','165QRVBkR','6586omKPEK','success','160422IewQBl','user','7420KnRZJZ','93556WOnXip','organizationName','1014759UzOabf','\x0a✅\x20API\x20key\x20stored\x20successfully','35BnXqxj'];_0x20c0=function(){return _0x4a3dd8;};return _0x20c0();}(function(_0x1f06c3,_0x1d1c23){const _0x2612cc=_0x594e,_0x25b852=_0x1f06c3();while(!![]){try{const _0x5b1c9f=parseInt(_0x2612cc(0x1c4))/0x1+-parseInt(_0x2612cc(0x1bf))/0x2+parseInt(_0x2612cc(0x1bd))/0x3+parseInt(_0x2612cc(0x1c3))/0x4*(-parseInt(_0x2612cc(0x1be))/0x5)+parseInt(_0x2612cc(0x1c1))/0x6*(parseInt(_0x2612cc(0x1c8))/0x7)+-parseInt(_0x2612cc(0x1cc))/0x8+-parseInt(_0x2612cc(0x1c6))/0x9;if(_0x5b1c9f===_0x1d1c23)break;else _0x25b852['push'](_0x25b852['shift']());}catch(_0x1452c8){_0x25b852['push'](_0x25b852['shift']());}}}(_0x20c0,0x1f9f1));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x594e(_0x39ed4d,_0x418702){_0x39ed4d=_0x39ed4d-0x1bd;const _0x20c0e5=_0x20c0();let _0x594e2c=_0x20c0e5[_0x39ed4d];return _0x594e2c;}import{getCurrentUser}from'./utils/userApi.js';import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';import{isInteractive}from'./utils/cloudProfileSession.js';export async function login(){const _0x8e8dbe=_0x594e,_0x9e14ea={'CnkFa':function(_0x4e95ee){return _0x4e95ee();},'zKUKp':function(_0x48392b,_0x245bec){return _0x48392b(_0x245bec);},'VZEVv':_0x8e8dbe(0x1c7)},_0x314217=await _0x9e14ea['CnkFa'](getMcpAuthOrigin);if(_0x314217){console[_0x8e8dbe(0x1cd)](_0x8e8dbe(0x1ca)),await mcpBootstrap();return;}if(!_0x9e14ea[_0x8e8dbe(0x1c9)](isInteractive))throw new Error('Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.');try{const _0x3bdeca=await runDeviceAuthFlow(),_0x1872fc=await _0x9e14ea['zKUKp'](getCurrentUser,_0x3bdeca);_0x1872fc[_0x8e8dbe(0x1c0)]?console['log']('\x0a✅\x20Logged\x20in\x20to\x20'+_0x1872fc[_0x8e8dbe(0x1c2)][_0x8e8dbe(0x1c5)]):console[_0x8e8dbe(0x1cd)](_0x9e14ea['VZEVv']);}catch(_0x8ad809){throw new Error('Login\x20failed:\x20'+(_0x8ad809 instanceof Error?_0x8ad809[_0x8e8dbe(0x1cb)]:_0x8ad809));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x56443f=_0x58a7;(function(_0x35a11c,_0x139b19){const _0xd99f04=_0x58a7,_0x31539f=_0x35a11c();while(!![]){try{const _0x1f25df=-parseInt(_0xd99f04(0x109))/0x1+-parseInt(_0xd99f04(0x124))/0x2*(parseInt(_0xd99f04(0xfc))/0x3)+-parseInt(_0xd99f04(0x155))/0x4*(-parseInt(_0xd99f04(0x10f))/0x5)+parseInt(_0xd99f04(0x120))/0x6*(-parseInt(_0xd99f04(0x122))/0x7)+-parseInt(_0xd99f04(0x14e))/0x8*(parseInt(_0xd99f04(0x15f))/0x9)+-parseInt(_0xd99f04(0x150))/0xa+-parseInt(_0xd99f04(0x12e))/0xb*(-parseInt(_0xd99f04(0x11b))/0xc);if(_0x1f25df===_0x139b19)break;else _0x31539f['push'](_0x31539f['shift']());}catch(_0x424d81){_0x31539f['push'](_0x31539f['shift']());}}}(_0x42d0,0x942e5));function _0x58a7(_0x438335,_0x5cb988){_0x438335=_0x438335-0xdf;const _0x42d0e0=_0x42d0();let _0x58a7ab=_0x42d0e0[_0x438335];return _0x58a7ab;}import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';import{createServer}from'http';function _0x42d0(){const _0x53247a=['\x0aOpening\x20browser\x20for\x20authentication...','close','dqWeF','ZnRzZ','Registering\x20OAuth\x20client...','bkKMP','split','XZKjk','then','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','client_id','POST','expires_in','hKCug','6skHDSu','suhcu','/callback','MxcxW','text','error','log','RToDe','ranger-cli','OQbRG','OAuth\x20error:\x20','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','Server\x20returned\x20error:\x20','707486bmElIV','\x0aToken\x20written\x20to\x20','UAory','KENcm','iZmLO','none','5931445EXADEh','2.0','proxied','ZNVKE','MCP\x20server\x20returned\x20HTTP\x20','IKhVv','toString','redirect_uri','start','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','sha256','rHITh','26844HmKdel','data:','mmlMW','HMAfR','oMcgW','356622ymIMjF','rJsRl','105sReBbx','expiresAt','756282zzVLcr','Iwovl','tHKWa','nxNkT','AqduF','authorization_endpoint','</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>','write','platform','result','17567JcNTXt','trim','string','stringify','LhZaP','2025-03-26','GPFMt','json','FVQxt','get_cli_token','url','pXAHy','iOYHC','now','rIeIu','open','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','Client\x20registration\x20failed:\x20','Plyju','set','xWuln','get','NpPLy','WrfAl','response_type','kmXlK','ANcXW','registration_endpoint','text/html','pathname','.ranger','kVcEf','48LUhvuH','authorization_code','8840560qxawEt','tools/call','QMaQK','parse','clientSecret','4CHgVFG','base64url','token','oYNCf','resource','Requesting\x20CLI\x20token...','jOABn','VhNrh','Exchanging\x20authorization\x20code...','stdout','1368675SgqArO','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','vCqKr','state','\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a','initialize','token_endpoint','\x0aUnexpected\x20response\x20structure:','clientId','OSzxI','searchParams','status','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','\x20done','origin','end','1.0.0','writeHead','TEbuY','code'];_0x42d0=function(){return _0x53247a;};return _0x42d0();}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','mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),_0x56443f(0x14c),'auth-origin.txt');export async function getMcpAuthOrigin(){const _0x5a4cc5=_0x56443f,_0x1a9871={'xWuln':function(_0x4cea24,_0x155064,_0x14306d){return _0x4cea24(_0x155064,_0x14306d);},'utYaC':'utf-8','GshLn':function(_0x47ebcf,_0x40000d){return _0x47ebcf||_0x40000d;}};try{const _0x65f724=(await _0x1a9871[_0x5a4cc5(0x142)](readFile,AUTH_ORIGIN_PATH,_0x1a9871['utYaC']))['trim']();return _0x1a9871['GshLn'](_0x65f724,null);}catch{return null;}}export async function mcpBootstrap(){const _0x9f00=_0x56443f,_0x1d2b25={'qDSLP':function(_0x5593e4){return _0x5593e4();},'hKEOH':function(_0x3883c0,_0x2efbb8){return _0x3883c0(_0x2efbb8);},'rHITh':function(_0x40cf02,_0x3acfe2){return _0x40cf02===_0x3acfe2;},'iZmLO':_0x9f00(0x111),'VSAeB':function(_0x3bee61,_0x3d20c0){return _0x3bee61+_0x3d20c0;},'AqduF':function(_0x330d68,_0x5d4054,_0x3e8882){return _0x330d68(_0x5d4054,_0x3e8882);}},_0x5a0a9e=_0x1d2b25['qDSLP'](getMcpAuthUrl);currentOrigin=_0x5a0a9e;const _0x582e5d=process[_0x9f00(0x15e)]['isTTY']??![];console[_0x9f00(0x102)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x5a0a9e+'\x0a');const _0x19041f=await _0x1d2b25['hKEOH'](tryUnauthenticated,_0x5a0a9e);let _0x164059=null;if(_0x1d2b25[_0x9f00(0x11a)](_0x19041f,_0x1d2b25[_0x9f00(0x10d)]))_0x164059='';else{_0x164059=await loadCachedToken();if(!_0x164059){if(!_0x582e5d)throw new Error(_0x1d2b25['VSAeB'](_0x9f00(0x107),'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.'));_0x164059=await oauthFlow(_0x5a0a9e);}}await _0x1d2b25[_0x9f00(0x128)](callGetCliToken,_0x5a0a9e,_0x164059);}async function tryUnauthenticated(_0x688d48){const _0x46cf74=_0x56443f,_0x4e8e79={'Iwovl':'2025-03-26','dqWeF':_0x46cf74(0x111),'CUPWq':function(_0x451dca,_0x571278){return _0x451dca===_0x571278;},'Plyju':'needs-oauth'},_0x39d3f0=await fetch(_0x688d48,{'method':'POST','headers':{'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream'},'body':JSON[_0x46cf74(0x131)]({'jsonrpc':'2.0','id':0x1,'method':_0x46cf74(0xdf),'params':{'protocolVersion':_0x4e8e79[_0x46cf74(0x125)],'capabilities':{},'clientInfo':{'name':_0x46cf74(0x104),'version':_0x46cf74(0xea)}}})});if(_0x39d3f0['ok'])return await _0x39d3f0[_0x46cf74(0x100)](),_0x4e8e79[_0x46cf74(0xf0)];if(_0x4e8e79['CUPWq'](_0x39d3f0[_0x46cf74(0xe5)],0x191))return await _0x39d3f0[_0x46cf74(0x100)](),_0x4e8e79[_0x46cf74(0x140)];const _0x378666=await _0x39d3f0['text']();throw new Error(_0x46cf74(0x113)+_0x39d3f0[_0x46cf74(0xe5)]+':\x20'+_0x378666);}class OAuthTimeoutError extends Error{constructor(_0x5cb63d){super(_0x5cb63d),this['name']='OAuthTimeoutError';}}async function oauthFlow(_0xc2bdaa){const _0x369702=_0x56443f,_0x3d3d72={'suhcu':function(_0x2f78aa,_0x1938a0){return _0x2f78aa(_0x1938a0);},'nxNkT':function(_0x1b8fab){return _0x1b8fab();}};try{return await _0x3d3d72[_0x369702(0xfd)](oauthFlowAttempt,_0xc2bdaa);}catch(_0xd28c43){if(_0xd28c43 instanceof OAuthTimeoutError&&await _0x3d3d72[_0x369702(0x127)](loadCachedClient))return console[_0x369702(0x102)](_0x369702(0x163)),await clearCachedClient(),await _0x3d3d72[_0x369702(0xfd)](oauthFlowAttempt,_0xc2bdaa);throw _0xd28c43;}}async function oauthFlowAttempt(_0x4dbeec){const _0x348e27=_0x56443f,_0x572d27={'hVvRp':_0x348e27(0x160),'UAory':function(_0x2710ad){return _0x2710ad();},'OxtwG':_0x348e27(0xf2),'QMaQK':'application/json','kmXlK':_0x348e27(0x14f),'xmpqi':'refresh_token','mmlMW':_0x348e27(0x10e),'AhWIf':function(_0x178972,_0x42bb06,_0x19f068){return _0x178972(_0x42bb06,_0x19f068);},'myojR':'Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','pXAHy':_0x348e27(0x156),'wpySH':_0x348e27(0x119),'CwdrB':'hex','HPKSx':_0x348e27(0x146),'XZKjk':_0x348e27(0xf8),'oYIgY':'code_challenge_method','oYNCf':'state','OwVcV':function(_0x357f10,_0xf06230){return _0x357f10(_0xf06230);},'bkKMP':'client_secret','hKCug':'resource','BsdOI':'\x20done','iYKUU':function(_0x308560,_0x26af57,_0x3b6bb8,_0x998d9){return _0x308560(_0x26af57,_0x3b6bb8,_0x998d9);}},_0x88a281=_0x4dbeec['replace'](/\/mcp$/,'');process[_0x348e27(0x15e)]['write']('Discovering\x20authorization\x20server...');const _0x386a54=await fetch(_0x88a281+'/.well-known/oauth-protected-resource');if(!_0x386a54['ok'])throw new Error(_0x348e27(0xe6));const _0x3d2536=await _0x386a54['json'](),_0x706020=_0x3d2536['authorization_servers']?.[0x0];if(!_0x706020)throw new Error(_0x572d27['hVvRp']);console['log']('\x20'+_0x706020);const _0x412da2=await fetchAuthServerMetadata(_0x706020);let _0x135a52,_0x302e2;const _0x56eb02=await _0x572d27[_0x348e27(0x10b)](loadCachedClient);if(_0x56eb02)_0x135a52=_0x56eb02[_0x348e27(0xe2)],_0x302e2=_0x56eb02['clientSecret'];else{if(_0x412da2[_0x348e27(0x149)]){process[_0x348e27(0x15e)][_0x348e27(0x12b)](_0x572d27['OxtwG']);const _0x1bc797=await fetch(_0x412da2['registration_endpoint'],{'method':_0x348e27(0xf9),'headers':{'Content-Type':_0x572d27[_0x348e27(0x152)]},'body':JSON[_0x348e27(0x131)]({'client_name':'Ranger\x20CLI','redirect_uris':['http://localhost:'+CALLBACK_PORT+'/callback'],'grant_types':[_0x572d27[_0x348e27(0x147)],_0x572d27['xmpqi']],'response_types':['code'],'token_endpoint_auth_method':_0x572d27[_0x348e27(0x11d)]})});if(!_0x1bc797['ok']){const _0x59274f=await _0x1bc797['text']();throw new Error(_0x348e27(0x13f)+_0x59274f);}const _0x5ab93b=await _0x1bc797[_0x348e27(0x135)]();_0x135a52=_0x5ab93b[_0x348e27(0xf8)],_0x302e2=_0x5ab93b['client_secret'],await _0x572d27['AhWIf'](saveCachedClient,_0x135a52,_0x302e2),console['log']('\x20done');}else throw new Error(_0x572d27['myojR']);}const _0x36b967=randomBytes(0x20)[_0x348e27(0x115)](_0x572d27[_0x348e27(0x139)]),_0x46dfa7=createHash(_0x572d27['wpySH'])['update'](_0x36b967)['digest']('base64url'),_0x33774b=randomBytes(0x10)[_0x348e27(0x115)](_0x572d27['CwdrB']),_0x1bf05f=new URL(_0x412da2[_0x348e27(0x129)]);_0x1bf05f[_0x348e27(0xe4)][_0x348e27(0x141)](_0x572d27['HPKSx'],_0x348e27(0xed)),_0x1bf05f['searchParams']['set'](_0x572d27[_0x348e27(0xf5)],_0x135a52),_0x1bf05f['searchParams']['set'](_0x348e27(0x116),'http://localhost:'+CALLBACK_PORT+_0x348e27(0xfe)),_0x1bf05f['searchParams']['set']('code_challenge',_0x46dfa7),_0x1bf05f[_0x348e27(0xe4)]['set'](_0x572d27['oYIgY'],'S256'),_0x1bf05f['searchParams']['set'](_0x572d27[_0x348e27(0x158)],_0x33774b);_0x3d2536[_0x348e27(0x159)]&&_0x1bf05f['searchParams']['set'](_0x348e27(0x159),_0x3d2536['resource']);console[_0x348e27(0x102)](_0x348e27(0xee)),console[_0x348e27(0x102)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0x1bf05f['toString']()+'\x0a'),await openBrowser(_0x1bf05f['toString']());const _0x476aab=await _0x572d27['OwVcV'](waitForCallback,_0x33774b);process['stdout'][_0x348e27(0x12b)](_0x348e27(0x15d));const _0x4bd039=new URLSearchParams({'grant_type':_0x572d27['kmXlK'],'code':_0x476aab,'redirect_uri':'http://localhost:'+CALLBACK_PORT+'/callback','client_id':_0x135a52,'code_verifier':_0x36b967});_0x302e2&&_0x4bd039['set'](_0x572d27[_0x348e27(0xf3)],_0x302e2);_0x3d2536[_0x348e27(0x159)]&&_0x4bd039['set'](_0x572d27[_0x348e27(0xfb)],_0x3d2536['resource']);const _0xe8be05=await fetch(_0x412da2[_0x348e27(0xe0)],{'method':_0x348e27(0xf9),'headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':_0x4bd039});if(!_0xe8be05['ok']){const _0xb5ae73=await _0xe8be05['text']();throw new Error('Token\x20exchange\x20failed:\x20'+_0xb5ae73);}const _0x3d9ab5=await _0xe8be05[_0x348e27(0x135)]();return console['log'](_0x572d27['BsdOI']),await _0x572d27['iYKUU'](saveCachedToken,_0x3d9ab5['access_token'],_0x3d9ab5['refresh_token'],_0x3d9ab5[_0x348e27(0xfa)]),_0x3d9ab5['access_token'];}async function callGetCliToken(_0x4ada59,_0x3a42cc){const _0x10cd2b=_0x56443f,_0x54b127={'HMAfR':function(_0x3eb122,_0x3c762f,_0x440696){return _0x3eb122(_0x3c762f,_0x440696);},'kVcEf':'application/json','oMcgW':'Initializing\x20MCP\x20session...','OSzxI':function(_0x254e6e,_0x52cbc8){return _0x254e6e(_0x52cbc8);},'HjECw':_0x10cd2b(0x133),'pmltT':function(_0x4548ba,_0x55a6ee,_0x4fd9ee){return _0x4548ba(_0x55a6ee,_0x4fd9ee);},'MxcxW':'2.0','NpPLy':_0x10cd2b(0x15a),'vCqKr':function(_0x243e8c,_0x5ae838,_0x325ead){return _0x243e8c(_0x5ae838,_0x325ead);},'WrfAl':function(_0x4c0ced){return _0x4c0ced();},'FSrZI':'.ranger','SwGrw':function(_0x91904a,_0x338115,_0x518ea4){return _0x91904a(_0x338115,_0x518ea4);},'tHKWa':function(_0x5614d2,_0x22bc13,_0x329c66,_0x16137f){return _0x5614d2(_0x22bc13,_0x329c66,_0x16137f);},'OQbRG':function(_0x34617e,_0x246b58,_0x3fdc0c){return _0x34617e(_0x246b58,_0x3fdc0c);}},_0x43a471={'Content-Type':_0x54b127[_0x10cd2b(0x14d)],'Accept':'application/json,\x20text/event-stream'};_0x3a42cc&&(_0x43a471['Authorization']='Bearer\x20'+_0x3a42cc);const _0x19bdab=async _0x4ed5e9=>{const _0x50dda3=_0x10cd2b,_0x2fd29e=await _0x54b127[_0x50dda3(0x11e)](fetch,_0x4ada59,{'method':_0x50dda3(0xf9),'headers':_0x43a471,'body':JSON[_0x50dda3(0x131)](_0x4ed5e9)});if(!_0x2fd29e['ok']){const _0x40ac21=await _0x2fd29e[_0x50dda3(0x100)]();throw new Error('HTTP\x20'+_0x2fd29e[_0x50dda3(0xe5)]+':\x20'+_0x40ac21);}return parseResponse(_0x2fd29e);};process['stdout']['write'](_0x54b127[_0x10cd2b(0x11f)]);const _0x290654=await _0x54b127[_0x10cd2b(0xe3)](_0x19bdab,{'jsonrpc':'2.0','id':0x1,'method':'initialize','params':{'protocolVersion':_0x54b127['HjECw'],'capabilities':{},'clientInfo':{'name':_0x10cd2b(0x104),'version':_0x10cd2b(0xea)}}});if(_0x290654['error'])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x290654['error']['message']??JSON[_0x10cd2b(0x131)](_0x290654['error'])));console['log'](_0x10cd2b(0xe7)),await _0x54b127['pmltT'](fetch,_0x4ada59,{'method':_0x10cd2b(0xf9),'headers':_0x43a471,'body':JSON['stringify']({'jsonrpc':_0x54b127[_0x10cd2b(0xff)],'method':'notifications/initialized'})})[_0x10cd2b(0xf6)](_0x12ad51=>_0x12ad51['text']()),process[_0x10cd2b(0x15e)]['write'](_0x54b127[_0x10cd2b(0x144)]);const _0x56e438=await _0x54b127['OSzxI'](_0x19bdab,{'jsonrpc':_0x10cd2b(0x110),'id':0x2,'method':_0x10cd2b(0x151),'params':{'name':_0x10cd2b(0x137),'arguments':{}}});if(_0x56e438[_0x10cd2b(0x101)])throw new Error('get_cli_token\x20failed:\x20'+(_0x56e438[_0x10cd2b(0x101)]['message']??JSON['stringify'](_0x56e438['error'])));console[_0x10cd2b(0x102)](_0x10cd2b(0xe7));const _0x127d40=_0x54b127['OSzxI'](extractToken,_0x56e438[_0x10cd2b(0x12d)]);if(!_0x127d40){console['error'](_0x10cd2b(0xe1)),console['error'](JSON[_0x10cd2b(0x131)](_0x56e438[_0x10cd2b(0x12d)],null,0x2));throw new Error(_0x10cd2b(0x13e));}const _0x22f327=_0x54b127[_0x10cd2b(0x161)](join,_0x54b127[_0x10cd2b(0x145)](homedir),_0x54b127['FSrZI']),_0x54020c=_0x54b127[_0x10cd2b(0x161)](join,_0x22f327,'refresh.txt');await _0x54b127['SwGrw'](mkdir,_0x22f327,{'recursive':!![]}),await _0x54b127[_0x10cd2b(0x126)](writeFile,_0x54020c,_0x127d40,{'mode':0x180}),await writeFile(_0x54b127[_0x10cd2b(0x105)](join,_0x22f327,'auth-origin.txt'),_0x4ada59,{'mode':0x180}),console[_0x10cd2b(0x102)](_0x10cd2b(0x10a)+_0x54020c),console['log'](_0x10cd2b(0x118));}async function fetchAuthServerMetadata(_0x2a426a){const _0x5081f1={'xneUt':function(_0x1cd8f7,_0x16ad6d){return _0x1cd8f7(_0x16ad6d);}},_0x2f1915=_0x2a426a+'/.well-known/oauth-authorization-server',_0x25b6d4=await _0x5081f1['xneUt'](fetch,_0x2f1915);if(!_0x25b6d4['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x2f1915+':\x20'+_0x25b6d4['status']);return _0x25b6d4['json']();}function waitForCallback(_0x348eb9){const _0x3695bb=_0x56443f,_0x57270a={'VhNrh':function(_0x13545b){return _0x13545b();},'LhZaP':function(_0x404e38,_0x572cde){return _0x404e38(_0x572cde);},'ICudw':function(_0x25bbbe,_0x4f661d){return _0x25bbbe!==_0x4f661d;},'sJxrD':'Not\x20found','RToDe':'code','KENcm':_0x3695bb(0x162),'jOABn':'error_description','GRVEq':_0x3695bb(0x14a),'TEbuY':function(_0x515d2f){return _0x515d2f();},'GSrmS':'<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','BoGyI':function(_0x57f97b){return _0x57f97b();},'VkIJZ':function(_0x21bfb6,_0x39df76){return _0x21bfb6(_0x39df76);}};return new Promise((_0x4f08d7,_0x45d34f)=>{const _0x48f7e3=()=>{const _0x3060fd=_0x58a7;_0xf2751f['closeAllConnections'](),_0xf2751f[_0x3060fd(0xef)]();},_0x2686fd=setTimeout(()=>{const _0x280167=_0x58a7;_0x57270a[_0x280167(0x15c)](_0x48f7e3),_0x57270a[_0x280167(0x132)](_0x45d34f,new OAuthTimeoutError('OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes'));},0x1d4c0),_0xf2751f=_0x57270a['LhZaP'](createServer,(_0x25cdd8,_0x4aaeb7)=>{const _0x13383c=_0x58a7,_0x5544e6=new URL(_0x25cdd8[_0x13383c(0x138)]??'/','http://localhost:'+CALLBACK_PORT);if(_0x57270a['ICudw'](_0x5544e6[_0x13383c(0x14b)],_0x13383c(0xfe))){_0x4aaeb7[_0x13383c(0xeb)](0x194),_0x4aaeb7[_0x13383c(0xe9)](_0x57270a['sJxrD']);return;}const _0x101fb9=_0x5544e6[_0x13383c(0xe4)]['get'](_0x57270a[_0x13383c(0x103)]),_0x28cd83=_0x5544e6[_0x13383c(0xe4)]['get'](_0x57270a[_0x13383c(0x10c)]),_0xc28cc0=_0x5544e6[_0x13383c(0xe4)][_0x13383c(0x143)]('error');if(_0xc28cc0){const _0x3044bc=_0x5544e6[_0x13383c(0xe4)][_0x13383c(0x143)](_0x57270a[_0x13383c(0x15b)])??_0xc28cc0;_0x4aaeb7[_0x13383c(0xeb)](0xc8,{'Content-Type':_0x57270a['GRVEq']}),_0x4aaeb7['end']('<html><body><h2>Authentication\x20failed</h2><p>'+_0x3044bc+_0x13383c(0x12a)),clearTimeout(_0x2686fd),_0x57270a[_0x13383c(0xec)](_0x48f7e3),_0x45d34f(new Error(_0x13383c(0x106)+_0x3044bc));return;}if(!_0x101fb9||_0x28cd83!==_0x348eb9){_0x4aaeb7['writeHead'](0x190,{'Content-Type':'text/html'}),_0x4aaeb7['end']('<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>');return;}_0x4aaeb7['writeHead'](0xc8,{'Content-Type':_0x57270a['GRVEq']}),_0x4aaeb7['end'](_0x57270a['GSrmS']),clearTimeout(_0x2686fd),_0x57270a['BoGyI'](_0x48f7e3),_0x57270a['VkIJZ'](_0x4f08d7,_0x101fb9);});_0xf2751f['listen'](CALLBACK_PORT,'127.0.0.1');});}async function openBrowser(_0x10b5a4){const _0x38eee1=_0x56443f,_0x591951={'ANcXW':function(_0x6df7af,_0x2c0b9b){return _0x6df7af===_0x2c0b9b;},'gzruO':'darwin','aJiBh':_0x38eee1(0x13d),'iOYHC':'win32','rIeIu':'xdg-open'},_0x460b64=_0x591951[_0x38eee1(0x148)](process[_0x38eee1(0x12c)],_0x591951['gzruO'])?_0x591951['aJiBh']:_0x591951[_0x38eee1(0x148)](process[_0x38eee1(0x12c)],_0x591951[_0x38eee1(0x13a)])?_0x38eee1(0x117):_0x591951[_0x38eee1(0x13c)];exec(_0x460b64+'\x20\x22'+_0x10b5a4+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x1ad07b=_0x56443f,_0x2d2dd2={'NPCfd':function(_0x592d9f,_0x4a4270,_0x39b52c){return _0x592d9f(_0x4a4270,_0x39b52c);},'GPFMt':function(_0x4410f8,_0x2a3e2a){return _0x4410f8>_0x2a3e2a;}};try{const _0x294d01=JSON[_0x1ad07b(0x153)](await _0x2d2dd2['NPCfd'](readFile,TOKEN_CACHE_PATH,'utf-8'));if(_0x294d01['origin']&&_0x294d01['origin']!==currentOrigin)return null;if(_0x294d01['expiresAt']&&_0x2d2dd2[_0x1ad07b(0x134)](Date[_0x1ad07b(0x13b)](),_0x294d01[_0x1ad07b(0x123)]))return null;return _0x294d01['accessToken']??null;}catch{return null;}}async function saveCachedToken(_0x322927,_0x24ac24,_0x579913){const _0x5ce415=_0x56443f,_0x4dd4af={'SokFo':function(_0x396fd5,_0x3bf4c5){return _0x396fd5+_0x3bf4c5;},'qBwHP':'.ranger'},_0x2d5964=await loadCachedData(),_0x5ade7d={..._0x2d5964,'origin':currentOrigin,'accessToken':_0x322927,'refreshToken':_0x24ac24??_0x2d5964?.['refreshToken'],'expiresAt':_0x579913?_0x4dd4af['SokFo'](Date[_0x5ce415(0x13b)](),_0x579913*0x3e8):undefined};await mkdir(join(homedir(),_0x4dd4af['qBwHP']),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON[_0x5ce415(0x131)](_0x5ade7d),{'mode':0x180});}async function loadCachedClient(){const _0x3d77e6=_0x56443f,_0x1b5bac={'ZnRzZ':function(_0x3a673d){return _0x3a673d();}},_0x32f327=await _0x1b5bac[_0x3d77e6(0xf1)](loadCachedData);if(_0x32f327?.[_0x3d77e6(0xe8)]&&_0x32f327['origin']!==currentOrigin)return null;return _0x32f327?.['clientId']?{'clientId':_0x32f327[_0x3d77e6(0xe2)],'clientSecret':_0x32f327[_0x3d77e6(0x154)]}:null;}async function clearCachedClient(){const _0x423cb2=await loadCachedData();if(!_0x423cb2)return;const {clientId:_0x1d6f47,clientSecret:_0x50bd16,..._0x431713}=_0x423cb2;await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x431713),{'mode':0x180});}async function saveCachedClient(_0x10cd16,_0x10fe3b){const _0x5e1a19=_0x56443f,_0x3303b2={'ZNVKE':function(_0x17a3bd,_0x2c275f,_0x375b01){return _0x17a3bd(_0x2c275f,_0x375b01);},'IKhVv':function(_0xde4c0a){return _0xde4c0a();},'FFJnv':'.ranger'},_0x3e4462=await loadCachedData(),_0x5f24f2={..._0x3e4462,'origin':currentOrigin,'accessToken':_0x3e4462?.['accessToken']??'','clientId':_0x10cd16,'clientSecret':_0x10fe3b};await mkdir(_0x3303b2[_0x5e1a19(0x112)](join,_0x3303b2[_0x5e1a19(0x114)](homedir),_0x3303b2['FFJnv']),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x5f24f2),{'mode':0x180});}async function loadCachedData(){const _0x4f3d61={'WsWJJ':'utf-8'};try{return JSON['parse'](await readFile(TOKEN_CACHE_PATH,_0x4f3d61['WsWJJ']));}catch{return null;}}async function parseResponse(_0x3a2753){const _0x4eda7d=_0x56443f,_0x20b612={'nDZGD':'text/event-stream','FVQxt':_0x4eda7d(0x11c)},_0x49a099=_0x3a2753['headers'][_0x4eda7d(0x143)]('content-type')??'';if(_0x49a099['includes'](_0x20b612['nDZGD'])){const _0x55a102=await _0x3a2753['text']();for(const _0x35f29b of _0x55a102[_0x4eda7d(0xf4)]('\x0a')){const _0x11181d=_0x35f29b['trim']();if(_0x11181d['startsWith'](_0x20b612['FVQxt'])){const _0x107c5e=_0x11181d['slice'](_0x20b612[_0x4eda7d(0x136)]['length'])[_0x4eda7d(0x12f)]();if(!_0x107c5e)continue;try{const _0x44c97a=JSON[_0x4eda7d(0x153)](_0x107c5e);if(_0x44c97a['id']!==undefined||_0x44c97a['error'])return _0x44c97a;}catch{}}}throw new Error(_0x4eda7d(0xf7));}return _0x3a2753[_0x4eda7d(0x135)]();}function extractToken(_0x3c4827){const _0x309dc5=_0x56443f,_0xf953bf={'LLcEX':_0x309dc5(0x130),'rJsRl':function(_0x32addc,_0xbdc978){return _0x32addc===_0xbdc978;}};if(!_0x3c4827)return null;const _0x1466ed=_0x3c4827['structuredContent'];if(_0x1466ed?.['token']&&typeof _0x1466ed[_0x309dc5(0x157)]===_0xf953bf['LLcEX'])return _0x1466ed['token'];if(_0x3c4827['isError']){const _0x55ee77=_0x3c4827['content'];throw new Error(_0x309dc5(0x108)+(_0x55ee77?.[0x0]?.[_0x309dc5(0x100)]??'Unknown\x20error'));}const _0x286b64=_0x3c4827['content'];if(_0x286b64)for(const _0x569ee2 of _0x286b64){if(_0xf953bf[_0x309dc5(0x121)](_0x569ee2['type'],_0x309dc5(0x100))&&_0x569ee2[_0x309dc5(0x100)]){try{const _0x168431=JSON[_0x309dc5(0x153)](_0x569ee2[_0x309dc5(0x100)]);if(typeof _0x168431?.[_0x309dc5(0x157)]==='string')return _0x168431['token'];}catch{}const _0xf7254=_0x569ee2[_0x309dc5(0x100)]['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0xf7254)return _0xf7254[0x1];}}return null;}
|
|
1
|
+
const _0x3f6f7e=_0x89f1;(function(_0x4046dd,_0x43afc7){const _0xef4360=_0x89f1,_0x584f4e=_0x4046dd();while(!![]){try{const _0x3b8155=parseInt(_0xef4360(0x1e1))/0x1*(-parseInt(_0xef4360(0x18d))/0x2)+-parseInt(_0xef4360(0x1bc))/0x3+parseInt(_0xef4360(0x17b))/0x4+-parseInt(_0xef4360(0x1e3))/0x5+-parseInt(_0xef4360(0x173))/0x6*(parseInt(_0xef4360(0x1a5))/0x7)+-parseInt(_0xef4360(0x177))/0x8+parseInt(_0xef4360(0x1b1))/0x9*(parseInt(_0xef4360(0x1b8))/0xa);if(_0x3b8155===_0x43afc7)break;else _0x584f4e['push'](_0x584f4e['shift']());}catch(_0x3699e1){_0x584f4e['push'](_0x584f4e['shift']());}}}(_0x386a,0xc0ad7));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';function _0x89f1(_0xd7d2b8,_0x44c847){_0xd7d2b8=_0xd7d2b8-0x172;const _0x386a14=_0x386a();let _0x89f149=_0x386a14[_0xd7d2b8];return _0x89f149;}import{createServer}from'http';import{randomBytes,createHash}from'crypto';function _0x386a(){const _0x253541=['XPLQP','LIllR','YVgiE','type','nTQki','get','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','OORLi','authorization_code','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','\x0aOpening\x20browser\x20for\x20authentication...','xSqjB','access_token','YSEOA','ysbqO','authorization_servers','writeHead','write','1yLXXNg','WFwdM','3169650wrSSDP','utf-8','1.0.0','TaLNw','end','notifications/initialized','ESoVM','isTTY','2025-03-26','oXWYl','trim','\x20done','RwnSh','platform','error','http://localhost:','UpyoJ','127.0.0.1','content','split','registration_endpoint','zavMq','closeAllConnections','close','client_secret','structuredContent','hex','fYuQj','AnWQJ','Lxofl','nIFau','base64url','replace','Exchanging\x20authorization\x20code...','132OyfCpl','awmAk','\x0aToken\x20written\x20to\x20','\x0aUnexpected\x20response\x20structure:','9595504XTwfEp','OAuth\x20error:\x20','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','Client\x20registration\x20failed:\x20','506960TbfnLs','gMUHB','/callback','IdTAp','toString','start','now','token_endpoint','result','client_id','error_description','OAuthTimeoutError','data:','yWMGu','VjTqk','log','needs-oauth','yqqCb','942322udcjlh','OFwTA','VSfez','message','.ranger','JIIvf','text','xdg-open','code_challenge','bWwUa','fNZlp','json','text/html','sha256','<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','win32','mNxmk','kpdja','authorization_endpoint','Discovering\x20authorization\x20server...','\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','POST','254919MNGMzF','application/json','stringify','state','wAIsX','MCP\x20initialize\x20failed:\x20','clientId','QqfOa','zUbBE','auth-origin.txt','searchParams','parse','9egrSXQ','startsWith','Token\x20exchange\x20failed:\x20','clientSecret','open','accessToken','origin','40818110QgumSi','kQjQy','includes','set','940923FbYyyY','lBNLy','TIsTn','noqGU','match','/.well-known/oauth-authorization-server','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','status','Bearer\x20','cpbpC','initialize','luUrL','srslM','stdout','xBQgE','yevHX','Vhuqh','listen'];_0x386a=function(){return _0x253541;};return _0x386a();}import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),_0x3f6f7e(0x191),'mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),'.ranger',_0x3f6f7e(0x1ae));export async function getMcpAuthOrigin(){const _0x27032f=_0x3f6f7e,_0x2efe9f={'ESoVM':'utf-8'};try{const _0x5be263=(await readFile(AUTH_ORIGIN_PATH,_0x2efe9f[_0x27032f(0x1e9)]))['trim']();return _0x5be263||null;}catch{return null;}}export async function mcpBootstrap(){const _0x57e3dc=_0x3f6f7e,_0x2fde46={'vosks':function(_0x25be98){return _0x25be98();},'MswHG':function(_0x1cb847,_0x26fffb){return _0x1cb847(_0x26fffb);}},_0x456ce3=_0x2fde46['vosks'](getMcpAuthUrl);currentOrigin=_0x456ce3;const _0x40e283=process[_0x57e3dc(0x1c9)][_0x57e3dc(0x1ea)]??![];console[_0x57e3dc(0x18a)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x456ce3+'\x0a');const _0x23c2af=await _0x2fde46['MswHG'](tryUnauthenticated,_0x456ce3);let _0x5ed8f8=null;if(_0x23c2af==='proxied')_0x5ed8f8='';else{_0x5ed8f8=await loadCachedToken();if(!_0x5ed8f8){if(!_0x40e283)throw new Error(_0x57e3dc(0x19c)+'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.');_0x5ed8f8=await oauthFlow(_0x456ce3);}}await callGetCliToken(_0x456ce3,_0x5ed8f8);}async function tryUnauthenticated(_0x185422){const _0x2fac6c=_0x3f6f7e,_0x238506={'luUrL':function(_0x4b1e80,_0x3e7fac,_0x230739){return _0x4b1e80(_0x3e7fac,_0x230739);},'YdCyX':_0x2fac6c(0x1a6),'HSFyK':'application/json,\x20text/event-stream','TIsTn':'2.0','noqGU':'2025-03-26','qZpkO':'ranger-cli','gMUHB':function(_0x51f0bc,_0x236661){return _0x51f0bc===_0x236661;},'bWwUa':_0x2fac6c(0x18b)},_0x35e5a9=await _0x238506[_0x2fac6c(0x1c7)](fetch,_0x185422,{'method':'POST','headers':{'Content-Type':_0x238506['YdCyX'],'Accept':_0x238506['HSFyK']},'body':JSON[_0x2fac6c(0x1a7)]({'jsonrpc':_0x238506[_0x2fac6c(0x1be)],'id':0x1,'method':'initialize','params':{'protocolVersion':_0x238506[_0x2fac6c(0x1bf)],'capabilities':{},'clientInfo':{'name':_0x238506['qZpkO'],'version':_0x2fac6c(0x1e5)}}})});if(_0x35e5a9['ok'])return await _0x35e5a9[_0x2fac6c(0x193)](),'proxied';if(_0x238506[_0x2fac6c(0x17c)](_0x35e5a9[_0x2fac6c(0x1c3)],0x191))return await _0x35e5a9['text'](),_0x238506[_0x2fac6c(0x196)];const _0x22426f=await _0x35e5a9['text']();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x35e5a9['status']+':\x20'+_0x22426f);}class OAuthTimeoutError extends Error{constructor(_0x5b7c51){const _0x532030=_0x3f6f7e;super(_0x5b7c51),this['name']=_0x532030(0x186);}}async function oauthFlow(_0x3deed9){const _0x4c56ad=_0x3f6f7e,_0x3bd0ba={'aQLJT':function(_0x54de20,_0xeb0ecb){return _0x54de20 instanceof _0xeb0ecb;},'OORLi':function(_0x17cef7){return _0x17cef7();}};try{return await oauthFlowAttempt(_0x3deed9);}catch(_0x2c8411){if(_0x3bd0ba['aQLJT'](_0x2c8411,OAuthTimeoutError)&&await loadCachedClient())return console['log'](_0x4c56ad(0x1a2)),await _0x3bd0ba[_0x4c56ad(0x1d5)](clearCachedClient),await oauthFlowAttempt(_0x3deed9);throw _0x2c8411;}}async function oauthFlowAttempt(_0xeee359){const _0x27ffd7=_0x3f6f7e,_0x54d96c={'WzKAD':_0x27ffd7(0x1a1),'XZxmR':_0x27ffd7(0x1a3),'giUGP':function(_0x2878ed){return _0x2878ed();},'spOcy':'Registering\x20OAuth\x20client...','YSEOA':function(_0x123fd7,_0xc7e02b,_0x2300d2){return _0x123fd7(_0xc7e02b,_0x2300d2);},'bQDBh':'authorization_code','WFwdM':'refresh_token','gCxAS':function(_0x5f2206,_0x5506b5,_0x5c0936){return _0x5f2206(_0x5506b5,_0x5c0936);},'IBrjN':function(_0x5767fd,_0x53626d){return _0x5767fd(_0x53626d);},'Lwkme':'base64url','TaLNw':function(_0x1305cc,_0x140b3c){return _0x1305cc(_0x140b3c);},'kfIlQ':'response_type','cpbpC':'code','wAIsX':'redirect_uri','IdTAp':'S256','SlpLZ':_0x27ffd7(0x1d9),'rjbys':'resource'},_0x2edbb7=_0xeee359[_0x27ffd7(0x203)](/\/mcp$/,'');process[_0x27ffd7(0x1c9)]['write'](_0x54d96c['WzKAD']);const _0x1f72f5=await fetch(_0x2edbb7+'/.well-known/oauth-protected-resource');if(!_0x1f72f5['ok'])throw new Error('Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server');const _0x15bf71=await _0x1f72f5['json'](),_0x29d52b=_0x15bf71[_0x27ffd7(0x1de)]?.[0x0];if(!_0x29d52b)throw new Error(_0x54d96c['XZxmR']);console['log']('\x20'+_0x29d52b);const _0x3b8548=await fetchAuthServerMetadata(_0x29d52b);let _0x4c621c,_0x1c84f4;const _0x530af9=await _0x54d96c['giUGP'](loadCachedClient);if(_0x530af9)_0x4c621c=_0x530af9[_0x27ffd7(0x1ab)],_0x1c84f4=_0x530af9[_0x27ffd7(0x1b4)];else{if(_0x3b8548[_0x27ffd7(0x1f7)]){process[_0x27ffd7(0x1c9)]['write'](_0x54d96c['spOcy']);const _0x1757d0=await _0x54d96c[_0x27ffd7(0x1dc)](fetch,_0x3b8548[_0x27ffd7(0x1f7)],{'method':_0x27ffd7(0x1a4),'headers':{'Content-Type':_0x27ffd7(0x1a6)},'body':JSON[_0x27ffd7(0x1a7)]({'client_name':'Ranger\x20CLI','redirect_uris':['http://localhost:'+CALLBACK_PORT+_0x27ffd7(0x17d)],'grant_types':[_0x54d96c['bQDBh'],_0x54d96c[_0x27ffd7(0x1e2)]],'response_types':['code'],'token_endpoint_auth_method':'none'})});if(!_0x1757d0['ok']){const _0x50ffc8=await _0x1757d0['text']();throw new Error(_0x27ffd7(0x17a)+_0x50ffc8);}const _0x90e9ae=await _0x1757d0['json']();_0x4c621c=_0x90e9ae[_0x27ffd7(0x184)],_0x1c84f4=_0x90e9ae['client_secret'],await _0x54d96c['gCxAS'](saveCachedClient,_0x4c621c,_0x1c84f4),console['log'](_0x27ffd7(0x1ee));}else throw new Error('Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found');}const _0x25a39b=randomBytes(0x20)['toString'](_0x27ffd7(0x202)),_0x29ad6c=_0x54d96c['IBrjN'](createHash,_0x27ffd7(0x19a))['update'](_0x25a39b)['digest'](_0x54d96c['Lwkme']),_0x3d7d68=_0x54d96c['TaLNw'](randomBytes,0x10)['toString'](_0x27ffd7(0x1fd)),_0x1b4144=new URL(_0x3b8548[_0x27ffd7(0x1a0)]);_0x1b4144[_0x27ffd7(0x1af)]['set'](_0x54d96c['kfIlQ'],_0x54d96c[_0x27ffd7(0x1c5)]),_0x1b4144[_0x27ffd7(0x1af)]['set'](_0x27ffd7(0x184),_0x4c621c),_0x1b4144[_0x27ffd7(0x1af)][_0x27ffd7(0x1bb)](_0x54d96c[_0x27ffd7(0x1a9)],'http://localhost:'+CALLBACK_PORT+'/callback'),_0x1b4144[_0x27ffd7(0x1af)][_0x27ffd7(0x1bb)](_0x27ffd7(0x195),_0x29ad6c),_0x1b4144[_0x27ffd7(0x1af)]['set']('code_challenge_method',_0x54d96c[_0x27ffd7(0x17e)]),_0x1b4144[_0x27ffd7(0x1af)][_0x27ffd7(0x1bb)](_0x27ffd7(0x1a8),_0x3d7d68);_0x15bf71['resource']&&_0x1b4144[_0x27ffd7(0x1af)]['set']('resource',_0x15bf71['resource']);console['log'](_0x54d96c['SlpLZ']),console[_0x27ffd7(0x18a)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0x1b4144['toString']()+'\x0a'),await _0x54d96c[_0x27ffd7(0x1e6)](openBrowser,_0x1b4144[_0x27ffd7(0x17f)]());const _0x5a3215=await waitForCallback(_0x3d7d68);process['stdout'][_0x27ffd7(0x1e0)](_0x27ffd7(0x172));const _0x165307=new URLSearchParams({'grant_type':_0x27ffd7(0x1d6),'code':_0x5a3215,'redirect_uri':_0x27ffd7(0x1f2)+CALLBACK_PORT+'/callback','client_id':_0x4c621c,'code_verifier':_0x25a39b});_0x1c84f4&&_0x165307['set'](_0x27ffd7(0x1fb),_0x1c84f4);_0x15bf71['resource']&&_0x165307[_0x27ffd7(0x1bb)](_0x54d96c['rjbys'],_0x15bf71['resource']);const _0x2c903f=await fetch(_0x3b8548[_0x27ffd7(0x182)],{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':_0x165307});if(!_0x2c903f['ok']){const _0x66b4e=await _0x2c903f[_0x27ffd7(0x193)]();throw new Error(_0x27ffd7(0x1b3)+_0x66b4e);}const _0x191fb1=await _0x2c903f['json']();return console['log']('\x20done'),await saveCachedToken(_0x191fb1['access_token'],_0x191fb1['refresh_token'],_0x191fb1['expires_in']),_0x191fb1[_0x27ffd7(0x1db)];}async function callGetCliToken(_0x121b39,_0x4ce84b){const _0x5010f6=_0x3f6f7e,_0x2e99be={'yqqCb':function(_0x544bf8,_0x4158cf,_0x9a50b4){return _0x544bf8(_0x4158cf,_0x9a50b4);},'yevHX':'application/json','QqfOa':'Authorization','kQjQy':'Initializing\x20MCP\x20session...','nIFau':function(_0x1508d7,_0x7ae00b){return _0x1508d7(_0x7ae00b);},'awmAk':'2.0','BCqMI':_0x5010f6(0x1c6),'JIIvf':_0x5010f6(0x1eb),'EkXBW':_0x5010f6(0x1e5),'lZzPj':'\x20done','dxFcy':'POST','uGoWq':function(_0x598860,_0x136901){return _0x598860(_0x136901);},'tdZwr':'tools/call','kpdja':'get_cli_token','srslM':function(_0x374aa3,_0x2e5bab){return _0x374aa3(_0x2e5bab);},'oicnW':function(_0x1974b5,_0x10e956,_0x592b84){return _0x1974b5(_0x10e956,_0x592b84);},'Ynqvj':function(_0x430700){return _0x430700();},'FRbuK':'refresh.txt','rXfKs':function(_0x2066b3,_0x4ab90a,_0x24a39c){return _0x2066b3(_0x4ab90a,_0x24a39c);},'VPIPm':function(_0x587d5f,_0x55a8fc,_0x4e28fb,_0xacaab2){return _0x587d5f(_0x55a8fc,_0x4e28fb,_0xacaab2);},'VSfez':function(_0x5c54b3,_0x57e403,_0x3c9467,_0x958d59){return _0x5c54b3(_0x57e403,_0x3c9467,_0x958d59);},'RwnSh':function(_0x49d244,_0x1da2ea,_0x5f4f75){return _0x49d244(_0x1da2ea,_0x5f4f75);}},_0x145cb6={'Content-Type':_0x2e99be[_0x5010f6(0x1cb)],'Accept':'application/json,\x20text/event-stream'};_0x4ce84b&&(_0x145cb6[_0x2e99be[_0x5010f6(0x1ac)]]=_0x5010f6(0x1c4)+_0x4ce84b);const _0x6c59b3=async _0x5b1e8b=>{const _0x38ae62=_0x5010f6,_0xcfd368=await _0x2e99be[_0x38ae62(0x18c)](fetch,_0x121b39,{'method':'POST','headers':_0x145cb6,'body':JSON['stringify'](_0x5b1e8b)});if(!_0xcfd368['ok']){const _0x14cb36=await _0xcfd368['text']();throw new Error('HTTP\x20'+_0xcfd368[_0x38ae62(0x1c3)]+':\x20'+_0x14cb36);}return parseResponse(_0xcfd368);};process[_0x5010f6(0x1c9)]['write'](_0x2e99be[_0x5010f6(0x1b9)]);const _0x4621ef=await _0x2e99be[_0x5010f6(0x201)](_0x6c59b3,{'jsonrpc':_0x2e99be[_0x5010f6(0x174)],'id':0x1,'method':_0x2e99be['BCqMI'],'params':{'protocolVersion':_0x2e99be[_0x5010f6(0x192)],'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x2e99be['EkXBW']}}});if(_0x4621ef['error'])throw new Error(_0x5010f6(0x1aa)+(_0x4621ef[_0x5010f6(0x1f1)]['message']??JSON[_0x5010f6(0x1a7)](_0x4621ef[_0x5010f6(0x1f1)])));console['log'](_0x2e99be['lZzPj']),await fetch(_0x121b39,{'method':_0x2e99be['dxFcy'],'headers':_0x145cb6,'body':JSON[_0x5010f6(0x1a7)]({'jsonrpc':_0x2e99be[_0x5010f6(0x174)],'method':_0x5010f6(0x1e8)})})['then'](_0xd1f6f3=>_0xd1f6f3['text']()),process[_0x5010f6(0x1c9)]['write']('Requesting\x20CLI\x20token...');const _0xc57b3=await _0x2e99be['uGoWq'](_0x6c59b3,{'jsonrpc':_0x2e99be[_0x5010f6(0x174)],'id':0x2,'method':_0x2e99be['tdZwr'],'params':{'name':_0x2e99be[_0x5010f6(0x19f)],'arguments':{}}});if(_0xc57b3['error'])throw new Error('get_cli_token\x20failed:\x20'+(_0xc57b3['error'][_0x5010f6(0x190)]??JSON[_0x5010f6(0x1a7)](_0xc57b3['error'])));console[_0x5010f6(0x18a)](_0x5010f6(0x1ee));const _0x38e64e=_0x2e99be[_0x5010f6(0x1c8)](extractToken,_0xc57b3[_0x5010f6(0x183)]);if(!_0x38e64e){console[_0x5010f6(0x1f1)](_0x5010f6(0x176)),console['error'](JSON['stringify'](_0xc57b3[_0x5010f6(0x183)],null,0x2));throw new Error(_0x5010f6(0x1d8));}const _0x3a2111=_0x2e99be['oicnW'](join,_0x2e99be['Ynqvj'](homedir),_0x5010f6(0x191)),_0x570d1b=join(_0x3a2111,_0x2e99be['FRbuK']);await _0x2e99be['rXfKs'](mkdir,_0x3a2111,{'recursive':!![]}),await _0x2e99be['VPIPm'](writeFile,_0x570d1b,_0x38e64e,{'mode':0x180}),await _0x2e99be[_0x5010f6(0x18f)](writeFile,_0x2e99be[_0x5010f6(0x1ef)](join,_0x3a2111,_0x5010f6(0x1ae)),_0x121b39,{'mode':0x180}),console[_0x5010f6(0x18a)](_0x5010f6(0x175)+_0x570d1b),console['log'](_0x5010f6(0x1d7));}async function fetchAuthServerMetadata(_0x4c6da9){const _0x4aa2dc=_0x3f6f7e,_0x4da126=_0x4c6da9+_0x4aa2dc(0x1c1),_0x5c1bd6=await fetch(_0x4da126);if(!_0x5c1bd6['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x4da126+':\x20'+_0x5c1bd6[_0x4aa2dc(0x1c3)]);return _0x5c1bd6[_0x4aa2dc(0x198)]();}function waitForCallback(_0x39d8b2){const _0x38b998=_0x3f6f7e,_0x1ed199={'Vhuqh':function(_0x36312a,_0x433e12){return _0x36312a!==_0x433e12;},'CPETd':'Not\x20found','tWoBc':'error','oXWYl':function(_0x59ca7b){return _0x59ca7b();},'nTQki':function(_0x4ea59b,_0x25ad32){return _0x4ea59b(_0x25ad32);},'scmKP':function(_0x576e19,_0x42cd1c,_0x3ea7a2){return _0x576e19(_0x42cd1c,_0x3ea7a2);},'OFwTA':function(_0x588154,_0x26e0ce){return _0x588154(_0x26e0ce);},'FzdgE':_0x38b998(0x1f4)};return new Promise((_0xed724a,_0x1f0993)=>{const _0x13d0f8=_0x38b998,_0x540eeb={'UpyoJ':function(_0x2e2af2,_0x222758){return _0x2e2af2(_0x222758);},'Lxofl':function(_0x1288be,_0x3d9594){const _0x3213c9=_0x89f1;return _0x1ed199[_0x3213c9(0x1cc)](_0x1288be,_0x3d9594);},'yWMGu':'/callback','fNZlp':_0x1ed199['CPETd'],'xBQgE':_0x1ed199['tWoBc'],'YVgiE':function(_0x3ffe82){const _0x1746eb=_0x89f1;return _0x1ed199[_0x1746eb(0x1ec)](_0x3ffe82);},'WUwOs':_0x13d0f8(0x19b),'xSqjB':_0x13d0f8(0x199),'cpyPI':_0x13d0f8(0x179),'oONZY':function(_0x202777,_0x919dff){const _0x1acf95=_0x13d0f8;return _0x1ed199[_0x1acf95(0x1d2)](_0x202777,_0x919dff);}},_0x4abce3=()=>{const _0x53b41d=_0x13d0f8;_0x134e8e[_0x53b41d(0x1f9)](),_0x134e8e[_0x53b41d(0x1fa)]();},_0xec3dc3=_0x1ed199['scmKP'](setTimeout,()=>{const _0x1b2f5d=_0x13d0f8;_0x4abce3(),_0x540eeb['UpyoJ'](_0x1f0993,new OAuthTimeoutError(_0x1b2f5d(0x1d4)));},0x1d4c0),_0x134e8e=_0x1ed199[_0x13d0f8(0x18e)](createServer,(_0x4cf924,_0x33e37d)=>{const _0x464525=_0x13d0f8,_0x52402a=new URL(_0x4cf924['url']??'/',_0x464525(0x1f2)+CALLBACK_PORT);if(_0x540eeb[_0x464525(0x200)](_0x52402a['pathname'],_0x540eeb[_0x464525(0x188)])){_0x33e37d['writeHead'](0x194),_0x33e37d['end'](_0x540eeb[_0x464525(0x197)]);return;}const _0x2e1543=_0x52402a['searchParams']['get']('code'),_0x13a8ef=_0x52402a[_0x464525(0x1af)][_0x464525(0x1d3)](_0x464525(0x1a8)),_0x46b3e1=_0x52402a['searchParams'][_0x464525(0x1d3)](_0x540eeb[_0x464525(0x1ca)]);if(_0x46b3e1){const _0x43b0b9=_0x52402a['searchParams']['get'](_0x464525(0x185))??_0x46b3e1;_0x33e37d['writeHead'](0xc8,{'Content-Type':'text/html'}),_0x33e37d[_0x464525(0x1e7)]('<html><body><h2>Authentication\x20failed</h2><p>'+_0x43b0b9+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),clearTimeout(_0xec3dc3),_0x540eeb[_0x464525(0x1d0)](_0x4abce3),_0x540eeb[_0x464525(0x1f3)](_0x1f0993,new Error(_0x464525(0x178)+_0x43b0b9));return;}if(!_0x2e1543||_0x13a8ef!==_0x39d8b2){_0x33e37d[_0x464525(0x1df)](0x190,{'Content-Type':'text/html'}),_0x33e37d[_0x464525(0x1e7)](_0x540eeb['WUwOs']);return;}_0x33e37d[_0x464525(0x1df)](0xc8,{'Content-Type':_0x540eeb[_0x464525(0x1da)]}),_0x33e37d['end'](_0x540eeb['cpyPI']),_0x540eeb['UpyoJ'](clearTimeout,_0xec3dc3),_0x4abce3(),_0x540eeb['oONZY'](_0xed724a,_0x2e1543);});_0x134e8e[_0x13d0f8(0x1cd)](CALLBACK_PORT,_0x1ed199['FzdgE']);});}async function openBrowser(_0x519ef3){const _0x5e086c=_0x3f6f7e,_0x4c1472={'ysbqO':'darwin','zavMq':_0x5e086c(0x1b5),'pzdEa':function(_0x2b549e,_0x519a94){return _0x2b549e===_0x519a94;},'CyQXv':_0x5e086c(0x19d),'zUbBE':_0x5e086c(0x180),'mNxmk':_0x5e086c(0x194),'AnWQJ':function(_0x253d69,_0x512aec){return _0x253d69(_0x512aec);}},_0x36b1aa=process[_0x5e086c(0x1f0)]===_0x4c1472[_0x5e086c(0x1dd)]?_0x4c1472[_0x5e086c(0x1f8)]:_0x4c1472['pzdEa'](process['platform'],_0x4c1472['CyQXv'])?_0x4c1472[_0x5e086c(0x1ad)]:_0x4c1472[_0x5e086c(0x19e)];_0x4c1472[_0x5e086c(0x1ff)](exec,_0x36b1aa+'\x20\x22'+_0x519ef3+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x3a86b0=_0x3f6f7e,_0x3623b3={'xWIxk':function(_0x8fb394,_0x50fe28){return _0x8fb394!==_0x50fe28;}};try{const _0x51c877=JSON[_0x3a86b0(0x1b0)](await readFile(TOKEN_CACHE_PATH,_0x3a86b0(0x1e4)));if(_0x51c877['origin']&&_0x3623b3['xWIxk'](_0x51c877[_0x3a86b0(0x1b7)],currentOrigin))return null;if(_0x51c877['expiresAt']&&Date['now']()>_0x51c877['expiresAt'])return null;return _0x51c877[_0x3a86b0(0x1b6)]??null;}catch{return null;}}async function saveCachedToken(_0x3f328c,_0xc8e03f,_0x23f3b6){const _0x21a45c=_0x3f6f7e,_0x3080a6={'lBNLy':function(_0x31b5c4,_0x4df9cc){return _0x31b5c4*_0x4df9cc;},'BNhZp':function(_0x317c0d,_0x3b0790,_0x355d4b){return _0x317c0d(_0x3b0790,_0x355d4b);},'aPjoK':function(_0xa8f84c,_0x62d779,_0x5f19a5,_0x4e029d){return _0xa8f84c(_0x62d779,_0x5f19a5,_0x4e029d);}},_0xc862a4=await loadCachedData(),_0x5830ec={..._0xc862a4,'origin':currentOrigin,'accessToken':_0x3f328c,'refreshToken':_0xc8e03f??_0xc862a4?.['refreshToken'],'expiresAt':_0x23f3b6?Date[_0x21a45c(0x181)]()+_0x3080a6[_0x21a45c(0x1bd)](_0x23f3b6,0x3e8):undefined};await mkdir(_0x3080a6['BNhZp'](join,homedir(),'.ranger'),{'recursive':!![]}),await _0x3080a6['aPjoK'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x5830ec),{'mode':0x180});}async function loadCachedClient(){const _0x47e0c0=_0x3f6f7e,_0x462f13=await loadCachedData();if(_0x462f13?.[_0x47e0c0(0x1b7)]&&_0x462f13['origin']!==currentOrigin)return null;return _0x462f13?.['clientId']?{'clientId':_0x462f13['clientId'],'clientSecret':_0x462f13['clientSecret']}:null;}async function clearCachedClient(){const _0x5b7bca=_0x3f6f7e,_0x2537b2={'fYuQj':function(_0x50eb98){return _0x50eb98();},'LIllR':function(_0x55a05b,_0x8f9381,_0x51214b,_0x4b1b60){return _0x55a05b(_0x8f9381,_0x51214b,_0x4b1b60);}},_0x34c19c=await _0x2537b2[_0x5b7bca(0x1fe)](loadCachedData);if(!_0x34c19c)return;const {clientId:_0x329cdc,clientSecret:_0x57d3f6,..._0x4ad136}=_0x34c19c;await _0x2537b2[_0x5b7bca(0x1cf)](writeFile,TOKEN_CACHE_PATH,JSON[_0x5b7bca(0x1a7)](_0x4ad136),{'mode':0x180});}async function saveCachedClient(_0x4e2f51,_0x4f7e4d){const _0x1e17a6=_0x3f6f7e,_0x2e60d2={'VjTqk':function(_0x582753,_0x343bfd,_0x493621){return _0x582753(_0x343bfd,_0x493621);},'ypDOB':_0x1e17a6(0x191),'lTYhW':function(_0xb7ac0b,_0x398346,_0x377743,_0x286f62){return _0xb7ac0b(_0x398346,_0x377743,_0x286f62);}},_0xcca223=await loadCachedData(),_0xdc839b={..._0xcca223,'origin':currentOrigin,'accessToken':_0xcca223?.['accessToken']??'','clientId':_0x4e2f51,'clientSecret':_0x4f7e4d};await _0x2e60d2[_0x1e17a6(0x189)](mkdir,_0x2e60d2[_0x1e17a6(0x189)](join,homedir(),_0x2e60d2['ypDOB']),{'recursive':!![]}),await _0x2e60d2['lTYhW'](writeFile,TOKEN_CACHE_PATH,JSON[_0x1e17a6(0x1a7)](_0xdc839b),{'mode':0x180});}async function loadCachedData(){const _0x1aff59=_0x3f6f7e,_0x308353={'OyAYe':_0x1aff59(0x1e4)};try{return JSON[_0x1aff59(0x1b0)](await readFile(TOKEN_CACHE_PATH,_0x308353['OyAYe']));}catch{return null;}}async function parseResponse(_0x1f8797){const _0x106fc3=_0x3f6f7e,_0x14a098={'twLCR':'content-type','jYHQY':'text/event-stream','cYXWA':_0x106fc3(0x1c2)},_0x4f72fa=_0x1f8797['headers'][_0x106fc3(0x1d3)](_0x14a098['twLCR'])??'';if(_0x4f72fa[_0x106fc3(0x1ba)](_0x14a098['jYHQY'])){const _0x318e21=await _0x1f8797[_0x106fc3(0x193)]();for(const _0xbd3d1b of _0x318e21[_0x106fc3(0x1f6)]('\x0a')){const _0x365e9d=_0xbd3d1b['trim']();if(_0x365e9d[_0x106fc3(0x1b2)](_0x106fc3(0x187))){const _0xe60230=_0x365e9d['slice']('data:'['length'])[_0x106fc3(0x1ed)]();if(!_0xe60230)continue;try{const _0x1ea0b9=JSON['parse'](_0xe60230);if(_0x1ea0b9['id']!==undefined||_0x1ea0b9[_0x106fc3(0x1f1)])return _0x1ea0b9;}catch{}}}throw new Error(_0x14a098['cYXWA']);}return _0x1f8797[_0x106fc3(0x198)]();}function extractToken(_0x3e1d15){const _0x3aa504=_0x3f6f7e,_0xa957dc={'XPLQP':function(_0x68f9f1,_0x4e3abc){return _0x68f9f1===_0x4e3abc;},'Bmoqb':'string','CsPbh':function(_0x32a72b,_0x5c9096){return _0x32a72b===_0x5c9096;}};if(!_0x3e1d15)return null;const _0x5a17f7=_0x3e1d15[_0x3aa504(0x1fc)];if(_0x5a17f7?.['token']&&_0xa957dc[_0x3aa504(0x1ce)](typeof _0x5a17f7['token'],_0xa957dc['Bmoqb']))return _0x5a17f7['token'];if(_0x3e1d15['isError']){const _0x18211b=_0x3e1d15[_0x3aa504(0x1f5)];throw new Error('Server\x20returned\x20error:\x20'+(_0x18211b?.[0x0]?.[_0x3aa504(0x193)]??'Unknown\x20error'));}const _0x55d475=_0x3e1d15[_0x3aa504(0x1f5)];if(_0x55d475)for(const _0x8928e8 of _0x55d475){if(_0xa957dc[_0x3aa504(0x1ce)](_0x8928e8[_0x3aa504(0x1d1)],'text')&&_0x8928e8['text']){try{const _0x4d8d7d=JSON['parse'](_0x8928e8['text']);if(_0xa957dc['CsPbh'](typeof _0x4d8d7d?.['token'],'string'))return _0x4d8d7d['token'];}catch{}const _0x143431=_0x8928e8['text'][_0x3aa504(0x1c0)](/(rngr_[A-Za-z0-9_-]+)/);if(_0x143431)return _0x143431[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x3be1(_0x1648d3,_0x2ecce7){_0x1648d3=_0x1648d3-0x126;var _0x119a8d=_0x119a();var _0x3be141=_0x119a8d[_0x1648d3];return _0x3be141;}(function(_0x2920ba,_0x2ace09){var _0x54a8c0=_0x3be1,_0x2209aa=_0x2920ba();while(!![]){try{var _0x5b65d2=-parseInt(_0x54a8c0(0x135))/0x1+parseInt(_0x54a8c0(0x129))/0x2*(parseInt(_0x54a8c0(0x130))/0x3)+-parseInt(_0x54a8c0(0x131))/0x4+-parseInt(_0x54a8c0(0x12e))/0x5+-parseInt(_0x54a8c0(0x12f))/0x6*(-parseInt(_0x54a8c0(0x132))/0x7)+parseInt(_0x54a8c0(0x128))/0x8*(parseInt(_0x54a8c0(0x12d))/0x9)+-parseInt(_0x54a8c0(0x12c))/0xa;if(_0x5b65d2===_0x2ace09)break;else _0x2209aa['push'](_0x2209aa['shift']());}catch(_0x4d8566){_0x2209aa['push'](_0x2209aa['shift']());}}}(_0x119a,0x69ecc));function _0x119a(){var _0xdc165c=['error','exit','8umQRWP','13402IgQTvI','SddxD','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','169130dkNLRn','5342643xkZPjD','4210220VtZQch','1340358MECltc','165IbDvIn','313956mjPqhI','21Girmsi','Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','261047lHlLwt','fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.','jRsVt'];_0x119a=function(){return _0xdc165c;};return _0x119a();}export async function migrateProfile(_0x488f1f,_0x37582c){var _0xc10d20=_0x3be1,_0x5512c6={'jRsVt':function(_0x27ea02,_0x47978e){return _0x27ea02+_0x47978e;},'wqlQL':'\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','SddxD':_0xc10d20(0x136)};console[_0xc10d20(0x126)](_0x5512c6[_0xc10d20(0x137)]('ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a'+'\x0a',_0xc10d20(0x134))+'\x20\x20ranger\x20profile\x20add\x20<name>\x0a'+'\x0a'+_0xc10d20(0x12b)+_0x5512c6['wqlQL']+'\x0a'+_0xc10d20(0x133)+_0x5512c6[_0xc10d20(0x12a)]),process[_0xc10d20(0x127)](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x245e4e,_0x1fef5b){const _0x8a87d6=_0x2077,_0x134ae0=_0x245e4e();while(!![]){try{const _0x42091f=-parseInt(_0x8a87d6(0x8a))/0x1*(parseInt(_0x8a87d6(0x8e))/0x2)+-parseInt(_0x8a87d6(0x9e))/0x3+parseInt(_0x8a87d6(0x78))/0x4*(-parseInt(_0x8a87d6(0x85))/0x5)+-parseInt(_0x8a87d6(0x89))/0x6*(parseInt(_0x8a87d6(0x9c))/0x7)+parseInt(_0x8a87d6(0x7d))/0x8*(parseInt(_0x8a87d6(0x99))/0x9)+parseInt(_0x8a87d6(0x75))/0xa+parseInt(_0x8a87d6(0x86))/0xb;if(_0x42091f===_0x1fef5b)break;else _0x134ae0['push'](_0x134ae0['shift']());}catch(_0x1665dc){_0x134ae0['push'](_0x134ae0['shift']());}}}(_0x2f9e,0xeed47));import{join}from'path';function _0x2077(_0x5ef80e,_0x22ad4a){_0x5ef80e=_0x5ef80e-0x6c;const _0x2f9e1e=_0x2f9e();let _0x207707=_0x2f9e1e[_0x5ef80e];return _0x207707;}function _0x2f9e(){const _0x494511=['output','ranger','project','15931720NiSVCq','ranger@trailhead','WFBlp','4irqbfK','OIRHt','✓\x20Claude\x20Code\x20plugin\x20enabled','marketplace','--scope','36904ZycECB','rBKxa','TCcvv','❌\x20Failed\x20to\x20add\x20marketplace:','SAaJx','vqKYF','WWUGw','UJtpb','9746855XKcury','22614493yBzNjI','wqVOI','SKILL.md','40506XcUwzi','2897ZkFGNq','log','yTDbA','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','332ngOqRH','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','wPDiJ','uDLyE','success','Project\x20(shared\x20with\x20team\x20via\x20git)','\x20level)...\x0a','pluginScope','nduat','Where\x20should\x20the\x20plugin\x20be\x20installed?','3231ZStWXL','xtGJh','plugin','1169iuDzlY','AUHUj','2307495NFEqCi','PtAaR','list','.claude','install','KxpDV','error','user','Aufkt'];_0x2f9e=function(){return _0x494511;};return _0x2f9e();}import{existsSync}from'fs';import _0x4dbdd7 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x5afe97){const _0x32cd2d=_0x2077,_0xd889dd={'SROtE':function(_0x18c149,_0x1af4af){return _0x18c149(_0x1af4af);},'xtGJh':_0x32cd2d(0x76),'uDLyE':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','pbdZj':function(_0x18fe9b,_0x15d7db,_0x534e6d){return _0x18fe9b(_0x15d7db,_0x534e6d);},'UJtpb':function(_0x59d2a1){return _0x59d2a1();},'rbfYw':_0x32cd2d(0x6c),'wqVOI':_0x32cd2d(0x74),'JNbFc':_0x32cd2d(0xa0),'yTDbA':_0x32cd2d(0x96),'WWUGw':'user','AUHUj':_0x32cd2d(0x94),'TMgZQ':function(_0x6fd88a,_0x4ebe5c){return _0x6fd88a(_0x4ebe5c);},'MgJYG':'trailhead','xWpfg':'add','vqKYF':_0x32cd2d(0x9b),'KxpDV':function(_0x4896b4,_0x2bb854){return _0x4896b4===_0x2bb854;},'WFBlp':function(_0x428cca){return _0x428cca();},'eYoQh':_0x32cd2d(0x90),'wPDiJ':_0x32cd2d(0x7c),'SAaJx':'already\x20enabled','OIRHt':'⚠\x20Failed\x20to\x20enable\x20plugin:'},_0x3b9a3d=await _0xd889dd['SROtE'](isPluginInstalled,_0xd889dd['xtGJh']);if(_0x3b9a3d)return console[_0x32cd2d(0x8b)](_0xd889dd[_0x32cd2d(0x92)]),![];const _0x22d5de=existsSync(_0xd889dd['pbdZj'](join,_0xd889dd['UJtpb'](getProjectRoot),_0xd889dd['rbfYw']));let _0x3782d0;if(_0x5afe97)_0x3782d0=_0x5afe97;else{if(_0x22d5de)_0x3782d0=_0xd889dd[_0x32cd2d(0x87)];else{console['log']('\x0a📦\x20Claude\x20Code\x20Plugin\x0a');const _0xe7fdb8=await _0x4dbdd7['prompt']([{'type':_0xd889dd['JNbFc'],'name':_0xd889dd[_0x32cd2d(0x8c)],'message':_0x32cd2d(0x98),'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':_0xd889dd[_0x32cd2d(0x83)]},{'name':_0xd889dd[_0x32cd2d(0x9d)],'value':_0x32cd2d(0x74)}],'default':_0xd889dd[_0x32cd2d(0x83)]}]);_0x3782d0=_0xe7fdb8['pluginScope'];}}console['log'](_0x32cd2d(0x8f)+_0x3782d0+_0x32cd2d(0x95));const _0x56435b=await _0xd889dd['TMgZQ'](isMarketplaceAdded,_0xd889dd['MgJYG']);let _0x451ad7=_0x56435b;if(_0x56435b)console[_0x32cd2d(0x8b)]('✓\x20Marketplace\x20already\x20added');else{const _0x54dd4e=await runClaudeCommand(['plugin',_0x32cd2d(0x7b),_0xd889dd['xWpfg'],'ranger-testing/trailhead']);!_0x54dd4e[_0x32cd2d(0x93)]?(console['error'](_0x32cd2d(0x80),_0x54dd4e[_0x32cd2d(0x6f)]),console[_0x32cd2d(0x8b)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console['log']('\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead'),console[_0x32cd2d(0x8b)](_0x32cd2d(0x8d)+_0x3782d0)):_0x451ad7=!![];}if(_0x451ad7){const _0x549e3b=await runClaudeCommand([_0xd889dd['vqKYF'],_0x32cd2d(0x6d),_0xd889dd[_0x32cd2d(0x9a)],'--scope',_0x3782d0],{'cwd':_0xd889dd[_0x32cd2d(0x6e)](_0x3782d0,_0xd889dd[_0x32cd2d(0x87)])?_0xd889dd[_0x32cd2d(0x77)](getProjectRoot):undefined});if(!_0x549e3b['success'])console[_0x32cd2d(0x6f)]('❌\x20Failed\x20to\x20install\x20plugin:',_0x549e3b[_0x32cd2d(0x6f)]),console[_0x32cd2d(0x8b)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console['log'](_0x32cd2d(0x8d)+_0x3782d0);else{console['log'](_0xd889dd['eYoQh']);const _0x30ae13=[_0xd889dd[_0x32cd2d(0x82)],'enable',_0xd889dd[_0x32cd2d(0x9a)]];_0x3782d0===_0xd889dd[_0x32cd2d(0x87)]&&_0x30ae13['push'](_0xd889dd[_0x32cd2d(0x91)],_0xd889dd['wqVOI']);const _0x3e083c=await runClaudeCommand(_0x30ae13,{'captureOutput':!![],'cwd':_0xd889dd['KxpDV'](_0x3782d0,_0xd889dd['wqVOI'])?_0xd889dd[_0x32cd2d(0x84)](getProjectRoot):undefined}),_0x423498=_0x3e083c[_0x32cd2d(0x72)]?.['includes'](_0xd889dd[_0x32cd2d(0x81)]);!_0x3e083c['success']&&!_0x423498?console['error'](_0xd889dd[_0x32cd2d(0x79)],_0x3e083c[_0x32cd2d(0x6f)]):console[_0x32cd2d(0x8b)](_0x32cd2d(0x7a));}}return!![];}export async function ensureClaudeSkills(_0x1ad334){const _0x134607=_0x2077,_0x232eae={'Aufkt':_0x134607(0x70),'PtAaR':function(_0x6604f2,_0x1216bb){return _0x6604f2(_0x1216bb);},'mdzlr':function(_0x5482b2,_0x4b2d61,_0x5d6872,_0x1bd286){return _0x5482b2(_0x4b2d61,_0x5d6872,_0x1bd286);},'UpaQK':_0x134607(0x74),'ZzxwM':_0x134607(0x73),'rBKxa':function(_0x42a7c7,_0x18a8d3){return _0x42a7c7||_0x18a8d3;},'nduat':'✓\x20Ranger\x20skills\x20already\x20installed','fHwfA':function(_0x16525d,_0x2183af,_0x58940b){return _0x16525d(_0x2183af,_0x58940b);},'JkaZa':function(_0x5c9ab9){return _0x5c9ab9();},'bRlux':'.claude','TCcvv':'Would\x20you\x20like\x20to\x20install\x20skills?'},_0x3a415b=existsSync(join(getSkillsDir(_0x232eae[_0x134607(0x71)]),'ranger',_0x134607(0x88))),_0x7013d=_0x232eae[_0x134607(0x9f)](existsSync,_0x232eae['mdzlr'](join,_0x232eae['PtAaR'](getSkillsDir,_0x232eae['UpaQK']),_0x232eae['ZzxwM'],'SKILL.md'));if(_0x232eae[_0x134607(0x7e)](_0x3a415b,_0x7013d))return console['log'](_0x232eae[_0x134607(0x97)]),![];const _0x1e4b4d=existsSync(_0x232eae['fHwfA'](join,_0x232eae['JkaZa'](getProjectRoot),_0x232eae['bRlux']));let _0x535d69=!![];if(_0x1ad334)await skillup({'autoInstall':_0x1ad334,'suppressUsage':!![]});else{if(_0x1e4b4d)await _0x232eae[_0x134607(0x9f)](skillup,{'autoInstall':_0x232eae['UpaQK'],'suppressUsage':!![]});else{const _0x15fca1=await _0x4dbdd7['prompt']([{'type':'confirm','name':'wantsSkillup','message':_0x232eae[_0x134607(0x7f)],'default':!![]}]);_0x535d69=_0x15fca1['wantsSkillup'],_0x535d69&&await skillup({'suppressUsage':!![]});}}return _0x535d69;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x432eee,_0x2f2073){const _0x214039=_0x15ac,_0x1bc840=_0x432eee();while(!![]){try{const _0x2f489d=parseInt(_0x214039(0x1f0))/0x1*(parseInt(_0x214039(0x1f6))/0x2)+parseInt(_0x214039(0x1f9))/0x3*(parseInt(_0x214039(0x20c))/0x4)+parseInt(_0x214039(0x1fe))/0x5+-parseInt(_0x214039(0x201))/0x6*(-parseInt(_0x214039(0x1ed))/0x7)+-parseInt(_0x214039(0x1f5))/0x8*(parseInt(_0x214039(0x1f1))/0x9)+-parseInt(_0x214039(0x1ee))/0xa+-parseInt(_0x214039(0x1f7))/0xb*(parseInt(_0x214039(0x202))/0xc);if(_0x2f489d===_0x2f2073)break;else _0x1bc840['push'](_0x1bc840['shift']());}catch(_0x179194){_0x1bc840['push'](_0x1bc840['shift']());}}}(_0x3a36,0x76438));function _0x15ac(_0x47499a,_0x1b3988){_0x47499a=_0x47499a-0x1ec;const _0x3a3657=_0x3a36();let _0x15acf2=_0x3a3657[_0x47499a];return _0x15acf2;}import{join}from'path';import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';function _0x3a36(){const _0x1e23fb=['$schema','https://opencode.ai/config.json','2562800YwlCQx','kIbQa','wpzSj','1069842FvjhaY','6540rxXvJB','includes','plugin','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','FXdgO','\x0a📦\x20OpenCode\x20Plugin\x0a','uuayD','isArray','log','Where\x20should\x20the\x20plugin\x20be\x20installed?','2344076DqOyXV','✓\x20OpenCode\x20plugin\x20already\x20configured','parse','User\x20(available\x20in\x20all\x20your\x20projects)','35znDWYy','6594990SSJdPR','yZFYp','212xqxqEo','684GvQIfa','VZFRD','OsEgS','oRYuJ','54072lOnykz','6092PHdzBD','19745YhQXpi','CRHpc','3aVenHT','stringify','utf-8'];_0x3a36=function(){return _0x1e23fb;};return _0x3a36();}import _0x480a94 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x264ce9){const _0x5dd1f4=_0x15ac,_0x4260ce={'vNpyo':function(_0xd71839,_0x3d9c92,_0x336500){return _0xd71839(_0x3d9c92,_0x336500);},'kIbQa':function(_0x46639d,_0x3236ee){return _0x46639d(_0x3236ee);},'CRHpc':'project','oRYuJ':_0x5dd1f4(0x207),'KBIdp':'list','OsEgS':'pluginScope','FXdgO':_0x5dd1f4(0x1ec),'XWjyl':'user','uuayD':'@ranger-testing/opencode-plugin','yZFYp':_0x5dd1f4(0x205),'VZFRD':'Failed\x20to\x20read\x20opencode.json','wpzSj':function(_0x357fb7,_0x520ab,_0x4afefc){return _0x357fb7(_0x520ab,_0x4afefc);},'qLqvj':function(_0x4341ab,_0x139334,_0xdef516){return _0x4341ab(_0x139334,_0xdef516);}},_0x3204f5=existsSync(_0x4260ce['vNpyo'](join,_0x4260ce[_0x5dd1f4(0x1ff)](getOpencodeConfigDir,'project'),'opencode.json'));let _0x2258d1;if(_0x264ce9)_0x2258d1=_0x264ce9;else{if(_0x3204f5)_0x2258d1=_0x4260ce[_0x5dd1f4(0x1f8)];else{console['log'](_0x4260ce[_0x5dd1f4(0x1f4)]);const _0x5a9aec=await _0x480a94['prompt']([{'type':_0x4260ce['KBIdp'],'name':_0x4260ce[_0x5dd1f4(0x1f3)],'message':_0x5dd1f4(0x20b),'choices':[{'name':_0x4260ce[_0x5dd1f4(0x206)],'value':_0x4260ce['XWjyl']},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x4260ce['CRHpc']}],'default':'user'}]);_0x2258d1=_0x5a9aec['pluginScope'];}}const _0x5a9969=join(getOpencodeConfigDir(_0x2258d1),'opencode.json'),_0x4acd88=_0x4260ce[_0x5dd1f4(0x208)],_0x2fa436=_0x5dd1f4(0x1fd);let _0x3383b6={};if(_0x4260ce['kIbQa'](existsSync,_0x5a9969))try{const _0x211880=await readFile(_0x5a9969,_0x5dd1f4(0x1fb));_0x3383b6=JSON[_0x5dd1f4(0x20e)](_0x211880);}catch(_0x2a1259){return console['error'](_0x4260ce[_0x5dd1f4(0x1ef)]),{'configured':![],'scope':_0x2258d1,'error':_0x4260ce[_0x5dd1f4(0x1f2)],'details':_0x2a1259};}const _0x529a05=Array[_0x5dd1f4(0x209)](_0x3383b6[_0x5dd1f4(0x204)])?_0x3383b6['plugin']:[];if(_0x529a05[_0x5dd1f4(0x203)](_0x4acd88))return console['log'](_0x5dd1f4(0x20d)),{'configured':![],'scope':_0x2258d1};return _0x3383b6[_0x5dd1f4(0x1fc)]=_0x3383b6[_0x5dd1f4(0x1fc)]||_0x2fa436,_0x3383b6[_0x5dd1f4(0x204)]=[..._0x529a05,_0x4acd88],await _0x4260ce[_0x5dd1f4(0x200)](mkdir,getOpencodeConfigDir(_0x2258d1),{'recursive':!![]}),await _0x4260ce['qLqvj'](writeFile,_0x5a9969,JSON[_0x5dd1f4(0x1fa)](_0x3383b6,null,0x2)+'\x0a'),console[_0x5dd1f4(0x20a)]('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0x2258d1};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x266aba,_0x56d754){var _0x1d9dc0=_0x4b43,_0x901ba4=_0x266aba();while(!![]){try{var _0x44315b=parseInt(_0x1d9dc0(0x194))/0x1*(-parseInt(_0x1d9dc0(0x18b))/0x2)+parseInt(_0x1d9dc0(0x193))/0x3*(parseInt(_0x1d9dc0(0x183))/0x4)+-parseInt(_0x1d9dc0(0x18d))/0x5*(parseInt(_0x1d9dc0(0x18f))/0x6)+-parseInt(_0x1d9dc0(0x191))/0x7+-parseInt(_0x1d9dc0(0x18e))/0x8+-parseInt(_0x1d9dc0(0x190))/0x9*(parseInt(_0x1d9dc0(0x18c))/0xa)+-parseInt(_0x1d9dc0(0x187))/0xb*(-parseInt(_0x1d9dc0(0x196))/0xc);if(_0x44315b===_0x56d754)break;else _0x901ba4['push'](_0x901ba4['shift']());}catch(_0xa780c9){_0x901ba4['push'](_0x901ba4['shift']());}}}(_0x59af,0xb2b3f));export async function setupCi(_0x3db482,_0x46b691,_0x37cad5){var _0x122811=_0x4b43,_0x2b1e8b={'gCBGs':function(_0x457b19,_0x100ae5){return _0x457b19+_0x100ae5;},'TOGGD':function(_0x3b5c91,_0x59a7fb){return _0x3b5c91+_0x59a7fb;},'aGTam':_0x122811(0x186),'OfHhv':_0x122811(0x185),'EalFz':_0x122811(0x188)};console['error'](_0x2b1e8b[_0x122811(0x189)](_0x2b1e8b[_0x122811(0x192)](_0x2b1e8b[_0x122811(0x192)](_0x122811(0x18a)+'\x0a',_0x2b1e8b['aGTam'])+_0x2b1e8b['OfHhv']+'\x0a',_0x2b1e8b[_0x122811(0x184)]),_0x122811(0x195))),process[_0x122811(0x197)](0x1);}function _0x4b43(_0x2c8b18,_0x2881e5){_0x2c8b18=_0x2c8b18-0x183;var _0x59afc3=_0x59af();var _0x4b4392=_0x59afc3[_0x2c8b18];return _0x4b4392;}function _0x59af(){var _0x3efbb7=['10TlFrLw','8504904bNXcZT','619116BZWmfu','9wvQxWs','7764638qdAVrE','TOGGD','42843oJwvII','263046IcjACu','\x20\x20https://docs.ranger.net/main/concepts/profiles','12gBCGSM','exit','68KOHigA','EalFz','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','51787758wfEACQ','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','gCBGs','ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','10YAHlNO','5248390lcfgnw'];_0x59af=function(){return _0x3efbb7;};return _0x59af();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x1471(){const _0x2cba28=['29343028pLihqf','GPyBq','/.opencode/skills/','claude','project','0|1|5|2|3|4','dHlzH','781496gGYmiq','18GCFruO','PHyEm','LEfOd','user','1446333JqCLgT','\x20\x203.\x20Run:\x20ranger\x20skillup','vZQLu','4216168QvRWmQ','\x0a✅\x20Installed\x20','\x20--opencode','To\x20get\x20started:','36TnMbij','FKIhj','Fxmlu','7698270pVLlZh','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','isTTY','4552060NRUcMs','vLDZz','42dAcxan','Where\x20should\x20skills\x20be\x20installed?','24OSaCqA','dtZBo','25622xrsiUt','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','installLevel','imcvo','UGjCr','HwWHM','vqiWd','log','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','opencode'];_0x1471=function(){return _0x2cba28;};return _0x1471();}(function(_0x210bf9,_0x411a18){const _0x4164d7=_0x23f6,_0x390391=_0x210bf9();while(!![]){try{const _0x1727b3=-parseInt(_0x4164d7(0xd6))/0x1*(-parseInt(_0x4164d7(0xe2))/0x2)+-parseInt(_0x4164d7(0xe0))/0x3*(parseInt(_0x4164d7(0xf3))/0x4)+-parseInt(_0x4164d7(0xd9))/0x5+parseInt(_0x4164d7(0xde))/0x6*(parseInt(_0x4164d7(0xf8))/0x7)+-parseInt(_0x4164d7(0xd2))/0x8*(parseInt(_0x4164d7(0xf4))/0x9)+parseInt(_0x4164d7(0xdc))/0xa+parseInt(_0x4164d7(0xec))/0xb;if(_0x1727b3===_0x411a18)break;else _0x390391['push'](_0x390391['shift']());}catch(_0x31f85b){_0x390391['push'](_0x390391['shift']());}}}(_0x1471,0xd547b));import{basename}from'path';import _0x144cbf from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';function _0x23f6(_0x1506f3,_0x455236){_0x1506f3=_0x1506f3-0xd0;const _0x1471fe=_0x1471();let _0x23f6ed=_0x1471fe[_0x1506f3];return _0x23f6ed;}import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0x1484e5={}){const _0x5047d4=_0x23f6,_0x10abe5={'Fxmlu':'\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','PHyEm':function(_0x1447a5){return _0x1447a5();},'vqiWd':_0x5047d4(0xf1),'iFwDF':'❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','dtZBo':_0x5047d4(0xd4),'imcvo':'opencode','vZQLu':_0x5047d4(0xea),'UGjCr':'✓\x20Found\x20API\x20token','dHlzH':function(_0x1abf15,_0x4b85e8){return _0x1abf15(_0x4b85e8);},'CgYDK':'user','GPyBq':function(_0x31ea5f){return _0x31ea5f();},'FKIhj':function(_0x110bc7,_0x2a4c44){return _0x110bc7===_0x2a4c44;},'AXIVp':'list','vLDZz':'installLevel','HwWHM':'project','dyZtD':'\x0a📦\x20Installing\x20skills...\x0a','YMSLl':function(_0x3fc75b,_0x4b6d99){return _0x3fc75b>_0x4b6d99;},'LEfOd':'project-level','MFxku':_0x5047d4(0xe3)};console[_0x5047d4(0xe9)](_0x10abe5[_0x5047d4(0xd8)]);const _0x4ea25d=_0x1484e5['platform']??_0x5047d4(0xef),_0x51e5c7=await _0x10abe5[_0x5047d4(0xf5)](getToken);if(!_0x51e5c7){const _0x4c151c=_0x10abe5[_0x5047d4(0xe8)]['split']('|');let _0x5ace78=0x0;while(!![]){switch(_0x4c151c[_0x5ace78++]){case'0':console['log'](_0x10abe5['iFwDF']);continue;case'1':console['log'](_0x5047d4(0xd5));continue;case'2':console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x4ea25d===_0x5047d4(0xeb)?_0x10abe5['dtZBo']:'')+'\x20<your-api-token>');continue;case'3':console[_0x5047d4(0xe9)](_0x5047d4(0xd0)+(_0x4ea25d===_0x10abe5[_0x5047d4(0xe5)]?_0x10abe5[_0x5047d4(0xe1)]:'')+'\x0a');continue;case'4':return;case'5':console[_0x5047d4(0xe9)](_0x10abe5[_0x5047d4(0xd1)]);continue;}break;}}console[_0x5047d4(0xe9)](_0x10abe5[_0x5047d4(0xe6)]);const _0x2b8f63=_0x10abe5[_0x5047d4(0xf5)](getProjectRoot),_0x3bec64=_0x10abe5[_0x5047d4(0xf2)](basename,_0x2b8f63),_0x32b61a=_0x4ea25d===_0x10abe5[_0x5047d4(0xe5)]?getOpencodeConfigDir(_0x10abe5['CgYDK'])+'/skills/':_0x10abe5[_0x5047d4(0xed)](getClaudeConfigDir)+'/skills/',_0x5a593d=_0x10abe5[_0x5047d4(0xd7)](_0x4ea25d,_0x10abe5[_0x5047d4(0xe5)])?_0x2b8f63+_0x5047d4(0xee):_0x2b8f63+'/.claude/skills/',_0x17e352=process['stdin'][_0x5047d4(0xdb)]&&process['stdout']['isTTY'];let _0x46ee2a;if(_0x1484e5['autoInstall'])_0x46ee2a=_0x1484e5['autoInstall'];else{if(_0x17e352){const _0x47ae5f=await _0x144cbf['prompt']([{'type':_0x10abe5['AXIVp'],'name':_0x10abe5[_0x5047d4(0xdd)],'message':_0x5047d4(0xdf),'choices':[{'name':'All\x20projects\x20('+_0x32b61a+')','value':_0x5047d4(0xf7)},{'name':'This\x20project\x20only\x20('+_0x5a593d+')','value':_0x5047d4(0xf0)}]}]);_0x46ee2a=_0x47ae5f[_0x5047d4(0xe4)];}else _0x46ee2a=_0x10abe5[_0x5047d4(0xe7)],console['log']('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x5a593d+')');}let _0x39efff=0x0;const _0x132b3c=getCurrentVersion();console[_0x5047d4(0xe9)](_0x10abe5['dyZtD']);try{const _0x252d68=await installSkill('ranger',{'cliVersion':_0x132b3c,'level':_0x46ee2a,'platform':_0x4ea25d});_0x252d68&&_0x39efff++;}catch(_0x8308ca){console['warn'](_0x5047d4(0xda),_0x8308ca instanceof Error?_0x8308ca['message']:_0x8308ca);}if(_0x10abe5['YMSLl'](_0x39efff,0x0)){const _0xf7ae6a=_0x46ee2a===_0x5047d4(0xf7)?'user-level':_0x10abe5[_0x5047d4(0xf6)];console[_0x5047d4(0xe9)](_0x5047d4(0xd3)+_0x39efff+'\x20'+_0xf7ae6a+'\x20skill'+(_0x39efff>0x1?'s':'')+'\x20successfully!\x0a'),!_0x1484e5['suppressUsage']&&(console['log']('To\x20use:'),_0x10abe5[_0x5047d4(0xd7)](_0x4ea25d,_0x5047d4(0xeb))?console[_0x5047d4(0xe9)]('\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.'):console['log']('\x20\x20-\x20Open\x20Claude\x20Code\x20in\x20plan\x20mode\x20and\x20run\x20/ranger:enable.\x20Plan\x20out\x20a\x20UI\x20feature\x20with\x20Ranger\x20and\x20watch\x20Ranger\x20test\x20it\x20for\x20you!'));}else console[_0x5047d4(0xe9)](_0x10abe5['MFxku']);}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x47b65a=_0x8395;(function(_0x2f71f6,_0x1b8b32){const _0x27d300=_0x8395,_0x2868e7=_0x2f71f6();while(!![]){try{const _0xd4ae76=parseInt(_0x27d300(0x22f))/0x1+parseInt(_0x27d300(0x222))/0x2*(-parseInt(_0x27d300(0x1e4))/0x3)+parseInt(_0x27d300(0x1f5))/0x4+parseInt(_0x27d300(0x1fa))/0x5*(-parseInt(_0x27d300(0x1e7))/0x6)+-parseInt(_0x27d300(0x1e3))/0x7*(-parseInt(_0x27d300(0x21a))/0x8)+parseInt(_0x27d300(0x1f9))/0x9+parseInt(_0x27d300(0x230))/0xa*(parseInt(_0x27d300(0x233))/0xb);if(_0xd4ae76===_0x1b8b32)break;else _0x2868e7['push'](_0x2868e7['shift']());}catch(_0x4c66a4){_0x2868e7['push'](_0x2868e7['shift']());}}}(_0x5280,0xa1362));import{mkdir,writeFile}from'fs/promises';import{join}from'path';function _0x5280(){const _0x18a596=['chromium','\x0a⚠\x20Skipping\x20Chromium\x20installation.','\x0aIn\x20Claude\x20Code,\x20run\x20','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','isTTY','message','withDeps','yvfPM','\x0aInstalling\x20Chromium\x20browser...\x0a','Cwhsb','platform','✓\x20Skipping\x20authentication\x20(--skip-auth)','hSqUS','nHYFj','env','status','\x0a\x20\x20','\x0a✅\x20Ranger\x20setup\x20complete!\x0a','808kjBeTf','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','skipChromium','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20','QJTkN','warn','npx','402778Bwgxbm','cMsEX','.gitignore','mMnDi','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','scope','OfgzU','✓\x20Created\x20~/.ranger/\x20directory','✓\x20Authenticated\x20to\x20','plugin','success','BrrFf','OyIJQ','89923vHxQAE','1930opeVYO','NuUiD','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','16731GFAzls','\x20(fallback\x20version)','Validating\x20API\x20token...','device_auth','ranger','user','GuSqV','confirm','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','...','install','trackPhaseStart','\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','skills','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','profile','organizationName','\x20is\x20no\x20longer\x20supported.\x20','auth','allowInsecureLocalhost','pOnum','19621DnQzWu','9mwKJVe','resolve','XbEin','302532pGCozb','\x20now?','\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)','executablePath','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','BAQse','You\x20can\x20install\x20it\x20manually\x20by\x20running:','MHNED','url','inherit','\x1b[0m','✓\x20Stored\x20credentials\x20locally','\x0a🚀\x20Ranger\x20Setup\x0a','trackPhaseEnd','1934336ccbCpP','FdaQr','VQxST','fmBKz','6928308AozxnB','65IGopjc','skipAuth','Authentication\x20failed:\x20','error','log','nVLqu','close','skipped','vVzxU','✓\x20Playwright\x20Chromium\x20browser\x20found','mxmZM','Zipox','zOwTI','force'];_0x5280=function(){return _0x18a596;};return _0x5280();}import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x4a7d50 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';function _0x8395(_0x1cb0c9,_0x5c5c5a){_0x1cb0c9=_0x1cb0c9-0x1e2;const _0x528045=_0x5280();let _0x83957=_0x528045[_0x1cb0c9];return _0x83957;}import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.58.2';const bold=_0x23322b=>'\x1b[1m'+_0x23322b+_0x47b65a(0x1f1);export function getPlaywrightVersion(){const _0x4c762a=_0x47b65a,_0x56b27d={'BAQse':'playwright/package.json'};try{const _0x720114=require[_0x4c762a(0x1e5)](_0x56b27d[_0x4c762a(0x1ec)]),_0x31c750=require(_0x720114);return _0x31c750['version'];}catch{return null;}}export function installChromiumBinary(_0x1e2360,_0xf582b1=![]){const _0x287b9c=_0x47b65a,_0x3d17ab={'yRqde':function(_0x8cd30d){return _0x8cd30d();},'zJZrY':_0x287b9c(0x208),'mxmZM':function(_0x4689b0,_0x47a722,_0x187c17,_0x157828){return _0x4689b0(_0x47a722,_0x187c17,_0x157828);},'OfgzU':'win32'};return new Promise((_0x3bcbf5,_0x4936f7)=>{const _0x240ec2=_0x287b9c,_0x1bc49d={'dQFRG':function(_0x23f2e8,_0x33c883){return _0x23f2e8(_0x33c883);}},_0x194a91=['playwright@'+_0x1e2360,'install',..._0xf582b1?['--with-deps']:[],_0x3d17ab['zJZrY']],_0x22af81=_0x3d17ab[_0x240ec2(0x204)](spawn,_0x240ec2(0x221),_0x194a91,{'stdio':['ignore',_0x240ec2(0x1f0),_0x240ec2(0x1f0)],'shell':process[_0x240ec2(0x212)]===_0x3d17ab[_0x240ec2(0x228)]});_0x22af81['on'](_0x240ec2(0x200),_0x36449d=>{_0x36449d===0x0?_0x3d17ab['yRqde'](_0x3bcbf5):_0x4936f7(new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x36449d));}),_0x22af81['on']('error',_0x55f8f3=>{_0x1bc49d['dQFRG'](_0x4936f7,_0x55f8f3);});});}export async function authenticate(_0x3f6ec5){const _0x46af64=_0x47b65a,_0x6cbdf3={'IHfzB':function(_0x3c2e67,_0x1f4aaa){return _0x3c2e67(_0x1f4aaa);},'SGMqr':'existing_token','nVLqu':function(_0x43208a,_0x30a21a){return _0x43208a(_0x30a21a);},'fGGqN':_0x46af64(0x1f2),'OyIJQ':'provided_token'};if(!_0x3f6ec5){const _0x2c1a57=await getToken();if(_0x2c1a57){const _0x4b2450=await _0x6cbdf3['IHfzB'](getCurrentUser,_0x2c1a57);if(_0x4b2450[_0x46af64(0x22c)])return console['log']('✓\x20Already\x20authenticated\x20to\x20'+_0x4b2450[_0x46af64(0x238)][_0x46af64(0x245)]),{'token':_0x2c1a57,'method':_0x6cbdf3['SGMqr']};}try{_0x3f6ec5=await runDeviceAuthFlow();}catch(_0x5921a4){throw new Error('Authentication\x20failed:\x20'+(_0x5921a4 instanceof Error?_0x5921a4[_0x46af64(0x20d)]:_0x5921a4));}const _0x108aad=await _0x6cbdf3[_0x46af64(0x1ff)](getCurrentUser,_0x3f6ec5);if(!_0x108aad['success'])throw new Error(_0x46af64(0x21e)+_0x108aad[_0x46af64(0x1fd)]);return console['log']('✓\x20Authenticated\x20to\x20'+_0x108aad['user']['organizationName']),{'token':_0x3f6ec5,'method':_0x46af64(0x236)};}console['log'](_0x46af64(0x235));const _0x499558=await getCurrentUser(_0x3f6ec5);if(!_0x499558[_0x46af64(0x22c)]){if(_0x499558[_0x46af64(0x217)])throw new Error(_0x46af64(0x1fc)+_0x499558[_0x46af64(0x1fd)]+'.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.');else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x499558[_0x46af64(0x1fd)]+_0x46af64(0x23b));}return console['log'](_0x46af64(0x22a)+_0x499558[_0x46af64(0x238)]['organizationName']),await _0x6cbdf3['nVLqu'](storeToken,_0x3f6ec5),console[_0x46af64(0x1fe)](process[_0x46af64(0x216)]['GITHUB_ENV']?'✓\x20Exported\x20credentials\x20for\x20CI':_0x6cbdf3['fGGqN']),{'token':_0x3f6ec5,'method':_0x6cbdf3[_0x46af64(0x22e)]};}export async function ensureRangerDir(_0x5e8442){const _0x2326ac=_0x47b65a,_0x4b0a5c={'yvfPM':function(_0x297134,_0x2299b5){return _0x297134(_0x2299b5);},'XEcgA':_0x2326ac(0x229)};void _0x5e8442;const _0x2cc476=getRangerHomeDir();return!_0x4b0a5c[_0x2326ac(0x20f)](existsSync,_0x2cc476)?(await mkdir(_0x2cc476,{'recursive':!![]}),console['log'](_0x4b0a5c['XEcgA']),{'path':_0x2cc476,'installed':!![]}):(console[_0x2326ac(0x1fe)]('✓\x20~/.ranger/\x20directory\x20already\x20exists'),{'path':_0x2cc476,'installed':![]});}export async function ensureChromium(_0x131766=![]){const _0x3025dc=_0x47b65a,_0x2175a7={'zOwTI':function(_0x384812,_0x351631){return _0x384812(_0x351631);},'Cwhsb':_0x3025dc(0x23a),'NMhhs':_0x3025dc(0x234),'KVaqj':function(_0xa33eee,_0x2ca7c6,_0x483034){return _0xa33eee(_0x2ca7c6,_0x483034);},'vVzxU':_0x3025dc(0x1ed),'BrrFf':_0x3025dc(0x209),'jxOXt':'You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'};let _0x3d95e5=![];try{const _0x44b422=chromium[_0x3025dc(0x1ea)]();_0x3d95e5=_0x2175a7[_0x3025dc(0x206)](existsSync,_0x44b422);}catch{_0x3d95e5=![];}if(_0x3d95e5)return console[_0x3025dc(0x1fe)](_0x3025dc(0x203)),![];const _0x18356b=getPlaywrightVersion(),_0x2c0de0=_0x18356b??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x43ea94=!_0x18356b,_0x28897f=process['stdin'][_0x3025dc(0x20c)]&&process['stdout']['isTTY'];let _0x495302=!![];if(_0x28897f){const {install:_0x14deef}=await _0x4a7d50['prompt']([{'type':_0x2175a7[_0x3025dc(0x211)],'name':_0x3025dc(0x23f),'message':_0x43ea94?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x2c0de0+_0x3025dc(0x1e8):'The\x20required\x20version\x20('+_0x2c0de0+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x495302=_0x14deef;}else console[_0x3025dc(0x1fe)]('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x2c0de0+(_0x43ea94?_0x2175a7['NMhhs']:'')+_0x3025dc(0x23e));if(_0x495302){console[_0x3025dc(0x1fe)](_0x3025dc(0x210));try{await _0x2175a7['KVaqj'](installChromiumBinary,_0x2c0de0,_0x131766),console[_0x3025dc(0x1fe)](_0x3025dc(0x23c));}catch(_0x298214){console['error']('\x0a❌\x20Failed\x20to\x20install\x20Chromium:',_0x298214 instanceof Error?_0x298214['message']:_0x298214),console['log'](_0x2175a7[_0x3025dc(0x202)]),console[_0x3025dc(0x1fe)]('\x20\x20npx\x20playwright@'+_0x2c0de0+'\x20install\x20chromium');}}else console['log'](_0x2175a7[_0x3025dc(0x22d)]),console['log'](_0x2175a7['jxOXt']),console[_0x3025dc(0x1fe)]('\x20\x20npx\x20playwright@'+_0x2c0de0+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x29e4e1){const _0x2e2cfc=_0x47b65a,_0x379d46={'zaHjs':function(_0x22cce,_0x4a1670,_0x5ccebe){return _0x22cce(_0x4a1670,_0x5ccebe);}},_0x37fb98=_0x379d46['zaHjs'](join,_0x29e4e1,_0x2e2cfc(0x224)),_0x478510='\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(_0x37fb98,_0x478510),console[_0x2e2cfc(0x1fe)]('✓\x20Created\x20.ranger/.gitignore');}export async function ensureLocalEnv(_0xe44787,_0xc555cf){const _0x5ad5cb=_0x47b65a,_0x54b0ab={'kowXp':function(_0x253254){return _0x253254();},'hSqUS':function(_0x1b6815,_0x5d4b28){return _0x1b6815!==_0x5d4b28;},'NuUiD':'user','QfpSp':_0x5ad5cb(0x23d),'nHYFj':'local'};if(!_0x54b0ab['kowXp'](findGitRoot)&&_0x54b0ab[_0x5ad5cb(0x214)](_0xe44787?.[_0x5ad5cb(0x227)],_0x54b0ab[_0x5ad5cb(0x231)]))return console['log'](_0x54b0ab['QfpSp']),{'ready':![],'skipped':!![]};const _0x32a6d6=_0xe44787?.[_0x5ad5cb(0x227)]==='user'?getRangerHomeDir():undefined;if(findExistingEnv(_0x54b0ab[_0x5ad5cb(0x215)],{'locations':['local'],'rangerDir':_0x32a6d6}))return console['log']('✓\x20Local\x20profile\x20already\x20exists'),{'ready':!![],'skipped':![]};try{return await addEnv('local',{'url':_0xe44787?.['url'],'force':_0xe44787?.['force'],'allowInsecureLocalhost':_0xe44787?.[_0x5ad5cb(0x248)],'scope':_0xe44787?.[_0x5ad5cb(0x227)]},_0xc555cf),{'ready':!![],'skipped':![]};}catch(_0x5107de){return console[_0x5ad5cb(0x1fd)]('\x0a❌\x20Profile\x20setup\x20failed:',_0x5107de instanceof Error?_0x5107de[_0x5ad5cb(0x20d)]:_0x5107de),{'ready':![],'skipped':![]};}}export async function start(_0x454a8d,_0x45fd3d,_0x14d39f){const _0x5d7c74=_0x47b65a,_0x47a152={'FdaQr':function(_0x474a13,_0x11273){return _0x474a13!==_0x11273;},'VQxST':function(_0x31f1f6,_0x20b65d){return _0x31f1f6+_0x20b65d;},'Zipox':function(_0x13947b,_0x5c8308){return _0x13947b(_0x5c8308);},'XbEin':_0x5d7c74(0x213),'mMnDi':_0x5d7c74(0x247),'UrwvY':'chromium','jNplB':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','RLDMv':function(_0x20f3f3,_0x152255){return _0x20f3f3(_0x152255);},'fmBKz':_0x5d7c74(0x22b),'QJTkN':function(_0x3647c4,_0x3ec42d){return _0x3647c4(_0x3ec42d);},'pOnum':_0x5d7c74(0x242),'cMsEX':function(_0x15bd47,_0x589751,_0x25e3e9){return _0x15bd47(_0x589751,_0x25e3e9);},'KNzin':function(_0xe8c003,_0x2af1b9){return _0xe8c003(_0x2af1b9);},'eKdsq':_0x5d7c74(0x241),'LUgZC':function(_0xc52a03,_0x573448,_0x500a1c){return _0xc52a03(_0x573448,_0x500a1c);},'uuCUP':_0x5d7c74(0x238),'vDuEO':function(_0x52e0f6,_0x52de50){return _0x52e0f6+_0x52de50;},'GuSqV':function(_0x45d057,_0x3a3536){return _0x45d057+_0x3a3536;},'OlBUT':_0x5d7c74(0x232),'MHNED':function(_0x446c01,_0x23b477){return _0x446c01+_0x23b477;}};console['log'](_0x5d7c74(0x1f3));_0x45fd3d?.['scope']!==undefined&&_0x47a152[_0x5d7c74(0x1f6)](_0x45fd3d['scope'],_0x5d7c74(0x238))&&(console[_0x5d7c74(0x1fd)](_0x47a152['VQxST']('ranger\x20setup\x20--scope='+_0x47a152[_0x5d7c74(0x205)](String,_0x45fd3d['scope'])+_0x5d7c74(0x246),_0x5d7c74(0x20b))+'project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.'),process['exit'](0x1));_0x45fd3d={..._0x45fd3d,'scope':'user'};const _0x35afaa=!existsSync(getRangerHomeDir());await _0x47a152[_0x5d7c74(0x205)](ensureRangerDir,'user');if(_0x45fd3d?.[_0x5d7c74(0x1fb)])console['log'](_0x47a152[_0x5d7c74(0x1e6)]),_0x14d39f?.['trackPhaseEnd'](_0x47a152[_0x5d7c74(0x225)],{'isFirstRun':_0x35afaa,'method':'skipped'});else{_0x14d39f?.['trackPhaseStart'](_0x47a152[_0x5d7c74(0x225)]);const _0x2cf1dc=await _0x47a152['Zipox'](authenticate,_0x454a8d);_0x14d39f?.[_0x5d7c74(0x1f4)]('auth',{'isFirstRun':_0x35afaa,'method':_0x2cf1dc['method']});}_0x14d39f?.[_0x5d7c74(0x240)](_0x47a152['UrwvY']);_0x45fd3d?.[_0x5d7c74(0x21c)]?console['log'](_0x47a152['jNplB']):await _0x47a152['RLDMv'](ensureChromium,_0x45fd3d?.[_0x5d7c74(0x20e)]);_0x14d39f?.['trackPhaseEnd'](_0x5d7c74(0x208),{'isFirstRun':_0x35afaa,'skipped':!!_0x45fd3d?.['skipChromium']}),console[_0x5d7c74(0x1fe)](_0x5d7c74(0x219));const _0x49abc9=_0x45fd3d?.[_0x5d7c74(0x227)],_0x312eec=_0x45fd3d?.['opencode']??![];let _0x4a977e=null;_0x312eec?(_0x14d39f?.[_0x5d7c74(0x240)](_0x47a152[_0x5d7c74(0x1f8)]),_0x4a977e=await _0x47a152[_0x5d7c74(0x21f)](ensureOpencodePluginConfig,_0x49abc9),_0x14d39f?.[_0x5d7c74(0x1f4)]('plugin',{'isFirstRun':_0x35afaa,'opencode':!![]})):(_0x14d39f?.['trackPhaseStart']('plugin'),await ensureClaudePlugin(_0x49abc9),_0x14d39f?.[_0x5d7c74(0x1f4)](_0x47a152['fmBKz'],{'isFirstRun':_0x35afaa}));if(_0x312eec&&_0x4a977e){_0x14d39f?.[_0x5d7c74(0x240)](_0x47a152['pOnum']);try{await _0x47a152[_0x5d7c74(0x223)](installSkill,_0x5d7c74(0x237),{'level':_0x4a977e[_0x5d7c74(0x227)],'cliVersion':getCurrentVersion(),'platform':'opencode'}),_0x14d39f?.[_0x5d7c74(0x1f4)](_0x47a152['pOnum'],{'isFirstRun':_0x35afaa,'opencode':!![]});}catch(_0x8a4494){console[_0x5d7c74(0x220)](_0x5d7c74(0x21d),_0x8a4494 instanceof Error?_0x8a4494[_0x5d7c74(0x20d)]:_0x8a4494),_0x14d39f?.[_0x5d7c74(0x1f4)]('skills',{'isFirstRun':_0x35afaa,'opencode':!![],'failed':!![]});}}else _0x14d39f?.[_0x5d7c74(0x240)](_0x47a152[_0x5d7c74(0x1e2)]),await _0x47a152['KNzin'](ensureClaudeSkills,_0x49abc9),_0x14d39f?.[_0x5d7c74(0x1f4)]('skills',{'isFirstRun':_0x35afaa});if(_0x45fd3d?.['skipAuth'])console['log'](_0x47a152['eKdsq']);else{if(_0x45fd3d?.['url']){_0x14d39f?.[_0x5d7c74(0x240)](_0x5d7c74(0x244));const _0x9d7344=await _0x47a152['LUgZC'](ensureLocalEnv,{'url':_0x45fd3d[_0x5d7c74(0x1ef)],'force':_0x45fd3d?.[_0x5d7c74(0x207)],'allowInsecureLocalhost':_0x45fd3d?.[_0x5d7c74(0x248)],'scope':_0x47a152['uuCUP']},_0x14d39f);_0x14d39f?.[_0x5d7c74(0x1f4)](_0x5d7c74(0x244),{'isFirstRun':_0x35afaa,'profileReady':_0x9d7344['ready'],'userSkipped':_0x9d7344[_0x5d7c74(0x201)]});}else console[_0x5d7c74(0x1fe)](_0x47a152['vDuEO'](_0x47a152['VQxST'](_0x47a152[_0x5d7c74(0x239)](_0x5d7c74(0x1eb)+(_0x5d7c74(0x218)+bold('ranger\x20profile\x20add\x20<name>')),_0x5d7c74(0x1e9)),'\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:'),_0x5d7c74(0x226)));}if(_0x312eec)console['log'](_0x47a152['OlBUT']),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console[_0x5d7c74(0x1fe)](_0x5d7c74(0x21b)),console['log']('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x415596=bold('/ranger:enable');console[_0x5d7c74(0x1fe)](_0x47a152[_0x5d7c74(0x1f7)](_0x47a152['vDuEO'](_0x47a152[_0x5d7c74(0x1ee)](_0x5d7c74(0x20a)+_0x415596+'\x20and\x20prompt\x20the\x20coding',_0x5d7c74(0x243)),'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),'\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'));}}
|
|
1
|
+
const _0xa805c9=_0x4c83;(function(_0x4e5b5d,_0x581b5b){const _0x2ea9ad=_0x4c83,_0x2aba70=_0x4e5b5d();while(!![]){try{const _0x2cd98f=-parseInt(_0x2ea9ad(0x188))/0x1*(parseInt(_0x2ea9ad(0x18b))/0x2)+parseInt(_0x2ea9ad(0x1dc))/0x3+-parseInt(_0x2ea9ad(0x192))/0x4+parseInt(_0x2ea9ad(0x1db))/0x5+parseInt(_0x2ea9ad(0x1e1))/0x6*(-parseInt(_0x2ea9ad(0x1bc))/0x7)+-parseInt(_0x2ea9ad(0x199))/0x8+parseInt(_0x2ea9ad(0x1d8))/0x9;if(_0x2cd98f===_0x581b5b)break;else _0x2aba70['push'](_0x2aba70['shift']());}catch(_0x2acc2f){_0x2aba70['push'](_0x2aba70['shift']());}}}(_0x469e,0x23f58));import{mkdir,writeFile}from'fs/promises';function _0x4c83(_0x1f6214,_0x3a8c49){_0x1f6214=_0x1f6214-0x183;const _0x469ebb=_0x469e();let _0x4c83ae=_0x469ebb[_0x1f6214];return _0x4c83ae;}import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x3f733a 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';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0xa805c9(0x1b5);const bold=_0x53490b=>_0xa805c9(0x184)+_0x53490b+_0xa805c9(0x1c4);export function getPlaywrightVersion(){const _0x458870=_0xa805c9,_0x576c28={'MoXke':_0x458870(0x1a5),'QpAhO':function(_0x113f21,_0x2c3c8d){return _0x113f21(_0x2c3c8d);}};try{const _0xd74059=require['resolve'](_0x576c28[_0x458870(0x1d2)]),_0x26a044=_0x576c28[_0x458870(0x1cd)](require,_0xd74059);return _0x26a044[_0x458870(0x1b7)];}catch{return null;}}export function installChromiumBinary(_0x311010,_0x39e6e0=![]){const _0x4767ad=_0xa805c9,_0x410437={'hCQXf':'install','QSaCB':'--with-deps','SjSas':'ignore','PNKoS':_0x4767ad(0x1bf)};return new Promise((_0x3ac96a,_0x448049)=>{const _0x2263c2=_0x4767ad,_0x310e1b={'xMgXy':function(_0x1220b0,_0x5159e2){return _0x1220b0(_0x5159e2);}},_0x12e95e=['playwright@'+_0x311010,_0x410437['hCQXf'],..._0x39e6e0?[_0x410437[_0x2263c2(0x1a8)]]:[],_0x2263c2(0x1c2)],_0x372ce2=spawn('npx',_0x12e95e,{'stdio':[_0x410437['SjSas'],_0x2263c2(0x1bf),_0x410437[_0x2263c2(0x18a)]],'shell':process['platform']===_0x2263c2(0x1f9)});_0x372ce2['on'](_0x2263c2(0x1a1),_0x143211=>{const _0x73c1aa=_0x2263c2;_0x143211===0x0?_0x3ac96a():_0x448049(new Error(_0x73c1aa(0x1af)+_0x143211));}),_0x372ce2['on']('error',_0x41fe68=>{_0x310e1b['xMgXy'](_0x448049,_0x41fe68);});});}export async function authenticate(_0x47ee4){const _0x34cb20=_0xa805c9,_0xcb2d2b={'bniuT':'existing_token','oBpzD':function(_0x5072c9,_0x4f95c7){return _0x5072c9 instanceof _0x4f95c7;},'SSpyV':function(_0x292d3a,_0x10e5cc){return _0x292d3a(_0x10e5cc);},'JIXMH':function(_0x42d561,_0x22fabe){return _0x42d561(_0x22fabe);},'sySlI':_0x34cb20(0x1b9)};if(!_0x47ee4){const _0x23332b=await getToken();if(_0x23332b){const _0xd0d141=await getCurrentUser(_0x23332b);if(_0xd0d141['success'])return console[_0x34cb20(0x1f3)]('✓\x20Already\x20authenticated\x20to\x20'+_0xd0d141[_0x34cb20(0x1bb)]['organizationName']),{'token':_0x23332b,'method':_0xcb2d2b['bniuT']};}try{_0x47ee4=await runDeviceAuthFlow();}catch(_0xfea41b){throw new Error(_0x34cb20(0x1c8)+(_0xcb2d2b[_0x34cb20(0x1f2)](_0xfea41b,Error)?_0xfea41b[_0x34cb20(0x1c3)]:_0xfea41b));}const _0x1dcbc2=await _0xcb2d2b['SSpyV'](getCurrentUser,_0x47ee4);if(!_0x1dcbc2['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x1dcbc2['error']);return console['log']('✓\x20Authenticated\x20to\x20'+_0x1dcbc2[_0x34cb20(0x1bb)]['organizationName']),{'token':_0x47ee4,'method':_0x34cb20(0x1f6)};}console[_0x34cb20(0x1f3)](_0x34cb20(0x1ef));const _0x35f7db=await _0xcb2d2b[_0x34cb20(0x1ba)](getCurrentUser,_0x47ee4);if(!_0x35f7db['success']){if(_0x35f7db[_0x34cb20(0x1ce)])throw new Error(_0x34cb20(0x1c8)+_0x35f7db[_0x34cb20(0x1c0)]+_0x34cb20(0x1c9));else throw new Error(_0x34cb20(0x1f0)+_0x35f7db['error']+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x34cb20(0x1f3)]('✓\x20Authenticated\x20to\x20'+_0x35f7db['user']['organizationName']),await _0xcb2d2b['JIXMH'](storeToken,_0x47ee4),console['log'](process[_0x34cb20(0x1cf)]['GITHUB_ENV']?_0x34cb20(0x1e5):_0x34cb20(0x1a7)),{'token':_0x47ee4,'method':_0xcb2d2b['sySlI']};}export async function ensureRangerDir(_0x2020a6){const _0x587770=_0xa805c9,_0x329e74={'BqykY':function(_0x55a575){return _0x55a575();},'LexNH':_0x587770(0x196),'GQXFL':'✓\x20~/.ranger/\x20directory\x20already\x20exists'};void _0x2020a6;const _0x28133e=_0x329e74['BqykY'](getRangerHomeDir);return!existsSync(_0x28133e)?(await mkdir(_0x28133e,{'recursive':!![]}),console['log'](_0x329e74[_0x587770(0x1e4)]),{'path':_0x28133e,'installed':!![]}):(console['log'](_0x329e74['GQXFL']),{'path':_0x28133e,'installed':![]});}export async function ensureChromium(_0x228df9=![]){const _0x48a9db=_0xa805c9,_0x4bc9e4={'oNDWw':function(_0xace3ed,_0x48cbe4){return _0xace3ed(_0x48cbe4);},'BIqCF':_0x48a9db(0x19a),'ExsUn':function(_0x189a06,_0x217000){return _0x189a06??_0x217000;},'aTyxt':_0x48a9db(0x1a2),'ScMlB':_0x48a9db(0x195),'nvoWP':_0x48a9db(0x1ac),'kcTzm':_0x48a9db(0x1a3),'gzaKZ':_0x48a9db(0x1d7)};let _0x556217=![];try{const _0x5d5972=chromium[_0x48a9db(0x197)]();_0x556217=_0x4bc9e4['oNDWw'](existsSync,_0x5d5972);}catch{_0x556217=![];}if(_0x556217)return console[_0x48a9db(0x1f3)](_0x4bc9e4['BIqCF']),![];const _0x3b531b=getPlaywrightVersion(),_0x1449b2=_0x4bc9e4[_0x48a9db(0x1f5)](_0x3b531b,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x10daa5=!_0x3b531b,_0x45d84b=process['stdin'][_0x48a9db(0x1ab)]&&process['stdout']['isTTY'];let _0x52c8b5=!![];if(_0x45d84b){const {install:_0x479703}=await _0x3f733a['prompt']([{'type':_0x4bc9e4['aTyxt'],'name':_0x4bc9e4[_0x48a9db(0x1c6)],'message':_0x10daa5?_0x48a9db(0x1a9)+_0x1449b2+_0x48a9db(0x1da):'The\x20required\x20version\x20('+_0x1449b2+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x52c8b5=_0x479703;}else console[_0x48a9db(0x1f3)](_0x48a9db(0x186)+_0x1449b2+(_0x10daa5?'\x20(fallback\x20version)':'')+_0x48a9db(0x1c1));if(_0x52c8b5){console[_0x48a9db(0x1f3)](_0x4bc9e4[_0x48a9db(0x1df)]);try{await installChromiumBinary(_0x1449b2,_0x228df9),console[_0x48a9db(0x1f3)](_0x4bc9e4[_0x48a9db(0x1e7)]);}catch(_0xe01bd8){console['error'](_0x48a9db(0x18e),_0xe01bd8 instanceof Error?_0xe01bd8['message']:_0xe01bd8),console['log'](_0x48a9db(0x1b3)),console['log']('\x20\x20npx\x20playwright@'+_0x1449b2+_0x48a9db(0x19f));}}else console[_0x48a9db(0x1f3)](_0x4bc9e4[_0x48a9db(0x185)]),console[_0x48a9db(0x1f3)]('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console[_0x48a9db(0x1f3)](_0x48a9db(0x1c5)+_0x1449b2+'\x20install\x20chromium');return!![];}function _0x469e(){const _0x1a36b3=['Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','mOqWM','isTTY','\x0aInstalling\x20Chromium\x20browser...\x0a','scope','trackPhaseEnd','Installation\x20failed\x20with\x20exit\x20code\x20','rgxOA','auth','Mpwqm','You\x20can\x20install\x20it\x20manually\x20by\x20running:','allowInsecureLocalhost','1.58.2','yFiUF','version','mUgQE','provided_token','SSpyV','user','28vbmvpv','GPofa','\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','inherit','error','...','chromium','message','\x1b[0m','\x20\x20npx\x20playwright@','ScMlB','.gitignore','Authentication\x20failed:\x20','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','\x0aIn\x20Claude\x20Code,\x20run\x20','JepNz','QpAhO','status','env','flcHh','HcShL','MoXke','mtQUg','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','skills','ranger\x20profile\x20add\x20<name>','\x0a⚠\x20Skipping\x20Chromium\x20installation.','2201589KqFezU','\x0a\x20\x20','\x20now?','406990qPoKrB','403233zdayxI','KcSrP','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','nvoWP','tQlGR','6834nMRlML','YntsF','\x0a🚀\x20Ranger\x20Setup\x0a','LexNH','✓\x20Exported\x20credentials\x20for\x20CI','exit','kcTzm','HgajJ','ranger\x20setup\x20--scope=','TVEPs','lcrMf','skipped','GHHJw','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','Validating\x20API\x20token...','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','withDeps','oBpzD','log','ready','ExsUn','device_auth','fZCGT','siQTF','win32','trackPhaseStart','\x1b[1m','gzaKZ','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','warn','1LrFrsR','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','PNKoS','8618mCHRBT','iahGN','skipAuth','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','url','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','585696jhjTLe','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','opencode','install','✓\x20Created\x20~/.ranger/\x20directory','executablePath','sWwur','1262824rsTXti','✓\x20Playwright\x20Chromium\x20browser\x20found','✓\x20Skipping\x20authentication\x20(--skip-auth)','skipChromium','/ranger:enable','\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)','\x20install\x20chromium','DRSbM','close','confirm','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','Npbzi','playwright/package.json','plugin','✓\x20Stored\x20credentials\x20locally','QSaCB'];_0x469e=function(){return _0x1a36b3;};return _0x469e();}export async function writeRangerGitignore(_0x5d8012){const _0x18578e=_0xa805c9,_0x4b4cf1={'tQlGR':function(_0x5aa614,_0x41bc22,_0x24e785){return _0x5aa614(_0x41bc22,_0x24e785);},'YntsF':_0x18578e(0x1c7),'HqzqV':function(_0x1268da,_0xc93452,_0x47a797){return _0x1268da(_0xc93452,_0x47a797);},'TKODa':'✓\x20Created\x20.ranger/.gitignore'},_0x4a9d00=_0x4b4cf1[_0x18578e(0x1e0)](join,_0x5d8012,_0x4b4cf1[_0x18578e(0x1e2)]),_0x21b778=_0x18578e(0x1be);await _0x4b4cf1['HqzqV'](writeFile,_0x4a9d00,_0x21b778),console[_0x18578e(0x1f3)](_0x4b4cf1['TKODa']);}export async function ensureLocalEnv(_0xc8dc42,_0x4fb003){const _0x134eca=_0xa805c9,_0x17c479={'HgajJ':function(_0x584247,_0x4681a1){return _0x584247!==_0x4681a1;},'HcShL':'⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','Npbzi':function(_0x4d17a7){return _0x4d17a7();},'rgxOA':function(_0x15641d,_0x55d256,_0x4f6c79){return _0x15641d(_0x55d256,_0x4f6c79);},'JepNz':'local','DxNAc':'✓\x20Local\x20profile\x20already\x20exists','fZCGT':function(_0x263839,_0x377ed7,_0x1d4aa4,_0x10d27a){return _0x263839(_0x377ed7,_0x1d4aa4,_0x10d27a);},'Mpwqm':'\x0a❌\x20Profile\x20setup\x20failed:'};if(!findGitRoot()&&_0x17c479[_0x134eca(0x1e8)](_0xc8dc42?.['scope'],'user'))return console[_0x134eca(0x1f3)](_0x17c479[_0x134eca(0x1d1)]),{'ready':![],'skipped':!![]};const _0x4ea1d8=_0xc8dc42?.[_0x134eca(0x1ad)]===_0x134eca(0x1bb)?_0x17c479[_0x134eca(0x1a4)](getRangerHomeDir):undefined;if(_0x17c479[_0x134eca(0x1b0)](findExistingEnv,_0x17c479[_0x134eca(0x1cc)],{'locations':[_0x17c479[_0x134eca(0x1cc)]],'rangerDir':_0x4ea1d8}))return console['log'](_0x17c479['DxNAc']),{'ready':!![],'skipped':![]};try{return await _0x17c479[_0x134eca(0x1f7)](addEnv,_0x17c479[_0x134eca(0x1cc)],{'url':_0xc8dc42?.['url'],'force':_0xc8dc42?.['force'],'allowInsecureLocalhost':_0xc8dc42?.[_0x134eca(0x1b4)],'scope':_0xc8dc42?.['scope']},_0x4fb003),{'ready':!![],'skipped':![]};}catch(_0x57212b){return console['error'](_0x17c479[_0x134eca(0x1b2)],_0x57212b instanceof Error?_0x57212b['message']:_0x57212b),{'ready':![],'skipped':![]};}}export async function start(_0x108894,_0x2fb59d,_0x145817){const _0x419a69=_0xa805c9,_0x3ca093={'aLqmW':function(_0x2e80cb,_0x39f897){return _0x2e80cb!==_0x39f897;},'flcHh':function(_0x4ff555,_0x38cd28){return _0x4ff555+_0x38cd28;},'siQTF':function(_0xb16a6,_0x68c990){return _0xb16a6+_0x68c990;},'mOqWM':function(_0xb9e1d6,_0x2a3b61){return _0xb9e1d6(_0x2a3b61);},'KcSrP':function(_0xe6c22f){return _0xe6c22f();},'CyUvs':function(_0x3ca48d,_0x63d865){return _0x3ca48d(_0x63d865);},'YREdc':_0x419a69(0x1ec),'GHHJw':_0x419a69(0x1b1),'KDIUi':_0x419a69(0x1c2),'lcrMf':function(_0x2ac38d,_0x4ec088){return _0x2ac38d(_0x4ec088);},'BdtMe':'\x0a✅\x20Ranger\x20setup\x20complete!\x0a','eeEsV':_0x419a69(0x1a6),'mUgQE':function(_0x20d7ae,_0x5a8911,_0x48825c){return _0x20d7ae(_0x5a8911,_0x48825c);},'mWEOH':'ranger','TAUxz':_0x419a69(0x1d5),'JpXju':_0x419a69(0x1de),'TPgbZ':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','iahGN':'profile','mtQUg':_0x419a69(0x1d6),'DRSbM':_0x419a69(0x193),'GPofa':_0x419a69(0x191),'sWwur':function(_0x4d7393,_0x35a0ec){return _0x4d7393(_0x35a0ec);},'yFiUF':function(_0x31a8dd,_0xa2cbe6){return _0x31a8dd+_0xa2cbe6;},'TVEPs':function(_0x4fc531,_0x778ffd){return _0x4fc531+_0x778ffd;}};console[_0x419a69(0x1f3)](_0x419a69(0x1e3));_0x2fb59d?.[_0x419a69(0x1ad)]!==undefined&&_0x3ca093['aLqmW'](_0x2fb59d[_0x419a69(0x1ad)],_0x419a69(0x1bb))&&(console['error'](_0x3ca093[_0x419a69(0x1d0)](_0x3ca093[_0x419a69(0x1f8)](_0x419a69(0x1e9)+_0x3ca093[_0x419a69(0x1aa)](String,_0x2fb59d['scope'])+'\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[_0x419a69(0x1e6)](0x1));_0x2fb59d={..._0x2fb59d,'scope':'user'};const _0x285143=!existsSync(_0x3ca093['KcSrP'](getRangerHomeDir));await _0x3ca093['CyUvs'](ensureRangerDir,'user');if(_0x2fb59d?.[_0x419a69(0x18d)])console['log'](_0x419a69(0x19b)),_0x145817?.['trackPhaseEnd']('auth',{'isFirstRun':_0x285143,'method':_0x3ca093['YREdc']});else{_0x145817?.[_0x419a69(0x183)](_0x3ca093[_0x419a69(0x1ed)]);const _0x533f7b=await authenticate(_0x108894);_0x145817?.[_0x419a69(0x1ae)](_0x3ca093[_0x419a69(0x1ed)],{'isFirstRun':_0x285143,'method':_0x533f7b['method']});}_0x145817?.[_0x419a69(0x183)](_0x3ca093['KDIUi']);_0x2fb59d?.[_0x419a69(0x19c)]?console['log']('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await _0x3ca093['lcrMf'](ensureChromium,_0x2fb59d?.[_0x419a69(0x1f1)]);_0x145817?.[_0x419a69(0x1ae)](_0x419a69(0x1c2),{'isFirstRun':_0x285143,'skipped':!!_0x2fb59d?.['skipChromium']}),console[_0x419a69(0x1f3)](_0x3ca093['BdtMe']);const _0x1b3583=_0x2fb59d?.['scope'],_0x44f6cc=_0x2fb59d?.['opencode']??![];let _0x5346f5=null;_0x44f6cc?(_0x145817?.[_0x419a69(0x183)]('plugin'),_0x5346f5=await _0x3ca093[_0x419a69(0x1eb)](ensureOpencodePluginConfig,_0x1b3583),_0x145817?.['trackPhaseEnd'](_0x419a69(0x1a6),{'isFirstRun':_0x285143,'opencode':!![]})):(_0x145817?.['trackPhaseStart']('plugin'),await _0x3ca093[_0x419a69(0x1aa)](ensureClaudePlugin,_0x1b3583),_0x145817?.['trackPhaseEnd'](_0x3ca093['eeEsV'],{'isFirstRun':_0x285143}));if(_0x44f6cc&&_0x5346f5){_0x145817?.[_0x419a69(0x183)]('skills');try{await _0x3ca093['mUgQE'](installSkill,_0x3ca093['mWEOH'],{'level':_0x5346f5[_0x419a69(0x1ad)],'cliVersion':_0x3ca093[_0x419a69(0x1dd)](getCurrentVersion),'platform':_0x419a69(0x194)}),_0x145817?.[_0x419a69(0x1ae)](_0x3ca093['TAUxz'],{'isFirstRun':_0x285143,'opencode':!![]});}catch(_0x5ce35b){console[_0x419a69(0x187)](_0x3ca093['JpXju'],_0x5ce35b instanceof Error?_0x5ce35b[_0x419a69(0x1c3)]:_0x5ce35b),_0x145817?.['trackPhaseEnd']('skills',{'isFirstRun':_0x285143,'opencode':!![],'failed':!![]});}}else _0x145817?.['trackPhaseStart']('skills'),await _0x3ca093[_0x419a69(0x1aa)](ensureClaudeSkills,_0x1b3583),_0x145817?.['trackPhaseEnd'](_0x3ca093['TAUxz'],{'isFirstRun':_0x285143});if(_0x2fb59d?.[_0x419a69(0x18d)])console[_0x419a69(0x1f3)](_0x3ca093['TPgbZ']);else{if(_0x2fb59d?.['url']){_0x145817?.['trackPhaseStart'](_0x3ca093[_0x419a69(0x18c)]);const _0x32c055=await _0x3ca093[_0x419a69(0x1b8)](ensureLocalEnv,{'url':_0x2fb59d[_0x419a69(0x18f)],'force':_0x2fb59d?.['force'],'allowInsecureLocalhost':_0x2fb59d?.[_0x419a69(0x1b4)],'scope':'user'},_0x145817);_0x145817?.[_0x419a69(0x1ae)](_0x3ca093['iahGN'],{'isFirstRun':_0x285143,'profileReady':_0x32c055[_0x419a69(0x1f4)],'userSkipped':_0x32c055['skipped']});}else console['log'](_0x3ca093[_0x419a69(0x1d0)](_0x419a69(0x189),_0x419a69(0x1d9)+bold(_0x3ca093[_0x419a69(0x1d3)]))+_0x419a69(0x19e)+_0x419a69(0x1ca)+'\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles');}if(_0x44f6cc)console[_0x419a69(0x1f3)](_0x419a69(0x1d4)),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console[_0x419a69(0x1f3)](_0x3ca093[_0x419a69(0x1a0)]),console[_0x419a69(0x1f3)](_0x3ca093[_0x419a69(0x1bd)]);else{const _0x299034=_0x3ca093[_0x419a69(0x198)](bold,_0x419a69(0x19d));console['log'](_0x3ca093[_0x419a69(0x1b6)](_0x3ca093[_0x419a69(0x1ea)](_0x419a69(0x1cb)+_0x299034+'\x20and\x20prompt\x20the\x20coding',_0x419a69(0x190)),'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser')+_0x419a69(0x1ee));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x44d257=_0x3f07;(function(_0x34d5f8,_0x32100a){const _0x24a6e4=_0x3f07,_0x201cc2=_0x34d5f8();while(!![]){try{const _0x1cea09=-parseInt(_0x24a6e4(0x1fa))/0x1*(-parseInt(_0x24a6e4(0x217))/0x2)+parseInt(_0x24a6e4(0x238))/0x3*(parseInt(_0x24a6e4(0x1fc))/0x4)+-parseInt(_0x24a6e4(0x1ee))/0x5*(parseInt(_0x24a6e4(0x1f1))/0x6)+-parseInt(_0x24a6e4(0x221))/0x7+parseInt(_0x24a6e4(0x202))/0x8+-parseInt(_0x24a6e4(0x22d))/0x9*(-parseInt(_0x24a6e4(0x23e))/0xa)+parseInt(_0x24a6e4(0x23c))/0xb*(-parseInt(_0x24a6e4(0x22c))/0xc);if(_0x1cea09===_0x32100a)break;else _0x201cc2['push'](_0x201cc2['shift']());}catch(_0x3fd825){_0x201cc2['push'](_0x201cc2['shift']());}}}(_0x1c21,0x7bbb7));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';function _0x1c21(){const _0x2e2ffe=['Root:\x20','filter','sessionUpdatedAt','utf-8','590qesCNZ','\x20(up\x20to\x20date)','8wniOXi','\x20plugin(s)\x20configured','map','stdout','config',':\x20installed\x20(','2847776TpslDB','user','xwjrD','tEIcM','hasEncryptedAuth','path','\x20\x20\x20\x20Session:\x20','not_installed','\x20profiles\x20configured\x20(','isDirectory','error','HFueq','unknown','\x20\x20\x20\x20Settings:\x20','iEzkq','XxjQY','\x20\x20\x20\x20Auth:\x20','no\x20session','qoYCR','\x20\x20Run:\x20ranger\x20update','IFpta','516mtYBJW','details','ranger@trailhead','ymWhp','JswcM','\x20\x20Not\x20configured','displayName','plugin','disabled','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','4211158yTTyeD','\x20[local]','version','close','has','scope','settingsPath','includes','VoZUP','not_configured','ZnYtR','446604XNwueQ','1035ykPWiX','hasPlaintextAuth','\x0a---\x20Claude\x20Code\x20Plugin\x20---','dJZfY','LUDyz','pWIac','\x1b]8;;\x07','(not\x20found)','\x20\x20Not\x20installed','SKILL.md','\x0a\x20\x20No\x20active\x20profile\x20set','659427XgjIeq','LgQLM','XFDdt','uhBlp','11CPGpxh','KeejS','28930iEwHfP','log','WwfDP','IBsCU','vGsew','some','length','API\x20Environment:\x20','\x0a---\x20Profiles\x20---','vfGGu','pipe','trim','\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a','status','WnYEa','Version:\x20','ifeaq','zXtgw','eBvCM','all','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','No\x20skills\x20installed','configured','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','sqeDi','name','ctQEV','\x20local','674435IywLZd','\x20(active)','data','6KWZqxz','\x20\x20Run:\x20ranger\x20skillup','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','join','push'];_0x1c21=function(){return _0x2e2ffe;};return _0x1c21();}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=_0x458a0c=>'\x1b[1m'+_0x458a0c+'\x1b[0m',link=(_0x584b84,_0x4cde82)=>'\x1b]8;;file://'+_0x584b84+'\x07'+(_0x4cde82||_0x584b84)+_0x44d257(0x233);async function getOpencodePluginStatus(){const _0x5717de=_0x44d257,_0x276066={'ENqXO':function(_0x2f8411,_0xeacaea){return _0x2f8411!==_0xeacaea;},'rMswA':_0x5717de(0x209),'NcKOq':function(_0x526111,_0x555f24){return _0x526111>_0x555f24;},'pWIac':function(_0xac62a1,_0x31ac15){return _0xac62a1>_0x31ac15;},'VoZUP':function(_0x2c7378,_0x53878e){return _0x2c7378(_0x53878e);},'BIQll':'not_configured','KThzf':'debug','DhBno':_0x5717de(0x200),'ymWhp':_0x5717de(0x248)};return new Promise(_0x3fa9b4=>{const _0x5e0cb1=_0x5717de,_0x364d84=spawn('opencode',[_0x276066['KThzf'],_0x276066['DhBno']],{'stdio':['ignore',_0x5e0cb1(0x248),_0x276066[_0x5e0cb1(0x21a)]]});let _0x239ba2='';_0x364d84[_0x5e0cb1(0x1ff)]?.['on']('data',_0x13765c=>{_0x239ba2+=_0x13765c['toString']();}),_0x364d84['stderr']?.['on'](_0x5e0cb1(0x1f0),_0x111b18=>{_0x239ba2+=_0x111b18['toString']();}),_0x364d84['on'](_0x5e0cb1(0x20c),()=>{_0x3fa9b4({'status':'not_installed'});}),_0x364d84['on'](_0x5e0cb1(0x224),_0x456818=>{const _0x4ca1d3=_0x5e0cb1,_0x3981f9={'XxjQY':function(_0x3b62ca,_0x3a8f43){return _0x276066['ENqXO'](_0x3b62ca,_0x3a8f43);}};if(_0x456818!==0x0){_0x3fa9b4({'status':_0x276066['rMswA']});return;}const _0x11cab9=_0x239ba2[_0x4ca1d3(0x249)]();let _0x14f406=null;if(_0x11cab9)try{_0x14f406=JSON['parse'](_0x11cab9);}catch{const _0x1351fd=_0x11cab9['match'](/\{[\s\S]*\}$/);if(_0x1351fd)try{_0x14f406=JSON['parse'](_0x1351fd[0x0]);}catch{_0x14f406=null;}}const _0x208c80=Array['isArray'](_0x14f406?.['plugin'])?_0x14f406?.[_0x4ca1d3(0x21e)]:[],_0x2f5702=_0x208c80[_0x4ca1d3(0x243)](_0x5e8d88=>{const _0x59e3b2=_0x4ca1d3;if(_0x3981f9[_0x59e3b2(0x211)](typeof _0x5e8d88,'string'))return![];return _0x5e8d88[_0x59e3b2(0x228)]('@ranger-testing/opencode-plugin')||_0x5e8d88['includes']('opencode-plugin');});if(_0x2f5702){_0x3fa9b4({'status':_0x4ca1d3(0x254),'details':_0x276066['NcKOq'](_0x208c80[_0x4ca1d3(0x244)],0x0)?_0x208c80['length']+_0x4ca1d3(0x1fd):undefined});return;}if(_0x276066[_0x4ca1d3(0x232)](_0x208c80[_0x4ca1d3(0x244)],0x0)){_0x276066[_0x4ca1d3(0x229)](_0x3fa9b4,{'status':_0x276066['BIQll'],'details':_0x208c80['length']+'\x20plugin(s)\x20configured'});return;}_0x3fa9b4({'status':'not_configured'});});});}async function getSkillsFromDir(_0x441951,_0x499596){const _0x3b2358=_0x44d257,_0x13d7d6={'vfGGu':_0x3b2358(0x236),'RnxUm':function(_0x4f049b,_0x37367f){return _0x4f049b(_0x37367f);}};if(!existsSync(_0x441951))return[];const _0x14db98=[];try{const _0x3edf79=await readdir(_0x441951,{'withFileTypes':!![]});for(const _0x74c28 of _0x3edf79){if(_0x74c28[_0x3b2358(0x20b)]()){const _0x393609=join(_0x441951,_0x74c28['name'],_0x13d7d6[_0x3b2358(0x247)]);if(_0x13d7d6['RnxUm'](existsSync,_0x393609)){let _0x4896f1=_0x74c28[_0x3b2358(0x1eb)];try{const _0x220e6e=await readFile(_0x393609,_0x3b2358(0x1f9)),_0x20137d=_0x220e6e['match'](/name:\s*(.+)/);_0x20137d&&(_0x4896f1=_0x20137d[0x1][_0x3b2358(0x249)]());}catch{}_0x14db98['push']({'name':_0x74c28['name'],'displayName':_0x4896f1,'path':_0x393609,'level':_0x499596});}}}}catch{return[];}return _0x14db98;}function _0x3f07(_0x3ba11a,_0x33df79){_0x3ba11a=_0x3ba11a-0x1e9;const _0x1c2157=_0x1c21();let _0x3f07d4=_0x1c2157[_0x3ba11a];return _0x3f07d4;}async function getInstalledSkills(){const _0x2f1202=_0x44d257,_0x2acf60={'McQxK':function(_0x43b691,_0x5e1013,_0x2b20da){return _0x43b691(_0x5e1013,_0x2b20da);},'uhBlp':function(_0x7e9e66){return _0x7e9e66();},'XFDdt':'project','LUDyz':function(_0x13453b,_0x505e34,_0xd32284){return _0x13453b(_0x505e34,_0xd32284);},'iEzkq':function(_0x7c8da4){return _0x7c8da4();},'wgTEm':_0x2f1202(0x203)},[_0x3f042,_0x484b3e]=await Promise[_0x2f1202(0x251)]([_0x2acf60['McQxK'](getSkillsFromDir,_0x2acf60[_0x2f1202(0x23b)](getProjectSkillsDir),_0x2acf60[_0x2f1202(0x23a)]),_0x2acf60[_0x2f1202(0x231)](getSkillsFromDir,_0x2acf60[_0x2f1202(0x210)](getUserSkillsDir),_0x2acf60['wgTEm'])]);return{'project':_0x3f042,'user':_0x484b3e};}async function getEnvironments(){const _0x145baf=_0x44d257,_0x131c20={'KeejS':function(_0x4b5f87,_0x48e090,_0x48a5e3){return _0x4b5f87(_0x48e090,_0x48a5e3);},'dJZfY':'settings.json','MjlPn':function(_0x5226a9,_0x248e83,_0x194ec1){return _0x5226a9(_0x248e83,_0x194ec1);},'cgnlS':_0x145baf(0x234),'JRvWf':function(_0x429c9c,_0x22fa44){return _0x429c9c===_0x22fa44;},'QEuqZ':function(_0x320df4){return _0x320df4();},'qoYCR':function(_0x5dba19,_0x23b356){return _0x5dba19(_0x23b356);}},{envNames:_0x1847ba,activeEnv:_0x40efa6}=await getEnvNames(),_0x4ccde2=_0x131c20['QEuqZ'](getRangerDir);if(!_0x131c20[_0x145baf(0x214)](existsSync,_0x4ccde2))return{'envs':[],'activeEnv':null};const _0x238e61=_0x1847ba['map'](_0x45c6a0=>{const _0xa3282c=_0x145baf,_0x19572a=getEnvDir(_0x45c6a0),_0x1e40da=_0x131c20[_0xa3282c(0x23d)](join,_0x19572a,_0x131c20[_0xa3282c(0x230)]),_0x2faa6d=join(_0x19572a,'auth.json'),_0x42cdcb=_0x131c20['MjlPn'](join,_0x19572a,'auth.json.enc');return{'name':_0x45c6a0,'settingsPath':existsSync(_0x1e40da)?_0x1e40da:_0x131c20['cgnlS'],'hasPlaintextAuth':existsSync(_0x2faa6d),'hasEncryptedAuth':existsSync(_0x42cdcb),'isActive':_0x131c20['JRvWf'](_0x45c6a0,_0x40efa6)};});return{'envs':_0x238e61,'activeEnv':_0x40efa6};}export async function status(){const _0xbb15ee=_0x44d257,_0x311f7c={'xGPyy':function(_0x4dd5d8){return _0x4dd5d8();},'icbfZ':function(_0x2e3f30,_0x589e48){return _0x2e3f30(_0x589e48);},'WnYEa':function(_0x4fde50,_0x16463a,_0x426725){return _0x4fde50(_0x16463a,_0x426725);},'MgNaU':function(_0x379672){return _0x379672();},'sqeDi':function(_0x19ea80,_0x56fb55){return _0x19ea80!==_0x56fb55;},'LgQLM':function(_0x53ed74,_0x47adaf){return _0x53ed74(_0x47adaf);},'eBvCM':function(_0x46e3a5,_0x7599f6){return _0x46e3a5(_0x7599f6);},'qKkXe':_0xbb15ee(0x254),'TzdeD':'\x20\x20Run:\x20ranger\x20setup\x20--opencode','cxkeV':_0xbb15ee(0x1e9),'JswcM':_0xbb15ee(0x20e),'ifeaq':'enabled','zXtgw':_0xbb15ee(0x235),'ctQEV':'\x0a---\x20Skills\x20---','ZnYtR':function(_0x631d82,_0x4e657a){return _0x631d82+_0x4e657a;},'WwfDP':function(_0x420063,_0x1feba5){return _0x420063===_0x1feba5;},'vGsew':function(_0x20d16b,_0x6bbabe){return _0x20d16b>_0x6bbabe;},'PZBOn':function(_0xff2d42,_0x561c9c,_0x130c46){return _0xff2d42(_0x561c9c,_0x130c46);},'oKnOo':function(_0x1be8ee,_0x205c59){return _0x1be8ee>_0x205c59;},'wEYky':'\x20\x20User-level:','klEjF':_0xbb15ee(0x246),'tEIcM':function(_0xdb5aee){return _0xdb5aee();},'IFpta':function(_0x3075b8){return _0x3075b8();},'xwjrD':'No\x20profiles\x20configured','HFueq':function(_0x3a640e,_0x6d6a54){return _0x3a640e(_0x6d6a54);},'IBsCU':'\x20(active)','xoCGK':'encrypted','jjufP':'plaintext','rSyDE':function(_0x169118,_0x25db4a){return _0x169118(_0x25db4a);},'gnplS':function(_0xe4fdf5,_0x3c3cbe,_0x110144){return _0xe4fdf5(_0x3c3cbe,_0x110144);}};console['log']('\x0a📊\x20Ranger\x20Status\x0a');const _0x479aeb=process['cwd'](),_0x493122=_0x311f7c['xGPyy'](getRangerDir);if(!_0x311f7c['icbfZ'](existsSync,_0x493122)){console[_0xbb15ee(0x23f)](_0xbb15ee(0x1f6)+_0x311f7c[_0xbb15ee(0x24c)](link,_0x479aeb,_0x311f7c['icbfZ'](bold,basename(_0x479aeb)))),console[_0xbb15ee(0x23f)](_0xbb15ee(0x220)),console['log'](_0xbb15ee(0x24a));return;}console['log'](_0xbb15ee(0x1f6)+link(_0x479aeb,bold(basename(_0x479aeb))));const _0x4b1b98=getCurrentVersion(),_0x3b5e0b=_0x311f7c['MgNaU'](getLatestVersion);if(_0x3b5e0b[_0xbb15ee(0x223)]&&_0x311f7c[_0xbb15ee(0x1ea)](_0x3b5e0b['version'],_0x4b1b98))console['log'](_0xbb15ee(0x24d)+_0x4b1b98+'\x20(latest:\x20'+_0x3b5e0b[_0xbb15ee(0x223)]+')'),console[_0xbb15ee(0x23f)](_0xbb15ee(0x215));else _0x3b5e0b[_0xbb15ee(0x223)]?console[_0xbb15ee(0x23f)](_0xbb15ee(0x24d)+_0x4b1b98+_0xbb15ee(0x1fb)):console[_0xbb15ee(0x23f)](_0xbb15ee(0x24d)+_0x4b1b98);const _0x5151e7=await getToken();if(_0x5151e7){const _0x3e5654=await _0x311f7c[_0xbb15ee(0x239)](getCurrentUser,_0x5151e7);_0x3e5654['success']?console[_0xbb15ee(0x23f)]('Organization:\x20'+_0x311f7c['eBvCM'](bold,_0x3e5654['user']['organizationName'])):(console['log'](_0xbb15ee(0x1f3)),console[_0xbb15ee(0x23f)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console['log']('API\x20Token:\x20✗\x20Not\x20found'),console[_0xbb15ee(0x23f)]('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env']['DEBUG']&&(console['log'](_0xbb15ee(0x245)+_0x311f7c['xGPyy'](getCurrentEnvironment)),console[_0xbb15ee(0x23f)]('API\x20URL:\x20'+getApiBaseUrl()));console['log']('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x52e4d7=await _0x311f7c['MgNaU'](getOpencodePluginStatus);if(_0x52e4d7['status']===_0x311f7c['qKkXe'])console['log']('\x20\x20'+bold('@ranger-testing/opencode-plugin')+':\x20configured'),_0x52e4d7['details']&&console[_0xbb15ee(0x23f)]('\x20\x20'+_0x52e4d7['details']);else _0x52e4d7[_0xbb15ee(0x24b)]===_0xbb15ee(0x22a)?(console['log'](_0xbb15ee(0x21c)),_0x52e4d7[_0xbb15ee(0x218)]&&console['log']('\x20\x20'+_0x52e4d7['details']),console[_0xbb15ee(0x23f)](_0x311f7c['TzdeD'])):console[_0xbb15ee(0x23f)](_0x311f7c['cxkeV']);console[_0xbb15ee(0x23f)](_0xbb15ee(0x22f));const _0x58bad6=await getPluginInfo(_0xbb15ee(0x219));if(_0x58bad6){const _0x10109a=_0x58bad6[_0xbb15ee(0x226)]||_0x311f7c[_0xbb15ee(0x21b)],_0x32933d=_0x58bad6['enabled']?_0x311f7c[_0xbb15ee(0x24e)]:_0xbb15ee(0x21f);console['log']('\x20\x20'+bold('ranger@trailhead')+_0xbb15ee(0x201)+_0x10109a+',\x20'+_0x32933d+')');}else console['log'](_0x311f7c[_0xbb15ee(0x24f)]),console[_0xbb15ee(0x23f)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)');console['log'](_0x311f7c[_0xbb15ee(0x1ec)]);const {project:_0x560947,user:_0x4ecb83}=await getInstalledSkills(),_0x41c47b=_0x560947[_0xbb15ee(0x1f7)](_0x1f6504=>RANGER_MANAGED_SKILLS[_0xbb15ee(0x228)](_0x1f6504['name'])),_0x37500d=_0x4ecb83['filter'](_0x29a379=>RANGER_MANAGED_SKILLS['includes'](_0x29a379[_0xbb15ee(0x1eb)])),_0x34950b=_0x311f7c[_0xbb15ee(0x22b)](_0x41c47b['length'],_0x37500d[_0xbb15ee(0x244)]);if(_0x311f7c[_0xbb15ee(0x240)](_0x34950b,0x0))console[_0xbb15ee(0x23f)](_0xbb15ee(0x253)),console[_0xbb15ee(0x23f)](_0xbb15ee(0x1f2));else{if(_0x311f7c['vGsew'](_0x41c47b[_0xbb15ee(0x244)],0x0)){console['log']('\x20\x20Project-level:');for(const _0x89727a of _0x41c47b){console['log']('\x20\x20\x20\x20'+bold(_0x89727a['displayName'])+':\x20'+_0x311f7c['PZBOn'](link,_0x89727a[_0xbb15ee(0x207)],basename(_0x89727a[_0xbb15ee(0x207)])));}}if(_0x311f7c['oKnOo'](_0x37500d[_0xbb15ee(0x244)],0x0)){console[_0xbb15ee(0x23f)](_0x311f7c['wEYky']);for(const _0x382031 of _0x37500d){console[_0xbb15ee(0x23f)]('\x20\x20\x20\x20'+_0x311f7c['LgQLM'](bold,_0x382031[_0xbb15ee(0x21d)])+':\x20'+link(_0x382031['path'],_0x311f7c['eBvCM'](basename,_0x382031[_0xbb15ee(0x207)])));}}}console['log'](_0x311f7c['klEjF']);const {envs:_0x2b0cac,activeEnv:_0x1fa91b}=await _0x311f7c[_0xbb15ee(0x205)](getEnvironments);let _0x30f842=[];if(_0x5151e7)try{_0x30f842=await _0x311f7c[_0xbb15ee(0x216)](listCloudProfiles);}catch{}const _0x3b616e=_0x311f7c[_0xbb15ee(0x22b)](_0x2b0cac['length'],_0x30f842[_0xbb15ee(0x244)]);if(_0x3b616e===0x0)console[_0xbb15ee(0x23f)](_0x311f7c[_0xbb15ee(0x204)]),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{if(_0x3b616e>0x5){const _0x702ecc=[];_0x311f7c[_0xbb15ee(0x242)](_0x30f842[_0xbb15ee(0x244)],0x0)&&_0x702ecc[_0xbb15ee(0x1f5)](_0x30f842[_0xbb15ee(0x244)]+'\x20cloud'),_0x2b0cac[_0xbb15ee(0x244)]>0x0&&_0x702ecc[_0xbb15ee(0x1f5)](_0x2b0cac[_0xbb15ee(0x244)]+_0xbb15ee(0x1ed)),console[_0xbb15ee(0x23f)](_0x3b616e+_0xbb15ee(0x20a)+_0x702ecc[_0xbb15ee(0x1f4)](',\x20')+')'),_0x1fa91b&&console['log']('\x20\x20Active:\x20'+_0x311f7c[_0xbb15ee(0x20d)](bold,_0x1fa91b)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)');}else{for(const _0x39a0d8 of _0x30f842){const _0x714970=_0x311f7c['WwfDP'](_0x39a0d8['name'],_0x1fa91b)?_0x311f7c[_0xbb15ee(0x241)]:'';console['log']('\x20\x20'+_0x311f7c[_0xbb15ee(0x250)](bold,_0x39a0d8[_0xbb15ee(0x1eb)])+'\x20[cloud]'+_0x714970);const _0x429492=_0x39a0d8['sessionUpdatedAt']?'cached\x20(updated\x20'+_0x39a0d8[_0xbb15ee(0x1f8)]+')':_0xbb15ee(0x213);console[_0xbb15ee(0x23f)](_0xbb15ee(0x208)+_0x429492);}const _0x4cae21=new Set(_0x30f842['map'](_0x3ef762=>_0x3ef762['name']));for(const _0x4dc3c7 of _0x2b0cac){if(_0x4cae21['has'](_0x4dc3c7['name']))continue;const _0xc8987f=_0x4dc3c7['isActive']?_0xbb15ee(0x1ef):'',_0x2283e1=_0x4dc3c7[_0xbb15ee(0x206)]?_0x311f7c['xoCGK']:_0x4dc3c7[_0xbb15ee(0x22e)]?_0x311f7c['jjufP']:'none';console['log']('\x20\x20'+_0x311f7c['rSyDE'](bold,_0x4dc3c7[_0xbb15ee(0x1eb)])+_0xbb15ee(0x222)+_0xc8987f),console['log'](_0xbb15ee(0x212)+_0x2283e1),_0x4dc3c7[_0xbb15ee(0x227)]!==_0xbb15ee(0x234)&&console['log'](_0xbb15ee(0x20f)+_0x311f7c['gnplS'](link,_0x4dc3c7['settingsPath'],_0x311f7c['HFueq'](basename,_0x4dc3c7['settingsPath'])));}if(!_0x1fa91b){console['log'](_0xbb15ee(0x237));const _0xd725c4=[..._0x30f842[_0xbb15ee(0x1fe)](_0x4f96ee=>_0x4f96ee['name']),..._0x2b0cac['filter'](_0x19ad8e=>!_0x4cae21[_0xbb15ee(0x225)](_0x19ad8e[_0xbb15ee(0x1eb)]))['map'](_0x1f3e85=>_0x1f3e85['name'])];console[_0xbb15ee(0x23f)](_0xbb15ee(0x252)+_0xd725c4[_0xbb15ee(0x1f4)](',\x20')+')');}}}console['log']('');}
|
|
1
|
+
const _0x5cc9fc=_0x45ed;(function(_0x1453bc,_0x141d47){const _0xa6ccfc=_0x45ed,_0x1023fa=_0x1453bc();while(!![]){try{const _0x3d5466=-parseInt(_0xa6ccfc(0x160))/0x1*(parseInt(_0xa6ccfc(0x15b))/0x2)+-parseInt(_0xa6ccfc(0x1b7))/0x3*(parseInt(_0xa6ccfc(0x17a))/0x4)+parseInt(_0xa6ccfc(0x1c1))/0x5*(-parseInt(_0xa6ccfc(0x159))/0x6)+parseInt(_0xa6ccfc(0x180))/0x7*(-parseInt(_0xa6ccfc(0x193))/0x8)+-parseInt(_0xa6ccfc(0x1aa))/0x9*(-parseInt(_0xa6ccfc(0x1bb))/0xa)+-parseInt(_0xa6ccfc(0x1b4))/0xb*(parseInt(_0xa6ccfc(0x166))/0xc)+parseInt(_0xa6ccfc(0x187))/0xd;if(_0x3d5466===_0x141d47)break;else _0x1023fa['push'](_0x1023fa['shift']());}catch(_0x369cd7){_0x1023fa['push'](_0x1023fa['shift']());}}}(_0x190c,0x93368));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x45ed(_0x33909f,_0x1b0317){_0x33909f=_0x33909f-0x158;const _0x190c27=_0x190c();let _0x45ed55=_0x190c27[_0x33909f];return _0x45ed55;}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=_0x51edc9=>_0x5cc9fc(0x18a)+_0x51edc9+_0x5cc9fc(0x1af),link=(_0xf94d6,_0x181a92)=>'\x1b]8;;file://'+_0xf94d6+'\x07'+(_0x181a92||_0xf94d6)+_0x5cc9fc(0x1bc);async function getOpencodePluginStatus(){const _0x48826f=_0x5cc9fc,_0x415f67={'lrSlQ':_0x48826f(0x1b0),'LZfXs':_0x48826f(0x194),'pgcCp':function(_0x71f936,_0x5b09ab){return _0x71f936>_0x5b09ab;},'VnihL':'not_configured','lGOYM':_0x48826f(0x18b),'mRcVk':'debug','hPAPw':_0x48826f(0x17b),'KNJYB':_0x48826f(0x1c0),'SyYfd':_0x48826f(0x1a0)};return new Promise(_0x1b59f9=>{const _0xafec6f=_0x48826f,_0x341081={'pibqs':function(_0x48dcff,_0x2680a9){return _0x48dcff(_0x2680a9);},'QKoCA':'not_installed','Bxkie':_0x415f67['lrSlQ'],'iCFAo':_0x415f67['LZfXs'],'LyUna':function(_0x42a448,_0x62366e){return _0x415f67['pgcCp'](_0x42a448,_0x62366e);},'lPLnM':_0x415f67['VnihL']},_0x498176=spawn(_0x415f67['lGOYM'],[_0x415f67[_0xafec6f(0x19c)],'config'],{'stdio':['ignore',_0x415f67['hPAPw'],_0x415f67[_0xafec6f(0x16b)]]});let _0xe7f922='';_0x498176['stdout']?.['on'](_0x415f67['KNJYB'],_0x42353f=>{_0xe7f922+=_0x42353f['toString']();}),_0x498176['stderr']?.['on']('data',_0x4c164d=>{const _0x23cdb9=_0xafec6f;_0xe7f922+=_0x4c164d[_0x23cdb9(0x19d)]();}),_0x498176['on'](_0x415f67[_0xafec6f(0x1ac)],()=>{const _0x3bd45e=_0xafec6f;_0x341081['pibqs'](_0x1b59f9,{'status':_0x341081[_0x3bd45e(0x15e)]});}),_0x498176['on'](_0xafec6f(0x16a),_0x48f2c7=>{const _0x11c60c=_0xafec6f,_0x25bbe1={'OzbsL':_0x11c60c(0x198),'QSQCp':_0x341081['Bxkie']};if(_0x48f2c7!==0x0){_0x341081['pibqs'](_0x1b59f9,{'status':'not_installed'});return;}const _0xb3e08c=_0xe7f922[_0x11c60c(0x175)]();let _0x132aaa=null;if(_0xb3e08c)try{_0x132aaa=JSON['parse'](_0xb3e08c);}catch{const _0x44aee8=_0xb3e08c['match'](/\{[\s\S]*\}$/);if(_0x44aee8)try{_0x132aaa=JSON['parse'](_0x44aee8[0x0]);}catch{_0x132aaa=null;}}const _0x2a9944=Array[_0x11c60c(0x1a7)](_0x132aaa?.[_0x11c60c(0x1a8)])?_0x132aaa?.['plugin']:[],_0x535b96=_0x2a9944['some'](_0x3f0460=>{const _0x1f9d1a=_0x11c60c;if(typeof _0x3f0460!==_0x25bbe1['OzbsL'])return![];return _0x3f0460[_0x1f9d1a(0x183)]('@ranger-testing/opencode-plugin')||_0x3f0460[_0x1f9d1a(0x183)](_0x25bbe1['QSQCp']);});if(_0x535b96){_0x341081[_0x11c60c(0x1a6)](_0x1b59f9,{'status':_0x341081['iCFAo'],'details':_0x2a9944['length']>0x0?_0x2a9944[_0x11c60c(0x19b)]+'\x20plugin(s)\x20configured':undefined});return;}if(_0x341081['LyUna'](_0x2a9944[_0x11c60c(0x19b)],0x0)){_0x1b59f9({'status':_0x11c60c(0x192),'details':_0x2a9944[_0x11c60c(0x19b)]+'\x20plugin(s)\x20configured'});return;}_0x1b59f9({'status':_0x341081[_0x11c60c(0x18c)]});});});}async function getSkillsFromDir(_0x513c05,_0xa168e2){const _0x306d20=_0x5cc9fc,_0x2c9bc7={'soFHm':function(_0x2c6f2f,_0x363495){return _0x2c6f2f(_0x363495);},'QsCxO':function(_0x4e67ea,_0x48397a,_0x40b2dc,_0x202696){return _0x4e67ea(_0x48397a,_0x40b2dc,_0x202696);},'bFwwD':_0x306d20(0x17f),'EyKWN':function(_0x27dae5,_0x4ade6f){return _0x27dae5(_0x4ade6f);},'NEPwd':function(_0x3b7b72,_0xd263c1,_0x17925f){return _0x3b7b72(_0xd263c1,_0x17925f);},'FWSFG':'utf-8'};if(!_0x2c9bc7['soFHm'](existsSync,_0x513c05))return[];const _0x4aeb10=[];try{const _0x57d832=await readdir(_0x513c05,{'withFileTypes':!![]});for(const _0x5c76cc of _0x57d832){if(_0x5c76cc[_0x306d20(0x1ba)]()){const _0x3b6bbe=_0x2c9bc7['QsCxO'](join,_0x513c05,_0x5c76cc['name'],_0x2c9bc7['bFwwD']);if(_0x2c9bc7[_0x306d20(0x1b2)](existsSync,_0x3b6bbe)){let _0x293436=_0x5c76cc['name'];try{const _0x33b4c2=await _0x2c9bc7[_0x306d20(0x191)](readFile,_0x3b6bbe,_0x2c9bc7[_0x306d20(0x15d)]),_0x5aff8a=_0x33b4c2[_0x306d20(0x170)](/name:\s*(.+)/);_0x5aff8a&&(_0x293436=_0x5aff8a[0x1][_0x306d20(0x175)]());}catch{}_0x4aeb10[_0x306d20(0x17d)]({'name':_0x5c76cc['name'],'displayName':_0x293436,'path':_0x3b6bbe,'level':_0xa168e2});}}}}catch{return[];}return _0x4aeb10;}async function getInstalledSkills(){const _0x785828=_0x5cc9fc,_0x44169f={'NGxac':function(_0x2e16f7,_0x5cc570,_0x62dbdb){return _0x2e16f7(_0x5cc570,_0x62dbdb);},'ebQLG':_0x785828(0x1ae)},[_0x201c31,_0x4bc8be]=await Promise['all']([_0x44169f['NGxac'](getSkillsFromDir,getProjectSkillsDir(),_0x44169f['ebQLG']),getSkillsFromDir(getUserSkillsDir(),_0x785828(0x16e))]);return{'project':_0x201c31,'user':_0x4bc8be};}function _0x190c(){const _0x523abb=['opencode-plugin','version','EyKWN','hasEncryptedAuth','66oxllQM','\x0a---\x20Skills\x20---','no\x20session','1563FWXJlp','API\x20URL:\x20','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','isDirectory','5683410JnliQf','\x1b]8;;\x07','details','map','MpAUD','data','170065fVsEkL','hasPlaintextAuth',':\x20installed\x20(','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','60qtToUR','plaintext','8wrXVwq','Version:\x20','FWSFG','QKoCA','(not\x20found)','21781fXKHss','gMpgv','NkvHr','\x0a---\x20Profiles\x20---','has','organizationName','1320312lDUxTv','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','status','Organization:\x20','close','hPAPw','\x20\x20\x20\x20Settings:\x20','No\x20profiles\x20configured','user','\x20(active)','match','gkIdG','SfTGP','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','rHwou','trim','\x20\x20Run:\x20ranger\x20setup\x20[token]','ranger@trailhead','scope','join','4168kWXEgK','pipe','tIufa','push','\x20\x20User-level:','SKILL.md','8341522dIvIGA','name','znzBc','includes','CmINI','LQzmG','API\x20Token:\x20✗\x20Not\x20found','37135553DKSSfz','log','iGnYr','\x1b[1m','opencode','lPLnM','settingsPath','No\x20skills\x20installed','\x20\x20\x20\x20Session:\x20','aPyUV','NEPwd','not_configured','8RVxpra','configured','tWqyD','Root:\x20','bSdyd','string','filter','lIvWM','length','mRcVk','toString','rzYZs','sessionUpdatedAt','error','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','\x20\x20Run:\x20ranger\x20skillup','\x0a---\x20OpenCode\x20Plugin\x20---','\x20cloud','SvNDb','pibqs','isArray','plugin','env','9JGZWRb','\x20\x20\x20\x20','SyYfd','displayName','project','\x1b[0m'];_0x190c=function(){return _0x523abb;};return _0x190c();}async function getEnvironments(){const _0x16ec51=_0x5cc9fc,_0x528bbf={'CmINI':function(_0x32be03,_0x4ac66f){return _0x32be03(_0x4ac66f);},'tSnmA':'settings.json','MpAUD':function(_0x4831ca,_0x2a368b,_0x2f7464){return _0x4831ca(_0x2a368b,_0x2f7464);},'aPyUV':'auth.json','aUCIx':function(_0x519c05,_0x25de24,_0x59bec2){return _0x519c05(_0x25de24,_0x59bec2);},'SdKVi':function(_0x8b7963){return _0x8b7963();},'qofGO':function(_0x5a99b0,_0x52bfcb){return _0x5a99b0(_0x52bfcb);}},{envNames:_0xad2047,activeEnv:_0x38afd1}=await getEnvNames(),_0x298dd5=_0x528bbf['SdKVi'](getRangerDir);if(!_0x528bbf['qofGO'](existsSync,_0x298dd5))return{'envs':[],'activeEnv':null};const _0xafcc3b=_0xad2047[_0x16ec51(0x1be)](_0x33fea3=>{const _0x59b4d6=_0x16ec51,_0x598e5a=_0x528bbf[_0x59b4d6(0x184)](getEnvDir,_0x33fea3),_0xa5483f=join(_0x598e5a,_0x528bbf['tSnmA']),_0x12df6f=_0x528bbf[_0x59b4d6(0x1bf)](join,_0x598e5a,_0x528bbf[_0x59b4d6(0x190)]),_0x26304f=_0x528bbf['aUCIx'](join,_0x598e5a,'auth.json.enc');return{'name':_0x33fea3,'settingsPath':existsSync(_0xa5483f)?_0xa5483f:_0x59b4d6(0x15f),'hasPlaintextAuth':existsSync(_0x12df6f),'hasEncryptedAuth':_0x528bbf[_0x59b4d6(0x184)](existsSync,_0x26304f),'isActive':_0x33fea3===_0x38afd1};});return{'envs':_0xafcc3b,'activeEnv':_0x38afd1};}export async function status(){const _0x16748f=_0x5cc9fc,_0x40a6a4={'tIufa':function(_0x5048d1){return _0x5048d1();},'NJahH':function(_0x21d3ec,_0x1713aa){return _0x21d3ec(_0x1713aa);},'gMvaQ':function(_0x5da20e,_0x40e5fa,_0x5a8ca7){return _0x5da20e(_0x40e5fa,_0x5a8ca7);},'rzYZs':function(_0x3e4c7b,_0x4bac84){return _0x3e4c7b(_0x4bac84);},'lIvWM':function(_0x357d8c){return _0x357d8c();},'bSdyd':function(_0x59786e){return _0x59786e();},'rHwou':function(_0xb1e4f7,_0x247b73){return _0xb1e4f7!==_0x247b73;},'CSjMK':_0x16748f(0x1a3),'znzBc':function(_0x1f173b,_0xeb1221){return _0x1f173b===_0xeb1221;},'iGnYr':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','avFIg':'\x20\x20Not\x20installed','qwnrk':function(_0x4fe6a0,_0x20aa34){return _0x4fe6a0+_0x20aa34;},'SfTGP':_0x16748f(0x18e),'gMpgv':'\x20\x20Project-level:','eCFIR':function(_0x49585f,_0xce1fdb){return _0x49585f(_0xce1fdb);},'tWqyD':function(_0x315203,_0x2f4286,_0x24ad29){return _0x315203(_0x2f4286,_0x24ad29);},'SvNDb':function(_0x50e266,_0x2aedb4){return _0x50e266(_0x2aedb4);},'IiyXM':function(_0x33c240,_0x3171de){return _0x33c240(_0x3171de);},'ZeVUi':function(_0x92f5fc,_0xda0b1b){return _0x92f5fc(_0xda0b1b);},'gkIdG':function(_0x3d5b33,_0x55fc07){return _0x3d5b33+_0x55fc07;},'tDmoZ':_0x16748f(0x16d),'LQzmG':function(_0x55d414,_0xe4cd33){return _0x55d414>_0xe4cd33;},'oObAR':function(_0x194a11,_0x5ded4b){return _0x194a11>_0x5ded4b;},'NkvHr':'none'};console[_0x16748f(0x188)]('\x0a📊\x20Ranger\x20Status\x0a');const _0x2000a7=process['cwd'](),_0x40d041=_0x40a6a4[_0x16748f(0x17c)](getRangerDir);if(!_0x40a6a4['NJahH'](existsSync,_0x40d041)){console[_0x16748f(0x188)](_0x16748f(0x196)+_0x40a6a4['gMvaQ'](link,_0x2000a7,bold(_0x40a6a4[_0x16748f(0x19e)](basename,_0x2000a7)))),console['log'](_0x16748f(0x1a1)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x16748f(0x188)]('Root:\x20'+_0x40a6a4['gMvaQ'](link,_0x2000a7,bold(basename(_0x2000a7))));const _0x1fa004=_0x40a6a4[_0x16748f(0x19a)](getCurrentVersion),_0x5af972=_0x40a6a4[_0x16748f(0x197)](getLatestVersion);if(_0x5af972[_0x16748f(0x1b1)]&&_0x40a6a4[_0x16748f(0x174)](_0x5af972[_0x16748f(0x1b1)],_0x1fa004))console['log'](_0x16748f(0x15c)+_0x1fa004+'\x20(latest:\x20'+_0x5af972['version']+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x5af972[_0x16748f(0x1b1)]?console[_0x16748f(0x188)](_0x16748f(0x15c)+_0x1fa004+'\x20(up\x20to\x20date)'):console[_0x16748f(0x188)]('Version:\x20'+_0x1fa004);const _0x2e1152=await _0x40a6a4['bSdyd'](getToken);if(_0x2e1152){const _0x2a8d00=await getCurrentUser(_0x2e1152);_0x2a8d00['success']?console['log'](_0x16748f(0x169)+_0x40a6a4['NJahH'](bold,_0x2a8d00['user'][_0x16748f(0x165)])):(console[_0x16748f(0x188)](_0x16748f(0x1b9)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console['log'](_0x16748f(0x186)),console[_0x16748f(0x188)](_0x16748f(0x176));process[_0x16748f(0x1a9)]['DEBUG']&&(console[_0x16748f(0x188)]('API\x20Environment:\x20'+_0x40a6a4[_0x16748f(0x17c)](getCurrentEnvironment)),console[_0x16748f(0x188)](_0x16748f(0x1b8)+getApiBaseUrl()));console['log'](_0x40a6a4['CSjMK']);const _0x115c6d=await getOpencodePluginStatus();if(_0x40a6a4[_0x16748f(0x182)](_0x115c6d['status'],_0x16748f(0x194)))console['log']('\x20\x20'+_0x40a6a4['rzYZs'](bold,'@ranger-testing/opencode-plugin')+':\x20configured'),_0x115c6d['details']&&console[_0x16748f(0x188)]('\x20\x20'+_0x115c6d[_0x16748f(0x1bd)]);else _0x115c6d[_0x16748f(0x168)]==='not_configured'?(console['log']('\x20\x20Not\x20configured'),_0x115c6d[_0x16748f(0x1bd)]&&console[_0x16748f(0x188)]('\x20\x20'+_0x115c6d[_0x16748f(0x1bd)]),console[_0x16748f(0x188)]('\x20\x20Run:\x20ranger\x20setup\x20--opencode')):console[_0x16748f(0x188)](_0x40a6a4[_0x16748f(0x189)]);console[_0x16748f(0x188)]('\x0a---\x20Claude\x20Code\x20Plugin\x20---');const _0x164b2b=await getPluginInfo(_0x16748f(0x177));if(_0x164b2b){const _0x30f6e0=_0x164b2b[_0x16748f(0x178)]||'unknown',_0x3c0f93=_0x164b2b['enabled']?'enabled':'disabled';console['log']('\x20\x20'+bold('ranger@trailhead')+_0x16748f(0x1c3)+_0x30f6e0+',\x20'+_0x3c0f93+')');}else console[_0x16748f(0x188)](_0x40a6a4['avFIg']),console[_0x16748f(0x188)](_0x16748f(0x158));console[_0x16748f(0x188)](_0x16748f(0x1b5));const {project:_0x2d869f,user:_0x5ee3a8}=await _0x40a6a4['bSdyd'](getInstalledSkills),_0x688821=_0x2d869f['filter'](_0x151c8e=>RANGER_MANAGED_SKILLS['includes'](_0x151c8e['name'])),_0x5e4167=_0x5ee3a8['filter'](_0x10e49e=>RANGER_MANAGED_SKILLS[_0x16748f(0x183)](_0x10e49e['name'])),_0x4cbaae=_0x40a6a4['qwnrk'](_0x688821['length'],_0x5e4167[_0x16748f(0x19b)]);if(_0x40a6a4['znzBc'](_0x4cbaae,0x0))console['log'](_0x40a6a4[_0x16748f(0x172)]),console[_0x16748f(0x188)](_0x16748f(0x1a2));else{if(_0x688821['length']>0x0){console['log'](_0x40a6a4[_0x16748f(0x161)]);for(const _0x590d23 of _0x688821){console[_0x16748f(0x188)](_0x16748f(0x1ab)+_0x40a6a4['eCFIR'](bold,_0x590d23['displayName'])+':\x20'+_0x40a6a4['tWqyD'](link,_0x590d23['path'],_0x40a6a4[_0x16748f(0x1a5)](basename,_0x590d23['path'])));}}if(_0x5e4167[_0x16748f(0x19b)]>0x0){console[_0x16748f(0x188)](_0x16748f(0x17e));for(const _0x38257e of _0x5e4167){console[_0x16748f(0x188)](_0x16748f(0x1ab)+_0x40a6a4['IiyXM'](bold,_0x38257e[_0x16748f(0x1ad)])+':\x20'+link(_0x38257e['path'],_0x40a6a4['ZeVUi'](basename,_0x38257e['path'])));}}}console[_0x16748f(0x188)](_0x16748f(0x163));const {envs:_0x1ee73e,activeEnv:_0x83f09a}=await getEnvironments();let _0x409750=[];if(_0x2e1152)try{_0x409750=await listCloudProfiles();}catch{}const _0x415894=_0x40a6a4[_0x16748f(0x171)](_0x1ee73e[_0x16748f(0x19b)],_0x409750[_0x16748f(0x19b)]);if(_0x40a6a4[_0x16748f(0x182)](_0x415894,0x0))console[_0x16748f(0x188)](_0x40a6a4['tDmoZ']),console['log'](_0x16748f(0x167));else{if(_0x40a6a4[_0x16748f(0x185)](_0x415894,0x5)){const _0xfcaf40=[];_0x409750[_0x16748f(0x19b)]>0x0&&_0xfcaf40[_0x16748f(0x17d)](_0x409750[_0x16748f(0x19b)]+_0x16748f(0x1a4)),_0x40a6a4['oObAR'](_0x1ee73e['length'],0x0)&&_0xfcaf40[_0x16748f(0x17d)](_0x1ee73e['length']+'\x20local'),console['log'](_0x415894+'\x20profiles\x20configured\x20('+_0xfcaf40['join'](',\x20')+')'),_0x83f09a&&console['log']('\x20\x20Active:\x20'+bold(_0x83f09a)),console[_0x16748f(0x188)](_0x16748f(0x173));}else{for(const _0x34afce of _0x409750){const _0x42ccef=_0x34afce[_0x16748f(0x181)]===_0x83f09a?_0x16748f(0x16f):'';console['log']('\x20\x20'+bold(_0x34afce['name'])+'\x20[cloud]'+_0x42ccef);const _0x61801d=_0x34afce[_0x16748f(0x19f)]?'cached\x20(updated\x20'+_0x34afce[_0x16748f(0x19f)]+')':_0x16748f(0x1b6);console['log'](_0x16748f(0x18f)+_0x61801d);}const _0x40c913=new Set(_0x409750[_0x16748f(0x1be)](_0x146d60=>_0x146d60[_0x16748f(0x181)]));for(const _0x3dcb5f of _0x1ee73e){if(_0x40c913['has'](_0x3dcb5f['name']))continue;const _0x263a3a=_0x3dcb5f['isActive']?_0x16748f(0x16f):'',_0x3d2421=_0x3dcb5f[_0x16748f(0x1b3)]?'encrypted':_0x3dcb5f[_0x16748f(0x1c2)]?_0x16748f(0x15a):_0x40a6a4[_0x16748f(0x162)];console[_0x16748f(0x188)]('\x20\x20'+bold(_0x3dcb5f[_0x16748f(0x181)])+'\x20[local]'+_0x263a3a),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x3d2421),_0x40a6a4[_0x16748f(0x174)](_0x3dcb5f['settingsPath'],'(not\x20found)')&&console[_0x16748f(0x188)](_0x16748f(0x16c)+_0x40a6a4[_0x16748f(0x195)](link,_0x3dcb5f[_0x16748f(0x18d)],basename(_0x3dcb5f[_0x16748f(0x18d)])));}if(!_0x83f09a){console['log']('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x5ecd82=[..._0x409750['map'](_0x22eba4=>_0x22eba4['name']),..._0x1ee73e[_0x16748f(0x199)](_0x5b8b33=>!_0x40c913[_0x16748f(0x164)](_0x5b8b33['name']))['map'](_0xc216a8=>_0xc216a8[_0x16748f(0x181)])];console[_0x16748f(0x188)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x5ecd82[_0x16748f(0x179)](',\x20')+')');}}}console[_0x16748f(0x188)]('');}
|