npm package: @panaya-foresight/sfdx-plugin
Description: foresight sfdx cli plugin
Author: nreshef
Latest version: 21.2.0

foresight-sfdx-plugin
=====================

foresight sfdx cli plugin

[![Version](https://img.shields.io/npm/v/foresight-sfdx-plugin.svg)](https://npmjs.org/package/foresight-sfdx-plugin)
[![CircleCI](https://circleci.com/gh/git/foresight-sfdx-plugin/tree/master.svg?style=shield)](https://circleci.com/gh/git/foresight-sfdx-plugin/tree/master)
[![Appveyor CI](https://ci.appveyor.com/api/projects/status/github/git/foresight-sfdx-plugin?branch=master&svg=true)](https://ci.appveyor.com/project/heroku/foresight-sfdx-plugin/branch/master)
[![Codecov](https://codecov.io/gh/git/foresight-sfdx-plugin/branch/master/graph/badge.svg)](https://codecov.io/gh/git/foresight-sfdx-plugin)
[![Greenkeeper](https://badges.greenkeeper.io/git/foresight-sfdx-plugin.svg)](https://greenkeeper.io/)
[![Known Vulnerabilities](https://snyk.io/test/github/git/foresight-sfdx-plugin/badge.svg)](https://snyk.io/test/github/git/foresight-sfdx-plugin)
[![Downloads/week](https://img.shields.io/npm/dw/foresight-sfdx-plugin.svg)](https://npmjs.org/package/foresight-sfdx-plugin)
[![License](https://img.shields.io/npm/l/foresight-sfdx-plugin.svg)](https://github.com/git/foresight-sfdx-plugin/blob/master/package.json)

<!-- toc -->
* [Debugging your plugin](#debugging-your-plugin)
<!-- tocstop -->
<!-- install -->
<!-- usage -->
```sh-session
$ npm install -g @panaya-foresight/sfdx-plugin
$ sfdx COMMAND
running command...
$ sfdx (-v|--version|version)
@panaya-foresight/sfdx-plugin/21.2.0 win32-x64 node-v12.20.1
$ sfdx --help [COMMAND]
USAGE
  $ sfdx COMMAND
...
```
<!-- usagestop -->
<!-- commands -->
* [`sfdx foresight:analyze [-t <string>] [-p <number>] [-r <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]`](#sfdx-foresightanalyze--t-string--p-number--r-number---json---loglevel-tracedebuginfowarnerrorfataltracedebuginfowarnerrorfatal)
* [`sfdx foresight:config [-t <string>] [-u <string>] [-d <string>] [-p <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]`](#sfdx-foresightconfig--t-string--u-string--d-string--p-number---json---loglevel-tracedebuginfowarnerrorfataltracedebuginfowarnerrorfatal)

## `sfdx foresight:analyze [-t <string>] [-p <number>] [-r <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]`

Create new ForeSight analysis

```
Create new ForeSight analysis

USAGE
  $ sfdx foresight:analyze [-t <string>] [-p <number>] [-r <number>] [--json] [--loglevel 
  trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

OPTIONS
  -p, --projectid=projectid                                                         ForeSight projectId
  -r, --requirementid=requirementid                                                 ForeSight requirement to update
  -t, --title=title                                                                 New analysis title
  --json                                                                            format output as json

  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

EXAMPLE
  $ sfdx foresight:analyze --title mytitle /Users/Jhon/Salesforce/Metadata/my_package.xml
     Creating mytitle analysis
```

_See code: [lib/commands/foresight/analyze.js](https://github.com/git/foresight-sfdx-plugin/blob/v21.2.0/lib/commands/foresight/analyze.js)_

## `sfdx foresight:config [-t <string>] [-u <string>] [-d <string>] [-p <number>] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]`

Sets ForeSight configuration like refresh token

```
Sets ForeSight configuration like refresh token

USAGE
  $ sfdx foresight:config [-t <string>] [-u <string>] [-d <string>] [-p <number>] [--json] [--loglevel 
  trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]

OPTIONS
  -d, --domain=domain                                                               Panaya ForeSight domain
  -p, --projectid=projectid                                                         Panaya ForeSight default projectId
  -t, --token=token                                                                 Panaya ForeSight refresh token
  -u, --loginuser=loginuser                                                         Panaya ForeSight user email
  --json                                                                            format output as json

  --loglevel=(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)  [default: warn] logging level for
                                                                                    this command invocation

EXAMPLE
  $ sfdx foresight:config -u WileE@acme.com -t 0899e9fdeaad630bbf8da90e79fa8471 -d my.panaya.com -p 1121
```

_See code: [lib/commands/foresight/config.js](https://github.com/git/foresight-sfdx-plugin/blob/v21.2.0/lib/commands/foresight/config.js)_
<!-- commandsstop -->
<!-- debugging-your-plugin -->
# Debugging your plugin
We recommend using the Visual Studio Code (VS Code) IDE for your plugin development. Included in the `.vscode` directory of this plugin is a `launch.json` config file, which allows you to attach a debugger to the node process when running your commands.

To debug the `hello:org` command: 
1. Start the inspector
  
If you linked your plugin to the sfdx cli, call your command with the `dev-suspend` switch: 
```sh-session
$ sfdx hello:org -u myOrg@example.com --dev-suspend
```
  
Alternatively, to call your command using the `bin/run` script, set the `NODE_OPTIONS` environment variable to `--inspect-brk` when starting the debugger:
```sh-session
$ NODE_OPTIONS=--inspect-brk bin/run hello:org -u myOrg@example.com
```

2. Set some breakpoints in your command code
3. Click on the Debug icon in the Activity Bar on the side of VS Code to open up the Debug view.
4. In the upper left hand corner of VS Code, verify that the "Attach to Remote" launch configuration has been chosen.
5. Hit the green play button to the left of the "Attach to Remote" launch configuration window. The debugger should now be suspended on the first line of the program. 
6. Hit the green play button at the top middle of VS Code (this play button will be to the right of the play button that you clicked in step #5).
<br><img src=".images/vscodeScreenshot.png" width="480" height="278"><br>
Congrats, you are debugging!