Show HN: Corgi, a helpful {agent, terminal} multiplexer

Posted by eiopa 4 days ago

Counter140Comment47OpenOriginal

Hey everyone,

Inspired by Herdr, I've built an agent multiplexer that I've been using as my daily driver for a few weeks now.

I think I improved on the concept in a few ways, focusing on the ergonomics I always wished I had:

I show you what the agents are up to, along with a running feed of their activity. There's also a simple shortcut (F1) to go to the next unread agent.

I use multiple accounts, so I've added unified launcher for Codex/Claude Code/Pi. Theres some careful ergonomics there: fast search and resume over sessions, inline usage tracking etc.

Many small quality of life improvements to the terminal experience: - Links can be copied with a click, so no need to drag-select over many lines - cmd+v just pastes images (even on SSH) - images have a thumbnail preview. - Built-in CPU/Memory/GPU usage tracking, broken down by workspace

I assume you have access to cheap inference (Luna/Haiku/etc). It just reuses the agents to organize things for you: what is this http link? what is this worktree about? what is each agent doing? It's small but it made my environment feel more cozy.

On a personal note, I've been on a frustrating sick leave for a while now. I created Corgi to challenge myself, and see if I can go back. The answer is more mixed than I had hoped, but I am happy with the result and thankful for the experience.

I hope you like it! a few friends & myself have been using it for a few weeks and it's been pretty nice. There's still a lot to improve and some rough edges, so feedback would be greatly appreciated.

Thank you :)

Comments

Comment by JakeSc 3 days ago

Looks awesome! Will give it a try. I've built something similar, just open-sourced it:

https://exawatt.ai

I'm big on agent ergonomics. Cool to see what others are doing in the space.

Comment by eiopa 3 days ago

Thats very kind of you :)

Hope you like it!

For the website, it would be helpful to have either a screenshot or a "sandbox" thing so I can play with it a bit

Comment by sthimons 3 days ago

Having Tom Cruise's likeness in the footer of your site is just asking to be sued

Comment by manume 3 days ago

Haha, I immediately thought the same thing when I saw it!

Comment by antouank 3 days ago

Great effort, thank you so much.

There are some very nice features there. And more polished/modern than herdr for sure. Would love to be able to use it as a daily driver.

Cannot switch to it though, mainly because, from what I understand, it doesn't sync/connect with other machines like herdr does. As in, seamlessly. Theme-ing (light/dark) adaptation seems a bit clunky as well. And huge TS files in the source code are not encouraging for how this will scale, or how many bugs will come up.

Still, I appreciate sharing your work with everyone. Thank you.

Comment by eiopa 3 days ago

Thank you for your kind words!

I work off of several machines, and the lack of native remoting has been frustrating for me so it’s the next big thing to add :)

Can you share the theme clunkiness you’re seeing? I tried to avoid having another theme system for users to config, but maybe these adaptive tricks won’t quite cut it.

My email is toasty.tal@gmail.com

The huge ts files are indeed concerning, but in practice are more resilient than I had expected. They do eventually break down though, and I have been refactoring the systems as they reach their limits. (the last one was a breaking up agent providers into modules, motivated by wanting to support Pi and OpenCode)

Comment by xfalcox 3 days ago

I've been using herdr and this looks like a v2 of it. Will give it a try.

Comment by gillesjacobs 3 days ago

Testing it out, looks good, it does seem to have some repaint/flicker bugs. I was running a customized simple Tmux sessions tabs with agent harness updates over AgentPulse hooks but this might replace that.

Let's see if I can add in some of required version control/git tooling. Might have some PRs incoming for you soon.

Comment by eiopa 3 days ago

Ooh can you get a repro on those repaint/flicker bugs?

I do have some very basic git tooling in there but would be awesome to beef it up :)

Comment by troupo 3 days ago

> cmd+v just pastes images (even on SSH)

This is such an useful feature and I'm surprised so few tools bother to implement it.

Comment by zeugmasyllepsis 3 days ago

I plan to look into this deeper today, but truth be told I saw the little animation at the top of the page and paused.

Throwing the ball and watching this little character run was truly a delightful interaction. For whatever part you had in its creation, thank you.

Comment by eiopa 3 days ago

Thank you for your kind words and so happy you liked it!

