awesome-zsh-plugins/README.md
2019-01-26 13:21:30 -08:00

134 KiB
Raw Blame History

awesome-zsh-plugins

Awesome

Status

License Build Status Join the chat at https://gitter.im/unixorn/awesome-zsh-plugins GitHub stars Code Climate Issue Count GitHub last commit (branch)

A collection of ZSH frameworks, plugins, tutorials & themes inspired by the various awesome list collections out there.

Table of Contents

Please read the Contributing Guidelines before contributing.

Frameworks

These frameworks make customizing your ZSH setup easier.

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. 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 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.

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.

prezto

Prezto enriches the ZSH command line interface environment with sane defaults, aliases, functions, auto completion, and prompt themes.

pumice

Pumice is a lightweight plugin manager for ZSH.

Toasty

Toasty is a ZSH framework made to facilitate management, not dictate it.

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 a minimal overhead when starting up the shell because nobody likes waiting. The script generates a static init.zsh file which does nothing but source your plugins and append them to your fpath. This saves startup time by not having to execute time consuming logic (plugin checking, updates, etc). The downside is that you have to refresh the init script manually with zgen reset whenever you update 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.

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.

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.

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
  • 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

zplugin

Zplugin is an innovative plugin manager with semigraphical UI, Turbo Mode, a clean fpath, reports, completion management and services support.

ZPM

ZPM ( ZSH Plugin Manager ) is a plugin manager for ZSH similar to vim-plug. ZPM plugins are compatible with oh-my-zsh. ZPM runs on Linux, macOS, FreeBSD and Android.

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.

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.

Tutorials

Generic ZSH

Antigen

Oh-My-Zsh

  • ZSH Gem 24 - Part of the 2011 ZSH Advent Calendar. Covers oh-my-zsh and zshuery.

Prezto

Zgen

  • rad-shell - A fantastically feature rich, lightning-fast shell, using ZSH, Prezto, and Zgen.
  • zsh-quickstart-kit - A simple quickstart for using ZSH with zgen. This includes a curated collection of plugins, and will automatically configure ZSH to use zgen to load them, configures zgen to periodically automatically update itself, the plugins, and the quickstart kit itself.

