Security
Architecture
Soffi is a hosted service. Three places matter for a security review: your GitHub, Soffi's cloud, and your own environment. Soffi connects to the first two and doesn't need the third.
Your repository
Workspace
Data Twin
Pull requests
Handoff, ready for engineers and agents
- Frontend PRs with clear summaries and before and after images
- A backend spec with the exact endpoints and API scope to build
- A link to the live, collaborative preview of every change
Not needed by Soffi
Nothing here connects unless you add it.
- Production data and databases
- Backend services and APIs
- Env vars and secrets
- Identity and auth providers
- Cloud accounts and infrastructure
Your repository
Pull requests
Workspace
Data Twin
Handoff, ready for engineers and agents
- Frontend PRs with clear summaries and before and after images
- A backend spec with the exact endpoints and API scope to build
- A link to the live, collaborative preview of every change
Not needed by Soffi
Nothing here connects unless you add it.
- Production data and databases
- Backend services and APIs
- Env vars and secrets
- Identity and auth providers
- Cloud accounts and infrastructure
Your GitHub
Your code comes from GitHub, through the Soffi GitHub app, which an Admin installs on the repositories they choose. Soffi copies those repositories so it can run and edit your app, and everything people make in Soffi goes back as a branch and a pull request. Your team reviews it, your CI runs on it, and your team merges it. Soffi never merges and never deploys to production.
People can also link their own GitHub account, which lets the pull requests they Ship open under their name. The permissions each connection holds, and how to narrow or revoke them, are on the GitHub page.
Soffi's cloud
Everything else runs in Soffi's cloud: the Soffi app your team uses, Soffi the agent, and your app itself. Each Workspace runs your app in its own private, isolated environment, and one Workspace can't reach another. If your app uses a database, it runs inside that environment too, so every Workspace has its own. See Isolation. Soffi the agent works with AI models from third-party providers, covered in Data handling.
By default, previews don't reach your deployed backend. A Data Twin stands in for it with seed data, and your app's own sign-in is turned off in previews, so nobody needs production data or real customer accounts to work on a screen.
Soffi also connects to the tools an Admin chooses to connect: Linear or Jira for tickets, and Figma for designs. Soffi reads from them, and nothing in a Workspace changes your tickets or design files.
Your environment
Soffi doesn't need access to your environment: your production systems, your databases, your internal network. Nothing connects by default. There's nothing to install on your infrastructure, no agent to run, no network access to grant, and nothing for your on-call rotation to look after.
The one way a preview reaches a service of yours is if someone gives the Project a key or an address for it. Then the app in Soffi calls that service the way your app normally would, over the public internet. Keep that deliberate: use test-mode or read-only keys, as described in Environment variables and keys.