# 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í OmniRoute — Không bao giờ ngừng lập trình. Mọi công cụ AI → 372 nhà cung cấp — hơn 150 miễn phí — thông qua một endpoint duy nhất. Kết nối Claude Code, Codex, Cursor, Cline, Copilot và Antigravity với Claude / GPT / Gemini MIỄN PHÍ cùng cơ chế tự động chuyển đổi dự phòng. Tính năng nén kết hợp RTK + Caveman giúp tiết kiệm 15–95% token (trung bình ~89%) — không bao giờ chạm giới hạn. 372 nhà cung cấp AI · hơn 150 gói miễn phí · ~1,62 tỷ token miễn phí/tháng · 19 chiến lược định tuyến · bắt đầu với $0.
## 💰 ~1,62 Tỷ Token / Tháng Trên Các Gói Miễn Phí Của Bên Thứ Ba
> **Sử dụng tài khoản nhà cung cấp của riêng bạn.** Đây là tổng ước tính từ các gói miễn phí riêng biệt của bên thứ ba mà bạn đủ điều kiện sử dụng, không phải khoản token do OmniRoute cấp. 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 hạn mức, tính khả dụng và điều khoản của mình. > > Việc kết hợp thủ công các gói miễn phí rất phiền phức — hàng chục SDK, hàng chục giới hạn tốc độ và không thể biết bạn thực sự có bao nhiêu. OmniRoute lập danh mục **489 mục gói miễn phí thuộc 35 khóa nhóm định kỳ** và tính tổng token nổi bật từ **17 nhóm có ngân sách hằng tháng dương được công bố cùng năm hạn mức Groq theo từng mô hình**, đồng thời loại bỏ trùng lặp theo nhóm dùng chung. Các hạn ngạch chỉ được mở sau khi xác minh danh tính theo khu vực (hiện tại: ModelScope) được hiển thị riêng, +~6M sau bước xác minh danh tính theo khu vực, và không bao giờ được cộng vào con số nổi bật. Kết quả luô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: ổn định ở mức ~1,62 tỷ token miễn phí mỗi tháng, lên đến ~2,22 tỷ trong tháng đầu tiên nhờ tín dụng đăng ký, từ 35 khóa nhóm định kỳ được ghi nhận, bao gồm 489 mục gói miễn phí đã lập danh mục phía sau một endpoint duy nhất. Phép tính minh bạch đã loại bỏ trùng lặp 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 hạn mức Groq theo từng mô hình; 13 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 hạn mức theo từng mô hình) và các nhóm nhỏ hơn, cùng tín dụng đăng ký trong tháng đầu tiên và các nhà cung cấp miễn phí vĩnh viễn không có hạn mức token được hiển thị riêng để chúng không bao giờ làm tăng giả tạo con số nổi bật. Số lượng đã dùng/còn lại theo thời gian thực tại /dashboard/free-tiers. > Bản tóm tắt động của trang `/dashboard/free-tiers` trực tiếp. Phương pháp đầy đủ (loại bỏ trùng lặp theo nhóm, các cấp 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ể thay đổi theo cả hai chiều** — một nhà cung cấp chấm dứt gói miễn phí thì con số giảm xuống; một gói mới xuất hiện thì con số tăng lên. 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ờ dùng trường hợp tốt nhất đã được làm tròn lên.

⭐ Hãy gắn sao cho repo nếu OMNIROUTE đã giúp bạn tiết kiệm chi phí và làm việc dễ dàng hơn.

[![Số sao](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute) diegosouzapw%2FOmniRoute | Trendshift [![Thứ hạng lịch sử 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 người bảo trì — nhận thông tin về nhà cung cấp mới, bản phát hành và mẹo 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) [![Trang web](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 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)**
## 📈 Cổng kết nối không ngừng phát triển
| | v3.8.50 | **v3.8.51** | `v3.8.52+` | | --------------------------------- | :----------------------------: | :---------: | :-------------------: | | 🌐 Nhà cung cấp | 352 | **358** | 372 | | 🧠 ID mô hình trò chuyện duy nhất | 1320 | **1374** | 1443 | | 🖼️ Cầu nối phương thức | 🆕 hình ảnh + âm thanh + video | ✓ | ✓ | | 📡 Danh mục Radar miễn phí | 🆕 tùy chọn tham gia | ✓ | ✓ | | ⚖️ Lập lịch có xét hạn ngạch | 🆕 Chia sẻ hạn ngạch | ✓ | ✓ | | 📊 Dữ liệu đo hạn ngạch | 🆕 theo thời gian thực | ✓ | ✓ | | 🧰 Chế độ không giao diện | — | — | 🆕 `serve --headless` | | 🛤️ Hạ tầng nhánh LTS | — | — | 🆕 các kênh phát hành | **→ [Lộ trình](ROADMAP.md) — tiến theo lộ trình đến `v3.9.0 LTS`**

## 🧩 Có sẵn [![phiên bản npm](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute) ![Lượt tải 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 kéo 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 🆓 Không cần cấu hình
💡 Tìm hiểu 💥 Cam kết 🤔 Tại sao chọn OmniRoute 🏆 Điểm khác biệt
⚙️ Tính năng 🎯 Combo 🌐 Nhà cung cấp 🔌 CLI & MCP
🗜️ Nén 🖥️ Nơi triển khai 🔒 Riêng tư
👀 Xem 🎬 Hoạt động thực tế ✨ Có gì mới 🤖 Các CLI tương thích
💚 Hỗ trợ 💚 Hỗ trợ / Quyên góp 💬 Cộng đồng 💖 Nhà tài trợ
📦 Dự án 🛠️ Ngăn xếp công nghệ 📖 Tài liệu 👥 Người đóng góp
🌐 Có sẵn bằng 67 ngôn ngữ

Tiếng Anh (en) Tiếng Bồ Đào Nha — Brasil (pt-BR) Tiếng Bồ Đào Nha (pt) Tiếng Tây Ban Nha (es) Tiếng Pháp (fr) Tiếng Ý (it) Tiếng Đức (de) Tiếng Hà Lan (nl) Tiếng Nga (ru) Tiếng Ukraina (uk-UA) Tiếng Ba Lan (pl) Tiếng Séc (cs) Tiếng Slovakia (sk) Tiếng Romania (ro) Tiếng Hungary (hu) Tiếng Bulgaria (bg) Tiếng Đan Mạch (da) Tiếng Phần Lan (fi) Tiếng Na Uy (no) Tiếng Thụy Điển (sv) Tiếng Trung — Giản thể (zh-CN) Tiếng Trung — Phồn thể (zh-TW) Tiếng Nhật (ja) Tiếng Hàn (ko) Tiếng Thái (th) Tiếng Việt (vi) Tiếng Indonesia (id) Tiếng Mã Lai (ms) Tiếng Filipino (phi) Tiếng Hindi (hi) Tiếng Gujarat (gu) Tiếng Marathi (mr) Tiếng Tamil (ta) Tiếng Telugu (te) Tiếng Bengal (bn) Tiếng Urdu (ur) Tiếng Ba Tư (fa) Tiếng Ả Rập (ar) Tiếng Hebrew (he) Tiếng Thổ Nhĩ Kỳ (tr) Tiếng Azerbaijan (az) Tiếng Swahili (sw) Tiếng Hy Lạp (el) Tiếng Croatia (hr) Tiếng Serbia (sr) Tiếng Litva (lt) Tiếng Estonia (et) Tiếng Latvia (lv) Tiếng Slovenia (sl) Tiếng Malta (mt) Tiếng Ireland (ga) Tiếng Kannada (kn) Tiếng Malayalam (ml) Tiếng Odia (or) Tiếng Punjab (pa) Tiếng Nepal (ne) Tiếng Sinhala (si) Tiếng Myanmar (my) Tiếng Khmer (km) Tiếng Hausa (ha) Tiếng Yoruba (yo) Tiếng Igbo (ig) Tiếng Amhara (am) Tiếng Uzbek (uz) Tiếng Gruzia (ka) Tiếng Armenia (hy) Tiếng Bosnia (bs)


## 🆓 Cài đặt, kết nối nhà cung cấp, rồi định tuyến qua một endpoint
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 riêng bạn, rồi 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 nhà cung cấp, hãy 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ó đích không cần khóa nào đủ điều kiện, và nhà cung cấp không cần 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 OpenCode Free và Kiro, mặc định bị loại khỏi định tuyến tự động; việc kết nối tài khoản không ghi đè cài đặt đó. 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 khởi động nhanh có thể sao chép-dán cho **Python, Node.js, PHP và cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Cam kết
Cam kết — Một endpoint và 372 nhà cung cấp. Cơ chế dự phòng tự động duy trì định tuyến miễn là vẫn còn một đích khỏe mạnh khác. Sáu trụ cột: dự phòng bền bỉ trên 372 nhà cung cấp · tiết kiệm tới 95% token cho các khối lượng công việc đủ điều kiện · bắt đầu với $0 nhờ hơn 150 gói miễn phí và 54 nhà cung cấp miễn phí vĩnh viễn theo định kỳ/không cần khóa · 36 tích hợp CLI/agent chỉ qua một cấu hình · tương thích với OpenAI, Claude, Gemini và Responses API tại /v1 · các cơ chế kiểm soát cấp sản xuất, bao gồm circuit breaker, TLS tàng hình, MCP với 110 công cụ, A2A, bộ nhớ, guardrail, đánh giá và hơn 39.000 khai báo kiểm thử tĩnh trên hơn 5.100 tệp kiểm thử được theo dõi.

# 🤔 Tại sao chọn OmniRoute?
Tại sao chọn OmniRoute — không còn phải xoay xở với 10 dashboard, khóa API không còn hoạt động và các hóa đơn bất ngờ. Mười vấn đề hằng ngày cùng giải pháp: hạn mức hết hạn mà chưa dùng → tận dụng tối đa các gói đăng ký; chạm giới hạn tốc độ giữa lúc lập trình → tự động dự phòng 4 tầng (Gói đăng ký → API → Giá rẻ → Miễn phí); đầu ra công cụ ngốn token → nén bằng RTK + Caveman (15–95%); API đắt đỏ → định tuyến tối ưu chi phí; mỗi công cụ cần một thiết lập riêng → một endpoint, một dashboard; AI bị chặn → proxy 3 cấp + TLS tàng hình; khóa không còn hoạt động → khả năng phục hồi 3 lớp (circuit breaker, thời gian chờ cho khóa, khóa mô hình); cả nhóm dùng chung một gói đăng ký → nhóm khóa với hạn mức chia sẻ công bằng; prompt đi qua đám mây của người khác → ưu tiên cục bộ với khóa được mã hóa AES-256-GCM; không thể theo dõi chi phí → phân tích trực tiếp (mức sử dụng, hạn mức, 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 bằng RTK + Caveman, 19 chiến lược định tuyến, circuit breaker, TLS tàng hình, MCP, A2A, guardrail) có thể chuyển sang tuyến dự phòng qua 4 tầng nhà cung cấp miễn là vẫn còn một đích đủ điều kiện và khỏe mạnh — Tầng 1 Gói đăng ký, Tầng 2 Khóa API, Tầng 3 Giá rẻ và Tầng 4 Miễn phí.

## 🤝 Đượ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
Ảnh động minh họa toàn bộ 19 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, cache-optimized, lkgp, auto, fusion, pipeline. Xem bảng phía trên để biết chức năng của từng chiến lược. > **Combo** là một chuỗi mô hình mà OmniRoute định tuyến qua một cách **tự động**. Nếu hết hạn mức, 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 đủ điều kiện và đang hoạt động tốt 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ể) và OmniRoute sẽ xây dựng một combo ảo từ các nhà cung cấp đã kết nối, được chấm điểm theo thời gian thực:
ID mô hìnhTiêu chí tối ưu
auto🎯 Mặc định cân bằng (LKGP — tiếp tục dùng nhà cung cấp tốt gần nhất)
auto/coding🧑💻 Trọng số ưu tiên chất lượng để 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/offline🔋 Ưu tiên mức dư hạn mức / giới hạn tốc độ lớn nhất
auto/smart🔭 Ưu tiên chất lượng + 10% khám phá để tìm các mô hình tốt hơn
auto/lkgp📌 Bám rõ ràng vào nhà cung cấp tốt gần nhất
auto/chaos🧪 Phân tán 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 ngược dòng, không phải chèn lỗi
## ### 🔀 Hoặc tự xây dựng — 19 chiến lược định tuyến Toàn bộ **19** chiến lược — kết hợp tùy ý cho từng bước của combo:
# Chiến lược Chức nă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 mức của từng mục tiêu trước khi chuyển tiếp
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 theo phương pháp chọn một trong hai
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ỏ 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 🎲
9 cost-optimized Giảm thiểu chi phí $ trên 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ó hạn mức còn lại nhiều nhất
11 reset-window Ưu tiên mục tiêu có khung thời gian hạn mức được đặt lại sớm nhất
12 reset-aware Xếp hạng theo thời điểm đặt lại hạn mức — ưu tiên các khung thời gian ngắn 📊
13 context-relay Chuyển tiếp ngữ cảnh giữa các mục tiêu cho những cuộc hội thoại dài 🧠
14 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
15 cache-optimized Gắn cố định 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 🎯
16 lkgp Đường dẫn tốt gần nhất — gắn cố định vào nhà cung cấp thành công gần nhất, sau đó dự phòng theo các quy tắc
17 auto Chấm điểm trực tiếp theo 16 yếu tố trên mọi kết nối 🤖
18 fusion Phân tán yêu cầu đến một nhóm mô hình + một mô hình đánh giá tổng hợp thành một câu trả lời 🧬
19 pipeline Xâu chuỗi các bước — đầu ra của mỗi mục tiêu được đưa vào 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 hoạt độ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, đúng lớp cho đúng 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 408/5xx, ngưỡng OAuth 8× / API-key 12× / local 2×, đặt lại sau 60s/30s/15s sang trạng thái thăm dò HALF-OPEN, phục hồi thụ động; khi ở trạng thái OPEN, combo sẽ định tuyến lại đến 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): cơ sở 5s với OAuth / 3s với API-key, thời gian chờ tăng theo cấp số nhân ×2 kèm cơ chế chống hiệu ứng đám đông, 429 tuân theo Retry-After, thành công sẽ xóa toàn bộ trạng thái lỗi; một 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 từ chối chế độ chỉ khóa riêng mô hình đó — không bao giờ khóa toàn bộ kết nối. Các trạng thái kết thúc (bị cấm, hết hạn, hết tín dụng) dành cho 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 nên sự khác biệt của OmniRoute
Điều gì làm nên sự khác biệt của OmniRoute — ảnh chụp nhanh 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: 372 nhà cung cấp, tích hợp sẵn hơn 150 gói miễn phí, 19 chiến lược định tuyến, nén token bằng 12 engine, máy chủ MCP tích hợp với 110 công cụ, giao thức tác nhân A2A, bộ nhớ liên tục, rào chắn bảo vệ, tác nhân đám mây, ẩn mình bằng dấu vân tay TLS, Desktop/Termux/PWA và giao diện được bản địa hóa sang 42 ngôn ngữ. OmniRoute được cấp phép theo MIT và có thể tự lưu trữ. Khả năng và số liệu 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.50**. Xem toàn bộ lịch sử trong [`CHANGELOG.md`](CHANGELOG.md). - **🎛️ OmniConductor** — ủy quyền A2A đầu vào cho đội tác nhân của bạn, các kỹ năng Conductor trên Agent Card và bảng điều khiển có tính năng trò chuyện thoại nhấn-để-nói Faro. → [Máy chủ A2A](docs/frameworks/A2A-SERVER.md) - **🛂 Kiểm soát 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 đưa vào hàng đợi thay vì trả về lỗi 503, với các lease RPM cuốn chiếu nguyên tử cho từng kết nối. → [Hướng dẫn khả năng phục hồi](docs/architecture/RESILIENCE_GUIDE.md) - **🗂️ Thứ tự `/v1/models` chuẩn hóa** — mỗi nhà cung cấp có một khối liền mạch được nhóm theo nhà cung cấp (các combo được ghim trước), ổn định trên mọi nguồn danh mục. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🗜️ Tăng cường khả năng nén** — trình bảo vệ giải nén được bật mặc định, các gói Caveman cho DE / FR / JA + tiếng Trung (wényán), bộ lọc RTK cho Gradle & .NET. → [Nén](docs/compression/COMPRESSION_ENGINES.md) - **💸 Chi phí gói cố định minh bạch** — các nhà cung cấp theo gói đăng ký / gói lập trình hiển thị chi phí **$0** trong phân tích chi phí; ngân sách, hạn ngạch & đị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 ngạch của một tài khoản dùng chung giữa các khóa trong nhóm, đồng thời duy trì hiệu suất bằng cách cho mượn các phần hạn ngạch nhàn rỗi. → [Hướng dẫn khả năng phục hồi](docs/architecture/RESILIENCE_GUIDE.md) - **🤖 Thiết lập CLI/tác nhân bằng một lệnh** — 13 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ợ 10 đích với trình chọn nhà cung cấp+mô hình tương tác và các mục 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 OmniRoute từ xa bằng token có phạm vi (`connect` / `contexts` / `tokens`) + trình trợ giúp OAuth `antigravity` dành cho các bản 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** (hội đồng mô hình + bộ đánh giá), định tuyến nhận biết tác vụ, ghi đè mô hình / chế độ / 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 + 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)** — thu thập lưu lượng từ các CLI bỏ qua biến môi trường proxy, với CA theo từng SNI + trình cài đặt kho tin cậy. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md) - **💸 Dữ liệu đo lường chi phí ở mọi nơi** — các header chi phí/mức sử dụng `X-OmniRoute-*` trên mọi endpoint, header khoản tiết kiệm từ cache-HIT, hạn ngạch 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** — mặc định tắt, tùy chọn sử dụng 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** — trình bảo vệ chống chèn prompt trên mọi tuyến LLM (bộ kiểm thử red-team), cơ chế bảo vệ che thông tin xác thực tùy chọn (ẩn các API key/bí mật bị rò rỉ theo cả hai chiều), tìm kiếm web dự phòng cuối cùng miễn phí bằng DuckDuckGo và cổng đăng nhập OIDC tùy chọn cho bảng điều khiển (đăng nhập bằng mật khẩu luôn khả dụng). → [Cơ chế bảo vệ](docs/security/GUARDRAILS.md) - **🖼️ Endpoint mới** — `/v1/ocr` (Mistral OCR) và `/v1/audio/translations` (kiểu Whisper) hoàn thiện phạm vi xử lý nội dung đa phương tiện. → [Tham chiếu API](docs/reference/API_REFERENCE.md) - **🎨 Tạo hình ảnh / video / âm thanh** — một API duy nhất cho nội dung đa phương tiện: 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` cho 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, độ tin cậy MITM không cần quyền root, bản địa hóa zh-TW. → [Môi trường](docs/reference/ENVIRONMENT.md) - **🤝 Thêm nhiều nhà cung cấp & tác nhân** — các tác nhân đám mây (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) với trình duyệt + đăng nhập OAuth, thẻ Ollama hạng nhất, Claude Opus 5 & Sonnet 5, quan hệ đối tác chính thức với Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… và **danh mục 352 nhà cung cấp** được làm mới. → [Nhà cung cấp](docs/reference/PROVIDER_REFERENCE.md) - **📡 Tính minh bạch của định tuyến** — mọi phản hồi đều có header `X-OmniRoute-Decision` cho biết chiến lược/nhà cung cấp/độ trễ đã phục vụ phản hồi đó; một chiến lược combo `cache-optimized` mới + hệ số `cacheAffinity` của Auto-Combo định tuyến các yêu cầu lặp lại trở về kết nối đang giữ tiền tố được lưu trong bộ nhớ đệm; và endpoint chỉ đọc `/v1/auto-combo/{channel}/candidates` hiển thị nhóm ứng viên trực tiếp của một kênh `auto/*`. → [Auto-Combo](docs/routing/AUTO-COMBO.md) - **⚡ Hiệu năng cục bộ & hạ tầng** — 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 kho Obsidian (22 công cụ MCP), API Batch & Files tương thích OpenAI, bộ nhớ đệm phản hồi ngữ nghĩa, trò chơi hóa với bảng xếp hạng, khám phá 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, phân luồng song song đến nhiều mô hình bằng `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 & Agent lập trình tương thích > Một cấu hình — `http://localhost:20128/v1` — và **mọi** IDE AI hoặc CLI đều chạy được với các mô hình miễn phí và 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 · mọi công cụ tương thích với OpenAI
📖 Hướng dẫn thiết lập riêng cho từng công cụ trong tổng số 36 công cụ (26 CLI Code + 10 CLI Agent) → [`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 chỉ bằng một lệnh** — không ghi tệp cấu hình, thông tin xác thực được đưa vào riêng cho từng tiến trình, Qwen/Gemini sử dụng thư mục home tạm thời và 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 provider+model theo cách tương tác và ghi cấu hình riêng của công cụ: omniroute configure codex # cũng hỗ trợ: claude opencode qwen aider goose gemini cline continue kilo ``` Mọi lệnh đều sử dụng ngữ cảnh remote đang hoạt động (`omniroute connect `), `--dry-run` cho phép xem trước chính xác các biến môi trường/tham số mà không thực thi, và `--api-key-env NAME` giúp tránh lưu khóa bí mật vào lịch sử shell. → [Tích hợp CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 372 Nhà cung cấp AI — 154 nhà cung cấp được đánh dấu miễn phí trong danh mục
> **372 nhà cung cấp đã đăng ký** trong 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, bao gồm **154 nhà cung cấp mang siêu dữ liệu khám phá `hasFree: true`**. Sổ đăng ký mô hình trò chuyện bao gồm **237 nhà cung cấp / 3.009 cặp nhà cung cấp-mô hình riêng biệt / 1.443 ID mô hình thô**; danh mục ngân sách miễn phí riêng biệt có **491 hàng theo từng mô hình**, **35 nhóm định kỳ** và **54 nhà cung cấp miễn phí vĩnh viễn theo định kỳ/không cần khóa**. Đây là các mẫu số khác nhau theo chủ đích; các định nghĩa và phép tính đã khử trùng lặp theo nhóm có 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 nghiên cứu lớn — thông qua một điểm cuối 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 330 nhà cung cấp khác — mọi biểu tượng đều được tải trực tiếp từ danh mục nhà cung cấp của bảng điều khiển. 📖 [Tài liệu tham khảo về nhà cung cấp](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Miễn phí vĩnh viễn — $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í vĩnh viễn
Requesty
Requesty
GPT-OSS 120B, Nemotron
Miễn phí vĩnh viễn
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í vĩnh viễn
Baidu ERNIE
Baidu ERNIE
ERNIE 4.0
Miễn phí vĩnh viễn
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 nơ-ron/ngày
NVIDIA NIM
NVIDIA NIM
GLM, MiniMax
Miễn phí ~40 RPM
Cerebras
Cerebras
GLM 4.7, GPT-OSS
Tín dụng $5 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)
## 🖥️ OmniRoute Chạy Ở Đâu — 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ục đến **điện thoại của bạn** thông qua Termux.
Nền tảngCài đặtĐiểm nổi bật
📦 npm (toàn cục)npm install -g omnirouteMột lệnh, mọi hệ điều hành
🐳 Dockerdocker run … diegosouzapw/omnirouteĐa kiến trúc AMD64 + ARM64
🖥️ Máy tính để bàn (Electron)npm run electron:buildCửa sổ gốc + khay hệ thống — Windows / macOS / Linux
🎩 Thanh menu (OmniRouteTray)brew install --cask zoispag/tap/omniroute-trayGiám sát & tự động cập nhật máy chủ — macOS
💪 ARMarm64 nguyên bảnRaspberry Pi, máy chủ ARM, Apple Silicon
📱 Android (Termux)pkg install nodejs && npx -y omnirouteChạ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
🧩 Plugin OpenCode@omniroute/opencode-providerTích hợp OpenCode nguyên bản
🤖 VS Code Copilot Chatcài đặt tiện ích mở rộng OmniCopilotMọi mô hình OmniRoute trong bộ chọn Copilot Chat nguyên bản — bản ổn định & Insiders
🛠️ Từ mã nguồnnpm install && npm run devTùy biến, đóng góp
📖 [Hướng dẫn Docker](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 Copilot Chat nguyên bản của VS Code
> Không có thanh bên mới, không có giao diện trò chuyện mới — mọi mô hình do OmniRoute cung cấp đều xuất hiện ngay trong > **bộ chọn mô hình Copilot Chat mà bạn đã sử dụng**. Kể từ VS Code 1.122, các mô hình của nhà cung cấp hoạt động > mà không cần đăng nhập GitHub hoặc đăng ký Copilot — chế độ tác nhân, gọi công cụ và thị giác, hoàn toàn > miễn phí. Cài đặt tiện ích mở rộng **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)**, trỏ tiện ích đến máy chủ OmniRoute của bạn (mặc định là `localhost:20128`), sau đó mở Copilot Chat → bộ chọn mô hình → **Quản lý mô hình…** → **OmniRoute**.
Cửa hàngLiên kếtHoạt động với
🧩 VS Code MarketplaceCài đặt →VS Code — bản ổn định & Insiders
🔓 Open VSX RegistryCài đặt →Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro…
Từ bên trong trình soạn thảo: mở chế độ xem **Tiện ích mở rộng**, tìm kiếm **"OmniRoute"**, nhấp vào **Cài đặt** — hoạt động theo cùng một cách trên cả hai cửa hàng. Mã nguồn, các vấn đề và tài liệu quy trình phát hành nằm tại [diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot). 📖 [Hướng dẫn VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — thiết lập, nội dung bộ chọn hiển thị, bảng điều khiển trong một tab, khắc phục sự cố
### 🎩 Mới: OmniRouteTray — cổng kết nối của bạn, nằm ngay trên thanh menu
> `omniroute serve` hoạt động tốt nhất khi luôn được bật. **[OmniRouteTray](https://github.com/zoispag/omniroute-tray)** > biến việc đó thành một ứng dụng thanh menu chỉ cần thiết lập một lần trên macOS: ứng dụng khởi động máy chủ, duy trì hoạt động > sau khi khởi động lại, cập nhật tại chỗ và giúp bạn xem ngân sách token trực tiếp chỉ với một cú nhấp chuột — **không > cần để cửa sổ dòng lệnh mở, không cần trông chừng `npm install -g omniroute`.** Được xây dựng bằng [Tauri v2](https://v2.tauri.app/) (lõi Rust nhỏ đến mức có thể xem như sai số làm tròn), ứng dụng đi kèm môi trường chạy Node 24 đã được ký riêng và quản lý bản cài đặt OmniRoute thuộc sở hữu của ứng dụng, vì vậy không bao giờ xung đột với `node`/`bun` toàn cục của bạn. Ứng dụng **dùng chung cấu hình và cơ sở dữ liệu `~/.omniroute/` hiện có của bạn** — vì vậy đây vẫn là OmniRoute mà bạn đang chạy, chỉ là được đội thêm một chiếc mũ. 🎩
Chức năngCách thức
🟢 Giám sát máy chủKhởi tạo omniroute serve, tiếp quản phiên bản đang chạy thay vì tạo bản trùng lặp
📊 Xem nhanh mức sử dụng trực tiếpThanh hạn mức nhà cung cấp, giới hạn phiên/hàng tuần của Claude kèm đếm ngược thời gian đặ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ử, hoàn tác khi thất bại — luôn sử dụng bản phát hành mới nhất
🚀 Khởi động khi đăng nhậpTùy chọn khởi chạy khi đăng nhập; chỉ hiển thị ở khay, không có biểu tượng trên dock
🩺 Chẩn đoán & nhật kýChẩn đoán chỉ với 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 ``` Muốn tải xuống? Hãy lấy tệp .dmg mới nhất từ Bản phát hành. Mã nguồn, các vấn đề và tài liệu hướng dẫn build có 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
> Ngoài 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ự mình** vận hành nó. ### ⌨️ Một CLI thực thụ (không chỉ có `start`) ```bash omniroute # phục vụ cổng kết nối + bảng điều khiển (cổng 20128) omniroute chat # trình trò chuyện TUI tương tác (lệnh gạch chéo: /model /combo /skill /memory) omniroute setup # trình hướng dẫn có chỉ dẫn cho lần chạy đầu tiên omniroute doctor # chẩn đoán nhà cung cấp, cổng, 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ừ máy tính xách tay 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 sẽ 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 list # ← chạy trên máy chủ TỪ XA omniroute configure codex # ← chọn một mô hình từ xa, ghi một 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 trở lại máy chủ cục bộ ``` Token có các phạm vi `read` / `write` / `admin`; các tuyến khởi chạy tiến trình chỉ khả dụng trên loopback. 📖 [Chế độ từ xa](docs/guides/REMOTE-MODE.md)
Bản trình diễn terminal động về 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 86 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 đó 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) đều có quyền điều khiển toàn bộ cổng kết nối: định tuyến, nhà cung cấp, tổ hợp, 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 cho
🧰 MCP (stdio)omniroute --mcpTích hợp vào Claude Desktop, Cursor hoặc bất kỳ trình 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 luồng
🤝 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 — trò chuyện, 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)
## 🗜️ Tiết kiệm 15–95% token — Tự động
### 📖 Cách hoạt động — quy trình, kiến trúc và phép tính mức tiết kiệm Quy trình nén của OmniRoute: một yêu cầu minh họa gồm 10.000 token từ máy khách đ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 nhà cung cấp với khoảng 1.080 token trong ví dụ xếp chồng được mô tả. Nội dung có cấu trúc được bảo vệ bằng các cơ chế bảo toàn và cổng kiểm tra độ trung thực ở từng bước; các chế độ mất dữ liệu hoặc thử nghiệm được bật rõ ràng có thể biến đổi nội dung đủ điều kiện. Tổ hợp xếp chồng mặc định chạy `RTK → Caveman`. Khi cả hai cùng tác động lên một payload công cụ/ngữ cảnh, mức tiết kiệm được 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 bảo vệ** bởi engine bảo toàn. > **Tại sao phải dùng nhiều token khi chỉ cần ít token là đủ?** Mọi yêu cầu đều đi qua quy trình nén của OmniRoute một cách **minh bạch** — không cần thay đổi phía máy khách. Giờ đây, đây là một **ngăn xếp 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 tổ hợp đị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). ### 🧱 Ngăn xếp 12 engine Các engine chạy theo thứ tự trong quy trình; từng engine có thể được bật/tắt và cấu hình độc lập cho mỗi tổ hợp:
#EngineChức năng
1Session-DedupLoại bỏ nội dung lặp lại giữa các lượt (định địa chỉ theo nội dung, xuyên lượt)
2CCRLưu trữ các khối lớn phía sau các dấu mốc truy xuất và tải về khi cần
3LiteCắt giảm khoảng trắng + URL hình ảnh (mức cơ sở có độ trễ thấp)
4RTKLọc, loại bỏ trùng lặp và cắt ngắn kết quả công cụ một cách thông minh (nhận biết lệnh)
5Responses Tool OutputƯu tiên không mất dữ liệu cho JSON + nén chẩn đoán có giới hạn đối với đầu ra shell/patch/search/build (Responses API)
6HeadroomThu gọ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 nội bộ
7RelevanceChấm điểm và trích xuất câu dựa trên truy vấn gần nhất của người dùng
8CavemanNén văn xuôi dựa trên quy tắc (~65–75% trên đầu ra)
9AggressiveTóm tắt + làm cũ dần các lượt trước
10LLMLingua-2Lược bỏ ngữ nghĩa bằng ML thông qua MobileBERT ONNX — an toàn cho mã, bất đồng bộ
11UltraLược bỏ token theo heuristic với tầng mô hình nhỏ (SLM) tùy chọn
12OmniGlyphMã hóa ngữ cảnh dưới dạng hình ảnh mang tính thử nghiệm cho Claude Fable 5 đã được đo lường trên kết nối Anthropic trực tiếp; các transformer GPT 5.6 vẫn duy trì trạng thái đóng an toàn trong khi chờ biên nhận từ nhà cung cấp. Bốn cấu hình nén (aggressive mặc định, balanced, coding-safe, passthrough) (mạnh nhất; cần chủ động bật)
Các khối mã, URL và dữ liệu có cấu trúc **luôn được bảo toàn** chính xác đến từng byte. **Các thiết lập sẵn một cú nhấp** kết hợp những engine này:
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 dài sử dụng nhiều công cụ
🔥 Ultra~75%Tiết kiệm tối đa
🧰 RTK60–90%Đầu ra shell/test/build/git
🔗 Stacked (RTK → Caveman)78–95%Prompt hỗn hợp + nhật ký công cụ
**Ví dụ thực tế — chế độ Standard:** > **Trước (69 token):** _"Lý do thành phần React của bạn kết xuất lại có thể là vì bạn đang tạo một tham chiếu đối tượng mới trong mỗi chu kỳ kết xuất. Khi truyền một đối tượng nội tuyến làm prop, phép so sánh nông của React sẽ coi đó là một đối tượng khác mỗi lần, từ đó kích hoạt việc kết xuất lại. Tôi khuyên bạn nên sử dụng useMemo để ghi nhớ đối tượng."_ > > **Sau (19 token):** _"Tham chiếu đối tượng mới ở mỗi lần kết xuất. Prop đối tượng nội tuyến = tham chiếu mới = kết xuất lại. Bọc bằng useMemo."_ > > **Cùng một câu trả lời. Ít hơn 72% token. Không làm giảm độ chính xác.** ✅ **Ví dụ PT-BR — chế độ [Troglodita](https://github.com/leninejunior/troglodita):** > **Trước (42 token):** _"Vấn đề là component đang render lại vì một tham chiếu object mới được tạo trong mỗi chu kỳ render. Tôi khuyên bạn nên dùng useMemo."_ > > **Sau (12 token):** _"Render lại: ref 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. Ít hơn ~70% token. Độ chính xác kỹ thuật không đổi.** ✅
### 🎚️ Không chỉ các engine — kiểu đầu ra, núm điều chỉnh thích ứng & khả năng kiểm soát theo từng request 12 engine ở trên thu gọn nội dung **đầu vào**. Ba lớp bổ sung định hình nội dung **như thế nào**, **khi nào** và **đầu ra** là gì: - **🪄 Kiểu đầu ra** _(điều hướng theo trục đầu ra)_ — chèn các chỉ dẫn định hình phản hồi có tính xác định, an toàn cho cache; 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ỏ từ thừa / mạo từ / cách diễn đạt dè dặt; giữ nguyên độ chính xác kỹ thuật. - **Ít code hơn** — YAGNI theo kiểu "lập trình viên senior lười": thay đổi hoạt động được ở mức nhỏ nhất, không dựng thêm cấu trúc ngoài yêu cầu. - **Ponytail (lập trình viên senior lười)** — lần theo thang YAGNI, sửa nguyên nhân gốc rễ, tạo diff hoạt động được nhỏ nhất. - **Tôi bị ADHD (hành động trước)** — mở đầu bằng hành động tiếp theo, đánh số các bước, chỉ một bước tiếp theo cụ thể, không có lời dẫn. - **CJK súc tích (文言)** — phong cách Hán văn cổ siêu súc tích (chỉ bật cho locale `zh`). - **🎯 Ngân sách context thích ứng** _(núm điều chỉnh)_ — thay vì một ngưỡng token bật/tắt duy nhất, chỉ tăng cường các engine rẻ nhất và ít mất mát nhất đến mức cần thiết để **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** _(thứ tự ưu tiên, từ cao → thấp)_ — header `x-omniroute-compression` theo từng request › ghi đè của tổ hợp định tuyến › profile có tên đang hoạt động › thích ứng / tự động kích hoạt › mặc định trên panel › tắt. Kế hoạch được áp dụng sẽ được phản hồi trong header response `X-OmniRoute-Compression: ; source=`. Tự động kích hoạt theo ngưỡng token, bật núm điều chỉnh thích ứng, ghim một profile có tên, thiết lập riêng cho từng request hoặc gán pipeline theo từng tổ hợp định tuyến — tùy cách nào phù hợp với workload. Một **bộ công cụ eval** ngoại tuyến tùy chọn (`npm run eval:compression`) chấm điểm độ trung thực so với mức tiết kiệm trên một corpus được cố định trước khi bạn đưa thay đổi vào sử dụng. 📖 [`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 cảnh báo `npm warn ERESOLVE` hoặc peer-dep? [Chúng vô hại](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated). > **Đang dùng npm 11 trở lên?** npm có thể chặn các script trong vòng đời package nếu chúng chưa được cho phép. `postinstall` (`node scripts/build/postinstall.mjs`) của OmniRoute là bắt buộc để chuẩn bị các tệp runtime native. Khi cài đặt global, hãy cho phép các package được nêu trong cảnh báo của npm. Đối với tập hợp package được OmniRoute 3.8.51 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 danh sách cho phép này cho những lần cài đặt global 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 đó. Việc cho phép một package sẽ cho phép các script cài đặt của package đó chạy. > **Đang dùng Gemini Web hoặc một provider dùng cookie web khác?** Package npm có bao gồm > Playwright nhưng không bao gồm Chromium binary của nó. 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 và quota hiện tại 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ủa provider đó. 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. Hãy xem [Hướng dẫn về 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 tới dịch vụ** ```txt URL cơ sở: http://localhost:20128/v1 API key: [sao chép từ Dashboard → Endpoints] Model: auto (định tuyến giữa các kết nối đủ điều kiện — hoặc chọn 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 danh sách các model đã kết nối. 🎉 Vậy là xong — hãy 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 hóa: ```txt Danh mục OpenAI: http://localhost:20128/vscode/YOUR_KEY/ Model OpenAI: http://localhost:20128/vscode/YOUR_KEY/models Chat OpenAI: http://localhost:20128/vscode/YOUR_KEY/chat/completions Response OpenAI: http://localhost:20128/vscode/YOUR_KEY/responses Chat Ollama: http://localhost:20128/vscode/YOUR_KEY/api/chat Tag Ollama: 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-08-24 · Danh mục thô: YT 809 | TT 137 | IG 124 · Độ mới (ngày): YT 1 | TT 21 | IG 22
Instagram Reel
🎬 #1 — Instagram
nick_saraev — 3,042,474 lượt xem
Instagram Reel — theopenstack
🎬 #2 — Instagram
theopenstack — 692,419 lượt xem
TikTok — milesreevesai
🎬 #3 — TikTok
milesreevesai — 620,400 lượt xem
YouTube — Vaibhav Sisinty
🎬 #4 — YouTube
Vaibhav Sisinty — 391,109 lượt xem
Instagram Reel — buildwithai.club
🎬 #5 — Instagram
buildwithai.club — 347,652 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** | [theopenstack — Instagram](https://www.instagram.com/reel/DaSs65mMrHk/) — **692,419** | [milesreevesai — TikTok](https://www.tiktok.com/@milesreevesai/video/7667980059189366019) — **620,400** | [Vaibhav Sisinty — YouTube](https://www.youtube.com/watch?v=QucgvbO5gsM) — **391,109** | [buildwithai.club — Instagram](https://www.instagram.com/reel/DbIt9AjK7-U/) — **347,652** | | #6 | #7 | #8 | #9 | #10 | | ----------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | | [nivedan.ai — Instagram](https://www.instagram.com/reel/DbIrCksJiqq/) — **331,973** | [vaibhavsisinty — Instagram](https://www.instagram.com/reel/Dae05TSAK1l/) — **263,744** | [Nick Automates — YouTube Shorts](https://www.youtube.com/shorts/fZIBK_4fKq8) — **218,174** | [theroshankrishna — Instagram](https://www.instagram.com/reel/Dapjs58z0P0/) — **186,786** | [midudev — TikTok](https://www.tiktok.com/@midudev/video/7664636453544152342) — **177,800** | Số liệu chuẩn vào 2026-08-24: **1.029 video duy nhất** · **11.132.922 lượt xem đã biết** (`v > 0`) · **639 kênh/hồ sơ trên các mạng**. Bảng điều khiển thô chứa 1.070 dòng; 41 mục trùng lặp trên Instagram đã được chuẩn hóa theo URL chuẩn, giữ lại số lượt xem cao nhất cho mỗi video. > 🎬 **Bạn đã làm video về OmniRoute?** Hãy mở một [vấn đề](https://github.com/diegosouzapw/OmniRoute/issues/new) hoặc một [cuộc thảo luận](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 vấn đề. | 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 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 kết quả 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) · [Nhà tài trợ GitHub](https://github.com/sponsors/diegosouzapw) |
---
## 🛠️ Ngăn xếp công nghệ
LớpCô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 trên toàn bộ 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 cũ) — 137 mô-đun miền nghiệp vụ, 202 bản di chuyển
Bộ nhớTìm kiếm toàn văn SQLite FTS5 + các embedding vectơ lượng tử hóa int8, suy giảm có kiểu
Lược đồZod 4 — xác thực đầu vào/đầu ra của công cụ MCP + các hợp đồng API
Giao thứcMCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)
Truyền luồngServer-Sent Events (SSE) + cầu nối WebSocket (/v1/ws)
NénQuy trình 12 engine — 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 theo 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 phục hồiBộ ngắt mạch, thời gian chờ tăng theo cấp số nhân, chống hiệu ứng đám đông, tổ hợp tự phục hồi tự động
Ghi nhật kýpino — nhật ký JSON có cấu trúc kèm ngữ cảnh yêu cầu
Kiểm thửTrình chạy kiểm thử Node.js + Vitest — hơn 39.000 khai báo kiểm thử tĩnh trên hơn 5.100 tệp kiểm thử được theo dõi (đơn vị, 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 xuất bản lên npm + Docker Hub khi phát hành
Liên kếtTrang web · npm · Docker Hub

## 📖 Tài liệu
### 📘 Bắt đầu
Tài liệuMô tả
Hướng dẫn sử dụngNhà cung cấp, tổ hợp, tích hợp CLI, triển khai
Hướng dẫn thiết lậpĐầy đủ các 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) bằng CLI trên máy tính xách tay thông qua token truy cập có phạm vi giới hạn
Cấu hình Claude CodeKết nối Claude Code với OmniRoute (cục bộ/từ xa) bằng launch + hồ sơ riêng cho từng mô hình
Bắt đầu nhanh3 bước: cài đặt → kết nối → cấu hình
### 🔧 Vận hành & Triển khai
Tài liệuMô tả
Hướng dẫn DockerDocker run, hồ sơ Compose, Caddy HTTPS, đường hầm, thẻ image
Hướng dẫn PodmanTích hợp Quadlet 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ữ liên tục
Hướng dẫn TermuxChạy OmniRoute trên Android thông qua Termux
Hướng dẫn PWACài đặt Ứng dụng Web Tiến bộ, bộ nhớ đệm, kiến trúc
Hướng dẫn gỡ cài đặtGỡ bỏ sạch sẽ cho mọi phương thức cài đặt
Cấu hình môi trườngĐầy đủ các biến .env và tài liệu tham khảo
### 🧠 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à cơ chế nội bộ
Hướng dẫn nénQuy trình 7 tùy chọn: tắt / nhẹ / tiêu chuẩn / mạnh / siêu mạnh / RTK / xếp chồng
Nén RTKNén đầu ra lệnh, bộ lọc, độ tin cậy, xác minh, khôi phục đầu ra thô
Công cụ nénCaveman, RTK, quy trình xếp chồng, 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ồiBộ ngắt mạch, thời gian hồi, hàng đợi, chống dồn tải đồng loạt, giả mạo TLS
Công cụ Auto-ComboChấm điểm theo 16 yếu tố, gói chế độ, tự phục hồi
Hướng dẫn proxyHệ thống proxy 3 cấp, chợ 1proxy, CRUD sổ đăng ký
Các gói miễn phíDanh mục hợp nhất: 35 nhóm định kỳ có tài liệu / 489 mục gói miễn phí đã được lập danh mục
Thư viện tính năngTham quan dashboard trực quan bằng ảnh chụp màn hình
Tài liệu cơ sở mãHướng dẫn tìm hiểu cơ sở mã 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 chiếu APITất cả endpoint kèm ví dụ
Đặc tả OpenAPIĐặc tả OpenAPI 3.0
Máy chủ MCP110 công cụ MCP, cấu hình IDE, máy khách Python/TS/Go
Hướng dẫn máy chủ MCPCài đặt MCP, phương thức truyền tải và tài liệu tham chiếu công cụ
Máy chủ A2AGiao thức JSON-RPC 2.0, kỹ năng, truyền phát, quản lý tác vụ
Hướng dẫn máy chủ A2AThẻ tác nhân A2A, tác vụ, kỹ năng 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à các nguyên tắc
Mô hình phân nhánh & phát hànhĐích đến của các PR (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 biện pháp bảo mật
Hướng dẫn i18nHỗ trợ 42 ngôn ngữ, quy trình dịch thuật, 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 39.000 khai báo kiểm thử tĩnh trong hơn 5.100 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ố pull request đã được hợp nhất
HạngNgười đóng gópPR đã hợp nhất~Dòng thay đổi
1backryun190227,977
2oyi77180407,678
3rdself14580,663
4JxnLexn128387,049
5KooshaPari101125,747
6herjarsa88230,872
7RaviTharuma7955,106
8maxmad64bis69394,715
9artickc5933,260
10HouMinXi5147,334
10chirag127515,153
12xz-dev50245,976
13hartmark4752,185
14rqzbeh39143,181
15dhaern3419,559
16Dingding-leo331,986
17NomenAK3213,854
18MumuTW3016,953
19benzntech2911,641
20pacocartones249,331
20Prudhvivuda246,312
Được chốt tại đầu nhánh trực tiếp release/v3.8.50, commit dafb4ae808, với các lần hợp nhất đến 2026-08-24 05:26:03 UTC. Thống kê GitHub GraphQL được phân trang bao gồm 5.911 PR đã hợp nhất: 2.707 PR từ chủ sở hữu kho lưu trữ, 179 PR từ Dependabot và 3.025 PR bên ngoài từ 535 người đóng góp riêng biệt. “Dòng thay đổi” là tổng số dòng thêm và xóa theo GitHub, bao gồm các tệp được tạo tự động, tệp khóa, danh mục, bản dịch và tài liệu; đây là lượng biến động mã, không phải số dòng mã do tác giả viết. Các trường hợp đồng hạng tại ngưỡng giới hạn đều được giữ lại. ### Các commit được GitHub ghi nhận
backryun
backryun

🥇 220 commit được ghi nhận trên GitHub
Paijo
Paijo

🥈 219 commit được ghi nhận trên GitHub
Randi
Randi

🥉 108 commit được ghi nhận trên GitHub
Ravi Tharuma
Ravi Tharuma

🏅 81 commit được ghi nhận trên GitHub
Chris
Chris

🏅 70 commit được ghi nhận trên GitHub
Markus Hartung
Markus Hartung

🏅 69 commit được ghi nhận trên GitHub · đồng hạng #6
Dizzle
Dizzle

🏅 69 commit được ghi nhận trên GitHub · đồng hạng #6
Jan Leon
Jan Leon

🏅 64 commit được ghi nhận trên GitHub
zenobit
zenobit

🏅 62 commit được ghi nhận trên GitHub
Bob.Hou
Bob.Hou

🏅 51 commit được ghi nhận trên GitHub · đồng hạng #10
Xiangzhe
Xiangzhe

🏅 51 commit được ghi nhận trên GitHub · đồng hạng #10
Được kiểm tra lại vào 2026-08-24 06:14:31 UTC: các commit được ghi nhận trên GitHub do API Contributors của kho lưu trữ báo cáo cho nhánh mặc định release/v3.8.50. API trả về 525 danh tính (415 người dùng, 2 bot, 108 người dùng ẩn danh); bảng này loại trừ người bảo trì, bot và các danh tính ẩn danh, đồng thời giữ nguyên 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à thống kê 639 người dựa trên siêu dữ liệu Git ở dưới. > 🙏 Các tính năng, bản sửa lỗi và cải tiến cơ sở hạ tầng của những người đóng góp này là một **phần cốt lõi** giúp OmniRoute trở nên đáng tin cậy và giàu tính năng. 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 đóng góp đều giúp dự án tiếp tục miễn phí, độc lập và 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
Paco Cartones
Paco Cartones

💛 Nhà tài trợ một lần đang hoạt động
Professor Igor Morais Vasconcelos
GS. Igor Morais

💛 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ữ danh tính riêng tư 💛 Các nhà tài trợ công khai trên GitHub được xác minh lại vào 2026-08-24. Trạng thái activeOnly 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 đã được công bố trước đây vẫn được ghi nhận, còn các nhà tài trợ riêng tư vẫn được giữ ẩn danh. 💖 Trở thành nhà tài trợ → — mỗi đô la đều giúp OmniRoute tiếp tục miễn phí và độc lập.

## 👥 Hơn 600 người đóng góp
[![Những người đóng góp](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=639&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors) Được kiểm tra vào 2026-08-24 tại cơ sở cố định ac02c5b42f và kiểm tra lại tại đầu nhánh trực tiếp release/v3.8.50 với mã dafb4ae808: 639 danh tính Git của con người đã được chuẩn hóa — 407 xuất hiện với tư cách tác giả commit (bao gồm cả người bảo trì) và 232 chỉ xuất hiện trong các trailer Co-authored-by rõ ràng. Quá trình thống kê chuẩn hóa các handle noreply của GitHub, loại trừ 26 danh tính bot/tác nhân/dịch vụ/giữ chỗ và không hợp nhất các địa chỉ email thông thường chỉ vì tên hiển thị của chúng trùng nhau. ### Cách đóng góp 1. Fork kho lưu trữ 2. Tạo nhánh từ đầu nhánh **đang hoạt động** `release/vX.Y.Z` (không phải `main`) — xem [Mô hình phân nhánh và phát hành](docs/ops/BRANCHING_MODEL.md) 3. Tạo nhánh 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 nhánh (`git push origin feat/amazing-feature`) 6. Mở một Pull Request với **base = nhánh `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 một bản phát hành — npm publish sẽ diễn ra tự động 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 dựa trên thành quả của những người tiên phong. Dự án khởi đầu như một bản phân nhánh của **[9router](https://github.com/decolua/9router)** và một bản chuyển đổi sang TypeScript từ 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 truyền cảm hứng bởi một dự án mã nguồn mở đã tiên phong trong lĩnh vực tương ứng. Mỗi dự án đều góp phần định hình một thành 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ố sao được xác minh từ REST API của GitHub vào ngày 24 tháng 8 năm 2026 — hãy tặng sao cho các dự án này. Các con số là ảnh chụp nhanh chính xác tại thời điểm đó và đương nhiên sẽ thay đổi. ### 🧬 Nguồn gốc & cổng kết nối
Dự án⭐Nguồn cảm hứng cho OmniRoute
9router26,161Dự án gốc làm nền tảng cho bản fork này — được mở rộng tại đây với các API đa phương thức và được viết lại hoàn toàn bằng TypeScript.
CLIProxyAPI48,497Bản triển khai bằng Go đã truyền cảm hứng cho bản chuyển đổi sang JavaScript / TypeScript này.
LiteLLM57,100Cổng AI có tập dữ liệu giá công khai cung cấp dữ liệu cho quy 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 này đã định hình cơ chế định tuyến của chúng tôi.
codex-chatgpt-web1,410Mã nguồn MIT được điều chỉnh để tích hợp vào cầu nối ChatGPT Web → Codex Responses đi kèm, bao gồm các bộ điều hợp 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-code48,112Các mẫu thiết kế được chuyển sang cơ chế khôi phục luồng, bí danh không suy luận, tìm kiếm web dự phòng, giới hạn cửa sổ trượt, ẩn dữ liệu nhạy cảm trong nhật ký và các luồng trình khởi chạy được gia cố.
composer-api322Các mẫu chọn công cụ, ràng buộc đầu ra và xác nhận công cụ của Cursor Composer được điều chỉnh để tích hợp vào trình thực thi Cursor gốc.
codex-multi-auth457Các mẫu đăng nhập mới và luân phiên token làm mới được chuyển sang quy trình xác thực lại Codex OAuth.
opencode-anthropic-auth510Các giá trị mặc định chuyển đổi tương thích với Claude Code và hành vi tiêu đề thanh toán được tổng quát hóa thành cầu nối dựa trên 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, giá trị mặc định cho yêu cầu và thiết bị, cùng bộ xử lý phản hồi NDJSON của dự án này đã được điều chỉnh đáng kể để tích hợp vào trình thực thi Grok Web của OmniRoute.
TQZHR/grok2api705Nguồn mã bắc cầu chính đứng sau grok2api-merged; các bản triển khai mô hình, tiêu đề, tải trọng, Statsig và bộ xử lý của dự án này được bảo tồn trong dòng phát triển Grok Web.
chenyme/grok2api7,520Nguồn MIT nền tảng cho các giá trị mặc định của tải trọng và thiết bị Grok, trình tạo Statsig và bộ xử lý result.response được kế thừa qua TQZHR và grok2api-merged.
grok2api-pro27Một nguồn bắc cầu được grok2api-merged ghi nhận cho lớp nhóm proxy; OmniRoute bảo tồn thông báo về nguồn gốc đó nhưng không tuyên bố đã chuyển lớp nhóm proxy sang trình thực thi Grok Web có phạm vi giới hạn của mình.
GrokProxy50Proxy Grok được xác thực bằng cookie và mẫu truyền phát trực tuyến result.response.token của dự án này đã định hình cơ chế truyền tải Grok Web của OmniRoute.
GrokBridge5Bản triển khai Grok Web ban đầu đã tham khảo thiết kế đầu nguồn HTTP/trình duyệt của dự án này; đường dẫn HTTP trực tiếp của nó bắt nguồn từ GrokProxy, vì vậy không tuyên bố có hoạt động chuyển mã độc lập.
grok-web-api14Các lược đồ ChatOptions và vỏ phản hồi bằng Rust của dự án này đã định hình các kiểu yêu cầu Grok và phản hồi truyền phát trực tuyến bằng TypeScript của OmniRoute.
### 🗜️ Nén ngữ cảnh & token — các công cụ xử lý
Dự án⭐Nguồn cảm hứng cho OmniRoute
Caveman100,538Dự án lan truyền mạnh với triết lý "tại sao dùng nhiều token khi ít token vẫn làm được việc" — triết lý nói kiểu người tiền sử của dự án này là nền tảng cho chế độ nén tiêu chuẩn và hơn 30 quy tắc loại bỏ từ thừa/cô đọng của chúng tôi.
RTK – Rust Token Killer77,185Né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 xếp tầng RTK → Caveman của chúng tôi.
headroom67,310Nén ngữ cảnh có thể đảo ngược (SmartCrusher) — truyền cảm hứng cho engine headroom và mẫu dấu truy xuất ccr của chúng tôi.
LLMLingua6,598Nghiên cứu nén prompt (LLMLingua / LLMLingua-2) — truyền cảm hứng cho engine llmlingua bất đồng bộ, an toàn với mã và tiếp tục hoạt động khi có lỗi của chúng tôi.
llmlingua-2-js31Bản chuyển sang JS/ONNX (MobileBERT / XLM-RoBERTa) được dùng làm backend luồng worker cho engine LLMLingua của chúng tôi.
Troglodita40Nén token PT-BR — là nền tảng cho gói ngôn ngữ pt-BR của chúng tôi: giảm lối diễn đạt trùng ý và loại bỏ từ thừa, được tinh chỉnh cho ngữ pháp tiếng Bồ Đào Nha Brazil.
ponytail108,957Kỹ năng lập trình YAGNI kiểu "lập trình viên cấp cao lười biếng" từng lan truyền mạnh — truyền cảm hứng cho Kiểu đầu ra less-code của chúng tôi: định hướng theo thay đổi nhỏ nhất vẫn hoạt động, giúp giảm lượng mã _được sinh ra_ (đối tác trên trục đầu ra của văn phong súc tích từ Caveman).
i-have-adhd23,526Phong cách phản hồi ưu tiên hành động, thân thiện với người mắc 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⭐Nguồn cảm hứng cho OmniRoute
TOON25,233Ký pháp đối tượng hướng token — mô hình dạng cột với phần đầu và các hàng của dự án đã định hình giai đoạn nén dạng bảng của chúng tôi.
GCF – Graph Compact Format41Định dạng đồ thị nhỏ gọn và thiết kế hồ sơ tổng quát của dự án đã định hướng cho cơ chế nén dạng bảng và định dạng codec Headroom của OmniRoute.
gcf-typescript4Phầ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 hồ sơ tổng quát Headroom.
token-optimizer-mcp494Bộ nhớ đệm Brotli/SQLite + phần chênh lệch ngữ cảnh theo phiên — truyền cảm hứng cho engine session-dedup của chúng tôi.
token-savior1,122Nén đầu ra Bash + hồ sơ MCP — truyền cảm hứng cho nguyên tắc dừng nén đúng lúc và việc rút gọn bản kê công cụ MCP của chúng tôi.
token-saver138Nén đầu ra theo từng loại tệp, có nhận biết nội dung và dừng đúng lúc khi có lỗi — xác nhận tính đúng đắn của cơ chế phân luồng theo loại và bỏ qua khi mức cải thiện chưa đạt ngưỡng tối thiểu của chúng tôi.
token-optimizer1,951"Tìm những token ma" — mẫu giảm tải + tay cầm có thể khôi phục của dự án đã định hướng tư duy giảm tải CCR của chúng tôi.
TokenMizer28Một bản thiết kế đồ thị phiên + loại bỏ dòng trùng lặp giữa các lượt, giúp định hướng thiết kế session-dedup của chúng tôi.
OmniCompress3JSON dạng cột bằng Rust + truy xuất theo địa chỉ nội dung + loại bỏ trùng lặp giữa các thông điệp — xác nhận tính đúng đắn của thiết kế engine headroom/ccr/session-dedup và bất biến thân thiện với bộ nhớ đệm "dạng nén không phụ thuộc vào vị trí" của chúng tôi.
mcp-compressor113Nén schema/mô tả công cụ MCP — định hướng cho việc giảm số lượng mục trong bản kê công cụ MCP của chúng tôi.
RepoMapper197Xếp hạng bản đồ kho mã theo phong cách Aider — định hướng cho quá trình khám phá bản đồ kho mã / xếp hạng truy xuất của chúng tôi.
quiet-shell-mcp4Rút gọn đầu ra shell theo kiểu khai báo qua MCP — xác nhận tính đúng đắn của cơ chế nén đầu ra bash theo kiểu khai báo của chúng tôi.
ts-morph6,162Bộ công cụ TypeScript Compiler API — truyền cảm hứng cho cơ chế xóa chú thích dựa trên trình phân tích cú pháp, đồ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⭐Nguồn cảm hứng cho OmniRoute
Mem063,902Lớp bộ nhớ phổ quát — mô hình proxy đóng vai trò ranh giới ghi/đọc của dự án này đã định hình kiến trúc bộ nhớ của chúng tôi.
Letta (MemGPT)24,382Các tác tử có trạng thái với bộ nhớ phân tầng — truyền cảm hứng cho mô hình Kiểm soát & Khôi phục Ngữ cảnh (CCR) phân tầng của chúng tôi.
WFGY1,781Hệ thống phân loại ProblemMap gồm 16 chế độ lỗi RAG/LLM thường gặp — bộ thuật 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 trong suốt
Dự án⭐Nguồn cảm hứng cho OmniRoute
llm-interceptor66Việc chặn/phân tích MITM đối với lưu lượng giữa trợ lý lập trình ↔ LLM đã góp phần định hình các yêu cầu ban đầu của Trình kiểm tra Lưu lượng. Bốn mô-đun được phái sinh trước đây — 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 bản triển khai phòng sạch độc lập 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 bản 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ế đó.
ProxyBridge5,995Định tuyến proxy trong suốt theo từng tiến trình — truyền cảm hứng cho cơ chế gỡ bỏ MITM an toàn khi gặp sự cố, thời gian chờ khi socket không hoạt động, truy nguồn tiến trình qua /proc và bắt lưu lượng bằng 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⭐Nguồn cảm hứng cho OmniRoute
models.dev6,555Cơ sở dữ liệu mở về thông số kỹ thuật, 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,108Thư viện đồ thị dựa trên nút hỗ trợ Compression Studio và Combo/Routing Studio theo thời gian thực của chúng tôi.
LangGraph40,314Khả 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 chuỗi tầng theo thời gian thực trong các Studio của chúng tôi.
Langfuse33,592Mô hình khả năng quan sát dấu vết → khoảng đo → lần sinh của dự án này đã định hình biểu đồ thác nước trong Compression Studio của chúng tôi.
Kiali3,631Khả năng quan sát lưới dịch vụ Istio — truyền cảm hứng cho các huy hiệu bộ ngắt mạch và hình ảnh cạnh lỗi trong Routing/Combo Studio của chúng tôi.
lobe-icons2,428Các logo thương hiệu AI/LLM dùng để hiển thị biểu tượng nhà cung cấp trên toàn bộ bảng điều khiển của chúng tôi.
flag-icons12,354Cung cấp các lá cờ SVG được cấp phép theo MIT, dùng trong bộ chọn ngôn ngữ của README.
### 🛡️ Bảo mật
Dự án⭐Nguồn cảm hứng cho OmniRoute
awesome-secure-defaults721Danh sách 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⭐Nguồn cảm hứng cho OmniRoute
ClawRouter6,564Truyền cảm hứng cho việc 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 ghép và phân loại ý định đa ngôn ngữ.
Antigravity-Manager30,652Cơ chế ánh xạ lại mô hình có xét đến 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ủa dự án này đã góp phần định hình môi trường chạy Antigravity của OmniRoute.
vscode-antigravity-cockpit4,817Định dạng đếm ngược đặt lại hạn ngạch nhỏ gọn của dự án này đã 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.
AionUi32,230Các tích hợp ACP của dự án này đã truyền cảm hứng cho khả năng tự động phát hiện các tác tử CLI đã cài đặt của OmniRoute.
CodexBar20,507Đã xác định bề mặt hạn ngạch Grok Build; sau đó OmniRoute tự xác minh và sửa định dạng truyền dẫn trực tiếp một cách độc lập.
## 📄 Giấy phép Giấy phép MIT - xem [LICENSE](LICENSE) để biết chi tiết. ---
**[⬆ Quay lại đầu trang](#-omniroute)** · Được xây dựng với ❤️ dành cho cộng đồng AI mã nguồn mở. OmniRoute v3.8.52 · Node ≥22.22.2 · Giấy phép MIT · omniroute.online