An AI data analyst
that speaks SQL.

Upload any CSV, ask questions in plain English, and get instant answers with auto-generated SQL, charts, and KPI cards — streamed live as the model thinks.

Try the demo

Preloaded with Olist Brazilian E-Commerce — no upload required

Under the hood

12-stage query pipeline

Every query runs through a multi-step LLM orchestration pipeline with self-healing retries and token-level streaming.

01
Schema Resolution

Keyword-matched table filtering against column names, semantic types, and AI-generated descriptions.

02
Context Detection

Detects follow-up references, anaphora, and modification language from the last 3 conversation turns.

03
Ambiguity Check

Short-circuits with 2–3 clarifying options if the question has multiple valid SQL interpretations.

04
Query Planning

Classifies multi-step need; decomposes into ordered temp-table steps when chained aggregations are required.

05
SQL Generation

Streams DuckDB SQL with full schema, sample rows, join confidence hints, and business context injected.

06
Static Validation

Parses and validates every table/column reference against the actual schema before touching the database.

07
Execution

Validated SQL runs against a session-scoped DuckDB connection attached read-only to the dataset file.

08
Self-Healing Loop

Up to 3 retries — each pass feeds the failed SQL and all accumulated errors back for correction.

09
Failure Clarification

On exhausted retries, converts raw DuckDB errors into targeted user-facing questions instead of a stack trace.

10
Follow-Up Generation

Suggests 3 analytical follow-ups from different angles — filters, comparisons, trends — based on the result shape.

11
Complexity Scoring

Computed badge counting table joins, aggregation count, CTE and subquery presence, and retry depth per query.

12
Turn Persistence

Saves question + SQL + result columns to a sliding 3-turn window for downstream follow-up context.

Capabilities

Built for real data work

Features that signal analytics domain knowledge, not just an LLM wrapper.

Live SSE Streaming

Pipeline stages and explanation text stream token-by-token with a typewriter effect as Claude generates.

Self-Healing SQL

Failed queries retry up to 3× with the full error log fed back to Sonnet — hallucinated columns get corrected.

Ambiguity Detection

Checks for multiple valid interpretations before generating SQL and asks rather than guessing wrong.

Multi-Table Datasets

Upload N CSVs as one dataset. Relationships auto-detected by sampling _id column value overlap with confidence scoring.

Schema Viewer

Expandable context panel shows every table with row counts and column types — plus user-added business context hints injected into every query.

Session-Scoped Uploads

Datasets are tied to the browser session and cleaned up on tab close via sendBeacon — no orphaned files.