Plugins

  • 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-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.
  • 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 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.
  • antigen-git-store - Antigen/ZSH script to store git's current working directory. For working with git between two computers without forcing arbitrary commits.
  • anyframe - A peco/percol/fzf wrapper plugin for ZSH.
  • apache2 - Adds aliases and functions for managing Apache2.
  • apple-touchbar - Adds MacBook Pro's touchbar support in iTerm 2.
  • appup - Adds start, stop, up and down commands when it detects a docker-compose.yml or Vagrantfile in the current directory (e.g. your application). Just run up and get coding!
  • artisan - Laravel artisan plugin for ZSH to help you to run artisan 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.
  • 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 - A plugin for Oh My Zsh that lets you launch a file or folder in Atom from iTerm 2. It's based on the Sublime plugin. Only supports macOS.
  • atom - A plugin for the Atom editor on macOS.
  • 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.
  • autoenv-extended - Extended version of the zsh-autoenv plugin.
  • autoenv - If a directory contains a .env file, it will automatically be executed when you cd 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 when traversing directories.
  • 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 autoupdate non-core plugins, this adds plugin autoupdating to omz.
  • aws-mfa - Plugin for AWS MFA.
  • aws-upload - Boost your productivity with aws-upload.
  • aws-vault - Plugin for aws-vault.
  • 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 and cowsay being installed.
  • basex - Adds several BaseX aliases for simplified usage.
  • bash - Makes ZSH more Bash compatible. It redefines the source command to act more like bash does. It also enables bash 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.
  • branch-manager - A plugin for managing git branches.
  • browse-commit - A plugin that lets you open any commit in your browser from the command line.
  • 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
  • cd-gitroot - A ZSH plugin to cd to the git repository root directory.
  • cd-reminder - Display reminders when cd-ing into specified directories.
  • cd-reporoot - A ZSH plugin to cd to the google-repo repository root directory.
  • cd-ssh - ssh to a server when you accidentally cd to it.
  • cdbk - A ZSH plugin to allow easy named directory creation - shortcuts to any directory you want.
  • cdc - Shell function for changing directory to 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. 😎
  • clean-project - Remove files from projects (automatically by default). Useful for keeping .DS_Store and Thumbs.db files from cluttering your directories.
  • clipboard - Adds a cross-platform helper function to access the system clipboard.
  • cmd-architect - Build commands from what's in history and at prompt, move, delete, add command segments and search history with multi-word queries.
  • colored-man-pages-mod - Forked from robbyrussell/oh-my-zsh/plugins/colored-man-pages. Colorizes man output.
  • colored-man-pages - Colorize man pages.
  • colors (Tarrasch) - Makes it easier to colorize text from the CLI. red foo just works.
  • colors (zpm-zsh) - Colorize output of various programs.
  • command-not-found - mirror of the oh-my-zsh command-not-found plugin so you don't have to include all of omz.
  • command-note - Record complex commands and comment on them.
  • command-time - Show execution time for long commands in ZSH and powerlevel9k.
  • 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.
  • 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.
  • 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 - Solarized dircolors plugin.
  • dircycle - Cycle through the directory stack.
  • directory-history - A per directory history for ZSH.
  • dirrc - Executes .dirc when present in a directory you cd into.
  • dirstack - Plugin for displaying dirstack info on a single line.
  • 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.
  • dotfiles - Keep your dotfines in sync across multiple machines using git.
  • dotpyvenv - If you have a .pyvenv virtualenv, will automagically switches to it.
  • dropbox - A dropbox plugin for Zsh that provides dropbox-cli and dropbox-uploader commands.
  • dune-quotes - Random Dune quote generator plugin.
  • dwim - zsh-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.
  • 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).
  • 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.
  • escape-backtick - Quickly insert escaped backticks when double-tapping "`".
  • exercism - A plugin for exercism.io.
  • expand-ealias - Expand specific aliases with space.
  • 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 OMZ.
  • fast-syntax-highlighting - Optimized an improved zsh-users/zsh-syntax-highlighting  better response times, zed/vared can edit 10 kB functions.
  • favorite-directories - Fast jumps to your favorite directories.
  • firebase - 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.
  • forgit - Utility tool for git taking 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-finder - Plugin to have a cool search keybinding with fzf and (optionally) bat. Searches in the local tree of subdirectories for files.
  • fzf-marks - Little script to create, navigate and delete bookmarks in bash and zsh, using the fuzzy finder fzf.
  • fzf-mpd - A ZSH plugin that allows you to control mpd using 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.
  • 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 or Cargo.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-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 OMZ.
  • 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. from git clone) any URL in the clipboard.
  • git-extra-commands - Extra git helper scripts packaged as a plugin.
  • git-ignore - Generates .gitignore files from gitignore.io offline. fzf, completion, preview integrated.
  • git-it-on.zsh - Adds ability to open a folder in your current branch on GitHub.
  • git-plugin - Adds some functions for git.
  • git-prompt-useremail - Adds prompt reminders for git user.email.
  • git-prune - Plugin that simplifies deleting merged branches.
  • git-scripts - Adds git-squash-branch and git-remove-merged commands.
  • git-secret - A bash-tool to store your private data inside a git repository.
  • git-smart-commands - Adds git commands to make some common git usages more efficient.
  • git-sync - A ZSH plugin to sync git repositories and clean them up.
  • gitcd - cd to a git 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).
  • gitignore - Plugin for creating .gitignore files.
  • gitio - A ZSH plugin for generating a GitHub short URL using git.io.
  • gitsync - ZSH plugin to improve workflows for one person developing on the same repository on multiple machines.
  • goenv - Antigen plugin to 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/decrypt files or directories in place.
  • grep2awk - ZLE widget to transform grep command into awk command.
  • grunt-plugin - Add autocompletion for grunt.
  • gtm-terminal-plugin - terminal plugin for git time metrics.
  • gumsible - Wrapper plugin for Molecule.
  • gvm (dgnest) - gvm (Go version manager) plugin for ZSH.
  • gvm (yerinle) - Provides autocompletion for gvm (Groovy enVironment Manager).
  • 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.
  • 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.
  • 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-search-multi-word - 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.
  • 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.
  • ing - ping, but shorter output.
  • intellij - Extract intellij bookmarks into markdown format.
  • interactive-cd - Fish-like interactive tab completion for cd.
  • iosctl - Quickly access App, Data, and Log of the running simulator.
  • 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.
  • 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 - 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 JIRAs from the command line.
  • jvm - Allows selection of JDK on macOS.
  • k - Directory listings for ZSH with git features.
  • 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.
  • kubectl-zsh-plugin - ZSH plugin for managing kubectl.
  • kubernetes - Add kubernetes helper functions and aliases.
  • laradock-workspace - Provides an interface to Laradock's workspace.
  • laravel - Add shortcuts for Laravel 5, 5.1, 5.2 & 5.3.
  • last-working-directory (mdumitru) - Broken out version of the version in oh-my-zsh so users of other frameworks don't have to import all of OMZ.
  • lesaint-git - Replacement git plugin for Oh-My-Zsh-compatible frameworks.
  • lesaint-mvn - Maven plugins for Oh-My-Zsh.
  • linuxbrew - ZSH plugin for linuxbrew.
  • 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 data from lipsum.com.
  • ls - Colorizes the output of ls.
  • lumberjack - Lumberjack is a logging interface for shell scripts.
  • 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.
  • morpho - Terminal screen savers written in pure ZSH, and also screen saver framework.
  • msf - Metasploit handler plugin for starting handler easily.
  • mylocation - A plugin to show your current location based on your IP address.
  • mysql-colorize - Colors 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-like kill, directory bookmarks browser, multi-word incremental history searcher and more.
  • nice-exit-code - Maps exit status code to human readable string.
  • nix-shell - Plugin that lets you use ZSH as the default nix-shell shell.
  • node - Srijan Shetty's nodejs plugin for ZSH with caching of nvm completions and autoloading of nvm if present.
  • nodenv - Auto-load nodenv and its completions into the shell.
  • nohup - Add nohup to the current command pressing Ctrl-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).
  • nvm-auto-use - calls nvm use automatically whenever you enter a directory that contains an .nvmrc file with a string telling nvm 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 - ZSH plugin for installing, updating and loading nvm.
  • 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-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.
  • pctl - Toggle the environment variables for proxying.
  • peco-history - Search shell history with Peco when pressing ctrl+r.
  • percol - Interactively and incrementally search history/resume background jobs using percol.
  • pg - Adds utility functions to work with PosgreSQL.
  • 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 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.
  • 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.
  • pretty-time - Convert seconds to a human readable string: 165392 → 1d 21h 56m 32s.
  • 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.
  • purs - A Pure-inspired prompt in Rust.
  • pyenv-lazy-load - Plugin for lazy-loading pyenv in ZSH.
  • pyenv-lazy - Lazy load pyenv. The initial eval "$(pyenv init -)" is executed the first time pyenv is called.
  • q (cal2195) - Vim-like macro registers for 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.
  • 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 (jsahlen) - Variant based on the original oh-my-zsh rbenv plugin.
  • redis - Will run redis-server pointing it to the redis.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.
  • ruby-switch - Switch ruby versions and manage the PATH variable at the same time.
  • rvm - Initiates RVM and adds rubygem binaries (like compass) accessible in the user's $PATH.
  • safe-paste - A safe-paste plugin. See Conrad Irwin's bracketed-paste blog post.
  • saneopt - Sane defaults for ZSH options, in the spirit of vim-sensible.
  • schroot - Show current chroot name in your prompt.
  • select - Multi-term searched selection list with approximate matching and uniq mode.
  • send.zsh - Single command to git add, git commit, and git push for much faster git workflow.
  • sensei-git - Adds many git aliases and helper shell functions.
  • setenv - Runs a script when you change directories.
  • simple-agnoster - Powerline-inspired simple theme with git decorations.
  • simpleserver - Plugin to easily start python SimpleHTTPServer and SimpleHTTPSServer.
  • smart-cd - Runs ls and git 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 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.
  • sterror - Interprets error messages from programs and displays a human readable error message when available.
  • 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. Toggles sudo 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.
  • symfony - 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 widgits without typing commands.
  • sysadmin-util - Steve Kemp's collection of tool scripts for sysadmins.
  • t32 - Plugin for the Lauterbach Trace32 toolset. It automatically registers fonts and sets all necessary environment variables to run the t32 toolset.
  • 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 - Terraform convenience functions and aliases for ZSH.
  • timewarrior - Plugin for timewarrior a timetracking 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-fork Standalone fork of the oh-my-zsh tmux plugin
  • 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 adjacent tmux 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.
  • 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.
  • 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
  • vanilli.sh - A lightweight start point of shell configuration.
  • 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.
  • vi-mode - Add more vi-like functionality to ZSH.
  • viexchange - 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) like man in ZSH.
  • vimto - Improved ZSH vim 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. It 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 - Plugin for Visual Studio Code.
  • wack - Wraps ack command.
  • wakatime-zsh-plugin - Track how much time you have spent in your terminal. Has per project stats.
  • wakatime - Automatic time tracking for commands in ZSH using wakatime.
  • warhol - Configures colorization with grc.
  • 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? Because cd seems inefficient when the folder is frequently visited or has a long path.
  • 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.
  • workon - Simple utility for jumping between projects
  • yadm - Displays a warning if there are local yadm configuration changes.
  • yeoman-zsh-plugin - 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 - Simple plugin for youtube-dl
  • zaw - ZSH anything.el-like widget.
  • zce - Vims EasyMotion / Emacss 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.
  • 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.
  • zinfo_line - Makes more information available to ZSH themes.
  • zjump - Simplify ZSH directory navigation; jump to already visited, parent or sub folders.
  • zredis - Adds Redis database support, with database_key <-> shell_variable binding. Supports all data types.
  • zsh-z - Jump quickly to directories that you have visited "frecently." A native ZSH port of z.sh - without awk, sed, sort, or date.
  • 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.

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.
  • aaron - Based on the Sorin theme.
  • abbr - 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.
  • adlee - macOS theme, requires a Powerline-compatible font.
  • 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 on 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 swift while displaying the Git status and indicators of SSH connection, exit codes, and vi mode, along with an abbreviated, PROMPT_DIRTRIM-style path. Very customizable. Asynchronous even on Cygwin and MSYS2.
  • agnoster-fcamblor - Solarized Agnoster variant with git information. Requires a unicode font and works best with a solarized terminal.
  • 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 - 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 Powerline-compatible font.
  • agnosterAfro - Based on Powerline and Agnoster Theme and inspired by the agnosterzak.
  • agnosterzak - Based on Agnoster, shows battery life, date & time, git status, current directory and user & host information.
  • alien-minimal - Minimalist ZSH theme with git status displayed.
  • alien - Powerline-esque ZSH theme that shows git branch and the exit code of the last command.
  • 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.
  • angry fly - Shows git information in the right hand prompt.
  • aphrodite - Minimalistic theme without visual noise. Displays only the necessary information: current user, hostname, working directory, git branch if 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.
  • 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.
  • astro - Based on ys theme and robbyrussell (default theme) theme.
  • aterminal - Displays Nodejs, NPM, Docker, Go, Python, Elixir and Ruby information in the prompt.
  • avit-d2k - Based on the oh-my-zsh avit theme, with small changes.
  • avit-mod - Modified version of oh-my-zsh's avit theme.
  • bandit - Another Powerline variant.
  • 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.
  • birame - Based on bira.
  • bklyn - Variant of Powerlevel9k with customizations applied.
  • blackrain - Another git-aware theme.
  • blinks-xfan - Based on the existing theme blinks.
  • 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.
  • brs - Displays the current song in the prompt with audtool.
  • bluehigh - Minimal theme, displays git information.
  • bluelines - Clear and blue theme.
  • boom - Multiline theme, best on dark backgrounds.
  • bronze - A cross-shell customizable powerline-like prompt with icons written in go. Requires nerd-fonts.
  • brunty - Brunty theme.
  • bttf-color - BTTF color theme.
  • 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 - A clear and informative two-lined prompt. Includes git status optimized for large repositories.
  • candy-light - Light version of the candy theme.
  • 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.
  • chi - A ZSH theme optimized for iTerm 2 users on macOS.
  • ciacho - Based on Agnoster.
  • cinnabar - Shows timestamp, large line breaks, git branch and status.
  • clarity - Designed for for simpleness and extensibility.
  • classyTouch - Minimal, clean theme with git support.
  • clean (akz92) - Minimalist ZSH theme.
  • clean (BrandonRoehl) - A minimalist variant of pure. Pure is not clean, clean is not pure.
  • cloudy - Minimal cloudy ZSH theme.
  • clover - Inspired by zeta-zsh-theme 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.
  • colorbira - Allows per-host prompt coloring, displays rvm, virtualenv and git information.
  • 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.
  • cute-theme - A macOS oh-my-zsh shell theme with Cute emoji based on the Powerline Vim plugin.
  • czsh - ZSH with oh-my-zsh and the agnoster theme in a container.
  • 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.
  • 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.
  • 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.
  • 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.
  • 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.
  • dustmod - Derived from the dst theme in oh-my-zsh.
  • eggshausted - A git-aware theme for people who are tired of getting errors.
  • emojeer - Emoji flavored oh-my-zsh theme.
  • endless-dog - OMZ theme that mimics grml-zsh-config.
  • enormous - Takes up an enormous amount of space in the terminal.
  • eubw - A simple theme with git information.
  • excess - Simple ZSH color theme.
  • fattyarrow - Minimal ZSH prompt that works better on dark backgrounds.
  • feder - Clean, simple, compatible and meaningful. Tested on Linux, Unix and Windows under ANSI colors.
  • filthy - A disgustingly clean ZSH prompt.
  • 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 display that can be enabled on the right-hand side of the prompt.
  • fishy - ZSH theme inspired by original fishy.
  • 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.
  • 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 and svn.
  • furio - Fork of the Cloud oh-my-zsh theme. with different colors and emojis.
  • garrett - Prezto prompt with the information you need the moment you need it.
  • gawaine - Nicola Racco's theme. Requires rvm & git plugins.
  • geometry - A minimal ZSH theme based on Avit and Pure that displays a lot of git information and is composable and customizable.
  • geometryHostInfo Adds host info to the geometry theme.
  • girazz - A modification to the gnzh theme which adds vi mode to the right prompt.
  • git-prompt - Displays information about the current git repository. In particular the branch name, difference with remote branch, number of files staged or changed, etc.
  • gitsome - Super simple prompt with git info, optimized for the Flat Terminal color scheme.
  • gitster - When in a git repo, it shows the location from the git repository root folder. When not in a git repo, it shows the path relative to home, ~.
  • glimmer - Includes git branch, time and user@host.
  • gocilla - Theme for iTerm 2 and ZSH, includes git decorations, user@host, path and date.
  • grayt - Simple yet informative theme that includes git decorations.
  • gruvbox - Based on agnoster, uses the same colors from the gruvbox vim plugin.
  • 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.
  • hanpen - Shows git branch and status, last command exit code, last command execution time if more than ZSH_THEME_HANPEN_CMD_MAX_EXEC_TIME.
  • 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.
  • helb - Loosely based on Gentoo's old bash theme. Includes git information, return value of last command, and uses different username color and prompt char for users ($) and root (#).
  • 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.
  • himself - Optimized for people using git, solarized terminals and unicode-compatible fonts.
  • 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.
  • hyperzsh - Gives you a comprehensive overview of the branch you're working on and the status of your repository without cluttering your terminal.
  • iamskok - Works well on a dark background.
  • iggy - A super happy awesome Powerline-style, git-aware prezto only theme.
  • igorsilva - Shows current directory, customizable delimiter, current branch, git status.
  • 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.
  • jam - Optimized for dark backgrounds, includes git status and rvm status.
  • jbrain4 - Variant of oh-my-zsh's stock bira theme.
  • jc - For dark terminal backgrounds, includes git status information.
  • jcl - Loosely based on the ys theme.
  • 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.
  • 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.
  • 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.
  • kketcham - Theme with nifty colors on the git info.
  • klendathu - Uses Powerline iconsolas.
  • kraken - A dark theme for ZSH.
  • kumavis - Agnoster fork optimized for solarized terminals. Requires powerline-compatible font.
  • kw - Colorful theme with git and hg status information, ability to add host-specific colors to hostname.
  • lagune - a minimal ZSH theme.
  • lambda-gitster - Minimalist prompt that includes git 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 - A ZSH theme optimized for git users who use unicode-compatible fonts and terminal applications.
  • lambdav - A combination of the Lambda and Fishy themes.
  • lazyprodigy - Optimized for dark terminals, has variants for local and remote systems.
  • leafia - Leafy prezto theme that shows git status information.
  • lewis - Black, white and red theme. Shows git status information.
  • lila - Minimalist theme, best on a dark terminal background.
  • lime - Simple standalone 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 for Bash & ZSH.
  • llama - Minimalist theme used by discerning llamas.
  • 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.
  • magico - IOsonoTAN's magico theme.
  • mango - Resembles Solus' default bash prompt style.
  • 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.
  • mattizer - Includes working directory and git status decorations.
  • mau - A ZSH theme with a cat twist.
  • maxulysse/myzsh - Maxime Garcia's myzsh theme.
  • megaprompt - A maximalist prompt including keyboard mode, ownership info, and other contextual info, with λ as the prompt character. Requires the hooks plugin.
  • 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.
  • 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.
  • minimal - Minimal yet feature-rich theme.
  • minimalx - Inspired by kolo theme from oh-my-zsh.
  • misa - Misalabs' ZSH theme.
  • mixed - Optimized for dark backgrounds.
  • molokai-powerline - Based on agnoster.
  • moonline - Minimal but easily extensible prompt.
  • moux - Works well with a dark background, includes git decorations in RPROMPT.
  • 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.
  • nanofish - Adds fish-style directory prompt to nanotech theme.
  • 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.
  • newt - Fat & fast theme beautiful inside and out, styled segments done right.
  • nextbike - A very basic theme which just features an macOS bike icon.
  • nidoranarion - Colorful, shows git status decorations.
  • ningxia - Based on af-magic.
  • nknu - A simple oh-my-zsh theme.
  • nmaxcom - Minimalist ZSH theme with git status decorations.
  • node - OMZ's node theme, broken out to make it easier to use with other plugin managers.
  • nodeys - Based on ys theme, with added NodeJS version (from NVM plugin).
  • noon - Has light and dark variants, shows git information.
  • 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 - Clean, distraction free and git focused development theme. Shows path relative to git root (or ~ when outside git repo), time since last commit, current SHA, branch and branch state.
  • nuqlezsh - Simple theme for prezto and oh-my-zsh.
  • odin - Odin is a git-flavored ZSH theme.
  • oh-my-git - An opinionated prompt for bash and ZSH.
  • oh-my-via - Theme for ZSH which mainly forks the historical theme used on VIA servers.
  • oxide - A Minimalistic and Dark ZSH theme.
  • ozono 🌏 OZ0NO - Let's Breathe a clean ZSH.
  • 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.
  • pastel - A ZSH theme inspired by sugar-free. Includes git decorations.
  • phi φ - A clean and simple theme for ZSH inspired and forked from Lambda (Mod) ZSH Theme.
  • plain - A plain and simple theme for ZSH which shows basic git information.
  • planet - A slimmed down version of steef from oh-my-zsh.
  • 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.
  • powerless - Tiny & simple pure ZSH prompt inspired by powerline.
  • 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.
  • 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.
  • 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.
  • 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 - Pretty, minimal and fast ZSH prompt.
  • purien - Pretty prompt based on pure prompt, inpired by alien-minimal and filthy.
  • purify - Simple, fast & cool prompt.
  • purity - Inspired by robbyrussell theme + pure prompt.
  • 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.
  • random-emoji-robbyrussell - Based on random-emoji and robbyrussell themes.
  • random-emoji - Random emoji.
  • 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.
  • remiii - Based on agnoster, optimized for solarized terminal themes.
  • remolueoend - Prezto ZSH theme based on Sorin, using emojis for tracking GIT context.
  • river - Dark theme with git information.
  • robbyolivier - Based on ideas from the the robbyrussell theme and the project zsh-git-prompt.
  • robbyrussell-WIP - Decorates the robbyrussell theme with output to indicate a WIP commit.
  • rougarou - A dark theme.
  • rufus - Optimized for dark backgrounds.
  • rummik - @rummik's theme. Supports psmin, and git status information in the prompt.
  • ryner - Colorful theme, includes git decorations and the current directory.
  • rzh - Theme with git states indicated by emojis.
  • saltgen - Variant of the robbyrussell oh-my-zsh theme.
  • saraiva - Includes git status, works well on a dark terminal background.
  • schminitz-v2 - Shows git status, user@host information, 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.
  • seeker - This theme uses many special unicode characters to be fancy, but it may cause some problems without well supported fonts.
  • seltzer - Inspired by dieter theme, uses color-coding to provide information.
  • senpai - Clean prompt theme for Devops. Includes git information, 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.
  • shellder - Minimal theme with git branch display. Requires a powerline font.
  • shrug - Simple theme which displays current directory and git information.
  • silver - A cross-shell customizable powerline-like prompt heavily inspired by Agnoster. The faster rust port of bronze. Requires Nerd Fonts.
  • simpalt - An information-rich small-footprint theme for ZSH.
  • simplezsh - Minimal theme with git info display.
  • sinon - k-kinzal's sinon theme.
  • 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.
  • 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 - Solarized powerline-style theme for ZSH.
  • solarizsh - Color fix for robbyrussell's oh-my-zsh theme to work with solarized terminals.
  • spaceship - A ZSH theme with git, nvm, rvm/rbenv/chruby, python, ssh and other useful indicators.
  • spowerline - Written in scala, inspired by agnoster, tmux powerline, vim powerline and the vim status plugin.
  • 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 - 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.
  • sugar-free - Based on the Pure and Candy themes.
  • tabaf - Minimal ZSH theme optimized for dark backgrounds.
  • tahuri - ZSH theme for Arch Linux.
  • termuxer - Theme inspired by agnoster and linuxer.
  • the-time-lord - A theme based on gallifrey.
  • theme-line - Colorful theme with git status.
  • thetraveler - Inspired by theunraveler, uses symbols to display git status.
  • 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.
  • tvline - Derived from agnoster's theme, adds powerline font enhancements.
  • ultimate - Minimalist theme with git indicator, vim mode indicator and shortened path.
  • 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.
  • vira - An update of the bira theme that shows the vim bindkey -v status.
  • wade - Mashup of the popular ZSH themes Agnoster and Fishy, with some visual tweaks.
  • wang-iterm - Based on the 0532 theme.
  • webicons - Includes git status, node and yarn versions in prompt.
  • wild-cherry - A fairy-tale inspired theme for ZSH, iTerm 2, Sublime, Atom, & Mou.
  • work-line - Theme with nice emojis.
  • wynwyn - A theme that aims to show you the information you need when you need it. wynwyn takes inspiration from the default theme avit 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.
  • xxf - Shows the current git commit's shortened hash and message.
  • yairshefi - Minimal theme with line separated prompts. Based on Robby Russell's theme.
  • 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 - Clean, simple, compatible and meaningful theme meant for dark backgrounds.
  • ysm - Simple ZSH theme with git status information.
  • yuki - A dark optimized ZSH theme.
  • yz50 - Colorful, based off of robbyrussell and crunch themes. Includes git status decorations.
  • z4rr3t - Based on sindresorhus' pure theme.
  • zemm-blinks - Customized version of oh-my-zsh blinks with mercurial support and other changes.
  • zero - Zero's theme & plugin. Has variants for both light and dark terminal backgrounds.
  • zeta - Shows username, git status information, machine name and the current working directory.
  • zqt - Modified version of oh-my-zsh's maran theme.
  • 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.
  • zshcomrade - A ZSH theme, comrade!
  • 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.
  • 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.
  • Iosevka - Coders typeface, built from code. Highly customizable.

Installation

Antibody

Most of these plugins can be installed by adding antigen 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 antigen 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

  1. Clone new plugins into .zsh.local/modules
  2. Load the plugin module in .zshrc
  3. Open a new ZSH terminal window or tab

Oh-My-Zsh

  1. cd ~/.oh-my-zsh/custom/plugins
  2. git clone repo
  3. Add the repo to your plugin list

Prezto

  1. Clone the plugin into your prezto modules directory
  2. Add the plugin to your .zpreztorc file
  3. 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.

Writing New Plugins

I've documented some recommendations for writing a new plugin here.

Other Resources

ZSH Tools

  • 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.