Przejdź do treści
Biblioteka skilli
Dane i analityka · Budowanie i kod

dbt-setup

/dbt-setup

Tworzy szkielet projektu dbt-fabric dla Fabric Data Warehouse: profiles.yml, dbt_project.yml, _sources.yml z typami kolumn, requirements.txt i .gitignore.

Licencja
MIT
Ostatnia zmiana repozytorium
09.09.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
1
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
1
Przestarzałość

Brak sygnałów. Repozytorium zmienione 09.09.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Tworzy szkielet projektu dbt-fabric dla Fabric Data Warehouse: profiles.yml, dbt_project.yml, _sources.yml z typami kolumn, requirements.txt i .gitignore.

Wyzwalacze z opisu

set up dbtscaffold a dbt projectcreate dbt profileinitialize dbt for my warehousegenerate dbt sourcesbootstrap dbt-fabric
Oryginalny opis (EN)

Scaffolds a complete dbt-fabric project for a Fabric Data Warehouse: generates profiles.yml, dbt_project.yml, a column-rich _sources.yml (with data types for every table column, ready for dbt contracts), requirements.txt, and .gitignore, then writes them to the local filesystem. Use when the user asks to "set up dbt", "scaffold a dbt project", "create dbt profile", "initialize dbt for my warehouse", "generate dbt sources", or "bootstrap dbt-fabric".

Jak działa

  1. Inputs
  2. Workflow
  3. Guardrails
Sekcje z nagłówków SKILL.md, w oryginale · 78 linii, 560 słów
Podgląd SKILL.md
---
name: dbt-setup
description: >
  Scaffolds a complete dbt-fabric project for a Fabric Data Warehouse: generates
  profiles.yml, dbt_project.yml, a column-rich _sources.yml (with data types for
  every table column, ready for dbt contracts), requirements.txt, and .gitignore,
  then writes them to the local filesystem. Use when the user asks to "set up dbt",
  "scaffold a dbt project", "create dbt profile", "initialize dbt for my warehouse",
  "generate dbt sources", or "bootstrap dbt-fabric".
user-invocable: true
---

# dbt Project Bootstrap for Fabric DW

Generates a complete dbt-fabric project scaffold using the fabric-dw MCP tools and writes all files to the local filesystem.

## Inputs

Gather these from the user (via `$ARGUMENTS` or natural language) before starting:

- **workspace**: workspace name or GUID
- **warehouse**: Fabric Data Warehouse name or GUID
- **project_name**: desired dbt project name (default: warehouse name, lowercased, spaces replaced with underscores)
- **schema**: default dbt schema (default: `dbo`)
- **authentication**: `default` (DefaultAzureCredential), `sp` (service principal), or `interactive` (default: `default`)
- **with_sources**: whether to generate a column-rich `_sources.yml` (default: `true`, recommended)

## Workflow

### Step 1 - Resolve the warehouse connection

Call `get_warehouse` with the workspace and warehouse name. This returns the warehouse metadata including the connection string used in the dbt profile.

### Step 2 - Confirm connectivity and list objects

Call `list_schemas` and `list_tables` to confirm that the warehouse is reachable and to identify the schemas and tables that will appear as dbt sources.

Show the user a summary: number of schemas found, number of tables found.

### Step 3 - Generate the dbt scaffold

Call `generate_dbt_profile` with:

- `workspace`, `warehouse`, `project_name`, `schema`, `authentication` as provided
- `with_sources=true` (unless the user explicitly opted out)

When `with_sources=true`, the tool performs a bulk column fetch and emits a `models/staging/_sources.yml` that already includes each table's `columns:` block with `name` and formatted `data_type` for every column. This output is ready for dbt [contract enforcement](https://docs.getdbt.com/docs/collaborate/govern/model-contracts) and column-level documentation without any manual assembly.

### Step 4 - Write files to the local filesystem

Write all file contents returned by `generate_dbt_profile` to the user's working directory. The expected set of files:

| Path | Purpose |
| --- | --- |
| `profiles.yml` | dbt connection profile |
| `dbt_project.yml` | dbt project definition |
| `models/staging/_sources.yml` | Source definitions with column types (when `with_sources=true`) |
| `requirements.txt` | Python package dependencies (`dbt-fabric`) |
| `.gitignore` | Excludes secrets and build artefacts |

Before writing, check whether any of these files already exist and confirm with the user before overwriting.

### Step 5 - Provide next steps

After writing the files, give the user the following instructions:

```bash
# Install dependencies
pip install -r requirements.txt

# Verify the connection
dbt debug

# Run your first dbt project
dbt run
```

Also remind the user to:

1. Review `profiles.yml` and fill in any `{{ env_var(...) }}` placeholders (service-principal credentials are never written as literals; they are templated).
2. Check that environment variables (`AZURE_TENANT_ID`, `AZURE_CLIENT_ID`, `AZURE_CLIENT_SECRET`) are set before running `dbt debug` if using service-principal auth.

## Guardrails

- **Service-principal auth**: when `authentication=sp`, the generated `profiles.yml` uses `{{ env_var(...) }}` placeholders for tenant ID, client ID, and client secret. Never write literal credential values. Remind the user that these must be set in environment before committing `profiles.yml` to version control.
- **Overwrite protection**: if any target file already exists, list them and ask the user to confirm before overwriting.
- **Fabric auth only**: dbt-fabric requires Entra (Azure AD) authentication. Warn the user if they ask about username/password auth. It is not supported by the dbt-fabric adapter.
- **Column inspection**: `get_table_columns` and `get_view_columns` are available for ad-hoc schema inspection (e.g., if the user wants to review a specific table before deciding which columns to expose), but explicit calls to those tools are not required; column data is built into `generate_dbt_profile` with `with_sources=true`.

Wersje

W bazie nie ma innych skilli o nazwie dbt-setup.

Migawka bazy z 28.10.2026 · wersja paczki 1b8f9ea16261 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100documenting-dbt-models
    Dokumentuje modele i kolumny dbt w schema.yml: opisy modeli i definicje kolumn, kontekst biznesowy, ziarno danych i reguły, zgodnie ze stylem istniejącej dokumentacji projektu.
  • 100query
    Odpowiada na pytania o modele dbt: strukturę, lineage kolumn, konfigurację, schema.yml i wpływ zmian, zanim sięgnie po pliki.
  • 100documenting-dbt-models
    Dokumentuje projekt dbt: opisy modeli i kolumn w schema.yml, definicje źródeł, exposures, bloki doc oraz wygenerowaną dokumentację i lineage.
  • 100creating-dbt-models
    Tworzy modele dbt zgodne z konwencjami projektu: nowe modele, zmiany logiki, kolumn i joinów oraz implementacja modelu ze specyfikacji schema.yml.
  • 90suggesting-dbt-bouncer-checks
    Analizuje projekt dbt i proponuje sprawdzenia dbt-bouncer, które już przechodzą, albo startową konfigurację dla nowego projektu.
  • 100building-models-and-dashboards
    Zamienia zaimportowane surowe dane w modele dbt lub dashboardy Rill w projekcie tycoon: start dbt od zera, podpięcie istniejącego projektu lub profiles.yml, modele staging dla źródła i uruchamianie dbt przez tycoon.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.