Chẩn đoán nhanh trước khi sửa
Bản Codex CLI hiện hành là 0.164.0 (23/10/2026); tài liệu đã chuyển sang learn.chatgpt.com, và từ 09/07/2026 ứng dụng Codex được nhập vào ứng dụng ChatGPT trên máy tính. Trước khi sửa, chạy vài lệnh để biết lỗi nằm ở đâu:
codex --version: nhiều lỗi dưới đây chỉ xuất hiện từ một phiên bản cụ thể trở đi.codex doctor(có từ 0.131.0): kiểm cài đặt, cấu hình, đăng nhập, mạng, proxy; thêm--jsonđể có báo cáo đã che dữ liệu nhạy cảm./statustrong phiên: model, nhà cung cấp, tài khoản, ngữ cảnh còn lại và hạn mức;/debug-configin thứ tự các lớp cấu hình.codex login status: cho biết đang đăng nhập bằng ChatGPT, bằng API key hay chưa đăng nhập.
Lỗi đăng nhập bằng tài khoản ChatGPT
codex login mở trình duyệt và nhận kết quả ở cổng 1455 trên máy. Các lỗi hay gặp:
- “Port 127.0.0.1:1455 is already in use”: một tiến trình đăng nhập cũ đang giữ cổng. Codex tự thử cổng 1457; vẫn bận thì tắt các cửa sổ Codex khác rồi thử lại. Trong devcontainer của VS Code, gỡ chuyển tiếp cổng 1455 ở bảng Ports.
- “Token exchange failed” (mã
token_exchange_failed): thường do mạng, proxy hoặc chứng chỉ. Kiểm các biếnHTTP_PROXY,HTTPS_PROXYcó trỏ tới proxy đã tắt không; mạng công ty có proxy TLS thì đặtCODEX_CA_CERTIFICATEtrỏ tới file chứng chỉ gốc của công ty. - Máy không có trình duyệt (SSH, Docker): dùng
codex login --device-authsau khi bật device code login trong cài đặt bảo mật ChatGPT, hoặc chuyển tiếp cổng bằngssh -L 1455:localhost:1455rồi chạycodex logintrong phiên SSH đó. - “Codex is not enabled for your workspace”: workspace ChatGPT của công ty chưa bật Codex cho bạn; hỏi quản trị viên.
- “Your access token could not be refreshed…”: phiên đăng nhập hết hạn hoặc bị thu hồi; chạy
codex logoutrồicodex login.
Lỗi API key và 401
Đăng nhập bằng API key thì tính tiền theo API, không dùng hạn mức gói ChatGPT. Những điểm hay vướng:
- Từ bản 0.36.0, Codex không tự đọc biến
OPENAI_API_KEYnữa; phải đăng nhập bằng key một lần với lệnhprintenv OPENAI_API_KEY | codex login --with-api-key. Cờ cũ--api-keyđã bị bỏ. - Key không được kiểm lúc đăng nhập: Codex chỉ báo “API key saved. Authentication is checked when you send a request.” Key sai sẽ lộ ra ở request đầu tiên dưới dạng “unexpected status 401 Unauthorized: Incorrect API key provided”.
- Chạy trong CI: đặt
CODEX_API_KEYngay trên dòng lệnhcodex exec, không đặt cho cả job nếu job chạy code của repo. - Đổi giữa ChatGPT và API key:
codex logoutrồi đăng nhập lại bằng cách kia. Sửa tayconfig.tomlhayauth.jsonkhi tiến trình nền của Codex đang chạy sẽ không có tác dụng cho tới khi khởi động lại nó bằng/daemon. - Cấu hình nhà cung cấp và API key có ở bài cấu hình Codex CLI với API key; ý nghĩa các mã lỗi HTTP có ở bài lỗi API thường gặp.
Hết hạn mức: “You’ve hit your usage limit”
Codex và ChatGPT Work dùng chung hạn mức của gói, tính theo cửa sổ 5 giờ và cửa sổ tuần tuỳ gói: Go tính theo tháng, Plus theo 5 giờ và tuần, các gói Pro theo tuần. Khi hết, thông báo khác nhau theo gói và ghi giờ được dùng lại, ví dụ “You’ve hit your usage limit… or try again at 6:16 PM”. Codex cảnh báo trước ở các mốc đã dùng 50%, 75%, 90% và 95%.
- Chờ tới giờ ghi trong thông báo, dùng lượt reset để dành (Plus, Pro), mua thêm credit, nâng gói, hoặc chuyển sang API key và trả theo giá API.
- Đổi model không lấy lại được hạn mức trong phần dùng chung; bộ phận hỗ trợ của OpenAI cũng không reset hạn mức, chỉ kiểm khi bị đếm sai.
- “Selected model is at capacity. Please try a different model.” không phải hết hạn mức mà là model đang quá tải; đổi model bằng
/modelhoặc thử lại sau. - Chi tiết từng gói và cách xem phần còn lại có ở bài Codex hết hạn mức.
Lỗi 429 khi dùng API key
Với API key, Codex tách hai loại 429:
- “Quota exceeded. Check your plan and billing details.”: lỗi về tiền (hết credit trả trước, chạm trần chi tiêu, chạm hạn mức tháng). Thử lại không giúp gì; phải nạp thêm hoặc nâng trần trong trang quản lý API.
- “exceeded retry limit, last status: 429 Too Many Requests”: gửi quá nhanh. Codex đã tự thử lại (mặc định
request_max_retries = 4) mà vẫn bị chặn; giảm số tác vụ chạy song song hoặc chờ một lúc.
Model không còn được hỗ trợ
Từ 14/10/2026, GPT-5.5 không còn dùng được trong Codex khi đăng nhập bằng ChatGPT: các gói Plus, Pro, Business, Enterprise, Edu chuyển sang gpt-6.1-sol, gói Free và Go sang gpt-6-luna; các bản GPT-5.x cũ hơn đã bị gỡ trước đó. Đăng nhập bằng API key thì không bị ảnh hưởng. Lỗi thường thấy:
- “The 'gpt-5.5' model is not supported when using Codex with a ChatGPT account.”, hoặc 404 “The model … does not exist or you do not have access to it.”
- Cách sửa: chọn lại model bằng
/model, rồi sửamodel = "…"ở mọi chỗ còn tên cũ:config.toml, file profile, script dùngcodex exec --model. Lệnhcodex debug modelsin danh sách model Codex đang thấy. - Dùng gateway hay nhà cung cấp tuỳ chỉnh mà gặp cảnh báo “Model metadata for … not found”: Codex không biết model đó nên dùng thông số mặc định; đặt tên model đúng như Codex nhận ra hoặc khai báo danh mục model.
Config cũ làm Codex không khởi động
Nhiều thay đổi năm 2026 khiến config.toml viết theo hướng dẫn cũ báo “Error loading config.toml” rồi thoát:
# Sai: từ bản 0.95.0, Codex báo lỗi và không khởi động
wire_api = "chat"
# Đúng
wire_api = "responses"wire_api = "chat"bị gỡ từ bản 0.95.0 (04/02/2026), Codex chỉ còn nói chuyện qua Responses API. Đổi mọi nhà cung cấp sangwire_api = "responses"hoặc xoá dòng này; lỗi xảy ra kể cả khi nhà cung cấp đó không được dùng. Gateway phải nhậnPOST /v1/responses; xem bài OpenAI-compatible API là gì.approval_policy = "untrusted"bị gỡ từ bản 0.149.0 (20/08/2026): xoá dòng này; muốn chặt như cũ thì đặtsandbox_mode = "read-only"vàapproval_policy = "on-request".- Profile: từ bản 0.134.0, bảng
[profiles.x]trongconfig.tomlkhông còn được đọc; chuyển sang file riêng~/.codex/x.config.toml. - Cờ
--full-autođã bị gỡ khỏicodex exectừ bản 0.147.0; thay bằng--sandbox workspace-write. - Bẫy cú pháp TOML:
modelvàmodel_providerphải đặt trước bảng[...]đầu tiên, nếu không chúng thành khoá của bảng đó. Khai báo nhà cung cấp phải nằm trong~/.codex/config.toml, vì file cấu hình trong dự án bỏ qua các khoá này.
Lệnh bị sandbox chặn hoặc không có mạng
Mặc định khi chạy trên máy, Codex chỉ được ghi trong thư mục dự án và không có mạng; .git, .codex, .agents vẫn chỉ đọc, nên lệnh như git commit có thể cần bạn duyệt.
- Cho phép mạng: thêm bảng
[sandbox_workspace_write]vớinetwork_access = true, hoặc chạy với-c sandbox_workspace_write.network_access=true. Khi mạng tắt, lệnh con báo kiểu “Could not resolve host”. - Đổi quyền ngay trong phiên bằng
/permissions; cấp thêm thư mục bằng--add-dirthay vì bậtdanger-full-access. Cờ--yolobỏ cả sandbox, chỉ dùng trong môi trường đã cô lập. - Linux và WSL2 cần
bubblewrap(sudo apt install bubblewrap); Ubuntu 24.04 cần thêm profile AppArmorbwrap-userns-restrict. WSL1 không còn được hỗ trợ từ bản 0.115. - Windows: sandbox
mxccần Windows 11 24H2 trở lên; lỗi 1385 khi cài sandbox nghĩa là chính sách máy chặn kiểu đăng nhập cần thiết, hỏi bộ phận IT. Extension trong VS Code không phản hồi thì cài Visual Studio Build Tools (C++).
Lỗi mạng, proxy và vùng
Các thông báo thường gặp khi kết nối chập chờn hoặc đi qua proxy:
- “stream disconnected before completion: idle timeout waiting for SSE”: quá 5 phút không nhận được dữ liệu (
stream_idle_timeout_ms); “stream closed before response.completed”: luồng bị cắt trước khi kết thúc, hay gặp với gateway không chuẩn. - “invalid peer certificate: UnknownIssuer”: proxy TLS của công ty chèn chứng chỉ riêng; đặt
CODEX_CA_CERTIFICATE. - “Access blocked by Cloudflare. This usually happens when connecting from a restricted region”: Việt Nam có trong danh sách quốc gia được hỗ trợ, nên kiểm VPN, proxy hay máy chủ đang đi ra từ nước khác.
- Lỗi 500 hiện thành “We’re currently experiencing high demand…”: phía OpenAI đang quá tải, thử lại sau.
Hết ngữ cảnh: “Codex ran out of room”
Thông báo “Codex ran out of room in the model's context window. Start a new thread or clear earlier history before retrying.” nghĩa là phiên đã đầy cửa sổ ngữ cảnh. Gõ /compact để tóm tắt hội thoại, /new để mở phiên mới; giữ AGENTS.md ngắn và tắt MCP server không dùng. Từ bản 0.143.0 không còn tắt được tự nén ngữ cảnh. Mẹo giữ ngữ cảnh gọn có ở bài tiết kiệm token khi dùng Claude Code và Codex.
Lỗi cài đặt và cập nhật
Cài bằng script, npm hay Homebrew đều có lỗi riêng:
- “command not found” sau khi cài bằng script: mở terminal mới để nạp lại PATH; máy có nhiều bản cài (script, npm, Homebrew) thì bản nào đứng trước trong PATH sẽ chạy, nên gỡ bớt.
- “Missing optional dependency @openai/codex-…”: chạy lại
npm install -g @openai/codex@latest; có lúc gói theo nền tảng lên npm trễ vài phút so với bản chính. - Homebrew chỉ có bản cask: cài bằng
brew install --cask codex, cập nhật bằngbrew upgrade --cask codex; các cách khác cập nhật bằngcodex updatehoặc chạy lại lệnh cài. - Cài từ đầu từng bước có ở bài cài Codex CLI trên Windows, macOS, Linux.
Báo lỗi cho OpenAI
Gõ /feedback trong phiên để gửi log và nhận mã phiên; lỗi mới có thể mở issue trên GitHub của dự án Codex. Không gửi file ~/.codex/auth.json, vì file này chứa token đăng nhập. Muốn dùng Codex bằng API key trả bằng VND thay cho thẻ quốc tế, xem bài cấu hình Codex CLI với STEYG Code.
Câu hỏi thường gặp
Codex báo “You’ve hit your usage limit” thì làm gì?
Gói ChatGPT của bạn đã hết hạn mức trong cửa sổ 5 giờ hoặc tuần. Chờ tới giờ ghi trong thông báo, dùng lượt reset để dành, mua thêm credit, nâng gói, hoặc chuyển sang API key trả theo giá API; xem phần còn lại bằng /status.
Vì sao Codex báo wire_api = "chat" is no longer supported?
Từ bản 0.95.0 (04/02/2026), Codex bỏ Chat Completions và chỉ dùng Responses API. Đổi mọi nhà cung cấp trong config.toml sang wire_api = "responses" hoặc xoá dòng này; gateway phải nhận POST /v1/responses.
Codex có tự đọc OPENAI_API_KEY không?
Không, từ bản 0.36.0. Đăng nhập bằng key một lần với printenv OPENAI_API_KEY | codex login --with-api-key; trong CI thì đặt CODEX_API_KEY ngay trên dòng lệnh codex exec.
Lỗi token_exchange_failed khi đăng nhập Codex là gì?
Codex không đổi được mã đăng nhập lấy token, thường do mạng, proxy hoặc chứng chỉ. Kiểm biến HTTP_PROXY, HTTPS_PROXY, đặt CODEX_CA_CERTIFICATE nếu công ty có proxy TLS, rồi chạy codex doctor để xem chi tiết.