Suvadu vs Atuin vs McFly vs Hstr: Which Shell History Tool Should You Use?
Built-in shell history is showing its age. A new generation of tools has emerged to replace it, each with a different philosophy on how your command history should work. If you're evaluating your options, here's an honest, detailed comparison of the four most notable ones: Suvadu, Atuin, McFly, and Hstr.
The Quick Overview
| Feature | Suvadu | Atuin | McFly | Hstr |
|---|---|---|---|---|
| Language | Rust | Rust | Rust | C |
| Storage | SQLite (WAL) | SQLite | SQLite | Text file |
| Privacy | 100% local | Cloud sync (opt-out) | 100% local | 100% local |
| Shell Support | Zsh, Bash | Zsh, Bash, Fish, Nu | Zsh, Bash, Fish | Zsh, Bash |
| Executor Tracking | 8+ types | No | No | No |
| AI Agent Support | Claude Code, Cursor, Antigravity | No | No | No |
| TUI Search | Full filter panel | Yes | Yes | Yes |
| Arrow Key History | Frecency-ranked | No | No | No |
| Session Tagging | Yes | No | No | No |
| Bookmarks & Notes | Yes | No | No | Favorites |
| Stats Dashboard | Heatmap + charts | Basic stats | No | No |
| Alias Suggestions | Yes | No | No | No |
Atuin
Atuin is the most popular shell history replacement and the one people tend to discover first. It's well-built, actively maintained, and offers the widest shell support (Zsh, Bash, Fish, Nushell).
What Atuin does well
- Cloud sync. Atuin's headline feature is encrypted cross-machine history sync. If you work across multiple machines, this is genuinely useful.
- Multi-shell support. Works with Zsh, Bash, Fish, and Nushell out of the box.
- Active community. Large user base, active development, good documentation.
Where Atuin falls short
- Privacy concerns. Cloud sync is the default experience. While encryption is solid, many developers (especially in enterprise) prefer zero cloud contact. Atuin can run in offline mode, but it's not the default posture.
- No executor tracking. Atuin doesn't know whether a command was typed by you, run by Claude Code, or executed by a CI pipeline.
- No arrow key integration. You get a TUI invoked by
Ctrl+R, but your up/down arrow keys aren't enhanced. - No session organization. No tagging, no bookmarks, no notes.
McFly
McFly takes an interesting ML-inspired approach to history search. It uses a neural network-style ranking algorithm that considers your current directory, recent commands, and command frequency.
What McFly does well
- Smart ranking. The contextual ranking algorithm is genuinely clever. It considers where you are, what you've been doing, and what time it is.
- Lightweight. Minimal configuration, works out of the box.
- Privacy-first. Fully local, no cloud component.
Where McFly falls short
- Limited metadata. Doesn't track exit codes, doesn't store duration, no executor information.
- No analytics. No stats, no heatmaps, no alias suggestions.
- No organization. No tags, bookmarks, or notes.
- Basic TUI. The search interface is functional but minimal compared to what Suvadu or Atuin offer.
Hstr
Hstr (HiSToRy) is the veteran of the group. Written in C, it's fast and stable but shows its age in terms of features.
What Hstr does well
- Speed. Written in C, it's incredibly fast even with large history files.
- Simplicity. Does one thing well: search and manage shell history with a clean TUI.
- Favorites. You can mark commands as favorites for quick access.
Where Hstr falls short
- Text file storage. Reads from the standard history file, so you get none of the metadata benefits of a database.
- No context capture. No directory, exit code, duration, or session tracking.
- Limited development. The project is mature but development has slowed significantly.
Where Suvadu Stands
Suvadu was built for developers who live in their terminal and want complete visibility into their command history, not just search. Here's what sets it apart:
Executor Tracking
This is Suvadu's most unique feature. By inspecting environment variables at capture time, it identifies 8+ executor types: human (TTY), AI agents (Claude Code, Codex CLI, Aider, Continue), IDEs (Cursor, VS Code, Antigravity, Windsurf, IntelliJ, PyCharm), CI/CD (GitHub Actions, GitLab CI, CircleCI), and programmatic/subprocess execution.
In a world where AI assistants are running commands in your terminal, knowing who executed what is no longer a nice-to-have. It's essential for security auditing, understanding workflow patterns, and debugging issues that arise from AI-generated commands.
Organization Features
Suvadu treats your history as a first-class knowledge base. Tag sessions by project (suv tag associate --name payments). Bookmark critical commands. Add notes with context (suv note 1234 -c "Fixed the OOM issue"). These aren't gimmicks; they're how you turn a command log into institutional knowledge.
Arrow Key Navigation
Most history tools only give you Ctrl+R. Suvadu also replaces your up/down arrow keys with frecency-ranked navigation that prefers commands from your current directory. It feels like built-in history but smarter.
Analytics
suv stats gives you a heatmap of command frequency, hourly distribution charts, and top commands/directories analysis. suv suggest-aliases analyzes your history and recommends shell aliases for commands you type repeatedly.
The Trade-offs
In the interest of honesty, here's where Suvadu isn't the best choice:
- Multi-machine sync. If you need cloud sync, Atuin is the clear winner. Suvadu is 100% local by design.
- Fish/Nushell. Suvadu supports Zsh and Bash. If you're on Fish or Nushell, Atuin is your best option today.
- Minimalism. If you just want slightly better
Ctrl+Rand nothing else, McFly's simplicity might appeal to you more.
Recommendation
Choose based on your priorities:
- Need cloud sync? Go with Atuin.
- Want maximum simplicity? Try McFly.
- Want a fast, no-frills classic? Hstr still works great.
- Want full visibility, executor tracking, and organization? That's Suvadu.
All four are free and open source. Try them and keep the one that fits how you work.
Total recall for your terminal. Database-backed shell history with AI agent tracking, built in Rust.
Install now →Madhubalan Appachi
Building developer tools at Appachi Tech. Creator of Suvadu and Kaval.