A TUI for chezmoi.
Dual-pane layout: local home directory on the left, chezmoi-managed files on the right. Cross-tree highlighting keeps selection in sync between panes.
Add, apply, diff, edit, forget, destroy, chattr, ignore — through context menus or direct keyboard shortcuts. Side-by-side diffs with accept left/right.
Supports encrypted files, templates, executables, symlinks, directories, externals, chezmoi config files, run scripts, and dry-run mode.
pipx install cheznav
# or with Homebrew
brew install djetelina/tap/cheznav
# or from AUR
yay -S cheznavcheznav # normal
cheznav --dry-run # pass -n to all chezmoi callsControls
| Key | Action |
|---|---|
| Left / Right | Switch panes |
| Up / Down | Move within tree |
| Space | Expand / collapse directory |
| Enter | Context menu (files), expand + context menu (directories) |
: |
Command palette |
? |
Help |
q |
Quit |
| Tab | Cycle focusable elements |
| Key | Local pane | Managed pane | Diff view |
|---|---|---|---|
a |
Add / Re-add | Apply | Accept left (keep disk) |
e |
Edit local | Edit source | |
d |
View diff | View diff | |
i |
Ignore | Ignore | |
x |
Forget | Forget | |
r |
Accept right (use chezmoi) | ||
v |
View file | View file |
Development
just init # install pre-commit hooks + sync deps
just test # run tests
just run # run cheznav
just check # run pre-commit on all files