@ranger-testing/ranger-cli 1.0.10 → 1.0.13

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.
Files changed (66) hide show
  1. package/README.md +111 -0
  2. package/build/cli.js +290 -8
  3. package/build/cli.js.map +1 -1
  4. package/build/commands/addEnv.js +1 -1
  5. package/build/commands/addEnv.js.map +1 -1
  6. package/build/commands/clean.js +1 -1
  7. package/build/commands/clean.js.map +1 -1
  8. package/build/commands/dataMcpServer.js +1 -1
  9. package/build/commands/dataMcpServer.js.map +1 -1
  10. package/build/commands/env.js +46 -0
  11. package/build/commands/env.js.map +1 -0
  12. package/build/commands/feature.js +494 -0
  13. package/build/commands/feature.js.map +1 -0
  14. package/build/commands/index.js +1 -0
  15. package/build/commands/index.js.map +1 -1
  16. package/build/commands/skillup.js +68 -16
  17. package/build/commands/skillup.js.map +1 -1
  18. package/build/commands/start.js +1 -1
  19. package/build/commands/start.js.map +1 -1
  20. package/build/commands/status.js +42 -11
  21. package/build/commands/status.js.map +1 -1
  22. package/build/commands/update.js +29 -16
  23. package/build/commands/update.js.map +1 -1
  24. package/build/commands/updateEnv.js +1 -1
  25. package/build/commands/updateEnv.js.map +1 -1
  26. package/build/commands/useEnv.js +1 -1
  27. package/build/commands/useEnv.js.map +1 -1
  28. package/build/commands/utils/browserSessionsApi.js +1 -1
  29. package/build/commands/utils/browserSessionsApi.js.map +1 -1
  30. package/build/commands/utils/claudeConfig.js +73 -0
  31. package/build/commands/utils/claudeConfig.js.map +1 -0
  32. package/build/commands/utils/cliSecret.js +1 -1
  33. package/build/commands/utils/environment.js +69 -0
  34. package/build/commands/utils/environment.js.map +1 -0
  35. package/build/commands/utils/featureApi.js +190 -0
  36. package/build/commands/utils/featureApi.js.map +1 -0
  37. package/build/commands/utils/featureReportGenerator.js +170 -0
  38. package/build/commands/utils/featureReportGenerator.js.map +1 -0
  39. package/build/commands/utils/keychain.js +1 -1
  40. package/build/commands/utils/localAgentInstallationsApi.js +1 -1
  41. package/build/commands/utils/localAgentInstallationsApi.js.map +1 -1
  42. package/build/commands/utils/mcpConfig.js +1 -1
  43. package/build/commands/utils/settings.js +2 -2
  44. package/build/commands/utils/settings.js.map +1 -1
  45. package/build/commands/utils/skills.js +1 -1
  46. package/build/commands/utils/skills.js.map +1 -1
  47. package/build/commands/verifyFeature.js +451 -0
  48. package/build/commands/verifyFeature.js.map +1 -0
  49. package/build/commands/verifyInBrowser.js +1 -1
  50. package/build/commands/verifyInBrowser.js.map +1 -1
  51. package/build/skills/feature-tracker/SKILL.md +185 -0
  52. package/build/skills/feature-tracker/create.md +105 -0
  53. package/build/skills/feature-tracker/manage.md +145 -0
  54. package/build/skills/feature-tracker/report.md +159 -0
  55. package/build/skills/feature-tracker/start.md +93 -0
  56. package/build/skills/feature-tracker/verify.md +143 -0
  57. package/package.json +23 -20
  58. package/build/agents/bug-basher.md +0 -259
  59. package/build/agents/e2e-test-recommender.md +0 -164
  60. package/build/agents/quality-advocate.md +0 -164
  61. package/build/agents/ui-verifier.md +0 -100
  62. package/build/commands/addApp.js +0 -21
  63. package/build/commands/initAgents.js +0 -84
  64. package/build/commands/utils/agents.js +0 -45
  65. package/build/index.js +0 -436
  66. package/build/test-auth.js +0 -13
package/README.md CHANGED
@@ -166,6 +166,117 @@ ranger verify-in-browser \
166
166
  --task "Enter valid credentials and verify successful login"
167
167
  ```
168
168
 
169
+ ### Feature Tracking Commands
170
+
171
+ Track feature development progress with verifiable checklist items. Each item can be verified in the browser with evidence (screenshots, traces, conversation logs).
172
+
173
+ #### `ranger feature create <name>`
174
+
175
+ Create a new feature with a checklist. Automatically captures git context (repo URL, branch).
176
+
177
+ ```bash
178
+ ranger feature create "User Authentication" \
179
+ --description "Login, signup, and password reset flows" \
180
+ --checklist "Login works,Signup creates account,Password reset sends email"
181
+ ```
182
+
183
+ #### `ranger feature list`
184
+
185
+ List all features with status.
186
+
187
+ ```bash
188
+ ranger feature list # All features
189
+ ranger feature list --status in_progress
190
+ ranger feature list --current-branch # Features for current git branch
191
+ ```
192
+
193
+ #### `ranger feature show [id]`
194
+
195
+ Show feature details. Uses active feature if no ID provided.
196
+
197
+ ```bash
198
+ ranger feature show
199
+ ranger feature show feat_abc123
200
+ ```
201
+
202
+ #### `ranger feature use <id>`
203
+
204
+ Set the active feature.
205
+
206
+ ```bash
207
+ ranger feature use feat_abc123
208
+ ```
209
+
210
+ #### `ranger feature resume`
211
+
212
+ Find and use a feature matching the current git context (repo + branch).
213
+
214
+ ```bash
215
+ ranger feature resume
216
+ ```
217
+
218
+ #### `ranger feature block [id]`
219
+
220
+ Mark a feature as blocked.
221
+
222
+ ```bash
223
+ ranger feature block --reason "Waiting for API changes"
224
+ ```
225
+
226
+ #### `ranger feature manage`
227
+
228
+ Manage checklist items. Can be used interactively (for humans) or with flags (for agents/automation).
229
+
230
+ **Interactive mode** (no flags):
231
+ ```bash
232
+ ranger feature manage
233
+ # Shows menu to add, edit, block, cancel, or reset items
234
+ ```
235
+
236
+ **Non-interactive mode** (with flags - agent-friendly):
237
+ ```bash
238
+ # Add a new checklist item
239
+ ranger feature manage --add "New checklist item description"
240
+
241
+ # Edit an item's description (1-based index)
242
+ ranger feature manage --edit 1 --description "Updated description"
243
+
244
+ # Block an item with reason
245
+ ranger feature manage --block 2 --reason "Bug found in login flow"
246
+
247
+ # Cancel an item with reason
248
+ ranger feature manage --cancel 3 --reason "Descoped to v2"
249
+
250
+ # Reset an item to pending
251
+ ranger feature manage --reset 2
252
+ ```
253
+
254
+ #### `ranger feature report [id]`
255
+
256
+ Generate a markdown report with all verification evidence.
257
+
258
+ ```bash
259
+ ranger feature report # Uses active feature
260
+ ranger feature report feat_abc123
261
+ ranger feature report --output ./my-report.md
262
+ ```
263
+
264
+ ### `ranger verify-feature`
265
+
266
+ Verify a checklist item in the browser. Requires an active feature.
267
+
268
+ ```bash
269
+ ranger verify-feature \
270
+ --url "http://localhost:3000/login" \
271
+ --task "Log in with valid credentials and verify redirect to dashboard"
272
+ ```
273
+
274
+ Options:
275
+ - `--url` (required): URL to navigate to
276
+ - `--task`: Task description (defaults to checklist item description)
277
+ - `--item <index>`: Verify specific item by index (1-based)
278
+ - `--new-item <description>`: Create and verify a new item
279
+
169
280
  ### `ranger clean`
170
281
 
171
282
  Remove all Ranger artifacts from the project (`.ranger/`, `.mcp.json` entries).
package/build/cli.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
  import yargs from 'yargs/yargs';
3
- import { addEnv, clean, start, useEnv, updateEnv, update, skillup, } from './commands/index.js';
3
+ import { addEnv, clean, start, useEnv, updateEnv, update, skillup, envList, } from './commands/index.js';
4
4
  import { authEncrypt } from './commands/authEncrypt.js';
5
5
  import { status } from './commands/status.js';
6
6
  import { configSet, configGet, configList, configUnset, } from './commands/config.js';
@@ -145,24 +145,43 @@ Examples:
145
145
  Examples:
146
146
  ranger auth encrypt local # Encrypts .ranger/local/auth.json -> auth.json.enc
147
147
  ranger auth encrypt ci # Encrypts .ranger/ci/auth.json -> auth.json.enc`);
148
+ })
149
+ .command('env', 'Manage environments', (yargs) => {
150
+ return yargs
151
+ .command('ls', 'List all environments', () => { }, async () => {
152
+ await envList();
153
+ })
154
+ .demandCommand(1, 'You must specify an env subcommand')
155
+ .epilogue(`Commands:
156
+ ls List all environments
157
+
158
+ Examples:
159
+ ranger env ls # List all environments`);
148
160
  })
149
161
  .command('data-mcp-server', 'Run MCP proxy server (reads credentials from OS Keychain)', async () => {
150
162
  await dataMcpServer();
151
163
  })
152
164
  .command('verify-in-browser', 'Verify a UI flow in the browser (isolated Claude Code session)', (yargs) => {
153
165
  return yargs
154
- .option('url', {
155
- type: 'string',
156
- description: 'URL to navigate to',
157
- demandOption: true,
158
- })
159
166
  .option('task', {
160
167
  type: 'string',
161
168
  description: 'Description of UI flow to verify',
162
169
  demandOption: true,
170
+ })
171
+ .option('env', {
172
+ type: 'string',
173
+ description: 'Environment to use (defaults to active environment)',
174
+ })
175
+ .option('headed', {
176
+ type: 'boolean',
177
+ description: 'Run browser in headed mode (default: headless)',
178
+ default: false,
163
179
  });
164
180
  }, async (argv) => {
165
- const result = await verifyInBrowser(argv.url, argv.task);
181
+ const result = await verifyInBrowser(argv.task, {
182
+ env: argv.env,
183
+ headed: argv.headed,
184
+ });
166
185
  console.log('\n' + '='.repeat(60));
167
186
  console.log(result.success ? ' VERIFIED' : ' ISSUES FOUND');
168
187
  console.log('='.repeat(60));
@@ -184,7 +203,7 @@ Examples:
184
203
  const markdownReport = generateMarkdownReport({
185
204
  sessionId: result.sessionId,
186
205
  task: result.task || argv.task,
187
- url: result.url || argv.url,
206
+ url: result.url || '',
188
207
  success: result.success,
189
208
  summary: result.summary,
190
209
  issues: result.issues?.filter((issue) => issue.severity !== 'MINOR'),
@@ -208,6 +227,269 @@ Examples:
208
227
  .command('update', 'Update Ranger CLI to the latest version', () => { }, async () => {
209
228
  await update();
210
229
  })
230
+ // .command('feature', 'Manage feature tracking', (yargs) => {
231
+ // return yargs
232
+ // .command(
233
+ // 'create <name>',
234
+ // 'Create a new feature with checklist',
235
+ // (yargs) => {
236
+ // return yargs
237
+ // .positional('name', {
238
+ // type: 'string',
239
+ // description: 'Feature name',
240
+ // demandOption: true,
241
+ // })
242
+ // .option('description', {
243
+ // type: 'string',
244
+ // alias: 'd',
245
+ // description: 'Feature description',
246
+ // })
247
+ // .option('checklist', {
248
+ // type: 'string',
249
+ // alias: 'c',
250
+ // description:
251
+ // 'Comma-separated list of checklist items',
252
+ // });
253
+ // },
254
+ // async (argv) => {
255
+ // await featureCreate(argv.name as string, {
256
+ // description: argv.description as string | undefined,
257
+ // checklist: argv.checklist as string | undefined,
258
+ // });
259
+ // },
260
+ // )
261
+ // .command(
262
+ // 'list',
263
+ // 'List all features',
264
+ // (yargs) => {
265
+ // return yargs
266
+ // .option('status', {
267
+ // type: 'string',
268
+ // description:
269
+ // 'Filter by status (in_progress, completed, blocked)',
270
+ // })
271
+ // .option('current-branch', {
272
+ // type: 'boolean',
273
+ // description:
274
+ // 'Filter to features for current git branch',
275
+ // });
276
+ // },
277
+ // async (argv) => {
278
+ // await featureList({
279
+ // status: argv.status as string | undefined,
280
+ // currentBranch: argv['current-branch'] as
281
+ // | boolean
282
+ // | undefined,
283
+ // });
284
+ // },
285
+ // )
286
+ // .command(
287
+ // 'show [id]',
288
+ // 'Show feature details (uses active feature if no id)',
289
+ // (yargs) => {
290
+ // return yargs.positional('id', {
291
+ // type: 'string',
292
+ // description: 'Feature ID',
293
+ // });
294
+ // },
295
+ // async (argv) => {
296
+ // await featureShow(argv.id as string | undefined);
297
+ // },
298
+ // )
299
+ // .command(
300
+ // 'use <id>',
301
+ // 'Set active feature',
302
+ // (yargs) => {
303
+ // return yargs.positional('id', {
304
+ // type: 'string',
305
+ // description: 'Feature ID',
306
+ // demandOption: true,
307
+ // });
308
+ // },
309
+ // async (argv) => {
310
+ // await featureUse(argv.id as string);
311
+ // },
312
+ // )
313
+ // .command(
314
+ // 'resume',
315
+ // 'Find and use feature matching current git context',
316
+ // () => {},
317
+ // async () => {
318
+ // await featureResume();
319
+ // },
320
+ // )
321
+ // .command(
322
+ // 'block [id]',
323
+ // 'Mark feature as blocked',
324
+ // (yargs) => {
325
+ // return yargs
326
+ // .positional('id', {
327
+ // type: 'string',
328
+ // description:
329
+ // 'Feature ID (uses active feature if not provided)',
330
+ // })
331
+ // .option('reason', {
332
+ // type: 'string',
333
+ // alias: 'r',
334
+ // description: 'Blocking reason',
335
+ // demandOption: true,
336
+ // });
337
+ // },
338
+ // async (argv) => {
339
+ // await featureBlock(argv.id as string | undefined, {
340
+ // reason: argv.reason as string,
341
+ // });
342
+ // },
343
+ // )
344
+ // .command(
345
+ // 'manage',
346
+ // 'Manage checklist items (interactive or with flags)',
347
+ // (yargs) => {
348
+ // return yargs
349
+ // .option('add', {
350
+ // type: 'string',
351
+ // description:
352
+ // 'Add a new checklist item with this description',
353
+ // })
354
+ // .option('edit', {
355
+ // type: 'number',
356
+ // description: 'Edit item at this index (1-based)',
357
+ // })
358
+ // .option('description', {
359
+ // type: 'string',
360
+ // description: 'New description (used with --edit)',
361
+ // })
362
+ // .option('block', {
363
+ // type: 'number',
364
+ // description: 'Block item at this index (1-based)',
365
+ // })
366
+ // .option('cancel', {
367
+ // type: 'number',
368
+ // description: 'Cancel item at this index (1-based)',
369
+ // })
370
+ // .option('reset', {
371
+ // type: 'number',
372
+ // description:
373
+ // 'Reset item at this index to pending (1-based)',
374
+ // })
375
+ // .option('reason', {
376
+ // type: 'string',
377
+ // description:
378
+ // 'Reason (used with --block or --cancel)',
379
+ // });
380
+ // },
381
+ // async (argv) => {
382
+ // await featureManage({
383
+ // add: argv.add as string | undefined,
384
+ // edit: argv.edit as number | undefined,
385
+ // description: argv.description as string | undefined,
386
+ // block: argv.block as number | undefined,
387
+ // cancel: argv.cancel as number | undefined,
388
+ // reset: argv.reset as number | undefined,
389
+ // reason: argv.reason as string | undefined,
390
+ // });
391
+ // },
392
+ // )
393
+ // .command(
394
+ // 'report [id]',
395
+ // 'Generate feature report',
396
+ // (yargs) => {
397
+ // return yargs
398
+ // .positional('id', {
399
+ // type: 'string',
400
+ // description:
401
+ // 'Feature ID (uses active feature if not provided)',
402
+ // })
403
+ // .option('output', {
404
+ // type: 'string',
405
+ // alias: 'o',
406
+ // description: 'Output file path',
407
+ // });
408
+ // },
409
+ // async (argv) => {
410
+ // await featureReport(argv.id as string | undefined, {
411
+ // output: argv.output as string | undefined,
412
+ // });
413
+ // },
414
+ // )
415
+ // .demandCommand(1, 'You must specify a feature subcommand')
416
+ // .epilogue(
417
+ // `Commands:
418
+ // create <name> Create a new feature with checklist
419
+ // list List all features
420
+ // show [id] Show feature details
421
+ // use <id> Set active feature
422
+ // resume Find and use feature matching current git context
423
+ // block [id] Mark feature as blocked
424
+ // manage Manage checklist items (interactive)
425
+ // report [id] Generate feature report
426
+ // Examples:
427
+ // ranger feature create "User auth" --checklist "Login works,Signup works"
428
+ // ranger feature list --current-branch
429
+ // ranger feature show
430
+ // ranger feature resume
431
+ // ranger feature manage`,
432
+ // );
433
+ // })
434
+ // .command(
435
+ // 'verify-feature',
436
+ // 'Verify a checklist item in the browser (requires active feature)',
437
+ // (yargs) => {
438
+ // return yargs
439
+ // .option('url', {
440
+ // type: 'string',
441
+ // description: 'URL to navigate to',
442
+ // demandOption: true,
443
+ // })
444
+ // .option('task', {
445
+ // type: 'string',
446
+ // description:
447
+ // 'Task description (defaults to checklist item description)',
448
+ // })
449
+ // .option('item', {
450
+ // type: 'number',
451
+ // description: 'Checklist item index (1-based)',
452
+ // })
453
+ // .option('new-item', {
454
+ // type: 'string',
455
+ // description:
456
+ // 'Create and verify a new checklist item with this description',
457
+ // });
458
+ // },
459
+ // async (argv) => {
460
+ // const result = await verifyFeature(argv.url as string, {
461
+ // task: argv.task as string | undefined,
462
+ // item: argv.item as number | undefined,
463
+ // newItem: argv['new-item'] as string | undefined,
464
+ // });
465
+ // console.log('\n' + '='.repeat(60));
466
+ // console.log(
467
+ // result.evaluation === 'verified'
468
+ // ? ' VERIFIED'
469
+ // : result.evaluation === 'partial'
470
+ // ? ' PARTIAL'
471
+ // : result.evaluation === 'blocked'
472
+ // ? ' BLOCKED'
473
+ // : ' FAILED',
474
+ // );
475
+ // console.log('='.repeat(60));
476
+ // console.log(`Summary: ${result.summary}`);
477
+ // console.log(`Evaluation: ${result.evaluation}`);
478
+ // console.log(`Reason: ${result.evaluationReason}`);
479
+ // if (result.issues?.length) {
480
+ // console.log('\nIssues:');
481
+ // result.issues.forEach((issue, i) => {
482
+ // console.log(
483
+ // `\n${i + 1}. [${issue.severity}] ${issue.description}`,
484
+ // );
485
+ // });
486
+ // }
487
+ // if (result.traceViewerUrl) {
488
+ // console.log(`\nFull Trace: ${result.traceViewerUrl}`);
489
+ // }
490
+ // process.exit(result.evaluation === 'verified' ? 0 : 1);
491
+ // },
492
+ // )
211
493
  .demandCommand(1, 'You must specify a command')
212
494
  .strictCommands()
213
495
  .fail((msg, err, yargs) => {
package/build/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EACH,MAAM,EACN,KAAK,EACL,KAAK,EACL,MAAM,EACN,SAAS,EACT,MAAM,EACN,OAAO,GACV,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EACH,SAAS,EACT,SAAS,EACT,UAAU,EACV,WAAW,GACd,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EACH,sBAAsB,EACtB,kBAAkB,GAErB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,MAAM,CAAC,MAAM,EAAE,CAAC;AAEhB,kBAAkB;AAClB,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACvB,OAAO,CAAC,OAAO,CAAC;KAChB,OAAO,CACJ,oBAAoB,EACpB,+BAA+B,EAC/B,CAAC,KAAK,EAAE,EAAE;IACN,OAAO,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE;QAChC,IAAI,EAAE,QAAQ;QACd,WAAW,EACP,sDAAsD;QAC1D,YAAY,EAAE,IAAI;KACrB,CAAC,CAAC;AACP,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAW,CAAC,CAAC;AAC7C,CAAC,CACJ;KACA,OAAO,CACJ,gBAAgB,EAChB,wCAAwC,EACxC,CAAC,KAAK,EAAE,EAAE;IACN,OAAO,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE;QAChC,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,yBAAyB;QACtC,YAAY,EAAE,IAAI;KACrB,CAAC,CAAC;AACP,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,MAAM,CAAC,IAAI,CAAC,UAAU,CAAW,CAAC,CAAC;AAC7C,CAAC,CACJ;KACA,OAAO,CACJ,uBAAuB,EACvB,mDAAmD,EACnD,CAAC,KAAK,EAAE,EAAE;IACN,OAAO,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE;QAChC,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,mCAAmC;QAChD,YAAY,EAAE,IAAI;KACrB,CAAC,CAAC;AACP,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAW,CAAC,CAAC;AAChD,CAAC,CACJ;KACA,OAAO,CACJ,eAAe,EACf,mCAAmC,EACnC,CAAC,KAAK,EAAE,EAAE;IACN,OAAO,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE;QAC7B,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kCAAkC;QAC/C,YAAY,EAAE,IAAI;KACrB,CAAC,CAAC;AACP,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,KAAK,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;AACtC,CAAC,CACJ;KACA,OAAO,CACJ,SAAS,EACT,uCAAuC,EACvC,GAAG,EAAE,GAAE,CAAC,EACR,KAAK,IAAI,EAAE;IACP,MAAM,OAAO,EAAE,CAAC;AACpB,CAAC,CACJ;KACA,OAAO,CACJ,OAAO,EACP,8CAA8C,EAC9C,KAAK,IAAI,EAAE;IACP,MAAM,KAAK,EAAE,CAAC;AAClB,CAAC,CACJ;KACA,OAAO,CAAC,QAAQ,EAAE,kCAAkC,EAAE,CAAC,KAAK,EAAE,EAAE;IAC7D,OAAO,KAAK;SACP,OAAO,CACJ,yBAAyB,EACzB,oBAAoB,EACpB,CAAC,KAAK,EAAE,EAAE;QACN,OAAO,KAAK;aACP,UAAU,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;YAC/B,YAAY,EAAE,IAAI;SACrB,CAAC;aACD,UAAU,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EACP,+CAA+C;YACnD,YAAY,EAAE,IAAI;SACrB,CAAC;aACD,UAAU,CAAC,OAAO,EAAE;YACjB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,cAAc;YAC3B,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;IACX,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACX,MAAM,SAAS,CACX,IAAI,CAAC,GAAa,EAClB,IAAI,CAAC,GAAa,EAClB,IAAI,CAAC,KAAe,CACvB,CAAC;IACN,CAAC,CACJ;SACA,OAAO,CACJ,iBAAiB,EACjB,oBAAoB,EACpB,CAAC,KAAK,EAAE,EAAE;QACN,OAAO,KAAK;aACP,UAAU,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;YAC/B,YAAY,EAAE,IAAI;SACrB,CAAC;aACD,UAAU,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,YAAY;YACzB,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;IACX,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACX,MAAM,SAAS,CAAC,IAAI,CAAC,GAAa,EAAE,IAAI,CAAC,GAAa,CAAC,CAAC;IAC5D,CAAC,CACJ;SACA,OAAO,CACJ,YAAY,EACZ,oCAAoC,EACpC,CAAC,KAAK,EAAE,EAAE;QACN,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE;YAC3B,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;YAC/B,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;IACP,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACX,MAAM,UAAU,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC;IACzC,CAAC,CACJ;SACA,OAAO,CACJ,mBAAmB,EACnB,uBAAuB,EACvB,CAAC,KAAK,EAAE,EAAE;QACN,OAAO,KAAK;aACP,UAAU,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;YAC/B,YAAY,EAAE,IAAI;SACrB,CAAC;aACD,UAAU,CAAC,KAAK,EAAE;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,sBAAsB;YACnC,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;IACX,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACX,MAAM,WAAW,CAAC,IAAI,CAAC,GAAa,EAAE,IAAI,CAAC,GAAa,CAAC,CAAC;IAC9D,CAAC,CACJ;SACA,aAAa,CAAC,CAAC,EAAE,sCAAsC,CAAC;SACxD,QAAQ,CACL;;;;;;;;;6DAS6C,CAChD,CAAC;AACV,CAAC,CAAC;KACD,OAAO,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,KAAK,EAAE,EAAE;IAChD,OAAO,KAAK;SACP,OAAO,CACJ,eAAe,EACf,iEAAiE,EACjE,CAAC,KAAK,EAAE,EAAE;QACN,OAAO,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE;YAC3B,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kBAAkB;YAC/B,YAAY,EAAE,IAAI;SACrB,CAAC,CAAC;IACP,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;QACX,MAAM,WAAW,CAAC,IAAI,CAAC,GAAa,CAAC,CAAC;IAC1C,CAAC,CACJ;SACA,aAAa,CAAC,CAAC,EAAE,qCAAqC,CAAC;SACvD,QAAQ,CACL;;;;;iFAKiE,CACpE,CAAC;AACV,CAAC,CAAC;KACD,OAAO,CACJ,iBAAiB,EACjB,2DAA2D,EAC3D,KAAK,IAAI,EAAE;IACP,MAAM,aAAa,EAAE,CAAC;AAC1B,CAAC,CACJ;KACA,OAAO,CACJ,mBAAmB,EACnB,gEAAgE,EAChE,CAAC,KAAK,EAAE,EAAE;IACN,OAAO,KAAK;SACP,MAAM,CAAC,KAAK,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,oBAAoB;QACjC,YAAY,EAAE,IAAI;KACrB,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,kCAAkC;QAC/C,YAAY,EAAE,IAAI;KACrB,CAAC,CAAC;AACX,CAAC,EACD,KAAK,EAAE,IAAI,EAAE,EAAE;IACX,MAAM,MAAM,GAAG,MAAM,eAAe,CAChC,IAAI,CAAC,GAAa,EAClB,IAAI,CAAC,IAAc,CACtB,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAC5D,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5B,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YAC/B,OAAO,CAAC,GAAG,CACP,KAAK,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,WAAW,EAAE,CACzD,CAAC;YACF,IAAI,KAAK,CAAC,UAAU;gBAChB,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACP,CAAC;IAED,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,sDAAsD;IACtD,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACxC,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,kBAAkB,CAC5C,MAAM,CAAC,UAAU,CACpB,CAAC;QACF,MAAM,cAAc,GAAG,sBAAsB,CAAC;YAC1C,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,IAAI,EAAE,MAAM,CAAC,IAAI,IAAK,IAAI,CAAC,IAAe;YAC1C,GAAG,EAAE,MAAM,CAAC,GAAG,IAAK,IAAI,CAAC,GAAc;YACvC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CACzB,CAAC,KAAK,EAA8B,EAAE,CAClC,KAAK,CAAC,QAAQ,KAAK,OAAO,CACjC;YACD,WAAW;YACX,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,CAAC;YAClC,cAAc,EAAE,MAAM,CAAC,cAAc;SACxC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5B,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAChC,CAAC;IAED,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACzC,CAAC,CACJ;KACA,OAAO,CACJ,QAAQ,EACR,oDAAoD,EACpD,GAAG,EAAE,GAAE,CAAC,EACR,KAAK,IAAI,EAAE;IACP,MAAM,MAAM,EAAE,CAAC;AACnB,CAAC,CACJ;KACA,OAAO,CACJ,QAAQ,EACR,yCAAyC,EACzC,GAAG,EAAE,GAAE,CAAC,EACR,KAAK,IAAI,EAAE;IACP,MAAM,MAAM,EAAE,CAAC;AACnB,CAAC,CACJ;KACA,aAAa,CAAC,CAAC,EAAE,4BAA4B,CAAC;KAC9C,cAAc,EAAE;KAChB,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE;IACtB,IAAI,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,CAAC,KAAK,CAAC,sBAAsB,OAAO,EAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;IACtE,CAAC;SAAM,IAAI,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC;IAChC,CAAC;SAAM,IAAI,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC;KACD,IAAI,EAAE;KACN,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC;KAClB,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- (function(_0x4f5a2e,_0x3458a4){const _0x16e6fb=_0x24bb,_0x4e6810=_0x4f5a2e();while(!![]){try{const _0x1f74c5=-parseInt(_0x16e6fb(0x214))/0x1+-parseInt(_0x16e6fb(0x1f6))/0x2+parseInt(_0x16e6fb(0x212))/0x3*(-parseInt(_0x16e6fb(0x204))/0x4)+-parseInt(_0x16e6fb(0x213))/0x5+-parseInt(_0x16e6fb(0x217))/0x6*(-parseInt(_0x16e6fb(0x1ee))/0x7)+parseInt(_0x16e6fb(0x1fc))/0x8+parseInt(_0x16e6fb(0x210))/0x9;if(_0x1f74c5===_0x3458a4)break;else _0x4e6810['push'](_0x4e6810['shift']());}catch(_0xc465b7){_0x4e6810['push'](_0x4e6810['shift']());}}}(_0x351a,0xcb1e1));import{mkdir,writeFile,readFile,unlink}from'fs/promises';function _0x351a(){const _0x438199=['605165mmcqnu','exit','GHloY','6VqkOCK','AHXUD','\x20\x20\x20When\x20you\x20are\x20done\x20logging\x20in,\x20close\x20the\x20browser.\x0a','utf-8','10105781reQmfs','.ranger','cwd','.enc','\x20\x20Could\x20not\x20encrypt:\x20No\x20API\x20token\x20found\x20in\x20keychain\x20or\x20RANGER_API_TOKEN\x20env\x20var','overwrite','auth.json','✓\x20Created\x20settings:\x20','380290kUkLrt','AExVO','Encrypt\x20auth\x20state?\x20(Recommended\x20for\x20CI\x20-\x20allows\x20committing\x20to\x20git)','XOVOe','\x20\x20\x20To\x20initialize,\x20run:\x20ranger\x20start\x20<token>','env','2334576CdFqub','RANGER_API_TOKEN','error','✓\x20Auth\x20state\x20saved\x20to:\x20','confirm','Manually\x20authenticate\x20into\x20your\x20app\x20to\x20save\x20session?','\x20\x20\x20\x20\x20ranger\x20skillup','lwYgB','4wreCel','EkdVY','mtYmU','newPage','Environment\x20\x22','loNDG','active-env.txt','Umgsh','\x0a📋\x20Authentication\x20Setup','log','shouldEncrypt','prompt','9163665jqlLJV','close','907422hmYeuC','4119685GxnGoZ'];_0x351a=function(){return _0x438199;};return _0x351a();}import{join}from'path';import{existsSync}from'fs';import _0x28e6c8 from'inquirer';import{chromium}from'playwright';function _0x24bb(_0x809347,_0x17ad0b){_0x809347=_0x809347-0x1ec;const _0x351ab3=_0x351a();let _0x24bbe2=_0x351ab3[_0x809347];return _0x24bbe2;}import{hasRangerServer,loadMcpConfig}from'./utils/mcpConfig.js';import{saveSettings}from'./utils/settings.js';import{encrypt}from'./utils/crypto.js';import{getToken}from'./utils/keychain.js';export async function addEnv(_0x5c0082){const _0xd6724b=_0x24bb,_0x2e838a={'xthyw':'close','XOVOe':function(_0x5affcc,_0x46f7c0,_0x493607,_0x10004b){return _0x5affcc(_0x46f7c0,_0x493607,_0x10004b);},'mciib':_0xd6724b(0x1ef),'FPyVF':'confirm','Umgsh':function(_0x47fc67,_0x269563,_0x1cc02a){return _0x47fc67(_0x269563,_0x1cc02a);},'loNDG':'\x20\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20to\x20your\x20application.','EkdVY':_0xd6724b(0x1ec),'KGBSs':'about:blank','eWlrI':function(_0x1f2abd,_0x56ca41,_0x8aee81){return _0x1f2abd(_0x56ca41,_0x8aee81);},'AHXUD':_0xd6724b(0x1ed),'lwYgB':function(_0x1a7bd0){return _0x1a7bd0();},'nPKlj':function(_0x3af0b,_0x3adae8){return _0x3af0b+_0x3adae8;},'AExVO':_0xd6724b(0x1f1),'JZbVw':function(_0x1940d5,_0x3880a7){return _0x1940d5(_0x3880a7);},'alBIa':'settings.json','UeOJJ':function(_0x584a8c){return _0x584a8c();},'mtYmU':'\x0a\x20\x20Install\x20skills\x20for\x20Claude\x20Code:'},_0x1632cf=_0x2e838a[_0xd6724b(0x1f9)](join,process[_0xd6724b(0x1f0)](),_0x2e838a['mciib'],_0x5c0082);if(existsSync(_0x1632cf)){const {overwrite:_0x47392d}=await _0x28e6c8[_0xd6724b(0x20f)]([{'type':'confirm','name':_0xd6724b(0x1f3),'message':_0xd6724b(0x208)+_0x5c0082+'\x22\x20already\x20exists.\x20Overwrite?','default':![]}]);if(!_0x47392d){console[_0xd6724b(0x20d)]('Aborted.');return;}}const {requiresAuth:_0x2449a7}=await _0x28e6c8[_0xd6724b(0x20f)]([{'type':_0x2e838a['FPyVF'],'name':'requiresAuth','message':_0xd6724b(0x201),'default':![]}]);await _0x2e838a[_0xd6724b(0x20b)](mkdir,_0x1632cf,{'recursive':!![]});const _0x47eda8=join(_0x1632cf,_0xd6724b(0x1f4));if(_0x2449a7){const {shouldEncrypt:_0x78509a}=await _0x28e6c8[_0xd6724b(0x20f)]([{'type':_0xd6724b(0x200),'name':_0xd6724b(0x20e),'message':_0xd6724b(0x1f8),'default':![]}]);console['log'](_0xd6724b(0x20c)),console['log'](_0x2e838a[_0xd6724b(0x209)]),console['log'](_0x2e838a[_0xd6724b(0x205)]);const _0x554380=await chromium['launch']({'headless':![]}),_0x46cb4c=await _0x554380['newContext'](),_0x2a717d=await _0x46cb4c[_0xd6724b(0x207)]();await _0x2a717d['goto'](_0x2e838a['KGBSs']),await new Promise(_0x335795=>{const _0x1f3062={'GHloY':function(_0x1820f6){return _0x1820f6();}};_0x2a717d['on'](_0x2e838a['xthyw'],async()=>{const _0x46e362=_0x24bb;try{console['log']('Saving\x20authentication\x20state...'),await _0x46cb4c['storageState']({'path':_0x47eda8});}catch{}_0x1f3062[_0x46e362(0x216)](_0x335795);});}),await _0x554380[_0xd6724b(0x211)]();if(_0x78509a){const _0x29abef=await _0x2e838a['eWlrI'](readFile,_0x47eda8,_0x2e838a[_0xd6724b(0x218)]),_0x87dd2b=process[_0xd6724b(0x1fb)][_0xd6724b(0x1fd)]||await _0x2e838a[_0xd6724b(0x203)](getToken);if(!_0x87dd2b)console['error'](_0xd6724b(0x1f2)),console['log']('✓\x20Auth\x20state\x20saved\x20to:\x20'+_0x47eda8);else{const _0xaf2078=encrypt(_0x29abef,_0x87dd2b);await _0x2e838a[_0xd6724b(0x20b)](writeFile,_0x2e838a['nPKlj'](_0x47eda8,_0x2e838a[_0xd6724b(0x1f7)]),_0xaf2078),await _0x2e838a['JZbVw'](unlink,_0x47eda8),console[_0xd6724b(0x20d)]('✓\x20Encrypted\x20auth\x20saved\x20to:\x20'+_0x47eda8+'.enc'),console['log']('\x20\x20You\x20can\x20safely\x20commit\x20this\x20file\x20to\x20git.'),console[_0xd6724b(0x20d)]('\x20\x20Set\x20RANGER_API_TOKEN\x20in\x20CI\x20to\x20decrypt\x20at\x20runtime.');}}else console[_0xd6724b(0x20d)](_0xd6724b(0x1ff)+_0x47eda8);}await saveSettings(_0x5c0082,{}),console['log'](_0xd6724b(0x1f5)+join(_0x1632cf,_0x2e838a['alBIa']));const _0xaf174f=await _0x2e838a['UeOJJ'](loadMcpConfig);!hasRangerServer(_0xaf174f)&&(console['error']('\x0aRanger\x20Tests\x20MCP\x20is\x20not\x20initialized.'),console[_0xd6724b(0x1fe)](_0xd6724b(0x1fa)),process[_0xd6724b(0x215)](0x1));const _0x5cae57=_0x2e838a[_0xd6724b(0x1f9)](join,process[_0xd6724b(0x1f0)](),'.ranger',_0xd6724b(0x20a));await writeFile(_0x5cae57,_0x5c0082),console['log']('\x20\x20Set\x20active\x20environment:\x20'+_0x5c0082),console['log']('\x0a💡\x20Tip:\x20Run\x20\x22ranger\x20skillup\x22\x20to\x20install\x20the\x20bug-bash\x20skill\x20for\x20this\x20environment'),console[_0xd6724b(0x20d)]('\x0a\x20\x20Environment\x20\x22'+_0x5c0082+'\x22\x20configured'),console['log'](_0x2e838a[_0xd6724b(0x206)]),console['log'](_0xd6724b(0x202));}
1
+ (function(_0x5cd54a,_0x3a75bb){const _0x1ad4ac=_0x31a4,_0x780259=_0x5cd54a();while(!![]){try{const _0x319bf1=-parseInt(_0x1ad4ac(0x1f7))/0x1*(parseInt(_0x1ad4ac(0x1fd))/0x2)+parseInt(_0x1ad4ac(0x20a))/0x3+-parseInt(_0x1ad4ac(0x1f3))/0x4*(-parseInt(_0x1ad4ac(0x1fa))/0x5)+parseInt(_0x1ad4ac(0x1eb))/0x6+-parseInt(_0x1ad4ac(0x1e7))/0x7*(-parseInt(_0x1ad4ac(0x1e6))/0x8)+parseInt(_0x1ad4ac(0x1f0))/0x9*(parseInt(_0x1ad4ac(0x1fe))/0xa)+-parseInt(_0x1ad4ac(0x1ec))/0xb;if(_0x319bf1===_0x3a75bb)break;else _0x780259['push'](_0x780259['shift']());}catch(_0xbd7340){_0x780259['push'](_0x780259['shift']());}}}(_0x5879,0x3e6b7));import{mkdir,writeFile,readFile,unlink}from'fs/promises';import{join}from'path';import{existsSync}from'fs';import _0x24da9b from'inquirer';import{chromium}from'playwright';import{hasRangerServer,loadMcpConfig}from'./utils/mcpConfig.js';function _0x31a4(_0x43f4ae,_0x39d098){_0x43f4ae=_0x43f4ae-0x1df;const _0x58798d=_0x5879();let _0x31a492=_0x58798d[_0x43f4ae];return _0x31a492;}import{saveSettings}from'./utils/settings.js';import{encrypt}from'./utils/crypto.js';import{getToken}from'./utils/keychain.js';export async function addEnv(_0x1b12eb){const _0x38734c=_0x31a4,_0x3f7265={'LzEmU':_0x38734c(0x202),'IFauy':function(_0x2383e9,_0x44529a,_0x1d0f21,_0x173c62){return _0x2383e9(_0x44529a,_0x1d0f21,_0x173c62);},'YlFfQ':'.ranger','SOWBg':function(_0xa9d523,_0x1910b2){return _0xa9d523(_0x1910b2);},'eezYu':'confirm','fBQSk':'Aborted.','xEEgB':'input','esBhW':_0x38734c(0x1e5),'PCmTh':_0x38734c(0x206),'YcBjD':function(_0x2a253d,_0x5d063f,_0x4d18f1){return _0x2a253d(_0x5d063f,_0x4d18f1);},'bbjRx':_0x38734c(0x1f9),'NVrjF':'shouldEncrypt','sXKSA':'Encrypt\x20auth\x20state?\x20(Recommended\x20for\x20CI\x20-\x20allows\x20committing\x20to\x20git)','pPTMw':function(_0x44dcdf,_0x1b1d9d){return _0x44dcdf||_0x1b1d9d;},'tkFbH':'about:blank','wQDli':_0x38734c(0x1f2),'ZNROb':function(_0x57e6e7,_0x86aa83,_0x506fa4){return _0x57e6e7(_0x86aa83,_0x506fa4);},'gLSbI':function(_0x240990){return _0x240990();},'BZbFk':'\x20\x20Could\x20not\x20encrypt:\x20No\x20API\x20token\x20found\x20in\x20keychain\x20or\x20RANGER_API_TOKEN\x20env\x20var','QEEHo':function(_0x578f9f){return _0x578f9f();},'DnsLw':function(_0x89ede5,_0x18c1a5){return _0x89ede5(_0x18c1a5);},'xIlus':'\x20\x20\x20To\x20initialize,\x20run:\x20ranger\x20start\x20<token>','Yjrcn':function(_0x399566,_0x1fa835,_0x11c2cb){return _0x399566(_0x1fa835,_0x11c2cb);}},_0x417925=_0x3f7265[_0x38734c(0x208)](join,process['cwd'](),_0x3f7265['YlFfQ'],_0x1b12eb);if(_0x3f7265[_0x38734c(0x207)](existsSync,_0x417925)){const {overwrite:_0x587905}=await _0x24da9b[_0x38734c(0x200)]([{'type':_0x3f7265['eezYu'],'name':'overwrite','message':'Environment\x20\x22'+_0x1b12eb+'\x22\x20already\x20exists.\x20Overwrite?','default':![]}]);if(!_0x587905){console['log'](_0x3f7265['fBQSk']);return;}}const {baseUrl:_0x178742}=await _0x24da9b[_0x38734c(0x200)]([{'type':_0x3f7265['xEEgB'],'name':_0x38734c(0x20b),'message':_0x38734c(0x205)}]),{requiresAuth:_0x3fbbb2}=await _0x24da9b[_0x38734c(0x200)]([{'type':_0x3f7265[_0x38734c(0x1f1)],'name':_0x3f7265[_0x38734c(0x1fb)],'message':_0x3f7265['PCmTh'],'default':!![]}]);await _0x3f7265['YcBjD'](mkdir,_0x417925,{'recursive':!![]});const _0x22f7ed=_0x3f7265[_0x38734c(0x1fc)](join,_0x417925,_0x3f7265['bbjRx']);let _0x582edd;if(_0x3fbbb2){const {shouldEncrypt:_0x3e31e1}=await _0x24da9b['prompt']([{'type':_0x38734c(0x1e2),'name':_0x3f7265[_0x38734c(0x209)],'message':_0x3f7265[_0x38734c(0x1ee)],'default':![]}]);console['log'](_0x38734c(0x1f4)),console['log'](_0x38734c(0x1ef)),console[_0x38734c(0x201)](_0x38734c(0x1ff)),await new Promise(_0x2c6b81=>setTimeout(_0x2c6b81,0xbb8));const _0x27b6a6=await chromium['launch']({'headless':![]}),_0x3ca7bb=await _0x27b6a6['newContext'](),_0x17593a=await _0x3ca7bb[_0x38734c(0x1f5)]();await _0x17593a['goto'](_0x3f7265['pPTMw'](_0x178742,_0x3f7265[_0x38734c(0x1ea)])),await new Promise(_0x35f846=>{_0x17593a['on'](_0x3f7265['LzEmU'],async()=>{const _0xe90d9a=_0x31a4;try{console[_0xe90d9a(0x201)]('Saving\x20authentication\x20state...'),await _0x3ca7bb['storageState']({'path':_0x22f7ed});}catch{}_0x35f846();});}),await _0x27b6a6['close']();const _0x50a9a1=await _0x24da9b[_0x38734c(0x200)]([{'type':_0x3f7265[_0x38734c(0x20c)],'name':_0x3f7265['wQDli'],'message':_0x38734c(0x1e0)}]);_0x582edd=_0x50a9a1['environmentDetails'];if(_0x3e31e1){const _0x507576=await _0x3f7265['ZNROb'](readFile,_0x22f7ed,'utf-8'),_0x249813=process['env'][_0x38734c(0x1f6)]||await _0x3f7265['gLSbI'](getToken);if(!_0x249813)console['error'](_0x3f7265[_0x38734c(0x1ed)]),console[_0x38734c(0x201)]('✓\x20Auth\x20state\x20saved\x20to:\x20'+_0x22f7ed);else{const _0x2611d4=encrypt(_0x507576,_0x249813);await writeFile(_0x22f7ed+'.enc',_0x2611d4),await unlink(_0x22f7ed),console[_0x38734c(0x201)]('✓\x20Encrypted\x20auth\x20saved\x20to:\x20'+_0x22f7ed+_0x38734c(0x1e4)),console[_0x38734c(0x201)]('\x20\x20You\x20can\x20safely\x20commit\x20this\x20file\x20to\x20git.'),console['log'](_0x38734c(0x1e8));}}else console[_0x38734c(0x201)]('✓\x20Auth\x20state\x20saved\x20to:\x20'+_0x22f7ed);}const _0x5af42a={};_0x178742&&(_0x5af42a[_0x38734c(0x20b)]=_0x178742);_0x3fbbb2&&_0x582edd&&(_0x5af42a[_0x38734c(0x1f2)]=_0x582edd);await _0x3f7265['ZNROb'](saveSettings,_0x1b12eb,_0x5af42a),console[_0x38734c(0x201)](_0x38734c(0x1e1)+join(_0x417925,'settings.json'));const _0x173444=await _0x3f7265['QEEHo'](loadMcpConfig);!_0x3f7265[_0x38734c(0x203)](hasRangerServer,_0x173444)&&(console[_0x38734c(0x1f8)](_0x38734c(0x1e3)),console['error'](_0x3f7265['xIlus']),process[_0x38734c(0x1e9)](0x1));const _0x54dbb6=join(process[_0x38734c(0x1df)](),'.ranger','active-env.txt');await _0x3f7265['Yjrcn'](writeFile,_0x54dbb6,_0x1b12eb),console[_0x38734c(0x201)](_0x38734c(0x204)+_0x1b12eb),console[_0x38734c(0x201)]('\x0a💡\x20Tip:\x20Run\x20\x22ranger\x20skillup\x22\x20to\x20install\x20the\x20bug-bash\x20skill\x20for\x20this\x20environment'),console[_0x38734c(0x201)]('\x0a\x20\x20Environment\x20\x22'+_0x1b12eb+'\x22\x20configured'),console['log']('\x0a\x20\x20Install\x20skills\x20for\x20Claude\x20Code:'),console[_0x38734c(0x201)]('\x20\x20\x20\x20\x20ranger\x20skillup');}function _0x5879(){const _0x4b6be0=['1813268lcbHic','\x0a📋\x20Authentication\x20Setup','newPage','RANGER_API_TOKEN','35XIXNcV','error','auth.json','5fquwOo','esBhW','YcBjD','5088pBpdXG','3694010wVDXYu','\x20\x20\x20When\x20you\x20are\x20done\x20logging\x20in,\x20close\x20the\x20browser\x20to\x20save\x20the\x20session.\x0a','prompt','log','close','DnsLw','\x20\x20Set\x20active\x20environment:\x20','What\x20is\x20the\x20URL\x20to\x20this\x20environment?\x20(e.g.\x20http://localhost:3000)','Manually\x20authenticate\x20into\x20your\x20app\x20to\x20save\x20session?','SOWBg','IFauy','NVrjF','80088zPoOKT','baseUrl','xEEgB','cwd','What\x20is\x20this\x20environment\x20for?\x20(e.g.\x20this\x20is\x20our\x20internal\x20tools\x20app)','✓\x20Created\x20settings:\x20','confirm','\x0aRanger\x20Tests\x20MCP\x20is\x20not\x20initialized.','.enc','requiresAuth','1997384ahwCyO','7SNSpZD','\x20\x20Set\x20RANGER_API_TOKEN\x20in\x20CI\x20to\x20decrypt\x20at\x20runtime.','exit','tkFbH','2231352FMvbmq','12388948UKZYfD','BZbFk','sXKSA','\x20\x20\x20A\x20browser\x20will\x20open.\x20Please\x20log\x20in\x20to\x20the\x20environment\x20you\x20want\x20to\x20test\x20so\x20Ranger\x20can\x20access\x20it.','9zEQLdH','eezYu','environmentDetails'];_0x5879=function(){return _0x4b6be0;};return _0x5879();}
@@ -1 +1 @@
1
- {"version":3,"file":"addEnv.js","sourceRoot":"","sources":["../../src/commands/addEnv.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"addEnv.js","sourceRoot":"","sources":["../../src/commands/addEnv.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,QAAQ,MAAM,UAAU,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACtE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAe;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAEvD,8BAA8B;IAC9B,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACrB,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACxC;gBACI,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,WAAW;gBACjB,OAAO,EAAE,gBAAgB,OAAO,8BAA8B;gBAC9D,OAAO,EAAE,KAAK;aACjB;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxB,OAAO;QACX,CAAC;IACL,CAAC;IAED,sBAAsB;IACtB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QACtC;YACI,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,SAAS;YACf,OAAO,EACH,mEAAmE;SAC1E;KACJ,CAAC,CAAC;IAEH,8BAA8B;IAC9B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;QAC3C;YACI,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,sDAAsD;YAC/D,OAAO,EAAE,IAAI;SAChB;KACJ,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3C,IAAI,kBAAsC,CAAC;IAE3C,IAAI,YAAY,EAAE,CAAC;QACf,wDAAwD;QACxD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC5C;gBACI,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,eAAe;gBACrB,OAAO,EACH,qEAAqE;gBACzE,OAAO,EAAE,KAAK;aACjB;SACJ,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CACP,oGAAoG,CACvG,CAAC;QACF,OAAO,CAAC,GAAG,CACP,2EAA2E,CAC9E,CAAC;QAEF,mDAAmD;QACnD,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAE1D,4BAA4B;QAC5B,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,aAAa,CAAC,CAAC;QAE1C,wCAAwC;QACxC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAChC,oEAAoE;YACpE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;gBACxB,IAAI,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;oBAC9C,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACL,gCAAgC;gBACpC,CAAC;gBACD,OAAO,EAAE,CAAC;YACd,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAEtB,sDAAsD;QACtD,MAAM,kBAAkB,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YAC7C;gBACI,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,oBAAoB;gBAC1B,OAAO,EACH,qEAAqE;aAC5E;SACJ,CAAC,CAAC;QACH,kBAAkB,GAAG,kBAAkB,CAAC,kBAAkB,CAAC;QAE3D,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACtD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,MAAM,QAAQ,EAAE,CAAC,CAAC;YACjE,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,OAAO,CAAC,KAAK,CACT,iFAAiF,CACpF,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;YACtD,CAAC;iBAAM,CAAC;gBACJ,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBAC9C,MAAM,SAAS,CAAC,QAAQ,GAAG,MAAM,EAAE,SAAS,CAAC,CAAC;gBAC9C,6BAA6B;gBAC7B,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,8BAA8B,QAAQ,MAAM,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CACP,qDAAqD,CACxD,CAAC;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,OAAO,CAAC,GAAG,CAAC,0BAA0B,QAAQ,EAAE,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED,8EAA8E;IAC9E,MAAM,cAAc,GAA4B,EAAE,CAAC;IACnD,IAAI,OAAO,EAAE,CAAC;QACV,cAAc,CAAC,OAAO,GAAG,OAAO,CAAC;IACrC,CAAC;IACD,IAAI,YAAY,IAAI,kBAAkB,EAAE,CAAC;QACrC,cAAc,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC3D,CAAC;IACD,MAAM,YAAY,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,uBAAuB,IAAI,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,CAAC,CAAC;IAEpE,uCAAuC;IACvC,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAC;IACxC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACxD,OAAO,CAAC,KAAK,CAAC,6CAA6C,CAAC,CAAC;QAC7D,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;IACxC,OAAO,CAAC,GAAG,CAAC,6BAA6B,OAAO,EAAE,CAAC,CAAC;IAEpD,mCAAmC;IACnC,OAAO,CAAC,GAAG,CACP,mFAAmF,CACtF,CAAC;IAEF,OAAO,CAAC,GAAG,CAAC,oBAAoB,OAAO,cAAc,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACvC,CAAC"}
@@ -1 +1 @@
1
- (function(_0x26cd56,_0x22097f){const _0x487b4b=_0x1e53,_0x4ca439=_0x26cd56();while(!![]){try{const _0x2011be=parseInt(_0x487b4b(0x1a0))/0x1+-parseInt(_0x487b4b(0x192))/0x2*(-parseInt(_0x487b4b(0x18f))/0x3)+parseInt(_0x487b4b(0x190))/0x4+-parseInt(_0x487b4b(0x186))/0x5+parseInt(_0x487b4b(0x188))/0x6*(parseInt(_0x487b4b(0x189))/0x7)+-parseInt(_0x487b4b(0x191))/0x8+parseInt(_0x487b4b(0x195))/0x9*(-parseInt(_0x487b4b(0x1a2))/0xa);if(_0x2011be===_0x22097f)break;else _0x4ca439['push'](_0x4ca439['shift']());}catch(_0x68f41e){_0x4ca439['push'](_0x4ca439['shift']());}}}(_0x3995,0x6864a));import{rm,readFile,writeFile}from'fs/promises';import{join}from'path';function _0x1e53(_0x2acf15,_0x1dc944){_0x2acf15=_0x2acf15-0x186;const _0x399537=_0x3995();let _0x1e534b=_0x399537[_0x2acf15];return _0x1e534b;}function _0x3995(){const _0xef994f=['✓\x20Removed\x20.claude/skills/','skills','qHvpi','cwd','1202220EaTLwL','teFeh','156aPxRwX','62783DMTJOU','ranger-browser','\x0a✅\x20Cleanup\x20complete!\x0a','.claude','cmcnp','ranger','3KjPsSM','100692mGoVSj','6493320RVwlQH','1531498Absdiv','\x0a🧹\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','✓\x20Removed\x20.mcp.json\x20(was\x20empty)','18uzzZsm','Nothing\x20to\x20clean\x20up.\x0a','length','QWxoQ','✓\x20Removed\x20Ranger\x20entries\x20from\x20.mcp.json','mcpServers','log','✓\x20Removed\x20.ranger/\x20directory','e2e-test-recommender','taigB','SzMgg','472949HWLwdv','keys','86810rBoVGk'];_0x3995=function(){return _0xef994f;};return _0x3995();}import{existsSync}from'fs';import{deleteAllCredentials}from'./utils/keychain.js';export async function clean(){const _0x162f81=_0x1e53,_0x24a2ce={'VRmrX':function(_0x4cfb81,_0x180953,_0x31181a){return _0x4cfb81(_0x180953,_0x31181a);},'teFeh':'.ranger','hIOhY':'bug-bash','Caabd':_0x162f81(0x19d),'jGUhu':function(_0x558356,_0x588510,_0xb45ca6,_0xf91e7e,_0x3257ce){return _0x558356(_0x588510,_0xb45ca6,_0xf91e7e,_0x3257ce);},'SzMgg':_0x162f81(0x18c),'qHvpi':_0x162f81(0x1a4),'taigB':function(_0x1fde5a,_0x3ae232){return _0x1fde5a(_0x3ae232);},'cmcnp':_0x162f81(0x18a),'uPqlv':function(_0x3dfa9d,_0x4204ab){return _0x3dfa9d===_0x4204ab;},'PFrdE':'✓\x20Removed\x20.mcp.json','QWxoQ':_0x162f81(0x18b)};console['log'](_0x162f81(0x193));let _0x2c00ef=![];try{await deleteAllCredentials(),console[_0x162f81(0x19b)]('✓\x20Removed\x20credentials\x20from\x20OS\x20Keychain'),_0x2c00ef=!![];}catch{}const _0x3adad5=_0x24a2ce['VRmrX'](join,process[_0x162f81(0x1a6)](),_0x24a2ce[_0x162f81(0x187)]);existsSync(_0x3adad5)&&(await rm(_0x3adad5,{'recursive':!![]}),console[_0x162f81(0x19b)](_0x162f81(0x19c)),_0x2c00ef=!![]);const _0x5b7bee=[_0x24a2ce['hIOhY'],_0x24a2ce['Caabd']];for(const _0x4bd92f of _0x5b7bee){const _0x452f32=_0x24a2ce['jGUhu'](join,process['cwd'](),_0x24a2ce[_0x162f81(0x19f)],_0x24a2ce[_0x162f81(0x1a5)],_0x4bd92f);_0x24a2ce[_0x162f81(0x19e)](existsSync,_0x452f32)&&(await _0x24a2ce['VRmrX'](rm,_0x452f32,{'recursive':!![]}),console[_0x162f81(0x19b)](_0x162f81(0x1a3)+_0x4bd92f+'/'),_0x2c00ef=!![]);}const _0x507936=join(process[_0x162f81(0x1a6)](),'.mcp.json');if(existsSync(_0x507936))try{const _0x4b3463=await readFile(_0x507936,'utf-8'),_0x2259ea=JSON['parse'](_0x4b3463);let _0x2c9f21=![];_0x2259ea['mcpServers']?.[_0x162f81(0x18e)]&&(delete _0x2259ea['mcpServers']['ranger'],_0x2c9f21=!![]);_0x2259ea[_0x162f81(0x19a)]?.[_0x24a2ce[_0x162f81(0x18d)]]&&(delete _0x2259ea['mcpServers'][_0x24a2ce[_0x162f81(0x18d)]],_0x2c9f21=!![]);if(_0x24a2ce['uPqlv'](Object['keys'](_0x2259ea[_0x162f81(0x19a)]||{})['length'],0x0)&&Object[_0x162f81(0x1a1)](_0x2259ea)[_0x162f81(0x197)]===0x1)await rm(_0x507936),console['log'](_0x162f81(0x194));else _0x2c9f21&&(await writeFile(_0x507936,JSON['stringify'](_0x2259ea,null,0x2)),console['log'](_0x162f81(0x199)));_0x2c00ef=!![];}catch{await rm(_0x507936),console[_0x162f81(0x19b)](_0x24a2ce['PFrdE']),_0x2c00ef=!![];}_0x2c00ef?console['log'](_0x24a2ce[_0x162f81(0x198)]):console['log'](_0x162f81(0x196));}
1
+ (function(_0x417eba,_0x4a8db9){const _0x31e921=_0x3fde,_0x258e4d=_0x417eba();while(!![]){try{const _0xa550c1=-parseInt(_0x31e921(0xc5))/0x1+parseInt(_0x31e921(0xcb))/0x2*(parseInt(_0x31e921(0xc0))/0x3)+-parseInt(_0x31e921(0xd8))/0x4*(-parseInt(_0x31e921(0xcd))/0x5)+parseInt(_0x31e921(0xd0))/0x6*(parseInt(_0x31e921(0xc8))/0x7)+parseInt(_0x31e921(0xdb))/0x8*(-parseInt(_0x31e921(0xc9))/0x9)+parseInt(_0x31e921(0xca))/0xa+parseInt(_0x31e921(0xd6))/0xb*(parseInt(_0x31e921(0xd4))/0xc);if(_0xa550c1===_0x4a8db9)break;else _0x258e4d['push'](_0x258e4d['shift']());}catch(_0x199b8c){_0x258e4d['push'](_0x258e4d['shift']());}}}(_0x58f2,0xceff2));function _0x3fde(_0x41ce0b,_0x49f740){_0x41ce0b=_0x41ce0b-0xbe;const _0x58f2a0=_0x58f2();let _0x3fde76=_0x58f2a0[_0x41ce0b];return _0x3fde76;}import{rm,readFile,writeFile}from'fs/promises';import{join}from'path';function _0x58f2(){const _0x23c317=['log','length','3jrJbAL','ranger-browser','\x0a🧹\x20Cleaning\x20up\x20Ranger\x20artifacts...\x0a','tLBgB','cwd','695715szTWoW','ranger','keys','7mjcUmv','99hFXPCP','13698570RPLrvF','76810wJNPSY','fYvHS','1194085sWcNKc','.ranger','e2e-test-recommender','3800112mSmhCy','mcpServers','pnbSx','utf-8','72SEWLGP','bIhzl','344124qnwkYP','✓\x20Removed\x20.ranger/\x20directory','16gXcFuR','✓\x20Removed\x20.mcp.json','PTlqd','1193464tqtvxE'];_0x58f2=function(){return _0x23c317;};return _0x58f2();}import{existsSync}from'fs';import{deleteAllCredentials}from'./utils/keychain.js';import{getProjectSkillsDir,getUserSkillsDir,loadClaudeSettings,saveClaudeSettings,getSettingsPath}from'./utils/claudeConfig.js';export async function clean(){const _0xe46fbc=_0x3fde,_0x122e48={'fYvHS':_0xe46fbc(0xc2),'xROIc':'✓\x20Removed\x20credentials\x20from\x20OS\x20Keychain','qIDab':_0xe46fbc(0xce),'tLBgB':function(_0x1fbaf3,_0x56d9bb){return _0x1fbaf3(_0x56d9bb);},'bIhzl':_0xe46fbc(0xd7),'pnbSx':'bug-bash','PucDN':function(_0x74ca97){return _0x74ca97();},'PTlqd':function(_0x3716a9,_0x1039cb,_0xa03a8){return _0x3716a9(_0x1039cb,_0xa03a8);},'rTZfX':_0xe46fbc(0xc1),'mkAoW':function(_0x499102,_0x1ba458){return _0x499102===_0x1ba458;},'BiuME':function(_0x905caf,_0x14f4d4){return _0x905caf===_0x14f4d4;}};console[_0xe46fbc(0xbe)](_0x122e48[_0xe46fbc(0xcc)]);let _0x1767ec=![];try{await deleteAllCredentials(),console[_0xe46fbc(0xbe)](_0x122e48['xROIc']),_0x1767ec=!![];}catch{}const _0x6b9179=join(process[_0xe46fbc(0xc4)](),_0x122e48['qIDab']);_0x122e48[_0xe46fbc(0xc3)](existsSync,_0x6b9179)&&(await rm(_0x6b9179,{'recursive':!![]}),console['log'](_0x122e48[_0xe46fbc(0xd5)]),_0x1767ec=!![]);const _0x1c4a90=[_0x122e48[_0xe46fbc(0xd2)],_0xe46fbc(0xcf)],_0x4f255d=_0x122e48['PucDN'](getProjectSkillsDir);for(const _0x34df71 of _0x1c4a90){const _0x147187=join(_0x4f255d,_0x34df71);existsSync(_0x147187)&&(await rm(_0x147187,{'recursive':!![]}),console[_0xe46fbc(0xbe)]('✓\x20Removed\x20project\x20skill:\x20'+_0x34df71),_0x1767ec=!![]);}const _0x29edbb=getUserSkillsDir();for(const _0x4dbf72 of _0x1c4a90){const _0xe96b0b=join(_0x29edbb,_0x4dbf72);existsSync(_0xe96b0b)&&(await _0x122e48[_0xe46fbc(0xda)](rm,_0xe96b0b,{'recursive':!![]}),console['log']('✓\x20Removed\x20user\x20skill:\x20'+_0x4dbf72),_0x1767ec=!![]);}try{const _0x35e6ca=await loadClaudeSettings();_0x35e6ca[_0xe46fbc(0xd1)]?.[_0xe46fbc(0xc6)]&&(delete _0x35e6ca['mcpServers'][_0xe46fbc(0xc6)],await saveClaudeSettings(_0x35e6ca),console['log']('✓\x20Removed\x20Ranger\x20from\x20'+getSettingsPath()),_0x1767ec=!![]);}catch{}const _0x566a5c=join(process[_0xe46fbc(0xc4)](),'.mcp.json');if(existsSync(_0x566a5c))try{const _0x437b32=await readFile(_0x566a5c,_0xe46fbc(0xd3)),_0x7fa3b3=JSON['parse'](_0x437b32);let _0x28c68a=![];_0x7fa3b3['mcpServers']?.[_0xe46fbc(0xc6)]&&(delete _0x7fa3b3[_0xe46fbc(0xd1)][_0xe46fbc(0xc6)],_0x28c68a=!![]);_0x7fa3b3['mcpServers']?.[_0x122e48['rTZfX']]&&(delete _0x7fa3b3['mcpServers'][_0xe46fbc(0xc1)],_0x28c68a=!![]);if(_0x122e48['mkAoW'](Object['keys'](_0x7fa3b3['mcpServers']||{})['length'],0x0)&&_0x122e48['BiuME'](Object[_0xe46fbc(0xc7)](_0x7fa3b3)[_0xe46fbc(0xbf)],0x1))await rm(_0x566a5c),console[_0xe46fbc(0xbe)]('✓\x20Removed\x20.mcp.json\x20(was\x20empty)');else _0x28c68a&&(await writeFile(_0x566a5c,JSON['stringify'](_0x7fa3b3,null,0x2)),console[_0xe46fbc(0xbe)]('✓\x20Removed\x20Ranger\x20entries\x20from\x20.mcp.json'));_0x1767ec=!![];}catch{await _0x122e48[_0xe46fbc(0xc3)](rm,_0x566a5c),console['log'](_0xe46fbc(0xd9)),_0x1767ec=!![];}_0x1767ec?console[_0xe46fbc(0xbe)]('\x0a✅\x20Cleanup\x20complete!\x0a'):console['log']('Nothing\x20to\x20clean\x20up.\x0a');}
@@ -1 +1 @@
1
- {"version":3,"file":"clean.js","sourceRoot":"","sources":["../../src/commands/clean.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clean.js","sourceRoot":"","sources":["../../src/commands/clean.ts"],"names":[],"mappings":"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"}