Databases
Connect a database and agents can discover its schema and run read-only queries, optionally through an SSH tunnel.
Databases
Connect a database and your agents can explore it and answer questions from it — no ETL, no pre-built reports.
Three engines are supported: PostgreSQL, MySQL, and ClickHouse.
What an agent can do
An agent reaches your database through a dedicated tool with exactly three operations:
| Operation | What it does |
|---|---|
| List | See which database connections are available. |
| Introspect schema | Read tables, columns, types, primary keys, and foreign keys. |
| Run query | Execute a SELECT and read the rows back. |
Introspection is what makes this work without configuration. The agent discovers your schema, works out which tables answer the question, and writes the query itself.
Every Monday, query the production database for signups in the last 7 days
grouped by plan, compare against the prior week, and post the numbers to
#growth.Queries are read-only
This is enforced by Helios, not merely requested of the agent:
- Queries run inside a read-only transaction.
- A statement timeout (60 seconds by default) bounds how long any one query can run.
- A row limit (100 by default) bounds how much comes back.
An agent cannot write, update, delete, or drop through this tool.
Enforcement on the Helios side is a backstop, not your whole defence. Point Helios at a read-only role or a read replica — see database security.
Connecting
- Go to Integrations → Databases and add a connection.
- Give it an alias you'll recognize; agents see this name.
- Choose the engine and paste a connection string. Anything the driver understands — including SSL parameters — belongs in the string.
- Optionally configure an SSH tunnel.
The connection string, and any tunnel password or private key, are envelope-encrypted with AWS KMS. They are decrypted only when a query runs, and are never exposed to the agent.
Helios tests the connection on save, so you'll know immediately whether it works.
SSH tunnels
If your database isn't reachable from the internet, connect through a bastion host. Supply the tunnel's host and user, plus either a password or a private key. Helios opens a local port forward for the duration of the query.
Default ports are assumed when the connection string omits them: 5432 for PostgreSQL, 3306 for MySQL, 8443 for ClickHouse.
An SSH key that can reach your bastion can, by default, reach anything else the bastion can. Restrict
it with permitopen — see database security.
Access
Database connections belong to the organization that created them and are usable by its agents. They cannot be shared per-resource or restricted to a single project today, so connect only databases the organization as a whole should be able to query.
Next
- Database security — read-only roles, read replicas, bastion hardening.
- Sandboxes — how agents are isolated.
Last updated on
Google Sheets
The Google Sheets integration lets Helios agents search the Google Sheets API and call any endpoint to create spreadsheets, read and write data, and manage formatting.
Database Security Best Practices
How to safely expose databases to Helios agents via SSH bastions, scoped credentials, and read replicas