Atuin: Magical Shell History
What is the project about?
Atuin is a tool that enhances shell history by storing it in a SQLite database, recording additional context, and providing optional encrypted synchronization between machines.
What problem does it solve?
It improves upon the default shell history by:
- Providing a more robust and searchable history.
- Adding context to commands (exit code, duration, working directory, etc.).
- Enabling secure synchronization of history across multiple devices.
- Avoiding limitations of standard history mechanisms.
What are the features of the project?
- Full-screen history search UI (rebinds
ctrl-r
andup
). - Stores history in a SQLite database.
- Encrypted backup and sync of shell history.
- Consistent history across terminals, sessions, and machines.
- Logs extra command context (exit code, cwd, hostname, duration).
- Calculates command usage statistics.
- Preserves the original history file.
- Quick-jump shortcuts (Alt-).
- Filtering by session, directory, or globally.
- Edit commands before execution.
What are the technologies used in the project?
- Rust (primary language).
- SQLite (database).
- Encryption (for history synchronization).
- Shell integrations (zsh, bash, fish, nushell, xonsh).
What are the benefits of the project?
- Improved shell history search and management.
- Secure and private history synchronization.
- Better understanding of command usage patterns.
- Easier recall and reuse of commands.
- More context for debugging and analysis.
What are the use cases of the project?
- Developers and system administrators who frequently use the command line.
- Users who work across multiple machines and want a consistent shell history.
- Anyone who wants a more powerful and secure way to manage their shell history.
- Searching for commands with specific criteria (e.g., successful
make
commands after a certain time).
