Force1 turns your VSCode into a thin Salesforce client for the Force1 web app.
You connect a project, scan your org, and Force1 ships the metadata to the web
app where Force1 plans React + GraphQL features against your existing schema.
Force1 deliberately avoids Apex and LWC. Plans target the Salesforce React
Multiframework for UI and the Salesforce GraphQL UI API for data.
What this extension does
Pairs your VSCode workspace with a Force1 project via a vscode:// deep link
from the web app.
Runs a metadata scan via the sf CLI: custom objects, fields, validation
rules, Apex classes, triggers, flows, workflow rules, named credentials,
platform events, profiles, permission sets, and Lightning components.
Pushes the raw metadata to the Force1 web app, which caches it for
cheap planning runs.
Surfaces the project name and last-scan time in the activity bar.
What it doesn't do
By design, this extension does not generate Apex, Triggers, or LWC,
validate files, deploy, or run tests. Planning happens in the web app;
execution happens in your local Force1 agent session in a future release.
Requirements
VSCode 1.95 or later
An SFDX project open in your workspace (sfdx-project.json at the root)
The Salesforce CLI (sf) installed — the extension drives the OAuth login
for you the first time
A Force1 web app account at the URL configured in force1.webUrl
Getting started
Sign up at force1.app (or your self-hosted instance).
Create a project and click Connect VSCode.
Open the deep link in VSCode — the sidebar will show the connected project.
Click Connect Salesforce Org in the sidebar. The Salesforce login page
opens in your browser; the extension never sees your password — SFDX
stores the refresh token in its own keychain on your machine.
Click Scan Org. The first scan can take a minute.
Back in the web app, write a requirement and click Plan.
How org auth works (the safe part)
Force1 never sees your Salesforce credentials. The extension shells out to the
sf CLI for every Salesforce interaction:
Login runs sf org login web, which opens a browser to your Salesforce
login page. Salesforce returns OAuth tokens directly to the sf CLI on
your machine.
Scans run read-only SOQL queries via sf data query --target-org <alias>.
Only the resulting metadata payload (object/field names, classes, etc.) goes
to the Force1 web app — never the access token, refresh token, or password.
The org alias/username Force1 uses for this project is stored in
.claude/project.json in your workspace.
Commands
Command
What it does
Force1: Connect Salesforce Org
Pick or log into a Salesforce org for this project
Force1: Scan Org
Runs the metadata scan and pushes it to the web app
Force1: Sign in to Web App
Opens the web app in your browser
Force1: Open Web App
Opens the current project's page on the web app
Force1: Sign Out
Clears the stored Force1 API token (does NOT touch your SFDX auth)
Configuration
Setting
Default
Description
force1.webUrl
https://platform.force1.app
Base URL of the Force1 web app
Where state lives
API token: stored in VSCode's encrypted secrets storage (force1.apiToken).
Project pairing + last scan time: .claude/project.json in the workspace.
Latest raw metadata: .claude/raw-metadata.json in the workspace.