5 คะแนน โดย pos090011 4 시간 전 | ยังไม่มีความคิดเห็น | แชร์ทาง WhatsApp

Codex ใช้ได้เฉพาะโมเดลของ OpenAI เท่านั้น ถ้าอยากใช้ Claude ล่ะ? ถ้าอยากเขียนโค้ดด้วย GLM-5.2 ล่ะ? ก็ต้องรอให้ OpenAI เพิ่มให้เท่านั้น

opencodex คือโลคัลพร็อกซีที่มาแก้ปัญหานี้ มันคั่นอยู่ระหว่าง Codex กับผู้ให้บริการ LLM แล้วแปลโปรโตคอลแบบเรียลไทม์ ทั้งสตรีมมิง, การเรียกใช้เครื่องมือ, โทเค็นการให้เหตุผล, รูปภาพ — ทำงานได้ครบทั้งสองทิศทาง

แอป Codex, cli, sdk
จะแสดงอยู่ในตัวเลือกโมเดลได้ตามปกติ
และภายในหนึ่งเซสชันสามารถใช้ทั้ง GPT และโมเดลที่ลงทะเบียนไว้ได้ทั้งหมด

npm install -g @bitkyc08/opencodex  
ocx init      # 프로바이더 선택  
ocx start     # 프록시 시작  
codex -m "anthropic/claude-opus-4-8" "이 버그 고쳐줘"  

วิธีการทำงาน

Codex ใช้เฉพาะโปรโตคอลของตัวเองที่ชื่อ Responses API(/v1/responses) เท่านั้น LLM ส่วนใหญ่ไม่ได้รองรับสิ่งนี้ opencodex จะแปลให้ผ่านอะแดปเตอร์โปรโตคอล 5 แบบ (Anthropic Messages, Google Gemini, Azure, OpenAI passthrough, OpenAI-compatible Chat Completions) มีผู้ให้บริการมากกว่า 40 รายที่รองรับมาให้ในตัว

โมเดลที่ถูกทำ routing จะแสดงในตัวเลือกโมเดลของ Codex เหมือนเป็นโมเดลเนทีฟ เพียงระบุในรูปแบบ provider/model

สิ่งที่ยากระหว่างการสร้าง

การออกแบบพร็อกซีนั้นมีโอเพนซอร์สอยู่มากมาย เลยทำได้ไม่ยาก
แต่เพื่อให้ประสบการณ์ใช้งานแบบเนทีฟของ Codex จำเป็นต้องแยกวิเคราะห์ codex-rs อย่างจริงจัง

การแมป reasoning effort ชื่อ effort ของแต่ละผู้ให้บริการไม่เหมือนกัน GLM ใช้คำว่า "max" ขณะที่ Codex เรียกว่า "xhigh" ส่วน Kimi ปฏิเสธพารามิเตอร์นี้ไปเลย จึงต้องทำตารางแปลงแยกตามแต่ละโมเดล

ประวัติเซสชัน Codex จะเก็บ model_provider ของแต่ละเธรดไว้ใน DB พอเปลี่ยนมาใช้ opencodex เซสชันเดิมจะหายไปทั้งหมด จึงต้องเปิด SQLite โดยตรงและทำตัว migrator ที่เปลี่ยนแท็ก model_provider ตอน inject/restore พร้อมคงค่า mtime ของไฟล์ไว้เพื่อไม่ให้ลำดับการกลับมาใช้งานเพี้ยน

ไซด์คาร์ โมเดลที่ไม่ใช่ OpenAI จะใช้การค้นหาเว็บหรือการเข้าใจภาพไม่ได้ จึงทำ routing ฟีเจอร์นี้ผ่านไซด์คาร์ gpt-5.4-mini ด้วยการล็อกอิน ChatGPT เพื่อให้ Claude หรือ GLM ค้นเว็บจริงได้เช่นกัน

ปิดแล้วกลับเป็นเหมือนเดิม

กด ocx stop แล้วการตั้งค่า Codex, แคตตาล็อก, ประวัติเซสชันทั้งหมดจะถูกกู้คืนกลับเป็นต้นฉบับ ไม่มีไฟล์ตกค้าง ปุ่ม Stop ในแดชบอร์ดหรือ ocx service uninstall ก็ให้ผลเหมือนกัน

ลิขสิทธิ์แบบ MIT รองรับแบบเนทีฟบน macOS/Linux/Windows (ไม่ต้องใช้ WSL)

GitHub: https://github.com/lidge-jun/opencodex
npm: npm install -g @bitkyc08/opencodex

ยังไม่มีความคิดเห็น

ยังไม่มีความคิดเห็น