
Tóm tắt nhanh
- opencodex đặt một proxy tại localhost để đưa model từ Ollama, vLLM, LM Studio hoặc API tương thích vào Codex.
- Người dùng vẫn chọn model trong giao diện ChatGPT Desktop, nhưng không phải model nào cũng xử lý tốt tool call của Codex.
- Chạy model local không đồng nghĩa mọi dữ liệu đều ở local: web search và một số luồng xử lý ảnh vẫn có thể đi qua máy chủ cloud.
Proxy đưa model local vào đúng giao diện Codex



ChatGPT Desktop vốn cho phép chọn các model của OpenAI trong Codex. Với opencodex, một proxy mã nguồn mở chạy trên máy có thể đứng giữa ứng dụng và backend model, rồi chuyển yêu cầu tới Ollama, vLLM, LM Studio hoặc các API tương thích.
Proxy này giữ nguyên model picker và giao diện Codex của ChatGPT Desktop, nhưng thay đổi nơi xử lý model phía sau. Theo XDA Developers, tác giả đã dùng giao diện này với Qwen 3.8 27B, GLM-5.3-Flash và MiniMax M3, bên cạnh các model cloud.
Cài đặt qua endpoint tương thích OpenAI

Codex hỗ trợ đổi base URL qua cấu hình trên máy. Khi chạy, opencodex thêm địa chỉ http://127.0.0.1:10100/v1 vào ~/.codex/config.toml, cùng endpoint realtime tương ứng. Các yêu cầu liệt kê model và gửi hội thoại vì thế đi qua proxy trước.
README của dự án hướng dẫn cài gói npm @bitkyc08/opencodex, chạy ocx start, rồi mở dashboard tại cổng 10100 để thêm provider và chọn model. Dự án hỗ trợ endpoint OpenAI-compatible cùng các backend dùng giao thức Anthropic Messages.
Ollama cũng có hướng dẫn chính thức cho ChatGPT Desktop, yêu cầu Ollama 0.34.0 trở lên. Người dùng mở Apps, bật ChatGPT (Desktop), làm theo trình hướng dẫn và khởi động lại ChatGPT nếu được yêu cầu. Ollama cho chọn tối đa năm model tương thích; các model này chỉ xuất hiện trong Codex, còn Chat và voice thông thường vẫn dùng kết nối ChatGPT hiện tại.
Khả năng gọi công cụ mới là điểm quyết định
Model tương thích không chỉ cần trả lời được hội thoại. Codex sử dụng các kiểu gọi công cụ như apply_patch, shell, MCP và tool_search. XDA ghi nhận MiniMax M3 gặp khó trong một số tình huống, trong khi GLM-5.3-Flash và Qwen 3.8 27B xử lý ổn hơn.
Vì vậy, “dùng được mọi LLM” nên được hiểu là proxy có thể chuyển giao thức, không phải mọi model đều cho trải nghiệm giống nhau. Nếu một model chạy tốt trong agent khác nhưng thất bại trong Codex, định dạng tool call là một trong những điểm đầu tiên cần kiểm tra.
Model local chưa bảo đảm toàn bộ dữ liệu ở local
Đây là giới hạn cần nói rõ trước khi xem opencodex như một lớp riêng tư tuyệt đối. XDA cho biết web search vẫn có thể đi qua máy chủ OpenAI; với model chỉ nhận text, ảnh cũng có thể được gửi tới dịch vụ cloud để nhận dạng trước khi phần văn bản được chuyển cho model local.
Tài liệu Ollama tách các luồng khá rõ: model Ollama xử lý yêu cầu của Codex, còn model native của ChatGPT tiếp tục dùng provider thông thường. Người dùng nên kiểm tra từng tính năng và provider thay vì chỉ nhìn nhãn “local”.
Phù hợp với người chấp nhận tự kiểm tra cấu hình

Với người đã có model chạy trên máy hoặc trong mạng riêng, opencodex giải quyết một bất tiện cụ thể: không phải đổi sang ứng dụng chat khác chỉ để thử model đó. Đổi lại, đây là cấu hình đòi hỏi tự kiểm tra endpoint, quyền truy cập và tool call.
Cách thận trọng là bind proxy ở localhost, thử từng model với tác vụ không nhạy cảm, rồi xác minh web search và vision đang đi qua đâu. Nếu chấp nhận được các giới hạn này, ChatGPT Desktop có thể trở thành lớp giao diện cho nhiều model hơn danh sách mặc định của OpenAI.







