most used shell commands visualizer
Offline demo (no history file): musc --demo
Regenerate assets (needs VHS):
make demo-gifbrew tap vvrnv/tap
brew install muscOr in one line:
brew install vvrnv/tap/muscUpgrade later with:
brew upgrade muscgo install github.com/vvrnv/musc@latestPrebuilt archives for macOS, Linux, and Windows are on the releases page.
musc # uses config `shell` or $SHELL
musc zsh
musc bash
musc fish
musc powershell # alias: musc pwsh
musc --demo # sample data for screenshots / demosOpens an interactive UI (Bubble Tea) with three views:
- list — ranked commands with counts and share
- bars — horizontal bar chart
- pie — donut chart with legend
Keys: ↑/↓ or j/k scroll, pgup/pgdn page, g/G top/bottom, 1/2/3 or tab switch views, q quit.
musc -t 20 # top 20 (default: 10)
musc --plain # plain text, no TUI
musc --ui # force TUI (overrides config ui: false)
musc --config ./musc.yamlDefault path: ~/.musc/config.yaml
Also checked (first match wins): ~/.config/musc/config.yaml, ~/.musc.yaml.
# default shell for bare `musc` (fallback: $SHELL)
shell: zsh
# interactive TUI (default: true)
ui: true
# commands to skip entirely
exclude:
- clear
- exit
- ls
# fold shell aliases into a canonical command
aliases:
gc: git # or: gc: git commit
k: kubectlWith this, gc and git both count toward git.
Set ui: false for plain text by default. Override per run with --ui / --plain.
| Shell | History file |
|---|---|
| zsh | $HISTFILE or ~/.zsh_history |
| bash | $HISTFILE or ~/.bash_history |
| fish | $XDG_DATA_HOME/fish/fish_history (Windows: %LOCALAPPDATA%\fish\fish_history) |
| PowerShell | PSReadLine ConsoleHost_history.txt (Windows / macOS / Linux) |
Works on macOS, Linux, and Windows.
inspired by tsukae
