← Tất cả bài viết
Claude · Hướng dẫn

Claude Code trên cloud: mỗi việc một máy

Phiên cloud cho mỗi việc một máy và một nhánh riêng: nhiều việc chạy song song, kể cả khi laptop ngủ, và trở về dưới dạng pull request.

Hãy hình dung ba người thợ may dùng chung một chiếc máy khâu. Người này đang may dở thì người kia cần máy, người thứ ba ngồi chờ kéo. Chẳng ai làm dở cả, chỉ là cả xưởng có đúng một chiếc máy. Giờ thử cho mỗi người một gian riêng, một bộ rập giống nhau, và dặn may xong thì mang áo lên cho mình kiểm tra. Vẫn những người ấy, nhưng không còn ai giẫm chân ai.

Đó gần như chính là khác biệt giữa chạy Claude Code trong terminal trên laptop và chạy nó trên cloud. Mình đã viết một phiếu ngắn về chuyện này trên Consonance; bài này là bản dài, giải thích lý do đằng sau từng dòng.

Ý chính trong một câu

Một phiên cloud chạy Claude Code trên máy riêng, mỗi việc một máy, với repo của bạn trên một nhánh mới: nhiều việc chạy song song không vướng nhau, và kết quả trở về dưới dạng nhánh hoặc pull request.

Vì sao laptop là nút thắt

Một phiên local phụ thuộc vào laptop theo ba cách. Nó dùng chung working tree với bạn, nên hai phiên trong cùng một repo có thể sửa cùng file và giành nhau cùng một port. Nó chạy bằng thông tin đăng nhập của bạn. Và nó dừng lại khi máy chuyển sang chế độ ngủ hoặc Wi-Fi rớt.

Phiên cloud gỡ cả ba nút thắt đó. Mỗi việc được cấp một máy ảo mới tinh, repo được clone sẵn lên một nhánh mới, phần cài đặt môi trường đã xong. Bạn có thể khởi động phiên từ claude.ai/code, app Claude trên điện thoại, app Desktop, terminal hoặc Slack, rồi theo dõi từ trình duyệt, điện thoại hay Desktop. Gập laptop lại: phiên vẫn chạy tiếp.

Theo bài hướng dẫn trên claude.dev, phiên cloud đi kèm các gói Pro, Max, Team và Enterprise mà không tốn thêm phí. Máy cloud không bị tính tiền riêng, và các phiên dùng chung hạn mức sử dụng với phần còn lại của Claude Code.

BạnMáy 1 · testMáy 2 · docsMáy 3 · lognhánh 1nhánh 2nhánh 3PR 1PR 2PR 3Mỗi máy: file riêng, port riêng, nhánh riêng
Mỗi việc một máy: mỗi phiên clone repo lên nhánh riêng và kết thúc bằng pull request riêng.

Ba việc, ba máy, 87 giây

Bài trên claude.dev có một lần chạy thật. Repo mẫu tên tidepool, một API Node nhỏ với ba vấn đề rất bình thường: một test cứ khoảng bốn lần chạy thì hỏng một, tài liệu API không còn khớp với code, và một logger ghép chuỗi để tạo từng dòng log. Tác giả khởi động ba phiên cloud trong vòng 16 giây, mỗi phiên một vấn đề. Cả ba xong hết 87 giây sau khi phiên đầu tiên bắt đầu.

Kết quả đáng chú ý ở cách làm, hơn là tốc độ:

  • Test chập chờn. Claude tìm ra một race condition trong cache, sửa đúng nguyên nhân trong code chứ không sửa test, rồi chạy cả bộ test 40 lần liên tiếp: 0 lỗi. Prompt chỉ yêu cầu ít nhất 30 lần.
  • Tài liệu. Claude bật server, chạy curl vào từng endpoint và tìm ra năm chỗ tài liệu cũ bị sai.
  • Logger. Claude viết logger JSON và thêm năm test. Trên đường đi, nó gặp đúng con bug cache mà phiên thứ nhất đang sửa. Nó báo lại, nhưng không đụng vào, vì việc đó nằm ngoài phạm vi của nó.

