Template name
Ask an eve agent about dbt models and data from Slack, using local DuckDB or MotherDuck with constrained SQL queries.

Build a Slack assistant that answers questions about your data using the documentation you already maintain in dbt. This eve template reads model definitions before querying local DuckDB or MotherDuck, with Jaffle Shop customers, orders, and payments as a working example.
The agent can list exposed models, read their documentation, and run constrained SQL queries. dbt supplies descriptions, model SQL, and authored definitions for joins and metrics through a generated catalog.
Ask how customer lifetime totals are calculated or request payment totals by month. The sample covers January–April 2018; it is historical data, not a live business dashboard.
Local setup requires Node.js 24 or newer, pnpm 12, uv, and model credentials. Build the sample data with pnpm data:build, then follow the setup guide to connect an authenticated terminal session or Slack.
Slack access requires explicit workspace, user, and conversation allowlists. Everyone admitted shares one warehouse identity, and replies are visible to others in the conversation. There are no per-user warehouse permissions, so use only conversations appropriate for the entire exposed dataset.
Replace the example dbt project and tag the tables you want to expose. Rebuild the catalog alongside the data; it does not refresh automatically.
For deployment, prepare the models in MotherDuck and configure a Read Scaling token rather than writer credentials. Switching the connection does not upload a local DuckDB database.
Queries are limited to read-only statements against exposed models, with capped results. These limits do not cap warehouse scans or spending. This template is not a general-purpose SQL sandbox or production access-control platform. See the query policy and deployment guide before connecting company data.