Skip to content

CLI Reference

Complete command reference for all dango commands.


Command Tree

dango
├── init [PROJECT_NAME]                  Create a new project
├── start                                Start platform services
├── stop                                 Stop platform services
├── status                               Show platform status
├── info                                 Show project information
├── rename NEW_NAME                      Rename project
├── serve                                Production server mode
├── upgrade                              Upgrade Dango version
├── cleanup                              Remove old artifacts
├── validate                             Validate project config
├── sync [SOURCE_NAME]                   Sync data from sources
├── generate                             Generate dbt staging models
├── run [DBT_ARGS]...                    Run dbt models
├── docs                                 Generate dbt documentation
├── source
│   ├── add                              Add a data source (wizard)
│   ├── list                             List configured sources
│   ├── remove SOURCE_NAME               Remove a source
│   └── edit [NAME]                      Open sources.yml in editor
├── model
│   ├── add                              Create a dbt model (wizard)
│   └── remove MODEL_NAME                Remove a dbt model
├── config
│   ├── validate                         Validate config files
│   ├── show                             Show current config
│   └── do-token
│       └── clear                        Remove stored DO token
├── db
│   ├── status                           Show database status
│   └── clean                            Remove orphaned tables
├── auth
│   ├── enable                           Enable authentication
│   ├── disable                          Disable authentication
│   ├── status                           Show auth status
│   ├── add-user EMAIL                   Create a new user
│   ├── list-users                       List all users
│   ├── reset-password EMAIL             Reset user password
│   ├── change-role EMAIL ROLE           Change user role
│   ├── deactivate-user EMAIL            Soft-disable a user
│   ├── reactivate-user EMAIL            Re-enable a user
│   ├── delete-user EMAIL                Permanently delete user
│   ├── unlock EMAIL                     Unlock locked account
│   ├── audit                            Query audit log
│   └── recover                          Emergency admin recovery
├── oauth
│   ├── setup {google|facebook}          OAuth setup wizard
│   ├── status                           Show token expiry
│   ├── check                            Validate OAuth config
│   ├── list                             List all credentials
│   ├── remove SOURCE_TYPE               Remove a credential
│   ├── refresh OAUTH_NAME               Re-authenticate
│   ├── google_sheets                    Authenticate Google Sheets
│   ├── google_analytics                 Authenticate Google Analytics
│   ├── google_ads                       Authenticate Google Ads
│   └── facebook_ads                     Authenticate Facebook Ads
├── deploy                               Deploy wizard (interactive)
│   └── destroy                          Tear down cloud infra
├── remote
│   ├── push                             Push files and rebuild
│   ├── rollback                         Restore from backup
│   ├── status                           Show server status
│   ├── logs                             View service logs
│   ├── ssh                              Open SSH session
│   ├── query SQL                        Run read-only SQL
│   ├── upgrade                          Upgrade remote Dango
│   ├── resize [SIZE]                    Resize server
│   ├── migrate                          Migrate to new server
│   ├── history                          Show deploy history
│   ├── sync SOURCE                      Trigger remote sync
│   ├── env
│   │   ├── set KEY=VALUE                Set env var
│   │   ├── get KEY                      Get env var (masked)
│   │   ├── list                         List env vars (masked)
│   │   └── delete KEY                   Remove env var
│   ├── firewall
│   │   ├── list                         Show firewall rules
│   │   ├── allow-ip IP_ADDRESS          Restrict to IP
│   │   └── allow-all                    Open to public
│   ├── domain
│   │   ├── set DOMAIN_NAME              Configure HTTPS
│   │   └── remove                       Revert to IP-only
│   ├── backup
│   │   ├── list                         List backups
│   │   ├── enable                       Enable daily backups
│   │   ├── disable                      Disable daily backups
│   │   ├── download NAME                Download from Spaces
│   │   └── restore SOURCE               Restore from backup
│   └── auth
│       ├── add-user EMAIL               Create remote user
│       ├── list-users                   List remote users
│       ├── remove-user EMAIL            Remove remote user
│       └── reset-password EMAIL         Reset remote password
├── schedule
│   ├── add                              Add schedule (wizard)
│   ├── list                             List schedules
│   ├── remove NAME                      Remove a schedule
│   ├── status [NAME]                    Show scheduler status
│   ├── enable NAME                      Enable a schedule
│   ├── disable NAME                     Disable a schedule
│   └── webhook
│       ├── add                          Add webhook (wizard)
│       ├── list                         List webhooks
│       ├── remove NAME                  Remove a webhook
│       └── test NAME                    Test a webhook
├── dev                                  Run dbt on dev copy
│   └── clean                            Remove dev artifacts
├── snapshot
│   ├── add                              Create dbt snapshot (wizard)
│   ├── list                             List dbt snapshots
│   ├── run                              Execute dbt snapshot
│   └── db                               Create DuckDB snapshot
├── monitor
│   └── run                              Run monitor analysis
├── analyze                              Alias for monitor run
├── governance
│   ├── drift-report                     Show schema drift
│   ├── pii-report                       Show PII findings
│   ├── pii-set SOURCE TABLE COLUMN      Set PII override
│   ├── pii-list                         List PII overrides
│   └── accept SOURCE                    Accept schema drift
├── notebook
│   ├── new                              Create notebook
│   └── open NAME                        Open in Marimo
├── metabase
│   ├── save                             Export dashboards to files
│   ├── load                             Import dashboards from files
│   └── refresh                          Refresh Metabase schema
├── dashboard
│   └── provision                        Create health dashboard
├── migrate
│   ├── status                           Show migration status
│   └── run                              Apply pending migrations
└── web                                  Start Web UI server

