Installation
Pick the installation approach that matches your workflow. All examples assume you install a dbt adapter alongside dbt-osmosis.
dbt-osmosis keeps its package support open for dbt Core 1.8+.
Audited blocking support covers dbt Core 1.8.x through 1.11.x in CI. The package metadata intentionally remains dbt-core>=1.8 without an upper bound so installers can resolve newer dbt releases. Future dbt Core minors are canary-only until explicitly audited; scheduled/manual canary CI uses unpinned latest dbt-core and dbt-duckdb to make upstream breakage visible without redefining audited support. Install a dbt adapter version that is compatible with the dbt Core runtime in your environment; adapter compatibility is owned by the adapter and dbt Core pairing, not by dbt-osmosis extras.
Install with uv (recommended)
uv tool install --with="dbt-<adapter>" dbt-osmosis
This creates an isolated tool environment and exposes the dbt-osmosis command globally.
Run with uvx (ephemeral)
uvx --with="dbt-<adapter>" dbt-osmosis --help
Use uvx when you want a one-off run without installing the tool globally.
Install with pip
pip install "dbt-osmosis" "dbt-<adapter>"
This installs into the active Python environment (virtualenv, venv, or system Python).
Optional extras
dbt-osmosis[workbench]installs the Streamlit workbench UI dependencies.dbt-osmosis[duckdb]installs the DuckDB adapter used by the demo project and fixture workflows.dbt-osmosis[openai]installs the OpenAI SDK for synthesis, natural-language generation,test-llm, and AI test suggestions. IfLLM_PROVIDERis unset, these commands default to the OpenAI provider.dbt-osmosis[azure]installs Azure AD authentication support for Azure OpenAI; use it together withdbt-osmosis[openai]forLLM_PROVIDER=azure-openai-ad.dbt-osmosis[proxy]only installs dependencies for the experimental opt-in SQL proxy runtime; it does not imply production support, start a proxy server, configure authentication, TLS, or listen/bind settings, or make comment middleware durable. The proxy module entrypoint is a local-only experiment withmysql-mimicdefaults, not a hardened user-facing server; do not expose it to untrusted networks. The proxy comment middleware is in-memory only, andticket:c10proxy25owns proxy support semantics.
Verify
dbt-osmosis --help
Replace <adapter> with your dbt adapter (for example: snowflake, bigquery, postgres, redshift, duckdb).