Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents
https://cmux.com
The pill never appeared because: 1. SwiftUI .frame(width:0, height:0) when idle poisoned fittingSize 2. AppKit constraints locked at 0x0 prevented expansion on state change 3. fittingSize always returned 0 due to active 0x0 constraints Fix: Remove zero-frame from SwiftUI (always render at natural size, use opacity only). Deactivate constraints before measuring fittingSize so they don't clamp the measurement. Pass visibility to sizeToolbarItem to set constraints to zero when idle or natural size when active. |
||
|---|---|---|
| .claude/commands | ||
| .github/workflows | ||
| Assets.xcassets | ||
| CLI | ||
| docs | ||
| docs-site | ||
| ghostty@4713b7e236 | ||
| GhosttyTabs.xcodeproj | ||
| GhosttyTabsUITests | ||
| homebrew-cmuxterm@c12d753824 | ||
| node_modules | ||
| Resources | ||
| scripts | ||
| Sources | ||
| tests | ||
| .gitignore | ||
| .gitmodules | ||
| .vercelignore | ||
| AGENTS.md | ||
| bun.lock | ||
| CHANGELOG.md | ||
| CLAUDE.md | ||
| cmux-Bridging-Header.h | ||
| CONTRIBUTING.md | ||
| ghostty.h | ||
| package.json | ||
| Package.resolved | ||
| Package.swift | ||
| README.md | ||
| TODO.md | ||
cmuxterm
A lightweight native macOS terminal with vertical tabs and notifications for AI coding agents
Features
- Native macOS app — Built with Swift and AppKit, not Electron. Fast startup, low memory.
- Vertical tabs — See all your terminals at a glance in a sidebar
- Notification panel — Tabs flash when AI agents (Claude Code, Codex) need your attention
- Lightweight — Small binary, minimal resource footprint. No bundled browser engine.
- GPU-accelerated — Powered by libghostty for smooth rendering
Install
Homebrew:
brew tap manaflow-ai/cmuxterm
brew install --cask cmuxterm
Or download the DMG directly.
Why cmuxterm?
Running multiple AI coding agents? cmuxterm helps you manage them. Instead of losing track of which terminal needs input, the notification panel shows you exactly where to look.
A native macOS app means it launches instantly, uses minimal RAM, and feels right at home on your Mac.