Codex CLI /goal Command + Ralph Loop: Auto-Iterate 2026

Codex CLI /goal là gì? Đây là slash command experimental của Codex CLI cho phép set, pause, resume, view, hoặc clear một “task goal” , mục tiêu dài hạn mà Codex tự duy trì context trong nhiều turn, thay vì mỗi lần phải nhắc lại. Tính năng yêu cầu enable features.goals = true trong ~/.codex/config.toml. Per official slash commands reference truy cập 20/05/2026.

Quan trọng: “Ralph Loop” là tên cộng đồng dev đặt cho pattern goal-driven auto-iterate (plan → act → test → review → repeat), KHÔNG phải tên chính thức của OpenAI. Bài này phân biệt rõ /goal command (verified docs) và Ralph Loop (community pattern). Combo cả 2 giúp Codex chạy task multi-step dài mà không bị coherence drop sau bước 3-4 (sharp edge phổ biến nhất của Codex CLI).

📊 STATS

5 action
set, pause, resume, view, clear (per Codex CLI slash commands docs)
3-4 bước
Coherence drop threshold của Codex không có /goal , chính là pain point /goal giải quyết
4 use case
Production: debug long bug, refactor monorepo, big migration, doc generation
14 giờ
Autonomous run dài nhất ghi nhận, /goal chạy device driver project không stop (case MindStudio)
TL;DR

  • /goal command: experimental slash command của Codex CLI, manage task goal long-running, 5 sub-action (set, pause, resume, view, clear).
  • Enable: set features.goals = true trong ~/.codex/config.toml, restart session.
  • Ralph Loop: tên cộng đồng cho pattern plan → act → test → review → iterate. OpenAI co-founder Greg Brockman gọi /goal là “Ralph loop++” built-in, đánh dấu bash-wrapper era kết thúc.
  • 4 use case production: debug long bug, refactor monorepo cross-file, big migration database, doc generation series.
  • Anti-pattern: task ngắn one-shot KHÔNG cần /goal (overhead không đáng), task cần precise control nên dùng script cron/n8n thay vì agent loop.

Codex CLI /goal Command Là Gì? Ralph Loop Pattern Khác Gì?

/goal trong Codex CLI là một slash command experimental được giới thiệu trong các version v0.12x. Per official slash commands reference, command có 5 sub-action chính: set (đặt mục tiêu mới), pause (tạm dừng), resume (tiếp tục), view (xem trạng thái hiện tại), clear (xóa goal). Khi active, Codex tự duy trì goal context giữa các turn của conversation, không cần user nhắc lại mỗi turn.

Khác với /plan (chuyển sang plan mode để Codex output kế hoạch chi tiết), /goal tập trung vào persistence của mục tiêu lâu dài. Reader có thể đặt goal “Refactor toàn bộ module auth sang JWT”, chạy 10 turn conversation, mỗi turn Codex vẫn nhớ mục tiêu cuối là JWT refactor, không bị drift sang topic khác.

“Ralph Loop” là tên cộng đồng dev đặt cho pattern goal-driven iterative agent loop (plan → act → test → review → repeat). Tên xuất phát từ X/Twitter community giữa 2026, không có trong OpenAI documentation. Bài này dùng “Ralph Loop” để mô tả pattern conceptual; nếu reader cần cite trong tài liệu chính thức, nên dùng “goal-driven iterative loop” hoặc “agent self-iteration pattern” thay vì “Ralph Loop”.

Combo /goal + Ralph Loop giải quyết pain point #1 của Codex CLI: coherence drop sau bước 3-4 (đo trên ongboit production), khi tool quên context gốc nếu task dài. Detail tại bài Codex CLI là gì.

Enable /goal Experimental Feature Trong 30 Giây Như Thế Nào?

/goal còn ở giai đoạn experimental, cần explicit enable qua config. 3 bước:

Bước 1: Mở ~/.codex/config.toml qua editor quen:

nano ~/.codex/config.toml

Bước 2: Thêm section [features] với flag goals = true:

# ~/.codex/config.toml
[features]
goals = true   # Enable /goal experimental command

Bước 3: Restart Codex session để load config mới:

# Exit session hiện tại (Ctrl+D hoặc /exit)
# Mở session mới
codex

# Trong session, gõ /goal để verify
> /goal
# Output: "No active goal. Use /goal set [description] to start."

> /goal set Refactor module auth sang JWT, all endpoints affected
# Output: "Goal set: Refactor module auth sang JWT..."

> /goal view
# Output: shows current goal + progress notes

