auditing-skills
Use when checking skills for security or quality issues, reviewing audit results from skills.sh or Tessl, or remediating findings…
Use when a user needs help triaging dbt-core to dbt v2 migration errors. Runs dbt-autofix first, then classifies remaining errors into actionable categories (auto-fixable, guided fixes, needs input, blocked).
Claude Code
$ npx -y skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 --agent claude-code
Codex
$ npx skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 -a codex -y
Cursor
$ npx skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 -a cursor -y
Gemini CLI
$ npx skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 -a gemini-cli -y
GitHub Copilot
$ npx skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 -a github-copilot -y
OpenCode
$ npx skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 -a opencode -y
Windsurf
$ npx skills add dbt-labs/dbt-agent-skills --skill migrating-dbt-core-to-v2 -a windsurf -y
name: migrating-dbt-core-to-v2 description: Use when a user needs help triaging dbt-core to dbt v2 migration errors. Runs dbt-autofix first, then classifies remaining errors into actionable categories (auto-fixable, guided fixes, needs input, blocked). allowed-tools: "Bash(dbt:*), Bash(git:*), Bash(uvx:*), Read, Write, Edit, Glob, Grep, WebFetch(domain:api.github.com)" compatibility: "dbt v2" metadata: author: dbt-labs
Help users understand which v2 migration errors they can fix themselves vs which are blocked on v2 updates. Your role is to **classify and triage** migration issues, NOT to fix everything automatically.
**Key principle**: Not all migration issues are fixable in your project. Some require v2 updates. Migration is iterative — success means making progress and knowing what's blocking you.
This skill is a strict procedure, not general guidance.
The assistant must follow this order: 1. Step 0: Ask whether to run `dbt debug` 2. Step 1: Run or confirm `dbt-autofix`, then review its changes 3. Step 2: Classify remaining issues 4. Only after Steps 0–2 may the assistant propose or apply manual fixes
Hard rules:
The base command defaults to `dbt compile`, or a different command if the user specifies one (e.g. `dbt build`, `dbt test --select tag:my_tag`), or the contents of `repro_command.txt` if that file exists in the project root.
**Normalize the static-analysis mode on whichever command you land on**: if it does not already contain a `--static-analysis` flag, append `--static-analysis strict`. If it already specifies one explicitly (e.g. `--static-analysis off` or `unsafe`), leave it as-is — do not append a second, conflicting flag. This applies whether the command came from the user or from `repro_command.txt`; a file containing bare `dbt compile` still gets `strict` appended.
Plain `dbt compile` still performs full parsing, graph building, and config compilation, and surfaces real failures from those checks. But without strict mode, static analysis findings about column/schema existence are only reported as warnings, not build-blocking failures. A project can report zero *errors* under plain `dbt compile` while strict mode fails it on real column-existence problems. Always run with strict mode at least once before telling the user the project is v2-compatible.
**Before doing anything else**, ask the user if they'd like to verify their credentials work on v2.
Ask: "Would you like to start by running `dbt debug` to verify your credentials and connection work on v2? This catches environment issues early before we dig into migration errors."
Run:
dbt debug
**What to check in the output:**
Confirm the environment is healthy and proceed to Step 1.
That's fine — proceed to Step 1. But if connection errors appear later during classification, circle back and suggest running `dbt debug`.
**Before classifying any errors**, ensure the user has run dbt-autofix on their project.
1. Ask user: "Have you run dbt-autofix on this project yet?" 2. Check git history for recent autofix-related commits 3. Check for autofix log files
If the project is in git, record a baseline first: run `git stash create` and note the SHA (use `HEAD` if it prints nothing), and note the output of `git status --porcelain`.
Prompt the user to run [dbt-autofix](https://github.com/dbt-labs/dbt-autofix) (a first-party tool maintained by dbt Labs that automatically fixes common deprecation patterns):
uvx --from git+https://github.com/dbt-labs/dbt-autofix.git dbt-autofix deprecations
**Important**: Wait for autofix to complete before proceeding with classification.
Before analyzing any migration errors, you MUST understand what autofix changed:
1. **Review the git diff** (if project is in git):
A curated collection of Agent Skills for working with dbt. These skills help AI agents understand and execute dbt workflows more effectively.
Use when checking skills for security or quality issues, reviewing audit results from skills.sh or Tessl, or remediating findings…
Generates a Mermaid flowchart diagram of dbt model lineage using MCP tools, manifest.json, or direct code parsing as fallbacks.…
Use when migrating a dbt project from one data platform or data warehouse to another (e.g., Snowflake to Databricks, Databricks…
Use when a user wants to upgrade, update, or migrate a dbt project to the latest version — e.g. "upgrade my dbt project,"…
Creates unit test YAML definitions that mock upstream model inputs and validate expected outputs. Use when adding unit tests for…
Writes and executes SQL queries against the data warehouse using dbt's Semantic Layer or ad-hoc SQL to answer business questions.…
Use this skill to extract structured Markdown/JSON from PDFs and document images—tables with cell-level precision, formulas as…
Estimates intracellular metabolic fluxes from steady-state carbon-13 isotope-tracing measurements using validated atom maps,…