
Sf Deploy
Apply Salesforce deployment patterns—scratch org definitions, feature flags, and metadata push flows—when shipping changes to orgs safely.
Install
npx skills add https://github.com/clientell-ai/salesforce-skills --skill sf-deployWhat is this skill?
- Complete project-scratch-def.json template with editions, features, and nested settings blocks
- Scratch org feature catalog spanning Service Cloud, Communities, Omni-Channel, and API enablement
- Security, chatter, communities, case, path, and opportunity settings presets for realistic orgs
- Object-level sharing model examples for Opportunity and Case in scratch definitions
- Deployment patterns reference for Salesforce CLI–style promote workflows
Adoption & trust: 1 installs on skills.sh; 7 GitHub stars; 3/3 security scanners passed (skills.sh audits); trending (+100% hot-view momentum).
Recommended Skills
Journey fit
Canonical shelf is Ship because the content is deployment and org provisioning reference used when promoting metadata, not when ideating features. Launch under Ship matches release-oriented Salesforce deploy steps (scratch defs, org shape, push patterns) rather than day-two monitoring.
Common Questions / FAQ
Is Sf Deploy safe to install?
skills.sh reports 3 of 3 security scanners passed. Review the Security Audits panel on this page before installing in production.
SKILL.md
READMESKILL.md - Sf Deploy
# Salesforce Deployment Patterns Reference ## 1. Scratch Org Definition File ### Complete project-scratch-def.json Template ```json { "orgName": "My Scratch Org", "edition": "Enterprise", "description": "Scratch org for feature development", "hasSampleData": false, "language": "en_US", "country": "US", "features": [ "EnableSetPasswordInApi", "Communities", "ServiceCloud", "SalesCloud", "StateAndCountryPicklist", "PersonAccounts", "MultiCurrency", "AuthorApex", "API", "LightningSalesConsole", "LightningServiceConsole", "ContactsToMultipleAccounts" ], "settings": { "lightningExperienceSettings": { "enableS1DesktopEnabled": true }, "mobileSettings": { "enableS1EncryptedStoragePref2": false }, "securitySettings": { "sessionSettings": { "forceRelogin": false }, "passwordPolicies": { "enableSetPasswordInApi": true } }, "chatterSettings": { "enableChatter": true }, "communitiesSettings": { "enableNetworksEnabled": true }, "omniChannelSettings": { "enableOmniChannel": true }, "caseSettings": { "systemUserEmail": "admin@example.com" }, "pathAssistantSettings": { "pathAssistantEnabled": true }, "opportunitySettings": { "enableOpportunityTeam": true } }, "objectSettings": { "opportunity": { "sharingModel": "Private" }, "case": { "sharingModel": "Private" } } } ``` --- ## 2. Scratch Org Lifecycle ### Create Scratch Org ```bash # Basic creation sf org create scratch -f config/project-scratch-def.json -a my-scratch -d -y 30 # With specific Dev Hub sf org create scratch -f config/project-scratch-def.json -a my-scratch -v MyDevHub -y 7 # Options # -a : alias # -d : set as default org # -y : duration in days (1-30) # -v : target Dev Hub # -w : wait time in minutes ``` ### Push/Pull Source ```bash # Push source to scratch org sf project deploy start # Pull changes from scratch org sf project retrieve start # With conflict detection sf project deploy start --ignore-conflicts ``` ### Delete Scratch Org ```bash sf org delete scratch -o my-scratch -p # -p : no prompt for confirmation ``` ### Org Shape ```bash # Create shape from a source org (sandbox or production) sf org create shape -o SourceOrgAlias # List available shapes sf org list shape # Create scratch org from shape sf org create scratch -f config/project-scratch-def.json -a shaped-scratch --source-org SourceOrgAlias ``` ### Snapshot Orgs ```bash # Create snapshot from scratch org sf org create snapshot -o MyScratchOrg -n MySnapshot -d "Baseline config snapshot" # Create scratch org from snapshot sf org create scratch --snapshot MySnapshot -a from-snapshot -y 7 # List snapshots sf org list snapshot # Delete snapshot sf org delete snapshot -s MySnapshot ``` --- ## 3. Unlocked Package Lifecycle ### sfdx-project.json with Packages ```json { "packageDirectories": [ { "path": "force-app/main/default", "default": true, "package": "MyUnlockedPackage", "versionName": "Spring Release", "versionNumber": "1.2.0.NEXT", "versionDescription": "Spring feature release", "dependencies": [ { "package": "DependencyPackage", "versionNumber": "2.0.0.LATEST" }, { "package": "04t000000000000AAA" } ] }, { "path": "force-app/unpackaged", "default": false } ], "namespace": "", "sfdcLoginUrl": "https://login.salesforce.com", "sourceApiVersion": "60.0", "packageAliases": { "MyUnlockedPackage": "0Ho000000000000AAA", "MyUnlockedPackage@1.0.0-1": "04t000000000000AAA", "MyUnlockedPackage@1.1.0-1": "04t000000000001AAA", "DependencyPackage": "0Ho000000000001AAA", "DependencyPackage@2.0.0-1": "04t000000000002AAA" } } ``` ### Create Package ```bash sf package create -n MyUnlocked