Downloads
Page: Downloads
zoxide Download & Installation Guide
zoxide is a fast and intelligent command-line navigation tool designed as a smarter alternative to the traditional cd command.
Instead of typing long directory paths every time you move between folders, zoxide remembers which directories you use most often and ranks them based on your navigation history.
You can then jump to frequently used directories using only a few characters.
Inspired by tools such as z and autojump, zoxide works with major command-line shells and is available across Windows, Linux, macOS, BSD, Android, and WSL environments.
What is zoxide?
zoxide is a command-line directory navigation utility.
It learns from the folders you visit and builds a ranked database of commonly used directories.
For example, instead of typing:
cd ~/projects/client/websites/application
you may eventually be able to type:
z application
zoxide searches its database, finds the highest-ranked matching directory, and moves you there automatically.
This can save time for developers, system administrators, terminal users, and anyone who frequently works with deeply nested directory structures.
Latest zoxide Version
The latest official release is:
zoxide 0.10.0
Release date:
July 4, 2026
Version 0.10.0 includes new features, shell compatibility improvements, additional platform support, and multiple bug fixes.
Notable improvements include:
-
Import support for Atuin entries
-
Automatic detection of database files during import
-
Better handling of excluded directories
-
Improved Windows support for POSIX environments
-
RISC-V Linux support
-
Improved Fish Space+Tab completion behavior
-
Better CDPATH support in Bash, POSIX shells, and Zsh
-
Multiple PowerShell, Bash, Fish, Zsh, Nushell, and Tcsh fixes
Users should generally install the latest stable version unless they have a specific compatibility requirement.
Key Features
Smart Directory Navigation
zoxide learns which folders you visit most often.
Instead of manually entering full paths, you can jump directly to a directory using a short keyword.
Example:
z project
zoxide searches for the best matching directory named or associated with project.
Ranked Directory Matching
Frequently visited directories receive higher rankings.
When multiple directories match your query, zoxide uses its ranking algorithm to select the most relevant one.
Multiple Search Terms
You can provide multiple keywords.
Example:
z foo bar
zoxide searches for the highest-ranked directory matching both foo and bar.
Regular Path Navigation
The z command can also behave similarly to the standard cd command.
Examples:
z ~/projects
z ..
z -
This allows users to use zoxide for both smart searching and normal directory navigation.
Interactive Directory Selection
zoxide provides the zi command for interactive directory selection.
Example:
zi project
When configured with fzf, this displays matching directories and allows you to select one interactively.
Interactive Shell Completions
Supported shells can provide interactive completions.
For example:
z foo + Space + Tab
Interactive Space+Tab completion is supported in compatible versions of Bash, Fish, and Zsh.
Warp uses its own completion system, so this particular completion feature is not supported there.
Supported Platforms
zoxide runs on most major operating systems.
Supported environments include:
-
Linux
-
Windows
-
Windows Subsystem for Linux
-
macOS
-
FreeBSD
-
NetBSD
-
DragonFly BSD
-
Android through Termux
Precompiled binaries are also available for multiple CPU architectures through GitHub Releases.
Supported Shells
zoxide works with most popular command-line shells.
Supported shells include:
-
Bash
-
Zsh
-
Fish
-
PowerShell
-
Nushell
-
Elvish
-
Tcsh
-
Xonsh
-
POSIX-compatible shells
The initialization command differs depending on the shell being used.
How to Download zoxide
The recommended installation method depends on your operating system.
zoxide can be installed through:
-
Official install script
-
Windows Package Manager
-
Homebrew
-
Cargo
-
Conda
-
Scoop
-
Chocolatey
-
Linux package managers
-
GitHub Releases
For most users, using the recommended package manager for their operating system is the simplest option.
How to Install zoxide on Windows
The recommended installation method for Windows is WinGet.
Open PowerShell or Windows Terminal and run:
winget install ajeetdsouza.zoxide
Wait for the installation to complete.
You can then verify the installation with:
zoxide --version
Windows users can also install zoxide using alternative package managers.
Install With Chocolatey
choco install zoxide
Install With Scoop
scoop install zoxide
Install With Cargo
If Rust and Cargo are installed:
cargo install zoxide --locked
Install With Conda
conda install -c conda-forge zoxide
zoxide works with PowerShell and can also be used in environments such as:
-
Git Bash
-
Cygwin
-
MSYS2
Configure zoxide With PowerShell
Installing the binary alone is not enough.
zoxide must also be initialized inside your shell.
First, find your PowerShell profile:
echo $profile
Open that file and add:
Invoke-Expression (& { (zoxide init powershell | Out-String) })
Restart PowerShell.
You can then start using:
z folder
How to Install zoxide on Linux
The officially recommended installation method for many Linux environments is the install script.
Run:
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
After installation, configure zoxide for your shell.
Different Linux distributions also provide package-manager installation methods.
Arch Linux
pacman -S zoxide
Fedora
dnf install zoxide
Alpine Linux
apk add zoxide
Gentoo
emerge app-shells/zoxide
Void Linux
xbps-install -S zoxide
Package availability and package versions may vary between distributions.
Some Debian and Ubuntu repositories can update slowly, so the official install script may provide a newer version than the distribution package.
How to Install zoxide on macOS
macOS users can install zoxide with Homebrew:
brew install zoxide
Other supported options include:
cargo install zoxide --locked
conda install -c conda-forge zoxide
or:
port install zoxide
The official install script can also be used:
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
How to Install zoxide on Android
Android users can install zoxide through Termux.
Run:
pkg install zoxide
The install script can also be used in supported environments.
Configure zoxide With Bash
Add the following line to the end of your Bash configuration file, usually:
~/.bashrc
Add:
eval "$(zoxide init bash)"
Restart your terminal or reload the configuration:
source ~/.bashrc
Configure zoxide With Zsh
Add this line to:
~/.zshrc
eval "$(zoxide init zsh)"
Restart the terminal or reload the configuration.
For completions to work correctly, the zoxide initialization line should appear after compinit.
Configure zoxide With Fish
Add:
zoxide init fish | source
to:
~/.config/fish/config.fish
Restart Fish afterward.
Configure zoxide With Nushell
Generate the zoxide initialization file:
zoxide init nushell | save -f ~/.zoxide.nu
Then add:
source ~/.zoxide.nu
to your Nushell configuration.
Current zoxide documentation requires Nushell 0.89.0 or newer.
Configure zoxide With Elvish
Add:
eval (zoxide init elvish | slurp)
to your Elvish configuration file.
zoxide currently supports Elvish 0.18.0 or newer.
Configure zoxide With a POSIX Shell
Add:
eval "$(zoxide init posix --hook prompt)"
to your shell configuration file.
Basic zoxide Commands
Jump to a Directory
z foo
Moves to the highest-ranked directory matching foo.
Match Multiple Keywords
z foo bar
Finds a directory matching both terms.
Use a Normal Path
z ~/foo
Works similarly to:
cd ~/foo
Move One Directory Up
z ..
Return to Previous Directory
z -
Select Interactively
zi foo
Displays matching directories for interactive selection when fzf is configured.
Example zoxide Workflow
Imagine you frequently work in:
/home/user/development/client-projects/website
After visiting this directory several times, you may be able to navigate there with:
z website
If you also have another directory named website, zoxide uses its ranking and matching algorithm to select the most relevant destination.
You can provide additional keywords when necessary:
z client website
This makes navigating large directory structures significantly faster.
Installing fzf
fzf is an optional command-line fuzzy finder.
zoxide uses it for:
-
Interactive directory selection
-
Interactive completion features
The minimum supported fzf version is:
fzf 0.51.0
Without fzf, the standard z navigation features still work.
Install fzf if you want to use commands such as:
zi project
Importing Existing Directory History
Users migrating from similar directory navigation tools can import existing data into zoxide.
Supported import sources include:
-
atuin
-
autojump
-
fasd
-
z
-
z.lua
-
zsh-z
Example:
zoxide import autojump
To import data from z:
zoxide import z
To import from Atuin:
zoxide import atuin
Recent versions can automatically detect standard database file locations during import.
Changing the z Command
By default, zoxide provides:
z
and:
zi
You can change the command prefix using:
--cmd
For example:
zoxide init bash --cmd j
This changes the commands to:
j
and:
ji
You can also configure zoxide to replace the standard cd command.
Users should test this carefully to make sure it works correctly with their shell setup.
Hook Configuration
zoxide supports different hooks that control when directory rankings are updated.
Available options include:
none
Never automatically update directory scores.
prompt
Update the score at each shell prompt.
pwd
Update whenever the current directory changes.
pwd is the default behavior.
zoxide Environment Variables
zoxide provides several environment variables for advanced configuration.
_ZO_DATA_DIR
Controls where the zoxide database is stored.
Default locations depend on the operating system.
Linux and BSD
Typically:
$XDG_DATA_HOME
or:
$HOME/.local/share
macOS
Typically:
$HOME/Library/Application Support
Windows
Typically:
%LOCALAPPDATA%
_ZO_ECHO
Set:
_ZO_ECHO=1
to display the matched directory before navigating to it.
_ZO_EXCLUDE_DIRS
Allows users to prevent selected directories from being stored in the zoxide database.
Directories can be specified using glob patterns.
This can be useful for excluding:
-
Temporary folders
-
Private directories
-
Generated build directories
-
Other locations you do not want ranked
_ZO_FZF_OPTS
Allows custom options to be passed to fzf during interactive selection.
Advanced users can use this to customize the appearance and behavior of the interactive finder.
_ZO_MAXAGE
Controls the aging algorithm used to limit the size of the directory database.
The default value is:
10000
_ZO_RESOLVE_SYMLINKS
Setting this variable to:
1
tells zoxide to resolve symbolic links before adding directories to its database.
Third-Party Integrations
zoxide integrates with a wide range of terminal and productivity tools.
Examples include:
-
Neovim
-
Vim
-
Emacs
-
Alfred
-
Raycast
-
Yazi
-
Ranger
-
nnn
-
lf
-
xplr
-
tmux tools
-
Zellij-related utilities
Some applications support zoxide natively, while others require plugins.
zoxide With Neovim
Neovim users can integrate zoxide through tools such as:
telescope-zoxide
or:
zoxide.vim
These integrations allow users to combine fast directory navigation with editor workflows.
zoxide With File Managers
Several terminal file managers can work with zoxide.
Supported or community-integrated options include:
-
Yazi
-
nnn
-
Ranger
-
lf
-
xplr
-
joshuto
This can make frequently visited directories easier to access from both the terminal and file manager.
Why Use zoxide Instead of cd?
The traditional cd command requires you to know or type the directory path.
zoxide learns from your navigation habits.
Instead of typing:
cd ~/work/projects/client/application/frontend
you might simply use:
z frontend
The more you use zoxide, the better its ranking database becomes at identifying frequently visited directories.
This makes it particularly useful for:
-
Developers
-
DevOps engineers
-
System administrators
-
Linux users
-
Terminal power users
-
Users managing many projects
zoxide vs autojump
zoxide is inspired partly by autojump and provides a similar approach to intelligent directory navigation.
Both tools learn frequently visited directories.
zoxide additionally focuses on:
-
Broad shell support
-
Cross-platform availability
-
Fast performance
-
Interactive integration with fzf
-
Modern package-manager support
-
Active development
Users migrating from autojump can import their existing directory history.
zoxide vs z
zoxide is also inspired by the original z directory jumping concept.
It provides similar ranked directory navigation while adding broader platform and shell support.
Existing z users can import their data into zoxide.
Updating zoxide
The update process depends on how zoxide was installed.
WinGet
Use:
winget upgrade ajeetdsouza.zoxide
Homebrew
Use:
brew upgrade zoxide
Cargo
Run the Cargo installation command again:
cargo install zoxide --locked
Install Script
Running the official installation script again can update an existing script-based installation.
Troubleshooting zoxide
z Command Not Found
The binary may be installed, but your shell may not have been configured.
Make sure you added the appropriate:
zoxide init
command to your shell configuration.
Then restart the terminal.
zoxide Is Installed but z Does Nothing
Check that the initialization line is being executed when your shell starts.
For Bash:
eval "$(zoxide init bash)"
For Zsh:
eval "$(zoxide init zsh)"
For PowerShell:
Invoke-Expression (& { (zoxide init powershell | Out-String) })
Interactive Selection Does Not Work
The zi command uses fzf for interactive selection.
Install a supported version of fzf.
The minimum supported version is:
0.51.0
Space+Tab Completion Does Not Work in Warp
Warp provides its own completion system.
The official zoxide documentation notes that Space+Tab completions are therefore not supported in Warp.
Standard zoxide navigation can still be used.
Download zoxide
Download zoxide to navigate frequently used directories faster from your terminal.
Current latest release:
zoxide 0.10.0
Supported environments include:
-
Windows
-
Linux
-
WSL
-
macOS
-
BSD
-
Android
Basic installation for Windows:
winget install ajeetdsouza.zoxide
Basic installation for Linux:
curl -sSfL https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | sh
Basic installation for macOS:
brew install zoxide
After installing, initialize zoxide for your preferred shell and start navigating with:
z directory
Download zoxide
Available Download Options
-
zoxide for Windows
-
zoxide for Linux
-
zoxide for macOS
-
zoxide for BSD
-
zoxide for Android
-
GitHub Release Binaries
-
Source Code ZIP
-
Source Code TAR.GZ
For most users, installing through the recommended package manager for their operating system is easier than manually downloading a release binary.