Ship at agent speed.
Without agent-speed
bugs.
AI coding tools write backends faster than you can audit them. StealthQL is the runtime contract that fails the build before they ship an auth leak, a cross-tenant read, or a quiet over-share.
Things you rented. Dashboards you babysat.
Bills that arrived while you slept.
That era is over.
Six layers.
One portable object.
A capsule is the whole backend — schema, auth, policies, functions, storage, shares — compiled into a single artifact that lives in your repo. Clone it, run it, deploy it. The same object, everywhere.
When you clone the repo, the backend comes with it.
There is nothing else to set up.
Write. Run. Deploy.
The code is the backend. There is no other source of truth. Nothing to keep in sync.
Write
Your schema, rules, and functions live in files inside your project — alongside your frontend, in the same git history.
Run
A real backend boots on your laptop. Real Postgres, real auth, real data. Stored on your disk. No internet required.
npm run devDeploy
The same capsule runs in production — on StealthQL Cloud, or on your own servers. One command, one URL, real users.
stealthql deployFrom nothing to a live website.
StealthQL Managed is the default deploy. Click once. We do the rest. Your capsule, your data, our ops.
Install
Add the package to your project.
Build
Scaffold a capsule with secure defaults — or import from a CSV.
Deploy
Choose Managed. We provision the server, gate the deploy on policy + security tests, issue TLS.
Live
Capsule built. Gates passed. Server provisioned. TLS issued. Dashboard live. Share portal live.
Prefer to self-host? npx stealthql deploy --own-droplet writes the scripts and walks you through your own DigitalOcean (or Vercel + DO split). Same capsule, your infrastructure, $0.
Let the agent build it.
Make the runtime attack it.
Cursor, Claude Code, and Codex read the repo contract, propose schema and policy changes, then StealthQL generates the backend and the attack suite before the agent can call it done.
STEALTHQL_AGENT.mdstealth.schema.request.json — 4 tables, 2 actors, 1 sharestealthql schema previewstealthql schema apply --teststealth.schema.js — 4 tablesstealth.auth.js — actors + row-level rulesstealth.functions.js — Stripe webhook handlerstealth.shares.js — public invoice linkstealth.policy.test.js — 45 attack testsThe agent can still move fast. The difference is that auth leaks, cross-tenant reads, unsafe service-token writes, and accidental over-shares become failing tests instead of production incidents.
Make the runtime refuse the leak.
Build-time tests catch leaks the agent might write into your code. Runtime classification catches leaks the agent might send out of your code. Mark a field as aiReadable: false and StealthQL intercepts every outbound HTTP request to known LLM endpoints — refusing any payload that contains the marked field, writing every attempt to the ledger.
The agent-era thesis as a real feature, not a marketing claim. Mark a field, and the runtime refuses the request — at the wire, every time, with a record in the ledger.
Backends are no longer cloud projects.
They are portable objects.
The backend is portable.
Clone the repo and the backend comes with it: schema, policies, auth, functions, seeds, storage rules, test users — all of it.
The data is shareable.
Create a link to a table, row, file, or dashboard. Field-level visibility, expiration, revoke anytime. Across capsules, too.
The policies are attacked.
Every policy change generates security tests. If Bob can read Alice's invoice, the build fails. Your security is verified every time you save.
Production is replayable.
A bug happens. StealthQL reconstructs the data, actor, function call, policy decision, and side effects locally. No log archaeology.
The capsule is embeddable.
Same backend, same policy layer, on Tauri, Electron, and React Native. Sync between local and server is end-to-end-encrypted by the same primitive. The line between “app” and “backend” goes away.
The schema migrates itself.
Rename a column and the runtime writes the migration, updates the policies, and proves the old rules still hold. Migrations are everyone's worst experience. Inverted.
Delete the admin panel.
Share the table.
Clients, accountants, vendors, and ops teams can edit the slice you expose. Every change is validated, logged, and queued for approval. A spreadsheet is now a permissioned database interface.
Approve, reject, or merge with one click. Every change — applied or not — is logged forever in the event ledger.
Agent mistakes become failing tests.
Most backend leaks are small review misses: a route trusts a raw ID, a share exposes one field too many, or a service token writes user-supplied data. StealthQL turns those misses into runtime checks and generated tests.
Every row ships with an encrypted handle bound to the actor, the session, and the capsule itself. Knowing someone else's ID isn't enough. The handle can't be forged. On most backends, IDOR is "did anyone test for it?" Here it's "can you even break it?"
Even your service tokencan't be tricked.
The other classic backend leak isn't IDOR — it's the confused deputy. A logged-in user POSTs a body. Your route parses it. Then it calls a service client with full power and writes whatever the body said. The service token meant for cron jobs and Stripe webhooks just became a deputy for member-supplied data. npx stealthql test security fails CI on the exact route shape that allows this — body parse + createStealthServiceClient() + service.mutate() in the same handler.
Need to override (a Stripe webhook genuinely needs the service client and writes data sourced from a third-party body)? Add // stealthql-confused-deputy-ok: stripe webhook · verified signature with the reason. The escape-hatch is intentional, auditable, and lives in your git history alongside the route — not in a config file someone forgot to read.
Why did this row appear?
For any allowed read, the runtime can produce a sentence: which actor field matched which row field via which policy, with the rule's hash. For any refused read, it tells you what would have been needed. Devtools for policies — and the agent can debug its own decisions.
The agent that wrote the policy can debug why the policy refused a request. So can the human reviewing the PR. The policy stops being a black box.
Yesterday is a query.
The hash-chained ledger already holds every prior state of every row. We just gave you the verb. Ask for any moment in your backend's history and it answers in one query.
What did the dashboard look like before the bug? One query. Who saw what last Tuesday? One query.Time isn't a separate system anymore.
The capsule is also the evidence.
Generate an auditor-ready evidence bundle from the same capsule that enforces your backend. Map your tables to the controls they cover and StealthQL assembles a hash-chained record from the ledger — what was enforced, when, by which rule. The auditor still does the audit.
GraphQL solved 2015's frontend pain.
REST endpoint sprawl hurt frontend teams every sprint, so GraphQL spread from the bottom up. In 2026, the daily pain is different: agents are writing backend code faster than anyone can audit tenancy, field access, and service-token boundaries.
GraphQL made data fetching feel safe enough for humans. StealthQL makes backend generation safe enough for agents.
One repo. One package.
One deploy command.
Bring what you have. The migration paths are built in. The capsule absorbs the rest.
Your tables, rules, users, storage, and functions — into your repo in one command. npx stealthql import-supabase.
Your data, on your machine in dev, your server in production. Always yours.
Auth lives next to your data. Every policy is tested before you ship.
Local-first by default. Run the whole thing on your laptop, no internet required.
Free to build. Easy to ship.
The runtime is Apache 2.0 and free forever. StealthQL Studio is the proprietary dashboard that makes the capsule feel like a product: hosted by us, or licensed into your own walls.
Free
Open-source runtime only. Build locally, self-host on your own DigitalOcean Droplet or Vercel + DO split, fork the package, audit it line by line, and build your own admin if you want one.
StealthQL Managed
The default deploy. We host the runtime and Studio: capsule hash verified, policy and security tests gate the deploy, share portals live, deploy doctor, daily backups, TLS managed. Eject anytime.
Agency
Multiple client capsules, white-label portals, multi-app Studio dashboard, team access, extended audit retention. Built for the people building backends for other people.
Self-Hosted Studio
Run Studio in your VPC. Same dashboard, evidence mode, Agent WAF, replay, and deploy gates; your runtime and data stay inside your network. License key, updates while current.
Scale
Everything in Self-Hosted Studio plus dedicated support, SSO, compliance paperwork, signed BAA, custom SLAs, private networking, and multi-capsule federation.
Your backend runtime is yours forever. Studio is the dashboard that makes it operational: hosted by us for speed, self-hosted under license when your data cannot leave the building.
Open runtime. Proprietary Studio.
The package gets distribution because developers can install it anywhere. The dashboard is the paid product: the polished operating system for capsules, portals, evidence, replay, and agent-safe deploys.
stealthql runtime
Install it, fork it, audit it, ship it. Local dev and self-hosted production never require Studio.
npm install stealthqlStealthQL Studio
The dashboard, replay workbench, capsule templates, deploy center, evidence mode, and Agent WAF are proprietary. Free hosted tier, paid managed tiers, self-hosted license for regulated teams.
license.stealthql.comPrivate walls
Run Studio in your VPC, behind SSO, with offline grace. No redistribution or resale without a separate embedded/OEM agreement.
Self-Hosted Studio SiteThe things people ask before they install.
How does StealthQL help with AI-written backend code?
Is StealthQL a database, a backend, or a framework?
Can I still use SQL?
Where is my data stored?
Does my data go to GitHub when I push?
Can my customers edit data in Excel or Google Sheets?
Can I bootstrap the backend from an existing spreadsheet?
What about multi-region or global distribution?
What about point-in-time recovery?
What if StealthQL goes away?
What is open source, and what is paid?
Let the agent build it.
Make it prove it.
$npm install stealthqlSelf-host today on Apache 2.0.
Local runtime, generated attack tests, deploy when the gates pass.