.github | ||
zsh-plugin-assessor | ||
.codeclimate.yml | ||
CODE_OF_CONDUCT.md | ||
Contributing.md | ||
LICENSE | ||
README.md | ||
Writing_Plugins.md |
awesome-zsh-plugins
Status
A collection of ZSH frameworks, plugins, tutorials & themes inspired by the various awesome list collections out there.
Table of Contents
- Frameworks
- Setups
- Tutorials
- Plugins
- Completions
- Themes
- Fonts
- Installation
- Writing New Plugins
- Other Resources
Please read the Contributing Guidelines before contributing.
Frameworks
These frameworks make customizing your ZSH setup easier.
You can find some interesting performance timing comparisons of various frameworks in the following locations.
alf
Alf is an out of this world super fast and configurable framework for ZSH; it's modeled after Prezto and Antigen while utilizing Oh-My-Zsh under the covers; and offers standard defaults, aliases, functions, auto completion, automated updates and installable prompt themes and plugins.
ansible-role-zsh
ansible-role-zsh is an ansible role with zero-knowledge installation. It uses antigen to manage bundles and oh-my-zsh. Can load bundles conditionally. By default it includes powerlevel9k theme, autosuggestions, syntax-highlighting and fzf-widgets and fzf-marks. Fully customizable.
ant-zsh
Ant-zsh is a tiny and lightweight ZSH configuration environment for special customization needs. It includes plugins, themes and a basic convenient setup.
antibody
Antibody is a faster and simpler antigen written in Golang. More details at http://getantibody.github.io/.
antigen-hs
antigen-hs is a replacement for antigen optimized for a low overhead when starting up the shell. It will automatically clone plugins for you.
antigen
Antigen is a small set of functions that help you easily manage your shell (ZSH) plugins, called bundles. The concept is pretty much the same as bundles in a typical vim+pathogen setup. Antigen is to ZSH, what Vundle is to vim. Antigen can load oh-my-zsh themes and plugins and will automatically clone them for you.
ax-zsh
Ax-ZSH is a modular configuration system for ZSH. It provides sane defaults and is extendable by plugins.
dotzsh
Dotzsh strives to be platform and version independent. Some functionality may be lost when running under older versions of ZSH, but it should degrade cleanly and allow you to use the same setup on multiple machines of differing OSes without problems.
fresh
fresh is a tool to source shell configuration (aliases, functions, etc) from others into your own configuration files. We also support files such as ackrc and gitconfig. Think of it as Bundler for your dot files.
miniplug
miniplug is a minimalistic plugin manager for ZSH.
- No crashes or double plugin loading when re-sourcing .zshrc
- Unlike other frameworks, Miniplug does not pollute your $PATH
- Only does the bare minimum for managing plugins
oh-my-zsh
oh-my-zsh is a community-driven framework for managing your ZSH configuration. Includes 120+ optional plugins (rails, git, macOS, hub, capistrano, brew, ant, macports, etc), over 120 themes to spice up your morning, and an auto-update tool that makes it easy to keep up with the latest updates from the community.
PMS
PMS allows you to manage your shell in a way to that helps decrease setup time and increases your productivity. It has support for themes (change the way your shell looks), plugins (adds functionality to your shell), and dotfile management.
prezto
Prezto enriches the ZSH command line interface environment with sane defaults, aliases, functions, auto completion, and prompt themes. There are some prezto-specific plugins at https://github.com/belak/prezto-contrib.
pumice
Pumice is a lightweight plugin manager for ZSH.
sheldon
A fast, configurable, shell plugin manager.
- Can manage
- Any
git
repository.- Branch/tag/commit support.
- Extra support for GitHub repositories.
- Extra support for Gists.
- Arbitrary remote files, simply specify the URL.
- Local plugins, simply specify the directory path.
- Any
- Highly configurable install methods using handlebars templating.
- Super-fast parallel installation.
- Configuration file using TOML syntax.
- Uses a lock file for much faster loading of plugins.
Toasty
Toasty is a ZSH framework made to facilitate management, not dictate it.
uz
A ZSH micro plugin manager.
zapack
zapack is a basic fast minimal ZSH plugin loader.
zeesh
Zeesh is a cross-platform ZSH framework. It's similar to, but incompatible with, oh-my-zsh. It has a modular plugin architecture making it easy to extend. It has a rich set of defaults, but is designed to be as lightweight as possible.
zgem
Zgem is a plugin manager for ZSH that supports loading and updating plugins and themes from git, http and local files.
zgen
Zgen is a lightweight plugin manager for ZSH inspired by Antigen. The goal is to have minimal overhead when starting up the shell because nobody likes waiting.
To do this, zgen
generates a static init.zsh
file which does nothing but source your plugins and append them to your fpath
. This minimizes startup time by not having to execute time consuming logic (plugin checking, updates, etc) during startup. The downside is that you have to refresh the init script manually with zgen reset
whenever you update your plugin list in your .zshrc
. Can load oh-my-zsh-compatible plugins and themes, and will automagically clone them for you when you add them to your plugin list.
zgenom
A lightweight plugin manager for ZSH based on zgen. It is a superset of the brilliant zgen that provides more features and bugfixes while being fully backwards compatible.
zilsh
zilsh is a ZSH config system that aims to appeal more to power-users and follow the simplistic approach of vim-pathogen.
zim
Zim is a ZSH configuration framework with blazing speed and modular extensions.
Zinit
Zinit is an innovative and probably (because of the Turbo) the fastest plugin manager with support for:
- Turbo mode – 80% faster Zsh startup! for example: instead of 200 ms, it'll be 40 ms,
- completion management (selectively disable and enable completions),
- snippets (↔ regular files downloaded via-URL, e.g.: scripts) and through them Oh My Zsh and Prezto plugins support (→ low overhead),
- annexes (↔ Zinit extensions),
- reports (from the plugin loads – plugins are no longer black boxes),
- plugin unloading (allows e.g.: dynamic theme switching),
bindkey
capturing and remapping,- packages,
- clean fpath (the array
$fpath
is not being used to add completions and autoload functions, hence it stays concise, not bloated), - services ↔ a single-instance, background plugins,
- also, in general: all the mechanisms from the Zsh Plugin Standard – Zinit is a reference implementation of the standard.
Bonus: you can use zinit-console to view and change the state of the ZSH session (e.g.: list and unload plugins) and to delete the plugins and snippets from the disk.
The project is very active – currently > 3000 commits.
zit
zit is a plugin manager for ZSH. It is minimal because it implements the bare minimum to be qualified as a plugin manager: it allows the user to install plugins from Git repositories (and Git repositories only, them why the name), source plugins and update them. It does not implement fancy functions like cleanup of removed plugins, automatic compilation of installed plugins, alias for oh-my-zsh/prezto/other ZSH frameworks, building binaries, PATH manipulation and others.
znap
⚡Znap is a light-weight plugin manager for Zsh that's easy to grok.
Consisting of just ~16 kilobytes of source code (9 KB zipped), Znap does everything you need from a plugin manager, but without any bloat.
Znap can:
- Make any prompt appear instantly. Reduce your startup time from ~200ms to ~40ms with just one command.
- Asynchronously compile your plugins and functions.
- Cache those expensive
eval $(commands)
. - Clone or pull multiple repos in parallel.
- Re-clone all your repos without you having to re-enter them.
zoppo
Zoppo is the crippled configuration framework for ZSH. As an Italian saying goes: "chi va con lo zoppo, impara a zoppicare", we realized we were walking with a cripple and are now going to become crippled ourselves.
zpacker
Zpacker is a lightweight ZSH plugin & theme management framework.
zplug
🌺 Zplug is a next-generation ZSH plugin manager.
- Can manage everything
- Zsh plugins/UNIX commands on GitHub and Bitbucket
- Gist files (gist.github.com)
- Externally managed plugins e.g., oh-my-zsh and prezto plugins/themes
- Binary artifacts on GitHub Releases
- Local plugins
- etc. (you can add your own sources!)
- Super-fast parallel installation/update
- Support for lazy-loading
- Branch/tag/commit support
- Post-update, post-load hooks
- Dependencies between packages
- Unlike antigen, no ZSH plugin file (
*.plugin.zsh
) required - Interactive interface (fzf, peco, zaw, and so on)
- Cache mechanism for reducing the startup time
zplugr
Too many plugin managers try to do too many things. zplugr isn't a clever plugin manager, it's a smart one. Simple. Easy to understand. Doesn't try to be too much. Does everything you'd want a plugin manager to do and lets you do the rest.
zpm
zpm ( ZSH Plugin Manager ) is a plugin manager for ZSH who combines the imperative and declarative approach. At first run, zpm will do complex logic and generate cache, after that will be used cache only, so it makes this framework to be very fast.
- Fastest plugin manager (Really, after the first run, zpm will not be used at all)
- Support for async loading
- Dependencies between packages
- zpm runs on Linux, macOS, FreeBSD and Android.
- zpm plugins are compatible with oh-my-zsh.
zr
zr is a quick, simple ZSH plugin manager written in Rust and easily installable with cargo install zr
.
zshing
zshing is a ZSH plugin manager similar to Vundle/Vim and allows you to...
- keep track of and configure your plugins right in the
.zshrc
- Install ZSH plugins
- Update ZSH plugins
- Search by name all available ZSH Plugins
- Clean unused plugins up
- run the above actions in a single command
- manages the Source Plugins of your installed Plugins
ztanesh
Ztanesh aims to improve your UNIX command line experience and productivity with the the configuration provided by the ztanesh project: the tools will make your shell more powerful and easier to use.
ztheme
ztheme is a small and fast theme engine for ZSH.
ztupide
A simple and fast ZSH plugin manager. It uses zcompile and async loading to speed up your shell startup time.
zulu
Zulu is a environment manager for ZSH 5+, which aims to make it easy to manage your shell without writing any code.
- Easily manage your shell environment without editing files.
- Create aliases, functions and environment variables, and have them available to you at the next shell startup.
- Add and remove directories from
$path
,$fpath
and$cdpath
with simple commands. - Install packages, plugins and themes easily, and have them available to you immediately.
Setups
This section is for full setup dropins - they aren't frameworks, but they're not simple plugins/themes either.
zgen
- zsh-quickstart-kit - A simple quickstart for using ZSH with zgen. This includes a curated collection of plugins, automatically configures ZSH to use zgen to load them and periodically automatically update itself, the plugins, and the quickstart kit itself.
zinit
- ZPWR - An extremely powerful custom terminal environment built on top of Zinit for maximum speed. A full terminal configuration framework including zsh, tmux, fzf, vim and spacemacs configurations. It includes:
- 11200+ tab completions
- 1800+ aliases
- 300+ git aliases
- 265+ zpwr subcommands
- 1300+ functions
- 110+ zpwr environment variables
- 165+ perl, python, bash, zsh scripts
- 2600k line README.md
- 40k+ LOC
- 1 line install
Tutorials
Generic ZSH
- A Beautifully Productive Terminal Experience - Tutorial using a combination of iTerm 2, ZSH, Prezto, Tmux, and Tmuxinator to make for an extremely productive developer workflow.
- Arch Linux's ZSH introduction - Not actually Arch or Linux-specific.
- commandlinepoweruser.com - Wes Bos' videos introducing ZSH and oh-my-zsh.
- Outrageously Useful Tips To Master Your Z Shell covers some of the features that ZSH has that Bash doesn't, and using oh-my-zsh.
- rs-example - An example plugin showing how a Rust program can listen to and process commands from ZSH.
- Why ZSH is Cooler than your Shell - slideshare presentation.
- xVanjaZ - wrote a quick setup document for oh-my-zsh beginners showing how to use the spaceship prompt, syntax highlighting at the prompt, autosuggestion and a custom iTerm 2 theme.
- ZSH for Humans - A turnkey configuration for ZSH that aims to work really well out of the box. It combines a curated set of ZSH plugins into a coherent whole that feels like a finished product rather than a DIY starter kit.
- ZSH Pony - Covers customizing ZSH without a framework.
- ZSH tips by Christian Schneider - An exhaustive list of ZSH tips by Christian Schneider.
Antigen
- belak/zsh-utils - A minimal set of ZSH plugins designed to be low-friction and low-complexity.
- Frictionless zsh And oh-my-zsh Management With Antigen - Guides you through the setup process and demonstrates how to manage plugins and themes with Antigen to tailor your ZSH experience.
- mgdm.net/weblog/zsh-antigen/ - Michael Maclean's article about switching from oh-my-zsh to antigen.
- Oh-my-zsh is the Disease and Antigen is the Vaccine - Josh Davis' introduction to Antigen.
Oh-My-Zsh
- Getting started with oh-my-zsh - A beginners guide to oh-my-zsh by Dien Bui
- Learn Zsh in 80 Minutes macOS - A beginners guide to using Oh My Zsh on macOS by Karl Hadwen
- Oh-My-Zsh! A Work of CLI Magic - Michiel Mulders installation guide for Ubuntu
- ZSH Gem 24 - Part of the 2011 ZSH Advent Calendar. Covers oh-my-zsh and zshuery.
Prezto
- A Beautifully Productive Terminal Experience - Mike Buss' blog post about using Prezto, Tmux & Tmuxinator.
- Ditching oh-my-zsh for prezto - Linh M. Tran's post about transitioning to Prezto from Oh-My-Zsh.
- Migrate from Oh-My-Zsh to Prezto - Jerome Dalbert's blog post on migrating to Prezto.
Zgen
- rad-shell - A fantastically feature rich, lightning-fast shell setup, powered by ZSH, Prezto, and Zgen.
Zinit (née zplugin)
- BlaCk-Void-Zsh - 🔮 Awesome, Customable Zsh Starter Kit 🌠🌠. Includes powerline, fzf integration, Weather and image viewing in some terminals.
- zinit-configs - Real-world configuration files (basically a collection of
.zshrc
files) holding Zinit invocations.
ZSH on Windows
-
superconsole - Windows-only.
- ConEmu/zsh out-of-the-box configured to restore previously opened tabs and shell working directories after ConEmu restart
- Choose between clean and inherited environment when starting new SuperConsole sessions
- Custom colorful scheme, colorful output for various commands
- MSYS2 included,
zsh
and necessary software preinstalled, uses zsh-grml-config - Uses Antigen for ZSH theme and config management
- Enabled number of ZSH plugins to activate completion, highlighting and history for most comfortable use
- Git-for-Windows repo with proper
git
and git lfs support for MSYS2 environment is configured,git
client already installed. ssh-agent
forgit
works out-of-box, add your keys toConEmu/msys64/ConEmu/msys64/home/user/.ssh
dir- Non-blocking ZSH prompt status updates thanks to agkozak-zsh-prompt
- Customized for MSYS2 command-not-found handler suggests what package to install
- Sets up
nano
as main editor, enablesnano
syntax highlighting - Custom helper scripts added to
ConEmu/msys64/3rdparty
Plugins
- 1999 - Powerline-esque theme. Includes
git
status decorations, network and battery status. - 256color - Enhances the terminal environment with 256 colors. It looks at the chosen
TERM
environment variable and sees if there is respective ncurses' terminfo with 256 colors available. The result is a multicolor terminal, if available. - abbr (plugin) - Manages auto-expanding abbreviations that expand inline when you hit space, inspired by fish shell.
- abbr-path - Adds functionality of the
theme_title_use_abbreviated_path
parameter from some oh-my-fish themes. - abbrev-alias - Provides functionality similar to
vim
's abbreviation expansion. - accurev - ZSH plugin for accurev.
- actiona - Make it easier to call actiona scripts from your command line. Includes tab completions.
- alehouse - Contains short aliases for brew commands, inspired by betterbrew.
- alias-tips - An oh-my-zsh plugin to help remembering those aliases you defined once.
- allergen - A collection of custom ZSH plugins to use with Antigen.
- almostontop - Clears previous command output every time before new command executed in shell. Inspired by the alwaysontop plugin for
bash
. - ansible - A plugin for Ansible.
- ansiweather - Weather in your terminal, with ANSI colors and Unicode symbols.
- antigen-git-rebase - Antigen/ZSH script to aid with
git
rebasing. - anyframe - A peco/percol/fzf wrapper plugin for ZSH.
- apache2 - Adds aliases and functions for managing Apache2.
- apple-touchbar - Adds MacBook Pro touchbar support in iTerm 2.
- appup - Adds
start
,stop
,up
anddown
commands when it detects adocker-compose.yml
orVagrantfile
in the current directory (e.g. your application). Just runup
and get coding! - arc - Adds aliases for Yandex version control system.
- arduino - Adds scripts to build, upload and monitor arduino sketches from a command line. Requires
jq
. - artisan - Laravel
artisan
plugin for ZSH to help you to runartisan
from anywhere in the project tree, with tab completion! - asciidoctor - A plugin for AsciiDoctor.
- asdf - Integration and completions for asdf, the extendable version manager, with support for Ruby, Node.js, Elixir, Erlang and more.
- assume-role - ZSH plugin to allow you to assume AWS IAM roles easily. Includes completions.
- async - Library for running asynchronous tasks in ZSH without requiring any external tools. Allows you to run multiple asynchronous jobs, enforce unique jobs (multiple instances of the same job will not run), flush all currently running jobs and create multiple workers (each with their own jobs).
- atom-plugin - Based on the Sublime plugin, lets you launch a file or folder in Atom from iTerm 2.
- auto-color-ls - Automatically list directories with
colorls
. - auto-fu.zsh - Automatic complete-word and list-choices. Originally incr-0.2.zsh by y.fujii .
- auto-ls - Automatically
ls
when cding to a new directory. - auto-notify - Automatically sends out a notification when a long running task has completed.
- autocomplete - Automatically lists completions as you type and provides intuitive keybindings for selecting and inserting them.
- autodotenv - Will prompt you to load variables when you
cd
into a directory containing a.env
file. - autoenv-extended - Extended version of the zsh-autoenv plugin.
- autoenv - If a directory contains a
.env
file, it will automatically be executed when youcd
into it. - autojump - A
cd
command that learns - easily navigate directories from the command line. Install autojump-zsh for best results. - autopair - A ZSH plugin for auto-closing, deleting and skipping over matching delimiters. Only tested on ZSH 5.0.2 or later.
- autosuggestions - Fish-like fast/unobtrusive autosuggestions for ZSH.
- autoswitch-virtualenv - ZSH plugin to automatically switch python virtualenvs and pipenvs when traversing directories. Automatically detects pipenv and poetry projects.
- autoupdate-antigen - Antigen doesn't do automatic updates like oh-my-zsh. This plugin adds auto updating for antigen, both of antigen and the bundles loaded in your configuration.
- autoupdate-oh-my-zsh-plugins - oh-my-zsh doesn't automatically update non-core plugins, this adds plugin autoupdating to oh-my-zsh.
- aws-cli-mfa - AWS CLI MFA plugin based on sweharris' aws-cli-mfa. Supports specifying mfa_device in profile.
- aws-mfa - Plugin for AWS MFA.
- aws-plugin - Adds helper functions for
aws
command. Includes mfa and assume-role helpers. - aws-upload - Boost your productivity with
aws-upload
. - aws-vault - Plugin for aws-vault.
- aws2 - Provides completion support for version 2 of the awscli and a few utilities to manage AWS profiles and display them in the prompt.
- awsume - Plugin that enables showing the current awsume profile.
- azcli - Helper for using the azure cli tools.
- background - ZSH plugin which executes functions in the background.
- base16 - Adds script to allow you to change your shell's default ANSI colors but most importantly, colors 17 to 21 of your shell's 256 colorspace (if supported by your terminal). This script makes it possible to honor the original bright colors of your shell (e.g. bright green is still green and so on) while providing additional base16 colors to applications such as Vim.
- baseballfunfacts - Print random baseball related "fun facts" in your shell. Depends on
fortune
andcowsay
being installed. - basex - Adds several BaseX aliases for simplified usage.
- bash-quote - Get random quote from Bash.im.
- bash - Makes ZSH more Bash compatible. It redefines the source command to act more like
bash
does. It also enablesbash
completions. - battery_state - Show battery state in right-prompt.
- bd - Jump back to a specific directory, without doing
cd ../../..
. - bepoptimist - Remap ZSH
vi
-mode for French bépo keyboard. - betterbrew - Add more command aliases for
brew
- bitbucket-git-helpers - Adds helper scripts to allow you to create bitbucket PRs or open a directory in the current branch.
- blackbox - Stack Exchange's toolkit for storing keys/credentials securely in a
git
repository. - boss-docker - Manages
docker
on OSX. - boss-git - Adds some convenience aliases for
git
. - branch-manager - A plugin for managing
git
branches. - brew (rhuang2014) - Standalone plugin for the Homebrew Package Manager.
- brew (wolffaxn) - Standalone plugin for the Homebrew Package Manager.
- browse-commit - A plugin that lets you open any commit in your browser from the command line.
- bruse - Makes it easy to
brew link
different versions of packages. - bumblebee - A plugin to toggle optirun in the command line.
- calc - A calculator for ZSH.
- caniuse - Add Can I Use... support to ZSH.
- careful_rm - A wrapper for
rm
that adds trash/recycling and useful warnings. - case - A ZSH plugin that adds two aliases
tolower
andtoupper
to switch output case. - cd-gitroot - A ZSH plugin to
cd
to thegit
repository root directory. - cd-reminder - Display reminders when
cd
-ing into specified directories. - cd-reporoot - A ZSH plugin to
cd
to the current repository checkout's root directory. - cd-ssh -
ssh
to a server when you accidentallycd
to it. - cdc - Makes it easier to change directories to directories that are subdirs of a user-defined list of directories. Includes tab-completion, session history and
pushd
,popd
anddirs
equivalents. - cdbk - A ZSH plugin to allow easy named directory creation - shortcuts to any directory you want.
- cdc - Shell function for changing directory to a directory found in one of your defined frequently-used places.
- cdr - Easy setup of cdr for ZSH.
- change-case - Plugin for fast swap between upper and lower case in your command line. 😎
- cheatsheet - Plugin to easily view, create, and edit cheatsheets.
- check-deps - Helper for ZSH plugins that allows them to show how to install any missing dependencies. Works on Debian (and derivatives like Ubuntu), Arch and its derivatives, Nodejs and ZSH plugins if you are using the zpm framework.
- clean-project - Remove files from projects (automatically by default). Useful for keeping
.DS_Store
andThumbs.db
files from cluttering your directories. - clipboard - Adds a cross-platform helper function to access the system clipboard. Works on macOS, X11 (and Wayland) and Cygwin.
- cmd-architect - Build commands from what's in history and at prompt, move, delete, add command segments and search history with multi-word queries.
- code-review - Launches
git difftool
ongit merge-base target_branch base_branch
andtarget_branch
. - code-stats - Counts keypresses and logs stats to Code::Stats.
- colored-man-pages-mod - Forked from ohmyzsh/ohmyzsh/plugins/colored-man-pages. Colorizes
man
output. - colored-man-pages - Colorize
man
pages. - colorize - Colorize the output of various programs.
- colorls - Defines a few helpful shortcuts to some colorls functions.
- colors (Tarrasch) - Makes it easier to colorize text from the CLI.
red foo
just works. - colors (zpm-zsh) - Enhanced colors for ZSH.
- command-execution-timer - Displays the time an interactive shell command takes to execute.
- command-not-found - A mirror of the oh-my-zsh command-not-found plugin so you don't have to include all of oh-my-zsh.
- command-note - Record complex commands and comment on them.
- command-time - Show execution time for long commands in ZSH and powerlevel9k. Similar to
REPORTTIME
builtin, but only outputs when user + system time >=REPORTTIME
. - completion-generator - This plugin tries to read the list of options from the help text of programs and generate a completion function automatically. Note that this doesn't do it automatically, you have to explicitly call the generator to create a completion script.
- copy-pasta - Copy and paste files in your terminal like you would in a GUI.
- copyzshell - A ZSH plugin to copy your shell configuration to another machine over
ssh
. - crash - Adds proper error handling, exceptions and try/catch for ZSH.
- crayon-syntax - ZSH syntax highlighting for the Crayon Plugin for Wordpress.
- crypto-prices - Add a powerlevel9k segment with the current bitcoin price.
- crystal - A plugin for Crystal.
- czhttpd - A simple http server written in 99.9% pure ZSH.
- declare-zsh - A command-line parser for Zinit commands in
zshrc
. - deepx - Collection of useful and fun commands to improve workflow and quality of life.
- deer - A file navigator for ZSH heavily inspired by ranger.
- depot-tools - Simple oh-my-zsh plugin for installing the chromium depot_tools. Installing this plugin will put all of the chromium depot_tools in your path automatically.
- diff-so-fancy - Simplify installing the
diff-so-fancy
project into your user account. - diractions - Allow you to map a short logical/mnemonic name to directories to quickly access them, or perform actions in them.
- dircolors-solarized (joel-porquet) - Solarized dircolors plugin, with options for dark or light terminal backgrounds.
- dircolors-solarized (pinelibg) - Enables Solarized Color Theme for GNU ls.
- dircycle - Cycle through the directory stack.
- directory-history - A per directory history for ZSH which implements forward/backward navigation as well as substring search in a directory sensitive manner.
- direnv - A plugin for installing and loading direnv. Inspired by zsh-pyenv.
- dirrc - Executes
.dirc
when present in a directory youcd
into. - dirstack - Plugin for displaying dirstack info on a single line.
- doas - Easily prefix your current or previous commands with
doas
by pressingesc
twice. - docker-aliases Docker aliases for everyday use.
- docker-compose Show docker container status in your prompt.
- docker-helpers - A collection of docker helper scripts.
- docker-machine - A docker-machine plugin for ZSH.
- docker-run - Go back to running your commands "naturally", we'll handle the container.
- dogesh - Dogification plugin.
- dotbare - Interactive dotfile management with the help of
fzf
. - dotfiles - Keep your dotfiles in sync across multiple machines using
git
. - dotpyvenv - Automagically switch to a python virtual environment located (that you previously have created with virtualenv program) in a directory named
.pyvenv
when youcd
into a directory. - dropbox - A dropbox plugin for ZSH that provides
dropbox-cli
anddropbox-uploader
commands. - dune-quotes - Random Dune quote generator plugin.
- duration - Displays command duration if it exceeds a user-settable run time.
- dwim - Attempts to predict what you will want to do next. It provides a key binding (control-u) that will replace the current (or previous) command line with the command you will want to run next.
- easy-motion - A port of vim-easymotion for ZSH.
- ec2ssh - List EC2 instances and
ssh
login to the instances easily. - editing-workbench - Adds sane, complex command line editing (e.g. incremental history word completion).
- edward cli - Adds smart completions and alises for edward CLI micro-service launcher.
- elixir - Adds shortcuts for Elixir, IEX, Mix, Kiex and Phoenix.
- emoji-cli - 😱 Emoji completion on the command line.
- emojis - Adds numerous ascii art emojis to your environment in convenient variables.
- enhancd - A simple tool that provides enhanced
cd
command. - envrc - Automatically loads and unloads environment variables if a
.envrc
file is found in a directory. - escape-backtick - Quickly insert escaped backticks when double-tapping "`".
- evalcache - Cache the output of a binary initialization command, to help lower shell startup time.
- evil-registers - Extends ZLE vi commands to remotely access named registers of the vim and nvim editors, and system selection and clipboard.
- exa (DarrinTisdale) - Enables a number of aliases extending exa, the modern replacement for
ls
. - exa (hermitmaster) - Adds some aliases for exa, the modern replacement for
ls
. - exercism - A plugin for exercism.io.
- expand-ealias - Expand specific aliases with space.
- expand - Expands regular aliases, global aliases, incorrect spellings and phrases, globs, history expansion and $parameters with the spacebar key.
- explain-shell - Opens commands on explainshell.com.
- extend-history - Extends command history by adding exit code for each command in the history.
- fancy-ctrl-z - Broken out version of the version in oh-my-zsh so users of other frameworks don't have to import all of oh-my-zsh.
- fast-alias-tips - Helps remember the aliases you defined and forgot about. Ported from djui/alias-tips.
- fast-syntax-highlighting - Optimized and improved
zsh-users/zsh-syntax-highlighting
– better response times, switchable highlight themes. - fav - ZSH/fzf plugin that makes it really easy to add and recall named favorites of your important directories.
- favorite-directories - Fast jumps to your favorite directories.
- figures - Unicode symbols for ZSH.
- firebase (Seqi) - Display the current working project or project alias when in a Firebase project directory or subdirectory.
- firebase (rmrs) - Add an indicator in the prompt that you're in a directory with a
firebase.json
file (aka "firebase project"). - fixnumpad-osx - Enables numpad keys of Apple keyboards to be recognized in ZSH.
- flow-plugin - This plugin makes the
flow
command available inside every subdirectory of the TYPO3 Flow distribution. - fnm - Installs and loads the Fast Node Manager (fnm) if it is missing.
- forgit - Utility tool for
git
which takes advantage of fuzzy finder fzf. - functional - ZSH higher order functions.
- fuzzy-search-and-edit - ZSH plugin for fuzzy searching files and instantly opening a matched file on matched line.
- fz - Seamlessly adds fuzzy search to z's tab completion and lets you easily jump around among your historical directories.
- fzf (unixorn) - Enables fzf history and file searches.
- fzf-fasd - Integrates fzf and fasd --- tab completion of
z
with fzf's fuzzy search! - fzf-finder - Plugin to have a cool search keybinding with fzf and (optionally) bat. Searches in the local tree of subdirectories for files.
- fzf-git - Add nice
git
completions using fzf. - fzf-history-search - Replaces
Ctrl+R
with an fzf-driven history search that includes date/times. - fzf-marks - Little script to create, navigate and delete bookmarks in
bash
andzsh
, using the fuzzy finder fzf. - fzf-tab - Replace ZSH's default completion selection menu with fzf.
- fzf-widgets - Adds some ZLE widgets for fzf.
- fzf-z - Brings together the z plugin and fzf to allow you to easily browse recently used directories at any point on the command line.
- fzy - Plugin that uses fzy for certain fuzzy matching operations.
- gcloud-project - Easy selection of Google Cloud Projects.
- geeknote - Geeknote plugin for ZSH.
- geometry-datetime - Geometry datetime plugin. Shows datetime (
date
unix command) in your prompt. - geometry-hydrate - Geometry plugin to remind you to hydrate.
- geometry-npm-package-version - Geometry plugin to display the current folder's npm package version.
- geometry-rust-version - Geometry plugin to display the current folder's Rust version when either a
.rs
orCargo.toml
is present. - get-jquery - Plugin for fast downloading jQuery library from code.jquery.com.
- ghost-zeus - Lets you use zeus with normal rails commands.
- gimme - Manage Go installations with gimme.
- git-acp - Take the current command line as the commit message and then run git pull, add, commit and push with one keystroke.
- git-add-remote - Easily add the upstream remote to your
git
fork. - git-aliases (mdumitru) - Broken out version of the version in oh-my-zsh so users of other frameworks don't have to import all of oh-my-zsh.
- git-aliases.zsh - Creates a lot of useful aliases for combinations of commonly used
git
commands. - git-complete-urls - Enhance
git
completion to include in the remotes completion (e.g. fromgit clone
) any URL in the clipboard. - git-extra-commands - Extra
git
helper scripts packaged as a plugin. - git-flow-avh - Adds short aliases for the
git-flow
commands. - git-ignore - Generates
.gitignore
files from gitignore.io offline.fzf
, completion, preview integrated. - git-it-on - Adds ability to open a folder in your current branch on GitHub.
- git-lfs - Adds short aliases for the git-lfs commands.
- git-plugin - Adds some functions for
git
. - git-prompt-useremail - Adds prompt reminders for
git
user.email. - git-prune (diazod) - Allows you to delete all branches that are already merged in your local repository and/or that were merged in your remote origin repository.
- git-prune (seinh) - Plugin that simplifies deleting merged branches.
- git-scripts - Adds
git-squash-branch
andgit-remove-merged
commands. - git-secret - A bash-tool to store your private data inside a
git
repository. - git-smart-commands - Adds extra
git
commands to make some commongit
usages more efficient. - git-sync - A ZSH plugin to sync
git
repositories and clean them up. - git - Replacement for the stock oh-my-zsh git plugin. Provides quite a few useful aliases and functions. The motivation to replace the default plugin stems from the fact that it comes with some inconsistencies that make a few popular commands rather unintuitive, so this plugin makes the aliases consistent.
- gitcd - Automatically
cd
to agit
working directory after cloning it. - gitfast - Updated fork of oh-my-zsh gitfast plugin.
- gitgo - Open a Github/Gitlab repository in your browser from the command line (macOS only).
- github-issues - Subscribe to projects on Github and receive within shell (under prompt) notifications about new issues.
- gitignore - Plugin for creating
.gitignore
files. - gitio - A ZSH plugin for generating a GitHub short URL using git.io.
- gitster - Zim fork of shashankmehta's gitster.zsh-theme
- gitsterv2 - Forked from the original Gitster.
- gitsync - ZSH plugin to improve workflows for one person developing on the same repository on multiple machines.
- goenv (CDA0) - Plugin for installing, updating and loading goenv.
- goenv (bbenne10) - Manage
$GOPATH
similarly to Python's virtualenvwrapper. - going_places - A plugin that helps to use, create and maintain a list of shell locations.
- gpg-agent - Plugin that tries to do the right thing when it comes to setting up the GPG agent to act as an SSH agent as well on macOS.
- gpg-crypt - ZSH plugin to encrypt and decrypt files or directories in place.
- grep2awk - ZLE widget to transform
grep
command intoawk
command. - grunt-plugin - Add autocompletion for
grunt
. - gsh - Collection of helper functions for
git
- gtm-terminal-plugin - terminal plugin for git time metrics.
- gtr - Allows fast tagging of a release in git using the tag name release-YYYY-MM-DD-HH-MM and headline Release YYYY-MM-DD HH:MM.
- guish - Collection of utility functions and aliases.
- gunstage - There are at least eight ways to unstage files in a
git
repository. This is a command-line shell plugin for undoinggit add
. - gumsible - Wrapper plugin for Molecule.
- gvm (dgnest) - A gvm (Go version manager) plugin for ZSH.
- gvm (yerinle) - Provides autocompletion for
gvm
(Groovy enVironment Manager). - hab - Automatically loads OS environment variables defined in the file
.envrc
if it's found when changing to a new directory. - hacker-quotes - Outputs a hacker quote randomly when you open a terminal.
- hadoop-plugin - Adds some convenience aliases for hadoop functions.
- hanami - ZSH plugin for hanami projects.
- hangul - Auto correct hangul(한글, korean) to english when it was supposed to be typed english. 영어를 타이핑 해야되는데 한글로 타이핑된경우 자동으로 수정합니다.
- hints - Display glob and parameter flags and other non completable info right under your editing buffer.
- hipchat - Send hipchat messages from the shell.
- histdb - Stores your history in an SQLite database. Can be integrated with zsh-autosuggestions.
- history-enquirer - Enhances history search with more interaction and a multiline selection menu. Requires nodejs.
- history-filter - Allows you to specify patterns that will automatically exclude commands from being inserted into your permanent history. Particularly useful for preventing secrets being written.
- history-here - Binds
^G
to quickly toggle the current shell history file location. - history-popup - Captures the PageUp key and uses
dialog
to open a popup menu with the history, so the user can interactively navigate through it and pick the history line to bring back to the prompt. - history-search-multi-word - A syntax highlighted, multi-word history searcher for ZSH, bound to Ctrl-R, with advanced functions (e.g. bump of history entry to top of history).
- history-substring-search - Needs to be loaded after
zsh-syntax-highlighting
, or they'll both break. You'll also need to bind keys to its functions, details are in the README.md. - history-sync - An Oh My Zsh plugin for GPG encrypted, Internet synchronized ZSH history using
git
. - history - Extend history so that it can be queried by SQL.
- hitokoto - Displays a random quote from hitokoto.cn.
- homeassistant-cli - Provides completion and (configuration) helpers for the Home Assistant Command-line interface (hass-cli). and allows command line interaction with Home Assistant instances.
- homebrew - Plugin for homebrew that supplements the one built into oh-my-zsh.
- hooks - Add missing hooks - for plugins and personal use.
- host-switch - Make it easier to switch in different
/etc/hosts
files during development. - hub-ci-zsh-plugin - A simple plugin for adding
hub
ci-status to your ZSH theme. - hub - ZSH plugin for forking model.
- igit - Interactive
git
commands using fzf. - ing - Streamlined
ping
output. - instant-repl - Activate a REPL for any command in your current ZSH session.
- interactive-cd - Fish-like interactive tab completion for
cd
. - iosctl - Quickly access App, Data, and Log of the running simulator.
- ipip - Plugin for IPIP.
- iterm-tab-color - Adds function to set the tab color in iTerm2 and can automatically change color based on cwd or command being executed.
- iterm-tab-colors - Automatically changes iTerm 2 tab color based on the current working directory.
- iterm-touchbar - Display iTerm2 feedback in the MacbookPro TouchBar (Current directory, git branch & status).
- iterm2-colors - Manage your iTerm 2's color scheme from the command line.
- iterm2-tabs - Set colors and titles of iTerm 2 tabs.
- iterm2-utilities - Helps download various iTerm2 utilities and lets you omit cloning of the whole iterm2-website repository or relying on other repos which may be out of sync.
- iterm2 - Packs iTerm's ZSH integration scripts into a ZSH plugin to avoid polluting your $HOME directory, with a negligible time increase of only 2ms.
- jabba - Adds shell integration code and completions for the jabba Java version manager.
- java-zsh-plugin - Adds a
setjdk
command so you can switch easily between different versions of the jdk. - javaVersions - Change between different java versions with a single command.
- jdk-switch - A macOS-only plugin for switching between jdk versions.
- jenkins - A jenkins plugin for ZSH, heavily inspired by the excellent jira plugin.
- jenv-lazy - A ZSH plugin for lazy loading of jEnv.
- jhipster - Adds commands for jHipster.
- jira-plus - Create JIRA tickets from the command line.
- jq jq-repl with line editor functionality.
- jvm - Allows selection of JDK on macOS.
- k - Directory listings for ZSH with
git
status decorations. - kill-node - ZSH plugin for murdering
node
process families. - kitsunebook - KitsuneBook plugin for oh-my-zsh.
- konsole-theme-changer - Toggle konsole theme from ZSH.
- kube-ps1 - ZSH plugin for
kubectl
that adds current context and namespace. - kubecolor - Simplify and colorize the output of
kubectl get events -w
- kubectl - ZSH plugin for managing
kubectl
. - kubectx (ptavares) - Installs and loads kubectx.
- kubectx (unixorn) - Automatically installs kubectx and
kubens
. - kubernetes - Add kubernetes helper functions and aliases.
- lando - A collection of alias functions to enable the use of the CLIs within Lando without having to type lando to access them.
- laradock-workspace - Provides an interface to Laradock's workspace.
- laravel-au - Adds aliases for Laravel 6.
- laravel - Add shortcuts for Laravel 5, 5.1, 5.2 & 5.3.
- last-working-directory (mdumitru) - Broken out copy of the version in oh-my-zsh. Keeps track of the last used working directory and automatically jumps into it for new shells.
- lazyload - Lazy load commands and speed up start up time of ZSH.
- learn - Learning collection in MySQL/MariadB to save, query and quiz everything you learn.
- lesaint-git - Replacement
git
plugin for Oh-My-Zsh-compatible frameworks. - lesaint-mvn - Maven plugins for oh-my-zsh.
- linkfile - Add shortcuts to your favorite directories.
- linus-rants - Outputs a random Linus Torvalds rant when opening a terminal.
- listbox - Listbox element for shell.
- locate-sublime-projects-cli - Allows searching for Sublime Text projects and opens them in Sublime.
- loremipsum - Generate lorem ipsum text on the command line. Gets its data from lipsum.com.
- ls - Colorizes the output of
ls
. - lumberjack - Lumberjack is a logging interface for shell scripts.
- lux - ZSH plugin to toggle the light & dark modes of macOS and other items and applications via the
lux
command. Highly customizable: included items can be configured by defining variables. Highly extensible: items can be added by defining functions. Includesmacos_is_dark
helper function to determine if the macOS dark mode is active for use in theming. - mac-packaging - A set of common functions used for enterprise Mac packaging with Munki.
- macos - A ZSH plugin for macOS.
- mage2docker - Makes it easy to work with Docker and Magento 2. Speeds up and simplifies common commands like clean cache, setup upgrade, compile di and much more in Magento 2 on containers.
- magento-2 - Adds
m2
function to run magento binary, adds tab completions. - manydots-magic - A zle tweak for emulating
...'==
../..' etc. - markedit - Mark files and edit them with autocompletion for existing marks.
- markgate - Allows you to mark directories so you can jump directly to them.
- maven-plugin - A fork of the oh-my-zsh maven plugin.
- mercurial - Extracted from oh-my-zsh so you can use it without oh-my-zsh.
- mfunc - Allows you to define persistent functions on-the-fly, without the need to add them to your config files. These functions are permanently available until you delete them.
- mode-switch.CLI - A ZSH plugin for switching command line between normal mode and
vi
mode. - monorepo-plugin - ZSH plugin for monorepo management.
- monthrename - Renames month names to numbers in filenames.
- morpho - Terminal screen savers written in pure ZSH, and also screen saver framework.
- mouse-status - Changes mouse color based on status code, uses libratbag.
- msf - Metasploit handler plugin for starting handlers easily.
- mvn-contexts - Allows fast switching between maven configurations.
- mylocation - A plugin to show your current location based on your IP address.
- mysql-colorize - Adds color for mysql tables.
- mysql - Adds some functions for dealing with mysql.
- n - Auto-switches node versions based on project environment using n.
- navigation-tools - Adds
htop
-likekill
, directory bookmarks browser, multi-word incremental history searcher and more. - new-file-from-template - Generates file from template.
- nice-exit-code - Maps exit status code to human readable string.
- nix-shell - Plugin that lets you use ZSH as the default shell in a
nix-shell
environment. - nnvm - auto-switches node versions based on
.nvmrc
. Requires n. - node-env-installer - Uses
nvm
to install new versions and modules for the current project. - node-path - Automatically adds the "npm bin" of your current directory to your path.
- node - Srijan Shetty's nodejs plugin for ZSH with caching of
nvm
completions and autoloading ofnvm
if present. - nodenv (jsahlen) - Auto-load
nodenv
and its completions into the shell. - nodenv (mattberther) - Installs, updates and loads
nodenv
. Inspired by zsh-rbenv. - nodenv (c-uo) - Looks for nodenv in your working directory and loads it when found.
- nohup - Add
nohup
to the current command pressingCtrl-H
. - noreallyjustfuckingstopalready - macOS users know the pain of trying to figure out what command actually flushes the DNS cache on their version of macOS, and this plugin makes that annoyance go away.
- notes (aperezdc) - Inspired by terminal_velocity, it provides a fast interface to create and access a set of Markdown text files inside a directory.
- notes (chipsenkbeil) - Provides a quick notes editing experience in ZSH.
- notify - A plugin for ZSH (on macOS and Linux) that posts desktop notifications when a command terminates with a non-zero exit status or when it took more than 30 seconds to complete, if the terminal application is in the background (or the command's terminal tab is inactive).
- npm (igoradamenko) - Add
npm
aliases & command completion. Based on the Oh-My-Zsh npm plugin. - npm (trystan2k) - Adds
npm
aliases. Based on the Oh-My-Zsh npm plugin. - npms - Utility powered by
fzf
for using npm scripts interactively. Requires fzf and jq. - nvm-auto-use - Calls
nvm use
automatically whenever you enter a directory that contains an.nvmrc
file with a string tellingnvm
which node to use. - nvm-auto - Aims to alleviate needing to type
nvm use
as much as possible, especially if you often switch between versions of node.js and use.nvmrc
files in your project to manage what version of node your project needs. - nvm-lazy - Plugin for lazy loading of oh-my-zsh's nvm plugin. It supports lazy-loading
nvm
for more than one binary/entrypoint, with the defaults beingnvm
,node
andnpm
. - nvm - ZSH plugin for installing, updating and loading
nvm
. - oath - Manages 2FA authentication 6 digit tokens. It was highly inspired by this article about using oathtool for 2 step verification.
- oclif completion generator - Generates shell completions for commands lacking them.
- oh-my-matrix - Turn your terminal into the matrix.
- open-create-projects - Open/Create projects in Jetbrains.
- open-pr - A ZSH plugin to open pull requests from command line.
- openshift-origin - Add a few shortcuts to common openshift origin (oc) actions.
- opera-git-plugin -
git
aliases. - operator - Clean and simple theme, works best with Menlo for Powerline.
- opp - Vim's text-objects-ish for ZSH.
- opt-path - Automatically add
~/opt
subpaths to your$PATH
. - osx-autoproxy - Configures proxy environment variables based on macOS's system preferences.
- osx-dev - This plugin adds some commands for maintaining various server programs on my macOS install.
- osx - Add some common macOS related aliases and functions.
- paci - Plugin for archlinux package managers.
- pantheon-terminal-notify - Background notifications for long running commands. Supports Elementary OS Freya.
- passwordless-history - Keeps passwords from entering your command line history.
- pctl - Toggle the environment variables for proxying.
- peco-history - Search shell history with Peco when pressing ctrl+R.
- pentest - Aliases and functions for the lazy penetration tester.
- per-directory-history - Per directory history for ZSH, as well as global history, and the ability to toggle between them with
^G
. - percol - Interactively and incrementally search history/resume background jobs using percol.
- pew - Sets up and manages Python virtualenvs using pew, automatically switches virtualenvs as you move directories.
- pg - Adds utility functions to work with PostgreSQL.
- ph-marks - Bookmark pornhub videos from your terminal.
- php-version-rcfile-switcher - Automatically switch between php versions using php-version if an rc-file is present in a directory.
- phpcs - Plugin for PHP code sniffer.
- phpenv - Auto-load phpenv and its completions.
- phpunit - Plugin for PHPUnit.
- pip-app - Makes it easy to install python applications into distinct Python virtualenvs so they don't conflict with any other python requirements on your system.
- pip-env - Automatic pipenv activation upon entry into a pipenv project.
- pkenv - Installs and loads pkenv
- plugin-ibtool - Adds ibtool shortcuts to generate localized XIB files.
- plugin-rails - ZSH plugin for Rails.
- plugin-vscode - Plugin for Visual Studio Code, a text editor for macOS, Windows, and Linux.
- plugin - Creates custom oh-my-zsh plugins from a boilerplate template. Very oh-my-zsh centric, the generated plugins will need editing to work with other frameworks.
- poetry - Automatically activates and deactivates Poetry-created python virtualenvs.
- ppsmon - Reads
/sys/class/net/$interface/
to keep track of packet transmission rates. It stores the current rate to a file in the RAM backed filesystem where it can be easily accessed for display in a shell-prompt. Linux-only due to use of/sys
. - pr-cwd - Creates a global variable with current working directory. Plugin has integration with jocelynmallon/zshmarks.
- pr-eol - Displays an EOL symbol which can be embedded in the prompt.
- pr-exec-time - Adds a variable you can use to display the execution time of the last command run.
- pr-git - Creates a global variable with
git
status information that can be displayed in prompts. - pr-is-root - Sets an environment variable you can use in a custom prompt when running as root.
- pr-jobs - Creates an environment variable which can be used to display background job information in a custom prompt.
- pr-node - Sets an environment variable which can be used to display nodeJS information in a custom prompt.
- pr-return - Plugin for ZSH who displays the exit status of the last command run.
- presenter-mode - Expands aliases during presentations. It also increases the terminal window's contrast to enhance visibility.
- pretty-time - Convert seconds to a human readable string: 165392 → 1d 21h 56m 32s.
- print-alias - Prints commands with aliases expanded whenever you use an alias at the command line.
- printc - Allows you to print in any color in the RGB space via a simple
printc
call. - profile-secrets - Securely keep sensitive variables (api tokens, passwords, etc) as part of your terminal init files. Uses gpg to encrypt/decrypt the file with your secrets.
- project (gko) - Create node/python/ruby project both locally and on github(private or public repository).
- project (voronkovich) - Plugin for managing projects.
- proxy-plugin - Aliases to manage proxy shell environment settings.
- proxy - Configure your proxy settings.
- pyenv-lazy-load - Plugin for lazy-loading
pyenv
in ZSH. - pyenv-lazy - Lazy load pyenv. The initial
eval "$(pyenv init -)"
is executed the first timepyenv
is called. - pyenv - Inspired by zsh-rbenv. Installs, updates or loads
pyenv
, and adds extra functionality. - q (cal2195) - Add
vim
-like macro registers to your ZSH shell. - q (tomsquest) - Tail/remove the temp file for Q, the Dirty Debugging Tool.
- quoter - Display a random quote when opening a new terminal session.
- quotify - Displays inspiring coding quotes from our pairs when starting up.
- randeme - Chooses a random theme for each session. If you not like the chosen theme you can run
randeme_rm
to never show that theme again. - razer-status-code - Change the colour of your Razer Mouse based on the status of the last executed command. Requires OpenRazer linux drivers.
- rbenv (ELLIOTTCABLE) - A faster fork of the rbenv plugin from oh-my-zsh.
- rbenv (Meroje) - Inspired by https://github.com/lukechilds/zsh-nvm/, makes it easier to work with ruby rbenvs.
- rbenv (jsahlen) - Variant based on the original oh-my-zsh rbenv plugin.
- rc-files - Adds shortcut functions for editing various rc files.
- recall - Makes using command history easier.
- redis - Will run
redis-server
pointing it to theredis.conf
configuration file. This can be used with the zdharma/zredis plugin to share variables between shells. - reentry-hook - Plugin that re-enters working directory if it has been removed and re-created.
- reminder - A plugin which displays reminders above every prompt.
- revolver - A progress spinner for ZSH scripts.
- ripz - Reminds you of your aliases, so you use them more. Depends on ripgrep.
- robo-zsh-plugin - A ZSH plugin for Robo.
- rockz - Lua + LuaRocks virtual environment manager based upon VirtualZ.
- rvm - Initiates RVM and adds rubygem binaries (like compass) accessible in the user's
$PATH
. - safe-kubectl - Add some safety when running
kubectl
by warning what context you're in after a definable number of seconds since the lastkubectl
command. - safe-paste - A safe-paste plugin. See Conrad Irwin's bracketed-paste blog post.
- safe-rm - Add safe-rm functionality so that
rm
will put files in your OS's trash instead of permanently deleting them. - saml2aws-auto - When using multiple AWS profiles, e.g. different accounts for your stages (development, pre-prod, prod), can be used to determine which profile is currently exported and if the token is still valid.
- saml2aws - Add support for saml2aws.
- saneopt - Sane defaults for ZSH options, in the spirit of vim-sensible.
- schroot - Show current
chroot
name in your prompt. - search-directory-history - Allows complex search of per-directory history created using the per-directory-history plugin.
- sed-sub - Adds keybindings to do global search and replace on current command line.
- select - Multi-term searched selection list with approximate matching and uniq mode.
- send - Single command to
git add
,git commit
, andgit push
for much fastergit
workflow. - sensei-git - Adds many
git
aliases and helper shell functions. - session-sauce - An fzf interface for tmux session creation and management for all your projects.
- setenv - Runs a script when you change directories.
- simpleserver - Plugin to easily start python SimpleHTTPServer and SimpleHTTPSServer.
- slugify - Converts filenames and directories to a web friendly format.
- smart-cd - Runs
ls
andgit status
after chpwd. - snippets - Command line snippet expansion.
- solarized-man - A modified version of oh-my-zsh's plugin colored-man-pages, optimized for the solarized dark theme in the terminal.
- ssh-connect - A simple
ssh
manager. - ssh-plugin - Plugin for
ssh
. - startup-timer - Print the time it takes for the shell to start up.
- stashy - Plugin that simplifies using
git stash
. - statify - Plugin that does basic statistical analysis.
- sublime - Same as the official Sublime plugin for Oh My Zsh, but this opens files in the current Sublime window, if there is one already open.
- sudo - The
sudo
plugin from oh-my-zsh, extracted to a standalone. Togglessudo
before the current/previous command by pressing ESC-ESC in emacs-mode or vi-command mode. - suffix-alias - Directly open files in the shell using ZSH's suffix aliases.
- switch-git - Easy switching between
git
repositories. Just typesgr <some part of you repo's name>
, press enter and you're there. - symfony (voronkovich) - ZSH plugin for Symfony 2 and 3.
- syntax-highlighting-filetypes - ZSH syntax highlighting with dircolors in realtime.
- syntax-highlighting - Add syntax highlighting to your ZSH. Make sure you load this before zsh-users/zsh-history-substring-search or they will both break.
- sys-diver - A ZSH plugin for directory change or editor startup with only key operations using widgets without typing commands.
- sysadmin-util - Steve Kemp's collection of tool scripts for sysadmins.
- system-clipboard - Adds key bindings support for ZLE (Zsh Line Editor) clipboard operations for vi emulation keymaps. It works under Linux, macOS and Android (via Termux).
- systemd - Adds many aliases for
systemd
. - t32 - Plugin for the Lauterbach Trace32 toolset. It automatically registers fonts and sets all necessary environment variables to run the t32 toolset.
- tab-title - Set the terminal tab title according to current directory or running process. Forked from termsupport.zsh
- tailf - Adds
tailf
function with prefixed newlines instead of trailing newlines. - taskbook - Auto-completes task numbers for taskbook.
- terminal-app - A plugin for integrating with the new El Capitan Terminal.app features.
- terminal-workload-report - A plugin that calculates and displays how many commands have been run via terminal.
- terraform (hanjunlee) - Add terraform workspace to prompt.
- terraform (jsporna) - Extends the original oh-my-zsh plugin with aliases and tab completions. Adds workspace (when not default) to prompt.
- terraform (macunha1) - Add convenience aliases for terraform, tab completions and helper function to add your terraform workspace in the prompt.
- terraform (pbar1) - Terraform convenience functions and aliases for ZSH.
- terragrunt - Plugin for Terragrunt, a thin wrapper for Terraform that provides extra tools.
- tfenv - Installs, updates, and loads tfenv inspired by zsh-pyenv
- thefuck - Loads thefuck (a tool which corrects your previous command) with cache support, which reduces the loading time dramatically.
- theia-dev-tools - Convenience functions for working with theia-ide.
- tig - Adds a few advanced bindings and also provides a ZSH-rewritten function and/or script
tig-pick
. - timewarrior - Adds support for timewarrior, a time-tracking application.
- tipz - Displays your alias if you have an alias for the command you just ran, similarly to alias-tips.
- title - Allows you to set a terminal window title.
- titles - Automatic window and tab titles for tmux and xterm-compatible terminals.
- tmux-auto-title - Automatically sets the title of windows/panes as the current foreground command.
- tmux-multisession - Plugin for tmux to support multiple sessions on a single server process.
- tmux-rename - Rename tmux windows automatically.
- tmux-simple - Simple plugin for using tmux with ZSH.
- tmux-vim-integration - Open files in a running
vim
(or NeoVim) session, from an adjacenttmux
pane. - tmux-zsh-vim-titles - Create unified terminal titles for
tmux
, ZSH, and Vim/NVIM, modular. - tmux - Plugin for tmux.
- tmuxrepl - Simple ZSH plugin to have a R-EP-L tmux session.
- toggl - Adds a
toggl-week
command to display the total working hours tracked on toggl.com - toggle-command-prefix - Add a widget to toggle a prefix to a command. Binds Alt+s to prefix a command with
sudo
by default. - traista - Includes
git
status decorations and color-coded exit status of the last command run. Better with dark terminal themes. - travis - Opens the Travis CI page for the current repo if one exists.
- tsm - Adds a tmux Session Manager.
- tumult - Adds tools for macOS.
- ubuntualiases - Ubuntu 16 aliases.
- undollar - Strips the dollar sign from the beginning of the terminal prompt.
- up.zsh - Adds an up command to
cd
multiple levels up. - url-highlighter - A plugin for the ZSH syntax highlighter that turns URLs green if they respond with a "good" status, and red otherwise. Useful for checking URL typos.
- uvenv - Extends the functionality of the original oh-my-zsh venv module.
- vagrant-box-wrapper - A wrapper plugin for vagrant that allows for calling
vagrant
commands from outside of the box directory. The plugin also ships with a few extra commands that help to manage more than one box, along with custom tab-completion. - vanilli.sh - A lightweight start point of shell configuration.
- vapor - Laravel vapor plugin for zsh to help you to run vapor from anywhere in the project tree, with auto-completion!
- velocity - Powerline-based theme elements for ZSH and tmux.
- venv-lite - A super-lightweight sort-of-clone of virtualenvwrapper; it pretty much expects you to be using pyenv (though you don't have to), and because it's based on the
venv
module, (creation) only works for python >= 3.3. - venv-wrapper - Provides ZSH functions to ease the management of your virtual environments using
venv
. - vi-increment - Add
vim
-like increment/decrement operations. - vi-mode (jeffreytse) - 💻 A better and friendly vi(vim) mode plugin for ZSH.
- vi-mode (Nyquase) Add extra
vi
-like functionality. - vi-mode (sinetoami) - Add more
vi
-like functionality to ZSH. - vi-motions - Add new motions and text objects including quoted/bracketed text and commands.
- vi-quote - Add an operation which quotes or unquotes a motion.
- viexchange - A
vi
mode plugin for easily swapping text between two places in the buffer, like vim-exchange. - vim-mode - Friendly
vi
-mode bindings, adding basic Emacs keys, incremental search, mode indicators and more. - vim-plugin - Allows you to do
vim filename:123
to open a file with the cursor at a specific line. - vimman - View
vim
plugin manuals (help) likeman
in ZSH. - vimto - Improved ZSH
vi
mode (bindkey -v) plugin. - virtualenv-mod - A modified virtualenv ZSH plugin for oh-my-zsh.
- virtualenv-prompt - A fork of the virtualenv plugin from upstream. Adds support for customizing the virtualenv prompt in oh-my-zsh themes.
- virtualz - Python virtualenv manager inspired by Adam Brenecki's Virtualfish for the Fish shell, replaces virtualenvwrapper.
- virtuozzo-plugin - An oh-my-zsh plugin for the virtuozzo bare-metal virtualization system.
- visit - Custom plugin for faster navigation.
- vox - An oh-my-zsh plugin to control VOX, a lightweight full-featured audio player for macOS that can play a variety of formats including FLAC and Ogg Vorbis.
- vsc - Plugin for Visual Studio Code on macOS.
- vscode (kasperhesthaven) - Simple plugin to open VS code a little easily across systems.
- vscode (qianxinfeng) - Plugin for Visual Studio Code.
- wakatime (sobolevn) - Track how much time you have spent in your terminal. Has per project stats.
- wakatime (wbingli) - Automatic time tracking for commands in ZSH using wakatime.
- warhol - Configures colorization with grc.
- watch - Easily prefix your current or previous commands with watch by pressing
CTRL + W
. - watson.zsh - A plugin for the watson time management system.
- wd - Warp directory lets you jump to custom directories in ZSH, without using
cd
. Why? Becausecd
seems inefficient when the folder is frequently visited or has a long path. - wdnote - Prints the contents of a
.wdnote
if present upon changing directories. - web-search - Add commands to run bing, google, yahoo, & duckduckgo searches directly from the CLI.
- whobrokemycode - Highlight where a particular line was last changed in a file using
git blame
. - windows-title - Dynamically updates terminal window title with current directory and the last command run.
- workon - Simple utility for jumping between projects.
- xxh-plugin-zsh-zshrc - plugin for xxh-shell-zsh that copies your
~/.zshrc
to a remote host and sources it with xxh-shell-zsh. - yadm - Displays a warning if there are local yadm configuration changes.
- yapipenv - Automatically activate a directory's pip environment if
pipenv
detects the presence of one. - yeoman - Edouard Lopez's Yeoman plugin for oh-my-zsh, compatible with yeoman version ≥1.0 (includes options and command auto-completion).
- you-should-use - ZSH plugin that reminds you to use those aliases you defined.
- youtube-dl-aliases - Adds
yt
aliases to download videos from YouTube. - youtube-dl - Simple plugin for youtube-dl.
- z-a-bin-gem-node - Zinit extension that exposes binaries without altering
$PATH
, installs Ruby gems and Node modules and easily exposes their binaries, and updates the gems and modules when the associated plugin or snippet is updated. - z-a-man - Zinit extension that generates man pages for all plugins and snippets.
- z-a-meta-plugins - Install groups of plugins with a single label (Zinit only).
- z-a-patch-dl - Zinit extension that downloads files and applies patches through the provided
dl''
andpatch''
ices. - z-a-rust - Zinit extension that that installs rust and cargo packages inside plugin directories.
- z-a-submods - Zinit extenstion allows installing and managing additional submodules within a plugin or snippet.
- z-a-test - Zinit extension that runs tests (via
make test
, for example) – if it finds any of them – after installing and updating a plugin or snippet. - z-a-unscope - Allows installing plugins for Zinit without specifying the user name by querying the Github API.
- z.lua - A command line tool which helps you navigate faster by learning your habits. An alternative to z.sh with windows and posix shells support and various improvements. 10x faster than fasd and autojump, 3x faster than z.sh.
- zaw - ZSH anything.el-like widget.
- zce - Vim’s EasyMotion / Emacs’s ace-jump-mode for ZSH.
- zconvey - Adds ability to send commands to other ZSH sessions, you can use this to
cd $PWD
on all active Z shell sessions, for example. - zed - A simple wrapper for z to install it via a ZSH plugin.
- zeit - Optimized for dark backgrounds, includes
git
status information. - zero - Zero is both a plugin and a theme. See the github page for installation details.
- zflai - A fast logging framework for ZSH.
- zgdbm - Adds GDBM as a plugin.
- zgen-compinit-tweak - Make compinit run only once after all loading is done by zgen.
- zhooks - Displays the contents of any ZSH hook arrays and the code of any hook functions that have been defined. Useful for debugging.
- zimfw-extras - Custom extras for zimfw, packaged into a zimfw plugin.
- zinfo_line - Makes more information available to ZSH themes.
- zinit-console – A semigraphical (curses) consolette for zinit plugin manager.
- zjump - Simplify ZSH directory navigation; jump to already visited, parent or sub folders.
- zlong_alert - Uses notify-send and ring a bell to alert you when a command that has taken a long time (default: 15 seconds) has completed.
- zoxide - A fast alternative to
cd
that learns your habits. - zredis - Adds Redis database support, with
database_key
<->shell_variable
binding. Supports all data types. - zsh-in-docker - Automates ZSH + Oh-My-ZSH installation into development containers. Works with Alpine, Ubuntu, Debian, CentOS or Amazon Linux.
- zsh-z (agkozak) - Jump quickly to directories that you have visited "frecently." A native ZSH port of
z.sh
- withoutawk
,sed
,sort
, ordate
. - zsh-z (ptavares) - Installs and loads z.
- zshmarks - A port of Bashmarks (by Todd Werth), a simple command line bookmarking plugin, for oh-my-zsh.
- zshrc - Load local
.zshrc
files from your project scopes. - zsnapac - Plugin for taking ZFS pre/post upgrade snapshots on Arch Linux.
- zsnapshot - Adds command to dump the current ZSH state into a file, for later restoration by sourcing the snapshot file.
- ztrace - Catches output of commands, allows to reuse that output, glue it with history content.
- zui - ZSH User Interface library – CGI+DHTML-like rapid TUI application development with ZSH.
Completions
These plugins add tab completions without adding extra functions or aliases.
- _url-httplink - Extends ZSH's _urls completion, allowing it to complete urls from html pages.
- ansible-server - Completions for viasite-ansible/ansible-server.
- antibody-completion - This plugin provides completion for Antibody plugin manager.
- appspec - Generating completions for Bash and ZSH from YAML specs
- autopkg-zsh-completion - Completions for autopkg.
- aws-completions - Adds completion support for
awscli
to manage AWS profiles/regions and display them in the prompt. - aws_manager completions - Add completions for the aws_manager CLI.
- bash-completions-fallback - Support
bash
completions for commands when no native ZSH one is available. - berkshelf-completions - Adds tab completion for berkshelf.
- better-npm-completion - Better tab completion for
npm
. - bosh-zsh-autocompletion - Adds BOSH autocompletion.
- brew-services - Completion plugin for homebrew services.
- buidler - Adds completion and useful aliases for NomicLabs Buidler tool buidler.dev.
- cabal-completion - Add tab completion for cabal.
- cabal - Adds autocompletion for cabal.
- carthage - Provides completions and aliases for use with Carthage.
- cf-zsh-autocomplete - Adds autocomplete for all Cloud Foundry CLI commands.
- codeception - Adds command completion for the Codeception Testing Framework.
- codemachine - Displays git info, whether you're logged in via
ssh
, return code of last command. - completions - A collection of extra completions for ZSH.
- conda-zsh-completion - ZSH tab completion for conda.
- ctop - Tab completions for ctop.
- dbic - Automatically sets up Environment variables for DBIx::Class::Migration's script and Dancer.
- docker-completion - Loads
docker
ZSH tab completions directly from Docker for Mac. - docker-enter-completion - Command completion for docker-enter.
- docker (felixr) - Add tab completions for
docker
. - docker (greymd) - Add tab completions for
docker
anddocker-compose
. - dropbox - A dropbox plugin for Zsh that provides
dropbox-cli
anddropbox-uploader
commands. - drush_zsh_completion - Drush autocomplete awesomeness for ZSH.
- duell - A ZSH plugin for duell.
- etcdctl - Adds etcdctl tab completions.
- exercism - A plugin for exercism.io.
- extract (le0me55i) - Defines a function called extract that extracts the archive file you pass it, and it supports a wide variety of archive filetypes.
- extract (thetic) - Fork of the oh-my-zsh extract plugin.
- fly-zsh-autocomplete - Adds autocompletion options for all Concourse CLI commands.
- fzf-zsh-completions - Fuzzy completions for fzf and ZSH that can be triggered by the trigger sequence that defaults to
**
. - gcloud-zsh-completion - Add completions for the Google Cloud SDK.
- gentoo - providing ZSH completion support to various Gentoo tools that lack completion scripts upstream.
- git-annex-completion - Allows tab completion for most git-annex commands.
- git-flow-completion - ZSH completion support for git-flow.
- gradle-completion (gradle) - Bash and ZSH completion support for gradle.
- gradle-completion (ninrod) - ZSH completion support for gradle.
- grid5000-zsh-plugin - Grid 5000 plugin - adds theme, autocompletions.
- gulp-autocompletion - Autocompletion for gulp.
- gulp - Autocompletion for your gulp.js tasks in the Z-Shell (ZSH).
- hashlink - Completions for https://hashlink.haxe.org/.
- haxelib - Completions for haxelib.
- ipfs - Completions for the Interplanetary File System.
- joe-completion - Adds completions for joe gitignore editor.
- jtool-completion - ZSH completions for jtool.
- jumpstorm-completion - Adds autocompletion for jumpstorm
- kafka - Completions for Apache kafka.
- keybase - Completions for keybase.
- kompose - Add tab completions for Kompose.
- kubeadm - Add tab completions for kubeadm.
- lets - Add autocompletion for lets cli task runner.
- MooseX-App - completion generator for Perl module
MooseX::App
. - more-completions - 10500 zsh compsys completions!
- msfvenom - Tab completions for Metasploit.
- mx-honey - Provides completions for mx; a command-line tool used for the development of Graal projects. It's meant to improve the usual workflow
build unittest benchmark ...
ease discovery and provide handy aliases. - newman - Provides autocompletion for the Newman CLI.
- nix-zsh-completions - Completions for nix, NixOS, and NixOps.
- nova - Provides auto-complete for nova.
- npm-run - Autocompletion support for
npm run
. - okta - provides command line completions for the
aws-okta
command. - op - Tab completions for 1Password's op command line tool.
- packer - Adds tab completion for packer.
- pandoc-completion - Pandoc completion plugin.
- parallels - Add completions for Parallels desktop.
- pass-zsh-completion - convenience repo to easily obtain pass command completion for ZSH.
- pip-completion - Autocompletion plugin for pip.
- pipenv (AlexGascon) - Enables aliases for the most common pipenv commands.
- pipenv (gangleri) - Completions for
pipenv
. - pipenv (owenstranathan) - automatically activates a pipenv when entering a directory if there is Pipfile in that directory. Includes
pipenv
completions. - pks-autocomplete - Adds completions for Pivotal's PKS CLI
- pmy - General purpose context-aware ZSH completion engine powered by fzf.
- racket completion - Completion for Racket.
- rake-completion - Add fast tab completion for rakefile targets.
- rancher-zsh-completion - Add completions for the Rancher CLI.
- razor_plugin - Provides autocomplete for Razor.
- rustup - Tab completions for Rustup.
- s3cmd - Adds tab completions for s3cmd.
- salesforce-cli - ZSH command completion for the Salesforce CLI. Requires jq.
- sfdx-autocomplete - autocomplete plugin for sfdx.
- spring-boot-plugin - Adds autocompletions for spring-boot commands.
- ssh-agent (bobsoppe) - Manage
ssh-agent
. - ssh-agent (hkupty) - Automatically starts
ssh-agent
to set up and load whichever credentials you want forssh
connections. - ssh - Add host completion for
ssh
. - startify - vim-startify -like plugin for ZSH.
- surf - Add completions for surf.
- symphony (TheGrowingPlant) - Autocompletion for Symfony 3 and 4 commands.
- test-kitchen-zsh-plugin - Add completions for Test Kitchen).
- tmux pane words - Key bindings to complete words from your tmux pane.
- tugboat - Adds autocompletion for tugboat command.
- umake - Tab completion for Ubuntu umake.
- vert.x - Provides autocomplete features for the vertx command.
- yarn - Add autocompletions for
yarn add
,yarn remove
,yarn upgrade
,yarn why
andyarn run
.
Themes
If you're using Antigen, you can test these themes in a running ZSH with antigen theme githubuser/repo
. If you're using zgen, add them to your init.zsh
with zgen load githubuser/reponame
.
- 0i0 - Optimized for dark terminal windows, uses nerdfont
git
status decorations. - 99hud - Includes
git
andssh
decorators. - aaron - Based on the Sorin theme.
- abbr (theme) - Displays an abbreviated version of the current directory path, shows the Python virtualenv, Rust version,
git
status, and the exit code of last command. Works well on dark backgrounds by default but colors can be easily customized. - absolute - Very clean looking theme with git status, node version and the exit code from the last command.
- adamdodev - Includes
git
status decorations, name of your AWS profile, name of your Azure Service Principal, kubernetes context, terraform workspace, command status and current working directory. - adlee - macOS theme, requires a Powerline-compatible font.
- af-magic-dynamic - Modified version of af-magic with dynamic path shortening.
- af-magic-mod - af-magic-mod theme.
- aflah-bhari - Modified version of the robbyrussell theme in oh-my-zsh.
- aftermath - Get a nice summary line after each command you run in your shell.
- agitnoster - Based on agnoster theme included in Oh My Zsh and bash-git-prompt. Shows detailed information about
git
status. - agkozak - Uses three asynchronous methods to keep the ZSH prompt responsive while displaying the
git
status and indicators of SSH connection, exit codes, andvi
mode, along with an abbreviated,PROMPT_DIRTRIM
-style path. Very customizable. Asynchronous even on Cygwin and MSYS2. - agnoster-fcamblor - Solarized Agnoster variant with
git
status information. Requires a unicode font and works best with a solarized terminal. - agnoster-fseguin - agnoster variant with a right prompt.
- agnoster-gentoo - A Gentoo flavored version of the Agnoster ZSH Theme that includes user@hostname and
git
status decorations. Works better with a unicode font. - agnoster-j - Optimized for solarized color scheme,
git
or other VCS tools, and unicode-compatible fonts. Includes status of last command run, user@hostname,git
status decorations, working directory, whether running as root, whether background jobs are running, and other information. - agnoster-mod - Agnoster variant with a right-prompt.
- agnoster-plus - Agnoster variant optimized for use with Solarized Dark terminal color scheme. Includes
git
status. - agnoster-refresh - Agnoster variant, includes battery and online status.
- agnoster-timestamp-newline - Agnoster variant with timestamp and newline added.
- agnosterAfro - Based on Powerline and Agnoster themes and inspired by the agnosterzak.
- agnoster - Optimized for solarized terminal color schemes, shows
git
decorations, user@host, working directory, the previous command's exit status and whether you are running with root privileges. Requires a Powerline-compatible font. - agnosterzak - Based on Agnoster, shows battery life, date & time,
git
status, current directory and user & host information. - akzsh - Works best with a dark terminal theme, includes
git
decorations. - ale - Based on the fino theme. Includes
git
,virtualenv
andnode
status decorations. - alien-minimal - Minimalist ZSH theme with
git
status displayed. - alien - Powerline-esque ZSH theme that shows
git
decorations and the exit code of the last command. Faster than many other prompts because it determines thegit
decorations asynchronously in a background process. - alpharized - Optimized to work with solarized dark terminals. It's a modified version of the avit theme.
- amoyly - An elegant and comfortable-reading theme based on Agnoster.
- ampel - Based on oh-my-ZSH's minimal. Includes
git
status decorations. - andy - Modified bira theme with better
git
support. - angry fly - Shows
git
information in the right hand prompt. - antsy - Shows
git
branch and status decorations, virtualenv, exit status, jobs count, and vi-mode indicator. - aperiodic - Shows
git
decorations, user, host, whether root, active Python virtual environment, current Ruby interpreter, visual and numeric status of the last command, power management status and time and date. - aphrodite - Minimalistic theme without visual noise. Displays only the necessary information: current user, hostname, working directory,
git
branch if one exists. Looks great both with dark and white terminals. - aplos - Minimal ZSH prompt with working directory,
git
local info,git
remote info, time and exit code. - apollo - A heavily customizable, compatible and performant ZSH theme that uses modules to enable features.
- arael - Fork of gallifrey.
- archie - Arch Linux inspired ZSH theme. Based on the norm theme.
- arity - Arity is a simple theme designed for readability and to give an overview at a glance. Includes path and
git
decorations. - aronhoyer - Minimalist theme with right-side
git
status decorations. - arrow-minimal - A minimal ZSH theme with
git
decorations. - asciigit - An ASCII-only theme for
git
users who don't want to use fonts with extra glyphs. - asq - Based on theunraveler.
- astral - Theme for dark backgrounds with zen mode. Works well with the zsh-users zsh-syntax-highlighting plugin.
- astro - Based on the
ys
and robbyrussell themes. - async - Shows current directory,
git
state, return value of last command if it had an error code, number of background jobs, execution time of long-running commands, current python virtualenv. - aterminal - Displays Nodejs, NPM, Docker, Go, Python, Elixir and Ruby information in the prompt.
- avil - Minimalist theme with
git
decorations. - avit-d2k - Based on the oh-my-zsh avit theme, with small changes.
- avit-mod - Modified version of oh-my-zsh's avit theme.
- banana - Includes
git
status decorations and current directory. - bandit - Another Powerline variant.
- bar (anki-code) - Minimalist settings for p10k.
- bar (xp-bar) - Includes username, host, pwd,
git
status decorations and 3x hour reminders to drink water. - bashi - Optimized for Ahmet Sülek's Flat UI Terminal theme and Pasquale D'Silva's Saturn Terminal theme.
- bastard - Modified version of gitster theme for ZIM.
- bearable - Works well with dark terminal backgrounds.
- beer - Inspired by cloud, but with beer icons.
- bender - Fancy two-line prompt with git integration.
- bgnoster - Agnoster variant with unicode symbols baked in.
- biradate - Based on the bira theme, but displays the date instead of the username in the prompt.
- birame - Based on bira.
- birav2 - Based on bira. Includes
git
,rvm
andvirtualenv
status decorations. - bklyn - Variant of Powerlevel9k with customizations applied.
- blackrain - Another git-aware theme.
- blazux - Includes
git
status decoration and a smiley/sad face indicator of the last command's exit status. - blinks (max13ft) - Adds mercurial support to oh-my-zsh's blink theme.
- blinks-xfan - Based on the existing theme blinks.
- bliss - A delicate theme that injects color without overwhelming your workspace. Designed to be used with the bliss iTerm color scheme and bliss dircolors. Includes
git
status decorations. - blokkzh - Theme based on oh-my-zsh's built in gnzh theme. Requires a font with unicode support.
- blox - A minimal and fast ZSH theme that shows you what you need. It consists of blocks: each block is shown inside a pair of [square brackets], and you can add blocks by simply creating a function.
- bluehigh - Minimal theme, displays
git
information. - bluelines - Clear and blue theme.
- boom - Multiline theme, best on dark backgrounds.
- bougenville - Variant of dallas.
- bronze - A cross-shell customizable powerline-like prompt with icons written in go. Requires nerd-fonts.
- brs - Displays the current song in the prompt with
audtool
. - bruh - Includes
git
status decorations. - brunty - Brunty theme.
- bryce-robbyrussell - Inspired by the powerline and robbyrussell themes.
- bttf-color - BTTF color theme.
- bubblegum - Minimalist bright pink theme with a triangular glyph and your working directory, nothing else—leaving you with the cleanest shell possible.
- bubblified (hohmannr) - Inspired by agnoster. Works best with nerdfonts.
- bubblified (varaki) - Based on bubblified (hohmannr). Changes color when root.
- bullet-train - Inspired by the Powerline Vim plugin. It aims for simplicity, showing information only when it's relevant.
- bunnyruni.min - @jopcode's bunnyruni ZSH theme, modified to just display time and directory.
- bunnyruni - Simple, clean, and beautiful theme.
- bureau-env - Modification of the Oh-My-Zsh Bureau theme that adds a Python virtual environment label to the left of the
git
block. - bureau - A clear and informative two-lined prompt. Includes git status optimized for large repositories.
- buster - Plays well with WSL2. Based loosely on Fox and Jonathan themes from oh-my-zsh.
- cactus - Minimalist theme with
git
status decorations. - candy-light - Light version of the candy theme.
- cayun - Shows active Python version and
git
decorations in the prompt. - celestialorb - Powerline-inspired theme by @celestialorb. Includes
git
status decorations, Kubernetes cluster information (if any), current AWS profile and region, and active virtualenv. - chaffee - Based on sorin. Shows the current active versions of Java, Scala, Go, Node, Python and Ruby.
- chaotic-beef - A tiny and beautiful theme for Oh-My-Zsh without anything superfluous. Includes
git
status decorations. - charged - A ZSH prompt optimized for the solarized dark terminal theme.
- chello - Works well on dark backgrounds. Depends on autojump, zsh-autosuggestions and zsh-syntax-highlighting.
- chi - A ZSH theme optimized for iTerm 2 users on macOS.
- cinnabar - Shows timestamp, large line breaks, git branch and status.
- clarity - Designed for for simpleness and extensibility.
- classyTouch - Minimal, clean theme with
git
support. - classyTouchName - Oh-my-zsh theme inspired by classyTouch. Works better with dark backgrounds. Includes
git
status decorations. - clean (akz92) - Minimalist ZSH theme.
- clean (brandonRoehl) - A minimalist variant of pure. Pure is not clean, clean is not pure.
- clean (patr1ot) - Fork of the upstream clean with host information added.
- clearance - minimalist theme with
git
, nix-shell and virtualenv status decorations. - cloudy - Minimal cloudy ZSH theme.
- clover - Inspired by zeta and pure.
- cmder-wsl - Configuration file for cmder configured to work in quake mode with ZSH and a modified Agnoster theme.
- cmder - A ZSH theme that matches the theme of Cmder, a popular terminal emulator for windows.
- cobalt2 - Wes Bos' Cobalt 2 theme for ZSH and iTerm 2.
- cobalt2git - Cobalt 2 theme with
git
extensions. - codemachine - Codemachine theme.
- codemonkey-on-fire - Inspired by bashi, includes a monkey and
git
information in your prompt. - coffeenostor - Based on agnoster, but has a right-prompt for vi-mode that displays
--INSERT--
and--NORMAL--
, in a powerline look. - coldark - A blue-grey theme designed for reading comfort. Includes
git
decorations. - collon - Lightweight theme with
git
status decorations, cwd, time, host, exit status of last command. Does not require special fonts. - colorbira - Allows per-host prompt coloring, displays
rvm
,virtualenv
andgit
information. - common - A simple, clean and minimal prompt, displays current working directory, hostname, AWS vault role, background jobs, current SHA, exit code of last command, and
git
branch and status. - comxtohr - Brightly colored theme optimized for dark backgrounds.
- cordial - Clean and effective ZSH theme with git and npm support.
- cramin - Minimal interface with support for github plugins, based on hyperzsh.
- crème fraîche - Works best with light terminal backgrounds, includes
git
andvi
-mode status decorations. - cryo - A standalone clone of the original oh-my-zsh theme with date and time added.
- cute - A macOS oh-my-zsh shell theme with Cute emoji based on the Powerline Vim plugin.
- cxzh - Works well on dark background, has
git
status decorations. - cypher-ruby - Similar to cypher but includes the active Ruby version.
- czsh - ZSH with oh-my-zsh and the agnoster theme in a container.
- daily - Includes
git
andssh
status decorations. - damino - Minimal powerline-esque theme with
git
decorations. - dangerroom - Informative, minimal, and, above all, X-Men themed.
- darkblood-modular - This version of the popular darkblood theme has been enhanced with a near complete rewrite enabling modularity and a few new features.
- darksoku - Darksoku theme is based on the ys and astro themes.
- dbern - Includes battery status and load average decorations.
- delta-prompt - A minimal ZSH prompt.
- delta - Another minimal theme with embedded
git
status. - dexter - A theme with an emphasis on the right side (hence the name) of the terminal.
- dino - Includes decorations for node, golang, flutter, lua, python & java, also includes
git
decorations. Requires nerdfonts. - dissonance - Comes with custom LSCOLORS and LS_COLORS settings files, works with both dark and light terminal themes.
- diy-ys - Variant of ys without hostname or time.
- dkniffin - Includes
ruby
version andgit
status. - dmx - Optimized for dark terminal windows.
- dp - Low contrast theme that shows current git branch, if the repository is dirty and the value of
$PYENV_VERSION
. - dr4kk0nnys_v2 - Works well on dark backgrounds, includes
git
status decorations. - dracula - A dark theme for Atom, Alfred, Chrome DevTools, iTerm 2, Sublime Text, Textmate, Terminal.app, Vim, Xcode, and ZSH.
- dragon - Minimalistic, includes
git
status information. - droolscar - Powerline variant.
- dtheme - Optimized for people using a solarized terminal color scheme and
git
. Works best with a unicode font. - duckster - A fork of Gitster ZSH theme that's more ducky fresh.
- ducula - Inspired by Dracula project. Includes
git
status decorations, username and hostname abbreviations, virtual environment, current working directory, return status of last command and the time. - dustmod - Derived from the dst theme in oh-my-zsh.
- dzhi - Optimized for people using Nord. Includes
git
status decorations. - eckig - Minimalist theme with utf-8 icons. Includes
git
status decorations. - eggshausted - A
git
-aware theme for people who are tired of getting errors. - elessar - A
git
-aware theme based on gitster. Requires a Powerline-compatible font. - emojeer - Emoji flavored oh-my-zsh theme.
- emoji - Based on robbyrussell oh-my-zsh theme with the
git
prompt symbols replaced with emoji for better clarity. - endless-dog - oh-my-zsh-compatible theme that mimics grml-zsh-config.
- enormous - Takes up an enormous amount of space in the terminal.
- eriner - A Zim fork of the Powerline-inspired agnoster prompt theme. Includes
git
status decorations. - eubw - A simple theme with
git
information. - eucalyptus - Simple one-line theme for minimalist vi-mode users inspired by agnoster and powerlevel9k. Includes
git
status indicator,vi
-mode indicator, current directory and current path. - excess - Simple ZSH color theme.
- ez-pz - Minimalist theme with
git
status decorations, inspired by bureau. - fall - Minimalist theme with fall icons. Includes
git
status decorations. - fattyarrow - Minimal ZSH prompt that works better on dark backgrounds.
- fdT2K- Based on agnoster, preset to include virtualenv, last command status,
nvm
,docker machine
andgit
,hg
andbzr
status decorations. - feder - Clean, simple, compatible and meaningful. Tested on Linux, Unix and Windows under ANSI colors.
- filthy - A disgustingly clean ZSH prompt.
- fish - ZSH theme reminiscent of the default fish shell theme. Includes
git
status decorations. - fishy-lite - Fork of the original fishy theme in oh-my-zsh with much of the extraneous stuff cut out to improve load speeds. Includes a battery gauge and
git
status display that can be enabled on the right-hand side of the prompt. - fishy2 - ZSH theme inspired by original fishy.
- fluent-git - Displays time of last command execution, error code, hostname, username,
git
status, kubernetes cluster and namespace, path and ssh connection status. - forerunner - Custom setup for powerlevel9k. Includes
git
status decorations. - fortuity - Includes status of last command,
git
information and current directory. - friendly-fiesta - Fork of terminal-party theme.
- frisk-arrow - A theme based on the frisk oh-my-zsh-theme.
- frisk-red - Red version of the frisk theme from oh-my-zsh.
- fritz - Works well on dark backgrounds. Includes
git
status decorations. - frlo - Uses your computer's hostname to come up with a (hopefully) unique three-color theme to display in your prompt, so you know at a glance which machine you're logged into.
- funkyberlin - A colorful two-line theme with support for
git
andsvn
. - furio - Fork of the Cloud oh-my-zsh theme. with different colors and emojis.
- furry-umbrella - Colorful theme, works better on a dark background.
- garden - Works better with a dark terminal background, includes
git
status decorations. - garrett - Prezto prompt with the information you need the moment you need it.
- gawaine - Nicola Racco's theme. Requires
rvm
&git
plugins. - gentoo - Breaks out the oh-my-zsh gentoo theme into a separate repo for non-omz users.
- geometryHostInfo - Adds host info to the geometry theme.
- geometry - A minimal ZSH theme where any function can be added to the left prompt or (async) right prompt on the fly.
- gideon - Inspired by avit, includes
git
decorations, IP address, host and path. - gimbo - A variant of purepower with more features, a little eye candy and context-sensitive extra lines. Includes
git
status decorations, history number, username/hostname context, directory status, status of last command if it failed, and the Python virtualenv name if present. - gimme - A simplistic theme for ZSH with
git
integration. Inspired by the gitsome theme. - girazz - A modification to the gnzh theme which adds
vi
mode to the right prompt. - git-prompt (olivierverdier) - Displays information about the current
git
repository. In particular the branch name, difference with remote branch, number of files staged or changed, etc. - git-prompt (woefe) - A fast, customizable, pure-shell, asynchronous Git prompt for ZSH heavily inspired by Olivier Verdier's zsh-git-prompt and very similar to the "Informative VCS" prompt of fish shell.
- git-simple - Simple theme that includes detailed
git
status decorations. - gitsome - Super simple prompt with
git
info, optimized for the Flat Terminal color scheme. - gitstatus - Shows command and
git
status decorations. - gitster (shashankmehta) - When in a
git
repo, it shows the location from thegit
repository root folder. When not in agit
repo, it shows the path relative to home,~
. - [gitster (zimfw)](gitster - Zim fork of shashankmehta's gitster prompt theme
- glimmer - Includes
git
branch, time and user@host. - gnrnzh - Customization of gnzh.zsh-theme from oh-my-zsh.
- gocilla - Theme for iTerm 2 and ZSH, includes
git
decorations, user@host, path and date. - grayt - Simple yet informative theme that includes
git
decorations and the return status of the last command. - griffin - Minimalist, includes
git
status decorations. - grs - Includes
git
status decorations, user id and working directory. - gruvbox - Based on agnoster, uses the same colors from the gruvbox
vim
plugin. - guezwhoz - Minimalist, includes
git
status decorations. - guri - A Simple and fast Oh-My-Zsh theme, based on Pure's design.
- hackersaurus - A theme with
git
status and exit code of last command run embedded in the prompt. Related to powerlevel9k. - halfeld - Minimalist theme with
git
decorations. - halil - Fork of oh-my-zsh's amuse theme.
- hana-matcha - A simple theme with the first character being 花(hana), the kanji for flower. This theme was inspired by a keycap set called DSA Hana. This pairs well with the hana atom theme. Includes
git
status decorations. - hanpen - Shows
git
branch and status, last command exit code, last command execution time if more thanZSH_THEME_HANPEN_CMD_MAX_EXEC_TIME
. - hapin - Based on oxide, includes
git
status decorations and current user/host information. - haribo - Simple
git
status + timestamp in prompt. - hcompact - Displays time, OS (including distro if on Linux), directory and whether running as root.
- heart - Heart themed prompt for light backgrounds.
- hedgehog - Simple, no-nonsense and clean, with support for
git
and return codes. - hedroed-bureau - Based on bureau, with added
git
status decorations andnpm
status. - helb - Loosely based on Gentoo's old
bash
theme. Includesgit
information, return value of last command, and uses different username color and prompt char for users ($
) and root (#
). - hematite - Minimalist promot that tries to show only the status decorations that are actively useful at a given time.
- hexagon - Minimalist zsh theme based on geometry.
- hfulldate - Displays time, date, OS (including distro if on Linux), directory and whether running as root.
- hhktony - Inspired by robbyrussell theme + ssh connection status prompt.
- hina - Written in
golang
, includesgit
status decoration and kubernetes context. - hipstersmoothie-p9x - A variant of powerlevel9k.
- honukai-iterm - Honukai theme and colors for oh-my-zsh and iTerm 2.
- horizontal - Two line prompt with a horizontal separator.
- hornix - Displays time & date, OS (including distro if on Linux), directory and whether running as root.
- horse-sh - A very minimal brown/red ZSH theme.
- hub - Simple and clean, includes the return code of the last command executed.
- hug - When you're working and need a hug. Includes
git
status. - humbled - A clean and humble theme with support for
condaenv
,virtualenv
andgit
status decorations left aligned with the working directory in bold. - hyper - Designed to work with the hyper terminal theme, includes
git
status decorations. - hyperzsh - Gives you a comprehensive overview of the branch you're working on and the status of your repository without cluttering your terminal.
- iGeek - Modified iGeek theme. Works with macOS out-of the box, includes
git
status decorations. - iamskok - Works well on a dark background.
- ice - Very lightly modified bureau theme combined with bira.
- icicle - Includes
git
status decorations, and whether running as root. - iggy - A super happy awesome Powerline-style,
git
-aware prezto only theme. - igorsilva - Shows current directory, customizable delimiter, current branch,
git
status. - iguanidae - Includes
git
,nvm
andvenv
decorations. - illuvia-gitster - Fork of ergenekonyigit/lambda-gitster with spacing improvements and an updated icon. Includes
git
status information. - imp - Based on zork and optimized for dark backgrounds.
- infernus - Minimalist theme, better on dark backgrounds.
- infoline - Clean theme that shows
git
status, background jobs, remote host, and other information. - intheloop-powerline - An extension of the intheloop theme to use powerline fonts.
- itg - itsthatguy's theme.
- jacobin - Based on refined and ys themes, includes
git
status decorations. Includes an optional iterm2 color scheme. - jake - Shows the time, the current directory, and
git
branch information including the branch name and a red + if the branch has un-pushed changes. - jam - Optimized for dark backgrounds, includes
git
status andrvm
status. - jc - For dark terminal backgrounds, includes
git
status information. - jcl - Loosely based on the ys theme.
- jerome - Colorful theme based on the dieter theme, but with a yellow hostname. Includes
git
decorations. - jhleeeme - Includes
git
and python virtualenv status decorations, user, pwd,time and system name. - jon - A simplified bira with the colors of robbyrussell.
- jose - Inspired by beer-theme, includes
git
status. - jovial - Shows host, user, path, development environment,
git
branch, which python venv is active. - judgedim - Minimalist prompt.
- just-another - Just another theme, with hostname when you're sshed to another machine.
- jwalter - Powerline-style theme with
git
,svn
,npm
,rvm
and network awareness. Requires Powerline-compatible terminal font. - karu - Minimalist single line ZSH prompt.
- keloran - Theme that includes a few features from other themes.
- kenton - Optimized for dark backgrounds, includes
git
status information. - kevin - Colorful theme, includes iTerm 2 color schemes.
- kgzsh - Includes
git
status deorations, works well on darker backgrounds. - kimwz - Minimal theme.
- kinda-fishy - Based on Fishy theme, but shows full paths instead of abbreviated directories and only shows user@machine in
ssh
sessions and docker containers. - kiss - Simple theme for oh-my-zsh, VSCode, iTerm2, Neovim, and RStudio. Includes
git
status decorations. - kketcham - Theme with nifty colors on the
git
info. - klendathu - Uses Powerline iconsolas.
- kote - Best for dark backgrounds. Includes
git
status decorations. - kotterstep - Two line theme designed for dark terminals, has
git
decorations. - krak3n - Shows golang version and the current
git
branch. - kraken - A dark theme for ZSH.
- kube - Based on macos-terminal, includes
kubectl
context. Has time, directory, andgit
status decorations. - kumavis - Agnoster fork optimized for solarized terminals. Requires powerline-compatible font.
- kw - Colorful theme with
git
andhg
status information, ability to add host-specific colors to hostname. - kyuu - A simple theme with the first character being 九(kyuu), the number 9. The primary color is blue with a magenta accent. Includes
git
status decorations. - lagune - A minimal ZSH theme.
- lambda (azahi) - Minimalist ZSH theme.
- lambda (cdimascio) - Inspired by the robbyrussell lambda theme. Includes
git
status decorations. - lambda (halfo) - A ZSH theme optimized for
git
users who use unicode-compatible fonts and terminal applications. - lambda-gitster - Minimalist prompt that includes
git
information. - lambda-minimal - Simple theme based on lambda with
git
status and virtualenv information. - lambda-mod - A simple ZSH theme, optimized for
git
usage. - lambda-pure - A minimal ZSH theme, based on Pure, with added NodeJS version.
- lambda-v - A combination of the Lambda and Fishy themes, includes
git
status decorations. - lambda-zen - inspired by lambda mod theme with graphical
git
status decorations. - lambder - Includes
git
status decorations, works best with a dark terminal theme. - lazyprodigy - Optimized for dark terminals, has variants for local and remote systems.
- leafia - Leafy prezto theme that shows
git
status information. - leverage - Based on minimal, uses colors, and an extra
¬
character, to better distinguish the command line prompt from your output. - lewis - Black, white and red theme. Shows
git
status information. - lightbulb - Includes decorations for kernel, OS version, uptime and
git
. - lighthaus - A prompt that compliments the Lighthaus theme. Shows
git
information, github/gitlab logo and shows changes as and when they occur. - lila - Minimalist theme, best on a dark terminal background.
- lilith - Modification of gallifrey and hyperzsh.
- lime - Simple and easily customizable ZSH theme.
- limpide - Modified version of miloshadzic theme which displays parent and current directory.
- linuxer - Inspired by Yaris Alex Gutierrez's classyTouch, Yad Smood's ys, and Bureau theme.
- liquidprompt - A full-featured & carefully designed adaptive prompt with useful information when you need it. It shows you what you need when you need it. You will notice what changes when it changes, saving time and frustration.
- llama - Minimalist theme used by discerning llamas.
- logico - Has
git
decorations. Shows remote status and indicator for vi-mode. - lone-star - Texas-themed theme based on Sindre Sorhus' pure theme.
- ludwigws - Variant of lambda-mod theme. Has
git
decorations, requires a powerline-compatible terminal font. - luke - Includes
git
decorations. Based on the frisk oh-my-zsh theme. - macos - Includes
git
status decorations. - magicmace - Inspired by xero's zsh prompt and eriner's prompt. Includes status codes for active python
venv
, exit status of last command, shortened working directory,git
status decorations. - magico - IOsonoTAN's magico theme.
- maivana - Includes
kubectl
context,git
status decorations. - materialshell - A material design theme for your shell with a good contrast and color pops at the important parts. Designed to be easy on the eyes.
- matrix - Variant of powerlevel9k styled to look like something in the Matrix movie trilogy. Includes
git
status decorations. - matter - Shows
git
status, AWS vault role, background jobs, exit code of last command & hostname. - mattizer - Includes working directory and
git
status decorations. - mau - A ZSH theme with a cat twist.
- mbolis - Includes
git
decorations, changes prompt color if root user, active jobs, and jenv integration. - mdmini - Includes
git
andssh
status decorations. - megaprompt - A maximalist prompt including keyboard mode, ownership info, and other contextual info, with λ as the prompt character. Requires the hooks plugin.
- metalmajor - Includes
git
status decorations, shows exit code of last command if nonzero. - mexassi - Checks the
/sys/class/power_supply
folders to determine if the system is installed on a laptop or desktop machine. Reads the battery percentage grepping acpi command and displays it in the prompt. Includesgit
decorations. - mh-fzj - Includes
rvm
andgit
status decorations. - midin - Works well on dark terminal background, includes
git
status decorations. - milight - Minimal ZSH prompt with
git
status display, works best with dark terminal backgrounds. - min - A minimalistic ZSH prompt.
- mindful-space - ZSH theme with space in mind.
- minima (Brolly0204) - Includes
git
,node
,golang
,yarn
,php
,docker
andpython
status decorations. - minima (eduardnikolenko) - A minimal ZSH theme with
git
,docker
,go
,node
,npm
,python
and other indicators. Uses unicode characters for some markers. - minimal (casalinovalerio) - Minimal prompt, includes
git
and vpn status decorations. - minimal (glsorre) - minimal asynchronous ZSH theme optimized for use with the Fira Code font and the Solarized Light terminal theme.
- minimal (subnixr) - Minimal yet feature-rich theme.
- minimal-improved - Theme for dark terminals, includes
git
decorations in the right-side prompt. - minimal2 - A minimal and extensible ZSH theme. Forked from subnixr's original and adapted for Zimfw.
- minimalx - Inspired by kolo theme from oh-my-zsh.
- mira - A modified bira with time info and a simplified start prompt.
- miramare - Includes
git
status decorations. Works best with Deepin Terminal. - misa - Misalabs' ZSH theme.
- mixed - Optimized for dark backgrounds.
- mochi - Simple theme, designed to resemble rust main function. Includes
git
andhg
status decorations. - mochi2 - Minimalist theme. Includes
git
andhg
status decorations. - modesty - A clean and modest zsh theme with
condaenv
,virtualenv
andgit
status decorations displayed neatly right aligned. - moderno - A simple and modern ZSH theme inspired by the robbyrussell theme from Oh-My-ZSH. Includes
git
status decorations. - molokai-powerline - Based on agnoster.
- moonline - Minimal but easily extensible prompt.
- moux - Works well with a dark terminal background, includes
git
decorations inRPROMPT
. - multi-shell-repo-prompt - Provides useful information (in your prompt) about the repository that you are in. It currently works for Git and Mercurial, under ZSH as well as bash.
- multiline - Powerline-esque theme based on agnoster.
- muslim - A simple minimal ZSH prompt theme.
- musy - Inspured by muse theme. Includes
git
status decorations. - myzsh - Maxime Garcia's myzsh theme.
- nanofish - Adds fish-style directory prompt to nanotech theme.
- neon-potato - Colorful and minimalist theme. Includes
git
decorations. - nbrylevv - Minimalist theme with text
git
status decorations. - nctu - Lightweight theme with an emphasis on speed. Includes
git
status decorations. - neewbie - Minimal theme with
git
decorations. Based on robbyrussell. - neon - A pretty and minimal ZSH theme with
git
decorations. - nerdish - A prompt theme for ZSH with Nerd Fonts.
- nescalante - Optimized for dark terminal backgrounds, includes
git
decorations. - neurosimple - Includes
git
decorations andvi
-mode indicator. - newt - Fat & fast theme – beautiful inside and out, styled segments done right.
- newton - Includes
git
status and external IP address decorations. - nextbike - A very basic theme which just features an macOS bike icon.
- nidoranarion - Colorful, shows
git
status decorations. - nikitakot - Small and simple oh-my-zsh theme. Shows current directory and 2 directories behind,
git
andnodejs
status decorations. - ningxia - Based on af-magic.
- nknu - A simple oh-my-zsh theme.
- nmaxcom - Minimalist ZSH theme with
git
status decorations. - node - oh-my-zsh's node theme, broken out to make it easier to use with other plugin managers.
- nodeys (marszall87) - Based on the ys theme, with added NodeJS version (from NVM plugin).
- nodeys (tianheg) - Based on the ys theme, with added NodeJS version (from NVM plugin).
- noon - Has light and dark variants, shows
git
information. - nord - Includes
git
status decorations and displays the active conda environment. - nothing - Lightning fast and really simple because it has almost nothing in it.
- nox - Dark theme, displays the current working directory and git status.
- nt9 - A clean, distraction free and
git
focused development theme. Shows path relative togit
root (or ~ when outsidegit
repo), time since last commit, current SHA, branch and branch state. - nunorc - Minimalist theme, works well on dark backgrounds. Includes
git
,mercurial
andsvn
satus decorations. - nuqlezsh - A simple theme for prezto and oh-my-zsh.
- nuts - Minimalist theme, includes
git
status decorations and time. - odin - Odin is a
git
-flavored ZSH theme. - oh-flowers - Multiline theme with
git
decorations. - oh-my-git - An opinionated prompt for bash and ZSH.
- oh-my-posh - Not ZSH-specific, but very nice and works with ZSH. Allows you to use the same configuration for prompts in all shells.
- oh-my-via - Theme for ZSH which mainly forks the historical theme used on VIA servers.
- ohmypc - Works well with dark terminal windows. Includes
git
decorations. - om - Minimal theme, works with dark backgrounds, includes
git
status decorations. - owiewestside - Includes
git
status and virtualenv information. - oxide - A Minimalistic and Dark ZSH theme.
- ozono 🌏 OZ0NO - Let's Breathe a clean ZSH.
- p9k-theme-pastel - A theme for the powerlevel10k prompt that puts an emphasis on simplcity while still getting important information across.
- pad - A concise and colorful oh-my-zsh theme.
- page - A simple theme with VCS support. The prompt shows 1 level of the current working directory, branch, and a color coded curved fat arrow.
- palenight (jenssegers) - Allows display of host information, includes
git
branch decoration. - palenight (rhklite) - Shows detailed
git
status information with icons in the prompt. - panda - Includes
git
androot
status decorations. Best on a dark background. - papercolor - Color scheme for ZSH,
vim
andtmux
. Includesgit
status decorations. - parrot - Imitates Parrot Security prompt, includes tmux configuration file.
- passion - Includes
git
status decorations, command run time in milliseconds. Requires coreutils on macOS. - pastel - A ZSH theme inspired by sugar-free. Includes
git
decorations. - persi - Includes
git
decorations. Works with both light and dark backgrounds. - phalanx - Minimal theme in the spirit of the robbyrussell and Pure Shell themes.
- phantomk - Colorful theme, includes go version, node version and
git
status. - phi φ - A clean and simple theme for ZSH inspired and forked from the Lambda (Mod) ZSH theme.
- pi - A minimalist theme with
git
status decorations. - plain-ui - Minimalist, but includes
git
status decorations. - plain - A plain and simple theme for ZSH which shows basic
git
information. - planet - A slimmed down version of steef from oh-my-zsh.
- plankton - Simple, no-frills theme.
- plantyhoe - Minimalist theme based on a love of plants and apples. Includes
git
status decorations. - platypus - Platypus is a simple and convenient theme for oh-my-zsh used by Frédéric de Villamil.
- pointer - Shows working directory, the return status of the last command, and
git
current branch. - poncho - RDM's basic oh-my-zsh custom theme.
- poor-programmer - Programmer's theme with
git
status, ruby version and project path. - powerbash - Works well with dark terminal backgrounds, includes
git
status decorations. - powerless - Tiny & simple pure ZSH prompt inspired by powerline.
- powerlevel10k - A fast reimplementation of powerlevel9k ZSH theme. Can be used as a drop-in replacement for powerlevel9k, when given the same configuration options it will generate the same prompt, only faster.
- powerlevel9k - Powerlevel9k is a theme for ZSH which uses Powerline Fonts. It can be used with vanilla ZSH or ZSH frameworks such as Oh-My-Zsh, Prezto, Antigen, and many others.
- powerlevelHipstersmoothie - Add-on for powerlevel9k.
- powerline (brucehsu) - A two-line version of powerline: one for information, one for input.
- powerline (jeremy) - Another take on a powerline theme. Nicely configurable, but requires at least a 256 color-capable terminal with a powerline-compatible terminal font.
- powerline (syui) - A
git
aware powerline theme. - powerline-cute - Based on bullet-train.
- powerline-go - A beautiful and useful low-latency prompt, written in golang. Includes
git
andhg
status decorations, exit status of the last command run, current Python virtualenv, whether you're in a nix shell, and is easy to extend. - powerline-hs - A Powerline clone written in Haskell. It is significantly faster than the original implementation, and makes the shell noticeably more responsive.
- powerline-pills - Created in Ruby, uses powerline characters to simulate pills with useful information.
- powerline-shell (b-ryan) - Beautiful and useful prompt generator for Bash, ZSH, Fish, and tcsh. Includes
git
,svn
,fossil
andhg
decorations, Python virtualenv information, and last command exit status. - powerline-shell (banga) - A powerline-like prompt for Bash, ZSH and Fish. Shows important details about git/svn/hg/fossil branch and is easy to customize/extend.
- powerline-train - A powerline variant.
- powerline - A Powerline-like prompt, based on powerline-bash. Displays virtualenv,
git
status information and the exit code of the last command run. - powerzeesh - A Powerline based ZSH theme. It aims for simplicity, showing information only when it's relevant, optimized for speed and look. Inspired by Agnoster and Powerline.
- pre - A collection of themes for Sublime Text, Terminal, iTerm 2 and ZSH.
- predawn-shell - Theme optimized for dark terminal themes.
- prezto-cloud-prompt - Prezto port of oh-my-zsh's cloud prompt.
- prezto-lambda - Lambda theme (for prezto).
- prezto_powerline - Powerline for prezto. Shows git information, RVM version.
- probe - Includes
git
status decorations. - prompt-powerline - A fairly heavyweight ZSH prompt, based on the powerline font from the popular eponymous
vim
plugin, which works well for a dark background. - prompt_j2 - Has a dynamic exit status indicator, can change to two lines dynamically to display context.
- punctual - Easily customizable, influenced by spaceship.
- pure-agnoster - Mashup of pure and agnoster. Has
git
decorations and works well with both dark and light terminal backgrounds. - pure - A pretty, minimal and fast ZSH prompt. Includes
git
status decorations, prompt turns red if last command failed, username and host decorations when in a remote session or container, and current folder and command when a process is running. - purify (banminkyoz) - A simple, fast & cool prompt.
- purify (kyoz) - A clean and vibrant theme, best on dark backgrounds. Includes
git
status decorations. - purity - Inspired by robbyrussell theme and the pure prompt.
- purs - A pure-inspired prompt written in Rust.
- pustelto - Colorful theme inspired by the Spaceship theme, includes
git
decorations. - qoomon - Optimized for dark backgrounds, includes
git
information. Theme repo includes iTerm 2 and Terminal color settings. - racotecnic - Based on af-magic and posh-git.
- radium - Designed for dark terminals, (works best with Solarized iTerm 2 theme) (prezto).
- rafiki - Adds emojis to your ZSH terminal.
- ramiel - Fork of the node.
- random-emoji-robbyrussell - Based on random-emoji and
robbyrussell
themes. - random-emoji - Random emoji.
- raytek - Simple and colorful theme with
git
status decorations. - rb - Powerline-styled ZSH theme based on Agnoster, optimized for
git
and solarized terminals. Requires a Powerline-compatible font. - rbjorklin - Optimized for solarized terminal color schemes, includes
git
status decorations. - redline - Minimalist theme. Includes
git
status, time, user. - reggae - Compresses a lot of information into the prompt with color-coded status decorations.
- rei - A simple theme with the first character being 零(rei), the number 0. Includes
git
status decorations. - remiii - Based on agnoster, optimized for solarized terminal themes.
- remolueoend - Prezto ZSH theme based on Sorin, using emojis for tracking GIT context.
- rho - Minimalist theme.
- river - Dark theme with
git
information. - robbyolivier - Based on ideas from the the robbyrussell theme and the project zsh-git-prompt.
- robbyrussell-fullpath - The original robbyrussell with a fullpath in the prompt.
- robbyrussell-WIP - Decorates the
robbyrussell
theme with output to indicate a WIP commit. - rougarou - A dark theme.
- roundy - fast, cute and roundy theme. Includes
git
decorations. Requires nerd fonts and a unicode-capable terminal application. - rufus - Optimized for dark backgrounds.
- rummik - @rummik's theme. Supports psmin, and
git
status information in the prompt. - russtone - Inspired by pure and sorin. Includes
git
status decorations. - ryner - Colorful theme, includes
git
decorations and the current directory. - rzh - Theme with git states indicated by emojis.
- s1ck94 - Fork of the (first deprecated, now extinct) minimal prompt by S1cK94. Shows whether user is root, background job status, vi-mode, exit status of last command, and
git
status decorations. - s7c - Works well with dark backgrounds. Includes
git
status decorations. - samshell - A minimalist zsh theme with
git
, kubernetes and python virtualenv decorations. - saraiva - Includes
git
status decorations, works well on a dark terminal background. - schminitz-v2 - Shows
git
status decorations, user@host information, the exit status of last command, and whether running as root. - schminitz - Shows if
vim
is running in the background when using:sh
command. - sdkman - Add tab completions for sdkman.
- seashell - Minimal theme with sea-inspired emoji decorations. Includes
git
status decorations. - seeker - This theme uses many special unicode characters to be fancy, but it may cause some problems without well supported fonts.
- seltzer - Inspired by the dieter theme, uses color-coding to provide information.
- senpai - Clean prompt theme for Devops. Includes
git
status information, the kubernetes context, AWS profile, GCP project and Azure active cloud. - seppuku - Clean and minimal theme inspired by cloud.
- sepshell - Clean and minimal ZSH theme based on the old lost taybalt theme, with
git
bisecting/merging/rebasing modes and configurable prompt symbols. - seti_UX - A simple omz-compatible theme with a corresponding iTerm 2 color scheme.
- sfz - An evolution of lean prompt which itself is a rewrite of pure.
- shayan - Simple theme with
git
status decorations. - shellder - Minimal theme with git branch display. Requires a Powerline-compatible font.
- shichi - A simple theme with the first character being 七(shichi/nana), the number 7. The primary color is red with a yellow accent. Includes
git
status decorations. - shocm - Forked from sixlive. Has
git
decorations. - short-ys - Based on the ys theme. Includes
git
andhg
status decorations. - shrikant - Includes
git
decorations. - shrug - Simple theme which displays current directory and git information.
- shtr0m - Includes
git
status decorations. - siegerts - Includes
git
status decorations in right prompt. - silver - A cross-shell customizable powerline-like prompt heavily inspired by Agnoster. A faster rust port of bronze. Requires Nerd Fonts.
- simpalt - An information-rich small-footprint theme for ZSH based on Agnoster.
- simple-agnoster - Powerline-inspired simple theme with
git
decorations. - simple-git - Minimalist theme inspired by gitstatus. Includes
git
decorations. - simple - Minimalist theme based on robbyrussel that embeds
git
status information in iTerm's window title bar instead of using space in the prompt. - simplezsh - Minimal theme with
git
info display. - sinon - k-kinzal's sinon theme. Includes
git
status decorations. - sixlive - This theme has a unique directory listing. When inside a
git
project, the directory display is scoped to the current repository root. - sk9 - Skeiter9's ZSH theme.
- skeletor-syntax - Theme collection for Atom, Prism and ZSH inspired by Skeletor from He-Man and the Masters of the Universe.
- skill - Optimized for a dark terminal, displays
git
status decorations. - sleeplessmind - ZSH theme inspired by gitster and odin.
- slimline - Minimal, fast and elegant ZSH prompt. Displays the right information at the right time.
- sm A Simplist & Minimalist theme for your favorite terminal. Includes
git
status decorations. - small-terminal-diy - A variant of the ys theme in oh-my-zsh.
- smiley - A prompt with happy and sad faces.
- sobole - A minimalistic ZSH theme inspired by the old-fashioned hobbies. No verbose gimmicks, no emoji, no fidget spinners, and no other visual noise. Has both light and dark modes.
- solarized-powerline (KuoE0) - Solarized powerline variant.
- solarized-powerline (houjunchen) - Solarized powerline-style theme for ZSH.
- solarizsh - Color fix for robbyrussell's oh-my-zsh theme to work with solarized terminals.
- spaceship - Theme with
git
,nvm
, rvm/rbenv/chruby, python,ssh
and other useful status indicators. - spowerline - Written in scala, inspired by agnoster, tmux powerline, vim powerline and the vim status plugin.
- squanchy - Minimalist theme. Includes
git
,node
andrbenv
status decorations. - staples - Based on bureau, displays user@host if connected through SSH.
- starboy - A simple ZSH theme
- statusline - A responsive ZSH theme that provides informational segments when you need them.
- steef (danihodovic) - ZSH steeef theme as a standalone repository. The purpose behind this repo is avoid having a dependency on oh-my-zsh when using the steeef theme. ZSH plugin managers such as Antibody can use the theme without having to use oh-my-zsh.
- steef (zimfw) - A customizable version of steeef's theme.
- sublime - A sublime, clean, minimalistic ZSH theme with
git
status decorations. - sugar-free - Based on the Pure and Candy themes.
- sukeesh - Includes
git
status decorations. Works better on dark terminal backgrounds. - sulfurium - The official ZSH theme of sulfuriumOS.
- sunrise-ruby - Similar to sunrise but includes the active Ruby version.
- superkolo - Add date and return status to the kolo theme.
- susi - Includes
git
status decorations and an accompanying iTerm2 color scheme. - sy - Based on ys, includes
git
status decorations. - t2er - Minimalist theme with
git
decorations. - tabaf - Minimal ZSH theme optimized for dark backgrounds.
- tepig-ys - Includes
git
status decorations and conda/virtualenv status. - termux - Minimalist theme.
- termuxer - Theme inspired by agnoster and linuxer.
- the-time-lord - A theme based on gallifrey.
- theme-line - Colorful theme with
git
status. - theta-async - Async version of theta. Includes vcs status information.
- theta - Includes
git
andhg
status decorations. Also has java, python, ruby, node, go and elixir version information. - theto - Needs Nerd Fonts, has
git
status decorations. - thetraveler - Inspired by theunraveler, uses symbols to display
git
status. - thnikk - A minimal version of the spaceship theme.
- thyme (chenhao-ye) - Based on bira, gnzh, and bullet-train.
- thyme (kawamurakazushi) - Simple theme with
git
status decorations. - topan - Includes
git
information; best on dark backgrounds. - tq - Displays
git
status, time, requires a Powerline font. - traffic - A dark theme for ZSH.
- trajan - A dark theme for ZSH.
- trinity - A simple theme based on geometry. Includes
git
decorations. - tsotra - Minimalist theme, includes
git
status decorations, k8s context, andrvm
status. - tvline - Derived from the agnoster theme, adds powerline font enhancements.
- type0 - Inspired by classyTouch by yarisgutierrez. Includes
git
decorations. - typewritten - Minimal and informative theme that leaves room for what's important. Does asynchronous
git
decoration updates for speed. - ubuntu-ish - Mimics the default Debian/Ubuntu
bash
prompt. - ubuntu-with-vitamins - Mimics the default Ubuntu prompt, but with
git
decorations. - ultimate - Minimalist theme with
git
indicator, vim mode indicator and shortened path. - unit-1 - Minimalist theme with ITWTB colors.
- vanan - Minimalist theme with
git
information for dark terminals. - vinhnx - Modified from themes/mgutz.zsh-theme.Looks great when using with a Solarized color scheme.
- wade - Mashup of the popular ZSH themes Agnoster and Fishy, with some visual tweaks.
- wang-iterm - Based on the 0532 theme.
- whale - Fast reimplementation of the whale theme.
- wild-cherry - A fairy-tale inspired theme for ZSH, iTerm 2, Sublime, Atom, & Mou.
- work-line - Theme with nice emojis.
- workbench - Includes
git
status decorations, working directory, exit status of last command and currentvirtualenv
. - wynwyn - A theme that aims to show you the information you need when you need it.
wynwyn
takes inspiration from the default themeavit
and the excellent Spaceship prompt. - xm - Theme for dark terminals. Has
git
decorations. - xremix - An oh-my-zsh shell theme based on the Jreese theme plugin.
- xris47 - Fast, simple and streamlined theme. Works best with tmux and vim-airline.
- xxf - Shows the current git commit's shortened hash and message.
- yairshefi - Minimal theme with line separated prompts. Based on the robbyrussell theme.
- yazpt - A clean, fast, good-looking ZSH prompt theme that thoughtfully incorporates Git/Subversion/TFVC status info, integrates with popular plugin managers like Oh My Zsh, and is straightforward to customize and extend.
- yechen - Minimalist theme with
git
status decorations. - ykmam - Modified from ys theme and optimized for a dark background.
- ys-cluster - ys variant with support for working with batch submission systems for large clusters. Supports Slurm, LSF / IBM Spectrum LSF, and PBS.
- ys (cristiancavalli) - Clean, simple, compatible and meaningful theme meant for dark backgrounds.
- ys (tinyRatP) - Variant of ys.
- ysm - Simple ZSH theme with
git
status information. - ysr - Based on ys. Includes
git
status decoration. - yuki - A dark optimized ZSH theme.
- yyl-ys - Includes conda and venv status.
- yz50 - Colorful, based off of robbyrussell and crunch themes. Includes
git
status decorations. - z4rr3t - Based on sindresorhus' pure theme.
- zelda Zelda-inspired theme. Includes
git
status decorations. - zemm-blinks - Customized version of oh-my-zsh blinks with mercurial support and other changes.
- zemoji - Based on wild-cherry. Includes exit status,
virtualenv
,nvm
,rvm
andgit
status decorations. - zero - Zero's theme & plugin. Has variants for both light and dark terminal backgrounds.
- zeroastro - Works best on dark backgrounds, includes
git
status decorations. - zerocake - Works better on dark brackgrounds.
- zeta - Shows username,
git
status information, machine name and the current working directory. - zinc - A blazing-fast, pure ZSH, mixed asynchronous powerline prompt that's easily extensible and extremely configurable.
- zlambda - Minimalist, includes
git
decorations without special font requirements. - zqt - Modified version of oh-my-zsh's maran theme.
- zsh1999 - Includes network connectivity, battery and
git
status decorations. - zsh2000 - Powerline looking ZSH theme which includes the
rvm
prompt,git
status and branch, current time, user, hostname, pwd, exit status, whether running as root and background job status. - zsh313 - Minimal theme with
git
status decorations. - zshcomrade - A ZSH theme, comrade!
- zshpower - Optimized for python developers. Includes
git
andpyenv
status decorations, username and host. Tries to install other plugins and fonts, so read its instructions before installing. - zshred - Shows current directory,
git
decorations, exit status of last command and time. - zwsh - A Zpm3/Wordstar mode/theme for ZSH.
- zys - Similar to agnoster-zsh-theme, designed to disclose information contextually, with a powerline aesthetic.
Fonts
Some of the themes listed here require Powerline-compatible fonts, here are a few:
- Awesome Terminal Fonts - A family of fonts that includes some nice monospaced Icons.
- Fantasque Awesome Font - A nice monospaced font, patched with Font-Awesome, Octoicons and Powerline-Glyphs.
- Fantasque-sans - Another Powerline-compatible font.
- Hack - Another Powerline-compatible font designed specifically for source code.
- Input Mono - A family of fonts designed specifically for code. It offers both monospaced and proportional fonts and includes powerline glyphs.
- Iosevka - Coders’ typeface, built from code. Highly customizable.
- Monoid - Monoid is customizable and optimized for coding with bitmap-like sharpness at 15px line-height even on low res displays.
- Nerd Fonts - Collection of over 20 patched fonts (over 2,000 variations) & FontForge font patcher python script for Powerline, Font Awesome, Octicons, Devicons, and Vim Devicons. Includes: Droid Sans, Meslo, Source Code, AnonymousPro, Hack, ProFont, Inconsolata, and many more.
- Powerline patched font collection - A collection of a dozen or so fonts patched to include powerline gylphs.
- Terminus - TTF version of Terminus that includes powerline glyphs.
Installation
Antibody
Most of these plugins can be installed by adding antibody bundle githubuser/reponame
to your .zshrc file. Antibody will handle cloning the plugin for you automatically the next time you start zsh
. You can also add the plugin to a running ZSH with antibody bundle githubuser/reponame
for testing before adding it to your .zshrc
.
Antigen
Most of these plugins can be installed by adding antigen bundle githubuser/reponame
to your .zshrc file. Antigen will handle cloning the plugin for you automatically the next time you start zsh
. You can also add the plugin to a running ZSH with antigen bundle githubuser/reponame
for testing before adding it to your .zshrc
.
dotzsh
- Clone new plugins into
.zsh.local/modules
- Load the plugin module in
.zshrc
- Open a new ZSH terminal window or tab
Oh-My-Zsh
cd ~/.oh-my-zsh/custom/plugins
git clone repo
- Add the repo to your plugin list
Prezto
- Clone the plugin into your prezto modules directory
- Add the plugin to your
.zpreztorc
file - Open a new terminal window or tab
Zgen
Most of these plugins can be installed by adding zgen load githubuser/reponame
to your .zshrc file in the same function you're doing your other zgen load
calls in. Zgen will automatically clone the repositories for you when you do a zgen save
.
zplug
Most of these plugins can be installed by adding zplug "githubuser/reponame"
to your .zshrc
file.
zpm
Most of these plugins can be installed by adding zpm load "githubuser/reponame"
to your .zshrc
file.
Writing New Plugins
I've documented some recommendations for writing a new plugin here.
Other Resources
ZSH Tools
- ShellSpec - A full-featured BDD unit testing framework for dash, bash, ksh, ZSH and all POSIX shells.
- zshdb - A ZSH debugger
- zunit - A powerful unit testing framework for ZSH
Other Useful Lists
- awesome-devenv - A curated list of awesome tools, resources and workflow tips making an awesome development environment
- awesome-sysadmin - A curated list of awesome open source sysadmin resources
- Terminals Are Sexy - A curated list for CLI lovers.
Find other useful awesome-* lists at the awesome collection
Other References
The ZSH Reference Card and zsh-lovers site are indispensable.