Atuin
Magical shell history: searchable, synced end-to-end encrypted across machines, with executable runbooks.
About
Atuin replaces your shell's history file with a SQLite database that records rich context for every command: the directory it ran in, how long it took, whether it succeeded, and which machine and session it came from. That context is what makes its full-screen search genuinely useful: you can query for all successful make commands after 3pm yesterday, or filter by exit code and working directory, instead of scrolling through a flat text file. History can sync across all your machines end-to-end encrypted, using Atuin's hosted Hub or your own self-hosted server, and your original shell history file is left untouched as a fallback.
The project is open source under MIT, written in Rust, and had over 32,000 GitHub stars with commits landing the day of this writing. Atuin Desktop, in open beta, adds executable runbooks that combine documentation with live shell commands, SQL queries, and HTTP requests. The honest caveats: sync is genuinely end-to-end encrypted, but your local history database is plaintext SQLite for search speed, so full-disk encryption matters; and losing your encryption key means losing synced history with no recovery. For terminal-heavy developers, it is one of the highest-value free tools in the ecosystem.
What it can do
- SQLite-backed shell history with directory, exit code, duration, and session context
- Full-screen fuzzy and full-text history search
- End-to-end encrypted sync across machines (hosted or self-hosted server)
- Command statistics and usage analytics
- Atuin Desktop (beta): executable runbooks combining docs and live commands
- Import from existing shell history; original history file preserved
Setup
- Install:
curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh, then restart your shell. - Import existing history:
atuin import auto. - Press Ctrl+R (or up arrow) for the full-screen history search UI.
- Optional sync:
atuin register -u <USERNAME> -e <EMAIL>, thenatuin sync; back up your encryption key somewhere safe.
Prerequisites
A Unix-like shell (zsh, bash, fish, nushell, xonsh, or PowerShell); optional Atuin Hub account for sync.
Use cases
Works with
Trust score — 9/10
Scored 9/10 (verified tier, metrics-v1). Evidence: 32,003 GitHub stars (GitHub API), MIT license, pushed 2026-10-16; official docs corroborate the SQLite-context model, E2E-encrypted sync, and self-hosting; third-party research cites 200k+ developers and 220M+ synced entries. Strengths: massive adoption, excellent maintenance, genuinely free OSS core, privacy-respecting design. Docked for: (1) local history DB is plaintext SQLite; (2) Desktop backend is proprietary, not self-hostable. License: MIT (CLI); Desktop backend proprietary.
★ 32,003 GitHub stars
How the trust score is built
Full methodology →- Adoption · stars/downloads, log-scaled vs peers
- 10.0/10
- Maintenance · recency, releases, issue load
- 10.0/10
- Openness · license + docs
- 9.0/10
- Manual review · sanity read + red-flag check
- 9.0/10
- · 32,003 GitHub stars (GitHub API), pushed 2026-10-16
- · Official docs corroborate SQLite-context model, E2E-encrypted sync, self-hosting
- · Third-party research cites 200k+ developers, 220M+ synced entries, 230+ contributors
- · Local history DB is plaintext SQLite; Desktop backend not self-hostable
Sources
Every fact above was checked against these sources. Where a claim comes from the provider and couldn't be independently verified, the text says so.