TL;DR

Tháng 4/2026, OpenAI ra mắt /goal command trong Codex CLI 0.128.0 - biến Codex từ "one prompt, one response" thành một autonomous agent chạy hàng giờ hoặc cả ngày không cần bạn giám sát. Vòng lặp gọi là Ralph Loop: Plan → Act → Test → Review → Iterate. Agent tự kiểm tra tiến độ, tự sửa lỗi, và chỉ dừng khi đạt mục tiêu hoặc hết token budget.

Nhưng để goal mode hoạt động tốt, bạn cần thay đổi cách viết prompt. Dưới đây là 3 nguyên tắc cốt lõi từ thực tế dùng goal mode cả trong dự án nội bộ lẫn side project.

Codex /goal - vòng lặp Ralph Loop: Plan, Act, Test, Review, Iterate

Mục tiêu phải cụ thể và đo lường được

Đây là điểm khác biệt lớn nhất so với cách bạn hay dùng ChatGPT thông thường. Với GPT-5.5, bạn có thể gợi ý mơ hồ kiểu "làm code tốt hơn" và model vẫn biết làm gì. Nhưng với goal mode thì khác hoàn toàn.

Goal mode là một vòng lặp: agent thực thi hành động, chấm điểm kết quả, kiểm tra xem điểm đó có đạt ngưỡng không, rồi quyết định tiếp tục hay dừng. Bước quyết định là bước kiểm tra - agent phải biết "done" trông như thế nào.

Với mục tiêu mơ hồ như "make my code better", agent rơi vào 1 trong 2 lỗi phổ biến:

  • Bỏ cuộc sớm sau vài phút vì không biết bao giờ đủ tốt
  • Chạy mãi không dừng, liên tục thay đổi ngẫu nhiên vì không có điểm đích

Thay vào đó, hãy viết như thế này:

"Giảm runtime của code trong specific_file.py xuống 20% mà không làm fail bất kỳ unit test hoặc integration test nào hiện có."

Agent có mục tiêu rõ (giảm 20% runtime cho file cụ thể) và constraint rõ (không fail test). Nó biết khi nào được dừng.

Một cách hay khác để biến goal định tính thành định lượng: dùng checklist. Ví dụ thực tế - task chuyển một NeurIPS paper sang format ICML workshop. ICML có hơn 200 quy tắc formatting trong file LaTeX khó đọc. Giải pháp: cho Codex trích xuất toàn bộ quy tắc ra một file checklist.md với hơn 200 mục checkbox. Mục tiêu khi đó là: "chuyển paper sang ICML format theo checklist.md mà không thay đổi nội dung kỹ thuật." Agent tự biết: hoàn thành = tick off 200/200 mục. Dù mỗi quy tắc vẫn có thể hơi mơ hồ, việc đếm số mục đã tick là điều kiện dừng rõ ràng hơn nhiều so với mục tiêu gốc.

Vòng phản hồi càng nhanh càng tốt

Để đánh giá tiến độ, agent cần một cơ chế test. Thời gian chạy test quyết định tốc độ học của agent - feedback loop càng nhanh, agent càng sớm biết mình đang đi đúng hướng hay không.

Ví dụ thực tế: task tìm kiến trúc cải tiến cho mô hình protein structure. Nếu chạy full training set, mỗi lần test mất cả ngày. Giải pháp: dùng NanoFold với dataset subsampled. Kết quả: runtime giảm từ ngày xuống còn vài phút mỗi lần lặp. Agent có thể thử nghiệm nhiều ý tưởng hơn trong cùng thời gian, tìm ra hướng đúng nhanh hơn đáng kể.

3 nguyên tắc dùng Codex goal mode hiệu quả: clear goal, tight feedback loop, markdown tracking

Nguyên tắc chung: tìm cách rút ngắn feedback loop mà không làm mất quá nhiều độ chính xác của kết quả đánh giá. Thay dataset lớn bằng sample đại diện. Chạy test subset thay vì full suite trên mỗi iteration. Agent sẽ học nhanh hơn, tiêu ít token hơn, và hoàn thành mục tiêu nhanh hơn.

