Alternatives to fish
A shell that autosuggests commands from your history, highlights syntax as you type and has tab completions that work without configuration. The listings below can replace it for an important use case. Each note says what changes if you switch.
The original
fish
A shell that autosuggests commands from your history, highlights syntax as you type and has tab completions that work without configuration.
Replacements
Listings that take over the same core job as fish.
Zsh
Interactive shell with powerful completion, globbing and prompt theming.
Zsh offers command-aware completion and recursive globbing under the MIT license, but its startup configuration grows complicated quickly, which is why frameworks like Oh My Zsh exist.
Nushell
Shell that pipes structured tables instead of untyped text.
Nushell pipes structured tables instead of text and has an official Windows build, but like fish it is not POSIX compatible and its language still changes between releases.
Also worth comparing
These listings name fish as their own alternative, so the relationship runs both ways.
Elvish
A scripting language and interactive shell with data structures and built-in interactive features.
fish focuses on interactive use with autosuggestions and man-page completions out of the box, but has no official Windows build and is also not POSIX-compatible.
Murex
A command-line shell with native support for JSON, YAML, CSV and other structured data.
fish trades structured data handling for autosuggestions, syntax highlighting and man-page completions that work with no configuration.
Oils
A Unix shell project combining OSH, a bash-compatible shell, and YSH, a new shell language.
fish focuses on interactive use with autosuggestions and highlighting out of the box, but it is not POSIX-compatible so bash scripts need changes.
Xonsh
A cross-platform shell whose language is a superset of Python 3 with shell commands built in.
fish gives autosuggestions and highlighting with no configuration, but uses its own language rather than Python and has no official Windows build.
zsh-autosuggestions
A Zsh plugin that suggests commands as you type, based on your shell history.
fish builds history-based autosuggestions into the shell itself with no plugins, but switching means leaving Zsh for a shell that is not POSIX-compatible.
Similar software
Related functionality, not a direct replacement.
Fisher
Minimal plugin manager for the Fish shell.
Starship
A shell prompt that shows the git branch, language version and other context, configured once and working in every shell.
Oh My Zsh
Configuration framework for Zsh with hundreds of plugins and themes.
McFly
Replaces the shell's Ctrl-R history search with context-aware suggestions.
Bash-it
Configuration framework of aliases, completions and themes for Bash.
Oh My Posh
Customize shell prompts across operating systems with configurable themes.