Medox new-dagster-asset

Add a new Dagster asset to the pipeline. Use when creating a Bronze, Silver, or Gold layer asset.

install
source · Clone the upstream repo
git clone https://github.com/spideystreet/medox
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/spideystreet/medox "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/new-dagster-asset" ~/.claude/skills/spideystreet-medox-new-dagster-asset && rm -rf "$T"
manifest: .claude/skills/new-dagster-asset/SKILL.md
source content

Skill: Add a New Dagster Asset

Steps

  1. Choose the layer file:

    asset_bronze.py
    ,
    asset_silver.py
    , or
    asset_gold.py
    .

  2. Declare the asset:

    @asset(group_name="<layer>", deps=["<upstream_asset>"])
    def <asset_name>(context: AssetExecutionContext) -> None:
        """One-line description."""
        settings = PipelineSettings()
        # ... logic
        context.add_output_metadata({"key": "value"})
    
  3. File naming: follow

    <type>_<function>.py
    for any new utility files.

  4. Resources (e.g.

    DbtCliResource
    ): declare in function signature, already registered in
    definitions.py
    .

  5. Register:

    load_assets_from_modules
    in
    definitions.py
    picks up the asset automatically if it's in the right module.

  6. Validate:

    uv run dotenv -f .env run -- uv run dagster asset list
    uv run dotenv -f .env run -- uv run dagster asset materialize --select <asset_name>