QuotaCheap Playbook
Prompt Codex đúng cách: Goal, Context, Constraints, Done cho coding agent
Hướng dẫn prompt Codex theo tài liệu OpenAI: goal, context, constraints, done when, plan mode, bug repro, tests, AGENTS.md, threads, local/cloud workflow v…
Codex làm việc tốt hơn khi task có mục tiêu rõ, context đúng file, constraint cụ thể và điều kiện hoàn thành đo được. Đây là playbook để biến prompt mơ hồ thành workflow có thể review.
Playbook tiếng Việt về cách prompt Codex theo tài liệu OpenAI: Goal, Context, Constraints, Done, plan mode, reproduction steps, validation commands, AGENTS.md, threads, local/cloud workflow, và cách kiểm soát chi phí khi dùng coding agent.
Codex không cần một prompt văn hoa.
Codex cần một task có thể làm, có thể kiểm chứng, và có biên an toàn rõ ràng.
Đây là khác biệt lớn giữa hỏi chatbot và giao việc cho coding agent.
Khi hỏi chatbot, prompt tệ thường chỉ tạo ra câu trả lời tệ.
Khi giao việc cho coding agent, prompt tệ có thể tạo ra diff tệ: sửa quá rộng, chạm sai file, chạy sai command, thêm dependency không cần thiết, hoặc “fix” bug bằng cách né test thay vì sửa root cause.
Tài liệu OpenAI về Codex nhấn mạnh một nguyên tắc rất thực dụng: Codex hiệu quả hơn khi bạn cho nó context đúng, chia việc thành bước nhỏ, và cho nó cách verify kết quả.
Trong best practices, OpenAI gợi ý prompt mặc định nên có bốn phần: Goal, Context, Constraints, và Done when.
Bài này biến bốn phần đó thành một playbook dùng được trong repo thật.
Bài viết này dành cho developer đã hiểu Codex là coding agent có thể đọc file, sửa file và chạy command, nhưng muốn dùng nó ít “hên xui” hơn.
Nếu bài 1 trả lời “Codex là gì”, bài 2 trả lời “giao việc cho Codex thế nào để kết quả đáng review”.
Vì sao prompt cho coding agent khác prompt cho chatbot?
Prompt chatbot thường tối ưu cho câu trả lời.
Prompt coding agent phải tối ưu cho hành động.
Một chatbot có thể trả lời: Một coding agent như Codex có thể bước vào repo, đọc file, sửa file, chạy test, xem lỗi, sửa tiếp, rồi báo cáo.
Theo docs về prompting, Codex hoạt động trong một loop: model đưa ra hành động, agent thực hiện các hành động như đọc file, edit file và tool calls, rồi tiếp tục cho tới khi task hoàn thành hoặc bị hủy.
Điều đó nghĩa là prompt của bạn không chỉ là yêu cầu viết code.
Nó là “work order” cho một teammate có quyền động vào workspace.
Prompt tốt cần trả lời được: Agent đang cố đạt outcome gì?
File, module, lỗi, spec nào là context quan trọng?
Những giới hạn nào không được vượt qua?
Khi nào được coi là xong?
Command nào chứng minh kết quả?
Nếu không verify được thì agent phải báo gì?
Nếu thiếu các phần này, Codex vẫn có thể làm được, nhưng nó phải đoán.