Skip to content

Other Commands

Configuration, database, governance, notebooks, monitoring, and utility commands.


Overview

This page covers CLI commands not covered by the dedicated group pages. These include project utilities, database management, data governance, notebook management, and more.


Configuration

dango config validate

Validate all configuration files: .dango/sources.yml, .dango/project.yml, and dbt source documentation.

dango config validate

Checks performed:

  • YAML syntax validity
  • Required fields present
  • Source configuration correctness
  • dbt source documentation consistency

dango config show

Show current configuration values.

dango config show

dango config do-token clear

Remove the stored DigitalOcean API token.

dango config do-token clear

Database

dango db status

Show database status including orphaned tables. Orphaned tables exist in DuckDB but have no corresponding source in .dango/sources.yml.

dango db status

dango db clean

Remove orphaned tables from DuckDB.

dango db clean [OPTIONS]
Option Description
-y, --yes Skip confirmation prompt

Warning

This permanently removes tables from DuckDB. Run dango db status first to review what will be deleted.

dango db clean
dango db clean --yes

Validation

dango validate

Validate project configuration and setup. Comprehensive health check that verifies:

  • Project directory structure
  • Configuration files (project.yml, sources.yml)
  • Data source configurations
  • dbt setup (dbt_project.yml, profiles.yml, models)
  • Database connectivity (DuckDB)
  • Required dependencies (dlt, dbt, duckdb, etc.)
  • File permissions
dango validate

Run before syncing or deploying to catch configuration issues early.

Validating project configuration...

