Claude Code Worktree 2026: Git Isolation Parallel Agents

Diagram showing multiple Claude Code worktrees running in parallel from a single Git repository, each isolated in its own working directory.
Claude Code Worktree cho phép chạy nhiều tác vụ song song mà không cần phải stash hay switch branch liên tục.

Mình từng mất cả buổi sáng chỉ vì một vòng lặp quen thuộc: đang fix bug trên nhánh hotfix/login, cần chạy thêm một task AI khác, phải stash, switch branch, rồi mất context hoàn toàn. Khi Claude Code là gì ra mắt tính năng --worktree từ phiên bản v2.1.50, cái vòng lặp đó chấm dứt. Git worktree không phải công nghệ mới, nhưng tích hợp native vào Claude Code lại thay đổi hoàn toàn cách mình làm việc với AI trong dự án thực tế.

TL;DR

Claude Code Worktree (flag --worktree / -w từ v2.1.50) tạo thư mục làm việc riêng biệt cho mỗi tác vụ AI, liên kết cùng một repo. Bạn chạy nhiều phiên Claude song song mà không cần stash hay switch branch. Giới hạn thực tế: 3-5 worktrees đồng thời trước khi disk overhead trở thành vấn đề. Kết hợp với sub-agents qua isolation: worktree là combo mạnh nhất cho parallel development.

v2.1.50
Phiên bản Claude Code có flag --worktree

~9.82 GB
Disk dùng thêm từ repo 2 GB sau 20 phút chạy

3-5
Số worktrees song song thực tế tối ưu

2015
Năm Git 2.5 ra mắt git worktree (tháng 7)

How worktree works: shared history separate workspaces
Slide 1/4: How worktree works: shared history separate workspaces.
Sub-agent isolation: 3 agents 3 worktrees parallel
Slide 2/4: Sub-agent isolation: 3 agents 3 worktrees parallel.
Worktree vs Branch vs Stash comparison
Slide 3/4: Worktree vs Branch vs Stash comparison.
Limitations: disk 9.8GB max 3-5 parallel shared Docker
Slide 4/4: Limitations: disk 9.8GB max 3-5 parallel shared Docker.

Git Worktree Là Gì Và Tại Sao Claude Code Cần Nó?

Git worktree là tính năng ra mắt từ Git 2.5 (tháng 7/2015) cho phép tạo nhiều thư mục làm việc riêng biệt cùng chia sẻ một repo duy nhất (git-scm.com, 2015). Thay vì một repo chỉ có một working directory, bạn có thể mở 3-4 nhánh song song mà không cần clone lại. Mỗi worktree hoạt động độc lập, có trạng thái riêng, nhưng dùng chung object store của Git.

Trước khi Claude Code hỗ trợ worktree native, workflow thông thường là: stash thay đổi hiện tại, switch branch, chạy AI task, commit, switch lại, pop stash. Quy trình này tốn thời gian và hay làm mất context. Với --worktree, mỗi phiên Claude Code chạy trong môi trường hoàn toàn cách ly. Bạn không cần lo conflict hay mất thay đổi chưa commit.

Lý do Claude Code cần worktree cụ thể hơn so với dùng raw git: Claude Code tự quản lý vòng đời worktree (tạo, theo dõi, dọn dẹp), tự copy file .env vào worktree mới qua .worktreeinclude, và tích hợp trực tiếp với cơ chế sub-agents để chạy các tác vụ AI hoàn toàn song song. Đây là sự khác biệt lớn so với việc tự gõ git worktree add bằng tay.

How worktree works: shared history separate workspaces
How worktree works: shared history separate workspaces.

Worktree Trong Claude Code Hoạt Động Thế Nào?

Claude Code Worktree, ra mắt từ v2.1.50, lưu worktree tại .claude/worktrees/<name>/ và tự động tạo nhánh worktree-<name> (code.claude.com, 2025). Nếu bạn không đặt tên, Claude Code sinh tên ngẫu nhiên kiểu bright-running-fox. Phiên bản v2.1.72 bổ sung thêm hai tools nội bộ là EnterWorktreeExitWorktree, cho phép sub-agents chuyển context vào và ra khỏi worktree một cách lập trình.

Luồng hoạt động cơ bản như sau: bạn gọi claude --worktree feature-auth, Claude Code fork ra một worktree mới tại .claude/worktrees/feature-auth/, tạo nhánh worktree-feature-auth từ HEAD hiện tại, rồi chạy phiên AI mới trong thư mục đó. Phiên gốc của bạn không bị ảnh hưởng gì. Hai phiên chạy song song, mỗi phiên có file system riêng, trạng thái riêng.

