# FAQ

## Why isn't Atuin recording commands in my IDE's terminal?

IDEs like RustRover, PyCharm, VS Code, and others often start non-interactive shells that don't source your shell configuration. This means Atuin's hooks never get installed.

To fix this, configure your IDE to start an interactive shell (for example, `/bin/bash -i` instead of `/bin/bash`).

See [Shell Integration and Interoperability](guide/shell-integration.md) for detailed instructions.

## How do I exclude certain commands from my history?

Use the `history_filter` option in `~/.config/atuin/config.toml`:

```toml
history_filter = [
    "^secret-cmd",
    "^ls$",
]
```

You can also exclude commands by directory with `cwd_filter`, or prefix individual commands with a space.

See [Excluding Commands from History](guide/excluding-commands.md) for more options.

## How do I remove the default up arrow binding?

Open your shell config file, find the line containing `atuin init`.

Add `--disable-up-arrow`, e.g.:

```shell
eval "$(atuin init zsh --disable-up-arrow)"
```

See [key binding](configuration/key-binding.md) for more

## How do I remove the default question mark binding for Atuin AI?

Open your shell config file, find the line containing `atuin init`.

Add `--disable-ai`, e.g.:

```shell
eval "$(atuin init zsh --disable-ai)"
```

## How do I edit a command instead of running it immediately?

Press tab! By default, enter will execute a command, and tab will insert it ready for editing.

You can make `enter` edit a command by putting `enter_accept = false` into your config file (`~/.config/atuin/config.toml`)

## How do I delete my account?

**Attention:** This command doesn't prompt for confirmation.

```shell
atuin account delete
```

This will delete your account, and all history from the remote server. It won't delete your local data.

## I've forgotten my password! How can I reset it?

We don't currently have a password reset system. As long as you're still logged
in on at least one machine, it's safe to delete and re-create your account.

## I'm not using sync — why is Atuin connecting to `api.atuin.sh`?

That's the update checker. At most once per hour, Atuin checks
`https://api.atuin.sh` for the latest release, and lets you know if you're out
of date. It's a version lookup — no history or personal data is involved.

To turn it off, add this to `~/.config/atuin/config.toml`:

```toml
update_check = false
```

With the [update check](configuration/config.md#update_check) disabled and sync
not set up, Atuin makes no network requests of its own.

If you'd rather the code wasn't in the binary at all, build from source without
the default features:

```shell
cargo build --release --no-default-features --features client,daemon,clipboard
```

This compiles out the update checker, the sync commands, and AI.

## I didn't set up sync, and now I have to reinstall my system!

If you have a backup of `~/.local/share/atuin`, you can import it by:
1. disabling Atuin by commenting out the shell integration; for example, for bash it's `eval "$(atuin init bash)"`
2. copying the backup to `~/.local/share/atuin`
3. reenabling Atuin
4. setting up sync!

## Alternative projects

If you don't like Atuin, perhaps one of these works better for you:

- https://github.com/ddworken/hishtory
  - written in go
  - also provides synced history
- https://github.com/cantino/mcfly
  - uses a small local neural network for search
  - only local history
