測驗:為什麼要用 tmux 搭配 Claude Code?
共 5 題,點選答案後會立即顯示結果
1. tmux 的全名「Terminal Multiplexer」代表什麼意思?
2. tmux 的三層架構由外到內的正確順序是什麼?
3. 為什麼 SSH 斷線時,沒有使用 tmux 的 Claude Code 任務會消失?
4. 在 tmux 中,detach 和 attach 分別代表什麼操作?
5. 以下哪種使用情境,文章認為「可能暫時不需要 tmux」?
一句話說明
tmux 讓你在一個終端裡同時跑多個 Claude Code,互不干擾、斷線也不怕。
這篇在講什麼
如果你已經在用 Claude Code 寫程式,你一定遇過這些情況:Claude 正在幫你重構一大堆檔案,你只能乾等;SSH 到遠端伺服器跑 Claude Code,結果網路一斷,任務就沒了。
這篇文章會告訴你:tmux 是什麼、為什麼它能解決這些痛點、你的工作流適不適合用它。
Claude Code 是什麼?30 秒回顧
Claude Code 是 Anthropic 推出的終端 AI 開發工具。它不是網頁聊天介面,而是直接跑在你的終端(Terminal)裡的 AI 代理。
$ claude
# 啟動後,你直接在終端裡用自然語言跟 Claude 對話
# 它可以讀你的專案檔案、幫你寫程式、跑指令
Code language: PHP (php)關鍵特性:它「住」在終端裡。這代表它啟動時會佔據一整個終端視窗,你在等它回應的時候,這個終端就被佔走了。
記住這個前提,因為接下來的所有痛點都從這裡開始。
單一終端的三大痛點
痛點 1:等待時被鎖死
你的終端 你想做的事
┌─────────────────────┐
│ Claude Code 正在 │ 「我想開另一個檔案看一下...」
│ 分析 200 個檔案... │ 「我想跑一下 git log...」
│ 還要等 3 分鐘... │ 「我想測試剛改好的功能...」
│ ████░░░░░░░░ 30% │
│ │ --> 全部做不了,只能等
└─────────────────────┘
Claude Code 在處理大型任務時,你的終端就是被佔住的狀態。想做任何其他事?你只能再開一個終端視窗。開到後來,你的工作列塞滿了終端視窗,切換起來一團亂。
痛點 2:長時間任務佔據終端
假設你請 Claude Code 幫你:
- 重構整個專案的 API 層(可能要跑 10 分鐘以上)
- 幫你逐一修復 50 個 lint 錯誤
- 分析整個 codebase 後寫文件
這些任務一旦開始,你就得專門留一個終端給它。在任務跑完之前,這個終端什麼都不能做。
痛點 3:SSH 斷線,一切歸零
這是最痛的。
你的筆電 ──SSH──> 遠端伺服器
└── Claude Code 正在跑大任務...
WiFi 斷了 / 筆電蓋起來了 / VPN 掉了
你的筆電 ──SSH──> 遠端伺服器
└── Claude Code: (已經不在了)
SSH 連線一斷,終端裡的所有程序都會被終止。你精心下的指令、Claude 跑到一半的任務,全部消失。得從頭來過。
tmux 是什麼?
tmux 是一個「終端多工器」(Terminal Multiplexer)。
翻譯成白話:它讓你在一個終端視窗裡面,開出好幾個「虛擬終端」,而且這些虛擬終端可以在背景持續運作,即使你關掉了真正的終端視窗。
tmux 的三個核心概念
tmux 的世界長這樣:
Session(會話)
├── Window(視窗) 像瀏覽器的「分頁」
│ ├── Pane(面板) 像把一個分頁「分割」成好幾塊
│ └── Pane(面板)
├── Window(視窗)
│ └── Pane(面板)
└── Window(視窗)
├── Pane(面板)
├── Pane(面板)
└── Pane(面板)
| 概念 | 白話翻譯 | 類比 |
|---|---|---|
| Session | 一整個工作空間 | 一個專案的所有東西 |
| Window | 工作空間裡的分頁 | 瀏覽器的一個 tab |
| Pane | 分頁裡的分割區塊 | 把 tab 切成左右兩半 |
最小範例:tmux 長什麼樣
啟動前:你的終端
┌─────────────────────────────┐
│ $ _ │
│ │
│ │
└─────────────────────────────┘
啟動 tmux 後:看起來差不多,但底部多了一條狀態列
┌─────────────────────────────┐
│ $ _ │
│ │
│ │
│[my-session] 0:bash* │ <-- tmux 的狀態列
└─────────────────────────────┘
分割成兩個面板後:
┌──────────────┬──────────────┐
│ $ claude │ $ git log │
│ │ │
│ (Claude Code │ (你可以同時 │
│ 在這裡跑) │ 做其他事) │
│ │ │
│[my-session] 0:bash* │
└──────────────┴──────────────┘
這就是 tmux 的核心價值:一個終端視窗,多個工作區域。
tmux 怎麼解決 Claude Code 的痛點?
解法 1:多面板同時操作
┌──────────────┬──────────────┐
│ │ │
│ Claude Code │ 你的終端 │
│ 正在分析... │ $ git log │
│ ████░░ 30% │ $ npm test │
│ │ $ vim app.js│
│ │ │
└──────────────┴──────────────┘
左邊讓 Claude Code 跑它的,右邊你繼續工作。不用等,不用搶。
解法 2:背景執行 + 隨時回來看
# 步驟 1:在 tmux 裡啟動 Claude Code
$ claude
> 幫我重構整個 API 層
# 步驟 2:按 Ctrl+b 然後按 d,離開(detach)tmux
# Claude Code 繼續在背景跑,你去做別的事
# 步驟 3:10 分鐘後回來看結果
$ tmux attach
# Claude Code 的輸出完整保留,一行都沒少
Code language: PHP (php)翻譯:detach 就像「把工作最小化」,attach 就像「把它叫回來」。差別是:即使你關掉整個終端視窗,tmux 裡的任務也不會停。
解法 3:SSH 斷線也不怕
你的筆電 ──SSH──> 遠端伺服器
└── tmux session
└── Claude Code 正在跑大任務...
WiFi 斷了
你的筆電 ──SSH──> 遠端伺服器(重新連線)
└── tmux session(還在!)
└── Claude Code: 完成了!結果在這裡。
因為 tmux session 跑在伺服器上,不依賴你的 SSH 連線。連線斷了,tmux 裡的東西照樣運作。重新連線後,tmux attach 就能接回去,所有內容原封不動。
使用場景預告
這個系列接下來會教你實作這些場景:
場景 A:多個 Claude Code 實例同時開發
┌──────────────┬──────────────┐
│ Claude #1 │ Claude #2 │
│ │ │
│「重構 API」 │「寫測試」 │
│ │ │
└──────────────┴──────────────┘
Code language: CSS (css)兩個 Claude Code 同時跑不同任務,開發速度直接翻倍。
場景 B:一邊讓 Claude 跑、一邊寫程式
┌──────────────┬──────────────┐
│ Claude Code │ vim / code │
│ │ │
│「分析這段 │(你在另一邊 │
│ 程式碼...」 │ 繼續開發) │
│ │ │
└──────────────┴──────────────┘
不再被 Claude 的處理時間卡住,你的開發流程不會中斷。
場景 C:遠端開發不怕斷線
$ ssh dev-server
$ tmux attach -t work
# 接回昨天的工作進度,Claude Code 的對話紀錄完整保留
Code language: PHP (php)出門帶筆電、回家換桌機,工作進度無縫銜接。
判斷你是否需要 tmux
不是每個人都需要 tmux。看看以下檢查表:
你需要 tmux 的信號
- [ ] 你經常用 Claude Code 跑超過 1 分鐘的任務
- [ ] 你會同時想做多件事(等 Claude 回應時想跑其他指令)
- [ ] 你用 SSH 連到遠端伺服器開發
- [ ] 你想同時開多個 Claude Code 做不同任務
- [ ] 你曾經因為不小心關了終端而丟失 Claude 的輸出
勾了 2 個以上?這個系列很適合你。
你可能暫時不需要 tmux
- 你只在本機開發,Claude Code 的任務都很短(幾秒鐘就完成)
- 你習慣用 VS Code 的內建終端,已經有分割面板功能
- 你完全不用 SSH 遠端開發
即使如此,學會 tmux 的基本操作也不虧。它是一個投資報酬率很高的工具,一旦學會就回不去了。
安裝 tmux
在正式開始之前,先把 tmux 裝好。
macOS
brew install tmux
Ubuntu / Debian
sudo apt update && sudo apt install tmux -y
Fedora / RHEL
sudo dnf install tmux -y
Arch Linux
sudo pacman -S tmux
Windows(WSL)
如果你在 Windows 上用 WSL(Windows Subsystem for Linux),直接在 WSL 終端裡用上面的 Ubuntu 指令即可。
確認安裝成功
tmux -V
# 應該會顯示類似 tmux 3.4 的版本號
Code language: CSS (css)看到版本號就代表安裝成功。如果你看到 command not found,請確認你的套件管理器有正確執行。
Vibe Coder 檢查點
讀完這篇後,確認你理解了這些:
- [ ] Claude Code 跑在終端裡,會佔據一整個終端視窗
- [ ] tmux 讓你在一個終端裡開出多個虛擬工作區
- [ ] tmux 的三層結構:Session > Window > Pane
- [ ]
detach讓 tmux 在背景跑,attach把它叫回來 - [ ] SSH 斷線時,tmux 裡的任務不會中斷
- [ ] 你已經在自己的電腦上安裝了 tmux
下一篇預告
【tmux x Claude Code 教學】#02 會教你 tmux 的基本操作:怎麼建立 session、切割面板、在面板之間切換。全部都是「必看懂」的核心操作,學完就能馬上搭配 Claude Code 使用。
必看懂 vs 知道就好
必看懂(本篇核心):
- tmux 是「終端多工器」,讓你在一個視窗裡開多個終端
- Session / Window / Pane 三層概念
- Detach(離開但不關閉)和 Attach(重新接回去)
- tmux 的安裝方式
知道就好(後面的篇章會細講):
- tmux 的快捷鍵操作
- tmux 的設定檔(.tmux.conf)
- tmux 外掛生態系
進階測驗:為什麼要用 tmux 搭配 Claude Code?
共 5 題,包含情境題與錯誤診斷題。