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.