import { FadeImage } from "./components/fade-image"; import Balancer from "react-wrap-balancer"; import landingImage from "./assets/landing-image.png"; import { TypingTagline } from "./typing"; import { DownloadButton } from "./components/download-button"; import { GitHubButton } from "./components/github-button"; import { SiteHeader } from "./components/site-header"; import { testimonials } from "./testimonials"; export default function Home() { return (
{/* Header */}
cmux icon

cmux

{/* Tagline */}

The terminal built for

Native macOS app built on Ghostty. Vertical tabs, notification rings when agents need attention, split panes, and a socket API for automation.

{/* Download */}
{/* Features */}

Features

  • - Vertical tabs : sidebar shows git branch, working directory, ports, and notification text
  • - Notification rings : panes light up when agents need attention
  • - In-app browser : split a browser alongside your terminal with a scriptable API
  • - Split panes : horizontal and vertical splits within each tab
  • - Scriptable : CLI and socket API for automation and scripting
  • - GPU-accelerated : powered by libghostty for smooth rendering
  • - Lightweight : native Swift + AppKit, no Electron
  • - Keyboard shortcuts : extensive shortcuts for workspaces, splits, browser, and more
{/* Screenshot - break out of max-w-2xl to be wider */}
{/* FAQ */}

FAQ

How does cmux relate to Ghostty?

cmux is not a fork of Ghostty. It uses{" "} libghostty{" "} as a library for terminal rendering, the same way apps use WebKit for web views. Ghostty is a standalone terminal; cmux is a different app built on top of its rendering engine.

What platforms does it support?

macOS only, for now. cmux is a native Swift + AppKit app.

What coding agents does cmux work with?

All of them. cmux is a terminal, so any agent that runs in a terminal works out of the box: Claude Code, Codex, OpenCode, Gemini CLI, Kiro, Aider, Goose, Amp, Cline, Cursor Agent, and anything else you can launch from the command line.

How do notifications work?

When a process needs attention, cmux shows notification rings around panes, unread badges in the sidebar, a notification popover, and a macOS desktop notification. These fire automatically via standard terminal escape sequences (OSC 9/99/777), or you can trigger them with the{" "} cmux CLI{" "} and{" "} Claude Code hooks.

Can I customize keyboard shortcuts?

Terminal keybindings are read from your Ghostty config file (~/.config/ghostty/config). cmux-specific shortcuts (workspaces, splits, browser, notifications) can be customized in Settings. See the{" "} default shortcuts{" "} for a full list.

How does it compare to tmux?

tmux is a terminal multiplexer that runs inside any terminal. cmux is a native macOS app with a GUI: vertical tabs, split panes, an embedded browser, and a socket API are all built in. No config files or prefix keys needed.

Is cmux free?

Yes, cmux is free to use. The source code is available on{" "} GitHub.

{/* Community */}

Community

{/* Bottom CTA */}
Read the Docs
); }