Detail config file syntax + các flag khác xem bài Codex CLI config.toml deep dive. Reader chưa cài Codex CLI bắt đầu ở hướng dẫn cài đặt.

/goal Khác /plan Của Codex Và /goal Của Claude Code Ra Sao?

Cả 3 command có tên hoặc chức năng tương tự nhưng scope khác nhau:

Command Tool Scope Persistent cross-turn?
/plan Codex CLI Plan mode: Codex output kế hoạch chi tiết cho 1 task Không (single turn)
/goal Codex CLI (experimental) Duy trì mục tiêu dài hạn cross-turn Có (until cleared)
/goal Claude Code (ship sau Codex) Tương tự Codex, có thêm Ralph Loop validator built-in Có (until cleared)
/init Claude Code Scan project + generate CLAUDE.md, không phải goal management N/A

/plan phù hợp khi reader cần roadmap cho 1 task cụ thể (Codex output 5-10 step list, sau đó execute từng step). /goal phù hợp khi reader muốn task dài chạy qua nhiều turn mà Codex vẫn nhớ mục tiêu gốc, không bị drift. Combo: dùng /plan lúc đầu để có kế hoạch, sau đó /goal set để keep mục tiêu suốt nhiều turn execution.

Ralph Loop Auto-Iterate: Pattern Hoạt Động Như Thế Nào?

Ralph Loop là cách community gọi pattern agent self-iteration với 4 stage:

  1. Plan: Codex đọc /goal hiện tại + context → output kế hoạch bước tiếp theo
  2. Act: Codex execute action (gọi tool, sửa code, run command)
  3. Test: Codex hoặc validator chạy verification (test pass, lint clean, type check)
  4. Review: Codex tự đánh giá kết quả vs goal , nếu match thì /goal clear, nếu chưa thì quay lại Plan với context mới

Pattern này giải quyết coherence drop step 3-4 vì mỗi iteration, Codex re-read /goal context, refocus vào mục tiêu gốc. Khác với chạy nhiều turn linear mà không có goal , Codex sẽ “quên” mục tiêu ban đầu sau vài turn.

Setup Ralph Loop đơn giản (không cần MCP server hay tool đặc biệt):

# Workflow Ralph Loop trong Codex CLI session

> /goal set Migrate database schema từ MySQL sang PostgreSQL, all tables

# Iteration 1
> /plan       # Codex output 8-step plan
> Execute step 1: scan schema
# (Codex chạy tool, output result)
> Run tests
# (test pass)
> Review vs goal
# Codex confirm step 1 OK, suggest step 2

# Iteration 2
> Execute step 2: convert types
# ... continue cho đến hoàn tất

> /goal view    # check progress bất kỳ lúc nào
> /goal clear   # khi xong toàn bộ migration

Pattern này có thể automate thêm qua Codex CLI hooks: dùng PostToolUse hook chạy test runner tự động sau mỗi action, Stop hook check goal progress. Combo /goal + hooks tạo pipeline review tự động.

Ralph Loop 4-stage cycle detailed: Plan reads /goal context to output next step, Act executes action with tool call, Test runs validator, Review evaluates vs goal then either /goal clear or back to Plan
Chu trình Ralph Loop 4 giai đoạn: Plan → Act → Test → Review → lặp lại đến khi /goal clear.

6 Element Của Goal Statement Tốt (Per OpenAI Cookbook)

Tránh goal chung chung “fix all bugs” hoặc “make it faster”. Theo official OpenAI cookbook, goal statement mạnh có 6 element rõ ràng:

Element Ý nghĩa Ví dụ ongboit
Outcome Cái gì should be TRUE khi xong “All n8n workflow ongboit pass schema validation”
Verification surface Test hoặc artifact CHỨNG MINH outcome n8n schema-validator exit code 0 cho 100% workflow”
Constraints Cái gì PHẢI KHÔNG regress “Existing webhook URL không đổi, GitHub Actions test pass”
Boundaries Resource Codex được dùng “Chỉ edit file trong n8n/workflows/, không touch scripts/
Iteration policy Cách decide next step “Sau mỗi error log, fix root cause, không patch surface”
Blocked stop condition Khi nào DỪNG nếu không có lối “Stop nếu cần thêm credential hoặc human approval”

Goal viết theo 6 element này giảm 60-70% time-to-completion trên ongboit test (8 vs 22 turn trung bình cho cùng task), Codex không loop vô tận hoặc giả vờ “done” khi chưa đạt outcome.

Codex 0.128.0 (30/04/2026) Cho /goal Persisted Mature

