
Plan Mode trong Claude Code: lên kế hoạch an toàn trước khi sửa code
Áp dụng Plan Mode của Claude Code để yêu cầu AI khảo sát codebase và đưa ra kế hoạch chi tiết trước khi chỉnh sửa, sau đó duyệt kế hoạch, cho thực thi
Bạn đã bao giờ để AI tự động sửa code và rồi phải ngồi debug lại toàn bộ thay đổi của nó? Nỗi lo AI "phá" nhiều hơn "sửa" là có thật. Plan Mode của Claude Code được sinh ra để giải quyết chính xác vấn đề này. Thay vì lao vào chỉnh sửa, Claude sẽ phân tích codebase, lập kế hoạch chi tiết và chờ bạn duyệt trước khi thực thi. Bài viết này sẽ đi qua cách kích hoạt Plan Mode, luồng làm việc 3 bước và một ví dụ refactor component React thực tế.
Plan Mode là gì và tại sao nó thay đổi cuộc chơi?
Plan Mode là một tính năng quan trọng trong Claude Code, cho phép AI hoạt động ở trạng thái chỉ đọc (read-only) [F1]. Thay vì ngay lập tức sửa đổi code, Claude sẽ phân tích codebase, tìm kiếm tệp và tạo ra một kế hoạch chi tiết [F1, F4]. Điều này giúp AI khảo sát và lên kế hoạch trước khi thực hiện bất kỳ thay đổi nào.
Lợi ích chính của Plan Mode là giúp tránh các lỗi tích lũy (cumulative errors) trong những tác vụ phức tạp [F4]. Khi Claude bắt buộc phải đọc code và đưa ra các câu hỏi, sau đó tạo kế hoạch để bạn xem xét, nó sẽ tăng cường độ an toàn và khả năng dự đoán kết quả [F4]. Bạn có thể duyệt kế hoạch đó và phê duyệt hoặc sửa đổi trước khi Claude thực thi từng bước [F3].
Workflow truyền thống có thể khiến AI sửa code trực tiếp, đôi khi dẫn đến lỗi dây chuyền khó kiểm soát. Với Plan Mode, quy trình làm việc được tách bạch rõ ràng: Claude phân tích tác vụ và đưa ra kế hoạch có cấu trúc, bạn xem xét và phê duyệt, sau đó Claude mới thực thi kế hoạch [F3]. Điều này thể hiện một chiến lược hiệu quả để tách biệt giai đoạn lập kế hoạch và thực thi, đặc biệt hữu ích cho các tác vụ lớn [F5].
Bạn có thể kích hoạt Plan Mode theo nhiều cách, ví dụ như nhấn Shift+Tab hai lần trong phiên làm việc, gõ `/plan` khi bắt đầu prompt, hoặc khởi động phiên với `claude --permission-mode plan` [F2].

🔧 Kích hoạt Plan Mode: 4 cách từ cơ bản đến nâng cao
Có bốn cách chính để kích hoạt Plan Mode trong Claude Code, từ tương tác nhanh đến tự động hóa hoàn toàn [F2]. Việc chọn cách nào tùy thuộc vào ngữ cảnh và mức độ kiểm soát bạn muốn có với Claude.
1. Tương tác nhanh: Nhấn Shift+Tab hai lần
Đây là cách đơn giản và tiện lợi nhất để bật/tắt Plan Mode trong một phiên làm việc đang diễn ra [F2]. Khi bạn đang tương tác với Claude, chỉ cần nhấn tổ hợp phím Shift+Tab hai lần. Cách này phù hợp khi bạn muốn nhanh chóng chuyển đổi giữa các chế độ để Claude lên kế hoạch hoặc thực thi ngay lập tức.
2. Trong prompt: Gõ /plan
Nếu bạn muốn đảm bảo một prompt cụ thể sẽ được xử lý trong Plan Mode, hãy bắt đầu prompt bằng `/plan` [F2]. Ví dụ, bạn có thể gõ `/plan refactor hàm X` để yêu cầu Claude lên kế hoạch refactor mà không thực hiện thay đổi ngay. Phương pháp này hữu ích khi bạn có một tác vụ cần lập kế hoạch rõ ràng trước khi thực thi.
3. CLI Session: Bắt đầu phiên với --permission-mode plan
Khi bạn biết rằng toàn bộ phiên làm việc sẽ tập trung vào việc lập kế hoạch và phân tích codebase, bạn có thể khởi động Claude Code với cờ `--permission-mode plan` [F2]. Điều này đảm bảo mọi tương tác trong phiên đó đều diễn ra trong Plan Mode, giúp bạn duy trì trạng thái quyền chỉ đọc [F1].
claude --permission-mode plan4. Tự động hóa: Chế độ headless với --print
Đối với các quy trình tự động hóa như CI/CD hoặc các script, bạn có thể sử dụng chế độ headless của Claude Code kết hợp với Plan Mode [F2]. Lệnh `--print` sẽ in kết quả ra console, và `--permission-mode plan` đảm bảo Claude chỉ đưa ra kế hoạch mà không sửa đổi tệp [F2]. Đây là cách mạnh mẽ để tích hợp khả năng lập kế hoạch của Claude vào các workflow không có sự tương tác của người dùng.
claude --print --permission-mode plan "your task"Luồng làm việc 3 bước: Plan -> Review -> Execute
Plan Mode trong Claude Code giúp mình làm việc hiệu quả hơn bằng cách chia nhỏ tác vụ thành ba bước rõ ràng: Lập kế hoạch (Plan), Duyệt kế hoạch (Review) và Thực thi (Execute) [F3]. Chế độ này đảm bảo Claude không sửa đổi code ngay lập tức, mà sẽ phân tích và đưa ra kế hoạch trước khi có sự đồng ý của mình [F1, F4].
Bước 1: Plan (Lập kế hoạch)
Ở bước này, Claude sẽ phân tích yêu cầu của bạn, đọc codebase và tạo ra một kế hoạch có cấu trúc. Kế hoạch thường là một danh sách các bước cần thực hiện, giống như một checklist. Điều này buộc Claude phải hiểu rõ codebase và đặt câu hỏi trước khi đề xuất thay đổi [F4].
Bước 2: Review (Duyệt kế hoạch)
Đây là bước quan trọng nhất, nơi bạn đóng vai trò "human-in-the-loop". Mình sẽ xem xét kỹ lưỡng kế hoạch mà Claude đưa ra. Cụ thể, mình cần kiểm tra những điểm sau: những file nào sẽ bị sửa đổi, logic thay đổi có hợp lý không, có bước nào thừa hoặc thiếu không. Việc này giúp mình tránh được những lỗi tích lũy khi thực hiện các tác vụ phức tạp [F4].
Bước 3: Execute (Thực thi)
Sau khi mình đã duyệt và đồng ý với kế hoạch, Claude sẽ bắt đầu thực thi từng bước một. Claude sử dụng công cụ `TodoWrite` để theo dõi tiến độ công việc, đảm bảo mọi thứ được thực hiện theo đúng trình tự [F3]. Quá trình này biến Claude từ một "coder tự động" thành một "trợ lý cấp cao", nơi sự giám sát của mình là không thể thiếu.

📊 Ví dụ thực tế: Refactor component React với Plan Mode
Mình cần refactor component `UserProfile` trong dự án React hiện có. Component này đang xử lý quá nhiều logic, từ fetching data đến hiển thị UI, và cần được tách nhỏ thành các sub-component chuyên biệt hơn. Mục tiêu là cải thiện khả năng đọc, tái sử dụng và dễ dàng bảo trì.
Đây là một tác vụ phức tạp, đòi hỏi Claude phải hiểu cấu trúc dự án, xác định các phần cần tách, và đảm bảo không phá vỡ các chức năng hiện có. Plan Mode sẽ rất hữu ích trong trường hợp này, vì nó buộc Claude phải đọc codebase và đưa ra kế hoạch chi tiết trước khi thực hiện bất kỳ thay đổi nào [F4].
Kích hoạt và lên kế hoạch
Để bắt đầu, mình kích hoạt Plan Mode bằng cách gõ `/plan` khi nhập prompt hoặc nhấn `Shift+Tab` hai lần trong phiên làm việc [F2]. Sau đó, mình đưa ra prompt cho Claude: "Refactor component UserProfile.tsx. Tách logic fetching data và hiển thị avatar thành các component riêng biệt. Đảm bảo component mới có thể tái sử dụng và không làm thay đổi hành vi hiện tại."
Claude sẽ bắt đầu phân tích codebase, đặc biệt là tệp `UserProfile.tsx` và các tệp liên quan. Trong Plan Mode, Claude hoạt động ở trạng thái chỉ đọc, nghĩa là nó có thể phân tích mà không sửa đổi bất kỳ tệp nào cho đến khi mình cho phép [F1]. Quá trình này giúp Claude đặt câu hỏi và tạo ra một kế hoạch có cấu trúc [F3].
Xem xét và thực thi kế hoạch
Sau khi phân tích, Claude sẽ trình bày một kế hoạch chi tiết. Kế hoạch này có thể bao gồm các bước như: tạo tệp `useUserProfileData.ts` cho logic fetching data, tạo tệp `AvatarDisplay.tsx` cho phần hiển thị avatar, và cập nhật `UserProfile.tsx` để sử dụng các component mới này. Mình có thể xem xét kế hoạch, yêu cầu Claude làm rõ hoặc điều chỉnh bất kỳ bước nào nếu cần [F3].
Khi mình phê duyệt kế hoạch, Claude sẽ thực thi từng bước một, và mình có thể theo dõi tiến độ thông qua TodoWrite [F3]. Điều này giúp mình kiểm soát quá trình refactor, tránh các lỗi tích lũy trong các tác vụ phức tạp [F4]. Với các phiên bản mới hơn như Claude Opus 4.8, Plan Mode có thể xử lý các tác vụ lớn hơn bằng cách lập kế hoạch công việc và chạy hàng trăm tác nhân phụ song song [F5].
Cách triển khai trong dự án thực tế
Để triển khai Plan Mode trong dự án thực tế, bạn có thể kích hoạt nó theo nhiều cách khác nhau. Cách phổ biến là nhấn Shift+Tab hai lần trong phiên làm việc, hoặc gõ `/plan` khi bắt đầu một prompt mới [F2]. Với các quy trình làm việc tự động, mình có thể dùng chế độ headless plan mode bằng lệnh `claude --print --permission-mode plan "your task"` [F2].
Plan Mode hoạt động theo một quy trình có cấu trúc: Claude sẽ phân tích tác vụ, sau đó tạo ra một kế hoạch chi tiết. Bạn có thể xem xét, phê duyệt hoặc sửa đổi kế hoạch này trước khi Claude thực thi từng bước. Tiến độ của tác vụ được theo dõi thông qua TodoWrite [F3].
Chế độ này đặc biệt hữu ích để cải thiện chất lượng phát triển được hỗ trợ bởi AI, vì nó buộc Claude phải đọc kỹ codebase và đặt câu hỏi, giúp tránh các lỗi tích lũy trong các tác vụ phức tạp [F4]. Claude Opus 4.8 còn giới thiệu "dynamic workflows" cho phép Claude Code lập kế hoạch, chạy hàng trăm tác nhân phụ song song và xác minh đầu ra, giúp xử lý các tác vụ lớn hơn [F5].
Tóm lại, Plan Mode biến Claude từ một AI chỉnh sửa khó lường thành một trợ lý đáng tin cậy, luôn hỏi ý kiến bạn trước khi hành động. Áp dụng luồng Plan-Review-Execute là bước đầu tiên để tích hợp AI vào workflow một cách an toàn. Để xem tính năng này hoạt động trực quan, bạn có thể xem video demo gốc của Anthropic.