Agent-Manager: A Tmux TUI for Running Claude Code, Codex and OpenCode

70 pointsposted 6 hours ago
by yoanwaidev

51 Comments

hamaluik

2 hours ago

There seem to be a lot of these sorts of tools popping up but it’s not clear to me the added value they bring in over using plain tmux (or any other “normal” session multiplexer).

Can someone who uses one of these agent-specific multiplexers share their experience and reasoning for reaching for / building these? What makes this better than a normal multiplexer? I am asking in earnest; I just don’t understand but I want to.

taude

3 minutes ago

- I get OS level notifications when the agent is ready.

- I don't need to use TMUX's wonky keyboard shortcuts

- I moved off of TMUX anyway, when ssh-ing into remote servers became 'not a thing'

- automatic coding session management, like auto resume, layout manamgement, etc. out of the box, without setting up TMUX, which could be a wormhole for some, by the time you fix mouse scrolling, cut/paste, etc...

I'm currently using CMUX, and been pretty happy with it it at this time, but loving the evolution of all these tools

ymir_e

2 hours ago

I've tested out just about every tool like this, and ended up coding my own, it is really minimal though.

The primary reason people reach for these tools are two to three reasons:

1. Tmux does not natively show agent statuses of agents / notify you when one needs input. Helpful when you have a huge list of small things to fix: I just spin up N agents in parallel to handle all of them, then I go over and review.

2. Tmux does not handle worktree handling. If you wanna make changes in parallel you cannot have two agents make db migrations at the same time. The way to solve for this is to have them work on two different worktrees with separate environments, ports etc.

3. Tmux tree view is not super beautiful, especially for viewing agents.

I built this as a tmux plugin since I don't really want to opt-out of tmux as a whole, especially since I like my keybindings there.

https://github.com/Ymirke/tmux-agent-switcher

petesergeant

2 hours ago

This looks nice, but I think a screenshot or three in the README would help bring it to life better

nico

37 minutes ago

I’ve been using herdr lately and before that I was using zellij and before that tmux and before that gnu screen

For me the main advantage of herdr is that when I have the codex integration activated, herdr will keep track of the codex session ids and automatically restore them after restart

With the other multiplexers I had to create a separate tool that would save/restore layout/tabs/panes/session ids. And I had to run it manually. With herdr it just works, almost out of the box

Oh, it’s also very nice that you can create groups of tabs, so it’s easier to organize if you have more than 3-4 terminal sessions open (I usually keep at least 3 tabs, each split into an agent pane and a zsh pane)

And lastly, mouse scroll support is a lot better. I’ve had many issues with scrolling codex’s output. tmux and zellij’s scrolling wouldn’t play nicely with codex’s output, but herdr seems to work very well

irfn

9 minutes ago

yeah herdr has completely replaced my tmux usage

tiahura

29 minutes ago

herdr seems more stable than psmux/tmux for windows.

dhruvmittal

2 hours ago

I've been using herdr for a couple of weeks. The only real advantage is that it makes the agent status glanceable in the sidebar, which can be nice if you don't want to cycle through your tmux panes to check if something's blocked or complete. Other than that, it's kind of just tmux (which is nice, I like tmux).

andai

an hour ago

I added a hook to Claude and Codex where they play a frog ribbit sound when they're done cooking.

I should probably download different types of frog sounds for different agents though.

kstenerud

2 hours ago

I built yoloAI, which is a sandboxer so it uses tmux to keep the agent alive inside. Since I can just reattach to them or use VS code tunnels, I don't really have a need for a multiplexer, though.

skinfaxi

2 hours ago

My main reason for herdr over tmux is the priority queue of agents requiring intervention.

aghuang

3 hours ago

How does this compare to something like herdr which does all of this?

https://github.com/herdrdev/herdr

darcyparker

2 hours ago

I tried herdr recently, and I missed many tmux features I really liked.

tmux has a better `prefix-[` mode where you 1) can do visual selection using line/block mode 2) you can use `o` to switch to other side (just like vim) 3) it pauses/freezes the state of the output so you have time to capture

In herdr, its very basic and incomplete if you're a vim/nvim/tmux power user. And if you're in a TUI that shows some text and then hides it, its hard to do the selection in herdr before it disappears.

