# Dex – Claude Code / Codex Skills for Analytics Engineering

> Source: <https://github.com/exmergo/dex>
> Published: 2026-07-17 16:31:59+00:00

**Built by Exmergo** · AI Agents for Your Data Stack.

Run these commands **inside Claude Code** one at a time

```
/plugin marketplace add exmergo/exmergo-agent-plugins
/plugin install dex@exmergo
```

Update later with `/plugin marketplace update exmergo`

. The skills appear as
`/dex:explore`

, `/dex:transform`

, and `/dex:maintain`

and auto-trigger on matching
intent.

Run this command in your terminal

```
npx skills install exmergo/dex
```

** dex is analytics engineering** for Claude Code and

**any agent**:

**data warehouse exploration**,

**dbt transformation** and

**semantic modeling**, and

**schema-drift maintenance** on dbt. Point it at your warehouse (or a local DuckDB file) and your dbt project; it learns the landscape, writes and refactors your dbt transformations and semantic models, and tells you what to fix when anything drifts. The dbt project is the source of truth; every change is a reviewable diff. Read-only against your data.

**It closes the gap a general coding agent still has**: agents re-learn the schema
each session, have no strategy for thousands of tables, are blind to warehouse
cost, will pull sensitive data into context, do not treat a dbt project as a
first-class object, and have no concept of a semantic model to keep coherent over
time. `dex`

owns exactly that loop.

**Explore. Transform. Maintain. (ETM)**

**Explore** an unfamiliar warehouse: rank what matters, profile selectively, infer and verify joins, answer ad-hoc questions with guarded SQL probes behind a PII-aware query firewall, persist a draft map. Fully read-only.

**Transform** the dbt project: author dbt models (staging to marts) with tests and docs, and the semantic layer on top (entities, dimensions, measures, metrics) as dbt semantic models (MetricFlow YAML), with a free Viz preview. Validated against a dev target, cost-guarded.

**Maintain** the project as it drifts: diff the warehouse and dbt against the last snapshot, surface schema, volume, grain, and definition drift ranked by blast radius, and propose edits.

On ADE-bench (75 analytics-engineering tasks: fix, build, and extend dbt
projects on DuckDB), `dex`

reaches **76% task resolution with Claude Sonnet 5**,
at **2.5x lower cost than Claude Fable 5**.

With `dex`

, accuracy clusters tightly across models (72-76%) while cost does not,
so you can run an inexpensive model and still get top-tier results. Full
methodology, per-model cost, and the raw `results.json`

for every run are in the
[benchmark README](/exmergo/dex/blob/main/benchmarks/ade_bench/README.md).

We publish these to be transparent, not to overclaim. A task-resolution score measures whether tests pass; it does not measure what matters most in practice: the experience of the human engineer working with the agent. Trust in a diff, clarity of the proposed change, cost surfaced before spend, and sensitive data kept out of context never show up in a pass rate. We optimize for that experience first and treat the benchmark as a floor, not the goal.

- Cloud warehouse:
**Snowflake**,** BigQuery**,** Databricks**,** Amazon Redshift**(Serverless-first). - Embedded analytical:
**DuckDB**. - Operational database:
**Postgres**.

Credentials are discovered, never asked for: BigQuery through Application
Default Credentials (`gcloud auth application-default login`

), Snowflake
through `connections.toml`

, `SNOWFLAKE_*`

env, or a dbt profile, Databricks
through the SDK's unified chain (`databricks auth login`

, `DATABRICKS_*`

env,
or a dbt profile), Redshift through the AWS credential chain (a pinned
Serverless workgroup mints IAM temporary database credentials) or `REDSHIFT_*`

env, Postgres through `pg_service.conf`

, `DATABASE_URL`

, the `PG*`

environment, or a dbt profile. Every scan is estimated and confirmed
before it spends, capped server-side (`maximum_bytes_billed`

on BigQuery; a
per-statement statement timeout on Snowflake, Databricks, Redshift, and
Postgres, whose budgets are warehouse-seconds with credits or DBUs alongside,
compute-seconds with RPU-hours alongside, and database-seconds respectively),
and recorded in a local spend ledger.

- Cloud warehouse:
**Microsoft Fabric**

`dex`

also bundles the `exmergo-dex-core`

Python package.

This is the reusable and agent-friendly package that contains all the core
explore, transform, and maintain logic. This also holds connectors and the
write logic for .dex/ which stores cache, snapshots, and query billing logs.

You can install it yourself in your projects:

```
pip install exmergo-dex-core
```

or

```
uv add exmergo-dex-core
```

More info in the package's `README.md`

- Cross-agent contract:
.`AGENTS.md`

- References (connectors, the contract, the canonical model, evaluation):
.`references/`

See [ CONTRIBUTING.md](/exmergo/dex/blob/main/CONTRIBUTING.md) for local setup, the Ruff lint and
format workflow, and the pre-commit hook. Every pull request into

`main`

must
pass the Lint workflow and CI before it can merge.Connect with the Analytics Engineering Community (Data Engineers welcome as well!) and discover how Exmergo brings AI Agents to Your Data Stack.

Apache-2.0.
