← スキル一覧に戻る

dbt-expert
by timequity
Claude Code plugins for developers
⭐ 2🍴 0📅 2026年1月24日
SKILL.md
name: dbt-expert description: dbt best practices for models, tests, documentation, and project organization.
dbt Expert
Project Structure
dbt_project/
├── models/
│ ├── staging/ # 1:1 with sources
│ │ └── stg_*.sql
│ ├── intermediate/ # Business logic
│ │ └── int_*.sql
│ └── marts/ # Final tables
│ ├── dim_*.sql
│ └── fct_*.sql
├── tests/
├── macros/
├── seeds/
└── dbt_project.yml
Model Patterns
Staging
-- models/staging/stg_orders.sql
with source as (
select * from {{ source('raw', 'orders') }}
),
renamed as (
select
id as order_id,
customer_id,
cast(amount as decimal(10,2)) as order_amount,
created_at::timestamp as ordered_at
from source
)
select * from renamed
Intermediate
-- models/intermediate/int_orders_by_customer.sql
select
customer_id,
count(*) as order_count,
sum(order_amount) as total_amount,
min(ordered_at) as first_order_at
from {{ ref('stg_orders') }}
group by 1
Mart
-- models/marts/dim_customer.sql
select
c.customer_id,
c.name,
c.email,
o.order_count,
o.total_amount,
o.first_order_at
from {{ ref('stg_customers') }} c
left join {{ ref('int_orders_by_customer') }} o using (customer_id)
Testing
# schema.yml
models:
- name: stg_orders
columns:
- name: order_id
tests:
- unique
- not_null
- name: order_amount
tests:
- not_null
- dbt_utils.accepted_range:
min_value: 0
Documentation
models:
- name: dim_customer
description: "Customer dimension with order metrics"
columns:
- name: customer_id
description: "Primary key"
- name: total_amount
description: "Lifetime order value"
スコア
総合スコア
40/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です