A'tuin manages and synchronizes your shell history! Instead of storing everything in a text file (such as ~/.history), A'tuin uses a sqlite database. While being a little more complex, this allows for more functionality.
As well as the expected command, A'tuin stores
- duration
- exit code
- working directory
- hostname
- time
- a unique session ID
Install
atuin needs a nightly version of Rust + Cargo! It's best to use
rustup for getting set up there.
rustup default nightly
cargo install atuin
Once the binary is installed, the shell plugin requires installing:
zplug:
zplug "ellie/atuin", at:main
otherwise, clone the repo and source /path/to/repo/atuin.plugin.zsh in your .zshrc
Usage
By default A'tuin will rebind ctrl-r to use fzf to fuzzy search your history. You
can specify a different fuzzy tool by changing the value of ATUIN_FUZZY:
export ATUIN_FUZZY=fzy
Import history
atuin import auto # detect shell, then import
or
atuin import zsh # specify shell
List history
atuin history list
...what's with the name?
A'tuin is named after "The Great A'tuin", a giant turtle from Terry Pratchett's Discworld series of books.