MTool is a lightweight terminal-based tool manager that sits between you and your command-line tools. Think of it as a smart wrapper that remembers your most-used commands, suggests alternatives, and keeps your terminal clean from clutter.
MTool is a command-line interface that indexes your system's tools and provides an interactive menu to run them. Instead of memorizing commands or searching for them, you just:
It's not a replacement for your shell — it's an accelerator for common tasks.
| Feature | How It Works | Use Case |
|---|---|---|
| Fuzzy Search | Type partial names, get instant matches | Remembering obscure tool names |
| Command History | Remembers last N commands per tool | Reusing recent commands |
| Aliases | Create custom shortcuts for complex commands | Shortening repetitive commands |
| Context Awareness | Suggests tools based on current directory | Working in different project types |
| Plugin System | Extend with custom tool definitions | Adding internal tools |
| Keyboard-Native | Full vim-style navigation | Power users who hate mouse |
# Homebrew (macOS/Linux) brew install mtool # Go go install github.com/user/mtool@latest # Cargo (Rust) cargo install mtool
# ~/.config/mtool/config.yaml aliases: g: git lg: git log --oneline --graph --all db: docker-compose history_size: 100 fuzzy_threshold: 0.7 auto_suggest: true
$ mtool > g[Tab] git clone https://github.com/user/repo.git git status git log --oneline -10 > db[Tab] docker-compose up -d docker-compose down docker-compose logs -f
| Feature | MTool | fzf | zoxide |
|---|---|---|---|
| Tool Management | Built-in | External | Not applicable |
| Fuzzy Search | ✓ | ✓ | ✓ |
| Command History | ✓ | ✗ | ✗ |
| Aliases | ✓ | ✗ | ✗ |
| Context Awareness | ✓ | ✗ | ✓ |
| Plugin System | ✓ | ✓ | ✗ |
| Lightweight | ✓ | ✓ | ✓ |
MTool is excellent for developers who want a lightweight, keyboard-native tool launcher. It fills a niche between full IDEs (too heavy) and raw shells (too manual).
The fuzzy search, history, and alias features make it genuinely useful for daily work. At 256MB RAM and ~1ms startup, it's lightweight enough to leave running all day.
# Install brew install mtool # Configure mkdir -p ~/.config/mtool nano ~/.config/mtool/config.yaml # Run mtool
Repository: github.com/user/mtool