Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Atuin: Orientation

Offline-first shell historyTokio + SQLxRevision 202f6ad

Atuin records rich shell history locally in SQLite and optionally synchronizes encrypted records across machines. Its current V2 protocol is a generic record store used by history, key/value data, aliases, variables, and scripts.

local domain change → encrypted tagged record(host, index) → SQLite/WAL
                                      ↕ diff + pages
                              untrusted sync server
                                      ↓
                       rebuild local domain projections

Design thesis

Atuin treats the encrypted append-oriented record log as synchronization truth and local feature databases as rebuildable projections, so every machine remains useful offline and the server never needs plaintext.

  • Per-host, per-tag indices turn sync into tail comparison.
  • Typed builders make incomplete records and history entries harder to create.
  • Envelope encryption binds metadata to ciphertext before upload.
  • Sync is deliberately ordered today; correctness precedes parallel transfer.
  • Projection failures are isolated so one feature does not block the others.