Agent Skill
2/7/2026dbt-ci
Use when generating GitHub Actions workflows for dbt, adding dbt build/test/docs steps, or configuring state-based selection with --select state:modified+. Provides templates for both full builds (CD) and incremental builds (CI).
D
datarecce
2GitHub Stars
1Views
npx skills add DataRecce/recce-claude-plugin
SKILL.md
| Name | dbt-ci |
| Description | Use when generating GitHub Actions workflows for dbt, adding dbt build/test/docs steps, or configuring state-based selection with --select state:modified+. Provides templates for both full builds (CD) and incremental builds (CI). |
name: dbt-ci description: > Use when generating GitHub Actions workflows for dbt, adding dbt build/test/docs steps, or configuring state-based selection with --select state:modified+. Provides templates for both full builds (CD) and incremental builds (CI).
dbt CI
GitHub Actions Steps
Full Build (CD / Production Baseline)
Use for production baseline workflows where you build everything:
If uv:
- name: Run dbt
run: |
uv run dbt deps
uv run dbt build --target {TARGET}
uv run dbt docs generate --target {TARGET}
If pip:
- name: Run dbt
run: |
source .venv/bin/activate
dbt deps
dbt build --target {TARGET}
dbt docs generate --target {TARGET}
Incremental Build (CI / Pull Requests)
Use --state for state-based selection when comparing against a baseline:
If uv:
- name: Run dbt (modified models only)
run: |
uv run dbt deps
uv run dbt build --target {TARGET} --select state:modified+ --state {STATE_PATH}
uv run dbt docs generate --target {TARGET} --select state:modified+ --state {STATE_PATH}
If pip:
- name: Run dbt (modified models only)
run: |
source .venv/bin/activate
dbt deps
dbt build --target {TARGET} --select state:modified+ --state {STATE_PATH}
dbt docs generate --target {TARGET} --select state:modified+ --state {STATE_PATH}
Variables
| Variable | Description | Example |
|---|---|---|
{TARGET} | dbt target/profile name | prod, ci, dev |
{STATE_PATH} | Path to baseline manifest for comparison | target-base |
State-Based Selection
state:modified- Only models with code changesstate:modified+- Modified models + downstream dependencies+state:modified+- Upstream + modified + downstream
Requires --state <path> pointing to a directory with baseline manifest.json.
Best Practices
- Use
state:modified+in CI to only rebuild what changed - Always run
dbt docs generateto create artifacts for comparison tools - Match
--targetto your profiles.yml environment (prod, ci, dev) - Ensure baseline manifest exists before using
--stateflag
Related Skills
- Use
python-uv-ciskill for Python/uv environment setup steps - Use
python-pip-ciskill for Python/pip environment setup steps - Use
recce-cloud-ciskill for Recce Cloud upload/download steps
Skills Info
Original Name:dbt-ciAuthor:datarecce
Download