To give herdr credit, I did like it's `prefix-e` which opens the history in vim so you can you real selection utils.

As I was looking at herdr, I found there many other solutions that were like it built on the more robust tmux. I am still evaluating, but there are plenty of solutions that have hooks to observe what's going on in agents in other panes/windows like herdr.

I like the Primeagen's `tmux sessionizer` style solutions for nvim to work with git worktrees that each agent may be in. And I like the tmux-agent-sidebar.

phito

an hour ago

Same here, I do not see the point of herdr if you're already using tmux. It's very easy to add hooks to your favorite harness to display a notification in tmux when it's done working.

lakardion

2 hours ago

yes exactly my thought. They're quite the same, a feature more a feature less

mark_l_watson

3 hours ago

This looks really good, but for me the timing of seeing agent-manager is bad: I read about the similar Herdr on HN several days ago and I have completely changed my dev setup for the better.

I have always been a traditional simple command line tool kind of developer (I am an old man, old habbits die hard!) but I recommend at least a one day experiment with tools like agent-manager and/or Herdr that integrate tools like Claude Code and OpenCode into an integrated work environment.

I have been hacking on my own Emacs based agentic coding and work environment (so much fun!) but my recent experience with Herdr has been much more productive.

Anyway, the docs for agent-manager look good, I look forward to reading HNer’s experience with it.

urnicus

2 hours ago

Thanks for sharing your experience with Herdr! I've been considering taking the plunge for a few weeks - going to do a one day experiment today.

lakardion

2 hours ago

do so! I'm quite happy with how it works. I'm using it with Ghostty and it works flawlessly. I have OOM from time to time but that is just me doing too many things. Never had I had any UI issues with it, and the UI showing the current agent status separately from the workspaces themselves is really useful

aranelsurion

3 hours ago

Do you know how does Herdr compare to native “claude agents” view?

luckystarr

2 hours ago

Shameless plug for my project, which is a bit different.

I had the problem of crashing terminals due to OOM kills and wanted to switch to a more lightweight terminal. Also I had too many of them and couldn't find the right one any more.

I thought, why not build one yourself. The result:

https://github.com/ThePixelPilgrim/kabelsalat

It has GTK tabbed, (almost) transparently tmux-backed terminals (so quitting or crashing the app and starting it up again restores the state) in colored, named groups.

I recently added Wayland app embedding to run Chrome side by side with the terminal, local to each group, but this is still a bit shaky.

Would be nice if someone would test drive it and give me some feedback. :)

lucianmarin

3 hours ago

Isn't this what https://www.superlogical.com/ supposed to accomplish?

figmert

3 hours ago

yes but if you don't create a company you can't get funding.

pbjerkeseth

an hour ago

You don't need funding or teams to make these types of tools anymore, they are all basically engineering as marketing for running agents in the cloud, or some other value add/funnel into something that could make money.

