Claude Code Và Codex CLI: Dùng Cùng 1 Project 2026
Tuần trước Claude Code bị stuck trên 1 bug xác thực trên ongboit production. Mình switch qua Codex CLI trong cùng terminal khác, paste session context, và Codex fix được trong 10 giây. Không phải vì Codex “thông minh hơn”, chỉ là 2 model có blind spot khác nhau, dùng song song = resilience. Cài session handoff skill cross-tool để smooth workflow Claude Code và Codex CLI.
Bài này tổng hợp 1 tuần dùng thật trên codebase ongboit (stack Next.js, WordPress, n8n) để chạy Claude Code và Codex CLI cùng 1 project mà không phải copy file 2 chỗ, không phải sửa config 2 lần. Nội dung dựa trên: tài liệu chính thức của OpenAI Codex v0.131.0 và changelog từ developers.openai.com, các thảo luận trên Hacker News và r/ChatGPTCoding trong tháng 5/2026, kết hợp đối chiếu với khoá học của Riley Brown (157K lượt xem) và series của Net Ninja (263K lượt xem).
Approach của ongboit khác phần lớn tutorial khác ở 3 điểm: (1) Vietnamese-first context bao gồm payment + VPN + Viblo references, (2) production-tested với hard numbers (47 PR đo lường, SWE-bench 77.3% vs 80.8%, latency p50 1.8s vs 1.2s, xung đột file 6.4%), (3) integrate với n8n + WordPress workflow đặc thù của site, không phải toy example generic.
TL;DR
- File mapping:
CLAUDE.md↔ AGENTS.md, .claude/ ↔ .codex/, skills/ ↔ .agents/, format markdown ↔ TOML cho agents - Vibe coding 2026: cả Claude Code và Codex CLI đều là AI coding agent terminal cho pattern “mô tả → AI viết code → review”, chạy cùng project được nhờ shared knowledge layer (CLAUDE.md ↔ AGENTS.md mapping).
- Convert nhanh: 1 prompt natural language tới Codex là project chạy được trên cả 2 tool trong dưới 5 phút, hoặc dùng tool tự động như claude-to-codex / ccode-to-codex bỏ qua manual prompt.
- Workflow: 2 terminal song song, mỗi tool edit file khác nhau, session handoff khi 1 bên stuck
- Verdict ongboit 1 tuần: Claude p50 1.2s/Codex 1.8s, xung đột file 3/47 PR (6.4%), saved 4 hours vs solo-tool
Đừng install cả 2 tool cùng lúc nếu mới bắt đầu. Pick 1 trước, dùng đủ 2 tuần để hiểu pattern, rồi mới migrate sang dual-tool workflow trong bài này. Lý do: install + auth + config + skill mỗi tool đều khác biệt, làm song song dễ rối flow ngay từ đầu.
Mới về vibe coding chưa pick tool nào? Đọc Codex CLI là gì để xem decision matrix CLI vs App vs IDE Extension và Claude Code là gì cho tool đối thủ. Đã pick xong và muốn so sánh trước khi commit? Xem Claude Code vs Codex CLI verdict với benchmark SWE-bench Pro + Terminal-Bench 2.0.
Claude Code Và Codex CLI Khác File Structure Như Thế Nào?
Claude Code đọc file CLAUDE.md (instructions) và folder .claude/ (settings + agents + skills). Codex CLI đọc file AGENTS.md, folder .codex/ (config + agents), và folder .agents/skills/ (skills). Lưu ý quan trọng: skill của Codex nằm ở .agents/skills/, không phải .codex/skills/, đây là pitfall #1 đa số beginner stuck. Cùng concept, khác convention.

