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.