plugins marketplace
← All plugins

dataproduct-builder-dbt

v0.2.1

Build data products with dbt and integrate them with Entropy Data.

CodexClaude Code7 skills

by Entropy DataMIT12updated 2 months ago

Source

git clone https://github.com/entropy-data/dataproduct-builder-dbt

Clone the source, then follow the repository's marketplace instructions for your runtime. The repository root is the plugin root.

Layout

dataproduct-builder-dbt/
├── .codex-plugin/plugin.json
├── .claude-plugin/plugin.json
├── skills/datacontract-edit/SKILL.md
├── skills/dataproduct-bootstrap/SKILL.md
├── skills/dataproduct-dbt/SKILL.md
├── skills/dataproduct-exampledata/SKILL.md
├── skills/dataproduct-implement/SKILL.md
├── skills/entropy-data-sync/SKILL.md
└── skills/entropy-data-teams/SKILL.md

Skills7

datacontract-editskills/datacontract-edit/SKILL.md

Edit an output-port ODCS file under models/output_ports/v<N>/, run the contract test against the live data, and classify any failures as breaking or non-breaking changes — with suggested fixes. Only edits output-port contracts (the spec this data product commits to); input-port contracts under models/input_ports/ are upstream's responsibility and refreshed by dataproduct-implement. Trigger when the user asks to "add/remove/change a column in the data contract", "update the data contract", or "test contract changes".

dataproduct-bootstrapskills/dataproduct-bootstrap/SKILL.md

Bootstrap a brand-new dbt data product from scratch — create dbt_project.yml, the Entropy Data model layout (input_ports, staging, intermediate, output_ports/v1), README with uv install instructions, .gitignore, and a profiles.yml.example for the chosen warehouse. After scaffolding, hands off to the entropy-data-sync skill to add the publishing layer (ODPS, ODCS, OpenLineage, GitHub Actions). Trigger when the user asks to start a new data product, scaffold a new dbt project, or "create a data product from scratch."

dataproduct-dbtskills/dataproduct-dbt/SKILL.md

Build out the transformation layers (`staging/`, `intermediate/`) of a data product and run dbt against them, following project-wide conventions adapted from dbt's best practices (v1.12). Trigger when the user asks to "add a staging model", "build out the staging layer", "create an intermediate model", "refactor this output port into staging + intermediate", "make this model incremental", or "run dbt for this data product".

dataproduct-exampledataskills/dataproduct-exampledata/SKILL.md

Extract a small sample of rows from a dbt output port using a non-production profile, scrub anything classified as PII or sensitive in the data contract, and upload the scrubbed sample to Entropy Data via the entropy-data CLI. Trigger when the user asks to "upload example data", "publish sample rows for the data product", or "give consumers a preview of the data".

dataproduct-implementskills/dataproduct-implement/SKILL.md

Given an Entropy Data data product URL or id, fetch its data contracts (output port ODCS files written next to the SQL under models/output_ports/v<N>/, input port ODCS files cached next to their dbt source under models/input_ports/), translate the schema into dbt models, and ensure the project has the publishing layer (ODPS, OpenLineage, GitHub Actions). Trigger when the user asks to "implement the data product <url>", "build the dbt pipeline for this data product", or "scaffold dbt models from a data contract".

entropy-data-syncskills/entropy-data-sync/SKILL.md

Audit a dbt project against the Entropy Data reference layout and add anything missing — Open Data Product Specification (ODPS), Open Data Contract Standard (ODCS), OpenLineage transport config, output-port model layout, and the GitHub Actions publish workflow. Trigger when the user asks to integrate a dbt project with Entropy Data, set up Entropy Data publishing, or check whether a dbt project follows the Entropy Data conventions.

entropy-data-teamsskills/entropy-data-teams/SKILL.md

List the teams configured in Entropy Data so the user can pick one as the owner (`team.name` in ODPS) of a data product. Useful when bootstrapping a new data product, integrating an existing dbt project, or just exploring who owns what. Trigger when the user asks "what teams are there", "who can own this data product", "list teams in Entropy Data", or when another skill needs to fill in `TEAM_NAME` and the user does not already know it.

Manifests2

.codex-plugin/plugin.json
{
  "name": "dataproduct-builder-dbt",
  "version": "0.2.1",
  "description": "Build data products with dbt and integrate them with Entropy Data.",
  "author": {
    "name": "Entropy Data",
    "url": "https://entropy-data.com"
  },
  "homepage": "https://github.com/entropy-data/dataproduct-builder-dbt",
  "repository": "https://github.com/entropy-data/dataproduct-builder-dbt",
  "license": "MIT",
  "keywords": [
    "dbt",
    "data-product",
    "data-contract",
    "entropy-data",
    "odcs",
    "odps",
    "openlineage"
  ],
  "interface": {
    "displayName": "Data Product Builder for dbt",
    "shortDescription": "Build dbt data products integrated with Entropy Data.",
    "longDescription": "Coding-agent plugin for the full data-product lifecycle on dbt: scaffold the dbt project (greenfield), audit and integrate an existing dbt project with the Entropy Data reference layout (ODPS, ODCS, OpenLineage, GitHub Actions, git connections), implement output-port models from a published data contract, edit and test contracts, upload sample data, and manage CLI authentication. Ships seven skills, the pii-scanner Claude subagent, and an ODCS-lint hook.",
    "developerName": "Entropy Data",
    "category": "Data",
    "capabilities": [
      "Read",
      "Write"
    ],
    "websiteURL": "https://entropy-data.com",
    "defaultPrompt": [
      "Bootstrap a new dbt data product for Entropy Data.",
      "Make sure this dbt project is integrated with Entropy Data.",
      "Implement the data product https://app.entropy-data.com/<org>/dataproducts/<id>.",
      "Update the data contract and run the contract tests.",
      "Test the data contracts against the warehouse."
    ]
  },
  "skills": "./skills/",
  "hooks": "./hooks/hooks.json"
}
.claude-plugin/plugin.json
{
  "name": "dataproduct-builder-dbt",
  "version": "0.2.1",
  "description": "Build data products with dbt and integrate them with Entropy Data.",
  "author": {
    "name": "Entropy Data",
    "url": "https://entropy-data.com"
  },
  "homepage": "https://github.com/entropy-data/dataproduct-builder-dbt",
  "repository": "https://github.com/entropy-data/dataproduct-builder-dbt",
  "license": "MIT",
  "keywords": [
    "dbt",
    "data-product",
    "data-contract",
    "entropy-data",
    "odcs",
    "odps",
    "openlineage"
  ]
}