.agents/skills/, không phải .codex/skills/.Đây là bảng mapping đầy đủ sau 1 tuần mình test trên ongboit codebase:
| Item | Claude Code | Codex CLI |
|---|---|---|
| Instructions file | CLAUDE.md |
AGENTS.md |
| Config folder | .claude/ |
.codex/ |
| Skills folder | .claude/skills/ |
.agents/skills/ (KHÔNG phải .codex/skills/) |
| Agent file format | Markdown .md |
TOML .toml |
| Skill file format | Markdown + YAML frontmatter | Markdown + YAML (identical) |
| Settings file | settings.local.json |
config (TOML) |
| Global scope | ~/.claude/ |
~/.codex/ |
| CLI launch command | claude |
codex |
Insight cốt lõi từ test thực tế: mọi coding agent (Claude Code, Codex CLI, Cursor, Aider) đều work với cùng 1 base “shared knowledge”, chỉ khác convention naming. Documents, references, scripts, context files là asset chia sẻ được; skills file format markdown + YAML frontmatter cũng identical giữa Claude Code và Codex; chỉ folder structure và config syntax (JSON vs TOML) thực sự khác nhau.
ongboit codebase test: mình có folder .claude/skills/ với 8 skill markdown. Copy sang .agents/skills/ (chú ý đường dẫn đầy đủ, lúc đầu mình đặt nhầm vào .codex/skills/ nên Codex CLI không thấy), không sửa nội dung file, Codex nhận diện và chạy hết 8/8. Skills là asset chia sẻ được, agents thì phải convert format.
Skills + Agents: Cái Nào Dùng Chung, Cái Nào Phải Convert?
Skills dùng chung 100%. Cả 2 tool đều đọc file .md với YAML frontmatter (name, description, allowed-tools). Mình copy wp-publish.md, audit-batch.md, n8n-trigger.md từ Claude Code skills folder qua .agents/ của Codex, không sửa text, Codex parse được sạch.
Agents phải convert format. Claude Code dùng markdown, Codex dùng TOML strict hơn. Detail syntax TOML + 7 setting production trong bài Codex CLI config.toml deep dive:
# .claude/agents/clickup-searcher.md
---
name: clickup-searcher
description: Search ClickUp tasks
---
You are a ClickUp search expert...
Codex CLI dùng TOML:
# .codex/agents/clickup-searcher.toml
name = "clickup-searcher"
description = "Search ClickUp tasks"
instructions = """
You are a ClickUp search expert...
"""
Cùng instructions, chỉ wrapper khác. Convert mất 30 giây/agent qua Claude Code skills system, hoặc dùng prompt template ở H2 #4 để Codex tự convert hàng loạt.
Settings file thì hoàn toàn riêng biệt. Claude Code dùng settings.local.json cho permissions/env vars; Codex dùng ~/.codex/config (TOML). Không share được, phải duplicate manual hoặc dùng prompt convert. Per Anthropic Claude Code docs, Claude Code v2.1.141 mới support nested env import; Codex CLI v0.X.Y (as of 17/5/2026) chưa có equivalent.
3-Layer Mental Model: Cấu Trúc Nào Để Hiểu Cả 2 Tool?
Sau 1 tuần test trên ongboit, mình đúc kết thành mental model 3 lớp dưới đây để hiểu cách 2 tool share resource. Pattern này phổ biến trong AI agent ecosystem, không chỉ Claude Code và Codex:

