Currently in alpha. Sign up free. Expect a few rough edges.
Security and privacy

Your data stays in one place. Here is exactly who and what can touch it.

Everything on this page is true of the product today. The things we have not done yet are listed at the bottom, in the same words, so you never have to guess which is which. Last reviewed October 2026.

Where your data lives

Your data is on its own machine and in its own lake.

Each customer gets a dedicated deployment: a virtual machine (Firecracker on Fly.io, Virginia), its own database for bookkeeping, and its own prefix in object storage. No process, database or file is shared with another customer.

Everything is in the United States.

Machines and storage are in Virginia. Models run in US regions.

Encrypted in transit and at rest.

TLS everywhere. Storage, database volumes and backups are encrypted at rest by the providers. Nightly backups go to a second provider.

The keys you give us are sealed, and the key that opens them is not on the machine.

A connector's API key, a service account's key file, a database password, a webhook's signing secret, a Google sign-in's token: each is encrypted before it is kept, with a data key made for your company by a key management service (KMS) in our cloud account and stored only in its wrapped form beside the value. Opening one is a logged call to that service, and each machine makes it as a login of its own that the service lets open that company's keys and no other company's: a machine that is taken opens one company, never every one. The whole thing can be revoked for every machine at once. Your company's own database and its nightly backups hold only the sealed form; a database password or a backup file alone reads none of them. The form says so where you enter a key, and no key is ever shown again.

Nothing is overwritten.

Every version of every table is kept. A dropped table is hidden for a week before anything is removed, so a mistake, yours or an agent's, is a restore, not a loss.

Deleting takes seven days, and can be stopped.

An admin asks in Settings. Nothing is removed for seven days: every admin is emailed, everyone in it sees the day across the top of every screen, and any admin can keep the company until then. On the seventh day its machine, its database, its files and its organization in sign-in are deleted, after one last backup, which is kept. Our own tools refuse to delete a company any other way.

Who can see what

A key names the datasets it may use.

Each at Add rows only, Read, or Read and write. A key can be given masked access, which replaces names, emails, phones and addresses with stable stand-ins before the query runs. Revoke a key in one click.

The agent only does what your key allows.

Every statement, from a person or an agent, goes through a guard before it runs: it may read only the datasets the key can read, write only where the key is read-write, and never attach, install, export or change settings. There is no superuser path for the agent.

An admin can turn the agent off.

One switch under Settings. Off means the chat, the source builder and automatic fixes stop; syncs, queries, the inbox and exports keep working. Scoping the agent per person is by key today, not by a switch.

Live links are the one door without a sign-in, and they say so.

A live link is a secret URL that returns a query's current result as a file, so a spreadsheet can pull it. Anyone with the URL can fetch it. It reads with the access of the person who made it, every fetch is counted, and an admin or its maker can revoke it at once. The app says this where the link is made.

Every query, every agent step and every admin action is logged, with the key that did it.

Who, when, the SQL or the tool, rows, time, and for a model call the model and its cost. Admin actions too: keys, people and groups, sharing, plan changes, sources, tables deleted, a deletion asked or cancelled, and every company setting changed. Those are kept 90 days; queries and agent steps are kept for now, with no end set yet. An admin exports any of it at any time: Export on Settings, Activity, or ovs actions for CSV or Excel. Failed runs and quiet sources become cards you review; a fix runs only when you say so.

Our staff have no door into your data in the product.

There is no admin screen that opens a customer's data. Operations run through provisioning commands and logs. A two-person rule for any hands-on access is on the list below, not yet built.

What the model sees

The rule is simple: the model sees what a tool returned, and tools return only what your key can read.

Sent to the model
  • Table and column names and types, and the definitions and notes you saved
  • The SQL the agent wrote and the rows it got back, after the guard and after masking
  • The text of your conversation
  • A page or document you asked it to read
  • The first pages of a document kept in Files, when it suggests facts from it (not on Free)
Never sent
  • Keys, tokens, passwords or connection strings
  • Anything from another customer's data; the process only holds one customer's key
  • Other people's conversations
  • A file nobody asked it to read, beyond those first pages
Not used for training.

No model maker may train on what passes through; that is our contract with each one, and the model sees only what a tool returned (above).

One provider only, if you ask.

A company can ask that every model call for it go through one provider only. We set it at our desk, and the record of each call names the model that answered, so you can see it held.

Code the agent writes for you

When there is no built-in connector, the agent can write a small pipeline. It runs on a throwaway machine, not the one that answers your queries, and it cannot reach the internet except where you said.

No internet, except the addresses on the source.

A script runs in an empty network of its own, with one door: a proxy that allows only the hosts listed on that source. Anything else gets a refusal, and the run log shows every host it talked to. Private and internal addresses are refused everywhere, at save time and at every connection.

A Python model reaches only the hosts an admin names.

A model reaches nothing outside unless an admin lists the hosts it may reach, and then only those, through the same proxy, with every run's log saying what went where. Keys for those services are pasted once and never shown again. An agent's key can change a model's script, never its list.

No privileges, a time limit, a memory cap.

The script runs as an unprivileged user of its own for that run (two runs at the same moment are two users, so neither reads the other's environment or folder), with only its own secrets in its environment, none of ours. It is stopped at your plan's time limit. What it landed before that stays landed.

Rows land through the same door as every connector.

A script cannot write a table directly. It hands rows to us and they are appended, raw, to a table only your key controls. It can never touch our bookkeeping.

Honest limit: this isolation is enforced by our process inside your own virtual machine, not by the hosting provider outside it. The machine itself is isolated from every other customer by hardware virtualization; the script is isolated from the internet by us.

Who else touches it

ProviderWhat they hold
Fly.ioThe machines that run Overscore (Virginia). SOC 2 Type II.
TigrisYour data files, encrypted at rest, under your own prefix.
NeonYour account's bookkeeping, in a database and login of its own.
Cloudflare R2Nightly backups.
Model providersModel calls, US regions, no training.
ClerkSign-in: your email and organization. Never your data.
StripeBilling. Never your data.
CloudflareThis website, and a count of its visits: the page, the site that sent you, your country, browser and device, and how fast it loaded. No cookies.
Google FontsThe fonts on this website and in the app, which your browser fetches from Google. Google sees your IP address.

Not done yet

Written here so this page is never ahead of the product.

SOC 2, a third-party pen test, a signed data processing agreement.

We will do these when a customer needs them. Ask and we will tell you where we are.

Single sign-on with SAML.

Today sign-in is through Clerk with email or a social account.

Your own model contract.

The model layer can take a customer's own provider key, but there is no screen for it yet. Ask.

A two-person rule and a log for any staff access.

Written into our own rules; the tooling that enforces it is not built.

Per-customer encryption keys you hold.

The keys you give us are sealed under a KMS key of ours (above); your data files and database are encrypted at rest with the providers' keys. A key of your own, in your account, is not offered yet.

An end date for what is kept.

A deleted company's last backup, and the record of queries and agent steps, are kept with no end date yet. When each goes is not decided; this page will say it when it is.

Questions

Send us your security questionnaire. We answer every question in plain words, including the ones where the answer is not yet.