I've been using Atuin for at least a year and a half, and I think it's definitely the tool I'd been looking for the most in my entire dev career. It has made me much more confident with my hazy memory. Before it I'd struggle consistently to remember most of my recent commands.
bck-i was always a bit obtuse to me and I honestly never grokked it until I had Atuin wired into my workflow (hard) and ran into bck-i instead when SSH'd.
Anytime a peer views my screenshare, they ask "what's the funny thing that makes you so fast". I then proceed to share, first and foremost, Atuin.
Thanks Atuin team! Would love to contribute someday with more time.
thibaultamartin · 25m ago
I second this wholeheartedly. Atuin is a joy to use and makes it so easier to find past commands. Thanks a lot atuin, and thanks to the colleague who recommended it!
ellieh · 32m ago
(dev here!) thank you so much! I love to hear things like this <3
lblume · 18m ago
Thanks a lot for your work!
moonshot5 · 39m ago
For zsh users who like this idea and don't want to have to worry about anything leaving the device (not to insinuate that Atuin is doing anything below board, I don't think they are) I built my own version of this for myself called raven:
Raven has no sync component, stores your history in a sqlite, and never tries to move data off the device. It has a similar / large overlap in features with Atuin.
Sharing here in case anyone else could benefit from it, it only supports zsh for the moment since that's what I use.
Atuin is great though!
ellieh · 33m ago
our sync is opt-in + optional, e2e encrypted, and self-hostable.
if that's not enough, you can disable all network features via a feature flag at compile time
if you don't care for sync, there are a bunch of other projects doing this (and supporting several shells), eg:
Is there a way to change the key binding of the search screen? I'm too attached to using the up key to recover the last command I used, and it's a little jarring to now have to click tab from the Atuin search interface. It adds a little friction each time I have to do this.
As an aside, most of my usage of history is to use the last few commands I used, and so seeing the entire history each time seems like an overkill.
I can't remember what my terminal was like before this. It's so fast, seamless and part of my day to day workflow. Solid open source project.
Tmpod · 27m ago
I see it also supports fish. That's been my shell for many years, it just works really well and, as far as I can tell (couldn't find a demo on their website), it doesn't add much to fish beyond syncing?
Has anyone used fish + autuin? What are your thoughts? I'm curious to know if it is worth the extra tool, maybe I should just try it :)
lblume · 18m ago
Wow, this is incredibly useful. I was just thinking "why can't C-r just work like fzf", but this is a much better approach of course.
tecleandor · 41m ago
If any of you is having problems with Atuin acting weirds or slow, and has a ZFS filesystem, there's a known problem with sqlite and ZFS [0]. There are a couple of workarounds [1] that are, either using `atuin daemon`, or creating an ext4 volume for the atuin storage.
I’ve been using it for more than a year and it’s already a must for me to install whenever I spin up a new server. Great piece of software!
pshirshov · 33m ago
The sync feature is great, though there are many oddities with search sort order, unnecessary terminal cleanups, odd timeouts, etc. In some aspects it's a big upgrade from fzf, in some aspects it's a downgrade.
nkko · 51m ago
Atuin has been a part of my dotfiles install.sh for the last two years. It became such an integral part of my flow that it became invisible. Prob not a good thing for them, but also a testament to how naturally it fits in.
leosanchez · 1h ago
TIL: You can also self-host atuin.
znanz · 35m ago
I have been using it for over 6 months self hosted, best feature is to be able to sync between all my machines. Really good to replicate my rsync across servers. And nothing leaves my private infrastructure. A breeze with docker.
I'm using fish + fzf atm but this looks better tbh.
yesbut · 11m ago
I'd never sync my shell history with a third party. The self-hosting option looks interesting, but anyone comfortable with syncing their shell history with a third party is severely lacking basic privacy literacy and underestimates the sensitivity of command history.
ellieh · 7m ago
All user data is e2e encrypted, but yes self-hosting might make you feel better about where your data lives
atuin is great been using ít for few weeks now. i like how configurable the TUI itself is. The only thing i wish it had was profiles.
drcongo · 49m ago
I recently switched to Atuin from McFly, and while McFly has been a solid performer for me for years, I love Atuin. Worth pointing out for others who care about such things as it's not made clear on this landing page, you don't actually need to register - if you don't need the sync, you can just use it without registering and it's still amazing, and if you do need the sync but don't like the idea of your history being stored on someone else's server, you can self-host the sync server too.
bananapub · 1h ago
I've been using it for a year or two, and it's great. it's also very easy to run your own instance of it.
bck-i was always a bit obtuse to me and I honestly never grokked it until I had Atuin wired into my workflow (hard) and ran into bck-i instead when SSH'd.
Anytime a peer views my screenshare, they ask "what's the funny thing that makes you so fast". I then proceed to share, first and foremost, Atuin.
Thanks Atuin team! Would love to contribute someday with more time.
https://github.com/tylersaunders/raven
Raven has no sync component, stores your history in a sqlite, and never tries to move data off the device. It has a similar / large overlap in features with Atuin.
Sharing here in case anyone else could benefit from it, it only supports zsh for the moment since that's what I use.
Atuin is great though!
if that's not enough, you can disable all network features via a feature flag at compile time
if you don't care for sync, there are a bunch of other projects doing this (and supporting several shells), eg:
- mcfly: https://github.com/cantino/mcfly
- resh: https://github.com/curusarn/resh
https://docs.atuin.sh/self-hosting/server-setup/
As an aside, most of my usage of history is to use the last few commands I used, and so seeing the entire history each time seems like an overkill.
> bindkey '^[[A^[[A' atuin-up-search
Works much better now!
Has anyone used fish + autuin? What are your thoughts? I'm curious to know if it is worth the extra tool, maybe I should just try it :)
--
I'm using fish + fzf atm but this looks better tbh.
We wrote some more about it here: https://blog.atuin.sh/new-encryption/