SQLMesh patterns for data transformation with column-level lineage and virtual environments. Use when building data pipelines that need advanced features like automatic DAG inference and efficient incremental processing.
This skill provides SQLMesh patterns for data transformation.
sqlmesh_project/
├── config.yaml
├── models/
│ ├── staging/
│ │ └── stg_customers.sql
│ └── marts/
│ └── dim_customers.sql
├── macros/
├── seeds/
├── audits/
└── tests/
-- models/staging/stg_customers.sql
MODEL (
name staging.stg_customers,
kind INCREMENTAL_BY_TIME_RANGE (
time_column created_at
),
cron '@daily'
);
SELECT
id AS customer_id,
LOWER(email) AS email,
created_at
FROM raw.customers
WHERE created_at BETWEEN @start_ds AND @end_ds
| Kind | Use Case |
|------|----------|
| FULL | Complete refresh each run |
| INCREMENTAL_BY_TIME_RANGE | Time-based incremental |
| INCREMENTAL_BY_UNIQUE_KEY | Key-based merge |
| VIEW | Virtual table |
| SEED | Static CSV data |
# Create a virtual environment for testing
sqlmesh plan dev
# Apply to production
sqlmesh plan prod
-- audits/no_nulls.sql
AUDIT (
name assert_no_null_customer_id,
model staging.stg_customers
);
SELECT * FROM staging.stg_customers
WHERE customer_id IS NULL
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries.
Create or update AgentSkills. Use when designing, structuring, or packaging skills with scripts, references, and assets.
Start voice calls via the OpenClaw voice-call plugin.
Notion API for creating and managing pages, databases, and blocks.
Gemini CLI for one-shot Q&A, summaries, and generation.
Category:developer