Skip to main content

Enterprise AI SDLC toolkit for SQLMesh projects, with spec-driven workflows, CI validation, and engine-specific presets.

Project description

sqlmesh-spec-kit

AI SDLC and durable memory for SQLMesh teams: specs are contracts, SQLMesh plans are deployment evidence, and agents implement only inside approved task boundaries.

Install

After the first PyPI release:

uvx --from sqlmesh-spec-kit sqlmesh-specify --help

Before PyPI release, install directly from this repository:

uvx --from git+https://github.com/duckcode-ai/sqlmesh-spec-kit.git sqlmesh-specify --help

Initialize

Run inside an existing SQLMesh project with config.yaml, config.yml, or config.py and a models/ directory.

sqlmesh-specify init analytics --engine duckdb --target .
sqlmesh-specify doctor --target .
sqlmesh-specify validate project --target .
sqlmesh-specify validate sqlmesh --target .
sqlmesh-specify report --target . --format markdown

Supported engine presets: duckdb, snowflake, databricks, bigquery, trino, redshift, postgres, mysql, mssql, athena, spark, and clickhouse.

Verified SQLMesh Example

The full SDLC flow has been tested against the official SQLMesh examples repository:

git clone https://github.com/TobikoData/sqlmesh-examples.git
cd sqlmesh-examples/001_sushi/2_moderate
uvx --from git+https://github.com/duckcode-ai/sqlmesh-spec-kit.git sqlmesh-specify init sushi-moderate --engine duckdb --target .
uvx --from git+https://github.com/duckcode-ai/sqlmesh-spec-kit.git sqlmesh-specify ci --target .

For the complete spec, plan, tasks, implementation, SQLMesh test, and sqlmesh plan dev --auto-apply --no-prompts flow, follow Tutorial 02.

Workflow

  1. Draft spec.md with EARS acceptance criteria.
  2. Human approves the spec by setting status exactly to approved.
  3. Create plan.md with SQLMesh environment, changed models, audits/tests, backfill scope, forward-only/restatement decision, and plan/apply evidence expectations.
  4. Human approves the plan by setting status exactly to approved.
  5. Create tasks.md and implement only approved files.
  6. Review final diff against spec.md, plan.md, tasks.md, and SQLMesh plan/audit/test evidence.

Validators do not execute SQLMesh in v0.1. Run sqlmesh plan <env>, tests, and audits in your project workflow and attach the evidence to the spec directory or PR.

CLI

sqlmesh-specify init <project-name> --engine <engine> --target . [--force]
sqlmesh-specify doctor --target .
sqlmesh-specify validate <path/to/spec.md>
sqlmesh-specify validate project --target .
sqlmesh-specify validate sqlmesh --target .
sqlmesh-specify report --target . --format markdown
sqlmesh-specify ci --target .
sqlmesh-specify jira pull|attach|create-tasks|sync
sqlmesh-specify confluence pull-page|publish|sync

Docs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sqlmesh_spec_kit-0.1.0.tar.gz (56.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sqlmesh_spec_kit-0.1.0-py3-none-any.whl (62.9 kB view details)

Uploaded Python 3

File details

Details for the file sqlmesh_spec_kit-0.1.0.tar.gz.

File metadata

  • Download URL: sqlmesh_spec_kit-0.1.0.tar.gz
  • Upload date:
  • Size: 56.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for sqlmesh_spec_kit-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2a568ef79b085727e9f67a6f4b9c8580fc38ca4f685b9405d619ce220af9eacb
MD5 daee0111da4bbc701a3ad039ea61bcaf
BLAKE2b-256 f2ecfcbe26b3d83bf987e774adfcb49905865eb64167092a8b949b0dd03be501

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlmesh_spec_kit-0.1.0.tar.gz:

Publisher: release.yml on duckcode-ai/sqlmesh-spec-kit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sqlmesh_spec_kit-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for sqlmesh_spec_kit-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa52cd720d5fd13a06241fd85c6642d1bb1d66e2ade73bdfdb8ed0c89ebf4044
MD5 1f32e10d3add5794747c27d6206e1c90
BLAKE2b-256 7bab697e360a3b2922dd82a090f6725afddf9b5b61e5651899e02b35caa409a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for sqlmesh_spec_kit-0.1.0-py3-none-any.whl:

Publisher: release.yml on duckcode-ai/sqlmesh-spec-kit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page