agentleFS
yeaight7yeaight7/agent-powerups/skills/dbt-preflight/SKILL.md

dbt-preflight

Skill6 starsChanged 4 months agoApache-2.0View on GitHub

Use when a dbt change needs preflight before a PR, review, or merge -- changed models, snapshots, seeds, macros, or semantic YAML whose blast radius and test coverage are not yet known.

The file

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 4 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Before opening a PR in an analytics repository

    line 12
  2. Distinctive:

    If a production manifest is available, cover the whole change set at once:

    line 37
  3. Distinctive:

    Run the review checklist: Check for:

    line 43
  4. Distinctive:

    If exact commands are available in the repo (Makefile, CI config, docs), prefer them.

    line 59

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Purpose

Inspect a dbt change set before it ships: identify which assets changed, estimate downstream impact, detect likely gaps in testing, contracts, documentation, and YAML alignment, and recommend the narrowest safe validation path. Preflight is read-only — do not edit code unless explicitly asked.

When to Use

  • Before opening a PR in an analytics repository
  • Reviewing someone else's dbt change
  • Assessing the risk of a change whose downstream impact is unclear

Inputs

  • The change set (branch diff or working tree)
  • The dbt project, for lineage and selector queries

Workflow

  1. Enumerate changed assets:

    git diff --name-status origin/main...HEAD

    Classify each change: models, snapshots, seeds, macros, tests, schema YAML, semantic models, metrics, saved queries, exposures or BI-facing assets.

  2. Estimate blast radius. For each changed model, list downstream dependents:

    dbt ls --select <model>+

    If a production manifest is available, cover the whole change set at once:

    dbt ls --select state:modified+ --state <path-to-prod-artifacts>
  3. Run the review checklist. Check for:
    • model grain changes
    • renamed columns or breaking contract changes
    • missing or weakened tests
    • YAML not updated after model changes
    • metrics or semantic definitions drifting from prior meaning
    • high blast radius due to downstream dependencies
    • incremental logic changes
    • snapshot logic changes
    • joins or filters that may alter business meaning
  4. Recommend the narrowest meaningful validation path first:

    1. targeted checks: dbt build --select <changed_model>
    2. narrow downstream checks: dbt build --select <changed_model>+1
    3. broader PR-level validation only if needed: dbt build --select state:modified+ --state <path>

    If exact commands are available in the repo (Makefile, CI config, docs), prefer them. If not, say what should be validated conceptually.

Output

  1. changed assets summary
  2. likely blast radius
  3. likely missing checks or weak spots
  4. recommended validation plan
  5. items that need stakeholder or domain-owner confirmation

Verification

  • Every changed file classified by asset type
  • Blast radius backed by lineage (dbt ls), not guessed
  • Each checklist hit mapped to a recommended validation step
  • Validation plan starts with the narrowest step that covers the risk
  • Stakeholder-confirmation items listed separately

Failure Modes

  • Style distraction — preflight is about correctness and semantic impact, not formatting.
  • Overclaiming impact — be conservative with claims; verify lineage before asserting blast radius.
  • Validating everything — defaulting to a full rebuild obscures which check actually covers the risk; the goal is the narrowest safe path.
  • Editing instead of reporting — do not edit code unless explicitly asked.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.