A lazier way to Databricks. A fast, colorful, keyboard-driven terminal UI — inspired by k9s — for browsing Unity Catalog, running SQL, triaging jobs and pipelines, and managing your workspaces without leaving the terminal.
Status: early development. The interface and features described below are landing phase by phase — see docs/PLAN.md.
The Databricks web UI is powerful but slow to click through, and the CLI has a hundred subcommands to remember. lazydbx gives you the k9s experience instead:
:command mode —:catalogs,:jobs,:tables main.silver— teleport anywhere, with autocomplete and aliases- Enter/Esc drill-down — catalog → schema → table → data preview; job → runs → task logs — one gesture for everything
/instant filter on any view, no API round-trip- Self-documenting — the header always shows the keys valid right now;
?for full help - Fast — local caching, background polling, stale-while-revalidate rendering
- Safe — read-only by default early on, confirm dialogs for anything destructive,
--readonlyflag, per-profile accent colors (make prod red!)
brew install jongracecox/tap/lazydbx # once first release is tagged
# or
go install github.com/jongracecox/lazydbx/cmd/lazydbx@latestlazydbx ships completion for bash, zsh, and fish. It completes resource names,
flag values (--tab, --profile, --log-level), and — once a profile
resolves — scope args and item names straight from your workspace (served from
the local cache, so it never blocks on the network).
Print the script for your shell with lazydbx completion <shell> and load it
however your shell expects:
# bash — add to ~/.bashrc (needs bash-completion installed)
source <(lazydbx completion bash)
# zsh — write to a dir on your $fpath, e.g. with oh-my-zsh:
lazydbx completion zsh > "${fpath[1]}/_lazydbx"
# fish
lazydbx completion fish > ~/.config/fish/completions/lazydbx.fishRun lazydbx completion <shell> --help for the per-shell details.
lazydbx uses your existing Databricks config
profiles
(~/.databrickscfg) — including OAuth sessions created with
databricks auth login.
lazydbx # opens the profile picker
lazydbx --profile mydev # jump straight into a profile
lazydbx --readonly # disable all mutating actionsOptional positional args launch straight into a resource view, using the same
syntax as the in-app : command bar. esc from a launched view returns to the
profile picker.
lazydbx -p mydev jobs # open in the jobs list
lazydbx -p mydev schemas prod # schemas in the 'prod' catalog
lazydbx -p mydev tables main.silver # drill straight to a schema's tables
lazydbx -p mydev runs 123 # runs for job 123
lazydbx -p mydev jobs /etl # jobs list pre-filtered to 'etl'
lazydbx -p mydev apps # open in the apps list
lazydbx -p mydev apps my-app # land directly on 'my-app'make tools # install golangci-lint + lefthook, register git hooks
make test
make runSee CLAUDE.md for architecture and contribution conventions.
Apache-2.0
