-
Notifications
You must be signed in to change notification settings - Fork 0
CLI Reference
CtrlUserKnown edited this page Jul 21, 2026
·
1 revision
Running dots with no arguments opens the Interactive TUI.
Everything the TUI does is also available as a subcommand, so dots works well in
scripts and setup flows.
dots [--version] [COMMAND]
| Command | Description |
|---|---|
dots health [--fix] |
Check and repair all declared symlinks, tools, and plugins. Prints an OK / repaired / skipped summary. |
dots update |
Open the update screen to check for and apply updates. |
dots install <name> |
Install a single dependency by name. |
dots install --all |
Install all missing Required dependencies. |
dots install --optional |
Install all missing Optional dependencies. |
dots aliases list |
List all aliases (built-in + user), with their type. |
dots aliases add <name> <value> |
Add a user alias (written to ~/.personal/aliases.zsh). |
dots aliases remove <name> |
Remove a user alias. |
dots premade list |
List available bundled app configs. |
dots premade apply <app> |
Apply a bundled config (backs up any existing file). |
dots link add <source> <target> |
Adopt a file/dir and symlink it; recorded in links.toml. |
dots link list |
List declared links and their status. |
dots link apply |
Create or repair all declared links. |
dots link remove <target> |
Remove a declared link and its symlink. |
dots profile generate [path] |
Export your setup to personal.json (defaults to a standard path). |
dots profile import <path> |
Import a personal.json from a local file. |
dots profile import-git <spec> |
Import a personal.json from GitHub (user/repo/path/to/file.json). |
dots init [--quiet] |
Initialize config: create settings.toml and ~/.personal/. Idempotent; run automatically by the installer. |
dots --version |
Print the version. |
# First run after install — set up your links, then verify
dots link add ~/dotfiles/starship.toml ~/.config/starship.toml
dots health
# Install missing tools
dots install --all
dots install lazygit
# Apply a starter Neovim config (existing config is backed up first)
dots premade apply neovim
# Move your setup to a new machine
dots profile generate ~/personal.json # on the old machine
dots profile import-git you/dotfiles/personal.json # on the new oneSee also: Managing Symlinks · Dependencies · Premade Configs · Profiles.
Guides
Contributing