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
- Run /dbt-review-model. (from plugin-dbt-workbench )
- State a model's grain and match it to its unique key test. (from skill-dbt-model-review )
- Run /dbt-write-tests. (from plugin-dbt-workbench )
- Rank tests by the cost of the failure they prevent. (from skill-dbt-test-writer )
- 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 |
Did this solve your problem?
Run dbt model review and tests from the workbench plugin