sfdx-hardis
Version:
Swiss-army-knife Toolbox for Salesforce. Allows you to define a complete CD/CD Pipeline. Orchestrate base commands and assist users with interactive wizards
360 lines (209 loc) • 20.2 kB
Markdown
<!-- markdownlint-disable MD034 -->
[](https://sfdx-hardis.cloudity.com)
# sfdx-hardis
_Presented at_ [_Dreamforce 23_](https://reg.salesforce.com/flow/plus/df23/sessioncatalog/page/catalog/session/1684196389783001OqEl) _and [_Dreamforce 24!_](https://reg.salesforce.com/flow/plus/df24/sessioncatalog/page/catalog/session/1718915808069001Q7HH)_
[](https://npmjs.org/package/sfdx-hardis)
[](https://npmjs.org/package/sfdx-hardis)
[](https://npmjs.org/package/sfdx-hardis)
[](https://hub.docker.com/r/hardisgroupcom/sfdx-hardis/tags)
[](https://GitHub.com/hardisgroupcom/sfdx-hardis/stargazers/)
[](https://gitHub.com/hardisgroupcom/sfdx-hardis/graphs/contributors/)
[](https://github.com/hardisgroupcom/sfdx-hardis/actions?query=workflow%3AMega-Linter+branch%3Amain)
[](https://github.com/aquasecurity/trivy)
[](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/package.json)
[](http://makeapullrequest.com)
Toolbox for Salesforce DX, by [**Cloudity**](https://cloudity.com/) & friends, natively compliant with most platforms and tools.

It will allow you to:
- Do with simple commands what could be done manually in minutes/hours
- [Define a **ready to use CI/CD Pipeline** for your Salesforce project](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-home/)
- [**Backup Metadatas** and **monitor any Salesforce org**](https://sfdx-hardis.cloudity.com/salesforce-monitoring-home/)
- [Generate your **project documentation**](https://sfdx-hardis.cloudity.com/salesforce-project-documentation/), including AI-generated description and Flow Visual History
[_Please see the full list of commands in Online documentation_](https://sfdx-hardis.cloudity.com)
___
Watch sfdx-hardis 2025 new features :)
[](https://youtu.be/JRKH5COUVQ0)
**sfdx-hardis** commands are also available with UI in [**SFDX Hardis Visual Studio Code Extension**](https://marketplace.visualstudio.com/items?itemName=NicolasVuillamy.vscode-sfdx-hardis)
[](https://marketplace.visualstudio.com/items?itemName=NicolasVuillamy.vscode-sfdx-hardis)
___
_See Dreamforce presentation_
[](https://www.youtube.com/watch?v=o0Mm9F07UFs)
## Installation
<!-- installation.md start -->
### With IDE
You can install [Visual Studio Code](https://code.visualstudio.com/) extension [VsCode SFDX Hardis](https://marketplace.visualstudio.com/items?itemName=NicolasVuillamy.vscode-sfdx-hardis)
Once installed, click on  in VsCode left bar, and follow the additional installation instructions
[](https://www.youtube.com/watch?v=LA8m-t7CjHA)
___
### As SFDX Plugin
#### Pre-requisites
- Install Node.js ([recommended version](https://nodejs.org/en/))
- Install Salesforce DX by running `npm install @salesforce/cli --global` command line
#### Plugin installation
```sh-session
sf plugins install sfdx-hardis
```
For advanced use, please also install dependencies
```sh-session
sf plugins install @salesforce/plugin-packaging
sf plugins install sfdmu
sf plugins install sfdx-git-delta
sf plugins install texei-sfdx-plugin
```
If you are using CI/CD scripts, use `echo y | sf plugins install ...` to bypass prompt.
___
### Docker
You can use sfdx-hardis docker images to run in CI
- Docker Hub
- [**hardisgroupcom/sfdx-hardis:latest**](https://hub.docker.com/r/hardisgroupcom/sfdx-hardis) (with latest @salesforce/cli version)
- [**hardisgroupcom/sfdx-hardis:latest-sfdx-recommended**](https://hub.docker.com/r/hardisgroupcom/sfdx-hardis) (with recommended @salesforce/cli version, in case the latest version of @salesforce/cli is buggy)
- GitHub Packages (ghcr.io)
- [**ghcr.io/hardisgroupcom/sfdx-hardis:latest**](https://github.com/orgs/hardisgroupcom/packages) (with latest @salesforce/cli version)
- [**ghcr.io/hardisgroupcom/sfdx-hardis:latest-sfdx-recommended**](https://github.com/orgs/hardisgroupcom/packages) (with recommended @salesforce/cli version, in case the latest version of @salesforce/cli is buggy)
_See [Dockerfile](https://github.com/hardisgroupcom/sfdx-hardis/blob/main/Dockerfile)_
<!-- installation.md end -->
## Usage
```sh-session
sf hardis:<COMMAND> <OPTIONS>
```
## Events
<!-- events.md start -->
### London's Calling '25, London
Auto-generate your SF project Documentation site with open-source and Agentforce

### Czech Dreamin '25, Prague
Auto-generate your SF project Documentation site with open-source and Agentforce, with [Mariia Pyvovarchuk](https://www.linkedin.com/in/mpyvo/)

### Trailblazer Admin Group '25, Lyon
Techs for Admins: Afterwork Salesforce Inspector Reloaded & sfdx-hardis, with Thomas Prouvot

### Dreamforce 2024, San Francisco
[Save the Day by Monitoring Your Org with Open-Source Tools](https://reg.salesforce.com/flow/plus/df24/sessioncatalog/page/catalog/session/1718915808069001Q7HH), with Olga Shirikova
[](https://www.youtube.com/watch?v=NxiLiYeo11A)
### Wir Sind Ohana '24, Berlin
Automate the Monitoring of your Salesforce orgs with open-source tools only!, with Yosra Saidani
[](https://www.youtube.com/watch?v=xGbT6at7RZ0)
### Polish Dreamin '24, Wroclaw, Poland
[Easy and complete Salesforce CI/CD with open-source only!](https://coffeeforce.pl/dreamin/speaker/nicolas-vuillamy/), with Wojciech Suwiński

### French Touch Dreamin '23, Paris
[Automate the Monitoring of your Salesforce orgs with open-source tools only!](https://frenchtouchdreamin.com/index.php/schedule/), with Maxime Guenego

### Dreamforce 2023, San Francisco
[Easy Salesforce CI/CD with open-source and clicks only thanks to sfdx-hardis!](https://reg.salesforce.com/flow/plus/df23/sessioncatalog/page/catalog/session/1684196389783001OqEl), with Jean-Pierre Rizzi
[](https://www.youtube.com/watch?v=o0Mm9F07UFs)
### Yeur Dreamin' 2023, Brussels
An easy and complete Salesforce CI/CD release management with open-source only !, with Angélique Picoreau
[](https://www.linkedin.com/posts/nicolas-vuillamy_cicd-opensource-trailblazercommunity-activity-7076859027321704448-F1g-?utm_source=share&utm_medium=member_desktop)
<!-- events.md end -->
## Articles & Videos
<!-- articles-videos.md start -->
### Web Articles
Here are some articles about [sfdx-hardis](https://sfdx-hardis.cloudity.com/)
- English
[](https://nicolas.vuillamy.fr/how-to-deploy-conga-composer-configuration-using-salesforce-cli-plugins-c2899641f36b)
[](https://nicolas.vuillamy.fr/what-devops-experts-want-to-know-about-salesforce-ci-cd-with-sfdx-hardis-q-a-1f412db34476)
[](https://developer.salesforce.com/podcast/2023/06/sfdx)
[](https://salesforcedevops.net/index.php/2023/03/01/sfdx-hardis-open-source-salesforce-release-management/)
[](https://nicolas.vuillamy.fr/assisted-solving-of-salesforce-deployments-errors-47f3666a9ed0)
[](https://nicolas.vuillamy.fr/handle-salesforce-api-versions-deprecation-like-a-pro-335065f52238)
[](https://nicolas.vuillamy.fr/how-to-mass-download-notes-and-attachments-files-from-a-salesforce-org-83a028824afd)
[](https://medium.com/@dimitrimonge/freeze-unfreeze-users-during-salesforce-deployment-8a1488bf8dd3)
[](https://nicolas.vuillamy.fr/how-to-detect-bad-words-in-salesforce-records-using-sfdx-data-loader-and-sfdx-hardis-171db40a9bac)
[](https://nicolas.vuillamy.fr/reactivate-all-the-sandbox-users-with-invalid-emails-in-3-clicks-2265af4e3a3d)
[](https://nicolas.vuillamy.fr/invalid-scope-mine-not-allowed-deploy-your-listviews-anyway-443aceca8ac7)
- French
- [Versions d'API Salesforce décommissionnées: Que faire ?](https://leblog.hardis-group.com/portfolio/versions-dapi-salesforce-decommissionnees-que-faire/)
- [Exporter en masse les fichiers d’une org Salesforce](https://leblog.hardis-group.com/portfolio/exporter-en-masse-les-fichiers-dune-org-salesforce/)
- [Suspendre l’accès aux utilisateurs lors d’une mise en production Salesforce](https://leblog.hardis-group.com/portfolio/suspendre-lacces-aux-utilisateurs-lors-dune-mise-en-production-salesforce/)
### Recorded Conferences
#### Dreamforce Sessions
- Dreamforce 2024 - Save the Day by Monitoring Your Org with Open-Source Tools (with Olga Shirikova)
[](https://www.youtube.com/watch?v=NxiLiYeo11A){target=blank}
- Dreamforce 2023 - Easy Salesforce CI/CD with open-source and clicks only thanks to sfdx-hardis! (with Jean-Pierre Rizzi)
[](https://www.youtube.com/watch?v=o0Mm9F07UFs){target=blank}
#### Community Events
- Wir Sind Ohana 2024 - Automate the Monitoring of your Salesforce orgs with open-source tools only! (with Yosra Saidani)
[](https://www.youtube.com/watch?v=xGbT6at7RZ0){target=blank}
### Podcasts
- Apex Hours 2025 - Org monitoring with Grafana + AI generated doc
[](https://www.youtube.com/watch?v=oDaCh66pRcI){target=blank}
- Salesforce Way Podcast #102 - Sfdx-hardis with Nicolas Vuillamy
[](https://salesforceway.com/podcast/sfdx-hardis/){target=blank}
- Salesforce Developers Podcast Episode 182: SFDX-Hardis with Nicolas Vuillamy
[](https://developer.salesforce.com/podcast/2023/06/sfdx){target=blank}
### sfdx-hardis Usage
#### Features Overview
- sfdx-hardis 2025 new features overview
[](https://youtu.be/JRKH5COUVQ0){target=blank}
- SFDX-HARDIS – A demo with Nicolas Vuillamy from Cloudity
[](https://www.youtube.com/watch?v=qP6MaZUGzik){target=blank}
#### Installation & Setup
- Complete installation tutorial for sfdx-hardis - [📖 Documentation](https://sfdx-hardis.cloudity.com/installation/)
[](https://www.youtube.com/watch?v=LA8m-t7CjHA){target=blank}
#### CI/CD Workflows
- Complete CI/CD workflow for Salesforce projects - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-home/)
[](https://www.youtube.com/watch?v=zEYqTd2txU4){target=blank}
- How to start a new task in sandbox - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-create-new-task/)
[](https://www.youtube.com/watch?v=WOqssZwjPhw){target=blank}
- How to commit updates and create merge requests - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-publish-task/)
[](https://www.youtube.com/watch?v=Ik6whtflmfY){target=blank}
- How to resolve git merge conflicts in Visual Studio Code - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-validate-merge-request/)
[](https://www.youtube.com/watch?v=lz5OuKzvadQ){target=blank}
- How to install packages in your org - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-work-on-task-install-packages/)
[](https://www.youtube.com/watch?v=5-MgqoSLUls){target=blank}
- Configure CI server authentication to Salesforce orgs - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-setup-auth/)
[](https://www.youtube.com/watch?v=OzREUu5utVI){target=blank}
#### Monitoring
- How to configure monitoring for your Salesforce org - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-monitoring-config-home/)
[](https://www.youtube.com/watch?v=bcVdN0XItSc){target=blank}
#### Integrations
- Configure Slack integration for deployment notifications - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-setup-integration-slack/)
[](https://www.youtube.com/watch?v=se292ABGUmI){target=blank}
- How to create a Personal Access Token in GitLab - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-ci-cd-clone-repository/)
[](https://www.youtube.com/watch?v=9y5VmmYHuIg){target=blank}
#### Documentation
- How to generate AI-enhanced Salesforce project documentation - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-project-doc-generate/)
[](https://www.youtube.com/watch?v=ZrVPN3jp1Ac){target=blank}
- Host your documentation on Cloudflare free tier - [📖 Documentation](https://sfdx-hardis.cloudity.com/salesforce-project-doc-cloudflare/)
[](https://www.youtube.com/watch?v=AUipbKjgsDI){target=blank}
<!-- articles-videos.md end -->
## Contributing
<!-- contributing.md start -->
Everyone is welcome to contribute to sfdx-hardis (even juniors: we'll assist you !)
- Install Node.js ([recommended version](https://nodejs.org/en/))
- Install typescript by running `npm install typescript --global`
- Install yarn by running `npm install yarn --global`
- Install Salesforce DX by running `npm install @salesforce/cli --global` command line
- Fork this repo and clone it (or just clone if you are an internal contributor)
- At the root of the repository:
- Run `yarn` to install dependencies
- Run `sf plugins link` to link the local sfdx-hardis to SFDX CLI
- Run `tsc --watch` to transpile typescript into js everytime you update a TS file
- Debug commands using `NODE_OPTIONS=--inspect-brk sf hardis:somecommand -someparameter somevalue`
<!-- contributing.md end -->
## Dependencies
**sfdx-hardis** partially relies on the following SFDX Open-Source packages
- [Salesforce Data Move Utility](https://github.com/forcedotcom/SFDX-Data-Move-Utility)
- [SFDX Git Delta](https://github.com/scolladon/sfdx-git-delta)
- [Texei Sfdx Plugin](https://github.com/texei/texei-sfdx-plugin)
## Contributors
<!-- contributors.md start -->
### Organization
sfdx-hardis is primarily led by Nicolas Vuillamy & [Cloudity](https://www.cloudity.com/), but has many external contributors that we cant thank enough !
### Pull Requests Authors
<a href="https://github.com/hardisgroupcom/sfdx-hardis/graphs/contributors">
<img src="https://contrib.rocks/image?repo=hardisgroupcom/sfdx-hardis" />
</a>
### Special Thanks
- [Roman Hentschke](https://www.linkedin.com/in/derroman/), for building the BitBucket CI/CD integration
- [Leo Jokinen](https://www.linkedin.com/in/leojokinen/), for building the GitHub CI/CD integration
- [Mariia Pyvovarchuk](https://www.linkedin.com/in/mpyvo/), for her work about generating automations documentation
- [Matheus Delazeri](https://www.linkedin.com/in/matheus-delazeri-souza/), for the PDF output of documentation
- [Taha Basri](https://www.linkedin.com/in/tahabasri/), for his work about generating documentation of LWC
- [Anush Poudel](https://www.linkedin.com/in/anushpoudel/), for integrating sfdx-hardis with multiple LLMs using langchainJs
- [Sebastien Colladon](https://www.linkedin.com/in/sebastien-colladon/), for providing sfdx-git-delta which is highly used within sfdx-hardis
<!-- contributors.md end -->
## Commands
[**Read Online Documentation to see everything you can do with SFDX Hardis :)**](https://sfdx-hardis.cloudity.com)
<!-- commands -->