jig now supports herdr
jig adds herdr support: a more expressive multiplexer for managing multiple agent sessions and connecting over SSH. tmux remains supported.
For the last five years I've been a massive fan of tmux! I didn't tend to reach for it in quite the same way that others have; integrating it as part of their daily driver, setting up expansive panes and control panels, etc. But I did love it for setting up dev environments and running tasks on remote machines via ansible -- I thought of a few tricks that made this a lovely pattern for running end to end testing and benchmarking for some projects I worked on.So when I was thinking through the first iteration of jig, and wondering what was the best way to spawn terminals for my coding agents to run in, I naturally reached for tmux. This worked great for a while; I could easily SSH into a machine from my laptop or phone and scroll through what work was being done by my proto-software factory thingy, and my daemon could easily send commands and keystrokes in order to drive claude code and codex. However the UX left much to be desired; navigating tmux is a challenge to say the least, and I wanted some basic organization to make it easier to wrangle the 5+ coding agents I tend to run in parallel these days. For a second I thought about building a better multi-plexer -- I did after all build jig with the idea that people would want to mix and match and bring their own mux ... why not build my own? But after I thought about it, kicked the tires a little, I stepped off that ledge and found herdr instead!herdr is a lovely little multiplexer that makes herding (hahah) multiple agents at once a breeze. Instances of coding agents launched within herdr panes are grouped into tabs and workspaces, making it very easy to navigate across many running agents with ease. It also offers first class SSH support; rather than having to first SSH into my host and then attach to a TMUX pane, I can connect to my running server on my dev machine directly from my laptop with a single command (I am sure you could set something like that up with tmux as well, but I am lazy and wanted to try a new thing). It's also just a darn good standalone tool, regardless of whether I use it with jig or not -- I often find myself wanting to run long-running ad-hoc agent tasks while I am out and about, and herdr makes it easy to background and then check in on that work (again, I know you can do that with tmux as well, but herdr makes that even easier!).I was optimistic that perhaps herdr was so good it made jig obsolete, and I could stop maintaining this project (haha just kidding), but it seems for now to merely act as a superior mux, while I still use jig to do all the orchestration, context building, and worktree management (herdr I think has worktree features too, but I do not use them).
Using it with jig
With herdr installed, select it as the backend on that machine:
jig config mux herdr
The choice is per-device. tmux remains supported and is still the default, so there's nothing to change if you're happy with it.
Docs at jig.krondor.org, source at github.com/krondor-corp/jig.