OverviewArchitectureRecipeSourceProcessorSinkContext Graph for AI
OverviewArchitectureRecipeSourceProcessorSinkContext Graph for AI

dbt

Extracts metadata from a dbt project's manifest.json, with optional column type enrichment from catalog.json. It emits model and source entities, plus lineage and ownership edges.

Usage

source:
  name: dbt
  scope: my-dbt-project
  config:
    manifest: target/manifest.json
    catalog: target/catalog.json

Configuration

KeyTypeDescriptionRequired
manifeststringPath to the dbt manifest.json file. Must be an existing file.Yes
catalogstringPath to the dbt catalog.json file. When set, column types are enriched with actual warehouse types.No

Output

Emits two entity types:

EntityURN pattern
modelurn:dbt:{scope}:model:{model_path}
sourceurn:dbt:{scope}:source:{source_path}

Notable model properties:

  • database, schema - where the model is built
  • materialization - table, view, incremental, etc.
  • sql_path - path to the model file in the project
  • language - model language, if set
  • tags, meta - dbt tags and meta, if set
  • columns - column name, description, and data type

Notable source properties:

  • database, schema, source_name
  • loader - the tool that loads the source, if set
  • tags, meta, columns

Edges

Edge typeFromTo
derived_frommodelmodel or source it depends on
owned_bymodeluser (from meta.owner)
owned_bysourceuser (from meta.owner)

Notes

Any dbt command (dbt run, dbt build, dbt compile) generates manifest.json. dbt docs generate creates catalog.json. This works with both dbt Core (local target/ artifacts) and dbt Cloud (download artifacts via the API or CI).

CSVElasticsearch
On this page
UsageConfigurationOutputEdgesNotes