codex(or whatever they're calling the bundled desktop experience) = selling inference

claude code = selling inference

conductor = selling hosted agents

superlogical = selling... something

I recommend everyone build their own. It's fun, you'll learn a bit, and assuming you work as a software engineer the dogfooding is built in. I built ouijit as my own example of this: https://ouijit.com & https://github.com/ouijit/ouijit (note that I am not trying to make money, just free as in libre AND beer)

kaydub

2 hours ago

I'm going to be blunt. I don't care about any more AI tools.

meitham

2 hours ago

Claude comes with very nice hook-api you can use it to customise notifications and allow tmux window to blink or to come to the front when Claude needs your attention

igor_nast

3 hours ago

Nice, but I love my agentic IDE app. I prefer normal gui over terminal. Good luck!

meitham

2 hours ago

Normal GUI runs local. I have mosh running from Blink on my iPhone to my server and I can continue months long session of AI

chrismatic

4 hours ago

How is this different from https://github.com/asheshgoplani/agent-deck ?

cpursley

4 hours ago

These types of responses are always so low value, they should be auto filtered out. How is Claude Code different than Codex, how is x different from y, etc. Read the repo and figure it our for yourself, good grief.

hakunin

3 hours ago

Because of the way humans learn, and everyone’s reference point being different (e.g. I know this, I don’t know that), this is very valuable if the author can provide a good explanation. That’s why there are books/docs like “rust for rubyists” and similar. I love finding these explanations later. Not everything needs to be researched yourself if you can get a clear/concise answer from the person trying to share/excite/get feedback on their project.

LexSiga

3 hours ago

also - not everything needs to be unique. I think that is a leftover of some VC mind washing "you need a moat!". Many things can be great, and do somewhat similar things.

fleetfox

2 hours ago

At that point this who submission should be auto filtered out since there are dozen of these and they are barely distinguishable except for couple of opinioned choices.

petesergeant

3 hours ago

“How does this differ from”…

For all of these tools, now, there are many. After I built my own agent sandboxer[0] I went so far as to create a site dedicated to 36 other similar projects / approaches: https://pleasedonotescape.com/

0: https://github.com/pjlsergeant/byre

cobolcomesback

an hour ago

OPs tool is not a sandboxer and isn’t like the other projects in your list. OP is an agent multiplexer, of which there also are many similar projects, but not a sandboxer.

mkl

2 hours ago

This is great! It would be really helpful if it had some measure of the number of users (stars?) and a contributor count. It's pretty hard to determine which of these projects are going to stick around. Total length of time under active development and percentage of code committed by agents would also be informative.

petesergeant

2 hours ago

But that would reflect poorly on my own project ;-) More seriously you're absolutely right, I'll see if I can find some time this weekend to get that done

colesantiago

an hour ago

Stars are a very very poor metric to measure against.

There are projects that have no stars that may be great and projects that have a high star count and are absolute garbage (because you can fake stars)

I tend to look at the commits, contributors, closed/open issue count ratio and the changelog.

skeledrew

3 hours ago

Finding it a bit wild that I've been working on something somewhat similar for a few weeks now.

pistoriusp

3 hours ago

I had the same experience, but someone calmed me down by saying "we're all working on solving this problem."

rob

2 hours ago

As the great Nas once rapped:

    No idea's original, there's nothing new under the sun
    It's never what you do, but how it's done

skeledrew

3 hours ago

Yeah I guess so. At least the feature sets are also fairly diverse; putting them all together would create a whole other beast.

robgough

2 hours ago

I'm seeing a lot of this across all sorts of apps right now. We're at a sort of cambrian explosion point for software.

I too built my own equivalent of this (belfry.robgough.net). I take it as a good thing, we're all using these tools and coming to similar conclusions.

I suspect over time it'll settle down, once we've gotten comfortable with the new ways of working and found the new normal.

hnlmorg

2 hours ago

I’ve been working on something like this for a few years. Literally.

And I’ve noticed that my hobby project went from being a niche toy to something everyone was independently building almost overnight. My guess is that AI now makes it trivial for people to get started.

In any case, I since decided it would be better to focus on building my tool for myself rather than releasing it, like I was originally planning to do.

217

2 hours ago

cmux.com

adamas

2 hours ago

Everybody has a TUI for running Claude Code these days, huh?

reverius42

2 hours ago

Am I the only one who prefers a full on GUI (eg Claude Desktop)?

yoanwaidev

6 hours ago

I run three or four coding agents at once and the part that eats my time isn't the coding, it's that I can't tell what state any of them is in without tabbing through every terminal. One of them is usually sitting on a permission prompt I never saw.

agent-manager is a Go binary on top of tmux. No config file, no daemon, no server. Every agent shows up in one list with a live status, grouped by the project it's running in. Status comes from reading the pane, so adding a CLI is a few lines of regex in a toml file rather than an integration.

The keystroke I use constantly is space: press it on an agent, type, enter, and the prompt lands in that agent's pane without attaching. Press it on a project row and you get a new agent already working on what you typed. ctrl+r opens what an agent changed as whole files with the diff highlighted, and a comment left on a line is sent back to that agent as a prompt.

Sessions are plain tmux sessions, so quitting the manager leaves everything running and v reattaches a session with its conversation intact.

I built it for four agents and most days I use it with one. Still rough in places, and I'd like to hear what breaks for you.