Connection Organization
Give every connection enough context that the right database is easy to spot before you touch it.
A connection can carry three independent pieces of context - Client, Project, and Environment - as well as its Server. Each is a first-class entity with its own color, icon, and safety policy, so the explorer can group connections around the question you are asking.
Clients
The top-level owner a connection belongs to.
Projects
A body of work grouping related databases.
Environments
Dev, staging, and prod variants of the same target.
What you can assign to each
Manage clients, projects, and environments in one place: the Manage Clients, Projects & Environments dialog. They share the same properties, from their basic identity to a set of query protections.
| Property | What it is |
|---|---|
| Name | The label. The only required field - everything else is optional. |
| Color | An optional #rrggbb color, typed as hex or picked from a color wheel, with a live preview swatch. It tints the entity's badges and group headers in the explorer and status bar. (There's no fixed preset palette - any color is fair game.) |
| Icon | An optional custom image - browse to or type the path of a png, jpg/jpeg, gif, svg, ico, bmp, or webp file. It's your own artwork; there's no built-in icon set to choose from. |
Query protections
The same nine safety toggles are available for every client, project, and environment. Most tighten safety; two deliberately relax a guard.
| Toggle | What it does |
|---|---|
| Production environment | Marks this as production: connections are read-only until you unlock writes for a timed window, and every data change asks for confirmation showing the exact SQL. (Seeded on for the built-in Production environment.) |
| Wrap execution in transaction + rollback | Wraps each batch in a transaction that rolls back automatically - a safety net that makes writes reviewable before they commit for real. |
| Block all but SELECT | Blocks INSERT, UPDATE, DELETE, and every other non-SELECT statement. |
| Require confirmation dialog before running | Asks for confirmation before running data-changing statements. |
| Require AI review for data changes | Requires an AI-generated review before any data-changing statement runs. |
| Allow unconstrained UPDATE relaxes | Permits an UPDATE with no WHERE without the extra confirmation that would otherwise fire. |
| Allow unconstrained DELETE relaxes | Permits a DELETE with no WHERE without the extra confirmation. |
| Require Touch ID to connect | Prompts for Touch ID before establishing the connection. |
| Require Touch ID for non-SELECT | Prompts for Touch ID before any non-SELECT statement runs. |

Switch how the explorer groups everything from the sidebar header (All / Client / Project / Environment / Server).
In this section
- Clients — Use clients as the top-level home for the connections that belong to the same customer or owner.
- Projects — Group related databases by the work they support, rather than hoping the server name tells the whole story.
- Environments — Make development, staging, and production unmistakable variants of the same target.
- Entra ID auth & Azure discovery — Sign in with Entra, find Azure SQL targets, and get a hand with firewall access when it is needed.
- TLS modes, CA & client certificates — Choose how PostgreSQL and MySQL connections encrypt, trust, and authenticate - from prefer to verify-full with your own certs.