sf-deploy

Deploy and validate Salesforce metadata using dependency-aware wave deployments and profile retrieval.

Updated Dec 1, 2025
One-click install
npx skills add https://github.com/jterratsdev/smart-deployment --skill sf-deploy-jterratsdev
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: sf-deploy
Source: https://github.com/jterratsdev/smart-deployment/tree/main/.setup-agents/skills/sf-deploy
Command: npx skills add https://github.com/jterratsdev/smart-deployment --skill sf-deploy-jterratsdev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @jterrats/profiler, @jterrats/smart-deployment.

What problem does it solve? Deploying Salesforce metadata manually often fails due to unresolved dependencies, incomplete profiles, and circular references, forcing teams to debug failed deployments wave by wave. ## Core Features & Use Cases - Complete Profile Retrieval: Retrieve profiles with all dependencies (Apex classes, objects, fields, flows) resolved automatically, and compare profiles across dev, QA, and production orgs. - Dependency-Aware Wave Deployment: Analyze metadata dependencies, generate optimized deployment waves respecting Salesforce limits, validate before deploying, and resume from the last successful wave after failures. - Use Case: A DevOps engineer needs to push a large metadata project to production. They retrieve complete profiles, analyze dependencies, validate the plan, deploy in ordered waves, and verify with Apex tests and post-deployment profile comparison. ## Quick Start Deploy my Salesforce project to the org aliased 'prod' using smart-deployment, validating first and running local tests afterward.

Frequently Asked Questions about sf-deploy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deploy Salesforce metadata in dependency order?▼

Run sf smart-deployment analyze to build the dependency graph and wave breakdown, then sf smart-deployment start --target-org <alias> to deploy in optimized waves. The plugin orders 78 metadata types and respects per-wave component limits.

How to retrieve complete Salesforce profiles with all dependencies?▼

Use sf profiler retrieve -o <alias> to fetch profiles with all dependencies like Apex classes, objects, fields, and flows resolved automatically. Add --from-project to use local metadata for roughly 10x faster retrieval.

How do I compare Salesforce profiles across multiple orgs?▼

Run sf profiler compare --sources "dev,qa,prod" to compare profiles across environments. You can export the result as an HTML matrix with --output-format html or as JSON for automation.

What happens when a Salesforce wave deployment fails midway?▼

Run sf smart-deployment resume --target-org <alias> to continue from the last successful wave without re-deploying completed components. The skill instructs reporting which components failed before escalating.

Why does sf plugins install fail for these community plugins?▼

Unsigned community plugins trigger an interactive confirmation prompt that blocks non-interactive execution. Use the --force flag with sf plugins install to bypass the prompt when installing @jterrats/profiler or @jterrats/smart-deployment.

What are the Salesforce deployment wave limits?▼

The plugin enforces a maximum of 300 components per wave, 200 custom metadata records per wave, and roughly 400-500 files per deployment. Validation catches limit violations before the actual deploy runs.