OpenAI ship /goal command chính thức trong Codex CLI 0.128.0 ngày 30/04/2026, persisted goal state cho phép pause-resume cross-session. Tecton & Tide case study chạy 6 giờ thực thi với 5 giờ pause giữa chừng, Codex resume đúng context. Goal mode giờ là default expectation cho coding agent serious, không còn là experiment. Cost note: /goal long-running task tiêu thụ token nhiều hơn one-shot prompt, xem Codex CLI pricing + 6 mẹo tối ưu cost cho quota planning trên ChatGPT subscription.

4 Use Case Production Của /goal Đáng Apply 2026 Là Gì?

Sau 1 tháng test trên ongboit production stack (Next.js + WordPress + n8n), 4 use case Ralph Loop ROI cao nhất:

Use case 1: Debug long bug cross-file. Bug type “Login API fail sau 30 phút uptime” cần điều tra qua 5-10 file (auth middleware, JWT validation, session store, rate limiter, log). Set goal: “Fix login API timeout bug, all files affected, test với 1000 concurrent users”. Codex tự iterate qua từng file, gather context, đề xuất fix, test verify. Test trên ongboit thấy task này solo Codex (không có goal) bị drift sau file thứ 3 và quên bug gốc, với goal hoàn tất trong 7-8 turn không drift.

Use case 2: Refactor monorepo cross-package. Refactor naming convention từ camelCase sang snake_case trong monorepo 15 package, mỗi package có 30-50 file. Set goal: “Rename all camelCase exports to snake_case, preserve import paths, add deprecation alias for 6 months”. Codex execute từng package theo iteration, /goal nhớ rule “preserve imports + add deprecation” suốt 15 lần lặp.

Use case 3: Big migration database. Migrate ongboit từ MySQL sang PostgreSQL cần convert schema, fix syntax incompatible, update query trong code, verify data parity. Set goal multi-stage. Khác với chạy migration script một lần, /goal cho phép pause giữa stage (review schema convert xong, sleep qua đêm, sáng mai /goal resume để tiếp data migration).

Use case 4: Documentation generation series. Tạo doc cho 50 API endpoint, mỗi endpoint cần intro + parameter + response + 3 example. Set goal: “Generate full API doc cho 50 endpoint theo Markdown format ongboit, có code example Python + JavaScript”. Codex iterate qua endpoint list, không cần user nhắc lại format hoặc convention mỗi lần.

🛠️ ENGINEER’S PERSPECTIVE

Sau 1 tháng dùng /goal command + Ralph Loop pattern trên ongboit production 47 PR, 3 sharp edge load-bearing:

  1. Experimental flag có thể đổi giữa version. /goal đang ở giai đoạn experimental, OpenAI có thể đổi syntax hoặc sub-action giữa các minor version. v0.131.0 hoạt động ổn nhưng v0.132+ có thể thay đổi. Workaround: pin Codex CLI version trong production setup, đừng auto-upgrade qua npm update -g nếu workflow phụ thuộc /goal. Đọc Codex changelog mỗi 2 tuần trước khi update.
  2. /goal tốn token đáng kể cross-turn. Mỗi turn, Codex inject goal context vào prompt, tăng token usage ~200-500 token cho goal description + progress notes. Task 10 turn = 2,000-5,000 token overhead riêng cho goal. Với ChatGPT Plus quota giới hạn, dễ hết quota nhanh hơn workflow không /goal. Workaround: set goal ngắn gọn (1-2 câu), KHÔNG nhồi nhét toàn bộ requirement vào goal description , đặt detail trong AGENTS.md hoặc docs/ để Codex đọc reference.
  3. Pause + resume cross-session không reliable. Docs nói /goal có thể pause + resume, nhưng cross-session (exit Codex, mở lại sau 4-5 giờ) đôi khi mất context. Lý do: history persistence có TTL ngầm, goal đi kèm conversation transcript. Workaround: lưu goal description vào file ngoài (.codex/goals.log) trước khi exit, manual re-set khi resume. Hoặc dùng codex resume <session-id> trong vòng 24 giờ để giữ context tốt nhất.

Quy tắc chung: Dùng /goal cho task > 5 turn có mục tiêu rõ. Task ngắn 1-3 turn không cần overhead. Combo /goal + hooks lifecycle (auto-test sau mỗi step) + MCP server (filesystem + git) + Skills (reusable workflow) là setup mạnh nhất cho long-running task production. Detail compare với Claude Code /goal trong Claude Code vs Codex CLI.

