cmuxはAIコーディングエージェントが並列作業する時代専用のターミナルだ。垂直タブ・組み込みブラウザ・Socket APIにより、複数エージェントの状態を一画面で把握でき、従来のiTerm2やtmuxとは根本的に設計思想が異なる。
cmuxはAIコーディングエージェントが並列作業する時代専用のターミナルだ。垂直タブ・組み込みブラウザ・Socket APIにより、複数エージェントの状態を一画面で把握でき、従来のiTerm2やtmuxとは根本的に設計思想が異なる。
ブログ目次
HubSpotゴールドパートナーのStartLinkが、HubSpot導入・AI活用・CRM整備・業務効率化までをまとめて支援しています。記事で気になったテーマを、そのまま相談ベースで整理できます。
cmuxはAIコーディングエージェントが並列作業する時代専用のターミナルだ。垂直タブ・組み込みブラウザ・Socket APIにより、複数エージェントの状態を一画面で把握でき、従来のiTerm2やtmuxとは根本的に設計思想が異なる。
本記事は2026年8月時点の情報です。
本記事は「Claude Code実践ガイド|AI開発の生産性を高める運用設計」シリーズの一部です。
AIエージェント時代の開発ワークフローに特化したターミナル「cmux」の導入から実務運用までを解説します。
対象読者: AIコーディングエージェントを日常的に使う開発者・CTO・テックリード
cmuxは、Manaflow(manaflow-ai/cmux)が開発しているオープンソースのmacOSネイティブターミナルです。Swift/AppKitで構築され、ターミナル描画にはGhosttyのレンダリングエンジン(libghostty)をライブラリとして利用しています(Ghosttyのフォークではありません)。AIコーディングエージェントの操作に完全特化した設計がなされています。
🔴 同名の別プロジェクトに注意: GitHubには
craigsc/cmux("tmux for Claude Code") という同名の別プロジェクトが存在します。こちらはBashとGit worktreeで複数のClaude Codeエージェントを分離して並列実行するCLIツール(MITライセンス、作者はCraig Sull)で、本記事で扱っているmacOSターミナルのmanaflow-ai/cmuxとは別物です。 情報を調べる際は必ずリポジトリのオーナー名を確認してください。
なお、cmuxはAnthropic製ではありません。 Claude Codeとの連携機能は充実していますが、あくまでサードパーティ製のオープンソースツールです。ライセンスはGPL-3.0-or-laterで、GPLに準拠できない組織向けには商用ライセンスの相談窓口が用意されています。(出典: cmux公式サイト / manaflow-ai/cmux / craigsc/cmux、いずれも2026年8月1日確認)
名前にmuxが含まれていますが、tmuxとは無関係です。「Claude mux」に由来しており、複数のAIエージェントセッションを多重化(multiplexing)するというコンセプトを表しています。
従来のターミナル(iTerm2、Hyper、Warpなど)は汎用的なシェル操作を前提に設計されています。一方、cmuxはAIコーディングエージェントが「何をしているか」をリアルタイムに可視化することを最優先にした設計です。
| 比較項目 | 従来ターミナル(iTerm2等) | Warp | cmux |
|---|---|---|---|
| 設計思想 | 汎用シェル操作 | AI補完付きシェル | AIエージェント専用 |
| タブ表示 | 水平タブ(ファイル名のみ) | ブロック型出力 | 垂直タブ(ブランチ・PR・ポート表示) |
| git連携 | なし / プラグイン依存 | 部分的 | ネイティブ統合(PR状態リンク付き) |
| ブラウザ | なし | なし | 組み込みブラウザ |
| API | なし | 限定的 | Socket API |
| 対応OS | macOS / Linux / Windows | macOS / Linux | macOS専用 |
cmuxの価値は「ターミナルの再発明」ではなく「AIエージェント時代の開発ダッシュボード」にあります。エージェントがどのブランチで何を作業し、PRがどの状態にあり、どのポートでサーバーが動いているかを一画面で把握できることが、マルチエージェント開発の生産性を根本から変えます。
cmuxのインストールはHomebrewで完結します。macOS専用のため、LinuxやWindowsでは利用できません。
# Homebrewでインストール
brew install --cask cmux
# バージョン確認
cmux --version
GitHub(manaflow-ai/cmux)からdmgファイルを直接ダウンロードしてインストールすることも可能です。
cmuxを起動すると、デフォルトシェル(zsh/bash)が自動検出されます。既存のシェル設定(.zshrc、.bashrc)はそのまま引き継がれるため、エイリアスや環境変数の再設定は不要です。
# cmuxのターミナル内でClaude Codeを起動
claude
# 別のペインでCodexを起動
codex
# さらに別のペインでGemini CLIを起動
gemini
cmuxは特定のAIツールに依存していません。シェル上で動作するCLIツールであれば、Claude Code、Codex、OpenCode、Gemini CLI、Kiro、Aiderなど、どのツールでもそのまま使えます。
cmuxのSocket APIを有効にすると、外部スクリプトからエージェントの状態を取得したり、操作を自動化したりできます。
# Socket APIの有効化(設定画面から、またはCLIで)
cmux config set socket-api.enabled true
# APIエンドポイントの確認
cmux config get socket-api.path
# => /tmp/cmux.sock
cmuxの最大の特徴は、画面左側に配置された垂直タブです。従来のターミナルのように「Tab 1」「Tab 2」と無機質な名前が並ぶのではなく、各タブにリアルタイムの開発コンテキストが表示されます。
各垂直タブには以下の情報がリアルタイムで表示されます。
マルチエージェント開発では、複数のClaude Codeインスタンスがそれぞれ異なるブランチで作業を進めることが一般的です。cmuxの垂直タブを使えば、どのエージェントがどのタスクを担当しているかを一目で把握できます。
[垂直タブの表示イメージ]
┌──────────────────────────┐
│ feature/auth-refactor │ ← Claude Code (Agent 1)
│ PR #142 Review Requested │
│ ~/project :3000 │
├──────────────────────────┤
│ fix/api-validation │ ← Claude Code (Agent 2)
│ PR #145 Draft │
│ ~/project :3001 │
├──────────────────────────┤
│ feature/dashboard-ui │ ← Codex (Agent 3)
│ No PR │
│ ~/project :5173 │
└──────────────────────────┘
この構造により、従来はgit branchやGitHubのPRページを何度も確認していた作業が、視線を動かすだけで完了します。
cmuxはtmuxに似た分割ペイン機能を備えています。1つのタブ内で画面を水平・垂直に分割し、エージェントの出力とログ、テスト結果を同時に確認できます。
# 垂直分割(左右に分割)
# Cmd + D
# 水平分割(上下に分割)
# Cmd + Shift + D
# ペイン間の移動
# Cmd + [ / Cmd + ]
cmuxには組み込みブラウザが統合されています。開発サーバーのプレビュー、PRのレビュー、ドキュメント参照など、ブラウザへのコンテキストスイッチなしで確認できます。
# 組み込みブラウザでlocalhostを表示
# Cmd + Shift + B で組み込みブラウザを開く
# リスニングポートが検出されると自動的にURLが補完される
組み込みブラウザの最大のメリットは、エージェントがサーバーを起動した瞬間にポートを検出し、ブラウザペインに自動反映される点です。「別ウインドウでChrome開いてlocalhost:3000にアクセスして...」という手順が不要になります。
cmuxのSocket APIは、エージェントの状態をプログラマティックに取得・操作するためのインターフェースです。UNIXドメインソケットで通信するため、ローカルマシン上のスクリプトやツールから直接アクセスできます。
# 全セッションの状態を取得
curl --unix-socket /tmp/cmux.sock http://localhost/sessions
# 特定セッションの詳細情報
curl --unix-socket /tmp/cmux.sock http://localhost/sessions/{session-id}
# 新しいセッション(タブ)の作成
curl --unix-socket /tmp/cmux.sock -X POST http://localhost/sessions \
-d '{"command": "claude", "directory": "/path/to/project"}'
Socket APIを使えば、プロジェクト開始時にエージェント環境を一括セットアップするスクリプトを作成できます。
#!/bin/bash
# cmux-project-setup.sh
# プロジェクトのマルチエージェント環境を一括起動
PROJECT_DIR="$1"
SOCKET="/tmp/cmux.sock"
# フロントエンド担当エージェント
curl --unix-socket $SOCKET -X POST http://localhost/sessions \
-d "{\"command\": \"claude\", \"directory\": \"$PROJECT_DIR\", \"name\": \"frontend\"}"
# バックエンド担当エージェント
curl --unix-socket $SOCKET -X POST http://localhost/sessions \
-d "{\"command\": \"claude\", \"directory\": \"$PROJECT_DIR\", \"name\": \"backend\"}"
# テスト担当エージェント
curl --unix-socket $SOCKET -X POST http://localhost/sessions \
-d "{\"command\": \"claude\", \"directory\": \"$PROJECT_DIR\", \"name\": \"testing\"}"
echo "3 agents launched in cmux"
cmuxはシェルベースのCLIツールであればすべて動作します。特定のSDKやプラグインのインストールは不要で、通常通りコマンドを実行するだけです。
| ツール | 開発元 | cmuxでの動作 | 備考 |
|---|---|---|---|
| Claude Code | Anthropic | 完全対応 | ステータスライン情報も表示 |
| Codex | OpenAI | 完全対応 | — |
| Gemini CLI | 完全対応 | — | |
| OpenCode | コミュニティ | 完全対応 | — |
| Kiro | AWS | 完全対応 | — |
| Aider | Paul Gauthier | 完全対応 | git連携が垂直タブと相性良好 |
| GitHub Copilot CLI | GitHub | 完全対応 | — |
Claude Codeはcmuxとの相性が特に良好です。Claude Codeのマルチエージェント構成(DD-10)でタスクを分散させる際、cmuxの垂直タブが各エージェントのステータスダッシュボードとして機能します。
# cmux上でClaude Codeのマルチエージェント構成を起動
# タブ1: メインオーケストレーター
claude "プロジェクト全体の設計を担当してください"
# タブ2: フロントエンド実装エージェント(別タブで起動)
claude "Reactコンポーネントの実装を担当してください"
# タブ3: テスト・品質管理エージェント(別タブで起動)
claude "テストコードの作成とレビューを担当してください"
各タブのブランチ名とPR状態を見れば、オーケストレーターがmainブランチで設計し、実装エージェントがfeatureブランチでコードを書き、テストエージェントがテストブランチでCIを回している状況がリアルタイムで確認できます。
cmuxを検討する際は、Claude Code本体が持つ機能との重なりも確認しておくと判断しやすくなります。事実として押さえておきたいのは次の3点です。
"auto"から"in-process"に変更されました。以前はtmuxやiTerm2があれば分割ペインが開いていましたが、現在は明示的にteammateModeを設定しない限り1つのターミナル内に収まります(出典: Agent teams、2026年8月1日確認)claude agents)があります(出典: Agent view、2026年8月1日確認)どちらが適しているかは、複数エージェントの状態を「ターミナル側のUIで見たいか」「Claude Code本体のUIで見たいか」で分かれます。実際に両方を触って決めるのが確実です。
cmuxの公式ドキュメントによれば、cmuxには cmux claude-teams というClaude Code Teams連携コマンドがあります。cmuxがtmux互換のシムを用意し、Claude Codeが出すtmuxコマンドをcmuxのAPI呼び出しに翻訳する仕組みで、これによりteammateがtmuxのペインではなくcmuxネイティブの分割として表示されます。--model sonnet のようなフラグもそのまま渡せます。
前提として、Claude Code側でAgent Teamsが有効になっている必要があります。連携時にcmuxが利用する環境変数は次のとおりです。
| 環境変数 | 役割 |
|---|---|
TMUX |
cmuxのワークスペースとペインを符号化した疑似tmuxソケットパス |
TMUX_PANE |
疑似tmuxペインの識別子 |
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS |
Claude Code側のAgent Teamsを有効化する |
CMUX_SOCKET_PATH |
cmuxの制御ソケットへのパス |
前述のとおり、Claude Code単体では表示モードの既定が in-process になっており、分割ペインで並べて見るにはtmuxかiTerm2が必要です。cmuxはこの部分を自前の分割で置き換える立ち位置になります。「teammateを1画面に並べて見たい」が要件なら検討の価値があり、「1つのターミナルに収まっていて構わない」なら本体の既定のままで足ります。(出典: cmux — Claude Code Teams連携、2026年8月1日確認)
Claude Codeのサブエージェントは2026年7月の更新(v2.1.195〜201)で既定がバックグラウンド実行に変わり、そのファイル編集は .claude/worktrees/ 配下のgit worktreeへ自動的に隔離されるようになりました。cmuxの「1タブ=1ブランチ=1エージェント」という考え方と方向性は同じですが、隔離が二重にかかる点は把握しておいてください。cmuxのタブに見えているブランチと、サブエージェントが実際に書き込んでいるworktreeが別物になる場合があります。(出典: Subagents、2026年8月1日確認)
また、1つのタブにエージェントを長時間張り付ける運用では、終了条件を先に決めておくと放置事故を避けられます。/goal を使えば「テストが全て通る」といった完了条件を設定でき、条件が成立した時点で自動的に停止します。設定方法と条件の書き方は/goalコマンドで条件達成まで自律実行させる方法で解説しています。
なお、Claude Codeのデスクトップアプリには2026年7月にアプリ内ブラウザが搭載されました。cmuxの組み込みブラウザと用途が重なる部分があるため、ローカルサーバーの確認をどちらで行うかは、実際に両方を開いて決めるのが確実です。(出典: What's new、2026年8月1日確認)
cmuxを導入する際に考慮すべき運用設計のポイントをまとめます。
マルチエージェント開発では、エージェントごとにブランチを分離するのが基本です。cmuxの垂直タブはブランチ名を表示するため、「1タブ = 1ブランチ = 1エージェント = 1タスク」の対応を守ると可視性が最大化されます。
推奨構成:
タブ1: main → オーケストレーター(設計・レビュー)
タブ2: feature/auth → 実装エージェントA(認証機能)
タブ3: feature/api → 実装エージェントB(API層)
タブ4: test/e2e → テストエージェント(E2Eテスト)
複数のAIエージェントを同時に起動すると、CPU・メモリ・APIコストが増加します。Claude Codeのコスト最適化(BY-7)で解説している手法と組み合わせて、エージェント数を適切に管理してください。
HubSpotゴールドパートナーのStartLinkでは、少数精鋭のチームがAIエージェントを最大限に活用する開発スタイルを推奨しています。cmuxはこのアプローチと非常に相性が良いツールです。
1人の開発者が複数のAIエージェントを同時に管理し、それぞれに異なるタスクを割り当てる。cmuxの垂直タブで全体を俯瞰しながら、必要に応じてペインを切り替えてエージェントに指示を出す。この「1人 + N体のAIエージェント」というワークフローが、cmuxの最も自然な使い方です。
いいえ、cmuxとtmuxは完全に別のソフトウェアです。cmuxはSwift/AppKitで一から構築されたmacOSネイティブアプリケーションであり、tmuxのコードは一切使用していません。名前の「mux」はmultiplexing(多重化)の略で、複数のAIエージェントセッションを多重管理するというコンセプトを表しています。
オープンソースとして公開されており、GitHubリポジトリ(manaflow-ai/cmux)からソースコードを入手できます。ライセンスはGPL-3.0-or-laterで、GPLの条件に準拠できない組織向けには商用ライセンスの相談窓口が案内されています。Anthropic公式のツールではなく、Manaflowによるサードパーティ開発です。
現時点ではmacOS専用です。Swift/AppKitで構築されているため、LinuxやWindowsには対応していません。Linux/Windowsでマルチエージェント管理を行う場合は、tmux + 独自スクリプトの組み合わせが代替手段になります。
はい、cmuxはシステムのデフォルトシェルを起動するため、既存の.zshrcや.bashrcの設定はそのまま引き継がれます。エイリアス、環境変数、PATHの設定を再定義する必要はありません。
垂直タブのgitブランチ名・作業ディレクトリ・リスニングポートはシェルレベルで検出されるため、どのAIツールを使っていても表示されます。PR状態の表示はGitHub CLIとの連携で実現しているため、GitHubでホストされているリポジトリであれば、使用するAIツールに関係なく表示されます。
cmuxはAIコーディングエージェント時代のターミナルとして、従来ツールにはない価値を提供します。
少数精鋭チームで複数のAIエージェントを同時に走らせる開発スタイルを実現するために、まずはHomebrewでインストールしてClaude Codeとの組み合わせを試してみてください。
株式会社StartLinkは、事業推進に関わる「販売促進」「DXによる業務効率化(ERP/CRM/SFA/MAの導入)」などのご相談を受け付けております。 サービスのプランについてのご相談/お見積もり依頼や、ノウハウのお問い合わせについては、無料のお問い合わせページより、お気軽にご連絡くださいませ。
株式会社StartLink 代表取締役。累計150社以上のHubSpotプロジェクト支援実績を持ち、Claude CodeやHubSpotを軸にしたAI活用支援・経営基盤AXのコンサルティング事業を展開。
HubSpotのトップパートナー企業や大手人材グループにて、エンタープライズCRM戦略策定・AI戦略ディレクションを経験した後、StartLinkを創業。現在はCRM×AIエージェントによる経営管理支援を専門とする。