Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Rust
  3. atuin

atuin

MITRustv18.21.0

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

Visit WebsiteGitHubGitHub
31.6k stars958 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

Stars31,564
Forks958
Contributors0
Open Issues308
Last commit10 hours ago
CreatedSince 2020

Tags

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

Built With

S
SQLite
R
Rust

Links & Resources

Website

Included in

Rust56.6k
Auto-fetched 4 hours ago

Related Projects

BatBat

A cat(1) clone with wings.

Stars60,389
Forks1,643
Last commit3 days ago
fdfd

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

Stars44,334
Forks1,130
Last commit14 hours ago
nushellnushell

A new type of shell

Stars40,442
Forks2,244
Last commit1 day ago
zoxidezoxide

A smarter cd command. Supports all major shells.

Stars39,238
Forks891
Last commit8 hours 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