Vấn đề secrets và biến môi trường được xử lý qua file .worktreeinclude. Bạn liệt kê các file cần copy vào worktree (ví dụ: .env, .env.local) trong file này, và Claude Code tự động copy chúng khi tạo worktree mới. Đây là chi tiết quan trọng: nếu không có .worktreeinclude, worktree mới sẽ không có file .env và các lệnh cần API key sẽ fail.

Lưu ý trước khi tạo worktree: Chạy git remote set-head origin -a để sync HEAD với remote trước. Nếu bỏ qua bước này, Claude Code có thể tạo worktree từ commit cũ hơn dự định, đặc biệt khi làm việc trên repo mới clone.

Cách Setup Worktree Từng Bước?

Setup worktree chỉ cần vài bước cơ bản, nhưng làm đúng thứ tự sẽ tránh được phần lớn lỗi phát sinh. Tài liệu chính thức của Claude Code (code.claude.com/docs, 2025) khuyến nghị sync remote trước, tạo .worktreeinclude, rồi mới gọi flag --worktree.

Bước 1: Sync remote HEAD

git remote set-head origin -a

Bước 2: Tạo file .worktreeinclude ở thư mục gốc repo, liệt kê các file cần copy vào worktree:

# .worktreeinclude
.env
.env.local
.env.development

Bước 3: Khởi động Claude Code với worktree. Bạn có ba cách:

# Đặt tên rõ ràng (khuyến nghị)
claude --worktree feature-auth

# Viết tắt
claude -w bugfix-123

# Tên tự động (Claude sinh ra, ví dụ: bright-running-fox)
claude --worktree

Bước 4: Kiểm tra worktrees đang chạy bằng lệnh git thuần:

git worktree list

Khi tác vụ hoàn thành, Claude Code xử lý cleanup tự động theo quy tắc đơn giản: nếu worktree không có thay đổi mới, nó bị xóa hoàn toàn. Nếu có commit mới, Claude Code hỏi bạn muốn giữ hay xóa. Mình thấy cách này thực dụng hơn so với phải tự cleanup bằng git worktree remove.

Sub-Agents + Worktree: Chạy Song Song Thế Nào?

Kết hợp sub-agents với worktree là cách dùng mạnh nhất của tính năng này. Từ v2.1.72, Claude Code hỗ trợ isolation: worktree trong frontmatter của file sub-agent, cho phép mỗi agent chạy trong worktree riêng biệt (code.claude.com/docs/sub-agents, 2025). Đây là cách triển khai parallel development thực sự, không phải chỉ là chạy nhiều terminal.

Cấu trúc một sub-agent file với worktree isolation trông như thế này:

---
name: feature-builder
isolation: worktree
description: Build new feature in isolated worktree
---

Build the authentication feature. Create JWT middleware,
update user routes, write unit tests. Do not modify
existing database schema.

Khi parent agent gọi sub-agent này, Claude Code tự động tạo worktree mới, chạy sub-agent trong đó, rồi trả kết quả về. Parent agent không cần biết gì về worktree mechanics. Bạn có thể gọi 3-4 sub-agents với isolation: worktree cùng lúc, mỗi cái làm một feature khác nhau, hoàn toàn song song.

Mình thường dùng pattern này khi refactor lớn: một sub-agent lo frontend, một lo backend, một lo viết test. Tất cả chạy cùng lúc. Chỉ cần đảm bảo các sub-agents không đụng vào cùng một file, vì không có lock mechanism giữa các worktrees. Nếu muốn hiểu sâu hơn về cách cấu hình sub-agents, bài về Claude Code sub-agents giải thích đầy đủ frontmatter syntax và các isolation modes khác.

6 Use Cases Thực Tế Nào Hay Nhất?

Sau vài tháng dùng Claude Code Worktree trong dự án thực tế, mình đúc kết được 6 tình huống mà tính năng này thực sự tỏa sáng. Không phải lúc nào worktree cũng là lựa chọn tốt nhất, nhưng với 6 tình huống dưới đây, nó gần như không có đối thủ.

1. Hotfix trong khi đang develop: Đang code feature dài hơi, production báo lỗi cần fix gấp. Tạo claude -w hotfix-payment, fix xong, merge, quay lại feature không mất context một chữ.

2. A/B testing implementation: Muốn thử hai approach khác nhau cho cùng một feature trước khi quyết định. Tạo claude -w approach-aclaude -w approach-b, so sánh kết quả, chọn cái tốt hơn.

3. Code review cùng lúc code: Review pull request của đồng nghiệp trong một worktree, vừa tiếp tục code task của mình trong main tree. Không cần stash, không cần commit WIP.

4. Chạy CI/CD locally song song: Một worktree chạy test suite dài, worktree khác tiếp tục development. Khi test xong báo lỗi, switch qua fix ngay mà không gián đoạn luồng code đang chạy.

5. Refactor lớn với sub-agents: Tách toàn bộ refactor thành 3-4 sub-tasks, mỗi task chạy trong worktree riêng với isolation: worktree. Thời gian hoàn thành giảm đáng kể so với làm tuần tự.

6. Documentation độc lập: Một worktree chuyên cho nhánh docs, không bao giờ bị ảnh hưởng bởi code changes. Cập nhật docs song song với development, merge độc lập.

Mẹo từ thực tế: Đặt tên worktree theo convention type-description (ví dụ: feat-auth, fix-login, docs-api) giúp output của git worktree list dễ đọc hơn nhiều, nhất là khi có 3-4 worktrees chạy cùng lúc.
Worktree vs Branch vs Stash comparison
Worktree vs Branch vs Stash comparison.

Worktree vs Branch vs Stash: Chọn Cái Nào?

Đây là câu hỏi mình nhận nhiều nhất từ cộng đồng ongboit.com: “Đã có branch và stash rồi, tại sao cần worktree?” Câu trả lời ngắn: nếu bạn cần chạy song song thực sự mà không switch context, worktree là lựa chọn duy nhất trong ba cái. Nếu chỉ cần save work tạm thời và quay lại sau, stash hoặc branch là đủ.

Tiêu chí Stash Branch Worktree
Chạy song song Không Không
Context switch overhead Trung bình Trung bình Gần bằng 0
Disk overhead Tối thiểu Tối thiểu Đáng kể
Claude Code native Không Không Có (–worktree)
Tích hợp sub-agents Không Không Có (isolation: worktree)
File .env trong môi trường Tự động Tự động Cần .worktreeinclude
Phù hợp nhất khi Save tạm, quay lại ngay Phát triển tính năng tuần tự Nhiều task cùng lúc, AI parallel

Một điểm quan trọng mà bảng so sánh không nắm bắt được: stash pool trong Git là shared. Nghĩa là nếu bạn git stash trong một worktree, stash đó xuất hiện trong tất cả các worktrees khác. Cẩn thận khi dùng stash song song với worktree, vì git stash pop sai worktree sẽ gây ra conflict khó debug.

Limitations: disk 9.8GB max 3-5 parallel shared Docker
Limitations: disk 9.8GB max 3-5 parallel shared Docker.

Cập Nhật Tháng 5/2026: worktree.baseRef + Desktop Auto-Spawn

🛠️ ENGINEER’S PERSPECTIVE

Sau 6 tuần dùng worktree pattern trên 3 production codebase (monorepo Next.js, Python pipeline, Rust service), đây là 3 sharp edge cần biết trước khi commit:

  1. Worktree pollution sau crash. Claude Code Desktop crash để lại stale entries trong .git/worktrees/sess-*. Tích lũy 50-100 entries sau 1 tháng, làm git status chậm 2-3 giây. Workaround: cronjob hàng tuần git worktree prune hoặc Git hook post-checkout cleanup.
  2. baseRef “head” gây leaked WIP. nếu set worktree.baseRef: “head”, mọi worktree mới inherit local uncommitted change. Pattern nguy hiểm khi WIP có credential hoặc debug log. Recommend: dùng “fresh” default, chỉ switch “head” cho experimental branch workflow.
  3. Symlink với submodule fail im lặng. worktree không hỗ trợ Git submodule full. Repo có nested submodule (e.g., shared library trong infra repo) gây checkout fail silent ở subdir. Workaround: git submodule update –recursive manual sau khi spawn worktree, hoặc avoid submodule pattern cho repo dùng worktree heavy.

Quy tắc chung: worktree pattern productivity x2-3 cho parallel agent, nhưng 3 sharp edge trên có thể block production workflow. Pre-flight test với codebase thực 1 tuần trước khi commit team-wide.

Phần này tập hợp 4 thay đổi lớn về worktree Anthropic ship tháng 4-5/2026: v2.1.133 setting worktree.baseRef, admin policy parentSettingsBehavior, hook effort levels qua $CLAUDE_EFFORT, và Desktop redesign auto-spawn worktree per session.

v2.1.133: worktree.baseRef Setting (fresh vs head)

Anthropic ship v2.1.133 ngày 7/5/2026 thêm setting worktree.baseRef control branch base cho mọi worktree mới tạo. 2 giá trị: fresh (default, branch từ origin/<default>) hoặc head (branch từ local HEAD, giữ unpushed commit).

Behavior trước v2.1.128: --worktree + EnterWorktree branch từ origin/<default> chuẩn. v2.1.128 đổi default sang local HEAD (gây confusion). v2.1.133 revert default về fresh (origin/default) và expose explicit setting cho user pick.

Setup trong ~/.claude/settings.json:

{
  "worktree": {
    "baseRef": "fresh"
  }
}

Khi nào dùng fresh: workflow standard, mỗi worktree start từ remote main, không có unpushed commit cần preserve. Default an toàn cho 90% case.

Khi nào dùng head: developer đang work-in-progress trên branch local có commit chưa push, muốn spawn worktree mới inherit những commit này. Pattern: refactor sequential trong cùng feature branch, mỗi worktree là một experimental fork.

Source chính thức: Claude Code changelog v2.1.133walkthrough YouTube (7/5/2026).

parentSettingsBehavior: Admin Policy Merge Cho SDK

v2.1.133 thêm admin-tier key parentSettingsBehavior với 2 value: first-wins (default) hoặc merge. Setting này control cách Claude Code SDK managedSettings (parent tier) tham gia vào policy merge với child setting.

Use case enterprise. Admin define global policy trong managed settings (e.g., “luôn dùng worktree.baseRef: fresh, không cho user override”). Trước v2.1.133, child setting tự động win. Sau v2.1.133, admin set parentSettingsBehavior: "first-wins" để policy parent locked.

Setup trong managed settings (admin tier):

{
  "parentSettingsBehavior": "first-wins",
  "worktree": {
    "baseRef": "fresh"
  }
}

Value merge giữ behavior cũ: child setting override parent. Phù hợp dev team flexible setup. Value first-wins phù hợp enterprise security-sensitive workflow.

Hook Effort Levels Qua $CLAUDE_EFFORT

v2.1.133 cũng update hooks system: mỗi hook trigger giờ nhận active effort level qua JSON input field effort.level và environment variable $CLAUDE_EFFORT. Bash tool commands cũng read được biến này.

3 effort level: low (default cho task đơn giản), medium (default standard), high (deep reasoning + extended thinking). User explicit set qua flag --effort high hoặc trong prompt.

Use case hook scripting. PreToolUse hook check effort level → if high, log thêm metadata cho audit. Bash command conditional behavior:

#!/bin/bash
if [ "$CLAUDE_EFFORT" = "high" ]; then
  echo "Deep reasoning mode, archive full trace"
  # Archive logic
fi

Hook recipe phổ biến: PostToolUse hook auto-commit code Claude generate, nhưng chỉ commit nếu effort high (để skip experimental low-effort change). Pattern này giảm noise trong git history.

Desktop Redesign Auto-Spawn Worktree (14/4/2026)

Bài Claude Code Desktop redesign cover redesign UI 14/4/2026. Một feature quan trọng: mỗi session Desktop tự spawn Git worktree riêng với pattern naming sess-{uuid} không clash branch name developer dùng.

Workflow auto-spawn. Drag folder vào sidebar tạo session mới → Desktop check folder có .git, có thì tự tạo .git/worktrees/sess-a3f2b9c1. Session làm việc trong worktree đó, không touch main working tree. Close session → cleanup worktree tự động (trừ khi có uncommitted change).

Naming convention sess-{uuid 8-char} tránh clash với branch developer (developer thường dùng feat/, fix/, refactor/ prefix). Setup default trong Desktop, không cần config thủ công.

Integration với worktree.baseRef. Auto-spawn worktree honor baseRef setting global. Set fresh → session mới luôn branch từ origin/default. Set head → session mới inherit local commit. Pattern này cho phép multi-session (xem Agent View dashboard) workflow consistent giữa Desktop và CLI.

Limitation auto-spawn. Max 10 session concurrent (theo cap Desktop). Beyond đó phải close session cũ. Anthropic suggest 5-8 session sweet spot productivity. Stale worktree (.git/worktrees/sess-* sau crash) phải manual git worktree prune hàng tuần cleanup.

Migration Path Từ Manual Worktree Sang Auto

Pattern migration cho team đang dùng manual worktree pattern (như bài này section trên cover):

  1. Tuần 1: install Desktop redesign, set worktree.baseRef: "fresh" default. Test 2-3 session concurrent.
  2. Tuần 2: migrate workflow manual git worktree add → drag folder vào Desktop. Time saved 30 giây/session.
  3. Tuần 3: setup hook effort level cho audit workflow. PostToolUse archive trace khi effort high.
  4. Tuần 4: nếu team enterprise, set parentSettingsBehavior: "first-wins" qua managed settings để lock policy.

Backward compat. Manual git worktree add ../sess-1 main vẫn work với CLI. Desktop auto-spawn không thay manual workflow, chỉ thêm option tiện cho session multi-task.

Giới Hạn Và Khi Nào Không Nên Dùng?

Worktree không phải là giải pháp cho mọi trường hợp. Theo tài liệu chính thức và kinh nghiệm thực tế của mình, giới hạn thực tế là 3-5 worktrees chạy đồng thời (code.claude.com, 2025). Vượt qua con số này, bạn sẽ đối mặt với ba vấn đề chính: disk overhead, resource contention, và độ phức tạp quản lý tăng vọt.

Disk overhead là vấn đề rõ ràng nhất. Repo 2 GB có thể ngốn thêm 9.82 GB disk chỉ sau 20 phút nếu tạo nhiều worktrees với nhiều thay đổi. Mỗi worktree là một copy của working directory, không phải chỉ là pointer. Với repo Node.js có node_modules lớn hoặc Python project có nhiều virtualenv, con số này có thể tệ hơn đáng kể.

Shared resources gây race condition. Nếu nhiều worktrees cùng kết nối đến cùng một Docker container hay cùng một database local, bạn sẽ gặp race condition khi chạy migration hay seed data. Worktree cách ly file system, không cách ly mọi thứ. Đây là điểm mà nhiều người nhầm lẫn khi mới dùng tính năng này.

Một branch chỉ thuộc một worktree. Bạn không thể checkout cùng một branch vào hai worktrees khác nhau. Nếu thử, Git báo lỗi ngay. Đây là constraint của Git, không phải của Claude Code.

Tình huống Dùng Worktree? Lý do
Fix bug + code feature cùng lúc Nên dùng Không cần switch context
Parallel sub-agents refactor Nên dùng isolation: worktree tích hợp sẵn
Chạy DB migration trong mỗi worktree Không nên Race condition, shared DB
Disk còn ít hơn 10 GB Cẩn thận Overhead đáng kể từ repo lớn
Task ngắn dưới 10 phút Tùy Stash hoặc branch nhanh hơn
Checkout cùng branch ở 2 worktrees Không thể Git constraint, 1 branch = 1 worktree

Mình cũng lưu ý thêm: Hooks trong Claude Code chạy ở level project, không phải level worktree. Nếu bạn có hook tự động format code hay chạy linter, nó sẽ áp dụng cho tất cả worktrees, không thể disable riêng lẻ từng cái. Đây đôi khi là điều mong muốn, đôi khi không.

Câu Hỏi Thường Gặp

Claude Code Worktree khác gì so với tự dùng git worktree add?

Dùng git worktree add thủ công, bạn phải tự quản lý toàn bộ: tạo nhánh, copy file .env, cleanup khi xong, và không có tích hợp với Claude Code session. Flag --worktree tự động hóa toàn bộ quy trình, tích hợp với .worktreeinclude để copy secrets, và xử lý cleanup thông minh dựa trên việc worktree có thay đổi hay không. Đặc biệt, isolation: worktree trong sub-agent frontmatter chỉ hoạt động với native worktree của Claude Code.

Tại sao phải tạo .worktreeinclude? Không thể dùng symlink .env?

Về mặt kỹ thuật, symlink hoạt động, nhưng có rủi ro: một worktree chỉnh sửa file .env sẽ ảnh hưởng tất cả worktrees khác vì chúng trỏ đến cùng một file. File .worktreeinclude là cơ chế copy, không phải link. Mỗi worktree có bản sao riêng, độc lập. Đây là cách an toàn hơn khi nhiều AI agents có thể cùng lúc ghi vào file config.

Worktree có dùng được trên Windows không?

Có, worktree hoạt động bình thường trên Windows với Git for Windows từ phiên bản 2.5 trở lên. Tuy nhiên, trên Windows, path separator là \ trong khi Claude Code một số nơi dùng /. Mình không gặp vấn đề gì trên Windows 11 với WSL2, nhưng nếu dùng Git Bash thuần, hãy kiểm tra lại CLAUDE.md để cấu hình shell đúng.

Xóa worktree như thế nào nếu muốn xóa thủ công?

Claude Code hỏi bạn khi session kết thúc nếu worktree có thay đổi. Nếu muốn xóa thủ công trước đó, dùng lệnh Git thuần: git worktree remove .claude/worktrees/<name> rồi xóa nhánh worktree-<name> bằng git branch -d worktree-<name>. Hoặc chạy git worktree prune để dọn sạch tất cả worktrees đã không còn thư mục.

Stash pool shared có nghĩa là gì trong thực tế?

Khi bạn chạy git stash trong một worktree, stash đó hiển thị trong git stash list ở tất cả worktrees khác. Nếu vô tình chạy git stash pop ở sai worktree, bạn sẽ apply thay đổi của worktree A vào worktree B. Quy tắc đơn giản: trong môi trường nhiều worktrees, hạn chế dùng stash. Dùng commit WIP (git commit -m "wip") thay thế, an toàn hơn nhiều.

Có thể dùng worktree với monorepo không?

Hoàn toàn được, và đây thường là use case hiệu quả nhất. Với monorepo chứa nhiều packages, mỗi worktree có thể focus vào một package riêng mà không ảnh hưởng các package khác. Tuy nhiên, disk overhead tăng nhanh hơn với monorepo lớn vì mỗi worktree copy toàn bộ working directory. Mình khuyến nghị dùng tiết kiệm token và scope rõ task cho từng worktree để tránh AI đọc file không cần thiết.

Skills và Hooks có hoạt động trong worktree không?

Hooks chạy ở level project nên áp dụng cho tất cả worktrees. Skills được load từ ~/.claude/skills/ (global) hoặc .claude/skills/ (project), do đó cũng có sẵn trong mọi worktree. Nói cách khác, configuration từ CLAUDE.md và skills được kế thừa hoàn toàn, trong khi working directory là riêng biệt. Đây là behavior mình thấy khá hợp lý.

Kết Luận

Claude Code Worktree giải quyết một vấn đề thực sự trong workflow hàng ngày: làm thế nào để chạy nhiều tác vụ AI song song mà không mất context, không stash liên tục, và không phải hy sinh tốc độ làm việc. Từ v2.1.50 với flag --worktree đến v2.1.72 với EnterWorktree/ExitWorktree, tính năng này trưởng thành nhanh và đã sẵn sàng cho production workflow.

Ba điểm mình muốn bạn nhớ sau bài này: thứ nhất, luôn tạo .worktreeinclude trước khi dùng worktree với project có file .env. Thứ hai, giới hạn thực tế là 3-5 worktrees song song, đừng tạo thêm chỉ vì có thể. Thứ ba, kết hợp isolation: worktree với sub-agents là pattern mạnh nhất, đặc biệt cho refactor và feature development song song.

Worktree không thay thế branch hay stash, nó bổ sung cho chúng. Biết khi nào dùng cái nào mới là kỹ năng thực sự. Nếu bạn đang cân nhắc workflow AI nâng cao hơn, xem thêm cách cấu hình Hooks để tự động hóa những bước lặp lại trong mỗi phiên Claude Code. Đọc thêm lộ trình 6 levels Claude Code để biết bạn đang ở đâu.

Tóm tắt
  • Dùng claude --worktree <name> hoặc -w để tạo worktree có tên rõ ràng
  • Tạo .worktreeinclude để copy .env vào worktrees tự động
  • Dùng isolation: worktree trong sub-agent frontmatter cho parallel AI tasks
  • Giữ tối đa 3-5 worktrees song song để tránh disk và resource overhead
  • Tránh dùng stash khi nhiều worktrees đang chạy, dùng WIP commit thay thế
  • Shared Docker/DB = race condition, worktree chỉ cách ly file system

Pattern combine: spawn worktree riêng, chạy /goal command trong worktree, verify pass rồi merge back main.

Similar Posts