Skip to content

Getting started

From an empty account to monitored tables and the first analysis pass. Each section links to deeper pages where needed.

Diagram: a top row of five setup steps you run — sign in to the web UI, register an agent, add database credentials through the agent CLI, run the agent process, then analyze the connection and accept tables. Below, an 'on accept' arrow leads into a lane of six stages AIMO runs automatically on its own workers from the agent's aggregates: deeper analysis, time blocks, monitor definitions, monitor values, an outlier model, and past alerts.
Two halves of onboarding: steps 1–5 are yours to run once; everything in the lower lane happens automatically once you accept tables, on AIMO workers, using the agent's aggregates rather than raw rows.

The diagram above maps the whole page. The top row is the one-time setup you drive from the web UI and the agent CLI. The moment you accept tables, AIMO takes over the lower lane — a fixed pipeline that builds monitors and learns what "normal" looks like, entirely from aggregates the agent produced. You never hand raw data to the cloud to make this happen.

1. Sign up and sign in

Create an account and sign in to the web UI. You need an active session before you can register agents and work with connections.

2. Register an agent

In the web UI, open Add agent, choose Register via agent, and follow the steps. You receive a registration token and commands to run the agent CLI in your environment so the agent can authenticate to AIMO.

For keys, tokens, and what is written on disk, see Registration.

3. Add database credentials with the agent CLI

Credentials are added through the agent, not in the browser. After registration, the register command usually writes a helper script aimo_agent.sh next to your agent data (for example the directory you mount as /app/data in Docker). The script sets AIMO_AGENT_UUID, AIMO_AGENT_PRIVATE_KEY_B64, AIMO_AGENT_PASSPHRASE, AIMO_AGENT_HOST, and AIMO_AGENT_USE_TLS, runs the agent image, and forwards CLI arguments—you do not need to set those variables by hand for routine use.

From the same directory as aimo_agent.sh:

bash
chmod +x aimo_agent.sh   # once
./aimo_agent.sh add      # interactive: name, database type, secrets; tests, then stores via the API

Use the same wrapper for list, test, edit, and delete.

If you install the agent package directly (not Docker), use python -m aimo.agent.cli with the same subcommands and environment—see Agent CLI.

Supported databases

The agent connects through SQLAlchemy and ships first-class support for PostgreSQL (including Databricks Lakebase), MySQL, Microsoft SQL Server, Snowflake, BigQuery, Databricks, Amazon Redshift, DuckDB, and SQLite. Each accepts either individual fields (host, user, …) or a complete SQLAlchemy URL. Use read-only credentials—see Security.

Keep the agent process running when jobs should run against your data (for example ./aimo_agent.sh start). See Operations and Registration.

4. Analyze the connection in the web UI

Open the connection you added via the CLI and run analyze so AIMO can inspect metadata and structure before you choose tables.

5. Choose tables and accept

Select tables to onboard, then accept. AIMO assigns monitor definitions for those tables; you do not pick individual monitor types in the UI. See Monitors.

After you accept

AIMO runs an automated pipeline on the selected tables, typically in this order:

  1. Deeper table analysis — columns, types, relationships, and patterns relevant to monitoring
  2. Time blocks and dimensions — expressions so monitors aggregate consistently over time
  3. Monitor definitions — generated, typed monitors for your tables
  4. Monitor values — historical values for the new monitors over the product’s window
  5. Outlier model — trained on monitor series; likelihood scores for new points
  6. Past alerts — materialized on historical data where the product supports it

Timing and progress depend on deployment and data size. See Monitors and Outlier detection.

See the product site for pricing and positioning.