AI Agent Loop: cách agent code tự sửa lỗi và làm xong việc

Một AI agent loop biến kiểu prompt-rồi-sửa thành một vòng lặp tự sửa lỗi: agent viết kế hoạch, dựng nó, tự đối chiếu công việc với kế hoạch, và lặp lại cho đến khi xong. Cách loop hoạt động trong Claude Code, Codex, Gemini CLI, Cursor và Ralph loop.

Cách mà phần lớn mọi người vẫn dùng một agent code AI trông giống như chơi bóng bàn. Bạn prompt, nó trả lời, bạn phát hiện chỗ sai, bạn lại prompt. Chính bạn là cỗ máy sửa lỗi, và bạn nằm trong vòng lặp ở từng lượt một.

Một loop lật ngược điều đó. Bạn mô tả cái mình muốn, agent bắt tay vào việc, tự viết checklist, tự tìm ra điểm yếu của mình, rồi chạy lại cho đến khi kết quả đứng vững. Bạn thôi làm cái thứ phải bắt lỗi. Agent tự bắt lỗi của chính nó.

Cú chuyển này không phải chiêu thổi phồng. Chính những người dựng nên các công cụ này đều dựa vào nó. Boris Cherny và Cat Wu, những người tạo ra Claude Code, nói về việc code trong các agent loop. Geoffrey Huntley, người đặt tên cho "Ralph loop", cho agent chạy suốt đêm trong một vòng lặp while đơn giản. Pattern này giờ đã có tên, và bạn nên hiểu nó trước khi đi chép ba cái prompt thấy trên Instagram.

Từ ping-pong prompt sang một loop

Một prompt đơn lẻ là một cú duy nhất. Bạn hỏi, bạn nhận câu trả lời, giao dịch kết thúc. Muốn cải thiện, bạn phải nhận ra khoảng cách rồi prompt lại. Nâng quy mô lên một feature thực thụ thì bạn đang làm hàng chục cú vi chỉnh bằng tay.

Một AI agent loop khép lại khoảng cách đó ngay bên trong agent. Bạn đặt một mục tiêu, agent lên kế hoạch, hành động, nhìn kết quả, rồi sửa, hết lần này đến lần khác, cho đến khi đạt mục tiêu. Bạn không biến mất, bạn vẫn rà soát ở cuối. Nhưng bạn không còn là nút thắt cổ chai ở mỗi vòng lặp nữa.

So sánh song song: bên trái là ping-pong prompt, nơi bạn prompt, agent trả lời, bạn sửa và bạn lặp lại bằng tay nên bạn là nút thắt cổ chai ở từng lượt. Bên phải là loop, nơi bạn đặt mục tiêu một lần và agent tự lên kế hoạch, dựng và tự rà soát, tự sửa lỗi cho đến khi xong, nên bạn chỉ bước vào ở cuối.

Ping-pong prompt đặt bạn vào vòng lặp ở từng lượt. Một loop thực thụ đặt agent vào đó.

AI agent loop thực ra là gì

Mọi vòng lặp agentic đều chạy theo cùng bốn nhịp: lên kế hoạch, hành động, quan sát, sửa lỗi. Agent quyết định bước tiếp theo, thực hiện nó (viết code, chạy một lệnh, đọc một file), đọc xem chuyện gì đã xảy ra, rồi điều chỉnh. Claude viết code, chạy test, thấy lỗi, sửa, chạy test lại. Cái vòng phản hồi đó chính là toàn bộ mánh khóe. Đó là thứ làm cho loop tự sửa lỗi chứ không chỉ lặp đi lặp lại.

Phiên bản mạnh nhất của loop chia những nhịp đó ra cho ba vai trò: một vai lên kế hoạch, một vai dựng, một vai rà soát. Giữ chúng tách bạch chính là thứ ngăn agent vừa viết bài vừa tự chấm điểm bài của mình trong cùng một hơi thở.

Loop ba lệnh mà bạn có thể chép ngay hôm nay

Đây là cách setup đang lan truyền lúc này, dựng lại thành ba slash command của Claude Code. Bạn dán mỗi cái một lần, agent tạo ra command, rồi bạn chạy chúng theo thứ tự.

Bộ lập kế hoạch, /spec:

Phỏng vấn tôi từng câu hỏi một cho đến khi bạn hiểu rõ tôi muốn gì.
Sau đó viết một kế hoạch chính xác vào specs/project.md: mục tiêu, các yêu
cầu cụ thể, các trường hợp biên, và cái gì nằm trong phạm vi so với ngoài
phạm vi. Giữ nó ngắn gọn và sắc bén, đừng viết thành tiểu thuyết.

Bộ dựng, /build:

Đọc specs/project.md và dựng đúng những gì nó mô tả, không gì hơn.
Khi xong, liệt kê từng yêu cầu trong kế hoạch và đánh dấu những cái nào
bạn đã làm.

Bộ rà soát, /review:

So sánh cái đã dựng với specs/project.md, theo từng yêu cầu một.
Với mỗi yêu cầu, nói rõ nó đã được làm hay chưa. Viết ra các chỉnh sửa cần
thiết và chuyển lại cho /build. Chỉ phê duyệt khi toàn bộ kế hoạch đã xong.

Ba lệnh, một loop: spec viết kế hoạch, build hiện thực hóa nó, review đối chiếu với kế hoạch và gửi các chỉnh sửa ngược về build. Nó cứ xoay vòng cho đến khi mọi yêu cầu được đáp ứng.

Vòng lặp agent tự sửa lỗi: một lệnh spec viết kế hoạch, một lệnh build hiện thực hóa nó, một lệnh review đối chiếu kết quả với kế hoạch theo từng điểm, gửi các chỉnh sửa ngược về build, và chỉ giao hàng khi toàn bộ kế hoạch đã xong.

Kế hoạch là nguồn chân lý. Review đo bản dựng dựa trên nó, chứ không dựa trên cảm tính.

Đây là spec-driven coding ở bên dưới: chính bản spec đã viết, chứ không phải lịch sử chat, mới là cái mà agent bị buộc phải tuân theo. Spec Kit mã nguồn mở của GitHub chính thức hóa cùng ý tưởng đó với /specify, /plan, /tasks/implement, và nó chạy trên Claude Code, Copilot, Cursor, Codex CLI lẫn Gemini CLI như nhau.

Vì sao một context mới làm loop hoạt động: Ralph loop

Geoffrey Huntley đã đặt tên cho phiên bản thẳng thừng nhất của tất cả chuyện này vào giữa năm 2025: Ralph loop. Ý tưởng là một vòng lặp shell đơn giản, đưa cho agent cùng một prompt đối chiếu với một bản spec đã viết, để nó chọn một task và giao hàng, rồi khởi động một agent hoàn toàn mới với context sạch và lại đưa đúng cái prompt đó.

while còn_todo; do
  agent --prompt "Làm task tiếp theo trong todo.md" --non-interactive
done

Phần không hiển nhiên là việc reset context. Một phiên dài sẽ mục ruỗng: cửa sổ đầy lên những lập luận cũ, những ngõ cụt và nội dung file đã lỗi thời, và mô hình lặng lẽ bắt đầu bỏ sót các chỉ dẫn. Mỗi vòng lặp Ralph là một agent mới, đọc repo hiện tại và danh sách todo từ ổ đĩa, làm một đơn vị công việc, commit, rồi thoát ra sạch sẽ. Huntley cố tình đặt tên theo nhân vật trong Simpsons: nó trông ngu đến mức không thể chạy được, vậy mà nó chạy. Nếu bạn từng thấy một phiên dài bắt đầu ảo giác, bạn đã hiểu vì sao một cửa sổ mới ăn đứt một cửa sổ phình to.

/loop và /goal của Claude Code

Claude Code tích hợp sẵn các nguyên thủy loop. /goal đặt ra một trạng thái kết thúc bền vững, "xong" trông như thế nào, và Claude đánh giá tiến độ dựa trên nó sau mỗi lượt thay vì chỉ chạy bước tiếp theo. /loop lặp lại một task theo một nhịp hoặc cho đến khi một điều kiện thành lập, với các dạng như /loop every 10m hoặc /loop until: <điều kiện>. Dùng chung với nhau, chúng tạo ra một loop tự định hướng, tự kết thúc: Claude làm việc với phần chênh lệch giữa trạng thái hiện tại và mục tiêu, và dừng lại khi mục tiêu được thỏa mãn hoặc khi bạn nhấn Ctrl+C.

Chi tiết đáng để ý: một loop giữ được tính liên tục. Nó nhớ những gì đã thử và vì sao thất bại, nên mỗi lượt dựa trên lượt trước thay vì lặp lại cùng một ngõ cụt. Đó là đánh đổi ngược lại so với việc reset context sạch của Ralph, và cả hai đều hợp lệ. Tính liên tục để tự sửa lỗi chặt chẽ, context mới khi cửa sổ đang mục ruỗng. Biết lúc nào nên rút ra cái nào mới là kỹ năng thực sự.

Cùng một loop, ở mọi provider

Loop không phải là một tính năng của Claude, nó là hướng đi mà cả ngành đang nhắm tới. Tên gọi khác nhau, hình hài thì không.

Công cụCơ chế loopCách nó tự sửa lỗi
Claude Code/goal + /loopMục tiêu bền vững, đánh giá phần chênh lệch mỗi lượt, dừng khi đạt
Codex CLI/goal"Phiên bản Ralph loop" của OpenAI: giữ một mục tiêu sống xuyên các lượt cho đến khi đạt
Gemini CLIplan-act-observe agenticLên kế hoạch, sửa, chạy kiểm tra, tự sửa lỗi mà không cần phê duyệt từng bước
Cursorchế độ agentLên kế hoạch các bước, sửa file, chạy trình biên dịch, vá những gì nó làm hỏng
Spec Kit (mọi agent)/specify /plan /tasks /implementSpec là nguồn chân lý xuyên suốt loop
Ralph / autoloopvòng lặp shell whileMột agent mới mỗi vòng lặp đối chiếu với một bản spec đã viết

