TL;DR — Quick Summary

navi is an interactive cheatsheet tool. Browse, search, and execute command snippets with variable substitution — never forget a command again.

navi puts every command you need at your fingertips. Browse cheatsheets, fill in variables, execute — all interactively.

Installation

# macOS
brew install navi

# Arch Linux
sudo pacman -S navi

# Cargo
cargo install navi

# Shell widget (add to .bashrc/.zshrc)
eval "$(navi widget bash)"   # Ctrl+G to open
eval "$(navi widget zsh)"
navi widget fish | source

Usage

# Open interactive browser
navi

# Search with initial query
navi --query "docker"

# Import community cheatsheets
navi repo add denisidoro/cheats

# Best match (non-interactive)
navi --best-match --query "tar extract"

# Custom cheatsheet format (~/.local/share/navi/cheats/my.cheat):
# % docker, containers
# Remove stopped containers
# $ docker container prune -f
#
# Run container with port mapping
# $ docker run -p <local_port>:<container_port> <image>
# $ local_port: echo "8080"
# $ container_port: echo "80"
# $ image: docker images --format '{{.Repository}}:{{.Tag}}'

# Print instead of execute
navi --print

# Tag filter
navi --tag-rules "docker"

Custom Cheatsheet Syntax

% category, subcategory

# Description of the command
command --flag <variable>
$ variable: command-to-generate-suggestions

Summary

  • navi provides interactive, searchable cheatsheets with variable substitution
  • Community cheatsheets cover Docker, Git, Kubernetes, systemd, and more
  • Custom .cheat files for your team’s tools and workflows
  • Shell widget (Ctrl+G) integrates into bash, zsh, and fish
  • Written in Rust — instant fuzzy search across thousands of snippets