Claude Code rất hiệu quả khi thực hiện từng tác vụ riêng lẻ, nhưng việc duy trì nhiều phiên làm việc cùng hướng tới một mục tiêu chung lại là một thách thức. Nếu cảm thấy mệt mỏi và giảm năng suất vì phải liên tục sao chép rồi dán kết quả qua lại giữa các cuộc hội thoại trên Claude Code, thì bạn không hề đơn độc.
Rất may, tính năng nhắn tin giữa các phiên (cross-session messaging) của Claude Code đã giúp giải quyết vấn đề này. Giờ đây, các phiên làm việc có thể trực tiếp truyền đạt những phát hiện, câu hỏi và cập nhật cho nhau mà không cần bạn phải thủ công sao chép và dán mọi thứ.
Hai cửa sổ terminal, hai tên gọi, và hai phiên bản Claude "trò chuyện" sôi nổi với nhau
Kiểm tra phiên bản, thiết lập mô hình "lập kế hoạch - thực thi", không cần sao chép-dán
Tính năng nhắn tin giữa các phiên không giống với những mô hình "nhóm agent" đang trong giai đoạn thử nghiệm. Nó cho phép kết nối các phiên làm việc do chính bạn khởi tạo và không yêu cầu bật bất kỳ flag thử nghiệm nào trên những phiên bản được hỗ trợ. Bạn chỉ cần sử dụng Claude Code phiên bản 2.1.224 trên macOS, Linux, WSL2, hoặc phiên bản 2.1.234 trên Windows.
Để thiết lập mô hình "lập kế hoạch - thực thi" đơn giản, hãy chạy lệnh claude --name planner --permission-mode plan trong một cửa sổ terminal và claude --name builder trong một cửa sổ khác. Chế độ "lập kế hoạch" (Plan Mode) cho phép phiên làm việc đầu tiên khám phá codebase và đề xuất các thay đổi mà không trực tiếp chỉnh sửa file. Việc đặt tên cho các phiên là tùy chọn, nhưng nó giúp việc gửi tin nhắn sau đó trở nên rõ ràng hơn. Bạn cũng có thể sử dụng lệnh /list-agents để hiển thị các phiên làm việc đang kết nối.
Khi đã sẵn sàng để hai phiên làm việc trao đổi với nhau, bạn chỉ cần yêu cầu phiên "lập kế hoạch" giải thích kế hoạch của nó cho @builder. Claude sẽ tự động xử lý việc tìm kiếm thông qua ListAgents và truyền tin nhắn qua SendMessage. Đây là các công cụ mà Claude tự gọi, bạn không cần phải thực thi chúng theo cách thủ công.
Để phiên "lập kế hoạch" suy nghĩ, và phiên "thực thi" chờ đến lượt mình
Việc chuyển giao công việc cần có bản tóm tắt, phạm vi rõ ràng và sự phê duyệt từ bạn trước khi bắt đầu viết code
Trước khi kết nối hai phiên làm việc Claude Code với nhau, bạn cần cân nhắc cách thức phân công nhiệm vụ và luồng dữ liệu đầu ra giữa chúng. Ví dụ, hãy xem xét việc thêm tính năng xác thực vào một ứng dụng web. Giao cho planner nhiệm vụ tìm hiểu các tuyến hiện có, chọn các điểm tích hợp và xác định những quyết định nhạy cảm về bảo mật. Sau đó, builder sẽ đảm nhận khâu triển khai, nhưng chỉ khi tôi đã phê duyệt phương pháp thực hiện. Điều kiện cuối cùng này cần được đưa vào hướng dẫn cho cả hai phiên làm việc.
Một câu lệnh (prompt) hiệu quả cho planner trong trường hợp này là yêu cầu agent nghiên cứu các phương thức xác thực, đề xuất phương án triển khai tối giản nhưng hợp lý, và chờ sự phê duyệt của bạn trước khi gửi kế hoạch đó cho builder. Bản kế hoạch này cũng nên bao gồm các đường dẫn liên quan, hành vi đã thống nhất, những ràng buộc và các bài kiểm tra nghiệm thu.
Khi kế hoạch ban đầu đã được chốt, builder có thể bắt tay vào triển khai, trong khi planner tiếp tục nghiên cứu các công việc tiếp theo. Điều này không có nghĩa là bạn có thể lập trình dựa trên các yêu cầu liên tục thay đổi. Hãy loại bỏ những quyết định chưa rõ ràng khỏi phạm vi công việc của builder và yêu cầu agent này báo cáo lại các trở ngại thay vì tự ý đưa ra giải pháp tạm thời.
Ví dụ, nếu builder phát hiện ra rằng một API hiện có xử lý các phiên làm việc (session) hết hạn theo cách khác với dự kiến, nó có thể gửi thông tin này lại cho planner. Điều này tạo ra một vòng lặp phản hồi, giúp phương pháp này hữu ích hơn nhiều so với việc thực hiện hai cuộc hội thoại độc lập. Quá trình triển khai có thể đóng góp ngược lại cho khâu lập kế hoạch mà không buộc tôi phải viết lại mọi cập nhật qua lại giữa hai bên.
Tuy nhiên, một hạn chế của phương pháp này là dù cả hai phiên làm việc đều được vận hành bởi Claude Code, chúng không tập trung tại một nơi và không chia sẻ ngữ cảnh với nhau. Những thông điệp trao đổi giữa các phiên chỉ bao gồm văn bản, chứ không bao gồm lịch sử hội thoại hay những file đính kèm của bên gửi. Do đó, mỗi lần chuyển giao công việc cần chứa đủ ngữ cảnh để có thể tự hiểu được mà không cần thêm thông tin bên ngoài.
Các nhóm agent hoạt động như một văn phòng thu nhỏ và hiện vẫn đang trong giai đoạn thử nghiệm (beta)
Mô hình này bao gồm một agent dẫn dắt, các agent thành viên, cùng một danh sách công việc chung được quản lý chặt chẽ
Nếu bạn có một nhiệm vụ đòi hỏi sự giám sát thường xuyên thay vì chỉ bàn giao công việc đơn thuần, các nhóm agent chính là giải pháp dành cho bạn. Một agent dẫn dắt sẽ điều phối các agent thành viên; mỗi thành viên đều có ngữ cảnh riêng và có thể nhắn tin trao đổi với nhau. Đây là tính năng thử nghiệm và mặc định đang bị tắt. Bạn có thể kích hoạt tính năng này bằng cách sử dụng flag sau:
CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
Trong các trường hợp này, hãy yêu cầu agent dẫn dắt khởi tạo các agent chuyên biệt: Một agent phụ trách backend, một agent phụ trách frontend và một agent phụ trách đánh giá, với phạm vi trách nhiệm được phân định rõ ràng cho từng bên. Khi sử dụng các công cụ quản lý tác vụ, những thành viên có thể chia sẻ danh sách công việc với các dependency đi kèm, giúp ngăn chặn việc bắt đầu những phần việc chưa đủ điều kiện thực hiện. Đây là cơ chế phối hợp tích hợp sẵn - điều mà việc nhắn tin giữa các phiên làm việc (session) không thể tự động giải quyết.
Dù vậy, bạn vẫn nên cung cấp các thông tin về kiến trúc và những ràng buộc cần thiết trong mỗi nhiệm vụ được giao. Việc các agent thành viên có thể truy cập ngữ cảnh dự án không đồng nghĩa với việc chúng tự động kế thừa toàn bộ lịch sử hội thoại của agent dẫn dắt. Tốt nhất là hãy cung cấp đầy đủ thông tin liên quan ngay từ đầu thay vì để các agent tự ứng biến.
Việc nhắn tin không ngăn được hai phiên bản Claude cùng chỉnh sửa một file
Các "worktree", những đặc thù trong quá trình triển khai, và lý do tại sao không ai có thể thay bạn phê duyệt công việc
Nhắn tin không ngăn được xung đột file. Các nhóm agent không tự động tách biệt những thành viên vào các "worktree" riêng biệt, vì vậy việc phân định rõ quyền sở hữu file quan trọng hơn bạn tưởng. Đối với các phiên làm việc độc lập cùng cần chỉnh sửa một file, bạn nên sử dụng lệnh claude --worktree feature-name để tạo một nhánh (branch) và không gian làm việc (checkout) riêng biệt. Một thông báo về thay đổi sẽ không tự động áp dụng thay đổi đó vào một "worktree" khác, vì quá trình tích hợp diễn ra ở một bước Git riêng biệt.
Ngoài ra, cơ chế gửi thông báo cũng không hoạt động như một nút ngắt. Một phiên làm việc đang hoạt động có thể đọc các tin nhắn gửi đến giữa những lần gọi công cụ, trong khi một phiên làm việc đang rảnh rỗi có thể bắt đầu một lượt xử lý mới. Tính năng kiểm soát đầu vào cho phép chấp nhận, giữ lại hoặc từ chối các thông điệp; vì vậy, nếu không nhận được phản hồi, bạn nên tìm hiểu nguyên nhân thay vì tiếp tục gửi thêm những yêu cầu.
Dù thế nào đi nữa, các quyền truy cập vẫn chỉ giới hạn trong từng phiên làm việc cụ thể; một phiên bản Claude khác không thể phê duyệt những hành động thay cho bạn. Ban đầu, điều này có vẻ bất tiện, nhưng đây là một ranh giới cần thiết.
Ít khâu trung gian hơn, nhưng vẫn đảm bảo sự kiểm soát
Phù hợp cho các công việc có thể tách biệt, nhưng lại tốn kém đối với những tác vụ khác
Năng suất tăng lên nhờ giảm bớt thời gian và sự chú tâm dành cho việc truyền đạt ngữ cảnh và mệnh lệnh giữa các phiên làm việc. Tuy nhiên, điều này không có nghĩa là bạn nên biến mọi chỉnh sửa nhỏ thành một cuộc họp giữa các AI agent. Mô hình này phát huy hiệu quả tốt nhất đối với các công việc có phạm vi trách nhiệm thực sự tách biệt.
Việc duy trì nhiều phiên làm việc cùng lúc sẽ tiêu tốn lượng token rất nhanh, đồng thời việc vận hành các nhóm agent cũng làm tăng thêm khối lượng công việc điều phối. Hãy thiết lập các nhóm một cách khôn ngoan; bạn sẽ sớm nhận thấy mình dành ít thời gian cho việc điều phối hơn và có nhiều thời gian hơn để tập trung vào việc xây dựng, tạo ra kết quả.
Hướng dẫn AI
AI Tools
Học IT










AI
Hàm Excel