Global Options

dango [OPTIONS] COMMAND [ARGS]...
Option Description
--version Show the version and exit
--help Show help message and exit

Get help for any command:

dango <command> --help
dango <group> <subcommand> --help

Project Lifecycle

dango init

Create a new Dango data project.

dango init [PROJECT_NAME] [OPTIONS]
Option Description
PROJECT_NAME Project directory name (default: current directory .)
--skip-wizard Skip interactive wizard, create blank project
--force Force initialization even if project exists
dango init my-analytics
dango init . --skip-wizard
dango init my-project --force

Full guide


dango start

Start all platform services (Web UI, Metabase, dbt-docs, file watcher).

dango start [OPTIONS]
Option Description
-y, --yes Skip confirmation prompts
dango start
dango start -y

Access the platform at http://localhost:<port> (default: 8800). Change port in .dango/project.yml under platform.port.

Full guide


dango stop

Stop all platform services.

dango stop [OPTIONS]
Option Description
--all Stop ALL Dango containers from any project
dango stop
dango stop --all

dango status

Show platform status including service health and access URLs.

dango status

No additional options.


dango info

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

dango info

No additional options.


dango rename

Rename the project and update its local domain routing.

dango rename NEW_NAME
Argument Description
NEW_NAME New project name (becomes <new_name>.dango)

Updates config, routing table, nginx config, and /etc/hosts.

dango rename my-new-analytics

dango serve

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

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

Unlike dango start, this binds to all interfaces, runs in the foreground, and skips browser/file-watcher.


dango upgrade

Upgrade Dango to the latest version (or a specific version), then run pending migrations.

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

Restart services with dango start after upgrading.


dango cleanup

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

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

Data Operations

dango sync

Load data from all sources (or a specific source).

dango sync [SOURCE_NAME] [OPTIONS]
Option Type Description
SOURCE_NAME positional Sync only this source
--source TEXT option Sync specific source (deprecated, use positional arg)
--since TEXT date Start date for incremental loading (YYYY-MM-DD)
--until TEXT date End date for incremental loading (YYYY-MM-DD)
--backfill TEXT duration Backfill duration (e.g. 7d, 2w, 1m)
--limit INTEGER number Limit rows per source (dev testing)
--full-refresh flag Drop existing data and reload from scratch
--dry-run flag Show what would be synced without executing
--allow-schema-changes flag Allow CSV schema changes (add columns, NULL for missing)
-y, --yes flag Skip confirmation prompts
dango sync                               # Sync all enabled sources
dango sync chess                         # Sync only 'chess'
dango sync --since 2024-01-01            # Override start date
dango sync --backfill 30d                # Backfill last 30 days
dango sync --limit 1000                  # Dev mode: limit rows
dango sync --full-refresh                # Reset and reload all
dango sync --dry-run                     # Preview only

Full guide


dango generate

Generate dbt staging models and schema artifacts from data sources.

dango generate [OPTIONS]
Option Description
--models Generate staging models only
--all Generate all artifacts (models + schema)
dango generate --models
dango generate --all

Tip

Run dango sync first to load data into DuckDB before generating models.

Full guide


dango run

Run dbt models. All dbt run arguments are passed through.

dango run [DBT_ARGS]...

Any dbt run argument works — --select, --full-refresh, --exclude, etc.

dango run                            # Run all models
dango run --select my_model          # Run specific model
dango run --select my_model+         # Model and downstream
dango run --select tag:marts         # By tag
dango run --full-refresh             # Full refresh incremental models

Full guide


dango docs

Generate dbt documentation.

dango docs

No additional options. After generation, view docs at http://localhost:<port>/catalog if the platform is running.


dango validate

Validate project configuration and setup.

dango validate

No additional options. Checks project structure, config files, source configs, dbt setup, database connectivity, dependencies, and file permissions.

