Lancio di cmux su Show HN

Abbiamo pubblicato cmux su Show HN il 19 febbraio:

Eseguo molte sessioni Claude Code e Codex in parallelo. Usavo Ghostty con diversi pannelli divisi, affidandomi alle notifiche native di macOS per sapere quando un agente aveva bisogno di me. Ma il corpo della notifica di Claude Code dice sempre solo "Claude is waiting for your input" senza contesto, e con abbastanza tab aperti, non riuscivo nemmeno più a leggere i titoli.

Ho provato alcuni orchestratori di codice ma la maggior parte erano app Electron/Tauri e le prestazioni mi infastidivano. Preferisco anche semplicemente il terminale, dato che gli orchestratori GUI ti vincolano al loro workflow. Quindi ho costruito cmux come app macOS nativa in Swift/AppKit. Usa libghostty per il rendering del terminale e legge la tua configurazione Ghostty esistente per temi, font, colori e altro.

Le principali aggiunte sono la barra laterale e il sistema di notifiche. La barra laterale ha tab verticali che mostrano il branch git, la directory di lavoro, le porte in ascolto e l'ultimo testo di notifica per ogni workspace. Il sistema di notifiche cattura le sequenze del terminale (OSC 9/99/777) e ha un CLI (cmux notify) che puoi collegare agli hook degli agenti per Claude Code, OpenCode, ecc. Quando un agente è in attesa, il suo pannello riceve un anello blu e il tab si illumina nella barra laterale, così posso vedere quale ha bisogno di me tra divisioni e tab. Cmd+Shift+U salta al più recente non letto.

Il browser integrato ha un'API scriptable. Gli agenti possono catturare l'albero di accessibilità, ottenere riferimenti agli elementi, cliccare, compilare form, eseguire JS e leggere i log della console. Puoi dividere un pannello browser accanto al terminale e far interagire Claude Code direttamente con il tuo server di sviluppo.

Tutto è scriptable tramite il CLI e l'API socket: creare workspace/tab, dividere pannelli, inviare sequenze di tasti, aprire URL nel browser.

Al picco ha raggiunto il 2° posto su Hacker News. Mitchell Hashimoto lo ha condiviso:

Il mio commento preferito dal thread HN:

Hey, this looks seriously awesome. Love the ideas here, specifically: the programmability (I haven't tried it yet, but had been considering learning tmux partly for this), layered UI, browser w/ api. Looking forward to giving this a spin. Also want to add that I really appreciate Mitchell Hashimoto creating libghostty; it feels like an exciting time to be a terminal user.

Some feedback (since you were asking for it elsewhere in the thread!):

  • It's not obvious/easy to open browser dev tools (cmd-alt-i didn't work), and when I did find it (right click page → inspect element) none of the controls were visible but I could see stuff happening when I moved my mouse over the panel
  • Would be cool to borrow more of ghostty's behavior:
    • hotkey overrides
    • command palette (cmd-shift-p)
    • cmd-z to "zoom in" to a pane

johnthedebs

Sorprendentemente, cmux è diventato virale in Giappone:

Traduzione: "Sembra buono. Un'app terminale basata su Ghostty progettata per non perdersi quando si eseguono più CLI come Claude Code in parallelo. Il pannello in attesa di input riceve una cornice blu, e ha il proprio sistema di notifiche."

E semi-virale in Cina:

Un'altra cosa entusiasmante è stata vedere persone costruire sopra il CLI cmux. sasha ha creato un'estensione pi-cmux che mostra info sul modello, utilizzo dei token e stato dell'agente nella barra laterale:

Tutto in cmux è scriptable tramite il CLI: creare workspace, inviare sequenze di tasti, controllare il browser, leggere le notifiche. Parte della filosofia di cmux è essere programmabile e componibile, così le persone possono personalizzare il modo in cui lavorano con gli agenti di codice. Lo stato dell'arte degli agenti di codice sta cambiando rapidamente, e non vuoi essere vincolato a un orchestratore GUI rigido che non riesce a stare al passo.

Se stai eseguendo più agenti di codice, prova cmux.

cmux GitHub star history showing growth from near 0 to 900+ stars after the Show HN launch