This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.
Consider using release 0.2.1 instead.
Reason given by maintainers: Broken when installed: alembic.ini and migrations/ are missing from the wheel, so the state store cannot initialize and `valved serve` / `valved init` fail. Fixed in 0.1.1.
Valved
Agent-native data engineering, from natural language to production pipelines.
Valved takes a goal in plain English — "make stg_orders incremental", "ingest the Stripe charges API into a Snowflake table" — turns it into a reviewable plan, and, when you approve, materializes the working code and opens a pull request in your repo: dbt models, Python dlt sources, SQL, tests, schema docs. All the boring parts of building and maintaining a warehouse pipeline, executed by agents that read your conventions and respect your existing project. It's an AI-first, open-source control plane over dlt + dbt — self-hosted, Apache 2.0.
Status:
v0.1.0— the first release. The full loop (init → plan → build → run → deploy → schedule) is built and green across 3,000+ tests, with CLI / REST / MCP parity. Pre-1.0: it's usable and complete, with room to refine the API before committing to 1.0 stability.
Install
pip install valved
Requires Python 3.11+. Valved runs against your own Postgres (a bundled docker compose is scaffolded for you) and your own warehouse (Snowflake is first-class).
Quickstart
valved init --with-dbt # scaffold a dlt + dbt project (+ bundled Postgres)
docker compose up -d # start the state store
cp .env.example .env # add ANTHROPIC_API_KEY + your Snowflake target
# intent → reviewable plan → working code
valved plan "ingest the Stripe charges API into raw_stripe, then a staging model stg_charges"
valved build <plan_id> # writes the dlt source, the dbt model, and pipelines/<name>.toml
valved run <pipeline> --watch # execute on demand; data lands in your warehouse
valved deploy <pipeline> # open a reviewable PR with the built code (default handoff)
valved auto-loads a project-local .env on startup (existing shell vars win). Set VALVED_NO_DOTENV=1 to disable it if you manage env vars elsewhere (direnv, mise, 1Password CLI).
What it does
The core loop — every step is a valved verb, with a REST + MCP equivalent:
plan→build— an AI harness turns intent into a reviewable Plan, then materializes it (dlt sources, dbt models, pipeline composition). It verifies by executing, not guessing.plan-and-buildis the one-shot path.run/serve/worker— on-demand and scheduled execution over a durable job queue + worker pool (cron scheduler, crash-recovery reaper, graceful drain).deploy— promote built code to version control via a configurable handoff (files → commit → push → pr, default PR), including cross-repo linked PRs. Valved opens and orders the PRs; you merge.ask— a read-only investigative explorer: "where doesnet_revenuecome from?", "what breaks if I changeraw_stripe.charges?" — answered with citations by investigating dbt's manifest + dlt's schema + your code.- Recovery — when a scheduled run fails, Valved diagnoses it (grounded in dlt's real exceptions) and proposes a reviewable fix — it never writes to prod autonomously.
Surfaces — the same functionality, four ways:
- CLI — the full
valvedcommand set (reference). - REST API — FastAPI with full CLI parity, auth, streaming, webhooks (
/api/openapi.json). - MCP server — auto-generated from REST; drive Valved from Claude Desktop / Cursor / Claude Code (
valved mcp-serve). - Static HTML UI — run history + per-run logs (
valved docs serve).
Documentation
- First run: with bundled Postgres · with external Postgres · installation
- Reference: CLI · config schema · glossary
- Design:
specs/PRD.md(what/why) ·specs/ARCHITECTURE.md(how) ·specs/DELIVERY.md(build history)
Open source & governance
Valved is Apache 2.0 and feature-complete for single-team self-hosters — no API endpoints or MCP tools are gated behind any commercial offering. See OSS_COMMITMENT.md for what's permanently open, and governance for the model.
Contributing
Contributions welcome — DCO sign-off (git commit -s), dev setup, and PR expectations are in CONTRIBUTING.md. Report security issues privately (see SECURITY.md).
License
Apache 2.0. See LICENSE.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file valved-0.1.0.tar.gz.
File metadata
- Download URL: valved-0.1.0.tar.gz
- Upload date:
- Size: 2.2 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f4e4f790a1005b99778ce270f1f491aceff24e8e04b4010423772376011e2978
|
|
| MD5 |
a3fec0e9c61f71cf2495cad16eae1743
|
|
| BLAKE2b-256 |
247799e65b5a3798284e0e54c2d6f884d9316456d76d718c2ef94f8d15a4acf8
|
Provenance
The following attestation bundles were made for valved-0.1.0.tar.gz:
Publisher:
publish.yml on valved-labs/valved
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
valved-0.1.0.tar.gz -
Subject digest:
f4e4f790a1005b99778ce270f1f491aceff24e8e04b4010423772376011e2978 - Sigstore transparency entry: 2364024404
- Sigstore integration time:
-
Permalink:
valved-labs/valved@c50432eb17a8cfb25bd64ae3ff5fbc72a1fafbd6 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/valved-labs
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c50432eb17a8cfb25bd64ae3ff5fbc72a1fafbd6 -
Trigger Event:
push
-
Statement type:
File details
Details for the file valved-0.1.0-py3-none-any.whl.
File metadata
- Download URL: valved-0.1.0-py3-none-any.whl
- Upload date:
- Size: 875.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
723264daa268b0f54a2af8e6e2428bf31064e1e32fe4f7632117e0373fe66a95
|
|
| MD5 |
0c8a7995ac596bfd75af2cd7d4c7234d
|
|
| BLAKE2b-256 |
904e63c8396bc45b57a729a9b42d7e2dd4720e5f36f12095f2a32d219c0c9f9a
|
Provenance
The following attestation bundles were made for valved-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on valved-labs/valved
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
valved-0.1.0-py3-none-any.whl -
Subject digest:
723264daa268b0f54a2af8e6e2428bf31064e1e32fe4f7632117e0373fe66a95 - Sigstore transparency entry: 2364024538
- Sigstore integration time:
-
Permalink:
valved-labs/valved@c50432eb17a8cfb25bd64ae3ff5fbc72a1fafbd6 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/valved-labs
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@c50432eb17a8cfb25bd64ae3ff5fbc72a1fafbd6 -
Trigger Event:
push
-
Statement type: