Master dbt (data build tool) for analytics engineering with model organization, testing, documentation, and incremental strategies. Use when building data transformations, creating data models, or implementing analytics engineering best practices.
48
52%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/data-engineering/skills/dbt-transformation-patterns/SKILL.mdQuality
Discovery
67%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description adequately identifies the domain and provides explicit trigger guidance via a 'Use when' clause, which is its strongest aspect. However, the capabilities listed are more categorical than concrete (e.g., 'model organization' rather than specific actions like 'write ref() macros' or 'configure incremental materializations'), and the trigger terms could be expanded to cover more natural user language variations around dbt usage.
Suggestions
Replace category-level terms with specific concrete actions, e.g., 'Writes dbt SQL models with ref() and source() macros, configures materializations (table, view, incremental, ephemeral), sets up schema tests and custom tests, generates documentation'.
Expand trigger terms in the 'Use when' clause to include natural variations like 'SQL models', 'dbt project', 'staging/marts layers', 'Jinja templating in SQL', 'schema.yml', or 'dbt run/test/build'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (dbt/analytics engineering) and mentions several areas (model organization, testing, documentation, incremental strategies), but these are more like categories than concrete actions. Compare to 'Extract text and tables from PDF files, fill forms, merge documents' — the description lacks that level of actionable specificity. | 2 / 3 |
Completeness | Clearly answers both 'what' (model organization, testing, documentation, incremental strategies) and 'when' with an explicit 'Use when...' clause covering data transformations, data models, and analytics engineering best practices. | 3 / 3 |
Trigger Term Quality | Includes relevant terms like 'dbt', 'data build tool', 'data transformations', 'data models', 'analytics engineering', but misses common variations users might say such as 'SQL models', 'ref()', 'dbt run', 'dbt test', 'staging models', 'marts', 'sources', 'YAML schema', or '.sql files'. | 2 / 3 |
Distinctiveness Conflict Risk | The dbt-specific terminology provides some distinctiveness, but phrases like 'data transformations' and 'data models' are broad enough to overlap with general SQL skills, ETL tools, or other data engineering skills. The 'analytics engineering' term helps but isn't sufficient to fully disambiguate. | 2 / 3 |
Total | 9 / 12 Passed |
Implementation
37%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill provides a reasonable structural overview of dbt project organization with useful naming conventions and a concrete project configuration file. However, it lacks executable SQL examples, dbt CLI commands, and any workflow with validation steps—critical gaps for a tool centered on build-test-deploy cycles. The content describes what to do conceptually but falls short on showing how to do it concretely.
Suggestions
Add executable SQL examples for each model layer (staging, intermediate, marts) including at least one incremental model pattern with the is_incremental() block
Include a clear multi-step workflow with dbt commands: dbt run, dbt test, dbt build, with validation checkpoints (e.g., 'Run dbt test after each model change; fix failures before proceeding')
Add concrete test definitions in YAML (schema tests) and show a generic test example, rather than just listing 'not null, unique, relationships' as bullet points
Remove the 'When to Use This Skill' section and trim the Do's/Don'ts to only non-obvious guidance to improve conciseness
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The content is mostly efficient but includes some unnecessary sections like 'When to Use This Skill' (Claude can infer this) and the Do's/Don'ts section which restates common knowledge. The naming conventions table and project structure are useful but the overall content could be tightened. | 2 / 3 |
Actionability | The dbt_project.yml is concrete and copy-paste ready, and the project structure is helpful. However, there are no actual SQL model examples (e.g., a staging model, an incremental model, a mart model), no executable dbt commands, and the 'Detailed patterns' section defers to a reference file. The skill describes patterns more than it provides executable guidance. | 2 / 3 |
Workflow Clarity | There is no clear multi-step workflow for building or running dbt models. No dbt commands (dbt run, dbt test, dbt build) are shown, no validation checkpoints are provided, and there's no sequence for how to go from project setup to tested, deployed models. For a tool that involves build-test-deploy cycles, this is a significant gap. | 1 / 3 |
Progressive Disclosure | The skill references 'references/details.md' for detailed patterns, which is a reasonable structure. However, no bundle files are provided, so the reference is unverifiable. The main file itself mixes overview content with moderate detail (full project.yml, full directory tree) that could be better balanced. | 2 / 3 |
Total | 7 / 12 Passed |
Validation
100%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
cf6059d
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.