Điểm cuối là điều mình nhớ nhất. Sự cách ly có hai mặt: phiên logger không hề thấy bản sửa đang diễn ra ở phiên bên cạnh. Vì vậy hãy chia các việc song song theo ranh giới file, merge các nhánh theo thứ tự hợp lý, và đừng ngạc nhiên khi một phiên báo lỗi mà phiên khác đang xử lý rồi.

Bên dưới lớp vỏ

Bốn chi tiết làm thay đổi cách bạn làm việc hằng ngày:

  • Mỗi việc một máy riêng. Các phiên không thể đụng vào file hay port của nhau.
  • Token GitHub của bạn không bao giờ vào máy ảo. Một proxy giữ nó, còn phiên làm việc bằng một thông tin xác thực bị giới hạn và có thời hạn ngắn.
  • Cấu hình Claude của repo đi theo, của riêng bạn thì không. CLAUDE.md, rules, skills, agents và commands đi cùng repo; thư mục ~/.claude của bạn ở lại trên laptop. Nếu Claude cần biết cách chạy test tích hợp, repo phải ghi rõ điều đó.
  • Máy ảo nhàn rỗi sẽ bị thu hồi. Mở lại phiên, bạn nhận một máy mới với cuộc trò chuyện được khôi phục, nên hãy commit dần trong lúc làm.

Local hay cloud?

Phiên cloud không thay thế phiên local; phần lớn mọi người dùng cả hai. Ở lại local khi việc cần thứ chỉ máy bạn có: một database chứa dữ liệu thật trên máy, một dịch vụ sau VPN, GPU, trình giả lập điện thoại, hay phần cứng trên bàn. Cũng vậy với vòng lặp giao diện sát sao, khi bạn muốn thấy từng thay đổi trên trình duyệt trong vài giây.

Để thử

1. Khởi động một việc trên cloud từ terminal. claude --cloud clone remote GitHub của bạn ở nhánh hiện tại, nên hãy push các commit trước.

claude --cloud "Fix the flaky test in auth.spec.ts"

Để dọn một backlog nhỏ, mỗi việc một phiên, như trong bài gốc:

claude --cloud "Fix the flaky test in auth.spec.ts"
claude --cloud "Update the API documentation"
claude --cloud "Refactor the logger to use structured output"

2. Lấy một phiên đã xong về terminal của bạn. Teleport kiểm tra bạn đang ở đúng repo, tải nhánh của phiên về, checkout nó và nạp toàn bộ cuộc trò chuyện. Working tree phải sạch (nó sẽ đề nghị stash), và nhánh phải đã được push.

claude --teleport

3. Hoặc kết nối GitHub từ terminal bằng token gh sẵn có, ngay trong Claude Code. Với gói Team và Enterprise, chủ sở hữu tổ chức phải bật Quick setup trước.

/web-setup

Vài thói quen nên có

Mỗi việc một phiên: phiên nhỏ dễ review hơn và bỏ đi cũng chẳng tiếc. Đọc phần tóm tắt của Claude trước khi đọc diff. Và để ý hạn mức: các phiên song song tiêu hạn mức của gói song song, nên năm phiên dùng nhanh gấp khoảng năm lần một phiên.

Lời kết

Điều mình thích ở mô hình này là nó đưa agent viết code đến gần cách một nhóm làm việc thật sự: ticket được giao đi, nhánh được gửi về, bạn review. Laptop trở thành nơi bạn quyết định cái gì được merge. Mỗi việc một gian xưởng, luôn đòi bằng chứng, và dành sự chú ý của bạn cho các pull request.

Bài tóm tắt độc lập, không liên kết với Anthropic. Claude là nhãn hiệu của Anthropic, PBC. Mọi lệnh và số liệu đều lấy từ các nguồn bên dưới.

Nguồn

  1. Consonance · Claude Code trên cloud: mỗi việc một máy
  2. claude.dev · Claude Code in the cloud: a field guide to cloud sessions
  3. Tài liệu Claude Code · Claude Code on the web
  4. Tài liệu Claude Code · Cloud environments

#claude-code#cloud#git#workflow