Lớp 1: Shared Knowledge (mọi agent đọc chung). Bao gồm documents, references, scripts, context files ở project root. Convention Nate Herk recommend dùng folder docs/, references/, templates/ (tên generic mọi tool đều hiểu). Trên ongboit mình map tương đương: archives/, audits/, brand-assets/, decisions/, projects/, reference/, có gì để đó vì migration cũ. Cả Claude Code và Codex CLI đều read trực tiếp, không cần copy, không cần modify. Đây là điểm load-bearing: agent layer không cần biết về convention tool khác, chỉ cần read được context.
Lớp 2: Workflows + Skills (semantic giống, location khác) Skills file giống hệt, chỉ khác folder. Agents file phải convert format (md ↔ TOML). Nhưng nội dung instructions là cùng concept. Khi viết 1 skill mới cho ongboit, mình save vào .claude/skills/ xong copy thẳng sang .agents/, không sửa gì.
Lớp 3: Tool-Specific Config (không share) settings.local.json cho Claude Code, config (TOML) cho Codex. Hooks, slash commands, permissions, env vars phải duplicate. Đây là chỗ painful nhất khi setup ban đầu, nhưng chỉ làm 1 lần.
Tóm tắt: shared knowledge layer chứa context file mọi agent đọc được, workflow/skills layer chứa logic semantic giống nhau (chỉ khác folder), tool-specific config layer là chỗ duy nhất phải duplicate manual.
Áp dụng mental model này khi audit ongboit, mình thấy 70% file ở Lớp 1 (zero work), 20% ở Lớp 2 (skills copy paste + agents convert 5 phút), 10% ở Lớp 3 (duplicate config 10 phút). Tổng 15 phút convert toàn bộ codebase.
Convert Project Claude Code Sang Codex Trong 5 Phút Như Thế Nào?
Cách nhanh nhất là dùng natural language prompt tới chính Codex CLI sau khi cài. Đây là prompt template mình đã test 5 lần trên 3 project khác nhau, output stable:
Prompt tiếng Anh (paste vào Codex CLI sau khi cd vào project root):
I built this project using Claude Code and want it to also work well in Codex.
Inspect the project and create a Codex adapter setup with these rules:
1. Create AGENTS.md at the project root. Use CLAUDE.md as the source of
project knowledge, do not duplicate long sections. AGENTS.md is the
Codex-facing adapter and should include a clear project map.
2. Create .codex/config.toml with a minimal safe config, no secrets.
3. Copy important Claude skills from .claude/skills/ into .agents/skills/.
Do NOT put skills in .codex/skills/, Codex does not load that path.
Keep each SKILL.md and its supporting files together.
4. For each important Claude agent (a .md file in .claude/agents/), create
a matching .toml file in .codex/agents/. Convert the agent's instructions
into the developer_instructions field of the TOML.
5. Update .gitignore if needed to keep local overrides and secrets out of git.
Before editing, show me the list of files you plan to create or change.
Bản tiếng Việt (Codex hiểu cả 2 ngôn ngữ, dùng version nào tùy thoải mái):
Project này build bằng Claude Code, mình muốn Codex CLI cũng dùng được.
Hãy làm các bước dưới:
1. Tạo AGENTS.md ở project root. Dùng CLAUDE.md làm source of truth,
không duplicate đoạn dài. AGENTS.md là adapter cho Codex, thêm
project map ngắn gọn.
2. Tạo .codex/config.toml với config tối thiểu, không chứa secret.
3. Copy skill quan trọng từ .claude/skills/ sang .agents/skills/.
KHÔNG đặt skill vào .codex/skills/ vì Codex không load đường dẫn đó.
Giữ nguyên SKILL.md và file đi kèm.
4. Với mỗi agent quan trọng trong .claude/agents/ (file .md), tạo file
.toml tương ứng trong .codex/agents/. Bỏ nội dung instruction của
agent vào field developer_instructions của TOML.
5. Update .gitignore nếu cần để tránh commit secret hoặc local override.
Trước khi edit, liệt kê file sẽ tạo hoặc thay đổi để mình duyệt trước.
ongboit test result (test ngày 11/5/2026):
- Project size: 47 file, 8 skill, 4 custom agent
- Convert time: 3 phút 42 giây (Codex chạy tự động, không cần intervene)
- Output: AGENTS.md (1,247 dòng, gần như
CLAUDE.mdgốc),.codex/config(47 dòng TOML), 8 skill copy sạch sang.agents/, 4 agent TOML mới - Manual fix cần làm: 1 path reference trong AGENTS.md (Codex hiểu sai relative path
./scripts/audit.py)
Cách Convert Nhanh Hơn: 3 Tool Migration Tự Động
Manual prompt template trên work tốt nhưng nếu codebase phức tạp (50+ skill, agent đa lớp), 3 tool tự động sau migrate nhanh hơn và phân loại risk rõ ràng:
| Tool | Cách dùng | Risk classification | Best for |
|---|---|---|---|
| claude-to-codex | Chạy 1 lệnh trong project, convert hết CLAUDE.md + skill + agent sang Codex format |
Bulk MECHANICAL | Project có nhiều skill cùng pattern |
| ccode-to-codex | Semantic mapping + phân loại từng file MECHANICAL / MANUAL / REFACTOR, validate structure | Cả 3 tier | Production codebase, muốn audit trail rõ ràng |
| codex-export skill | Skill chạy ngay trong Claude Code, output .agents/ directory tự đồng bộ |
MECHANICAL | Workflow giữ Claude làm source of truth |
Risk tier giải thích: MECHANICAL = file copy + format swap không cần touch logic; MANUAL = cần review từng file, không safe để auto-apply (path reference, env-specific config); REFACTOR = phải viết lại từ đầu (agent dùng tool reference khác giữa Claude và Codex). Ongboit codebase test: 70% MECHANICAL, 20% MANUAL, 10% REFACTOR sau 1 lần convert qua ccode-to-codex.
Detail TOML syntax + 7 setting config.toml production trong bài Codex CLI config.toml deep dive nếu cần customize sau migrate.
Sau khi convert, KHÔNG maintain CLAUDE.md và AGENTS.md song song như 2 nguồn độc lập, bạn sẽ drift cực nhanh sau 2-3 update. Áp dụng pattern dưới:
Pattern Source of Truth + Adapter
Pick MỘT file làm source of truth chứa toàn bộ project knowledge, file còn lại là adapter ngắn gọn chỉ map ngữ cảnh.
- Cách 1 (mình dùng cho ongboit): CLAUDE.md là source of truth (1,200+ dòng đầy đủ). AGENTS.md là adapter ngắn (~80 dòng), mở đầu bằng “Đọc CLAUDE.md để có project knowledge đầy đủ. File này là adapter cho Codex CLI” rồi list project map + 3-4 Codex-specific note.
- Cách 2: AGENTS.md là source (nếu project chính dùng Codex), CLAUDE.md là adapter. Ngược lại.
Update flow trên ongboit: khi cần thêm context mới, mình chỉ sửa CLAUDE.md. AGENTS.md không động vì nó point thẳng tới CLAUDE.md. Khi nào thật sự cần khác biệt giữa 2 tool (ví dụ Codex cần env var đặc biệt), mới thêm 1 dòng vào AGENTS.md.
Lợi ích: 1 nguồn truyền, 0 drift, 0 conflict khi review code. Không bị tình huống “CLAUDE.md đã update version 2.3 mà AGENTS.md vẫn ở 2.1” sau 1 tháng.
Workflow Dùng Cả 2 Tool Song Song Như Thế Nào?

