1. Install the CLI
2. Create the demo
Use a new directory outside an existing Dex project so the demo can create its own configuration.dex_demo.duckdb and .dex/config.yml. The warehouse has
seven tables and 29,512 rows. It refuses to replace an existing warehouse file.
3. Map the warehouse
data.objects for each table’s grain, candidate key, and findings, then
data.edges for the inferred joins. A candidate key is a measurement; a shared
column name alone is not proof of a join.
Every command prints a JSON envelope. Start with these fields:
4. Investigate the findings
order_item_id has duplicates, so it is not a valid grain. The
web_events.customer_id join also fails verification: its values do not match
the customer keys. These are intentional defects, not installation failures.
To ask a data question, use Dex’s query command:
See how a PII refusal works
See how a PII refusal works
Next steps
Connect your own data
Choose a connector, verify access, and set the scope for exploration.
Explore with your agent
Turn the map into a focused investigation and verify the joins it needs.