finds.dev← search

// the find

z3z1ma/dbt-osmosis

★ 632 · Python · Apache-2.0 · updated Jun 2026

Provides automated YAML management and a streamlit workbench. Designed to optimize dev workflows.

dbt-osmosis is a CLI tool that automates the tedious parts of managing dbt schema YAML files: propagating column documentation down the DAG, reorganizing YAML file layout, and keeping descriptions in sync across models. It also ships a Streamlit workbench for interactive SQL development. Aimed squarely at dbt practitioners who are drowning in undocumented columns and stale YAML.

The YAML inheritance engine is the real value here — it walks the dbt lineage graph and propagates column descriptions from source to downstream models automatically, which is the kind of grunt work that eats hours in large dbt projects. The pre-commit hook integration is well-thought-out: running `yaml refactor` at commit time means schema changes stay in the same commit as model changes rather than drifting. The project has a proper test suite with DuckDB fixtures, structured changelogs, and CI that canaries against unreleased dbt Core versions — unusual discipline for a community tool. The `--dry-run --check` flag means you can preview diffs before applying, which matters a lot when the tool is touching hundreds of YAML files.

The SQL proxy (`[proxy]` extra) is explicitly marked as a local-only experiment with `mysql-mimic` defaults and no auth, TLS, or durable state — it's sitting in the public package with a warning not to expose it, which is a strange thing to ship. The LLM features (doc synthesis, test suggestions, NL queries) depend on OpenAI, not a local model, so they pull in a paid external dependency for what is otherwise a self-contained dev tool. At 632 stars the community is thin, meaning adapter-specific bugs (Snowflake quirks, BigQuery column type edge cases) may sit unresolved for a while. The Streamlit workbench is a separate optional install and the hosted demo is the main way to evaluate it, which makes it hard to assess without committing to the setup.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →