# README (ไทย) 🌐 **Languages:** 🇺🇸 [English](../../../README.md) · 🇪🇹 [am](../am/README.md) · 🇸🇦 [ar](../ar/README.md) · 🇦🇿 [az](../az/README.md) · 🇧🇬 [bg](../bg/README.md) · 🇧🇩 [bn](../bn/README.md) · 🇧🇦 [bs](../bs/README.md) · 🇨🇿 [cs](../cs/README.md) · 🇩🇰 [da](../da/README.md) · 🇩🇪 [de](../de/README.md) · 🇬🇷 [el](../el/README.md) · 🇪🇸 [es](../es/README.md) · 🇪🇪 [et](../et/README.md) · 🇮🇷 [fa](../fa/README.md) · 🇫🇮 [fi](../fi/README.md) · 🇫🇷 [fr](../fr/README.md) · 🇮🇪 [ga](../ga/README.md) · 🇮🇳 [gu](../gu/README.md) · 🇳🇬 [ha](../ha/README.md) · 🇮🇱 [he](../he/README.md) · 🇮🇳 [hi](../hi/README.md) · 🇭🇷 [hr](../hr/README.md) · 🇭🇺 [hu](../hu/README.md) · 🇦🇲 [hy](../hy/README.md) · 🇮🇩 [id](../id/README.md) · 🇳🇬 [ig](../ig/README.md) · 🇮🇹 [it](../it/README.md) · 🇯🇵 [ja](../ja/README.md) · 🇬🇪 [ka](../ka/README.md) · 🇰🇭 [km](../km/README.md) · 🇮🇳 [kn](../kn/README.md) · 🇰🇷 [ko](../ko/README.md) · 🇱🇹 [lt](../lt/README.md) · 🇱🇻 [lv](../lv/README.md) · 🇮🇳 [ml](../ml/README.md) · 🇮🇳 [mr](../mr/README.md) · 🇲🇾 [ms](../ms/README.md) · 🇲🇹 [mt](../mt/README.md) · 🇲🇲 [my](../my/README.md) · 🇳🇵 [ne](../ne/README.md) · 🇳🇱 [nl](../nl/README.md) · 🇳🇴 [no](../no/README.md) · 🇮🇳 [or](../or/README.md) · 🇮🇳 [pa](../pa/README.md) · 🇵🇭 [phi](../phi/README.md) · 🇵🇱 [pl](../pl/README.md) · 🇵🇹 [pt](../pt/README.md) · 🇧🇷 [pt-BR](../pt-BR/README.md) · 🇷🇴 [ro](../ro/README.md) · 🇷🇺 [ru](../ru/README.md) · 🇱🇰 [si](../si/README.md) · 🇸🇰 [sk](../sk/README.md) · 🇸🇮 [sl](../sl/README.md) · 🇷🇸 [sr](../sr/README.md) · 🇸🇪 [sv](../sv/README.md) · 🇰🇪 [sw](../sw/README.md) · 🇮🇳 [ta](../ta/README.md) · 🇮🇳 [te](../te/README.md) · 🇹🇷 [tr](../tr/README.md) · 🇺🇦 [uk-UA](../uk-UA/README.md) · 🇵🇰 [ur](../ur/README.md) · 🇺🇿 [uz](../uz/README.md) · 🇻🇳 [vi](../vi/README.md) · 🇳🇬 [yo](../yo/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md) ---
แดชบอร์ด OmniRoute

# 🚀 OmniRoute — เกตเวย์ AI ฟรี OmniRoute — ไม่หยุดเขียนโค้ด เครื่องมือ AI ทุกชนิด → ผู้ให้บริการ 358 ราย — ฟรี 150+ ราย — ผ่านปลายทางเดียว Claude Code, Codex, Cursor, Cline, Copilot & Antigravity สู่ Claude / GPT / Gemini ฟรี พร้อมการสำรองข้อมูลอัตโนมัติ การบีบอัดแบบซ้อน RTK + Caveman ช่วยประหยัดโทเค็นได้ 15–95% (เฉลี่ย ~89%) — ไม่เคยชนขีดจำกัด ผู้ให้บริการ AI 358 ราย · ระดับฟรี 150+ ราย · โทเค็นฟรี ~1.62 พันล้าน/เดือน · กลยุทธ์การกำหนดเส้นทาง 19 แบบ · เริ่มต้น $0
## 💰 โทเค็นฟรี ~1.62B / เดือน
> การรวมแพ็กเกจฟรีด้วยตนเองเป็นเรื่องยุ่งยาก — มี SDK หลายสิบรายการ ขีดจำกัดอัตราการใช้งานหลายสิบแบบ และคุณก็ไม่รู้เลยว่าจริง ๆ แล้วมีโควตาอยู่เท่าใด OmniRoute รวบรวม **รายการแพ็กเกจฟรี 489 รายการจากคีย์พูลแบบหมุนเวียน 35 คีย์** และคำนวณตัวเลขโทเค็นหลักจาก **17 พูลที่มีการประกาศงบประมาณรายเดือนเป็นจำนวนบวก รวมถึงเพดานแยกตามโมเดลของ Groq อีก 5 รายการ** โดยตัดรายการซ้ำตามพูลที่ใช้ร่วมกัน โควตาที่เปิดให้ใช้ได้หลังผ่านการตรวจสอบตัวตนตามภูมิภาคเท่านั้น (ปัจจุบันคือ ModelScope) จะแสดงแยกต่างหาก โดยมีอีก +~6M ที่ต้องผ่านการยืนยันตัวตนตามภูมิภาค และจะไม่ถูกนำไปรวมในตัวเลขหลัก ผลลัพธ์จะแสดงอยู่บนแดชบอร์ด (`/dashboard/free-tiers`) เสมอ การ์ดงบประมาณแพ็กเกจฟรีของ OmniRoute: โทเค็นฟรีคงที่ ~1.62B ต่อเดือน และสูงสุด ~2.22B ในเดือนแรกเมื่อรวมเครดิตสมัครใช้งาน จากคีย์พูลแบบหมุนเวียนที่มีเอกสารกำกับ 35 คีย์ ซึ่งครอบคลุมรายการแพ็กเกจฟรีในแค็ตตาล็อก 489 รายการภายใต้เอนด์พอยต์เดียว การคำนวณที่โปร่งใสและตัดรายการซ้ำตามพูล — แต่ละพูลที่ใช้ร่วมกันจะถูกนับเพียงครั้งเดียว รวมถึงพูลแบบหมุนเวียน 17 พูลที่มีการประกาศงบประมาณโทเค็นรายเดือนเป็นจำนวนบวก และเพดานแยกตามโมเดลของ Groq อีก 5 รายการ ผู้ให้บริการ 13 รายถูกทำเครื่องหมายว่าควรหลีกเลี่ยงในแค็ตตาล็อกความเสี่ยงด้านข้อกำหนด เพื่อให้คุณเป็นผู้ตัดสินใจเอง แถบงบประมาณประกอบด้วย Mistral 1B, Nara 210M, LLM7 150M, xKiro 150M, Groq 30M (เพดานแยกตามโมเดล 5 รายการ) และพูลขนาดเล็กอื่น ๆ รวมทั้งเครดิตสมัครใช้งานสำหรับเดือนแรกและผู้ให้บริการที่ให้ใช้ฟรีถาวรโดยไม่มีเพดานโทเค็น ซึ่งจะแสดงแยกต่างหากเพื่อไม่ให้ตัวเลขหลักสูงเกินจริง ดูปริมาณที่ใช้ไป/คงเหลือแบบเรียลไทม์ได้ที่ /dashboard/free-tiers. > ภาพเคลื่อนไหวสรุปหน้า `/dashboard/free-tiers` แบบเรียลไทม์ ดูวิธีการทั้งหมด (การตัดรายการซ้ำตามพูล ระดับเครดิต และข้อกำหนดของผู้ให้บริการ) ได้ที่: **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**. > > ตัวเลขเหล่านี้ได้รับการตรวจสอบซ้ำทุกสองสัปดาห์เทียบกับแค็ตตาล็อกปัจจุบัน และสามารถ **เปลี่ยนแปลงได้ทั้งสองทิศทาง** — เมื่อผู้ให้บริการยกเลิกแพ็กเกจฟรี ตัวเลขก็จะลดลง และเมื่อมีแพ็กเกจใหม่เพิ่มเข้ามา ตัวเลขก็จะสูงขึ้น เราเผยแพร่ตัวเลขที่แค็ตตาล็อกคำนวณได้จริงเท่านั้น ไม่ใช่กรณีดีที่สุดที่ปัดเศษขึ้น

⭐ กดดาวให้รีโพนี้ หาก OMNIROUTE ช่วยให้คุณประหยัดเงินและทำงานได้ง่ายขึ้น

