# README (Tiếng Việt) 🌐 **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) · 🇹🇭 [th](../th/README.md) · 🇹🇷 [tr](../tr/README.md) · 🇺🇦 [uk-UA](../uk-UA/README.md) · 🇵🇰 [ur](../ur/README.md) · 🇺🇿 [uz](../uz/README.md) · 🇳🇬 [yo](../yo/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md) ---
Bảng điều khiển OmniRoute

# 🚀 OmniRoute — Cổng AI miễn phí **Được tạo bởi [Diego Souza](https://github.com/diegosouzapw)** OmniRoute — Không bao giờ ngừng lập trình. Mọi công cụ AI → 388 nhà cung cấp — 150+ miễn phí — thông qua một endpoint duy nhất. Claude Code, Codex, Cursor, Cline, Copilot & Antigravity đến Claude / GPT / Gemini MIỄN PHÍ với tính năng tự động chuyển dự phòng. Tính năng nén xếp chồng RTK + Caveman tiết kiệm 15–95% token (~89% trung bình) — không bao giờ chạm giới hạn. 388 nhà cung cấp AI · 150+ gói miễn phí · ~1,62B token miễn phí/tháng · 20 chiến lược định tuyến · Bắt đầu với $0.
## 💰 ~1.62B Token / Tháng Trên Các Gói Miễn Phí Của Bên Thứ Ba
> **Tự sử dụng tài khoản nhà cung cấp của bạn.** Đây là tổng ước tính từ các gói miễn phí của bên thứ ba đủ điều kiện một cách độc lập, không phải khoản cấp token từ OmniRoute. Hãy đăng ký, lấy thông tin xác thực khi được yêu cầu và kết nối các nhà cung cấp mà bạn có thể sử dụng; mỗi nhà cung cấp tự kiểm soát giới hạn, khả dụng và điều khoản của mình. > > Tự xếp chồng các gói miễn phí thật phiền phức — hàng chục SDK, hàng chục giới hạn tốc độ và không biết chính xác bạn thực sự có bao nhiêu. OmniRoute lập danh mục **465 mục thuộc gói miễn phí trên 34 khóa nhóm định kỳ** và tính tiêu đề token từ **17 nhóm có ngân sách hàng tháng dương được công bố, cùng năm giới hạn Groq theo từng mô hình**, loại trùng dựa trên nhóm dùng chung. Các hạn mức chỉ mở sau khi xác minh danh tính theo khu vực (hiện tại: ModelScope) được hiển thị riêng, cộng thêm ~6M sau khi xác minh danh tính theo khu vực và không bao giờ được cộng vào tiêu đề. Kết quả vẫn hiển thị trên bảng điều khiển (`/dashboard/free-tiers`). Thẻ ngân sách gói miễn phí của OmniRoute: ~1.62B token miễn phí mỗi tháng một cách ổn định, lên đến ~2.22B trong tháng đầu tiên với tín dụng đăng ký, từ 34 khóa nhóm định kỳ được lập tài liệu, bao phủ 465 mục gói miễn phí được lập danh mục phía sau một endpoint. Phép tính trung thực, loại trùng theo nhóm — mỗi nhóm dùng chung chỉ được tính một lần, bao gồm 17 nhóm định kỳ có ngân sách token hàng tháng dương được công bố cùng năm giới hạn Groq theo từng mô hình; 12 nhà cung cấp được đánh dấu là nên tránh trong danh mục rủi ro điều khoản để bạn tự quyết định. Thanh ngân sách bao gồm Mistral 1B, Nara 210M, LLM7 150M, xKiro 150M, Groq 30M (năm giới hạn theo từng mô hình) và các nhóm nhỏ hơn, cùng tín dụng đăng ký tháng đầu tiên và các nhà cung cấp miễn phí vĩnh viễn không giới hạn token được hiển thị riêng để chúng không làm tăng tiêu đề. Mức đã sử dụng/còn lại theo thời gian thực trên /dashboard/free-tiers. > Bản tóm tắt động của trang `/dashboard/free-tiers` theo thời gian thực. Phương pháp đầy đủ (loại trùng nhóm, các mức tín dụng, điều khoản nhà cung cấp): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**. > > Các số liệu này được kiểm tra lại hai tuần một lần dựa trên danh mục trực tiếp và **có thể tăng hoặc giảm** — một nhà cung cấp kết thúc gói miễn phí thì con số giảm; một nhà cung cấp mới xuất hiện thì con số tăng. Chúng tôi công bố đúng những gì danh mục thực sự tính toán, không bao giờ làm tròn tăng theo trường hợp tốt nhất.

⭐ Hãy đánh dấu sao cho repo nếu OMNIROUTE đã giúp bạn tiết kiệm tiền và làm công việc dễ dàng hơn.

