Tài liệu

Tài liệu

Codex CLI

Codex chỉ hỗ trợ Responses API. Một khối nhà cung cấp trong config.toml trỏ Codex đến bề mặt /v1/responses gốc của Kunavo, còn khóa được lưu trong biến môi trường thay vì trong tệp.

Một khối [model_providers.kunavo] trong ~/.codex/config.toml với env_key, để key nằm trong môi trường và không bao giờ nằm trong tệp cấu hình.

~/.codex/config.toml
model = "gpt-5-6-sol"
model_provider = "kunavo"

[model_providers.kunavo]
name = "Kunavo"
base_url = "https://api.kunavo.com/v1"
env_key = "KUNAVO_API_KEY"     # the NAME of the variable, not the key
# wire_api defaults to "responses", which is the only supported value
wire_api hiện chỉ có đúng một giá trị hợp lệ: "responses", và đó là giá trị mặc định nếu bị bỏ qua. Codex đã ngừng hỗ trợ Chat Completions, vì vậy mọi hướng dẫn cũ bảo bạn ghi wire_api = "chat" đều đã lỗi thời — và mọi endpoint không có route /v1/responses thực sự đều không thể dùng với Codex. Kunavo triển khai route này nguyên bản.
env_key chứa tên của một biến môi trường, chứ không phải bản thân khóa. Đây là chủ ý của OpenAI: config.toml là tệp mà mọi người có thể commit và dán vào các vấn đề hỗ trợ.
Chưa có khóa? Tạo tài khoản Kunavo, tạo khóa (bắt đầu bằng sk-kn-) và nạp tín dụng từ $10 — các lệnh gọi được thanh toán từ số dư đó và các lệnh gọi thất bại không bị tính phí. Sau đó, bảng điều khiển mở tại phần thiết lập Codex CLI.

Từng bước

  1. Tạo khóa tại /app/keys rồi sao chép khóa — khóa chỉ hiển thị một lần.
  2. Thêm khối bên trên vào ~/.codex/config.toml, tạo tệp nếu tệp chưa tồn tại.
  3. Export biến có tên trong env_key: export KUNAVO_API_KEY=sk-kn-...
  4. Chạy codex. model_provider ở cấp cao nhất chọn khối cấu hình; model chọn id bên trong khối đó.
  5. Để đổi model theo từng phiên thay vì chỉnh sửa tệp, hãy dùng codex -m <model id>, hoặc giữ lại nhiều khối nhà cung cấp và thay đổi model_provider.

Đã kiểm tra đối chiếu với tài liệu tham khảo về tệp cấu hình Codex vào 6 tháng 9, 2026. Cài đặt của bên thứ ba có thể thay đổi; nếu tên trường ở đây không còn khớp với những gì bạn thấy, trang đó là nguồn có thẩm quyền, không phải trang này.

Đây là phiên bản ngắn. Hướng dẫn đầy đủ — lựa chọn mô hình, chi phí của một phiên thực tế và các trường hợp lỗi — nằm trong hướng dẫn khóa API Codex CLI.

Xác minh trước khi gỡ lỗi ứng dụng khách

Một yêu cầu sẽ xác định liệu lỗi nằm ở endpoint, khóa hay tệp cấu hình. Nếu lệnh này trả về JSON, cùng base URL và khóa sẽ hoạt động trong Codex CLI.

# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
  -H "Authorization: Bearer sk-kn-..."

Đặt model id nào vào trường

Mọi mô hình văn bản đều có thể truy cập bằng model id — danh sách đang hoạt động là GET /v1/models, còn danh mục kèm giá nằm trên trang mô hình. Mức giá tính bằng USD trên mỗi 1M token, đầu vào / đầu ra.

ID mô hìnhKunavo vào / raPhù hợp ở đâu trong Codex CLI
gpt-5-6-sol$2.00 / $12.00cấu hình ghép nối Codex mặc định — dùng Responses nguyên bản, kết nối trực tiếp
gpt-6-sol$0.80 / $4.00GPT-6 của OpenAI dành cho các tác vụ lập trình phức tạp và agent — cùng đường dẫn Responses, với mức giá thấp hơn 5.6 Sol
gpt-6-luna$0.04 / $0.20GPT-6 rẻ nhất, dành cho các lượt xử lý khối lượng lớn hoặc yêu cầu thấp
gpt-5-6-terra$0.70 / $4.20một tầng GPT rẻ hơn cho các phiên chủ yếu chỉnh sửa
claude-sonnet-5$1.40 / $7.00một model không thuộc GPT qua Responses — được chuyển đổi tại gateway
claude-opus-5$3.50 / $17.50các lượt lập kế hoạch cần độ sâu suy luận tương xứng với mức giá
Thanh toán theo token từ số dư trả trước, không có phí hàng tháng — xem trang Thanh toán. Với ngữ cảnh lặp lại — chiếm phần lớn dữ liệu mà trình chỉnh sửa hoặc ứng dụng trò chuyện gửi đi — bộ nhớ đệm prompt ảnh hưởng đến hóa đơn nhiều hơn lựa chọn mô hình.

Câu hỏi thường gặp

Làm thế nào để trỏ Codex CLI đến một endpoint API tùy chỉnh?

Thêm bảng [model_providers.<id>] vào ~/.codex/config.toml với name, base_url và env_key, sau đó đặt model_provider ở cấp cao nhất thành id đó và model thành id bạn muốn chạy. base_url là gốc /v1 của dịch vụ; env_key chỉ định tên biến môi trường chứa khóa, nhờ đó khóa không bao giờ xuất hiện trong chính tệp này.

Codex CLI cần giá trị wire_api nào?

"responses" — tài liệu tham khảo cấu hình nêu đây là giá trị duy nhất được hỗ trợ và là giá trị mặc định nếu bị bỏ qua. Codex đã ngừng hỗ trợ Chat Completions, vì vậy không thể dùng với Codex một endpoint chỉ triển khai /v1/chat/completions, bất kể cấu hình ra sao. Endpoint phải cung cấp route /v1/responses thực sự.

Codex CLI có thể chạy các mô hình Claude không?

Có, nếu endpoint cung cấp chúng qua Responses API. Codex gửi yêu cầu theo định dạng Responses đến địa chỉ được chỉ định bởi base_url và chuyển tiếp nguyên trạng model id. Vì vậy, gateway chuyển đổi Responses sang định dạng riêng của model có thể cung cấp các id Claude hoặc Gemini cho Codex. Bản thân Codex không biết nhà cung cấp nào sẽ phản hồi.

Codex CLI lưu khóa API ở đâu?

Trong biến môi trường được đặt tên bởi trường env_key của khối nhà cung cấp, chứ không phải trong config.toml. Codex đọc biến khi khởi động, vì vậy khóa nằm trong hồ sơ shell hoặc trình quản lý bí mật, còn tệp cấu hình vẫn an toàn để commit hoặc dán vào báo cáo lỗi.