I put a lot of small touches like that throughout the app. It just makes me feel cozy inside haha.

Comment by dewey 3 days ago

I know naming is hard, but there's another YC company with that name from a recent batch: https://www.ycombinator.com/companies/corgi-insurance

Comment by nlitened 3 days ago

You will be delighted to discover it's also a dog breed!

Comment by dewey 3 days ago

Slightly different namespace.

Comment by pokpokpok 3 days ago

Been using this for about a month, for me it’s been a great replacement for cmux with good simple design

Comment by rhuss 2 days ago

Looks great, thanks for sharing!

One question: Have you thought about a voice relay that uses e.g. a local Whisper model ? I found the system-level dication mode of macOS quite unreliable, so have a homegrown own solution (via a Zellij plugin and a running voice relay). I wonder, is this a too-special use case or something people or something generally useful ?

Comment by SeoFood 2 days ago

[flagged]

Comment by frumiousirc 2 days ago

> cmd+v just pastes images

Can I use normal X11 text selection with mouse button-1 and pasting with button-3?

In the end, failure to handle basic X11 select/paste is what keeps me away from herdr and tmux.

Comment by aryanthakor 3 days ago

I've been using herdr + omp for my agent sessions, I really like the prefix key and how easily I can edit it, does it have the similar prefix? Looks promising I will definitely give it a try. Thank you very much :)

Comment by eiopa 3 days ago

There's a herdr-like keymap, and I even migrate your workspaces, tabs, panes and live processes!

I haven't used OMP before. Let me take a look :)

Comment by robsalasco 3 days ago

please add it to brew, I don't like to use bash scripts https://nocurlbash.com/#en

Comment by bmacho 3 days ago

OTOH I'd encourage anyone who thinks that curl bash is a good idea to keep distributing their stuff via curl bash.

Comment by esafak 3 days ago

I'm glad someone made this site! Another good registry is https://github.com/aquaproj/aqua-registry

Comment by eiopa 3 days ago

Yeah I am not a fan of curl bash either, but installing via most package managers (brew, npm etc) isn’t much better, since most of these skip sandboxing rn.

Maybe I am missing something, but the second you run the code, it has the same powers and risk profile as a bash curled from the internet. Maybe something about having explicit versioning?

(as an aside, I think this will change very soon…)

Comment by mikemcquaid 3 days ago

Homebrew is heavily sandboxed and has been using the macOS sandbox for the best part of a decade, long before many other package managers did.

We also offer a .pkg installer and other installation options so curl | bash not needed for install that either.

Comment by eiopa 3 days ago

ok I read up on the sandbox. IIUC, this applies to the installer/formula part. The app itself is still unsandboxed.

I can see that it closes one vector of attack (attacking the install script serving), but beyond that the user still runs the binary outside a sandbox.

I feel that the binaries themselves, both directly and indirectly (supply chain attack) are the elephant in the room.

Any thoughts on that? I always wished the cli stuff I install from Homebrew was locked down by default, but it's not practical with today's computer systems since it kills usability.

Anyway, big fan of Homebrew. Looks like I can't submit a formula to core until I get more traction on GitHub (stars/forks/watchers). Otherwise I have to go to taps which takes away a lot of the benefits of being on homebrew-core iiuc.

Comment by eiopa 3 days ago

TIL! Thank you :)

I’ll take a look then, as I am unsure how sandboxing will interact with this system since it does a few unusual things

Comment by 3 days ago

Comment by pantelisk 3 days ago

Brilliant work! Testing it now

Comment by BElluu 3 days ago

Windows will be supported in the future ?:)

Comment by eiopa 3 days ago

It works indirectly via WSL2!

Last time I tried Windows though, coding agents were pretty finicky on native Windows for some reason. Maybe this gap is closed now though!

If you have the tokens to spend, please give it a try. I am curious to see how well it will work. The toolchains it uses, Bun & Zig, do work there, and I think most of the system tricks have Windows equivalents

Comment by linsomniac 3 days ago

When I first saw this I though "Meh, I'm happy with Herdr", but then I saw "paste images, even over SSH" and I've gotta try it. I also REALLY like the website where you can interact with the example screenshot, that's <chefs kiss>.

