@ranger-testing/ranger-cli 1.0.10 → 1.0.12
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/README.md +111 -0
- package/build/cli.js +230 -8
- package/build/cli.js.map +1 -1
- package/build/commands/addEnv.js +1 -1
- package/build/commands/addEnv.js.map +1 -1
- package/build/commands/clean.js +1 -1
- package/build/commands/clean.js.map +1 -1
- package/build/commands/dataMcpServer.js +1 -1
- package/build/commands/dataMcpServer.js.map +1 -1
- package/build/commands/env.js +46 -0
- package/build/commands/env.js.map +1 -0
- package/build/commands/feature.js +494 -0
- package/build/commands/feature.js.map +1 -0
- package/build/commands/index.js +1 -0
- package/build/commands/index.js.map +1 -1
- package/build/commands/skillup.js +65 -16
- package/build/commands/skillup.js.map +1 -1
- package/build/commands/start.js +1 -1
- package/build/commands/start.js.map +1 -1
- package/build/commands/status.js +42 -11
- package/build/commands/status.js.map +1 -1
- package/build/commands/update.js +29 -16
- package/build/commands/update.js.map +1 -1
- package/build/commands/updateEnv.js +1 -1
- package/build/commands/updateEnv.js.map +1 -1
- package/build/commands/useEnv.js +1 -1
- package/build/commands/useEnv.js.map +1 -1
- package/build/commands/utils/browserSessionsApi.js +1 -1
- package/build/commands/utils/browserSessionsApi.js.map +1 -1
- package/build/commands/utils/claudeConfig.js +73 -0
- package/build/commands/utils/claudeConfig.js.map +1 -0
- package/build/commands/utils/cliSecret.js +1 -1
- package/build/commands/utils/environment.js +69 -0
- package/build/commands/utils/environment.js.map +1 -0
- package/build/commands/utils/featureApi.js +190 -0
- package/build/commands/utils/featureApi.js.map +1 -0
- package/build/commands/utils/featureReportGenerator.js +170 -0
- package/build/commands/utils/featureReportGenerator.js.map +1 -0
- package/build/commands/utils/keychain.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js +1 -1
- package/build/commands/utils/localAgentInstallationsApi.js.map +1 -1
- package/build/commands/utils/mcpConfig.js +1 -1
- package/build/commands/utils/settings.js +2 -2
- package/build/commands/utils/settings.js.map +1 -1
- package/build/commands/utils/skills.js +1 -1
- package/build/commands/utils/skills.js.map +1 -1
- package/build/commands/verifyFeature.js +451 -0
- package/build/commands/verifyFeature.js.map +1 -0
- package/build/commands/verifyInBrowser.js +1 -1
- package/build/commands/verifyInBrowser.js.map +1 -1
- package/build/skills/feature-tracker/SKILL.md +185 -0
- package/build/skills/feature-tracker/create.md +105 -0
- package/build/skills/feature-tracker/manage.md +145 -0
- package/build/skills/feature-tracker/report.md +159 -0
- package/build/skills/feature-tracker/start.md +93 -0
- package/build/skills/feature-tracker/verify.md +143 -0
- package/package.json +23 -20
- package/build/agents/bug-basher.md +0 -259
- package/build/agents/e2e-test-recommender.md +0 -164
- package/build/agents/quality-advocate.md +0 -164
- package/build/agents/ui-verifier.md +0 -100
- package/build/commands/addApp.js +0 -21
- package/build/commands/initAgents.js +0 -84
- package/build/commands/utils/agents.js +0 -45
- package/build/index.js +0 -436
- package/build/test-auth.js +0 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { readFile, readdir } from 'fs/promises';
|
|
2
|
-
import { join } from 'path';
|
|
2
|
+
import { join, basename } from 'path';
|
|
3
3
|
import { existsSync } from 'fs';
|
|
4
|
+
import inquirer from 'inquirer';
|
|
4
5
|
import { getToken } from './utils/keychain.js';
|
|
5
6
|
import { installSkill } from './utils/skills.js';
|
|
6
7
|
import { loadMcpConfig, saveMcpConfig, hasRangerServer, setRangerServer, } from './utils/mcpConfig.js';
|
|
7
8
|
import { getCurrentVersion } from './utils/version.js';
|
|
9
|
+
import { getClaudeConfigDir, getProjectRoot, loadClaudeSettings, saveClaudeSettings, hasRangerServerInSettings, setRangerServerInSettings, } from './utils/claudeConfig.js';
|
|
8
10
|
/**
|
|
9
11
|
* Get list of available environment names from .ranger directory
|
|
10
12
|
*/
|
|
@@ -22,7 +24,6 @@ async function getAvailableEnvs(rangerDir) {
|
|
|
22
24
|
}
|
|
23
25
|
export async function skillup() {
|
|
24
26
|
console.log('\n🎯 Ranger Skill Setup\n');
|
|
25
|
-
// Check for API token in keychain
|
|
26
27
|
const token = await getToken();
|
|
27
28
|
if (!token) {
|
|
28
29
|
console.log('❌ No Ranger API token found in keychain.\n');
|
|
@@ -33,7 +34,6 @@ export async function skillup() {
|
|
|
33
34
|
return;
|
|
34
35
|
}
|
|
35
36
|
console.log('✓ Found API token in keychain');
|
|
36
|
-
// Check for active environment
|
|
37
37
|
const rangerDir = join(process.cwd(), '.ranger');
|
|
38
38
|
const activeEnvPath = join(rangerDir, 'active-env.txt');
|
|
39
39
|
const hasActiveEnv = existsSync(activeEnvPath);
|
|
@@ -43,35 +43,65 @@ export async function skillup() {
|
|
|
43
43
|
activeEnv = (await readFile(activeEnvPath, 'utf-8')).trim();
|
|
44
44
|
console.log(`✓ Found active environment: ${activeEnv}`);
|
|
45
45
|
}
|
|
46
|
-
catch
|
|
47
|
-
// File exists but couldn't read it
|
|
46
|
+
catch {
|
|
48
47
|
console.warn(' Could not read active environment');
|
|
49
48
|
}
|
|
50
49
|
}
|
|
50
|
+
const projectRoot = getProjectRoot();
|
|
51
|
+
const projectName = basename(projectRoot);
|
|
52
|
+
const { installLevel } = await inquirer.prompt([
|
|
53
|
+
{
|
|
54
|
+
type: 'list',
|
|
55
|
+
name: 'installLevel',
|
|
56
|
+
message: 'Where should skills be installed?',
|
|
57
|
+
choices: [
|
|
58
|
+
{
|
|
59
|
+
name: `All projects (${getClaudeConfigDir()}/skills/)`,
|
|
60
|
+
value: 'user',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: `This project only (${projectName}/.claude/skills/)`,
|
|
64
|
+
value: 'project',
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
},
|
|
68
|
+
]);
|
|
51
69
|
let installedCount = 0;
|
|
52
70
|
const cliVersion = getCurrentVersion();
|
|
53
|
-
// Install e2e-test-recommender (requires API token only)
|
|
54
71
|
console.log('\n📦 Installing skills...\n');
|
|
55
72
|
try {
|
|
56
|
-
const installed = await installSkill('e2e-test-recommender',
|
|
73
|
+
const installed = await installSkill('e2e-test-recommender', {
|
|
74
|
+
level: installLevel,
|
|
75
|
+
cliVersion,
|
|
76
|
+
});
|
|
57
77
|
if (installed) {
|
|
58
78
|
installedCount++;
|
|
59
|
-
|
|
60
|
-
const mcpConfig = await loadMcpConfig();
|
|
61
|
-
if (!hasRangerServer(mcpConfig)) {
|
|
62
|
-
setRangerServer(mcpConfig);
|
|
63
|
-
await saveMcpConfig(mcpConfig);
|
|
64
|
-
console.log(' ✓ Added ranger data-mcp-server to .mcp.json');
|
|
65
|
-
}
|
|
79
|
+
await configureMcpServer(installLevel);
|
|
66
80
|
}
|
|
67
81
|
}
|
|
68
82
|
catch (error) {
|
|
69
83
|
console.warn(' Failed to install e2e-test-recommender skill:', error instanceof Error ? error.message : error);
|
|
70
84
|
}
|
|
85
|
+
// Install feature-tracker (requires API token only)
|
|
86
|
+
try {
|
|
87
|
+
const featureTrackerInstalled = await installSkill('feature-tracker', {
|
|
88
|
+
cliVersion,
|
|
89
|
+
level: installLevel,
|
|
90
|
+
});
|
|
91
|
+
if (featureTrackerInstalled) {
|
|
92
|
+
installedCount++;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
catch (error) {
|
|
96
|
+
console.warn(' Failed to install feature-tracker skill:', error instanceof Error ? error.message : error);
|
|
97
|
+
}
|
|
71
98
|
// Install bug-bash (requires API token AND active environment)
|
|
72
99
|
if (activeEnv) {
|
|
73
100
|
try {
|
|
74
|
-
const installed = await installSkill('bug-bash',
|
|
101
|
+
const installed = await installSkill('bug-bash', {
|
|
102
|
+
level: installLevel,
|
|
103
|
+
cliVersion,
|
|
104
|
+
});
|
|
75
105
|
if (installed) {
|
|
76
106
|
installedCount++;
|
|
77
107
|
}
|
|
@@ -102,7 +132,8 @@ export async function skillup() {
|
|
|
102
132
|
console.log(' 2. Run: ranger skillup\n');
|
|
103
133
|
}
|
|
104
134
|
if (installedCount > 0) {
|
|
105
|
-
|
|
135
|
+
const levelDesc = installLevel === 'user' ? 'user-level' : 'project-level';
|
|
136
|
+
console.log(`\n✅ Installed ${installedCount} ${levelDesc} skill${installedCount > 1 ? 's' : ''} successfully!\n`);
|
|
106
137
|
console.log('To use skills in Claude Code:');
|
|
107
138
|
console.log(' - Type / and select a skill from the menu');
|
|
108
139
|
console.log(' - Or ask Claude to help with testing or bug hunting\n');
|
|
@@ -111,4 +142,22 @@ export async function skillup() {
|
|
|
111
142
|
console.log('\n⚠️ No skills were installed.\n');
|
|
112
143
|
}
|
|
113
144
|
}
|
|
145
|
+
async function configureMcpServer(level) {
|
|
146
|
+
if (level === 'user') {
|
|
147
|
+
const settings = await loadClaudeSettings();
|
|
148
|
+
if (!hasRangerServerInSettings(settings)) {
|
|
149
|
+
setRangerServerInSettings(settings);
|
|
150
|
+
await saveClaudeSettings(settings);
|
|
151
|
+
console.log(` ✓ Added ranger data-mcp-server to ${getClaudeConfigDir()}/settings.json`);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
else {
|
|
155
|
+
const mcpConfig = await loadMcpConfig();
|
|
156
|
+
if (!hasRangerServer(mcpConfig)) {
|
|
157
|
+
setRangerServer(mcpConfig);
|
|
158
|
+
await saveMcpConfig(mcpConfig);
|
|
159
|
+
console.log(' ✓ Added ranger data-mcp-server to .mcp.json');
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
114
163
|
//# sourceMappingURL=skillup.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skillup.js","sourceRoot":"","sources":["../../src/commands/skillup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"skillup.js","sourceRoot":"","sources":["../../src/commands/skillup.ts"],"names":[],"mappings":"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"}
|
package/build/commands/start.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1a37c1,_0x11de78){const _0x3c8194=_0x7622,_0x138de9=_0x1a37c1();while(!![]){try{const _0x816213=parseInt(_0x3c8194(0x108))/0x1*(-parseInt(_0x3c8194(0xcd))/0x2)+parseInt(_0x3c8194(0x100))/0x3*(parseInt(_0x3c8194(0xd4))/0x4)+-parseInt(_0x3c8194(0xf3))/0x5*(parseInt(_0x3c8194(0xf6))/0x6)+parseInt(_0x3c8194(0xe7))/0x7*(-parseInt(_0x3c8194(0xe6))/0x8)+-parseInt(_0x3c8194(0xfd))/0x9+-parseInt(_0x3c8194(0xf5))/0xa*(-parseInt(_0x3c8194(0xcf))/0xb)+parseInt(_0x3c8194(0xdb))/0xc;if(_0x816213===_0x11de78)break;else _0x138de9['push'](_0x138de9['shift']());}catch(_0x45d546){_0x138de9['push'](_0x138de9['shift']());}}}(_0x2ba5,0x46e60));import{mkdir,writeFile}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{createRequire}from'module';import{spawn}from'child_process';import _0x58a208 from'inquirer';import{loadMcpConfig,saveMcpConfig,setRangerServer}from'./utils/mcpConfig.js';import{storeToken,storeServerUrl}from'./utils/keychain.js';import{getMcpServerUrl}from'./utils/environment.js';function _0x2ba5(){const _0x4e78e6=['inherit','rgLfH','error','rUAkB','✓\x20Stored\x20credentials\x20in\x20OS\x20Keychain','log','.gitignore','\x20\x202.\x20Install\x20skills\x20for\x20Claude\x20Code:','vptyK','120584Qhcmbd','175nfwDvm','install','status','✓\x20Created/updated\x20.mcp.json\x20with\x20Ranger\x20MCP\x20proxy','\x20\x201.\x20Add\x20an\x20environment:','KdnWF','playwright/package.json','rWycA','✓\x20Playwright\x20Chromium\x20browser\x20found','Required\x20Playwright\x20Chromium\x20browser\x20is\x20missing.\x20Install\x20it\x20now?','ruoCs','/me','830gXhAni','prompt','10GgKDGw','2532EQOGmI','\x0a🚀\x20Ranger\x20Setup\x0a','Validating\x20API\x20token...','\x0aInstalling\x20Chromium\x20browser...\x0a','.ranger','✓\x20Created\x20.ranger/\x20directory','You\x20can\x20install\x20it\x20manually\x20by\x20running:','2782728eXvIwP','\x20install\x20chromium','XVUto','516741Sbtkgh','MgcNX','GCNfw','CGEQg','NuoFh','xMqKm','version','ZoyZv','226sgFqri','\x0a✓\x20Playwright\x20Chromium\x20installed\x20successfully','qkKTB','enURm','1946GWqiJz','message','2532431YMTMgc','executablePath','\x0a❌\x20Failed\x20to\x20connect\x20to\x20MCP\x20server:','cwd','EAXKi','12pknmDy','eGqjq','✓\x20API\x20token\x20validated\x20successfully','You\x20will\x20need\x20to\x20install\x20it\x20before\x20using\x20Ranger:','exit','YcBAX','Please\x20check\x20your\x20API\x20token\x20and\x20try\x20again.','6232860qPZvxG','UhonH'];_0x2ba5=function(){return _0x4e78e6;};return _0x2ba5();}function _0x7622(_0x4e92eb,_0x781d99){_0x4e92eb=_0x4e92eb-0xcc;const _0x2ba576=_0x2ba5();let _0x7622bc=_0x2ba576[_0x4e92eb];return _0x7622bc;}import{chromium}from'playwright';const require=createRequire(import.meta.url);function getPlaywrightVersion(){const _0x1f439=_0x7622,_0x56581d={'ruoCs':_0x1f439(0xed),'enURm':function(_0x3c6475,_0x10c991){return _0x3c6475(_0x10c991);}};try{const _0x584705=require['resolve'](_0x56581d[_0x1f439(0xf1)]),_0x4e31ef=_0x56581d[_0x1f439(0xcc)](require,_0x584705);return _0x4e31ef[_0x1f439(0x106)];}catch{return null;}}function installChromium(_0x2ecf60){const _0xecf43c={'rgLfH':function(_0x3aaecd,_0x10b3c9){return _0x3aaecd===_0x10b3c9;},'IAsTH':function(_0x1118fc){return _0x1118fc();},'XWeIJ':function(_0x209bd9,_0x3fad40){return _0x209bd9(_0x3fad40);},'UhonH':'chromium','WAkJC':function(_0x2923c0,_0x4ff3ac,_0x886a39,_0x17a198){return _0x2923c0(_0x4ff3ac,_0x886a39,_0x17a198);}};return new Promise((_0x35a538,_0x2d9330)=>{const _0x314c7f=_0x7622,_0x614bdb=_0x2ecf60?['playwright@'+_0x2ecf60,_0x314c7f(0xe8),_0xecf43c['UhonH']]:['playwright','install',_0xecf43c[_0x314c7f(0xdc)]],_0x5c65d7=_0xecf43c['WAkJC'](spawn,'npx',_0x614bdb,{'stdio':_0x314c7f(0xdd),'shell':!![]});_0x5c65d7['on']('close',_0x2f354c=>{const _0x416b55=_0x314c7f;_0xecf43c[_0x416b55(0xde)](_0x2f354c,0x0)?_0xecf43c['IAsTH'](_0x35a538):_0x2d9330(new Error('Installation\x20failed\x20with\x20exit\x20code\x20'+_0x2f354c));}),_0x5c65d7['on'](_0x314c7f(0xdf),_0x4485c4=>{_0xecf43c['XWeIJ'](_0x2d9330,_0x4485c4);});});}export async function start(_0x2a4d57){const _0x2c0744=_0x7622,_0x19422a={'YcBAX':_0x2c0744(0xf7),'CGEQg':function(_0x87cbee,_0x581b91,_0x44e542){return _0x87cbee(_0x581b91,_0x44e542);},'huuEY':_0x2c0744(0xd6),'EAXKi':_0x2c0744(0xd1),'guPmi':function(_0x4dc187,_0x2d024e){return _0x4dc187 instanceof _0x2d024e;},'SAHRV':'Please\x20check\x20your\x20network\x20connection\x20and\x20server\x20URL.','rWycA':function(_0x32563c,_0x297f1b){return _0x32563c(_0x297f1b);},'IgkDN':_0x2c0744(0xe1),'xMqKm':function(_0x231771,_0x382c60,_0x12b174){return _0x231771(_0x382c60,_0x12b174);},'jspwe':function(_0x400288,_0x531da0,_0x3d3e83){return _0x400288(_0x531da0,_0x3d3e83);},'ZoyZv':_0x2c0744(0xfb),'XzLMI':_0x2c0744(0xef),'rUAkB':function(_0x1bc348){return _0x1bc348();},'MgcNX':'install','eGqjq':function(_0x42479a,_0x4d494c){return _0x42479a(_0x4d494c);},'egiDo':'\x0a❌\x20Failed\x20to\x20install\x20Chromium:','HRqJR':'\x20\x20npx\x20playwright\x20install\x20chromium','bPYUa':'\x0a⚠\x20Skipping\x20Chromium\x20installation.','NuoFh':_0x2c0744(0xd7),'BxShj':function(_0x357434,_0xe682c4,_0x4cff1c){return _0x357434(_0xe682c4,_0x4cff1c);},'lTmmR':_0x2c0744(0xe3),'vptyK':function(_0x3fee86,_0x46f525,_0x5f333e){return _0x3fee86(_0x46f525,_0x5f333e);},'wUerY':'✓\x20Created\x20.ranger/.gitignore','GCNfw':'\x0a✅\x20Ranger\x20setup\x20complete!\x0a','KdnWF':_0x2c0744(0xeb),'qkKTB':_0x2c0744(0xe4),'XVUto':'\x20\x20\x20\x20\x20ranger\x20skillup\x0a'};console['log'](_0x19422a[_0x2c0744(0xd9)]);const _0x11d54e=getMcpServerUrl();console['log'](_0x2c0744(0xf8));try{const _0x285510=await _0x19422a[_0x2c0744(0x103)](fetch,_0x11d54e+_0x2c0744(0xf2),{'method':'GET','headers':{'Authorization':'Bearer\x20'+_0x2a4d57}});!_0x285510['ok']&&(console[_0x2c0744(0xdf)]('\x0a❌\x20Authentication\x20failed:\x20'+_0x285510[_0x2c0744(0xe9)]+'\x20'+_0x285510['statusText']),console['error'](_0x2c0744(0xda)),process[_0x2c0744(0xd8)](0x1)),console['log'](_0x19422a['huuEY']);}catch(_0x361c85){console['error'](_0x19422a[_0x2c0744(0xd3)],_0x19422a['guPmi'](_0x361c85,Error)?_0x361c85[_0x2c0744(0xce)]:_0x361c85),console['error'](_0x19422a['SAHRV']),process[_0x2c0744(0xd8)](0x1);}await storeToken(_0x2a4d57),await _0x19422a[_0x2c0744(0xee)](storeServerUrl,_0x11d54e),console['log'](_0x19422a['IgkDN']);const _0x4b86ac=await loadMcpConfig();_0x19422a[_0x2c0744(0xee)](setRangerServer,_0x4b86ac),await saveMcpConfig(_0x4b86ac),console['log'](_0x2c0744(0xea));const _0x2b6eec=_0x19422a[_0x2c0744(0x105)](join,process[_0x2c0744(0xd2)](),_0x2c0744(0xfa));!_0x19422a['rWycA'](existsSync,_0x2b6eec)?(await _0x19422a['jspwe'](mkdir,_0x2b6eec,{'recursive':!![]}),console['log'](_0x19422a[_0x2c0744(0x107)])):console['log']('✓\x20.ranger/\x20directory\x20already\x20exists');let _0x3d923=![];try{const _0x514122=chromium[_0x2c0744(0xd0)]();_0x3d923=existsSync(_0x514122);}catch{_0x3d923=![];}if(_0x3d923)console['log'](_0x19422a['XzLMI']);else{const _0xf41fcc=_0x19422a[_0x2c0744(0xe0)](getPlaywrightVersion),{install:_0x1411df}=await _0x58a208[_0x2c0744(0xf4)]([{'type':'confirm','name':_0x19422a[_0x2c0744(0x101)],'message':_0x2c0744(0xf0),'default':!![]}]);if(_0x1411df){console[_0x2c0744(0xe2)](_0x2c0744(0xf9));try{await _0x19422a[_0x2c0744(0xd5)](installChromium,_0xf41fcc),console['log'](_0x2c0744(0x109));}catch(_0x5824b8){console['error'](_0x19422a['egiDo'],_0x5824b8 instanceof Error?_0x5824b8['message']:_0x5824b8),console[_0x2c0744(0xe2)](_0x2c0744(0xfc)),_0xf41fcc?console['log']('\x20\x20npx\x20playwright@'+_0xf41fcc+_0x2c0744(0xfe)):console[_0x2c0744(0xe2)](_0x19422a['HRqJR']);}}else console['log'](_0x19422a['bPYUa']),console['log'](_0x19422a[_0x2c0744(0x104)]),_0xf41fcc?console[_0x2c0744(0xe2)]('\x20\x20npx\x20playwright@'+_0xf41fcc+'\x20install\x20chromium'):console['log']('\x20\x20npx\x20playwright\x20install\x20chromium');}console[_0x2c0744(0xe2)]('\x0a💡\x20Tip:\x20Run\x20\x22ranger\x20skillup\x22\x20after\x20setup\x20to\x20install\x20the\x20e2e-test-recommender\x20skill');const _0x3b021f=_0x19422a['BxShj'](join,_0x2b6eec,_0x19422a['lTmmR']),_0x46537='\x0a\x0a#\x20Ignore\x20local-only\x20directories\x0alocal/\x0asessions/\x0abug-bashes/\x0a\x0aactive-env.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 _0x19422a[_0x2c0744(0xe5)](writeFile,_0x3b021f,_0x46537),console['log'](_0x19422a['wUerY']),console[_0x2c0744(0xe2)](_0x19422a[_0x2c0744(0x102)]),console[_0x2c0744(0xe2)]('Next\x20steps:'),console['log'](_0x19422a[_0x2c0744(0xec)]),console[_0x2c0744(0xe2)]('\x20\x20\x20\x20\x20ranger\x20add\x20env\x20local'),console['log'](_0x19422a[_0x2c0744(0x10a)]),console[_0x2c0744(0xe2)](_0x19422a[_0x2c0744(0xff)]);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EACH,aAAa,EACb,aAAa,EACb,eAAe,GAClB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
|
package/build/commands/status.js
CHANGED
|
@@ -4,14 +4,12 @@ import { existsSync } from 'fs';
|
|
|
4
4
|
import { getToken } from './utils/keychain.js';
|
|
5
5
|
import { loadMcpConfig, hasRangerServer } from './utils/mcpConfig.js';
|
|
6
6
|
import { getCurrentVersion, getLatestVersion } from './utils/version.js';
|
|
7
|
+
import { getApiBaseUrl, getMcpServerUrl, getCurrentEnvironment, } from './utils/environment.js';
|
|
8
|
+
import { getProjectSkillsDir, getUserSkillsDir, loadClaudeSettings, hasRangerServerInSettings, getSettingsPath, } from './utils/claudeConfig.js';
|
|
7
9
|
// ANSI formatting helpers
|
|
8
10
|
const bold = (text) => `\x1b[1m${text}\x1b[0m`;
|
|
9
11
|
const link = (path, text) => `\x1b]8;;file://${path}\x07${text || path}\x1b]8;;\x07`;
|
|
10
|
-
|
|
11
|
-
* Get installed skills from .claude/skills directory
|
|
12
|
-
*/
|
|
13
|
-
async function getInstalledSkills() {
|
|
14
|
-
const skillsDir = join(process.cwd(), '.claude', 'skills');
|
|
12
|
+
async function getSkillsFromDir(skillsDir, level) {
|
|
15
13
|
if (!existsSync(skillsDir)) {
|
|
16
14
|
return [];
|
|
17
15
|
}
|
|
@@ -37,6 +35,7 @@ async function getInstalledSkills() {
|
|
|
37
35
|
name: entry.name,
|
|
38
36
|
displayName,
|
|
39
37
|
path: skillPath,
|
|
38
|
+
level,
|
|
40
39
|
});
|
|
41
40
|
}
|
|
42
41
|
}
|
|
@@ -47,6 +46,13 @@ async function getInstalledSkills() {
|
|
|
47
46
|
}
|
|
48
47
|
return skills;
|
|
49
48
|
}
|
|
49
|
+
async function getInstalledSkills() {
|
|
50
|
+
const [projectSkills, userSkills] = await Promise.all([
|
|
51
|
+
getSkillsFromDir(getProjectSkillsDir(), 'project'),
|
|
52
|
+
getSkillsFromDir(getUserSkillsDir(), 'user'),
|
|
53
|
+
]);
|
|
54
|
+
return { project: projectSkills, user: userSkills };
|
|
55
|
+
}
|
|
50
56
|
/**
|
|
51
57
|
* Get environment information from .ranger directory
|
|
52
58
|
*/
|
|
@@ -132,25 +138,50 @@ export async function status() {
|
|
|
132
138
|
console.log(`API Token: ✗ Not found`);
|
|
133
139
|
console.log(` Run: ranger start <token>`);
|
|
134
140
|
}
|
|
135
|
-
//
|
|
141
|
+
// Debug info (only shown if DEBUG env var is set)
|
|
142
|
+
if (process.env.DEBUG) {
|
|
143
|
+
console.log(`Environment: ${getCurrentEnvironment()}`);
|
|
144
|
+
console.log(`API URL: ${getApiBaseUrl()}`);
|
|
145
|
+
console.log(`MCP Server URL: ${getMcpServerUrl()}`);
|
|
146
|
+
}
|
|
147
|
+
// MCP Server Config
|
|
136
148
|
const mcpConfig = await loadMcpConfig();
|
|
137
|
-
|
|
149
|
+
const claudeSettings = await loadClaudeSettings();
|
|
150
|
+
const hasProjectMcp = hasRangerServer(mcpConfig);
|
|
151
|
+
const hasUserMcp = hasRangerServerInSettings(claudeSettings);
|
|
152
|
+
if (hasProjectMcp && hasUserMcp) {
|
|
153
|
+
console.log(`MCP Server: ✓ Configured (project + user)`);
|
|
154
|
+
}
|
|
155
|
+
else if (hasProjectMcp) {
|
|
138
156
|
console.log(`MCP Server: ✓ Configured in .mcp.json`);
|
|
139
157
|
}
|
|
158
|
+
else if (hasUserMcp) {
|
|
159
|
+
console.log(`MCP Server: ✓ Configured in ${getSettingsPath()}`);
|
|
160
|
+
}
|
|
140
161
|
else {
|
|
141
162
|
console.log(`MCP Server: ✗ Not configured`);
|
|
142
163
|
console.log(` Run: ranger start <token> or ranger skillup`);
|
|
143
164
|
}
|
|
144
165
|
// Skills
|
|
145
166
|
console.log('\n--- Skills ---');
|
|
146
|
-
const
|
|
147
|
-
|
|
167
|
+
const { project: projectSkills, user: userSkills } = await getInstalledSkills();
|
|
168
|
+
const totalSkills = projectSkills.length + userSkills.length;
|
|
169
|
+
if (totalSkills === 0) {
|
|
148
170
|
console.log('No skills installed');
|
|
149
171
|
console.log(` Run: ranger skillup`);
|
|
150
172
|
}
|
|
151
173
|
else {
|
|
152
|
-
|
|
153
|
-
console.log(
|
|
174
|
+
if (projectSkills.length > 0) {
|
|
175
|
+
console.log(' Project-level:');
|
|
176
|
+
for (const skill of projectSkills) {
|
|
177
|
+
console.log(` ${bold(skill.displayName)}: ${link(skill.path, basename(skill.path))}`);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
if (userSkills.length > 0) {
|
|
181
|
+
console.log(' User-level:');
|
|
182
|
+
for (const skill of userSkills) {
|
|
183
|
+
console.log(` ${bold(skill.displayName)}: ${link(skill.path, basename(skill.path))}`);
|
|
184
|
+
}
|
|
154
185
|
}
|
|
155
186
|
}
|
|
156
187
|
// Environments
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
|
package/build/commands/update.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { spawn } from 'child_process';
|
|
2
2
|
import { readdirSync, existsSync } from 'fs';
|
|
3
|
-
import { join } from 'path';
|
|
4
3
|
import { installSkill } from './utils/skills.js';
|
|
5
4
|
import { PACKAGE_NAME, getCurrentVersion, getLatestVersion, compareVersions, } from './utils/version.js';
|
|
5
|
+
import { getProjectSkillsDir, getUserSkillsDir, } from './utils/claudeConfig.js';
|
|
6
6
|
async function runInstall() {
|
|
7
7
|
return new Promise((resolve) => {
|
|
8
8
|
console.log(`\nInstalling ${PACKAGE_NAME}@latest...\n`);
|
|
@@ -18,11 +18,7 @@ async function runInstall() {
|
|
|
18
18
|
});
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
* Get list of installed skills in .claude/skills directory
|
|
23
|
-
*/
|
|
24
|
-
function getInstalledSkills() {
|
|
25
|
-
const skillsDir = join(process.cwd(), '.claude', 'skills');
|
|
21
|
+
function getSkillsFromDir(skillsDir) {
|
|
26
22
|
if (!existsSync(skillsDir)) {
|
|
27
23
|
return [];
|
|
28
24
|
}
|
|
@@ -32,28 +28,45 @@ function getInstalledSkills() {
|
|
|
32
28
|
.filter((entry) => entry.isDirectory())
|
|
33
29
|
.map((entry) => entry.name);
|
|
34
30
|
}
|
|
35
|
-
catch
|
|
36
|
-
console.warn('Failed to read .claude/skills directory:', error);
|
|
31
|
+
catch {
|
|
37
32
|
return [];
|
|
38
33
|
}
|
|
39
34
|
}
|
|
40
35
|
/**
|
|
41
|
-
*
|
|
42
|
-
|
|
36
|
+
* Get list of installed skills from both project and user directories
|
|
37
|
+
*/
|
|
38
|
+
function getInstalledSkills() {
|
|
39
|
+
return {
|
|
40
|
+
project: getSkillsFromDir(getProjectSkillsDir()),
|
|
41
|
+
user: getSkillsFromDir(getUserSkillsDir()),
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Reinstall all skills found in project and user skill directories.
|
|
46
|
+
* This ensures skill content is always up to date, even if CLI version hasn't changed.
|
|
43
47
|
*/
|
|
44
48
|
async function reinstallSkills(cliVersion) {
|
|
45
|
-
const
|
|
46
|
-
|
|
49
|
+
const { project: projectSkills, user: userSkills } = getInstalledSkills();
|
|
50
|
+
const totalCount = projectSkills.length + userSkills.length;
|
|
51
|
+
if (totalCount === 0) {
|
|
47
52
|
console.log('\nNo skills found to reinstall.');
|
|
48
53
|
return;
|
|
49
54
|
}
|
|
50
|
-
console.log(`\nReinstalling ${
|
|
51
|
-
for (const skillName of
|
|
55
|
+
console.log(`\nReinstalling ${totalCount} skill(s) to ensure content is up to date...`);
|
|
56
|
+
for (const skillName of projectSkills) {
|
|
57
|
+
try {
|
|
58
|
+
await installSkill(skillName, { level: 'project', cliVersion });
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
console.warn(` Failed to reinstall project skill ${skillName}:`, error);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
for (const skillName of userSkills) {
|
|
52
65
|
try {
|
|
53
|
-
await installSkill(skillName, cliVersion);
|
|
66
|
+
await installSkill(skillName, { level: 'user', cliVersion });
|
|
54
67
|
}
|
|
55
68
|
catch (error) {
|
|
56
|
-
console.warn(` Failed to reinstall ${skillName}:`, error);
|
|
69
|
+
console.warn(` Failed to reinstall user skill ${skillName}:`, error);
|
|
57
70
|
}
|
|
58
71
|
}
|
|
59
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1e29c0,_0x59ff8f){const _0x4dc0b2=_0x8e08,_0x131bcc=_0x1e29c0();while(!![]){try{const _0x38d1a2=-parseInt(_0x4dc0b2(0x1de))/0x1*(-parseInt(_0x4dc0b2(0x200))/0x2)+-parseInt(_0x4dc0b2(0x1d8))/0x3*(-parseInt(_0x4dc0b2(0x1ec))/0x4)+parseInt(_0x4dc0b2(0x1ea))/0x5+parseInt(_0x4dc0b2(0x1f1))/0x6+-parseInt(_0x4dc0b2(0x1f9))/0x7+parseInt(_0x4dc0b2(0x1ef))/0x8+-parseInt(_0x4dc0b2(0x1fc))/0x9;if(_0x38d1a2===_0x59ff8f)break;else _0x131bcc['push'](_0x131bcc['shift']());}catch(_0x3c4c47){_0x131bcc['push'](_0x131bcc['shift']());}}}(_0x1456,0x283d9));function _0x1456(){const _0x15a705=['Update\x20encrypted\x20auth\x20state?\x20(auth.json.enc\x20exists)','GLIyi','✓\x20Encrypted\x20auth\x20saved\x20to:\x20','launch','shouldEncrypt','newPage','goto','vcQIs','settings.json','\x0a✅\x20Environment\x20\x22','1106840hyZIbK','contextOptions','32OWudLZ','confirm','✓\x20Updated\x20config:\x20','1591808EEDxUP','\x20\x20\x20Update\x20your\x20authentication\x20as\x20needed.','1403340Xalifx','cwd','storageState','error','\x20\x20Could\x20not\x20encrypt:\x20No\x20API\x20token\x20found\x20in\x20keychain\x20or\x20RANGER_API_TOKEN\x20env\x20var','utf-8','\x20\x20\x20Run\x20first:\x20ranger\x20add\x20env\x20','✓\x20Auth\x20state\x20saved\x20to:\x20','1965894uexKeM','\x0aConfig\x20not\x20found\x20at\x20','exit','4587660PzbucB','\x0a📋\x20Authentication\x20Update','\x20\x20\x20A\x20browser\x20will\x20open\x20with\x20your\x20existing\x20session\x20(if\x20any).','newContext','118tmyLsF','log','yRsai','17736rgrvvG','wwzfy','\x22\x20not\x20found.','aEvzl','\x22\x20authentication\x20updated','mmTeO','4303xJvLdD','qspKL'];_0x1456=function(){return _0x15a705;};return _0x1456();}import{writeFile,readFile,unlink}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import{chromium}from'playwright';import _0x313e73 from'inquirer';import{encrypt}from'./utils/crypto.js';function _0x8e08(_0x5cad86,_0x4683d2){_0x5cad86=_0x5cad86-0x1d8;const _0x145689=_0x1456();let _0x8e08b=_0x145689[_0x5cad86];return _0x8e08b;}import{getToken}from'./utils/keychain.js';export async function updateEnv(_0x454a71){const _0x126061=_0x8e08,_0x408f94={'voUGc':function(_0x3036e6){return _0x3036e6();},'Tcpmt':'close','oyYXs':'.ranger','GLIyi':function(_0x412a86,_0x48de5b,_0x22d1ff){return _0x412a86(_0x48de5b,_0x22d1ff);},'wwzfy':'.enc','aEvzl':_0x126061(0x1ed),'vcQIs':_0x126061(0x1e4),'udwLd':_0x126061(0x1e0),'VIcMW':'Encrypt\x20auth\x20state?\x20(Recommended\x20for\x20CI\x20-\x20allows\x20committing\x20to\x20git)','mmTeO':_0x126061(0x1fe),'RsEND':'\x20\x20\x20When\x20you\x20are\x20done,\x20close\x20the\x20browser.\x0a','qspKL':'about:blank','dynWV':function(_0x5bb070,_0x5b95a1,_0x153c45){return _0x5bb070(_0x5b95a1,_0x153c45);},'yRsai':function(_0x275925){return _0x275925();}},_0x55140d=join(process[_0x126061(0x1f2)](),_0x408f94['oyYXs'],_0x454a71),_0x588bcc=_0x408f94['GLIyi'](join,_0x55140d,_0x126061(0x1e8)),_0x189613=_0x408f94[_0x126061(0x1e1)](join,_0x55140d,'auth.json'),_0x187c35=_0x189613+_0x408f94[_0x126061(0x1d9)];!existsSync(_0x55140d)&&(console[_0x126061(0x1f4)]('\x0aEnvironment\x20\x22'+_0x454a71+_0x126061(0x1da)),console['error'](_0x126061(0x1f7)+_0x454a71),process[_0x126061(0x1fb)](0x1));!existsSync(_0x588bcc)&&(console[_0x126061(0x1f4)](_0x126061(0x1fa)+_0x588bcc),console['error']('\x20\x20\x20Run\x20first:\x20ranger\x20add\x20env\x20'+_0x454a71),process['exit'](0x1));const _0x57b7f3=await readFile(_0x588bcc,_0x126061(0x1f6)),_0x32bcba=JSON['parse'](_0x57b7f3),_0x572695=existsSync(_0x189613),_0xfa4220=existsSync(_0x187c35),{shouldEncrypt:_0x373d7d}=await _0x313e73['prompt']([{'type':_0x408f94[_0x126061(0x1db)],'name':_0x408f94[_0x126061(0x1e7)],'message':_0xfa4220?_0x408f94['udwLd']:_0x408f94['VIcMW'],'default':_0xfa4220}]);console[_0x126061(0x201)](_0x126061(0x1fd)),console['log'](_0x408f94[_0x126061(0x1dd)]),console[_0x126061(0x201)](_0x126061(0x1f0)),console[_0x126061(0x201)](_0x408f94['RsEND']);const _0x360fca=await chromium[_0x126061(0x1e3)]({'headless':![]}),_0xd0725f=_0x572695?{'storageState':_0x189613}:{},_0x5cc39e=await _0x360fca[_0x126061(0x1ff)](_0xd0725f),_0x46307a=await _0x5cc39e[_0x126061(0x1e5)]();await _0x46307a[_0x126061(0x1e6)](_0x408f94[_0x126061(0x1df)]),await new Promise(_0x3dbe94=>{_0x46307a['on'](_0x408f94['Tcpmt'],async()=>{const _0x3380be=_0x8e08;try{console['log']('Saving\x20authentication\x20state...'),await _0x5cc39e[_0x3380be(0x1f3)]({'path':_0x189613}),_0x3dbe94();}catch{_0x408f94['voUGc'](_0x3dbe94);}});}),await _0x360fca['close']();if(_0x373d7d){const _0x220b20=await _0x408f94['dynWV'](readFile,_0x189613,'utf-8'),_0x11781e=process['env']['RANGER_API_TOKEN']||await _0x408f94[_0x126061(0x202)](getToken);if(!_0x11781e)console['error'](_0x126061(0x1f5)),console['log'](_0x126061(0x1f8)+_0x189613);else{const _0x5be054=encrypt(_0x220b20,_0x11781e);await writeFile(_0x187c35,_0x5be054),await unlink(_0x189613),console[_0x126061(0x201)](_0x126061(0x1e2)+_0x187c35),console[_0x126061(0x201)]('\x20\x20You\x20can\x20safely\x20commit\x20this\x20file\x20to\x20git.'),console['log']('\x20\x20Set\x20RANGER_API_TOKEN\x20in\x20CI\x20to\x20decrypt\x20at\x20runtime.');}}else console['log'](_0x126061(0x1f8)+_0x189613);_0x32bcba['browser']=_0x32bcba['browser']||{},_0x32bcba['browser']['contextOptions']=_0x32bcba['browser']['contextOptions']||{},_0x32bcba['browser'][_0x126061(0x1eb)]['storageState']=_0x189613,await _0x408f94['dynWV'](writeFile,_0x588bcc,JSON['stringify'](_0x32bcba,null,0x2)),console[_0x126061(0x201)](_0x126061(0x1ee)+_0x588bcc),console['log'](_0x126061(0x1e9)+_0x454a71+_0x126061(0x1dc));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateEnv.js","sourceRoot":"","sources":["../../src/commands/updateEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAAe;IAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"updateEnv.js","sourceRoot":"","sources":["../../src/commands/updateEnv.ts"],"names":[],"mappings":"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"}
|
package/build/commands/useEnv.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1bb4f8,_0x3360c7){const _0x42e8cd=_0x47b5,_0x2ddd57=_0x1bb4f8();while(!![]){try{const _0x2cc04c=parseInt(_0x42e8cd(0x19c))/0x1+parseInt(_0x42e8cd(0x19e))/0x2+-parseInt(_0x42e8cd(0x1a0))/0x3+parseInt(_0x42e8cd(0x197))/0x4*(parseInt(_0x42e8cd(0x195))/0x5)+parseInt(_0x42e8cd(0x1a5))/0x6*(-parseInt(_0x42e8cd(0x19d))/0x7)+parseInt(_0x42e8cd(0x19a))/0x8*(-parseInt(_0x42e8cd(0x1a6))/0x9)+parseInt(_0x42e8cd(0x1a4))/0xa;if(_0x2cc04c===_0x3360c7)break;else _0x2ddd57['push'](_0x2ddd57['shift']());}catch(_0x416705){_0x2ddd57['push'](_0x2ddd57['shift']());}}}(_0x3f3c,0xe82ad));import{writeFile}from'fs/promises';import{join}from'path';function _0x47b5(_0x6cbd3d,_0x192608){_0x6cbd3d=_0x6cbd3d-0x195;const _0x3f3c88=_0x3f3c();let _0x47b5b2=_0x3f3c88[_0x6cbd3d];return _0x47b5b2;}import{existsSync}from'fs';export async function useEnv(_0x558dd2){const _0x188bc0=_0x47b5,_0x5cc948={'tZWCj':function(_0x256a5f,_0x4c3770,_0x230c0e){return _0x256a5f(_0x4c3770,_0x230c0e);},'dydcZ':_0x188bc0(0x196),'ZRpPD':'active-env.txt'},_0x1c6acf=join(process['cwd'](),_0x188bc0(0x196),_0x558dd2),_0xcf70e5=_0x5cc948['tZWCj'](join,_0x1c6acf,'settings.json');!existsSync(_0x1c6acf)&&(console[_0x188bc0(0x1a3)]('\x0a❌\x20Environment\x20\x22'+_0x558dd2+'\x22\x20not\x20found.'),console['error']('\x20\x20\x20Run\x20first:\x20ranger\x20add\x20env\x20'+_0x558dd2),process[_0x188bc0(0x1a1)](0x1));!existsSync(_0xcf70e5)&&(console[_0x188bc0(0x1a3)](_0x188bc0(0x199)+_0xcf70e5),console['error'](_0x188bc0(0x19f)+_0x558dd2),process['exit'](0x1));const _0x3a12f5=join(process['cwd'](),_0x5cc948[_0x188bc0(0x198)],_0x5cc948[_0x188bc0(0x1a2)]);await writeFile(_0x3a12f5,_0x558dd2),console[_0x188bc0(0x19b)]('\x0a✓\x20Now\x20using\x20environment\x20\x22'+_0x558dd2+'\x22');}function _0x3f3c(){const _0x12fd31=['log','987246lJCrfD','1254442mfQCbj','1710846KLXvSJ','\x20\x20\x20Run\x20first:\x20ranger\x20add\x20env\x20','5373702kBDsUt','exit','ZRpPD','error','15964660VxnLLq','30RFwOVy','18GuerXW','22720dFEgMX','.ranger','668qcYwrz','dydcZ','\x0a❌\x20Config\x20not\x20found\x20at\x20','2239048oXPyUV'];_0x3f3c=function(){return _0x12fd31;};return _0x3f3c();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useEnv.js","sourceRoot":"","sources":["../../src/commands/useEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAe;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"useEnv.js","sourceRoot":"","sources":["../../src/commands/useEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAEhC,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAe;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEjD,mBAAmB;IACnB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,cAAc,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,sBAAsB;IACtB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,KAAK,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,KAAK,CAAC,gCAAgC,OAAO,EAAE,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,iDAAiD;IACjD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;IACvE,MAAM,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IAExC,OAAO,CAAC,GAAG,CAAC,8BAA8B,OAAO,GAAG,CAAC,CAAC;AAC1D,CAAC"}
|