Encode intent/decision/plan workflow for Snowflake platform delivery so engagements share a durable recipe instead of one-off LLM chats. Co-authored-by: Cursor <cursoragent@cursor.com> |
||
|---|---|---|
| blueprint | ||
| customers | ||
| docs | ||
| examples/answers | ||
| src/skylattice | ||
| tests | ||
| .gitignore | ||
| CHANGELOG.md | ||
| PLAN.md | ||
| pyproject.toml | ||
| README.md | ||
| VERSION | ||
Sky Lattice
Internal toolkit for standing up and evolving Snowflake data platforms across customers: durable intent + decisions, a versioned blueprint, deterministic plan/apply, and an optional Cursor skill front door.
Terraform remains the executor. Sky Lattice is the intent/decision/policy layer on top.
Install
cd /path/to/sky-lattice
python3 -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
platformctl --version
platformctl doctor
5 commands to remember
| Command | Purpose |
|---|---|
platformctl wizard |
Guided setup / resume |
platformctl add domain … |
Incremental change |
platformctl plan |
Show what will be created |
platformctl apply |
Record/apply plan |
platformctl drift |
Compare inventory vs intent |
Also: init, validate, discover, decision add|list, explain, destroy --env, skills install, doctor.
Quick start (greenfield demo)
platformctl init acme --mode greenfield
platformctl wizard --path customers/acme --answers examples/answers/acme.greenfield.yaml
platformctl validate --path customers/acme
platformctl plan --path customers/acme
platformctl apply --path customers/acme --yes
platformctl doctor --path customers/acme
Open customers/acme in Cursor — the platform-ops skill is already in .cursor/skills/.
Brownfield
platformctl init globex --mode brownfield
# provide observed/inventory.yaml then:
platformctl discover --path customers/globex --inventory examples/answers/globex.inventory.yaml
platformctl wizard --path customers/globex --mode brownfield --answers examples/answers/globex.brownfield.yaml
platformctl plan --path customers/globex
Layout
blueprint/ # versioned IP: modules, schemas, wizard, policies, skills
src/skylattice/ # platformctl (Python)
customers/ # generated customer projects (demo)
docs/ # landing, recipes, product decisions
PLAN.md # design plan (reference)
Customer environment landing
See docs/customer-landing/README.md. Default: customer gets git repo + CI + secrets + Snowflake automation user; blueprint stays pinned/versioned.
LLM / skills
Skills drive platformctl and customer files — they do not own Snowflake. See skill at blueprint/skills/platform-ops/.
License
Internal use — adapt as needed for your organization.