However (and I know connecting is on the road map), is it possible to have multiple local connections? That's core functionality for me, I run Herdr in one terminal on my workstation, and on my laptop I ssh in (actually "wezterm connect") and run a "herdr attach" so I can access it both from my Mac and my desk. I've never gotten around to trying the herdr native connect from my Mac because that works so well.

Comment by Lord_Zero 3 days ago

How much of this could be plugins to herdr?

Comment by eleventen 3 days ago

Probably very little. Herdr’s plugin system is quite limited and immature compared to something like Pi. I love herdr and use it daily but it has its limits.

Nice to see people experimenting. I’m not really an early adopter but hopefully the good ideas get picked up by herdr

Comment by gonenyarom 1 day ago

[flagged]

Comment by preetam960 1 day ago

[flagged]

Comment by rudratoshs 3 days ago

[flagged]

Comment by alexellisuk 3 days ago

[flagged]

Comment by skyofilands 3 days ago

[flagged]

Comment by h164654156465 2 days ago

[flagged]

Comment by mustafaraja 3 days ago

[dead]

Comment by Salparvezml 3 days ago

[flagged]

Comment by elvisgodevelop 3 days ago

[flagged]

Comment by manume 3 days ago

[flagged]

Comment by aryanthakor 3 days ago

This really helpful, I always spend long time looking for agent tools, this will really help. It already has few tools i use, thank you very much!

Comment by manume 3 days ago

Glad you find it useful! Let me know if there is anything missing, tools or features.

Comment by pang_claw 3 days ago

[flagged]

Comment by syngrog66 3 days ago

its existed for a few weeks (and was vibe coded, I assume) and... you're announcing it to the entire world?

Comment by dang 3 days ago

Why not?

Comment by Jaxkr 3 days ago

Bless you dang, you keep the spirit of this website alive and fight back the always-encroaching cynicism of the world.

Comment by syngrog66 3 days ago

counterpoint: why?

;-)

Comment by justinwarner 3 days ago

To share with others. It takes more effort to post this unconstructive comment than to let others enjoy it.

Comment by syngrog66 2 days ago

by that logic, every fart, burp and sneeze should make the HN front page, and be shared with the entire world. And I'm not exaggerating much because clearly large portions of 2026 socmedia are approaching that if not already there. Many Reddit forums are going to hell from a lack of standards for minimum quality, novelty or signal value. "Look at this stick figure I banged out in a few seconds just now, guys!" posted into the input feeds of millions/billions around the world, worsening the world that much more.

Comment by justinwarner 1 hour ago

I can say then. I enjoyed the post. So don't ruin it for me. Thanks!

Comment by dang 2 days ago

That's not the logic. The logic is: we're trying to optimize for intellectual curiosity. See https://news.ycombinator.com/newsguidelines.html and https://hn.algolia.com/?dateRange=all&page=0&prefix=true&sor....

If a fart, burp, sneeze, or sequence of curmudgeonly outbursts could ever be intellectually interesting, they would be on topic. The odds of that are obviously low.

But there's no reason why a new project and/or an AI-generated project could never be interesting. It's true that many aren't; but many X are uninteresting for any X.

Since those are the reasons you gave for objecting to the post, it's your dimissal, not justinwarner's response, that went against the logic of the site. In addition, you broke a number of the HN guidelines—for example: "Please don't post shallow dismissals, especially of other people's work. A good critical comment teaches us something."

Would you mind reviewing https://news.ycombinator.com/newsguidelines.html and sticking to the rules when posting? You've unfortunately been breaking them in other threads as well.

Comment by crossroadsguy 3 days ago

At this point any coder that forgot (or rather deliberately chose not to) to tell their agent

    'oh btw, add the light theme as well and maybe read the system's, if that's not such a bother of course'
isn't worth the time, and they probably didn't bother about the 'a' of accessibilty/ux in the first place anyway, neither is their tool no matter how famous it is or would become.

Comment by eiopa 3 days ago

There's a built-in theme called "Animal Style" that adapts to your terminal's existing theme by picking up & extending its palette, and specifically tries to adapt to light themes as well :)

It works ~alright in light themes, but not as well considered as the default one yet which is why it's not the default.

Can you give it a try?

Comment by crossroadsguy 3 days ago

I was talking about the website.