@ranger-testing/ranger-cli 3.1.6-alpha.aca5f9c-53 → 3.1.6
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/scenarioOriginCheck.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
|
-
|
|
1
|
+
(function(_0x433a46,_0x448c4c){const _0x37b005=_0x8e48,_0x2045b9=_0x433a46();while(!![]){try{const _0x5a89c1=-parseInt(_0x37b005(0x1b1))/0x1*(-parseInt(_0x37b005(0x1be))/0x2)+parseInt(_0x37b005(0x1b7))/0x3*(-parseInt(_0x37b005(0x1bb))/0x4)+-parseInt(_0x37b005(0x1ba))/0x5*(-parseInt(_0x37b005(0x1b2))/0x6)+-parseInt(_0x37b005(0x1af))/0x7+parseInt(_0x37b005(0x1b9))/0x8+-parseInt(_0x37b005(0x1bf))/0x9*(parseInt(_0x37b005(0x1bd))/0xa)+-parseInt(_0x37b005(0x1ae))/0xb*(-parseInt(_0x37b005(0x1b3))/0xc);if(_0x5a89c1===_0x448c4c)break;else _0x2045b9['push'](_0x2045b9['shift']());}catch(_0x1eaf4b){_0x2045b9['push'](_0x2045b9['shift']());}}}(_0x3398,0xc0280));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x3398(){const _0x2f4bfe=['126DtMNcH','11gSHydR','7500283VXeRWD','\x0a✅\x20API\x20key\x20stored\x20successfully','452947vdAAvE','306DydDzA','20809608qCXdvf','Re-authenticating\x20via\x20MCP\x20bootstrap...','message','wEXtw','3swuxuB','TBrbh','5079160qNhOck','8185AoHBNv','1457912iAFzRU','log','487460gZeaBr','2tyrJUe'];_0x3398=function(){return _0x2f4bfe;};return _0x3398();}import{getCurrentUser}from'./utils/userApi.js';import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';import{isInteractive}from'./utils/cloudProfileSession.js';function _0x8e48(_0x1480eb,_0x14459e){_0x1480eb=_0x1480eb-0x1ae;const _0x3398ed=_0x3398();let _0x8e48bc=_0x3398ed[_0x1480eb];return _0x8e48bc;}export async function login(){const _0xc2236=_0x8e48,_0x5141ee={'TBrbh':'Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.','wEXtw':function(_0x3fdc80){return _0x3fdc80();},'NhumB':function(_0x7515f8,_0x2df454){return _0x7515f8 instanceof _0x2df454;}},_0x400448=await getMcpAuthOrigin();if(_0x400448){console[_0xc2236(0x1bc)](_0xc2236(0x1b4)),await mcpBootstrap();return;}if(!isInteractive())throw new Error(_0x5141ee[_0xc2236(0x1b8)]);try{const _0x2657d2=await _0x5141ee[_0xc2236(0x1b6)](runDeviceAuthFlow),_0x492cdb=await getCurrentUser(_0x2657d2);_0x492cdb['success']?console['log']('\x0a✅\x20Logged\x20in\x20to\x20'+_0x492cdb['user']['organizationName']):console[_0xc2236(0x1bc)](_0xc2236(0x1b0));}catch(_0x5352b2){throw new Error('Login\x20failed:\x20'+(_0x5141ee['NhumB'](_0x5352b2,Error)?_0x5352b2[_0xc2236(0x1b5)]:_0x5352b2));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3371a5=_0x38b8;(function(_0x21f57a,_0x581c64){const _0x4824e4=_0x38b8,_0xbee225=_0x21f57a();while(!![]){try{const _0x45c55d=-parseInt(_0x4824e4(0x1b7))/0x1*(parseInt(_0x4824e4(0x21f))/0x2)+-parseInt(_0x4824e4(0x247))/0x3+-parseInt(_0x4824e4(0x1b9))/0x4*(parseInt(_0x4824e4(0x231))/0x5)+parseInt(_0x4824e4(0x1cb))/0x6+parseInt(_0x4824e4(0x1c8))/0x7*(parseInt(_0x4824e4(0x1e2))/0x8)+parseInt(_0x4824e4(0x1c7))/0x9*(parseInt(_0x4824e4(0x20d))/0xa)+-parseInt(_0x4824e4(0x1c1))/0xb;if(_0x45c55d===_0x581c64)break;else _0xbee225['push'](_0xbee225['shift']());}catch(_0x1df346){_0xbee225['push'](_0xbee225['shift']());}}}(_0x4a09,0xd3b92));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';function _0x4a09(){const _0x5d2ee7=['Registering\x20OAuth\x20client...','authorization_code','now','message','vNYOa','split','stringify','WPSQX','response_type','open','status','1.0.0','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','hex','JkQyQ','token_endpoint','NShbf','gklMb','origin','utf-8','IZxdv','trim','log','code','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','write','nzfBv','application/json,\x20text/event-stream','Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20','Bhcnc','tLZOJ','</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>','http://localhost:','XiADS','HTTP\x20','Bearer\x20','YvnEs','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','LaRPT','error_description','expiresAt','100ukzcOk','iPoGv','pNMQt','WCSBY','toString','refreshToken','type','JoTSz','get_cli_token','IeRFf','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','data:','CaYmb','iKlPG','WvJgj','darwin','OAuth\x20error:\x20','access_token','132094IYatuV','get','authorization_endpoint','ZzSQz','GdtUK','resource','tools/call','application/x-www-form-urlencoded','isTTY','content-type','text/html','Exchanging\x20authorization\x20code...','<html><body><h2>Authentication\x20failed</h2><p>','.ranger','result','auth-origin.txt','structuredContent','token','197445lfXksS','dJcjp','fgyUq','digest','uDAoA','includes','uFtZq','TcKPN','platform','content','tLwgP','slice','stdout','iabos','xdg-open','tcNGL','jYEPY','kfCSl','ranger-cli','client_id','pathname','ISyWS','1041357YIdfNZ','slMCk','LSzwG','\x20done','vVxBW','url','EMahp','WmOHF','GQFKF','set','authorization_servers','2025-03-26','notifications/initialized','1ttxenV','oScId','20XrLxYn','client_secret','QiVKz','uECTj','accessToken','lRmFs','2.0','proxied','8855033OdLbcA','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','listen','VpaHY','S256','PLnYS','623961hnCDDj','14JlbjKZ','end','string','5490984nTCpUu','TDbOs','parse','json','ilkOM','clientSecret','ZQpIG','replace','puPMb','BIvYH','sha256','error','UAYfi','YspXz','XEpDS','Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','closeAllConnections','ERRXX','text','uUiCo','code_challenge','uPjbp','searchParams','2697512mXIPkv','clientId'];_0x4a09=function(){return _0x5d2ee7;};return _0x4a09();}import{homedir}from'os';import{createServer}from'http';import{randomBytes,createHash}from'crypto';import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),'.ranger','mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),'.ranger',_0x3371a5(0x22e));export async function getMcpAuthOrigin(){const _0x2fd28e=_0x3371a5,_0x13e4e3={'WmOHF':function(_0x364311,_0x53489e,_0x3597f3){return _0x364311(_0x53489e,_0x3597f3);},'dmVme':'utf-8'};try{const _0x547b0c=(await _0x13e4e3[_0x2fd28e(0x24e)](readFile,AUTH_ORIGIN_PATH,_0x13e4e3['dmVme']))[_0x2fd28e(0x1f9)]();return _0x547b0c||null;}catch{return null;}}function _0x38b8(_0x128c69,_0x4d969e){_0x128c69=_0x128c69-0x1b5;const _0x4a0933=_0x4a09();let _0x38b819=_0x4a0933[_0x128c69];return _0x38b819;}export async function mcpBootstrap(){const _0x2640c6=_0x3371a5,_0x59bbf8={'ZYCWK':function(_0x332d5f,_0x39e19f){return _0x332d5f(_0x39e19f);},'GdtUK':function(_0x359249,_0x5a2760,_0x123280){return _0x359249(_0x5a2760,_0x123280);}},_0x36d254=getMcpAuthUrl();currentOrigin=_0x36d254;const _0x494dee=process[_0x2640c6(0x23d)][_0x2640c6(0x227)]??![];console[_0x2640c6(0x1fa)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x36d254+'\x0a');const _0x1befc0=await _0x59bbf8['ZYCWK'](tryUnauthenticated,_0x36d254);let _0x3e9dfd=null;if(_0x1befc0===_0x2640c6(0x1c0))_0x3e9dfd='';else{_0x3e9dfd=await loadCachedToken();if(!_0x3e9dfd){if(!_0x494dee)throw new Error(_0x2640c6(0x209)+_0x2640c6(0x1da));_0x3e9dfd=await _0x59bbf8['ZYCWK'](oauthFlow,_0x36d254);}}await _0x59bbf8[_0x2640c6(0x223)](callGetCliToken,_0x36d254,_0x3e9dfd);}async function tryUnauthenticated(_0x2a334f){const _0x1bb679=_0x3371a5,_0x158544={'ZNvcv':function(_0x2ba6db,_0x5b94f8,_0x1efc2c){return _0x2ba6db(_0x5b94f8,_0x1efc2c);},'VpaHY':'application/json','Bhcnc':_0x1bb679(0x1bf),'Urmwg':'initialize','kfCSl':'2025-03-26','ilkOM':'proxied','QiVKz':function(_0x36a691,_0x63d42c){return _0x36a691===_0x63d42c;}},_0x5a3806=await _0x158544['ZNvcv'](fetch,_0x2a334f,{'method':'POST','headers':{'Content-Type':_0x158544[_0x1bb679(0x1c4)],'Accept':'application/json,\x20text/event-stream'},'body':JSON[_0x1bb679(0x1ea)]({'jsonrpc':_0x158544[_0x1bb679(0x201)],'id':0x1,'method':_0x158544['Urmwg'],'params':{'protocolVersion':_0x158544[_0x1bb679(0x242)],'capabilities':{},'clientInfo':{'name':_0x1bb679(0x243),'version':_0x1bb679(0x1ef)}}})});if(_0x5a3806['ok'])return await _0x5a3806[_0x1bb679(0x1dd)](),_0x158544[_0x1bb679(0x1cf)];if(_0x158544[_0x1bb679(0x1bb)](_0x5a3806[_0x1bb679(0x1ee)],0x191))return await _0x5a3806[_0x1bb679(0x1dd)](),'needs-oauth';const _0x426592=await _0x5a3806['text']();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x5a3806['status']+':\x20'+_0x426592);}class OAuthTimeoutError extends Error{constructor(_0x1bc8bc){const _0x3c66d4=_0x3371a5,_0x3094dd={'EMahp':'OAuthTimeoutError'};super(_0x1bc8bc),this['name']=_0x3094dd[_0x3c66d4(0x24d)];}}async function oauthFlow(_0x11a708){const _0x47fc28=_0x3371a5,_0x2a5c23={'dJcjp':function(_0x10dca8,_0x329286){return _0x10dca8(_0x329286);},'gklMb':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a','mouPZ':function(_0x4ebb34){return _0x4ebb34();}};try{return await _0x2a5c23[_0x47fc28(0x232)](oauthFlowAttempt,_0x11a708);}catch(_0x2586e0){if(_0x2586e0 instanceof OAuthTimeoutError&&await loadCachedClient())return console['log'](_0x2a5c23[_0x47fc28(0x1f5)]),await _0x2a5c23['mouPZ'](clearCachedClient),await oauthFlowAttempt(_0x11a708);throw _0x2586e0;}}async function oauthFlowAttempt(_0x2d3179){const _0x2a0311=_0x3371a5,_0xda4e46={'gIKwE':_0x2a0311(0x1e4),'vVxBW':function(_0x32817c,_0x4a318a,_0x166009){return _0x32817c(_0x4a318a,_0x166009);},'uUiCo':'POST','iuEbV':'application/json','nzfBv':'refresh_token','YspXz':'none','vNYOa':_0x2a0311(0x24a),'CaYmb':_0x2a0311(0x217),'pWnCM':function(_0x5a850f,_0x788619){return _0x5a850f(_0x788619);},'pNMQt':_0x2a0311(0x1f1),'PdxPA':_0x2a0311(0x1ec),'OyNhy':_0x2a0311(0x244),'oWXbj':_0x2a0311(0x1df),'fJKiJ':'code_challenge_method','OhKWn':'state','UAYfi':_0x2a0311(0x224),'QjZkU':'\x0aOpening\x20browser\x20for\x20authentication...','YvnEs':function(_0x316bca,_0x404fe5){return _0x316bca(_0x404fe5);},'uFtZq':_0x2a0311(0x22a),'RpoFJ':_0x2a0311(0x1e5),'GySEt':function(_0x323ef9,_0x5e38d1,_0x26f261){return _0x323ef9(_0x5e38d1,_0x26f261);},'BsoTC':_0x2a0311(0x226)},_0x522e31=_0x2d3179[_0x2a0311(0x1d2)](/\/mcp$/,'');process[_0x2a0311(0x23d)][_0x2a0311(0x1fd)]('Discovering\x20authorization\x20server...');const _0x499fe0=await fetch(_0x522e31+'/.well-known/oauth-protected-resource');if(!_0x499fe0['ok'])throw new Error('Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server');const _0x2575b9=await _0x499fe0[_0x2a0311(0x1ce)](),_0x35b326=_0x2575b9[_0x2a0311(0x251)]?.[0x0];if(!_0x35b326)throw new Error(_0x2a0311(0x1c2));console['log']('\x20'+_0x35b326);const _0x257817=await fetchAuthServerMetadata(_0x35b326);let _0x149e21,_0xff0939;const _0x5b7b04=await loadCachedClient();if(_0x5b7b04)_0x149e21=_0x5b7b04[_0x2a0311(0x1e3)],_0xff0939=_0x5b7b04[_0x2a0311(0x1d0)];else{if(_0x257817['registration_endpoint']){process[_0x2a0311(0x23d)]['write'](_0xda4e46['gIKwE']);const _0x519243=await _0xda4e46[_0x2a0311(0x24b)](fetch,_0x257817['registration_endpoint'],{'method':_0xda4e46[_0x2a0311(0x1de)],'headers':{'Content-Type':_0xda4e46['iuEbV']},'body':JSON[_0x2a0311(0x1ea)]({'client_name':'Ranger\x20CLI','redirect_uris':[_0x2a0311(0x204)+CALLBACK_PORT+'/callback'],'grant_types':['authorization_code',_0xda4e46[_0x2a0311(0x1fe)]],'response_types':[_0x2a0311(0x1fb)],'token_endpoint_auth_method':_0xda4e46[_0x2a0311(0x1d8)]})});if(!_0x519243['ok']){const _0x36cafa=await _0x519243['text']();throw new Error('Client\x20registration\x20failed:\x20'+_0x36cafa);}const _0x3f0ae7=await _0x519243['json']();_0x149e21=_0x3f0ae7[_0x2a0311(0x244)],_0xff0939=_0x3f0ae7[_0x2a0311(0x1ba)],await saveCachedClient(_0x149e21,_0xff0939),console[_0x2a0311(0x1fa)](_0xda4e46[_0x2a0311(0x1e8)]);}else throw new Error(_0xda4e46[_0x2a0311(0x219)]);}const _0x2c5bdc=randomBytes(0x20)['toString']('base64url'),_0x3fd18b=createHash(_0x2a0311(0x1d5))['update'](_0x2c5bdc)[_0x2a0311(0x234)]('base64url'),_0x173625=_0xda4e46['pWnCM'](randomBytes,0x10)[_0x2a0311(0x211)](_0xda4e46[_0x2a0311(0x20f)]),_0x14b51e=new URL(_0x257817[_0x2a0311(0x221)]);_0x14b51e['searchParams']['set'](_0xda4e46['PdxPA'],_0x2a0311(0x1fb)),_0x14b51e[_0x2a0311(0x1e1)][_0x2a0311(0x250)](_0xda4e46['OyNhy'],_0x149e21),_0x14b51e['searchParams']['set']('redirect_uri',_0x2a0311(0x204)+CALLBACK_PORT+'/callback'),_0x14b51e['searchParams'][_0x2a0311(0x250)](_0xda4e46['oWXbj'],_0x3fd18b),_0x14b51e[_0x2a0311(0x1e1)]['set'](_0xda4e46['fJKiJ'],_0x2a0311(0x1c5)),_0x14b51e[_0x2a0311(0x1e1)][_0x2a0311(0x250)](_0xda4e46['OhKWn'],_0x173625);_0x2575b9['resource']&&_0x14b51e[_0x2a0311(0x1e1)][_0x2a0311(0x250)](_0xda4e46[_0x2a0311(0x1d7)],_0x2575b9['resource']);console[_0x2a0311(0x1fa)](_0xda4e46['QjZkU']),console[_0x2a0311(0x1fa)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0x14b51e['toString']()+'\x0a'),await openBrowser(_0x14b51e['toString']());const _0x2dce98=await _0xda4e46[_0x2a0311(0x208)](waitForCallback,_0x173625);process['stdout'][_0x2a0311(0x1fd)](_0xda4e46[_0x2a0311(0x237)]);const _0x5ca2bf=new URLSearchParams({'grant_type':_0xda4e46['RpoFJ'],'code':_0x2dce98,'redirect_uri':'http://localhost:'+CALLBACK_PORT+'/callback','client_id':_0x149e21,'code_verifier':_0x2c5bdc});_0xff0939&&_0x5ca2bf['set'](_0x2a0311(0x1ba),_0xff0939);_0x2575b9['resource']&&_0x5ca2bf[_0x2a0311(0x250)](_0xda4e46['UAYfi'],_0x2575b9['resource']);const _0x453eef=await _0xda4e46['GySEt'](fetch,_0x257817[_0x2a0311(0x1f3)],{'method':_0xda4e46['uUiCo'],'headers':{'Content-Type':_0xda4e46['BsoTC']},'body':_0x5ca2bf});if(!_0x453eef['ok']){const _0x32d07f=await _0x453eef['text']();throw new Error('Token\x20exchange\x20failed:\x20'+_0x32d07f);}const _0xb59a2=await _0x453eef['json']();return console[_0x2a0311(0x1fa)](_0xda4e46['vNYOa']),await saveCachedToken(_0xb59a2[_0x2a0311(0x21e)],_0xb59a2['refresh_token'],_0xb59a2['expires_in']),_0xb59a2[_0x2a0311(0x21e)];}async function callGetCliToken(_0x3c37eb,_0x2b044a){const _0x4cb8dd=_0x3371a5,_0x179f5f={'iOTGQ':'POST','uDAoA':function(_0xc7f3b9,_0x205a83){return _0xc7f3b9(_0x205a83);},'oBkqz':'application/json','RgEmS':_0x4cb8dd(0x1ff),'ZQpIG':'2.0','IeRFf':'initialize','IZxdv':_0x4cb8dd(0x1ef),'cPXOP':'\x20done','mgFOJ':_0x4cb8dd(0x1b6),'tLZOJ':_0x4cb8dd(0x215),'NShbf':function(_0x39680e,_0x176adf){return _0x39680e(_0x176adf);},'TcKPN':'\x0aUnexpected\x20response\x20structure:','WPSQX':_0x4cb8dd(0x1fc),'cOuWE':function(_0x2eb96d){return _0x2eb96d();},'LSzwG':_0x4cb8dd(0x22c),'hiRZf':function(_0x14d7ac,_0x2ee2b6,_0x15d4ea,_0x30cfb3){return _0x14d7ac(_0x2ee2b6,_0x15d4ea,_0x30cfb3);},'abNmT':function(_0x4e2141,_0x5ee110,_0x3e4e52){return _0x4e2141(_0x5ee110,_0x3e4e52);},'eywAH':_0x4cb8dd(0x1f0)},_0x1e0a8d={'Content-Type':_0x179f5f['oBkqz'],'Accept':_0x179f5f['RgEmS']};_0x2b044a&&(_0x1e0a8d['Authorization']=_0x4cb8dd(0x207)+_0x2b044a);const _0x35e479=async _0x2f42f8=>{const _0x29a6dc=_0x4cb8dd,_0x5d3534=await fetch(_0x3c37eb,{'method':_0x179f5f['iOTGQ'],'headers':_0x1e0a8d,'body':JSON['stringify'](_0x2f42f8)});if(!_0x5d3534['ok']){const _0x34582d=await _0x5d3534['text']();throw new Error(_0x29a6dc(0x206)+_0x5d3534['status']+':\x20'+_0x34582d);}return _0x179f5f['uDAoA'](parseResponse,_0x5d3534);};process['stdout']['write']('Initializing\x20MCP\x20session...');const _0x4bf88b=await _0x35e479({'jsonrpc':_0x179f5f[_0x4cb8dd(0x1d1)],'id':0x1,'method':_0x179f5f[_0x4cb8dd(0x216)],'params':{'protocolVersion':_0x4cb8dd(0x1b5),'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x179f5f[_0x4cb8dd(0x1f8)]}}});if(_0x4bf88b[_0x4cb8dd(0x1d6)])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x4bf88b[_0x4cb8dd(0x1d6)][_0x4cb8dd(0x1e7)]??JSON[_0x4cb8dd(0x1ea)](_0x4bf88b[_0x4cb8dd(0x1d6)])));console['log'](_0x179f5f['cPXOP']),await fetch(_0x3c37eb,{'method':'POST','headers':_0x1e0a8d,'body':JSON['stringify']({'jsonrpc':_0x179f5f[_0x4cb8dd(0x1d1)],'method':_0x179f5f['mgFOJ']})})['then'](_0x39f4cc=>_0x39f4cc[_0x4cb8dd(0x1dd)]()),process[_0x4cb8dd(0x23d)]['write']('Requesting\x20CLI\x20token...');const _0x5b1336=await _0x179f5f[_0x4cb8dd(0x235)](_0x35e479,{'jsonrpc':_0x4cb8dd(0x1bf),'id':0x2,'method':_0x4cb8dd(0x225),'params':{'name':_0x179f5f[_0x4cb8dd(0x202)],'arguments':{}}});if(_0x5b1336[_0x4cb8dd(0x1d6)])throw new Error('get_cli_token\x20failed:\x20'+(_0x5b1336['error'][_0x4cb8dd(0x1e7)]??JSON[_0x4cb8dd(0x1ea)](_0x5b1336['error'])));console[_0x4cb8dd(0x1fa)]('\x20done');const _0x57dff5=_0x179f5f[_0x4cb8dd(0x1f4)](extractToken,_0x5b1336[_0x4cb8dd(0x22d)]);if(!_0x57dff5){console['error'](_0x179f5f[_0x4cb8dd(0x238)]),console['error'](JSON[_0x4cb8dd(0x1ea)](_0x5b1336['result'],null,0x2));throw new Error(_0x179f5f[_0x4cb8dd(0x1eb)]);}const _0x341fb5=join(_0x179f5f['cOuWE'](homedir),_0x179f5f[_0x4cb8dd(0x249)]),_0x18725f=join(_0x341fb5,'refresh.txt');await mkdir(_0x341fb5,{'recursive':!![]}),await writeFile(_0x18725f,_0x57dff5,{'mode':0x180}),await _0x179f5f['hiRZf'](writeFile,_0x179f5f['abNmT'](join,_0x341fb5,_0x4cb8dd(0x22e)),_0x3c37eb,{'mode':0x180}),console['log']('\x0aToken\x20written\x20to\x20'+_0x18725f),console[_0x4cb8dd(0x1fa)](_0x179f5f['eywAH']);}async function fetchAuthServerMetadata(_0x2c5fb3){const _0xda6207=_0x3371a5,_0xfc30a4={'slMCk':function(_0x56b843,_0x3eb7a8){return _0x56b843(_0x3eb7a8);}},_0x44efe6=_0x2c5fb3+'/.well-known/oauth-authorization-server',_0x86f86d=await _0xfc30a4[_0xda6207(0x248)](fetch,_0x44efe6);if(!_0x86f86d['ok'])throw new Error(_0xda6207(0x200)+_0x44efe6+':\x20'+_0x86f86d['status']);return _0x86f86d['json']();}function waitForCallback(_0x31d1fb){const _0x5316b7={'FquVi':function(_0x52d1ba){return _0x52d1ba();},'WvJgj':function(_0x34df6a,_0x3357ba){return _0x34df6a(_0x3357ba);},'PLnYS':'OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','vGuwC':'Not\x20found','GQFKF':'error','tLwgP':'<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','iPoGv':function(_0x90bfb9,_0xe75332,_0x1e0759){return _0x90bfb9(_0xe75332,_0x1e0759);},'LaRPT':'127.0.0.1'};return new Promise((_0x4e59ac,_0x1926c6)=>{const _0x463924=_0x38b8,_0x24c1ec={'pZSXq':function(_0x2991c1){return _0x5316b7['FquVi'](_0x2991c1);},'WCSBY':function(_0x24116a,_0x5d46f9){const _0x8cccad=_0x38b8;return _0x5316b7[_0x8cccad(0x21b)](_0x24116a,_0x5d46f9);},'ZTGtw':_0x5316b7[_0x463924(0x1c6)],'TDbOs':function(_0x30c9e1,_0x35ec97){return _0x30c9e1!==_0x35ec97;},'JoTSz':_0x5316b7['vGuwC'],'XiADS':'state','xwYhn':_0x5316b7[_0x463924(0x24f)],'ISyWS':_0x463924(0x229),'MeKvm':_0x5316b7[_0x463924(0x23b)],'XEpDS':function(_0x4feed5,_0x2e2a26){const _0x3e2df6=_0x463924;return _0x5316b7[_0x3e2df6(0x21b)](_0x4feed5,_0x2e2a26);},'bQmUz':function(_0x547f76){return _0x5316b7['FquVi'](_0x547f76);}},_0x53254f=()=>{const _0x3c55e7=_0x463924;_0x4646d2[_0x3c55e7(0x1db)](),_0x4646d2['close']();},_0x577704=_0x5316b7[_0x463924(0x20e)](setTimeout,()=>{const _0x1346cc=_0x463924;_0x24c1ec['pZSXq'](_0x53254f),_0x24c1ec[_0x1346cc(0x210)](_0x1926c6,new OAuthTimeoutError(_0x24c1ec['ZTGtw']));},0x1d4c0),_0x4646d2=_0x5316b7[_0x463924(0x21b)](createServer,(_0x210a01,_0x3c74a2)=>{const _0x41c47d=_0x463924,_0x139863=new URL(_0x210a01[_0x41c47d(0x24c)]??'/',_0x41c47d(0x204)+CALLBACK_PORT);if(_0x24c1ec[_0x41c47d(0x1cc)](_0x139863[_0x41c47d(0x245)],'/callback')){_0x3c74a2['writeHead'](0x194),_0x3c74a2[_0x41c47d(0x1c9)](_0x24c1ec[_0x41c47d(0x214)]);return;}const _0x1f3add=_0x139863['searchParams'][_0x41c47d(0x220)]('code'),_0x2a08df=_0x139863[_0x41c47d(0x1e1)][_0x41c47d(0x220)](_0x24c1ec[_0x41c47d(0x205)]),_0x42536f=_0x139863[_0x41c47d(0x1e1)]['get'](_0x24c1ec['xwYhn']);if(_0x42536f){const _0x4aee70=_0x139863[_0x41c47d(0x1e1)][_0x41c47d(0x220)](_0x41c47d(0x20b))??_0x42536f;_0x3c74a2['writeHead'](0xc8,{'Content-Type':_0x24c1ec[_0x41c47d(0x246)]}),_0x3c74a2['end'](_0x41c47d(0x22b)+_0x4aee70+_0x41c47d(0x203)),clearTimeout(_0x577704),_0x53254f(),_0x24c1ec[_0x41c47d(0x210)](_0x1926c6,new Error(_0x41c47d(0x21d)+_0x4aee70));return;}if(!_0x1f3add||_0x2a08df!==_0x31d1fb){_0x3c74a2['writeHead'](0x190,{'Content-Type':_0x24c1ec['ISyWS']}),_0x3c74a2['end']('<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>');return;}_0x3c74a2['writeHead'](0xc8,{'Content-Type':_0x24c1ec[_0x41c47d(0x246)]}),_0x3c74a2['end'](_0x24c1ec['MeKvm']),_0x24c1ec[_0x41c47d(0x1d9)](clearTimeout,_0x577704),_0x24c1ec['bQmUz'](_0x53254f),_0x4e59ac(_0x1f3add);});_0x4646d2[_0x463924(0x1c3)](CALLBACK_PORT,_0x5316b7[_0x463924(0x20a)]);});}async function openBrowser(_0xe42778){const _0xca0dbe=_0x3371a5,_0x437283={'lRmFs':_0xca0dbe(0x1ed),'fgyUq':'win32','tcNGL':_0xca0dbe(0x23f)},_0x2e82b5=process[_0xca0dbe(0x239)]===_0xca0dbe(0x21c)?_0x437283[_0xca0dbe(0x1be)]:process['platform']===_0x437283[_0xca0dbe(0x233)]?'start':_0x437283[_0xca0dbe(0x240)];exec(_0x2e82b5+'\x20\x22'+_0xe42778+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x3a23ad=_0x3371a5,_0x393341={'ZzSQz':function(_0x2156c9,_0x152014,_0x25823a){return _0x2156c9(_0x152014,_0x25823a);},'iabos':'utf-8'};try{const _0x3e41e5=JSON['parse'](await _0x393341[_0x3a23ad(0x222)](readFile,TOKEN_CACHE_PATH,_0x393341[_0x3a23ad(0x23e)]));if(_0x3e41e5[_0x3a23ad(0x1f6)]&&_0x3e41e5['origin']!==currentOrigin)return null;if(_0x3e41e5[_0x3a23ad(0x20c)]&&Date['now']()>_0x3e41e5[_0x3a23ad(0x20c)])return null;return _0x3e41e5[_0x3a23ad(0x1bd)]??null;}catch{return null;}}async function saveCachedToken(_0x327086,_0x41658a,_0x3c37b7){const _0x2cdab6=_0x3371a5,_0xe7f85b={'iKlPG':function(_0x263de5,_0x34f20a){return _0x263de5+_0x34f20a;},'puPMb':function(_0x1a799e,_0x4c67e8){return _0x1a799e*_0x4c67e8;},'BIvYH':function(_0x276f4b,_0x38aeac,_0x42877c){return _0x276f4b(_0x38aeac,_0x42877c);},'uPjbp':_0x2cdab6(0x22c),'uECTj':function(_0x4a93aa,_0x210c51,_0x51c643,_0xf0902d){return _0x4a93aa(_0x210c51,_0x51c643,_0xf0902d);}},_0xd206a=await loadCachedData(),_0x328631={..._0xd206a,'origin':currentOrigin,'accessToken':_0x327086,'refreshToken':_0x41658a??_0xd206a?.[_0x2cdab6(0x212)],'expiresAt':_0x3c37b7?_0xe7f85b[_0x2cdab6(0x21a)](Date[_0x2cdab6(0x1e6)](),_0xe7f85b[_0x2cdab6(0x1d3)](_0x3c37b7,0x3e8)):undefined};await mkdir(_0xe7f85b[_0x2cdab6(0x1d4)](join,homedir(),_0xe7f85b[_0x2cdab6(0x1e0)]),{'recursive':!![]}),await _0xe7f85b[_0x2cdab6(0x1bc)](writeFile,TOKEN_CACHE_PATH,JSON[_0x2cdab6(0x1ea)](_0x328631),{'mode':0x180});}async function loadCachedClient(){const _0x41ca43=_0x3371a5,_0x46ca0e=await loadCachedData();if(_0x46ca0e?.['origin']&&_0x46ca0e[_0x41ca43(0x1f6)]!==currentOrigin)return null;return _0x46ca0e?.[_0x41ca43(0x1e3)]?{'clientId':_0x46ca0e[_0x41ca43(0x1e3)],'clientSecret':_0x46ca0e[_0x41ca43(0x1d0)]}:null;}async function clearCachedClient(){const _0x51c758=_0x3371a5,_0x481732={'nxRwg':function(_0x5af31f){return _0x5af31f();}},_0x5333aa=await _0x481732['nxRwg'](loadCachedData);if(!_0x5333aa)return;const {clientId:_0x355923,clientSecret:_0x4695d2,..._0xe70c88}=_0x5333aa;await writeFile(TOKEN_CACHE_PATH,JSON[_0x51c758(0x1ea)](_0xe70c88),{'mode':0x180});}async function saveCachedClient(_0x25cc5a,_0x2abb59){const _0x5ed4c8=_0x3371a5,_0x27ac1d={'ERRXX':function(_0xf136d1,_0xeead92,_0x4a270e){return _0xf136d1(_0xeead92,_0x4a270e);},'TSInl':function(_0x1100ee,_0x4894b1,_0x9610f4,_0x386d56){return _0x1100ee(_0x4894b1,_0x9610f4,_0x386d56);}},_0x38cd47=await loadCachedData(),_0x37230b={..._0x38cd47,'origin':currentOrigin,'accessToken':_0x38cd47?.[_0x5ed4c8(0x1bd)]??'','clientId':_0x25cc5a,'clientSecret':_0x2abb59};await _0x27ac1d[_0x5ed4c8(0x1dc)](mkdir,join(homedir(),'.ranger'),{'recursive':!![]}),await _0x27ac1d['TSInl'](writeFile,TOKEN_CACHE_PATH,JSON[_0x5ed4c8(0x1ea)](_0x37230b),{'mode':0x180});}async function loadCachedData(){const _0x3386b0=_0x3371a5,_0x4983a4={'TOMfS':function(_0x55fb0f,_0x19b1dd,_0x240dfc){return _0x55fb0f(_0x19b1dd,_0x240dfc);},'JkQyQ':_0x3386b0(0x1f7)};try{return JSON[_0x3386b0(0x1cd)](await _0x4983a4['TOMfS'](readFile,TOKEN_CACHE_PATH,_0x4983a4[_0x3386b0(0x1f2)]));}catch{return null;}}async function parseResponse(_0x2038fb){const _0x88096c=_0x3371a5,_0x35d06d={'HOSdX':_0x88096c(0x228),'jYEPY':_0x88096c(0x218)},_0x240c50=_0x2038fb['headers'][_0x88096c(0x220)](_0x35d06d['HOSdX'])??'';if(_0x240c50[_0x88096c(0x236)]('text/event-stream')){const _0x27a51c=await _0x2038fb['text']();for(const _0x5c2657 of _0x27a51c[_0x88096c(0x1e9)]('\x0a')){const _0xdf96f7=_0x5c2657[_0x88096c(0x1f9)]();if(_0xdf96f7['startsWith'](_0x88096c(0x218))){const _0x4946a8=_0xdf96f7[_0x88096c(0x23c)](_0x35d06d[_0x88096c(0x241)]['length'])[_0x88096c(0x1f9)]();if(!_0x4946a8)continue;try{const _0x2418ae=JSON['parse'](_0x4946a8);if(_0x2418ae['id']!==undefined||_0x2418ae[_0x88096c(0x1d6)])return _0x2418ae;}catch{}}}throw new Error('No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream');}return _0x2038fb['json']();}function extractToken(_0x2bef7a){const _0x468c24=_0x3371a5,_0x7037a8={'oScId':function(_0x441c9a,_0x5d7d79){return _0x441c9a===_0x5d7d79;},'KTNCn':'Unknown\x20error','tkLTX':_0x468c24(0x1ca)};if(!_0x2bef7a)return null;const _0x50a1e7=_0x2bef7a[_0x468c24(0x22f)];if(_0x50a1e7?.['token']&&_0x7037a8[_0x468c24(0x1b8)](typeof _0x50a1e7['token'],'string'))return _0x50a1e7[_0x468c24(0x230)];if(_0x2bef7a['isError']){const _0x53ee05=_0x2bef7a[_0x468c24(0x23a)];throw new Error('Server\x20returned\x20error:\x20'+(_0x53ee05?.[0x0]?.['text']??_0x7037a8['KTNCn']));}const _0x51481b=_0x2bef7a['content'];if(_0x51481b)for(const _0x55e8dc of _0x51481b){if(_0x55e8dc[_0x468c24(0x213)]===_0x468c24(0x1dd)&&_0x55e8dc['text']){try{const _0x4d902b=JSON['parse'](_0x55e8dc[_0x468c24(0x1dd)]);if(_0x7037a8['oScId'](typeof _0x4d902b?.[_0x468c24(0x230)],_0x7037a8['tkLTX']))return _0x4d902b[_0x468c24(0x230)];}catch{}const _0xd19978=_0x55e8dc[_0x468c24(0x1dd)]['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0xd19978)return _0xd19978[0x1];}}return null;}
|
|
1
|
+
const _0x495f8d=_0x4ef2;(function(_0x10e316,_0xe7487e){const _0x739611=_0x4ef2,_0x495b63=_0x10e316();while(!![]){try{const _0x29e0f2=-parseInt(_0x739611(0x1df))/0x1+parseInt(_0x739611(0x21a))/0x2+-parseInt(_0x739611(0x1b5))/0x3+-parseInt(_0x739611(0x1d8))/0x4*(parseInt(_0x739611(0x1f5))/0x5)+-parseInt(_0x739611(0x23f))/0x6+-parseInt(_0x739611(0x1eb))/0x7*(parseInt(_0x739611(0x1d3))/0x8)+-parseInt(_0x739611(0x226))/0x9*(-parseInt(_0x739611(0x207))/0xa);if(_0x29e0f2===_0xe7487e)break;else _0x495b63['push'](_0x495b63['shift']());}catch(_0x3447aa){_0x495b63['push'](_0x495b63['shift']());}}}(_0x353f,0x96b73));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';import{createServer}from'http';import{randomBytes,createHash}from'crypto';import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),_0x495f8d(0x1e0),'mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),'.ranger',_0x495f8d(0x1fa));export async function getMcpAuthOrigin(){const _0xcdfddc=_0x495f8d,_0x3dc4f0={'VbXtN':function(_0x291734,_0x4e40fa,_0x47c696){return _0x291734(_0x4e40fa,_0x47c696);},'xiNdf':_0xcdfddc(0x20a),'bBgnm':function(_0x2d6b0a,_0x576683){return _0x2d6b0a||_0x576683;}};try{const _0x10b900=(await _0x3dc4f0['VbXtN'](readFile,AUTH_ORIGIN_PATH,_0x3dc4f0['xiNdf']))['trim']();return _0x3dc4f0['bBgnm'](_0x10b900,null);}catch{return null;}}export async function mcpBootstrap(){const _0x14356b=_0x495f8d,_0x36342b={'MEBgv':function(_0x34765e){return _0x34765e();},'wOelU':function(_0x151dd1,_0x11db9a){return _0x151dd1(_0x11db9a);},'LfznC':function(_0x519ec5){return _0x519ec5();}},_0xe9ab62=_0x36342b[_0x14356b(0x23e)](getMcpAuthUrl);currentOrigin=_0xe9ab62;const _0x236aa6=process[_0x14356b(0x22c)][_0x14356b(0x1de)]??![];console[_0x14356b(0x1ab)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0xe9ab62+'\x0a');const _0x3cdc71=await _0x36342b[_0x14356b(0x216)](tryUnauthenticated,_0xe9ab62);let _0x3c6b23=null;if(_0x3cdc71===_0x14356b(0x1af))_0x3c6b23='';else{_0x3c6b23=await _0x36342b[_0x14356b(0x1b9)](loadCachedToken);if(!_0x3c6b23){if(!_0x236aa6)throw new Error(_0x14356b(0x1d6)+'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.');_0x3c6b23=await oauthFlow(_0xe9ab62);}}await callGetCliToken(_0xe9ab62,_0x3c6b23);}async function tryUnauthenticated(_0x4518d4){const _0x264b7f=_0x495f8d,_0x51ecab={'IWYJN':function(_0x10fc91,_0x5cec57,_0x55b91d){return _0x10fc91(_0x5cec57,_0x55b91d);},'UMyNW':_0x264b7f(0x24d),'LMYHU':_0x264b7f(0x1d9),'WuFGR':'initialize','BoOIk':_0x264b7f(0x245),'EfJWB':_0x264b7f(0x1c2),'WdvKB':'1.0.0','XsFjZ':function(_0x136b19,_0x5080ef){return _0x136b19===_0x5080ef;}},_0x361634=await _0x51ecab[_0x264b7f(0x1d1)](fetch,_0x4518d4,{'method':_0x51ecab[_0x264b7f(0x248)],'headers':{'Content-Type':_0x264b7f(0x204),'Accept':_0x264b7f(0x1b2)},'body':JSON[_0x264b7f(0x213)]({'jsonrpc':_0x51ecab[_0x264b7f(0x200)],'id':0x1,'method':_0x51ecab[_0x264b7f(0x23b)],'params':{'protocolVersion':_0x51ecab[_0x264b7f(0x1d7)],'capabilities':{},'clientInfo':{'name':_0x51ecab['EfJWB'],'version':_0x51ecab[_0x264b7f(0x217)]}}})});if(_0x361634['ok'])return await _0x361634[_0x264b7f(0x1cd)](),_0x264b7f(0x1af);if(_0x51ecab['XsFjZ'](_0x361634[_0x264b7f(0x249)],0x191))return await _0x361634['text'](),_0x264b7f(0x1b1);const _0x25505f=await _0x361634[_0x264b7f(0x1cd)]();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x361634['status']+':\x20'+_0x25505f);}class OAuthTimeoutError extends Error{constructor(_0x812fd8){const _0x2409d4={'odqxI':'OAuthTimeoutError'};super(_0x812fd8),this['name']=_0x2409d4['odqxI'];}}function _0x353f(){const _0x2e246c=['LMYHU','vPVBe','text/html','DifpM','application/json','write','get','10HnQNQE','VPydb','length','utf-8','notifications/initialized','Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20','OAuth\x20error:\x20','authorization_code','code','ysuly','digest','origin','stringify','iscpn','Exchanging\x20authorization\x20code...','wOelU','WdvKB','VcaeA','error','291190JPQgqr','toString','Authorization','KRXZv','code_challenge','xdg-open','BMitF','twmyY','</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>','initialize','zbXBA','jIdfr','34759359yqatlJ','<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','CyiWz','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','http://localhost:','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','stdout','base64url','Ranger\x20CLI','expires_in','slice','RbJNn','set','jUhAu','NOaEo','code_challenge_method','Geeyo','close','win32','mMWts','/.well-known/oauth-authorization-server','WuFGR','token','type','MEBgv','911280auOAeQ','KDyWM','refresh.txt','/callback','content','client_secret','2025-03-26','XHcKc','Unknown\x20error','UMyNW','status','clientId','trim','structuredContent','POST','clientSecret','aomTe','log','eszfA','accessToken','isError','proxied','vgepr','needs-oauth','application/json,\x20text/event-stream','searchParams','ntuZK','2979132KbgVXU','cKfqN','hJUWP','okDNx','LfznC','vQmIo','MwqzS','\x20done','pathname','fOYDa','SCWtS','writeHead','then','ranger-cli','authorization_servers','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','hrGRJ','redirect_uri','json','startsWith','sha256','registration_endpoint','data:','Zbfso','text','update','ethdY','Discovering\x20authorization\x20server...','IWYJN','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','4624SmZECq','message','kFCMv','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','BoOIk','8GVBDzp','2.0','S256','XgtgH','HqlFy','ALkoi','isTTY','42309jyeGlF','.ranger','nukXd','darwin','replace','OEDKK','nPsOS','refresh_token','state','UKAdU','resource','open','14798uqYkPI','mUSCc','expiresAt','\x0aOpening\x20browser\x20for\x20authentication...','parse','client_id','split','ediDr','zhAsu','access_token','2453225ojFPzf','SWMvl','authorization_endpoint','end','GZenu','auth-origin.txt','platform','cOviZ','string','text/event-stream','cieJJ'];_0x353f=function(){return _0x2e246c;};return _0x353f();}async function oauthFlow(_0x5e8b20){const _0x10d1a7=_0x495f8d,_0x3074c5={'cKfqN':function(_0x1ddf0f,_0x32360f){return _0x1ddf0f(_0x32360f);},'hJUWP':function(_0x3f70d8,_0x504af2){return _0x3f70d8 instanceof _0x504af2;},'okDNx':function(_0x3b5d3a){return _0x3b5d3a();},'zQkOO':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a'};try{return await _0x3074c5[_0x10d1a7(0x1b6)](oauthFlowAttempt,_0x5e8b20);}catch(_0x1af280){if(_0x3074c5[_0x10d1a7(0x1b7)](_0x1af280,OAuthTimeoutError)&&await _0x3074c5[_0x10d1a7(0x1b8)](loadCachedClient))return console[_0x10d1a7(0x1ab)](_0x3074c5['zQkOO']),await clearCachedClient(),await _0x3074c5[_0x10d1a7(0x1b6)](oauthFlowAttempt,_0x5e8b20);throw _0x1af280;}}async function oauthFlowAttempt(_0x52393d){const _0x384025=_0x495f8d,_0x177a1d={'tNXGY':function(_0x1a86c6,_0x25e9fd){return _0x1a86c6(_0x25e9fd);},'ysuly':'Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','CyiWz':function(_0x57268d,_0x5e9e67,_0x3b7763){return _0x57268d(_0x5e9e67,_0x3b7763);},'GAZmJ':_0x384025(0x22e),'Geeyo':_0x384025(0x20e),'nxxHP':_0x384025(0x1c4),'vQmIo':function(_0x1658ae,_0x102cf4){return _0x1658ae(_0x102cf4);},'UcxmF':_0x384025(0x1c9),'mMWts':'hex','NHurO':_0x384025(0x1c6),'DifpM':_0x384025(0x21e),'tHMXw':_0x384025(0x235),'jIdfr':_0x384025(0x1ee),'RswBA':_0x384025(0x215),'zhAsu':_0x384025(0x244),'VieOd':'resource','nPsOS':function(_0x298767,_0x1ac3c9,_0x27b550,_0x15534b){return _0x298767(_0x1ac3c9,_0x27b550,_0x15534b);}},_0xbf3963=_0x52393d[_0x384025(0x1e3)](/\/mcp$/,'');process[_0x384025(0x22c)][_0x384025(0x205)](_0x384025(0x1d0));const _0x30e21c=await _0x177a1d['tNXGY'](fetch,_0xbf3963+'/.well-known/oauth-protected-resource');if(!_0x30e21c['ok'])throw new Error(_0x177a1d[_0x384025(0x210)]);const _0x47eb23=await _0x30e21c[_0x384025(0x1c7)](),_0x467d27=_0x47eb23[_0x384025(0x1c3)]?.[0x0];if(!_0x467d27)throw new Error(_0x384025(0x22b));console[_0x384025(0x1ab)]('\x20'+_0x467d27);const _0x2b84ae=await fetchAuthServerMetadata(_0x467d27);let _0x44f1aa,_0x3ac87c;const _0x304249=await loadCachedClient();if(_0x304249)_0x44f1aa=_0x304249['clientId'],_0x3ac87c=_0x304249[_0x384025(0x24e)];else{if(_0x2b84ae[_0x384025(0x1ca)]){process['stdout'][_0x384025(0x205)]('Registering\x20OAuth\x20client...');const _0x50ca7d=await _0x177a1d['CyiWz'](fetch,_0x2b84ae['registration_endpoint'],{'method':_0x384025(0x24d),'headers':{'Content-Type':_0x384025(0x204)},'body':JSON['stringify']({'client_name':_0x177a1d['GAZmJ'],'redirect_uris':['http://localhost:'+CALLBACK_PORT+'/callback'],'grant_types':[_0x177a1d['Geeyo'],_0x384025(0x1e6)],'response_types':['code'],'token_endpoint_auth_method':'none'})});if(!_0x50ca7d['ok']){const _0x52d0f0=await _0x50ca7d[_0x384025(0x1cd)]();throw new Error('Client\x20registration\x20failed:\x20'+_0x52d0f0);}const _0x27d84a=await _0x50ca7d[_0x384025(0x1c7)]();_0x44f1aa=_0x27d84a[_0x384025(0x1f0)],_0x3ac87c=_0x27d84a['client_secret'],await saveCachedClient(_0x44f1aa,_0x3ac87c),console['log'](_0x384025(0x1bc));}else throw new Error(_0x177a1d['nxxHP']);}const _0x1fada9=randomBytes(0x20)['toString'](_0x384025(0x22d)),_0x5aaab5=_0x177a1d['vQmIo'](createHash,_0x177a1d['UcxmF'])[_0x384025(0x1ce)](_0x1fada9)[_0x384025(0x211)](_0x384025(0x22d)),_0x23511=_0x177a1d['vQmIo'](randomBytes,0x10)[_0x384025(0x21b)](_0x177a1d[_0x384025(0x239)]),_0xc83f2c=new URL(_0x2b84ae[_0x384025(0x1f7)]);_0xc83f2c['searchParams'][_0x384025(0x232)]('response_type',_0x384025(0x20f)),_0xc83f2c[_0x384025(0x1b3)]['set']('client_id',_0x44f1aa),_0xc83f2c['searchParams'][_0x384025(0x232)](_0x177a1d['NHurO'],_0x384025(0x22a)+CALLBACK_PORT+_0x384025(0x242)),_0xc83f2c[_0x384025(0x1b3)][_0x384025(0x232)](_0x177a1d[_0x384025(0x203)],_0x5aaab5),_0xc83f2c['searchParams']['set'](_0x177a1d['tHMXw'],_0x384025(0x1da)),_0xc83f2c['searchParams']['set']('state',_0x23511);_0x47eb23[_0x384025(0x1e9)]&&_0xc83f2c['searchParams'][_0x384025(0x232)]('resource',_0x47eb23[_0x384025(0x1e9)]);console['log'](_0x177a1d[_0x384025(0x225)]),console[_0x384025(0x1ab)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0xc83f2c[_0x384025(0x21b)]()+'\x0a'),await openBrowser(_0xc83f2c[_0x384025(0x21b)]());const _0x192cb2=await _0x177a1d[_0x384025(0x1ba)](waitForCallback,_0x23511);process[_0x384025(0x22c)][_0x384025(0x205)](_0x177a1d['RswBA']);const _0x4200a1=new URLSearchParams({'grant_type':_0x177a1d[_0x384025(0x236)],'code':_0x192cb2,'redirect_uri':'http://localhost:'+CALLBACK_PORT+_0x384025(0x242),'client_id':_0x44f1aa,'code_verifier':_0x1fada9});_0x3ac87c&&_0x4200a1['set'](_0x177a1d[_0x384025(0x1f3)],_0x3ac87c);_0x47eb23['resource']&&_0x4200a1['set'](_0x177a1d['VieOd'],_0x47eb23['resource']);const _0x508a2b=await _0x177a1d[_0x384025(0x228)](fetch,_0x2b84ae['token_endpoint'],{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':_0x4200a1});if(!_0x508a2b['ok']){const _0x1f00b7=await _0x508a2b[_0x384025(0x1cd)]();throw new Error('Token\x20exchange\x20failed:\x20'+_0x1f00b7);}const _0x316747=await _0x508a2b['json']();return console['log'](_0x384025(0x1bc)),await _0x177a1d[_0x384025(0x1e5)](saveCachedToken,_0x316747[_0x384025(0x1f4)],_0x316747['refresh_token'],_0x316747[_0x384025(0x22f)]),_0x316747['access_token'];}async function callGetCliToken(_0x26fd73,_0x4d774c){const _0xaf3bc=_0x495f8d,_0x50ff67={'UKAdU':_0xaf3bc(0x24d),'SWMvl':function(_0x46a6cc,_0x42ed1f){return _0x46a6cc(_0x42ed1f);},'ediDr':'application/json','xgEeC':_0xaf3bc(0x1b2),'rZoKT':function(_0x4ed959,_0x92fa58){return _0x4ed959(_0x92fa58);},'uVndd':_0xaf3bc(0x245),'ntuZK':'ranger-cli','UZBTt':function(_0x5dc148,_0x54995c,_0x2154b4){return _0x5dc148(_0x54995c,_0x2154b4);},'BMitF':'2.0','VPydb':_0xaf3bc(0x20b),'ethdY':'Requesting\x20CLI\x20token...','uJNWY':function(_0x5d87c4,_0x24e93d){return _0x5d87c4(_0x24e93d);},'KRXZv':'tools/call','RbJNn':'\x20done','nukXd':'\x0aUnexpected\x20response\x20structure:','mUSCc':function(_0x24ed18,_0x583ede,_0x1620f8){return _0x24ed18(_0x583ede,_0x1620f8);},'FKRgV':function(_0x53ace2){return _0x53ace2();},'ALkoi':'.ranger','VcaeA':function(_0x433811,_0x3e9f07,_0x34b0a7){return _0x433811(_0x3e9f07,_0x34b0a7);},'vSRxT':_0xaf3bc(0x241),'OEDKK':function(_0x13b11d,_0x47695d,_0x5e035e,_0x1ad044){return _0x13b11d(_0x47695d,_0x5e035e,_0x1ad044);}},_0x2ecf41={'Content-Type':_0x50ff67[_0xaf3bc(0x1f2)],'Accept':_0x50ff67['xgEeC']};_0x4d774c&&(_0x2ecf41[_0xaf3bc(0x21c)]='Bearer\x20'+_0x4d774c);const _0x321dfc=async _0x36e250=>{const _0x18857a=_0xaf3bc,_0x22fc91=await fetch(_0x26fd73,{'method':_0x50ff67['UKAdU'],'headers':_0x2ecf41,'body':JSON[_0x18857a(0x213)](_0x36e250)});if(!_0x22fc91['ok']){const _0x20b930=await _0x22fc91['text']();throw new Error('HTTP\x20'+_0x22fc91[_0x18857a(0x249)]+':\x20'+_0x20b930);}return _0x50ff67['SWMvl'](parseResponse,_0x22fc91);};process[_0xaf3bc(0x22c)][_0xaf3bc(0x205)]('Initializing\x20MCP\x20session...');const _0x1189f0=await _0x50ff67['rZoKT'](_0x321dfc,{'jsonrpc':_0xaf3bc(0x1d9),'id':0x1,'method':_0xaf3bc(0x223),'params':{'protocolVersion':_0x50ff67['uVndd'],'capabilities':{},'clientInfo':{'name':_0x50ff67[_0xaf3bc(0x1b4)],'version':'1.0.0'}}});if(_0x1189f0[_0xaf3bc(0x219)])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x1189f0[_0xaf3bc(0x219)]['message']??JSON['stringify'](_0x1189f0[_0xaf3bc(0x219)])));console[_0xaf3bc(0x1ab)](_0xaf3bc(0x1bc)),await _0x50ff67['UZBTt'](fetch,_0x26fd73,{'method':_0x50ff67[_0xaf3bc(0x1e8)],'headers':_0x2ecf41,'body':JSON[_0xaf3bc(0x213)]({'jsonrpc':_0x50ff67[_0xaf3bc(0x220)],'method':_0x50ff67[_0xaf3bc(0x208)]})})[_0xaf3bc(0x1c1)](_0x1671dc=>_0x1671dc['text']()),process[_0xaf3bc(0x22c)][_0xaf3bc(0x205)](_0x50ff67[_0xaf3bc(0x1cf)]);const _0xfcbc0c=await _0x50ff67['uJNWY'](_0x321dfc,{'jsonrpc':_0xaf3bc(0x1d9),'id':0x2,'method':_0x50ff67[_0xaf3bc(0x21d)],'params':{'name':'get_cli_token','arguments':{}}});if(_0xfcbc0c['error'])throw new Error('get_cli_token\x20failed:\x20'+(_0xfcbc0c[_0xaf3bc(0x219)][_0xaf3bc(0x1d4)]??JSON['stringify'](_0xfcbc0c['error'])));console['log'](_0x50ff67[_0xaf3bc(0x231)]);const _0x53eefa=_0x50ff67[_0xaf3bc(0x1f6)](extractToken,_0xfcbc0c['result']);if(!_0x53eefa){console['error'](_0x50ff67[_0xaf3bc(0x1e1)]),console[_0xaf3bc(0x219)](JSON['stringify'](_0xfcbc0c['result'],null,0x2));throw new Error('Could\x20not\x20extract\x20token\x20from\x20MCP\x20response');}const _0x30561a=_0x50ff67[_0xaf3bc(0x1ec)](join,_0x50ff67['FKRgV'](homedir),_0x50ff67[_0xaf3bc(0x1dd)]),_0x1f90b3=_0x50ff67[_0xaf3bc(0x218)](join,_0x30561a,_0x50ff67['vSRxT']);await mkdir(_0x30561a,{'recursive':!![]}),await _0x50ff67[_0xaf3bc(0x1e4)](writeFile,_0x1f90b3,_0x53eefa,{'mode':0x180}),await _0x50ff67[_0xaf3bc(0x1e4)](writeFile,_0x50ff67[_0xaf3bc(0x218)](join,_0x30561a,'auth-origin.txt'),_0x26fd73,{'mode':0x180}),console['log']('\x0aToken\x20written\x20to\x20'+_0x1f90b3),console[_0xaf3bc(0x1ab)](_0xaf3bc(0x229));}async function fetchAuthServerMetadata(_0x1ea59d){const _0x29e1cc=_0x495f8d,_0x30fb39=_0x1ea59d+_0x29e1cc(0x23a),_0x4dc8b5=await fetch(_0x30fb39);if(!_0x4dc8b5['ok'])throw new Error(_0x29e1cc(0x20c)+_0x30fb39+':\x20'+_0x4dc8b5[_0x29e1cc(0x249)]);return _0x4dc8b5[_0x29e1cc(0x1c7)]();}function waitForCallback(_0x9a8c6f){const _0x2da5d4=_0x495f8d,_0x287d3f={'OljZK':function(_0x4db4e8){return _0x4db4e8();},'cOviZ':_0x2da5d4(0x219),'twmyY':_0x2da5d4(0x202),'kzyrY':'127.0.0.1'};return new Promise((_0x5ce257,_0x14a696)=>{const _0xd891f5=_0x2da5d4,_0x599915={'HqlFy':function(_0x304a6b){return _0x287d3f['OljZK'](_0x304a6b);},'KDyWM':'Not\x20found','cCSRL':_0x287d3f[_0xd891f5(0x1fc)],'fOYDa':_0x287d3f[_0xd891f5(0x221)],'GZenu':function(_0x3073bd){return _0x3073bd();},'mzHPI':'<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','XgtgH':function(_0x44efa7,_0x3e8c74){return _0x44efa7(_0x3e8c74);},'NOaEo':function(_0x53f994,_0x3efe63){return _0x53f994(_0x3efe63);}},_0x520cca=()=>{const _0xd0e5ab=_0xd891f5;_0xd18439['closeAllConnections'](),_0xd18439[_0xd0e5ab(0x237)]();},_0x48cfb7=setTimeout(()=>{const _0x1b1a93=_0xd891f5;_0x599915[_0x1b1a93(0x1dc)](_0x520cca),_0x14a696(new OAuthTimeoutError(_0x1b1a93(0x1d2)));},0x1d4c0),_0xd18439=createServer((_0x89dc8b,_0x35c1e3)=>{const _0x5929a3=_0xd891f5,_0x252a2c=new URL(_0x89dc8b['url']??'/','http://localhost:'+CALLBACK_PORT);if(_0x252a2c[_0x5929a3(0x1bd)]!=='/callback'){_0x35c1e3['writeHead'](0x194),_0x35c1e3['end'](_0x599915[_0x5929a3(0x240)]);return;}const _0xb2cf8f=_0x252a2c[_0x5929a3(0x1b3)]['get'](_0x5929a3(0x20f)),_0x511b4c=_0x252a2c[_0x5929a3(0x1b3)]['get'](_0x5929a3(0x1e7)),_0x455cc5=_0x252a2c[_0x5929a3(0x1b3)]['get'](_0x599915['cCSRL']);if(_0x455cc5){const _0x39cd8b=_0x252a2c[_0x5929a3(0x1b3)][_0x5929a3(0x206)]('error_description')??_0x455cc5;_0x35c1e3[_0x5929a3(0x1c0)](0xc8,{'Content-Type':_0x599915['fOYDa']}),_0x35c1e3[_0x5929a3(0x1f8)]('<html><body><h2>Authentication\x20failed</h2><p>'+_0x39cd8b+_0x5929a3(0x222)),clearTimeout(_0x48cfb7),_0x599915[_0x5929a3(0x1f9)](_0x520cca),_0x14a696(new Error(_0x5929a3(0x20d)+_0x39cd8b));return;}if(!_0xb2cf8f||_0x511b4c!==_0x9a8c6f){_0x35c1e3[_0x5929a3(0x1c0)](0x190,{'Content-Type':_0x599915['fOYDa']}),_0x35c1e3[_0x5929a3(0x1f8)](_0x5929a3(0x227));return;}_0x35c1e3[_0x5929a3(0x1c0)](0xc8,{'Content-Type':_0x599915[_0x5929a3(0x1be)]}),_0x35c1e3['end'](_0x599915['mzHPI']),_0x599915[_0x5929a3(0x1db)](clearTimeout,_0x48cfb7),_0x520cca(),_0x599915[_0x5929a3(0x234)](_0x5ce257,_0xb2cf8f);});_0xd18439['listen'](CALLBACK_PORT,_0x287d3f['kzyrY']);});}async function openBrowser(_0x514ebc){const _0x207bb9=_0x495f8d,_0x1b98a4={'iscpn':_0x207bb9(0x1e2),'jUhAu':_0x207bb9(0x1ea),'jqPnO':_0x207bb9(0x238),'cFayV':'start','pXXqq':_0x207bb9(0x21f),'zbXBA':function(_0x5eb968,_0x5dac45){return _0x5eb968(_0x5dac45);}},_0x111788=process[_0x207bb9(0x1fb)]===_0x1b98a4[_0x207bb9(0x214)]?_0x1b98a4[_0x207bb9(0x233)]:process[_0x207bb9(0x1fb)]===_0x1b98a4['jqPnO']?_0x1b98a4['cFayV']:_0x1b98a4['pXXqq'];_0x1b98a4[_0x207bb9(0x224)](exec,_0x111788+'\x20\x22'+_0x514ebc+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x2fd163=_0x495f8d,_0x39a5fa={'vPVBe':function(_0x5aa45b,_0x4e6822){return _0x5aa45b!==_0x4e6822;},'Gxtlg':function(_0x106c49,_0x2edcdd){return _0x106c49>_0x2edcdd;}};try{const _0x54e4a5=JSON['parse'](await readFile(TOKEN_CACHE_PATH,'utf-8'));if(_0x54e4a5['origin']&&_0x39a5fa[_0x2fd163(0x201)](_0x54e4a5[_0x2fd163(0x212)],currentOrigin))return null;if(_0x54e4a5[_0x2fd163(0x1ed)]&&_0x39a5fa['Gxtlg'](Date['now'](),_0x54e4a5['expiresAt']))return null;return _0x54e4a5[_0x2fd163(0x1ad)]??null;}catch{return null;}}async function saveCachedToken(_0x25c1f,_0x3e3374,_0xabfeb9){const _0x12aa62=_0x495f8d,_0x6d0a02={'hrGRJ':function(_0x57d27a,_0x58da11,_0x2c66c9){return _0x57d27a(_0x58da11,_0x2c66c9);},'JLiBS':function(_0x52f633,_0x322c70,_0x20f98d,_0x26be50){return _0x52f633(_0x322c70,_0x20f98d,_0x26be50);}},_0x17b9e6=await loadCachedData(),_0x5e354c={..._0x17b9e6,'origin':currentOrigin,'accessToken':_0x25c1f,'refreshToken':_0x3e3374??_0x17b9e6?.['refreshToken'],'expiresAt':_0xabfeb9?Date['now']()+_0xabfeb9*0x3e8:undefined};await _0x6d0a02[_0x12aa62(0x1c5)](mkdir,join(homedir(),'.ranger'),{'recursive':!![]}),await _0x6d0a02['JLiBS'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x5e354c),{'mode':0x180});}async function loadCachedClient(){const _0xf34d33=_0x495f8d,_0x234bdf={'kFCMv':function(_0x3db8fc,_0x29eca3){return _0x3db8fc!==_0x29eca3;}},_0x5b2043=await loadCachedData();if(_0x5b2043?.[_0xf34d33(0x212)]&&_0x234bdf[_0xf34d33(0x1d5)](_0x5b2043['origin'],currentOrigin))return null;return _0x5b2043?.['clientId']?{'clientId':_0x5b2043[_0xf34d33(0x24a)],'clientSecret':_0x5b2043['clientSecret']}:null;}async function clearCachedClient(){const _0x5267d4=_0x495f8d,_0x5e7d40={'eszfA':function(_0x14bb85,_0x155f1d,_0xc09650,_0x558977){return _0x14bb85(_0x155f1d,_0xc09650,_0x558977);}},_0x4aeb59=await loadCachedData();if(!_0x4aeb59)return;const {clientId:_0x5ccb9b,clientSecret:_0x1ddd62,..._0x162bab}=_0x4aeb59;await _0x5e7d40[_0x5267d4(0x1ac)](writeFile,TOKEN_CACHE_PATH,JSON[_0x5267d4(0x213)](_0x162bab),{'mode':0x180});}async function saveCachedClient(_0x1365b4,_0x42ad49){const _0x55d85e=_0x495f8d,_0x274215={'aomTe':function(_0x49367f){return _0x49367f();},'Zbfso':function(_0x42c91f,_0x28f61e,_0x1ae0e0){return _0x42c91f(_0x28f61e,_0x1ae0e0);},'naUzB':function(_0x229e90){return _0x229e90();},'cieJJ':'.ranger','XHcKc':function(_0x47c393,_0x3125ca,_0x34a57b,_0xd90f63){return _0x47c393(_0x3125ca,_0x34a57b,_0xd90f63);}},_0x37c54d=await _0x274215[_0x55d85e(0x24f)](loadCachedData),_0x5e51ba={..._0x37c54d,'origin':currentOrigin,'accessToken':_0x37c54d?.[_0x55d85e(0x1ad)]??'','clientId':_0x1365b4,'clientSecret':_0x42ad49};await _0x274215[_0x55d85e(0x1cc)](mkdir,join(_0x274215['naUzB'](homedir),_0x274215[_0x55d85e(0x1ff)]),{'recursive':!![]}),await _0x274215[_0x55d85e(0x246)](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x5e51ba),{'mode':0x180});}function _0x4ef2(_0x127b6f,_0x28af85){_0x127b6f=_0x127b6f-0x1ab;const _0x353fc9=_0x353f();let _0x4ef273=_0x353fc9[_0x127b6f];return _0x4ef273;}async function loadCachedData(){const _0x440905=_0x495f8d,_0x3422c3={'BWAtC':_0x440905(0x20a)};try{return JSON[_0x440905(0x1ef)](await readFile(TOKEN_CACHE_PATH,_0x3422c3['BWAtC']));}catch{return null;}}async function parseResponse(_0x210757){const _0x155efe=_0x495f8d,_0x8f9ef0={'nCsED':_0x155efe(0x1fe),'vgepr':function(_0xecbb6e,_0x3bc19c){return _0xecbb6e!==_0x3bc19c;},'MwqzS':'No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream'},_0xdbc8=_0x210757['headers']['get']('content-type')??'';if(_0xdbc8['includes'](_0x8f9ef0['nCsED'])){const _0x1477e7=await _0x210757['text']();for(const _0x489f43 of _0x1477e7[_0x155efe(0x1f1)]('\x0a')){const _0x5362de=_0x489f43[_0x155efe(0x24b)]();if(_0x5362de[_0x155efe(0x1c8)](_0x155efe(0x1cb))){const _0x3ac38f=_0x5362de[_0x155efe(0x230)]('data:'[_0x155efe(0x209)])[_0x155efe(0x24b)]();if(!_0x3ac38f)continue;try{const _0x176bc5=JSON['parse'](_0x3ac38f);if(_0x8f9ef0[_0x155efe(0x1b0)](_0x176bc5['id'],undefined)||_0x176bc5['error'])return _0x176bc5;}catch{}}}throw new Error(_0x8f9ef0[_0x155efe(0x1bb)]);}return _0x210757['json']();}function extractToken(_0x5d86f8){const _0x4e9fca=_0x495f8d,_0x4b45cc={'SCWtS':function(_0x2fd586,_0x4aa6ba){return _0x2fd586===_0x4aa6ba;},'FStGY':'string','OVEDR':_0x4e9fca(0x247)};if(!_0x5d86f8)return null;const _0x1579da=_0x5d86f8[_0x4e9fca(0x24c)];if(_0x1579da?.[_0x4e9fca(0x23c)]&&_0x4b45cc['SCWtS'](typeof _0x1579da['token'],_0x4b45cc['FStGY']))return _0x1579da['token'];if(_0x5d86f8[_0x4e9fca(0x1ae)]){const _0x2768b=_0x5d86f8[_0x4e9fca(0x243)];throw new Error('Server\x20returned\x20error:\x20'+(_0x2768b?.[0x0]?.['text']??_0x4b45cc['OVEDR']));}const _0x38cf70=_0x5d86f8['content'];if(_0x38cf70)for(const _0x1509b7 of _0x38cf70){if(_0x4b45cc[_0x4e9fca(0x1bf)](_0x1509b7[_0x4e9fca(0x23d)],_0x4e9fca(0x1cd))&&_0x1509b7[_0x4e9fca(0x1cd)]){try{const _0x382d54=JSON[_0x4e9fca(0x1ef)](_0x1509b7[_0x4e9fca(0x1cd)]);if(typeof _0x382d54?.['token']===_0x4e9fca(0x1fd))return _0x382d54[_0x4e9fca(0x23c)];}catch{}const _0x5f589f=_0x1509b7['text']['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x5f589f)return _0x5f589f[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x2db5(){var _0x52029a=['1282764SUrWQf','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','1680777Lsccdl','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','5180450xcFxRq','snjgJ','266024OcZyZU','2037MRILBd','ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a','812995tgLjaF','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','exit','40hOliAc','79910GmiHNP','error','fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.','iyIFd','1828kYLTZq','1530JmrRlT'];_0x2db5=function(){return _0x52029a;};return _0x2db5();}(function(_0x567d2b,_0x4684db){var _0x3a6e87=_0x5b47,_0x1125c2=_0x567d2b();while(!![]){try{var _0x21607b=-parseInt(_0x3a6e87(0x15a))/0x1+-parseInt(_0x3a6e87(0x157))/0x2+parseInt(_0x3a6e87(0x158))/0x3*(parseInt(_0x3a6e87(0x162))/0x4)+-parseInt(_0x3a6e87(0x155))/0x5+-parseInt(_0x3a6e87(0x164))/0x6+-parseInt(_0x3a6e87(0x166))/0x7*(-parseInt(_0x3a6e87(0x15d))/0x8)+parseInt(_0x3a6e87(0x163))/0x9*(parseInt(_0x3a6e87(0x15e))/0xa);if(_0x21607b===_0x4684db)break;else _0x1125c2['push'](_0x1125c2['shift']());}catch(_0x2072ed){_0x1125c2['push'](_0x1125c2['shift']());}}}(_0x2db5,0xa469d));function _0x5b47(_0x1411d1,_0x4d6888){_0x1411d1=_0x1411d1-0x154;var _0x2db574=_0x2db5();var _0x5b4703=_0x2db574[_0x1411d1];return _0x5b4703;}export async function migrateProfile(_0x142c58,_0x2adb1a){var _0x45260d=_0x5b47,_0x4124b0={'iyIFd':function(_0x1fb3b6,_0x40e211){return _0x1fb3b6+_0x40e211;},'snjgJ':function(_0x367f09,_0x391808){return _0x367f09+_0x391808;},'nPEgo':function(_0x5e44d0,_0x4810e9){return _0x5e44d0+_0x4810e9;},'kodiW':_0x45260d(0x159),'bXVNZ':_0x45260d(0x154)};console[_0x45260d(0x15f)](_0x4124b0[_0x45260d(0x161)](_0x4124b0[_0x45260d(0x161)](_0x4124b0['snjgJ'](_0x4124b0['nPEgo'](_0x4124b0[_0x45260d(0x156)](_0x4124b0[_0x45260d(0x161)](_0x4124b0['kodiW']+'\x0a'+_0x45260d(0x165)+_0x45260d(0x15b),'\x0a'),_0x45260d(0x167)),_0x4124b0['bXVNZ']),'\x0a'),'Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a'),_0x45260d(0x160))),process[_0x45260d(0x15c)](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
(function(_0x574f29,_0x43f501){const _0xc8429f=_0x23e7,_0xbc61bf=_0x574f29();while(!![]){try{const _0x2bd60c=parseInt(_0xc8429f(0x15d))/0x1+-parseInt(_0xc8429f(0x181))/0x2+-parseInt(_0xc8429f(0x182))/0x3+parseInt(_0xc8429f(0x185))/0x4*(-parseInt(_0xc8429f(0x160))/0x5)+-parseInt(_0xc8429f(0x15b))/0x6*(-parseInt(_0xc8429f(0x178))/0x7)+-parseInt(_0xc8429f(0x17a))/0x8+parseInt(_0xc8429f(0x186))/0x9*(parseInt(_0xc8429f(0x168))/0xa);if(_0x2bd60c===_0x43f501)break;else _0xbc61bf['push'](_0xbc61bf['shift']());}catch(_0x4be85d){_0xbc61bf['push'](_0xbc61bf['shift']());}}}(_0x50c2,0xd9f7a));import{join}from'path';function _0x50c2(){const _0x413b10=['install','4678758aVjcAg','SKILL.md','8700840kejbRS','user','trailhead','plugin','qpmFy','ujIJP','yZpQf','2762282xWcZnF','1560180EvEKTx','error','add','4562940EeTPsq','2934arLUzR','project','6ktnJRT','\x0aYou\x20can\x20install\x20manually\x20with:','367287aoinBi','CzkFq','iIhQb','5kqipJo','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','ranger','\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead','HwhoH','enable','success','YmmOF','122290jTeXRT','✓\x20Claude\x20Code\x20plugin\x20already\x20installed','prompt','log','Amfts','ranger@trailhead','\x0a📦\x20Claude\x20Code\x20Plugin\x0a','cvoAy','--scope','Where\x20should\x20the\x20plugin\x20be\x20installed?','ZGPJw','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','VGQjA','confirm','KzwUx'];_0x50c2=function(){return _0x413b10;};return _0x50c2();}import{existsSync}from'fs';function _0x23e7(_0x6448c8,_0x57ef85){_0x6448c8=_0x6448c8-0x15b;const _0x50c221=_0x50c2();let _0x23e76c=_0x50c221[_0x6448c8];return _0x23e76c;}import _0x1406a3 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(_0x1f3db0){const _0x55ac91=_0x23e7,_0x55c572={'VGQjA':function(_0x48587f,_0x4f1b93){return _0x48587f(_0x4f1b93);},'TdJEL':'.claude','PSTdT':'pluginScope','qpmFy':_0x55ac91(0x171),'PcIAi':_0x55ac91(0x17b),'ujIJP':_0x55ac91(0x187),'Otbxr':_0x55ac91(0x17c),'wtDKy':'ranger-testing/trailhead','ZqQAG':'❌\x20Failed\x20to\x20add\x20marketplace:','wbQlo':_0x55ac91(0x15c),'wfqGP':_0x55ac91(0x163),'NMpDd':_0x55ac91(0x17d),'NkGwx':_0x55ac91(0x177),'JsWll':_0x55ac91(0x16d),'YmmOF':_0x55ac91(0x170),'KzwUx':_0x55ac91(0x161),'yZpQf':_0x55ac91(0x165),'cvoAy':function(_0x466415,_0x2cf0ae){return _0x466415===_0x2cf0ae;},'VGgbC':'already\x20enabled','FTYyV':'✓\x20Claude\x20Code\x20plugin\x20enabled'},_0x186367=await _0x55c572[_0x55ac91(0x174)](isPluginInstalled,'ranger@trailhead');if(_0x186367)return console['log'](_0x55ac91(0x169)),![];const _0xaeceef=existsSync(join(getProjectRoot(),_0x55c572['TdJEL']));let _0x5b1682;if(_0x1f3db0)_0x5b1682=_0x1f3db0;else{if(_0xaeceef)_0x5b1682=_0x55ac91(0x187);else{console['log'](_0x55ac91(0x16e));const _0x8db4d0=await _0x1406a3[_0x55ac91(0x16a)]([{'type':'list','name':_0x55c572['PSTdT'],'message':_0x55c572[_0x55ac91(0x17e)],'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':_0x55c572['PcIAi']},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x55c572[_0x55ac91(0x17f)]}],'default':_0x55ac91(0x17b)}]);_0x5b1682=_0x8db4d0['pluginScope'];}}console[_0x55ac91(0x16b)](_0x55ac91(0x173)+_0x5b1682+'\x20level)...\x0a');const _0x44e549=await isMarketplaceAdded(_0x55c572['Otbxr']);let _0x4341b6=_0x44e549;if(_0x44e549)console[_0x55ac91(0x16b)]('✓\x20Marketplace\x20already\x20added');else{const _0x2f135f=await _0x55c572['VGQjA'](runClaudeCommand,[_0x55ac91(0x17d),'marketplace',_0x55ac91(0x184),_0x55c572['wtDKy']]);!_0x2f135f['success']?(console['error'](_0x55c572['ZqQAG'],_0x2f135f[_0x55ac91(0x183)]),console[_0x55ac91(0x16b)](_0x55c572['wbQlo']),console[_0x55ac91(0x16b)](_0x55c572['wfqGP']),console['log']('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x5b1682)):_0x4341b6=!![];}if(_0x4341b6){const _0x56c2ce=await runClaudeCommand([_0x55c572['NMpDd'],_0x55c572['NkGwx'],_0x55c572['JsWll'],_0x55c572[_0x55ac91(0x167)],_0x5b1682],{'cwd':_0x5b1682===_0x55c572[_0x55ac91(0x17f)]?getProjectRoot():undefined});if(!_0x56c2ce[_0x55ac91(0x166)])console['error']('❌\x20Failed\x20to\x20install\x20plugin:',_0x56c2ce['error']),console[_0x55ac91(0x16b)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console['log']('\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20'+_0x5b1682);else{console['log'](_0x55c572[_0x55ac91(0x176)]);const _0x2953ea=[_0x55c572['NMpDd'],_0x55c572[_0x55ac91(0x180)],_0x55c572['JsWll']];_0x55c572[_0x55ac91(0x16f)](_0x5b1682,_0x55ac91(0x187))&&_0x2953ea['push'](_0x55c572[_0x55ac91(0x167)],_0x55c572['ujIJP']);const _0x1f7a01=await runClaudeCommand(_0x2953ea,{'captureOutput':!![],'cwd':_0x5b1682===_0x55ac91(0x187)?getProjectRoot():undefined}),_0x2f1426=_0x1f7a01['output']?.['includes'](_0x55c572['VGgbC']);!_0x1f7a01[_0x55ac91(0x166)]&&!_0x2f1426?console['error']('⚠\x20Failed\x20to\x20enable\x20plugin:',_0x1f7a01['error']):console['log'](_0x55c572['FTYyV']);}}return!![];}export async function ensureClaudeSkills(_0x52bc08){const _0x2ba472=_0x23e7,_0x1aa65e={'wywZz':function(_0x345a97,_0x2ed030){return _0x345a97(_0x2ed030);},'HwhoH':'ranger','CzkFq':_0x2ba472(0x179),'iIhQb':function(_0x9e7880,_0x1a891f){return _0x9e7880(_0x1a891f);},'Amfts':'✓\x20Ranger\x20skills\x20already\x20installed','ZGPJw':'.claude'},_0x36f5ea=_0x1aa65e['wywZz'](existsSync,join(getSkillsDir(_0x2ba472(0x17b)),_0x1aa65e[_0x2ba472(0x164)],_0x1aa65e[_0x2ba472(0x15e)])),_0x1c712b=_0x1aa65e[_0x2ba472(0x15f)](existsSync,join(getSkillsDir(_0x2ba472(0x187)),_0x2ba472(0x162),_0x2ba472(0x179)));if(_0x36f5ea||_0x1c712b)return console['log'](_0x1aa65e[_0x2ba472(0x16c)]),![];const _0x12024a=existsSync(join(getProjectRoot(),_0x1aa65e[_0x2ba472(0x172)]));let _0x20a720=!![];if(_0x52bc08)await skillup({'autoInstall':_0x52bc08,'suppressUsage':!![]});else{if(_0x12024a)await skillup({'autoInstall':'project','suppressUsage':!![]});else{const _0x2743db=await _0x1406a3['prompt']([{'type':_0x2ba472(0x175),'name':'wantsSkillup','message':'Would\x20you\x20like\x20to\x20install\x20skills?','default':!![]}]);_0x20a720=_0x2743db['wantsSkillup'],_0x20a720&&await skillup({'suppressUsage':!![]});}}return _0x20a720;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x23d015,_0xa3cf47){const _0x3c5c4d=_0x3658,_0xb1ba60=_0x23d015();while(!![]){try{const _0x262dde=parseInt(_0x3c5c4d(0x1ce))/0x1+parseInt(_0x3c5c4d(0x1cd))/0x2*(parseInt(_0x3c5c4d(0x1e4))/0x3)+-parseInt(_0x3c5c4d(0x1e1))/0x4*(parseInt(_0x3c5c4d(0x1dc))/0x5)+-parseInt(_0x3c5c4d(0x1de))/0x6+parseInt(_0x3c5c4d(0x1d1))/0x7*(-parseInt(_0x3c5c4d(0x1d4))/0x8)+-parseInt(_0x3c5c4d(0x1c7))/0x9*(-parseInt(_0x3c5c4d(0x1d5))/0xa)+parseInt(_0x3c5c4d(0x1dd))/0xb*(parseInt(_0x3c5c4d(0x1c8))/0xc);if(_0x262dde===_0xa3cf47)break;else _0xb1ba60['push'](_0xb1ba60['shift']());}catch(_0x975f11){_0xb1ba60['push'](_0xb1ba60['shift']());}}}(_0x2060,0x39dee));import{join}from'path';function _0x2060(){const _0x3caa8d=['120Vtrhsd','plugin','log','User\x20(available\x20in\x20all\x20your\x20projects)','WnMQQ','734544kqzeLl','427379GUBnbS','prompt','EEVPl','98qeSGRK','XEYBd','ANZuA','112440RGKfDL','7110gFZBks','zWSCz','@ranger-testing/opencode-plugin','zSspJ','user','https://opencode.ai/config.json','stringify','14715ijQMAL','37664rkRZYA','1654080xjJeHl','isArray','Failed\x20to\x20read\x20opencode.json','544hyBUnt','pluginScope','project','3yQmrfT','opencode.json','✓\x20OpenCode\x20plugin\x20configured','3555vRbEST'];_0x2060=function(){return _0x3caa8d;};return _0x2060();}import{existsSync}from'fs';function _0x3658(_0x1b8353,_0x3366c2){_0x1b8353=_0x1b8353-0x1c6;const _0x20605b=_0x2060();let _0x365851=_0x20605b[_0x1b8353];return _0x365851;}import{mkdir,readFile,writeFile}from'fs/promises';import _0x3ab118 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x59d794){const _0x3b6985=_0x3658,_0x10b33e={'zSspJ':function(_0x29efc1,_0x51fea4,_0x3d9699){return _0x29efc1(_0x51fea4,_0x3d9699);},'XEYBd':function(_0x36133b,_0x2a68f0){return _0x36133b(_0x2a68f0);},'yStPd':_0x3b6985(0x1e3),'EEVPl':_0x3b6985(0x1e5),'WnMQQ':'pluginScope','ANZuA':_0x3b6985(0x1cb),'tACjV':'user','HCwNo':function(_0xe14c99,_0x41529f){return _0xe14c99(_0x41529f);},'nvyBR':'utf-8','zWSCz':function(_0x52c3cb,_0xecfe31,_0x465b05){return _0x52c3cb(_0xecfe31,_0x465b05);}},_0x564cef=existsSync(_0x10b33e['zSspJ'](join,_0x10b33e[_0x3b6985(0x1d2)](getOpencodeConfigDir,_0x10b33e['yStPd']),_0x10b33e[_0x3b6985(0x1d0)]));let _0x19f616;if(_0x59d794)_0x19f616=_0x59d794;else{if(_0x564cef)_0x19f616=_0x3b6985(0x1e3);else{console[_0x3b6985(0x1ca)]('\x0a📦\x20OpenCode\x20Plugin\x0a');const _0x45f3a1=await _0x3ab118[_0x3b6985(0x1cf)]([{'type':'list','name':_0x10b33e[_0x3b6985(0x1cc)],'message':'Where\x20should\x20the\x20plugin\x20be\x20installed?','choices':[{'name':_0x10b33e[_0x3b6985(0x1d3)],'value':_0x10b33e['tACjV']},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x3b6985(0x1e3)}],'default':_0x3b6985(0x1d9)}]);_0x19f616=_0x45f3a1[_0x3b6985(0x1e2)];}}const _0x14dff3=_0x10b33e[_0x3b6985(0x1d8)](join,_0x10b33e[_0x3b6985(0x1d2)](getOpencodeConfigDir,_0x19f616),_0x3b6985(0x1e5)),_0x420718=_0x3b6985(0x1d7),_0xab4edf=_0x3b6985(0x1da);let _0x38a417={};if(_0x10b33e['HCwNo'](existsSync,_0x14dff3))try{const _0x1241a2=await _0x10b33e['zSspJ'](readFile,_0x14dff3,_0x10b33e['nvyBR']);_0x38a417=JSON['parse'](_0x1241a2);}catch(_0x3f05d3){return console['error']('⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.'),{'configured':![],'scope':_0x19f616,'error':_0x3b6985(0x1e0),'details':_0x3f05d3};}const _0x2fdd7e=Array[_0x3b6985(0x1df)](_0x38a417['plugin'])?_0x38a417['plugin']:[];if(_0x2fdd7e['includes'](_0x420718))return console[_0x3b6985(0x1ca)]('✓\x20OpenCode\x20plugin\x20already\x20configured'),{'configured':![],'scope':_0x19f616};return _0x38a417['$schema']=_0x38a417['$schema']||_0xab4edf,_0x38a417[_0x3b6985(0x1c9)]=[..._0x2fdd7e,_0x420718],await _0x10b33e['zSspJ'](mkdir,getOpencodeConfigDir(_0x19f616),{'recursive':!![]}),await _0x10b33e[_0x3b6985(0x1d6)](writeFile,_0x14dff3,JSON[_0x3b6985(0x1db)](_0x38a417,null,0x2)+'\x0a'),console['log'](_0x3b6985(0x1c6)),{'configured':!![],'scope':_0x19f616};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x32b6b2,_0x12d774){var _0x23556e=_0x372d,_0x58462e=_0x32b6b2();while(!![]){try{var _0x342bae=-parseInt(_0x23556e(0x180))/0x1*(parseInt(_0x23556e(0x181))/0x2)+parseInt(_0x23556e(0x17d))/0x3+parseInt(_0x23556e(0x185))/0x4*(parseInt(_0x23556e(0x17c))/0x5)+-parseInt(_0x23556e(0x17a))/0x6+parseInt(_0x23556e(0x17e))/0x7*(parseInt(_0x23556e(0x17b))/0x8)+parseInt(_0x23556e(0x188))/0x9*(parseInt(_0x23556e(0x183))/0xa)+-parseInt(_0x23556e(0x186))/0xb;if(_0x342bae===_0x12d774)break;else _0x58462e['push'](_0x58462e['shift']());}catch(_0x3fcddc){_0x58462e['push'](_0x58462e['shift']());}}}(_0x31bf,0xdf712));function _0x31bf(){var _0x393c46=['40mAOfqx','5979885ViEaxy','4008216miJxba','1063391JMouSt','iFFWY','1qSdxxZ','3432322cPrJXe','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','10UYfGCK','\x20\x20https://docs.ranger.net/main/concepts/profiles','4dnbuho','6569849CvNZap','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','10611036ejLowE','7451880wChiFF'];_0x31bf=function(){return _0x393c46;};return _0x31bf();}function _0x372d(_0x14042e,_0x1f238e){_0x14042e=_0x14042e-0x17a;var _0x31bf05=_0x31bf();var _0x372d41=_0x31bf05[_0x14042e];return _0x372d41;}export async function setupCi(_0x519286,_0x2b1fd2,_0x1cc1a9){var _0x5864b9=_0x372d,_0x1a6910={'JahEu':function(_0xac7a51,_0x4df85d){return _0xac7a51+_0x4df85d;},'jHmxy':function(_0x3b4118,_0x25ee0c){return _0x3b4118+_0x25ee0c;},'bjuDN':function(_0x41df20,_0x31b3a4){return _0x41df20+_0x31b3a4;},'iFFWY':function(_0x2e85ca,_0x8c18fe){return _0x2e85ca+_0x8c18fe;},'YlkUv':'ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a'};console['error'](_0x1a6910['JahEu'](_0x1a6910['jHmxy'](_0x1a6910['bjuDN'](_0x1a6910[_0x5864b9(0x17f)](_0x1a6910['YlkUv'],'\x0a')+_0x5864b9(0x182)+_0x5864b9(0x187),'\x0a'),'For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a'),_0x5864b9(0x184))),process['exit'](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x2c2c(_0x255d74,_0x4f78f9){_0x255d74=_0x255d74-0x1ed;const _0x1bcad3=_0x1bca();let _0x2c2c5d=_0x1bcad3[_0x255d74];return _0x2c2c5d;}(function(_0x31203c,_0x4fbd52){const _0x4f55d4=_0x2c2c,_0x1a6a61=_0x31203c();while(!![]){try{const _0x1d491e=parseInt(_0x4f55d4(0x216))/0x1+parseInt(_0x4f55d4(0x20a))/0x2*(parseInt(_0x4f55d4(0x200))/0x3)+-parseInt(_0x4f55d4(0x20f))/0x4+parseInt(_0x4f55d4(0x1f4))/0x5+parseInt(_0x4f55d4(0x208))/0x6*(-parseInt(_0x4f55d4(0x1ff))/0x7)+-parseInt(_0x4f55d4(0x217))/0x8*(-parseInt(_0x4f55d4(0x1fc))/0x9)+-parseInt(_0x4f55d4(0x204))/0xa;if(_0x1d491e===_0x4fbd52)break;else _0x1a6a61['push'](_0x1a6a61['shift']());}catch(_0x126176){_0x1a6a61['push'](_0x1a6a61['shift']());}}}(_0x1bca,0x71b25));function _0x1bca(){const _0x61d7da=['\x20\x203.\x20Run:\x20ranger\x20skillup','warn','list','To\x20get\x20started:','819295VkwXLT','5613528FMqcSk','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','\x20<your-api-token>','project-level','stdin','This\x20project\x20only\x20(','/skills/','Where\x20should\x20skills\x20be\x20installed?','\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!','EgJSy','qNfFb','installLevel','277980fWCPso','\x0a✅\x20Installed\x20','zcYib','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','opencode','log','\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','9rbhPQZ','autoInstall','OOmkR','14SDkqHW','669996RfrBUv','suppressUsage','\x20--opencode','\x20successfully!\x0a','5340460zfCPBq','/.opencode/skills/','user-level','Xhuub','1280352jqdKji','/.claude/skills/','4lieQGD','✓\x20Found\x20API\x20token','ShxqH','stdout','WZTvW','2386860ZnrpxT','YhjJQ','VCTlN'];_0x1bca=function(){return _0x61d7da;};return _0x1bca();}import{basename}from'path';import _0x454d56 from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0x1470f2={}){const _0xd9f5d=_0x2c2c,_0x7e8d0f={'odBzb':'claude','OOmkR':function(_0x38b389){return _0x38b389();},'YhjJQ':function(_0x35ddb1,_0x2e3742){return _0x35ddb1===_0x2e3742;},'MZFsv':function(_0x50e26e,_0x48bf6c){return _0x50e26e===_0x48bf6c;},'xApas':function(_0x4e03c1){return _0x4e03c1();},'EgJSy':function(_0x36dcbd,_0x2bdb82){return _0x36dcbd(_0x2bdb82);},'jGDBZ':_0xd9f5d(0x1f8),'daAra':function(_0x58c6e3,_0x303104){return _0x58c6e3(_0x303104);},'xQDRd':'user','qNfFb':_0xd9f5d(0x1ef),'WZTvW':'\x0a📦\x20Installing\x20skills...\x0a','zcYib':function(_0x4b728d,_0x5b09d8){return _0x4b728d instanceof _0x5b09d8;},'ShxqH':function(_0x138dde,_0x41e04d){return _0x138dde>_0x41e04d;},'CRLvf':function(_0x46599a,_0x59ec02){return _0x46599a===_0x59ec02;},'VCTlN':_0xd9f5d(0x206),'Xhuub':_0xd9f5d(0x21a),'WrpHP':'\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.','VkpjI':_0xd9f5d(0x1f0),'ZfVTE':_0xd9f5d(0x218)};console[_0xd9f5d(0x1f9)](_0xd9f5d(0x1fa));const _0x582ecf=_0x1470f2['platform']??_0x7e8d0f['odBzb'],_0xac0348=await _0x7e8d0f[_0xd9f5d(0x1fe)](getToken);if(!_0xac0348){console['log']('❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a'),console[_0xd9f5d(0x1f9)](_0xd9f5d(0x215)),console[_0xd9f5d(0x1f9)](_0xd9f5d(0x1f7)),console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x7e8d0f['YhjJQ'](_0x582ecf,_0xd9f5d(0x1f8))?'\x20--opencode':'')+_0xd9f5d(0x219)),console[_0xd9f5d(0x1f9)](_0xd9f5d(0x212)+(_0x7e8d0f['MZFsv'](_0x582ecf,_0xd9f5d(0x1f8))?_0xd9f5d(0x202):'')+'\x0a');return;}console[_0xd9f5d(0x1f9)](_0xd9f5d(0x20b));const _0x245ca0=_0x7e8d0f['xApas'](getProjectRoot),_0x16fcc2=_0x7e8d0f[_0xd9f5d(0x1f1)](basename,_0x245ca0),_0x165a41=_0x7e8d0f[_0xd9f5d(0x210)](_0x582ecf,_0x7e8d0f['jGDBZ'])?_0x7e8d0f['daAra'](getOpencodeConfigDir,_0x7e8d0f['xQDRd'])+'/skills/':getClaudeConfigDir()+_0xd9f5d(0x1ee),_0x51b9b9=_0x582ecf===_0xd9f5d(0x1f8)?_0x245ca0+_0xd9f5d(0x205):_0x245ca0+_0xd9f5d(0x209),_0x483eda=process[_0xd9f5d(0x21b)]['isTTY']&&process[_0xd9f5d(0x20d)]['isTTY'];let _0x446080;if(_0x1470f2[_0xd9f5d(0x1fd)])_0x446080=_0x1470f2[_0xd9f5d(0x1fd)];else{if(_0x483eda){const _0x476d44=await _0x454d56['prompt']([{'type':_0xd9f5d(0x214),'name':_0xd9f5d(0x1f3),'message':_0x7e8d0f[_0xd9f5d(0x1f2)],'choices':[{'name':'All\x20projects\x20('+_0x165a41+')','value':'user'},{'name':_0xd9f5d(0x1ed)+_0x51b9b9+')','value':'project'}]}]);_0x446080=_0x476d44[_0xd9f5d(0x1f3)];}else _0x446080='project',console['log']('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x51b9b9+')');}let _0xd7913e=0x0;const _0x451892=_0x7e8d0f[_0xd9f5d(0x1fe)](getCurrentVersion);console[_0xd9f5d(0x1f9)](_0x7e8d0f[_0xd9f5d(0x20e)]);try{const _0x3daabb=await installSkill('ranger',{'cliVersion':_0x451892,'level':_0x446080,'platform':_0x582ecf});_0x3daabb&&_0xd7913e++;}catch(_0x837269){console[_0xd9f5d(0x213)](_0xd9f5d(0x1fb),_0x7e8d0f[_0xd9f5d(0x1f6)](_0x837269,Error)?_0x837269['message']:_0x837269);}if(_0x7e8d0f[_0xd9f5d(0x20c)](_0xd7913e,0x0)){const _0x5c6a63=_0x7e8d0f['CRLvf'](_0x446080,_0x7e8d0f['xQDRd'])?_0x7e8d0f[_0xd9f5d(0x211)]:_0x7e8d0f[_0xd9f5d(0x207)];console[_0xd9f5d(0x1f9)](_0xd9f5d(0x1f5)+_0xd7913e+'\x20'+_0x5c6a63+'\x20skill'+(_0xd7913e>0x1?'s':'')+_0xd9f5d(0x203)),!_0x1470f2[_0xd9f5d(0x201)]&&(console[_0xd9f5d(0x1f9)]('To\x20use:'),_0x582ecf===_0x7e8d0f['jGDBZ']?console['log'](_0x7e8d0f['WrpHP']):console[_0xd9f5d(0x1f9)](_0x7e8d0f['VkpjI']));}else console['log'](_0x7e8d0f['ZfVTE']);}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x523964=_0xde58;(function(_0x2b53b8,_0x10240d){const _0x18ca27=_0xde58,_0x178879=_0x2b53b8();while(!![]){try{const _0x482e3a=parseInt(_0x18ca27(0x106))/0x1+parseInt(_0x18ca27(0xfe))/0x2*(parseInt(_0x18ca27(0x113))/0x3)+-parseInt(_0x18ca27(0xbb))/0x4+-parseInt(_0x18ca27(0xcb))/0x5+parseInt(_0x18ca27(0xd6))/0x6+parseInt(_0x18ca27(0xfd))/0x7*(-parseInt(_0x18ca27(0xf1))/0x8)+-parseInt(_0x18ca27(0x10f))/0x9;if(_0x482e3a===_0x10240d)break;else _0x178879['push'](_0x178879['shift']());}catch(_0x188f27){_0x178879['push'](_0x178879['shift']());}}}(_0x11d7,0x3f713));import{mkdir,writeFile}from'fs/promises';import{join,dirname}from'path';import{existsSync}from'fs';import{createRequire}from'module';import _0x3da524 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';function _0xde58(_0x123fe8,_0x1ae138){_0x123fe8=_0x123fe8-0xb1;const _0x11d74b=_0x11d7();let _0xde58bd=_0x11d74b[_0x123fe8];return _0xde58bd;}import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';function _0x11d7(){const _0x4dc92f=['prompt','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','VNKJU','129015INvdqe','Validating\x20API\x20token...','czphL','...','oAKBj','RUwbI','\x20\x20npx\x20playwright@','.gitignore','rYTOS','force','user','1898688DkGiKw','skipped','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','log','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','UowdF','tCFdS','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','s).\x20On\x20a\x20slow\x20or\x20proxied\x20connection,\x20raise\x20the\x20limit\x20and\x20retry,\x20e.g.:\x0a','isTTY','CHIjI','Installation\x20failed\x20with\x20exit\x20code\x20','--with-deps','npx','message','\x20install\x20chromium','execPath','allowInsecureLocalhost','success','Authentication\x20failed:\x20','ignore','You\x20can\x20install\x20it\x20manually\x20by\x20running:','iWeNZ','TLIdz','scope','\x20(fallback\x20version)','1152nrCXXc','url','skipAuth','device_auth','organizationName','opencode','skipChromium','bINvR','method','error','exit','executablePath','1708QQxxit','15722QQGlyX','\x20now?','zPiyD','IYXdJ','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','stdin','trackPhaseStart','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','279970agWVAo','AZLBX','auth','install','local','wOKSj','skills',')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','rJewn','703611DqIkFh','\x0aInstalling\x20Chromium\x20browser...\x0a','profile','playwright/package.json','33nhmFSH','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','1.56.1','inherit','NOQUu','\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','\x0a\x20\x20Chromium\x20install\x20timed\x20out\x20(limit\x20','MUdnz','chromium','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','ZKjMh','\x20\x20\x20\x20RANGER_CHROMIUM_INSTALL_TIMEOUT_MS=1800000\x20ranger\x20setup\x20deps','\x0a⚠\x20Skipping\x20Chromium\x20installation.','\x1b[0m','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','cGMha','TLDrY','\x0a🚀\x20Ranger\x20Setup\x0a','OOFcK','PaImm','✓\x20Authenticated\x20to\x20','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','Erfgy','1135648suqNhv','ranger\x20profile\x20add\x20<name>','plugin','LrxGV','SIGKILL','trackPhaseEnd','lmINM','warn','playwright@','YxZQC','\x0a\x20\x20','env','yelfF'];_0x11d7=function(){return _0x4dc92f;};return _0x11d7();}import{installSkill}from'./utils/skills.js';import{spawn}from'child_process';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0x523964(0x115);const bold=_0xd6f3fd=>'\x1b[1m'+_0xd6f3fd+_0x523964(0xb1);export function getPlaywrightVersion(){const _0x181e3e=_0x523964;try{const _0x6d5cc0=require['resolve'](_0x181e3e(0x112)),_0x3b27ad=require(_0x6d5cc0);return _0x3b27ad['version'];}catch{return null;}}function resolveBundledPlaywrightCli(){const _0x564ccf=_0x523964,_0x643568={'IYXdJ':function(_0x316701,_0x5b4fbd,_0x4a5028){return _0x316701(_0x5b4fbd,_0x4a5028);},'TLDrY':function(_0x16b1d9,_0x57feca){return _0x16b1d9(_0x57feca);}};try{const _0x594090=_0x643568[_0x564ccf(0x101)](join,_0x643568[_0x564ccf(0xb4)](dirname,require['resolve']('playwright/package.json')),'cli.js');return _0x643568[_0x564ccf(0xb4)](existsSync,_0x594090)?_0x594090:null;}catch{return null;}}const CHROMIUM_INSTALL_TIMEOUT_MS=Number(process[_0x523964(0xc6)]['RANGER_CHROMIUM_INSTALL_TIMEOUT_MS'])||0x927c0;class ChromiumInstallTimeoutError extends Error{}export async function installChromiumBinary(_0x3fc859,_0x4a74cf=![]){const _0x56acd7=_0x523964,_0x4279a3={'wOKSj':_0x56acd7(0xe4),'JzHnG':function(_0x2811b5,_0x2a3b49,_0x5d9429){return _0x2811b5(_0x2a3b49,_0x5d9429);},'cHTcg':function(_0x24dddb,_0x533b17){return _0x24dddb/_0x533b17;},'MUdnz':function(_0xd4ccae,_0x5bf863){return _0xd4ccae instanceof _0x5bf863;}},_0xcce954=resolveBundledPlaywrightCli(),_0x1c538f=_0xcce954?process[_0x56acd7(0xe7)]:_0x4279a3[_0x56acd7(0x10b)],_0x39cf88=[_0xcce954??_0x56acd7(0xc3)+_0x3fc859,'install',..._0x4a74cf?[_0x56acd7(0xe3)]:[],'chromium'];let _0x3b44a7=![];for(let _0x501a36=0x1;;_0x501a36++){try{await _0x4279a3['JzHnG'](runChromiumInstall,_0x1c538f,_0x39cf88);return;}catch(_0x152dfc){_0x152dfc instanceof ChromiumInstallTimeoutError&&!_0x3b44a7&&(_0x3b44a7=!![],console[_0x56acd7(0xda)](_0x56acd7(0x119)+Math['round'](_0x4279a3['cHTcg'](CHROMIUM_INSTALL_TIMEOUT_MS,0x3e8))+_0x56acd7(0xdf)+_0x56acd7(0x11e)));if(_0x501a36>=0x3)throw _0x152dfc;const _0x560eba=_0x4279a3[_0x56acd7(0x11a)](_0x152dfc,Error)?_0x152dfc[_0x56acd7(0xe5)]:String(_0x152dfc);console[_0x56acd7(0xda)]('\x20\x20Chromium\x20install\x20attempt\x20'+_0x501a36+'\x20failed\x20('+_0x560eba+');\x20retrying...');}}}function runChromiumInstall(_0x372b00,_0x57dd6b){const _0x4f5894=_0x523964,_0x2dfd56={'Erfgy':function(_0x4a2be0,_0x10dfa8){return _0x4a2be0(_0x10dfa8);},'gahsX':function(_0x566ef9){return _0x566ef9();},'lmINM':function(_0x99b5c2,_0x192e40,_0x65f3ce,_0x3706ee){return _0x99b5c2(_0x192e40,_0x65f3ce,_0x3706ee);},'shUIj':_0x4f5894(0x116),'zOIyS':'win32','rYTOS':function(_0x24f127,_0x1dc9cf,_0x13498a){return _0x24f127(_0x1dc9cf,_0x13498a);}};return new Promise((_0x129d64,_0x836009)=>{const _0x461987=_0x4f5894,_0x31d944={'vOfLu':function(_0x1da391,_0x11e66a){const _0x1b5c08=_0xde58;return _0x2dfd56[_0x1b5c08(0xba)](_0x1da391,_0x11e66a);},'UzPXF':function(_0xe77d2f,_0x584ee8){return _0xe77d2f(_0x584ee8);}},_0x5e4262=_0x2dfd56[_0x461987(0xc1)](spawn,_0x372b00,_0x57dd6b,{'stdio':[_0x461987(0xeb),_0x461987(0x116),_0x2dfd56['shUIj']],'shell':process['platform']===_0x2dfd56['zOIyS']}),_0x4f6d1c=_0x2dfd56[_0x461987(0xd3)](setTimeout,()=>{const _0x361eab=_0x461987;_0x5e4262['kill'](_0x361eab(0xbf)),_0x836009(new ChromiumInstallTimeoutError('Chromium\x20install\x20timed\x20out\x20after\x20'+Math['round'](CHROMIUM_INSTALL_TIMEOUT_MS/0x3e8)+'s'));},CHROMIUM_INSTALL_TIMEOUT_MS);_0x5e4262['on']('close',_0x1f2336=>{const _0x5612e1=_0x461987;_0x2dfd56['Erfgy'](clearTimeout,_0x4f6d1c);if(_0x1f2336===0x0)_0x2dfd56['gahsX'](_0x129d64);else _0x836009(new Error(_0x5612e1(0xe2)+_0x1f2336));}),_0x5e4262['on'](_0x461987(0xfa),_0x19d0aa=>{_0x31d944['vOfLu'](clearTimeout,_0x4f6d1c),_0x31d944['UzPXF'](_0x836009,_0x19d0aa);});});}export async function authenticate(_0x349e77){const _0x2accdd=_0x523964,_0x1c5ebe={'cGMha':function(_0x3b37d5){return _0x3b37d5();},'lneiP':function(_0x400f28,_0x5a266e){return _0x400f28 instanceof _0x5a266e;},'UCwKz':_0x2accdd(0xf4),'Isyqc':_0x2accdd(0xcc),'MMAMb':function(_0x4f827a,_0x2cf130){return _0x4f827a(_0x2cf130);},'jrrjA':'✓\x20Stored\x20credentials\x20locally','CHIjI':'provided_token'};if(!_0x349e77){const _0x2fec99=await _0x1c5ebe[_0x2accdd(0xb3)](getToken);if(_0x2fec99){const _0x435a33=await getCurrentUser(_0x2fec99);if(_0x435a33['success'])return console['log']('✓\x20Already\x20authenticated\x20to\x20'+_0x435a33[_0x2accdd(0xd5)]['organizationName']),{'token':_0x2fec99,'method':'existing_token'};}try{_0x349e77=await runDeviceAuthFlow();}catch(_0x459688){throw new Error(_0x2accdd(0xea)+(_0x1c5ebe['lneiP'](_0x459688,Error)?_0x459688['message']:_0x459688));}const _0x4ec0e4=await getCurrentUser(_0x349e77);if(!_0x4ec0e4[_0x2accdd(0xe9)])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x4ec0e4[_0x2accdd(0xfa)]);return console['log'](_0x2accdd(0xb8)+_0x4ec0e4['user'][_0x2accdd(0xf5)]),{'token':_0x349e77,'method':_0x1c5ebe['UCwKz']};}console['log'](_0x1c5ebe['Isyqc']);const _0x11b3b2=await getCurrentUser(_0x349e77);if(!_0x11b3b2[_0x2accdd(0xe9)]){if(_0x11b3b2['status'])throw new Error('Authentication\x20failed:\x20'+_0x11b3b2['error']+_0x2accdd(0xd8));else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x11b3b2[_0x2accdd(0xfa)]+_0x2accdd(0x11c));}return console[_0x2accdd(0xda)](_0x2accdd(0xb8)+_0x11b3b2['user']['organizationName']),await _0x1c5ebe['MMAMb'](storeToken,_0x349e77),console['log'](process[_0x2accdd(0xc6)]['GITHUB_ENV']?'✓\x20Exported\x20credentials\x20for\x20CI':_0x1c5ebe['jrrjA']),{'token':_0x349e77,'method':_0x1c5ebe[_0x2accdd(0xe1)]};}export async function ensureRangerDir(_0x2faa0a){const _0x1ddd45=_0x523964,_0x48b4ff={'RUwbI':function(_0x19459b,_0x1df22f,_0x833659){return _0x19459b(_0x1df22f,_0x833659);}};void _0x2faa0a;const _0x3221c1=getRangerHomeDir();return!existsSync(_0x3221c1)?(await _0x48b4ff[_0x1ddd45(0xd0)](mkdir,_0x3221c1,{'recursive':!![]}),console['log']('✓\x20Created\x20~/.ranger/\x20directory'),{'path':_0x3221c1,'installed':!![]}):(console[_0x1ddd45(0xda)]('✓\x20~/.ranger/\x20directory\x20already\x20exists'),{'path':_0x3221c1,'installed':![]});}export async function ensureChromium(_0x458a91=![]){const _0x1d12e7=_0x523964,_0x4c04c0={'ZKjMh':function(_0x315499,_0x55cc7a){return _0x315499??_0x55cc7a;},'XgCWl':'\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','oAKBj':_0x1d12e7(0xd9),'jWQeI':_0x1d12e7(0xec),'cdEWd':_0x1d12e7(0x11f)};let _0x5136a9=![];try{const _0x17de05=chromium[_0x1d12e7(0xfc)]();_0x5136a9=existsSync(_0x17de05);}catch{_0x5136a9=![];}if(_0x5136a9)return console['log']('✓\x20Playwright\x20Chromium\x20browser\x20found'),![];const _0x58df17=getPlaywrightVersion(),_0x35157d=_0x4c04c0[_0x1d12e7(0x11d)](_0x58df17,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x1f0d44=!_0x58df17,_0x417b84=process[_0x1d12e7(0x103)][_0x1d12e7(0xe0)]&&process['stdout'][_0x1d12e7(0xe0)];let _0x2443cd=!![];if(_0x417b84){const {install:_0x802b2f}=await _0x3da524[_0x1d12e7(0xc8)]([{'type':'confirm','name':_0x1d12e7(0x109),'message':_0x1f0d44?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x35157d+_0x1d12e7(0xff):'The\x20required\x20version\x20('+_0x35157d+_0x1d12e7(0x10d),'default':!![]}]);_0x2443cd=_0x802b2f;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x35157d+(_0x1f0d44?_0x1d12e7(0xf0):'')+_0x1d12e7(0xce));if(_0x2443cd){console[_0x1d12e7(0xda)](_0x1d12e7(0x110));try{await installChromiumBinary(_0x35157d,_0x458a91),console['log'](_0x4c04c0['XgCWl']);}catch(_0x168908){console['error'](_0x4c04c0[_0x1d12e7(0xcf)],_0x168908 instanceof Error?_0x168908['message']:_0x168908),console[_0x1d12e7(0xda)](_0x4c04c0['jWQeI']),console[_0x1d12e7(0xda)](_0x1d12e7(0xd1)+_0x35157d+_0x1d12e7(0xe6));}}else console[_0x1d12e7(0xda)](_0x4c04c0['cdEWd']),console[_0x1d12e7(0xda)](_0x1d12e7(0xb9)),console[_0x1d12e7(0xda)](_0x1d12e7(0xd1)+_0x35157d+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x2a5f93){const _0x14bc73=_0x523964,_0x4f70e8={'YxZQC':function(_0x55a04a,_0x382215,_0x59c744){return _0x55a04a(_0x382215,_0x59c744);},'etgWw':'✓\x20Created\x20.ranger/.gitignore'},_0x5cdabd=join(_0x2a5f93,_0x14bc73(0xd2)),_0x3a2cfd='\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 _0x4f70e8[_0x14bc73(0xc4)](writeFile,_0x5cdabd,_0x3a2cfd),console[_0x14bc73(0xda)](_0x4f70e8['etgWw']);}export async function ensureLocalEnv(_0xf85d76,_0x36963a){const _0x475c5f=_0x523964,_0x4ff05e={'bINvR':function(_0x4366fe){return _0x4366fe();},'VDfgM':_0x475c5f(0xd5),'wlImz':_0x475c5f(0xde),'rJewn':function(_0x522c97,_0x2da466){return _0x522c97===_0x2da466;},'AZLBX':function(_0x127ca4,_0x3be6fb,_0x8353c0,_0x10f287){return _0x127ca4(_0x3be6fb,_0x8353c0,_0x10f287);},'rpecM':'\x0a❌\x20Profile\x20setup\x20failed:','tCFdS':function(_0x5d4088,_0x4a5da1){return _0x5d4088 instanceof _0x4a5da1;}};if(!_0x4ff05e[_0x475c5f(0xf8)](findGitRoot)&&_0xf85d76?.['scope']!==_0x4ff05e['VDfgM'])return console[_0x475c5f(0xda)](_0x4ff05e['wlImz']),{'ready':![],'skipped':!![]};const _0x53bdea=_0x4ff05e[_0x475c5f(0x10e)](_0xf85d76?.['scope'],_0x475c5f(0xd5))?getRangerHomeDir():undefined;if(findExistingEnv('local',{'locations':[_0x475c5f(0x10a)],'rangerDir':_0x53bdea}))return console['log']('✓\x20Local\x20profile\x20already\x20exists'),{'ready':!![],'skipped':![]};try{return await _0x4ff05e[_0x475c5f(0x107)](addEnv,_0x475c5f(0x10a),{'url':_0xf85d76?.[_0x475c5f(0xf2)],'force':_0xf85d76?.['force'],'allowInsecureLocalhost':_0xf85d76?.['allowInsecureLocalhost'],'scope':_0xf85d76?.[_0x475c5f(0xef)]},_0x36963a),{'ready':!![],'skipped':![]};}catch(_0x417dbb){return console['error'](_0x4ff05e['rpecM'],_0x4ff05e[_0x475c5f(0xdd)](_0x417dbb,Error)?_0x417dbb[_0x475c5f(0xe5)]:_0x417dbb),{'ready':![],'skipped':![]};}}export async function start(_0x8508a9,_0x2ab04b,_0x5253bb){const _0x4b113d=_0x523964,_0x3fa563={'yelfF':function(_0x3c08f1,_0x536060){return _0x3c08f1+_0x536060;},'VNKJU':_0x4b113d(0xd5),'GtFiQ':'✓\x20Skipping\x20authentication\x20(--skip-auth)','ZyUaX':function(_0x15dea2,_0x5ecab9){return _0x15dea2(_0x5ecab9);},'OEbpx':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','czphL':_0x4b113d(0x11b),'iWeNZ':_0x4b113d(0xbd),'UjZYC':function(_0x559f2a,_0x2c8197){return _0x559f2a(_0x2c8197);},'OOFcK':'ranger','UowdF':'\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','nLuvj':function(_0x23a551,_0x3b0b73){return _0x23a551 instanceof _0x3b0b73;},'LrxGV':'skills','PaImm':function(_0x4f3348,_0x46b28c,_0x5d7a1a){return _0x4f3348(_0x46b28c,_0x5d7a1a);},'zPiyD':_0x4b113d(0x111),'NOQUu':function(_0x5868ff,_0x18d2e0){return _0x5868ff+_0x18d2e0;},'XOzLL':function(_0x57a1e4,_0xe18285){return _0x57a1e4(_0xe18285);},'TLIdz':function(_0x2b0d03,_0x3a1adc){return _0x2b0d03+_0x3a1adc;}};console['log'](_0x4b113d(0xb5));_0x2ab04b?.[_0x4b113d(0xef)]!==undefined&&_0x2ab04b['scope']!==_0x4b113d(0xd5)&&(console[_0x4b113d(0xfa)](_0x3fa563[_0x4b113d(0xc7)]('ranger\x20setup\x20--scope='+String(_0x2ab04b[_0x4b113d(0xef)])+'\x20is\x20no\x20longer\x20supported.\x20',_0x4b113d(0xdb))+_0x4b113d(0xc9)),process[_0x4b113d(0xfb)](0x1));_0x2ab04b={..._0x2ab04b,'scope':_0x3fa563[_0x4b113d(0xca)]};const _0x8f6bf2=!existsSync(getRangerHomeDir());await ensureRangerDir(_0x3fa563[_0x4b113d(0xca)]);if(_0x2ab04b?.['skipAuth'])console[_0x4b113d(0xda)](_0x3fa563['GtFiQ']),_0x5253bb?.[_0x4b113d(0xc0)]('auth',{'isFirstRun':_0x8f6bf2,'method':_0x4b113d(0xd7)});else{_0x5253bb?.['trackPhaseStart'](_0x4b113d(0x108));const _0x3dc651=await _0x3fa563['ZyUaX'](authenticate,_0x8508a9);_0x5253bb?.[_0x4b113d(0xc0)]('auth',{'isFirstRun':_0x8f6bf2,'method':_0x3dc651[_0x4b113d(0xf9)]});}_0x5253bb?.['trackPhaseStart']('chromium');_0x2ab04b?.[_0x4b113d(0xf7)]?console['log'](_0x3fa563['OEbpx']):await _0x3fa563['ZyUaX'](ensureChromium,_0x2ab04b?.['withDeps']);_0x5253bb?.['trackPhaseEnd'](_0x3fa563[_0x4b113d(0xcd)],{'isFirstRun':_0x8f6bf2,'skipped':!!_0x2ab04b?.[_0x4b113d(0xf7)]}),console['log']('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x5d2727=_0x2ab04b?.['scope'],_0x453f0c=_0x2ab04b?.[_0x4b113d(0xf6)]??![];let _0xfe3a6f=null;_0x453f0c?(_0x5253bb?.['trackPhaseStart'](_0x4b113d(0xbd)),_0xfe3a6f=await ensureOpencodePluginConfig(_0x5d2727),_0x5253bb?.[_0x4b113d(0xc0)](_0x3fa563[_0x4b113d(0xed)],{'isFirstRun':_0x8f6bf2,'opencode':!![]})):(_0x5253bb?.[_0x4b113d(0x104)](_0x3fa563['iWeNZ']),await _0x3fa563['UjZYC'](ensureClaudePlugin,_0x5d2727),_0x5253bb?.['trackPhaseEnd'](_0x3fa563[_0x4b113d(0xed)],{'isFirstRun':_0x8f6bf2}));if(_0x453f0c&&_0xfe3a6f){_0x5253bb?.[_0x4b113d(0x104)](_0x4b113d(0x10c));try{await installSkill(_0x3fa563[_0x4b113d(0xb6)],{'level':_0xfe3a6f['scope'],'cliVersion':getCurrentVersion(),'platform':'opencode'}),_0x5253bb?.['trackPhaseEnd']('skills',{'isFirstRun':_0x8f6bf2,'opencode':!![]});}catch(_0x14a53f){console[_0x4b113d(0xc2)](_0x3fa563[_0x4b113d(0xdc)],_0x3fa563['nLuvj'](_0x14a53f,Error)?_0x14a53f['message']:_0x14a53f),_0x5253bb?.['trackPhaseEnd'](_0x4b113d(0x10c),{'isFirstRun':_0x8f6bf2,'opencode':!![],'failed':!![]});}}else _0x5253bb?.[_0x4b113d(0x104)](_0x3fa563[_0x4b113d(0xbe)]),await ensureClaudeSkills(_0x5d2727),_0x5253bb?.[_0x4b113d(0xc0)](_0x4b113d(0x10c),{'isFirstRun':_0x8f6bf2});if(_0x2ab04b?.[_0x4b113d(0xf3)])console['log'](_0x4b113d(0x118));else{if(_0x2ab04b?.['url']){_0x5253bb?.['trackPhaseStart'](_0x4b113d(0x111));const _0x179b88=await _0x3fa563[_0x4b113d(0xb7)](ensureLocalEnv,{'url':_0x2ab04b['url'],'force':_0x2ab04b?.[_0x4b113d(0xd4)],'allowInsecureLocalhost':_0x2ab04b?.[_0x4b113d(0xe8)],'scope':_0x3fa563[_0x4b113d(0xca)]},_0x5253bb);_0x5253bb?.[_0x4b113d(0xc0)](_0x3fa563[_0x4b113d(0x100)],{'isFirstRun':_0x8f6bf2,'profileReady':_0x179b88['ready'],'userSkipped':_0x179b88[_0x4b113d(0xd7)]});}else console['log'](_0x3fa563['NOQUu'](_0x3fa563[_0x4b113d(0x117)]('\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:'+(_0x4b113d(0xc5)+bold(_0x4b113d(0xbc))),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)')+'\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:',_0x4b113d(0x114)));}if(_0x453f0c)console[_0x4b113d(0xda)]('\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)'),console['log'](_0x4b113d(0x105)),console['log']('with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),console['log']('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x327aca=_0x3fa563['XOzLL'](bold,'/ranger:enable');console['log'](_0x3fa563['NOQUu'](_0x3fa563[_0x4b113d(0xee)]('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x327aca+'\x20and\x20prompt\x20the\x20coding',_0x4b113d(0xb2)),_0x4b113d(0x102))+'\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');}}
|
|
1
|
+
const _0x5a6c3d=_0x361e;(function(_0x108191,_0x4fad2e){const _0xe6ff6f=_0x361e,_0x3bc352=_0x108191();while(!![]){try{const _0x2a693e=-parseInt(_0xe6ff6f(0xd5))/0x1+parseInt(_0xe6ff6f(0xca))/0x2+-parseInt(_0xe6ff6f(0xde))/0x3+-parseInt(_0xe6ff6f(0xc6))/0x4+-parseInt(_0xe6ff6f(0xcd))/0x5*(-parseInt(_0xe6ff6f(0x10c))/0x6)+-parseInt(_0xe6ff6f(0x105))/0x7+parseInt(_0xe6ff6f(0x10d))/0x8;if(_0x2a693e===_0x4fad2e)break;else _0x3bc352['push'](_0x3bc352['shift']());}catch(_0xb4c598){_0x3bc352['push'](_0x3bc352['shift']());}}}(_0x57a3,0xa22b1));import{mkdir,writeFile}from'fs/promises';import{join,dirname}from'path';function _0x57a3(){const _0x593d2b=['MutqO',');\x20retrying...','aeOWn','playwright/package.json','2857320yoqCiz','✓\x20Stored\x20credentials\x20locally','UWONJ','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','skills','skipAuth','rVxFa','DBQbJ','JErwW','ugWaz','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','✓\x20Exported\x20credentials\x20for\x20CI','✓\x20~/.ranger/\x20directory\x20already\x20exists','✓\x20Created\x20.ranger/.gitignore','oMMBI','✓\x20Local\x20profile\x20already\x20exists','\x20failed\x20(','DNvYM','ranger\x20profile\x20add\x20<name>','...','ZqJLX','Nhrou','executablePath','\x0aInstalling\x20Chromium\x20browser...\x0a','log','AUQiO','✓\x20Authenticated\x20to\x20','chromium','FRSxV','\x20\x20npx\x20playwright@','close','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','OuNbR','kHBLu','tgYEM','FjedQ','QHoDL','VGZag','env','1437604IPuuzQ','inherit','pWNSQ','opencode','\x0a\x20\x20','CEgwG','error','558ZWRusu','11772712EUdVTy','\x20\x20\x20\x20RANGER_CHROMIUM_INSTALL_TIMEOUT_MS=1800000\x20ranger\x20setup\x20deps','MaXZh','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','stdout','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','platform','hELbN','FiDGY','rgqjw','Validating\x20API\x20token...','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','confirm','skipChromium','profile','EtVvj','install','method','status','user','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','success','DXuGK','\x0a\x20\x20Chromium\x20install\x20timed\x20out\x20(limit\x20','force','skipped','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','\x20install\x20chromium','s).\x20On\x20a\x20slow\x20or\x20proxied\x20connection,\x20raise\x20the\x20limit\x20and\x20retry,\x20e.g.:\x0a','trackPhaseEnd','Kmrjh','2050008GQjAdV','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','RANGER_CHROMIUM_INSTALL_TIMEOUT_MS','scope','1781836DIUzVY','exit','auth','54195RQTFUn','device_auth','XmBlb','dNYrw','Yquyt','ZkGea','withDeps','GbDVR','1035979MFAlGL','trackPhaseStart','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','message','ApbCV'];_0x57a3=function(){return _0x593d2b;};return _0x57a3();}import{existsSync}from'fs';import{createRequire}from'module';import _0x5b86ff 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';function _0x361e(_0x48d94e,_0x9e7399){_0x48d94e=_0x48d94e-0xbd;const _0x57a356=_0x57a3();let _0x361e76=_0x57a356[_0x48d94e];return _0x361e76;}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';import{spawn}from'child_process';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.56.1';const bold=_0x3e1005=>'\x1b[1m'+_0x3e1005+'\x1b[0m';export function getPlaywrightVersion(){const _0x3dcb7a=_0x361e,_0x32edfd={'MutqO':_0x3dcb7a(0xdd),'LHHGq':function(_0x4356e4,_0x5119c2){return _0x4356e4(_0x5119c2);}};try{const _0x245348=require['resolve'](_0x32edfd[_0x3dcb7a(0xda)]),_0x53ca66=_0x32edfd['LHHGq'](require,_0x245348);return _0x53ca66['version'];}catch{return null;}}function resolveBundledPlaywrightCli(){const _0x1f100c=_0x361e,_0x35a1f6={'EtVvj':function(_0x5a8257,_0x1d3677,_0x3ca348){return _0x5a8257(_0x1d3677,_0x3ca348);},'FRSxV':function(_0x32ada0,_0x551942){return _0x32ada0(_0x551942);},'jlXCS':_0x1f100c(0xdd)};try{const _0x29316f=_0x35a1f6[_0x1f100c(0x11d)](join,_0x35a1f6[_0x1f100c(0xfa)](dirname,require['resolve'](_0x35a1f6['jlXCS'])),'cli.js');return existsSync(_0x29316f)?_0x29316f:null;}catch{return null;}}const CHROMIUM_INSTALL_TIMEOUT_MS=Number(process[_0x5a6c3d(0x104)][_0x5a6c3d(0xc8)])||0x927c0;class ChromiumInstallTimeoutError extends Error{}export async function installChromiumBinary(_0x3b5321,_0x1e1e62=![]){const _0x43a44a=_0x5a6c3d,_0x553291={'yCCYI':function(_0x5e7181){return _0x5e7181();},'nkNDL':'npx','VGZag':_0x43a44a(0x11e),'rgqjw':function(_0x299958,_0x391769,_0x219626){return _0x299958(_0x391769,_0x219626);},'QBoff':function(_0x301798,_0x19069c){return _0x301798+_0x19069c;},'KdbEn':function(_0x82baa7,_0x5e2fd4){return _0x82baa7/_0x5e2fd4;}},_0x5434d1=_0x553291['yCCYI'](resolveBundledPlaywrightCli),_0x31166d=_0x5434d1?process['execPath']:_0x553291['nkNDL'],_0x173552=[_0x5434d1??'playwright@'+_0x3b5321,_0x553291[_0x43a44a(0x103)],..._0x1e1e62?['--with-deps']:[],_0x43a44a(0xf9)];let _0x30d6d3=![];for(let _0x207953=0x1;;_0x207953++){try{await _0x553291[_0x43a44a(0x117)](runChromiumInstall,_0x31166d,_0x173552);return;}catch(_0x1a8645){_0x1a8645 instanceof ChromiumInstallTimeoutError&&!_0x30d6d3&&(_0x30d6d3=!![],console['log'](_0x553291['QBoff'](_0x43a44a(0xbe)+Math['round'](_0x553291['KdbEn'](CHROMIUM_INSTALL_TIMEOUT_MS,0x3e8))+_0x43a44a(0xc3),_0x43a44a(0x10e))));if(_0x207953>=0x3)throw _0x1a8645;const _0x38180a=_0x1a8645 instanceof Error?_0x1a8645['message']:String(_0x1a8645);console[_0x43a44a(0xf6)]('\x20\x20Chromium\x20install\x20attempt\x20'+_0x207953+_0x43a44a(0xee)+_0x38180a+_0x43a44a(0xdb));}}}function runChromiumInstall(_0x4d7011,_0x4b6f03){const _0x1cab5f={'oMMBI':function(_0x4c68f0,_0x11a575){return _0x4c68f0(_0x11a575);},'MrbNl':'SIGKILL','YtEHT':function(_0x2a2591,_0x29064e){return _0x2a2591/_0x29064e;},'DXuGK':function(_0x32e31d,_0x18dca3,_0x31f355,_0xe1a1bb){return _0x32e31d(_0x18dca3,_0x31f355,_0xe1a1bb);},'DPJmu':function(_0x50da44,_0x181460){return _0x50da44===_0x181460;},'wEbFG':'win32','dBBGg':function(_0x11b9a6,_0x4a17af,_0xb87270){return _0x11b9a6(_0x4a17af,_0xb87270);},'ZzjCu':'error'};return new Promise((_0x34bc72,_0xcc950)=>{const _0x563223=_0x361e,_0x58c765={'AUQiO':_0x1cab5f['MrbNl'],'yVgwM':function(_0x234098,_0x528d39){const _0x48b4e7=_0x361e;return _0x1cab5f[_0x48b4e7(0xec)](_0x234098,_0x528d39);},'Yquyt':function(_0x264151,_0x923c62){return _0x1cab5f['YtEHT'](_0x264151,_0x923c62);},'tdvGo':function(_0x426bbb,_0x5b2cd7){const _0x55b5f4=_0x361e;return _0x1cab5f[_0x55b5f4(0xec)](_0x426bbb,_0x5b2cd7);},'QHoDL':function(_0xbfa559,_0x55ed4a){return _0xbfa559(_0x55ed4a);}},_0x259118=_0x1cab5f[_0x563223(0xbd)](spawn,_0x4d7011,_0x4b6f03,{'stdio':['ignore','inherit',_0x563223(0x106)],'shell':_0x1cab5f['DPJmu'](process[_0x563223(0x114)],_0x1cab5f['wEbFG'])}),_0x395bc5=_0x1cab5f['dBBGg'](setTimeout,()=>{const _0x412b0d=_0x563223;_0x259118['kill'](_0x58c765[_0x412b0d(0xf7)]),_0x58c765['yVgwM'](_0xcc950,new ChromiumInstallTimeoutError('Chromium\x20install\x20timed\x20out\x20after\x20'+Math['round'](_0x58c765[_0x412b0d(0xd1)](CHROMIUM_INSTALL_TIMEOUT_MS,0x3e8))+'s'));},CHROMIUM_INSTALL_TIMEOUT_MS);_0x259118['on'](_0x563223(0xfc),_0x3f5c19=>{const _0x58ccae=_0x563223;_0x1cab5f[_0x58ccae(0xec)](clearTimeout,_0x395bc5);if(_0x3f5c19===0x0)_0x34bc72();else _0xcc950(new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x3f5c19));}),_0x259118['on'](_0x1cab5f['ZzjCu'],_0x106d3b=>{const _0x37ffb4=_0x563223;_0x58c765['tdvGo'](clearTimeout,_0x395bc5),_0x58c765[_0x37ffb4(0x102)](_0xcc950,_0x106d3b);});});}export async function authenticate(_0x17e012){const _0x5c4e05=_0x5a6c3d,_0x48608d={'jpREn':function(_0x3800ac,_0xdb6f9e){return _0x3800ac instanceof _0xdb6f9e;},'DBQbJ':function(_0x2d8224,_0x29ea5d){return _0x2d8224(_0x29ea5d);},'hELbN':_0x5c4e05(0xe9),'AYkTY':_0x5c4e05(0xdf)};if(!_0x17e012){const _0x54fe22=await getToken();if(_0x54fe22){const _0x451c3c=await getCurrentUser(_0x54fe22);if(_0x451c3c['success'])return console[_0x5c4e05(0xf6)]('✓\x20Already\x20authenticated\x20to\x20'+_0x451c3c['user']['organizationName']),{'token':_0x54fe22,'method':'existing_token'};}try{_0x17e012=await runDeviceAuthFlow();}catch(_0x750023){throw new Error('Authentication\x20failed:\x20'+(_0x48608d['jpREn'](_0x750023,Error)?_0x750023['message']:_0x750023));}const _0x4518fb=await _0x48608d[_0x5c4e05(0xe5)](getCurrentUser,_0x17e012);if(!_0x4518fb['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x4518fb['error']);return console['log'](_0x5c4e05(0xf8)+_0x4518fb[_0x5c4e05(0x121)]['organizationName']),{'token':_0x17e012,'method':_0x5c4e05(0xce)};}console['log'](_0x5c4e05(0x118));const _0x20a7ec=await _0x48608d[_0x5c4e05(0xe5)](getCurrentUser,_0x17e012);if(!_0x20a7ec[_0x5c4e05(0x123)]){if(_0x20a7ec[_0x5c4e05(0x120)])throw new Error('Authentication\x20failed:\x20'+_0x20a7ec['error']+_0x5c4e05(0x110));else throw new Error('Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20'+_0x20a7ec[_0x5c4e05(0x10b)]+_0x5c4e05(0xfd));}return console[_0x5c4e05(0xf6)](_0x5c4e05(0xf8)+_0x20a7ec['user']['organizationName']),await storeToken(_0x17e012),console['log'](process[_0x5c4e05(0x104)]['GITHUB_ENV']?_0x48608d[_0x5c4e05(0x115)]:_0x48608d['AYkTY']),{'token':_0x17e012,'method':'provided_token'};}export async function ensureRangerDir(_0x4c943c){const _0x303715=_0x5a6c3d,_0x41f2a1={'qsNYW':function(_0x112b57,_0x275e50){return _0x112b57(_0x275e50);},'MaXZh':_0x303715(0xea)};void _0x4c943c;const _0x3a8499=getRangerHomeDir();return!_0x41f2a1['qsNYW'](existsSync,_0x3a8499)?(await mkdir(_0x3a8499,{'recursive':!![]}),console['log']('✓\x20Created\x20~/.ranger/\x20directory'),{'path':_0x3a8499,'installed':!![]}):(console[_0x303715(0xf6)](_0x41f2a1[_0x303715(0x10f)]),{'path':_0x3a8499,'installed':![]});}export async function ensureChromium(_0x16ab01=![]){const _0x2b13f7=_0x5a6c3d,_0x50260c={'JErwW':function(_0x3d8154){return _0x3d8154();},'CEgwG':function(_0x7546e7,_0x3d55b2){return _0x7546e7??_0x3d55b2;},'ZePjY':'\x20(fallback\x20version)','pOCRH':_0x2b13f7(0xf5),'jFhBg':'\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','Nhrou':'\x0a❌\x20Failed\x20to\x20install\x20Chromium:','LNywt':function(_0x22b226,_0x500ca5){return _0x22b226 instanceof _0x500ca5;},'XmBlb':'\x0a⚠\x20Skipping\x20Chromium\x20installation.'};let _0x2cb506=![];try{const _0x471413=chromium[_0x2b13f7(0xf4)]();_0x2cb506=existsSync(_0x471413);}catch{_0x2cb506=![];}if(_0x2cb506)return console[_0x2b13f7(0xf6)]('✓\x20Playwright\x20Chromium\x20browser\x20found'),![];const _0x22d4c2=_0x50260c[_0x2b13f7(0xe6)](getPlaywrightVersion),_0x4c31db=_0x50260c[_0x2b13f7(0x10a)](_0x22d4c2,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x2e81a9=!_0x22d4c2,_0x3c7357=process['stdin']['isTTY']&&process[_0x2b13f7(0x111)]['isTTY'];let _0x253793=!![];if(_0x3c7357){const {install:_0x330e01}=await _0x5b86ff['prompt']([{'type':_0x2b13f7(0x11a),'name':_0x2b13f7(0x11e),'message':_0x2e81a9?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x4c31db+'\x20now?':'The\x20required\x20version\x20('+_0x4c31db+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x253793=_0x330e01;}else console[_0x2b13f7(0xf6)](_0x2b13f7(0xe8)+_0x4c31db+(_0x2e81a9?_0x50260c['ZePjY']:'')+_0x2b13f7(0xf1));if(_0x253793){console['log'](_0x50260c['pOCRH']);try{await installChromiumBinary(_0x4c31db,_0x16ab01),console['log'](_0x50260c['jFhBg']);}catch(_0x43caba){console['error'](_0x50260c[_0x2b13f7(0xf3)],_0x50260c['LNywt'](_0x43caba,Error)?_0x43caba[_0x2b13f7(0xd8)]:_0x43caba),console[_0x2b13f7(0xf6)]('You\x20can\x20install\x20it\x20manually\x20by\x20running:'),console[_0x2b13f7(0xf6)]('\x20\x20npx\x20playwright@'+_0x4c31db+_0x2b13f7(0xc2));}}else console['log'](_0x50260c[_0x2b13f7(0xcf)]),console[_0x2b13f7(0xf6)](_0x2b13f7(0x122)),console['log'](_0x2b13f7(0xfb)+_0x4c31db+_0x2b13f7(0xc2));return!![];}export async function writeRangerGitignore(_0x49c14c){const _0x11228f=_0x5a6c3d,_0x331b99={'YNjcF':function(_0x13986c,_0x1a77d9,_0x345830){return _0x13986c(_0x1a77d9,_0x345830);},'FiDGY':_0x11228f(0xeb)},_0x7b977c=_0x331b99['YNjcF'](join,_0x49c14c,'.gitignore'),_0x23359b='\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 _0x331b99['YNjcF'](writeFile,_0x7b977c,_0x23359b),console['log'](_0x331b99[_0x11228f(0x116)]);}export async function ensureLocalEnv(_0x4419b6,_0x107f70){const _0xcb675b=_0x5a6c3d,_0x1c8a48={'Ocyyf':function(_0x5c6d2e){return _0x5c6d2e();},'raFgC':'user','aeOWn':'local','tgYEM':function(_0x288825,_0x7807a0){return _0x288825 instanceof _0x7807a0;}};if(!_0x1c8a48['Ocyyf'](findGitRoot)&&_0x4419b6?.[_0xcb675b(0xc9)]!==_0x1c8a48['raFgC'])return console[_0xcb675b(0xf6)](_0xcb675b(0x113)),{'ready':![],'skipped':!![]};const _0x5e68ed=_0x4419b6?.['scope']===_0x1c8a48['raFgC']?_0x1c8a48['Ocyyf'](getRangerHomeDir):undefined;if(findExistingEnv(_0x1c8a48[_0xcb675b(0xdc)],{'locations':[_0x1c8a48['aeOWn']],'rangerDir':_0x5e68ed}))return console[_0xcb675b(0xf6)](_0xcb675b(0xed)),{'ready':!![],'skipped':![]};try{return await addEnv('local',{'url':_0x4419b6?.['url'],'force':_0x4419b6?.[_0xcb675b(0xbf)],'allowInsecureLocalhost':_0x4419b6?.['allowInsecureLocalhost'],'scope':_0x4419b6?.['scope']},_0x107f70),{'ready':!![],'skipped':![]};}catch(_0x3314cc){return console[_0xcb675b(0x10b)]('\x0a❌\x20Profile\x20setup\x20failed:',_0x1c8a48[_0xcb675b(0x100)](_0x3314cc,Error)?_0x3314cc[_0xcb675b(0xd8)]:_0x3314cc),{'ready':![],'skipped':![]};}}export async function start(_0xdb8ce2,_0x55863c,_0x307674){const _0x1bfcce=_0x5a6c3d,_0x1fe5e8={'FjedQ':'\x0a🚀\x20Ranger\x20Setup\x0a','XKQle':function(_0x18cc3e,_0x1ca6d6){return _0x18cc3e+_0x1ca6d6;},'ZqJLX':function(_0x31ffdf){return _0x31ffdf();},'pWNSQ':'user','ugWaz':'✓\x20Skipping\x20authentication\x20(--skip-auth)','dNYrw':'chromium','DfShJ':'✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','ZkGea':function(_0x3af8f9,_0x346925){return _0x3af8f9(_0x346925);},'GbDVR':'plugin','UWONJ':'skills','OuNbR':'ranger','ApbCV':_0x1bfcce(0x108),'DNvYM':function(_0x38f994,_0x419ec1){return _0x38f994 instanceof _0x419ec1;},'ddPRQ':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','qexxr':_0x1bfcce(0x11c),'RpSvM':function(_0x29aefa,_0x1f17e9,_0x1cac7d){return _0x29aefa(_0x1f17e9,_0x1cac7d);},'nTQqu':function(_0x23bc33,_0x7ebcc7){return _0x23bc33+_0x7ebcc7;},'kHBLu':_0x1bfcce(0x112),'ELFau':'and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','rVxFa':'/ranger:enable','Kmrjh':function(_0x233894,_0x561095){return _0x233894+_0x561095;},'qQvfq':function(_0xc14d38,_0x3a85ea){return _0xc14d38+_0x3a85ea;}};console[_0x1bfcce(0xf6)](_0x1fe5e8[_0x1bfcce(0x101)]);_0x55863c?.[_0x1bfcce(0xc9)]!==undefined&&_0x55863c[_0x1bfcce(0xc9)]!==_0x1bfcce(0x121)&&(console['error'](_0x1fe5e8['XKQle'](_0x1fe5e8['XKQle']('ranger\x20setup\x20--scope='+String(_0x55863c[_0x1bfcce(0xc9)])+'\x20is\x20no\x20longer\x20supported.\x20','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20'),_0x1bfcce(0xd7))),process[_0x1bfcce(0xcb)](0x1));_0x55863c={..._0x55863c,'scope':'user'};const _0x16df40=!existsSync(_0x1fe5e8[_0x1bfcce(0xf2)](getRangerHomeDir));await ensureRangerDir(_0x1fe5e8[_0x1bfcce(0x107)]);if(_0x55863c?.['skipAuth'])console['log'](_0x1fe5e8[_0x1bfcce(0xe7)]),_0x307674?.['trackPhaseEnd']('auth',{'isFirstRun':_0x16df40,'method':_0x1bfcce(0xc0)});else{_0x307674?.[_0x1bfcce(0xd6)](_0x1bfcce(0xcc));const _0x3baff8=await authenticate(_0xdb8ce2);_0x307674?.['trackPhaseEnd']('auth',{'isFirstRun':_0x16df40,'method':_0x3baff8[_0x1bfcce(0x11f)]});}_0x307674?.['trackPhaseStart'](_0x1fe5e8[_0x1bfcce(0xd0)]);_0x55863c?.['skipChromium']?console['log'](_0x1fe5e8['DfShJ']):await _0x1fe5e8[_0x1bfcce(0xd2)](ensureChromium,_0x55863c?.[_0x1bfcce(0xd3)]);_0x307674?.[_0x1bfcce(0xc4)](_0x1bfcce(0xf9),{'isFirstRun':_0x16df40,'skipped':!!_0x55863c?.[_0x1bfcce(0x11b)]}),console[_0x1bfcce(0xf6)]('\x0a✅\x20Ranger\x20setup\x20complete!\x0a');const _0x3fbcd0=_0x55863c?.['scope'],_0xd4232f=_0x55863c?.['opencode']??![];let _0x2e04a7=null;_0xd4232f?(_0x307674?.['trackPhaseStart'](_0x1fe5e8[_0x1bfcce(0xd4)]),_0x2e04a7=await ensureOpencodePluginConfig(_0x3fbcd0),_0x307674?.['trackPhaseEnd'](_0x1fe5e8[_0x1bfcce(0xd4)],{'isFirstRun':_0x16df40,'opencode':!![]})):(_0x307674?.[_0x1bfcce(0xd6)](_0x1fe5e8[_0x1bfcce(0xd4)]),await ensureClaudePlugin(_0x3fbcd0),_0x307674?.[_0x1bfcce(0xc4)](_0x1fe5e8[_0x1bfcce(0xd4)],{'isFirstRun':_0x16df40}));if(_0xd4232f&&_0x2e04a7){_0x307674?.[_0x1bfcce(0xd6)](_0x1fe5e8[_0x1bfcce(0xe0)]);try{await installSkill(_0x1fe5e8[_0x1bfcce(0xfe)],{'level':_0x2e04a7['scope'],'cliVersion':_0x1fe5e8[_0x1bfcce(0xf2)](getCurrentVersion),'platform':_0x1fe5e8[_0x1bfcce(0xd9)]}),_0x307674?.['trackPhaseEnd']('skills',{'isFirstRun':_0x16df40,'opencode':!![]});}catch(_0x4b9d8e){console['warn']('\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:',_0x1fe5e8[_0x1bfcce(0xef)](_0x4b9d8e,Error)?_0x4b9d8e['message']:_0x4b9d8e),_0x307674?.[_0x1bfcce(0xc4)](_0x1fe5e8[_0x1bfcce(0xe0)],{'isFirstRun':_0x16df40,'opencode':!![],'failed':!![]});}}else _0x307674?.[_0x1bfcce(0xd6)](_0x1bfcce(0xe2)),await ensureClaudeSkills(_0x3fbcd0),_0x307674?.['trackPhaseEnd'](_0x1fe5e8['UWONJ'],{'isFirstRun':_0x16df40});if(_0x55863c?.[_0x1bfcce(0xe3)])console['log'](_0x1fe5e8['ddPRQ']);else{if(_0x55863c?.['url']){_0x307674?.['trackPhaseStart'](_0x1fe5e8['qexxr']);const _0x18eb6a=await _0x1fe5e8['RpSvM'](ensureLocalEnv,{'url':_0x55863c['url'],'force':_0x55863c?.[_0x1bfcce(0xbf)],'allowInsecureLocalhost':_0x55863c?.['allowInsecureLocalhost'],'scope':_0x1fe5e8[_0x1bfcce(0x107)]},_0x307674);_0x307674?.[_0x1bfcce(0xc4)](_0x1fe5e8['qexxr'],{'isFirstRun':_0x16df40,'profileReady':_0x18eb6a['ready'],'userSkipped':_0x18eb6a['skipped']});}else console['log'](_0x1fe5e8['nTQqu'](_0x1fe5e8['nTQqu'](_0x1bfcce(0xc7)+(_0x1bfcce(0x109)+bold(_0x1bfcce(0xf0))),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)'),_0x1bfcce(0x119))+_0x1bfcce(0xe1));}if(_0xd4232f)console[_0x1bfcce(0xf6)](_0x1fe5e8[_0x1bfcce(0xff)]),console[_0x1bfcce(0xf6)](_0x1fe5e8['ELFau']),console[_0x1bfcce(0xf6)]('with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser'),console['log']('verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');else{const _0x4f8cbd=_0x1fe5e8['ZkGea'](bold,_0x1fe5e8[_0x1bfcce(0xe4)]);console[_0x1bfcce(0xf6)](_0x1fe5e8[_0x1bfcce(0xc5)](_0x1fe5e8['qQvfq']('\x0aIn\x20Claude\x20Code,\x20run\x20'+_0x4f8cbd+'\x20and\x20prompt\x20the\x20coding',_0x1bfcce(0xc1)),'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser')+'\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x5ae4af=_0x3715;function _0x3715(_0x17621d,_0x5104ff){_0x17621d=_0x17621d-0x139;const _0xe7b90f=_0xe7b9();let _0x3715ad=_0xe7b90f[_0x17621d];return _0x3715ad;}(function(_0x4fbb38,_0x13f9de){const _0x170398=_0x3715,_0x1b9bca=_0x4fbb38();while(!![]){try{const _0x4b311a=parseInt(_0x170398(0x19d))/0x1+-parseInt(_0x170398(0x173))/0x2+parseInt(_0x170398(0x17b))/0x3*(parseInt(_0x170398(0x16e))/0x4)+-parseInt(_0x170398(0x185))/0x5*(-parseInt(_0x170398(0x149))/0x6)+-parseInt(_0x170398(0x179))/0x7*(-parseInt(_0x170398(0x1a6))/0x8)+parseInt(_0x170398(0x187))/0x9+parseInt(_0x170398(0x17f))/0xa*(-parseInt(_0x170398(0x18d))/0xb);if(_0x4b311a===_0x13f9de)break;else _0x1b9bca['push'](_0x1b9bca['shift']());}catch(_0xaf535c){_0x1b9bca['push'](_0x1b9bca['shift']());}}}(_0xe7b9,0x92bb2));import{readFile,readdir}from'fs/promises';function _0xe7b9(){const _0x3203fd=['not_installed','qHqxO','settingsPath','ranger@trailhead','1837BOsPlU','string','SKILL.md','join','xGRFY','\x20(up\x20to\x20date)','RPoFX','\x20cloud','USNwR','\x1b[1m','McBuc','unknown','\x0a---\x20Profiles\x20---','config','ignore','Organization:\x20','726543JIWNeF','toString','match','XDdME','PLGuN','ZwlRG','MhJLx','qERhm','WCMTW','1880SwkNWA','opencode','agrEj','debug','Bgdzn','no\x20session','has','sIvsZ','\x20(latest:\x20','UzKKy','log','\x20\x20Project-level:','\x1b[0m','\x0a---\x20Skills\x20---','auth.json','No\x20profiles\x20configured','FRfjN','\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','encrypted','6KpSgxe','SZHQQ',':\x20installed\x20(','CMxnF','\x1b]8;;\x07','project','iPzkW','\x1b]8;;file://','stdout','plaintext','disabled','hasEncryptedAuth','\x20\x20\x20\x20Settings:\x20','JlgZc','@ranger-testing/opencode-plugin','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','scope','JKGaP','trim','Root:\x20','length','close','hTtCJ','API\x20Token:\x20✗\x20Not\x20found','Version:\x20','name','gSgEo','AYErv','plugin','eOhZb','push','version','\x20\x20\x20\x20','pkNhj','\x20(active)','dRDuN','enabled','2722696RLaipG','not_configured','\x20\x20\x20\x20Session:\x20','\x20plugin(s)\x20configured','includes','1729908cEzcyY','\x20\x20User-level:','details','QsYPY','qAcdc','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','21910MyrwDy','oCHDd','3NxsnUB','parse','status','map','65630qUOXQr','JWeqA','DASxl','\x20\x20Run:\x20ranger\x20skillup','dVpTC','XtDFc','1163265ZISUyT','user','1679085QgFpDW','filter'];_0xe7b9=function(){return _0x3203fd;};return _0xe7b9();}import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';import{getEnvDir}from'./utils/settings.js';import{listCloudProfiles}from'./utils/cloudProfile.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x269043=>_0x5ae4af(0x196)+_0x269043+_0x5ae4af(0x142),link=(_0x2ba779,_0x13110a)=>_0x5ae4af(0x150)+_0x2ba779+'\x07'+(_0x13110a||_0x2ba779)+_0x5ae4af(0x14d);async function getOpencodePluginStatus(){const _0x26f7ac=_0x5ae4af,_0x5f3064={'qHqxO':function(_0x9998b5,_0x25658a){return _0x9998b5(_0x25658a);},'xfbFG':_0x26f7ac(0x189),'XDdME':'configured','oCHDd':function(_0x11da8d,_0x3d61b8){return _0x11da8d>_0x3d61b8;},'aakee':function(_0x314cbd,_0x34b9cd){return _0x314cbd>_0x34b9cd;},'QjKFq':_0x26f7ac(0x1a7),'USNwR':_0x26f7ac(0x139),'Gittp':'pipe','oXiGc':'data','EWoqA':'error','JWeqA':_0x26f7ac(0x15e)};return new Promise(_0x44b4ef=>{const _0x56fede=_0x26f7ac,_0x2c663b={'iPzkW':function(_0x5baef8,_0x55198c){return _0x5baef8(_0x55198c);},'JKmZC':'not_installed','espFs':function(_0x48347e,_0x989ac){return _0x48347e!==_0x989ac;}},_0x5ed282=spawn(_0x5f3064['QjKFq'],[_0x5f3064[_0x56fede(0x195)],_0x56fede(0x19a)],{'stdio':[_0x56fede(0x19b),_0x5f3064['Gittp'],_0x5f3064['Gittp']]});let _0x516b44='';_0x5ed282[_0x56fede(0x151)]?.['on'](_0x5f3064['oXiGc'],_0x3f8750=>{const _0x253cf2=_0x56fede;_0x516b44+=_0x3f8750[_0x253cf2(0x19e)]();}),_0x5ed282['stderr']?.['on'](_0x5f3064['oXiGc'],_0x4eb494=>{const _0x5aff97=_0x56fede;_0x516b44+=_0x4eb494[_0x5aff97(0x19e)]();}),_0x5ed282['on'](_0x5f3064['EWoqA'],()=>{const _0x451ae5=_0x56fede;_0x2c663b[_0x451ae5(0x14f)](_0x44b4ef,{'status':_0x2c663b['JKmZC']});}),_0x5ed282['on'](_0x5f3064[_0x56fede(0x180)],_0x3c4b42=>{const _0x37f104=_0x56fede;if(_0x3c4b42!==0x0){_0x5f3064[_0x37f104(0x18a)](_0x44b4ef,{'status':_0x5f3064['xfbFG']});return;}const _0x5c5705=_0x516b44[_0x37f104(0x15b)]();let _0x47ed82=null;if(_0x5c5705)try{_0x47ed82=JSON[_0x37f104(0x17c)](_0x5c5705);}catch{const _0x603a6a=_0x5c5705['match'](/\{[\s\S]*\}$/);if(_0x603a6a)try{_0x47ed82=JSON[_0x37f104(0x17c)](_0x603a6a[0x0]);}catch{_0x47ed82=null;}}const _0x4bb79b=Array['isArray'](_0x47ed82?.[_0x37f104(0x165)])?_0x47ed82?.[_0x37f104(0x165)]:[],_0x4ea171=_0x4bb79b['some'](_0x3dcc57=>{const _0x5a0195=_0x37f104;if(_0x2c663b['espFs'](typeof _0x3dcc57,_0x5a0195(0x18e)))return![];return _0x3dcc57['includes'](_0x5a0195(0x157))||_0x3dcc57['includes']('opencode-plugin');});if(_0x4ea171){_0x44b4ef({'status':_0x5f3064[_0x37f104(0x1a0)],'details':_0x5f3064[_0x37f104(0x17a)](_0x4bb79b[_0x37f104(0x15d)],0x0)?_0x4bb79b[_0x37f104(0x15d)]+_0x37f104(0x171):undefined});return;}if(_0x5f3064['aakee'](_0x4bb79b['length'],0x0)){_0x44b4ef({'status':_0x37f104(0x16f),'details':_0x4bb79b['length']+'\x20plugin(s)\x20configured'});return;}_0x44b4ef({'status':'not_configured'});});});}async function getSkillsFromDir(_0x472b55,_0x699081){const _0x8d06d3=_0x5ae4af,_0x2cfd67={'IZZbT':function(_0x2a5c8b,_0x264360,_0x3307b2){return _0x2a5c8b(_0x264360,_0x3307b2);},'WtZgf':function(_0x43af14,_0x481d90,_0x1ecdf6,_0x59b763){return _0x43af14(_0x481d90,_0x1ecdf6,_0x59b763);},'uzIyv':_0x8d06d3(0x18f),'IQrIk':function(_0x5f0076,_0x5295ad){return _0x5f0076(_0x5295ad);},'rStoW':function(_0x593e5b,_0x235c95,_0x159ab3){return _0x593e5b(_0x235c95,_0x159ab3);},'xiciC':'utf-8'};if(!existsSync(_0x472b55))return[];const _0x413ea6=[];try{const _0x6a3950=await _0x2cfd67['IZZbT'](readdir,_0x472b55,{'withFileTypes':!![]});for(const _0x39eef4 of _0x6a3950){if(_0x39eef4['isDirectory']()){const _0x21c038=_0x2cfd67['WtZgf'](join,_0x472b55,_0x39eef4[_0x8d06d3(0x162)],_0x2cfd67['uzIyv']);if(_0x2cfd67['IQrIk'](existsSync,_0x21c038)){let _0x3ef8bc=_0x39eef4['name'];try{const _0x55e178=await _0x2cfd67['rStoW'](readFile,_0x21c038,_0x2cfd67['xiciC']),_0x378381=_0x55e178[_0x8d06d3(0x19f)](/name:\s*(.+)/);_0x378381&&(_0x3ef8bc=_0x378381[0x1]['trim']());}catch{}_0x413ea6['push']({'name':_0x39eef4['name'],'displayName':_0x3ef8bc,'path':_0x21c038,'level':_0x699081});}}}}catch{return[];}return _0x413ea6;}async function getInstalledSkills(){const _0xc8f204=_0x5ae4af,_0x10056e={'ijpfX':function(_0x332388){return _0x332388();},'qERhm':_0xc8f204(0x14e),'eSEjV':function(_0x118b45,_0xdfc3,_0x43fe32){return _0x118b45(_0xdfc3,_0x43fe32);},'ZwlRG':function(_0x27aec0){return _0x27aec0();}},[_0x256155,_0x20b20a]=await Promise['all']([getSkillsFromDir(_0x10056e['ijpfX'](getProjectSkillsDir),_0x10056e[_0xc8f204(0x1a4)]),_0x10056e['eSEjV'](getSkillsFromDir,_0x10056e[_0xc8f204(0x1a2)](getUserSkillsDir),'user')]);return{'project':_0x256155,'user':_0x20b20a};}async function getEnvironments(){const _0x3ebe31=_0x5ae4af,_0x51fa2e={'gZFqC':function(_0x530a34,_0xec2b0e){return _0x530a34(_0xec2b0e);},'hTtCJ':function(_0x4d19b4,_0x3711c7,_0x4d5a18){return _0x4d19b4(_0x3711c7,_0x4d5a18);},'CMxnF':'settings.json','mSWbn':_0x3ebe31(0x144),'dRDuN':function(_0x4ac92c,_0x1647b1){return _0x4ac92c(_0x1647b1);},'Bgdzn':function(_0x1784d2,_0xf47f2c){return _0x1784d2(_0xf47f2c);},'PHwCH':function(_0x1c8ac7,_0x8c22f9){return _0x1c8ac7===_0x8c22f9;},'RPoFX':function(_0x57e1db){return _0x57e1db();}},{envNames:_0x44ca0c,activeEnv:_0x5cdcbc}=await _0x51fa2e[_0x3ebe31(0x193)](getEnvNames),_0x4caf8c=_0x51fa2e[_0x3ebe31(0x193)](getRangerDir);if(!existsSync(_0x4caf8c))return{'envs':[],'activeEnv':null};const _0x51fcc7=_0x44ca0c['map'](_0x5d600e=>{const _0x5b183a=_0x3ebe31,_0x49a8a5=_0x51fa2e['gZFqC'](getEnvDir,_0x5d600e),_0xa6983a=_0x51fa2e[_0x5b183a(0x15f)](join,_0x49a8a5,_0x51fa2e[_0x5b183a(0x14c)]),_0x9d0550=_0x51fa2e[_0x5b183a(0x15f)](join,_0x49a8a5,_0x51fa2e['mSWbn']),_0x645a9a=join(_0x49a8a5,'auth.json.enc');return{'name':_0x5d600e,'settingsPath':_0x51fa2e[_0x5b183a(0x16c)](existsSync,_0xa6983a)?_0xa6983a:'(not\x20found)','hasPlaintextAuth':_0x51fa2e[_0x5b183a(0x13a)](existsSync,_0x9d0550),'hasEncryptedAuth':_0x51fa2e['gZFqC'](existsSync,_0x645a9a),'isActive':_0x51fa2e['PHwCH'](_0x5d600e,_0x5cdcbc)};});return{'envs':_0x51fcc7,'activeEnv':_0x5cdcbc};}export async function status(){const _0x2f9662=_0x5ae4af,_0x25cb0d={'DASxl':'\x0a📊\x20Ranger\x20Status\x0a','McBuc':function(_0x338f44){return _0x338f44();},'BHosr':function(_0x2d2b3f,_0xea0e64){return _0x2d2b3f(_0xea0e64);},'FRfjN':function(_0x2f3cd5,_0x3ac9d1){return _0x2f3cd5(_0x3ac9d1);},'dVpTC':function(_0x3475a3,_0x5d1232,_0x463cd4){return _0x3475a3(_0x5d1232,_0x463cd4);},'jwSsG':function(_0x50fe1e,_0x83d45d){return _0x50fe1e(_0x83d45d);},'Tvzez':function(_0x1c4257){return _0x1c4257();},'OVPjo':function(_0x24065c,_0x376f06){return _0x24065c(_0x376f06);},'eOhZb':function(_0x347b7a){return _0x347b7a();},'xGRFY':function(_0x2ac4f8){return _0x2ac4f8();},'qAcdc':'\x0a---\x20OpenCode\x20Plugin\x20---','gSgEo':function(_0x219d8f){return _0x219d8f();},'SZHQQ':function(_0x220904,_0x518926){return _0x220904===_0x518926;},'AYErv':'configured','XtDFc':'@ranger-testing/opencode-plugin','NaMiC':'not_configured','MhJLx':'\x20\x20Not\x20configured','jEvOq':'\x20\x20Run:\x20ranger\x20setup\x20--opencode','agrEj':_0x2f9662(0x147),'YZXhl':function(_0xf5c908,_0x488042){return _0xf5c908(_0x488042);},'HUicT':_0x2f9662(0x198),'sIvsZ':_0x2f9662(0x18c),'QsYPY':'\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','WCMTW':function(_0x3b2f9d){return _0x3b2f9d();},'hmPJl':function(_0x555a51,_0x26751d){return _0x555a51>_0x26751d;},'UzKKy':_0x2f9662(0x141),'JKGaP':function(_0x56d445,_0xcfca8,_0x3b85b8){return _0x56d445(_0xcfca8,_0x3b85b8);},'WmlgR':function(_0x283d7a,_0x5bec26){return _0x283d7a(_0x5bec26);},'PLGuN':function(_0x260a60,_0x1cee7a){return _0x260a60(_0x1cee7a);},'xNIzP':_0x2f9662(0x199),'JlgZc':function(_0x37b7b8){return _0x37b7b8();},'IqmEx':_0x2f9662(0x145),'RIKYI':function(_0x544b43,_0x3c6918){return _0x544b43>_0x3c6918;},'gpqjM':function(_0x70a69f,_0x43fbfe){return _0x70a69f===_0x43fbfe;},'SJdzn':_0x2f9662(0x16b),'JwSPE':_0x2f9662(0x13b),'WqeCa':_0x2f9662(0x148),'QFVCf':_0x2f9662(0x152),'pkNhj':function(_0x786cbe,_0x43a60a){return _0x786cbe!==_0x43a60a;},'BwtUH':'(not\x20found)','aajtE':function(_0x4a2089,_0x45dc98,_0x5488f8){return _0x4a2089(_0x45dc98,_0x5488f8);}};console['log'](_0x25cb0d[_0x2f9662(0x181)]);const _0x16b23d=process['cwd'](),_0x2b00b7=_0x25cb0d['McBuc'](getRangerDir);if(!_0x25cb0d['BHosr'](existsSync,_0x2b00b7)){console[_0x2f9662(0x140)](_0x2f9662(0x15c)+link(_0x16b23d,bold(_0x25cb0d['FRfjN'](basename,_0x16b23d)))),console[_0x2f9662(0x140)]('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x2f9662(0x140)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console['log']('Root:\x20'+_0x25cb0d[_0x2f9662(0x183)](link,_0x16b23d,_0x25cb0d['jwSsG'](bold,basename(_0x16b23d))));const _0x54d6c9=_0x25cb0d[_0x2f9662(0x197)](getCurrentVersion),_0x21c334=getLatestVersion();if(_0x21c334[_0x2f9662(0x168)]&&_0x21c334['version']!==_0x54d6c9)console['log'](_0x2f9662(0x161)+_0x54d6c9+_0x2f9662(0x13e)+_0x21c334[_0x2f9662(0x168)]+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x21c334[_0x2f9662(0x168)]?console['log'](_0x2f9662(0x161)+_0x54d6c9+_0x2f9662(0x192)):console[_0x2f9662(0x140)](_0x2f9662(0x161)+_0x54d6c9);const _0x53c345=await _0x25cb0d['Tvzez'](getToken);if(_0x53c345){const _0x168479=await _0x25cb0d['BHosr'](getCurrentUser,_0x53c345);_0x168479['success']?console[_0x2f9662(0x140)](_0x2f9662(0x19c)+_0x25cb0d['OVPjo'](bold,_0x168479[_0x2f9662(0x186)]['organizationName'])):(console[_0x2f9662(0x140)]('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console[_0x2f9662(0x140)]('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x2f9662(0x140)](_0x2f9662(0x160)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env']['DEBUG']&&(console[_0x2f9662(0x140)]('API\x20Environment:\x20'+_0x25cb0d[_0x2f9662(0x166)](getCurrentEnvironment)),console[_0x2f9662(0x140)]('API\x20URL:\x20'+_0x25cb0d[_0x2f9662(0x191)](getApiBaseUrl)));console['log'](_0x25cb0d[_0x2f9662(0x177)]);const _0xb22be9=await _0x25cb0d[_0x2f9662(0x163)](getOpencodePluginStatus);if(_0x25cb0d['SZHQQ'](_0xb22be9[_0x2f9662(0x17d)],_0x25cb0d[_0x2f9662(0x164)]))console[_0x2f9662(0x140)]('\x20\x20'+bold(_0x25cb0d[_0x2f9662(0x184)])+':\x20configured'),_0xb22be9[_0x2f9662(0x175)]&&console['log']('\x20\x20'+_0xb22be9['details']);else _0xb22be9[_0x2f9662(0x17d)]===_0x25cb0d['NaMiC']?(console[_0x2f9662(0x140)](_0x25cb0d[_0x2f9662(0x1a3)]),_0xb22be9['details']&&console[_0x2f9662(0x140)]('\x20\x20'+_0xb22be9[_0x2f9662(0x175)]),console['log'](_0x25cb0d['jEvOq'])):console['log'](_0x25cb0d[_0x2f9662(0x1a8)]);console['log']('\x0a---\x20Claude\x20Code\x20Plugin\x20---');const _0x3a759e=await _0x25cb0d['YZXhl'](getPluginInfo,_0x2f9662(0x18c));if(_0x3a759e){const _0x1996b0=_0x3a759e[_0x2f9662(0x159)]||_0x25cb0d['HUicT'],_0x539575=_0x3a759e[_0x2f9662(0x16d)]?_0x2f9662(0x16d):_0x2f9662(0x153);console['log']('\x20\x20'+bold(_0x25cb0d[_0x2f9662(0x13d)])+_0x2f9662(0x14b)+_0x1996b0+',\x20'+_0x539575+')');}else console['log']('\x20\x20Not\x20installed'),console['log'](_0x25cb0d[_0x2f9662(0x176)]);console[_0x2f9662(0x140)](_0x2f9662(0x143));const {project:_0x5f5dae,user:_0x14eabc}=await _0x25cb0d[_0x2f9662(0x1a5)](getInstalledSkills),_0x482681=_0x5f5dae[_0x2f9662(0x188)](_0x4cb83d=>RANGER_MANAGED_SKILLS[_0x2f9662(0x172)](_0x4cb83d[_0x2f9662(0x162)])),_0xb6403b=_0x14eabc[_0x2f9662(0x188)](_0x484e29=>RANGER_MANAGED_SKILLS[_0x2f9662(0x172)](_0x484e29['name'])),_0x4f3122=_0x482681[_0x2f9662(0x15d)]+_0xb6403b['length'];if(_0x25cb0d[_0x2f9662(0x14a)](_0x4f3122,0x0))console['log']('No\x20skills\x20installed'),console[_0x2f9662(0x140)](_0x2f9662(0x182));else{if(_0x25cb0d['hmPJl'](_0x482681[_0x2f9662(0x15d)],0x0)){console['log'](_0x25cb0d[_0x2f9662(0x13f)]);for(const _0x401a54 of _0x482681){console['log'](_0x2f9662(0x169)+bold(_0x401a54['displayName'])+':\x20'+_0x25cb0d[_0x2f9662(0x15a)](link,_0x401a54['path'],basename(_0x401a54['path'])));}}if(_0xb6403b['length']>0x0){console['log'](_0x2f9662(0x174));for(const _0x3a9207 of _0xb6403b){console['log']('\x20\x20\x20\x20'+_0x25cb0d['WmlgR'](bold,_0x3a9207['displayName'])+':\x20'+link(_0x3a9207['path'],_0x25cb0d[_0x2f9662(0x1a1)](basename,_0x3a9207['path'])));}}}console[_0x2f9662(0x140)](_0x25cb0d['xNIzP']);const {envs:_0x581570,activeEnv:_0x5e792c}=await _0x25cb0d[_0x2f9662(0x156)](getEnvironments);let _0x42691a=[];if(_0x53c345)try{_0x42691a=await listCloudProfiles();}catch{}const _0x3accc0=_0x581570[_0x2f9662(0x15d)]+_0x42691a[_0x2f9662(0x15d)];if(_0x3accc0===0x0)console['log'](_0x25cb0d['IqmEx']),console[_0x2f9662(0x140)](_0x2f9662(0x178));else{if(_0x3accc0>0x5){const _0x1ba832=[];_0x42691a['length']>0x0&&_0x1ba832[_0x2f9662(0x167)](_0x42691a[_0x2f9662(0x15d)]+_0x2f9662(0x194)),_0x25cb0d['RIKYI'](_0x581570['length'],0x0)&&_0x1ba832[_0x2f9662(0x167)](_0x581570[_0x2f9662(0x15d)]+'\x20local'),console[_0x2f9662(0x140)](_0x3accc0+'\x20profiles\x20configured\x20('+_0x1ba832[_0x2f9662(0x190)](',\x20')+')'),_0x5e792c&&console['log']('\x20\x20Active:\x20'+_0x25cb0d[_0x2f9662(0x146)](bold,_0x5e792c)),console['log'](_0x2f9662(0x158));}else{for(const _0x524267 of _0x42691a){const _0x3f6eaa=_0x25cb0d['gpqjM'](_0x524267[_0x2f9662(0x162)],_0x5e792c)?_0x25cb0d['SJdzn']:'';console['log']('\x20\x20'+bold(_0x524267[_0x2f9662(0x162)])+'\x20[cloud]'+_0x3f6eaa);const _0x1ab428=_0x524267['sessionUpdatedAt']?'cached\x20(updated\x20'+_0x524267['sessionUpdatedAt']+')':_0x25cb0d['JwSPE'];console['log'](_0x2f9662(0x170)+_0x1ab428);}const _0xa6ae14=new Set(_0x42691a[_0x2f9662(0x17e)](_0x13abc6=>_0x13abc6['name']));for(const _0x63250e of _0x581570){if(_0xa6ae14['has'](_0x63250e['name']))continue;const _0x479539=_0x63250e['isActive']?_0x2f9662(0x16b):'',_0x276c7e=_0x63250e[_0x2f9662(0x154)]?_0x25cb0d['WqeCa']:_0x63250e['hasPlaintextAuth']?_0x25cb0d['QFVCf']:'none';console[_0x2f9662(0x140)]('\x20\x20'+bold(_0x63250e['name'])+'\x20[local]'+_0x479539),console[_0x2f9662(0x140)]('\x20\x20\x20\x20Auth:\x20'+_0x276c7e),_0x25cb0d[_0x2f9662(0x16a)](_0x63250e['settingsPath'],_0x25cb0d['BwtUH'])&&console['log'](_0x2f9662(0x155)+_0x25cb0d['aajtE'](link,_0x63250e[_0x2f9662(0x18b)],basename(_0x63250e['settingsPath'])));}if(!_0x5e792c){console['log']('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x1ee038=[..._0x42691a['map'](_0x4aa9a3=>_0x4aa9a3['name']),..._0x581570[_0x2f9662(0x188)](_0xb3cd92=>!_0xa6ae14[_0x2f9662(0x13c)](_0xb3cd92['name']))['map'](_0x1a0804=>_0x1a0804['name'])];console[_0x2f9662(0x140)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x1ee038['join'](',\x20')+')');}}}console['log']('');}
|
|
1
|
+
const _0x76efdf=_0x7174;(function(_0x953d5a,_0xddeb7c){const _0x37cf6f=_0x7174,_0x433bb9=_0x953d5a();while(!![]){try{const _0x148422=-parseInt(_0x37cf6f(0x100))/0x1+parseInt(_0x37cf6f(0xdb))/0x2+-parseInt(_0x37cf6f(0xf5))/0x3*(parseInt(_0x37cf6f(0xae))/0x4)+parseInt(_0x37cf6f(0x92))/0x5+-parseInt(_0x37cf6f(0x102))/0x6*(parseInt(_0x37cf6f(0xf8))/0x7)+parseInt(_0x37cf6f(0x106))/0x8+-parseInt(_0x37cf6f(0x98))/0x9;if(_0x148422===_0xddeb7c)break;else _0x433bb9['push'](_0x433bb9['shift']());}catch(_0x1cdb63){_0x433bb9['push'](_0x433bb9['shift']());}}}(_0x2e21,0x667f9));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';function _0x7174(_0x2b3f66,_0x41db2a){_0x2b3f66=_0x2b3f66-0x90;const _0x2e21a1=_0x2e21();let _0x71749e=_0x2e21a1[_0x2b3f66];return _0x71749e;}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';function _0x2e21(){const _0x2db2a2=['plaintext','145250RnXiAA','settingsPath','12MvVQze','ahySq','\x20cloud','version','4648048pcIgLk','MxzOn','LtAAz','details','utf-8','147320PStCXO','DEBUG','@ranger-testing/opencode-plugin','ejGMT','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','has','2807748CoZNcg','\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20','\x1b]8;;\x07','rlEEV','\x1b[1m','includes','xqznc','not_installed','\x0a---\x20Profiles\x20---','VwRIX','CUroS','toString','log','No\x20skills\x20installed','sessionUpdatedAt',':\x20installed\x20(','KXZZh','SKILL.md','none','\x20(up\x20to\x20date)','jzBkf','VjrmO','292zGzBkn','parse','\x20\x20Run:\x20ranger\x20update','WyCvy','join','\x20\x20User-level:','ignore',':\x20configured','RRBMu','\x20\x20\x20\x20Settings:\x20','\x20plugin(s)\x20configured','zxojj','unknown','match','\x0a\x20\x20No\x20active\x20profile\x20set','IjBAL','length','dBuAf','ranger@trailhead','stdout','\x20\x20\x20\x20','hasPlaintextAuth','data','Root:\x20','configured','opencode','\x0a---\x20Claude\x20Code\x20Plugin\x20---','ETLEU','isActive','Organization:\x20','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','isArray','\x0a---\x20OpenCode\x20Plugin\x20---','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','JnAZS','filter','not_configured','scope','vvJnd','\x1b]8;;file://','\x0a---\x20Skills\x20---','TAPCf','XqGGR','DcajM','PodDO','1323012rynncm','API\x20Environment:\x20','\x20(latest:\x20','rPgYS','udhJv','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','some','NptYm','name','CLAvj','status','\x20\x20Project-level:','AVRQH','config','push','map','\x20\x20Run:\x20ranger\x20setup\x20[token]','close','TRsoz','\x20[cloud]','disabled','UlDMb','pXhsx','path','wBzum','\x20profiles\x20configured\x20(','13557dnVNjQ','\x20\x20\x20\x20Session:\x20','Version:\x20','227619xuNleE','stderr','user','pnprT','pnhqO','\x20[local]','\x20local'];_0x2e21=function(){return _0x2db2a2;};return _0x2e21();}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=_0x3fa993=>_0x76efdf(0x9c)+_0x3fa993+'\x1b[0m',link=(_0x55a8a9,_0x2e1021)=>_0x76efdf(0xd5)+_0x55a8a9+'\x07'+(_0x2e1021||_0x55a8a9)+_0x76efdf(0x9a);async function getOpencodePluginStatus(){const _0x18246b=_0x76efdf,_0x9cb14f={'PzrjF':function(_0x3009fb,_0xa9ec7a){return _0x3009fb(_0xa9ec7a);},'WyCvy':'not_installed','ImjpO':_0x18246b(0xe8),'DjUUl':'pipe','PodDO':_0x18246b(0xc4),'CLAvj':'error'};return new Promise(_0x272711=>{const _0x2d812d=_0x18246b,_0xa45b31={'HpvyF':function(_0x23d159,_0x569efa){return _0x23d159!==_0x569efa;},'sFywU':function(_0x5f116b,_0x2d8fcb){return _0x5f116b(_0x2d8fcb);},'ejGMT':function(_0x1c008a,_0x1e9d38){return _0x1c008a>_0x1e9d38;},'jzBkf':'not_configured','IjBAL':function(_0x3f7a92,_0x42a8a6){return _0x3f7a92(_0x42a8a6);}},_0x17752b=spawn(_0x2d812d(0xc7),['debug',_0x9cb14f['ImjpO']],{'stdio':[_0x2d812d(0xb4),_0x9cb14f['DjUUl'],_0x9cb14f['DjUUl']]});let _0x5e52e5='';_0x17752b[_0x2d812d(0xc1)]?.['on'](_0x2d812d(0xc4),_0x4e7145=>{_0x5e52e5+=_0x4e7145['toString']();}),_0x17752b[_0x2d812d(0xf9)]?.['on'](_0x9cb14f[_0x2d812d(0xda)],_0x453ef9=>{const _0x187594=_0x2d812d;_0x5e52e5+=_0x453ef9[_0x187594(0xa3)]();}),_0x17752b['on'](_0x9cb14f[_0x2d812d(0xe4)],()=>{const _0x468368=_0x2d812d;_0x9cb14f['PzrjF'](_0x272711,{'status':_0x9cb14f[_0x468368(0xb1)]});}),_0x17752b['on'](_0x2d812d(0xec),_0x2fd30d=>{const _0x54dcb7=_0x2d812d;if(_0x2fd30d!==0x0){_0xa45b31['sFywU'](_0x272711,{'status':_0x54dcb7(0x9f)});return;}const _0x85c930=_0x5e52e5['trim']();let _0x25e36a=null;if(_0x85c930)try{_0x25e36a=JSON['parse'](_0x85c930);}catch{const _0x4d37b4=_0x85c930[_0x54dcb7(0xbb)](/\{[\s\S]*\}$/);if(_0x4d37b4)try{_0x25e36a=JSON[_0x54dcb7(0xaf)](_0x4d37b4[0x0]);}catch{_0x25e36a=null;}}const _0x1fd20e=Array[_0x54dcb7(0xcd)](_0x25e36a?.['plugin'])?_0x25e36a?.['plugin']:[],_0x295439=_0x1fd20e[_0x54dcb7(0xe1)](_0xa1aa52=>{const _0x5abfe2=_0x54dcb7;if(_0xa45b31['HpvyF'](typeof _0xa1aa52,'string'))return![];return _0xa1aa52['includes'](_0x5abfe2(0x94))||_0xa1aa52[_0x5abfe2(0x9d)]('opencode-plugin');});if(_0x295439){_0x272711({'status':'configured','details':_0x1fd20e['length']>0x0?_0x1fd20e[_0x54dcb7(0xbe)]+_0x54dcb7(0xb8):undefined});return;}if(_0xa45b31[_0x54dcb7(0x95)](_0x1fd20e[_0x54dcb7(0xbe)],0x0)){_0x272711({'status':_0xa45b31[_0x54dcb7(0xac)],'details':_0x1fd20e[_0x54dcb7(0xbe)]+'\x20plugin(s)\x20configured'});return;}_0xa45b31[_0x54dcb7(0xbd)](_0x272711,{'status':_0x54dcb7(0xd2)});});});}async function getSkillsFromDir(_0x28ce86,_0x1ba690){const _0x19c6ce=_0x76efdf,_0x3a1c18={'rlEEV':function(_0x5ab34a,_0x2e0ec6,_0x552a3f){return _0x5ab34a(_0x2e0ec6,_0x552a3f);},'GWARo':_0x19c6ce(0xa9),'BQcnL':function(_0x43e4b0,_0x46a37e){return _0x43e4b0(_0x46a37e);},'blbmz':_0x19c6ce(0x91)};if(!existsSync(_0x28ce86))return[];const _0x50420f=[];try{const _0x4e3f9e=await _0x3a1c18[_0x19c6ce(0x9b)](readdir,_0x28ce86,{'withFileTypes':!![]});for(const _0x527598 of _0x4e3f9e){if(_0x527598['isDirectory']()){const _0x4b5eaf=join(_0x28ce86,_0x527598['name'],_0x3a1c18['GWARo']);if(_0x3a1c18['BQcnL'](existsSync,_0x4b5eaf)){let _0x44da6f=_0x527598[_0x19c6ce(0xe3)];try{const _0xe4e69d=await _0x3a1c18[_0x19c6ce(0x9b)](readFile,_0x4b5eaf,_0x3a1c18['blbmz']),_0x13f5b9=_0xe4e69d[_0x19c6ce(0xbb)](/name:\s*(.+)/);_0x13f5b9&&(_0x44da6f=_0x13f5b9[0x1]['trim']());}catch{}_0x50420f[_0x19c6ce(0xe9)]({'name':_0x527598[_0x19c6ce(0xe3)],'displayName':_0x44da6f,'path':_0x4b5eaf,'level':_0x1ba690});}}}}catch{return[];}return _0x50420f;}async function getInstalledSkills(){const _0x53c46e=_0x76efdf,_0x52e195={'CUroS':function(_0x4ecc50,_0x3119ac,_0x533ad7){return _0x4ecc50(_0x3119ac,_0x533ad7);},'ahySq':function(_0x3a83b9){return _0x3a83b9();},'LtAAz':'project'},[_0xcae550,_0x3625e2]=await Promise['all']([_0x52e195[_0x53c46e(0xa2)](getSkillsFromDir,_0x52e195[_0x53c46e(0x103)](getProjectSkillsDir),_0x52e195[_0x53c46e(0x108)]),_0x52e195['CUroS'](getSkillsFromDir,getUserSkillsDir(),_0x53c46e(0xfa))]);return{'project':_0xcae550,'user':_0x3625e2};}async function getEnvironments(){const _0x5e5f07=_0x76efdf,_0x4d43d5={'pnprT':function(_0x154cbd,_0x599de4,_0x36eded){return _0x154cbd(_0x599de4,_0x36eded);},'KXZZh':'settings.json','dBuAf':'auth.json','RVFkB':'(not\x20found)','TRsoz':function(_0x439058,_0x237136){return _0x439058(_0x237136);},'DcajM':function(_0x4d88d0,_0xacf004){return _0x4d88d0===_0xacf004;},'TAPCf':function(_0x49f056){return _0x49f056();}},{envNames:_0x512a37,activeEnv:_0x2f8c39}=await getEnvNames(),_0x1a9c04=_0x4d43d5[_0x5e5f07(0xd7)](getRangerDir);if(!_0x4d43d5[_0x5e5f07(0xed)](existsSync,_0x1a9c04))return{'envs':[],'activeEnv':null};const _0x15f659=_0x512a37['map'](_0x320c82=>{const _0x3fbe18=_0x5e5f07,_0x1e53cb=getEnvDir(_0x320c82),_0x139712=_0x4d43d5[_0x3fbe18(0xfb)](join,_0x1e53cb,_0x4d43d5[_0x3fbe18(0xa8)]),_0x2b176b=_0x4d43d5['pnprT'](join,_0x1e53cb,_0x4d43d5[_0x3fbe18(0xbf)]),_0x372c9f=join(_0x1e53cb,'auth.json.enc');return{'name':_0x320c82,'settingsPath':existsSync(_0x139712)?_0x139712:_0x4d43d5['RVFkB'],'hasPlaintextAuth':existsSync(_0x2b176b),'hasEncryptedAuth':_0x4d43d5[_0x3fbe18(0xed)](existsSync,_0x372c9f),'isActive':_0x4d43d5[_0x3fbe18(0xd9)](_0x320c82,_0x2f8c39)};});return{'envs':_0x15f659,'activeEnv':_0x2f8c39};}export async function status(){const _0x2533db=_0x76efdf,_0x8720eb={'VwRIX':'\x0a📊\x20Ranger\x20Status\x0a','vZCTh':function(_0x2e24f8){return _0x2e24f8();},'JnAZS':function(_0x55c252,_0x44241d,_0x218817){return _0x55c252(_0x44241d,_0x218817);},'ETLEU':function(_0x1fb366,_0x1bfca7,_0x44f474){return _0x1fb366(_0x1bfca7,_0x44f474);},'zxojj':function(_0x14a967,_0xf42ac4){return _0x14a967(_0xf42ac4);},'IZhxO':function(_0x961d62,_0x5f033a){return _0x961d62(_0x5f033a);},'xqznc':function(_0x4a4654){return _0x4a4654();},'udhJv':_0x2533db(0xce),'XqGGR':_0x2533db(0xc6),'pXhsx':function(_0x4bb9c0,_0x2f08e4){return _0x4bb9c0(_0x2f08e4);},'MxzOn':'\x20\x20Not\x20configured','UlDMb':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','qZZSd':_0x2533db(0xba),'rPgYS':_0x2533db(0xef),'pnhqO':function(_0x39d36e,_0x4f39ca){return _0x39d36e(_0x4f39ca);},'rGHfR':_0x2533db(0xa0),'VjrmO':function(_0x5b6d8c){return _0x5b6d8c();},'AVRQH':function(_0x37390d,_0x32a081){return _0x37390d+_0x32a081;},'vvJnd':'No\x20profiles\x20configured','HEPFq':function(_0x351431,_0x11782d){return _0x351431===_0x11782d;},'wBzum':'\x20(active)','RRBMu':'no\x20session','YnzBA':'encrypted','NptYm':_0x2533db(0xaa)};console['log'](_0x8720eb[_0x2533db(0xa1)]);const _0x3f30fc=process['cwd'](),_0x545e69=_0x8720eb['vZCTh'](getRangerDir);if(!existsSync(_0x545e69)){console['log'](_0x2533db(0xc5)+_0x8720eb['JnAZS'](link,_0x3f30fc,bold(basename(_0x3f30fc)))),console['log']('\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.'),console[_0x2533db(0xa4)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x2533db(0xa4)]('Root:\x20'+_0x8720eb[_0x2533db(0xc9)](link,_0x3f30fc,bold(basename(_0x3f30fc))));const _0x2b6c15=getCurrentVersion(),_0x39c0d6=getLatestVersion();if(_0x39c0d6['version']&&_0x39c0d6[_0x2533db(0x105)]!==_0x2b6c15)console[_0x2533db(0xa4)]('Version:\x20'+_0x2b6c15+_0x2533db(0xdd)+_0x39c0d6['version']+')'),console['log'](_0x2533db(0xb0));else _0x39c0d6[_0x2533db(0x105)]?console['log']('Version:\x20'+_0x2b6c15+_0x2533db(0xab)):console['log'](_0x2533db(0xf7)+_0x2b6c15);const _0x17c330=await getToken();if(_0x17c330){const _0x4a6272=await _0x8720eb[_0x2533db(0xb9)](getCurrentUser,_0x17c330);_0x4a6272['success']?console[_0x2533db(0xa4)](_0x2533db(0xcb)+_0x8720eb['IZhxO'](bold,_0x4a6272['user']['organizationName'])):(console[_0x2533db(0xa4)](_0x2533db(0xcf)),console['log'](_0x2533db(0xeb)));}else console[_0x2533db(0xa4)]('API\x20Token:\x20✗\x20Not\x20found'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process['env'][_0x2533db(0x93)]&&(console[_0x2533db(0xa4)](_0x2533db(0xdc)+_0x8720eb['xqznc'](getCurrentEnvironment)),console['log']('API\x20URL:\x20'+getApiBaseUrl()));console[_0x2533db(0xa4)](_0x8720eb[_0x2533db(0xdf)]);const _0x72aa85=await getOpencodePluginStatus();if(_0x72aa85[_0x2533db(0xe5)]===_0x8720eb[_0x2533db(0xd8)])console[_0x2533db(0xa4)]('\x20\x20'+_0x8720eb[_0x2533db(0xf1)](bold,'@ranger-testing/opencode-plugin')+_0x2533db(0xb5)),_0x72aa85['details']&&console[_0x2533db(0xa4)]('\x20\x20'+_0x72aa85[_0x2533db(0x90)]);else _0x72aa85[_0x2533db(0xe5)]==='not_configured'?(console[_0x2533db(0xa4)](_0x8720eb[_0x2533db(0x107)]),_0x72aa85['details']&&console['log']('\x20\x20'+_0x72aa85['details']),console['log']('\x20\x20Run:\x20ranger\x20setup\x20--opencode')):console[_0x2533db(0xa4)](_0x8720eb[_0x2533db(0xf0)]);console['log'](_0x2533db(0xc8));const _0x1115ce=await _0x8720eb[_0x2533db(0xb9)](getPluginInfo,'ranger@trailhead');if(_0x1115ce){const _0x103fc5=_0x1115ce[_0x2533db(0xd3)]||_0x8720eb['qZZSd'],_0x386afa=_0x1115ce['enabled']?'enabled':_0x8720eb[_0x2533db(0xde)];console[_0x2533db(0xa4)]('\x20\x20'+_0x8720eb['IZhxO'](bold,_0x2533db(0xc0))+_0x2533db(0xa7)+_0x103fc5+',\x20'+_0x386afa+')');}else console['log']('\x20\x20Not\x20installed'),console[_0x2533db(0xa4)](_0x2533db(0x96));console[_0x2533db(0xa4)](_0x2533db(0xd6));const {project:_0x139dcf,user:_0x5c56e3}=await getInstalledSkills(),_0x3187ff=_0x139dcf[_0x2533db(0xd1)](_0x492019=>RANGER_MANAGED_SKILLS['includes'](_0x492019['name'])),_0x5f396a=_0x5c56e3['filter'](_0x37b6b6=>RANGER_MANAGED_SKILLS[_0x2533db(0x9d)](_0x37b6b6['name'])),_0x2fc8a1=_0x3187ff['length']+_0x5f396a[_0x2533db(0xbe)];if(_0x2fc8a1===0x0)console['log'](_0x2533db(0xa5)),console['log']('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x3187ff['length']>0x0){console[_0x2533db(0xa4)](_0x2533db(0xe6));for(const _0x2f28e1 of _0x3187ff){console[_0x2533db(0xa4)](_0x2533db(0xc2)+bold(_0x2f28e1['displayName'])+':\x20'+link(_0x2f28e1[_0x2533db(0xf2)],basename(_0x2f28e1['path'])));}}if(_0x5f396a['length']>0x0){console['log'](_0x2533db(0xb3));for(const _0x22b5f0 of _0x5f396a){console['log']('\x20\x20\x20\x20'+_0x8720eb['zxojj'](bold,_0x22b5f0['displayName'])+':\x20'+_0x8720eb[_0x2533db(0xd0)](link,_0x22b5f0['path'],_0x8720eb[_0x2533db(0xfc)](basename,_0x22b5f0['path'])));}}}console[_0x2533db(0xa4)](_0x8720eb['rGHfR']);const {envs:_0xa45747,activeEnv:_0xf53866}=await _0x8720eb[_0x2533db(0x9e)](getEnvironments);let _0x3700e8=[];if(_0x17c330)try{_0x3700e8=await _0x8720eb[_0x2533db(0xad)](listCloudProfiles);}catch{}const _0x3211a0=_0x8720eb[_0x2533db(0xe7)](_0xa45747['length'],_0x3700e8[_0x2533db(0xbe)]);if(_0x3211a0===0x0)console['log'](_0x8720eb[_0x2533db(0xd4)]),console['log'](_0x2533db(0xcc));else{if(_0x3211a0>0x5){const _0x25beb0=[];_0x3700e8['length']>0x0&&_0x25beb0[_0x2533db(0xe9)](_0x3700e8[_0x2533db(0xbe)]+_0x2533db(0x104)),_0xa45747[_0x2533db(0xbe)]>0x0&&_0x25beb0['push'](_0xa45747['length']+_0x2533db(0xfe)),console[_0x2533db(0xa4)](_0x3211a0+_0x2533db(0xf4)+_0x25beb0['join'](',\x20')+')'),_0xf53866&&console[_0x2533db(0xa4)]('\x20\x20Active:\x20'+_0x8720eb[_0x2533db(0xb9)](bold,_0xf53866)),console[_0x2533db(0xa4)](_0x2533db(0xe0));}else{for(const _0x25089e of _0x3700e8){const _0x2ce4b8=_0x8720eb['HEPFq'](_0x25089e['name'],_0xf53866)?_0x8720eb[_0x2533db(0xf3)]:'';console[_0x2533db(0xa4)]('\x20\x20'+bold(_0x25089e['name'])+_0x2533db(0xee)+_0x2ce4b8);const _0x5ac1ed=_0x25089e['sessionUpdatedAt']?'cached\x20(updated\x20'+_0x25089e[_0x2533db(0xa6)]+')':_0x8720eb[_0x2533db(0xb6)];console[_0x2533db(0xa4)](_0x2533db(0xf6)+_0x5ac1ed);}const _0x37b588=new Set(_0x3700e8[_0x2533db(0xea)](_0x5c8911=>_0x5c8911[_0x2533db(0xe3)]));for(const _0x376b38 of _0xa45747){if(_0x37b588['has'](_0x376b38['name']))continue;const _0x4de4e1=_0x376b38[_0x2533db(0xca)]?_0x8720eb[_0x2533db(0xf3)]:'',_0x19280d=_0x376b38['hasEncryptedAuth']?_0x8720eb['YnzBA']:_0x376b38[_0x2533db(0xc3)]?_0x2533db(0xff):_0x8720eb[_0x2533db(0xe2)];console[_0x2533db(0xa4)]('\x20\x20'+bold(_0x376b38[_0x2533db(0xe3)])+_0x2533db(0xfd)+_0x4de4e1),console[_0x2533db(0xa4)]('\x20\x20\x20\x20Auth:\x20'+_0x19280d),_0x376b38['settingsPath']!=='(not\x20found)'&&console['log'](_0x2533db(0xb7)+link(_0x376b38['settingsPath'],basename(_0x376b38[_0x2533db(0x101)])));}if(!_0xf53866){console['log'](_0x2533db(0xbc));const _0x51bed8=[..._0x3700e8['map'](_0x888873=>_0x888873[_0x2533db(0xe3)]),..._0xa45747['filter'](_0x50c91e=>!_0x37b588[_0x2533db(0x97)](_0x50c91e[_0x2533db(0xe3)]))['map'](_0x57d54c=>_0x57d54c[_0x2533db(0xe3)])];console['log'](_0x2533db(0x99)+_0x51bed8[_0x2533db(0xb2)](',\x20')+')');}}}console['log']('');}
|