Cho agent file Markdown để theo dõi

Goal mode có thể chạy liên tục nhiều ngày. Dù Codex có tính năng compaction khá tốt, việc duy trì ngữ cảnh mạch lạc qua một khoảng thời gian dài như vậy là thách thức lớn. Thay vì ép model giữ tất cả trong bộ nhớ, hãy cung cấp file Markdown để agent ghi chép.

Trong thực tế, 3 file này hoạt động tốt nhất:

  • PLAN.md - kế hoạch cấp cao agent sẽ theo. Bạn có thể seed file này với những ý tưởng ban đầu trước khi bắt đầu.
  • EXPERIMENTS.md - nơi agent ghi lại chi tiết từng experiment: tên, mô tả ngắn về cách tiếp cận, và kết quả. File này là danh sách curated, sạch sẽ.
  • EXPERIMENT_NOTES.md - scratchpad của agent. Danh sách theo thứ tự thời gian về suy nghĩ real-time khi thực thi. File này giúp bạn audit quá trình tư duy và can thiệp kịp thời nếu agent đi lệch hướng.

EXPERIMENTS.md là file quan trọng nhất trong ba file. Nó cho cả bạn lẫn agent thấy các lần thử trước đã làm gì, kết quả ra sao, và tại sao thành công hoặc thất bại. Khi context window dài, agent có thể refer lại file này thay vì phải nhớ mọi thứ từ đầu cuộc hội thoại.

Thêm một trick nhỏ: yêu cầu agent tick off các mục trong checklist khi hoàn thành. Vừa giúp bạn theo dõi tiến độ trực quan, vừa giúp agent persist state ra filesystem để không bị mất khi context được compacted.

Nên dùng goal mode khi nào?

Goal mode phù hợp nhất với các task:

  • Major version migration - Pydantic v1 → v2, Vue 2 → Vue 3, Webpack 4 → 5. Nhiều file cần sửa, success criteria rõ ràng (tests pass)
  • Tăng test coverage - "Tăng coverage của src/services/ từ 45% lên 85%, tất cả test phải valid"
  • Large-scale refactoring - thay toàn bộ axios bằng fetch trong monorepo
  • Bug investigation - reproduce, locate, fix, viết regression test cho một issue cụ thể
  • Tối ưu prompt - chạy eval suite, inspect failure, iterate cho đến khi đạt target score

Tránh dùng goal mode cho task mơ hồ ("cải thiện UX"), task cần business judgment (chọn giữa 2 hướng sản phẩm), hoặc task không có định nghĩa rõ ràng về "done".

Về pricing: /goal yêu cầu ChatGPT subscription (không dùng được qua API key). ChatGPT Plus $20/tháng hỗ trợ nhưng quota 1x dễ cạn với task dài. Pro $100/tháng là lựa chọn tốt nhất cho individual developer - quota 10x Plus (đến 31/5/2026, sau đó 5x).

Kết

Bộ ba nguyên tắc của goal mode rất đơn giản: đặt mục tiêu đo lường được, rút ngắn feedback loop, và cho agent file Markdown để nhớ. Với ba điều này, Codex sẵn sàng "grind" hàng giờ - thậm chí cả ngày - trên những bài toán khó nhất của bạn.

OpenAI đang hướng đến một tương lai mà Codex hoạt động như một "teammate" thật sự cho long-horizon work, không phải tool cần babysit. Theo benchmark của METR, thời gian task mà frontier agents hoàn thành với 50-80% reliability đang tăng gấp đôi mỗi ~7 tháng. Stress test thực tế đã xác nhận: GPT-5.3-Codex chạy 25 giờ liên tục, sinh ~30.000 dòng code và vẫn giữ được coherency.

Giờ thì go run some loops.

via OpenAI Codex - Follow a goal · Run long horizon tasks with Codex