You probably don't need Oh My Zsh | Artem Golubin You probably don't need Oh My Zsh Last updated on January 09, 2026, in other Oh My Zsh is still getting recommended a lot. The main problem with Oh My Zsh is that it adds a lot of unnecessary bloat that affects shell startup time. Since OMZ is written in shell scripts, every time you open a new terminal tab, it has to interpret all those scripts. Most likely, you don’t need OMZ at all. Here are the timings from the default setup with a few plugins: ➜ ~ /usr/bin/time -f "%e seconds" zsh -i -c exit 0.38 seconds And that’s only for prompt and a new shell instance! Creating a new tab takes some time for your terminal too. It feels like a whole second to me. My workflows involve opening and closing up to hundreds of terminal or tmux tabs a day. I do everything from the terminal. Just imagine that opening a new tab in a text editor would take half a second every time. Once in a while, it also checks for updates, which can take up to a few seconds when you open a new tab. I see no reason in frequent updates for my shell configuration. Especially, when a lot of third-party plugins are getting updates too. Why would you want you shell to fetch updates? My advice is to start simple and only add what you really need. Minimal Zsh configuration Here is the minimal Zsh configuration that works well as a starting point: export HISTSIZE=1000000000 export SAVEHIST=$HISTSIZE setopt EXTENDED_HISTORY setopt autocd autoload -U compinit; compinit It’s an already pretty good setup with completions! Some details about this configuration: HISTSIZE and SAVEHIST set the size of your history. EXTENDED_HISTORY adds timestamps to your history entries. autocd allows you to change directories without typing cd. compinit initializes the Zsh completion system. Prompt customization You also want to customize your prompt. For prompts, I’m using starship which is a fast and minimal prompt packed into a single binary. The very old way of doing this in Oh My Zsh was to use plugins and custom themes. With starship, it’s very simple and easy now. It replaces git, virtual environment and language specific plugins. Here is my config for starship: [aws] disabled = true [package] disabled = true [gcloud] disabled = true [azure] disabled = true [nodejs] disabled = true [character] success_symbol = '[➜](bold green)' [cmd_duration] min_time = 500 format = 'underwent [$duration](bold yellow)' [directory] truncation_length = 255 truncate_to_repo = false use_logical_path = false Because cloud services are available globally, I’ve disabled them. I don’t want them to be displayed on every prompt, since this adds visual noise. Here is how my prompt looks like now: This project uses both Python and Rust, they are highlighted in the prompt. When you run a command, it also shows how long it took to execute. To enable it, add the following line to your .zshrc: eval "$(starship init zsh)" History search A lot of people use zsh-autosuggestions plugin for history search. I find it distracting, because it shows all suggestions as you type. Instead, I prefer using fzf binded to Ctrl+R for searching history. It gives an interactive fuzzy search. To enable it, add the following lines to your .zshrc: source <(fzf –zsh) Final startup time After these changes, the startup should look as follows: ❯ /usr/bin/time -f "%e seconds" zsh -i -c exit 0.07 seconds Miscellaneous tips For Vim users, I also suggest enabling Vim mode in Zsh. It makes editing commands much faster. set -o vi # Fix for backspace in vi mode bindkey -v '^?' backward-delete-char It works the same way as in Vim. By default, zle (the library that reads the shell input) uses Emacs keybindings. Conclusion After switching from OMZ a year ago, it only took me a few days to get used to the new workflow. If you still missing some of the plugins, you can always load them manually. If you have any questions, feel free to ask them via e-mail displayed in the footer. Recent posts in Other category January 09, 2026 You probably don't need Oh My Zsh October 11, 2025 How I am using Helix editor April 30, 2022 How masscan works September 08, 2020 Clipboard API for browsers is inconsistent July 06, 2020 How to track and display profile views on GitHub other Share Linkedin Telegram Reddit Hacker News Twitter RSS Comments mtizim 2026-01-09 # You probably don’t need to switch away from Oh My Zsh: ➜ ~ time zsh -i -c exit zsh -i -c exit 0.02s user 0.03s system 114% cpu 0.044 total ➜ ~ omz plugin list –enabled Custom plugins: zsh-autosuggestions zsh-fzf-history-search Built-in plugins: git reply Artem 2026-01-09 # zsh-autocomplete is usually the plugins that slows downs popular setups. Also, please keep in mind that this benchmark does not measure slowlines of git plugins. Here is the output from zsh-bench for OMZ: ==> benchmarking login shell of user main … creates_tty=0 has_compsys=1 has_syntax_highlighting=0 has_autosuggestions=1 has_git_prompt=0 first_prompt_lag_ms=603.751 first_command_lag_ms=615.419 command_lag_ms=3.517 input_lag_ms=3.093 exit_time_ms=53.762 My Zsh setup: ==> benchmarking login shell of user main … creates_tty=0 has_compsys=1 has_syntax_highlighting=0 has_autosuggestions=0 has_git_prompt=1 first_prompt_lag_ms=103.337 first_command_lag_ms=103.506 command_lag_ms=53.602 input_lag_ms=0.118 exit_time_ms=48.795 reply Name Message Send

Leave a Reply

This is the xdefiance Online Web Shop.

A True Shop for You and Your Higher, Enlightnened Self…

Welcome to the xdefiance website, which is my cozy corner of the internet that is dedicated to all things homemade and found delightful to share with many others online and offline.

You can book with Jeffrey, who is the Founder of the xdefiance store, by following this link found here.

Visit the paid digital downloads products page to see what is all available for immediate purchase & download to your computer or cellphone by clicking this link here.

Find out more by reading the FAQ Page for any questions that you may have surrounding the website and online sop and get answers to common questions. Read the Returns & Exchanges Policy if you need to make a return on a recent order. You can check out the updated Privacy Policy for xdefiance.com here,

If you have any unanswered questions, please do not hesitate to contact a staff member during office business hours:

Monday-Friday 9am-5pm, Saturday 10am-5pm, Sun. Closed

You can reach someone from xdefiance.online directly at 1(419)-318-9089 via phone or text.

If you have a question, send an email to contact@xdefiance.com for a reply & response that will be given usually within 72 hours of receiving your message.

Browse the shop selection of products now!

Reaching Outwards