DAC CLI

A dashboards-as-code CLI: an agent describes panels in YAML and TSX, DAC validates them, builds SQL from metrics and serves them

  • 803 ★ on the repository
  • Last commit
  • AGPL-3.0
CLIOfficial

Extended access

Why this level

  • The CLI runs SQL queries on your database through Bruin connections and sends anonymous telemetry by default.
All reasons and checks

bruin-data/dac

Install

Manual install

curl -LsSf https://getbruin.com/install/dac | sh

The script installs the Bruin CLI if it is missing. Then `dac init my-dashboards` creates a project and installs the `create-dashboard` skill for Claude and Codex.

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • The CLI runs SQL queries on your database through Bruin connections and sends anonymous telemetry by default.

This is third-party code. Review the repository files before installing.

What it does

DAC defines dashboards as YAML or TSX files and serves them from a local server. TSX gives loops, conditionals and custom components, so a layout can be built from database contents at load time. One command, `dac serve --dir . --open`, opens the result in a browser, `dac validate --dir .` checks the files, and the `--with-database` flag runs widget queries against a live database. A semantic layer keeps metrics and dimensions in the `semantic/` folder: you define them once, reference them from any widget and DAC generates the SQL. Database connections come from the Bruin CLI, which supports Postgres, MySQL, Snowflake, BigQuery, Redshift, Databricks and others, and queries run through `bruin query`. The tool is designed so an agent builds dashboards reproducibly and with checks. `dac init my-dashboards` creates a starter project and installs the `create-dashboard` skill for Claude and Codex into `.claude/skills/` and `.codex/skills/`, and `dac skills install --dir .` adds it to an existing project. The skill explains the YAML and TSX formats, widget types, filters and query templating.

Who it is for. Analysts and data engineers who hand dashboard building to an agent over their warehouse and want it as reviewable code in the repository.

Good fit when

  • An agent has to build a sales metrics panel from the warehouse and the result lands in an ordinary pull request
  • Metrics such as revenue have to be defined once and used in dozens of widgets without copying SQL
  • The set of tabs depends on the data, for example one tab per region, and TSX loops are unavoidable
  • Before launching a dashboard the files have to be checked, and optionally the queries on a real database
  • A team already works through Bruin and wants dashboards on top of its connections

Not a fit when

  • You need a no-code dashboard edited with a mouse: visual BI systems fit that
  • The warehouse is not connected through Bruin: DAC takes connections from there and runs queries with `bruin query`
  • You need a shared cloud environment for many users with access rights: DAC runs as a local server
  • Anonymous usage statistics are unacceptable: they are on by default and must be turned off with an environment variable

Example request

Create a revenue dashboard from the sales table: a total metric, a monthly chart and a region filter, then run it locally.

Limitations

DAC runs queries through the Bruin CLI, and the install script installs Bruin first if it is missing from `PATH`. Without Bruin database connections the dashboards will not come alive.

The skill documentation calls `dac check` the most expensive command: it runs every widget's query on a live database and time grows with their number. For iteration the skill recommends cheaper checks.

The tool sends anonymous telemetry: command name, duration, OS and version. Queries, results and connection names are not collected. To turn sending off set `TELEMETRY_OPTOUT=1` or `DO_NOT_TRACK=1`. The license is AGPL-3.0. The install script runs from the internet through `curl | sh`, so read it first.

How to disable. Remove the `dac` binary and the `.claude/skills/create-dashboard` and `.codex/skills/create-dashboard` folders in the project. The `~/.dac/telemetry.json` file with the install ID can also be deleted.

FAQ

How do I install DAC?

With `curl -LsSf https://getbruin.com/install/dac | sh`. The script installs the Bruin CLI itself if it is missing. For a fresh build from the main branch add `-s -- --channel edge`.

How do I connect the skill to Claude Code or Codex?

`dac init` puts the `create-dashboard` skill into `.claude/skills/` and `.codex/skills/` itself, and in an existing project `dac skills install --dir .` does it.

Which databases are supported?

Everything Bruin supports: Postgres, MySQL, Snowflake, BigQuery, Redshift, Databricks and others. DAC uses your Bruin connections.

How does YAML differ from TSX?

YAML suits a static layout with no programming. TSX adds loops, variables, custom components and a layout built from data at load time.

How do I turn off telemetry?

Set `TELEMETRY_OPTOUT=1` or `DO_NOT_TRACK=1`. Builds without a write key, such as one from `make build`, send nothing.

Discussion

No questions or reviews yet.

CLI tools

dbt Charts

dbt-charts

Official

Declarative YAML on top of SQL for dashboards: you describe how to show data, agents write YAML, people audit. The dbt-charts package and the dct CLI, beta

CLIExtended access599Repository stars
Official

Lightdash skills: metrics, charts and dashboards as YAML, branch previews, dbt SQL rules and a safety check before a server upgrade

SkillExtended access6.2KRepository stars

The Dex plugin: an agent explores a database, builds dbt models and a semantic layer and tracks schema drift under cost control

PluginExtended access119Repository stars

A skill that decides whether a dashboard is needed and builds it around a confirmed decision, never inventing rankings or scores.

SkillMinimal access58Repository stars

DataLens Dev MCP

datalens-dev-mcp

Russian stack

Local MCP server and Codex plugin for Yandex DataLens dashboard development: read, author, publish, back up and clean up objects

MCP serverBroad access7Repository stars

A template for data scientists: AGENTS.md, CLAUDE.md and skills for Python, SQL, Polars and model diagnostics.

SkillMinimal access115Repository stars

README in short

A short README with two dashboard samples (TSX and YAML), installation, a quickstart and four example projects. Telemetry gets its own section covering what it collects and how to turn it off. The documentation is built with VitePress in the docs folder.

README badge

Report a problem