databricks-tui 0.20.2

Terminal dashboard for Databricks: compute, jobs, pipelines, warehouses, Unity Catalog, SQL console, costs and lineage
Documentation

databricks-tui

Terminal dashboard for Databricks — monitor compute, jobs, pipelines, SQL warehouses, dashboards, and Unity Catalog in one view.

demo

Community project — not affiliated with, endorsed by, or supported by Databricks, Inc. It drives the official Databricks CLI with your own credentials; nothing is sent anywhere except your workspace.

  • Animated splash screen and a Databricks-branded look: product-named panes (Compute, Lakeflow, SQL Warehouses, AI/BI Dashboards), status chips, and refresh flashes when new data lands
  • Five color-coded panes that populate independently as each data source responds
  • Jobs show their latest run result and a ✓✗✓ history strip, not just the config
  • Health summary in the header: running / pending / failed / idle counts at a glance
  • Active work floats to the top of every pane: running clusters, jobs and warehouses first, then pending, failures, finished, idle
  • Grep any pane with /: filter by name, detail text or status (/running shows only running things)
  • Drill into any item: formatted key facts and recent activity, raw JSON one key away
  • Debug Lakeflow without the browser: drill from a job into any run (per-task states, durations, the actual error output of failed tasks) or from a pipeline into any update (state, cause, event-log entries with failures highlighted); live runs refresh themselves every few seconds
  • SQL console (:): type a statement, run it on a warehouse, page through results — the whole lakehouse is queryable from the dashboard; with a table/view selected in the catalog pane, the prompt opens pre-filled with SELECT * FROM catalog.schema.table LIMIT 100, ready to edit; ↑/↓ cycle through past statements (persisted in ~/.config/databricks-tui/history), Ctrl+R searches them incrementally, Ctrl+X composes multi-line SQL in your $EDITOR, and Ctrl+S exports results to CSV — previews export with e
  • Problems view (!): everything currently failing across all panes in one list, with Enter jumping straight to the culprit — and when a new failure appears between refreshes, the footer flashes it (with a terminal bell) the moment it happens
  • Command palette (Ctrl+P): fuzzy-search every loaded resource across panes and jump straight to it
  • Cancel from where you stand: s in a run/update view cancels it, and Esc on a running SQL statement cancels it server-side instead of leaving it burning the warehouse
  • Act on resources: start/stop clusters, warehouses and pipelines, trigger job runs
  • Inspect access: effective Unity Catalog grants (with inheritance) and workspace object ACLs for any selected item
  • Warehouse details include recent query history: who ran what, how long
  • DBU usage view scoped to the current workspace: 14 days of system.billing.usage as color-stacked daily bars, bucketed by SKU family (Jobs / SQL / All-Purpose / DLT), with list-price dollar estimates when system.billing.list_prices is readable, and a top-spenders table naming the jobs/clusters/warehouses behind the DBUs
  • Table lineage as a tree: up to 3 hops upstream and downstream from system.access.table_lineage, rendered with branch guides so you can follow a table's ancestry at a glance
  • Jump to any resource in the workspace web UI with one key
  • Browse Lakeview dashboards: pages, widgets and datasets at a glance
  • Unity Catalog browser: drill from catalogs into schemas, tables, views and volumes — and into the volumes themselves, browsing files and directories with sizes and ages, with Enter showing the head of any text file; table details include the full column schema plus size, file count, format and last-modified from DESCRIBE DETAIL, and p previews sample rows
  • Arrange the dashboard your way: H hides and reorders panes, the grid adapts to what's visible, and the arrangement persists across sessions
  • ? shows every keybinding, grouped by context, lazygit-style
  • Secret scopes pane: browse scopes and keys (with last-updated), create scopes, add secrets (values masked while typing, never displayed), delete with confirmation, and inspect scope ACLs with g
  • Switch between workspaces (CLI profiles) without restarting
  • Zoom into any pane, non-blocking refresh — the UI never freezes
  • Eight color themes: terminal-default dark, light, Catppuccin Mocha & Latte, Gruvbox, Dracula, Nord and Tokyo Night — t cycles, --theme picks at launch, and the app remembers your theme and warehouse choice per profile across sessions (~/.config/databricks-tui/config.json)
  • Built-in self-upgrade from GitHub releases

