Security and your data
Ravenflows is built to run in your company's own cloud. The parts that touch your code, screenshots, conversations and keys live in your accounts. We run the small part that signs people in and sends them to the right place.
Who runs what
In your cloud
- The gateway
- A small always-on service in your Railway account. It keeps your conversations, check details, tasks and the full audit, backed up every few seconds to your own bucket.
- Your data
- Screenshots, recordings, reports and the design pictures stay in your Google Cloud bucket. People see them through links that expire after 15 minutes.
- Test machines
- They run in your Google Cloud project with no public address. They start when someone checks a screen and stop themselves when idle.
- Your Claude key
- Your key, test settings and other tokens go straight into your own Secret Manager. We can write them; we cannot read them back.
Run by us
- Sign-in
- Sign in with Google, and your company's own address (yourcompany.ravenflows.app).
- Routing
- We pass requests between people's browsers and your gateway, checking their role on every request, without keeping what passes through.
- Setup
- The guided setup, the setup script for your Google Cloud, and starting and stopping your test machines.
What we store
- Accounts: name and email from your sign-in.
- Workspaces, their apps, members and roles.
- The outline of each journey map: screen names, sections and how they link. No pictures.
- Check summaries: how many tests passed or failed per screen. No logs or screenshots.
- References to the secrets in your cloud, never their values.
- One credential: the Railway project token that updates your gateway, encrypted with a key that never leaves Google Cloud KMS.
- Our audit log: who did what, and when.
What we never store
- Your designs or design pictures.
- Your code.
- Screenshots, recordings, test logs or reports.
- Conversations with the assistant.
- Your Claude key, tokens or test settings.
Figma access, honestly
Reading your design file needs a Figma access that lasts. That lasting access goes straight into your own secret storage; we never store it. We keep only a fingerprint of it, so we can tell it apart from any other.
Figma's short-lived access has to be renewed with our Figma app's key, which only we hold. So before each read, your gateway sends the lasting access to us; we add our app's key, ask Figma for a fresh short-lived access and hand it back. Nothing of that exchange is kept or logged. The lasting access passes through our server's memory only: when you connect Figma, and at each renewal.
You can cut access at any time, without us:
- In Figma: Settings, Connected apps, remove Ravenflows.
- In your cloud: turn off the secret in Secret Manager.
- In Ravenflows: Disconnect in Settings, Connections.
Google Cloud without keys
Your Google Cloud is connected through Workload Identity Federation: Google trusts short-lived tokens we sign for your workspace only, and no service-account key is ever created. You run one setup script you can read first; it grants narrow, named permissions inside a prefix and a zone.
- We cannot read your secrets, screenshots or database backups. Only your test machines and your gateway can.
- Every action we take shows in your own Cloud Audit Logs.
- Test machines have no public address and accept no incoming connections.
- Delete the identity provider in your project and our access ends at once.
Your code
- The GitHub App is installed only on the repositories you pick.
- It cannot change CI workflows. It works on its own branches, and a GitHub ruleset you add holds it to them.
- Each job gets a one-hour token for one repository.
- Changes arrive as pull requests. Your developers merge, or not.
Open source
The apps (the control plane, the gateway and the test-machine runner) are licensed under AGPL-3.0. The connector kit and the connectors are licensed under Apache-2.0, so anyone can build one. The public repository is coming.
Report a vulnerability
Email support@ravenflows.app with "Security" in the subject, the details and the steps to reproduce. Please do not open a public issue. We acknowledge within 3 working days and tell you when the fix is released.