✓ Project configuration (.dango/project.yml)
✓ Sources configuration (.dango/sources.yml)
✓ dbt project (dbt/dbt_project.yml)
✓ DuckDB database accessible
✓ Dependencies installed
✗ Docker not running (Metabase won't start)

Validation complete: 1 error, 0 warnings

Governance

dango governance drift-report

Show schema drift events — changes in source table schemas detected during sync.

dango governance drift-report [OPTIONS]
Option Description
--source TEXT Filter by source name
--table TEXT Filter by table name
--limit INTEGER Max events to show
dango governance drift-report
dango governance drift-report --source stripe --limit 10

dango governance accept

Accept schema drift for a source and resume dbt. Use after reviewing drift events to acknowledge the schema change.

dango governance accept SOURCE
dango governance accept stripe

dango governance pii-report

Show PII (Personally Identifiable Information) findings detected by automated scanning.

dango governance pii-report [OPTIONS]
Option Description
--source TEXT Filter by source name
--table TEXT Filter by table name
--limit INTEGER Max findings to show
dango governance pii-report
dango governance pii-report --source my_source --table users

dango governance pii-set

Set a PII override for a column. Mark a column as confirmed PII or confirmed not-PII.

dango governance pii-set SOURCE TABLE COLUMN [OPTIONS]
Option Required Description
--status [pii\|not_pii] Yes PII status to set
--reason TEXT No Reason for the override
dango governance pii-set my_source users email --status pii --reason "User email addresses"
dango governance pii-set my_source orders order_id --status not_pii

dango governance pii-list

List PII overrides.

dango governance pii-list [OPTIONS]
Option Description
--source TEXT Filter by source name

Notebooks

dango notebook new

Create a new Marimo notebook from a starter template.

dango notebook new [OPTIONS]
Option Required Description
-t, --template [explore\|quality\|blank] No Starter template
-n, --name TEXT Yes Notebook name (no extension)

Templates:

Template Description
explore Data exploration with DuckDB queries
quality Data quality analysis
blank Empty notebook
dango notebook new -n my_analysis -t explore
dango notebook new -n data_quality -t quality
dango notebook new -n scratch -t blank

dango notebook open

Open a notebook in Marimo. Acquires a DuckDB lock, creates a read-only snapshot, and starts the Marimo server. Press Ctrl+C to release the lock and exit.

dango notebook open NAME
dango notebook open my_analysis

Info

Notebooks use a DuckDB snapshot to avoid blocking write operations. The snapshot is created automatically when you open the notebook.


Monitoring

dango monitor run

Run monitor analysis and display data quality results.

dango monitor run [OPTIONS]
Option Description
--source TEXT Filter by source name
dango monitor run
dango monitor run --source stripe

dango analyze

Alias for dango monitor run.

dango analyze [OPTIONS]
Option Description
--source TEXT Filter by source name

Metabase

dango metabase save

Export Metabase dashboards and questions to YAML files in the metabase/ directory.

dango metabase save [OPTIONS]
Option Description
--all Include personal collections (default: "Shared" only)
--collections TEXT Specific collections to export (comma-separated)
dango metabase save
dango metabase save --collections "Shared,Marketing"

Workflow: Make changes in Metabase UI, then run dango metabase save to export. Optionally commit to git for version control.


dango metabase load

Import Metabase dashboards and questions from files.

dango metabase load [OPTIONS]
Option Description
--overwrite Replace existing dashboards/questions
--dry-run Preview what would be imported

Warning

--overwrite replaces existing items in Metabase. Uncommitted Metabase changes will be lost.

dango metabase load
dango metabase load --dry-run
dango metabase load --overwrite

dango metabase refresh

Refresh Metabase schema to discover new tables and schemas. Use after creating new dbt models or schemas.

dango metabase refresh

Dashboard

dango dashboard provision

Provision the Data Pipeline Health dashboard in Metabase with pre-built cards for pipeline health score, source sync status, data freshness, row count trends, and dbt test results.

dango dashboard provision [OPTIONS]
Option Description
--url TEXT Metabase URL
--username TEXT Metabase admin username (auto-detected from auth DB)
--password TEXT Metabase admin password
dango dashboard provision
dango dashboard provision --url http://metabase.local

Migrations

dango migrate status

Show migration status for all databases.

dango migrate status

dango migrate run

Apply pending migrations.

dango migrate run [OPTIONS]
Option Description
--db TEXT Apply to a specific database only
dango migrate run
dango migrate run --db auth

Utilities

dango info

Show project information: name, purpose, stakeholders, data refresh schedule, last sync time.

dango info

dango rename

Rename the project and update its local domain routing (config, nginx, /etc/hosts).

dango rename NEW_NAME
dango rename my-new-analytics

dango cleanup

Remove old log archives, dbt artifacts, and Python cache.

dango cleanup [OPTIONS]
Option Description
--dry-run Show what would be deleted
-y, --yes Skip confirmation
--logs-only Only clean log archives
--docker Also prune dangling Docker volumes
dango cleanup --dry-run
dango cleanup --yes
dango cleanup --logs-only
dango cleanup --docker

dango upgrade

Upgrade Dango to the latest version, then run pending migrations.

dango upgrade [OPTIONS]
Option Description
--version TEXT Specific version (e.g. 1.2.3)
-y, --yes Skip confirmation
dango upgrade
dango upgrade --version 1.2.3 -y

Restart services with dango start after upgrading.


dango serve

Run Dango in production server mode (foreground). Intended for systemd on cloud servers.

dango serve [OPTIONS]
Option Default Description
--host TEXT 0.0.0.0 Bind address
--port INTEGER config or 8800 Port
--workers INTEGER 1 Number of uvicorn workers

dango web

Start the Web UI backend server only (without Metabase, file watcher, or dbt-docs). Primarily used for development.

dango web [OPTIONS]
Option Description
--host TEXT Host to bind to
--port INTEGER Port to bind to
--reload Enable auto-reload (development)
dango web                   # Start on default port
dango web --port 3001       # Custom port
dango web --reload          # Auto-reload on code changes

Info

Most users should use dango start (starts all services) or dango serve (production mode). dango web is for running the API server in isolation.


Troubleshooting

Validate shows Docker not running

Metabase requires Docker. Start Docker Desktop or the Docker daemon. If you don't need Metabase, the rest of Dango works without Docker.

Notebook fails to open

Another process may hold a DuckDB lock. Wait for active syncs to complete, or check dango status for running operations.

Metabase load skips everything

By default, dango metabase load skips existing items. Use --overwrite to replace them, or --dry-run to preview.

Migration fails

Run dango migrate status to see which migrations are pending. If a specific database migration fails, check the error output and try dango migrate run --db <name>.