Giao diện
7. Claude Code ↔ Codex
Lab của khóa học chỉ dùng Claude Code. Chương này để bạn tự chuyển sang Codex khi cần: phần lớn khái niệm có tương đương trực tiếp, chỉ khác tên và chỗ đặt file.
Docs Codex đã chuyển nhà
Mọi URL developers.openai.com/codex/... hiện chuyển hướng sang learn.chatgpt.com/docs/.... Đó vẫn là tài liệu chính thức của OpenAI. Link trong chương này dùng địa chỉ mới.
Bảng đối chiếu
| Khái niệm | Claude Code | Codex |
|---|---|---|
| File hướng dẫn dự án | CLAUDE.md (nạp AGENTS.md bằng dòng @AGENTS.md) | AGENTS.md (đọc trực tiếp) |
| Chế độ quyền | Permission mode: Manual, acceptEdits, plan, auto, dontAsk, bypassPermissions | sandbox_mode + approval_policy |
| Để agent khác duyệt thay | Auto mode | Auto-review (UI: "Approve for me") |
| Skill | .claude/skills/<name>/SKILL.md | .agents/skills/<name>/SKILL.md |
| Subagent | .claude/agents/ | Subagent |
| Đội agent | Agent teams (experimental) | Chưa có tương đương trực tiếp |
| Hook | hooks trong .claude/settings.json | Hooks trong plugin/config |
| MCP | claude mcp add, .mcp.json | codex mcp add, [mcp_servers.<name>] trong config.toml |
| Plugin | /plugin install, claude plugin | /plugins (CLI), tab Plugins (desktop) |
| Headless | claude -p "..." | codex exec |
| Vòng lặp tới khi xong | Ralph loop (/ralph-loop) | /goal |
| Chạy theo lịch | Scheduled tasks (/schedule) | Scheduled tasks (desktop app / web) |
| Agent nhắc việc | You Should Know | Không có |
| Worktree | git worktree | Worktree (desktop app) |
Từng dòng, chỗ cần để ý
CLAUDE.md ↔ AGENTS.md
Cách đơn giản nhất để dùng cả hai tool trên một repo: viết quy ước vào AGENTS.md, còn CLAUDE.md chỉ có @AGENTS.md và vài dòng riêng cho Claude Code. Starter làm đúng như vậy.
Codex đọc AGENTS.md theo thứ tự:
- Global:
~/.codex/AGENTS.md(hoặcAGENTS.override.md). - Dự án: đi từ gốc repo xuống thư mục hiện tại, nối lần lượt; file gần thư mục hiện tại ghi đè file xa hơn.
- Tổng dung lượng giới hạn bởi
project_doc_max_bytes, mặc định 32 KiB. GiữAGENTS.mdngắn.
Permission mode ↔ sandbox + approval
Codex tách hai câu hỏi: được đụng tới đâu (sandbox) và khi nào hỏi người (approval).
| Thiết lập Codex | Giá trị |
|---|---|
sandbox_mode | read-only | workspace-write | danger-full-access |
approval_policy | on-request | never |
| UI chọn nhanh | "Ask for approval" / "Approve for me" / "Full access" |
Gần tương đương (không khớp 1-1): Manual ↔ "Ask for approval"; auto mode ↔ "Approve for me"; bypassPermissions ↔ "Full access".
Auto mode ↔ auto-review
Cùng ý tưởng: một bộ duyệt tự động thay bạn bấm "đồng ý". Tên chính thức bên Codex là auto-review:
toml
approval_policy = "on-request"
approvals_reviewer = "auto_review"Trên CLI: --approve-for-me (có từ codex 0.147.0; bản cũ hơn dùng -c approvals_reviewer=auto_review). Các tên "guardian" hay "Smart Approvals" bạn có thể gặp trên mạng không phải tên chính thức.
Skill
Cả hai theo chuẩn mở Agent Skills (agentskills.io), nên một thư mục skill dùng được cho cả hai; chỉ khác chỗ đặt.
| Claude Code | Codex | |
|---|---|---|
| Dự án | .claude/skills/ | .agents/skills/ |
| Cá nhân | ~/.claude/skills/ | $HOME/.agents/skills/ |
| Frontmatter | Mọi trường tùy chọn, nên có description | Bắt buộc name và description |
| Gọi rõ | /skill-name | $skill-name hoặc /skills |
| Gọi ngầm | Theo description | Theo description |
Viết skill dùng chung thì luôn ghi đủ name và description để Codex nhận. Codex có sẵn $skill-creator và $skill-installer.
MCP
bash
# Claude Code
claude mcp add <name> -- <cmd> [args]
# Codex
codex mcp add <name> -- <cmd>Codex lưu ở [mcp_servers.<name>] trong ~/.codex/config.toml. Claude Code lưu theo scope; scope project ghi vào .mcp.json ở gốc repo.
Plugin
Claude Code: /plugin install <plugin>@<marketplace> trong phiên, hoặc claude plugin install từ terminal. Codex: gõ /plugins trong CLI, hoặc tab Plugins trên desktop app. Plugin Codex có thể gồm skills, MCP và hooks. Superpowers có cả bản cho Codex: vào /plugins, tìm "superpowers".
Headless
claude -p "..." ↔ codex exec. Với Claude Code, nhớ rằng -p mặc định Manual: phải chọn --permission-mode auto hoặc có allow rule (xem chương 5).
Vòng lặp: Ralph loop ↔ /goal
| Claude Code (Ralph loop) | Codex (/goal) | |
|---|---|---|
| Bắt đầu | /ralph-loop "<prompt>" --max-iterations N --completion-promise "TEXT" | /goal <mục tiêu> |
| Xem | head -10 .claude/ralph-loop.local.md | /goal |
| Dừng | /cancel-ralph | /goal pause / /goal clear |
| Tiếp tục | Chạy lại /ralph-loop (đếm lại từ vòng 1; việc đã làm vẫn còn trong file và git) | /goal resume |
| Cài | Plugin ralph-loop@claude-plugins-official | Có sẵn; nếu thiếu: codex features enable goals |
Chạy theo lịch
Claude Code: /schedule ngay trong CLI (research preview, chạy trên cloud, không dày hơn 1 lần/giờ). Codex: tạo trên desktop app hoặc web, trigger theo lịch hoặc sự kiện Gmail/Slack/GitHub; CLI không quản lý được.
You Should Know ↔ không có
Codex chưa có tính năng tương đương. Khi chạy dài trên Codex, bù bằng việc đọc kỹ log, git log và diff (xem chương 6).
Model
Docs Codex khuyến nghị gpt-6.1-sol cho code phức tạp và việc agentic (kiểm tra ngày 24/10/2026).
Nguồn
- AGENTS.md (Codex): https://learn.chatgpt.com/docs/agent-configuration/agents-md
- Skills (Codex): https://learn.chatgpt.com/docs/build-skills
- Sandbox: https://learn.chatgpt.com/docs/sandboxing.md
- Permission modes (Codex): https://learn.chatgpt.com/docs/permission-modes.md
- Auto-review: https://learn.chatgpt.com/docs/sandboxing/auto-review.md
- MCP (Codex): https://learn.chatgpt.com/docs/extend/mcp.md
- Plugins (Codex): https://learn.chatgpt.com/docs/plugins.md
/goal: https://learn.chatgpt.com/use-cases/follow-goals- Scheduled tasks (Codex): https://learn.chatgpt.com/docs/automations.md
- Models (Codex): https://learn.chatgpt.com/docs/models.md
- Agent Skills: https://agentskills.io
- Claude Code skills: https://code.claude.com/docs/en/skills
- Claude Code permission modes: https://code.claude.com/docs/en/permission-modes
- Claude Code MCP: https://code.claude.com/docs/en/mcp
- Claude Code CLAUDE.md: https://code.claude.com/docs/en/memory
- Superpowers: https://github.com/obra/superpowers