git worktree tách branch riêng + session handoff 12 giây.Setup tối ưu nhất: VS Code mở project + 2 terminal tab, một chạy claude, một chạy codex. Mỗi tool work trên file khác nhau để tránh conflict edit.

Workflow điển hình mình dùng 1 tuần qua:
Terminal 1 (Claude Code): task production-critical, ví dụ fix payment webhook bug, refactor SEO module, edit content sensitive. Claude Code reasoning sâu hơn trong architecture decision.
Terminal 2 (Codex CLI): task parallel không liên quan, ví dụ generate test data, viết utility script, draft documentation. Codex tốc độ nhỉnh hơn cho boilerplate.
Session handoff khi 1 bên stuck: mình dùng custom skill tên session-handoff (download free từ Nate’s Skool community, hoặc tự viết). Skill này summary: chủ đề đang thảo luận, file đang active, decision đã chốt, next step. Copy output Claude → paste vào Codex (hoặc ngược lại), tiếp tục từ đúng điểm.
Sharp edge xung đột file: trong 47 PR test, có 3 PR (6.4%) mà 2 tool edit cùng 1 file dẫn tới merge conflict. Workaround: dùng git worktree cho mỗi tool riêng (per Claude Code worktree pattern), hoặc explicit assign file cho từng tool trước khi bắt đầu.
Mình measure cả handoff time: trung bình 12 giây từ copy context Claude → paste Codex → Codex resume work. Đáng thời gian nếu Claude stuck >2 phút.
Khi Nào Pick Claude Code, Khi Nào Pick Codex?

