running-dbt-commands
dbt CLIコマンドを適切にフォーマットして実行し、正しいdbt実行ファイルの選択やコマンドパラメータの構造化を行います。モデルの実行、テスト、ビルド、コンパイル、またはdbt CLIを通じたクエリ表示を行う際に使用します。使用すべきdbt実行ファイルやコマンドパラメータの書き方が不明な場合にも活用できます。
description の原文を見る
Formats and executes dbt CLI commands, selects the correct dbt executable, and structures command parameters. Use when running models, tests, builds, compiles, or show queries via dbt CLI. Use when unsure which dbt executable to use or how to format command parameters.
SKILL.md 本文
dbt コマンドの実行
推奨事項
- 利用可能な場合は MCP ツールを使用 (
dbt_build,dbt_run,dbt_showなど) - パス、タイムアウト、フォーマットを自動で処理します - ユーザーが「run」と言った場合でも常に
buildを使用 - ユーザーがモデルを「実行」するよう求めている場合、代わりにdbt buildを推奨してください。build=run+testを1ステップで実行するため、データ品質の問題をすぐに検出できます。dbt runだけでは開発中はほぼ正解ではありません。 - 常に
--quietを使用 して--warn-error-options '{"error": ["NoNodesForSelectionCriteria"]}'と共に使う - 出力を削減しながらセレクタのタイプミスを検出します - 常に
--selectを使用 - ユーザーの明示的な承認なしにプロジェクト全体を実行しません
クイックリファレンス
# 標準的なコマンドパターン
dbt build --select my_model --quiet --warn-error-options '{"error": ["NoNodesForSelectionCriteria"]}'
# モデルの出力をプレビュー
dbt show --select my_model --limit 10
# インライン SQL クエリを実行
dbt show --inline "select * from {{ ref('orders') }}" --limit 5
# 変数付き (複数の場合は JSON フォーマット)
dbt build --select my_model --vars '{"key": "value"}'
# インクリメンタルモデルの完全更新
dbt build --select my_model --full-refresh
# 実行前にリソースをリスト表示
dbt list --select my_model+ --resource-type model
dbt CLI フレーバー
3 つの CLI が存在します。不明な場合はユーザーに確認してください。
| フレーバー | 場所 | 備考 |
|---|---|---|
| dbt Core | Python venv | pip show dbt-core または uv pip show dbt-core |
| dbt Fusion | ~/.local/bin/dbt または dbtf | より高速で SQL 認識能力が強い |
| dbt Cloud CLI | ~/.local/bin/dbt | Go ベース、プラットフォーム上で実行 |
一般的なセットアップ: venv 内の Core + ~/.local/bin の Fusion。dbt を実行すると Core を使用します。Fusion の場合は dbtf または ~/.local/bin/dbt を使用してください。
セレクタ
常にセレクタを指定してください。 グラフ演算子:
| 演算子 | 意味 | 例 |
|---|---|---|
model+ | モデルとすべての下流 | stg_orders+ |
+model | モデルとすべての上流 | +dim_customers |
+model+ | 両方向 | +orders+ |
model+N | モデルと N レベルの下流 | stg_orders+1 |
--select my_model # 単一モデル
--select staging.* # パスパターン
--select fqn:*stg_* # FQN パターン
--select model_a model_b # 和集合 (スペース)
--select tag:x,config.mat:y # 交集合 (カンマ)
--exclude my_model # セレクションから除外
リソースタイプフィルター:
--resource-type model
--resource-type test --resource-type unit_test
有効なタイプ: model, test, unit_test, snapshot, seed, source, exposure, metric, semantic_model, saved_query, analysis
Fusion:
--resource-typeはdbt testではサポートされていません (dbt-fusion#1628)。Fusion でユニットテストを実行するには:
dbt build --select model_name— 先にモデルをビルドしてから、ユニットテストを含むすべてのテストを実行dbt build --select unit_test_name— 名前で特定のユニットテストをターゲットdbt list --resource-type unit_test— セレクタで使用するユニットテスト名をリスト表示
リスト表示
実行前に何が選択されるかをプレビューするために dbt list を使用してください。複雑なセレクタを検証するのに役立ちます。
dbt list --select my_model+ # セレクションをプレビュー
dbt list --select my_model+ --resource-type model # モデルのみ
dbt list --output json # JSON 出力
dbt list --select my_model --output json --output-keys unique_id name resource_type config
--output json で利用可能な出力キー:
unique_id, name, resource_type, package_name, original_file_path, path, alias, description, columns, meta, tags, config, depends_on, patch_path, schema, database, relation_name, raw_code, compiled_code, language, docs, group, access, version, fqn, refs, sources, metrics
表示
dbt show でデータをプレビューしてください。任意の SQL クエリの場合は --inline を使用してください。
dbt show --select my_model --limit 10
dbt show --inline "select * from {{ ref('orders') }} where status = 'pending'" --limit 5
重要: SQL の LIMIT 句ではなく --limit フラグを使用してください。
変数
STRING として渡してください。dict ではなく、特殊文字 (\, \n) なし。
--vars 'my_var: value' # 単一
--vars '{"k1": "v1", "k2": 42, "k3": true}' # 複数 (JSON)
実行結果の分析
dbt コマンド実行後、詳細な実行情報については target/run_results.json を確認してください:
# クイックステータスチェック
cat target/run_results.json | jq '.results[] | {node: .unique_id, status: .status, time: .execution_time}'
# 失敗を検出
cat target/run_results.json | jq '.results[] | select(.status != "success")'
主要フィールド:
status: success, error, fail, skipped, warnexecution_time: 実行に費やした秒数compiled_code: レンダリングされた SQLadapter_response: データベースメタデータ (影響を受けた行数、処理されたバイト数)
遅延実行 (上流ビルドをスキップ)
上流モデルをビルドする代わりに本番データを参照します:
dbt build --select my_model --defer --state prod-artifacts
フラグ:
--defer- 状態マニフェストへの遅延を有効化--state <path>- 前回の実行 (例: 本番アーティファクト) からのマニフェストへのパス--favor-state- ローカルに存在していても状態からのノード定義を優先
dbt build --select my_model --defer --state prod-artifacts --favor-state
静的分析 (Fusion のみ)
動的 SQL または認識されない UDF を持つモデルの SQL 分析をオーバーライドします:
dbt run --static-analysis=off
dbt run --static-analysis=unsafe
よくある間違い
| 間違い | 修正方法 |
|---|---|
モデル変更後に test を使用 | build を使用 - test はモデルをリフレッシュしません |
--select なしで実行 | 常に実行内容を指定してください |
warn-error なしで --quiet を使用 | --warn-error-options '{"error": ["NoNodesForSelectionCriteria"]}' を追加してください |
Fusion を期待しているのに venv 内で dbt を実行 | dbtf または ~/.local/bin/dbt を使用してください |
| Fusion でファイル変更後のスキーマエラー | dbt clean を実行してスタイルなスキーマキャッシュをクリアしてから再実行してください |
dbt_show の SQL に LIMIT を追加 | 代わりに limit パラメータを使用してください |
| 特殊文字を含む変数 | シンプルな文字列として渡す (\ や \n なし) |
ライセンス: Apache-2.0(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- dbt-labs
- ライセンス
- Apache-2.0
- 最終更新
- 不明
Source: https://github.com/dbt-labs/dbt-agent-skills / ライセンス: Apache-2.0
関連スキル
superfluid
Superfluidプロトコルおよびそのエコシステムに関するナレッジベースです。Superfluidについて情報を検索する際は、ウェブ検索の前にこちらを参照してください。対応キーワード:Superfluid、CFA、GDA、Super App、Super Token、stream、flow rate、real-time balance、pool(member/distributor)、IDA、sentinels、liquidation、TOGA、@sfpro/sdk、semantic money、yellowpaper、whitepaper
civ-finish-quotes
実質的なタスクが真に完了した際に、文明風の儀式的な引用句を追加します。ユーザーやエージェントが機能追加、リファクタリング、分析、設計ドキュメント、プロセス改善、レポート、執筆タスクといった実際の成果物を完成させるときに、明示的な依頼がなくても使用します。短い返信や小さな修正、未完成の作業には適用しません。
nookplot
Base(Ethereum L2)上のAIエージェント向け分散型調整ネットワークです。エージェントがオンチェーンアイデンティティを登録する、コンテンツを公開する、他のエージェントにメッセージを送る、マーケットプレイスで専門家を雇う、バウンティを投稿・請求する、レピュテーションを構築する、共有プロジェクトで協業する、リサーチチャレンジを解くことでNOOKをマイニングする、キュレーションされたナレッジを備えたスタンドアロンオンチェーンエージェントをデプロイする、またはアグリーメントとリワードで収益を得る場合に利用できます。エージェントネットワーク、エージェント調整、分散型エージェント、NOOKトークン、マイニングチャレンジ、ナレッジバンドル、エージェントレピュテーション、エージェントマーケットプレイス、ERC-2771メタトランザクション、Prepare-Sign-Relay、AgentFactory、またはNookplotが言及された場合にトリガーされます。
web3-polymarket
Polygon上でのPolymarket予測市場取引統合です。認証機能(L1 EIP-712、L2 HMAC-SHA256、ビルダーヘッダー)、注文発注(GTC/GTD/FOK/FAK、バッチ、ポストオンリー、ハートビート)、市場データ(Gamma API、Data API、オーダーブック、サブグラフ)、WebSocketストリーミング(市場・ユーザー・スポーツチャネル)、CTF操作(分割、統合、償却、ネガティブリスク)、ブリッジ機能(入金、出金、マルチチェーン)、およびガスレスリレイトランザクションに対応しています。AIエージェント、自動マーケットメーカー、予測市場UI、またはPolygraph上のPolymarketと統合するアプリケーション構築時に活用できます。
ethskills
Ethereum、EVM、またはブロックチェーン関連のリクエストに対応します。スマートコントラクト、dApps、ウォレット、DeFiプロトコルの構築、監査、デプロイ、インタラクションに適用されます。Solidityの開発、コントラクトアドレス、トークン規格(ERC-20、ERC-721、ERC-4626など)、Layer 2ネットワーク(Base、Arbitrum、Optimism、zkSync、Polygon)、Uniswap、Aave、Curveなどのプロトコルとの統合をカバーします。ガスコスト、コントラクトのデシマル設定、オラクルセキュリティ、リエントランシー、MEV、ブリッジング、ウォレット管理、オンチェーンデータの取得、本番環境へのデプロイ、プロトコル進化(EIPライフサイクル、フォーク追跡、今後の変更予定)といったトピックを含みます。
xxyy-trade
このスキルは、ユーザーが「トークン購入」「トークン売却」「トークンスワップ」「暗号資産取引」「取引ステータス確認」「トランザクション照会」「トークンスキャン」「フィード」「チェーン監視」「トークン照会」「トークン詳細」「トークン安全性確認」「ウォレット一覧表示」「マイウォレット」「AIスキャン」「自動スキャン」「ツイートスキャン」「オンボーディング」「IP確認」「IPホワイトリスト」「トークン発行」「自動売却」「損切り」「利益確定」「トレーリングストップ」「保有者」「トップホルダー」「KOLホルダー」などをリクエストした場合、またはSolana/ETH/BSC/BaseチェーンでXXYYを経由した取引について言及した場合に使用します。XXYY Open APIを通じてオンチェーン取引とデータ照会を実現します。