How do I give an LLM access to my database?
Register the source in code with connect(). The model never sees a connection string — it gets three read-only tools over typed sources, and policy decides which sources and fields it may touch.
Does connecting copy my data anywhere?
No. In-process sources never leave your machine. Private SQAI deployment sources keep credentials encrypted; rows are read on demand and never copied.
Is SQAI a sync, an export, or a third-party bridge to my database?
None of those. Connectivity is direct over the database's own wire protocol — SQAI deployment queries your data in place, scoped to your organization, and never copies your database.
Do I need an API key to connect data?
Not for files, in-memory rows, or SQLite — those run in-process with no key. Local compute uses the free sqai login device key. Live databases and warehouses need SQAI_DEPLOYMENT_URL, with SQAI_API_KEY only if your deployment requires auth.
Can the model see my credentials?
No. Credentials are supplied in your code at connect() time and encrypted in your SQAI deployment. The model’s tool input carries typed intent — no connection details, no policy fields.
Is Oracle supported without installing a client?
Yes. The SQAI runtime ships a bundled Thin-mode driver, so there is no Oracle client to install.
What happens when the underlying data changes?
The schema_revision pinned at connect time stops matching, and a replay surfaces schema_revision_mismatch instead of silently different numbers. Re-binding a registered name throws source_already_registered.