Comparison 10 min read

Suvadu vs Atuin vs McFly vs Hstr: Which Shell History Tool Should You Use?

A detailed comparison of the top shell history replacement tools for developers in 2026.

Madhubalan Appachi ·

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 available, local-only mode supported 100% local 100% local
Shell Support Zsh / Bash Zsh / Bash / Fish / Nu Zsh / Bash / Fish Zsh / Bash
Executor Tracking 8+ types
AI Agent Support Claude Code / Cursor / Antigravity / OpenCode
TUI Search Full filter panel Yes Yes Yes
Arrow Key History Frecency-ranked
Session Tagging Yes
Bookmarks & Notes Yes Favorites
Stats Dashboard Heatmap + charts Basic stats
Alias Suggestions Yes
MCP Server Built-in

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 model. While Atuin supports local-only mode, its cloud sync is the default experience and primary selling point. Many developers prefer tools that are local-only by architecture.
  • 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 approach to history search. It uses a context-aware 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.

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.
  • 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, no database metadata.
  • 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.

Executor Tracking

Suvadu is the only shell history tool that tracks who or what ran each command. It distinguishes between commands typed by you, commands run by Claude Code, Cursor, Antigravity, OpenCode, and other AI agents, as well as scripts and pipelines. This gives you a complete audit trail of everything that happens in your terminal, not just what you typed yourself.

Organization Features

Suvadu lets you tag sessions, bookmark important commands, and attach notes. If you've ever wanted to annotate a tricky deploy command or group related commands together, this is built in. No other tool in this comparison offers this level of organization.

Arrow Key Navigation

When you press the up arrow, Suvadu doesn't just cycle through your raw history. It uses frecency-based ranking to surface the commands you're most likely looking for, taking into account how often and how recently you've used them. This is a subtle but significant quality-of-life improvement that you'll notice immediately.

Analytics

Suvadu includes a stats dashboard with heatmaps, usage charts, and alias suggestions. If you run git status fifty times a day, Suvadu will suggest creating an alias. It gives you real insight into your terminal habits.

MCP Server

Suvadu also includes a built-in MCP (Model Context Protocol) server that lets AI agents query your shell history directly. This means Claude Code or any MCP-compatible agent can search your commands, check what failed, and get context-aware suggestions — all from your local database. No other shell history tool offers this.

The Trade-offs

Being honest about where Suvadu isn't the best fit:

  • Shell support. Suvadu currently supports Zsh and Bash. If you use Fish or Nushell, Atuin is your best option today.
  • Cloud sync. Suvadu is 100% local by design. If you need your history synced across machines, Atuin's encrypted sync is purpose-built for this.
  • Maturity. Atuin has a larger community and has been around longer. Suvadu is newer and still evolving rapidly.

Every tool makes architectural choices that involve trade-offs. Suvadu chose depth of tracking and local-first privacy over breadth of shell support and cloud features.

Recommendation

There's no single "best" tool — it depends on what you value:

  • If you need cross-machine sync — use Atuin. Its encrypted cloud sync is the best in class.
  • If you want something lightweight and smart — try McFly. Its context-aware ranking is clever and it stays out of your way.
  • If you want a fast, simple history browserHstr is proven and stable.
  • If you work with AI agents, want executor tracking, session organization, and deep analyticsSuvadu was built specifically for this workflow.

If you're a developer who uses Claude Code, Cursor, or other AI tools in your terminal, Suvadu gives you visibility that no other history tool provides. Try it and see if the executor tracking and MCP integration change how you think about your shell history.

#shell-history#atuin#mcfly#hstr#comparison#developer-tools