
Oh My Fish
A framework for the fish shell that installs packages and themes to customize your terminal.
- Stars
- 11.4k
- Forks
- 804
- Licence
- MIT
- Language
- Shell
- Last update
- 1 months ago
- Type
- Dev tool
What it is
Oh My Fish is a framework for the fish shell, a command-line shell. It provides core infrastructure so you can install packages and themes that change how your shell looks and behaves, managed with an included `omf` command. The README says the project is currently unmaintained, so some themes and packages may be broken.
- Install a theme with `omf install` or switch to one with `omf theme`
- Install community packages by name, GitHub `user/repo`, or URL
- Keep your setup in dotfiles using the `bundle`, `theme`, and `init.fish` files in your config directory
- Scaffold your own plugin or theme with `omf new plugin` or `omf new theme`
Great for
- Fish shell users who want an easy way to add themes and prompt customizations
- People who already use Oh My Zsh-style frameworks and want the same idea for fish
- Users willing to troubleshoot a little when a theme or package does not work
Not ideal for
- People who need a well-maintained tool, since the README says the project is unmaintained and the maintainers have run out of steam
- Users who do not use fish shell, since it requires fish 3.0 or later
- Users who need a dependable setup with every package working, since the README warns some themes and packages are broken
How to get it
- 1
See the README
You'll need: fish shell 3.0 or later · git 1.9.5 or later
Install with the default setup (run in fish)
curl https://raw.githubusercontent.com/oh-my-fish/oh-my-fish/master/bin/install | fishClone the repository
git clone https://github.com/oh-my-fish/oh-my-fish - 2
Run it
- Install fish 3.0 or later and git 1.9.5 or later
- Run the install command from the README in your terminal
- Open a new shell so the startup code loads
- Run `omf theme` to list themes, then `omf theme <name>` to apply one
- 3
Get the most out of it
- Use `omf search` with `-t` for themes or `-p` for packages, and it supports fuzzy search
- Keep your setup in dotfiles using the `bundle`, `theme`, and `init.fish` files in the config directory
- Use `omf channel` to choose between the stable and dev update channels
- Use `before.init.fish` or numeric prefixes on script names to control load order
- Use `omf doctor` before opening an issue
Downloads
Strengths
- Simple `omf` command for installing, updating, and removing packages and themes
- Config lives in a few plain files (`bundle`, `theme`, `init.fish`) that suit version control
- Includes a `doctor` command to help troubleshoot problems
Trade-offs
- The README states the project is unmaintained and due a significant overhaul
- Some themes and packages are currently broken, per the README
- Known issue: with fish 2.6, right prompts can make the shell unusable; the default theme uses a right prompt
How it compares
| Project | Stars | Type | Level | Updated | Best for |
|---|---|---|---|---|---|
| oh-my-fish (this) | 11.4k | Dev tool | beginner | 1 months ago | Fish shell users who want an easy way to add themes and prompt customizations |
| ohmyzsh | 190k | Dev tool | beginner | 4 days ago | People who already use zsh and want a ready-made configuration without writing it from scratch |
| spaceship-prompt | 20.6k | Dev tool | beginner | 10 days ago | Zsh users who want useful information in their prompt without much setup |
| pure | 14.5k | Dev tool | beginner | 30 days ago | Developers who use zsh and want a simple, readable prompt |
| autocomplete | 25.2k | Other | intermediate | 1.5 years ago | macOS developers who use zsh, bash or fish and want suggestions for common CLIs |
| zoxide | 40.4k | Dev tool | beginner | 4 days ago | Developers who move between many project folders in a terminal |
Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.