A community framework of Bash aliases, functions, completions, themes and scripts, managed through a single install and enable/disable system.
ohmybash/oh-my-bash
A community-driven framework for managing your bash configuration, with bundled plugins, themes, and a self-update command.
- Stars
- 7,750
- Forks
- 791
- Open issues
- 164
- Last commit
- 3 days ago
What is it?
Oh My Bash is a framework for organizing a bash shell configuration. It ships with a large collection of plugins that add aliases and helper functions for tools such as git, and more than one hundred prompt themes that you select by setting a single variable in your .bashrc. Plugins are enabled by listing their names in an array, and conditionals can be used to load them only in certain situations, such as over SSH.
The installer backs up your existing .bashrc and replaces it with the Oh My Bash template. Updates can run automatically or on demand through the upgrade_oh_my_bash command, and uninstall_oh_my_bash reverts the configuration. Customizations go in a custom/ directory, so local changes can be kept separate from the bundled modules.
The project targets macOS and Linux and requires git and curl or wget. It is a port of ideas from Oh My Zsh and Bash-it, and it is developed as a community project.
Key features
- 01Bundled plugins for common tools, enabled by listing names in .bashrc.
- 02More than one hundred prompt themes, selected with a single variable.
- 03Conditional plugin loading, for example only over SSH sessions.
- 04Built-in upgrade and uninstall commands.
- 05Custom modules in a separate directory so local changes stay isolated.
Use cases
- Making a bash prompt show git status and other context at a glance.
- Sharing a consistent shell setup across several macOS or Linux machines.
- Auto-attaching tmux only on remote SSH sessions.
Quick start
- 1
Clone the repository to ~/.oh-my-bash
git clone https://github.com/ohmybash/oh-my-bash.git ~/.oh-my-bash - 2
Copy the bundled template over your ~/.bashrc
cp ~/.oh-my-bash/templates/bashrc.osh-template ~/.bashrc - 3
Reload your .bashrc
source ~/.bashrc
Things to know
- Works best on macOS and Linux; it is aimed at Unix-like systems.
- Installing replaces your existing ~/.bashrc, so back it up first.
Topics
FAQ
- What is oh-my-bash?
- A community-driven framework for managing your bash configuration, with bundled plugins, themes, and a self-update command. Oh My Bash is a framework for organizing a bash shell configuration. It ships with a large collection of plugins that add aliases and helper functions for tools such as git, and more than one hundred prompt themes that you select by setting a single variable in your .bashrc. Plugins are enabled by listing their names in an array, and conditionals can be used to load them only in certain situations, such as over SSH.
- Is oh-my-bash free to use? What license does it have?
- oh-my-bash is open source under the MIT license. Check the license terms before using it in commercial products.
- Is oh-my-bash still maintained?
- Actively maintained. The last commit to oh-my-bash was on Oct 19, 2026.
- What can I use oh-my-bash for?
- Making a bash prompt show git status and other context at a glance. Sharing a consistent shell setup across several macOS or Linux machines. Auto-attaching tmux only on remote SSH sessions.
- How do I install oh-my-bash?
- Clone the repository to ~/.oh-my-bash: git clone https://github.com/ohmybash/oh-my-bash.git ~/.oh-my-bash Copy the bundled template over your ~/.bashrc: cp ~/.oh-my-bash/templates/bashrc.osh-template ~/.bashrc Reload your .bashrc: source ~/.bashrc
- Where can I get oh-my-bash?
- The source code and installation instructions are on GitHub: https://github.com/ohmybash/oh-my-bash
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A community-driven framework for managing zsh configuration, bundling hundreds of plugins and themes plus an update tool.
A framework for the fish shell that installs and manages packages and themes to customize your prompt and shell behavior.
A opinionated, modern Linux distribution by DHH, built on Arch with a polished default desktop, theming and developer tooling preconfigured.
A smarter cd command that learns your most-used directories and lets you jump to them with a few keystrokes, across all major shells.
A Material Design theme for MkDocs that turns Markdown files into a searchable, responsive static documentation site.