creating-dbt-models

Solid

Creates dbt models following project conventions. Use when working with dbt models for: (1) Creating new models (any layer - discovers project's naming conventions first) (2) Task mentions "create", "build", "add", "write", "new", or "implement" with model, table, or SQL (3) Modifying existing model logic, columns, joins, or transformations (4) Implementing a model from schema.yml specs or expected output requirements Discovers project conventions before writing. Runs dbt build (not just compile) to verify.

AI & Automation 122 stars 10 forks Updated 1 months ago MIT

Install

View on GitHub

Quality Score: 82/100

Stars 20%
70
Recency 20%
75
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# dbt Model Development **Read before you write. Build after you write. Verify your output.** ## Critical Rules 1. **ALWAYS run `dbt build`** after creating/modifying models - compile is NOT enough 2. **ALWAYS verify output** after build using `dbt show` - don't assume success 3. **If build fails 3+ times**, stop and reassess your entire approach ## Workflow ### 1. Understand the Task Requirements - What columns are needed? List them explicitly. - What is the grain of the table (one row per what)? - What calculations or aggregations are required? ### 2. Discover Project Conventions ```bash cat dbt_project.yml find models/ -name "*.sql" | head -20 ``` Read 2-3 existing models to learn naming, config, and SQL patterns. ### 3. Find Similar Models ```bash # Find models with similar purpose find models/ -name "*agg*.sql" -o -name "*fct_*.sql" | head -5 ``` Learn from existing models: join types, aggregation patterns, NULL handling. ### 4. Check Upstream Data ```bash # Preview upstream data if needed dbt show --select <upstream_model> --limit 10 ``` ### 5. Write the Model Follow discovered conventions. Match the required columns exactly. ### 6. Compile (Syntax Check) ```bash dbt compile --select <model_name> ``` ### 7. BUILD - MANDATORY **This step is REQUIRED. Do NOT skip it.** ```bash dbt build --select <model_name> ``` If build fails: 1. Read the error carefully 2. Fix the specific issue 3. Run build again 4. **If fails 3+ times, step back and reassess appr...

Details

Author
AltimateAI
Repository
AltimateAI/data-engineering-skills
Created
7 months ago
Last Updated
1 months ago
Language
N/A
License
MIT

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category