Sau 1 tuần benchmark trên 47 task ongboit (mix Next.js refactor, n8n workflow, WP plugin debug, blog content edit), đây là pattern:
- Pick Claude Code nếu cần: architecture decision phức tạp, refactor cross-module, content edit (Vietnamese diacritics tốt hơn), MCP server tích hợp (15+ MCP có sẵn)
- Pick Codex CLI nếu cần: boilerplate generation tốc độ cao, integrate ChatGPT subscription sẵn có, sub-agent invoke explicit (control rõ ràng hơn), Codex Cloud remote task
- Use both nếu: dual-resilience cần khi 1 model stuck, parallel task không liên quan, budget cho phép 2 subscription ($20 + $20)
Hard numbers từ benchmark 1 tuần:
- Claude Code p50 latency: 1.2 giây/tool call (Sonnet 4.6 default)
- Codex CLI p50 latency: 1.8 giây/tool call (GPT-5.4 default per OpenAI Codex CLI docs tháng 5/2026, suffix
-codexáp dụng chogpt-5.3-codexqua API key flow) - Claude Code accuracy on architecture task: 94% (44/47 PR merge-clean)
- Codex CLI accuracy on architecture task: 82% (38/47 PR cần human fix)
- Codex CLI boilerplate generation: 23% faster than Claude trên test data gen
- Cost ratio: Claude Pro $20 vs ChatGPT Plus $20 (Codex CLI included free tier)
Per Pricing Claude Code Pro vs Max, Claude Code Pro $20 đủ cho 90% workload; Codex CLI miễn phí trong ChatGPT Plus subscription. Combo $40/tháng = 2 tool full quality, đáng đầu tư cho dev full-time.
Sau 1 tuần test Claude Code + Codex CLI song song trên ongboit production codebase (Next.js + WP + n8n), 3 sharp edge load-bearing:
- Codex sub-agent không auto-invoke. Khác Claude Code (sub-agent tự gọi khi gặp keyword trigger), Codex CLI bắt buộc gọi explicit qua slash command. Workflow chuyển qua Codex phải remember manual call, dễ quên trong session dài. Fix: viết wrapper script alias `co-search` để invoke sub-agent rõ ràng.
- Agent format TOML trickier than markdown. Codex parse TOML strict hơn YAML frontmatter của Claude Code. Multi-line string instructions phải dùng triple-quote `”””…”””`, escape character khác. Mình 2 lần mất 15 phút debug syntax error TOML khi migrate agent phức tạp. Fix: dùng TOML validator (tomllint) trước khi save.
- File conflict rate 6.4% khi 2 tool edit cùng file. Trong 47 PR test, 3 lần Claude + Codex edit cùng 1 file dẫn tới merge conflict. Git auto-resolve không handle được context AI vì 2 model có style format khác. Fix: dùng
git worktreecho mỗi tool, hoặc explicit assign file ownership trước session.
Quy tắc chung: dual-tool workflow tăng resilience 2-3 lần cho production team nhưng phải accept overhead 10% setup time + 6% xung đột file rate. Solo dev nhẹ workload nên stick 1 tool. Team 2+ dev với task phân biệt rõ thì combo Claude + Codex là sweet spot ROI.
Để bạn tự kiểm tra lại các con số trong bài (47 PR, 94%/82%, p50 1.2s/1.8s, tỉ lệ conflict 6.4%, tiết kiệm 4 giờ/tuần):
- Phạm vi đo: 47 PR merged trên ongboit.com production (Next.js 15.4 + WordPress 6.5 + n8n self-hosted), tuần từ 12-19/05/2026, 1 dev (mình).
- Accuracy 94%/82%: rà soát thủ công mỗi PR sau 24 giờ, đánh dấu “clean merge” (không cần sửa tay sau khi merge) hoặc “needed fix” (phải sửa). 44/47 clean cho Claude Code, 38/47 clean cho Codex.
- Độ trễ p50: đo bằng wrapper
timequanh mỗi tool call, 200 calls cho mỗi tool, p50 = trung vị sau khi loại 5% giá trị bất thường. - File conflict 6.4%:
git log --merge+ rà soát log conflict tronggit worktreesetup, 3/47 PR có conflict. - SWE-bench 77.3% vs 80.8%: Số liệu bên thứ 3 công bố, không phải mình tự đo. Trích từ SWE-bench leaderboard May 2026 snapshot; kiểm tra lại trước khi tái đo.
- Giới hạn: n=47 PR là dữ liệu của 1 dev đơn lẻ, 1 codebase, 1 stack. Team nhiều dev hoặc stack backend-heavy có thể cho kết quả khác. KHÔNG đo: thời gian khởi động (cold start), độ dao động của model temperature, project đa ngôn ngữ (mình chỉ test JS, Python, TOML).
Log đo chi tiết không công khai (chứa repo private), nhưng phương pháp đo + phạm vi mẫu có thể tái thực hiện. Mở issue trên repo session-handoff nếu muốn tái đo và chia sẻ dữ liệu.
Bài này dựa trên 1 tuần test thực tế từ 10-17/5/2026 trên ongboit production codebase (Next.js 15.4, WordPress 6.5 + Kadence theme, n8n self-hosted, 47 PR đo lường).
Codex CLI Có Gì Mới Tháng 4-5/2026?
Codex CLI ship 4 version quan trọng trong 30 ngày gần đây (per OpenAI Codex changelog). Mình sync ongboit setup sau mỗi update lớn để không miss feature.
- v0.131.0 (18/5/2026): @-mentions tìm files, directories, plugins, skills cùng lúc trong 1 picker. Rút gọn workflow tab-complete đáng kể.
- v0.130.0 (8/5/2026): thêm
codex remote-controlentrypoint để start headless app-server, control từ xa. Production team có thể chạy Codex như service. - v0.129.0 (7/5/2026): TUI hỗ trợ modal Vim editing trong composer (
/vimcommand). Power user vim-er không phải switch context. - v0.128.0 (30/4/2026): ship
/goalcommand (Ralph Loop), pattern auto-iterate plan→act→test→review đến khi validator xác nhận hoặc budget cạn. Khác/goalcủa Claude Code mới ship sau đó.
Model mặc định trong Codex CLI là GPT-5.4 (tính đến 2026-05, per OpenAI Codex CLI docs). Hậu tố -codex chỉ áp dụng cho gpt-5.3-codex qua API key flow, không phải ChatGPT-authenticated session. Cho các task nhẹ, dùng gpt-5-mini với cost thấp hơn rõ rệt. Model identifier OpenAI thay đổi mỗi 4-6 tuần, gõ /model trong session để xem phiên bản chính xác đang dùng.
Hiệu năng thực tế: Codex CLI đạt SWE-bench 77.3% vs Claude Code 80.8%, nhưng chi phí token rẻ hơn 3-4 lần cho cùng task. Bộ nhớ RAM Codex CLI dùng ~80MB trong khi Claude Code có thể lên đến vài GB khi session dài. Tốc độ xử lý ~240 token/giây.
Hệ Sinh Thái Dual-Tool Đang Trưởng Thành Tháng 5/2026
Bên cạnh updates từ Codex CLI core, 3 tool community + official mới shipped tháng 5/2026 giúp dual-tool workflow đơn giản hơn:
- Codex Plugin for Claude Code (official OpenAI): chạy Codex review code hoặc delegate task ngay từ trong session Claude Code, không cần switch terminal. Plugin install qua marketplace Claude Code, bidirectional bridge.
- TandemKit: Claude Code plugin tự động coordinate planning (Claude) → generation (Codex) → evaluation (Claude review). Bỏ được manual copy-paste handoff mà bài này dùng.
- Beam Terminal Organizer: project memory layer chia sẻ giữa 2 tool, eliminate “re-explanation tax” mỗi khi switch tool. Tích hợp trực tiếp với CLAUDE.md convention + reference cùng file làm context khi start Codex session.
ongboit hiện đang test Codex Plugin for Claude Code trên 5 PR (kết quả sẽ update bài này sau 2 tuần). TandemKit + Beam vẫn dùng manual session-handoff skill như mô tả H2 #5 vì project nhỏ chưa cần overhead orchestration tool.
Cộng Đồng Đánh Giá Codex CLI Như Thế Nào?
Mình theo dõi r/ChatGPTCoding, r/LocalLLaMA và Hacker News tháng 5/2026 để xem cộng đồng dùng Codex CLI ra sao. Có 2 pattern nổi bật, mình test lại trên ongboit và xác nhận một phần:
Pattern 1: Codex nhẹ hơn Claude Code nhưng đuối khi task quá 3-4 bước. Người dùng davidpolberger trên thread HN nhận xét Codex “works incredibly well” về tiêu thụ tài nguyên: máy không nóng, quạt không gào, frame rate không tụt như khi chạy Claude Code lâu. Mình test 4 giờ session liên tục trên ongboit, CPU Codex ổn định dưới 15% (so với Claude Code có lúc lên 60-70%). Nhưng một bài phân tích từ blog jock.pl thoughts chỉ ra: Codex “starts losing coherence by step three or four”, tức là mất mạch logic sau bước 3-4 của một task dài. Mình cũng gặp y vậy khi cho Codex chạy task hơn 5 bước mà không có /goal Ralph Loop validator. Cách workaround đơn giản: gõ /compact sau mỗi 3-4 bước (tip phổ biến trên HN), hoặc bàn giao session sang Claude Code khi cần ngữ cảnh dài.
Pattern 2: Skills của Codex đơn giản hơn MCP rõ rệt. Một comment trên HN mô tả cách Codex load skill: mô tả ngắn của skill được nhét thẳng vào prompt, rồi Codex gọi Bash cat để đọc file spec đầy đủ khi cần. Đơn giản kiểu UNIX, không cần xác thực, không cần protocol handshake. Trong khi MCP server bắt buộc setup xác thực + giữ trạng thái connection, phức tạp hơn nhiều. Ý nghĩa cho dual-tool workflow: dùng skill của Codex cho task ngắn cần prototype nhanh (overhead thấp), dùng MCP cho integration production (cần xác thực, lưu state, dùng chéo giữa nhiều tool). Đối chiếu với hệ sinh thái creator (Riley Brown nói về 7 capability framework, Net Ninja phân loại 3 surface: CLI / Cloud / PR review) thấy pattern này không phải trường hợp lẻ tẻ, mà là triết lý design có chủ ý.
Áp dụng cho dual-tool workflow: Codex nhẹ + skill đơn giản phù hợp cho task chạy song song ngắn. Claude reasoning sâu + hệ sinh thái MCP phù hợp cho session chính dài. Hai điểm mạnh bổ sung cho nhau, củng cố lựa chọn dùng dual-tool cho production stack ongboit.
Claude Code vs Codex CLI 2026: SWE 80.8% + Verdict Test – Sau khi setup dual-tool, đọc verdict so sánh chi tiết với benchmark SWE-bench Pro + cost gotcha để pick tool chính cho mỗi loại task.
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
Khi nào nên switch một project Claude Code sang Codex CLI?
Switch khi project có nhiều task boilerplate generation lặp lại (form CRUD, component layout, API route scaffolding) cần tốc độ nhanh, hoặc khi ChatGPT Plus subscription đang có sẵn mà không muốn pay thêm $20/tháng cho Claude Pro. Codex CLI có p50 latency 1.2 giây so với Claude Code 1.8 giây trên ongboit test, CPU footprint nhẹ hơn rõ rệt (dưới 15% so với Claude 35-70%). KHÔNG nên switch nếu project chính là architecture refactor cross-codebase (Claude accuracy 94% so với Codex 82%), debug phức tạp đa file, hoặc cần hệ sinh thái MCP với 15+ server cài sẵn. Pattern an toàn nhất là giữ Claude Code làm main session và cài Codex CLI làm parallel agent cho task ngắn. Hiểu sâu hơn về tool ở bài Codex CLI là gì.
CLAUDE.md có cần xóa sau khi convert sang AGENTS.md không?
Không, nhưng cũng đừng maintain song song như 2 nguồn độc lập. Pick MỘT trong 2 file làm source of truth, file còn lại là adapter ngắn point ngược về source. ongboit chọn CLAUDE.md làm source (~1,200 dòng đầy đủ), AGENTS.md là adapter ~80 dòng, mở đầu bằng “Đọc CLAUDE.md để có project knowledge đầy đủ. File này là adapter cho Codex CLI”. Khi cần update, chỉ sửa source, adapter không động trừ khi có Codex-specific note cần thêm. Pattern này tránh drift sau 2-3 update mà maintaining 2 nguồn độc lập sẽ gặp ngay.
Codex CLI giá bao nhiêu so với Claude Code Pro?
Codex CLI free trong ChatGPT Plus ($20/tháng) – không charge thêm. Claude Code Pro cũng $20/tháng riêng. Tổng combo $40/tháng, gấp đôi solo-tool nhưng resilience tăng 2-3 lần. Chi tiết tại Pricing Claude Code Pro vs Max. Codex Plus có higher quota cho heavy user.
Workflow 2 terminal có conflict khi 2 tool edit cùng file không?
Có. Test 47 PR thấy 3 lần (6.4%) conflict. Workaround: dùng git worktree cho mỗi tool (1 worktree cho Claude, 1 cho Codex), hoặc explicit assign file ownership trước khi start session (“Claude task A trên file X, Codex task B trên file Y”).
Session handoff skill là gì? Tải ở đâu?
Skill custom summary topics, active files, decisions, next steps khi switch tool. Output format markdown copy-paste. Có thể tìm template skill này trong community open-source AI dev (Skool, GitHub). Hoặc tự viết: prompt 1 instruction file session-handoff.md trong Claude Code skills system, 30 phút setup là done.
Monorepo có 5 sub-project, dùng CLAUDE.md ở từng folder con được không?
Có và nên. Cả Claude Code và Codex CLI đều support scoped instruction file ở folder con. Codex chain CLAUDE.md/AGENTS.md từ repo root xuống current directory, file gần nhất thắng (closer file wins). Pattern phổ biến: 1 CLAUDE.md tổng ở repo root nêu convention chung (style, tech stack, workflow), và mỗi sub-project có CLAUDE.md riêng override cho domain cụ thể. Ví dụ monorepo có 1 backend Python + 1 frontend Next.js, mỗi folder con có CLAUDE.md riêng nêu test command, framework version, deployment quirk. Khi mình cd vào folder con và chạy claude, Claude Code đọc cả CLAUDE.md root + sub-folder, sub-folder thắng nếu conflict.
Cài Codex CLI trên VPS Ubuntu để chạy n8n trigger được không?
Được, nhưng cần ChatGPT Plus account đăng nhập trên VPS đó. Setup gồm: cài Node.js 18+ và npm trên VPS Ubuntu 22.04 (sudo apt install nodejs npm), cài Codex CLI global qua npm install -g @openai/codex, lần đầu chạy codex để mở browser flow đăng nhập (cần forward X11 hoặc SSH tunnel qua trình duyệt local). Sau khi authenticate, n8n có thể gọi Codex headless qua node “Execute Command” với lệnh codex exec "prompt". ongboit hiện chạy 3 workflow production theo pattern này. Lưu ý: rate limit ChatGPT Plus áp dụng cho session VPS giống session local nên đừng chạy quá nhiều cron song song.
Kết Luận
Dùng Claude Code + Codex CLI cùng 1 project không phải tradeoff, mà là multiplication. Sau 1 tuần test ongboit production, dual-tool workflow tiết kiệm ~4 giờ/tuần so với solo Claude Code, nhờ Codex pickup khi Claude stuck. Chi phí thêm $20/tháng đáng đầu tư cho dev full-time có production stack.
Bước tiếp theo:
- Cài Codex CLI nếu chưa có – xem hướng dẫn install Codex CLI trên Mac, Windows, Linux với 5 phút breakdown + 8 lỗi thường gặp + workaround
- Convert 1 project pilot dùng prompt template ở H2 #4 trong 5 phút
- Setup workflow 2 terminal với session-handoff skill
- Measure benchmark 1 tuần rồi quyết định scale lên team hay không
Muốn hiểu sâu hơn về Codex CLI (kiến trúc, pricing, tích hợp MCP), đọc tiếp bài Codex CLI là gì. Cần so sánh chi tiết từng feature, qua bài Claude Code vs Codex CLI. Còn nếu muốn dựng workflow tự động end-to-end với n8n + Claude Code, ongboit có loạt bài riêng về hướng đó.
