Comment by flippant

10 hours ago

I switched to herdr this year after a decade of using tmux, and I haven't looked back since. Herdr is wonderful, not only because of the coding agent integrations, but also because it uses libghostty under the hood. So no terminal-emulator-inside-another-terminal-emulator shenanigans.

If you prefer GUIs, I can recommend herdr-gpui which connects to a herdr daemon. It has a bunch of goodies like remote phone pairing, and a built-in browser integration to send screenshots and notes to coding agents.

https://github.com/penso/herdr-gpui

But I’m already using ghostty. I installed herdr but made the mistake of launching it from within tmux and had no idea how to close it.

I then opened it somewhere else, but I had no idea how to interact with it. I also couldn’t get two other windows to “join” the same herdr session, so I gave up and went back to tmux.

For someone who has used screen / tmux for almost 30 years at this point, what does herdr do that tmux can’t?

I use Claude Code extensively. I also use plannotator extensively, which is how I found out about it.

  • It's all about agentic work. Tmux doesn't know what an Agent is. You use Pi, you use CC, you use Codex, ... they all have primary supports in Herdr with built-in integrations around each of these harnesses

    But if you don't do any agentic work, Herdr has 0 value vs. tmux.

  • From someone who also used screen and tmux for 30 years: 3 reasons why I switched to herder. They may not be relevant to you and in that case tmux is just great. One: visual indication which agent is working and which is waiting for an input. Two: native support for remote herdr sessions - in the same view. Three: it’s responsive and can be completely touch-driven through menus on a small iOS screen in Termius.

    • I was looking into Herdr too, but could not bring myself to switch away from tmux yet (there are a couple of shortcuts that I have in my workflow, which I can't config in Herdr). What I ended up doing was to use the tmux agent sidebar, which, with mouse support, I think does a lot of the same things already.

    • For me, the main reason is the remote sessions. I can copy and paste text and files in a remote session with no extra config, it's amazing!

  • The point about libghostty is that Herdr doesn't try to reimplement shell forwarding or emulation, instead it uses the same code your terminal already does. This avoids compatibility problems with more complex TUIs.

    Running `herdr` always opens the same session, the app is a just a UI for a server running in the background. But there is no reason to open it in multiple windows, the point is to manage all shells from inside it.

    Then you can from another machine do `herdr --remote xxx.local` (over Tailscale) to access the same session, or use `herdr machine add` to get your shells from all machines at once - I don't really use this part.

I've been using Zellij a long time and considered using Herdr, but the VC funding aspect scares me. I don't want to invest a bunch of time in a tool that's going to treat me as a product.

  • Same, but the cost of maintaining a fork fell through the floor in recent years. If a decent fork gains momentum, i can probably even stop spending tokens on mine.

  • It's open source so if that changes you can always fork? I already have some personalizations accruing on my fork.

  • I used Zellij in the past, it is also fantastic and intuitive product. I had issues with... I think selection and copying and pasting which made me abandon it as I was getting frustrated. Herdr has been wonderful and I've been using it for a while.

    • Pretty much the first thing I tried to set up with I heard about Zellij and decided to give it a shot a while back was how to scroll back and copy paste text without using the mouse, since that's one of the core features of tmux for me. If my recollection is correct, the closest thing that I was able to figure out was some sort of built-in way to open output in a vim buffer, with the info I found when googling basically saying that it was intentionally not something the developers felt like it was important to implement anything closer to tmux for. Maybe it's changed since then but I distinctly got the impression that it using it would force me to adapt to a bunch of new workflows that didn't resemble anything I had seen before, and it didn't really seem worth the effort.

    • I recently switched to Zellij with Ghostty and the selection/copy/pasting seems to work just fine. I previously used zellij and kitty and I would have issues.

> Herdr is wonderful, not only because of the coding agent integrations, but also because it uses libghostty under the hood. So no terminal-emulator-inside-another-terminal-emulator shenanigans.

Now I’m interested. Does it have basic feature parity? How does it compare to tmux in your experience?

  • I was able to have a language model configure herdr with the same bindings that I was using in tmux. It was a very easy transition from one to the other.

  • I started using it last week, the tui interface is very polished and it is mouse-friendly. It also allows you to configure the notification channels. Its a different beast from tmox, I'd say its quite more user-friendly and gives you a list of your running agents and their status directly on the interface.

I could not work without it anymore, such an easy solution for a common problem. Will definitely try out the app as well.