Files
OmniRoute/docs/i18n/phi/README.md
Diego Rodrigues de Sa e Souza b637350680 fix(docs): re-sync the 65 documentation mirror sets; section-level docs pipeline; drift gate blocking (#13940)
1,104 mirrors rewritten over five passes of run-translation on the 22-source core set: the 14 sources edited since their translation, the 322 mirrors that were still English copies, and the frontmatter the old extractor leaked into the newer locales' bodies. The pipeline now caches per-`## `-section hashes and retranslates only changed sections, never reuses a section that is still English, rebuilds English-copy / leaked mirrors even when the source is unchanged, merges the state on save (parallel runs), and the drift gate (scoped to the core set) is blocking. Final audit: 0 stale, 0 English copies, 0 leaked frontmatter across 1,430 core mirrors.

⚠️ base-red inherited: #12732
2026-09-17 02:55:31 -03:00

1745 lines
148 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# README (Filipino)
🌐 **Languages:** 🇺🇸 [English](../../../README.md) · 🇪🇹 [am](../am/README.md) · 🇸🇦 [ar](../ar/README.md) · 🇦🇿 [az](../az/README.md) · 🇧🇬 [bg](../bg/README.md) · 🇧🇩 [bn](../bn/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) · 🇵🇱 [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) · 🇻🇳 [vi](../vi/README.md) · 🇳🇬 [yo](../yo/README.md) · 🇨🇳 [zh-CN](../zh-CN/README.md) · 🇹🇼 [zh-TW](../zh-TW/README.md)
---
<div align="center">
<img src="./docs/screenshots/MainOmniRoute.png" alt="Dashboard ng OmniRoute" width="820"/>
<br/>
<br/>
# 🚀 OmniRoute — Ang Libreng AI Gateway
<img src="./docs/diagrams/readme-hero.svg" width="100%" alt="OmniRoute — Huwag tumigil sa pag-code. Bawat AI tool → 359 provider — 150+ libre — sa pamamagitan ng iisang endpoint. Claude Code, Codex, Cursor, Cline, Copilot at Antigravity tungo sa LIBRENG Claude / GPT / Gemini na may awtomatikong fallback. Ang pinagsamang compression ng RTK + Caveman ay nakakatipid ng 1595% token (~89% sa karaniwan) — hindi ka na aabot sa mga limitasyon. 359 AI provider · 150+ libreng tier · ~1.47B libreng token/buwan · 19 na diskarte sa routing · $0 para magsimula."/>
</div>
<div align="center">
## 💰 ~1.47B Libreng Token / Buwan
</div>
> Masakit sa ulo ang mano-manong pagsasama-sama ng mga libreng tier — dose-dosenang SDK, dose-dosenang limitasyon sa rate, at walang malinaw na ideya kung gaano karami talaga ang mayroon ka. Itinatala ng OmniRoute ang **452 entry ng libreng tier sa 34 na umuulit na pool key** at kinakalkula ang kabuuang bilang ng token mula sa **16 na pool na may inilathalang positibong buwanang badyet at limang Groq cap kada modelo**, na inaalis ang pagdodoble batay sa pinagsasaluhang pool. Ang mga quota na mabubuksan lamang pagkatapos ng panrehiyong pagpapatunay ng pagkakakilanlan (sa ngayon: ModelScope) ay ipinapakita nang hiwalay, +~6M sa likod ng panrehiyong pagpapatunay ng pagkakakilanlan, at hindi kailanman isinasama sa pangunahing kabuuan. Nananatiling nakikita ang resulta sa dashboard (`/dashboard/free-tiers`).
<img src="./docs/diagrams/free-tier-budget.svg" width="100%" alt="Card ng badyet sa libreng tier ng OmniRoute: tuloy-tuloy na ~1.47B libreng token bawat buwan, hanggang ~2.07B sa unang buwan kasama ang mga credit sa pag-sign up, mula sa 34 na dokumentadong umuulit na pool key na sumasaklaw sa 452 nakatalang entry ng libreng tier sa likod ng iisang endpoint. Tapat na pagkalkulang inalisan ng pagdodoble ayon sa pool — isang beses lang binibilang ang bawat pinagsasaluhang pool, kabilang ang 16 na umuulit na pool na may inilathalang positibong buwanang badyet sa token at limang Groq cap kada modelo; 13 provider ang minarkahang iwasan sa catalog ng panganib sa mga tuntunin upang ikaw ang magpasya. Kasama sa bar ng badyet ang Mistral 1B, Nara 210M, LLM7 150M, Groq 30M (limang cap kada modelo), at mas maliliit na pool, pati ang mga credit sa pag-sign up para sa unang buwan at mga permanenteng libreng provider na walang cap sa token na hiwalay na ipinapakita upang hindi kailanman mapalaki nang artipisyal ang pangunahing kabuuan. Aktuwal na nagamit/natitira sa /dashboard/free-tiers."/>
> Animadong buod ng aktuwal na pahinang `/dashboard/free-tiers`. Kumpletong metodolohiya (pag-aalis ng pagdodoble ng pool, mga tier ng credit, mga tuntunin ng provider): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
>
> <sub>Muling sinusuri ang mga bilang na ito kada dalawang linggo batay sa aktuwal na catalog at **gumagalaw sa parehong direksyon** — kapag itinigil ng isang provider ang libreng tier, bababa ang bilang; kapag may bagong dumating, tataas ito. Inilalathala namin kung ano talaga ang kinakalkula ng catalog, at hindi kailanman ang pinakamainam na sitwasyong ni-round up.</sub>
<br/>
<div align="center">
<h3>
⭐ Lagyan ng star ang repo kung nakatulong ang OMNIROUTE na makatipid ka at mapadali ang iyong trabaho.
</h3>
[![Mga Star](https://img.shields.io/github/stars/diegosouzapw/OmniRoute?style=social)](https://github.com/diegosouzapw/OmniRoute)
<a href="https://trendshift.io/repositories/23589" target="_blank"><img src="https://trendshift.io/api/badge/repositories/23589" alt="diegosouzapw%2FOmniRoute | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
[![Ranggo sa Kasaysayan ng Star](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)
### 💬 Sumali sa komunidad
**👋 I-follow ang tagapagpanatili — ikaw ang unang makaalam tungkol sa mga bagong provider, release, at tip:**
[![I-follow si Diego sa 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/)
[![I-follow si @diegosouzapw sa 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 Pandaigdig](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)
**Mga tanong, tip tungkol sa provider, roadmap, at suporta → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Pandaigdig](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Portal](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
<br/>
## 📈 Patuloy na Lumalaki ang Gateway
<div align="center">
| | v3.8.49 | **v3.8.50** | `v3.8.51+` |
| ------------------------------------------------ | :-----: | :-----------------------: | :----------------------: |
| 🌐 Mga Provider | 290 | **352** | mas marami pang nakapila |
| 🧠 Mga natatanging chat model ID | 1185 | **1312** | — |
| 🖼️ Tulay ng Modalidad | — | 🆕 bisyon + audio + video | — |
| 📡 Libreng katalogo ng Radar | — | 🆕 kusang pagsali | — |
| ⚖️ Pag-iiskedyul na isinasaalang-alang ang quota | — | 🆕 Quota-Share | — |
| 📊 Telemetriya ng quota | — | 🆕 live | — |
**→ [Roadmap](ROADMAP.md) — tumatahak sa landas patungo sa `v3.9.0 LTS`**
</div>
<br/>
## 🧩 Magagamit
[![bersyon ng npm](https://img.shields.io/npm/v/omniroute?color=cb3837&logo=npm)](https://www.npmjs.com/package/omniroute)
![Buwanang NPM](https://img.shields.io/npm/dm/omniroute?label=npm/month&color=cb3837&logo=npm)
[![Docker Hub](https://img.shields.io/docker/v/diegosouzapw/omniroute?label=Docker%20Hub&logo=docker&color=2496ED)](https://hub.docker.com/r/diegosouzapw/omniroute)
[![Lisensya: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](LICENSE)
![Mga Pag-pull sa Docker](https://img.shields.io/docker/pulls/diegosouzapw/omniroute?label=docker%20pulls&logo=docker&color=2496ED)
![Mga Download ng Electron](https://img.shields.io/github/downloads/diegosouzapw/omniroute/total?style=flat&label=electron%20downloads&logo=electron&color=47848F)
<table>
<tr>
<td align="right"><b>🚀 Magsimula</b></td>
<td align="center"><a href="#-quick-start">🚀 Mabilisang Pagsisimula</a></td>
<td align="center"><a href="#-more-install-methods--docker-source-pnpm-arch">📦 I-install</a></td>
<td align="center"><a href="#-works-the-second-you-install-it--no-keys-no-config">🆓 Walang configuration</a></td>
</tr>
<tr>
<td align="right"><b>💡 Matuto</b></td>
<td align="center"><a href="#-the-promise">💥 Ang Pangako</a></td>
<td align="center"><a href="#-why-omniroute">🤔 Bakit OmniRoute</a></td>
<td align="center"><a href="#-what-sets-omniroute-apart">🏆 Ano ang Nagpapabukod-tangi</a></td>
</tr>
<tr>
<td align="right"><b>⚙️ Mga Feature</b></td>
<td align="center"><a href="#-combos--the-flagship">🎯 Mga Combo</a></td>
<td align="center"><a href="#-352-ai-providers--154-catalog-marked-free">🌐 Mga Provider</a></td>
<td align="center"><a href="#-full-cli--a2a--mcp">🔌 CLI at MCP</a></td>
</tr>
<tr>
<td align="right"></td>
<td align="center"><a href="#%EF%B8%8F-save-1595-tokens--automatically">🗜️ Compression</a></td>
<td align="center"><a href="#%EF%B8%8F-where-omniroute-runs--anywhere">🖥️ Saan Ito Gumagana</a></td>
<td align="center"><a href="#-private--local-first">🔒 Pribado</a></td>
</tr>
<tr>
<td align="right"><b>👀 Tingnan ito</b></td>
<td align="center"><a href="#-omniroute-in-action">🎬 Habang Gumagana</a></td>
<td align="center"><a href="#-whats-new">✨ Ano ang Bago</a></td>
<td align="center"><a href="#-compatible-clis--coding-agents">🤖 Mga Compatible na CLI</a></td>
</tr>
<tr>
<td align="right"><b>💚 Suporta</b></td>
<td align="center"><a href="#-support-omniroute">💚 Suportahan / Mag-donate</a></td>
<td align="center"><a href="#-community--help">💬 Komunidad</a></td>
<td align="center"><a href="#-sponsors">💖 Mga Sponsor</a></td>
</tr>
<tr>
<td align="right"><b>📦 Proyekto</b></td>
<td align="center"><a href="#%EF%B8%8F-tech-stack">🛠️ Tech Stack</a></td>
<td align="center"><a href="#-documentation">📖 Dokumentasyon</a></td>
<td align="center"><a href="#-600-contributors">👥 Mga Contributor</a></td>
</tr>
</table>
</div>
<div align="center">
<b>🌐 Sa 66 na wika</b>
<br/><br/>
<a href="README.md"><img src="docs/assets/flags/us.svg" width="30" alt="English (en)" title="English (en)"></a>
<a href="docs/i18n/pt-BR/README.md"><img src="docs/assets/flags/br.svg" width="30" alt="Português — Brasil (pt-BR)" title="Português — Brasil (pt-BR)"></a>
<a href="docs/i18n/pt/README.md"><img src="docs/assets/flags/pt.svg" width="30" alt="Português (pt)" title="Português (pt)"></a>
<a href="docs/i18n/es/README.md"><img src="docs/assets/flags/es.svg" width="30" alt="Español (es)" title="Español (es)"></a>
<a href="docs/i18n/fr/README.md"><img src="docs/assets/flags/fr.svg" width="30" alt="Français (fr)" title="Français (fr)"></a>
<a href="docs/i18n/it/README.md"><img src="docs/assets/flags/it.svg" width="30" alt="Italiano (it)" title="Italiano (it)"></a>
<a href="docs/i18n/de/README.md"><img src="docs/assets/flags/de.svg" width="30" alt="Deutsch (de)" title="Deutsch (de)"></a>
<a href="docs/i18n/nl/README.md"><img src="docs/assets/flags/nl.svg" width="30" alt="Nederlands (nl)" title="Nederlands (nl)"></a>
<a href="docs/i18n/ru/README.md"><img src="docs/assets/flags/ru.svg" width="30" alt="Русский (ru)" title="Русский (ru)"></a>
<a href="docs/i18n/uk-UA/README.md"><img src="docs/assets/flags/ua.svg" width="30" alt="Українська (uk-UA)" title="Українська (uk-UA)"></a>
<a href="docs/i18n/pl/README.md"><img src="docs/assets/flags/pl.svg" width="30" alt="Polski (pl)" title="Polski (pl)"></a>
<a href="docs/i18n/cs/README.md"><img src="docs/assets/flags/cz.svg" width="30" alt="Čeština (cs)" title="Čeština (cs)"></a>
<a href="docs/i18n/sk/README.md"><img src="docs/assets/flags/sk.svg" width="30" alt="Slovenčina (sk)" title="Slovenčina (sk)"></a>
<a href="docs/i18n/ro/README.md"><img src="docs/assets/flags/ro.svg" width="30" alt="Română (ro)" title="Română (ro)"></a>
<a href="docs/i18n/hu/README.md"><img src="docs/assets/flags/hu.svg" width="30" alt="Magyar (hu)" title="Magyar (hu)"></a>
<a href="docs/i18n/bg/README.md"><img src="docs/assets/flags/bg.svg" width="30" alt="Български (bg)" title="Български (bg)"></a>
<a href="docs/i18n/da/README.md"><img src="docs/assets/flags/dk.svg" width="30" alt="Dansk (da)" title="Dansk (da)"></a>
<a href="docs/i18n/fi/README.md"><img src="docs/assets/flags/fi.svg" width="30" alt="Suomi (fi)" title="Suomi (fi)"></a>
<a href="docs/i18n/no/README.md"><img src="docs/assets/flags/no.svg" width="30" alt="Norsk (no)" title="Norsk (no)"></a>
<a href="docs/i18n/sv/README.md"><img src="docs/assets/flags/se.svg" width="30" alt="Svenska (sv)" title="Svenska (sv)"></a>
<a href="docs/i18n/zh-CN/README.md"><img src="docs/assets/flags/cn.svg" width="30" alt="中文 — 简体 (zh-CN)" title="中文 — 简体 (zh-CN)"></a>
<a href="docs/i18n/zh-TW/README.md"><img src="docs/assets/flags/tw.svg" width="30" alt="中文 — 繁體 (zh-TW)" title="中文 — 繁體 (zh-TW)"></a>
<a href="docs/i18n/ja/README.md"><img src="docs/assets/flags/jp.svg" width="30" alt="日本語 (ja)" title="日本語 (ja)"></a>
<a href="docs/i18n/ko/README.md"><img src="docs/assets/flags/kr.svg" width="30" alt="한국어 (ko)" title="한국어 (ko)"></a>
<a href="docs/i18n/th/README.md"><img src="docs/assets/flags/th.svg" width="30" alt="ไทย (th)" title="ไทย (th)"></a>
<a href="docs/i18n/vi/README.md"><img src="docs/assets/flags/vn.svg" width="30" alt="Tiếng Việt (vi)" title="Tiếng Việt (vi)"></a>
<a href="docs/i18n/id/README.md"><img src="docs/assets/flags/id.svg" width="30" alt="Bahasa Indonesia (id)" title="Bahasa Indonesia (id)"></a>
<a href="docs/i18n/ms/README.md"><img src="docs/assets/flags/my.svg" width="30" alt="Bahasa Melayu (ms)" title="Bahasa Melayu (ms)"></a>
<a href="docs/i18n/phi/README.md"><img src="docs/assets/flags/ph.svg" width="30" alt="Filipino (phi)" title="Filipino (phi)"></a>
<a href="docs/i18n/hi/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="हिन्दी (hi)" title="हिन्दी (hi)"></a>
<a href="docs/i18n/gu/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="ગુજરાતી (gu)" title="ગુજરાતી (gu)"></a>
<a href="docs/i18n/mr/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="मराठी (mr)" title="मराठी (mr)"></a>
<a href="docs/i18n/ta/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="தமிழ் (ta)" title="தமிழ் (ta)"></a>
<a href="docs/i18n/te/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="తెలుగు (te)" title="తెలుగు (te)"></a>
<a href="docs/i18n/bn/README.md"><img src="docs/assets/flags/bd.svg" width="30" alt="বাংলা (bn)" title="বাংলা (bn)"></a>
<a href="docs/i18n/ur/README.md"><img src="docs/assets/flags/pk.svg" width="30" alt="اردو (ur)" title="اردو (ur)"></a>
<a href="docs/i18n/fa/README.md"><img src="docs/assets/flags/ir.svg" width="30" alt="فارسی (fa)" title="فارسی (fa)"></a>
<a href="docs/i18n/ar/README.md"><img src="docs/assets/flags/sa.svg" width="30" alt="العربية (ar)" title="العربية (ar)"></a>
<a href="docs/i18n/he/README.md"><img src="docs/assets/flags/il.svg" width="30" alt="עברית (he)" title="עברית (he)"></a>
<a href="docs/i18n/tr/README.md"><img src="docs/assets/flags/tr.svg" width="30" alt="Türkçe (tr)" title="Türkçe (tr)"></a>
<a href="docs/i18n/az/README.md"><img src="docs/assets/flags/az.svg" width="30" alt="Azərbaycan (az)" title="Azərbaycan (az)"></a>
<a href="docs/i18n/sw/README.md"><img src="docs/assets/flags/tz.svg" width="30" alt="Kiswahili (sw)" title="Kiswahili (sw)"></a>
<a href="docs/i18n/el/README.md"><img src="docs/assets/flags/gr.svg" width="30" alt="Ελληνικά (el)" title="Ελληνικά (el)"></a>
<a href="docs/i18n/hr/README.md"><img src="docs/assets/flags/hr.svg" width="30" alt="Hrvatski (hr)" title="Hrvatski (hr)"></a>
<a href="docs/i18n/sr/README.md"><img src="docs/assets/flags/rs.svg" width="30" alt="Српски (sr)" title="Српски (sr)"></a>
<a href="docs/i18n/lt/README.md"><img src="docs/assets/flags/lt.svg" width="30" alt="Lietuvių (lt)" title="Lietuvių (lt)"></a>
<a href="docs/i18n/et/README.md"><img src="docs/assets/flags/ee.svg" width="30" alt="Eesti (et)" title="Eesti (et)"></a>
<a href="docs/i18n/lv/README.md"><img src="docs/assets/flags/lv.svg" width="30" alt="Latviešu (lv)" title="Latviešu (lv)"></a>
<a href="docs/i18n/sl/README.md"><img src="docs/assets/flags/si.svg" width="30" alt="Slovenščina (sl)" title="Slovenščina (sl)"></a>
<a href="docs/i18n/mt/README.md"><img src="docs/assets/flags/mt.svg" width="30" alt="Malti (mt)" title="Malti (mt)"></a>
<a href="docs/i18n/ga/README.md"><img src="docs/assets/flags/ie.svg" width="30" alt="Gaeilge (ga)" title="Gaeilge (ga)"></a>
<a href="docs/i18n/kn/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="ಕನ್ನಡ (kn)" title="ಕನ್ನಡ (kn)"></a>
<a href="docs/i18n/ml/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="മലയാളം (ml)" title="മലയാളം (ml)"></a>
<a href="docs/i18n/or/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="ଓଡ଼ିଆ (or)" title="ଓଡ଼ିଆ (or)"></a>
<a href="docs/i18n/pa/README.md"><img src="docs/assets/flags/in.svg" width="30" alt="ਪੰਜਾਬੀ (pa)" title="ਪੰਜਾਬੀ (pa)"></a>
<a href="docs/i18n/ne/README.md"><img src="docs/assets/flags/np.svg" width="30" alt="नेपाली (ne)" title="नेपाली (ne)"></a>
<a href="docs/i18n/si/README.md"><img src="docs/assets/flags/lk.svg" width="30" alt="සිංහල (si)" title="සිංහල (si)"></a>
<a href="docs/i18n/my/README.md"><img src="docs/assets/flags/mm.svg" width="30" alt="မြန်မာ (my)" title="မြန်မာ (my)"></a>
<a href="docs/i18n/km/README.md"><img src="docs/assets/flags/kh.svg" width="30" alt="ខ្មែរ (km)" title="ខ្មែរ (km)"></a>
<a href="docs/i18n/ha/README.md"><img src="docs/assets/flags/ng.svg" width="30" alt="Hausa (ha)" title="Hausa (ha)"></a>
<a href="docs/i18n/yo/README.md"><img src="docs/assets/flags/ng.svg" width="30" alt="Yorùbá (yo)" title="Yorùbá (yo)"></a>
<a href="docs/i18n/ig/README.md"><img src="docs/assets/flags/ng.svg" width="30" alt="Igbo (ig)" title="Igbo (ig)"></a>
<a href="docs/i18n/am/README.md"><img src="docs/assets/flags/et.svg" width="30" alt="አማርኛ (am)" title="አማርኛ (am)"></a>
<a href="docs/i18n/uz/README.md"><img src="docs/assets/flags/uz.svg" width="30" alt="Oʻzbekcha (uz)" title="Oʻzbekcha (uz)"></a>
<a href="docs/i18n/ka/README.md"><img src="docs/assets/flags/ge.svg" width="30" alt="ქართული (ka)" title="ქართული (ka)"></a>
<a href="docs/i18n/hy/README.md"><img src="docs/assets/flags/am.svg" width="30" alt="Հայերեն (hy)" title="Հայերեն (hy)"></a>
</div>
<br/>
<br/>
<div align="center">
## 🆓 Gumagana agad sa sandaling i-install mo ito — walang key, walang config
</div>
<img src="./docs/diagrams/works-zero-config.svg" width="100%" alt="Gumagana agad sa sandaling i-install mo ito — walang config. Tatlong hakbang: 1. I-install — npm i -g omniroute, awtomatikong magsisimula ang server sa localhost:20128. 2. Ituro ang iyong tool sa http://localhost:20128/v1 — anumang tool na compatible sa OpenAI (Claude Code, Cursor, Cline). 3. Sasagot ito — tawagin ang model na auto para sa agarang tugon, nang walang API key, signup, o configuration. Ang keyless provider na OpenCode Free ay naka-wire na sa auto combo, kaya agad na tumutugon ang bagong install."/>
```bash
# Bagong install, walang credential — gumagana na ang `auto`:
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
```
<sub>Mas gusto ang isang partikular na libreng backend? Direktang tawagin ang `oc/…` (OpenCode Free). Pagkatapos, lumipat sa `auto` at hayaang OmniRoute ang pumili.</sub>
<sub>📦 Mga quickstart script na maaaring i-copy-paste para sa **Python, Node.js, PHP, at cURL** → [`examples/quickstart/`](examples/quickstart/)</sub>
<br/>
<div align="center">
# 💥 Ang Pangako
</div>
<img src="./docs/diagrams/promise-pillars.svg" width="100%" alt="Ang Pangako — Isang endpoint at 359 provider. Patuloy na nagra-route ang awtomatikong fallback habang may iba pang malusog na target. Anim na haligi: matatag na fallback sa 359 provider · hanggang 95% na matitipid sa token para sa mga kwalipikadong workload · $0 upang magsimula gamit ang 150+ libreng tier at 53 umuulit/keyless na libreng-forever na provider · 36 na integration ng CLI/agent sa pamamagitan ng isang config · compatibility sa OpenAI, Claude, Gemini, at Responses API sa /v1 · mga production control kabilang ang mga circuit breaker, TLS stealth, MCP na may 110 tool, A2A, memory, guardrail, eval, at 39,000+ static na deklarasyon ng test sa 5,100+ sinusubaybayang test file."/>
<br/>
<br/>
<div align="center">
# 🤔 Bakit OmniRoute?
</div>
<img src="./docs/diagrams/why-pain-fix.svg" width="100%" alt="Bakit OmniRoute — tigilan ang pagpapalit-palit sa 10 dashboard, mga patay na API key, at mga nakakagulat na bill. Sampung pang-araw-araw na problema at solusyon: nag-e-expire ang quota nang hindi nagagamit → sulitin ang mga subscription; mga rate limit habang nagko-code → 4-tier na auto-fallback (Subscription → API → Mura → Libre); nauubos ng mga output ng tool ang mga token → RTK + Caveman compression (1595%); mamahaling API → routing na naka-optimize sa gastos; bawat tool ay may sariling setup → isang endpoint, isang dashboard; naka-block ang AI → 3-level proxy + TLS stealth; mga patay na key → 3-layer na resilience (mga circuit breaker, key cooldown, model lockout); isang subscription ang pinagsasaluhan ng team → mga key pool na may patas na quota; dumadaan ang mga prompt sa cloud ng ibang tao → local-first na may mga key na naka-encrypt gamit ang AES-256-GCM; walang visibility sa gastos → live analytics (paggamit, quota, matitipid, p95 latency)."/>
<div align="center">
<img src="./docs/diagrams/tier-cascade.svg" width="100%" alt="Daloy ng request sa OmniRoute: tumatawag ang iyong IDE o CLI (Claude Code, Cursor, Cline…) sa isang lokal na endpoint (http://localhost:20128/v1); maaaring mag-fallback ang OmniRoute Smart Router (RTK + Caveman compression, 19 na routing strategy, mga circuit breaker, TLS stealth, MCP, A2A, mga guardrail) sa 4 na provider tier habang may natitirang kwalipikado at malusog na target — Tier 1 Subscription, Tier 2 API Key, Tier 3 Mura, at Tier 4 Libre."/>
</div>
<br/>
<div align="center">
## 🤝 Sinusuportahan ng aming mga Kaibigang Open Source
</div>
<p align="center">
<a href="https://platform.kimi.ai?track_id=track-8197581fdd7d4139a0f562e4a03c3798&aff=omniroute">
<img src="public/sponsors/kimi-k3-banner.png" width="100%" alt="Kimi K3 — Open Frontier Intelligence · 2.8T parameter · 1M-token na konteksto"/>
</a>
</p>
> **Gusto mo bang sumali bilang Kaibigang Open Source?** Ito ang mga kumpanyang sumusuporta sa open source at tumutulong upang patuloy na umusad ang OmniRoute — at hayagan naming sinasabi kung saan napupunta ang bawat token na ibinibigay nila sa amin. Makipag-ugnayan: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
<table>
<tr>
<td align="center" width="150">
<a href="https://platform.kimi.ai?track_id=track-8197581fdd7d4139a0f562e4a03c3798&aff=omniroute">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="public/providers/kimi-logomark-dark.svg">
<img src="public/providers/kimi-logomark-light.svg" width="64" alt="Kimi (Moonshot AI)"/>
</picture>
</a>
<br/><b>Kimi</b><br/><sub>Moonshot AI</sub><br/><br/>
<img src="https://img.shields.io/badge/Founding_Friend-1783FF?style=flat-square" alt="Nagtatag na Kaibigang Open Source"/>
</td>
<td>
Salamat sa <b>Kimi (Moonshot AI)</b>, ang aming nagtatag na Kaibigang Open Source, sa pagsuporta sa proyektong ito! Ang Kimi ang AI lab sa likod ng mga open-weight na pamilya ng modelong K2 at K3 — naghahatid ang <b>Kimi K3</b> ng 1M-token na context window, native vision, at frontier-level na coding sa maliit na bahagi lamang ng presyo ng mga closed model, at agad itong gumagana sa Claude Code, Codex, at bawat coding tool na sinusuportahan ng OmniRoute.
<br/><br/>
<b>Ang pinapagana ng suporta ng Kimi:</b> Pinapagana ng mga API credit ng Kimi ang release pipeline ng OmniRoute na bina-validate ng AI — ang yugtong <i>merge validation powered by Kimi K3</i> na nagsusuri sa bawat pull request bago ito ilabas — pati na rin ang pang-araw-araw na pagbuo ng mga feature. Inihahatid ang first-class na suporta para sa Kimi sa parehong paraan: ang direktang <a href="https://platform.kimi.ai?track_id=track-8197581fdd7d4139a0f562e4a03c3798&aff=omniroute">Kimi API</a> (<code>kimi-k3</code>) at ang <a href="https://www.kimi.com/code?aff=omniroute">Kimi Code coding plan</a> (OAuth at API key). Ang OmniRoute din ang unang Brazilian na open-source na proyekto sa programa ng suporta ng Kimi. <a href="https://platform.kimi.ai?track_id=track-8197581fdd7d4139a0f562e4a03c3798&aff=omniroute"><b>Kumuha ng Kimi API key na may 15% dagdag na credit →</b></a>
</td>
</tr>
<tr>
<td align="center" width="150">
<a href="https://cheaperinference.com/?utm_source=omniroute">
<img src="./public/providers/cli-generic.svg" width="64" alt="Cheaper Inference"/>
</a>
<br/><b>Cheaper Inference</b><br/><sub>cheaperinference.com</sub><br/><br/>
<img src="https://img.shields.io/badge/Open_Source_Friend-31f889?style=flat-square&labelColor=04170d" alt="Kaibigang Open Source"/>
</td>
<td>
Salamat sa <b>Cheaper Inference</b>, isang Kaibigang Open Source ng OmniRoute, sa pagsuporta sa proyektong ito! Ang Cheaper Inference ay isang gateway na niraranggo ayon sa gastos at muling nagbebenta ng 42 frontier model — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok, at MiniMax — sa likod ng iisang endpoint na compatible sa OpenAI, na nagru-route sa bawat request patungo sa pinakamurang kwalipikadong provider nang hindi kailanman naniningil nang higit sa listahang presyo ng gumawa ng modelo.
<br/><br/>
<b>First-class na suporta sa OmniRoute:</b> Chat Completions, ang native na <code>/v1/responses</code> endpoint, vision, tool calling, at 3 image model (<code>grok-imagine</code>, <code>nano-banana-pro</code>, <code>nano-banana-2</code>, na maa-access bilang <code>cheaperinference/&lt;model&gt;</code>). <a href="https://cheaperinference.com/?utm_source=omniroute"><b>Kumuha ng API key →</b></a>
</td>
</tr>
</table>
<sub>Ang mga link na may tag na <code>aff=omniroute</code> ay mga partner link. Tumutulong ang mga ito na pondohan ang proyekto nang walang karagdagang gastos sa iyo.</sub>
<br/>
<details open>
<summary><sub><b>🎟️ Promosyon ng mga Affiliate</b> — mga libreng signup coupon mula sa mga provider na hindi namin ini-sponsor (i-click upang palawakin)</sub></summary>
<sub><i>Ang seksiyong ito ay para lamang sa mga referral/coupon code. Ang mga naka-sponsor na partnership ay nasa <b>🤝 Sinusuportahan ng aming mga Kaibigang Open Source</b> sa itaas. Walang sponsorship o partnership ang OmniRoute sa mga provider na nakalista rito — mga pampublikong coupon ang mga ito na maaaring gamitin ng sinuman.</i></sub>
<table>
<tr>
<td align="center" width="120">
<a href="https://agentrouter.org/register?aff=70LM">
<img src="./public/providers/cli-generic.svg" width="32" alt="AgentRouter"/>
</a>
<br/><sub><b>AgentRouter</b></sub><br/><sub>agentrouter.org</sub>
</td>
<td>
<sub><b><a href="https://agentrouter.org/register?aff=70LM">AgentRouter</a></b> — affiliate signup · <b>$100 na libreng credit</b> sa pag-sign up (libreng server, asahan ang mas mataas na latency — pinakamainam para sa testing, hindi para sa production). May first-class na suporta sa OmniRoute mula pa noong <b>v3.8.50</b>: Chat Completions, ang wire format na compatible sa Anthropic, at ang path na compatible sa OpenAI. Kabilang sa mga available na modelo ang <code>claude-opus-4-8</code>, <code>claude-opus-5</code>, <code>gpt-5.6-sol</code>, at marami pa. <b><a href="https://agentrouter.org/register?aff=70LM">Kunin ang iyong $100 →</a></b></sub>
<br/><br/>
<sub>⚠️ <i>Affiliate link — walang sponsorship o partnership ang OmniRoute sa provider na ito.</i></sub>
</td>
</tr>
</table>
<sub>May alam ka bang ibang provider na may malaking libreng signup coupon na kapaki-pakinabang sa mga gumagamit ng OmniRoute? Magbukas ng issue at idaragdag namin ito rito.</sub>
</details>
<br/>
<div align="center">
## 🎯 Mga Combo — Ang Pangunahing Tampok
</div>
<img src="./docs/diagrams/strategies-grid.svg" width="100%" alt="Lahat ng 19 na estratehiya sa pag-route ng combo na naka-animate — isang tile bawat estratehiya: 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. Tingnan ang talahanayan sa itaas para malaman kung ano ang ginagawa ng bawat isa."/>
> Ang **combo** ay isang hanay ng mga model na **awtomatikong** dinaraanan ng OmniRoute. Kapag naubos ang quota, pumalya ang isang provider, o biglang tumaas ang mga gastos, maaaring lumipat ang combo sa susunod na kwalipikado at maayos na model. 🛡️
### ⚡ Walang configuration — gamitin lang ang `auto`
Walang combo na kailangang gawin. Itakda ang iyong model sa `auto` (o isang variant) at bubuo ang OmniRoute ng virtual na combo mula sa iyong mga nakakonektang provider, na sinusuri nang live:
<table>
<tr><th align="left">Model ID</th><th align="left">Kung para saan ito nag-o-optimize</th></tr>
<tr><td align="left" nowrap><code>auto</code></td><td align="left">🎯 Balanseng default (LKGP — nananatili sa huli mong maayos na provider)</td></tr>
<tr><td align="left" nowrap><code>auto/coding</code></td><td align="left">🧑💻 Mga weight na inuuna ang kalidad para sa pagbuo ng code</td></tr>
<tr><td align="left" nowrap><code>auto/fast</code></td><td align="left">⚡ Pinakamababang latency muna</td></tr>
<tr><td align="left" nowrap><code>auto/cheap</code></td><td align="left">💰 Pinakamura bawat token muna</td></tr>
<tr><td align="left" nowrap><code>auto/offline</code></td><td align="left">🔋 Pinakamalaking natitirang quota / headroom sa rate limit muna</td></tr>
<tr><td align="left" nowrap><code>auto/smart</code></td><td align="left">🔭 Inuuna ang kalidad + 10% paggalugad upang tumuklas ng mas mahuhusay na model</td></tr>
<tr><td align="left" nowrap><code>auto/lkgp</code></td><td align="left">📌 Tahasang pananatili sa huling provider na napatunayang maayos</td></tr>
<tr><td align="left" nowrap><code>auto/chaos</code></td><td align="left">🧪 Mga weight sa pag-inject ng fault para sa pagsubok ng katatagan (chaos engineering)</td></tr>
</table>
##
### 🔀 O gumawa ng sarili mo — 19 na estratehiya sa pag-route
Lahat ng **19** na estratehiya — paghalu-haluin at pagtugmain sa bawat hakbang ng combo:
<table>
<tr>
<th>#</th>
<th align="left">Estratehiya</th>
<th align="left">Ano ang ginagawa nito</th>
</tr>
<tr>
<td align="center">1</td>
<td nowrap><code>priority</code></td>
<td>Nakaayos na listahang inuuna ang unang target — ubusin ang bawat isa bago ang susunod 🥇</td>
</tr>
<tr>
<td align="center">2</td>
<td nowrap><code>fill-first</code></td>
<td>Ubusin muna nang buo ang quota ng bawat target bago lumipat</td>
</tr>
<tr>
<td align="center">3</td>
<td nowrap><code>weighted</code></td>
<td>Random na pagpili batay sa weight ng bawat target</td>
</tr>
<tr>
<td align="center">4</td>
<td nowrap><code>round-robin</code></td>
<td>Paikut-ikot na dumaan sa mga target ayon sa pagkakasunod-sunod</td>
</tr>
<tr>
<td align="center">5</td>
<td nowrap><code>p2c</code></td>
<td>Random na pagbabalanse ng load gamit ang power-of-two-choices</td>
</tr>
<tr>
<td align="center">6</td>
<td nowrap><code>least-used</code></td>
<td>Piliin ang target na may pinakamababang kasalukuyang load</td>
</tr>
<tr>
<td align="center">7</td>
<td nowrap><code>random</code></td>
<td>Pantay-pantay na random na pagpili (inaalis ang mga duplikado)</td>
</tr>
<tr>
<td align="center">8</td>
<td nowrap><code>strict-random</code></td>
<td>Random na pagpili nang hindi inaalis ang mga pag-uulit 🎲</td>
</tr>
<tr>
<td align="center">9</td>
<td nowrap><code>cost-optimized</code></td>
<td>Bawasan ang $ bawat request gamit ang live na pagpepresyo sa catalog 💸</td>
</tr>
<tr>
<td align="center">10</td>
<td nowrap><code>headroom</code></td>
<td>Piliin ang target na may pinakamaraming natitirang quota</td>
</tr>
<tr>
<td align="center">11</td>
<td nowrap><code>reset-window</code></td>
<td>Unahin ang target na pinakamalapit nang mag-reset ang quota window</td>
</tr>
<tr>
<td align="center">12</td>
<td nowrap><code>reset-aware</code></td>
<td>Ayusin ayon sa oras ng pag-reset ng quota — maiikling window muna 📊</td>
</tr>
<tr>
<td align="center">13</td>
<td nowrap><code>context-relay</code></td>
<td>Ipasa ang context sa iba't ibang target para sa mahahabang pag-uusap 🧠</td>
</tr>
<tr>
<td align="center">14</td>
<td nowrap><code>context-optimized</code></td>
<td>Piliin ang pinakaangkop para sa kasalukuyang laki ng context</td>
</tr>
<tr>
<td align="center">15</td>
<td nowrap><code>cache-optimized</code></td>
<td>Italaga ang bawat magagamit-muling prompt prefix sa parehong account — i-maximize ang mga prompt-cache hit 🎯</td>
</tr>
<tr>
<td align="center">16</td>
<td nowrap><code>lkgp</code></td>
<td>Last-Known-Good Path — nananatili sa huling matagumpay na provider, saka bumabalik sa mga panuntunan kung kailangan</td>
</tr>
<tr>
<td align="center">17</td>
<td nowrap><code>auto</code></td>
<td>Live na pagsusuri gamit ang 16 na salik sa lahat ng koneksyon 🤖</td>
</tr>
<tr>
<td align="center">18</td>
<td nowrap><code>fusion</code></td>
<td>Ipadala sa isang panel ng mga model + isang tagahatol ang magsasama-sama upang makabuo ng iisang sagot 🧬</td>
</tr>
<tr>
<td align="center">19</td>
<td nowrap><code>pipeline</code></td>
<td>Pagkadenahin ang mga hakbang — ang output ng bawat target ang ipapasok sa susunod 🔗</td>
</tr>
</table>
<sub>Sinusuri ng Auto-Combo engine ang bawat kandidato batay sa **16 na salik** (kalagayan, quota, gastos, latency, pagiging angkop sa gawain, kalidad, availability ng session…) — tingnan ang [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).</sub>
##
### 🧱 Built-in ang katatagan (3 magkakahiwalay na layer)
<img src="./docs/diagrams/resilience-layers.svg" width="100%" alt="Katatagan ng OmniRoute — 3 independiyenteng layer ng kusang pagbangon, ang tamang layer para sa tamang pagkabigo. Layer 1 circuit breaker ng provider (buong provider): nati-trigger lamang sa 408/5xx, mga threshold na OAuth 8× / API-key 12× / lokal 2×, nagre-reset pagkalipas ng 60s/30s/15s tungo sa isang HALF-OPEN na probe, lazy recovery; habang OPEN, inililipat ng combo ang ruta sa susunod na provider. Layer 2 cooldown ng koneksyon (isang key/account): batayang 5s OAuth / 3s API-key, exponential ×2 backoff na may proteksyon laban sa thundering herd, sinusunod ng 429 ang Retry-After, nililinis ng tagumpay ang lahat ng error state; nilalaktawan ang isang key na nasa cooldown habang patuloy na nagsisilbi ang mga kapatid na key. Layer 3 lockout ng modelo (isang modelo): per-model na 429, lokal na 404, o mga pagtanggi sa mode ang nagla-lock lamang sa modelong iyon — hindi kailanman sa buong koneksyon. Ang mga terminal state (na-ban, nag-expire, ubos na ang mga credit) ay para sa operator, hindi mga cooldown."/>
<sub>📖 [Auto-Combo Engine](docs/routing/AUTO-COMBO.md) · [Gabay sa Katatagan](docs/architecture/RESILIENCE_GUIDE.md)</sub>
<br/>
<div align="center">
## 🏆 Ano ang Nagpapabukod-tangi sa OmniRoute
</div>
<img src="./docs/diagrams/comparison-table.svg" width="100%" alt="Ano ang nagpapabukod-tangi sa OmniRoute — isang snapshot ng mga feature ayon sa petsa kumpara sa 9router, OpenRouter, CLIProxyAPI at LiteLLM sa 13 kakayahan. OmniRoute: 359 provider, 150+ libreng tier na built-in, 19 na estratehiya sa routing, 12-engine na token compression, built-in na MCP server na may 110 tool, A2A agent protocol, persistent memory, mga guardrail, mga cloud agent, TLS fingerprint stealth, Desktop/Termux/PWA at 42 locale ng i18n UI. Ang OmniRoute ay may lisensyang MIT at maaaring i-self-host. Maaaring magbago ang mga kakayahan at bilang ng mga kakumpitensya; tingnan ang naka-link na metodolohiya."/>
<sub>📊 Kumpletong metodolohiya at detalye ng bawat feature kumpara sa 9router, OpenRouter, CLIProxyAPI at LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)</sub>
<br/>
## 💚 Suportahan ang OmniRoute
Ang OmniRoute ay may lisensyang MIT at hayagang pinapanatili. Kung nakakatipid ito ng oras o pera para sa iyo, narito kung paano mo ito matutulungang manatiling malaya — piliin ang naaangkop sa iyo. Hindi kailanman naaapektuhan ng sponsorship ang priyoridad sa routing; visibility ang binibili nito, hindi ranggo.
<table>
<tr><td nowrap>⭐ <b>I-star ang repo</b></td><td>Libre — talagang nakakatulong sa visibility</td><td><a href="https://github.com/diegosouzapw/OmniRoute">I-star ang OmniRoute</a></td></tr>
<tr><td nowrap>🐙 <b>GitHub Sponsors</b></td><td>Isang beses o buwanan · walang bayarin sa platform</td><td><a href="https://github.com/sponsors/diegosouzapw">github.com/sponsors/diegosouzapw</a></td></tr>
<tr><td nowrap>☕ <b>Ko-fi</b></td><td>Mabilis na minsanang tip, hindi kailangang mag-sign up ang donor</td><td><a href="https://ko-fi.com/diegosouzapw">ko-fi.com/diegosouzapw</a></td></tr>
<tr><td nowrap>🧋 <b>Buy Me a Coffee</b></td><td>Maliit at di-pormal na pagpapahalaga</td><td><a href="https://www.buymeacoffee.com/diegosouzapw">buymeacoffee.com/diegosouzapw</a></td></tr>
<tr><td nowrap>🖐 <b>Liberapay</b></td><td>Paulit-ulit · non-profit · open source</td><td><a href="https://liberapay.com/diegosouzapw">liberapay.com/diegosouzapw</a></td></tr>
<tr><td nowrap>🇧🇷 <b>PIX</b> (Brazil)</td><td>Agad-agad, walang bayarin</td><td>key at QR sa ibaba</td></tr>
<tr><td nowrap>₿ <b>Crypto</b></td><td>BTC · ETH · USDT-TRC20 · USDC-Solana</td><td>mga address sa ibaba</td></tr>
</table>
**🇧🇷 PIX** — agad-agad, walang bayarin (Brazil)
<img src="docs/assets/pix-qr.png" width="140" align="right" alt="QR code ng OmniRoute PIX"/>
Key (random): `5d865059-bc44-483a-962d-43ceb80126eb`
Kopyahin-at-i-paste na Pix:
```
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
```
<br clear="right"/>
<details>
<summary><b>₿ Crypto</b> — BTC · ETH · USDT-TRC20 · USDC-Solana (i-click para palawakin)</summary>
<table>
<tr><td nowrap><b>₿ BTC</b></td><td nowrap>Bitcoin (SegWit)</td><td><code>bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd</code></td></tr>
<tr><td nowrap><b>Ξ ETH</b></td><td nowrap>Ethereum (ERC20)</td><td><code>0x64Cf6B68A6Ff34288e89172950a2d00102337a84</code></td></tr>
<tr><td nowrap><b>₮ USDT</b></td><td nowrap>Tron (TRC20)</td><td><code>TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2</code></td></tr>
<tr><td nowrap><b>$ USDC</b></td><td nowrap>Solana</td><td><code>2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu</code></td></tr>
</table>
<sub>⚠️ Ipadala lamang ang bawat coin sa ipinapakitang network — maaaring mawala ang mga pondo kapag ipinadala sa maling network.</sub>
</details>
🐛 Nakakita ng bug o may feedback? Magbukas ng [Talakayan](https://github.com/diegosouzapw/OmniRoute/discussions).
<br/>
<p><strong>Mga tala para sa developer:</strong> Maaaring bumuo ang proyekto ng lokal na <code>.env</code> file habang isinasagawa ang npm install/postinstall para sa kaginhawaan ng developer. Sadyang binabalewala ang file na ito sa pamamagitan ng <code>.gitignore</code> (tingnan ang <code>.gitignore</code>) at hindi ito kailanman dapat i-commit — kung aksidenteng na-commit, palitan ang anumang nalantad na secret at alisin ang file mula sa history. Tingnan ang <a href="docs/DEVELOPER-ENVIRONMENT.md">docs/DEVELOPER-ENVIRONMENT.md</a> para sa gabay sa pamamahala ng mga lokal na environment file at secret.</p>
## 📡 OmniRoute Radar
Ang pangunahing tampok ng libreng tier ay nananatiling **~1.47B token/buwan** mula sa nakadokumento at
na-deduplicate ayon sa pool na catalog sa itaas. Ang mga pansamantalang credit sa pag-sign up sa provider ay maaari ding hiwalay na magtaas sa unang
buwan sa **~2.07B**. Ang Radar ay isang opsyonal at nilagdaang catalog overlay para sa mga taong nais ng mas napapanahong
availability ng mga libreng modelo sa pagitan ng mga release ng OmniRoute; nananatiling libre ang catalog ng komunidad at lahat ng kasalukuyang libreng
feature.
Maaaring matanggap ng mga supporter ang live na catalog at mga karagdagang oportunidad mula sa provider. Ang hiwalay at
nababagong maximum nito ay **humigit-kumulang 3B token/buwan sa pinakamarami**, depende sa availability ng provider.
Hindi garantiya ang maximum na iyon: maaaring baguhin ng mga provider ang mga quota, pagiging kwalipikado, mga modelo, o mga rehiyon anumang
oras.
Opt-in at GET-only ang Radar. Hindi nag-a-upload ang OmniRoute client ng mga prompt, trapiko, configuration ng provider,
telemetry ng paggamit, o lokal na status ng pag-dismiss ng anunsyo. Alamin ang tungkol sa pagiging kwalipikado at
kasalukuyang catalog sa **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
<br/>
<div align="center">
## ✨ Ano ang Bago
</div>
> Mga kamakailang tampok mula **v3.8.20 → v3.8.50**. Ang buong kasaysayan ay nasa [`CHANGELOG.md`](CHANGELOG.md).
- **🎛️ OmniConductor** — papasok na delegasyong A2A sa iyong fleet ng mga agent, mga skill ng Conductor sa Agent Card, at isang dashboard panel na may Faro push-to-talk voice chat. → [A2A Server](docs/frameworks/A2A-SERVER.md)
- **🛂 Adaptive na pagtanggap at proteksiyon laban sa overload** — ipinipila ang mabibigat na kahilingan sa chat sa halip na magbalik ng 503, gamit ang mga atomic RPM rolling lease sa bawat koneksiyon. → [Gabay sa Resilience](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ Kanonikal na pagkakasunod-sunod ng `/v1/models`** — isang magkakadikit na block na nakapangkat ayon sa provider para sa bawat provider (naka-pin muna ang mga combo), na hindi nagbabago sa lahat ng pinagmulan ng catalog. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🗜️ Pagpapatatag ng compression** — naka-on bilang default na inflation guard, mga Caveman pack para sa DE / FR / JA + Chinese (wényán), at mga RTK filter para sa Gradle at .NET. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **💸 Tapat na flat-rate na gastos** — lumalabas bilang **$0** sa cost analytics ang mga provider ng subscription / coding plan; patuloy na nagtatantiya ang budget, quota, at routing. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **⚖️ Quota-Share routing** — patas na hinahati ang quota ng isang shared account sa mga pooled key, at work-conserving ito upang maipahiram ang mga hindi ginagamit na bahagi. → [Gabay sa Resilience](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 Isang-command na pag-setup ng CLI/agent** — 13 nakarehistrong `setup-*` command; inilulunsad ng `omniroute run` ang 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI); sinusuportahan ng `omniroute configure` ang 10 target na may interactive na provider+model picker at mga paborito sa bawat konteksto. → [Mga Integrasyon ng CLI](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ Remote mode** — kontrolin ang isang remote na OmniRoute gamit ang mga scoped token (`connect` / `contexts` / `tokens`) + isang `antigravity` OAuth helper para sa mga pag-install sa VPS. → [Remote Mode](docs/guides/REMOTE-MODE.md)
- **🧭 Mas matalinong auto-routing** — mga combo na `auto/<category>:<tier>`, **Fusion** (model panel + judge), routing na isinasaalang-alang ang gawain, at mga override sa bawat kahilingan para sa model / mode / USD budget. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🗜️ Pluggable na compression** — 12 composable engine + Compression Studios: LLMLingua-2, two-tier Ultra, omniglyph, fidelity gate sa bawat hakbang, GCF v3.2, at drag-reorder editor. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ Transparent na MITM decrypt (TPROXY)** — i-capture ang mga CLI na binabalewala ang mga proxy env var, gamit ang CA sa bawat SNI + trust-store installer. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 Cost telemetry saanman** — mga header ng gastos/paggamit na `X-OmniRoute-*` sa bawat endpoint, header ng matitipid mula sa cache-HIT, at mga USD spending quota sa bawat key. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🧠 Memory na kontrolado mo** — naka-off bilang default, opt-in na int8 vector quantization + typed decay, at `x-omniroute-no-memory` sa bawat kahilingan. → [Memory](docs/frameworks/MEMORY.md)
- **🛡️ Seguridad** — prompt-injection guard sa bawat LLM route (red-team suite), opt-in na credential-masking guardrail (nire-redact ang mga tumagas na API key/secret sa parehong direksiyon), libreng DuckDuckGo web search bilang huling opsiyon, at opsiyonal na OIDC login gate para sa dashboard (palaging nananatiling available ang password login). → [Mga Guardrail](docs/security/GUARDRAILS.md)
- **🖼️ Mga bagong endpoint** — kinukumpleto ng `/v1/ocr` (Mistral OCR) at `/v1/audio/translations` (Whisper-style) ang saklaw ng media. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🎨 Pagbuo ng image / video / audio** — iisang API para sa media: xAI Grok Imagine at Novita AI video, ComfyUI, Magnific, Adobe Firefly, Segmind, at mga speech provider gaya ng ElevenLabs. → [Sanggunian ng API](docs/reference/API_REFERENCE.md)
- **🌍 Deployment at operasyon** — reverse-proxy `basePath`, awtomatikong pagtukoy sa wika ng browser, pagsubaybay sa device sa bawat key, root-less na MITM trust, at zh-TW localization. → [Environment](docs/reference/ENVIRONMENT.md)
- **🤝 Higit pang provider at agent** — mga cloud agent (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) na may browser + OAuth login, first-class na card para sa Ollama, Claude Opus 5 at Sonnet 5, opisyal na pakikipagsosyo sa Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… at isang ni-refresh na **catalog ng 352 provider**. → [Mga Provider](docs/reference/PROVIDER_REFERENCE.md)
- **📡 Transparency sa routing** — bawat tugon ay may header na `X-OmniRoute-Decision` na tumutukoy sa strategy/provider/latency na nagsilbi rito, isang bagong `cache-optimized` combo strategy + Auto-Combo `cacheAffinity` factor ang muling nagru-route ng mga nauulit na kahilingan pabalik sa koneksiyong may hawak ng naka-cache na prefix, at inilalantad ng read-only na endpoint na `/v1/auto-combo/{channel}/candidates` ang live candidate pool ng isang `auto/*` channel. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **⚡ Lokal na performance at imprastraktura** — one-click na lokal na Redis, mga relay deployer para sa Cloudflare Workers / Deno Deploy, at Bifrost at Mux bilang mga pinangangasiwaang embedded service. → [Mga Embedded Service](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 Kasama rin** — plugin framework + marketplace, mga framework ng Omni/Agent/GitHub skills, integrasyon sa Obsidian vault (22 MCP tool), OpenAI-compatible na Batch at Files API, semantic response cache, gamification na may mga leaderboard, ACP agent discovery (15 built-in na agent), nakaiskedyul na pag-export ng log sa BigQuery, `auto/chaos` fault injection, isang Telegram bot bridge, isang in-app na version manager, at mga ranking ng libreng provider mula sa LMArena-ELO. → [Mga Dokumento](docs/README.md)
<br/>
<div align="center">
## 🤖 Mga Compatible na CLI at Coding Agent
> Isang config — `http://localhost:20128/v1` — at **bawat** AI IDE o CLI ay gumagana sa libre at murang mga modelo.
<div align="center">
<table>
<tr>
<td align="center" width="76"><a href="https://github.com/anthropics/claude-code"><img src="./public/providers/claude.svg" width="40" alt="Claude Code"/><br/><sub><b>Claude Code</b></sub><br/><sub>                           </sub></a></td>
<td align="center" width="76"><a href="https://github.com/openai/codex"><img src="./public/providers/codex.svg" width="40" alt="Codex CLI"/><br/><sub><b>Codex CLI</b></sub><br/><sub>                           </sub></a></td>
<td align="center" width="76"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/cline.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/cline.svg" width="40" alt="Cline"/></picture><br/><sub><b>Cline</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><a href="https://github.com/Kilo-Org/kilocode"><img src="./public/providers/cli-generic.svg" width="40" alt="Kilo Code"/><br/><sub><b>Kilo Code</b></sub><br/><sub> </sub></a></td>
<td align="center" width="76"><a href="https://github.com/Zoo-Code-Org/Zoo-Code"><img src="./public/providers/cli-generic.svg" width="40" alt="Zoo Code"/><br/><sub><b>Zoo Code</b></sub><br/><sub> </sub></a></td>
<td align="center" width="76"><img src="./public/providers/continue.svg" width="40" alt="Continue"/><br/><sub><b>Continue</b></sub><br/><sub>                           </sub></td>
</tr>
<tr>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Aider"/><br/><sub><b>Aider</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="ForgeCode"/><br/><sub><b>ForgeCode</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="jcode"/><br/><sub><b>jcode</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/deepseek.svg" width="40" alt="DeepSeek TUI"/><br/><sub><b>DeepSeek TUI</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="CodeWhale"/><br/><sub><b>CodeWhale</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><a href="https://github.com/anomalyco/opencode"><img src="./public/providers/cli-generic.svg" width="40" alt="OpenCode"/><br/><sub><b>OpenCode</b></sub><br/><sub>                           </sub></a></td>
</tr>
<tr>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Factory Droid"/><br/><sub><b>Factory Droid</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/copilot.svg" width="40" alt="GitHub Copilot CLI"/><br/><sub><b>Copilot CLI</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cursor.svg" width="40" alt="Cursor CLI"/><br/><sub><b>Cursor CLI</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Smelt"/><br/><sub><b>Smelt</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Pi (pi-coding-agent)"/><br/><sub><b>Pi</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/grok.svg" width="40" alt="Grok Build (xAI)"/><br/><sub><b>Grok Build</b></sub><br/><sub>                           </sub></td>
</tr>
<tr>
<td align="center" width="76"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/nousresearch.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/nousresearch.svg" width="40" alt="Hermes Agent (Nous Research)"/></picture><br/><sub><b>Hermes Agent</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/openclaw.svg" width="40" alt="OpenClaw"/><br/><sub><b>OpenClaw</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/goose.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/goose.svg" width="40" alt="Goose"/></picture><br/><sub><b>Goose</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Open Interpreter"/><br/><sub><b>Open Interpreter</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Warp AI"/><br/><sub><b>Warp AI</b></sub><br/><sub>                           </sub></td>
<td align="center" width="76"><img src="./public/providers/cli-generic.svg" width="40" alt="Agent Deck"/><br/><sub><b>Agent Deck</b></sub><br/><sub>                           </sub></td>
</tr>
</table>
</div>
<div align="center">
<b> gumagana rin sa</b> · Kiro · Command Code · Antigravity · Windsurf · AMP · <b>anumang tool na compatible sa OpenAI</b>
</div>
<sub>📖 Setup para sa bawat tool para sa lahat ng 36 na tool (26 CLI Code + 10 CLI Agent) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 Plugin ng OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)</sub>
</div>
<br/>
**Ilunsad ang anumang sinusuportahang CLI sa pamamagitan ng OmniRoute gamit ang isang command** — walang isinusulat na mga config file,
ini-inject ang mga credential sa bawat proseso, at binibigyan ang Qwen/Gemini ng pansamantalang nakahiwalay na home:
```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"
# O pumili ng provider+model nang interaktibo at isulat ang sariling config ng tool:
omniroute configure codex # gayundin: claude opencode qwen aider goose gemini cline continue kilo
```
Sinusunod ng bawat command ang aktibong remote context (`omniroute connect <host>`), ipinapakita ng `--dry-run`
ang eksaktong env/args nang hindi isinasagawa ang mga ito, at pinapanatili ng `--api-key-env NAME` ang mga secret
sa labas ng history ng iyong shell. → [Mga Integrasyon ng CLI](docs/guides/CLI-INTEGRATIONS.md)
<br/>
<div align="center">
## 🌐 352 AI Provider — 152 Minarkahan sa Katalogo bilang Libre
</div>
> **352 nakarehistrong provider** sa mga kanonikal na koleksiyon ng chat, media, search, local, cloud-agent, at system, kabilang ang **152 na may `hasFree: true` na metadata para sa pagtuklas**. Saklaw ng registry ng modelo ng chat ang **229 provider / 2,554 natatanging pares ng provider-model / 1,283 raw na model ID**; ang hiwalay na katalogo ng libreng badyet ay may **443 row bawat modelo**, **34 umuulit na pool**, at **53 umuulit/walang-key na libreng-forever na provider**. Sadyang magkakaiba ang mga denominator na ito; makikita ang mga depinisyon at kalkulasyong inalisan ng mga duplikadong pool sa [Sanggunian ng Provider](docs/reference/PROVIDER_REFERENCE.md) at [Mga Libreng Tier](docs/reference/FREE_TIERS.md).
<div align="center">
### 🏢 Bawat pangunahing laboratoryo — sa pamamagitan ng iisang endpoint
<table>
<tr>
<td align="center" width="80"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/openai.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/openai.svg" width="40" alt="OpenAI"/></picture><br/><sub>OpenAI</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/claude-color.svg" width="40" alt="Anthropic"/><br/><sub>Anthropic</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/gemini-color.svg" width="40" alt="Gemini"/><br/><sub>Gemini</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/grok.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/grok.svg" width="40" alt="xAI Grok"/></picture><br/><sub>xAI Grok</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/deepseek-color.svg" width="40" alt="DeepSeek"/><br/><sub>DeepSeek</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/mistral-color.svg" width="40" alt="Mistral"/><br/><sub>Mistral</sub><br/><sub>                           </sub></td>
</tr>
<tr>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/qwen-color.svg" width="40" alt="Qwen"/><br/><sub>Qwen</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/meta-color.svg" width="40" alt="Meta Llama"/><br/><sub>Meta Llama</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><picture><source media="(prefers-color-scheme:dark)" srcset="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-png@1.91.0/dark/groq.png"/><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/groq.svg" width="40" alt="Groq"/></picture><br/><sub>Groq</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/nvidia-color.svg" width="40" alt="NVIDIA"/><br/><sub>NVIDIA</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/minimax-color.svg" width="40" alt="MiniMax"/><br/><sub>MiniMax</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/cohere-color.svg" width="40" alt="Cohere"/><br/><sub>Cohere</sub><br/><sub>                           </sub></td>
</tr>
<tr>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/perplexity-color.svg" width="40" alt="Perplexity"/><br/><sub>Perplexity</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/huggingface-color.svg" width="40" alt="Hugging Face"/><br/><sub>HuggingFace</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/together-color.svg" width="40" alt="Together"/><br/><sub>Together</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/fireworks-color.svg" width="40" alt="Fireworks"/><br/><sub>Fireworks</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/cloudflare-color.svg" width="40" alt="Cloudflare"/><br/><sub>Cloudflare</sub><br/><sub>                           </sub></td>
<td align="center" width="80"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/baidu-color.svg" width="40" alt="Baidu"/><br/><sub>Baidu</sub><br/><sub>                           </sub></td>
</tr>
</table>
<sub>…at 330+ pa — live na kinukuha ang bawat icon mula sa katalogo ng provider ng dashboard. 📖 [Sanggunian ng Provider](docs/reference/PROVIDER_REFERENCE.md)</sub>
<br/>
### 🆓 Libre Magpakailanman — $0, walang card
<table>
<tr>
<td align="center" width="150"><img src="./public/providers/cli-generic.svg" width="42" alt="OpenCode Zen"/><br/><b>OpenCode Zen</b><br/><sub>DeepSeek V4, Nemotron 3<br/>Walang limitasyon sa token</sub></td>
<td align="center" width="150"><img src="./public/providers/cli-generic.svg" width="42" alt="Kilo Code"/><br/><b>Kilo Code</b><br/><sub>Awtomatikong router, Tencent Hy3<br/>Libre magpakailanman</sub></td>
<td align="center" width="150"><img src="./public/providers/requesty.svg" width="42" alt="Requesty"/><br/><b>Requesty</b><br/><sub>GPT-OSS 120B, Nemotron<br/>Libre magpakailanman</sub></td>
<td align="center" width="150"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/siliconcloud-color.svg" width="42" alt="SiliconFlow"/><br/><b>SiliconFlow</b><br/><sub>DeepSeek V3.2 / R1<br/>Libreng antas</sub></td>
<td align="center" width="150"><img src="./public/providers/zhipu.svg" width="42" alt="Z.AI GLM"/><br/><b>Z.AI GLM</b><br/><sub>GLM-4.7 / 4.5-Flash<br/>Libre magpakailanman</sub></td>
<td align="center" width="150"><img src="./public/providers/baidu.svg" width="42" alt="Baidu ERNIE"/><br/><b>Baidu ERNIE</b><br/><sub>ERNIE 4.0<br/>Libre magpakailanman</sub></td>
</tr>
<tr>
<td align="center" width="150"><img src="https://cdn.jsdelivr.net/npm/@lobehub/icons-static-svg@1.91.0/icons/qoder-color.svg" width="42" alt="Qoder AI"/><br/><b>Qoder AI</b><br/><sub>Qwen3-Max, Kimi-K2<br/>Walang limitasyon at LIBRE</sub></td>
<td align="center" width="150"><img src="./public/providers/pollinations.svg" width="42" alt="Pollinations"/><br/><b>Pollinations</b><br/><sub>GPT, Llama, Claude<br/>Hindi kailangan ng key</sub></td>
<td align="center" width="150"><img src="./public/providers/cloudflare.svg" width="42" alt="Cloudflare AI"/><br/><b>Cloudflare AI</b><br/><sub>50+ modelo<br/>10K neuron/araw</sub></td>
<td align="center" width="150"><img src="./public/providers/nvidia.svg" width="42" alt="NVIDIA NIM"/><br/><b>NVIDIA NIM</b><br/><sub>GLM, MiniMax<br/>~40 RPM nang libre</sub></td>
<td align="center" width="150"><img src="./public/providers/cerebras.svg" width="42" alt="Cerebras"/><br/><b>Cerebras</b><br/><sub>GLM 4.7, GPT-OSS<br/>1M token/araw</sub></td>
<td align="center" width="150"><img src="./public/providers/openrouter.svg" width="42" alt="OpenRouter"/><br/><b>OpenRouter</b><br/><sub>mga modelong :free<br/>+$10 → mas mataas na RPM</sub></td>
</tr>
</table>
📖 Buong katalogong nababasa ng makina → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
<br/>
</div>
<div align="center">
## 🖥️ Saan Gumagana ang OmniRoute — Kahit Saan
</div>
> Parehong app, sarili mong makina, sarili mong mga tuntunin. Mula sa global na pag-install gamit ang npm hanggang sa **iyong telepono** sa pamamagitan ng Termux.
<table>
<tr><th align="left">Platform</th><th align="left">Pag-install</th><th align="left">Mga Tampok</th></tr>
<tr><td align="left" nowrap>📦 <b>npm (global)</b></td><td align="left" nowrap><code>npm install -g omniroute</code></td><td align="left">Isang command, anumang OS</td></tr>
<tr><td align="left" nowrap>🐳 <b>Docker</b></td><td align="left" nowrap><code>docker run … diegosouzapw/omniroute</code></td><td align="left">Multi-arch na <b>AMD64 + ARM64</b></td></tr>
<tr><td align="left" nowrap>🖥️ <b>Desktop (Electron)</b></td><td align="left" nowrap><code>npm run electron:build</code></td><td align="left">Native na window + system tray — <b>Windows / macOS / Linux</b></td></tr>
<tr><td align="left" nowrap>🎩 <b>Menu-bar (OmniRouteTray)</b></td><td align="left" nowrap><code>brew install --cask zoispag/tap/omniroute-tray</code></td><td align="left">Sinusubaybayan at awtomatikong ina-update ang server — <b>macOS</b></td></tr>
<tr><td align="left" nowrap>💪 <b>ARM</b></td><td align="left" nowrap>native na <code>arm64</code></td><td align="left">Raspberry Pi, mga ARM server, Apple Silicon</td></tr>
<tr><td align="left" nowrap>📱 <b>Android (Termux)</b></td><td align="left" nowrap><code>pkg install nodejs && npx -y omniroute</code></td><td align="left">Gumagana <b>sa iyong telepono</b>, 24/7, walang root</td></tr>
<tr><td align="left" nowrap>📲 <b>PWA</b></td><td align="left" nowrap>"Idagdag sa Home Screen"</td><td align="left">Fullscreen, offline, maaaring i-install mula sa browser</td></tr>
<tr><td align="left" nowrap>🧩 <b>OpenCode plugin</b></td><td align="left" nowrap><code>@omniroute/opencode-provider</code></td><td align="left">Native na integrasyon sa OpenCode</td></tr>
<tr><td align="left" nowrap>🤖 <b>VS Code Copilot Chat</b></td><td align="left" nowrap>i-install ang <b>OmniCopilot</b> extension</td><td align="left">Lahat ng modelo ng OmniRoute sa native na Copilot Chat picker — stable at Insiders</td></tr>
<tr><td align="left" nowrap>🛠️ <b>Mula sa source</b></td><td align="left" nowrap><code>npm install && npm run dev</code></td><td align="left">Baguhin ito, mag-ambag</td></tr>
</table>
<sub>📖 [Gabay sa Docker](docs/guides/DOCKER_GUIDE.md) · [Desktop](electron/README.md) · [Menu-bar tray](https://github.com/zoispag/omniroute-tray) · [Termux](docs/guides/TERMUX_GUIDE.md) · [PWA](docs/guides/PWA_GUIDE.md) · [OpenCode](docs/frameworks/OPENCODE.md)</sub>
<br/>
<div align="center">
### 🧩 Bago: OmniRoute sa loob ng native na Copilot Chat ng VS Code
</div>
> Walang bagong sidebar, walang bagong chat UI — bawat modelong inihahatid ng OmniRoute ay lalabas mismo sa
> **Copilot Chat model picker na ginagamit mo na**. Mula sa VS Code 1.122, gumagana ang mga provider model
> nang hindi kailangang mag-sign in sa GitHub o magkaroon ng Copilot subscription — agent mode, tool calling, at vision,
> nang libre.
I-install ang **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)** extension, ituro ito
sa iyong OmniRoute server (default ang `localhost:20128`), pagkatapos ay buksan ang Copilot Chat → model picker
**Pamahalaan ang Mga Modelo…****OmniRoute**.
<table>
<tr><th align="left">Store</th><th align="left">Link</th><th align="left">Gumagana sa</th></tr>
<tr><td align="left" nowrap>🧩 <b>VS Code Marketplace</b></td><td align="left"><a href="https://marketplace.visualstudio.com/items?itemName=diegosouzapw.omnicopilot">I-install →</a></td><td align="left">VS Code — stable at Insiders</td></tr>
<tr><td align="left" nowrap>🔓 <b>Open VSX Registry</b></td><td align="left"><a href="https://open-vsx.org/extension/diegosouzapw/omnicopilot">I-install →</a></td><td align="left">Cursor, Windsurf, VSCodium, Theia, code-server, Gitpod, Antigravity, Kiro…</td></tr>
</table>
Mula sa loob ng editor: buksan ang **Extensions** view, hanapin ang **"OmniRoute"**, at i-click ang **Install**
— pareho ang paraan ng paggana sa dalawang store. Matatagpuan ang source, mga issue, at runbook sa pag-publish sa
[diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot).
<sub>📖 [Gabay sa VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — pag-setup, kung ano ang ipinapakita ng picker, dashboard-sa-isang-tab, pag-troubleshoot</sub>
<br/>
<div align="center">
### 🎩 Bago: OmniRouteTray — ang iyong gateway na nasa menu bar
</div>
> Pinakamahusay na gumagana ang `omniroute serve` kapag palagi itong naka-on. Ginagawang set-and-forget na menu-bar app para sa macOS ng **[OmniRouteTray](https://github.com/zoispag/omniroute-tray)**
> ang setup na iyon: sinisimulan nito ang server, pinananatili itong gumagana
> sa bawat pag-reboot, ina-update ito nang hindi inililipat, at inilalagay ang iyong kasalukuyang token budget isang click lang ang layo — **walang
> terminal window na kailangang manatiling bukas, walang `npm install -g omniroute` na kailangang bantayan.**
Binuo gamit ang [Tauri v2](https://v2.tauri.app/) (isang Rust core na napakaliit), kasama rito
ang sarili nitong signed na Node 24 runtime at pinamamahalaan nito ang pag-install ng OmniRoute na pag-aari ng app, kaya hindi ito kailanman sumasalungat sa iyong
global na `node`/`bun`. **Ibinabahagi nito ang kasalukuyan mong `~/.omniroute/` config at database** — kaya ito rin ang
OmniRoute na ginagamit mo na, ngunit may suot lamang na sombrero. 🎩
<table>
<tr><th align="left">Ano ang ginagawa nito</th><th align="left">Paano</th></tr>
<tr><td align="left" nowrap>🟢 <b>Sinusubaybayan ang server</b></td><td align="left">Inilulunsad ang <code>omniroute serve</code> at ginagamit ang tumatakbo nang instance sa halip na gumawa ng duplicate nito</td></tr>
<tr><td align="left" nowrap>📊 <b>Aktuwal na paggamit sa isang tingin</b></td><td align="left">Mga quota bar ng provider, mga limitasyon ng Claude session/lingguhan na may countdown bago mag-reset, at 30-araw na breakdown ng gastos</td></tr>
<tr><td align="left" nowrap>🔄 <b>Awtomatikong nag-a-update nang hindi inililipat</b></td><td align="left">Staged na pag-install, atomic swap, rollback kapag nabigo — palaging nasa pinakabagong release</td></tr>
<tr><td align="left" nowrap>🚀 <b>Simulan sa pag-login</b></td><td align="left">Opsyonal na paglunsad sa pag-login; tray lamang, walang dock icon</td></tr>
<tr><td align="left" nowrap>🩺 <b>Doctor at mga log</b></td><td align="left">Isang-click na diagnostics at access sa mga server log</td></tr>
</table>
```sh
brew install --cask zoispag/tap/omniroute-tray
```
<sub>Mas gusto mong mag-download? Kunin ang pinakabagong <code>.dmg</code> mula sa
<a href="https://github.com/zoispag/omniroute-tray/releases">Mga Release</a>. Ang source, mga issue, at dokumentasyon sa build ay
makikita sa <a href="https://github.com/zoispag/omniroute-tray">zoispag/omniroute-tray</a>.
<br/>💛 Isang proyektong pangkomunidad ni <a href="https://github.com/zoispag">@zoispag</a> — hindi isang opisyal na release ng OmniRoute.</sub>
<br/>
<div align="center">
## 🔒 Pribado at Lokal Muna
</div>
<img src="./docs/diagrams/privacy-local.svg" width="100%" alt="Pribado at lokal muna — tumatakbo sa iyong makina ang gateway at control plane ng OmniRoute. Ipinapadala ang mga prompt sa upstream provider na pinili para sa bawat kahilingan; hindi nagdaragdag ang OmniRoute ng hosted na hakbang sa pagproseso ng prompt at naka-disable ang telemetry bilang default. Naka-encrypt ang mga credential habang nakaimbak gamit ang AES-256-GCM; kabilang sa mga kontrol ang pagsasaklaw ng API key, pag-filter ng IP, mga limitasyon sa rate, mga pananggalang laban sa prompt injection, paglilinis ng mga upstream header, opsyonal na pag-redact ng PII, mga nilinis na error, at lokal na SQLite audit trail. Lisensyado sa ilalim ng MIT at maaaring i-self-host ang OmniRoute."/>
<sub>📖 [Awtorisasyon](docs/architecture/AUTHZ_GUIDE.md) · [Mga Pananggalang](docs/security/GUARDRAILS.md) · [Pagsunod](docs/security/COMPLIANCE.md)</sub>
<br/>
<div align="center">
## 🔌 Kumpletong CLI + A2A at MCP
</div>
> Bukod sa server, ang OmniRoute ay isang **kumpletong command-line cockpit** na may **80+ command**, kasama ang mga bukas na protocol para sa agent upang mapatakbo ito ng isang AI agent **nang mag-isa**.
### ⌨️ Isang tunay na CLI (hindi lang `start`)
```bash
omniroute # ihatid ang gateway + dashboard (port 20128)
omniroute chat # interaktibong TUI chat client (slash: /model /combo /skill /memory)
omniroute setup # may-gabay na wizard para sa unang pagpapatakbo
omniroute doctor # suriin ang mga provider, port, at native dependency
```
### 🛰️ Remote mode — patakbuhin ang CLI dito, at ang OmniRoute sa isang VPS
Nasa server ang OmniRoute? Kontrolin ito mula sa iyong laptop gamit ang **parehong CLI**. Mag-log in nang isang beses
gamit ang isang access token na may saklaw; pagkatapos nito, ang bawat command ay nakatuon na sa remote.
```bash
omniroute connect 192.168.0.15 # password → token na may saklaw, sine-save bilang isang context
omniroute models list # ← tumatakbo laban sa REMOTE server
omniroute configure codex # ← pumipili ng remote na model, nagsusulat ng lokal na Codex profile
omniroute tokens create --name ci --scope read # gumawa ng mga token na mas makitid ang saklaw para sa ibang makina
omniroute contexts use default # ← bumalik sa lokal na server
```
Ang mga token ay may saklaw na `read` / `write` / `admin`; nananatiling loopback-only ang mga route na nagpapasimula ng proseso.
<sub>📖 [Remote Mode](docs/guides/REMOTE-MODE.md)</sub>
<div align="left">
<img src="./docs/diagrams/cli-terminal.svg" width="50%" alt="Animated na terminal na nagde-demo ng OmniRoute CLI — omniroute providers list, omniroute combo list, at omniroute health — na umiikot sa 86-command na top-level na surface: 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 …"/>
</div>
### 🤝 Ikonekta ang isang agent — at kokontrolin nito ang OmniRoute mismo
Ilantad ang OmniRoute sa pamamagitan ng **MCP**, **A2A**, isang **REST API**, **mga webhook**, o isang **remote CLI** — makukuha ng anumang may-kakayahang agent (o ng sarili mong code) ang mga susi sa buong gateway: routing, mga provider, combo, cache, compression, memory — nang awtonomo. Inihahatid ang mga HTTP endpoint sa ibaba sa ilalim ng `http://localhost:20128`.
<table>
<tr><th align="left">Interface</th><th align="left">Endpoint / command</th><th align="left">Gamitin ito para sa</th></tr>
<tr><td align="left" nowrap>🧰 <b>MCP (stdio)</b></td><td align="left" nowrap><code>omniroute --mcp</code></td><td align="left">Ikonekta sa Claude Desktop, Cursor, o anumang MCP client</td></tr>
<tr><td align="left" nowrap>🌊 <b>MCP (HTTP)</b></td><td align="left" nowrap><code>/api/mcp/stream</code></td><td align="left">Remote MCP — <b>110 tool</b>, 33 saklaw (opsyonal ang pagpapatupad), kumpletong audit trail</td></tr>
<tr><td align="left" nowrap>📡 <b>MCP (SSE)</b></td><td align="left" nowrap><code>/api/mcp/sse</code></td><td align="left">Streaming na MCP transport</td></tr>
<tr><td align="left" nowrap>🤝 <b>A2A</b></td><td align="left" nowrap><code>/.well-known/agent.json</code></td><td align="left">Agent-to-agent, <b>JSON-RPC 2.0</b> + SSE, 6 na skill</td></tr>
<tr><td align="left" nowrap>🌐 <b>REST API</b></td><td align="left" nowrap><code>/v1/*</code></td><td align="left">Compatible sa OpenAI — chat, embedding, larawan, audio, OCR</td></tr>
<tr><td align="left" nowrap>🔔 <b>Mga Webhook</b></td><td align="left" nowrap><code>/api/webhooks</code></td><td align="left">I-push ang mga event ng kahilingan / quota sa Slack, Discord, Telegram, o anumang URL</td></tr>
<tr><td align="left" nowrap>🛰️ <b>Remote CLI</b></td><td align="left" nowrap><code>omniroute connect <host></code></td><td align="left">Kontrolin ang isang remote instance gamit ang mga access token na may saklaw</td></tr>
</table>
```bash
# Ibigay sa Claude Code ang kumpletong toolset ng OmniRoute sa pamamagitan ng MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
<sub>📖 [MCP Server](docs/frameworks/MCP-SERVER.md) · [A2A Server](docs/frameworks/A2A-SERVER.md) · [Mga Protocol ng Agent](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)</sub>
<br/>
<div align="center">
## 🗜️ Makatipid ng 1595% na Token — Awtomatiko
</div>
### 📖 Paano ito gumagana — pipeline, arkitektura at pagkukuwenta ng matitipid
<img src="./docs/diagrams/compression-pipeline.svg" width="100%" alt="Pipeline ng compression ng OmniRoute: isang paglalarawang kahilingan ng client na may 10,000 token ang dumaraan sa 12 composable engine — Session-Dedup, CCR, Lite, RTK, Responses Tool Output, Headroom, Relevance, Caveman, Aggressive, LLMLingua-2, Ultra at OmniGlyph — at maaaring makarating sa provider nang may humigit-kumulang 1,080 token sa nakadokumentong stacked na halimbawa. Pinoprotektahan ang structured content ng mga preservation guard at fidelity gate sa bawat hakbang; maaaring baguhin ng tahasang lossy o experimental na mode ang kwalipikadong content."/>
Pinapatakbo ng default na stacked combo ang `RTK → Caveman`. Kapag parehong inilapat ang mga ito sa iisang tool/context payload, naiipon ang matitipid:
```txt
combined = 1 (1 RTK) × (1 Caveman_input)
average = 1 (1 0.80) × (1 0.46) = 89.2%
range = 78.4 94.6%
```
Ang mga code block, URL, JSON at structured data ay **palaging pinoprotektahan** ng preservation engine.
> **Bakit gagamit ng maraming token kung sapat na ang kaunti?** Ang bawat kahilingan ay dumaraan sa compression pipeline ng OmniRoute nang **transparent** — walang kailangang baguhin sa client. Isa na itong **stack ng 12 composable engine** na tumatakbo nang sunod-sunod at maaaring paghalu-haluin para sa bawat routing combo — batay sa mga ideya mula sa [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua), at [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
### 🧱 Ang stack ng 12 engine
Tumatakbo ang mga engine ayon sa pagkakasunod-sunod ng pipeline; maaaring i-toggle at i-configure nang hiwalay ang bawat isa para sa bawat combo:
<table>
<tr><th align="center">#</th><th align="left">Engine</th><th align="left">Ano ang ginagawa nito</th></tr>
<tr><td align="center" nowrap>1</td><td align="left" nowrap><b>Session-Dedup</b></td><td align="left">Inaalis ang content na nauulit sa magkakasunod na turn (content-addressed, cross-turn)</td></tr>
<tr><td align="center" nowrap>2</td><td align="left" nowrap><b>CCR</b></td><td align="left">Ina-archive ang malalaking block sa likod ng mga retrieve marker, na kinukuha kapag kinakailangan</td></tr>
<tr><td align="center" nowrap>3</td><td align="left" nowrap><b>Lite</b></td><td align="left">Pagbabawas ng whitespace + image URL (magaan sa latency na baseline)</td></tr>
<tr><td align="center" nowrap>4</td><td align="left" nowrap><b>RTK</b></td><td align="left">Matalinong pag-filter, dedup at truncation ng mga resulta ng tool (command-aware)</td></tr>
<tr><td align="center" nowrap>5</td><td align="left" nowrap><b>Responses Tool Output</b></td><td align="left">Lossless-first na JSON + limitadong diagnostic compression para sa mga output ng shell/patch/search/build (Responses API)</td></tr>
<tr><td align="center" nowrap>6</td><td align="left" nowrap><b>Headroom</b></td><td align="left">Lossless na tabular compaction ng mga JSON array (~30%) sa pamamagitan ng bundled na <b>GCF</b> codec</td></tr>
<tr><td align="center" nowrap>7</td><td align="left" nowrap><b>Relevance</b></td><td align="left">Extractive na pagmamarka ng mga pangungusap batay sa huling query ng user</td></tr>
<tr><td align="center" nowrap>8</td><td align="left" nowrap><b>Caveman</b></td><td align="left">Rule-based na compression ng prosa (~6575% sa output)</td></tr>
<tr><td align="center" nowrap>9</td><td align="left" nowrap><b>Aggressive</b></td><td align="left">Pagbubuod + progresibong pag-age ng mga lumang turn</td></tr>
<tr><td align="center" nowrap>10</td><td align="left" nowrap><b>LLMLingua-2</b></td><td align="left">ML semantic pruning sa pamamagitan ng MobileBERT ONNX — ligtas para sa code, async</td></tr>
<tr><td align="center" nowrap>11</td><td align="left" nowrap><b>Ultra</b></td><td align="left">Heuristic na token pruning na may opsyonal na small-model (SLM) tier</td></tr>
<tr><td align="center" nowrap>12</td><td align="left" nowrap><b>OmniGlyph</b></td><td align="left">Eksperimental na context-as-image encoding para sa nasukat na Claude Fable 5 sa direktang Anthropic wire; nananatiling fail-closed ang mga GPT 5.6 transformer habang hinihintay ang mga receipt ng provider. Apat na compression profile (aggressive na default, balanced, coding-safe, passthrough) (pinaka-aggressive; opt-in)</td></tr>
</table>
Ang mga code block, URL at structured data ay **palaging pinapanatili** nang byte-perfect. Pinagsasama ng mga **one-click preset** ang mga engine:
<table>
<tr><th align="left">Mode</th><th align="left">Matitipid</th><th align="left">Pinakamainam para sa</th></tr>
<tr><td align="left" nowrap>🪶 <b>Lite</b></td><td align="left" nowrap>~15%</td><td align="left">Laging naka-on at ligtas na default</td></tr>
<tr><td align="left" nowrap>🪨 <b>Standard (Caveman)</b></td><td align="left" nowrap>~30%</td><td align="left">Pang-araw-araw na coding</td></tr>
<tr><td align="left" nowrap>⚡ <b>Aggressive</b></td><td align="left" nowrap>~50%</td><td align="left">Mahahabang session na maraming paggamit ng tool</td></tr>
<tr><td align="left" nowrap>🔥 <b>Ultra</b></td><td align="left" nowrap>~75%</td><td align="left">Pinakamalaking matitipid</td></tr>
<tr><td align="left" nowrap>🧰 <b>RTK</b></td><td align="left" nowrap>6090%</td><td align="left">Output ng shell/test/build/git</td></tr>
<tr><td align="left" nowrap>🔗 <b>Stacked (RTK → Caveman)</b></td><td align="left" nowrap><b>7895%</b></td><td align="left">Pinagsamang mga prompt + log ng tool</td></tr>
</table>
**Tunay na halimbawa — Standard mode:**
> **Bago (69 token):** _"Ang malamang na dahilan kung bakit muling nagre-render ang iyong React component ay dahil gumagawa ka ng bagong object reference sa bawat render cycle. Kapag nagpasa ka ng inline object bilang prop, itinuturing ito ng shallow comparison ng React bilang ibang object sa bawat pagkakataon, kaya nagti-trigger ito ng re-render. Inirerekomenda kong gamitin ang useMemo upang i-memoize ang object."_
>
> **Pagkatapos (19 token):** _"Bagong object ref sa bawat render. Inline object prop = bagong ref = re-render. I-wrap sa useMemo."_
>
> **Parehong sagot. 72% mas kaunting token. Walang nabawas sa katumpakan.** ✅
**Halimbawa sa PT-BR — [Troglodita](https://github.com/leninejunior/troglodita) mode:**
> **Bago (42 token):** _"Ang problema ay muling nagre-render ang component dahil gumagawa ng bagong object reference sa bawat render cycle. Iminumungkahi kong gamitin ang useMemo."_
>
> **Pagkatapos (12 token):** _"Muling pag-render: bagong ref bawat cycle (muling ginagawa ang inline object). Gamitin ang `useMemo`."_
>
> **Parehong sagot. ~70% mas kaunting token. Buo ang teknikal na katumpakan.** ✅
<br/>
### 🎚️ Higit pa sa mga engine — mga istilo ng output, ang adaptive dial, at kontrol sa bawat request
Pinapaliit ng 12 engine sa itaas ang pumapasok. Tatlo pang layer ang humuhubog sa **paano**, **kailan**, at kung ano ang **lumalabas**:
- **🪄 Mga Istilo ng Output** _(pagkontrol sa output axis)_ — nag-i-inject ng mga deterministiko at cache-safe na tagubilin para hubugin ang tugon; maaaring pagsama-samahin, bawat isa ay may `lite` / `full` / `ultra` na intensity. Isang linyang registry entry lang ang kailangan upang magdagdag ng istilo:
- **Maikling prosa** — alisin ang paligoy-ligoy / mga pantukoy / pag-aatubili; panatilihing eksakto ang teknikal na nilalaman.
- **Mas kaunting code** — "tamad na senior dev" na YAGNI: pinakamaliit na gumaganang pagbabago, walang hindi hiniling na scaffolding.
- **Ponytail (tamad na senior dev)** — umakyat sa YAGNI ladder, ayusin ang ugat ng problema, pinakamaliit na gumaganang diff.
- **May ADHD ako (aksyon muna)** — unahin ang susunod na aksyon, lagyan ng numero ang mga hakbang, isang konkretong susunod na hakbang, walang pambungad.
- **Maikling CJK (文言)** — napakaikling istilo ng klasikong Chinese (nililimitahan ayon sa locale na `zh`).
- **🎯 Adaptive na context budget** _(ang dial)_ — sa halip na iisang on/off na threshold ng token, pataasin lamang ang paggamit sa pinakamura at pinakakaunting-loss na mga engine hanggang sa kinakailangang antas upang **magkasya sa context window ng modelo**. Patakaran: `reserve-output` (default, isinasaalang-alang ang modelo) · `percentage` · `absolute`. Mode: `floor` (ginagarantiyang magkakasya) · `replace-autotrigger` (nangingibabaw ang tahasan mong pinili) · `off` (lumang threshold).
- **🎛️ Kung saan pinagpapasyahan ang compression** _(pagkakasunod ng priyoridad, mataas → mababa)_ — per-request na `x-omniroute-compression` header override ng routing combo aktibong pinangalanang profile adaptive / auto-trigger default ng panel off. Ibinabalik ang inilapat na plano sa `X-OmniRoute-Compression: <mode>; source=<source>` response header.
Mag-auto-trigger ayon sa threshold ng token, i-on ang adaptive dial, i-pin ang isang pinangalanang profile, magtakda ng minsanang opsyon sa bawat request, o magtalaga ng pipeline sa bawat routing combo — alinman ang akma sa workload. Sinusukat ng opt-in at offline na **eval harness** (`npm run eval:compression`) ang fidelity kumpara sa matitipid gamit ang naka-pin na corpus bago mo i-promote ang pagbabago.
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
<br/>
<div align="center">
# ⚡ Mabilisang Pagsisimula
</div>
**1) I-install at patakbuhin**
```bash
npm install -g omniroute
omniroute
```
> 💡 Nakikita ang `npm warn ERESOLVE` o mga babala sa peer dependency? [Hindi nakapipinsala ang mga iyon](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).
Dashboard sa `http://localhost:20128` · API sa `http://localhost:20128/v1`.
**2) Kumonekta sa isang LIBRENG provider (walang signup)**
Dashboard → **Mga Provider** → ikonekta ang **Kiro AI** (libreng Claude, ~50 credit/buwan bawat account) o **OpenCode Free** (walang auth) → tapos na.
**3) Ituro rito ang iyong coding tool**
```txt
Base URL: http://localhost:20128/v1
API Key: [kopyahin mula sa Dashboard → Endpoints]
Model: auto (matalinong routing na walang configuration — o anumang provider/model)
```
**4) Tiyaking gumagana ito**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
Dapat mong makita sa listahan ang mga nakakonekta mong modelo. 🎉 Iyon lang — magsimula nang mag-code, at awtomatikong magru-route at magfa-fallback ang OmniRoute para sa iyo.
Kung hindi makapagpadala ng mga custom header ang iyong client, nagbibigay din ang OmniRoute ng mga tokenized compatibility alias:
```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
```
Gamitin lamang ang mga ito para sa mga client na hindi makapag-attach ng `Authorization: Bearer ...`. Ang header auth pa rin ang mas mainam na mode.
<br/>
## 📦 Higit pang paraan ng pag-install — Docker, source, 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
```
Sinusundan ng `:latest` ang pinakamataas na **na-publish** na stable na SemVer. Hindi nito sinusubaybayan ang git `main`. I-pin ang `:X.Y.Z` para sa GitOps. Tingnan ang [Mga Channel ng Release ng Docker](docs/guides/DOCKER_GUIDE.md#release-channels). Naka-pin sa image ang **`OMNIROUTE_MEMORY_MB=1024`**. Sapat iyon para sa dashboard at magaan na chat. Nangangailangan ang mga **coding agent** (`POST /v1/responses` mula sa Claude Code, Codex, Grok, …) ng mas malaking V8 heap, kung hindi ay magkakaroon ng `FATAL ERROR` ang proseso sa ~12GiB kapag may dalawang magkapatong na mahabang context. Maglaan sa container ng higit sa laki ng heap (nasa labas ng V8 ang mga native buffer):
| Workload | Heap (`-e OMNIROUTE_MEMORY_MB`) | Container (`--memory`) |
| ------------------------------------------ | ------------------------------- | ---------------------- |
| Dashboard / magaan na chat | `1024` (default ng image) | ≥2g |
| Isang coding agent | `8192` | ≥10g |
| Dalawang sabay na mahabang `/v1/responses` | `10240``12288` | ≥1216g |
```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
```
Buong talahanayan: [Gabay sa Docker — runtime RAM](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents).
> **Pre-release na channel ng Docker:** Sinusundan ng `diegosouzapw/omniroute:next` at
> `diegosouzapw/omniroute:next-web` ang kasalukuyang default na branch na `release/v*`.
> Ang mga nababagong tag na ito ay inilaan lamang para sa pagsubok ng mga hindi pa
> nailalabas na pag-aayos at **hindi sinusuportahan para sa production**. Tingnan ang
> [Mga Channel ng Release ng Docker](docs/guides/DOCKER_GUIDE.md#release-channels).
**🥟 Bun**
Sinusuportahan ang karaniwang `bun install` at global na pag-install (`bun install -g omniroute`) sa pamamagitan ng pagtukoy sa Bun runtime:
- **Built-in na `bun:sqlite`**: Ginagamit ng OmniRoute ang built-in na `bun:sqlite` driver ng Bun kapag tumatakbo sa Bun, at bumabalik sa `better-sqlite3` sa Node.js o `sql.js`.
- **Awtomatikong pagpili ng Webpack bundler sa dev**: Awtomatikong tinutukoy ng development (`bun run dev`) ang Bun at dini-disable ang Turbopack pabor sa Webpack upang maiwasan ang mga incompatibility sa native V8 binding. Eksaktong sinusunod ng mga production build (`bun run build`) ang `OMNIROUTE_USE_TURBOPACK` gaya sa Node: Turbopack bilang default, `OMNIROUTE_USE_TURBOPACK=0` upang mag-build gamit ang Webpack (inilalantad ito ng `Dockerfile.bun` bilang `--build-arg`).
- **Nakalaang Bun Dockerfile**: Multi-stage na `Dockerfile.bun` para sa mga native na Bun production deployment (`docker build -f Dockerfile.bun -t omniroute:bun .`).
```bash
# Mag-install at patakbuhin gamit ang Bun
bun install
bun run dev
```
**🛠️ Mula sa source**
```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
# Gamit ang mga Nix flake
nix develop
npm run dev
# O gamit ang devbox
devbox run npm run dev
```
📖 [Gabay sa Docker](docs/guides/DOCKER_GUIDE.md) — Mga Compose profile, Caddy HTTPS, mga Cloudflare tunnel.
**🦭 Podman**
```bash
# 1. Ihanda ang bind-mounted na data directory
mkdir -p data
# 2. Para lamang sa Linux + lokal na rootless Podman (huwag kailanman sa remote na Podman Machine client):
podman unshare chown 1000:1000 ./data
# 3. Itakda ang runtime hint, buuin ang lokal na Compose image, at simulan
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build
```
Sa macOS o Windows, gumagamit ang Podman ng remote na Podman Machine: laktawan ang `podman unshare` at
sundin ang [gabay sa data directory na partikular sa topology](contrib/podman/README.md#data-directory-permissions-by-topology).
📖 [Gabay sa Podman](contrib/podman/README.md) — Mga Compose build, Podman Machine, at
pag-setup ng Linux/systemd Quadlet.
**⚡ Mas mabilis / mas magaan na pag-install (laktawan ang native build)**
Ang native na SQLite engine (`better-sqlite3`) ay isang **opsyonal** na dependency, kaya ang global na
pag-install ay hindi kailanman mahahadlangan ng pag-compile mula sa source: gumagamit ito ng prebuilt binary kapag may tumutugma
sa iyong platform/Node, at kung wala ay awtomatikong bumabalik sa isang pure-JS engine
(`node:sqlite` sa Node 22+, o kung hindi ay ang kasamang `sql.js` WASM) — walang kinakailangang build tool.
Upang ganap na laktawan ang native warm-up pagkatapos ng pag-install (CI, headless, o mababagal na machine):
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # Nilalaktawan din ito ng CI=1
```
Para sa pinakamabilis na pag-install, piliin ang **pnpm** (content-addressed store + mga hard link — tingnan sa itaas).
Para sa headless runtime na walang dashboard, gamitin ang Docker `base` profile (sa itaas) o ang
[gabay sa Termux](docs/guides/TERMUX_GUIDE.md). Inihahatid ng iisang proseso sa iisang port ang CLI at web dashboard,
kaya walang hiwalay na CLI-only package sa kasalukuyan.
<br/>
<div align="center">
# 🎬 Aktuwal na Paggamit sa OmniRoute
</div>
## 📹 Mga Gabay sa Video
<div align="center">
<sub>Snapshot ng dashboard noong 2026-08-24 · Hilaw na katalogo: YT 809 | TT 137 | IG 124 · Pagiging bago (mga araw): YT 1 | TT 21 | IG 22</sub>
<table>
<tr>
<td align="center" width="320">
<a href="https://www.instagram.com/reel/Da8ZthUPK98/">
<img src="https://placehold.co/320x180/111827/FFFFFF?text=Instagram+Reel+%7C+nick_saraev&font=montserrat&bold=true" alt="Instagram Reel" width="300"/>
</a><br/>
<b>🎬 #1 — Instagram</b><br/>
<sub>nick_saraev — 3,042,474 panonood</sub>
</td>
<td align="center" width="320">
<a href="https://www.instagram.com/reel/DaSs65mMrHk/">
<img src="https://placehold.co/320x180/111827/FFFFFF?text=Instagram+Reel+%7C+theopenstack&font=montserrat&bold=true" alt="Instagram Reel — theopenstack" width="300"/>
</a><br/>
<b>🎬 #2 — Instagram</b><br/>
<sub>theopenstack — 692,419 panonood</sub>
</td>
<td align="center" width="320">
<a href="https://www.tiktok.com/@milesreevesai/video/7667980059189366019">
<img src="https://placehold.co/320x180/111827/FFFFFF?text=TikTok+%7C+milesreevesai&font=montserrat&bold=true" alt="TikTok — milesreevesai" width="300"/>
</a><br/>
<b>🎬 #3 — TikTok</b><br/>
<sub>milesreevesai — 620,400 panonood</sub>
</td>
<td align="center" width="320">
<a href="https://www.youtube.com/watch?v=QucgvbO5gsM">
<img src="https://img.youtube.com/vi/QucgvbO5gsM/maxresdefault.jpg" alt="YouTube — Vaibhav Sisinty" width="300"/>
</a><br/>
<b>🎬 #4 — YouTube</b><br/>
<sub>Vaibhav Sisinty — 391,109 panonood</sub>
</td>
<td align="center" width="320">
<a href="https://www.instagram.com/reel/DbIt9AjK7-U/">
<img src="https://placehold.co/320x180/111827/FFFFFF?text=Instagram+Reel+%7C+buildwithai.club&font=montserrat&bold=true" alt="Instagram Reel — buildwithai.club" width="300"/>
</a><br/>
<b>🎬 #5 — Instagram</b><br/>
<sub>buildwithai.club — 347,652 panonood</sub>
</td>
</tr>
</table>
</div>
**Kumpletong ranggo (mga na-deduplicate na canonical URL, `v > 0`, pinakamalawak na abot):**
| #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** |
Mga canonical na sukatan noong 2026-08-24: **1.029 natatanging video** · **11.132.922 kilalang panonood** (`v > 0`) · **639 channel/profile ayon sa network**. Naglalaman ang hilaw na dashboard ng 1.070 row; 41 duplicate mula sa Instagram ang ginawang normal ayon sa canonical URL, habang pinananatili ang pinakamataas na bilang sa bawat video.
> 🎬 **Gumawa ka ba ng video tungkol sa OmniRoute?** Magbukas ng [issue](https://github.com/diegosouzapw/OmniRoute/issues/new) o [discussion](https://github.com/diegosouzapw/OmniRoute/discussions) kasama ang link — itatampok namin ito rito.
<br/>
<div align="center">
# 📧 Komunidad at Tulong
> Lahat ay nasa iisang lugar — sundan ang maintainer, makipag-chat sa komunidad, o magbukas ng issue.
| Channel | Saan / paano |
| ------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------- |
| 💼 **LinkedIn** — sundan ang maintainer | [linkedin.com/in/diegosouzapw](https://www.linkedin.com/in/diegosouzapw/) |
| 🐙 **GitHub** — sundan para sa mga release at tip | [@diegosouzapw](https://github.com/diegosouzapw) |
| 💬 **Discord** | [discord.gg/U47eFqAXCn](https://discord.gg/U47eFqAXCn) |
| ✈️ **Telegram** | [t.me/omnirouteOficial](https://t.me/omnirouteOficial) |
| 🟢 **WhatsApp — 🌍 Pandaigdigan** | [sumali sa grupo](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) |
| 🟢 **WhatsApp — 🇧🇷 Brazil** | [sumali sa grupo](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) |
| 🌍 **Website** | [omniroute.online](https://omniroute.online) |
| 🌍 **🌍Komunidad ng StHub OmniRoute (libre)** | [portal ng StHub](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK) |
| 📦 **Source code** | [github.com/diegosouzapw/OmniRoute](https://github.com/diegosouzapw/OmniRoute) |
| 🐛 **Mag-ulat ng bug** | [magbukas ng issue](https://github.com/diegosouzapw/OmniRoute/issues) — ilakip ang output ng `npm run system-info` |
| 🤝 **Mag-ambag** | [CONTRIBUTING.md](CONTRIBUTING.md) · [Modelo ng Branching at Release](docs/ops/BRANCHING_MODEL.md) · pumili ng `good first issue` |
| 💚 **Suportahan ang proyekto** | [Mga paraan para sumuporta ↑](#-support-omniroute) · [GitHub Sponsors](https://github.com/sponsors/diegosouzapw) |
</div>
---
<br/>
<div align="center">
## 🛠️ Stack ng Teknolohiya
</div>
<table>
<tr><th align="left">Layer</th><th align="left">Teknolohiya</th></tr>
<tr><td nowrap><b>Runtime</b></td><td>Node.js 22.x / 24.x LTS — <code>&gt;=22.22.2 &lt;23 || &gt;=24.0.0 &lt;27</code></td></tr>
<tr><td nowrap><b>Wika</b></td><td>TypeScript 6.0 — <b>100% TypeScript</b> sa buong <code>src/</code> at <code>open-sse/</code> (walang <code>any</code> sa core mula noong v2.0)</td></tr>
<tr><td nowrap><b>Framework</b></td><td>Next.js 16 + React 19 + Tailwind CSS 4</td></tr>
<tr><td nowrap><b>Database</b></td><td>better-sqlite3 (SQLite, WAL journaling) + LowDB (legacy na JSON) — 122 domain module, 176 migration</td></tr>
<tr><td nowrap><b>Memorya</b></td><td>SQLite FTS5 full-text + int8-quantized vector embedding, typed decay</td></tr>
<tr><td nowrap><b>Mga Schema</b></td><td>Zod 4 — pagpapatunay ng I/O ng MCP tool + mga kontrata ng API</td></tr>
<tr><td nowrap><b>Mga Protocol</b></td><td>MCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE)</td></tr>
<tr><td nowrap><b>Streaming</b></td><td>Server-Sent Events (SSE) + WebSocket bridge (<code>/v1/ws</code>)</td></tr>
<tr><td nowrap><b>Compression</b></td><td>12-engine pipeline — RTK, Caveman, LLMLingua-2 (MobileBERT ONNX), GCF, OmniGlyph</td></tr>
<tr><td nowrap><b>Awtorisasyon at seguridad</b></td><td>OAuth 2.0 (PKCE) + JWT + API Keys + MCP scoped auth · AES-256-GCM para sa nakaimbak na data · DOMPurify</td></tr>
<tr><td nowrap><b>Stealth</b></td><td>wreq-js — pagpapanggap bilang JA3 / JA4 TLS fingerprint, 3-level proxy</td></tr>
<tr><td nowrap><b>Katatagan</b></td><td>Circuit breaker, exponential backoff, anti-thundering-herd, auto-combo self-healing</td></tr>
<tr><td nowrap><b>Pagla-log</b></td><td>pino — mga nakaayos na JSON log na may konteksto ng request</td></tr>
<tr><td nowrap><b>Pagsusuri</b></td><td>Node.js test runner + Vitest — <b>39,000+ static na deklarasyon ng test</b> sa 5,100+ sinusubaybayang test file (unit, integration, E2E, seguridad, ecosystem)</td></tr>
<tr><td nowrap><b>Mga Platform</b></td><td>Desktop (Electron) · Android (Termux) · PWA (anumang browser)</td></tr>
<tr><td nowrap><b>CI/CD</b></td><td>GitHub Actions — awtomatikong pag-publish sa npm + Docker Hub tuwing release</td></tr>
<tr><td nowrap><b>Mga Link</b></td><td><a href="https://omniroute.online">Website</a> · <a href="https://www.npmjs.com/package/omniroute">npm</a> · <a href="https://hub.docker.com/r/diegosouzapw/omniroute">Docker Hub</a></td></tr>
</table>
<div align="center">
<br/>
## 📖 Dokumentasyon
</div>
### 📘 Pagsisimula
<table>
<tr><th align="left">Dokumento</th><th align="left">Paglalarawan</th></tr>
<tr><td nowrap><b><a href="docs/guides/USER_GUIDE.md">Gabay ng Gumagamit</a></b></td><td>Mga provider, combo, integrasyon ng CLI, deployment</td></tr>
<tr><td nowrap><b><a href="docs/guides/SETUP_GUIDE.md">Gabay sa Pag-setup</a></b></td><td>Kumpletong mga paraan ng pag-install, mga config ng CLI tool, pag-setup ng protocol, pag-tune ng timeout</td></tr>
<tr><td nowrap><b><a href="docs/reference/CLI-TOOLS.md">Gabay sa mga CLI Tool</a></b></td><td>Pag-setup para sa bawat tool para sa Claude Code, Codex, Cursor, Cline, OpenClaw, Kilo, Copilot</td></tr>
<tr><td nowrap><b><a href="docs/guides/REMOTE-MODE.md">Remote Mode</a></b></td><td>Kontrolin ang remote na OmniRoute (VPS) mula sa CLI ng iyong laptop sa pamamagitan ng mga access token na may limitadong saklaw</td></tr>
<tr><td nowrap><b><a href="docs/guides/CLAUDE-CODE-CONFIGURATION.md">Config ng Claude Code</a></b></td><td>Ikonekta ang Claude Code sa OmniRoute (lokal/remote) gamit ang <code>launch</code> + mga profile para sa bawat modelo</td></tr>
<tr><td nowrap><b><a href="README.md#-quick-start">Mabilisang Pagsisimula</a></b></td><td>3 hakbang: i-install → ikonekta → i-configure</td></tr>
</table>
### 🔧 Mga Operasyon at Deployment
<table>
<tr><th align="left">Dokumento</th><th align="left">Paglalarawan</th></tr>
<tr><td nowrap><b><a href="docs/guides/DOCKER_GUIDE.md">Gabay sa Docker</a></b></td><td>Docker run, mga profile ng Compose, Caddy HTTPS, mga tunnel, mga tag ng image</td></tr>
<tr><td nowrap><b><a href="contrib/podman/README.md">Gabay sa Podman</a></b></td><td>Integrasyon ng Quadlet systemd, podman-compose, SELinux</td></tr>
<tr><td nowrap><b><a href="docs/ops/VM_DEPLOYMENT_GUIDE.md">Deployment sa VM</a></b></td><td>Kumpletong gabay: pag-setup ng VM + nginx + Cloudflare</td></tr>
<tr><td nowrap><b><a href="docs/ops/FLY_IO_DEPLOYMENT_GUIDE.md">Deployment sa Fly.io</a></b></td><td>Mag-deploy sa Fly.io gamit ang persistent storage</td></tr>
<tr><td nowrap><b><a href="docs/guides/TERMUX_GUIDE.md">Gabay sa Termux</a></b></td><td>Patakbuhin ang OmniRoute sa Android sa pamamagitan ng Termux</td></tr>
<tr><td nowrap><b><a href="docs/guides/PWA_GUIDE.md">Gabay sa PWA</a></b></td><td>Pag-install, caching, at arkitektura ng Progressive Web App</td></tr>
<tr><td nowrap><b><a href="docs/guides/UNINSTALL.md">Gabay sa Pag-uninstall</a></b></td><td>Malinis na pag-alis para sa lahat ng paraan ng pag-install</td></tr>
<tr><td nowrap><b><a href="docs/reference/ENVIRONMENT.md">Config ng Environment</a></b></td><td>Kumpletong mga variable at sanggunian ng <code>.env</code></td></tr>
</table>
### 🧠 Mga Feature at Arkitektura
<table>
<tr><th align="left">Dokumento</th><th align="left">Paglalarawan</th></tr>
<tr><td nowrap><b><a href="docs/architecture/ARCHITECTURE.md">Arkitektura</a></b></td><td>Arkitektura ng system, daloy ng data, at mga panloob na bahagi</td></tr>
<tr><td nowrap><b><a href="docs/compression/COMPRESSION_GUIDE.md">Gabay sa Compression</a></b></td><td>Pipeline na may 7 opsyon: off / lite / standard / aggressive / ultra / RTK / stacked</td></tr>
<tr><td nowrap><b><a href="docs/compression/RTK_COMPRESSION.md">RTK Compression</a></b></td><td>Compression ng output ng command, mga filter, pagtitiwala, pag-verify, pagbawi ng raw output</td></tr>
<tr><td nowrap><b><a href="docs/compression/COMPRESSION_ENGINES.md">Mga Compression Engine</a></b></td><td>Caveman, RTK, mga stacked pipeline, mga interface ng dashboard/API/MCP</td></tr>
<tr><td nowrap><b><a href="docs/compression/COMPRESSION_RULES_FORMAT.md">Format ng mga Compression Rule</a></b></td><td>Mga schema ng JSON rule-pack para sa mga filter ng Caveman at RTK</td></tr>
<tr><td nowrap><b><a href="docs/compression/COMPRESSION_LANGUAGE_PACKS.md">Mga Language Pack ng Compression</a></b></td><td>Pag-detect ng wika at pagbuo ng Caveman rule-pack</td></tr>
<tr><td nowrap><b><a href="docs/architecture/RESILIENCE_GUIDE.md">Gabay sa Resilience</a></b></td><td>Mga circuit breaker, cooldown, queue, proteksyon laban sa thundering herd, TLS spoofing</td></tr>
<tr><td nowrap><b><a href="docs/routing/AUTO-COMBO.md">Auto-Combo Engine</a></b></td><td>16-factor na pagmamarka, mga mode pack, sariling pag-aayos</td></tr>
<tr><td nowrap><b><a href="docs/ops/PROXY_GUIDE.md">Gabay sa Proxy</a></b></td><td>3-level na proxy system, 1proxy marketplace, registry CRUD</td></tr>
<tr><td nowrap><b><a href="docs/reference/FREE_TIERS.md">Mga Libreng Tier</a></b></td><td>Pinagsama-samang direktoryo: 34 na nakadokumentong umuulit na pool / 452 naka-catalog na entry sa libreng tier</td></tr>
<tr><td nowrap><b><a href="docs/guides/FEATURES.md">Galeriya ng mga Feature</a></b></td><td>Biswal na paglilibot sa dashboard na may mga screenshot</td></tr>
<tr><td nowrap><b><a href="docs/architecture/CODEBASE_DOCUMENTATION.md">Dokumentasyon ng Codebase</a></b></td><td>Gabay sa codebase na madaling sundan ng mga baguhan</td></tr>
</table>
### 🤖 Mga Protocol at API
<table>
<tr><th align="left">Dokumento</th><th align="left">Paglalarawan</th></tr>
<tr><td nowrap><b><a href="docs/reference/API_REFERENCE.md">Sanggunian ng API</a></b></td><td>Lahat ng endpoint na may mga halimbawa</td></tr>
<tr><td nowrap><b><a href="docs/openapi.yaml">Spec ng OpenAPI</a></b></td><td>Espesipikasyon ng OpenAPI 3.0</td></tr>
<tr><td nowrap><b><a href="open-sse/mcp-server/README.md">MCP Server</a></b></td><td>110 MCP tool, mga config ng IDE, mga client ng Python/TS/Go</td></tr>
<tr><td nowrap><b><a href="docs/frameworks/MCP-SERVER.md">Gabay sa MCP Server</a></b></td><td>Pag-install ng MCP, mga transport, at sanggunian ng tool</td></tr>
<tr><td nowrap><b><a href="src/lib/a2a/README.md">A2A Server</a></b></td><td>Protocol na JSON-RPC 2.0, mga skill, streaming, pamamahala ng gawain</td></tr>
<tr><td nowrap><b><a href="docs/frameworks/A2A-SERVER.md">Gabay sa A2A Server</a></b></td><td>A2A agent card, mga gawain, mga skill, at streaming</td></tr>
</table>
### 📋 Proyekto at Kalidad
<table>
<tr><th align="left">Dokumento</th><th align="left">Paglalarawan</th></tr>
<tr><td nowrap><b><a href="CONTRIBUTING.md">Pag-aambag</a></b></td><td>Pag-setup at mga alituntunin sa development</td></tr>
<tr><td nowrap><b><a href="docs/ops/BRANCHING_MODEL.md">Modelo ng Branching at Release</a></b></td><td>Kung saan nakatuon ang mga PR (<code>release/*</code>), at kung ano ang ibig sabihin ng <code>main</code> at mga tag</td></tr>
<tr><td nowrap><b><a href="CHANGELOG.md">Talaan ng mga Pagbabago</a></b></td><td>Kumpletong kasaysayan ng release para sa bawat bersyon</td></tr>
<tr><td nowrap><b><a href="SECURITY.md">Patakaran sa Seguridad</a></b></td><td>Pag-uulat ng mga kahinaan at mga kasanayan sa seguridad</td></tr>
<tr><td nowrap><b><a href="docs/guides/I18N.md">Gabay sa i18n</a></b></td><td>Suporta sa 42 wika, daloy ng trabaho sa pagsasalin, RTL</td></tr>
<tr><td nowrap><b><a href="docs/ops/RELEASE_CHECKLIST.md">Checklist ng Release</a></b></td><td>Mga hakbang sa pagpapatunay bago ang release</td></tr>
<tr><td nowrap><b><a href="docs/ops/COVERAGE_PLAN.md">Plano sa Coverage</a></b></td><td>Estratehiya sa test coverage para sa 39,000+ static na deklarasyon ng test sa 5,100+ sinusubaybayang test file</td></tr>
</table>
<br/>
<div align="center">
# ⭐ Mga Nangungunang Contributor
> Ang OmniRoute ay hinuhubog ng isang masigasig na open-source na komunidad. Ang mga indibidwal na ito ay gumawa ng mga pambihirang kontribusyong direktang nakaaapekto sa kalidad, katatagan, at abot ng proyekto. **Maraming salamat.**
### Mga external contributor ayon sa mga na-merge na pull request
<table>
<tr><th align="center">Ranggo</th><th align="left">Contributor</th><th align="center">Mga Na-merge na PR</th><th align="right">~Mga binagong linya</th></tr>
<tr><td align="center">1</td><td align="left"><a href="https://github.com/backryun"><b>backryun</b></a></td><td align="center">190</td><td align="right">227,977</td></tr>
<tr><td align="center">2</td><td align="left"><a href="https://github.com/oyi77"><b>oyi77</b></a></td><td align="center">180</td><td align="right">407,678</td></tr>
<tr><td align="center">3</td><td align="left"><a href="https://github.com/rdself"><b>rdself</b></a></td><td align="center">145</td><td align="right">80,663</td></tr>
<tr><td align="center">4</td><td align="left"><a href="https://github.com/JxnLexn"><b>JxnLexn</b></a></td><td align="center">128</td><td align="right">387,049</td></tr>
<tr><td align="center">5</td><td align="left"><a href="https://github.com/KooshaPari"><b>KooshaPari</b></a></td><td align="center">101</td><td align="right">125,747</td></tr>
<tr><td align="center">6</td><td align="left"><a href="https://github.com/herjarsa"><b>herjarsa</b></a></td><td align="center">88</td><td align="right">230,872</td></tr>
<tr><td align="center">7</td><td align="left"><a href="https://github.com/RaviTharuma"><b>RaviTharuma</b></a></td><td align="center">79</td><td align="right">55,106</td></tr>
<tr><td align="center">8</td><td align="left"><a href="https://github.com/maxmad64bis"><b>maxmad64bis</b></a></td><td align="center">69</td><td align="right">394,715</td></tr>
<tr><td align="center">9</td><td align="left"><a href="https://github.com/artickc"><b>artickc</b></a></td><td align="center">59</td><td align="right">33,260</td></tr>
<tr><td align="center">10</td><td align="left"><a href="https://github.com/HouMinXi"><b>HouMinXi</b></a></td><td align="center">51</td><td align="right">47,334</td></tr>
<tr><td align="center">10</td><td align="left"><a href="https://github.com/chirag127"><b>chirag127</b></a></td><td align="center">51</td><td align="right">5,153</td></tr>
<tr><td align="center">12</td><td align="left"><a href="https://github.com/xz-dev"><b>xz-dev</b></a></td><td align="center">50</td><td align="right">245,976</td></tr>
<tr><td align="center">13</td><td align="left"><a href="https://github.com/hartmark"><b>hartmark</b></a></td><td align="center">47</td><td align="right">52,185</td></tr>
<tr><td align="center">14</td><td align="left"><a href="https://github.com/rqzbeh"><b>rqzbeh</b></a></td><td align="center">39</td><td align="right">143,181</td></tr>
<tr><td align="center">15</td><td align="left"><a href="https://github.com/dhaern"><b>dhaern</b></a></td><td align="center">34</td><td align="right">19,559</td></tr>
<tr><td align="center">16</td><td align="left"><a href="https://github.com/Dingding-leo"><b>Dingding-leo</b></a></td><td align="center">33</td><td align="right">1,986</td></tr>
<tr><td align="center">17</td><td align="left"><a href="https://github.com/NomenAK"><b>NomenAK</b></a></td><td align="center">32</td><td align="right">13,854</td></tr>
<tr><td align="center">18</td><td align="left"><a href="https://github.com/MumuTW"><b>MumuTW</b></a></td><td align="center">30</td><td align="right">16,953</td></tr>
<tr><td align="center">19</td><td align="left"><a href="https://github.com/benzntech"><b>benzntech</b></a></td><td align="center">29</td><td align="right">11,641</td></tr>
<tr><td align="center">20</td><td align="left"><a href="https://github.com/pacocartones"><b>pacocartones</b></a></td><td align="center">24</td><td align="right">9,331</td></tr>
<tr><td align="center">20</td><td align="left"><a href="https://github.com/Prudhvivuda"><b>Prudhvivuda</b></a></td><td align="center">24</td><td align="right">6,312</td></tr>
</table>
<sub>Itinigil ang datos sa kasalukuyang dulo ng <code>release/v3.8.50</code> na <code>dafb4ae808</code>, kasama ang mga merge hanggang 2026-08-24 05:26:03 UTC. Ang naka-page na census ng GitHub GraphQL ay naglalaman ng 5,911 na na-merge na PR: 2,707 mula sa may-ari ng repository, 179 mula sa Dependabot, at <b>3,025 external na PR mula sa 535 magkakaibang contributor</b>. Ang “Mga binagong linya” ay ang mga idinagdag at tinanggal sa GitHub at kabilang dito ang mga nabuong file, lockfile, catalog, pagsasalin, at dokumentasyon; ito ay churn, hindi LOC na isinulat. Pinanatili ang mga tabla sa cutoff.</sub>
### Mga commit na iniugnay ng GitHub
<table>
<tr>
<td align="center" width="160">
<a href="https://github.com/backryun">
<img src="https://github.com/backryun.png" width="40" style="border-radius:50%" alt="backryun"/><br/>
<b>backryun</b>
</a><br/>
<sub>🥇 220 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/oyi77">
<img src="https://github.com/oyi77.png" width="40" style="border-radius:50%" alt="Paijo"/><br/>
<b>Paijo</b>
</a><br/>
<sub>🥈 219 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/rdself">
<img src="https://github.com/rdself.png" width="40" style="border-radius:50%" alt="Randi"/><br/>
<b>Randi</b>
</a><br/>
<sub>🥉 108 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/RaviTharuma">
<img src="https://github.com/RaviTharuma.png" width="40" style="border-radius:50%" alt="Ravi Tharuma"/><br/>
<b>Ravi Tharuma</b>
</a><br/>
<sub>🏅 81 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/christopher-s">
<img src="https://github.com/christopher-s.png" width="40" style="border-radius:50%" alt="Chris"/><br/>
<b>Chris</b>
</a><br/>
<sub>🏅 70 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/hartmark">
<img src="https://github.com/hartmark.png" width="40" style="border-radius:50%" alt="Markus Hartung"/><br/>
<b>Markus Hartung</b>
</a><br/>
<sub>🏅 69 commit na iniuugnay ng GitHub · tabla sa #6</sub>
</td>
</tr>
<tr>
<td align="center" width="160">
<a href="https://github.com/maxmad64bis">
<img src="https://github.com/maxmad64bis.png" width="40" style="border-radius:50%" alt="Dizzle"/><br/>
<b>Dizzle</b>
</a><br/>
<sub>🏅 69 commit na iniuugnay ng GitHub · tabla sa #6</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/JxnLexn">
<img src="https://github.com/JxnLexn.png" width="40" style="border-radius:50%" alt="Jan Leon"/><br/>
<b>Jan Leon</b>
</a><br/>
<sub>🏅 64 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/zen0bit">
<img src="https://github.com/zen0bit.png" width="40" style="border-radius:50%" alt="zenobit"/><br/>
<b>zenobit</b>
</a><br/>
<sub>🏅 62 commit na iniuugnay ng GitHub</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/HouMinXi">
<img src="https://github.com/HouMinXi.png" width="40" style="border-radius:50%" alt="Bob.Hou"/><br/>
<b>Bob.Hou</b>
</a><br/>
<sub>🏅 51 commit na iniuugnay ng GitHub · tabla sa #10</sub>
</td>
<td align="center" width="160">
<a href="https://github.com/xz-dev">
<img src="https://github.com/xz-dev.png" width="40" style="border-radius:50%" alt="Xiangzhe"/><br/>
<b>Xiangzhe</b>
</a><br/>
<sub>🏅 51 commit na iniuugnay ng GitHub · tabla sa #10</sub>
</td>
</tr>
</table>
<sub>Muling sinuri noong 2026-08-24 06:14:31 UTC: mga commit na iniuugnay ng GitHub na iniulat ng Contributors API ng repository para sa default na branch na <code>release/v3.8.50</code>. Nagbalik ang API ng 525 pagkakakilanlan (415 user, 2 bot, 108 anonymous); hindi kasama sa talahanayang ito ang maintainer, mga bot, at mga anonymous na pagkakakilanlan, at pinananatili nito ang mga tabla sa ranggo. Naiiba ito kapwa sa ranggo ng mga na-merge na PR sa itaas at sa census ng Git metadata ng 639 katao sa ibaba.</sub>
> 🙏 Ang mga feature, pag-aayos ng bug, at pagpapahusay sa imprastraktura ng mga contributor na ito ay isang **mahalagang bahagi** ng dahilan kung bakit maaasahan at sagana sa feature ang OmniRoute. Mahalaga ang bawat pull request, bawat test case, at bawat file ng salin para sa i18n. Ang open source ay binubuo ng mga taong tulad nila.
</div>
---
<br/>
## 💖 Mga Sponsor
<div align="center">
Taos-pusong pasasalamat sa mga taong nagpopondo sa OmniRoute mula sa sarili nilang bulsa — bawat kontribusyon ay nagpapanatiling libre, malaya, at patuloy na umuunlad ang proyekto.
<table>
<tr>
<td align="center" width="180">
<a href="https://github.com/drewbitt">
<img src="https://github.com/drewbitt.png?size=140" width="72" style="border-radius:50%" alt="Andrew"/><br/>
<b>Andrew</b>
</a><br/>
<sub>💛 Aktibong buwanang sponsor</sub>
</td>
<td align="center" width="180">
<a href="https://github.com/psylligent">
<img src="https://github.com/psylligent.png?size=140" width="72" style="border-radius:50%" alt="Vlad I"/><br/>
<b>Vlad I</b>
</a><br/>
<sub>💛 Aktibong buwanang sponsor</sub>
</td>
<td align="center" width="180">
<a href="https://github.com/pacocartones">
<img src="https://github.com/pacocartones.png?size=140" width="72" style="border-radius:50%" alt="Paco Cartones"/><br/>
<b>Paco Cartones</b>
</a><br/>
<sub>💛 Aktibong minsanang sponsor</sub>
</td>
<td align="center" width="180">
<a href="https://github.com/igormorais123">
<img src="https://github.com/igormorais123.png?size=140" width="72" style="border-radius:50%" alt="Professor Igor Morais Vasconcelos"/><br/>
<b>Prof. Igor Morais</b>
</a><br/>
<sub>💛 Dating minsanang tagasuporta</sub>
</td>
<td align="center" width="180">
<a href="https://github.com/longtao77">
<img src="https://github.com/longtao77.png?size=140" width="72" style="border-radius:50%" alt="longtao"/><br/>
<b>longtao</b>
</a><br/>
<sub>💛 Dating minsanang tagasuporta</sub>
</td>
</tr>
</table>
<sub>… at iba pang mas pinipiling manatiling pribado 💛</sub>
<sub>Muling napatunayan ang mga pampublikong GitHub Sponsor noong 2026-08-24. Ang katayuang <code>activeOnly</code> ng GitHub ang tumutukoy sa mga aktibong label sa itaas; patuloy na pinasasalamatan ang mga dati nang isinapublikong minsanang tagasuporta, at nananatiling hindi pinapangalanan ang mga pribadong sponsor.</sub>
<b><a href="https://github.com/sponsors/diegosouzapw">💖 Maging sponsor →</a></b> — bawat dolyar ay nagpapanatiling libre at malaya ang OmniRoute.
</div>
<br/>
<div align="center">
## 👥 600+ Kontribyutor
</div>
[![Mga Kontribyutor](https://contrib.rocks/image?repo=diegosouzapw/OmniRoute&max=639&columns=20&anon=1)](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
<sub>Na-audit noong 2026-08-24 sa nakapirming base na <code>ac02c5b42f</code> at muling sinuri sa kasalukuyang dulo ng <code>release/v3.8.50</code> na <code>dafb4ae808</code>: <b>639 na-normalize na pagkakakilanlan ng tao sa Git</b> — 407 ang lumilitaw bilang mga may-akda ng commit (kabilang ang tagapanatili) at 232 ang lumilitaw lamang sa mga tahasang trailer na <code>Co-authored-by</code>. Nino-normalize ng census ang mga noreply handle ng GitHub, hindi isinasama ang 26 na pagkakakilanlan ng bot/agent/serbisyo/placeholder, at hindi pinagsasama ang mga karaniwang email address dahil lamang magkatugma ang kanilang mga display name.</sub>
### Paano Mag-ambag
1. I-fork ang repository
2. Gumawa ng branch mula sa dulo ng **aktibong** `release/vX.Y.Z` (hindi mula sa `main`) — tingnan ang [Modelo ng Pagba-branch at Pag-release](docs/ops/BRANCHING_MODEL.md)
3. Gumawa ng iyong feature branch (`git checkout -b feat/amazing-feature`)
4. I-commit ang iyong mga pagbabago (`git commit -m 'feat: add amazing feature'`)
5. I-push sa branch (`git push origin feat/amazing-feature`)
6. Magbukas ng Pull Request na may **base = ang branch na iyon na `release/vX.Y.Z`**
Tingnan ang [CONTRIBUTING.md](CONTRIBUTING.md) para sa mga detalyadong alituntunin.
### Pag-release ng Bagong Bersyon
```bash
# Gumawa ng release — awtomatikong isasagawa ang npm publish
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
<br/>
<div align="center">
## 📊 Mga Star
<a href="https://www.star-history.com/?repos=diegosouzapw%2FOmniRoute&type=date&legend=top-left">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/chart?repos=diegosouzapw/OmniRoute&type=date&theme=dark&legend=top-left&sealed_token=XP_ycEjv7s31p1edvhsMOXry51OWYsUjDRWjflSG7jQKRpO9hPGg7i_EHvwhI6QtrARTMH-YGjJhi8sumRYflEJD0DPlH_MMHjizhBYCX8fbHFrHEiNvVA" />
<source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/chart?repos=diegosouzapw/OmniRoute&type=date&legend=top-left&sealed_token=XP_ycEjv7s31p1edvhsMOXry51OWYsUjDRWjflSG7jQKRpO9hPGg7i_EHvwhI6QtrARTMH-YGjJhi8sumRYflEJD0DPlH_MMHjizhBYCX8fbHFrHEiNvVA" />
<img alt="Tsart ng Kasaysayan ng mga Star" src="https://api.star-history.com/chart?repos=diegosouzapw/OmniRoute&type=date&legend=top-left&sealed_token=XP_ycEjv7s31p1edvhsMOXry51OWYsUjDRWjflSG7jQKRpO9hPGg7i_EHvwhI6QtrARTMH-YGjJhi8sumRYflEJD0DPlH_MMHjizhBYCX8fbHFrHEiNvVA" />
</picture>
</a>
<br/>
<div align="center">
## 🌍 StarMapper
<a href="https://starmapper.bruniaux.com/diegosouzapw/omniroute">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="https://starmapper.bruniaux.com/api/map-image/diegosouzapw/omniroute?theme=dark" />
<source media="(prefers-color-scheme: light)" srcset="https://starmapper.bruniaux.com/api/map-image/diegosouzapw/omniroute?theme=light" />
<img alt="StarMapper" src="https://starmapper.bruniaux.com/api/map-image/diegosouzapw/omniroute" />
</picture>
</a>
</div>
<br/>
<div align="center">
## 🙏 Mga Pasasalamat
</div>
Nakatindig ang OmniRoute sa mga balikat ng mga higante. Nagsimula ito bilang fork ng **[9router](https://github.com/decolua/9router)** at TypeScript port ng Go project na **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — at mula roon, ang bawat subsystem sa ibaba ay binigyang-inspirasyon ng isang open-source project na naunang nakagawa nito. Bawat isa ay humubog sa isang kongkretong bahagi ng OmniRoute. Ito ang aming pasasalamat sa kanilang lahat. 🙏
> ⭐ na-verify ang bilang ng mga star mula sa REST API ng GitHub noong Agosto 24, 2026 — bigyan din ng star ang mga proyektong ito. Ang mga bilang ay eksaktong snapshot mula sa petsang iyon at likas na magbabago.
### 🧬 Pinagmulan at gateway
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/decolua/9router">9router</a></b></td><td align="center">26,161</td><td>Ang orihinal na proyektong pinagbabatayan ng fork na ito — pinalawak dito gamit ang mga multi-modal API at ganap na muling isinulat sa TypeScript.</td></tr>
<tr><td nowrap><b><a href="https://github.com/router-for-me/CLIProxyAPI">CLIProxyAPI</a></b></td><td align="center">48,497</td><td>Ang implementasyon sa Go na nagbigay-inspirasyon sa JavaScript / TypeScript port na ito.</td></tr>
<tr><td nowrap><b><a href="https://github.com/BerriAI/litellm">LiteLLM</a></b></td><td align="center">57,100</td><td>Ang AI gateway na ang pampublikong dataset ng pagpepresyo ay ginagamit sa aming pag-sync ng pagsubaybay sa gastos at ang modelo ng pag-normalize ng provider nito ang naging batayan ng aming routing.</td></tr>
<tr><td nowrap><b><a href="https://github.com/miuuyy/codex-chatgpt-web">codex-chatgpt-web</a></b></td><td align="center">1,410</td><td>MIT source na inangkop sa naka-vendor na ChatGPT Web → Codex Responses bridge, kabilang ang mga adapter para sa browser session, response framing, paggamit, at paghahanap sa web.</td></tr>
<tr><td nowrap><b><a href="https://github.com/Alishahryar1/free-claude-code">free-claude-code</a></b></td><td align="center">48,112</td><td>Mga pattern na na-port sa pagbawi ng stream, mga no-thinking alias, fallback na paghahanap sa web, mga sliding-window limit, pag-redact ng log, at mga pinatibay na daloy ng launcher.</td></tr>
<tr><td nowrap><b><a href="https://github.com/standardagents/composer-api">composer-api</a></b></td><td align="center">322</td><td>Mga pattern ng Cursor Composer para sa pagpili ng tool, paghihigpit sa output, at pag-commit ng tool na inangkop sa native na Cursor executor.</td></tr>
<tr><td nowrap><b><a href="https://github.com/ndycode/codex-multi-auth">codex-multi-auth</a></b></td><td align="center">457</td><td>Mga pattern ng bagong pag-login at pag-rotate ng refresh token na na-port sa muling pagpapatunay ng Codex OAuth.</td></tr>
<tr><td nowrap><b><a href="https://github.com/ex-machina-co/opencode-anthropic-auth">opencode-anthropic-auth</a></b></td><td align="center">510</td><td>Mga default ng transform na tugma sa Claude Code at gawi ng billing header na ginawang pangkalahatan sa config-driven bridge ng OmniRoute.</td></tr>
<tr><td nowrap><b><a href="https://github.com/520mmxx/grok2api-merged">grok2api-merged</a></b></td><td align="center">2</td><td>Ang mga mapping nito ng Grok model, fake-TypeError Statsig generator, mga default ng request at device, at NDJSON response processor ay makabuluhang inangkop sa Grok Web executor ng OmniRoute.</td></tr>
<tr><td nowrap><b><a href="https://github.com/TQZHR/grok2api">TQZHR/grok2api</a></b></td><td align="center">705</td><td>Ang pangunahing transitive na source ng code sa likod ng grok2api-merged; pinanatili ang mga implementasyon nito ng model, header, payload, Statsig, at processor sa lineage ng Grok Web.</td></tr>
<tr><td nowrap><b><a href="https://github.com/chenyme/grok2api">chenyme/grok2api</a></b></td><td align="center">7,520</td><td>Ang pinagbabatayang MIT source para sa mga default ng Grok payload at device, ang Statsig generator, at ang <code>result.response</code> processor na ipinasa sa pamamagitan ng TQZHR at grok2api-merged.</td></tr>
<tr><td nowrap><b><a href="https://github.com/miuzhaii/grok2api-pro">grok2api-pro</a></b></td><td align="center">27</td><td>Isang transitive na source na kinilala ng grok2api-merged para sa proxy-pool layer nito; pinananatili ng OmniRoute ang abiso sa lineage na iyon ngunit hindi nito inaangkin na may proxy-pool port sa limitado nitong Grok Web executor.</td></tr>
<tr><td nowrap><b><a href="https://github.com/CNFlyCat/GrokProxy">GrokProxy</a></b></td><td align="center">50</td><td>Ang Grok proxy nitong pinapatotohanan gamit ang cookie at ang <code>result.response.token</code> streaming pattern ay naging batayan ng Grok Web transport ng OmniRoute.</td></tr>
<tr><td nowrap><b><a href="https://github.com/lianying1716/GrokBridge">GrokBridge</a></b></td><td align="center">5</td><td>Isinaalang-alang ng orihinal na implementasyon ng Grok Web ang disenyo nito para sa HTTP/browser upstream; nagmula sa GrokProxy ang direktang HTTP path nito, kaya walang inaangking hiwalay na pag-port ng code.</td></tr>
<tr><td nowrap><b><a href="https://github.com/imjustprism/grok-web-api">grok-web-api</a></b></td><td align="center">14</td><td>Ang Rust <code>ChatOptions</code> at mga schema ng response envelope nito ang naging batayan ng mga TypeScript type ng OmniRoute para sa Grok request at streaming response.</td></tr>
</table>
### 🗜️ Pag-compress ng context at token — mga engine
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/JuliusBrussee/caveman">Caveman</a></b></td><td align="center">100,538</td><td>Ang sumikat na proyektong "bakit gumamit ng maraming token kung sapat na ang kaunti" — ang pilosopiya nitong magsalitang-kuweba ang nagpapatakbo sa aming karaniwang compression mode at mahigit 30 panuntunan sa pag-aalis ng palaman at pagpapaikli.</td></tr>
<tr><td nowrap><b><a href="https://github.com/rtk-ai/rtk">RTK Rust Token Killer</a></b></td><td align="center">77,185</td><td>High-performance na pag-compress ng output ng command — nagbigay-inspirasyon sa aming RTK engine, JSON filter DSL, pagbawi ng raw na output, at sa magkakasunod na RTK → Caveman pipeline.</td></tr>
<tr><td nowrap><b><a href="https://github.com/headroomlabs-ai/headroom">headroom</a></b></td><td align="center">67,310</td><td>Nababaligtad na pag-compress ng context (SmartCrusher) — nagbigay-inspirasyon sa aming <code>headroom</code> engine at sa retrieve-marker pattern ng <code>ccr</code>.</td></tr>
<tr><td nowrap><b><a href="https://github.com/microsoft/LLMLingua">LLMLingua</a></b></td><td align="center">6,598</td><td>Pananaliksik sa pag-compress ng prompt (LLMLingua / LLMLingua-2) — nagbigay-inspirasyon sa aming async, ligtas-sa-code, at fail-open na <code>llmlingua</code> engine.</td></tr>
<tr><td nowrap><b><a href="https://github.com/atjsh/llmlingua-2-js">llmlingua-2-js</a></b></td><td align="center">31</td><td>Ang JS/ONNX port (MobileBERT / XLM-RoBERTa) na ginagamit bilang worker-thread backend para sa aming LLMLingua engine.</td></tr>
<tr><td nowrap><b><a href="https://github.com/leninejunior/troglodita">Troglodita</a></b></td><td align="center">40</td><td>Pag-compress ng token para sa PT-BR — nagpapatakbo sa aming pt-BR language pack: pagbabawas ng pleonasm at pag-aalis ng palaman na iniangkop para sa gramatikang Brazilian-Portuguese.</td></tr>
<tr><td nowrap><b><a href="https://github.com/DietrichGebert/ponytail">ponytail</a></b></td><td align="center">108,957</td><td>Ang sumikat na YAGNI-coder skill na "tamad na senior dev" — nagbigay-inspirasyon sa aming <b>less-code</b> Output Style: paggabay tungo sa pinakamaliit na gumaganang pagbabago na nagpapabawas sa _nabuong_ code (ang kapatid sa output-axis ng maikling prosa ng Caveman).</td></tr>
<tr><td nowrap><b><a href="https://github.com/ayghri/i-have-adhd">i-have-adhd</a></b></td><td align="center">23,526</td><td>Ang istilo nitong inuuna ang aksyon at madaling sundan ng may ADHD ay iniangkop sa maikling output style ng OmniRoute sa limang wika.</td></tr>
</table>
### 🧩 Mga compact na format, pananaliksik sa token, at tooling na may kamalayan sa code
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/toon-format/toon">TOON</a></b></td><td align="center">25,233</td><td>Token-Oriented Object Notation — ang columnar nitong modelong may header at mga row ang humubog sa aming yugto ng tabular compaction.</td></tr>
<tr><td nowrap><b><a href="https://github.com/blackwell-systems/gcf">GCF Graph Compact Format</a></b></td><td align="center">41</td><td>Ang compact graph format at generic-profile design nito ang naging batayan ng tabular compaction at Headroom codec format ng OmniRoute.</td></tr>
<tr><td nowrap><b><a href="https://github.com/blackwell-systems/gcf-typescript">gcf-typescript</a></b></td><td align="center">4</td><td>Ang MIT TypeScript implementation na direktang isinama at pinalawak bilang Headroom generic-profile codec.</td></tr>
<tr><td nowrap><b><a href="https://github.com/ooples/token-optimizer-mcp">token-optimizer-mcp</a></b></td><td align="center">494</td><td>Brotli/SQLite cache + per-session context-delta — nagbigay-inspirasyon sa aming <code>session-dedup</code> engine.</td></tr>
<tr><td nowrap><b><a href="https://github.com/Mibayy/token-savior">token-savior</a></b></td><td align="center">1,122</td><td>Pag-compact ng Bash output + mga MCP profile — nagbigay-inspirasyon sa aming disiplinadong paghinto ng compression at pagbabawas ng MCP tool manifest.</td></tr>
<tr><td nowrap><b><a href="https://github.com/ppgranger/token-saver">token-saver</a></b></td><td align="center">138</td><td>Content-aware at per-file-type na pag-compress ng output na may failure-aware na paghinto — nagpatunay sa aming per-type dispatch at paglaktaw kapag kulang ang pakinabang.</td></tr>
<tr><td nowrap><b><a href="https://github.com/alexgreensh/token-optimizer">token-optimizer</a></b></td><td align="center">1,951</td><td>"Hanapin ang mga ghost token" — ang offload + recoverable-handle pattern nito ang naging batayan ng aming pag-iisip tungkol sa CCR offload.</td></tr>
<tr><td nowrap><b><a href="https://github.com/Shweta-Mishra-ai/tokenmizer">TokenMizer</a></b></td><td align="center">28</td><td>Isang blueprint ng session graph + cross-turn line dedup na naging batayan ng aming session-dedup design.</td></tr>
<tr><td nowrap><b><a href="https://github.com/jessefreitas/OmniCompress">OmniCompress</a></b></td><td align="center">3</td><td>Rust columnar-JSON + content-addressed retrieve + cross-message dedup — nagpatunay sa disenyo ng aming <code>headroom</code>/<code>ccr</code>/<code>session-dedup</code> engine at sa cache-stable na invariant na "hindi nakadepende sa posisyon ang compressed form."</td></tr>
<tr><td nowrap><b><a href="https://github.com/atlassian-labs/mcp-compressor">mcp-compressor</a></b></td><td align="center">113</td><td>Pag-compress ng MCP tool schema/description — naging batayan ng aming pagbabawas sa cardinality ng MCP tool manifest.</td></tr>
<tr><td nowrap><b><a href="https://github.com/pdavis68/RepoMapper">RepoMapper</a></b></td><td align="center">197</td><td>Aider-style na pagraranggo ng repo map — naging batayan ng aming paggalugad sa repo map / retrieval ranking.</td></tr>
<tr><td nowrap><b><a href="https://github.com/mrsimpson/quiet-shell-mcp">quiet-shell-mcp</a></b></td><td align="center">4</td><td>Deklaratibong pagbabawas ng shell output sa pamamagitan ng MCP — nagpatunay sa aming deklaratibong pag-compact ng Bash output.</td></tr>
<tr><td nowrap><b><a href="https://github.com/dsherret/ts-morph">ts-morph</a></b></td><td align="center">6,162</td><td>TypeScript Compiler API toolkit — nagbigay-inspirasyon sa aming parser-based na pag-aalis ng comment na pinapanatili ang mga string, template, at regex literal.</td></tr>
</table>
### 🧠 Memorya at RAG
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/mem0ai/mem0">Mem0</a></b></td><td align="center">63,902</td><td>Unibersal na layer ng memorya — hinubog ng modelo nitong proxy-bilang-hangganan-ng-pagsulat/pagbasa ang aming arkitektura ng memorya.</td></tr>
<tr><td nowrap><b><a href="https://github.com/letta-ai/letta">Letta (MemGPT)</a></b></td><td align="center">24,382</td><td>Mga stateful agent na may nakaantas na memorya — nagbigay-inspirasyon sa aming nakaantas na modelo ng Context Control & Recovery (CCR).</td></tr>
<tr><td nowrap><b><a href="https://github.com/onestardao/WFGY">WFGY</a></b></td><td align="center">1,781</td><td>Ang taxonomy ng ProblemMap para sa 16 na umuulit na uri ng pagkabigo ng RAG/LLM — ang iisang bokabularyong ginagamit sa aming gabay sa pag-troubleshoot.</td></tr>
</table>
### 🛰️ Inspeksyon ng trapiko, MITM at transparent proxy
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/chouzz/llm-interceptor">llm-interceptor</a></b></td><td align="center">66</td><td>Ang MITM interception/pagsusuri sa trapiko sa pagitan ng coding assistant ↔ LLM ay nakatulong sa pagbuo ng mga unang kinakailangan para sa Traffic Inspector. Apat na dating hinangong module — pagsasama-sama ng SSE, normalisasyon ng pag-uusap, pagtatakip ng mga lihim, at sanitization ng header — ang pinalitan ng mga independiyenteng clean-room implementation na nakabatay sa mga pampublikong pamantayan ng protocol. Ang dalawang host-passthrough surface (<code>passthrough.ts</code> at <code>_internal/bypass.cjs</code>) ay nananatiling mga internal na implementation ng OmniRoute na hiwalay na inuri; hindi isinulat muli ang mga ito bilang bahagi ng pagpapalit na iyon.</td></tr>
<tr><td nowrap><b><a href="https://github.com/InterceptSuite/ProxyBridge">ProxyBridge</a></b></td><td align="center">5,995</td><td>Transparent na per-process proxy routing — nagbigay-inspirasyon sa aming crash-safe na MITM teardown, mga idle-timeout ng socket, <code>/proc</code> process attribution, at TPROXY capture.</td></tr>
</table>
### 📚 Data ng modelo, observability at UI
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/anomalyco/models.dev">models.dev</a></b></td><td align="center">6,555</td><td>Bukas na database ng mga detalye, presyo, at kakayahan ng mga AI model — likas na sini-sync sa aming katalogo ng modelo.</td></tr>
<tr><td nowrap><b><a href="https://github.com/xyflow/xyflow">React Flow / xyflow</a></b></td><td align="center">38,108</td><td>Ang node-based na graph library na nagpapatakbo sa aming real-time na Compression Studio at Combo/Routing Studio.</td></tr>
<tr><td nowrap><b><a href="https://github.com/langchain-ai/langgraph">LangGraph</a></b></td><td align="center">40,314</td><td>Ang live workflow-graph visualization ng LangGraph Studio ang nagbigay-inspirasyon sa real-time na cascade view ng aming mga Studio.</td></tr>
<tr><td nowrap><b><a href="https://github.com/langfuse/langfuse">Langfuse</a></b></td><td align="center">33,592</td><td>Hinubog ng modelo nitong trace → span → generation para sa observability ang waterfall ng aming Compression Studio.</td></tr>
<tr><td nowrap><b><a href="https://github.com/kiali/kiali">Kiali</a></b></td><td align="center">3,631</td><td>Observability ng Istio service mesh — nagbigay-inspirasyon sa aming mga circuit-breaker badge at biswal ng mga error edge sa Routing/Combo Studio.</td></tr>
<tr><td nowrap><b><a href="https://github.com/lobehub/lobe-icons">lobe-icons</a></b></td><td align="center">2,428</td><td>Mga logo ng tatak ng AI/LLM na nagre-render ng mga icon ng provider sa kabuuan ng aming dashboard.</td></tr>
<tr><td nowrap><b><a href="https://github.com/lipis/flag-icons">flag-icons</a></b></td><td align="center">12,354</td><td>Nagbibigay ng mga SVG flag na may lisensyang MIT na ginagamit ng tagapili ng wika sa README.</td></tr>
</table>
### 🛡️ Seguridad
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/tldrsec/awesome-secure-defaults">awesome-secure-defaults</a></b></td><td align="center">721</td><td>Isang piniling listahan ng mga secure-by-default na library na gumagabay sa aming mga pagpiling panseguridad (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).</td></tr>
</table>
### 🧭 Mga komplementaryong tool
<table>
<tr><th align="left">Proyekto</th><th align="center">⭐</th><th align="left">Paano nito binigyang-inspirasyon ang OmniRoute</th></tr>
<tr><td nowrap><b><a href="https://github.com/BlockRunAI/ClawRouter">ClawRouter</a></b></td><td align="center">6,564</td><td>Nagbigay-inspirasyon sa request deduplication, pang-emergency na zero-cost fallback, mga pluggable na estratehiya ng Auto-Combo, at multilingual na pag-uuri ng intensyon.</td></tr>
<tr><td nowrap><b><a href="https://github.com/lbjlaq/Antigravity-Manager">Antigravity-Manager</a></b></td><td align="center">30,652</td><td>Ang account-aware na model remapping, pagpapatunay ng executable path, at gawi ng plan label nito ay nakatulong sa paghubog ng Antigravity runtime ng OmniRoute.</td></tr>
<tr><td nowrap><b><a href="https://github.com/jlcodes99/vscode-antigravity-cockpit">vscode-antigravity-cockpit</a></b></td><td align="center">4,817</td><td>Ang compact na format nito para sa countdown ng pag-reset ng quota ang nagbigay-inspirasyon sa kaukulang pagpapakita ng limitasyon ng provider sa OmniRoute.</td></tr>
<tr><td nowrap><b><a href="https://github.com/iOfficeAI/AionUi">AionUi</a></b></td><td align="center">32,230</td><td>Ang mga ACP integration nito ang nagbigay-inspirasyon sa awtomatikong pagtukoy ng OmniRoute sa mga naka-install na CLI agent.</td></tr>
<tr><td nowrap><b><a href="https://github.com/steipete/CodexBar">CodexBar</a></b></td><td align="center">20,507</td><td>Tinukoy nito ang quota surface ng Grok Build; pagkatapos ay independiyenteng pinatunayan at itinama ng OmniRoute ang live wire format.</td></tr>
</table>
## 📄 Lisensya
Lisensyang MIT - tingnan ang [LICENSE](LICENSE) para sa mga detalye.
---
<div align="center">
**[⬆ Bumalik sa itaas](#-omniroute)** · Binuo nang may ❤️ para sa open-source na komunidad ng AI.
<sub>OmniRoute v3.8.51 · Node ≥22.22.2 · Lisensyang MIT · <a href="https://omniroute.online">omniroute.online</a></sub>
</div>
<!-- Pinagana ang GitHub Discussions para sa mga tanong at sagot ng komunidad -->