23 KiB
Denne oversettelsen ble generert av Claude. Hvis du har forslag til forbedringer, send gjerne en PR.
cmux
En Ghostty-basert macOS-terminal med vertikale faner og varsler for AI-kodeagenter
English | 日本語 | Tiếng Việt | 简体中文 | 繁體中文 | 한국어 | Deutsch | Español | Français | Italiano | Dansk | Polski | Русский | Bosanski | العربية | Norsk | Português (Brasil) | ไทย | Türkçe | ភាសាខ្មែរ | Українська
Funksjoner
VarselringerPaneler får en blå ring og faner lyser opp når kodeagenter trenger oppmerksomheten din |
|
VarselpanelSe alle ventende varsler på ett sted, hopp til det nyeste uleste |
|
Innebygd nettleserDel en nettleser ved siden av terminalen med et skriptbart API portet fra agent-browser |
|
Vertikale + horisontale fanerSidefeltet viser git-gren, tilknyttet PR-status/nummer, arbeidsmappe, lyttende porter og siste varselstekst. Del horisontalt og vertikalt. |
|
SSHcmux ssh user@remote oppretter et arbeidsområde for en ekstern maskin. Nettleserpaneler rutes gjennom det eksterne nettverket, så localhost bare fungerer. Dra et bilde inn i en ekstern sesjon for å laste opp via scp.
|
|
Claude Code Teamscmux claude-teams kjører Claude Codes lagkameratmodus med én kommando. Lagkamerater opprettes som native delinger med metadata i sidefeltet og varsler. Ingen tmux nødvendig.
|
|
- Nettleserimport — Importer informasjonskapsler, historikk og sesjoner fra Chrome, Firefox, Arc og 20+ andre nettlesere slik at nettleserpaneler starter autentisert
- Egendefinerte kommandoer — Definer prosjektspesifikke handlinger i
cmux.jsonsom startes fra kommandopaletten - Skriptbar — CLI og socket API for å opprette arbeidsområder, dele paneler, sende tastetrykk og automatisere nettleseren
- Nativ macOS-app — Bygget med Swift og AppKit, ikke Electron. Rask oppstart, lavt minneforbruk.
- Ghostty-kompatibel — Leser din eksisterende
~/.config/ghostty/configfor temaer, skrifttyper og farger - GPU-akselerert — Drevet av libghostty for jevn gjengivelse
- Tastatursnarveier — Omfattende snarveier for arbeidsområder, delinger, nettleser og mer
- Åpen kildekode — Gratis og GPL-lisensiert
Installasjon
DMG (anbefalt)
Åpne .dmg-filen og dra cmux til Programmer-mappen. cmux oppdaterer seg selv automatisk via Sparkle, så du trenger bare å laste ned én gang.
Homebrew
brew tap manaflow-ai/cmux
brew install --cask cmux
For å oppdatere senere:
brew upgrade --cask cmux
Ved første oppstart kan macOS be deg bekrefte åpning av en app fra en identifisert utvikler. Klikk Åpne for å fortsette.
Hvorfor cmux?
Jeg kjører mange Claude Code- og Codex-sesjoner parallelt. Jeg brukte Ghostty med en haug delte paneler, og stolte på native macOS-varsler for å vite når en agent trengte meg. Men Claude Codes varselstekst er alltid bare "Claude is waiting for your input" uten kontekst, og med nok faner åpne kunne jeg ikke engang lese titlene lenger.
Jeg prøvde noen kodeorkestratorer, men de fleste var Electron/Tauri-apper og ytelsen irriterte meg. Jeg foretrekker også terminalen siden GUI-orkestratorer låser deg inn i arbeidsflyten deres. Så jeg bygde cmux som en nativ macOS-app i Swift/AppKit. Den bruker libghostty for terminalgjengivelse og leser din eksisterende Ghostty-konfigurasjon for temaer, skrifttyper og farger.
Hovedtilleggene er sidefeltet og varselsystemet. Sidefeltet har vertikale faner som viser git-gren, tilknyttet PR-status/nummer, arbeidsmappe, lyttende porter og siste varselstekst for hvert arbeidsområde. Varselsystemet fanger opp terminalsekvenser (OSC 9/99/777) og har en CLI (cmux notify) du kan koble til agentkroker for Claude Code, OpenCode osv. Når en agent venter, får panelet en blå ring og fanen lyser opp i sidefeltet, så jeg kan se hvilken som trenger meg på tvers av delinger og faner. Cmd+Shift+U hopper til det nyeste uleste.
Den innebygde nettleseren har et skriptbart API portet fra agent-browser. Agenter kan ta overblikk over tilgjengelighetstreet, hente elementreferanser, klikke, fylle ut skjemaer og kjøre JS. Du kan dele et nettleserpanel ved siden av terminalen og la Claude Code samhandle med utviklingsserveren din direkte.
Alt er skriptbart gjennom CLI og socket API — opprett arbeidsområder/faner, del paneler, send tastetrykk, åpne URLer i nettleseren.
The Zen of cmux
cmux er ikke foreskrivende om hvordan utviklere bruker verktøyene sine. Det er en terminal og nettleser med en CLI, og resten er opp til deg.
cmux er en primitiv, ikke en løsning. Det gir deg en terminal, en nettleser, varsler, arbeidsområder, delinger, faner og en CLI for å kontrollere alt sammen. cmux tvinger deg ikke inn i en bestemt måte å bruke kodeagenter på. Hva du bygger med primitivene er ditt.
De beste utviklerne har alltid bygget sine egne verktøy. Ingen har funnet ut den beste måten å jobbe med agenter på ennå, og teamene som bygger lukkede produkter har definitivt ikke gjort det heller. Utviklerne som er nærmest sine egne kodebaser vil finne det ut først.
Gi en million utviklere komponerbare primitiver og de vil kollektivt finne de mest effektive arbeidsflytene raskere enn noe produktteam kunne designet ovenfra og ned.
Dokumentasjon
For mer informasjon om hvordan du konfigurerer cmux, gå til dokumentasjonen vår.
Tastatursnarveier
Arbeidsområder
| Snarvei | Handling |
|---|---|
| ⌘ N | Nytt arbeidsområde |
| ⌘ 1–8 | Hopp til arbeidsområde 1–8 |
| ⌘ 9 | Hopp til siste arbeidsområde |
| ⌃ ⌘ ] | Neste arbeidsområde |
| ⌃ ⌘ [ | Forrige arbeidsområde |
| ⌘ ⇧ W | Lukk arbeidsområde |
| ⌘ ⇧ R | Gi nytt navn til arbeidsområde |
| ⌥ ⌘ E | Rediger arbeidsområdebeskrivelse |
| ⌘ B | Vis/skjul sidefelt |
| ⌥ ⌘ B | Vis/skjul høyre sidefelt |
| ⌘ ⇧ E | Veksle fokus til høyre sidefelt |
Overflater
| Snarvei | Handling |
|---|---|
| ⌘ T | Ny overflate |
| ⌘ ⇧ ] | Neste overflate |
| ⌘ ⇧ [ | Forrige overflate |
| ⌃ Tab | Neste overflate |
| ⌃ ⇧ Tab | Forrige overflate |
| ⌃ 1–8 | Hopp til overflate 1–8 |
| ⌃ 9 | Hopp til siste overflate |
| ⌘ W | Lukk overflate |
Delte paneler
| Snarvei | Handling |
|---|---|
| ⌘ D | Del til høyre |
| ⌘ ⇧ D | Del nedover |
| ⌥ ⌘ ← → ↑ ↓ | Fokuser panel i retning |
| ⌘ ⇧ H | Blink fokusert panel |
Nettleser
Nettleserens utviklerverktøysnarveier følger Safari-standarder og kan tilpasses i Innstillinger → Tastatursnarveier.
Snarveier for navigasjon i kommandopaletten, inkludert ⌃ P, kan også tilpasses og kan fjernes slik at tastetrykket når den aktive terminalen.
| Snarvei | Handling |
|---|---|
| ⌘ ⇧ L | Åpne nettleser i deling |
| ⌘ L | Fokuser adressefeltet |
| ⌘ [ | Tilbake |
| ⌘ ] | Fremover |
| ⌘ R | Last inn siden på nytt |
| ⌥ ⌘ I | Vis/skjul utviklerverktøy (Safari-standard) |
| ⌥ ⌘ C | Vis JavaScript-konsoll (Safari-standard) |
Varsler
| Snarvei | Handling |
|---|---|
| ⌘ I | Vis varselpanel |
| ⌘ ⇧ U | Hopp til nyeste uleste |
| ⌥ ⌘ U | Veksle ulest-status for gjeldende element |
| ⌃ ⌘ U | Merk gjeldende element som eldste uleste og hopp til neste nyeste uleste |
Søk
| Snarvei | Handling |
|---|---|
| ⌘ F | Søk |
| ⌘ ⇧ F | Søk i mappe |
| ⌘ G / ⌥ ⌘ G | Søk neste / forrige |
| ⌥ ⌘ ⇧ F | Skjul søkelinje |
| ⌘ E | Bruk utvalg til søk |
Terminal
| Snarvei | Handling |
|---|---|
| ⌘ K | Tøm rullingshistorikk |
| ⌘ C | Kopier (med utvalg) |
| ⌘ V | Lim inn |
| ⌘ + / ⌘ - | Øk / reduser skriftstørrelse |
| ⌘ 0 | Tilbakestill skriftstørrelse |
Vindu
| Snarvei | Handling |
|---|---|
| ⌘ ⇧ N | Nytt vindu |
| ⌘ ⇧ O | Gjenåpne forrige sesjon |
| ⌘ , | Innstillinger |
| ⌘ ⇧ , | Last inn konfigurasjon på nytt |
| ⌘ Q | Avslutt |
Nattlige bygg
cmux NIGHTLY er en separat app med sin egen bundle-ID, så den kjører ved siden av den stabile versjonen. Bygges automatisk fra den siste main-commiten og oppdateres automatisk via sin egen Sparkle-feed.
Rapporter feil i nightly på GitHub Issues eller i #nightly-bugs på Discord.
Sesjonsgjenoppretting
Når du avslutter cmux, lagres den nåværende sesjonen. Ved omstart gjenoppretter cmux tilstand som eies av appen:
- Vindu-/arbeidsområde-/panellayout
- Arbeidsmapper
- Terminal-rullingshistorikk (best effort)
- Nettleser-URL og navigasjonshistorikk
cmux tar ikke checkpoint av vilkårlig aktiv prosesstilstand. tmux, vim, shell og terminalapper uten støtte åpnes igjen som vanlige terminaler.
Støttede agentøkter kan gjenopptas når hooks har lagret en native sesjons-ID. Installer hooks etter at du har installert agent-CLI-en slik at binærfilen er på PATH:
cmux hooks setup
cmux hooks setup codex
cmux hooks setup --agent opencode
cmux hooks setup installerer støttede agenter den finner, og skriver ut et sammendrag for agenter som hoppes over. Støttede resume-integrasjoner inkluderer Claude Code, Codex, Grok, OpenCode, Pi, Amp, Cursor CLI, Gemini, Rovo Dev, Copilot, CodeBuddy, Factory og Qoder. Claude Code håndteres av cmux Claude-wrapperen når Claude-integrasjon er aktivert i Innstillinger.
Avanserte brukere og integrasjoner kan knytte en egendefinert gjenopptakskommando til gjeldende terminal-surface. Dette er nyttig for verktøy med egen varig tilstand, som tmux-sesjoner eller egendefinerte agent-CLI-er:
cmux surface resume set --kind tmux --checkpoint work --shell "tmux attach -t work"
cmux surface resume show --json
cmux surface resume clear --checkpoint work
Bindingen forblir knyttet til cmux-surfacen. Bindinger opprettet via offentlig CLI eller socket lagres for inspeksjon og manuell gjenopptakelse med mindre du godkjenner et signert kommandoprefiks for automatisk gjenopptakelse. Godkjente prefikser er også bundet til arbeidsmappen og de eksakte miljøverdiene, når de er til stede. Gjennomgå eller rediger godkjenninger i Innstillinger > Terminal > Resume Commands. cmux auto-kjører bare resume-bindinger den markerer som klarerte, for eksempel tmux-bindinger oppdaget fra levende prosesser eller brukergodkjente prefikser. Sensitive miljønøkler som tokens, passord, hemmeligheter og API-nøkler fjernes før en resume-binding lagres.
For å holde gjenopprettede agentterminaler i ro i stedet for å automatisk kjøre resume-kommandoene deres, slå av Innstillinger > Terminal > Resume Agent Sessions on Reopen eller angi dette i ~/.config/cmux/cmux.json:
{
"terminal": {
"autoResumeAgentSessions": false
}
}
Dette deaktiverer bare automatiske resume-kommandoer for agenter. cmux gjenoppretter fortsatt den lagrede layouten, arbeidsmappene, rullingshistorikken og nettleserhistorikken.
Hvis du trenger å bruke det sist lagrede øyeblikksbildet manuelt på nytt, bruk:
File > Reopen Previous Session⌘ ⇧ Ocmux restore-session
Under panseret skriver cmux et versjonert øyeblikksbilde under ~/Library/Application Support/cmux/, og agent-hooks skriver sesjonstilordninger under ~/.cmuxterm/. Ved gjenoppretting bygger cmux layouten på nytt først, og kjører deretter den støttede agentens native resume-kommando når automatisk agentgjenopptakelse er aktivert.
Les hele veiledningen på https://cmux.com/docs/session-restore.
FAQ
Hvordan forholder cmux seg til Ghostty?
cmux er ikke en fork av Ghostty. Den bruker libghostty som et bibliotek for terminalgjengivelse, på samme måte som apper bruker WebKit for nettvisninger. Ghostty er en frittstående terminal; cmux er en annen app bygget oppå dens gjengivelsesmotor.
Hvilke plattformer støttes?
Bare macOS, foreløpig. cmux er en nativ Swift + AppKit-app.
Finnes det en iOS-app?
Ja, i beta. Par iPhonen din med Macen din fra Mobile Connect-vinduet og koble til terminalene dine fra telefonen, med valgfri videresending av terminalvarsler. Den leveres på TestFlight som cmux BETA. Se iOS-dokumentasjonen.
Hvilke kodeagenter fungerer cmux med?
Alle sammen. cmux er en terminal, så enhver agent som kjører i en terminal fungerer rett ut av boksen: Claude Code, Codex, OpenCode, Gemini CLI, Kiro, Aider, Goose, Amp, Cline, Cursor Agent og alt annet du kan starte fra kommandolinjen.
Kan cmux orkestrere flere agenter og subagenter?
Ja. Når en agent oppretter subagenter eller lagkamerater, gjør cmux dem til native paneler og delinger i stedet for skjulte bakgrunnsprosesser. Den støtter Claude Code teams og oh-my-opencode fler-modell-orkestrering, så hver agent i en kjøring er synlig og kontrollerbar.
Kan jeg bruke cmux med eksterne maskiner?
Ja. Åpne arbeidsområder over SSH og koble til eksterne tmux-sesjoner, slik at agenter kan kjøre på en ekstern vert mens du styrer dem fra cmux. Se SSH og ekstern.
Hvordan fungerer varsler?
Når en prosess trenger oppmerksomhet, viser cmux varselringer rundt paneler, uleste-merker i sidefeltet, en varsel-popover og et macOS-skrivebordsvarsel. Disse utløses automatisk via standard terminal-escape-sekvenser (OSC 9/99/777), eller du kan utløse dem med cmux CLI og agentkroker. Enhver agent som støtter hooks eller OSC fungerer, inkludert Claude Code, Codex, OpenCode og pi.
Er cmux programmerbar?
Ja. Hver handling er tilgjengelig gjennom cmux CLI og en Unix-socket: opprett arbeidsområder, åpne delte paneler, send input, les skjerminnhold, ta skjermbilder og styr den innebygde nettleseren. Se CLI-referansen og dokumentasjonen for nettleserautomatisering.
Hva kan den innebygde nettleseren gjøre?
cmux kan dele et ekte nettleserpanel ved siden av terminalen din, og den er fullstendig programmerbar: naviger, ta øyeblikksbilde av DOM-en, klikk, skriv, kjør JavaScript og les konsoll- og nettverksaktivitet over det samme socket API-et. Agenter bruker den til å verifisere sine egne nettendringer uten å forlate cmux. Se nettleserautomatisering.
Har cmux skills?
Ja. Skills er gjenbrukbare arbeidsflyter du kan gi enhver agent som kjører i cmux, for ting som CLI-kontroll, automatisering av arbeidsområder, innstillinger og nettleseroverflater. Bla i den åpne samlingen på cmux-skills, eller les skills-dokumentasjonen.
Kan jeg tilpasse tastatursnarveier?
Terminaltastebindinger leses fra Ghostty-konfigurasjonsfilen din (~/.config/ghostty/config). cmux-spesifikke snarveier (arbeidsområder, delinger, nettleser, varsler) kan tilpasses i Innstillinger. Se standardsnarveiene for en fullstendig liste.
Kan jeg tilpasse cmux?
Ja. Terminalgjengivelse bruker Ghostty-konfigurasjonen din, så temaer, skrifttyper, farger og markør overføres direkte. cmux' egne innstillinger i ~/.config/cmux/cmux.json styrer sidefeltet, fanelinjen, delte paneler og oppførsel, og hver tastatursnarvei kan redigeres. Se konfigurasjon.
Lagres sesjonene mine?
Ja. cmux gjenoppretter vinduene, arbeidsområdene, panelene, arbeidsmappene og rullingshistorikken når du starter på nytt, og tilstanden overlever en full omstart av datamaskinen, ikke bare avslutning av appen. Agentsesjoner som Claude Code, Codex og OpenCode kommer også tilbake. Se sesjonsgjenoppretting.
Hvordan sammenligner det seg med tmux?
tmux er en terminalmultiplekser som kjører inne i en hvilken som helst terminal. cmux er en nativ macOS-app med et GUI: vertikale faner, delte paneler, en innebygd nettleser og et socket API, alt innebygd, uten behov for konfigurasjonsfiler eller prefiks-taster. Når det er sagt, kjører mange gjerne cmux med SSH og tmux sammen, og cmux kan koble til de eksterne tmux-sesjonene dine nativt (beta).
Er cmux gratis?
Ja, cmux er gratis å bruke. Kildekoden er tilgjengelig på GitHub.
Hvordan kan jeg støtte cmux?
cmux er gratis og åpen kildekode, og vil alltid være det. Hvis du vil støtte utviklingen og få tidlig tilgang til det som kommer, inkludert cmux AI, iOS-appen og Cloud VMs, sjekk ut cmux Founders Edition.
Jeg har en funksjonsforespørsel eller fant en feil?
Vi vil gjerne høre det. Åpne en issue eller pull request på GitHub, eller send oss en e-post.
Stjernehistorikk
Bidra
Måter å engasjere seg:
- Følg oss på X for oppdateringer @manaflowai, @lawrencecchen, og @austinywang
- Bli med i samtalen på Discord
- Opprett og delta i GitHub-issues og diskusjoner
- Fortell oss hva du bygger med cmux
Fellesskap
WeChat: Skann QR-koden for å bli med i fellesskapet.
Grunnleggerutgaven
cmux er gratis, åpen kildekode, og vil alltid være det. Hvis du vil støtte utviklingen og få tidlig tilgang til det som kommer:
- Prioriterte funksjonsforespørsler/feilrettinger
- Tidlig tilgang: cmux AI som gir deg kontekst om hvert arbeidsområde, fane og panel
- Tidlig tilgang: iOS-app med terminaler synkronisert mellom desktop og telefon
- Tidlig tilgang: Cloud VMs
- Tidlig tilgang: Stemmemodus
- Min personlige iMessage/WhatsApp
Lisens
cmux er åpen kildekode under GPL-3.0-or-later.
Hvis organisasjonen din ikke kan overholde GPL, er en kommersiell lisens tilgjengelig. Kontakt [email protected] for detaljer.