Full guide


Source Management

dango source add

Add a new data source via interactive wizard. Supports 27+ sources across 9 categories.

dango source add

No additional options — the wizard handles all configuration interactively.

Full guide


dango source list

List all configured data sources.

dango source list [OPTIONS]
Option Description
--enabled-only Show only enabled sources
dango source list
dango source list --enabled-only

dango source remove

Remove a data source.

dango source remove SOURCE_NAME [OPTIONS]
Option Description
-y, --yes Skip confirmation prompt
dango source remove my_csv
dango source remove my_csv --yes

dango source edit

Open sources.yml in your default editor ($EDITOR).

dango source edit [NAME]
Argument Description
NAME Optional — hints at the section to focus on
dango source edit
dango source edit chess

Model Management

dango model add

Create a new dbt model (intermediate or marts layer) via interactive wizard.

dango model add

Staging models are auto-generated by dango generate — this wizard handles intermediate and marts layers only.

Full guide


dango model remove

Remove a custom dbt model and cascade cleanup (SQL file, schema entry, monitors, optionally DuckDB table).

dango model remove MODEL_NAME [OPTIONS]
Option Description
-y, --yes Skip confirmation prompt
--dry-run Show what would be removed without executing
dango model remove fct_daily_sales
dango model remove int_orders --yes
dango model remove fct_daily_sales --dry-run

Config

dango config validate

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

dango config validate

No additional options.


dango config show

Show current configuration.

dango config show

No additional options.


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 (tables in DuckDB with no matching source config).

dango db status

No additional options.


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

Auth

User authentication and access management. See the Auth Commands page for detailed usage.

dango auth enable / disable

dango auth enable
dango auth disable

dango auth status

dango auth status

dango auth add-user

dango auth add-user EMAIL [OPTIONS]
Option Description
--role [admin\|editor\|viewer] User role
--password Generate temp password instead of invite link
--base-url TEXT Base URL for invite links

dango auth list-users

dango auth list-users

dango auth reset-password

dango auth reset-password EMAIL

dango auth deactivate-user / reactivate-user

dango auth deactivate-user EMAIL
dango auth reactivate-user EMAIL

dango auth delete-user

dango auth delete-user EMAIL

Danger

Permanently deletes the user. This cannot be undone.

dango auth unlock

dango auth unlock EMAIL

dango auth change-role

dango auth change-role EMAIL {admin|editor|viewer}

dango auth audit

dango auth audit [OPTIONS]
Option Description
--since TEXT Filter events after date (YYYY-MM-DD)
--type TEXT Filter by event type
--limit INTEGER Max events to show

dango auth recover

dango auth recover

Creates a recovery admin account for emergency access.

Full guide


OAuth

OAuth provider authentication. See the OAuth Commands page for detailed usage.

dango oauth setup

dango oauth setup {google|facebook}

dango oauth status / check / list

dango oauth status      # Show credential expiry
dango oauth check       # Validate OAuth config
dango oauth list        # List all credentials

dango oauth remove

dango oauth remove SOURCE_TYPE

dango oauth refresh

dango oauth refresh OAUTH_NAME

Provider-specific commands

dango oauth google_sheets
dango oauth google_analytics
dango oauth google_ads
dango oauth facebook_ads

Each walks through the browser-based OAuth flow and saves credentials to .dlt/secrets.toml.

Full guide


Deploy

dango deploy

Interactive deployment wizard. Supports DigitalOcean, BYOS (bring your own server), and reconnection.

dango deploy [OPTIONS]
Option Description
--non-interactive All params via flags/env (DigitalOcean)
--reconnect Reconnect to an existing server
--ip TEXT Server IP for --reconnect
--region TEXT DO region slug
--size TEXT Droplet size slug
--domain TEXT Custom domain for HTTPS
--admin-email TEXT Admin user email
--admin-password TEXT Admin password (or DANGO_ADMIN_PASSWORD env)
--skip-backups Skip automated backup setup
--byos Deploy to an existing server (any provider)
--server-ip TEXT Server IP/hostname for --byos
--ssh-user TEXT SSH user for --byos
--ssh-key TEXT SSH key path for --byos
dango deploy                                    # Interactive wizard
dango deploy --non-interactive --region nyc3    # Scripted DO deploy
dango deploy --reconnect --ip 1.2.3.4          # Reconnect
dango deploy --byos --server-ip 1.2.3.4        # Your own server

dango deploy destroy

Tear down all cloud infrastructure for this project.

dango deploy destroy [OPTIONS]
Option Description
--force Skip confirmation and backup prompts
--keep-spaces Keep the Spaces bucket
--keep-ssh-key Keep the SSH key on DigitalOcean

Danger

