@ranger-testing/ranger-cli 3.1.1 → 3.1.2-alpha.059c7a3-40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/cli.js +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/authEncrypt.js +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/config.js +1 -1
- package/build/commands/deleteProfile.js +1 -1
- package/build/commands/env.js +1 -1
- package/build/commands/feature.js +1 -1
- package/build/commands/hook.js +1 -1
- package/build/commands/hooks/autoPrompt.js +1 -1
- package/build/commands/hooks/disable.js +1 -1
- package/build/commands/hooks/enable.js +1 -1
- package/build/commands/hooks/exitPlanMode.js +1 -1
- package/build/commands/hooks/index.js +1 -1
- package/build/commands/hooks/output.js +1 -1
- package/build/commands/hooks/planReminder.js +1 -1
- package/build/commands/hooks/planStart.js +1 -1
- package/build/commands/hooks/postEdit.js +1 -1
- package/build/commands/hooks/preCompact.js +1 -1
- package/build/commands/hooks/sessionEnd.js +1 -1
- package/build/commands/hooks/sessionStart.js +1 -1
- package/build/commands/hooks/stopHook.js +1 -1
- package/build/commands/index.js +1 -1
- package/build/commands/login.js +1 -1
- package/build/commands/mcpBootstrap.js +1 -1
- package/build/commands/migrateProfile.js +1 -1
- package/build/commands/setup/claude.js +1 -1
- package/build/commands/setup/opencode.js +1 -1
- package/build/commands/setupCi.js +1 -1
- package/build/commands/skillup.js +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/status.js +1 -1
- package/build/commands/update.js +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/utils/activeProfile.js +1 -1
- package/build/commands/utils/agentEnv.js +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/claudeConfig.js +1 -1
- package/build/commands/utils/claudeOverrideSettings.js +1 -1
- package/build/commands/utils/claudePlugin.js +1 -1
- package/build/commands/utils/cloudProfile.js +1 -1
- package/build/commands/utils/cloudProfileSession.js +1 -1
- package/build/commands/utils/crypto.js +1 -1
- package/build/commands/utils/desirePathLog.js +1 -1
- package/build/commands/utils/deviceAuth.js +1 -1
- package/build/commands/utils/environment.js +1 -1
- package/build/commands/utils/featureApi.js +1 -1
- package/build/commands/utils/fixWebmDuration.js +1 -1
- package/build/commands/utils/gitTracked.js +1 -1
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/legacyWarning.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/matchAuthEnvironment.js +1 -1
- package/build/commands/utils/mcpImageBase64.js +1 -1
- package/build/commands/utils/model.js +1 -1
- package/build/commands/utils/novaActCli.js +1 -1
- package/build/commands/utils/opencodeConfig.js +1 -1
- package/build/commands/utils/organizationEnvApi.js +1 -1
- package/build/commands/utils/playwrightCli.js +1 -1
- package/build/commands/utils/profileMessages.js +1 -1
- package/build/commands/utils/profileSetupBanner.js +1 -1
- package/build/commands/utils/projectsConfig.js +1 -1
- package/build/commands/utils/rangerConfig.js +1 -1
- package/build/commands/utils/rangerRoot.js +1 -1
- package/build/commands/utils/rangerwrightCli.js +1 -1
- package/build/commands/utils/resolveProfileContext.js +1 -1
- package/build/commands/utils/resolveProfileUrl.js +1 -1
- package/build/commands/utils/retry.js +1 -1
- package/build/commands/utils/sessionCache.js +1 -1
- package/build/commands/utils/settings.js +1 -1
- package/build/commands/utils/skillContent.js +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/stitchWebmFiles.js +1 -1
- package/build/commands/utils/telemetry.js +1 -1
- package/build/commands/utils/tokenRefresh.js +1 -1
- package/build/commands/utils/traceSnapshotMapper.js +1 -1
- package/build/commands/utils/tunnelClient.js +1 -1
- package/build/commands/utils/userApi.js +1 -1
- package/build/commands/utils/version.js +1 -1
- package/build/commands/verifyFeature.js +1 -1
- package/build/commands/verifyFeatureCli.js +1 -1
- package/build/commands/verifyFeatureNovaCli.js +1 -1
- package/build/commands/verifyFeatureRangerwrightCli.js +1 -1
- package/package.json +1 -1
package/build/commands/login.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x20c0(){const _0x4a3dd8=['CnkFa','Re-authenticating\x20via\x20MCP\x20bootstrap...','message','668872CzbRiB','log','489444PKLkQq','165QRVBkR','6586omKPEK','success','160422IewQBl','user','7420KnRZJZ','93556WOnXip','organizationName','1014759UzOabf','\x0a✅\x20API\x20key\x20stored\x20successfully','35BnXqxj'];_0x20c0=function(){return _0x4a3dd8;};return _0x20c0();}(function(_0x1f06c3,_0x1d1c23){const _0x2612cc=_0x594e,_0x25b852=_0x1f06c3();while(!![]){try{const _0x5b1c9f=parseInt(_0x2612cc(0x1c4))/0x1+-parseInt(_0x2612cc(0x1bf))/0x2+parseInt(_0x2612cc(0x1bd))/0x3+parseInt(_0x2612cc(0x1c3))/0x4*(-parseInt(_0x2612cc(0x1be))/0x5)+parseInt(_0x2612cc(0x1c1))/0x6*(parseInt(_0x2612cc(0x1c8))/0x7)+-parseInt(_0x2612cc(0x1cc))/0x8+-parseInt(_0x2612cc(0x1c6))/0x9;if(_0x5b1c9f===_0x1d1c23)break;else _0x25b852['push'](_0x25b852['shift']());}catch(_0x1452c8){_0x25b852['push'](_0x25b852['shift']());}}}(_0x20c0,0x1f9f1));import{runDeviceAuthFlow}from'./utils/deviceAuth.js';function _0x594e(_0x39ed4d,_0x418702){_0x39ed4d=_0x39ed4d-0x1bd;const _0x20c0e5=_0x20c0();let _0x594e2c=_0x20c0e5[_0x39ed4d];return _0x594e2c;}import{getCurrentUser}from'./utils/userApi.js';import{getMcpAuthOrigin,mcpBootstrap}from'./mcpBootstrap.js';import{isInteractive}from'./utils/cloudProfileSession.js';export async function login(){const _0x8e8dbe=_0x594e,_0x9e14ea={'CnkFa':function(_0x4e95ee){return _0x4e95ee();},'zKUKp':function(_0x48392b,_0x245bec){return _0x48392b(_0x245bec);},'VZEVv':_0x8e8dbe(0x1c7)},_0x314217=await _0x9e14ea['CnkFa'](getMcpAuthOrigin);if(_0x314217){console[_0x8e8dbe(0x1cd)](_0x8e8dbe(0x1ca)),await mcpBootstrap();return;}if(!_0x9e14ea[_0x8e8dbe(0x1c9)](isInteractive))throw new Error('Login\x20requires\x20an\x20interactive\x20terminal.\x20In\x20CI,\x20use:\x20ranger\x20setup\x20[token]\x20or\x20set\x20RANGER_CLI_TOKEN.');try{const _0x3bdeca=await runDeviceAuthFlow(),_0x1872fc=await _0x9e14ea['zKUKp'](getCurrentUser,_0x3bdeca);_0x1872fc[_0x8e8dbe(0x1c0)]?console['log']('\x0a✅\x20Logged\x20in\x20to\x20'+_0x1872fc[_0x8e8dbe(0x1c2)][_0x8e8dbe(0x1c5)]):console[_0x8e8dbe(0x1cd)](_0x9e14ea['VZEVv']);}catch(_0x8ad809){throw new Error('Login\x20failed:\x20'+(_0x8ad809 instanceof Error?_0x8ad809[_0x8e8dbe(0x1cb)]:_0x8ad809));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x10f084=_0x4402;(function(_0x4e4a77,_0x7301a3){const _0x5a781a=_0x4402,_0x136048=_0x4e4a77();while(!![]){try{const _0x23405d=parseInt(_0x5a781a(0x211))/0x1+parseInt(_0x5a781a(0x218))/0x2+parseInt(_0x5a781a(0x21c))/0x3+-parseInt(_0x5a781a(0x1c8))/0x4+parseInt(_0x5a781a(0x1e5))/0x5*(parseInt(_0x5a781a(0x1ee))/0x6)+parseInt(_0x5a781a(0x219))/0x7*(parseInt(_0x5a781a(0x1b1))/0x8)+-parseInt(_0x5a781a(0x1ff))/0x9;if(_0x23405d===_0x7301a3)break;else _0x136048['push'](_0x136048['shift']());}catch(_0x46992a){_0x136048['push'](_0x136048['shift']());}}}(_0xdc2b,0x36353));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(),_0x10f084(0x202),'mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),'.ranger','auth-origin.txt');function _0x4402(_0x5cca37,_0x3a07c9){_0x5cca37=_0x5cca37-0x1a1;const _0xdc2b41=_0xdc2b();let _0x440201=_0xdc2b41[_0x5cca37];return _0x440201;}export async function getMcpAuthOrigin(){const _0x197dab=_0x10f084,_0x46be82={'emBwD':'utf-8','sYAPN':function(_0x7b05ce,_0x579d2d){return _0x7b05ce||_0x579d2d;}};try{const _0x572036=(await readFile(AUTH_ORIGIN_PATH,_0x46be82[_0x197dab(0x1e6)]))[_0x197dab(0x203)]();return _0x46be82[_0x197dab(0x1c6)](_0x572036,null);}catch{return null;}}export async function mcpBootstrap(){const _0x360f8d=_0x10f084,_0x446847={'vmKNa':'proxied','PQJqM':function(_0x2cb595){return _0x2cb595();},'UTVdH':_0x360f8d(0x221),'LIvRa':function(_0x34efc9,_0x4c934d,_0x56ade1){return _0x34efc9(_0x4c934d,_0x56ade1);}},_0x58d9a5=getMcpAuthUrl();currentOrigin=_0x58d9a5;const _0x2d61fe=process[_0x360f8d(0x1e1)]['isTTY']??![];console['log'](_0x360f8d(0x214)+_0x58d9a5+'\x0a');const _0x403af9=await tryUnauthenticated(_0x58d9a5);let _0x577bd1=null;if(_0x403af9===_0x446847['vmKNa'])_0x577bd1='';else{_0x577bd1=await _0x446847['PQJqM'](loadCachedToken);if(!_0x577bd1){if(!_0x2d61fe)throw new Error('MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a'+_0x446847[_0x360f8d(0x1e9)]);_0x577bd1=await oauthFlow(_0x58d9a5);}}await _0x446847[_0x360f8d(0x1c2)](callGetCliToken,_0x58d9a5,_0x577bd1);}async function tryUnauthenticated(_0x3d65c3){const _0x1008ec=_0x10f084,_0x288010={'yTvVs':_0x1008ec(0x1dd),'tOYTj':'application/json,\x20text/event-stream','HQNTO':'ranger-cli'},_0x2b9a70=await fetch(_0x3d65c3,{'method':_0x288010['yTvVs'],'headers':{'Content-Type':_0x1008ec(0x1c9),'Accept':_0x288010[_0x1008ec(0x1be)]},'body':JSON[_0x1008ec(0x1bf)]({'jsonrpc':_0x1008ec(0x21d),'id':0x1,'method':'initialize','params':{'protocolVersion':_0x1008ec(0x207),'capabilities':{},'clientInfo':{'name':_0x288010[_0x1008ec(0x1c0)],'version':_0x1008ec(0x206)}}})});if(_0x2b9a70['ok'])return await _0x2b9a70[_0x1008ec(0x229)](),'proxied';if(_0x2b9a70[_0x1008ec(0x1f9)]===0x191)return await _0x2b9a70['text'](),'needs-oauth';const _0x2b93cd=await _0x2b9a70['text']();throw new Error(_0x1008ec(0x1f6)+_0x2b9a70['status']+':\x20'+_0x2b93cd);}class OAuthTimeoutError extends Error{constructor(_0x24c7f4){const _0x47842c=_0x10f084,_0x3986dd={'FRKFW':'OAuthTimeoutError'};super(_0x24c7f4),this['name']=_0x3986dd[_0x47842c(0x1ec)];}}function _0xdc2b(){const _0x23c3f2=['set','clientId','LwvmP','vGSTw','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','rpArx','type','access_token','UtRZY','632568hErEtQ','EMmzn','state','resource','aCquw','/.well-known/oauth-protected-resource','GZBYS','darwin','oYTHJ','onMZU','registration_endpoint','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','qKxEN','tOYTj','stringify','HQNTO','result','LIvRa','dUmez','end','CjYKs','sYAPN','If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a','1009520sftHFG','application/json','get','127.0.0.1','token_endpoint','teGUP','tools/call','Requesting\x20CLI\x20token...','OhIbX','ZhDnv','json','UMdYO','slice','refreshToken','PWlso','expiresAt','content-type','client_id','Ynyfm','log','xdg-open','POST','headers','KddaG','mIvYR','stdout','Token\x20exchange\x20failed:\x20','xyglE','error_description','11190PKCBWP','emBwD','TSgtW','client_secret','UTVdH','bMuqG','authorization_code','FRKFW','initialize','702NLTWbE','<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','error','string','code','writeHead','\x0aToken\x20written\x20to\x20','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','MCP\x20server\x20returned\x20HTTP\x20','Registering\x20OAuth\x20client...','code_challenge_method','status','Server\x20returned\x20error:\x20','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','refresh_token','token','data:','9653535qBKiOU','apFmx','OKZcV','.ranger','trim','OAuth\x20error:\x20','clientSecret','1.0.0','2025-03-26','rGzeQ','hex','RPNoo','http://localhost:','/callback','Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found','expires_in','parse','authorization_endpoint','370780RyWVib','YHgwK','wYFkr','\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20','Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server','CGcwx','LCufy','564962gbOmWg','21SufxvK','accessToken','searchParams','1184130jbDOOX','2.0','message','open','platform','Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.','text/html','Ranger\x20CLI','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','\x0aUnexpected\x20response\x20structure:','qNbNN','application/x-www-form-urlencoded','\x20done','text','content','VOkHg','toString','write','Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20','EvHUC','Bearer\x20','gnQoF'];_0xdc2b=function(){return _0x23c3f2;};return _0xdc2b();}async function oauthFlow(_0x5e18e8){const _0x2bc5a0=_0x10f084,_0x1aefd4={'qKxpM':function(_0x3465e3){return _0x3465e3();},'UMdYO':'\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a','teGUP':function(_0x5e13cc){return _0x5e13cc();},'hhndB':function(_0x398e5a,_0x2aac3e){return _0x398e5a(_0x2aac3e);}};try{return await oauthFlowAttempt(_0x5e18e8);}catch(_0x169693){if(_0x169693 instanceof OAuthTimeoutError&&await _0x1aefd4['qKxpM'](loadCachedClient))return console[_0x2bc5a0(0x1db)](_0x1aefd4[_0x2bc5a0(0x1d3)]),await _0x1aefd4[_0x2bc5a0(0x1cd)](clearCachedClient),await _0x1aefd4['hhndB'](oauthFlowAttempt,_0x5e18e8);throw _0x169693;}}async function oauthFlowAttempt(_0x2c8462){const _0x37a869=_0x10f084,_0x4e0690={'LwvmP':function(_0x2ab706,_0x571978){return _0x2ab706(_0x571978);},'aCquw':_0x37a869(0x215),'KddaG':_0x37a869(0x1f5),'aCduj':function(_0x2d8eac){return _0x2d8eac();},'cAhpw':_0x37a869(0x1f7),'mBNPU':function(_0x3ac75e,_0x200605,_0x5e4987){return _0x3ac75e(_0x200605,_0x5e4987);},'apFmx':_0x37a869(0x1dd),'mxMVq':'none','xyglE':function(_0x395ccc,_0x204ec1,_0xcf468c){return _0x395ccc(_0x204ec1,_0xcf468c);},'EMmzn':_0x37a869(0x228),'xHGom':function(_0x50e935,_0x374b18){return _0x50e935(_0x374b18);},'EvHUC':'response_type','uFEcD':'code','VOkHg':_0x37a869(0x1d9),'rGzeQ':_0x37a869(0x1f8),'uDmOq':'\x0aOpening\x20browser\x20for\x20authentication...','wYFkr':'Exchanging\x20authorization\x20code...','dUmez':_0x37a869(0x1eb),'UtRZY':_0x37a869(0x1e8),'GZBYS':_0x37a869(0x227)},_0x3b496e=_0x2c8462['replace'](/\/mcp$/,'');process['stdout']['write']('Discovering\x20authorization\x20server...');const _0x1a5957=await _0x4e0690['LwvmP'](fetch,_0x3b496e+_0x37a869(0x1b6));if(!_0x1a5957['ok'])throw new Error(_0x4e0690[_0x37a869(0x1b5)]);const _0x6e5b2d=await _0x1a5957[_0x37a869(0x1d2)](),_0x241e43=_0x6e5b2d['authorization_servers']?.[0x0];if(!_0x241e43)throw new Error(_0x4e0690[_0x37a869(0x1df)]);console['log']('\x20'+_0x241e43);const _0xed77b6=await _0x4e0690['LwvmP'](fetchAuthServerMetadata,_0x241e43);let _0x1e4231,_0xc224e6;const _0x3a5be6=await _0x4e0690['aCduj'](loadCachedClient);if(_0x3a5be6)_0x1e4231=_0x3a5be6[_0x37a869(0x1a9)],_0xc224e6=_0x3a5be6[_0x37a869(0x205)];else{if(_0xed77b6[_0x37a869(0x1bb)]){process[_0x37a869(0x1e1)][_0x37a869(0x1a3)](_0x4e0690['cAhpw']);const _0x2f3159=await _0x4e0690['mBNPU'](fetch,_0xed77b6['registration_endpoint'],{'method':_0x4e0690[_0x37a869(0x200)],'headers':{'Content-Type':_0x37a869(0x1c9)},'body':JSON[_0x37a869(0x1bf)]({'client_name':_0x37a869(0x223),'redirect_uris':[_0x37a869(0x20b)+CALLBACK_PORT+_0x37a869(0x20c)],'grant_types':['authorization_code',_0x37a869(0x1fc)],'response_types':['code'],'token_endpoint_auth_method':_0x4e0690['mxMVq']})});if(!_0x2f3159['ok']){const _0x52ebad=await _0x2f3159[_0x37a869(0x229)]();throw new Error('Client\x20registration\x20failed:\x20'+_0x52ebad);}const _0x2f7b16=await _0x2f3159['json']();_0x1e4231=_0x2f7b16[_0x37a869(0x1d9)],_0xc224e6=_0x2f7b16['client_secret'],await _0x4e0690[_0x37a869(0x1e3)](saveCachedClient,_0x1e4231,_0xc224e6),console['log'](_0x4e0690[_0x37a869(0x1b2)]);}else throw new Error(_0x37a869(0x20d));}const _0x10ddc0=randomBytes(0x20)[_0x37a869(0x1a2)]('base64url'),_0x49771b=createHash('sha256')['update'](_0x10ddc0)['digest']('base64url'),_0x13a504=_0x4e0690['xHGom'](randomBytes,0x10)['toString'](_0x37a869(0x209)),_0x3721f9=new URL(_0xed77b6[_0x37a869(0x210)]);_0x3721f9[_0x37a869(0x21b)][_0x37a869(0x1a8)](_0x4e0690[_0x37a869(0x1a5)],_0x4e0690['uFEcD']),_0x3721f9[_0x37a869(0x21b)]['set'](_0x4e0690[_0x37a869(0x1a1)],_0x1e4231),_0x3721f9['searchParams'][_0x37a869(0x1a8)]('redirect_uri',_0x37a869(0x20b)+CALLBACK_PORT+_0x37a869(0x20c)),_0x3721f9[_0x37a869(0x21b)]['set']('code_challenge',_0x49771b),_0x3721f9[_0x37a869(0x21b)]['set'](_0x4e0690[_0x37a869(0x208)],'S256'),_0x3721f9['searchParams'][_0x37a869(0x1a8)](_0x37a869(0x1b3),_0x13a504);_0x6e5b2d['resource']&&_0x3721f9['searchParams']['set']('resource',_0x6e5b2d['resource']);console['log'](_0x4e0690['uDmOq']),console[_0x37a869(0x1db)](_0x37a869(0x1c7)+_0x3721f9[_0x37a869(0x1a2)]()+'\x0a'),await _0x4e0690[_0x37a869(0x1aa)](openBrowser,_0x3721f9[_0x37a869(0x1a2)]());const _0x4d4a99=await _0x4e0690[_0x37a869(0x1aa)](waitForCallback,_0x13a504);process['stdout'][_0x37a869(0x1a3)](_0x4e0690[_0x37a869(0x213)]);const _0x49160a=new URLSearchParams({'grant_type':_0x4e0690[_0x37a869(0x1c3)],'code':_0x4d4a99,'redirect_uri':_0x37a869(0x20b)+CALLBACK_PORT+'/callback','client_id':_0x1e4231,'code_verifier':_0x10ddc0});_0xc224e6&&_0x49160a[_0x37a869(0x1a8)](_0x4e0690[_0x37a869(0x1b0)],_0xc224e6);_0x6e5b2d['resource']&&_0x49160a[_0x37a869(0x1a8)](_0x37a869(0x1b4),_0x6e5b2d['resource']);const _0x3e966a=await fetch(_0xed77b6[_0x37a869(0x1cc)],{'method':_0x37a869(0x1dd),'headers':{'Content-Type':_0x4e0690[_0x37a869(0x1b7)]},'body':_0x49160a});if(!_0x3e966a['ok']){const _0x41b983=await _0x3e966a[_0x37a869(0x229)]();throw new Error(_0x37a869(0x1e2)+_0x41b983);}const _0x293ccb=await _0x3e966a['json']();return console[_0x37a869(0x1db)](_0x37a869(0x228)),await saveCachedToken(_0x293ccb['access_token'],_0x293ccb[_0x37a869(0x1fc)],_0x293ccb[_0x37a869(0x20e)]),_0x293ccb[_0x37a869(0x1af)];}async function callGetCliToken(_0x72c7ef,_0x5b6123){const _0x2cc37e=_0x10f084,_0x541135={'bMuqG':_0x2cc37e(0x1dd),'jgHWL':'Authorization','SLmOK':function(_0x85f769,_0x1a5142){return _0x85f769(_0x1a5142);},'mIvYR':'2.0','mgobB':_0x2cc37e(0x1ed),'NGcPc':function(_0x2dd676,_0x24dcef,_0x2f4d18){return _0x2dd676(_0x24dcef,_0x2f4d18);},'XelrY':'notifications/initialized','FuTil':_0x2cc37e(0x1cf),'NhNHQ':_0x2cc37e(0x1ce),'VACnB':'get_cli_token','ptNhK':_0x2cc37e(0x228),'qNbNN':_0x2cc37e(0x1bc),'LCufy':'.ranger','GJEwG':'refresh.txt','OKZcV':function(_0x415288,_0x110683,_0x314ddc,_0x25cb7a){return _0x415288(_0x110683,_0x314ddc,_0x25cb7a);},'vwlGZ':'auth-origin.txt','PWlso':_0x2cc37e(0x1ac)},_0x29da04={'Content-Type':'application/json','Accept':'application/json,\x20text/event-stream'};_0x5b6123&&(_0x29da04[_0x541135['jgHWL']]=_0x2cc37e(0x1a6)+_0x5b6123);const _0x36771d=async _0x16c6f2=>{const _0x5f34ee=_0x2cc37e,_0x1e5419=await fetch(_0x72c7ef,{'method':_0x541135[_0x5f34ee(0x1ea)],'headers':_0x29da04,'body':JSON['stringify'](_0x16c6f2)});if(!_0x1e5419['ok']){const _0x30c53c=await _0x1e5419[_0x5f34ee(0x229)]();throw new Error('HTTP\x20'+_0x1e5419[_0x5f34ee(0x1f9)]+':\x20'+_0x30c53c);}return parseResponse(_0x1e5419);};process[_0x2cc37e(0x1e1)][_0x2cc37e(0x1a3)]('Initializing\x20MCP\x20session...');const _0x24ecaa=await _0x541135['SLmOK'](_0x36771d,{'jsonrpc':_0x541135['mIvYR'],'id':0x1,'method':_0x541135['mgobB'],'params':{'protocolVersion':_0x2cc37e(0x207),'capabilities':{},'clientInfo':{'name':'ranger-cli','version':'1.0.0'}}});if(_0x24ecaa[_0x2cc37e(0x1f0)])throw new Error('MCP\x20initialize\x20failed:\x20'+(_0x24ecaa['error'][_0x2cc37e(0x21e)]??JSON[_0x2cc37e(0x1bf)](_0x24ecaa[_0x2cc37e(0x1f0)])));console[_0x2cc37e(0x1db)](_0x2cc37e(0x228)),await _0x541135['NGcPc'](fetch,_0x72c7ef,{'method':_0x2cc37e(0x1dd),'headers':_0x29da04,'body':JSON[_0x2cc37e(0x1bf)]({'jsonrpc':_0x2cc37e(0x21d),'method':_0x541135['XelrY']})})['then'](_0xabf31b=>_0xabf31b['text']()),process[_0x2cc37e(0x1e1)]['write'](_0x541135['FuTil']);const _0x1bf512=await _0x36771d({'jsonrpc':_0x541135[_0x2cc37e(0x1e0)],'id':0x2,'method':_0x541135['NhNHQ'],'params':{'name':_0x541135['VACnB'],'arguments':{}}});if(_0x1bf512[_0x2cc37e(0x1f0)])throw new Error('get_cli_token\x20failed:\x20'+(_0x1bf512['error']['message']??JSON['stringify'](_0x1bf512[_0x2cc37e(0x1f0)])));console[_0x2cc37e(0x1db)](_0x541135['ptNhK']);const _0x38125f=extractToken(_0x1bf512[_0x2cc37e(0x1c1)]);if(!_0x38125f){console['error'](_0x2cc37e(0x225)),console[_0x2cc37e(0x1f0)](JSON[_0x2cc37e(0x1bf)](_0x1bf512['result'],null,0x2));throw new Error(_0x541135[_0x2cc37e(0x226)]);}const _0x1f8c69=join(homedir(),_0x541135[_0x2cc37e(0x217)]),_0x5b9160=join(_0x1f8c69,_0x541135['GJEwG']);await _0x541135['NGcPc'](mkdir,_0x1f8c69,{'recursive':!![]}),await _0x541135[_0x2cc37e(0x201)](writeFile,_0x5b9160,_0x38125f,{'mode':0x180}),await writeFile(join(_0x1f8c69,_0x541135['vwlGZ']),_0x72c7ef,{'mode':0x180}),console['log'](_0x2cc37e(0x1f4)+_0x5b9160),console['log'](_0x541135[_0x2cc37e(0x1d6)]);}async function fetchAuthServerMetadata(_0x372cff){const _0x11b269=_0x10f084,_0x56825e=_0x372cff+'/.well-known/oauth-authorization-server',_0x3ef8ac=await fetch(_0x56825e);if(!_0x3ef8ac['ok'])throw new Error(_0x11b269(0x1a4)+_0x56825e+':\x20'+_0x3ef8ac['status']);return _0x3ef8ac['json']();}function waitForCallback(_0x32dd74){const _0x5cfe18={'sQZHY':function(_0x4c7bee){return _0x4c7bee();},'ZhDnv':function(_0x57c696,_0x4e33dd){return _0x57c696(_0x4e33dd);},'JkwKR':function(_0x1d0a9b,_0xd2049){return _0x1d0a9b(_0xd2049);},'NsHkn':function(_0x4b6489,_0x480184){return _0x4b6489!==_0x480184;},'ykJOP':function(_0x2a4613,_0x2cbb5d,_0x2a5ca6){return _0x2a4613(_0x2cbb5d,_0x2a5ca6);}};return new Promise((_0x256df3,_0x1ba964)=>{const _0x48ff5c=_0x4402,_0x3601aa={'BUSjx':_0x48ff5c(0x20c),'vGSTw':'Not\x20found','CjYKs':'state','EgSfK':_0x48ff5c(0x1f0),'CGcwx':function(_0xbe4eb9,_0x271e18){return _0x5cfe18['JkwKR'](_0xbe4eb9,_0x271e18);},'onMZU':function(_0x243aa2){return _0x243aa2();},'gnQoF':function(_0x4e4ed3,_0x51d6cf){return _0x4e4ed3(_0x51d6cf);},'qKxEN':function(_0x2d172f,_0x464fa1){return _0x5cfe18['NsHkn'](_0x2d172f,_0x464fa1);},'fhECA':_0x48ff5c(0x222),'VrXIK':_0x48ff5c(0x1ef),'TSgtW':_0x48ff5c(0x224)},_0x59e239=()=>{_0x2369cb['closeAllConnections'](),_0x2369cb['close']();},_0x34e6f0=_0x5cfe18['ykJOP'](setTimeout,()=>{_0x5cfe18['sQZHY'](_0x59e239),_0x5cfe18['ZhDnv'](_0x1ba964,new OAuthTimeoutError('OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes'));},0x1d4c0),_0x2369cb=_0x5cfe18[_0x48ff5c(0x1d1)](createServer,(_0x4a5231,_0x1eb81b)=>{const _0x5d84b8=_0x48ff5c,_0x364a2f=new URL(_0x4a5231['url']??'/','http://localhost:'+CALLBACK_PORT);if(_0x364a2f['pathname']!==_0x3601aa['BUSjx']){_0x1eb81b[_0x5d84b8(0x1f3)](0x194),_0x1eb81b['end'](_0x3601aa[_0x5d84b8(0x1ab)]);return;}const _0x21a6cd=_0x364a2f[_0x5d84b8(0x21b)][_0x5d84b8(0x1ca)](_0x5d84b8(0x1f2)),_0x54051c=_0x364a2f['searchParams']['get'](_0x3601aa[_0x5d84b8(0x1c5)]),_0x40c710=_0x364a2f['searchParams']['get'](_0x3601aa['EgSfK']);if(_0x40c710){const _0x2fb21f=_0x364a2f[_0x5d84b8(0x21b)][_0x5d84b8(0x1ca)](_0x5d84b8(0x1e4))??_0x40c710;_0x1eb81b[_0x5d84b8(0x1f3)](0xc8,{'Content-Type':_0x5d84b8(0x222)}),_0x1eb81b[_0x5d84b8(0x1c4)]('<html><body><h2>Authentication\x20failed</h2><p>'+_0x2fb21f+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),_0x3601aa[_0x5d84b8(0x216)](clearTimeout,_0x34e6f0),_0x3601aa[_0x5d84b8(0x1ba)](_0x59e239),_0x3601aa[_0x5d84b8(0x1a7)](_0x1ba964,new Error(_0x5d84b8(0x204)+_0x2fb21f));return;}if(!_0x21a6cd||_0x3601aa[_0x5d84b8(0x1bd)](_0x54051c,_0x32dd74)){_0x1eb81b['writeHead'](0x190,{'Content-Type':_0x3601aa['fhECA']}),_0x1eb81b[_0x5d84b8(0x1c4)](_0x3601aa['VrXIK']);return;}_0x1eb81b[_0x5d84b8(0x1f3)](0xc8,{'Content-Type':_0x3601aa['fhECA']}),_0x1eb81b['end'](_0x3601aa[_0x5d84b8(0x1e7)]),_0x3601aa['gnQoF'](clearTimeout,_0x34e6f0),_0x59e239(),_0x256df3(_0x21a6cd);});_0x2369cb['listen'](CALLBACK_PORT,_0x48ff5c(0x1cb));});}async function openBrowser(_0x40f292){const _0x4d089c=_0x10f084,_0x191963={'qegqI':function(_0x396b92,_0x36af5c){return _0x396b92===_0x36af5c;},'RPNoo':_0x4d089c(0x1b8),'iHHwN':'win32','BssKS':'start'},_0x34a13e=_0x191963['qegqI'](process[_0x4d089c(0x220)],_0x191963[_0x4d089c(0x20a)])?_0x4d089c(0x21f):process['platform']===_0x191963['iHHwN']?_0x191963['BssKS']:_0x4d089c(0x1dc);exec(_0x34a13e+'\x20\x22'+_0x40f292+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x1aa9d8=_0x10f084,_0x5b20be={'IvbpL':function(_0x401027,_0x5c8441){return _0x401027>_0x5c8441;}};try{const _0x225c16=JSON['parse'](await readFile(TOKEN_CACHE_PATH,'utf-8'));if(_0x225c16['origin']&&_0x225c16['origin']!==currentOrigin)return null;if(_0x225c16[_0x1aa9d8(0x1d7)]&&_0x5b20be['IvbpL'](Date['now'](),_0x225c16['expiresAt']))return null;return _0x225c16[_0x1aa9d8(0x21a)]??null;}catch{return null;}}async function saveCachedToken(_0x5e0a03,_0x39dde7,_0x2e44c3){const _0x4771a8=_0x10f084,_0x2c4c6b={'rpArx':function(_0x43418d){return _0x43418d();},'rnMPe':function(_0x7faf16,_0x41ae73){return _0x7faf16+_0x41ae73;},'gESjG':function(_0x2ad729,_0x7871c6,_0x3a4006,_0x42a23c){return _0x2ad729(_0x7871c6,_0x3a4006,_0x42a23c);}},_0x4d0e20=await _0x2c4c6b['rpArx'](loadCachedData),_0x2ec66d={..._0x4d0e20,'origin':currentOrigin,'accessToken':_0x5e0a03,'refreshToken':_0x39dde7??_0x4d0e20?.[_0x4771a8(0x1d5)],'expiresAt':_0x2e44c3?_0x2c4c6b['rnMPe'](Date['now'](),_0x2e44c3*0x3e8):undefined};await mkdir(join(_0x2c4c6b[_0x4771a8(0x1ad)](homedir),'.ranger'),{'recursive':!![]}),await _0x2c4c6b['gESjG'](writeFile,TOKEN_CACHE_PATH,JSON[_0x4771a8(0x1bf)](_0x2ec66d),{'mode':0x180});}async function loadCachedClient(){const _0x3c80a1=_0x10f084,_0xfdfee={'oYTHJ':function(_0x352e1e){return _0x352e1e();},'MKeIX':function(_0xa63846,_0x49e1b6){return _0xa63846!==_0x49e1b6;}},_0x7aae06=await _0xfdfee[_0x3c80a1(0x1b9)](loadCachedData);if(_0x7aae06?.['origin']&&_0xfdfee['MKeIX'](_0x7aae06['origin'],currentOrigin))return null;return _0x7aae06?.[_0x3c80a1(0x1a9)]?{'clientId':_0x7aae06['clientId'],'clientSecret':_0x7aae06['clientSecret']}:null;}async function clearCachedClient(){const _0x6fce5d=_0x10f084,_0x508301={'Ynyfm':function(_0xd9cd70,_0xd5e6d0,_0x1aa0ca,_0x368431){return _0xd9cd70(_0xd5e6d0,_0x1aa0ca,_0x368431);}},_0x2b227e=await loadCachedData();if(!_0x2b227e)return;const {clientId:_0x886ec4,clientSecret:_0x27f6ea,..._0x596927}=_0x2b227e;await _0x508301[_0x6fce5d(0x1da)](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x596927),{'mode':0x180});}async function saveCachedClient(_0x34718a,_0x2efe21){const _0x52bb88={'UlTcV':function(_0x3bca62){return _0x3bca62();},'Nmimu':function(_0x4347bc,_0x2cee51,_0x27fe81){return _0x4347bc(_0x2cee51,_0x27fe81);}},_0x3bd5c3=await _0x52bb88['UlTcV'](loadCachedData),_0x44aed5={..._0x3bd5c3,'origin':currentOrigin,'accessToken':_0x3bd5c3?.['accessToken']??'','clientId':_0x34718a,'clientSecret':_0x2efe21};await mkdir(_0x52bb88['Nmimu'](join,homedir(),'.ranger'),{'recursive':!![]}),await writeFile(TOKEN_CACHE_PATH,JSON['stringify'](_0x44aed5),{'mode':0x180});}async function loadCachedData(){const _0x422ac6=_0x10f084,_0x3d0246={'nHuIO':'utf-8'};try{return JSON[_0x422ac6(0x20f)](await readFile(TOKEN_CACHE_PATH,_0x3d0246['nHuIO']));}catch{return null;}}async function parseResponse(_0x521dc0){const _0x1e352c=_0x10f084,_0x12491d={'cNhwV':_0x1e352c(0x1d8),'OhIbX':_0x1e352c(0x1fe)},_0x25421b=_0x521dc0[_0x1e352c(0x1de)]['get'](_0x12491d['cNhwV'])??'';if(_0x25421b['includes']('text/event-stream')){const _0x25077d=await _0x521dc0[_0x1e352c(0x229)]();for(const _0x3692ec of _0x25077d['split']('\x0a')){const _0x2de814=_0x3692ec[_0x1e352c(0x203)]();if(_0x2de814['startsWith'](_0x12491d['OhIbX'])){const _0x179c8e=_0x2de814[_0x1e352c(0x1d4)](_0x12491d[_0x1e352c(0x1d0)]['length'])['trim']();if(!_0x179c8e)continue;try{const _0x1678a8=JSON[_0x1e352c(0x20f)](_0x179c8e);if(_0x1678a8['id']!==undefined||_0x1678a8[_0x1e352c(0x1f0)])return _0x1678a8;}catch{}}}throw new Error(_0x1e352c(0x1fb));}return _0x521dc0['json']();}function extractToken(_0x3fd596){const _0xa0d205=_0x10f084,_0x560d21={'YHgwK':_0xa0d205(0x1f1),'pUhrX':function(_0x927e88,_0x5a6184){return _0x927e88===_0x5a6184;},'AJXsU':_0xa0d205(0x229)};if(!_0x3fd596)return null;const _0xffe745=_0x3fd596['structuredContent'];if(_0xffe745?.[_0xa0d205(0x1fd)]&&typeof _0xffe745['token']===_0x560d21[_0xa0d205(0x212)])return _0xffe745[_0xa0d205(0x1fd)];if(_0x3fd596['isError']){const _0x1bf687=_0x3fd596[_0xa0d205(0x22a)];throw new Error(_0xa0d205(0x1fa)+(_0x1bf687?.[0x0]?.[_0xa0d205(0x229)]??'Unknown\x20error'));}const _0x4a284b=_0x3fd596['content'];if(_0x4a284b)for(const _0x3a3058 of _0x4a284b){if(_0x560d21['pUhrX'](_0x3a3058[_0xa0d205(0x1ae)],_0x560d21['AJXsU'])&&_0x3a3058[_0xa0d205(0x229)]){try{const _0x4b1b1e=JSON[_0xa0d205(0x20f)](_0x3a3058['text']);if(typeof _0x4b1b1e?.[_0xa0d205(0x1fd)]===_0x560d21[_0xa0d205(0x212)])return _0x4b1b1e[_0xa0d205(0x1fd)];}catch{}const _0x467dc6=_0x3a3058['text']['match'](/(rngr_[A-Za-z0-9_-]+)/);if(_0x467dc6)return _0x467dc6[0x1];}}return null;}
|
|
1
|
+
const _0x3f6f7e=_0x89f1;(function(_0x4046dd,_0x43afc7){const _0xef4360=_0x89f1,_0x584f4e=_0x4046dd();while(!![]){try{const _0x3b8155=parseInt(_0xef4360(0x1e1))/0x1*(-parseInt(_0xef4360(0x18d))/0x2)+-parseInt(_0xef4360(0x1bc))/0x3+parseInt(_0xef4360(0x17b))/0x4+-parseInt(_0xef4360(0x1e3))/0x5+-parseInt(_0xef4360(0x173))/0x6*(parseInt(_0xef4360(0x1a5))/0x7)+-parseInt(_0xef4360(0x177))/0x8+parseInt(_0xef4360(0x1b1))/0x9*(parseInt(_0xef4360(0x1b8))/0xa);if(_0x3b8155===_0x43afc7)break;else _0x584f4e['push'](_0x584f4e['shift']());}catch(_0x3699e1){_0x584f4e['push'](_0x584f4e['shift']());}}}(_0x386a,0xc0ad7));import{mkdir,writeFile,readFile}from'fs/promises';import{join}from'path';import{homedir}from'os';function _0x89f1(_0xd7d2b8,_0x44c847){_0xd7d2b8=_0xd7d2b8-0x172;const _0x386a14=_0x386a();let _0x89f149=_0x386a14[_0xd7d2b8];return _0x89f149;}import{createServer}from'http';import{randomBytes,createHash}from'crypto';function _0x386a(){const _0x253541=['XPLQP','LIllR','YVgiE','type','nTQki','get','OAuth\x20callback\x20timed\x20out\x20after\x202\x20minutes','OORLi','authorization_code','Run\x20`ranger\x20status`\x20to\x20verify\x20authentication.\x0a','Could\x20not\x20extract\x20token\x20from\x20MCP\x20response','\x0aOpening\x20browser\x20for\x20authentication...','xSqjB','access_token','YSEOA','ysbqO','authorization_servers','writeHead','write','1yLXXNg','WFwdM','3169650wrSSDP','utf-8','1.0.0','TaLNw','end','notifications/initialized','ESoVM','isTTY','2025-03-26','oXWYl','trim','\x20done','RwnSh','platform','error','http://localhost:','UpyoJ','127.0.0.1','content','split','registration_endpoint','zavMq','closeAllConnections','close','client_secret','structuredContent','hex','fYuQj','AnWQJ','Lxofl','nIFau','base64url','replace','Exchanging\x20authorization\x20code...','132OyfCpl','awmAk','\x0aToken\x20written\x20to\x20','\x0aUnexpected\x20response\x20structure:','9595504XTwfEp','OAuth\x20error:\x20','<html><body><h2>Authenticated!</h2><p>You\x20can\x20close\x20this\x20window\x20and\x20return\x20to\x20the\x20terminal.</p></body></html>','Client\x20registration\x20failed:\x20','506960TbfnLs','gMUHB','/callback','IdTAp','toString','start','now','token_endpoint','result','client_id','error_description','OAuthTimeoutError','data:','yWMGu','VjTqk','log','needs-oauth','yqqCb','942322udcjlh','OFwTA','VSfez','message','.ranger','JIIvf','text','xdg-open','code_challenge','bWwUa','fNZlp','json','text/html','sha256','<html><body><h2>Invalid\x20callback</h2><p>Missing\x20code\x20or\x20state\x20mismatch.</p></body></html>','MCP\x20server\x20requires\x20authentication\x20but\x20running\x20in\x20non-interactive\x20mode.\x0a','win32','mNxmk','kpdja','authorization_endpoint','Discovering\x20authorization\x20server...','\x0aCached\x20OAuth\x20client\x20may\x20be\x20stale\x20—\x20clearing\x20and\x20retrying...\x0a','No\x20authorization_servers\x20in\x20protected\x20resource\x20metadata','POST','254919MNGMzF','application/json','stringify','state','wAIsX','MCP\x20initialize\x20failed:\x20','clientId','QqfOa','zUbBE','auth-origin.txt','searchParams','parse','9egrSXQ','startsWith','Token\x20exchange\x20failed:\x20','clientSecret','open','accessToken','origin','40818110QgumSi','kQjQy','includes','set','940923FbYyyY','lBNLy','TIsTn','noqGU','match','/.well-known/oauth-authorization-server','No\x20JSON-RPC\x20response\x20found\x20in\x20SSE\x20stream','status','Bearer\x20','cpbpC','initialize','luUrL','srslM','stdout','xBQgE','yevHX','Vhuqh','listen'];_0x386a=function(){return _0x253541;};return _0x386a();}import{exec}from'child_process';import{getMcpAuthUrl}from'./utils/environment.js';const CALLBACK_PORT=0x4d78,TOKEN_CACHE_PATH=join(homedir(),_0x3f6f7e(0x191),'mcp-oauth-tokens.json'),AUTH_ORIGIN_PATH=join(homedir(),'.ranger',_0x3f6f7e(0x1ae));export async function getMcpAuthOrigin(){const _0x27032f=_0x3f6f7e,_0x2efe9f={'ESoVM':'utf-8'};try{const _0x5be263=(await readFile(AUTH_ORIGIN_PATH,_0x2efe9f[_0x27032f(0x1e9)]))['trim']();return _0x5be263||null;}catch{return null;}}export async function mcpBootstrap(){const _0x57e3dc=_0x3f6f7e,_0x2fde46={'vosks':function(_0x25be98){return _0x25be98();},'MswHG':function(_0x1cb847,_0x26fffb){return _0x1cb847(_0x26fffb);}},_0x456ce3=_0x2fde46['vosks'](getMcpAuthUrl);currentOrigin=_0x456ce3;const _0x40e283=process[_0x57e3dc(0x1c9)][_0x57e3dc(0x1ea)]??![];console[_0x57e3dc(0x18a)]('\x0aConnecting\x20to\x20MCP\x20auth\x20server:\x20'+_0x456ce3+'\x0a');const _0x23c2af=await _0x2fde46['MswHG'](tryUnauthenticated,_0x456ce3);let _0x5ed8f8=null;if(_0x23c2af==='proxied')_0x5ed8f8='';else{_0x5ed8f8=await loadCachedToken();if(!_0x5ed8f8){if(!_0x40e283)throw new Error(_0x57e3dc(0x19c)+'Run\x20`ranger\x20setup\x20--mcp-bootstrap`\x20interactively\x20first.');_0x5ed8f8=await oauthFlow(_0x456ce3);}}await callGetCliToken(_0x456ce3,_0x5ed8f8);}async function tryUnauthenticated(_0x185422){const _0x2fac6c=_0x3f6f7e,_0x238506={'luUrL':function(_0x4b1e80,_0x3e7fac,_0x230739){return _0x4b1e80(_0x3e7fac,_0x230739);},'YdCyX':_0x2fac6c(0x1a6),'HSFyK':'application/json,\x20text/event-stream','TIsTn':'2.0','noqGU':'2025-03-26','qZpkO':'ranger-cli','gMUHB':function(_0x51f0bc,_0x236661){return _0x51f0bc===_0x236661;},'bWwUa':_0x2fac6c(0x18b)},_0x35e5a9=await _0x238506[_0x2fac6c(0x1c7)](fetch,_0x185422,{'method':'POST','headers':{'Content-Type':_0x238506['YdCyX'],'Accept':_0x238506['HSFyK']},'body':JSON[_0x2fac6c(0x1a7)]({'jsonrpc':_0x238506[_0x2fac6c(0x1be)],'id':0x1,'method':'initialize','params':{'protocolVersion':_0x238506[_0x2fac6c(0x1bf)],'capabilities':{},'clientInfo':{'name':_0x238506['qZpkO'],'version':_0x2fac6c(0x1e5)}}})});if(_0x35e5a9['ok'])return await _0x35e5a9[_0x2fac6c(0x193)](),'proxied';if(_0x238506[_0x2fac6c(0x17c)](_0x35e5a9[_0x2fac6c(0x1c3)],0x191))return await _0x35e5a9['text'](),_0x238506[_0x2fac6c(0x196)];const _0x22426f=await _0x35e5a9['text']();throw new Error('MCP\x20server\x20returned\x20HTTP\x20'+_0x35e5a9['status']+':\x20'+_0x22426f);}class OAuthTimeoutError extends Error{constructor(_0x5b7c51){const _0x532030=_0x3f6f7e;super(_0x5b7c51),this['name']=_0x532030(0x186);}}async function oauthFlow(_0x3deed9){const _0x4c56ad=_0x3f6f7e,_0x3bd0ba={'aQLJT':function(_0x54de20,_0xeb0ecb){return _0x54de20 instanceof _0xeb0ecb;},'OORLi':function(_0x17cef7){return _0x17cef7();}};try{return await oauthFlowAttempt(_0x3deed9);}catch(_0x2c8411){if(_0x3bd0ba['aQLJT'](_0x2c8411,OAuthTimeoutError)&&await loadCachedClient())return console['log'](_0x4c56ad(0x1a2)),await _0x3bd0ba[_0x4c56ad(0x1d5)](clearCachedClient),await oauthFlowAttempt(_0x3deed9);throw _0x2c8411;}}async function oauthFlowAttempt(_0xeee359){const _0x27ffd7=_0x3f6f7e,_0x54d96c={'WzKAD':_0x27ffd7(0x1a1),'XZxmR':_0x27ffd7(0x1a3),'giUGP':function(_0x2878ed){return _0x2878ed();},'spOcy':'Registering\x20OAuth\x20client...','YSEOA':function(_0x123fd7,_0xc7e02b,_0x2300d2){return _0x123fd7(_0xc7e02b,_0x2300d2);},'bQDBh':'authorization_code','WFwdM':'refresh_token','gCxAS':function(_0x5f2206,_0x5506b5,_0x5c0936){return _0x5f2206(_0x5506b5,_0x5c0936);},'IBrjN':function(_0x5767fd,_0x53626d){return _0x5767fd(_0x53626d);},'Lwkme':'base64url','TaLNw':function(_0x1305cc,_0x140b3c){return _0x1305cc(_0x140b3c);},'kfIlQ':'response_type','cpbpC':'code','wAIsX':'redirect_uri','IdTAp':'S256','SlpLZ':_0x27ffd7(0x1d9),'rjbys':'resource'},_0x2edbb7=_0xeee359[_0x27ffd7(0x203)](/\/mcp$/,'');process[_0x27ffd7(0x1c9)]['write'](_0x54d96c['WzKAD']);const _0x1f72f5=await fetch(_0x2edbb7+'/.well-known/oauth-protected-resource');if(!_0x1f72f5['ok'])throw new Error('Could\x20not\x20fetch\x20protected\x20resource\x20metadata\x20from\x20MCP\x20server');const _0x15bf71=await _0x1f72f5['json'](),_0x29d52b=_0x15bf71[_0x27ffd7(0x1de)]?.[0x0];if(!_0x29d52b)throw new Error(_0x54d96c['XZxmR']);console['log']('\x20'+_0x29d52b);const _0x3b8548=await fetchAuthServerMetadata(_0x29d52b);let _0x4c621c,_0x1c84f4;const _0x530af9=await _0x54d96c['giUGP'](loadCachedClient);if(_0x530af9)_0x4c621c=_0x530af9[_0x27ffd7(0x1ab)],_0x1c84f4=_0x530af9[_0x27ffd7(0x1b4)];else{if(_0x3b8548[_0x27ffd7(0x1f7)]){process[_0x27ffd7(0x1c9)]['write'](_0x54d96c['spOcy']);const _0x1757d0=await _0x54d96c[_0x27ffd7(0x1dc)](fetch,_0x3b8548[_0x27ffd7(0x1f7)],{'method':_0x27ffd7(0x1a4),'headers':{'Content-Type':_0x27ffd7(0x1a6)},'body':JSON[_0x27ffd7(0x1a7)]({'client_name':'Ranger\x20CLI','redirect_uris':['http://localhost:'+CALLBACK_PORT+_0x27ffd7(0x17d)],'grant_types':[_0x54d96c['bQDBh'],_0x54d96c[_0x27ffd7(0x1e2)]],'response_types':['code'],'token_endpoint_auth_method':'none'})});if(!_0x1757d0['ok']){const _0x50ffc8=await _0x1757d0['text']();throw new Error(_0x27ffd7(0x17a)+_0x50ffc8);}const _0x90e9ae=await _0x1757d0['json']();_0x4c621c=_0x90e9ae[_0x27ffd7(0x184)],_0x1c84f4=_0x90e9ae['client_secret'],await _0x54d96c['gCxAS'](saveCachedClient,_0x4c621c,_0x1c84f4),console['log'](_0x27ffd7(0x1ee));}else throw new Error('Authorization\x20server\x20does\x20not\x20support\x20dynamic\x20client\x20registration\x20and\x20no\x20cached\x20client\x20found');}const _0x25a39b=randomBytes(0x20)['toString'](_0x27ffd7(0x202)),_0x29ad6c=_0x54d96c['IBrjN'](createHash,_0x27ffd7(0x19a))['update'](_0x25a39b)['digest'](_0x54d96c['Lwkme']),_0x3d7d68=_0x54d96c['TaLNw'](randomBytes,0x10)['toString'](_0x27ffd7(0x1fd)),_0x1b4144=new URL(_0x3b8548[_0x27ffd7(0x1a0)]);_0x1b4144[_0x27ffd7(0x1af)]['set'](_0x54d96c['kfIlQ'],_0x54d96c[_0x27ffd7(0x1c5)]),_0x1b4144[_0x27ffd7(0x1af)]['set'](_0x27ffd7(0x184),_0x4c621c),_0x1b4144[_0x27ffd7(0x1af)][_0x27ffd7(0x1bb)](_0x54d96c[_0x27ffd7(0x1a9)],'http://localhost:'+CALLBACK_PORT+'/callback'),_0x1b4144[_0x27ffd7(0x1af)][_0x27ffd7(0x1bb)](_0x27ffd7(0x195),_0x29ad6c),_0x1b4144[_0x27ffd7(0x1af)]['set']('code_challenge_method',_0x54d96c[_0x27ffd7(0x17e)]),_0x1b4144[_0x27ffd7(0x1af)][_0x27ffd7(0x1bb)](_0x27ffd7(0x1a8),_0x3d7d68);_0x15bf71['resource']&&_0x1b4144[_0x27ffd7(0x1af)]['set']('resource',_0x15bf71['resource']);console['log'](_0x54d96c['SlpLZ']),console[_0x27ffd7(0x18a)]('If\x20the\x20browser\x20doesn\x27t\x20open,\x20visit:\x0a'+_0x1b4144['toString']()+'\x0a'),await _0x54d96c[_0x27ffd7(0x1e6)](openBrowser,_0x1b4144[_0x27ffd7(0x17f)]());const _0x5a3215=await waitForCallback(_0x3d7d68);process['stdout'][_0x27ffd7(0x1e0)](_0x27ffd7(0x172));const _0x165307=new URLSearchParams({'grant_type':_0x27ffd7(0x1d6),'code':_0x5a3215,'redirect_uri':_0x27ffd7(0x1f2)+CALLBACK_PORT+'/callback','client_id':_0x4c621c,'code_verifier':_0x25a39b});_0x1c84f4&&_0x165307['set'](_0x27ffd7(0x1fb),_0x1c84f4);_0x15bf71['resource']&&_0x165307[_0x27ffd7(0x1bb)](_0x54d96c['rjbys'],_0x15bf71['resource']);const _0x2c903f=await fetch(_0x3b8548[_0x27ffd7(0x182)],{'method':'POST','headers':{'Content-Type':'application/x-www-form-urlencoded'},'body':_0x165307});if(!_0x2c903f['ok']){const _0x66b4e=await _0x2c903f[_0x27ffd7(0x193)]();throw new Error(_0x27ffd7(0x1b3)+_0x66b4e);}const _0x191fb1=await _0x2c903f['json']();return console['log']('\x20done'),await saveCachedToken(_0x191fb1['access_token'],_0x191fb1['refresh_token'],_0x191fb1['expires_in']),_0x191fb1[_0x27ffd7(0x1db)];}async function callGetCliToken(_0x121b39,_0x4ce84b){const _0x5010f6=_0x3f6f7e,_0x2e99be={'yqqCb':function(_0x544bf8,_0x4158cf,_0x9a50b4){return _0x544bf8(_0x4158cf,_0x9a50b4);},'yevHX':'application/json','QqfOa':'Authorization','kQjQy':'Initializing\x20MCP\x20session...','nIFau':function(_0x1508d7,_0x7ae00b){return _0x1508d7(_0x7ae00b);},'awmAk':'2.0','BCqMI':_0x5010f6(0x1c6),'JIIvf':_0x5010f6(0x1eb),'EkXBW':_0x5010f6(0x1e5),'lZzPj':'\x20done','dxFcy':'POST','uGoWq':function(_0x598860,_0x136901){return _0x598860(_0x136901);},'tdZwr':'tools/call','kpdja':'get_cli_token','srslM':function(_0x374aa3,_0x2e5bab){return _0x374aa3(_0x2e5bab);},'oicnW':function(_0x1974b5,_0x10e956,_0x592b84){return _0x1974b5(_0x10e956,_0x592b84);},'Ynqvj':function(_0x430700){return _0x430700();},'FRbuK':'refresh.txt','rXfKs':function(_0x2066b3,_0x4ab90a,_0x24a39c){return _0x2066b3(_0x4ab90a,_0x24a39c);},'VPIPm':function(_0x587d5f,_0x55a8fc,_0x4e28fb,_0xacaab2){return _0x587d5f(_0x55a8fc,_0x4e28fb,_0xacaab2);},'VSfez':function(_0x5c54b3,_0x57e403,_0x3c9467,_0x958d59){return _0x5c54b3(_0x57e403,_0x3c9467,_0x958d59);},'RwnSh':function(_0x49d244,_0x1da2ea,_0x5f4f75){return _0x49d244(_0x1da2ea,_0x5f4f75);}},_0x145cb6={'Content-Type':_0x2e99be[_0x5010f6(0x1cb)],'Accept':'application/json,\x20text/event-stream'};_0x4ce84b&&(_0x145cb6[_0x2e99be[_0x5010f6(0x1ac)]]=_0x5010f6(0x1c4)+_0x4ce84b);const _0x6c59b3=async _0x5b1e8b=>{const _0x38ae62=_0x5010f6,_0xcfd368=await _0x2e99be[_0x38ae62(0x18c)](fetch,_0x121b39,{'method':'POST','headers':_0x145cb6,'body':JSON['stringify'](_0x5b1e8b)});if(!_0xcfd368['ok']){const _0x14cb36=await _0xcfd368['text']();throw new Error('HTTP\x20'+_0xcfd368[_0x38ae62(0x1c3)]+':\x20'+_0x14cb36);}return parseResponse(_0xcfd368);};process[_0x5010f6(0x1c9)]['write'](_0x2e99be[_0x5010f6(0x1b9)]);const _0x4621ef=await _0x2e99be[_0x5010f6(0x201)](_0x6c59b3,{'jsonrpc':_0x2e99be[_0x5010f6(0x174)],'id':0x1,'method':_0x2e99be['BCqMI'],'params':{'protocolVersion':_0x2e99be[_0x5010f6(0x192)],'capabilities':{},'clientInfo':{'name':'ranger-cli','version':_0x2e99be['EkXBW']}}});if(_0x4621ef['error'])throw new Error(_0x5010f6(0x1aa)+(_0x4621ef[_0x5010f6(0x1f1)]['message']??JSON[_0x5010f6(0x1a7)](_0x4621ef[_0x5010f6(0x1f1)])));console['log'](_0x2e99be['lZzPj']),await fetch(_0x121b39,{'method':_0x2e99be['dxFcy'],'headers':_0x145cb6,'body':JSON[_0x5010f6(0x1a7)]({'jsonrpc':_0x2e99be[_0x5010f6(0x174)],'method':_0x5010f6(0x1e8)})})['then'](_0xd1f6f3=>_0xd1f6f3['text']()),process[_0x5010f6(0x1c9)]['write']('Requesting\x20CLI\x20token...');const _0xc57b3=await _0x2e99be['uGoWq'](_0x6c59b3,{'jsonrpc':_0x2e99be[_0x5010f6(0x174)],'id':0x2,'method':_0x2e99be['tdZwr'],'params':{'name':_0x2e99be[_0x5010f6(0x19f)],'arguments':{}}});if(_0xc57b3['error'])throw new Error('get_cli_token\x20failed:\x20'+(_0xc57b3['error'][_0x5010f6(0x190)]??JSON[_0x5010f6(0x1a7)](_0xc57b3['error'])));console[_0x5010f6(0x18a)](_0x5010f6(0x1ee));const _0x38e64e=_0x2e99be[_0x5010f6(0x1c8)](extractToken,_0xc57b3[_0x5010f6(0x183)]);if(!_0x38e64e){console[_0x5010f6(0x1f1)](_0x5010f6(0x176)),console['error'](JSON['stringify'](_0xc57b3[_0x5010f6(0x183)],null,0x2));throw new Error(_0x5010f6(0x1d8));}const _0x3a2111=_0x2e99be['oicnW'](join,_0x2e99be['Ynqvj'](homedir),_0x5010f6(0x191)),_0x570d1b=join(_0x3a2111,_0x2e99be['FRbuK']);await _0x2e99be['rXfKs'](mkdir,_0x3a2111,{'recursive':!![]}),await _0x2e99be['VPIPm'](writeFile,_0x570d1b,_0x38e64e,{'mode':0x180}),await _0x2e99be[_0x5010f6(0x18f)](writeFile,_0x2e99be[_0x5010f6(0x1ef)](join,_0x3a2111,_0x5010f6(0x1ae)),_0x121b39,{'mode':0x180}),console[_0x5010f6(0x18a)](_0x5010f6(0x175)+_0x570d1b),console['log'](_0x5010f6(0x1d7));}async function fetchAuthServerMetadata(_0x4c6da9){const _0x4aa2dc=_0x3f6f7e,_0x4da126=_0x4c6da9+_0x4aa2dc(0x1c1),_0x5c1bd6=await fetch(_0x4da126);if(!_0x5c1bd6['ok'])throw new Error('Could\x20not\x20fetch\x20auth\x20server\x20metadata\x20from\x20'+_0x4da126+':\x20'+_0x5c1bd6[_0x4aa2dc(0x1c3)]);return _0x5c1bd6[_0x4aa2dc(0x198)]();}function waitForCallback(_0x39d8b2){const _0x38b998=_0x3f6f7e,_0x1ed199={'Vhuqh':function(_0x36312a,_0x433e12){return _0x36312a!==_0x433e12;},'CPETd':'Not\x20found','tWoBc':'error','oXWYl':function(_0x59ca7b){return _0x59ca7b();},'nTQki':function(_0x4ea59b,_0x25ad32){return _0x4ea59b(_0x25ad32);},'scmKP':function(_0x576e19,_0x42cd1c,_0x3ea7a2){return _0x576e19(_0x42cd1c,_0x3ea7a2);},'OFwTA':function(_0x588154,_0x26e0ce){return _0x588154(_0x26e0ce);},'FzdgE':_0x38b998(0x1f4)};return new Promise((_0xed724a,_0x1f0993)=>{const _0x13d0f8=_0x38b998,_0x540eeb={'UpyoJ':function(_0x2e2af2,_0x222758){return _0x2e2af2(_0x222758);},'Lxofl':function(_0x1288be,_0x3d9594){const _0x3213c9=_0x89f1;return _0x1ed199[_0x3213c9(0x1cc)](_0x1288be,_0x3d9594);},'yWMGu':'/callback','fNZlp':_0x1ed199['CPETd'],'xBQgE':_0x1ed199['tWoBc'],'YVgiE':function(_0x3ffe82){const _0x1746eb=_0x89f1;return _0x1ed199[_0x1746eb(0x1ec)](_0x3ffe82);},'WUwOs':_0x13d0f8(0x19b),'xSqjB':_0x13d0f8(0x199),'cpyPI':_0x13d0f8(0x179),'oONZY':function(_0x202777,_0x919dff){const _0x1acf95=_0x13d0f8;return _0x1ed199[_0x1acf95(0x1d2)](_0x202777,_0x919dff);}},_0x4abce3=()=>{const _0x53b41d=_0x13d0f8;_0x134e8e[_0x53b41d(0x1f9)](),_0x134e8e[_0x53b41d(0x1fa)]();},_0xec3dc3=_0x1ed199['scmKP'](setTimeout,()=>{const _0x1b2f5d=_0x13d0f8;_0x4abce3(),_0x540eeb['UpyoJ'](_0x1f0993,new OAuthTimeoutError(_0x1b2f5d(0x1d4)));},0x1d4c0),_0x134e8e=_0x1ed199[_0x13d0f8(0x18e)](createServer,(_0x4cf924,_0x33e37d)=>{const _0x464525=_0x13d0f8,_0x52402a=new URL(_0x4cf924['url']??'/',_0x464525(0x1f2)+CALLBACK_PORT);if(_0x540eeb[_0x464525(0x200)](_0x52402a['pathname'],_0x540eeb[_0x464525(0x188)])){_0x33e37d['writeHead'](0x194),_0x33e37d['end'](_0x540eeb[_0x464525(0x197)]);return;}const _0x2e1543=_0x52402a['searchParams']['get']('code'),_0x13a8ef=_0x52402a[_0x464525(0x1af)][_0x464525(0x1d3)](_0x464525(0x1a8)),_0x46b3e1=_0x52402a['searchParams'][_0x464525(0x1d3)](_0x540eeb[_0x464525(0x1ca)]);if(_0x46b3e1){const _0x43b0b9=_0x52402a['searchParams']['get'](_0x464525(0x185))??_0x46b3e1;_0x33e37d['writeHead'](0xc8,{'Content-Type':'text/html'}),_0x33e37d[_0x464525(0x1e7)]('<html><body><h2>Authentication\x20failed</h2><p>'+_0x43b0b9+'</p><p>You\x20can\x20close\x20this\x20window.</p></body></html>'),clearTimeout(_0xec3dc3),_0x540eeb[_0x464525(0x1d0)](_0x4abce3),_0x540eeb[_0x464525(0x1f3)](_0x1f0993,new Error(_0x464525(0x178)+_0x43b0b9));return;}if(!_0x2e1543||_0x13a8ef!==_0x39d8b2){_0x33e37d[_0x464525(0x1df)](0x190,{'Content-Type':'text/html'}),_0x33e37d[_0x464525(0x1e7)](_0x540eeb['WUwOs']);return;}_0x33e37d[_0x464525(0x1df)](0xc8,{'Content-Type':_0x540eeb[_0x464525(0x1da)]}),_0x33e37d['end'](_0x540eeb['cpyPI']),_0x540eeb['UpyoJ'](clearTimeout,_0xec3dc3),_0x4abce3(),_0x540eeb['oONZY'](_0xed724a,_0x2e1543);});_0x134e8e[_0x13d0f8(0x1cd)](CALLBACK_PORT,_0x1ed199['FzdgE']);});}async function openBrowser(_0x519ef3){const _0x5e086c=_0x3f6f7e,_0x4c1472={'ysbqO':'darwin','zavMq':_0x5e086c(0x1b5),'pzdEa':function(_0x2b549e,_0x519a94){return _0x2b549e===_0x519a94;},'CyQXv':_0x5e086c(0x19d),'zUbBE':_0x5e086c(0x180),'mNxmk':_0x5e086c(0x194),'AnWQJ':function(_0x253d69,_0x512aec){return _0x253d69(_0x512aec);}},_0x36b1aa=process[_0x5e086c(0x1f0)]===_0x4c1472[_0x5e086c(0x1dd)]?_0x4c1472[_0x5e086c(0x1f8)]:_0x4c1472['pzdEa'](process['platform'],_0x4c1472['CyQXv'])?_0x4c1472[_0x5e086c(0x1ad)]:_0x4c1472[_0x5e086c(0x19e)];_0x4c1472[_0x5e086c(0x1ff)](exec,_0x36b1aa+'\x20\x22'+_0x519ef3+'\x22');}let currentOrigin='';async function loadCachedToken(){const _0x3a86b0=_0x3f6f7e,_0x3623b3={'xWIxk':function(_0x8fb394,_0x50fe28){return _0x8fb394!==_0x50fe28;}};try{const _0x51c877=JSON[_0x3a86b0(0x1b0)](await readFile(TOKEN_CACHE_PATH,_0x3a86b0(0x1e4)));if(_0x51c877['origin']&&_0x3623b3['xWIxk'](_0x51c877[_0x3a86b0(0x1b7)],currentOrigin))return null;if(_0x51c877['expiresAt']&&Date['now']()>_0x51c877['expiresAt'])return null;return _0x51c877[_0x3a86b0(0x1b6)]??null;}catch{return null;}}async function saveCachedToken(_0x3f328c,_0xc8e03f,_0x23f3b6){const _0x21a45c=_0x3f6f7e,_0x3080a6={'lBNLy':function(_0x31b5c4,_0x4df9cc){return _0x31b5c4*_0x4df9cc;},'BNhZp':function(_0x317c0d,_0x3b0790,_0x355d4b){return _0x317c0d(_0x3b0790,_0x355d4b);},'aPjoK':function(_0xa8f84c,_0x62d779,_0x5f19a5,_0x4e029d){return _0xa8f84c(_0x62d779,_0x5f19a5,_0x4e029d);}},_0xc862a4=await loadCachedData(),_0x5830ec={..._0xc862a4,'origin':currentOrigin,'accessToken':_0x3f328c,'refreshToken':_0xc8e03f??_0xc862a4?.['refreshToken'],'expiresAt':_0x23f3b6?Date[_0x21a45c(0x181)]()+_0x3080a6[_0x21a45c(0x1bd)](_0x23f3b6,0x3e8):undefined};await mkdir(_0x3080a6['BNhZp'](join,homedir(),'.ranger'),{'recursive':!![]}),await _0x3080a6['aPjoK'](writeFile,TOKEN_CACHE_PATH,JSON['stringify'](_0x5830ec),{'mode':0x180});}async function loadCachedClient(){const _0x47e0c0=_0x3f6f7e,_0x462f13=await loadCachedData();if(_0x462f13?.[_0x47e0c0(0x1b7)]&&_0x462f13['origin']!==currentOrigin)return null;return _0x462f13?.['clientId']?{'clientId':_0x462f13['clientId'],'clientSecret':_0x462f13['clientSecret']}:null;}async function clearCachedClient(){const _0x5b7bca=_0x3f6f7e,_0x2537b2={'fYuQj':function(_0x50eb98){return _0x50eb98();},'LIllR':function(_0x55a05b,_0x8f9381,_0x51214b,_0x4b1b60){return _0x55a05b(_0x8f9381,_0x51214b,_0x4b1b60);}},_0x34c19c=await _0x2537b2[_0x5b7bca(0x1fe)](loadCachedData);if(!_0x34c19c)return;const {clientId:_0x329cdc,clientSecret:_0x57d3f6,..._0x4ad136}=_0x34c19c;await _0x2537b2[_0x5b7bca(0x1cf)](writeFile,TOKEN_CACHE_PATH,JSON[_0x5b7bca(0x1a7)](_0x4ad136),{'mode':0x180});}async function saveCachedClient(_0x4e2f51,_0x4f7e4d){const _0x1e17a6=_0x3f6f7e,_0x2e60d2={'VjTqk':function(_0x582753,_0x343bfd,_0x493621){return _0x582753(_0x343bfd,_0x493621);},'ypDOB':_0x1e17a6(0x191),'lTYhW':function(_0xb7ac0b,_0x398346,_0x377743,_0x286f62){return _0xb7ac0b(_0x398346,_0x377743,_0x286f62);}},_0xcca223=await loadCachedData(),_0xdc839b={..._0xcca223,'origin':currentOrigin,'accessToken':_0xcca223?.['accessToken']??'','clientId':_0x4e2f51,'clientSecret':_0x4f7e4d};await _0x2e60d2[_0x1e17a6(0x189)](mkdir,_0x2e60d2[_0x1e17a6(0x189)](join,homedir(),_0x2e60d2['ypDOB']),{'recursive':!![]}),await _0x2e60d2['lTYhW'](writeFile,TOKEN_CACHE_PATH,JSON[_0x1e17a6(0x1a7)](_0xdc839b),{'mode':0x180});}async function loadCachedData(){const _0x1aff59=_0x3f6f7e,_0x308353={'OyAYe':_0x1aff59(0x1e4)};try{return JSON[_0x1aff59(0x1b0)](await readFile(TOKEN_CACHE_PATH,_0x308353['OyAYe']));}catch{return null;}}async function parseResponse(_0x1f8797){const _0x106fc3=_0x3f6f7e,_0x14a098={'twLCR':'content-type','jYHQY':'text/event-stream','cYXWA':_0x106fc3(0x1c2)},_0x4f72fa=_0x1f8797['headers'][_0x106fc3(0x1d3)](_0x14a098['twLCR'])??'';if(_0x4f72fa[_0x106fc3(0x1ba)](_0x14a098['jYHQY'])){const _0x318e21=await _0x1f8797[_0x106fc3(0x193)]();for(const _0xbd3d1b of _0x318e21[_0x106fc3(0x1f6)]('\x0a')){const _0x365e9d=_0xbd3d1b['trim']();if(_0x365e9d[_0x106fc3(0x1b2)](_0x106fc3(0x187))){const _0xe60230=_0x365e9d['slice']('data:'['length'])[_0x106fc3(0x1ed)]();if(!_0xe60230)continue;try{const _0x1ea0b9=JSON['parse'](_0xe60230);if(_0x1ea0b9['id']!==undefined||_0x1ea0b9[_0x106fc3(0x1f1)])return _0x1ea0b9;}catch{}}}throw new Error(_0x14a098['cYXWA']);}return _0x1f8797[_0x106fc3(0x198)]();}function extractToken(_0x3e1d15){const _0x3aa504=_0x3f6f7e,_0xa957dc={'XPLQP':function(_0x68f9f1,_0x4e3abc){return _0x68f9f1===_0x4e3abc;},'Bmoqb':'string','CsPbh':function(_0x32a72b,_0x5c9096){return _0x32a72b===_0x5c9096;}};if(!_0x3e1d15)return null;const _0x5a17f7=_0x3e1d15[_0x3aa504(0x1fc)];if(_0x5a17f7?.['token']&&_0xa957dc[_0x3aa504(0x1ce)](typeof _0x5a17f7['token'],_0xa957dc['Bmoqb']))return _0x5a17f7['token'];if(_0x3e1d15['isError']){const _0x18211b=_0x3e1d15[_0x3aa504(0x1f5)];throw new Error('Server\x20returned\x20error:\x20'+(_0x18211b?.[0x0]?.[_0x3aa504(0x193)]??'Unknown\x20error'));}const _0x55d475=_0x3e1d15[_0x3aa504(0x1f5)];if(_0x55d475)for(const _0x8928e8 of _0x55d475){if(_0xa957dc[_0x3aa504(0x1ce)](_0x8928e8[_0x3aa504(0x1d1)],'text')&&_0x8928e8['text']){try{const _0x4d8d7d=JSON['parse'](_0x8928e8['text']);if(_0xa957dc['CsPbh'](typeof _0x4d8d7d?.['token'],'string'))return _0x4d8d7d['token'];}catch{}const _0x143431=_0x8928e8['text'][_0x3aa504(0x1c0)](/(rngr_[A-Za-z0-9_-]+)/);if(_0x143431)return _0x143431[0x1];}}return null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function _0x3be1(_0x1648d3,_0x2ecce7){_0x1648d3=_0x1648d3-0x126;var _0x119a8d=_0x119a();var _0x3be141=_0x119a8d[_0x1648d3];return _0x3be141;}(function(_0x2920ba,_0x2ace09){var _0x54a8c0=_0x3be1,_0x2209aa=_0x2920ba();while(!![]){try{var _0x5b65d2=-parseInt(_0x54a8c0(0x135))/0x1+parseInt(_0x54a8c0(0x129))/0x2*(parseInt(_0x54a8c0(0x130))/0x3)+-parseInt(_0x54a8c0(0x131))/0x4+-parseInt(_0x54a8c0(0x12e))/0x5+-parseInt(_0x54a8c0(0x12f))/0x6*(-parseInt(_0x54a8c0(0x132))/0x7)+parseInt(_0x54a8c0(0x128))/0x8*(parseInt(_0x54a8c0(0x12d))/0x9)+-parseInt(_0x54a8c0(0x12c))/0xa;if(_0x5b65d2===_0x2ace09)break;else _0x2209aa['push'](_0x2209aa['shift']());}catch(_0x4d8566){_0x2209aa['push'](_0x2209aa['shift']());}}}(_0x119a,0x69ecc));function _0x119a(){var _0xdc165c=['error','exit','8umQRWP','13402IgQTvI','SddxD','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','169130dkNLRn','5342643xkZPjD','4210220VtZQch','1340358MECltc','165IbDvIn','313956mjPqhI','21Girmsi','Existing\x20sessions\x20in\x20your\x20old\x20<project>/.ranger/\x20dirs\x20still\x20work\x20as\x20a\x0a','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','261047lHlLwt','fallback;\x20you\x20can\x20delete\x20them\x20once\x20you\x20have\x20re-auth-ed.','jRsVt'];_0x119a=function(){return _0xdc165c;};return _0x119a();}export async function migrateProfile(_0x488f1f,_0x37582c){var _0xc10d20=_0x3be1,_0x5512c6={'jRsVt':function(_0x27ea02,_0x47978e){return _0x27ea02+_0x47978e;},'wqlQL':'\x20\x20https://docs.ranger.net/main/concepts/profiles\x0a','SddxD':_0xc10d20(0x136)};console[_0xc10d20(0x126)](_0x5512c6[_0xc10d20(0x137)]('ranger\x20profile\x20migrate\x20is\x20no\x20longer\x20supported.\x0a'+'\x0a',_0xc10d20(0x134))+'\x20\x20ranger\x20profile\x20add\x20<name>\x0a'+'\x0a'+_0xc10d20(0x12b)+_0x5512c6['wqlQL']+'\x0a'+_0xc10d20(0x133)+_0x5512c6[_0xc10d20(0x12a)]),process[_0xc10d20(0x127)](0x1);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x245e4e,_0x1fef5b){const _0x8a87d6=_0x2077,_0x134ae0=_0x245e4e();while(!![]){try{const _0x42091f=-parseInt(_0x8a87d6(0x8a))/0x1*(parseInt(_0x8a87d6(0x8e))/0x2)+-parseInt(_0x8a87d6(0x9e))/0x3+parseInt(_0x8a87d6(0x78))/0x4*(-parseInt(_0x8a87d6(0x85))/0x5)+-parseInt(_0x8a87d6(0x89))/0x6*(parseInt(_0x8a87d6(0x9c))/0x7)+parseInt(_0x8a87d6(0x7d))/0x8*(parseInt(_0x8a87d6(0x99))/0x9)+parseInt(_0x8a87d6(0x75))/0xa+parseInt(_0x8a87d6(0x86))/0xb;if(_0x42091f===_0x1fef5b)break;else _0x134ae0['push'](_0x134ae0['shift']());}catch(_0x1665dc){_0x134ae0['push'](_0x134ae0['shift']());}}}(_0x2f9e,0xeed47));import{join}from'path';function _0x2077(_0x5ef80e,_0x22ad4a){_0x5ef80e=_0x5ef80e-0x6c;const _0x2f9e1e=_0x2f9e();let _0x207707=_0x2f9e1e[_0x5ef80e];return _0x207707;}function _0x2f9e(){const _0x494511=['output','ranger','project','15931720NiSVCq','ranger@trailhead','WFBlp','4irqbfK','OIRHt','✓\x20Claude\x20Code\x20plugin\x20enabled','marketplace','--scope','36904ZycECB','rBKxa','TCcvv','❌\x20Failed\x20to\x20add\x20marketplace:','SAaJx','vqKYF','WWUGw','UJtpb','9746855XKcury','22614493yBzNjI','wqVOI','SKILL.md','40506XcUwzi','2897ZkFGNq','log','yTDbA','\x20\x20claude\x20plugin\x20install\x20ranger@trailhead\x20--scope\x20','332ngOqRH','\x0aInstalling\x20Claude\x20Code\x20plugin\x20(','✓\x20Claude\x20Code\x20plugin\x20installed\x20successfully','wPDiJ','uDLyE','success','Project\x20(shared\x20with\x20team\x20via\x20git)','\x20level)...\x0a','pluginScope','nduat','Where\x20should\x20the\x20plugin\x20be\x20installed?','3231ZStWXL','xtGJh','plugin','1169iuDzlY','AUHUj','2307495NFEqCi','PtAaR','list','.claude','install','KxpDV','error','user','Aufkt'];_0x2f9e=function(){return _0x494511;};return _0x2f9e();}import{existsSync}from'fs';import _0x4dbdd7 from'inquirer';import{skillup}from'../skillup.js';import{runClaudeCommand,isMarketplaceAdded,isPluginInstalled}from'../utils/claudePlugin.js';import{getProjectRoot,getSkillsDir}from'../utils/claudeConfig.js';export async function ensureClaudePlugin(_0x5afe97){const _0x32cd2d=_0x2077,_0xd889dd={'SROtE':function(_0x18c149,_0x1af4af){return _0x18c149(_0x1af4af);},'xtGJh':_0x32cd2d(0x76),'uDLyE':'✓\x20Claude\x20Code\x20plugin\x20already\x20installed','pbdZj':function(_0x18fe9b,_0x15d7db,_0x534e6d){return _0x18fe9b(_0x15d7db,_0x534e6d);},'UJtpb':function(_0x59d2a1){return _0x59d2a1();},'rbfYw':_0x32cd2d(0x6c),'wqVOI':_0x32cd2d(0x74),'JNbFc':_0x32cd2d(0xa0),'yTDbA':_0x32cd2d(0x96),'WWUGw':'user','AUHUj':_0x32cd2d(0x94),'TMgZQ':function(_0x6fd88a,_0x4ebe5c){return _0x6fd88a(_0x4ebe5c);},'MgJYG':'trailhead','xWpfg':'add','vqKYF':_0x32cd2d(0x9b),'KxpDV':function(_0x4896b4,_0x2bb854){return _0x4896b4===_0x2bb854;},'WFBlp':function(_0x428cca){return _0x428cca();},'eYoQh':_0x32cd2d(0x90),'wPDiJ':_0x32cd2d(0x7c),'SAaJx':'already\x20enabled','OIRHt':'⚠\x20Failed\x20to\x20enable\x20plugin:'},_0x3b9a3d=await _0xd889dd['SROtE'](isPluginInstalled,_0xd889dd['xtGJh']);if(_0x3b9a3d)return console[_0x32cd2d(0x8b)](_0xd889dd[_0x32cd2d(0x92)]),![];const _0x22d5de=existsSync(_0xd889dd['pbdZj'](join,_0xd889dd['UJtpb'](getProjectRoot),_0xd889dd['rbfYw']));let _0x3782d0;if(_0x5afe97)_0x3782d0=_0x5afe97;else{if(_0x22d5de)_0x3782d0=_0xd889dd[_0x32cd2d(0x87)];else{console['log']('\x0a📦\x20Claude\x20Code\x20Plugin\x0a');const _0xe7fdb8=await _0x4dbdd7['prompt']([{'type':_0xd889dd['JNbFc'],'name':_0xd889dd[_0x32cd2d(0x8c)],'message':_0x32cd2d(0x98),'choices':[{'name':'User\x20(available\x20in\x20all\x20your\x20projects)','value':_0xd889dd[_0x32cd2d(0x83)]},{'name':_0xd889dd[_0x32cd2d(0x9d)],'value':_0x32cd2d(0x74)}],'default':_0xd889dd[_0x32cd2d(0x83)]}]);_0x3782d0=_0xe7fdb8['pluginScope'];}}console['log'](_0x32cd2d(0x8f)+_0x3782d0+_0x32cd2d(0x95));const _0x56435b=await _0xd889dd['TMgZQ'](isMarketplaceAdded,_0xd889dd['MgJYG']);let _0x451ad7=_0x56435b;if(_0x56435b)console[_0x32cd2d(0x8b)]('✓\x20Marketplace\x20already\x20added');else{const _0x54dd4e=await runClaudeCommand(['plugin',_0x32cd2d(0x7b),_0xd889dd['xWpfg'],'ranger-testing/trailhead']);!_0x54dd4e[_0x32cd2d(0x93)]?(console['error'](_0x32cd2d(0x80),_0x54dd4e[_0x32cd2d(0x6f)]),console[_0x32cd2d(0x8b)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console['log']('\x20\x20claude\x20plugin\x20marketplace\x20add\x20ranger-testing/trailhead'),console[_0x32cd2d(0x8b)](_0x32cd2d(0x8d)+_0x3782d0)):_0x451ad7=!![];}if(_0x451ad7){const _0x549e3b=await runClaudeCommand([_0xd889dd['vqKYF'],_0x32cd2d(0x6d),_0xd889dd[_0x32cd2d(0x9a)],'--scope',_0x3782d0],{'cwd':_0xd889dd[_0x32cd2d(0x6e)](_0x3782d0,_0xd889dd[_0x32cd2d(0x87)])?_0xd889dd[_0x32cd2d(0x77)](getProjectRoot):undefined});if(!_0x549e3b['success'])console[_0x32cd2d(0x6f)]('❌\x20Failed\x20to\x20install\x20plugin:',_0x549e3b[_0x32cd2d(0x6f)]),console[_0x32cd2d(0x8b)]('\x0aYou\x20can\x20install\x20manually\x20with:'),console['log'](_0x32cd2d(0x8d)+_0x3782d0);else{console['log'](_0xd889dd['eYoQh']);const _0x30ae13=[_0xd889dd[_0x32cd2d(0x82)],'enable',_0xd889dd[_0x32cd2d(0x9a)]];_0x3782d0===_0xd889dd[_0x32cd2d(0x87)]&&_0x30ae13['push'](_0xd889dd[_0x32cd2d(0x91)],_0xd889dd['wqVOI']);const _0x3e083c=await runClaudeCommand(_0x30ae13,{'captureOutput':!![],'cwd':_0xd889dd['KxpDV'](_0x3782d0,_0xd889dd['wqVOI'])?_0xd889dd[_0x32cd2d(0x84)](getProjectRoot):undefined}),_0x423498=_0x3e083c[_0x32cd2d(0x72)]?.['includes'](_0xd889dd[_0x32cd2d(0x81)]);!_0x3e083c['success']&&!_0x423498?console['error'](_0xd889dd[_0x32cd2d(0x79)],_0x3e083c[_0x32cd2d(0x6f)]):console[_0x32cd2d(0x8b)](_0x32cd2d(0x7a));}}return!![];}export async function ensureClaudeSkills(_0x1ad334){const _0x134607=_0x2077,_0x232eae={'Aufkt':_0x134607(0x70),'PtAaR':function(_0x6604f2,_0x1216bb){return _0x6604f2(_0x1216bb);},'mdzlr':function(_0x5482b2,_0x4b2d61,_0x5d6872,_0x1bd286){return _0x5482b2(_0x4b2d61,_0x5d6872,_0x1bd286);},'UpaQK':_0x134607(0x74),'ZzxwM':_0x134607(0x73),'rBKxa':function(_0x42a7c7,_0x18a8d3){return _0x42a7c7||_0x18a8d3;},'nduat':'✓\x20Ranger\x20skills\x20already\x20installed','fHwfA':function(_0x16525d,_0x2183af,_0x58940b){return _0x16525d(_0x2183af,_0x58940b);},'JkaZa':function(_0x5c9ab9){return _0x5c9ab9();},'bRlux':'.claude','TCcvv':'Would\x20you\x20like\x20to\x20install\x20skills?'},_0x3a415b=existsSync(join(getSkillsDir(_0x232eae[_0x134607(0x71)]),'ranger',_0x134607(0x88))),_0x7013d=_0x232eae[_0x134607(0x9f)](existsSync,_0x232eae['mdzlr'](join,_0x232eae['PtAaR'](getSkillsDir,_0x232eae['UpaQK']),_0x232eae['ZzxwM'],'SKILL.md'));if(_0x232eae[_0x134607(0x7e)](_0x3a415b,_0x7013d))return console['log'](_0x232eae[_0x134607(0x97)]),![];const _0x1e4b4d=existsSync(_0x232eae['fHwfA'](join,_0x232eae['JkaZa'](getProjectRoot),_0x232eae['bRlux']));let _0x535d69=!![];if(_0x1ad334)await skillup({'autoInstall':_0x1ad334,'suppressUsage':!![]});else{if(_0x1e4b4d)await _0x232eae[_0x134607(0x9f)](skillup,{'autoInstall':_0x232eae['UpaQK'],'suppressUsage':!![]});else{const _0x15fca1=await _0x4dbdd7['prompt']([{'type':'confirm','name':'wantsSkillup','message':_0x232eae[_0x134607(0x7f)],'default':!![]}]);_0x535d69=_0x15fca1['wantsSkillup'],_0x535d69&&await skillup({'suppressUsage':!![]});}}return _0x535d69;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x432eee,_0x2f2073){const _0x214039=_0x15ac,_0x1bc840=_0x432eee();while(!![]){try{const _0x2f489d=parseInt(_0x214039(0x1f0))/0x1*(parseInt(_0x214039(0x1f6))/0x2)+parseInt(_0x214039(0x1f9))/0x3*(parseInt(_0x214039(0x20c))/0x4)+parseInt(_0x214039(0x1fe))/0x5+-parseInt(_0x214039(0x201))/0x6*(-parseInt(_0x214039(0x1ed))/0x7)+-parseInt(_0x214039(0x1f5))/0x8*(parseInt(_0x214039(0x1f1))/0x9)+-parseInt(_0x214039(0x1ee))/0xa+-parseInt(_0x214039(0x1f7))/0xb*(parseInt(_0x214039(0x202))/0xc);if(_0x2f489d===_0x2f2073)break;else _0x1bc840['push'](_0x1bc840['shift']());}catch(_0x179194){_0x1bc840['push'](_0x1bc840['shift']());}}}(_0x3a36,0x76438));function _0x15ac(_0x47499a,_0x1b3988){_0x47499a=_0x47499a-0x1ec;const _0x3a3657=_0x3a36();let _0x15acf2=_0x3a3657[_0x47499a];return _0x15acf2;}import{join}from'path';import{existsSync}from'fs';import{mkdir,readFile,writeFile}from'fs/promises';function _0x3a36(){const _0x1e23fb=['$schema','https://opencode.ai/config.json','2562800YwlCQx','kIbQa','wpzSj','1069842FvjhaY','6540rxXvJB','includes','plugin','⚠\x20Failed\x20to\x20read\x20opencode.json.\x20Please\x20add\x20the\x20plugin\x20manually.','FXdgO','\x0a📦\x20OpenCode\x20Plugin\x0a','uuayD','isArray','log','Where\x20should\x20the\x20plugin\x20be\x20installed?','2344076DqOyXV','✓\x20OpenCode\x20plugin\x20already\x20configured','parse','User\x20(available\x20in\x20all\x20your\x20projects)','35znDWYy','6594990SSJdPR','yZFYp','212xqxqEo','684GvQIfa','VZFRD','OsEgS','oRYuJ','54072lOnykz','6092PHdzBD','19745YhQXpi','CRHpc','3aVenHT','stringify','utf-8'];_0x3a36=function(){return _0x1e23fb;};return _0x3a36();}import _0x480a94 from'inquirer';import{getOpencodeConfigDir}from'../utils/opencodeConfig.js';export async function ensureOpencodePluginConfig(_0x264ce9){const _0x5dd1f4=_0x15ac,_0x4260ce={'vNpyo':function(_0xd71839,_0x3d9c92,_0x336500){return _0xd71839(_0x3d9c92,_0x336500);},'kIbQa':function(_0x46639d,_0x3236ee){return _0x46639d(_0x3236ee);},'CRHpc':'project','oRYuJ':_0x5dd1f4(0x207),'KBIdp':'list','OsEgS':'pluginScope','FXdgO':_0x5dd1f4(0x1ec),'XWjyl':'user','uuayD':'@ranger-testing/opencode-plugin','yZFYp':_0x5dd1f4(0x205),'VZFRD':'Failed\x20to\x20read\x20opencode.json','wpzSj':function(_0x357fb7,_0x520ab,_0x4afefc){return _0x357fb7(_0x520ab,_0x4afefc);},'qLqvj':function(_0x4341ab,_0x139334,_0xdef516){return _0x4341ab(_0x139334,_0xdef516);}},_0x3204f5=existsSync(_0x4260ce['vNpyo'](join,_0x4260ce[_0x5dd1f4(0x1ff)](getOpencodeConfigDir,'project'),'opencode.json'));let _0x2258d1;if(_0x264ce9)_0x2258d1=_0x264ce9;else{if(_0x3204f5)_0x2258d1=_0x4260ce[_0x5dd1f4(0x1f8)];else{console['log'](_0x4260ce[_0x5dd1f4(0x1f4)]);const _0x5a9aec=await _0x480a94['prompt']([{'type':_0x4260ce['KBIdp'],'name':_0x4260ce[_0x5dd1f4(0x1f3)],'message':_0x5dd1f4(0x20b),'choices':[{'name':_0x4260ce[_0x5dd1f4(0x206)],'value':_0x4260ce['XWjyl']},{'name':'Project\x20(shared\x20with\x20team\x20via\x20git)','value':_0x4260ce['CRHpc']}],'default':'user'}]);_0x2258d1=_0x5a9aec['pluginScope'];}}const _0x5a9969=join(getOpencodeConfigDir(_0x2258d1),'opencode.json'),_0x4acd88=_0x4260ce[_0x5dd1f4(0x208)],_0x2fa436=_0x5dd1f4(0x1fd);let _0x3383b6={};if(_0x4260ce['kIbQa'](existsSync,_0x5a9969))try{const _0x211880=await readFile(_0x5a9969,_0x5dd1f4(0x1fb));_0x3383b6=JSON[_0x5dd1f4(0x20e)](_0x211880);}catch(_0x2a1259){return console['error'](_0x4260ce[_0x5dd1f4(0x1ef)]),{'configured':![],'scope':_0x2258d1,'error':_0x4260ce[_0x5dd1f4(0x1f2)],'details':_0x2a1259};}const _0x529a05=Array[_0x5dd1f4(0x209)](_0x3383b6[_0x5dd1f4(0x204)])?_0x3383b6['plugin']:[];if(_0x529a05[_0x5dd1f4(0x203)](_0x4acd88))return console['log'](_0x5dd1f4(0x20d)),{'configured':![],'scope':_0x2258d1};return _0x3383b6[_0x5dd1f4(0x1fc)]=_0x3383b6[_0x5dd1f4(0x1fc)]||_0x2fa436,_0x3383b6[_0x5dd1f4(0x204)]=[..._0x529a05,_0x4acd88],await _0x4260ce[_0x5dd1f4(0x200)](mkdir,getOpencodeConfigDir(_0x2258d1),{'recursive':!![]}),await _0x4260ce['qLqvj'](writeFile,_0x5a9969,JSON[_0x5dd1f4(0x1fa)](_0x3383b6,null,0x2)+'\x0a'),console[_0x5dd1f4(0x20a)]('✓\x20OpenCode\x20plugin\x20configured'),{'configured':!![],'scope':_0x2258d1};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x266aba,_0x56d754){var _0x1d9dc0=_0x4b43,_0x901ba4=_0x266aba();while(!![]){try{var _0x44315b=parseInt(_0x1d9dc0(0x194))/0x1*(-parseInt(_0x1d9dc0(0x18b))/0x2)+parseInt(_0x1d9dc0(0x193))/0x3*(parseInt(_0x1d9dc0(0x183))/0x4)+-parseInt(_0x1d9dc0(0x18d))/0x5*(parseInt(_0x1d9dc0(0x18f))/0x6)+-parseInt(_0x1d9dc0(0x191))/0x7+-parseInt(_0x1d9dc0(0x18e))/0x8+-parseInt(_0x1d9dc0(0x190))/0x9*(parseInt(_0x1d9dc0(0x18c))/0xa)+-parseInt(_0x1d9dc0(0x187))/0xb*(-parseInt(_0x1d9dc0(0x196))/0xc);if(_0x44315b===_0x56d754)break;else _0x901ba4['push'](_0x901ba4['shift']());}catch(_0xa780c9){_0x901ba4['push'](_0x901ba4['shift']());}}}(_0x59af,0xb2b3f));export async function setupCi(_0x3db482,_0x46b691,_0x37cad5){var _0x122811=_0x4b43,_0x2b1e8b={'gCBGs':function(_0x457b19,_0x100ae5){return _0x457b19+_0x100ae5;},'TOGGD':function(_0x3b5c91,_0x59a7fb){return _0x3b5c91+_0x59a7fb;},'aGTam':_0x122811(0x186),'OfHhv':_0x122811(0x185),'EalFz':_0x122811(0x188)};console['error'](_0x2b1e8b[_0x122811(0x189)](_0x2b1e8b[_0x122811(0x192)](_0x2b1e8b[_0x122811(0x192)](_0x122811(0x18a)+'\x0a',_0x2b1e8b['aGTam'])+_0x2b1e8b['OfHhv']+'\x0a',_0x2b1e8b[_0x122811(0x184)]),_0x122811(0x195))),process[_0x122811(0x197)](0x1);}function _0x4b43(_0x2c8b18,_0x2881e5){_0x2c8b18=_0x2c8b18-0x183;var _0x59afc3=_0x59af();var _0x4b4392=_0x59afc3[_0x2c8b18];return _0x4b4392;}function _0x59af(){var _0x3efbb7=['10TlFrLw','8504904bNXcZT','619116BZWmfu','9wvQxWs','7764638qdAVrE','TOGGD','42843oJwvII','263046IcjACu','\x20\x20https://docs.ranger.net/main/concepts/profiles','12gBCGSM','exit','68KOHigA','EalFz','\x20\x20ranger\x20profile\x20add\x20<name>\x0a','To\x20set\x20up\x20a\x20fresh\x20profile,\x20run:\x0a','51787758wfEACQ','For\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:\x0a','gCBGs','ranger\x20setup\x20--ci\x20writes\x20to\x20the\x20legacy\x20.ranger/ci/\x20tree\x20which\x20is\x20no\x20longer\x20supported.\x0a','10YAHlNO','5248390lcfgnw'];_0x59af=function(){return _0x3efbb7;};return _0x59af();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function _0x1471(){const _0x2cba28=['29343028pLihqf','GPyBq','/.opencode/skills/','claude','project','0|1|5|2|3|4','dHlzH','781496gGYmiq','18GCFruO','PHyEm','LEfOd','user','1446333JqCLgT','\x20\x203.\x20Run:\x20ranger\x20skillup','vZQLu','4216168QvRWmQ','\x0a✅\x20Installed\x20','\x20--opencode','To\x20get\x20started:','36TnMbij','FKIhj','Fxmlu','7698270pVLlZh','\x20\x20Failed\x20to\x20install\x20ranger\x20skill:','isTTY','4552060NRUcMs','vLDZz','42dAcxan','Where\x20should\x20skills\x20be\x20installed?','24OSaCqA','dtZBo','25622xrsiUt','\x0a⚠️\x20\x20No\x20skills\x20were\x20installed.\x0a','installLevel','imcvo','UGjCr','HwWHM','vqiWd','log','\x20\x201.\x20Get\x20your\x20API\x20token\x20from\x20https://dashboard.ranger.net/cli','opencode'];_0x1471=function(){return _0x2cba28;};return _0x1471();}(function(_0x210bf9,_0x411a18){const _0x4164d7=_0x23f6,_0x390391=_0x210bf9();while(!![]){try{const _0x1727b3=-parseInt(_0x4164d7(0xd6))/0x1*(-parseInt(_0x4164d7(0xe2))/0x2)+-parseInt(_0x4164d7(0xe0))/0x3*(parseInt(_0x4164d7(0xf3))/0x4)+-parseInt(_0x4164d7(0xd9))/0x5+parseInt(_0x4164d7(0xde))/0x6*(parseInt(_0x4164d7(0xf8))/0x7)+-parseInt(_0x4164d7(0xd2))/0x8*(parseInt(_0x4164d7(0xf4))/0x9)+parseInt(_0x4164d7(0xdc))/0xa+parseInt(_0x4164d7(0xec))/0xb;if(_0x1727b3===_0x411a18)break;else _0x390391['push'](_0x390391['shift']());}catch(_0x31f85b){_0x390391['push'](_0x390391['shift']());}}}(_0x1471,0xd547b));import{basename}from'path';import _0x144cbf from'inquirer';import{getToken}from'./utils/keychain.js';import{installSkill}from'./utils/skills.js';import{getCurrentVersion}from'./utils/version.js';import{getClaudeConfigDir,getProjectRoot}from'./utils/claudeConfig.js';function _0x23f6(_0x1506f3,_0x455236){_0x1506f3=_0x1506f3-0xd0;const _0x1471fe=_0x1471();let _0x23f6ed=_0x1471fe[_0x1506f3];return _0x23f6ed;}import{getOpencodeConfigDir}from'./utils/opencodeConfig.js';export async function skillup(_0x1484e5={}){const _0x5047d4=_0x23f6,_0x10abe5={'Fxmlu':'\x0a🎯\x20Ranger\x20Skill\x20Setup\x0a','PHyEm':function(_0x1447a5){return _0x1447a5();},'vqiWd':_0x5047d4(0xf1),'iFwDF':'❌\x20No\x20Ranger\x20API\x20token\x20found.\x0a','dtZBo':_0x5047d4(0xd4),'imcvo':'opencode','vZQLu':_0x5047d4(0xea),'UGjCr':'✓\x20Found\x20API\x20token','dHlzH':function(_0x1abf15,_0x4b85e8){return _0x1abf15(_0x4b85e8);},'CgYDK':'user','GPyBq':function(_0x31ea5f){return _0x31ea5f();},'FKIhj':function(_0x110bc7,_0x2a4c44){return _0x110bc7===_0x2a4c44;},'AXIVp':'list','vLDZz':'installLevel','HwWHM':'project','dyZtD':'\x0a📦\x20Installing\x20skills...\x0a','YMSLl':function(_0x3fc75b,_0x4b6d99){return _0x3fc75b>_0x4b6d99;},'LEfOd':'project-level','MFxku':_0x5047d4(0xe3)};console[_0x5047d4(0xe9)](_0x10abe5[_0x5047d4(0xd8)]);const _0x4ea25d=_0x1484e5['platform']??_0x5047d4(0xef),_0x51e5c7=await _0x10abe5[_0x5047d4(0xf5)](getToken);if(!_0x51e5c7){const _0x4c151c=_0x10abe5[_0x5047d4(0xe8)]['split']('|');let _0x5ace78=0x0;while(!![]){switch(_0x4c151c[_0x5ace78++]){case'0':console['log'](_0x10abe5['iFwDF']);continue;case'1':console['log'](_0x5047d4(0xd5));continue;case'2':console['log']('\x20\x202.\x20Run:\x20ranger\x20setup'+(_0x4ea25d===_0x5047d4(0xeb)?_0x10abe5['dtZBo']:'')+'\x20<your-api-token>');continue;case'3':console[_0x5047d4(0xe9)](_0x5047d4(0xd0)+(_0x4ea25d===_0x10abe5[_0x5047d4(0xe5)]?_0x10abe5[_0x5047d4(0xe1)]:'')+'\x0a');continue;case'4':return;case'5':console[_0x5047d4(0xe9)](_0x10abe5[_0x5047d4(0xd1)]);continue;}break;}}console[_0x5047d4(0xe9)](_0x10abe5[_0x5047d4(0xe6)]);const _0x2b8f63=_0x10abe5[_0x5047d4(0xf5)](getProjectRoot),_0x3bec64=_0x10abe5[_0x5047d4(0xf2)](basename,_0x2b8f63),_0x32b61a=_0x4ea25d===_0x10abe5[_0x5047d4(0xe5)]?getOpencodeConfigDir(_0x10abe5['CgYDK'])+'/skills/':_0x10abe5[_0x5047d4(0xed)](getClaudeConfigDir)+'/skills/',_0x5a593d=_0x10abe5[_0x5047d4(0xd7)](_0x4ea25d,_0x10abe5[_0x5047d4(0xe5)])?_0x2b8f63+_0x5047d4(0xee):_0x2b8f63+'/.claude/skills/',_0x17e352=process['stdin'][_0x5047d4(0xdb)]&&process['stdout']['isTTY'];let _0x46ee2a;if(_0x1484e5['autoInstall'])_0x46ee2a=_0x1484e5['autoInstall'];else{if(_0x17e352){const _0x47ae5f=await _0x144cbf['prompt']([{'type':_0x10abe5['AXIVp'],'name':_0x10abe5[_0x5047d4(0xdd)],'message':_0x5047d4(0xdf),'choices':[{'name':'All\x20projects\x20('+_0x32b61a+')','value':_0x5047d4(0xf7)},{'name':'This\x20project\x20only\x20('+_0x5a593d+')','value':_0x5047d4(0xf0)}]}]);_0x46ee2a=_0x47ae5f[_0x5047d4(0xe4)];}else _0x46ee2a=_0x10abe5[_0x5047d4(0xe7)],console['log']('Non-interactive\x20mode:\x20Installing\x20skills\x20at\x20project\x20level\x20('+_0x5a593d+')');}let _0x39efff=0x0;const _0x132b3c=getCurrentVersion();console[_0x5047d4(0xe9)](_0x10abe5['dyZtD']);try{const _0x252d68=await installSkill('ranger',{'cliVersion':_0x132b3c,'level':_0x46ee2a,'platform':_0x4ea25d});_0x252d68&&_0x39efff++;}catch(_0x8308ca){console['warn'](_0x5047d4(0xda),_0x8308ca instanceof Error?_0x8308ca['message']:_0x8308ca);}if(_0x10abe5['YMSLl'](_0x39efff,0x0)){const _0xf7ae6a=_0x46ee2a===_0x5047d4(0xf7)?'user-level':_0x10abe5[_0x5047d4(0xf6)];console[_0x5047d4(0xe9)](_0x5047d4(0xd3)+_0x39efff+'\x20'+_0xf7ae6a+'\x20skill'+(_0x39efff>0x1?'s':'')+'\x20successfully!\x0a'),!_0x1484e5['suppressUsage']&&(console['log']('To\x20use:'),_0x10abe5[_0x5047d4(0xd7)](_0x4ea25d,_0x5047d4(0xeb))?console[_0x5047d4(0xe9)]('\x20\x20-\x20Start\x20OpenCode\x20and\x20run\x20the\x20`ranger_enable`\x20tool\x20to\x20enable\x20hooks.'):console['log']('\x20\x20-\x20Open\x20Claude\x20Code\x20in\x20plan\x20mode\x20and\x20run\x20/ranger:enable.\x20Plan\x20out\x20a\x20UI\x20feature\x20with\x20Ranger\x20and\x20watch\x20Ranger\x20test\x20it\x20for\x20you!'));}else console[_0x5047d4(0xe9)](_0x10abe5['MFxku']);}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x4c7a97=_0x442d;(function(_0x5283bf,_0x219087){const _0x2a0980=_0x442d,_0x511611=_0x5283bf();while(!![]){try{const _0x45efae=-parseInt(_0x2a0980(0x136))/0x1+-parseInt(_0x2a0980(0xf2))/0x2*(-parseInt(_0x2a0980(0xee))/0x3)+parseInt(_0x2a0980(0xeb))/0x4*(-parseInt(_0x2a0980(0x134))/0x5)+-parseInt(_0x2a0980(0xfb))/0x6*(-parseInt(_0x2a0980(0x106))/0x7)+-parseInt(_0x2a0980(0xfd))/0x8+parseInt(_0x2a0980(0xf9))/0x9+parseInt(_0x2a0980(0xef))/0xa;if(_0x45efae===_0x219087)break;else _0x511611['push'](_0x511611['shift']());}catch(_0xb7723f){_0x511611['push'](_0x511611['shift']());}}}(_0x3c90,0x2b72f));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x2ac3a2 from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION='1.58.2';const bold=_0x292e93=>'\x1b[1m'+_0x292e93+_0x4c7a97(0x12e);function _0x442d(_0x26bf27,_0x1055a0){_0x26bf27=_0x26bf27-0xd5;const _0x3c9077=_0x3c90();let _0x442d2a=_0x3c9077[_0x26bf27];return _0x442d2a;}export function getPlaywrightVersion(){const _0x553897=_0x4c7a97,_0x12b2f4={'qqHeW':function(_0x26fb5c,_0x499b27){return _0x26fb5c(_0x499b27);}};try{const _0x3f5f90=require[_0x553897(0xe6)]('playwright/package.json'),_0x186560=_0x12b2f4['qqHeW'](require,_0x3f5f90);return _0x186560[_0x553897(0x114)];}catch{return null;}}export function installChromiumBinary(_0x31e866,_0x36e4ef=![]){const _0x128f3a=_0x4c7a97,_0x24ccfd={'EGHvv':function(_0x5a146f,_0x17b506){return _0x5a146f===_0x17b506;},'dBUZB':function(_0x12a06b,_0x16d0e8){return _0x12a06b(_0x16d0e8);},'cagml':_0x128f3a(0x129),'lziVf':_0x128f3a(0xe2),'KwRmF':_0x128f3a(0x137),'ODeha':_0x128f3a(0x108),'haPJC':'error'};return new Promise((_0x14506f,_0x3b3287)=>{const _0x23deb5=_0x128f3a,_0xb5599f=['playwright@'+_0x31e866,_0x24ccfd['cagml'],..._0x36e4ef?[_0x23deb5(0x135)]:[],'chromium'],_0x2310e7=spawn(_0x24ccfd['lziVf'],_0xb5599f,{'stdio':[_0x24ccfd['KwRmF'],'inherit','inherit'],'shell':_0x24ccfd['EGHvv'](process[_0x23deb5(0x112)],_0x24ccfd[_0x23deb5(0x111)])});_0x2310e7['on']('close',_0x3932d6=>{const _0x342a92=_0x23deb5;_0x24ccfd['EGHvv'](_0x3932d6,0x0)?_0x14506f():_0x24ccfd[_0x342a92(0x119)](_0x3b3287,new Error(_0x342a92(0x107)+_0x3932d6));}),_0x2310e7['on'](_0x24ccfd['haPJC'],_0x2ab6ab=>{const _0x1e31fe=_0x23deb5;_0x24ccfd[_0x1e31fe(0x119)](_0x3b3287,_0x2ab6ab);});});}export async function authenticate(_0x2f5531){const _0xdb40b5=_0x4c7a97,_0x202dde={'UWHSh':function(_0x38fce2){return _0x38fce2();},'MJSxH':function(_0x5a0327,_0x3a25d8){return _0x5a0327(_0x3a25d8);},'MwbZB':_0xdb40b5(0x12d)};if(!_0x2f5531){const _0x72caeb=await _0x202dde['UWHSh'](getToken);if(_0x72caeb){const _0x9625f3=await _0x202dde[_0xdb40b5(0x123)](getCurrentUser,_0x72caeb);if(_0x9625f3['success'])return console['log'](_0xdb40b5(0x13c)+_0x9625f3[_0xdb40b5(0x11e)]['organizationName']),{'token':_0x72caeb,'method':_0xdb40b5(0x10d)};}try{_0x2f5531=await _0x202dde[_0xdb40b5(0x12f)](runDeviceAuthFlow);}catch(_0x45951f){throw new Error(_0xdb40b5(0xd9)+(_0x45951f instanceof Error?_0x45951f['message']:_0x45951f));}const _0x53890f=await getCurrentUser(_0x2f5531);if(!_0x53890f[_0xdb40b5(0xda)])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x53890f['error']);return console['log'](_0xdb40b5(0x10e)+_0x53890f[_0xdb40b5(0x11e)][_0xdb40b5(0xdc)]),{'token':_0x2f5531,'method':_0x202dde[_0xdb40b5(0x11a)]};}console['log']('Validating\x20API\x20token...');const _0x57bf41=await getCurrentUser(_0x2f5531);if(!_0x57bf41['success']){if(_0x57bf41[_0xdb40b5(0x100)])throw new Error(_0xdb40b5(0xd9)+_0x57bf41['error']+_0xdb40b5(0x101));else throw new Error(_0xdb40b5(0xe4)+_0x57bf41[_0xdb40b5(0x103)]+_0xdb40b5(0x131));}return console['log'](_0xdb40b5(0x10e)+_0x57bf41['user']['organizationName']),await storeToken(_0x2f5531),console[_0xdb40b5(0x13e)](process['env']['GITHUB_ENV']?'✓\x20Exported\x20credentials\x20for\x20CI':_0xdb40b5(0xfe)),{'token':_0x2f5531,'method':_0xdb40b5(0xe5)};}export async function ensureRangerDir(_0x29f89f){const _0x4cf9b0=_0x4c7a97,_0x5c563a={'GRsnI':function(_0x30cdae,_0x4460eb){return _0x30cdae(_0x4460eb);},'ytMmL':'✓\x20Created\x20~/.ranger/\x20directory','hliCd':'✓\x20~/.ranger/\x20directory\x20already\x20exists'};void _0x29f89f;const _0x20e345=getRangerHomeDir();return!_0x5c563a[_0x4cf9b0(0xd6)](existsSync,_0x20e345)?(await mkdir(_0x20e345,{'recursive':!![]}),console[_0x4cf9b0(0x13e)](_0x5c563a[_0x4cf9b0(0x11c)]),{'path':_0x20e345,'installed':!![]}):(console['log'](_0x5c563a[_0x4cf9b0(0xf0)]),{'path':_0x20e345,'installed':![]});}function _0x3c90(){const _0x4a3e5b=['\x0a✅\x20Ranger\x20setup\x20complete!\x0a','12360ObhHaI','--with-deps','348972rrOEVh','ignore','✓\x20Local\x20profile\x20already\x20exists','stdin','skipAuth','✓\x20Playwright\x20Chromium\x20browser\x20found','✓\x20Already\x20authenticated\x20to\x20','EpgOu','log','hQKgn','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','\x0aIn\x20Claude\x20Code,\x20run\x20','.gitignore','GRsnI','PiaLk','zudND','Authentication\x20failed:\x20','success','trackPhaseStart','organizationName','SNStS','cWnBM','stdout','message','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','npx','DAHrZ','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','provided_token','resolve','✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)','opencode','plugin','\x0a\x20\x20','344TIscHv','local','XdJDV','3zrhyms','5155580UfdQdt','hliCd','KLSyx','85458hmTRSP','\x20(fallback\x20version)','/ranger:enable','bFPih','\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','ready','prompt','1063584CwYswt','skipChromium','37194UOVhRd','\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles','1528728kyZyxn','✓\x20Stored\x20credentials\x20locally','OxRdb','status','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','skills','error','\x20install\x20chromium','ranger\x20setup\x20--scope=','287NiotGy','Installation\x20failed\x20with\x20exit\x20code\x20','win32','ZzYIB','✓\x20Created\x20.ranger/.gitignore','EIUdA','chromium','existing_token','✓\x20Authenticated\x20to\x20','\x0a🚀\x20Ranger\x20Setup\x0a','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','ODeha','platform','method','version','\x20is\x20no\x20longer\x20supported.\x20','HQUtX','XXKoe','The\x20required\x20version\x20(','dBUZB','MwbZB','and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review','ytMmL','vWbsT','user','confirm','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','MJSxH','url','yfXGj','skipped','FxAdM','rsQgM','install','allowInsecureLocalhost','scope','project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.','device_auth','\x1b[0m','UWHSh','trackPhaseEnd','.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.'];_0x3c90=function(){return _0x4a3e5b;};return _0x3c90();}export async function ensureChromium(_0x35440c=![]){const _0x3b5950=_0x4c7a97,_0x47c9eb={'Acfrn':function(_0x25c530,_0x3f3b77){return _0x25c530(_0x3f3b77);},'CSoll':_0x3b5950(0xf3),'owjQC':function(_0x4b7000,_0x5cd24f,_0x580ef3){return _0x4b7000(_0x5cd24f,_0x580ef3);},'ETrUX':_0x3b5950(0x140),'MMpzl':_0x3b5950(0x110),'lqByv':'You\x20can\x20install\x20it\x20manually\x20by\x20running:'};let _0x3786f7=![];try{const _0x4db899=chromium['executablePath']();_0x3786f7=_0x47c9eb['Acfrn'](existsSync,_0x4db899);}catch{_0x3786f7=![];}if(_0x3786f7)return console['log'](_0x3b5950(0x13b)),![];const _0x57540c=getPlaywrightVersion(),_0x395ada=_0x57540c??PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION,_0x43a0bb=!_0x57540c,_0xfc66c9=process[_0x3b5950(0x139)]['isTTY']&&process[_0x3b5950(0xdf)]['isTTY'];let _0x136f46=!![];if(_0xfc66c9){const {install:_0x5a4a93}=await _0x2ac3a2[_0x3b5950(0xf8)]([{'type':_0x3b5950(0x11f),'name':_0x3b5950(0x129),'message':_0x43a0bb?'Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20'+_0x395ada+'\x20now?':_0x3b5950(0x118)+_0x395ada+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x136f46=_0x5a4a93;}else console['log']('\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20'+_0x395ada+(_0x43a0bb?_0x47c9eb['CSoll']:'')+'...');if(_0x136f46){console['log']('\x0aInstalling\x20Chromium\x20browser...\x0a');try{await _0x47c9eb['owjQC'](installChromiumBinary,_0x395ada,_0x35440c),console['log'](_0x47c9eb['ETrUX']);}catch(_0x5f3a61){console['error'](_0x47c9eb['MMpzl'],_0x5f3a61 instanceof Error?_0x5f3a61[_0x3b5950(0xe0)]:_0x5f3a61),console[_0x3b5950(0x13e)](_0x47c9eb['lqByv']),console['log']('\x20\x20npx\x20playwright@'+_0x395ada+_0x3b5950(0x104));}}else console['log']('\x0a⚠\x20Skipping\x20Chromium\x20installation.'),console['log']('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console[_0x3b5950(0x13e)]('\x20\x20npx\x20playwright@'+_0x395ada+'\x20install\x20chromium');return!![];}export async function writeRangerGitignore(_0x5945d4){const _0x4e5562=_0x4c7a97,_0x1b383f=join(_0x5945d4,_0x4e5562(0xd5)),_0x3c0e08='\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a';await writeFile(_0x1b383f,_0x3c0e08),console['log'](_0x4e5562(0x10a));}export async function ensureLocalEnv(_0x1b52e1,_0x5ac053){const _0x2d2b44=_0x4c7a97,_0x13a3e4={'vWbsT':'⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','fbskQ':_0x2d2b44(0x11e),'bsjnQ':function(_0x1d0d3f){return _0x1d0d3f();},'itsME':function(_0x483d6c,_0x17aa7f,_0xc5665b){return _0x483d6c(_0x17aa7f,_0xc5665b);},'KLSyx':_0x2d2b44(0xec),'JfxiZ':function(_0x159876,_0xb153cf,_0x5038ec,_0x3ee879){return _0x159876(_0xb153cf,_0x5038ec,_0x3ee879);},'EpgOu':function(_0x41434d,_0x5ec3dc){return _0x41434d instanceof _0x5ec3dc;}};if(!findGitRoot()&&_0x1b52e1?.[_0x2d2b44(0x12b)]!==_0x2d2b44(0x11e))return console['log'](_0x13a3e4[_0x2d2b44(0x11d)]),{'ready':![],'skipped':!![]};const _0x341d4f=_0x1b52e1?.[_0x2d2b44(0x12b)]===_0x13a3e4['fbskQ']?_0x13a3e4['bsjnQ'](getRangerHomeDir):undefined;if(_0x13a3e4['itsME'](findExistingEnv,_0x13a3e4[_0x2d2b44(0xf1)],{'locations':['local'],'rangerDir':_0x341d4f}))return console[_0x2d2b44(0x13e)](_0x2d2b44(0x138)),{'ready':!![],'skipped':![]};try{return await _0x13a3e4['JfxiZ'](addEnv,_0x13a3e4[_0x2d2b44(0xf1)],{'url':_0x1b52e1?.[_0x2d2b44(0x124)],'force':_0x1b52e1?.['force'],'allowInsecureLocalhost':_0x1b52e1?.['allowInsecureLocalhost'],'scope':_0x1b52e1?.['scope']},_0x5ac053),{'ready':!![],'skipped':![]};}catch(_0x4028cc){return console[_0x2d2b44(0x103)]('\x0a❌\x20Profile\x20setup\x20failed:',_0x13a3e4[_0x2d2b44(0x13d)](_0x4028cc,Error)?_0x4028cc[_0x2d2b44(0xe0)]:_0x4028cc),{'ready':![],'skipped':![]};}}export async function start(_0x121685,_0x2b3351,_0x533f50){const _0x4a5f81=_0x4c7a97,_0x273a8c={'XXKoe':_0x4a5f81(0x10f),'rNxzI':function(_0x23b5d1,_0x4bf90e){return _0x23b5d1!==_0x4bf90e;},'cWnBM':'user','zudND':function(_0x45928d,_0x1e293f){return _0x45928d+_0x1e293f;},'mNOEF':function(_0x426a14,_0x4f72a0){return _0x426a14(_0x4f72a0);},'FxAdM':function(_0x3bae2f,_0x241941){return _0x3bae2f(_0x241941);},'EIUdA':function(_0x10e97a,_0x1c34c6){return _0x10e97a(_0x1c34c6);},'HQUtX':'chromium','XdJDV':function(_0xec285a,_0x2a2901){return _0xec285a(_0x2a2901);},'SNStS':'plugin','bFPih':_0x4a5f81(0x102),'PiaLk':function(_0x26fbe6,_0x558b39,_0x367ca7){return _0x26fbe6(_0x558b39,_0x367ca7);},'rsQgM':'ranger','BHNJl':_0x4a5f81(0xe8),'yfXGj':_0x4a5f81(0xe1),'KUcRa':function(_0x4404d6,_0x1040dd){return _0x4404d6(_0x1040dd);},'DXqGx':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','hQKgn':function(_0x445196,_0x4b42c5,_0x2b8453){return _0x445196(_0x4b42c5,_0x2b8453);},'ZzYIB':'ranger\x20profile\x20add\x20<name>','vooOk':_0x4a5f81(0x122),'OxRdb':_0x4a5f81(0xf4),'DAHrZ':function(_0x2081b0,_0x435454){return _0x2081b0+_0x435454;}};console[_0x4a5f81(0x13e)](_0x273a8c[_0x4a5f81(0x117)]);_0x2b3351?.['scope']!==undefined&&_0x273a8c['rNxzI'](_0x2b3351[_0x4a5f81(0x12b)],_0x273a8c['cWnBM'])&&(console[_0x4a5f81(0x103)](_0x273a8c['zudND'](_0x4a5f81(0x105)+String(_0x2b3351[_0x4a5f81(0x12b)])+_0x4a5f81(0x115)+_0x4a5f81(0x120),_0x4a5f81(0x12c))),process['exit'](0x1));_0x2b3351={..._0x2b3351,'scope':_0x4a5f81(0x11e)};const _0x3bc9b5=!_0x273a8c['mNOEF'](existsSync,getRangerHomeDir());await ensureRangerDir('user');if(_0x2b3351?.[_0x4a5f81(0x13a)])console['log']('✓\x20Skipping\x20authentication\x20(--skip-auth)'),_0x533f50?.[_0x4a5f81(0x130)]('auth',{'isFirstRun':_0x3bc9b5,'method':_0x4a5f81(0x126)});else{_0x533f50?.[_0x4a5f81(0xdb)]('auth');const _0x2bbe11=await _0x273a8c[_0x4a5f81(0x127)](authenticate,_0x121685);_0x533f50?.['trackPhaseEnd']('auth',{'isFirstRun':_0x3bc9b5,'method':_0x2bbe11[_0x4a5f81(0x113)]});}_0x533f50?.[_0x4a5f81(0xdb)](_0x4a5f81(0x10c));_0x2b3351?.[_0x4a5f81(0xfa)]?console['log'](_0x4a5f81(0xe7)):await _0x273a8c[_0x4a5f81(0x10b)](ensureChromium,_0x2b3351?.['withDeps']);_0x533f50?.[_0x4a5f81(0x130)](_0x273a8c[_0x4a5f81(0x116)],{'isFirstRun':_0x3bc9b5,'skipped':!!_0x2b3351?.['skipChromium']}),console['log'](_0x4a5f81(0x133));const _0xfb1392=_0x2b3351?.['scope'],_0x2572c4=_0x2b3351?.[_0x4a5f81(0xe8)]??![];let _0x38b4f2=null;_0x2572c4?(_0x533f50?.['trackPhaseStart'](_0x4a5f81(0xe9)),_0x38b4f2=await _0x273a8c[_0x4a5f81(0xed)](ensureOpencodePluginConfig,_0xfb1392),_0x533f50?.['trackPhaseEnd'](_0x273a8c[_0x4a5f81(0xdd)],{'isFirstRun':_0x3bc9b5,'opencode':!![]})):(_0x533f50?.['trackPhaseStart']('plugin'),await ensureClaudePlugin(_0xfb1392),_0x533f50?.[_0x4a5f81(0x130)](_0x273a8c[_0x4a5f81(0xdd)],{'isFirstRun':_0x3bc9b5}));if(_0x2572c4&&_0x38b4f2){_0x533f50?.[_0x4a5f81(0xdb)](_0x273a8c[_0x4a5f81(0xf5)]);try{await _0x273a8c[_0x4a5f81(0xd7)](installSkill,_0x273a8c[_0x4a5f81(0x128)],{'level':_0x38b4f2['scope'],'cliVersion':getCurrentVersion(),'platform':_0x273a8c['BHNJl']}),_0x533f50?.[_0x4a5f81(0x130)](_0x273a8c['bFPih'],{'isFirstRun':_0x3bc9b5,'opencode':!![]});}catch(_0x4d8bbc){console['warn'](_0x273a8c[_0x4a5f81(0x125)],_0x4d8bbc instanceof Error?_0x4d8bbc['message']:_0x4d8bbc),_0x533f50?.['trackPhaseEnd'](_0x273a8c['bFPih'],{'isFirstRun':_0x3bc9b5,'opencode':!![],'failed':!![]});}}else _0x533f50?.['trackPhaseStart'](_0x273a8c[_0x4a5f81(0xf5)]),await _0x273a8c['KUcRa'](ensureClaudeSkills,_0xfb1392),_0x533f50?.['trackPhaseEnd']('skills',{'isFirstRun':_0x3bc9b5});if(_0x2b3351?.[_0x4a5f81(0x13a)])console[_0x4a5f81(0x13e)](_0x273a8c['DXqGx']);else{if(_0x2b3351?.[_0x4a5f81(0x124)]){_0x533f50?.[_0x4a5f81(0xdb)]('profile');const _0x845787=await _0x273a8c[_0x4a5f81(0x13f)](ensureLocalEnv,{'url':_0x2b3351['url'],'force':_0x2b3351?.['force'],'allowInsecureLocalhost':_0x2b3351?.[_0x4a5f81(0x12a)],'scope':_0x273a8c[_0x4a5f81(0xde)]},_0x533f50);_0x533f50?.[_0x4a5f81(0x130)]('profile',{'isFirstRun':_0x3bc9b5,'profileReady':_0x845787[_0x4a5f81(0xf7)],'userSkipped':_0x845787[_0x4a5f81(0x126)]});}else console['log'](_0x273a8c[_0x4a5f81(0xd8)](_0x273a8c['zudND'](_0x273a8c[_0x4a5f81(0xd8)]('\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:'+(_0x4a5f81(0xea)+_0x273a8c['KUcRa'](bold,_0x273a8c[_0x4a5f81(0x109)])),'\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)'),_0x4a5f81(0x141)),_0x4a5f81(0xfc)));}if(_0x2572c4)console['log'](_0x273a8c['vooOk']),console[_0x4a5f81(0x13e)](_0x4a5f81(0x11b)),console[_0x4a5f81(0x13e)](_0x4a5f81(0x121)),console[_0x4a5f81(0x13e)](_0x4a5f81(0x132));else{const _0x35c44f=_0x273a8c['FxAdM'](bold,_0x273a8c[_0x4a5f81(0xff)]);console['log'](_0x273a8c[_0x4a5f81(0xe3)](_0x4a5f81(0x142)+_0x35c44f+'\x20and\x20prompt\x20the\x20coding'+'\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with',_0x4a5f81(0xf6))+'\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.');}}
|
|
1
|
+
const _0xa805c9=_0x4c83;(function(_0x4e5b5d,_0x581b5b){const _0x2ea9ad=_0x4c83,_0x2aba70=_0x4e5b5d();while(!![]){try{const _0x2cd98f=-parseInt(_0x2ea9ad(0x188))/0x1*(parseInt(_0x2ea9ad(0x18b))/0x2)+parseInt(_0x2ea9ad(0x1dc))/0x3+-parseInt(_0x2ea9ad(0x192))/0x4+parseInt(_0x2ea9ad(0x1db))/0x5+parseInt(_0x2ea9ad(0x1e1))/0x6*(-parseInt(_0x2ea9ad(0x1bc))/0x7)+-parseInt(_0x2ea9ad(0x199))/0x8+parseInt(_0x2ea9ad(0x1d8))/0x9;if(_0x2cd98f===_0x581b5b)break;else _0x2aba70['push'](_0x2aba70['shift']());}catch(_0x2acc2f){_0x2aba70['push'](_0x2aba70['shift']());}}}(_0x469e,0x23f58));import{mkdir,writeFile}from'fs/promises';function _0x4c83(_0x1f6214,_0x3a8c49){_0x1f6214=_0x1f6214-0x183;const _0x469ebb=_0x469e();let _0x4c83ae=_0x469ebb[_0x1f6214];return _0x4c83ae;}import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x3f733a from'inquirer';import{getToken,storeToken}from'./utils/keychain.js';import{getCurrentUser}from'./utils/userApi.js';import{chromium}from'playwright';import{addEnv}from'./addEnv.js';import{getRangerHomeDir,findGitRoot}from'./utils/rangerRoot.js';import{runDeviceAuthFlow}from'./utils/deviceAuth.js';import{findExistingEnv}from'./utils/settings.js';import{getCurrentVersion}from'./utils/version.js';import{ensureClaudePlugin,ensureClaudeSkills}from'./setup/claude.js';import{ensureOpencodePluginConfig}from'./setup/opencode.js';import{installSkill}from'./utils/skills.js';const require=createRequire(import.meta.url);export const PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION=_0xa805c9(0x1b5);const bold=_0x53490b=>_0xa805c9(0x184)+_0x53490b+_0xa805c9(0x1c4);export function getPlaywrightVersion(){const _0x458870=_0xa805c9,_0x576c28={'MoXke':_0x458870(0x1a5),'QpAhO':function(_0x113f21,_0x2c3c8d){return _0x113f21(_0x2c3c8d);}};try{const _0xd74059=require['resolve'](_0x576c28[_0x458870(0x1d2)]),_0x26a044=_0x576c28[_0x458870(0x1cd)](require,_0xd74059);return _0x26a044[_0x458870(0x1b7)];}catch{return null;}}export function installChromiumBinary(_0x311010,_0x39e6e0=![]){const _0x4767ad=_0xa805c9,_0x410437={'hCQXf':'install','QSaCB':'--with-deps','SjSas':'ignore','PNKoS':_0x4767ad(0x1bf)};return new Promise((_0x3ac96a,_0x448049)=>{const _0x2263c2=_0x4767ad,_0x310e1b={'xMgXy':function(_0x1220b0,_0x5159e2){return _0x1220b0(_0x5159e2);}},_0x12e95e=['playwright@'+_0x311010,_0x410437['hCQXf'],..._0x39e6e0?[_0x410437[_0x2263c2(0x1a8)]]:[],_0x2263c2(0x1c2)],_0x372ce2=spawn('npx',_0x12e95e,{'stdio':[_0x410437['SjSas'],_0x2263c2(0x1bf),_0x410437[_0x2263c2(0x18a)]],'shell':process['platform']===_0x2263c2(0x1f9)});_0x372ce2['on'](_0x2263c2(0x1a1),_0x143211=>{const _0x73c1aa=_0x2263c2;_0x143211===0x0?_0x3ac96a():_0x448049(new Error(_0x73c1aa(0x1af)+_0x143211));}),_0x372ce2['on']('error',_0x41fe68=>{_0x310e1b['xMgXy'](_0x448049,_0x41fe68);});});}export async function authenticate(_0x47ee4){const _0x34cb20=_0xa805c9,_0xcb2d2b={'bniuT':'existing_token','oBpzD':function(_0x5072c9,_0x4f95c7){return _0x5072c9 instanceof _0x4f95c7;},'SSpyV':function(_0x292d3a,_0x10e5cc){return _0x292d3a(_0x10e5cc);},'JIXMH':function(_0x42d561,_0x22fabe){return _0x42d561(_0x22fabe);},'sySlI':_0x34cb20(0x1b9)};if(!_0x47ee4){const _0x23332b=await getToken();if(_0x23332b){const _0xd0d141=await getCurrentUser(_0x23332b);if(_0xd0d141['success'])return console[_0x34cb20(0x1f3)]('✓\x20Already\x20authenticated\x20to\x20'+_0xd0d141[_0x34cb20(0x1bb)]['organizationName']),{'token':_0x23332b,'method':_0xcb2d2b['bniuT']};}try{_0x47ee4=await runDeviceAuthFlow();}catch(_0xfea41b){throw new Error(_0x34cb20(0x1c8)+(_0xcb2d2b[_0x34cb20(0x1f2)](_0xfea41b,Error)?_0xfea41b[_0x34cb20(0x1c3)]:_0xfea41b));}const _0x1dcbc2=await _0xcb2d2b['SSpyV'](getCurrentUser,_0x47ee4);if(!_0x1dcbc2['success'])throw new Error('Failed\x20to\x20validate\x20provisioned\x20API\x20key:\x20'+_0x1dcbc2['error']);return console['log']('✓\x20Authenticated\x20to\x20'+_0x1dcbc2[_0x34cb20(0x1bb)]['organizationName']),{'token':_0x47ee4,'method':_0x34cb20(0x1f6)};}console[_0x34cb20(0x1f3)](_0x34cb20(0x1ef));const _0x35f7db=await _0xcb2d2b[_0x34cb20(0x1ba)](getCurrentUser,_0x47ee4);if(!_0x35f7db['success']){if(_0x35f7db[_0x34cb20(0x1ce)])throw new Error(_0x34cb20(0x1c8)+_0x35f7db[_0x34cb20(0x1c0)]+_0x34cb20(0x1c9));else throw new Error(_0x34cb20(0x1f0)+_0x35f7db['error']+'.\x20Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.');}return console[_0x34cb20(0x1f3)]('✓\x20Authenticated\x20to\x20'+_0x35f7db['user']['organizationName']),await _0xcb2d2b['JIXMH'](storeToken,_0x47ee4),console['log'](process[_0x34cb20(0x1cf)]['GITHUB_ENV']?_0x34cb20(0x1e5):_0x34cb20(0x1a7)),{'token':_0x47ee4,'method':_0xcb2d2b['sySlI']};}export async function ensureRangerDir(_0x2020a6){const _0x587770=_0xa805c9,_0x329e74={'BqykY':function(_0x55a575){return _0x55a575();},'LexNH':_0x587770(0x196),'GQXFL':'✓\x20~/.ranger/\x20directory\x20already\x20exists'};void _0x2020a6;const _0x28133e=_0x329e74['BqykY'](getRangerHomeDir);return!existsSync(_0x28133e)?(await mkdir(_0x28133e,{'recursive':!![]}),console['log'](_0x329e74[_0x587770(0x1e4)]),{'path':_0x28133e,'installed':!![]}):(console['log'](_0x329e74['GQXFL']),{'path':_0x28133e,'installed':![]});}export async function ensureChromium(_0x228df9=![]){const _0x48a9db=_0xa805c9,_0x4bc9e4={'oNDWw':function(_0xace3ed,_0x48cbe4){return _0xace3ed(_0x48cbe4);},'BIqCF':_0x48a9db(0x19a),'ExsUn':function(_0x189a06,_0x217000){return _0x189a06??_0x217000;},'aTyxt':_0x48a9db(0x1a2),'ScMlB':_0x48a9db(0x195),'nvoWP':_0x48a9db(0x1ac),'kcTzm':_0x48a9db(0x1a3),'gzaKZ':_0x48a9db(0x1d7)};let _0x556217=![];try{const _0x5d5972=chromium[_0x48a9db(0x197)]();_0x556217=_0x4bc9e4['oNDWw'](existsSync,_0x5d5972);}catch{_0x556217=![];}if(_0x556217)return console[_0x48a9db(0x1f3)](_0x4bc9e4['BIqCF']),![];const _0x3b531b=getPlaywrightVersion(),_0x1449b2=_0x4bc9e4[_0x48a9db(0x1f5)](_0x3b531b,PLAYWRIGHT_CHROMIUM_INSTALL_FALLBACK_VERSION),_0x10daa5=!_0x3b531b,_0x45d84b=process['stdin'][_0x48a9db(0x1ab)]&&process['stdout']['isTTY'];let _0x52c8b5=!![];if(_0x45d84b){const {install:_0x479703}=await _0x3f733a['prompt']([{'type':_0x4bc9e4['aTyxt'],'name':_0x4bc9e4[_0x48a9db(0x1c6)],'message':_0x10daa5?_0x48a9db(0x1a9)+_0x1449b2+_0x48a9db(0x1da):'The\x20required\x20version\x20('+_0x1449b2+')\x20of\x20the\x20Playwright\x20Chromium\x20browser\x20is\x20not\x20installed.\x20Install\x20it\x20now?','default':!![]}]);_0x52c8b5=_0x479703;}else console[_0x48a9db(0x1f3)](_0x48a9db(0x186)+_0x1449b2+(_0x10daa5?'\x20(fallback\x20version)':'')+_0x48a9db(0x1c1));if(_0x52c8b5){console[_0x48a9db(0x1f3)](_0x4bc9e4[_0x48a9db(0x1df)]);try{await installChromiumBinary(_0x1449b2,_0x228df9),console[_0x48a9db(0x1f3)](_0x4bc9e4[_0x48a9db(0x1e7)]);}catch(_0xe01bd8){console['error'](_0x48a9db(0x18e),_0xe01bd8 instanceof Error?_0xe01bd8['message']:_0xe01bd8),console['log'](_0x48a9db(0x1b3)),console['log']('\x20\x20npx\x20playwright@'+_0x1449b2+_0x48a9db(0x19f));}}else console[_0x48a9db(0x1f3)](_0x4bc9e4[_0x48a9db(0x185)]),console[_0x48a9db(0x1f3)]('You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:'),console[_0x48a9db(0x1f3)](_0x48a9db(0x1c5)+_0x1449b2+'\x20install\x20chromium');return!![];}function _0x469e(){const _0x1a36b3=['Could\x20not\x20determine\x20local\x20Playwright\x20version.\x20Install\x20Playwright\x20Chromium\x20using\x20fallback\x20version\x20','mOqWM','isTTY','\x0aInstalling\x20Chromium\x20browser...\x0a','scope','trackPhaseEnd','Installation\x20failed\x20with\x20exit\x20code\x20','rgxOA','auth','Mpwqm','You\x20can\x20install\x20it\x20manually\x20by\x20running:','allowInsecureLocalhost','1.58.2','yFiUF','version','mUgQE','provided_token','SSpyV','user','28vbmvpv','GPofa','\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0areports/\x0afeedback-images/\x0a\x0aactive-profile.txt\x0aactive-feature.txt\x0a.gitignore\x0a\x0a#\x20Ignore\x20plaintext\x20auth\x20files\x20(encrypted\x20.enc\x20files\x20are\x20safe\x20to\x20commit)\x0a**/auth.json\x0a','inherit','error','...','chromium','message','\x1b[0m','\x20\x20npx\x20playwright@','ScMlB','.gitignore','Authentication\x20failed:\x20','.\x20Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','\x0a\x0aFor\x20CI\x20/\x20background\x20agents\x20and\x20other\x20setup\x20options,\x20see:','\x0aIn\x20Claude\x20Code,\x20run\x20','JepNz','QpAhO','status','env','flcHh','HcShL','MoXke','mtQUg','\x0aIn\x20OpenCode,\x20enable\x20Ranger\x20hooks\x20(run\x20the\x20`ranger_enable`\x20tool)','skills','ranger\x20profile\x20add\x20<name>','\x0a⚠\x20Skipping\x20Chromium\x20installation.','2201589KqFezU','\x0a\x20\x20','\x20now?','406990qPoKrB','403233zdayxI','KcSrP','\x20\x20Failed\x20to\x20install\x20OpenCode\x20skill:','nvoWP','tQlGR','6834nMRlML','YntsF','\x0a🚀\x20Ranger\x20Setup\x0a','LexNH','✓\x20Exported\x20credentials\x20for\x20CI','exit','kcTzm','HgajJ','ranger\x20setup\x20--scope=','TVEPs','lcrMf','skipped','GHHJw','\x0averification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','Validating\x20API\x20token...','Failed\x20to\x20connect\x20to\x20MCP\x20server:\x20','withDeps','oBpzD','log','ready','ExsUn','device_auth','fZCGT','siQTF','win32','trackPhaseStart','\x1b[1m','gzaKZ','\x0aNon-interactive\x20mode:\x20Auto-installing\x20Playwright\x20Chromium\x20','warn','1LrFrsR','\x0aTo\x20set\x20up\x20a\x20profile\x20for\x20your\x20app,\x20run:','PNKoS','8618mCHRBT','iahGN','skipAuth','\x0a❌\x20Failed\x20to\x20install\x20Chromium:','url','\x0aagent\x20like\x20usual.\x20Claude\x20will\x20create\x20a\x20feature\x20review\x20with','verification\x20to\x20check\x20its\x20work\x20as\x20it\x20builds.','585696jhjTLe','with\x20scenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser','opencode','install','✓\x20Created\x20~/.ranger/\x20directory','executablePath','sWwur','1262824rsTXti','✓\x20Playwright\x20Chromium\x20browser\x20found','✓\x20Skipping\x20authentication\x20(--skip-auth)','skipChromium','/ranger:enable','\x0a\x20\x20(opens\x20a\x20browser\x20so\x20you\x20can\x20log\x20in\x20once)','\x20install\x20chromium','DRSbM','close','confirm','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','Npbzi','playwright/package.json','plugin','✓\x20Stored\x20credentials\x20locally','QSaCB'];_0x469e=function(){return _0x1a36b3;};return _0x469e();}export async function writeRangerGitignore(_0x5d8012){const _0x18578e=_0xa805c9,_0x4b4cf1={'tQlGR':function(_0x5aa614,_0x41bc22,_0x24e785){return _0x5aa614(_0x41bc22,_0x24e785);},'YntsF':_0x18578e(0x1c7),'HqzqV':function(_0x1268da,_0xc93452,_0x47a797){return _0x1268da(_0xc93452,_0x47a797);},'TKODa':'✓\x20Created\x20.ranger/.gitignore'},_0x4a9d00=_0x4b4cf1[_0x18578e(0x1e0)](join,_0x5d8012,_0x4b4cf1[_0x18578e(0x1e2)]),_0x21b778=_0x18578e(0x1be);await _0x4b4cf1['HqzqV'](writeFile,_0x4a9d00,_0x21b778),console[_0x18578e(0x1f3)](_0x4b4cf1['TKODa']);}export async function ensureLocalEnv(_0xc8dc42,_0x4fb003){const _0x134eca=_0xa805c9,_0x17c479={'HgajJ':function(_0x584247,_0x4681a1){return _0x584247!==_0x4681a1;},'HcShL':'⚠\x20No\x20git\x20repository\x20found.\x20Re-run\x20with\x20`--scope\x20user`\x20to\x20store\x20the\x20profile\x20at\x20~/.ranger/.','Npbzi':function(_0x4d17a7){return _0x4d17a7();},'rgxOA':function(_0x15641d,_0x55d256,_0x4f6c79){return _0x15641d(_0x55d256,_0x4f6c79);},'JepNz':'local','DxNAc':'✓\x20Local\x20profile\x20already\x20exists','fZCGT':function(_0x263839,_0x377ed7,_0x1d4aa4,_0x10d27a){return _0x263839(_0x377ed7,_0x1d4aa4,_0x10d27a);},'Mpwqm':'\x0a❌\x20Profile\x20setup\x20failed:'};if(!findGitRoot()&&_0x17c479[_0x134eca(0x1e8)](_0xc8dc42?.['scope'],'user'))return console[_0x134eca(0x1f3)](_0x17c479[_0x134eca(0x1d1)]),{'ready':![],'skipped':!![]};const _0x4ea1d8=_0xc8dc42?.[_0x134eca(0x1ad)]===_0x134eca(0x1bb)?_0x17c479[_0x134eca(0x1a4)](getRangerHomeDir):undefined;if(_0x17c479[_0x134eca(0x1b0)](findExistingEnv,_0x17c479[_0x134eca(0x1cc)],{'locations':[_0x17c479[_0x134eca(0x1cc)]],'rangerDir':_0x4ea1d8}))return console['log'](_0x17c479['DxNAc']),{'ready':!![],'skipped':![]};try{return await _0x17c479[_0x134eca(0x1f7)](addEnv,_0x17c479[_0x134eca(0x1cc)],{'url':_0xc8dc42?.['url'],'force':_0xc8dc42?.['force'],'allowInsecureLocalhost':_0xc8dc42?.[_0x134eca(0x1b4)],'scope':_0xc8dc42?.['scope']},_0x4fb003),{'ready':!![],'skipped':![]};}catch(_0x57212b){return console['error'](_0x17c479[_0x134eca(0x1b2)],_0x57212b instanceof Error?_0x57212b['message']:_0x57212b),{'ready':![],'skipped':![]};}}export async function start(_0x108894,_0x2fb59d,_0x145817){const _0x419a69=_0xa805c9,_0x3ca093={'aLqmW':function(_0x2e80cb,_0x39f897){return _0x2e80cb!==_0x39f897;},'flcHh':function(_0x4ff555,_0x38cd28){return _0x4ff555+_0x38cd28;},'siQTF':function(_0xb16a6,_0x68c990){return _0xb16a6+_0x68c990;},'mOqWM':function(_0xb9e1d6,_0x2a3b61){return _0xb9e1d6(_0x2a3b61);},'KcSrP':function(_0xe6c22f){return _0xe6c22f();},'CyUvs':function(_0x3ca48d,_0x63d865){return _0x3ca48d(_0x63d865);},'YREdc':_0x419a69(0x1ec),'GHHJw':_0x419a69(0x1b1),'KDIUi':_0x419a69(0x1c2),'lcrMf':function(_0x2ac38d,_0x4ec088){return _0x2ac38d(_0x4ec088);},'BdtMe':'\x0a✅\x20Ranger\x20setup\x20complete!\x0a','eeEsV':_0x419a69(0x1a6),'mUgQE':function(_0x20d7ae,_0x5a8911,_0x48825c){return _0x20d7ae(_0x5a8911,_0x48825c);},'mWEOH':'ranger','TAUxz':_0x419a69(0x1d5),'JpXju':_0x419a69(0x1de),'TPgbZ':'\x0aSkipping\x20profile\x20setup\x20(--skip-auth).\x20Run\x20`ranger\x20setup`\x20with\x20auth\x20to\x20add\x20a\x20profile\x20later.\x0a','iahGN':'profile','mtQUg':_0x419a69(0x1d6),'DRSbM':_0x419a69(0x193),'GPofa':_0x419a69(0x191),'sWwur':function(_0x4d7393,_0x35a0ec){return _0x4d7393(_0x35a0ec);},'yFiUF':function(_0x31a8dd,_0xa2cbe6){return _0x31a8dd+_0xa2cbe6;},'TVEPs':function(_0x4fc531,_0x778ffd){return _0x4fc531+_0x778ffd;}};console[_0x419a69(0x1f3)](_0x419a69(0x1e3));_0x2fb59d?.[_0x419a69(0x1ad)]!==undefined&&_0x3ca093['aLqmW'](_0x2fb59d[_0x419a69(0x1ad)],_0x419a69(0x1bb))&&(console['error'](_0x3ca093[_0x419a69(0x1d0)](_0x3ca093[_0x419a69(0x1f8)](_0x419a69(0x1e9)+_0x3ca093[_0x419a69(0x1aa)](String,_0x2fb59d['scope'])+'\x20is\x20no\x20longer\x20supported.\x20','Setup\x20always\x20installs\x20at\x20user\x20scope\x20now\x20(cloud\x20profiles\x20make\x20'),'project-scope\x20setup\x20obsolete).\x20Drop\x20the\x20--scope\x20flag\x20or\x20pass\x20--scope=user.')),process[_0x419a69(0x1e6)](0x1));_0x2fb59d={..._0x2fb59d,'scope':'user'};const _0x285143=!existsSync(_0x3ca093['KcSrP'](getRangerHomeDir));await _0x3ca093['CyUvs'](ensureRangerDir,'user');if(_0x2fb59d?.[_0x419a69(0x18d)])console['log'](_0x419a69(0x19b)),_0x145817?.['trackPhaseEnd']('auth',{'isFirstRun':_0x285143,'method':_0x3ca093['YREdc']});else{_0x145817?.[_0x419a69(0x183)](_0x3ca093[_0x419a69(0x1ed)]);const _0x533f7b=await authenticate(_0x108894);_0x145817?.[_0x419a69(0x1ae)](_0x3ca093[_0x419a69(0x1ed)],{'isFirstRun':_0x285143,'method':_0x533f7b['method']});}_0x145817?.[_0x419a69(0x183)](_0x3ca093['KDIUi']);_0x2fb59d?.[_0x419a69(0x19c)]?console['log']('✓\x20Skipping\x20Chromium\x20check\x20(--skip-chromium)'):await _0x3ca093['lcrMf'](ensureChromium,_0x2fb59d?.[_0x419a69(0x1f1)]);_0x145817?.[_0x419a69(0x1ae)](_0x419a69(0x1c2),{'isFirstRun':_0x285143,'skipped':!!_0x2fb59d?.['skipChromium']}),console[_0x419a69(0x1f3)](_0x3ca093['BdtMe']);const _0x1b3583=_0x2fb59d?.['scope'],_0x44f6cc=_0x2fb59d?.['opencode']??![];let _0x5346f5=null;_0x44f6cc?(_0x145817?.[_0x419a69(0x183)]('plugin'),_0x5346f5=await _0x3ca093[_0x419a69(0x1eb)](ensureOpencodePluginConfig,_0x1b3583),_0x145817?.['trackPhaseEnd'](_0x419a69(0x1a6),{'isFirstRun':_0x285143,'opencode':!![]})):(_0x145817?.['trackPhaseStart']('plugin'),await _0x3ca093[_0x419a69(0x1aa)](ensureClaudePlugin,_0x1b3583),_0x145817?.['trackPhaseEnd'](_0x3ca093['eeEsV'],{'isFirstRun':_0x285143}));if(_0x44f6cc&&_0x5346f5){_0x145817?.[_0x419a69(0x183)]('skills');try{await _0x3ca093['mUgQE'](installSkill,_0x3ca093['mWEOH'],{'level':_0x5346f5[_0x419a69(0x1ad)],'cliVersion':_0x3ca093[_0x419a69(0x1dd)](getCurrentVersion),'platform':_0x419a69(0x194)}),_0x145817?.[_0x419a69(0x1ae)](_0x3ca093['TAUxz'],{'isFirstRun':_0x285143,'opencode':!![]});}catch(_0x5ce35b){console[_0x419a69(0x187)](_0x3ca093['JpXju'],_0x5ce35b instanceof Error?_0x5ce35b[_0x419a69(0x1c3)]:_0x5ce35b),_0x145817?.['trackPhaseEnd']('skills',{'isFirstRun':_0x285143,'opencode':!![],'failed':!![]});}}else _0x145817?.['trackPhaseStart']('skills'),await _0x3ca093[_0x419a69(0x1aa)](ensureClaudeSkills,_0x1b3583),_0x145817?.['trackPhaseEnd'](_0x3ca093['TAUxz'],{'isFirstRun':_0x285143});if(_0x2fb59d?.[_0x419a69(0x18d)])console[_0x419a69(0x1f3)](_0x3ca093['TPgbZ']);else{if(_0x2fb59d?.['url']){_0x145817?.['trackPhaseStart'](_0x3ca093[_0x419a69(0x18c)]);const _0x32c055=await _0x3ca093[_0x419a69(0x1b8)](ensureLocalEnv,{'url':_0x2fb59d[_0x419a69(0x18f)],'force':_0x2fb59d?.['force'],'allowInsecureLocalhost':_0x2fb59d?.[_0x419a69(0x1b4)],'scope':'user'},_0x145817);_0x145817?.[_0x419a69(0x1ae)](_0x3ca093['iahGN'],{'isFirstRun':_0x285143,'profileReady':_0x32c055[_0x419a69(0x1f4)],'userSkipped':_0x32c055['skipped']});}else console['log'](_0x3ca093[_0x419a69(0x1d0)](_0x419a69(0x189),_0x419a69(0x1d9)+bold(_0x3ca093[_0x419a69(0x1d3)]))+_0x419a69(0x19e)+_0x419a69(0x1ca)+'\x0a\x20\x20https://docs.ranger.net/main/concepts/profiles');}if(_0x44f6cc)console[_0x419a69(0x1f3)](_0x419a69(0x1d4)),console['log']('and\x20prompt\x20the\x20agent\x20like\x20usual.\x20Ranger\x20will\x20create\x20a\x20feature\x20review'),console[_0x419a69(0x1f3)](_0x3ca093[_0x419a69(0x1a0)]),console[_0x419a69(0x1f3)](_0x3ca093[_0x419a69(0x1bd)]);else{const _0x299034=_0x3ca093[_0x419a69(0x198)](bold,_0x419a69(0x19d));console['log'](_0x3ca093[_0x419a69(0x1b6)](_0x3ca093[_0x419a69(0x1ea)](_0x419a69(0x1cb)+_0x299034+'\x20and\x20prompt\x20the\x20coding',_0x419a69(0x190)),'\x0ascenarios\x20describing\x20what\x20to\x20verify\x20and\x20then\x20run\x20browser')+_0x419a69(0x1ee));}}
|
package/build/commands/status.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const _0x3a3058=_0x2e98;(function(_0x3d395d,_0x5cd112){const _0x5afadf=_0x2e98,_0x5f1396=_0x3d395d();while(!![]){try{const _0x43e96f=parseInt(_0x5afadf(0x196))/0x1*(parseInt(_0x5afadf(0x164))/0x2)+-parseInt(_0x5afadf(0x18c))/0x3*(parseInt(_0x5afadf(0x199))/0x4)+parseInt(_0x5afadf(0x17a))/0x5+parseInt(_0x5afadf(0x186))/0x6*(-parseInt(_0x5afadf(0x1a0))/0x7)+-parseInt(_0x5afadf(0x1b4))/0x8+parseInt(_0x5afadf(0x188))/0x9+parseInt(_0x5afadf(0x1a6))/0xa;if(_0x43e96f===_0x5cd112)break;else _0x5f1396['push'](_0x5f1396['shift']());}catch(_0x53b043){_0x5f1396['push'](_0x5f1396['shift']());}}}(_0x4294,0xddcc6));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';function _0x2e98(_0x5372eb,_0x58a32e){_0x5372eb=_0x5372eb-0x15b;const _0x429482=_0x4294();let _0x2e98bc=_0x429482[_0x5372eb];return _0x2e98bc;}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=_0x301b09=>_0x3a3058(0x173)+_0x301b09+'\x1b[0m',link=(_0x531b31,_0x47c102)=>_0x3a3058(0x17e)+_0x531b31+'\x07'+(_0x47c102||_0x531b31)+'\x1b]8;;\x07';async function getOpencodePluginStatus(){const _0x215e58=_0x3a3058,_0x43a59e={'ntEJJ':function(_0xc7a3d5,_0x5b5c0b){return _0xc7a3d5(_0x5b5c0b);},'MsopP':'not_installed','UPwYu':_0x215e58(0x190),'VqRDy':function(_0x20ca99,_0x63542b){return _0x20ca99!==_0x63542b;},'NBSvH':'@ranger-testing/opencode-plugin','cOoVQ':_0x215e58(0x19b),'KCUGE':function(_0x74a646,_0x5ec132,_0x2dd5cc,_0x13c476){return _0x74a646(_0x5ec132,_0x2dd5cc,_0x13c476);},'mmope':_0x215e58(0x161),'spcNb':_0x215e58(0x193),'EsRKv':_0x215e58(0x15f),'YvCTC':_0x215e58(0x15d)};return new Promise(_0x382981=>{const _0x1026e5=_0x215e58,_0x5ae149={'IThjb':function(_0x1c96a0,_0x94516d){return _0x43a59e['VqRDy'](_0x1c96a0,_0x94516d);},'wGWVD':'string','kzPQt':_0x43a59e['NBSvH'],'BhnPp':_0x43a59e['cOoVQ']},_0x2716ff=_0x43a59e['KCUGE'](spawn,_0x43a59e['mmope'],[_0x1026e5(0x1a3),'config'],{'stdio':['ignore','pipe',_0x1026e5(0x17c)]});let _0x132365='';_0x2716ff['stdout']?.['on'](_0x43a59e['spcNb'],_0x4f5567=>{const _0x31f543=_0x1026e5;_0x132365+=_0x4f5567[_0x31f543(0x160)]();}),_0x2716ff[_0x1026e5(0x19a)]?.['on'](_0x43a59e['spcNb'],_0x8ac610=>{const _0x3bab16=_0x1026e5;_0x132365+=_0x8ac610[_0x3bab16(0x160)]();}),_0x2716ff['on'](_0x43a59e[_0x1026e5(0x19e)],()=>{const _0x2934b8=_0x1026e5;_0x43a59e[_0x2934b8(0x1b7)](_0x382981,{'status':_0x43a59e[_0x2934b8(0x1ae)]});}),_0x2716ff['on'](_0x43a59e[_0x1026e5(0x19f)],_0x3efd02=>{const _0x5c3d35=_0x1026e5;if(_0x3efd02!==0x0){_0x382981({'status':_0x5c3d35(0x1c5)});return;}const _0x5dbb5c=_0x132365[_0x5c3d35(0x1c6)]();let _0x571b2b=null;if(_0x5dbb5c)try{_0x571b2b=JSON[_0x5c3d35(0x1b9)](_0x5dbb5c);}catch{const _0x2d20f6=_0x5dbb5c[_0x5c3d35(0x1ba)](/\{[\s\S]*\}$/);if(_0x2d20f6)try{_0x571b2b=JSON['parse'](_0x2d20f6[0x0]);}catch{_0x571b2b=null;}}const _0x50d06d=Array['isArray'](_0x571b2b?.['plugin'])?_0x571b2b?.[_0x5c3d35(0x177)]:[],_0x4f9793=_0x50d06d[_0x5c3d35(0x162)](_0x531bc6=>{const _0x3f7b5d=_0x5c3d35;if(_0x5ae149[_0x3f7b5d(0x1a5)](typeof _0x531bc6,_0x5ae149['wGWVD']))return![];return _0x531bc6['includes'](_0x5ae149[_0x3f7b5d(0x165)])||_0x531bc6['includes'](_0x5ae149['BhnPp']);});if(_0x4f9793){_0x43a59e[_0x5c3d35(0x1b7)](_0x382981,{'status':'configured','details':_0x50d06d['length']>0x0?_0x50d06d[_0x5c3d35(0x175)]+_0x5c3d35(0x179):undefined});return;}if(_0x50d06d['length']>0x0){_0x43a59e[_0x5c3d35(0x1b7)](_0x382981,{'status':_0x43a59e[_0x5c3d35(0x168)],'details':_0x50d06d['length']+_0x5c3d35(0x179)});return;}_0x43a59e[_0x5c3d35(0x1b7)](_0x382981,{'status':_0x43a59e[_0x5c3d35(0x168)]});});});}async function getSkillsFromDir(_0x4e4690,_0x46874f){const _0x1dfce4=_0x3a3058,_0x532854={'nfshJ':function(_0x916e9e,_0x27e010,_0x2b3a11){return _0x916e9e(_0x27e010,_0x2b3a11);},'MXnsT':_0x1dfce4(0x1ab),'NzQpu':'utf-8'};if(!existsSync(_0x4e4690))return[];const _0x4dfe60=[];try{const _0x498dfe=await _0x532854[_0x1dfce4(0x18d)](readdir,_0x4e4690,{'withFileTypes':!![]});for(const _0x1e5004 of _0x498dfe){if(_0x1e5004[_0x1dfce4(0x16a)]()){const _0x394b22=join(_0x4e4690,_0x1e5004['name'],_0x532854['MXnsT']);if(existsSync(_0x394b22)){let _0x40078c=_0x1e5004[_0x1dfce4(0x172)];try{const _0xe17d56=await readFile(_0x394b22,_0x532854['NzQpu']),_0x544fa7=_0xe17d56[_0x1dfce4(0x1ba)](/name:\s*(.+)/);_0x544fa7&&(_0x40078c=_0x544fa7[0x1][_0x1dfce4(0x1c6)]());}catch{}_0x4dfe60['push']({'name':_0x1e5004[_0x1dfce4(0x172)],'displayName':_0x40078c,'path':_0x394b22,'level':_0x46874f});}}}}catch{return[];}return _0x4dfe60;}function _0x4294(){const _0x9900a6=['error','toString','opencode','some','ZyCxy','26eIBqmh','kzPQt','includes','bXhGk','UPwYu','details','isDirectory','project','fOgDg','\x20\x20\x20\x20Auth:\x20','auth.json.enc','sessionUpdatedAt','configured','path','name','\x1b[1m','env','length','dudip','plugin','No\x20profiles\x20configured','\x20plugin(s)\x20configured','2434425jOhGzH','imBuV','pipe','Root:\x20','\x1b]8;;file://','no\x20session','cached\x20(updated\x20','Jotdc','\x20\x20Run:\x20ranger\x20setup\x20--opencode','none','has','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','480372VkUJta','\x20\x20Active:\x20','2433861wQNJzP','isActive','qTTNz','Version:\x20','6BwnaqP','nfshJ','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','\x0a📊\x20Ranger\x20Status\x0a','not_configured','\x20(active)','MzHZN','data','\x20(up\x20to\x20date)','\x0a---\x20Skills\x20---','104074PSPsCQ','saSAl','\x20cloud','496004xEREAq','stderr','opencode-plugin','gJfmQ','YyEFY','EsRKv','YvCTC','119eDxwEh','pCSpm','wVUWg','debug','hpmta','IThjb','18534300FEhsYI','user','\x20\x20\x20\x20','hasPlaintextAuth','organizationName','SKILL.md','displayName','yJDtJ','MsopP','\x20\x20Project-level:','enabled','DjNDo','filter','KfTZp','11569312WWRBUR','\x20\x20\x20\x20Session:\x20',':\x20installed\x20(','ntEJJ','join','parse','match','success','HugxX','log','DEBUG','API\x20Token:\x20✗\x20Not\x20found','\x20\x20\x20\x20Settings:\x20','Uwjmi','\x0a\x20\x20No\x20active\x20profile\x20set','encrypted','status','not_installed','trim','\x20\x20Not\x20installed','(not\x20found)','close','map'];_0x4294=function(){return _0x9900a6;};return _0x4294();}async function getInstalledSkills(){const _0x4463d3=_0x3a3058,_0x1efabe={'Uwjmi':function(_0x552561,_0x35df56,_0x48043f){return _0x552561(_0x35df56,_0x48043f);},'BXjiN':_0x4463d3(0x16b),'yJDtJ':'user'},[_0x2e5c8b,_0x2d307e]=await Promise['all']([_0x1efabe[_0x4463d3(0x1c1)](getSkillsFromDir,getProjectSkillsDir(),_0x1efabe['BXjiN']),getSkillsFromDir(getUserSkillsDir(),_0x1efabe[_0x4463d3(0x1ad)])]);return{'project':_0x2e5c8b,'user':_0x2d307e};}async function getEnvironments(){const _0x107dbe=_0x3a3058,_0x5e9071={'HugxX':function(_0x204259,_0x5bbf21){return _0x204259(_0x5bbf21);},'bXhGk':'settings.json','NDmUK':_0x107dbe(0x16e),'wVUWg':_0x107dbe(0x15c),'AlsNr':function(_0x77a031){return _0x77a031();},'YYcXA':function(_0x2f4ec5,_0x3681f3){return _0x2f4ec5(_0x3681f3);}},{envNames:_0x1a65d0,activeEnv:_0x58d57e}=await _0x5e9071['AlsNr'](getEnvNames),_0x23c28b=_0x5e9071['AlsNr'](getRangerDir);if(!_0x5e9071['YYcXA'](existsSync,_0x23c28b))return{'envs':[],'activeEnv':null};const _0x1450c5=_0x1a65d0['map'](_0x6eaca6=>{const _0x5b3580=_0x107dbe,_0x5bd47f=_0x5e9071[_0x5b3580(0x1bc)](getEnvDir,_0x6eaca6),_0x146633=join(_0x5bd47f,_0x5e9071[_0x5b3580(0x167)]),_0x14320d=join(_0x5bd47f,'auth.json'),_0x4ac7b5=join(_0x5bd47f,_0x5e9071['NDmUK']);return{'name':_0x6eaca6,'settingsPath':existsSync(_0x146633)?_0x146633:_0x5e9071[_0x5b3580(0x1a2)],'hasPlaintextAuth':_0x5e9071['HugxX'](existsSync,_0x14320d),'hasEncryptedAuth':_0x5e9071[_0x5b3580(0x1bc)](existsSync,_0x4ac7b5),'isActive':_0x6eaca6===_0x58d57e};});return{'envs':_0x1450c5,'activeEnv':_0x58d57e};}export async function status(){const _0x5b6f4b=_0x3a3058,_0x2a5e02={'fOgDg':_0x5b6f4b(0x18f),'hpmta':function(_0x30e515,_0x527d19,_0x2d3bc5){return _0x30e515(_0x527d19,_0x2d3bc5);},'gJfmQ':function(_0x2a80cf,_0x278994){return _0x2a80cf(_0x278994);},'HEuIO':function(_0x1647c1){return _0x1647c1();},'YyEFY':function(_0x5b27d6,_0x135750){return _0x5b27d6!==_0x135750;},'ZDlmb':function(_0x5dfb87){return _0x5dfb87();},'imBuV':function(_0x5e871f){return _0x5e871f();},'saSAl':function(_0x21c4ce,_0x337e61){return _0x21c4ce===_0x337e61;},'AdXTo':'\x20\x20Not\x20configured','XoJnw':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','pCSpm':function(_0x17e9bb,_0x5746b){return _0x17e9bb(_0x5746b);},'sLQlO':'unknown','duIaf':'ranger@trailhead','ZyCxy':_0x5b6f4b(0x15b),'mUpRl':_0x5b6f4b(0x18e),'nAqKl':function(_0x21d4b2,_0x2440d0){return _0x21d4b2===_0x2440d0;},'Rvnzl':'No\x20skills\x20installed','DjNDo':function(_0x2758a3,_0x1cc9f7){return _0x2758a3>_0x1cc9f7;},'qTTNz':_0x5b6f4b(0x1af),'PCAoc':function(_0x413484,_0x502bc3,_0x4a4419){return _0x413484(_0x502bc3,_0x4a4419);},'Jotdc':'\x0a---\x20Profiles\x20---','xIlyZ':function(_0x5f0c48,_0x82aace){return _0x5f0c48(_0x82aace);},'KfTZp':_0x5b6f4b(0x191),'dudip':function(_0x5b5bfc,_0x5273f7){return _0x5b5bfc(_0x5273f7);},'MzHZN':'plaintext','ZcmeC':_0x5b6f4b(0x183),'xdWON':'(not\x20found)'};console[_0x5b6f4b(0x1bd)](_0x2a5e02[_0x5b6f4b(0x16c)]);const _0x558381=process['cwd'](),_0x211624=getRangerDir();if(!existsSync(_0x211624)){console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x17d)+_0x2a5e02[_0x5b6f4b(0x1a4)](link,_0x558381,bold(basename(_0x558381)))),console['log'](_0x5b6f4b(0x185)),console[_0x5b6f4b(0x1bd)]('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x5b6f4b(0x1bd)]('Root:\x20'+link(_0x558381,_0x2a5e02[_0x5b6f4b(0x19c)](bold,basename(_0x558381))));const _0x32d042=getCurrentVersion(),_0x666935=_0x2a5e02['HEuIO'](getLatestVersion);if(_0x666935['version']&&_0x2a5e02['YyEFY'](_0x666935['version'],_0x32d042))console[_0x5b6f4b(0x1bd)]('Version:\x20'+_0x32d042+'\x20(latest:\x20'+_0x666935['version']+')'),console[_0x5b6f4b(0x1bd)]('\x20\x20Run:\x20ranger\x20update');else _0x666935['version']?console[_0x5b6f4b(0x1bd)]('Version:\x20'+_0x32d042+_0x5b6f4b(0x194)):console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x18b)+_0x32d042);const _0x26feb1=await getToken();if(_0x26feb1){const _0x156ae0=await getCurrentUser(_0x26feb1);_0x156ae0[_0x5b6f4b(0x1bb)]?console[_0x5b6f4b(0x1bd)]('Organization:\x20'+bold(_0x156ae0[_0x5b6f4b(0x1a7)][_0x5b6f4b(0x1aa)])):(console[_0x5b6f4b(0x1bd)]('API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired'),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x1bf)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]');process[_0x5b6f4b(0x174)][_0x5b6f4b(0x1be)]&&(console['log']('API\x20Environment:\x20'+_0x2a5e02['ZDlmb'](getCurrentEnvironment)),console[_0x5b6f4b(0x1bd)]('API\x20URL:\x20'+_0x2a5e02[_0x5b6f4b(0x17b)](getApiBaseUrl)));console['log']('\x0a---\x20OpenCode\x20Plugin\x20---');const _0x56f273=await _0x2a5e02['ZDlmb'](getOpencodePluginStatus);if(_0x2a5e02[_0x5b6f4b(0x197)](_0x56f273[_0x5b6f4b(0x1c4)],_0x5b6f4b(0x170)))console[_0x5b6f4b(0x1bd)]('\x20\x20'+bold('@ranger-testing/opencode-plugin')+':\x20configured'),_0x56f273['details']&&console['log']('\x20\x20'+_0x56f273['details']);else _0x56f273[_0x5b6f4b(0x1c4)]===_0x5b6f4b(0x190)?(console[_0x5b6f4b(0x1bd)](_0x2a5e02['AdXTo']),_0x56f273['details']&&console[_0x5b6f4b(0x1bd)]('\x20\x20'+_0x56f273[_0x5b6f4b(0x169)]),console['log'](_0x5b6f4b(0x182))):console['log'](_0x2a5e02['XoJnw']);console['log']('\x0a---\x20Claude\x20Code\x20Plugin\x20---');const _0x3f9b24=await _0x2a5e02[_0x5b6f4b(0x1a1)](getPluginInfo,'ranger@trailhead');if(_0x3f9b24){const _0x3f8f1d=_0x3f9b24['scope']||_0x2a5e02['sLQlO'],_0x32e31f=_0x3f9b24[_0x5b6f4b(0x1b0)]?_0x5b6f4b(0x1b0):'disabled';console[_0x5b6f4b(0x1bd)]('\x20\x20'+bold(_0x2a5e02['duIaf'])+_0x5b6f4b(0x1b6)+_0x3f8f1d+',\x20'+_0x32e31f+')');}else console[_0x5b6f4b(0x1bd)](_0x2a5e02[_0x5b6f4b(0x163)]),console['log'](_0x2a5e02['mUpRl']);console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x195));const {project:_0x5b71e1,user:_0x4310dd}=await getInstalledSkills(),_0x1caa0b=_0x5b71e1[_0x5b6f4b(0x1b2)](_0x212aec=>RANGER_MANAGED_SKILLS[_0x5b6f4b(0x166)](_0x212aec[_0x5b6f4b(0x172)])),_0x520f63=_0x4310dd['filter'](_0x568e4f=>RANGER_MANAGED_SKILLS[_0x5b6f4b(0x166)](_0x568e4f['name'])),_0x1aabba=_0x1caa0b['length']+_0x520f63[_0x5b6f4b(0x175)];if(_0x2a5e02['nAqKl'](_0x1aabba,0x0))console['log'](_0x2a5e02['Rvnzl']),console['log']('\x20\x20Run:\x20ranger\x20skillup');else{if(_0x2a5e02[_0x5b6f4b(0x1b1)](_0x1caa0b[_0x5b6f4b(0x175)],0x0)){console[_0x5b6f4b(0x1bd)](_0x2a5e02[_0x5b6f4b(0x18a)]);for(const _0x4b371c of _0x1caa0b){console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x1a8)+_0x2a5e02['gJfmQ'](bold,_0x4b371c[_0x5b6f4b(0x1ac)])+':\x20'+link(_0x4b371c[_0x5b6f4b(0x171)],basename(_0x4b371c[_0x5b6f4b(0x171)])));}}if(_0x520f63['length']>0x0){console['log']('\x20\x20User-level:');for(const _0x2a0478 of _0x520f63){console[_0x5b6f4b(0x1bd)]('\x20\x20\x20\x20'+_0x2a5e02[_0x5b6f4b(0x1a1)](bold,_0x2a0478['displayName'])+':\x20'+_0x2a5e02['PCAoc'](link,_0x2a0478[_0x5b6f4b(0x171)],basename(_0x2a0478[_0x5b6f4b(0x171)])));}}}console['log'](_0x2a5e02[_0x5b6f4b(0x181)]);const {envs:_0x18fba0,activeEnv:_0x485547}=await getEnvironments();let _0x2ef6f1=[];if(_0x26feb1)try{_0x2ef6f1=await _0x2a5e02['HEuIO'](listCloudProfiles);}catch{}const _0xc301d=_0x18fba0[_0x5b6f4b(0x175)]+_0x2ef6f1['length'];if(_0xc301d===0x0)console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x178)),console['log']('\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>');else{if(_0x2a5e02['DjNDo'](_0xc301d,0x5)){const _0x55689f=[];_0x2a5e02['DjNDo'](_0x2ef6f1['length'],0x0)&&_0x55689f['push'](_0x2ef6f1[_0x5b6f4b(0x175)]+_0x5b6f4b(0x198)),_0x2a5e02['DjNDo'](_0x18fba0[_0x5b6f4b(0x175)],0x0)&&_0x55689f['push'](_0x18fba0[_0x5b6f4b(0x175)]+'\x20local'),console['log'](_0xc301d+'\x20profiles\x20configured\x20('+_0x55689f[_0x5b6f4b(0x1b8)](',\x20')+')'),_0x485547&&console['log'](_0x5b6f4b(0x187)+_0x2a5e02['xIlyZ'](bold,_0x485547)),console[_0x5b6f4b(0x1bd)]('\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)');}else{for(const _0x4222ce of _0x2ef6f1){const _0x16d3ab=_0x4222ce['name']===_0x485547?_0x2a5e02[_0x5b6f4b(0x1b3)]:'';console['log']('\x20\x20'+_0x2a5e02[_0x5b6f4b(0x176)](bold,_0x4222ce['name'])+'\x20[cloud]'+_0x16d3ab);const _0x2ba5b3=_0x4222ce['sessionUpdatedAt']?_0x5b6f4b(0x180)+_0x4222ce[_0x5b6f4b(0x16f)]+')':_0x5b6f4b(0x17f);console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x1b5)+_0x2ba5b3);}const _0x4b9a46=new Set(_0x2ef6f1[_0x5b6f4b(0x15e)](_0x2795f7=>_0x2795f7[_0x5b6f4b(0x172)]));for(const _0x15fbd5 of _0x18fba0){if(_0x4b9a46['has'](_0x15fbd5[_0x5b6f4b(0x172)]))continue;const _0x6363ae=_0x15fbd5[_0x5b6f4b(0x189)]?_0x2a5e02['KfTZp']:'',_0x12dee4=_0x15fbd5['hasEncryptedAuth']?_0x5b6f4b(0x1c3):_0x15fbd5[_0x5b6f4b(0x1a9)]?_0x2a5e02[_0x5b6f4b(0x192)]:_0x2a5e02['ZcmeC'];console[_0x5b6f4b(0x1bd)]('\x20\x20'+bold(_0x15fbd5[_0x5b6f4b(0x172)])+'\x20[local]'+_0x6363ae),console[_0x5b6f4b(0x1bd)](_0x5b6f4b(0x16d)+_0x12dee4),_0x2a5e02[_0x5b6f4b(0x19d)](_0x15fbd5['settingsPath'],_0x2a5e02['xdWON'])&&console['log'](_0x5b6f4b(0x1c0)+_0x2a5e02[_0x5b6f4b(0x1a4)](link,_0x15fbd5['settingsPath'],basename(_0x15fbd5['settingsPath'])));}if(!_0x485547){console['log'](_0x5b6f4b(0x1c2));const _0x35d8dc=[..._0x2ef6f1[_0x5b6f4b(0x15e)](_0x3ec85e=>_0x3ec85e[_0x5b6f4b(0x172)]),..._0x18fba0['filter'](_0x29a4d1=>!_0x4b9a46[_0x5b6f4b(0x184)](_0x29a4d1['name']))['map'](_0x3193af=>_0x3193af['name'])];console['log']('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x35d8dc[_0x5b6f4b(0x1b8)](',\x20')+')');}}}console[_0x5b6f4b(0x1bd)]('');}
|
|
1
|
+
const _0x5cc9fc=_0x45ed;(function(_0x1453bc,_0x141d47){const _0xa6ccfc=_0x45ed,_0x1023fa=_0x1453bc();while(!![]){try{const _0x3d5466=-parseInt(_0xa6ccfc(0x160))/0x1*(parseInt(_0xa6ccfc(0x15b))/0x2)+-parseInt(_0xa6ccfc(0x1b7))/0x3*(parseInt(_0xa6ccfc(0x17a))/0x4)+parseInt(_0xa6ccfc(0x1c1))/0x5*(-parseInt(_0xa6ccfc(0x159))/0x6)+parseInt(_0xa6ccfc(0x180))/0x7*(-parseInt(_0xa6ccfc(0x193))/0x8)+-parseInt(_0xa6ccfc(0x1aa))/0x9*(-parseInt(_0xa6ccfc(0x1bb))/0xa)+-parseInt(_0xa6ccfc(0x1b4))/0xb*(parseInt(_0xa6ccfc(0x166))/0xc)+parseInt(_0xa6ccfc(0x187))/0xd;if(_0x3d5466===_0x141d47)break;else _0x1023fa['push'](_0x1023fa['shift']());}catch(_0x369cd7){_0x1023fa['push'](_0x1023fa['shift']());}}}(_0x190c,0x93368));import{readFile,readdir}from'fs/promises';import{join,basename}from'path';import{existsSync}from'fs';import{getToken}from'./utils/keychain.js';import{getCurrentVersion,getLatestVersion}from'./utils/version.js';import{getApiBaseUrl,getCurrentEnvironment}from'./utils/environment.js';import{getProjectSkillsDir,getUserSkillsDir}from'./utils/claudeConfig.js';import{getEnvNames}from'./env.js';import{getCurrentUser}from'./utils/userApi.js';import{getRangerDir}from'./utils/rangerRoot.js';function _0x45ed(_0x33909f,_0x1b0317){_0x33909f=_0x33909f-0x158;const _0x190c27=_0x190c();let _0x45ed55=_0x190c27[_0x33909f];return _0x45ed55;}import{getEnvDir}from'./utils/settings.js';import{listCloudProfiles}from'./utils/cloudProfile.js';import{getPluginInfo}from'./utils/claudePlugin.js';import{RANGER_MANAGED_SKILLS}from'./utils/skills.js';import{spawn}from'child_process';const bold=_0x51edc9=>_0x5cc9fc(0x18a)+_0x51edc9+_0x5cc9fc(0x1af),link=(_0xf94d6,_0x181a92)=>'\x1b]8;;file://'+_0xf94d6+'\x07'+(_0x181a92||_0xf94d6)+_0x5cc9fc(0x1bc);async function getOpencodePluginStatus(){const _0x48826f=_0x5cc9fc,_0x415f67={'lrSlQ':_0x48826f(0x1b0),'LZfXs':_0x48826f(0x194),'pgcCp':function(_0x71f936,_0x5b09ab){return _0x71f936>_0x5b09ab;},'VnihL':'not_configured','lGOYM':_0x48826f(0x18b),'mRcVk':'debug','hPAPw':_0x48826f(0x17b),'KNJYB':_0x48826f(0x1c0),'SyYfd':_0x48826f(0x1a0)};return new Promise(_0x1b59f9=>{const _0xafec6f=_0x48826f,_0x341081={'pibqs':function(_0x48dcff,_0x2680a9){return _0x48dcff(_0x2680a9);},'QKoCA':'not_installed','Bxkie':_0x415f67['lrSlQ'],'iCFAo':_0x415f67['LZfXs'],'LyUna':function(_0x42a448,_0x62366e){return _0x415f67['pgcCp'](_0x42a448,_0x62366e);},'lPLnM':_0x415f67['VnihL']},_0x498176=spawn(_0x415f67['lGOYM'],[_0x415f67[_0xafec6f(0x19c)],'config'],{'stdio':['ignore',_0x415f67['hPAPw'],_0x415f67[_0xafec6f(0x16b)]]});let _0xe7f922='';_0x498176['stdout']?.['on'](_0x415f67['KNJYB'],_0x42353f=>{_0xe7f922+=_0x42353f['toString']();}),_0x498176['stderr']?.['on']('data',_0x4c164d=>{const _0x23cdb9=_0xafec6f;_0xe7f922+=_0x4c164d[_0x23cdb9(0x19d)]();}),_0x498176['on'](_0x415f67[_0xafec6f(0x1ac)],()=>{const _0x3bd45e=_0xafec6f;_0x341081['pibqs'](_0x1b59f9,{'status':_0x341081[_0x3bd45e(0x15e)]});}),_0x498176['on'](_0xafec6f(0x16a),_0x48f2c7=>{const _0x11c60c=_0xafec6f,_0x25bbe1={'OzbsL':_0x11c60c(0x198),'QSQCp':_0x341081['Bxkie']};if(_0x48f2c7!==0x0){_0x341081['pibqs'](_0x1b59f9,{'status':'not_installed'});return;}const _0xb3e08c=_0xe7f922[_0x11c60c(0x175)]();let _0x132aaa=null;if(_0xb3e08c)try{_0x132aaa=JSON['parse'](_0xb3e08c);}catch{const _0x44aee8=_0xb3e08c['match'](/\{[\s\S]*\}$/);if(_0x44aee8)try{_0x132aaa=JSON['parse'](_0x44aee8[0x0]);}catch{_0x132aaa=null;}}const _0x2a9944=Array[_0x11c60c(0x1a7)](_0x132aaa?.[_0x11c60c(0x1a8)])?_0x132aaa?.['plugin']:[],_0x535b96=_0x2a9944['some'](_0x3f0460=>{const _0x1f9d1a=_0x11c60c;if(typeof _0x3f0460!==_0x25bbe1['OzbsL'])return![];return _0x3f0460[_0x1f9d1a(0x183)]('@ranger-testing/opencode-plugin')||_0x3f0460[_0x1f9d1a(0x183)](_0x25bbe1['QSQCp']);});if(_0x535b96){_0x341081[_0x11c60c(0x1a6)](_0x1b59f9,{'status':_0x341081['iCFAo'],'details':_0x2a9944['length']>0x0?_0x2a9944[_0x11c60c(0x19b)]+'\x20plugin(s)\x20configured':undefined});return;}if(_0x341081['LyUna'](_0x2a9944[_0x11c60c(0x19b)],0x0)){_0x1b59f9({'status':_0x11c60c(0x192),'details':_0x2a9944[_0x11c60c(0x19b)]+'\x20plugin(s)\x20configured'});return;}_0x1b59f9({'status':_0x341081[_0x11c60c(0x18c)]});});});}async function getSkillsFromDir(_0x513c05,_0xa168e2){const _0x306d20=_0x5cc9fc,_0x2c9bc7={'soFHm':function(_0x2c6f2f,_0x363495){return _0x2c6f2f(_0x363495);},'QsCxO':function(_0x4e67ea,_0x48397a,_0x40b2dc,_0x202696){return _0x4e67ea(_0x48397a,_0x40b2dc,_0x202696);},'bFwwD':_0x306d20(0x17f),'EyKWN':function(_0x27dae5,_0x4ade6f){return _0x27dae5(_0x4ade6f);},'NEPwd':function(_0x3b7b72,_0xd263c1,_0x17925f){return _0x3b7b72(_0xd263c1,_0x17925f);},'FWSFG':'utf-8'};if(!_0x2c9bc7['soFHm'](existsSync,_0x513c05))return[];const _0x4aeb10=[];try{const _0x57d832=await readdir(_0x513c05,{'withFileTypes':!![]});for(const _0x5c76cc of _0x57d832){if(_0x5c76cc[_0x306d20(0x1ba)]()){const _0x3b6bbe=_0x2c9bc7['QsCxO'](join,_0x513c05,_0x5c76cc['name'],_0x2c9bc7['bFwwD']);if(_0x2c9bc7[_0x306d20(0x1b2)](existsSync,_0x3b6bbe)){let _0x293436=_0x5c76cc['name'];try{const _0x33b4c2=await _0x2c9bc7[_0x306d20(0x191)](readFile,_0x3b6bbe,_0x2c9bc7[_0x306d20(0x15d)]),_0x5aff8a=_0x33b4c2[_0x306d20(0x170)](/name:\s*(.+)/);_0x5aff8a&&(_0x293436=_0x5aff8a[0x1][_0x306d20(0x175)]());}catch{}_0x4aeb10[_0x306d20(0x17d)]({'name':_0x5c76cc['name'],'displayName':_0x293436,'path':_0x3b6bbe,'level':_0xa168e2});}}}}catch{return[];}return _0x4aeb10;}async function getInstalledSkills(){const _0x785828=_0x5cc9fc,_0x44169f={'NGxac':function(_0x2e16f7,_0x5cc570,_0x62dbdb){return _0x2e16f7(_0x5cc570,_0x62dbdb);},'ebQLG':_0x785828(0x1ae)},[_0x201c31,_0x4bc8be]=await Promise['all']([_0x44169f['NGxac'](getSkillsFromDir,getProjectSkillsDir(),_0x44169f['ebQLG']),getSkillsFromDir(getUserSkillsDir(),_0x785828(0x16e))]);return{'project':_0x201c31,'user':_0x4bc8be};}function _0x190c(){const _0x523abb=['opencode-plugin','version','EyKWN','hasEncryptedAuth','66oxllQM','\x0a---\x20Skills\x20---','no\x20session','1563FWXJlp','API\x20URL:\x20','API\x20Token:\x20✓\x20Found\x20but\x20invalid\x20or\x20expired','isDirectory','5683410JnliQf','\x1b]8;;\x07','details','map','MpAUD','data','170065fVsEkL','hasPlaintextAuth',':\x20installed\x20(','\x20\x20Run:\x20ranger\x20setup\x20[token]\x20\x20(includes\x20plugin\x20installation)','60qtToUR','plaintext','8wrXVwq','Version:\x20','FWSFG','QKoCA','(not\x20found)','21781fXKHss','gMpgv','NkvHr','\x0a---\x20Profiles\x20---','has','organizationName','1320312lDUxTv','\x20\x20Run:\x20ranger\x20profile\x20add\x20<profile-name>','status','Organization:\x20','close','hPAPw','\x20\x20\x20\x20Settings:\x20','No\x20profiles\x20configured','user','\x20(active)','match','gkIdG','SfTGP','\x20\x20Run:\x20ranger\x20profile\x20ls\x20\x20(list\x20all)','rHwou','trim','\x20\x20Run:\x20ranger\x20setup\x20[token]','ranger@trailhead','scope','join','4168kWXEgK','pipe','tIufa','push','\x20\x20User-level:','SKILL.md','8341522dIvIGA','name','znzBc','includes','CmINI','LQzmG','API\x20Token:\x20✗\x20Not\x20found','37135553DKSSfz','log','iGnYr','\x1b[1m','opencode','lPLnM','settingsPath','No\x20skills\x20installed','\x20\x20\x20\x20Session:\x20','aPyUV','NEPwd','not_configured','8RVxpra','configured','tWqyD','Root:\x20','bSdyd','string','filter','lIvWM','length','mRcVk','toString','rzYZs','sessionUpdatedAt','error','\x0aRanger\x20has\x20not\x20been\x20initialized\x20in\x20this\x20directory.','\x20\x20Run:\x20ranger\x20skillup','\x0a---\x20OpenCode\x20Plugin\x20---','\x20cloud','SvNDb','pibqs','isArray','plugin','env','9JGZWRb','\x20\x20\x20\x20','SyYfd','displayName','project','\x1b[0m'];_0x190c=function(){return _0x523abb;};return _0x190c();}async function getEnvironments(){const _0x16ec51=_0x5cc9fc,_0x528bbf={'CmINI':function(_0x32be03,_0x4ac66f){return _0x32be03(_0x4ac66f);},'tSnmA':'settings.json','MpAUD':function(_0x4831ca,_0x2a368b,_0x2f7464){return _0x4831ca(_0x2a368b,_0x2f7464);},'aPyUV':'auth.json','aUCIx':function(_0x519c05,_0x25de24,_0x59bec2){return _0x519c05(_0x25de24,_0x59bec2);},'SdKVi':function(_0x8b7963){return _0x8b7963();},'qofGO':function(_0x5a99b0,_0x52bfcb){return _0x5a99b0(_0x52bfcb);}},{envNames:_0xad2047,activeEnv:_0x38afd1}=await getEnvNames(),_0x298dd5=_0x528bbf['SdKVi'](getRangerDir);if(!_0x528bbf['qofGO'](existsSync,_0x298dd5))return{'envs':[],'activeEnv':null};const _0xafcc3b=_0xad2047[_0x16ec51(0x1be)](_0x33fea3=>{const _0x59b4d6=_0x16ec51,_0x598e5a=_0x528bbf[_0x59b4d6(0x184)](getEnvDir,_0x33fea3),_0xa5483f=join(_0x598e5a,_0x528bbf['tSnmA']),_0x12df6f=_0x528bbf[_0x59b4d6(0x1bf)](join,_0x598e5a,_0x528bbf[_0x59b4d6(0x190)]),_0x26304f=_0x528bbf['aUCIx'](join,_0x598e5a,'auth.json.enc');return{'name':_0x33fea3,'settingsPath':existsSync(_0xa5483f)?_0xa5483f:_0x59b4d6(0x15f),'hasPlaintextAuth':existsSync(_0x12df6f),'hasEncryptedAuth':_0x528bbf[_0x59b4d6(0x184)](existsSync,_0x26304f),'isActive':_0x33fea3===_0x38afd1};});return{'envs':_0xafcc3b,'activeEnv':_0x38afd1};}export async function status(){const _0x16748f=_0x5cc9fc,_0x40a6a4={'tIufa':function(_0x5048d1){return _0x5048d1();},'NJahH':function(_0x21d3ec,_0x1713aa){return _0x21d3ec(_0x1713aa);},'gMvaQ':function(_0x5da20e,_0x40e5fa,_0x5a8ca7){return _0x5da20e(_0x40e5fa,_0x5a8ca7);},'rzYZs':function(_0x3e4c7b,_0x4bac84){return _0x3e4c7b(_0x4bac84);},'lIvWM':function(_0x357d8c){return _0x357d8c();},'bSdyd':function(_0x59786e){return _0x59786e();},'rHwou':function(_0xb1e4f7,_0x247b73){return _0xb1e4f7!==_0x247b73;},'CSjMK':_0x16748f(0x1a3),'znzBc':function(_0x1f173b,_0xeb1221){return _0x1f173b===_0xeb1221;},'iGnYr':'\x20\x20OpenCode\x20not\x20installed\x20or\x20not\x20available','avFIg':'\x20\x20Not\x20installed','qwnrk':function(_0x4fe6a0,_0x20aa34){return _0x4fe6a0+_0x20aa34;},'SfTGP':_0x16748f(0x18e),'gMpgv':'\x20\x20Project-level:','eCFIR':function(_0x49585f,_0xce1fdb){return _0x49585f(_0xce1fdb);},'tWqyD':function(_0x315203,_0x2f4286,_0x24ad29){return _0x315203(_0x2f4286,_0x24ad29);},'SvNDb':function(_0x50e266,_0x2aedb4){return _0x50e266(_0x2aedb4);},'IiyXM':function(_0x33c240,_0x3171de){return _0x33c240(_0x3171de);},'ZeVUi':function(_0x92f5fc,_0xda0b1b){return _0x92f5fc(_0xda0b1b);},'gkIdG':function(_0x3d5b33,_0x55fc07){return _0x3d5b33+_0x55fc07;},'tDmoZ':_0x16748f(0x16d),'LQzmG':function(_0x55d414,_0xe4cd33){return _0x55d414>_0xe4cd33;},'oObAR':function(_0x194a11,_0x5ded4b){return _0x194a11>_0x5ded4b;},'NkvHr':'none'};console[_0x16748f(0x188)]('\x0a📊\x20Ranger\x20Status\x0a');const _0x2000a7=process['cwd'](),_0x40d041=_0x40a6a4[_0x16748f(0x17c)](getRangerDir);if(!_0x40a6a4['NJahH'](existsSync,_0x40d041)){console[_0x16748f(0x188)](_0x16748f(0x196)+_0x40a6a4['gMvaQ'](link,_0x2000a7,bold(_0x40a6a4[_0x16748f(0x19e)](basename,_0x2000a7)))),console['log'](_0x16748f(0x1a1)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]\x0a');return;}console[_0x16748f(0x188)]('Root:\x20'+_0x40a6a4['gMvaQ'](link,_0x2000a7,bold(basename(_0x2000a7))));const _0x1fa004=_0x40a6a4[_0x16748f(0x19a)](getCurrentVersion),_0x5af972=_0x40a6a4[_0x16748f(0x197)](getLatestVersion);if(_0x5af972[_0x16748f(0x1b1)]&&_0x40a6a4[_0x16748f(0x174)](_0x5af972[_0x16748f(0x1b1)],_0x1fa004))console['log'](_0x16748f(0x15c)+_0x1fa004+'\x20(latest:\x20'+_0x5af972['version']+')'),console['log']('\x20\x20Run:\x20ranger\x20update');else _0x5af972[_0x16748f(0x1b1)]?console[_0x16748f(0x188)](_0x16748f(0x15c)+_0x1fa004+'\x20(up\x20to\x20date)'):console[_0x16748f(0x188)]('Version:\x20'+_0x1fa004);const _0x2e1152=await _0x40a6a4['bSdyd'](getToken);if(_0x2e1152){const _0x2a8d00=await getCurrentUser(_0x2e1152);_0x2a8d00['success']?console['log'](_0x16748f(0x169)+_0x40a6a4['NJahH'](bold,_0x2a8d00['user'][_0x16748f(0x165)])):(console[_0x16748f(0x188)](_0x16748f(0x1b9)),console['log']('\x20\x20Run:\x20ranger\x20setup\x20[token]'));}else console['log'](_0x16748f(0x186)),console[_0x16748f(0x188)](_0x16748f(0x176));process[_0x16748f(0x1a9)]['DEBUG']&&(console[_0x16748f(0x188)]('API\x20Environment:\x20'+_0x40a6a4[_0x16748f(0x17c)](getCurrentEnvironment)),console[_0x16748f(0x188)](_0x16748f(0x1b8)+getApiBaseUrl()));console['log'](_0x40a6a4['CSjMK']);const _0x115c6d=await getOpencodePluginStatus();if(_0x40a6a4[_0x16748f(0x182)](_0x115c6d['status'],_0x16748f(0x194)))console['log']('\x20\x20'+_0x40a6a4['rzYZs'](bold,'@ranger-testing/opencode-plugin')+':\x20configured'),_0x115c6d['details']&&console[_0x16748f(0x188)]('\x20\x20'+_0x115c6d[_0x16748f(0x1bd)]);else _0x115c6d[_0x16748f(0x168)]==='not_configured'?(console['log']('\x20\x20Not\x20configured'),_0x115c6d[_0x16748f(0x1bd)]&&console[_0x16748f(0x188)]('\x20\x20'+_0x115c6d[_0x16748f(0x1bd)]),console[_0x16748f(0x188)]('\x20\x20Run:\x20ranger\x20setup\x20--opencode')):console[_0x16748f(0x188)](_0x40a6a4[_0x16748f(0x189)]);console[_0x16748f(0x188)]('\x0a---\x20Claude\x20Code\x20Plugin\x20---');const _0x164b2b=await getPluginInfo(_0x16748f(0x177));if(_0x164b2b){const _0x30f6e0=_0x164b2b[_0x16748f(0x178)]||'unknown',_0x3c0f93=_0x164b2b['enabled']?'enabled':'disabled';console['log']('\x20\x20'+bold('ranger@trailhead')+_0x16748f(0x1c3)+_0x30f6e0+',\x20'+_0x3c0f93+')');}else console[_0x16748f(0x188)](_0x40a6a4['avFIg']),console[_0x16748f(0x188)](_0x16748f(0x158));console[_0x16748f(0x188)](_0x16748f(0x1b5));const {project:_0x2d869f,user:_0x5ee3a8}=await _0x40a6a4['bSdyd'](getInstalledSkills),_0x688821=_0x2d869f['filter'](_0x151c8e=>RANGER_MANAGED_SKILLS['includes'](_0x151c8e['name'])),_0x5e4167=_0x5ee3a8['filter'](_0x10e49e=>RANGER_MANAGED_SKILLS[_0x16748f(0x183)](_0x10e49e['name'])),_0x4cbaae=_0x40a6a4['qwnrk'](_0x688821['length'],_0x5e4167[_0x16748f(0x19b)]);if(_0x40a6a4['znzBc'](_0x4cbaae,0x0))console['log'](_0x40a6a4[_0x16748f(0x172)]),console[_0x16748f(0x188)](_0x16748f(0x1a2));else{if(_0x688821['length']>0x0){console['log'](_0x40a6a4[_0x16748f(0x161)]);for(const _0x590d23 of _0x688821){console[_0x16748f(0x188)](_0x16748f(0x1ab)+_0x40a6a4['eCFIR'](bold,_0x590d23['displayName'])+':\x20'+_0x40a6a4['tWqyD'](link,_0x590d23['path'],_0x40a6a4[_0x16748f(0x1a5)](basename,_0x590d23['path'])));}}if(_0x5e4167[_0x16748f(0x19b)]>0x0){console[_0x16748f(0x188)](_0x16748f(0x17e));for(const _0x38257e of _0x5e4167){console[_0x16748f(0x188)](_0x16748f(0x1ab)+_0x40a6a4['IiyXM'](bold,_0x38257e[_0x16748f(0x1ad)])+':\x20'+link(_0x38257e['path'],_0x40a6a4['ZeVUi'](basename,_0x38257e['path'])));}}}console[_0x16748f(0x188)](_0x16748f(0x163));const {envs:_0x1ee73e,activeEnv:_0x83f09a}=await getEnvironments();let _0x409750=[];if(_0x2e1152)try{_0x409750=await listCloudProfiles();}catch{}const _0x415894=_0x40a6a4[_0x16748f(0x171)](_0x1ee73e[_0x16748f(0x19b)],_0x409750[_0x16748f(0x19b)]);if(_0x40a6a4[_0x16748f(0x182)](_0x415894,0x0))console[_0x16748f(0x188)](_0x40a6a4['tDmoZ']),console['log'](_0x16748f(0x167));else{if(_0x40a6a4[_0x16748f(0x185)](_0x415894,0x5)){const _0xfcaf40=[];_0x409750[_0x16748f(0x19b)]>0x0&&_0xfcaf40[_0x16748f(0x17d)](_0x409750[_0x16748f(0x19b)]+_0x16748f(0x1a4)),_0x40a6a4['oObAR'](_0x1ee73e['length'],0x0)&&_0xfcaf40[_0x16748f(0x17d)](_0x1ee73e['length']+'\x20local'),console['log'](_0x415894+'\x20profiles\x20configured\x20('+_0xfcaf40['join'](',\x20')+')'),_0x83f09a&&console['log']('\x20\x20Active:\x20'+bold(_0x83f09a)),console[_0x16748f(0x188)](_0x16748f(0x173));}else{for(const _0x34afce of _0x409750){const _0x42ccef=_0x34afce[_0x16748f(0x181)]===_0x83f09a?_0x16748f(0x16f):'';console['log']('\x20\x20'+bold(_0x34afce['name'])+'\x20[cloud]'+_0x42ccef);const _0x61801d=_0x34afce[_0x16748f(0x19f)]?'cached\x20(updated\x20'+_0x34afce[_0x16748f(0x19f)]+')':_0x16748f(0x1b6);console['log'](_0x16748f(0x18f)+_0x61801d);}const _0x40c913=new Set(_0x409750[_0x16748f(0x1be)](_0x146d60=>_0x146d60[_0x16748f(0x181)]));for(const _0x3dcb5f of _0x1ee73e){if(_0x40c913['has'](_0x3dcb5f['name']))continue;const _0x263a3a=_0x3dcb5f['isActive']?_0x16748f(0x16f):'',_0x3d2421=_0x3dcb5f[_0x16748f(0x1b3)]?'encrypted':_0x3dcb5f[_0x16748f(0x1c2)]?_0x16748f(0x15a):_0x40a6a4[_0x16748f(0x162)];console[_0x16748f(0x188)]('\x20\x20'+bold(_0x3dcb5f[_0x16748f(0x181)])+'\x20[local]'+_0x263a3a),console['log']('\x20\x20\x20\x20Auth:\x20'+_0x3d2421),_0x40a6a4[_0x16748f(0x174)](_0x3dcb5f['settingsPath'],'(not\x20found)')&&console[_0x16748f(0x188)](_0x16748f(0x16c)+_0x40a6a4[_0x16748f(0x195)](link,_0x3dcb5f[_0x16748f(0x18d)],basename(_0x3dcb5f[_0x16748f(0x18d)])));}if(!_0x83f09a){console['log']('\x0a\x20\x20No\x20active\x20profile\x20set');const _0x5ecd82=[..._0x409750['map'](_0x22eba4=>_0x22eba4['name']),..._0x1ee73e[_0x16748f(0x199)](_0x5b8b33=>!_0x40c913[_0x16748f(0x164)](_0x5b8b33['name']))['map'](_0xc216a8=>_0xc216a8[_0x16748f(0x181)])];console[_0x16748f(0x188)]('\x20\x20Run:\x20ranger\x20profile\x20use\x20<profile-name>\x20\x20(available:\x20'+_0x5ecd82[_0x16748f(0x179)](',\x20')+')');}}}console[_0x16748f(0x188)]('');}
|