{ "versionDetail": { "cliVersion": "@salesforce/cli/2.9.1", "architecture": "win32-x64", "nodeVersion": "node-v18.14.2", "osVersion": "Windows_NT 10.0.19045", "shell": "C:\\Program Files\\Git\\usr\\bin\\bash.exe", "rootPath": "C:\\Users\\BCCA1JV\\AppData\\Local\\Programs\\node-v18.14.2-win-x64\\node_modules\\@salesforce\\cli", "pluginVersions": [ "@dx-cli-toolbox/sfdx-toolbox-package-utils 0.8.4 (user)", "@oclif/plugin-autocomplete 2.3.8 (core)", "@oclif/plugin-commands 2.2.25 (core)", "@oclif/plugin-help 5.2.19 (core)", "@oclif/plugin-not-found 2.4.1 (core)", "@oclif/plugin-plugins 3.4.2 (core)", "@oclif/plugin-search 0.0.22 (core)", "@oclif/plugin-update 3.2.3 (core)", "@oclif/plugin-version 1.3.10 (core)", "@oclif/plugin-warn-if-update-available 2.1.0 (core)", "@oclif/plugin-which 2.2.32 (core)", "@salesforce/cli 2.9.1 (core)", "apex 2.3.14 (core)", "auth 2.8.16 (core)", "community 2.4.0 (user)", "data 2.5.8 (core)", "deploy-retrieve 1.17.8 (core)", "info 2.6.40 (core)", "limits 2.3.33 (core)", "login 1.2.29 (core)", "marketplace 0.1.3 (core)", "org 2.10.6 (core)", "packaging 1.24.0 (user)", "schema 2.3.25 (core)", "settings 1.4.28 (core)", "sobject 0.2.6 (core)", "source 2.10.33 (core)", "telemetry 2.3.1 (core)", "templates 55.5.11 (core)", "trust 2.6.9 (core)", "user 2.3.32 (core)" ] }, "sfdxEnvVars": [], "sfEnvVars": [ [ "SF_AUTOUPDATE_DISABLE", "true" ], [ "SF_DISABLE_AUTOUPDATE", "true" ], [ "SF_UPDATE_INSTRUCTIONS", "Use \"npm update --global @salesforce/cli\" to update npm-based installations." ] ], "cliConfig": { "_base": "@oclif/core@2.15.0", "debug": 0, "topicSeparator": " ", "warned": false, "commandPermutations": { "validPermutations": {} }, "topicPermutations": { "validPermutations": {} }, "_commands": {}, "_topics": {}, "pluginLoader": { "options": { "root": "C:\\Users\\BCCA1JV\\AppData\\Local\\Programs\\node-v18.14.2-win-x64\\node_modules\\@salesforce\\cli" }, "plugins": {}, "errors": [], "pluginsProvided": false }, "rootPlugin": { "options": { "root": "C:\\Users\\BCCA1JV\\AppData\\Local\\Programs\\node-v18.14.2-win-x64\\node_modules\\@salesforce\\cli" }, "_base": "@oclif/core@2.15.0", "valid": true, "alreadyLoaded": false, "children": [], "hasManifest": true, "warned": false, "type": "core", "root": "C:\\Users\\BCCA1JV\\AppData\\Local\\Programs\\node-v18.14.2-win-x64\\node_modules\\@salesforce\\cli", "pjson": { "name": "@salesforce/cli", "description": "The Salesforce CLI", "version": "2.9.1", "author": "Salesforce", "bin": { "sf": "./bin/run", "sfdx": "./bin/run" }, "homepage": "https://github.com/salesforcecli/cli", "bugs": "https://github.com/forcedotcom/cli/issues", "engines": { "node": ">=14.0.0" }, "packageManager": "yarn@1.22.19", "files": [ "/bin", "/dist/**/*.js", "/oclif.manifest.json", "/npm-shrinkwrap.json", "/scripts/preinstall.js", "/scripts/post-install-release-notes.js" ], "keywords": [ "oclif", "salesforce", "sf" ], "license": "BSD-3-Clause", "main": "dist/index.js", "oclif": { "bin": "sf", "binAliases": [ "sfdx" ], "nsisCustomization": "scripts/nsis.nsi", "scope": "salesforce", "dirname": "sf", "topicSeparator": " ", "flexibleTaxonomy": true, "commands": "./dist/commands", "helpClass": "./dist/help/sfHelp.js", "plugins": [ "@oclif/plugin-autocomplete", "@oclif/plugin-commands", "@oclif/plugin-help", "@oclif/plugin-not-found", "@oclif/plugin-plugins", "@oclif/plugin-search", "@oclif/plugin-update", "@oclif/plugin-version", "@oclif/plugin-warn-if-update-available", "@oclif/plugin-which", "@salesforce/plugin-apex", "@salesforce/plugin-auth", "@salesforce/plugin-data", "@salesforce/plugin-deploy-retrieve", "@salesforce/plugin-info", "@salesforce/plugin-limits", "@salesforce/plugin-login", "@salesforce/plugin-marketplace", "@salesforce/plugin-org", "@salesforce/plugin-schema", "@salesforce/plugin-settings", "@salesforce/plugin-sobject", "@salesforce/plugin-source", "@salesforce/plugin-telemetry", "@salesforce/plugin-templates", "@salesforce/plugin-trust", "@salesforce/plugin-user" ], "jitPlugins": { "@salesforce/plugin-custom-metadata": "2.2.1", "@salesforce/plugin-community": "2.4.0", "@salesforce/plugin-dev": "1.1.10", "@salesforce/plugin-devops-center": "1.1.4", "@salesforce/plugin-env": "2.1.25", "@salesforce/plugin-functions": "1.21.12", "@salesforce/plugin-packaging": "1.24.0", "@salesforce/plugin-signups": "1.4.34", "@salesforce/sfdx-plugin-lwc-test": "1.0.2", "@salesforce/sfdx-scanner": "3.16.0" }, "devPlugins": [ "@oclif/plugin-command-snapshot", "@salesforce/plugin-release-management" ], "hooks": { "command_incomplete": "./dist/hooks/incomplete", "plugins:preinstall": "./dist/hooks/pluginsPreinstall.js", "update": "./dist/hooks/display-release-notes.js" }, "update": { "s3": { "bucket": "dfc-data-production", "indexVersionLimit": 140, "folder": "media/salesforce-cli/sf", "acl": " ", "host": "https://developer.salesforce.com", "templates": { "target": { "baseDir": "<%- bin %>", "unversioned": "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %>-<%- platform %>-<%- arch %><%- ext %>", "versioned": "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %>-v<%- version %>/<%- bin %>-v<%- version %>-<%- platform %>-<%- arch %><%- ext %>", "manifest": "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- platform %>-<%- arch %>" }, "vanilla": { "unversioned": "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %><%- ext %>", "versioned": "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %><%- bin %>-v<%- version %>/<%- bin %>-v<%- version %><%- ext %>", "baseDir": "<%- bin %>", "manifest": "<%- channel === 'stable' ? '' : 'channels/' + channel + '/' %>version" } } }, "node": {} }, "info": { "releasenotes": { "distTagUrl": "https://registry.npmjs.org/-/package/@salesforce/cli/dist-tags", "releaseNotesPath": "https://github.com/forcedotcom/cli/tree/main/releasenotes", "releaseNotesFilename": "README.md" } }, "macos": { "identifier": "com.salesforce.cli" }, "windows": { "name": "Salesforce CLI" }, "additionalVersionFlags": [ "-v" ], "additionalHelpFlags": [ "-h" ] }, "dependencies": { "@oclif/core": "2.15.0", "@oclif/plugin-autocomplete": "2.3.8", "@oclif/plugin-commands": "2.2.25", "@oclif/plugin-help": "5.2.19", "@oclif/plugin-not-found": "2.4.1", "@oclif/plugin-plugins": "3.4.2", "@oclif/plugin-search": "0.0.22", "@oclif/plugin-update": "3.2.3", "@oclif/plugin-version": "1.3.10", "@oclif/plugin-warn-if-update-available": "2.1.0", "@oclif/plugin-which": "2.2.32", "@salesforce/core": "^5.2.0", "@salesforce/plugin-apex": "2.3.14", "@salesforce/plugin-auth": "2.8.16", "@salesforce/plugin-data": "2.5.8", "@salesforce/plugin-deploy-retrieve": "1.17.8", "@salesforce/plugin-info": "2.6.40", "@salesforce/plugin-limits": "2.3.33", "@salesforce/plugin-login": "1.2.29", "@salesforce/plugin-marketplace": "0.1.3", "@salesforce/plugin-org": "2.10.6", "@salesforce/plugin-schema": "2.3.25", "@salesforce/plugin-settings": "1.4.28", "@salesforce/plugin-sobject": "0.2.6", "@salesforce/plugin-source": "2.10.33", "@salesforce/plugin-telemetry": "2.3.1", "@salesforce/plugin-templates": "55.5.11", "@salesforce/plugin-trust": "2.6.9", "@salesforce/plugin-user": "2.3.32", "@salesforce/sf-plugins-core": "3.1.22", "debug": "^4.3.4", "tslib": "^2.4.1" }, "pinnedDependencies": [ "@oclif/core", "@oclif/plugin-autocomplete", "@oclif/plugin-commands", "@oclif/plugin-help", "@oclif/plugin-not-found", "@oclif/plugin-plugins", "@oclif/plugin-search", "@oclif/plugin-update", "@oclif/plugin-version", "@oclif/plugin-warn-if-update-available", "@oclif/plugin-which", "@salesforce/plugin-apex", "@salesforce/plugin-auth", "@salesforce/plugin-data", "@salesforce/plugin-deploy-retrieve", "@salesforce/plugin-info", "@salesforce/plugin-limits", "@salesforce/plugin-login", "@salesforce/plugin-marketplace", "@salesforce/plugin-org", "@salesforce/plugin-schema", "@salesforce/plugin-settings", "@salesforce/plugin-sobject", "@salesforce/plugin-source", "@salesforce/plugin-telemetry", "@salesforce/plugin-templates", "@salesforce/plugin-trust", "@salesforce/sf-plugins-core", "@salesforce/plugin-user" ], "resolutions": { "@salesforce/schemas": "1.6.0", "@salesforce/templates": "59.0.1", "@salesforce/source-deploy-retrieve": "9.7.9", "@salesforce/source-tracking": "4.2.12" }, "repository": "salesforcecli/cli", "scripts": { "build": "sf-build", "channel:promote": "sf-release channel:promote", "clean": "sf-clean", "clean-all": "sf-clean all", "compile": "sf-compile", "docs": "sf-docs", "format": "sf-format", "lint": "eslint \"src/**/*.ts\"", "oclif-artifacts": "oclif manifest", "pack:deb": "oclif pack:deb", "pack:macos": "oclif pack:macos", "pack:tarballs": "oclif pack:tarballs --xz --parallel", "pack:tarballs:sequential": "oclif pack:tarballs --xz", "pack:verify": "sf-release cli:tarballs:verify --cli sf --windows-username-buffer 34", "pack:win": "oclif pack:win", "postinstall": "node ./scripts/post-install-release-notes.js", "postpack": "rm -f oclif.manifest.json npm-shrinkwrap.json", "preinstall": "node ./scripts/preinstall.js", "prepack": "sf-prepack", "prepare": "sf-install && yarn compile && yarn lint", "prepublishOnly": "npm shrinkwrap", "pretarball": "sf-release cli:tarballs:prepare --types", "pretest": "echo disable # sf-compile-test", "promote": "oclif promote", "promote-dist-tags": "./scripts/promote-dist-tags", "promote:verify": "sf-release cli:versions:inspect --channels stable --locations archive --cli sf", "promote:verify-rc": "sf-release cli:versions:inspect --channels stable-rc --locations archive --cli sf", "test": "sf-test", "test:deprecation-policy": "sf-release cli:artifacts:compare", "test:smoke-unix": "sf-release cli:tarballs:smoke --cli sf", "upload:deb": "oclif upload:deb", "upload:macos": "oclif upload:macos", "upload:tarballs": "oclif upload:tarballs --xz", "upload:win": "oclif upload:win", "version": "oclif readme" }, "types": "dist/index.d.ts", "devDependencies": { "@oclif/plugin-command-snapshot": "^3.3.0", "@salesforce/dev-config": "^4.0.1", "@salesforce/dev-scripts": "^3.1.1", "@salesforce/plugin-release-management": "^4.1.19", "@salesforce/prettier-config": "^0.0.3", "@salesforce/ts-sinon": "^1.4.15", "@types/debug": "^4.1.8", "@typescript-eslint/eslint-plugin": "^5.62.0", "@typescript-eslint/parser": "^5.62.0", "aws-sdk": "^2.1450.0", "chai": "^4.3.8", "eslint": "^8.48.0", "eslint-config-oclif": "^3.1", "eslint-config-oclif-typescript": "^0.2.0", "eslint-config-prettier": "^8.10.0", "eslint-config-salesforce": "^2.0.2", "eslint-config-salesforce-license": "^0.2.0", "eslint-config-salesforce-typescript": "^1.1.1", "eslint-plugin-header": "^3.1.1", "eslint-plugin-import": "^2.28.1", "eslint-plugin-jsdoc": "^46.5.1", "globby": "^11.1.0", "husky": "^7.0.4", "mocha": "^9.2.2", "nyc": "^15.1.0", "oclif": "^3.14.0", "prettier": "^2.8.8", "pretty-quick": "^3.1.3", "sinon": "^11.1.2", "ts-node": "^10.9.1", "typescript": "^4.9.5" } }, "name": "@salesforce/cli", "alias": "@salesforce/cli", "version": "2.9.1", "hooks": { "command_incomplete": [ "./dist/hooks/incomplete" ], "plugins:preinstall": [ "./dist/hooks/pluginsPreinstall.js" ], "update": [ "./dist/hooks/display-release-notes.js" ] }, "manifest": { "version": "2.9.1", "commands": { "cmdt:generate:field": { "id": "cmdt:generate:field", "summary": "Generate a field for a custom metadata type based on the provided field type.", "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.", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/plugin-custom-metadata", "pluginType": "jit", "aliases": [ "force:cmdt:field:create", "cmdt:field:create" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Unique name for the field.", "required": true, "multiple": false, "aliases": [ "fieldname" ] }, "type": { "name": "type", "type": "option", "char": "f", "summary": "Type of the field.", "description": "You can't use this command to create a custom metadata type field of type \"Metadata Relationship\". Use the Salesforce Setup UI instead.", "required": true, "multiple": false, "options": [ "Checkbox", "Date", "DateTime", "Email", "Number", "Percent", "Phone", "Picklist", "Text", "TextArea", "LongTextArea", "Url" ], "aliases": [ "fieldtype" ] }, "picklist-values": { "name": "picklist-values", "type": "option", "char": "p", "summary": "Picklist values; required for picklist fields.", "multiple": true, "aliases": [ "picklistvalues" ], "delimiter": "," }, "decimal-places": { "name": "decimal-places", "type": "option", "char": "s", "summary": "Number of decimal places to use for number or percent fields.", "description": "The value must be greater than or equal to zero. Default value is 0.", "multiple": false, "default": 0, "aliases": [ "decimalplaces" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the field.", "multiple": false }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created field definition files.", "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.", "multiple": false, "default": "", "aliases": [ "outputdir", "outputdirectory" ] } }, "args": {}, "requiresProject": true }, "cmdt:generate:fromorg": { "id": "cmdt:generate:fromorg", "summary": "Generate a custom metadata type and all its records from a Salesforce object.", "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.", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/plugin-custom-metadata", "pluginType": "jit", "aliases": [ "force:cmdt:generate" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "dev-name": { "name": "dev-name", "type": "option", "char": "n", "summary": "Name of the custom metadata type.", "required": true, "multiple": false, "aliases": [ "devname" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the custom metadata type.", "multiple": false }, "plural-label": { "name": "plural-label", "type": "option", "char": "p", "summary": "Plural version of the label value; if blank, uses label.", "multiple": false, "aliases": [ "plurallabel" ] }, "visibility": { "name": "visibility", "type": "option", "char": "v", "summary": "Who can see the custom metadata type.", "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.", "multiple": false, "options": [ "PackageProtected", "Protected", "Public" ], "default": "Public" }, "sobject": { "name": "sobject", "type": "option", "char": "s", "summary": "API name of the source Salesforce object used to generate the custom metadata type.", "required": true, "multiple": false, "aliases": [ "sobjectname" ] }, "ignore-unsupported": { "name": "ignore-unsupported", "type": "boolean", "char": "i", "summary": "Ignore unsupported field types.", "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.", "allowNo": false, "aliases": [ "ignoreunsupported" ] }, "type-output-directory": { "name": "type-output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created custom metadata type files.", "multiple": false, "default": "force-app/main/default/objects", "aliases": [ "typeoutputdir" ] }, "records-output-dir": { "name": "records-output-dir", "type": "option", "char": "r", "summary": "Directory to store newly-created custom metadata record files.", "multiple": false, "default": "force-app/main/default/customMetadata", "aliases": [ "recordsoutputdir" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "cmdt:generate:object": { "id": "cmdt:generate:object", "summary": "Generate a new custom metadata type in the current project.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/plugin-custom-metadata", "pluginType": "jit", "aliases": [ "force:cmdt:create", "cmdt:create" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "type-name": { "name": "type-name", "type": "option", "char": "n", "summary": "Unique object name for the custom metadata type.", "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.", "required": true, "multiple": false, "aliases": [ "typename" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the custom metadata type.", "multiple": false }, "plural-label": { "name": "plural-label", "type": "option", "char": "p", "summary": "Plural version of the label value; if blank, uses label.", "multiple": false, "aliases": [ "plurallabel" ] }, "visibility": { "name": "visibility", "type": "option", "char": "v", "summary": "Who can see the custom metadata type.", "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.", "multiple": false, "options": [ "PackageProtected", "Protected", "Public" ], "default": "Public" }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store the newly-created custom metadata type files", "description": "The location can be an absolute path or relative to the current working directory. The default is the current directory.", "multiple": false, "default": "", "aliases": [ "outputdir", "outputdirectory" ] } }, "args": {}, "requiresProject": true }, "cmdt:generate:record": { "id": "cmdt:generate:record", "summary": "Generate a new record for a given custom metadata type in the current project.", "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.", "strict": false, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/plugin-custom-metadata", "pluginType": "jit", "aliases": [ "force:cmdt:record:create", "cmdt:record:create" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "type-name": { "name": "type-name", "type": "option", "char": "t", "summary": "API name of the custom metadata type to create a record for; must end in \"__mdt\".", "required": true, "multiple": false, "aliases": [ "typename" ] }, "record-name": { "name": "record-name", "type": "option", "char": "n", "summary": "Name of the new record.", "required": true, "multiple": false, "aliases": [ "recordname" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the new record.", "multiple": false }, "protected": { "name": "protected", "type": "option", "char": "p", "summary": "Protect the record when it's in a managed package.", "description": "Protected records can only be accessed by code in the same managed package namespace.", "multiple": false, "options": [ "true", "false" ], "default": "false" }, "input-directory": { "name": "input-directory", "type": "option", "char": "i", "summary": "Directory from which to get the custom metadata type definition from.", "multiple": false, "default": "force-app/main/default/objects", "aliases": [ "inputdir", "inputdirectory" ] }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created custom metadata record files.", "multiple": false, "default": "force-app/main/default/customMetadata", "aliases": [ "outputdir", "outputdirectory" ] } }, "args": {}, "requiresProject": true }, "cmdt:generate:records": { "id": "cmdt:generate:records", "summary": "Generate new custom metadata type records from a CSV file.", "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.", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/plugin-custom-metadata", "pluginType": "jit", "aliases": [ "force:cmdt:record:insert", "cmdt:record:insert" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "csv": { "name": "csv", "type": "option", "char": "f", "summary": "Pathname of the CSV file.", "required": true, "multiple": false, "aliases": [ "filepath" ] }, "type-name": { "name": "type-name", "type": "option", "char": "t", "summary": "API name of the custom metadata type to create a record for.", "description": "The '__mdt' suffix is appended to the end of the name if it's omitted.", "required": true, "multiple": false, "aliases": [ "typename" ] }, "input-directory": { "name": "input-directory", "type": "option", "char": "i", "summary": "Directory from which to get the custom metadata type definition from.", "multiple": false, "default": "force-app/main/default/objects", "aliases": [ "inputdir", "inputdirectory" ] }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created custom metadata record files.", "multiple": false, "default": "force-app/main/default/customMetadata", "aliases": [ "outputdir", "outputdirectory" ] }, "name-column": { "name": "name-column", "type": "option", "char": "n", "summary": "Column used to determine the name of the record.", "multiple": false, "default": "Name", "aliases": [ "namecolumn" ] } }, "args": {}, "requiresProject": true }, "community:create": { "id": "community:create", "summary": "Create an Experience Cloud site using a template.", "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.", "strict": false, "pluginName": "@salesforce/plugin-community", "pluginAlias": "@salesforce/plugin-community", "pluginType": "jit", "aliases": [ "force:community:create" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the site to create.", "required": true, "multiple": false, "deprecateAliases": true }, "template-name": { "name": "template-name", "type": "option", "char": "t", "summary": "Template to use to create a site.", "description": "An example of a template is Customer Service. Run the \"community template list\" command to see which templates are available in your org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "templatename" ] }, "url-path-prefix": { "name": "url-path-prefix", "type": "option", "char": "p", "summary": "URL to append to the domain created when Digital Experiences was enabled for this org.", "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.", "multiple": false, "default": "", "deprecateAliases": true, "aliases": [ "urlpathprefix" ] }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Description of the site.", "description": "The description displays in Digital Experiences - All Sites in Setup and helps with site identification.", "multiple": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] } }, "args": {}, "hasDynamicHelp": true }, "community:publish": { "id": "community:publish", "summary": "Publish an Experience Builder site to make it live.", "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.", "strict": true, "pluginName": "@salesforce/plugin-community", "pluginAlias": "@salesforce/plugin-community", "pluginType": "jit", "aliases": [ "force:community:publish" ], "examples": [ "Publish the Experience Builder site with name \"My Customer Site':\n<%= config.bin %> <%= command.id %> --name 'My Customer Site'" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the Experience Builder site to publish.", "required": true, "multiple": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "community:list:template": { "id": "community:list:template", "summary": "Retrieve the list of templates available in your org.", "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.", "strict": true, "pluginName": "@salesforce/plugin-community", "pluginAlias": "@salesforce/plugin-community", "pluginType": "jit", "aliases": [ "force:community:template:list" ], "examples": [ "Retrieve the template list from an org with alias my-scratch-org:\n<%= config.bin %> <%= command.id %> --target-org my-scratch-org" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "dev:audit:messages": { "id": "dev:audit:messages", "summary": "Audit messages in a plugin's messages directory to locate unused messages and missing messages that have references in source code.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "project-dir": { "name": "project-dir", "type": "option", "char": "p", "summary": "Location of the project where messages are to be audited.", "multiple": false, "default": ".", "aliases": [ "projectdir" ] }, "messages-dir": { "name": "messages-dir", "type": "option", "char": "m", "summary": "Directory that contains the plugin's message files.", "description": "The default is the \"messages\" directory in the current working directory.", "multiple": false, "default": "messages", "aliases": [ "messagesdir" ] }, "source-dir": { "name": "source-dir", "type": "option", "char": "s", "summary": "Directory that contains the plugin's source code.", "description": "The default is the \"src\" directory in the current working directory.", "multiple": false, "default": "src", "aliases": [ "sourcedir" ] } }, "args": {} }, "dev:configure:repo": { "id": "dev:configure:repo", "summary": "Configure a GitHub repo for the GitHub Actions pipeline.", "description": "Sets up labels and exempts the CLI bot for branch protection and PR rules.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "examples": [ "Configure the repo \"testPackageRelease\", with owner \"salesforcecli\", for GitHub Actions.\n<%= config.bin %> <%= command.id %> --repository salesforcecli/testPackageRelease" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "repository": { "name": "repository", "type": "option", "char": "r", "summary": "GitHub owner/repo for which you want to configure GitHub Actions.", "required": true, "multiple": false }, "dry-run": { "name": "dry-run", "type": "boolean", "char": "d", "summary": "Make no changes.", "allowNo": false, "aliases": [ "dryrun" ] }, "bot": { "name": "bot", "type": "option", "char": "b", "summary": "GitHub login/username for the bot.", "multiple": false, "default": "SF-CLI-BOT" } }, "args": {} }, "dev:configure:secrets": { "id": "dev:configure:secrets", "summary": "Ensures a GitHub repo has correct access to secrets based on its workflows.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "examples": [ "Ensure secrets access for the repo \"testPackageRelease\", with owner \"salesforcecli\":", "<%= config.bin %> <%= command.id %> --repository salesforcecli/testPackageRelease" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "repository": { "name": "repository", "type": "option", "char": "r", "summary": "Github owner/repo.", "required": true, "multiple": false }, "dry-run": { "name": "dry-run", "type": "boolean", "char": "d", "summary": "Make no changes.", "allowNo": false, "aliases": [ "dryrun" ] } }, "args": {} }, "dev:convert:messages": { "id": "dev:convert:messages", "summary": "Convert a .json messages file into Markdown.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "project-dir": { "name": "project-dir", "type": "option", "char": "p", "summary": "Location of the project whose messages are to be converted.", "multiple": false, "default": ".", "aliases": [ "projectdir" ] }, "file-name": { "name": "file-name", "type": "option", "char": "f", "summary": "Filename to convert.", "required": true, "multiple": true, "aliases": [ "filename" ] } }, "args": {} }, "dev:convert:script": { "id": "dev:convert:script", "summary": "Convert a script file that contains deprecated sfdx-style commands to use the new sf-style commands instead.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "script": { "name": "script", "type": "option", "char": "s", "summary": "Filepath to the script you want to convert.", "required": true, "multiple": false }, "no-prompt": { "name": "no-prompt", "type": "boolean", "summary": "Don't prompt for suggested replacements.", "hidden": true, "allowNo": false } }, "args": {} }, "dev:generate:command": { "id": "dev:generate:command", "summary": "Generate a new sf command.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "examples": [ "Generate the files for a new \"sf my exciting command\":\n<%= config.bin %> <%= command.id %> --name my:exciting:command" ], "flags": { "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the new command. Use colons to separate the topic and command names.", "required": true, "multiple": false }, "force": { "name": "force", "type": "boolean", "summary": "Overwrite existing files.", "allowNo": false }, "nuts": { "name": "nuts", "type": "boolean", "summary": "Generate a NUT test file for the command.", "allowNo": true }, "unit": { "name": "unit", "type": "boolean", "summary": "Generate a unit test file for the command.", "allowNo": true } }, "args": {} }, "dev:generate:flag": { "id": "dev:generate:flag", "summary": "Generate a flag for an existing command.", "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 udpating it.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "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": { "dry-run": { "name": "dry-run", "type": "boolean", "char": "d", "summary": "Print new flag code instead of adding it to the command file.", "allowNo": false, "aliases": [ "dryrun" ] } }, "args": {} }, "dev:generate:library": { "id": "dev:generate:library", "summary": "Generate a new library.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [], "examples": [ "<%= config.bin %> <%= command.id %>" ], "flags": {}, "args": {} }, "dev:generate:plugin": { "id": "dev:generate:plugin", "summary": "Generate a new sf plugin.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/plugin-dev", "pluginType": "jit", "aliases": [ "plugins:generate" ], "examples": [ "<%= config.bin %> <%= command.id %>" ], "deprecateAliases": true, "flags": {}, "args": {} }, "project:deploy:pipeline:quick": { "id": "project:deploy:pipeline:quick", "summary": "Quickly deploy a validated deployment to an org.", "description": "Before you run this command, first create a validated deployment with the \"sf 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/plugin-devops-center", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "async": { "name": "async", "type": "boolean", "summary": "Run the command asynchronously.", "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\".", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "job-id": { "name": "job-id", "type": "option", "char": "i", "summary": "Job ID of the validated deployment to quick deploy.", "description": "The job ID is valid for 10 days from when you started the validation.", "multiple": false }, "use-most-recent": { "name": "use-most-recent", "type": "boolean", "char": "r", "summary": "Use the job ID of the most recently validated deployment.", "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.", "allowNo": false } }, "args": {}, "hasDynamicHelp": true }, "project:deploy:pipeline:report": { "id": "project:deploy:pipeline:report", "summary": "Check the status of a pipeline deploy operation.", "description": "Run 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/plugin-devops-center", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "job-id": { "name": "job-id", "type": "option", "char": "i", "summary": "Job ID of the pipeline deployment to check the status of.", "description": "The job ID is valid for 10 days from when you started the deploy operation.", "multiple": false }, "use-most-recent": { "name": "use-most-recent", "type": "boolean", "char": "r", "summary": "Use the job ID of the most recent deploy operation.", "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.", "allowNo": false } }, "args": {}, "hasDynamicHelp": true }, "project:deploy:pipeline:resume": { "id": "project:deploy:pipeline:resume", "summary": "Resume watching a pipeline deploy operation.", "description": "Use 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/plugin-devops-center", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "job-id": { "name": "job-id", "type": "option", "char": "i", "summary": "Job ID of the pipeline deploy operation you want to resume.", "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.", "multiple": false }, "use-most-recent": { "name": "use-most-recent", "type": "boolean", "char": "r", "summary": "Use the job ID of the most recent deploy operation.", "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.", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } } }, "args": {}, "hasDynamicHelp": true }, "project:deploy:pipeline:start": { "id": "project:deploy:pipeline:start", "summary": "Deploy changes from a branch to the pipeline stage’s org.", "description": "Before you run this command, changes in the pipeline stage's branch must be merged in the source control repository.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/plugin-devops-center", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "branch-name": { "name": "branch-name", "type": "option", "char": "b", "summary": "Name of the branch in the source control repository that corresponds to the pipeline stage that you want to deploy the changes to.", "required": true, "multiple": false }, "bundle-version-name": { "name": "bundle-version-name", "type": "option", "char": "v", "summary": "Version name of the bundle.", "description": "You must indicate the bundle version if deploying to the environment that corresponds to the first stage after the bundling stage.", "multiple": false }, "deploy-all": { "name": "deploy-all", "type": "boolean", "char": "a", "summary": "Deploy all metadata in the branch to the stage's org.", "description": "If you don’t specify this flag, only changes in the stage’s branch are deployed.", "allowNo": false }, "devops-center-project-name": { "name": "devops-center-project-name", "type": "option", "char": "p", "summary": "Name of the DevOps Center project.", "required": true, "multiple": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "tests": { "name": "tests", "type": "option", "char": "t", "summary": "Apex tests to run when --test-level is RunSpecifiedTests.", "description": "Separate multiple test names with commas. Enclose the entire flag value in double quotes if a test name contains spaces.", "multiple": true }, "test-level": { "name": "test-level", "type": "option", "char": "l", "summary": "Deployment Apex testing level.", "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 --run-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 [Running Tests in a Deployment](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy_running_tests.htm) in the \"Metadata API Developer Guide\".", "multiple": false, "options": [ "NoTestRun", "RunSpecifiedTests", "RunLocalTests", "RunAllTestsInOrg" ] }, "async": { "name": "async", "type": "boolean", "summary": "Run the command asynchronously.", "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\".", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] } }, "args": {}, "hasDynamicHelp": true }, "project:deploy:pipeline:validate": { "id": "project:deploy:pipeline:validate", "summary": "Perform a validate-only deployment from a branch to the pipeline stage’s org.", "description": "A 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/plugin-devops-center", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "branch-name": { "name": "branch-name", "type": "option", "char": "b", "summary": "Name of the branch in the source control repository that corresponds to the pipeline stage that you want to deploy the changes to.", "required": true, "multiple": false }, "bundle-version-name": { "name": "bundle-version-name", "type": "option", "char": "v", "summary": "Version name of the bundle.", "description": "You must indicate the bundle version if deploying to the environment that corresponds to the first stage after the bundling stage.", "multiple": false }, "deploy-all": { "name": "deploy-all", "type": "boolean", "char": "a", "summary": "Deploy all metadata in the branch to the stage's org.", "description": "If you don’t specify this flag, only changes in the stage’s branch are deployed.", "allowNo": false }, "devops-center-project-name": { "name": "devops-center-project-name", "type": "option", "char": "p", "summary": "Name of the DevOps Center project.", "required": true, "multiple": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "tests": { "name": "tests", "type": "option", "char": "t", "summary": "Apex tests to run when --test-level is RunSpecifiedTests.", "description": "Separate multiple test names with commas. Enclose the entire flag value in double quotes if a test name contains spaces.", "multiple": true }, "test-level": { "name": "test-level", "type": "option", "char": "l", "summary": "Deployment Apex testing level.", "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 --run-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 [Running Tests in a Deployment](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy_running_tests.htm) in the \"Metadata API Developer Guide\".", "multiple": false, "options": [ "NoTestRun", "RunSpecifiedTests", "RunLocalTests", "RunAllTestsInOrg" ] }, "async": { "name": "async", "type": "boolean", "summary": "Run the command asynchronously.", "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\".", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] } }, "args": {}, "hasDynamicHelp": true }, "env:display": { "id": "env:display", "summary": "Display details about an environment.", "description": "Specify an environment with either the username you used when you logged into the environment with \"sf login\", or the alias you gave the environment when you created it. Run \"sf env list\" to view all your environments and their aliases.\n\nOutput depends on the type of environment.", "strict": true, "pluginName": "@salesforce/plugin-env", "pluginAlias": "@salesforce/plugin-env", "pluginType": "jit", "aliases": [], "examples": [ "Display details about the \"myEnv\" environment:\n<%- config.bin %> <%- command.id %> --target-env myEnv" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-env": { "name": "target-env", "type": "option", "char": "e", "summary": "Environment alias or login user.", "multiple": false } }, "args": {} }, "env:list": { "id": "env:list", "summary": "List the environments you’ve created or logged into.", "description": "By default, the command displays active environments.\n\nOutput is displayed in multiple tables, one for each environment type.\n\nThe compute environment table shows the alias, information about the connected orgs, the project name, and more.\n\nUse the table manipulation flags, such as --filter and --sort, to change how the data is displayed.\n\nRun \"sf env display\" to view details about a specific environment.", "strict": true, "pluginName": "@salesforce/plugin-env", "pluginAlias": "@salesforce/plugin-env", "pluginType": "jit", "aliases": [], "examples": [ "List all active environments:\n<%= config.bin %> <%= command.id %>", "List both active and inactive environments:\n<%= config.bin %> <%= command.id %> --all", "Don't truncate the displayed output and instead wrap text that's wider than your terminal:\n<%= config.bin %> <%= command.id %> --no-truncate", "Display only the table data, not the headers, in comma-separated value (csv) format:\n<%= config.bin %> <%= command.id %> --csv --no-header" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "all": { "name": "all", "type": "boolean", "char": "a", "summary": "Show all environments, even inactive ones.", "allowNo": false }, "columns": { "name": "columns", "type": "option", "summary": "List of columns to display.", "multiple": true }, "csv": { "name": "csv", "type": "boolean", "summary": "Output in csv format [alias: --output=csv]", "allowNo": false }, "filter": { "name": "filter", "type": "option", "summary": "Filter property by partial string matching.", "multiple": false }, "no-header": { "name": "no-header", "type": "boolean", "summary": "Hide table header from output.", "allowNo": false }, "no-truncate": { "name": "no-truncate", "type": "boolean", "summary": "Don't truncate output to fit screen.", "allowNo": false }, "output": { "name": "output", "type": "option", "summary": "Format in which to display the output.", "multiple": false, "options": [ "csv", "json", "yaml" ] }, "sort": { "name": "sort", "type": "option", "summary": "Column to sort by (prepend '-' for descending).", "multiple": false } }, "args": {} }, "env:open": { "id": "env:open", "summary": "Open an environment in a web browser.", "description": "Each of your environments is associated with an instance URL, such as https://login.salesforce.com. To open a specific web page, specify the portion of the URL after \"/\" with the --path flag.", "strict": true, "pluginName": "@salesforce/plugin-env", "pluginAlias": "@salesforce/plugin-env", "pluginType": "jit", "aliases": [], "examples": [ "Open the compute environment with alias \"test-compute\":\n<%= config.bin %> <%= command.id %> --target-env test-compute", "View the URL but don't launch it in a browser:\n<%= config.bin %> <%= command.id %> --target-env test-compute --url-only", "Open the environment in the Google Chrome browser:\n<%= config.bin %> <%= command.id %> --target-env test-compute --url-only --browser chrome" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "path": { "name": "path", "type": "option", "char": "p", "summary": "Path to append to the end of the login URL.", "multiple": false }, "url-only": { "name": "url-only", "type": "boolean", "char": "r", "summary": "Display the URL, but don’t launch it in a browser.", "allowNo": false }, "target-env": { "name": "target-env", "type": "option", "char": "e", "summary": "Login user or alias of the environment to open.", "multiple": false }, "browser": { "name": "browser", "type": "option", "summary": "Browser in which to open the environment.", "description": "You can specify that the environment open in one of the following browsers: Firefox, Safari, Google Chrome, or Windows Edge. If you don’t specify --browser, the environment opens in your default browser. The exact names of the browser applications differ depending on the operating system you're on; check your documentation for details.", "multiple": false } }, "args": {} }, "deploy:functions": { "id": "deploy:functions", "summary": "Deploy a Salesforce Function to an org from your local project.", "description": "You must run this command from within a git repository. Only committed changes to Functions are deployed. The active branch is deployed unless specified otherwise with `--branch`.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Deploy a Salesforce Function:\n<%= config.bin %> <%= command.id %> --connected-org org-alias", "Deploy to 'deploy-branch':\n<%= config.bin %> <%= command.id %> --connected-org org-alias --branch deploy-branch", "Overwrite the remote repository:\n<%= config.bin %> <%= command.id %> --connected-org org-alias --force" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "connected-org": { "name": "connected-org", "type": "option", "char": "o", "description": "Username or alias for the org that the compute environment should be connected to.", "required": true, "multiple": false }, "branch": { "name": "branch", "type": "option", "char": "b", "description": "Deploy the latest commit from a branch different from the currently active branch.", "multiple": false }, "force": { "name": "force", "type": "boolean", "description": "Ignore warnings and overwrite remote repository (not allowed in production).", "allowNo": false }, "quiet": { "name": "quiet", "type": "boolean", "char": "q", "description": "Limit the amount of output displayed from the deploy process.", "allowNo": false } }, "args": {} }, "env:delete": { "id": "env:delete", "summary": "Delete an environment.", "description": "You must include the name of the environment to delete using '--target-compute'. Run 'sf env list' to see a list of environments.\n\nRunning this command will prompt a confirmation. If you want to skip this confirmation, use the '--confirm' flag and the environment alias to skip confirmation.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Delete a compute environment:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias", "Delete without a confirmation step:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --confirm environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "confirm": { "name": "confirm", "type": "option", "description": "Confirmation name.", "helpValue": "name", "multiple": true } }, "args": {} }, "env:log": { "id": "env:log", "summary": "Stream log output for an environment.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "state": "beta", "aliases": [], "examples": [ "Stream log output:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias" ], "flags": { "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Compute environment name to retrieve logs.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "num": { "name": "num", "type": "option", "char": "n", "description": "Number of lines to display.", "multiple": false } }, "args": {} }, "generate:function": { "id": "generate:function", "summary": "Create a Salesforce Function with basic scaffolding specific to a given language.", "description": "Both '--language' and '--name' are required flags. Function names must start with a capital letter.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Create a JavaScript function:\n<%= config.bin %> <%= command.id %> --function-name myfunction --language javascript" ], "flags": { "function-name": { "name": "function-name", "type": "option", "char": "n", "description": "Function name. Must start with a capital letter.", "multiple": false, "exclusive": [ "name" ] }, "name": { "name": "name", "type": "option", "char": "n", "description": "Function name. Must start with a capital letter.", "hidden": true, "multiple": false, "exclusive": [ "function-name" ] }, "language": { "name": "language", "type": "option", "char": "l", "description": "The language in which the function is written.", "required": true, "multiple": false, "options": [ "java", "javascript", "python", "typescript" ] } }, "args": {} }, "login:functions": { "id": "login:functions", "summary": "Log in to Salesforce Functions.", "description": "This step is required to develop or deploy Salesforce Functions.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Log in to Salesforce Functions:\n<%= config.bin %> <%= command.id %>" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false } }, "args": {} }, "logout:functions": { "id": "logout:functions", "summary": "Log out of your Salesforce Functions account.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Log out:\n<%= config.bin %> <%= command.id %>" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false } }, "args": {} }, "run:function": { "id": "run:function", "summary": "Send a cloudevent to a function.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Run a function:\n<%= config.bin %> <%= command.id %> --url http://path/to/function", "Run a function with a payload and a JSON response:\n<%= config.bin %> <%= command.id %> --url http://path/to/function --payload '@file.json' --structured" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "function-url": { "name": "function-url", "type": "option", "char": "l", "description": "URL of the function to run.", "multiple": false, "exclusive": [ "url" ] }, "url": { "name": "url", "type": "option", "char": "l", "description": "URL of the function to run.", "hidden": true, "multiple": false, "exclusive": [ "function-url" ] }, "headers": { "name": "headers", "type": "option", "char": "H", "description": "Set headers.", "multiple": true }, "payload": { "name": "payload", "type": "option", "char": "p", "description": "Set the payload of the cloudevent as a JSON object or a path to a file via @file.json.", "multiple": false }, "structured": { "name": "structured", "type": "boolean", "char": "s", "description": "Set the cloudevent to be emitted as a structured JSON cloudevent.", "allowNo": false }, "connected-org": { "name": "connected-org", "type": "option", "char": "o", "description": "Username or alias for the target org; overrides default target org.", "multiple": false } }, "args": {} }, "whoami:functions": { "id": "whoami:functions", "summary": "Show information on your Salesforce Functions login.", "description": "Returns your email and ID. Use '--show-token' to show your Salesforce Functions token.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Get account information:\n<%= config.bin %> <%= command.id %>", "Show token and output result as JSON:\n<%= config.bin %> <%= command.id %> --show-token --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "show-token": { "name": "show-token", "type": "boolean", "description": "Show the stored functions token.", "hidden": true, "allowNo": false } }, "args": {} }, "env:create:compute": { "id": "env:create:compute", "summary": "Create a compute environment for use with Salesforce Functions.", "description": "Compute environments must be connected to a Salesforce org. By default the command uses your local environment's connected org. Use the '--connected-org' flag to specify a specific org. Run 'sf env list' to see a list of environments.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Create a compute environment to run Salesforce Functions:\n<%= config.bin %> <%= command.id %>", "Connect the environment to a specific org:\n<%= config.bin %> <%= command.id %> --connected-org=org-alias", "Create an alias for the compute environment:\n<%= config.bin %> <%= command.id %> --alias environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "connected-org": { "name": "connected-org", "type": "option", "char": "o", "description": "Username or alias for the org that the compute environment should be connected to.", "required": false, "multiple": false }, "alias": { "name": "alias", "type": "option", "char": "a", "description": "Alias for the created environment.", "multiple": false } }, "args": {} }, "env:log:tail": { "id": "env:log:tail", "summary": "Stream log output for an environment.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Stream log output:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias" ], "flags": { "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Compute environment name to retrieve logs.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, "env:logdrain:add": { "id": "env:logdrain:add", "summary": "Add log drain to a specified environment.", "description": "Both '--target-compute' and '--url' are required flags. '--url' should be a HTTP or HTTPS URL that can receive the log drain messages.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Add a log drain:\n<%= config.bin %> <%= command.id %> --target-compute environment-name --url https://path/to/logdrain" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "drain-url": { "name": "drain-url", "type": "option", "char": "l", "description": "Endpoint that will receive sent logs.", "multiple": false, "exclusive": [ "url" ] }, "url": { "name": "url", "type": "option", "char": "u", "description": "Endpoint that will receive sent logs.", "hidden": true, "multiple": false, "exclusive": [ "drain-url" ] } }, "args": {} }, "env:logdrain:list": { "id": "env:logdrain:list", "summary": "List log drains connected to a specified environment.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "List log drains:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias", "List log drains as json:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, "env:logdrain:remove": { "id": "env:logdrain:remove", "summary": "Remove log drain from a specified environment.", "description": "Both '--target-compute' and '--drain-url' are required flags.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Remove a logdrain:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --url https://path/to/logdrain" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "drain-url": { "name": "drain-url", "type": "option", "char": "l", "description": "Log drain url to remove.", "multiple": false, "exclusive": [ "url" ] }, "url": { "name": "url", "type": "option", "char": "u", "description": "Log drain url to remove.", "hidden": true, "multiple": false, "exclusive": [ "drain-url" ] } }, "args": {} }, "env:var:get": { "id": "env:var:get", "summary": "Display a single config variable for an environment.", "description": "You must provide the '--target-compute' flag and the key to retrieve.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Get a config variable:\n<%= config.bin %> <%= command.id %> [KEY] --target-compute environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": { "key": { "name": "key", "required": true } } }, "env:var:list": { "id": "env:var:list", "summary": "List your environment's config vars in a table.", "description": "Use the '--json' flag to return config vars in JSON format.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "List config vars:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias", "List in JSON format:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, "env:var:set": { "id": "env:var:set", "summary": "Set a single config value for an environment.", "strict": false, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Set a config value:\n<%= config.bin %> <%= command.id %> [KEY]=[VALUE] --target-compute environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, "env:var:unset": { "id": "env:var:unset", "summary": "Unset a single config value for an environment.", "description": "Run 'sf env var list' to see a list of config values that can be unset.", "strict": false, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Unset a value:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, "login:functions:jwt": { "id": "login:functions:jwt", "summary": "Login using JWT instead of default web-based flow. This will authenticate you with both sf and Salesforce Functions.", "description": "Use this command when executing from a script.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Log in using JWT:\n<%= config.bin %> <%= command.id %> --username example@username.org --keyfile file.key --clientid 123456", "Log in and specify the org alias and URL, set as default org and default Dev Hub, and format output as JSON:\n<%= config.bin %> <%= command.id %> --username example@username.org --keyfile file.key --clientid 123456 --alias org-alias --set-default --set-default-dev-hub --instance-url https://path/to/instance --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "username": { "name": "username", "type": "option", "char": "u", "description": "Authentication username.", "required": true, "multiple": false }, "keyfile": { "name": "keyfile", "type": "option", "char": "f", "description": "Path to JWT keyfile.", "required": true, "multiple": false }, "clientid": { "name": "clientid", "type": "option", "char": "i", "description": "OAuth client ID.", "required": true, "multiple": false }, "instance-url": { "name": "instance-url", "type": "option", "char": "l", "description": "The login URL of the instance the org lives on.", "multiple": false, "exclusive": [ "instanceurl" ] }, "instanceurl": { "name": "instanceurl", "type": "option", "char": "l", "description": "The login URL of the instance the org lives on.", "hidden": true, "multiple": false, "exclusive": [ "instance-url" ] }, "alias": { "name": "alias", "type": "option", "char": "a", "description": "Alias for the org.", "multiple": false }, "set-default": { "name": "set-default", "type": "boolean", "char": "d", "description": "Set the org as the default that all org-related commands run against.", "allowNo": false }, "set-default-dev-hub": { "name": "set-default-dev-hub", "type": "boolean", "char": "v", "description": "Set the org as the default Dev Hub for scratch org creation.", "allowNo": false } }, "args": {} }, "run:function:start": { "id": "run:function:start", "summary": "Build and run a Salesforce Function.", "description": "Run this command from the directory of your Salesforce Functions project.\n\nThis command will run the target function locally (on the same operating system as this CLI), just like the `local` subcommand.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Build a function and start the invoker\n<%= config.bin %> <%= command.id %>", "Start the invoker with a specific language and port\n<%= config.bin %> <%= command.id %> --port 5000 --language javascript" ], "flags": { "path": { "name": "path", "type": "option", "description": "Path to function directory.", "hidden": true, "multiple": false, "default": "/home/runner/work/cli/cli" }, "port": { "name": "port", "type": "option", "char": "p", "description": "Port for running the function.", "multiple": false, "default": 8080 }, "debug-port": { "name": "debug-port", "type": "option", "char": "b", "description": "Port for remote debugging.", "multiple": false, "default": 9229 }, "language": { "name": "language", "type": "option", "char": "l", "description": "The language that the function runs in.", "multiple": false, "options": [ "auto", "java", "javascript", "python", "typescript" ], "default": "auto" }, "verbose": { "name": "verbose", "type": "boolean", "char": "v", "description": "Output additional logs.", "allowNo": false } }, "args": {} }, "env:compute:collaborator:add": { "id": "env:compute:collaborator:add", "summary": "Add a Heroku user as a collaborator on this Functions account, allowing them to attach Heroku add-ons to compute environments.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Add a Heroku user as a collaborator on this Functions account.\n<%= config.bin %> <%= command.id %> --heroku-user example@heroku.com" ], "flags": { "heroku-user": { "name": "heroku-user", "type": "option", "char": "h", "description": "Email address of the Heroku user you're adding as a collaborator.", "required": true, "multiple": false } }, "args": {} }, "run:function:start:container": { "id": "run:function:start:container", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "hidden": false, "aliases": [], "flags": {}, "args": {} }, "run:function:start:local": { "id": "run:function:start:local", "description": "Build and run a Salesforce Function locally.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/plugin-functions", "pluginType": "jit", "aliases": [], "examples": [ "Build a function and start the invoker\n<%= config.bin %> <%= command.id %>", "Start the invoker with a specific language and port\n<%= config.bin %> <%= command.id %> --port 5000 --language javascript" ], "flags": { "path": { "name": "path", "type": "option", "description": "Path to function directory.", "hidden": true, "multiple": false, "default": "/home/runner/work/cli/cli" }, "port": { "name": "port", "type": "option", "char": "p", "description": "Port to bind the invoker to.", "multiple": false, "default": 8080 }, "debug-port": { "name": "debug-port", "type": "option", "char": "b", "description": "Port to use for debugging the function.", "multiple": false, "default": 9229 }, "language": { "name": "language", "type": "option", "char": "l", "description": "The language in which the function is written.", "multiple": false, "options": [ "auto", "java", "javascript", "python", "typescript" ], "default": "auto" } }, "args": {} }, "package:convert": { "id": "package:convert", "summary": "Create a second-generation package version from a first-generation package.", "description": "The package convert creates a new package in the Dev Hub if one does not already exist for the specified first-generation package.\n\nIt then creates a new package version in the Dev Hub with contents based on the specified first-generation package.\n\nThe latest released non-patch package version from the specified first-generation package will be converted.\n\nTo retrieve details about a package version create request, including status and package version ID (04t), run \"<%= config.bin %> package version create report -i 08c...\".\n\nWe recommend specifying the --installation-key to protect the contents of your package and to prevent unauthorized installation of your package.\n\nTo list package version creation requests in the org, run \"<%= config.bin %> package version create list\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "hidden": true, "aliases": [ "force:package:convert" ], "examples": [ "Create a second-generation package version from the first-generation package with the specified ID and give it the installation key \"password123\"; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 033... --installation-key password123", "Similar to previous example, but uses the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 033... --installation-key password123 --target-dev-hub devhuborg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 033) of the first-generation package to convert.", "required": true, "multiple": false, "deprecateAliases": true }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package.", "description": "Either an --installation-key value or the --installation-key-bypass flag is required.", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "definition-file": { "name": "definition-file", "type": "option", "char": "f", "summary": "Path to a definition file that contains features and org preferences that the metadata of the package version depends on.", "description": "This definition file is similar to the scratch org definition file.", "multiple": false, "deprecateAliases": true, "aliases": [ "definitionfile" ] }, "installation-key-bypass": { "name": "installation-key-bypass", "type": "boolean", "char": "x", "summary": "Bypass the installation key requirement.", "description": "If you bypass this requirement, anyone can install your package. Either an --installation-key value or the --installation-key-bypass flag is required.", "allowNo": false, "deprecateAliases": true, "aliases": [ "installationkeybypass" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Minutes to wait for the package version to be created.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "build-instance": { "name": "build-instance", "type": "option", "char": "s", "summary": "Instance where the conversion package version will be created, such as NA50.", "hidden": true, "multiple": false, "deprecateAliases": true, "aliases": [ "buildinstance" ] }, "seed-metadata": { "name": "seed-metadata", "type": "option", "char": "m", "summary": "Directory containing metadata to be deployed prior to conversion.", "description": "The directory containing metadata that will be deployed on the build org prior to attempting conversion.", "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "package:create": { "id": "package:create", "summary": "Create a package.", "description": "First, use this command to create a package. Then create a package version.\n\nIf you don’t have a namespace defined in your sfdx-project.json file, use --no-namespace.\n\nYour --name value must be unique within your namespace.\n\nRun '<%= config.bin %> package list to list all packages in the Dev Hub org.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:create" ], "examples": [ "Create an unlocked package from the files in the \"force-app\" directory; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --name MyUnlockedPackage --package-type Unlocked --path force-app", "Create a managed packaged from the \"force-app\" directory files, give the package a description, and use the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --name MyManagedPackage --description \"Your Package Descripton\" --package-type Managed --path force-app --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the package to create.", "required": true, "multiple": false, "deprecateAliases": true }, "package-type": { "name": "package-type", "type": "option", "char": "t", "summary": "Type of package.", "description": "The options for package type are Managed and Unlocked (Managed=DeveloperManagedSubscriberManaged, Unlocked=DeveloperControlledSubscriberEditable). These options determine upgrade and editability rules.", "required": true, "multiple": false, "options": [ "Managed", "Unlocked" ], "deprecateAliases": true, "aliases": [ "packagetype" ] }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Description of the package.", "multiple": false, "deprecateAliases": true }, "no-namespace": { "name": "no-namespace", "type": "boolean", "char": "e", "summary": "Create the package with no namespace; available only for unlocked packages.", "description": "This flag is useful when you’re migrating an existing org to packages. But use a namespaced package for new metadata.", "allowNo": false, "deprecateAliases": true, "aliases": [ "nonamespace" ] }, "path": { "name": "path", "type": "option", "char": "r", "summary": "Path to directory that contains the contents of the package.", "required": true, "multiple": false, "deprecateAliases": true }, "org-dependent": { "name": "org-dependent", "type": "boolean", "summary": "Depends on unpackaged metadata in the installation org; applies to unlocked packages only.", "description": "Use Source Tracking in Sandboxes to develop your org-dependent unlocked package. For more information, see \"Create Org-Dependent Unlocked Packages\" in the Salesforce DX Developer Guide.", "allowNo": false, "deprecateAliases": true, "aliases": [ "orgdependent" ] }, "error-notification-username": { "name": "error-notification-username", "type": "option", "char": "o", "summary": "Active Dev Hub user designated to receive email notifications for package errors.", "description": "Email notifications include information about unhandled Apex exceptions, and install, upgrade, or uninstall failures associated with your package.", "multiple": false, "deprecateAliases": true, "aliases": [ "errornotificationusername" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:delete": { "id": "package:delete", "summary": "Delete a package.", "description": "Specify the ID or alias of the package you want to delete.\n\nDelete unlocked and second-generation managed packages. Before you delete a package, first delete all associated package versions.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:delete" ], "examples": [ "Delete a package using its alias from your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\"", "Delete a package using its ID from the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 0Ho... --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "n", "summary": "Don’t prompt before deleting the package.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 0Ho) or alias of the package to delete.", "required": true, "multiple": false, "deprecateAliases": true }, "undelete": { "name": "undelete", "type": "boolean", "summary": "Undelete a deleted package.", "hidden": true, "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:install": { "id": "package:install", "summary": "Install a version of a package in the target org.", "description": "To install a package, specify a specific version of the package using the 04t package ID. The package and the version you specified installs in your default target org unless you supply the username for a different target org.\n\nFor package upgrades, to specify options for component deprecation or deletion of removed components, include an --upgrade-type value. To delete components that can be safely deleted and deprecate the others, specify --upgrade-type Mixed (the default). To deprecate all removed components, specify --upgrade-type DeprecateOnly. To delete all removed components, except for custom objects and custom fields, that don't have dependencies, specify --upgrade-type Delete. (Note: This option can result in the loss of data that is associated with the deleted components.) The default is Mixed.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:install" ], "examples": [ "Install a package version with the specified ID in the org with username \"me@example.com\":\n<%= config.bin %> <%= command.id %> --package 04t... --target-org me@example.com", "Install a package version with the specified alias into your default org:\n<%= config.bin %> <%= command.id %> --package awesome_package_alias", "Install a package version with an alias that includes spaces into your default org:\n<%= config.bin %> <%= command.id %> --package \"Awesome Package Alias\"", "Install an unlocked package version with the specified ID and deprecate all removed components:\n<%= config.bin %> <%= command.id %> --package 04t... --upgrade-type DeprecateOnly" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for installation status.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package (default: null).", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "publish-wait": { "name": "publish-wait", "type": "option", "char": "b", "summary": "Maximum number of minutes to wait for the Subscriber Package Version ID to become available in the target org before canceling the install request.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true, "aliases": [ "publishwait" ] }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "r", "summary": "Don't prompt for confirmation.", "description": "Allows the following without an explicit confirmation response: 1) Remote Site Settings and Content Security Policy websites to send or receive data, and 2) --upgrade-type Delete to proceed.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to install.", "required": true, "multiple": false, "deprecateAliases": true }, "apex-compile": { "name": "apex-compile", "type": "option", "char": "a", "summary": "Compile all Apex in the org and package, or only Apex in the package; unlocked packages only.", "description": "Applies to unlocked packages only. Specifies whether to compile all Apex in the org and package, or only the Apex in the package.\n\nFor package installs into production orgs, or any org that has Apex Compile on Deploy enabled, the platform compiles all Apex in the org after the package install or upgrade operation completes.\n\nThis approach assures that package installs and upgrades don’t impact the performance of an org, and is done even if --apex-compile package is specified.", "multiple": false, "options": [ "all", "package" ], "default": "all", "deprecateAliases": true, "aliases": [ "apexcompile" ] }, "security-type": { "name": "security-type", "type": "option", "char": "s", "summary": "Security access type for the installed package. (deprecation notice: The default --security-type value will change from AllUsers to AdminsOnly in v47.0 or later.)", "multiple": false, "options": [ "AllUsers", "AdminsOnly" ], "default": "AdminsOnly", "deprecateAliases": true, "aliases": [ "securitytype" ] }, "upgrade-type": { "name": "upgrade-type", "type": "option", "char": "t", "summary": "Upgrade type for the package installation; available only for unlocked packages.", "description": "For package upgrades, specifies whether to mark all removed components as deprecated (DeprecateOnly), to delete removed components that can be safely deleted and deprecate the others (Mixed), or to delete all removed components, except for custom objects and custom fields, that don't have dependencies (Delete). The default is Mixed. Can specify DeprecateOnly or Delete only for unlocked package upgrades.", "multiple": false, "options": [ "DeprecateOnly", "Mixed", "Delete" ], "default": "Mixed", "deprecateAliases": true, "aliases": [ "upgradetype" ] }, "skip-handlers": { "name": "skip-handlers", "type": "option", "char": "l", "summary": "Skip install handlers (available handlers: FeatureEnforcement).", "description": "Allows the installer of a package to optionally skip install handlers in order to decrease overall installation time (available handlers: FeatureEnforcement).", "hidden": true, "multiple": true, "options": [ "FeatureEnforcement" ], "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "package:list": { "id": "package:list", "summary": "List all packages in the Dev Hub org.", "description": "Description", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:list" ], "examples": [ "List all packages in the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --target-dev-hub devhub@example.com", "List all packages details in the specified Dev Hub org, and show extended details about each package:\n<%= config.bin %> <%= command.id %> --target-dev-hub devhub@example.com --verbose" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display extended package detail.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:uninstall": { "id": "package:uninstall", "summary": "Uninstall a second-generation package from the target org.", "description": "Specify the package ID for a second-generation package.\n\nTo list the org’s installed packages, run \"<%= config.bin %> package installed list\".\n\nTo uninstall a first-generation package, from Setup, enter Installed Packages in the Quick Find box, then select Installed Packages.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:uninstall" ], "examples": [ "Uninstall a package with specified ID from an org with username me@example.com:\n<%= config.bin %> <%= command.id %> --package 04t... --target-org me@example.com", "Uninstall a package with the specified alias from your default org:\n<%= config.bin %> <%= command.id %> --package undesirable_package_alias", "Uninstall a package with an alias that contains spaces from your default org:\n<%= config.bin %> <%= command.id %> --package \"Undesirable Package Alias\"" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for uninstall status.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to uninstall.", "required": true, "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "package:update": { "id": "package:update", "summary": "Update package details.", "description": "Specify a new value for each option you want to update.\n\nRun \"<%= config.bin %> package list\" to list all packages in the Dev Hub org.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:update" ], "examples": [ "Update the name of the package with the specified alias; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --name \"New Package Name\"", "Update the description of the package with the specified ID; uses the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 0Ho... --description \"New Package Description\" --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 0Ho) or alias of the package to update.", "required": true, "multiple": false, "deprecateAliases": true }, "name": { "name": "name", "type": "option", "char": "n", "summary": "New name of the package.", "multiple": false, "deprecateAliases": true }, "description": { "name": "description", "type": "option", "char": "d", "summary": "New description of the package.", "multiple": false, "deprecateAliases": true }, "error-notification-username": { "name": "error-notification-username", "type": "option", "char": "o", "summary": "Active Dev Hub user designated to receive email notifications for package errors.", "description": "Email notifications include information about unhandled Apex exceptions, and install, upgrade, or uninstall failures associated with your package.", "multiple": false, "deprecateAliases": true, "aliases": [ "errornotificationusername" ] }, "enable-app-analytics": { "name": "enable-app-analytics", "type": "boolean", "summary": "Enable AppExchange App Analytics usage data collection on this managed package and its components.", "allowNo": true, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:install:report": { "id": "package:install:report", "summary": "Retrieve the status of a package installation request.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:install:report" ], "examples": [ "Retrieve the status of a package installation request with the specified ID on your default org:\n<%= config.bin %> <%= command.id %> --request-id 0Hf...", "Similar to previous example, except use the org with username me@example.com:\n<%= config.bin %> <%= command.id %> --request-id 0Hf... --target-org me@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "request-id": { "name": "request-id", "type": "option", "char": "i", "summary": "ID of the package install request you want to check; starts with 0Hf.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "requestid" ] } }, "args": {}, "hasDynamicHelp": true }, "package:installed:list": { "id": "package:installed:list", "summary": "List the org’s installed packages.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:installed:list" ], "examples": [ "List the installed packages in your default org:\n<%= config.bin %> <%= command.id %>", "List the installed packages in the org with username me@example.com:\n<%= config.bin %> <%= command.id %> --target-org me@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:uninstall:report": { "id": "package:uninstall:report", "summary": "Retrieve the status of a package uninstall request.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:uninstall:report" ], "examples": [ "Retrieve the status of a package uninstall in your default org using the specified request ID:\n<%= config.bin %> <%= command.id %> --request-id 06y...", "Similar to previous example, but use the org with username me@example.com:\n<%= config.bin %> <%= command.id %> --request-id 06y... --target-org me@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "request-id": { "name": "request-id", "type": "option", "char": "i", "summary": "ID of the package uninstall request you want to check; starts with 06y.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "requestid" ] } }, "args": {}, "hasDynamicHelp": true }, "package:version:create": { "id": "package:version:create", "summary": "Create a package version in the Dev Hub org.", "description": "The package version is based on the package contents in the specified directory.\n\nTo retrieve details about a package version create request, including status and package version ID (04t), run \"<%= config.bin %> package version create report -i 08c...\".\n\nWe recommend that you specify the --installation-key parameter to protect the contents of your package and to prevent unauthorized installation of your package.\n\nTo list package version creation requests in the org, run \"<%= config.bin %> package version create list\".\nTo promote a package version to released, you must use the --code-coverage parameter. The package must also meet the code coverage requirements. This requirement applies to both managed and unlocked packages.\n\nWe don’t calculate code coverage for org-dependent unlocked packages, or for package versions that specify --skip-validation.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:create" ], "examples": [ "Create a package version from the contents of the \"common\" directory and give it an installation key of \"password123\"; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --path common --installation-key password123", "Create a package version from a package with the specified alias; uses the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --installation-key password123 --target-dev-hub devhub@example.com", "Create a package version from a package with the specified ID:\n<%= config.bin %> <%= command.id %> --package 0Ho... --installation-key password123", "Create a package version and skip the validation step:\n<%= config.bin %> <%= command.id %> --path common --installation-key password123 --skip-validation" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "branch": { "name": "branch", "type": "option", "char": "b", "summary": "Name of the branch in your source control system that the package version is based on.", "multiple": false, "deprecateAliases": true }, "build-instance": { "name": "build-instance", "type": "option", "char": "s", "summary": "Instance where the package version will be created, such as NA50.", "hidden": true, "multiple": false, "deprecateAliases": true, "aliases": [ "buildinstance" ] }, "code-coverage": { "name": "code-coverage", "type": "boolean", "char": "c", "summary": "Calculate and store the code coverage percentage by running the packaged Apex tests included in this package version.", "description": "Before you can promote and release a managed or unlocked package version, the Apex code must meet a minimum 75% code coverage requirement. We don’t calculate code coverage for org-dependent unlocked packages or for package versions that specify --skip-validation.", "allowNo": false, "exclusive": [ "skip-validation" ], "deprecateAliases": true, "aliases": [ "codecoverage" ] }, "definition-file": { "name": "definition-file", "type": "option", "char": "f", "summary": "Path to a definition file similar to scratch org definition file that contains the list of features and org preferences that the metadata of the package version depends on.", "multiple": false, "deprecateAliases": true, "aliases": [ "definitionfile" ] }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package. (either --installation-key or --installation-key-bypass is required)", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "installation-key-bypass": { "name": "installation-key-bypass", "type": "boolean", "char": "x", "summary": "Bypass the installation key requirement. (either --installation-key or --installation-key-bypass is required)", "description": "If you bypass this requirement, anyone can install your package.", "allowNo": false, "deprecateAliases": true, "aliases": [ "installationkeybypass" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 0Ho) or alias of the package to create a version of.", "multiple": false, "deprecateAliases": true }, "path": { "name": "path", "type": "option", "char": "d", "summary": "Path to the directory that contains the contents of the package.", "multiple": false, "deprecateAliases": true }, "post-install-script": { "name": "post-install-script", "type": "option", "summary": "Name of the post-install script; applies to managed packages only.", "description": "The post-install script is an Apex class within this package that is run in the installing org after installations or upgrades of this package version.", "multiple": false, "deprecateAliases": true, "aliases": [ "postinstallscript" ] }, "post-install-url": { "name": "post-install-url", "type": "option", "summary": "Post-install instructions URL.", "description": "The contents of the post-installation instructions URL are displayed in the UI after installation of the package version.", "multiple": false, "deprecateAliases": true, "aliases": [ "postinstallurl" ] }, "preserve": { "name": "preserve", "type": "boolean", "char": "r", "summary": "Preserve temp files that would otherwise be deleted.", "hidden": true, "allowNo": false, "deprecateAliases": true }, "releasenotes-url": { "name": "releasenotes-url", "type": "option", "summary": "Release notes URL.", "description": "This link is displayed in the package installation UI to provide release notes for this package version to subscribers.", "multiple": false, "deprecateAliases": true, "aliases": [ "releasenotesurl" ] }, "skip-ancestor-check": { "name": "skip-ancestor-check", "type": "boolean", "summary": "Overrides ancestry requirements, which allows you to specify a package ancestor that isn’t the highest released package version.", "allowNo": false, "deprecateAliases": true, "aliases": [ "skipancestorcheck" ] }, "skip-validation": { "name": "skip-validation", "type": "boolean", "summary": "Skip validation during package version creation; you can’t promote unvalidated package versions.", "description": "Skips validation of dependencies, package ancestors, and metadata during package version creation. Skipping validation reduces the time it takes to create a new package version, but you can promote only validated package versions. Skipping validation can suppress important errors that can surface at a later stage. You can specify skip validation or code coverage, but not both. Code coverage is calculated during validation.", "allowNo": false, "exclusive": [ "code-coverage" ], "deprecateAliases": true, "aliases": [ "skipvalidation" ] }, "tag": { "name": "tag", "type": "option", "char": "t", "summary": "Package version’s tag.", "multiple": false, "deprecateAliases": true }, "uninstall-script": { "name": "uninstall-script", "type": "option", "summary": "Uninstall script name; applies to managed packages only.", "description": "The uninstall script is an Apex class within this package that is run in the installing org after uninstallations of this package.", "multiple": false, "deprecateAliases": true, "aliases": [ "uninstallscript" ] }, "validate-schema": { "name": "validate-schema", "type": "boolean", "char": "j", "summary": "Validate the sfdx-project.json file against the JSON schema.", "hidden": true, "allowNo": false, "deprecateAliases": true, "aliases": [ "validateschema" ] }, "version-description": { "name": "version-description", "type": "option", "char": "e", "summary": "Description of the package version to be created; overrides the sfdx-project.json value.", "multiple": false, "deprecateAliases": true, "aliases": [ "versiondescription" ] }, "version-name": { "name": "version-name", "type": "option", "char": "a", "summary": "Name of the package version to be created; overrides the sfdx-project.json value.", "multiple": false, "deprecateAliases": true, "aliases": [ "versionname" ] }, "version-number": { "name": "version-number", "type": "option", "char": "n", "summary": "Version number of the package version to be created; overrides the sfdx-project.json value.", "multiple": false, "deprecateAliases": true, "aliases": [ "versionnumber" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for the package version to be created.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "language": { "name": "language", "type": "option", "summary": "Language for the package.", "description": "Specify the language using a language code listed under \"Supported Languages\" in Salesforce Help. If no language is specified, the language defaults to the language of the Dev Hub user who created the package.", "multiple": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display verbose command output.", "description": "Display verbose command output. When polling for the status of the creation, this will output status and timeout data on a separate line for each poll request, which is useful in CI systems where timeouts can occur with long periods of no output from commands.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:version:delete": { "id": "package:version:delete", "summary": "Delete a package version.", "description": "Specify the ID or alias of the package version you want to delete.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:delete" ], "examples": [ "Delete a package version with the specified alias using your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\"", "Delete a package version with the specified ID using the Dev Hub org with username \"devhub@example.com\":\n<%= config.bin %> <%= command.id %> --package 04t... --target-org devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "n", "summary": "Don’t prompt before deleting the package version.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to delete.", "required": true, "multiple": false, "deprecateAliases": true }, "undelete": { "name": "undelete", "type": "boolean", "summary": "Undelete a deleted package version.", "hidden": true, "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:version:displayancestry": { "id": "package:version:displayancestry", "summary": "Display the ancestry tree for a 2GP managed package version.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:displayancestry" ], "examples": [ "Display the ancestry tree for a package version with the specified alias, using your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package package_version_alias", "Similar to previous example, but display the output in DOT code:\n<%= config.bin %> <%= command.id %> --package package_version_alias --dot-code", "Display the ancestry tree for a package with the specified ID, using the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package OHo... --target-dev-hub devhub@example.com", "Display the ancestry tree of a package version with the specified ID, using your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 04t..." ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID or alias of the package (starts with 0Ho) or package version (starts with 04t) to display ancestry for.", "description": "If you specify a package ID (starts with 0Ho) or alias, the ancestor tree for every package version associated with the package ID is displayed. If you specify a package version (starts with 04t) or alias, the ancestry tree of the specified package version is displayed.", "required": true, "multiple": false, "deprecateAliases": true }, "dot-code": { "name": "dot-code", "type": "boolean", "summary": "Display the ancestry tree in DOT code.", "description": "You can use the DOT code output in graph visualization software to create tree visualizations.", "allowNo": false, "deprecateAliases": true, "aliases": [ "dotcode" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display both the package version ID (starts with 04t) and the version number (major.minor.patch.build) in the ancestry tree.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:version:list": { "id": "package:version:list", "summary": "List all package versions in the Dev Hub org.", "description": "Description", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:list" ], "examples": [ "List package versions in your default Dev Hub org that were created in the last 3 days; show only the released versions and order the list using the PatchVersion field. Display extended details about each package version:\n<%= config.bin %> <%= command.id %> --verbose --created-last-days 3 --released --order-by PatchVersion", "List the released package versions for the two specified packages that were modified today; use the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --packages 0Ho000000000000,0Ho000000000001 --released --modified-last-days 0 --target-dev-hub devhub@example.com", "List all released package versions in your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --released", "List package versions that were modified today in your default Dev Hub org; show limited details about each one:\n<%= config.bin %> <%= command.id %> --concise --modified-last-days 0", "List released package versions that were created in the last 3 days in your default Dev Hub org; show limited details:\n<%= config.bin %> <%= command.id %> --concise --created-last-days 3 --released", "List released package versions that were modified today for the two packages with specified aliases in your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --packages exp-mgr,exp-mgr-util --released --modified-last-days 0" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "created-last-days": { "name": "created-last-days", "type": "option", "char": "c", "summary": "Number of days since the request was created, starting at 00:00:00 of first day to now. Use 0 for today.", "multiple": false, "deprecateAliases": true, "aliases": [ "createdlastdays" ] }, "concise": { "name": "concise", "type": "boolean", "summary": "Display limited package version details.", "allowNo": false, "deprecateAliases": true }, "show-conversions-only": { "name": "show-conversions-only", "type": "boolean", "summary": "Filter the list output to display only converted package version.", "allowNo": false, "deprecateAliases": true }, "modified-last-days": { "name": "modified-last-days", "type": "option", "char": "m", "summary": "Number of days since the items were modified, starting at 00:00:00 of first day to now. Use 0 for today.", "multiple": false, "deprecateAliases": true, "aliases": [ "modifiedlastdays" ] }, "packages": { "name": "packages", "type": "option", "char": "p", "summary": "Comma-delimited list of packages (aliases or 0Ho IDs) to list.", "multiple": false, "deprecateAliases": true }, "released": { "name": "released", "type": "boolean", "char": "r", "summary": "Display released versions only (IsReleased=true).", "allowNo": false, "deprecateAliases": true }, "order-by": { "name": "order-by", "type": "option", "char": "o", "summary": "Package version fields used to order the list.", "multiple": false, "deprecateAliases": true, "aliases": [ "orderby" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display extended package version details.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "package:version:promote": { "id": "package:version:promote", "summary": "Promote a package version to released.", "description": "Supply the ID or alias of the package version you want to promote. Promotes the package version to released status.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:promote" ], "examples": [ "Promote the package version with the specified ID to released; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 04t...", "Promote the package version with the specified alias to released; uses the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package awesome_package_alias --target-dev-hub devhub@example.com", "Promote the package version with an alias that has spaces to released:\n<%= config.bin %> <%= command.id %> --package \"Awesome Package Alias\"" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to promote.", "required": true, "multiple": false, "deprecateAliases": true }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "n", "summary": "Don't prompt to confirm setting the package version as released.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:version:report": { "id": "package:version:report", "summary": "Retrieve details about a package version in the Dev Hub org.", "description": "To update package version values, run \"<%= config.bin %> package version update\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:report" ], "examples": [ "Retrieve details about the package version with the specified ID from your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 04t...", "Retrieve details about the package version with the specified alias (that contains spaces) from the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package to retrieve details for.", "required": true, "multiple": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display extended package version details.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:version:retrieve": { "id": "package:version:retrieve", "summary": "Retrieve package metadata for a specified package version.", "description": "Retrieving a package version downloads the metadata into the directory you specify.\n\nYou can retrieve metadata for a second- or first-generation managed package, or an unlocked package.\n\nSpecify the subscriber package version ID (starts with 04t) and the path to an empty directory when you run this command.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [], "examples": [ "Retrieve package metadata for a subscriber package version ID (starts with 04t) into my-folder/ within your Salesforce DX project directory:\n<%= config.bin %> <%= command.id %> --package 04t... --output-dir my-folder –-target-org my-scratch\nIf you omit --target-org, this command runs against your default org." ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "aliases": [ "apiversion" ] }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "aliases": [ "targetusername", "u" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "Subscriber package version ID (starts with 04t).", "required": true, "multiple": false }, "output-dir": { "name": "output-dir", "type": "option", "char": "d", "summary": "Path within your Salesforce DX project directory in which to download the metadata. This directory must be empty.", "multiple": false, "default": "force-app" } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package:version:update": { "id": "package:version:update", "summary": "Update a package version.", "description": "Specify a new value for each option you want to update.\n\nTo display details about a package version, run \"<%= config.bin %> package version display\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:update" ], "examples": [ "Update the package version that has the specified alias (that contains spaces) with a new installation key \"password123\"; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --installation-key password123", "Update the package version that has the specified ID with a new branch and tag; use the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package 04t... --branch main --tag 'Release 1.0.7' --target-dev-hub devhub@example.com", "Update the package version that has the specified ID with a new description:\n<%= config.bin %> <%= command.id %> --package 04t... --version-description \"New Package Version Description\"" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package to update a version of.", "required": true, "multiple": false, "deprecateAliases": true }, "version-name": { "name": "version-name", "type": "option", "char": "a", "summary": "New package version name.", "multiple": false, "deprecateAliases": true, "aliases": [ "versionname" ] }, "version-description": { "name": "version-description", "type": "option", "char": "e", "summary": "New package version description.", "multiple": false, "deprecateAliases": true, "aliases": [ "versiondescription" ] }, "branch": { "name": "branch", "type": "option", "char": "b", "summary": "New package version branch.", "multiple": false, "deprecateAliases": true }, "tag": { "name": "tag", "type": "option", "char": "t", "summary": "New package version tag.", "multiple": false, "deprecateAliases": true }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "New installation key for key-protected package (default: null)", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package1:version:create": { "id": "package1:version:create", "summary": "Create a first-generation package version in the release org.", "description": "The package version is based on the contents of the specified metadata package. Omit --managed-released if you want to create an unmanaged package version.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package1:version:create" ], "examples": [ "Create a first-generation package version from the package with the specified ID and name the package version \"example\"; use your default org:\n<%= config.bin %> <%= command.id %> --package-id 033... --name example", "Same as previous example, but provide a description and wait for 30 minutes for the package version to be created; use the specified org:\n<%= config.bin %> <%= command.id %> --package-id 033... --name example --description \"example description\" --wait 30 --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-id": { "name": "package-id", "type": "option", "char": "i", "summary": "ID of the metadata package (starts with 033) of which you’re creating a new version.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "packageid" ] }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Package version name.", "required": true, "multiple": false, "deprecateAliases": true }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Package version description.", "multiple": false, "deprecateAliases": true }, "version": { "name": "version", "type": "option", "char": "v", "summary": "Package version in major.minor format, for example, 3.2.", "multiple": false, "deprecateAliases": true }, "managed-released": { "name": "managed-released", "type": "boolean", "char": "m", "summary": "Create a managed package version.", "description": "To create a beta version, don’t include this parameter.", "allowNo": false, "deprecateAliases": true, "aliases": [ "managedrelease" ] }, "release-notes-url": { "name": "release-notes-url", "type": "option", "char": "r", "summary": "Release notes URL.", "description": "This link is displayed in the package installation UI to provide release notes for this package version to subscribers.", "multiple": false, "deprecateAliases": true, "aliases": [ "releasenotesurl" ] }, "post-install-url": { "name": "post-install-url", "type": "option", "char": "p", "summary": "Post install URL.", "description": "The contents of the post-installation instructions URL are displayed in the UI after installation of the package version.", "multiple": false, "deprecateAliases": true, "aliases": [ "postinstallurl" ] }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package (default: null).", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Minutes to wait for the package version to be created (default: 2 minutes).", "multiple": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, "package1:version:display": { "id": "package1:version:display", "summary": "Display details about a first-generation package version.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package1:version:display" ], "examples": [ "Display details about the first-generation package version with the specified ID in your default org:\n<%= config.bin %> <%= command.id %> --package-version-id 04t...", "Same as previous example, but use the specified org:\n<%= config.bin %> <%= command.id %> --package-version-id 04t... --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-version-id": { "name": "package-version-id", "type": "option", "char": "i", "summary": "ID (starts with 04t) of the metadata package version whose details you want to display.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "packageversionid" ] } }, "args": {}, "hasDynamicHelp": true }, "package1:version:list": { "id": "package1:version:list", "summary": "List package versions for the specified first-generation package or for the org.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package1:version:list" ], "examples": [ "List all first-generation package versions in your default org:\n<%= config.bin %> <%= command.id %>", "List package versions for the specified first-generation package in the specifief org:\n<%= config.bin %> <%= command.id %> --package-id 033... --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-id": { "name": "package-id", "type": "option", "char": "i", "summary": "Metadata package ID (starts with 033) whose package versions you want to list.", "description": "If not specified, shows all versions for all packages (managed and unmanaged) in the org.", "multiple": false, "deprecateAliases": true, "aliases": [ "packageid" ] } }, "args": {}, "hasDynamicHelp": true }, "package:version:create:list": { "id": "package:version:create:list", "summary": "List package version creation requests.", "description": "Shows the details of each request to create a package version in the Dev Hub org.\n\nAll filter parameters are applied using the AND logical operator (not OR).\n\nTo get information about a specific request, run \"<%= config.bin %> package version create report\" and supply the request ID.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:create:list" ], "examples": [ "List all package version creation requests in your default Dev Hub org:\n<%= config.bin %> <%= command.id %>", "List package version creation requests from the last 3 days in the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --created-last-days 3 --target-dev-hub", "List package version creation requests with status Error:\n<%= config.bin %> <%= command.id %> --status Error", "List package version creation requests with status InProgress:\n<%= config.bin %> <%= command.id %> --status InProgress", "List package version creation requests with status Success that were created today:\n<%= config.bin %> <%= command.id %> --created-last-days 0 --status Success" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "created-last-days": { "name": "created-last-days", "type": "option", "char": "c", "summary": "Number of days since the request was created, starting at 00:00:00 of first day to now. Use 0 for today.", "multiple": false, "deprecateAliases": true, "aliases": [ "createdlastdays" ] }, "status": { "name": "status", "type": "option", "char": "s", "summary": "Status of the version creation request, used to filter the list.", "multiple": false, "options": [ "Queued", "InProgress", "Success", "Error" ], "deprecateAliases": true }, "show-conversions-only": { "name": "show-conversions-only", "type": "boolean", "summary": "Filter the list output to display only converted package version.", "allowNo": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Displays additional information at a slight performance cost, such as the version name and number for each package version create request.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "package:version:create:report": { "id": "package:version:create:report", "summary": "Retrieve details about a package version creation request.", "description": "Specify the request ID for which you want to view details. If applicable, the command displays errors related to the request.\n\nTo show all requests in the org, run \"<%= config.bin %> package version create list\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package:version:create:report" ], "examples": [ "Retrieve details about the package version creation request with the specified ID; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package-create-request-id 08c...", "Retrieve details about the specified package version creation request in the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package-create-request-id 08c... --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-create-request-id": { "name": "package-create-request-id", "type": "option", "char": "i", "summary": "ID (starts with 08c) of the package version creation request you want to display.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "packagecreaterequestid" ] } }, "args": {}, "hasDynamicHelp": true }, "package1:version:create:get": { "id": "package1:version:create:get", "summary": "Retrieve the status of a package version creation request.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/plugin-packaging", "pluginType": "jit", "aliases": [ "force:package1:version:create:get" ], "examples": [ "Get the status of the creation request for the package version with the specified ID in your default org:\n<%= config.bin %> <%= command.id %> --request-id 0HD...", "Same as previous example, but use the specified org:\n<%= config.bin %> <%= command.id %> --request-id 0HD... --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "request-id": { "name": "request-id", "type": "option", "char": "i", "summary": "ID of the PackageUploadRequest (starts with 0HD).", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "requestid" ] } }, "args": {}, "hasDynamicHelp": true }, "org:create:shape": { "id": "org:create:shape", "summary": "Create a scratch org configuration (shape) based on the specified source org.", "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 %> force:org:create\" command.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "aliases": [ "force:org:shape:create" ], "examples": [ "Create an org shape for the source org with alias SourceOrg:\n<%= config.bin %> <%= command.id %> --target-org SourceOrg" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "org:create:snapshot": { "id": "org:create:snapshot", "summary": "Create a snapshot of a scratch org.", "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 %> force:org:create\" to create the scratch org.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:create" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "source-org": { "name": "source-org", "type": "option", "char": "o", "summary": "ID or locally authenticated username or alias of scratch org to snapshot.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "sourceorg" ] }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Unique name of snapshot.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "snapshotname" ] }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Description of snapshot.", "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.", "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "org:delete:shape": { "id": "org:delete:shape", "summary": "Delete all org shapes for a target org.", "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.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "aliases": [ "force:org:shape:delete" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "p", "summary": "Don't prompt for confirmation.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] } }, "args": {}, "hasDynamicHelp": true }, "org:delete:snapshot": { "id": "org:delete:snapshot", "summary": "Delete a scratch org snapshot.", "description": "Dev Hub admins can delete any snapshot, while users can delete only their own unless a Dev Hub admin gives the user Modify All permissions.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:delete" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "snapshot": { "name": "snapshot", "type": "option", "char": "s", "summary": "Name or ID of snapshot to delete.", "description": "The IDs of scratch org snapshots start with 0Oo.", "required": true, "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "org:get:snapshot": { "id": "org:get:snapshot", "summary": "Get details about a scratch org snapshot.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:get" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "snapshot": { "name": "snapshot", "type": "option", "char": "s", "summary": "Name or ID of snapshot to retrieve.", "description": "The IDs of scratch org snapshots start with 0Oo.", "required": true, "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "org:list:shape": { "id": "org:list:shape", "summary": "List all org shapes you’ve created.", "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.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "aliases": [ "force:org:shape:list" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "List more information about each org shape.", "hidden": true, "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {} }, "org:list:snapshot": { "id": "org:list:snapshot", "summary": "List scratch org snapshots.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/plugin-signups", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:list" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, "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 [--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 }, "scanner:run": { "id": "scanner:run", "description": "scan a codebase with a selection of rules", "strict": true, "usage": "<%= command.id %> -t [-c ] [-f csv|html|json|junit|sarif|table|xml] [-o ] [-s | --json] [--normalize-severity] [-p ] [-r ] [-e ] [--tsconfig ] [--eslintconfig ] [--pmdconfig ] [--env ] [--verbose-violations] [--verbose] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/sfdx-scanner", "pluginType": "jit", "aliases": [], "examples": [ "This example evaluates all rules against somefile.js.\nInvoking code analyzer without specifying any rules causes all rules to be run.\n\t$ sfdx scanner:run --format xml --target \"somefile.js\"\n\nThis example evaluates all rules in the Design and Best Practices categories.\nWhen you specify multiple categories or rulesets, the results are combined with a logical OR.\n\t$ sfdx scanner:run --format xml --target \"somefile.js\" --\n\nThis example evaluates all rules except those in the Design or Best Practices categories.\nExclude categories by specifying the negation operator and enclosing the values in single quotes.\n\t$ sfdx scanner:run --format xml --target \"somefile.js\" --category '!Design,!Best Practices'\n\nWrap globs in quotes. These examples evaluate rules against all .js files in the current directory, except for IgnoreMe.js.\nUnix example:\n\t$ sfdx scanner:run --target './**/*.js,!./**/IgnoreMe.js' ...\nWindows example:\n\t$ sfdx scanner:run --target \".\\**\\*.js,!.\\**\\IgnoreMe.js\" ...\n\nThis example scans the project contained in '/my-project' if the current working directory is another directory.\nSpecify tsconfig.json if the current working directory does not contain the tsconfig.json that corresponds to the TypeScript files being scanned.\n\t$ sfdx scanner:run --target \"/my-project/**/*.ts\" --tsconfig \"/my-project/tsconfig.json\"\n\nThis example evaluates rules against somefile.js, including Jasmine in the environment variables.\nUses --env to override the default ESLint environment variables to add frameworks.\n\t$ sfdx scanner:run --target \"somefile.js\" --env '{\"jasmine\": true}'\n\nThis example evaluates rules aginst somefile.js using eslint-lwc and pmd engines.\nUse --engine to include or exclude engines. Any engine listed will be run, regardless of its current 'disabled' attribute.\n\t$ sfdx scanner:run --target \"somefile.js\" --engine \"eslint-lwc,pmd\"\n\nThis example executes CPD engine against known file extensions in \"/some/dir\". CPD helps detect blocks of code duplication in selected languages.\nUse --engine to invoke engines that are not enabled by default.\n\t$ sfdx scanner:run --target \"/some/dir\" --engine cpd\n\nThis example executes rules defined in pmd_rule_ref.xml against the files in 'src'.\nTo use PMD with your own rule reference file, use --pmdconfig. Note that rule filters are not applied.\n\t$ sfdx scanner:run --target \"src\" --pmdconfig \"pmd_rule_ref.xml\"\n\nThis example uses a custom config to scan the files in 'src'.\nTo use ESLint with your own .eslintrc.json file, use --eslintconfig. Make sure that the directory you run the command from has all the NPM dependencies installed.\n\t$ sfdx scanner:run --target \"src\" --eslintconfig \"/home/my/setup/.eslintrc.json\"\n\nThis example uses --normalize-severity to output normalized severity and engine-specific severity across all engines. Normalized severity is: 1 (high), 2 (moderate), and 3 (low).\n\t$ sfdx scanner:run --target \"/some-project/\" --format csv --normalize-severity\n\nThis example uses --severity-threshold to throw a non-zero exit code when rule violations of normalized severity 2 or greater are found. If any violations with the specified severity (or greater) are found, the exit code equals the severity of the most severe violation.\n\t$ sfdx scanner:run --target \"/some-project/\" --severity-threshold 2\n\nThe paths specified for --projectdir must contain all files specified through --target cumulatively.\n\t$ sfdx scanner:run --target \"./myproject/main/default/classes/*.cls\" --projectdir \"./myproject/\"\n\t$ sfdx scanner:run --target \"./**/*.cls\" --projectdir \"./\"\n\t$ sfdx scanner:run --target \"./dir1/file1.cls,./dir2/file2.cls\" --projectdir \"./dir1/,./dir2/\"\n\nThis example fails because the set of files included in --target is larger than that contained in --projectdir:\n\t$ sfdx scanner:run --target \"./**/*.cls\" --projectdir \"./myproject/\"\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "category": { "name": "category", "type": "option", "char": "c", "description": "one or more categories of rules to run", "multiple": false }, "format": { "name": "format", "type": "option", "char": "f", "description": "specify results output format", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "multiple": false, "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ] }, "outfile": { "name": "outfile", "type": "option", "char": "o", "description": "write output to a file", "multiple": false }, "severity-threshold": { "name": "severity-threshold", "type": "option", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "multiple": false, "exclusive": [ "json" ] }, "normalize-severity": { "name": "normalize-severity", "type": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "allowNo": false }, "projectdir": { "name": "projectdir", "type": "option", "char": "p", "description": "provide root directory of project", "multiple": false }, "ruleset": { "name": "ruleset", "type": "option", "char": "r", "description": "[deprecated] rulesets to run", "multiple": false, "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead." } }, "engine": { "name": "engine", "type": "option", "char": "e", "description": "specify which engines to run", "multiple": false }, "target": { "name": "target", "type": "option", "char": "t", "description": "source code location", "required": true, "multiple": false }, "tsconfig": { "name": "tsconfig", "type": "option", "description": "location of tsconfig.json file", "multiple": false }, "eslintconfig": { "name": "eslintconfig", "type": "option", "description": "specify the location of eslintrc config to customize eslint engine", "multiple": false }, "pmdconfig": { "name": "pmdconfig", "type": "option", "description": "specify location of PMD rule reference XML file to customize rule selection", "multiple": false }, "env": { "name": "env", "type": "option", "description": "[deprecated] override ESLint's default environment variables, in JSON-formatted string", "multiple": false, "deprecated": { "messageOverride": "--env parameter is being deprecated, and will be removed in a future release." } }, "verbose-violations": { "name": "verbose-violations", "type": "boolean", "description": "return retire-js violation message details", "allowNo": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Scans a codebase with a selection of rules. You can scan the codebase with all the rules in the registry, or use parameters to filter the rules based on rulename, category, or ruleset. You can specify the format of the output, such as XML or JUnit. You can print the output to the console (default) or to a file using the --outfile parameter.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "category": { "kind": "array", "char": "c", "description": "one or more categories of rules to run", "longDescription": "One or more categories of rules to run. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "format": { "kind": "enum", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "char": "f", "description": "specify results output format", "longDescription": "Specifies results output format written directly to the console.", "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ], "input": [], "multiple": false, "type": "option" }, "outfile": { "kind": "string", "char": "o", "description": "write output to a file", "longDescription": "Writes output to a file.", "input": [], "multiple": false, "type": "option" }, "severity-threshold": { "kind": "integer", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "longDescription": "Throws an error when violations are found with equal or greater severity than the provided value. Values are 1 (high), 2 (moderate), and 3 (low). Exit code is the most severe violation. Using this flag also invokes the --normalize-severity flag.", "exclusive": [ "json" ], "min": 1, "max": 3, "input": [], "multiple": false, "type": "option" }, "normalize-severity": { "kind": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "longDescription": "Returns normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity. For the html option, the normalized severity is displayed instead of the engine severity.", "allowNo": false, "type": "boolean" }, "projectdir": { "kind": "array", "char": "p", "description": "provide root directory of project", "longDescription": "Provides the relative or absolute root project directory used to set the context for Graph Engine's analysis. Project directory must be a path, not a glob. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "ruleset": { "kind": "array", "char": "r", "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead." }, "description": "[deprecated] rulesets to run", "longDescription": "[deprecated] One or more rulesets to run. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "engine": { "kind": "array", "char": "e", "description": "specify which engines to run", "longDescription": "Specifies one or more engines to run. Submit multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "target": { "kind": "array", "char": "t", "description": "source code location", "longDescription": "Source code location. May use glob patterns. Specify multiple values as a comma-separated list.", "required": true, "input": [], "multiple": false, "type": "option" }, "tsconfig": { "kind": "string", "description": "location of tsconfig.json file", "longDescription": "Location of tsconfig.json file used by eslint-typescript engine.", "input": [], "multiple": false, "type": "option" }, "eslintconfig": { "kind": "string", "description": "specify the location of eslintrc config to customize eslint engine", "longDescription": "Specifies the location of eslintrc config to customize eslint engine.", "input": [], "multiple": false, "type": "option" }, "pmdconfig": { "kind": "string", "description": "specify location of PMD rule reference XML file to customize rule selection", "longDescription": "Specifies the location of PMD rule reference XML file to customize rule selection.", "input": [], "multiple": false, "type": "option" }, "env": { "kind": "string", "description": "[deprecated] override ESLint's default environment variables, in JSON-formatted string", "longDescription": "[deprecated] Overrides ESLint's default environmental variables, in JSON-formatted string.", "deprecated": { "messageOverride": "--env parameter is being deprecated, and will be removed in a future release." }, "input": [], "multiple": false, "type": "option" }, "verbose-violations": { "kind": "boolean", "description": "return retire-js violation message details", "longDescription": "Returns retire-js violation messages details about each vulnerability, including summary, Common Vulnerabilities and Exposures (CVE), and URLs.", "allowNo": false, "type": "boolean" } } }, "scanner:rule:add": { "id": "scanner:rule:add", "description": "add custom rules to Salesforce Code Analyzer's registry", "strict": true, "usage": "<%= command.id %> -l -p [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/sfdx-scanner", "pluginType": "jit", "aliases": [], "examples": [ "Bundle custom PMD rules in JAR files. Follow PMD conventions, such as defining the custom rules in XML files under a `/category/` directory.\nSee PMD's documentation for more information on writing rules.\n\nThis example shows how to specify two JAR files directly.\n\t$ sfdx scanner:rule:add --language apex --path \"/Users/me/rules/Jar1.jar,/Users/me/rules/Jar2.jar\"\n\t\tSuccessfully added rules for apex.\n\t\t2 path(s) added:\n\t\t/Users/me/rules/Jar1.jar,/Users/me/rules/Jar2.jar\n\nThis example shows how to specify a directory containing one or more JARs, all of which are added to the registry.\n\t$ sfdx scanner:rule:add --language apex --path \"/Users/me/rules\"\n\t\tSuccessfully added rules for apex." ], "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" }, "language": { "name": "language", "type": "option", "char": "l", "description": "language that the custom rules are evaluated against", "required": true, "multiple": false }, "path": { "name": "path", "type": "option", "char": "p", "description": "one or more paths (such as a directory or JAR file) to custom rule definitions", "required": true, "multiple": false } }, "args": {}, "longDescription": "Adds custom rules to Salesforce Code Analyzer's registry so that you can run them along with the built-in rules. Compile and test custom rules separately before adding them.", "flagsConfig": { "language": { "kind": "string", "char": "l", "description": "language that the custom rules are evaluated against", "longDescription": "Language that the custom rules are evaluated against.", "required": true, "input": [], "multiple": false, "type": "option" }, "path": { "kind": "array", "char": "p", "description": "one or more paths (such as a directory or JAR file) to custom rule definitions", "longDescription": "One or more paths (such as a directory or JAR file) to custom rule definitions. Specify multiple values as a comma-separated list.", "required": true, "input": [], "multiple": false, "type": "option" } } }, "scanner:rule:describe": { "id": "scanner:rule:describe", "description": "provide detailed information about a rule", "strict": true, "usage": "<%= command.id %> -n [--verbose] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/sfdx-scanner", "pluginType": "jit", "aliases": [], "examples": [ "$ sfdx scanner:rule:describe --rulename ExampleRule\n\tname: AvoidWithStatement\n\tcategories: Best Practices\n\trulesets: Controversial Ecmascript\n\tlanguages: javascript\n\tdescription: Avoid using with - it's bad news\n\tmessage: Avoid using with - it's bad news\n\t" ], "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" }, "rulename": { "name": "rulename", "type": "option", "char": "n", "description": "the name of the rule", "required": true, "multiple": false }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Provides detailed information about a rule. Information includes the rule's language (such as Apex or Java), the violation it detects, and example code of the violation. The command output also includes the rule's categories and rulesets.", "flagsConfig": { "rulename": { "kind": "string", "char": "n", "description": "the name of the rule", "longDescription": "The name of the rule.", "required": true, "input": [], "multiple": false, "type": "option" }, "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false } } }, "scanner:rule:list": { "id": "scanner:rule:list", "description": "list basic information about all rules matching provided criteria", "strict": true, "usage": "<%= command.id %> [-c ] [-r ] [-l ] [-e ] [--verbose] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/sfdx-scanner", "pluginType": "jit", "aliases": [], "examples": [ "\nThis example invokes the command without filter criteria, which returns all rules.\n\t$ sfdx scanner:rule:list\n\nThis example returns all rules for Apex OR Javascript. Values supplied to a single filter are handled with a logical OR.\n\t$ sfdx scanner:rule:list --language apex,javascript\n\nThis example returns all rules except those in the Design or Best Practices categories. Exclude categories by specifying the negation operator and enclosing the values in single quotes.\n\t$ sfdx scanner:rule:list --category '!Design,!Best Practices'\n\nThis example returns all rules that target Apex OR Javascript, AND are members of the Braces OR Security rulesets.\nThe different filters are combined with a logical AND.\n\t$ sfdx scanner:rule:list --language apex,javascript --ruleset Braces,Security\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "category": { "name": "category", "type": "option", "char": "c", "description": "select rules by category", "multiple": false }, "ruleset": { "name": "ruleset", "type": "option", "char": "r", "description": "[deprecated] select rules by ruleset", "multiple": false, "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead" } }, "language": { "name": "language", "type": "option", "char": "l", "description": "select rules by language", "multiple": false }, "engine": { "name": "engine", "type": "option", "char": "e", "description": "select rules by engine", "multiple": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Lists all the rules available in the catalog. You can filter the output to view a smaller set of rules. To get more information about a specific rule, use the `scanner:rule:describe` command.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "category": { "kind": "array", "char": "c", "description": "select rules by category", "longDescription": "Selects rules by category. Enter multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "ruleset": { "kind": "array", "char": "r", "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead" }, "description": "[deprecated] select rules by ruleset", "longDescription": "[deprecated] Selects rules by ruleset. Enter multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "language": { "kind": "array", "char": "l", "description": "select rules by language", "longDescription": "Selects rules by language. Enter multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "engine": { "kind": "array", "char": "e", "description": "select rules by engine", "longDescription": "Selects rules by engine. Enter multiple engines as a comma-separated list.", "input": [], "multiple": false, "type": "option" } } }, "scanner:rule:remove": { "id": "scanner:rule:remove", "description": "remove custom rules from the registry of available rules", "strict": true, "usage": "<%= command.id %> [-f] [-p ] [--verbose] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/sfdx-scanner", "pluginType": "jit", "aliases": [], "examples": [ "This example runs the command without arguments to see a list of registered custom paths.\n\t$ sfdx scanner:rule:remove\n\nThis example uses the --path parameter to deregister the rules defined in somerules.jar and any JARs/XMLs contained in the rules folder.\n\t$ sfdx scanner:rule:remove --path \"~/path/to/somerules.jar,~/path/to/folder/containing/rules\"\n\nThis example uses the --force flag to bypass the confirmation prompt, removing all rules defined in somerules.jar.\nBy default, a list of all rules that will be unregistered is displayed, and the action must be confirmed. To bypass that confirmation, use the --force flag.\n\t$ sfdx scanner:rule:remove --force --path \"~/path/to/somerules.jar\"\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "force": { "name": "force", "type": "boolean", "char": "f", "description": "bypass the confirmation prompt and immediately remove the rules", "allowNo": false }, "path": { "name": "path", "type": "option", "char": "p", "description": "one or more paths to remove", "multiple": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Removes custom rules from the registry of available rules. Use the `-p|--path` parameter to specify one or more paths to remove. If you don't specify any parameters, the command lists all valid custom paths but doesn't remove any.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "force": { "kind": "boolean", "char": "f", "description": "bypass the confirmation prompt and immediately remove the rules", "longDescription": "Bypasses the confirmation prompt and immediately removes the rules.", "allowNo": false, "type": "boolean" }, "path": { "kind": "array", "char": "p", "description": "one or more paths to remove", "longDescription": "One or more paths to remove. Specify multiple values with a comma-separated list.", "input": [], "multiple": false, "type": "option" } } }, "scanner:run:dfa": { "id": "scanner:run:dfa", "description": "scan codebase with all DFA rules", "strict": true, "usage": "<%= command.id %> -t [-c ] [-f csv|html|json|junit|sarif|table|xml] [-o ] [-s | --json] [--normalize-severity] [-p ] [--with-pilot] [--rule-thread-count ] [--rule-thread-timeout ] [--rule-disable-warning-violation] [--sfgejvmargs ] [--pathexplimit ] [--verbose] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/sfdx-scanner", "pluginType": "jit", "aliases": [], "examples": [ "The paths specified for --projectdir must contain all files specified through --target cumulatively.\n\t$ sfdx scanner:run:dfa --target \"./myproject/main/default/classes/*.cls\" --projectdir \"./myproject/\"\n\t$ sfdx scanner:run:dfa --target \"./**/*.cls\" --projectdir \"./\"\n\t$ sfdx scanner:run:dfa --target \"./dir1/file1.cls,./dir2/file2.cls\" --projectdir \"./dir1/,./dir2/\"\nThis example fails because the set of files included in --target is larger than that contained in --projectdir:\n\t$ sfdx scanner:run:dfa --target \"./**/*.cls\" --projectdir \"./myproject/\"\nGlobs must be wrapped in quotes, as in these Windows and Unix examples, which evaluate rules against all .cls files in the current directory and subdirectories except for IgnoreMe.cls:\nUnix example:\n\t$ sfdx scanner:run:dfa --target \"./**/*.cls,!./**/IgnoreMe.cls\" ...\nWindows example:\n\t$ sfdx scanner:run:dfa --target \".\\**\\*.cls,!.\\**\\IgnoreMe.cls\" ...\nYou can target individual methods within a file with a suffix hash (#) on the file's path, and with a semi-colon-delimited list of method names. This syntax is incompatible with globs and directories. This example evaluates rules against all methods named Method1 or Method2 in File1.cls, and all methods named Method3 in File2.cls:\n\t$ sfdx scanner:run:dfa --target \"./File1.cls#Method1;Method2,./File2.cls#Method3\" ...\nUse --normalize-severity to output a normalized severity across all engines, in addition to the engine-specific severity. Normalized severity is 1 (high), 2 (moderate), and 3 (low):\n\t$ sfdx scanner:run:dfa --target \"./some-project/\" --projectdir \"./some-project/\" --format csv --normalize-severity\nUse --severity-threshold to throw a non-zero exit code when rule violations of a specific normalized severity or greater are found. If there are any rule violations with a severity of 2 or 1, the exit code is equal to the severity of the most severe violation:\n\t$ sfdx scanner:run:dfa --target \"./some-project/\" --projectdir \"./some-project/\" --severity-threshold 2\nuse --rule-thread-count to allow more (or fewer) entrypoints to be evaluated concurrently:\n\t$ sfdx scanner:run:dfa --rule-thread-count 6 ...\nUse --rule-thread-timeout to increase or decrease the maximum runtime for a single entrypoint evaluation. This increases the timeout from the 15-minute default to 150 minutes:\n\t$ sfdx scanner:run:dfa --rule-thread-timeout 9000000 ...\nUse --sfgejvmargs to pass Java Virtual Machine args to override system defaults while executing Salesforce Graph Engine's rules.\nThe example overrides the system's default heap space allocation to 8 GB and decreases chances of encountering OutOfMemory error.\n\t$ sfdx scanner:run:dfa --sfgejvmargs \"-Xmx8g\" ...\nUse --with-pilot to allow execution of pilot rules:\nThis example allows pilot rules in the \"Performance\" category to execute.\n\t$ sfdx scanner:run:dfa --category 'Performance' --with-pilot ...\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "category": { "name": "category", "type": "option", "char": "c", "description": "one or more categories of rules to run", "multiple": false }, "format": { "name": "format", "type": "option", "char": "f", "description": "specify results output format", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "multiple": false, "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ] }, "outfile": { "name": "outfile", "type": "option", "char": "o", "description": "write output to a file", "multiple": false }, "severity-threshold": { "name": "severity-threshold", "type": "option", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "multiple": false, "exclusive": [ "json" ] }, "normalize-severity": { "name": "normalize-severity", "type": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "allowNo": false }, "projectdir": { "name": "projectdir", "type": "option", "char": "p", "description": "provide root directory of project", "multiple": false }, "with-pilot": { "name": "with-pilot", "type": "boolean", "description": "allow pilot rules to execute", "allowNo": false }, "target": { "name": "target", "type": "option", "char": "t", "description": "return location of source code", "required": true, "multiple": false }, "rule-thread-count": { "name": "rule-thread-count", "type": "option", "description": "specify number of threads that evaluate DFA rules. Alternatively, set value using environment variable `SFGE_RULE_THREAD_COUNT`. Default is 4", "multiple": false }, "rule-thread-timeout": { "name": "rule-thread-timeout", "type": "option", "description": "specify timeout for individual rule threads in milliseconds. Alternatively, set the timeout value using environment variable `SFGE_RULE_THREAD_TIMEOUT`. Default: 90000 ms", "multiple": false }, "rule-disable-warning-violation": { "name": "rule-disable-warning-violation", "type": "boolean", "description": "disable warning violations from Salesforce Graph Engine. Alternatively, set value using environment variable `SFGE_RULE_DISABLE_WARNING_VIOLATION`", "allowNo": false }, "sfgejvmargs": { "name": "sfgejvmargs", "type": "option", "description": "specify Java Virtual Machine (JVM) arguments to optimize Salesforce Graph Engine execution to your system (optional)", "multiple": false }, "pathexplimit": { "name": "pathexplimit", "type": "option", "description": "specify a path expansion upper boundary to limit the complexity of code that Graph Engine analyzes. Alternatively, set the value using environment variable `SFGE_PATH_EXPANSION_LIMIT`", "multiple": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Scans codebase with all DFA rules by default.\n\tSpecify the format of output and print results directly or as contents of a file that you provide with --outfile flag.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "category": { "kind": "array", "char": "c", "description": "one or more categories of rules to run", "longDescription": "One or more categories of rules to run. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "format": { "kind": "enum", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "char": "f", "description": "specify results output format", "longDescription": "Specifies results output format written directly to the console.", "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ], "input": [], "multiple": false, "type": "option" }, "outfile": { "kind": "string", "char": "o", "description": "write output to a file", "longDescription": "Writes output to a file.", "input": [], "multiple": false, "type": "option" }, "severity-threshold": { "kind": "integer", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "longDescription": "Throws an error when violations are found with equal or greater severity than the provided value. Values are 1 (high), 2 (moderate), and 3 (low). Exit code is the most severe violation. Using this flag also invokes the --normalize-severity flag.", "exclusive": [ "json" ], "min": 1, "max": 3, "input": [], "multiple": false, "type": "option" }, "normalize-severity": { "kind": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "longDescription": "Returns normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity. For the html option, the normalized severity is displayed instead of the engine severity.", "allowNo": false, "type": "boolean" }, "projectdir": { "kind": "array", "char": "p", "description": "provide root directory of project", "longDescription": "Provides the relative or absolute root project directory used to set the context for Graph Engine's analysis. Project directory must be a path, not a glob. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "with-pilot": { "kind": "boolean", "description": "allow pilot rules to execute", "longDescription": "Allows pilot rules to execute.", "allowNo": false, "type": "boolean" }, "target": { "kind": "array", "char": "t", "description": "return location of source code", "longDescription": "Returns the source code location. Use glob patterns or specify individual methods with #-syntax. Multiple values are specified as a comma-separated list.", "required": true, "input": [], "multiple": false, "type": "option" }, "rule-thread-count": { "kind": "integer", "description": "specify number of threads that evaluate DFA rules. Alternatively, set value using environment variable `SFGE_RULE_THREAD_COUNT`. Default is 4", "longDescription": "Specifies number of rule evaluation threads, or how many entrypoints can be evaluated concurrently. Inherits value from SFGE_RULE_THREAD_COUNT env-var, if set. Default is 4.", "env": "SFGE_RULE_THREAD_COUNT", "input": [], "multiple": false, "type": "option" }, "rule-thread-timeout": { "kind": "integer", "description": "specify timeout for individual rule threads in milliseconds. Alternatively, set the timeout value using environment variable `SFGE_RULE_THREAD_TIMEOUT`. Default: 90000 ms", "longDescription": "Specifies time limit for evaluating a single entrypoint in milliseconds. Inherits value from SFGE_RULE_THREAD_TIMEOUT env-var if set. Default is 900,000 ms, or 15 minutes.", "env": "SFGE_RULE_THREAD_TIMEOUT", "input": [], "multiple": false, "type": "option" }, "rule-disable-warning-violation": { "kind": "boolean", "description": "disable warning violations from Salesforce Graph Engine. Alternatively, set value using environment variable `SFGE_RULE_DISABLE_WARNING_VIOLATION`", "longDescription": "Disables warning violations, such as those on StripInaccessible READ access, to get only high-severity violations (default: false). Inherits value from SFGE_RULE_DISABLE_WARNING_VIOLATION env-var if set.", "allowNo": false, "type": "boolean" }, "sfgejvmargs": { "kind": "string", "description": "specify Java Virtual Machine (JVM) arguments to optimize Salesforce Graph Engine execution to your system (optional)", "longDescription": "Specifies Java Virtual Machine arguments to override system defaults while executing Salesforce Graph Engine. For multiple arguments, add them to the same string separated by space.", "env": "SFGE_JVM_ARGS", "input": [], "multiple": false, "type": "option" }, "pathexplimit": { "kind": "integer", "description": "specify a path expansion upper boundary to limit the complexity of code that Graph Engine analyzes. Alternatively, set the value using environment variable `SFGE_PATH_EXPANSION_LIMIT`", "longDescription": "Specifies a path expansion upper boundary to limit the complexity of code Graph Engine analyzes before failing fast. Set the value to -1 to remove any upper boundary. --pathexplimit inherits value from SFGE_PATH_EXPANSION_LIMIT env-var, if set. Its default value is derived from JVM heap space allocation.", "env": "SFGE_PATH_EXPANSION_LIMIT", "input": [], "multiple": false, "type": "option" } } } } }, "commands": [ { "id": "cmdt:generate:field", "summary": "Generate a field for a custom metadata type based on the provided field type.", "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.", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:cmdt:field:create", "cmdt:field:create" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Unique name for the field.", "required": true, "multiple": false, "aliases": [ "fieldname" ] }, "type": { "name": "type", "type": "option", "char": "f", "summary": "Type of the field.", "description": "You can't use this command to create a custom metadata type field of type \"Metadata Relationship\". Use the Salesforce Setup UI instead.", "required": true, "multiple": false, "options": [ "Checkbox", "Date", "DateTime", "Email", "Number", "Percent", "Phone", "Picklist", "Text", "TextArea", "LongTextArea", "Url" ], "aliases": [ "fieldtype" ] }, "picklist-values": { "name": "picklist-values", "type": "option", "char": "p", "summary": "Picklist values; required for picklist fields.", "multiple": true, "aliases": [ "picklistvalues" ], "delimiter": "," }, "decimal-places": { "name": "decimal-places", "type": "option", "char": "s", "summary": "Number of decimal places to use for number or percent fields.", "description": "The value must be greater than or equal to zero. Default value is 0.", "multiple": false, "default": 0, "aliases": [ "decimalplaces" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the field.", "multiple": false }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created field definition files.", "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.", "multiple": false, "default": "", "aliases": [ "outputdir", "outputdirectory" ] } }, "args": {}, "requiresProject": true }, { "id": "cmdt:generate:fromorg", "summary": "Generate a custom metadata type and all its records from a Salesforce object.", "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.", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:cmdt:generate" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "dev-name": { "name": "dev-name", "type": "option", "char": "n", "summary": "Name of the custom metadata type.", "required": true, "multiple": false, "aliases": [ "devname" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the custom metadata type.", "multiple": false }, "plural-label": { "name": "plural-label", "type": "option", "char": "p", "summary": "Plural version of the label value; if blank, uses label.", "multiple": false, "aliases": [ "plurallabel" ] }, "visibility": { "name": "visibility", "type": "option", "char": "v", "summary": "Who can see the custom metadata type.", "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.", "multiple": false, "options": [ "PackageProtected", "Protected", "Public" ], "default": "Public" }, "sobject": { "name": "sobject", "type": "option", "char": "s", "summary": "API name of the source Salesforce object used to generate the custom metadata type.", "required": true, "multiple": false, "aliases": [ "sobjectname" ] }, "ignore-unsupported": { "name": "ignore-unsupported", "type": "boolean", "char": "i", "summary": "Ignore unsupported field types.", "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.", "allowNo": false, "aliases": [ "ignoreunsupported" ] }, "type-output-directory": { "name": "type-output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created custom metadata type files.", "multiple": false, "default": "force-app/main/default/objects", "aliases": [ "typeoutputdir" ] }, "records-output-dir": { "name": "records-output-dir", "type": "option", "char": "r", "summary": "Directory to store newly-created custom metadata record files.", "multiple": false, "default": "force-app/main/default/customMetadata", "aliases": [ "recordsoutputdir" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "cmdt:generate:object", "summary": "Generate a new custom metadata type in the current project.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:cmdt:create", "cmdt:create" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "type-name": { "name": "type-name", "type": "option", "char": "n", "summary": "Unique object name for the custom metadata type.", "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.", "required": true, "multiple": false, "aliases": [ "typename" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the custom metadata type.", "multiple": false }, "plural-label": { "name": "plural-label", "type": "option", "char": "p", "summary": "Plural version of the label value; if blank, uses label.", "multiple": false, "aliases": [ "plurallabel" ] }, "visibility": { "name": "visibility", "type": "option", "char": "v", "summary": "Who can see the custom metadata type.", "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.", "multiple": false, "options": [ "PackageProtected", "Protected", "Public" ], "default": "Public" }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store the newly-created custom metadata type files", "description": "The location can be an absolute path or relative to the current working directory. The default is the current directory.", "multiple": false, "default": "", "aliases": [ "outputdir", "outputdirectory" ] } }, "args": {}, "requiresProject": true }, { "id": "cmdt:generate:record", "summary": "Generate a new record for a given custom metadata type in the current project.", "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.", "strict": false, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:cmdt:record:create", "cmdt:record:create" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "type-name": { "name": "type-name", "type": "option", "char": "t", "summary": "API name of the custom metadata type to create a record for; must end in \"__mdt\".", "required": true, "multiple": false, "aliases": [ "typename" ] }, "record-name": { "name": "record-name", "type": "option", "char": "n", "summary": "Name of the new record.", "required": true, "multiple": false, "aliases": [ "recordname" ] }, "label": { "name": "label", "type": "option", "char": "l", "summary": "Label for the new record.", "multiple": false }, "protected": { "name": "protected", "type": "option", "char": "p", "summary": "Protect the record when it's in a managed package.", "description": "Protected records can only be accessed by code in the same managed package namespace.", "multiple": false, "options": [ "true", "false" ], "default": "false" }, "input-directory": { "name": "input-directory", "type": "option", "char": "i", "summary": "Directory from which to get the custom metadata type definition from.", "multiple": false, "default": "force-app/main/default/objects", "aliases": [ "inputdir", "inputdirectory" ] }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created custom metadata record files.", "multiple": false, "default": "force-app/main/default/customMetadata", "aliases": [ "outputdir", "outputdirectory" ] } }, "args": {}, "requiresProject": true }, { "id": "cmdt:generate:records", "summary": "Generate new custom metadata type records from a CSV file.", "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.", "strict": true, "pluginName": "@salesforce/plugin-custom-metadata", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:cmdt:record:insert", "cmdt:record:insert" ], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "csv": { "name": "csv", "type": "option", "char": "f", "summary": "Pathname of the CSV file.", "required": true, "multiple": false, "aliases": [ "filepath" ] }, "type-name": { "name": "type-name", "type": "option", "char": "t", "summary": "API name of the custom metadata type to create a record for.", "description": "The '__mdt' suffix is appended to the end of the name if it's omitted.", "required": true, "multiple": false, "aliases": [ "typename" ] }, "input-directory": { "name": "input-directory", "type": "option", "char": "i", "summary": "Directory from which to get the custom metadata type definition from.", "multiple": false, "default": "force-app/main/default/objects", "aliases": [ "inputdir", "inputdirectory" ] }, "output-directory": { "name": "output-directory", "type": "option", "char": "d", "summary": "Directory to store newly-created custom metadata record files.", "multiple": false, "default": "force-app/main/default/customMetadata", "aliases": [ "outputdir", "outputdirectory" ] }, "name-column": { "name": "name-column", "type": "option", "char": "n", "summary": "Column used to determine the name of the record.", "multiple": false, "default": "Name", "aliases": [ "namecolumn" ] } }, "args": {}, "requiresProject": true }, { "id": "community:create", "summary": "Create an Experience Cloud site using a template.", "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.", "strict": false, "pluginName": "@salesforce/plugin-community", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:community:create" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the site to create.", "required": true, "multiple": false, "deprecateAliases": true }, "template-name": { "name": "template-name", "type": "option", "char": "t", "summary": "Template to use to create a site.", "description": "An example of a template is Customer Service. Run the \"community template list\" command to see which templates are available in your org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "templatename" ] }, "url-path-prefix": { "name": "url-path-prefix", "type": "option", "char": "p", "summary": "URL to append to the domain created when Digital Experiences was enabled for this org.", "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.", "multiple": false, "default": "", "deprecateAliases": true, "aliases": [ "urlpathprefix" ] }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Description of the site.", "description": "The description displays in Digital Experiences - All Sites in Setup and helps with site identification.", "multiple": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "community:list:template", "summary": "Retrieve the list of templates available in your org.", "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.", "strict": true, "pluginName": "@salesforce/plugin-community", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:community:template:list" ], "examples": [ "Retrieve the template list from an org with alias my-scratch-org:\n<%= config.bin %> <%= command.id %> --target-org my-scratch-org" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "community:publish", "summary": "Publish an Experience Builder site to make it live.", "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.", "strict": true, "pluginName": "@salesforce/plugin-community", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:community:publish" ], "examples": [ "Publish the Experience Builder site with name \"My Customer Site':\n<%= config.bin %> <%= command.id %> --name 'My Customer Site'" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the Experience Builder site to publish.", "required": true, "multiple": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "deploy:functions", "summary": "Deploy a Salesforce Function to an org from your local project.", "description": "You must run this command from within a git repository. Only committed changes to Functions are deployed. The active branch is deployed unless specified otherwise with `--branch`.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Deploy a Salesforce Function:\n<%= config.bin %> <%= command.id %> --connected-org org-alias", "Deploy to 'deploy-branch':\n<%= config.bin %> <%= command.id %> --connected-org org-alias --branch deploy-branch", "Overwrite the remote repository:\n<%= config.bin %> <%= command.id %> --connected-org org-alias --force" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "connected-org": { "name": "connected-org", "type": "option", "char": "o", "description": "Username or alias for the org that the compute environment should be connected to.", "required": true, "multiple": false }, "branch": { "name": "branch", "type": "option", "char": "b", "description": "Deploy the latest commit from a branch different from the currently active branch.", "multiple": false }, "force": { "name": "force", "type": "boolean", "description": "Ignore warnings and overwrite remote repository (not allowed in production).", "allowNo": false }, "quiet": { "name": "quiet", "type": "boolean", "char": "q", "description": "Limit the amount of output displayed from the deploy process.", "allowNo": false } }, "args": {} }, { "id": "dev:audit:messages", "summary": "Audit messages in a plugin's messages directory to locate unused messages and missing messages that have references in source code.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "project-dir": { "name": "project-dir", "type": "option", "char": "p", "summary": "Location of the project where messages are to be audited.", "multiple": false, "default": ".", "aliases": [ "projectdir" ] }, "messages-dir": { "name": "messages-dir", "type": "option", "char": "m", "summary": "Directory that contains the plugin's message files.", "description": "The default is the \"messages\" directory in the current working directory.", "multiple": false, "default": "messages", "aliases": [ "messagesdir" ] }, "source-dir": { "name": "source-dir", "type": "option", "char": "s", "summary": "Directory that contains the plugin's source code.", "description": "The default is the \"src\" directory in the current working directory.", "multiple": false, "default": "src", "aliases": [ "sourcedir" ] } }, "args": {} }, { "id": "dev:configure:repo", "summary": "Configure a GitHub repo for the GitHub Actions pipeline.", "description": "Sets up labels and exempts the CLI bot for branch protection and PR rules.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Configure the repo \"testPackageRelease\", with owner \"salesforcecli\", for GitHub Actions.\n<%= config.bin %> <%= command.id %> --repository salesforcecli/testPackageRelease" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "repository": { "name": "repository", "type": "option", "char": "r", "summary": "GitHub owner/repo for which you want to configure GitHub Actions.", "required": true, "multiple": false }, "dry-run": { "name": "dry-run", "type": "boolean", "char": "d", "summary": "Make no changes.", "allowNo": false, "aliases": [ "dryrun" ] }, "bot": { "name": "bot", "type": "option", "char": "b", "summary": "GitHub login/username for the bot.", "multiple": false, "default": "SF-CLI-BOT" } }, "args": {} }, { "id": "dev:configure:secrets", "summary": "Ensures a GitHub repo has correct access to secrets based on its workflows.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Ensure secrets access for the repo \"testPackageRelease\", with owner \"salesforcecli\":", "<%= config.bin %> <%= command.id %> --repository salesforcecli/testPackageRelease" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "repository": { "name": "repository", "type": "option", "char": "r", "summary": "Github owner/repo.", "required": true, "multiple": false }, "dry-run": { "name": "dry-run", "type": "boolean", "char": "d", "summary": "Make no changes.", "allowNo": false, "aliases": [ "dryrun" ] } }, "args": {} }, { "id": "dev:convert:messages", "summary": "Convert a .json messages file into Markdown.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "project-dir": { "name": "project-dir", "type": "option", "char": "p", "summary": "Location of the project whose messages are to be converted.", "multiple": false, "default": ".", "aliases": [ "projectdir" ] }, "file-name": { "name": "file-name", "type": "option", "char": "f", "summary": "Filename to convert.", "required": true, "multiple": true, "aliases": [ "filename" ] } }, "args": {} }, { "id": "dev:convert:script", "summary": "Convert a script file that contains deprecated sfdx-style commands to use the new sf-style commands instead.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "script": { "name": "script", "type": "option", "char": "s", "summary": "Filepath to the script you want to convert.", "required": true, "multiple": false }, "no-prompt": { "name": "no-prompt", "type": "boolean", "summary": "Don't prompt for suggested replacements.", "hidden": true, "allowNo": false } }, "args": {} }, { "id": "dev:generate:command", "summary": "Generate a new sf command.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Generate the files for a new \"sf my exciting command\":\n<%= config.bin %> <%= command.id %> --name my:exciting:command" ], "flags": { "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the new command. Use colons to separate the topic and command names.", "required": true, "multiple": false }, "force": { "name": "force", "type": "boolean", "summary": "Overwrite existing files.", "allowNo": false }, "nuts": { "name": "nuts", "type": "boolean", "summary": "Generate a NUT test file for the command.", "allowNo": true }, "unit": { "name": "unit", "type": "boolean", "summary": "Generate a unit test file for the command.", "allowNo": true } }, "args": {} }, { "id": "dev:generate:flag", "summary": "Generate a flag for an existing command.", "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 udpating it.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "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": { "dry-run": { "name": "dry-run", "type": "boolean", "char": "d", "summary": "Print new flag code instead of adding it to the command file.", "allowNo": false, "aliases": [ "dryrun" ] } }, "args": {} }, { "id": "dev:generate:library", "summary": "Generate a new library.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "<%= config.bin %> <%= command.id %>" ], "flags": {}, "args": {} }, { "id": "dev:generate:plugin", "summary": "Generate a new sf plugin.", "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.", "strict": true, "pluginName": "@salesforce/plugin-dev", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "plugins:generate" ], "examples": [ "<%= config.bin %> <%= command.id %>" ], "deprecateAliases": true, "flags": {}, "args": {} }, { "id": "env:compute:collaborator:add", "summary": "Add a Heroku user as a collaborator on this Functions account, allowing them to attach Heroku add-ons to compute environments.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Add a Heroku user as a collaborator on this Functions account.\n<%= config.bin %> <%= command.id %> --heroku-user example@heroku.com" ], "flags": { "heroku-user": { "name": "heroku-user", "type": "option", "char": "h", "description": "Email address of the Heroku user you're adding as a collaborator.", "required": true, "multiple": false } }, "args": {} }, { "id": "env:create:compute", "summary": "Create a compute environment for use with Salesforce Functions.", "description": "Compute environments must be connected to a Salesforce org. By default the command uses your local environment's connected org. Use the '--connected-org' flag to specify a specific org. Run 'sf env list' to see a list of environments.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Create a compute environment to run Salesforce Functions:\n<%= config.bin %> <%= command.id %>", "Connect the environment to a specific org:\n<%= config.bin %> <%= command.id %> --connected-org=org-alias", "Create an alias for the compute environment:\n<%= config.bin %> <%= command.id %> --alias environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "connected-org": { "name": "connected-org", "type": "option", "char": "o", "description": "Username or alias for the org that the compute environment should be connected to.", "required": false, "multiple": false }, "alias": { "name": "alias", "type": "option", "char": "a", "description": "Alias for the created environment.", "multiple": false } }, "args": {} }, { "id": "env:delete", "summary": "Delete an environment.", "description": "You must include the name of the environment to delete using '--target-compute'. Run 'sf env list' to see a list of environments.\n\nRunning this command will prompt a confirmation. If you want to skip this confirmation, use the '--confirm' flag and the environment alias to skip confirmation.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Delete a compute environment:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias", "Delete without a confirmation step:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --confirm environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "confirm": { "name": "confirm", "type": "option", "description": "Confirmation name.", "helpValue": "name", "multiple": true } }, "args": {} }, { "id": "env:display", "summary": "Display details about an environment.", "description": "Specify an environment with either the username you used when you logged into the environment with \"sf login\", or the alias you gave the environment when you created it. Run \"sf env list\" to view all your environments and their aliases.\n\nOutput depends on the type of environment.", "strict": true, "pluginName": "@salesforce/plugin-env", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Display details about the \"myEnv\" environment:\n<%- config.bin %> <%- command.id %> --target-env myEnv" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-env": { "name": "target-env", "type": "option", "char": "e", "summary": "Environment alias or login user.", "multiple": false } }, "args": {} }, { "id": "env:list", "summary": "List the environments you’ve created or logged into.", "description": "By default, the command displays active environments.\n\nOutput is displayed in multiple tables, one for each environment type.\n\nThe compute environment table shows the alias, information about the connected orgs, the project name, and more.\n\nUse the table manipulation flags, such as --filter and --sort, to change how the data is displayed.\n\nRun \"sf env display\" to view details about a specific environment.", "strict": true, "pluginName": "@salesforce/plugin-env", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "List all active environments:\n<%= config.bin %> <%= command.id %>", "List both active and inactive environments:\n<%= config.bin %> <%= command.id %> --all", "Don't truncate the displayed output and instead wrap text that's wider than your terminal:\n<%= config.bin %> <%= command.id %> --no-truncate", "Display only the table data, not the headers, in comma-separated value (csv) format:\n<%= config.bin %> <%= command.id %> --csv --no-header" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "all": { "name": "all", "type": "boolean", "char": "a", "summary": "Show all environments, even inactive ones.", "allowNo": false }, "columns": { "name": "columns", "type": "option", "summary": "List of columns to display.", "multiple": true }, "csv": { "name": "csv", "type": "boolean", "summary": "Output in csv format [alias: --output=csv]", "allowNo": false }, "filter": { "name": "filter", "type": "option", "summary": "Filter property by partial string matching.", "multiple": false }, "no-header": { "name": "no-header", "type": "boolean", "summary": "Hide table header from output.", "allowNo": false }, "no-truncate": { "name": "no-truncate", "type": "boolean", "summary": "Don't truncate output to fit screen.", "allowNo": false }, "output": { "name": "output", "type": "option", "summary": "Format in which to display the output.", "multiple": false, "options": [ "csv", "json", "yaml" ] }, "sort": { "name": "sort", "type": "option", "summary": "Column to sort by (prepend '-' for descending).", "multiple": false } }, "args": {} }, { "id": "env:log", "summary": "Stream log output for an environment.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "beta", "aliases": [], "examples": [ "Stream log output:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias" ], "flags": { "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Compute environment name to retrieve logs.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "num": { "name": "num", "type": "option", "char": "n", "description": "Number of lines to display.", "multiple": false } }, "args": {} }, { "id": "env:log:tail", "summary": "Stream log output for an environment.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Stream log output:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias" ], "flags": { "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Compute environment name to retrieve logs.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, { "id": "env:logdrain:add", "summary": "Add log drain to a specified environment.", "description": "Both '--target-compute' and '--url' are required flags. '--url' should be a HTTP or HTTPS URL that can receive the log drain messages.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Add a log drain:\n<%= config.bin %> <%= command.id %> --target-compute environment-name --url https://path/to/logdrain" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "drain-url": { "name": "drain-url", "type": "option", "char": "l", "description": "Endpoint that will receive sent logs.", "multiple": false, "exclusive": [ "url" ] }, "url": { "name": "url", "type": "option", "char": "u", "description": "Endpoint that will receive sent logs.", "hidden": true, "multiple": false, "exclusive": [ "drain-url" ] } }, "args": {} }, { "id": "env:logdrain:list", "summary": "List log drains connected to a specified environment.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "List log drains:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias", "List log drains as json:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, { "id": "env:logdrain:remove", "summary": "Remove log drain from a specified environment.", "description": "Both '--target-compute' and '--drain-url' are required flags.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Remove a logdrain:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --url https://path/to/logdrain" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] }, "drain-url": { "name": "drain-url", "type": "option", "char": "l", "description": "Log drain url to remove.", "multiple": false, "exclusive": [ "url" ] }, "url": { "name": "url", "type": "option", "char": "u", "description": "Log drain url to remove.", "hidden": true, "multiple": false, "exclusive": [ "drain-url" ] } }, "args": {} }, { "id": "env:open", "summary": "Open an environment in a web browser.", "description": "Each of your environments is associated with an instance URL, such as https://login.salesforce.com. To open a specific web page, specify the portion of the URL after \"/\" with the --path flag.", "strict": true, "pluginName": "@salesforce/plugin-env", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Open the compute environment with alias \"test-compute\":\n<%= config.bin %> <%= command.id %> --target-env test-compute", "View the URL but don't launch it in a browser:\n<%= config.bin %> <%= command.id %> --target-env test-compute --url-only", "Open the environment in the Google Chrome browser:\n<%= config.bin %> <%= command.id %> --target-env test-compute --url-only --browser chrome" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "path": { "name": "path", "type": "option", "char": "p", "summary": "Path to append to the end of the login URL.", "multiple": false }, "url-only": { "name": "url-only", "type": "boolean", "char": "r", "summary": "Display the URL, but don’t launch it in a browser.", "allowNo": false }, "target-env": { "name": "target-env", "type": "option", "char": "e", "summary": "Login user or alias of the environment to open.", "multiple": false }, "browser": { "name": "browser", "type": "option", "summary": "Browser in which to open the environment.", "description": "You can specify that the environment open in one of the following browsers: Firefox, Safari, Google Chrome, or Windows Edge. If you don’t specify --browser, the environment opens in your default browser. The exact names of the browser applications differ depending on the operating system you're on; check your documentation for details.", "multiple": false } }, "args": {} }, { "id": "env:var:get", "summary": "Display a single config variable for an environment.", "description": "You must provide the '--target-compute' flag and the key to retrieve.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Get a config variable:\n<%= config.bin %> <%= command.id %> [KEY] --target-compute environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": { "key": { "name": "key", "required": true } } }, { "id": "env:var:list", "summary": "List your environment's config vars in a table.", "description": "Use the '--json' flag to return config vars in JSON format.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "List config vars:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias", "List in JSON format:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, { "id": "env:var:set", "summary": "Set a single config value for an environment.", "strict": false, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Set a config value:\n<%= config.bin %> <%= command.id %> [KEY]=[VALUE] --target-compute environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, { "id": "env:var:unset", "summary": "Unset a single config value for an environment.", "description": "Run 'sf env var list' to see a list of config values that can be unset.", "strict": false, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Unset a value:\n<%= config.bin %> <%= command.id %> --target-compute environment-alias" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "target-compute": { "name": "target-compute", "type": "option", "char": "e", "description": "Environment name.", "required": false, "multiple": false, "exclusive": [ "environment" ] }, "environment": { "name": "environment", "type": "option", "char": "e", "description": "Environment name.", "hidden": true, "required": false, "multiple": false, "exclusive": [ "target-compute" ] } }, "args": {} }, { "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 [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-plugin-lwc-test", "pluginAlias": "@salesforce/cli", "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" } } }, { "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/cli", "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" } } }, { "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/cli", "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 }, { "id": "generate:function", "summary": "Create a Salesforce Function with basic scaffolding specific to a given language.", "description": "Both '--language' and '--name' are required flags. Function names must start with a capital letter.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Create a JavaScript function:\n<%= config.bin %> <%= command.id %> --function-name myfunction --language javascript" ], "flags": { "function-name": { "name": "function-name", "type": "option", "char": "n", "description": "Function name. Must start with a capital letter.", "multiple": false, "exclusive": [ "name" ] }, "name": { "name": "name", "type": "option", "char": "n", "description": "Function name. Must start with a capital letter.", "hidden": true, "multiple": false, "exclusive": [ "function-name" ] }, "language": { "name": "language", "type": "option", "char": "l", "description": "The language in which the function is written.", "required": true, "multiple": false, "options": [ "java", "javascript", "python", "typescript" ] } }, "args": {} }, { "id": "login:functions", "summary": "Log in to Salesforce Functions.", "description": "This step is required to develop or deploy Salesforce Functions.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Log in to Salesforce Functions:\n<%= config.bin %> <%= command.id %>" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false } }, "args": {} }, { "id": "login:functions:jwt", "summary": "Login using JWT instead of default web-based flow. This will authenticate you with both sf and Salesforce Functions.", "description": "Use this command when executing from a script.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Log in using JWT:\n<%= config.bin %> <%= command.id %> --username example@username.org --keyfile file.key --clientid 123456", "Log in and specify the org alias and URL, set as default org and default Dev Hub, and format output as JSON:\n<%= config.bin %> <%= command.id %> --username example@username.org --keyfile file.key --clientid 123456 --alias org-alias --set-default --set-default-dev-hub --instance-url https://path/to/instance --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "username": { "name": "username", "type": "option", "char": "u", "description": "Authentication username.", "required": true, "multiple": false }, "keyfile": { "name": "keyfile", "type": "option", "char": "f", "description": "Path to JWT keyfile.", "required": true, "multiple": false }, "clientid": { "name": "clientid", "type": "option", "char": "i", "description": "OAuth client ID.", "required": true, "multiple": false }, "instance-url": { "name": "instance-url", "type": "option", "char": "l", "description": "The login URL of the instance the org lives on.", "multiple": false, "exclusive": [ "instanceurl" ] }, "instanceurl": { "name": "instanceurl", "type": "option", "char": "l", "description": "The login URL of the instance the org lives on.", "hidden": true, "multiple": false, "exclusive": [ "instance-url" ] }, "alias": { "name": "alias", "type": "option", "char": "a", "description": "Alias for the org.", "multiple": false }, "set-default": { "name": "set-default", "type": "boolean", "char": "d", "description": "Set the org as the default that all org-related commands run against.", "allowNo": false }, "set-default-dev-hub": { "name": "set-default-dev-hub", "type": "boolean", "char": "v", "description": "Set the org as the default Dev Hub for scratch org creation.", "allowNo": false } }, "args": {} }, { "id": "logout:functions", "summary": "Log out of your Salesforce Functions account.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Log out:\n<%= config.bin %> <%= command.id %>" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false } }, "args": {} }, { "id": "org:create:shape", "summary": "Create a scratch org configuration (shape) based on the specified source org.", "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 %> force:org:create\" command.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:org:shape:create" ], "examples": [ "Create an org shape for the source org with alias SourceOrg:\n<%= config.bin %> <%= command.id %> --target-org SourceOrg" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "org:create:snapshot", "summary": "Create a snapshot of a scratch org.", "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 %> force:org:create\" to create the scratch org.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:create" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "source-org": { "name": "source-org", "type": "option", "char": "o", "summary": "ID or locally authenticated username or alias of scratch org to snapshot.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "sourceorg" ] }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Unique name of snapshot.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "snapshotname" ] }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Description of snapshot.", "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.", "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "org:delete:shape", "summary": "Delete all org shapes for a target org.", "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.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:org:shape:delete" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "p", "summary": "Don't prompt for confirmation.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "org:delete:snapshot", "summary": "Delete a scratch org snapshot.", "description": "Dev Hub admins can delete any snapshot, while users can delete only their own unless a Dev Hub admin gives the user Modify All permissions.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:delete" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "snapshot": { "name": "snapshot", "type": "option", "char": "s", "summary": "Name or ID of snapshot to delete.", "description": "The IDs of scratch org snapshots start with 0Oo.", "required": true, "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "org:get:snapshot", "summary": "Get details about a scratch org snapshot.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:get" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "snapshot": { "name": "snapshot", "type": "option", "char": "s", "summary": "Name or ID of snapshot to retrieve.", "description": "The IDs of scratch org snapshots start with 0Oo.", "required": true, "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "org:list:shape", "summary": "List all org shapes you’ve created.", "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.", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:org:shape:list" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "List more information about each org shape.", "hidden": true, "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {} }, { "id": "org:list:snapshot", "summary": "List scratch org snapshots.", "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\".", "strict": true, "pluginName": "@salesforce/plugin-signups", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "closedPilot", "aliases": [ "force:org:snapshot:list" ], "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" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:convert", "summary": "Create a second-generation package version from a first-generation package.", "description": "The package convert creates a new package in the Dev Hub if one does not already exist for the specified first-generation package.\n\nIt then creates a new package version in the Dev Hub with contents based on the specified first-generation package.\n\nThe latest released non-patch package version from the specified first-generation package will be converted.\n\nTo retrieve details about a package version create request, including status and package version ID (04t), run \"<%= config.bin %> package version create report -i 08c...\".\n\nWe recommend specifying the --installation-key to protect the contents of your package and to prevent unauthorized installation of your package.\n\nTo list package version creation requests in the org, run \"<%= config.bin %> package version create list\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "hidden": true, "aliases": [ "force:package:convert" ], "examples": [ "Create a second-generation package version from the first-generation package with the specified ID and give it the installation key \"password123\"; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 033... --installation-key password123", "Similar to previous example, but uses the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 033... --installation-key password123 --target-dev-hub devhuborg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 033) of the first-generation package to convert.", "required": true, "multiple": false, "deprecateAliases": true }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package.", "description": "Either an --installation-key value or the --installation-key-bypass flag is required.", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "definition-file": { "name": "definition-file", "type": "option", "char": "f", "summary": "Path to a definition file that contains features and org preferences that the metadata of the package version depends on.", "description": "This definition file is similar to the scratch org definition file.", "multiple": false, "deprecateAliases": true, "aliases": [ "definitionfile" ] }, "installation-key-bypass": { "name": "installation-key-bypass", "type": "boolean", "char": "x", "summary": "Bypass the installation key requirement.", "description": "If you bypass this requirement, anyone can install your package. Either an --installation-key value or the --installation-key-bypass flag is required.", "allowNo": false, "deprecateAliases": true, "aliases": [ "installationkeybypass" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Minutes to wait for the package version to be created.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "build-instance": { "name": "build-instance", "type": "option", "char": "s", "summary": "Instance where the conversion package version will be created, such as NA50.", "hidden": true, "multiple": false, "deprecateAliases": true, "aliases": [ "buildinstance" ] }, "seed-metadata": { "name": "seed-metadata", "type": "option", "char": "m", "summary": "Directory containing metadata to be deployed prior to conversion.", "description": "The directory containing metadata that will be deployed on the build org prior to attempting conversion.", "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:create", "summary": "Create a package.", "description": "First, use this command to create a package. Then create a package version.\n\nIf you don’t have a namespace defined in your sfdx-project.json file, use --no-namespace.\n\nYour --name value must be unique within your namespace.\n\nRun '<%= config.bin %> package list to list all packages in the Dev Hub org.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:create" ], "examples": [ "Create an unlocked package from the files in the \"force-app\" directory; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --name MyUnlockedPackage --package-type Unlocked --path force-app", "Create a managed packaged from the \"force-app\" directory files, give the package a description, and use the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --name MyManagedPackage --description \"Your Package Descripton\" --package-type Managed --path force-app --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Name of the package to create.", "required": true, "multiple": false, "deprecateAliases": true }, "package-type": { "name": "package-type", "type": "option", "char": "t", "summary": "Type of package.", "description": "The options for package type are Managed and Unlocked (Managed=DeveloperManagedSubscriberManaged, Unlocked=DeveloperControlledSubscriberEditable). These options determine upgrade and editability rules.", "required": true, "multiple": false, "options": [ "Managed", "Unlocked" ], "deprecateAliases": true, "aliases": [ "packagetype" ] }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Description of the package.", "multiple": false, "deprecateAliases": true }, "no-namespace": { "name": "no-namespace", "type": "boolean", "char": "e", "summary": "Create the package with no namespace; available only for unlocked packages.", "description": "This flag is useful when you’re migrating an existing org to packages. But use a namespaced package for new metadata.", "allowNo": false, "deprecateAliases": true, "aliases": [ "nonamespace" ] }, "path": { "name": "path", "type": "option", "char": "r", "summary": "Path to directory that contains the contents of the package.", "required": true, "multiple": false, "deprecateAliases": true }, "org-dependent": { "name": "org-dependent", "type": "boolean", "summary": "Depends on unpackaged metadata in the installation org; applies to unlocked packages only.", "description": "Use Source Tracking in Sandboxes to develop your org-dependent unlocked package. For more information, see \"Create Org-Dependent Unlocked Packages\" in the Salesforce DX Developer Guide.", "allowNo": false, "deprecateAliases": true, "aliases": [ "orgdependent" ] }, "error-notification-username": { "name": "error-notification-username", "type": "option", "char": "o", "summary": "Active Dev Hub user designated to receive email notifications for package errors.", "description": "Email notifications include information about unhandled Apex exceptions, and install, upgrade, or uninstall failures associated with your package.", "multiple": false, "deprecateAliases": true, "aliases": [ "errornotificationusername" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:delete", "summary": "Delete a package.", "description": "Specify the ID or alias of the package you want to delete.\n\nDelete unlocked and second-generation managed packages. Before you delete a package, first delete all associated package versions.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:delete" ], "examples": [ "Delete a package using its alias from your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\"", "Delete a package using its ID from the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 0Ho... --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "n", "summary": "Don’t prompt before deleting the package.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 0Ho) or alias of the package to delete.", "required": true, "multiple": false, "deprecateAliases": true }, "undelete": { "name": "undelete", "type": "boolean", "summary": "Undelete a deleted package.", "hidden": true, "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:install", "summary": "Install a version of a package in the target org.", "description": "To install a package, specify a specific version of the package using the 04t package ID. The package and the version you specified installs in your default target org unless you supply the username for a different target org.\n\nFor package upgrades, to specify options for component deprecation or deletion of removed components, include an --upgrade-type value. To delete components that can be safely deleted and deprecate the others, specify --upgrade-type Mixed (the default). To deprecate all removed components, specify --upgrade-type DeprecateOnly. To delete all removed components, except for custom objects and custom fields, that don't have dependencies, specify --upgrade-type Delete. (Note: This option can result in the loss of data that is associated with the deleted components.) The default is Mixed.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:install" ], "examples": [ "Install a package version with the specified ID in the org with username \"me@example.com\":\n<%= config.bin %> <%= command.id %> --package 04t... --target-org me@example.com", "Install a package version with the specified alias into your default org:\n<%= config.bin %> <%= command.id %> --package awesome_package_alias", "Install a package version with an alias that includes spaces into your default org:\n<%= config.bin %> <%= command.id %> --package \"Awesome Package Alias\"", "Install an unlocked package version with the specified ID and deprecate all removed components:\n<%= config.bin %> <%= command.id %> --package 04t... --upgrade-type DeprecateOnly" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for installation status.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package (default: null).", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "publish-wait": { "name": "publish-wait", "type": "option", "char": "b", "summary": "Maximum number of minutes to wait for the Subscriber Package Version ID to become available in the target org before canceling the install request.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true, "aliases": [ "publishwait" ] }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "r", "summary": "Don't prompt for confirmation.", "description": "Allows the following without an explicit confirmation response: 1) Remote Site Settings and Content Security Policy websites to send or receive data, and 2) --upgrade-type Delete to proceed.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to install.", "required": true, "multiple": false, "deprecateAliases": true }, "apex-compile": { "name": "apex-compile", "type": "option", "char": "a", "summary": "Compile all Apex in the org and package, or only Apex in the package; unlocked packages only.", "description": "Applies to unlocked packages only. Specifies whether to compile all Apex in the org and package, or only the Apex in the package.\n\nFor package installs into production orgs, or any org that has Apex Compile on Deploy enabled, the platform compiles all Apex in the org after the package install or upgrade operation completes.\n\nThis approach assures that package installs and upgrades don’t impact the performance of an org, and is done even if --apex-compile package is specified.", "multiple": false, "options": [ "all", "package" ], "default": "all", "deprecateAliases": true, "aliases": [ "apexcompile" ] }, "security-type": { "name": "security-type", "type": "option", "char": "s", "summary": "Security access type for the installed package. (deprecation notice: The default --security-type value will change from AllUsers to AdminsOnly in v47.0 or later.)", "multiple": false, "options": [ "AllUsers", "AdminsOnly" ], "default": "AdminsOnly", "deprecateAliases": true, "aliases": [ "securitytype" ] }, "upgrade-type": { "name": "upgrade-type", "type": "option", "char": "t", "summary": "Upgrade type for the package installation; available only for unlocked packages.", "description": "For package upgrades, specifies whether to mark all removed components as deprecated (DeprecateOnly), to delete removed components that can be safely deleted and deprecate the others (Mixed), or to delete all removed components, except for custom objects and custom fields, that don't have dependencies (Delete). The default is Mixed. Can specify DeprecateOnly or Delete only for unlocked package upgrades.", "multiple": false, "options": [ "DeprecateOnly", "Mixed", "Delete" ], "default": "Mixed", "deprecateAliases": true, "aliases": [ "upgradetype" ] }, "skip-handlers": { "name": "skip-handlers", "type": "option", "char": "l", "summary": "Skip install handlers (available handlers: FeatureEnforcement).", "description": "Allows the installer of a package to optionally skip install handlers in order to decrease overall installation time (available handlers: FeatureEnforcement).", "hidden": true, "multiple": true, "options": [ "FeatureEnforcement" ], "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:install:report", "summary": "Retrieve the status of a package installation request.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:install:report" ], "examples": [ "Retrieve the status of a package installation request with the specified ID on your default org:\n<%= config.bin %> <%= command.id %> --request-id 0Hf...", "Similar to previous example, except use the org with username me@example.com:\n<%= config.bin %> <%= command.id %> --request-id 0Hf... --target-org me@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "request-id": { "name": "request-id", "type": "option", "char": "i", "summary": "ID of the package install request you want to check; starts with 0Hf.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "requestid" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:installed:list", "summary": "List the org’s installed packages.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:installed:list" ], "examples": [ "List the installed packages in your default org:\n<%= config.bin %> <%= command.id %>", "List the installed packages in the org with username me@example.com:\n<%= config.bin %> <%= command.id %> --target-org me@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:list", "summary": "List all packages in the Dev Hub org.", "description": "Description", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:list" ], "examples": [ "List all packages in the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --target-dev-hub devhub@example.com", "List all packages details in the specified Dev Hub org, and show extended details about each package:\n<%= config.bin %> <%= command.id %> --target-dev-hub devhub@example.com --verbose" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display extended package detail.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:uninstall", "summary": "Uninstall a second-generation package from the target org.", "description": "Specify the package ID for a second-generation package.\n\nTo list the org’s installed packages, run \"<%= config.bin %> package installed list\".\n\nTo uninstall a first-generation package, from Setup, enter Installed Packages in the Quick Find box, then select Installed Packages.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:uninstall" ], "examples": [ "Uninstall a package with specified ID from an org with username me@example.com:\n<%= config.bin %> <%= command.id %> --package 04t... --target-org me@example.com", "Uninstall a package with the specified alias from your default org:\n<%= config.bin %> <%= command.id %> --package undesirable_package_alias", "Uninstall a package with an alias that contains spaces from your default org:\n<%= config.bin %> <%= command.id %> --package \"Undesirable Package Alias\"" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for uninstall status.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to uninstall.", "required": true, "multiple": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:uninstall:report", "summary": "Retrieve the status of a package uninstall request.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:uninstall:report" ], "examples": [ "Retrieve the status of a package uninstall in your default org using the specified request ID:\n<%= config.bin %> <%= command.id %> --request-id 06y...", "Similar to previous example, but use the org with username me@example.com:\n<%= config.bin %> <%= command.id %> --request-id 06y... --target-org me@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "request-id": { "name": "request-id", "type": "option", "char": "i", "summary": "ID of the package uninstall request you want to check; starts with 06y.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "requestid" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:update", "summary": "Update package details.", "description": "Specify a new value for each option you want to update.\n\nRun \"<%= config.bin %> package list\" to list all packages in the Dev Hub org.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:update" ], "examples": [ "Update the name of the package with the specified alias; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --name \"New Package Name\"", "Update the description of the package with the specified ID; uses the specified Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 0Ho... --description \"New Package Description\" --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 0Ho) or alias of the package to update.", "required": true, "multiple": false, "deprecateAliases": true }, "name": { "name": "name", "type": "option", "char": "n", "summary": "New name of the package.", "multiple": false, "deprecateAliases": true }, "description": { "name": "description", "type": "option", "char": "d", "summary": "New description of the package.", "multiple": false, "deprecateAliases": true }, "error-notification-username": { "name": "error-notification-username", "type": "option", "char": "o", "summary": "Active Dev Hub user designated to receive email notifications for package errors.", "description": "Email notifications include information about unhandled Apex exceptions, and install, upgrade, or uninstall failures associated with your package.", "multiple": false, "deprecateAliases": true, "aliases": [ "errornotificationusername" ] }, "enable-app-analytics": { "name": "enable-app-analytics", "type": "boolean", "summary": "Enable AppExchange App Analytics usage data collection on this managed package and its components.", "allowNo": true, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:create", "summary": "Create a package version in the Dev Hub org.", "description": "The package version is based on the package contents in the specified directory.\n\nTo retrieve details about a package version create request, including status and package version ID (04t), run \"<%= config.bin %> package version create report -i 08c...\".\n\nWe recommend that you specify the --installation-key parameter to protect the contents of your package and to prevent unauthorized installation of your package.\n\nTo list package version creation requests in the org, run \"<%= config.bin %> package version create list\".\nTo promote a package version to released, you must use the --code-coverage parameter. The package must also meet the code coverage requirements. This requirement applies to both managed and unlocked packages.\n\nWe don’t calculate code coverage for org-dependent unlocked packages, or for package versions that specify --skip-validation.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:create" ], "examples": [ "Create a package version from the contents of the \"common\" directory and give it an installation key of \"password123\"; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --path common --installation-key password123", "Create a package version from a package with the specified alias; uses the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --installation-key password123 --target-dev-hub devhub@example.com", "Create a package version from a package with the specified ID:\n<%= config.bin %> <%= command.id %> --package 0Ho... --installation-key password123", "Create a package version and skip the validation step:\n<%= config.bin %> <%= command.id %> --path common --installation-key password123 --skip-validation" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "branch": { "name": "branch", "type": "option", "char": "b", "summary": "Name of the branch in your source control system that the package version is based on.", "multiple": false, "deprecateAliases": true }, "build-instance": { "name": "build-instance", "type": "option", "char": "s", "summary": "Instance where the package version will be created, such as NA50.", "hidden": true, "multiple": false, "deprecateAliases": true, "aliases": [ "buildinstance" ] }, "code-coverage": { "name": "code-coverage", "type": "boolean", "char": "c", "summary": "Calculate and store the code coverage percentage by running the packaged Apex tests included in this package version.", "description": "Before you can promote and release a managed or unlocked package version, the Apex code must meet a minimum 75% code coverage requirement. We don’t calculate code coverage for org-dependent unlocked packages or for package versions that specify --skip-validation.", "allowNo": false, "exclusive": [ "skip-validation" ], "deprecateAliases": true, "aliases": [ "codecoverage" ] }, "definition-file": { "name": "definition-file", "type": "option", "char": "f", "summary": "Path to a definition file similar to scratch org definition file that contains the list of features and org preferences that the metadata of the package version depends on.", "multiple": false, "deprecateAliases": true, "aliases": [ "definitionfile" ] }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package. (either --installation-key or --installation-key-bypass is required)", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "installation-key-bypass": { "name": "installation-key-bypass", "type": "boolean", "char": "x", "summary": "Bypass the installation key requirement. (either --installation-key or --installation-key-bypass is required)", "description": "If you bypass this requirement, anyone can install your package.", "allowNo": false, "deprecateAliases": true, "aliases": [ "installationkeybypass" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 0Ho) or alias of the package to create a version of.", "multiple": false, "deprecateAliases": true }, "path": { "name": "path", "type": "option", "char": "d", "summary": "Path to the directory that contains the contents of the package.", "multiple": false, "deprecateAliases": true }, "post-install-script": { "name": "post-install-script", "type": "option", "summary": "Name of the post-install script; applies to managed packages only.", "description": "The post-install script is an Apex class within this package that is run in the installing org after installations or upgrades of this package version.", "multiple": false, "deprecateAliases": true, "aliases": [ "postinstallscript" ] }, "post-install-url": { "name": "post-install-url", "type": "option", "summary": "Post-install instructions URL.", "description": "The contents of the post-installation instructions URL are displayed in the UI after installation of the package version.", "multiple": false, "deprecateAliases": true, "aliases": [ "postinstallurl" ] }, "preserve": { "name": "preserve", "type": "boolean", "char": "r", "summary": "Preserve temp files that would otherwise be deleted.", "hidden": true, "allowNo": false, "deprecateAliases": true }, "releasenotes-url": { "name": "releasenotes-url", "type": "option", "summary": "Release notes URL.", "description": "This link is displayed in the package installation UI to provide release notes for this package version to subscribers.", "multiple": false, "deprecateAliases": true, "aliases": [ "releasenotesurl" ] }, "skip-ancestor-check": { "name": "skip-ancestor-check", "type": "boolean", "summary": "Overrides ancestry requirements, which allows you to specify a package ancestor that isn’t the highest released package version.", "allowNo": false, "deprecateAliases": true, "aliases": [ "skipancestorcheck" ] }, "skip-validation": { "name": "skip-validation", "type": "boolean", "summary": "Skip validation during package version creation; you can’t promote unvalidated package versions.", "description": "Skips validation of dependencies, package ancestors, and metadata during package version creation. Skipping validation reduces the time it takes to create a new package version, but you can promote only validated package versions. Skipping validation can suppress important errors that can surface at a later stage. You can specify skip validation or code coverage, but not both. Code coverage is calculated during validation.", "allowNo": false, "exclusive": [ "code-coverage" ], "deprecateAliases": true, "aliases": [ "skipvalidation" ] }, "tag": { "name": "tag", "type": "option", "char": "t", "summary": "Package version’s tag.", "multiple": false, "deprecateAliases": true }, "uninstall-script": { "name": "uninstall-script", "type": "option", "summary": "Uninstall script name; applies to managed packages only.", "description": "The uninstall script is an Apex class within this package that is run in the installing org after uninstallations of this package.", "multiple": false, "deprecateAliases": true, "aliases": [ "uninstallscript" ] }, "validate-schema": { "name": "validate-schema", "type": "boolean", "char": "j", "summary": "Validate the sfdx-project.json file against the JSON schema.", "hidden": true, "allowNo": false, "deprecateAliases": true, "aliases": [ "validateschema" ] }, "version-description": { "name": "version-description", "type": "option", "char": "e", "summary": "Description of the package version to be created; overrides the sfdx-project.json value.", "multiple": false, "deprecateAliases": true, "aliases": [ "versiondescription" ] }, "version-name": { "name": "version-name", "type": "option", "char": "a", "summary": "Name of the package version to be created; overrides the sfdx-project.json value.", "multiple": false, "deprecateAliases": true, "aliases": [ "versionname" ] }, "version-number": { "name": "version-number", "type": "option", "char": "n", "summary": "Version number of the package version to be created; overrides the sfdx-project.json value.", "multiple": false, "deprecateAliases": true, "aliases": [ "versionnumber" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for the package version to be created.", "multiple": false, "default": { "quantity": 0, "unit": 0 }, "deprecateAliases": true }, "language": { "name": "language", "type": "option", "summary": "Language for the package.", "description": "Specify the language using a language code listed under \"Supported Languages\" in Salesforce Help. If no language is specified, the language defaults to the language of the Dev Hub user who created the package.", "multiple": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display verbose command output.", "description": "Display verbose command output. When polling for the status of the creation, this will output status and timeout data on a separate line for each poll request, which is useful in CI systems where timeouts can occur with long periods of no output from commands.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:create:list", "summary": "List package version creation requests.", "description": "Shows the details of each request to create a package version in the Dev Hub org.\n\nAll filter parameters are applied using the AND logical operator (not OR).\n\nTo get information about a specific request, run \"<%= config.bin %> package version create report\" and supply the request ID.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:create:list" ], "examples": [ "List all package version creation requests in your default Dev Hub org:\n<%= config.bin %> <%= command.id %>", "List package version creation requests from the last 3 days in the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --created-last-days 3 --target-dev-hub", "List package version creation requests with status Error:\n<%= config.bin %> <%= command.id %> --status Error", "List package version creation requests with status InProgress:\n<%= config.bin %> <%= command.id %> --status InProgress", "List package version creation requests with status Success that were created today:\n<%= config.bin %> <%= command.id %> --created-last-days 0 --status Success" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "created-last-days": { "name": "created-last-days", "type": "option", "char": "c", "summary": "Number of days since the request was created, starting at 00:00:00 of first day to now. Use 0 for today.", "multiple": false, "deprecateAliases": true, "aliases": [ "createdlastdays" ] }, "status": { "name": "status", "type": "option", "char": "s", "summary": "Status of the version creation request, used to filter the list.", "multiple": false, "options": [ "Queued", "InProgress", "Success", "Error" ], "deprecateAliases": true }, "show-conversions-only": { "name": "show-conversions-only", "type": "boolean", "summary": "Filter the list output to display only converted package version.", "allowNo": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Displays additional information at a slight performance cost, such as the version name and number for each package version create request.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:version:create:report", "summary": "Retrieve details about a package version creation request.", "description": "Specify the request ID for which you want to view details. If applicable, the command displays errors related to the request.\n\nTo show all requests in the org, run \"<%= config.bin %> package version create list\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:create:report" ], "examples": [ "Retrieve details about the package version creation request with the specified ID; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package-create-request-id 08c...", "Retrieve details about the specified package version creation request in the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package-create-request-id 08c... --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-create-request-id": { "name": "package-create-request-id", "type": "option", "char": "i", "summary": "ID (starts with 08c) of the package version creation request you want to display.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "packagecreaterequestid" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:version:delete", "summary": "Delete a package version.", "description": "Specify the ID or alias of the package version you want to delete.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:delete" ], "examples": [ "Delete a package version with the specified alias using your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\"", "Delete a package version with the specified ID using the Dev Hub org with username \"devhub@example.com\":\n<%= config.bin %> <%= command.id %> --package 04t... --target-org devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "n", "summary": "Don’t prompt before deleting the package version.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to delete.", "required": true, "multiple": false, "deprecateAliases": true }, "undelete": { "name": "undelete", "type": "boolean", "summary": "Undelete a deleted package version.", "hidden": true, "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:displayancestry", "summary": "Display the ancestry tree for a 2GP managed package version.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:displayancestry" ], "examples": [ "Display the ancestry tree for a package version with the specified alias, using your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package package_version_alias", "Similar to previous example, but display the output in DOT code:\n<%= config.bin %> <%= command.id %> --package package_version_alias --dot-code", "Display the ancestry tree for a package with the specified ID, using the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package OHo... --target-dev-hub devhub@example.com", "Display the ancestry tree of a package version with the specified ID, using your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 04t..." ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID or alias of the package (starts with 0Ho) or package version (starts with 04t) to display ancestry for.", "description": "If you specify a package ID (starts with 0Ho) or alias, the ancestor tree for every package version associated with the package ID is displayed. If you specify a package version (starts with 04t) or alias, the ancestry tree of the specified package version is displayed.", "required": true, "multiple": false, "deprecateAliases": true }, "dot-code": { "name": "dot-code", "type": "boolean", "summary": "Display the ancestry tree in DOT code.", "description": "You can use the DOT code output in graph visualization software to create tree visualizations.", "allowNo": false, "deprecateAliases": true, "aliases": [ "dotcode" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display both the package version ID (starts with 04t) and the version number (major.minor.patch.build) in the ancestry tree.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:list", "summary": "List all package versions in the Dev Hub org.", "description": "Description", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:list" ], "examples": [ "List package versions in your default Dev Hub org that were created in the last 3 days; show only the released versions and order the list using the PatchVersion field. Display extended details about each package version:\n<%= config.bin %> <%= command.id %> --verbose --created-last-days 3 --released --order-by PatchVersion", "List the released package versions for the two specified packages that were modified today; use the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --packages 0Ho000000000000,0Ho000000000001 --released --modified-last-days 0 --target-dev-hub devhub@example.com", "List all released package versions in your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --released", "List package versions that were modified today in your default Dev Hub org; show limited details about each one:\n<%= config.bin %> <%= command.id %> --concise --modified-last-days 0", "List released package versions that were created in the last 3 days in your default Dev Hub org; show limited details:\n<%= config.bin %> <%= command.id %> --concise --created-last-days 3 --released", "List released package versions that were modified today for the two packages with specified aliases in your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --packages exp-mgr,exp-mgr-util --released --modified-last-days 0" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "created-last-days": { "name": "created-last-days", "type": "option", "char": "c", "summary": "Number of days since the request was created, starting at 00:00:00 of first day to now. Use 0 for today.", "multiple": false, "deprecateAliases": true, "aliases": [ "createdlastdays" ] }, "concise": { "name": "concise", "type": "boolean", "summary": "Display limited package version details.", "allowNo": false, "deprecateAliases": true }, "show-conversions-only": { "name": "show-conversions-only", "type": "boolean", "summary": "Filter the list output to display only converted package version.", "allowNo": false, "deprecateAliases": true }, "modified-last-days": { "name": "modified-last-days", "type": "option", "char": "m", "summary": "Number of days since the items were modified, starting at 00:00:00 of first day to now. Use 0 for today.", "multiple": false, "deprecateAliases": true, "aliases": [ "modifiedlastdays" ] }, "packages": { "name": "packages", "type": "option", "char": "p", "summary": "Comma-delimited list of packages (aliases or 0Ho IDs) to list.", "multiple": false, "deprecateAliases": true }, "released": { "name": "released", "type": "boolean", "char": "r", "summary": "Display released versions only (IsReleased=true).", "allowNo": false, "deprecateAliases": true }, "order-by": { "name": "order-by", "type": "option", "char": "o", "summary": "Package version fields used to order the list.", "multiple": false, "deprecateAliases": true, "aliases": [ "orderby" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display extended package version details.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "hasDynamicHelp": true }, { "id": "package:version:promote", "summary": "Promote a package version to released.", "description": "Supply the ID or alias of the package version you want to promote. Promotes the package version to released status.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:promote" ], "examples": [ "Promote the package version with the specified ID to released; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 04t...", "Promote the package version with the specified alias to released; uses the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package awesome_package_alias --target-dev-hub devhub@example.com", "Promote the package version with an alias that has spaces to released:\n<%= config.bin %> <%= command.id %> --package \"Awesome Package Alias\"" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package version to promote.", "required": true, "multiple": false, "deprecateAliases": true }, "no-prompt": { "name": "no-prompt", "type": "boolean", "char": "n", "summary": "Don't prompt to confirm setting the package version as released.", "allowNo": false, "deprecateAliases": true, "aliases": [ "noprompt" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:report", "summary": "Retrieve details about a package version in the Dev Hub org.", "description": "To update package version values, run \"<%= config.bin %> package version update\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:report" ], "examples": [ "Retrieve details about the package version with the specified ID from your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package 04t...", "Retrieve details about the package version with the specified alias (that contains spaces) from the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --target-dev-hub devhub@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package to retrieve details for.", "required": true, "multiple": false, "deprecateAliases": true }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Display extended package version details.", "allowNo": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:retrieve", "summary": "Retrieve package metadata for a specified package version.", "description": "Retrieving a package version downloads the metadata into the directory you specify.\n\nYou can retrieve metadata for a second- or first-generation managed package, or an unlocked package.\n\nSpecify the subscriber package version ID (starts with 04t) and the path to an empty directory when you run this command.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Retrieve package metadata for a subscriber package version ID (starts with 04t) into my-folder/ within your Salesforce DX project directory:\n<%= config.bin %> <%= command.id %> --package 04t... --output-dir my-folder –-target-org my-scratch\nIf you omit --target-org, this command runs against your default org." ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." } }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "aliases": [ "apiversion" ] }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "aliases": [ "targetusername", "u" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "Subscriber package version ID (starts with 04t).", "required": true, "multiple": false }, "output-dir": { "name": "output-dir", "type": "option", "char": "d", "summary": "Path within your Salesforce DX project directory in which to download the metadata. This directory must be empty.", "multiple": false, "default": "force-app" } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package:version:update", "summary": "Update a package version.", "description": "Specify a new value for each option you want to update.\n\nTo display details about a package version, run \"<%= config.bin %> package version display\".", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package:version:update" ], "examples": [ "Update the package version that has the specified alias (that contains spaces) with a new installation key \"password123\"; uses your default Dev Hub org:\n<%= config.bin %> <%= command.id %> --package \"Your Package Alias\" --installation-key password123", "Update the package version that has the specified ID with a new branch and tag; use the Dev Hub org with username devhub@example.com:\n<%= config.bin %> <%= command.id %> --package 04t... --branch main --tag 'Release 1.0.7' --target-dev-hub devhub@example.com", "Update the package version that has the specified ID with a new description:\n<%= config.bin %> <%= command.id %> --package 04t... --version-description \"New Package Version Description\"" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-dev-hub": { "name": "target-dev-hub", "type": "option", "char": "v", "summary": "Username or alias of the Dev Hub org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetdevhubusername", "target-hub-org" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package": { "name": "package", "type": "option", "char": "p", "summary": "ID (starts with 04t) or alias of the package to update a version of.", "required": true, "multiple": false, "deprecateAliases": true }, "version-name": { "name": "version-name", "type": "option", "char": "a", "summary": "New package version name.", "multiple": false, "deprecateAliases": true, "aliases": [ "versionname" ] }, "version-description": { "name": "version-description", "type": "option", "char": "e", "summary": "New package version description.", "multiple": false, "deprecateAliases": true, "aliases": [ "versiondescription" ] }, "branch": { "name": "branch", "type": "option", "char": "b", "summary": "New package version branch.", "multiple": false, "deprecateAliases": true }, "tag": { "name": "tag", "type": "option", "char": "t", "summary": "New package version tag.", "multiple": false, "deprecateAliases": true }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "New installation key for key-protected package (default: null)", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package1:version:create", "summary": "Create a first-generation package version in the release org.", "description": "The package version is based on the contents of the specified metadata package. Omit --managed-released if you want to create an unmanaged package version.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package1:version:create" ], "examples": [ "Create a first-generation package version from the package with the specified ID and name the package version \"example\"; use your default org:\n<%= config.bin %> <%= command.id %> --package-id 033... --name example", "Same as previous example, but provide a description and wait for 30 minutes for the package version to be created; use the specified org:\n<%= config.bin %> <%= command.id %> --package-id 033... --name example --description \"example description\" --wait 30 --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-id": { "name": "package-id", "type": "option", "char": "i", "summary": "ID of the metadata package (starts with 033) of which you’re creating a new version.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "packageid" ] }, "name": { "name": "name", "type": "option", "char": "n", "summary": "Package version name.", "required": true, "multiple": false, "deprecateAliases": true }, "description": { "name": "description", "type": "option", "char": "d", "summary": "Package version description.", "multiple": false, "deprecateAliases": true }, "version": { "name": "version", "type": "option", "char": "v", "summary": "Package version in major.minor format, for example, 3.2.", "multiple": false, "deprecateAliases": true }, "managed-released": { "name": "managed-released", "type": "boolean", "char": "m", "summary": "Create a managed package version.", "description": "To create a beta version, don’t include this parameter.", "allowNo": false, "deprecateAliases": true, "aliases": [ "managedrelease" ] }, "release-notes-url": { "name": "release-notes-url", "type": "option", "char": "r", "summary": "Release notes URL.", "description": "This link is displayed in the package installation UI to provide release notes for this package version to subscribers.", "multiple": false, "deprecateAliases": true, "aliases": [ "releasenotesurl" ] }, "post-install-url": { "name": "post-install-url", "type": "option", "char": "p", "summary": "Post install URL.", "description": "The contents of the post-installation instructions URL are displayed in the UI after installation of the package version.", "multiple": false, "deprecateAliases": true, "aliases": [ "postinstallurl" ] }, "installation-key": { "name": "installation-key", "type": "option", "char": "k", "summary": "Installation key for key-protected package (default: null).", "multiple": false, "deprecateAliases": true, "aliases": [ "installationkey" ] }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Minutes to wait for the package version to be created (default: 2 minutes).", "multiple": false, "deprecateAliases": true } }, "args": {}, "requiresProject": true, "hasDynamicHelp": true }, { "id": "package1:version:create:get", "summary": "Retrieve the status of a package version creation request.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package1:version:create:get" ], "examples": [ "Get the status of the creation request for the package version with the specified ID in your default org:\n<%= config.bin %> <%= command.id %> --request-id 0HD...", "Same as previous example, but use the specified org:\n<%= config.bin %> <%= command.id %> --request-id 0HD... --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "request-id": { "name": "request-id", "type": "option", "char": "i", "summary": "ID of the PackageUploadRequest (starts with 0HD).", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "requestid" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "package1:version:display", "summary": "Display details about a first-generation package version.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package1:version:display" ], "examples": [ "Display details about the first-generation package version with the specified ID in your default org:\n<%= config.bin %> <%= command.id %> --package-version-id 04t...", "Same as previous example, but use the specified org:\n<%= config.bin %> <%= command.id %> --package-version-id 04t... --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-version-id": { "name": "package-version-id", "type": "option", "char": "i", "summary": "ID (starts with 04t) of the metadata package version whose details you want to display.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "packageversionid" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "package1:version:list", "summary": "List package versions for the specified first-generation package or for the org.", "strict": true, "pluginName": "@salesforce/plugin-packaging", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [ "force:package1:version:list" ], "examples": [ "List all first-generation package versions in your default org:\n<%= config.bin %> <%= command.id %>", "List package versions for the specified first-generation package in the specifief org:\n<%= config.bin %> <%= command.id %> --package-id 033... --target-org myorg@example.com" ], "deprecateAliases": true, "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false, "deprecateAliases": true }, "loglevel": { "name": "loglevel", "type": "option", "hidden": true, "multiple": false, "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." }, "deprecateAliases": true }, "target-org": { "name": "target-org", "type": "option", "char": "o", "summary": "Username or alias of the target org.", "required": true, "multiple": false, "deprecateAliases": true, "aliases": [ "targetusername", "u" ] }, "api-version": { "name": "api-version", "type": "option", "description": "Override the api version used for api requests made by this command", "multiple": false, "deprecateAliases": true, "aliases": [ "apiversion" ] }, "package-id": { "name": "package-id", "type": "option", "char": "i", "summary": "Metadata package ID (starts with 033) whose package versions you want to list.", "description": "If not specified, shows all versions for all packages (managed and unmanaged) in the org.", "multiple": false, "deprecateAliases": true, "aliases": [ "packageid" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "project:deploy:pipeline:quick", "summary": "Quickly deploy a validated deployment to an org.", "description": "Before you run this command, first create a validated deployment with the \"sf 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "async": { "name": "async", "type": "boolean", "summary": "Run the command asynchronously.", "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\".", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "job-id": { "name": "job-id", "type": "option", "char": "i", "summary": "Job ID of the validated deployment to quick deploy.", "description": "The job ID is valid for 10 days from when you started the validation.", "multiple": false }, "use-most-recent": { "name": "use-most-recent", "type": "boolean", "char": "r", "summary": "Use the job ID of the most recently validated deployment.", "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.", "allowNo": false } }, "args": {}, "hasDynamicHelp": true }, { "id": "project:deploy:pipeline:report", "summary": "Check the status of a pipeline deploy operation.", "description": "Run 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "job-id": { "name": "job-id", "type": "option", "char": "i", "summary": "Job ID of the pipeline deployment to check the status of.", "description": "The job ID is valid for 10 days from when you started the deploy operation.", "multiple": false }, "use-most-recent": { "name": "use-most-recent", "type": "boolean", "char": "r", "summary": "Use the job ID of the most recent deploy operation.", "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.", "allowNo": false } }, "args": {}, "hasDynamicHelp": true }, { "id": "project:deploy:pipeline:resume", "summary": "Resume watching a pipeline deploy operation.", "description": "Use 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "job-id": { "name": "job-id", "type": "option", "char": "i", "summary": "Job ID of the pipeline deploy operation you want to resume.", "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.", "multiple": false }, "use-most-recent": { "name": "use-most-recent", "type": "boolean", "char": "r", "summary": "Use the job ID of the most recent deploy operation.", "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.", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } } }, "args": {}, "hasDynamicHelp": true }, { "id": "project:deploy:pipeline:start", "summary": "Deploy changes from a branch to the pipeline stage’s org.", "description": "Before you run this command, changes in the pipeline stage's branch must be merged in the source control repository.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "branch-name": { "name": "branch-name", "type": "option", "char": "b", "summary": "Name of the branch in the source control repository that corresponds to the pipeline stage that you want to deploy the changes to.", "required": true, "multiple": false }, "bundle-version-name": { "name": "bundle-version-name", "type": "option", "char": "v", "summary": "Version name of the bundle.", "description": "You must indicate the bundle version if deploying to the environment that corresponds to the first stage after the bundling stage.", "multiple": false }, "deploy-all": { "name": "deploy-all", "type": "boolean", "char": "a", "summary": "Deploy all metadata in the branch to the stage's org.", "description": "If you don’t specify this flag, only changes in the stage’s branch are deployed.", "allowNo": false }, "devops-center-project-name": { "name": "devops-center-project-name", "type": "option", "char": "p", "summary": "Name of the DevOps Center project.", "required": true, "multiple": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "tests": { "name": "tests", "type": "option", "char": "t", "summary": "Apex tests to run when --test-level is RunSpecifiedTests.", "description": "Separate multiple test names with commas. Enclose the entire flag value in double quotes if a test name contains spaces.", "multiple": true }, "test-level": { "name": "test-level", "type": "option", "char": "l", "summary": "Deployment Apex testing level.", "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 --run-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 [Running Tests in a Deployment](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy_running_tests.htm) in the \"Metadata API Developer Guide\".", "multiple": false, "options": [ "NoTestRun", "RunSpecifiedTests", "RunLocalTests", "RunAllTestsInOrg" ] }, "async": { "name": "async", "type": "boolean", "summary": "Run the command asynchronously.", "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\".", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "project:deploy:pipeline:validate", "summary": "Perform a validate-only deployment from a branch to the pipeline stage’s org.", "description": "A 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.", "strict": true, "pluginName": "@salesforce/plugin-devops-center", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "state": "beta", "aliases": [], "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": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "branch-name": { "name": "branch-name", "type": "option", "char": "b", "summary": "Name of the branch in the source control repository that corresponds to the pipeline stage that you want to deploy the changes to.", "required": true, "multiple": false }, "bundle-version-name": { "name": "bundle-version-name", "type": "option", "char": "v", "summary": "Version name of the bundle.", "description": "You must indicate the bundle version if deploying to the environment that corresponds to the first stage after the bundling stage.", "multiple": false }, "deploy-all": { "name": "deploy-all", "type": "boolean", "char": "a", "summary": "Deploy all metadata in the branch to the stage's org.", "description": "If you don’t specify this flag, only changes in the stage’s branch are deployed.", "allowNo": false }, "devops-center-project-name": { "name": "devops-center-project-name", "type": "option", "char": "p", "summary": "Name of the DevOps Center project.", "required": true, "multiple": false }, "devops-center-username": { "name": "devops-center-username", "type": "option", "char": "c", "summary": "Username or alias of the DevOps Center org.", "required": true, "multiple": false }, "tests": { "name": "tests", "type": "option", "char": "t", "summary": "Apex tests to run when --test-level is RunSpecifiedTests.", "description": "Separate multiple test names with commas. Enclose the entire flag value in double quotes if a test name contains spaces.", "multiple": true }, "test-level": { "name": "test-level", "type": "option", "char": "l", "summary": "Deployment Apex testing level.", "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 --run-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 [Running Tests in a Deployment](https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy_running_tests.htm) in the \"Metadata API Developer Guide\".", "multiple": false, "options": [ "NoTestRun", "RunSpecifiedTests", "RunLocalTests", "RunAllTestsInOrg" ] }, "async": { "name": "async", "type": "boolean", "summary": "Run the command asynchronously.", "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\".", "allowNo": false }, "wait": { "name": "wait", "type": "option", "char": "w", "summary": "Number of minutes to wait for command to complete and display results.", "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 \"<%= config.bin %> <%= command.id.split(' ').slice(0, -1).join(' ') %> report\".", "helpValue": "", "multiple": false, "exclusive": [ "async" ], "default": { "quantity": 33, "unit": 0 } }, "verbose": { "name": "verbose", "type": "boolean", "summary": "Show verbose output of the command result.", "allowNo": false }, "concise": { "name": "concise", "type": "boolean", "summary": "Show concise output of the command result.", "allowNo": false, "exclusive": [ "verbose" ] } }, "args": {}, "hasDynamicHelp": true }, { "id": "run:function", "summary": "Send a cloudevent to a function.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Run a function:\n<%= config.bin %> <%= command.id %> --url http://path/to/function", "Run a function with a payload and a JSON response:\n<%= config.bin %> <%= command.id %> --url http://path/to/function --payload '@file.json' --structured" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "function-url": { "name": "function-url", "type": "option", "char": "l", "description": "URL of the function to run.", "multiple": false, "exclusive": [ "url" ] }, "url": { "name": "url", "type": "option", "char": "l", "description": "URL of the function to run.", "hidden": true, "multiple": false, "exclusive": [ "function-url" ] }, "headers": { "name": "headers", "type": "option", "char": "H", "description": "Set headers.", "multiple": true }, "payload": { "name": "payload", "type": "option", "char": "p", "description": "Set the payload of the cloudevent as a JSON object or a path to a file via @file.json.", "multiple": false }, "structured": { "name": "structured", "type": "boolean", "char": "s", "description": "Set the cloudevent to be emitted as a structured JSON cloudevent.", "allowNo": false }, "connected-org": { "name": "connected-org", "type": "option", "char": "o", "description": "Username or alias for the target org; overrides default target org.", "multiple": false } }, "args": {} }, { "id": "run:function:start", "summary": "Build and run a Salesforce Function.", "description": "Run this command from the directory of your Salesforce Functions project.\n\nThis command will run the target function locally (on the same operating system as this CLI), just like the `local` subcommand.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Build a function and start the invoker\n<%= config.bin %> <%= command.id %>", "Start the invoker with a specific language and port\n<%= config.bin %> <%= command.id %> --port 5000 --language javascript" ], "flags": { "path": { "name": "path", "type": "option", "description": "Path to function directory.", "hidden": true, "multiple": false, "default": "/home/runner/work/cli/cli" }, "port": { "name": "port", "type": "option", "char": "p", "description": "Port for running the function.", "multiple": false, "default": 8080 }, "debug-port": { "name": "debug-port", "type": "option", "char": "b", "description": "Port for remote debugging.", "multiple": false, "default": 9229 }, "language": { "name": "language", "type": "option", "char": "l", "description": "The language that the function runs in.", "multiple": false, "options": [ "auto", "java", "javascript", "python", "typescript" ], "default": "auto" }, "verbose": { "name": "verbose", "type": "boolean", "char": "v", "description": "Output additional logs.", "allowNo": false } }, "args": {} }, { "id": "run:function:start:container", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "hidden": false, "aliases": [], "flags": {}, "args": {} }, { "id": "run:function:start:local", "description": "Build and run a Salesforce Function locally.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Build a function and start the invoker\n<%= config.bin %> <%= command.id %>", "Start the invoker with a specific language and port\n<%= config.bin %> <%= command.id %> --port 5000 --language javascript" ], "flags": { "path": { "name": "path", "type": "option", "description": "Path to function directory.", "hidden": true, "multiple": false, "default": "/home/runner/work/cli/cli" }, "port": { "name": "port", "type": "option", "char": "p", "description": "Port to bind the invoker to.", "multiple": false, "default": 8080 }, "debug-port": { "name": "debug-port", "type": "option", "char": "b", "description": "Port to use for debugging the function.", "multiple": false, "default": 9229 }, "language": { "name": "language", "type": "option", "char": "l", "description": "The language in which the function is written.", "multiple": false, "options": [ "auto", "java", "javascript", "python", "typescript" ], "default": "auto" } }, "args": {} }, { "id": "scanner:rule:add", "description": "add custom rules to Salesforce Code Analyzer's registry", "strict": true, "usage": "<%= command.id %> -l -p [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Bundle custom PMD rules in JAR files. Follow PMD conventions, such as defining the custom rules in XML files under a `/category/` directory.\nSee PMD's documentation for more information on writing rules.\n\nThis example shows how to specify two JAR files directly.\n\t$ sfdx scanner:rule:add --language apex --path \"/Users/me/rules/Jar1.jar,/Users/me/rules/Jar2.jar\"\n\t\tSuccessfully added rules for apex.\n\t\t2 path(s) added:\n\t\t/Users/me/rules/Jar1.jar,/Users/me/rules/Jar2.jar\n\nThis example shows how to specify a directory containing one or more JARs, all of which are added to the registry.\n\t$ sfdx scanner:rule:add --language apex --path \"/Users/me/rules\"\n\t\tSuccessfully added rules for apex." ], "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" }, "language": { "name": "language", "type": "option", "char": "l", "description": "language that the custom rules are evaluated against", "required": true, "multiple": false }, "path": { "name": "path", "type": "option", "char": "p", "description": "one or more paths (such as a directory or JAR file) to custom rule definitions", "required": true, "multiple": false } }, "args": {}, "longDescription": "Adds custom rules to Salesforce Code Analyzer's registry so that you can run them along with the built-in rules. Compile and test custom rules separately before adding them.", "flagsConfig": { "language": { "kind": "string", "char": "l", "description": "language that the custom rules are evaluated against", "longDescription": "Language that the custom rules are evaluated against.", "required": true, "input": [], "multiple": false, "type": "option" }, "path": { "kind": "array", "char": "p", "description": "one or more paths (such as a directory or JAR file) to custom rule definitions", "longDescription": "One or more paths (such as a directory or JAR file) to custom rule definitions. Specify multiple values as a comma-separated list.", "required": true, "input": [], "multiple": false, "type": "option" } } }, { "id": "scanner:rule:describe", "description": "provide detailed information about a rule", "strict": true, "usage": "<%= command.id %> -n [--verbose] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "$ sfdx scanner:rule:describe --rulename ExampleRule\n\tname: AvoidWithStatement\n\tcategories: Best Practices\n\trulesets: Controversial Ecmascript\n\tlanguages: javascript\n\tdescription: Avoid using with - it's bad news\n\tmessage: Avoid using with - it's bad news\n\t" ], "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" }, "rulename": { "name": "rulename", "type": "option", "char": "n", "description": "the name of the rule", "required": true, "multiple": false }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Provides detailed information about a rule. Information includes the rule's language (such as Apex or Java), the violation it detects, and example code of the violation. The command output also includes the rule's categories and rulesets.", "flagsConfig": { "rulename": { "kind": "string", "char": "n", "description": "the name of the rule", "longDescription": "The name of the rule.", "required": true, "input": [], "multiple": false, "type": "option" }, "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false } } }, { "id": "scanner:rule:list", "description": "list basic information about all rules matching provided criteria", "strict": true, "usage": "<%= command.id %> [-c ] [-r ] [-l ] [-e ] [--verbose] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "\nThis example invokes the command without filter criteria, which returns all rules.\n\t$ sfdx scanner:rule:list\n\nThis example returns all rules for Apex OR Javascript. Values supplied to a single filter are handled with a logical OR.\n\t$ sfdx scanner:rule:list --language apex,javascript\n\nThis example returns all rules except those in the Design or Best Practices categories. Exclude categories by specifying the negation operator and enclosing the values in single quotes.\n\t$ sfdx scanner:rule:list --category '!Design,!Best Practices'\n\nThis example returns all rules that target Apex OR Javascript, AND are members of the Braces OR Security rulesets.\nThe different filters are combined with a logical AND.\n\t$ sfdx scanner:rule:list --language apex,javascript --ruleset Braces,Security\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "category": { "name": "category", "type": "option", "char": "c", "description": "select rules by category", "multiple": false }, "ruleset": { "name": "ruleset", "type": "option", "char": "r", "description": "[deprecated] select rules by ruleset", "multiple": false, "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead" } }, "language": { "name": "language", "type": "option", "char": "l", "description": "select rules by language", "multiple": false }, "engine": { "name": "engine", "type": "option", "char": "e", "description": "select rules by engine", "multiple": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Lists all the rules available in the catalog. You can filter the output to view a smaller set of rules. To get more information about a specific rule, use the `scanner:rule:describe` command.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "category": { "kind": "array", "char": "c", "description": "select rules by category", "longDescription": "Selects rules by category. Enter multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "ruleset": { "kind": "array", "char": "r", "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead" }, "description": "[deprecated] select rules by ruleset", "longDescription": "[deprecated] Selects rules by ruleset. Enter multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "language": { "kind": "array", "char": "l", "description": "select rules by language", "longDescription": "Selects rules by language. Enter multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "engine": { "kind": "array", "char": "e", "description": "select rules by engine", "longDescription": "Selects rules by engine. Enter multiple engines as a comma-separated list.", "input": [], "multiple": false, "type": "option" } } }, { "id": "scanner:rule:remove", "description": "remove custom rules from the registry of available rules", "strict": true, "usage": "<%= command.id %> [-f] [-p ] [--verbose] [--json] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "This example runs the command without arguments to see a list of registered custom paths.\n\t$ sfdx scanner:rule:remove\n\nThis example uses the --path parameter to deregister the rules defined in somerules.jar and any JARs/XMLs contained in the rules folder.\n\t$ sfdx scanner:rule:remove --path \"~/path/to/somerules.jar,~/path/to/folder/containing/rules\"\n\nThis example uses the --force flag to bypass the confirmation prompt, removing all rules defined in somerules.jar.\nBy default, a list of all rules that will be unregistered is displayed, and the action must be confirmed. To bypass that confirmation, use the --force flag.\n\t$ sfdx scanner:rule:remove --force --path \"~/path/to/somerules.jar\"\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "force": { "name": "force", "type": "boolean", "char": "f", "description": "bypass the confirmation prompt and immediately remove the rules", "allowNo": false }, "path": { "name": "path", "type": "option", "char": "p", "description": "one or more paths to remove", "multiple": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Removes custom rules from the registry of available rules. Use the `-p|--path` parameter to specify one or more paths to remove. If you don't specify any parameters, the command lists all valid custom paths but doesn't remove any.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "force": { "kind": "boolean", "char": "f", "description": "bypass the confirmation prompt and immediately remove the rules", "longDescription": "Bypasses the confirmation prompt and immediately removes the rules.", "allowNo": false, "type": "boolean" }, "path": { "kind": "array", "char": "p", "description": "one or more paths to remove", "longDescription": "One or more paths to remove. Specify multiple values with a comma-separated list.", "input": [], "multiple": false, "type": "option" } } }, { "id": "scanner:run", "description": "scan a codebase with a selection of rules", "strict": true, "usage": "<%= command.id %> -t [-c ] [-f csv|html|json|junit|sarif|table|xml] [-o ] [-s | --json] [--normalize-severity] [-p ] [-r ] [-e ] [--tsconfig ] [--eslintconfig ] [--pmdconfig ] [--env ] [--verbose-violations] [--verbose] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "This example evaluates all rules against somefile.js.\nInvoking code analyzer without specifying any rules causes all rules to be run.\n\t$ sfdx scanner:run --format xml --target \"somefile.js\"\n\nThis example evaluates all rules in the Design and Best Practices categories.\nWhen you specify multiple categories or rulesets, the results are combined with a logical OR.\n\t$ sfdx scanner:run --format xml --target \"somefile.js\" --\n\nThis example evaluates all rules except those in the Design or Best Practices categories.\nExclude categories by specifying the negation operator and enclosing the values in single quotes.\n\t$ sfdx scanner:run --format xml --target \"somefile.js\" --category '!Design,!Best Practices'\n\nWrap globs in quotes. These examples evaluate rules against all .js files in the current directory, except for IgnoreMe.js.\nUnix example:\n\t$ sfdx scanner:run --target './**/*.js,!./**/IgnoreMe.js' ...\nWindows example:\n\t$ sfdx scanner:run --target \".\\**\\*.js,!.\\**\\IgnoreMe.js\" ...\n\nThis example scans the project contained in '/my-project' if the current working directory is another directory.\nSpecify tsconfig.json if the current working directory does not contain the tsconfig.json that corresponds to the TypeScript files being scanned.\n\t$ sfdx scanner:run --target \"/my-project/**/*.ts\" --tsconfig \"/my-project/tsconfig.json\"\n\nThis example evaluates rules against somefile.js, including Jasmine in the environment variables.\nUses --env to override the default ESLint environment variables to add frameworks.\n\t$ sfdx scanner:run --target \"somefile.js\" --env '{\"jasmine\": true}'\n\nThis example evaluates rules aginst somefile.js using eslint-lwc and pmd engines.\nUse --engine to include or exclude engines. Any engine listed will be run, regardless of its current 'disabled' attribute.\n\t$ sfdx scanner:run --target \"somefile.js\" --engine \"eslint-lwc,pmd\"\n\nThis example executes CPD engine against known file extensions in \"/some/dir\". CPD helps detect blocks of code duplication in selected languages.\nUse --engine to invoke engines that are not enabled by default.\n\t$ sfdx scanner:run --target \"/some/dir\" --engine cpd\n\nThis example executes rules defined in pmd_rule_ref.xml against the files in 'src'.\nTo use PMD with your own rule reference file, use --pmdconfig. Note that rule filters are not applied.\n\t$ sfdx scanner:run --target \"src\" --pmdconfig \"pmd_rule_ref.xml\"\n\nThis example uses a custom config to scan the files in 'src'.\nTo use ESLint with your own .eslintrc.json file, use --eslintconfig. Make sure that the directory you run the command from has all the NPM dependencies installed.\n\t$ sfdx scanner:run --target \"src\" --eslintconfig \"/home/my/setup/.eslintrc.json\"\n\nThis example uses --normalize-severity to output normalized severity and engine-specific severity across all engines. Normalized severity is: 1 (high), 2 (moderate), and 3 (low).\n\t$ sfdx scanner:run --target \"/some-project/\" --format csv --normalize-severity\n\nThis example uses --severity-threshold to throw a non-zero exit code when rule violations of normalized severity 2 or greater are found. If any violations with the specified severity (or greater) are found, the exit code equals the severity of the most severe violation.\n\t$ sfdx scanner:run --target \"/some-project/\" --severity-threshold 2\n\nThe paths specified for --projectdir must contain all files specified through --target cumulatively.\n\t$ sfdx scanner:run --target \"./myproject/main/default/classes/*.cls\" --projectdir \"./myproject/\"\n\t$ sfdx scanner:run --target \"./**/*.cls\" --projectdir \"./\"\n\t$ sfdx scanner:run --target \"./dir1/file1.cls,./dir2/file2.cls\" --projectdir \"./dir1/,./dir2/\"\n\nThis example fails because the set of files included in --target is larger than that contained in --projectdir:\n\t$ sfdx scanner:run --target \"./**/*.cls\" --projectdir \"./myproject/\"\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "category": { "name": "category", "type": "option", "char": "c", "description": "one or more categories of rules to run", "multiple": false }, "format": { "name": "format", "type": "option", "char": "f", "description": "specify results output format", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "multiple": false, "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ] }, "outfile": { "name": "outfile", "type": "option", "char": "o", "description": "write output to a file", "multiple": false }, "severity-threshold": { "name": "severity-threshold", "type": "option", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "multiple": false, "exclusive": [ "json" ] }, "normalize-severity": { "name": "normalize-severity", "type": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "allowNo": false }, "projectdir": { "name": "projectdir", "type": "option", "char": "p", "description": "provide root directory of project", "multiple": false }, "ruleset": { "name": "ruleset", "type": "option", "char": "r", "description": "[deprecated] rulesets to run", "multiple": false, "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead." } }, "engine": { "name": "engine", "type": "option", "char": "e", "description": "specify which engines to run", "multiple": false }, "target": { "name": "target", "type": "option", "char": "t", "description": "source code location", "required": true, "multiple": false }, "tsconfig": { "name": "tsconfig", "type": "option", "description": "location of tsconfig.json file", "multiple": false }, "eslintconfig": { "name": "eslintconfig", "type": "option", "description": "specify the location of eslintrc config to customize eslint engine", "multiple": false }, "pmdconfig": { "name": "pmdconfig", "type": "option", "description": "specify location of PMD rule reference XML file to customize rule selection", "multiple": false }, "env": { "name": "env", "type": "option", "description": "[deprecated] override ESLint's default environment variables, in JSON-formatted string", "multiple": false, "deprecated": { "messageOverride": "--env parameter is being deprecated, and will be removed in a future release." } }, "verbose-violations": { "name": "verbose-violations", "type": "boolean", "description": "return retire-js violation message details", "allowNo": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Scans a codebase with a selection of rules. You can scan the codebase with all the rules in the registry, or use parameters to filter the rules based on rulename, category, or ruleset. You can specify the format of the output, such as XML or JUnit. You can print the output to the console (default) or to a file using the --outfile parameter.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "category": { "kind": "array", "char": "c", "description": "one or more categories of rules to run", "longDescription": "One or more categories of rules to run. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "format": { "kind": "enum", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "char": "f", "description": "specify results output format", "longDescription": "Specifies results output format written directly to the console.", "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ], "input": [], "multiple": false, "type": "option" }, "outfile": { "kind": "string", "char": "o", "description": "write output to a file", "longDescription": "Writes output to a file.", "input": [], "multiple": false, "type": "option" }, "severity-threshold": { "kind": "integer", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "longDescription": "Throws an error when violations are found with equal or greater severity than the provided value. Values are 1 (high), 2 (moderate), and 3 (low). Exit code is the most severe violation. Using this flag also invokes the --normalize-severity flag.", "exclusive": [ "json" ], "min": 1, "max": 3, "input": [], "multiple": false, "type": "option" }, "normalize-severity": { "kind": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "longDescription": "Returns normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity. For the html option, the normalized severity is displayed instead of the engine severity.", "allowNo": false, "type": "boolean" }, "projectdir": { "kind": "array", "char": "p", "description": "provide root directory of project", "longDescription": "Provides the relative or absolute root project directory used to set the context for Graph Engine's analysis. Project directory must be a path, not a glob. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "ruleset": { "kind": "array", "char": "r", "deprecated": { "messageOverride": "The 'ruleset' command parameter is deprecated. Use 'category' instead." }, "description": "[deprecated] rulesets to run", "longDescription": "[deprecated] One or more rulesets to run. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "engine": { "kind": "array", "char": "e", "description": "specify which engines to run", "longDescription": "Specifies one or more engines to run. Submit multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "target": { "kind": "array", "char": "t", "description": "source code location", "longDescription": "Source code location. May use glob patterns. Specify multiple values as a comma-separated list.", "required": true, "input": [], "multiple": false, "type": "option" }, "tsconfig": { "kind": "string", "description": "location of tsconfig.json file", "longDescription": "Location of tsconfig.json file used by eslint-typescript engine.", "input": [], "multiple": false, "type": "option" }, "eslintconfig": { "kind": "string", "description": "specify the location of eslintrc config to customize eslint engine", "longDescription": "Specifies the location of eslintrc config to customize eslint engine.", "input": [], "multiple": false, "type": "option" }, "pmdconfig": { "kind": "string", "description": "specify location of PMD rule reference XML file to customize rule selection", "longDescription": "Specifies the location of PMD rule reference XML file to customize rule selection.", "input": [], "multiple": false, "type": "option" }, "env": { "kind": "string", "description": "[deprecated] override ESLint's default environment variables, in JSON-formatted string", "longDescription": "[deprecated] Overrides ESLint's default environmental variables, in JSON-formatted string.", "deprecated": { "messageOverride": "--env parameter is being deprecated, and will be removed in a future release." }, "input": [], "multiple": false, "type": "option" }, "verbose-violations": { "kind": "boolean", "description": "return retire-js violation message details", "longDescription": "Returns retire-js violation messages details about each vulnerability, including summary, Common Vulnerabilities and Exposures (CVE), and URLs.", "allowNo": false, "type": "boolean" } } }, { "id": "scanner:run:dfa", "description": "scan codebase with all DFA rules", "strict": true, "usage": "<%= command.id %> -t [-c ] [-f csv|html|json|junit|sarif|table|xml] [-o ] [-s | --json] [--normalize-severity] [-p ] [--with-pilot] [--rule-thread-count ] [--rule-thread-timeout ] [--rule-disable-warning-violation] [--sfgejvmargs ] [--pathexplimit ] [--verbose] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL]", "pluginName": "@salesforce/sfdx-scanner", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "The paths specified for --projectdir must contain all files specified through --target cumulatively.\n\t$ sfdx scanner:run:dfa --target \"./myproject/main/default/classes/*.cls\" --projectdir \"./myproject/\"\n\t$ sfdx scanner:run:dfa --target \"./**/*.cls\" --projectdir \"./\"\n\t$ sfdx scanner:run:dfa --target \"./dir1/file1.cls,./dir2/file2.cls\" --projectdir \"./dir1/,./dir2/\"\nThis example fails because the set of files included in --target is larger than that contained in --projectdir:\n\t$ sfdx scanner:run:dfa --target \"./**/*.cls\" --projectdir \"./myproject/\"\nGlobs must be wrapped in quotes, as in these Windows and Unix examples, which evaluate rules against all .cls files in the current directory and subdirectories except for IgnoreMe.cls:\nUnix example:\n\t$ sfdx scanner:run:dfa --target \"./**/*.cls,!./**/IgnoreMe.cls\" ...\nWindows example:\n\t$ sfdx scanner:run:dfa --target \".\\**\\*.cls,!.\\**\\IgnoreMe.cls\" ...\nYou can target individual methods within a file with a suffix hash (#) on the file's path, and with a semi-colon-delimited list of method names. This syntax is incompatible with globs and directories. This example evaluates rules against all methods named Method1 or Method2 in File1.cls, and all methods named Method3 in File2.cls:\n\t$ sfdx scanner:run:dfa --target \"./File1.cls#Method1;Method2,./File2.cls#Method3\" ...\nUse --normalize-severity to output a normalized severity across all engines, in addition to the engine-specific severity. Normalized severity is 1 (high), 2 (moderate), and 3 (low):\n\t$ sfdx scanner:run:dfa --target \"./some-project/\" --projectdir \"./some-project/\" --format csv --normalize-severity\nUse --severity-threshold to throw a non-zero exit code when rule violations of a specific normalized severity or greater are found. If there are any rule violations with a severity of 2 or 1, the exit code is equal to the severity of the most severe violation:\n\t$ sfdx scanner:run:dfa --target \"./some-project/\" --projectdir \"./some-project/\" --severity-threshold 2\nuse --rule-thread-count to allow more (or fewer) entrypoints to be evaluated concurrently:\n\t$ sfdx scanner:run:dfa --rule-thread-count 6 ...\nUse --rule-thread-timeout to increase or decrease the maximum runtime for a single entrypoint evaluation. This increases the timeout from the 15-minute default to 150 minutes:\n\t$ sfdx scanner:run:dfa --rule-thread-timeout 9000000 ...\nUse --sfgejvmargs to pass Java Virtual Machine args to override system defaults while executing Salesforce Graph Engine's rules.\nThe example overrides the system's default heap space allocation to 8 GB and decreases chances of encountering OutOfMemory error.\n\t$ sfdx scanner:run:dfa --sfgejvmargs \"-Xmx8g\" ...\nUse --with-pilot to allow execution of pilot rules:\nThis example allows pilot rules in the \"Performance\" category to execute.\n\t$ sfdx scanner:run:dfa --category 'Performance' --with-pilot ...\n" ], "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" }, "verbose": { "name": "verbose", "type": "boolean", "description": "emit additional command output to stdout", "allowNo": false }, "category": { "name": "category", "type": "option", "char": "c", "description": "one or more categories of rules to run", "multiple": false }, "format": { "name": "format", "type": "option", "char": "f", "description": "specify results output format", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "multiple": false, "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ] }, "outfile": { "name": "outfile", "type": "option", "char": "o", "description": "write output to a file", "multiple": false }, "severity-threshold": { "name": "severity-threshold", "type": "option", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "multiple": false, "exclusive": [ "json" ] }, "normalize-severity": { "name": "normalize-severity", "type": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "allowNo": false }, "projectdir": { "name": "projectdir", "type": "option", "char": "p", "description": "provide root directory of project", "multiple": false }, "with-pilot": { "name": "with-pilot", "type": "boolean", "description": "allow pilot rules to execute", "allowNo": false }, "target": { "name": "target", "type": "option", "char": "t", "description": "return location of source code", "required": true, "multiple": false }, "rule-thread-count": { "name": "rule-thread-count", "type": "option", "description": "specify number of threads that evaluate DFA rules. Alternatively, set value using environment variable `SFGE_RULE_THREAD_COUNT`. Default is 4", "multiple": false }, "rule-thread-timeout": { "name": "rule-thread-timeout", "type": "option", "description": "specify timeout for individual rule threads in milliseconds. Alternatively, set the timeout value using environment variable `SFGE_RULE_THREAD_TIMEOUT`. Default: 90000 ms", "multiple": false }, "rule-disable-warning-violation": { "name": "rule-disable-warning-violation", "type": "boolean", "description": "disable warning violations from Salesforce Graph Engine. Alternatively, set value using environment variable `SFGE_RULE_DISABLE_WARNING_VIOLATION`", "allowNo": false }, "sfgejvmargs": { "name": "sfgejvmargs", "type": "option", "description": "specify Java Virtual Machine (JVM) arguments to optimize Salesforce Graph Engine execution to your system (optional)", "multiple": false }, "pathexplimit": { "name": "pathexplimit", "type": "option", "description": "specify a path expansion upper boundary to limit the complexity of code that Graph Engine analyzes. Alternatively, set the value using environment variable `SFGE_PATH_EXPANSION_LIMIT`", "multiple": false } }, "args": { "file": { "name": "file" } }, "longDescription": "Scans codebase with all DFA rules by default.\n\tSpecify the format of output and print results directly or as contents of a file that you provide with --outfile flag.", "flagsConfig": { "verbose": { "type": "boolean", "kind": "boolean", "description": "emit additional command output to stdout", "longDescription": "Emit additional command output to stdout.", "allowNo": false }, "category": { "kind": "array", "char": "c", "description": "one or more categories of rules to run", "longDescription": "One or more categories of rules to run. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "format": { "kind": "enum", "helpValue": "(csv|html|json|junit|sarif|table|xml)", "char": "f", "description": "specify results output format", "longDescription": "Specifies results output format written directly to the console.", "options": [ "csv", "html", "json", "junit", "sarif", "table", "xml" ], "input": [], "multiple": false, "type": "option" }, "outfile": { "kind": "string", "char": "o", "description": "write output to a file", "longDescription": "Writes output to a file.", "input": [], "multiple": false, "type": "option" }, "severity-threshold": { "kind": "integer", "char": "s", "description": "throw an error when a violation threshold is reached, the --normalize-severity is invoked, and severity levels are reset to the baseline", "longDescription": "Throws an error when violations are found with equal or greater severity than the provided value. Values are 1 (high), 2 (moderate), and 3 (low). Exit code is the most severe violation. Using this flag also invokes the --normalize-severity flag.", "exclusive": [ "json" ], "min": 1, "max": 3, "input": [], "multiple": false, "type": "option" }, "normalize-severity": { "kind": "boolean", "description": "return normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity", "longDescription": "Returns normalized severity 1 (high), 2 (moderate), and 3 (low), and the engine-specific severity. For the html option, the normalized severity is displayed instead of the engine severity.", "allowNo": false, "type": "boolean" }, "projectdir": { "kind": "array", "char": "p", "description": "provide root directory of project", "longDescription": "Provides the relative or absolute root project directory used to set the context for Graph Engine's analysis. Project directory must be a path, not a glob. Specify multiple values as a comma-separated list.", "input": [], "multiple": false, "type": "option" }, "with-pilot": { "kind": "boolean", "description": "allow pilot rules to execute", "longDescription": "Allows pilot rules to execute.", "allowNo": false, "type": "boolean" }, "target": { "kind": "array", "char": "t", "description": "return location of source code", "longDescription": "Returns the source code location. Use glob patterns or specify individual methods with #-syntax. Multiple values are specified as a comma-separated list.", "required": true, "input": [], "multiple": false, "type": "option" }, "rule-thread-count": { "kind": "integer", "description": "specify number of threads that evaluate DFA rules. Alternatively, set value using environment variable `SFGE_RULE_THREAD_COUNT`. Default is 4", "longDescription": "Specifies number of rule evaluation threads, or how many entrypoints can be evaluated concurrently. Inherits value from SFGE_RULE_THREAD_COUNT env-var, if set. Default is 4.", "env": "SFGE_RULE_THREAD_COUNT", "input": [], "multiple": false, "type": "option" }, "rule-thread-timeout": { "kind": "integer", "description": "specify timeout for individual rule threads in milliseconds. Alternatively, set the timeout value using environment variable `SFGE_RULE_THREAD_TIMEOUT`. Default: 90000 ms", "longDescription": "Specifies time limit for evaluating a single entrypoint in milliseconds. Inherits value from SFGE_RULE_THREAD_TIMEOUT env-var if set. Default is 900,000 ms, or 15 minutes.", "env": "SFGE_RULE_THREAD_TIMEOUT", "input": [], "multiple": false, "type": "option" }, "rule-disable-warning-violation": { "kind": "boolean", "description": "disable warning violations from Salesforce Graph Engine. Alternatively, set value using environment variable `SFGE_RULE_DISABLE_WARNING_VIOLATION`", "longDescription": "Disables warning violations, such as those on StripInaccessible READ access, to get only high-severity violations (default: false). Inherits value from SFGE_RULE_DISABLE_WARNING_VIOLATION env-var if set.", "allowNo": false, "type": "boolean" }, "sfgejvmargs": { "kind": "string", "description": "specify Java Virtual Machine (JVM) arguments to optimize Salesforce Graph Engine execution to your system (optional)", "longDescription": "Specifies Java Virtual Machine arguments to override system defaults while executing Salesforce Graph Engine. For multiple arguments, add them to the same string separated by space.", "env": "SFGE_JVM_ARGS", "input": [], "multiple": false, "type": "option" }, "pathexplimit": { "kind": "integer", "description": "specify a path expansion upper boundary to limit the complexity of code that Graph Engine analyzes. Alternatively, set the value using environment variable `SFGE_PATH_EXPANSION_LIMIT`", "longDescription": "Specifies a path expansion upper boundary to limit the complexity of code Graph Engine analyzes before failing fast. Set the value to -1 to remove any upper boundary. --pathexplimit inherits value from SFGE_PATH_EXPANSION_LIMIT env-var, if set. Its default value is derived from JVM heap space allocation.", "env": "SFGE_PATH_EXPANSION_LIMIT", "input": [], "multiple": false, "type": "option" } } }, { "id": "whoami:functions", "summary": "Show information on your Salesforce Functions login.", "description": "Returns your email and ID. Use '--show-token' to show your Salesforce Functions token.", "strict": true, "pluginName": "@salesforce/plugin-functions", "pluginAlias": "@salesforce/cli", "pluginType": "jit", "aliases": [], "examples": [ "Get account information:\n<%= config.bin %> <%= command.id %>", "Show token and output result as JSON:\n<%= config.bin %> <%= command.id %> --show-token --json" ], "flags": { "json": { "name": "json", "type": "boolean", "description": "Format output as json.", "helpGroup": "GLOBAL", "allowNo": false }, "show-token": { "name": "show-token", "type": "boolean", "description": "Show the stored functions token.", "hidden": true, "allowNo": false } }, "args": {} } ] }, "root": "C:\\Users\\BCCA1JV\\AppData\\Local\\Programs\\node-v18.14.2-win-x64\\node_modules\\@salesforce\\cli", "name": "@salesforce/cli", "version": "2.9.1", "channel": "stable", "valid": true, "arch": "x64", "platform": "win32", "windows": true, "bin": "sf", "binAliases": [ "sfdx" ], "nsisCustomization": "scripts/nsis.nsi", "dirname": "sf", "flexibleTaxonomy": true, "userAgent": "@salesforce/cli/2.9.1 win32-x64 node-v18.14.2", "shell": "C:\\Program Files\\Git\\usr\\bin\\bash.exe", "home": "C:\\Users\\BCCA1JV", "cacheDir": "C:\\Users\\BCCA1JV\\AppData\\Local\\sf", "configDir": "C:\\Users\\BCCA1JV\\AppData\\Local\\sf", "dataDir": "C:\\Users\\BCCA1JV\\AppData\\Local\\sf", "errlog": "C:\\Users\\BCCA1JV\\AppData\\Local\\sf\\error.log", "_commandIDs": [ "cmdt:generate:field", "force:cmdt:field:create", "cmdt:field:create", "cmdt:generate:fromorg", "force:cmdt:generate", "cmdt:generate:object", "force:cmdt:create", "cmdt:create", "cmdt:generate:record", "force:cmdt:record:create", "cmdt:record:create", "cmdt:generate:records", "force:cmdt:record:insert", "cmdt:record:insert", "community:create", "force:community:create", "community:list:template", "force:community:template:list", "community:publish", "force:community:publish", "deploy:functions", "dev:audit:messages", "dev:configure:repo", "dev:configure:secrets", "dev:convert:messages", "dev:convert:script", "dev:generate:command", "dev:generate:flag", "dev:generate:library", "dev:generate:plugin", "plugins:generate", "env:compute:collaborator:add", "env:create:compute", "env:delete", "env:display", "env:list", "env:log", "env:log:tail", "env:logdrain:add", "env:logdrain:list", "env:logdrain:remove", "env:open", "env:var:get", "env:var:list", "env:var:set", "env:var:unset", "force:lightning:lwc:test:create", "force:lightning:lwc:test:run", "force:lightning:lwc:test:setup", "generate:function", "login:functions", "login:functions:jwt", "logout:functions", "org:create:shape", "force:org:shape:create", "org:create:snapshot", "force:org:snapshot:create", "org:delete:shape", "force:org:shape:delete", "org:delete:snapshot", "force:org:snapshot:delete", "org:get:snapshot", "force:org:snapshot:get", "org:list:shape", "force:org:shape:list", "org:list:snapshot", "force:org:snapshot:list", "package:convert", "force:package:convert", "package:create", "force:package:create", "package:delete", "force:package:delete", "package:install", "force:package:install", "package:install:report", "force:package:install:report", "package:installed:list", "force:package:installed:list", "package:list", "force:package:list", "package:uninstall", "force:package:uninstall", "package:uninstall:report", "force:package:uninstall:report", "package:update", "force:package:update", "package:version:create", "force:package:version:create", "package:version:create:list", "force:package:version:create:list", "package:version:create:report", "force:package:version:create:report", "package:version:delete", "force:package:version:delete", "package:version:displayancestry", "force:package:version:displayancestry", "package:version:list", "force:package:version:list", "package:version:promote", "force:package:version:promote", "package:version:report", "force:package:version:report", "package:version:retrieve", "package:version:update", "force:package:version:update", "package1:version:create", "force:package1:version:create", "package1:version:create:get", "force:package1:version:create:get", "package1:version:display", "force:package1:version:display", "package1:version:list", "force:package1:version:list", "project:deploy:pipeline:quick", "project:deploy:pipeline:report", "project:deploy:pipeline:resume", "project:deploy:pipeline:start", "project:deploy:pipeline:validate", "run:function", "run:function:start", "run:function:start:container", "run:function:start:local", "scanner:rule:add", "scanner:rule:describe", "scanner:rule:list", "scanner:rule:remove", "scanner:run", "scanner:run:dfa", "whoami:functions", "toolbox:package:dependencies:install", "toolbox:package:dependencies:manage", "update", "commands", "help", "autocomplete", "autocomplete:create", "autocomplete:script", "telemetry", "search", "plugins", "plugins:inspect", "plugins:install", "plugins:add", "plugins:link", "plugins:uninstall", "plugins:unlink", "plugins:remove", "plugins:update", "org:list:auth", "force:auth:list", "auth:list", "org:login:access-token", "force:auth:accesstoken:store", "auth:accesstoken:store", "org:login:device", "force:auth:device:login", "auth:device:login", "org:login:jwt", "force:auth:jwt:grant", "auth:jwt:grant", "org:login:sfdx-url", "force:auth:sfdxurl:store", "auth:sfdxurl:store", "org:login:web", "force:auth:web:login", "auth:web:login", "org:logout", "force:auth:logout", "auth:logout", "version", "which", "limits:api:display", "force:limits:api:display", "org:list:limits", "limits:recordcounts:display", "force:limits:recordcounts:display", "org:list:sobject:record-counts", "apex:get:log", "force:apex:log:get", "apex:get:test", "force:apex:test:report", "apex:list:log", "force:apex:log:list", "apex:run", "force:apex:execute", "apex:run:test", "force:apex:test:run", "apex:tail:log", "force:apex:log:tail", "doctor", "info:releasenotes:display", "whatsnew", "data:create:record", "force:data:record:create", "data:delete:bulk", "data:delete:record", "force:data:record:delete", "data:delete:resume", "data:export:tree", "force:data:tree:export", "data:get:record", "force:data:record:get", "data:import:tree", "force:data:tree:import", "data:query", "force:data:soql:query", "data:query:resume", "force:data:soql:bulk:report", "data:resume", "data:update:record", "force:data:record:update", "data:upsert:bulk", "data:upsert:resume", "force:data:bulk:delete", "force:data:bulk:status", "force:data:bulk:upsert", "login", "logout", "plugins:discover", "force:org:clone", "force:org:create", "force:org:delete", "force:org:status", "org:create:sandbox", "env:create:sandbox", "org:create:scratch", "env:create:scratch", "org:delete:sandbox", "env:delete:sandbox", "org:delete:scratch", "env:delete:scratch", "org:display", "force:org:display", "org:list", "force:org:list", "org:list:metadata", "force:mdapi:listmetadata", "org:list:metadata-types", "force:mdapi:describemetadata", "org:open", "force:org:open", "force:source:open", "org:resume:sandbox", "env:resume:sandbox", "org:resume:scratch", "env:resume:scratch", "sobject:describe", "force:schema:sobject:describe", "sobject:list", "force:schema:sobject:list", "deploy", "project:convert:mdapi", "force:mdapi:convert", "project:convert:source", "force:source:convert", "project:delete:source", "force:source:delete", "project:delete:tracking", "force:source:tracking:clear", "project:deploy:cancel", "deploy:metadata:cancel", "project:deploy:preview", "deploy:metadata:preview", "project:deploy:quick", "deploy:metadata:quick", "project:deploy:report", "deploy:metadata:report", "project:deploy:resume", "deploy:metadata:resume", "project:deploy:start", "deploy:metadata", "project:deploy:validate", "deploy:metadata:validate", "project:generate:manifest", "force:source:manifest:create", "project:list:ignored", "force:source:ignored:list", "project:reset:tracking", "force:source:tracking:reset", "project:retrieve:preview", "retrieve:metadata:preview", "project:retrieve:start", "retrieve:metadata", "schema:generate:field", "generate:metadata:field", "schema:generate:platformevent", "generate:metadata:platformevent", "schema:generate:sobject", "generate:metadata:sobject", "schema:generate:tab", "generate:metadata:tab", "alias:list", "force:alias:list", "alias:set", "force:alias:set", "alias:unset", "force:alias:unset", "config:get", "force:config:get", "config:list", "force:config:list", "config:set", "force:config:set", "config:unset", "force:config:unset", "force", "force:mdapi:deploy", "force:mdapi:deploy:cancel", "force:mdapi:deploy:report", "force:mdapi:retrieve", "force:mdapi:retrieve:report", "force:source:deploy", "force:source:deploy:cancel", "force:source:deploy:report", "force:source:pull", "force:source:push", "force:source:retrieve", "force:source:status", "analytics:generate:template", "force:analytics:template:create", "apex:generate:class", "force:apex:class:create", "apex:generate:trigger", "force:apex:trigger:create", "lightning:generate:app", "force:lightning:app:create", "lightning:generate:component", "force:lightning:component:create", "lightning:generate:event", "force:lightning:event:create", "lightning:generate:interface", "force:lightning:interface:create", "lightning:generate:test", "force:lightning:test:create", "project:generate", "force:project:create", "static-resource:generate", "force:staticresource:create", "visualforce:generate:component", "force:visualforce:component:create", "visualforce:generate:page", "force:visualforce:page:create", "plugins:trust:verify", "force:user:password:generate", "force:user:permset:assign", "force:user:permsetlicense:assign", "org:assign:permset", "org:assign:permsetlicense", "org:create:user", "force:user:create", "org:display:user", "force:user:display", "org:generate:password", "org:list:users", "force:user:list" ], "nodeEngine": ">=14.0.0" }, "pluginSpecificData": { "@salesforce/plugin-source": [ { "sourceApiVersion": "58.0", "targetDevHubApiVersion": "58.0" } ] }, "diagnosticResults": [ { "testName": "salesforcedx plugin not installed", "status": "pass" }, { "testName": "no linked plugins", "status": "pass" }, { "testName": "[@salesforce/plugin-source] sourceApiVersion matches apiVersion", "status": "pass" }, { "testName": "using latest or latest-rc CLI version", "status": "pass" } ], "suggestions": [ "Check https://github.com/forcedotcom/cli/issues for CLI issues posted by the community.", "Check http://status.salesforce.com for general Salesforce availability and performance." ], "logFilePaths": [ "C:\\Users\\BCCA1JV\\VSCode\\cbp-trade2\\ace-common\\1694224776340-command-stdout.log", "C:\\Users\\BCCA1JV\\VSCode\\cbp-trade2\\ace-common\\1694224776340-command-debug.log" ], "commandExitCode": 1, "commandName": "sf package version create --code-coverage --package ace-common --definition-file config/ace-enterprise-project-scratch-def.json --installation-key-bypass --wait 60 --json --dev-debug" }