Install any skill in seconds. Free to start, no credit card required.
Get Started Free →hashgraph-online/entropy-data-sync
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.
Passed 13 of 20 test cases with the skill, and 5 of 20 without it.
and 12 more in the full report
10 fixed4 passed either way7 still failing1 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 10 test cases the skill fixed. Same model, same prompt, with and without the skill.
Our root `<data-product-id>.odps.yaml` exists, but it lacks the `dataProductBuilder` custom property. Should you replace the entire file template or patch the existing file?
| Checked | Without skill | With skill |
|---|---|---|
| Appends the dataProductBuilder custom property with value https://github.com/entropy-data/dataproduct-builder-dbt. | Missed | Passed |
| Preserves existing fields in the ODPS YAML file when appending the custom property. | Passed | Passed |
The instructions your model reads when the skill loads.
Make sure a dbt project is well-integrated with Entropy Data.
A dbt project is well-integrated with Entropy Data when it has all of:
| # | Artifact | Path | Purpose |
|---|---|---|---|
| 1 | Open Data Product Specification | <data-product-id>.odps.yaml at repo root | Declares the data product, team, output ports |
| 2 | Output-port data contracts | models/output_ports/v<N>/<contract-id>.odcs.yaml (one per output port — what this data product commits to produce) | Schema + server config the contract test runs against; colocated with the SQL that implements it |
| 3 | Input-port data contracts | models/input_ports/<provider-output-port-id>.odcs.yaml (one per active access agreement — what this data product trusts upstream to produce) | Cached snapshot of the upstream provider's ODCS; refreshed via entropy-data datacontracts get, never hand-edited |
| 4 | OpenLineage transport | openlineage.yml at repo root | Makes dbt-ol run send lineage to api.entropy-data.com |
| 5 | Model layout | models/{input_ports,staging,intermediate,output_ports/v1}/ | Convention that mirrors the data product's lifecycle |
| 6 | Publish workflow | .github/workflows/data-product.yml | CI: dbt run/test → publish ODPS + output ODCS → run contract test |
| 7 | Git connections | One per ODPS + one per output-port ODCS, registered via entropy-data dataproducts gitconnection put and entropy-data datacontracts gitconnection put | Lets Entropy Data link the published spec back to the YAML in the repo, and enables pull / push / push-pr from the CLI. Input-port ODCS files are not registered — they belong to the upstream data product, which owns its own git connection |
Work in this exact order. Do not skip the audit.
${PLUGIN_ROOT}below refers to the root of this plugin — the directory that containsskills/. On Claude Code it is set automatically as${CLAUDE_PLUGIN_ROOT}— use that. On any other agent (Codex, Copilot CLI, etc.) it is unset; resolve it as../..relative to thisSKILL.mdfile's directory (i.e. the grandparent ofskills/<this-skill>/).
Before running Step 0, print the following plan to the user verbatim so they know what's about to happen:
Running entropy-data-sync. I'll:
- Verify the
entropy-dataCLI is installed and connected.- Confirm this is a dbt project and pick up its name.
- Audit existing Entropy Data artifacts (ODPS, ODCS, OpenLineage, model layout, publish workflow, git connections).
- Gather any missing parameters from you (one batched question).
- Apply fixes — create missing files, patch incomplete ones, register git connections.
- Summarize what changed and what's deferred.
Then proceed.
test cases passed, vs 5 / 20 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.