Codex CLI đẩy loop đi xa nhất một cách công khai. Đội ngũ OpenAI giới thiệu /goal của họ như phiên bản Ralph loop của riêng mình, và Andrew Chen của a16z để nó chạy suốt một đêm trên một driver thiết bị, 14 giờ liên tục không can thiệp. Anh cũng lưu ý rằng nó sẽ "tăng mức dùng token lên 10.000 lần", đó là cái giá thành thật của việc để một agent cày suốt nửa ngày.

Cái bẫy: một loop khuếch đại mọi thứ

Một loop không chỉ khuếch đại output tốt, nó còn khuếch đại cả một kế hoạch tồi. Chĩa một agent tự sửa lỗi vào một bản spec mơ hồ và nó sẽ tự tin dựng nhầm thứ, rà soát nó dựa trên cùng bản spec mơ hồ đó, rồi phê duyệt. Kế hoạch chính là đòn bẩy. Một bản spec sắc bén tiết kiệm mười prompt, một bản mù mờ phí cả trăm.

Hai kiểu thất bại cần để mắt. Chi phí lồng lên: mỗi vòng lặp đốt token, và một loop không có giới hạn trên một mục tiêu mù mờ có thể đốt rất nhiều. Và loop có thể lặp mãi mãi, hoặc tuyên bố chiến thắng hoặc đuổi theo một mục tiêu nó không bao giờ thỏa mãn được. Hãy đặt giới hạn cho nó: một điều kiện until rõ ràng, một trần token, hoặc một điểm kiểm tra của con người trước khi merge. Một loop không có điểm dừng thì không phải là tự chủ, nó là một cỗ máy mất kiểm soát.

Chạy nhiều loop trên cả một đội

Một agent tự sửa lỗi duy nhất thì dễ trông chừng. Đòn bẩy lộ ra khi bạn chạy nhiều con cùng lúc, mỗi con lặp trên task riêng của nó, và đó chính xác là lúc việc nhìn chằm chằm vào một terminal hết co giãn nổi.

Đó là thứ mà AgentsRoom được dựng nên để làm. Nó là một buồng lái multi-agent: mỗi agent có một vai trò, một chấm trạng thái trực tiếp và màu riêng của nó, và bạn giám sát cả đội từ một cửa sổ duy nhất. Thả một ticket vào backlog và một agent sẽ nhặt lên, chạy loop plan-build-review của nó, rồi trao cho bạn một diff sạch. Đó là spec-driven AI coding trong thực tế: ticket là spec, agent chạy loop, bạn rà soát kết quả.

Vì các loop dài làm mục ruỗng context, AgentsRoom canh chừng điều đó. Mỗi agent viết một dòng trạng thái ở cuối mỗi lượt, và khi một agent ngừng cập nhật nó hai lượt liên tiếp, một cảnh báo hiện ra kèm nút khởi động lại một-cú-nhấp trên một context sạch, đúng kiểu reset cửa sổ mới mà Ralph loop dựa vào. Đọc xem nó hoạt động ra sao trên trang phát hiện trôi dạt context.

Và vì loop không phụ thuộc provider, bạn không bị khóa vào một nhà nào. Chạy một ticket trên Claude Code, ticket tiếp theo trên Codex, ticket khác trên Gemini CLI, tất cả trong cùng một dashboard, mỗi con lặp trong git worktree riêng để các agent song song không bao giờ va vào nhau. Khởi động chúng trước khi bạn đăng xuất rồi rà soát các diff vào buổi sáng, đó chính là toàn bộ điểm mấu chốt của agent code chạy nềnca đêm.

Đặt mục tiêu một lần, để loop khép nó lại, rà soát ở cuối. Tải AgentsRoom, xem ma trận tương thích provider, và đọc thêm về rà soát theo từng agenthỗ trợ đa provider. </content> </invoke>

Tải AgentsRoom

Chạy các agent AI của bạn (Claude, Codex, OpenCode, Gemini CLI, Aider) trên tất cả dự án, trong một cửa sổ duy nhất.

Miễn phíTải AgentsRoom

Ứng dụng đồng hành: theo dõi agent khi đi đường

Sử dụng Claude, Codex, Gemini CLI hoặc nhà cung cấp AI khác.

Tải tiện ích mở rộng
Chrome Web Store

Gửi lỗi và yêu cầu thẳng vào backlog công khai của bạn.

Một cái nhìn về AgentsRoom đang hoạt động.

Nhiều dự án
Đa nhà cung cấp
Nhiều agent
Trạng thái trực tiếp
File diff & commit
Ứng dụng đồng hành mobile
Xem trước trực tiếp
Đội agent
Tự động hóa trình duyệt
Dev theo backlog
Thư viện prompt
Thư viện skill
Xem tất cả tính năng