Claude Skill MartBrowse skillsQuick linesLearn by videoTerminal guideWhat is a Skill?
Back to list

dbt Ingest (ktx Semantic Layer)

Maps dbt schema.yml models, sources and tests into ktx semantic-layer overlays and column notes without inventing physical columns.

Data & AnalyticsAdvanced1,54199AI score 8/10Last updated: Jul 19, 2026

What it does

  • Reads an uploaded dbt project (dbt_project.yml, models/**, sources/**, schema.yml) and maps it onto ktx semantic-layer (SL) overlays.
  • Defines how models: vs sources: are handled (prefer identifier) and moves column description into column_overrides[].descriptions.user.
  • Converts dbt tests (not_null, unique, accepted_values, relationships) into short column hints or verified joins:.
  • Enforces physical-schema grounding: only column names confirmed via discover_data, sl_discover, entity_details or a sql_execution probe may be written; unconfirmed intent goes to a wiki page or emit_unmapped_fallback.
  • Requires sl_validate after every sl_write_source, treating missing-column errors as a hard stop.

Who it's for

  • Data engineers onboarding dbt projects into the ktx platform.
  • Analytics engineers turning dbt docs and tests into agent-readable semantic context.
  • Data platform teams that need hard guardrails against LLM-invented schema.

Examples

  1. Read the orders model in models/marts/schema.yml, attach a description overlay to the matching manifest table, and add a "dbt: accepted_values = paid/pending/refunded" hint on status.
  2. Use identifier from a sources: block to resolve a physical table, then write the overlay to the warehouse connection (postgres-warehouse) rather than the dbt-main connection.
  3. When a relationships test target cannot be resolved via entity_details, skip the join and record emit_unmapped_fallback plus a wiki note instead.

· · · Install guide · · ·

Try it now, no install

Paste this into Claude to use the skill without installing anything.

Read the instructions in this file and follow them to help me:
https://raw.githubusercontent.com/Kaelio/ktx/HEAD/packages/cli/src/skills/dbt_ingest/SKILL.md

What I want: (describe your task here)

If Claude can't open the link, open it yourself and paste the contents instead.

If it works for you, download the ZIP below and install it. Then it runs on its own — no pasting each time.

Install in the Claude app (no terminal)
  1. Download the ZIP with the button below.
  2. In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
  3. Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Download ZIP
Install in Claude Code

Let Claude do it — paste this into Claude Code

Install the skill I found on Claude Skill Mart.
Copy the packages/cli/src/skills/dbt_ingest folder from the GitHub repo Kaelio/ktx into my ~/.claude/skills/dbt-ingest/.
When it's done, tell me in one line what this skill can do.

Install with a command instead

git clone https://github.com/Kaelio/ktx.git /tmp/ktx && mkdir -p ~/.claude/skills/dbt_ingest && cp -r /tmp/ktx/packages/cli/src/skills/dbt_ingest/* ~/.claude/skills/dbt_ingest/

This is a third-party skill. Check the source repository before installing.

  1. Open a terminal.
  2. Clone the repo: git clone https://github.com/Kaelio/ktx.git
  3. Create the skill folder: mkdir -p ~/.claude/skills/dbt_ingest
  4. Copy the files: cp -r ktx/packages/cli/src/skills/dbt_ingest/* ~/.claude/skills/dbt_ingest/
  5. Restart Claude Code and confirm dbt_ingest appears in your skill list.
  6. Note: the skill calls ktx-specific tools (sl_write_source, entity_details, discover_data, sql_execution). Outside a ktx runtime those steps cannot execute, so run it within the ktx CLI/agent environment.
View source on GitHubLicense: Apache-2.0