Quick start
Last updated 6 September 2026
What you need
Frontier assesses a dbt + Snowflake project in your environment and uploads aggregates to hosted SaaS. It does not replace dbt, GitHub, Snowflake, orchestration, or CDC tools.
- Python 3.11, 3.12, or 3.13
- dbt Core or dbt Fusion compiling a Snowflake project
- A GitHub repository for pull-request checks
- A Frontier organization and project (created with
frontier signupor in the dashboard)
Other warehouse adapters exist in the source tree, but the released 0.1.1 extra is Snowflake only.
Install the runner
The standard install is the pinned PyPI extra. Run this on the same machine that compiles dbt and can reach Snowflake:
pipx install "frontier-runner[snowflake]==0.1.1"pip is equivalent if you do not use pipx:
python3 -m pip install "frontier-runner[snowflake]==0.1.1"Confirm the CLI: frontier --version must print 0.1.1. Do not install from a Git commit SHA, clone the runner repository, or set FRONTIER_RUNNER_GIT_URL / FRONTIER_RUNNER_REF.
First SQL-change assessment
From the dbt project root. Activation in the dashboard is manual.frontier discover only uploads a draft.
frontier signup
frontier login --api-key
frontier init
dbt compile
frontier discover
# review and Activate the draft in Frontier
frontier doctor
frontier setup github
# commit .github/workflows/frontier.yml
frontier demo changefrontier signupopens hosted signup. Copy the project API key once, thenfrontier login --api-key. Browser login is not available in this runner version.- Credentials resolve from
FRONTIER_API_KEY, the OS keychain, then a0600fallback file. Warehouse passwords stay in dbtprofiles.yml. - CI fetches the active semantic manifest and fails closed if none exists. Inferred routes cannot be activated until you confirm them.
- The generated workflow installs
frontier-runner[snowflake]==0.1.1and runsfrontier prove, notfrontier run.
Open a pull request that changes a WHERE filter you own. A known Jaffle-style example is documented under SQL-change assessments. Then read the PR comment with Understanding an assessment.