Install

With Homebrew (macOS and Linux):

brew install pjhamera/tap/databricks-tui

Or download the latest release for your platform from the releases page:

# macOS (Apple Silicon)
curl -sL https://github.com/pjhamera/databricks-tui/releases/latest/download/databricks-tui-macos-arm64.tar.gz | tar xz
mv databricks-tui /usr/local/bin/

Artifacts: databricks-tui-macos-arm64, databricks-tui-macos-x86_64, databricks-tui-linux-x86_64 — each with a .sha256 checksum.

Or with cargo:

cargo install databricks-tui

Upgrade

databricks-tui upgrade

Detects your platform, checks the latest GitHub release, and replaces the binary in place if a newer version exists.

Uninstall

databricks-tui uninstall          # asks for confirmation
databricks-tui uninstall --yes    # no prompt

Removes the binary from wherever it is installed. The only other files the app keeps are under ~/.config/databricks-tui/ (SQL history, preferences).

Usage

databricks-tui                      # default profile, 30s refresh
databricks-tui --profile prod       # named CLI profile
databricks-tui --refresh 10         # refresh every 10 seconds
databricks-tui --theme light        # or catppuccin-mocha, catppuccin-latte,
                                    # gruvbox, dracula, nord, tokyo-night

The Clusters pane shows interactive (UI/API-created) clusters only — job-created clusters are excluded, both for signal and because listing them can be slow on busy workspaces.

Keys

Key Action
Tab / / l Focus next panel
Shift+Tab / / h Focus previous panel
/ j, / k Select item in focused panel
/ Filter the focused panel (matches name, detail and status; Enter applies, Esc clears)
Enter Open details for the selected item (drills down in Unity Catalog; in a job detail, opens the latest run)
h / l (run view) Older / newer run or pipeline update; failures show their error output
: SQL console: run any statement on a warehouse; / history, Ctrl+R search, Ctrl+X $EDITOR, Ctrl+S export CSV
! Problems: everything failing across panes; Enter jumps to the item
Ctrl+P Command palette: fuzzy-search everything loaded, Enter jumps to it
s (run view) Cancel the shown run / stop the pipeline update
a / x (secrets pane) Create scope or add secret (masked) / delete with confirm
Backspace Go up one level in the Unity Catalog tree
p Preview sample data for the selected table/view (may start a warehouse); e exports CSV
L Lineage tree: up to 3 hops upstream/downstream of the selected table/view
P Choose which SQL warehouse runs previews
s Action on selected item (start/stop, run job) — asks to confirm
g Show access: effective grants / permissions for the selected item
$ DBU usage for the last 14 days (queries system tables on a warehouse)
o Open selected item in the workspace web UI
z Zoom focused panel to full screen
w Switch workspace (pick a profile from ~/.databrickscfg)
Esc Close details / exit zoom
t Cycle color themes (dark, light, Catppuccin, Gruvbox, Dracula, Nord, Tokyo Night)
H Arrange panes: space shows/hides, J/K reorders — layout adapts and persists
? Help: all keybindings grouped by context
r Force refresh
q / Ctrl+C Quit

Navigation works while zoomed — Tab/h/l jumps straight to the next panel full-screen. In the details view, j/k scroll, J toggles the raw JSON, o opens the browser, and Esc goes back.

Requirements

See docs/permissions.md for what each feature needs (system tables, warehouse access, …) and docs/troubleshooting.md for common issues.

Release binaries

Push a v* tag to trigger a GitHub Actions build that publishes .tar.gz binaries (with sha256 checksums and auto-generated release notes) for Linux x86_64, macOS x86_64, and macOS ARM.