dx-project-create
Creating 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
This skill scaffolds every template the CLI offers, including React/Angular UI-bundle apps — creating a project is a core capability and shouldn't require installing a separate plugin just to pick a template. (Once the project exists, the experience-ui-bundle-* skills own building it out — pages, components, styling, deploy — but the initial scaffold happens right here, whether or not that plugin is installed.)
Read the template set live from the CLI — never hardcode it, because Salesforce adds templates over time and a baked-in list goes stale:
sf template generate project --help
Parse the -t, --template=<option> line's <options: a|b|c|…> list — those pipe-separated names are the authoritative template set. As of writing the CLI offers eight, all scaffolded here: standard, empty, analytics, agent, plus the UI-bundle set reactinternalapp, reactexternalapp, angularinternalapp, angularexternalapp (React/Angular × internal/external audience). Treat the live parse as the source of truth; the list here is only a fallback if the parse fails.
Intent shortcut first. Take the shortcut only when the request fully resolves to exactly one template. Anything with a missing choice goes to the picker so it can ask — never guess. Resolve {template} directly when: