I was really pleased finding this last year, but I guess it's time to look for an alternative. I don't get why everything has to have AI shoved into it
Not to detract from your point, but I decided Atuin was feature complete enough for my liking over two years ago, and have been running the last v17 release ever since with zero problems.
You can still keep everything you like about the tool without issue, and to the devs’ credit, the sync server is some of the easiest software to self-host possible.
That's a poor argument that doesn't change the fact that any feature requires maintenance time and effort which for some users could be better invested in features they actually use, in improving overall stability, reliability, performance, etc. The more such unused features a product has, the less relevant it is for those users.
The question is, was adding "AI" to this product requested by most users, or was it done to tick off a marketing checkbox and capitalize on the hype?
Atuin is open source. You dont like their new release? Fork the previous repo, and customize it however you want. That's the whole essence of open source.
What stability, reliability, and performance problems are you hitting with Atuin?
I posted a longer comment upthread, but I’ve been self-hosting and running an old version for over two years now, and haven’t had any recurring problems on those fronts. It’s pretty damn stable software and everything they’ve been doing lately has just been extra features and gloss.
It's open source software, so this attitude of "the work hours have to be spent how I want them to be spent" feels rather icky to me.
There's also a very weak souled scarcity mentality. It feels like you are working to take umbrage, to come up with outrage. Some users do find these features good and useful. That should be celebrated. Demanding features not be present? That's so condescending.
OSS is not immune to enshittification, and, in fact, is prone to it. It's not entitled to have the opinion that a piece of software might be heading in the wrong direction. Paying for software doesn't somehow buy you this right. What's icky to me is the idea that the opinion of users who support the author financially is more valuable than of those who don't, which goes against the entire ideal of open source.
Besides, VC-funded OSS often prioritizes the needs of its shareholders rather than its users. If you find these features useful, that's great. But there's no reason that they should be universally celebrated. The authors might want to listen to all viewpoints.
Its also the Repo. There's a lot of AI-guided commits. I'm all for using AI in a reliable and safe environment, but letting Claude steer just leads to garbage
I took a look at the repo, but i didn’t see any garbage commits / evidence of sloppy vibe coding.
Care to elaborate? Also, don’t you trust that an author knows what they’re doing with AI in the same way as trusting them with their regular code writing skills?
So to be clear. You have no tangible complaints about the software or its quality, but you are dismissing it because of the potential for poor quality, because AI was assisting?
I looked at the repo and couldn’t even find an example, so it can’t be that many of their commits. But also: this is ridiculous. Whether the commit appears as done by Claude or not is a setting you can change. If they turned it off, you’d never even notice.
These are great developers and they’ve built an incredible tool. I use it a hundred times a day. It is very odd and dogmatic to think that because you saw a commit authored by Claude, whatever skills and qualities let them build something so good are now being thrown out.
Hmm might be great for some. I’m a Unix philosophy guy, one tool for one job. So far atuin was fine to be a better search history. Now it might be time to look for simpler alternative. Any suggestions? (I’m on zsh)
To be honest I find the things I do on my "work" laptop are different to the things I do on my "personal" laptop, and different again to what I do on my desktop machine.
Regardless of which machine I'm using at any given moment I appreciate having "endless history", and the ability to search/filter it. But despite that I don't think I need to actual sync that.
I'm sure there is value to be had from syncing and making all history unified, but it's never appealed to me particularly.
I have to ask -- why? Atuin has not gotten any worse at its core history search functionality. All of the new features are entirely opt-in. Why switch?
Because to me it feels like it gets more complex in ways I don’t like. It’s a matter of preference. To be honest had I not read about it I might have never noticed it but now I know and will probably go back to fzf.
not zsh .. plugging my bash script [1] (and gnome task bar UI) - to start a gnome terminal with a different named history file. [1]: https://github.com/appsmatics/gtsh-hist
If all you need is basic splits, sessions, and some simple templates/layouts (and like the convenience of knowing that tmux is widely available, and often installed by default) then you're fine to stay on tmux.
Zellij can do things like floating windows, contextual keybinding guidance (helps learn everything that can be done), and a more complex layout schema. You can disable all the UI eye-candy and switch to tmux-style bindings too.
It's worth trying out. I use both so that I can still function on systems without it.
Update: I gave it a try and it does exactly what I hoped. However one (minor) annoyance I immediately realized was that with `hex` enabled I will get this warning whenever I close the terminal window:
> The terminal still has a running process. If you close the terminal the process will be killed.
Hopefully there is a workaround for this (I'm using then Ghostty emulator).
I'm still looking forward to being able to only remember a command for a specific time. I currently block sensitive commands, which completely destroys the ability to just press the up arrow key to quickly edit the command. If we had like a timeout of 1 minute for sensitive commands, we could edit them and still make sure they are not persistent
Atuin AI sounds like a useful addition. The page suggests they're probably using hosted models:
We use the latest frontier models, which already do a good job of generating commands using well-known binaries and CLIs. On top of that, we integrate a dataset powered by man pages and command outputs to ensure you get the correct command first.
This is great, but does it mean we'll need to log in somehow? It doesn't seem reasonable to expect the project maintainers to pay for the tokens.
EDIT: I was unaware of Atuin's 'hub' which does things like sync your shell history across computers. I think they use the same sign-in as they already use for that: https://hub.atuin.sh/register
> On top of that, we integrate a dataset powered by man pages and command outputs to ensure you get the correct command first.
Also makes it sound like they're "providing that dataset", rather than generating that from the users computer. Wouldn't that mean it's potentially a mismatch between various versions of the software available? Not to mention some OSes will have a different version of some software available compared to others, how does it deal with those situations if they're shipping a dataset?
The Data Privacy paragraph would suggest otherwise.
> By default, Atuin AI knows nothing about your machine, other than the operating system and shell. This is the bare minimum required to generate a decent shell command.
> It will soon be able to ask you for access to more data - such as the current directory path, contents, git status, etc - but you must give permission first. This will happen in a similar way to existing agents, and be configurable to an even finer degree in your config file.
And my take! A fork of fish where any command that starts with > or a capital letter is fed to $fish_llm_command: https://github.com/breuleux/fish-shell. With Claude's help, that took all of 30 minutes to make.
Why does every tool on the face of earth try to add AI features ? Good tools are simple and orthogonal. If you want AI, there's already plenty of other tools doing it probably better.
I'm overall fairly disappointed by this announcement. This IMHO doesn't bode well
Yep, out of precaution i've never used their sync infrastructure, which I guess was reasonably cheap to run, but the moment you add LLMs to the mix it is obvious that they are in for the free VC money and are soon going to need a lot of investment to keep the lights on.
The thing I found frustrating was I wanted to merge changes with just files without their sync server (i.e. just import this other atuin sqlite dB) so I raised a PR to support that.
They closed it (which is fine) but there is no offline migrate alternative.
It's a shame, and fair enough, their project, but I don't think my wishes and the projects are very aligned.
I keep half meaning to move back to zsh-histdb (I think that's what it was called) but haven't found an impetus to.
I'll probably check if there's a file based sync option next time I switch machines and decide then.
About the "ai", the announcement is very vague. Is this incorporating a local model on device, something running on your infrastructure or a third party model like Claude? Because to me nowadays adding AI on anything usually means higher running costs equals sooner or latter enshittification.
Hey, thanks for responding. I guess I used the prototype then. Definitely don't remember anyone saying "this is a prototype" at the time, so I took the product at face value, and part of the reason I chose it was the fzf support.
I'm sure I recall some unhappy GitHub issues about the shift away...
And the algorithm isn't the value prop for me, not by a long shot. fzf's customizability takes the cake. And now the overall product is way too big and feature-ful for me. I want simple, unix-y software that clicks together like Lego.
You should be proud of the project's success for sure, it's just not for me!
I was really pleased finding this last year, but I guess it's time to look for an alternative. I don't get why everything has to have AI shoved into it
Not to detract from your point, but I decided Atuin was feature complete enough for my liking over two years ago, and have been running the last v17 release ever since with zero problems.
You can still keep everything you like about the tool without issue, and to the devs’ credit, the sync server is some of the easiest software to self-host possible.
It’s optional- you can choose to opt in or not.
That's a poor argument that doesn't change the fact that any feature requires maintenance time and effort which for some users could be better invested in features they actually use, in improving overall stability, reliability, performance, etc. The more such unused features a product has, the less relevant it is for those users.
The question is, was adding "AI" to this product requested by most users, or was it done to tick off a marketing checkbox and capitalize on the hype?
Atuin is open source. You dont like their new release? Fork the previous repo, and customize it however you want. That's the whole essence of open source.
What stability, reliability, and performance problems are you hitting with Atuin?
I posted a longer comment upthread, but I’ve been self-hosting and running an old version for over two years now, and haven’t had any recurring problems on those fronts. It’s pretty damn stable software and everything they’ve been doing lately has just been extra features and gloss.
It's open source software, so this attitude of "the work hours have to be spent how I want them to be spent" feels rather icky to me.
There's also a very weak souled scarcity mentality. It feels like you are working to take umbrage, to come up with outrage. Some users do find these features good and useful. That should be celebrated. Demanding features not be present? That's so condescending.
OSS is not immune to enshittification, and, in fact, is prone to it. It's not entitled to have the opinion that a piece of software might be heading in the wrong direction. Paying for software doesn't somehow buy you this right. What's icky to me is the idea that the opinion of users who support the author financially is more valuable than of those who don't, which goes against the entire ideal of open source.
Besides, VC-funded OSS often prioritizes the needs of its shareholders rather than its users. If you find these features useful, that's great. But there's no reason that they should be universally celebrated. The authors might want to listen to all viewpoints.
Its also the Repo. There's a lot of AI-guided commits. I'm all for using AI in a reliable and safe environment, but letting Claude steer just leads to garbage
I took a look at the repo, but i didn’t see any garbage commits / evidence of sloppy vibe coding.
Care to elaborate? Also, don’t you trust that an author knows what they’re doing with AI in the same way as trusting them with their regular code writing skills?
Using AI to code doesn't automatically mean bad code. Although I suspect the majority of AI code will be subpar.
So to be clear. You have no tangible complaints about the software or its quality, but you are dismissing it because of the potential for poor quality, because AI was assisting?
I’ve read and used some of the author’s software. I trust them to make good judgement of using AI.
Right, though looking at the release notes it seems like the AI part at least is opt-in... for now.
For now. But looking at the repo, they're already having commits done by claude.
I looked at the repo and couldn’t even find an example, so it can’t be that many of their commits. But also: this is ridiculous. Whether the commit appears as done by Claude or not is a setting you can change. If they turned it off, you’d never even notice.
These are great developers and they’ve built an incredible tool. I use it a hundred times a day. It is very odd and dogmatic to think that because you saw a commit authored by Claude, whatever skills and qualities let them build something so good are now being thrown out.
Edit: I found one: https://github.com/atuinsh/atuin/pull/3231
Please, tell me where the bad code is in that PR. I see 200 lines of extremely straightforward Rust and 500 lines of tests for it.
And this is bad why?
Hmm might be great for some. I’m a Unix philosophy guy, one tool for one job. So far atuin was fine to be a better search history. Now it might be time to look for simpler alternative. Any suggestions? (I’m on zsh)
I tried atuin and then switched back to fzf[0]. It's less features but that's not necessarily a negative.
[0]https://github.com/junegunn/fzf
Yup already using fzf for other things will probably just go back for search history too.
Fzf doesn't let you sync your shell history, though. I self-host an Atuin server so that I can share that history across my various machines.
To be honest I find the things I do on my "work" laptop are different to the things I do on my "personal" laptop, and different again to what I do on my desktop machine.
Regardless of which machine I'm using at any given moment I appreciate having "endless history", and the ability to search/filter it. But despite that I don't think I need to actual sync that.
I'm sure there is value to be had from syncing and making all history unified, but it's never appealed to me particularly.
Yeah, that's part of the "less features" I mentioned. I don't get any value from syncing shell history, but I can see why it's useful for some.
I also self host my own atuin server. It’s great.
I didn’t think syncing terminal history would be very useful until I tried it, but now I have a hard time when I don’t have it.
That was my experience. “Huh, what was that complicate thing I did on the database server?”
I have its search bound to ^r and use Fish shell’s own search for most things, with cross-machine search a keystroke away.
I have to ask -- why? Atuin has not gotten any worse at its core history search functionality. All of the new features are entirely opt-in. Why switch?
Because to me it feels like it gets more complex in ways I don’t like. It’s a matter of preference. To be honest had I not read about it I might have never noticed it but now I know and will probably go back to fzf.
You can try McFly [1] and Television [2]. I still prefer fzf.
[1] https://github.com/cantino/mcfly
[2] https://github.com/alexpasmantier/television
not zsh .. plugging my bash script [1] (and gnome task bar UI) - to start a gnome terminal with a different named history file. [1]: https://github.com/appsmatics/gtsh-hist
AI appears to be opt in
What here takes them over the complexity threshold?
Atuin is great. This, fish, LazyGit, and zellij are mandatory for me now.
what does zellij offer that tmux doesn't?
I love tmux and haven't had a reason to switch for a while, but have heard these new Rust based terminal tooling get really popular.
If all you need is basic splits, sessions, and some simple templates/layouts (and like the convenience of knowing that tmux is widely available, and often installed by default) then you're fine to stay on tmux.
Zellij can do things like floating windows, contextual keybinding guidance (helps learn everything that can be done), and a more complex layout schema. You can disable all the UI eye-candy and switch to tmux-style bindings too.
It's worth trying out. I use both so that I can still function on systems without it.
Wait, tmux doesn't have floating windows? I really thought it did...
A ton more conflicting keybindings.
I switched away from tmux a year or so ago due to one crash I kept getting, but thinking of going back. Really miss the simplicity.
It's hard to use in so many apps unless you lock the keyboard.
I’m baffled by how bitter and angry the comments are. Atuin is one of my favorite everyday tools and this release sounds great!
The PTY proxy looks pretty neat! Excited to give that a try.
Losing some of the scrollback was a minor nuisance that I kind of lived with until now.
Update: I gave it a try and it does exactly what I hoped. However one (minor) annoyance I immediately realized was that with `hex` enabled I will get this warning whenever I close the terminal window:
> The terminal still has a running process. If you close the terminal the process will be killed.
Hopefully there is a workaround for this (I'm using then Ghostty emulator).
I've always felt this fullscreen was too much for actual use. Eager to try it out.
I'm still looking forward to being able to only remember a command for a specific time. I currently block sensitive commands, which completely destroys the ability to just press the up arrow key to quickly edit the command. If we had like a timeout of 1 minute for sensitive commands, we could edit them and still make sure they are not persistent
zsh doesn't add commands that start with a space to stored history. So you can up arrow recall them but once you exit the session they're gone.
I really like this idea — might give an implementation a shot
Atuin AI sounds like a useful addition. The page suggests they're probably using hosted models:
This is great, but does it mean we'll need to log in somehow? It doesn't seem reasonable to expect the project maintainers to pay for the tokens.EDIT: I was unaware of Atuin's 'hub' which does things like sync your shell history across computers. I think they use the same sign-in as they already use for that: https://hub.atuin.sh/register
This part:
> On top of that, we integrate a dataset powered by man pages and command outputs to ensure you get the correct command first.
Also makes it sound like they're "providing that dataset", rather than generating that from the users computer. Wouldn't that mean it's potentially a mismatch between various versions of the software available? Not to mention some OSes will have a different version of some software available compared to others, how does it deal with those situations if they're shipping a dataset?
There is no way is it not generated on user computer.
"get the correct command first" and "shipping a [external] dataset" are incompatible.
The Data Privacy paragraph would suggest otherwise.
> By default, Atuin AI knows nothing about your machine, other than the operating system and shell. This is the bare minimum required to generate a decent shell command.
> It will soon be able to ask you for access to more data - such as the current directory path, contents, git status, etc - but you must give permission first. This will happen in a similar way to existing agents, and be configurable to an even finer degree in your config file.
Release notes have PR #'s but they aren't links. Would be great to linkify, so folks can more easily dive into bits that catch their eye.
atuin ai kinda reminds me of https://github.com/Myzel394/zsh-copilot (yes, that's by me :P)
And reminds me of my take: https://github.com/micahbf/halp
Excited to use atuin ai though, especially as it gets more features.
And my take! A fork of fish where any command that starts with > or a capital letter is fed to $fish_llm_command: https://github.com/breuleux/fish-shell. With Claude's help, that took all of 30 minutes to make.
All I want is auto complete for the commands on Windows. And none provides
Take a look at clink[1]. Or use PowerShell.
[1]: https://chrisant996.github.io/clink/
Why does every tool on the face of earth try to add AI features ? Good tools are simple and orthogonal. If you want AI, there's already plenty of other tools doing it probably better.
I'm overall fairly disappointed by this announcement. This IMHO doesn't bode well
It’s fine - I like the introduction of AI. It’s optional - if you don’t want it, turn it off or don’t use it
If you want VC money you need to put an AI spin on it.
AI features are the new Electron app. Welcome to the new hell, please finish installing your 10 different inference engines, one for each app.
As soon as a tool adds pricing, price increases or adds AI that's when it begins to be enshittified.
Why does this happen mostly?
Yep, out of precaution i've never used their sync infrastructure, which I guess was reasonably cheap to run, but the moment you add LLMs to the mix it is obvious that they are in for the free VC money and are soon going to need a lot of investment to keep the lights on.
The thing I found frustrating was I wanted to merge changes with just files without their sync server (i.e. just import this other atuin sqlite dB) so I raised a PR to support that.
They closed it (which is fine) but there is no offline migrate alternative.
It's a shame, and fair enough, their project, but I don't think my wishes and the projects are very aligned.
I keep half meaning to move back to zsh-histdb (I think that's what it was called) but haven't found an impetus to.
I'll probably check if there's a file based sync option next time I switch machines and decide then.
> They closed it (which is fine) but there is no offline migrate alternative.
If it helps, you can copy the history table from one db to another in 3 simple lines of sqlite. I’ve done it myself a few times with zero fuss.
It's MIT licensed software, Noone will turn off lights. Community can take over or fork.
[dead]
I was already turned off by their decision to remove support for fzf, which I use everywhere else. I'm done.
I’m not sure what you mean here - we never supported fzf, other than a super early prototype in like 2021
This release actually adds support for nucleo, which matches with the same algorithm as fzf and was a common request
About the "ai", the announcement is very vague. Is this incorporating a local model on device, something running on your infrastructure or a third party model like Claude? Because to me nowadays adding AI on anything usually means higher running costs equals sooner or latter enshittification.
Hey, thanks for responding. I guess I used the prototype then. Definitely don't remember anyone saying "this is a prototype" at the time, so I took the product at face value, and part of the reason I chose it was the fzf support.
I'm sure I recall some unhappy GitHub issues about the shift away...
And the algorithm isn't the value prop for me, not by a long shot. fzf's customizability takes the cake. And now the overall product is way too big and feature-ful for me. I want simple, unix-y software that clicks together like Lego.
You should be proud of the project's success for sure, it's just not for me!