.agents/skills/yml2ddl/SKILL.md
Generate SQL DDL statements from Starlake YAML definitions
npx skillsauth add starlake-ai/starlake-skills yml2ddlInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Generates SQL DDL (Data Definition Language) statements — CREATE TABLE, ALTER TABLE, etc. — from your Starlake YAML table definitions. Supports multiple target databases through type mappings defined in types/default.sl.yml.
starlake yml2ddl [options]
--datawarehouse <value>: Target data warehouse name — must match a DDL mapping key in types/default.sl.yml (required). Examples: bigquery, snowflake, postgres, redshift, synapse, duckdb--connection <value>: JDBC connection name with read/write access (for --apply mode)--output <value>: Output directory for generated DDL files (default: ./{datawarehouse}/)--catalog <value>: Database catalog name (if applicable)--domain <value>: Generate DDL for this specific domain only (default: all domains)--schemas <value>: Comma-separated list of schemas within the domain to generate DDL for--apply: Execute the generated DDL directly against the database--parallelism <value>: Parallelism level (default: available CPU cores)--reportFormat <value>: Report output format: console, json, or htmltypes/default.sl.ymlThe DDL generation uses ddlMapping to map Starlake types to database-specific types:
# metadata/types/default.sl.yml
types:
- name: "string"
primitiveType: "string"
ddlMapping:
bigquery: "STRING"
snowflake: "VARCHAR"
postgres: "TEXT"
duckdb: "VARCHAR"
synapse: "NVARCHAR(MAX)"
- name: "long"
primitiveType: "long"
ddlMapping:
bigquery: "INT64"
snowflake: "BIGINT"
postgres: "BIGINT"
duckdb: "BIGINT"
- name: "decimal"
primitiveType: "decimal"
ddlMapping:
bigquery: "NUMERIC"
snowflake: "NUMBER(38,9)"
postgres: "NUMERIC"
starlake yml2ddl --datawarehouse bigquery
starlake yml2ddl --datawarehouse snowflake --domain starbake
starlake yml2ddl --datawarehouse postgres --connection my_pg_conn --apply
starlake yml2ddl --datawarehouse duckdb --output /tmp/ddl
starlake yml2ddl --datawarehouse snowflake --domain sales --schemas orders,customers
starlake yml2ddl --datawarehouse bigquery --parallelism 4
development
Design SQL transformations for data pipelines with quality checks and dependency management. Use when the user says "design transforms" or "create SQL transformations".
devops
Plan and track sprint progress for data pipeline implementation. Use when the user says "sprint planning" or "plan data sprint".
testing
Analyze data sources in depth: schema, quality, volume, and extraction strategy. Use when the user says "analyze data source" or "profile this data source".
data-ai
Design Starlake-compatible table schemas with types, constraints, privacy, and expectations. Use when the user says "design schema" or "create table definition".