sfdx-hardis
Presented at Dreamforce 23 and Dreamforce 24!
Toolbox for Salesforce DX, by Cloudity & 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
- Backup Metadatas and monitor any Salesforce org
- Generate your project documentation, including AI-generated description and Flow Visual History
Please see the full list of commands in Online documentation
Watch sfdx-hardis 2025 new features :)
sfdx-hardis commands are also available with UI in SFDX Hardis Visual Studio Code Extension
See Dreamforce presentation
Installation
With IDE
You can install Visual Studio Code extension VsCode SFDX Hardis
Once installed, click on in VsCode left bar, and follow the additional installation instructions
As SFDX Plugin
Pre-requisites
- Install Node.js (recommended version)
- Install Salesforce DX by running
npm install @salesforce/cli --global
command line
Plugin installation
sf plugins install sfdx-hardis
For advanced use, please also install dependencies
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 (with latest @salesforce/cli version)
- hardisgroupcom/sfdx-hardis:latest-sfdx-recommended (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 (with latest @salesforce/cli version)
- ghcr.io/hardisgroupcom/sfdx-hardis:latest-sfdx-recommended (with recommended @salesforce/cli version, in case the latest version of @salesforce/cli is buggy)
See Dockerfile
Usage
sf hardis:<COMMAND> <OPTIONS>
Events
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
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, with Olga Shirikova
Wir Sind Ohana '24, Berlin
Automate the Monitoring of your Salesforce orgs with open-source tools only!, with Yosra Saidani
Polish Dreamin '24, Wroclaw, Poland
Easy and complete Salesforce CI/CD with open-source only!, with Wojciech Suwiński
French Touch Dreamin '23, Paris
Automate the Monitoring of your Salesforce orgs with open-source tools only!, with Maxime Guenego
Dreamforce 2023, San Francisco
Easy Salesforce CI/CD with open-source and clicks only thanks to sfdx-hardis!, with Jean-Pierre Rizzi
Yeur Dreamin' 2023, Brussels
An easy and complete Salesforce CI/CD release management with open-source only !, with Angélique Picoreau
Articles & Videos
Web Articles
Here are some articles about sfdx-hardis
- English
- French
Recorded Conferences
Dreamforce Sessions
- Dreamforce 2024 - Save the Day by Monitoring Your Org with Open-Source Tools (with Olga Shirikova)
- Dreamforce 2023 - Easy Salesforce CI/CD with open-source and clicks only thanks to sfdx-hardis! (with Jean-Pierre Rizzi)
Community Events
- Wir Sind Ohana 2024 - Automate the Monitoring of your Salesforce orgs with open-source tools only! (with Yosra Saidani)
Podcasts
- Apex Hours 2025 - Org monitoring with Grafana + AI generated doc
- Salesforce Way Podcast #102 - Sfdx-hardis with Nicolas Vuillamy
- Salesforce Developers Podcast Episode 182: SFDX-Hardis with Nicolas Vuillamy
sfdx-hardis Usage
Features Overview
- sfdx-hardis 2025 new features overview
- SFDX-HARDIS – A demo with Nicolas Vuillamy from Cloudity
Installation & Setup
- Complete installation tutorial for sfdx-hardis - 📖 Documentation
CI/CD Workflows
- Complete CI/CD workflow for Salesforce projects - 📖 Documentation
- How to start a new task in sandbox - 📖 Documentation
- How to commit updates and create merge requests - 📖 Documentation
- How to resolve git merge conflicts in Visual Studio Code - 📖 Documentation
- How to install packages in your org - 📖 Documentation
- Configure CI server authentication to Salesforce orgs - 📖 Documentation
Monitoring
- How to configure monitoring for your Salesforce org - 📖 Documentation
Integrations
- Configure Slack integration for deployment notifications - 📖 Documentation
- How to create a Personal Access Token in GitLab - 📖 Documentation
Documentation
- How to generate AI-enhanced Salesforce project documentation - 📖 Documentation
- Host your documentation on Cloudflare free tier - 📖 Documentation
Contributing
Everyone is welcome to contribute to sfdx-hardis (even juniors: we'll assist you !)
- Install Node.js (recommended version)
- 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
- Run
- Debug commands using
NODE_OPTIONS=--inspect-brk sf hardis:somecommand -someparameter somevalue
Dependencies
sfdx-hardis partially relies on the following SFDX Open-Source packages
Contributors
Organization
sfdx-hardis is primarily led by Nicolas Vuillamy & Cloudity, but has many external contributors that we cant thank enough !
Pull Requests Authors
Special Thanks
- Roman Hentschke, for building the BitBucket CI/CD integration
- Leo Jokinen, for building the GitHub CI/CD integration
- Mariia Pyvovarchuk, for her work about generating automations documentation
- Matheus Delazeri, for the PDF output of documentation
- Taha Basri, for his work about generating documentation of LWC
- Anush Poudel, for integrating sfdx-hardis with multiple LLMs using langchainJs
- Sebastien Colladon, for providing sfdx-git-delta which is highly used within sfdx-hardis
Commands
hardis:auth
Command | Title |
---|---|
hardis:auth:login |
hardis:cache
Command | Title |
---|---|
hardis:cache:clear |
hardis:config
Command | Title |
---|---|
hardis:config:get |
hardis:deploy
Command | Title |
---|---|
hardis:deploy:quick | |
hardis:deploy:start | |
hardis:deploy:validate |
hardis:doc
hardis:git
Command | Title |
---|---|
hardis:git:pull-requests:extract |
hardis:lint
Command | Title |
---|---|
hardis:lint:access | |
hardis:lint:metadatastatus | |
hardis:lint:missingattributes | |
hardis:lint:unusedmetadatas |
hardis:mdapi
Command | Title |
---|---|
hardis:mdapi:deploy |
hardis:misc
Command | Title |
---|---|
hardis:misc:custom-label-translations | |
hardis:misc:purge-references | |
hardis:misc:servicenow-report | |
hardis:misc:toml2csv |
hardis:org
hardis:package
Command | Title |
---|---|
hardis |
|
hardis |
|
hardis |
|
hardis |
|
hardis |
|
hardis |
hardis:packagexml
Command | Title |
---|---|
hardis:packagexml:append | |
hardis:packagexml:remove |
hardis:project
hardis:scratch
hardis:source
Command | Title |
---|---|
hardis:source:deploy | |
hardis:source:push | |
hardis:source:retrieve |
hardis:work
Command | Title |
---|---|
hardis:work:new | |
hardis:work:refresh | |
hardis:work:resetselection | |
hardis:work:save | |
hardis:work:ws |
hello:world
Command | Title |
---|---|
hello:world |