Readyset Docs

Advanced

Code Scan, Agents, and Guards. Less-used tools that sit behind the Advanced section of the sidebar.

Three tools live under Advanced in the sidebar. They are collapsed by default because most days you do not need them, not because they are unfinished.

Code Scan

Points at a directory and extracts the SQL your application generates.

The Code Scan screen

Supports SQLAlchemy and Django for Python, Prisma and Drizzle for TypeScript and JavaScript. Extraction is deterministic and does not need a database connection, so it works against a checkout on a laptop.

The value is seeing what your ORM actually produces. A .filter() chain that reads cleanly can compile to something with three joins and no usable index, and this is where that becomes visible. Extracted queries land in Queries with a risk score.

For running this in CI as a gate on pull requests, use rdst scan --check.

Agents

Scoped, read-only database access you can hand to something else: an internal tool, a support dashboard, an AI assistant.

The Agents screen

An agent is narrower than a database user. You define which tables it may see and what it may ask, and RDST enforces that. See Data Agents for the full model.

Guards

Policies about which queries are allowed to run.

The Guards screen

A guard is a rule: block sequential scans over this table, reject anything without a LIMIT, refuse a cross join between those two. They apply to agents and to generated queries, which is what makes handing out access reasonable in the first place.

Agents and Guards are about giving something else access to your database safely. If you are the only one using RDST, you can ignore both.