{
  "commands": {
    "code-analyzer:ast-dump": {
      "aliases": [],
      "args": {},
      "description": "Generate and display the AST that PMD produces when parsing a source file. This is useful for understanding how PMD interprets your code and for developing custom PMD rules. The command supports Apex, Visualforce, HTML, XML, and JavaScript files.",
      "examples": [
        "Dump the AST for an Apex class file in JSON format (default):\n<%= config.bin %> <%= command.id %> --file ./force-app/main/default/classes/MyClass.cls",
        "Dump the AST in XML format:\n<%= config.bin %> <%= command.id %> --file ./force-app/main/default/classes/MyClass.cls --format xml",
        "Dump the AST and write the output to a file:\n<%= config.bin %> <%= command.id %> --file ./force-app/main/default/classes/MyClass.cls --output-file ast-output.json",
        "Explicitly specify the language when the file extension is ambiguous:\n<%= config.bin %> <%= command.id %> --file ./src/myfile.html --language html"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "file": {
          "description": "The file whose AST you want to generate. The file must exist and be a regular file (not a directory). If you don't specify the `--language` flag, the language is auto-detected from the file extension.",
          "name": "file",
          "required": true,
          "summary": "Path to the source file to parse.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "language": {
          "char": "l",
          "description": "Explicitly specify the language of the source file. Defaults to `apex`. Supported languages are: apex, visualforce, html, xml, and javascript.",
          "name": "language",
          "summary": "Language of the source file.",
          "default": "apex",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "apex",
            "visualforce",
            "html",
            "xml",
            "javascript"
          ],
          "type": "option"
        },
        "format": {
          "description": "Choose between `xml` (default) or `json`. The XML format outputs the raw PMD AST XML, preserving the full tree structure. The JSON format provides a flat array of nodes with names, attributes, parent, and ancestor information.",
          "name": "format",
          "summary": "Output format for the AST.",
          "default": "xml",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "json",
            "xml"
          ],
          "type": "option"
        },
        "output-file": {
          "description": "If specified, the AST output is written to this file instead of being displayed in the terminal. The content format depends on the `--format` flag.",
          "name": "output-file",
          "summary": "Path to the file where the AST output is written.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "code-analyzer:ast-dump",
      "pluginAlias": "@salesforce/plugin-code-analyzer",
      "pluginName": "@salesforce/plugin-code-analyzer",
      "pluginType": "jit",
      "strict": true,
      "summary": "Dump the Abstract Syntax Tree (AST) for a given source file.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "code-analyzer",
        "ast-dump.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "code-analyzer:ast-dump",
        "ast-dump:code-analyzer"
      ]
    },
    "code-analyzer:config": {
      "aliases": [],
      "args": {},
      "description": "Code Analyzer gives you the ability to configure settings that modify Code Analyzer's behavior, to override the tags and severity levels of rules, and to configure the engine specific settings. Use this command to see the current state of this configuration. You can also save this state to a YAML-formatted file that you can modify for your needs.\n\nTo apply a custom configuration with Code Analyzer, either keep your custom configuration settings in a `code-analyzer.yml` file located in the current folder from which you are executing commands, or specify the location of your custom configuration file to the Code Analyzer commands with the --config-file flag.\n\nWe're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://sfdc.co/CodeAnalyzerFeedback.",
      "examples": [
        "Display the current state of the Code Analyzer configuration using the default behavior: display top level configuration, display the engine and rule override settings associated with all the rules; and automatically apply any existing custom configuration settings found in a `code-analyzer.yml` or `code-analyzer.yaml` file in the current folder:\n<%= config.bin %> <%= command.id %>",
        "This example is identical to the previous one, assuming that `./code-analyzer.yml` exists in your current folder.\n<%= config.bin %> <%= command.id %> --config-file ./code-analyzer.yml --rule-selector all",
        "Write the current state of configuration to the file `code-analyzer.yml`, including any configuration from an existing `code-analyzer.yml` file. The command preserves all values from the original config, but overwrites any comments:\n<%= config.bin %> <%= command.id %> --config-file ./code-analyzer.yml --output-file code-analyzer.yml",
        "Display the configuration state for just the recommended rules, instead of all the rules:\n<%= config.bin %> <%= command.id %> --rule-selector Recommended",
        "Display all the default rule values for the recommended rules, instead of only the rule values you've explicitly overriden in your `code-analyzer.yml` file. By default, only overriden rule values are displayed unless you specify the `--include-unmodified-rules` flag:\n<%= config.bin %> <%= command.id %> --rule-selector Recommended --include-unmodified-rules",
        "Display the configuration state associated with all the rules that are applicable to the files targeted within the folder `./src`:\n<%= config.bin %> <%= command.id %> --target ./src",
        "Display any relevant configuration settings associated with the rule name 'no-undef' from the 'eslint' engine:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:no-undef",
        "Display any relevant configuration settings associated with PMD rules whose severity is 2 or 3:\n<%= config.bin %> <%= command.id %> --rule-selector \"pmd:(2,3)\"",
        "Load an existing configuration file called `existing-config.yml`, and then write the configuration to a new file called `new-config.yml`, the configuration state that is applicable to all rules that are relevant to the workspace located in the current folder:\n<%= config.bin %> <%= command.id %> --config-file ./existing-config.yml --workspace . --output-file ./subfolder-config.yml"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "workspace": {
          "char": "w",
          "description": "Use the `--workspace` flag to display only the configuration associated with the rules that apply to the files that make up your workspace. Typically, a workspace is a single project folder that contains all your files. But it can also consist of one or more folders, one or more files, and use glob patterns (wildcards). If you specify this flag multiple times, then your workspace is the sum of the files and folders.\n\nThis command uses the types of files in the workspace, such as JavaScript or Typescript, to determine the applicable configuration state. For example, if your workspace contains only JavaScript files, then the command doesn't display configuration state associated with TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as \".ts\" for TypeScript.\n\nSome engines can be configured to add additional rules based on what it finds in your workspace. For example, if you set the engines.eslint.auto_discover_eslint_config value of your `code-analyzer.yml` file to true, then supplying your workspace allows the \"eslint\" engine to examine your files in order to find ESLint configuration files that could potentially add in additional rules.\n\nIf you specify `--target` but not `--workspace`, then the current folder '.' is used as your workspace.",
          "name": "workspace",
          "summary": "Set of files that make up your workspace.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "target": {
          "char": "t",
          "description": "Use the `--target` flag to display the configuration state associated with the rules that apply to only a subset of targeted files within your workspace. You can specify a target as a file, a folder, or a glob pattern. If you specify this flag multiple times, then the full list of targeted files is the sum of the files and folders.\n\nThe command uses the type of the targeted files, such as JavaScript or Typescript, to determine which configuration state is applicable. For example, if you target only JavaScript files, then the command doesn't display the configuration state associated with TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as \".ts\" for TypeScript.\n\nEach targeted file must live within the workspace specified by the `–-workspace` flag.\n\nIf you specify `--workspace` but not `--target`, then all the files within your workspace are targeted.",
          "name": "target",
          "summary": "Subset of files within your workspace that you want to target for analysis.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "rule-selector": {
          "char": "r",
          "description": "Use the `--rule-selector` flag to display only the configuration associated with the rules based on specific criteria. You can select by engine, such as the rules associated with the \"retire-js\" or \"eslint\" engine. Or select by the severity of the rules, such as high or moderate. You can also select rules using tag values or rule names.\n\nYou can further filter the list by combining different criteria using colons to represent logical AND, commas to represent logical OR, and parentheses to create groupings. For example, `--rule-selector \"pmd:(Performance,Security):2\"` reduces the output to only contain the configuration state associated with PMD rules that have the Performance or Security tag and a severity of 2. You may also specify the flag multiple times to OR multiple selectors together. For example, `--rule-selector Performance,Security` is equivalent to `--rule-selector Performance --rule-selector Security`. Note that if you use parentheses in your selector, the selector should be wrapped in double-quotes.\n\nIf you don't specify this flag, then the command uses the \"all\" rule selector.\n\nRun `<%= config.bin %> <%= command.id %> --rule-selector Recommended` to display the configuration state associated with just the 'Recommended' rules, instead of all the rules.",
          "name": "rule-selector",
          "summary": "Selection of rules, based on engine name, severity level, rule name, tag, or a combination of criteria separated by colons and commas, and grouped by parentheses.",
          "default": [
            "all"
          ],
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "config-file": {
          "char": "c",
          "description": "Use this flag to apply the customizations from a custom Code Analyzer configuration file to be displayed alongside the current Code Analyzer configuration state.\n\nIf you don't specify this flag, then the command looks for and applies a file named `code-analyzer.yml` or `code-analyzer.yaml` in your current folder.",
          "name": "config-file",
          "summary": "Path to the existing configuration file used to customize the engines and rules.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "output-file": {
          "char": "f",
          "description": "If you specify a file within folder, such as `--output-file ./config/code-analyzer.yml`, the folder must already exist, or you get an error. If the file already exists, a prompt asks if you want to overwrite it.\n\nIf you don't specify this flag, the command outputs the configuration state to the terminal.",
          "name": "output-file",
          "summary": "Output file to write the configuration state to. The file is written in YAML format.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "include-unmodified-rules": {
          "description": "The default behavior of the config command is to not include the unmodified rules with their default values in the rule override settings (for the rules selected via the `–-rule-selector` flag). This default behavior prevents your configuration file from being unnecessarily large. If you want to include the unmodified rules, in addition to the modified rules, then specify this flag.",
          "name": "include-unmodified-rules",
          "summary": "Include unmodified rules in the rule override settings.",
          "allowNo": false,
          "type": "boolean"
        },
        "no-suppressions": {
          "description": "When specified, the 'suppressions' field is not included in the configuration state. Since the 'suppressions' field may contain file or folder paths specific to a specific path, use this flag to make it easy to share your configuration state to be used for a different workspace.",
          "name": "no-suppressions",
          "summary": "Exclude suppressions from the output configuration.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "code-analyzer:config",
      "pluginAlias": "@salesforce/plugin-code-analyzer",
      "pluginName": "@salesforce/plugin-code-analyzer",
      "pluginType": "jit",
      "strict": true,
      "summary": "Output the current state of configuration for Code Analyzer.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "code-analyzer",
        "config.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "code-analyzer:config",
        "config:code-analyzer"
      ]
    },
    "code-analyzer:rules": {
      "aliases": [],
      "args": {},
      "description": "You can also view details about the rules, such as the engine it's associated with, tags, and description.\n\nUse this command to determine the exact set of rules to analyze your code. The `code-analyzer run` command has similar flags as this command, so once you've determined the flag values for this command that list the rules you want to run, you specify the same values to the `code-analyzer run` command.\n\nWe're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://sfdc.co/CodeAnalyzerFeedback.",
      "examples": [
        "List rules using the default behavior: include rules from all engines that have a \"Recommended\" tag; display the rules using concise table format; and automatically apply rule or engine overrides if a `code-analyzer.yml` or `code-analyzer.yaml` file exists in the current folder:\n<%= config.bin %> <%= command.id %>",
        "The previous example is equivalent to this example:\n<%= config.bin %> <%= command.id %> --rule-selector Recommended --view table --config-file ./code-analyzer.yml",
        "List the recommended rules for the \"eslint\" engine:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:Recommended",
        "List all the rules for the \"eslint\" engine:\n<%= config.bin %> <%= command.id %> --rule-selector eslint",
        "The previous example is equivalent to this example:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:all",
        "List the details about all rules for all engines; also write the rules in JSON format to a file called \"rules.json\" in the \"out\" folder, which must already exist:\n<%= config.bin %> <%= command.id %> --rule-selector all --output-file ./out/rules.json --view detail",
        "Get a more accurate list of the rules that apply specifically to your workspace (all the files in the current folder):\n<%= config.bin %> <%= command.id %> --rule-selector all --workspace .",
        "List the recommended rules associated with a workspace that targets all the files in the folder \"./other-source\" and only the Apex class files (extension .cls) under the folder \"./force-app\":\n<%= config.bin %> <%= command.id %> --rule-selector Recommended --workspace . --target ./other-source --target ./force-app/**/*.cls",
        "List all the \"eslint\" engine rules that have a moderate severity (3) and the recommended \"retire-js\" engine rules with any severity:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:3 --rule-selector retire-js:Recommended",
        "List all the \"pmd\" engine rules that have a severity of moderate (3) or high (2) and the \"Performance\" tag.\n<%= config.bin %> <%= command.id %> --rule-selector \"pmd:(2,3):Performance\"",
        "Similar to the previous example, but apply the rule overrides and engine settings from the configuration file called `code-analyzer2.yml` in the current folder. If, for example, you changed the severity of an \"eslint\" rule from moderate (3) to high (2) in the configuration file, then that rule isn't listed:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:3 --rule-selector retire-js:Recommended --config-file ./code-analyzer2.yml",
        "List the details of the \"getter-return\" rule of the \"eslint\" engine and the rules named \"no-inner-declarations\" in any engine:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:getter-return --rule-selector no-inner-declarations --view detail",
        "List the details of the recommended \"eslint\" engine rules that have the tag \"problem\" and high severity level (2) that apply when targeting the files within the folder \"./force-app\":\n<%= config.bin %> <%= command.id %> --rule-selector eslint:Recommended:problem:2 --view detail --target ./force-app"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "workspace": {
          "char": "w",
          "description": "Use the `--workspace` flag to return a more accurate list of the rules that apply to the files that make up your workspace. Typically, a workspace is a single project folder that contains all your files. But it can also consist of one or more folders, one or more files, and use glob patterns (wildcards). If you specify this flag multiple times, then your workspace is the sum of the files and folders. \n\nThe command uses the types of files in the workspace, such as JavaScript or Typescript, to determine which rules to list. For example, if your workspace contains only JavaScript files, the command doesn't list TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as \".ts\" for TypeScript.\n\nSome engines may be configured to add additional rules based on what it finds in your workspace. For example, if you set the engines.eslint.auto_discover_eslint_config value of your `code-analyzer.yml` file to true, then supplying your workspace allows the \"eslint\" engine to examine your files in order to find ESLint configuration files that could potentially add in additional rules.\n\nIf you specify `--target` but not `--workspace`, then the current folder '.' is used as your workspace.",
          "name": "workspace",
          "summary": "Set of files that make up your workspace.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "target": {
          "char": "t",
          "description": "Use the `--target` flag to return a more accurate list of the rules that apply to only a subset of targeted files within your workspace. You can specify a target as a file, a folder, or a glob pattern. If you specify this flag multiple times, then the full list of targeted files is the sum of the files and folders.\n\nThe command uses the type of the targeted files, such as JavaScript or Typescript, to determine which rules to list. For example, if you target only JavaScript files, the command doesn't list TypeScript rules. The command uses a file's extension to determine what kind of file it is, such as \".ts\" for TypeScript.\n\nEach targeted file must live within the workspace specified by the –-workspace flag.\n\nIf you specify `--workspace` but not `--target`, then all the files within your workspace are targeted.",
          "name": "target",
          "summary": "Subset of files within your workspace that you want to target for analysis.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "rule-selector": {
          "char": "r",
          "description": "Use the `--rule-selector` flag to select the list of rules based on specific criteria. For example, you can select by engine, such as the rules associated with the \"retire-js\" or \"eslint\" engine. Or select by the severity of the rules, such as high or moderate. You can also select rules using tag values or rule names. Every rule has a name, which is unique within the scope of an engine. Most rules have tags, although it's not required. An example of a tag is \"Recommended\". \n\nYou can further filter the list by combining different criteria using colons to represent logical AND, commas to represent logical OR, and parentheses to create groupings. For example, `--rule-selector \"pmd:(Performance,Security):2\"` lists rules associated only with the \"pmd\" engine that have the Security or Performance tags and a high severity (2). You may also specify the flag multiple times to OR multiple selectors together. For example, `--rule-selector Performance,Security` is equivalent to `--rule-selector Performance --rule-selector Security`. Note that if you use parentheses in your selector, the selector should be wrapped in double-quotes. \n\nRun `<%= config.bin %> <%= command.id %> --rule-selector all` to list the possible values for engine name, rule name, tags, and severity levels that you can use with this flag.",
          "name": "rule-selector",
          "summary": "Selection of rules, based on engine name, severity level, rule name, tag, or a combination of criteria separated by colons.",
          "default": [
            "Recommended"
          ],
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "config-file": {
          "char": "c",
          "description": "Code Analyzer has an internal default configuration for its rule and engine properties. If you want to override these defaults, you can create a Code Analyzer configuration file.\n\nWe recommend that you name your Code Analyzer configuration file `code-analyzer.yml` or `code-analyzer.yaml` and put it at the root of your workspace. You then don't need to use this flag when you run the `<%= command.id %>` command from the root of your workspace, because it automatically looks for either file in the current folder, and if found, applies its rule overrides and engine settings. If you want to name the file something else, or put it in an alternative folder, then you must specify this flag.\n\nTo help you get started, use the `code-analyzer config` command to create your first Code Analyzer configuration file. With it, you can change the severity of an existing rule, change a rule's tags, and so on. Then use this flag to specify the file so that the command takes your customizations into account.",
          "name": "config-file",
          "summary": "Path to the configuration file used to customize the engines and rules.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "output-file": {
          "char": "f",
          "description": "If you don't specify this flag, the command outputs the rules to only the terminal. Use this flag to write the rules to a file; the format of the rules depends on the extension you provide. For example, `--output-file rules.csv` creates a comma-separated values file. You can specify one of these extensions:\n\n- .csv\n- .json\n\nTo output the rules to multiple files, specify this flag multiple times. For example, `--output-file rules.json --output-file rules.csv` creates both a JSON file and a CSV file.\n\nIf you specify a file within folder, such as `--output-file ./out/rules.json`, the folder must already exist, or you get an error. If the file already exists, it's overwritten without prompting.",
          "name": "output-file",
          "summary": "Name of the file where the selected rules are written. The file format depends on the extension you specify; the currently supported extensions are .json and .csv",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "view": {
          "char": "v",
          "description": "The format `table` is concise and shows minimal output, the format `detail` shows all available information. \n\nIf you specify neither `--view` nor `--output-file`, then the default table view is shown. If you specify `--output-file` but not `--view`, only summary information is shown in the terminal.",
          "name": "view",
          "summary": "Format to display the rules in the terminal.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "detail",
            "table"
          ],
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "code-analyzer:rules",
      "pluginAlias": "@salesforce/plugin-code-analyzer",
      "pluginName": "@salesforce/plugin-code-analyzer",
      "pluginType": "jit",
      "strict": true,
      "summary": "List the rules that are available to analyze your code.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "code-analyzer",
        "rules.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "code-analyzer:rules",
        "rules:code-analyzer"
      ]
    },
    "code-analyzer:run": {
      "aliases": [],
      "args": {},
      "description": "You can scan your codebase with the recommended rules. Or use flags to filter the rules based on engines (such as \"retire-js\" or \"eslint\"), rule names, tags, and more. \n\nIf you want to preview the list of rules before you actually run them, use the `code-analyzer rules` command, which also has the `--config-file`, `--rule-selector`, `--target`, and `--workspace` flags that together define the list of rules to be run.\n\nWe're continually improving Salesforce Code Analyzer. Tell us what you think! Give feedback at https://sfdc.co/CodeAnalyzerFeedback.",
      "examples": [
        "Analyze code using the default behavior: analyze all the files in the current folder (default workspace) using the Recommended rules; display the output in the terminal with the concise table view; and automatically apply rule or engine overrides if a `code-analyzer.yml` or `code-analyzer.yaml` file exists in the current folder:\n<%= config.bin %> <%= command.id %>",
        "The previous example is equivalent to this example:\n<%= config.bin %> <%= command.id %> --rule-selector Recommended --workspace . --target . --view table --config-file ./code-analyzer.yml",
        "Analyze the files using the recommended \"eslint\" rules and show details of the violations:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:Recommended --view detail",
        "Analyze the files using all the \"eslint\" rules:\n<%= config.bin %> <%= command.id %> --rule-selector eslint",
        "The previous example is equivalent to this example:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:all",
        "Analyze the files using all rules for all engines:\n<%= config.bin %> <%= command.id %> --rule-selector all",
        "Analyze the files using only rules in the \"pmd\" engine with a severity of high (2) or moderate (3), and the \"Performance\" tag.\n<%= config.bin %> <%= command.id %> --rule-selector \"pmd:(2,3):Performance\"",
        "Analyze files using the recommended \"retire-js\" rules; target all the files in the folder \"./other-source\" and only the Apex class files (extension .cls) in the folder \"./force-app\":\n<%= config.bin %> <%= command.id %> --rule-selector retire-js:Recommended --target ./other-source --target ./force-app/**/*.cls",
        "Specify a custom configuration file and output the results to the \"results.csv\" file in CSV format; the commands fails if it finds a violation that exceeds the moderate severity level (3):\n<%= config.bin %> <%= command.id %> --config-file ./code-analyzer2.yml --output-file results.csv --severity-threshold 3",
        "Analyze the files using all the \"eslint\" engine rules that have a moderate severity (3) and the recommended \"retire-js\" engine rules with any severity:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:3 --rule-selector retire-js:Recommended",
        "Analyze the files using only the \"getter-return\" rule of the \"eslint\" engine and any rule named \"no-inner-declarations\" from any engine:\n<%= config.bin %> <%= command.id %> --rule-selector eslint:getter-return --rule-selector no-inner-declarations",
        "Analyze the files and ignore all inline suppression markers (code-analyzer-suppress/unsuppress) in the source code:\n<%= config.bin %> <%= command.id %> --no-suppressions"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "workspace": {
          "char": "w",
          "description": "Typically, a workspace is a single project folder that contains all your files. But it can also consist of one or more folders, one or more files, and use glob patterns (wildcards). If you specify this flag multiple times, then your workspace is the sum of the files and folders.\n\nSome engines often need your entire code base to perform an analysis, even if you want to target only a subset of the files within your workspace , such as with the `--target` flag. For example, the Salesforce Graph Engine might need to compile your entire project in order to properly build a graph so it can perform a data flow analysis on the paths that start in your targeted files.\n\nIf you don't specify the `--workspace` flag, then the current folder '.' is used as your workspace.",
          "name": "workspace",
          "summary": "Set of files that make up your workspace.",
          "default": [
            "."
          ],
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "target": {
          "char": "t",
          "description": "You can specify a target as a file, a folder, or a glob pattern.\n\nIf you specify this flag multiple times, then the full list of targeted files is the sum of the files and folders.\n\nEach targeted file must live within the workspace that you specified with the `–-workspace` flag.\n\nIf you don't specify the `--target` flag, then all the files within your workspace (specified by the `--workspace` flag) are targeted for analysis.",
          "name": "target",
          "summary": "Subset of files within your workspace to be targeted for analysis.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "rule-selector": {
          "char": "r",
          "description": "Use the `--rule-selector` flag to select the list of rules to run based on specific criteria. For example, you can select by engine, such as the rules associated with the \"retire-js\" or \"eslint\" engine. Or select by the severity of the rules, such as high or moderate. You can also select rules using tag values or rule names. Every rule has a name, which is unique within the scope of an engine. Most rules have tags, although it's not required. An example of a tag is \"Recommended\".\n\nYou can further filter the list by combining different criteria using colons to represent logical AND, commas to represent logical OR, and parentheses to create groupings. For example, `--rule-selector \"pmd:(Performance,Security):2\"` runs rules associated only with the \"pmd\" engine that have the Security or Performance tags and a high severity (2). You may also specify the flag multiple times to OR multiple selectors together. For example, `--rule-selector Performance,Security` is equivalent to `--rule-selector Performance --rule-selector Security`. Note that if you use parentheses in your selector, the selector should be wrapped in double-quotes.\n\nRun `<%= config.bin %> code-analyzer rules --rule-selector all` to see the possible values for engine name, rule name, tags, and severity levels that you can use with this flag.",
          "name": "rule-selector",
          "summary": "Selection of rules, based on engine name, severity level, rule name, tag, or a combination of criteria separated by colons.",
          "default": [
            "Recommended"
          ],
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "severity-threshold": {
          "char": "s",
          "description": "You can specify either a number (2) or its equivalent string (\"High\").",
          "name": "severity-threshold",
          "summary": "Severity level of a found violation that must be met or exceeded to cause this command to fail with a non-zero exit code.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "view": {
          "char": "v",
          "description": "The format `table` is concise and shows minimal output, the format `detail` shows all available information.\n\nIf you specify neither `--view` nor `--output-file`, then the default table view is shown. If you specify `--output-file` but not `--view`, only summary information is shown.",
          "name": "view",
          "summary": "Format to display the command results in the terminal.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "detail",
            "table"
          ],
          "type": "option"
        },
        "output-file": {
          "char": "f",
          "description": "If you don't specify this flag, the command outputs the results to only the terminal. Use this flag to print the results to a file; the format of the results depends on the extension you provide. For example, `--output-file results.csv` creates a comma-separated values file. You can specify one of these extensions:\n\n- .csv\n- .html or .htm\n- .json\n- .sarif or .sarif.json\n- .xml\n\nTo output the results to multiple files, specify this flag multiple times. For example: `--output-file results.json --output-file report.html` creates both a JSON results file and an HTML file.\n\nIf you specify a file within a folder, such as `--output-file ./out/results.json`, the folder must already exist, or you get an error. If the file already exists, it's overwritten without prompting.",
          "name": "output-file",
          "summary": "Name of the file where the analysis results are written. The file format depends on the extension you specify, such as .csv, .html, .xml, and so on.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "config-file": {
          "char": "c",
          "description": "Code Analyzer has an internal default configuration for its rule and engine properties. If you want to override these defaults, you can create a Code Analyzer configuration file.\n\nWe recommend that you name your Code Analyzer configuration file `code-analyzer.yml` or `code-analyzer.yaml` and put it at the root of your workspace. You then don't need to use this flag when you run the `<%= command.id %>` command from the root of your workspace, because it automatically looks for either file in the current folder, and if found, applies its rule overrides and engine settings. If you want to name the file something else, or put it in an alternative folder, then you must specify this flag.\n\nTo help you get started, use the `code-analyzer config` command to create your first Code Analyzer configuration file. With it, you can change the severity of an existing rule, change a rule's tags, and so on. Then use this flag to specify the file so that the command takes your customizations into account.",
          "name": "config-file",
          "summary": "Path to the configuration file used to customize the engines and rules.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "include-fixes": {
          "description": "When enabled, the output includes fix information for violations that have auto-fixes available. Each fix contains a code location and the replacement code. This flag may increase analysis time because engines must perform additional processing to compute fixes.",
          "name": "include-fixes",
          "summary": "Include fix data for violations when available.",
          "allowNo": false,
          "type": "boolean"
        },
        "include-suggestions": {
          "description": "When enabled, the output includes suggestion information for violations that have suggestions available. Each suggestion contains a code location and a message describing the suggested change.",
          "name": "include-suggestions",
          "summary": "Include suggestion data for violations when available.",
          "allowNo": false,
          "type": "boolean"
        },
        "no-suppressions": {
          "description": "When specified, any inline suppression markers (code-analyzer-suppress, code-analyzer-suppress-line, and code-analyzer-suppress-next-line) found in targeted files are ignored and any suppressions supplied by your Code Analyzer configuration file are ignored so that no violations are suppressed by them.\n\nNote: If you have a `code-analyzer.yml` or `code-analyzer.yaml` configuration file with the `suppressions.disable_suppressions` field, the configuration file takes precedence over this flag.",
          "name": "no-suppressions",
          "required": false,
          "summary": "Disable processing of inline and bulk suppression markers.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "code-analyzer:run",
      "pluginAlias": "@salesforce/plugin-code-analyzer",
      "pluginName": "@salesforce/plugin-code-analyzer",
      "pluginType": "jit",
      "strict": true,
      "summary": "Analyze your code with a selection of rules to ensure good coding practices.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "code-analyzer",
        "run.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "code-analyzer:run",
        "run:code-analyzer"
      ]
    },
    "community:create": {
      "aliases": [
        "force:community:create"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Run the \"community list template\" command to see the templates available in your org. See 'Which Experience Cloud Template Should I Use?' in Salesforce Help for more information about the different template types available. (https://help.salesforce.com/s/articleView?id=sf.siteforce_commtemp_intro.htm&type=5)\n\nWhen you create a site with the Build Your Own (LWR) template, you must also specify the AuthenticationType value using the format templateParams.AuthenticationType=value, where value is AUTHENTICATED or AUTHENTICATED_WITH_PUBLIC_ACCESS_ENABLED. Name and values are case-sensitive. See 'DigitalExperienceBundle' in the Metadata API Developer Guide for more information. (https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_digitalexperiencebundle.htm)\n\nThe site creation process is an async job that generates a jobId. To check the site creation status, query the BackgroundOperation object and enter the jobId as the Id. See ‘BackgroundOperation’ in the Object Reference for the Salesforce Platform for more information. (https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_backgroundoperation.htm)\n\nIf the job doesn’t complete within 10 minutes, it times out. You receive an error message and must restart the site creation process. Completed jobs expire after 24 hours and are removed from the database.\n\nWhen you run this command, it creates the site in preview status, which means that the site isn't yet live. After you finish building your site, you can make it live.\n\nIf you have an Experience Builder site, publish the site using the \"community publish\" command to make it live.\n\nIf you have a Salesforce Tabs + Visualforce site, to activate the site and make it live, update the status field of the Network type in Metadata API. (https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_network.htm) Alternatively, in Experience Workspaces, go to Administration | Settings, and click Activate.\n\nFor Experience Builder sites, activating the site sends a welcome email to site members.",
      "examples": [
        "Create an Experience Cloud site using template 'Customer Service' and URL path prefix 'customers':\n<%= config.bin %> <%= command.id %> --name 'My Customer Site' --template-name 'Customer Service' --url-path-prefix customers --description 'My customer site'",
        "Create a site using 'Partner Central' template:\n<%= config.bin %> <%= command.id %> --name partnercentral --template-name 'Partner Central' --url-path-prefix partners",
        "Create a site using the 'Build Your Own (LWR)' template with authentication type of UNAUTHENTICATED:\n<%= config.bin %> <%= command.id %> --name lwrsite --template-name 'Build Your Own (LWR)' --url-path-prefix lwrsite templateParams.AuthenticationType=UNAUTHENTICATED"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Name of the site to create.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "template-name": {
          "aliases": [
            "templatename"
          ],
          "char": "t",
          "deprecateAliases": true,
          "description": "An example of a template is Customer Service. Run the \"community template list\" command to see which templates are available in your org.",
          "name": "template-name",
          "required": true,
          "summary": "Template to use to create a site.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "url-path-prefix": {
          "aliases": [
            "urlpathprefix"
          ],
          "char": "p",
          "deprecateAliases": true,
          "description": "For example, if your domain name is https://MyDomainName.my.site.com and you create a customer site, enter 'customers' to create the unique URL https://MyDomainName.my.site.com/customers.",
          "name": "url-path-prefix",
          "summary": "URL to append to the domain created when Digital Experiences was enabled for this org.",
          "default": "",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "description": {
          "char": "d",
          "description": "The description displays in Digital Experiences - All Sites in Setup and helps with site identification.",
          "name": "description",
          "summary": "Description of the site.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "aliases": [
            "targetusername",
            "u"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "community:create",
      "pluginAlias": "@salesforce/plugin-community",
      "pluginName": "@salesforce/plugin-community",
      "pluginType": "jit",
      "strict": false,
      "summary": "Create an Experience Cloud site using a template.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "community",
        "create.js"
      ],
      "aliasPermutations": [
        "force:community:create",
        "community:force:create",
        "community:create:force",
        "force:create:community",
        "create:force:community",
        "create:community:force"
      ],
      "permutations": [
        "community:create",
        "create:community"
      ]
    },
    "community:publish": {
      "aliases": [
        "force:community:publish"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Each time you publish a site, you update the live site with the most recent updates. When you publish an Experience Builder site for the first time, you make the site's URL live and enable login access for site members.\n\nIn addition to publishing, you must activate a site to send a welcome email to all site members. Activation is also required to set up SEO for Experience Builder sites. To activate a site, update the status field of the Network type in Metadata API. (https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_network.htm) Alternatively, in Experience Workspaces, go to Administration | Settings, and click Activate.\n\nAn email notification informs you when your changes are live on the published site. The site publish process is an async job that generates a jobId. To check the site publish status manually, query the BackgroundOperation object and enter the jobId as the Id. See ‘BackgroundOperation’ in the Object Reference for the Salesforce Platform for more information. (https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_backgroundoperation.htm)\n\nIf the job doesn’t complete within 15 minutes, it times out. You receive an error message and must restart the site publish process. Completed jobs expire after 24 hours and are removed from the database.",
      "examples": [
        "Publish the Experience Builder site with name \"My Customer Site':\n<%= config.bin %> <%= command.id %> --name 'My Customer Site'"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Name of the Experience Builder site to publish.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "aliases": [
            "targetusername",
            "u"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "community:publish",
      "pluginAlias": "@salesforce/plugin-community",
      "pluginName": "@salesforce/plugin-community",
      "pluginType": "jit",
      "strict": true,
      "summary": "Publish an Experience Builder site to make it live.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "community",
        "publish.js"
      ],
      "aliasPermutations": [
        "force:community:publish",
        "community:force:publish",
        "community:publish:force",
        "force:publish:community",
        "publish:force:community",
        "publish:community:force"
      ],
      "permutations": [
        "community:publish",
        "publish:community"
      ]
    },
    "community:list:template": {
      "aliases": [
        "force:community:template:list"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "See 'Which Experience Cloud Template Should I Use?' (https://help.salesforce.com/s/articleView?id=sf.siteforce_commtemp_intro.htm&type=5) in Salesforce Help for more information about the different template types available for Experience Cloud.",
      "examples": [
        "Retrieve the template list from an org with alias my-scratch-org:\n<%= config.bin %> <%= command.id %> --target-org my-scratch-org"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "aliases": [
            "targetusername",
            "u"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "community:list:template",
      "pluginAlias": "@salesforce/plugin-community",
      "pluginName": "@salesforce/plugin-community",
      "pluginType": "jit",
      "strict": true,
      "summary": "Retrieve the list of templates available in your org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "community",
        "list",
        "template.js"
      ],
      "aliasPermutations": [
        "force:community:template:list",
        "community:force:template:list",
        "community:template:force:list",
        "community:template:list:force",
        "force:template:community:list",
        "template:force:community:list",
        "template:community:force:list",
        "template:community:list:force",
        "force:template:list:community",
        "template:force:list:community",
        "template:list:force:community",
        "template:list:community:force",
        "force:community:list:template",
        "community:force:list:template",
        "community:list:force:template",
        "community:list:template:force",
        "force:list:community:template",
        "list:force:community:template",
        "list:community:force:template",
        "list:community:template:force",
        "force:list:template:community",
        "list:force:template:community",
        "list:template:force:community",
        "list:template:community:force"
      ],
      "permutations": [
        "community:list:template",
        "list:community:template",
        "list:template:community",
        "community:template:list",
        "template:community:list",
        "template:list:community"
      ]
    },
    "cmdt:generate:field": {
      "aliases": [
        "force:cmdt:field:create",
        "cmdt:field:create"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Similar to a custom object, a custom metadata type has a list of custom fields that represent aspects of the metadata.\n\nThis command creates a metadata file that describes the new custom metadata type field. By default, the file is created in a \"fields\" directory in the current directory. Use the --output-directory to generate the file in the directory that contains the custom metadata type metdata files, such as \"force-app/main/default/objects/MyCmdt__mdt\" for the custom metadata type called MyCmdt.",
      "examples": [
        "Generate a metadata file for a custom checkbox field and add the file to the MyCmdt__mdt/fields directory:\n<%= config.bin %> <%= command.id %> --name MyCheckboxField --type Checkbox --output-directory force-app/main/default/objects/MyCmdt__mdt",
        "Generate a metadata file for a custom picklist field and add a few values:\n<%= config.bin %> <%= command.id %> --name MyPicklistField --type Picklist --picklist-values A --picklist-values B --picklist-values C --output-directory force-app/main/default/objects/MyCmdt__mdt",
        "Generate a metadata file for a custom number field and specify 2 decimal places:\n<%= config.bin %> <%= command.id %> --name MyNumberField --type Number --decimal-places 2 --output-directory force-app/main/default/objects/MyCmdt__mdt"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "aliases": [
            "fieldname"
          ],
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Unique name for the field.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "type": {
          "aliases": [
            "fieldtype"
          ],
          "char": "f",
          "description": "You can't use this command to create a custom metadata type field of type \"Metadata Relationship\". Use the Salesforce Setup UI instead.",
          "name": "type",
          "required": true,
          "summary": "Type of the field.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "Checkbox",
            "Date",
            "DateTime",
            "Email",
            "Number",
            "Percent",
            "Phone",
            "Picklist",
            "Text",
            "TextArea",
            "LongTextArea",
            "Url"
          ],
          "type": "option"
        },
        "picklist-values": {
          "aliases": [
            "picklistvalues"
          ],
          "char": "p",
          "name": "picklist-values",
          "summary": "Picklist values; required for picklist fields.",
          "delimiter": ",",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "decimal-places": {
          "aliases": [
            "decimalplaces"
          ],
          "char": "s",
          "description": "The value must be greater than or equal to zero. Default value is 0.",
          "name": "decimal-places",
          "summary": "Number of decimal places to use for number or percent fields.",
          "default": 0,
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "label": {
          "char": "l",
          "name": "label",
          "summary": "Label for the field.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "output-directory": {
          "aliases": [
            "outputdir",
            "outputdirectory"
          ],
          "char": "d",
          "description": "New files are automatically created in the \"fields\" directory. The location can be an absolute path or relative to the current working directory. The default is the current directory.",
          "name": "output-directory",
          "summary": "Directory to store newly-created field definition files.",
          "default": "",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "cmdt:generate:field",
      "pluginAlias": "@salesforce/plugin-custom-metadata",
      "pluginName": "@salesforce/plugin-custom-metadata",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a field for a custom metadata type based on the provided field type.",
      "enableJsonFlag": true,
      "requiresProject": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "cmdt",
        "generate",
        "field.js"
      ],
      "aliasPermutations": [
        "force:cmdt:field:create",
        "cmdt:force:field:create",
        "cmdt:field:force:create",
        "cmdt:field:create:force",
        "force:field:cmdt:create",
        "field:force:cmdt:create",
        "field:cmdt:force:create",
        "field:cmdt:create:force",
        "force:field:create:cmdt",
        "field:force:create:cmdt",
        "field:create:force:cmdt",
        "field:create:cmdt:force",
        "force:cmdt:create:field",
        "cmdt:force:create:field",
        "cmdt:create:force:field",
        "cmdt:create:field:force",
        "force:create:cmdt:field",
        "create:force:cmdt:field",
        "create:cmdt:force:field",
        "create:cmdt:field:force",
        "force:create:field:cmdt",
        "create:force:field:cmdt",
        "create:field:force:cmdt",
        "create:field:cmdt:force",
        "cmdt:field:create",
        "field:cmdt:create",
        "field:create:cmdt",
        "cmdt:create:field",
        "create:cmdt:field",
        "create:field:cmdt"
      ],
      "permutations": [
        "cmdt:generate:field",
        "generate:cmdt:field",
        "generate:field:cmdt",
        "cmdt:field:generate",
        "field:cmdt:generate",
        "field:generate:cmdt"
      ]
    },
    "cmdt:generate:fromorg": {
      "aliases": [
        "force:cmdt:generate"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Use this command to migrate existing custom objects or custom settings in an org to custom metadata types. If a field of the Salesforce object is of an unsupported type, the field type is automatically converted to text. Run \"<%= config.bin %> cmdt generate field --help\" to see the list of supported cmdt field types, listed in the --type flag summary. Use the --ignore-unsupported to ignore these fields.\n\nThis command creates the metadata files that describe the new custom metadata type and its fields in the \"force-app/main/default/objects/TypeName__mdt\" directory by default, where \"TypeName\" is the value of the required --dev-name flag. Use --type-output-directory to create them in a different directory.",
      "examples": [
        "Generate a custom metadata type from a custom object called MySourceObject__c in your default org:\n<%= config.bin %> <%= command.id %> --dev-name MyCMDT --sobject MySourceObject__c",
        "Generate a custom metadata type from a custom object in an org with alias my-scratch-org; ignore unsupported field types instead of converting them to text:\n<%= config.bin %> <%= command.id %> --dev-name MyCMDT --sobject MySourceObject__c --ignore-unsupported --target-org my-scratch-org",
        "Generate a protected custom metadata type from a custom object:\n<%= config.bin %> <%= command.id %> --dev-name MyCMDT --sobject MySourceObject__c --visibility Protected",
        "Generate a protected custom metadata type from a custom setting with a specific singular and plural label:\n<%= config.bin %> <%= command.id %> --dev-name MyCMDT --label \"My CMDT\" --plural-label \"My CMDTs\" --sobject MySourceSetting__c --visibility Protected",
        "Generate a custom metadata type and put the resulting metadata files in the specified directory:\n<%= config.bin %> <%= command.id %> --dev-name MyCMDT --sobject MySourceObject__c --type-output-directory path/to/my/cmdt/directory",
        "Generate a custom metadata type and put the resulting record metadata file(s) in the specified directory:\n<%= config.bin %> <%= command.id %> --dev-name MyCMDT --sobject MySourceObject__c --records-output-dir path/to/my/cmdt/record/directory"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "aliases": [
            "targetusername",
            "u"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "dev-name": {
          "aliases": [
            "devname"
          ],
          "char": "n",
          "name": "dev-name",
          "required": true,
          "summary": "Name of the custom metadata type.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "label": {
          "char": "l",
          "name": "label",
          "summary": "Label for the custom metadata type.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "plural-label": {
          "aliases": [
            "plurallabel"
          ],
          "char": "p",
          "name": "plural-label",
          "summary": "Plural version of the label value; if blank, uses label.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "visibility": {
          "char": "v",
          "description": "For more information on what each option means, see this topic in Salesforce Help: https://help.salesforce.com/s/articleView?id=sf.custommetadatatypes_ui_create.htm&type=5.",
          "name": "visibility",
          "summary": "Who can see the custom metadata type.",
          "default": "Public",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "PackageProtected",
            "Protected",
            "Public"
          ],
          "type": "option"
        },
        "sobject": {
          "aliases": [
            "sobjectname"
          ],
          "char": "s",
          "name": "sobject",
          "required": true,
          "summary": "API name of the source Salesforce object used to generate the custom metadata type.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "ignore-unsupported": {
          "aliases": [
            "ignoreunsupported"
          ],
          "char": "i",
          "description": "In this context, \"ignore\" means that the fields aren't created. The default behavior is to create fields of type text and convert the field values to text.",
          "name": "ignore-unsupported",
          "summary": "Ignore unsupported field types.",
          "allowNo": false,
          "type": "boolean"
        },
        "type-output-directory": {
          "aliases": [
            "typeoutputdir"
          ],
          "char": "d",
          "name": "type-output-directory",
          "summary": "Directory to store newly-created custom metadata type files.",
          "default": "force-app/main/default/objects",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "records-output-dir": {
          "aliases": [
            "recordsoutputdir"
          ],
          "char": "r",
          "name": "records-output-dir",
          "summary": "Directory to store newly-created custom metadata record files.",
          "default": "force-app/main/default/customMetadata",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "cmdt:generate:fromorg",
      "pluginAlias": "@salesforce/plugin-custom-metadata",
      "pluginName": "@salesforce/plugin-custom-metadata",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a custom metadata type and all its records from a Salesforce object.",
      "enableJsonFlag": true,
      "requiresProject": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "cmdt",
        "generate",
        "fromorg.js"
      ],
      "aliasPermutations": [
        "force:cmdt:generate",
        "cmdt:force:generate",
        "cmdt:generate:force",
        "force:generate:cmdt",
        "generate:force:cmdt",
        "generate:cmdt:force"
      ],
      "permutations": [
        "cmdt:generate:fromorg",
        "generate:cmdt:fromorg",
        "generate:fromorg:cmdt",
        "cmdt:fromorg:generate",
        "fromorg:cmdt:generate",
        "fromorg:generate:cmdt"
      ]
    },
    "cmdt:generate:object": {
      "aliases": [
        "force:cmdt:create",
        "cmdt:create"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "This command creates a metadata file that describes the new custom metadata type. By default, the file is created in the MyCustomType__mdt directory in the current directory, where MyCustomType is the value of the required --type-name flag. Use the --output-directory to generate the file in a package directory with other custom metadata types, such as \"force-app/main/default/objects\".",
      "examples": [
        "Generate a custom metadata type with developer name 'MyCustomType'; this name is also used as the label:\n<%= config.bin %> <%= command.id %> --type-name MyCustomType",
        "Generate a protected custom metadata type with a specific label:\n<%= config.bin %> <%= command.id %> --type-name MyCustomType --label \"Custom Type\" --plural-label \"Custom Types\" --visibility Protected"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "type-name": {
          "aliases": [
            "typename"
          ],
          "char": "n",
          "description": "The name can contain only underscores and alphanumeric characters, and must be unique in your org. It must begin with a letter, not include spaces, not end with an underscore, and not contain two consecutive underscores.",
          "name": "type-name",
          "required": true,
          "summary": "Unique object name for the custom metadata type.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "label": {
          "char": "l",
          "name": "label",
          "summary": "Label for the custom metadata type.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "plural-label": {
          "aliases": [
            "plurallabel"
          ],
          "char": "p",
          "name": "plural-label",
          "summary": "Plural version of the label value; if blank, uses label.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "visibility": {
          "char": "v",
          "description": "For more information on what each option means, see this topic in Salesforce Help: https://help.salesforce.com/s/articleView?id=sf.custommetadatatypes_ui_create.htm&type=5.",
          "name": "visibility",
          "summary": "Who can see the custom metadata type.",
          "default": "Public",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "PackageProtected",
            "Protected",
            "Public"
          ],
          "type": "option"
        },
        "output-directory": {
          "aliases": [
            "outputdir",
            "outputdirectory"
          ],
          "char": "d",
          "description": "The location can be an absolute path or relative to the current working directory. The default is the current directory.",
          "name": "output-directory",
          "summary": "Directory to store the newly-created custom metadata type files",
          "default": "",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "cmdt:generate:object",
      "pluginAlias": "@salesforce/plugin-custom-metadata",
      "pluginName": "@salesforce/plugin-custom-metadata",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a new custom metadata type in the current project.",
      "enableJsonFlag": true,
      "requiresProject": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "cmdt",
        "generate",
        "object.js"
      ],
      "aliasPermutations": [
        "force:cmdt:create",
        "cmdt:force:create",
        "cmdt:create:force",
        "force:create:cmdt",
        "create:force:cmdt",
        "create:cmdt:force",
        "cmdt:create",
        "create:cmdt"
      ],
      "permutations": [
        "cmdt:generate:object",
        "generate:cmdt:object",
        "generate:object:cmdt",
        "cmdt:object:generate",
        "object:cmdt:generate",
        "object:generate:cmdt"
      ]
    },
    "cmdt:generate:record": {
      "aliases": [
        "force:cmdt:record:create",
        "cmdt:record:create"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "The custom metadata type must already exist in your project. You must specify a name for the new record. Use name=value pairs to specify the values for the fields, such as MyTextField=\"some text here\" or MyNumberField=32.",
      "examples": [
        "Create a record metadata file for custom metadata type 'MyCMT' with specified values for two custom fields:\n<%= config.bin %> <%= command.id %> --type-name MyCMT__mdt --record-name MyRecord My_Custom_Field_1=Foo My_Custom_Field_2=Bar",
        "Create a protected record metadata file for custom metadata type 'MyCMT' with a specific label and values specified for two custom fields:\n<%= config.bin %> <%= command.id %> --type-name MyCMT__mdt --record-name MyRecord --label \"My Record\" --protected true My_Custom_Field_1=Foo My_Custom_Field_2=Bar"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "type-name": {
          "aliases": [
            "typename"
          ],
          "char": "t",
          "name": "type-name",
          "required": true,
          "summary": "API name of the custom metadata type to create a record for; must end in \"__mdt\".",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "record-name": {
          "aliases": [
            "recordname"
          ],
          "char": "n",
          "name": "record-name",
          "required": true,
          "summary": "Name of the new record.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "label": {
          "char": "l",
          "name": "label",
          "summary": "Label for the new record.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "protected": {
          "char": "p",
          "description": "Protected records can only be accessed by code in the same managed package namespace.",
          "name": "protected",
          "summary": "Protect the record when it's in a managed package.",
          "default": "false",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "true",
            "false"
          ],
          "type": "option"
        },
        "input-directory": {
          "aliases": [
            "inputdir",
            "inputdirectory"
          ],
          "char": "i",
          "name": "input-directory",
          "summary": "Directory from which to get the custom metadata type definition from.",
          "default": "force-app/main/default/objects",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "output-directory": {
          "aliases": [
            "outputdir",
            "outputdirectory"
          ],
          "char": "d",
          "name": "output-directory",
          "summary": "Directory to store newly-created custom metadata record files.",
          "default": "force-app/main/default/customMetadata",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "cmdt:generate:record",
      "pluginAlias": "@salesforce/plugin-custom-metadata",
      "pluginName": "@salesforce/plugin-custom-metadata",
      "pluginType": "jit",
      "strict": false,
      "summary": "Generate a new record for a given custom metadata type in the current project.",
      "enableJsonFlag": true,
      "requiresProject": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "cmdt",
        "generate",
        "record.js"
      ],
      "aliasPermutations": [
        "force:cmdt:record:create",
        "cmdt:force:record:create",
        "cmdt:record:force:create",
        "cmdt:record:create:force",
        "force:record:cmdt:create",
        "record:force:cmdt:create",
        "record:cmdt:force:create",
        "record:cmdt:create:force",
        "force:record:create:cmdt",
        "record:force:create:cmdt",
        "record:create:force:cmdt",
        "record:create:cmdt:force",
        "force:cmdt:create:record",
        "cmdt:force:create:record",
        "cmdt:create:force:record",
        "cmdt:create:record:force",
        "force:create:cmdt:record",
        "create:force:cmdt:record",
        "create:cmdt:force:record",
        "create:cmdt:record:force",
        "force:create:record:cmdt",
        "create:force:record:cmdt",
        "create:record:force:cmdt",
        "create:record:cmdt:force",
        "cmdt:record:create",
        "record:cmdt:create",
        "record:create:cmdt",
        "cmdt:create:record",
        "create:cmdt:record",
        "create:record:cmdt"
      ],
      "permutations": [
        "cmdt:generate:record",
        "generate:cmdt:record",
        "generate:record:cmdt",
        "cmdt:record:generate",
        "record:cmdt:generate",
        "record:generate:cmdt"
      ]
    },
    "cmdt:generate:records": {
      "aliases": [
        "force:cmdt:record:insert",
        "cmdt:record:insert"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "The custom metadata type must already exist in your project. By default, the Name column is used to determine the record name; use the --name-column flag to specify a different column.",
      "examples": [
        "Generate record metadata files from values in a CSV file for the custom metadata type MyCmdt. Use 'Name' as the column that specifies the record name:\n<%= config.bin %> <%= command.id %> --csv path/to/my.csv --type-name MyCmdt",
        "Generate record metadata files from a CSV file in the directory different from the default, and use 'PrimaryKey' as the column that specifies the record name:\n<%= config.bin %> <%= command.id %> --csv path/to/my.csv --type-name MyCmdt --input-directory path/to/my/cmdt/directory --name-column \"PrimaryKey\""
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "csv": {
          "aliases": [
            "filepath"
          ],
          "char": "f",
          "name": "csv",
          "required": true,
          "summary": "Pathname of the CSV file.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "type-name": {
          "aliases": [
            "typename"
          ],
          "char": "t",
          "description": "The '__mdt' suffix is appended to the end of the name if it's omitted.",
          "name": "type-name",
          "required": true,
          "summary": "API name of the custom metadata type to create a record for.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "input-directory": {
          "aliases": [
            "inputdir",
            "inputdirectory"
          ],
          "char": "i",
          "name": "input-directory",
          "summary": "Directory from which to get the custom metadata type definition from.",
          "default": "force-app/main/default/objects",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "output-directory": {
          "aliases": [
            "outputdir",
            "outputdirectory"
          ],
          "char": "d",
          "name": "output-directory",
          "summary": "Directory to store newly-created custom metadata record files.",
          "default": "force-app/main/default/customMetadata",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name-column": {
          "aliases": [
            "namecolumn"
          ],
          "char": "n",
          "name": "name-column",
          "summary": "Column used to determine the name of the record.",
          "default": "Name",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "cmdt:generate:records",
      "pluginAlias": "@salesforce/plugin-custom-metadata",
      "pluginName": "@salesforce/plugin-custom-metadata",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate new custom metadata type records from a CSV file.",
      "enableJsonFlag": true,
      "requiresProject": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "cmdt",
        "generate",
        "records.js"
      ],
      "aliasPermutations": [
        "force:cmdt:record:insert",
        "cmdt:force:record:insert",
        "cmdt:record:force:insert",
        "cmdt:record:insert:force",
        "force:record:cmdt:insert",
        "record:force:cmdt:insert",
        "record:cmdt:force:insert",
        "record:cmdt:insert:force",
        "force:record:insert:cmdt",
        "record:force:insert:cmdt",
        "record:insert:force:cmdt",
        "record:insert:cmdt:force",
        "force:cmdt:insert:record",
        "cmdt:force:insert:record",
        "cmdt:insert:force:record",
        "cmdt:insert:record:force",
        "force:insert:cmdt:record",
        "insert:force:cmdt:record",
        "insert:cmdt:force:record",
        "insert:cmdt:record:force",
        "force:insert:record:cmdt",
        "insert:force:record:cmdt",
        "insert:record:force:cmdt",
        "insert:record:cmdt:force",
        "cmdt:record:insert",
        "record:cmdt:insert",
        "record:insert:cmdt",
        "cmdt:insert:record",
        "insert:cmdt:record",
        "insert:record:cmdt"
      ],
      "permutations": [
        "cmdt:generate:records",
        "generate:cmdt:records",
        "generate:records:cmdt",
        "cmdt:records:generate",
        "records:cmdt:generate",
        "records:generate:cmdt"
      ]
    },
    "dev:audit:messages": {
      "aliases": [],
      "args": {},
      "examples": [
        "Audit messages using default directories:\n<%= config.bin %> <%= command.id %>",
        "Audit messages in the \"messages\" directory in the current working directory; the plugin's source directory is in \"src\":\n<%= config.bin %> <%= command.id %> --messages-dir ./messages --source-dir ./src"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "project-dir": {
          "aliases": [
            "projectdir"
          ],
          "char": "p",
          "name": "project-dir",
          "summary": "Location of the project where messages are to be audited.",
          "default": ".",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "messages-dir": {
          "aliases": [
            "messagesdir"
          ],
          "char": "m",
          "description": "The default is the \"messages\" directory in the current working directory.",
          "name": "messages-dir",
          "summary": "Directory that contains the plugin's message files.",
          "default": "messages",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "source-dir": {
          "aliases": [
            "sourcedir"
          ],
          "char": "s",
          "description": "The default is the \"src\" directory in the current working directory.",
          "name": "source-dir",
          "summary": "Directory that contains the plugin's source code.",
          "default": "src",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "dev:audit:messages",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Audit messages in a plugin's messages directory to locate unused messages and missing messages that have references in source code.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "audit",
        "messages.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:audit:messages",
        "audit:dev:messages",
        "audit:messages:dev",
        "dev:messages:audit",
        "messages:dev:audit",
        "messages:audit:dev"
      ]
    },
    "dev:convert:messages": {
      "aliases": [],
      "args": {},
      "description": "Preserves the filename and the original messages file, then creates a new file with the Markdown extension and standard headers for the command and flag summaries, descriptions, and so on. After you review the new Markdown file, delete the old .json file.",
      "examples": [
        "Convert the my-command.json message file into my-command.md with the standard messages headers:\n<%= config.bin %> <%= command.id %> --filename my-command.json",
        "Similar to previous example, but specify the plugin project directory:",
        "<%= config.bin %> <%= command.id %> --project-dir ./path/to/plugin --filename my-command.json"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "project-dir": {
          "aliases": [
            "projectdir"
          ],
          "char": "p",
          "name": "project-dir",
          "summary": "Location of the project whose messages are to be converted.",
          "default": ".",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "file-name": {
          "aliases": [
            "filename"
          ],
          "char": "f",
          "name": "file-name",
          "required": true,
          "summary": "Filename to convert.",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "dev:convert:messages",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Convert a .json messages file into Markdown.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "convert",
        "messages.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:convert:messages",
        "convert:dev:messages",
        "convert:messages:dev",
        "dev:messages:convert",
        "messages:dev:convert",
        "messages:convert:dev"
      ]
    },
    "dev:convert:script": {
      "aliases": [],
      "args": {},
      "description": "Important: Use this command only to get started on the sfdx->sf script migration. We don't guarantee that the new sf-style command replacements work correctly or as you expect. You must test, and probably update, the new script before putting it into production. We also don't guarantee that the JSON results are the same as before. \n\nThis command can convert a large part of your script, but possibly not all. There are some sfdx-style commands that don't have an obvious sf-style equivalent. In this case, this command doesn't replace the sfdx-style command but instead adds a comment to remind you that you must convert it manually. See the Salesforce CLI Command Reference for migration information about each deprecated sfdx-style command: https://developer.salesforce.com/docs/atlas.en-us.sfdx_cli_reference.meta/sfdx_cli_reference/cli_reference.htm.\n\nThis command is interactive; as it scans your script, it prompts you when it finds an sfdx-style command or flag and asks if you want to convert it to the displayed suggestion. The command doesn't update the script file directly; rather, it creates a new file whose name is the original name but with \"-converted\" appended to it. The script replaces all instances of \"sfdx\" with \"sf\". For each prompt you answer \"y\" to, the command replaces the sfdx-style names with their equivalent sf-style ones. For example, \"sfdx force:apex:execute --targetusername myscratch\" is replaced with \"sf apex run --target-org myscratch\".",
      "examples": [
        "Convert the YAML file called \"myScript.yml\" located in the current directory; the new file that contains the replacements is called \"myScript-converted.yml\":\n<%= config.bin %> <%= command.id %> --script ./myScript.yml"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "script": {
          "char": "s",
          "name": "script",
          "required": true,
          "summary": "Filepath to the script you want to convert.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "no-prompt": {
          "hidden": true,
          "name": "no-prompt",
          "summary": "Don't prompt for suggested replacements.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "dev:convert:script",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Convert a script file that contains deprecated sfdx-style commands to use the new sf-style commands instead.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "convert",
        "script.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:convert:script",
        "convert:dev:script",
        "convert:script:dev",
        "dev:script:convert",
        "script:dev:convert",
        "script:convert:dev"
      ]
    },
    "dev:configure:repo": {
      "aliases": [],
      "args": {},
      "description": "Sets up labels and exempts the CLI bot for branch protection and PR rules.",
      "examples": [
        "Configure the repo \"testPackageRelease\", with owner \"salesforcecli\", for GitHub Actions.\n<%= config.bin %> <%= command.id %> --repository salesforcecli/testPackageRelease"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "repository": {
          "char": "r",
          "name": "repository",
          "required": true,
          "summary": "GitHub owner/repo for which you want to configure GitHub Actions.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "dry-run": {
          "aliases": [
            "dryrun"
          ],
          "char": "d",
          "name": "dry-run",
          "summary": "Make no changes.",
          "allowNo": false,
          "type": "boolean"
        },
        "bot": {
          "char": "b",
          "name": "bot",
          "summary": "GitHub login/username for the bot.",
          "default": "SF-CLI-BOT",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hidden": true,
      "hiddenAliases": [],
      "id": "dev:configure:repo",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Configure a GitHub repo for the GitHub Actions pipeline.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "configure",
        "repo.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:configure:repo",
        "configure:dev:repo",
        "configure:repo:dev",
        "dev:repo:configure",
        "repo:dev:configure",
        "repo:configure:dev"
      ]
    },
    "dev:configure:secrets": {
      "aliases": [],
      "args": {},
      "description": "Inspects a repo's yaml files and verifies that secrets required are available for the repo (either set at the repo level or shared via organization-level secrets).\n\nThis command requires scope:admin permissions to inspect the org secrets and admin access to the repo to inspect the repo secrets.",
      "examples": [
        "Ensure secrets access for the repo \"testPackageRelease\", with owner \"salesforcecli\":",
        "<%= config.bin %> <%= command.id %> --repository salesforcecli/testPackageRelease"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "repository": {
          "char": "r",
          "name": "repository",
          "required": true,
          "summary": "Github owner/repo.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "dry-run": {
          "aliases": [
            "dryrun"
          ],
          "char": "d",
          "name": "dry-run",
          "summary": "Make no changes.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hidden": true,
      "hiddenAliases": [],
      "id": "dev:configure:secrets",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Ensures a GitHub repo has correct access to secrets based on its workflows.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "configure",
        "secrets.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:configure:secrets",
        "configure:dev:secrets",
        "configure:secrets:dev",
        "dev:secrets:configure",
        "secrets:dev:configure",
        "secrets:configure:dev"
      ]
    },
    "dev:generate:command": {
      "aliases": [],
      "args": {},
      "description": "You must run this command from within a plugin directory, such as the directory created with the \"sf dev generate plugin\" command.\n\nThe command generates basic source files, messages (\\*.md), and test files for your new command. The Typescript files contain import statements for the minimum required Salesforce libraries, and scaffold some basic code. The new type names come from the value you passed to the --name flag.\n\nThe command updates the package.json file, so if it detects conflicts with the existing file, you're prompted whether you want to overwrite the file. There are a number of package.json updates required for a new command, so we recommend you answer \"y\" so the command takes care of them all. If you answer \"n\", you must update the package.json file manually.",
      "examples": [
        "Generate the files for a new \"sf my exciting command\":\n<%= config.bin %> <%= command.id %> --name my:exciting:command"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Name of the new command. Use colons to separate the topic and command names.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "force": {
          "name": "force",
          "summary": "Overwrite existing files.",
          "allowNo": false,
          "type": "boolean"
        },
        "dry-run": {
          "name": "dry-run",
          "summary": "Display the changes that would be made without writing them to disk.",
          "allowNo": false,
          "type": "boolean"
        },
        "nuts": {
          "name": "nuts",
          "summary": "Generate a NUT test file for the command.",
          "allowNo": true,
          "type": "boolean"
        },
        "unit": {
          "name": "unit",
          "summary": "Generate a unit test file for the command.",
          "allowNo": true,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "dev:generate:command",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a new sf command.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "generate",
        "command.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:generate:command",
        "generate:dev:command",
        "generate:command:dev",
        "dev:command:generate",
        "command:dev:generate",
        "command:generate:dev"
      ]
    },
    "dev:generate:flag": {
      "aliases": [],
      "args": {},
      "description": "You must run this command from within a plugin directory, such as the directory created with the \"sf dev generate plugin\" command.\n\nThis command is interactive. It first discovers all the commands currently implemented in the plugin, and asks you which you want to create a new flag for. It then prompts for other flag properties, such as its long name, optional short name, type, whether it's required, and so on. Long flag names must be kebab-case and not camelCase. The command doesn't let you use an existing long or short flag name. When the command completes, the Typescript file for the command is updated with the code for the new flag.\n\nUse the --dry-run flag to review new code for the command file without actually updating it.",
      "examples": [
        "Generate a new flag and update the command file:\n<%= config.bin %> <%= command.id %>",
        "Don't actually update the command file, just view the generated code:\n<%= config.bin %> <%= command.id %> --dry-run"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "dry-run": {
          "aliases": [
            "dryrun"
          ],
          "char": "d",
          "name": "dry-run",
          "summary": "Print new flag code instead of adding it to the command file.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "dev:generate:flag",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a flag for an existing command.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "generate",
        "flag.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:generate:flag",
        "generate:dev:flag",
        "generate:flag:dev",
        "dev:flag:generate",
        "flag:dev:generate",
        "flag:generate:dev"
      ]
    },
    "dev:generate:library": {
      "aliases": [],
      "args": {},
      "description": "This command is interactive. You're prompted for information to populate the new library, such as the npm scope (which must start with \"@\"), the name and description of the library, and its GitHub organization. The command clones the 'forcedotcom/library-template' GitHub repository, installs the library's npm package dependencies using yarn install, and updates the package properties.\n\nWhen the command completes, your new library contains a few sample source and test files to get you started.",
      "examples": [
        "<%= config.bin %> <%= command.id %>"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "dry-run": {
          "name": "dry-run",
          "summary": "Display the changes that would be made without writing them to disk.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hidden": true,
      "hiddenAliases": [],
      "id": "dev:generate:library",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a new library.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "generate",
        "library.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "dev:generate:library",
        "generate:dev:library",
        "generate:library:dev",
        "dev:library:generate",
        "library:dev:generate",
        "library:generate:dev"
      ]
    },
    "dev:generate:plugin": {
      "aliases": [
        "plugins:generate"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "This command is interactive. You're prompted for information to populate your new plugin, such as its name, description, author, and percentage of code coverage you want. The command clones the 'salesforcecli/plugin-template-sf' GitHub repository, installs the plug-in's npm package dependencies using yarn install, and updates the package properties.\n\nWhen the command completes, your new plugin contains the source, message, and test files for a sample \"sf hello world\" command.",
      "examples": [
        "<%= config.bin %> <%= command.id %>"
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "dry-run": {
          "name": "dry-run",
          "summary": "Display the changes that would be made without writing them to disk.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "dev:generate:plugin",
      "pluginAlias": "@salesforce/plugin-dev",
      "pluginName": "@salesforce/plugin-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Generate a new sf plugin.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "dev",
        "generate",
        "plugin.js"
      ],
      "aliasPermutations": [
        "plugins:generate",
        "generate:plugins"
      ],
      "permutations": [
        "dev:generate:plugin",
        "generate:dev:plugin",
        "generate:plugin:dev",
        "dev:plugin:generate",
        "plugin:dev:generate",
        "plugin:generate:dev"
      ]
    },
    "devops:pipeline:activate": {
      "aliases": [],
      "args": {},
      "description": "A pipeline must have at least one stage before you activate it. You can't modify the pipeline stages after you activate and promote changes through it.",
      "examples": [
        "Activate a pipeline using the pipeline ID.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --pipeline-id 0XB000000000001"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "pipeline-id": {
          "name": "pipeline-id",
          "required": true,
          "summary": "ID of the pipeline.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:pipeline:activate",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Activate a DevOps Center pipeline for deployments.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "pipeline",
        "activate.js"
      ]
    },
    "devops:pipeline:attach-project": {
      "aliases": [],
      "args": {},
      "description": "You can attach a project to only one pipeline.",
      "examples": [
        "Attach a project to a pipeline using the project ID and pipeline ID.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --pipeline-id 0XB000000000001 --project-id 0Hn000000000001"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "pipeline-id": {
          "name": "pipeline-id",
          "required": true,
          "summary": "ID of the pipeline.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "project-id": {
          "name": "project-id",
          "required": true,
          "summary": "ID of the DevOps Center project.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:pipeline:attach-project",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Attach a DevOps Center project to a pipeline.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "pipeline",
        "attach-project.js"
      ]
    },
    "devops:pipeline:create": {
      "aliases": [],
      "args": {},
      "description": "Provide the URL of an existing repository, or use `--create-repo` with a repository name to create one. After you create the pipeline, add stages, and activate the pipeline.",
      "examples": [
        "Create a pipeline and associate it with an existing GitHub repository.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --name \"Release Pipeline\" --repo https://github.com/myorg/myrepo",
        "Create a pipeline and associate it with a new GitHub repository.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --name \"Release Pipeline\" --repo my-new-repo --repo-type github --repo-owner myorg --create-repo",
        "Create a pipeline with a description and associate it with a Bitbucket repository.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --name \"Release Pipeline\" --repo https://bitbucket.org/myorg/myrepo --description \"Main CI/CD pipeline for production releases\""
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Name of the pipeline.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "repo": {
          "char": "r",
          "name": "repo",
          "required": true,
          "summary": "URL of an existing repository or the name of a repository to create.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "repo-type": {
          "name": "repo-type",
          "summary": "Type of the source code repository. Required when creating a repository using '--create-repo'.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "github",
            "bitbucket"
          ],
          "type": "option"
        },
        "create-repo": {
          "name": "create-repo",
          "summary": "Create a repository if it doesn't exist.",
          "allowNo": false,
          "type": "boolean"
        },
        "repo-owner": {
          "name": "repo-owner",
          "summary": "Owner (organization or user) of the repository. Required when creating a repository using '--create-repo'.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "bitbucket-project": {
          "name": "bitbucket-project",
          "summary": "Bitbucket project key for the repository. Used when creating a Bitbucket repository with '--create-repo'.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "description": {
          "char": "d",
          "name": "description",
          "summary": "Description of the pipeline.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:pipeline:create",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Create a DevOps Center pipeline.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "pipeline",
        "create.js"
      ]
    },
    "devops:project:create": {
      "aliases": [],
      "args": {},
      "description": "Creates a new DevOps Center project with the specified name and optional description.",
      "examples": [
        "Create a new DevOps Center project in the specified org.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --name \"MyApp Release\"",
        "Create a project with a name and description.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --name \"Platform Update\" --description \"Platform services update\""
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Name of the new DevOps Center project.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "description": {
          "char": "d",
          "name": "description",
          "summary": "Description of the new project; if not specified, the description is blank.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:project:create",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Create a DevOps Center project in a DevOps Center org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "project",
        "create.js"
      ]
    },
    "devops:project:list": {
      "aliases": [],
      "args": {},
      "description": "This command queries the DevopsProject standard object and returns the project Id, Name, and Description for each project found.",
      "examples": [
        "List all DevOps Center projects in an org with alias \"my-devops-org\":\n<%= config.bin %> <%= command.id %> --target-org my-devops-org",
        "List projects using an org's username:\n<%= config.bin %> <%= command.id %> --target-org devops-center@example.com"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:project:list",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "List all DevOps Center projects in a Salesforce org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "project",
        "list.js"
      ]
    },
    "devops:pull-request:create": {
      "aliases": [],
      "args": {},
      "description": "The pull request title defaults to the work item subject. The work item must have an associated branch and repository. Requires VCS authentication: set GITHUB_TOKEN (or use `gh auth login`) for GitHub, or set BITBUCKET_TOKEN for Bitbucket.",
      "examples": [
        "Create a pull request for a work item using the default title.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --work-item-name WI-000001",
        "Create a pull request with a custom title and description.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --work-item-id 0Wx000000000001 --title \"Fix: Login timeout\" --body \"Resolves the 30s timeout on the login page\""
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "work-item-name": {
          "char": "n",
          "name": "work-item-name",
          "summary": "Name of the work item, such as WI-000001.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "work-item-id": {
          "char": "w",
          "name": "work-item-id",
          "summary": "ID of the work item.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "title": {
          "name": "title",
          "summary": "Title of the pull request.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "body": {
          "name": "body",
          "summary": "Description of the pull request.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:pull-request:create",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Create a pull request for a work item branch.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "pull-request",
        "create.js"
      ]
    },
    "devops:work-item:create": {
      "aliases": [],
      "args": {},
      "description": "The command creates the work item using the Connect API. Requires a project ID and a subject for the new work item; run the `devops project list` command to get the IDs for all existing projects.",
      "examples": [
        "Create a work item for the project with the specified ID and give the work item the specified subject (title); use the DevOps Center org with alias \"my-devops-org\":\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --project-id 1Qg000000000001 --subject \"Fix login bug\"",
        "Create a work item with a subject and description:\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --project-id 1Qg000000000001 --subject \"Add dark mode\" --description \"Implement dark mode toggle in settings page\""
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "project-id": {
          "char": "p",
          "name": "project-id",
          "required": true,
          "summary": "ID of the DevOps Center project to create the work item in.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "subject": {
          "char": "s",
          "name": "subject",
          "required": true,
          "summary": "Subject (title) of the new work item.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "description": {
          "char": "d",
          "name": "description",
          "summary": "Description of the new work item; if not specified, the description is blank.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:work-item:create",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Create a new work item in a DevOps Center project.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "work-item",
        "create.js"
      ]
    },
    "devops:work-item:list": {
      "aliases": [],
      "args": {},
      "description": "Each work item displays the branch, environment, and repository details needed for checkout and promotion. Requires a project ID; run the `devops project list` command to get the IDs for all existing projects.",
      "examples": [
        "List work items for a specific project in the DevOps org with alias \"my-devops-org\":\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --project-id 1Qg000000000001",
        "List work items using JSON output:\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --project-id 1Qg000000000001 --json"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "project-id": {
          "char": "p",
          "name": "project-id",
          "required": true,
          "summary": "ID of the DevOps Center project to list work items for.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:work-item:list",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "List all work items for a DevOps Center project.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "work-item",
        "list.js"
      ]
    },
    "project:deploy:pipeline:quick": {
      "aliases": [],
      "args": {},
      "description": "The first time you run any \"project deploy pipeline\" command, be sure to authorize the org in which DevOps Center is installed. The easiest way to authorize an org is with the \"org login web\" command.\n\nBefore you run this command, create a validated deployment with the \"project deploy pipeline validate\" command, which returns a job ID. Validated deployments haven't been deployed to the org yet; you deploy them with this command. Either pass the job ID to this command or use the --use-most-recent flag to use the job ID of the most recently validated deployment. For the quick deploy to succeed, the associated validated deployment must also have succeeded.\n\nExecuting this quick deploy command takes less time than a standard deploy because it skips running Apex tests. These tests were previously run as part of the validation. Validating first and then running a quick deploy is useful if the deployment to your production org take several hours and you don’t want to risk a failed deploy.\n\nThis command doesn't support source-tracking. The source you deploy overwrites the corresponding metadata in your org. This command doesn’t attempt to merge your source with the versions in your org.",
      "examples": [
        "Run a quick deploy using your default Devops Center org and a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
        "Asynchronously run a quick deploy of the most recently validated deployment using an org with alias \"my-prod-org\":\n<%= config.bin %> <%= command.id %> --async --use-most-recent --devops-center-username my-prod-org"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "async": {
          "description": "The command immediately returns the job ID and control of the terminal to you. This way, you can continue to use the CLI. To resume the deployment, run \"sf project deploy pipeline resume\". To check the status of the deployment, run \"sf project deploy pipeline report\".",
          "name": "async",
          "summary": "Run the command asynchronously.",
          "allowNo": false,
          "type": "boolean"
        },
        "concise": {
          "exclusive": [
            "verbose"
          ],
          "name": "concise",
          "summary": "Show concise output of the command result.",
          "allowNo": false,
          "type": "boolean"
        },
        "verbose": {
          "name": "verbose",
          "summary": "Show verbose output of the command result.",
          "allowNo": false,
          "type": "boolean"
        },
        "wait": {
          "char": "w",
          "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you and returns the job ID. To check the status of the operation, run \"sf project deploy pipeline report\".",
          "exclusive": [
            "async"
          ],
          "name": "wait",
          "summary": "Number of minutes to wait for command to complete and display results.",
          "default": "33 minutes",
          "hasDynamicHelp": true,
          "helpValue": "<minutes>",
          "multiple": false,
          "type": "option"
        },
        "devops-center-username": {
          "char": "c",
          "name": "devops-center-username",
          "required": true,
          "summary": "Username or alias of the DevOps Center org.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "job-id": {
          "char": "i",
          "description": "The job ID is valid for 10 days from when you started the validation.",
          "name": "job-id",
          "summary": "Job ID of the validated deployment to quick deploy.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "use-most-recent": {
          "char": "r",
          "description": "For performance reasons, this flag uses only job IDs that were validated in the past 3 days or less. If your most recent deployment validation was more than 3 days ago, this flag won't find the job ID.",
          "name": "use-most-recent",
          "summary": "Use the job ID of the most recently validated deployment.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "project:deploy:pipeline:quick",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "state": "beta",
      "strict": true,
      "summary": "Quickly deploy a validated deployment to an org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "project",
        "deploy",
        "pipeline",
        "quick.js"
      ]
    },
    "project:deploy:pipeline:report": {
      "aliases": [],
      "args": {},
      "description": "The first time you run any \"project deploy pipeline\" command, be sure to authorize the org in which DevOps Center is installed. The easiest way to authorize an org is with the \"org login web\" command.\n\nRun this command by either indicating a job ID or specifying the —use-most-recent flag to use the job ID of the most recent deploy operation.",
      "examples": [
        "Check the status using a job ID:\n<%= config.bin %> <%= command.id %> --devops-center-username MyStagingSandbox --job-id 0Af0x000017yLUFCA2",
        "Check the status of the most recent deploy operation:\n<%= config.bin %> <%= command.id %> --devops-center-username MyStagingSandbox --use-most-recent"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "devops-center-username": {
          "char": "c",
          "name": "devops-center-username",
          "required": true,
          "summary": "Username or alias of the DevOps Center org.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "job-id": {
          "char": "i",
          "description": "The job ID is valid for 10 days from when you started the deploy operation.",
          "name": "job-id",
          "summary": "Job ID of the pipeline deployment to check the status of.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "use-most-recent": {
          "char": "r",
          "description": "For performance reasons, this flag uses job IDs for deploy operations that started in the past 3 days or fewer. If your most recent operation was longer than 3 days ago, this flag won't find the job ID.",
          "name": "use-most-recent",
          "summary": "Use the job ID of the most recent deploy operation.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "project:deploy:pipeline:report",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "state": "beta",
      "strict": true,
      "summary": "Check the status of a pipeline deploy operation.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "project",
        "deploy",
        "pipeline",
        "report.js"
      ]
    },
    "project:deploy:pipeline:resume": {
      "aliases": [],
      "args": {},
      "description": "The first time you run any \"project deploy pipeline\" command, be sure to authorize the org in which DevOps Center is installed. The easiest way to authorize an org is with the \"org login web\" command. \n\nUse this command to resume watching a pipeline deploy operation if the original command times out or you specified the --async flag.\n\nRun this command by either indicating a job ID or specifying the --use-most-recent flag to use the job ID of the most recent deploy operation.",
      "examples": [
        "Resume watching a deploy operation using a job ID:\n<%= config.bin %> <%= command.id %> --job-id 0Af0x000017yLUFCA2",
        "Resume watching the most recent deploy operation:\n<%= config.bin %> <%= command.id %> --use-most-recent"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "devops-center-username": {
          "char": "c",
          "name": "devops-center-username",
          "required": true,
          "summary": "Username or alias of the DevOps Center org.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "job-id": {
          "char": "i",
          "description": "These commands return a job ID if they time out or you specified the --async flag:\n\n- sf project deploy pipeline start\n- sf project deploy pipeline validate\n- sf project deploy pipeline quick\n\nThe job ID is valid for 10 days from when you started the deploy operation.",
          "name": "job-id",
          "summary": "Job ID of the pipeline deploy operation you want to resume.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "use-most-recent": {
          "char": "r",
          "description": "For performance reasons, this flag uses job IDs for operations that started in the past 3 days or fewer. If your most recent operation was longer than 3 days ago, this flag won't find a job ID.",
          "name": "use-most-recent",
          "summary": "Use the job ID of the most recent deploy operation.",
          "allowNo": false,
          "type": "boolean"
        },
        "concise": {
          "exclusive": [
            "verbose"
          ],
          "name": "concise",
          "summary": "Show concise output of the command result.",
          "allowNo": false,
          "type": "boolean"
        },
        "verbose": {
          "name": "verbose",
          "summary": "Show verbose output of the command result.",
          "allowNo": false,
          "type": "boolean"
        },
        "wait": {
          "char": "w",
          "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you and returns the job ID. To check the status of the operation, run \"sf project deploy pipeline report\".",
          "exclusive": [
            "async"
          ],
          "name": "wait",
          "summary": "Number of minutes to wait for command to complete and display results.",
          "default": "33 minutes",
          "hasDynamicHelp": true,
          "helpValue": "<minutes>",
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "project:deploy:pipeline:resume",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "state": "beta",
      "strict": true,
      "summary": "Resume watching a pipeline deploy operation.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "project",
        "deploy",
        "pipeline",
        "resume.js"
      ]
    },
    "project:deploy:pipeline:start": {
      "aliases": [],
      "args": {},
      "description": "The first time you run any \"project deploy pipeline\" command, be sure to authorize the org in which DevOps Center is installed. The easiest way to authorize an org is with the \"org login web\" command.\n\nBefore you run this command, changes in the pipeline stage's branch must be merged in the source control repository.",
      "examples": [
        "Deploy changes in the Staging branch to the Staging environment (sandbox), if the previous stage is the bundling stage:\n<%= config.bin %> <%= command.id %> --devops-center-project-name “Recruiting App” --branch-name staging --devops-center-username MyStagingSandbox --bundle-version-name 1.0",
        "Deploy all changes in the main branch to the release environment:\n<%= config.bin %> <%= command.id %> --devops-center-project-name “Recruiting App” --branch-name main --devops-center-username MyReleaseOrg --deploy-all"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "branch-name": {
          "char": "b",
          "name": "branch-name",
          "required": true,
          "summary": "Name of the branch in the source control repository that corresponds to the pipeline stage that you want to deploy the changes to.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "bundle-version-name": {
          "char": "v",
          "description": "You must indicate the bundle version if deploying to the environment that corresponds to the first stage after the bundling stage.",
          "name": "bundle-version-name",
          "summary": "Version name of the bundle.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "deploy-all": {
          "char": "a",
          "description": "If you don’t specify this flag, only changes in the stage’s branch are deployed.",
          "name": "deploy-all",
          "summary": "Deploy all metadata in the branch to the stage's org.",
          "allowNo": false,
          "type": "boolean"
        },
        "devops-center-project-name": {
          "char": "p",
          "name": "devops-center-project-name",
          "required": true,
          "summary": "Name of the DevOps Center project.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "devops-center-username": {
          "char": "c",
          "name": "devops-center-username",
          "required": true,
          "summary": "Username or alias of the DevOps Center org.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "tests": {
          "char": "t",
          "description": "Separate multiple test names with commas. Enclose the entire flag value in double quotes if a test name contains spaces.",
          "name": "tests",
          "summary": "Apex tests to run when --test-level is RunSpecifiedTests.",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "test-level": {
          "char": "l",
          "description": "Valid values are:\n\n- NoTestRun — No tests are run. This test level applies only to deployments to development environments, such as sandbox, Developer Edition, or trial orgs. This test level is the default for development environments.\n\n- RunSpecifiedTests — Runs only the tests that you specify with the --tests flag. Code coverage requirements differ from the default coverage requirements when using this test level. Executed tests must comprise a minimum of 75% code coverage for each class and trigger in the deployment package. This coverage is computed for each class and trigger individually and is different than the overall coverage percentage.\n\n- RunLocalTests — All tests in your org are run, except the ones that originate from installed managed and unlocked packages. This test level is the default for production deployments that include Apex classes or triggers.\n\n- RunAllTestsInOrg — All tests in your org are run, including tests of managed packages.\n\nIf you don’t specify a test level, the default behavior depends on the contents of your deployment package. For more information, see the section \"Running Tests in a Deployment\" in the \"Metadata API Developer Guide\". (https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy_running_tests.htm)",
          "name": "test-level",
          "summary": "Deployment Apex testing level.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "NoTestRun",
            "RunSpecifiedTests",
            "RunLocalTests",
            "RunAllTestsInOrg"
          ],
          "type": "option"
        },
        "async": {
          "description": "The command immediately returns the job ID and control of the terminal to you. This way, you can continue to use the CLI. To resume the deployment, run \"sf project deploy pipeline resume\". To check the status of the deployment, run \"sf project deploy pipeline report\".",
          "name": "async",
          "summary": "Run the command asynchronously.",
          "allowNo": false,
          "type": "boolean"
        },
        "wait": {
          "char": "w",
          "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you and returns the job ID. To check the status of the operation, run \"sf project deploy pipeline report\".",
          "exclusive": [
            "async"
          ],
          "name": "wait",
          "summary": "Number of minutes to wait for command to complete and display results.",
          "default": "33 minutes",
          "hasDynamicHelp": true,
          "helpValue": "<minutes>",
          "multiple": false,
          "type": "option"
        },
        "verbose": {
          "name": "verbose",
          "summary": "Show verbose output of the command result.",
          "allowNo": false,
          "type": "boolean"
        },
        "concise": {
          "exclusive": [
            "verbose"
          ],
          "name": "concise",
          "summary": "Show concise output of the command result.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "project:deploy:pipeline:start",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "state": "beta",
      "strict": true,
      "summary": "Deploy changes from a branch to the pipeline stage’s org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "project",
        "deploy",
        "pipeline",
        "start.js"
      ]
    },
    "project:deploy:pipeline:validate": {
      "aliases": [],
      "args": {},
      "description": "The first time you run any \"project deploy pipeline\" command, be sure to authorize the org in which DevOps Center is installed. The easiest way to authorize an org is with the \"org login web\" command.\n\nA validation runs Apex tests to verify whether a deployment will succeed without actually deploying the metadata to your environment, so you can then quickly deploy the changes later without re-running the tests.",
      "examples": [
        "Perform a validate-only deployment from the Staging branch to the Staging environment (sandbox):\n<%= config.bin %> <%= command.id %> --devops-center-project-name “Recruiting App” --branch-name staging --devops-center-username MyStagingSandbox",
        "Perform a validate-only deployment of all changes from the main branch to the release environment:\n<%= config.bin %> <%= command.id %> --devops-center-project-name “Recruiting App” --branch-name main --devops-center-username MyReleaseOrg --deploy-all"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "branch-name": {
          "char": "b",
          "name": "branch-name",
          "required": true,
          "summary": "Name of the branch in the source control repository that corresponds to the pipeline stage that you want to deploy the changes to.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "bundle-version-name": {
          "char": "v",
          "description": "You must indicate the bundle version if deploying to the environment that corresponds to the first stage after the bundling stage.",
          "name": "bundle-version-name",
          "summary": "Version name of the bundle.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "deploy-all": {
          "char": "a",
          "description": "If you don’t specify this flag, only changes in the stage’s branch are deployed.",
          "name": "deploy-all",
          "summary": "Deploy all metadata in the branch to the stage's org.",
          "allowNo": false,
          "type": "boolean"
        },
        "devops-center-project-name": {
          "char": "p",
          "name": "devops-center-project-name",
          "required": true,
          "summary": "Name of the DevOps Center project.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "devops-center-username": {
          "char": "c",
          "name": "devops-center-username",
          "required": true,
          "summary": "Username or alias of the DevOps Center org.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "tests": {
          "char": "t",
          "description": "Separate multiple test names with commas. Enclose the entire flag value in double quotes if a test name contains spaces.",
          "name": "tests",
          "summary": "Apex tests to run when --test-level is RunSpecifiedTests.",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "test-level": {
          "char": "l",
          "description": "Valid values are:\n\n- NoTestRun — No tests are run. This test level applies only to deployments to development environments, such as sandbox, Developer Edition, or trial orgs. This test level is the default for development environments.\n\n- RunSpecifiedTests — Runs only the tests that you specify with the --tests flag. Code coverage requirements differ from the default coverage requirements when using this test level. Executed tests must comprise a minimum of 75% code coverage for each class and trigger in the deployment package. This coverage is computed for each class and trigger individually and is different than the overall coverage percentage.\n\n- RunLocalTests — All tests in your org are run, except the ones that originate from installed managed and unlocked packages. This test level is the default for production deployments that include Apex classes or triggers.\n\n- RunAllTestsInOrg — All tests in your org are run, including tests of managed packages.\n\nIf you don’t specify a test level, the default behavior depends on the contents of your deployment package. For more information, see the section \"Running Tests in a Deployment\" in the \"Metadata API Developer Guide\". (https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy_running_tests.htm)",
          "name": "test-level",
          "summary": "Deployment Apex testing level.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "NoTestRun",
            "RunSpecifiedTests",
            "RunLocalTests",
            "RunAllTestsInOrg"
          ],
          "type": "option"
        },
        "async": {
          "description": "The command immediately returns the job ID and control of the terminal to you. This way, you can continue to use the CLI. To resume the deployment, run \"sf project deploy pipeline resume\". To check the status of the deployment, run \"sf project deploy pipeline report\".",
          "name": "async",
          "summary": "Run the command asynchronously.",
          "allowNo": false,
          "type": "boolean"
        },
        "wait": {
          "char": "w",
          "description": "If the command continues to run after the wait period, the CLI returns control of the terminal window to you and returns the job ID. To check the status of the operation, run \"sf project deploy pipeline report\".",
          "exclusive": [
            "async"
          ],
          "name": "wait",
          "summary": "Number of minutes to wait for command to complete and display results.",
          "default": "33 minutes",
          "hasDynamicHelp": true,
          "helpValue": "<minutes>",
          "multiple": false,
          "type": "option"
        },
        "verbose": {
          "name": "verbose",
          "summary": "Show verbose output of the command result.",
          "allowNo": false,
          "type": "boolean"
        },
        "concise": {
          "exclusive": [
            "verbose"
          ],
          "name": "concise",
          "summary": "Show concise output of the command result.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "project:deploy:pipeline:validate",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "state": "beta",
      "strict": true,
      "summary": "Perform a validate-only deployment from a branch to the pipeline stage’s org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "project",
        "deploy",
        "pipeline",
        "validate.js"
      ]
    },
    "devops:pipeline:stage:add": {
      "aliases": [],
      "args": {},
      "description": "Inserts an empty stage before the stage specified by `--next-stage-id`. The new stage doesn't include a branch or environment. Configure them separately after you create the stage.",
      "examples": [
        "Add a Development stage before Integration in a specific pipeline.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --pipeline-id 0XB000000000001 --name \"Development\" --next-stage-id 0Xc000000000002",
        "Add a QA stage before UAT in a specific pipeline.\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --pipeline-id 0XB000000000001 --name \"QA\" --next-stage-id 0Xc000000000003"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "pipeline-id": {
          "name": "pipeline-id",
          "required": true,
          "summary": "ID of the pipeline where the stage is added.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "required": true,
          "summary": "Name of the pipeline stage, such as Integration, UAT, or Staging.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "next-stage-id": {
          "name": "next-stage-id",
          "required": true,
          "summary": "ID of the stage that follows the new stage in the pipeline.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:pipeline:stage:add",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Add a stage to a DevOps Center pipeline.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "pipeline",
        "stage",
        "add.js"
      ]
    },
    "devops:work-item:status:update": {
      "aliases": [],
      "args": {},
      "description": "Allowed statuses are \"In Progress\" and \"Ready to Promote\".",
      "examples": [
        "Update a work item status by its name to indicate the work is underway:\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --work-item-name WI-000001 --status \"In Progress\"",
        "Update a work item status by its ID to indicate the changes are ready for promotion:\n<%= config.bin %> <%= command.id %> --target-org my-devops-org --work-item-id 0Wx000000000001 --status \"Ready to Promote\""
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "work-item-name": {
          "char": "n",
          "name": "work-item-name",
          "summary": "Name of the work item, such as WI-000001.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "work-item-id": {
          "char": "w",
          "name": "work-item-id",
          "summary": "ID of the work item.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "status": {
          "name": "status",
          "required": true,
          "summary": "Status to set for the work item. Allowed values: \"In Progress\", \"Ready to Promote\".",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "In Progress",
            "Ready to Promote"
          ],
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "devops:work-item:status:update",
      "pluginAlias": "@salesforce/plugin-devops-center",
      "pluginName": "@salesforce/plugin-devops-center",
      "pluginType": "jit",
      "strict": true,
      "summary": "Update the status of a work item in DevOps Center.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "devops",
        "work-item",
        "status",
        "update.js"
      ]
    },
    "flow:get:log": {
      "aliases": [],
      "args": {},
      "description": "Provide a flow test run ID to display test results for an enqueued or completed asynchronous test run. The test run ID is displayed after running the \"sf flow run test\" command.\n\nTo see code coverage results, use the --code-coverage flag with --result-format. The output displays a high-level summary of the test run and the code coverage values for flow tests in your org. If you specify human-readable result format, use the --detailed-coverage flag to see detailed coverage results for each test method run.",
      "examples": [
        "Display flow test results for your default org using a test run ID:\n<%= config.bin %> <%= command.id %> --test-run-id <test run id>",
        "Similar to previous example, but output the result in JUnit format:\n<%= config.bin %> <%= command.id %> --test-run-id <test run id> --result-format junit",
        "Also retrieve code coverage results and output in JSON format:\n<%= config.bin %> <%= command.id %> --test-run-id <test run id> --code-coverage --json",
        "Specify a directory in which to save the test results from the org with the “me@my.org” username (rather than your default org):\n<%= config.bin %> <%= command.id %> --test-run-id <test run id> --code-coverage --output-dir <path to outputdir> --target-org me@my.org'"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "log-id": {
          "char": "i",
          "name": "log-id",
          "summary": "ID of the specific log to display.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "number": {
          "char": "n",
          "name": "number",
          "summary": "Number of the most recent logs to display.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "output-dir": {
          "char": "d",
          "name": "output-dir",
          "summary": "Directory in which to store test result files.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hidden": true,
      "hiddenAliases": [],
      "id": "flow:get:log",
      "pluginAlias": "@salesforce/plugin-flow",
      "pluginName": "@salesforce/plugin-flow",
      "pluginType": "jit",
      "state": "preview",
      "strict": true,
      "summary": "Display test results for a specific asynchronous test run.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "flow",
        "get",
        "log.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "flow:get:log",
        "get:flow:log",
        "get:log:flow",
        "flow:log:get",
        "log:flow:get",
        "log:get:flow"
      ]
    },
    "flow:get:test": {
      "aliases": [],
      "args": {},
      "description": "Provide a flow test run ID to display test results for an enqueued or completed asynchronous test run. The test run ID is displayed after running the \"sf flow run test\" command.\n\nTo see code coverage results, use the --code-coverage flag with --result-format. The output displays a high-level summary of the test run and the code coverage values for flow tests in your org. If you specify human-readable result format, use the --detailed-coverage flag to see detailed coverage results for each test method run.",
      "examples": [
        "Display flow test results for your default org using a test run ID:\n<%= config.bin %> <%= command.id %> --test-run-id <test run id>",
        "Similar to previous example, but output the result in JUnit format:\n<%= config.bin %> <%= command.id %> --test-run-id <test run id> --result-format junit",
        "Also retrieve code coverage results and output in JSON format:\n<%= config.bin %> <%= command.id %> --test-run-id <test run id> --code-coverage --json",
        "Specify a directory in which to save the test results from the org with the “me@my.org” username (rather than your default org):\n<%= config.bin %> <%= command.id %> --test-run-id <test run id> --code-coverage --output-dir <path to outputdir> --target-org me@my.org'"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "test-run-id": {
          "char": "i",
          "name": "test-run-id",
          "required": true,
          "summary": "ID of the test run.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "code-coverage": {
          "char": "c",
          "name": "code-coverage",
          "summary": "Retrieve code coverage results.",
          "allowNo": false,
          "type": "boolean"
        },
        "detailed-coverage": {
          "dependsOn": [
            "code-coverage"
          ],
          "name": "detailed-coverage",
          "summary": "Not available for flow tests.",
          "allowNo": false,
          "type": "boolean"
        },
        "output-dir": {
          "char": "d",
          "name": "output-dir",
          "summary": "Directory in which to store test result files.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "result-format": {
          "char": "r",
          "name": "result-format",
          "summary": "Format of the test results.",
          "default": "human",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "human",
            "tap",
            "junit",
            "json"
          ],
          "type": "option"
        },
        "concise": {
          "name": "concise",
          "summary": "Display only failed test results; works with human-readable output only.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "flow:get:test",
      "pluginAlias": "@salesforce/plugin-flow",
      "pluginName": "@salesforce/plugin-flow",
      "pluginType": "jit",
      "strict": true,
      "summary": "Display test results for a specific asynchronous test run.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "flow",
        "get",
        "test.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "flow:get:test",
        "get:flow:test",
        "get:test:flow",
        "flow:test:get",
        "test:flow:get",
        "test:get:flow"
      ]
    },
    "flow:run:test": {
      "aliases": [],
      "args": {},
      "description": "Specify which tests to run by using the --class-names flag followed by the names of the flows you want to test. For example, if you save a flow with the name Flow1, then use: --class-names Flow1.\n\nTo see code coverage results, use the --code-coverage flag with --result-format. The output displays a high-level summary of the test run and the code coverage values for classes in your org. If you specify human-readable result format, use the --detailed-coverage flag to see detailed coverage results for each test method run.\n\nBy default, \"flow run test\" runs asynchronously and immediately returns a test run ID. If you use the -–synchronous flag, you can use the --wait flag to specify the number of minutes to wait; if the tests finish in that timeframe, the command displays the results. If the tests haven't finished by the end of the wait time, the command displays a test run ID. Use the \"flow get test --test-run-id\" command to get the results.\n\nTo run both Flow and Apex tests together, run the \"sf logic run test\" CLI command, which has similar flags as this command, but expands the --tests flag to also include Apex tests.\n\nYou must have the \"View All Data\" org system permission to use this command. The permission is disabled by default and can be enabled only by a system administrator.",
      "examples": [
        "Run all local tests in your default org:\n<%= config.bin %> <%= command.id %> --test-level RunLocalTests",
        "Run all the Flow1 and Flow2 flow tests in the org with alias “scratchOrg”:\n<%= config.bin %> <%= command.id %> --target-org scratchOrg --class-names Flow1 --class-names Flow2",
        "Run specific Flow1 and Flow2 flow tests in your default org:\n<%= config.bin %> <%= command.id %> --tests Flow1.Test1 --tests Flow2.Test2 --test-level RunSpecifiedTests",
        "Run all tests synchronously in your default org; the command waits to display the test results until all tests finish:\n<%= config.bin %> <%= command.id %> –synchronous",
        "Run all local tests in the org with the username “me@my.org”; save the output to the specified directory:\n<%= config.bin %> <%= command.id %> --test-level RunLocalTests --output-dir /Users/susan/temp/cliOutput --target-org me@my.org"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "result-format": {
          "char": "r",
          "name": "result-format",
          "summary": "Format of the test results.",
          "default": "human",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "human",
            "tap",
            "junit",
            "json"
          ],
          "type": "option"
        },
        "concise": {
          "name": "concise",
          "summary": "Display only failed test results; works with human-readable output only.",
          "allowNo": false,
          "type": "boolean"
        },
        "output-dir": {
          "char": "d",
          "name": "output-dir",
          "summary": "Directory in which to store test result files.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "code-coverage": {
          "char": "c",
          "name": "code-coverage",
          "summary": "Retrieve code coverage results.",
          "allowNo": false,
          "type": "boolean"
        },
        "synchronous": {
          "char": "y",
          "name": "synchronous",
          "summary": "Run flow tests for one flow synchronously; if not specified, tests are run asynchronously.",
          "allowNo": false,
          "type": "boolean"
        },
        "test-level": {
          "char": "l",
          "description": "Here's what the levels mean:\n\n- RunLocalTests — All tests in your org are run, except the ones that originate from installed managed and unlocked packages.\n- RunAllTestsInOrg — All tests are run. The tests include all tests in your org, including tests of managed packages.\n- RunSpecifiedTests - Only the tests that you specify with the --tests flag are run.",
          "name": "test-level",
          "summary": "Level of tests to run; default is RunLocalTests.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "RunLocalTests",
            "RunAllTestsInOrg",
            "RunSpecifiedTests"
          ],
          "type": "option"
        },
        "class-names": {
          "aliases": [
            "classnames"
          ],
          "char": "n",
          "description": "Default is all flow tests. If you select --class-names, you can't specify --tests.",
          "exclusive": [
            "suite-names",
            "tests"
          ],
          "name": "class-names",
          "summary": "Flow names that contain flow tests to run.",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "suite-names": {
          "aliases": [
            "suitenames"
          ],
          "char": "s",
          "description": "Not available for flow tests.",
          "exclusive": [
            "class-names",
            "tests"
          ],
          "name": "suite-names",
          "summary": "Not available for flow tests.",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        },
        "tests": {
          "char": "t",
          "description": "Default is all flow tests. If you specify --tests, you can't specify --class-names.",
          "exclusive": [
            "class-names",
            "suite-names"
          ],
          "name": "tests",
          "summary": "Flow test names to run.",
          "hasDynamicHelp": false,
          "multiple": true,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "flow:run:test",
      "pluginAlias": "@salesforce/plugin-flow",
      "pluginName": "@salesforce/plugin-flow",
      "pluginType": "jit",
      "strict": true,
      "summary": "Invoke flow tests in an org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "flow",
        "run",
        "test.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "flow:run:test",
        "run:flow:test",
        "run:test:flow",
        "flow:test:run",
        "test:flow:run",
        "test:run:flow"
      ]
    },
    "lightning:dev:app": {
      "aliases": [],
      "args": {},
      "description": "Use Local Dev to see local changes to your app in a real-time preview that you don't have to deploy or manually refresh. To let you quickly iterate on your Lightning web components (LWCs) and pages, your app preview automatically refreshes when Local Dev detects source code changes.\n\nWhen you edit these local files with Local Dev enabled, your org automatically reflects these changes.\n\n- Basic HTML and CSS edits to LWCs\n- JavaScript changes to LWCs that don't affect the component's public API\n- Importing new custom LWCs\n- Importing another instance of an existing LWC\n\nTo apply any other local changes not listed above, you must deploy them to your org using the `sf project deploy start` command.\n\nWhen you make changes directly in your org (like saving new component properties), they're automatically deployed to your live app. To update your local version of the app with those changes, you must retrieve them from your org using the `sf project retrieve start` command.\n\nIf you run the command without flags, it displays a list of devices for you to choose from. Then it lists the apps that it found in your local DX project for you to choose. Use the --device or --name flags to bypass the questions. The command also asks if you want to enable Local Dev in your org if it isn't already.\n\nTo learn more about Local Dev enablement, considerations, and limitations, see the Lightning Web Components Developer Guide (https://developer.salesforce.com/docs/platform/lwc/guide/get-started-test-components.html).",
      "examples": [
        "Preview the default app for the target org \"myOrg\" in a desktop environment:\n<%= config.bin %> <%= command.id %> --target-org myOrg",
        "Preview the app \"myApp\" for the target org \"myOrg\" in a desktop environment:\n<%= config.bin %> <%= command.id %> --name MyApp --target-org myOrg --device-type desktop",
        "Preview the default app for target org \"myOrg\" on an iOS device:\n<%= config.bin %> <%= command.id %> --target-org myOrg --device-type ios --device-id \"iPhone 15 Pro Max\""
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "summary": "Name of the Lightning Experience app to preview.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "device-type": {
          "char": "t",
          "name": "device-type",
          "summary": "Type of device to display the app preview.",
          "hasDynamicHelp": false,
          "multiple": false,
          "options": [
            "desktop",
            "ios",
            "android"
          ],
          "type": "option"
        },
        "device-id": {
          "char": "i",
          "name": "device-id",
          "summary": "ID of the mobile device to display the preview if device type is set to `ios` or `android`. The default value is the ID of the first available mobile device.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "lightning:dev:app",
      "pluginAlias": "@salesforce/plugin-lightning-dev",
      "pluginName": "@salesforce/plugin-lightning-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Preview a Lightning Experience app locally and in real-time, without deploying it.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "lightning",
        "dev",
        "app.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "lightning:dev:app",
        "dev:lightning:app",
        "dev:app:lightning",
        "lightning:app:dev",
        "app:lightning:dev",
        "app:dev:lightning"
      ]
    },
    "lightning:dev:component": {
      "aliases": [],
      "args": {},
      "description": "Component preview launches an isolated development environment for Lightning Web Components, enabling rapid iteration without needing to deploy changes. The server provides real-time previews of your components through hot module replacement (HMR), automatically refreshing the view when source files are modified.\n\nWhen running the development server, these changes are immediately reflected:\n\n- Component template (HTML) modifications\n- Styling updates in component CSS files\n- JavaScript logic changes that don't modify the component's API\n- Adding or updating internal component dependencies\n- Modifying static resources used by the component\n\nIf you run the command without flags, it displays a list of components that it found in your local DX project for you to choose to preview. Use the --name flag to bypass the question. The command also asks if you want to enable Local Dev in your org if it isn't already.\n\nSee the LWC Developer Guide for more information about component development best practices and limitations (https://developer.salesforce.com/docs/platform/lwc/guide/get-started-best-practices.html).",
      "examples": [
        "Select a component interactively and launch the component preview; use your default org:\n<%= config.bin %> <%= command.id %>",
        "Launch component preview for \"myComponent\"; use the org with alias \"myscratch\":\n<%= config.bin %> <%= command.id %> --name myComponent --target-org myscratch"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "summary": "Name of a component to preview.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "client-select": {
          "char": "c",
          "name": "client-select",
          "summary": "Launch component preview without selecting a component.",
          "allowNo": false,
          "type": "boolean"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "lightning:dev:component",
      "pluginAlias": "@salesforce/plugin-lightning-dev",
      "pluginName": "@salesforce/plugin-lightning-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Preview LWC components in isolation.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "lightning",
        "dev",
        "component.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "lightning:dev:component",
        "dev:lightning:component",
        "dev:component:lightning",
        "lightning:component:dev",
        "component:lightning:dev",
        "component:dev:lightning"
      ]
    },
    "lightning:dev:site": {
      "aliases": [],
      "args": {},
      "description": "Enable Local Dev to see local changes to your site in a real-time preview that you don't have to deploy or manually refresh. To let you quickly iterate on your Lightning web components (LWCs) and pages, your site preview automatically refreshes when Local Dev detects source code changes.\n\nWhen you edit these local files with Local Dev enabled, your org automatically reflects these changes.\n\n- Basic HTML and CSS edits to LWCs\n- JavaScript changes to LWCs that don't affect the component's public API\n- Importing new custom LWCs\n- Importing another instance of an existing LWC\n\nTo apply any other local changes not listed above, you must deploy them to your org using the `sf project deploy start` command. Then republish your site and restart the server for the Local Dev experience.\n\nIf you run the command without flags, it displays a list of Experience Builder sites that it found in your local DX project for you to choose from. Use the --name flag to bypass the question. The command also asks if you want to enable Local Dev in your org if it isn't already.\n\nFor more considerations and limitations, see the Lightning Web Components Developer Guide.",
      "examples": [
        "Select a site to preview from the org with alias \"myOrg\":\n<%= config.bin %> <%= command.id %> --target-org myOrg",
        "Preview the site \"Partner Central\" from your default org:\n<%= config.bin %> <%= command.id %> --name \"Partner Central\""
      ],
      "flags": {
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "name": "name",
          "summary": "Name of the Experience Builder site to preview. It must match a site name from the current org.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "lightning:dev:site",
      "pluginAlias": "@salesforce/plugin-lightning-dev",
      "pluginName": "@salesforce/plugin-lightning-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Preview an Experience Builder site locally and in real-time, without deploying it.",
      "enableJsonFlag": false,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "lightning",
        "dev",
        "site.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "lightning:dev:site",
        "dev:lightning:site",
        "dev:site:lightning",
        "lightning:site:dev",
        "site:lightning:dev",
        "site:dev:lightning"
      ]
    },
    "org:create:shape": {
      "aliases": [
        "force:org:shape:create"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Scratch org shapes mimic the baseline setup (features, limits, edition, and Metadata API settings) of a source org without the extraneous data and metadata.\n\nRun \"<%= config.bin %> org list shape\" to view the available org shapes and their IDs.\n\nTo create a scratch org from an org shape, include the \"sourceOrg\" property in the scratch org definition file and set it to the org ID of the source org. Then create a scratch org with the \"<%= config.bin %> org create scratch\" command.",
      "examples": [
        "Create an org shape for the source org with alias SourceOrg:\n<%= config.bin %> <%= command.id %> --target-org SourceOrg"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "aliases": [
            "targetusername",
            "u"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "org:create:shape",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "Create a scratch org configuration (shape) based on the specified source org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "create",
        "shape.js"
      ],
      "aliasPermutations": [
        "force:org:shape:create",
        "org:force:shape:create",
        "org:shape:force:create",
        "org:shape:create:force",
        "force:shape:org:create",
        "shape:force:org:create",
        "shape:org:force:create",
        "shape:org:create:force",
        "force:shape:create:org",
        "shape:force:create:org",
        "shape:create:force:org",
        "shape:create:org:force",
        "force:org:create:shape",
        "org:force:create:shape",
        "org:create:force:shape",
        "org:create:shape:force",
        "force:create:org:shape",
        "create:force:org:shape",
        "create:org:force:shape",
        "create:org:shape:force",
        "force:create:shape:org",
        "create:force:shape:org",
        "create:shape:force:org",
        "create:shape:org:force"
      ],
      "permutations": [
        "org:create:shape",
        "create:org:shape",
        "create:shape:org",
        "org:shape:create",
        "shape:org:create",
        "shape:create:org"
      ]
    },
    "org:create:snapshot": {
      "aliases": [
        "force:org:snapshot:create"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "A snapshot is a point-in-time copy of a scratch org. The copy is referenced by its unique name in a scratch org definition file.\n\nUse \"<%= config.bin %> org get snapshot\" to get details, including status, about a snapshot creation request.\n\nTo create a scratch org from a snapshot, include the \"snapshot\" option (instead of \"edition\") in the scratch org definition file and set it to the name of the snapshot. Then use \"<%= config.bin %> org create scratch\" to create the scratch org.",
      "examples": [
        "Create a snapshot called \"Dependencies\" using the source scratch org ID and your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --source-org 00Dxx0000000000 --name Dependencies --description 'Contains PackageA v1.1.0'",
        "Create a snapshot called \"NightlyBranch\" using the source scratch org username and a Dev Hub org with alias NightlyDevHub:\n<%= config.bin %> <%= command.id %> --source-org myuser@myorg --name NightlyBranch --description 'Contains PkgA v2.1.0 and PkgB 3.3.0' --target-dev-hub NightlyDevHub"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-dev-hub": {
          "aliases": [
            "targetdevhubusername"
          ],
          "char": "v",
          "deprecateAliases": true,
          "name": "target-dev-hub",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "source-org": {
          "aliases": [
            "sourceorg"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "source-org",
          "required": true,
          "summary": "ID or locally authenticated username or alias of scratch org to snapshot.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "aliases": [
            "snapshotname"
          ],
          "char": "n",
          "deprecateAliases": true,
          "name": "name",
          "required": true,
          "summary": "Unique name of snapshot.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "description": {
          "char": "d",
          "description": "Use this description to document the contents of the snapshot. We suggest that you include a reference point, such as a version control system tag or commit ID.",
          "name": "description",
          "summary": "Description of snapshot.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "org:create:snapshot",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "Create a snapshot of a scratch org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "create",
        "snapshot.js"
      ],
      "aliasPermutations": [
        "force:org:snapshot:create",
        "org:force:snapshot:create",
        "org:snapshot:force:create",
        "org:snapshot:create:force",
        "force:snapshot:org:create",
        "snapshot:force:org:create",
        "snapshot:org:force:create",
        "snapshot:org:create:force",
        "force:snapshot:create:org",
        "snapshot:force:create:org",
        "snapshot:create:force:org",
        "snapshot:create:org:force",
        "force:org:create:snapshot",
        "org:force:create:snapshot",
        "org:create:force:snapshot",
        "org:create:snapshot:force",
        "force:create:org:snapshot",
        "create:force:org:snapshot",
        "create:org:force:snapshot",
        "create:org:snapshot:force",
        "force:create:snapshot:org",
        "create:force:snapshot:org",
        "create:snapshot:force:org",
        "create:snapshot:org:force"
      ],
      "permutations": [
        "org:create:snapshot",
        "create:org:snapshot",
        "create:snapshot:org",
        "org:snapshot:create",
        "snapshot:org:create",
        "snapshot:create:org"
      ]
    },
    "org:delete:shape": {
      "aliases": [
        "force:org:shape:delete"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "A source org can have only one active org shape. If you try to create an org shape for a source org that already has one, the previous shape is marked inactive and replaced by a new active shape. If you don’t want to create scratch orgs based on this shape, you can delete the org shape.",
      "examples": [
        "Delete all org shapes for the source org with alias SourceOrg:\n<%= config.bin %> <%= command.id %> --target-org SourceOrg",
        "Delete all org shapes without prompting:\n<%= config.bin %> <%= command.id %> --target-org SourceOrg --no-prompt"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "aliases": [
            "targetusername",
            "u"
          ],
          "char": "o",
          "deprecateAliases": true,
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "no-prompt": {
          "aliases": [
            "noprompt"
          ],
          "char": "p",
          "deprecateAliases": true,
          "name": "no-prompt",
          "summary": "Don't prompt for confirmation.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "org:delete:shape",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "Delete all org shapes for a target org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "delete",
        "shape.js"
      ],
      "aliasPermutations": [
        "force:org:shape:delete",
        "org:force:shape:delete",
        "org:shape:force:delete",
        "org:shape:delete:force",
        "force:shape:org:delete",
        "shape:force:org:delete",
        "shape:org:force:delete",
        "shape:org:delete:force",
        "force:shape:delete:org",
        "shape:force:delete:org",
        "shape:delete:force:org",
        "shape:delete:org:force",
        "force:org:delete:shape",
        "org:force:delete:shape",
        "org:delete:force:shape",
        "org:delete:shape:force",
        "force:delete:org:shape",
        "delete:force:org:shape",
        "delete:org:force:shape",
        "delete:org:shape:force",
        "force:delete:shape:org",
        "delete:force:shape:org",
        "delete:shape:force:org",
        "delete:shape:org:force"
      ],
      "permutations": [
        "org:delete:shape",
        "delete:org:shape",
        "delete:shape:org",
        "org:shape:delete",
        "shape:org:delete",
        "shape:delete:org"
      ]
    },
    "org:delete:snapshot": {
      "aliases": [
        "force:org:snapshot:delete"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Dev Hub admins can delete any snapshot. Users can delete only their own snapshots, unless a Dev Hub admin gives the user Modify All permission, which works only with the Salesforce license.",
      "examples": [
        "Delete a snapshot from the default Dev Hub using the snapshot ID:\n<%= config.bin %> <%= command.id %> --snapshot 0Oo...",
        "Delete a snapshot from the specified Dev Hub using the snapshot name:\n<%= config.bin %> <%= command.id %> --snapshot BaseSnapshot --target-dev-hub SnapshotDevHub"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-dev-hub": {
          "aliases": [
            "targetdevhubusername"
          ],
          "char": "v",
          "deprecateAliases": true,
          "name": "target-dev-hub",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "snapshot": {
          "char": "s",
          "description": "The IDs of scratch org snapshots start with 0Oo.",
          "name": "snapshot",
          "required": true,
          "summary": "Name or ID of snapshot to delete.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "no-prompt": {
          "char": "p",
          "name": "no-prompt",
          "summary": "Don't prompt the user to confirm the deletion.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "org:delete:snapshot",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "Delete a scratch org snapshot.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "delete",
        "snapshot.js"
      ],
      "aliasPermutations": [
        "force:org:snapshot:delete",
        "org:force:snapshot:delete",
        "org:snapshot:force:delete",
        "org:snapshot:delete:force",
        "force:snapshot:org:delete",
        "snapshot:force:org:delete",
        "snapshot:org:force:delete",
        "snapshot:org:delete:force",
        "force:snapshot:delete:org",
        "snapshot:force:delete:org",
        "snapshot:delete:force:org",
        "snapshot:delete:org:force",
        "force:org:delete:snapshot",
        "org:force:delete:snapshot",
        "org:delete:force:snapshot",
        "org:delete:snapshot:force",
        "force:delete:org:snapshot",
        "delete:force:org:snapshot",
        "delete:org:force:snapshot",
        "delete:org:snapshot:force",
        "force:delete:snapshot:org",
        "delete:force:snapshot:org",
        "delete:snapshot:force:org",
        "delete:snapshot:org:force"
      ],
      "permutations": [
        "org:delete:snapshot",
        "delete:org:snapshot",
        "delete:snapshot:org",
        "org:snapshot:delete",
        "snapshot:org:delete",
        "snapshot:delete:org"
      ]
    },
    "org:list:shape": {
      "aliases": [
        "force:org:shape:list"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "The output includes the alias, username, and ID of the source org, the status of the org shape creation, and more. Use the org ID to update your scratch org configuration file so you can create a scratch org based on this org shape.",
      "examples": [
        "List all org shapes you've created:\n<%= config.bin %> <%= command.id %>",
        "List all org shapes in JSON format and write the output to a file:\n<%= config.bin %> <%= command.id %> --json > tmp/MyOrgShapeList.json"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "verbose": {
          "hidden": true,
          "name": "verbose",
          "summary": "List more information about each org shape.",
          "allowNo": false,
          "type": "boolean"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": false,
      "hiddenAliases": [],
      "id": "org:list:shape",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "List all org shapes you’ve created.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "list",
        "shape.js"
      ],
      "aliasPermutations": [
        "force:org:shape:list",
        "org:force:shape:list",
        "org:shape:force:list",
        "org:shape:list:force",
        "force:shape:org:list",
        "shape:force:org:list",
        "shape:org:force:list",
        "shape:org:list:force",
        "force:shape:list:org",
        "shape:force:list:org",
        "shape:list:force:org",
        "shape:list:org:force",
        "force:org:list:shape",
        "org:force:list:shape",
        "org:list:force:shape",
        "org:list:shape:force",
        "force:list:org:shape",
        "list:force:org:shape",
        "list:org:force:shape",
        "list:org:shape:force",
        "force:list:shape:org",
        "list:force:shape:org",
        "list:shape:force:org",
        "list:shape:org:force"
      ],
      "permutations": [
        "org:list:shape",
        "list:org:shape",
        "list:shape:org",
        "org:shape:list",
        "shape:org:list",
        "shape:list:org"
      ]
    },
    "org:list:snapshot": {
      "aliases": [
        "force:org:snapshot:list"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "You can view all the snapshots in a Dev Hub that you have access to. If you’re an admin, you can see all snapshots associated with the Dev Hub org. If you’re a user, you can see only your snapshots unless a Dev Hub admin gives you View All permissions.\n\nTo create a snapshot, use the \"<%= config.bin %> org create snapshot\" command. To get details about a snapshot request, use \"<%= config.bin %> org get snapshot\".",
      "examples": [
        "List snapshots in the default Dev Hub:\n<%= config.bin %> <%= command.id %>",
        "List snapshots in the Dev Hub with alias SnapshotDevHub:\n<%= config.bin %> <%= command.id %> --target-dev-hub SnapshotDevHub"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-dev-hub": {
          "aliases": [
            "targetdevhubusername"
          ],
          "char": "v",
          "deprecateAliases": true,
          "name": "target-dev-hub",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "org:list:snapshot",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "List scratch org snapshots.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "list",
        "snapshot.js"
      ],
      "aliasPermutations": [
        "force:org:snapshot:list",
        "org:force:snapshot:list",
        "org:snapshot:force:list",
        "org:snapshot:list:force",
        "force:snapshot:org:list",
        "snapshot:force:org:list",
        "snapshot:org:force:list",
        "snapshot:org:list:force",
        "force:snapshot:list:org",
        "snapshot:force:list:org",
        "snapshot:list:force:org",
        "snapshot:list:org:force",
        "force:org:list:snapshot",
        "org:force:list:snapshot",
        "org:list:force:snapshot",
        "org:list:snapshot:force",
        "force:list:org:snapshot",
        "list:force:org:snapshot",
        "list:org:force:snapshot",
        "list:org:snapshot:force",
        "force:list:snapshot:org",
        "list:force:snapshot:org",
        "list:snapshot:force:org",
        "list:snapshot:org:force"
      ],
      "permutations": [
        "org:list:snapshot",
        "list:org:snapshot",
        "list:snapshot:org",
        "org:snapshot:list",
        "snapshot:org:list",
        "snapshot:list:org"
      ]
    },
    "org:get:snapshot": {
      "aliases": [
        "force:org:snapshot:get"
      ],
      "args": {},
      "deprecateAliases": true,
      "description": "Snapshot creation can take a while. Use this command with the snapshot name or ID to check its creation status. After the status changes to Active, you can use the snapshot to create scratch orgs.\n\nTo create a snapshot, use the \"<%= config.bin %> org create snapshot\" command. To retrieve a list of all snapshots, use \"<%= config.bin %> org list snapshot\".",
      "examples": [
        "Get snapshot details using its ID and the default Dev Hub org:\n<%= config.bin %> <%= command.id %> --snapshot 0Oo...",
        "Get snapshot details using its name from a Dev Hub org with alias SnapshotDevHub:\n<%= config.bin %> <%= command.id %> --snapshot Dependencies --target-dev-hub SnapshotDevHub"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-dev-hub": {
          "aliases": [
            "targetdevhubusername"
          ],
          "char": "v",
          "deprecateAliases": true,
          "name": "target-dev-hub",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the Dev Hub org. Not required if the `target-dev-hub` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "api-version": {
          "aliases": [
            "apiversion"
          ],
          "deprecateAliases": true,
          "description": "Override the api version used for api requests made by this command",
          "name": "api-version",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "loglevel": {
          "deprecated": {
            "message": "The loglevel flag is no longer in use on this command. You may use it without error, but it will be ignored.\nSet the log level using the `SFDX_LOG_LEVEL` environment variable."
          },
          "hidden": true,
          "name": "loglevel",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "snapshot": {
          "char": "s",
          "description": "The IDs of scratch org snapshots start with 0Oo.",
          "name": "snapshot",
          "required": true,
          "summary": "Name or ID of snapshot to retrieve.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "org:get:snapshot",
      "pluginAlias": "@salesforce/plugin-signups",
      "pluginName": "@salesforce/plugin-signups",
      "pluginType": "jit",
      "strict": true,
      "summary": "Get details about a scratch org snapshot.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "org",
        "get",
        "snapshot.js"
      ],
      "aliasPermutations": [
        "force:org:snapshot:get",
        "org:force:snapshot:get",
        "org:snapshot:force:get",
        "org:snapshot:get:force",
        "force:snapshot:org:get",
        "snapshot:force:org:get",
        "snapshot:org:force:get",
        "snapshot:org:get:force",
        "force:snapshot:get:org",
        "snapshot:force:get:org",
        "snapshot:get:force:org",
        "snapshot:get:org:force",
        "force:org:get:snapshot",
        "org:force:get:snapshot",
        "org:get:force:snapshot",
        "org:get:snapshot:force",
        "force:get:org:snapshot",
        "get:force:org:snapshot",
        "get:org:force:snapshot",
        "get:org:snapshot:force",
        "force:get:snapshot:org",
        "get:force:snapshot:org",
        "get:snapshot:force:org",
        "get:snapshot:org:force"
      ],
      "permutations": [
        "org:get:snapshot",
        "get:org:snapshot",
        "get:snapshot:org",
        "org:snapshot:get",
        "snapshot:org:get",
        "snapshot:get:org"
      ]
    },
    "ui-bundle:dev": {
      "aliases": [],
      "args": {},
      "description": "A UI bundle refers to an application that runs on Salesforce Platform that uses a non-native UI framework, such as React.  Salesforce provides native UI frameworks, such as Lighting Web Components (LWC), to build applications that run on the Salesforce Platform. But you can also use non-native JavaScript- or TypeScript-based UI frameworks, such as React, to build a UI experience for the Salesforce Platform and that you can launch from the App Launcher.  UI bundles are defined by the UiBundle metadata type in your DX project.\n\nThis command starts a local development (dev) server so you can preview a UI bundle using the local metadata files in your DX project. Using a local preview helps you quickly develop UI bundles, because you don't have to continually deploy metadata to your org.\n\nThe command also launches a local proxy server that sits between your UI bundle and Salesforce, automatically injecting authentication headers from Salesforce CLI's stored tokens. The proxy allows your UI bundle to make authenticated API calls to Salesforce without exposing credentials.\n\nEven though you're previewing the UI bundle locally and not deploying anything to an org, you're still required to authorize and specify an org to use this command.",
      "examples": [
        "Start the local development (dev) server by automatically discovering the UI bundle's ui-bundle.json file; use the org with alias \"myorg\":\n<%= config.bin %> <%= command.id %> --target-org myorg",
        "Start the dev server by explicitly specifying the UI bundle's name:\n<%= config.bin %> <%= command.id %> --name myBundle --target-org myorg",
        "Start at the specified dev server URL:\n<%= config.bin %> <%= command.id %> --name myBundle --url http://localhost:5173 --target-org myorg",
        "Start with a custom proxy port and automatically open the proxy server URL in your browser:\n<%= config.bin %> <%= command.id %> --target-org myorg --port 4546 --open",
        "Start with debug logging enabled by specifing the SF_LOG_LEVEL environment variable before running the command:\nSF_LOG_LEVEL=debug <%= config.bin %> <%= command.id %> --target-org myorg"
      ],
      "flags": {
        "json": {
          "description": "Format output as json.",
          "helpGroup": "GLOBAL",
          "name": "json",
          "allowNo": false,
          "type": "boolean"
        },
        "flags-dir": {
          "helpGroup": "GLOBAL",
          "name": "flags-dir",
          "summary": "Import flag values from a directory.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "name": {
          "char": "n",
          "description": "The unique name of the UI bundle, as defined by the \"name\" property in the ui-bundle.json runtime configuration file.  The ui-bundle.json file is located in the \"uiBundles\" metadata directory of your DX project, such as force-app/main/default/uiBundles/MyBundle/ui-bundle.json.\n\nIf you don't specify this flag, the command automatically discovers the ui-bundle.json files in the current directory and subdirectories. If the command finds only one ui-bundle.json, it automatically uses it. If it finds multiple files, the command prompts you to select one.",
          "name": "name",
          "required": false,
          "summary": "Name of the UI bundle to preview.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "url": {
          "char": "u",
          "description": "You must specify this flag if the UI bundle's ui-bundle.json file doesn't contain a value for either the \"dev.command\" or \"dev.url\" configuration properties. All non-Salesforce API requests are forwarded to this URL.\n\nIf you specify this flag, it overrides the value in the ui-bundle.json file.\n\nThis is the order of precedence that the dev server uses for the URL:  --url flag > manifest dev.url > URL from the dev server process (which was started using either manifest dev.command or default npm run dev).",
          "name": "url",
          "required": false,
          "summary": "URL where your developer server runs, such as https://localhost:5173. All UI, static, and hot deployment requests are forwarded to this URL.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "port": {
          "char": "p",
          "description": "Be sure your browser connects to this port, and not directly to the dev server. The proxy then forwards authenticated requests to Salesforce and other requests to your local dev server.",
          "name": "port",
          "required": false,
          "summary": "Local port where the proxy server listens.",
          "hasDynamicHelp": false,
          "multiple": false,
          "type": "option"
        },
        "target-org": {
          "char": "o",
          "name": "target-org",
          "noCacheDefault": true,
          "required": true,
          "summary": "Username or alias of the target org. Not required if the `target-org` configuration variable is already set.",
          "hasDynamicHelp": true,
          "multiple": false,
          "type": "option"
        },
        "open": {
          "char": "b",
          "description": "This flag saves you from manually copying and pasting the URL. The browser opens to the proxy URL, and not the dev server URL directly, which ensures that all requests are property authenticated.",
          "name": "open",
          "summary": "Automatically open the proxy server URL in your default browser when the dev server is ready.",
          "allowNo": false,
          "type": "boolean"
        }
      },
      "hasDynamicHelp": true,
      "hiddenAliases": [],
      "id": "ui-bundle:dev",
      "pluginAlias": "@salesforce/plugin-ui-bundle-dev",
      "pluginName": "@salesforce/plugin-ui-bundle-dev",
      "pluginType": "jit",
      "strict": true,
      "summary": "Preview a UI bundle locally and in real-time, without deploying it to your org.",
      "enableJsonFlag": true,
      "isESM": true,
      "relativePath": [
        "lib",
        "commands",
        "ui-bundle",
        "dev.js"
      ],
      "aliasPermutations": [],
      "permutations": [
        "ui-bundle:dev",
        "dev:ui-bundle"
      ]
    },
    "force:lightning:lwc:test:create": {
      "id": "force:lightning:lwc:test:create",
      "description": "creates a Lightning web component test file with boilerplate code inside a __tests__ directory.",
      "strict": true,
      "usage": "<%= command.id %> -f <string> [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]",
      "pluginName": "@salesforce/sfdx-plugin-lwc-test",
      "pluginAlias": "@salesforce/sfdx-plugin-lwc-test",
      "pluginType": "jit",
      "aliases": [],
      "examples": [
        "$ sfdx force:lightning:lwc:test:create -f force-app/main/default/lwc/myButton/myButton.js"
      ],
      "flags": {
        "json": {
          "name": "json",
          "type": "boolean",
          "description": "format output as json",
          "allowNo": false
        },
        "loglevel": {
          "name": "loglevel",
          "type": "option",
          "description": "logging level for this command invocation",
          "required": false,
          "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)",
          "multiple": false,
          "options": [
            "trace",
            "debug",
            "info",
            "warn",
            "error",
            "fatal",
            "TRACE",
            "DEBUG",
            "INFO",
            "WARN",
            "ERROR",
            "FATAL"
          ],
          "default": "warn"
        },
        "filepath": {
          "name": "filepath",
          "type": "option",
          "char": "f",
          "description": "path to Lightning web component .js file to create a test for",
          "required": true,
          "multiple": false
        }
      },
      "args": {},
      "longDescription": "Creates a __tests__ directory in the specified directory. Creates a yourComponentName.test.js file with boilerplate code in the __tests__ directory.",
      "requiresProject": true,
      "flagsConfig": {
        "filepath": {
          "kind": "string",
          "char": "f",
          "description": "path to Lightning web component .js file to create a test for",
          "longDescription": "Path to Lightning web component .js file to create a test for.",
          "required": true,
          "input": [],
          "multiple": false,
          "type": "option"
        }
      }
    },
    "force:lightning:lwc:test:run": {
      "id": "force:lightning:lwc:test:run",
      "description": "invokes Lightning Web Components Jest unit tests.",
      "strict": true,
      "usage": "<%= command.id %> [-d | --watch] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]",
      "pluginName": "@salesforce/sfdx-plugin-lwc-test",
      "pluginAlias": "@salesforce/sfdx-plugin-lwc-test",
      "pluginType": "jit",
      "aliases": [],
      "examples": [
        "$ sfdx force:lightning:lwc:test:run",
        "$ sfdx force:lightning:lwc:test:run -w"
      ],
      "flags": {
        "json": {
          "name": "json",
          "type": "boolean",
          "description": "format output as json",
          "allowNo": false
        },
        "loglevel": {
          "name": "loglevel",
          "type": "option",
          "description": "logging level for this command invocation",
          "required": false,
          "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)",
          "multiple": false,
          "options": [
            "trace",
            "debug",
            "info",
            "warn",
            "error",
            "fatal",
            "TRACE",
            "DEBUG",
            "INFO",
            "WARN",
            "ERROR",
            "FATAL"
          ],
          "default": "warn"
        },
        "debug": {
          "name": "debug",
          "type": "boolean",
          "char": "d",
          "description": "run tests in debug mode",
          "allowNo": false,
          "exclusive": [
            "watch"
          ]
        },
        "watch": {
          "name": "watch",
          "type": "boolean",
          "description": "run tests in watch mode",
          "allowNo": false,
          "exclusive": [
            "debug"
          ]
        }
      },
      "args": {
        "passthrough": {
          "name": "passthrough"
        }
      },
      "longDescription": "Invokes Lightning Web Components Jest unit tests.",
      "requiresProject": true,
      "flagsConfig": {
        "debug": {
          "kind": "boolean",
          "char": "d",
          "description": "run tests in debug mode",
          "longDescription": "Runs tests in a Node process that an external debugger can connect to. The run pauses until the debugger is connected. For more information, see: https://jestjs.io/docs/en/troubleshooting",
          "exclusive": [
            "watch"
          ],
          "allowNo": false,
          "type": "boolean"
        },
        "watch": {
          "kind": "boolean",
          "description": "run tests in watch mode",
          "longDescription": "Runs tests when a watched file changes. Watched files include the component under test and any files it references.",
          "exclusive": [
            "debug"
          ],
          "allowNo": false,
          "type": "boolean"
        }
      }
    },
    "force:lightning:lwc:test:setup": {
      "id": "force:lightning:lwc:test:setup",
      "description": "install Jest unit testing tools for Lightning Web Components.",
      "strict": true,
      "usage": "<%= command.id %> [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]",
      "pluginName": "@salesforce/sfdx-plugin-lwc-test",
      "pluginAlias": "@salesforce/sfdx-plugin-lwc-test",
      "pluginType": "jit",
      "aliases": [],
      "examples": [
        "$ sfdx force:lightning:lwc:test:setup"
      ],
      "flags": {
        "json": {
          "name": "json",
          "type": "boolean",
          "description": "format output as json",
          "allowNo": false
        },
        "loglevel": {
          "name": "loglevel",
          "type": "option",
          "description": "logging level for this command invocation",
          "required": false,
          "helpValue": "(trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL)",
          "multiple": false,
          "options": [
            "trace",
            "debug",
            "info",
            "warn",
            "error",
            "fatal",
            "TRACE",
            "DEBUG",
            "INFO",
            "WARN",
            "ERROR",
            "FATAL"
          ],
          "default": "warn"
        }
      },
      "args": {},
      "longDescription": "Installs Jest unit testing tools for Lightning Web Components. For more information, see the Lightning Web Components Dev Guide: https://developer.salesforce.com/docs/component-library/documentation/lwc/lwc.testing",
      "requiresProject": true
    }
  },
  "version": "2.142.7"
}