## 1. Project Overview & Quickstart (atuinsh/atuin)

<hr/>



Atuin replaces your existing shell history with a SQLite database, and records
additional context for your commands. Additionally, it provides optional and
_fully encrypted_ synchronisation of your history between machines, via an Atuin
server.





As well as the search UI, it can do things like this:

```
# search for all successful `make` commands, recorded after 3pm yesterday
atuin search --exit 0 --after "yesterday 3pm" make
```

You may use either the server I host, or host your own! Or just don't use sync
at all. As all history sync is encrypted, I couldn't access your data even if
I wanted to. And I **really** don't want to.

## Features

- rebind `ctrl-r` and `up` (configurable) to a full screen history search UI
- store shell history in a sqlite database
- back up and sync **encrypted** shell history
- the same history across terminals, across sessions, and across machines
- log exit code, cwd, hostname, session, command duration, etc
- calculate statistics such as "most used command"
- old history file is not replaced
- quick-jump to previous items with <kbd>Alt-\<num\></kbd>
- switch filter modes via ctrl-r; search history just from the current session, directory, or globally
- enter to execute a command, tab to edit

## Documentation

- [Quickstart](#quickstart)
- [Install](https://docs.atuin.sh/latest/guide/installation/)
- [Setting up sync](https://docs.atuin.sh/latest/guide/sync/)
- [Import history](https://docs.atuin.sh/latest/guide/import/)
- [Basic usage](https://docs.atuin.sh/latest/guide/basic-usage/)

## Supported platforms

Atuin supports zsh, bash, fish, nushell, xonsh, and PowerShell. See
[Supported platforms](https://docs.atuin.sh/latest/support/) for the full matrix
and what each tier means.

## Community

### Forum

Atuin has a community forum, please ask here for help and support: <https://forum.atuin.sh/>

### IRC

We're also available via #atuin on libera.chat

### Discord

Atuin also has a community Discord, available [here](https://discord.gg/jR3tfchVvW)

# Quickstart

This will sign you up for the Atuin Cloud sync server. Everything is end-to-end encrypted, so your secrets are safe!

Read the [docs](https://docs.atuin.sh) for an offline setup, self-hosted server, and more.

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

atuin register -u  -e 
atuin import auto
atuin sync
```

Then restart your shell!

> [!NOTE]
>
> **For Bash users**: The above sets up `bash-preexec` for necessary hooks, but
> `bash-preexec` has limitations. For details, please see the
> [Bash](https://docs.atuin.sh/latest/guide/installation/#installing-the-shell-plugin)
> section of the shell plugin documentation.


# Related projects
- [Catpuccin for Atuin](https://github.com/catppuccin/atuin)
- [eshell-atuin](https://github.com/SqrtMinusOne/eshell-atuin)
- [mob (tiny creatures in your terminal)](https://github.com/bboynton97/mob)

Please open a PR for any others!

# Contributors

<a href="https://github.com/atuinsh/atuin/graphs/contributors">
  
</a>

Made with [contrib.rocks](https://contrib.rocks).

## 2. Official Technical Reference & Guides (atuinsh/docs)

# Atuin docs

This powers docs.atuin.sh - the unified documentation site for Atuin CLI and Atuin Desktop.

This site uses [MkDocs](https://www.mkdocs.org/) with the [Material theme](https://squidfunk.github.io/mkdocs-material/) and the [mkdocs-multirepo-plugin](https://github.com/jdoiro3/mkdocs-multirepo-plugin) to pull documentation from multiple repositories.

## Documentation sources

- **Atuin CLI**: Documentation lives in the [atuinsh/atuin](https://github.com/atuinsh/atuin) repository under `docs/`
- **Atuin Desktop**: Documentation lives in the [atuinsh/desktop](https://github.com/atuinsh/desktop) repository under `docs/`

## Local development

```bash
# Install dependencies
uv sync

# Run local dev server
uv run mkdocs serve

# Build the site
uv run mkdocs build
```

## Contributing

To contribute to the documentation:

- For Atuin CLI docs, submit PRs to [atuinsh/atuin](https://github.com/atuinsh/atuin)
- For Atuin Desktop docs, submit PRs to [atuinsh/desktop](https://github.com/atuinsh/desktop)
- For site-wide changes (navigation, theme, etc.), submit PRs to this repository