
Salesforce DX Project Creator
OfficialFreeEasily scaffold new Salesforce DX projects from scratch.
Free · Opens the source repo
What Salesforce DX Project Creator does
The Salesforce DX Project Creator skill enables developers to quickly scaffold a new Salesforce DX project with minimal effort. It guides users through a structured wizard that allows them to select a project template, name the project, and generate the necessary files and directories. Once the project is created, the skill automatically relocates the user’s session into the new project directory, ensuring a seamless transition without losing context or conversation history. This is particularly useful for developers who need to set up multiple projects efficiently without manual setup steps.
After creating the project, users are prompted to authenticate their Salesforce organization, set it as the default for the project, and ensure that source tracking is enabled. This skill simplifies the initial setup process, allowing developers to focus on building their applications rather than getting bogged down in configuration details. The various project templates available cater to different development needs, including standard applications, analytics, and React-based applications.
This skill is ideal for Salesforce developers looking to streamline their project setup process. By automating the initial configuration steps, it reduces the time and effort required to get a new project off the ground. Additionally, the skill is designed to work with modern AI coding agents, making it a valuable tool for teams leveraging AI in their development workflows. Whether you are starting a new project or need to quickly create a development environment, this skill provides the necessary functionality to get you started efficiently.
When to use it
Use this skill when you need to create a new Salesforce DX project from scratch, especially when starting multiple projects.
When not to use it
This skill is not suitable for validating existing projects or managing scratch orgs within an already established project.
What you can build with it
Starting a New Project
When you need to quickly set up a new Salesforce DX project, this skill walks you through the entire process from template selection to org authentication.
Creating Multiple Projects
Use this skill to efficiently create multiple Salesforce projects in succession, reducing the setup time for each new project.
Automating Development Setup
Integrate this skill into your development workflow to automate the initial setup of Salesforce projects, allowing developers to focus on coding.
How to install Salesforce DX Project Creator
View source1. Install with the skills CLI
npx skills add forcedotcom/sf-skills/dx-project-create --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by forcedotcomCreating a New Salesforce Project
Walk the user through a wizard that scaffolds a new Salesforce DX project, relocates this session into the new project, connects it to an org, and configures it for development. Run each step in order, confirming with the user before any environment-changing action.
The salesforce-development plugin's MCP servers (salesforce-api-context, salesforce-metadata-experts, salesforce-lsp) are provided by the installed plugin, not by the project — so they stay available in the new project automatically once the session relocates. There is no per-project .mcp.json to copy.
Step 1: Choose a Project Template
Prompt the user to pick a template. Default to standard if they don't have a preference.
| Template | Use for |
|---|---|
standard (default) | General-purpose SFDX project with the conventional force-app layout |
empty | Bare project with minimal scaffolding |
analytics | CRM Analytics (Tableau CRM) development |
reactinternalapp | React-based internal app |
reactexternalapp | React-based external/experience app |
agent | Agentforce agent development |
Step 2: Choose a Project Name
Prompt the user for a project name. This becomes the new directory name, so it must be a valid directory name (no spaces or path separators).
Step 3: Generate the Project
Run in the current working directory:
sf project generate -t {template} -n {name}
This creates a new {name}/ directory under the current working directory.
Step 4: Relocate the Session Into the New Project
Modern Claude Code (v2.1.169+) can move the current session into the new directory in place — no new terminal, no relaunch, conversation history preserved. Tell the user to run:
/cd {name}
This relocates the session: the new directory's CLAUDE.md is loaded, project storage moves there (so --resume/--continue find it), and the cwd becomes the project root, so all remaining sf commands run as plain sf ... with no path prefix.
/cd is a client-side move: it fires no hook and gives you no turn, so the session goes quiet the instant they run it — expected, not a hang. But it also means the message in which you hand them /cd is your last word until they speak again, so that message MUST end with an affordance telling them how to resume. Close it with a line like:
Once you're in, just say "what's next" (or "connect an org") and I'll pick up from there.
Saying "what's next" re-engages this session and paints the position rail, which points at the next step (authenticating an org). Never imply the session will continue on its own after /cd — it won't.
When they re-engage, confirm the move in one short line (e.g. "You're in {name} now.") and continue to Step 5. Do not run sf-context detect or check-tools to "re-surface" the banner: detect invoked as a tool prints the raw hook JSON (not a rendered banner), and the plugin already surfaces the banner on its own — it shows the HEADLESS identity once per session (at the user's first Salesforce ask, at session start, or on their first orientation question), and paints the position rail whenever they ask "where am I" / "what's next". A dev-environment health check is available on demand via /salesforce-development:setup.
Fallback for older Claude Code (before v2.1.169): /cd reports Unknown command. In that case the user must relaunch in the new directory instead:
cd {name} && claude
The salesforce-development plugin is installed globally (via the marketplace), so a fresh session in the new directory loads it automatically and fires SessionStart — the banner and health check appear on their own, no manual sf-context calls needed. The remaining steps below then run from inside the project.
Step 5: Authenticate to an Org
Authenticate the org this project will deploy to:
sf org login web --alias {alias}
- Prompt the user for an
--aliasso later steps can reference the org by name. - For a sandbox, add
--instance-url https://test.salesforce.com. - For production, omit
--instance-url(defaults to login.salesforce.com).
If the user already has the org authenticated, skip the login and just collect the existing alias.
Step 6: Set as Default Org
Set the freshly authenticated org as the project's default target:
sf config set target-org {alias}
Step 7: Ensure Source Tracking Is Enabled
Check whether source tracking works against the org using a deploy preview (the lightest read-only source-tracking probe):
sf project deploy preview --target-org {alias} --json
If this fails with an error mentioning source tracking not supported or not enabled, offer to enable it:
sf org enable tracking --target-org {alias}
Confirm with the user before running the enable command.
Closing Message
Once all steps are complete, tell the user:
Your project is ready! Here's what was set up:
✅ Project generated: {name}/
✅ Session relocated into {name}/ (via /cd)
✅ Default org: {alias}
✅ Source tracking: enabled (or status)
You're already working inside the new project — this same session moved
here with /cd, so just keep going. Run /salesforce-development:setup
anytime to re-check your dev environment.
If the user took the older-version fallback (relaunched with cd {name} && claude instead of /cd), they're in a fresh session in the project and the SessionStart banner already walked them through the environment — point them to /salesforce-development:setup to re-check tools.
Rules
- Run the steps in order; confirm before any environment-changing action (login, set-default, enable tracking).
- The plugin's MCP servers come from the installed plugin, not the project — do NOT create or copy a
.mcp.jsoninto the new project (the plugin's config uses${CLAUDE_PLUGIN_ROOT}, which does not resolve in a project-level file). - Prefer
/cd {name}to relocate the session in place (Claude Code v2.1.169+) — a skill can't relocate the session on the user's behalf, so instruct the user to run it. Only fall back tocd {name} && claude(relaunch) when/cdreportsUnknown commandon an older build. - The message that hands the user
/cd {name}is your last turn until they speak again (/cdfires no hook), so it MUST end with a resume affordance — e.g. 'once you're in, just say "what's next".' Never promise the session will connect an org or continue on its own after/cd; it stays silent until the user re-engages. - After
/cd, do NOT runsf-context detectorcheck-toolsto "show" the banner —detectas a tool prints raw JSON, and the plugin surfaces the banner itself (once per session; the position rail on orientation questions). Just confirm the move in one line and continue. Health is available on demand via/salesforce-development:setup. - For sandbox login,
--instance-url https://test.salesforce.comis REQUIRED (the CLI default points at production). - NEVER store or display access tokens.
- For an EXISTING project that just needs tooling validated, use
platform-environment-validate(or/salesforce-development:setup); for org auth on an existing project, use/salesforce-development:login.
Frequently asked questions about Salesforce DX Project Creator
Similar skills
Rhino 3D Scripting
Streamline your Rhinoceros 3D scripting tasks.
MVVM Toolkit
Streamline ViewModel development with source generators.
FreeCAD Scripts
Generate Python scripts for FreeCAD automation and modeling.
Azure Architecture Builder
Design and deploy Azure infrastructure using natural language.
Command Development
Streamline your command creation for Claude Code.
Create Cowork Plugin
Easily build and package plugins through guided sessions.
