Commands / All Commands

All Commands

Every dpm command at a glance, syntax, aliases, and which interface supports it.

Tool management

dpm install

dpm install [--verbose] <tool[@version] | course-code | #> dpm -i <tool[@version] | course-code | #>

Install a tool by name with optional version pin. Also accepts a profile course code or a search result number. Version formats: nmap, nmap@7, nmap@7.95.

CLI ✓ dpm -i nmap@7.95 TUI ✓ Tools tab → ENTER on version · SPACE to cart → Install all

dpm remove

dpm remove <tool[@version]> dpm -r <tool[@version]>

Uninstall a tool. Auto-detects the installed version if none is specified.

CLI ✓ dpm -r nmap TUI ✓ Installed tab → DEL key

dpm list

dpm list [--all] [--category <name>] dpm -l [--all] [--category <name>]

List installed tools (default) or the full catalog (--all). Filter by category with --category.

CLI ✓ dpm list --all --category security TUI ✓ Installed tab (installed) · Tools tab (catalog) ⚠ --category filter is CLI-only

dpm update

dpm update [tool-id] dpm -u [tool-id]

Update a single tool or all installed tools. Respects version pins, exact-pinned tools are never auto-updated.

CLI ✓ dpm -u nmap / dpm -u TUI ✓ Menu (M) → Update · ENTER to update one · U to update all

Discovery

dpm search [keyword] [--tools] [--profiles] [--community] [--all] dpm -s [keyword]

Fuzzy-search tools, local profiles, and the community index. Results are numbered and stored in last-search.json for use in other commands.

CLI ✓ dpm -s nmap / dpm -s --community pentest TUI ✓ / key → search overlay (no per-type filter) ⚠ --tools / --profiles / --community flags are CLI-only

dpm inspect

dpm inspect <github-url | #> [dotfile] dpm -x <github-url | #> [dotfile]

Fetch and display a community profile's tools and dotfiles before applying. Pass a dotfile name to preview its contents.

CLI ✓ dpm -x https://github.com/user/kit TUI – No standalone inspect screen; use CLI before applying via TUI

dpm verify

dpm verify <file> <sha256 | hash-file> dpm -k <file> <sha256 | hash-file>

Compute the SHA-256 of a file and compare it against a known hash. Accepts an inline hash string or a .sha256 sidecar file.

CLI ✓ dpm -k binary e3b0c44298fc... TUI – CLI-only; TUI shows SHA badge passively in Installed tab

Profiles & dotfiles

dpm apply

dpm apply <profile-id | #> dpm -a <profile-id | #>

Apply a local profile by profile ID or search result number. DPM installs missing tools and skips already-installed ones.

CLI ✓ dpm -a ICI012AS3A TUI ✓ Profiles tab → ENTER on profile → ENTER to apply
For community repositories, inspect first with dpm -x <url or #>.

dpm config install

dpm config install [--id <id>] [--map <src:dst>] <repo | path>

Clone a dotfile repository and map config files into place. --map sets an explicit mapping for the current command run.

CLI ✓ dpm config install --map .vimrc:~/.vimrc https://github.com/u/dots TUI ✓ Dotfiles tab → A → paste URL → select configs ⚠ --map path override is CLI-only

System

dpm restore

dpm restore [--yes] dpm -o [--yes]

Remove all DPM-managed tools and reset to a clean state. Prompts for confirmation unless --yes is passed.

CLI ✓ dpm restore / dpm -o --yes TUI ✓ Menu (M) → Restore

dpm bubble

dpm bubble dpm -b

Spawn an ephemeral shell with a temporary HOME at /tmp/dpm-bubble-<id>/. All changes are discarded on exit.

CLI ✓ dpm bubble TUI ✓ Bubble tab → ENTER

dpm doctor

dpm doctor dpm -d

Run system health diagnostics, PATH setup, DPM root, metadata integrity, tool accessibility.

CLI ✓ dpm doctor TUI ✓ Menu (M) → Doctor

dpm version

dpm version dpm -v / dpm --version

Print the installed DPM version. The TUI shows the version in the header bar.

CLI ✓ dpm --version TUI ✓ Shown in header bar (no command needed)

dpm serve

dpm serve --stdio dpm -n --stdio

Start the JSON-RPC 2.0 backend over stdin/stdout. This is what dpm-tui spawns automatically, you don't normally call this directly.

CLI ✓ internal / advanced use only TUI – spawned automatically by dpm-tui on startup