Documentation menu

Docs / Get started

Gauntlet documentation

Gauntlet is a distributed SQL database whose only durable store is one object-store bucket. These pages cover what works today, what is refused, and what is coming.

Pre-beta View Markdown

Gauntlet is a distributed SQL database. Its only durable store is one S3-compatible bucket. Nodes hold nothing you cannot lose: memory and local disk are caches, and a node that dies is replaced by starting another one against the same bucket.

Pre-beta. Gauntlet is pre-release software. Its own beta acceptance run (three hosts, node kills, 48–72 hours of load and a restore drill) has not passed yet. There is no public download; builds go to invited testers. Join the waitlist to be told when that changes.

#The short version

  • Transactions are strictly serializable, including transactions that span shards. A write is acknowledged only after the bucket holds what recovery needs.
  • SQL is the SQLite family. The engine is Turso. It is not PostgreSQL SQL.
  • Clients connect over the PostgreSQL wire protocol (psql, psycopg, node-postgres, pgjdbc) or over an HTTP JSON API.
  • One process type. gauntlet serve runs on each host and serves many named databases. Nodes find each other through leases in the bucket.
  • Idle databases cost only their bytes. A released database makes no bucket requests until its next query.

#Start here

Page Use it to
Quickstart Run one node, then three nodes on one bucket, and connect a client
Connect an agent Hand a coding agent an accurate, secret-free prompt
Transactions Learn the guarantee and the two error codes every client must handle
SQL compatibility See which SQL works and what is refused
Limits Know what pre-beta Gauntlet does not do before you rely on it

#Who it fits today

It fits you if all of these are true:

  • You can run three Linux x86_64 hosts and one bucket, and you are comfortable with TLS certificates, systemd or Docker, and Prometheus.
  • Your data can be reloaded or restored from your own backup. There is no in-place upgrade from the beta to v1.
  • Your application can retry a transaction on 40001 and can handle an unknown commit outcome (40003).
  • A SQLite-style dialect is acceptable, and you do not need PostgreSQL catalogs, extensions or an ORM's introspection queries.

It does not fit you if you need any of these today: production guarantees, PostgreSQL SQL, ALTER TABLE or CREATE INDEX, point-in-time restore, per-user roles, or storage that shrinks when you delete data. Most of those are on the roadmap.

#For agents and tooling

Every page has a Copy as Markdown button and a raw Markdown URL (add .md to the page's address). The whole documentation is indexed at /llms.txt and concatenated at /llms-full.txt. Both are generated from the same files as these pages.

Search runs in your browser over an index of these pages. No query leaves this site.