[![Sao](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![Xếp hạng lịch sử sao](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) ### 💬 Tham gia cộng đồng **👋 Theo dõi maintainer — nhận thông tin về nhà cung cấp mới, bản phát hành và mẹo hữu ích sớm nhất:** [![Theo dõi Diego trên 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/) [![Theo dõi @diegosouzapw trên 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 Toàn cầu](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) **Câu hỏi, mẹo về nhà cung cấp, lộ trình phát triển và hỗ trợ → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Toàn cầu](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Cổng thông tin](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 Gateway Không Ngừng Phát Triển
| | v3.8.50 | **v3.8.51** | `v3.8.54+` | | --------------------------------- | :----------------------------: | :---------: | :-------------------: | | 🌐 Nhà cung cấp | 352 | **358** | 388 | | 🧠 ID mô hình trò chuyện duy nhất | 1320 | **1374** | 1491 | | 🖼️ Cầu nối đa phương thức | 🆕 hình ảnh + âm thanh + video | ✓ | ✓ | | 📡 Danh mục miễn phí của Radar | 🆕 opt-in | ✓ | ✓ | | ⚖️ Lập lịch nhận biết hạn ngạch | 🆕 Quota-Share | ✓ | ✓ | | 📊 Đo từ xa hạn ngạch | 🆕 trực tiếp | ✓ | ✓ | | 🧰 Chế độ không giao diện | — | — | 🆕 `serve --headless` | | 🛤️ Hạ tầng tuyến LTS | — | — | 🆕 kênh phát hành | | 🔎 API khám phá mô hình | — | — | 🆕 `/v1/models/query` | **→ [Lộ trình](ROADMAP.md) — đi trên tuyến đến `v3.9.0 LTS`**

## 🧩 Khả dụng [![Phiên bản npm](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) ![NPM hàng tháng](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) ![Giấy phép: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE) ![Lượt tải Docker](https://img.shields.io/docker/pulls/diegosouzapw/omniroute?label=docker%20pulls&logo=docker&color=2496ED) ![Lượt tải Electron](https://img.shields.io/github/downloads/diegosouzapw/omniroute/total?style=flat&label=electron%20downloads&logo=electron&color=47848F)
🚀 Bắt đầu 🚀 Bắt đầu nhanh 📦 Cài đặt 🆓 Kết nối nhà cung cấp
💡 Tìm hiểu 💥 Lời hứa 🤔 Tại sao chọn OmniRoute 🏆 Điều tạo nên sự khác biệt
⚙️ Tính năng 🎯 Combo 🌐 Nhà cung cấp 🔌 CLI & MCP
🗜️ Nén 🖥️ Nơi chạy 🔒 Riêng tư
👀 Xem 🎬 Hoạt động thực tế ✨ Có gì mới 🤖 CLI tương thích
💚 Hỗ trợ 💚 Hỗ trợ / Quyên góp 💬 Cộng đồng 💖 Nhà tài trợ
📦 Dự án 🛠️ Công nghệ sử dụng 📖 Tài liệu 👥 Cộng tác viên
🌐 Bằng 67 ngôn ngữ

Tiếng Anh (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)


## 🆓 Cài đặt, kết nối một nhà cung cấp, sau đó định tuyến qua một endpoint duy nhất
Ba bước: cài đặt và khởi động OmniRoute, kết nối một nhà cung cấp đủ điều kiện bằng tài khoản hoặc khóa API của bạn, sau đó trỏ công cụ của bạn đến localhost:20128/v1 bằng khóa API OmniRoute và model auto. Việc định tuyến phụ thuộc vào các kết nối đủ điều kiện hiện có và giới hạn của nhà cung cấp. ```bash # Sau khi kết nối một nhà cung cấp, sao chép khóa OmniRoute của bạn từ 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` cần một tuyến đủ điều kiện. Một bản cài đặt mới có thể không có mục tiêu nào đủ điều kiện và không yêu cầu khóa, đồng thời một nhà cung cấp không yêu cầu khóa có thể từ chối các ứng dụng khách bên thứ ba. Các nhà cung cấp được đánh dấu `tos: avoid`, bao gồm Kiro, mặc định sẽ bị loại khỏi việc định tuyến tự động; việc kết nối tài khoản không ghi đè thiết lập đó. Hãy xem [Hướng dẫn về các gói miễn phí](docs/getting-started/FREE-TIERS-GUIDE.md) trước khi chọn nhà cung cấp. 📦 Các tập lệnh quickstart sao chép-dán cho **Python, Node.js, PHP và cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Lời hứa
Lời hứa — Một endpoint và 388 nhà cung cấp. Tự động chuyển dự phòng giúp duy trì định tuyến khi vẫn còn một mục tiêu khác đang hoạt động tốt. Sáu trụ cột: chuyển dự phòng linh hoạt trên 388 nhà cung cấp · tiết kiệm tối đa 95% token đối với các khối lượng công việc đủ điều kiện · bắt đầu với $0 cùng hơn 150 gói miễn phí và 52 nhà cung cấp miễn phí vĩnh viễn định kỳ/không cần khóa · 39 tích hợp CLI/agent thông qua một cấu hình · khả năng tương thích với OpenAI, Claude, Gemini và Responses API tại /v1 · các tính năng kiểm soát cho môi trường production, bao gồm bộ ngắt mạch, TLS stealth, MCP với 110 công cụ, A2A, bộ nhớ, guardrails, evals và hơn 56.000 khai báo kiểm thử tĩnh trên hơn 7.800 tệp kiểm thử được theo dõi.

# 🤔 Tại sao là OmniRoute?
Tại sao là OmniRoute — không còn phải xoay xở với 10 dashboard, các khóa API đã hết hiệu lực và những hóa đơn bất ngờ. Mười vấn đề hằng ngày so với các giải pháp: quota hết hạn mà không được sử dụng → tối đa hóa các gói đăng ký; giới hạn tốc độ giữa lúc viết mã → tự động chuyển dự phòng qua 4 tầng (Subscription → API → Cheap → Free); đầu ra của công cụ tiêu tốn token → nén RTK + Caveman (15–95%); API đắt đỏ → định tuyến tối ưu chi phí; mỗi công cụ có một thiết lập riêng → một endpoint, một dashboard; AI bị chặn → proxy 3 cấp + TLS stealth; khóa đã hết hiệu lực → khả năng phục hồi 3 lớp (bộ ngắt mạch, thời gian chờ khóa, khóa model); cả nhóm dùng chung một gói đăng ký → các nhóm khóa với quota chia sẻ công bằng; prompt đi qua cloud của người khác → ưu tiên local với các khóa được mã hóa bằng AES-256-GCM; không có khả năng theo dõi chi tiêu → phân tích trực tiếp (mức sử dụng, quota, khoản tiết kiệm, độ trễ p95).
Luồng yêu cầu OmniRoute: IDE hoặc CLI của bạn (Claude Code, Cursor, Cline…) gọi một endpoint cục bộ duy nhất (http://localhost:20128/v1); OmniRoute Smart Router (nén RTK + Caveman, 20 chiến lược định tuyến, bộ ngắt mạch, TLS stealth, MCP, A2A, guardrails) có thể chuyển dự phòng qua 4 tầng nhà cung cấp miễn là vẫn còn một mục tiêu đủ điều kiện đang hoạt động tốt — Tầng 1 Subscription, Tầng 2 API Key, Tầng 3 Cheap và Tầng 4 Free.

## 🤝 Được hỗ trợ bởi những người bạn mã nguồn mở của chúng tôi

Kimi K3 — Open Frontier Intelligence · 2.8T parameters · 1M-token context

> **Bạn muốn tham gia với tư cách là một Người bạn mã nguồn mở?** Đây là những công ty ủng hộ mã nguồn mở và giúp OmniRoute tiếp tục hoạt động — và chúng tôi công khai nơi mọi khoản đóng góp của họ được sử dụng. Liên hệ: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi (Moonshot AI)
Kimi
Moonshot AI

Founding Open Source Friend
Cảm ơn Kimi (Moonshot AI), Người bạn mã nguồn mở sáng lập của chúng tôi, đã ủng hộ dự án này! Kimi là phòng thí nghiệm AI đứng sau các dòng mô hình K2 và K3 có trọng lượng mở — Kimi K3 cung cấp cửa sổ ngữ cảnh 1M-token, tầm nhìn gốc và mã hóa cấp độ tiên tiến với chi phí thấp hơn nhiều so với các mô hình đóng, và hoạt động ngay lập tức với Claude Code, Codex và mọi công cụ mã hóa mà OmniRoute phục vụ.

Hỗ trợ của Kimi cung cấp: Các khoản tín dụng API của Kimi cung cấp năng lượng cho quy trình phát hành được AI xác thực của OmniRoute — giai đoạn xác thực hợp nhất được cung cấp bởi Kimi K3 xem xét mọi yêu cầu kéo trước khi nó được xuất bản — cộng với việc phát triển tính năng hàng ngày. Hỗ trợ Kimi hạng nhất được vận chuyển trên cả hai đường ray: API Kimi trực tiếp (kimi-k3) và gói mã hóa Kimi Code (OAuth và khóa API). OmniRoute cũng là dự án mã nguồn mở đầu tiên của Brazil trong chương trình hỗ trợ của Kimi. Nhận khóa API Kimi với 15% tín dụng bổ sung →
Cheaper Inference
Cheaper Inference
cheaperinference.com

Open Source Friend
Cảm ơn Cheaper Inference, một Người bạn mã nguồn mở của OmniRoute, đã ủng hộ dự án này! Cheaper Inference là một cổng xếp hạng chi phí bán lại 42 mô hình tiên tiến — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok và MiniMax — đằng sau một điểm cuối tương thích với OpenAI, định tuyến mỗi yêu cầu đến nhà cung cấp đủ điều kiện rẻ nhất mà không bao giờ tính phí cao hơn giá niêm yết của nhà sản xuất mô hình.

Hỗ trợ hạng nhất trong OmniRoute: Chat Completions, điểm cuối /v1/responses gốc, tầm nhìn, gọi công cụ và 3 mô hình hình ảnh (grok-imagine, nano-banana-pro, nano-banana-2, có thể truy cập dưới dạng cheaperinference/<model>). Nhận khóa API →
Các liên kết được gắn thẻ aff=omniroute là liên kết đối tác. Chúng tài trợ cho dự án mà không tốn thêm chi phí cho bạn.
🎟️ Khuyến mãi liên kết — phiếu đăng ký miễn phí từ các nhà cung cấp mà chúng tôi không tài trợ (nhấp để mở rộng) Phần này chỉ dành cho mã giới thiệu/phiếu giảm giá. Các đối tác tài trợ nằm trong phần 🤝 Được hỗ trợ bởi những người bạn mã nguồn mở của chúng tôi ở trên. OmniRoute không có bất kỳ sự tài trợ hoặc hợp tác nào với các nhà cung cấp được liệt kê ở đây — đây là các phiếu giảm giá công khai mà bất kỳ ai cũng có thể sử dụng.
AgentRouter
AgentRouter
agentrouter.org
AgentRouter — đăng ký liên kết · $100 tín dụng miễn phí khi đăng ký (máy chủ miễn phí, có thể có độ trễ cao hơn — tốt nhất để thử nghiệm, không phải sản xuất). Hỗ trợ hạng nhất trong OmniRoute kể từ v3.8.50: Chat Completions, định dạng dây tương thích với Anthropic và đường dẫn tương thích với OpenAI. Các mô hình có sẵn bao gồm claude-opus-4-8, claude-opus-5, gpt-5.6-sol và nhiều hơn nữa. Nhận $100 của bạn →

⚠️ Liên kết liên kết — OmniRoute không có bất kỳ sự tài trợ hoặc hợp tác nào với nhà cung cấp này.
Bạn có biết nhà cung cấp nào khác có phiếu đăng ký miễn phí hào phóng mang lại lợi ích cho người dùng OmniRoute không? Mở một vấn đề và chúng tôi sẽ thêm nó vào đây.

## 🎯 Combo — Tính năng chủ lực
Ví dụ động cho 18 trong số 20 chiến lược định tuyến combo — mỗi ô tương ứng với một chiến lược: 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 và quota-weighted không có hiệu ứng động; bảng bên dưới mô tả đầy đủ cả 20 chiến lược. > **Combo** là một chuỗi mô hình mà OmniRoute định tuyến qua **tự động**. Nếu hạn ngạch cạn, nhà cung cấp gặp sự cố hoặc chi phí tăng đột biến, combo có thể chuyển sang mô hình khả dụng và hoạt động ổn định tiếp theo. 🛡️ ### ⚡ Không cần cấu hình — chỉ cần dùng `auto` Không cần tạo combo. Đặt mô hình của bạn thành `auto` (hoặc một biến thể), OmniRoute sẽ xây dựng một combo ảo từ các nhà cung cấp đã kết nối và chấm điểm theo thời gian thực:
ID mô hìnhMục tiêu tối ưu hóa
auto🎯 Mặc định cân bằng (LKGP — gắn với nhà cung cấp hoạt động tốt gần nhất)
auto/coding🧑💻 Trọng số ưu tiên chất lượng khi sinh mã
auto/fast⚡ Ưu tiên độ trễ thấp nhất
auto/cheap💰 Ưu tiên chi phí thấp nhất trên mỗi token
auto/subscription🎟️ Chỉ sử dụng hạn ngạch gói đăng ký mà bạn đã trả phí — đóng khi thất bại, không bao giờ chuyển dự phòng sang tùy chọn có thể phát sinh phí (hướng dẫn)
auto/thrifty🪜 Ưu tiên hạn ngạch gói, sau đó chuyển từng bậc sang các tùy chọn trả phí rẻ nhất — quay lại gói sau khi hạn ngạch được đặt lại (hướng dẫn)
auto/offline🔋 Ưu tiên dung lượng hạn ngạch / giới hạn tốc độ còn trống nhiều nhất
auto/smart🔭 Ưu tiên chất lượng + 10% thăm dò để tìm các mô hình tốt hơn
auto/lkgp📌 Chủ động duy trì nhà cung cấp hoạt động tốt gần nhất
auto/chaos🧪 Phân nhánh song song đến một nhóm mô hình (mỗi nhà cung cấp một mô hình, mặc định là 5), trả về một câu trả lời; mỗi mô hình trong nhóm thực hiện một lệnh gọi thượng nguồn, không phải chèn lỗi
## ### 🔀 Hoặc tự xây dựng — 20 chiến lược định tuyến Tất cả **20** chiến lược — kết hợp tùy ý theo từng bước của combo:
# Chiến lược Cách hoạt động
1 priority Danh sách có thứ tự ưu tiên mục tiêu đầu tiên — dùng hết từng mục tiêu trước khi chuyển sang mục tiêu tiếp theo 🥇
2 fill-first Dùng hết hạn ngạch của từng mục tiêu trước khi chuyển sang mục tiêu tiếp theo
3 weighted Chọn ngẫu nhiên có trọng số theo trọng số của từng mục tiêu
4 round-robin Luân phiên qua các mục tiêu theo thứ tự
5 p2c Cân bằng tải ngẫu nhiên bằng phương pháp chọn một trong hai mục tiêu
6 least-used Chọn mục tiêu có tải hiện tại thấp nhất
7 random Chọn ngẫu nhiên đồng đều (loại bỏ mục trùng lặp)
8 strict-random Chọn ngẫu nhiên mà không loại bỏ các lần lặp lại 🎲
9 cost-optimized Giảm thiểu chi phí $ cho mỗi yêu cầu dựa trên giá trực tiếp trong danh mục 💸
10 headroom Chọn mục tiêu có nhiều hạn ngạch còn lại nhất
11 quota-weighted Bỏ qua các tài khoản đã cạn hạn ngạch, sau đó chọn theo tỷ lệ hạn ngạch còn lại ÷ tải đang xử lý — các cuộc trò chuyện hiện tại vẫn được ghim ⚖️
12 reset-window Ưu tiên mục tiêu có chu kỳ hạn ngạch được đặt lại sớm nhất
13 reset-aware Xếp hạng theo thời điểm đặt lại hạn ngạch — ưu tiên các chu kỳ ngắn 📊
14 context-relay Chuyển tiếp ngữ cảnh giữa các mục tiêu cho những cuộc trò chuyện dài 🧠
15 context-optimized Chọn mục tiêu phù hợp nhất với kích thước ngữ cảnh hiện tại
16 cache-optimized Ghim từng tiền tố prompt có thể tái sử dụng vào cùng một tài khoản — tối đa hóa số lần trúng bộ nhớ đệm prompt 🎯
17 lkgp Đường dẫn hoạt động tốt gần nhất — ghim vào nhà cung cấp thành công gần nhất, sau đó chuyển dự phòng theo các quy tắc
18 auto Chấm điểm trực tiếp theo 16 yếu tố trên mọi kết nối 🤖
19 fusion Phân nhánh đến một nhóm mô hình + một mô hình giám khảo tổng hợp thành một câu trả lời 🧬
20 pipeline Nối chuỗi các bước — đầu ra của mỗi mục tiêu được chuyển làm đầu vào cho mục tiêu tiếp theo 🔗
Công cụ Auto-Combo chấm điểm từng ứng viên dựa trên **16 yếu tố** (tình trạng, hạn mức, chi phí, độ trễ, mức độ phù hợp với tác vụ, chất lượng, tính khả dụng của phiên…) — xem [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md). ## ### 🧱 Khả năng phục hồi được tích hợp sẵn (3 lớp độc lập) Khả năng phục hồi của OmniRoute — 3 lớp tự phục hồi độc lập, dùng đúng lớp cho đúng loại sự cố. Lớp 1: bộ ngắt mạch nhà cung cấp (toàn bộ nhà cung cấp): chỉ kích hoạt khi gặp lỗi 408/5xx, ngưỡng OAuth 8× / khóa API 12× / cục bộ 2×, đặt lại sau 60 giây/30 giây/15 giây để chuyển sang trạng thái thăm dò HALF-OPEN, phục hồi trì hoãn; khi ở trạng thái OPEN, combo sẽ định tuyến lại sang nhà cung cấp tiếp theo. Lớp 2: thời gian chờ kết nối (một khóa/tài khoản): thời gian cơ sở 5 giây với OAuth / 3 giây với khóa API, thời gian chờ tăng theo cấp số nhân ×2 kèm cơ chế chống quá tải đồng loạt, lỗi 429 tuân thủ Retry-After, khi thành công sẽ xóa toàn bộ trạng thái lỗi; khóa đang trong thời gian chờ sẽ bị bỏ qua trong khi các khóa cùng nhóm vẫn tiếp tục phục vụ. Lớp 3: khóa mô hình (một mô hình): lỗi 429 theo từng mô hình, lỗi 404 cục bộ hoặc việc từ chối chế độ chỉ khóa mô hình đó — không bao giờ khóa toàn bộ kết nối. Các trạng thái cuối (bị cấm, hết hạn, cạn tín dụng) cần người vận hành xử lý, không phải thời gian chờ. 📖 [Công cụ Auto-Combo](docs/routing/AUTO-COMBO.md) · [Hướng dẫn về khả năng phục hồi](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Điều gì làm OmniRoute nổi bật
Điều gì làm OmniRoute nổi bật — ảnh chụp nhanh các tính năng tại một thời điểm so với 9router, OpenRouter, CLIProxyAPI và LiteLLM trên 13 khả năng. OmniRoute: 388 nhà cung cấp, tích hợp sẵn hơn 150 gói miễn phí, 20 chiến lược định tuyến, tính năng nén token với 12 engine, máy chủ MCP tích hợp sẵn với 110 công cụ, giao thức tác nhân A2A, bộ nhớ liên tục, các cơ chế bảo vệ, tác nhân đám mây, tính năng ẩn dấu vân tay TLS, Desktop/Termux/PWA và 67 ngôn ngữ giao diện i18n. OmniRoute được cấp phép MIT và có thể tự lưu trữ. Khả năng và số lượng của các đối thủ có thể thay đổi; xem phương pháp luận được liên kết. 📊 Phương pháp luận đầy đủ & chi tiết theo từng tính năng so với 9router, OpenRouter, CLIProxyAPI & LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Hỗ trợ OmniRoute OmniRoute được cấp phép theo MIT và được duy trì công khai. Nếu dự án giúp bạn tiết kiệm thời gian hoặc tiền bạc, đây là cách để giúp dự án duy trì tính độc lập — hãy chọn phương thức phù hợp với bạn. Việc tài trợ không bao giờ ảnh hưởng đến mức độ ưu tiên định tuyến; nó mang lại khả năng hiển thị, không phải thứ hạng.
⭐ Gắn sao cho kho mã nguồnMiễn phí — thực sự giúp tăng khả năng hiển thịGắn sao cho OmniRoute
🐙 GitHub SponsorsMột lần hoặc hằng tháng · không mất phí nền tảnggithub.com/sponsors/diegosouzapw
☕ Ko-fiỦng hộ nhanh một lần, người ủng hộ không cần đăng kýko-fi.com/diegosouzapw
🧋 Buy Me a CoffeeMột cử chỉ nhỏ, không trang trọngbuymeacoffee.com/diegosouzapw
🖐 LiberapayĐịnh kỳ · phi lợi nhuận · mã nguồn mởliberapay.com/diegosouzapw
🇧🇷 PIX (Brazil)Tức thì, không mất phíkhóa & mã QR bên dưới
₿ Tiền mã hóaBTC · ETH · USDT-TRC20 · USDC-Solanađịa chỉ bên dưới
**🇧🇷 PIX** — tức thì, không mất phí (Brazil) Mã QR PIX của OmniRoute Khóa (ngẫu nhiên): `5d865059-bc44-483a-962d-43ceb80126eb` Pix sao chép và dán: ``` 00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD ```
₿ Tiền mã hóa — BTC · ETH · USDT-TRC20 · USDC-Solana (nhấp để mở rộng)
₿ BTCBitcoin (SegWit)bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETHEthereum (ERC20)0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDTTron (TRC20)TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDCSolana2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Chỉ gửi từng loại tiền trên đúng mạng được hiển thị — gửi sai mạng có thể làm mất tiền.
🐛 Bạn phát hiện lỗi hoặc có phản hồi? Hãy mở một [Thảo luận](https://github.com/diegosouzapw/OmniRoute/discussions).

Ghi chú dành cho nhà phát triển: Dự án có thể tạo tệp .env cục bộ trong quá trình npm install/postinstall để thuận tiện cho nhà phát triển. Tệp này được chủ ý bỏ qua thông qua .gitignore (xem .gitignore) và tuyệt đối không được commit — nếu vô tình commit, hãy thay đổi mọi thông tin bí mật đã bị lộ và xóa tệp khỏi lịch sử. Xem docs/DEVELOPER-ENVIRONMENT.md để biết hướng dẫn về cách quản lý các tệp môi trường cục bộ và thông tin bí mật.

## 📡 OmniRoute Radar Tiêu điểm chính của gói miễn phí vẫn là **~1.62B token/tháng** từ danh mục đã được lập tài liệu và loại bỏ trùng lặp theo nhóm ở trên. Khoản tín dụng đăng ký tạm thời của nhà cung cấp có thể giúp riêng tháng đầu tiên tăng lên **~2.22B**. Radar là một lớp phủ danh mục tùy chọn, có chữ ký, dành cho những người muốn cập nhật nhanh hơn về tình trạng sẵn có của các mô hình miễn phí giữa các bản phát hành OmniRoute; danh mục cộng đồng và mọi tính năng miễn phí hiện có vẫn hoàn toàn miễn phí. Những người ủng hộ có thể nhận danh mục trực tiếp và các cơ hội bổ sung từ nhà cung cấp. Mức trần riêng, có thể thay đổi của danh mục này là **tối đa khoảng 3B token/tháng**, tùy thuộc vào tình trạng sẵn có của nhà cung cấp. Mức trần đó không phải là sự bảo đảm: nhà cung cấp có thể thay đổi hạn ngạch, điều kiện đủ tư cách, mô hình hoặc khu vực bất cứ lúc nào. Radar hoạt động theo cơ chế chọn tham gia và chỉ sử dụng GET. Ứng dụng khách OmniRoute không tải lên prompt, lưu lượng truy cập, cấu hình nhà cung cấp, dữ liệu đo từ xa về mức sử dụng hoặc trạng thái cục bộ về việc bỏ qua thông báo. Tìm hiểu về điều kiện đủ tư cách và danh mục hiện tại tại **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Có gì mới
> Những điểm nổi bật gần đây từ **v3.8.20 → v3.8.54**. Xem toàn bộ lịch sử trong [`CHANGELOG.md`](CHANGELOG.md). - **⚖️ Định tuyến `quota-weighted`** — chiến lược kết hợp thứ 20 bỏ qua các tài khoản đã cạn hạn mức, sau đó chọn trong số các tài khoản còn lại theo tỷ lệ hạn mức còn lại ÷ tải đang xử lý, đồng thời giữ các cuộc hội thoại hiện có cố định trên tài khoản. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🧰 Chế độ không giao diện** — `omniroute serve --headless` (hoặc `OMNIROUTE_HEADLESS=1`) chỉ chạy bộ máy proxy `/v1/*`, đồng thời tắt dashboard và các hệ thống chỉ dành cho dashboard. → [Chế độ không giao diện](docs/guides/HEADLESS.md) - **🔎 Khám phá model** — `/v1/models` lọc theo khả năng, ngữ cảnh, loại và văn bản; còn `POST /v1/models/query` trả về danh sách rút gọn xác định với cùng khả năng hiển thị theo từng khóa. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🔑 Kiểm soát định tuyến theo từng khóa** — ghim một khóa API vào một model hoặc combo bằng `forcedModel`, đồng thời thêm hoặc xóa nguyên tử các model và combo của một khóa (`/api/keys/{id}/access`). → [Tham chiếu API](docs/reference/API_REFERENCE.md) · [OpenAPI](docs/openapi.yaml) - **🛡️ Kiểm soát PII chi tiết hơn** — lựa chọn theo từng loại, tối đa 20 mẫu che tùy chỉnh đã được xác thực và bộ đếm phát hiện theo từng loại; bản thân tính năng che vẫn là tùy chọn bật. → [Guardrails](docs/security/GUARDRAILS.md) - **🌍 67 ngôn ngữ** — dashboard, bản sao tài liệu và CLI; `npm run i18n:add-locale` thêm một ngôn ngữ ở mọi nơi chỉ bằng một lệnh. → [Hướng dẫn i18n](docs/guides/I18N.md) - **🎛️ OmniConductor** — ủy quyền A2A đến đội ngũ agent của bạn, các kỹ năng Conductor trên Agent Card và một bảng điều khiển với tính năng trò chuyện thoại nhấn-để-nói qua Faro. → [Máy chủ A2A](docs/frameworks/A2A-SERVER.md) - **🛂 Tiếp nhận thích ứng & bảo vệ quá tải** — các yêu cầu trò chuyện nặng được xếp hàng thay vì trả về 503, với các lease RPM cuộn nguyên tử cho từng kết nối. → [Hướng dẫn khả năng chống chịu](docs/architecture/RESILIENCE_GUIDE.md) - **🗂️ Thứ tự chuẩn của `/v1/models`** — mỗi nhà cung cấp có một khối liên tục được nhóm theo nhà cung cấp (combo được ghim lên đầu), ổn định trên mọi nguồn catalog. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🗜️ Tăng cường bảo vệ nén** — bộ bảo vệ chống phình dữ liệu được bật mặc định, Caveman packs cho DE / FR / JA và tiếng Trung (wényán), các bộ lọc RTK cho Gradle & .NET. → [Nén](docs/compression/COMPRESSION_ENGINES.md) - **💸 Chi phí cố định minh bạch** — các nhà cung cấp gói thuê bao / coding plan hiển thị **$0** trong phân tích chi phí; ngân sách, hạn mức và định tuyến vẫn tiếp tục ước tính. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **⚖️ Định tuyến Quota-Share** — phân chia công bằng hạn mức của một tài khoản dùng chung giữa các khóa trong pool, bảo đảm tận dụng tài nguyên bằng cách cho mượn các phần đang nhàn rỗi. → [Hướng dẫn khả năng chống chịu](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 Thiết lập CLI/agent bằng một lệnh** — 15 lệnh `setup-*` đã đăng ký; `omniroute run` khởi chạy 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); `omniroute configure` hỗ trợ 11 đích đến với bộ chọn nhà cung cấp+model tương tác và danh sách yêu thích theo từng ngữ cảnh. → [Tích hợp CLI](docs/guides/CLI-INTEGRATIONS.md) - **🛰️ Chế độ từ xa** — điều khiển một OmniRoute từ xa bằng các token có phạm vi (`connect` / `contexts` / `tokens`) cùng trình trợ giúp OAuth `antigravity` cho các cài đặt VPS. → [Chế độ từ xa](docs/guides/REMOTE-MODE.md) - **🧭 Tự động định tuyến thông minh hơn** — các combo `auto/:`, **Fusion** (panel model + bộ phán định), định tuyến nhận biết tác vụ, các giá trị ghi đè model / mode / ngân sách USD theo từng yêu cầu. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **🗜️ Nén có thể mở rộng** — 12 engine có thể kết hợp cùng Compression Studios: LLMLingua-2, Ultra hai tầng, omniglyph, cổng kiểm tra độ trung thực theo từng bước, GCF v3.2, trình chỉnh sửa kéo-thả để sắp xếp lại. → [Nén](docs/compression/COMPRESSION_ENGINES.md) - **🕵️ Giải mã MITM minh bạch (TPROXY)** — các CLI capture bỏ qua biến môi trường proxy, với CA theo từng SNI và trình cài đặt trust-store. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md) - **💸 Đo lường chi phí ở mọi nơi** — các header chi phí/sử dụng `X-OmniRoute-*` trên mọi endpoint, header thể hiện khoản tiết kiệm do cache-HIT, hạn mức chi tiêu USD theo từng khóa. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🧠 Bộ nhớ do bạn kiểm soát** — tắt theo mặc định, tùy chọn lượng tử hóa vector int8 + suy giảm có kiểu, `x-omniroute-no-memory` theo từng yêu cầu. → [Bộ nhớ](docs/frameworks/MEMORY.md) - **🛡️ Bảo mật** — bộ bảo vệ chống prompt injection trên mọi route LLM (bộ kiểm thử red-team), bộ bảo vệ che thông tin xác thực tùy chọn (xóa các API key/secret bị rò rỉ theo cả hai chiều), tính năng tìm kiếm web DuckDuckGo miễn phí làm phương án cuối và cổng đăng nhập OIDC tùy chọn cho dashboard (đăng nhập bằng mật khẩu luôn khả dụng). → [Guardrails](docs/security/GUARDRAILS.md) - **🖼️ Endpoint mới** — `/v1/ocr` (Mistral OCR) và `/v1/audio/translations` (kiểu Whisper) hoàn thiện nhóm chức năng media. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🎨 Tạo ảnh / video / âm thanh** — một API cho media: video xAI Grok Imagine & Novita AI, ComfyUI, Magnific, Adobe Firefly, Segmind và các nhà cung cấp giọng nói như ElevenLabs. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🌍 Triển khai & vận hành** — `basePath` reverse-proxy, tự động phát hiện ngôn ngữ trình duyệt, theo dõi thiết bị theo từng khóa, trust MITM không cần quyền root, bản địa hóa zh-TW. → [Môi trường](docs/reference/ENVIRONMENT.md) - **🤝 Nhiều nhà cung cấp & agent hơn** — agent đám mây (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) với trình duyệt + đăng nhập OAuth, card Ollama hạng nhất, Claude Opus 5 & Sonnet 5, hợp tác chính thức với Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… và **catalog 388 nhà cung cấp** được làm mới. → [Nhà cung cấp](docs/reference/PROVIDER_REFERENCE.md) - **📡 Minh bạch định tuyến** — mọi phản hồi đều chứa header `X-OmniRoute-Decision` nêu chiến lược/nhà cung cấp/độ trễ đã phục vụ phản hồi, chiến lược combo `cache-optimized` mới cùng yếu tố route `cacheAffinity` của Auto-Combo đưa các yêu cầu lặp lại trở về kết nối đang giữ prefix đã cache, và endpoint chỉ đọc `/v1/auto-combo/{channel}/candidates` hiển thị pool ứng viên trực tiếp của một channel `auto/*`. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **⚡ Hiệu năng & hạ tầng cục bộ** — Redis cục bộ chỉ với một cú nhấp chuột, các trình triển khai relay cho Cloudflare Workers / Deno Deploy, Bifrost & Mux dưới dạng các dịch vụ nhúng được giám sát. → [Dịch vụ nhúng](docs/frameworks/EMBEDDED-SERVICES.md) - **🧩 Cũng được tích hợp sẵn** — framework plugin + marketplace, các framework kỹ năng Omni/Agent/GitHub, tích hợp vault Obsidian (22 công cụ MCP), API Batch & Files tương thích với OpenAI, bộ nhớ đệm phản hồi ngữ nghĩa, tính năng game hóa với bảng xếp hạng, tính năng phát hiện tác nhân ACP (15 tác nhân tích hợp sẵn), xuất nhật ký theo lịch sang BigQuery, fan-out song song đa mô hình `auto/chaos`, cầu nối bot Telegram, trình quản lý phiên bản trong ứng dụng và bảng xếp hạng nhà cung cấp miễn phí LMArena-ELO. → [Tài liệu](docs/README.md)
## 🤖 Các CLI & tác nhân lập trình tương thích > Một cấu hình — `http://localhost:20128/v1` — và **mọi** IDE hoặc CLI AI đều chạy trên các mô hình miễn phí & chi phí thấp.
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
                           
+ cũng hoạt động với · Agent Deck · Kiro · Command Code · Antigravity · Windsurf · AMP · bất kỳ công cụ nào tương thích với OpenAI
📖 Thiết lập riêng cho tất cả 39 công cụ (28 CLI Code + 11 CLI Agents) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 Plugin OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)

**Khởi chạy bất kỳ CLI nào được hỗ trợ thông qua OmniRoute bằng một lệnh duy nhất** — không ghi tệp cấu hình, thông tin xác thực được đưa vào theo từng tiến trình, Qwen/Gemini nhận một thư mục home tạm thời, biệt lập: ```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" # Hoặc chọn nhà cung cấp+mô hình một cách tương tác và ghi cấu hình riêng của công cụ: omniroute configure codex # cũng có: claude opencode qwen aider goose gemini cline continue kilo 5dive ``` Mọi lệnh đều tôn trọng ngữ cảnh từ xa đang hoạt động (`omniroute connect `), `--dry-run` xem trước chính xác các biến môi trường/đối số mà không thực thi, còn `--api-key-env NAME` giữ bí mật khỏi lịch sử shell của bạn. → [Tích hợp CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 388 Nhà cung cấp AI — 153 được đánh dấu miễn phí trong danh mục
> **388 nhà cung cấp đã đăng ký** trên các bộ sưu tập chuẩn về trò chuyện, phương tiện, tìm kiếm, cục bộ, tác nhân đám mây và hệ thống, trong đó **153 nhà cung cấp có siêu dữ liệu khám phá `hasFree: true`**. Sổ đăng ký mô hình trò chuyện bao phủ **239 nhà cung cấp / 3,059 cặp nhà cung cấp-mô hình riêng biệt / 1,475 ID mô hình thô**; danh mục ngân sách miễn phí riêng biệt có **471 dòng cho từng mô hình**, **34 nhóm định kỳ** và **52 nhà cung cấp miễn phí mãi mãi định kỳ/không cần khóa**. Đây là các mẫu số khác nhau theo chủ đích; định nghĩa và các phép tính đã loại trùng theo nhóm nằm trong [Tài liệu tham khảo về nhà cung cấp](docs/reference/PROVIDER_REFERENCE.md) và [Các gói miễn phí](docs/reference/FREE_TIERS.md).
### 🏢 Mọi phòng thí nghiệm lớn — qua một endpoint duy nhất
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
                           
…và hơn 350 nhà cung cấp khác — mọi biểu tượng đều được phân giải trực tiếp từ danh mục nhà cung cấp của dashboard. 📖 [Tài liệu tham khảo về nhà cung cấp](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Miễn phí mãi mãi — $0, không cần thẻ
OpenCode Zen
OpenCode Zen
DeepSeek V4, Nemotron 3
Không giới hạn token
Kilo Code
Kilo Code
Bộ định tuyến tự động, Tencent Hy3
Miễn phí mãi mãi
Requesty
Requesty
GPT-OSS 120B, Nemotron
Miễn phí mãi mãi
SiliconFlow
SiliconFlow
DeepSeek V3.2 / R1
Gói miễn phí
Z.AI GLM
Z.AI GLM
GLM-4.7 / 4.5-Flash
Miễn phí mãi mãi
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
Miễn phí mãi mãi
Qoder AI
Qoder AI
Qwen3-Max, Kimi-K2
MIỄN PHÍ không giới hạn
Pollinations
Pollinations
GPT, Llama, Claude
Không cần khóa
Cloudflare AI
Cloudflare AI
Hơn 50 mô hình
10K neuron/ngày
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
~40 RPM miễn phí
Cerebras
Cerebras
GLM 4.7, GPT-OSS
Tín dụng $5 dùng một lần; yêu cầu thẻ
OpenRouter
OpenRouter
Các mô hình :free
+$10 → RPM cao hơn
📖 Danh mục đầy đủ có thể đọc bằng máy → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Nơi OmniRoute chạy — Mọi nơi
> Cùng một ứng dụng, máy của bạn, quy tắc của bạn. Từ cài đặt npm toàn cầu đến** điện thoại của bạn** thông qua Termux.
Nền tảng Cài đặt Điểm nổi bật
📦 npm (toàn cầu) npm cài đặt -g omniroute Một lệnh, bất kỳ OS
⚡ Bun (toàn cầu) bun add -g omniroute Cùng một tarball đăng ký, cài đặt nhanh hơn
🐳 Docker docker chạy … diegosouzapw/omniroute Nhiều vòm AMD64 + ARM64
🖥️ để bàn (Electron) npm run electron:build hệ thống cửa sổ gốc + — Windows / macOS / Linux
🎩 Thanh menu (OmniRouteTray) brew install --cask zoispag/tap/omniroute-tray Giám sát & tự động cập nhật máy chủ — macOS
💪 ARM arm64 Raspberry Pi, ARM chủ zqm, Apple Silicon
📱 Android (Termux) pkg cài đặt nodejs && npx -y omniroute Chạy trên điện thoại của bạn , 24/7, không cần root
📲 PWA"Thêm vào màn hình chính" Toàn màn hình, ngoại tuyến, có thể cài đặt từ trình duyệt
🧩 OpenCode plugin @omniroute/opencode-providerOpenCode hợp
🤖 VS Mã Copilot Trò chuyện cài đặt OmniCopilot mở rộng Mọi mô hình OmniRoute trong bộ chọn trò chuyện Copilot gốc — & ổn định Người dùng nội bộ
🛠️ Từ nguồn npm install && npm run dev Hack vào nó, đóng góp
📖 [Docker Hướng dẫn](docs/guides/DOCKER_GUIDE.md) · [Máy tính để bàn](electron/README.md) · [Khay thanh menu](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)
### 🧩 Mới: OmniRoute bên trong Trò chuyện Copilot gốc của Mã VS
> Không có thanh bên mới, không có UI trò chuyện mới - mọi mẫu OmniRoute phục vụ đều hiển thị ngay trong** Bộ chọn mô hình trò chuyện Copilot bạn đã sử dụng** . Kể từ Mã VS 1.122, các mô hình nhà cung cấp hoạt động mà không cần đăng nhập GitHub hoặc đăng ký Copilot — chế độ đại lý, gọi công cụ và tầm nhìn, miễn phí. Cài đặt** [OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** tiện ích mở rộng, trỏ nó vào máy chủ OmniRoute của bạn (mặc định là `localhost:20128`), sau đó mở bộ chọn mô hình Copilot Trò chuyện → →** Quản lý mô hình…** →**OmniRoute** . < td Align ="left">VS Code — stable & Insiders < td căn chỉnh ="trái">Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro…
Store Liên kết Hoạt động với
🧩 VS Code Marketplace Cài đặt →
🔓 Mở VSX Đăng ký zqf đặt →
Từ bên trong trình chỉnh sửa: mở** Tiện ích mở rộng** xem, tìm kiếm** "OmniRoute"** , bấm vào** Cài đặt** - hoạt động theo cách tương tự trên cả hai cửa hàng. Nguồn, các vấn đề và sổ tay xuất bản trực tiếp tại [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot). 📖 [VS Mã Copilot Hướng dẫn trò chuyện](docs/guides/VSCODE-COPILOT.md) — thiết lập, nội dung bộ chọn hiển thị, bảng thông tin trong tab, khắc phục sự cố
### 🎩 Mới: OmniRouteTray — cổng của bạn, sống trong thanh menu
> `omniroute serve` hạnh phúc nhất khi nó luôn bật.** [OmniRouteTray](https://github.com/zoispag/omniroute-tray)** biến nó thành một ứng dụng thanh menu có thể cài đặt và quên cho macOS: nó khởi động máy chủ, duy trì hoạt động trong suốt quá trình khởi động lại, cập nhật tại chỗ và đặt ngân sách mã thông báo trực tiếp của bạn chỉ bằng một cú nhấp chuột —** không có cửa sổ đầu cuối nào được mở, không có `npm install -g omniroute` để trông trẻ.** Được xây dựng bằng [Tauri v2](https://v2.tauri.app/) (lõi Rust có kích thước bằng một lỗi làm tròn), nó vận chuyển thời gian chạy Node 24 đã ký của riêng mình và quản lý cài đặt OmniRoute do ứng dụng sở hữu, do đó, nó không bao giờ chống lại `node`/`bun` toàn cầu của bạn. Nó** chia sẻ cấu hình và cơ sở dữ liệu `~/.omniroute/` hiện có của bạn** — vậy thì đó chính là OmniRoute mà bạn đã chạy, chỉ với một chiếc mũ trên đầu. 🎩 thế nào
Nó làm gì
🟢 Giám sát máy chủ Sinh ra omniroute phục vụ , sử dụng một phiên bản đã chạy thay vì sao chép nó
📊 lược về cách sử dụng trực tiếp Thanh hạn ngạch của nhà cung cấp, giới hạn Claude session/weekly với đếm ngược đặt lại, phân tích chi phí trong 30 ngày
🔄 Tự động cập nhật tại chỗ Cài đặt theo giai đoạn, hoán đổi nguyên tử, khôi phục khi thất bại — luôn có trên bản phát hành mới nhất
🚀 Bắt đầu đăng nhập chạy tùy chọn khi đăng nhập; chỉ có khay, không có biểu tượng dock
🩺 Doctor & ghi nhật ký Chẩn đoán bằng một cú nhấp chuột và truy cập nhật ký máy chủ
```sh brew install --cask zoispag/tap/omniroute-tray ``` Thích tải xuống? Lấy .dmg mới nhất từ Phát hành . Nguồn, vấn đề và xây dựng tài liệu trực tiếp tại zoispag/omniroute-tray.
💛 Một dự án cộng đồng của @zoispag - không phải là bản phát hành OmniRoute chính thức.

## 🔒 Riêng tư & Ưu tiên cục bộ
Riêng tư và ưu tiên cục bộ — cổng kết nối và mặt phẳng điều khiển của OmniRoute chạy trên máy của bạn. Prompt được gửi đến nhà cung cấp thượng nguồn được chọn cho từng yêu cầu; OmniRoute không thêm bất kỳ chặng xử lý prompt được lưu trữ nào và tính năng đo từ xa bị tắt theo mặc định. Thông tin xác thực được mã hóa khi lưu trữ bằng AES-256-GCM; các biện pháp kiểm soát bao gồm phân phạm vi khóa API, lọc IP, giới hạn tốc độ, cơ chế bảo vệ chống prompt injection, loại bỏ header thượng nguồn, biên tập PII theo cơ chế tùy chọn, lỗi đã được làm sạch và nhật ký kiểm tra SQLite cục bộ. OmniRoute được cấp phép theo MIT và có thể tự lưu trữ. 📖 [Ủy quyền](docs/architecture/AUTHZ_GUIDE.md) · [Cơ chế bảo vệ](docs/security/GUARDRAILS.md) · [Tuân thủ](docs/security/COMPLIANCE.md)
## 🔌 CLI đầy đủ + A2A & MCP
> Không chỉ là một máy chủ, OmniRoute còn là một **buồng điều khiển dòng lệnh đầy đủ** với **hơn 80 lệnh**, cùng các giao thức tác nhân mở để một tác nhân AI có thể **tự vận hành**. ### ⌨️ Một CLI thực thụ (không chỉ có `start`) ```bash omniroute # chạy gateway + bảng điều khiển (cổng 20128) omniroute chat # trình chat TUI tương tác (lệnh gạch chéo: /model /combo /skill /memory) omniroute setup # trình hướng dẫn thiết lập cho lần chạy đầu tiên omniroute doctor # chẩn đoán nhà cung cấp, cổng, các phần phụ thuộc native ``` ### 🛰️ Chế độ từ xa — chạy CLI tại đây, OmniRoute trên VPS OmniRoute đang chạy trên máy chủ? Điều khiển nó từ laptop của bạn bằng **chính CLI đó**. Đăng nhập một lần bằng token truy cập có phạm vi; sau đó mọi lệnh đều nhắm đến máy chủ từ xa. ```bash omniroute connect 192.168.0.15 # mật khẩu → token có phạm vi, được lưu dưới dạng ngữ cảnh omniroute models # ← chạy trên máy chủ TỪ XA omniroute configure codex # ← chọn mô hình từ xa, ghi hồ sơ Codex cục bộ omniroute tokens create --name ci --scope read # tạo token có phạm vi hẹp hơn cho các máy khác omniroute contexts use default # ← chuyển về máy chủ cục bộ ``` Token có phạm vi `read` / `write` / `admin`; các route khởi tạo tiến trình vẫn chỉ được phép trên loopback. 📖 [Chế độ từ xa](docs/guides/REMOTE-MODE.md)
Bản minh họa terminal dạng động trình diễn OmniRoute CLI — omniroute providers list, omniroute combo list và omniroute health — luân phiên qua bề mặt cấp cao nhất gồm 89 lệnh: 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 …
### 🤝 Kết nối một tác nhân — và tác nhân đó sẽ tự điều khiển OmniRoute Cung cấp OmniRoute qua **MCP**, **A2A**, **REST API**, **webhook** hoặc **CLI từ xa** — bất kỳ tác nhân đủ năng lực nào (hoặc mã của riêng bạn) cũng có quyền điều khiển toàn bộ gateway: định tuyến, nhà cung cấp, combo, bộ nhớ đệm, nén, bộ nhớ — một cách tự động. Các endpoint HTTP bên dưới được phục vụ tại `http://localhost:20128`.
Giao diệnEndpoint / lệnhDùng để
🧰 MCP (stdio)omniroute --mcpTích hợp với Claude Desktop, Cursor hoặc bất kỳ máy khách MCP nào
🌊 MCP (HTTP)/api/mcp/streamMCP từ xa — 110 công cụ, 33 phạm vi (tùy chọn bật thực thi), nhật ký kiểm tra đầy đủ
📡 MCP (SSE)/api/mcp/ssePhương thức truyền tải MCP dạng streaming
🤝 A2A/.well-known/agent.jsonTác nhân với tác nhân, JSON-RPC 2.0 + SSE, 6 kỹ năng
🌐 REST API/v1/*Tương thích với OpenAI — chat, embedding, hình ảnh, âm thanh, OCR
🔔 Webhook/api/webhooksĐẩy các sự kiện yêu cầu / hạn ngạch đến Slack, Discord, Telegram hoặc bất kỳ URL nào
🛰️ CLI từ xaomniroute connect Điều khiển một phiên bản từ xa bằng token truy cập có phạm vi
```bash # Cung cấp cho Claude Code toàn bộ bộ công cụ OmniRoute qua MCP: claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream ``` 📖 [Máy chủ MCP](docs/frameworks/MCP-SERVER.md) · [Máy chủ A2A](docs/frameworks/A2A-SERVER.md) · [Giao thức tác nhân](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Tự động tiết kiệm 15–95% token
### 📖 Cách hoạt động — pipeline, kiến trúc & phép tính mức tiết kiệm Pipeline nén OmniRoute: một yêu cầu từ client gồm 10.000 token đi qua 12 engine có thể kết hợp — Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra và OmniGlyph — và có thể đến provider với khoảng 1.080 token trong ví dụ xếp chồng được ghi chép. Nội dung có cấu trúc được bảo vệ bởi các lớp bảo toàn và các cổng kiểm tra độ trung thực theo từng bước; các chế độ lossy hoặc thử nghiệm rõ ràng có thể biến đổi nội dung đủ điều kiện. Combo xếp chồng mặc định chạy `RTK → Caveman`. Khi cả hai cùng tác động lên payload tool/context, mức tiết kiệm sẽ cộng dồn: ```txt combined = 1 − (1 − RTK) × (1 − Caveman_input) average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2% range = 78.4 – 94.6% ``` Các khối mã, URL, JSON và dữ liệu có cấu trúc **luôn được engine bảo toàn bảo vệ**. > **Tại sao phải dùng nhiều token khi ít token cũng đủ?** Mọi yêu cầu đều đi qua pipeline nén của OmniRoute **một cách trong suốt** — không cần thay đổi client. Hiện đây là một **chuỗi gồm 12 engine có thể kết hợp** chạy theo thứ tự và được phối hợp linh hoạt theo từng combo định tuyến — phát triển dựa trên các ý tưởng từ [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua), và [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR). ### 🧱 Chuỗi 12 engine Các engine chạy theo thứ tự của pipeline; mỗi engine có thể được bật/tắt độc lập và cấu hình theo từng combo:
#EngineChức năng
1Session-DedupLoại bỏ nội dung lặp lại giữa các lượt (dựa trên địa chỉ nội dung, xuyên suốt các lượt)
2CCRLưu trữ các khối lớn phía sau marker truy xuất, chỉ lấy khi cần
3LiteCắt giảm khoảng trắng + URL hình ảnh (baseline nhẹ độ trễ)
4RTKLọc, loại bỏ trùng lặp và cắt ngắn kết quả tool thông minh (nhận biết command)
5Responses Tool OutputJSON ưu tiên không mất dữ liệu + nén chẩn đoán có giới hạn cho output shell/patch/search/build (Responses API)
6HeadroomNén dạng bảng không mất dữ liệu cho các mảng JSON (~30%) thông qua codec GCF được tích hợp
7RelevanceChấm điểm câu theo phương pháp trích xuất dựa trên truy vấn gần nhất của người dùng
8CavemanNén văn bản dựa trên quy tắc (~65–75% trên output)
9AggressiveTóm tắt + làm cũ dần các lượt trước
10LLMLingua-2Loại bỏ ngữ nghĩa bằng ML thông qua MobileBERT ONNX — an toàn với code, bất đồng bộ
11UltraLoại bỏ token theo heuristic với một tầng model nhỏ (SLM) tùy chọn
12OmniGlyphMã hóa context dưới dạng hình ảnh mang tính thử nghiệm cho Claude Fable 5 đã được đo lường trên đường truyền Anthropic trực tiếp; các transformer GPT 5.6 vẫn dừng an toàn khi đóng do đang chờ biên nhận từ provider. Bốn profile nén (aggressive mặc định, balanced, coding-safe, passthrough) (mạnh nhất; phải chủ động bật)
Các khối mã, URL và dữ liệu có cấu trúc được **luôn bảo toàn chính xác từng byte**. **Preset một lần nhấp** kết hợp các engine:
Chế độMức tiết kiệmPhù hợp nhất cho
🪶 Lite~15%Mặc định an toàn, luôn bật
🪨 Standard (Caveman)~30%Lập trình hằng ngày
⚡ Aggressive~50%Các phiên làm việc dài với nhiều tool
🔥 Ultra~75%Mức tiết kiệm tối đa
🧰 RTK60–90%Output của shell/test/build/git
🔗 Stacked (RTK → Caveman)78–95%Prompt kết hợp + log tool
**Ví dụ thực tế — chế độ Standard:** > **Trước (69 token):** _"Lý do component React của bạn re-render có khả năng là vì bạn đang tạo một tham chiếu object mới ở mỗi chu kỳ render. Khi truyền một object inline làm prop, phép so sánh nông của React sẽ xem đó là một object khác ở mỗi lần, từ đó kích hoạt re-render. Tôi khuyến nghị sử dụng useMemo để ghi nhớ object."_ > > **Sau (19 token):** _"Tham chiếu object mới ở mỗi lần render. Prop object inline = tham chiếu mới = re-render. Bọc bằng useMemo."_ > > **Cùng một câu trả lời. Ít hơn 72% token. Không mất độ chính xác.** ✅ **Ví dụ PT-BR — chế độ [Troglodita](https://github.com/leninejunior/troglodita):** > **Trước (42 token):** _"Vấn đề là component đang re-render vì một tham chiếu object mới được tạo trong mỗi chu kỳ render. Tôi khuyến nghị sử dụng useMemo."_ > > **Sau (12 token):** _"Re-render: tham chiếu mới mỗi chu kỳ (object inline được tạo lại). Dùng `useMemo`."_ > > **Cùng một câu trả lời. Giảm ~70% token. Độ chính xác kỹ thuật vẫn nguyên vẹn.** ✅
### 🎚️ Vượt ra ngoài các engine — kiểu đầu ra, nút điều chỉnh thích ứng & kiểm soát theo từng request 12 engine ở trên thu gọn phần **đầu vào**. Ba lớp khác định hình **cách**, **thời điểm** và nội dung **đầu ra**: - **🪄 Kiểu đầu ra** _(điều hướng theo trục đầu ra)_ — chèn các hướng dẫn định hình phản hồi mang tính xác định, an toàn với bộ nhớ đệm; có thể kết hợp, mỗi kiểu có cường độ `lite` / `full` / `ultra`. Thêm một kiểu chỉ cần một dòng trong registry: - **Văn phong súc tích** — loại bỏ phần thừa / mạo từ / cách diễn đạt dè dặt; giữ nguyên độ chính xác của nội dung kỹ thuật. - **Ít code hơn** — YAGNI theo phong cách "lập trình viên senior lười": thay đổi nhỏ nhất nhưng hoạt động được, không thêm scaffolding ngoài yêu cầu. - **Ponytail (lập trình viên senior lười)** — tiến dần theo bậc thang YAGNI, xử lý nguyên nhân gốc, tạo diff nhỏ nhất nhưng hoạt động được. - **Tôi bị ADHD (ưu tiên hành động)** — hành động tiếp theo được đưa lên trước, các bước được đánh số, một bước tiếp theo cụ thể, không mở đầu dài dòng. - **CJK súc tích (文言)** — văn phong siêu súc tích bằng tiếng Trung cổ điển (chỉ bật theo locale `zh`). - **🎯 Ngân sách context thích ứng** _(nút điều chỉnh)_ — thay vì một ngưỡng token bật/tắt duy nhất, chỉ nâng mức các engine rẻ nhất và ít gây mất mát nhất khi cần, đủ để **vừa với cửa sổ context của model**. Chính sách: `reserve-output` (mặc định, nhận biết model) · `percentage` · `absolute`. Chế độ: `floor` (đảm bảo vừa) · `replace-autotrigger` (lựa chọn rõ ràng của bạn được ưu tiên) · `off` (ngưỡng cũ). - **🎛️ Nơi quyết định việc nén** _(độ ưu tiên, cao → thấp)_ — header `x-omniroute-compression` theo từng request › ghi đè routing-combo › profile có tên đang hoạt động › adaptive / auto-trigger › mặc định của panel › off. Plan được áp dụng sẽ được phản hồi trong header `X-OmniRoute-Compression: ; source=`. Tự động kích hoạt theo ngưỡng token, bật nút điều chỉnh thích ứng, ghim một profile có tên, thiết lập cho một request riêng lẻ hoặc gán một pipeline cho từng routing combo — chọn cách phù hợp với workload. **eval harness** ngoại tuyến tùy chọn (`npm run eval:compression`) sẽ chấm điểm độ trung thực so với mức tiết kiệm trên một corpus cố định trước khi bạn triển khai thay đổi. 📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Bắt đầu nhanh
**1) Cài đặt & chạy** ```bash npm install -g omniroute omniroute ``` > 💡 Thấy `npm warn ERESOLVE` hoặc cảnh báo peer-dep? [Chúng không gây hại](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated). > **Đang sử dụng npm 11 trở lên?** npm có thể chặn các script vòng đời của package trừ khi chúng được cho phép. `postinstall` của OmniRoute (`node scripts/build/postinstall.mjs`) là bắt buộc để chuẩn bị các file runtime native. Cho phép các package được nêu trong cảnh báo của npm khi cài đặt toàn cục. Với bộ package được OmniRoute 3.8.54 báo cáo: > > ```bash > npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omniroute > ``` > > Để tái sử dụng allowlist này cho các lần cài đặt toàn cục sau, hãy cấu hình một lần, rồi cài đặt như bình thường: > > ```bash > npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user > npm install -g omniroute > ``` > > Danh sách dependency có thể thay đổi giữa các bản phát hành; nếu npm báo một danh sách khác, hãy sử dụng tên package từ cảnh báo đó. Cho phép một package đồng nghĩa với việc cho phép các install script của package đó chạy. > **Đang sử dụng Gemini Web hoặc một provider dựa trên web-cookie khác?** Package npm bao gồm > Playwright nhưng không bao gồm binary Chromium. Hãy xem ghi chú > [thiết lập Playwright Chromium](docs/guides/TROUBLESHOOTING.md#gemini-web-and-playwright-chromium) > trước khi thực hiện request đầu tiên tới web-provider. Dashboard tại `http://localhost:20128` · API tại `http://localhost:20128/v1`. **2) Kết nối một provider đủ điều kiện bằng tài khoản của bạn** Dashboard → **Providers** → chọn một provider có điều khoản hiện hành và quota phù hợp với trường hợp sử dụng của bạn → thêm API key hoặc hoàn tất quy trình tài khoản. Các gói miễn phí có thể yêu cầu đăng ký, phê duyệt hoặc phương thức thanh toán. Xem [Hướng dẫn các gói miễn phí](docs/getting-started/FREE-TIERS-GUIDE.md); khả năng sử dụng không cần key không được đảm bảo, và các provider được đánh dấu `tos: avoid` mặc định sẽ bị loại khỏi `auto`. **3) Trỏ công cụ lập trình của bạn** ```txt Base URL: http://localhost:20128/v1 API Key: [copy from Dashboard → Endpoints] Model: auto (routes among eligible connections — or choose provider/model) ``` **4) Xác minh hoạt động** ```bash curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY" ``` Bạn sẽ thấy các model đã kết nối được liệt kê. 🎉 Vậy là xong — bắt đầu lập trình, OmniRoute sẽ tự động định tuyến và chuyển sang phương án dự phòng cho bạn. Nếu client của bạn không thể gửi header tùy chỉnh, OmniRoute cũng cung cấp các alias tương thích có token: ```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 ``` Chỉ sử dụng các alias này cho những client không thể đính kèm `Authorization: Bearer ...`. Xác thực bằng header vẫn là chế độ được ưu tiên.
## 📦 Các phương thức cài đặt khác — Docker, mã nguồn, 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` luôn trỏ đến phiên bản SemVer ổn định **đã phát hành** cao nhất. Thẻ này không theo dõi nhánh git `main`. Hãy ghim `:X.Y.Z` khi dùng GitOps. Xem [Các kênh phát hành Docker](docs/guides/DOCKER_GUIDE.md#release-channels). Image ghim **`OMNIROUTE_MEMORY_MB=1024`**. Mức này đủ cho bảng điều khiển và các cuộc trò chuyện nhẹ. **Các tác nhân lập trình** (`POST /v1/responses` từ Claude Code, Codex, Grok, …) cần heap V8 lớn hơn nhiều, nếu không tiến trình sẽ gặp `FATAL ERROR` ở mức khoảng 12 GiB khi có hai ngữ cảnh dài chồng lấn. Hãy đặt giới hạn bộ nhớ container cao hơn heap (các bộ đệm native nằm ngoài V8): | Khối lượng công việc | Heap (`-e OMNIROUTE_MEMORY_MB`) | Container (`--memory`) | | --------------------------------- | ------------------------------- | ---------------------- | | Bảng điều khiển / trò chuyện nhẹ | `1024` (mặc định của image) | ≥2 g | | Một tác nhân lập trình | `8192` | ≥10 g | | Hai `/v1/responses` dài đồng thời | `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 ``` Bảng đầy đủ: [Hướng dẫn Docker — RAM khi chạy](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents). > **Kênh Docker tiền phát hành:** `diegosouzapw/omniroute:next` và > `diegosouzapw/omniroute:next-web` theo dõi nhánh `release/v*` mặc định hiện tại. > Các thẻ có thể thay đổi này chỉ dành cho việc kiểm thử các bản sửa lỗi chưa phát hành và > **không được hỗ trợ cho môi trường production**. Xem > [Các kênh phát hành Docker](docs/guides/DOCKER_GUIDE.md#release-channels). **🥟 Bun** `bun install` tiêu chuẩn và cài đặt toàn cục (`bun install -g omniroute`) được hỗ trợ thông qua cơ chế phát hiện runtime Bun: - **`bun:sqlite` tích hợp sẵn**: OmniRoute sử dụng driver `bun:sqlite` tích hợp sẵn của Bun khi chạy trên Bun và chuyển sang `better-sqlite3` trên Node.js hoặc `sql.js` nếu cần. - **Tự động chọn trình đóng gói Webpack trong môi trường phát triển**: Chế độ phát triển (`bun run dev`) tự động phát hiện Bun và tắt Turbopack để chuyển sang Webpack, nhằm ngăn các vấn đề không tương thích với liên kết native V8. Các bản dựng production (`bun run build`) tuân theo `OMNIROUTE_USE_TURBOPACK` chính xác như trên Node: mặc định dùng Turbopack, đặt `OMNIROUTE_USE_TURBOPACK=0` để dựng bằng Webpack (`Dockerfile.bun` cung cấp biến này dưới dạng `--build-arg`). - **Dockerfile riêng cho Bun**: `Dockerfile.bun` nhiều giai đoạn dành cho các bản triển khai production Bun native (`docker build -f Dockerfile.bun -t omniroute:bun .`). ```bash # Cài đặt và chạy bằng Bun bun install bun run dev ``` **🛠️ Từ mã nguồn** ```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 # Sử dụng Nix flakes nix develop npm run dev # Hoặc sử dụng devbox devbox run npm run dev ``` 📖 [Hướng dẫn Docker](docs/guides/DOCKER_GUIDE.md) — Các profile Compose, Caddy HTTPS, tunnel Cloudflare. **🦭 Podman** ```bash # 1. Chuẩn bị thư mục dữ liệu được bind mount mkdir -p data # 2. Chỉ dành cho Linux + Podman rootless cục bộ (không bao giờ dùng trên máy khách Podman Machine từ xa): podman unshare chown 1000:1000 ./data # 3. Đặt gợi ý runtime, dựng image Compose cục bộ và khởi động echo "CONTAINER_HOST=podman" >> .env podman compose --profile base up -d --build ``` Trên macOS hoặc Windows, Podman sử dụng Podman Machine từ xa: hãy bỏ qua `podman unshare` và làm theo [hướng dẫn về thư mục dữ liệu dành riêng cho từng cấu trúc triển khai](contrib/podman/README.md#data-directory-permissions-by-topology). 📖 [Hướng dẫn Podman](contrib/podman/README.md) — Các bản dựng Compose, Podman Machine và thiết lập Quadlet Linux/systemd. **⚡ Cài đặt nhanh hơn / gọn nhẹ hơn (bỏ qua bước dựng native)** Công cụ SQLite native (`better-sqlite3`) là một dependency **tùy chọn**, vì vậy quá trình cài đặt toàn cục không bao giờ bị chặn do phải biên dịch từ mã nguồn: hệ thống sử dụng binary dựng sẵn khi có bản phù hợp với nền tảng/Node của bạn, nếu không sẽ tự động chuyển sang công cụ JavaScript thuần (`node:sqlite` trên Node 22+, nếu không thì dùng `sql.js` WASM đi kèm) — không yêu cầu công cụ dựng. Để bỏ qua hoàn toàn bước khởi động native sau khi cài đặt (CI, môi trường headless hoặc máy chậm): ```bash OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 cũng bỏ qua bước này ``` Để cài đặt nhanh nhất, hãy ưu tiên **pnpm** (kho lưu trữ định địa chỉ theo nội dung + liên kết cứng — xem phần trên). Để sử dụng runtime headless không có bảng điều khiển, hãy dùng profile Docker `base` (ở trên) hoặc [hướng dẫn Termux](docs/guides/TERMUX_GUIDE.md). CLI và bảng điều khiển web được cung cấp bởi cùng một tiến trình trên một cổng, vì vậy hiện chưa có package riêng chỉ dành cho CLI.
# 🎬 OmniRoute trong thực tế
## 📹 Hướng dẫn bằng video
Ảnh chụp bảng điều khiển vào 2026-10-18 · Danh mục thô: YT 1.352 | TT 334 | IG 290 · Độ mới (ngày): YT 5 | TT 48 | IG 49
Instagram Reel — nick_saraev
🎬 #1 — Instagram
nick_saraev — 3,042,474 lượt xem
Instagram Reel — nnapier7
🎬 #2 — Instagram
nnapier7 — 1,454,535 lượt xem
YouTube — Amidia AI & Tech
🎬 #3 — YouTube
Amidia AI & Tech — 794,974 lượt xem
Instagram Reel — theopenstack
🎬 #4 — Instagram
theopenstack — 692,419 lượt xem
TikTok — migue.baena
🎬 #5 — TikTok
migue.baena — 685,788 lượt xem
**Bảng xếp hạng đầy đủ (các URL chuẩn đã được loại bỏ trùng lặp, `v > 0`, phạm vi tiếp cận cao nhất):** | #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** | Số liệu chuẩn vào 2026-10-18: **1.976 video duy nhất** · **20.220.289 lượt xem đã biết** (`v > 0`) · **1.210 kênh/hồ sơ theo từng mạng**. Bảng điều khiển thô chứa 1.976 hàng (YouTube 1.352 = 740 video dài + 612 Shorts · TikTok 334 · Instagram 290); không còn bản trùng lặp nào sau khi chuẩn hóa theo URL chính tắc, trong đó giữ lại số lượt xem cao nhất cho mỗi video. Việc thu thập dữ liệu YouTube đã bị đóng băng từ 2026-10-13 (hạn ngạch API đã cạn từ 14 đến 18/10), còn TikTok/Instagram từ 2026-09-02 (không còn tín dụng thu thập dữ liệu); 76 video vẫn chưa có số lượt xem. > 🎬 **Bạn đã làm video về OmniRoute?** Hãy mở một [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) hoặc [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) kèm theo liên kết — chúng tôi sẽ giới thiệu video đó tại đây.
# 📧 Cộng đồng & Trợ giúp > Mọi thứ ở cùng một nơi — theo dõi người bảo trì, trò chuyện với cộng đồng hoặc mở một issue. | Kênh | Ở đâu / bằng cách nào | | ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- | | 💼 **LinkedIn** — theo dõi người bảo trì | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) | | 🐙 **GitHub** — theo dõi các bản phát hành và mẹo | [@diegosouzapw](https://github.com/diegosouzapw) | | 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) | | ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) | | 🟢 **WhatsApp — 🌍 Toàn cầu** | [tham gia nhóm](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) | | 🟢 **WhatsApp — 🇧🇷 Brasil** | [tham gia nhóm](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) | | 🌍 **Trang web** | [omniroute.online](https://omniroute.online) | | 🌍 **🌍Cộng đồng StHub OmniRoute (miễn phí)** | [cổng thông tin StHub](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) | | 📦 **Mã nguồn** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) | | 🐛 **Báo cáo lỗi** | [mở một issue](https://github.com/diegosouzapw/OmniRoute/issues) — đính kèm đầu ra của `npm run system-info` | | 🤝 **Đóng góp** | [CONTRIBUTING.md](CONTRIBUTING.md) · [Mô hình phân nhánh và phát hành](docs/ops/BRANCHING_MODEL.md) · chọn một `good first issue` | | 💚 **Hỗ trợ dự án** | [Các cách hỗ trợ ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ Ngăn xếp công nghệ
TầngCông nghệ
Môi trường chạyNode.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27
Ngôn ngữTypeScript 6.0 — 100% TypeScript trong src/ và open-sse/ (không có any trong phần lõi kể từ v2.0)
FrameworkNext.js 16 + React 19 + Tailwind CSS 4
Cơ sở dữ liệubetter-sqlite3 (SQLite, ghi nhật ký WAL) + LowDB (JSON kế thừa) — 147 mô-đun miền, 233 bản di chuyển
Bộ nhớTìm kiếm toàn văn SQLite FTS5 + các vector embedding được lượng tử hóa int8, suy giảm có kiểu
Lược đồZod 4 — xác thực I/O công cụ MCP + hợp đồng API
Giao thứcMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
Truyền dữ liệuServer-Sent Events (SSE) + cầu nối WebSocket (/v1/ws)
NénQuy trình 12 công cụ — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph
Xác thực & bảo mậtOAuth 2.0 (PKCE) + JWT + API Keys + xác thực MCP giới hạn phạm vi · AES-256-GCM khi lưu trữ · DOMPurify
Ẩn danhwreq-js — giả lập dấu vân tay TLS JA3 / JA4, proxy 3 cấp
Khả năng chống lỗiBộ ngắt mạch, backoff lũy thừa, chống hiệu ứng đàn gia súc, tự phục hồi auto-combo
Ghi nhật kýpino — nhật ký JSON có cấu trúc với ngữ cảnh yêu cầu
Kiểm thửTrình chạy kiểm thử Node.js + Vitest — hơn 60.000 khai báo kiểm thử tĩnh trong hơn 8.400 tệp kiểm thử được theo dõi (unit, tích hợp, E2E, bảo mật, hệ sinh thái)
Nền tảngMáy tính để bàn (Electron) · Android (Termux) · PWA (mọi trình duyệt)
CI/CDGitHub Actions — tự động phát hành npm + Docker Hub khi phát hành bản mới
Liên kếtWebsite · npm · Docker Hub

## 📖 Tài liệu
### 📘 Bắt đầu
Tài liệuMô tả
Hướng dẫn sử dụngProvider, tổ hợp, tích hợp CLI, triển khai
Hướng dẫn thiết lậpĐầy đủ phương thức cài đặt, cấu hình công cụ CLI, thiết lập giao thức, tinh chỉnh thời gian chờ
Hướng dẫn công cụ CLIThiết lập riêng cho từng công cụ: Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot
Chế độ từ xaĐiều khiển OmniRoute từ xa (VPS) từ CLI trên laptop thông qua các access token có phạm vi giới hạn
Cấu hình Claude CodeTrỏ Claude Code đến OmniRoute (cục bộ/từ xa) bằng launch + profile cho từng model
Bắt đầu nhanhCài đặt → kết nối → cấu hình trong 3 bước
### 🔧 Vận hành & Triển khai
Tài liệuMô tả
Hướng dẫn DockerChạy Docker, profile Compose, HTTPS Caddy, tunnel, thẻ image
Hướng dẫn PodmanTích hợp Quadlet với systemd, podman-compose, SELinux
Triển khai VMHướng dẫn đầy đủ: thiết lập VM + nginx + Cloudflare
Triển khai Fly.ioTriển khai lên Fly.io với bộ nhớ lưu trữ bền vững
Hướng dẫn TermuxChạy OmniRoute trên Android thông qua Termux
Hướng dẫn PWACài đặt Progressive Web App, bộ nhớ đệm, kiến trúc
Hướng dẫn gỡ cài đặtXóa sạch đối với mọi phương thức cài đặt
Cấu hình môi trườngCác biến và tham chiếu .env đầy đủ
### 🧠 Tính năng & Kiến trúc
Tài liệuMô tả
Kiến trúcKiến trúc hệ thống, luồng dữ liệu và nội bộ
Hướng dẫn nénPipeline 7 tùy chọn: off / lite / standard / aggressive / ultra / RTK / stacked
Nén RTKNén đầu ra lệnh, bộ lọc, độ tin cậy, xác minh, khôi phục đầu ra thô
Engine nénCaveman, RTK, pipeline stacked, các giao diện dashboard/API/MCP
Định dạng quy tắc nénLược đồ gói quy tắc JSON cho bộ lọc Caveman và RTK
Gói ngôn ngữ nénPhát hiện ngôn ngữ và biên soạn gói quy tắc Caveman
Hướng dẫn khả năng phục hồiCircuit breaker, thời gian cooldown, hàng đợi, chống hiệu ứng đàn, giả mạo TLS
Engine Auto-ComboChấm điểm theo 16 yếu tố, gói chế độ, tự khắc phục
Hướng dẫn proxyHệ thống proxy 3 cấp, marketplace 1proxy, CRUD registry
Các gói miễn phíDanh mục tổng hợp: 34 pool định kỳ được ghi chép / 465 mục gói miễn phí được lập danh mục
Thư viện tính năngKhám phá dashboard trực quan kèm ảnh chụp màn hình
Tài liệu codebaseTổng quan codebase thân thiện với người mới bắt đầu
### 🤖 Giao thức & API
Tài liệuMô tả
Tài liệu tham khảo APITất cả endpoint kèm ví dụ
Đặc tả OpenAPIĐặc tả OpenAPI 3.0
MCP Server110 công cụ MCP, cấu hình IDE, client Python/TS/Go
Hướng dẫn MCP ServerCài đặt MCP, các phương thức truyền tải và tài liệu tham khảo công cụ
A2A ServerGiao thức JSON-RPC 2.0, skill, truyền phát, quản lý tác vụ
Hướng dẫn A2A ServerThẻ agent A2A, tác vụ, skill và truyền phát
### 📋 Dự án & Chất lượng
Tài liệuMô tả
Đóng gópThiết lập môi trường phát triển và hướng dẫn
Mô hình phân nhánh & phát hànhNơi PR hướng đến (release/*), ý nghĩa của main và các thẻ
Nhật ký thay đổiLịch sử phát hành đầy đủ theo từng phiên bản
Chính sách bảo mậtBáo cáo lỗ hổng và các thực tiễn bảo mật
Hướng dẫn i18nHỗ trợ 67 ngôn ngữ, quy trình dịch, RTL
Danh sách kiểm tra phát hànhCác bước xác thực trước khi phát hành
Kế hoạch độ bao phủChiến lược bao phủ kiểm thử cho hơn 60.000 khai báo kiểm thử tĩnh trên hơn 8.400 tệp kiểm thử được theo dõi

# ⭐ Những người đóng góp hàng đầu > OmniRoute được định hình bởi một cộng đồng mã nguồn mở đầy nhiệt huyết. Những cá nhân này đã có những đóng góp xuất sắc, tác động trực tiếp đến chất lượng, độ ổn định và phạm vi tiếp cận của dự án. **Xin cảm ơn.** ### Những người đóng góp bên ngoài theo số lượng pull request đã hợp nhất
HạngNgười đóng gópPR đã hợp nhất~Dòng đã thay đổi
1maxmad64bis41825,367,739
2HouMinXi29513,557,796
3pacocartones22281,551
4backryun210270,562
5JxnLexn1983,570,623
6oyi77190411,243
7KooshaPari1515,972,314
8rdself14580,663
9RaviTharuma123500,065
10herjarsa88230,872
11hartmark852,849,623
12jonlwheat2-gif6869,097
13artickc6243,502
14xiaoyaner020159126,220
15chirag127526,661
16xz-dev50245,976
17woodsonl48811,771
18rqzbeh46151,229
19MumuTW4328,166
19QuangBlue4313,112
Thống kê được thực hiện vào 2026-11-03 03:01:19 UTC với mã tip trực tiếp release/v3.8.53 05bc048d6c. Thống kê GitHub GraphQL được phân trang bao gồm 9.947 PR đã hợp nhất: 4.130 do chủ sở hữu kho lưu trữ thực hiện, 240 do Dependabot thực hiện, 6 do các bot/ứng dụng khác thực hiện và 5.571 PR bên ngoài từ 883 người đóng góp riêng biệt. “Dòng đã thay đổi” là tổng số dòng thêm + xóa trên GitHub và bao gồm các tệp được tạo tự động, lockfile, danh mục, bản dịch và tài liệu; đây là mức độ biến động, không phải LOC do tác giả viết. 53 PR báo cáo phần chênh lệch trên GitHub vượt quá 500.000 dòng (ví dụ #13399, một lần bổ sung nhà cung cấp duy nhất, liệt kê 2.347 tệp đã thay đổi), làm tăng tổng số ở trên. Các trường hợp bằng hạng được xếp cùng nhau. ### Các commit do GitHub ghi nhận
Dizzle
Dizzle

🥇 418 lượt commit được GitHub ghi nhận
Bob.Hou
Bob.Hou

🥈 294 lượt commit được GitHub ghi nhận
Paijo
Paijo

🥉 229 lượt commit được GitHub ghi nhận
Paco Cartones
Paco Cartones

🏅 222 lượt commit được GitHub ghi nhận
backryun
backryun

🏅 202 lượt commit được GitHub ghi nhận
Jan Leon
Jan Leon

🏅 134 lượt commit được GitHub ghi nhận
Ravi Tharuma
Ravi Tharuma

🏅 126 lượt commit được GitHub ghi nhận
Markus Hartung
Markus Hartung

🏅 115 lượt commit được GitHub ghi nhận
Randi
Randi

🏅 108 lượt commit được GitHub ghi nhận
Chris
Chris

🏅 70 lượt commit được GitHub ghi nhận
WebPerson
WebPerson

🏅 68 lượt commit được GitHub ghi nhận
Koosha Paridehpour
Koosha Paridehpour

🏅 68 lượt commit được GitHub ghi nhận
Kiểm tra lại vào 2026-11-03 02:09:16 UTC: các lượt commit được GitHub ghi nhận do Contributors API của kho lưu trữ báo cáo cho nhánh mặc định release/v3.8.53. API đã trả về 903 danh tính (429 người dùng, 2 bot, 472 danh tính ẩn danh); bảng này loại trừ người duy trì, bot và các danh tính ẩn danh, đồng thời giữ lại các trường hợp đồng hạng. Bảng này khác với cả bảng xếp hạng PR đã hợp nhất ở trên và cuộc thống kê siêu dữ liệu Git bên dưới. > 🙏 Các tính năng, bản sửa lỗi và cải tiến hạ tầng của những người đóng góp này là **một phần cốt lõi** làm nên độ tin cậy và sự phong phú về tính năng của OmniRoute. Mỗi pull request, mỗi trường hợp kiểm thử và mỗi tệp bản dịch i18n đều quan trọng. Mã nguồn mở được xây dựng bởi những người như họ.
---
## 💖 Nhà tài trợ
Xin chân thành cảm ơn những người đã tự bỏ tiền túi tài trợ cho OmniRoute — mỗi khoản đóng góp đều giúp dự án luôn miễn phí, độc lập và tiếp tục phát triển.
Andrew
Andrew

💛 Nhà tài trợ hằng tháng đang hoạt động
Vlad I
Vlad I

💛 Nhà tài trợ hằng tháng đang hoạt động
小妍儿
小妍儿

💛 Nhà tài trợ hằng tháng đang hoạt động
Guilherme Costa
Guilherme Costa

💛 Nhà tài trợ một lần đang hoạt động
Henrique Triches Iurkiv
Henrique Iurkiv

💛 Nhà tài trợ một lần đang hoạt động
Somesh Ghaturle
Somesh Ghaturle

💛 Nhà tài trợ một lần đang hoạt động
Kolonie AI
Kolonie AI

💛 Người ủng hộ một lần trước đây
Professor Igor Morais Vasconcelos
Prof. Igor Morais

💛 Người ủng hộ một lần trước đây
Pixma
Pixma

💛 Người ủng hộ một lần trước đây
Paco Cartones
Paco Cartones

💛 Người ủng hộ một lần trước đây
longtao
longtao

💛 Người ủng hộ một lần trước đây
… và những người khác muốn giữ kín danh tính 💛 Các nhà tài trợ công khai trên GitHub đã được xác thực lại vào ngày 2026-10-18 thông qua GitHub Sponsors GraphQL API: 11 khoản tài trợ công khai (6 đang hoạt động, 5 trước đây) trong tổng số 14 khoản. Trạng thái isActive của GitHub xác định các nhãn đang hoạt động ở trên; những người ủng hộ công khai một lần trước đây vẫn được tri ân, còn các nhà tài trợ riêng tư vẫn được ẩn danh. Các khoản quyên góp qua Ko-fi, Buy Me a Coffee, Liberapay, PIX và tiền mã hóa không được liệt kê vì không có hồ sơ nhà tài trợ công khai. 💖 Trở thành nhà tài trợ → — mỗi đô la đều giúp OmniRoute luôn miễn phí và độc lập.

## 👥 Hơn 1.000 người đóng góp
[![Contributors](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=1074&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) Được kiểm tra vào ngày 2026-11-02 tại tip release/v3.8.53 trực tiếp 1c7135e0fb (7.972 commit): 1.074 danh tính Git của con người đã được chuẩn hóa — 759 xuất hiện với tư cách tác giả commit (bao gồm cả người bảo trì) và 315 chỉ xuất hiện trong các trailer Co-authored-by rõ ràng. Việc thống kê áp dụng .mailmap, so sánh địa chỉ e-mail không phân biệt chữ hoa chữ thường, liên kết các địa chỉ GitHub noreply dạng số và dạng thông thường chỉ khi chúng mã hóa cùng một handle, loại trừ 29 danh tính bot/agent/dịch vụ/placeholder, và không gộp các địa chỉ e-mail thông thường chỉ vì tên hiển thị của chúng trùng khớp. Lần kiểm tra ngày 2026-08-24 đã công bố 639; việc chạy lại phương pháp này trên base ac02c5b42f của lần kiểm tra đó cho kết quả 619, vì vậy mức tăng đến từ những người đóng góp mới, không phải do phương pháp lỏng lẻo hơn. ### Cách đóng góp 1. Fork repository 2. Tạo branch từ tip `release/vX.Y.Z` **đang hoạt động** (không phải `main`) — xem [Mô hình phân nhánh & phát hành](docs/ops/BRANCHING_MODEL.md) 3. Tạo branch tính năng của bạn (`git checkout -b feat/amazing-feature`) 4. Commit các thay đổi của bạn (`git commit -m 'feat: add amazing feature'`) 5. Push lên branch (`git push origin feat/amazing-feature`) 6. Mở Pull Request với **base = branch `release/vX.Y.Z` đó** Xem [CONTRIBUTING.md](CONTRIBUTING.md) để biết hướng dẫn chi tiết. ### Phát hành phiên bản mới ```bash # Tạo bản phát hành — npm publish sẽ tự động được thực hiện VERSION=x.y.z gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes ```
## 📊 Sao Biểu đồ lịch sử sao
## 🌍 StarMapper StarMapper

## 🙏 Lời cảm ơn
OmniRoute được xây dựng trên nền tảng của những dự án lớn. Dự án bắt đầu dưới dạng một fork của **[9router](https://github.com/decolua/9router)** và một bản chuyển đổi TypeScript của dự án Go **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — và từ đó, mọi hệ thống con bên dưới đều được lấy cảm hứng từ một dự án mã nguồn mở đã đi trước. Mỗi dự án đều góp phần định hình một phần cụ thể của OmniRoute. Đây là lời cảm ơn của chúng tôi dành cho tất cả các dự án đó. 🙏 > ⭐ số lượng sao được xác minh từ GitHub REST API vào ngày 3 tháng 11 năm 2026 — hãy trao cho những dự án này một ngôi sao. Các số liệu là ảnh chụp chính xác tại thời điểm nêu trên và đương nhiên sẽ thay đổi theo thời gian. ### 🧬 Dòng phát triển & cổng kết nối
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
9router31,861Dự án gốc mà fork này được xây dựng dựa trên — được mở rộng tại đây với các API đa phương thức và một bản viết lại hoàn chỉnh bằng TypeScript.
CLIProxyAPI57,329Bản triển khai bằng Go đã truyền cảm hứng cho bản chuyển đổi JavaScript / TypeScript này.
LiteLLM62,580Cổng AI có bộ dữ liệu giá công khai cung cấp dữ liệu cho quá trình đồng bộ theo dõi chi phí của chúng tôi, đồng thời mô hình chuẩn hóa nhà cung cấp của dự án đã định hướng cho việc định tuyến.
codex-chatgpt-web15,435Mã nguồn MIT được điều chỉnh thành cầu nối ChatGPT Web → Codex Responses được tích hợp trong nhà cung cấp, bao gồm các bộ chuyển đổi phiên trình duyệt, đóng khung phản hồi, mức sử dụng và tìm kiếm web.
free-claude-code65,966Các mẫu được chuyển vào quá trình khôi phục luồng, bí danh no-thinking, tìm kiếm web dự phòng, giới hạn cửa sổ trượt, che giấu dữ liệu trong nhật ký và các luồng khởi chạy được tăng cường bảo mật.
composer-api347Các mẫu về lựa chọn công cụ Cursor Composer, ràng buộc đầu ra và xác nhận công cụ được điều chỉnh vào trình thực thi Cursor gốc.
codex-multi-auth561Các mẫu về đăng nhập mới và xoay vòng refresh-token được chuyển vào quá trình xác thực lại OAuth của Codex.
opencode-anthropic-auth562Các mặc định chuyển đổi tương thích với Claude Code và hành vi của billing-header được khái quát hóa thành cầu nối điều khiển bằng cấu hình của OmniRoute.
grok2api-merged2Các ánh xạ mô hình Grok, trình tạo Statsig giả lập TypeError, các mặc định về yêu cầu và thiết bị, cùng bộ xử lý phản hồi NDJSON của dự án đã được điều chỉnh đáng kể vào trình thực thi Grok Web của OmniRoute.
TQZHR/grok2api707Nguồn mã chuyển tiếp chính đứng sau grok2api-merged; các triển khai mô hình, header, payload, Statsig và bộ xử lý của dự án được giữ lại trong dòng phát triển Grok Web.
chenyme/grok2api7,874Mã nguồn MIT nền tảng cho các mặc định về payload và thiết bị của Grok, trình tạo Statsig và bộ xử lý result.response được truyền qua TQZHR và grok2api-merged.
grok2api-pro27Nguồn chuyển tiếp được grok2api-merged ghi nhận cho lớp proxy-pool; OmniRoute giữ lại thông báo về dòng phát triển này nhưng không tuyên bố đã chuyển cổng proxy-pool vào trình thực thi Grok Web có phạm vi giới hạn.
GrokProxy52Proxy Grok được xác thực bằng cookie và mẫu truyền luồng result.response.token của dự án đã định hướng cho lớp truyền tải Grok Web của OmniRoute.
GrokBridge5Thiết kế upstream HTTP/trình duyệt của triển khai Grok Web ban đầu đã được tham khảo; đường dẫn HTTP trực tiếp của dự án bắt nguồn từ GrokProxy, vì vậy không có tuyên bố chuyển cổng mã nguồn độc lập.
### 🗜️ Nén ngữ cảnh & token — các engine
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
Caveman116,957Dự án lan truyền với triết lý "why use many token when few token do trick" — triết lý nói kiểu người tiền sử của dự án cung cấp nền tảng cho chế độ nén tiêu chuẩn và hơn 30 quy tắc loại bỏ/ngưng tụ phần dư của chúng tôi.
RTK – Rust Token Killer85,350Nén đầu ra lệnh hiệu năng cao — truyền cảm hứng cho engine RTK, DSL bộ lọc JSON, khả năng khôi phục đầu ra thô và pipeline RTK → Caveman xếp chồng của chúng tôi.
headroom78,672Nén ngữ cảnh có thể đảo ngược (SmartCrusher) — truyền cảm hứng cho engine headroom và mẫu đánh dấu truy xuất ccr của chúng tôi.
LLMLingua6,797Nghiên cứu nén prompt (LLMLingua / LLMLingua-2) — truyền cảm hứng cho engine llmlingua không đồng bộ, an toàn với mã và mở khi có lỗi của chúng tôi.
llmlingua-2-js33Bản chuyển đổi JS/ONNX (MobileBERT / XLM-RoBERTa) được sử dụng làm backend worker-thread cho engine LLMLingua của chúng tôi.
Troglodita50Nén token PT-BR — cung cấp nền tảng cho gói ngôn ngữ pt-BR của chúng tôi: giảm từ thừa và loại bỏ phần đệm được tinh chỉnh cho ngữ pháp tiếng Bồ Đào Nha Brazil.
ponytail182,929Kỹ năng YAGNI-coder "lập trình viên cấp cao lười biếng" lan truyền — truyền cảm hứng cho Output Style less-code của chúng tôi: định hướng thay đổi nhỏ nhất nhưng vẫn hoạt động, giúp cắt giảm mã _được tạo_ (bổ trợ trên trục đầu ra cho văn xuôi súc tích của Caveman).
i-have-adhd59,838Phong cách phản hồi ưu tiên hành động, thân thiện với ADHD của dự án đã được điều chỉnh thành phong cách đầu ra súc tích của OmniRoute trên năm ngôn ngữ.
### 🧩 Định dạng nhỏ gọn, nghiên cứu token & công cụ nhận biết mã
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
TOON25,602Token-Oriented Object Notation — mô hình dạng cột gồm phần tiêu đề và các hàng đã định hình giai đoạn nén dạng bảng của chúng tôi.
GCF – Graph Compact Format61Định dạng đồ thị nhỏ gọn và thiết kế generic-profile của dự án đã cung cấp thông tin cho tính năng nén dạng bảng và định dạng codec Headroom của OmniRoute.
gcf-typescript4Bản triển khai TypeScript theo giấy phép MIT được tích hợp trực tiếp và mở rộng thành codec generic-profile của Headroom.
token-optimizer-mcp566Bộ nhớ đệm Brotli/SQLite + delta ngữ cảnh theo từng phiên — truyền cảm hứng cho engine session-dedup của chúng tôi.
token-savior1,203Nén đầu ra Bash + các profile MCP — truyền cảm hứng cho nguyên tắc kỷ luật dừng nén và việc giảm manifest công cụ MCP của chúng tôi.
token-saver162Nén đầu ra nhận biết nội dung theo từng loại tệp, có cơ chế dừng khi phát hiện lỗi — xác thực cơ chế phân phối theo loại và bỏ qua khi mức lợi ích tối thiểu của chúng tôi.
token-optimizer2,853"Tìm các token ma" — mẫu chuyển tải + handle có thể khôi phục của dự án đã cung cấp thông tin cho tư duy chuyển tải CCR của chúng tôi.
TokenMizer34Bản thiết kế đồ thị phiên + loại bỏ trùng dòng giữa các lượt đã cung cấp thông tin cho thiết kế session-dedup của chúng tôi.
OmniCompress3JSON dạng cột trong Rust + truy xuất dựa trên địa chỉ nội dung + loại bỏ trùng lặp giữa các tin nhắn — xác thực thiết kế engine headroom/ccr/session-dedup và bất biến "dạng nén không phụ thuộc vị trí, ổn định với bộ nhớ đệm" của chúng tôi.
mcp-compressor140Nén schema/mô tả công cụ MCP — cung cấp thông tin cho việc giảm số lượng manifest công cụ MCP của chúng tôi.
RepoMapper218Xếp hạng repo-map theo phong cách Aider — cung cấp thông tin cho quá trình khám phá repo-map / xếp hạng truy xuất của chúng tôi.
quiet-shell-mcp4Giảm đầu ra shell khai báo qua MCP — xác thực tính năng nén đầu ra bash khai báo của chúng tôi.
ts-morph6,222Bộ công cụ TypeScript Compiler API — truyền cảm hứng cho việc loại bỏ chú thích dựa trên parser, đồng thời bảo toàn các literal chuỗi, template và biểu thức chính quy.
### 🧠 Bộ nhớ & RAG
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
Mem068,294Lớp bộ nhớ phổ quát — mô hình proxy làm ranh giới ghi/đọc của dự án đã định hình kiến trúc bộ nhớ của chúng tôi.
Letta (MemGPT)25,321Các agent có trạng thái với bộ nhớ phân tầng — truyền cảm hứng cho mô hình phân tầng Context Control & Recovery (CCR) của chúng tôi.
WFGY1,804Phân loại ProblemMap gồm 16 chế độ lỗi RAG/LLM lặp lại — cung cấp từ vựng chung trong hướng dẫn khắc phục sự cố của chúng tôi.
### 🛰️ Kiểm tra lưu lượng, MITM & proxy minh bạch
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
llm-interceptor81Việc chặn/phân tích MITM lưu lượng giữa trợ lý lập trình ↔ LLM đã cung cấp thông tin cho các yêu cầu ban đầu của Traffic Inspector. Bốn mô-đun trước đây được suy ra — hợp nhất SSE, chuẩn hóa hội thoại, che giấu bí mật và làm sạch tiêu đề — đã được thay thế bằng các triển khai độc lập theo phương pháp clean-room, dựa trên các tiêu chuẩn giao thức công khai. Hai bề mặt chuyển tiếp máy chủ (passthrough.ts và _internal/bypass.cjs) vẫn là các triển khai nội bộ của OmniRoute, được phân loại độc lập; chúng không được viết lại trong quá trình thay thế đó.
ProxyBridge6,978Định tuyến proxy minh bạch theo từng tiến trình — truyền cảm hứng cho quá trình dọn dẹp MITM an toàn khi gặp sự cố, thời gian chờ khi socket nhàn rỗi, việc xác định tiến trình qua /proc và tính năng thu thập TPROXY của chúng tôi.
### 📚 Dữ liệu mô hình, khả năng quan sát & giao diện người dùng
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
models.dev7,486Cơ sở dữ liệu mở về thông số, giá cả và khả năng của các mô hình AI — được đồng bộ nguyên bản vào danh mục mô hình của chúng tôi.
React Flow / xyflow38,874Thư viện đồ thị dựa trên nút cung cấp nền tảng cho Compression Studio và Combo/Routing Studio theo thời gian thực của chúng tôi.
LangGraph44,349Tính năng trực quan hóa đồ thị quy trình làm việc trực tiếp của LangGraph Studio đã truyền cảm hứng cho chế độ xem cascade theo thời gian thực trong các Studio của chúng tôi.
Langfuse36,907Mô hình khả năng quan sát trace → span → generation của dự án đã định hình chế độ xem thác nước trong Compression Studio của chúng tôi.
Kiali3,647Khả năng quan sát service mesh Istio — truyền cảm hứng cho các huy hiệu circuit breaker và hình ảnh cạnh lỗi trong Routing/Combo Studio.
lobe-icons2,666Các logo thương hiệu AI/LLM được dùng để hiển thị biểu tượng nhà cung cấp trên dashboard của chúng tôi.
flag-icons12,499Cung cấp các cờ SVG được cấp phép MIT dùng cho bộ chọn ngôn ngữ của README.
### 🛡️ Bảo mật
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
awesome-secure-defaults723Danh sách được tuyển chọn các thư viện bảo mật theo mặc định, định hướng cho những lựa chọn bảo mật của chúng tôi (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
### 🧭 Công cụ bổ trợ
Dự án⭐Cách dự án truyền cảm hứng cho OmniRoute
ClawRouter6,649Truyền cảm hứng cho tính năng loại bỏ yêu cầu trùng lặp, phương án dự phòng khẩn cấp không tốn chi phí, các chiến lược Auto-Combo có thể cắm thêm và phân loại ý định đa ngôn ngữ.
Antigravity-Manager32,785Tính năng ánh xạ lại mô hình theo tài khoản, xác thực đường dẫn tệp thực thi và hành vi nhãn gói cước của dự án đã cung cấp thông tin cho runtime Antigravity của OmniRoute.
vscode-antigravity-cockpit4,852Định dạng đếm ngược ngắn gọn đến thời điểm đặt lại hạn mức của dự án đã truyền cảm hứng cho phần hiển thị giới hạn nhà cung cấp tương ứng trong OmniRoute.
AionUi33,996Các tích hợp ACP của dự án đã truyền cảm hứng cho tính năng tự động phát hiện các agent CLI đã cài đặt của OmniRoute.
CodexBar22,955Đã xác định bề mặt hạn mức Grok Build; sau đó OmniRoute đã độc lập xác minh và hiệu chỉnh định dạng wire đang hoạt động.
## 📄 Giấy phép Giấy phép MIT - xem [LICENSE](LICENSE) để biết thêm chi tiết. ---
**[⬆ Quay lại đầu trang](#-omniroute)** · Được xây dựng ❤️ vì cộng đồng AI mã nguồn mở. Được tạo bởi Diego Souza · OmniRoute v3.8.54 · Node ≥22.22.2 · Giấy phép MIT · omniroute.online