cmuxはAIコーディングエージェント向けのmacOSネイティブターミナルです。通知リング・サイドバー・Socket APIを備え、Claude Codeの複数インスタンス運用で「どのエージェントが入力待ちか分からない」問題を解決します。
インストール
brew tap manaflow-ai/cmux
brew install --cask cmux
Ghosttyを使用の場合、設定ファイル(~/.config/ghostty/config)を自動で読み込むため、フォント・テーマはそのまま引き継がれます。
動作環境: macOS専用(Sonoma以降で動作確認)
3層通知で入力待ちを見逃さない
cmuxの通知はペイン周囲の青いリング、サイドバーのバッジ、macOSデスクトップ通知の3層構造です。Claude CodeのOSCエスケープシーケンス(OSC 777 / OSC 99)をネイティブにキャプチャするため、設定不要で通知が動きます。
スクリプトからも通知を送れます。
printf '\e]777;notify;ビルド完了;テスト全件パス\a'
# または
cmux notify --title "ビルド完了" --body "テスト全件パス"
Claude Code Hooksとの連携
タスク完了時にも通知が欲しい場合、Stopフックとcmux notifyを組み合わせます。
#!/bin/bash
INPUT=$(cat)
STOP_HOOK_ACTIVE=$(echo "$INPUT" | jq -r '.stop_hook_active')
if [ "$STOP_HOOK_ACTIVE" = "true" ]; then exit 0; fi
EVENT_NAME=$(echo "$INPUT" | jq -r '.hook_event_name // "unknown"')
cmux notify --title "Claude Code" --subtitle "$EVENT_NAME" --body "タスクが完了しました"
{
"hooks": {
"Stop": [{ "hooks": [{ "type": "command", "command": "~/.claude/hooks/cmux-notify.sh" }] }]
}
}
worktreeで並列開発する
cmuxの画面はワークスペース > サーフェス > ペインの3層構造です。Claude Codeの--worktreeフラグとワークスペースを組み合わせると、タスクごとに独立した環境を構築できます。
# ワークスペース1: 認証リファクタリング
claude --worktree feature-auth
# ワークスペース2(⌘ 2で切替): UI改善
claude --worktree feature-ui
サイドバー(⌘ B)では各サーフェスのGitブランチ名・PRステータス・作業ディレクトリ・リッスンポート・最新通知をリアルタイムに一覧できます。切り替えなくても全エージェントの状態が把握できます。
Socket APIでワークフローを自動化する
cmux CLIでペイン分割・テキスト送信・通知をスクリプトから制御できます。
#!/bin/bash
cmux new-split right
NEW_SURFACE=$(cmux list-panels | grep -v '^\*' | awk '{print $1}')
cmux send --surface "$CMUX_SURFACE_ID" "claude\n"
cmux send --surface "$NEW_SURFACE" "npm run dev\n"
cmux set-status dev "running" --icon "play.fill"
cmux read-screenで別サーフェスの画面内容をテキスト取得できるため、エージェント間のタスク引き継ぎにも使えます。アプリ内ブラウザ(⌘ ⇧ L)で開発サーバーの確認もターミナル内で完結します。
既知の制限
- macOS専用(Linux/Windows非対応)
- セッション復元でClaude Codeなどのアクティブプロセスは復元されない(起動スクリプトで対応)
- 日本語IMEに既知の不具合あり(macSKKのキーイベント漏れなど)
2026年3月時点の情報です。最新の状況はGitHubのIssueで確認してください。
まとめ
cmuxは通知・サイドバー・Socket APIの3つのプリミティブで、Claude Codeの並列運用における状態把握と自動化の課題を解決します。worktreeとの組み合わせで、2〜3タスクの同時進行が実用的になります。
この記事の詳細版は Zenn で公開しています: cmux入門 - Claude Codeを並列運用する