dvt Commands Reference¶
dvt is the DevOpsMaestro Terminal CLI for managing terminal prompts, plugins, packages, shell configs, profiles, emulators, and WezTerm integration.
Global flags available on every command:
| Flag | Description |
|---|---|
--config <dir> |
Config directory (default: ~/.dvt) |
-v, --verbose |
Enable debug logging |
--log-file <path> |
Write logs to file (JSON format) |
--no-color |
Disable colored output |
Getting Started¶
dvt init¶
Initialize the dvt configuration directory, creating the required subdirectory structure.
Usage:
Creates:
- ~/.dvt/prompts/
- ~/.dvt/plugins/
- ~/.dvt/shells/
- ~/.dvt/profiles/
Examples:
# Initialize with defaults (~/.dvt/)
dvt init
# Initialize at a custom path
dvt init --config ~/my-terminal-config
dvt version¶
Print version information for the dvt binary.
Usage:
Flags:
| Flag | Description |
|---|---|
--short |
Print only the version number |
Examples:
# Full version info (version, build time, commit)
dvt version
# Just the version number (useful for scripting)
dvt version --short
dvt completion¶
Generate shell autocompletion scripts for dvt.
Usage:
Examples:
# Load completions in the current Zsh session
source <(dvt completion zsh)
# Install permanently for Zsh on macOS (Homebrew)
dvt completion zsh > $(brew --prefix)/share/zsh/site-functions/_dvt
# Install permanently for Fish
dvt completion fish > ~/.config/fish/completions/dvt.fish
Prompts¶
Prompts define how your shell prompt looks using Starship or P10k. Import from the built-in library, customize with apply, and generate config files with generate.
dvt prompt library get¶
List available prompts in the built-in library.
Usage:
Aliases: dvt prompt library list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
-c, --category |
Filter by category | |
-t, --tag |
Filter by tag |
Examples:
# List all library prompts
dvt prompt library get
# Filter by category
dvt prompt library get --category minimal
dvt prompt library describe¶
Show full details of a single prompt from the built-in library.
Usage:
Aliases: dvt prompt library show (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: yaml, json |
Examples:
# Show YAML definition of a library prompt
dvt prompt library describe starship-default
# Show as JSON
dvt prompt library describe starship-minimal -o json
dvt prompt library import¶
Copy prompts from the built-in library to your local store (database + file store).
Usage:
Aliases: dvt prompt library install (deprecated)
Flags:
| Flag | Description |
|---|---|
--all |
Import all prompts from the library |
Examples:
# Import a single prompt
dvt prompt library import starship-default
# Import multiple prompts at once
dvt prompt library import starship-minimal starship-powerline
# Import everything
dvt prompt library import --all
dvt prompt library categories¶
List all prompt categories available in the built-in library.
Usage:
Examples:
dvt prompt get¶
Get prompt definitions from the local store. With no arguments, lists all installed prompts.
Usage:
Aliases: dvt prompt list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: table, yaml, json |
Examples:
# List all installed prompts
dvt prompt get
# Get a specific prompt as YAML
dvt prompt get coolnight
# Get as JSON
dvt prompt get coolnight -o json
dvt prompt apply¶
Apply a prompt definition from a YAML file (kubectl-style). Creates or updates the prompt in the database.
Usage:
Flags:
| Flag | Description |
|---|---|
-f, --filename |
Prompt YAML file(s); use - for stdin |
Examples:
# Apply from a file
dvt prompt apply -f my-prompt.yaml
# Apply from stdin
cat my-prompt.yaml | dvt prompt apply -f -
dvt prompt delete¶
Delete a prompt from the database (kubectl-style). Prompts for confirmation unless --force is used.
Usage:
Flags:
| Flag | Description |
|---|---|
--force |
Skip confirmation prompt |
Examples:
# Delete with confirmation
dvt prompt delete coolnight
# Delete without confirmation
dvt prompt delete coolnight --force
dvt prompt generate¶
Generate the config file for a prompt (e.g., starship.toml for Starship prompts). Output goes to stdout.
Usage:
Examples:
# Preview the generated starship.toml
dvt prompt generate coolnight
# Save directly to Starship's config location
dvt prompt generate coolnight > ~/.config/starship.toml
dvt prompt set¶
Set the active prompt and validate its config (kubectl-style). Requires confirmation unless --force is used.
Usage:
Flags:
| Flag | Description |
|---|---|
--force |
Skip confirmation prompt |
Examples:
# Set a prompt as active
dvt prompt set coolnight
# Set without confirmation
dvt prompt set coolnight --force
dvt get prompts¶
List all installed prompts using the kubectl-style top-level get verb.
Usage:
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
--type |
Filter by prompt type: starship, powerlevel10k |
Examples:
# List all prompts
dvt get prompts
# Filter to Starship prompts only
dvt get prompts --type starship
Plugins¶
Plugins enhance your shell with features like autosuggestions, syntax highlighting, and fuzzy finding.
dvt plugin library get¶
List available plugins in the built-in library.
Usage:
Aliases: dvt plugin library list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
-c, --category |
Filter by category | |
-t, --tag |
Filter by tag |
Examples:
# List all library plugins
dvt plugin library get
# Filter by category
dvt plugin library get --category completion
dvt plugin library describe¶
Show full details of a single plugin from the built-in library.
Usage:
Aliases: dvt plugin library show (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: yaml, json |
Examples:
# Show plugin details
dvt plugin library describe zsh-autosuggestions
# Show as JSON
dvt plugin library describe fzf -o json
dvt plugin library import¶
Copy plugins from the built-in library to the local store.
Usage:
Aliases: dvt plugin library install (deprecated)
Flags:
| Flag | Description |
|---|---|
--all |
Import all plugins from the library |
Examples:
# Import a single plugin
dvt plugin library import zsh-autosuggestions
# Import multiple plugins
dvt plugin library import zsh-autosuggestions zsh-syntax-highlighting
# Import all library plugins
dvt plugin library import --all
dvt plugin library categories¶
List all plugin categories available in the built-in library.
Usage:
Examples:
dvt plugin get¶
Get plugin definitions from the local store. With no arguments, lists all installed plugins.
Usage:
Aliases: dvt plugin list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: table, yaml, json |
Examples:
# List all installed plugins
dvt plugin get
# Get a specific plugin
dvt plugin get zsh-autosuggestions
dvt plugin generate¶
Generate the .zshrc plugin section for installed plugins. Output goes to stdout.
Usage:
Flags:
| Flag | Default | Description |
|---|---|---|
-m, --manager |
manual |
Plugin manager format: zinit, oh-my-zsh, antigen, sheldon, manual |
Examples:
# Generate for all installed plugins
dvt plugin generate
# Generate for a specific plugin using zinit format
dvt plugin generate zsh-autosuggestions --manager zinit
# Append plugin config to .zshrc
dvt plugin generate >> ~/.zshrc
Packages¶
Packages group related terminal configuration into reusable bundles with inheritance. A developer package might extend core and add development-specific plugins and prompts.
dvt package get¶
Show package details or list all packages when no name is given.
Usage:
Aliases: dvt package list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
-w, --wide |
Show extended columns (plugins, prompts, profiles, extends) | |
-c, --category |
Filter by category | |
--library |
Show only library packages | |
--user |
Show only user packages |
Examples:
# List all packages
dvt package get
# Show extended info
dvt package get -w
# Show a specific package (YAML output with resolved inheritance)
dvt package get developer
dvt package library get¶
List available packages in the built-in library.
Usage:
Aliases: dvt package library list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
-w, --wide |
Show extended columns | |
-c, --category |
Filter by category |
Examples:
# List all library packages
dvt package library get
# Filter by category
dvt package library get --category development
dvt package library describe¶
Show full details of a package from the built-in library, with resolved inheritance.
Usage:
Aliases: dvt package library show (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: yaml, json |
Examples:
# Show resolved package definition
dvt package library describe developer
# Show as JSON
dvt package library describe core -o json
dvt package library import¶
Import a package and all its components (resolved through inheritance) into the database.
Usage:
Aliases: dvt package library install (deprecated)
Flags:
| Flag | Description |
|---|---|
--dry-run |
Show what would be installed without installing |
Examples:
# Preview what the developer package would install
dvt package library import developer --dry-run
# Install the core package
dvt package library import core
# Install developer (also installs core via inheritance)
dvt package library import developer
Shell¶
Shell configs define aliases, environment variables, and functions — the non-prompt parts of your shell setup.
dvt shell apply¶
Apply a shell configuration from a YAML file. Creates or updates the config in the local store.
Usage:
Flags:
| Flag | Description |
|---|---|
-f, --filename |
Shell config YAML file(s); use - for stdin |
Examples:
# Apply from a file
dvt shell apply -f my-shell.yaml
# Apply from stdin
cat my-shell.yaml | dvt shell apply -f -
dvt shell get¶
Get shell configurations from the local store. With no arguments, lists all installed configs.
Usage:
Aliases: dvt shell list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: table, yaml, json |
Examples:
# List all installed shell configs
dvt shell get
# Get a specific shell config
dvt shell get my-shell
dvt shell generate¶
Generate the shell configuration section (aliases, env vars, functions) for a shell config. Output goes to stdout.
Usage:
Examples:
# Preview generated shell config
dvt shell generate my-shell
# Append to .zshrc
dvt shell generate my-shell >> ~/.zshrc
dvt shell generate-workspace¶
Generate a workspace-scoped shell config file that composites host config, workspace env vars, installed plugins, shell configurations, and prompt initialization. Supports Bash, Zsh, and Fish.
Usage:
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
stdout | Write to file instead of stdout |
-w, --workspace |
Workspace name (for header comment) | |
-s, --shell |
auto | Target shell: bash, zsh, fish (default: auto-detect from $SHELL) |
--no-host-config |
Skip including the host shell config | |
--host-config |
Path to host shell config file | |
--plugin-dir |
Plugin installation directory | |
--env |
Environment variables as KEY=VALUE (repeatable) |
|
--prompt-init |
Prompt init command (e.g., eval "$(starship init zsh)") |
Examples:
# Generate workspace shell config to stdout
dvt shell generate-workspace
# Write to a file for use in a workspace
dvt shell generate-workspace --output .dvm/.zshrc.workspace
# Workspace-specific env vars and custom shell
dvt shell generate-workspace --shell zsh --env APP_ENV=dev --env DEBUG=1
Profiles¶
Profiles are the recommended way to manage your terminal configuration — they combine a prompt, plugins, and shell settings into a single named unit.
dvt profile preset get¶
List available profile presets.
Usage:
Aliases: dvt profile preset list (deprecated)
Available presets:
| Preset | Description |
|---|---|
default |
Balanced setup with Starship, autosuggestions, and syntax-highlighting |
minimal |
Lightweight setup with just Starship and basic plugins |
power-user |
Full-featured setup with all plugins and nerd font support |
Examples:
dvt profile preset import¶
Import a profile preset and all its dependencies into the local store.
Usage:
Aliases: dvt profile preset install (deprecated)
Examples:
# Import the default preset
dvt profile preset import default
# Import the power-user preset
dvt profile preset import power-user
dvt profile apply¶
Apply a profile definition from a YAML file. Creates or updates the profile in the local store.
Usage:
Flags:
| Flag | Description |
|---|---|
-f, --filename |
Profile YAML file(s); use - for stdin |
Examples:
# Apply a profile from file
dvt profile apply -f my-profile.yaml
# Apply from stdin
cat my-profile.yaml | dvt profile apply -f -
dvt profile get¶
Get profile definitions from the local store. With no arguments, lists all installed profiles.
Usage:
Aliases: dvt profile list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: table, yaml, json |
Examples:
dvt profile generate¶
Generate all configuration files for a profile — starship.toml, plugin loading code, and shell config. Output goes to stdout by default.
Usage:
Flags:
| Flag | Description |
|---|---|
--output-dir |
Directory to write config files (default: stdout) |
--dry-run |
Show what would be generated without writing files |
Examples:
# Preview all generated config to stdout
dvt profile generate default
# Write config files to ~/.config/
dvt profile generate default --output-dir ~/.config/
# Preview what would be written
dvt profile generate default --output-dir ~/.config/ --dry-run
dvt profile use¶
Set the active profile by name.
Usage:
Examples:
# Set default as the active profile
dvt profile use default
# Switch to minimal profile
dvt profile use minimal
Emulators¶
Manage configurations for terminal emulators like WezTerm, Alacritty, Kitty, and iTerm2.
dvt emulator get¶
Show emulator configuration details or list all emulators when no name is given.
Usage:
Aliases: dvt emulator list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
--type |
Filter by emulator type: wezterm, alacritty, kitty, iterm2 |
|
--category |
Filter by category |
Examples:
# List all emulators
dvt emulator get
# Filter by type
dvt emulator get --type wezterm
# Show a specific emulator
dvt emulator get wezterm-default
dvt emulator enable¶
Enable a terminal emulator configuration by setting enabled=true.
Usage:
Examples:
dvt emulator disable¶
Disable a terminal emulator configuration by setting enabled=false.
Usage:
Examples:
dvt emulator apply¶
Apply a terminal emulator configuration from a YAML file.
Usage:
Flags:
| Flag | Description |
|---|---|
-f, --filename |
YAML file to apply (required); use - for stdin |
--dry-run |
Show what would be applied without applying |
Examples:
# Apply from a file
dvt emulator apply -f my-emulator.yaml
# Preview what would be applied
dvt emulator apply -f my-emulator.yaml --dry-run
dvt emulator library get¶
List available emulators in the built-in library.
Usage:
Aliases: dvt emulator library list (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
table |
Output format: table, yaml, json |
--type |
Filter by emulator type | |
--category |
Filter by category |
Examples:
# List all library emulators
dvt emulator library get
# Filter to WezTerm configs only
dvt emulator library get --type wezterm
dvt emulator library describe¶
Show details of a specific emulator from the built-in library.
Usage:
Aliases: dvt emulator library show (deprecated)
Flags:
| Flag | Default | Description |
|---|---|---|
-o, --output |
yaml |
Output format: yaml, json |
Examples:
# Show emulator details
dvt emulator library describe maestro
# Show as YAML
dvt emulator library describe minimal -o yaml
dvt emulator library import¶
Import a terminal emulator configuration from the built-in library into the database.
Usage:
Aliases: dvt emulator install (deprecated)
Flags:
| Flag | Description |
|---|---|
--force |
Overwrite if the emulator already exists |
--dry-run |
Show what would be installed without installing |
Examples:
# Preview what would be imported
dvt emulator library import maestro --dry-run
# Import a library emulator
dvt emulator library import maestro
# Overwrite an existing config
dvt emulator library import minimal --force
WezTerm¶
Manage WezTerm terminal configurations using YAML presets. Presets can reference themes for automatic color resolution.
dvt wezterm get¶
List available WezTerm presets from the built-in library.
Usage:
Aliases: dvt wezterm list (deprecated)
Examples:
dvt wezterm describe¶
Show details of a specific WezTerm preset — font, opacity, theme reference, and key bindings.
Usage:
Aliases: dvt wezterm show (deprecated)
Examples:
# Show preset details
dvt wezterm describe default
# Show details of the minimal preset
dvt wezterm describe minimal
dvt wezterm generate¶
Generate WezTerm Lua configuration from a named preset and print to stdout. Resolves theme colors if a theme_ref is set on the preset.
Usage:
Examples:
# Preview generated Lua config
dvt wezterm generate default
# Save to a custom file
dvt wezterm generate default > ~/custom.wezterm.lua
dvt wezterm use¶
Apply a WezTerm preset by writing the generated Lua config to ~/.wezterm.lua (or a custom path). Resolves theme colors automatically if a theme_ref is configured.
Usage:
Aliases: dvt wezterm apply
Flags:
| Flag | Default | Description |
|---|---|---|
--output-file |
~/.wezterm.lua |
Output file path |
Examples:
# Apply the default preset to ~/.wezterm.lua
dvt wezterm use default
# Write to a custom location
dvt wezterm use default --output-file ~/dotfiles/.wezterm.lua
Tool Config¶
Generate theme-aware configuration snippets for terminal tools using the active color palette. Ensures visual consistency across your entire development environment.
Supported tools: bat, delta, fzf, dircolors
dvt tool-config list¶
List all supported tool config generators with their descriptions.
Usage:
Examples:
dvt tool-config generate¶
Generate a theme-aware config snippet for a terminal tool. By default, output is formatted as shell export statements.
Usage:
Flags:
| Flag | Default | Description |
|---|---|---|
--all |
Generate config for all supported tools | |
--format |
env |
Output format: env (shell exports) or raw (config value only) |
Examples:
# Generate fzf color config as shell export
dvt tool-config generate fzf
# Generate raw config value (no export wrapping)
dvt tool-config generate fzf --format raw
# Generate for all tools at once
dvt tool-config generate --all
# Generate delta config (outputs gitconfig snippet)
dvt tool-config generate delta