Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. atuin

atuin

MITRustv18.15.2

Atuin replaces your shell history with a SQLite database, adding context and optional encrypted sync across machines.

Visit WebsiteGitHubGitHub
29.4k stars835 forks0 contributors

What is atuin?

Atuin is a tool that replaces your traditional shell history with a SQLite database, recording additional context like exit codes, durations, and timestamps for each command. It solves the problem of limited and non-portable shell history by offering optional, fully encrypted synchronization across multiple machines. This makes your command-line workflow more efficient and your history accessible anywhere.

Target Audience

Developers and system administrators who use the command line extensively and want to enhance their shell history with better search, statistics, and cross-machine synchronization. It's particularly useful for those working across multiple terminals or machines.

Value Proposition

Developers choose Atuin for its encrypted sync, which ensures privacy while making history available everywhere, and its rich contextual logging, which goes beyond basic command storage. Its seamless integration with popular shells and powerful search UI provides a significant productivity boost over traditional history mechanisms.

Overview

✨ Making your shell magical

Use Cases

Best For

  • Synchronizing shell history securely across multiple development machines
  • Searching command history with advanced filters like exit code, time, and directory
  • Analyzing command-line usage patterns with statistics
  • Enhancing productivity in terminals with a full-screen history search UI
  • Preserving detailed command context (duration, hostname, session) for debugging
  • Self-hosting a private shell history sync server for team or personal use

Not Ideal For

  • Users who only operate on a single machine and have no need for history synchronization
  • Environments where shell history must remain in plain text files for compliance or integration with existing auditing tools
  • Teams relying heavily on PowerShell, as it has only tier 2 support with potential bugs or missing features
  • Resource-constrained systems where the overhead of a SQLite database and additional processes is a concern

Pros & Cons

Pros

Encrypted Cross-Machine Sync

Atuin provides optional, fully encrypted synchronization via its server, ensuring privacy while making history accessible across all terminals and machines, as the README emphasizes with 'I couldn't access your data even if I wanted to.'

Rich Contextual Logging

It logs exit code, current working directory, hostname, session, and command duration, offering detailed context for debugging and analysis beyond basic command storage, as shown in the demo GIF.

Advanced Search Interface

Rebinds Ctrl-R and Up keys to a full-screen history search UI with filter modes for session, directory, or global history, significantly enhancing productivity over traditional shell history navigation.

Broad Shell Support

Compatible with zsh, bash, fish, nushell, xonsh, and PowerShell, catering to a wide range of shell environments, though PowerShell support is tier 2.

Cons

Complex Setup for Advanced Use

Offline setup or self-hosting requires reading extensive documentation, and Bash users face limitations with bash-preexec, as noted in the README's cautionary note, adding friction for some environments.

Weak PowerShell Integration

PowerShell is only tier 2 supported, meaning it may lack features or have bugs compared to other shells, which could frustrate Windows-centric developers seeking full functionality.

External Server Dependency

Synchronization relies on an Atuin server, either cloud-based or self-hosted, introducing an additional component that needs maintenance and could fail, impacting sync reliability.

Frequently Asked Questions

Quick Stats

Stars29,437
Forks835
Contributors0
Open Issues402
Last commit1 day ago
CreatedSince 2020

Tags

#history#productivity#fish#terminal#cli-tool#shell#bash#sqlite#command-line#rust#shell-history#self-hosted#zsh

Built With

S
SQLite
R
Rust

Links & Resources

Website

Included in

Rust56.6k
Auto-fetched 1 day ago

Related Projects

BatBat

A cat(1) clone with wings.

Stars58,484
Forks1,535
Last commit4 days ago
fdfd

A simple, fast and user-friendly alternative to 'find'

Stars42,659
Forks1,050
Last commit3 days ago
nushellnushell

A new type of shell

Stars39,139
Forks2,113
Last commit1 day ago
zoxidezoxide

A smarter cd command. Supports all major shells.

Stars35,984
Forks801
Last commit10 days ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub