# 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 → ผู้ให้บริการ 375 ราย — ฟรีกว่า 150 รายการ — ผ่านเอนด์พอยต์เดียว เชื่อมต่อ Claude Code, Codex, Cursor, Cline, Copilot และ Antigravity เข้ากับ Claude / GPT / Gemini ฟรี พร้อมระบบสลับสำรองอัตโนมัติ การบีบอัดแบบซ้อน RTK + Caveman ช่วยประหยัดโทเค็น 15–95% (เฉลี่ย ~89%) — ไม่ชนขีดจำกัด ผู้ให้บริการ AI 375 ราย · ระดับฟรีกว่า 150 รายการ · โทเค็นฟรี ~1.62B โทเค็น/เดือน · กลยุทธ์การกำหนดเส้นทาง 20 แบบ · เริ่มต้นที่ $0
## 💰 ~1.62B โทเค็น / เดือน จากฟรีเทียร์ของบุคคลที่สาม
> **นำบัญชีผู้ให้บริการของคุณมาเอง** นี่คือการประเมินแบบรวมจากฟรีเทียร์ของบุคคลที่สามที่แยกคุณสมบัติได้ ไม่ใช่การให้โทเค็นจาก OmniRoute สมัครรับข้อมูล รับข้อมูลรับรองตามที่กำหนด และเชื่อมต่อผู้ให้บริการที่คุณใช้ได้ ผู้ให้บริการแต่ละรายควบคุมขีดจำกัด ความพร้อมใช้งาน และข้อกำหนดของตน > > การซ้อนฟรีเทียร์ด้วยมือเป็นเรื่องเจ็บปวด — SDK หลายสิบตัว ขีดจำกัดอัตราหลายสิบแบบ และไม่รู้ว่าคุณมีเท่าไรจริง ๆ OmniRoute จัดทำแคตตาล็อก **รายการฟรีเทียร์ 467 รายการ ครอบคลุมคีย์พูลที่เกิดซ้ำ 34 รายการ** และคำนวณตัวเลขโทเค็นจาก **17 พูลที่มีงบประมาณรายเดือนเป็นบวกที่เผยแพร่แล้ว บวกกับขีดจำกัด Groq ต่อโมเดล 5 แบบ** โดยตัดข้อมูลซ้ำตามพูลที่ใช้ร่วมกัน โควต้าที่เปิดให้เฉพาะหลังการตรวจสอบอัตลักษณ์ระดับภูมิภาค (ปัจจุบัน: ModelScope) จะแสดงแยกออกมา +~6M หลังการตรวจสอบอัตลักษณ์ระดับภูมิภาค และจะไม่ถูกรวมเข้าในตัวเลขหลัก ผลลัพธ์ยังคงมองเห็นได้บนแดชบอร์ด (`/dashboard/free-tiers`) OmniRoute free-tier budget card: ~1.62B free tokens per month steady, up to ~2.22B in the first month with signup credits, from 34 documented recurring pool keys covering 467 cataloged free-tier entries behind one endpoint. Honest pool-deduped math — each shared pool counted once, including 17 recurring pools with a published positive monthly token budget plus five per-model Groq caps; 12 providers are marked avoid in the terms-risk catalog so you decide. Budget bar includes Mistral 1B, Nara 210M, LLM7 150M, xKiro 150M, Groq 30M (five per-model caps) and smaller pools, plus first-month signup credits and permanently-free no-token-cap providers surfaced separately so they never inflate the headline. Live used/remaining on /dashboard/free-tiers. > สรุปแบบเคลื่อนไหวของหน้า `/dashboard/free-tiers` แบบสด ระเบียบวิธีฉบับเต็ม (การตัดข้อมูลซ้ำแบบพูล, ระดับเครดิต, ข้อกำหนดผู้ให้บริการ): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)** > > ตัวเลขเหล่านี้ถูกตรวจสอบซ้ำทุกสองสัปดาห์เทียบกับแคตตาล็อกสด และ **เปลี่ยนแปลงได้ทั้งสองทาง** — ผู้ให้บริการยุติฟรีเทียร์ ตัวเลขก็ลดลง; มีรายใหม่เข้ามา ตัวเลขก็เพิ่มขึ้น เราประกาศสิ่งที่แคตตาล็อกคำนวณได้จริง ไม่ใช่กรณีดีที่สุดที่ปัดขึ้น

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