This deletes the Droplet, firewall, SSH key (from DO), and Spaces bucket. Local files and SSH keys are never deleted.

Full guide


Remote

Manage the remote cloud server. See the Deploy & Remote page for detailed usage.

Core commands

dango remote push [OPTIONS]           # Push files and rebuild
dango remote rollback [OPTIONS]       # Restore from backup
dango remote status                   # Show server status
dango remote logs [OPTIONS]           # View service logs
dango remote ssh                      # Interactive SSH session
dango remote query SQL [OPTIONS]      # Read-only SQL query
dango remote upgrade [OPTIONS]        # Upgrade remote Dango
dango remote resize [SIZE]            # Resize server
dango remote migrate [OPTIONS]        # Migrate to new server
dango remote history [OPTIONS]        # Show deploy history
dango remote sync SOURCE [OPTIONS]    # Trigger remote sync
dango remote repair                   # Diagnose and fix issues
dango remote reset-metabase           # Reset Metabase to fresh state

Environment variables

dango remote env set KEY=VALUE
dango remote env get KEY
dango remote env list
dango remote env delete KEY

Firewall

dango remote firewall list
dango remote firewall allow-ip IP_ADDRESS
dango remote firewall allow-all

Domain & HTTPS

dango remote domain set DOMAIN_NAME
dango remote domain remove

Backups

dango remote backup list
dango remote backup enable
dango remote backup disable
dango remote backup download NAME [-o PATH]
dango remote backup restore SOURCE [-y]

Remote user management

dango remote auth add-user EMAIL [--role ROLE]
dango remote auth list-users
dango remote auth remove-user EMAIL
dango remote auth reset-password EMAIL

Full guide


Schedule

Manage data sync schedules and webhook notifications. See the Schedule Commands page for detailed usage.

Schedules

dango schedule add                   # Interactive wizard
dango schedule list                  # List all schedules
dango schedule remove NAME [-y]      # Remove by name
dango schedule status [NAME]         # Overview or single schedule detail
dango schedule enable NAME           # Enable a schedule
dango schedule disable NAME          # Disable a schedule

Webhooks

dango schedule webhook add           # Interactive wizard
dango schedule webhook list          # List webhooks
dango schedule webhook remove NAME   # Remove webhook
dango schedule webhook test NAME     # Send test payload

Full guide


Dev

dango dev

Run dbt against a copy of the production database. The production database is never modified.

dango dev [OPTIONS]
Option Description
-s, --select TEXT dbt model selection (e.g. stg_*, my_model+)
--diff Show row-count comparison after run
dango dev                     # Run all models on dev copy
dango dev -s stg_orders       # Run specific model
dango dev --diff              # Show diff after run

The dev database persists at .dango/dev/warehouse_dev.duckdb for inspection.

dango dev clean

Remove the dev database and related artifacts.

dango dev clean

Full guide


Snapshot

dango snapshot add

Interactive wizard to create a dbt snapshot (SCD Type 2).

dango snapshot add

dango snapshot list

List configured dbt snapshots.

dango snapshot list

dango snapshot run

Execute dbt snapshot to capture SCD Type 2 change history.

dango snapshot run [OPTIONS]
Option Description
-s, --select TEXT Run specific snapshot(s) by name
dango snapshot run
dango snapshot run -s snap_shopify_orders

dango snapshot db

Create a DuckDB read-only snapshot for notebook use.

dango snapshot db [OPTIONS]
Option Description
-u, --user TEXT Username for the snapshot

Full guide


Monitor

dango monitor run

Run monitor analysis and display data quality results.

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

dango analyze

Alias for dango monitor run.

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

Governance

dango governance drift-report

Show schema drift events.

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 pii-report

Show PII findings.

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-set

Set a PII override for a column.

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 "Contains user emails"
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

dango governance accept

Accept schema drift for a source and resume dbt.

dango governance accept SOURCE

Notebook

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)
dango notebook new -n my_analysis -t explore
dango notebook new -n data_quality -t quality

dango notebook open

Open a notebook in Marimo. Acquires a lock, creates a DuckDB snapshot, and starts Marimo. Press Ctrl+C to exit.

dango notebook open NAME

Metabase

dango metabase save

Export Metabase dashboards and questions to files (YAML format in metabase/ directory).

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

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 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.

dango metabase refresh

Dashboard

dango dashboard provision

Provision the Data Pipeline Health dashboard in Metabase.

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

Creates a pre-built dashboard with pipeline health score, source sync status, data freshness indicators, row count trends, and dbt test results.


Migrate

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

Web

dango web

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

dango web [OPTIONS]
Option Description
--host TEXT Host to bind to
--port INTEGER Port to bind to
--reload Enable auto-reload (development)

Full guide


Exit Codes

Code Meaning
0 Success
1 Error (check output for details)