hellish ππ₯¶
A from-scratch, almost-POSIX shell in C β runs like a minimalist shell, reads like bash, and loads real oh-my-zsh plugins.
hellish is engineered like a teaching lab and benchmarked like a production
shell: input β lexer β parser β word reparser β heredoc β expander β
executor, each a small readable module, one t_shell struct as the single
source of truth. It diffs byte-for-byte against a pinned bash 5.3.9 on
4248 golden cases, runs clean under AddressSanitizer, ships two allocators
you swap at compile time, and races #3 of 9 against the shells you
actually use β faster than bash, zsh, mksh, yash and fish.
Install in one command¶
curl -fsSL https://raw.githubusercontent.com/Univers42/hellish/main/install.sh | sh
The installer detects whether you have sudo rights and routes itself β system
install + login shell with sudo, ~/.local/bin + rc hook without (the 42
school machine path) β then offers the plugin framework and a pick-list of
plugins. Details and every other route (source, npm, Docker):
What hellish is + Install.
Find your way¶
| you want to⦠| read |
|---|---|
| know what it is and install it | Product & Install |
man hellish β invocation, startup files, grammar, everything |
The manual |
| look up one builtin | Builtins reference β all 69, from the shell's own help |
| install and write plugins (with screenshots) | Plugins |
| live at the prompt β themes, completion, zsh dialect | Interactive Experience |
| run your bash scripts on it | Bash Compatibility & Scripting |
| see the numbers | Benchmarks Β· Performance |
| understand how it's built | Architecture |
| run it on your OS | Platforms |
| fix something | Troubleshooting Β· Fix write-ups |
Source, issues and releases live at github.com/Univers42/hellish.