Favicon of Atuin

Atuin

Atuin replaces shell history with a searchable SQLite database, syncing encrypted history across machines for bash, zsh, fish, and more.

Atuin website screenshot
Atuin GitHub repository preview

Atuin is a Rust tool that replaces your shell's plain-text history file with a SQLite database, adding context like exit code, working directory, hostname, and duration to every command. It's for developers who work across multiple machines or terminal sessions and want history that's searchable, structured, and optionally synced (with full encryption) between them.

Instead of scrolling through a flat history file, Atuin gives you a full-screen search UI bound to ctrl-r and up, plus a query syntax for filtering by exit code, time, directory, or session. History from previous machines and sessions shows up right alongside your current one, so you get one unified, filterable record of everything you've typed, wherever you typed it.

Key features

  • SQLite-backed history: commands are stored in a real database instead of a flat text file, so you can query and filter them.
  • Encrypted sync: back up and sync shell history across machines, either through the hosted Atuin server or a self-hosted one; the server operators can't read your data.
  • Rich context per command: exit code, working directory, hostname, session, and duration are recorded alongside each entry.
  • Full-screen search UI: ctrl-r and up are rebindable to a TUI for searching history, with filter modes for current session, current directory, or global.
  • Command-line query syntax: search from the CLI with filters like `--exit 0 --after

Frequently asked questions

Share:

Stars
30.8K
Forks
907
Last commit
16 hours ago
Repository age
6 years
License
MIT
Self-hosted
No
Activity score
82/100
View Repository
Ad
Favicon

 

  
 

Similar to Atuin

Favicon

 

  
 
Favicon

 

  
 
Favicon