[![Stars](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![Star History Rank](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) ### 💬 เข้าร่วมชุมชน **👋 ติดตามผู้ดูแล — รับผู้ให้บริการใหม่ เวอร์ชันใหม่ และเคล็ดลับก่อนใคร:** [![Follow Diego on 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/) [![Follow @diegosouzapw on 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 Global](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 Brasil](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) [![Website](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 [🌍 Global](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Portal](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 เกตเวย์ยังคงเติบโต
| | v3.8.50 | **v3.8.51** | `v3.8.53+` | | ------------------------------ | :---------------------: | :---------: | :-------------------: | | 🌐 ผู้ให้บริการ | 352 | **358** | 375 | | 🧠 ID โมเดลแชตที่ไม่ซ้ำ | 1320 | **1374** | 1475 | | 🖼️ บริดจ์มอดาลิตี้ | 🆕 ภาพ + เสียง + วิดีโอ | ✓ | ✓ | | 📡 แคตตาล็อกฟรีของ Radar | 🆕 เลือกเปิดใช้ | ✓ | ✓ | | ⚖️ การจัดตารางที่คำนึงถึงโควตา | 🆕 Quota-Share | ✓ | ✓ | | 📊 เทเลเมทรีโควตา | 🆕 เรียลไทม์ | ✓ | ✓ | | 🧰 โหมด Headless | — | — | 🆕 `serve --headless` | | 🛤️ โครงสร้างพื้นฐานราง LTS | — | — | 🆕 ช่องทางรีลีส | | 🔎 API ค้นหาโมเดล | — | — | 🆕 `/v1/models/query` | **→ [แผนงาน](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 ที่เข้ากันได้
💚 สนับสนุน 💚 สนับสนุน / บริจาค 💬 ชุมชน 💖 ผู้สนับสนุน
📦 โปรเจกต์ 🛠️ เทคโนโลยีที่ใช้ 📖 เอกสารประกอบ 👥 ผู้มีส่วนร่วม
🌐 มีให้บริการใน 67 ภาษา

ภาษาอังกฤษ (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) Bosanski (bs)


## 🆓 ติดตั้ง เชื่อมต่อผู้ให้บริการ แล้วส่งคำขอผ่านปลายทางเดียว
สามขั้นตอน: ติดตั้งและเริ่ม OmniRoute เชื่อมต่อผู้ให้บริการที่เข้าเกณฑ์ด้วยบัญชีของคุณเองหรือคีย์ API จากนั้นชี้เครื่องมือของคุณไปที่ localhost:20128/v1 โดยใช้คีย์ API ของ OmniRoute และโมเดล auto การกำหนดเส้นทางขึ้นอยู่กับการเชื่อมต่อที่เข้าเกณฑ์ที่มีอยู่และขีดจำกัดของผู้ให้บริการ ```bash # หลังจากเชื่อมต่อผู้ให้บริการแล้ว คัดลอกคีย์ OmniRoute ของคุณจาก Dashboard → Endpoints: curl http://localhost:20128/v1/chat/completions \ -H "Authorization: Bearer YOUR_OMNIROUTE_KEY" \ -H "Content-Type: application/json" \ -d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}' ``` `auto` ต้องมีเส้นทางที่เข้าเกณฑ์ การติดตั้งใหม่ ممکنไม่มีเป้าหมายแบบไม่ใช้คีย์ที่เข้าเกณฑ์ และผู้ให้บริการแบบไม่ใช้คีย์อาจปฏิเสธไคลเอนต์ของบุคคลที่สาม ผู้ให้บริการที่ทำเครื่องหมายว่า `tos: avoid` รวมถึง Kiro จะถูกตัดออกจากการกำหนดเส้นทางอัตโนมัติโดยค่าเริ่มต้น การเชื่อมต่อบัญชีไม่สามารถ overriding การตั้งค่านั้นได้ ดู [คู่มือ Free Tiers](docs/getting-started/FREE-TIERS-GUIDE.md) ก่อนเลือกผู้ให้บริการ 📦 สคริปต์ quickstart แบบคัดลอกวางสำเร็จรูปสำหรับ **Python, Node.js, PHP และ cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 คำมั่นสัญญา
คำมั่นสัญญา — ปลายทางเดียวและผู้ให้บริการ 375 ราย การสำรองอัตโนมัติช่วยให้การกำหนดเส้นทางดำเนินต่อไปได้ตราบใดที่ยังมีเป้าหมายที่แข็งแรง หกเสาหลัก: การสำรองที่ทนทานข้ามผู้ให้บริการ 375 ราย · ประหยัดโทเค็นได้สูงสุดถึง 95% สำหรับงานที่เข้าเกณฑ์ · เริ่มต้นที่ $0 ด้วยแพ็กเกจฟรีกว่า 150 แพ็กเกจและผู้ให้บริการฟรีตลอดชีพแบบต่อเนื่อง/ไม่ใช้คีย์ 51 ราย · การผสานรวม CLI/agent 37 รายการผ่านการตั้งค่าเดียว · ความเข้ากันได้กับ OpenAI, Claude, Gemini และ Responses API ที่ /v1 · การควบคุมระดับโปรดักชันรวมถึง circuit breakers, TLS stealth, เครื่องมือ MCP 110 รายการ, A2A, memory, guardrails, evals และการประกาศการทดสอบแบบสแตติกกว่า 56,000 รายการในไฟล์ทดสอบที่ติดตามกว่า 7,800 ไฟล์

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

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

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 แล้วเราจะเพิ่มที่นี่

## 🎯 คอมโบ — ฟีเจอร์เรือธง
ตัวอย่างแบบเคลื่อนไหวของกลยุทธ์การกำหนดเส้นทางคอมโบ 18 จาก 20 กลยุทธ์ — หนึ่งช่องต่อหนึ่งกลยุทธ์: priority, fill-first, weighted, round-robin, p2c, least-used, random, strict-random, cost-optimized, headroom, reset-window, reset-aware, context-relay, context-optimized, lkgp, auto, fusion, pipeline ส่วน cache-optimized และ quota-weighted ไม่มีภาพเคลื่อนไหว ตารางด้านล่างอธิบายกลยุทธ์ทั้ง 20 รายการ > **คอมโบ** คือสายโซ่ของโมเดลที่ OmniRoute กำหนดเส้นทางผ่านโดย **อัตโนมัติ** หากโควตาหมด ผู้ให้บริการขัดข้อง หรือค่าใช้จ่ายพุ่งสูง คอมโบจะย้ายไปยังโมเดลถัดไปที่มีสิทธิ์และพร้อมใช้งานได้ 🛡️ ### ⚡ ไม่ต้องตั้งค่า — เพียงใช้ `auto` ไม่ต้องสร้างคอมโบ เพียงตั้งค่าโมเดลเป็น `auto` (หรือรูปแบบย่อย) แล้ว OmniRoute จะสร้างคอมโบเสมือนจากผู้ให้บริการที่คุณเชื่อมต่อ พร้อมคำนวณคะแนนแบบเรียลไทม์:
รหัสโมเดลสิ่งที่ปรับให้เหมาะสม
auto🎯 ค่าเริ่มต้นที่สมดุล (LKGP — ยึดผู้ให้บริการล่าสุดที่ทำงานได้ดี)
auto/coding🧑💻 ให้น้ำหนักคุณภาพเป็นอันดับแรกสำหรับการสร้างโค้ด
auto/fast⚡ ให้ความหน่วงต่ำที่สุดเป็นอันดับแรก
auto/cheap💰 ให้ราคาต่อโทเค็นที่ถูกที่สุดเป็นอันดับแรก
auto/subscription🎟️ ใช้เฉพาะโควตาการสมัครสมาชิกที่คุณจ่ายอยู่แล้ว — ปิดการทำงานเมื่อไม่สำเร็จ และไม่สลับไปใช้ตัวเลือกที่มีค่าใช้จ่าย (คู่มือ)
auto/thrifty🪜 ใช้โควตาแพ็กเกจก่อน จากนั้นไล่ไปยังตัวเลือกแบบชำระเงินที่ถูกที่สุดทีละขั้น — กลับมาใช้แพ็กเกจอีกครั้งหลังรีเซ็ต (คู่มือ)
auto/offline🔋 ให้โควตา / ขีดจำกัดอัตราการใช้งานที่เหลือมากที่สุดเป็นอันดับแรก
auto/smart🔭 ให้คุณภาพเป็นอันดับแรก + สำรวจ 10% เพื่อค้นหาโมเดลที่ดีกว่า
auto/lkgp📌 ยึดผู้ให้บริการล่าสุดที่ทราบว่าทำงานได้ดีอย่างชัดเจน
auto/chaos🧪 กระจายคำขอแบบขนานไปยังกลุ่มโมเดล (หนึ่งโมเดลต่อผู้ให้บริการ ค่าเริ่มต้นคือ 5 โมเดล) และส่งคืนหนึ่งคำตอบ โดยเรียกต้นทางหนึ่งครั้งต่อหนึ่งโมเดลในกลุ่ม ไม่ใช่การจำลองความขัดข้อง
## ### 🔀 หรือสร้างเอง — กลยุทธ์การกำหนดเส้นทาง 20 แบบ กลยุทธ์ **20** แบบทั้งหมด — ผสมและจับคู่ได้ในแต่ละขั้นตอนของคอมโบ:
# กลยุทธ์ การทำงาน
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 quota-weighted ข้ามบัญชีที่ใช้โควตาหมดแล้ว จากนั้นสุ่มตามสัดส่วนโควตาคงเหลือ ÷ โหลดที่กำลังประมวลผล — การสนทนาที่มีอยู่จะยังคงผูกกับเป้าหมายเดิม ⚖️
12 reset-window เลือกเป้าหมายที่รอบโควตาจะรีเซ็ตเร็วที่สุดก่อน
13 reset-aware จัดอันดับตามเวลารีเซ็ตโควตา — รอบสั้นก่อน 📊
14 context-relay ส่งต่อบริบทระหว่างเป้าหมายสำหรับการสนทนาที่ยาวนาน 🧠
15 context-optimized เลือกเป้าหมายที่เหมาะสมที่สุดกับขนาดบริบทปัจจุบัน
16 cache-optimized ผูกคำนำหน้าพรอมต์ที่นำกลับมาใช้ใหม่แต่ละรายการไว้กับบัญชีเดิม — เพิ่มการใช้แคชพรอมต์สำเร็จให้สูงสุด 🎯
17 lkgp เส้นทางล่าสุดที่ทราบว่าทำงานได้ดี — ผูกกับผู้ให้บริการที่ทำงานสำเร็จล่าสุด จากนั้นจึงสลับไปใช้กฎสำรอง
18 auto คำนวณคะแนนแบบเรียลไทม์จาก 16 ปัจจัยสำหรับทุกการเชื่อมต่อ 🤖
19 fusion กระจายคำขอไปยังกลุ่มโมเดล + ให้โมเดลผู้ตัดสินสังเคราะห์เป็นหนึ่งคำตอบ 🧬
20 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 พร้อมการกู้คืนเมื่อมีการใช้งาน ขณะที่อยู่ในสถานะ OPEN ระบบคอมโบจะเปลี่ยนเส้นทางไปยังผู้ให้บริการรายถัดไป เลเยอร์ 2 ช่วงพักการเชื่อมต่อ (หนึ่งคีย์/บัญชี): เริ่มต้นที่ OAuth 5s / API-key 3s เพิ่มระยะเวลารอแบบเอ็กซ์โพเนนเชียล ×2 พร้อมกลไกป้องกันคำขอถาโถมพร้อมกัน, 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: ผู้ให้บริการ 375 ราย, ฟรีเทียร์ในตัวกว่า 150 รายการ, กลยุทธ์การกำหนดเส้นทาง 20 แบบ, การบีบอัดโทเค็นด้วยเอนจิน 12 ตัว, เซิร์ฟเวอร์ MCP ในตัวพร้อมเครื่องมือ 110 รายการ, โปรโตคอลเอเจนต์ A2A, หน่วยความจำถาวร, กลไกควบคุมความปลอดภัย, เอเจนต์บนคลาวด์, การพรางลายนิ้วมือ TLS, Desktop/Termux/PWA และภาษาสำหรับ UI ตามมาตรฐาน i18n จำนวน 67 ภาษา 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.53** ดูประวัติทั้งหมดได้ใน [`CHANGELOG.md`](CHANGELOG.md) - **⚖️ การกำหนดเส้นทางแบบ `quota-weighted`** — กลยุทธ์คอมโบลำดับที่ 20 จะข้ามบัญชีที่ใช้โควตาหมดแล้ว จากนั้นเลือกบัญชีที่เหลือตามสัดส่วนโควตาคงเหลือ ÷ ภาระงานที่กำลังดำเนินการ พร้อมคงการสนทนาที่มีอยู่ให้ผูกอยู่กับบัญชีเดิม → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🧰 โหมด Headless** — `omniroute serve --headless` (หรือ `OMNIROUTE_HEADLESS=1`) จะเรียกใช้เฉพาะเอนจินพร็อกซี `/v1/*` โดยปิดแดชบอร์ดและระบบย่อยที่ใช้เฉพาะกับแดชบอร์ด → [โหมด Headless](docs/guides/HEADLESS.md) - **🔎 การค้นหาโมเดล** — `/v1/models` กรองตามความสามารถ บริบท ประเภท และข้อความ ส่วน `POST /v1/models/query` จะส่งคืนรายการคัดสรรแบบสั้นที่ให้ผลลัพธ์แน่นอน โดยคงการมองเห็นแยกตามคีย์ในแบบเดียวกัน → [ข้อมูลอ้างอิง API](docs/reference/API_REFERENCE.md) - **🔑 การควบคุมการกำหนดเส้นทางแยกตามคีย์** — ผูก API key เข้ากับโมเดลหรือคอมโบเดียวด้วย `forcedModel` และเพิ่มหรือลบโมเดลกับคอมโบของคีย์แบบอะตอมมิก (`/api/keys/{id}/access`) → [ข้อมูลอ้างอิง API](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml) - **🛡️ การควบคุม PII ที่ละเอียดยิ่งขึ้น** — เลือกแยกตามประเภท รองรับรูปแบบการมาสก์แบบกำหนดเองที่ผ่านการตรวจสอบสูงสุด 20 รูปแบบ และตัวนับการตรวจจับแยกตามประเภท โดยการมาสก์ยังคงต้องเลือกเปิดใช้งาน → [Guardrails](docs/security/GUARDRAILS.md) - **🌍 67 ภาษา** — รองรับแดชบอร์ด สำเนาเอกสาร และ CLI โดย `npm run i18n:add-locale` สามารถเพิ่มภาษาได้ทุกส่วนด้วยคำสั่งเดียว → [คู่มือ i18n](docs/guides/I18N.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) - **🗜️ การเพิ่มความแข็งแกร่งให้การบีบอัด** — เปิดใช้ตัวป้องกัน inflation เป็นค่าเริ่มต้น, แพ็ก Caveman สำหรับ DE / FR / JA + ภาษาจีน (wényán), และตัวกรอง RTK สำหรับ Gradle และ .NET → [การบีบอัด](docs/compression/COMPRESSION_ENGINES.md) - **💸 ต้นทุนอัตราคงที่ตามจริง** — ผู้ให้บริการแบบสมัครสมาชิก / แผนสำหรับเขียนโค้ดจะแสดงต้นทุนเป็น **$0** ในการวิเคราะห์ต้นทุน ขณะที่ระบบงบประมาณ โควตา และการกำหนดเส้นทางยังคงประมาณการต่อไป → [ข้อมูลอ้างอิง API](docs/reference/API_REFERENCE.md) - **⚖️ การกำหนดเส้นทางแบบ Quota-Share** — แบ่งโควตาของบัญชีที่ใช้ร่วมกันให้กับคีย์ในพูลอย่างเป็นธรรม พร้อมใช้ทรัพยากรอย่างเต็มประสิทธิภาพโดยให้ส่วนแบ่งที่ไม่ได้ใช้งานแก่คีย์อื่นยืม → [คู่มือความยืดหยุ่น](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 การตั้งค่า CLI/เอเจนต์ด้วยคำสั่งเดียว** — คำสั่ง `setup-*` ที่ลงทะเบียนไว้ 15 คำสั่ง; `omniroute run` เปิดใช้งาน CLI 7 รายการ (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` รองรับเป้าหมาย 11 รายการ พร้อมตัวเลือกผู้ให้บริการ+โมเดลแบบโต้ตอบและรายการโปรดแยกตามบริบท → [การผสานรวม 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-*` ในทุก endpoint, เฮดเดอร์การประหยัดจาก cache-HIT และโควตาค่าใช้จ่าย USD แยกตามคีย์ → [ข้อมูลอ้างอิง API](docs/reference/API_REFERENCE.md) - **🧠 หน่วยความจำที่คุณควบคุมได้** — ปิดไว้เป็นค่าเริ่มต้น เลือกเปิดใช้การควอนไทซ์เวกเตอร์แบบ int8 + การลดทอนตามประเภท และปิดหน่วยความจำแยกตามคำขอได้ด้วย `x-omniroute-no-memory` → [หน่วยความจำ](docs/frameworks/MEMORY.md) - **🛡️ ความปลอดภัย** — ตัวป้องกัน prompt injection ในทุกเส้นทาง LLM (ชุดทดสอบ red-team), guardrail สำหรับมาสก์ข้อมูลรับรองแบบเลือกเปิดใช้ (ปกปิด API key/ข้อมูลลับที่รั่วไหลในทั้งสองทิศทาง), การค้นหาเว็บสำรองลำดับสุดท้ายผ่าน DuckDuckGo โดยไม่มีค่าใช้จ่าย และเกตล็อกอิน OIDC แบบไม่บังคับสำหรับแดชบอร์ด (ยังคงใช้การล็อกอินด้วยรหัสผ่านได้เสมอ) → [Guardrails](docs/security/GUARDRAILS.md) - **🖼️ Endpoint ใหม่** — `/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 ระดับ first-class, Claude Opus 5 และ Sonnet 5, ความร่วมมืออย่างเป็นทางการกับ Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… และ **แค็ตตาล็อกผู้ให้บริการ 375 ราย** ที่ปรับปรุงใหม่ → [ผู้ให้บริการ](docs/reference/PROVIDER_REFERENCE.md) - **📡 ความโปร่งใสในการกำหนดเส้นทาง** — ทุกการตอบกลับมีเฮดเดอร์ `X-OmniRoute-Decision` ที่ระบุกลยุทธ์/ผู้ให้บริการ/เวลาแฝงที่ใช้ให้บริการ, กลยุทธ์คอมโบใหม่ `cache-optimized` + ปัจจัย `cacheAffinity` ของ Auto-Combo จะส่งคำขอซ้ำกลับไปยังการเชื่อมต่อที่เก็บ prefix ไว้ในแคช และ endpoint แบบอ่านอย่างเดียว `/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 (เครื่องมือ MCP 22 รายการ), Batch & Files APIs ที่เข้ากันได้กับ 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
📖 การตั้งค่าเฉพาะเครื่องมือสำหรับเครื่องมือทั้ง 37 รายการ (CLI Code 27 รายการ + 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 5dive ``` ทุกคำสั่งจะใช้บริบทรีโมตที่กำลังใช้งานอยู่ (`omniroute connect `), `--dry-run` จะแสดงตัวอย่าง env/args ที่แน่นอนโดยไม่ดำเนินการ และ `--api-key-env NAME` จะช่วยป้องกันไม่ให้ข้อมูลลับ ปรากฏในประวัติ shell ของคุณ → [การผสานรวม CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 ผู้ให้บริการ AI 375 ราย — 153 รายที่แคตตาล็อกระบุว่าเป็นแบบฟรี
> **ผู้ให้บริการที่ลงทะเบียนไว้ 375 ราย** ครอบคลุมคอลเลกชันตามมาตรฐานทั้งแชท สื่อ การค้นหา โลคอล คลาวด์เอเจนต์ และระบบ รวมถึง **153 รายที่มีเมตาดาต้าการค้นพบ `hasFree: true`** ทะเบียนโมเดลแชทครอบคลุม **239 ผู้ให้บริการ / 3,059 คู่ผู้ให้บริการ-โมเดลที่แตกต่างกัน / 1,475 รหัสโมเดลดิบ** ส่วนแคตตาล็อกงบประมาณฟรีแยกต่างหากมี **467 แถวต่อโมเดล**, **34 พูลแบบเกิดซ้ำ** และ **51 ผู้ให้บริการฟรีตลอดไปแบบเกิดซ้ำ/ไม่ต้องใช้คีย์** ตัวส่วนเหล่านี้แตกต่างกันโดยเจตนา; คำจำกัดความและการคำนวณแบบตัดพูลซ้ำอยู่ใน [เอกสารอ้างอิงผู้ให้บริการ](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
                           
…และอีกกว่า 350 ราย — ไอคอนทั้งหมดดึงสดจากแคตตาล็อกผู้ให้บริการของแดชบอร์ด 📖 [เอกสารอ้างอิงผู้ให้บริการ](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 ฟรีตลอดไป — $0 ไม่ต้องใช้บัตร
OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
ไม่จำกัดจำนวนโทเค็น
Kilo Code
Kilo Code
Auto-router, 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
เครดิต $5 ครั้งเดียว; ต้องใช้บัตร
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 # ← ทำงานกับเซิร์ฟเวอร์รีโมต omniroute configure codex # ← เลือกโมเดลรีโมตและเขียนโปรไฟล์ Codex ในเครื่อง omniroute tokens create --name ci --scope read # สร้างโทเค็นที่มีขอบเขตแคบลงสำหรับเครื่องอื่น omniroute contexts use default # ← สลับกลับไปยังเซิร์ฟเวอร์ในเครื่อง ``` โทเค็นมีขอบเขต `read` / `write` / `admin`; เส้นทางที่เรียกใช้โปรเซสยังคงจำกัดเฉพาะลูปแบ็ก 📖 [โหมดรีโมต](docs/guides/REMOTE-MODE.md)
ภาพเคลื่อนไหวในเทอร์มินัลที่สาธิต OmniRoute CLI — omniroute providers list, omniroute combo list และ omniroute health — วนแสดงคำสั่งระดับบนสุดทั้งหมด 89 รายการ: 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**, **เว็บฮุก** หรือ **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 — แชต เอ็มเบดดิง รูปภาพ เสียง และ OCR
🔔 เว็บฮุก/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 แบบไม่สูญเสียข้อมูลก่อน + บีบอัดข้อมูลวินิจฉัยแบบมีขอบเขตสำหรับเอาต์พุต shell/patch/search/build (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 ยังคงล็อกไว้เป็นค่าเริ่มต้นแบบ fail-closed จนกว่าจะมีใบรับรองจากผู้ให้บริการ โปรไฟล์การบีบอัด 4 แบบ (ค่าเริ่มต้นแบบ aggressive, balanced, coding-safe, passthrough) (ก้าวร้าวที่สุด; ต้องเลือกเปิดเอง)
บล็อกโค้ด, URL และข้อมูลที่มีโครงสร้าง **ได้รับการรักษาไว้เสมอ** อย่างสมบูรณ์ระดับไบต์ **พรีเซ็ตแบบคลิกเดียว** รวมเอนจินเข้าด้วยกัน:
โหมดการประหยัดเหมาะสำหรับ
🪶 Lite~15%ค่าเริ่มต้นที่ปลอดภัย เปิดใช้ตลอด
🪨 Standard (Caveman)~30%การเขียนโค้ดประจำวัน
⚡ Aggressive~50%เซสชันยาวที่ใช้เครื่องมือหนัก
🔥 Ultra~75%ประหยัดสูงสุด
🧰 RTK60–90%เอาต์พุต shell/test/build/git
🔗 Stacked (RTK → Caveman)78–95%พรอมป์แบบผสม + บันทึกเครื่องมือ
**ตัวอย่างจริง — โหมด Standard:** > **ก่อน (69 โทเค็น):** _"สาเหตุที่คอมโพเนนต์ React ของคุณเรนเดอร์ซ้ำน่าจะเป็นเพราะคุณสร้างอ็อบเจกต์อ้างอิงใหม่ในทุกรอบการเรนเดอร์ เมื่อคุณส่งอ็อบเจกต์แบบอินไลน์เป็นพร็อพ การเปรียบเทียบแบบตื้นของ React จะมองว่ามันเป็นอ็อบเจกต์ที่แตกต่างกันทุกครั้ง ซึ่งกระตุ้นให้เกิดการเรนเดอร์ซ้ำ ฉันแนะนำให้ใช้ useMemo เพื่อบันทึกค่าอ็อบเจกต์"_ > > **หลัง (19 โทเค็น):** _"สร้างออบเจกต์อ้างอิงใหม่ทุกรอบเรนเดอร์ พร็อพแบบอ็อบเจกต์อินไลน์ = อ้างอิงใหม่ = เรนเดอร์ซ้ำ ห่อด้วย useMemo"_ > > **คำตอบเดียวกัน ประหยัดโทเค็นกว่า 72% สูญเสียความแม่นยำเป็นศูนย์** ✅ **ตัวอย่าง PT-BR — โหมด [Troglodita](https://github.com/leninejunior/troglodita):** > **ก่อน (42 tokens):** _"ปัญหาคือคอมโพเนนต์กำลังรีเรนเดอร์เพราะมีการสร้าง object reference ใหม่ในทุก ๆ รอบการเรนเดอร์ ผมแนะนำให้ใช้ useMemo"_ > > **หลัง (12 tokens):** _"รีเรนเดอร์: ref ใหม่ทุกรอบ (object inline ถูกสร้างใหม่) ใช้ `useMemo`"_ > > **คำตอบเดียวกัน ~70% tokens น้อยลง ความแม่นยำทางเทคนิคยังคงอยู่** ✅
### 🎚️ เหนือกว่าเอนจิน — รูปแบบเอาต์พุต, ปุ่มปรับแบบอะแดปทีฟ & การควบคุมต่อคำขอ 12 เอนจินข้างต้นย่อสิ่งที่ **เข้าไป** มีอีกสามชั้นที่กำหนด **อย่างไร**, **เมื่อไร**, และสิ่งที่ **ออกมา**: - **🪄 Output Styles** _(การบังคับทิศทางฝั่งเอาต์พุต)_ — ใส่คำสั่งกำหนดรูปคำตอบที่แน่นอนและปลอดภัยต่อแคช; ผสมผสานได้ แต่ละแบบมีระดับ `lite` / `full` / `ultra` การเพิ่มสไตล์คือการเพิ่มรายการใน registry หนึ่งบรรทัด: - **Terse prose** — ตัดคำฟุ่มเฟือย / คำนำหน้านาม / คำคลุมเครือ; รักษาสาระทางเทคนิคให้แม่นยำ - **Less code** — YAGNI แบบ "lazy senior dev": การเปลี่ยนแปลงที่ใช้งานได้เล็กที่สุด ไม่มีโครงสร้างที่ไม่ได้ขอ - **Ponytail (lazy senior dev)** — ไต่บันได YAGNI, แก้ที่ต้นเหตุ, diff ที่ใช้งานได้เล็กที่สุด - **I have ADHD (action-first)** — นำด้วยการกระทำถัดไป, ขั้นตอนมีหมายเลข, ขั้นตอนถัดไปที่ชัดเจนหนึ่งข้อ, ไม่มีบทนำ - **Terse CJK (文言)** — สไตล์จีนคลาสสิกกระชับสุด ๆ (จำกัดตาม locale เป็น `zh`) - **🎯 Adaptive context-budget** _(ปุ่มปรับ)_ — แทนที่จะใช้เกณฑ์ token เปิด/ปิดอย่างเดียว ให้เพิ่มเอนจินที่ถูกที่สุดและสูญเสียน้อยที่สุดเท่าที่จำเป็นเพื่อ **ให้พอดีกับ context window ของโมเดล** นโยบาย: `reserve-output` (ค่าเริ่มต้น, รับรู้โมเดล) · `percentage` · `absolute` โหมด: `floor` (รับประกันว่าพอดี) · `replace-autotrigger` (ตัวเลือกที่คุณระบุชัดเจนชนะ) · `off` (เกณฑ์แบบเดิม) - **🎛️ ที่ที่ตัดสินใจบีบอัด** _(ลำดับความสำคัญ, สูง → ต่ำ)_ — header `x-omniroute-compression` ต่อคำขอ › การ override ของ routing-combo › named profile ที่ใช้งานอยู่ › adaptive / auto-trigger › ค่าเริ่มต้นของ panel › ปิด แผนที่ใช้จะสะท้อนกลับมาใน header ตอบกลับ `X-OmniRoute-Compression: ; source=` ทริกเกอร์อัตโนมัติตามเกณฑ์ token, เปิดปุ่มปรับแบบอะแดปทีฟ, ตรึง named profile, ตั้งค่าใช้ครั้งเดียวต่อคำขอ, หรือกำหนด pipeline ต่อ routing combo — แล้วแต่สิ่งที่เหมาะกับงาน ในฐานะตัวเลือกเสริมมี **eval harness** แบบออฟไลน์ (`npm run eval:compression`) ที่ให้คะแนนความถูกต้องเทียบกับการประหยัดบน corpus ที่ตรึงไว้ก่อนที่คุณจะเลื่อนระดับการเปลี่ยนแปลง 📖 [`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-dep อยู่หรือเปล่า? [มันไม่เป็นอันตราย](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated) > **ใช้ npm 11 หรือใหม่กว่าอยู่หรือเปล่า?** npm อาจบล็อก lifecycle script ของแพ็กเกจ เว้นแต่จะได้รับอนุญาต `postinstall` ของ OmniRoute (`node scripts/build/postinstall.mjs`) จำเป็นสำหรับการเตรียมไฟล์ runtime แบบเนทีฟ อนุญาตแพ็กเกจที่ระบุในคำเตือนของ npm เมื่อติดตั้งแบบ global สำหรับชุดแพ็กเกจที่ OmniRoute 3.8.53 รายงาน: > > ```bash > npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute > ``` > > หากต้องการใช้ allowlist นี้ซ้ำสำหรับการติดตั้งแบบ global ในอนาคต ให้กำหนดค่าครั้งเดียว แล้วติดตั้งตามปกติ: > > ```bash > npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user > npm install -g omniroute > ``` > > รายการ dependency อาจเปลี่ยนแปลงได้ระหว่างเวอร์ชัน; หาก npm รายงานรายการที่ต่างออกไป ให้ใช้ชื่อแพ็กเกจจากคำเตือนนั้น การอนุญาตแพ็กเกจคือการอนุญาตให้สคริปต์ติดตั้งของมันทำงาน > **ใช้ Gemini Web หรือผู้ให้บริการ web-cookie อื่นอยู่หรือเปล่า?** แพ็กเกจ npm รวม Playwright ไว้แต่ไม่ได้รวมไบนารี Chromium ของมัน ดูบันทึก [การตั้งค่า Playwright Chromium](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium) ก่อนทำคำขอ web-provider ครั้งแรก แดชบอร์ดที่ `http://localhost:20128` · API ที่ `http://localhost:20128/v1` **2) เชื่อมต่อผู้ให้บริการที่เข้าเกณฑ์โดยใช้บัญชีของคุณเอง** แดชบอร์ด → **Providers** → เลือกผู้ให้บริการที่ข้อกำหนดและโควตาปัจจุบันเหมาะกับกรณีการใช้งานของคุณ → เพิ่ม API key หรือทำขั้นตอนบัญชีให้เสร็จ ระดับฟรีอาจต้องสมัครสมาชิก, อนุมัติ, หรือมีวิธีชำระเงิน อ่าน [คู่มือระดับฟรี](docs/getting-started/FREE-TIERS-GUIDE.md); ไม่รับประกันความพร้อมใช้งานแบบไม่ใช้คีย์ และผู้ให้บริการที่ทำเครื่องหมาย `tos: avoid` จะถูกตัดออกจาก `auto` โดยค่าเริ่มต้น **3) ชี้เครื่องมือเขียนโค้ดของคุณ** ```txt Base URL: http://localhost:20128/v1 API Key: [คัดลอกจาก Dashboard → Endpoints] Model: auto (route ระหว่างการเชื่อมต่อที่เข้าเกณฑ์ — หรือเลือก provider/model) ``` **4) ตรวจสอบว่าทำงานอยู่** ```bash curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY" ``` คุณควรเห็นโมเดลที่เชื่อมต่อของคุณแสดงอยู่ในรายการ 🎉 เท่านี้เอง — เริ่มเขียนโค้ดได้เลย และ OmniRoute จะ route อัตโนมัติ & fallback ให้คุณ หากไคลเอนต์ของคุณไม่สามารถส่ง custom header ได้ OmniRoute ยังมี alias เพื่อความเข้ากันได้แบบ tokenized ให้ด้วย: ```txt OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/ OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tags ``` ใช้สิ่งเหล่านี้เฉพาะกับไคลเอนต์ที่ไม่สามารถแนบ `Authorization: Bearer ...` ได้ การยืนยันตัวตนผ่าน header ยังคงเป็นโหมดที่แนะนำ
## 📦 วิธีติดตั้งเพิ่มเติม — 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-10-18 · แค็ตตาล็อกดิบ: YT 1.352 | TT 334 | IG 290 · ความใหม่ (วัน): YT 5 | TT 48 | IG 49
Instagram Reel — nick_saraev
🎬 #1 — Instagram
nick_saraev — ยอดดู 3,042,474 ครั้ง
Instagram Reel — nnapier7
🎬 #2 — Instagram
nnapier7 — ยอดดู 1,454,535 ครั้ง
YouTube — Amidia AI & Tech
🎬 #3 — YouTube
Amidia AI & Tech — ยอดดู 794,974 ครั้ง
Instagram Reel — theopenstack
🎬 #4 — Instagram
theopenstack — ยอดดู 692,419 ครั้ง
TikTok — migue.baena
🎬 #5 — TikTok
migue.baena — ยอดดู 685,788 ครั้ง
**อันดับทั้งหมด (URL มาตรฐานที่ลบรายการซ้ำแล้ว, `v > 0`, การเข้าถึงสูงสุด):** | #1 | #2 | #3 | #4 | #5 | | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | | [nick_saraev — Instagram](https://www.instagram.com/reel/Da8ZthUPK98/) — **3,042,474** | [nnapier7 — Instagram](https://www.instagram.com/reel/Dbp7wv_CIO0/) — **1,454,535** | [Amidia AI & Tech — YouTube](https://www.youtube.com/watch?v=NJ0TQ-pyMDY) — **794,974** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [migue.baena — TikTok](https://www.tiktok.com/@migue.baena/video/7670919268216622358) — **685,788** | | #6 | #7 | #8 | #9 | #10 | | ------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- | | [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [nikothetech — TikTok](https://www.tiktok.com/@nikothetech/video/7671890769665477918) — **610,803** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **509,281** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** | เมตริกมาตรฐาน ณ วันที่ 2026-10-18: **วิดีโอที่ไม่ซ้ำกัน 1.976 รายการ** · **ยอดดูที่ทราบ 20.220.289 ครั้ง** (`v > 0`) · **ช่อง/โปรไฟล์แยกตามเครือข่าย 1.210 รายการ** แดชบอร์ดดิบมีข้อมูล 1.976 แถว (YouTube 1.352 = วิดีโอขนาดยาว 740 รายการ + Shorts 612 รายการ · TikTok 334 · Instagram 290) โดยไม่มีรายการซ้ำเหลืออยู่หลังจากปรับ URL ให้เป็นรูปแบบมาตรฐาน ซึ่งจะเก็บจำนวนยอดดูสูงสุดของแต่ละวิดีโอไว้ การรวบรวมข้อมูลจาก YouTube ถูกระงับไว้ที่วันที่ 2026-10-13 (โควตา API หมดตั้งแต่วันที่ 14 ถึง 18/10) ส่วน TikTok/Instagram ถูกระงับตั้งแต่วันที่ 2026-09-02 (ไม่มีเครดิตสำหรับการรวบรวมข้อมูล) และยังมีวิดีโอ 76 รายการที่ไม่มีข้อมูลจำนวนยอดดู > 🎬 **สร้างวิดีโอเกี่ยวกับ 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) — 147 โมดูลโดเมน, 209 การย้ายข้อมูล (migrations)
หน่วยความจำSQLite FTS5 แบบ full-text + เวกเตอร์ embedding ที่ควอนไทซ์แบบ int8, การลดทอนแบบมีชนิด (typed decay)
สคีมาZod 4 — การตรวจสอบอินพุต/เอาต์พุตของเครื่องมือ MCP + สัญญา API
โปรโตคอลMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
การสตรีมServer-Sent Events (SSE) + สะพานเชื่อม WebSocket (/v1/ws)
การบีบอัดไปป์ไลน์ 12 เอนจิน — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
การยืนยันตัวตนและความปลอดภัยOAuth 2.0 (PKCE) + JWT + API Keys + การยืนยันตัวตนแบบมีขอบเขตของ MCP · AES-256-GCM ขณะจัดเก็บ · DOMPurify
การพรางตัวwreq-js — การปลอมแปลงลายนิ้วมือ TLS แบบ JA3 / JA4, พร็อกซี 3 ระดับ
ความทนทานCircuit breaker, exponential backoff, anti-thundering-herd, การฟื้นฟูตัวเองของ auto-combo
การบันทึก日志pino — บันทึกแบบ JSON ที่มีโครงสร้างพร้อมบริบทของคำขอ
การทดสอบNode.js test runner + Vitest — การประกาศการทดสอบแบบคงที่กว่า 56,000 รายการ ในไฟล์ทดสอบที่ติดตามกว่า 7,800 ไฟล์ (unit, integration, E2E, security, ecosystem)
แพลตฟอร์มเดสก์ท็อป (Electron) · Android (Termux) · PWA (เบราว์เซอร์ใดก็ได้)
CI/CDGitHub Actions — เผยแพร่ npm อัตโนมัติ + Docker Hub เมื่อออกเวอร์ชัน
ลิงก์เว็บไซต์ · npm · Docker Hub

## 📖 เอกสาร
### 📘 เริ่มต้นใช้งาน
เอกสารคำอธิบาย
คู่มือผู้ใช้ผู้ให้บริการ (providers), combos, การเชื่อมต่อ CLI, การปรับใช้
คู่มือการติดตั้งวิธีการติดตั้งทั้งหมด, การตั้งค่าเครื่องมือ CLI, การตั้งค่าโปรโตคอล, การปรับแต่ง timeout
คู่มือเครื่องมือ CLIการตั้งค่าแยกตามเครื่องมือสำหรับ Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
โหมดระยะไกลควบคุม OmniRoute ระยะไกล (VPS) จาก CLI บนแล็ปท็อปของคุณผ่าน access token ที่จำกัดขอบเขต
การตั้งค่า Claude Codeชี้ Claude Code ไปที่ OmniRoute (local/remote) ด้วย launch + โปรไฟล์แยกตามโมเดล
เริ่มต้นอย่างรวดเร็วติดตั้ง 3 ขั้นตอน → เชื่อมต่อ → ตั้งค่า
### 🔧 การดำเนินงานและการปรับใช้
เอกสารคำอธิบาย
คู่มือ Dockerการรัน Docker, โปรไฟล์ Compose, Caddy HTTPS, อุโมงค์ (tunnels), แท็กอิมเมจ
คู่มือ 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การบีบอัดเอาต์พุตของคำสั่ง, ตัวกรอง, trust, verify, การกู้คืนเอาต์พุตดิบ
เอนจินการบีบอัดCaveman, RTK, ไปป์ไลน์แบบ stacked, ส่วนติดต่อ dashboard/API/MCP
รูปแบบกฎการบีบอัดสคีมากฎแพ็ก JSON สำหรับตัวกรอง Caveman และ RTK
ชุดภาษาสำหรับการบีบอัดการตรวจจับภาษาและการสร้างกฎแพ็ก Caveman
คู่มือความทนทานCircuit breaker, cooldown, คิว, anti-thundering herd, การปลอมแปลง TLS
เอนจิน Auto-Comboการให้คะแนน 16 ปัจจัย, แพ็กโหมด, การฟื้นตัวเอง
คู่มือพร็อกซีระบบพร็อกซี 3 ระดับ, มาร์เก็ตเพลส 1proxy, CRUD ของ registry
ฟรีเทียร์ไดเรกทอรีรวม: 34 พูลที่เกิดซ้ำพร้อมเอกสาร / 467 รายการฟรีเทียร์ที่จัดทำแคตตาล็อก
แกลเลอรีคุณสมบัติทัวร์แดชบอร์ดแบบภาพพร้อมภาพหน้าจอ
เอกสารโค้ดเบสคำแนะนำโค้ดเบสสำหรับผู้เริ่มต้น
### 🤖 โปรโตคอลและ API
เอกสารคำอธิบาย
เอกสารอ้างอิง APIทุก endpoint พร้อมตัวอย่าง
ข้อกำหนด OpenAPIข้อกำหนด OpenAPI 3.0
เซิร์ฟเวอร์ MCPเครื่องมือ MCP 110 รายการ, การตั้งค่า IDE, ไคลเอนต์ Python/TS/Go
คู่มือเซิร์ฟเวอร์ MCPการติดตั้ง MCP, transport และเอกสารอ้างอิงเครื่องมือ
เซิร์ฟเวอร์ A2Aโปรโตคอล JSON-RPC 2.0, skills, การสตรีม, การจัดการงาน
คู่มือเซิร์ฟเวอร์ A2Aagent card ของ A2A, งาน, skills และการสตรีม
### 📋 โปรเจกต์และคุณภาพ
เอกสารคำอธิบาย
การมีส่วนร่วมการตั้งค่าสำหรับการพัฒนาและแนวทางปฏิบัติ
รูปแบบการแตกแขนงและการออกรีลีสพูลรีเควสพุ่งเป้าไปที่ใด (release/*) และ main กับแท็กต่าง ๆ หมายความว่าอย่างไร
บันทึกการเปลี่ยนแปลงประวัติการออกรีลีสแบบครบถ้วนในแต่ละเวอร์ชัน
นโยบายความปลอดภัยการรายงานช่องโหว่และแนวปฏิบัติด้านความปลอดภัย
คู่มือ i18nการรองรับ 67 ภาษา, ขั้นตอนการแปล, RTL
รายการตรวจสอบก่อนออกรีลีสขั้นตอนการตรวจสอบก่อนออกรีลีส
แผนการครอบคลุมการทดสอบกลยุทธ์การครอบคลุมการทดสอบสำหรับการประกาศการทดสอบแบบสแตติกกว่า 56,000 รายการ ในไฟล์ทดสอบที่ติดตามกว่า 7,800 ไฟล์

# ⭐ ผู้มีส่วนร่วมชั้นนำ > OmniRoute ถูกหล่อหลอมโดยชุมชนโอเพนซอร์สที่มีความหลงใหล บุคคลเหล่านี้ได้สร้างคุณูปการอันโดดเด่นซึ่งส่งผลโดยตรงต่อคุณภาพ ความเสถียร และการเข้าถึงของโปรเจกต์ **ขอขอบคุณอย่างยิ่ง** ### ผู้มีส่วนร่วมภายนอก เรียงตามจำนวนพูลรีเควสที่ถูกผสาน
อันดับผู้มีส่วนร่วมพูลรีเควสที่ผสานแล้วบรรทัดที่เปลี่ยนแปลง (โดยประมาณ)
1maxmad64bis37125,326,561
2HouMinXi26913,456,272
3backryun210270,562
4oyi77190411,243
5pacocartones17478,276
6JxnLexn1513,562,936
6KooshaPari1515,972,314
8rdself14580,663
9RaviTharuma123500,065
10herjarsa88230,872
11hartmark842,849,554
12jonlwheat2-gif6768,548
13artickc6243,502
14chirag127526,661
15xz-dev50245,976
16xiaoyaner02014733,626
17woodsonl46809,391
18rqzbeh44147,896
19QuangBlue4313,112
20MumuTW4026,093
ข้อมูลสำรวจ ณ วันที่ 2026-10-18 15:09:09 UTC โดยอ้างอิงจากปลายสาย (tip) ของ release/v3.8.52 ที่ใช้งานอยู่ คือ 656f01cb43 การสำรวจผ่าน GitHub GraphQL แบบแบ่งหน้า ประกอบด้วยพูลรีเควสที่ผสานแล้ว 9,191 รายการ: 3,834 รายการโดยเจ้าของรีโพซิทอรี, 229 รายการโดย Dependabot, 6 รายการโดยบอต/แอปอื่น ๆ และ 5,122 พูลรีเควสภายนอกจากผู้มีส่วนร่วม 835 รายที่แตกต่างกัน “บรรทัดที่เปลี่ยนแปลง” คือผลรวมของการเพิ่มและการลบของ GitHub ซึ่งรวมถึงไฟล์ที่สร้างขึ้น ไฟล์ล็อก แคตตาล็อก คำแปล และเอกสาร; นี่คือปริมาณการแก้ไข (churn) ไม่ใช่จำนวนบรรทัดโค้ด (LOC) ที่เขียนขึ้นจริง มี 49 พูลรีเควสที่รายงาน diff บน GitHub เกิน 500,000 บรรทัด (ตัวอย่างเช่น #13399 ซึ่งเป็นการเพิ่มผู้ให้บริการเพียงรายเดียว มีไฟล์ที่เปลี่ยนแปลง 2,347 ไฟล์) ซึ่งทำให้ยอดรวมหลายรายการข้างต้นสูงเกินจริง รายการที่มีตัวเลขเท่ากันจะถูกจัดอันดับร่วมกัน ### คอมมิตที่ระบุที่มาเป็น GitHub
Dizzle
Dizzle

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

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

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

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

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

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

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

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

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

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

🏅 68 คอมมิตที่ระบุแหล่งที่มาจาก GitHub
ตรวจสอบซ้ำเมื่อ 2026-10-18 14:44:45 UTC: คอมมิตที่ระบุแหล่งที่มาจาก GitHub ซึ่งรายงานโดย Contributors API ของรีโพซิทอรีสำหรับแบรนช์เริ่มต้น release/v3.8.52 API ส่งคืนข้อมูลตัวตน 849 รายการ (ผู้ใช้ 429 ราย บอต 2 ราย และผู้ไม่ระบุตัวตน 418 ราย) ตารางนี้ไม่รวมผู้ดูแล บอต และตัวตนที่ไม่ระบุชื่อ พร้อมทั้งคงอันดับร่วมไว้ โดยแยกต่างหากจากทั้งการจัดอันดับ PR ที่ผสานแล้วด้านบนและการสำรวจสำมะโนเมทาดาทา Git ด้านล่าง > 🙏 ฟีเจอร์ การแก้ไขบั๊ก และการปรับปรุงโครงสร้างพื้นฐานของผู้มีส่วนร่วมเหล่านี้เป็น **ส่วนสำคัญ** ที่ทำให้ OmniRoute มีความน่าเชื่อถือและเปี่ยมด้วยฟีเจอร์ ทุก pull request ทุกกรณีทดสอบ และทุกไฟล์คำแปล i18n ล้วนมีความสำคัญ โอเพนซอร์สสร้างขึ้นโดยผู้คนเช่นพวกเขา
---
## 💖 ผู้สนับสนุน
ขอขอบคุณจากใจจริงแด่ทุกคนที่สนับสนุนเงินทุนให้ OmniRoute จากกระเป๋าของตนเอง — ทุกการสนับสนุนช่วยให้โปรเจกต์ยังคงฟรี เป็นอิสระ และเดินหน้าต่อไปได้
Andrew
Andrew

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

💛 ผู้สนับสนุนรายเดือนที่ยังคงสนับสนุนอยู่
小妍儿
小妍儿

💛 ผู้สนับสนุนรายเดือนที่ยังคงสนับสนุนอยู่
Guilherme Costa
Guilherme Costa

💛 ผู้สนับสนุนแบบครั้งเดียวที่ยังคงมีสถานะใช้งานอยู่
Henrique Triches Iurkiv
Henrique Iurkiv

💛 ผู้สนับสนุนแบบครั้งเดียวที่ยังคงมีสถานะใช้งานอยู่
Somesh Ghaturle
Somesh Ghaturle

💛 ผู้สนับสนุนแบบครั้งเดียวที่ยังคงมีสถานะใช้งานอยู่
Kolonie AI
Kolonie AI

💛 ผู้ที่เคยสนับสนุนแบบครั้งเดียว
Professor Igor Morais Vasconcelos
Prof. Igor Morais

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

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

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

💛 ผู้ที่เคยสนับสนุนแบบครั้งเดียว
… และผู้สนับสนุนท่านอื่น ๆ ที่ประสงค์จะไม่เปิดเผยตัวตน 💛 ข้อมูลผู้สนับสนุนสาธารณะบน GitHub ได้รับการตรวจสอบความถูกต้องอีกครั้งเมื่อ 2026-10-18 ผ่าน GitHub Sponsors GraphQL API: มีการสนับสนุนแบบสาธารณะ 11 รายการ (ยังมีสถานะใช้งานอยู่ 6 รายการ และในอดีต 5 รายการ) จากทั้งหมด 14 รายการ สถานะ isActive ของ GitHub เป็นตัวกำหนดป้ายกำกับสถานะที่ยังใช้งานอยู่ด้านบน ผู้ที่เคยสนับสนุนแบบครั้งเดียวต่อสาธารณะยังคงได้รับการขอบคุณ และผู้สนับสนุนแบบส่วนตัวยังคงไม่เปิดเผยตัวตน การบริจาคผ่าน Ko-fi, Buy Me a Coffee, Liberapay, PIX และคริปโตไม่ได้แสดงไว้ เนื่องจากไม่มีบันทึกผู้สนับสนุนแบบสาธารณะ 💖 ร่วมเป็นผู้สนับสนุน → — ทุกดอลลาร์ช่วยให้ OmniRoute ยังคงฟรีและเป็นอิสระ

## 👥 ผู้มีส่วนร่วมกว่า 900 คน
[![ผู้มีส่วนร่วม](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=993&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) ตรวจสอบเมื่อ 2026-10-18 ที่ปลายสาขา release/v3.8.52 ซึ่งใช้งานอยู่ ณ commit ad160ab2d1 (6,826 commits): ข้อมูลระบุตัวตน Git ของบุคคลที่ปรับให้เป็นมาตรฐานแล้ว 993 รายการ — 707 รายการปรากฏเป็นผู้เขียน commit (รวมถึงผู้ดูแลโครงการ) และ 286 รายการปรากฏเฉพาะในส่วนท้าย Co-authored-by ที่ระบุไว้อย่างชัดเจน การสำรวจนี้ใช้ .mailmap เปรียบเทียบที่อยู่อีเมลโดยไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ เชื่อมโยงที่อยู่ GitHub noreply แบบตัวเลขและแบบข้อความธรรมดาเฉพาะเมื่อทั้งคู่เข้ารหัสชื่อผู้ใช้เดียวกัน ไม่รวมข้อมูลระบุตัวตนของบอต/เอเจนต์/บริการ/ตัวแทนชั่วคราว 26 รายการ และไม่รวมที่อยู่อีเมลทั่วไปเข้าด้วยกันเพียงเพราะชื่อที่แสดงตรงกัน การตรวจสอบเมื่อ 2026-08-24 เผยแพร่ตัวเลข 639 รายการ แต่เมื่อนำวิธีนี้ไปรันซ้ำกับฐาน ac02c5b42f ของการตรวจสอบครั้งดังกล่าว จะได้ 619 รายการ ดังนั้นจำนวนที่เพิ่มขึ้นจึงมาจากผู้มีส่วนร่วมรายใหม่ ไม่ใช่จากการใช้วิธีที่ผ่อนปรนกว่าเดิม ### วิธีมีส่วนร่วม 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 เมื่อวันที่ 18 ตุลาคม 2026 — อย่าลืมไปกดดาวให้โปรเจกต์เหล่านี้ ตัวเลขดังกล่าวเป็นภาพรวม ณ วันที่ระบุอย่างแม่นยำและย่อมเปลี่ยนแปลงไปตามธรรมชาติ ### 🧬 ที่มาและเกตเวย์
โปรเจกต์⭐สร้างแรงบันดาลใจให้ OmniRoute อย่างไร
9router31,004โปรเจกต์ต้นฉบับที่ fork นี้สร้างขึ้นต่อยอดจากมัน — โดยขยายให้รองรับ API แบบหลายโมดัลและเขียนใหม่ทั้งหมดด้วย TypeScript
CLIProxyAPI55,591อิมพลีเมนเทชันภาษา Go ที่สร้างแรงบันดาลใจให้กับการพอร์ตมายัง JavaScript / TypeScript นี้
LiteLLM61,482เกตเวย์ AI ซึ่งชุดข้อมูลราคาสาธารณะถูกใช้เป็นข้อมูลให้กับการซิงค์การติดตามต้นทุนของเรา และโมเดลการปรับผู้ให้บริการให้เป็นมาตรฐานของโปรเจกต์นี้ยังเป็นแนวทางให้กับระบบกำหนดเส้นทางของเรา
codex-chatgpt-web14,526ซอร์สภายใต้สัญญาอนุญาต MIT ที่นำมาปรับใช้ในบริดจ์ ChatGPT Web → Codex Responses ที่รวมมากับโปรเจกต์ รวมถึงอะแดปเตอร์สำหรับเซสชันเบราว์เซอร์ การจัดเฟรมการตอบกลับ การใช้งาน และการค้นหาเว็บ
free-claude-code61,430รูปแบบต่าง ๆ ที่พอร์ตมาใช้กับการกู้คืนสตรีม นามแฝงแบบไม่ใช้การคิด การค้นหาเว็บสำรอง ขีดจำกัดแบบหน้าต่างเลื่อน การปกปิดข้อมูลในบันทึก และโฟลว์ตัวเรียกใช้งานที่เสริมความปลอดภัย
composer-api346รูปแบบการเลือกเครื่องมือ ข้อจำกัดเอาต์พุต และการยืนยันการใช้เครื่องมือของ Cursor Composer ซึ่งนำมาปรับใช้ในตัวดำเนินการ Cursor แบบเนทีฟ
codex-multi-auth553รูปแบบการเข้าสู่ระบบใหม่และการหมุนเวียน refresh token ที่พอร์ตมาใช้ในการยืนยันตัวตน OAuth ของ Codex ใหม่
opencode-anthropic-auth558ค่าเริ่มต้นของการแปลงที่เข้ากันได้กับ Claude Code และพฤติกรรมของส่วนหัวการเรียกเก็บเงิน ซึ่งนำมาทำให้ใช้ได้ทั่วไปในบริดจ์ที่ขับเคลื่อนด้วยการกำหนดค่าของ OmniRoute
grok2api-merged2การแมปโมเดล Grok, ตัวสร้าง Statsig ที่จำลอง TypeError, ค่าเริ่มต้นของคำขอและอุปกรณ์ รวมถึงตัวประมวลผลการตอบกลับ NDJSON ถูกนำมาปรับใช้อย่างมีนัยสำคัญในตัวดำเนินการ Grok Web ของ OmniRoute
TQZHR/grok2api706แหล่งโค้ดทางอ้อมหลักเบื้องหลัง grok2api-merged โดยอิมพลีเมนเทชันด้านโมเดล ส่วนหัว เพย์โหลด Statsig และตัวประมวลผลของโปรเจกต์นี้ยังคงถูกรักษาไว้ในสายที่มาของ Grok Web
chenyme/grok2api7,819ซอร์สพื้นฐานภายใต้สัญญาอนุญาต MIT สำหรับเพย์โหลดและค่าเริ่มต้นของอุปกรณ์ Grok, ตัวสร้าง Statsig และตัวประมวลผล result.response ซึ่งส่งต่อมาผ่าน TQZHR และ grok2api-merged
grok2api-pro27แหล่งที่มาทางอ้อมซึ่ง grok2api-merged ให้เครดิตสำหรับเลเยอร์พร็อกซีพูล OmniRoute ยังคงเก็บประกาศสายที่มาดังกล่าวไว้ แต่ไม่ได้อ้างว่าได้พอร์ตพร็อกซีพูลมาไว้ในตัวดำเนินการ Grok Web ที่มีขอบเขตจำกัด
GrokProxy51พร็อกซี Grok ที่ยืนยันตัวตนด้วยคุกกี้และรูปแบบการสตรีม result.response.token ของโปรเจกต์นี้เป็นแนวทางให้กับการรับส่งข้อมูล Grok Web ของ OmniRoute
GrokBridge5อิมพลีเมนเทชัน Grok Web ดั้งเดิมได้อ้างอิงการออกแบบต้นทางผ่าน HTTP/เบราว์เซอร์ของโปรเจกต์นี้ โดยเส้นทาง HTTP โดยตรงของโปรเจกต์ดังกล่าวมีที่มาจาก GrokProxy ดังนั้นจึงไม่ได้อ้างว่ามีการพอร์ตโค้ดแยกต่างหาก
### 🗜️ การบีบอัดบริบทและโทเค็น — เอนจิน
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
Caveman113,396โปรเจกต์ไวรัล "ทำไมใช้โทเค็นเยอะ ในเมื่อโทเค็นน้อยก็เอาอยู่" — ปรัชญาการพูดแบบมนุษย์ถ้ำของโปรเจกต์นี้เป็นรากฐานให้โหมดบีบอัดมาตรฐานของเรา รวมถึงกฎตัดคำฟุ่มเฟือย/ย่อความกว่า 30 ข้อ
RTK – Rust Token Killer83,835การบีบอัดเอาต์พุตคำสั่งประสิทธิภาพสูง — เป็นแรงบันดาลใจให้เอนจิน RTK, DSL สำหรับกรอง JSON, การกู้คืนเอาต์พุตดิบ และไปป์ไลน์แบบซ้อน RTK → Caveman ของเรา
headroom75,741การบีบอัดบริบทแบบย้อนคืนได้ (SmartCrusher) — เป็นแรงบันดาลใจให้เอนจิน headroom และรูปแบบเครื่องหมายเรียกคืน ccr ของเรา
LLMLingua6,757งานวิจัยด้านการบีบอัดพรอมป์ (LLMLingua / LLMLingua-2) — เป็นแรงบันดาลใจให้เอนจิน llmlingua แบบอะซิงโครนัส ปลอดภัยต่อโค้ด และปล่อยผ่านเมื่อเกิดข้อผิดพลาดของเรา
llmlingua-2-js32พอร์ต JS/ONNX (MobileBERT / XLM-RoBERTa) ที่ใช้เป็นแบ็กเอนด์เธรดเวิร์กเกอร์สำหรับเอนจิน LLMLingua ของเรา
Troglodita50การบีบอัดโทเค็นภาษาโปรตุเกสบราซิล — เป็นรากฐานให้แพ็กภาษา pt-BR ของเรา ได้แก่ การลดคำซ้ำความหมายและการตัดคำฟุ่มเฟือยที่ปรับแต่งตามไวยากรณ์โปรตุเกสบราซิล
ponytail166,731ทักษะเขียนโค้ดแบบ YAGNI ของ "นักพัฒนาอาวุโสจอมขี้เกียจ" ที่โด่งดังเป็นไวรัล — เป็นแรงบันดาลใจให้รูปแบบเอาต์พุต less-code ของเรา ซึ่งชี้นำให้สร้างการเปลี่ยนแปลงที่เล็กที่สุดแต่ใช้งานได้ เพื่อลดโค้ดที่ _สร้างขึ้น_ (เป็นแกนด้านเอาต์พุตที่คู่ขนานกับร้อยแก้วกระชับของ Caveman)
i-have-adhd57,628รูปแบบการตอบที่เน้นการลงมือทำก่อนและเป็นมิตรต่อผู้มี ADHD ถูกนำมาปรับใช้เป็นรูปแบบเอาต์พุตแบบกระชับของ OmniRoute ในห้าภาษา
### 🧩 รูปแบบกะทัดรัด งานวิจัยโทเค็น และเครื่องมือที่เข้าใจโค้ด
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
TOON25,509สัญกรณ์อ็อบเจกต์ที่เน้นโทเค็น — โมเดลแบบคอลัมน์ที่ประกอบด้วยส่วนหัวและแถวของโปรเจกต์นี้มีอิทธิพลต่อขั้นตอนการย่อตารางของเรา
GCF – Graph Compact Format59รูปแบบกราฟกะทัดรัดและการออกแบบโปรไฟล์ทั่วไปของโปรเจกต์นี้เป็นแนวทางให้การย่อตารางและรูปแบบโคเดก Headroom ของ OmniRoute
gcf-typescript4อิมพลีเมนเทชัน TypeScript ภายใต้สัญญาอนุญาต MIT ที่นำเข้ามาในซอร์สโดยตรงและต่อยอดเป็นโคเดกโปรไฟล์ทั่วไปของ Headroom
token-optimizer-mcp551แคช Brotli/SQLite + ส่วนต่างบริบทต่อเซสชัน — เป็นแรงบันดาลใจให้เอนจิน session-dedup ของเรา
token-savior1,182การย่อเอาต์พุต Bash + โปรไฟล์ MCP — เป็นแรงบันดาลใจให้หลักปฏิบัติในการยุติการบีบอัดของเราและการลดรายการเครื่องมือ MCP
token-saver154การบีบอัดเอาต์พุตที่รับรู้เนื้อหาแยกตามประเภทไฟล์ พร้อมการยุติเมื่อพบความล้มเหลว — ช่วยยืนยันแนวทางการกระจายงานตามประเภทและการข้ามเมื่อได้ประโยชน์ต่ำกว่าเกณฑ์ของเรา
token-optimizer2,595"ค้นหาโทเค็นผี" — รูปแบบการถ่ายโอนข้อมูล + แฮนเดิลที่กู้คืนได้ของโปรเจกต์นี้เป็นแนวทางให้แนวคิดการถ่ายโอนข้อมูลออกของ CCR
TokenMizer33พิมพ์เขียวกราฟเซสชัน + การขจัดบรรทัดซ้ำข้ามเทิร์น ซึ่งเป็นแนวทางให้การออกแบบ session-dedup ของเรา
OmniCompress3JSON แบบคอลัมน์ใน Rust + การเรียกคืนโดยอ้างอิงเนื้อหา + การขจัดข้อมูลซ้ำข้ามข้อความ — ช่วยยืนยันการออกแบบเอนจิน headroom/ccr/session-dedup ของเรา และค่าคงตัวที่เป็นมิตรต่อแคชว่า "รูปแบบที่บีบอัดแล้วไม่ขึ้นกับตำแหน่ง"
mcp-compressor133การบีบอัดสคีมา/คำอธิบายเครื่องมือ MCP — เป็นแนวทางให้การลดจำนวนรายการเครื่องมือ MCP ของเรา
RepoMapper217การจัดอันดับแผนที่รีโพแบบ Aider — เป็นแนวทางให้การสำรวจแผนที่รีโพ / การจัดอันดับการค้นคืนของเรา
quiet-shell-mcp4การลดเอาต์พุตเชลล์ผ่าน MCP แบบประกาศ — ช่วยยืนยันแนวทางการย่อเอาต์พุต bash แบบประกาศของเรา
ts-morph6,205ชุดเครื่องมือ TypeScript Compiler API — เป็นแรงบันดาลใจให้การลบความคิดเห็นด้วยพาร์เซอร์ของเรา ซึ่งยังคงรักษาลิเทอรัลสตริง เทมเพลต และนิพจน์ทั่วไปไว้
### 🧠 หน่วยความจำและ RAG
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
Mem067,385เลเยอร์หน่วยความจำแบบสากล — โมเดลพร็อกซีที่ทำหน้าที่เป็นขอบเขตการเขียน/อ่านของโปรเจกต์นี้เป็นต้นแบบให้กับสถาปัตยกรรมหน่วยความจำของเรา
Letta (MemGPT)25,179เอเจนต์แบบมีสถานะพร้อมหน่วยความจำหลายระดับ — เป็นแรงบันดาลใจให้กับโมเดล Context Control & Recovery (CCR) แบบหลายระดับของเรา
WFGY1,800อนุกรมวิธาน ProblemMap ซึ่งครอบคลุมรูปแบบความล้มเหลวที่เกิดซ้ำ 16 รูปแบบของ RAG/LLM — เป็นคำศัพท์ร่วมที่ใช้ในคู่มือการแก้ไขปัญหาของเรา
### 🛰️ การตรวจสอบทราฟฟิก, MITM และพร็อกซีแบบโปร่งใส
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
llm-interceptor79การดักจับ/วิเคราะห์แบบ MITM สำหรับทราฟฟิกระหว่างผู้ช่วยเขียนโค้ด ↔ LLM ช่วยกำหนดข้อกำหนดเบื้องต้นของ Traffic Inspector โมดูลสี่รายการที่เคยต่อยอดมา ได้แก่ การรวม SSE, การทำให้บทสนทนาเป็นมาตรฐาน, การปกปิดข้อมูลลับ และการปรับส่วนหัวให้ปลอดภัย ได้ถูกแทนที่ด้วยการนำไปใช้งานแบบคลีนรูมที่เป็นอิสระโดยอิงตามมาตรฐานโปรโตคอลสาธารณะ ส่วนพื้นผิวการส่งผ่านโฮสต์สองรายการ (passthrough.ts และ _internal/bypass.cjs) ยังคงเป็นการนำไปใช้งานภายใน OmniRoute ที่จัดประเภทแยกต่างหาก และไม่ได้ถูกเขียนใหม่ในการแทนที่ดังกล่าว
ProxyBridge6,814การกำหนดเส้นทางพร็อกซีแบบโปร่งใสแยกตามโปรเซส — เป็นแรงบันดาลใจให้กับการปิดระบบ MITM ที่ปลอดภัยเมื่อเกิดข้อขัดข้อง, ระยะหมดเวลาขณะซ็อกเก็ตไม่มีการใช้งาน, การระบุโปรเซสผ่าน /proc และการดักจับด้วย TPROXY ของเรา
### 📚 ข้อมูลโมเดล การสังเกตการณ์ และ UI
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
models.dev7,286ฐานข้อมูลแบบเปิดสำหรับข้อมูลจำเพาะ ราคา และความสามารถของโมเดล AI — ซิงค์เข้าสู่แค็ตตาล็อกโมเดลของเราโดยตรง
React Flow / xyflow38,705ไลบรารีกราฟแบบโหนดที่ขับเคลื่อน Compression Studio และ Combo/Routing Studio แบบเรียลไทม์ของเรา
LangGraph43,443การแสดงภาพกราฟเวิร์กโฟลว์แบบสดของ LangGraph Studio เป็นแรงบันดาลใจให้กับมุมมองคาสเคดแบบเรียลไทม์ใน Studios ของเรา
Langfuse35,990โมเดลการสังเกตการณ์แบบ trace → span → generation ของโปรเจกต์นี้เป็นต้นแบบให้กับมุมมองวอเตอร์ฟอลล์ใน Compression Studio ของเรา
Kiali3,645การสังเกตการณ์เซอร์วิสเมช Istio — เป็นแรงบันดาลใจให้กับป้ายสถานะเซอร์กิตเบรกเกอร์และการแสดงเส้นเชื่อมข้อผิดพลาดใน Routing/Combo Studio ของเรา
lobe-icons2,615โลโก้แบรนด์ AI/LLM ที่ใช้แสดงไอคอนผู้ให้บริการทั่วทั้งแดชบอร์ดของเรา
flag-icons12,473จัดเตรียมธง SVG ภายใต้สัญญาอนุญาต MIT ที่ใช้โดยตัวเลือกภาษาใน README
### 🛡️ ความปลอดภัย
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
awesome-secure-defaults722รายการไลบรารีที่คัดสรรมาแล้วและมีค่าเริ่มต้นที่ปลอดภัย ซึ่งใช้เป็นแนวทางในการตัดสินใจด้านความปลอดภัยของเรา (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink)
### 🧭 เครื่องมือเสริม
โปรเจกต์⭐แรงบันดาลใจที่มอบให้ OmniRoute
ClawRouter6,628เป็นแรงบันดาลใจให้กับการขจัดคำขอซ้ำ, ระบบสำรองฉุกเฉินที่ไม่มีค่าใช้จ่าย, กลยุทธ์ Auto-Combo แบบเสียบเปลี่ยนได้ และการจำแนกเจตนาแบบหลายภาษา
Antigravity-Manager32,333การรีแมปโมเดลโดยคำนึงถึงบัญชี, การตรวจสอบพาธของไฟล์ปฏิบัติการ และลักษณะการทำงานของป้ายแผนจากโปรเจกต์นี้ เป็นข้อมูลประกอบในการพัฒนารันไทม์ Antigravity ของ OmniRoute
vscode-antigravity-cockpit4,850รูปแบบการนับถอยหลังแบบกะทัดรัดจนถึงเวลารีเซ็ตโควตาของโปรเจกต์นี้ เป็นแรงบันดาลใจให้กับการแสดงขีดจำกัดของผู้ให้บริการใน OmniRoute
AionUi33,611การผสานรวม ACP ของโปรเจกต์นี้เป็นแรงบันดาลใจให้กับการตรวจหาเอเจนต์ CLI ที่ติดตั้งไว้โดยอัตโนมัติของ OmniRoute
CodexBar22,616ระบุส่วนแสดงโควตาของ Grok Build จากนั้น OmniRoute จึงตรวจสอบและแก้ไขรูปแบบข้อมูลจริงบนสายสัญญาณอย่างเป็นอิสระ
## 📄 สัญญาอนุญาต MIT - ดูรายละเอียดได้ที่ [LICENSE](LICENSE) ---
**[⬆ กลับขึ้นด้านบน](#-omniroute)** · สร้างด้วย ❤️ เพื่อชุมชน AI โอเพนซอร์ส OmniRoute v3.8.53 · Node ≥22.22.2 · สัญญาอนุญาต MIT · omniroute.online