4 production use cases for Codex CLI /goal command: debug long bug cross-file, refactor monorepo cross-package, big database migration multi-stage, documentation generation series for 50 endpoints
4 use case production /goal đáng apply: debug long bug, refactor monorepo, big migration, doc generation series.

Khi Nào /goal KHÔNG Nên Dùng? Sharp Edges

3 scenario nên skip /goal:

Scenario 1: Task ngắn 1-3 turn. Goal overhead 200-500 token mỗi turn không đáng cho task quick. Direct prompt + execute nhanh hơn. Ngưỡng kinh nghiệm trên ongboit: nếu task ước tính < 5 turn thì skip /goal.

Scenario 2: Task cần precise control + reproducibility. Goal-driven agent loop có yếu tố stochastic, mỗi run có thể đi đường khác nhau. Nếu task production cần exact output mỗi lần (CI/CD pipeline, scheduled job), dùng script truyền thống qua n8n hoặc cron + codex exec "..." one-shot mode. Goal pattern phù hợp exploration hoặc creative task, không phải deterministic production job.

Scenario 3: Workload cost-sensitive với Free tier ChatGPT. Free tier rate limit ~50 message/3h, mỗi turn của /goal session tốn 1 message. Task 20-turn dùng /goal hết quota free 3 giờ nhanh chóng. Upgrade Plus $20 hoặc dùng task script cron thay vì agent loop.

Reader đã quyết định dùng /goal cho task production, recommend setup combo: enable features.goals trong config.toml + PostToolUse hook auto-test + MCP Filesystem + Git server cho cross-file analysis. Detail dual-tool workflow combine với Claude Code có trong bài Claude Code và Codex CLI cùng project.

👉 BÀI TIẾP THEO TRONG LỘ TRÌNH

Codex CLI Hooks: 8 Lifecycle Event + 5 Pattern 2026 – Đã setup /goal Ralph Loop? Bước tiếp theo: hooks lifecycle (8 event including PreCompact + PostCompact) để auto-validate state mỗi turn.

Quay lại pillar tổng quan: Codex CLI là gì – hướng dẫn toàn diện.

Câu Hỏi Thường Gặp

/goal có require Pro tier hay Free tier dùng được?

Free tier ChatGPT vẫn enable được features.goals = true nhưng quota giới hạn (~50 message/3h) hết nhanh khi chạy goal session dài. Plus $20/tháng là sweet spot cho daily use /goal. Pro $200 phù hợp khi chạy parallel nhiều goal session hoặc team multi-user. Detail pricing chi tiết hơn tại pricing comparison Claude Code Pro vs Max.

/goal có pause + resume cross-session được không?

Có nhưng không reliable cross-session lâu. Pause + resume trong cùng session hoạt động ổn. Cross-session: nếu exit Codex và mở lại trong 24h, goal context thường được restore qua history persistence (config [history] persistence = "save-all"). Lâu hơn (vài ngày) có thể mất context. Workaround production: lưu goal description vào .codex/goals.log file ngoài, manual re-set khi resume sau session gián đoạn dài.

Ralph Loop có phải official OpenAI term không?

Không. Ralph Loop là tên cộng đồng dev đặt cho pattern goal-driven iterative agent loop (plan → act → test → review → repeat). Tên xuất phát từ X/Twitter community giữa 2026, không có trong OpenAI documentation. Bài này dùng “Ralph Loop” để mô tả conceptual pattern; nếu cite trong tài liệu chính thức, dùng “goal-driven iterative agent loop” hoặc “agent self-iteration pattern”.

/goal đuối hơn task script tự viết bằng cron/n8n không?

Tuỳ task. /goal mạnh khi task có yếu tố exploration, không biết trước exact step (debug bug, refactor cross-file). Script cron/n8n mạnh khi task deterministic, reproducible mỗi run (daily report, schedule backup, fixed migration). Production stack ongboit dùng cả 2: /goal cho dev daily workflow exploration, n8n cho automation deterministic. Bài n8n + Claude Code workflow có pattern dùng n8n trigger.

/goal với MCP server tích hợp như thế nào?

MCP server và /goal hoạt động độc lập, không bị conflict. /goal quản lý conversation-level goal, MCP server cung cấp tool/data ngoài. Combo phổ biến: set /goal → trong iteration, Codex gọi MCP filesystem để đọc/sửa code, MCP git để analyze history, MCP github để tạo PR cuối cùng. Cài 7 MCP server phổ biến cho Codex tại bài MCP setup 7 server.

Similar Posts