Different databases for different shells?


I am very new to Atiun, just installed it last week. I’m liking it so far, but I have what is probably a dumb question: is there a way to have different databases for different shells?

I only ask because I’m also fiddling around with nushell and its syntax is quite different from zsh/bash. Those two are close enough that most zsh commands would do okay in bash. But this:

ls | where type == file | sort-by size | reverse

just sort of has zsh say “what?”.

So I was wondering if there is a way to sort of “separate” the shells as far as atuin knows? (Aka don’t cross the streams :smile: )

Hey! Welcome to the community :slight_smile:

I am very new to Atiun, just installed it last week. I’m liking it so far

Glad to hear it!

Unfortunately right now there is not a good way to have different databases per shell. The way we’d like to implement this is to be able to store metadata about history items - env vars, shell, git repo… whatever. This can then be filtered on

It’s something I’m pretty keen to get sorted soon though!

1 Like

This sounds great. I can imagine there will be numerous use cases where this kind of more advanced filtering will be useful.

I already feel the need for being able to differentiate between multiple shells. Other than that, I could make use of this feature for setting various “command sets”, often used for certain types of development projects.

For example, I can set an env var PROJECT_LANG=Rust inside all Rust projects and easilly share all Rust-related commands (all cargo commands, perftest commands, etc.) across multiple Rust projects. Similarly, I can have PROJECT_LANG=C++ and share commands specific for C++ projects and so on.