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.
Now I’m interested. Does it have basic feature parity? How does it compare to tmux in your experience?
On the note of libghostty it does get me very excited about the new multiplexer thing Hashimoto is building with 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.
But if you don't do any agentic work, Herdr has 0 value vs. tmux.
I just use tmux with multiple ghostty sessions and I have different Claude code sessions behind different tabs and panes and work like that.
What am I missing out on that justifies now using a normal terminal+tmux anymore?
If it can communicate with the agent, it can be used to drive the agent - to send it tasks, and communicate the status of those tasks.
And so Herdr - and Superlogical, and others, is a tool which leverages PTY ownership and terminal protocols to allow orchestration of coding agents across vendors using their CLI surfaces.
* agentic inbox [see which agents are waiting for your input/working/idle etc] * agents can read, spawn, send-input etc other herdr panes * makes cross harness orchestration / communication easier
fwiw I liked herdr initially but bounced after like a week because ghostty + notifications + harness extensions gave me enough that it wasnt worth learning the new thing.
https://github.com/hiroppy/tmux-agent-sidebar
Has been pretty nice
If you put it in a sandbox than herdr can no longer see it, can it?
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.
It will be good to get the remote feature in there though.
Anyways, Herdr looks powerful - will try it soon. One thing I find missing in every single one today, is that they do not allow using a different AI account based on the workspace/project you are on. It would come in handy in case of shared family machine.
I have 2 machines and laptop linked together and running things have never been easier.
Edit: oh neat! Its self editing.
termux+mosh is fine, but especially on a phone I'd love a slightly more intuitive (or really, efficient) UI. Especially as mosh breaks touch/mouse input on the remote host.
I've never understood the point of the desktop GUI harnesses to run TUI (or at the very least, primarily text-based) programs anyway, but perhaps they're better for onboarding less tech-savvy users.
Tui-in-guis like orca are nice mostly because of sensible keybinds without prefix or leader
I use it only with tailscale.
Probably a good idea if you work with sensitive data (and you’re already on Zero Data Retention)
It's getting very difficult to keep up with all the agent harnesses coming out. I love ai but wow its hard to keep up.
It's not a harness -- it's really more like a tmux for agents.
A harness is what does the model loop, tool calls, etc
herdr does none of this. It’s really just a tmux/terminal geared towards organizing harnesses like Claude Code or Codex CLI
It’s a really great approach because you can use whatever cli you want, or even a mix.
herdr is great, and the original runs-in-a-terminal vision was cool, but at least on OSX it has a ton of selection management bugs that are pretty sucky.
I've been scripting tmux for a while now, and it's not the greatest. And when I have a bunch of opencode sessions rolling along often my tmux could usage is smoking. I'd be happy to try other things. But I'd way rather get into something with protocols, that is open to play.
At work I do much of my work on a ec2 box via ssh with herdr
took all of installing it on windows and setting up my mac as an SSH machine to see the slop all through the UI. i'll just wait for rex's windows client i guess.
ignoring ALL the AI/agent features, herdr has been a decent replacement for tmux with saner defaults
so much so that i'm reaching for installing herdr instead of tmux and i would like to not be locked to a "desktop app" for it
Thank you for proving my point.
One (emacs) gets millions in donations via the FSF and the other get little to no money or donations for being "free software" from the start despite both of them being "free software".
[0] https://github.com/herdrdev/herdr/blob/a57b97285c3308fbdcc16...
But for Herdr specifically? Probably not. There are tons of similar free alternatives and even vibe coding your own is very easy with all the open source code of both herdr and all the alternatives available.
That is not the question I am asking.
> But for Herdr specifically? Probably not.
So no then.
That is why they went for VC money since the author knew that donations weren't enough to maintain it in the open.
> There are tons of similar free alternatives and even vibe coding your own is very easy with all the open source code of both herdr and all the alternatives available.
Why would I waste tokens vibe coding something that would go unmaintained in 6 months (because it is "free") over a properly funded project that will last much longer than that?
The cost of maintenance is never "free".
Herdr is...open source? and is also compatible with the free software principles. So where is the "lock in"?
You have not answered how will Herdr (and others) fund themselves to maintain the project without some form of sustainable funding without VC funding?
Not that I support VC funding per se, but without meaningful donations to support the maintainers, this is usually what they end up doing.
Herdr Studio - https://news.ycombinator.com/item?id=49652188 - Sept 2026 (20 comments)
Connecting the machines - https://news.ycombinator.com/item?id=49612818 - Sept 2026 (35 comments)
Herdr now connects to multiple servers with a single client - https://news.ycombinator.com/item?id=49602323 - Sept 2026 (3 comments)
Herdr is joining Y Combinator. The runtime stays open - https://news.ycombinator.com/item?id=49201003 - Aug 2026 (189 comments)
Herdr: One terminal to rule them all - https://news.ycombinator.com/item?id=48756578 - July 2026 (178 comments)
Herdr: Agent multiplexer that lives in your terminal - https://news.ycombinator.com/item?id=48714802 - June 2026 (110 comments)
herdr is by far the most polished tool in its category. Software geared towards agents is usually vibe coded -- and you can tell. There will be bugs and edge cases and it feels like no thought/care was put into it.
herdr doesn't feel that way to me. The marketing/landing page definitely has LLM-isms, but the application itself is very stable and well thought out.
A true UI is the next logical step and they seem to have done the obvious things. The one surprising bit that nobody seems to be talking about (yet) is the entire UI looks like its controlled via "recipes", so you can customize the UI in ways that you couldn't with traditional software: https://herdr.dev/layouts/
I hope this means an official mobile app is on the horizon!
For example, I wanted to be able to hide chats from providers when my usage is out for the 5h/weekly period
I'm not sure how they're doing this considering it seems to be written in Rust
I don't really understand why they would turn this into a company. I become suspicious of products that raise a lot of VC money, implying that they expect a unicorn-ish valuation, where I don't see them being able to justify their valuation via obvious monetization techniques (e.g. selling a classic license for a GUI app where you get updates for some period of time, usually a year, and then you get to keep the software, but no longer get updates, just in case people forgot how things worked before subscriptions).
That usually implies something like selling cloud subscriptions, vendor lock-in, or selling data. I'm happy to be wrong, but it's just an extremely common pattern. And as an aside, I know there's an impulse to monetize everything, but I think we should probably fight that impulse.
I wonder how much they move towards becoming the systemd of agents (IN A GOOD WAY THOUGH)
Can't speak to this, but I like that I didn't feel like I needed to try an alternative. It just did exactly what I needed it to do.
That said - I couldn't find a way to move a pane to a new tab. I can swap panes within a single pane (select -> right click -> swap with focused pane), but I can't find a way to do it between tabs. Maybe it's a skill issue. Anyone have any ideas?
Some things might require a non-trivial workaround, but a coding agent will also happily build and test it for you.
There's 30 million of these and they all look basically identical.
IMO it’s a great idea in theory but there are too many rough edges.
This space seems to be heating up, everyone wanting to build the single pane of glass for agentic work.
There are many ways to do what herdr does, like tmux, and rex, but in a nutshell:
You launch cli things (claude code, cli tools etc) anywhere inside a herdr process. On your own laptop you magically stay connected to all of them and can monitor, send commands etc. And those processes can talk to each other and control each other too if u want!
For a single person with herdr+tailscale, you can make your own evolving software thingamajig across all the possible computers u have access to (pls don't call it a factory, we didn't call your fingers a factory in the dinosaur days did we).
[1]: https://www.8090.ai/ [2]: https://steve-yegge.medium.com/welcome-to-gas-town-4f25ee16d...
p.s if someone from cloudflare reads this, would love to have a herdr process in a worker so it appears on my laptop as a thing i can do stuff with. while idle it goes dormant, i send a keystroke and it wakes up, stays awake for a bit.
p.p.s herdr team if u read this can you have a built in so i can instantly launch a vm in one of the many provide a instant vm (or sandbox or whatever the cool kids call it these days). I have been using the railway TS sdk to quickly spin up and throw away sandboxes, but why not just integrate <choose-your-sandbox-provider> in herdr and that is one way to charge money - pay herdr or provide my API key for vm/sandbox provider. Bonus points if it can sleep and charge less. Sort of like fly's sprites but more awesome.
I have multiple projects running in different locations/timezones - so I don't often need to have an agent running on a pc elsewhere - but just being able to smartly use herdr (also using rex) to set up a persistent service on those computers removes all the friction which used to exist with ssh keys and other things.
So I could do all these things before, tools like herdr make it easier, smoother.
Now tmux and ssh keys enabled all this before. So in a sense, nothing new here. but its a bit like dropbox - i used rsync back then, dropbox just made it easier to setup sharing and use without thinking.
I'd also _much_ rather do my development on a persistent, always-on host so I can switch what computer I'm using for a head or turn off my computer and drive home while Claude works overnight.
don't quite understand how typing it into a popup instead of an agent makes it revolutionary
But this sort of theming specifically is something that was experimented with a couple decades ago and given up because people wanted simplicity and consistency instead. It’ll be exciting if LLMs reverse the trend.
To me this is a valid signal.
Anyway, the best comment I could find is that one here where even the main dev doesn't know the direction .. https://github.com/herdrdev/herdr-app/issues/63#issuecomment...
Lack of vision and fragmentation is concerning
It works great so far. I can just ask it to update its layout whenever i think something better is possible. I wont be going back, but the one thing that might change that is a mobile app.
I have more faith in team behind Rex so not putting the time in for Herdr.
I have its local server and an instance of the alpha linux server on my cloud based dev box, hooked up via my tailnet.
I've played around with the iOS client a bit, but haven't had the need to do terminal stuff from my phone.
They both follow the same "gui with a cli to manage the engine which owns the PTYs, has some interaction protocol, wraps coding agent interfaces, and you can connect to remote machines" model.
Unfortunately they are both GUI only atm and so I'm still using herdr-tui over ssh until it breaks or we get a tui surface.
I love the current model, where I can use the tui in ghosttty or wezterm or iterm, or pop an ssh session, and if it makes sense there's a gui version for whatever device I'm using. It's like magic, I'm free to do whatever from wherever. Forcing a GUI feels like them asserting ownership or control. Now I need their mobile app if i want to develop remotely, etc. I recognize the irony, the core is open- I'm free to develop against it - but we all know that realistically only a handful will and those will lag. Also i am sure that GUI is first because that's where the users are. Eh.
Currently I am not switch to it because I just have my own app talk to the herdr daemon via my apps builtin tailscale and it works great
edit: nevermind I see it presents a console rather than wrapping the agent with a native GUI. This won't work well on high latency connections.
So eventually I removed everything other than autossh.
Seeing as how many people are building similar things I'd love to share more. Maybe wanna ad each other respectively to the repo's ?I can share some of my benchmark results
So my biggest requirements are around making isolation between environments convenient but safe from supply chain attacks .
I wonder what usecase you were optimizing for
Rather than for network performance I'm using iroh because I don't want to need a direct network path to the machines running my agents. Yeah I have Tailscale but that's more work to set up and I don't want my app to depend on users have a TS network.
Orca is a bit heavy in asking you to define projects / worktrees up front. Anything you do, even quick edits starts with a worktree. Projects get their own modal and file browser before you start working. Herdr just lets you cd, mkdir, get going. But it's also worktree aware and organizes them under your repo when you do create them.
While it's not "agent-first" thanks to rich MCP I often use direct terminal control from one orchestrator agent to drive another one, and I haven't seen any generic solution like that.
Since I'm moving my work VM yesterday I even started working on ssh persistence using planted cross-compiled PTY host library. If anyone's interested check it out, I expect to roll it out within a week or so.
But Herdr app addresses both issues. I don't need to reconnect, and it has a diff tool that allows me to review and commit. Looking forward to work with it!
I’m more worried about the auto-on telemetry, gives a sense of “we don’t bother asking”.
I'm currently using Zed as my main "agent orchestrator" and IDE because it handles various simultaneous agents quite well, using different harnesses. I'm especially a fan of the diffs for code review and the ability to easily highlight code and add it to context. The way it handles worktrees and git is also nice, IMO.
It doesn't see the sessions in my already-running remote herdr server, you cannot access the Herdr App remote sessions from your mobile phone (previously you could via SSH client like Termius).
Heeler has a PR open to target the new core, but no sign anyone is working on a tui for it :(
First two sentences give zero information what it does. Third one is useful but i think many harnesses do it?
Continuing:
> A new kind of agent workspace. Native and terminal first, with nothing between you and your agents. Every part of it is a plain folder your agent can rewrite, and every agent keeps running when the window is gone.
Okay, more of the same. Let's press on.
> Your agents run agents. And hear back.
> An agent hands work to helpers and keeps going. When they finish, their reports land in its input. No copy-paste between windows: herdr-core carries the messages.
Are there modern harnesses that don't do subagents/subthreads/whatever the same way?
---
There are some interesting bits but the vibed copy is for me offputting and a sign even the author might not understand what he made.
tmux is definitely usable but moving between workspaces/repos can be annoying if youre managing mahy many things at once. and difficult to organize. more over having agents manage other agents via tmux can lead to garbled input/output
i havent used codex. claude subagents i think arent the right comparison - the closer comparison would be claude managed agents. but i imagine one reason herdr might be better would be that you’re not stuck in the anthropic ecosystem
Is Codex, Claude Code mismanaging when no tokens left? Or any other specific reason?
What about together? Can you reasonably do agent to agent interactions across harnesses? herdr makes that easy.
One of my favorite reasons for using herdr is what I'll call "everything is a pane". Running a new agent? Runs in a herdr pane. sshing into a system? Runs in a herdr pane. Anything that runs in a herdr pane, your agents can interact with. I will often do things like ssh into a system in one pane, and then ask pi in another pane to help me do diagnostics on that system. It never has to try to ssh in directly in the harness with my credentials, it just sends keyboard input to the pane, and reads the content of the pane. I can watch the interactive session as it goes by.
Another workflow that I have sometimes is I'll kick off some work in an agent, and instead of making a new sub agent, I'll actually make a new parent agent if I get worried that it's going down an unnecessary rabbit hole. I'll tell the new agent something like "periodically watch the agent in pane X, it is working on Y but I am concerned that it is losing track of its tasking. Periodically review what it's doing, and make sure it doesn't go off the rails. If it does seem to be going off the rails, give it guidance to bring it back on track" and that seems to have helped.
herdr is very flexible, but it shines when you are working with multiple projects, with multiple worktrees, and multiple agents within those projects.
1. herdr uses workspaces to help organize tabs. Conceptually, a workspace probably maps to a project, but it doesn't have to.
2. herdr has native worktree support, and can create a nested workspace per worktree with a keyboard or CLI command. It can check out worktrees for you
3. herdr identifies agents across tabs and workspaces and pulls them out into an extra navigational pane. It shows the status of those agents (e.g. idle, working, waiting, done), and can play a sound when they change state. This helps you track multiple agents across multiple projects and quickly switch to them when they need help without needing to remember "claude is running in space 2, tab 3"
4. herdr integrates with your agents, which can control herdr's UI and rename tabs based on their status.
5. All this is scriptable via the herdr CLI, and agents are very good at it. But it also has full mouse support, if you're new to multiplexers its very easy to start interacting with it.
It's just a few bash scripts enabling agents to message each other. Works with the desktop apps as well so you could have a Codex or Claude desktop app orchestrate tmux sessions.
https://github.com/notaharness/plugins/blob/main/orchestra/R...
Agent status detection. Single view over local and remote agents. /herdr skill that lets agents list other agents, peek into their panes, send keys (yes, you can make a lot of it work with tmux and some elbow grease, but herdr provides nice cli/api for it and works out of the box) including to remote ones.
In my mental model, subagents are also different from top level agents in tabs: subagents are only great as temporary workers you never want to interact with.
This is an unlock, because these companies will (prob) never build this feature.
I used to hit usage walls with CC/Codex harness using native subagents
With herdr I delegate some work to another herdr pane and it runs Claude code, codex, opencode, pi, whatever model is appropriate and has usage
Each space is persistent contains persistent terminals like tmux, so disconnections do not affect them.
At the end of the day it's a UX question. I could do the same as this (I use Paseo, similar thing, less obviously vibed copy in the docs if that helps...) with a bunch of terminal tabs and pi, and maybe some skills and scripts to help out, but it's a pain to manage.
They're unironically echoing the infamously iconic 1980 Calvin Klein jeans commercial starring a perversely sexualized underaged 15-year-old girl:
"You want to know what comes between me and my Calvins? Nothing." -Brooke Shields
https://www.youtube.com/watch?v=GiQUMypDNoE
Except in this case, the romanticized "nothing" between you and your autonomous agents is a massive, multi-layered stack of legacy Unix abstractions, sockets, remote procedure calls, historic terminal emulators, escape codes, pseudo-tty device drivers, and modern infrastructure slop.
The reality of what is actually sitting between you and your agents:
- A herdr-core background daemon handling JSON-RPC IPC messages.
- A crates/ghostty-sys Rust FFI layer binding against libghostty-vt.
- A hardware-accelerated GPU rendering pipeline drawing terminal cell glyphs.
- A legacy Unix PTY subsystem providing master/slave pairs and terminal line discipline.
- An ancient mountain of VT100/ANSI escape codes and termios settings, with resize requests traveling through IPC and SIGWINCH signals notifying Unix terminal applications.
- A structured agent-status protocol carried by yet another terminal escape sequence, OSC 7501, then exposed through JSON-RPC.
"Nothing" says unfiltered, raw human intimacy quite like reading output from a pseudo-terminal file descriptor and watching \x1b[31m error logs cascade through an SSH pipeline and "pseudo" TTY device drivers.
Wrapping this tech in branding that sounds like a sultry, pseudo-erotic pitch is peak HBO Silicon Valley. TTY literally stands for teletype. We are supposedly building the frontier of autonomous artificial intelligence, yet our cutting-edge orchestration layer still routes interaction through abstractions inherited from noisy, electromechanical printing telegraphs of the 1960s. It's not a "native home for your displaced AI souls" -- it's an over-engineered wrapper shackled to the physical heritage of paper rolls and mechanical carriage-return timing: 110-baud Teletypes, separate carriage-return and line-feed operations, and terminal null padding conventions devised to give machinery time to move before the next character printed.
That said the rest of it is, well, complicated. Of course you can come up with something cool and new that doesn’t require all that plumbing, but how do you get people to use it?
If you build a beautiful piece of software that no-one uses, what was the point?
If agents didn’t exist, would herdr provide a nice UX as a terminal multiplexer?
Please correct me if I'm wrong.
Please lmk what the advantages are!
2004 - The Big Bang (Flickr) - Co-founder Caterina Fake wants to buy Flicker.com, but an offline beer brewer refuses to sell it. Out of options, she suggests dropping the "e". It works, and Flickr is born, instantly setting a precedent that typos equal modernism.
2005–2006 - The YC Copycat Flood - Paul Graham launches Y Combinator, and the application form might as well have had a checkbox for "did you delete a vowel to look disruptive?" Scribd (YC S06) drops the E because buying a real dictionary noun requires actual revenue. Twitpic and Pixlr emerge to capture that sweet, sweet pre-seed funding. Even Twitter originally launches in 2006 as "Twttr" because the actual domain is owned by a bird enthusiast. (They buy the "e" back six months later once they realize they look ridiculous).
2007 - The Peak of Style - Tumblr launches, proving the vowel-less trend isn't a passing fad but the official language of the new internet. Dropping the "e" becomes shorthand for "we have venture capital, a minimalist mobile interface, and absolutely no monetization strategy."
2009 - The Aggressive Pivot - Grindr launches. The convention branches out of pure utility and enters cultural lifestyle apps, cementing "-r" as the universal suffix for a location-based mobile service. Every YC batch now features at least three "Uber for X" startups named after a mangled verb.
2011–2012 - The Saturation Point - Companies like Blendr and Fiverr continue the trend, but the public begins to push back. Every SaaS tool on Hacker News looks like a typo. Critics and users start pointing out how incredibly annoying it is to vocally explain a business name ("It's called Taskr... no, without the E").
2015–2018 - The Death Kneel & Corrections - The joke gets old. Brand consultants begin labeling creative misspelling a "cardinal sin". Startups realize they are losing millions of organic visitors to the properly-spelled domains owned by domain squatters. The internet enters the "-ify" (Spotify, Shopify) and "-ly" (Bitly) eras, completely abandoning the broken suffix because pg wrote an essay saying missing vowels hurt your SEO.
2019–Present - The "Adult in the Room" Era - The trend is officially dead. Modern YC startups pivot toward ultra-literal names (The Browser Company) or aggressive, serious abstract words (OpenAI, CoreWeave) to pretend they are enterprise-ready AI infrastructure rather than a wrapper wrapper wrapper.
Postscript - The Ultimate Regression - The convention reaches its absolute, braindead rock bottom with Elon Musk. After burning 44 billion dollars to buy Twitter just so he could unban literal Nazis and amplify white supremacist conspiracy theories to the front page, he rebranded the entire platform to "X.com". It turns out "X" is just "Ex" without the penultimate "e" -- a fittingly hollow, single-letter monument to a sociopathic tech bro who couldn't innovate a functional name if his taxpayer subsidies depended on it.
But I’m using my own “IDE” inspired by herdr and pane, worktrees down the left and panes on the right, but besides terminals the types of panes also include:
- A native Obsidian-level markdown editor with support for comments that agents can see - Claude code with chrome for context size, and a custom UI that looks more like the web - A diff viewer with support for comments - A browser - Can tag worktrees with PRs and issues - Everything (except the browser) works seamlessly over ssh
It’s all zig+gtk, all vibe coded. I rarely open vscode these days.
Maybe the herdr plugin ecosystem can support all this too. I kinda want to get out of the business of hand-polishing UI.
> The goal is to link your machines with a single command and stop worrying about how to reach them. Herdr Cloud would provide the middleman layer for those connections.
https://herdr.dev/blog/connecting-the-machines/
The examples of this new desktop app already use a hc command which could hint at that service (my guess)
Tasks like switching between multiple sessions, copying and pasting, viewing diagrams/web pages, and resuming remote sessions I have found significantly more polished when using the desktop app equivalents.
This alone is worth trying the Desktop app
I'm sure I'll get bored once the novelty wears off
I'm already a happy user of herdr CLI (or whatever it is called. I use it from Ghostty)
Especially when it's an AI agent tool and an AI agent can probably make an EXE installer in a few minutes.
at the end of a day I started to one-shot some simpler workflows; e.g. I already have various scripts for spinning work-trees, setting up deps, picking up a clearly defined issue, waiting for some delayed CI checks, doing reviews with different agents, workflow waiting for another workflow etc. - without passing context between
I started using dagu fairly recently so the rest is kinda a ball of various ruby scripts at this point so I can't give any good pointers here as I have no idea yet xd but overall I have some deterministic stuff (pick up some issue, setup worktree first, resume if crashed, implement, review and so on) build around just running claude/codex (one-shot)
there are _tons_ of solution for orchestration so it's really hard to choose from tbh; I gave herdr try this morning and ported my scripts so it works with their desktop app - looks kinda nice I guess; dagu have scheduler as well which is cool, but connecting different machines to single herdr server also looks kinda fun... so I guess I will continue experimenting until then ;)
edit: damn scripting herdr with mods open new window of opportunities, I dig it!
And seems like they use "herdr-core" (hc) to actually run sessions instead of herdr server, that flushes events only every 100ms -- the agent output is quite jittery with that.
Meh :/
Spent a while searching for how to change this.
Finally asked the claude session inside of Herdr how to do this.
Burnt through like 10% of my weekly limit with Pro writing a mod to do this.. which seems kind of like overkill
I built my own app based on what I liked with herdr and added some other things, but with this new herdr update I might switch back https://svall.dev/