DE//AGENT
Explore
Tutorial Lesson 7 of 10 · The Warehousing Series community intermediate

Run dbt model review and tests from the workbench plugin

Install the dbt Workbench plugin and drive one model change through its three commands: /dbt-review-model for the model review, /dbt-write-tests for a proposed test set, and /dbt-impact before you merge. Along the way you apply the same grain and blast-radius checks the plugin's underlying skills use, with the full-refresh guard watching destructive rebuilds.

At a glance

When Review and test generation for a dbt model should live in the agent, not memory; A model change needs a downstream impact check before merge
Where dbt
Why The workbench turns review, test generation, and impact checks into three commands instead of habits you have to remember.

Learning objectives

  • Run /dbt-review-model, /dbt-write-tests, and /dbt-impact on a model change
  • Read the review output against the model's grain and unique key
  • Rank the generated tests by blast radius before accepting them

What you need

  • A dbt project with a dev target in profiles.yml
  • [object Object]
  • A pull request or branch that changes a model

Steps

  1. Run /dbt-review-model. (from plugin-dbt-workbench )
  2. State a model's grain and match it to its unique key test. (from skill-dbt-model-review )
  3. Run /dbt-write-tests. (from plugin-dbt-workbench )
  4. Rank tests by the cost of the failure they prevent. (from skill-dbt-test-writer )
  5. Run /dbt-impact. (from plugin-dbt-workbench )

Check yourself

  • /dbt-review-model returns findings that reference the model's grain and materialisation.
  • /dbt-write-tests proposes tests ordered by blast radius, and /dbt-impact lists the downstream nodes.

Worked example

Install the dbt Workbench plugin — from plugin-dbt-workbench

amp plugin add de-agent/dbt-workbench

The three workbench commands in review order — from plugin-dbt-workbench

/dbt-review-model   # model review: grain + materialisation findings
/dbt-write-tests    # proposed test set, ranked by blast radius
/dbt-impact         # downstream nodes before you merge

Proposed test set ranked by blast radius in schema.yml — from skill-dbt-test-writer

models:
  - name: <model>
    columns:
      - name: <grain key>
        tests:
          - unique
          - not_null
      - name: <foreign key>
        tests:
          - relationships:
              to: ref('<dimension model>')
      - name: <enum column>
        tests:
          - accepted_values:
              values: [<allowed values>]

Sourced from

Security scan

Last sweep 2026-10-24: 0 finding(s), 0 marked as examples.

Common gotchas

  • The plugin holds warehouse credentials through the dbt profile — scope it to a dev target.
  • Late-arriving rows older than the watermark are silently dropped; keep the lookback window.
  • is_incremental() must guard the filter or every full run is a full reload.

Production considerations

  • The full-refresh guard hook blocks destructive rebuilds — leave it enabled.
  • The plugin runs with filesystem read-write and warehouse network access; review its permissions before installing.

Diagram

dbt workbench
   |
   |- /dbt-review-model --> grain + materialisation findings
   |
   |- /dbt-write-tests --> tests ranked by blast radius
   |
   |- /dbt-impact --> downstream nodes --> merge with guard hook on

Registry stats

Verification community · Oct 21, 2026
Completeness 81
Trust multiplier ×1.25
Composite 34.15 · adequate
Freshness 3 days since last source check
Difficulty intermediate
Version 0.1.0
License CC-BY-4.0
Security flags none