DEV Community

Alex Spinov
Alex Spinov

Posted on

Atuin Has a Free Tool: Replace Your Shell History With a Searchable, Synced, Encrypted Database Across All Your Machines

You SSH into a server and need that obscure awk command you ran last week on your laptop. Ctrl+R gives you fuzzy search on one machine. Atuin gives you a full-text searchable database of every command you've ever run, synced and end-to-end encrypted across all your machines.

What Atuin Actually Does

Atuin replaces your shell history with a SQLite database. Every command gets stored with context: working directory, exit code, duration, hostname, and session. The Ctrl+R replacement gives you full-text search with fuzzy matching, filtering by directory, host, or exit code.

The killer feature: optional encrypted sync. Your history syncs across machines using Atuin's server (or self-hosted), end-to-end encrypted so the server can't read your commands. SSH into any of your machines and your full history is there.

Supports bash, zsh, fish, and nushell. Written in Rust. Open-source (MIT). Self-hosted or Atuin Cloud (free tier: unlimited history, 1 sync key).

Quick Start

# Install
curl --proto '=https' --tlsv1.2 -LsSf https://setup.atuin.sh | sh

# Set up (adds to your .bashrc/.zshrc automatically)
atuin init zsh >> ~/.zshrc
source ~/.zshrc

# Register for sync (optional)
atuin register -u your-username -e your@email.com
atuin login -u your-username
atuin sync
Enter fullscreen mode Exit fullscreen mode

Now press Ctrl+R — Atuin's interactive search replaces the default:

> docker compose  # Type to filter
  2026-03-28 10:15 docker compose up -d           /projects/my-app    0   2.3s
  2026-03-27 16:30 docker compose logs -f api      /projects/my-app    0  45.0s
  2026-03-26 09:00 docker compose build --no-cache /projects/other     0  120s
Enter fullscreen mode Exit fullscreen mode

3 Practical Use Cases

1. Search by Directory

# Find commands you ran in a specific project
atuin search --cwd /projects/my-api

# Or interactively: Ctrl+R then filter by directory
Enter fullscreen mode Exit fullscreen mode

2. Search by Exit Code (Find Failed Commands)

# Find all failed commands
atuin search --exit 1

# What failed in the last hour?
atuin search --exit 1 --after "1 hour ago"
Enter fullscreen mode Exit fullscreen mode

3. Statistics

atuin stats
# Most used commands, average duration, commands per day
# Total: 15,247 commands
# Most used: git (2,341), cd (1,892), docker (1,203)
Enter fullscreen mode Exit fullscreen mode

Why This Matters

Shell history is the most underutilized developer tool. You solve problems every day with commands, but traditional history is ephemeral and local. Atuin makes your command knowledge permanent, searchable, and portable. The encrypted sync means your history follows you across machines without compromising security.


Need custom data extraction or web scraping solutions? I build production-grade scrapers and data pipelines. Check out my Apify actors or email me at spinov001@gmail.com for custom projects.

Follow me for more free API discoveries every week!

Top comments (0)