SmartMan CLI is a modern, terminal-native enhancement for the Linux man command. It transforms dense, hard-to-read manual pages into an interactive, visually stunning experience with syntax highlighting, quick-navigation sidebars, and AI-powered explanations.
____ _ __ __
/ ___| _ __ ___ __ _ _ __ | |_| \/ | __ _ _ __
\___ \| '_ ` _ \ / _` | '__|| __| |\/| |/ _` | '_ \
___) | | | | | | (_| | | | |_| | | | (_| | | | |
|____/|_| |_| |_|\__,_|_| \__|_| |_|\__,_|_| |_|
- ⚡ Modern TUI: A beautiful, responsive terminal interface built with Textual.
- 🚀 Quick-Win Gallery: Interactive "cards" at the top of every page showing the most common usage examples.
- 📂 Interactive Sidebar: Instantly jump between NAME, SYNOPSIS, DESCRIPTION, and OPTIONS.
- 🎨 Syntax Highlighting: Automatic coloring for flags, parameters, and code snippets.
- 🤖 AI-Powered Explanations: Stressed by a complex flag? Use
--explainfor a plain-English breakdown. - 🌈 Theming Support: Choose between
default,dracula, andmonokaiout of the box.
Install SmartMan CLI globally with a single command:
curl -sSL https://raw.githubusercontent.com/ambaskaryash/smartman-cli/main/install.sh | bashpipx install .brew install ambaskaryash/tap/smartmanSmartMan CLI uses the lightning-fast Groq API to provide instant, plain-English explanations of complex manual pages.
- Get a free API key from Groq Console.
- Export it in your shell:
export GROQ_API_KEY='your_key_here'
- Run:
smartman --explain grep
Simply prefix any command you would normally use with man with smartman:
smartman grepsmartman <command>: Launch the full interactive TUI.smartman --plain <command>: Fall back to a beautiful Rich-rendered plain text view (great for quick lookups).smartman --theme dracula <command>: Use a different theme.smartman --explain <command>: Get an AI-powered summary of what the command does.
| Key | Action |
|---|---|
n |
Jump to NAME |
s |
Jump to SYNOPSIS |
d |
Jump to DESCRIPTION |
o |
Jump to OPTIONS |
e |
Jump to EXAMPLES |
q |
Quit |
Make SmartMan your default manual viewer by adding an alias to your shell configuration (.bashrc or .zshrc):
alias man='smartman'Now, whenever you type man <command>, you'll get the full SmartMan experience!
SmartMan supports custom YAML themes. You can find the bundled themes in smartman/themes/.
| Theme | Preview |
|---|---|
| Default | Modern Dark Blue |
| Dracula | Classic Dev aesthetic |
| Monokai | High-contrast vibrant |
| Nord | Cool-toned Frost |
| Catppuccin | Pastel Mocha |
We love stars! ⭐ If you find this tool useful, please give it a star and share it with your fellow Linux users.
- Fork the repo.
- Create your feature branch.
- Add a new theme in
smartman/themes/. - Submit a Pull Request.
Distributed under the MIT License. See LICENSE for more information.
Built with ❤️ by ambaskaryash
