Where Is the Fish Shell Config File?
Fish shell config.fish and functions folders on Linux and macOS, plus the web-based config tool.
Last updated
Fish keeps its main config in config.fish under the XDG config home, with autoloaded functions in a functions subfolder. Universal variables persist separately in fish_variables.
The web UI (fish_config) edits colors and prompts without hand-editing files. Custom functions saved there land in functions automatically.
Where Fish shell stores this, by platform
~/.config/fish/config.fish
Main config file. Functions live in ~/.config/fish/functions, one file per function. Completions go in completions.
~/.config/fish/config.fish
Identical layout. Homebrew fish uses the same path.
Frequently asked questions
How do I add aliases in Fish?
Add abbreviations with abbr -a name expansion in config.fish. They expand on space and are friendlier than aliases for interactive use.
Notice an outdated path? Let us know.