Cursor CLI 搭配 Git Worktree:多 branch 同時有 AI 在跑

3 min read
Cursor CLI 搭配 Git Worktree:多 branch 同時有 AI 在跑

Git Worktree 讓同一個 repo 可以同時在多個目錄、多個 branch 上工作。Cursor CLI 的規則是「在哪個目錄跑,就改哪個目錄」。

兩個加在一起,結論很直接:多開幾個終端機、各自 cd 到不同 worktree、各自跑 cursor agent,就等於多個 AI Agent 並行處理不同 branch——不用開一堆 Cursor 視窗,鍵盤流就能多線作戰。

兩種並行方式

做法 適合誰
Worktree + 多個 Cursor 視窗 喜歡 IDE、要看檔案樹與預覽
Worktree + CLI 多終端機 習慣鍵盤流、或在伺服器 / SSH 環境

共通點是:每個 worktree 是獨立目錄,各自有獨立上下文,可以並行開發、互不踩腳。就像多個分身同時在不同 branch 上工。

最直接的用法:一個終端機對應一個 Worktree

假設你已經建好 worktree:

~/projects/
├── my-app/                   ← main
├── my-app--feature-auth/     ← feature/auth
└── my-app--feature-payment/  ← feature/payment

終端機 1(搞 auth):

cd ~/projects/my-app--feature-auth
cursor agent "實作 JWT 登入"

終端機 2(搞 payment):

cd ~/projects/my-app--feature-payment
cursor agent "加上 Stripe 結帳流程"

兩個 Agent 各自在自己的 worktree 裡跑,互不干擾。省資源、省切換,比開兩個 Cursor 視窗還清爽。

不想切目錄:用 --path 直接指定

人坐在主專案目錄,想讓 CLI 去改某個 worktree——加 --path 就好:

cd ~/projects/my-app
cursor agent "幫 feature/auth 加上單元測試" --path ../my-app--feature-auth

適合一次只處理一個 worktree、或腳本裡路徑固定的情境。

批次任務:對多個 Worktree 跑同一件事

PR 前想對幾個 branch 都跑一次 lint 修復:

cursor agent "依 .eslintrc 修復所有可自動修復的錯誤" --path ../my-app--feature-auth --no-interactive
cursor agent "依 .eslintrc 修復所有可自動修復的錯誤" --path ../my-app--feature-payment --no-interactive

或寫成迴圈:

for dir in ../my-app--feature-auth ../my-app--feature-payment; do
  cursor agent "修復 linter 錯誤" --path "$dir" --no-interactive
done

一次交代完,多個 branch 一起整理——PR 前的收尾作業交給腳本跑,你去做別的事。


Worktree 本來就是「多目錄、多 branch」;CLI 本來就是「以目前目錄為上下文」——這兩個組合起來幾乎是天生的。你需要的只是多開幾個終端機視窗。

下一步:07-unlimit-loop-debug — 讓 CLI 自動迴圈跑測試、修 code,直到測試全過再停。