HeliosHELIOS DOCS

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:

OperationWhat it does
ListSee which database connections are available.
Introspect schemaRead tables, columns, types, primary keys, and foreign keys.
Run queryExecute 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

  1. Go to Integrations → Databases and add a connection.
  2. Give it an alias you'll recognize; agents see this name.
  3. Choose the engine and paste a connection string. Anything the driver understands — including SSL parameters — belongs in the string.
  4. 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

Last updated on