{"id":26775777,"url":"https://github.com/jjlongoria/aura-helper-cli","last_synced_at":"2025-04-16T01:26:17.871Z","repository":{"id":42205542,"uuid":"256329000","full_name":"JJLongoria/aura-helper-CLI","owner":"JJLongoria","description":"Repository for storage and manage code for Aura Helper Command Line Interface application","archived":false,"fork":false,"pushed_at":"2023-03-04T18:00:22.000Z","size":2417,"stargazers_count":8,"open_issues_count":3,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-15T10:46:18.691Z","etag":null,"topics":["ci","cli","continuous-integration","devops","export","git","import","metadata","nodejs","package","salesforce","salesforce-developers"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JJLongoria.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-04-16T21:01:24.000Z","updated_at":"2022-01-25T10:46:02.000Z","dependencies_parsed_at":"2024-09-05T11:01:28.407Z","dependency_job_id":"883bb407-9dec-40d6-9715-6c591bb090b9","html_url":"https://github.com/JJLongoria/aura-helper-CLI","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JJLongoria%2Faura-helper-CLI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JJLongoria%2Faura-helper-CLI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JJLongoria%2Faura-helper-CLI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JJLongoria%2Faura-helper-CLI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JJLongoria","download_url":"https://codeload.github.com/JJLongoria/aura-helper-CLI/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249181049,"owners_count":21225840,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci","cli","continuous-integration","devops","export","git","import","metadata","nodejs","package","salesforce","salesforce-developers"],"created_at":"2025-03-29T03:28:50.704Z","updated_at":"2025-04-16T01:26:17.839Z","avatar_url":"https://github.com/JJLongoria.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **Aura Helper CLI**\n\n[![Version](https://img.shields.io/npm/v/aura-helper-cli?logo=npm)](https://www.npmjs.com/package/aura-helper-cli)\n[![Total Downloads](https://img.shields.io/npm/dt/aura-helper-cli?logo=npm)](https://www.npmjs.com/package/aura-helper-cli)\n[![Downloads/Month](https://img.shields.io/npm/dm/aura-helper-cli?logo=npm)](https://www.npmjs.com/package/aura-helper-cli)\n[![Issues](https://img.shields.io/github/issues/jjlongoria/aura-helper-cli)](https://github.com/JJLongoria/aura-helper-cli/issues)\n[![Known Vulnerabilities](https://snyk.io/test/github/JJLongoria/aura-helper-cli/badge.svg)](https://snyk.io/test/github/JJLongoria/aura-helper-cli)\n[![Code Size](https://img.shields.io/github/languages/code-size/jjlongoria/aura-helper-cli)](https://github.com/JJLongoria/aura-helper-cli)\n[![License](https://img.shields.io/github/license/jjlongoria/aura-helper-cli?logo=github)](https://github.com/JJLongoria/aura-helper-cli/blob/master/LICENSE)\n\n## [**Deprecation Advice**](#linkToSFDX)\nFirst of all, **many thanks** to all the people who have downloaded, installed and / or trusted on Aura Helper CLI as a tool for their work. Either because they use it through the extension for [**VSCode Aura Helper**](#https://marketplace.visualstudio.com/items?itemName=kanko.aura-helper\u0026ssr=false#overview), or because you use the tool directly\n\n:heartpulse: **Thanks a lot** :heartpulse:\n\nI created **Aura Helper CLI** and all Aura Helper tools as a personal project, to learn and make tasks easier for my team and me at work, and over time it has become a powerful and important tool for development in Salesforce for many people. For this same reason, and with the intention of continuing to improve and provide tools for Salesforce developers, *Aura Helper CLI comes to an end*, but [**Aura Helper SFDX is born**](#https://github.com/JJLongoria/aura-helper-sfdx) :confetti_ball:.\n\nThe reasons for this change are several:\n- Full integration with the SFDX tool\n- Installation is easier\n- NodeJS dependency removed\n\nIt is the natural evolution of Aura Helper CLI. **Aura Helper CLI is dead, long life to Aura Helper SFDX!**\n\n## [**Aura Helper SFDX**](#https://github.com/JJLongoria/aura-helper-sfdx)\n\nAura Helper SFDX has the same tools that Aura Helper CLI, with a little different organization and some enhancements.\n\nTo download and install **Aura Helper SFDX** go to [**Aura Helper SFDX Repository**](#https://github.com/JJLongoria/aura-helper-sfdx#installation-guide) and follow the instructions. Aura Helper VSCode extension can install Aura Helper SFDX Plugin automatically.\n\n---\n\nCommand Line Interface to work with Salesforce Projects. This application are entire developed using Aura Helper Framework and has powerfull commands to manage your projects, create Continous Integration and DevOps workflows and support developers to make some utils task on every project like import and export data, create package files (including from git differences), compare metadata from two orgs or from your local project and the auth org, and to much more. \n\nAura Helper CLI requires [SFDX CLI](https://developer.salesforce.com/docs/atlas.en-us.sfdx_setup.meta/sfdx_setup/sfdx_setup_install_cli.htm) to work properly. \n\n### **Specially Designed for DevOps Workflows**\n\nSupported Operative Systems:\n- Windows\n- Linux\n- Mac OS X\n\n## Features\n\n- Simplify your work with **Salesforce and Git** with the command for *create packages* (for deploy and delete) from git changes. **Compare** two *branches*, *commits* or *tags* for create the files for deploy your package.\n- **Repair** file *dependencies errors* on your project files or **Check only** to resolve errors manually.\n- **Compress your XML Files** structure for make easy *identify changes* and resolve *git conflicts*. Also need less storage and work faster.\n- **Retrieve special Metadata Types** like *profiles* or *permissions* sets (and others) with all data without retrieve any file more with a simple command.\n- **Compare** your *local data* with your *authorized organization* for get the differences for delete, retrieve or anything you want. Or **Compare** the Metadata Types *between two orgs* to see the differences.\n- **Merge** diferent **package** or **destructive** files into one file with only one command. \n- **Ignore** any metadata type from your local project or from the package files for maintance different configuration into your sandbox and production enviroments with simple file and command.\n- Specially designed for **DevOps workflows**.\n- And much more\n---\n\n## *Table of Contents*\n\n- [**Installation Guide**](#installation-guide)\n\n- [**AH CLI Commands**](#ah-cli-commands)\n\n- [**AH CLI JSON Responses**](#ah-cli-json-responses)\n\n- [**Ignore File**](#ignore-file)\n\n- [**Metadata JSON Format**](#metadata-json-format)\n\n---\n\n# [**Installation Guide**](#installation-guide)\n## [**NPM Installation (Recommended)**](#installation)\n\nAt the moment, Aura Helper CLI only support installation with NPM manager. This means that you need install Node JS on your computer for install Aura Helper CLI.\n\nFor install NodeJS on Windows systems go to [Node JS Webpage](https://nodejs.org/) and download the latest version for Windows.\n\nFor install NodeJS on Linux systems go to [\"Installing Node.js via package manager\"](https://nodejs.org/en/download/package-manager/) and choose the correct option according your linux system.\n\nWith NodeJS installed on your system, now open a terminal (CMD, Bash, Power Shell...) and run the next command:\n\n    npm install -g aura-helper-cli\n\n---\n\n# [**AH CLI Commands**](#ah-cli-commands)\nAll commands from Aura Helper CLI have the next structure: \n\n    aura-helper \u003ccommand:name\u003e [command:input] [options]\n\n---\n\n### *Commands Group*\n\n- [**Help**](#help)\n\u003cp\u003e\u003c/p\u003e\n\n- [**Metadata Commands**](#metadata-commands)\n  - [**Local Metadata Commands**](#local-metadata-commands)\n  - [**Org Metadata Commands**](#org-metadata-commands)\n\u003cp\u003e\u003c/p\u003e\n\n- [**Data Commands**](#data-commands)\n\u003cp\u003e\u003c/p\u003e\n\n- [**Core Commands**](#core-commands)\n\n---\n\n# [**Help**](#help)\nIf you need help with Aura Helper CLI, you can run:\n\n    aura-helper --help or aura-helper -h\n\n# [**Metadata Commands**](#metadata-commands)\nMetadata commands are the commands for work with your metadata files. You can compress xml files, list or describe metadata types that you have on your org or in your local project. Can compare local and org metadata or ignore some metadata types according .ahignore.json file (see [Ignore File](#ignore-file) section). Also you can repair project metadata dependencies and much more. These commands are bellow two big groups. Local and Org commands. The Local commands work only with the metadata types that you have in your local project. The Org commands are commands for work with the data in your auth org.\n\n## [**Local Metadata Commands**](#local-metadata-commands)\n\n  - [**metadata:local:compress**](#metadatalocalcompress)\n\n    Command for compress XML files for ocuppy less data storage, and make more usefull with SVC systems like Git. With XML Files compressed, the file confilcts on merges are to much easy to resolve.\n\n  - [**metadata:local:ignore**](#metadatalocalignore)\n\n    Command for ignore some metadata types. If you use git or other SVC systems, you can construct a .gitignore file or similar for ignore some files from your SVC. But salesforce have some metadata that can't be ignored with git because have into other files, like custom labels, workflows or user permissios for example. This command allow to you to ignore this types of metadata. This command support all metadata types to ignore. (Can delete entire files and folders)\n\n  - [**metadata:local:list**](#metadatalocallist)\n\n    Command to describe all or specific Metadata Types like Custom Objects, Custom Fields, Apex Classes... that you have in your local project.\n\n  - [**metadata:local:describe**](#metadatalocaldescribe)\n\n    Command to describe all or specific Metadata Types like Custom Objects, Custom Fields, Apex Classes... that you have in your local project.\n\n  - [**metadata:local:repair**](#metadatalocalrepair)\n\n    Command for repair your project local dependencies. With this command you cand repair automatically or check if have dependencies errors for repair it (or not, because is possible to detect errors because you don't have all metadata into your local project).\n\n  - [**metadata:local:package:create**](#metadatalocalpackagecreate)\n\n    Command for repair create the package files. You can create the package and destructive files for deploy and delete (before and after deploy) automatically from different sources. You can chose to create from other package files for merge all packages into only one. Also you can create the package files based on a JSON file (See [Metadata JSON Format](#metadata-file) section) or better, you can create the files from a git differences. You can compare two branches, commits, tags... for detect modifies, new files and deleted metadata for create the package and destructive files with a simple command. Also you can ignore metadata types for not include in package according .ahignore.json file.\n\n  - [**metadata:local:retrieve:special**](#metadatalocalretrievespecial)\n\n    Command for retrieve the special metadata types stored in your local project. The special types are the types generated at runtime when retrieving data from org according the package data. Files like permission sets, profiles or translations. For example, with this command you can retrieve all permissions from a profile without retrieve anything more. Also you can retrieve only the Custom Object XML Files without retrieve anything more.\n\n---\n### [**metadata:local:compress**](#metadatalocalcompress)\nCommand for compress XML files for ocuppy less data storage, and make more usefull with SVC systems like Git. With XML Files compressed, the file confilcts on merges are to much easy to resolve.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e                                  Path to project root. By default is your current folder.\n    -s | --sort-order \u003csortOrder\u003e                                       Sort order for the XML elements when compress XML files. By default, the elements are sorted with simple XML elements \n                                                                        first. Values: simpleFirst, complexFirst, alphabetAsc, alphabetDesc\n    -a | --all                                                          Compress all XML files with support compression in your project.\n    -d | --directory \u003cpath/to/directory\u003e [, \u003cpath/to/directory\u003e...]     Compress XML Files from specific directory or directories separated by commas. This options does not take effect if you \n                                                                        choose compress all.\n    -f | --file \u003cpath/to/file\u003e [, \u003cpath/to/file\u003e...]                    Compress the specified XML file or files separated by commas. This options does not take effect if you choose compress \n                                                                        directory or all.\n    -p | --progress \u003cformat\u003e                                            Option for report the command progress. Available formats: plaintext, json\n    -b | --beautify                                                     Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings \n                                                                        and Red for Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nCompress All XML metadata files on your salesforce project:\n\n    aura-helper metadata:local:compress -a\n\nCompress All XML Files for objects folder (and subfolders) with progress report and showing output with colors:\n\n    aura-helper metadata:local:compress -d force-app/main/default/objects -p plaintext -b\n\nCompress Account XML File:\n\n    aura-helper metadata:local:compress -f force-app/main/default/objects/Account/Account.object-meta-xml\n\n### [**metadata:local:ignore**](#metadatalocalignore)\nCommand for ignore some metadata types. If you use git or other SVC systems, you can construct a .gitignore file or similar for ignore some files from your SVC. But salesforce have some metadata that can't be ignored with git because have into other files, like custom labels, workflows or user permissios for example. This command allow to you to ignore this types of metadata. This command support all metadata types to ignore. (Can delete entire files and folders)\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -a | --all                                      Ignore all metadata types according to the ignore file.\n    -t | --type \u003cMetadataTypeNames\u003e                 Ignore the specified metadata types according to the ignore file. You can select a sigle or a list separated by \n                                                    commas. \n                                                    This options does not take effect if you choose ignore all.\n    -i | --ignore-file \u003cpath/to/ignore/file\u003e        Path to the ignore file. Use this if you not want to use the project root ignore file or have different name. By \n                                                    default use .ahignore.json file from your project root.\n    -c | --compress                                 Add this option for compress modified files for ignore operation.\n    -s | --sort-order \u003csortOrder\u003e                   Sort order for the XML elements when compress XML files. By default, the elements are sorted with simple XML \n                                                    elements first. Values: simpleFirst, complexFirst, alphabetAsc, alphabetDesc\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nIgnore All metadata types specified in .ahignore.json file with progress report, colors and compressing files\n\n    aura-helper metadata:local:ignore -a -p plaintext -b -c\n\nIgnore only Custom Application, Custom Labels and Profiles specified in .ahignore.json file with another .ahignore.json\n\n    aura-helper metadata:local:ignore -t \"CustomApplication, Profile, CustomLabels\" -i \"Path/to/the/file/.myignoreFile.json\"\n\n\n### [**metadata:local:list**](#metadatalocallist) \nCommand for list all Metadata Types stored in your local project. \n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    --output-file \u003cpath/to/output/file\u003e             Path to file for redirect the output.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nList all types with progress report and colorized output\n\n    aura-helper metadata:local:list -p plaintext -b\n\nList all types from different project and save the output into a file\n\n    aura-helper metadata:local:list -r \"path/to/other/project/root\" -s \"path/to/the/output/file.txt\"\n\n\n### [**metadata:local:describe**](#metadatalocaldescribe)\nCommand to describe all or specific Metadata Types like Custom Objects, Custom Fields, Apex Classes... that you have in your local project.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -a | --all                                      Describe all metadata types stored in your local project.\n    -t | --type \u003cMetadataTypeNames\u003e                 Describe the specified metadata types. You can select a single metadata or a list separated by commas. This \n                                                    option does not take effect if you choose describe all.\n    -g | --group                                    Option to group global Quick Actions into GlobalActions group, false to list as object and item\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    --output-file \u003cpath/to/output/file\u003e             Path to file for redirect the output.\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nDescribe all metadata types stored in your local project with progress report and save the response into a file\n\n    aura-helper metadata:local:describe -a -p plaintext -s \"path/to/the/output/file.txt\"\n\nDescribe Custom Objects, Custom Fields, Profiles and ValidationRules from your local project with colorized output.\n\n    aura-helper metadata:local:describe -t \"CustomObject, CustomField, Profile, ValidatiionRule\" -b                      \n\n\n### [**metadata:local:repair**](#metadatalocalrepair)\nCommand for repair your project local dependencies. With this command you cand repair automatically or check if have dependencies errors for repair it (or not, because is possible to detect errors because you don't have all metadata into your local project).\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -a | --all                                      Repair all supported metadata types. Custom Applications, Profiles and Permission Sets.\n    -t | --type \u003cMetadataTypeNames\u003e                 Repair specified metadata types. You can choose single type or a list separated by commas, also you can choose \n                                                    to  repair a specified objects like \"MetadataTypeAPIName:MetadataObjectAPIName\". For example \n                                                    \"CustomApplication:AppName1\" for repair only AppName1 Custom App. This option does not take effet if select \n                                                    repair all.\n    -o | --only-check                               If you select this options, the command not repair dependencies, instead return the errors on the files for \n                                                    repair manually.\n    -c | --compress                                 Add this option for compress modifieds files for repair operation.\n    -s | --sort-order \u003csortOrder\u003e                   Sort order for the XML elements when compress XML files. By default, the elements are sorted with simple XML \n                                                    elements first. Values: simpleFirst, complexFirst, alphabetAsc, alphabetDesc\n    -u | --use-ignore                               Option for ignore the metadata included in ignore file from the repair command.\n    -i | --ignore-file \u003cpath/to/ignore/file\u003e        Path to the ignore file. Use this if you not want to use the project root ignore file or have different name. By \n                                                    default use .ahignore.json file from your project root.\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n    --output-file \u003cpath/to/output/file\u003e             If you choose --only-check, you can redirect the output to a file.\n\n### **Examples**:\n\nRepair all supported types with progress report and compress repaired files\n\n    aura-helper metadata:local:repair -a -c -p plaintext\n\nRepair Custom Aplication named App1, All profiles and Two permission sets named Perm1 and Perm2 with colorized output\n\n    aura-helper metadata:local:repair -t \"CustomApplication:App1,Profile,PermissionSet:Perm1,PermissionSet:Perm2\" -b\n\nCheck only the errors on profiles and save the output on a file\n\n    aura-helper metadata:local:repair -t \"Profile\" -o -s \"\"path/to/the/output/errors.txt\"\"\n\n### [**metadata:local:package:create**](#metadatalocalpackagecreate) \nCommand for repair create the package files. You can create the package and destructive files for deploy and delete (before and after deploy) automatically from different sources. You can chose to create from other package files for merge all packages into only one. Also you can create the package files based on a JSON file (See [Metadata JSON Format](#metadata-file) section) or better, you can create the files from a git differences. You can compare two branches, commits, tags... for detect modifies, new files and deleted metadata for create the package and destructive files with a simple command. Also you can ignore metadata types for not include in package according .ahignore.json file.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -o | --output-path \u003ctarget/files/path\u003e          Path for save the generated files. By default is your manifest folder.\n    -c | --create-type \u003ccreateType\u003e                 Option for select the generated type file. You can choose between package, destructive or both. Package by default\n    -f | --create-from \u003ccreateFrom\u003e                 Option for select the source for generate the package. You can choose between git, json or package.\n    -d | --delete-order \u003cbeforeOrAfter\u003e             This option allow to the user for select the order for delete metadata. Available values are before or after \n                                                    (after by  default). If you select before, destructiveChanges will be deployed before the package, after option \n                                                    deploy destructive changes after the package file.\n    -s | --source \u003csource\u003e                          Option for select a source for compare. If you select create-from git, available values are a branch name, tag \n                                                    name or commit reference (or use \"this\" for select the active branch). If you select create-from json, the value \n                                                    are the path to the file. If you select create-from package, the values are a comma-separated list of the package \n                                                    paths, the package.xml files will be merge on one package, and same with destructiveChanges.xml files.\n    -t | --target \u003ctarget\u003e                          Option for select a target for compare. If you select create-from git, available values are a branch name, tag \n                                                    name or commit reference. This options is only available for create-from git.\n    -r | --raw                                      Option for return the data for crate the pacakge. With this options, the package and destructive files don\\'t \n                                                    will be create, instead the output are the json file for create a package or use for another pourpose. This \n                                                    options only works for if you select --create-from git.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from \n                                                    the sfdx-project.json file.\n    -u | --use-ignore                               Option for ignore the metadata included in ignore file from the package and destructive files.\n    -i | --ignore-file \u003cpath/to/ignore/file\u003e        Path to the ignore file. Use this if you not want to use the project root ignore file or have different name. By \n                                                    default use .ahignore.json file from your project root.\n    -e | --explicit                                 If you select explicit option, the package will contains all object names explicit on the file, in otherwise, the \n                                                    package generator will be use a wildcard (*) when is necessary (All Childs from a metadata type are selected for \n                                                    deploy). Explicit option are fully recomended for retrieve metadata. This option only works if you select \n                                                    --create-from json.\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n\n### **Examples**:\n\nCreate the package and destructive files from differences from the active branch and master with ignored metadata and custom api version with progress report\n\n    aura-helper metadata:local:package:create -c both -f git -s this -t origin/master -u -p -v 45\n\nCreate the package from a JSON file and explicit metadata\n\n    aura-helper metadata:local:package:crate -c package -f json -s \"path/to/json/package.json\" -e\n\nMerging other packages and destructive files for create only both files.\n\n    aura-helper metadata:local:package:create -c both -f package -s \"path/to/package1/package.xml, path/to/package2/package.xml, path/to/destructive1/destructiveChanges.xml, path/to/destructive2/destructiveChangesPost.xml\"\n\n\n### [**metadata:local:retrieve:special**](#metadatalocalretrievespecial)\nCommand for retrieve the special metadata types stored in your local project. The special types are the types generated at runtime when retrieving data from org according the package data. Files like permission sets, profiles or translations. For example, with this command you can retrieve all permissions from a profile without retrieve anything more. Also you can retrieve only the Custom Object XML Files without retrieve anything more.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -a | --all                                      Retrieve all supported metadata types (Profile, PermissionSet, Translation, RecordType, CustomObject).\n    -t | --type \u003cMetadataTypeNames\u003e                 Retrieve specifics metadata types. You can choose one or a comma separated list of elements. Also you can choose \n                                                    retrieve a specific profile, object o record type. Schema -\u003e \"Type1\" or \"Type1,Type2\" or \"Type1:Object1, \n                                                    Type1:Object2\" or \"Type1:Object1:Item1\" for example:  \"Profile, PermissinSet\" for retrieve all profiles and \n                                                    permission sets. \"Profile:Admin\" for retrieve the admin profile. \"RecordType:Account:RecordType1\" for  retrieve \n                                                    the RecordType1 for the object Account or \"RecordType:Account\" for retrieve all Record Types for Account.\n    -i | --include-org                              With this option, you can retrieve the with the data from org and not only for local, but only retrieve the types \n                                                    that you have in your local.\n    -o | --org-namespace                            If you choose include data from org, also you can choose if include all data from the org, or only the data from \n                                                    your org namespace.\n    -c | --compress                                 Compress the retrieved files.\n    -s | --sort-order \u003csortOrder\u003e                   Sort order for the XML elements when compress XML files. By default, the elements are sorted with simple XML \n                                                    elements first. Values: simpleFirst, complexFirst, alphabetAsc, alphabetDesc\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n    \n    Retrieve all supported types only including org data and only org namespace data, progress report and file compression\n\n        aura-helper metadata:local:retrieve:special -a -c -i -o -p plaintext\n\n    Retrieve All Profiles, Perm1 and Perm2 Permission Sets, all Case RecordTypes and RtName Account Recordtype with colorized output and progress report\n\n        aura-helper metadata:local:retrieve:special -t \"Profile, PermissionSet:Perm1, PermissionSet:Perm2, RecordType:Case, RecordType:Account:RtName\" -p plaintext -b\n\n## [**Org Metadata Commands**](#org-metadata-commands)\n\n  - [**metadata:org:list**](#metadataorglist)\n\n    Command for list all Metadata Types stored in your auth org\n\n  - [**metadata:org:describe**](#metadataorgdescribe)\n\n    Command to describe all or specific Metadata Types likes Custom Objects, Custom Fields, Apex Classes... that you have in your auth org\n\n  - [**metadata:org:compare**](#metadataorgcompare)\n\n    Command for compare your local project with your auth org for get the differences. The result are the metadata types and objects that you have in your org, but don't have in your local project.\n\n  - [**metadata:org:compare:between**](#metadataorgcomparebetween)\n\n    Command for compare between two different orgs. The result are the metadata types that exists in on target, but not exists on source.\n\n  - [**metadata:org:retrieve:special**](#metadataorgretrievespecial)\n\n    Command for retrieve the special metadata types stored in your auth org. The special types are all types generated at runtime when retrieving metadata according the package data. Files like permission sets, profiles or translations. For example, with this command you can retrieve all permissions from a profile without retrieve anything more. Also you can retrieve only the Custom Object XML Files without retrieve anything more.\n\n  - [**metadata:org:permissions**](#metadataorgpermissions)\n\n    Command to get all available User permisions in your org.\n\n  - [**metadata:org:apex:executor**](#metadataorgapexexecutor)\n\n    Command to execute an Anonymous Apex script from file against the auth org.\n\n---\n### [**metadata:org:list**](#metadataorglist) \nCommand for list all Metadata Types stored in your auth org\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    --output-file \u003cpath/to/output/file\u003e             Path to file for redirect the output.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n\n### **Examples**:\n\nList all types with progress report and colorized output\n\n    aura-helper metadata:org:list -p plaintext -b\n\nList all types from different project and save the output into a file\n\n    aura-helper metadata:org:list -r \"path/to/other/project/root\" -s \"path/to/the/output/file.txt\"\n\n### [**metadata:org:describe**](#metadataorgdescribe)\nCommand to describe all or specific Metadata Types likes Custom Objects, Custom Fields, Apex Classes... that you have in your auth org\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -a | --all                                      Describe all metadata types stored in your local project.\n    -t | --type \u003cMetadataTypeNames\u003e                 Describe the specified metadata types. You can select a single metadata or a list separated by commas. This \n                                                    option does not take effect if you choose describe all.\n    -o | --org-namespace                            Describe only metadata types from your org namespace.\n    -g | --group                                    Option to group global Quick Actions into GlobalActions group, false to list as object and item\n    --output-file \u003cpath/to/output/file\u003e             Path to file for redirect the output.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nDescribe all metadata types only stored in your org, only from the org namespace, with progress report and save the response into a file\n\n    aura-helper metadata:org:describe -a -o -p plaintext -s \"path/to/the/output/file.txt\"\n\nDescribe Custom Objects, Custom Fields, Profiles and ValidationRules from your org with colorized output.\n\n    aura-helper metadata:org:describe -t \"CustomObject, CustomField, Profile, ValidatiionRule\" -b \n\n### [**metadata:org:compare**](#metadataorgcompare)\nCommand for compare your local project with your auth org for get the differences. The result are the metadata types and objects that you have in your org, but don't have in your local project.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    --output-file \u003cpath/to/output/file\u003e             Path to file for redirect the output.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nCompare the local and org data with progress report and colorized output\n\n    aura-helper metadata:org:compare -p plaintext -b\n\n### [**metadata:org:compare:between**](#metadataorgcomparebetween)\n\n Command for compare between two different orgs. The result are the metadata types that exists in on target, but not exists on source.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -s | --source \u003csourceUsernameOrAlias\u003e           Source Salesforce org to compare. If you want to compare your active org with other, this options is not necessary \n                                                    because use the --root option for get the project\\'s auth org. If you choose source, --root will be ignored.\n    -t | --target \u003ctargetUsernameOrAlias\u003e           Target Salesforce org to compare.\n    --output-file \u003cpath/to/output/file\u003e             Path to file for redirect the output.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nCompare between to orgs with report and colorized output.\n\n    aura-helper metadata:org:compare:between -s test.username@salesforceOrg.com.uat -t test.username@salesforceOrg.com.qa -p plaintext -b\n\n### [**metadata:org:retrieve:special**](#metadataorgcomparebetween)\nCommand for retrieve the special metadata types stored in your auth org. The special types are all types generated at runtime when retrieving metadata according the package data. Files like permission sets, profiles or translations. For example, with this command you can retrieve all permissions from a profile without retrieve anything more. Also you can retrieve only the Custom Object XML Files without retrieve anything more.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -a | --all                                      Retrieve all supported metadata types (Profile, PermissionSet, Translation, RecordType, CustomObject).\n    -t | --type \u003cMetadataTypeNames\u003e                 Retrieve specifics metadata types. You can choose one or a comma separated list of elements. Also you can choose \n                                                    retrieve a specific profile, object o record type. Schema -\u003e \"Type1\" or \"Type1,Type2\" or \"Type1:Object1, \n                                                    Type1:Object2\" or \"Type1:Object1:Item1\" for example:  \"Profile, PermissinSet\" for retrieve all profiles and \n                                                    permission sets. \"Profile:Admin\" for retrieve the admin profile. \"RecordType:Account:RecordType1\" for  retrieve \n                                                    the RecordType1 for the object Account or \"RecordType:Account\" for retrieve all Record Types for Account.\n    -i | --include-org',                            With this option, you can retrieve the data from org and not only for local, but only retrieve the types that you \n                                                    have in your local.\n    -o | --org-namespace                            If you choose include data from org, also you can choose if include all data from the org, or only the data from \n                                                    your org namespace.\n    -c | --compress                                 Compress the retrieved files.\n    -s | --sort-order \u003csortOrder\u003e                   Sort order for the XML elements when compress XML files. By default, the elements are sorted with simple XML \n                                                    elements first. Values: simpleFirst, complexFirst, alphabetAsc, alphabetDesc\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nRetrieve all supported types with only org namespace data, progress report and file compression\n\n    aura-helper metadata:org:retrieve:special -a -c -o -p plaintext\n\nRetrieve All Profiles, Perm1 and Perm2 Permission Sets, all Case RecordTypes and RtName Account Recordtype with colorized output and progress report\n\n    aura-helper metadata:org:retrieve:special -t \"Profile, PermissionSet:Perm1, PermissionSet:Perm2, RecordType:Case, RecordType:Account:RtName\" -p plaintext -b\n\n### [**metadata:org:permissions**](#metadataorgcomparebetween)\nCommand to get all available User permisions in your org.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nGet all user permission from your auth org and your project api version with colorized output and progress report\n\n    aura-helper metadata:org:permissions -b -p plaintext\n\nGet all user permission from your auth org for a specific api version with colorized output and progress report\n\n    aura-helper metadata:org:permissions -v 45.0 -b -p plaintext\n\n### [**metadata:org:apex:executor**](#metadataorgapexexecutor)\nCommand to execute an Anonymous Apex script from file against the auth org.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder.\n    -f | --file \u003cpath/to/apex/script\u003e               Path to the Anonymous Apex Script file.\n    -l | --print-log                                Option to print the result log of every execution\n    -i | --iterations \u003cnumber/of/iterations\u003e        Option for select the scritp execution number. For example, 3 for execute the script 3 times\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nExecute an script 3 times without printing log with colorized output and progress report\n\n    aura-helper metadata:org:apex:executor -f \"path/to/script.apex\" -i 3 -b -p plaintext\n\nExecute an script 10 times wit printing log, colorized output and progress report\n\n    aura-helper metadata:org:apex:executor -f \"path/to/script.apex\" --iterations 3 --print-log -b -p plaintext\n\n---\n\n# [**Data Commands**](#data-commands)\nData commands are the commands for work with data stored in your orgs. You can export and import data between orgs with two simple commands. You can export related objects and import all throgth one command, and Aura Helper automatically match the record types and related objects with their parents. Don't have any salesforce limits and you can export and import all data that you need.\n\n  - [**data:export**](#dataexport)\n\n    Command for export data from the project's auth org or any other org that you have access. This command use the tree:export command from sfdx with plan. If you want to resolve record types automatically on import, you must extract the field \"RecordType.DeveloperName\" into the query. For resolve parent-child relationship, you must extract the parent field into the childs subquery.\n\n  - [**data:import**](#dataimport)\n\n    Command for import data extracted from data:export (or sfdx tree:export with a plan) and use the tree:import command from sfdx. Unlike the export command. The import command pre process the extracted data before insert for link record types if apply, save and resolve object references, and avoid the salesforce limits. For link record types automatically, you must include in the export query this field \"RecordType.DeveloperName\" and Aura Helper CLI automatically resolve the record types on target org. For link child objects with their parents, you must extract the parent object into the childs subqueries. Also, you can import data directly from other org.\n\n---\n## [**data:export**](#dataexport)\nCommand for export data from the project's auth org or any other org that you have access. This command use the tree:export command from sfdx with plan. If you want to resolve record types automatically on import, you must extract the field \"RecordType.DeveloperName\" into the query. For resolve parent-child relationship, you must extract the parent field into the childs subquery.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder\n    -q | --query \u003cquery\u003e                            Query for extract data. You can use a simple query (Select [fields] from [object] [where] ...) or a complex query \n                                                    (select [fields], [query], [query] from [object] [where] ...) for export data in tree format.\n    -u | --username \u003cusername/or/alias\u003e             Username or Alias for extract the data from a diferent org than the auth org in the project.\n    -o | --output-path \u003cpath/to/output/dir\u003e         Path for save the generated output files. By default save result on \u003cactualDir\u003e/export.\n    -x | --prefix \u003cprefixForCreatedFiles\u003e           Prefix for add to the generated files.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nExport all account records with contacts with progress report and beautify\n\n    aura-helper data:export -q \"Select Id, Name, BillingNumber, (Select Id, Name, AccountId, Phone from Contacts) from Account\" -o \"./export/accounts\" -p plaintext -b\n\nExport all accounts for link with record type with progress report and beautify\n\n    aura-helper data:export -q \"Select Id, Name, BillingNumber, RecordType.DeveloperName from Account\" -o \"./export/accounts\" -p plaintext -b\n\n\n## [**data:import**](#dataimport) \nCommand for import data extracted from data:export (or sfdx tree:export with a plan) and use the tree:import command from sfdx. Unlike the export command. The import command pre process the extracted data before insert for link record types if apply, save and resolve object references, and avoid the salesforce limits. For link record types automatically, you must include in the export query this field \"RecordType.DeveloperName\" and Aura Helper CLI automatically resolve the record types on target org. For link child objects with their parents, you must extract the parent object into the childs subqueries. Also, you can import data directly from other org.\n\n### **Options**:\n\n    -r | --root \u003cpath/to/project/root\u003e              Path to project root. By default is your current folder\n    -f | --file \u003cpath/to/exported/file\u003e             Path to the exported file with data:export command for import into the auth org.\n    -n | --records-number \u003crecordsPerBatch\u003e         Number of records to insert at one time. Limit are 200 records. (200 by default).\n    -s | --source-org \u003cusername/or/alias\u003e           Username or Alias to the source org for import data from the org, not from a file.\n    -q | --query \u003cquery\u003e                            Query for extract data. You can use a simple query (Select [fields] from [object] [where] ...) or a complex query\n                                                    (select [fields], [query], [query] from [object] [where] ...) for export data in tree format.\n    -v | --api-version \u003capiVersion\u003e                 Option for use another Salesforce API version. By default, Aura Helper CLI get the sourceApiVersion value from the \n                                                    sfdx-project. json file\n    -p | --progress \u003cformat\u003e                        Option for report the command progress. Available formats: plaintext, json.\n    -b | --beautify                                 Option for draw the output with colors. Green for Successfull, Blue for progress, Yellow for Warnings and Red for \n                                                    Errors. Only recomended for work with terminals (CMD, Bash, Power Shell...).\n\n### **Examples**:\n\nImport all account records with contacts with progress report and beautify from other org\n\n    aura-helper data:import -s \"aliasOrg\" -q \"Select Id, Name, BillingNumber, (Select Id, Name, AccountId, Phone from Contacts) from Account\" -p plaintext -b\n\nImport all accounts from a plan file and process 50 accounts maximum per batch.\n\n    aura-helper data:import -f \"./export/accounts/accounts-plan.json\" -n 50 -p plaintext -b\n\n---\n\n# [**Core Commands**](#core-commands)\n\nCommands to execute operations related with Aura Helper and not with Salesforce like get the installed version or update to the latest version.\n\n  - [**version**](#version)\n  \n    Command for get the installed Aura Helper CLI version\n\n  - [**update**](#update) \n\n    Command for update Aura Helper CLI to the latest version\n\n---\n## [**version**](#version) \nCommand for get the installed Aura Helper CLI version\n\n### **Examples**:\n\nGet Aura Helper CLI Installed version\n\n    aura-helper version\n\n## [**update**](#update) \n\nCommand for update Aura Helper CLI to the latest version\n\n### **Examples**:\n\nUpdate Aura Helper CLI to the latest version\n\n    aura-helper update\n\n# [**AH CLI JSON Responses**](#ah-cli-json-responses)\n\nAura Helper CLI has the same base JSON structure to all response but the error and progress responses has additional fields.\n```json\n    {\n        \"status\": \"value\", // Number Value\n        \"message\": \"value\", // String value \n        \"result\": {} | [], // Object or Array value\n    }\n```\n## [**AH CLI OK Response**](#ah-cli-ok-response)\n\nThe response when commands run successfully and not throw any error has the status value always with value 0 and the result object can ben an Object or Array with the command data response.\n```json\n    {\n        \"status\": 0, // ALWAYS\n        \"message\": \"value\", // String value \n        \"result\": {} | [], // Object or Array value\n    }\n```\n## [**AH CLI Progress Response**](#ah-cli-progress-response)\n\nIf you choose *JSON (json)* format to show the progress, the response is similar to OK response, but have inProgress flag field and the increment and progress into the result object. If can't calculate the percetage progress, increment and percentage has -1 value.\n```json\n    {\n        \"status\": 0, // ALWAYS\n        \"message\": \"value\", // String value\n        \"isProgress\": true    // ALWAYS \n        \"result\": {\n            \"increment\": 0.0,    // Decimal value\n            \"percentage\": 0.0,    // Decimal value\n        }\n    }\n```\n## [**AH CLI Error Response**](#ah-cli-error-response)\n\nWhen Aura Helper CLI throw any error when running commands, return a similar response to OK but with status value -1. \n```json\n    {\n        \"status\": -1, // ALWAYS\n        \"code\": \"ERROR_CODE_VALUE\", // String value\n        \"name\": \"EXCEPTION_NAME\",     // If the errors is produced by exception, has the name on this field.\n        \"message\": \"value\", // String value\n        \"result\": {}\n    }\n```\n# [**Ignore File**](#ignore-file)\n\nThe ignore file is a JSON file used on ignore and create package commands. On this file you can specify metadata types, objects and elements for ignore or delete from your local project or package files. You can have a main ignore file on your root project (like gitignore) named .ahignore.json for use automatically, or have different ignore files and specify it on the commands when you need tou use.\n\nThe ignore file have the next structure\n```json\n    {\n        // Basic structure\n        \"MetadataTypeAPIName\": {\n            \"MetadataObject1\",\n            \"MetadataObject2\"\n        }\n\n        // Advance Structure\n        \"MetadataTypeAPIName\": {\n            \"MetadataObject1:MetadataItem1\",\n            \"MetadataObject1:MetadataItem2\",\n            \"MetadataObject2:*\",\n            \"*\",\n            \"*:*\" // Only valid on Custom Objects\n        }\n\n        // Special for Permissions\n        \"MetadataTypeAPIName\": {\n            \"UserPermission:MetadataObject1:PermissionName\",\n            \"UserPermission:MetadataObject2:*\",\n            \"UserPermission:*:PermissionName\"\n        }\n    }\n```\n### Example:\n```json\n    {\n        \"CustomLabels\": {\n            \"labelName1\",                   // Ignore or remove the custom label \"labelName1\"\n            \"labelName2\",                   // Ignore or remove the custom label \"labelName2\",\n            \"*\"                             // Ignore or remove all Custom Labels\n        },\n        \"AssignmentRules\":{\n            \"Case:Assign1\",                 // Ignore or remove the Assignent Rule \"Assign1\" from the object Case\n            \"Lead:*\",                       // Ignore or remove all Assignment Rules from Lead\n            \"*\"                             // Ignore or remove all Assignment Rules\n        },\n        \"CustomObject\": {\n            \"Account\",                      // Ignore or remove the Account Object\n            \"Case:*\",                       // Ignore or remove all related objects from case, including the object (Bussines Process, Fields, Validation Rules...),\n            \"*\",                            // Ignore or remove all custom objects (only the object not the related metadata)\n            \"*:*\",                          // Ignore or remove all custom objects and the related metadata (Bussines Process, Fields, Validation Rules...)\n        },\n        \"Report\": {\n            \"ReportFolder\",                 // Ignore or remove the entire folder\n            \"ReportFolder1:ReportName2\",    // Ignore or remove the report \"ReportName2\" from \"ReportFolder1\" folder.\n            \"*\",                            // Ignore or remove all reports.\n        },\n        \"Workflow\": {\n            \"Account\",                      // Ignore or remove the Account worflows (Rules, Task, Alerts...)\n            \"*\"                             // Ignore or  remove all workflows (Rules, Task, Alerts...) from all objects \n        },\n        \"WorkflowRule\": {\n            \"Case:*\",                       // Ignore or remove all Workflow rules from case object\n            \"Account:Rule1\",                // Ignore or remove \"Rule1\" from Account workflows,\n            \"*\"                             // Ignore or remove all Worflow rules from all objects\n        },\n        \"Profile\": {\n            \"UserPermission:*:Permission1\", // Remove the \"Permission1\" User Permission from all profiles\n            \"UserPermission:TestProfile:*\", // Remove all User permissions from TestProfile file\n            \"UserPermission:Admin:Perm1\",   // Remove the Perm1 User Permission from Admin profile\n            \"TestProfile2\",                 // Ignore or remove  the \"TestProfile\" profile \n            \"*\"                             // Ignore or remove all profiles\n        }\n    }\n```\n#### IMPORTANT\n\n    Some Metadata Types have singular and plural name like CustomLabels, MatchingRules, EscalationRules... For ignore or remove this types you must use the plural name, if use the singular name the ignore process not take effect with this types.\n\n---\n\n# [**Metadata JSON Format**](#metadata-file)\n\nThe describe metadata commands and compare commands return the metadata in a JSON format, the same format for create the package througth a JSON file. This means that the output of the describe or compare commands can be used as input for create the package from JSON file. The next structure are the full JSON structure file:\n```json\n    {\n        \"MetadataAPIName\": {\n            \"name\": \"MetadataAPIName\",                                  // Required. Contains the Metadata Type API Name (like object Key)\n            \"checked\": false,                                           // Required. Field for include this type on package or not\n            \"path\": \"path/to/the/metadata/folder\",                      // Optional. Path to the Metadata Type folder in local project\n            \"suffix\": \"fileSuffix\",                                     // Optional. Metadata File suffix\n            \"childs\": {                                                 // Object with a collection of childs (Field required but can be an empty object)\n                \"MetadataObjectName\":{\n                    \"name\": \"MetadataObjectName\",                       // Required. Contains the Metadata Object API Name (like object Key)\n                    \"checked\": false,                                   // Required. Field for include this object on package or not\n                    \"path\": \"path/to/the/metadata/file/or/folder\",      // Optional. Path to the object file or folder path\n                    \"childs\": {                                         // Object with a collection of childs (Field required but can be an empty object)\n                        \"MetadataItemName\": {\n                            \"name\": \"MetadataItemName\",                   // Required. Contains the Metadata Item API Name (like object Key)\n                            \"checked\": false,                           // Required. Field for include this object on package or not\n                            \"path\": \"path/to/the/metadata/file\"\n                        },\n                        \"MetadataItemName2\": {\n                            ...\n                        },\n                        ...,\n                        ...,\n                        ...\n                    }\n                }\n                \"MetadataObjectName2\":{\n                   ...\n                },\n                ...,\n                ...,\n                ...\n            }\n        }\n    }\n```\n\n### Example:\n```json\n    {\n        \"CustomObject\": {\n            \"name\": \"CustomObject\",\n            \"checked\": false,\n            \"path\":  \"path/to/root/project/force-app/main/default/objects\",\n            \"suffix\": \"object\",\n            \"childs\": {\n                \"Account\": {\n                    \"name\": \"Account\",\n                    \"checked\": true,            // Add Account Object to the package\n                    \"path\": \"path/to/root/project/force-app/main/default/objects/Account/Account.object-meta.xml\",\n                    \"childs\": {}\n                },\n                \"Case\": {\n                    \"name\": \"Case\",\n                    \"checked\": true,            // Add Case Object to the package\n                    \"path\": \"path/to/root/project/force-app/main/default/objects/Case/Case.object-meta.xml\",\n                    \"childs\": {}\n                },\n                ...,\n                ...,\n                ...\n            }\n        },\n        \"CustomField\": {\n            \"name\": \"CustomField\",\n            \"checked\": false,\n            \"path\":  \"path/to/root/project/force-app/main/default/objects\",\n            \"suffix\": \"field\",\n            \"childs\": {\n                \"Account\": {\n                    \"name\": \"Account\",\n                    \"checked\": false,            \n                    \"path\": \"path/to/root/project/force-app/main/default/objects/Account/fields\",\n                    \"childs\": {\n                        \"customField__c\": {\n                            \"name\": \"customField__c\",\n                            \"checked\": true,    // Add customField__c to the package\n                            \"path\": \"path/to/root/project/force-app/main/default/objects/Account/fields/customField__c.field-meta.xml\",\n                        },\n                        ...,\n                        ...,\n                        ...\n                    }\n                },\n                \"Case\": {\n                    \"name\": \"Case\",\n                    \"checked\": false,           \n                    \"path\": \"path/to/root/project/force-app/main/default/objects/Case/fields\",\n                    \"childs\": {\n                        \"CaseNumber\": {\n                            \"name\": \"CaseNumber\",\n                            \"checked\": true,    // Add CaseNumber to the package\n                            \"path\": \"path/to/root/project/force-app/main/default/objects/Account/fields/CaseNumber.field-meta.xml\",\n                        },\n                        ...,\n                        ...,\n                        ...\n                    }\n                },\n                ...,\n                ...,\n                ...\n            }\n        }\n    }\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjjlongoria%2Faura-helper-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjjlongoria%2Faura-helper-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjjlongoria%2Faura-helper-cli/lists"}