[![ดาว](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![อันดับประวัติการกดดาว](https://api.star-history.com/badge?repo=diegosouzapw/OmniRoute&theme=dark)](https://www.star-history.com/diegosouzapw/omniroute) [![olud.ai](https://olud.ai/badge.php?tool=diegosouzapw-omniroute)](https://olud.ai/project/diegosouzapw-omniroute.html) ### 💬 เข้าร่วมชุมชน **👋 ติดตามผู้ดูแลโปรเจกต์ — รับข่าวสารผู้ให้บริการใหม่ รุ่นใหม่ และเคล็ดลับก่อนใคร:** [![ติดตาม Diego บน LinkedIn](https://img.shields.io/badge/Follow_Diego_on-LinkedIn-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/diegosouzapw/) [![ติดตาม @diegosouzapw บน GitHub](https://img.shields.io/github/followers/diegosouzapw?style=for-the-badge&logo=github&logoColor=white&label=Follow%20on%20GitHub&color=181717)](https://github.com/diegosouzapw) [![Discord](https://img.shields.io/badge/Discord-5865F2?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/U47eFqAXCn) [![Telegram](https://img.shields.io/badge/Telegram-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/omnirouteOficial) [![WhatsApp ทั่วโลก](https://img.shields.io/badge/WhatsApp_Global-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) [![WhatsApp บราซิล](https://img.shields.io/badge/WhatsApp_Brasil-25D366?style=for-the-badge&logo=whatsapp&logoColor=white)](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) [![เว็บไซต์](https://img.shields.io/badge/Website-omniroute.online-blue?logo=google-chrome&logoColor=white)](https://omniroute.online) **คำถาม เคล็ดลับเกี่ยวกับผู้ให้บริการ แผนงาน และการสนับสนุน → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 ทั่วโลก](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 บราซิล](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [พอร์ทัล](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 เกตเวย์ยังคงเติบโตอย่างต่อเนื่อง
| | v3.8.49 | **v3.8.50** | `v3.8.51+` | | ------------------------------ | :-----: | :---------------------: | :--------: | | 🌐 ผู้ให้บริการ | 290 | **357** | รอเพิ่มอีก | | 🧠 ID โมเดลแชตที่ไม่ซ้ำกัน | 1185 | **1312** | — | | 🖼️ สะพานเชื่อมโมดาลิตี | — | 🆕 ภาพ + เสียง + วิดีโอ | — | | 📡 แค็ตตาล็อกฟรีของ Radar | — | 🆕 เลือกเข้าร่วม | — | | ⚖️ การจัดตารางโดยคำนึงถึงโควตา | — | 🆕 Quota-Share | — | | 📊 เทเลเมทรีโควตา | — | 🆕 แบบเรียลไทม์ | — | **→ [แผนงาน](ROADMAP.md) — เดินหน้าตามเส้นทางสู่ `v3.9.0 LTS`**

## 🧩 พร้อมใช้งาน [![เวอร์ชัน npm](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) ![ยอดดาวน์โหลด NPM รายเดือน](https://img.shields.io/npm/dm/omniroute?label=npm/month&color=cb3837&logo=npm) [![Docker Hub](https://img.shields.io/docker/v/diegosouzapw/omniroute?label=Docker%20Hub&logo=docker&color=2496ED)](https://hub.docker.com/r/diegosouzapw/omniroute) [![สัญญาอนุญาต: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE) ![ยอดดึง Docker](https://img.shields.io/docker/pulls/diegosouzapw/omniroute?label=docker%20pulls&logo=docker&color=2496ED) ![ยอดดาวน์โหลด Electron](https://img.shields.io/github/downloads/diegosouzapw/omniroute/total?style=flat&label=electron%20downloads&logo=electron&color=47848F)
🚀 เริ่มต้น 🚀 เริ่มต้นอย่างรวดเร็ว 📦 ติดตั้ง 🆓 ไม่ต้องกำหนดค่า
💡 เรียนรู้ 💥 คำมั่นสัญญา 🤔 ทำไมต้อง OmniRoute 🏆 สิ่งที่ทำให้แตกต่าง
⚙️ คุณสมบัติ 🎯 คอมโบ 🌐 ผู้ให้บริการ 🔌 CLI และ MCP
🗜️ การบีบอัด 🖥️ ใช้งานได้ที่ใด 🔒 เป็นส่วนตัว
👀 ดูการทำงาน 🎬 การทำงานจริง ✨ มีอะไรใหม่ 🤖 CLI ที่ใช้งานร่วมกันได้
💚 สนับสนุน 💚 สนับสนุน / บริจาค 💬 ชุมชน 💖 ผู้สนับสนุน
📦 โปรเจกต์ 🛠️ เทคโนโลยีที่ใช้ 📖 เอกสารประกอบ 👥 ผู้มีส่วนร่วม
🌐 มีให้บริการใน 66 ภาษา

English (en) Português — Brasil (pt-BR) Português (pt) Español (es) Français (fr) Italiano (it) Deutsch (de) Nederlands (nl) Русский (ru) Українська (uk-UA) Polski (pl) Čeština (cs) Slovenčina (sk) Română (ro) Magyar (hu) Български (bg) Dansk (da) Suomi (fi) Norsk (no) Svenska (sv) 中文 — 简体 (zh-CN) 中文 — 繁體 (zh-TW) 日本語 (ja) 한국어 (ko) ไทย (th) Tiếng Việt (vi) Bahasa Indonesia (id) Bahasa Melayu (ms) Filipino (phi) हिन्दी (hi) ગુજરાતી (gu) मराठी (mr) தமிழ் (ta) తెలుగు (te) বাংলা (bn) اردو (ur) فارسی (fa) العربية (ar) עברית (he) Türkçe (tr) Azərbaycan (az) Kiswahili (sw) Ελληνικά (el) Hrvatski (hr) Српски (sr) Lietuvių (lt) Eesti (et) Latviešu (lv) Slovenščina (sl) Malti (mt) Gaeilge (ga) ಕನ್ನಡ (kn) മലയാളം (ml) ଓଡ଼ିଆ (or) ਪੰਜਾਬੀ (pa) नेपाली (ne) සිංහල (si) မြန်မာ (my) ខ្មែរ (km) Hausa (ha) Yorùbá (yo) Igbo (ig) አማርኛ (am) Oʻzbekcha (uz) ქართული (ka) Հայերեն (hy)


## 🆓 ใช้งานได้ทันทีที่ติดตั้ง — ไม่ต้องใช้คีย์ ไม่ต้องตั้งค่า
ใช้งานได้ทันทีที่ติดตั้ง — ไม่ต้องตั้งค่าใดๆ สามขั้นตอน: 1. ติดตั้ง — npm i -g omniroute, เซิร์ฟเวอร์จะเริ่มทำงานที่ localhost:20128 2. ชี้เครื่องมือของคุณไปที่ http://localhost:20128/v1 — เครื่องมือใดๆ ที่เข้ากันได้กับ OpenAI (Claude Code, Cursor, Cline) 3. มันจะตอบกลับ — เรียกใช้โมเดล auto เพื่อรับการตอบกลับทันที โดยไม่ต้องใช้ API key, ไม่ต้องลงทะเบียน, ไม่ต้องตั้งค่า ผู้ให้บริการแบบไม่ต้องใช้คีย์ OpenCode Free ถูกตั้งค่าไว้ล่วงหน้าในชุด auto ดังนั้นการติดตั้งใหม่จึงสามารถตอบกลับได้ทันที ```bash # Fresh install, zero credentials — `auto` already works: curl http://localhost:20128/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}' ``` ต้องการแบ็กเอนด์ฟรีที่เฉพาะเจาะจงหรือไม่? เรียกใช้ `oc/…` (OpenCode Free) โดยตรง จากนั้นอัปเกรดเป็น `auto` และให้ OmniRoute เลือก 📦 สคริปต์เริ่มต้นอย่างรวดเร็วแบบคัดลอกและวางสำหรับ **Python, Node.js, PHP และ cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 คำมั่นสัญญา
คำมั่นสัญญา — ปลายทางเดียวและผู้ให้บริการ 358 ราย การสำรองข้อมูลอัตโนมัติช่วยให้การกำหนดเส้นทางดำเนินต่อไปได้ตราบเท่าที่มีเป้าหมายที่ใช้งานได้อื่นอยู่ หกเสาหลัก: การสำรองข้อมูลที่ยืดหยุ่นจากผู้ให้บริการ 358 ราย · ประหยัดโทเค็นได้สูงสุด 95% สำหรับปริมาณงานที่เข้าเกณฑ์ · เริ่มต้นที่ $0 ด้วย 150+ ระดับฟรี และผู้ให้บริการฟรีตลอดชีพแบบไม่ต้องใช้คีย์/แบบประจำ 54 ราย · การผสานรวม CLI/เอเจนต์ 36 รายการผ่านการตั้งค่าเดียว · ความเข้ากันได้กับ OpenAI, Claude, Gemini และ Responses API ที่ /v1 · การควบคุมการผลิต รวมถึง circuit breakers, TLS stealth, เครื่องมือ MCP 110, A2A, หน่วยความจำ, guardrails, evals และการประกาศการทดสอบแบบคงที่กว่า 39,000 รายการในไฟล์ทดสอบที่ติดตามกว่า 5,100 ไฟล์

# 🤔 ทำไมต้อง OmniRoute?
ทำไมต้อง OmniRoute — หยุดจัดการ 10 แดชบอร์ด, API key ที่หมดอายุ และค่าใช้จ่ายที่ไม่คาดคิด สิบปัญหาประจำวันเทียบกับวิธีแก้ไข: โควต้าหมดอายุโดยไม่ได้ใช้ → เพิ่มประสิทธิภาพการสมัครสมาชิก; อัตราการจำกัดระหว่างการเขียนโค้ด → การสำรองข้อมูลอัตโนมัติ 4 ระดับ (Subscription → API → Cheap → Free); ผลลัพธ์ของเครื่องมือใช้โทเค็นมากเกินไป → การบีบอัด RTK + Caveman (15–95%); API ราคาแพง → การกำหนดเส้นทางที่ปรับให้เหมาะสมกับต้นทุน; ทุกเครื่องมือมีการตั้งค่าของตัวเอง → ปลายทางเดียว, แดชบอร์ดเดียว; AI ถูกบล็อก → พร็อกซี 3 ระดับ + TLS stealth; คีย์หมดอายุ → ความยืดหยุ่น 3 ชั้น (circuit breakers, key cooldown, model lockout); ทีมใช้การสมัครสมาชิกเดียว → key pools พร้อมโควต้าการแบ่งปันที่เป็นธรรม; พรอมต์ผ่านคลาวด์ของผู้อื่น → เน้นการทำงานในเครื่องด้วยคีย์ที่เข้ารหัส AES-256-GCM; ไม่มีการมองเห็นค่าใช้จ่าย → การวิเคราะห์แบบเรียลไทม์ (การใช้งาน, โควต้า, การประหยัด, p95 latency).
ขั้นตอนการร้องขอของ OmniRoute: IDE หรือ CLI ของคุณ (Claude Code, Cursor, Cline…) เรียกใช้ปลายทางในเครื่องเดียว (http://localhost:20128/v1); OmniRoute Smart Router (การบีบอัด RTK + Caveman, กลยุทธ์การกำหนดเส้นทาง 19 แบบ, circuit breakers, TLS stealth, MCP, A2A, guardrails) สามารถสำรองข้อมูลข้าม 4 ระดับผู้ให้บริการได้ตราบเท่าที่ยังมีเป้าหมายที่ใช้งานได้และมีสิทธิ์ — ระดับ 1 Subscription, ระดับ 2 API Key, ระดับ 3 Cheap และระดับ 4 Free.

## 🤝 ได้รับการสนับสนุนจากเพื่อนโอเพนซอร์สของเรา

Kimi K3 — ปัญญาประดิษฐ์แนวหน้าแบบเปิด · พารามิเตอร์ 2.8T · บริบท 1M-โทเค็น

> **ต้องการเข้าร่วมเป็นเพื่อนโอเพนซอร์สหรือไม่?** บริษัทเหล่านี้สนับสนุนโอเพนซอร์สและช่วยให้ OmniRoute ดำเนินต่อไปได้ — และเราจะเปิดเผยต่อสาธารณะว่าโทเค็นทุกโทเค็นที่พวกเขาให้เราไปใช้ทำอะไร ติดต่อเราได้ที่: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi (Moonshot AI)
Kimi
Moonshot AI

เพื่อนโอเพนซอร์สผู้ก่อตั้ง
ขอขอบคุณ Kimi (Moonshot AI) เพื่อนโอเพนซอร์สผู้ก่อตั้งของเราที่สนับสนุนโปรเจกต์นี้! Kimi คือห้องปฏิบัติการ AI ที่อยู่เบื้องหลังตระกูลโมเดล K2 และ K3 แบบโอเพนเวท — Kimi K3 มอบหน้าต่างบริบท 1M-โทเค็น, การมองเห็นแบบเนทีฟ และการเขียนโค้ดระดับแนวหน้าในราคาเพียงเศษเสี้ยวของโมเดลแบบปิด และทำงานได้ทันทีกับ Claude Code, Codex และเครื่องมือเขียนโค้ดทุกชนิดที่ OmniRoute ให้บริการ

สิ่งที่การสนับสนุนของ Kimi ช่วยขับเคลื่อน: เครดิต API ของ Kimi ขับเคลื่อนไปป์ไลน์การเผยแพร่ที่ผ่านการตรวจสอบโดย AI ของ OmniRoute — ขั้นตอน การตรวจสอบการรวมโค้ดที่ขับเคลื่อนโดย Kimi K3 ซึ่งตรวจสอบทุก pull request ก่อนที่จะเผยแพร่ — รวมถึงการพัฒนาฟีเจอร์ในแต่ละวัน การสนับสนุน Kimi ระดับเฟิร์สคลาสมีให้เลือกทั้งสองช่องทาง: Kimi API โดยตรง (kimi-k3) และ แผนการเขียนโค้ด Kimi Code (OAuth และ API key) OmniRoute ยังเป็นโปรเจกต์โอเพนซอร์สแรกของบราซิลที่อยู่ในโปรแกรมสนับสนุนของ Kimi รับ Kimi API key พร้อมเครดิตเพิ่ม 15% →
Cheaper Inference
Cheaper Inference
cheaperinference.com

เพื่อนโอเพนซอร์ส
ขอขอบคุณ Cheaper Inference เพื่อนโอเพนซอร์สของ OmniRoute ที่สนับสนุนโปรเจกต์นี้! Cheaper Inference คือเกตเวย์จัดอันดับตามราคาที่จำหน่ายโมเดลแนวหน้า 42 โมเดล — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok และ MiniMax — ผ่านปลายทางที่เข้ากันได้กับ OpenAI เพียงจุดเดียว โดยจะส่งคำขอแต่ละรายการไปยังผู้ให้บริการที่มีสิทธิ์ที่ถูกที่สุดโดยไม่คิดค่าบริการเกินราคาที่ผู้สร้างโมเดลกำหนด

การสนับสนุนระดับเฟิร์สคลาสใน OmniRoute: Chat Completions, ปลายทางเนทีฟ /v1/responses, การมองเห็น, การเรียกใช้เครื่องมือ และโมเดลรูปภาพ 3 โมเดล (grok-imagine, nano-banana-pro, nano-banana-2, เข้าถึงได้ในชื่อ cheaperinference/<model>) รับ API key →
ลิงก์ที่ติดแท็ก aff=omniroute เป็นลิงก์พันธมิตร ซึ่งช่วยสนับสนุนโครงการโดยไม่มีค่าใช้จ่ายเพิ่มเติมสำหรับคุณ
🎟️ โปรโมชันพันธมิตร — คูปองสมัครฟรีจากผู้ให้บริการที่เราไม่ได้สนับสนุน (คลิกเพื่อขยาย) ส่วนนี้มีไว้สำหรับรหัสอ้างอิง/คูปองเท่านั้น การเป็นพันธมิตรที่ได้รับการสนับสนุนจะอยู่ในส่วน 🤝 ได้รับการสนับสนุนจากเพื่อนโอเพนซอร์สของเรา ด้านบน OmniRoute ไม่มีการสนับสนุนหรือเป็นพันธมิตรกับผู้ให้บริการที่ระบุไว้ที่นี่ — นี่คือคูปองสาธารณะที่ใครก็สามารถใช้ได้
AgentRouter
AgentRouter
agentrouter.org
AgentRouter — การสมัครพันธมิตร · เครดิตฟรี $100 เมื่อสมัคร (เซิร์ฟเวอร์ฟรี คาดว่าจะมีเวลาแฝงสูงขึ้น — เหมาะสำหรับการทดสอบ ไม่ใช่สำหรับการใช้งานจริง) การสนับสนุนระดับเฟิร์สคลาสใน OmniRoute ตั้งแต่ v3.8.50: Chat Completions, รูปแบบสายที่เข้ากันได้กับ Anthropic และเส้นทางที่เข้ากันได้กับ OpenAI โมเดลที่มีให้เลือก ได้แก่ claude-opus-4-8, claude-opus-5, gpt-5.6-sol และอื่นๆ รับ $100 ของคุณ →

⚠️ ลิงก์พันธมิตร — OmniRoute ไม่มีการสนับสนุนหรือเป็นพันธมิตรกับผู้ให้บริการรายนี้
รู้จักผู้ให้บริการรายอื่นที่มีคูปองสมัครฟรีที่เอื้อประโยชน์ต่อผู้ใช้ OmniRoute หรือไม่? เปิด issue แล้วเราจะเพิ่มที่นี่

## 🎯 Combos — ฟีเจอร์เรือธง
ภาพเคลื่อนไหวของกลยุทธ์การกำหนดเส้นทางคอมโบทั้ง 19 แบบ — หนึ่งช่องต่อหนึ่งกลยุทธ์: priority, fill-first, weighted, round-robin, p2c, least-used, random, strict-random, cost-optimized, headroom, reset-window, reset-aware, context-relay, context-optimized, cache-optimized, lkgp, auto, fusion, pipeline โปรดดูตารางด้านบนสำหรับรายละเอียดการทำงานของแต่ละกลยุทธ์ > **คอมโบ** คือสายโซ่ของโมเดลที่ OmniRoute กำหนดเส้นทางไปยังโมเดลต่าง ๆ **โดยอัตโนมัติ** หากโควตาหมด ผู้ให้บริการล้มเหลว หรือค่าใช้จ่ายพุ่งสูง คอมโบจะย้ายไปยังโมเดลถัดไปที่เข้าเกณฑ์และทำงานเป็นปกติได้ 🛡️ ### ⚡ ไม่ต้องกำหนดค่า — เพียงใช้ `auto` ไม่ต้องสร้างคอมโบ เพียงตั้งค่าโมเดลเป็น `auto` (หรือตัวแปรรูปแบบอื่น) แล้ว OmniRoute จะสร้างคอมโบเสมือนจากผู้ให้บริการที่คุณเชื่อมต่อ พร้อมให้คะแนนแบบเรียลไทม์:
รหัสโมเดลสิ่งที่ปรับให้เหมาะสม
auto🎯 ค่าเริ่มต้นที่สมดุล (LKGP — ยึดผู้ให้บริการล่าสุดที่ทำงานได้ดี)
auto/coding🧑💻 ให้น้ำหนักโดยเน้นคุณภาพสำหรับการสร้างโค้ด
auto/fast⚡ เลือกเวลาแฝงต่ำที่สุดก่อน
auto/cheap💰 เลือกราคาต่อโทเค็นที่ถูกที่สุดก่อน
auto/offline🔋 เลือกเป้าหมายที่มีโควตา / ขีดจำกัดอัตราคงเหลือมากที่สุดก่อน
auto/smart🔭 เน้นคุณภาพก่อน + สำรวจ 10% เพื่อค้นหาโมเดลที่ดีกว่า
auto/lkgp📌 ยึดผู้ให้บริการล่าสุดที่ทราบว่าทำงานได้ดีอย่างชัดเจน
auto/chaos🧪 น้ำหนักสำหรับการแทรกความผิดพลาดเพื่อทดสอบความยืดหยุ่น (วิศวกรรมเคออส)
## ### 🔀 หรือสร้างเอง — กลยุทธ์การกำหนดเส้นทาง 19 แบบ กลยุทธ์ทั้งหมด **19** แบบ — ผสมผสานได้ในแต่ละขั้นตอนของคอมโบ:
# กลยุทธ์ การทำงาน
1 priority รายการเรียงลำดับโดยเลือกเป้าหมายแรก — ใช้แต่ละเป้าหมายจนหมดก่อนเลือกเป้าหมายถัดไป 🥇
2 fill-first ใช้โควตาของแต่ละเป้าหมายให้เต็มก่อนย้ายไปเป้าหมายถัดไป
3 weighted สุ่มแบบถ่วงน้ำหนักตามน้ำหนักของแต่ละเป้าหมาย
4 round-robin วนเลือกเป้าหมายตามลำดับ
5 p2c กระจายโหลดแบบสุ่มด้วยการเลือกสองตัวเลือก
6 least-used เลือกเป้าหมายที่มีโหลดปัจจุบันต่ำที่สุด
7 random สุ่มเลือกด้วยความน่าจะเป็นเท่ากัน (ตัดรายการซ้ำออก)
8 strict-random สุ่มโดยไม่ตัดรายการที่เลือกซ้ำออก 🎲
9 cost-optimized ลดค่าใช้จ่าย $ ต่อคำขอให้ต่ำที่สุดตามราคาแบบเรียลไทม์ในแค็ตตาล็อก 💸
10 headroom เลือกเป้าหมายที่มีโควตาคงเหลือมากที่สุด
11 reset-window เลือกเป้าหมายที่กรอบเวลาโควตาจะรีเซ็ตเร็วที่สุดก่อน
12 reset-aware จัดอันดับตามเวลารีเซ็ตโควตา — กรอบเวลาสั้นมาก่อน 📊
13 context-relay ส่งต่อบริบทระหว่างเป้าหมายสำหรับบทสนทนาที่ยาว 🧠
14 context-optimized เลือกเป้าหมายที่เหมาะสมที่สุดกับขนาดบริบทปัจจุบัน
15 cache-optimized ตรึงคำนำหน้าพรอมป์ที่นำกลับมาใช้ซ้ำได้แต่ละรายการไว้กับบัญชีเดิม — เพิ่มอัตราการพบข้อมูลในแคชพรอมป์ให้สูงสุด 🎯
16 lkgp เส้นทางล่าสุดที่ทราบว่าทำงานได้ดี — ตรึงไว้กับผู้ให้บริการล่าสุดที่สำเร็จ จากนั้นจึงใช้กฎสำรอง
17 auto ให้คะแนนแบบเรียลไทม์จาก 16 ปัจจัยสำหรับทุกการเชื่อมต่อ 🤖
18 fusion กระจายคำขอไปยังกลุ่มโมเดล + ให้โมเดลผู้ตัดสินสังเคราะห์เป็นคำตอบเดียว 🧬
19 pipeline เชื่อมโยงขั้นตอน — เอาต์พุตของแต่ละเป้าหมายจะถูกส่งเป็นอินพุตให้เป้าหมายถัดไป 🔗
กลไก Auto-Combo ให้คะแนนตัวเลือกแต่ละรายการจาก **16 ปัจจัย** (สถานะการทำงาน โควตา ค่าใช้จ่าย เวลาแฝง ความเหมาะสมกับงาน คุณภาพ ความพร้อมใช้งานของเซสชัน…) — ดู [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md) ## ### 🧱 ความยืดหยุ่นมีมาให้ในตัว (3 ชั้นที่เป็นอิสระต่อกัน) ความยืดหยุ่นของ OmniRoute — 3 ชั้นการฟื้นฟูตัวเองที่เป็นอิสระต่อกัน โดยใช้ชั้นที่เหมาะสมกับความล้มเหลวแต่ละประเภท ชั้นที่ 1 เซอร์กิตเบรกเกอร์ของผู้ให้บริการ (ทั้งผู้ให้บริการ): จะตัดวงจรเฉพาะเมื่อพบ 408/5xx โดยมีค่าเกณฑ์ OAuth 8× / API-key 12× / local 2× และรีเซ็ตใน 60s/30s/15s เพื่อเข้าสู่การทดสอบแบบ HALF-OPEN พร้อมการกู้คืนแบบ lazy; ขณะที่อยู่ในสถานะ OPEN คอมโบจะเปลี่ยนเส้นทางไปยังผู้ให้บริการรายถัดไป ชั้นที่ 2 ช่วงพักการเชื่อมต่อ (หนึ่งคีย์/บัญชี): ค่าเริ่มต้น 5s สำหรับ OAuth / 3s สำหรับ API-key พร้อมการหน่วงเวลาแบบเอ็กซ์โพเนนเชียล ×2 และกลไกป้องกัน thundering herd, สำหรับ 429 จะปฏิบัติตาม Retry-After และเมื่อสำเร็จจะล้างสถานะข้อผิดพลาดทั้งหมด; คีย์หนึ่งที่อยู่ในช่วงพักจะถูกข้าม ขณะที่คีย์อื่นในกลุ่มเดียวกันยังคงให้บริการต่อไป ชั้นที่ 3 การล็อกโมเดล (หนึ่งโมเดล): 429 เฉพาะโมเดล, 404 จาก local หรือการปฏิเสธโหมดจะล็อกเฉพาะโมเดลนั้น — ไม่ใช่ทั้งการเชื่อมต่อ สถานะสิ้นสุด (ถูกแบน, หมดอายุ, เครดิตหมด) เป็นสิ่งที่ผู้ดูแลระบบต้องจัดการ ไม่ใช่ช่วงพัก 📖 [กลไก Auto-Combo](docs/routing/AUTO-COMBO.md) · [คู่มือความยืดหยุ่น](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 สิ่งที่ทำให้ OmniRoute แตกต่าง
สิ่งที่ทำให้ OmniRoute แตกต่าง — ภาพรวมคุณสมบัติที่อัปเดตเทียบกับ 9router, OpenRouter, CLIProxyAPI และ LiteLLM ใน 13 ความสามารถ OmniRoute: ผู้ให้บริการ 358 ราย, ระดับฟรีในตัวกว่า 150 รายการ, กลยุทธ์การกำหนดเส้นทาง 19 แบบ, การบีบอัดโทเค็น 12 เอ็นจิ้น, เซิร์ฟเวอร์ MCP ในตัวพร้อมเครื่องมือ 110 รายการ, โปรโตคอลเอเจนต์ A2A, หน่วยความจำถาวร, การป้องกัน, เอเจนต์คลาวด์, การซ่อนตัวด้วย TLS fingerprint, Desktop/Termux/PWA และ 42 ภาษาสำหรับ UI OmniRoute เป็นลิขสิทธิ์ MIT และสามารถโฮสต์เองได้ ความสามารถและจำนวนของคู่แข่งอาจมีการเปลี่ยนแปลง โปรดดูระเบียบวิธีที่เชื่อมโยงไว้ 📊 ระเบียบวิธีฉบับเต็มและรายละเอียดคุณสมบัติแต่ละรายการ เทียบกับ 9router, OpenRouter, CLIProxyAPI และ LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 สนับสนุน OmniRoute OmniRoute ใช้สัญญาอนุญาต MIT และได้รับการดูแลแบบเปิดเผย หากช่วยประหยัดเวลาหรือเงินของคุณ นี่คือวิธีที่จะช่วยให้โครงการยังคงเป็นอิสระ — เลือกวิธีที่เหมาะกับคุณ การสนับสนุนไม่มีผลต่อลำดับความสำคัญในการกำหนดเส้นทาง โดยเป็นการซื้อการมองเห็น ไม่ใช่อันดับ
⭐ ติดดาวให้รีโพฟรี — ช่วยเพิ่มการมองเห็นได้จริงติดดาวให้ OmniRoute
🐙 GitHub Sponsorsครั้งเดียวหรือรายเดือน · ไม่มีค่าธรรมเนียมแพลตฟอร์มgithub.com/sponsors/diegosouzapw
☕ Ko-fiให้ทิปครั้งเดียวได้อย่างรวดเร็ว ผู้บริจาคไม่ต้องสมัครสมาชิกko-fi.com/diegosouzapw
🧋 Buy Me a Coffeeการสนับสนุนเล็กๆ น้อยๆ แบบเป็นกันเองbuymeacoffee.com/diegosouzapw
🖐 Liberapayต่อเนื่อง · ไม่แสวงหาผลกำไร · โอเพนซอร์สliberapay.com/diegosouzapw
🇧🇷 PIX (บราซิล)ทันที ไม่มีค่าธรรมเนียมคีย์ & QR ด้านล่าง
₿ คริปโตBTC · ETH · USDT-TRC20 · USDC-Solanaที่อยู่ด้านล่าง
**🇧🇷 PIX** — ทันที ไม่มีค่าธรรมเนียม (บราซิล) คิวอาร์โค้ด PIX ของ OmniRoute คีย์ (สุ่ม): `5d865059-bc44-483a-962d-43ceb80126eb` Pix copia-e-cola: ``` 00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD ```
₿ คริปโต — BTC · ETH · USDT-TRC20 · USDC-Solana (คลิกเพื่อขยาย)
₿ BTCBitcoin (SegWit)bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETHEthereum (ERC20)0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDTTron (TRC20)TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDCSolana2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ โปรดส่งเหรียญแต่ละชนิดผ่านเครือข่ายที่ระบุไว้เท่านั้น — การส่งผ่านเครือข่ายที่ไม่ถูกต้องอาจทำให้เงินสูญหายได้
🐛 พบข้อบกพร่องหรือมีข้อเสนอแนะใช่ไหม? เปิด[การสนทนา](https://github.com/diegosouzapw/OmniRoute/discussions)

หมายเหตุสำหรับนักพัฒนา: โปรเจกต์อาจสร้างไฟล์ .env ในเครื่องระหว่าง npm install/postinstall เพื่อความสะดวกของนักพัฒนา ไฟล์นี้ถูกละเว้นโดยตั้งใจผ่าน .gitignore (ดู .gitignore) และต้องไม่ถูกคอมมิตโดยเด็ดขาด — หากคอมมิตโดยไม่ตั้งใจ ให้หมุนเวียนข้อมูลลับใดๆ ที่ถูกเปิดเผยและลบไฟล์ออกจากประวัติ ดูคำแนะนำเกี่ยวกับการจัดการไฟล์สภาพแวดล้อมในเครื่องและข้อมูลลับได้ที่ docs/DEVELOPER-ENVIRONMENT.md

## 📡 OmniRoute Radar หัวข้อสำคัญสำหรับระดับฟรียังคงอยู่ที่ **~1.62B โทเค็น/เดือน** จากแค็ตตาล็อกที่มีเอกสารกำกับและมีการขจัดรายการซ้ำระหว่างพูลตามที่ระบุไว้ข้างต้น เครดิตชั่วคราวสำหรับการสมัครใช้งานกับผู้ให้บริการสามารถเพิ่มปริมาณในเดือนแรกแยกต่างหากเป็น **~2.22B** Radar เป็นส่วนเสริมแค็ตตาล็อกแบบมีลายเซ็นที่เลือกใช้ได้ สำหรับผู้ที่ต้องการข้อมูลความพร้อมใช้งานของโมเดลฟรีที่เป็นปัจจุบันยิ่งขึ้นในช่วงระหว่างการเผยแพร่ OmniRoute แต่ละรุ่น โดยแค็ตตาล็อกชุมชนและฟีเจอร์ฟรีที่มีอยู่ทั้งหมดจะยังคงใช้งานได้ฟรี ผู้สนับสนุนสามารถรับแค็ตตาล็อกแบบสดและโอกาสเพิ่มเติมจากผู้ให้บริการ ขีดจำกัดแบบแยกต่างหากซึ่งเปลี่ยนแปลงได้คือ **สูงสุดประมาณ 3B โทเค็น/เดือน** โดยขึ้นอยู่กับความพร้อมใช้งานของผู้ให้บริการ ขีดจำกัดดังกล่าวไม่ใช่การรับประกัน เนื่องจากผู้ให้บริการสามารถเปลี่ยนโควตา คุณสมบัติผู้มีสิทธิ์ โมเดล หรือภูมิภาคได้ทุกเมื่อ Radar เป็นฟีเจอร์ที่ต้องเลือกเปิดใช้งานและใช้ GET เท่านั้น ไคลเอนต์ OmniRoute จะไม่อัปโหลดพรอมต์ ทราฟฟิก การกำหนดค่าผู้ให้บริการ ข้อมูลเทเลเมทรีการใช้งาน หรือสถานะการปิดประกาศที่จัดเก็บไว้ภายในเครื่อง ดูข้อมูลเกี่ยวกับคุณสมบัติผู้มีสิทธิ์และแค็ตตาล็อกปัจจุบันได้ที่ **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**
## ✨ มีอะไรใหม่
> ไฮไลต์ล่าสุดจาก **v3.8.20 → v3.8.50** ดูประวัติฉบับเต็มได้ใน [`CHANGELOG.md`](CHANGELOG.md) - **🎛️ OmniConductor** — มอบหมายงานขาเข้าผ่าน A2A ไปยังฝูงเอเจนต์ของคุณ พร้อมสกิล Conductor บน Agent Card และแผงแดชบอร์ดที่มีการแชตด้วยเสียงแบบกดเพื่อพูดผ่าน Faro → [เซิร์ฟเวอร์ A2A](docs/frameworks/A2A-SERVER.md) - **🛂 การควบคุมการรับโหลดแบบปรับตัวและการป้องกันโอเวอร์โหลด** — คำขอแชตที่ใช้ทรัพยากรสูงจะเข้าคิวแทนที่จะตอบกลับด้วย 503 พร้อม rolling lease ของ RPM แบบอะตอมมิกต่อการเชื่อมต่อ → [คู่มือความยืดหยุ่น](docs/architecture/RESILIENCE_GUIDE.md) - **🗂️ การจัดลำดับ `/v1/models` แบบมาตรฐาน** — แต่ละผู้ให้บริการมีหนึ่งบล็อกที่ต่อเนื่องและจัดกลุ่มตามผู้ให้บริการ (ปักหมุดคอมโบไว้ก่อน) โดยมีลำดับคงที่ในแหล่งที่มาของแค็ตตาล็อกทั้งหมด → [เอกสารอ้างอิง API](docs/reference/API_REFERENCE.md) - **🗜️ การเพิ่มความแข็งแกร่งให้ระบบบีบอัด** — เปิดใช้ตัวป้องกันการขยายข้อมูลโดยค่าเริ่มต้น, แพ็ก Caveman สำหรับ DE / FR / JA + ภาษาจีน (wényán), ตัวกรอง RTK สำหรับ Gradle และ .NET → [การบีบอัด](docs/compression/COMPRESSION_ENGINES.md) - **💸 ค่าใช้จ่ายแบบอัตราคงที่ที่ตรงไปตรงมา** — ผู้ให้บริการแบบสมัครสมาชิก / แผนเขียนโค้ดจะแสดงค่าใช้จ่ายเป็น **$0** ในการวิเคราะห์ต้นทุน ส่วนงบประมาณ โควตา และการกำหนดเส้นทางยังคงประเมินตามปกติ → [เอกสารอ้างอิง API](docs/reference/API_REFERENCE.md) - **⚖️ การกำหนดเส้นทางแบบแบ่งโควตา** — แบ่งโควตาของบัญชีที่ใช้ร่วมกันอย่างเป็นธรรมระหว่างคีย์ในพูล พร้อมใช้ทรัพยากรอย่างเต็มประสิทธิภาพโดยให้ยืมส่วนที่ไม่ได้ใช้งาน → [คู่มือความยืดหยุ่น](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 การตั้งค่า CLI/เอเจนต์ด้วยคำสั่งเดียว** — มีคำสั่ง `setup-*` ที่ลงทะเบียนไว้ 13 คำสั่ง; `omniroute run` เปิดใช้งาน CLI 7 รายการ (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` รองรับเป้าหมาย 10 รายการ พร้อมเครื่องมือเลือกผู้ให้บริการ+โมเดลแบบอินเทอร์แอ็กทีฟและรายการโปรดแยกตามบริบท → [การผสานรวม CLI](docs/guides/CLI-INTEGRATIONS.md) - **🛰️ โหมดระยะไกล** — ควบคุม OmniRoute ระยะไกลด้วยโทเค็นแบบจำกัดขอบเขต (`connect` / `contexts` / `tokens`) พร้อมตัวช่วย OAuth `antigravity` สำหรับการติดตั้งบน VPS → [โหมดระยะไกล](docs/guides/REMOTE-MODE.md) - **🧭 การกำหนดเส้นทางอัตโนมัติที่ชาญฉลาดยิ่งขึ้น** — คอมโบ `auto/:`, **Fusion** (คณะโมเดล + ผู้ตัดสิน), การกำหนดเส้นทางตามงาน และการแทนที่โมเดล / โหมด / งบประมาณ USD แยกตามคำขอ → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🗜️ การบีบอัดแบบเสียบต่อได้** — เอนจินที่ประกอบร่วมกันได้ 12 รายการ + Compression Studios: LLMLingua-2, Ultra แบบสองระดับ, omniglyph, เกตตรวจสอบความเที่ยงตรงในแต่ละขั้นตอน, GCF v3.2 และเครื่องมือแก้ไขแบบลากเพื่อจัดลำดับใหม่ → [การบีบอัด](docs/compression/COMPRESSION_ENGINES.md) - **🕵️ การถอดรหัส MITM แบบโปร่งใส (TPROXY)** — ดักจับ CLI ที่ไม่สนใจตัวแปรสภาพแวดล้อมของพร็อกซี พร้อม CA แยกตาม SNI และตัวติดตั้ง trust store → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md) - **💸 เทเลเมทรีค่าใช้จ่ายทุกที่** — ส่วนหัวค่าใช้จ่าย/การใช้งาน `X-OmniRoute-*` ในทุกเอนด์พอยต์, ส่วนหัวแสดงการประหยัดจาก cache-HIT และโควตาการใช้จ่าย USD แยกตามคีย์ → [เอกสารอ้างอิง API](docs/reference/API_REFERENCE.md) - **🧠 หน่วยความจำที่คุณควบคุมได้** — ปิดไว้โดยค่าเริ่มต้น, เลือกเปิดใช้การควอนไทซ์เวกเตอร์แบบ int8 + การเสื่อมตามประเภท และ `x-omniroute-no-memory` แยกตามคำขอ → [หน่วยความจำ](docs/frameworks/MEMORY.md) - **🛡️ ความปลอดภัย** — ตัวป้องกัน prompt injection ในทุกเส้นทาง LLM (ชุดทดสอบแบบ red-team), กลไกป้องกันการเปิดเผยข้อมูลรับรองที่เลือกเปิดใช้ได้ (ปกปิดคีย์ API/ข้อมูลลับที่รั่วไหลทั้งสองทิศทาง), การค้นหาเว็บผ่าน DuckDuckGo ฟรีเป็นทางเลือกสุดท้าย และเกตเข้าสู่ระบบ OIDC สำหรับแดชบอร์ดที่เลือกเปิดใช้ได้ (การเข้าสู่ระบบด้วยรหัสผ่านยังคงพร้อมใช้งานเสมอ) → [กลไกป้องกัน](docs/security/GUARDRAILS.md) - **🖼️ เอนด์พอยต์ใหม่** — `/v1/ocr` (Mistral OCR) และ `/v1/audio/translations` (รูปแบบ Whisper) เติมเต็มความสามารถด้านสื่อ → [เอกสารอ้างอิง API](docs/reference/API_REFERENCE.md) - **🎨 การสร้างรูปภาพ / วิดีโอ / เสียง** — API เดียวสำหรับสื่อ: วิดีโอจาก xAI Grok Imagine และ Novita AI, ComfyUI, Magnific, Adobe Firefly, Segmind และผู้ให้บริการเสียงพูด เช่น ElevenLabs → [เอกสารอ้างอิง API](docs/reference/API_REFERENCE.md) - **🌍 การปรับใช้และการปฏิบัติการ** — `basePath` สำหรับ reverse proxy, การตรวจหาภาษาของเบราว์เซอร์อัตโนมัติ, การติดตามอุปกรณ์แยกตามคีย์, ความเชื่อถือ MITM แบบไม่ต้องใช้สิทธิ์ root และการรองรับภาษา zh-TW → [สภาพแวดล้อม](docs/reference/ENVIRONMENT.md) - **🤝 ผู้ให้บริการและเอเจนต์เพิ่มเติม** — เอเจนต์บนคลาวด์ (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) พร้อมเบราว์เซอร์ + การเข้าสู่ระบบ OAuth, การ์ด Ollama ระดับเฟิร์สคลาส, Claude Opus 5 และ Sonnet 5, ความร่วมมืออย่างเป็นทางการกับ Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… พร้อม **แค็ตตาล็อกผู้ให้บริการ 352 ราย** ที่ปรับปรุงใหม่ → [ผู้ให้บริการ](docs/reference/PROVIDER_REFERENCE.md) - **📡 ความโปร่งใสในการกำหนดเส้นทาง** — ทุกการตอบกลับมีส่วนหัว `X-OmniRoute-Decision` ที่ระบุกลยุทธ์/ผู้ให้บริการ/เวลาแฝงที่ใช้ให้บริการ, กลยุทธ์คอมโบใหม่ `cache-optimized` + ปัจจัย `cacheAffinity` ของ Auto-Combo จะกำหนดเส้นทางคำขอซ้ำกลับไปยังการเชื่อมต่อที่เก็บคำนำหน้าไว้ในแคช และเอนด์พอยต์แบบอ่านอย่างเดียว `/v1/auto-combo/{channel}/candidates` จะแสดงพูลตัวเลือกปัจจุบันของช่อง `auto/*` → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **⚡ ประสิทธิภาพและโครงสร้างพื้นฐานภายในเครื่อง** — Redis ภายในเครื่องแบบคลิกเดียว, เครื่องมือปรับใช้รีเลย์สำหรับ Cloudflare Workers / Deno Deploy และ Bifrost กับ Mux ในฐานะบริการฝังตัวที่มีการกำกับดูแล → [บริการฝังตัว](docs/frameworks/EMBEDDED-SERVICES.md) - **🧩 สิ่งที่รวมมาให้อีกด้วย** — เฟรมเวิร์กปลั๊กอิน + มาร์เก็ตเพลส, เฟรมเวิร์กสกิล Omni/Agent/GitHub, การผสานรวม Obsidian vault (เครื่องมือ MCP 22 รายการ), Batch API และ Files API ที่เข้ากันได้กับ OpenAI, แคชการตอบกลับเชิงความหมาย, ระบบเกมมิฟิเคชันพร้อมตารางผู้นำ, การค้นหาเอเจนต์ ACP (เอเจนต์ในตัว 15 รายการ), การส่งออกบันทึกไปยัง BigQuery ตามกำหนดเวลา, การแทรกข้อผิดพลาด `auto/chaos`, บริดจ์บอต Telegram, ตัวจัดการเวอร์ชันภายในแอป และการจัดอันดับผู้ให้บริการฟรีแบบ LMArena-ELO → [เอกสาร](docs/README.md)
## 🤖 CLI และเอเจนต์เขียนโค้ดที่รองรับ > การตั้งค่าเดียว — `http://localhost:20128/v1` — ทำให้ IDE หรือ CLI ที่ใช้ AI **ทุกตัว** ทำงานบนโมเดลฟรีและราคาประหยัดได้
Claude Code
Claude Code
                           
Codex CLI
Codex CLI
                           
Cline
Cline
                           
Kilo Code
Kilo Code
Zoo Code
Zoo Code
Continue
Continue
                           
Aider
Aider
                           
ForgeCode
ForgeCode
                           
jcode
jcode
                           
DeepSeek TUI
DeepSeek TUI
                           
CodeWhale
CodeWhale
                           
OpenCode
OpenCode
                           
Factory Droid
Factory Droid
                           
GitHub Copilot CLI
Copilot CLI
                           
Cursor CLI
Cursor CLI
                           
Smelt
Smelt
                           
Pi (pi-coding-agent)
Pi
                           
Grok Build (xAI)
Grok Build
                           
Hermes Agent (Nous Research)
Hermes Agent
                           
OpenClaw
OpenClaw
                           
Goose
Goose
                           
Open Interpreter
Open Interpreter
                           
Warp AI
Warp AI
                           
deyin.ai
deyin.ai
                           
+ ใช้งานร่วมกับเครื่องมือเหล่านี้ได้ด้วย · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · เครื่องมือใด ๆ ที่เข้ากันได้กับ OpenAI
📖 การตั้งค่าเฉพาะเครื่องมือสำหรับเครื่องมือทั้ง 36 รายการ (CLI Code 26 รายการ + CLI Agents 10 รายการ) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 ปลั๊กอิน OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)

**เรียกใช้ CLI ที่รองรับผ่าน OmniRoute ได้ด้วยคำสั่งเดียว** — ไม่มีการเขียนไฟล์กำหนดค่า ข้อมูลประจำตัวจะถูกแทรกแยกในแต่ละโปรเซส และ Qwen/Gemini จะใช้โฮมแบบแยกชั่วคราว: ```bash omniroute run claude --model openai/gpt-5.4 # Claude Code omniroute run codex --model glm/glm-5.2 # OpenAI Codex CLI omniroute run aider --model glm/glm-5.2 -- --message "reply OK" omniroute run goose --model glm/glm-5.2 omniroute run opencode --model glm/glm-5.2 -- run "reply OK" omniroute run qwen --model glm/glm-5.2 -- -p "reply OK" omniroute run gemini --model glm/glm-5.2 -- --skip-trust -p "reply OK" # หรือเลือกผู้ให้บริการ+โมเดลแบบโต้ตอบ และเขียนการกำหนดค่าของเครื่องมือนั้นเอง: omniroute configure codex # รองรับด้วย: claude opencode qwen aider goose gemini cline continue kilo ``` ทุกคำสั่งจะใช้บริบทรีโมตที่กำลังใช้งานอยู่ (`omniroute connect `), `--dry-run` จะแสดงตัวอย่าง env/args ที่แน่นอนโดยไม่ดำเนินการ และ `--api-key-env NAME` จะช่วยไม่ให้ข้อมูลลับ ปรากฏในประวัติคำสั่งของเชลล์ → [การผสานรวม CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 ผู้ให้บริการ AI 357 ราย — 152 รายถูกระบุในแคตตาล็อกว่าใช้ฟรี
> **ผู้ให้บริการที่ลงทะเบียนแล้ว 357 ราย** ครอบคลุมคอลเลกชันมาตรฐานสำหรับแชต สื่อ การค้นหา ระบบภายในเครื่อง คลาวด์เอเจนต์ และระบบ โดยมี **152 รายที่มีเมทาดาทาการค้นหา `hasFree: true`** รีจิสทรีโมเดลแชตครอบคลุม **ผู้ให้บริการ 229 ราย / คู่ผู้ให้บริการ-โมเดลที่แตกต่างกัน 2,554 คู่ / ID โมเดลดิบ 1,283 รายการ** ส่วนแคตตาล็อกงบประมาณฟรีที่แยกต่างหากมี **ข้อมูลรายโมเดล 491 แถว**, **พูลแบบหมุนเวียน 35 พูล** และ **ผู้ให้บริการที่ใช้ฟรีตลอดไปแบบหมุนเวียน/ไม่ต้องใช้คีย์ 54 ราย** ตัวหารเหล่านี้แตกต่างกันโดยเจตนา โปรดดูคำจำกัดความและการคำนวณที่ขจัดพูลซ้ำซ้อนใน [ข้อมูลอ้างอิงผู้ให้บริการ](docs/reference/PROVIDER_REFERENCE.md) และ [ระดับการใช้งานฟรี](docs/reference/FREE_TIERS.md)
### 🏢 ห้องปฏิบัติการชั้นนำทุกแห่ง — ผ่านเอนด์พอยต์เดียว
OpenAI
OpenAI
                           
Anthropic
Anthropic
                           
Gemini
Gemini
                           
xAI Grok
xAI Grok
                           
DeepSeek
DeepSeek
                           
Mistral
Mistral
                           
Qwen
Qwen
                           
Meta Llama
Meta Llama
                           
Groq
Groq
                           
NVIDIA
NVIDIA
                           
MiniMax
MiniMax
                           
Cohere
Cohere
                           
Perplexity
Perplexity
                           
Hugging Face
HuggingFace
                           
Together
Together
                           
Fireworks
Fireworks
                           
Cloudflare
Cloudflare
                           
Baidu
Baidu
                           
…และอีกกว่า 330 ราย — ไอคอนทั้งหมดโหลดแบบสดจากแคตตาล็อกผู้ให้บริการของแดชบอร์ด 📖 [ข้อมูลอ้างอิงผู้ให้บริการ](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 ฟรีตลอดไป — $0 ไม่ต้องใช้บัตร
OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
ไม่จำกัดโทเค็น
Kilo Code
Kilo Code
เราเตอร์อัตโนมัติ, Tencent Hy3
ฟรีตลอดไป
Requesty
Requesty
GPT-OSS 120B, Nemotron
ฟรีตลอดไป
SiliconFlow
SiliconFlow
DeepSeek V3.2 / R1
ระดับฟรี
Z.AI GLM
Z.AI GLM
GLM-4.7 / 4.5-Flash
ฟรีตลอดไป
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
ฟรีตลอดไป
Qoder AI
Qoder AI
Qwen3-Max, Kimi-K2
ฟรีไม่จำกัด
Pollinations
Pollinations
GPT, Llama, Claude
ไม่ต้องใช้คีย์
Cloudflare AI
Cloudflare AI
มากกว่า 50 โมเดล
10K นิวรอน/วัน
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
ฟรีประมาณ 40 RPM
Cerebras
Cerebras
GLM 4.7, GPT-OSS
1M โทเค็น/วัน
OpenRouter
OpenRouter
โมเดล :free
+$10 → RPM สูงขึ้น
📖 แค็ตตาล็อกฉบับเต็มที่เครื่องอ่านได้ → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ OmniRoute ทำงานได้ที่ไหน — ทุกที่
> แอปเดิม เครื่องของคุณ กฎของคุณ ตั้งแต่การติดตั้ง npm แบบ global ไปจนถึง **โทรศัพท์ของคุณ** ผ่าน Termux
แพลตฟอร์มการติดตั้งจุดเด่น
📦 npm (global)npm install -g omnirouteคำสั่งเดียว ใช้ได้กับทุกระบบปฏิบัติการ
🐳 Dockerdocker run … diegosouzapw/omnirouteรองรับหลายสถาปัตยกรรม AMD64 + ARM64
🖥️ เดสก์ท็อป (Electron)npm run electron:buildหน้าต่างแบบเนทีฟ + ถาดระบบ — Windows / macOS / Linux
🎩 แถบเมนู (OmniRouteTray)brew install --cask zoispag/tap/omniroute-trayดูแลและอัปเดตเซิร์ฟเวอร์อัตโนมัติ — macOS
💪 ARMarm64 แบบเนทีฟRaspberry Pi, เซิร์ฟเวอร์ ARM, Apple Silicon
📱 Android (Termux)pkg install nodejs && npx -y omnirouteทำงาน บนโทรศัพท์ของคุณ ได้ตลอด 24/7 โดยไม่ต้อง root
📲 PWA"เพิ่มไปยังหน้าจอหลัก"เต็มหน้าจอ ใช้งานออฟไลน์ และติดตั้งได้จากเบราว์เซอร์
🧩 ปลั๊กอิน OpenCode@omniroute/opencode-providerผสานรวมกับ OpenCode แบบเนทีฟ
🤖 VS Code Copilot Chatติดตั้งส่วนขยาย OmniCopilotโมเดล OmniRoute ทุกโมเดลในตัวเลือกโมเดลของ Copilot Chat แบบเนทีฟ — ทั้ง stable และ Insiders
🛠️ จากซอร์สโค้ดnpm install && npm run devปรับแต่งและร่วมพัฒนา
📖 [คู่มือ Docker](docs/guides/DOCKER_GUIDE.md) · [เดสก์ท็อป](electron/README.md) · [ถาดแถบเมนู](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)
### 🧩 ใหม่: OmniRoute ภายใน Copilot Chat แบบเนทีฟของ VS Code
> ไม่มีแถบด้านข้างใหม่ ไม่มี UI แชตใหม่ — ทุกโมเดลที่ OmniRoute ให้บริการจะแสดงอยู่ใน > **ตัวเลือกโมเดลของ Copilot Chat ที่คุณใช้อยู่แล้ว** ตั้งแต่ VS Code 1.122 เป็นต้นไป โมเดลจากผู้ให้บริการสามารถทำงานได้ > โดยไม่ต้องลงชื่อเข้าใช้ GitHub หรือสมัครสมาชิก Copilot — ใช้โหมดเอเจนต์ การเรียกใช้เครื่องมือ และการมองเห็นได้ > ฟรี ติดตั้งส่วนขยาย **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** แล้วชี้ไปยัง เซิร์ฟเวอร์ OmniRoute ของคุณ (ค่าเริ่มต้นคือ `localhost:20128`) จากนั้นเปิด Copilot Chat → ตัวเลือกโมเดล → **จัดการโมเดล…** → **OmniRoute**
สโตร์ลิงก์ใช้งานร่วมกับ
🧩 VS Code Marketplaceติดตั้ง →VS Code — ทั้ง stable และ Insiders
🔓 Open VSX Registryติดตั้ง →Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro…
จากภายในเอดิเตอร์: เปิดมุมมอง **ส่วนขยาย** ค้นหา **"OmniRoute"** แล้วคลิก **ติดตั้ง** — ใช้งานแบบเดียวกันในทั้งสองสโตร์ ซอร์สโค้ด รายการปัญหา และคู่มือขั้นตอนการเผยแพร่อยู่ที่ [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot) 📖 [คู่มือ VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — การตั้งค่า สิ่งที่แสดงในตัวเลือกโมเดล แดชบอร์ดในแท็บ และการแก้ไขปัญหา
### 🎩 ใหม่: OmniRouteTray — เกตเวย์ของคุณที่อยู่บนแถบเมนู
> `omniroute serve` ทำงานได้ดีที่สุดเมื่อเปิดอยู่ตลอดเวลา **[OmniRouteTray](https://github.com/zoispag/omniroute-tray)** > เปลี่ยนสิ่งนี้ให้เป็นแอปบนแถบเมนูสำหรับ macOS ที่ตั้งค่าเพียงครั้งเดียวแล้วปล่อยให้ทำงานได้เลย: แอปจะเริ่มเซิร์ฟเวอร์ รักษาให้ทำงานอยู่เสมอ > แม้จะรีบูต อัปเดตให้โดยตรง และทำให้คุณตรวจสอบโควตาโทเค็นแบบเรียลไทม์ได้ในคลิกเดียว — **ไม่ต้อง > เปิดหน้าต่างเทอร์มินัลทิ้งไว้ และไม่ต้องคอยดูแล `npm install -g omniroute`** สร้างด้วย [Tauri v2](https://v2.tauri.app/) (แกนหลัก Rust ที่มีขนาดเล็กจนแทบมองข้ามได้) โดยมาพร้อม รันไทม์ Node 24 ที่ลงนามแล้วในตัว และจัดการการติดตั้ง OmniRoute ที่แอปเป็นเจ้าของ จึงไม่ขัดแย้งกับ `node`/`bun` แบบ global ของคุณ แอป **ใช้การกำหนดค่าและฐานข้อมูล `~/.omniroute/` ที่มีอยู่ร่วมกัน** — จึงเป็น OmniRoute ตัวเดียวกับที่คุณใช้งานอยู่แล้ว เพียงแค่สวมหมวกเท่านั้น 🎩
สิ่งที่ทำวิธีการ
🟢 ดูแลเซิร์ฟเวอร์เรียกใช้ omniroute serve และรับช่วงอินสแตนซ์ที่กำลังทำงานอยู่แทนการสร้างซ้ำ
📊 ดูการใช้งานแบบเรียลไทม์ได้ในพริบตาแถบโควตาของผู้ให้บริการ ขีดจำกัดเซสชัน/รายสัปดาห์ของ Claude พร้อมการนับถอยหลังจนกว่าจะรีเซ็ต และรายละเอียดค่าใช้จ่ายย้อนหลัง 30 วัน
🔄 อัปเดตโดยตรงโดยอัตโนมัติติดตั้งแบบเป็นขั้นตอน สลับเวอร์ชันแบบอะตอมมิก และย้อนกลับเมื่อล้มเหลว — ใช้รุ่นล่าสุดอยู่เสมอ
🚀 เริ่มทำงานเมื่อล็อกอินเลือกให้เปิดเมื่อล็อกอินได้ ทำงานเฉพาะในถาดระบบโดยไม่มีไอคอนบน Dock
🩺 การวินิจฉัยและบันทึกวินิจฉัยด้วยคลิกเดียวและเข้าถึงบันทึกของเซิร์ฟเวอร์
```sh brew install --cask zoispag/tap/omniroute-tray ``` ต้องการดาวน์โหลดใช่ไหม? ดาวน์โหลดไฟล์ .dmg ล่าสุดได้จาก Releases ซอร์สโค้ด รายการปัญหา และเอกสารการบิลด์ อยู่ที่ zoispag/omniroute-tray
💛 โปรเจกต์ชุมชนโดย @zoispag — ไม่ใช่รุ่นเผยแพร่อย่างเป็นทางการของ OmniRoute

## 🔒 เป็นส่วนตัวและเน้นการทำงานภายในเครื่องเป็นหลัก
เป็นส่วนตัวและเน้นการทำงานภายในเครื่องเป็นหลัก — เกตเวย์และระนาบควบคุมของ OmniRoute ทำงานบนเครื่องของคุณ พรอมต์จะถูกส่งไปยังผู้ให้บริการต้นทางที่เลือกไว้สำหรับแต่ละคำขอ โดย OmniRoute ไม่เพิ่มจุดพักสำหรับประมวลผลพรอมต์บนบริการโฮสต์ และปิดใช้งานเทเลเมทรีเป็นค่าเริ่มต้น ข้อมูลรับรองจะถูกเข้ารหัสขณะจัดเก็บด้วย AES-256-GCM ส่วนการควบคุมประกอบด้วยการกำหนดขอบเขต API key, การกรอง IP, การจำกัดอัตรา, การป้องกัน prompt injection, การล้างส่วนหัวของต้นทาง, การปกปิด PII แบบเลือกเปิดใช้, ข้อผิดพลาดที่ผ่านการล้างข้อมูล และบันทึกการตรวจสอบ SQLite ภายในเครื่อง OmniRoute ใช้สัญญาอนุญาต MIT และสามารถโฮสต์ได้ด้วยตนเอง 📖 [การอนุญาต](docs/architecture/AUTHZ_GUIDE.md) · [มาตรการป้องกัน](docs/security/GUARDRAILS.md) · [การปฏิบัติตามข้อกำหนด](docs/security/COMPLIANCE.md)
## 🔌 CLI แบบเต็มรูปแบบ + A2A และ MCP
> นอกเหนือจากเซิร์ฟเวอร์แล้ว OmniRoute ยังเป็น **ศูนย์ควบคุมผ่านบรรทัดคำสั่งแบบเต็มรูปแบบ** ที่มี **คำสั่งมากกว่า 80 รายการ** พร้อมด้วยโปรโตคอลเอเจนต์แบบเปิด เพื่อให้เอเจนต์ AI สามารถควบคุมได้ **ด้วยตนเอง** ### ⌨️ CLI ที่แท้จริง (ไม่ใช่แค่ `start`) ```bash omniroute # ให้บริการเกตเวย์ + แดชบอร์ด (พอร์ต 20128) omniroute chat # ไคลเอนต์แชต TUI แบบโต้ตอบ (คำสั่งแบบสแลช: /model /combo /skill /memory) omniroute setup # วิซาร์ดแนะนำการตั้งค่าเมื่อใช้งานครั้งแรก omniroute doctor # วินิจฉัยผู้ให้บริการ พอร์ต และการพึ่งพาแบบเนทีฟ ``` ### 🛰️ โหมดระยะไกล — เรียกใช้ CLI ที่นี่ และเรียกใช้ OmniRoute บน VPS ใช้ OmniRoute บนเซิร์ฟเวอร์อยู่ใช่ไหม? ควบคุมจากแล็ปท็อปของคุณด้วย **CLI เดียวกัน** เข้าสู่ระบบเพียงครั้งเดียว ด้วยโทเค็นการเข้าถึงแบบกำหนดขอบเขต จากนั้นทุกคำสั่งจะมุ่งไปยังเซิร์ฟเวอร์ระยะไกล ```bash omniroute connect 192.168.0.15 # รหัสผ่าน → โทเค็นแบบกำหนดขอบเขต ซึ่งบันทึกเป็นบริบท omniroute models list # ← ทำงานกับเซิร์ฟเวอร์ระยะไกล omniroute configure codex # ← เลือกโมเดลระยะไกล แล้วเขียนโปรไฟล์ Codex ภายในเครื่อง omniroute tokens create --name ci --scope read # สร้างโทเค็นที่มีขอบเขตแคบลงสำหรับเครื่องอื่น omniroute contexts use default # ← สลับกลับไปยังเซิร์ฟเวอร์ภายในเครื่อง ``` โทเค็นมีขอบเขต `read` / `write` / `admin`; เส้นทางที่สร้างโปรเซสจะยังคงจำกัดไว้เฉพาะ loopback 📖 [โหมดระยะไกล](docs/guides/REMOTE-MODE.md)
การสาธิตเทอร์มินัลแบบเคลื่อนไหวที่แสดง OmniRoute CLI — omniroute providers list, omniroute combo list และ omniroute health — วนแสดงคำสั่งระดับบนสุดทั้งหมด 86 รายการ: providers · oauth · keys · combo · nodes · models · cache · compression · cost · usage · quota · health · resilience · telemetry · logs · audit · mcp · a2a · cloud · memory · skills · eval · tunnel · backup · sync · webhooks · policy · pricing · translator · simulate …
### 🤝 เชื่อมต่อเอเจนต์ — แล้วให้เอเจนต์ควบคุม OmniRoute ได้ด้วยตนเอง เปิดให้เข้าถึง OmniRoute ผ่าน **MCP**, **A2A**, **REST API**, **webhooks** หรือ **CLI ระยะไกล** — เอเจนต์ที่มีความสามารถใด ๆ (หรือโค้ดของคุณเอง) จะได้รับกุญแจสำหรับควบคุมเกตเวย์ทั้งหมด ไม่ว่าจะเป็นการกำหนดเส้นทาง ผู้ให้บริการ คอมโบ แคช การบีบอัด และหน่วยความจำ โดยทำงานได้อย่างอัตโนมัติ เอนด์พอยต์ HTTP ด้านล่างให้บริการภายใต้ `http://localhost:20128`
อินเทอร์เฟซเอนด์พอยต์ / คำสั่งใช้สำหรับ
🧰 MCP (stdio)omniroute --mcpเชื่อมต่อกับ Claude Desktop, Cursor หรือไคลเอนต์ MCP ใด ๆ
🌊 MCP (HTTP)/api/mcp/streamMCP ระยะไกล — เครื่องมือ 110 รายการ, 33 ขอบเขต (เลือกเปิดใช้การบังคับใช้), พร้อมบันทึกการตรวจสอบอย่างครบถ้วน
📡 MCP (SSE)/api/mcp/sseการรับส่งข้อมูล MCP แบบสตรีม
🤝 A2A/.well-known/agent.jsonเอเจนต์ถึงเอเจนต์, JSON-RPC 2.0 + SSE, 6 ทักษะ
🌐 REST API/v1/*เข้ากันได้กับ OpenAI — แชต, embeddings, รูปภาพ, เสียง, OCR
🔔 Webhooks/api/webhooksส่งเหตุการณ์คำขอ / โควตาไปยัง Slack, Discord, Telegram หรือ URL ใด ๆ
🛰️ CLI ระยะไกลomniroute connect ควบคุมอินสแตนซ์ระยะไกลด้วยโทเค็นการเข้าถึงแบบกำหนดขอบเขต
```bash # มอบชุดเครื่องมือ OmniRoute แบบเต็มรูปแบบให้ Claude Code ผ่าน MCP: claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream ``` 📖 [เซิร์ฟเวอร์ MCP](docs/frameworks/MCP-SERVER.md) · [เซิร์ฟเวอร์ A2A](docs/frameworks/A2A-SERVER.md) · [โปรโตคอลเอเจนต์](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ ประหยัดโทเค็น 15–95% — โดยอัตโนมัติ
### 📖 วิธีการทำงาน — ไปป์ไลน์ สถาปัตยกรรม และการคำนวณการประหยัด ไปป์ไลน์การบีบอัดของ OmniRoute: คำขอจากไคลเอนต์ขนาด 10,000 โทเค็นในตัวอย่างจะผ่านเอนจินที่ประกอบร่วมกันได้ 12 ตัว ได้แก่ Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra และ OmniGlyph และอาจส่งถึงผู้ให้บริการด้วยขนาดประมาณ 1,080 โทเค็นตามตัวอย่างการซ้อนที่บันทึกไว้ เนื้อหาแบบมีโครงสร้างได้รับการปกป้องด้วยกลไกป้องกันการเปลี่ยนแปลงและเกตตรวจสอบความเที่ยงตรงในแต่ละขั้นตอน ส่วนโหมดที่มีการสูญเสียข้อมูลหรือโหมดทดลองซึ่งเปิดใช้อย่างชัดเจนอาจแปลงเนื้อหาที่เข้าเกณฑ์ได้ ชุดแบบซ้อนเริ่มต้นทำงานตามลำดับ `RTK → Caveman` เมื่อทั้งสองทำงานกับเพย์โหลดเครื่องมือ/บริบทเดียวกัน ผลการประหยัดจะทบกัน: ```txt combined = 1 − (1 − RTK) × (1 − Caveman_input) average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2% range = 78.4 – 94.6% ``` บล็อกโค้ด, URL, JSON และข้อมูลแบบมีโครงสร้างจะได้รับการปกป้องโดยเอนจินรักษาสภาพ **เสมอ** > **ทำไมต้องใช้โทเค็นจำนวนมาก ในเมื่อใช้เพียงไม่กี่โทเค็นก็ได้ผล?** ทุกคำขอจะผ่านไปป์ไลน์การบีบอัดของ OmniRoute **อย่างโปร่งใส** — โดยไม่ต้องเปลี่ยนแปลงไคลเอนต์ ปัจจุบันเป็น **สแต็กของเอนจินที่ประกอบร่วมกันได้ 12 ตัว** ซึ่งทำงานตามลำดับ และสามารถผสมผสานให้เหมาะกับแต่ละชุดการกำหนดเส้นทาง — โดยต่อยอดจากแนวคิดของ [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua) และ [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR) ### 🧱 สแต็กเอนจิน 12 ตัว เอนจินทำงานตามลำดับในไปป์ไลน์ โดยแต่ละตัวสามารถเปิด-ปิดและกำหนดค่าได้อย่างอิสระสำหรับแต่ละชุด:
#เอนจินการทำงาน
1Session-Dedupตัดเนื้อหาที่ซ้ำกันระหว่างรอบสนทนา (อ้างอิงตามเนื้อหา ข้ามรอบสนทนา)
2CCRจัดเก็บบล็อกขนาดใหญ่ไว้เบื้องหลังเครื่องหมายเรียกคืน และดึงข้อมูลเมื่อจำเป็น
3Liteลดช่องว่าง + ตัดแต่ง URL รูปภาพ (พื้นฐานที่มีเวลาแฝงต่ำ)
4RTKกรองผลลัพธ์จากเครื่องมืออย่างชาญฉลาด ขจัดข้อมูลซ้ำ และตัดทอน (รับรู้คำสั่ง)
5Responses Tool Outputบีบอัด JSON โดยให้ความสำคัญกับการไม่สูญเสียข้อมูล + บีบอัดข้อมูลวินิจฉัยแบบจำกัดขอบเขตสำหรับเอาต์พุตจากเชลล์/แพตช์/การค้นหา/การบิลด์ (Responses API)
6Headroomย่อข้อมูลแบบตารางของอาร์เรย์ JSON โดยไม่สูญเสียข้อมูล (~30%) ผ่านโคเดก GCF ที่รวมไว้ในโครงการ
7Relevanceให้คะแนนและคัดเลือกประโยคตามความสัมพันธ์กับคำถามล่าสุดของผู้ใช้
8Cavemanบีบอัดข้อความร้อยแก้วตามกฎ (~65–75% ของเอาต์พุต)
9Aggressiveสรุปเนื้อหา + ลดรายละเอียดของรอบสนทนาเก่าลงแบบเป็นลำดับ
10LLMLingua-2ตัดเนื้อหาตามความหมายด้วย ML ผ่าน MobileBERT ONNX — ปลอดภัยต่อโค้ด ทำงานแบบอะซิงโครนัส
11Ultraตัดโทเค็นด้วยฮิวริสติก พร้อมระดับโมเดลขนาดเล็ก (SLM) ที่เลือกใช้ได้
12OmniGlyphการเข้ารหัสบริบทเป็นรูปภาพเชิงทดลองสำหรับ Claude Fable 5 ที่ผ่านการวัดผลบนการเชื่อมต่อโดยตรงกับ Anthropic ส่วนตัวแปลง GPT 5.6 จะยังคงปิดการทำงานอย่างปลอดภัยระหว่างรอหลักฐานตอบรับจากผู้ให้บริการ มีโปรไฟล์การบีบอัดสี่แบบ (ค่าเริ่มต้นเชิงรุก, สมดุล, ปลอดภัยสำหรับการเขียนโค้ด, ส่งผ่านโดยไม่เปลี่ยนแปลง) (เชิงรุกที่สุด ต้องเลือกเปิดใช้)
บล็อกโค้ด, URL และข้อมูลแบบมีโครงสร้างจะถูกเก็บรักษาให้ตรงกันทุกไบต์ **เสมอ** **พรีเซ็ตแบบคลิกเดียว** จะรวมเอนจินต่างๆ เข้าด้วยกัน:
โหมดการประหยัดเหมาะที่สุดสำหรับ
🪶 Lite~15%ค่าเริ่มต้นที่ปลอดภัยและเปิดใช้ได้ตลอดเวลา
🪨 Standard (Caveman)~30%การเขียนโค้ดประจำวัน
⚡ Aggressive~50%เซสชันยาวที่ใช้เครื่องมือเป็นจำนวนมาก
🔥 Ultra~75%ประหยัดสูงสุด
🧰 RTK60–90%เอาต์พุตจากเชลล์/การทดสอบ/การบิลด์/git
🔗 Stacked (RTK → Caveman)78–95%พรอมต์แบบผสม + บันทึกจากเครื่องมือ
**ตัวอย่างจริง — โหมด Standard:** > **ก่อน (69 โทเค็น):** _"สาเหตุที่คอมโพเนนต์ React ของคุณเรนเดอร์ซ้ำอาจเป็นเพราะคุณกำลังสร้างการอ้างอิงออบเจ็กต์ใหม่ในแต่ละรอบการเรนเดอร์ เมื่อคุณส่งออบเจ็กต์แบบอินไลน์เป็นพร็อพ การเปรียบเทียบแบบตื้นของ React จะมองว่าเป็นออบเจ็กต์ที่แตกต่างกันทุกครั้ง ซึ่งทำให้เกิดการเรนเดอร์ซ้ำ ขอแนะนำให้ใช้ useMemo เพื่อทำ memoization ให้กับออบเจ็กต์"_ > > **หลัง (19 โทเค็น):** _"การอ้างอิงออบเจ็กต์ใหม่ในแต่ละเรนเดอร์ พร็อพออบเจ็กต์อินไลน์ = การอ้างอิงใหม่ = เรนเดอร์ซ้ำ ครอบด้วย useMemo"_ > > **คำตอบเดิม โทเค็นน้อยลง 72% ความแม่นยำไม่ลดลง** ✅ **ตัวอย่าง PT-BR — โหมด [Troglodita](https://github.com/leninejunior/troglodita):** > **ก่อน (42 โทเค็น):** _"ปัญหาคือคอมโพเนนต์กำลังเรนเดอร์ซ้ำ เพราะมีการสร้างการอ้างอิงอ็อบเจกต์ใหม่ในแต่ละรอบการเรนเดอร์ ขอแนะนำให้ใช้ useMemo"_ > > **หลัง (12 โทเค็น):** _"เรนเดอร์ซ้ำ: ref ใหม่ทุกรอบ (สร้างอ็อบเจกต์ inline ใหม่) ใช้ `useMemo`"_ > > **คำตอบเดิม ใช้โทเค็นน้อยลง ~70% ความแม่นยำทางเทคนิคยังครบถ้วน** ✅
### 🎚️ นอกเหนือจากเอนจิน — รูปแบบเอาต์พุต ปุ่มปรับแบบปรับตัวได้ และการควบคุมต่อคำขอ เอนจินทั้ง 12 รายการข้างต้นลดขนาดสิ่งที่ส่ง **เข้าไป** อีกสามเลเยอร์กำหนดว่าเอาต์พุตจะออกมา **อย่างไร** **เมื่อใด** และมีอะไร **ออกมา**: - **🪄 รูปแบบเอาต์พุต** _(การกำหนดทิศทางแกนเอาต์พุต)_ — แทรกคำสั่งกำหนดรูปแบบการตอบกลับที่ให้ผลแน่นอนและปลอดภัยต่อแคช สามารถใช้ร่วมกันได้ โดยแต่ละรูปแบบมีระดับความเข้ม `lite` / `full` / `ultra` การเพิ่มรูปแบบทำได้ด้วยรายการเดียวในรีจิสทรี: - **ร้อยแก้วกระชับ** — ตัดคำฟุ่มเฟือย / คำนำหน้านาม / ถ้อยคำลังเล โดยคงสาระทางเทคนิคไว้อย่างแม่นยำ - **โค้ดน้อยลง** — YAGNI แบบ "นักพัฒนาอาวุโสสายขี้เกียจ": เปลี่ยนแปลงให้น้อยที่สุดแต่ใช้งานได้ และไม่สร้างโครงเพิ่มเติมโดยไม่ได้ร้องขอ - **Ponytail (นักพัฒนาอาวุโสสายขี้เกียจ)** — ไต่ระดับ YAGNI แก้ที่สาเหตุหลัก และสร้าง diff ที่เล็กที่สุดแต่ใช้งานได้ - **ฉันมี ADHD (ลงมือก่อน)** — เริ่มด้วยสิ่งที่ต้องทำต่อไป ระบุขั้นตอนเป็นหมายเลข มีขั้นตอนถัดไปที่ชัดเจนเพียงหนึ่งรายการ และไม่มีคำนำ - **CJK แบบกระชับ (文言)** — รูปแบบภาษาจีนคลาสสิกที่กระชับเป็นพิเศษ (จำกัดเฉพาะโลแคล `zh`) - **🎯 งบประมาณคอนเท็กซ์แบบปรับตัวได้** _(ปุ่มปรับ)_ — แทนที่จะใช้เกณฑ์โทเค็นเปิด/ปิดเพียงค่าเดียว ระบบจะเพิ่มระดับการใช้เอนจินที่ประหยัดที่สุดและสูญเสียข้อมูลน้อยที่สุดเท่าที่จำเป็น เพื่อให้ **พอดีกับหน้าต่างคอนเท็กซ์ของโมเดล** นโยบาย: `reserve-output` (ค่าเริ่มต้น โดยคำนึงถึงโมเดล) · `percentage` · `absolute` โหมด: `floor` (รับประกันว่าพอดี) · `replace-autotrigger` (ตัวเลือกที่คุณระบุมีผลเหนือกว่า) · `off` (เกณฑ์แบบเดิม) - **🎛️ จุดที่ตัดสินใจใช้การบีบอัด** _(ลำดับความสำคัญ สูง → ต่ำ)_ — เฮดเดอร์ `x-omniroute-compression` ต่อคำขอ › การแทนที่จากชุดการกำหนดเส้นทาง › โปรไฟล์ที่มีชื่อและกำลังใช้งาน › การปรับตัว / การทริกเกอร์อัตโนมัติ › ค่าเริ่มต้นจากแผงควบคุม › ปิด แผนที่นำไปใช้จะถูกส่งกลับในเฮดเดอร์การตอบกลับ `X-OmniRoute-Compression: ; source=` ตั้งการทริกเกอร์อัตโนมัติตามเกณฑ์โทเค็น เปิดปุ่มปรับแบบปรับตัวได้ ปักหมุดโปรไฟล์ที่มีชื่อ ตั้งค่าเฉพาะกิจต่อคำขอ หรือกำหนดไปป์ไลน์ให้กับชุดการกำหนดเส้นทาง — เลือกวิธีที่เหมาะกับเวิร์กโหลด ชุดเครื่องมือประเมินผลแบบออฟไลน์ที่ต้องเลือกเปิดใช้ (`npm run eval:compression`) จะให้คะแนนความเที่ยงตรงเทียบกับการประหยัดบนคอร์ปัสที่ปักหมุดไว้ ก่อนที่คุณจะนำการเปลี่ยนแปลงไปใช้งานจริง 📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ เริ่มต้นอย่างรวดเร็ว
**1) ติดตั้งและเรียกใช้** ```bash npm install -g omniroute omniroute ``` > 💡 พบ `npm warn ERESOLVE` หรือคำเตือนเกี่ยวกับ peer dependency ใช่ไหม? [คำเตือนเหล่านี้ไม่เป็นอันตราย](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated) แดชบอร์ดอยู่ที่ `http://localhost:20128` · API อยู่ที่ `http://localhost:20128/v1` **2) เชื่อมต่อผู้ให้บริการฟรี (ไม่ต้องสมัคร)** แดชบอร์ด → **ผู้ให้บริการ** → เชื่อมต่อ **Kiro AI** (Claude ฟรี ประมาณ 50 เครดิต/เดือนต่อบัญชี) หรือ **OpenCode Free** (ไม่ต้องยืนยันตัวตน) → เสร็จเรียบร้อย **3) กำหนดค่าเครื่องมือเขียนโค้ดของคุณ** ```txt URL หลัก: http://localhost:20128/v1 คีย์ API: [คัดลอกจากแดชบอร์ด → เอนด์พอยต์] โมเดล: auto (การกำหนดเส้นทางอัจฉริยะแบบไม่ต้องตั้งค่า — หรือผู้ให้บริการ/โมเดลใดก็ได้) ``` **4) ตรวจสอบว่าระบบทำงาน** ```bash curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY" ``` คุณควรเห็นรายการโมเดลที่เชื่อมต่ออยู่ 🎉 เท่านี้ก็เรียบร้อย — เริ่มเขียนโค้ดได้เลย แล้ว OmniRoute จะกำหนดเส้นทางและสลับไปใช้ตัวสำรองให้คุณโดยอัตโนมัติ หากไคลเอนต์ของคุณไม่สามารถส่งเฮดเดอร์แบบกำหนดเองได้ OmniRoute ยังมี alias สำหรับความเข้ากันได้ที่ฝังโทเค็นไว้: ```txt แค็ตตาล็อก OpenAI: http://localhost:20128/vscode/YOUR_KEY/ โมเดล OpenAI: http://localhost:20128/vscode/YOUR_KEY/models แชต OpenAI: http://localhost:20128/vscode/YOUR_KEY/chat/completions การตอบกลับ OpenAI: http://localhost:20128/vscode/YOUR_KEY/responses แชต Ollama: http://localhost:20128/vscode/YOUR_KEY/api/chat แท็ก Ollama: http://localhost:20128/vscode/YOUR_KEY/api/tags ``` ใช้รายการเหล่านี้เฉพาะกับไคลเอนต์ที่ไม่สามารถแนบ `Authorization: Bearer ...` ได้ การยืนยันตัวตนผ่านเฮดเดอร์ยังคงเป็นวิธีที่แนะนำ
## 📦 วิธีติดตั้งเพิ่มเติม — Docker, ซอร์สโค้ด, pnpm, Arch **🐳 Docker** ```bash docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \ -p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest ``` `:latest` จะอ้างอิง SemVer แบบเสถียรที่ **เผยแพร่แล้ว** และมีเวอร์ชันสูงสุด โดยจะไม่ติดตาม git `main` โปรดตรึงเวอร์ชันเป็น `:X.Y.Z` สำหรับ GitOps ดู [ช่องทางการเผยแพร่ Docker](docs/guides/DOCKER_GUIDE.md#release-channels) อิมเมจกำหนด **`OMNIROUTE_MEMORY_MB=1024`** ไว้ ซึ่งเพียงพอสำหรับแดชบอร์ดและการแชตที่มีภาระงานเบา **เอเจนต์สำหรับเขียนโค้ด** (`POST /v1/responses` จาก Claude Code, Codex, Grok, …) จำเป็นต้องใช้ฮีป V8 ที่ใหญ่กว่ามาก มิฉะนั้นโปรเซสจะเกิด `FATAL ERROR` เมื่อใช้หน่วยความจำประมาณ 12 GiB ภายใต้บริบทยาวสองรายการที่ทำงานทับซ้อนกัน โปรดกำหนดขนาดคอนเทนเนอร์ให้มากกว่าฮีป (บัฟเฟอร์แบบเนทีฟอยู่นอก V8): | เวิร์กโหลด | ฮีป (`-e OMNIROUTE_MEMORY_MB`) | คอนเทนเนอร์ (`--memory`) | | ----------------------------------------------- | ------------------------------ | ------------------------ | | แดชบอร์ด / การแชตที่มีภาระงานเบา | `1024` (ค่าเริ่มต้นของอิมเมจ) | ≥2 g | | เอเจนต์สำหรับเขียนโค้ดหนึ่งตัว | `8192` | ≥10 g | | `/v1/responses` แบบยาวสองรายการที่ทำงานพร้อมกัน | `10240`–`12288` | ≥12–16 g | ```bash docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \ -e OMNIROUTE_MEMORY_MB=8192 --memory=10g \ -p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest ``` ตารางฉบับเต็ม: [คู่มือ Docker — RAM ขณะรันไทม์](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents) > **ช่องทาง Docker สำหรับรุ่นก่อนเผยแพร่:** `diegosouzapw/omniroute:next` และ > `diegosouzapw/omniroute:next-web` จะติดตามบรานช์เริ่มต้น `release/v*` > ปัจจุบัน แท็กที่เปลี่ยนแปลงได้เหล่านี้มีไว้สำหรับทดสอบการแก้ไขที่ยังไม่ได้เผยแพร่เท่านั้น และ > **ไม่รองรับการใช้งานจริง** ดู > [ช่องทางการเผยแพร่ Docker](docs/guides/DOCKER_GUIDE.md#release-channels) **🥟 Bun** รองรับ `bun install` มาตรฐานและการติดตั้งแบบโกลบอล (`bun install -g omniroute`) ผ่านการตรวจหารันไทม์ Bun: - **`bun:sqlite` ในตัว**: OmniRoute ใช้ไดรเวอร์ `bun:sqlite` ที่มีมาให้ใน Bun เมื่อทำงานภายใต้ Bun และจะเปลี่ยนไปใช้ `better-sqlite3` บน Node.js หรือ `sql.js` หากไม่สามารถใช้งานได้ - **การเลือก Webpack bundler โดยอัตโนมัติในโหมดพัฒนา**: การพัฒนา (`bun run dev`) จะตรวจพบ Bun โดยอัตโนมัติและปิดใช้งาน Turbopack แล้วใช้ Webpack แทน เพื่อป้องกันความเข้ากันไม่ได้ของ native V8 binding ส่วนบิลด์สำหรับใช้งานจริง (`bun run build`) จะปฏิบัติตาม `OMNIROUTE_USE_TURBOPACK` เหมือนกับบน Node ทุกประการ โดยใช้ Turbopack เป็นค่าเริ่มต้น หรือกำหนด `OMNIROUTE_USE_TURBOPACK=0` เพื่อบิลด์ด้วย Webpack (`Dockerfile.bun` เปิดให้กำหนดค่านี้ผ่าน `--build-arg`) - **Dockerfile สำหรับ Bun โดยเฉพาะ**: `Dockerfile.bun` แบบหลายสเตจสำหรับการปรับใช้ Bun แบบเนทีฟในสภาพแวดล้อมจริง (`docker build -f Dockerfile.bun -t omniroute:bun .`) ```bash # ติดตั้งและเรียกใช้ด้วย Bun bun install bun run dev ``` **🛠️ จากซอร์สโค้ด** ```bash cp .env.example .env && npm install PORT=20128 npm run dev ``` **📦 pnpm** ```bash pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute ``` **🐧 Arch Linux (AUR)** ```bash yay -S omniroute-bin && systemctl --user enable --now omniroute.service ``` **🔧 Nix (Flake)** ```bash # ใช้ Nix flakes nix develop npm run dev # หรือใช้ devbox devbox run npm run dev ``` 📖 [คู่มือ Docker](docs/guides/DOCKER_GUIDE.md) — โปรไฟล์ Compose, Caddy HTTPS และ Cloudflare tunnels **🦭 Podman** ```bash # 1. เตรียมไดเรกทอรีข้อมูลที่เมานต์แบบ bind mkdir -p data # 2. สำหรับ Linux + Podman แบบ rootless ภายในเครื่องเท่านั้น (ห้ามใช้กับไคลเอนต์ Podman Machine ระยะไกล): podman unshare chown 1000:1000 ./data # 3. กำหนดคำใบ้รันไทม์ บิลด์อิมเมจ Compose ภายในเครื่อง และเริ่มทำงาน echo "CONTAINER_HOST=podman" >> .env podman compose --profile base up -d --build ``` บน macOS หรือ Windows นั้น Podman จะใช้ Podman Machine ระยะไกล: ให้ข้าม `podman unshare` และ ปฏิบัติตาม[คำแนะนำเกี่ยวกับไดเรกทอรีข้อมูลสำหรับแต่ละโทโพโลยี](contrib/podman/README.md#data-directory-permissions-by-topology) 📖 [คู่มือ Podman](contrib/podman/README.md) — บิลด์ Compose, Podman Machine และ การตั้งค่า Quadlet สำหรับ Linux/systemd **⚡ การติดตั้งที่เร็วขึ้น / ใช้ทรัพยากรน้อยลง (ข้ามการบิลด์แบบเนทีฟ)** เอนจิน SQLite แบบเนทีฟ (`better-sqlite3`) เป็นการขึ้นต่อกันแบบ **ไม่บังคับ** ดังนั้นการติดตั้ง แบบโกลบอลจะไม่ติดค้างระหว่างคอมไพล์จากซอร์ส: ระบบจะใช้ไบนารีที่บิลด์ไว้ล่วงหน้าเมื่อมีเวอร์ชันที่ตรงกับ แพลตฟอร์ม/Node ของคุณ และหากไม่มี จะเปลี่ยนไปใช้เอนจิน JavaScript ล้วนโดยอัตโนมัติ (`node:sqlite` บน Node 22 ขึ้นไป มิฉะนั้นจะใช้ `sql.js` WASM ที่รวมมาให้) — ไม่จำเป็นต้องใช้เครื่องมือบิลด์ หากต้องการข้ามการวอร์มอัปแบบเนทีฟหลังการติดตั้งทั้งหมด (CI, ระบบที่ไม่มีหน้าจอ หรือเครื่องที่ทำงานช้า): ```bash OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 จะข้ามขั้นตอนนี้ด้วย ``` เพื่อให้ติดตั้งได้เร็วที่สุด แนะนำให้ใช้ **pnpm** (ที่เก็บแบบระบุตำแหน่งด้วยเนื้อหา + hard links — ดูด้านบน) สำหรับรันไทม์แบบไม่มีแดชบอร์ดและไม่มีหน้าจอ ให้ใช้โปรไฟล์ Docker `base` (ด้านบน) หรือ [คู่มือ Termux](docs/guides/TERMUX_GUIDE.md) CLI และเว็บแดชบอร์ดให้บริการโดยโปรเซสเดียวกันบนพอร์ตเดียว ดังนั้นในขณะนี้จึงยังไม่มีแพ็กเกจสำหรับ CLI โดยเฉพาะแยกต่างหาก
# 🎬 การทำงานของ OmniRoute
## 📹 คู่มือวิดีโอ
ภาพรวมแดชบอร์ด ณ วันที่ 2026-08-24 · แคตตาล็อกดิบ: YT 809 | TT 137 | IG 124 · ความสดใหม่ (วัน): YT 1 | TT 21 | IG 22
Instagram Reel
🎬 #1 — Instagram
nick_saraev — 3,042,474 ครั้ง
Instagram Reel — theopenstack
🎬 #2 — Instagram
theopenstack — 692,419 ครั้ง
TikTok — milesreevesai
🎬 #3 — TikTok
milesreevesai — 620,400 ครั้ง
YouTube — Vaibhav Sisinty
🎬 #4 — YouTube
Vaibhav Sisinty — 391,109 ครั้ง
Instagram Reel — buildwithai.club
🎬 #5 — Instagram
buildwithai.club — 347,652 ครั้ง
**อันดับทั้งหมด (URL มาตรฐานที่ขจัดรายการซ้ำแล้ว, `v > 0`, การเข้าถึงสูงสุด):** | #1 | #2 | #3 | #4 | #5 | | -------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | | [nick_saraev — Instagram](https://www.instagram.com/reel/Da8ZthUPK98/) — **3,042,474** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **391,109** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | | #6 | #7 | #8 | #9 | #10 | | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** | [vaibhavsisinty — Instagram](https://www.instagram.com/reel/Dae05TSAK1l/) — **263,744** | [Nick Automates — YouTube Shorts](https://www.youtube.com/shorts/fZIBK_4fKq8) — **218,174** | [theroshankrishna — Instagram](https://www.instagram.com/reel/Dapjs58z0P0/) — **186,786** | [midudev — TikTok](https://www.tiktok.com/@midudev/video/7664636453544152342) — **177,800** | เมตริกมาตรฐาน ณ วันที่ 2026-08-24: **วิดีโอที่ไม่ซ้ำกัน 1.029 รายการ** · **ยอดรับชมที่ทราบ 11.132.922 ครั้ง** (`v > 0`) · **ช่อง/โปรไฟล์แยกตามเครือข่าย 639 รายการ** แดชบอร์ดดิบมีข้อมูล 1.070 แถว โดยรายการ Instagram ที่ซ้ำกัน 41 รายการได้รับการปรับให้เป็นมาตรฐานตาม URL มาตรฐาน และเก็บจำนวนยอดรับชมสูงสุดของแต่ละวิดีโอไว้ > 🎬 **ทำวิดีโอเกี่ยวกับ OmniRoute ไว้ใช่ไหม?** เปิด [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) หรือ [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) พร้อมแนบลิงก์ — เราจะนำมาแสดงไว้ที่นี่
# 📧 ชุมชนและความช่วยเหลือ > ทุกอย่างรวมอยู่ในที่เดียว — ติดตามผู้ดูแล พูดคุยกับชุมชน หรือเปิด issue | ช่องทาง | ที่ไหน / อย่างไร | | -------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | | 💼 **LinkedIn** — ติดตามผู้ดูแลโครงการ | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) | | 🐙 **GitHub** — ติดตามข่าวสารการเผยแพร่และเคล็ดลับ | [@diegosouzapw](https://github.com/diegosouzapw) | | 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) | | ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) | | 🟢 **WhatsApp — 🌍 ทั่วโลก** | [เข้าร่วมกลุ่ม](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) | | 🟢 **WhatsApp — 🇧🇷 บราซิล** | [เข้าร่วมกลุ่ม](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) | | 🌍 **เว็บไซต์** | [omniroute.online](https://omniroute.online) | | 🌍 **🌍ชุมชน StHub OmniRoute (ฟรี)** | [พอร์ทัล StHub](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) | | 📦 **ซอร์สโค้ด** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) | | 🐛 **รายงานข้อบกพร่อง** | [เปิด issue](https://github.com/diegosouzapw/OmniRoute/issues) — แนบผลลัพธ์จาก `npm run system-info` | | 🤝 **มีส่วนร่วม** | [CONTRIBUTING.md](CONTRIBUTING.md) · [รูปแบบการแตกแขนงและการเผยแพร่](docs/ops/BRANCHING_MODEL.md) · เลือก `good first issue` | | 💚 **สนับสนุนโครงการ** | [ช่องทางการสนับสนุน ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ เทคโนโลยีที่ใช้
เลเยอร์เทคโนโลยี
รันไทม์Node.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27
ภาษาTypeScript 6.0 — TypeScript 100% ทั่วทั้ง src/ และ open-sse/ (ไม่มี any ในแกนหลักตั้งแต่ v2.0)
เฟรมเวิร์กNext.js 16 + React 19 + Tailwind CSS 4
ฐานข้อมูลbetter-sqlite3 (SQLite, WAL journaling) + LowDB (JSON legacy) — 122 โมดูลโดเมน, 183 การย้ายข้อมูล
หน่วยความจำSQLite FTS5 full-text + int8-quantized vector embeddings, typed decay
สคีมาZod 4 — การตรวจสอบความถูกต้องของ I/O เครื่องมือ MCP + สัญญา API
โปรโตคอลMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
การสตรีมServer-Sent Events (SSE) + WebSocket bridge (/v1/ws)
การบีบอัด12-engine pipeline — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
การยืนยันตัวตนและความปลอดภัยOAuth 2.0 (PKCE) + JWT + API Keys + การยืนยันตัวตนแบบจำกัดขอบเขต MCP · AES-256-GCM ขณะพัก · DOMPurify
การซ่อนตัวwreq-js — การปลอมแปลงลายนิ้วมือ JA3 / JA4 TLS, พร็อกซี 3 ระดับ
ความยืดหยุ่นCircuit breaker, exponential backoff, anti-thundering-herd, auto-combo self-healing
การบันทึกpino — บันทึก JSON แบบมีโครงสร้างพร้อมบริบทคำขอ
การทดสอบNode.js test runner + Vitest — การประกาศการทดสอบแบบคงที่กว่า 39,000 รายการ ในไฟล์ทดสอบที่ติดตามกว่า 5,100 ไฟล์ (unit, integration, E2E, security, ecosystem)
แพลตฟอร์มเดสก์ท็อป (Electron) · Android (Termux) · PWA (เบราว์เซอร์ใดก็ได้)
CI/CDGitHub Actions — เผยแพร่ npm อัตโนมัติ + Docker Hub เมื่อออกเวอร์ชัน
ลิงก์เว็บไซต์ · npm · Docker Hub

## 📖 เอกสารประกอบ
### 📘 เริ่มต้นใช้งาน
เอกสารคำอธิบาย
คู่มือผู้ใช้ผู้ให้บริการ คอมโบ การผสานรวม CLI และการปรับใช้
คู่มือการตั้งค่าวิธีติดตั้งทั้งหมด การกำหนดค่าเครื่องมือ CLI การตั้งค่าโปรโตคอล และการปรับแต่งเวลาหมดเวลา
คู่มือเครื่องมือ CLIการตั้งค่าเฉพาะสำหรับแต่ละเครื่องมือ ได้แก่ Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo และ Copilot
โหมดระยะไกลควบคุม OmniRoute ระยะไกล (VPS) จาก CLI บนแล็ปท็อปผ่านโทเค็นการเข้าถึงแบบจำกัดขอบเขต
การกำหนดค่า Claude Codeเชื่อมต่อ Claude Code ไปยัง OmniRoute (ภายในเครื่อง/ระยะไกล) ด้วย launch และโปรไฟล์แยกตามโมเดล
เริ่มต้นอย่างรวดเร็วติดตั้ง → เชื่อมต่อ → กำหนดค่า ใน 3 ขั้นตอน
### 🔧 การดำเนินงานและการปรับใช้
เอกสารคำอธิบาย
คู่มือ DockerDocker run, โปรไฟล์ Compose, Caddy HTTPS, ทันเนล และแท็กอิมเมจ
คู่มือ Podmanการผสานรวม Quadlet systemd, podman-compose และ SELinux
การปรับใช้ VMคู่มือฉบับสมบูรณ์: การตั้งค่า VM + nginx + Cloudflare
การปรับใช้บน Fly.ioปรับใช้บน Fly.io พร้อมพื้นที่จัดเก็บข้อมูลถาวร
คู่มือ Termuxเรียกใช้ OmniRoute บน Android ผ่าน Termux
คู่มือ PWAการติดตั้ง Progressive Web App, การแคช และสถาปัตยกรรม
คู่มือการถอนการติดตั้งลบอย่างหมดจดสำหรับวิธีติดตั้งทั้งหมด
การกำหนดค่าสภาพแวดล้อมตัวแปร .env และข้อมูลอ้างอิงทั้งหมด
### 🧠 คุณสมบัติและสถาปัตยกรรม
เอกสารคำอธิบาย
สถาปัตยกรรมสถาปัตยกรรมระบบ การไหลของข้อมูล และการทำงานภายใน
คู่มือการบีบอัดไปป์ไลน์ 7 ตัวเลือก: off / lite / standard / aggressive / ultra / RTK / stacked
การบีบอัด RTKการบีบอัดเอาต์พุตคำสั่ง ตัวกรอง ความน่าเชื่อถือ การตรวจสอบ และการกู้คืนเอาต์พุตดิบ
เอนจินการบีบอัดCaveman, RTK, ไปป์ไลน์แบบซ้อน และส่วนติดต่อ dashboard/API/MCP
รูปแบบกฎการบีบอัดสคีมาแพ็กกฎ JSON สำหรับตัวกรอง Caveman และ RTK
แพ็กภาษาสำหรับการบีบอัดการตรวจจับภาษาและการสร้างแพ็กกฎ Caveman
คู่มือความทนทานของระบบCircuit breaker, ช่วงพัก, คิว, การป้องกัน thundering herd และการปลอมแปลง TLS
เอนจิน Auto-Comboการให้คะแนนด้วย 16 ปัจจัย แพ็กโหมด และการซ่อมแซมตัวเอง
คู่มือพร็อกซีระบบพร็อกซี 3 ระดับ มาร์เก็ตเพลส 1proxy และ CRUD สำหรับรีจิสทรี
ระดับใช้งานฟรีไดเรกทอรีรวม: พูลแบบเกิดซ้ำที่มีเอกสารกำกับ 35 รายการ / รายการระดับใช้งานฟรีในแค็ตตาล็อก 489 รายการ
แกลเลอรีคุณสมบัติเยี่ยมชมแดชบอร์ดด้วยภาพพร้อมภาพหน้าจอ
เอกสารประกอบโค้ดเบสคำแนะนำการสำรวจโค้ดเบสที่เป็นมิตรกับผู้เริ่มต้น
### 🤖 โปรโตคอลและ API
เอกสารคำอธิบาย
เอกสารอ้างอิง APIเอนด์พอยต์ทั้งหมดพร้อมตัวอย่าง
ข้อกำหนด OpenAPIข้อกำหนด OpenAPI 3.0
เซิร์ฟเวอร์ MCPเครื่องมือ MCP 110 รายการ การกำหนดค่า IDE และไคลเอนต์ Python/TS/Go
คู่มือเซิร์ฟเวอร์ MCPการติดตั้ง MCP, รูปแบบการรับส่งข้อมูล และเอกสารอ้างอิงเครื่องมือ
เซิร์ฟเวอร์ A2Aโปรโตคอล JSON-RPC 2.0, ทักษะ, การสตรีม และการจัดการงาน
คู่มือเซิร์ฟเวอร์ A2Aการ์ดเอเจนต์ A2A, งาน, ทักษะ และการสตรีม
### 📋 โปรเจกต์และคุณภาพ
เอกสารคำอธิบาย
การมีส่วนร่วมการตั้งค่าสภาพแวดล้อมการพัฒนาและแนวทางปฏิบัติ
โมเดลการแตกแขนงและการเผยแพร่PR ควรมุ่งไปที่ใด (release/*) รวมถึงความหมายของ main และแท็ก
บันทึกการเปลี่ยนแปลงประวัติการเผยแพร่ฉบับเต็มแยกตามเวอร์ชัน
นโยบายความปลอดภัยการรายงานช่องโหว่และแนวทางปฏิบัติด้านความปลอดภัย
คู่มือ i18nการรองรับ 42 ภาษา ขั้นตอนการแปล และ RTL
รายการตรวจสอบการเผยแพร่ขั้นตอนการตรวจสอบความถูกต้องก่อนเผยแพร่
แผนความครอบคลุมกลยุทธ์ความครอบคลุมของการทดสอบสำหรับการประกาศการทดสอบแบบสแตติกมากกว่า 39,000 รายการ ในไฟล์ทดสอบที่ติดตามมากกว่า 5,100 ไฟล์

# ⭐ ผู้มีส่วนร่วมอันดับต้น ๆ > OmniRoute ได้รับการหล่อหลอมจากชุมชนโอเพนซอร์สที่เปี่ยมด้วยความมุ่งมั่น บุคคลเหล่านี้ได้สร้างผลงานอันโดดเด่นที่ส่งผลโดยตรงต่อคุณภาพ ความเสถียร และการเข้าถึงของโครงการ **ขอขอบคุณ** ### ผู้มีส่วนร่วมภายนอกตามจำนวน pull request ที่ผสานแล้ว
อันดับผู้มีส่วนร่วมPR ที่ผสานแล้ว~บรรทัดที่เปลี่ยนแปลง
1backryun190227,977
2oyi77180407,678
3rdself14580,663
4JxnLexn128387,049
5KooshaPari101125,747
6herjarsa88230,872
7RaviTharuma7955,106
8maxmad64bis69394,715
9artickc5933,260
10HouMinXi5147,334
10chirag127515,153
12xz-dev50245,976
13hartmark4752,185
14rqzbeh39143,181
15dhaern3419,559
16Dingding-leo331,986
17NomenAK3213,854
18MumuTW3016,953
19benzntech2911,641
20pacocartones249,331
20Prudhvivuda246,312
ตรึงข้อมูลไว้ที่ปลายล่าสุดของ release/v3.8.50 ซึ่งคือ dafb4ae808 โดยรวมการผสานจนถึง 2026-08-24 05:26:03 UTC การสำรวจสำมะโนผ่าน GitHub GraphQL แบบแบ่งหน้าประกอบด้วย PR ที่ผสานแล้ว 5,911 รายการ ได้แก่ 2,707 รายการโดยเจ้าของ repository, 179 รายการโดย Dependabot และ PR ภายนอก 3,025 รายการจากผู้มีส่วนร่วมที่ไม่ซ้ำกัน 535 คน “บรรทัดที่เปลี่ยนแปลง” คือจำนวนบรรทัดที่เพิ่มและลบตามข้อมูลของ GitHub ซึ่งรวมไฟล์ที่สร้างขึ้นอัตโนมัติ, lockfile, แค็ตตาล็อก, คำแปล และเอกสารประกอบ โดยเป็นปริมาณการเปลี่ยนแปลง ไม่ใช่ LOC ที่เขียนขึ้น กรณีอันดับเสมอกันตรงเกณฑ์ตัดจะยังคงรวมไว้ ### คอมมิตที่ระบุแหล่งที่มาโดย GitHub
backryun
backryun

🥇 220 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
Paijo
Paijo

🥈 219 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
Randi
Randi

🥉 108 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
Ravi Tharuma
Ravi Tharuma

🏅 81 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
Chris
Chris

🏅 70 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
Markus Hartung
Markus Hartung

🏅 69 คอมมิตที่ระบุแหล่งที่มาจาก GitHub · อันดับร่วม #6
Dizzle
Dizzle

🏅 69 คอมมิตที่ระบุแหล่งที่มาจาก GitHub · อันดับร่วม #6
Jan Leon
Jan Leon

🏅 64 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
zenobit
zenobit

🏅 62 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
Bob.Hou
Bob.Hou

🏅 51 คอมมิตที่ระบุแหล่งที่มาจาก GitHub · อันดับร่วม #10
Xiangzhe
Xiangzhe

🏅 51 คอมมิตที่ระบุแหล่งที่มาจาก GitHub · อันดับร่วม #10
ตรวจสอบอีกครั้งเมื่อ 2026-08-24 06:14:31 UTC: คอมมิตที่ระบุแหล่งที่มาจาก GitHub ตามที่รายงานโดย API ผู้มีส่วนร่วมของรีพอซิทอรีสำหรับบรันช์เริ่มต้น release/v3.8.50 โดย API ส่งคืนข้อมูลประจำตัว 525 รายการ (ผู้ใช้ 415 ราย บอต 2 ราย และผู้ไม่ระบุตัวตน 108 ราย) ตารางนี้ไม่รวมผู้ดูแล บอต และข้อมูลประจำตัวที่ไม่ระบุตัวตน และยังคงแสดงอันดับร่วมไว้ ตารางนี้แตกต่างจากทั้งการจัดอันดับตาม PR ที่ผสานแล้วด้านบน และการสำรวจสำมะโนจากเมทาดาทา Git จำนวน 639 คนด้านล่าง > 🙏 ฟีเจอร์ การแก้ไขข้อบกพร่อง และการปรับปรุงโครงสร้างพื้นฐานของผู้มีส่วนร่วมเหล่านี้เป็น **ส่วนสำคัญ** ที่ทำให้ OmniRoute เชื่อถือได้และเปี่ยมด้วยฟีเจอร์ ทุก pull request ทุกกรณีทดสอบ และทุกไฟล์แปล i18n ล้วนมีความสำคัญ โอเพนซอร์สสร้างขึ้นโดยผู้คนเช่นพวกเขา
---
## 💖 ผู้สนับสนุน
ขอขอบคุณจากใจจริงแด่ทุกคนที่สนับสนุนเงินทุนให้ OmniRoute จากกระเป๋าของตนเอง — ทุกการสนับสนุนช่วยให้โครงการยังคงใช้งานได้ฟรี เป็นอิสระ และเดินหน้าต่อไป
Andrew
Andrew

💛 ผู้สนับสนุนรายเดือนที่ยังให้การสนับสนุนอยู่
Vlad I
Vlad I

💛 ผู้สนับสนุนรายเดือนที่ยังให้การสนับสนุนอยู่
Paco Cartones
Paco Cartones

💛 ผู้สนับสนุนแบบครั้งเดียวที่ยังให้การสนับสนุนอยู่
Professor Igor Morais Vasconcelos
ศ. Igor Morais

💛 ผู้ที่เคยสนับสนุนแบบครั้งเดียว
longtao
longtao

💛 ผู้ที่เคยสนับสนุนแบบครั้งเดียว
… และบุคคลอื่นๆ ที่ประสงค์จะไม่เปิดเผยตัวตน 💛 ผู้สนับสนุนสาธารณะบน GitHub ได้รับการตรวจสอบยืนยันอีกครั้งเมื่อ 2026-08-24 สถานะ activeOnly ของ GitHub ใช้กำหนดป้ายสถานะว่ายังให้การสนับสนุนอยู่ด้านบน ผู้ที่เคยสนับสนุนแบบครั้งเดียวและเปิดเผยต่อสาธารณะก่อนหน้านี้ยังคงได้รับคำขอบคุณ และผู้สนับสนุนแบบส่วนตัวยังคงไม่เปิดเผยตัวตน 💖 ร่วมเป็นผู้สนับสนุน → — ทุกดอลลาร์ช่วยให้ OmniRoute ยังคงใช้งานได้ฟรีและเป็นอิสระ

## 👥 ผู้มีส่วนร่วมกว่า 600 คน
[![ผู้มีส่วนร่วม](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=639&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) ตรวจสอบเมื่อ 2026-08-24 โดยใช้ฐานที่ตรึงไว้ ac02c5b42f และตรวจสอบซ้ำที่ปลายล่าสุดของ release/v3.8.50 ซึ่งคือ dafb4ae808: ข้อมูลระบุตัวตน Git ของมนุษย์ที่ผ่านการปรับให้เป็นมาตรฐานแล้ว 639 รายการ — 407 รายการปรากฏในฐานะผู้เขียนคอมมิต (รวมถึงผู้ดูแลโครงการ) และ 232 รายการปรากฏเฉพาะในส่วนท้าย Co-authored-by ที่ระบุไว้อย่างชัดเจน การสำรวจนี้ปรับแฮนเดิล noreply ของ GitHub ให้เป็นมาตรฐาน ไม่นับข้อมูลระบุตัวตนของบอต/เอเจนต์/บริการ/ตัวยึดตำแหน่ง 26 รายการ และไม่รวมที่อยู่อีเมลทั่วไปเข้าด้วยกันเพียงเพราะชื่อที่แสดงตรงกัน ### วิธีมีส่วนร่วม 1. Fork repository 2. สร้าง branch จากปลายล่าสุดของ `release/vX.Y.Z` ที่ **ใช้งานอยู่** (ไม่ใช่ `main`) — ดู [รูปแบบ Branching และ Release](docs/ops/BRANCHING_MODEL.md) 3. สร้าง feature branch ของคุณ (`git checkout -b feat/amazing-feature`) 4. Commit การเปลี่ยนแปลงของคุณ (`git commit -m 'feat: add amazing feature'`) 5. Push ไปยัง branch (`git push origin feat/amazing-feature`) 6. เปิด Pull Request โดยกำหนด **base = branch `release/vX.Y.Z` นั้น** ดูแนวทางโดยละเอียดได้ที่ [CONTRIBUTING.md](CONTRIBUTING.md) ### การเผยแพร่เวอร์ชันใหม่ ```bash # สร้าง release — npm publish จะทำงานโดยอัตโนมัติ VERSION=x.y.z gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes ```
## 📊 ดาว แผนภูมิประวัติดาว
## 🌍 StarMapper StarMapper

## 🙏 กิตติกรรมประกาศ
OmniRoute ยืนอยู่บนบ่าของยักษ์ใหญ่ โดยเริ่มต้นจากการเป็น fork ของ **[9router](https://github.com/decolua/9router)** และการพอร์ตโปรเจกต์ Go อย่าง **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** มายัง TypeScript — และนับจากนั้น ระบบย่อยแต่ละส่วนด้านล่างล้วนได้รับแรงบันดาลใจจากโปรเจกต์โอเพนซอร์สที่บุกเบิกมาก่อน แต่ละโปรเจกต์มีส่วนกำหนดองค์ประกอบที่เป็นรูปธรรมของ OmniRoute นี่คือคำขอบคุณจากเราที่มอบให้แก่ทุกโปรเจกต์ 🙏 > ⭐ จำนวนดาวได้รับการตรวจสอบจาก REST API ของ GitHub เมื่อวันที่ 24 สิงหาคม 2026 — อย่าลืมไปกดดาวให้โปรเจกต์เหล่านี้ จำนวนดังกล่าวเป็นภาพรวม ณ วันที่ระบุอย่างแม่นยำ และย่อมเปลี่ยนแปลงไปตามธรรมชาติ ### 🧬 ต้นกำเนิดและเกตเวย์
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
9router26,161โปรเจกต์ต้นฉบับที่ใช้เป็นพื้นฐานของ fork นี้ — โดยได้รับการต่อยอดด้วย API แบบหลายโมดัลและการเขียนใหม่ทั้งหมดด้วย TypeScript
CLIProxyAPI48,497อิมพลีเมนเทชันภาษา Go ที่เป็นแรงบันดาลใจให้พอร์ต JavaScript / TypeScript นี้
LiteLLM57,100เกตเวย์ AI ซึ่งชุดข้อมูลราคาสาธารณะถูกนำมาใช้ในการซิงค์ข้อมูลติดตามต้นทุนของเรา และโมเดลการปรับผู้ให้บริการให้เป็นมาตรฐานของโปรเจกต์นี้เป็นแนวทางในการออกแบบระบบกำหนดเส้นทางของเรา
codex-chatgpt-web1,410ซอร์สโค้ดภายใต้สัญญาอนุญาต MIT ที่ได้รับการดัดแปลงเป็นบริดจ์ ChatGPT Web → Codex Responses ที่รวมไว้กับโครงการ ซึ่งครอบคลุมอะแดปเตอร์สำหรับเซสชันเบราว์เซอร์ การจัดเฟรมการตอบกลับ การใช้งาน และการค้นหาเว็บ
free-claude-code48,112รูปแบบต่าง ๆ ที่พอร์ตมาใช้กับการกู้คืนสตรีม alias แบบไม่ใช้การคิด การค้นหาเว็บสำรอง ขีดจำกัดแบบหน้าต่างเลื่อน การปกปิดข้อมูลในบันทึก และโฟลว์ตัวเรียกใช้งานที่ได้รับการเสริมความปลอดภัย
composer-api322รูปแบบการเลือกเครื่องมือ ข้อจำกัดเอาต์พุต และการยืนยันใช้เครื่องมือของ Cursor Composer ที่ได้รับการดัดแปลงเข้าสู่ตัวดำเนินการ Cursor แบบเนทีฟ
codex-multi-auth457รูปแบบการเข้าสู่ระบบใหม่และการหมุนเวียน refresh token ที่พอร์ตมาใช้กับการยืนยันตัวตนใหม่ผ่าน Codex OAuth
opencode-anthropic-auth510ค่าเริ่มต้นในการแปลงที่เข้ากันได้กับ Claude Code และลักษณะการทำงานของส่วนหัวการเรียกเก็บเงิน ซึ่งถูกทำให้เป็นรูปแบบทั่วไปในบริดจ์ที่ขับเคลื่อนด้วยการกำหนดค่าของ OmniRoute
grok2api-merged2การแมปโมเดล Grok, ตัวสร้าง Statsig ที่ใช้ TypeError ปลอม, ค่าเริ่มต้นของคำขอและอุปกรณ์ ตลอดจนตัวประมวลผลการตอบกลับ NDJSON ของโปรเจกต์นี้ ได้รับการดัดแปลงอย่างมีนัยสำคัญเข้าสู่ตัวดำเนินการ Grok Web ของ OmniRoute
TQZHR/grok2api705แหล่งซอร์สโค้ดทางอ้อมหลักเบื้องหลัง grok2api-merged โดยอิมพลีเมนเทชันของโมเดล ส่วนหัว เพย์โหลด Statsig และตัวประมวลผลยังคงได้รับการรักษาไว้ในสายการสืบทอดของ Grok Web
chenyme/grok2api7,520ซอร์สโค้ดพื้นฐานภายใต้สัญญาอนุญาต MIT สำหรับเพย์โหลด Grok และค่าเริ่มต้นของอุปกรณ์ ตัวสร้าง Statsig และตัวประมวลผล result.response ซึ่งส่งต่อมาผ่าน TQZHR และ grok2api-merged
grok2api-pro27แหล่งที่มาทางอ้อมซึ่ง grok2api-merged ให้เครดิตสำหรับเลเยอร์พูลพร็อกซี โดย OmniRoute ยังคงรักษาประกาศสายการสืบทอดดังกล่าวไว้ แต่ไม่ได้อ้างว่าได้พอร์ตพูลพร็อกซีมาไว้ในตัวดำเนินการ Grok Web ที่มีขอบเขตจำกัด
GrokProxy50พร็อกซี Grok ที่ยืนยันตัวตนด้วยคุกกี้และรูปแบบการสตรีม result.response.token ของโปรเจกต์นี้เป็นแนวทางสำหรับทรานสปอร์ต Grok Web ของ OmniRoute
GrokBridge5อิมพลีเมนเทชัน Grok Web ดั้งเดิมได้อ้างอิงการออกแบบอัปสตรีมผ่าน HTTP/เบราว์เซอร์ของโปรเจกต์นี้ โดยเส้นทาง HTTP โดยตรงมีต้นกำเนิดจาก GrokProxy จึงไม่มีการอ้างว่าเป็นการพอร์ตโค้ดโดยอิสระ
grok-web-api14สคีมา ChatOptions และซองหุ้มการตอบกลับภาษา Rust ของโปรเจกต์นี้เป็นแนวทางสำหรับประเภทคำขอ Grok และการตอบกลับแบบสตรีมใน TypeScript ของ OmniRoute
### 🗜️ การบีบอัดบริบทและโทเค็น — เอนจิน
โปรเจกต์⭐แรงบันดาลใจที่มีต่อ OmniRoute
Caveman100,538โปรเจกต์ไวรัล "ทำไมใช้โทเค็นเยอะ ในเมื่อโทเค็นน้อยก็เอาอยู่" — ปรัชญาการพูดแบบมนุษย์ถ้ำของโปรเจกต์นี้เป็นขุมพลังให้โหมดบีบอัดมาตรฐานของเรา รวมถึงกฎตัดคำฟุ่มเฟือย/ควบแน่นกว่า 30 ข้อ
RTK – Rust Token Killer77,185การบีบอัดเอาต์พุตคำสั่งประสิทธิภาพสูง — เป็นแรงบันดาลใจให้เอนจิน RTK, DSL สำหรับกรอง JSON, การกู้คืนเอาต์พุตดิบ และไปป์ไลน์แบบซ้อน RTK → Caveman ของเรา
headroom67,310การบีบอัดบริบทแบบย้อนกลับได้ (SmartCrusher) — เป็นแรงบันดาลใจให้เอนจิน headroom และรูปแบบตัวทำเครื่องหมายสำหรับเรียกคืนของ ccr
LLMLingua6,598งานวิจัยการบีบอัดพรอมต์ (LLMLingua / LLMLingua-2) — เป็นแรงบันดาลใจให้เอนจิน llmlingua แบบอะซิงโครนัส ปลอดภัยต่อโค้ด และเปิดทางให้ทำงานต่อเมื่อเกิดข้อผิดพลาด
llmlingua-2-js31พอร์ต JS/ONNX (MobileBERT / XLM-RoBERTa) ที่ใช้เป็นแบ็กเอนด์เธรดผู้ปฏิบัติงานสำหรับเอนจิน LLMLingua ของเรา
Troglodita40การบีบอัดโทเค็นภาษาโปรตุเกสแบบบราซิล — เป็นขุมพลังให้แพ็กภาษา pt-BR ของเรา ได้แก่ การลดคำซ้ำความหมายและการตัดคำฟุ่มเฟือยที่ปรับแต่งให้เหมาะกับไวยากรณ์ภาษาโปรตุเกสแบบบราซิล
ponytail108,957สกิลเขียนโค้ดตามหลัก YAGNI แบบ "นักพัฒนาอาวุโสจอมขี้เกียจ" ที่กลายเป็นไวรัล — เป็นแรงบันดาลใจให้รูปแบบเอาต์พุต less-code ของเรา: การกำกับให้เปลี่ยนแปลงน้อยที่สุดเท่าที่ทำงานได้ ซึ่งช่วยลดโค้ดที่ _สร้างขึ้น_ (แกนด้านเอาต์พุตที่เป็นคู่กับร้อยแก้วกระชับของ Caveman)
i-have-adhd23,526รูปแบบการตอบที่เน้นการลงมือทำก่อนและเป็นมิตรต่อผู้มี ADHD ถูกนำมาปรับใช้เป็นรูปแบบเอาต์พุตแบบกระชับของ OmniRoute ในห้าภาษา
### 🧩 รูปแบบกะทัดรัด งานวิจัยโทเค็น และเครื่องมือที่เข้าใจโค้ด
โปรเจกต์⭐แรงบันดาลใจที่มีต่อ OmniRoute
TOON25,233สัญกรณ์ออบเจ็กต์ที่เน้นโทเค็น — โมเดลแบบคอลัมน์ที่ประกอบด้วยส่วนหัวและแถวเป็นต้นแบบให้ขั้นตอนการย่อตารางของเรา
GCF – Graph Compact Format41รูปแบบกราฟกะทัดรัดและการออกแบบโปรไฟล์ทั่วไปของโปรเจกต์นี้มีส่วนกำหนดแนวทางการย่อตารางและรูปแบบโคเดก Headroom ของ OmniRoute
gcf-typescript4อิมพลีเมนเทชัน TypeScript ภายใต้สิทธิ์ใช้งาน MIT ที่นำมาไว้ในโครงการโดยตรงและต่อยอดเป็นโคเดกโปรไฟล์ทั่วไปของ Headroom
token-optimizer-mcp494แคช Brotli/SQLite + ผลต่างบริบทต่อเซสชัน — เป็นแรงบันดาลใจให้เอนจิน session-dedup ของเรา
token-savior1,122การย่อเอาต์พุต Bash + โปรไฟล์ MCP — เป็นแรงบันดาลใจให้หลักปฏิบัติในการยุติการบีบอัดของเราและการลดรายการเครื่องมือ MCP
token-saver138การบีบอัดเอาต์พุตที่คำนึงถึงเนื้อหาและแยกตามประเภทไฟล์ พร้อมยุติการทำงานเมื่อพบความล้มเหลว — ยืนยันความเหมาะสมของการแจกจ่ายงานตามประเภทและการข้ามเมื่อผลลัพธ์ต่ำกว่าเกณฑ์ขั้นต่ำของเรา
token-optimizer1,951"ค้นหาโทเค็นผี" — รูปแบบการถ่ายโอนข้อมูลออก + แฮนเดิลที่กู้คืนได้ มีส่วนกำหนดแนวคิดการถ่ายโอนข้อมูลออกของ CCR
TokenMizer28พิมพ์เขียวกราฟเซสชัน + การตัดบรรทัดซ้ำข้ามเทิร์น ซึ่งมีส่วนกำหนดการออกแบบ session-dedup ของเรา
OmniCompress3JSON แบบคอลัมน์ใน Rust + การเรียกคืนแบบอ้างอิงตามเนื้อหา + การตัดข้อมูลซ้ำข้ามข้อความ — ยืนยันความเหมาะสมของการออกแบบเอนจิน headroom/ccr/session-dedup ของเรา และค่าคงที่เพื่อความเสถียรของแคชที่ว่า "รูปแบบที่บีบอัดแล้วไม่ขึ้นกับตำแหน่ง"
mcp-compressor113การบีบอัดสคีมา/คำอธิบายเครื่องมือ MCP — มีส่วนกำหนดแนวทางการลดจำนวนรายการเครื่องมือ MCP ของเรา
RepoMapper197การจัดอันดับแผนผังรีโพสไตล์ Aider — มีส่วนกำหนดการสำรวจแผนผังรีโพ/การจัดอันดับการเรียกคืนของเรา
quiet-shell-mcp4การลดเอาต์พุตเชลล์ผ่าน MCP แบบประกาศ — ยืนยันความเหมาะสมของการย่อเอาต์พุต bash แบบประกาศของเรา
ts-morph6,162ชุดเครื่องมือ TypeScript Compiler API — เป็นแรงบันดาลใจให้การลบความคิดเห็นโดยใช้พาร์เซอร์ของเรา ซึ่งยังคงรักษาลิเทอรัลของสตริง เทมเพลต และนิพจน์ทั่วไปไว้
### 🧠 หน่วยความจำและ RAG
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
Mem063,902เลเยอร์หน่วยความจำสากล — โมเดลที่ใช้พร็อกซีเป็นขอบเขตการเขียน/อ่านมีส่วนกำหนดสถาปัตยกรรมหน่วยความจำของเรา
Letta (MemGPT)24,382เอเจนต์แบบเก็บสถานะพร้อมหน่วยความจำหลายระดับ — เป็นแรงบันดาลใจให้โมเดล Context Control & Recovery (CCR) แบบหลายระดับของเรา
WFGY1,781อนุกรมวิธาน ProblemMap สำหรับรูปแบบความล้มเหลวที่เกิดซ้ำ 16 แบบของ RAG/LLM — เป็นคำศัพท์ร่วมที่ใช้ในคู่มือแก้ไขปัญหาของเรา
### 🛰️ การตรวจสอบทราฟฟิก, MITM และพร็อกซีแบบโปร่งใส
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
llm-interceptor66การดักจับ/วิเคราะห์แบบ MITM สำหรับทราฟฟิกระหว่างผู้ช่วยเขียนโค้ด ↔ LLM ช่วยกำหนดข้อกำหนดเบื้องต้นของ Traffic Inspector โมดูลสี่ส่วนที่เคยต่อยอดมา ได้แก่ การผสาน SSE, การปรับบทสนทนาให้อยู่ในรูปแบบมาตรฐาน, การปกปิดข้อมูลลับ และการทำให้ส่วนหัวปลอดภัย ได้ถูกแทนที่ด้วยการนำไปใช้งานแบบ clean-room ที่เป็นอิสระโดยอิงตามมาตรฐานโปรโตคอลสาธารณะ ส่วนพื้นผิว host-passthrough สองรายการ (passthrough.ts และ _internal/bypass.cjs) ยังคงเป็นการนำไปใช้งานภายใน OmniRoute ซึ่งจัดประเภทแยกต่างหาก และไม่ได้ถูกเขียนขึ้นใหม่ในการแทนที่ครั้งนั้น
ProxyBridge5,995การกำหนดเส้นทางพร็อกซีแบบโปร่งใสแยกตามโปรเซส — เป็นแรงบันดาลใจให้การยุติ MITM ที่ปลอดภัยเมื่อเกิดข้อขัดข้อง, การหมดเวลาเมื่อซ็อกเก็ตไม่มีการใช้งาน, การระบุโปรเซสผ่าน /proc และการดักจับด้วย TPROXY ของเรา
### 📚 ข้อมูลโมเดล, ความสามารถในการสังเกตการณ์ และ UI
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
models.dev6,555ฐานข้อมูลแบบเปิดของข้อกำหนด ราคา และความสามารถของโมเดล AI — ซิงค์เข้าสู่แค็ตตาล็อกโมเดลของเราโดยตรง
React Flow / xyflow38,108ไลบรารีกราฟแบบโหนดที่ขับเคลื่อน Compression Studio และ Combo/Routing Studio แบบเรียลไทม์ของเรา
LangGraph40,314การแสดงภาพกราฟเวิร์กโฟลว์แบบสดของ LangGraph Studio เป็นแรงบันดาลใจให้มุมมองลำดับชั้นแบบเรียลไทม์ใน Studios ของเรา
Langfuse33,592โมเดลความสามารถในการสังเกตการณ์แบบ trace → span → generation ของโครงการนี้มีส่วนกำหนดมุมมอง waterfall ใน Compression Studio ของเรา
Kiali3,631ความสามารถในการสังเกตการณ์ของเซอร์วิสเมช Istio — เป็นแรงบันดาลใจให้แบดจ์ circuit-breaker และภาพแสดงขอบที่เกิดข้อผิดพลาดใน Routing/Combo Studio ของเรา
lobe-icons2,428โลโก้แบรนด์ AI/LLM ที่ใช้แสดงไอคอนผู้ให้บริการทั่วทั้งแดชบอร์ดของเรา
flag-icons12,354จัดเตรียมธง SVG ภายใต้สัญญาอนุญาต MIT ที่ใช้ในตัวเลือกภาษาของ README
### 🛡️ ความปลอดภัย
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
awesome-secure-defaults721รายการไลบรารีที่คัดสรรมาแล้วซึ่งมีค่าเริ่มต้นที่ปลอดภัย และใช้เป็นแนวทางในการตัดสินใจด้านความปลอดภัยของเรา (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink)
### 🧭 เครื่องมือเสริม
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
ClawRouter6,564เป็นแรงบันดาลใจให้การขจัดคำขอซ้ำ, กลไกสำรองฉุกเฉินที่ไม่มีค่าใช้จ่าย, กลยุทธ์ Auto-Combo แบบเสียบเปลี่ยนได้ และการจำแนกเจตนาแบบหลายภาษา
Antigravity-Manager30,652การแมปโมเดลใหม่โดยคำนึงถึงบัญชี, การตรวจสอบพาธของไฟล์ปฏิบัติการ และลักษณะการทำงานของป้ายกำกับแพ็กเกจ มีส่วนกำหนดรันไทม์ Antigravity ของ OmniRoute
vscode-antigravity-cockpit4,817รูปแบบนับถอยหลังการรีเซ็ตโควตาแบบกะทัดรัดของโครงการนี้เป็นแรงบันดาลใจให้การแสดงขีดจำกัดผู้ให้บริการที่สอดคล้องกันใน OmniRoute
AionUi32,230การผสานรวม ACP ของโครงการนี้เป็นแรงบันดาลใจให้ OmniRoute ตรวจหาเอเจนต์ CLI ที่ติดตั้งไว้โดยอัตโนมัติ
CodexBar20,507ช่วยระบุพื้นผิวโควตาของ Grok Build จากนั้น OmniRoute จึงตรวจสอบและแก้ไขรูปแบบข้อมูลที่ส่งจริงอย่างเป็นอิสระ
## 📄 ใบอนุญาต ใบอนุญาต MIT - ดูรายละเอียดได้ที่ [LICENSE](LICENSE) ---
**[⬆ กลับไปด้านบน](#-omniroute)** · สร้างขึ้นด้วย ❤️ เพื่อชุมชน AI แบบโอเพนซอร์ส OmniRoute v3.8.51 · Node ≥22.22.2 · ใบอนุญาต MIT · omniroute.online