broot — Interactive Tree File Manager for the Terminal
broot is an interactive, full-screen directory explorer for the terminal.
It combines:
- Tree-style visualization (like
tree) - Fuzzy search (like
fzf) - File actions (like a minimal file manager)
- Shell integration (
cd, open editor, delete, move, run commands)
Unlike ls or tree, broot is not just for viewing — it is for navigating and acting.
For WordPress VPS workflows, broot is extremely powerful when managing:
/var/www/htmlwp-content/pluginswp-content/uploads/home/backups/var/log
1. Installation & Setup
broot is not installed by default.
Install (Ubuntu/Debian)
sudo apt install broot
Install (Latest via Cargo)
cargo install --locked broot
Install the br Shell Function (Important)
broot --install
This installs the br shell function.
You should use:
br
instead of:
broot
Why?
Because br allows :cd inside broot to change your shell directory after exit.
Verify Installation
broot --version
command -v br
2. What Makes broot Different
| Tool | Purpose |
|---|---|
| -- | -- |
ls | Flat listing |
tree | Static hierarchy |
ranger | Full TUI file manager |
broot | Interactive filtered tree with actions |
Key strengths:
- Filter-as-you-type search
- Built-in actions called “verbs”
- Git-aware (respects
.gitignore) - Toggle file info instantly
- Customizable via
conf.toml
3. Core Usage Model
Launch
br [PATH]
Example:
br /var/www/html
If no path is given, it starts in the current directory.
Inside broot
1. Filter
Start typing immediately:
wp-config
plugins
error.log
The tree narrows in real time.
2. Use Verbs
Verbs start with :.
Examples:
:cd
:edit
:rm
:mv
:size
:perm
Press ? for help inside broot.
4. Essential Verbs & Toggles
Change Directory (:cd)
Moves your shell into the selected directory.
Works only when launched with br.
Edit File (:edit)
Opens the selected file in $EDITOR.
Example use case:
Edit wp-config.php quickly.
Remove File (:rm)
Deletes the selected file or directory.
Use carefully.
Move File (:mv DEST)
Move selected item.
Example:
:mv 2025/11/
Toggle File Size (:size)
Displays file sizes.
Useful in:
wp-content/uploads
to detect large folders.
Toggle Permissions (:perm)
Shows Unix permission bits.
Useful for WordPress permission audits.
Toggle Hidden Files
Press:
alt+h
Shows .htaccess, .env, hidden files.
Toggle Ignored Files
Press:
alt+i
Shows files normally hidden by .gitignore.
5. Useful Launch Flags
Summarized View (-s)
br -s /var/www/html
Shows condensed overview.
Very useful for large directories.
6. Configuration (conf.toml)
Config file location:
~/.config/broot/conf.toml
Open from inside broot:
:os
Set Default Flags
default_flags = "-ps"
Always show:
- permissions
- sizes
Create Custom Verbs
Example: open with Neovim
[[verbs]]
key = "E"
execution = "nvim {file}"
Example: tail logs
[[verbs]]
key = "t"
execution = "tail -n 100 -f {file}"
Example: open with less
[[verbs]]
key = "L"
execution = "less {file}"
7. WordPress VPS Workflows
Inspect WordPress Root
br -s /var/www/html
Quick structural overview.
Jump to Plugin Directory
br /var/www/html/wp-content/plugins
Type plugin name → :cd.
Audit Upload Size
br /var/www/html/wp-content/uploads
Then type:
:size
Permission Audit
br /var/www/html
Then:
:perm
Edit wp-config.php
br /var/www/html
Type wp-config.php → :edit.
Inspect Nginx Logs
br /var/log/nginx
Select error.log → custom verb (less or tail).
Clean Old Backups
br /home/backups
Filter year → :rm.
8. Benefits
- Faster than repeated
cd+ls - Visual structure without overwhelming output
- Fuzzy filtering reduces typing
- Custom actions eliminate repetitive commands
- Git-aware by default
- Integrates cleanly with shell
9. Best Practices
- Always use
br, not rawbroot. - Keep default view minimal for speed.
- Use toggles only when needed.
- Define WordPress-specific verbs in config.
- Be careful with destructive verbs (
:rm).
10. Troubleshooting
| Problem | Cause | Fix |
|---|---|---|
| -- | - | |
:cd doesn’t persist | Used broot instead of br | Run broot --install |
| Hidden files missing | Not toggled | Press alt+h |
| Ignored files missing | Git ignore active | Press alt+i |
| Slow performance | Large tree expanded | Use -s |
| Custom verb not working | Wrong syntax | Check conf.toml |
11. Cheat Sheet
br # Launch broot
br -s # Summarized mode
br /var/www/html # Start at path
# Inside broot:
? # Help
:cd # Change directory
:edit # Open file in editor
:rm # Remove file
:mv dest/ # Move file
:size # Toggle sizes
:perm # Toggle permissions
alt+h # Toggle hidden files
alt+i # Toggle ignored files
:os # Open config
12. Summary
broot is an interactive file navigation and execution tool.
It replaces repetitive patterns like:
cd
ls
cd
ls
grep
cd ..
with:
- One screen
- Instant filtering
- Direct action execution
In WordPress VPS management, it becomes a powerful navigation and audit companion.
Mini Knowledge Check
- Why should you use
brinstead ofbroot? - Which toggle shows hidden files?
- Where are custom verbs defined?
- What does
-schange? - Which verb shows file sizes?