Installation
Install from npm
npm
npm install -g @sfdt/cliVerify the install:
sfdt versionRequirements
| Requirement | Notes |
|---|---|
Node.js >= 22.15.0 | Uses the built-in node:sqlite module, unflagged in Node 22.15+ |
Salesforce CLI (sf) | Installed and authenticated to your target orgs |
bash 4.0+ | macOS ships bash 3.2 — install a newer one with brew install bash |
jq 1.6+ | Required by several shell scripts |
Optional integrations:
| Tool | Enables |
|---|---|
| Claude Code CLI | AI features with the claude provider (default) |
| Gemini CLI | AI features with the gemini provider |
| Codex CLI | AI features with the openai provider |
GitHub CLI (gh) | PR creation during deployments |
AI is entirely optional. See AI Providers for setup, or skip it — every AI command degrades gracefully when AI is disabled.
Initialize a project
Run sfdt init once from your Salesforce DX project root. It walks you through an interactive
setup and creates the .sfdt/ configuration directory.
Change into your project
cd your-salesforce-projectRun the initializer
sfdt initIt asks for a project name, default org alias, coverage threshold, and whether to enable AI
(and which provider). It also scans your packageDirectories for Apex test classes
(*Test.cls) to populate test-config.json automatically.
Ignore local overrides
Add environment-specific overrides to your .gitignore:
echo '.sfdt/*.local.json' >> .gitignoreSee Configuration for the full schema of what sfdt init creates.
Updating
sfdt update # update to the latest version from npm
sfdt update --force # force the updateIf a self-update fails, sfdt prints an actionable error with a manual retry command (typically
npm install -g @sfdt/cli@latest).
Install from source
For development or to track main:
git clone https://github.com/scoobydrew83/sfdt.git
cd sfdt
npm install
npm link # makes `sfdt` available globally from your checkout
npm run build:gui # build the web dashboard (see the Web Dashboard page)
npm test
npm run lintAfter npm link, the sfdt command points to your local checkout.
Shell completion
Print a completion script for your shell and source it from your profile:
bash
sfdt completion bash >> ~/.bashrc