with one click
bootstrap
Create a new Starlake project from a template
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Menu
Create a new Starlake project from a template
Install with Codex or Claude Copy this prompt, paste it into Codex, Claude, or another assistant, and let it review the skill page and install it for you.
Based on SOC occupation classification
Manage GizmoSQL processes: start, stop, list, and stop-all DuckLake-backed SQL servers
Create or modify database connections in application.sl.yml
Manage Quack DuckDB query servers exposing DuckLake over a thin remote protocol — serve (foreground), start/stop/list/stop-all (background)
Automatically infer schemas and load data from the incoming directory
Data quality expectations syntax, built-in macros, and validation patterns
Apply Row Level Security (RLS) and Column Level Security (CLS) policies
| name | bootstrap |
| description | Create a new Starlake project from a template |
Creates a new Starlake project with the standard directory structure and starter configuration files. Optionally uses a named template to scaffold a project with sample data and configurations.
starlake bootstrap [options]
--template <value>: Template name to use (default: interactive selection). Examples: quickstart, simple--no-exit: Keep the JVM running after project creation (used in testing)--reportFormat <value>: Report output format: console, json, or htmlmy-project/
├── metadata/
│ ├── application.sl.yml # Global configuration, connections
│ ├── env.sl.yml # Environment variables
│ ├── types/
│ │ └── default.sl.yml # Data type definitions
│ ├── load/
│ │ └── {domain}/
│ │ ├── _config.sl.yml # Domain configuration
│ │ └── {table}.sl.yml # Table schemas
│ ├── transform/
│ │ └── {domain}/
│ │ ├── _config.sl.yml # Transform defaults
│ │ └── {task}.sql # SQL transformations
│ ├── dags/ # Orchestration DAG configs
│ ├── expectations/ # Data quality macros
│ └── extract/ # Extraction configurations
├── datasets/ # Processed data storage
├── incoming/ # Raw data landing area
└── sample-data/ # Example datasets
application.sl.ymlversion: 1
application:
connectionRef: "{{connectionRef}}"
audit:
sink:
connectionRef: "{{connectionRef}}"
connections:
duckdb:
type: "jdbc"
options:
url: "jdbc:duckdb:{{SL_ROOT}}/datasets/duckdb.db"
driver: "org.duckdb.DuckDBDriver"
bigquery:
type: "bigquery"
options:
location: "europe-west1"
authType: "APPLICATION_DEFAULT"
dagRef:
load: "airflow_load_shell"
transform: "airflow_transform_shell"
env.sl.ymlversion: 1
env:
root_path: "{{SL_ROOT}}"
incoming_path: "{{SL_ROOT}}/datasets/incoming"
connectionRef: duckdb
starlake bootstrap
starlake bootstrap --template quickstart
starlake bootstrap --template simple