🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇧🇦 bs · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW
از حسابهای ارائهدهندگان خودتان استفاده کنید. این رقم، برآوردی تجمیعی از پلنهای رایگان شخص ثالث است که شرایط استفاده از هرکدام جداگانه احراز میشود، نه اعتبار توکنی که OmniRoute ارائه کرده باشد. ثبتنام کنید، در صورت نیاز اطلاعات احراز هویت یا دسترسی را دریافت کنید و ارائهدهندگانی را که میتوانید استفاده کنید متصل نمایید؛ محدودیتها، دسترسپذیری و شرایط هر ارائهدهنده تحت کنترل خود اوست.
تجمیع دستی پلنهای رایگان دشوار است — دهها SDK، دهها محدودیت نرخ و بدون اینکه بدانید واقعاً چه میزان ظرفیت در اختیار دارید. OmniRoute تعداد 484 ورودی پلن رایگان را در 34 کلید استخر دورهای فهرستبندی میکند و رقم توکن اصلی را بر اساس 17 استخر دارای بودجه ماهانه مثبت و منتشرشده، بهعلاوه پنج سقف مجزای Groq برای هر مدل محاسبه میکند؛ استخرهای مشترک نیز از محاسبه تکراری حذف میشوند. سهمیههایی که تنها پس از بررسی هویت منطقهای فعال میشوند (در حال حاضر: ModelScope)، جداگانه نمایش داده میشوند؛ حدود +~6M پس از تأیید هویت منطقهای در دسترس است و هرگز به رقم اصلی اضافه نمیشود. نتیجه همواره در داشبورد (
/dashboard/free-tiers) قابل مشاهده است.
خلاصه متحرکی از صفحه زنده
/dashboard/free-tiers. روششناسی کامل (حذف استخرهای تکراری، سطوح اعتبار، شرایط ارائهدهندگان): docs/reference/FREE_TIERS.md.این ارقام هر دو هفته یکبار با فهرست زنده دوباره ممیزی میشوند و ممکن است در هر دو جهت تغییر کنند — اگر ارائهدهندهای پلن رایگان خود را متوقف کند، رقم کاهش مییابد؛ اگر پلن جدیدی اضافه شود، افزایش پیدا میکند. ما همان چیزی را منتشر میکنیم که فهرست واقعاً محاسبه میکند، نه یک سناریوی خوشبینانه و رُندشده.
👋 نگهدارنده پروژه را دنبال کنید — زودتر از همه از ارائهدهندگان جدید، انتشارها و نکات مطلع شوید:
پرسشها، نکات مربوط به ارائهدهندگان، نقشه راه و پشتیبانی ← Discord · Telegram · WhatsApp 🌍 جهانی / 🇧🇷 برزیل / پورتال
| نسخه 3.8.50 | نسخه 3.8.51 | v3.8.53+ |
|
|---|---|---|---|
| ارائه دهندگان 🌐 | 352 | 358 | 380 |
| 🧠 مدل چت منحصر به فرد IDs | 1320 | 1374 | 1475 |
| پل مدالیتی 🖼️ | 🆕 vision + audio + video | ✓ | ✓ |
| کاتالوگ رایگان رادار 📡 | 🆕 انتخاب کنید | ✓ | ✓ |
| زمانبندی آگاهی از سهمیه ⚖️ | 🆕 Quota-Share | ✓ | ✓ |
| تله متری سهمیه 📊 | 🆕 زنده | ✓ | ✓ |
| حالت هدلس 🧰 | — | — | 🆕 serve --headless |
| 🛤️ LTS rail infra | — | — | کانال های انتشار 🆕 |
| کشف مدل 🔎 API | — | — | 🆕 /v1/models/query |
نقشه راه→ - سوار شدن از راه آهن به v3.9.0 LTS
| 🚀 شروع | 🚀 شروع سریع | 📦 نصب | 🆓 اتصال یک ارائهدهنده |
| 💡 یادگیری | 💥 وعده | 🤔 چرا OmniRoute | 🏆 وجه تمایز |
| ⚙️ قابلیتها | 🎯 ترکیبها | 🌐 ارائهدهندگان | 🔌 CLI و MCP |
| 🗜️ فشردهسازی | 🖥️ محل اجرا | 🔒 خصوصی | |
| 👀 مشاهده | 🎬 در عمل | ✨ تازهها | 🤖 CLIهای سازگار |
| 💚 حمایت | 💚 حمایت / اهدا | 💬 انجمن | 💖 حامیان مالی |
| 📦 پروژه | 🛠️ پشته فناوری | 📖 مستندات | 👥 مشارکتکنندگان |
# پس از اتصال یک ارائهدهنده، کلید OmniRoute خود را از Dashboard → Endpoints کپی کنید:
curl http://localhost:20128/v1/chat/completions \
-H "Authorization: Bearer YOUR_OMNIROUTE_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'auto به یک مسیر واجد شرایط نیاز دارد. یک نصب تازه میتواند هیچ هدف واجد شرایط بدون کلیدی نداشته باشد، و یک ارائهدهنده بدون کلید ممکن است کلاینتهای شخص ثالث را رد کند. ارائهدهندگانی که با tos: avoid علامت خوردهاند، از جمله Kiro، بهطور پیشفرض از مسیریابی خودکار کنار گذاشته میشوند؛ اتصال یک حساب این تنظیم را نادیده نمیگیرد. پیش از انتخاب ارائهدهنده، راهنمای سطوح رایگان را ببینید.
📦 اسکریپتهای quickstart آماده کپیپیست برای Python، Node.js، PHP و cURL → examples/quickstart/
آیا میخواهید به عنوان یک دوست متنباز به ما بپیوندید؟ اینها شرکتهایی هستند که از متنباز حمایت میکنند و به حرکت OmniRoute کمک میکنند — و ما به صورت عمومی اعلام میکنیم که هر توکنی که به ما میدهند به کجا میرود. با ما تماس بگیرید: diegosouza.pw@outlook.com
|
Kimi Moonshot AI |
با تشکر از Kimi (Moonshot AI)، دوست متنباز بنیانگذار ما، برای حمایت از این پروژه! Kimi آزمایشگاه هوش مصنوعی پشت خانواده مدلهای K2 و K3 با وزن باز است — Kimi K3 یک پنجره زمینه 1M-توکن، دید بومی و کدنویسی در سطح مرزی را با کسری از قیمت مدلهای بسته ارائه میدهد و با Claude Code، Codex و هر ابزار کدنویسی که OmniRoute ارائه میدهد، خارج از جعبه کار میکند.
حمایت Kimi چه چیزی را تامین میکند: اعتبارات API Kimi خط لوله انتشار تایید شده توسط هوش مصنوعی OmniRoute را تامین میکند — مرحله تایید ادغام توسط Kimi K3 که هر درخواست کشش را قبل از ارسال بررسی میکند — به علاوه توسعه ویژگیهای روزمره. پشتیبانی درجه یک Kimi در هر دو مسیر ارائه میشود: API مستقیم Kimi ( kimi-k3) و برنامه کدنویسی Kimi Code (OAuth و کلید API). OmniRoute همچنین اولین پروژه متنباز برزیلی در برنامه پشتیبانی Kimi است. یک کلید API Kimi با 15% اعتبار اضافی دریافت کنید ←
|
|
استنتاج ارزانتر cheaperinference.com |
با تشکر از استنتاج ارزانتر، یک دوست متنباز OmniRoute، برای حمایت از این پروژه! استنتاج ارزانتر یک دروازه با رتبهبندی هزینه است که 42 مدل مرزی — Claude، GPT-5.x، Gemini، Kimi K3، GLM، DeepSeek، Grok و MiniMax — را پشت یک نقطه پایانی سازگار با OpenAI به فروش میرساند و هر درخواست را به ارزانترین ارائهدهنده واجد شرایط هدایت میکند بدون اینکه هرگز بالاتر از قیمت لیست سازنده مدل شارژ کند.
پشتیبانی درجه یک در OmniRoute: تکمیل چت، نقطه پایانی بومی /v1/responses، دید، فراخوانی ابزار و 3 مدل تصویر (grok-imagine، nano-banana-pro، nano-banana-2، قابل دسترسی به عنوان cheaperinference/<model>). یک کلید API دریافت کنید ←
|
لینکهای دارای برچسب aff=omniroute لینکهای شریک هستند. آنها پروژه را بدون هیچ هزینه اضافی برای شما تامین مالی میکنند.
🎟️ تبلیغات وابسته — کوپنهای ثبتنام رایگان از ارائهدهندگانی که ما حمایت نمیکنیم (برای گسترش کلیک کنید)
این بخش فقط برای کدهای ارجاع/کوپن است. مشارکتهای حمایتشده در بخش 🤝 مورد حمایت دوستان متنباز ما در بالا قرار دارند. OmniRoute هیچ حمایت یا مشارکتی با ارائهدهندگان ذکر شده در اینجا ندارد — اینها کوپنهای عمومی هستند که هر کسی میتواند از آنها استفاده کند.
|
AgentRouter agentrouter.org |
AgentRouter — ثبتنام وابسته · 100 دلار اعتبار رایگان هنگام ثبتنام (سرور رایگان، انتظار تاخیر بالاتر — بهترین برای آزمایش، نه تولید). پشتیبانی درجه یک در OmniRoute از v3.8.50: تکمیل چت، فرمت سیمی سازگار با Anthropic و مسیر سازگار با OpenAI. مدلهای موجود شامل claude-opus-4-8، claude-opus-5، gpt-5.6-sol و موارد دیگر. 100 دلار خود را بگیرید ←
|
آیا ارائهدهنده دیگری با کوپن ثبتنام رایگان سخاوتمندانه میشناسید که به کاربران OmniRoute سود برساند؟ یک مشکل باز کنید و ما آن را اینجا اضافه خواهیم کرد.
یک کمبو زنجیرهای از مدلهاست که OmniRoute درخواستها را بهطور خودکار میان آنها مسیریابی میکند. اگر سهمیه تمام شود، ارائهدهندهای از کار بیفتد یا هزینهها جهش کنند، کمبو میتواند به مدل سالم و واجد شرایط بعدی منتقل شود. 🛡️
نیازی به ساخت کمبو نیست. مدل خود را روی auto (یا یکی از گونههای آن) تنظیم کنید تا OmniRoute با امتیازدهی زنده، یک کمبوی مجازی از ارائهدهندگان متصل شما بسازد:
| شناسه مدل | برای چه چیزی بهینهسازی میکند |
|---|---|
auto | 🎯 حالت پیشفرض متعادل (LKGP — به آخرین ارائهدهنده موفق شما پایبند میماند) |
auto/coding | 🧑💻 وزندهی با اولویت کیفیت برای تولید کد |
auto/fast | ⚡ ابتدا کمترین تأخیر |
auto/cheap | 💰 ابتدا کمهزینهترین گزینه بهازای هر توکن |
auto/subscription | 🎟️ فقط سهمیه اشتراکی که از قبل هزینهاش را میپردازید — در صورت شکست متوقف میشود و هرگز به گزینهای هزینهزا برنمیگردد (راهنما) |
auto/thrifty | 🪜 ابتدا سهمیه طرح، سپس پلهبهپله بهسوی ارزانترین گزینههای پولی — پس از بازنشانی سهمیه، بازگشت به طرح (راهنما) |
auto/offline | 🔋 ابتدا بیشترین ظرفیت آزاد سهمیه / محدودیت نرخ |
auto/smart | 🔭 اولویت کیفیت + ۱۰٪ کاوش برای یافتن مدلهای بهتر |
auto/lkgp | 📌 پایبندی صریح به آخرین ارائهدهنده موفق شناختهشده |
auto/chaos | 🧪 توزیع موازی درخواست میان مجموعهای از مدلها (یک مدل برای هر ارائهدهنده، بهطور پیشفرض ۵ مدل) و بازگرداندن یک پاسخ؛ برای هر مدل مجموعه یک فراخوانی بالادستی انجام میشود و این قابلیت تزریق خطا نیست |
هر ۲۰ راهبرد — در هر گام کمبو آنها را با یکدیگر ترکیب و تطبیق دهید:
| # | راهبرد | کارکرد |
|---|---|---|
| 1 | priority |
فهرست مرتبشده با اولویت نخستین مقصد — هرکدام را پیش از رفتن به بعدی کاملاً مصرف میکند 🥇 |
| 2 | fill-first |
پیش از رفتن به مقصد بعدی، سهمیه هر مقصد را کاملاً مصرف میکند |
| 3 | weighted |
انتخاب تصادفی وزندار بر اساس وزن هر مقصد |
| 4 | round-robin |
پیمایش چرخهای مقصدها بهترتیب |
| 5 | p2c |
توازن بار تصادفی با روش قدرت انتخاب از میان دو گزینه |
| 6 | least-used |
انتخاب مقصدی با کمترین بار فعلی |
| 7 | random |
انتخاب تصادفی یکنواخت (بدون موارد تکراری) |
| 8 | strict-random |
انتخاب تصادفی بدون حذف تکرارها 🎲 |
| 9 | cost-optimized |
بهحداقلرساندن هزینه دلاری هر درخواست بر اساس قیمتگذاری زنده کاتالوگ 💸 |
| 10 | headroom |
انتخاب مقصدی با بیشترین سهمیه باقیمانده |
| 11 | quota-weighted |
ردکردن حسابهای دارای سهمیه تمامشده، سپس انتخاب متناسب با سهمیه باقیمانده ÷ بار در حال پردازش — مکالمههای موجود به مقصد فعلی خود مقید میمانند ⚖️ |
| 12 | reset-window |
ترجیح مقصدی که پنجره سهمیهاش زودتر بازنشانی میشود |
| 13 | reset-aware |
رتبهبندی بر اساس زمان بازنشانی سهمیه — ابتدا پنجرههای کوتاهتر 📊 |
| 14 | context-relay |
انتقال زمینه میان مقصدها برای مکالمههای طولانی 🧠 |
| 15 | context-optimized |
انتخاب مناسبترین گزینه برای اندازه فعلی زمینه |
| 16 | cache-optimized |
مقیدکردن هر پیشوند قابلاستفاده مجددِ پرامپت به یک حساب ثابت — برای بیشینهکردن اصابتهای کش پرامپت 🎯 |
| 17 | lkgp |
آخرین مسیر موفق شناختهشده — به آخرین ارائهدهنده موفق مقید میشود و سپس در صورت نیاز به قوانین جایگزین برمیگردد |
| 18 | auto |
امتیازدهی زنده ۱۶ عاملی در تمام اتصالها 🤖 |
| 19 | fusion |
توزیع درخواست میان مجموعهای از مدلها + یک داور که یک پاسخ واحد را ترکیب میکند 🧬 |
| 20 | pipeline |
زنجیرهکردن گامها — خروجی هر مقصد به مقصد بعدی داده میشود 🔗 |
موتور Auto-Combo هر گزینه را بر اساس ۱۶ عامل (سلامت، سهمیه، هزینه، تأخیر، تناسب با وظیفه، کیفیت، دسترسپذیری نشست و…) امتیازدهی میکند — به docs/routing/AUTO-COMBO.md مراجعه کنید.
📖 موتور Auto-Combo · راهنمای تابآوری
📊 روششناسی کامل و جزئیات هر ویژگی در مقایسه با 9router، OpenRouter، CLIProxyAPI و LiteLLM ← docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md
OmniRoute دارای مجوز MIT است و بهصورت عمومی نگهداری میشود. اگر باعث صرفهجویی در زمان یا هزینه شما شده است، از هر روشی که برایتان مناسب است برای مستقل ماندن آن حمایت کنید. حمایت مالی هرگز بر اولویت مسیریابی تأثیر نمیگذارد؛ این حمایت دیدهشدن را به همراه دارد، نه رتبهبندی را.
| ⭐ به مخزن ستاره بدهید | رایگان — واقعاً به دیدهشدن کمک میکند | به OmniRoute ستاره بدهید |
| 🐙 GitHub Sponsors | یکباره یا ماهانه · بدون کارمزد پلتفرم | github.com/sponsors/diegosouzapw |
| ☕ Ko-fi | کمک مالی سریع و یکباره، بدون نیاز به ثبتنام اهداکننده | ko-fi.com/diegosouzapw |
| 🧋 Buy Me a Coffee | حمایتی کوچک و دوستانه | buymeacoffee.com/diegosouzapw |
| 🖐 Liberapay | دورهای · غیرانتفاعی · متنباز | liberapay.com/diegosouzapw |
| 🇧🇷 PIX (برزیل) | فوری، بدون کارمزد | کلید و کد QR در پایین |
| ₿ رمزارز | BTC · ETH · USDT-TRC20 · USDC-Solana | نشانیها در پایین |
🇧🇷 PIX — فوری، بدون کارمزد (برزیل)
کلید (تصادفی): 5d865059-bc44-483a-962d-43ceb80126eb
کد قابل کپی و جایگذاری Pix:
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
₿ رمزارز — BTC · ETH · USDT-TRC20 · USDC-Solana (برای باز کردن کلیک کنید)
| ₿ BTC | Bitcoin (SegWit) | bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd |
| Ξ ETH | Ethereum (ERC20) | 0x64Cf6B68A6Ff34288e89172950a2d00102337a84 |
| ₮ USDT | Tron (TRC20) | TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2 |
| $ USDC | Solana | 2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu |
🐛 باگ پیدا کردهاید یا بازخوردی دارید؟ یک گفتوگو باز کنید.
یادداشتهای توسعهدهنده: این پروژه ممکن است برای راحتی توسعهدهندگان هنگام نصب یا پسنصب با npm، یک فایل محلی .env ایجاد کند. این فایل عمداً از طریق .gitignore نادیده گرفته میشود (.gitignore را ببینید) و هرگز نباید commit شود — اگر بهاشتباه commit شد، تمام اطلاعات محرمانه افشاشده را تغییر دهید و فایل را از تاریخچه حذف کنید. برای راهنمایی درباره مدیریت فایلهای محیطی محلی و اطلاعات محرمانه، به docs/DEVELOPER-ENVIRONMENT.md مراجعه کنید.
عنوان اصلی سطح رایگان همچنان ~1.62B توکن در ماه از کاتالوگ مستندشده و حذفتکرارشده بر اساس مخزن مشترک در بالا است. اعتبارهای موقت ثبتنام ارائهدهندگان میتوانند بهطور جداگانه میزان ماه اول را به ~2.22B افزایش دهند. رادار یک لایهٔ اختیاری و امضاشده برای کاتالوگ است که برای افرادی طراحی شده که میخواهند در فاصلهٔ میان انتشار نسخههای OmniRoute، اطلاعات بهروزتری دربارهٔ دسترسپذیری مدلهای رایگان داشته باشند؛ کاتالوگ جامعه و تمام قابلیتهای رایگان موجود همچنان رایگان باقی میمانند.
حامیان میتوانند کاتالوگ زنده و فرصتهای بیشتری از ارائهدهندگان دریافت کنند. سقف جداگانه و متغیر آن، بسته به دسترسپذیری ارائهدهندگان، حداکثر تقریباً 3B توکن در ماه است. این سقف تضمینشده نیست: ارائهدهندگان ممکن است سهمیهها، شرایط احراز صلاحیت، مدلها یا مناطق را در هر زمان تغییر دهند.
رادار نیازمند فعالسازی اختیاری است و فقط از GET استفاده میکند. کلاینت OmniRoute هیچیک از اعلانها، ترافیک، پیکربندی ارائهدهنده، تلهمتری استفاده یا وضعیت محلی رد کردن اعلانها را آپلود نمیکند. برای آگاهی از شرایط احراز صلاحیت و کاتالوگ فعلی، به radar.omniroute.online/planos مراجعه کنید.
نکات برجسته اخیر از v3.8.20 → v3.8.53. تاریخچه کامل در
CHANGELOG.md.
- ⚖️ مسیریابی
quota-weighted— بیستمین استراتژی ترکیبی، حسابهای تمامشده را رد میکند و سپس از میان بقیه به نسبت سهمیه باقیمانده ÷ بار در جریان انتخاب میکند و مکالمات موجود را سنجاقشده نگه میدارد. → Auto-Combo - 🧰 حالت Headless —
omniroute serve --headless(یاOMNIROUTE_HEADLESS=1) تنها موتور پروکسی/v1/*را اجرا میکند و داشبورد و زیرسیستمهای مخصوص داشبورد خاموش میمانند. → Headless Mode - 🔎 کشف مدل —
/v1/modelsبر اساس قابلیت، context، نوع و متن فیلتر میکند، وPOST /v1/models/queryیک فهرست کوتاه قطعی با همان سطح دسترسی هر کلید برمیگرداند. → API Reference - 🔑 کنترل مسیریابی بهازای هر کلید — یک کلید API را با
forcedModelبه یک مدل یا ترکیب مشخص سنجاق کنید، و مدلها و ترکیبهای یک کلید را بهصورت اتمی اضافه یا حذف کنید (/api/keys/{id}/access). → API Reference · OpenAPI - 🛡️ کنترلهای دقیقتر PII — انتخاب بهازای هر نوع، تا ۲۰ الگوی ماسک سفارشی اعتبارسنجیشده و شمارندههای تشخیص بهازای هر نوع؛ خودِ ماسککردن همچنان اختیاری است. → Guardrails
- 🌍 ۶۷ زبان — داشبورد، آینههای مستندات و CLI، و
npm run i18n:add-localeبا یک فرمان یک زبان را همهجا اضافه میکند. → i18n Guide - 🎛️ OmniConductor — واگذاری ورودی A2A به ناوگان عاملهای شما، مهارتهای Conductor روی Agent Card، و یک پنل داشبورد با چت صوتی push-to-talk Faro. → A2A Server
- 🛂 پذیرش تطبیقی و محافظت در برابر اضافهبار — درخواستهای سنگین چت بهجای دریافت خطای 503 در صف قرار میگیرند، با اجارههای چرخشی RPM اتمی بهازای هر اتصال. → Resilience Guide
- 🗂️ ترتیب متعارف
/v1/models— یک بلوک پیوسته و گروهبندیشده بر اساس ارائهدهنده برای هر ارائهدهنده (ترکیبها ابتدا سنجاق شده)، پایدار در همه منابع کاتالوگ. → API Reference - 🗜️ سختسازی فشردهسازی — محافظ بادکردگی بهصورت پیشفرض فعال، بستههای Caveman برای DE / FR / JA + چینی (wényán)، فیلترهای RTK برای Gradle و .NET. → Compression
- 💸 هزینه صادقانه با نرخ ثابت — ارائهدهندگان اشتراک / طرح کدنویسی در تحلیل هزینه $0 خوانده میشوند؛ بودجه، سهمیه و مسیریابی همچنان تخمین میزنند. → API Reference
- ⚖️ مسیریابی Quota-Share — سهمیه یک حساب مشترک را بهشکل منصفانه میان کلیدهای استخری تقسیم کنید، بهصورت work-conserving تا برشهای بیکار قرض داده شوند. → Resilience Guide
- 🤖 راهاندازی CLI/عامل با یک فرمان — ۱۵ فرمان ثبتشده
setup-*؛omniroute runهفت CLI را اجرا میکند (Claude Code، Codex، Aider، Goose، OpenCode، Qwen Code، Gemini CLI)؛omniroute configureاز ۱۱ هدف پشتیبانی میکند با انتخابگر تعاملی ارائهدهنده+مدل و موارد دلخواه بهازای هر context. → CLI Integrations - 🛰️ حالت راه دور — یک OmniRoute راه دور را با توکنهای محدودهدار (
connect/contexts/tokens) هدایت کنید، بههمراه یک کمککننده OAuthantigravityبرای نصبهای VPS. → Remote Mode - 🧭 مسیریابی خودکار هوشمندتر — ترکیبهای
auto/<category>:<tier>، Fusion (پنل مدل + داور)، مسیریابی آگاه از وظیفه، بازنویسی مدل / حالت / بودجه دلاری بهازای هر درخواست. → Auto-Combo - 🗜️ فشردهسازی قابلافزودن — ۱۲ موتور ترکیبپذیر + Compression Studios: LLMLingua-2، Ultra دوسطحی، omniglyph، دروازه وفاداری بهازای هر مرحله، GCF v3.2، ویرایشگر کشیدن و ترتیبدهی. → Compression
- 🕵️ رمزگشایی شفاف MITM (TPROXY) — ضبط CLIهایی که متغیرهای محیطی پروکسی را نادیده میگیرند، با CA بهازای هر SNI + نصبکننده trust-store. → MITM/TPROXY
- 💸 تلهمتری هزینه در همهجا — هدرهای هزینه/مصرف
X-OmniRoute-*روی هر endpoint، هدر صرفهجویی cache-HIT، سهمیههای هزینه دلاری بهازای هر کلید. → API Reference - 🧠 حافظهای که شما کنترل میکنید — بهطور پیشفرض خاموش، کوانتیزاسیون برداری int8 اختیاری + فرسایش نوعدار،
x-omniroute-no-memoryبهازای هر درخواست. → Memory - 🛡️ امنیت — محافظ تزریق پرامپت روی هر مسیر LLM (مجموعه red-team)، گاردریل اختیاری پوشاندن اعتبارنامه (کلیدهای API/اسرار لو رفته را در هر دو جهت حذف میکند)، جستوجوی وب آخرینراهحل رایگان DuckDuckGo، و یک دروازه ورود OIDC اختیاری برای داشبورد (ورود با رمز عبور همیشه در دسترس میماند). → Guardrails
- 🖼️ endpointهای جدید —
/v1/ocr(Mistral OCR) و/v1/audio/translations(به سبک Whisper) سطح رسانه را کامل میکنند. → API Reference - 🎨 تولید تصویر / ویدئو / صدا — یک API برای رسانه: ویدئوی xAI Grok Imagine و Novita AI، ComfyUI، Magnific، Adobe Firefly، Segmind، و ارائهدهندگان گفتار مانند ElevenLabs. → API Reference
- 🌍 استقرار و عملیات —
basePathپروکسی معکوس، تشخیص خودکار زبان مرورگر، ردیابی دستگاه بهازای هر کلید، اعتماد MITM بدون root، بومیسازی zh-TW. → Environment - 🤝 ارائهدهندگان و عاملهای بیشتر — عاملهای ابری (Codex Cloud، Cursor، Devin، Jules)، Grok Build (xAI) با ورود مرورگر + OAuth، کارت درجهیک Ollama، Claude Opus 5 و Sonnet 5، همکاری رسمی Kimi (Code/Web/Moonshot)، Zed، Requesty، SenseNova، Yuanbao، Agnes AI… و یک کاتالوگ ۳۷۷ ارائهدهندهای بازآوریشده. → Providers
- 📡 شفافیت مسیریابی — هر پاسخ یک هدر
X-OmniRoute-Decisionحمل میکند که استراتژی/ارائهدهنده/تأخیرِ سروکننده را نام میبرد، یک استراتژی ترکیبی جدیدcache-optimized+ عاملcacheAffinityدر Auto-Combo درخواستهای تکراری را به اتصالی که پیشوند کششده را نگه داشته بازمیگرداند، و یک endpoint فقطخواندنی/v1/auto-combo/{channel}/candidatesاستخر کاندیدهای زنده یک کانالauto/*را آشکار میکند. → Auto-Combo - ⚡ عملکرد و زیرساخت محلی — راهاندازی Redis محلی با یک کلیک، استقراردهندههای رله برای Cloudflare Workers / Deno Deploy و سرویسهای تعبیهشده Bifrost و Mux با نظارت داخلی. ← سرویسهای تعبیهشده
- 🧩 امکانات دیگری که در اختیار دارید — چارچوب افزونه + بازارچه، چارچوبهای مهارت Omni/Agent/GitHub، یکپارچهسازی مخزن Obsidian (با ۲۲ ابزار MCP)، APIهای Batch و Files سازگار با OpenAI، کش معنایی پاسخها، بازیوارسازی همراه با جدولهای امتیازات، کشف عاملهای ACP (شامل ۱۵ عامل داخلی)، خروجیگیری زمانبندیشده از گزارشها به BigQuery، توزیع موازی چندمدلی
auto/chaos، پل ربات Telegram، مدیر نسخه درونبرنامهای و رتبهبندی ارائهدهندگان رایگان LMArena-ELO. ← مستندات
یک پیکربندی -
http://localhost:20128/v1- و** هر** AI IDE یا CLI روی مدلهای رایگان و کمهزینه اجرا میشود.
Codex CLI |
Cline |
کد |
کد باغ وحش |
ادامه |
|
ForgeCode |
jcode |
DeepSeek TUI |
CodeWhale |
OpenCode |
|
کارخانه دروید |
Copilot CLI |
Cursor CLI |
Grok ساخت |
||
عامل هرمس |
OpenClaw |
باز مترجم |
Warp AI |
دیین.آی |
📖 راه اندازی هر ابزار برای همه 38 ابزار (27 CLI Code's + 11 CLI Agents) → docs/reference/CLI-TOOLS.md · 🧩 OpenCode → @omniroute/opencode-provider
هر CLI پشتیبانی شده را از طریق OmniRoute در یک دستور راه اندازی کنید - هیچ فایل پیکربندی نوشته نشده است، اعتبارنامه در هر فرآیند تزریق می شود، Qwen/Gemini یک خانه جدا شده دور ریخته می شود:
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"
# Or pick provider+model interactively and write the tool's own config:
omniroute configure codex # also: claude opencode qwen aider goose gemini cline continue kilo 5diveهر دستوری به زمینه فعال راه دور (omniroute connect <host>) احترام میگذارد، --dry-run env/args دقیق را بدون اجرا پیشنمایش میکند، و --api-key-env NAME اسرار را از تاریخچه پوسته شما دور نگه میدارد. → CLI ادغام
380 ارائهدهنده ثبتشده در مجموعههای رسمی چت، رسانه، جستوجو، محلی، عامل ابری و سیستم، از جمله 153 مورد دارای فراداده اکتشافی
hasFree: true. رجیستری مدلهای چت شامل 239 ارائهدهنده / 3,059 جفت متمایز ارائهدهنده-مدل / 1,475 شناسه خام مدل است؛ کاتالوگ جداگانه بودجه رایگان نیز دارای 471 ردیف بهازای هر مدل، 34 مخزن دورهای و 52 ارائهدهنده رایگان همیشگیِ دورهای/بدون کلید است. این مخرجها عمداً متفاوتاند؛ تعاریف و محاسبات با حذف مخزنهای تکراری در مرجع ارائهدهندگان و سطوح رایگان آمدهاند.
OpenAI |
Anthropic |
Gemini |
xAI Grok |
DeepSeek |
Mistral |
Qwen |
Meta Llama |
Groq |
NVIDIA |
MiniMax |
Cohere |
Perplexity |
HuggingFace |
Together |
Fireworks |
Cloudflare |
Baidu |
…و بیش از 350 مورد دیگر — هر نماد بهصورت زنده از کاتالوگ ارائهدهندگان داشبورد بارگیری میشود. 📖 مرجع ارائهدهندگان
📖 فهرست کامل قابلخواندن توسط ماشین ← docs/reference/PROVIDER_REFERENCE.md
diegosouzapw/omniroute را مشارکت دهیدهمان برنامه، دستگاه شما، قوانین شما. از نصب جهانی npm تا** گوشی شما** از طریق Termux
| پلت فرم | نصب | نکات |
|---|---|---|
| 📦 npm (جهانی) | npm نصب -g omniroute | یک دستور، هر OS |
| ⚡ Bun (جهانی) | bun افزودن -g omniroute | همان رجیستری تربال، نصب سریعتر |
| 🐳 Docker | | AMD64 + ARM64 |
| 🖥️ رومیزی (Electron) | npm اجرا الکترون: ساخت | سینی سیستم پنجره بومی + — Windows / macOS / Linux |
| 🎩 منو نوار (OmniRouteTray) | brew install --cask zoispag/tap/omniroute-tray | نظارت & سرور را بهروزرسانی خودکار میکند — macOS |
| 💪 ARM | native arm64 | رزبری پای، سرورهای ARM ، Apple Silicon |
| 📱 اندروید (Termux) | pkg نصب nodejs && npx -y omniroute | روی گوشی شما اجرا می کند , 24/7, بدون root |
| 📲 PWA | "افزودن به صفحه اصلی" | تمام صفحه، آفلاین، قابل نصب از مرورگر |
| 🧩 OpenCode | @omniroute/opencode-provider | OpenCode بومی |
| 🤖 VS کد Copilot چت | نصب OmniCopilot پسوند | هر مدل OmniRoute در انتخابگر چت بومی Copilot — پایدار & خودی |
| 🛠️ از منبع | npm نصب && npm اجرا dev | روی آن هک کنید، |
Docker📖 zqc · رومیزی · سینی نوار منو · Termux · PWA · OpenCode
بدون نوار کناری جدید، بدون چت جدید UI - هر مدلی که OmniRoute سرویس میدهد درست در آن نشان داده میشود** انتخابگر مدل چت Copilot که قبلاً استفاده میکنید** . از کد VS 1.122، مدلهای ارائهدهنده بدون ورود به سیستم GitHub یا اشتراک Copilot - حالت عامل، تماس ابزار و دید، به صورت رایگان کار میکنند.
را نصب کنید** OmniCopilot** برنامه افزودنی، آن را به سمت سرور OmniRoute خود قرار دهید (به طور پیش فرض روی localhost:20128)، سپس Copilot Chat را باز کنید → model picker →** مدیریت مدل ها…** →OmniRoute .
| لینک | با | |
|---|---|---|
| 🧩 VS بازار | نصب → | |
| 🔓 باز کردن رجیستری VSX | → |
از داخل ویرایشگر: باز کنید** برنامه های افزودنی** مشاهده، جستجو** "OmniRoute"** ، کلیک کنید** نصب کنید** - در هر دو فروشگاه یکسان کار می کند. منبع، مسائل و رانبوک انتشار زنده در diegosouzapw/OmniCopilot.
📖 VS کد Copilot راهنمای چت - راهاندازی، آنچه انتخابگر نشان میدهد، داشبورد در یک تب، عیبیابی
omniroute serveزمانی که همیشه روشن است خوشحال است.** OmniRouteTray** آن را به یک برنامه نوار منوی تنظیم و فراموش کردن برای macOS تبدیل میکند: سرور را راهاندازی میکند، آن را در طول راهاندازی مجدد زنده نگه میدارد، آن را در جای خود بهروزرسانی میکند و بودجه رمز زنده شما را با یک کلیک دورتر میکند -** بدون پنجره ترمینال باز مانده است، هیچnpm install -g omnirouteبرای نگهداری از کودکان وجود ندارد.**
ساخته شده با Tauri v2 (هسته Rust به اندازه یک خطای گرد کردن)، زمان اجرا Node 24 امضا شده خود را ارسال می کند و نصب OmniRoute متعلق به برنامه را مدیریت می کند، بنابراین هرگز با node/bun جهانی شما مبارزه نمی کند. آن را** پیکربندی ~/.omniroute/ و پایگاه داده موجود شما را به اشتراک می گذارد** - پس همان OmniRoute است که قبلاً می دوید، فقط با یک کلاه. 🎩
| چه می کند | چگونه |
|---|---|
| 🟢 بر سرور نظارت میکند | omniroute خدمت را ایجاد میکند، به جای کپی کردن |
| 📊 استفاده زنده در یک نگاه | نوارهای سهمیه ارائه دهنده، محدودیت Claude session/weekly با شمارش معکوس بازنشانی، تفکیک هزینه 30 روزه |
| 🔄 بهروزرسانیهای خودکار در محل | نصب مرحلهای، تعویض اتمی، برگشت در صورت شکست - همیشه در جدیدترین نسخه |
| 🚀 شروع در ورود | راه اندازی اختیاری در هنگام ورود. فقط سینی، بدون داک آیکون |
| 🩺 Doctor & logs | تشخیص با یک کلیک و دسترسی به گزارش سرور |
brew install --cask zoispag/tap/omniroute-tray دانلود را ترجیح می دهید؟ جدیدترین .dmg را بگیرید
را منتشر می کند. منبع، مسائل و ساخت
اسناد در zoispag/omniroute-tray زندگی می کنند.
💛 یک پروژه اجتماعی توسط @zoispag — یک نسخه رسمی OmniRoute نیست.
فراتر از سرور، OmniRoute یک مرکز کنترل کامل خط فرمان با بیش از 80 فرمان است و در کنار آن، پروتکلهای باز عامل را ارائه میدهد تا یک عامل هوش مصنوعی بتواند بهطور مستقل آن را کنترل کند.
omniroute # اجرای درگاه + داشبورد (پورت 20128)
omniroute chat # کلاینت گفتوگوی تعاملی TUI (دستورهای اسلش: /model /combo /skill /memory)
omniroute setup # راهانداز هدایتشده برای نخستین اجرا
omniroute doctor # عیبیابی ارائهدهندگان، پورتها و وابستگیهای بومیOmniRoute روی یک سرور است؟ آن را از لپتاپ خود با همان رابط خط فرمان کنترل کنید. کافی است یکبار با یک توکن دسترسی دارای دامنه وارد شوید؛ پس از آن، همه فرمانها سرور راه دور را هدف میگیرند.
omniroute connect 192.168.0.15 # گذرواژه ← توکن دارای دامنه، ذخیرهشده بهعنوان یک زمینه
omniroute models # ← روی سرور راه دور اجرا میشود
omniroute configure codex # ← یک مدل راه دور را انتخاب و یک پروفایل محلی Codex ایجاد میکند
omniroute tokens create --name ci --scope read # ایجاد توکنهایی با دسترسی محدودتر برای دستگاههای دیگر
omniroute contexts use default # ← بازگشت به سرور محلیتوکنها دارای دامنههای read / write / admin هستند؛ مسیرهایی که فرایند اجرا میکنند، فقط به loopback محدود میمانند.
📖 حالت راه دور
OmniRoute را از طریق MCP، A2A، یک REST API، وبهوکها یا یک رابط خط فرمان راه دور در دسترس قرار دهید — هر عامل توانمند (یا کد خودتان) کلیدهای کنترل تمام درگاه را به دست میآورد: مسیریابی، ارائهدهندگان، ترکیبها، حافظه نهان، فشردهسازی و حافظه — بهصورت خودکار. نقاط پایانی HTTP زیر در http://localhost:20128 ارائه میشوند.
| رابط | نقطه پایانی / فرمان | کاربرد |
|---|---|---|
| 🧰 MCP (stdio) | omniroute --mcp | اتصال به Claude Desktop، Cursor یا هر کلاینت MCP |
| 🌊 MCP (HTTP) | /api/mcp/stream | MCP راه دور — 110 ابزار، 33 دامنه (اعمال محدودیت اختیاری)، ردپای ممیزی کامل |
| 📡 MCP (SSE) | /api/mcp/sse | انتقال جریانی MCP |
| 🤝 A2A | /.well-known/agent.json | ارتباط عاملبهعامل، JSON-RPC 2.0 + SSE، با 6 مهارت |
| 🌐 REST API | /v1/* | سازگار با OpenAI — گفتوگو، تعبیهها، تصاویر، صدا و OCR |
| 🔔 وبهوکها | /api/webhooks | ارسال رویدادهای درخواست / سهمیه به Slack، Discord، Telegram یا هر URL |
| 🛰️ رابط خط فرمان راه دور | omniroute connect | کنترل یک نمونه راه دور با توکنهای دسترسی دارای دامنه |
# ارائه مجموعه کامل ابزارهای OmniRoute به Claude Code از طریق MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream📖 سرور MCP · سرور A2A · پروتکلهای عامل
ترکیب انباشته پیشفرض RTK → Caveman را اجرا میکند. وقتی هر دو روی همان بار داده ابزار/زمینه اثر میگذارند، صرفهجوییها انباشته میشوند:
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%بلوکهای کد، URLها، JSON و دادههای ساختیافته همیشه توسط موتور حفظ محتوا محافظت میشوند.
چرا از توکنهای زیاد استفاده کنیم وقتی چند توکن کار را انجام میدهد؟ هر درخواست بهصورت شفاف از خط لوله فشردهسازی OmniRoute عبور میکند — بدون هیچ تغییری در کلاینت. این حالا یک پشته از ۱۲ موتور ترکیبپذیر است که به ترتیب اجرا میشوند و برای هر ترکیب مسیریابی بهصورت دلخواه ترکیب و تطبیق میشوند — با تکیه بر ایدههایی از RTK، Caveman (⭐ ۹۰K+)، LLMLingua-2 و Troglodita (PT-BR).
موتورها به ترتیب خط لوله اجرا میشوند؛ هرکدام بهصورت مستقل قابل روشن/خاموش شدن و پیکربندی برای هر ترکیب است:
| # | موتور | چه کاری انجام میدهد |
|---|---|---|
| 1 | Session-Dedup | محتوای تکرارشده در طول نوبتها را حذف میکند (مبتنی بر محتوا، بیننوبتی) |
| 2 | CCR | بلوکهای بزرگ را پشت نشانگرهای بازیابی بایگانی میکند و در صورت نیاز واکشی میشوند |
| 3 | Lite | پیرایش فضای خالی + URL تصویر (پایه سبک از نظر تأخیر) |
| 4 | RTK | فیلتر هوشمند نتایج ابزار، حذف تکراری و کوتاهسازی (آگاه از دستور) |
| 5 | Responses Tool Output | فشردهسازی JSON با اولویت بیاتلاف + فشردهسازی تشخیصی محدود برای خروجیهای shell/patch/search/build (Responses API) |
| 6 | Headroom | فشردهسازی بیاتلاف جدولی آرایههای JSON (~۳۰٪) از طریق کدک GCF درونسازمانی |
| 7 | Relevance | امتیازدهی جمله استخراجی در برابر آخرین پرسش کاربر |
| 8 | Caveman | فشردهسازی نثر مبتنی بر قواعد (~۶۵–۷۵٪ روی خروجی) |
| 9 | Aggressive | خلاصهسازی + کهنهسازی تدریجی نوبتهای قدیمی |
| 10 | LLMLingua-2 | هرس معنایی ML از طریق MobileBERT ONNX — ایمن برای کد، async |
| 11 | Ultra | هرس توکن اکتشافی با لایه اختیاری مدل کوچک (SLM) |
| 12 | OmniGlyph | کدگذاری آزمایشی زمینه بهصورت تصویر برای Claude Fable 5 سنجیدهشده روی مسیر مستقیم Anthropic؛ ترنسفورمرهای GPT 5.6 تا دریافت رسیدهای ارائهدهنده fail-closed باقی میمانند. چهار پروفایل فشردهسازی (پیشفرض aggressive، balanced، coding-safe، passthrough) (تهاجمیترین؛ opt-in) |
بلوکهای کد، URLها و دادههای ساختیافته همیشه بایتبهبایت حفظ میشوند. پیشتنظیمهای یککلیکی موتورها را ترکیب میکنند:
| حالت | صرفهجویی | مناسب برای |
|---|---|---|
| 🪶 Lite | ~۱۵٪ | پیشفرض ایمن همیشهفعال |
| 🪨 Standard (Caveman) | ~۳۰٪ | کدنویسی روزمره |
| ⚡ Aggressive | ~۵۰٪ | نشستهای طولانی پرمصرف ابزار |
| 🔥 Ultra | ~۷۵٪ | حداکثر صرفهجویی |
| 🧰 RTK | ۶۰–۹۰٪ | خروجی shell/test/build/git |
| 🔗 Stacked (RTK → Caveman) | ۷۸–۹۵٪ | پرامپتهای ترکیبی + لاگهای ابزار |
مثال واقعی — حالت Standard:
قبل (۶۹ توکن): "دلیل رندر مجدد کامپوننت React شما احتمالاً این است که در هر چرخه رندر یک ارجاع شیء جدید میسازید. وقتی یک شیء درونخطی را بهعنوان prop پاس میدهید، مقایسه سطحی React هر بار آن را شیئی متفاوت میبیند و این باعث رندر مجدد میشود. پیشنهاد میکنم از useMemo برای memoize کردن شیء استفاده کنید."
بعد (۱۹ توکن): "ارجاع شیء جدید در هر رندر. prop شیء درونخطی = ارجاع جدید = رندر مجدد. آن را در useMemo بپیچید."
همان پاسخ. ۷۲٪ توکن کمتر. صفر افت دقت. ✅
مثال PT-BR — حالت Troglodita:
قبل (42 توکن): «مشکل این است که کامپوننت دوباره رندر میشود، چون در هر چرخه رندر یک مرجع شیء جدید ساخته میشود. پیشنهاد میکنم از useMemo استفاده کنید.»
بعد (12 توکن): «رندر مجدد: مرجع جدید در هر چرخه (شیء inline بازساخته میشود). استفاده از
useMemo.»همان پاسخ. ~70% توکن کمتر. دقت فنی دستنخورده. ✅
۱۲ موتور بالا چیزی را که داخل میرود کوچک میکنند. سه لایه دیگر شکل چگونگی، زمان و آنچه بیرون میآید را تعیین میکنند:
- 🪄 سبکهای خروجی (هدایت محور خروجی) — دستورهای قطعی و ایمن نسبت به کش را برای شکلدهی به پاسخ تزریق میکنند؛ قابل ترکیب، هرکدام با شدت
lite/full/ultra. افزودن یک سبک فقط یک خط ورودی در رجیستری است:- نثر موجز — حذف حشو / حروف تعریف / عبارات احتیاطی؛ حفظ دقیق محتوای فنی.
- کد کمتر — YAGNI به سبک «توسعهدهنده ارشد تنبل»: کوچکترین تغییر کارآمد، بدون داربست ناخواسته.
- Ponytail (توسعهدهنده ارشد تنبل) — از نردبان YAGNI بالا برو، علت ریشهای را برطرف کن، کوچکترین diff کارآمد.
- من ADHD دارم (اولویت با اقدام) — اقدام بعدی در صدر، مراحل شمارهگذاریشده، یک گام بعدی مشخص، بدون مقدمه.
- CJK موجز (文言) — سبک فوقموجز چینی کلاسیک (محدود به locale
zh).
- 🎯 بودجه زمینه تطبیقی (پیچ تنظیم) — بهجای یک آستانه توکن روشن/خاموش، ارزانترین و کمریزترین موتورها را فقط تا حدی که برای جا شدن در پنجره زمینه مدل لازم است بالا ببر. سیاست:
reserve-output(پیشفرض، مدلآگاه) ·percentage·absolute. حالت:floor(تضمین جا شدن) ·replace-autotrigger(انتخاب صریح شما حاکم است) ·off(آستانه قدیمی). - 🎛️ تصمیم فشردهسازی کجا گرفته میشود (اولویت، بالا → پایین) — هدر
x-omniroute-compressionدر هر درخواست › بازنویسی ترکیب مسیریابی › پروفایل نامدار فعال › تطبیقی / تریگر خودکار › پیشفرض پنل › خاموش. طرح اعمالشده در هدر پاسخX-OmniRoute-Compression: <mode>; source=<source>بازتاب مییابد.
تریگر خودکار بر اساس آستانه توکن، روشن کردن پیچ تنظیم تطبیقی، سنجاق کردن یک پروفایل نامدار، تنظیم یکبارمصرف برای هر درخواست، یا تخصیص یک خط لوله به هر ترکیب مسیریابی — هرکدام که با بار کاری سازگارتر است. یک هارنس ارزیابی آفلاین اختیاری (npm run eval:compression) وفاداری را در برابر صرفهجویی روی یک پیکره ثابت میسنجد، پیش از آنکه تغییری را ارتقا دهید.
📖 COMPRESSION_GUIDE.md · RTK_COMPRESSION.md · COMPRESSION_ENGINES.md
1) نصب و اجرا
npm install -g omniroute
omniroute💡 خطای
npm warn ERESOLVEیا هشدارهای peer-dep را میبینید؟ بیخطر هستند. از npm 11 یا جدیدتر استفاده میکنید؟ npm ممکن است اسکریپتهای چرخه عمر بستهها را مسدود کند مگر اینکه مجاز شوند.postinstallدر OmniRoute (node scripts/build/postinstall.mjs) برای آمادهسازی فایلهای زماناجرای بومی آن لازم است. هنگام نصب سراسری، بستههایی را که در هشدار npm نام برده شدهاند مجاز کنید. برای مجموعه بستهای که OmniRoute 3.8.53 گزارش میدهد:npm install -g --allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild omnirouteبرای استفاده مجدد از این فهرست مجاز در نصبهای سراسری آینده، یکبار آن را پیکربندی کنید و سپس بهطور عادی نصب کنید:
npm config set allow-scripts=omniroute,keytar,onnxruntime-node,@parcel/watcher,@swc/core,protobufjs,esbuild --location=user npm install -g omnirouteفهرست وابستگیها ممکن است بین نسخهها تغییر کند؛ اگر npm فهرست متفاوتی گزارش داد، از نام بستههای همان هشدار استفاده کنید. مجاز کردن یک بسته اجازه اجرای اسکریپتهای نصب آن را میدهد. از Gemini Web یا ارائهدهنده دیگری با کوکی وب استفاده میکنید؟ بسته npm شامل Playwright هست، ولی باینری Chromium آن را ندارد. پیش از نخستین درخواست به ارائهدهنده وب، یادداشت راهاندازی Playwright Chromium را ببینید.
داشبورد در http://localhost:20128 · API در http://localhost:20128/v1.
2) اتصال یک ارائهدهنده واجد شرایط با حساب خودتان
داشبورد → Providers → ارائهدهندهای را انتخاب کنید که شرایط و سهمیه فعلیاش با کاربرد شما سازگار است → کلید API آن را اضافه کنید یا فرایند حساب آن را کامل کنید. سطوح رایگان ممکن است نیازمند ثبتنام، تأیید یا روش پرداخت باشند. راهنمای سطوح رایگان را مرور کنید؛ در دسترس بودن بدون کلید تضمینشده نیست و ارائهدهندگانی که با tos: avoid علامت خوردهاند بهطور پیشفرض از auto کنار گذاشته میشوند.
3) ابزار کدنویسی خود را وصل کنید
Base URL: http://localhost:20128/v1
API Key: [copy from Dashboard → Endpoints]
Model: auto (routes among eligible connections — or choose provider/model)4) بررسی کارکرد
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"باید مدلهای متصل خود را در فهرست ببینید. 🎉 همین است — شروع به کدنویسی کنید و OmniRoute بهطور خودکار مسیریابی و fallback را برایتان انجام میدهد.
اگر کلاینت شما نمیتواند هدرهای سفارشی ارسال کند، OmniRoute نامهای مستعار سازگاری توکنیزهشده را نیز ارائه میدهد:
OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/
OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models
OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tagsاز اینها فقط برای کلاینتهایی استفاده کنید که نمیتوانند Authorization: Bearer ... را ضمیمه کنند. احراز هویت با هدر همچنان حالت ترجیحی است.
🐳 Docker
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest:latest بالاترین نسخهٔ پایدار SemVer منتشرشده را دنبال میکند. این برچسب git main را دنبال نمیکند. برای GitOps، نسخه را روی :X.Y.Z ثابت کنید. به کانالهای انتشار Docker مراجعه کنید. ایمیج مقدار OMNIROUTE_MEMORY_MB=1024 را ثابت تنظیم میکند. این مقدار برای داشبورد و یک گفتوگوی سبک کافی است. عاملهای کدنویسی (POST /v1/responses از Claude Code، Codex، Grok و …) به heap بسیار بزرگتری برای V8 نیاز دارند؛ در غیر این صورت، با دو context طولانی همپوشان، پردازش در حدود ۱۲ گیگابایت با FATAL ERROR مواجه میشود. اندازهٔ کانتینر را بیشتر از heap در نظر بگیرید (بافرهای native خارج از V8 قرار دارند):
| بار کاری | Heap (-e OMNIROUTE_MEMORY_MB) |
کانتینر (--memory) |
|---|---|---|
| داشبورد / گفتوگوی سبک | 1024 (پیشفرض ایمیج) |
≥2 g |
| یک عامل کدنویسی | 8192 |
≥10 g |
دو /v1/responses طولانی همزمان |
10240–12288 |
≥12–16 g |
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-e OMNIROUTE_MEMORY_MB=8192 --memory=10g \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latestجدول کامل: راهنمای Docker — RAM زمان اجرا.
کانال پیشانتشار Docker: برچسبهای
diegosouzapw/omniroute:nextوdiegosouzapw/omniroute:next-webشاخهٔ پیشفرض فعلیrelease/v*را دنبال میکنند. این برچسبهای تغییرپذیر فقط برای آزمایش اصلاحات منتشرنشده در نظر گرفته شدهاند و برای محیط production پشتیبانی نمیشوند. به کانالهای انتشار Docker مراجعه کنید.
🥟 Bun
دستور استاندارد bun install و نصب سراسری (bun install -g omniroute) از طریق تشخیص runtime مربوط به Bun پشتیبانی میشوند:
bun:sqliteداخلی: هنگام اجرا تحت Bun، OmniRoute از درایور داخلیbun:sqliteمتعلق به Bun استفاده میکند و در Node.js یاsql.jsبهbetter-sqlite3بازمیگردد.- انتخاب خودکار bundler مبتنی بر Webpack در محیط توسعه: محیط توسعه (
bun run dev) بهطور خودکار Bun را تشخیص میدهد و برای جلوگیری از ناسازگاریهای binding بومی V8، Turbopack را به نفع Webpack غیرفعال میکند. buildهای production (bun run build) دقیقاً مانند Node ازOMNIROUTE_USE_TURBOPACKپیروی میکنند: بهصورت پیشفرض Turbopack و باOMNIROUTE_USE_TURBOPACK=0، ساخت با Webpack انجام میشود (Dockerfile.bunآن را بهصورت یک--build-argارائه میکند). - Dockerfile اختصاصی Bun: فایل چندمرحلهای
Dockerfile.bunبرای استقرارهای production بومی Bun (docker build -f Dockerfile.bun -t omniroute:bun .).
# نصب و اجرا با Bun
bun install
bun run dev🛠️ از کد منبع
cp .env.example .env && npm install
PORT=20128 npm run dev📦 pnpm
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute🐧 Arch Linux (AUR)
yay -S omniroute-bin && systemctl --user enable --now omniroute.service🔧 Nix (Flake)
# استفاده از Nix flakes
nix develop
npm run dev
# یا استفاده از devbox
devbox run npm run dev📖 راهنمای Docker — پروفایلهای Compose، Caddy HTTPS و tunnelهای Cloudflare.
🦭 Podman
# ۱. دایرکتوری دادهٔ bind-mounted را آماده کنید
mkdir -p data
# ۲. فقط Linux + Podman محلی و rootless (هرگز یک کلاینت remote از Podman Machine نباشد):
podman unshare chown 1000:1000 ./data
# ۳. راهنمای runtime را تنظیم کنید، ایمیج محلی Compose را بسازید و اجرا کنید
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --buildدر macOS یا Windows، Podman از یک Podman Machine از راه دور استفاده میکند: از podman unshare صرفنظر کنید و
راهنمای دایرکتوری داده متناسب با توپولوژی را دنبال کنید.
📖 راهنمای Podman — ساختهای Compose، Podman Machine و راهاندازی Quadlet در Linux/systemd.
⚡ نصب سریعتر / سبکتر (صرفنظر از build بومی)
موتور بومی SQLite (better-sqlite3) یک وابستگی اختیاری است؛ بنابراین نصب سراسری
هرگز منتظر کامپایل از کد منبع نمیماند: اگر binary ازپیشساختهشدهای با
پلتفرم/Node شما سازگار باشد، از آن استفاده میکند و در غیر این صورت، بهطور شفاف به یک موتور pure-JS
(node:sqlite در Node 22+، و در غیر این صورت sql.js WASM همراه بسته) بازمیگردد — بدون نیاز به ابزارهای build.
برای صرفنظر کامل از آمادهسازی بومی پس از نصب (در CI، محیطهای headless یا دستگاههای کند):
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 نیز از آن صرفنظر میکندبرای سریعترین نصبها، pnpm را ترجیح دهید (ذخیرهسازی content-addressed + لینکهای سخت — بخش بالا را ببینید).
برای runtime بدون داشبورد و headless، از پروفایل Docker با نام base (در بالا) یا
راهنمای Termux استفاده کنید. CLI و داشبورد وب توسط
همان پردازش و روی یک پورت ارائه میشوند؛ بنابراین در حال حاضر بستهٔ جداگانهای فقط برای CLI وجود ندارد.
نمایی از داشبورد در 2026-10-18 · فهرست خام: YT 1.352 | TT 334 | IG 290 · تازگی (روز): YT 5 | TT 48 | IG 49
رتبهبندی کامل (URLهای استانداردِ تکرارزداییشده، v > 0، بیشترین دسترسی):
| #1 | #2 | #3 | #4 | #5 |
|---|---|---|---|---|
| nick_saraev — Instagram — 3,042,474 | nnapier7 — Instagram — 1,454,535 | Amidia AI & Tech — YouTube — 794,974 | theopenstack — Instagram — 692,419 | migue.baena — TikTok — 685,788 |
| #6 | #7 | #8 | #9 | #10 |
|---|---|---|---|---|
| milesreevesai — TikTok — 620,400 | nikothetech — TikTok — 610,803 | Vaibhav Sisinty — YouTube — 509,281 | buildwithai.club — Instagram — 347,652 | nivedan.ai — Instagram — 331,973 |
معیارهای استاندارد در 2026-10-18: 1.976 ویدیوی منحصربهفرد · 20.220.289 بازدید شناختهشده (v > 0) · 1.210 کانال/پروفایل در شبکهها. داشبورد خام شامل 1.976 ردیف است (YouTube 1.352 = 740 ویدیوی بلند + 612 Shorts · TikTok 334 · Instagram 290)؛ پس از نرمالسازی بر اساس URL استاندارد، هیچ مورد تکراری باقی نمانده است؛ این فرایند بالاترین تعداد بازدید را برای هر ویدیو حفظ میکند. گردآوری دادههای YouTube در 2026-10-13 متوقف شده است (سهمیه API از 14 تا 18/10 تمام شده بود) و دادههای TikTok/Instagram نیز از 2026-09-02 بهروزرسانی نشدهاند (بهدلیل نبود اعتبار برای گردآوری)؛ 76 ویدیو همچنان فاقد تعداد بازدید هستند.
🎬 درباره OmniRoute ویدیو ساختهاید؟ یک ایشو یا گفتوگو همراه با لینک ایجاد کنید — آن را اینجا معرفی خواهیم کرد.
همهچیز در یک مکان — نگهدارنده را دنبال کنید، با اعضای انجمن گفتوگو کنید یا یک ایشو ایجاد کنید.
| کانال | کجا / چگونه |
|---|---|
| 💼 LinkedIn — دنبالکردن نگهدارنده | linkedin.com/in/diegosouzapw |
| 🐙 GitHub — دنبالکردن برای انتشارها و نکات | @diegosouzapw |
| 💬 Discord | discord.gg/U47eFqAXCn |
| t.me/omnirouteOficial | |
| 🟢 WhatsApp — 🌍 جهانی | پیوستن به گروه |
| 🟢 WhatsApp — 🇧🇷 برزیل | پیوستن به گروه |
| 🌍 وبسایت | omniroute.online |
| 🌍 🌍 انجمن OmniRoute در StHub (رایگان) | پرتال StHub |
| 📦 کد منبع | github.com/diegosouzapw/OmniRoute |
| 🐛 گزارش یک اشکال | ایجاد یک issue — خروجی npm run system-info را پیوست کنید |
| 🤝 مشارکت | CONTRIBUTING.md · مدل شاخهبندی و انتشار · یک good first issue انتخاب کنید |
| 💚 حمایت از پروژه | روشهای حمایت ↑ · حامیان GitHub |
| لایه | فناوری |
|---|---|
| زمان اجرا | Node.js 22.x / 24.x LTS — >=22.22.2 <23 || >=24.0.0 <27 |
| زبان | TypeScript 6.0 — 100% TypeScript در سراسر src/ و open-sse/ (بدون هیچ any در هسته از نسخهٔ v2.0) |
| چارچوب | Next.js 16 + React 19 + Tailwind CSS 4 |
| پایگاه داده | better-sqlite3 (SQLite، ژورنالنویسی WAL) + LowDB (JSON قدیمی) — 147 ماژول دامنه، 219 مهاجرت |
| حافظه | SQLite FTS5 متن کامل + جاسازیهای برداری کوانتیزهشدهٔ int8، افت نوعدار |
| طرحوارهها | Zod 4 — اعتبارسنجی ورودی/خروجی ابزار MCP + قراردادهای API |
| پروتکلها | MCP (stdio / HTTP / SSE) + A2A v0.3 (JSON-RPC 2.0 + SSE) |
| استریمینگ | Server-Sent Events (SSE) + پل WebSocket (/v1/ws) |
| فشردهسازی | خط لولهٔ ۱۲ موتوره — RTK، Caveman، LLMLingua-2 (MobileBERT ONNX)، GCF، OmniGlyph |
| احراز هویت و امنیت | OAuth 2.0 (PKCE) + JWT + کلیدهای API + احراز هویت محدودهدار MCP · AES-256-GCM در حالت سکون · DOMPurify |
| پنهانکاری | wreq-js — جعل اثر انگشت TLS با JA3 / JA4، پروکسی سهسطحی |
| مقاومت | قطعکنندهٔ مدار، عقبنشینی نمایی، ضد گلولهٔ رعدآسا، خودترمیمی ترکیب خودکار |
| گزارشگیری | pino — گزارشهای JSON ساختاریافته با زمینهٔ درخواست |
| آزمونسازی | اجراکنندهٔ آزمون Node.js + Vitest — 56,000+ اعلان آزمون ایستا در بیش از 7,800 فایل آزمون ردیابیشده (واحد، یکپارچگی، E2E، امنیت، اکوسیستم) |
| پلتفرمها | دسکتاپ (Electron) · اندروید (Termux) · PWA (هر مرورگر) |
| CI/CD | GitHub Actions — انتشار خودکار npm + Docker Hub هنگام انتشار |
| پیوندها | وبسایت · npm · Docker Hub |
| سند | توضیحات |
|---|---|
| راهنمای کاربر | ارائهدهندگان، ترکیبها، یکپارچهسازی CLI و استقرار |
| راهنمای راهاندازی | روشهای کامل نصب، پیکربندی ابزارهای CLI، راهاندازی پروتکل و تنظیم زمان انتظار |
| راهنمای ابزارهای CLI | راهاندازی جداگانه هر ابزار برای Claude Code، Codex، Cursor، Cline، OpenClaw، Kilo و Copilot |
| حالت راه دور | کنترل یک OmniRoute راه دور (VPS) از CLI لپتاپ شما از طریق توکنهای دسترسی با دامنه محدود |
| پیکربندی Claude Code | اتصال Claude Code به OmniRoute (محلی/راه دور) با launch و پروفایلهای مختص هر مدل |
| شروع سریع | نصب ۳ مرحلهای ← اتصال ← پیکربندی |
| سند | توضیحات |
|---|---|
| راهنمای Docker | اجرای Docker، پروفایلهای Compose، HTTPS با Caddy، تونلها و تگهای ایمیج |
| راهنمای Podman | یکپارچهسازی Quadlet با systemd، podman-compose و SELinux |
| استقرار روی VM | راهنمای کامل: راهاندازی VM، nginx و Cloudflare |
| استقرار روی Fly.io | استقرار روی Fly.io با فضای ذخیرهسازی پایدار |
| راهنمای Termux | اجرای OmniRoute روی Android از طریق Termux |
| راهنمای PWA | نصب برنامه وب پیشرونده، کشکردن و معماری |
| راهنمای حذف نصب | حذف کامل برای همه روشهای نصب |
| پیکربندی محیط | متغیرها و مراجع کامل .env |
| سند | توضیحات |
|---|---|
| معماری | معماری سیستم، جریان داده و سازوکارهای داخلی |
| راهنمای فشردهسازی | خط لوله ۷ گزینهای: off / lite / standard / aggressive / ultra / RTK / stacked |
| فشردهسازی RTK | فشردهسازی خروجی فرمان، فیلترها، اعتماد، تأیید و بازیابی خروجی خام |
| موتورهای فشردهسازی | Caveman، RTK، خطوط لوله انباشته و رابطهای داشبورد/API/MCP |
| قالب قوانین فشردهسازی | طرحوارههای بسته قوانین JSON برای فیلترهای Caveman و RTK |
| بستههای زبانی فشردهسازی | تشخیص زبان و نگارش بسته قوانین Caveman |
| راهنمای تابآوری | مدارشکنها، دورههای انتظار، صف، جلوگیری از هجوم همزمان درخواستها و جعل TLS |
| موتور Auto-Combo | امتیازدهی ۱۶ عاملی، بستههای حالت و خودترمیمی |
| راهنمای پروکسی | سیستم پروکسی ۳ سطحی، بازار 1proxy و عملیات CRUD رجیستری |
| سطوح رایگان | فهرست تجمیعشده: ۳۴ مخزن تکرارشونده مستندشده / ۴۸۴ ورودی فهرستشده در سطح رایگان |
| گالری قابلیتها | تور تصویری داشبورد همراه با اسکرینشاتها |
| مستندات پایگاه کد | مرور گامبهگام پایگاه کد، مناسب برای تازهکاران |
| سند | توضیحات |
|---|---|
| مرجع API | همه نقاط پایانی همراه با مثالها |
| مشخصات OpenAPI | مشخصات OpenAPI 3.0 |
| سرور MCP | ۱۱۰ ابزار MCP، پیکربندیهای IDE و کلاینتهای Python/TS/Go |
| راهنمای سرور MCP | نصب MCP، روشهای انتقال و مرجع ابزارها |
| سرور A2A | پروتکل JSON-RPC 2.0، مهارتها، استریم و مدیریت وظایف |
| راهنمای سرور A2A | کارت عامل A2A، وظایف، مهارتها و استریم |
| سند | توضیحات |
|---|---|
| مشارکت | راهاندازی محیط توسعه و دستورالعملها |
| مدل شاخهبندی و انتشار | شاخههای مقصد PRها (release/*) و معنای main و برچسبها |
| گزارش تغییرات | تاریخچهٔ کامل انتشار برای هر نسخه |
| سیاست امنیتی | گزارش آسیبپذیریها و رویههای امنیتی |
| راهنمای i18n | پشتیبانی از 67 زبان، گردشکار ترجمه، RTL |
| چکلیست انتشار | مراحل اعتبارسنجی پیش از انتشار |
| برنامهٔ پوشش | راهبرد پوشش آزمون برای بیش از 56,000 اعلان آزمون ایستا در بیش از 7,800 فایل آزمون رهگیریشده |
OmniRoute بهدست جامعهای پرشور از نرمافزار آزاد شکل گرفته است. این افراد مشارکتهای استثناییای داشتهاند که مستقیماً بر کیفیت، پایداری و گسترهٔ دسترسی پروژه تأثیر میگذارد. سپاسگزاریم.
| رتبه | مشارکتکننده | PRهای ادغامشده | ~خطوط تغییریافته |
|---|---|---|---|
| 1 | maxmad64bis | 371 | 25,326,561 |
| 2 | HouMinXi | 269 | 13,456,272 |
| 3 | backryun | 210 | 270,562 |
| 4 | oyi77 | 190 | 411,243 |
| 5 | pacocartones | 174 | 78,276 |
| 6 | JxnLexn | 151 | 3,562,936 |
| 6 | KooshaPari | 151 | 5,972,314 |
| 8 | rdself | 145 | 80,663 |
| 9 | RaviTharuma | 123 | 500,065 |
| 10 | herjarsa | 88 | 230,872 |
| 11 | hartmark | 84 | 2,849,554 |
| 12 | jonlwheat2-gif | 67 | 68,548 |
| 13 | artickc | 62 | 43,502 |
| 14 | chirag127 | 52 | 6,661 |
| 15 | xz-dev | 50 | 245,976 |
| 16 | xiaoyaner0201 | 47 | 33,626 |
| 17 | woodsonl | 46 | 809,391 |
| 18 | rqzbeh | 44 | 147,896 |
| 19 | QuangBlue | 43 | 13,112 |
| 20 | MumuTW | 40 | 26,093 |
این سرشماری در 2026-10-18 15:09:09 UTC و با آخرین وضعیت زندهٔ release/v3.8.52 در 656f01cb43 انجام شده است. سرشماری صفحهبندیشدهٔ GitHub GraphQL شامل 9,191 درخواست کشش ادغامشده است: 3,834 مورد توسط مالک مخزن، 229 مورد توسط Dependabot، 6 مورد توسط سایر رباتها/برنامهها و 5,122 درخواست کشش خارجی از 835 مشارکتکنندهٔ متمایز. «خطوط تغییریافته» مجموع افزودهها و حذفهای GitHub است و فایلهای تولیدشده، lockfileها، کاتالوگها، ترجمهها و مستندات را نیز شامل میشود؛ این عدد میزان تغییرات است، نه LOC تألیفشده. برای 49 درخواست کشش، GitHub تفاوتهایی بیش از 500,000 خط گزارش کرده است (برای نمونه، #13399 که تنها یک ارائهدهنده را اضافه میکند، 2,347 فایل تغییریافته را فهرست میکند) و این موضوع چندین مجموع بالا را متورم کرده است. رتبهٔ موارد مساوی یکسان در نظر گرفته شده است.
|
Dizzle 🥇 367 کامیت منتسب به GitHub |
Bob.Hou 🥈 269 کامیت منتسب به GitHub |
Paijo 🥉 229 کامیت منتسب به GitHub |
backryun 🏅 202 کامیت منتسب به GitHub |
Paco Cartones 🏅 174 کامیت منتسب به GitHub |
Ravi Tharuma 🏅 126 کامیت منتسب به GitHub |
|
Markus Hartung 🏅 114 کامیت منتسب به GitHub |
Randi 🏅 108 کامیت منتسب به GitHub |
Jan Leon 🏅 87 کامیت منتسب به GitHub |
Chris 🏅 70 کامیت منتسب به GitHub |
Koosha Paridehpour 🏅 68 کامیت منتسب به GitHub |
بازبینی مجدد در 2026-10-18 14:44:45 UTC: کامیتهای منتسب به GitHub که توسط API مشارکتکنندگان مخزن برای شاخهٔ پیشفرض release/v3.8.52 گزارش شدهاند. این API تعداد 849 هویت (429 کاربر، 2 ربات و 418 ناشناس) را برگرداند؛ این جدول نگهدارنده، رباتها و هویتهای ناشناس را مستثنی میکند و رتبههای مساوی را حفظ میکند. این جدول هم با رتبهبندی PRهای ادغامشده در بالا و هم با سرشماری فرادادهٔ Git در پایین متفاوت است.
🙏 قابلیتها، رفع اشکالها و بهبودهای زیرساختی این مشارکتکنندگان، بخشی اساسی از عواملی هستند که OmniRoute را قابلاعتماد و غنی از قابلیت میسازند. هر درخواست pull، هر مورد آزمایشی و هر فایل ترجمهٔ i18n اهمیت دارد. نرمافزار متنباز به دست افرادی مانند آنها ساخته میشود.
سپاسی صمیمانه از کسانی که هزینههای OmniRoute را از جیب خود تأمین میکنند — هر مشارکت کمک میکند پروژه رایگان، مستقل و پویا باقی بماند.
![]() Andrew 💛 حامی مالی ماهانهٔ فعال |
![]() Vlad I 💛 حامی مالی ماهانهٔ فعال |
![]() 小妍儿 💛 حامی مالی ماهانهٔ فعال |
![]() Guilherme Costa 💛 حامی مالی فعال با پرداخت یکباره |
![]() Henrique Iurkiv 💛 حامی مالی فعال با پرداخت یکباره |
![]() Somesh Ghaturle 💛 حامی مالی فعال با پرداخت یکباره |
![]() Kolonie AI 💛 حامی پیشین با پرداخت یکباره |
![]() Prof. Igor Morais 💛 حامی پیشین با پرداخت یکباره |
![]() Pixma 💛 حامی پیشین با پرداخت یکباره |
![]() Paco Cartones 💛 حامی پیشین با پرداخت یکباره |
![]() longtao 💛 حامی پیشین با پرداخت یکباره |
… و دیگرانی که ترجیح میدهند ناشناس بمانند 💛
حامیان عمومی GitHub در تاریخ 2026-10-18 از طریق GitHub Sponsors GraphQL API دوباره اعتبارسنجی شدند: 11 حمایت مالی عمومی (6 فعال و 5 پیشین) از مجموع 14 مورد. وضعیت isActive در GitHub برچسبهای فعال بالا را تعیین میکند؛ همچنان از حامیان عمومی پیشین با پرداخت یکباره قدردانی میشود و حامیان خصوصی ناشناس باقی میمانند. کمکهای مالی Ko-fi، Buy Me a Coffee، Liberapay، PIX و رمزارزی فهرست نشدهاند، زیرا سابقهٔ عمومی حامی ندارند.
💖 حامی مالی شوید ← — هر دلار کمک میکند OmniRoute رایگان و مستقل باقی بماند.
در تاریخ 2026-10-18، در نوک زندهٔ release/v3.8.52 با شناسهٔ ad160ab2d1 (شامل 6,826 کامیت) ممیزی شد: 993 هویت انسانی نرمالسازیشده در Git — 707 نفر بهعنوان نویسندهٔ کامیت ظاهر میشوند (از جمله نگهدارنده) و 286 نفر فقط در تریلرهای صریح Co-authored-by حضور دارند. این سرشماری .mailmap را اعمال میکند، آدرسهای ایمیل را بدون حساسیت به بزرگی و کوچکی حروف مقایسه میکند، آدرسهای عددی و عادی noreply گیتهاب را فقط زمانی به هم پیوند میدهد که نشاندهندهٔ یک نام کاربری یکسان باشند، 26 هویت ربات/عامل/سرویس/جانگهدار را کنار میگذارد و آدرسهای ایمیل عادی را صرفاً بهدلیل یکسان بودن نامهای نمایشیشان ادغام نمیکند. ممیزی 2026-08-24 تعداد 639 نفر را منتشر کرده بود؛ اجرای مجدد این روش بر روی مبنای آن ممیزی، یعنی ac02c5b42f، تعداد 619 نفر را به دست میدهد؛ بنابراین این افزایش ناشی از مشارکتکنندگان جدید است، نه استفاده از روشی آسانگیرانهتر.
- از مخزن یک انشعاب (Fork) ایجاد کنید
- از نوک فعال
release/vX.Y.Zشاخه بسازید (نه ازmain) — به مدل شاخهبندی و انتشار مراجعه کنید - شاخهٔ قابلیت خود را ایجاد کنید (
git checkout -b feat/amazing-feature) - تغییرات خود را کامیت کنید (
git commit -m 'feat: add amazing feature') - تغییرات را به شاخه ارسال کنید (
git push origin feat/amazing-feature) - یک Pull Request با base = همان شاخهٔ
release/vX.Y.Zباز کنید
برای دستورالعملهای دقیق، به CONTRIBUTING.md مراجعه کنید.
# ایجاد یک انتشار — انتشار در npm بهصورت خودکار انجام میشود
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notesOmniRoute بر شانههای غولها ایستاده است. این پروژه کار خود را بهعنوان یک فورک از 9router و یک پورت TypeScript از پروژه Go یعنی CLIProxyAPI آغاز کرد — و از آنجا به بعد، هر زیرسامانهای که در ادامه آمده، از یک پروژه متنباز الهام گرفته است که پیشتر این مسیر را پیموده بود. هرکدام از آنها بخش مشخصی از OmniRoute را شکل دادهاند. این قدردانی ما از همه آنهاست. 🙏
⭐ تعداد ستارهها در 18 اکتبر 2026 از طریق REST API گیتهاب تأیید شده است — شما هم به این پروژهها ستاره بدهید. این تعداد، تصویری دقیق و مربوط به تاریخی مشخص است و طبیعتاً تغییر خواهد کرد.
| پروژه | ⭐ | نحوه الهامبخشی آن به OmniRoute |
|---|---|---|
| 9router | 31,004 | پروژه اصلی که این فورک بر پایه آن ساخته شده است — و در اینجا با APIهای چندوجهی و بازنویسی کامل با TypeScript گسترش یافته است. |
| CLIProxyAPI | 55,591 | پیادهسازی Go که الهامبخش این پورت JavaScript / TypeScript بود. |
| LiteLLM | 61,482 | دروازه هوش مصنوعیای که مجموعهداده عمومی قیمتگذاری آن، همگامسازی ردیابی هزینه ما را تغذیه میکند و مدل نرمالسازی ارائهدهندگان آن بر مسیریابی ما تأثیر گذاشته است. |
| codex-chatgpt-web | 14,526 | منبع MIT که در پل همراهشده ChatGPT Web → Codex Responses اقتباس شده است؛ از جمله آداپتورهای نشست مرورگر، قاببندی پاسخ، میزان استفاده و جستوجوی وب. |
| free-claude-code | 61,430 | الگوهایی که به بازیابی جریان، نامهای مستعار بدون تفکر، جستوجوی وب جایگزین، محدودیتهای پنجره لغزان، حذف اطلاعات حساس از گزارشها و جریانهای مقاومسازیشده راهانداز منتقل شدهاند. |
| composer-api | 346 | الگوهای انتخاب ابزار، محدودیت خروجی و ثبت ابزار در Cursor Composer که در اجراکننده بومی Cursor اقتباس شدهاند. |
| codex-multi-auth | 553 | الگوهای ورود تازه و چرخش توکن نوسازی که به احراز هویت مجدد Codex OAuth منتقل شدهاند. |
| opencode-anthropic-auth | 558 | پیشفرضهای تبدیل سازگار با Claude Code و رفتار سرآیند صورتحساب که در پل پیکربندیمحور OmniRoute تعمیم یافتهاند. |
| grok2api-merged | 2 | نگاشتهای مدل Grok، مولد Statsig مبتنی بر TypeError جعلی، پیشفرضهای درخواست و دستگاه، و پردازشگر پاسخ NDJSON آن بهطور اساسی در اجراکننده Grok Web در OmniRoute اقتباس شدهاند. |
| TQZHR/grok2api | 706 | منبع اصلی کدِ انتقالیافته در پسِ grok2api-merged؛ پیادهسازیهای مدل، سرآیند، بار داده، Statsig و پردازشگر آن در تبار Grok Web حفظ شدهاند. |
| chenyme/grok2api | 7,819 | منبع MIT زیربنایی برای پیشفرضهای بار داده و دستگاه Grok، مولد Statsig و پردازشگر result.response که از طریق TQZHR و grok2api-merged منتقل شده است. |
| grok2api-pro | 27 | منبع انتقالیافتهای که grok2api-merged برای لایه مخزن پراکسی خود از آن نام برده است؛ OmniRoute این اشاره به تبار را حفظ میکند، اما ادعایی درباره پورت مخزن پراکسی در اجراکننده محدود Grok Web خود ندارد. |
| GrokProxy | 51 | پراکسی Grok با احراز هویت مبتنی بر کوکی و الگوی استریم result.response.token آن، الهامبخش انتقال Grok Web در OmniRoute بودهاند. |
| GrokBridge | 5 | پیادهسازی اولیه Grok Web از طراحی بالادستی HTTP/مرورگر آن بهره گرفته است؛ مسیر مستقیم HTTP آن از GrokProxy مشتق میشود، بنابراین ادعایی درباره پورت مستقل کد وجود ندارد. |
| پروژه | ⭐ | چگونه الهامبخش OmniRoute شد |
|---|---|---|
| Caveman | 113,396 | پروژهٔ وایرال «چرا توکن زیاد استفاده وقتی توکن کم کار راهاندازد» — فلسفهٔ غارنشینی آن، حالت فشردهسازی استاندارد ما و بیش از ۳۰ قاعدهٔ حذف حشو/تلخیص را قدرت میبخشد. |
| RTK – Rust Token Killer | 83,835 | فشردهسازی پربازده خروجی فرمانها — الهامبخش موتور RTK، زبان ویژهٔ فیلتر JSON، بازیابی خروجی خام و خط لولهٔ پشتهای RTK → Caveman ما بود. |
| headroom | 75,741 | فشردهسازی برگشتپذیر زمینه (SmartCrusher) — الهامبخش موتور headroom و الگوی نشانگر بازیابی ccr ما بود. |
| LLMLingua | 6,757 | پژوهش فشردهسازی پرامپت (LLMLingua / LLMLingua-2) — الهامبخش موتور ناهمگام، ایمن برای کد و بازِ هنگام خطای llmlingua ما بود. |
| llmlingua-2-js | 32 | نسخهٔ انتقالیافته به JS/ONNX (MobileBERT / XLM-RoBERTa) که بهعنوان بکاند رشتهٔ کارگر برای موتور LLMLingua ما استفاده میشود. |
| Troglodita | 50 | فشردهسازی توکن PT-BR — بستهٔ زبانی pt-BR ما را قدرت میبخشد: کاهش حشو و حذف کلمات پُرکننده که برای دستور زبان پرتغالی برزیلی تنظیم شده است. |
| ponytail | 166,731 | مهارت کدنویسی YAGNI وایرالِ «توسعهدهندهٔ ارشد تنبل» — الهامبخش سبک خروجی کد کمتر ما بود: هدایت بهسوی کوچکترین تغییر کارآمد که حجم کد _تولیدشده_ را کاهش میدهد (همتای محور خروجیِ نثر موجز Caveman). |
| i-have-adhd | 57,628 | سبک پاسخگویی عملمحور و سازگار با ADHD آن، به سبک خروجی مختصر OmniRoute در پنج زبان تبدیل شد. |
| پروژه | ⭐ | چگونه الهامبخش OmniRoute شد |
|---|---|---|
| TOON | 25,509 | نشانهگذاری شیء توکنمحور — مدل ستونیِ سربرگبههمراهردیفهای آن، مرحلهٔ فشردهسازی جدولی ما را شکل داد. |
| GCF – Graph Compact Format | 59 | قالب فشردهٔ گراف و طراحی پروفایل عمومی آن، به فشردهسازی جدولی OmniRoute و قالب کُدک Headroom جهت داد. |
| gcf-typescript | 4 | پیادهسازی MIT با TypeScript که مستقیماً در پروژه گنجانده و بهعنوان کُدک پروفایل عمومی Headroom گسترش داده شد. |
| token-optimizer-mcp | 551 | کش Brotli/SQLite بههمراه اختلاف زمینهٔ هر نشست — الهامبخش موتور session-dedup ما بود. |
| token-savior | 1,182 | فشردهسازی خروجی Bash بههمراه پروفایلهای MCP — الهامبخش رویکرد انصراف از فشردهسازی و کاهش مانیفست ابزار MCP ما بود. |
| token-saver | 154 | فشردهسازی خروجی آگاه از محتوا و مختص هر نوع فایل، همراه با انصراف آگاه از شکست — مسیریابی مختص هر نوع و صرفنظر در صورت سود حداقلی ما را اعتبارسنجی کرد. |
| token-optimizer | 2,595 | «توکنهای شبح را پیدا کن» — الگوی برونسپاری بههمراه شناسهٔ قابلبازیابی آن، به رویکرد برونسپاری CCR ما جهت داد. |
| TokenMizer | 33 | طرحی برای گراف نشست و حذف خطوط تکراری میان نوبتها که به طراحی session-dedup ما جهت داد. |
| OmniCompress | 3 | JSON ستونی مبتنی بر Rust، بازیابی مبتنی بر آدرسدهی محتوا و حذف موارد تکراری میان پیامها — طراحی موتور headroom/ccr/session-dedup و اصل تغییرناپذیرِ سازگار با کشِ «فرم فشرده مستقل از موقعیت است» را اعتبارسنجی کرد. |
| mcp-compressor | 133 | فشردهسازی طرحواره/توضیحات ابزار MCP — به کاهش تعداد مانیفست ابزار MCP ما جهت داد. |
| RepoMapper | 217 | رتبهبندی نقشهٔ مخزن به سبک Aider — به بررسی نقشهٔ مخزن / رتبهبندی بازیابی ما جهت داد. |
| quiet-shell-mcp | 4 | کاهش اعلانی خروجی شل روی MCP — فشردهسازی اعلانی خروجی bash ما را اعتبارسنجی کرد. |
| ts-morph | 6,205 | جعبهابزار TypeScript Compiler API — الهامبخش حذف نظرات مبتنی بر تجزیهگر ما بود که لیترالهای رشته، قالب و عبارت منظم را حفظ میکند. |
| پروژه | ⭐ | نحوه الهامبخشی آن برای OmniRoute |
|---|---|---|
| Mem0 | 67,385 | لایه حافظه عمومی — مدل پراکسی آن بهعنوان مرز نوشتن/خواندن، معماری حافظه ما را شکل داد. |
| Letta (MemGPT) | 25,179 | عاملهای دارای حالت با حافظه لایهبندیشده — الهامبخش مدل لایهبندیشده کنترل و بازیابی زمینه (CCR) ما بود. |
| WFGY | 1,800 | ردهبندی ProblemMap شامل ۱۶ حالت شکست تکرارشونده RAG/LLM — واژگان مشترک مورد استفاده در راهنمای عیبیابی ما. |
| پروژه | ⭐ | نحوه الهامبخشی آن برای OmniRoute |
|---|---|---|
| llm-interceptor | 79 | رهگیری/تحلیل MITM ترافیک میان دستیار کدنویسی ↔ LLM، الزامات اولیه بازرس ترافیک را شکل داد. چهار ماژول پیشتر اقتباسشده — ادغام SSE، نرمالسازی مکالمه، پوشاندن اطلاعات محرمانه و پاکسازی هدرها — با پیادهسازیهای مستقل اتاق پاک مبتنی بر استانداردهای عمومی پروتکل جایگزین شدهاند. دو سطح عبور مستقیم میزبان (passthrough.ts و _internal/bypass.cjs) همچنان پیادهسازیهای داخلی OmniRoute هستند که بهطور مستقل طبقهبندی شدهاند؛ آنها در چارچوب این جایگزینی بازنویسی نشدند. |
| ProxyBridge | 6,814 | مسیریابی شفاف پراکسی بهازای هر فرایند — الهامبخش برچیدن ایمن MITM در هنگام خرابی، مهلتهای عدم فعالیت سوکت، انتساب فرایند از طریق /proc و دریافت ترافیک با TPROXY بود. |
| پروژه | ⭐ | نحوه الهامبخشی آن برای OmniRoute |
|---|---|---|
| models.dev | 7,286 | پایگاهدادهای باز از مشخصات، قیمتگذاری و قابلیتهای مدلهای هوش مصنوعی — که بهصورت بومی با کاتالوگ مدل ما همگامسازی میشود. |
| React Flow / xyflow | 38,705 | کتابخانه گراف مبتنی بر گره که استودیوی فشردهسازی بلادرنگ و استودیوی ترکیب/مسیریابی ما را پشتیبانی میکند. |
| LangGraph | 43,443 | نمایش زنده گراف گردشکار در LangGraph Studio، الهامبخش نمای آبشاری بلادرنگ در استودیوهای ما بود. |
| Langfuse | 35,990 | مدل مشاهدهپذیری ردیابی → بازه → تولید آن، نمای آبشاری استودیوی فشردهسازی ما را شکل داد. |
| Kiali | 3,645 | مشاهدهپذیری شبکه سرویس Istio — الهامبخش نشانهای قطعکننده مدار و جلوههای بصری یالهای خطا در استودیوی مسیریابی/ترکیب ما بود. |
| lobe-icons | 2,615 | نشانوارههای برندهای AI/LLM که آیکونهای ارائهدهندگان را در سراسر داشبورد ما نمایش میدهند. |
| flag-icons | 12,473 | پرچمهای SVG با مجوز MIT مورد استفاده در انتخابگر زبان README را فراهم میکند. |
| پروژه | ⭐ | نحوه الهامبخشی آن برای OmniRoute |
|---|---|---|
| awesome-secure-defaults | 722 | فهرستی گزینششده از کتابخانههای امن بهصورت پیشفرض که انتخابهای امنیتی ما را هدایت میکند (Helmet.js، DOMPurify، ssrf-req-filter، safe-regex، Google Tink). |
| پروژه | ⭐ | نحوه الهامبخشی آن برای OmniRoute |
|---|---|---|
| ClawRouter | 6,628 | الهامبخش حذف درخواستهای تکراری، مسیر جایگزین اضطراری بدون هزینه، راهبردهای قابلافزونه Auto-Combo و طبقهبندی چندزبانه قصد بود. |
| Antigravity-Manager | 32,333 | بازنگاشت مدل با آگاهی از حساب، اعتبارسنجی مسیر فایل اجرایی و رفتار برچسبگذاری طرح در آن، پیادهسازی زماناجرای Antigravity در OmniRoute را شکل داد. |
| vscode-antigravity-cockpit | 4,850 | قالب فشرده شمارش معکوس بازنشانی سهمیه در آن، الهامبخش نمایش متناظر محدودیت ارائهدهنده در OmniRoute بود. |
| AionUi | 33,611 | یکپارچهسازیهای ACP در آن، الهامبخش تشخیص خودکار عاملهای CLI نصبشده توسط OmniRoute بود. |
| CodexBar | 22,616 | سطح سهمیه Grok Build را شناسایی کرد؛ سپس OmniRoute قالب فعال انتقال داده را بهطور مستقل راستیآزمایی و اصلاح کرد. |
مجوز MIT - برای جزئیات به LICENSE مراجعه کنید.
⬆ بازگشت به بالا · ساختهشده با ❤️ برای جامعهٔ متنباز هوش مصنوعی.
OmniRoute v3.8.53 · Node ≥22.22.2 · مجوز MIT · omniroute.online












